diff --git a/InvenTree/locale/cs/LC_MESSAGES/django.po b/InvenTree/locale/cs/LC_MESSAGES/django.po
index 0a36730df4..94d683b522 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: 2023-06-09 00:32+0000\n"
-"PO-Revision-Date: 2023-06-09 10:27\n"
+"POT-Creation-Date: 2023-06-20 07:01+0000\n"
+"PO-Revision-Date: 2023-06-20 07:06\n"
"Last-Translator: \n"
"Language-Team: Czech\n"
"Language: cs_CZ\n"
@@ -49,26 +49,26 @@ msgstr "Podrobnosti o chybě lze nalézt v panelu administrace"
msgid "Enter date"
msgstr "Zadejte datum"
-#: InvenTree/fields.py:206 InvenTree/models.py:766 build/serializers.py:427
-#: build/serializers.py:506 build/templates/build/sidebar.html:23
-#: company/models.py:597 company/templates/company/sidebar.html:35
-#: order/models.py:1089 order/templates/order/po_sidebar.html:11
+#: InvenTree/fields.py:206 InvenTree/models.py:766 build/serializers.py:435
+#: build/serializers.py:514 build/templates/build/sidebar.html:21
+#: company/models.py:746 company/templates/company/sidebar.html:37
+#: order/models.py:1102 order/templates/order/po_sidebar.html:11
#: order/templates/order/return_order_sidebar.html:9
#: order/templates/order/so_sidebar.html:17 part/admin.py:41
-#: part/models.py:3005 part/templates/part/part_sidebar.html:63
+#: part/models.py:3039 part/templates/part/part_sidebar.html:63
#: report/templates/report/inventree_build_order_base.html:172
#: stock/admin.py:121 stock/models.py:2160 stock/models.py:2268
-#: stock/serializers.py:342 stock/serializers.py:475 stock/serializers.py:556
-#: stock/serializers.py:839 stock/serializers.py:938 stock/serializers.py:1070
-#: stock/templates/stock/stock_sidebar.html:25
-#: templates/js/translated/barcode.js:143 templates/js/translated/bom.js:1224
-#: templates/js/translated/company.js:1294 templates/js/translated/order.js:347
-#: templates/js/translated/part.js:1054
-#: templates/js/translated/purchase_order.js:2168
-#: templates/js/translated/return_order.js:760
-#: templates/js/translated/sales_order.js:1055
-#: templates/js/translated/sales_order.js:1959
-#: templates/js/translated/stock.js:1460 templates/js/translated/stock.js:2164
+#: stock/serializers.py:408 stock/serializers.py:542 stock/serializers.py:623
+#: stock/serializers.py:681 stock/serializers.py:956 stock/serializers.py:1055
+#: stock/serializers.py:1187 stock/templates/stock/stock_sidebar.html:25
+#: templates/js/translated/barcode.js:143 templates/js/translated/bom.js:1244
+#: templates/js/translated/company.js:1715 templates/js/translated/order.js:347
+#: templates/js/translated/part.js:1053
+#: templates/js/translated/purchase_order.js:2178
+#: templates/js/translated/return_order.js:772
+#: templates/js/translated/sales_order.js:1067
+#: templates/js/translated/sales_order.js:1971
+#: templates/js/translated/stock.js:1459 templates/js/translated/stock.js:2321
msgid "Notes"
msgstr "Poznámky"
@@ -81,47 +81,51 @@ msgstr "Hodnota '{name}' neodpovídá formátu vzoru"
msgid "Provided value does not match required pattern: "
msgstr "Poskytnutá hodnota neodpovídá požadovanému vzoru: "
-#: InvenTree/forms.py:145
+#: InvenTree/forms.py:147
msgid "Enter password"
msgstr "Zadejte heslo"
-#: InvenTree/forms.py:146
+#: InvenTree/forms.py:148
msgid "Enter new password"
msgstr "Zadejte nové heslo"
-#: InvenTree/forms.py:155
+#: InvenTree/forms.py:157
msgid "Confirm password"
msgstr "Potvrďte heslo"
-#: InvenTree/forms.py:156
+#: InvenTree/forms.py:158
msgid "Confirm new password"
msgstr "Potvrďte nové heslo"
-#: InvenTree/forms.py:160
+#: InvenTree/forms.py:162
msgid "Old password"
msgstr "Původní heslo"
-#: InvenTree/forms.py:179
+#: InvenTree/forms.py:181
msgid "Email (again)"
msgstr "Email (znovu)"
-#: InvenTree/forms.py:183
+#: InvenTree/forms.py:185
msgid "Email address confirmation"
msgstr "Potvrzení emailové adresy"
-#: InvenTree/forms.py:204
+#: InvenTree/forms.py:206
msgid "You must type the same email each time."
msgstr "Pokaždé musíte zadat stejný email."
-#: InvenTree/forms.py:230 InvenTree/forms.py:236
+#: InvenTree/forms.py:237 InvenTree/forms.py:243
msgid "The provided primary email address is not valid."
msgstr "Zadaná primární e-mailová adresa je neplatná."
-#: InvenTree/forms.py:242
+#: InvenTree/forms.py:249
msgid "The provided email domain is not approved."
msgstr "Zadaná e-mailová doména není povolena."
-#: InvenTree/helpers.py:462 order/models.py:442 order/models.py:611
+#: InvenTree/forms.py:345
+msgid "Registration is disabled."
+msgstr ""
+
+#: InvenTree/helpers.py:462 order/models.py:455 order/models.py:624
msgid "Invalid quantity provided"
msgstr "Vyplněno neplatné množství"
@@ -239,7 +243,7 @@ msgstr "Chybějící externí odkaz"
#: InvenTree/models.py:486 stock/models.py:2262
#: templates/js/translated/attachment.js:119
-#: templates/js/translated/attachment.js:306
+#: templates/js/translated/attachment.js:316
msgid "Attachment"
msgstr "Příloha"
@@ -247,29 +251,30 @@ msgstr "Příloha"
msgid "Select file to attach"
msgstr "Vyberte soubor k přiložení"
-#: InvenTree/models.py:493 common/models.py:2695 company/models.py:132
-#: company/models.py:306 company/models.py:584 order/models.py:236
-#: order/models.py:1093 order/models.py:1453 part/admin.py:39
-#: part/models.py:901 part/templates/part/part_scheduling.html:11
+#: InvenTree/models.py:493 common/models.py:2681 company/models.py:128
+#: company/models.py:381 company/models.py:455 company/models.py:733
+#: order/models.py:240 order/models.py:1106 order/models.py:1466
+#: part/admin.py:39 part/models.py:902
+#: part/templates/part/part_scheduling.html:11
#: report/templates/report/inventree_build_order_base.html:164
-#: stock/admin.py:120 templates/js/translated/company.js:977
-#: templates/js/translated/company.js:1283 templates/js/translated/order.js:351
-#: templates/js/translated/part.js:2316
-#: templates/js/translated/purchase_order.js:2008
-#: templates/js/translated/purchase_order.js:2172
-#: templates/js/translated/return_order.js:764
-#: templates/js/translated/sales_order.js:1044
-#: templates/js/translated/sales_order.js:1964
+#: stock/admin.py:120 templates/js/translated/company.js:1350
+#: templates/js/translated/company.js:1704 templates/js/translated/order.js:351
+#: templates/js/translated/part.js:2392
+#: templates/js/translated/purchase_order.js:2018
+#: templates/js/translated/purchase_order.js:2182
+#: templates/js/translated/return_order.js:776
+#: templates/js/translated/sales_order.js:1056
+#: templates/js/translated/sales_order.js:1976
msgid "Link"
msgstr "Odkaz"
-#: InvenTree/models.py:494 build/models.py:291 part/models.py:902
+#: InvenTree/models.py:494 build/models.py:295 part/models.py:903
#: stock/models.py:735
msgid "Link to external URL"
msgstr "Odkaz na externí URL"
#: InvenTree/models.py:497 templates/js/translated/attachment.js:120
-#: templates/js/translated/attachment.js:321
+#: templates/js/translated/attachment.js:331
msgid "Comment"
msgstr "Komentář"
@@ -277,13 +282,13 @@ msgstr "Komentář"
msgid "File comment"
msgstr "Komentář k souboru"
-#: InvenTree/models.py:503 InvenTree/models.py:504 common/models.py:2154
-#: common/models.py:2155 common/models.py:2368 common/models.py:2369
-#: common/models.py:2625 common/models.py:2626 part/models.py:3013
-#: part/models.py:3101 part/models.py:3180 part/models.py:3200
-#: plugin/models.py:217 plugin/models.py:218
+#: InvenTree/models.py:503 InvenTree/models.py:504 common/models.py:2140
+#: common/models.py:2141 common/models.py:2354 common/models.py:2355
+#: common/models.py:2611 common/models.py:2612 part/models.py:3047
+#: part/models.py:3135 part/models.py:3214 part/models.py:3234
+#: plugin/models.py:218 plugin/models.py:219
#: report/templates/report/inventree_test_report_base.html:105
-#: templates/js/translated/stock.js:2773
+#: templates/js/translated/stock.js:2904
msgid "User"
msgstr "Uživatel"
@@ -324,53 +329,54 @@ msgstr "Duplicitní názvy nemohou existovat pod stejným nadřazeným názvem"
msgid "Invalid choice"
msgstr "Neplatný výběr"
-#: InvenTree/models.py:648 InvenTree/models.py:649 common/models.py:2354
-#: company/models.py:390 label/models.py:103 part/models.py:847
-#: part/models.py:3400 plugin/models.py:41 report/models.py:160
+#: InvenTree/models.py:648 InvenTree/models.py:649 common/models.py:2340
+#: company/models.py:539 label/models.py:111 part/models.py:848
+#: part/models.py:3434 plugin/models.py:42 report/models.py:160
#: templates/InvenTree/settings/mixins/urls.html:13
#: templates/InvenTree/settings/notifications.html:17
-#: templates/InvenTree/settings/plugin.html:80
+#: templates/InvenTree/settings/plugin.html:74
#: templates/InvenTree/settings/plugin_settings.html:22
-#: templates/js/translated/company.js:658
-#: templates/js/translated/company.js:706
-#: templates/js/translated/company.js:871
-#: templates/js/translated/company.js:1071 templates/js/translated/part.js:1160
-#: templates/js/translated/part.js:1447 templates/js/translated/part.js:1583
-#: templates/js/translated/part.js:2699 templates/js/translated/stock.js:2464
+#: templates/js/translated/company.js:665
+#: templates/js/translated/company.js:713
+#: templates/js/translated/company.js:940
+#: templates/js/translated/company.js:1196
+#: templates/js/translated/company.js:1444 templates/js/translated/part.js:1159
+#: templates/js/translated/part.js:1446 templates/js/translated/part.js:1582
+#: templates/js/translated/part.js:2684 templates/js/translated/stock.js:2595
msgid "Name"
msgstr "Název"
-#: InvenTree/models.py:655 build/models.py:164
+#: InvenTree/models.py:655 build/models.py:168
#: build/templates/build/detail.html:24 common/models.py:111
-#: company/models.py:312 company/models.py:590
+#: company/models.py:461 company/models.py:739
#: company/templates/company/company_base.html:72
#: company/templates/company/manufacturer_part.html:75
-#: company/templates/company/supplier_part.html:108 label/models.py:110
-#: order/models.py:232 order/models.py:1117 part/admin.py:194 part/admin.py:276
-#: part/models.py:869 part/models.py:3416 part/templates/part/category.html:81
+#: company/templates/company/supplier_part.html:108 label/models.py:118
+#: order/models.py:232 order/models.py:1130 part/admin.py:194 part/admin.py:276
+#: part/models.py:870 part/models.py:3450 part/templates/part/category.html:81
#: part/templates/part/part_base.html:172
#: part/templates/part/part_scheduling.html:12 report/models.py:173
-#: report/models.py:587 report/models.py:631
+#: report/models.py:589 report/models.py:633
#: report/templates/report/inventree_build_order_base.html:117
#: stock/admin.py:41 stock/templates/stock/location.html:123
#: templates/InvenTree/settings/notifications.html:19
#: templates/InvenTree/settings/plugin_settings.html:27
#: templates/InvenTree/settings/settings_staff_js.html:75
-#: templates/js/translated/bom.js:632 templates/js/translated/bom.js:933
-#: templates/js/translated/build.js:2857 templates/js/translated/company.js:510
-#: templates/js/translated/company.js:988
-#: templates/js/translated/company.js:1251 templates/js/translated/order.js:298
-#: templates/js/translated/part.js:1212 templates/js/translated/part.js:1456
-#: templates/js/translated/part.js:1594 templates/js/translated/part.js:1933
-#: templates/js/translated/part.js:2247 templates/js/translated/part.js:2735
-#: templates/js/translated/part.js:2826
-#: templates/js/translated/purchase_order.js:1666
-#: templates/js/translated/purchase_order.js:1812
-#: templates/js/translated/purchase_order.js:1990
-#: templates/js/translated/return_order.js:302
-#: templates/js/translated/sales_order.js:790
-#: templates/js/translated/stock.js:1439 templates/js/translated/stock.js:1817
-#: templates/js/translated/stock.js:2496 templates/js/translated/stock.js:2568
+#: templates/js/translated/bom.js:633 templates/js/translated/bom.js:951
+#: templates/js/translated/build.js:2062 templates/js/translated/company.js:517
+#: templates/js/translated/company.js:1361
+#: templates/js/translated/company.js:1672 templates/js/translated/index.js:114
+#: templates/js/translated/order.js:298 templates/js/translated/part.js:1211
+#: templates/js/translated/part.js:1455 templates/js/translated/part.js:1593
+#: templates/js/translated/part.js:1932 templates/js/translated/part.js:2323
+#: templates/js/translated/part.js:2720 templates/js/translated/part.js:2811
+#: templates/js/translated/purchase_order.js:1681
+#: templates/js/translated/purchase_order.js:1827
+#: templates/js/translated/purchase_order.js:2000
+#: templates/js/translated/return_order.js:314
+#: templates/js/translated/sales_order.js:802
+#: templates/js/translated/stock.js:1438 templates/js/translated/stock.js:1974
+#: templates/js/translated/stock.js:2627 templates/js/translated/stock.js:2699
msgid "Description"
msgstr "Popis"
@@ -383,7 +389,7 @@ msgid "parent"
msgstr "nadřazený"
#: InvenTree/models.py:671 InvenTree/models.py:672
-#: templates/js/translated/part.js:2744 templates/js/translated/stock.js:2505
+#: templates/js/translated/part.js:2729 templates/js/translated/stock.js:2636
msgid "Path"
msgstr "Cesta"
@@ -419,12 +425,12 @@ msgstr "Chyba serveru"
msgid "An error has been logged by the server."
msgstr "Server zaznamenal chybu."
-#: InvenTree/serializers.py:60 part/models.py:3897
+#: InvenTree/serializers.py:60 part/models.py:3941
msgid "Must be a valid number"
msgstr "Musí být platné číslo"
-#: InvenTree/serializers.py:90 company/models.py:154
-#: company/templates/company/company_base.html:107 part/models.py:2852
+#: InvenTree/serializers.py:90 company/models.py:150
+#: company/templates/company/company_base.html:107 part/models.py:2886
#: templates/InvenTree/settings/settings_staff_js.html:44
#: templates/currency_data.html:5
msgid "Currency"
@@ -497,130 +503,130 @@ msgstr "URL souboru vzdáleného obrázku"
msgid "Downloading images from remote URL is not enabled"
msgstr "Stahování obrázků ze vzdálené URL není povoleno"
-#: InvenTree/settings.py:714
+#: InvenTree/settings.py:741
msgid "Czech"
msgstr "Čeština"
-#: InvenTree/settings.py:715
+#: InvenTree/settings.py:742
msgid "Danish"
msgstr "Dánština"
-#: InvenTree/settings.py:716
+#: InvenTree/settings.py:743
msgid "German"
msgstr "Němčina"
-#: InvenTree/settings.py:717
+#: InvenTree/settings.py:744
msgid "Greek"
msgstr "Řečtina"
-#: InvenTree/settings.py:718
+#: InvenTree/settings.py:745
msgid "English"
msgstr "Angličtina"
-#: InvenTree/settings.py:719
+#: InvenTree/settings.py:746
msgid "Spanish"
msgstr "Španělština"
-#: InvenTree/settings.py:720
+#: InvenTree/settings.py:747
msgid "Spanish (Mexican)"
msgstr "Španělština (Mexiko)"
-#: InvenTree/settings.py:721
+#: InvenTree/settings.py:748
msgid "Farsi / Persian"
msgstr "Farsi / Perština"
-#: InvenTree/settings.py:722
+#: InvenTree/settings.py:749
msgid "Finnish"
msgstr "Finština"
-#: InvenTree/settings.py:723
+#: InvenTree/settings.py:750
msgid "French"
msgstr "Francouzština"
-#: InvenTree/settings.py:724
+#: InvenTree/settings.py:751
msgid "Hebrew"
msgstr "Hebrejština"
-#: InvenTree/settings.py:725
+#: InvenTree/settings.py:752
msgid "Hungarian"
msgstr "Maďarština"
-#: InvenTree/settings.py:726
+#: InvenTree/settings.py:753
msgid "Italian"
msgstr "Italština"
-#: InvenTree/settings.py:727
+#: InvenTree/settings.py:754
msgid "Japanese"
msgstr "Japonština"
-#: InvenTree/settings.py:728
+#: InvenTree/settings.py:755
msgid "Korean"
msgstr "Korejština"
-#: InvenTree/settings.py:729
+#: InvenTree/settings.py:756
msgid "Dutch"
msgstr "Nizozemština"
-#: InvenTree/settings.py:730
+#: InvenTree/settings.py:757
msgid "Norwegian"
msgstr "Norština"
-#: InvenTree/settings.py:731
+#: InvenTree/settings.py:758
msgid "Polish"
msgstr "Polština"
-#: InvenTree/settings.py:732
+#: InvenTree/settings.py:759
msgid "Portuguese"
msgstr "Portugalština"
-#: InvenTree/settings.py:733
+#: InvenTree/settings.py:760
msgid "Portuguese (Brazilian)"
msgstr "Portugalština (Brazilská)"
-#: InvenTree/settings.py:734
+#: InvenTree/settings.py:761
msgid "Russian"
msgstr "Ruština"
-#: InvenTree/settings.py:735
+#: InvenTree/settings.py:762
msgid "Slovenian"
msgstr "Slovinština"
-#: InvenTree/settings.py:736
+#: InvenTree/settings.py:763
msgid "Swedish"
msgstr "Švédština"
-#: InvenTree/settings.py:737
+#: InvenTree/settings.py:764
msgid "Thai"
msgstr "Thajština"
-#: InvenTree/settings.py:738
+#: InvenTree/settings.py:765
msgid "Turkish"
msgstr "Turečtina"
-#: InvenTree/settings.py:739
+#: InvenTree/settings.py:766
msgid "Vietnamese"
msgstr "Vietnamština"
-#: InvenTree/settings.py:740
+#: InvenTree/settings.py:767
msgid "Chinese"
msgstr "Čínština"
-#: InvenTree/status.py:61 part/serializers.py:878
+#: InvenTree/status.py:68 part/serializers.py:940
msgid "Background worker check failed"
msgstr "Kontrola procesů na pozadí se nezdařila"
-#: InvenTree/status.py:65
+#: InvenTree/status.py:72
msgid "Email backend not configured"
msgstr "Email backend není nakonfigurován"
-#: InvenTree/status.py:68
+#: InvenTree/status.py:75
msgid "InvenTree system health checks failed"
msgstr "Kontroly zdraví systému InvenTree selhaly"
#: InvenTree/status_codes.py:12 InvenTree/status_codes.py:40
#: InvenTree/status_codes.py:148 InvenTree/status_codes.py:167
#: InvenTree/status_codes.py:188 generic/states/tests.py:16
-#: templates/js/translated/table_filters.js:511
+#: templates/js/translated/table_filters.js:533
msgid "Pending"
msgstr "Nevyřízeno"
@@ -630,7 +636,7 @@ msgstr "Umístěno"
#: InvenTree/status_codes.py:14 InvenTree/status_codes.py:151
#: InvenTree/status_codes.py:172 generic/states/tests.py:18
-#: order/templates/order/order_base.html:162
+#: order/templates/order/order_base.html:158
#: order/templates/order/sales_order_base.html:162
msgid "Complete"
msgstr "Hotovo"
@@ -654,10 +660,10 @@ msgstr "Vráceno"
msgid "In Progress"
msgstr "Zpracovává se"
-#: InvenTree/status_codes.py:42 order/models.py:1332
-#: templates/js/translated/sales_order.js:1509
-#: templates/js/translated/sales_order.js:1630
-#: templates/js/translated/sales_order.js:1934
+#: InvenTree/status_codes.py:42 order/models.py:1345
+#: templates/js/translated/sales_order.js:1521
+#: templates/js/translated/sales_order.js:1642
+#: templates/js/translated/sales_order.js:1946
msgid "Shipped"
msgstr "Odesláno"
@@ -689,7 +695,7 @@ msgstr "V karanténě"
msgid "Legacy stock tracking entry"
msgstr "Původní položka sledování zásob"
-#: InvenTree/status_codes.py:93 templates/js/translated/stock.js:511
+#: InvenTree/status_codes.py:93 templates/js/translated/stock.js:510
msgid "Stock item created"
msgstr "Položka zásob vytvořena"
@@ -745,7 +751,7 @@ msgstr "Rozdělit od nadřazené položky"
msgid "Split child item"
msgstr "Rozdělit podřazený předmět"
-#: InvenTree/status_codes.py:120 templates/js/translated/stock.js:2243
+#: InvenTree/status_codes.py:120 templates/js/translated/stock.js:1769
msgid "Merged stock items"
msgstr "Sloučené položky zásob"
@@ -765,7 +771,7 @@ msgstr "Výstup objednávky sestavení dokončen"
msgid "Build order output rejected"
msgstr "Výstup objednávky sestavení byl odmítnut"
-#: InvenTree/status_codes.py:129 templates/js/translated/stock.js:1676
+#: InvenTree/status_codes.py:129 templates/js/translated/stock.js:1675
msgid "Consumed by build order"
msgstr "Spotřebováno podle objednávky"
@@ -781,7 +787,7 @@ msgstr "Přijato proti objednávce"
msgid "Returned against Return Order"
msgstr "Vráceno proti vratce"
-#: InvenTree/status_codes.py:141 templates/js/translated/table_filters.js:321
+#: InvenTree/status_codes.py:141 templates/js/translated/table_filters.js:327
msgid "Sent to customer"
msgstr "Odesláno zákazníkovi"
@@ -849,83 +855,111 @@ msgstr "Hesla se musí shodovat"
msgid "Wrong password provided"
msgstr "Zadáno špatné heslo"
-#: InvenTree/views.py:651 templates/navbar.html:157
+#: InvenTree/views.py:653 templates/navbar.html:157
msgid "System Information"
msgstr "Informace o systému"
-#: InvenTree/views.py:658 templates/navbar.html:168
+#: InvenTree/views.py:660 templates/navbar.html:168
msgid "About InvenTree"
msgstr "O InvenTree"
-#: build/api.py:222
+#: build/api.py:242
msgid "Build must be cancelled before it can be deleted"
msgstr "Sestavení musí být zrušeno před odstraněním"
-#: build/models.py:69 build/templates/build/build_base.html:9
+#: build/api.py:286 part/models.py:3833 templates/js/translated/bom.js:985
+#: templates/js/translated/bom.js:1025 templates/js/translated/build.js:2449
+#: templates/js/translated/table_filters.js:166
+#: templates/js/translated/table_filters.js:518
+msgid "Consumable"
+msgstr ""
+
+#: build/api.py:287 part/models.py:3827 part/templates/part/upload_bom.html:58
+#: templates/js/translated/bom.js:989 templates/js/translated/bom.js:1016
+#: templates/js/translated/build.js:2458
+#: templates/js/translated/table_filters.js:162
+#: templates/js/translated/table_filters.js:191
+#: templates/js/translated/table_filters.js:522
+msgid "Optional"
+msgstr ""
+
+#: build/api.py:288 templates/js/translated/table_filters.js:360
+#: templates/js/translated/table_filters.js:514
+msgid "Tracked"
+msgstr ""
+
+#: build/api.py:290 part/admin.py:64 templates/js/translated/build.js:1670
+#: templates/js/translated/build.js:2549
+#: templates/js/translated/sales_order.js:1918
+#: templates/js/translated/table_filters.js:506
+msgid "Allocated"
+msgstr ""
+
+#: build/models.py:73 build/templates/build/build_base.html:9
#: build/templates/build/build_base.html:27
#: report/templates/report/inventree_build_order_base.html:105
#: templates/email/build_order_completed.html:16
#: templates/email/overdue_build_order.html:15
-#: templates/js/translated/build.js:945 templates/js/translated/stock.js:2629
+#: templates/js/translated/build.js:953 templates/js/translated/stock.js:2760
msgid "Build Order"
msgstr "Vytvořit objednávku"
-#: build/models.py:70 build/templates/build/build_base.html:13
+#: build/models.py:74 build/templates/build/build_base.html:13
#: build/templates/build/index.html:8 build/templates/build/index.html:12
-#: order/templates/order/sales_order_detail.html:119
+#: order/templates/order/sales_order_detail.html:111
#: order/templates/order/so_sidebar.html:13
-#: part/templates/part/part_sidebar.html:22 templates/InvenTree/index.html:244
+#: part/templates/part/part_sidebar.html:22 templates/InvenTree/index.html:196
#: templates/InvenTree/search.html:141
#: templates/InvenTree/settings/sidebar.html:53
-#: templates/js/translated/search.js:228 users/models.py:42
+#: templates/js/translated/search.js:186 users/models.py:42
msgid "Build Orders"
msgstr "Vytvořené objednávky"
-#: build/models.py:111
+#: build/models.py:115
msgid "Invalid choice for parent build"
msgstr "Neplatná volba nadřazeného sestavení"
-#: build/models.py:155
+#: build/models.py:159
msgid "Build Order Reference"
msgstr "Referenční číslo objednávky"
-#: build/models.py:156 order/models.py:359 order/models.py:765
-#: order/models.py:1087 order/models.py:1724 part/admin.py:278
-#: part/models.py:3798 part/templates/part/upload_bom.html:54
+#: build/models.py:160 order/models.py:372 order/models.py:778
+#: order/models.py:1100 order/models.py:1737 part/admin.py:278
+#: part/models.py:3842 part/templates/part/upload_bom.html:54
#: report/templates/report/inventree_bill_of_materials_report.html:139
#: report/templates/report/inventree_po_report_base.html:28
#: report/templates/report/inventree_return_order_report_base.html:26
#: report/templates/report/inventree_so_report_base.html:28
-#: templates/js/translated/bom.js:769 templates/js/translated/bom.js:943
-#: templates/js/translated/build.js:2098 templates/js/translated/order.js:291
+#: templates/js/translated/bom.js:770 templates/js/translated/bom.js:961
+#: templates/js/translated/build.js:2441 templates/js/translated/order.js:291
#: templates/js/translated/pricing.js:386
-#: templates/js/translated/purchase_order.js:2033
-#: templates/js/translated/return_order.js:713
-#: templates/js/translated/sales_order.js:1798
+#: templates/js/translated/purchase_order.js:2043
+#: templates/js/translated/return_order.js:725
+#: templates/js/translated/sales_order.js:1810
msgid "Reference"
msgstr "Reference"
-#: build/models.py:167
+#: build/models.py:171
msgid "Brief description of the build (optional)"
msgstr "Stručný popis sestavení (nepovinné)"
-#: build/models.py:175 build/templates/build/build_base.html:183
+#: build/models.py:179 build/templates/build/build_base.html:184
#: build/templates/build/detail.html:87
msgid "Parent Build"
msgstr "Nadřazená sestava"
-#: build/models.py:176
+#: build/models.py:180
msgid "BuildOrder to which this build is allocated"
msgstr "Příkaz sestavení pro který je toto sestavení přiděleno"
-#: build/models.py:181 build/templates/build/build_base.html:98
-#: build/templates/build/detail.html:29 company/models.py:775
-#: order/models.py:1195 order/models.py:1311 order/models.py:1312
-#: part/models.py:391 part/models.py:2865 part/models.py:2979
-#: part/models.py:3119 part/models.py:3138 part/models.py:3157
-#: part/models.py:3178 part/models.py:3270 part/models.py:3555
-#: part/models.py:3663 part/models.py:3763 part/models.py:4077
-#: part/serializers.py:842 part/serializers.py:1245
+#: build/models.py:185 build/templates/build/build_base.html:98
+#: build/templates/build/detail.html:29 company/models.py:924
+#: order/models.py:1208 order/models.py:1324 order/models.py:1325
+#: part/models.py:392 part/models.py:2899 part/models.py:3013
+#: part/models.py:3153 part/models.py:3172 part/models.py:3191
+#: part/models.py:3212 part/models.py:3304 part/models.py:3589
+#: part/models.py:3712 part/models.py:3807 part/models.py:4121
+#: part/serializers.py:904 part/serializers.py:1307
#: part/templates/part/part_app_base.html:8
#: part/templates/part/part_pricing.html:12
#: part/templates/part/upload_bom.html:52
@@ -935,266 +969,229 @@ msgstr "Příkaz sestavení pro který je toto sestavení přiděleno"
#: report/templates/report/inventree_po_report_base.html:27
#: report/templates/report/inventree_return_order_report_base.html:24
#: report/templates/report/inventree_so_report_base.html:27
-#: stock/serializers.py:156 stock/serializers.py:509
+#: stock/serializers.py:205 stock/serializers.py:576
#: templates/InvenTree/search.html:82
#: templates/email/build_order_completed.html:17
#: templates/email/build_order_required_stock.html:17
#: templates/email/low_stock_notification.html:15
#: templates/email/overdue_build_order.html:16
-#: templates/js/translated/barcode.js:529 templates/js/translated/bom.js:631
-#: templates/js/translated/bom.js:768 templates/js/translated/bom.js:887
-#: templates/js/translated/build.js:1403 templates/js/translated/build.js:1965
-#: templates/js/translated/build.js:2464 templates/js/translated/build.js:2868
-#: templates/js/translated/company.js:337
-#: templates/js/translated/company.js:822
-#: templates/js/translated/company.js:929
-#: templates/js/translated/company.js:1169 templates/js/translated/part.js:1918
-#: templates/js/translated/part.js:1990 templates/js/translated/part.js:2216
-#: templates/js/translated/pricing.js:369
-#: templates/js/translated/purchase_order.js:746
-#: templates/js/translated/purchase_order.js:1274
-#: templates/js/translated/purchase_order.js:1811
-#: templates/js/translated/purchase_order.js:1975
-#: templates/js/translated/return_order.js:527
-#: templates/js/translated/return_order.js:694
-#: templates/js/translated/sales_order.js:285
-#: templates/js/translated/sales_order.js:1185
-#: templates/js/translated/sales_order.js:1584
-#: templates/js/translated/sales_order.js:1782
-#: templates/js/translated/stock.js:643 templates/js/translated/stock.js:809
-#: templates/js/translated/stock.js:1021 templates/js/translated/stock.js:1773
-#: templates/js/translated/stock.js:2594 templates/js/translated/stock.js:2831
-#: templates/js/translated/stock.js:2968
+#: templates/js/translated/barcode.js:529 templates/js/translated/bom.js:632
+#: templates/js/translated/bom.js:769 templates/js/translated/bom.js:905
+#: templates/js/translated/build.js:1289 templates/js/translated/build.js:1669
+#: templates/js/translated/build.js:2085 templates/js/translated/build.js:2261
+#: templates/js/translated/company.js:347
+#: templates/js/translated/company.js:1147
+#: templates/js/translated/company.js:1302
+#: templates/js/translated/company.js:1590 templates/js/translated/index.js:104
+#: templates/js/translated/part.js:1917 templates/js/translated/part.js:1989
+#: templates/js/translated/part.js:2292 templates/js/translated/pricing.js:369
+#: templates/js/translated/purchase_order.js:757
+#: templates/js/translated/purchase_order.js:1289
+#: templates/js/translated/purchase_order.js:1826
+#: templates/js/translated/purchase_order.js:1985
+#: templates/js/translated/return_order.js:539
+#: templates/js/translated/return_order.js:706
+#: templates/js/translated/sales_order.js:297
+#: templates/js/translated/sales_order.js:1197
+#: templates/js/translated/sales_order.js:1596
+#: templates/js/translated/sales_order.js:1794
+#: templates/js/translated/stock.js:642 templates/js/translated/stock.js:808
+#: templates/js/translated/stock.js:1020 templates/js/translated/stock.js:1913
+#: templates/js/translated/stock.js:2725 templates/js/translated/stock.js:2958
+#: templates/js/translated/stock.js:3095
msgid "Part"
msgstr "Díl"
-#: build/models.py:189
+#: build/models.py:193
msgid "Select part to build"
msgstr "Vyber téma, které chceš stavět"
-#: build/models.py:194
+#: build/models.py:198
msgid "Sales Order Reference"
msgstr "Referenční číslo prodejní objednávky"
-#: build/models.py:198
+#: build/models.py:202
msgid "SalesOrder to which this build is allocated"
msgstr "Prodejní příkaz, kterému je tato verze přidělena"
-#: build/models.py:203 build/serializers.py:942
-#: templates/js/translated/build.js:2452
-#: templates/js/translated/sales_order.js:1173
+#: build/models.py:207 build/serializers.py:946
+#: templates/js/translated/build.js:1657
+#: templates/js/translated/sales_order.js:1185
msgid "Source Location"
msgstr "Umístění lokace"
-#: build/models.py:207
+#: build/models.py:211
msgid "Select location to take stock from for this build (leave blank to take from any stock location)"
msgstr "Vyberte lokaci, ze které chcete provést inventuru pro sestavu. (nechte prázdné, chcete-li provést inventuru z libovolné lokace)"
-#: build/models.py:212
+#: build/models.py:216
msgid "Destination Location"
msgstr "Cílová lokace"
-#: build/models.py:216
+#: build/models.py:220
msgid "Select location where the completed items will be stored"
msgstr "Vyberte lokaci, kde budou dokončené položky uloženy"
-#: build/models.py:220
+#: build/models.py:224
msgid "Build Quantity"
msgstr "Množství sestav"
-#: build/models.py:223
+#: build/models.py:227
msgid "Number of stock items to build"
msgstr "Počet skladových položek k sestavení"
-#: build/models.py:227
+#: build/models.py:231
msgid "Completed items"
msgstr "Dokončené položky"
-#: build/models.py:229
+#: build/models.py:233
msgid "Number of stock items which have been completed"
msgstr "Počet skladových položek, které byly dokončeny"
-#: build/models.py:233
+#: build/models.py:237
msgid "Build Status"
msgstr "Stav sestavení"
-#: build/models.py:237
+#: build/models.py:241
msgid "Build status code"
msgstr "Stavový kód sestavení"
-#: build/models.py:246 build/serializers.py:269 order/serializers.py:506
-#: stock/models.py:739 templates/js/translated/purchase_order.js:1099
+#: build/models.py:250 build/serializers.py:277 order/serializers.py:512
+#: stock/models.py:739 templates/js/translated/purchase_order.js:1114
msgid "Batch Code"
msgstr ""
-#: build/models.py:250 build/serializers.py:270
+#: build/models.py:254 build/serializers.py:278
msgid "Batch code for this build output"
msgstr ""
-#: build/models.py:253 order/models.py:244 part/models.py:1038
+#: build/models.py:257 order/models.py:248 part/models.py:1039
#: part/templates/part/part_base.html:312
-#: templates/js/translated/return_order.js:327
-#: templates/js/translated/sales_order.js:815
+#: templates/js/translated/return_order.js:339
+#: templates/js/translated/sales_order.js:827
msgid "Creation Date"
msgstr "Datum vytvoření"
-#: build/models.py:257
+#: build/models.py:261
msgid "Target completion date"
msgstr "Cílové datum dokončení"
-#: build/models.py:258
+#: build/models.py:262
msgid "Target date for build completion. Build will be overdue after this date."
msgstr "Cílové datum dokončení sestavení. Sestavení bude po tomto datu v prodlení."
-#: build/models.py:261 order/models.py:409 order/models.py:1767
-#: templates/js/translated/build.js:2953
+#: build/models.py:265 order/models.py:422 order/models.py:1780
+#: templates/js/translated/build.js:2170
msgid "Completion Date"
msgstr "Datum dokončení"
-#: build/models.py:267
+#: build/models.py:271
msgid "completed by"
msgstr "dokončil"
-#: build/models.py:275 templates/js/translated/build.js:2913
+#: build/models.py:279 templates/js/translated/build.js:2130
msgid "Issued by"
msgstr "Vystavil"
-#: build/models.py:276
+#: build/models.py:280
msgid "User who issued this build order"
msgstr "Uživatel, který vydal tento příkaz k sestavení"
-#: build/models.py:284 build/templates/build/build_base.html:204
-#: build/templates/build/detail.html:122 order/models.py:258
-#: order/templates/order/order_base.html:214
-#: order/templates/order/return_order_base.html:182
-#: order/templates/order/sales_order_base.html:222 part/models.py:1042
+#: build/models.py:288 build/templates/build/build_base.html:205
+#: build/templates/build/detail.html:122 order/models.py:262
+#: order/templates/order/order_base.html:217
+#: order/templates/order/return_order_base.html:189
+#: order/templates/order/sales_order_base.html:229 part/models.py:1043
#: part/templates/part/part_base.html:392
#: report/templates/report/inventree_build_order_base.html:158
-#: templates/js/translated/build.js:2925
-#: templates/js/translated/purchase_order.js:1723
-#: templates/js/translated/return_order.js:347
-#: templates/js/translated/table_filters.js:461
+#: templates/js/translated/build.js:2142
+#: templates/js/translated/purchase_order.js:1738
+#: templates/js/translated/return_order.js:359
+#: templates/js/translated/table_filters.js:467
msgid "Responsible"
msgstr "Odpovědný"
-#: build/models.py:285
+#: build/models.py:289
msgid "User or group responsible for this build order"
msgstr "Uživatel nebo skupina odpovědná za tento příkaz k sestavení"
-#: build/models.py:290 build/templates/build/detail.html:108
+#: build/models.py:294 build/templates/build/detail.html:108
#: company/templates/company/manufacturer_part.html:107
#: company/templates/company/supplier_part.html:195
-#: order/templates/order/order_base.html:171
+#: order/templates/order/order_base.html:167
#: order/templates/order/return_order_base.html:146
#: order/templates/order/sales_order_base.html:181
#: part/templates/part/part_base.html:385 stock/models.py:733
#: stock/templates/stock/item_base.html:201
+#: templates/js/translated/company.js:1050
msgid "External Link"
msgstr "Externí odkaz"
-#: build/models.py:295
+#: build/models.py:299
msgid "Build Priority"
msgstr "Priorita sestavení"
-#: build/models.py:298
+#: build/models.py:302
msgid "Priority of this build order"
msgstr "Priorita tohoto příkazu k sestavení"
-#: build/models.py:536
+#: build/models.py:309 common/models.py:104 order/admin.py:17
+#: order/models.py:237 templates/InvenTree/settings/settings_staff_js.html:70
+#: templates/js/translated/build.js:2067
+#: templates/js/translated/purchase_order.js:1685
+#: templates/js/translated/return_order.js:318
+#: templates/js/translated/sales_order.js:806
+#: templates/js/translated/table_filters.js:24
+#: templates/project_code_data.html:6
+msgid "Project Code"
+msgstr ""
+
+#: build/models.py:310
+msgid "Project code for this build order"
+msgstr ""
+
+#: build/models.py:545
#, python-brace-format
msgid "Build order {build} has been completed"
msgstr "Příkaz k sestavení {build} byl dokončen"
-#: build/models.py:542
+#: build/models.py:551
msgid "A build order has been completed"
msgstr "Příkaz k sestavení byl dokončen"
-#: build/models.py:744 build/models.py:811
+#: build/models.py:753 build/models.py:831
msgid "No build output specified"
msgstr "Nebyl specifikováno žádný výstup sestavení"
-#: build/models.py:747
+#: build/models.py:756
msgid "Build output is already completed"
msgstr "Výstup sestavení je již dokončen"
-#: build/models.py:750
+#: build/models.py:759
msgid "Build output does not match Build Order"
msgstr "Výstup sestavení neodpovídá příkazu sestavení"
-#: build/models.py:815 build/serializers.py:212 build/serializers.py:251
-#: build/serializers.py:811 order/models.py:440 order/serializers.py:379
-#: order/serializers.py:501 part/serializers.py:1087 part/serializers.py:1408
-#: stock/models.py:593 stock/models.py:1387 stock/serializers.py:315
+#: build/models.py:835 build/serializers.py:220 build/serializers.py:259
+#: build/serializers.py:819 order/models.py:453 order/serializers.py:385
+#: order/serializers.py:507 part/serializers.py:1149 part/serializers.py:1470
+#: stock/models.py:593 stock/models.py:1387 stock/serializers.py:381
msgid "Quantity must be greater than zero"
msgstr "Množství musí být vyšší než nula"
-#: build/models.py:820 build/serializers.py:217
+#: build/models.py:840 build/serializers.py:225
msgid "Quantity cannot be greater than the output quantity"
msgstr "Množství nemůže být větší než výstupní množství"
-#: build/models.py:1272
-msgid "Build item must specify a build output, as master part is marked as trackable"
-msgstr "Položka sestavení musí specifikovat výstup sestavení, protože hlavní díl je označen jako sledovatelný"
-
-#: build/models.py:1281
-#, python-brace-format
-msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})"
-msgstr "Zabrané množství ({q}) nesmí překročit dostupné skladové množství ({a})"
-
-#: build/models.py:1291 order/models.py:1601
-msgid "Stock item is over-allocated"
-msgstr "Skladová položka je nadměrně zabrána"
-
-#: build/models.py:1297 order/models.py:1604
-msgid "Allocation quantity must be greater than zero"
-msgstr "Zabrané množství musí být větší než nula"
-
-#: build/models.py:1303
-msgid "Quantity must be 1 for serialized stock"
-msgstr "Množství musí být 1 pro zřetězený sklad"
-
-#: build/models.py:1360
-msgid "Selected stock item not found in BOM"
-msgstr "Vybraná skladová položka nebyla v BOM nalezena"
-
-#: build/models.py:1438 stock/templates/stock/item_base.html:170
-#: templates/InvenTree/search.html:139 templates/js/translated/build.js:2841
-#: templates/navbar.html:38
-msgid "Build"
-msgstr "Sestavení"
-
-#: build/models.py:1439
-msgid "Build to allocate parts"
+#: build/models.py:1260
+msgid "Build object"
msgstr ""
-#: build/models.py:1455 build/serializers.py:791 order/serializers.py:1059
-#: order/serializers.py:1080 stock/serializers.py:413 stock/serializers.py:770
-#: stock/serializers.py:896 stock/templates/stock/item_base.html:10
-#: stock/templates/stock/item_base.html:23
-#: stock/templates/stock/item_base.html:195
-#: templates/js/translated/build.js:955 templates/js/translated/build.js:960
-#: templates/js/translated/build.js:2466 templates/js/translated/build.js:3038
-#: templates/js/translated/sales_order.js:286
-#: templates/js/translated/sales_order.js:1186
-#: templates/js/translated/sales_order.js:1485
-#: templates/js/translated/sales_order.js:1490
-#: templates/js/translated/sales_order.js:1591
-#: templates/js/translated/sales_order.js:1678
-#: templates/js/translated/stock.js:644 templates/js/translated/stock.js:810
-#: templates/js/translated/stock.js:2714
-msgid "Stock Item"
-msgstr ""
-
-#: build/models.py:1456
-msgid "Source stock item"
-msgstr ""
-
-#: build/models.py:1468 build/serializers.py:198 build/serializers.py:236
-#: build/templates/build/build_base.html:103
-#: build/templates/build/detail.html:34 common/models.py:2176
-#: order/models.py:1073 order/models.py:1645 order/serializers.py:1233
+#: build/models.py:1274 build/models.py:1556 build/serializers.py:206
+#: build/serializers.py:244 build/templates/build/build_base.html:103
+#: build/templates/build/detail.html:34 common/models.py:2162
+#: order/models.py:1086 order/models.py:1658 order/serializers.py:1239
#: order/templates/order/order_wizard/match_parts.html:30 part/admin.py:277
-#: part/forms.py:47 part/models.py:2992 part/models.py:3779
+#: part/forms.py:47 part/models.py:3026 part/models.py:3823
#: part/templates/part/part_pricing.html:16
#: part/templates/part/upload_bom.html:53
#: report/templates/report/inventree_bill_of_materials_report.html:138
@@ -1203,315 +1200,367 @@ msgstr ""
#: report/templates/report/inventree_so_report_base.html:29
#: report/templates/report/inventree_test_report_base.html:90
#: report/templates/report/inventree_test_report_base.html:170
-#: stock/admin.py:103 stock/serializers.py:306
+#: stock/admin.py:103 stock/serializers.py:372
#: stock/templates/stock/item_base.html:288
#: stock/templates/stock/item_base.html:296
#: stock/templates/stock/item_base.html:343
#: templates/email/build_order_completed.html:18
-#: templates/js/translated/barcode.js:531 templates/js/translated/bom.js:770
-#: templates/js/translated/bom.js:951 templates/js/translated/build.js:504
-#: templates/js/translated/build.js:716 templates/js/translated/build.js:982
-#: templates/js/translated/build.js:1425 templates/js/translated/build.js:1991
-#: templates/js/translated/build.js:2467
-#: templates/js/translated/company.js:1428
-#: templates/js/translated/model_renderers.js:207
-#: templates/js/translated/order.js:304 templates/js/translated/part.js:935
-#: templates/js/translated/part.js:1784 templates/js/translated/part.js:3263
+#: templates/js/translated/barcode.js:531 templates/js/translated/bom.js:771
+#: templates/js/translated/bom.js:969 templates/js/translated/build.js:510
+#: templates/js/translated/build.js:722 templates/js/translated/build.js:1308
+#: templates/js/translated/build.js:1672 templates/js/translated/build.js:2283
+#: templates/js/translated/company.js:1849
+#: templates/js/translated/model_renderers.js:221
+#: templates/js/translated/order.js:304 templates/js/translated/part.js:934
+#: templates/js/translated/part.js:1783 templates/js/translated/part.js:3248
#: templates/js/translated/pricing.js:381
#: templates/js/translated/pricing.js:474
#: templates/js/translated/pricing.js:522
#: templates/js/translated/pricing.js:616
-#: templates/js/translated/purchase_order.js:749
-#: templates/js/translated/purchase_order.js:1815
-#: templates/js/translated/purchase_order.js:2039
-#: templates/js/translated/sales_order.js:302
-#: templates/js/translated/sales_order.js:1187
-#: templates/js/translated/sales_order.js:1504
-#: templates/js/translated/sales_order.js:1594
-#: templates/js/translated/sales_order.js:1684
-#: templates/js/translated/sales_order.js:1804
-#: templates/js/translated/stock.js:531 templates/js/translated/stock.js:669
-#: templates/js/translated/stock.js:840 templates/js/translated/stock.js:2758
-#: templates/js/translated/stock.js:2843
+#: templates/js/translated/purchase_order.js:760
+#: templates/js/translated/purchase_order.js:1830
+#: templates/js/translated/purchase_order.js:2049
+#: templates/js/translated/sales_order.js:314
+#: templates/js/translated/sales_order.js:1199
+#: templates/js/translated/sales_order.js:1516
+#: templates/js/translated/sales_order.js:1606
+#: templates/js/translated/sales_order.js:1696
+#: templates/js/translated/sales_order.js:1816
+#: templates/js/translated/stock.js:530 templates/js/translated/stock.js:668
+#: templates/js/translated/stock.js:839 templates/js/translated/stock.js:2889
+#: templates/js/translated/stock.js:2970
msgid "Quantity"
msgstr ""
-#: build/models.py:1469
+#: build/models.py:1275
+msgid "Required quantity for build order"
+msgstr ""
+
+#: build/models.py:1357
+msgid "Build item must specify a build output, as master part is marked as trackable"
+msgstr "Položka sestavení musí specifikovat výstup sestavení, protože hlavní díl je označen jako sledovatelný"
+
+#: build/models.py:1366
+#, python-brace-format
+msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})"
+msgstr "Zabrané množství ({q}) nesmí překročit dostupné skladové množství ({a})"
+
+#: build/models.py:1376 order/models.py:1614
+msgid "Stock item is over-allocated"
+msgstr "Skladová položka je nadměrně zabrána"
+
+#: build/models.py:1382 order/models.py:1617
+msgid "Allocation quantity must be greater than zero"
+msgstr "Zabrané množství musí být větší než nula"
+
+#: build/models.py:1388
+msgid "Quantity must be 1 for serialized stock"
+msgstr "Množství musí být 1 pro zřetězený sklad"
+
+#: build/models.py:1449
+msgid "Selected stock item does not match BOM line"
+msgstr ""
+
+#: build/models.py:1543 build/serializers.py:799 order/serializers.py:1065
+#: order/serializers.py:1086 stock/serializers.py:479 stock/serializers.py:887
+#: stock/serializers.py:1013 stock/templates/stock/item_base.html:10
+#: stock/templates/stock/item_base.html:23
+#: stock/templates/stock/item_base.html:195
+#: templates/js/translated/build.js:1671
+#: templates/js/translated/sales_order.js:298
+#: templates/js/translated/sales_order.js:1198
+#: templates/js/translated/sales_order.js:1497
+#: templates/js/translated/sales_order.js:1502
+#: templates/js/translated/sales_order.js:1603
+#: templates/js/translated/sales_order.js:1690
+#: templates/js/translated/stock.js:643 templates/js/translated/stock.js:809
+#: templates/js/translated/stock.js:2845
+msgid "Stock Item"
+msgstr ""
+
+#: build/models.py:1544
+msgid "Source stock item"
+msgstr ""
+
+#: build/models.py:1557
msgid "Stock quantity to allocate to build"
msgstr ""
-#: build/models.py:1477
+#: build/models.py:1565
msgid "Install into"
msgstr ""
-#: build/models.py:1478
+#: build/models.py:1566
msgid "Destination stock item"
msgstr ""
-#: build/serializers.py:148 build/serializers.py:820
-#: templates/js/translated/build.js:1413
+#: build/serializers.py:156 build/serializers.py:828
+#: templates/js/translated/build.js:1299
msgid "Build Output"
msgstr ""
-#: build/serializers.py:160
+#: build/serializers.py:168
msgid "Build output does not match the parent build"
msgstr ""
-#: build/serializers.py:164
+#: build/serializers.py:172
msgid "Output part does not match BuildOrder part"
msgstr ""
-#: build/serializers.py:168
+#: build/serializers.py:176
msgid "This build output has already been completed"
msgstr ""
-#: build/serializers.py:179
+#: build/serializers.py:187
msgid "This build output is not fully allocated"
msgstr ""
-#: build/serializers.py:199 build/serializers.py:237
+#: build/serializers.py:207 build/serializers.py:245
msgid "Enter quantity for build output"
msgstr ""
-#: build/serializers.py:258
+#: build/serializers.py:266
msgid "Integer quantity required for trackable parts"
msgstr ""
-#: build/serializers.py:261
+#: build/serializers.py:269
msgid "Integer quantity required, as the bill of materials contains trackable parts"
msgstr ""
-#: build/serializers.py:276 order/serializers.py:514 order/serializers.py:1237
-#: stock/serializers.py:324 templates/js/translated/purchase_order.js:1123
-#: templates/js/translated/stock.js:334 templates/js/translated/stock.js:532
+#: build/serializers.py:284 order/serializers.py:520 order/serializers.py:1243
+#: stock/serializers.py:390 templates/js/translated/purchase_order.js:1138
+#: templates/js/translated/stock.js:333 templates/js/translated/stock.js:531
msgid "Serial Numbers"
msgstr ""
-#: build/serializers.py:277
+#: build/serializers.py:285
msgid "Enter serial numbers for build outputs"
msgstr ""
-#: build/serializers.py:290
+#: build/serializers.py:298
msgid "Auto Allocate Serial Numbers"
msgstr ""
-#: build/serializers.py:291
+#: build/serializers.py:299
msgid "Automatically allocate required items with matching serial numbers"
msgstr ""
-#: build/serializers.py:326 stock/api.py:670
+#: build/serializers.py:334 stock/api.py:707
msgid "The following serial numbers already exist or are invalid"
msgstr ""
-#: build/serializers.py:377 build/serializers.py:439 build/serializers.py:518
+#: build/serializers.py:385 build/serializers.py:447 build/serializers.py:526
msgid "A list of build outputs must be provided"
msgstr ""
-#: build/serializers.py:415 build/serializers.py:488 order/serializers.py:487
-#: order/serializers.py:606 order/serializers.py:1588 part/serializers.py:854
-#: stock/serializers.py:335 stock/serializers.py:470 stock/serializers.py:551
-#: stock/serializers.py:931 stock/serializers.py:1173
+#: build/serializers.py:423 build/serializers.py:496 order/serializers.py:493
+#: order/serializers.py:612 order/serializers.py:1594 part/serializers.py:916
+#: stock/serializers.py:401 stock/serializers.py:537 stock/serializers.py:618
+#: stock/serializers.py:1048 stock/serializers.py:1290
#: stock/templates/stock/item_base.html:390
#: templates/js/translated/barcode.js:530
-#: templates/js/translated/barcode.js:778 templates/js/translated/build.js:967
-#: templates/js/translated/build.js:2006
-#: templates/js/translated/purchase_order.js:1148
-#: templates/js/translated/purchase_order.js:1238
-#: templates/js/translated/sales_order.js:1497
-#: templates/js/translated/sales_order.js:1605
-#: templates/js/translated/sales_order.js:1613
-#: templates/js/translated/sales_order.js:1692
-#: templates/js/translated/stock.js:645 templates/js/translated/stock.js:811
-#: templates/js/translated/stock.js:1023 templates/js/translated/stock.js:1937
-#: templates/js/translated/stock.js:2608
+#: templates/js/translated/barcode.js:778 templates/js/translated/build.js:980
+#: templates/js/translated/build.js:2298
+#: templates/js/translated/purchase_order.js:1163
+#: templates/js/translated/purchase_order.js:1253
+#: templates/js/translated/sales_order.js:1509
+#: templates/js/translated/sales_order.js:1617
+#: templates/js/translated/sales_order.js:1625
+#: templates/js/translated/sales_order.js:1704
+#: templates/js/translated/stock.js:644 templates/js/translated/stock.js:810
+#: templates/js/translated/stock.js:1022 templates/js/translated/stock.js:2094
+#: templates/js/translated/stock.js:2739
msgid "Location"
msgstr ""
-#: build/serializers.py:416
+#: build/serializers.py:424
msgid "Stock location for scrapped outputs"
msgstr ""
-#: build/serializers.py:422
+#: build/serializers.py:430
msgid "Discard Allocations"
msgstr ""
-#: build/serializers.py:423
+#: build/serializers.py:431
msgid "Discard any stock allocations for scrapped outputs"
msgstr ""
-#: build/serializers.py:428
+#: build/serializers.py:436
msgid "Reason for scrapping build output(s)"
msgstr ""
-#: build/serializers.py:489
+#: build/serializers.py:497
msgid "Location for completed build outputs"
msgstr ""
-#: build/serializers.py:495 build/templates/build/build_base.html:151
-#: build/templates/build/detail.html:62 order/models.py:791
-#: order/models.py:1750 order/serializers.py:524 stock/admin.py:106
-#: stock/templates/stock/item_base.html:423
-#: templates/js/translated/barcode.js:252 templates/js/translated/build.js:2897
-#: templates/js/translated/purchase_order.js:1278
-#: templates/js/translated/purchase_order.js:1682
-#: templates/js/translated/return_order.js:319
-#: templates/js/translated/sales_order.js:807
-#: templates/js/translated/stock.js:1912 templates/js/translated/stock.js:2732
-#: templates/js/translated/stock.js:2859
+#: build/serializers.py:503 build/templates/build/build_base.html:152
+#: build/templates/build/detail.html:62 order/models.py:804
+#: order/models.py:1763 order/serializers.py:530 stock/admin.py:106
+#: stock/serializers.py:677 stock/templates/stock/item_base.html:423
+#: templates/js/translated/barcode.js:252 templates/js/translated/build.js:2114
+#: templates/js/translated/purchase_order.js:1293
+#: templates/js/translated/purchase_order.js:1697
+#: templates/js/translated/return_order.js:331
+#: templates/js/translated/sales_order.js:819
+#: templates/js/translated/stock.js:2069 templates/js/translated/stock.js:2863
+#: templates/js/translated/stock.js:2986
msgid "Status"
msgstr ""
-#: build/serializers.py:501
+#: build/serializers.py:509
msgid "Accept Incomplete Allocation"
msgstr ""
-#: build/serializers.py:502
+#: build/serializers.py:510
msgid "Complete outputs if stock has not been fully allocated"
msgstr ""
-#: build/serializers.py:571
+#: build/serializers.py:579
msgid "Remove Allocated Stock"
msgstr ""
-#: build/serializers.py:572
+#: build/serializers.py:580
msgid "Subtract any stock which has already been allocated to this build"
msgstr ""
-#: build/serializers.py:578
+#: build/serializers.py:586
msgid "Remove Incomplete Outputs"
msgstr ""
-#: build/serializers.py:579
+#: build/serializers.py:587
msgid "Delete any build outputs which have not been completed"
msgstr ""
-#: build/serializers.py:606
+#: build/serializers.py:614
msgid "Not permitted"
msgstr ""
-#: build/serializers.py:607
+#: build/serializers.py:615
msgid "Accept as consumed by this build order"
msgstr ""
-#: build/serializers.py:608
+#: build/serializers.py:616
msgid "Deallocate before completing this build order"
msgstr ""
-#: build/serializers.py:631
+#: build/serializers.py:639
msgid "Overallocated Stock"
msgstr ""
-#: build/serializers.py:633
+#: build/serializers.py:641
msgid "How do you want to handle extra stock items assigned to the build order"
msgstr ""
-#: build/serializers.py:643
+#: build/serializers.py:651
msgid "Some stock items have been overallocated"
msgstr ""
-#: build/serializers.py:648
+#: build/serializers.py:656
msgid "Accept Unallocated"
msgstr ""
-#: build/serializers.py:649
+#: build/serializers.py:657
msgid "Accept that stock items have not been fully allocated to this build order"
msgstr ""
-#: build/serializers.py:659 templates/js/translated/build.js:295
+#: build/serializers.py:667 templates/js/translated/build.js:304
msgid "Required stock has not been fully allocated"
msgstr ""
-#: build/serializers.py:664 order/serializers.py:261 order/serializers.py:1127
+#: build/serializers.py:672 order/serializers.py:267 order/serializers.py:1133
msgid "Accept Incomplete"
msgstr ""
-#: build/serializers.py:665
+#: build/serializers.py:673
msgid "Accept that the required number of build outputs have not been completed"
msgstr ""
-#: build/serializers.py:675 templates/js/translated/build.js:299
+#: build/serializers.py:683 templates/js/translated/build.js:308
msgid "Required build quantity has not been completed"
msgstr ""
-#: build/serializers.py:684 templates/js/translated/build.js:283
+#: build/serializers.py:692 templates/js/translated/build.js:292
msgid "Build order has incomplete outputs"
msgstr ""
-#: build/serializers.py:714 build/serializers.py:768 part/models.py:3686
-#: part/models.py:4069
-msgid "BOM Item"
-msgstr ""
-
-#: build/serializers.py:724
-msgid "Build output"
+#: build/serializers.py:722
+msgid "Build Line"
msgstr ""
#: build/serializers.py:732
+msgid "Build output"
+msgstr ""
+
+#: build/serializers.py:740
msgid "Build output must point to the same build"
msgstr ""
-#: build/serializers.py:782
+#: build/serializers.py:776
+msgid "Build Line Item"
+msgstr ""
+
+#: build/serializers.py:790
msgid "bom_item.part must point to the same part as the build order"
msgstr ""
-#: build/serializers.py:797 stock/serializers.py:783
+#: build/serializers.py:805 stock/serializers.py:900
msgid "Item must be in stock"
msgstr ""
-#: build/serializers.py:846 order/serializers.py:1117
+#: build/serializers.py:853 order/serializers.py:1123
#, python-brace-format
msgid "Available quantity ({q}) exceeded"
msgstr ""
-#: build/serializers.py:852
+#: build/serializers.py:859
msgid "Build output must be specified for allocation of tracked parts"
msgstr ""
-#: build/serializers.py:859
+#: build/serializers.py:866
msgid "Build output cannot be specified for allocation of untracked parts"
msgstr ""
-#: build/serializers.py:864
+#: build/serializers.py:871
msgid "This stock item has already been allocated to this build output"
msgstr ""
-#: build/serializers.py:887 order/serializers.py:1401
+#: build/serializers.py:894 order/serializers.py:1407
msgid "Allocation items must be provided"
msgstr ""
-#: build/serializers.py:943
+#: build/serializers.py:947
msgid "Stock location where parts are to be sourced (leave blank to take from any location)"
msgstr ""
-#: build/serializers.py:951
+#: build/serializers.py:955
msgid "Exclude Location"
msgstr ""
-#: build/serializers.py:952
+#: build/serializers.py:956
msgid "Exclude stock items from this selected location"
msgstr ""
-#: build/serializers.py:957
+#: build/serializers.py:961
msgid "Interchangeable Stock"
msgstr ""
-#: build/serializers.py:958
+#: build/serializers.py:962
msgid "Stock items in multiple locations can be used interchangeably"
msgstr ""
-#: build/serializers.py:963
+#: build/serializers.py:967
msgid "Substitute Stock"
msgstr ""
-#: build/serializers.py:964
+#: build/serializers.py:968
msgid "Allow allocation of substitute parts"
msgstr ""
-#: build/serializers.py:969
+#: build/serializers.py:973
msgid "Optional Items"
msgstr ""
-#: build/serializers.py:970
+#: build/serializers.py:974
msgid "Allocate optional BOM items to build order"
msgstr ""
@@ -1540,6 +1589,7 @@ msgstr ""
#: part/templates/part/part_base.html:43
#: stock/templates/stock/item_base.html:41
#: stock/templates/stock/location.html:54
+#: templates/js/translated/filters.js:336
msgid "Barcode actions"
msgstr ""
@@ -1618,69 +1668,67 @@ msgstr ""
msgid "Build Description"
msgstr ""
-#: build/templates/build/build_base.html:117
+#: build/templates/build/build_base.html:118
msgid "No build outputs have been created for this build order"
msgstr ""
-#: build/templates/build/build_base.html:124
+#: build/templates/build/build_base.html:125
msgid "Build Order is ready to mark as completed"
msgstr ""
-#: build/templates/build/build_base.html:129
+#: build/templates/build/build_base.html:130
msgid "Build Order cannot be completed as outstanding outputs remain"
msgstr ""
-#: build/templates/build/build_base.html:134
+#: build/templates/build/build_base.html:135
msgid "Required build quantity has not yet been completed"
msgstr ""
-#: build/templates/build/build_base.html:139
+#: build/templates/build/build_base.html:140
msgid "Stock has not been fully allocated to this Build Order"
msgstr ""
-#: build/templates/build/build_base.html:160
-#: build/templates/build/detail.html:138 order/models.py:240
-#: order/models.py:1099 order/templates/order/order_base.html:190
+#: build/templates/build/build_base.html:161
+#: build/templates/build/detail.html:138 order/models.py:244
+#: order/models.py:1112 order/templates/order/order_base.html:186
#: order/templates/order/return_order_base.html:165
#: order/templates/order/sales_order_base.html:193
#: report/templates/report/inventree_build_order_base.html:125
-#: templates/js/translated/build.js:2945 templates/js/translated/part.js:1802
-#: templates/js/translated/purchase_order.js:1699
-#: templates/js/translated/purchase_order.js:2115
-#: templates/js/translated/return_order.js:335
-#: templates/js/translated/return_order.js:735
-#: templates/js/translated/sales_order.js:823
-#: templates/js/translated/sales_order.js:1847
+#: templates/js/translated/build.js:2162 templates/js/translated/part.js:1801
+#: templates/js/translated/purchase_order.js:1714
+#: templates/js/translated/purchase_order.js:2125
+#: templates/js/translated/return_order.js:347
+#: templates/js/translated/return_order.js:747
+#: templates/js/translated/sales_order.js:835
+#: templates/js/translated/sales_order.js:1859
msgid "Target Date"
msgstr ""
-#: build/templates/build/build_base.html:165
+#: build/templates/build/build_base.html:166
#, python-format
msgid "This build was due on %(target)s"
msgstr ""
-#: build/templates/build/build_base.html:165
-#: build/templates/build/build_base.html:222
-#: order/templates/order/order_base.html:126
+#: build/templates/build/build_base.html:166
+#: build/templates/build/build_base.html:223
+#: order/templates/order/order_base.html:122
#: order/templates/order/return_order_base.html:118
#: order/templates/order/sales_order_base.html:123
-#: templates/js/translated/table_filters.js:68
-#: templates/js/translated/table_filters.js:454
-#: templates/js/translated/table_filters.js:539
-#: templates/js/translated/table_filters.js:580
+#: templates/js/translated/table_filters.js:74
+#: templates/js/translated/table_filters.js:460
+#: templates/js/translated/table_filters.js:561
+#: templates/js/translated/table_filters.js:602
msgid "Overdue"
msgstr ""
-#: build/templates/build/build_base.html:177
-#: build/templates/build/detail.html:67 build/templates/build/detail.html:149
-#: order/templates/order/sales_order_base.html:203
-#: templates/js/translated/table_filters.js:602
-msgid "Completed"
+#: build/templates/build/build_base.html:178
+#: build/templates/build/detail.html:67 build/templates/build/sidebar.html:13
+msgid "Completed Outputs"
msgstr ""
-#: build/templates/build/build_base.html:190
-#: build/templates/build/detail.html:101 order/api.py:1454 order/models.py:1304
-#: order/models.py:1403 order/models.py:1551
+#: build/templates/build/build_base.html:191
+#: build/templates/build/detail.html:101 order/api.py:1454 order/models.py:1317
+#: order/models.py:1416 order/models.py:1564
#: order/templates/order/sales_order_base.html:9
#: order/templates/order/sales_order_base.html:28
#: report/templates/report/inventree_build_order_base.html:135
@@ -1688,32 +1736,32 @@ msgstr ""
#: stock/templates/stock/item_base.html:370
#: templates/email/overdue_sales_order.html:15
#: templates/js/translated/pricing.js:915
-#: templates/js/translated/sales_order.js:757
-#: templates/js/translated/sales_order.js:980
-#: templates/js/translated/stock.js:2661
+#: templates/js/translated/sales_order.js:769
+#: templates/js/translated/sales_order.js:992
+#: templates/js/translated/stock.js:2792
msgid "Sales Order"
msgstr ""
-#: build/templates/build/build_base.html:197
+#: build/templates/build/build_base.html:198
#: build/templates/build/detail.html:115
#: report/templates/report/inventree_build_order_base.html:152
msgid "Issued By"
msgstr ""
-#: build/templates/build/build_base.html:211
-#: build/templates/build/detail.html:94 templates/js/translated/build.js:2862
+#: build/templates/build/build_base.html:212
+#: build/templates/build/detail.html:94 templates/js/translated/build.js:2079
msgid "Priority"
msgstr ""
-#: build/templates/build/build_base.html:273
+#: build/templates/build/build_base.html:274
msgid "Delete Build Order"
msgstr ""
-#: build/templates/build/build_base.html:283
+#: build/templates/build/build_base.html:284
msgid "Build Order QR Code"
msgstr ""
-#: build/templates/build/build_base.html:295
+#: build/templates/build/build_base.html:296
msgid "Link Barcode to Build Order"
msgstr ""
@@ -1729,8 +1777,8 @@ msgstr ""
msgid "Stock can be taken from any available location."
msgstr ""
-#: build/templates/build/detail.html:49 order/models.py:1222
-#: templates/js/translated/purchase_order.js:2157
+#: build/templates/build/detail.html:49 order/models.py:1235
+#: templates/js/translated/purchase_order.js:2167
msgid "Destination"
msgstr ""
@@ -1744,21 +1792,21 @@ msgstr ""
#: build/templates/build/detail.html:80 stock/admin.py:105
#: stock/templates/stock/item_base.html:163
-#: templates/js/translated/build.js:1432
-#: templates/js/translated/model_renderers.js:212
-#: templates/js/translated/purchase_order.js:1244
-#: templates/js/translated/stock.js:1093 templates/js/translated/stock.js:1926
-#: templates/js/translated/stock.js:2866
-#: templates/js/translated/table_filters.js:259
-#: templates/js/translated/table_filters.js:350
+#: templates/js/translated/build.js:1319
+#: templates/js/translated/model_renderers.js:226
+#: templates/js/translated/purchase_order.js:1259
+#: templates/js/translated/stock.js:1092 templates/js/translated/stock.js:2083
+#: templates/js/translated/stock.js:2993
+#: templates/js/translated/table_filters.js:265
+#: templates/js/translated/table_filters.js:356
msgid "Batch"
msgstr ""
#: build/templates/build/detail.html:133
-#: order/templates/order/order_base.html:177
+#: order/templates/order/order_base.html:173
#: order/templates/order/return_order_base.html:152
#: order/templates/order/sales_order_base.html:187
-#: templates/js/translated/build.js:2905
+#: templates/js/translated/build.js:2122
msgid "Created"
msgstr ""
@@ -1766,147 +1814,106 @@ msgstr ""
msgid "No target date set"
msgstr ""
+#: build/templates/build/detail.html:149
+#: order/templates/order/sales_order_base.html:203
+#: templates/js/translated/table_filters.js:624
+msgid "Completed"
+msgstr ""
+
#: build/templates/build/detail.html:153
msgid "Build not complete"
msgstr ""
-#: build/templates/build/detail.html:164 build/templates/build/sidebar.html:19
+#: build/templates/build/detail.html:164 build/templates/build/sidebar.html:17
msgid "Child Build Orders"
msgstr ""
-#: build/templates/build/detail.html:179
+#: build/templates/build/detail.html:177
msgid "Allocate Stock to Build"
msgstr ""
-#: build/templates/build/detail.html:183 templates/js/translated/build.js:2276
-msgid "Unallocate stock"
+#: build/templates/build/detail.html:181
+msgid "Deallocate stock"
+msgstr ""
+
+#: build/templates/build/detail.html:182
+msgid "Deallocate Stock"
msgstr ""
#: build/templates/build/detail.html:184
-msgid "Unallocate Stock"
-msgstr ""
-
-#: build/templates/build/detail.html:186
msgid "Automatically allocate stock to build"
msgstr ""
-#: build/templates/build/detail.html:187
+#: build/templates/build/detail.html:185
msgid "Auto Allocate"
msgstr ""
-#: build/templates/build/detail.html:189
+#: build/templates/build/detail.html:187
msgid "Manually allocate stock to build"
msgstr ""
-#: build/templates/build/detail.html:190 build/templates/build/sidebar.html:8
+#: build/templates/build/detail.html:188 build/templates/build/sidebar.html:8
msgid "Allocate Stock"
msgstr ""
-#: build/templates/build/detail.html:193
+#: build/templates/build/detail.html:191
msgid "Order required parts"
msgstr ""
-#: build/templates/build/detail.html:194
-#: company/templates/company/detail.html:38
-#: company/templates/company/detail.html:86
-#: part/templates/part/category.html:184
-#: templates/js/translated/purchase_order.js:789
+#: build/templates/build/detail.html:192
+#: templates/js/translated/purchase_order.js:800
msgid "Order Parts"
msgstr ""
-#: build/templates/build/detail.html:206
-msgid "Untracked stock has been fully allocated for this Build Order"
-msgstr ""
-
#: build/templates/build/detail.html:210
-msgid "Untracked stock has not been fully allocated for this Build Order"
-msgstr ""
-
-#: build/templates/build/detail.html:217
-msgid "Allocate selected items"
-msgstr ""
-
-#: build/templates/build/detail.html:227
-msgid "This Build Order does not have any associated untracked BOM items"
-msgstr ""
-
-#: build/templates/build/detail.html:236
msgid "Incomplete Build Outputs"
msgstr ""
-#: build/templates/build/detail.html:240
+#: build/templates/build/detail.html:214
msgid "Create new build output"
msgstr ""
-#: build/templates/build/detail.html:241
+#: build/templates/build/detail.html:215
msgid "New Build Output"
msgstr ""
-#: build/templates/build/detail.html:255
-msgid "Output Actions"
-msgstr ""
-
-#: build/templates/build/detail.html:260
-msgid "Complete selected build outputs"
-msgstr ""
-
-#: build/templates/build/detail.html:261
-msgid "Complete outputs"
-msgstr ""
-
-#: build/templates/build/detail.html:265
-msgid "Scrap selected build outputs"
-msgstr ""
-
-#: build/templates/build/detail.html:266
-msgid "Scrap outputs"
-msgstr ""
-
-#: build/templates/build/detail.html:270
-msgid "Delete selected build outputs"
-msgstr ""
-
-#: build/templates/build/detail.html:271
-msgid "Delete outputs"
-msgstr ""
-
-#: build/templates/build/detail.html:288 build/templates/build/sidebar.html:11
+#: build/templates/build/detail.html:232 build/templates/build/sidebar.html:15
msgid "Consumed Stock"
msgstr ""
-#: build/templates/build/detail.html:300
+#: build/templates/build/detail.html:244
msgid "Completed Build Outputs"
msgstr ""
-#: build/templates/build/detail.html:312 build/templates/build/sidebar.html:21
-#: company/templates/company/detail.html:261
-#: company/templates/company/manufacturer_part.html:151
+#: build/templates/build/detail.html:256 build/templates/build/sidebar.html:19
+#: company/templates/company/detail.html:229
+#: company/templates/company/manufacturer_part.html:141
#: company/templates/company/manufacturer_part_sidebar.html:9
-#: company/templates/company/sidebar.html:37
+#: company/templates/company/sidebar.html:39
#: order/templates/order/po_sidebar.html:9
-#: order/templates/order/purchase_order_detail.html:102
-#: order/templates/order/return_order_detail.html:74
+#: order/templates/order/purchase_order_detail.html:84
+#: order/templates/order/return_order_detail.html:70
#: order/templates/order/return_order_sidebar.html:7
-#: order/templates/order/sales_order_detail.html:134
-#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:234
-#: part/templates/part/part_sidebar.html:61 stock/templates/stock/item.html:117
+#: order/templates/order/sales_order_detail.html:124
+#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:217
+#: part/templates/part/part_sidebar.html:61 stock/templates/stock/item.html:109
#: stock/templates/stock/stock_sidebar.html:23
msgid "Attachments"
msgstr ""
-#: build/templates/build/detail.html:327
+#: build/templates/build/detail.html:271
msgid "Build Notes"
msgstr ""
-#: build/templates/build/detail.html:502
+#: build/templates/build/detail.html:425
msgid "Allocation Complete"
msgstr ""
-#: build/templates/build/detail.html:503
-msgid "All untracked stock items have been allocated"
+#: build/templates/build/detail.html:426
+msgid "All lines have been fully allocated"
msgstr ""
-#: build/templates/build/index.html:18 part/templates/part/detail.html:340
+#: build/templates/build/index.html:18 part/templates/part/detail.html:319
msgid "New Build Order"
msgstr ""
@@ -1914,14 +1921,10 @@ msgstr ""
msgid "Build Order Details"
msgstr ""
-#: build/templates/build/sidebar.html:14
+#: build/templates/build/sidebar.html:10
msgid "Incomplete Outputs"
msgstr ""
-#: build/templates/build/sidebar.html:17
-msgid "Completed Outputs"
-msgstr ""
-
#: common/files.py:63
#, python-brace-format
msgid "Unsupported file format: {fmt}"
@@ -1968,16 +1971,6 @@ msgstr ""
msgid "Timestamp of last update"
msgstr ""
-#: common/models.py:104 order/admin.py:17 order/models.py:234
-#: templates/InvenTree/settings/settings_staff_js.html:70
-#: templates/js/translated/purchase_order.js:1670
-#: templates/js/translated/return_order.js:306
-#: templates/js/translated/sales_order.js:794
-#: templates/js/translated/table_filters.js:24
-#: templates/project_code_data.html:6
-msgid "Project Code"
-msgstr ""
-
#: common/models.py:105
msgid "Unique project code"
msgstr ""
@@ -2261,9 +2254,9 @@ msgstr ""
msgid "Copy category parameter templates when creating a part"
msgstr ""
-#: common/models.py:1162 part/admin.py:55 part/models.py:3560
-#: report/models.py:166 templates/js/translated/table_filters.js:109
-#: templates/js/translated/table_filters.js:680
+#: common/models.py:1162 part/admin.py:55 part/models.py:3594
+#: report/models.py:166 templates/js/translated/table_filters.js:115
+#: templates/js/translated/table_filters.js:702
msgid "Template"
msgstr ""
@@ -2271,10 +2264,10 @@ msgstr ""
msgid "Parts are templates by default"
msgstr ""
-#: common/models.py:1169 part/admin.py:51 part/admin.py:283 part/models.py:996
-#: templates/js/translated/bom.js:1598
-#: templates/js/translated/table_filters.js:276
-#: templates/js/translated/table_filters.js:634
+#: common/models.py:1169 part/admin.py:51 part/admin.py:283 part/models.py:997
+#: templates/js/translated/bom.js:1618
+#: templates/js/translated/table_filters.js:282
+#: templates/js/translated/table_filters.js:656
msgid "Assembly"
msgstr ""
@@ -2282,8 +2275,8 @@ msgstr ""
msgid "Parts can be assembled from other components by default"
msgstr ""
-#: common/models.py:1176 part/admin.py:52 part/models.py:1002
-#: templates/js/translated/table_filters.js:642
+#: common/models.py:1176 part/admin.py:52 part/models.py:1003
+#: templates/js/translated/table_filters.js:664
msgid "Component"
msgstr ""
@@ -2291,7 +2284,7 @@ msgstr ""
msgid "Parts can be used as sub-components by default"
msgstr ""
-#: common/models.py:1183 part/admin.py:53 part/models.py:1013
+#: common/models.py:1183 part/admin.py:53 part/models.py:1014
msgid "Purchaseable"
msgstr "Možné zakoupit"
@@ -2299,8 +2292,8 @@ msgstr "Možné zakoupit"
msgid "Parts are purchaseable by default"
msgstr "Díly jsou zakoupitelné ve výchozím nastavení"
-#: common/models.py:1190 part/admin.py:54 part/models.py:1018
-#: templates/js/translated/table_filters.js:668
+#: common/models.py:1190 part/admin.py:54 part/models.py:1019
+#: templates/js/translated/table_filters.js:690
msgid "Salable"
msgstr "Prodejné"
@@ -2308,10 +2301,10 @@ msgstr "Prodejné"
msgid "Parts are salable by default"
msgstr "Díly jsou prodejné ve výchozím nastavení"
-#: common/models.py:1197 part/admin.py:56 part/models.py:1008
-#: templates/js/translated/table_filters.js:117
-#: templates/js/translated/table_filters.js:193
-#: templates/js/translated/table_filters.js:684
+#: common/models.py:1197 part/admin.py:56 part/models.py:1009
+#: templates/js/translated/table_filters.js:123
+#: templates/js/translated/table_filters.js:199
+#: templates/js/translated/table_filters.js:706
msgid "Trackable"
msgstr "Sledovatelné"
@@ -2319,10 +2312,10 @@ msgstr "Sledovatelné"
msgid "Parts are trackable by default"
msgstr "Díly jsou sledovatelné ve výchozím nastavení"
-#: common/models.py:1204 part/admin.py:57 part/models.py:1028
+#: common/models.py:1204 part/admin.py:57 part/models.py:1029
#: part/templates/part/part_base.html:156
-#: templates/js/translated/table_filters.js:113
-#: templates/js/translated/table_filters.js:688
+#: templates/js/translated/table_filters.js:119
+#: templates/js/translated/table_filters.js:710
msgid "Virtual"
msgstr "Nehmotné (virtuální)"
@@ -2354,7 +2347,7 @@ msgstr "Počáteční údaje zásob"
msgid "Allow creation of initial stock when adding a new part"
msgstr "Povolit vytvoření počátečního skladu při přidání nové části"
-#: common/models.py:1232 templates/js/translated/part.js:108
+#: common/models.py:1232 templates/js/translated/part.js:107
msgid "Initial Supplier Data"
msgstr "Počáteční údaje dodavatele"
@@ -2603,179 +2596,179 @@ msgid "Stock location default icon (empty means no icon)"
msgstr ""
#: common/models.py:1471
-msgid "Build Order Reference Pattern"
+msgid "Show Installed Stock Items"
msgstr ""
#: common/models.py:1472
-msgid "Required pattern for generating Build Order reference field"
+msgid "Display installed stock items in stock tables"
msgstr ""
#: common/models.py:1478
-msgid "Enable Return Orders"
+msgid "Build Order Reference Pattern"
msgstr ""
#: common/models.py:1479
-msgid "Enable return order functionality in the user interface"
+msgid "Required pattern for generating Build Order reference field"
msgstr ""
#: common/models.py:1485
-msgid "Return Order Reference Pattern"
+msgid "Enable Return Orders"
msgstr ""
#: common/models.py:1486
-msgid "Required pattern for generating Return Order reference field"
+msgid "Enable return order functionality in the user interface"
msgstr ""
#: common/models.py:1492
-msgid "Edit Completed Return Orders"
+msgid "Return Order Reference Pattern"
msgstr ""
#: common/models.py:1493
-msgid "Allow editing of return orders after they have been completed"
+msgid "Required pattern for generating Return Order reference field"
msgstr ""
#: common/models.py:1499
-msgid "Sales Order Reference Pattern"
+msgid "Edit Completed Return Orders"
msgstr ""
#: common/models.py:1500
-msgid "Required pattern for generating Sales Order reference field"
+msgid "Allow editing of return orders after they have been completed"
msgstr ""
#: common/models.py:1506
-msgid "Sales Order Default Shipment"
+msgid "Sales Order Reference Pattern"
msgstr ""
#: common/models.py:1507
-msgid "Enable creation of default shipment with sales orders"
+msgid "Required pattern for generating Sales Order reference field"
msgstr ""
#: common/models.py:1513
-msgid "Edit Completed Sales Orders"
+msgid "Sales Order Default Shipment"
msgstr ""
#: common/models.py:1514
-msgid "Allow editing of sales orders after they have been shipped or completed"
+msgid "Enable creation of default shipment with sales orders"
msgstr ""
#: common/models.py:1520
-msgid "Purchase Order Reference Pattern"
+msgid "Edit Completed Sales Orders"
msgstr ""
#: common/models.py:1521
-msgid "Required pattern for generating Purchase Order reference field"
+msgid "Allow editing of sales orders after they have been shipped or completed"
msgstr ""
#: common/models.py:1527
-msgid "Edit Completed Purchase Orders"
+msgid "Purchase Order Reference Pattern"
msgstr ""
#: common/models.py:1528
-msgid "Allow editing of purchase orders after they have been shipped or completed"
+msgid "Required pattern for generating Purchase Order reference field"
+msgstr ""
+
+#: common/models.py:1534
+msgid "Edit Completed Purchase Orders"
msgstr ""
#: common/models.py:1535
-msgid "Enable password forgot"
-msgstr ""
-
-#: common/models.py:1536
-msgid "Enable password forgot function on the login pages"
+msgid "Allow editing of purchase orders after they have been shipped or completed"
msgstr ""
#: common/models.py:1542
-msgid "Enable registration"
+msgid "Enable password forgot"
msgstr ""
#: common/models.py:1543
-msgid "Enable self-registration for users on the login pages"
+msgid "Enable password forgot function on the login pages"
msgstr ""
#: common/models.py:1549
-msgid "Enable SSO"
+msgid "Enable registration"
msgstr ""
#: common/models.py:1550
-msgid "Enable SSO on the login pages"
+msgid "Enable self-registration for users on the login pages"
msgstr ""
#: common/models.py:1556
-msgid "Enable SSO registration"
+msgid "Enable SSO"
msgstr ""
#: common/models.py:1557
-msgid "Enable self-registration via SSO for users on the login pages"
+msgid "Enable SSO on the login pages"
msgstr ""
#: common/models.py:1563
-msgid "Email required"
+msgid "Enable SSO registration"
msgstr ""
#: common/models.py:1564
-msgid "Require user to supply mail on signup"
+msgid "Enable self-registration via SSO for users on the login pages"
msgstr ""
#: common/models.py:1570
-msgid "Auto-fill SSO users"
+msgid "Email required"
msgstr ""
#: common/models.py:1571
-msgid "Automatically fill out user-details from SSO account-data"
+msgid "Require user to supply mail on signup"
msgstr ""
#: common/models.py:1577
-msgid "Mail twice"
+msgid "Auto-fill SSO users"
msgstr ""
#: common/models.py:1578
-msgid "On signup ask users twice for their mail"
+msgid "Automatically fill out user-details from SSO account-data"
msgstr ""
#: common/models.py:1584
-msgid "Password twice"
+msgid "Mail twice"
msgstr ""
#: common/models.py:1585
-msgid "On signup ask users twice for their password"
+msgid "On signup ask users twice for their mail"
msgstr ""
#: common/models.py:1591
-msgid "Allowed domains"
+msgid "Password twice"
msgstr ""
#: common/models.py:1592
-msgid "Restrict signup to certain domains (comma-separated, starting with @)"
+msgid "On signup ask users twice for their password"
msgstr ""
#: common/models.py:1598
-msgid "Group on signup"
+msgid "Allowed domains"
msgstr ""
#: common/models.py:1599
-msgid "Group to which new users are assigned on registration"
+msgid "Restrict signup to certain domains (comma-separated, starting with @)"
msgstr ""
#: common/models.py:1605
-msgid "Enforce MFA"
+msgid "Group on signup"
msgstr ""
#: common/models.py:1606
-msgid "Users must use multifactor security."
+msgid "Group to which new users are assigned on registration"
msgstr ""
#: common/models.py:1612
-msgid "Check plugins on startup"
+msgid "Enforce MFA"
msgstr ""
#: common/models.py:1613
-msgid "Check that all plugins are installed on startup - enable in container environments"
+msgid "Users must use multifactor security."
+msgstr ""
+
+#: common/models.py:1619
+msgid "Check plugins on startup"
msgstr ""
#: common/models.py:1620
-msgid "Check plugin signatures"
-msgstr ""
-
-#: common/models.py:1621
-msgid "Check and show signatures for plugins"
+msgid "Check that all plugins are installed on startup - enable in container environments"
msgstr ""
#: common/models.py:1628
@@ -2850,7 +2843,7 @@ msgstr ""
msgid "Stocktake reports will be deleted after specified number of days"
msgstr ""
-#: common/models.py:1710 common/models.py:2147
+#: common/models.py:1710 common/models.py:2133
msgid "Settings key (must be unique - case insensitive"
msgstr ""
@@ -2891,528 +2884,513 @@ msgid "Show latest parts on the homepage"
msgstr ""
#: common/models.py:1779
-msgid "Recent Part Count"
-msgstr ""
-
-#: common/models.py:1780
-msgid "Number of recent parts to display on index page"
-msgstr ""
-
-#: common/models.py:1786
msgid "Show unvalidated BOMs"
msgstr ""
-#: common/models.py:1787
+#: common/models.py:1780
msgid "Show BOMs that await validation on the homepage"
msgstr ""
-#: common/models.py:1793
+#: common/models.py:1786
msgid "Show recent stock changes"
msgstr ""
-#: common/models.py:1794
+#: common/models.py:1787
msgid "Show recently changed stock items on the homepage"
msgstr ""
-#: common/models.py:1800
-msgid "Recent Stock Count"
-msgstr ""
-
-#: common/models.py:1801
-msgid "Number of recent stock items to display on index page"
-msgstr ""
-
-#: common/models.py:1807
+#: common/models.py:1793
msgid "Show low stock"
msgstr ""
-#: common/models.py:1808
+#: common/models.py:1794
msgid "Show low stock items on the homepage"
msgstr ""
-#: common/models.py:1814
+#: common/models.py:1800
msgid "Show depleted stock"
msgstr ""
-#: common/models.py:1815
+#: common/models.py:1801
msgid "Show depleted stock items on the homepage"
msgstr ""
-#: common/models.py:1821
+#: common/models.py:1807
msgid "Show needed stock"
msgstr ""
-#: common/models.py:1822
+#: common/models.py:1808
msgid "Show stock items needed for builds on the homepage"
msgstr ""
-#: common/models.py:1828
+#: common/models.py:1814
msgid "Show expired stock"
msgstr ""
-#: common/models.py:1829
+#: common/models.py:1815
msgid "Show expired stock items on the homepage"
msgstr ""
-#: common/models.py:1835
+#: common/models.py:1821
msgid "Show stale stock"
msgstr ""
-#: common/models.py:1836
+#: common/models.py:1822
msgid "Show stale stock items on the homepage"
msgstr ""
-#: common/models.py:1842
+#: common/models.py:1828
msgid "Show pending builds"
msgstr ""
-#: common/models.py:1843
+#: common/models.py:1829
msgid "Show pending builds on the homepage"
msgstr ""
-#: common/models.py:1849
+#: common/models.py:1835
msgid "Show overdue builds"
msgstr ""
-#: common/models.py:1850
+#: common/models.py:1836
msgid "Show overdue builds on the homepage"
msgstr ""
-#: common/models.py:1856
+#: common/models.py:1842
msgid "Show outstanding POs"
msgstr ""
-#: common/models.py:1857
+#: common/models.py:1843
msgid "Show outstanding POs on the homepage"
msgstr ""
-#: common/models.py:1863
+#: common/models.py:1849
msgid "Show overdue POs"
msgstr ""
-#: common/models.py:1864
+#: common/models.py:1850
msgid "Show overdue POs on the homepage"
msgstr ""
-#: common/models.py:1870
+#: common/models.py:1856
msgid "Show outstanding SOs"
msgstr ""
-#: common/models.py:1871
+#: common/models.py:1857
msgid "Show outstanding SOs on the homepage"
msgstr ""
-#: common/models.py:1877
+#: common/models.py:1863
msgid "Show overdue SOs"
msgstr ""
-#: common/models.py:1878
+#: common/models.py:1864
msgid "Show overdue SOs on the homepage"
msgstr ""
-#: common/models.py:1884
+#: common/models.py:1870
msgid "Show pending SO shipments"
msgstr ""
-#: common/models.py:1885
+#: common/models.py:1871
msgid "Show pending SO shipments on the homepage"
msgstr ""
-#: common/models.py:1891
+#: common/models.py:1877
msgid "Show News"
msgstr ""
-#: common/models.py:1892
+#: common/models.py:1878
msgid "Show news on the homepage"
msgstr ""
-#: common/models.py:1898
+#: common/models.py:1884
msgid "Inline label display"
msgstr ""
-#: common/models.py:1899
+#: common/models.py:1885
msgid "Display PDF labels in the browser, instead of downloading as a file"
msgstr ""
-#: common/models.py:1905
+#: common/models.py:1891
msgid "Default label printer"
msgstr ""
-#: common/models.py:1906
+#: common/models.py:1892
msgid "Configure which label printer should be selected by default"
msgstr ""
-#: common/models.py:1912
+#: common/models.py:1898
msgid "Inline report display"
msgstr ""
-#: common/models.py:1913
+#: common/models.py:1899
msgid "Display PDF reports in the browser, instead of downloading as a file"
msgstr ""
-#: common/models.py:1919
+#: common/models.py:1905
msgid "Search Parts"
msgstr ""
-#: common/models.py:1920
+#: common/models.py:1906
msgid "Display parts in search preview window"
msgstr ""
-#: common/models.py:1926
+#: common/models.py:1912
msgid "Search Supplier Parts"
msgstr ""
-#: common/models.py:1927
+#: common/models.py:1913
msgid "Display supplier parts in search preview window"
msgstr ""
-#: common/models.py:1933
+#: common/models.py:1919
msgid "Search Manufacturer Parts"
msgstr ""
-#: common/models.py:1934
+#: common/models.py:1920
msgid "Display manufacturer parts in search preview window"
msgstr ""
-#: common/models.py:1940
+#: common/models.py:1926
msgid "Hide Inactive Parts"
msgstr ""
-#: common/models.py:1941
+#: common/models.py:1927
msgid "Excluded inactive parts from search preview window"
msgstr ""
-#: common/models.py:1947
+#: common/models.py:1933
msgid "Search Categories"
msgstr ""
-#: common/models.py:1948
+#: common/models.py:1934
msgid "Display part categories in search preview window"
msgstr ""
-#: common/models.py:1954
+#: common/models.py:1940
msgid "Search Stock"
msgstr ""
-#: common/models.py:1955
+#: common/models.py:1941
msgid "Display stock items in search preview window"
msgstr ""
-#: common/models.py:1961
+#: common/models.py:1947
msgid "Hide Unavailable Stock Items"
msgstr ""
-#: common/models.py:1962
+#: common/models.py:1948
msgid "Exclude stock items which are not available from the search preview window"
msgstr ""
-#: common/models.py:1968
+#: common/models.py:1954
msgid "Search Locations"
msgstr ""
-#: common/models.py:1969
+#: common/models.py:1955
msgid "Display stock locations in search preview window"
msgstr ""
-#: common/models.py:1975
+#: common/models.py:1961
msgid "Search Companies"
msgstr ""
-#: common/models.py:1976
+#: common/models.py:1962
msgid "Display companies in search preview window"
msgstr ""
-#: common/models.py:1982
+#: common/models.py:1968
msgid "Search Build Orders"
msgstr ""
-#: common/models.py:1983
+#: common/models.py:1969
msgid "Display build orders in search preview window"
msgstr ""
-#: common/models.py:1989
+#: common/models.py:1975
msgid "Search Purchase Orders"
msgstr ""
-#: common/models.py:1990
+#: common/models.py:1976
msgid "Display purchase orders in search preview window"
msgstr ""
-#: common/models.py:1996
+#: common/models.py:1982
msgid "Exclude Inactive Purchase Orders"
msgstr ""
-#: common/models.py:1997
+#: common/models.py:1983
msgid "Exclude inactive purchase orders from search preview window"
msgstr ""
-#: common/models.py:2003
+#: common/models.py:1989
msgid "Search Sales Orders"
msgstr ""
-#: common/models.py:2004
+#: common/models.py:1990
msgid "Display sales orders in search preview window"
msgstr ""
-#: common/models.py:2010
+#: common/models.py:1996
msgid "Exclude Inactive Sales Orders"
msgstr ""
-#: common/models.py:2011
+#: common/models.py:1997
msgid "Exclude inactive sales orders from search preview window"
msgstr ""
-#: common/models.py:2017
+#: common/models.py:2003
msgid "Search Return Orders"
msgstr ""
-#: common/models.py:2018
+#: common/models.py:2004
msgid "Display return orders in search preview window"
msgstr ""
-#: common/models.py:2024
+#: common/models.py:2010
msgid "Exclude Inactive Return Orders"
msgstr ""
-#: common/models.py:2025
+#: common/models.py:2011
msgid "Exclude inactive return orders from search preview window"
msgstr ""
-#: common/models.py:2031
+#: common/models.py:2017
msgid "Search Preview Results"
msgstr ""
-#: common/models.py:2032
+#: common/models.py:2018
msgid "Number of results to show in each section of the search preview window"
msgstr ""
-#: common/models.py:2038
+#: common/models.py:2024
msgid "Regex Search"
msgstr ""
-#: common/models.py:2039
+#: common/models.py:2025
msgid "Enable regular expressions in search queries"
msgstr ""
-#: common/models.py:2045
+#: common/models.py:2031
msgid "Whole Word Search"
msgstr ""
-#: common/models.py:2046
+#: common/models.py:2032
msgid "Search queries return results for whole word matches"
msgstr ""
-#: common/models.py:2052
+#: common/models.py:2038
msgid "Show Quantity in Forms"
msgstr ""
-#: common/models.py:2053
+#: common/models.py:2039
msgid "Display available part quantity in some forms"
msgstr ""
-#: common/models.py:2059
+#: common/models.py:2045
msgid "Escape Key Closes Forms"
msgstr ""
-#: common/models.py:2060
+#: common/models.py:2046
msgid "Use the escape key to close modal forms"
msgstr ""
-#: common/models.py:2066
+#: common/models.py:2052
msgid "Fixed Navbar"
msgstr ""
-#: common/models.py:2067
+#: common/models.py:2053
msgid "The navbar position is fixed to the top of the screen"
msgstr ""
-#: common/models.py:2073
+#: common/models.py:2059
msgid "Date Format"
msgstr "Formát data"
-#: common/models.py:2074
+#: common/models.py:2060
msgid "Preferred format for displaying dates"
msgstr ""
-#: common/models.py:2088 part/templates/part/detail.html:41
+#: common/models.py:2074 part/templates/part/detail.html:41
msgid "Part Scheduling"
msgstr ""
-#: common/models.py:2089
+#: common/models.py:2075
msgid "Display part scheduling information"
msgstr ""
-#: common/models.py:2095 part/templates/part/detail.html:62
+#: common/models.py:2081 part/templates/part/detail.html:62
msgid "Part Stocktake"
msgstr ""
-#: common/models.py:2096
+#: common/models.py:2082
msgid "Display part stocktake information (if stocktake functionality is enabled)"
msgstr ""
-#: common/models.py:2102
+#: common/models.py:2088
msgid "Table String Length"
msgstr ""
-#: common/models.py:2103
+#: common/models.py:2089
msgid "Maximimum length limit for strings displayed in table views"
msgstr ""
-#: common/models.py:2112
+#: common/models.py:2098
msgid "Default part label template"
msgstr ""
-#: common/models.py:2113
+#: common/models.py:2099
msgid "The part label template to be automatically selected"
msgstr ""
-#: common/models.py:2121
+#: common/models.py:2107
msgid "Default stock item template"
msgstr ""
-#: common/models.py:2122
+#: common/models.py:2108
msgid "The stock item label template to be automatically selected"
msgstr ""
-#: common/models.py:2130
+#: common/models.py:2116
msgid "Default stock location label template"
msgstr ""
-#: common/models.py:2131
+#: common/models.py:2117
msgid "The stock location label template to be automatically selected"
msgstr ""
-#: common/models.py:2177
+#: common/models.py:2163
msgid "Price break quantity"
msgstr ""
-#: common/models.py:2184 company/serializers.py:434 order/admin.py:43
-#: order/models.py:1132 order/models.py:1939
-#: templates/js/translated/company.js:1433 templates/js/translated/part.js:1856
+#: common/models.py:2170 company/serializers.py:491 order/admin.py:43
+#: order/models.py:1145 order/models.py:1952
+#: templates/js/translated/company.js:1854 templates/js/translated/part.js:1855
#: templates/js/translated/pricing.js:621
-#: templates/js/translated/return_order.js:725
+#: templates/js/translated/return_order.js:737
msgid "Price"
msgstr "Cena"
-#: common/models.py:2185
+#: common/models.py:2171
msgid "Unit price at specified quantity"
msgstr ""
-#: common/models.py:2345 common/models.py:2523
+#: common/models.py:2331 common/models.py:2509
msgid "Endpoint"
msgstr ""
-#: common/models.py:2346
+#: common/models.py:2332
msgid "Endpoint at which this webhook is received"
msgstr ""
-#: common/models.py:2355
+#: common/models.py:2341
msgid "Name for this webhook"
msgstr ""
-#: common/models.py:2360 part/admin.py:50 part/models.py:1023
-#: plugin/models.py:47 templates/js/translated/table_filters.js:105
-#: templates/js/translated/table_filters.js:189
-#: templates/js/translated/table_filters.js:434
-#: templates/js/translated/table_filters.js:450
-#: templates/js/translated/table_filters.js:629
+#: common/models.py:2346 part/admin.py:50 part/models.py:1024
+#: plugin/models.py:48 templates/js/translated/table_filters.js:111
+#: templates/js/translated/table_filters.js:195
+#: templates/js/translated/table_filters.js:440
+#: templates/js/translated/table_filters.js:456
+#: templates/js/translated/table_filters.js:651
msgid "Active"
msgstr ""
-#: common/models.py:2361
+#: common/models.py:2347
msgid "Is this webhook active"
msgstr ""
-#: common/models.py:2375
+#: common/models.py:2361
msgid "Token"
msgstr ""
-#: common/models.py:2376
+#: common/models.py:2362
msgid "Token for access"
msgstr ""
-#: common/models.py:2383
+#: common/models.py:2369
msgid "Secret"
msgstr ""
-#: common/models.py:2384
+#: common/models.py:2370
msgid "Shared secret for HMAC"
msgstr ""
-#: common/models.py:2490
+#: common/models.py:2476
msgid "Message ID"
msgstr ""
-#: common/models.py:2491
+#: common/models.py:2477
msgid "Unique identifier for this message"
msgstr ""
-#: common/models.py:2499
+#: common/models.py:2485
msgid "Host"
msgstr ""
-#: common/models.py:2500
+#: common/models.py:2486
msgid "Host from which this message was received"
msgstr ""
-#: common/models.py:2507
+#: common/models.py:2493
msgid "Header"
msgstr ""
-#: common/models.py:2508
+#: common/models.py:2494
msgid "Header of this message"
msgstr ""
-#: common/models.py:2514
+#: common/models.py:2500
msgid "Body"
msgstr ""
-#: common/models.py:2515
+#: common/models.py:2501
msgid "Body of this message"
msgstr ""
-#: common/models.py:2524
+#: common/models.py:2510
msgid "Endpoint on which this message was received"
msgstr ""
-#: common/models.py:2529
+#: common/models.py:2515
msgid "Worked on"
msgstr ""
-#: common/models.py:2530
+#: common/models.py:2516
msgid "Was the work on this message finished?"
msgstr ""
-#: common/models.py:2684
+#: common/models.py:2670
msgid "Id"
msgstr "Id"
-#: common/models.py:2690 templates/js/translated/news.js:44
+#: common/models.py:2676 templates/js/translated/company.js:996
+#: templates/js/translated/news.js:44
msgid "Title"
msgstr ""
-#: common/models.py:2700 templates/js/translated/news.js:60
+#: common/models.py:2686 templates/js/translated/news.js:60
msgid "Published"
msgstr ""
-#: common/models.py:2705 templates/InvenTree/settings/plugin_settings.html:32
+#: common/models.py:2691 templates/InvenTree/settings/plugin_settings.html:32
#: templates/js/translated/news.js:56 templates/js/translated/plugin.js:106
msgid "Author"
msgstr ""
-#: common/models.py:2710 templates/js/translated/news.js:52
+#: common/models.py:2696 templates/js/translated/news.js:52
msgid "Summary"
msgstr ""
-#: common/models.py:2715
+#: common/models.py:2701
msgid "Read"
msgstr ""
-#: common/models.py:2716
+#: common/models.py:2702
msgid "Was this news item read?"
msgstr ""
-#: common/models.py:2736 company/models.py:143 part/models.py:914
+#: common/models.py:2722 company/models.py:139 part/models.py:915
#: report/templates/report/inventree_bill_of_materials_report.html:126
#: report/templates/report/inventree_bill_of_materials_report.html:148
#: report/templates/report/inventree_return_order_report_base.html:35
@@ -3422,7 +3400,7 @@ msgstr ""
msgid "Image"
msgstr "Obrazek"
-#: common/models.py:2737
+#: common/models.py:2723
msgid "Image file"
msgstr ""
@@ -3499,7 +3477,7 @@ msgstr ""
#: company/models.py:113 company/templates/company/company_base.html:101
#: templates/InvenTree/settings/plugin_settings.html:54
-#: templates/js/translated/company.js:514
+#: templates/js/translated/company.js:521
msgid "Website"
msgstr "Webová stránka"
@@ -3507,303 +3485,387 @@ msgstr "Webová stránka"
msgid "Company website URL"
msgstr "Webové stránky společnosti"
-#: company/models.py:118 company/templates/company/company_base.html:119
-msgid "Address"
-msgstr "Adresa"
-
-#: company/models.py:119
-msgid "Company address"
-msgstr "Adresa společnosti"
-
-#: company/models.py:122
+#: company/models.py:118
msgid "Phone number"
msgstr "Telefonní číslo"
-#: company/models.py:123
+#: company/models.py:119
msgid "Contact phone number"
msgstr "Kontaktní telefonní číslo"
-#: company/models.py:126 company/templates/company/company_base.html:133
+#: company/models.py:122 company/templates/company/company_base.html:133
#: templates/InvenTree/settings/user.html:49
-#: templates/js/translated/company.js:659
+#: templates/js/translated/company.js:666
msgid "Email"
msgstr "E-mail"
-#: company/models.py:126
+#: company/models.py:122
msgid "Contact email address"
msgstr "Kontaktní e-mailová adresa"
-#: company/models.py:129 company/templates/company/company_base.html:140
-#: order/models.py:266 order/templates/order/order_base.html:207
+#: company/models.py:125 company/templates/company/company_base.html:140
+#: order/models.py:270 order/templates/order/order_base.html:203
#: order/templates/order/return_order_base.html:175
#: order/templates/order/sales_order_base.html:215
msgid "Contact"
msgstr "Kontakt"
-#: company/models.py:130
+#: company/models.py:126
msgid "Point of contact"
msgstr "Kontaktní místo"
-#: company/models.py:132
+#: company/models.py:128
msgid "Link to external company information"
msgstr ""
-#: company/models.py:146
+#: company/models.py:142
msgid "is customer"
msgstr "je zákazník"
-#: company/models.py:146
+#: company/models.py:142
msgid "Do you sell items to this company?"
msgstr ""
-#: company/models.py:148
+#: company/models.py:144
msgid "is supplier"
msgstr ""
-#: company/models.py:148
+#: company/models.py:144
msgid "Do you purchase items from this company?"
msgstr ""
-#: company/models.py:150
+#: company/models.py:146
msgid "is manufacturer"
msgstr ""
-#: company/models.py:150
+#: company/models.py:146
msgid "Does this company manufacture parts?"
msgstr ""
-#: company/models.py:157
+#: company/models.py:153
msgid "Default currency used for this company"
msgstr ""
-#: company/models.py:223 company/templates/company/company_base.html:8
+#: company/models.py:235 company/models.py:328
+#: company/templates/company/company_base.html:8
#: company/templates/company/company_base.html:12
-#: templates/InvenTree/search.html:178 templates/js/translated/company.js:487
+#: templates/InvenTree/search.html:178 templates/js/translated/company.js:494
msgid "Company"
msgstr "Společnost"
-#: company/models.py:278 company/models.py:553 stock/models.py:675
-#: stock/serializers.py:155 stock/templates/stock/item_base.html:143
-#: templates/js/translated/bom.js:621
+#: company/models.py:324
+msgid "Company already has a primary address"
+msgstr ""
+
+#: company/models.py:329
+msgid "Select company"
+msgstr ""
+
+#: company/models.py:332
+msgid "Address title"
+msgstr ""
+
+#: company/models.py:333
+msgid "Title describing the address entry"
+msgstr ""
+
+#: company/models.py:337
+msgid "Primary address"
+msgstr ""
+
+#: company/models.py:338
+msgid "Set as primary address"
+msgstr ""
+
+#: company/models.py:341 templates/js/translated/company.js:941
+#: templates/js/translated/company.js:1002
+msgid "Line 1"
+msgstr ""
+
+#: company/models.py:342
+msgid "Address line 1"
+msgstr ""
+
+#: company/models.py:346 templates/js/translated/company.js:942
+#: templates/js/translated/company.js:1008
+msgid "Line 2"
+msgstr ""
+
+#: company/models.py:347
+msgid "Address line 2"
+msgstr ""
+
+#: company/models.py:351 company/models.py:352
+#: templates/js/translated/company.js:1014
+msgid "Postal code"
+msgstr ""
+
+#: company/models.py:356
+msgid "City/Region"
+msgstr ""
+
+#: company/models.py:357
+msgid "Postal code city/region"
+msgstr ""
+
+#: company/models.py:361
+msgid "State/Province"
+msgstr ""
+
+#: company/models.py:362
+msgid "State or province"
+msgstr ""
+
+#: company/models.py:366 templates/js/translated/company.js:1032
+msgid "Country"
+msgstr ""
+
+#: company/models.py:367
+msgid "Address country"
+msgstr ""
+
+#: company/models.py:371
+msgid "Courier shipping notes"
+msgstr ""
+
+#: company/models.py:372
+msgid "Notes for shipping courier"
+msgstr ""
+
+#: company/models.py:376
+msgid "Internal shipping notes"
+msgstr ""
+
+#: company/models.py:377
+msgid "Shipping notes for internal use"
+msgstr ""
+
+#: company/models.py:382
+msgid "Link to address information (external)"
+msgstr ""
+
+#: company/models.py:427 company/models.py:702 stock/models.py:675
+#: stock/serializers.py:204 stock/templates/stock/item_base.html:143
+#: templates/js/translated/bom.js:622
msgid "Base Part"
msgstr "Základní díl"
-#: company/models.py:282 company/models.py:557
+#: company/models.py:431 company/models.py:706
msgid "Select part"
msgstr "Zvolte díl"
-#: company/models.py:293 company/templates/company/company_base.html:77
+#: company/models.py:442 company/templates/company/company_base.html:77
#: company/templates/company/manufacturer_part.html:90
-#: company/templates/company/supplier_part.html:146 part/serializers.py:354
+#: company/templates/company/supplier_part.html:146 part/serializers.py:404
#: stock/templates/stock/item_base.html:208
-#: templates/js/translated/company.js:498
-#: templates/js/translated/company.js:824
-#: templates/js/translated/company.js:954
-#: templates/js/translated/company.js:1221
-#: templates/js/translated/table_filters.js:709
+#: templates/js/translated/company.js:505
+#: templates/js/translated/company.js:1149
+#: templates/js/translated/company.js:1327
+#: templates/js/translated/company.js:1642
+#: templates/js/translated/table_filters.js:731
msgid "Manufacturer"
msgstr "Výrobce"
-#: company/models.py:294
+#: company/models.py:443
msgid "Select manufacturer"
msgstr "Vyberte výrobce"
-#: company/models.py:300 company/templates/company/manufacturer_part.html:101
-#: company/templates/company/supplier_part.html:154 part/serializers.py:360
-#: templates/js/translated/company.js:340
-#: templates/js/translated/company.js:823
-#: templates/js/translated/company.js:970
-#: templates/js/translated/company.js:1240 templates/js/translated/part.js:1773
-#: templates/js/translated/purchase_order.js:1814
-#: templates/js/translated/purchase_order.js:2021
+#: company/models.py:449 company/templates/company/manufacturer_part.html:101
+#: company/templates/company/supplier_part.html:154 part/serializers.py:410
+#: templates/js/translated/company.js:350
+#: templates/js/translated/company.js:1148
+#: templates/js/translated/company.js:1343
+#: templates/js/translated/company.js:1661 templates/js/translated/part.js:1772
+#: templates/js/translated/purchase_order.js:1829
+#: templates/js/translated/purchase_order.js:2031
msgid "MPN"
msgstr ""
-#: company/models.py:301
+#: company/models.py:450
msgid "Manufacturer Part Number"
msgstr "Číslo dílu výrobce"
-#: company/models.py:307
+#: company/models.py:456
msgid "URL for external manufacturer part link"
msgstr ""
-#: company/models.py:313
+#: company/models.py:462
msgid "Manufacturer part description"
msgstr "Popis dílu výrobce"
-#: company/models.py:360 company/models.py:384 company/models.py:578
+#: company/models.py:509 company/models.py:533 company/models.py:727
#: company/templates/company/manufacturer_part.html:7
#: company/templates/company/manufacturer_part.html:24
#: stock/templates/stock/item_base.html:218
msgid "Manufacturer Part"
msgstr "Výrobce dílu"
-#: company/models.py:391
+#: company/models.py:540
msgid "Parameter name"
msgstr "Název parametru"
-#: company/models.py:397
+#: company/models.py:546
#: report/templates/report/inventree_test_report_base.html:104
-#: stock/models.py:2255 templates/js/translated/company.js:872
-#: templates/js/translated/company.js:1077 templates/js/translated/part.js:1465
-#: templates/js/translated/stock.js:1446
+#: stock/models.py:2255 templates/js/translated/company.js:1197
+#: templates/js/translated/company.js:1450 templates/js/translated/part.js:1464
+#: templates/js/translated/stock.js:1445
msgid "Value"
msgstr "Hodnota"
-#: company/models.py:398
+#: company/models.py:547
msgid "Parameter value"
msgstr "Hodnota parametru"
-#: company/models.py:404 company/templates/company/supplier_part.html:169
-#: part/admin.py:40 part/models.py:987 part/models.py:3407
+#: company/models.py:553 company/templates/company/supplier_part.html:169
+#: part/admin.py:40 part/models.py:988 part/models.py:3441
#: part/templates/part/part_base.html:286
-#: templates/js/translated/company.js:1083 templates/js/translated/part.js:1484
-#: templates/js/translated/part.js:1588 templates/js/translated/part.js:2262
+#: templates/js/translated/company.js:1456 templates/js/translated/part.js:1483
+#: templates/js/translated/part.js:1587 templates/js/translated/part.js:2338
msgid "Units"
msgstr "Jednotky"
-#: company/models.py:405
+#: company/models.py:554
msgid "Parameter units"
msgstr ""
-#: company/models.py:498
+#: company/models.py:647
msgid "Pack units must be compatible with the base part units"
msgstr ""
-#: company/models.py:504
+#: company/models.py:653
msgid "Pack units must be greater than zero"
msgstr ""
-#: company/models.py:520
+#: company/models.py:669
msgid "Linked manufacturer part must reference the same base part"
msgstr ""
-#: company/models.py:564 company/templates/company/company_base.html:82
-#: company/templates/company/supplier_part.html:130 order/models.py:382
-#: order/templates/order/order_base.html:140 part/bom.py:285 part/bom.py:313
-#: part/serializers.py:343 stock/templates/stock/item_base.html:225
+#: company/models.py:713 company/templates/company/company_base.html:82
+#: company/templates/company/supplier_part.html:130 order/models.py:395
+#: order/templates/order/order_base.html:136 part/bom.py:285 part/bom.py:313
+#: part/serializers.py:393 stock/templates/stock/item_base.html:225
#: templates/email/overdue_purchase_order.html:16
-#: templates/js/translated/company.js:339
-#: templates/js/translated/company.js:502
-#: templates/js/translated/company.js:1194 templates/js/translated/part.js:1741
+#: templates/js/translated/company.js:349
+#: templates/js/translated/company.js:509
+#: templates/js/translated/company.js:1615 templates/js/translated/part.js:1740
#: templates/js/translated/pricing.js:498
-#: templates/js/translated/purchase_order.js:1653
-#: templates/js/translated/table_filters.js:713
+#: templates/js/translated/purchase_order.js:1668
+#: templates/js/translated/table_filters.js:735
msgid "Supplier"
msgstr ""
-#: company/models.py:565
+#: company/models.py:714
msgid "Select supplier"
msgstr ""
-#: company/models.py:570 company/templates/company/supplier_part.html:140
-#: part/bom.py:286 part/bom.py:314 part/serializers.py:349
-#: templates/js/translated/company.js:338 templates/js/translated/part.js:1759
+#: company/models.py:719 company/templates/company/supplier_part.html:140
+#: part/bom.py:286 part/bom.py:314 part/serializers.py:399
+#: templates/js/translated/company.js:348 templates/js/translated/part.js:1758
#: templates/js/translated/pricing.js:510
-#: templates/js/translated/purchase_order.js:1813
-#: templates/js/translated/purchase_order.js:1996
+#: templates/js/translated/purchase_order.js:1828
+#: templates/js/translated/purchase_order.js:2006
msgid "SKU"
msgstr ""
-#: company/models.py:571 part/serializers.py:349
+#: company/models.py:720 part/serializers.py:399
msgid "Supplier stock keeping unit"
msgstr ""
-#: company/models.py:579
+#: company/models.py:728
msgid "Select manufacturer part"
msgstr ""
-#: company/models.py:585
+#: company/models.py:734
msgid "URL for external supplier part link"
msgstr ""
-#: company/models.py:591
+#: company/models.py:740
msgid "Supplier part description"
msgstr ""
-#: company/models.py:596 company/templates/company/supplier_part.html:188
-#: part/admin.py:279 part/models.py:3801 part/templates/part/upload_bom.html:59
+#: company/models.py:745 company/templates/company/supplier_part.html:188
+#: part/admin.py:279 part/models.py:3845 part/templates/part/upload_bom.html:59
#: report/templates/report/inventree_bill_of_materials_report.html:140
#: report/templates/report/inventree_po_report_base.html:32
#: report/templates/report/inventree_return_order_report_base.html:27
#: report/templates/report/inventree_so_report_base.html:32
-#: stock/serializers.py:418
+#: stock/serializers.py:484
msgid "Note"
msgstr ""
-#: company/models.py:600 part/models.py:1919
+#: company/models.py:749 part/models.py:1921
msgid "base cost"
msgstr ""
-#: company/models.py:600 part/models.py:1919
+#: company/models.py:749 part/models.py:1921
msgid "Minimum charge (e.g. stocking fee)"
msgstr ""
-#: company/models.py:602 company/templates/company/supplier_part.html:161
+#: company/models.py:751 company/templates/company/supplier_part.html:161
#: stock/admin.py:119 stock/models.py:701
#: stock/templates/stock/item_base.html:241
-#: templates/js/translated/company.js:1256
-#: templates/js/translated/stock.js:2160
+#: templates/js/translated/company.js:1677
+#: templates/js/translated/stock.js:2317
msgid "Packaging"
msgstr ""
-#: company/models.py:602
+#: company/models.py:751
msgid "Part packaging"
msgstr ""
-#: company/models.py:606 templates/js/translated/company.js:1261
-#: templates/js/translated/part.js:1793 templates/js/translated/part.js:1848
-#: templates/js/translated/purchase_order.js:300
-#: templates/js/translated/purchase_order.js:827
-#: templates/js/translated/purchase_order.js:1073
-#: templates/js/translated/purchase_order.js:2052
-#: templates/js/translated/purchase_order.js:2069
+#: company/models.py:755 templates/js/translated/company.js:1682
+#: templates/js/translated/part.js:1792 templates/js/translated/part.js:1847
+#: templates/js/translated/purchase_order.js:311
+#: templates/js/translated/purchase_order.js:842
+#: templates/js/translated/purchase_order.js:1088
+#: templates/js/translated/purchase_order.js:2062
+#: templates/js/translated/purchase_order.js:2079
msgid "Pack Quantity"
msgstr ""
-#: company/models.py:607
+#: company/models.py:756
msgid "Total quantity supplied in a single pack. Leave empty for single items."
msgstr ""
-#: company/models.py:624 part/models.py:1921
+#: company/models.py:773 part/models.py:1923
msgid "multiple"
msgstr ""
-#: company/models.py:624
+#: company/models.py:773
msgid "Order multiple"
msgstr ""
-#: company/models.py:632 company/templates/company/supplier_part.html:115
+#: company/models.py:781 company/templates/company/supplier_part.html:115
#: templates/email/build_order_required_stock.html:19
#: templates/email/low_stock_notification.html:17
-#: templates/js/translated/bom.js:1127 templates/js/translated/build.js:2136
-#: templates/js/translated/build.js:3045
-#: templates/js/translated/model_renderers.js:205
-#: templates/js/translated/part.js:670 templates/js/translated/part.js:672
-#: templates/js/translated/part.js:677
-#: templates/js/translated/table_filters.js:286
-#: templates/js/translated/table_filters.js:492
+#: templates/js/translated/bom.js:1145 templates/js/translated/build.js:2490
+#: templates/js/translated/index.js:118
+#: templates/js/translated/model_renderers.js:219
+#: templates/js/translated/part.js:669 templates/js/translated/part.js:671
+#: templates/js/translated/part.js:676
+#: templates/js/translated/table_filters.js:292
+#: templates/js/translated/table_filters.js:510
msgid "Available"
msgstr ""
-#: company/models.py:633
+#: company/models.py:782
msgid "Quantity available from supplier"
msgstr ""
-#: company/models.py:637
+#: company/models.py:786
msgid "Availability Updated"
msgstr ""
-#: company/models.py:638
+#: company/models.py:787
msgid "Date of last update of availability data"
msgstr ""
-#: company/serializers.py:99
+#: company/serializers.py:156
msgid "Default currency used for this supplier"
msgstr ""
#: company/templates/company/company_base.html:22
-#: templates/js/translated/purchase_order.js:228
+#: templates/js/translated/purchase_order.js:239
msgid "Create Purchase Order"
msgstr ""
@@ -3816,7 +3878,7 @@ msgid "Edit company information"
msgstr "Upravit údaje o společnosti"
#: company/templates/company/company_base.html:34
-#: templates/js/translated/company.js:436
+#: templates/js/translated/company.js:443
msgid "Edit Company"
msgstr "Upravit společnost"
@@ -3856,17 +3918,17 @@ msgstr "Stáhnout obrázek z URL"
msgid "Delete image"
msgstr "Smazat obrázek"
-#: company/templates/company/company_base.html:87 order/models.py:779
-#: order/models.py:1738 order/templates/order/return_order_base.html:132
+#: company/templates/company/company_base.html:87 order/models.py:792
+#: order/models.py:1751 order/templates/order/return_order_base.html:132
#: order/templates/order/sales_order_base.html:145 stock/models.py:720
-#: stock/models.py:721 stock/serializers.py:825
+#: stock/models.py:721 stock/serializers.py:942
#: stock/templates/stock/item_base.html:401
#: templates/email/overdue_sales_order.html:16
-#: templates/js/translated/company.js:494
-#: templates/js/translated/return_order.js:284
-#: templates/js/translated/sales_order.js:772
-#: templates/js/translated/stock.js:2696
-#: templates/js/translated/table_filters.js:717
+#: templates/js/translated/company.js:501
+#: templates/js/translated/return_order.js:296
+#: templates/js/translated/sales_order.js:784
+#: templates/js/translated/stock.js:2827
+#: templates/js/translated/table_filters.js:739
msgid "Customer"
msgstr "Zákazník"
@@ -3874,6 +3936,13 @@ msgstr "Zákazník"
msgid "Uses default currency"
msgstr ""
+#: company/templates/company/company_base.html:119 order/models.py:279
+#: order/templates/order/order_base.html:210
+#: order/templates/order/return_order_base.html:182
+#: order/templates/order/sales_order_base.html:222
+msgid "Address"
+msgstr "Adresa"
+
#: company/templates/company/company_base.html:126
msgid "Phone"
msgstr "Telefon"
@@ -3906,7 +3975,7 @@ msgstr "Stáhnout obrázek"
#: company/templates/company/detail.html:15
#: company/templates/company/manufacturer_part_sidebar.html:7
-#: templates/InvenTree/search.html:120 templates/js/translated/search.js:189
+#: templates/InvenTree/search.html:120 templates/js/translated/search.js:147
msgid "Supplier Parts"
msgstr "Dodavatel dílů"
@@ -3916,129 +3985,121 @@ msgstr "Vytvořit nového dodavatele dílu"
#: company/templates/company/detail.html:20
#: company/templates/company/manufacturer_part.html:123
-#: part/templates/part/detail.html:381
+#: part/templates/part/detail.html:356
msgid "New Supplier Part"
msgstr "Nová díl dodavatele"
-#: company/templates/company/detail.html:37
-#: company/templates/company/detail.html:85
-#: part/templates/part/category.html:183
-msgid "Order parts"
-msgstr "Objednávka dílů"
-
-#: company/templates/company/detail.html:42
-#: company/templates/company/detail.html:90
-msgid "Delete parts"
-msgstr "Odstranit díly"
-
-#: company/templates/company/detail.html:43
-#: company/templates/company/detail.html:91
-msgid "Delete Parts"
-msgstr "Odstraněné díly"
-
-#: company/templates/company/detail.html:62 templates/InvenTree/search.html:105
-#: templates/js/translated/search.js:193
+#: company/templates/company/detail.html:41 templates/InvenTree/search.html:105
+#: templates/js/translated/search.js:151
msgid "Manufacturer Parts"
msgstr "Výrobce dílů"
-#: company/templates/company/detail.html:66
+#: company/templates/company/detail.html:45
msgid "Create new manufacturer part"
msgstr "Vytvořit nového výrobce dílu"
-#: company/templates/company/detail.html:67 part/templates/part/detail.html:411
+#: company/templates/company/detail.html:46 part/templates/part/detail.html:376
msgid "New Manufacturer Part"
msgstr "Nový výrobce dílu"
-#: company/templates/company/detail.html:108
+#: company/templates/company/detail.html:65
msgid "Supplier Stock"
msgstr "Dodavatelský sklad"
-#: company/templates/company/detail.html:118
+#: company/templates/company/detail.html:75
#: company/templates/company/sidebar.html:12
#: company/templates/company/supplier_part_sidebar.html:7
#: 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:108 part/templates/part/part_sidebar.html:35
-#: templates/InvenTree/index.html:275 templates/InvenTree/search.html:199
+#: part/templates/part/detail.html:106 part/templates/part/part_sidebar.html:35
+#: templates/InvenTree/index.html:227 templates/InvenTree/search.html:199
#: templates/InvenTree/settings/sidebar.html:55
-#: templates/js/translated/search.js:247 templates/navbar.html:50
+#: templates/js/translated/search.js:205 templates/navbar.html:50
#: users/models.py:43
msgid "Purchase Orders"
msgstr "Zakoupené objednávky"
-#: company/templates/company/detail.html:122
+#: company/templates/company/detail.html:79
#: order/templates/order/purchase_orders.html:17
msgid "Create new purchase order"
msgstr ""
-#: company/templates/company/detail.html:123
+#: company/templates/company/detail.html:80
#: order/templates/order/purchase_orders.html:18
msgid "New Purchase Order"
msgstr ""
-#: company/templates/company/detail.html:146
+#: company/templates/company/detail.html:101
#: company/templates/company/sidebar.html:21
#: 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:131 part/templates/part/part_sidebar.html:39
-#: templates/InvenTree/index.html:307 templates/InvenTree/search.html:219
+#: part/templates/part/detail.html:127 part/templates/part/part_sidebar.html:39
+#: templates/InvenTree/index.html:259 templates/InvenTree/search.html:219
#: templates/InvenTree/settings/sidebar.html:57
-#: templates/js/translated/search.js:261 templates/navbar.html:62
+#: templates/js/translated/search.js:219 templates/navbar.html:62
#: users/models.py:44
msgid "Sales Orders"
msgstr ""
-#: company/templates/company/detail.html:150
+#: company/templates/company/detail.html:105
#: order/templates/order/sales_orders.html:20
msgid "Create new sales order"
msgstr ""
-#: company/templates/company/detail.html:151
+#: company/templates/company/detail.html:106
#: order/templates/order/sales_orders.html:21
msgid "New Sales Order"
msgstr ""
-#: company/templates/company/detail.html:173
-#: templates/js/translated/build.js:1976
+#: company/templates/company/detail.html:126
msgid "Assigned Stock"
msgstr ""
-#: company/templates/company/detail.html:191
+#: company/templates/company/detail.html:142
#: company/templates/company/sidebar.html:29
#: order/templates/order/return_order_base.html:13
#: order/templates/order/return_orders.html:8
#: order/templates/order/return_orders.html:15
#: templates/InvenTree/settings/sidebar.html:59
-#: templates/js/translated/search.js:274 templates/navbar.html:65
+#: templates/js/translated/search.js:232 templates/navbar.html:65
#: users/models.py:45
msgid "Return Orders"
msgstr ""
-#: company/templates/company/detail.html:195
+#: company/templates/company/detail.html:146
#: order/templates/order/return_orders.html:20
msgid "Create new return order"
msgstr ""
-#: company/templates/company/detail.html:196
+#: company/templates/company/detail.html:147
#: order/templates/order/return_orders.html:21
msgid "New Return Order"
msgstr ""
-#: company/templates/company/detail.html:221
+#: company/templates/company/detail.html:168
msgid "Company Notes"
msgstr "Poznámky ke společnosti"
-#: company/templates/company/detail.html:236
+#: company/templates/company/detail.html:183
msgid "Company Contacts"
msgstr ""
-#: company/templates/company/detail.html:240
-#: company/templates/company/detail.html:241
+#: company/templates/company/detail.html:187
+#: company/templates/company/detail.html:188
msgid "Add Contact"
msgstr ""
+#: company/templates/company/detail.html:206
+msgid "Company addresses"
+msgstr ""
+
+#: company/templates/company/detail.html:210
+#: company/templates/company/detail.html:211
+msgid "Add Address"
+msgstr ""
+
#: company/templates/company/index.html:8
msgid "Supplier List"
msgstr ""
@@ -4050,17 +4111,17 @@ msgstr ""
#: company/templates/company/manufacturer_part.html:35
#: company/templates/company/supplier_part.html:228
-#: part/templates/part/detail.html:111 part/templates/part/part_base.html:85
+#: part/templates/part/detail.html:109 part/templates/part/part_base.html:85
msgid "Order part"
msgstr ""
#: company/templates/company/manufacturer_part.html:39
-#: templates/js/translated/company.js:1001
+#: templates/js/translated/company.js:1374
msgid "Edit manufacturer part"
msgstr ""
#: company/templates/company/manufacturer_part.html:43
-#: templates/js/translated/company.js:1002
+#: templates/js/translated/company.js:1375
msgid "Delete manufacturer part"
msgstr ""
@@ -4080,40 +4141,22 @@ msgstr ""
msgid "Suppliers"
msgstr ""
-#: company/templates/company/manufacturer_part.html:136
-#: part/templates/part/detail.html:392
-msgid "Delete supplier parts"
-msgstr ""
-
-#: company/templates/company/manufacturer_part.html:136
-#: company/templates/company/manufacturer_part.html:183
-#: part/templates/part/detail.html:393 part/templates/part/detail.html:423
-#: templates/js/translated/forms.js:506 templates/js/translated/helpers.js:105
-#: templates/js/translated/part.js:370 templates/js/translated/pricing.js:629
-#: templates/js/translated/stock.js:216 users/models.py:247
-msgid "Delete"
-msgstr "Odstranit"
-
-#: company/templates/company/manufacturer_part.html:166
+#: company/templates/company/manufacturer_part.html:156
#: company/templates/company/manufacturer_part_sidebar.html:5
#: part/templates/part/category_sidebar.html:20
-#: part/templates/part/detail.html:208 part/templates/part/part_sidebar.html:8
+#: part/templates/part/detail.html:195 part/templates/part/part_sidebar.html:8
msgid "Parameters"
msgstr ""
-#: company/templates/company/manufacturer_part.html:170
-#: part/templates/part/detail.html:213
+#: company/templates/company/manufacturer_part.html:160
+#: part/templates/part/detail.html:200
#: templates/InvenTree/settings/category.html:12
#: templates/InvenTree/settings/part_parameters.html:12
msgid "New Parameter"
msgstr ""
-#: company/templates/company/manufacturer_part.html:183
-msgid "Delete parameters"
-msgstr ""
-
-#: company/templates/company/manufacturer_part.html:226
-#: templates/js/translated/part.js:1396
+#: company/templates/company/manufacturer_part.html:206
+#: templates/js/translated/part.js:1395
msgid "Add Parameter"
msgstr ""
@@ -4137,23 +4180,28 @@ msgstr ""
msgid "Contacts"
msgstr ""
+#: company/templates/company/sidebar.html:35
+msgid "Addresses"
+msgstr ""
+
#: company/templates/company/supplier_part.html:7
#: company/templates/company/supplier_part.html:24 stock/models.py:684
#: stock/templates/stock/item_base.html:234
-#: templates/js/translated/company.js:1210
-#: templates/js/translated/purchase_order.js:747
-#: templates/js/translated/stock.js:2016
+#: templates/js/translated/company.js:1631
+#: templates/js/translated/purchase_order.js:758
+#: templates/js/translated/stock.js:2173
msgid "Supplier Part"
msgstr ""
#: company/templates/company/supplier_part.html:51
+#: templates/js/translated/company.js:1557
msgid "Supplier part actions"
msgstr ""
#: company/templates/company/supplier_part.html:56
#: company/templates/company/supplier_part.html:57
#: company/templates/company/supplier_part.html:229
-#: part/templates/part/detail.html:112
+#: part/templates/part/detail.html:110
msgid "Order Part"
msgstr ""
@@ -4164,13 +4212,13 @@ msgstr ""
#: company/templates/company/supplier_part.html:64
#: company/templates/company/supplier_part.html:65
-#: templates/js/translated/company.js:283
+#: templates/js/translated/company.js:293
msgid "Edit Supplier Part"
msgstr ""
#: company/templates/company/supplier_part.html:69
#: company/templates/company/supplier_part.html:70
-#: templates/js/translated/company.js:258
+#: templates/js/translated/company.js:268
msgid "Duplicate Supplier Part"
msgstr ""
@@ -4197,7 +4245,7 @@ msgstr ""
#: company/templates/company/supplier_part.html:211
#: part/templates/part/detail.html:25 stock/templates/stock/location.html:198
-#: templates/js/translated/stock.js:504
+#: templates/js/translated/stock.js:503
msgid "New Stock Item"
msgstr ""
@@ -4205,37 +4253,37 @@ msgstr ""
msgid "Supplier Part Orders"
msgstr ""
-#: company/templates/company/supplier_part.html:249
+#: company/templates/company/supplier_part.html:247
msgid "Pricing Information"
msgstr ""
-#: company/templates/company/supplier_part.html:254
-#: templates/js/translated/company.js:387
+#: company/templates/company/supplier_part.html:252
+#: templates/js/translated/company.js:397
#: templates/js/translated/pricing.js:684
msgid "Add Price Break"
msgstr ""
-#: company/templates/company/supplier_part.html:281
+#: company/templates/company/supplier_part.html:277
msgid "Supplier Part QR Code"
msgstr ""
-#: company/templates/company/supplier_part.html:292
+#: company/templates/company/supplier_part.html:288
msgid "Link Barcode to Supplier Part"
msgstr ""
-#: company/templates/company/supplier_part.html:365
+#: company/templates/company/supplier_part.html:361
msgid "Update Part Availability"
msgstr ""
#: company/templates/company/supplier_part_sidebar.html:5 part/tasks.py:293
-#: part/templates/part/category.html:199
+#: part/templates/part/category.html:182
#: part/templates/part/category_sidebar.html:17 stock/admin.py:47
-#: stock/templates/stock/location.html:168
+#: stock/serializers.py:662 stock/templates/stock/location.html:168
#: stock/templates/stock/location.html:182
#: stock/templates/stock/location.html:194
#: stock/templates/stock/location_sidebar.html:7
-#: templates/InvenTree/search.html:155 templates/js/translated/part.js:1034
-#: templates/js/translated/search.js:214 templates/js/translated/stock.js:2514
+#: templates/InvenTree/search.html:155 templates/js/translated/part.js:1033
+#: templates/js/translated/search.js:172 templates/js/translated/stock.js:2645
#: users/models.py:41
msgid "Stock Items"
msgstr ""
@@ -4261,7 +4309,7 @@ msgstr ""
msgid "New Customer"
msgstr ""
-#: company/views.py:52 templates/js/translated/search.js:234
+#: company/views.py:52 templates/js/translated/search.js:192
msgid "Companies"
msgstr ""
@@ -4269,72 +4317,76 @@ msgstr ""
msgid "New Company"
msgstr ""
-#: label/models.py:104
+#: label/models.py:112
msgid "Label name"
msgstr ""
-#: label/models.py:111
+#: label/models.py:119
msgid "Label description"
msgstr ""
-#: label/models.py:118
+#: label/models.py:126
msgid "Label"
msgstr ""
-#: label/models.py:119
+#: label/models.py:127
msgid "Label template file"
msgstr ""
-#: label/models.py:125 report/models.py:273
+#: label/models.py:133 report/models.py:273
msgid "Enabled"
msgstr ""
-#: label/models.py:126
+#: label/models.py:134
msgid "Label template is enabled"
msgstr ""
-#: label/models.py:131
+#: label/models.py:139
msgid "Width [mm]"
msgstr ""
-#: label/models.py:132
+#: label/models.py:140
msgid "Label width, specified in mm"
msgstr ""
-#: label/models.py:138
+#: label/models.py:146
msgid "Height [mm]"
msgstr ""
-#: label/models.py:139
+#: label/models.py:147
msgid "Label height, specified in mm"
msgstr ""
-#: label/models.py:145 report/models.py:266
+#: label/models.py:153 report/models.py:266
msgid "Filename Pattern"
msgstr ""
-#: label/models.py:146
+#: label/models.py:154
msgid "Pattern for generating label filenames"
msgstr ""
-#: label/models.py:242
+#: label/models.py:250
msgid "Query filters (comma-separated list of key=value pairs),"
msgstr ""
-#: label/models.py:243 label/models.py:284 label/models.py:312
-#: report/models.py:294 report/models.py:452 report/models.py:490
-#: report/models.py:528
+#: label/models.py:251 label/models.py:292 label/models.py:320
+#: label/models.py:356 report/models.py:294 report/models.py:454
+#: report/models.py:492 report/models.py:530
msgid "Filters"
msgstr ""
-#: label/models.py:283
+#: label/models.py:291
msgid "Query filters (comma-separated list of key=value pairs"
msgstr ""
-#: label/models.py:311
+#: label/models.py:319
msgid "Part query filters (comma-separated value of key=value pairs)"
msgstr ""
+#: label/models.py:355
+msgid "Query filters (comma-separated list of key=value pairs)"
+msgstr ""
+
#: label/templates/label/part/part_label.html:31
#: label/templates/label/stockitem/qr.html:21
#: label/templates/label/stocklocation/qr.html:21
@@ -4352,8 +4404,8 @@ msgstr ""
#: report/templates/report/inventree_po_report_base.html:31
#: report/templates/report/inventree_so_report_base.html:31
#: templates/js/translated/order.js:327
-#: templates/js/translated/purchase_order.js:2093
-#: templates/js/translated/sales_order.js:1827
+#: templates/js/translated/purchase_order.js:2103
+#: templates/js/translated/sales_order.js:1839
msgid "Total Price"
msgstr ""
@@ -4361,30 +4413,30 @@ msgstr ""
msgid "No matching purchase order found"
msgstr ""
-#: order/api.py:1452 order/models.py:1178 order/models.py:1262
+#: order/api.py:1452 order/models.py:1191 order/models.py:1275
#: order/templates/order/order_base.html:9
#: order/templates/order/order_base.html:18
#: report/templates/report/inventree_po_report_base.html:14
#: stock/templates/stock/item_base.html:177
#: templates/email/overdue_purchase_order.html:15
-#: templates/js/translated/part.js:1718 templates/js/translated/pricing.js:790
-#: templates/js/translated/purchase_order.js:154
-#: templates/js/translated/purchase_order.js:748
-#: templates/js/translated/purchase_order.js:1637
-#: templates/js/translated/stock.js:1996 templates/js/translated/stock.js:2644
+#: templates/js/translated/part.js:1717 templates/js/translated/pricing.js:790
+#: templates/js/translated/purchase_order.js:165
+#: templates/js/translated/purchase_order.js:759
+#: templates/js/translated/purchase_order.js:1652
+#: templates/js/translated/stock.js:2153 templates/js/translated/stock.js:2775
msgid "Purchase Order"
msgstr ""
-#: order/api.py:1456 order/models.py:1909 order/models.py:1955
+#: order/api.py:1456 order/models.py:1922 order/models.py:1968
#: order/templates/order/return_order_base.html:9
#: order/templates/order/return_order_base.html:28
#: report/templates/report/inventree_return_order_report_base.html:13
-#: templates/js/translated/return_order.js:269
-#: templates/js/translated/stock.js:2678
+#: templates/js/translated/return_order.js:281
+#: templates/js/translated/stock.js:2809
msgid "Return Order"
msgstr ""
-#: order/api.py:1458 templates/js/translated/sales_order.js:1030
+#: order/api.py:1458 templates/js/translated/sales_order.js:1042
msgid "Unknown"
msgstr ""
@@ -4392,11 +4444,11 @@ msgstr ""
msgid "Total price for this order"
msgstr ""
-#: order/models.py:79 order/serializers.py:49
+#: order/models.py:79 order/serializers.py:50
msgid "Order Currency"
msgstr ""
-#: order/models.py:81 order/serializers.py:50
+#: order/models.py:81 order/serializers.py:51
msgid "Currency for this order (leave blank to use company default)"
msgstr ""
@@ -4408,492 +4460,496 @@ msgstr ""
msgid "Order description (optional)"
msgstr ""
-#: order/models.py:234
+#: order/models.py:237
msgid "Select project code for this order"
msgstr ""
-#: order/models.py:236 order/models.py:1094 order/models.py:1454
+#: order/models.py:240 order/models.py:1107 order/models.py:1467
msgid "Link to external page"
msgstr ""
-#: order/models.py:241
+#: order/models.py:245
msgid "Expected date for order delivery. Order will be overdue after this date."
msgstr ""
-#: order/models.py:250
+#: order/models.py:254
msgid "Created By"
msgstr ""
-#: order/models.py:257
+#: order/models.py:261
msgid "User or group responsible for this order"
msgstr ""
-#: order/models.py:267
+#: order/models.py:271
msgid "Point of contact for this order"
msgstr ""
-#: order/models.py:360 order/models.py:766
+#: order/models.py:280
+msgid "Company address for this order"
+msgstr ""
+
+#: order/models.py:373 order/models.py:779
msgid "Order reference"
msgstr ""
-#: order/models.py:368 order/models.py:791
+#: order/models.py:381 order/models.py:804
msgid "Purchase order status"
msgstr ""
-#: order/models.py:383
+#: order/models.py:396
msgid "Company from which the items are being ordered"
msgstr ""
-#: order/models.py:391 order/templates/order/order_base.html:152
-#: templates/js/translated/purchase_order.js:1662
+#: order/models.py:404 order/templates/order/order_base.html:148
+#: templates/js/translated/purchase_order.js:1677
msgid "Supplier Reference"
msgstr ""
-#: order/models.py:391
+#: order/models.py:404
msgid "Supplier order reference code"
msgstr ""
-#: order/models.py:398
+#: order/models.py:411
msgid "received by"
msgstr ""
-#: order/models.py:403 order/models.py:1761
+#: order/models.py:416 order/models.py:1774
msgid "Issue Date"
msgstr ""
-#: order/models.py:404 order/models.py:1762
+#: order/models.py:417 order/models.py:1775
msgid "Date order was issued"
msgstr ""
-#: order/models.py:410 order/models.py:1768
+#: order/models.py:423 order/models.py:1781
msgid "Date order was completed"
msgstr ""
-#: order/models.py:445
+#: order/models.py:458
msgid "Part supplier must match PO supplier"
msgstr ""
-#: order/models.py:606
+#: order/models.py:619
msgid "Quantity must be a positive number"
msgstr ""
-#: order/models.py:780
+#: order/models.py:793
msgid "Company to which the items are being sold"
msgstr ""
-#: order/models.py:799 order/models.py:1755
+#: order/models.py:812 order/models.py:1768
msgid "Customer Reference "
msgstr ""
-#: order/models.py:799 order/models.py:1756
+#: order/models.py:812 order/models.py:1769
msgid "Customer order reference code"
msgstr ""
-#: order/models.py:801 order/models.py:1408
-#: templates/js/translated/sales_order.js:831
-#: templates/js/translated/sales_order.js:1012
+#: order/models.py:814 order/models.py:1421
+#: templates/js/translated/sales_order.js:843
+#: templates/js/translated/sales_order.js:1024
msgid "Shipment Date"
msgstr ""
-#: order/models.py:808
+#: order/models.py:821
msgid "shipped by"
msgstr ""
-#: order/models.py:857
+#: order/models.py:870
msgid "Order cannot be completed as no parts have been assigned"
msgstr ""
-#: order/models.py:861
+#: order/models.py:874
msgid "Only an open order can be marked as complete"
msgstr ""
-#: order/models.py:864 templates/js/translated/sales_order.js:491
+#: order/models.py:877 templates/js/translated/sales_order.js:503
msgid "Order cannot be completed as there are incomplete shipments"
msgstr ""
-#: order/models.py:867
+#: order/models.py:880
msgid "Order cannot be completed as there are incomplete line items"
msgstr ""
-#: order/models.py:1074
+#: order/models.py:1087
msgid "Item quantity"
msgstr ""
-#: order/models.py:1087
+#: order/models.py:1100
msgid "Line item reference"
msgstr ""
-#: order/models.py:1089
+#: order/models.py:1102
msgid "Line item notes"
msgstr ""
-#: order/models.py:1100
+#: order/models.py:1113
msgid "Target date for this line item (leave blank to use the target date from the order)"
msgstr ""
-#: order/models.py:1118
+#: order/models.py:1131
msgid "Line item description (optional)"
msgstr ""
-#: order/models.py:1123
+#: order/models.py:1136
msgid "Context"
msgstr ""
-#: order/models.py:1124
+#: order/models.py:1137
msgid "Additional context for this line"
msgstr ""
-#: order/models.py:1133
+#: order/models.py:1146
msgid "Unit price"
msgstr ""
-#: order/models.py:1163
+#: order/models.py:1176
msgid "Supplier part must match supplier"
msgstr ""
-#: order/models.py:1171
+#: order/models.py:1184
msgid "deleted"
msgstr ""
-#: order/models.py:1177 order/models.py:1262 order/models.py:1303
-#: order/models.py:1402 order/models.py:1551 order/models.py:1908
-#: order/models.py:1955 templates/js/translated/sales_order.js:1474
+#: order/models.py:1190 order/models.py:1275 order/models.py:1316
+#: order/models.py:1415 order/models.py:1564 order/models.py:1921
+#: order/models.py:1968 templates/js/translated/sales_order.js:1486
msgid "Order"
msgstr ""
-#: order/models.py:1196
+#: order/models.py:1209
msgid "Supplier part"
msgstr ""
-#: order/models.py:1203 order/templates/order/order_base.html:200
-#: templates/js/translated/part.js:1841 templates/js/translated/part.js:1872
-#: templates/js/translated/purchase_order.js:1276
-#: templates/js/translated/purchase_order.js:2137
-#: templates/js/translated/return_order.js:748
-#: templates/js/translated/table_filters.js:90
-#: templates/js/translated/table_filters.js:515
+#: order/models.py:1216 order/templates/order/order_base.html:196
+#: templates/js/translated/part.js:1840 templates/js/translated/part.js:1871
+#: templates/js/translated/purchase_order.js:1291
+#: templates/js/translated/purchase_order.js:2147
+#: templates/js/translated/return_order.js:760
+#: templates/js/translated/table_filters.js:96
+#: templates/js/translated/table_filters.js:537
msgid "Received"
msgstr ""
-#: order/models.py:1204
+#: order/models.py:1217
msgid "Number of items received"
msgstr ""
-#: order/models.py:1211 stock/models.py:823 stock/serializers.py:252
+#: order/models.py:1224 stock/models.py:823 stock/serializers.py:314
#: stock/templates/stock/item_base.html:184
-#: templates/js/translated/stock.js:2047
+#: templates/js/translated/stock.js:2204
msgid "Purchase Price"
msgstr ""
-#: order/models.py:1212
+#: order/models.py:1225
msgid "Unit purchase price"
msgstr ""
-#: order/models.py:1225
+#: order/models.py:1238
msgid "Where does the Purchaser want this item to be stored?"
msgstr ""
-#: order/models.py:1291
+#: order/models.py:1304
msgid "Virtual part cannot be assigned to a sales order"
msgstr ""
-#: order/models.py:1296
+#: order/models.py:1309
msgid "Only salable parts can be assigned to a sales order"
msgstr ""
-#: order/models.py:1322 part/templates/part/part_pricing.html:107
+#: order/models.py:1335 part/templates/part/part_pricing.html:107
#: part/templates/part/prices.html:128 templates/js/translated/pricing.js:943
msgid "Sale Price"
msgstr ""
-#: order/models.py:1323
+#: order/models.py:1336
msgid "Unit sale price"
msgstr ""
-#: order/models.py:1333
+#: order/models.py:1346
msgid "Shipped quantity"
msgstr ""
-#: order/models.py:1409
+#: order/models.py:1422
msgid "Date of shipment"
msgstr ""
-#: order/models.py:1414 templates/js/translated/sales_order.js:1024
+#: order/models.py:1427 templates/js/translated/sales_order.js:1036
msgid "Delivery Date"
msgstr ""
-#: order/models.py:1415
+#: order/models.py:1428
msgid "Date of delivery of shipment"
msgstr ""
-#: order/models.py:1422
+#: order/models.py:1435
msgid "Checked By"
msgstr ""
-#: order/models.py:1423
+#: order/models.py:1436
msgid "User who checked this shipment"
msgstr ""
-#: order/models.py:1430 order/models.py:1627 order/serializers.py:1248
-#: order/serializers.py:1376 templates/js/translated/model_renderers.js:415
+#: order/models.py:1443 order/models.py:1640 order/serializers.py:1254
+#: order/serializers.py:1382 templates/js/translated/model_renderers.js:429
msgid "Shipment"
msgstr ""
-#: order/models.py:1431
+#: order/models.py:1444
msgid "Shipment number"
msgstr ""
-#: order/models.py:1439
+#: order/models.py:1452
msgid "Tracking Number"
msgstr ""
-#: order/models.py:1440
+#: order/models.py:1453
msgid "Shipment tracking information"
msgstr ""
-#: order/models.py:1447
+#: order/models.py:1460
msgid "Invoice Number"
msgstr ""
-#: order/models.py:1448
+#: order/models.py:1461
msgid "Reference number for associated invoice"
msgstr ""
-#: order/models.py:1470
+#: order/models.py:1483
msgid "Shipment has already been sent"
msgstr ""
-#: order/models.py:1473
+#: order/models.py:1486
msgid "Shipment has no allocated stock items"
msgstr ""
-#: order/models.py:1586 order/models.py:1588
+#: order/models.py:1599 order/models.py:1601
msgid "Stock item has not been assigned"
msgstr ""
-#: order/models.py:1592
+#: order/models.py:1605
msgid "Cannot allocate stock item to a line with a different part"
msgstr ""
-#: order/models.py:1594
+#: order/models.py:1607
msgid "Cannot allocate stock to a line without a part"
msgstr ""
-#: order/models.py:1597
+#: order/models.py:1610
msgid "Allocation quantity cannot exceed stock quantity"
msgstr ""
-#: order/models.py:1607 order/serializers.py:1110
+#: order/models.py:1620 order/serializers.py:1116
msgid "Quantity must be 1 for serialized stock item"
msgstr ""
-#: order/models.py:1610
+#: order/models.py:1623
msgid "Sales order does not match shipment"
msgstr ""
-#: order/models.py:1611
+#: order/models.py:1624
msgid "Shipment does not match sales order"
msgstr ""
-#: order/models.py:1619
+#: order/models.py:1632
msgid "Line"
msgstr ""
-#: order/models.py:1628
+#: order/models.py:1641
msgid "Sales order shipment reference"
msgstr ""
-#: order/models.py:1641 order/models.py:1916
-#: templates/js/translated/return_order.js:706
+#: order/models.py:1654 order/models.py:1929
+#: templates/js/translated/return_order.js:718
msgid "Item"
msgstr ""
-#: order/models.py:1642
+#: order/models.py:1655
msgid "Select stock item to allocate"
msgstr ""
-#: order/models.py:1645
+#: order/models.py:1658
msgid "Enter stock allocation quantity"
msgstr ""
-#: order/models.py:1725
+#: order/models.py:1738
msgid "Return Order reference"
msgstr ""
-#: order/models.py:1739
+#: order/models.py:1752
msgid "Company from which items are being returned"
msgstr ""
-#: order/models.py:1750
+#: order/models.py:1763
msgid "Return order status"
msgstr ""
-#: order/models.py:1901
+#: order/models.py:1914
msgid "Only serialized items can be assigned to a Return Order"
msgstr ""
-#: order/models.py:1917
+#: order/models.py:1930
msgid "Select item to return from customer"
msgstr ""
-#: order/models.py:1922
+#: order/models.py:1935
msgid "Received Date"
msgstr ""
-#: order/models.py:1923
+#: order/models.py:1936
msgid "The date this this return item was received"
msgstr ""
-#: order/models.py:1934 templates/js/translated/return_order.js:717
-#: templates/js/translated/table_filters.js:93
+#: order/models.py:1947 templates/js/translated/return_order.js:729
+#: templates/js/translated/table_filters.js:99
msgid "Outcome"
msgstr ""
-#: order/models.py:1934
+#: order/models.py:1947
msgid "Outcome for this line item"
msgstr ""
-#: order/models.py:1940
+#: order/models.py:1953
msgid "Cost associated with return or repair for this line item"
msgstr ""
-#: order/serializers.py:247
+#: order/serializers.py:253
msgid "Order cannot be cancelled"
msgstr ""
-#: order/serializers.py:262 order/serializers.py:1128
+#: order/serializers.py:268 order/serializers.py:1134
msgid "Allow order to be closed with incomplete line items"
msgstr ""
-#: order/serializers.py:273 order/serializers.py:1139
+#: order/serializers.py:279 order/serializers.py:1145
msgid "Order has incomplete line items"
msgstr ""
-#: order/serializers.py:386
+#: order/serializers.py:392
msgid "Order is not open"
msgstr ""
-#: order/serializers.py:404
+#: order/serializers.py:410
msgid "Purchase price currency"
msgstr ""
-#: order/serializers.py:422
+#: order/serializers.py:428
msgid "Supplier part must be specified"
msgstr ""
-#: order/serializers.py:427
+#: order/serializers.py:433
msgid "Purchase order must be specified"
msgstr ""
-#: order/serializers.py:433
+#: order/serializers.py:439
msgid "Supplier must match purchase order"
msgstr ""
-#: order/serializers.py:434
+#: order/serializers.py:440
msgid "Purchase order must match supplier"
msgstr ""
-#: order/serializers.py:472 order/serializers.py:1216
+#: order/serializers.py:478 order/serializers.py:1222
msgid "Line Item"
msgstr ""
-#: order/serializers.py:478
+#: order/serializers.py:484
msgid "Line item does not match purchase order"
msgstr ""
-#: order/serializers.py:488 order/serializers.py:607 order/serializers.py:1589
+#: order/serializers.py:494 order/serializers.py:613 order/serializers.py:1595
msgid "Select destination location for received items"
msgstr ""
-#: order/serializers.py:507 templates/js/translated/purchase_order.js:1100
+#: order/serializers.py:513 templates/js/translated/purchase_order.js:1115
msgid "Enter batch code for incoming stock items"
msgstr ""
-#: order/serializers.py:515 templates/js/translated/purchase_order.js:1124
+#: order/serializers.py:521 templates/js/translated/purchase_order.js:1139
msgid "Enter serial numbers for incoming stock items"
msgstr ""
-#: order/serializers.py:528 templates/js/translated/barcode.js:52
+#: order/serializers.py:534 templates/js/translated/barcode.js:52
msgid "Barcode"
msgstr ""
-#: order/serializers.py:529
+#: order/serializers.py:535
msgid "Scanned barcode"
msgstr ""
-#: order/serializers.py:545
+#: order/serializers.py:551
msgid "Barcode is already in use"
msgstr ""
-#: order/serializers.py:569
+#: order/serializers.py:575
msgid "An integer quantity must be provided for trackable parts"
msgstr ""
-#: order/serializers.py:623 order/serializers.py:1604
+#: order/serializers.py:629 order/serializers.py:1610
msgid "Line items must be provided"
msgstr ""
-#: order/serializers.py:640
+#: order/serializers.py:646
msgid "Destination location must be specified"
msgstr ""
-#: order/serializers.py:651
+#: order/serializers.py:657
msgid "Supplied barcode values must be unique"
msgstr ""
-#: order/serializers.py:950
+#: order/serializers.py:956
msgid "Sale price currency"
msgstr ""
-#: order/serializers.py:1007
+#: order/serializers.py:1013
msgid "No shipment details provided"
msgstr ""
-#: order/serializers.py:1071 order/serializers.py:1225
+#: order/serializers.py:1077 order/serializers.py:1231
msgid "Line item is not associated with this order"
msgstr ""
-#: order/serializers.py:1093
+#: order/serializers.py:1099
msgid "Quantity must be positive"
msgstr ""
-#: order/serializers.py:1238
+#: order/serializers.py:1244
msgid "Enter serial numbers to allocate"
msgstr ""
-#: order/serializers.py:1260 order/serializers.py:1384
+#: order/serializers.py:1266 order/serializers.py:1390
msgid "Shipment has already been shipped"
msgstr ""
-#: order/serializers.py:1263 order/serializers.py:1387
+#: order/serializers.py:1269 order/serializers.py:1393
msgid "Shipment is not associated with this order"
msgstr ""
-#: order/serializers.py:1317
+#: order/serializers.py:1323
msgid "No match found for the following serial numbers"
msgstr ""
-#: order/serializers.py:1327
+#: order/serializers.py:1333
msgid "The following serial numbers are already allocated"
msgstr ""
-#: order/serializers.py:1555
+#: order/serializers.py:1561
msgid "Return order line item"
msgstr ""
-#: order/serializers.py:1562
+#: order/serializers.py:1568
msgid "Line item does not match return order"
msgstr ""
-#: order/serializers.py:1565
+#: order/serializers.py:1571
msgid "Line item has already been received"
msgstr ""
-#: order/serializers.py:1597
+#: order/serializers.py:1603
msgid "Items can only be received against orders which are in progress"
msgstr ""
-#: order/serializers.py:1678
+#: order/serializers.py:1684
msgid "Line price currency"
msgstr ""
@@ -4957,82 +5013,74 @@ msgid "Issue Order"
msgstr ""
#: order/templates/order/order_base.html:83
-msgid "Receive items"
-msgstr ""
-
-#: order/templates/order/order_base.html:85
-msgid "Receive Items"
-msgstr ""
-
-#: order/templates/order/order_base.html:87
#: order/templates/order/return_order_base.html:87
msgid "Mark order as complete"
msgstr ""
-#: order/templates/order/order_base.html:88
+#: order/templates/order/order_base.html:84
#: order/templates/order/return_order_base.html:88
#: order/templates/order/sales_order_base.html:94
msgid "Complete Order"
msgstr ""
-#: order/templates/order/order_base.html:95
+#: order/templates/order/order_base.html:91
msgid "Supplier part thumbnail"
msgstr ""
-#: order/templates/order/order_base.html:110
+#: order/templates/order/order_base.html:106
#: order/templates/order/return_order_base.html:102
#: order/templates/order/sales_order_base.html:107
msgid "Order Reference"
msgstr ""
-#: order/templates/order/order_base.html:115
+#: order/templates/order/order_base.html:111
#: order/templates/order/return_order_base.html:107
#: order/templates/order/sales_order_base.html:112
msgid "Order Description"
msgstr ""
-#: order/templates/order/order_base.html:122
+#: order/templates/order/order_base.html:118
#: order/templates/order/return_order_base.html:114
#: order/templates/order/sales_order_base.html:119
msgid "Order Status"
msgstr ""
-#: order/templates/order/order_base.html:145
+#: order/templates/order/order_base.html:141
msgid "No suppplier information available"
msgstr ""
-#: order/templates/order/order_base.html:158
+#: order/templates/order/order_base.html:154
#: order/templates/order/sales_order_base.html:158
msgid "Completed Line Items"
msgstr ""
-#: order/templates/order/order_base.html:164
+#: order/templates/order/order_base.html:160
#: order/templates/order/sales_order_base.html:164
#: order/templates/order/sales_order_base.html:174
msgid "Incomplete"
msgstr ""
-#: order/templates/order/order_base.html:183
+#: order/templates/order/order_base.html:179
#: order/templates/order/return_order_base.html:158
#: report/templates/report/inventree_build_order_base.html:121
msgid "Issued"
msgstr ""
-#: order/templates/order/order_base.html:221
+#: order/templates/order/order_base.html:224
msgid "Total cost"
msgstr ""
-#: order/templates/order/order_base.html:225
-#: order/templates/order/return_order_base.html:193
-#: order/templates/order/sales_order_base.html:233
+#: order/templates/order/order_base.html:228
+#: order/templates/order/return_order_base.html:200
+#: order/templates/order/sales_order_base.html:240
msgid "Total cost could not be calculated"
msgstr ""
-#: order/templates/order/order_base.html:331
+#: order/templates/order/order_base.html:318
msgid "Purchase Order QR Code"
msgstr ""
-#: order/templates/order/order_base.html:343
+#: order/templates/order/order_base.html:330
msgid "Link Barcode to Purchase Order"
msgstr ""
@@ -5085,13 +5133,13 @@ msgstr ""
#: part/templates/part/import_wizard/ajax_match_references.html:42
#: part/templates/part/import_wizard/match_fields.html:71
#: part/templates/part/import_wizard/match_references.html:49
-#: templates/js/translated/bom.js:132 templates/js/translated/build.js:512
-#: templates/js/translated/build.js:2348
-#: templates/js/translated/purchase_order.js:692
-#: templates/js/translated/purchase_order.js:1206
-#: templates/js/translated/return_order.js:494
-#: templates/js/translated/sales_order.js:1097
-#: templates/js/translated/stock.js:681 templates/js/translated/stock.js:850
+#: templates/js/translated/bom.js:133 templates/js/translated/build.js:518
+#: templates/js/translated/build.js:1555
+#: templates/js/translated/purchase_order.js:703
+#: templates/js/translated/purchase_order.js:1221
+#: templates/js/translated/return_order.js:506
+#: templates/js/translated/sales_order.js:1109
+#: templates/js/translated/stock.js:680 templates/js/translated/stock.js:849
#: templates/patterns/wizard/match_fields.html:70
msgid "Remove row"
msgstr ""
@@ -5152,9 +5200,9 @@ msgstr ""
#: order/templates/order/purchase_order_detail.html:27
#: order/templates/order/return_order_detail.html:24
#: order/templates/order/sales_order_detail.html:24
-#: templates/js/translated/purchase_order.js:419
-#: templates/js/translated/return_order.js:447
-#: templates/js/translated/sales_order.js:222
+#: templates/js/translated/purchase_order.js:430
+#: templates/js/translated/return_order.js:459
+#: templates/js/translated/sales_order.js:234
msgid "Add Line Item"
msgstr ""
@@ -5165,30 +5213,25 @@ msgstr ""
msgid "Receive Line Items"
msgstr ""
-#: order/templates/order/purchase_order_detail.html:49
#: order/templates/order/purchase_order_detail.html:50
-msgid "Delete Line Items"
-msgstr ""
-
-#: order/templates/order/purchase_order_detail.html:66
-#: order/templates/order/return_order_detail.html:47
-#: order/templates/order/sales_order_detail.html:43
+#: order/templates/order/return_order_detail.html:45
+#: order/templates/order/sales_order_detail.html:41
msgid "Extra Lines"
msgstr ""
-#: order/templates/order/purchase_order_detail.html:72
-#: order/templates/order/return_order_detail.html:53
-#: order/templates/order/sales_order_detail.html:49
+#: order/templates/order/purchase_order_detail.html:56
+#: order/templates/order/return_order_detail.html:51
+#: order/templates/order/sales_order_detail.html:47
msgid "Add Extra Line"
msgstr ""
-#: order/templates/order/purchase_order_detail.html:92
+#: order/templates/order/purchase_order_detail.html:74
msgid "Received Items"
msgstr ""
-#: order/templates/order/purchase_order_detail.html:117
-#: order/templates/order/return_order_detail.html:89
-#: order/templates/order/sales_order_detail.html:149
+#: order/templates/order/purchase_order_detail.html:99
+#: order/templates/order/return_order_detail.html:85
+#: order/templates/order/sales_order_detail.html:139
msgid "Order Notes"
msgstr ""
@@ -5208,29 +5251,29 @@ msgstr ""
#: order/templates/order/return_order_base.html:139
#: order/templates/order/sales_order_base.html:152
-#: templates/js/translated/return_order.js:297
-#: templates/js/translated/sales_order.js:785
+#: templates/js/translated/return_order.js:309
+#: templates/js/translated/sales_order.js:797
msgid "Customer Reference"
msgstr ""
-#: order/templates/order/return_order_base.html:189
-#: order/templates/order/sales_order_base.html:229
+#: order/templates/order/return_order_base.html:196
+#: order/templates/order/sales_order_base.html:236
#: part/templates/part/part_pricing.html:32
#: part/templates/part/part_pricing.html:58
#: part/templates/part/part_pricing.html:99
#: part/templates/part/part_pricing.html:114
-#: templates/js/translated/part.js:1046
-#: templates/js/translated/purchase_order.js:1712
-#: templates/js/translated/return_order.js:369
-#: templates/js/translated/sales_order.js:843
+#: templates/js/translated/part.js:1045
+#: templates/js/translated/purchase_order.js:1727
+#: templates/js/translated/return_order.js:381
+#: templates/js/translated/sales_order.js:855
msgid "Total Cost"
msgstr ""
-#: order/templates/order/return_order_base.html:257
+#: order/templates/order/return_order_base.html:264
msgid "Return Order QR Code"
msgstr ""
-#: order/templates/order/return_order_base.html:269
+#: order/templates/order/return_order_base.html:276
msgid "Link Barcode to Return Order"
msgstr ""
@@ -5248,7 +5291,7 @@ msgid "Ship Items"
msgstr ""
#: order/templates/order/sales_order_base.html:93
-#: templates/js/translated/sales_order.js:469
+#: templates/js/translated/sales_order.js:481
msgid "Complete Sales Order"
msgstr ""
@@ -5257,16 +5300,16 @@ msgid "This Sales Order has not been fully allocated"
msgstr ""
#: order/templates/order/sales_order_base.html:170
-#: order/templates/order/sales_order_detail.html:105
+#: order/templates/order/sales_order_detail.html:99
#: order/templates/order/so_sidebar.html:11
msgid "Completed Shipments"
msgstr ""
-#: order/templates/order/sales_order_base.html:306
+#: order/templates/order/sales_order_base.html:313
msgid "Sales Order QR Code"
msgstr ""
-#: order/templates/order/sales_order_base.html:318
+#: order/templates/order/sales_order_base.html:325
msgid "Link Barcode to Sales Order"
msgstr ""
@@ -5274,18 +5317,17 @@ msgstr ""
msgid "Sales Order Items"
msgstr ""
-#: order/templates/order/sales_order_detail.html:71
-#: order/templates/order/so_sidebar.html:8 templates/InvenTree/index.html:332
+#: order/templates/order/sales_order_detail.html:67
+#: order/templates/order/so_sidebar.html:8 templates/InvenTree/index.html:284
msgid "Pending Shipments"
msgstr ""
-#: order/templates/order/sales_order_detail.html:75
-#: templates/attachment_table.html:6 templates/js/translated/bom.js:1236
-#: templates/js/translated/build.js:2249
+#: order/templates/order/sales_order_detail.html:71
+#: templates/js/translated/bom.js:1256 templates/js/translated/filters.js:297
msgid "Actions"
msgstr ""
-#: order/templates/order/sales_order_detail.html:84
+#: order/templates/order/sales_order_detail.html:80
msgid "New Shipment"
msgstr ""
@@ -5311,12 +5353,12 @@ msgstr ""
msgid "Updated {part} unit-price to {price} and quantity to {qty}"
msgstr ""
-#: part/admin.py:33 part/admin.py:273 part/models.py:3667 part/tasks.py:288
+#: part/admin.py:33 part/admin.py:273 part/models.py:3716 part/tasks.py:288
#: stock/admin.py:101
msgid "Part ID"
msgstr ""
-#: part/admin.py:34 part/admin.py:275 part/models.py:3671 part/tasks.py:289
+#: part/admin.py:34 part/admin.py:275 part/models.py:3720 part/tasks.py:289
#: stock/admin.py:102
msgid "Part Name"
msgstr ""
@@ -5325,19 +5367,19 @@ msgstr ""
msgid "Part Description"
msgstr ""
-#: part/admin.py:36 part/models.py:889 part/templates/part/part_base.html:271
-#: templates/js/translated/part.js:1200 templates/js/translated/part.js:2233
-#: templates/js/translated/stock.js:1795
+#: part/admin.py:36 part/models.py:890 part/templates/part/part_base.html:271
+#: templates/js/translated/part.js:1199 templates/js/translated/part.js:2309
+#: templates/js/translated/stock.js:1952
msgid "IPN"
msgstr ""
-#: part/admin.py:37 part/models.py:896 part/templates/part/part_base.html:279
-#: report/models.py:179 templates/js/translated/part.js:1205
-#: templates/js/translated/part.js:2239
+#: part/admin.py:37 part/models.py:897 part/templates/part/part_base.html:279
+#: report/models.py:179 templates/js/translated/part.js:1204
+#: templates/js/translated/part.js:2315
msgid "Revision"
msgstr ""
-#: part/admin.py:38 part/admin.py:198 part/models.py:875
+#: part/admin.py:38 part/admin.py:198 part/models.py:876
#: part/templates/part/category.html:93 part/templates/part/part_base.html:300
msgid "Keywords"
msgstr ""
@@ -5358,24 +5400,24 @@ msgstr ""
msgid "Default Supplier ID"
msgstr ""
-#: part/admin.py:46 part/models.py:864 part/templates/part/part_base.html:179
+#: part/admin.py:46 part/models.py:865 part/templates/part/part_base.html:179
msgid "Variant Of"
msgstr ""
-#: part/admin.py:47 part/models.py:980 part/templates/part/part_base.html:205
+#: part/admin.py:47 part/models.py:981 part/templates/part/part_base.html:205
msgid "Minimum Stock"
msgstr ""
#: part/admin.py:61 part/templates/part/part_base.html:199
-#: templates/js/translated/company.js:1299
-#: templates/js/translated/table_filters.js:301
+#: templates/js/translated/company.js:1720
+#: templates/js/translated/table_filters.js:307
msgid "In Stock"
msgstr ""
#: part/admin.py:62 part/bom.py:178 part/templates/part/part_base.html:212
-#: templates/js/translated/bom.js:1167 templates/js/translated/build.js:2191
-#: templates/js/translated/part.js:687 templates/js/translated/part.js:2123
-#: templates/js/translated/table_filters.js:140
+#: templates/js/translated/bom.js:1187 templates/js/translated/build.js:2541
+#: templates/js/translated/part.js:686 templates/js/translated/part.js:2122
+#: templates/js/translated/table_filters.js:146
msgid "On Order"
msgstr ""
@@ -5383,23 +5425,16 @@ msgstr ""
msgid "Used In"
msgstr ""
-#: part/admin.py:64 templates/js/translated/build.js:2203
-#: templates/js/translated/build.js:2465 templates/js/translated/build.js:3052
-#: templates/js/translated/sales_order.js:1906
-#: templates/js/translated/table_filters.js:488
-msgid "Allocated"
-msgstr ""
-
#: part/admin.py:65 part/templates/part/part_base.html:243 stock/admin.py:124
-#: templates/js/translated/part.js:692 templates/js/translated/part.js:2127
+#: templates/js/translated/part.js:691 templates/js/translated/part.js:2126
msgid "Building"
msgstr ""
-#: part/admin.py:66 part/models.py:2930 templates/js/translated/part.js:943
+#: part/admin.py:66 part/models.py:2964 templates/js/translated/part.js:942
msgid "Minimum Cost"
msgstr ""
-#: part/admin.py:67 part/models.py:2936 templates/js/translated/part.js:953
+#: part/admin.py:67 part/models.py:2970 templates/js/translated/part.js:952
msgid "Maximum Cost"
msgstr ""
@@ -5416,13 +5451,13 @@ msgstr ""
msgid "Category Path"
msgstr ""
-#: part/admin.py:202 part/models.py:392 part/templates/part/cat_link.html:3
-#: part/templates/part/category.html:23 part/templates/part/category.html:140
-#: part/templates/part/category.html:160
+#: part/admin.py:202 part/models.py:393 part/serializers.py:307
+#: part/templates/part/cat_link.html:3 part/templates/part/category.html:23
+#: part/templates/part/category.html:140 part/templates/part/category.html:160
#: part/templates/part/category_sidebar.html:9
-#: templates/InvenTree/index.html:86 templates/InvenTree/search.html:84
+#: templates/InvenTree/index.html:36 templates/InvenTree/search.html:84
#: templates/InvenTree/settings/sidebar.html:45
-#: templates/js/translated/part.js:2754 templates/js/translated/search.js:172
+#: templates/js/translated/part.js:2739 templates/js/translated/search.js:130
#: templates/navbar.html:24 users/models.py:38
msgid "Parts"
msgstr ""
@@ -5439,7 +5474,7 @@ msgstr ""
msgid "Parent IPN"
msgstr ""
-#: part/admin.py:274 part/models.py:3675
+#: part/admin.py:274 part/models.py:3724
msgid "Part IPN"
msgstr ""
@@ -5453,35 +5488,35 @@ msgstr ""
msgid "Maximum Price"
msgstr ""
-#: part/api.py:498
+#: part/api.py:501
msgid "Incoming Purchase Order"
msgstr ""
-#: part/api.py:518
+#: part/api.py:521
msgid "Outgoing Sales Order"
msgstr ""
-#: part/api.py:536
+#: part/api.py:539
msgid "Stock produced by Build Order"
msgstr ""
-#: part/api.py:622
+#: part/api.py:625
msgid "Stock required for Build Order"
msgstr ""
-#: part/api.py:770
+#: part/api.py:773
msgid "Valid"
msgstr ""
-#: part/api.py:771
+#: part/api.py:774
msgid "Validate entire Bill of Materials"
msgstr ""
-#: part/api.py:777
+#: part/api.py:780
msgid "This option must be selected"
msgstr ""
-#: part/bom.py:175 part/models.py:127 part/models.py:923
+#: part/bom.py:175 part/models.py:128 part/models.py:924
#: part/templates/part/category.html:115 part/templates/part/part_base.html:369
msgid "Default Location"
msgstr ""
@@ -5491,7 +5526,7 @@ msgid "Total Stock"
msgstr ""
#: part/bom.py:177 part/templates/part/part_base.html:194
-#: templates/js/translated/sales_order.js:1873
+#: templates/js/translated/sales_order.js:1885
msgid "Available Stock"
msgstr ""
@@ -5499,916 +5534,913 @@ msgstr ""
msgid "Input quantity for price calculation"
msgstr ""
-#: part/models.py:75 part/models.py:3616 part/templates/part/category.html:16
+#: part/models.py:76 part/models.py:3665 part/templates/part/category.html:16
#: part/templates/part/part_app_base.html:10
msgid "Part Category"
msgstr ""
-#: part/models.py:76 part/templates/part/category.html:135
-#: templates/InvenTree/search.html:97 templates/js/translated/search.js:200
+#: part/models.py:77 part/templates/part/category.html:135
+#: templates/InvenTree/search.html:97 templates/js/translated/search.js:158
#: users/models.py:37
msgid "Part Categories"
msgstr ""
-#: part/models.py:128
+#: part/models.py:129
msgid "Default location for parts in this category"
msgstr ""
-#: part/models.py:133 stock/models.py:124 templates/js/translated/stock.js:2520
-#: templates/js/translated/table_filters.js:209
-#: templates/js/translated/table_filters.js:229
+#: part/models.py:134 stock/models.py:124 templates/js/translated/stock.js:2651
+#: templates/js/translated/table_filters.js:215
+#: templates/js/translated/table_filters.js:235
msgid "Structural"
msgstr ""
-#: part/models.py:135
+#: part/models.py:136
msgid "Parts may not be directly assigned to a structural category, but may be assigned to child categories."
msgstr ""
-#: part/models.py:139
+#: part/models.py:140
msgid "Default keywords"
msgstr ""
-#: part/models.py:139
+#: part/models.py:140
msgid "Default keywords for parts in this category"
msgstr ""
-#: part/models.py:144 stock/models.py:113
+#: part/models.py:145 stock/models.py:113
msgid "Icon"
msgstr ""
-#: part/models.py:145 stock/models.py:114
+#: part/models.py:146 stock/models.py:114
msgid "Icon (optional)"
msgstr ""
-#: part/models.py:164
+#: part/models.py:165
msgid "You cannot make this part category structural because some parts are already assigned to it!"
msgstr ""
-#: part/models.py:475
+#: part/models.py:476
msgid "Invalid choice for parent part"
msgstr ""
-#: part/models.py:517 part/models.py:529
+#: part/models.py:518 part/models.py:530
#, python-brace-format
msgid "Part '{p1}' is used in BOM for '{p2}' (recursive)"
msgstr ""
-#: part/models.py:601
+#: part/models.py:602
#, python-brace-format
msgid "IPN must match regex pattern {pat}"
msgstr ""
-#: part/models.py:672
+#: part/models.py:673
msgid "Stock item with this serial number already exists"
msgstr ""
-#: part/models.py:803
+#: part/models.py:804
msgid "Duplicate IPN not allowed in part settings"
msgstr ""
-#: part/models.py:808
+#: part/models.py:809
msgid "Part with this Name, IPN and Revision already exists."
msgstr ""
-#: part/models.py:822
+#: part/models.py:823
msgid "Parts cannot be assigned to structural part categories!"
msgstr ""
-#: part/models.py:846 part/models.py:3672
+#: part/models.py:847 part/models.py:3721
msgid "Part name"
msgstr ""
-#: part/models.py:852
+#: part/models.py:853
msgid "Is Template"
msgstr ""
-#: part/models.py:853
+#: part/models.py:854
msgid "Is this part a template part?"
msgstr ""
-#: part/models.py:863
+#: part/models.py:864
msgid "Is this part a variant of another part?"
msgstr ""
-#: part/models.py:870
+#: part/models.py:871
msgid "Part description (optional)"
msgstr ""
-#: part/models.py:876
+#: part/models.py:877
msgid "Part keywords to improve visibility in search results"
msgstr ""
-#: part/models.py:883 part/models.py:3198 part/models.py:3615
-#: part/serializers.py:848 part/templates/part/part_base.html:262
+#: part/models.py:884 part/models.py:3232 part/models.py:3664
+#: part/serializers.py:320 part/serializers.py:910
+#: part/templates/part/part_base.html:262
#: templates/InvenTree/settings/settings_staff_js.html:204
#: templates/js/translated/notification.js:59
-#: templates/js/translated/part.js:2269 templates/js/translated/part.js:2481
+#: templates/js/translated/part.js:2345
msgid "Category"
msgstr ""
-#: part/models.py:884
+#: part/models.py:885
msgid "Part category"
msgstr ""
-#: part/models.py:890
+#: part/models.py:891
msgid "Internal Part Number"
msgstr ""
-#: part/models.py:895
+#: part/models.py:896
msgid "Part revision or version number"
msgstr ""
-#: part/models.py:921
+#: part/models.py:922
msgid "Where is this item normally stored?"
msgstr ""
-#: part/models.py:966 part/templates/part/part_base.html:378
+#: part/models.py:967 part/templates/part/part_base.html:378
msgid "Default Supplier"
msgstr ""
-#: part/models.py:967
+#: part/models.py:968
msgid "Default supplier part"
msgstr ""
-#: part/models.py:974
+#: part/models.py:975
msgid "Default Expiry"
msgstr ""
-#: part/models.py:975
+#: part/models.py:976
msgid "Expiry time (in days) for stock items of this part"
msgstr ""
-#: part/models.py:981
+#: part/models.py:982
msgid "Minimum allowed stock level"
msgstr ""
-#: part/models.py:988
+#: part/models.py:989
msgid "Units of measure for this part"
msgstr ""
-#: part/models.py:997
+#: part/models.py:998
msgid "Can this part be built from other parts?"
msgstr ""
-#: part/models.py:1003
+#: part/models.py:1004
msgid "Can this part be used to build other parts?"
msgstr ""
-#: part/models.py:1009
+#: part/models.py:1010
msgid "Does this part have tracking for unique items?"
msgstr ""
-#: part/models.py:1014
+#: part/models.py:1015
msgid "Can this part be purchased from external suppliers?"
msgstr ""
-#: part/models.py:1019
+#: part/models.py:1020
msgid "Can this part be sold to customers?"
msgstr ""
-#: part/models.py:1024
+#: part/models.py:1025
msgid "Is this part active?"
msgstr ""
-#: part/models.py:1029
+#: part/models.py:1030
msgid "Is this a virtual part, such as a software product or license?"
msgstr ""
-#: part/models.py:1031
+#: part/models.py:1032
msgid "BOM checksum"
msgstr ""
-#: part/models.py:1031
+#: part/models.py:1032
msgid "Stored BOM checksum"
msgstr ""
-#: part/models.py:1034
+#: part/models.py:1035
msgid "BOM checked by"
msgstr ""
-#: part/models.py:1036
+#: part/models.py:1037
msgid "BOM checked date"
msgstr ""
-#: part/models.py:1040
+#: part/models.py:1041
msgid "Creation User"
msgstr ""
-#: part/models.py:1042
+#: part/models.py:1043
msgid "User responsible for this part"
msgstr ""
-#: part/models.py:1046 part/templates/part/part_base.html:341
+#: part/models.py:1047 part/templates/part/part_base.html:341
#: stock/templates/stock/item_base.html:447
-#: templates/js/translated/part.js:2331
+#: templates/js/translated/part.js:2407
msgid "Last Stocktake"
msgstr ""
-#: part/models.py:1921
+#: part/models.py:1923
msgid "Sell multiple"
msgstr ""
-#: part/models.py:2853
+#: part/models.py:2887
msgid "Currency used to cache pricing calculations"
msgstr ""
-#: part/models.py:2870
+#: part/models.py:2904
msgid "Minimum BOM Cost"
msgstr ""
-#: part/models.py:2871
+#: part/models.py:2905
msgid "Minimum cost of component parts"
msgstr ""
-#: part/models.py:2876
+#: part/models.py:2910
msgid "Maximum BOM Cost"
msgstr ""
-#: part/models.py:2877
+#: part/models.py:2911
msgid "Maximum cost of component parts"
msgstr ""
-#: part/models.py:2882
+#: part/models.py:2916
msgid "Minimum Purchase Cost"
msgstr ""
-#: part/models.py:2883
+#: part/models.py:2917
msgid "Minimum historical purchase cost"
msgstr ""
-#: part/models.py:2888
+#: part/models.py:2922
msgid "Maximum Purchase Cost"
msgstr ""
-#: part/models.py:2889
+#: part/models.py:2923
msgid "Maximum historical purchase cost"
msgstr ""
-#: part/models.py:2894
+#: part/models.py:2928
msgid "Minimum Internal Price"
msgstr ""
-#: part/models.py:2895
+#: part/models.py:2929
msgid "Minimum cost based on internal price breaks"
msgstr ""
-#: part/models.py:2900
+#: part/models.py:2934
msgid "Maximum Internal Price"
msgstr ""
-#: part/models.py:2901
+#: part/models.py:2935
msgid "Maximum cost based on internal price breaks"
msgstr ""
-#: part/models.py:2906
+#: part/models.py:2940
msgid "Minimum Supplier Price"
msgstr ""
-#: part/models.py:2907
+#: part/models.py:2941
msgid "Minimum price of part from external suppliers"
msgstr ""
-#: part/models.py:2912
+#: part/models.py:2946
msgid "Maximum Supplier Price"
msgstr ""
-#: part/models.py:2913
+#: part/models.py:2947
msgid "Maximum price of part from external suppliers"
msgstr ""
-#: part/models.py:2918
+#: part/models.py:2952
msgid "Minimum Variant Cost"
msgstr ""
-#: part/models.py:2919
+#: part/models.py:2953
msgid "Calculated minimum cost of variant parts"
msgstr ""
-#: part/models.py:2924
+#: part/models.py:2958
msgid "Maximum Variant Cost"
msgstr ""
-#: part/models.py:2925
+#: part/models.py:2959
msgid "Calculated maximum cost of variant parts"
msgstr ""
-#: part/models.py:2931
+#: part/models.py:2965
msgid "Calculated overall minimum cost"
msgstr ""
-#: part/models.py:2937
+#: part/models.py:2971
msgid "Calculated overall maximum cost"
msgstr ""
-#: part/models.py:2942
+#: part/models.py:2976
msgid "Minimum Sale Price"
msgstr ""
-#: part/models.py:2943
+#: part/models.py:2977
msgid "Minimum sale price based on price breaks"
msgstr ""
-#: part/models.py:2948
+#: part/models.py:2982
msgid "Maximum Sale Price"
msgstr ""
-#: part/models.py:2949
+#: part/models.py:2983
msgid "Maximum sale price based on price breaks"
msgstr ""
-#: part/models.py:2954
+#: part/models.py:2988
msgid "Minimum Sale Cost"
msgstr ""
-#: part/models.py:2955
+#: part/models.py:2989
msgid "Minimum historical sale price"
msgstr ""
-#: part/models.py:2960
+#: part/models.py:2994
msgid "Maximum Sale Cost"
msgstr ""
-#: part/models.py:2961
+#: part/models.py:2995
msgid "Maximum historical sale price"
msgstr ""
-#: part/models.py:2980
+#: part/models.py:3014
msgid "Part for stocktake"
msgstr ""
-#: part/models.py:2985
+#: part/models.py:3019
msgid "Item Count"
msgstr ""
-#: part/models.py:2986
+#: part/models.py:3020
msgid "Number of individual stock entries at time of stocktake"
msgstr ""
-#: part/models.py:2993
+#: part/models.py:3027
msgid "Total available stock at time of stocktake"
msgstr ""
-#: part/models.py:2997 part/models.py:3080
+#: part/models.py:3031 part/models.py:3114
#: part/templates/part/part_scheduling.html:13
#: report/templates/report/inventree_test_report_base.html:106
#: templates/InvenTree/settings/plugin_settings.html:37
#: templates/InvenTree/settings/settings_staff_js.html:360
-#: templates/js/translated/part.js:1059 templates/js/translated/pricing.js:812
+#: templates/js/translated/part.js:1058 templates/js/translated/pricing.js:812
#: templates/js/translated/pricing.js:936
-#: templates/js/translated/purchase_order.js:1691
-#: templates/js/translated/stock.js:2558
+#: templates/js/translated/purchase_order.js:1706
+#: templates/js/translated/stock.js:2689
msgid "Date"
msgstr ""
-#: part/models.py:2998
+#: part/models.py:3032
msgid "Date stocktake was performed"
msgstr ""
-#: part/models.py:3006
+#: part/models.py:3040
msgid "Additional notes"
msgstr ""
-#: part/models.py:3014
+#: part/models.py:3048
msgid "User who performed this stocktake"
msgstr ""
-#: part/models.py:3019
+#: part/models.py:3053
msgid "Minimum Stock Cost"
msgstr ""
-#: part/models.py:3020
+#: part/models.py:3054
msgid "Estimated minimum cost of stock on hand"
msgstr ""
-#: part/models.py:3025
+#: part/models.py:3059
msgid "Maximum Stock Cost"
msgstr ""
-#: part/models.py:3026
+#: part/models.py:3060
msgid "Estimated maximum cost of stock on hand"
msgstr ""
-#: part/models.py:3087 templates/InvenTree/settings/settings_staff_js.html:349
+#: part/models.py:3121 templates/InvenTree/settings/settings_staff_js.html:349
msgid "Report"
msgstr ""
-#: part/models.py:3088
+#: part/models.py:3122
msgid "Stocktake report file (generated internally)"
msgstr ""
-#: part/models.py:3093 templates/InvenTree/settings/settings_staff_js.html:356
+#: part/models.py:3127 templates/InvenTree/settings/settings_staff_js.html:356
msgid "Part Count"
msgstr ""
-#: part/models.py:3094
+#: part/models.py:3128
msgid "Number of parts covered by stocktake"
msgstr ""
-#: part/models.py:3102
+#: part/models.py:3136
msgid "User who requested this stocktake report"
msgstr ""
-#: part/models.py:3238
+#: part/models.py:3272
msgid "Test templates can only be created for trackable parts"
msgstr ""
-#: part/models.py:3255
+#: part/models.py:3289
msgid "Test with this name already exists for this part"
msgstr ""
-#: part/models.py:3275 templates/js/translated/part.js:2821
+#: part/models.py:3309 templates/js/translated/part.js:2806
msgid "Test Name"
msgstr ""
-#: part/models.py:3276
+#: part/models.py:3310
msgid "Enter a name for the test"
msgstr ""
-#: part/models.py:3281
+#: part/models.py:3315
msgid "Test Description"
msgstr ""
-#: part/models.py:3282
+#: part/models.py:3316
msgid "Enter description for this test"
msgstr ""
-#: part/models.py:3287 templates/js/translated/part.js:2830
-#: templates/js/translated/table_filters.js:423
+#: part/models.py:3321 templates/js/translated/part.js:2815
+#: templates/js/translated/table_filters.js:429
msgid "Required"
msgstr ""
-#: part/models.py:3288
+#: part/models.py:3322
msgid "Is this test required to pass?"
msgstr ""
-#: part/models.py:3293 templates/js/translated/part.js:2838
+#: part/models.py:3327 templates/js/translated/part.js:2823
msgid "Requires Value"
msgstr ""
-#: part/models.py:3294
+#: part/models.py:3328
msgid "Does this test require a value when adding a test result?"
msgstr ""
-#: part/models.py:3299 templates/js/translated/part.js:2845
+#: part/models.py:3333 templates/js/translated/part.js:2830
msgid "Requires Attachment"
msgstr ""
-#: part/models.py:3300
+#: part/models.py:3334
msgid "Does this test require a file attachment when adding a test result?"
msgstr ""
-#: part/models.py:3346
+#: part/models.py:3380
msgid "Checkbox parameters cannot have units"
msgstr ""
-#: part/models.py:3351
+#: part/models.py:3385
msgid "Checkbox parameters cannot have choices"
msgstr ""
-#: part/models.py:3369
+#: part/models.py:3403
msgid "Choices must be unique"
msgstr ""
-#: part/models.py:3385
+#: part/models.py:3419
msgid "Parameter template name must be unique"
msgstr ""
-#: part/models.py:3401
+#: part/models.py:3435
msgid "Parameter Name"
msgstr ""
-#: part/models.py:3407
+#: part/models.py:3441
msgid "Physical units for this parameter"
msgstr ""
-#: part/models.py:3417
+#: part/models.py:3451
msgid "Parameter description"
msgstr ""
-#: part/models.py:3423 templates/js/translated/part.js:1600
-#: templates/js/translated/table_filters.js:734
+#: part/models.py:3457 templates/js/translated/part.js:1599
+#: templates/js/translated/table_filters.js:756
msgid "Checkbox"
msgstr ""
-#: part/models.py:3424
+#: part/models.py:3458
msgid "Is this parameter a checkbox?"
msgstr ""
-#: part/models.py:3429 templates/js/translated/part.js:1609
+#: part/models.py:3463 templates/js/translated/part.js:1608
msgid "Choices"
msgstr ""
-#: part/models.py:3430
+#: part/models.py:3464
msgid "Valid choices for this parameter (comma-separated)"
msgstr ""
-#: part/models.py:3511
+#: part/models.py:3545
msgid "Invalid choice for parameter value"
msgstr ""
-#: part/models.py:3555
+#: part/models.py:3589
msgid "Parent Part"
msgstr ""
-#: part/models.py:3560 part/models.py:3621 part/models.py:3622
+#: part/models.py:3594 part/models.py:3670 part/models.py:3671
#: templates/InvenTree/settings/settings_staff_js.html:199
msgid "Parameter Template"
msgstr ""
-#: part/models.py:3565
+#: part/models.py:3599
msgid "Data"
msgstr ""
-#: part/models.py:3565
+#: part/models.py:3599
msgid "Parameter Value"
msgstr ""
-#: part/models.py:3626 templates/InvenTree/settings/settings_staff_js.html:208
+#: part/models.py:3675 templates/InvenTree/settings/settings_staff_js.html:208
msgid "Default Value"
msgstr ""
-#: part/models.py:3627
+#: part/models.py:3676
msgid "Default Parameter Value"
msgstr ""
-#: part/models.py:3664
+#: part/models.py:3713
msgid "Part ID or part name"
msgstr ""
-#: part/models.py:3668
+#: part/models.py:3717
msgid "Unique part ID value"
msgstr ""
-#: part/models.py:3676
+#: part/models.py:3725
msgid "Part IPN value"
msgstr ""
-#: part/models.py:3679
+#: part/models.py:3728
msgid "Level"
msgstr ""
-#: part/models.py:3680
+#: part/models.py:3729
msgid "BOM level"
msgstr ""
-#: part/models.py:3764
+#: part/models.py:3735 part/models.py:4113
+msgid "BOM Item"
+msgstr ""
+
+#: part/models.py:3808
msgid "Select parent part"
msgstr ""
-#: part/models.py:3772
+#: part/models.py:3816
msgid "Sub part"
msgstr ""
-#: part/models.py:3773
+#: part/models.py:3817
msgid "Select part to be used in BOM"
msgstr ""
-#: part/models.py:3779
+#: part/models.py:3823
msgid "BOM quantity for this BOM item"
msgstr ""
-#: part/models.py:3783 part/templates/part/upload_bom.html:58
-#: templates/js/translated/bom.js:971 templates/js/translated/bom.js:998
-#: templates/js/translated/build.js:2113
-#: templates/js/translated/table_filters.js:156
-#: templates/js/translated/table_filters.js:185
-#: templates/js/translated/table_filters.js:500
-msgid "Optional"
-msgstr ""
-
-#: part/models.py:3784
+#: part/models.py:3828
msgid "This BOM item is optional"
msgstr ""
-#: part/models.py:3789 templates/js/translated/bom.js:967
-#: templates/js/translated/bom.js:1007 templates/js/translated/build.js:2104
-#: templates/js/translated/table_filters.js:160
-#: templates/js/translated/table_filters.js:496
-msgid "Consumable"
-msgstr ""
-
-#: part/models.py:3790
+#: part/models.py:3834
msgid "This BOM item is consumable (it is not tracked in build orders)"
msgstr ""
-#: part/models.py:3794 part/templates/part/upload_bom.html:55
+#: part/models.py:3838 part/templates/part/upload_bom.html:55
msgid "Overage"
msgstr ""
-#: part/models.py:3795
+#: part/models.py:3839
msgid "Estimated build wastage quantity (absolute or percentage)"
msgstr ""
-#: part/models.py:3798
+#: part/models.py:3842
msgid "BOM item reference"
msgstr ""
-#: part/models.py:3801
+#: part/models.py:3845
msgid "BOM item notes"
msgstr ""
-#: part/models.py:3805
+#: part/models.py:3849
msgid "Checksum"
msgstr ""
-#: part/models.py:3805
+#: part/models.py:3849
msgid "BOM line checksum"
msgstr ""
-#: part/models.py:3810 templates/js/translated/table_filters.js:144
+#: part/models.py:3854 templates/js/translated/table_filters.js:150
msgid "Validated"
msgstr ""
-#: part/models.py:3811
+#: part/models.py:3855
msgid "This BOM item has been validated"
msgstr ""
-#: part/models.py:3816 part/templates/part/upload_bom.html:57
-#: templates/js/translated/bom.js:1024
-#: templates/js/translated/table_filters.js:148
-#: templates/js/translated/table_filters.js:181
+#: part/models.py:3860 part/templates/part/upload_bom.html:57
+#: templates/js/translated/bom.js:1042
+#: templates/js/translated/table_filters.js:154
+#: templates/js/translated/table_filters.js:187
msgid "Gets inherited"
msgstr ""
-#: part/models.py:3817
+#: part/models.py:3861
msgid "This BOM item is inherited by BOMs for variant parts"
msgstr ""
-#: part/models.py:3822 part/templates/part/upload_bom.html:56
-#: templates/js/translated/bom.js:1016
+#: part/models.py:3866 part/templates/part/upload_bom.html:56
+#: templates/js/translated/bom.js:1034
msgid "Allow Variants"
msgstr ""
-#: part/models.py:3823
+#: part/models.py:3867
msgid "Stock items for variant parts can be used for this BOM item"
msgstr ""
-#: part/models.py:3909 stock/models.py:577
+#: part/models.py:3953 stock/models.py:577
msgid "Quantity must be integer value for trackable parts"
msgstr ""
-#: part/models.py:3918 part/models.py:3920
+#: part/models.py:3962 part/models.py:3964
msgid "Sub part must be specified"
msgstr ""
-#: part/models.py:4036
+#: part/models.py:4080
msgid "BOM Item Substitute"
msgstr ""
-#: part/models.py:4057
+#: part/models.py:4101
msgid "Substitute part cannot be the same as the master part"
msgstr ""
-#: part/models.py:4070
+#: part/models.py:4114
msgid "Parent BOM item"
msgstr ""
-#: part/models.py:4078
+#: part/models.py:4122
msgid "Substitute part"
msgstr ""
-#: part/models.py:4093
+#: part/models.py:4137
msgid "Part 1"
msgstr ""
-#: part/models.py:4097
+#: part/models.py:4141
msgid "Part 2"
msgstr ""
-#: part/models.py:4097
+#: part/models.py:4141
msgid "Select Related Part"
msgstr ""
-#: part/models.py:4115
+#: part/models.py:4159
msgid "Part relationship cannot be created between a part and itself"
msgstr ""
-#: part/models.py:4119
+#: part/models.py:4163
msgid "Duplicate relationship already exists"
msgstr ""
-#: part/serializers.py:152 part/serializers.py:175 stock/serializers.py:257
+#: part/serializers.py:152 part/serializers.py:175 stock/serializers.py:319
msgid "Purchase currency of this stock item"
msgstr ""
-#: part/serializers.py:302
+#: part/serializers.py:313
+msgid "No parts selected"
+msgstr ""
+
+#: part/serializers.py:321
+msgid "Select category"
+msgstr ""
+
+#: part/serializers.py:352
msgid "Original Part"
msgstr ""
-#: part/serializers.py:302
+#: part/serializers.py:352
msgid "Select original part to duplicate"
msgstr ""
-#: part/serializers.py:307
+#: part/serializers.py:357
msgid "Copy Image"
msgstr ""
-#: part/serializers.py:307
+#: part/serializers.py:357
msgid "Copy image from original part"
msgstr ""
-#: part/serializers.py:312 part/templates/part/detail.html:296
+#: part/serializers.py:362 part/templates/part/detail.html:277
msgid "Copy BOM"
msgstr ""
-#: part/serializers.py:312
+#: part/serializers.py:362
msgid "Copy bill of materials from original part"
msgstr ""
-#: part/serializers.py:317
+#: part/serializers.py:367
msgid "Copy Parameters"
msgstr ""
-#: part/serializers.py:317
+#: part/serializers.py:367
msgid "Copy parameter data from original part"
msgstr ""
-#: part/serializers.py:327
+#: part/serializers.py:377
msgid "Initial Stock Quantity"
msgstr ""
-#: part/serializers.py:327
+#: part/serializers.py:377
msgid "Specify initial stock quantity for this Part. If quantity is zero, no stock is added."
msgstr ""
-#: part/serializers.py:333
+#: part/serializers.py:383
msgid "Initial Stock Location"
msgstr ""
-#: part/serializers.py:333
+#: part/serializers.py:383
msgid "Specify initial stock location for this Part"
msgstr ""
-#: part/serializers.py:343
+#: part/serializers.py:393
msgid "Select supplier (or leave blank to skip)"
msgstr ""
-#: part/serializers.py:354
+#: part/serializers.py:404
msgid "Select manufacturer (or leave blank to skip)"
msgstr ""
-#: part/serializers.py:360
+#: part/serializers.py:410
msgid "Manufacturer part number"
msgstr ""
-#: part/serializers.py:367
+#: part/serializers.py:417
msgid "Selected company is not a valid supplier"
msgstr ""
-#: part/serializers.py:375
+#: part/serializers.py:425
msgid "Selected company is not a valid manufacturer"
msgstr ""
-#: part/serializers.py:387
+#: part/serializers.py:437
msgid "Manufacturer part matching this MPN already exists"
msgstr ""
-#: part/serializers.py:395
+#: part/serializers.py:445
msgid "Supplier part matching this SKU already exists"
msgstr ""
-#: part/serializers.py:620 part/templates/part/copy_part.html:9
-#: templates/js/translated/part.js:449
+#: part/serializers.py:682 part/templates/part/copy_part.html:9
+#: templates/js/translated/part.js:448
msgid "Duplicate Part"
msgstr ""
-#: part/serializers.py:620
+#: part/serializers.py:682
msgid "Copy initial data from another Part"
msgstr ""
-#: part/serializers.py:625 templates/js/translated/part.js:103
+#: part/serializers.py:687 templates/js/translated/part.js:102
msgid "Initial Stock"
msgstr ""
-#: part/serializers.py:625
+#: part/serializers.py:687
msgid "Create Part with initial stock quantity"
msgstr ""
-#: part/serializers.py:630
+#: part/serializers.py:692
msgid "Supplier Information"
msgstr ""
-#: part/serializers.py:630
+#: part/serializers.py:692
msgid "Add initial supplier information for this part"
msgstr ""
-#: part/serializers.py:636
+#: part/serializers.py:698
msgid "Copy Category Parameters"
msgstr ""
-#: part/serializers.py:637
+#: part/serializers.py:699
msgid "Copy parameter templates from selected part category"
msgstr ""
-#: part/serializers.py:842
+#: part/serializers.py:904
msgid "Limit stocktake report to a particular part, and any variant parts"
msgstr ""
-#: part/serializers.py:848
+#: part/serializers.py:910
msgid "Limit stocktake report to a particular part category, and any child categories"
msgstr ""
-#: part/serializers.py:854
+#: part/serializers.py:916
msgid "Limit stocktake report to a particular stock location, and any child locations"
msgstr ""
-#: part/serializers.py:859
+#: part/serializers.py:921
msgid "Generate Report"
msgstr ""
-#: part/serializers.py:860
+#: part/serializers.py:922
msgid "Generate report file containing calculated stocktake data"
msgstr ""
-#: part/serializers.py:865
+#: part/serializers.py:927
msgid "Update Parts"
msgstr ""
-#: part/serializers.py:866
+#: part/serializers.py:928
msgid "Update specified parts with calculated stocktake data"
msgstr ""
-#: part/serializers.py:874
+#: part/serializers.py:936
msgid "Stocktake functionality is not enabled"
msgstr ""
-#: part/serializers.py:963
+#: part/serializers.py:1025
msgid "Update"
msgstr ""
-#: part/serializers.py:964
+#: part/serializers.py:1026
msgid "Update pricing for this part"
msgstr ""
-#: part/serializers.py:1246
+#: part/serializers.py:1308
msgid "Select part to copy BOM from"
msgstr ""
-#: part/serializers.py:1254
+#: part/serializers.py:1316
msgid "Remove Existing Data"
msgstr ""
-#: part/serializers.py:1255
+#: part/serializers.py:1317
msgid "Remove existing BOM items before copying"
msgstr ""
-#: part/serializers.py:1260
+#: part/serializers.py:1322
msgid "Include Inherited"
msgstr ""
-#: part/serializers.py:1261
+#: part/serializers.py:1323
msgid "Include BOM items which are inherited from templated parts"
msgstr ""
-#: part/serializers.py:1266
+#: part/serializers.py:1328
msgid "Skip Invalid Rows"
msgstr ""
-#: part/serializers.py:1267
+#: part/serializers.py:1329
msgid "Enable this option to skip invalid rows"
msgstr ""
-#: part/serializers.py:1272
+#: part/serializers.py:1334
msgid "Copy Substitute Parts"
msgstr ""
-#: part/serializers.py:1273
+#: part/serializers.py:1335
msgid "Copy substitute parts when duplicate BOM items"
msgstr ""
-#: part/serializers.py:1313
+#: part/serializers.py:1375
msgid "Clear Existing BOM"
msgstr ""
-#: part/serializers.py:1314
+#: part/serializers.py:1376
msgid "Delete existing BOM items before uploading"
msgstr ""
-#: part/serializers.py:1344
+#: part/serializers.py:1406
msgid "No part column specified"
msgstr ""
-#: part/serializers.py:1387
+#: part/serializers.py:1449
msgid "Multiple matching parts found"
msgstr ""
-#: part/serializers.py:1390
+#: part/serializers.py:1452
msgid "No matching part found"
msgstr ""
-#: part/serializers.py:1393
+#: part/serializers.py:1455
msgid "Part is not designated as a component"
msgstr ""
-#: part/serializers.py:1402
+#: part/serializers.py:1464
msgid "Quantity not provided"
msgstr ""
-#: part/serializers.py:1410
+#: part/serializers.py:1472
msgid "Invalid quantity"
msgstr ""
-#: part/serializers.py:1431
+#: part/serializers.py:1493
msgid "At least one BOM item is required"
msgstr ""
@@ -6421,9 +6453,9 @@ msgstr ""
msgid "The available stock for {part.name} has fallen below the configured minimum level"
msgstr ""
-#: part/tasks.py:294 templates/js/translated/part.js:1040
-#: templates/js/translated/part.js:1793 templates/js/translated/part.js:1848
-#: templates/js/translated/purchase_order.js:2052
+#: part/tasks.py:294 templates/js/translated/part.js:1039
+#: templates/js/translated/part.js:1792 templates/js/translated/part.js:1847
+#: templates/js/translated/purchase_order.js:2062
msgid "Total Quantity"
msgstr ""
@@ -6461,14 +6493,6 @@ msgstr ""
msgid "The BOM for %(part)s has not been validated."
msgstr ""
-#: part/templates/part/bom.html:30 part/templates/part/detail.html:291
-msgid "BOM actions"
-msgstr ""
-
-#: part/templates/part/bom.html:34
-msgid "Delete Items"
-msgstr ""
-
#: part/templates/part/category.html:34
msgid "Perform stocktake for this part category"
msgstr ""
@@ -6505,7 +6529,7 @@ msgstr ""
msgid "Top level part category"
msgstr ""
-#: part/templates/part/category.html:121 part/templates/part/category.html:225
+#: part/templates/part/category.html:121 part/templates/part/category.html:206
#: part/templates/part/category_sidebar.html:7
msgid "Subcategories"
msgstr ""
@@ -6518,33 +6542,20 @@ msgstr ""
msgid "Create new part"
msgstr ""
-#: part/templates/part/category.html:165 templates/js/translated/bom.js:443
+#: part/templates/part/category.html:165 templates/js/translated/bom.js:444
msgid "New Part"
msgstr ""
-#: part/templates/part/category.html:175 part/templates/part/detail.html:390
-#: part/templates/part/detail.html:421
-msgid "Options"
-msgstr ""
-
-#: part/templates/part/category.html:179
-msgid "Set category"
-msgstr ""
-
-#: part/templates/part/category.html:180
-msgid "Set Category"
-msgstr ""
-
-#: part/templates/part/category.html:208
+#: part/templates/part/category.html:191
#: templates/InvenTree/settings/sidebar.html:47
msgid "Part Parameters"
msgstr ""
-#: part/templates/part/category.html:229
+#: part/templates/part/category.html:210
msgid "Create new part category"
msgstr ""
-#: part/templates/part/category.html:230
+#: part/templates/part/category.html:211
msgid "New Category"
msgstr ""
@@ -6581,7 +6592,7 @@ msgid "Refresh scheduling data"
msgstr ""
#: part/templates/part/detail.html:45 part/templates/part/prices.html:15
-#: templates/js/translated/tables.js:584
+#: templates/js/translated/tables.js:560
msgid "Refresh"
msgstr ""
@@ -6592,7 +6603,7 @@ msgstr ""
#: part/templates/part/detail.html:67 part/templates/part/part_sidebar.html:50
#: stock/admin.py:130 templates/InvenTree/settings/part_stocktake.html:29
#: templates/InvenTree/settings/sidebar.html:51
-#: templates/js/translated/stock.js:1952 users/models.py:39
+#: templates/js/translated/stock.js:2109 users/models.py:39
msgid "Stocktake"
msgstr ""
@@ -6604,101 +6615,101 @@ msgstr ""
msgid "Add Test Template"
msgstr ""
-#: part/templates/part/detail.html:145 stock/templates/stock/item.html:53
+#: part/templates/part/detail.html:139 stock/templates/stock/item.html:49
msgid "Sales Order Allocations"
msgstr ""
-#: part/templates/part/detail.html:165
+#: part/templates/part/detail.html:156
msgid "Part Notes"
msgstr ""
-#: part/templates/part/detail.html:180
+#: part/templates/part/detail.html:171
msgid "Part Variants"
msgstr ""
-#: part/templates/part/detail.html:184
+#: part/templates/part/detail.html:175
msgid "Create new variant"
msgstr ""
-#: part/templates/part/detail.html:185
+#: part/templates/part/detail.html:176
msgid "New Variant"
msgstr ""
-#: part/templates/part/detail.html:212
+#: part/templates/part/detail.html:199
msgid "Add new parameter"
msgstr ""
-#: part/templates/part/detail.html:249 part/templates/part/part_sidebar.html:58
+#: part/templates/part/detail.html:232 part/templates/part/part_sidebar.html:58
msgid "Related Parts"
msgstr ""
-#: part/templates/part/detail.html:253 part/templates/part/detail.html:254
+#: part/templates/part/detail.html:236 part/templates/part/detail.html:237
msgid "Add Related"
msgstr ""
-#: part/templates/part/detail.html:274 part/templates/part/part_sidebar.html:17
+#: part/templates/part/detail.html:255 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:279
+#: part/templates/part/detail.html:260
msgid "Export actions"
msgstr ""
-#: part/templates/part/detail.html:283 templates/js/translated/bom.js:339
+#: part/templates/part/detail.html:264 templates/js/translated/bom.js:340
msgid "Export BOM"
msgstr ""
-#: part/templates/part/detail.html:285
+#: part/templates/part/detail.html:266
msgid "Print BOM Report"
msgstr ""
-#: part/templates/part/detail.html:295
+#: part/templates/part/detail.html:272
+msgid "BOM actions"
+msgstr ""
+
+#: part/templates/part/detail.html:276
msgid "Upload BOM"
msgstr ""
-#: part/templates/part/detail.html:297
+#: part/templates/part/detail.html:278
msgid "Validate BOM"
msgstr ""
-#: part/templates/part/detail.html:302 part/templates/part/detail.html:303
-#: templates/js/translated/bom.js:1279 templates/js/translated/bom.js:1280
+#: part/templates/part/detail.html:283 part/templates/part/detail.html:284
+#: templates/js/translated/bom.js:1299 templates/js/translated/bom.js:1300
msgid "Add BOM Item"
msgstr ""
-#: part/templates/part/detail.html:316
+#: part/templates/part/detail.html:297
msgid "Assemblies"
msgstr ""
-#: part/templates/part/detail.html:334
+#: part/templates/part/detail.html:313
msgid "Part Builds"
msgstr ""
-#: part/templates/part/detail.html:361 stock/templates/stock/item.html:38
+#: part/templates/part/detail.html:338 stock/templates/stock/item.html:36
msgid "Build Order Allocations"
msgstr ""
-#: part/templates/part/detail.html:377
+#: part/templates/part/detail.html:352
msgid "Part Suppliers"
msgstr ""
-#: part/templates/part/detail.html:407
+#: part/templates/part/detail.html:372
msgid "Part Manufacturers"
msgstr ""
-#: part/templates/part/detail.html:423
-msgid "Delete manufacturer parts"
-msgstr ""
-
-#: part/templates/part/detail.html:707
+#: part/templates/part/detail.html:654
msgid "Related Part"
msgstr ""
-#: part/templates/part/detail.html:715
+#: part/templates/part/detail.html:662
msgid "Add Related Part"
msgstr ""
-#: part/templates/part/detail.html:800
+#: part/templates/part/detail.html:747
msgid "Add Test Result Template"
msgstr ""
@@ -6732,13 +6743,13 @@ msgid "Download Part Import Template"
msgstr ""
#: part/templates/part/import_wizard/part_upload.html:92
-#: templates/js/translated/bom.js:308 templates/js/translated/bom.js:342
+#: templates/js/translated/bom.js:309 templates/js/translated/bom.js:343
#: templates/js/translated/order.js:129 templates/js/translated/tables.js:189
msgid "Format"
msgstr ""
#: part/templates/part/import_wizard/part_upload.html:93
-#: templates/js/translated/bom.js:309 templates/js/translated/bom.js:343
+#: templates/js/translated/bom.js:310 templates/js/translated/bom.js:344
#: templates/js/translated/order.js:130
msgid "Select file format"
msgstr ""
@@ -6779,7 +6790,7 @@ msgstr ""
msgid "Transfer part stock"
msgstr ""
-#: part/templates/part/part_base.html:93
+#: part/templates/part/part_base.html:93 templates/js/translated/part.js:2264
msgid "Part actions"
msgstr ""
@@ -6824,10 +6835,10 @@ msgid "Part is not active"
msgstr ""
#: part/templates/part/part_base.html:148
-#: templates/js/translated/company.js:945
-#: templates/js/translated/company.js:1185
-#: templates/js/translated/model_renderers.js:273
-#: templates/js/translated/part.js:792 templates/js/translated/part.js:1192
+#: templates/js/translated/company.js:1318
+#: templates/js/translated/company.js:1606
+#: templates/js/translated/model_renderers.js:287
+#: templates/js/translated/part.js:791 templates/js/translated/part.js:1191
msgid "Inactive"
msgstr ""
@@ -6850,7 +6861,7 @@ msgstr ""
msgid "Allocated to Sales Orders"
msgstr ""
-#: part/templates/part/part_base.html:237 templates/js/translated/bom.js:1178
+#: part/templates/part/part_base.html:237 templates/js/translated/bom.js:1198
msgid "Can Build"
msgstr ""
@@ -6858,8 +6869,8 @@ msgstr ""
msgid "Minimum stock level"
msgstr ""
-#: part/templates/part/part_base.html:324 templates/js/translated/bom.js:1041
-#: templates/js/translated/part.js:1238 templates/js/translated/part.js:2304
+#: part/templates/part/part_base.html:324 templates/js/translated/bom.js:1059
+#: templates/js/translated/part.js:1237 templates/js/translated/part.js:2380
#: templates/js/translated/pricing.js:391
#: templates/js/translated/pricing.js:1040
msgid "Price Range"
@@ -6882,7 +6893,7 @@ msgstr ""
msgid "Link Barcode to Part"
msgstr ""
-#: part/templates/part/part_base.html:474 templates/js/translated/part.js:2191
+#: part/templates/part/part_base.html:474 templates/js/translated/part.js:2258
msgid "part"
msgstr ""
@@ -6956,9 +6967,9 @@ msgstr ""
#: stock/templates/stock/stock_app_base.html:10
#: templates/InvenTree/search.html:153
#: templates/InvenTree/settings/sidebar.html:49
-#: templates/js/translated/part.js:1216 templates/js/translated/part.js:2120
-#: templates/js/translated/part.js:2284 templates/js/translated/stock.js:1022
-#: templates/js/translated/stock.js:1829 templates/navbar.html:31
+#: templates/js/translated/part.js:1215 templates/js/translated/part.js:2119
+#: templates/js/translated/part.js:2360 templates/js/translated/stock.js:1021
+#: templates/js/translated/stock.js:1986 templates/navbar.html:31
msgid "Stock"
msgstr ""
@@ -6989,9 +7000,9 @@ msgstr ""
#: part/templates/part/prices.html:25 stock/admin.py:129
#: stock/templates/stock/item_base.html:442
-#: templates/js/translated/company.js:1313
-#: templates/js/translated/company.js:1323
-#: templates/js/translated/stock.js:1982
+#: templates/js/translated/company.js:1734
+#: templates/js/translated/company.js:1744
+#: templates/js/translated/stock.js:2139
msgid "Last Updated"
msgstr ""
@@ -7054,12 +7065,12 @@ msgstr ""
msgid "Add Sell Price Break"
msgstr ""
-#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:682
-#: templates/js/translated/part.js:2115 templates/js/translated/part.js:2117
+#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:681
+#: templates/js/translated/part.js:2114 templates/js/translated/part.js:2116
msgid "No Stock"
msgstr ""
-#: part/templates/part/stock_count.html:9 templates/InvenTree/index.html:167
+#: part/templates/part/stock_count.html:9 templates/InvenTree/index.html:120
msgid "Low Stock"
msgstr ""
@@ -7163,7 +7174,7 @@ msgid "Match found for barcode data"
msgstr "Pro data čárového kódu byla nalezena shoda"
#: plugin/base/barcodes/api.py:120
-#: templates/js/translated/purchase_order.js:1372
+#: templates/js/translated/purchase_order.js:1387
msgid "Barcode matches existing item"
msgstr ""
@@ -7226,43 +7237,43 @@ msgstr ""
msgid "Open link"
msgstr ""
-#: plugin/models.py:27
+#: plugin/models.py:28
msgid "Plugin Configuration"
msgstr ""
-#: plugin/models.py:28
+#: plugin/models.py:29
msgid "Plugin Configurations"
msgstr ""
-#: plugin/models.py:33
+#: plugin/models.py:34
msgid "Key"
msgstr ""
-#: plugin/models.py:34
+#: plugin/models.py:35
msgid "Key of plugin"
msgstr ""
-#: plugin/models.py:42
+#: plugin/models.py:43
msgid "PluginName of the plugin"
msgstr ""
-#: plugin/models.py:48
+#: plugin/models.py:49
msgid "Is the plugin active"
msgstr ""
-#: plugin/models.py:124
+#: plugin/models.py:125
msgid "Sample plugin"
msgstr ""
-#: plugin/models.py:133
+#: plugin/models.py:134
msgid "Builtin Plugin"
msgstr ""
-#: plugin/models.py:159 templates/InvenTree/settings/plugin_settings.html:9
+#: plugin/models.py:160 templates/InvenTree/settings/plugin_settings.html:9
msgid "Plugin"
msgstr ""
-#: plugin/models.py:210
+#: plugin/models.py:211
msgid "Method"
msgstr ""
@@ -7414,47 +7425,47 @@ msgstr ""
msgid "Build query filters (comma-separated list of key=value pairs"
msgstr ""
-#: report/models.py:418
+#: report/models.py:420
msgid "Part Filters"
msgstr ""
-#: report/models.py:419
+#: report/models.py:421
msgid "Part query filters (comma-separated list of key=value pairs"
msgstr ""
-#: report/models.py:453
+#: report/models.py:455
msgid "Purchase order query filters"
msgstr ""
-#: report/models.py:491
+#: report/models.py:493
msgid "Sales order query filters"
msgstr ""
-#: report/models.py:529
+#: report/models.py:531
msgid "Return order query filters"
msgstr ""
-#: report/models.py:582
+#: report/models.py:584
msgid "Snippet"
msgstr ""
-#: report/models.py:583
+#: report/models.py:585
msgid "Report snippet file"
msgstr ""
-#: report/models.py:587
+#: report/models.py:589
msgid "Snippet file description"
msgstr ""
-#: report/models.py:624
+#: report/models.py:626
msgid "Asset"
msgstr ""
-#: report/models.py:625
+#: report/models.py:627
msgid "Report asset file"
msgstr ""
-#: report/models.py:632
+#: report/models.py:634
msgid "Asset file description"
msgstr ""
@@ -7475,8 +7486,8 @@ msgstr ""
#: templates/js/translated/order.js:316 templates/js/translated/pricing.js:527
#: templates/js/translated/pricing.js:596
#: templates/js/translated/pricing.js:820
-#: templates/js/translated/purchase_order.js:2083
-#: templates/js/translated/sales_order.js:1817
+#: templates/js/translated/purchase_order.js:2093
+#: templates/js/translated/sales_order.js:1829
msgid "Unit Price"
msgstr ""
@@ -7488,23 +7499,23 @@ msgstr ""
#: report/templates/report/inventree_po_report_base.html:72
#: report/templates/report/inventree_so_report_base.html:72
-#: templates/js/translated/purchase_order.js:1985
-#: templates/js/translated/sales_order.js:1792
+#: templates/js/translated/purchase_order.js:1995
+#: templates/js/translated/sales_order.js:1804
msgid "Total"
msgstr ""
#: report/templates/report/inventree_return_order_report_base.html:25
#: report/templates/report/inventree_test_report_base.html:88
#: stock/models.py:725 stock/templates/stock/item_base.html:312
-#: templates/js/translated/build.js:502 templates/js/translated/build.js:1423
-#: templates/js/translated/build.js:1989
-#: templates/js/translated/model_renderers.js:201
-#: templates/js/translated/return_order.js:528
-#: templates/js/translated/return_order.js:708
-#: templates/js/translated/sales_order.js:300
-#: templates/js/translated/sales_order.js:1597
-#: templates/js/translated/sales_order.js:1682
-#: templates/js/translated/stock.js:563
+#: templates/js/translated/build.js:508 templates/js/translated/build.js:1306
+#: templates/js/translated/build.js:2281
+#: templates/js/translated/model_renderers.js:215
+#: templates/js/translated/return_order.js:540
+#: templates/js/translated/return_order.js:720
+#: templates/js/translated/sales_order.js:312
+#: templates/js/translated/sales_order.js:1609
+#: templates/js/translated/sales_order.js:1694
+#: templates/js/translated/stock.js:562
msgid "Serial Number"
msgstr ""
@@ -7517,7 +7528,7 @@ msgid "Test Results"
msgstr ""
#: report/templates/report/inventree_test_report_base.html:102
-#: stock/models.py:2243 templates/js/translated/stock.js:1419
+#: stock/models.py:2243 templates/js/translated/stock.js:1418
msgid "Test"
msgstr ""
@@ -7548,8 +7559,8 @@ msgid "Installed Items"
msgstr ""
#: report/templates/report/inventree_test_report_base.html:168
-#: stock/admin.py:104 templates/js/translated/stock.js:667
-#: templates/js/translated/stock.js:838 templates/js/translated/stock.js:2849
+#: stock/admin.py:104 templates/js/translated/stock.js:666
+#: templates/js/translated/stock.js:837 templates/js/translated/stock.js:2976
msgid "Serial"
msgstr ""
@@ -7617,31 +7628,31 @@ msgstr ""
#: stock/admin.py:131 stock/models.py:789
#: stock/templates/stock/item_base.html:429
-#: templates/js/translated/stock.js:1966
+#: templates/js/translated/stock.js:2123
msgid "Expiry Date"
msgstr ""
-#: stock/api.py:420 templates/js/translated/table_filters.js:373
+#: stock/api.py:426 templates/js/translated/table_filters.js:379
msgid "External Location"
msgstr ""
-#: stock/api.py:582
+#: stock/api.py:619
msgid "Quantity is required"
msgstr ""
-#: stock/api.py:589
+#: stock/api.py:626
msgid "Valid part must be supplied"
msgstr ""
-#: stock/api.py:615
+#: stock/api.py:652
msgid "The given supplier part does not exist"
msgstr ""
-#: stock/api.py:624
+#: stock/api.py:661
msgid "The supplier part has a pack size defined, but flag use_pack_size not set"
msgstr ""
-#: stock/api.py:642
+#: stock/api.py:679
msgid "Serial numbers cannot be supplied for a non-trackable part"
msgstr ""
@@ -7652,7 +7663,7 @@ msgid "Stock Location"
msgstr ""
#: stock/models.py:55 stock/templates/stock/location.html:177
-#: templates/InvenTree/search.html:166 templates/js/translated/search.js:220
+#: templates/InvenTree/search.html:166 templates/js/translated/search.js:178
#: users/models.py:40
msgid "Stock Locations"
msgstr ""
@@ -7670,8 +7681,8 @@ msgstr ""
msgid "Stock items may not be directly located into a structural stock locations, but may be located to child locations."
msgstr ""
-#: stock/models.py:132 templates/js/translated/stock.js:2529
-#: templates/js/translated/table_filters.js:213
+#: stock/models.py:132 templates/js/translated/stock.js:2660
+#: templates/js/translated/table_filters.js:219
msgid "External"
msgstr ""
@@ -7687,7 +7698,7 @@ msgstr ""
msgid "Stock items cannot be located into structural stock locations!"
msgstr ""
-#: stock/models.py:583 stock/serializers.py:174
+#: stock/models.py:583 stock/serializers.py:223
msgid "Stock item cannot be created for virtual parts"
msgstr ""
@@ -7821,7 +7832,7 @@ msgstr ""
msgid "Quantity does not match serial numbers"
msgstr ""
-#: stock/models.py:1403 stock/serializers.py:374
+#: stock/models.py:1403 stock/serializers.py:440
msgid "Serial numbers already exist"
msgstr ""
@@ -7849,7 +7860,7 @@ msgstr ""
msgid "Serialized stock cannot be merged"
msgstr ""
-#: stock/models.py:1496 stock/serializers.py:975
+#: stock/models.py:1496 stock/serializers.py:1092
msgid "Duplicate stock items"
msgstr ""
@@ -7901,132 +7912,141 @@ msgstr ""
msgid "Test notes"
msgstr ""
-#: stock/serializers.py:76
+#: stock/serializers.py:121
msgid "Serial number is too large"
msgstr ""
-#: stock/serializers.py:166
+#: stock/serializers.py:215
msgid "Use pack size when adding: the quantity defined is the number of packs"
msgstr ""
-#: stock/serializers.py:254
+#: stock/serializers.py:316
msgid "Purchase price of this stock item, per unit or pack"
msgstr ""
-#: stock/serializers.py:307
+#: stock/serializers.py:373
msgid "Enter number of stock items to serialize"
msgstr ""
-#: stock/serializers.py:319
+#: stock/serializers.py:385
#, python-brace-format
msgid "Quantity must not exceed available stock quantity ({q})"
msgstr ""
-#: stock/serializers.py:325
+#: stock/serializers.py:391
msgid "Enter serial numbers for new items"
msgstr ""
-#: stock/serializers.py:336 stock/serializers.py:932 stock/serializers.py:1174
+#: stock/serializers.py:402 stock/serializers.py:1049 stock/serializers.py:1291
msgid "Destination stock location"
msgstr ""
-#: stock/serializers.py:343
+#: stock/serializers.py:409
msgid "Optional note field"
msgstr ""
-#: stock/serializers.py:353
+#: stock/serializers.py:419
msgid "Serial numbers cannot be assigned to this part"
msgstr ""
-#: stock/serializers.py:414
+#: stock/serializers.py:480
msgid "Select stock item to install"
msgstr ""
-#: stock/serializers.py:427
-msgid "Stock item is unavailable"
-msgstr ""
-
-#: stock/serializers.py:434
-msgid "Selected part is not in the Bill of Materials"
-msgstr ""
-
-#: stock/serializers.py:471
-msgid "Destination location for uninstalled item"
-msgstr ""
-
-#: stock/serializers.py:476 stock/serializers.py:557
+#: stock/serializers.py:485 stock/serializers.py:543 stock/serializers.py:624
+#: stock/serializers.py:682
msgid "Add transaction note (optional)"
msgstr ""
-#: stock/serializers.py:510
+#: stock/serializers.py:494
+msgid "Stock item is unavailable"
+msgstr ""
+
+#: stock/serializers.py:501
+msgid "Selected part is not in the Bill of Materials"
+msgstr ""
+
+#: stock/serializers.py:538
+msgid "Destination location for uninstalled item"
+msgstr ""
+
+#: stock/serializers.py:577
msgid "Select part to convert stock item into"
msgstr ""
-#: stock/serializers.py:521
+#: stock/serializers.py:588
msgid "Selected part is not a valid option for conversion"
msgstr ""
-#: stock/serializers.py:552
+#: stock/serializers.py:619
msgid "Destination location for returned item"
msgstr ""
-#: stock/serializers.py:787
+#: stock/serializers.py:663
+msgid "Select stock items to change status"
+msgstr ""
+
+#: stock/serializers.py:670
+msgid "No stock items selected"
+msgstr ""
+
+#: stock/serializers.py:904
msgid "Part must be salable"
msgstr ""
-#: stock/serializers.py:791
+#: stock/serializers.py:908
msgid "Item is allocated to a sales order"
msgstr ""
-#: stock/serializers.py:795
+#: stock/serializers.py:912
msgid "Item is allocated to a build order"
msgstr ""
-#: stock/serializers.py:826
+#: stock/serializers.py:943
msgid "Customer to assign stock items"
msgstr ""
-#: stock/serializers.py:832
+#: stock/serializers.py:949
msgid "Selected company is not a customer"
msgstr ""
-#: stock/serializers.py:840
+#: stock/serializers.py:957
msgid "Stock assignment notes"
msgstr ""
-#: stock/serializers.py:850 stock/serializers.py:1081
+#: stock/serializers.py:967 stock/serializers.py:1198
msgid "A list of stock items must be provided"
msgstr ""
-#: stock/serializers.py:939
+#: stock/serializers.py:1056
msgid "Stock merging notes"
msgstr ""
-#: stock/serializers.py:944
+#: stock/serializers.py:1061
msgid "Allow mismatched suppliers"
msgstr ""
-#: stock/serializers.py:945
+#: stock/serializers.py:1062
msgid "Allow stock items with different supplier parts to be merged"
msgstr ""
-#: stock/serializers.py:950
+#: stock/serializers.py:1067
msgid "Allow mismatched status"
msgstr ""
-#: stock/serializers.py:951
+#: stock/serializers.py:1068
msgid "Allow stock items with different status codes to be merged"
msgstr ""
-#: stock/serializers.py:961
+#: stock/serializers.py:1078
msgid "At least two stock items must be provided"
msgstr ""
-#: stock/serializers.py:1043
+#: stock/serializers.py:1160
msgid "StockItem primary key value"
msgstr ""
-#: stock/serializers.py:1071
+#: stock/serializers.py:1188
msgid "Stock transaction notes"
msgstr ""
@@ -8034,48 +8054,48 @@ msgstr ""
msgid "Stock Tracking Information"
msgstr ""
-#: stock/templates/stock/item.html:69
+#: stock/templates/stock/item.html:63
msgid "Child Stock Items"
msgstr ""
-#: stock/templates/stock/item.html:77
+#: stock/templates/stock/item.html:71
msgid "This stock item does not have any child items"
msgstr ""
-#: stock/templates/stock/item.html:86
+#: stock/templates/stock/item.html:80
#: stock/templates/stock/stock_sidebar.html:12
msgid "Test Data"
msgstr ""
-#: stock/templates/stock/item.html:90 stock/templates/stock/item_base.html:66
+#: stock/templates/stock/item.html:84 stock/templates/stock/item_base.html:66
msgid "Test Report"
msgstr ""
-#: stock/templates/stock/item.html:94 stock/templates/stock/item.html:288
+#: stock/templates/stock/item.html:88 stock/templates/stock/item.html:278
msgid "Delete Test Data"
msgstr ""
-#: stock/templates/stock/item.html:98
+#: stock/templates/stock/item.html:92
msgid "Add Test Data"
msgstr ""
-#: stock/templates/stock/item.html:132
+#: stock/templates/stock/item.html:124
msgid "Stock Item Notes"
msgstr ""
-#: stock/templates/stock/item.html:147
+#: stock/templates/stock/item.html:139
msgid "Installed Stock Items"
msgstr ""
-#: stock/templates/stock/item.html:152 templates/js/translated/stock.js:2996
+#: stock/templates/stock/item.html:144 templates/js/translated/stock.js:3123
msgid "Install Stock Item"
msgstr ""
-#: stock/templates/stock/item.html:276
+#: stock/templates/stock/item.html:266
msgid "Delete all test results for this stock item"
msgstr ""
-#: stock/templates/stock/item.html:305 templates/js/translated/stock.js:1611
+#: stock/templates/stock/item.html:295 templates/js/translated/stock.js:1610
msgid "Add Test Result"
msgstr ""
@@ -8083,13 +8103,13 @@ msgstr ""
msgid "Locate stock item"
msgstr ""
-#: stock/templates/stock/item_base.html:52 templates/stock_table.html:21
+#: stock/templates/stock/item_base.html:52
msgid "Scan to Location"
msgstr ""
#: stock/templates/stock/item_base.html:60
#: stock/templates/stock/location.html:69
-#: templates/js/translated/filters.js:322
+#: templates/js/translated/filters.js:432
msgid "Printing actions"
msgstr ""
@@ -8098,15 +8118,17 @@ msgid "Stock adjustment actions"
msgstr ""
#: stock/templates/stock/item_base.html:80
-#: stock/templates/stock/location.html:88 templates/stock_table.html:35
+#: stock/templates/stock/location.html:88 templates/js/translated/stock.js:1735
msgid "Count stock"
msgstr ""
-#: stock/templates/stock/item_base.html:82 templates/stock_table.html:33
+#: stock/templates/stock/item_base.html:82
+#: templates/js/translated/stock.js:1717
msgid "Add stock"
msgstr ""
-#: stock/templates/stock/item_base.html:83 templates/stock_table.html:34
+#: stock/templates/stock/item_base.html:83
+#: templates/js/translated/stock.js:1726
msgid "Remove stock"
msgstr ""
@@ -8115,11 +8137,12 @@ msgid "Serialize stock"
msgstr ""
#: stock/templates/stock/item_base.html:89
-#: stock/templates/stock/location.html:94 templates/stock_table.html:36
+#: stock/templates/stock/location.html:94 templates/js/translated/stock.js:1744
msgid "Transfer stock"
msgstr ""
-#: stock/templates/stock/item_base.html:92 templates/stock_table.html:39
+#: stock/templates/stock/item_base.html:92
+#: templates/js/translated/stock.js:1798
msgid "Assign to customer"
msgstr ""
@@ -8159,6 +8182,11 @@ msgstr ""
msgid "Delete stock item"
msgstr ""
+#: stock/templates/stock/item_base.html:170 templates/InvenTree/search.html:139
+#: templates/js/translated/build.js:2046 templates/navbar.html:38
+msgid "Build"
+msgstr "Sestavení"
+
#: stock/templates/stock/item_base.html:194
msgid "Parent Item"
msgstr ""
@@ -8221,7 +8249,7 @@ msgid "Available Quantity"
msgstr ""
#: stock/templates/stock/item_base.html:394
-#: templates/js/translated/build.js:2015
+#: templates/js/translated/build.js:2306
msgid "No location set"
msgstr ""
@@ -8239,7 +8267,7 @@ msgid "This StockItem expired on %(item.expiry_date)s"
msgstr ""
#: stock/templates/stock/item_base.html:433
-#: templates/js/translated/table_filters.js:381
+#: templates/js/translated/table_filters.js:387
msgid "Expired"
msgstr ""
@@ -8249,7 +8277,7 @@ msgid "This StockItem expires on %(item.expiry_date)s"
msgstr ""
#: stock/templates/stock/item_base.html:435
-#: templates/js/translated/table_filters.js:387
+#: templates/js/translated/table_filters.js:393
msgid "Stale"
msgstr ""
@@ -8258,7 +8286,7 @@ msgid "No stocktake performed"
msgstr ""
#: stock/templates/stock/item_base.html:503
-#: templates/js/translated/stock.js:1745
+#: templates/js/translated/stock.js:1865
msgid "stock item"
msgstr ""
@@ -8364,20 +8392,20 @@ msgstr ""
msgid "New Location"
msgstr ""
-#: stock/templates/stock/location.html:287
-#: templates/js/translated/stock.js:2318
+#: stock/templates/stock/location.html:278
+#: templates/js/translated/stock.js:2449
msgid "stock location"
msgstr ""
-#: stock/templates/stock/location.html:304
+#: stock/templates/stock/location.html:295
msgid "Scanned stock container into this location"
msgstr ""
-#: stock/templates/stock/location.html:377
+#: stock/templates/stock/location.html:368
msgid "Stock Location QR Code"
msgstr ""
-#: stock/templates/stock/location.html:388
+#: stock/templates/stock/location.html:379
msgid "Link Barcode to Stock Location"
msgstr ""
@@ -8451,71 +8479,71 @@ msgstr ""
msgid "Index"
msgstr ""
-#: templates/InvenTree/index.html:89
+#: templates/InvenTree/index.html:39
msgid "Subscribed Parts"
msgstr ""
-#: templates/InvenTree/index.html:102
+#: templates/InvenTree/index.html:53
msgid "Subscribed Categories"
msgstr ""
-#: templates/InvenTree/index.html:112
+#: templates/InvenTree/index.html:63
msgid "Latest Parts"
msgstr ""
-#: templates/InvenTree/index.html:126
+#: templates/InvenTree/index.html:78
msgid "BOM Waiting Validation"
msgstr ""
-#: templates/InvenTree/index.html:155
+#: templates/InvenTree/index.html:107
msgid "Recently Updated"
msgstr ""
-#: templates/InvenTree/index.html:180
+#: templates/InvenTree/index.html:134
msgid "Depleted Stock"
msgstr ""
-#: templates/InvenTree/index.html:193
+#: templates/InvenTree/index.html:148
msgid "Required for Build Orders"
msgstr ""
-#: templates/InvenTree/index.html:208
+#: templates/InvenTree/index.html:156
msgid "Expired Stock"
msgstr ""
-#: templates/InvenTree/index.html:222
+#: templates/InvenTree/index.html:172
msgid "Stale Stock"
msgstr ""
-#: templates/InvenTree/index.html:247
+#: templates/InvenTree/index.html:199
msgid "Build Orders In Progress"
msgstr ""
-#: templates/InvenTree/index.html:258
+#: templates/InvenTree/index.html:210
msgid "Overdue Build Orders"
msgstr ""
-#: templates/InvenTree/index.html:278
+#: templates/InvenTree/index.html:230
msgid "Outstanding Purchase Orders"
msgstr ""
-#: templates/InvenTree/index.html:289
+#: templates/InvenTree/index.html:241
msgid "Overdue Purchase Orders"
msgstr ""
-#: templates/InvenTree/index.html:310
+#: templates/InvenTree/index.html:262
msgid "Outstanding Sales Orders"
msgstr ""
-#: templates/InvenTree/index.html:321
+#: templates/InvenTree/index.html:273
msgid "Overdue Sales Orders"
msgstr ""
-#: templates/InvenTree/index.html:347
+#: templates/InvenTree/index.html:299
msgid "InvenTree News"
msgstr ""
-#: templates/InvenTree/index.html:349
+#: templates/InvenTree/index.html:301
msgid "Current News"
msgstr ""
@@ -8672,29 +8700,29 @@ msgstr ""
msgid "Changing the settings below require you to immediately restart the server. Do not change this while under active usage."
msgstr ""
-#: templates/InvenTree/settings/plugin.html:37
+#: templates/InvenTree/settings/plugin.html:35
#: templates/InvenTree/settings/sidebar.html:64
msgid "Plugins"
msgstr ""
-#: templates/InvenTree/settings/plugin.html:43
+#: templates/InvenTree/settings/plugin.html:41
#: templates/js/translated/plugin.js:151
msgid "Install Plugin"
msgstr ""
-#: templates/InvenTree/settings/plugin.html:51
+#: templates/InvenTree/settings/plugin.html:49
msgid "External plugins are not enabled for this InvenTree installation"
msgstr ""
-#: templates/InvenTree/settings/plugin.html:70
+#: templates/InvenTree/settings/plugin.html:64
msgid "Plugin Error Stack"
msgstr ""
-#: templates/InvenTree/settings/plugin.html:79
+#: templates/InvenTree/settings/plugin.html:73
msgid "Stage"
msgstr ""
-#: templates/InvenTree/settings/plugin.html:81
+#: templates/InvenTree/settings/plugin.html:75
#: templates/js/translated/notification.js:75
msgid "Message"
msgstr ""
@@ -8767,14 +8795,6 @@ msgstr ""
msgid "Commit Message"
msgstr ""
-#: templates/InvenTree/settings/plugin_settings.html:126
-msgid "Sign Status"
-msgstr ""
-
-#: templates/InvenTree/settings/plugin_settings.html:131
-msgid "Sign Key"
-msgstr ""
-
#: templates/InvenTree/settings/po.html:7
msgid "Purchase Order Settings"
msgstr ""
@@ -8870,12 +8890,12 @@ msgid "No category parameter templates found"
msgstr ""
#: templates/InvenTree/settings/settings_staff_js.html:212
-#: templates/js/translated/part.js:1618
+#: templates/js/translated/part.js:1617
msgid "Edit Template"
msgstr ""
#: templates/InvenTree/settings/settings_staff_js.html:213
-#: templates/js/translated/part.js:1619
+#: templates/js/translated/part.js:1618
msgid "Delete Template"
msgstr ""
@@ -8913,7 +8933,7 @@ msgid "Home Page"
msgstr "Domovská stránka"
#: templates/InvenTree/settings/sidebar.html:15
-#: templates/js/translated/tables.js:575 templates/navbar.html:107
+#: templates/js/translated/tables.js:551 templates/navbar.html:107
#: templates/search.html:8 templates/search_form.html:6
#: templates/search_form.html:7
msgid "Search"
@@ -8990,6 +9010,7 @@ msgid "Unverified"
msgstr ""
#: templates/InvenTree/settings/user.html:80
+#: templates/js/translated/company.js:984
msgid "Primary"
msgstr ""
@@ -9204,44 +9225,48 @@ msgstr ""
msgid "Update Available"
msgstr ""
-#: templates/about.html:42
+#: templates/about.html:43
+msgid "Commit Branch"
+msgstr ""
+
+#: templates/about.html:49
msgid "InvenTree Documentation"
msgstr ""
-#: templates/about.html:47
+#: templates/about.html:54
msgid "API Version"
msgstr ""
-#: templates/about.html:52
+#: templates/about.html:59
msgid "Python Version"
msgstr ""
-#: templates/about.html:57
+#: templates/about.html:64
msgid "Django Version"
msgstr ""
-#: templates/about.html:62
+#: templates/about.html:69
msgid "View Code on GitHub"
msgstr ""
-#: templates/about.html:67
+#: templates/about.html:74
msgid "Credits"
msgstr ""
-#: templates/about.html:72
+#: templates/about.html:79
msgid "Mobile App"
msgstr ""
-#: templates/about.html:77
+#: templates/about.html:84
msgid "Submit Bug Report"
msgstr ""
-#: templates/about.html:84 templates/clip.html:4
+#: templates/about.html:91 templates/clip.html:4
#: templates/js/translated/helpers.js:585
msgid "copy to clipboard"
msgstr ""
-#: templates/about.html:84
+#: templates/about.html:91
msgid "copy version information"
msgstr ""
@@ -9435,14 +9460,6 @@ msgstr ""
msgid "Add Attachment"
msgstr ""
-#: templates/attachment_table.html:11
-msgid "Delete selected attachments"
-msgstr ""
-
-#: templates/attachment_table.html:12 templates/js/translated/attachment.js:129
-msgid "Delete Attachments"
-msgstr ""
-
#: templates/barcode_data.html:5
msgid "Barcode Identifier"
msgstr ""
@@ -9487,7 +9504,7 @@ msgid "The following parts are low on required stock"
msgstr ""
#: templates/email/build_order_required_stock.html:18
-#: templates/js/translated/bom.js:1633
+#: templates/js/translated/bom.js:1653 templates/js/translated/build.js:2485
msgid "Required Quantity"
msgstr ""
@@ -9501,7 +9518,7 @@ msgid "Click on the following link to view this part"
msgstr ""
#: templates/email/low_stock_notification.html:18
-#: templates/js/translated/part.js:3140
+#: templates/js/translated/part.js:3125
msgid "Minimum Quantity"
msgstr ""
@@ -9573,23 +9590,35 @@ msgstr ""
msgid "All selected attachments will be deleted"
msgstr ""
-#: templates/js/translated/attachment.js:255
+#: templates/js/translated/attachment.js:129
+msgid "Delete Attachments"
+msgstr ""
+
+#: templates/js/translated/attachment.js:205
+msgid "Delete attachments"
+msgstr ""
+
+#: templates/js/translated/attachment.js:253
+msgid "Attachment actions"
+msgstr ""
+
+#: templates/js/translated/attachment.js:275
msgid "No attachments found"
msgstr ""
-#: templates/js/translated/attachment.js:285
+#: templates/js/translated/attachment.js:305
msgid "Edit Attachment"
msgstr ""
-#: templates/js/translated/attachment.js:326
+#: templates/js/translated/attachment.js:336
msgid "Upload Date"
msgstr ""
-#: templates/js/translated/attachment.js:346
+#: templates/js/translated/attachment.js:356
msgid "Edit attachment"
msgstr ""
-#: templates/js/translated/attachment.js:354
+#: templates/js/translated/attachment.js:364
msgid "Delete attachment"
msgstr ""
@@ -9646,7 +9675,7 @@ msgstr ""
msgid "Unlink"
msgstr ""
-#: templates/js/translated/barcode.js:550 templates/js/translated/stock.js:1118
+#: templates/js/translated/barcode.js:550 templates/js/translated/stock.js:1117
msgid "Remove stock item"
msgstr ""
@@ -9704,775 +9733,869 @@ msgstr ""
msgid "Barcode does not match a valid location"
msgstr ""
-#: templates/js/translated/bom.js:77
+#: templates/js/translated/bom.js:78
msgid "Create BOM Item"
msgstr ""
-#: templates/js/translated/bom.js:131
+#: templates/js/translated/bom.js:132
msgid "Display row data"
msgstr ""
-#: templates/js/translated/bom.js:187
+#: templates/js/translated/bom.js:188
msgid "Row Data"
msgstr ""
-#: templates/js/translated/bom.js:188 templates/js/translated/bom.js:699
+#: templates/js/translated/bom.js:189 templates/js/translated/bom.js:700
#: templates/js/translated/modals.js:71 templates/js/translated/modals.js:622
#: templates/js/translated/modals.js:746 templates/js/translated/modals.js:1054
-#: templates/js/translated/purchase_order.js:791 templates/modals.html:15
+#: templates/js/translated/purchase_order.js:802 templates/modals.html:15
#: templates/modals.html:27 templates/modals.html:39 templates/modals.html:50
msgid "Close"
msgstr ""
-#: templates/js/translated/bom.js:305
+#: templates/js/translated/bom.js:306
msgid "Download BOM Template"
msgstr ""
-#: templates/js/translated/bom.js:350
+#: templates/js/translated/bom.js:351
msgid "Multi Level BOM"
msgstr ""
-#: templates/js/translated/bom.js:351
+#: templates/js/translated/bom.js:352
msgid "Include BOM data for subassemblies"
msgstr ""
-#: templates/js/translated/bom.js:356
+#: templates/js/translated/bom.js:357
msgid "Levels"
msgstr ""
-#: templates/js/translated/bom.js:357
+#: templates/js/translated/bom.js:358
msgid "Select maximum number of BOM levels to export (0 = all levels)"
msgstr ""
-#: templates/js/translated/bom.js:364
+#: templates/js/translated/bom.js:365
msgid "Include Alternative Parts"
msgstr ""
-#: templates/js/translated/bom.js:365
+#: templates/js/translated/bom.js:366
msgid "Include alternative parts in exported BOM"
msgstr ""
-#: templates/js/translated/bom.js:370
+#: templates/js/translated/bom.js:371
msgid "Include Parameter Data"
msgstr ""
-#: templates/js/translated/bom.js:371
+#: templates/js/translated/bom.js:372
msgid "Include part parameter data in exported BOM"
msgstr ""
-#: templates/js/translated/bom.js:376
+#: templates/js/translated/bom.js:377
msgid "Include Stock Data"
msgstr ""
-#: templates/js/translated/bom.js:377
+#: templates/js/translated/bom.js:378
msgid "Include part stock data in exported BOM"
msgstr ""
-#: templates/js/translated/bom.js:382
+#: templates/js/translated/bom.js:383
msgid "Include Manufacturer Data"
msgstr ""
-#: templates/js/translated/bom.js:383
+#: templates/js/translated/bom.js:384
msgid "Include part manufacturer data in exported BOM"
msgstr ""
-#: templates/js/translated/bom.js:388
+#: templates/js/translated/bom.js:389
msgid "Include Supplier Data"
msgstr ""
-#: templates/js/translated/bom.js:389
+#: templates/js/translated/bom.js:390
msgid "Include part supplier data in exported BOM"
msgstr ""
-#: templates/js/translated/bom.js:394
+#: templates/js/translated/bom.js:395
msgid "Include Pricing Data"
msgstr ""
-#: templates/js/translated/bom.js:395
+#: templates/js/translated/bom.js:396
msgid "Include part pricing data in exported BOM"
msgstr ""
-#: templates/js/translated/bom.js:590
+#: templates/js/translated/bom.js:591
msgid "Remove substitute part"
msgstr ""
-#: templates/js/translated/bom.js:644
+#: templates/js/translated/bom.js:645
msgid "Select and add a new substitute part using the input below"
msgstr ""
-#: templates/js/translated/bom.js:655
+#: templates/js/translated/bom.js:656
msgid "Are you sure you wish to remove this substitute part link?"
msgstr ""
-#: templates/js/translated/bom.js:661
+#: templates/js/translated/bom.js:662
msgid "Remove Substitute Part"
msgstr ""
-#: templates/js/translated/bom.js:700
+#: templates/js/translated/bom.js:701
msgid "Add Substitute"
msgstr ""
-#: templates/js/translated/bom.js:701
+#: templates/js/translated/bom.js:702
msgid "Edit BOM Item Substitutes"
msgstr ""
-#: templates/js/translated/bom.js:763
+#: templates/js/translated/bom.js:764
msgid "All selected BOM items will be deleted"
msgstr ""
-#: templates/js/translated/bom.js:779
+#: templates/js/translated/bom.js:780
msgid "Delete selected BOM items?"
msgstr ""
-#: templates/js/translated/bom.js:906
+#: templates/js/translated/bom.js:826
+msgid "Delete items"
+msgstr ""
+
+#: templates/js/translated/bom.js:924
msgid "Load BOM for subassembly"
msgstr ""
-#: templates/js/translated/bom.js:916
+#: templates/js/translated/bom.js:934
msgid "Substitutes Available"
msgstr ""
-#: templates/js/translated/bom.js:920 templates/js/translated/build.js:2090
+#: templates/js/translated/bom.js:938 templates/js/translated/build.js:2429
msgid "Variant stock allowed"
msgstr ""
-#: templates/js/translated/bom.js:984
+#: templates/js/translated/bom.js:1002
msgid "Substitutes"
msgstr ""
-#: templates/js/translated/bom.js:1104
+#: templates/js/translated/bom.js:1122
msgid "BOM pricing is complete"
msgstr ""
-#: templates/js/translated/bom.js:1109
+#: templates/js/translated/bom.js:1127
msgid "BOM pricing is incomplete"
msgstr ""
-#: templates/js/translated/bom.js:1116
+#: templates/js/translated/bom.js:1134
msgid "No pricing available"
msgstr ""
-#: templates/js/translated/bom.js:1147 templates/js/translated/build.js:2173
-#: templates/js/translated/sales_order.js:1887
+#: templates/js/translated/bom.js:1165 templates/js/translated/build.js:2523
+#: templates/js/translated/sales_order.js:1899
msgid "No Stock Available"
msgstr ""
-#: templates/js/translated/bom.js:1152 templates/js/translated/build.js:2177
+#: templates/js/translated/bom.js:1170 templates/js/translated/build.js:2527
msgid "Includes variant and substitute stock"
msgstr ""
-#: templates/js/translated/bom.js:1154 templates/js/translated/build.js:2179
-#: templates/js/translated/part.js:1230
+#: templates/js/translated/bom.js:1172 templates/js/translated/build.js:2529
+#: templates/js/translated/part.js:1229
msgid "Includes variant stock"
msgstr ""
-#: templates/js/translated/bom.js:1156 templates/js/translated/build.js:2181
+#: templates/js/translated/bom.js:1174 templates/js/translated/build.js:2531
msgid "Includes substitute stock"
msgstr ""
-#: templates/js/translated/bom.js:1184 templates/js/translated/build.js:2164
-#: templates/js/translated/build.js:2255
+#: templates/js/translated/bom.js:1204 templates/js/translated/build.js:2514
msgid "Consumable item"
msgstr ""
-#: templates/js/translated/bom.js:1244
+#: templates/js/translated/bom.js:1264
msgid "Validate BOM Item"
msgstr ""
-#: templates/js/translated/bom.js:1246
+#: templates/js/translated/bom.js:1266
msgid "This line has been validated"
msgstr ""
-#: templates/js/translated/bom.js:1248
+#: templates/js/translated/bom.js:1268
msgid "Edit substitute parts"
msgstr ""
-#: templates/js/translated/bom.js:1250 templates/js/translated/bom.js:1445
+#: templates/js/translated/bom.js:1270 templates/js/translated/bom.js:1465
msgid "Edit BOM Item"
msgstr ""
-#: templates/js/translated/bom.js:1252
+#: templates/js/translated/bom.js:1272
msgid "Delete BOM Item"
msgstr ""
-#: templates/js/translated/bom.js:1272
+#: templates/js/translated/bom.js:1292
msgid "View BOM"
msgstr ""
-#: templates/js/translated/bom.js:1356 templates/js/translated/build.js:1927
+#: templates/js/translated/bom.js:1376
msgid "No BOM items found"
msgstr ""
-#: templates/js/translated/bom.js:1616 templates/js/translated/build.js:2073
+#: templates/js/translated/bom.js:1636 templates/js/translated/build.js:2414
msgid "Required Part"
msgstr ""
-#: templates/js/translated/bom.js:1642
+#: templates/js/translated/bom.js:1662
msgid "Inherited from parent BOM"
msgstr ""
-#: templates/js/translated/build.js:126
+#: templates/js/translated/build.js:136
msgid "Edit Build Order"
msgstr ""
-#: templates/js/translated/build.js:169
+#: templates/js/translated/build.js:179
msgid "Create Build Order"
msgstr ""
-#: templates/js/translated/build.js:202
+#: templates/js/translated/build.js:211
msgid "Cancel Build Order"
msgstr ""
-#: templates/js/translated/build.js:211
+#: templates/js/translated/build.js:220
msgid "Are you sure you wish to cancel this build?"
msgstr ""
-#: templates/js/translated/build.js:217
+#: templates/js/translated/build.js:226
msgid "Stock items have been allocated to this build order"
msgstr ""
-#: templates/js/translated/build.js:224
+#: templates/js/translated/build.js:233
msgid "There are incomplete outputs remaining for this build order"
msgstr ""
-#: templates/js/translated/build.js:276
+#: templates/js/translated/build.js:285
msgid "Build order is ready to be completed"
msgstr ""
-#: templates/js/translated/build.js:284
+#: templates/js/translated/build.js:293
msgid "This build order cannot be completed as there are incomplete outputs"
msgstr ""
-#: templates/js/translated/build.js:289
+#: templates/js/translated/build.js:298
msgid "Build Order is incomplete"
msgstr ""
-#: templates/js/translated/build.js:307
+#: templates/js/translated/build.js:316
msgid "Complete Build Order"
msgstr ""
-#: templates/js/translated/build.js:348 templates/js/translated/stock.js:119
-#: templates/js/translated/stock.js:265
+#: templates/js/translated/build.js:357 templates/js/translated/stock.js:118
+#: templates/js/translated/stock.js:264
msgid "Next available serial number"
msgstr ""
-#: templates/js/translated/build.js:350 templates/js/translated/stock.js:121
-#: templates/js/translated/stock.js:267
+#: templates/js/translated/build.js:359 templates/js/translated/stock.js:120
+#: templates/js/translated/stock.js:266
msgid "Latest serial number"
msgstr ""
-#: templates/js/translated/build.js:359
+#: templates/js/translated/build.js:368
msgid "The Bill of Materials contains trackable parts"
msgstr ""
-#: templates/js/translated/build.js:360
+#: templates/js/translated/build.js:369
msgid "Build outputs must be generated individually"
msgstr ""
-#: templates/js/translated/build.js:368
+#: templates/js/translated/build.js:377
msgid "Trackable parts can have serial numbers specified"
msgstr ""
-#: templates/js/translated/build.js:369
+#: templates/js/translated/build.js:378
msgid "Enter serial numbers to generate multiple single build outputs"
msgstr ""
-#: templates/js/translated/build.js:376
+#: templates/js/translated/build.js:385
msgid "Create Build Output"
msgstr ""
-#: templates/js/translated/build.js:407
+#: templates/js/translated/build.js:416
msgid "Allocate stock items to this build output"
msgstr ""
-#: templates/js/translated/build.js:418
-msgid "Unallocate stock from build output"
+#: templates/js/translated/build.js:424
+msgid "Deallocate stock from build output"
msgstr ""
-#: templates/js/translated/build.js:427
+#: templates/js/translated/build.js:433
msgid "Complete build output"
msgstr ""
-#: templates/js/translated/build.js:435
+#: templates/js/translated/build.js:441
msgid "Scrap build output"
msgstr ""
-#: templates/js/translated/build.js:442
+#: templates/js/translated/build.js:448
msgid "Delete build output"
msgstr ""
-#: templates/js/translated/build.js:462
-msgid "Are you sure you wish to unallocate stock items from this build?"
+#: templates/js/translated/build.js:468
+msgid "Are you sure you wish to deallocate the selected stock items from this build?"
msgstr ""
-#: templates/js/translated/build.js:480
-msgid "Unallocate Stock Items"
+#: templates/js/translated/build.js:486
+msgid "Deallocate Stock Items"
msgstr ""
-#: templates/js/translated/build.js:566 templates/js/translated/build.js:690
-#: templates/js/translated/build.js:812
+#: templates/js/translated/build.js:572 templates/js/translated/build.js:696
+#: templates/js/translated/build.js:818
msgid "Select Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:567 templates/js/translated/build.js:691
-#: templates/js/translated/build.js:813
+#: templates/js/translated/build.js:573 templates/js/translated/build.js:697
+#: templates/js/translated/build.js:819
msgid "At least one build output must be selected"
msgstr ""
-#: templates/js/translated/build.js:581
+#: templates/js/translated/build.js:587
msgid "Selected build outputs will be marked as complete"
msgstr ""
-#: templates/js/translated/build.js:585 templates/js/translated/build.js:715
-#: templates/js/translated/build.js:835
+#: templates/js/translated/build.js:591 templates/js/translated/build.js:721
+#: templates/js/translated/build.js:841
msgid "Output"
msgstr ""
-#: templates/js/translated/build.js:609
+#: templates/js/translated/build.js:615
msgid "Complete Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:706
+#: templates/js/translated/build.js:712
msgid "Selected build outputs will be marked as scrapped"
msgstr ""
-#: templates/js/translated/build.js:708
+#: templates/js/translated/build.js:714
msgid "Scrapped output are marked as rejected"
msgstr ""
-#: templates/js/translated/build.js:709
+#: templates/js/translated/build.js:715
msgid "Allocated stock items will no longer be available"
msgstr ""
-#: templates/js/translated/build.js:710
+#: templates/js/translated/build.js:716
msgid "The completion status of the build order will not be adjusted"
msgstr ""
-#: templates/js/translated/build.js:737
+#: templates/js/translated/build.js:743
msgid "Scrap Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:827
+#: templates/js/translated/build.js:833
msgid "Selected build outputs will be deleted"
msgstr ""
-#: templates/js/translated/build.js:829
+#: templates/js/translated/build.js:835
msgid "Build output data will be permanently deleted"
msgstr ""
-#: templates/js/translated/build.js:830
+#: templates/js/translated/build.js:836
msgid "Allocated stock items will be returned to stock"
msgstr ""
-#: templates/js/translated/build.js:848
+#: templates/js/translated/build.js:854
msgid "Delete Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:934
+#: templates/js/translated/build.js:941
msgid "No build order allocations found"
msgstr ""
-#: templates/js/translated/build.js:971
+#: templates/js/translated/build.js:970 templates/js/translated/build.js:2270
+msgid "Allocated Quantity"
+msgstr ""
+
+#: templates/js/translated/build.js:984
msgid "Location not specified"
msgstr ""
-#: templates/js/translated/build.js:1047
+#: templates/js/translated/build.js:1006
+msgid "Complete outputs"
+msgstr ""
+
+#: templates/js/translated/build.js:1024
+msgid "Scrap outputs"
+msgstr ""
+
+#: templates/js/translated/build.js:1042
+msgid "Delete outputs"
+msgstr ""
+
+#: templates/js/translated/build.js:1100
msgid "build output"
msgstr ""
-#: templates/js/translated/build.js:1048
+#: templates/js/translated/build.js:1101
msgid "build outputs"
msgstr ""
-#: templates/js/translated/build.js:1383
+#: templates/js/translated/build.js:1105
+msgid "Build output actions"
+msgstr ""
+
+#: templates/js/translated/build.js:1274
msgid "No active build outputs found"
msgstr ""
-#: templates/js/translated/build.js:1457
-msgid "Allocated Stock"
+#: templates/js/translated/build.js:1329
+msgid "Allocated Lines"
msgstr ""
-#: templates/js/translated/build.js:1464
-msgid "No tracked BOM items for this build"
+#: templates/js/translated/build.js:1343
+msgid "Required Tests"
msgstr ""
-#: templates/js/translated/build.js:1486
-msgid "Completed Tests"
-msgstr ""
-
-#: templates/js/translated/build.js:1491
-msgid "No required tests for this build"
-msgstr ""
-
-#: templates/js/translated/build.js:2032 templates/js/translated/build.js:3056
-#: templates/js/translated/sales_order.js:1632
-msgid "Edit stock allocation"
-msgstr ""
-
-#: templates/js/translated/build.js:2034 templates/js/translated/build.js:3057
-#: templates/js/translated/sales_order.js:1633
-msgid "Delete stock allocation"
-msgstr ""
-
-#: templates/js/translated/build.js:2050
-msgid "Edit Allocation"
-msgstr ""
-
-#: templates/js/translated/build.js:2060
-msgid "Remove Allocation"
-msgstr ""
-
-#: templates/js/translated/build.js:2086
-msgid "Substitute parts available"
-msgstr ""
-
-#: templates/js/translated/build.js:2122
-msgid "Quantity Per"
-msgstr ""
-
-#: templates/js/translated/build.js:2167
-#: templates/js/translated/sales_order.js:1894
-msgid "Insufficient stock available"
-msgstr ""
-
-#: templates/js/translated/build.js:2169
-#: templates/js/translated/sales_order.js:1892
-msgid "Sufficient stock available"
-msgstr ""
-
-#: templates/js/translated/build.js:2263
-#: templates/js/translated/sales_order.js:1993
-msgid "Build stock"
-msgstr ""
-
-#: templates/js/translated/build.js:2267 templates/stock_table.html:38
-msgid "Order stock"
-msgstr ""
-
-#: templates/js/translated/build.js:2270
-#: templates/js/translated/sales_order.js:1987
-msgid "Allocate stock"
-msgstr ""
-
-#: templates/js/translated/build.js:2310
-#: templates/js/translated/purchase_order.js:616
-#: templates/js/translated/sales_order.js:1159
+#: templates/js/translated/build.js:1502
+#: templates/js/translated/purchase_order.js:627
+#: templates/js/translated/sales_order.js:1171
msgid "Select Parts"
msgstr "Vybrané díly"
-#: templates/js/translated/build.js:2311
-#: templates/js/translated/sales_order.js:1160
+#: templates/js/translated/build.js:1503
+#: templates/js/translated/sales_order.js:1172
msgid "You must select at least one part to allocate"
msgstr ""
-#: templates/js/translated/build.js:2359
-#: templates/js/translated/sales_order.js:1109
+#: templates/js/translated/build.js:1566
+#: templates/js/translated/sales_order.js:1121
msgid "Specify stock allocation quantity"
msgstr ""
-#: templates/js/translated/build.js:2438
+#: templates/js/translated/build.js:1643
msgid "All Parts Allocated"
msgstr ""
-#: templates/js/translated/build.js:2439
+#: templates/js/translated/build.js:1644
msgid "All selected parts have been fully allocated"
msgstr ""
-#: templates/js/translated/build.js:2453
-#: templates/js/translated/sales_order.js:1174
+#: templates/js/translated/build.js:1658
+#: templates/js/translated/sales_order.js:1186
msgid "Select source location (leave blank to take from all locations)"
msgstr ""
-#: templates/js/translated/build.js:2481
+#: templates/js/translated/build.js:1686
msgid "Allocate Stock Items to Build Order"
msgstr ""
-#: templates/js/translated/build.js:2492
-#: templates/js/translated/sales_order.js:1271
+#: templates/js/translated/build.js:1697
+#: templates/js/translated/sales_order.js:1283
msgid "No matching stock locations"
msgstr ""
-#: templates/js/translated/build.js:2565
-#: templates/js/translated/sales_order.js:1348
+#: templates/js/translated/build.js:1770
+#: templates/js/translated/sales_order.js:1360
msgid "No matching stock items"
msgstr ""
-#: templates/js/translated/build.js:2662
+#: templates/js/translated/build.js:1867
msgid "Automatic Stock Allocation"
msgstr ""
-#: templates/js/translated/build.js:2663
+#: templates/js/translated/build.js:1868
msgid "Stock items will be automatically allocated to this build order, according to the provided guidelines"
msgstr ""
-#: templates/js/translated/build.js:2665
+#: templates/js/translated/build.js:1870
msgid "If a location is specified, stock will only be allocated from that location"
msgstr ""
-#: templates/js/translated/build.js:2666
+#: templates/js/translated/build.js:1871
msgid "If stock is considered interchangeable, it will be allocated from the first location it is found"
msgstr ""
-#: templates/js/translated/build.js:2667
+#: templates/js/translated/build.js:1872
msgid "If substitute stock is allowed, it will be used where stock of the primary part cannot be found"
msgstr ""
-#: templates/js/translated/build.js:2694
+#: templates/js/translated/build.js:1899
msgid "Allocate Stock Items"
msgstr ""
-#: templates/js/translated/build.js:2800
+#: templates/js/translated/build.js:2005
msgid "No builds matching query"
msgstr ""
-#: templates/js/translated/build.js:2835 templates/js/translated/part.js:2208
-#: templates/js/translated/part.js:2692 templates/js/translated/stock.js:1759
-#: templates/js/translated/stock.js:2458
+#: templates/js/translated/build.js:2040 templates/js/translated/build.js:2408
+#: templates/js/translated/part.js:2284 templates/js/translated/part.js:2677
+#: templates/js/translated/stock.js:1899 templates/js/translated/stock.js:2589
msgid "Select"
msgstr ""
-#: templates/js/translated/build.js:2849
+#: templates/js/translated/build.js:2054
msgid "Build order is overdue"
msgstr ""
-#: templates/js/translated/build.js:2883
+#: templates/js/translated/build.js:2100
msgid "Progress"
msgstr ""
-#: templates/js/translated/build.js:2919 templates/js/translated/stock.js:2779
+#: templates/js/translated/build.js:2136 templates/js/translated/stock.js:2910
msgid "No user information"
msgstr ""
-#: templates/js/translated/build.js:2934
+#: templates/js/translated/build.js:2151
msgid "group"
msgstr ""
-#: templates/js/translated/build.js:3033
-msgid "No parts allocated for"
+#: templates/js/translated/build.js:2315
+#: templates/js/translated/sales_order.js:1644
+msgid "Edit stock allocation"
msgstr ""
-#: templates/js/translated/company.js:87
+#: templates/js/translated/build.js:2316
+#: templates/js/translated/sales_order.js:1645
+msgid "Delete stock allocation"
+msgstr ""
+
+#: templates/js/translated/build.js:2331
+msgid "Edit Allocation"
+msgstr ""
+
+#: templates/js/translated/build.js:2343
+msgid "Remove Allocation"
+msgstr ""
+
+#: templates/js/translated/build.js:2384
+msgid "build line"
+msgstr ""
+
+#: templates/js/translated/build.js:2385
+msgid "build lines"
+msgstr ""
+
+#: templates/js/translated/build.js:2403
+msgid "No build lines found"
+msgstr ""
+
+#: templates/js/translated/build.js:2433 templates/js/translated/part.js:767
+#: templates/js/translated/part.js:1175
+msgid "Trackable part"
+msgstr ""
+
+#: templates/js/translated/build.js:2468
+msgid "Unit Quantity"
+msgstr ""
+
+#: templates/js/translated/build.js:2517
+#: templates/js/translated/sales_order.js:1906
+msgid "Insufficient stock available"
+msgstr ""
+
+#: templates/js/translated/build.js:2519
+#: templates/js/translated/sales_order.js:1904
+msgid "Sufficient stock available"
+msgstr ""
+
+#: templates/js/translated/build.js:2566
+msgid "Consumable Item"
+msgstr ""
+
+#: templates/js/translated/build.js:2571
+msgid "Tracked item"
+msgstr ""
+
+#: templates/js/translated/build.js:2578
+#: templates/js/translated/sales_order.js:2005
+msgid "Build stock"
+msgstr ""
+
+#: templates/js/translated/build.js:2583 templates/js/translated/stock.js:1779
+msgid "Order stock"
+msgstr ""
+
+#: templates/js/translated/build.js:2587
+#: templates/js/translated/sales_order.js:1999
+msgid "Allocate stock"
+msgstr ""
+
+#: templates/js/translated/build.js:2591
+msgid "Remove stock allocation"
+msgstr ""
+
+#: templates/js/translated/company.js:97
msgid "Add Manufacturer"
msgstr ""
-#: templates/js/translated/company.js:100
-#: templates/js/translated/company.js:202
+#: templates/js/translated/company.js:110
+#: templates/js/translated/company.js:212
msgid "Add Manufacturer Part"
msgstr ""
-#: templates/js/translated/company.js:121
+#: templates/js/translated/company.js:131
msgid "Edit Manufacturer Part"
msgstr ""
-#: templates/js/translated/company.js:190
-#: templates/js/translated/purchase_order.js:94
+#: templates/js/translated/company.js:200
+#: templates/js/translated/purchase_order.js:93
msgid "Add Supplier"
msgstr ""
-#: templates/js/translated/company.js:232
-#: templates/js/translated/purchase_order.js:338
+#: templates/js/translated/company.js:242
+#: templates/js/translated/purchase_order.js:349
msgid "Add Supplier Part"
msgstr ""
-#: templates/js/translated/company.js:333
+#: templates/js/translated/company.js:343
msgid "All selected supplier parts will be deleted"
msgstr ""
-#: templates/js/translated/company.js:349
+#: templates/js/translated/company.js:359
msgid "Delete Supplier Parts"
msgstr ""
-#: templates/js/translated/company.js:457
+#: templates/js/translated/company.js:464
msgid "Add new Company"
msgstr ""
-#: templates/js/translated/company.js:528
+#: templates/js/translated/company.js:535
msgid "Parts Supplied"
msgstr ""
-#: templates/js/translated/company.js:537
+#: templates/js/translated/company.js:544
msgid "Parts Manufactured"
msgstr ""
-#: templates/js/translated/company.js:552
+#: templates/js/translated/company.js:559
msgid "No company information found"
msgstr ""
-#: templates/js/translated/company.js:601
+#: templates/js/translated/company.js:608
msgid "Create New Contact"
msgstr ""
-#: templates/js/translated/company.js:617
-#: templates/js/translated/company.js:740
+#: templates/js/translated/company.js:624
+#: templates/js/translated/company.js:747
msgid "Edit Contact"
msgstr ""
-#: templates/js/translated/company.js:654
+#: templates/js/translated/company.js:661
msgid "All selected contacts will be deleted"
msgstr ""
-#: templates/js/translated/company.js:660
-#: templates/js/translated/company.js:724
+#: templates/js/translated/company.js:667
+#: templates/js/translated/company.js:731
msgid "Role"
msgstr ""
-#: templates/js/translated/company.js:668
+#: templates/js/translated/company.js:675
msgid "Delete Contacts"
msgstr ""
-#: templates/js/translated/company.js:699
+#: templates/js/translated/company.js:706
msgid "No contacts found"
msgstr ""
-#: templates/js/translated/company.js:712
+#: templates/js/translated/company.js:719
msgid "Phone Number"
msgstr ""
-#: templates/js/translated/company.js:718
+#: templates/js/translated/company.js:725
msgid "Email Address"
msgstr ""
-#: templates/js/translated/company.js:744
+#: templates/js/translated/company.js:751
msgid "Delete Contact"
msgstr ""
-#: templates/js/translated/company.js:818
+#: templates/js/translated/company.js:886
+msgid "Create New Address"
+msgstr ""
+
+#: templates/js/translated/company.js:901
+#: templates/js/translated/company.js:1066
+msgid "Edit Address"
+msgstr ""
+
+#: templates/js/translated/company.js:936
+msgid "All selected addresses will be deleted"
+msgstr ""
+
+#: templates/js/translated/company.js:950
+msgid "Delete Addresses"
+msgstr ""
+
+#: templates/js/translated/company.js:977
+msgid "No addresses found"
+msgstr ""
+
+#: templates/js/translated/company.js:1020
+msgid "Postal city"
+msgstr ""
+
+#: templates/js/translated/company.js:1026
+msgid "State/province"
+msgstr ""
+
+#: templates/js/translated/company.js:1038
+msgid "Courier notes"
+msgstr ""
+
+#: templates/js/translated/company.js:1044
+msgid "Internal notes"
+msgstr ""
+
+#: templates/js/translated/company.js:1070
+msgid "Delete Address"
+msgstr ""
+
+#: templates/js/translated/company.js:1143
msgid "All selected manufacturer parts will be deleted"
msgstr ""
-#: templates/js/translated/company.js:833
+#: templates/js/translated/company.js:1158
msgid "Delete Manufacturer Parts"
msgstr ""
-#: templates/js/translated/company.js:867
+#: templates/js/translated/company.js:1192
msgid "All selected parameters will be deleted"
msgstr ""
-#: templates/js/translated/company.js:881
+#: templates/js/translated/company.js:1206
msgid "Delete Parameters"
msgstr ""
-#: templates/js/translated/company.js:917
+#: templates/js/translated/company.js:1222
+#: templates/js/translated/company.js:1510 templates/js/translated/part.js:2213
+msgid "Order parts"
+msgstr "Objednávka dílů"
+
+#: templates/js/translated/company.js:1239
+msgid "Delete manufacturer parts"
+msgstr ""
+
+#: templates/js/translated/company.js:1271
+msgid "Manufacturer part actions"
+msgstr ""
+
+#: templates/js/translated/company.js:1290
msgid "No manufacturer parts found"
msgstr ""
-#: templates/js/translated/company.js:937
-#: templates/js/translated/company.js:1177 templates/js/translated/part.js:776
-#: templates/js/translated/part.js:1184
+#: templates/js/translated/company.js:1310
+#: templates/js/translated/company.js:1598 templates/js/translated/part.js:775
+#: templates/js/translated/part.js:1183
msgid "Template part"
msgstr ""
-#: templates/js/translated/company.js:941
-#: templates/js/translated/company.js:1181 templates/js/translated/part.js:780
-#: templates/js/translated/part.js:1188
+#: templates/js/translated/company.js:1314
+#: templates/js/translated/company.js:1602 templates/js/translated/part.js:779
+#: templates/js/translated/part.js:1187
msgid "Assembled part"
msgstr ""
-#: templates/js/translated/company.js:1061 templates/js/translated/part.js:1437
+#: templates/js/translated/company.js:1434 templates/js/translated/part.js:1436
msgid "No parameters found"
msgstr ""
-#: templates/js/translated/company.js:1096 templates/js/translated/part.js:1500
+#: templates/js/translated/company.js:1469 templates/js/translated/part.js:1499
msgid "Edit parameter"
msgstr ""
-#: templates/js/translated/company.js:1097 templates/js/translated/part.js:1501
+#: templates/js/translated/company.js:1470 templates/js/translated/part.js:1500
msgid "Delete parameter"
msgstr ""
-#: templates/js/translated/company.js:1114 templates/js/translated/part.js:1407
+#: templates/js/translated/company.js:1487 templates/js/translated/part.js:1406
msgid "Edit Parameter"
msgstr ""
-#: templates/js/translated/company.js:1123 templates/js/translated/part.js:1522
+#: templates/js/translated/company.js:1496 templates/js/translated/part.js:1521
msgid "Delete Parameter"
msgstr ""
-#: templates/js/translated/company.js:1156
+#: templates/js/translated/company.js:1527
+msgid "Delete supplier parts"
+msgstr ""
+
+#: templates/js/translated/company.js:1577
msgid "No supplier parts found"
msgstr ""
-#: templates/js/translated/company.js:1274
+#: templates/js/translated/company.js:1695
msgid "Base Units"
msgstr ""
-#: templates/js/translated/company.js:1304
+#: templates/js/translated/company.js:1725
msgid "Availability"
msgstr ""
-#: templates/js/translated/company.js:1335
+#: templates/js/translated/company.js:1756
msgid "Edit supplier part"
msgstr ""
-#: templates/js/translated/company.js:1336
+#: templates/js/translated/company.js:1757
msgid "Delete supplier part"
msgstr ""
-#: templates/js/translated/company.js:1389
+#: templates/js/translated/company.js:1810
#: templates/js/translated/pricing.js:694
msgid "Delete Price Break"
msgstr ""
-#: templates/js/translated/company.js:1399
+#: templates/js/translated/company.js:1820
#: templates/js/translated/pricing.js:712
msgid "Edit Price Break"
msgstr ""
-#: templates/js/translated/company.js:1414
+#: templates/js/translated/company.js:1835
msgid "No price break information found"
msgstr ""
-#: templates/js/translated/company.js:1443
+#: templates/js/translated/company.js:1864
msgid "Last updated"
msgstr ""
-#: templates/js/translated/company.js:1450
+#: templates/js/translated/company.js:1871
msgid "Edit price break"
msgstr ""
-#: templates/js/translated/company.js:1451
+#: templates/js/translated/company.js:1872
msgid "Delete price break"
msgstr ""
-#: templates/js/translated/filters.js:186
-#: templates/js/translated/filters.js:550
+#: templates/js/translated/filters.js:187
+#: templates/js/translated/filters.js:673
msgid "true"
msgstr ""
-#: templates/js/translated/filters.js:190
-#: templates/js/translated/filters.js:551
+#: templates/js/translated/filters.js:191
+#: templates/js/translated/filters.js:674
msgid "false"
msgstr ""
-#: templates/js/translated/filters.js:214
+#: templates/js/translated/filters.js:215
msgid "Select filter"
msgstr ""
-#: templates/js/translated/filters.js:328
+#: templates/js/translated/filters.js:438
msgid "Print Labels"
msgstr ""
-#: templates/js/translated/filters.js:332
+#: templates/js/translated/filters.js:442
msgid "Print Reports"
msgstr ""
-#: templates/js/translated/filters.js:344
+#: templates/js/translated/filters.js:454
msgid "Download table data"
msgstr ""
-#: templates/js/translated/filters.js:351
+#: templates/js/translated/filters.js:461
msgid "Reload table data"
msgstr ""
-#: templates/js/translated/filters.js:360
+#: templates/js/translated/filters.js:470
msgid "Add new filter"
msgstr ""
-#: templates/js/translated/filters.js:368
+#: templates/js/translated/filters.js:478
msgid "Clear all filters"
msgstr ""
-#: templates/js/translated/filters.js:460
+#: templates/js/translated/filters.js:583
msgid "Create filter"
msgstr ""
@@ -10497,6 +10620,12 @@ msgstr ""
msgid "View operation not allowed"
msgstr ""
+#: templates/js/translated/forms.js:506 templates/js/translated/helpers.js:105
+#: templates/js/translated/part.js:369 templates/js/translated/pricing.js:629
+#: templates/js/translated/stock.js:215 users/models.py:253
+msgid "Delete"
+msgstr "Odstranit"
+
#: templates/js/translated/forms.js:752
msgid "Keep this form open"
msgstr ""
@@ -10514,23 +10643,23 @@ msgstr ""
msgid "No results found"
msgstr ""
-#: templates/js/translated/forms.js:2071 templates/js/translated/search.js:281
+#: templates/js/translated/forms.js:2071 templates/js/translated/search.js:239
msgid "Searching"
msgstr ""
-#: templates/js/translated/forms.js:2276
+#: templates/js/translated/forms.js:2285
msgid "Clear input"
msgstr ""
-#: templates/js/translated/forms.js:2733
+#: templates/js/translated/forms.js:2742
msgid "File Column"
msgstr ""
-#: templates/js/translated/forms.js:2733
+#: templates/js/translated/forms.js:2742
msgid "Field Name"
msgstr ""
-#: templates/js/translated/forms.js:2745
+#: templates/js/translated/forms.js:2754
msgid "Select Columns"
msgstr ""
@@ -10550,6 +10679,14 @@ msgstr ""
msgid "False"
msgstr ""
+#: templates/js/translated/index.js:99
+msgid "No parts required for builds"
+msgstr ""
+
+#: templates/js/translated/index.js:125
+msgid "Allocated Stock"
+msgstr ""
+
#: templates/js/translated/label.js:58
msgid "Select Printer"
msgstr ""
@@ -10651,7 +10788,7 @@ msgstr ""
#: templates/js/translated/news.js:38
#: templates/js/translated/notification.js:45
-#: templates/js/translated/part.js:1577
+#: templates/js/translated/part.js:1576
msgid "ID"
msgstr ""
@@ -10700,7 +10837,7 @@ msgid "Delete Line"
msgstr ""
#: templates/js/translated/order.js:281
-#: templates/js/translated/purchase_order.js:1958
+#: templates/js/translated/purchase_order.js:1968
msgid "No line items found"
msgstr ""
@@ -10716,363 +10853,355 @@ msgstr ""
msgid "Delete line"
msgstr ""
-#: templates/js/translated/part.js:91
+#: templates/js/translated/part.js:90
msgid "Part Attributes"
msgstr ""
-#: templates/js/translated/part.js:95
+#: templates/js/translated/part.js:94
msgid "Part Creation Options"
msgstr ""
-#: templates/js/translated/part.js:99
+#: templates/js/translated/part.js:98
msgid "Part Duplication Options"
msgstr ""
-#: templates/js/translated/part.js:122
+#: templates/js/translated/part.js:121
msgid "Add Part Category"
msgstr ""
-#: templates/js/translated/part.js:294
+#: templates/js/translated/part.js:293
msgid "Parent part category"
msgstr ""
-#: templates/js/translated/part.js:310 templates/js/translated/stock.js:147
+#: templates/js/translated/part.js:309 templates/js/translated/stock.js:146
msgid "Icon (optional) - Explore all available icons on"
msgstr ""
-#: templates/js/translated/part.js:330
+#: templates/js/translated/part.js:329
msgid "Create Part Category"
msgstr ""
-#: templates/js/translated/part.js:333
+#: templates/js/translated/part.js:332
msgid "Create new category after this one"
msgstr ""
-#: templates/js/translated/part.js:334
+#: templates/js/translated/part.js:333
msgid "Part category created"
msgstr ""
-#: templates/js/translated/part.js:348
+#: templates/js/translated/part.js:347
msgid "Edit Part Category"
msgstr ""
-#: templates/js/translated/part.js:361
+#: templates/js/translated/part.js:360
msgid "Are you sure you want to delete this part category?"
msgstr ""
-#: templates/js/translated/part.js:366
+#: templates/js/translated/part.js:365
msgid "Move to parent category"
msgstr ""
-#: templates/js/translated/part.js:375
+#: templates/js/translated/part.js:374
msgid "Delete Part Category"
msgstr ""
-#: templates/js/translated/part.js:379
+#: templates/js/translated/part.js:378
msgid "Action for parts in this category"
msgstr ""
-#: templates/js/translated/part.js:384
+#: templates/js/translated/part.js:383
msgid "Action for child categories"
msgstr ""
-#: templates/js/translated/part.js:408
+#: templates/js/translated/part.js:407
msgid "Create Part"
msgstr ""
-#: templates/js/translated/part.js:410
+#: templates/js/translated/part.js:409
msgid "Create another part after this one"
msgstr ""
-#: templates/js/translated/part.js:411
+#: templates/js/translated/part.js:410
msgid "Part created successfully"
msgstr ""
-#: templates/js/translated/part.js:439
+#: templates/js/translated/part.js:438
msgid "Edit Part"
msgstr ""
-#: templates/js/translated/part.js:441
+#: templates/js/translated/part.js:440
msgid "Part edited"
msgstr ""
-#: templates/js/translated/part.js:452
+#: templates/js/translated/part.js:451
msgid "Create Part Variant"
msgstr ""
-#: templates/js/translated/part.js:509
+#: templates/js/translated/part.js:508
msgid "Active Part"
msgstr ""
-#: templates/js/translated/part.js:510
+#: templates/js/translated/part.js:509
msgid "Part cannot be deleted as it is currently active"
msgstr ""
-#: templates/js/translated/part.js:524
+#: templates/js/translated/part.js:523
msgid "Deleting this part cannot be reversed"
msgstr ""
-#: templates/js/translated/part.js:526
+#: templates/js/translated/part.js:525
msgid "Any stock items for this part will be deleted"
msgstr ""
-#: templates/js/translated/part.js:527
+#: templates/js/translated/part.js:526
msgid "This part will be removed from any Bills of Material"
msgstr ""
-#: templates/js/translated/part.js:528
+#: templates/js/translated/part.js:527
msgid "All manufacturer and supplier information for this part will be deleted"
msgstr ""
-#: templates/js/translated/part.js:535
+#: templates/js/translated/part.js:534
msgid "Delete Part"
msgstr ""
-#: templates/js/translated/part.js:571
+#: templates/js/translated/part.js:570
msgid "You are subscribed to notifications for this item"
msgstr ""
-#: templates/js/translated/part.js:573
+#: templates/js/translated/part.js:572
msgid "You have subscribed to notifications for this item"
msgstr ""
-#: templates/js/translated/part.js:578
+#: templates/js/translated/part.js:577
msgid "Subscribe to notifications for this item"
msgstr ""
-#: templates/js/translated/part.js:580
+#: templates/js/translated/part.js:579
msgid "You have unsubscribed to notifications for this item"
msgstr ""
-#: templates/js/translated/part.js:597
+#: templates/js/translated/part.js:596
msgid "Validating the BOM will mark each line item as valid"
msgstr ""
-#: templates/js/translated/part.js:607
+#: templates/js/translated/part.js:606
msgid "Validate Bill of Materials"
msgstr ""
-#: templates/js/translated/part.js:610
+#: templates/js/translated/part.js:609
msgid "Validated Bill of Materials"
msgstr ""
-#: templates/js/translated/part.js:635
+#: templates/js/translated/part.js:634
msgid "Copy Bill of Materials"
msgstr ""
-#: templates/js/translated/part.js:663
-#: templates/js/translated/table_filters.js:660
+#: templates/js/translated/part.js:662
+#: templates/js/translated/table_filters.js:682
msgid "Low stock"
msgstr ""
-#: templates/js/translated/part.js:666
+#: templates/js/translated/part.js:665
msgid "No stock available"
msgstr ""
-#: templates/js/translated/part.js:726
+#: templates/js/translated/part.js:725
msgid "Demand"
msgstr ""
-#: templates/js/translated/part.js:749
+#: templates/js/translated/part.js:748
msgid "Unit"
msgstr ""
-#: templates/js/translated/part.js:768 templates/js/translated/part.js:1176
-msgid "Trackable part"
-msgstr ""
-
-#: templates/js/translated/part.js:772 templates/js/translated/part.js:1180
+#: templates/js/translated/part.js:771 templates/js/translated/part.js:1179
msgid "Virtual part"
msgstr ""
-#: templates/js/translated/part.js:784
+#: templates/js/translated/part.js:783
msgid "Subscribed part"
msgstr ""
-#: templates/js/translated/part.js:788
+#: templates/js/translated/part.js:787
msgid "Salable part"
msgstr ""
-#: templates/js/translated/part.js:863
+#: templates/js/translated/part.js:862
msgid "Schedule generation of a new stocktake report."
msgstr ""
-#: templates/js/translated/part.js:863
+#: templates/js/translated/part.js:862
msgid "Once complete, the stocktake report will be available for download."
msgstr ""
-#: templates/js/translated/part.js:871
+#: templates/js/translated/part.js:870
msgid "Generate Stocktake Report"
msgstr ""
-#: templates/js/translated/part.js:875
+#: templates/js/translated/part.js:874
msgid "Stocktake report scheduled"
msgstr ""
-#: templates/js/translated/part.js:1024
+#: templates/js/translated/part.js:1023
msgid "No stocktake information available"
msgstr ""
-#: templates/js/translated/part.js:1082 templates/js/translated/part.js:1118
+#: templates/js/translated/part.js:1081 templates/js/translated/part.js:1117
msgid "Edit Stocktake Entry"
msgstr ""
-#: templates/js/translated/part.js:1086 templates/js/translated/part.js:1128
+#: templates/js/translated/part.js:1085 templates/js/translated/part.js:1127
msgid "Delete Stocktake Entry"
msgstr ""
-#: templates/js/translated/part.js:1255
+#: templates/js/translated/part.js:1254
msgid "No variants found"
msgstr ""
-#: templates/js/translated/part.js:1572
+#: templates/js/translated/part.js:1571
msgid "No part parameter templates found"
msgstr ""
-#: templates/js/translated/part.js:1635
+#: templates/js/translated/part.js:1634
msgid "Edit Part Parameter Template"
msgstr ""
-#: templates/js/translated/part.js:1647
+#: templates/js/translated/part.js:1646
msgid "Any parameters which reference this template will also be deleted"
msgstr ""
-#: templates/js/translated/part.js:1655
+#: templates/js/translated/part.js:1654
msgid "Delete Part Parameter Template"
msgstr ""
-#: templates/js/translated/part.js:1689
-#: templates/js/translated/purchase_order.js:1618
+#: templates/js/translated/part.js:1688
+#: templates/js/translated/purchase_order.js:1633
msgid "No purchase orders found"
msgstr ""
-#: templates/js/translated/part.js:1832
-#: templates/js/translated/purchase_order.js:2121
-#: templates/js/translated/return_order.js:740
-#: templates/js/translated/sales_order.js:1855
+#: templates/js/translated/part.js:1831
+#: templates/js/translated/purchase_order.js:2131
+#: templates/js/translated/return_order.js:752
+#: templates/js/translated/sales_order.js:1867
msgid "This line item is overdue"
msgstr ""
-#: templates/js/translated/part.js:1877
-#: templates/js/translated/purchase_order.js:2188
+#: templates/js/translated/part.js:1876
+#: templates/js/translated/purchase_order.js:2198
msgid "Receive line item"
msgstr ""
-#: templates/js/translated/part.js:1944
+#: templates/js/translated/part.js:1943
msgid "Delete part relationship"
msgstr ""
-#: templates/js/translated/part.js:1966
+#: templates/js/translated/part.js:1965
msgid "Delete Part Relationship"
msgstr ""
-#: templates/js/translated/part.js:2054 templates/js/translated/part.js:2366
+#: templates/js/translated/part.js:2053 templates/js/translated/part.js:2442
msgid "No parts found"
msgstr ""
-#: templates/js/translated/part.js:2192
-msgid "parts"
-msgstr ""
-
-#: templates/js/translated/part.js:2276
-msgid "No category"
-msgstr ""
-
-#: templates/js/translated/part.js:2390 templates/js/translated/part.js:2611
-#: templates/js/translated/stock.js:2417
-msgid "Display as list"
-msgstr ""
-
-#: templates/js/translated/part.js:2406
-msgid "Display as grid"
-msgstr ""
-
-#: templates/js/translated/part.js:2472
+#: templates/js/translated/part.js:2174
msgid "Set the part category for the selected parts"
msgstr ""
-#: templates/js/translated/part.js:2477
+#: templates/js/translated/part.js:2179
msgid "Set Part Category"
msgstr ""
+#: templates/js/translated/part.js:2204
+msgid "Set category"
+msgstr ""
+
+#: templates/js/translated/part.js:2259
+msgid "parts"
+msgstr ""
+
+#: templates/js/translated/part.js:2352
+msgid "No category"
+msgstr ""
+
+#: templates/js/translated/part.js:2466 templates/js/translated/part.js:2596
+#: templates/js/translated/stock.js:2548
+msgid "Display as list"
+msgstr ""
+
#: templates/js/translated/part.js:2482
-msgid "Select Part Category"
+msgid "Display as grid"
msgstr ""
-#: templates/js/translated/part.js:2495
-msgid "Category is required"
-msgstr ""
-
-#: templates/js/translated/part.js:2595
+#: templates/js/translated/part.js:2580
msgid "No subcategories found"
msgstr ""
-#: templates/js/translated/part.js:2631 templates/js/translated/stock.js:2437
+#: templates/js/translated/part.js:2616 templates/js/translated/stock.js:2568
msgid "Display as tree"
msgstr ""
-#: templates/js/translated/part.js:2711
+#: templates/js/translated/part.js:2696
msgid "Load Subcategories"
msgstr ""
-#: templates/js/translated/part.js:2727
+#: templates/js/translated/part.js:2712
msgid "Subscribed category"
msgstr ""
-#: templates/js/translated/part.js:2807
+#: templates/js/translated/part.js:2792
msgid "No test templates matching query"
msgstr ""
-#: templates/js/translated/part.js:2858 templates/js/translated/stock.js:1380
+#: templates/js/translated/part.js:2843 templates/js/translated/stock.js:1379
msgid "Edit test result"
msgstr ""
-#: templates/js/translated/part.js:2859 templates/js/translated/stock.js:1381
-#: templates/js/translated/stock.js:1643
+#: templates/js/translated/part.js:2844 templates/js/translated/stock.js:1380
+#: templates/js/translated/stock.js:1642
msgid "Delete test result"
msgstr ""
-#: templates/js/translated/part.js:2863
+#: templates/js/translated/part.js:2848
msgid "This test is defined for a parent part"
msgstr ""
-#: templates/js/translated/part.js:2879
+#: templates/js/translated/part.js:2864
msgid "Edit Test Result Template"
msgstr ""
-#: templates/js/translated/part.js:2893
+#: templates/js/translated/part.js:2878
msgid "Delete Test Result Template"
msgstr ""
-#: templates/js/translated/part.js:2972 templates/js/translated/part.js:2973
+#: templates/js/translated/part.js:2957 templates/js/translated/part.js:2958
msgid "No date specified"
msgstr ""
-#: templates/js/translated/part.js:2975
+#: templates/js/translated/part.js:2960
msgid "Specified date is in the past"
msgstr ""
-#: templates/js/translated/part.js:2981
+#: templates/js/translated/part.js:2966
msgid "Speculative"
msgstr ""
-#: templates/js/translated/part.js:3031
+#: templates/js/translated/part.js:3016
msgid "No scheduling information available for this part"
msgstr ""
-#: templates/js/translated/part.js:3037
+#: templates/js/translated/part.js:3022
msgid "Error fetching scheduling information for this part"
msgstr ""
-#: templates/js/translated/part.js:3133
+#: templates/js/translated/part.js:3118
msgid "Scheduled Stock Quantities"
msgstr ""
-#: templates/js/translated/part.js:3149
+#: templates/js/translated/part.js:3134
msgid "Maximum Quantity"
msgstr ""
-#: templates/js/translated/part.js:3194
+#: templates/js/translated/part.js:3179
msgid "Minimum Stock Level"
msgstr ""
@@ -11168,234 +11297,234 @@ msgstr ""
msgid "Variant Part"
msgstr ""
-#: templates/js/translated/purchase_order.js:155
+#: templates/js/translated/purchase_order.js:166
msgid "Select purchase order to duplicate"
msgstr ""
-#: templates/js/translated/purchase_order.js:162
+#: templates/js/translated/purchase_order.js:173
msgid "Duplicate Line Items"
msgstr ""
-#: templates/js/translated/purchase_order.js:163
+#: templates/js/translated/purchase_order.js:174
msgid "Duplicate all line items from the selected order"
msgstr ""
-#: templates/js/translated/purchase_order.js:170
+#: templates/js/translated/purchase_order.js:181
msgid "Duplicate Extra Lines"
msgstr ""
-#: templates/js/translated/purchase_order.js:171
+#: templates/js/translated/purchase_order.js:182
msgid "Duplicate extra line items from the selected order"
msgstr ""
-#: templates/js/translated/purchase_order.js:192
+#: templates/js/translated/purchase_order.js:203
msgid "Edit Purchase Order"
msgstr ""
-#: templates/js/translated/purchase_order.js:209
+#: templates/js/translated/purchase_order.js:220
msgid "Duplication Options"
msgstr ""
-#: templates/js/translated/purchase_order.js:436
+#: templates/js/translated/purchase_order.js:447
msgid "Complete Purchase Order"
msgstr ""
-#: templates/js/translated/purchase_order.js:453
-#: templates/js/translated/return_order.js:195
-#: templates/js/translated/sales_order.js:485
+#: templates/js/translated/purchase_order.js:464
+#: templates/js/translated/return_order.js:207
+#: templates/js/translated/sales_order.js:497
msgid "Mark this order as complete?"
msgstr ""
-#: templates/js/translated/purchase_order.js:459
+#: templates/js/translated/purchase_order.js:470
msgid "All line items have been received"
msgstr ""
-#: templates/js/translated/purchase_order.js:464
+#: templates/js/translated/purchase_order.js:475
msgid "This order has line items which have not been marked as received."
msgstr ""
-#: templates/js/translated/purchase_order.js:465
-#: templates/js/translated/sales_order.js:499
+#: templates/js/translated/purchase_order.js:476
+#: templates/js/translated/sales_order.js:511
msgid "Completing this order means that the order and line items will no longer be editable."
msgstr ""
-#: templates/js/translated/purchase_order.js:488
+#: templates/js/translated/purchase_order.js:499
msgid "Cancel Purchase Order"
msgstr ""
-#: templates/js/translated/purchase_order.js:493
+#: templates/js/translated/purchase_order.js:504
msgid "Are you sure you wish to cancel this purchase order?"
msgstr ""
-#: templates/js/translated/purchase_order.js:499
+#: templates/js/translated/purchase_order.js:510
msgid "This purchase order can not be cancelled"
msgstr ""
-#: templates/js/translated/purchase_order.js:520
-#: templates/js/translated/return_order.js:149
+#: templates/js/translated/purchase_order.js:531
+#: templates/js/translated/return_order.js:161
msgid "After placing this order, line items will no longer be editable."
msgstr ""
-#: templates/js/translated/purchase_order.js:525
+#: templates/js/translated/purchase_order.js:536
msgid "Issue Purchase Order"
msgstr ""
-#: templates/js/translated/purchase_order.js:617
+#: templates/js/translated/purchase_order.js:628
msgid "At least one purchaseable part must be selected"
msgstr ""
-#: templates/js/translated/purchase_order.js:642
+#: templates/js/translated/purchase_order.js:653
msgid "Quantity to order"
msgstr ""
-#: templates/js/translated/purchase_order.js:651
+#: templates/js/translated/purchase_order.js:662
msgid "New supplier part"
msgstr ""
-#: templates/js/translated/purchase_order.js:669
+#: templates/js/translated/purchase_order.js:680
msgid "New purchase order"
msgstr ""
-#: templates/js/translated/purchase_order.js:701
+#: templates/js/translated/purchase_order.js:712
msgid "Add to purchase order"
msgstr ""
-#: templates/js/translated/purchase_order.js:845
+#: templates/js/translated/purchase_order.js:860
msgid "No matching supplier parts"
msgstr ""
-#: templates/js/translated/purchase_order.js:864
+#: templates/js/translated/purchase_order.js:879
msgid "No matching purchase orders"
msgstr ""
-#: templates/js/translated/purchase_order.js:1043
+#: templates/js/translated/purchase_order.js:1058
msgid "Select Line Items"
msgstr ""
-#: templates/js/translated/purchase_order.js:1044
-#: templates/js/translated/return_order.js:480
+#: templates/js/translated/purchase_order.js:1059
+#: templates/js/translated/return_order.js:492
msgid "At least one line item must be selected"
msgstr ""
-#: templates/js/translated/purchase_order.js:1074
+#: templates/js/translated/purchase_order.js:1089
msgid "Received Quantity"
msgstr ""
-#: templates/js/translated/purchase_order.js:1085
+#: templates/js/translated/purchase_order.js:1100
msgid "Quantity to receive"
msgstr ""
-#: templates/js/translated/purchase_order.js:1161
+#: templates/js/translated/purchase_order.js:1176
msgid "Stock Status"
msgstr ""
-#: templates/js/translated/purchase_order.js:1175
+#: templates/js/translated/purchase_order.js:1190
msgid "Add barcode"
msgstr ""
-#: templates/js/translated/purchase_order.js:1176
+#: templates/js/translated/purchase_order.js:1191
msgid "Remove barcode"
msgstr ""
-#: templates/js/translated/purchase_order.js:1179
+#: templates/js/translated/purchase_order.js:1194
msgid "Specify location"
msgstr ""
-#: templates/js/translated/purchase_order.js:1187
+#: templates/js/translated/purchase_order.js:1202
msgid "Add batch code"
msgstr ""
-#: templates/js/translated/purchase_order.js:1198
+#: templates/js/translated/purchase_order.js:1213
msgid "Add serial numbers"
msgstr ""
-#: templates/js/translated/purchase_order.js:1250
+#: templates/js/translated/purchase_order.js:1265
msgid "Serials"
msgstr ""
-#: templates/js/translated/purchase_order.js:1275
+#: templates/js/translated/purchase_order.js:1290
msgid "Order Code"
msgstr ""
-#: templates/js/translated/purchase_order.js:1277
+#: templates/js/translated/purchase_order.js:1292
msgid "Quantity to Receive"
msgstr ""
-#: templates/js/translated/purchase_order.js:1299
-#: templates/js/translated/return_order.js:545
+#: templates/js/translated/purchase_order.js:1314
+#: templates/js/translated/return_order.js:557
msgid "Confirm receipt of items"
msgstr ""
-#: templates/js/translated/purchase_order.js:1300
+#: templates/js/translated/purchase_order.js:1315
msgid "Receive Purchase Order Items"
msgstr ""
-#: templates/js/translated/purchase_order.js:1368
+#: templates/js/translated/purchase_order.js:1383
msgid "Scan Item Barcode"
msgstr ""
-#: templates/js/translated/purchase_order.js:1369
+#: templates/js/translated/purchase_order.js:1384
msgid "Scan barcode on incoming item (must not match any existing stock items)"
msgstr ""
-#: templates/js/translated/purchase_order.js:1383
+#: templates/js/translated/purchase_order.js:1398
msgid "Invalid barcode data"
msgstr ""
-#: templates/js/translated/purchase_order.js:1645
-#: templates/js/translated/return_order.js:274
-#: templates/js/translated/sales_order.js:762
-#: templates/js/translated/sales_order.js:986
+#: templates/js/translated/purchase_order.js:1660
+#: templates/js/translated/return_order.js:286
+#: templates/js/translated/sales_order.js:774
+#: templates/js/translated/sales_order.js:998
msgid "Order is overdue"
msgstr ""
-#: templates/js/translated/purchase_order.js:1707
-#: templates/js/translated/return_order.js:342
-#: templates/js/translated/sales_order.js:839
-#: templates/js/translated/sales_order.js:999
+#: templates/js/translated/purchase_order.js:1722
+#: templates/js/translated/return_order.js:354
+#: templates/js/translated/sales_order.js:851
+#: templates/js/translated/sales_order.js:1011
msgid "Items"
msgstr ""
-#: templates/js/translated/purchase_order.js:1806
+#: templates/js/translated/purchase_order.js:1821
msgid "All selected Line items will be deleted"
msgstr ""
-#: templates/js/translated/purchase_order.js:1824
+#: templates/js/translated/purchase_order.js:1839
msgid "Delete selected Line items?"
msgstr ""
-#: templates/js/translated/purchase_order.js:1884
-#: templates/js/translated/sales_order.js:2047
+#: templates/js/translated/purchase_order.js:1894
+#: templates/js/translated/sales_order.js:2059
msgid "Duplicate Line Item"
msgstr ""
-#: templates/js/translated/purchase_order.js:1899
-#: templates/js/translated/return_order.js:464
-#: templates/js/translated/return_order.js:653
-#: templates/js/translated/sales_order.js:2060
+#: templates/js/translated/purchase_order.js:1909
+#: templates/js/translated/return_order.js:476
+#: templates/js/translated/return_order.js:665
+#: templates/js/translated/sales_order.js:2072
msgid "Edit Line Item"
msgstr ""
-#: templates/js/translated/purchase_order.js:1910
-#: templates/js/translated/return_order.js:666
-#: templates/js/translated/sales_order.js:2071
+#: templates/js/translated/purchase_order.js:1920
+#: templates/js/translated/return_order.js:678
+#: templates/js/translated/sales_order.js:2083
msgid "Delete Line Item"
msgstr ""
-#: templates/js/translated/purchase_order.js:2192
-#: templates/js/translated/sales_order.js:2001
+#: templates/js/translated/purchase_order.js:2202
+#: templates/js/translated/sales_order.js:2013
msgid "Duplicate line item"
msgstr ""
-#: templates/js/translated/purchase_order.js:2193
-#: templates/js/translated/return_order.js:785
-#: templates/js/translated/sales_order.js:2002
+#: templates/js/translated/purchase_order.js:2203
+#: templates/js/translated/return_order.js:797
+#: templates/js/translated/sales_order.js:2014
msgid "Edit line item"
msgstr ""
-#: templates/js/translated/purchase_order.js:2194
-#: templates/js/translated/return_order.js:789
-#: templates/js/translated/sales_order.js:2008
+#: templates/js/translated/purchase_order.js:2204
+#: templates/js/translated/return_order.js:801
+#: templates/js/translated/sales_order.js:2020
msgid "Delete line item"
msgstr ""
@@ -11424,941 +11553,973 @@ msgstr ""
msgid "Add Customer"
msgstr ""
-#: templates/js/translated/return_order.js:119
+#: templates/js/translated/return_order.js:131
msgid "Create Return Order"
msgstr ""
-#: templates/js/translated/return_order.js:134
+#: templates/js/translated/return_order.js:146
msgid "Edit Return Order"
msgstr ""
-#: templates/js/translated/return_order.js:154
+#: templates/js/translated/return_order.js:166
msgid "Issue Return Order"
msgstr ""
-#: templates/js/translated/return_order.js:171
+#: templates/js/translated/return_order.js:183
msgid "Are you sure you wish to cancel this Return Order?"
msgstr ""
-#: templates/js/translated/return_order.js:178
+#: templates/js/translated/return_order.js:190
msgid "Cancel Return Order"
msgstr ""
-#: templates/js/translated/return_order.js:203
+#: templates/js/translated/return_order.js:215
msgid "Complete Return Order"
msgstr ""
-#: templates/js/translated/return_order.js:251
+#: templates/js/translated/return_order.js:263
msgid "No return orders found"
msgstr ""
-#: templates/js/translated/return_order.js:288
-#: templates/js/translated/sales_order.js:776
+#: templates/js/translated/return_order.js:300
+#: templates/js/translated/sales_order.js:788
msgid "Invalid Customer"
msgstr ""
-#: templates/js/translated/return_order.js:546
+#: templates/js/translated/return_order.js:558
msgid "Receive Return Order Items"
msgstr ""
-#: templates/js/translated/return_order.js:677
-#: templates/js/translated/sales_order.js:2207
+#: templates/js/translated/return_order.js:689
+#: templates/js/translated/sales_order.js:2219
msgid "No matching line items"
msgstr ""
-#: templates/js/translated/return_order.js:782
+#: templates/js/translated/return_order.js:794
msgid "Mark item as received"
msgstr ""
-#: templates/js/translated/sales_order.js:146
+#: templates/js/translated/sales_order.js:158
msgid "Create Sales Order"
msgstr ""
-#: templates/js/translated/sales_order.js:161
+#: templates/js/translated/sales_order.js:173
msgid "Edit Sales Order"
msgstr ""
-#: templates/js/translated/sales_order.js:276
+#: templates/js/translated/sales_order.js:288
msgid "No stock items have been allocated to this shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:281
+#: templates/js/translated/sales_order.js:293
msgid "The following stock items will be shipped"
msgstr ""
-#: templates/js/translated/sales_order.js:321
+#: templates/js/translated/sales_order.js:333
msgid "Complete Shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:345
+#: templates/js/translated/sales_order.js:357
msgid "Confirm Shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:401
+#: templates/js/translated/sales_order.js:413
msgid "No pending shipments found"
msgstr ""
-#: templates/js/translated/sales_order.js:405
+#: templates/js/translated/sales_order.js:417
msgid "No stock items have been allocated to pending shipments"
msgstr ""
-#: templates/js/translated/sales_order.js:415
+#: templates/js/translated/sales_order.js:427
msgid "Complete Shipments"
msgstr ""
-#: templates/js/translated/sales_order.js:437
+#: templates/js/translated/sales_order.js:449
msgid "Skip"
msgstr ""
-#: templates/js/translated/sales_order.js:498
+#: templates/js/translated/sales_order.js:510
msgid "This order has line items which have not been completed."
msgstr ""
-#: templates/js/translated/sales_order.js:520
+#: templates/js/translated/sales_order.js:532
msgid "Issue this Sales Order?"
msgstr ""
-#: templates/js/translated/sales_order.js:525
+#: templates/js/translated/sales_order.js:537
msgid "Issue Sales Order"
msgstr ""
-#: templates/js/translated/sales_order.js:544
+#: templates/js/translated/sales_order.js:556
msgid "Cancel Sales Order"
msgstr ""
-#: templates/js/translated/sales_order.js:549
+#: templates/js/translated/sales_order.js:561
msgid "Cancelling this order means that the order will no longer be editable."
msgstr ""
-#: templates/js/translated/sales_order.js:603
+#: templates/js/translated/sales_order.js:615
msgid "Create New Shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:713
+#: templates/js/translated/sales_order.js:725
msgid "No sales orders found"
msgstr ""
-#: templates/js/translated/sales_order.js:896
+#: templates/js/translated/sales_order.js:908
msgid "Edit shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:899
+#: templates/js/translated/sales_order.js:911
msgid "Complete shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:904
+#: templates/js/translated/sales_order.js:916
msgid "Delete shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:921
+#: templates/js/translated/sales_order.js:933
msgid "Edit Shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:936
+#: templates/js/translated/sales_order.js:948
msgid "Delete Shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:969
+#: templates/js/translated/sales_order.js:981
msgid "No matching shipments found"
msgstr ""
-#: templates/js/translated/sales_order.js:994
+#: templates/js/translated/sales_order.js:1006
msgid "Shipment Reference"
msgstr ""
-#: templates/js/translated/sales_order.js:1018
-#: templates/js/translated/sales_order.js:1515
+#: templates/js/translated/sales_order.js:1030
+#: templates/js/translated/sales_order.js:1527
msgid "Not shipped"
msgstr ""
-#: templates/js/translated/sales_order.js:1036
+#: templates/js/translated/sales_order.js:1048
msgid "Tracking"
msgstr ""
-#: templates/js/translated/sales_order.js:1040
+#: templates/js/translated/sales_order.js:1052
msgid "Invoice"
msgstr ""
-#: templates/js/translated/sales_order.js:1207
+#: templates/js/translated/sales_order.js:1219
msgid "Add Shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:1258
+#: templates/js/translated/sales_order.js:1270
msgid "Confirm stock allocation"
msgstr ""
-#: templates/js/translated/sales_order.js:1259
+#: templates/js/translated/sales_order.js:1271
msgid "Allocate Stock Items to Sales Order"
msgstr ""
-#: templates/js/translated/sales_order.js:1463
+#: templates/js/translated/sales_order.js:1475
msgid "No sales order allocations found"
msgstr ""
-#: templates/js/translated/sales_order.js:1555
+#: templates/js/translated/sales_order.js:1567
msgid "Edit Stock Allocation"
msgstr ""
-#: templates/js/translated/sales_order.js:1569
+#: templates/js/translated/sales_order.js:1581
msgid "Confirm Delete Operation"
msgstr ""
-#: templates/js/translated/sales_order.js:1570
+#: templates/js/translated/sales_order.js:1582
msgid "Delete Stock Allocation"
msgstr ""
-#: templates/js/translated/sales_order.js:1609
-#: templates/js/translated/sales_order.js:1696
-#: templates/js/translated/stock.js:1688
+#: templates/js/translated/sales_order.js:1621
+#: templates/js/translated/sales_order.js:1708
+#: templates/js/translated/stock.js:1687
msgid "Shipped to customer"
msgstr ""
-#: templates/js/translated/sales_order.js:1617
-#: templates/js/translated/sales_order.js:1705
+#: templates/js/translated/sales_order.js:1629
+#: templates/js/translated/sales_order.js:1717
msgid "Stock location not specified"
msgstr ""
-#: templates/js/translated/sales_order.js:1985
+#: templates/js/translated/sales_order.js:1997
msgid "Allocate serial numbers"
msgstr ""
-#: templates/js/translated/sales_order.js:1989
+#: templates/js/translated/sales_order.js:2001
msgid "Purchase stock"
msgstr ""
-#: templates/js/translated/sales_order.js:1998
-#: templates/js/translated/sales_order.js:2185
+#: templates/js/translated/sales_order.js:2010
+#: templates/js/translated/sales_order.js:2197
msgid "Calculate price"
msgstr ""
-#: templates/js/translated/sales_order.js:2012
+#: templates/js/translated/sales_order.js:2024
msgid "Cannot be deleted as items have been shipped"
msgstr ""
-#: templates/js/translated/sales_order.js:2015
+#: templates/js/translated/sales_order.js:2027
msgid "Cannot be deleted as items have been allocated"
msgstr ""
-#: templates/js/translated/sales_order.js:2086
+#: templates/js/translated/sales_order.js:2098
msgid "Allocate Serial Numbers"
msgstr ""
-#: templates/js/translated/sales_order.js:2193
+#: templates/js/translated/sales_order.js:2205
msgid "Update Unit Price"
msgstr ""
-#: templates/js/translated/search.js:312
+#: templates/js/translated/search.js:270
msgid "No results"
msgstr ""
-#: templates/js/translated/search.js:334 templates/search.html:25
+#: templates/js/translated/search.js:292 templates/search.html:25
msgid "Enter search query"
msgstr ""
-#: templates/js/translated/search.js:384
+#: templates/js/translated/search.js:342
msgid "result"
msgstr ""
-#: templates/js/translated/search.js:384
+#: templates/js/translated/search.js:342
msgid "results"
msgstr ""
-#: templates/js/translated/search.js:394
+#: templates/js/translated/search.js:352
msgid "Minimize results"
msgstr ""
-#: templates/js/translated/search.js:397
+#: templates/js/translated/search.js:355
msgid "Remove results"
msgstr ""
-#: templates/js/translated/stock.js:98
+#: templates/js/translated/stock.js:97
msgid "Serialize Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:129
+#: templates/js/translated/stock.js:128
msgid "Confirm Stock Serialization"
msgstr ""
-#: templates/js/translated/stock.js:138
+#: templates/js/translated/stock.js:137
msgid "Parent stock location"
msgstr ""
-#: templates/js/translated/stock.js:173
+#: templates/js/translated/stock.js:172
msgid "Edit Stock Location"
msgstr ""
-#: templates/js/translated/stock.js:188
+#: templates/js/translated/stock.js:187
msgid "New Stock Location"
msgstr ""
-#: templates/js/translated/stock.js:190
+#: templates/js/translated/stock.js:189
msgid "Create another location after this one"
msgstr ""
-#: templates/js/translated/stock.js:191
+#: templates/js/translated/stock.js:190
msgid "Stock location created"
msgstr ""
-#: templates/js/translated/stock.js:205
+#: templates/js/translated/stock.js:204
msgid "Are you sure you want to delete this stock location?"
msgstr ""
-#: templates/js/translated/stock.js:212
+#: templates/js/translated/stock.js:211
msgid "Move to parent stock location"
msgstr ""
-#: templates/js/translated/stock.js:221
+#: templates/js/translated/stock.js:220
msgid "Delete Stock Location"
msgstr ""
-#: templates/js/translated/stock.js:225
+#: templates/js/translated/stock.js:224
msgid "Action for stock items in this stock location"
msgstr ""
-#: templates/js/translated/stock.js:230
+#: templates/js/translated/stock.js:229
msgid "Action for sub-locations"
msgstr ""
-#: templates/js/translated/stock.js:284
+#: templates/js/translated/stock.js:283
msgid "This part cannot be serialized"
msgstr ""
-#: templates/js/translated/stock.js:320
+#: templates/js/translated/stock.js:319
msgid "Add given quantity as packs instead of individual items"
msgstr ""
-#: templates/js/translated/stock.js:329
+#: templates/js/translated/stock.js:328
msgid "Enter initial quantity for this stock item"
msgstr ""
-#: templates/js/translated/stock.js:335
+#: templates/js/translated/stock.js:334
msgid "Enter serial numbers for new stock (or leave blank)"
msgstr ""
-#: templates/js/translated/stock.js:406
+#: templates/js/translated/stock.js:405
msgid "Stock item duplicated"
msgstr ""
-#: templates/js/translated/stock.js:426
+#: templates/js/translated/stock.js:425
msgid "Duplicate Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:442
+#: templates/js/translated/stock.js:441
msgid "Are you sure you want to delete this stock item?"
msgstr ""
-#: templates/js/translated/stock.js:447
+#: templates/js/translated/stock.js:446
msgid "Delete Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:468
+#: templates/js/translated/stock.js:467
msgid "Edit Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:510
+#: templates/js/translated/stock.js:509
msgid "Create another item after this one"
msgstr ""
-#: templates/js/translated/stock.js:522
+#: templates/js/translated/stock.js:521
msgid "Created new stock item"
msgstr ""
-#: templates/js/translated/stock.js:535
+#: templates/js/translated/stock.js:534
msgid "Created multiple stock items"
msgstr ""
-#: templates/js/translated/stock.js:560
+#: templates/js/translated/stock.js:559
msgid "Find Serial Number"
msgstr ""
-#: templates/js/translated/stock.js:564 templates/js/translated/stock.js:565
+#: templates/js/translated/stock.js:563 templates/js/translated/stock.js:564
msgid "Enter serial number"
msgstr ""
-#: templates/js/translated/stock.js:581
+#: templates/js/translated/stock.js:580
msgid "Enter a serial number"
msgstr ""
-#: templates/js/translated/stock.js:601
+#: templates/js/translated/stock.js:600
msgid "No matching serial number"
msgstr ""
-#: templates/js/translated/stock.js:610
+#: templates/js/translated/stock.js:609
msgid "More than one matching result found"
msgstr ""
-#: templates/js/translated/stock.js:718
+#: templates/js/translated/stock.js:717
msgid "Confirm stock assignment"
msgstr ""
-#: templates/js/translated/stock.js:719
+#: templates/js/translated/stock.js:718
msgid "Assign Stock to Customer"
msgstr ""
-#: templates/js/translated/stock.js:796
+#: templates/js/translated/stock.js:795
msgid "Warning: Merge operation cannot be reversed"
msgstr ""
-#: templates/js/translated/stock.js:797
+#: templates/js/translated/stock.js:796
msgid "Some information will be lost when merging stock items"
msgstr ""
-#: templates/js/translated/stock.js:799
+#: templates/js/translated/stock.js:798
msgid "Stock transaction history will be deleted for merged items"
msgstr ""
-#: templates/js/translated/stock.js:800
+#: templates/js/translated/stock.js:799
msgid "Supplier part information will be deleted for merged items"
msgstr ""
-#: templates/js/translated/stock.js:891
+#: templates/js/translated/stock.js:890
msgid "Confirm stock item merge"
msgstr ""
-#: templates/js/translated/stock.js:892
+#: templates/js/translated/stock.js:891
msgid "Merge Stock Items"
msgstr ""
-#: templates/js/translated/stock.js:987
+#: templates/js/translated/stock.js:986
msgid "Transfer Stock"
msgstr ""
-#: templates/js/translated/stock.js:988
+#: templates/js/translated/stock.js:987
msgid "Move"
msgstr ""
-#: templates/js/translated/stock.js:994
+#: templates/js/translated/stock.js:993
msgid "Count Stock"
msgstr ""
-#: templates/js/translated/stock.js:995
+#: templates/js/translated/stock.js:994
msgid "Count"
msgstr ""
-#: templates/js/translated/stock.js:999
+#: templates/js/translated/stock.js:998
msgid "Remove Stock"
msgstr ""
-#: templates/js/translated/stock.js:1000
+#: templates/js/translated/stock.js:999
msgid "Take"
msgstr ""
-#: templates/js/translated/stock.js:1004
+#: templates/js/translated/stock.js:1003
msgid "Add Stock"
msgstr ""
-#: templates/js/translated/stock.js:1005 users/models.py:243
+#: templates/js/translated/stock.js:1004 users/models.py:249
msgid "Add"
msgstr ""
-#: templates/js/translated/stock.js:1009
+#: templates/js/translated/stock.js:1008
msgid "Delete Stock"
msgstr ""
-#: templates/js/translated/stock.js:1106
+#: templates/js/translated/stock.js:1105
msgid "Quantity cannot be adjusted for serialized stock"
msgstr ""
-#: templates/js/translated/stock.js:1106
+#: templates/js/translated/stock.js:1105
msgid "Specify stock quantity"
msgstr ""
-#: templates/js/translated/stock.js:1140
+#: templates/js/translated/stock.js:1139 templates/js/translated/stock.js:3151
msgid "Select Stock Items"
msgstr ""
-#: templates/js/translated/stock.js:1141
-msgid "You must select at least one available stock item"
+#: templates/js/translated/stock.js:1140
+msgid "Select at least one available stock item"
msgstr ""
-#: templates/js/translated/stock.js:1168
+#: templates/js/translated/stock.js:1167
msgid "Confirm stock adjustment"
msgstr ""
-#: templates/js/translated/stock.js:1304
+#: templates/js/translated/stock.js:1303
msgid "PASS"
msgstr ""
-#: templates/js/translated/stock.js:1306
+#: templates/js/translated/stock.js:1305
msgid "FAIL"
msgstr ""
-#: templates/js/translated/stock.js:1311
+#: templates/js/translated/stock.js:1310
msgid "NO RESULT"
msgstr ""
-#: templates/js/translated/stock.js:1373
+#: templates/js/translated/stock.js:1372
msgid "Pass test"
msgstr ""
-#: templates/js/translated/stock.js:1376
+#: templates/js/translated/stock.js:1375
msgid "Add test result"
msgstr ""
-#: templates/js/translated/stock.js:1400
+#: templates/js/translated/stock.js:1399
msgid "No test results found"
msgstr ""
-#: templates/js/translated/stock.js:1464
+#: templates/js/translated/stock.js:1463
msgid "Test Date"
msgstr ""
-#: templates/js/translated/stock.js:1626
+#: templates/js/translated/stock.js:1625
msgid "Edit Test Result"
msgstr ""
-#: templates/js/translated/stock.js:1648
+#: templates/js/translated/stock.js:1647
msgid "Delete Test Result"
msgstr ""
-#: templates/js/translated/stock.js:1680
+#: templates/js/translated/stock.js:1679
msgid "In production"
msgstr ""
-#: templates/js/translated/stock.js:1684
+#: templates/js/translated/stock.js:1683
msgid "Installed in Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:1692
+#: templates/js/translated/stock.js:1691
msgid "Assigned to Sales Order"
msgstr ""
-#: templates/js/translated/stock.js:1698
+#: templates/js/translated/stock.js:1697
msgid "No stock location set"
msgstr ""
-#: templates/js/translated/stock.js:1746
+#: templates/js/translated/stock.js:1753
+msgid "Change stock status"
+msgstr ""
+
+#: templates/js/translated/stock.js:1762
+msgid "Merge stock"
+msgstr ""
+
+#: templates/js/translated/stock.js:1811
+msgid "Delete stock"
+msgstr ""
+
+#: templates/js/translated/stock.js:1866
msgid "stock items"
msgstr ""
-#: templates/js/translated/stock.js:1850
+#: templates/js/translated/stock.js:1871
+msgid "Scan to location"
+msgstr ""
+
+#: templates/js/translated/stock.js:1882
+msgid "Stock Actions"
+msgstr ""
+
+#: templates/js/translated/stock.js:1929
+msgid "Load installed items"
+msgstr ""
+
+#: templates/js/translated/stock.js:2007
msgid "Stock item is in production"
msgstr ""
-#: templates/js/translated/stock.js:1855
+#: templates/js/translated/stock.js:2012
msgid "Stock item assigned to sales order"
msgstr ""
-#: templates/js/translated/stock.js:1858
+#: templates/js/translated/stock.js:2015
msgid "Stock item assigned to customer"
msgstr ""
-#: templates/js/translated/stock.js:1861
+#: templates/js/translated/stock.js:2018
msgid "Serialized stock item has been allocated"
msgstr ""
-#: templates/js/translated/stock.js:1863
+#: templates/js/translated/stock.js:2020
msgid "Stock item has been fully allocated"
msgstr ""
-#: templates/js/translated/stock.js:1865
+#: templates/js/translated/stock.js:2022
msgid "Stock item has been partially allocated"
msgstr ""
-#: templates/js/translated/stock.js:1868
+#: templates/js/translated/stock.js:2025
msgid "Stock item has been installed in another item"
msgstr ""
-#: templates/js/translated/stock.js:1870
+#: templates/js/translated/stock.js:2027
msgid "Stock item has been consumed by a build order"
msgstr ""
-#: templates/js/translated/stock.js:1874
+#: templates/js/translated/stock.js:2031
msgid "Stock item has expired"
msgstr ""
-#: templates/js/translated/stock.js:1876
+#: templates/js/translated/stock.js:2033
msgid "Stock item will expire soon"
msgstr ""
-#: templates/js/translated/stock.js:1881
+#: templates/js/translated/stock.js:2038
msgid "Stock item has been rejected"
msgstr ""
-#: templates/js/translated/stock.js:1883
+#: templates/js/translated/stock.js:2040
msgid "Stock item is lost"
msgstr ""
-#: templates/js/translated/stock.js:1885
+#: templates/js/translated/stock.js:2042
msgid "Stock item is destroyed"
msgstr ""
-#: templates/js/translated/stock.js:1889
-#: templates/js/translated/table_filters.js:296
+#: templates/js/translated/stock.js:2046
+#: templates/js/translated/table_filters.js:302
msgid "Depleted"
msgstr ""
-#: templates/js/translated/stock.js:2031
+#: templates/js/translated/stock.js:2188
msgid "Supplier part not specified"
msgstr ""
-#: templates/js/translated/stock.js:2078
+#: templates/js/translated/stock.js:2235
msgid "Stock Value"
msgstr ""
-#: templates/js/translated/stock.js:2170
+#: templates/js/translated/stock.js:2358
msgid "No stock items matching query"
msgstr ""
-#: templates/js/translated/stock.js:2319
+#: templates/js/translated/stock.js:2450
msgid "stock locations"
msgstr ""
-#: templates/js/translated/stock.js:2476
+#: templates/js/translated/stock.js:2607
msgid "Load Subloactions"
msgstr ""
-#: templates/js/translated/stock.js:2583
+#: templates/js/translated/stock.js:2714
msgid "Details"
msgstr ""
-#: templates/js/translated/stock.js:2587
+#: templates/js/translated/stock.js:2718
msgid "No changes"
msgstr ""
-#: templates/js/translated/stock.js:2599
+#: templates/js/translated/stock.js:2730
msgid "Part information unavailable"
msgstr ""
-#: templates/js/translated/stock.js:2621
+#: templates/js/translated/stock.js:2752
msgid "Location no longer exists"
msgstr ""
-#: templates/js/translated/stock.js:2638
+#: templates/js/translated/stock.js:2769
msgid "Build order no longer exists"
msgstr ""
-#: templates/js/translated/stock.js:2653
+#: templates/js/translated/stock.js:2784
msgid "Purchase order no longer exists"
msgstr ""
-#: templates/js/translated/stock.js:2670
+#: templates/js/translated/stock.js:2801
msgid "Sales Order no longer exists"
msgstr ""
-#: templates/js/translated/stock.js:2687
+#: templates/js/translated/stock.js:2818
msgid "Return Order no longer exists"
msgstr ""
-#: templates/js/translated/stock.js:2706
+#: templates/js/translated/stock.js:2837
msgid "Customer no longer exists"
msgstr ""
-#: templates/js/translated/stock.js:2724
+#: templates/js/translated/stock.js:2855
msgid "Stock item no longer exists"
msgstr ""
-#: templates/js/translated/stock.js:2742
+#: templates/js/translated/stock.js:2873
msgid "Added"
msgstr ""
-#: templates/js/translated/stock.js:2750
+#: templates/js/translated/stock.js:2881
msgid "Removed"
msgstr ""
-#: templates/js/translated/stock.js:2826
+#: templates/js/translated/stock.js:2953
msgid "No installed items"
msgstr ""
-#: templates/js/translated/stock.js:2876 templates/js/translated/stock.js:2911
+#: templates/js/translated/stock.js:3003 templates/js/translated/stock.js:3038
msgid "Uninstall Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:2929
+#: templates/js/translated/stock.js:3056
msgid "Select stock item to uninstall"
msgstr ""
-#: templates/js/translated/stock.js:2950
+#: templates/js/translated/stock.js:3077
msgid "Install another stock item into this item"
msgstr ""
-#: templates/js/translated/stock.js:2951
+#: templates/js/translated/stock.js:3078
msgid "Stock items can only be installed if they meet the following criteria"
msgstr ""
-#: templates/js/translated/stock.js:2953
+#: templates/js/translated/stock.js:3080
msgid "The Stock Item links to a Part which is the BOM for this Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:2954
+#: templates/js/translated/stock.js:3081
msgid "The Stock Item is currently available in stock"
msgstr ""
-#: templates/js/translated/stock.js:2955
+#: templates/js/translated/stock.js:3082
msgid "The Stock Item is not already installed in another item"
msgstr ""
-#: templates/js/translated/stock.js:2956
+#: templates/js/translated/stock.js:3083
msgid "The Stock Item is tracked by either a batch code or serial number"
msgstr ""
-#: templates/js/translated/stock.js:2969
+#: templates/js/translated/stock.js:3096
msgid "Select part to install"
msgstr ""
+#: templates/js/translated/stock.js:3152
+msgid "Select one or more stock items"
+msgstr ""
+
+#: templates/js/translated/stock.js:3165
+msgid "Selected stock items"
+msgstr ""
+
+#: templates/js/translated/stock.js:3169
+msgid "Change Stock Status"
+msgstr ""
+
#: templates/js/translated/table_filters.js:50
msgid "Has project code"
msgstr ""
-#: templates/js/translated/table_filters.js:59
-#: templates/js/translated/table_filters.js:518
-#: templates/js/translated/table_filters.js:530
-#: templates/js/translated/table_filters.js:571
+#: templates/js/translated/table_filters.js:65
+#: templates/js/translated/table_filters.js:540
+#: templates/js/translated/table_filters.js:552
+#: templates/js/translated/table_filters.js:593
msgid "Order status"
msgstr ""
-#: templates/js/translated/table_filters.js:64
-#: templates/js/translated/table_filters.js:535
-#: templates/js/translated/table_filters.js:561
-#: templates/js/translated/table_filters.js:576
+#: templates/js/translated/table_filters.js:70
+#: templates/js/translated/table_filters.js:557
+#: templates/js/translated/table_filters.js:583
+#: templates/js/translated/table_filters.js:598
msgid "Outstanding"
msgstr ""
-#: templates/js/translated/table_filters.js:72
-#: templates/js/translated/table_filters.js:458
-#: templates/js/translated/table_filters.js:543
-#: templates/js/translated/table_filters.js:584
+#: templates/js/translated/table_filters.js:78
+#: templates/js/translated/table_filters.js:464
+#: templates/js/translated/table_filters.js:565
+#: templates/js/translated/table_filters.js:606
msgid "Assigned to me"
msgstr ""
-#: templates/js/translated/table_filters.js:128
+#: templates/js/translated/table_filters.js:134
msgid "Trackable Part"
msgstr ""
-#: templates/js/translated/table_filters.js:132
+#: templates/js/translated/table_filters.js:138
msgid "Assembled Part"
msgstr ""
-#: templates/js/translated/table_filters.js:136
+#: templates/js/translated/table_filters.js:142
msgid "Has Available Stock"
msgstr ""
-#: templates/js/translated/table_filters.js:152
+#: templates/js/translated/table_filters.js:158
msgid "Allow Variant Stock"
msgstr ""
-#: templates/js/translated/table_filters.js:164
-#: templates/js/translated/table_filters.js:692
+#: templates/js/translated/table_filters.js:170
+#: templates/js/translated/table_filters.js:714
msgid "Has Pricing"
msgstr ""
-#: templates/js/translated/table_filters.js:204
-#: templates/js/translated/table_filters.js:291
+#: templates/js/translated/table_filters.js:210
+#: templates/js/translated/table_filters.js:297
msgid "Include sublocations"
msgstr ""
-#: templates/js/translated/table_filters.js:205
+#: templates/js/translated/table_filters.js:211
msgid "Include locations"
msgstr ""
-#: templates/js/translated/table_filters.js:224
-#: templates/js/translated/table_filters.js:225
-#: templates/js/translated/table_filters.js:624
+#: templates/js/translated/table_filters.js:230
+#: templates/js/translated/table_filters.js:231
+#: templates/js/translated/table_filters.js:646
msgid "Include subcategories"
msgstr ""
-#: templates/js/translated/table_filters.js:233
-#: templates/js/translated/table_filters.js:672
+#: templates/js/translated/table_filters.js:239
+#: templates/js/translated/table_filters.js:694
msgid "Subscribed"
msgstr ""
-#: templates/js/translated/table_filters.js:244
-#: templates/js/translated/table_filters.js:326
+#: templates/js/translated/table_filters.js:250
+#: templates/js/translated/table_filters.js:332
msgid "Is Serialized"
msgstr ""
-#: templates/js/translated/table_filters.js:247
-#: templates/js/translated/table_filters.js:333
+#: templates/js/translated/table_filters.js:253
+#: templates/js/translated/table_filters.js:339
msgid "Serial number GTE"
msgstr ""
-#: templates/js/translated/table_filters.js:248
-#: templates/js/translated/table_filters.js:334
+#: templates/js/translated/table_filters.js:254
+#: templates/js/translated/table_filters.js:340
msgid "Serial number greater than or equal to"
msgstr ""
-#: templates/js/translated/table_filters.js:251
-#: templates/js/translated/table_filters.js:337
+#: templates/js/translated/table_filters.js:257
+#: templates/js/translated/table_filters.js:343
msgid "Serial number LTE"
msgstr ""
-#: templates/js/translated/table_filters.js:252
-#: templates/js/translated/table_filters.js:338
+#: templates/js/translated/table_filters.js:258
+#: templates/js/translated/table_filters.js:344
msgid "Serial number less than or equal to"
msgstr ""
-#: templates/js/translated/table_filters.js:255
-#: templates/js/translated/table_filters.js:256
-#: templates/js/translated/table_filters.js:329
-#: templates/js/translated/table_filters.js:330
+#: templates/js/translated/table_filters.js:261
+#: templates/js/translated/table_filters.js:262
+#: templates/js/translated/table_filters.js:335
+#: templates/js/translated/table_filters.js:336
msgid "Serial number"
msgstr ""
-#: templates/js/translated/table_filters.js:260
-#: templates/js/translated/table_filters.js:351
+#: templates/js/translated/table_filters.js:266
+#: templates/js/translated/table_filters.js:357
msgid "Batch code"
msgstr ""
-#: templates/js/translated/table_filters.js:271
-#: templates/js/translated/table_filters.js:613
+#: templates/js/translated/table_filters.js:277
+#: templates/js/translated/table_filters.js:635
msgid "Active parts"
msgstr ""
-#: templates/js/translated/table_filters.js:272
+#: templates/js/translated/table_filters.js:278
msgid "Show stock for active parts"
msgstr ""
-#: templates/js/translated/table_filters.js:277
+#: templates/js/translated/table_filters.js:283
msgid "Part is an assembly"
msgstr ""
-#: templates/js/translated/table_filters.js:281
+#: templates/js/translated/table_filters.js:287
msgid "Is allocated"
msgstr ""
-#: templates/js/translated/table_filters.js:282
+#: templates/js/translated/table_filters.js:288
msgid "Item has been allocated"
msgstr ""
-#: templates/js/translated/table_filters.js:287
+#: templates/js/translated/table_filters.js:293
msgid "Stock is available for use"
msgstr ""
-#: templates/js/translated/table_filters.js:292
+#: templates/js/translated/table_filters.js:298
msgid "Include stock in sublocations"
msgstr ""
-#: templates/js/translated/table_filters.js:297
+#: templates/js/translated/table_filters.js:303
msgid "Show stock items which are depleted"
msgstr ""
-#: templates/js/translated/table_filters.js:302
+#: templates/js/translated/table_filters.js:308
msgid "Show items which are in stock"
msgstr ""
-#: templates/js/translated/table_filters.js:306
+#: templates/js/translated/table_filters.js:312
msgid "In Production"
msgstr ""
-#: templates/js/translated/table_filters.js:307
+#: templates/js/translated/table_filters.js:313
msgid "Show items which are in production"
msgstr ""
-#: templates/js/translated/table_filters.js:311
+#: templates/js/translated/table_filters.js:317
msgid "Include Variants"
msgstr ""
-#: templates/js/translated/table_filters.js:312
+#: templates/js/translated/table_filters.js:318
msgid "Include stock items for variant parts"
msgstr ""
-#: templates/js/translated/table_filters.js:316
+#: templates/js/translated/table_filters.js:322
msgid "Installed"
msgstr ""
-#: templates/js/translated/table_filters.js:317
+#: templates/js/translated/table_filters.js:323
msgid "Show stock items which are installed in another item"
msgstr ""
-#: templates/js/translated/table_filters.js:322
+#: templates/js/translated/table_filters.js:328
msgid "Show items which have been assigned to a customer"
msgstr ""
-#: templates/js/translated/table_filters.js:342
-#: templates/js/translated/table_filters.js:343
+#: templates/js/translated/table_filters.js:348
+#: templates/js/translated/table_filters.js:349
msgid "Stock status"
msgstr ""
-#: templates/js/translated/table_filters.js:346
+#: templates/js/translated/table_filters.js:352
msgid "Has batch code"
msgstr ""
-#: templates/js/translated/table_filters.js:354
-msgid "Tracked"
-msgstr ""
-
-#: templates/js/translated/table_filters.js:355
+#: templates/js/translated/table_filters.js:361
msgid "Stock item is tracked by either batch code or serial number"
msgstr ""
-#: templates/js/translated/table_filters.js:360
+#: templates/js/translated/table_filters.js:366
msgid "Has purchase price"
msgstr ""
-#: templates/js/translated/table_filters.js:361
+#: templates/js/translated/table_filters.js:367
msgid "Show stock items which have a purchase price set"
msgstr ""
-#: templates/js/translated/table_filters.js:365
+#: templates/js/translated/table_filters.js:371
msgid "Expiry Date before"
msgstr ""
-#: templates/js/translated/table_filters.js:369
+#: templates/js/translated/table_filters.js:375
msgid "Expiry Date after"
msgstr ""
-#: templates/js/translated/table_filters.js:382
+#: templates/js/translated/table_filters.js:388
msgid "Show stock items which have expired"
msgstr ""
-#: templates/js/translated/table_filters.js:388
+#: templates/js/translated/table_filters.js:394
msgid "Show stock which is close to expiring"
msgstr ""
-#: templates/js/translated/table_filters.js:402
+#: templates/js/translated/table_filters.js:408
msgid "Test Passed"
msgstr ""
-#: templates/js/translated/table_filters.js:406
+#: templates/js/translated/table_filters.js:412
msgid "Include Installed Items"
msgstr ""
-#: templates/js/translated/table_filters.js:445
+#: templates/js/translated/table_filters.js:451
msgid "Build status"
msgstr ""
-#: templates/js/translated/table_filters.js:625
+#: templates/js/translated/table_filters.js:647
msgid "Include parts in subcategories"
msgstr ""
-#: templates/js/translated/table_filters.js:630
+#: templates/js/translated/table_filters.js:652
msgid "Show active parts"
msgstr ""
-#: templates/js/translated/table_filters.js:638
+#: templates/js/translated/table_filters.js:660
msgid "Available stock"
msgstr ""
-#: templates/js/translated/table_filters.js:646
-#: templates/js/translated/table_filters.js:742
+#: templates/js/translated/table_filters.js:668
+#: templates/js/translated/table_filters.js:764
msgid "Has Units"
msgstr ""
-#: templates/js/translated/table_filters.js:647
+#: templates/js/translated/table_filters.js:669
msgid "Part has defined units"
msgstr ""
-#: templates/js/translated/table_filters.js:651
+#: templates/js/translated/table_filters.js:673
msgid "Has IPN"
msgstr ""
-#: templates/js/translated/table_filters.js:652
+#: templates/js/translated/table_filters.js:674
msgid "Part has internal part number"
msgstr ""
-#: templates/js/translated/table_filters.js:656
+#: templates/js/translated/table_filters.js:678
msgid "In stock"
msgstr ""
-#: templates/js/translated/table_filters.js:664
+#: templates/js/translated/table_filters.js:686
msgid "Purchasable"
msgstr ""
-#: templates/js/translated/table_filters.js:676
+#: templates/js/translated/table_filters.js:698
msgid "Has stocktake entries"
msgstr ""
-#: templates/js/translated/table_filters.js:738
+#: templates/js/translated/table_filters.js:760
msgid "Has Choices"
msgstr ""
@@ -12390,51 +12551,51 @@ msgstr ""
msgid "Select File Format"
msgstr ""
-#: templates/js/translated/tables.js:561
+#: templates/js/translated/tables.js:537
msgid "Loading data"
msgstr ""
-#: templates/js/translated/tables.js:564
+#: templates/js/translated/tables.js:540
msgid "rows per page"
msgstr ""
-#: templates/js/translated/tables.js:569
+#: templates/js/translated/tables.js:545
msgid "Showing all rows"
msgstr ""
-#: templates/js/translated/tables.js:571
+#: templates/js/translated/tables.js:547
msgid "Showing"
msgstr ""
-#: templates/js/translated/tables.js:571
+#: templates/js/translated/tables.js:547
msgid "to"
msgstr ""
-#: templates/js/translated/tables.js:571
+#: templates/js/translated/tables.js:547
msgid "of"
msgstr ""
-#: templates/js/translated/tables.js:571
+#: templates/js/translated/tables.js:547
msgid "rows"
msgstr ""
-#: templates/js/translated/tables.js:578
+#: templates/js/translated/tables.js:554
msgid "No matching results"
msgstr ""
-#: templates/js/translated/tables.js:581
+#: templates/js/translated/tables.js:557
msgid "Hide/Show pagination"
msgstr ""
-#: templates/js/translated/tables.js:587
+#: templates/js/translated/tables.js:563
msgid "Toggle"
msgstr ""
-#: templates/js/translated/tables.js:590
+#: templates/js/translated/tables.js:566
msgid "Columns"
msgstr ""
-#: templates/js/translated/tables.js:593
+#: templates/js/translated/tables.js:569
msgid "All"
msgstr ""
@@ -12616,50 +12777,6 @@ msgstr ""
msgid "Email settings not configured"
msgstr ""
-#: templates/stock_table.html:17
-msgid "Barcode Actions"
-msgstr ""
-
-#: templates/stock_table.html:28
-msgid "Stock Options"
-msgstr ""
-
-#: templates/stock_table.html:33
-msgid "Add to selected stock items"
-msgstr ""
-
-#: templates/stock_table.html:34
-msgid "Remove from selected stock items"
-msgstr ""
-
-#: templates/stock_table.html:35
-msgid "Stocktake selected stock items"
-msgstr ""
-
-#: templates/stock_table.html:36
-msgid "Move selected stock items"
-msgstr ""
-
-#: templates/stock_table.html:37
-msgid "Merge selected stock items"
-msgstr ""
-
-#: templates/stock_table.html:37
-msgid "Merge stock"
-msgstr ""
-
-#: templates/stock_table.html:38
-msgid "Order selected items"
-msgstr ""
-
-#: templates/stock_table.html:42
-msgid "Delete selected items"
-msgstr ""
-
-#: templates/stock_table.html:42
-msgid "Delete stock"
-msgstr ""
-
#: templates/yesnolabel.html:4
msgid "Yes"
msgstr "Ano"
@@ -12692,35 +12809,35 @@ msgstr "Oprávnění"
msgid "Important dates"
msgstr ""
-#: users/models.py:230
+#: users/models.py:236
msgid "Permission set"
msgstr "Nastavení oprávnění"
-#: users/models.py:238
+#: users/models.py:244
msgid "Group"
msgstr "Skupina"
-#: users/models.py:241
+#: users/models.py:247
msgid "View"
msgstr "Zobrazit"
-#: users/models.py:241
+#: users/models.py:247
msgid "Permission to view items"
msgstr "Oprávnění k zobrazení položek"
-#: users/models.py:243
+#: users/models.py:249
msgid "Permission to add items"
msgstr "Oprávnění přidat položky"
-#: users/models.py:245
+#: users/models.py:251
msgid "Change"
msgstr "Změnit"
-#: users/models.py:245
+#: users/models.py:251
msgid "Permissions to edit items"
msgstr "Oprávnění k úpravě položek"
-#: users/models.py:247
+#: users/models.py:253
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 809327568a..5dd5106846 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: 2023-06-09 00:32+0000\n"
-"PO-Revision-Date: 2023-06-09 10:27\n"
+"POT-Creation-Date: 2023-06-20 07:01+0000\n"
+"PO-Revision-Date: 2023-06-20 07:06\n"
"Last-Translator: \n"
"Language-Team: Danish\n"
"Language: da_DK\n"
@@ -49,26 +49,26 @@ msgstr "Fejloplysninger kan findes i admin panelet"
msgid "Enter date"
msgstr "Angiv dato"
-#: InvenTree/fields.py:206 InvenTree/models.py:766 build/serializers.py:427
-#: build/serializers.py:506 build/templates/build/sidebar.html:23
-#: company/models.py:597 company/templates/company/sidebar.html:35
-#: order/models.py:1089 order/templates/order/po_sidebar.html:11
+#: InvenTree/fields.py:206 InvenTree/models.py:766 build/serializers.py:435
+#: build/serializers.py:514 build/templates/build/sidebar.html:21
+#: company/models.py:746 company/templates/company/sidebar.html:37
+#: order/models.py:1102 order/templates/order/po_sidebar.html:11
#: order/templates/order/return_order_sidebar.html:9
#: order/templates/order/so_sidebar.html:17 part/admin.py:41
-#: part/models.py:3005 part/templates/part/part_sidebar.html:63
+#: part/models.py:3039 part/templates/part/part_sidebar.html:63
#: report/templates/report/inventree_build_order_base.html:172
#: stock/admin.py:121 stock/models.py:2160 stock/models.py:2268
-#: stock/serializers.py:342 stock/serializers.py:475 stock/serializers.py:556
-#: stock/serializers.py:839 stock/serializers.py:938 stock/serializers.py:1070
-#: stock/templates/stock/stock_sidebar.html:25
-#: templates/js/translated/barcode.js:143 templates/js/translated/bom.js:1224
-#: templates/js/translated/company.js:1294 templates/js/translated/order.js:347
-#: templates/js/translated/part.js:1054
-#: templates/js/translated/purchase_order.js:2168
-#: templates/js/translated/return_order.js:760
-#: templates/js/translated/sales_order.js:1055
-#: templates/js/translated/sales_order.js:1959
-#: templates/js/translated/stock.js:1460 templates/js/translated/stock.js:2164
+#: stock/serializers.py:408 stock/serializers.py:542 stock/serializers.py:623
+#: stock/serializers.py:681 stock/serializers.py:956 stock/serializers.py:1055
+#: stock/serializers.py:1187 stock/templates/stock/stock_sidebar.html:25
+#: templates/js/translated/barcode.js:143 templates/js/translated/bom.js:1244
+#: templates/js/translated/company.js:1715 templates/js/translated/order.js:347
+#: templates/js/translated/part.js:1053
+#: templates/js/translated/purchase_order.js:2178
+#: templates/js/translated/return_order.js:772
+#: templates/js/translated/sales_order.js:1067
+#: templates/js/translated/sales_order.js:1971
+#: templates/js/translated/stock.js:1459 templates/js/translated/stock.js:2321
msgid "Notes"
msgstr "Bemærkninger"
@@ -81,47 +81,51 @@ msgstr "Værdi '{name}' vises ikke i mønsterformat"
msgid "Provided value does not match required pattern: "
msgstr "Den angivne værdi matcher ikke det påkrævede mønster: "
-#: InvenTree/forms.py:145
+#: InvenTree/forms.py:147
msgid "Enter password"
msgstr "Indtast adgangskode"
-#: InvenTree/forms.py:146
+#: InvenTree/forms.py:148
msgid "Enter new password"
msgstr "Indtast ny adgangskode"
-#: InvenTree/forms.py:155
+#: InvenTree/forms.py:157
msgid "Confirm password"
msgstr "Bekræft adgangskode"
-#: InvenTree/forms.py:156
+#: InvenTree/forms.py:158
msgid "Confirm new password"
msgstr "Bekræft ny adgangskode"
-#: InvenTree/forms.py:160
+#: InvenTree/forms.py:162
msgid "Old password"
msgstr "Gammel adgangskode"
-#: InvenTree/forms.py:179
+#: InvenTree/forms.py:181
msgid "Email (again)"
msgstr "E-mail (igen)"
-#: InvenTree/forms.py:183
+#: InvenTree/forms.py:185
msgid "Email address confirmation"
msgstr "Bekræftelse af e-mailadresse"
-#: InvenTree/forms.py:204
+#: InvenTree/forms.py:206
msgid "You must type the same email each time."
msgstr "Du skal indtaste den samme e-mail hver gang."
-#: InvenTree/forms.py:230 InvenTree/forms.py:236
+#: InvenTree/forms.py:237 InvenTree/forms.py:243
msgid "The provided primary email address is not valid."
msgstr "Den indtastede email adresse er ikke gyldig."
-#: InvenTree/forms.py:242
+#: InvenTree/forms.py:249
msgid "The provided email domain is not approved."
msgstr "Det angivne e-mail domæne er ikke godkendt."
-#: InvenTree/helpers.py:462 order/models.py:442 order/models.py:611
+#: InvenTree/forms.py:345
+msgid "Registration is disabled."
+msgstr ""
+
+#: InvenTree/helpers.py:462 order/models.py:455 order/models.py:624
msgid "Invalid quantity provided"
msgstr "Ugyldigt antal angivet"
@@ -239,7 +243,7 @@ msgstr "Manglende eksternt link"
#: InvenTree/models.py:486 stock/models.py:2262
#: templates/js/translated/attachment.js:119
-#: templates/js/translated/attachment.js:306
+#: templates/js/translated/attachment.js:316
msgid "Attachment"
msgstr "Vedhæftning"
@@ -247,29 +251,30 @@ msgstr "Vedhæftning"
msgid "Select file to attach"
msgstr "Vælg fil, der skal vedhæftes"
-#: InvenTree/models.py:493 common/models.py:2695 company/models.py:132
-#: company/models.py:306 company/models.py:584 order/models.py:236
-#: order/models.py:1093 order/models.py:1453 part/admin.py:39
-#: part/models.py:901 part/templates/part/part_scheduling.html:11
+#: InvenTree/models.py:493 common/models.py:2681 company/models.py:128
+#: company/models.py:381 company/models.py:455 company/models.py:733
+#: order/models.py:240 order/models.py:1106 order/models.py:1466
+#: part/admin.py:39 part/models.py:902
+#: part/templates/part/part_scheduling.html:11
#: report/templates/report/inventree_build_order_base.html:164
-#: stock/admin.py:120 templates/js/translated/company.js:977
-#: templates/js/translated/company.js:1283 templates/js/translated/order.js:351
-#: templates/js/translated/part.js:2316
-#: templates/js/translated/purchase_order.js:2008
-#: templates/js/translated/purchase_order.js:2172
-#: templates/js/translated/return_order.js:764
-#: templates/js/translated/sales_order.js:1044
-#: templates/js/translated/sales_order.js:1964
+#: stock/admin.py:120 templates/js/translated/company.js:1350
+#: templates/js/translated/company.js:1704 templates/js/translated/order.js:351
+#: templates/js/translated/part.js:2392
+#: templates/js/translated/purchase_order.js:2018
+#: templates/js/translated/purchase_order.js:2182
+#: templates/js/translated/return_order.js:776
+#: templates/js/translated/sales_order.js:1056
+#: templates/js/translated/sales_order.js:1976
msgid "Link"
msgstr "Link"
-#: InvenTree/models.py:494 build/models.py:291 part/models.py:902
+#: InvenTree/models.py:494 build/models.py:295 part/models.py:903
#: stock/models.py:735
msgid "Link to external URL"
msgstr "Link til ekstern URL"
#: InvenTree/models.py:497 templates/js/translated/attachment.js:120
-#: templates/js/translated/attachment.js:321
+#: templates/js/translated/attachment.js:331
msgid "Comment"
msgstr "Kommentar"
@@ -277,13 +282,13 @@ msgstr "Kommentar"
msgid "File comment"
msgstr "Fil kommentar"
-#: InvenTree/models.py:503 InvenTree/models.py:504 common/models.py:2154
-#: common/models.py:2155 common/models.py:2368 common/models.py:2369
-#: common/models.py:2625 common/models.py:2626 part/models.py:3013
-#: part/models.py:3101 part/models.py:3180 part/models.py:3200
-#: plugin/models.py:217 plugin/models.py:218
+#: InvenTree/models.py:503 InvenTree/models.py:504 common/models.py:2140
+#: common/models.py:2141 common/models.py:2354 common/models.py:2355
+#: common/models.py:2611 common/models.py:2612 part/models.py:3047
+#: part/models.py:3135 part/models.py:3214 part/models.py:3234
+#: plugin/models.py:218 plugin/models.py:219
#: report/templates/report/inventree_test_report_base.html:105
-#: templates/js/translated/stock.js:2773
+#: templates/js/translated/stock.js:2904
msgid "User"
msgstr "Bruger"
@@ -324,53 +329,54 @@ msgstr ""
msgid "Invalid choice"
msgstr "Ugyldigt valg"
-#: InvenTree/models.py:648 InvenTree/models.py:649 common/models.py:2354
-#: company/models.py:390 label/models.py:103 part/models.py:847
-#: part/models.py:3400 plugin/models.py:41 report/models.py:160
+#: InvenTree/models.py:648 InvenTree/models.py:649 common/models.py:2340
+#: company/models.py:539 label/models.py:111 part/models.py:848
+#: part/models.py:3434 plugin/models.py:42 report/models.py:160
#: templates/InvenTree/settings/mixins/urls.html:13
#: templates/InvenTree/settings/notifications.html:17
-#: templates/InvenTree/settings/plugin.html:80
+#: templates/InvenTree/settings/plugin.html:74
#: templates/InvenTree/settings/plugin_settings.html:22
-#: templates/js/translated/company.js:658
-#: templates/js/translated/company.js:706
-#: templates/js/translated/company.js:871
-#: templates/js/translated/company.js:1071 templates/js/translated/part.js:1160
-#: templates/js/translated/part.js:1447 templates/js/translated/part.js:1583
-#: templates/js/translated/part.js:2699 templates/js/translated/stock.js:2464
+#: templates/js/translated/company.js:665
+#: templates/js/translated/company.js:713
+#: templates/js/translated/company.js:940
+#: templates/js/translated/company.js:1196
+#: templates/js/translated/company.js:1444 templates/js/translated/part.js:1159
+#: templates/js/translated/part.js:1446 templates/js/translated/part.js:1582
+#: templates/js/translated/part.js:2684 templates/js/translated/stock.js:2595
msgid "Name"
msgstr "Navn"
-#: InvenTree/models.py:655 build/models.py:164
+#: InvenTree/models.py:655 build/models.py:168
#: build/templates/build/detail.html:24 common/models.py:111
-#: company/models.py:312 company/models.py:590
+#: company/models.py:461 company/models.py:739
#: company/templates/company/company_base.html:72
#: company/templates/company/manufacturer_part.html:75
-#: company/templates/company/supplier_part.html:108 label/models.py:110
-#: order/models.py:232 order/models.py:1117 part/admin.py:194 part/admin.py:276
-#: part/models.py:869 part/models.py:3416 part/templates/part/category.html:81
+#: company/templates/company/supplier_part.html:108 label/models.py:118
+#: order/models.py:232 order/models.py:1130 part/admin.py:194 part/admin.py:276
+#: part/models.py:870 part/models.py:3450 part/templates/part/category.html:81
#: part/templates/part/part_base.html:172
#: part/templates/part/part_scheduling.html:12 report/models.py:173
-#: report/models.py:587 report/models.py:631
+#: report/models.py:589 report/models.py:633
#: report/templates/report/inventree_build_order_base.html:117
#: stock/admin.py:41 stock/templates/stock/location.html:123
#: templates/InvenTree/settings/notifications.html:19
#: templates/InvenTree/settings/plugin_settings.html:27
#: templates/InvenTree/settings/settings_staff_js.html:75
-#: templates/js/translated/bom.js:632 templates/js/translated/bom.js:933
-#: templates/js/translated/build.js:2857 templates/js/translated/company.js:510
-#: templates/js/translated/company.js:988
-#: templates/js/translated/company.js:1251 templates/js/translated/order.js:298
-#: templates/js/translated/part.js:1212 templates/js/translated/part.js:1456
-#: templates/js/translated/part.js:1594 templates/js/translated/part.js:1933
-#: templates/js/translated/part.js:2247 templates/js/translated/part.js:2735
-#: templates/js/translated/part.js:2826
-#: templates/js/translated/purchase_order.js:1666
-#: templates/js/translated/purchase_order.js:1812
-#: templates/js/translated/purchase_order.js:1990
-#: templates/js/translated/return_order.js:302
-#: templates/js/translated/sales_order.js:790
-#: templates/js/translated/stock.js:1439 templates/js/translated/stock.js:1817
-#: templates/js/translated/stock.js:2496 templates/js/translated/stock.js:2568
+#: templates/js/translated/bom.js:633 templates/js/translated/bom.js:951
+#: templates/js/translated/build.js:2062 templates/js/translated/company.js:517
+#: templates/js/translated/company.js:1361
+#: templates/js/translated/company.js:1672 templates/js/translated/index.js:114
+#: templates/js/translated/order.js:298 templates/js/translated/part.js:1211
+#: templates/js/translated/part.js:1455 templates/js/translated/part.js:1593
+#: templates/js/translated/part.js:1932 templates/js/translated/part.js:2323
+#: templates/js/translated/part.js:2720 templates/js/translated/part.js:2811
+#: templates/js/translated/purchase_order.js:1681
+#: templates/js/translated/purchase_order.js:1827
+#: templates/js/translated/purchase_order.js:2000
+#: templates/js/translated/return_order.js:314
+#: templates/js/translated/sales_order.js:802
+#: templates/js/translated/stock.js:1438 templates/js/translated/stock.js:1974
+#: templates/js/translated/stock.js:2627 templates/js/translated/stock.js:2699
msgid "Description"
msgstr "Beskrivelse"
@@ -383,7 +389,7 @@ msgid "parent"
msgstr "overordnet"
#: InvenTree/models.py:671 InvenTree/models.py:672
-#: templates/js/translated/part.js:2744 templates/js/translated/stock.js:2505
+#: templates/js/translated/part.js:2729 templates/js/translated/stock.js:2636
msgid "Path"
msgstr "Sti"
@@ -419,12 +425,12 @@ msgstr "Serverfejl"
msgid "An error has been logged by the server."
msgstr "En fejl blev logget af serveren."
-#: InvenTree/serializers.py:60 part/models.py:3897
+#: InvenTree/serializers.py:60 part/models.py:3941
msgid "Must be a valid number"
msgstr "Skal være et gyldigt tal"
-#: InvenTree/serializers.py:90 company/models.py:154
-#: company/templates/company/company_base.html:107 part/models.py:2852
+#: InvenTree/serializers.py:90 company/models.py:150
+#: company/templates/company/company_base.html:107 part/models.py:2886
#: templates/InvenTree/settings/settings_staff_js.html:44
#: templates/currency_data.html:5
msgid "Currency"
@@ -497,130 +503,130 @@ 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:714
+#: InvenTree/settings.py:741
msgid "Czech"
msgstr "Tjekkisk"
-#: InvenTree/settings.py:715
+#: InvenTree/settings.py:742
msgid "Danish"
msgstr "Dansk"
-#: InvenTree/settings.py:716
+#: InvenTree/settings.py:743
msgid "German"
msgstr "Tysk"
-#: InvenTree/settings.py:717
+#: InvenTree/settings.py:744
msgid "Greek"
msgstr "Græsk"
-#: InvenTree/settings.py:718
+#: InvenTree/settings.py:745
msgid "English"
msgstr "Engelsk"
-#: InvenTree/settings.py:719
+#: InvenTree/settings.py:746
msgid "Spanish"
msgstr "Spansk"
-#: InvenTree/settings.py:720
+#: InvenTree/settings.py:747
msgid "Spanish (Mexican)"
msgstr "Spansk (Mexikansk)"
-#: InvenTree/settings.py:721
+#: InvenTree/settings.py:748
msgid "Farsi / Persian"
msgstr "Farsi / Persisk"
-#: InvenTree/settings.py:722
+#: InvenTree/settings.py:749
msgid "Finnish"
msgstr ""
-#: InvenTree/settings.py:723
+#: InvenTree/settings.py:750
msgid "French"
msgstr "Fransk"
-#: InvenTree/settings.py:724
+#: InvenTree/settings.py:751
msgid "Hebrew"
msgstr "Hebraisk"
-#: InvenTree/settings.py:725
+#: InvenTree/settings.py:752
msgid "Hungarian"
msgstr "Ungarsk"
-#: InvenTree/settings.py:726
+#: InvenTree/settings.py:753
msgid "Italian"
msgstr "Italiensk"
-#: InvenTree/settings.py:727
+#: InvenTree/settings.py:754
msgid "Japanese"
msgstr "Japansk"
-#: InvenTree/settings.py:728
+#: InvenTree/settings.py:755
msgid "Korean"
msgstr "Koreansk"
-#: InvenTree/settings.py:729
+#: InvenTree/settings.py:756
msgid "Dutch"
msgstr "Hollandsk"
-#: InvenTree/settings.py:730
+#: InvenTree/settings.py:757
msgid "Norwegian"
msgstr "Norsk"
-#: InvenTree/settings.py:731
+#: InvenTree/settings.py:758
msgid "Polish"
msgstr "Polsk"
-#: InvenTree/settings.py:732
+#: InvenTree/settings.py:759
msgid "Portuguese"
msgstr "Portugisisk"
-#: InvenTree/settings.py:733
+#: InvenTree/settings.py:760
msgid "Portuguese (Brazilian)"
msgstr "Portugisisk (Brasilien)"
-#: InvenTree/settings.py:734
+#: InvenTree/settings.py:761
msgid "Russian"
msgstr "Russisk"
-#: InvenTree/settings.py:735
+#: InvenTree/settings.py:762
msgid "Slovenian"
msgstr "Slovensk"
-#: InvenTree/settings.py:736
+#: InvenTree/settings.py:763
msgid "Swedish"
msgstr "Svensk"
-#: InvenTree/settings.py:737
+#: InvenTree/settings.py:764
msgid "Thai"
msgstr "Thailandsk"
-#: InvenTree/settings.py:738
+#: InvenTree/settings.py:765
msgid "Turkish"
msgstr "Tyrkisk"
-#: InvenTree/settings.py:739
+#: InvenTree/settings.py:766
msgid "Vietnamese"
msgstr "Vietnamesisk"
-#: InvenTree/settings.py:740
+#: InvenTree/settings.py:767
msgid "Chinese"
msgstr "Kinesisk"
-#: InvenTree/status.py:61 part/serializers.py:878
+#: InvenTree/status.py:68 part/serializers.py:940
msgid "Background worker check failed"
msgstr "Kontrol af baggrundstjeneste mislykkedes"
-#: InvenTree/status.py:65
+#: InvenTree/status.py:72
msgid "Email backend not configured"
msgstr "E-mail backend ej konfigureret"
-#: InvenTree/status.py:68
+#: InvenTree/status.py:75
msgid "InvenTree system health checks failed"
msgstr "Helbredstjek af InvenTree system mislykkedes"
#: InvenTree/status_codes.py:12 InvenTree/status_codes.py:40
#: InvenTree/status_codes.py:148 InvenTree/status_codes.py:167
#: InvenTree/status_codes.py:188 generic/states/tests.py:16
-#: templates/js/translated/table_filters.js:511
+#: templates/js/translated/table_filters.js:533
msgid "Pending"
msgstr "Afventende"
@@ -630,7 +636,7 @@ msgstr "Placeret"
#: InvenTree/status_codes.py:14 InvenTree/status_codes.py:151
#: InvenTree/status_codes.py:172 generic/states/tests.py:18
-#: order/templates/order/order_base.html:162
+#: order/templates/order/order_base.html:158
#: order/templates/order/sales_order_base.html:162
msgid "Complete"
msgstr "Fuldført"
@@ -654,10 +660,10 @@ msgstr "Returneret"
msgid "In Progress"
msgstr ""
-#: InvenTree/status_codes.py:42 order/models.py:1332
-#: templates/js/translated/sales_order.js:1509
-#: templates/js/translated/sales_order.js:1630
-#: templates/js/translated/sales_order.js:1934
+#: InvenTree/status_codes.py:42 order/models.py:1345
+#: templates/js/translated/sales_order.js:1521
+#: templates/js/translated/sales_order.js:1642
+#: templates/js/translated/sales_order.js:1946
msgid "Shipped"
msgstr "Afsendt"
@@ -689,7 +695,7 @@ msgstr "I karantæne"
msgid "Legacy stock tracking entry"
msgstr "Forældet lager sporings post"
-#: InvenTree/status_codes.py:93 templates/js/translated/stock.js:511
+#: InvenTree/status_codes.py:93 templates/js/translated/stock.js:510
msgid "Stock item created"
msgstr "Lager-element oprettet"
@@ -745,7 +751,7 @@ msgstr "Opdel fra overordnet element"
msgid "Split child item"
msgstr "Opdel underordnet element"
-#: InvenTree/status_codes.py:120 templates/js/translated/stock.js:2243
+#: InvenTree/status_codes.py:120 templates/js/translated/stock.js:1769
msgid "Merged stock items"
msgstr "Flettede lagervarer"
@@ -765,7 +771,7 @@ msgstr "Byggeorder output fuldført"
msgid "Build order output rejected"
msgstr ""
-#: InvenTree/status_codes.py:129 templates/js/translated/stock.js:1676
+#: InvenTree/status_codes.py:129 templates/js/translated/stock.js:1675
msgid "Consumed by build order"
msgstr "Brugt efter byggeordre"
@@ -781,7 +787,7 @@ msgstr ""
msgid "Returned against Return Order"
msgstr ""
-#: InvenTree/status_codes.py:141 templates/js/translated/table_filters.js:321
+#: InvenTree/status_codes.py:141 templates/js/translated/table_filters.js:327
msgid "Sent to customer"
msgstr "Sendt til kunde"
@@ -849,83 +855,111 @@ msgstr "De indtastede adgangskoder skal være ens"
msgid "Wrong password provided"
msgstr "Forkert adgangskode indtastet"
-#: InvenTree/views.py:651 templates/navbar.html:157
+#: InvenTree/views.py:653 templates/navbar.html:157
msgid "System Information"
msgstr "Systemoplysninger"
-#: InvenTree/views.py:658 templates/navbar.html:168
+#: InvenTree/views.py:660 templates/navbar.html:168
msgid "About InvenTree"
msgstr "Om InvenTree"
-#: build/api.py:222
+#: build/api.py:242
msgid "Build must be cancelled before it can be deleted"
msgstr "Produktion skal anulleres, før den kan slettes"
-#: build/models.py:69 build/templates/build/build_base.html:9
+#: build/api.py:286 part/models.py:3833 templates/js/translated/bom.js:985
+#: templates/js/translated/bom.js:1025 templates/js/translated/build.js:2449
+#: templates/js/translated/table_filters.js:166
+#: templates/js/translated/table_filters.js:518
+msgid "Consumable"
+msgstr ""
+
+#: build/api.py:287 part/models.py:3827 part/templates/part/upload_bom.html:58
+#: templates/js/translated/bom.js:989 templates/js/translated/bom.js:1016
+#: templates/js/translated/build.js:2458
+#: templates/js/translated/table_filters.js:162
+#: templates/js/translated/table_filters.js:191
+#: templates/js/translated/table_filters.js:522
+msgid "Optional"
+msgstr ""
+
+#: build/api.py:288 templates/js/translated/table_filters.js:360
+#: templates/js/translated/table_filters.js:514
+msgid "Tracked"
+msgstr ""
+
+#: build/api.py:290 part/admin.py:64 templates/js/translated/build.js:1670
+#: templates/js/translated/build.js:2549
+#: templates/js/translated/sales_order.js:1918
+#: templates/js/translated/table_filters.js:506
+msgid "Allocated"
+msgstr ""
+
+#: build/models.py:73 build/templates/build/build_base.html:9
#: build/templates/build/build_base.html:27
#: report/templates/report/inventree_build_order_base.html:105
#: templates/email/build_order_completed.html:16
#: templates/email/overdue_build_order.html:15
-#: templates/js/translated/build.js:945 templates/js/translated/stock.js:2629
+#: templates/js/translated/build.js:953 templates/js/translated/stock.js:2760
msgid "Build Order"
msgstr "Produktionsordre"
-#: build/models.py:70 build/templates/build/build_base.html:13
+#: build/models.py:74 build/templates/build/build_base.html:13
#: build/templates/build/index.html:8 build/templates/build/index.html:12
-#: order/templates/order/sales_order_detail.html:119
+#: order/templates/order/sales_order_detail.html:111
#: order/templates/order/so_sidebar.html:13
-#: part/templates/part/part_sidebar.html:22 templates/InvenTree/index.html:244
+#: part/templates/part/part_sidebar.html:22 templates/InvenTree/index.html:196
#: templates/InvenTree/search.html:141
#: templates/InvenTree/settings/sidebar.html:53
-#: templates/js/translated/search.js:228 users/models.py:42
+#: templates/js/translated/search.js:186 users/models.py:42
msgid "Build Orders"
msgstr "Produktionsordrer"
-#: build/models.py:111
+#: build/models.py:115
msgid "Invalid choice for parent build"
msgstr "Ugyldigt valg for overordnet produktion"
-#: build/models.py:155
+#: build/models.py:159
msgid "Build Order Reference"
msgstr "Produktionsordre reference"
-#: build/models.py:156 order/models.py:359 order/models.py:765
-#: order/models.py:1087 order/models.py:1724 part/admin.py:278
-#: part/models.py:3798 part/templates/part/upload_bom.html:54
+#: build/models.py:160 order/models.py:372 order/models.py:778
+#: order/models.py:1100 order/models.py:1737 part/admin.py:278
+#: part/models.py:3842 part/templates/part/upload_bom.html:54
#: report/templates/report/inventree_bill_of_materials_report.html:139
#: report/templates/report/inventree_po_report_base.html:28
#: report/templates/report/inventree_return_order_report_base.html:26
#: report/templates/report/inventree_so_report_base.html:28
-#: templates/js/translated/bom.js:769 templates/js/translated/bom.js:943
-#: templates/js/translated/build.js:2098 templates/js/translated/order.js:291
+#: templates/js/translated/bom.js:770 templates/js/translated/bom.js:961
+#: templates/js/translated/build.js:2441 templates/js/translated/order.js:291
#: templates/js/translated/pricing.js:386
-#: templates/js/translated/purchase_order.js:2033
-#: templates/js/translated/return_order.js:713
-#: templates/js/translated/sales_order.js:1798
+#: templates/js/translated/purchase_order.js:2043
+#: templates/js/translated/return_order.js:725
+#: templates/js/translated/sales_order.js:1810
msgid "Reference"
msgstr "Reference"
-#: build/models.py:167
+#: build/models.py:171
msgid "Brief description of the build (optional)"
msgstr ""
-#: build/models.py:175 build/templates/build/build_base.html:183
+#: build/models.py:179 build/templates/build/build_base.html:184
#: build/templates/build/detail.html:87
msgid "Parent Build"
msgstr "Overordnet produktion"
-#: build/models.py:176
+#: build/models.py:180
msgid "BuildOrder to which this build is allocated"
msgstr "Produktionsordre som er tildelt denne produktion"
-#: build/models.py:181 build/templates/build/build_base.html:98
-#: build/templates/build/detail.html:29 company/models.py:775
-#: order/models.py:1195 order/models.py:1311 order/models.py:1312
-#: part/models.py:391 part/models.py:2865 part/models.py:2979
-#: part/models.py:3119 part/models.py:3138 part/models.py:3157
-#: part/models.py:3178 part/models.py:3270 part/models.py:3555
-#: part/models.py:3663 part/models.py:3763 part/models.py:4077
-#: part/serializers.py:842 part/serializers.py:1245
+#: build/models.py:185 build/templates/build/build_base.html:98
+#: build/templates/build/detail.html:29 company/models.py:924
+#: order/models.py:1208 order/models.py:1324 order/models.py:1325
+#: part/models.py:392 part/models.py:2899 part/models.py:3013
+#: part/models.py:3153 part/models.py:3172 part/models.py:3191
+#: part/models.py:3212 part/models.py:3304 part/models.py:3589
+#: part/models.py:3712 part/models.py:3807 part/models.py:4121
+#: part/serializers.py:904 part/serializers.py:1307
#: part/templates/part/part_app_base.html:8
#: part/templates/part/part_pricing.html:12
#: part/templates/part/upload_bom.html:52
@@ -935,266 +969,229 @@ msgstr "Produktionsordre som er tildelt denne produktion"
#: report/templates/report/inventree_po_report_base.html:27
#: report/templates/report/inventree_return_order_report_base.html:24
#: report/templates/report/inventree_so_report_base.html:27
-#: stock/serializers.py:156 stock/serializers.py:509
+#: stock/serializers.py:205 stock/serializers.py:576
#: templates/InvenTree/search.html:82
#: templates/email/build_order_completed.html:17
#: templates/email/build_order_required_stock.html:17
#: templates/email/low_stock_notification.html:15
#: templates/email/overdue_build_order.html:16
-#: templates/js/translated/barcode.js:529 templates/js/translated/bom.js:631
-#: templates/js/translated/bom.js:768 templates/js/translated/bom.js:887
-#: templates/js/translated/build.js:1403 templates/js/translated/build.js:1965
-#: templates/js/translated/build.js:2464 templates/js/translated/build.js:2868
-#: templates/js/translated/company.js:337
-#: templates/js/translated/company.js:822
-#: templates/js/translated/company.js:929
-#: templates/js/translated/company.js:1169 templates/js/translated/part.js:1918
-#: templates/js/translated/part.js:1990 templates/js/translated/part.js:2216
-#: templates/js/translated/pricing.js:369
-#: templates/js/translated/purchase_order.js:746
-#: templates/js/translated/purchase_order.js:1274
-#: templates/js/translated/purchase_order.js:1811
-#: templates/js/translated/purchase_order.js:1975
-#: templates/js/translated/return_order.js:527
-#: templates/js/translated/return_order.js:694
-#: templates/js/translated/sales_order.js:285
-#: templates/js/translated/sales_order.js:1185
-#: templates/js/translated/sales_order.js:1584
-#: templates/js/translated/sales_order.js:1782
-#: templates/js/translated/stock.js:643 templates/js/translated/stock.js:809
-#: templates/js/translated/stock.js:1021 templates/js/translated/stock.js:1773
-#: templates/js/translated/stock.js:2594 templates/js/translated/stock.js:2831
-#: templates/js/translated/stock.js:2968
+#: templates/js/translated/barcode.js:529 templates/js/translated/bom.js:632
+#: templates/js/translated/bom.js:769 templates/js/translated/bom.js:905
+#: templates/js/translated/build.js:1289 templates/js/translated/build.js:1669
+#: templates/js/translated/build.js:2085 templates/js/translated/build.js:2261
+#: templates/js/translated/company.js:347
+#: templates/js/translated/company.js:1147
+#: templates/js/translated/company.js:1302
+#: templates/js/translated/company.js:1590 templates/js/translated/index.js:104
+#: templates/js/translated/part.js:1917 templates/js/translated/part.js:1989
+#: templates/js/translated/part.js:2292 templates/js/translated/pricing.js:369
+#: templates/js/translated/purchase_order.js:757
+#: templates/js/translated/purchase_order.js:1289
+#: templates/js/translated/purchase_order.js:1826
+#: templates/js/translated/purchase_order.js:1985
+#: templates/js/translated/return_order.js:539
+#: templates/js/translated/return_order.js:706
+#: templates/js/translated/sales_order.js:297
+#: templates/js/translated/sales_order.js:1197
+#: templates/js/translated/sales_order.js:1596
+#: templates/js/translated/sales_order.js:1794
+#: templates/js/translated/stock.js:642 templates/js/translated/stock.js:808
+#: templates/js/translated/stock.js:1020 templates/js/translated/stock.js:1913
+#: templates/js/translated/stock.js:2725 templates/js/translated/stock.js:2958
+#: templates/js/translated/stock.js:3095
msgid "Part"
msgstr "Del"
-#: build/models.py:189
+#: build/models.py:193
msgid "Select part to build"
msgstr "Vælg dele til produktion"
-#: build/models.py:194
+#: build/models.py:198
msgid "Sales Order Reference"
msgstr "Salgsordrereference"
-#: build/models.py:198
+#: build/models.py:202
msgid "SalesOrder to which this build is allocated"
msgstr "Salgsordre, som er tildelt denne produktion"
-#: build/models.py:203 build/serializers.py:942
-#: templates/js/translated/build.js:2452
-#: templates/js/translated/sales_order.js:1173
+#: build/models.py:207 build/serializers.py:946
+#: templates/js/translated/build.js:1657
+#: templates/js/translated/sales_order.js:1185
msgid "Source Location"
msgstr "Kilde Lokation"
-#: build/models.py:207
+#: build/models.py:211
msgid "Select location to take stock from for this build (leave blank to take from any stock location)"
msgstr "Vælg lokation for lager, som skal benyttes til denne produktion (lad feltet stå tomt for at benytte vilkårligt lager)"
-#: build/models.py:212
+#: build/models.py:216
msgid "Destination Location"
msgstr "Destinations Placering"
-#: build/models.py:216
+#: build/models.py:220
msgid "Select location where the completed items will be stored"
msgstr "Vælg placering, hvor de færdige elementer vil blive gemt"
-#: build/models.py:220
+#: build/models.py:224
msgid "Build Quantity"
msgstr "Produktions antal"
-#: build/models.py:223
+#: build/models.py:227
msgid "Number of stock items to build"
msgstr "Antal lagervarer som skal produceres"
-#: build/models.py:227
+#: build/models.py:231
msgid "Completed items"
msgstr "Afsluttede elementer"
-#: build/models.py:229
+#: build/models.py:233
msgid "Number of stock items which have been completed"
msgstr "Antal lagervarer som er færdiggjort"
-#: build/models.py:233
+#: build/models.py:237
msgid "Build Status"
msgstr "Produktions Status"
-#: build/models.py:237
+#: build/models.py:241
msgid "Build status code"
msgstr "Produktions statuskode"
-#: build/models.py:246 build/serializers.py:269 order/serializers.py:506
-#: stock/models.py:739 templates/js/translated/purchase_order.js:1099
+#: build/models.py:250 build/serializers.py:277 order/serializers.py:512
+#: stock/models.py:739 templates/js/translated/purchase_order.js:1114
msgid "Batch Code"
msgstr "Batch Kode"
-#: build/models.py:250 build/serializers.py:270
+#: build/models.py:254 build/serializers.py:278
msgid "Batch code for this build output"
msgstr "Batch kode til dette produktions output"
-#: build/models.py:253 order/models.py:244 part/models.py:1038
+#: build/models.py:257 order/models.py:248 part/models.py:1039
#: part/templates/part/part_base.html:312
-#: templates/js/translated/return_order.js:327
-#: templates/js/translated/sales_order.js:815
+#: templates/js/translated/return_order.js:339
+#: templates/js/translated/sales_order.js:827
msgid "Creation Date"
msgstr "Oprettelsesdato"
-#: build/models.py:257
+#: build/models.py:261
msgid "Target completion date"
msgstr "Projekteret afslutningsdato"
-#: build/models.py:258
+#: build/models.py:262
msgid "Target date for build completion. Build will be overdue after this date."
msgstr ""
-#: build/models.py:261 order/models.py:409 order/models.py:1767
-#: templates/js/translated/build.js:2953
+#: build/models.py:265 order/models.py:422 order/models.py:1780
+#: templates/js/translated/build.js:2170
msgid "Completion Date"
msgstr "Dato for afslutning"
-#: build/models.py:267
+#: build/models.py:271
msgid "completed by"
msgstr "udført af"
-#: build/models.py:275 templates/js/translated/build.js:2913
+#: build/models.py:279 templates/js/translated/build.js:2130
msgid "Issued by"
msgstr "Udstedt af"
-#: build/models.py:276
+#: build/models.py:280
msgid "User who issued this build order"
msgstr "Bruger som udstedte denne byggeordre"
-#: build/models.py:284 build/templates/build/build_base.html:204
-#: build/templates/build/detail.html:122 order/models.py:258
-#: order/templates/order/order_base.html:214
-#: order/templates/order/return_order_base.html:182
-#: order/templates/order/sales_order_base.html:222 part/models.py:1042
+#: build/models.py:288 build/templates/build/build_base.html:205
+#: build/templates/build/detail.html:122 order/models.py:262
+#: order/templates/order/order_base.html:217
+#: order/templates/order/return_order_base.html:189
+#: order/templates/order/sales_order_base.html:229 part/models.py:1043
#: part/templates/part/part_base.html:392
#: report/templates/report/inventree_build_order_base.html:158
-#: templates/js/translated/build.js:2925
-#: templates/js/translated/purchase_order.js:1723
-#: templates/js/translated/return_order.js:347
-#: templates/js/translated/table_filters.js:461
+#: templates/js/translated/build.js:2142
+#: templates/js/translated/purchase_order.js:1738
+#: templates/js/translated/return_order.js:359
+#: templates/js/translated/table_filters.js:467
msgid "Responsible"
msgstr "Ansvarlig"
-#: build/models.py:285
+#: build/models.py:289
msgid "User or group responsible for this build order"
msgstr "Bruger eller gruppe ansvarlig for denne byggeordre"
-#: build/models.py:290 build/templates/build/detail.html:108
+#: build/models.py:294 build/templates/build/detail.html:108
#: company/templates/company/manufacturer_part.html:107
#: company/templates/company/supplier_part.html:195
-#: order/templates/order/order_base.html:171
+#: order/templates/order/order_base.html:167
#: order/templates/order/return_order_base.html:146
#: order/templates/order/sales_order_base.html:181
#: part/templates/part/part_base.html:385 stock/models.py:733
#: stock/templates/stock/item_base.html:201
+#: templates/js/translated/company.js:1050
msgid "External Link"
msgstr "Ekstern link"
-#: build/models.py:295
+#: build/models.py:299
msgid "Build Priority"
msgstr "Bygge Prioritet"
-#: build/models.py:298
+#: build/models.py:302
msgid "Priority of this build order"
msgstr "Prioritet af denne byggeordre"
-#: build/models.py:536
+#: build/models.py:309 common/models.py:104 order/admin.py:17
+#: order/models.py:237 templates/InvenTree/settings/settings_staff_js.html:70
+#: templates/js/translated/build.js:2067
+#: templates/js/translated/purchase_order.js:1685
+#: templates/js/translated/return_order.js:318
+#: templates/js/translated/sales_order.js:806
+#: templates/js/translated/table_filters.js:24
+#: templates/project_code_data.html:6
+msgid "Project Code"
+msgstr ""
+
+#: build/models.py:310
+msgid "Project code for this build order"
+msgstr ""
+
+#: build/models.py:545
#, python-brace-format
msgid "Build order {build} has been completed"
msgstr "Bygningsordre {build} er fuldført"
-#: build/models.py:542
+#: build/models.py:551
msgid "A build order has been completed"
msgstr "En byggeordre er fuldført"
-#: build/models.py:744 build/models.py:811
+#: build/models.py:753 build/models.py:831
msgid "No build output specified"
msgstr ""
-#: build/models.py:747
+#: build/models.py:756
msgid "Build output is already completed"
msgstr ""
-#: build/models.py:750
+#: build/models.py:759
msgid "Build output does not match Build Order"
msgstr ""
-#: build/models.py:815 build/serializers.py:212 build/serializers.py:251
-#: build/serializers.py:811 order/models.py:440 order/serializers.py:379
-#: order/serializers.py:501 part/serializers.py:1087 part/serializers.py:1408
-#: stock/models.py:593 stock/models.py:1387 stock/serializers.py:315
+#: build/models.py:835 build/serializers.py:220 build/serializers.py:259
+#: build/serializers.py:819 order/models.py:453 order/serializers.py:385
+#: order/serializers.py:507 part/serializers.py:1149 part/serializers.py:1470
+#: stock/models.py:593 stock/models.py:1387 stock/serializers.py:381
msgid "Quantity must be greater than zero"
msgstr ""
-#: build/models.py:820 build/serializers.py:217
+#: build/models.py:840 build/serializers.py:225
msgid "Quantity cannot be greater than the output quantity"
msgstr ""
-#: build/models.py:1272
-msgid "Build item must specify a build output, as master part is marked as trackable"
+#: build/models.py:1260
+msgid "Build object"
msgstr ""
-#: build/models.py:1281
-#, python-brace-format
-msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})"
-msgstr ""
-
-#: build/models.py:1291 order/models.py:1601
-msgid "Stock item is over-allocated"
-msgstr ""
-
-#: build/models.py:1297 order/models.py:1604
-msgid "Allocation quantity must be greater than zero"
-msgstr ""
-
-#: build/models.py:1303
-msgid "Quantity must be 1 for serialized stock"
-msgstr ""
-
-#: build/models.py:1360
-msgid "Selected stock item not found in BOM"
-msgstr ""
-
-#: build/models.py:1438 stock/templates/stock/item_base.html:170
-#: templates/InvenTree/search.html:139 templates/js/translated/build.js:2841
-#: templates/navbar.html:38
-msgid "Build"
-msgstr ""
-
-#: build/models.py:1439
-msgid "Build to allocate parts"
-msgstr ""
-
-#: build/models.py:1455 build/serializers.py:791 order/serializers.py:1059
-#: order/serializers.py:1080 stock/serializers.py:413 stock/serializers.py:770
-#: stock/serializers.py:896 stock/templates/stock/item_base.html:10
-#: stock/templates/stock/item_base.html:23
-#: stock/templates/stock/item_base.html:195
-#: templates/js/translated/build.js:955 templates/js/translated/build.js:960
-#: templates/js/translated/build.js:2466 templates/js/translated/build.js:3038
-#: templates/js/translated/sales_order.js:286
-#: templates/js/translated/sales_order.js:1186
-#: templates/js/translated/sales_order.js:1485
-#: templates/js/translated/sales_order.js:1490
-#: templates/js/translated/sales_order.js:1591
-#: templates/js/translated/sales_order.js:1678
-#: templates/js/translated/stock.js:644 templates/js/translated/stock.js:810
-#: templates/js/translated/stock.js:2714
-msgid "Stock Item"
-msgstr ""
-
-#: build/models.py:1456
-msgid "Source stock item"
-msgstr ""
-
-#: build/models.py:1468 build/serializers.py:198 build/serializers.py:236
-#: build/templates/build/build_base.html:103
-#: build/templates/build/detail.html:34 common/models.py:2176
-#: order/models.py:1073 order/models.py:1645 order/serializers.py:1233
+#: build/models.py:1274 build/models.py:1556 build/serializers.py:206
+#: build/serializers.py:244 build/templates/build/build_base.html:103
+#: build/templates/build/detail.html:34 common/models.py:2162
+#: order/models.py:1086 order/models.py:1658 order/serializers.py:1239
#: order/templates/order/order_wizard/match_parts.html:30 part/admin.py:277
-#: part/forms.py:47 part/models.py:2992 part/models.py:3779
+#: part/forms.py:47 part/models.py:3026 part/models.py:3823
#: part/templates/part/part_pricing.html:16
#: part/templates/part/upload_bom.html:53
#: report/templates/report/inventree_bill_of_materials_report.html:138
@@ -1203,315 +1200,367 @@ msgstr ""
#: report/templates/report/inventree_so_report_base.html:29
#: report/templates/report/inventree_test_report_base.html:90
#: report/templates/report/inventree_test_report_base.html:170
-#: stock/admin.py:103 stock/serializers.py:306
+#: stock/admin.py:103 stock/serializers.py:372
#: stock/templates/stock/item_base.html:288
#: stock/templates/stock/item_base.html:296
#: stock/templates/stock/item_base.html:343
#: templates/email/build_order_completed.html:18
-#: templates/js/translated/barcode.js:531 templates/js/translated/bom.js:770
-#: templates/js/translated/bom.js:951 templates/js/translated/build.js:504
-#: templates/js/translated/build.js:716 templates/js/translated/build.js:982
-#: templates/js/translated/build.js:1425 templates/js/translated/build.js:1991
-#: templates/js/translated/build.js:2467
-#: templates/js/translated/company.js:1428
-#: templates/js/translated/model_renderers.js:207
-#: templates/js/translated/order.js:304 templates/js/translated/part.js:935
-#: templates/js/translated/part.js:1784 templates/js/translated/part.js:3263
+#: templates/js/translated/barcode.js:531 templates/js/translated/bom.js:771
+#: templates/js/translated/bom.js:969 templates/js/translated/build.js:510
+#: templates/js/translated/build.js:722 templates/js/translated/build.js:1308
+#: templates/js/translated/build.js:1672 templates/js/translated/build.js:2283
+#: templates/js/translated/company.js:1849
+#: templates/js/translated/model_renderers.js:221
+#: templates/js/translated/order.js:304 templates/js/translated/part.js:934
+#: templates/js/translated/part.js:1783 templates/js/translated/part.js:3248
#: templates/js/translated/pricing.js:381
#: templates/js/translated/pricing.js:474
#: templates/js/translated/pricing.js:522
#: templates/js/translated/pricing.js:616
-#: templates/js/translated/purchase_order.js:749
-#: templates/js/translated/purchase_order.js:1815
-#: templates/js/translated/purchase_order.js:2039
-#: templates/js/translated/sales_order.js:302
-#: templates/js/translated/sales_order.js:1187
-#: templates/js/translated/sales_order.js:1504
-#: templates/js/translated/sales_order.js:1594
-#: templates/js/translated/sales_order.js:1684
-#: templates/js/translated/sales_order.js:1804
-#: templates/js/translated/stock.js:531 templates/js/translated/stock.js:669
-#: templates/js/translated/stock.js:840 templates/js/translated/stock.js:2758
-#: templates/js/translated/stock.js:2843
+#: templates/js/translated/purchase_order.js:760
+#: templates/js/translated/purchase_order.js:1830
+#: templates/js/translated/purchase_order.js:2049
+#: templates/js/translated/sales_order.js:314
+#: templates/js/translated/sales_order.js:1199
+#: templates/js/translated/sales_order.js:1516
+#: templates/js/translated/sales_order.js:1606
+#: templates/js/translated/sales_order.js:1696
+#: templates/js/translated/sales_order.js:1816
+#: templates/js/translated/stock.js:530 templates/js/translated/stock.js:668
+#: templates/js/translated/stock.js:839 templates/js/translated/stock.js:2889
+#: templates/js/translated/stock.js:2970
msgid "Quantity"
msgstr ""
-#: build/models.py:1469
+#: build/models.py:1275
+msgid "Required quantity for build order"
+msgstr ""
+
+#: build/models.py:1357
+msgid "Build item must specify a build output, as master part is marked as trackable"
+msgstr ""
+
+#: build/models.py:1366
+#, python-brace-format
+msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})"
+msgstr ""
+
+#: build/models.py:1376 order/models.py:1614
+msgid "Stock item is over-allocated"
+msgstr ""
+
+#: build/models.py:1382 order/models.py:1617
+msgid "Allocation quantity must be greater than zero"
+msgstr ""
+
+#: build/models.py:1388
+msgid "Quantity must be 1 for serialized stock"
+msgstr ""
+
+#: build/models.py:1449
+msgid "Selected stock item does not match BOM line"
+msgstr ""
+
+#: build/models.py:1543 build/serializers.py:799 order/serializers.py:1065
+#: order/serializers.py:1086 stock/serializers.py:479 stock/serializers.py:887
+#: stock/serializers.py:1013 stock/templates/stock/item_base.html:10
+#: stock/templates/stock/item_base.html:23
+#: stock/templates/stock/item_base.html:195
+#: templates/js/translated/build.js:1671
+#: templates/js/translated/sales_order.js:298
+#: templates/js/translated/sales_order.js:1198
+#: templates/js/translated/sales_order.js:1497
+#: templates/js/translated/sales_order.js:1502
+#: templates/js/translated/sales_order.js:1603
+#: templates/js/translated/sales_order.js:1690
+#: templates/js/translated/stock.js:643 templates/js/translated/stock.js:809
+#: templates/js/translated/stock.js:2845
+msgid "Stock Item"
+msgstr ""
+
+#: build/models.py:1544
+msgid "Source stock item"
+msgstr ""
+
+#: build/models.py:1557
msgid "Stock quantity to allocate to build"
msgstr ""
-#: build/models.py:1477
+#: build/models.py:1565
msgid "Install into"
msgstr ""
-#: build/models.py:1478
+#: build/models.py:1566
msgid "Destination stock item"
msgstr ""
-#: build/serializers.py:148 build/serializers.py:820
-#: templates/js/translated/build.js:1413
+#: build/serializers.py:156 build/serializers.py:828
+#: templates/js/translated/build.js:1299
msgid "Build Output"
msgstr ""
-#: build/serializers.py:160
+#: build/serializers.py:168
msgid "Build output does not match the parent build"
msgstr ""
-#: build/serializers.py:164
+#: build/serializers.py:172
msgid "Output part does not match BuildOrder part"
msgstr ""
-#: build/serializers.py:168
+#: build/serializers.py:176
msgid "This build output has already been completed"
msgstr ""
-#: build/serializers.py:179
+#: build/serializers.py:187
msgid "This build output is not fully allocated"
msgstr ""
-#: build/serializers.py:199 build/serializers.py:237
+#: build/serializers.py:207 build/serializers.py:245
msgid "Enter quantity for build output"
msgstr ""
-#: build/serializers.py:258
+#: build/serializers.py:266
msgid "Integer quantity required for trackable parts"
msgstr ""
-#: build/serializers.py:261
+#: build/serializers.py:269
msgid "Integer quantity required, as the bill of materials contains trackable parts"
msgstr ""
-#: build/serializers.py:276 order/serializers.py:514 order/serializers.py:1237
-#: stock/serializers.py:324 templates/js/translated/purchase_order.js:1123
-#: templates/js/translated/stock.js:334 templates/js/translated/stock.js:532
+#: build/serializers.py:284 order/serializers.py:520 order/serializers.py:1243
+#: stock/serializers.py:390 templates/js/translated/purchase_order.js:1138
+#: templates/js/translated/stock.js:333 templates/js/translated/stock.js:531
msgid "Serial Numbers"
msgstr ""
-#: build/serializers.py:277
+#: build/serializers.py:285
msgid "Enter serial numbers for build outputs"
msgstr ""
-#: build/serializers.py:290
+#: build/serializers.py:298
msgid "Auto Allocate Serial Numbers"
msgstr ""
-#: build/serializers.py:291
+#: build/serializers.py:299
msgid "Automatically allocate required items with matching serial numbers"
msgstr ""
-#: build/serializers.py:326 stock/api.py:670
+#: build/serializers.py:334 stock/api.py:707
msgid "The following serial numbers already exist or are invalid"
msgstr ""
-#: build/serializers.py:377 build/serializers.py:439 build/serializers.py:518
+#: build/serializers.py:385 build/serializers.py:447 build/serializers.py:526
msgid "A list of build outputs must be provided"
msgstr ""
-#: build/serializers.py:415 build/serializers.py:488 order/serializers.py:487
-#: order/serializers.py:606 order/serializers.py:1588 part/serializers.py:854
-#: stock/serializers.py:335 stock/serializers.py:470 stock/serializers.py:551
-#: stock/serializers.py:931 stock/serializers.py:1173
+#: build/serializers.py:423 build/serializers.py:496 order/serializers.py:493
+#: order/serializers.py:612 order/serializers.py:1594 part/serializers.py:916
+#: stock/serializers.py:401 stock/serializers.py:537 stock/serializers.py:618
+#: stock/serializers.py:1048 stock/serializers.py:1290
#: stock/templates/stock/item_base.html:390
#: templates/js/translated/barcode.js:530
-#: templates/js/translated/barcode.js:778 templates/js/translated/build.js:967
-#: templates/js/translated/build.js:2006
-#: templates/js/translated/purchase_order.js:1148
-#: templates/js/translated/purchase_order.js:1238
-#: templates/js/translated/sales_order.js:1497
-#: templates/js/translated/sales_order.js:1605
-#: templates/js/translated/sales_order.js:1613
-#: templates/js/translated/sales_order.js:1692
-#: templates/js/translated/stock.js:645 templates/js/translated/stock.js:811
-#: templates/js/translated/stock.js:1023 templates/js/translated/stock.js:1937
-#: templates/js/translated/stock.js:2608
+#: templates/js/translated/barcode.js:778 templates/js/translated/build.js:980
+#: templates/js/translated/build.js:2298
+#: templates/js/translated/purchase_order.js:1163
+#: templates/js/translated/purchase_order.js:1253
+#: templates/js/translated/sales_order.js:1509
+#: templates/js/translated/sales_order.js:1617
+#: templates/js/translated/sales_order.js:1625
+#: templates/js/translated/sales_order.js:1704
+#: templates/js/translated/stock.js:644 templates/js/translated/stock.js:810
+#: templates/js/translated/stock.js:1022 templates/js/translated/stock.js:2094
+#: templates/js/translated/stock.js:2739
msgid "Location"
msgstr ""
-#: build/serializers.py:416
+#: build/serializers.py:424
msgid "Stock location for scrapped outputs"
msgstr ""
-#: build/serializers.py:422
+#: build/serializers.py:430
msgid "Discard Allocations"
msgstr ""
-#: build/serializers.py:423
+#: build/serializers.py:431
msgid "Discard any stock allocations for scrapped outputs"
msgstr ""
-#: build/serializers.py:428
+#: build/serializers.py:436
msgid "Reason for scrapping build output(s)"
msgstr ""
-#: build/serializers.py:489
+#: build/serializers.py:497
msgid "Location for completed build outputs"
msgstr ""
-#: build/serializers.py:495 build/templates/build/build_base.html:151
-#: build/templates/build/detail.html:62 order/models.py:791
-#: order/models.py:1750 order/serializers.py:524 stock/admin.py:106
-#: stock/templates/stock/item_base.html:423
-#: templates/js/translated/barcode.js:252 templates/js/translated/build.js:2897
-#: templates/js/translated/purchase_order.js:1278
-#: templates/js/translated/purchase_order.js:1682
-#: templates/js/translated/return_order.js:319
-#: templates/js/translated/sales_order.js:807
-#: templates/js/translated/stock.js:1912 templates/js/translated/stock.js:2732
-#: templates/js/translated/stock.js:2859
+#: build/serializers.py:503 build/templates/build/build_base.html:152
+#: build/templates/build/detail.html:62 order/models.py:804
+#: order/models.py:1763 order/serializers.py:530 stock/admin.py:106
+#: stock/serializers.py:677 stock/templates/stock/item_base.html:423
+#: templates/js/translated/barcode.js:252 templates/js/translated/build.js:2114
+#: templates/js/translated/purchase_order.js:1293
+#: templates/js/translated/purchase_order.js:1697
+#: templates/js/translated/return_order.js:331
+#: templates/js/translated/sales_order.js:819
+#: templates/js/translated/stock.js:2069 templates/js/translated/stock.js:2863
+#: templates/js/translated/stock.js:2986
msgid "Status"
msgstr ""
-#: build/serializers.py:501
+#: build/serializers.py:509
msgid "Accept Incomplete Allocation"
msgstr ""
-#: build/serializers.py:502
+#: build/serializers.py:510
msgid "Complete outputs if stock has not been fully allocated"
msgstr ""
-#: build/serializers.py:571
+#: build/serializers.py:579
msgid "Remove Allocated Stock"
msgstr ""
-#: build/serializers.py:572
+#: build/serializers.py:580
msgid "Subtract any stock which has already been allocated to this build"
msgstr ""
-#: build/serializers.py:578
+#: build/serializers.py:586
msgid "Remove Incomplete Outputs"
msgstr ""
-#: build/serializers.py:579
+#: build/serializers.py:587
msgid "Delete any build outputs which have not been completed"
msgstr ""
-#: build/serializers.py:606
+#: build/serializers.py:614
msgid "Not permitted"
msgstr ""
-#: build/serializers.py:607
+#: build/serializers.py:615
msgid "Accept as consumed by this build order"
msgstr ""
-#: build/serializers.py:608
+#: build/serializers.py:616
msgid "Deallocate before completing this build order"
msgstr ""
-#: build/serializers.py:631
+#: build/serializers.py:639
msgid "Overallocated Stock"
msgstr ""
-#: build/serializers.py:633
+#: build/serializers.py:641
msgid "How do you want to handle extra stock items assigned to the build order"
msgstr ""
-#: build/serializers.py:643
+#: build/serializers.py:651
msgid "Some stock items have been overallocated"
msgstr ""
-#: build/serializers.py:648
+#: build/serializers.py:656
msgid "Accept Unallocated"
msgstr ""
-#: build/serializers.py:649
+#: build/serializers.py:657
msgid "Accept that stock items have not been fully allocated to this build order"
msgstr ""
-#: build/serializers.py:659 templates/js/translated/build.js:295
+#: build/serializers.py:667 templates/js/translated/build.js:304
msgid "Required stock has not been fully allocated"
msgstr ""
-#: build/serializers.py:664 order/serializers.py:261 order/serializers.py:1127
+#: build/serializers.py:672 order/serializers.py:267 order/serializers.py:1133
msgid "Accept Incomplete"
msgstr ""
-#: build/serializers.py:665
+#: build/serializers.py:673
msgid "Accept that the required number of build outputs have not been completed"
msgstr ""
-#: build/serializers.py:675 templates/js/translated/build.js:299
+#: build/serializers.py:683 templates/js/translated/build.js:308
msgid "Required build quantity has not been completed"
msgstr ""
-#: build/serializers.py:684 templates/js/translated/build.js:283
+#: build/serializers.py:692 templates/js/translated/build.js:292
msgid "Build order has incomplete outputs"
msgstr ""
-#: build/serializers.py:714 build/serializers.py:768 part/models.py:3686
-#: part/models.py:4069
-msgid "BOM Item"
-msgstr ""
-
-#: build/serializers.py:724
-msgid "Build output"
+#: build/serializers.py:722
+msgid "Build Line"
msgstr ""
#: build/serializers.py:732
+msgid "Build output"
+msgstr ""
+
+#: build/serializers.py:740
msgid "Build output must point to the same build"
msgstr ""
-#: build/serializers.py:782
+#: build/serializers.py:776
+msgid "Build Line Item"
+msgstr ""
+
+#: build/serializers.py:790
msgid "bom_item.part must point to the same part as the build order"
msgstr ""
-#: build/serializers.py:797 stock/serializers.py:783
+#: build/serializers.py:805 stock/serializers.py:900
msgid "Item must be in stock"
msgstr ""
-#: build/serializers.py:846 order/serializers.py:1117
+#: build/serializers.py:853 order/serializers.py:1123
#, python-brace-format
msgid "Available quantity ({q}) exceeded"
msgstr ""
-#: build/serializers.py:852
+#: build/serializers.py:859
msgid "Build output must be specified for allocation of tracked parts"
msgstr ""
-#: build/serializers.py:859
+#: build/serializers.py:866
msgid "Build output cannot be specified for allocation of untracked parts"
msgstr ""
-#: build/serializers.py:864
+#: build/serializers.py:871
msgid "This stock item has already been allocated to this build output"
msgstr ""
-#: build/serializers.py:887 order/serializers.py:1401
+#: build/serializers.py:894 order/serializers.py:1407
msgid "Allocation items must be provided"
msgstr ""
-#: build/serializers.py:943
+#: build/serializers.py:947
msgid "Stock location where parts are to be sourced (leave blank to take from any location)"
msgstr ""
-#: build/serializers.py:951
+#: build/serializers.py:955
msgid "Exclude Location"
msgstr ""
-#: build/serializers.py:952
+#: build/serializers.py:956
msgid "Exclude stock items from this selected location"
msgstr ""
-#: build/serializers.py:957
+#: build/serializers.py:961
msgid "Interchangeable Stock"
msgstr ""
-#: build/serializers.py:958
+#: build/serializers.py:962
msgid "Stock items in multiple locations can be used interchangeably"
msgstr ""
-#: build/serializers.py:963
+#: build/serializers.py:967
msgid "Substitute Stock"
msgstr ""
-#: build/serializers.py:964
+#: build/serializers.py:968
msgid "Allow allocation of substitute parts"
msgstr ""
-#: build/serializers.py:969
+#: build/serializers.py:973
msgid "Optional Items"
msgstr ""
-#: build/serializers.py:970
+#: build/serializers.py:974
msgid "Allocate optional BOM items to build order"
msgstr ""
@@ -1540,6 +1589,7 @@ msgstr ""
#: part/templates/part/part_base.html:43
#: stock/templates/stock/item_base.html:41
#: stock/templates/stock/location.html:54
+#: templates/js/translated/filters.js:336
msgid "Barcode actions"
msgstr ""
@@ -1618,69 +1668,67 @@ msgstr ""
msgid "Build Description"
msgstr ""
-#: build/templates/build/build_base.html:117
+#: build/templates/build/build_base.html:118
msgid "No build outputs have been created for this build order"
msgstr ""
-#: build/templates/build/build_base.html:124
+#: build/templates/build/build_base.html:125
msgid "Build Order is ready to mark as completed"
msgstr ""
-#: build/templates/build/build_base.html:129
+#: build/templates/build/build_base.html:130
msgid "Build Order cannot be completed as outstanding outputs remain"
msgstr ""
-#: build/templates/build/build_base.html:134
+#: build/templates/build/build_base.html:135
msgid "Required build quantity has not yet been completed"
msgstr ""
-#: build/templates/build/build_base.html:139
+#: build/templates/build/build_base.html:140
msgid "Stock has not been fully allocated to this Build Order"
msgstr ""
-#: build/templates/build/build_base.html:160
-#: build/templates/build/detail.html:138 order/models.py:240
-#: order/models.py:1099 order/templates/order/order_base.html:190
+#: build/templates/build/build_base.html:161
+#: build/templates/build/detail.html:138 order/models.py:244
+#: order/models.py:1112 order/templates/order/order_base.html:186
#: order/templates/order/return_order_base.html:165
#: order/templates/order/sales_order_base.html:193
#: report/templates/report/inventree_build_order_base.html:125
-#: templates/js/translated/build.js:2945 templates/js/translated/part.js:1802
-#: templates/js/translated/purchase_order.js:1699
-#: templates/js/translated/purchase_order.js:2115
-#: templates/js/translated/return_order.js:335
-#: templates/js/translated/return_order.js:735
-#: templates/js/translated/sales_order.js:823
-#: templates/js/translated/sales_order.js:1847
+#: templates/js/translated/build.js:2162 templates/js/translated/part.js:1801
+#: templates/js/translated/purchase_order.js:1714
+#: templates/js/translated/purchase_order.js:2125
+#: templates/js/translated/return_order.js:347
+#: templates/js/translated/return_order.js:747
+#: templates/js/translated/sales_order.js:835
+#: templates/js/translated/sales_order.js:1859
msgid "Target Date"
msgstr ""
-#: build/templates/build/build_base.html:165
+#: build/templates/build/build_base.html:166
#, python-format
msgid "This build was due on %(target)s"
msgstr ""
-#: build/templates/build/build_base.html:165
-#: build/templates/build/build_base.html:222
-#: order/templates/order/order_base.html:126
+#: build/templates/build/build_base.html:166
+#: build/templates/build/build_base.html:223
+#: order/templates/order/order_base.html:122
#: order/templates/order/return_order_base.html:118
#: order/templates/order/sales_order_base.html:123
-#: templates/js/translated/table_filters.js:68
-#: templates/js/translated/table_filters.js:454
-#: templates/js/translated/table_filters.js:539
-#: templates/js/translated/table_filters.js:580
+#: templates/js/translated/table_filters.js:74
+#: templates/js/translated/table_filters.js:460
+#: templates/js/translated/table_filters.js:561
+#: templates/js/translated/table_filters.js:602
msgid "Overdue"
msgstr ""
-#: build/templates/build/build_base.html:177
-#: build/templates/build/detail.html:67 build/templates/build/detail.html:149
-#: order/templates/order/sales_order_base.html:203
-#: templates/js/translated/table_filters.js:602
-msgid "Completed"
+#: build/templates/build/build_base.html:178
+#: build/templates/build/detail.html:67 build/templates/build/sidebar.html:13
+msgid "Completed Outputs"
msgstr ""
-#: build/templates/build/build_base.html:190
-#: build/templates/build/detail.html:101 order/api.py:1454 order/models.py:1304
-#: order/models.py:1403 order/models.py:1551
+#: build/templates/build/build_base.html:191
+#: build/templates/build/detail.html:101 order/api.py:1454 order/models.py:1317
+#: order/models.py:1416 order/models.py:1564
#: order/templates/order/sales_order_base.html:9
#: order/templates/order/sales_order_base.html:28
#: report/templates/report/inventree_build_order_base.html:135
@@ -1688,32 +1736,32 @@ msgstr ""
#: stock/templates/stock/item_base.html:370
#: templates/email/overdue_sales_order.html:15
#: templates/js/translated/pricing.js:915
-#: templates/js/translated/sales_order.js:757
-#: templates/js/translated/sales_order.js:980
-#: templates/js/translated/stock.js:2661
+#: templates/js/translated/sales_order.js:769
+#: templates/js/translated/sales_order.js:992
+#: templates/js/translated/stock.js:2792
msgid "Sales Order"
msgstr ""
-#: build/templates/build/build_base.html:197
+#: build/templates/build/build_base.html:198
#: build/templates/build/detail.html:115
#: report/templates/report/inventree_build_order_base.html:152
msgid "Issued By"
msgstr ""
-#: build/templates/build/build_base.html:211
-#: build/templates/build/detail.html:94 templates/js/translated/build.js:2862
+#: build/templates/build/build_base.html:212
+#: build/templates/build/detail.html:94 templates/js/translated/build.js:2079
msgid "Priority"
msgstr ""
-#: build/templates/build/build_base.html:273
+#: build/templates/build/build_base.html:274
msgid "Delete Build Order"
msgstr ""
-#: build/templates/build/build_base.html:283
+#: build/templates/build/build_base.html:284
msgid "Build Order QR Code"
msgstr ""
-#: build/templates/build/build_base.html:295
+#: build/templates/build/build_base.html:296
msgid "Link Barcode to Build Order"
msgstr ""
@@ -1729,8 +1777,8 @@ msgstr ""
msgid "Stock can be taken from any available location."
msgstr ""
-#: build/templates/build/detail.html:49 order/models.py:1222
-#: templates/js/translated/purchase_order.js:2157
+#: build/templates/build/detail.html:49 order/models.py:1235
+#: templates/js/translated/purchase_order.js:2167
msgid "Destination"
msgstr ""
@@ -1744,21 +1792,21 @@ msgstr ""
#: build/templates/build/detail.html:80 stock/admin.py:105
#: stock/templates/stock/item_base.html:163
-#: templates/js/translated/build.js:1432
-#: templates/js/translated/model_renderers.js:212
-#: templates/js/translated/purchase_order.js:1244
-#: templates/js/translated/stock.js:1093 templates/js/translated/stock.js:1926
-#: templates/js/translated/stock.js:2866
-#: templates/js/translated/table_filters.js:259
-#: templates/js/translated/table_filters.js:350
+#: templates/js/translated/build.js:1319
+#: templates/js/translated/model_renderers.js:226
+#: templates/js/translated/purchase_order.js:1259
+#: templates/js/translated/stock.js:1092 templates/js/translated/stock.js:2083
+#: templates/js/translated/stock.js:2993
+#: templates/js/translated/table_filters.js:265
+#: templates/js/translated/table_filters.js:356
msgid "Batch"
msgstr ""
#: build/templates/build/detail.html:133
-#: order/templates/order/order_base.html:177
+#: order/templates/order/order_base.html:173
#: order/templates/order/return_order_base.html:152
#: order/templates/order/sales_order_base.html:187
-#: templates/js/translated/build.js:2905
+#: templates/js/translated/build.js:2122
msgid "Created"
msgstr ""
@@ -1766,147 +1814,106 @@ msgstr ""
msgid "No target date set"
msgstr ""
+#: build/templates/build/detail.html:149
+#: order/templates/order/sales_order_base.html:203
+#: templates/js/translated/table_filters.js:624
+msgid "Completed"
+msgstr ""
+
#: build/templates/build/detail.html:153
msgid "Build not complete"
msgstr ""
-#: build/templates/build/detail.html:164 build/templates/build/sidebar.html:19
+#: build/templates/build/detail.html:164 build/templates/build/sidebar.html:17
msgid "Child Build Orders"
msgstr ""
-#: build/templates/build/detail.html:179
+#: build/templates/build/detail.html:177
msgid "Allocate Stock to Build"
msgstr ""
-#: build/templates/build/detail.html:183 templates/js/translated/build.js:2276
-msgid "Unallocate stock"
+#: build/templates/build/detail.html:181
+msgid "Deallocate stock"
+msgstr ""
+
+#: build/templates/build/detail.html:182
+msgid "Deallocate Stock"
msgstr ""
#: build/templates/build/detail.html:184
-msgid "Unallocate Stock"
-msgstr ""
-
-#: build/templates/build/detail.html:186
msgid "Automatically allocate stock to build"
msgstr ""
-#: build/templates/build/detail.html:187
+#: build/templates/build/detail.html:185
msgid "Auto Allocate"
msgstr ""
-#: build/templates/build/detail.html:189
+#: build/templates/build/detail.html:187
msgid "Manually allocate stock to build"
msgstr ""
-#: build/templates/build/detail.html:190 build/templates/build/sidebar.html:8
+#: build/templates/build/detail.html:188 build/templates/build/sidebar.html:8
msgid "Allocate Stock"
msgstr ""
-#: build/templates/build/detail.html:193
+#: build/templates/build/detail.html:191
msgid "Order required parts"
msgstr ""
-#: build/templates/build/detail.html:194
-#: company/templates/company/detail.html:38
-#: company/templates/company/detail.html:86
-#: part/templates/part/category.html:184
-#: templates/js/translated/purchase_order.js:789
+#: build/templates/build/detail.html:192
+#: templates/js/translated/purchase_order.js:800
msgid "Order Parts"
msgstr ""
-#: build/templates/build/detail.html:206
-msgid "Untracked stock has been fully allocated for this Build Order"
-msgstr ""
-
#: build/templates/build/detail.html:210
-msgid "Untracked stock has not been fully allocated for this Build Order"
-msgstr ""
-
-#: build/templates/build/detail.html:217
-msgid "Allocate selected items"
-msgstr ""
-
-#: build/templates/build/detail.html:227
-msgid "This Build Order does not have any associated untracked BOM items"
-msgstr ""
-
-#: build/templates/build/detail.html:236
msgid "Incomplete Build Outputs"
msgstr ""
-#: build/templates/build/detail.html:240
+#: build/templates/build/detail.html:214
msgid "Create new build output"
msgstr ""
-#: build/templates/build/detail.html:241
+#: build/templates/build/detail.html:215
msgid "New Build Output"
msgstr ""
-#: build/templates/build/detail.html:255
-msgid "Output Actions"
-msgstr ""
-
-#: build/templates/build/detail.html:260
-msgid "Complete selected build outputs"
-msgstr ""
-
-#: build/templates/build/detail.html:261
-msgid "Complete outputs"
-msgstr ""
-
-#: build/templates/build/detail.html:265
-msgid "Scrap selected build outputs"
-msgstr ""
-
-#: build/templates/build/detail.html:266
-msgid "Scrap outputs"
-msgstr ""
-
-#: build/templates/build/detail.html:270
-msgid "Delete selected build outputs"
-msgstr ""
-
-#: build/templates/build/detail.html:271
-msgid "Delete outputs"
-msgstr ""
-
-#: build/templates/build/detail.html:288 build/templates/build/sidebar.html:11
+#: build/templates/build/detail.html:232 build/templates/build/sidebar.html:15
msgid "Consumed Stock"
msgstr ""
-#: build/templates/build/detail.html:300
+#: build/templates/build/detail.html:244
msgid "Completed Build Outputs"
msgstr ""
-#: build/templates/build/detail.html:312 build/templates/build/sidebar.html:21
-#: company/templates/company/detail.html:261
-#: company/templates/company/manufacturer_part.html:151
+#: build/templates/build/detail.html:256 build/templates/build/sidebar.html:19
+#: company/templates/company/detail.html:229
+#: company/templates/company/manufacturer_part.html:141
#: company/templates/company/manufacturer_part_sidebar.html:9
-#: company/templates/company/sidebar.html:37
+#: company/templates/company/sidebar.html:39
#: order/templates/order/po_sidebar.html:9
-#: order/templates/order/purchase_order_detail.html:102
-#: order/templates/order/return_order_detail.html:74
+#: order/templates/order/purchase_order_detail.html:84
+#: order/templates/order/return_order_detail.html:70
#: order/templates/order/return_order_sidebar.html:7
-#: order/templates/order/sales_order_detail.html:134
-#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:234
-#: part/templates/part/part_sidebar.html:61 stock/templates/stock/item.html:117
+#: order/templates/order/sales_order_detail.html:124
+#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:217
+#: part/templates/part/part_sidebar.html:61 stock/templates/stock/item.html:109
#: stock/templates/stock/stock_sidebar.html:23
msgid "Attachments"
msgstr ""
-#: build/templates/build/detail.html:327
+#: build/templates/build/detail.html:271
msgid "Build Notes"
msgstr ""
-#: build/templates/build/detail.html:502
+#: build/templates/build/detail.html:425
msgid "Allocation Complete"
msgstr ""
-#: build/templates/build/detail.html:503
-msgid "All untracked stock items have been allocated"
+#: build/templates/build/detail.html:426
+msgid "All lines have been fully allocated"
msgstr ""
-#: build/templates/build/index.html:18 part/templates/part/detail.html:340
+#: build/templates/build/index.html:18 part/templates/part/detail.html:319
msgid "New Build Order"
msgstr ""
@@ -1914,14 +1921,10 @@ msgstr ""
msgid "Build Order Details"
msgstr ""
-#: build/templates/build/sidebar.html:14
+#: build/templates/build/sidebar.html:10
msgid "Incomplete Outputs"
msgstr ""
-#: build/templates/build/sidebar.html:17
-msgid "Completed Outputs"
-msgstr ""
-
#: common/files.py:63
#, python-brace-format
msgid "Unsupported file format: {fmt}"
@@ -1968,16 +1971,6 @@ msgstr ""
msgid "Timestamp of last update"
msgstr ""
-#: common/models.py:104 order/admin.py:17 order/models.py:234
-#: templates/InvenTree/settings/settings_staff_js.html:70
-#: templates/js/translated/purchase_order.js:1670
-#: templates/js/translated/return_order.js:306
-#: templates/js/translated/sales_order.js:794
-#: templates/js/translated/table_filters.js:24
-#: templates/project_code_data.html:6
-msgid "Project Code"
-msgstr ""
-
#: common/models.py:105
msgid "Unique project code"
msgstr ""
@@ -2261,9 +2254,9 @@ msgstr ""
msgid "Copy category parameter templates when creating a part"
msgstr ""
-#: common/models.py:1162 part/admin.py:55 part/models.py:3560
-#: report/models.py:166 templates/js/translated/table_filters.js:109
-#: templates/js/translated/table_filters.js:680
+#: common/models.py:1162 part/admin.py:55 part/models.py:3594
+#: report/models.py:166 templates/js/translated/table_filters.js:115
+#: templates/js/translated/table_filters.js:702
msgid "Template"
msgstr ""
@@ -2271,10 +2264,10 @@ msgstr ""
msgid "Parts are templates by default"
msgstr ""
-#: common/models.py:1169 part/admin.py:51 part/admin.py:283 part/models.py:996
-#: templates/js/translated/bom.js:1598
-#: templates/js/translated/table_filters.js:276
-#: templates/js/translated/table_filters.js:634
+#: common/models.py:1169 part/admin.py:51 part/admin.py:283 part/models.py:997
+#: templates/js/translated/bom.js:1618
+#: templates/js/translated/table_filters.js:282
+#: templates/js/translated/table_filters.js:656
msgid "Assembly"
msgstr ""
@@ -2282,8 +2275,8 @@ msgstr ""
msgid "Parts can be assembled from other components by default"
msgstr ""
-#: common/models.py:1176 part/admin.py:52 part/models.py:1002
-#: templates/js/translated/table_filters.js:642
+#: common/models.py:1176 part/admin.py:52 part/models.py:1003
+#: templates/js/translated/table_filters.js:664
msgid "Component"
msgstr ""
@@ -2291,7 +2284,7 @@ msgstr ""
msgid "Parts can be used as sub-components by default"
msgstr ""
-#: common/models.py:1183 part/admin.py:53 part/models.py:1013
+#: common/models.py:1183 part/admin.py:53 part/models.py:1014
msgid "Purchaseable"
msgstr ""
@@ -2299,8 +2292,8 @@ msgstr ""
msgid "Parts are purchaseable by default"
msgstr ""
-#: common/models.py:1190 part/admin.py:54 part/models.py:1018
-#: templates/js/translated/table_filters.js:668
+#: common/models.py:1190 part/admin.py:54 part/models.py:1019
+#: templates/js/translated/table_filters.js:690
msgid "Salable"
msgstr ""
@@ -2308,10 +2301,10 @@ msgstr ""
msgid "Parts are salable by default"
msgstr ""
-#: common/models.py:1197 part/admin.py:56 part/models.py:1008
-#: templates/js/translated/table_filters.js:117
-#: templates/js/translated/table_filters.js:193
-#: templates/js/translated/table_filters.js:684
+#: common/models.py:1197 part/admin.py:56 part/models.py:1009
+#: templates/js/translated/table_filters.js:123
+#: templates/js/translated/table_filters.js:199
+#: templates/js/translated/table_filters.js:706
msgid "Trackable"
msgstr ""
@@ -2319,10 +2312,10 @@ msgstr ""
msgid "Parts are trackable by default"
msgstr ""
-#: common/models.py:1204 part/admin.py:57 part/models.py:1028
+#: common/models.py:1204 part/admin.py:57 part/models.py:1029
#: part/templates/part/part_base.html:156
-#: templates/js/translated/table_filters.js:113
-#: templates/js/translated/table_filters.js:688
+#: templates/js/translated/table_filters.js:119
+#: templates/js/translated/table_filters.js:710
msgid "Virtual"
msgstr ""
@@ -2354,7 +2347,7 @@ msgstr ""
msgid "Allow creation of initial stock when adding a new part"
msgstr ""
-#: common/models.py:1232 templates/js/translated/part.js:108
+#: common/models.py:1232 templates/js/translated/part.js:107
msgid "Initial Supplier Data"
msgstr ""
@@ -2603,179 +2596,179 @@ msgid "Stock location default icon (empty means no icon)"
msgstr ""
#: common/models.py:1471
-msgid "Build Order Reference Pattern"
+msgid "Show Installed Stock Items"
msgstr ""
#: common/models.py:1472
-msgid "Required pattern for generating Build Order reference field"
+msgid "Display installed stock items in stock tables"
msgstr ""
#: common/models.py:1478
-msgid "Enable Return Orders"
+msgid "Build Order Reference Pattern"
msgstr ""
#: common/models.py:1479
-msgid "Enable return order functionality in the user interface"
+msgid "Required pattern for generating Build Order reference field"
msgstr ""
#: common/models.py:1485
-msgid "Return Order Reference Pattern"
+msgid "Enable Return Orders"
msgstr ""
#: common/models.py:1486
-msgid "Required pattern for generating Return Order reference field"
+msgid "Enable return order functionality in the user interface"
msgstr ""
#: common/models.py:1492
-msgid "Edit Completed Return Orders"
+msgid "Return Order Reference Pattern"
msgstr ""
#: common/models.py:1493
-msgid "Allow editing of return orders after they have been completed"
+msgid "Required pattern for generating Return Order reference field"
msgstr ""
#: common/models.py:1499
-msgid "Sales Order Reference Pattern"
+msgid "Edit Completed Return Orders"
msgstr ""
#: common/models.py:1500
-msgid "Required pattern for generating Sales Order reference field"
+msgid "Allow editing of return orders after they have been completed"
msgstr ""
#: common/models.py:1506
-msgid "Sales Order Default Shipment"
+msgid "Sales Order Reference Pattern"
msgstr ""
#: common/models.py:1507
-msgid "Enable creation of default shipment with sales orders"
+msgid "Required pattern for generating Sales Order reference field"
msgstr ""
#: common/models.py:1513
-msgid "Edit Completed Sales Orders"
+msgid "Sales Order Default Shipment"
msgstr ""
#: common/models.py:1514
-msgid "Allow editing of sales orders after they have been shipped or completed"
+msgid "Enable creation of default shipment with sales orders"
msgstr ""
#: common/models.py:1520
-msgid "Purchase Order Reference Pattern"
+msgid "Edit Completed Sales Orders"
msgstr ""
#: common/models.py:1521
-msgid "Required pattern for generating Purchase Order reference field"
+msgid "Allow editing of sales orders after they have been shipped or completed"
msgstr ""
#: common/models.py:1527
-msgid "Edit Completed Purchase Orders"
+msgid "Purchase Order Reference Pattern"
msgstr ""
#: common/models.py:1528
-msgid "Allow editing of purchase orders after they have been shipped or completed"
+msgid "Required pattern for generating Purchase Order reference field"
+msgstr ""
+
+#: common/models.py:1534
+msgid "Edit Completed Purchase Orders"
msgstr ""
#: common/models.py:1535
-msgid "Enable password forgot"
-msgstr ""
-
-#: common/models.py:1536
-msgid "Enable password forgot function on the login pages"
+msgid "Allow editing of purchase orders after they have been shipped or completed"
msgstr ""
#: common/models.py:1542
-msgid "Enable registration"
+msgid "Enable password forgot"
msgstr ""
#: common/models.py:1543
-msgid "Enable self-registration for users on the login pages"
+msgid "Enable password forgot function on the login pages"
msgstr ""
#: common/models.py:1549
-msgid "Enable SSO"
+msgid "Enable registration"
msgstr ""
#: common/models.py:1550
-msgid "Enable SSO on the login pages"
+msgid "Enable self-registration for users on the login pages"
msgstr ""
#: common/models.py:1556
-msgid "Enable SSO registration"
+msgid "Enable SSO"
msgstr ""
#: common/models.py:1557
-msgid "Enable self-registration via SSO for users on the login pages"
+msgid "Enable SSO on the login pages"
msgstr ""
#: common/models.py:1563
-msgid "Email required"
+msgid "Enable SSO registration"
msgstr ""
#: common/models.py:1564
-msgid "Require user to supply mail on signup"
+msgid "Enable self-registration via SSO for users on the login pages"
msgstr ""
#: common/models.py:1570
-msgid "Auto-fill SSO users"
+msgid "Email required"
msgstr ""
#: common/models.py:1571
-msgid "Automatically fill out user-details from SSO account-data"
+msgid "Require user to supply mail on signup"
msgstr ""
#: common/models.py:1577
-msgid "Mail twice"
+msgid "Auto-fill SSO users"
msgstr ""
#: common/models.py:1578
-msgid "On signup ask users twice for their mail"
+msgid "Automatically fill out user-details from SSO account-data"
msgstr ""
#: common/models.py:1584
-msgid "Password twice"
+msgid "Mail twice"
msgstr ""
#: common/models.py:1585
-msgid "On signup ask users twice for their password"
+msgid "On signup ask users twice for their mail"
msgstr ""
#: common/models.py:1591
-msgid "Allowed domains"
+msgid "Password twice"
msgstr ""
#: common/models.py:1592
-msgid "Restrict signup to certain domains (comma-separated, starting with @)"
+msgid "On signup ask users twice for their password"
msgstr ""
#: common/models.py:1598
-msgid "Group on signup"
+msgid "Allowed domains"
msgstr ""
#: common/models.py:1599
-msgid "Group to which new users are assigned on registration"
+msgid "Restrict signup to certain domains (comma-separated, starting with @)"
msgstr ""
#: common/models.py:1605
-msgid "Enforce MFA"
+msgid "Group on signup"
msgstr ""
#: common/models.py:1606
-msgid "Users must use multifactor security."
+msgid "Group to which new users are assigned on registration"
msgstr ""
#: common/models.py:1612
-msgid "Check plugins on startup"
+msgid "Enforce MFA"
msgstr ""
#: common/models.py:1613
-msgid "Check that all plugins are installed on startup - enable in container environments"
+msgid "Users must use multifactor security."
+msgstr ""
+
+#: common/models.py:1619
+msgid "Check plugins on startup"
msgstr ""
#: common/models.py:1620
-msgid "Check plugin signatures"
-msgstr ""
-
-#: common/models.py:1621
-msgid "Check and show signatures for plugins"
+msgid "Check that all plugins are installed on startup - enable in container environments"
msgstr ""
#: common/models.py:1628
@@ -2850,7 +2843,7 @@ msgstr ""
msgid "Stocktake reports will be deleted after specified number of days"
msgstr ""
-#: common/models.py:1710 common/models.py:2147
+#: common/models.py:1710 common/models.py:2133
msgid "Settings key (must be unique - case insensitive"
msgstr ""
@@ -2891,528 +2884,513 @@ msgid "Show latest parts on the homepage"
msgstr ""
#: common/models.py:1779
-msgid "Recent Part Count"
-msgstr ""
-
-#: common/models.py:1780
-msgid "Number of recent parts to display on index page"
-msgstr ""
-
-#: common/models.py:1786
msgid "Show unvalidated BOMs"
msgstr ""
-#: common/models.py:1787
+#: common/models.py:1780
msgid "Show BOMs that await validation on the homepage"
msgstr ""
-#: common/models.py:1793
+#: common/models.py:1786
msgid "Show recent stock changes"
msgstr ""
-#: common/models.py:1794
+#: common/models.py:1787
msgid "Show recently changed stock items on the homepage"
msgstr ""
-#: common/models.py:1800
-msgid "Recent Stock Count"
-msgstr ""
-
-#: common/models.py:1801
-msgid "Number of recent stock items to display on index page"
-msgstr ""
-
-#: common/models.py:1807
+#: common/models.py:1793
msgid "Show low stock"
msgstr ""
-#: common/models.py:1808
+#: common/models.py:1794
msgid "Show low stock items on the homepage"
msgstr ""
-#: common/models.py:1814
+#: common/models.py:1800
msgid "Show depleted stock"
msgstr ""
-#: common/models.py:1815
+#: common/models.py:1801
msgid "Show depleted stock items on the homepage"
msgstr ""
-#: common/models.py:1821
+#: common/models.py:1807
msgid "Show needed stock"
msgstr ""
-#: common/models.py:1822
+#: common/models.py:1808
msgid "Show stock items needed for builds on the homepage"
msgstr ""
-#: common/models.py:1828
+#: common/models.py:1814
msgid "Show expired stock"
msgstr ""
-#: common/models.py:1829
+#: common/models.py:1815
msgid "Show expired stock items on the homepage"
msgstr ""
-#: common/models.py:1835
+#: common/models.py:1821
msgid "Show stale stock"
msgstr ""
-#: common/models.py:1836
+#: common/models.py:1822
msgid "Show stale stock items on the homepage"
msgstr ""
-#: common/models.py:1842
+#: common/models.py:1828
msgid "Show pending builds"
msgstr ""
-#: common/models.py:1843
+#: common/models.py:1829
msgid "Show pending builds on the homepage"
msgstr ""
-#: common/models.py:1849
+#: common/models.py:1835
msgid "Show overdue builds"
msgstr ""
-#: common/models.py:1850
+#: common/models.py:1836
msgid "Show overdue builds on the homepage"
msgstr ""
-#: common/models.py:1856
+#: common/models.py:1842
msgid "Show outstanding POs"
msgstr ""
-#: common/models.py:1857
+#: common/models.py:1843
msgid "Show outstanding POs on the homepage"
msgstr ""
-#: common/models.py:1863
+#: common/models.py:1849
msgid "Show overdue POs"
msgstr ""
-#: common/models.py:1864
+#: common/models.py:1850
msgid "Show overdue POs on the homepage"
msgstr ""
-#: common/models.py:1870
+#: common/models.py:1856
msgid "Show outstanding SOs"
msgstr ""
-#: common/models.py:1871
+#: common/models.py:1857
msgid "Show outstanding SOs on the homepage"
msgstr ""
-#: common/models.py:1877
+#: common/models.py:1863
msgid "Show overdue SOs"
msgstr ""
-#: common/models.py:1878
+#: common/models.py:1864
msgid "Show overdue SOs on the homepage"
msgstr ""
-#: common/models.py:1884
+#: common/models.py:1870
msgid "Show pending SO shipments"
msgstr ""
-#: common/models.py:1885
+#: common/models.py:1871
msgid "Show pending SO shipments on the homepage"
msgstr ""
-#: common/models.py:1891
+#: common/models.py:1877
msgid "Show News"
msgstr ""
-#: common/models.py:1892
+#: common/models.py:1878
msgid "Show news on the homepage"
msgstr ""
-#: common/models.py:1898
+#: common/models.py:1884
msgid "Inline label display"
msgstr ""
-#: common/models.py:1899
+#: common/models.py:1885
msgid "Display PDF labels in the browser, instead of downloading as a file"
msgstr ""
-#: common/models.py:1905
+#: common/models.py:1891
msgid "Default label printer"
msgstr ""
-#: common/models.py:1906
+#: common/models.py:1892
msgid "Configure which label printer should be selected by default"
msgstr ""
-#: common/models.py:1912
+#: common/models.py:1898
msgid "Inline report display"
msgstr ""
-#: common/models.py:1913
+#: common/models.py:1899
msgid "Display PDF reports in the browser, instead of downloading as a file"
msgstr ""
-#: common/models.py:1919
+#: common/models.py:1905
msgid "Search Parts"
msgstr ""
-#: common/models.py:1920
+#: common/models.py:1906
msgid "Display parts in search preview window"
msgstr ""
-#: common/models.py:1926
+#: common/models.py:1912
msgid "Search Supplier Parts"
msgstr ""
-#: common/models.py:1927
+#: common/models.py:1913
msgid "Display supplier parts in search preview window"
msgstr ""
-#: common/models.py:1933
+#: common/models.py:1919
msgid "Search Manufacturer Parts"
msgstr ""
-#: common/models.py:1934
+#: common/models.py:1920
msgid "Display manufacturer parts in search preview window"
msgstr ""
-#: common/models.py:1940
+#: common/models.py:1926
msgid "Hide Inactive Parts"
msgstr ""
-#: common/models.py:1941
+#: common/models.py:1927
msgid "Excluded inactive parts from search preview window"
msgstr ""
-#: common/models.py:1947
+#: common/models.py:1933
msgid "Search Categories"
msgstr ""
-#: common/models.py:1948
+#: common/models.py:1934
msgid "Display part categories in search preview window"
msgstr ""
-#: common/models.py:1954
+#: common/models.py:1940
msgid "Search Stock"
msgstr ""
-#: common/models.py:1955
+#: common/models.py:1941
msgid "Display stock items in search preview window"
msgstr ""
-#: common/models.py:1961
+#: common/models.py:1947
msgid "Hide Unavailable Stock Items"
msgstr ""
-#: common/models.py:1962
+#: common/models.py:1948
msgid "Exclude stock items which are not available from the search preview window"
msgstr ""
-#: common/models.py:1968
+#: common/models.py:1954
msgid "Search Locations"
msgstr ""
-#: common/models.py:1969
+#: common/models.py:1955
msgid "Display stock locations in search preview window"
msgstr ""
-#: common/models.py:1975
+#: common/models.py:1961
msgid "Search Companies"
msgstr ""
-#: common/models.py:1976
+#: common/models.py:1962
msgid "Display companies in search preview window"
msgstr ""
-#: common/models.py:1982
+#: common/models.py:1968
msgid "Search Build Orders"
msgstr ""
-#: common/models.py:1983
+#: common/models.py:1969
msgid "Display build orders in search preview window"
msgstr ""
-#: common/models.py:1989
+#: common/models.py:1975
msgid "Search Purchase Orders"
msgstr ""
-#: common/models.py:1990
+#: common/models.py:1976
msgid "Display purchase orders in search preview window"
msgstr ""
-#: common/models.py:1996
+#: common/models.py:1982
msgid "Exclude Inactive Purchase Orders"
msgstr ""
-#: common/models.py:1997
+#: common/models.py:1983
msgid "Exclude inactive purchase orders from search preview window"
msgstr ""
-#: common/models.py:2003
+#: common/models.py:1989
msgid "Search Sales Orders"
msgstr ""
-#: common/models.py:2004
+#: common/models.py:1990
msgid "Display sales orders in search preview window"
msgstr ""
-#: common/models.py:2010
+#: common/models.py:1996
msgid "Exclude Inactive Sales Orders"
msgstr ""
-#: common/models.py:2011
+#: common/models.py:1997
msgid "Exclude inactive sales orders from search preview window"
msgstr ""
-#: common/models.py:2017
+#: common/models.py:2003
msgid "Search Return Orders"
msgstr ""
-#: common/models.py:2018
+#: common/models.py:2004
msgid "Display return orders in search preview window"
msgstr ""
-#: common/models.py:2024
+#: common/models.py:2010
msgid "Exclude Inactive Return Orders"
msgstr ""
-#: common/models.py:2025
+#: common/models.py:2011
msgid "Exclude inactive return orders from search preview window"
msgstr ""
-#: common/models.py:2031
+#: common/models.py:2017
msgid "Search Preview Results"
msgstr ""
-#: common/models.py:2032
+#: common/models.py:2018
msgid "Number of results to show in each section of the search preview window"
msgstr ""
-#: common/models.py:2038
+#: common/models.py:2024
msgid "Regex Search"
msgstr ""
-#: common/models.py:2039
+#: common/models.py:2025
msgid "Enable regular expressions in search queries"
msgstr ""
-#: common/models.py:2045
+#: common/models.py:2031
msgid "Whole Word Search"
msgstr ""
-#: common/models.py:2046
+#: common/models.py:2032
msgid "Search queries return results for whole word matches"
msgstr ""
-#: common/models.py:2052
+#: common/models.py:2038
msgid "Show Quantity in Forms"
msgstr ""
-#: common/models.py:2053
+#: common/models.py:2039
msgid "Display available part quantity in some forms"
msgstr ""
-#: common/models.py:2059
+#: common/models.py:2045
msgid "Escape Key Closes Forms"
msgstr ""
-#: common/models.py:2060
+#: common/models.py:2046
msgid "Use the escape key to close modal forms"
msgstr ""
-#: common/models.py:2066
+#: common/models.py:2052
msgid "Fixed Navbar"
msgstr ""
-#: common/models.py:2067
+#: common/models.py:2053
msgid "The navbar position is fixed to the top of the screen"
msgstr ""
-#: common/models.py:2073
+#: common/models.py:2059
msgid "Date Format"
msgstr ""
-#: common/models.py:2074
+#: common/models.py:2060
msgid "Preferred format for displaying dates"
msgstr ""
-#: common/models.py:2088 part/templates/part/detail.html:41
+#: common/models.py:2074 part/templates/part/detail.html:41
msgid "Part Scheduling"
msgstr ""
-#: common/models.py:2089
+#: common/models.py:2075
msgid "Display part scheduling information"
msgstr ""
-#: common/models.py:2095 part/templates/part/detail.html:62
+#: common/models.py:2081 part/templates/part/detail.html:62
msgid "Part Stocktake"
msgstr ""
-#: common/models.py:2096
+#: common/models.py:2082
msgid "Display part stocktake information (if stocktake functionality is enabled)"
msgstr ""
-#: common/models.py:2102
+#: common/models.py:2088
msgid "Table String Length"
msgstr ""
-#: common/models.py:2103
+#: common/models.py:2089
msgid "Maximimum length limit for strings displayed in table views"
msgstr ""
-#: common/models.py:2112
+#: common/models.py:2098
msgid "Default part label template"
msgstr ""
-#: common/models.py:2113
+#: common/models.py:2099
msgid "The part label template to be automatically selected"
msgstr ""
-#: common/models.py:2121
+#: common/models.py:2107
msgid "Default stock item template"
msgstr ""
-#: common/models.py:2122
+#: common/models.py:2108
msgid "The stock item label template to be automatically selected"
msgstr ""
-#: common/models.py:2130
+#: common/models.py:2116
msgid "Default stock location label template"
msgstr ""
-#: common/models.py:2131
+#: common/models.py:2117
msgid "The stock location label template to be automatically selected"
msgstr ""
-#: common/models.py:2177
+#: common/models.py:2163
msgid "Price break quantity"
msgstr ""
-#: common/models.py:2184 company/serializers.py:434 order/admin.py:43
-#: order/models.py:1132 order/models.py:1939
-#: templates/js/translated/company.js:1433 templates/js/translated/part.js:1856
+#: common/models.py:2170 company/serializers.py:491 order/admin.py:43
+#: order/models.py:1145 order/models.py:1952
+#: templates/js/translated/company.js:1854 templates/js/translated/part.js:1855
#: templates/js/translated/pricing.js:621
-#: templates/js/translated/return_order.js:725
+#: templates/js/translated/return_order.js:737
msgid "Price"
msgstr ""
-#: common/models.py:2185
+#: common/models.py:2171
msgid "Unit price at specified quantity"
msgstr ""
-#: common/models.py:2345 common/models.py:2523
+#: common/models.py:2331 common/models.py:2509
msgid "Endpoint"
msgstr ""
-#: common/models.py:2346
+#: common/models.py:2332
msgid "Endpoint at which this webhook is received"
msgstr ""
-#: common/models.py:2355
+#: common/models.py:2341
msgid "Name for this webhook"
msgstr ""
-#: common/models.py:2360 part/admin.py:50 part/models.py:1023
-#: plugin/models.py:47 templates/js/translated/table_filters.js:105
-#: templates/js/translated/table_filters.js:189
-#: templates/js/translated/table_filters.js:434
-#: templates/js/translated/table_filters.js:450
-#: templates/js/translated/table_filters.js:629
+#: common/models.py:2346 part/admin.py:50 part/models.py:1024
+#: plugin/models.py:48 templates/js/translated/table_filters.js:111
+#: templates/js/translated/table_filters.js:195
+#: templates/js/translated/table_filters.js:440
+#: templates/js/translated/table_filters.js:456
+#: templates/js/translated/table_filters.js:651
msgid "Active"
msgstr ""
-#: common/models.py:2361
+#: common/models.py:2347
msgid "Is this webhook active"
msgstr ""
-#: common/models.py:2375
+#: common/models.py:2361
msgid "Token"
msgstr ""
-#: common/models.py:2376
+#: common/models.py:2362
msgid "Token for access"
msgstr ""
-#: common/models.py:2383
+#: common/models.py:2369
msgid "Secret"
msgstr ""
-#: common/models.py:2384
+#: common/models.py:2370
msgid "Shared secret for HMAC"
msgstr ""
-#: common/models.py:2490
+#: common/models.py:2476
msgid "Message ID"
msgstr ""
-#: common/models.py:2491
+#: common/models.py:2477
msgid "Unique identifier for this message"
msgstr ""
-#: common/models.py:2499
+#: common/models.py:2485
msgid "Host"
msgstr ""
-#: common/models.py:2500
+#: common/models.py:2486
msgid "Host from which this message was received"
msgstr ""
-#: common/models.py:2507
+#: common/models.py:2493
msgid "Header"
msgstr ""
-#: common/models.py:2508
+#: common/models.py:2494
msgid "Header of this message"
msgstr ""
-#: common/models.py:2514
+#: common/models.py:2500
msgid "Body"
msgstr ""
-#: common/models.py:2515
+#: common/models.py:2501
msgid "Body of this message"
msgstr ""
-#: common/models.py:2524
+#: common/models.py:2510
msgid "Endpoint on which this message was received"
msgstr ""
-#: common/models.py:2529
+#: common/models.py:2515
msgid "Worked on"
msgstr ""
-#: common/models.py:2530
+#: common/models.py:2516
msgid "Was the work on this message finished?"
msgstr ""
-#: common/models.py:2684
+#: common/models.py:2670
msgid "Id"
msgstr ""
-#: common/models.py:2690 templates/js/translated/news.js:44
+#: common/models.py:2676 templates/js/translated/company.js:996
+#: templates/js/translated/news.js:44
msgid "Title"
msgstr ""
-#: common/models.py:2700 templates/js/translated/news.js:60
+#: common/models.py:2686 templates/js/translated/news.js:60
msgid "Published"
msgstr ""
-#: common/models.py:2705 templates/InvenTree/settings/plugin_settings.html:32
+#: common/models.py:2691 templates/InvenTree/settings/plugin_settings.html:32
#: templates/js/translated/news.js:56 templates/js/translated/plugin.js:106
msgid "Author"
msgstr ""
-#: common/models.py:2710 templates/js/translated/news.js:52
+#: common/models.py:2696 templates/js/translated/news.js:52
msgid "Summary"
msgstr ""
-#: common/models.py:2715
+#: common/models.py:2701
msgid "Read"
msgstr ""
-#: common/models.py:2716
+#: common/models.py:2702
msgid "Was this news item read?"
msgstr ""
-#: common/models.py:2736 company/models.py:143 part/models.py:914
+#: common/models.py:2722 company/models.py:139 part/models.py:915
#: report/templates/report/inventree_bill_of_materials_report.html:126
#: report/templates/report/inventree_bill_of_materials_report.html:148
#: report/templates/report/inventree_return_order_report_base.html:35
@@ -3422,7 +3400,7 @@ msgstr ""
msgid "Image"
msgstr ""
-#: common/models.py:2737
+#: common/models.py:2723
msgid "Image file"
msgstr ""
@@ -3499,7 +3477,7 @@ msgstr ""
#: company/models.py:113 company/templates/company/company_base.html:101
#: templates/InvenTree/settings/plugin_settings.html:54
-#: templates/js/translated/company.js:514
+#: templates/js/translated/company.js:521
msgid "Website"
msgstr ""
@@ -3507,303 +3485,387 @@ msgstr ""
msgid "Company website URL"
msgstr ""
-#: company/models.py:118 company/templates/company/company_base.html:119
-msgid "Address"
-msgstr ""
-
-#: company/models.py:119
-msgid "Company address"
-msgstr ""
-
-#: company/models.py:122
+#: company/models.py:118
msgid "Phone number"
msgstr ""
-#: company/models.py:123
+#: company/models.py:119
msgid "Contact phone number"
msgstr ""
-#: company/models.py:126 company/templates/company/company_base.html:133
+#: company/models.py:122 company/templates/company/company_base.html:133
#: templates/InvenTree/settings/user.html:49
-#: templates/js/translated/company.js:659
+#: templates/js/translated/company.js:666
msgid "Email"
msgstr ""
-#: company/models.py:126
+#: company/models.py:122
msgid "Contact email address"
msgstr ""
-#: company/models.py:129 company/templates/company/company_base.html:140
-#: order/models.py:266 order/templates/order/order_base.html:207
+#: company/models.py:125 company/templates/company/company_base.html:140
+#: order/models.py:270 order/templates/order/order_base.html:203
#: order/templates/order/return_order_base.html:175
#: order/templates/order/sales_order_base.html:215
msgid "Contact"
msgstr ""
-#: company/models.py:130
+#: company/models.py:126
msgid "Point of contact"
msgstr ""
-#: company/models.py:132
+#: company/models.py:128
msgid "Link to external company information"
msgstr ""
-#: company/models.py:146
+#: company/models.py:142
msgid "is customer"
msgstr ""
-#: company/models.py:146
+#: company/models.py:142
msgid "Do you sell items to this company?"
msgstr ""
-#: company/models.py:148
+#: company/models.py:144
msgid "is supplier"
msgstr ""
-#: company/models.py:148
+#: company/models.py:144
msgid "Do you purchase items from this company?"
msgstr ""
-#: company/models.py:150
+#: company/models.py:146
msgid "is manufacturer"
msgstr ""
-#: company/models.py:150
+#: company/models.py:146
msgid "Does this company manufacture parts?"
msgstr ""
-#: company/models.py:157
+#: company/models.py:153
msgid "Default currency used for this company"
msgstr ""
-#: company/models.py:223 company/templates/company/company_base.html:8
+#: company/models.py:235 company/models.py:328
+#: company/templates/company/company_base.html:8
#: company/templates/company/company_base.html:12
-#: templates/InvenTree/search.html:178 templates/js/translated/company.js:487
+#: templates/InvenTree/search.html:178 templates/js/translated/company.js:494
msgid "Company"
msgstr ""
-#: company/models.py:278 company/models.py:553 stock/models.py:675
-#: stock/serializers.py:155 stock/templates/stock/item_base.html:143
-#: templates/js/translated/bom.js:621
+#: company/models.py:324
+msgid "Company already has a primary address"
+msgstr ""
+
+#: company/models.py:329
+msgid "Select company"
+msgstr ""
+
+#: company/models.py:332
+msgid "Address title"
+msgstr ""
+
+#: company/models.py:333
+msgid "Title describing the address entry"
+msgstr ""
+
+#: company/models.py:337
+msgid "Primary address"
+msgstr ""
+
+#: company/models.py:338
+msgid "Set as primary address"
+msgstr ""
+
+#: company/models.py:341 templates/js/translated/company.js:941
+#: templates/js/translated/company.js:1002
+msgid "Line 1"
+msgstr ""
+
+#: company/models.py:342
+msgid "Address line 1"
+msgstr ""
+
+#: company/models.py:346 templates/js/translated/company.js:942
+#: templates/js/translated/company.js:1008
+msgid "Line 2"
+msgstr ""
+
+#: company/models.py:347
+msgid "Address line 2"
+msgstr ""
+
+#: company/models.py:351 company/models.py:352
+#: templates/js/translated/company.js:1014
+msgid "Postal code"
+msgstr ""
+
+#: company/models.py:356
+msgid "City/Region"
+msgstr ""
+
+#: company/models.py:357
+msgid "Postal code city/region"
+msgstr ""
+
+#: company/models.py:361
+msgid "State/Province"
+msgstr ""
+
+#: company/models.py:362
+msgid "State or province"
+msgstr ""
+
+#: company/models.py:366 templates/js/translated/company.js:1032
+msgid "Country"
+msgstr ""
+
+#: company/models.py:367
+msgid "Address country"
+msgstr ""
+
+#: company/models.py:371
+msgid "Courier shipping notes"
+msgstr ""
+
+#: company/models.py:372
+msgid "Notes for shipping courier"
+msgstr ""
+
+#: company/models.py:376
+msgid "Internal shipping notes"
+msgstr ""
+
+#: company/models.py:377
+msgid "Shipping notes for internal use"
+msgstr ""
+
+#: company/models.py:382
+msgid "Link to address information (external)"
+msgstr ""
+
+#: company/models.py:427 company/models.py:702 stock/models.py:675
+#: stock/serializers.py:204 stock/templates/stock/item_base.html:143
+#: templates/js/translated/bom.js:622
msgid "Base Part"
msgstr ""
-#: company/models.py:282 company/models.py:557
+#: company/models.py:431 company/models.py:706
msgid "Select part"
msgstr ""
-#: company/models.py:293 company/templates/company/company_base.html:77
+#: company/models.py:442 company/templates/company/company_base.html:77
#: company/templates/company/manufacturer_part.html:90
-#: company/templates/company/supplier_part.html:146 part/serializers.py:354
+#: company/templates/company/supplier_part.html:146 part/serializers.py:404
#: stock/templates/stock/item_base.html:208
-#: templates/js/translated/company.js:498
-#: templates/js/translated/company.js:824
-#: templates/js/translated/company.js:954
-#: templates/js/translated/company.js:1221
-#: templates/js/translated/table_filters.js:709
+#: templates/js/translated/company.js:505
+#: templates/js/translated/company.js:1149
+#: templates/js/translated/company.js:1327
+#: templates/js/translated/company.js:1642
+#: templates/js/translated/table_filters.js:731
msgid "Manufacturer"
msgstr ""
-#: company/models.py:294
+#: company/models.py:443
msgid "Select manufacturer"
msgstr ""
-#: company/models.py:300 company/templates/company/manufacturer_part.html:101
-#: company/templates/company/supplier_part.html:154 part/serializers.py:360
-#: templates/js/translated/company.js:340
-#: templates/js/translated/company.js:823
-#: templates/js/translated/company.js:970
-#: templates/js/translated/company.js:1240 templates/js/translated/part.js:1773
-#: templates/js/translated/purchase_order.js:1814
-#: templates/js/translated/purchase_order.js:2021
+#: company/models.py:449 company/templates/company/manufacturer_part.html:101
+#: company/templates/company/supplier_part.html:154 part/serializers.py:410
+#: templates/js/translated/company.js:350
+#: templates/js/translated/company.js:1148
+#: templates/js/translated/company.js:1343
+#: templates/js/translated/company.js:1661 templates/js/translated/part.js:1772
+#: templates/js/translated/purchase_order.js:1829
+#: templates/js/translated/purchase_order.js:2031
msgid "MPN"
msgstr ""
-#: company/models.py:301
+#: company/models.py:450
msgid "Manufacturer Part Number"
msgstr ""
-#: company/models.py:307
+#: company/models.py:456
msgid "URL for external manufacturer part link"
msgstr ""
-#: company/models.py:313
+#: company/models.py:462
msgid "Manufacturer part description"
msgstr ""
-#: company/models.py:360 company/models.py:384 company/models.py:578
+#: company/models.py:509 company/models.py:533 company/models.py:727
#: company/templates/company/manufacturer_part.html:7
#: company/templates/company/manufacturer_part.html:24
#: stock/templates/stock/item_base.html:218
msgid "Manufacturer Part"
msgstr ""
-#: company/models.py:391
+#: company/models.py:540
msgid "Parameter name"
msgstr ""
-#: company/models.py:397
+#: company/models.py:546
#: report/templates/report/inventree_test_report_base.html:104
-#: stock/models.py:2255 templates/js/translated/company.js:872
-#: templates/js/translated/company.js:1077 templates/js/translated/part.js:1465
-#: templates/js/translated/stock.js:1446
+#: stock/models.py:2255 templates/js/translated/company.js:1197
+#: templates/js/translated/company.js:1450 templates/js/translated/part.js:1464
+#: templates/js/translated/stock.js:1445
msgid "Value"
msgstr ""
-#: company/models.py:398
+#: company/models.py:547
msgid "Parameter value"
msgstr ""
-#: company/models.py:404 company/templates/company/supplier_part.html:169
-#: part/admin.py:40 part/models.py:987 part/models.py:3407
+#: company/models.py:553 company/templates/company/supplier_part.html:169
+#: part/admin.py:40 part/models.py:988 part/models.py:3441
#: part/templates/part/part_base.html:286
-#: templates/js/translated/company.js:1083 templates/js/translated/part.js:1484
-#: templates/js/translated/part.js:1588 templates/js/translated/part.js:2262
+#: templates/js/translated/company.js:1456 templates/js/translated/part.js:1483
+#: templates/js/translated/part.js:1587 templates/js/translated/part.js:2338
msgid "Units"
msgstr ""
-#: company/models.py:405
+#: company/models.py:554
msgid "Parameter units"
msgstr ""
-#: company/models.py:498
+#: company/models.py:647
msgid "Pack units must be compatible with the base part units"
msgstr ""
-#: company/models.py:504
+#: company/models.py:653
msgid "Pack units must be greater than zero"
msgstr ""
-#: company/models.py:520
+#: company/models.py:669
msgid "Linked manufacturer part must reference the same base part"
msgstr ""
-#: company/models.py:564 company/templates/company/company_base.html:82
-#: company/templates/company/supplier_part.html:130 order/models.py:382
-#: order/templates/order/order_base.html:140 part/bom.py:285 part/bom.py:313
-#: part/serializers.py:343 stock/templates/stock/item_base.html:225
+#: company/models.py:713 company/templates/company/company_base.html:82
+#: company/templates/company/supplier_part.html:130 order/models.py:395
+#: order/templates/order/order_base.html:136 part/bom.py:285 part/bom.py:313
+#: part/serializers.py:393 stock/templates/stock/item_base.html:225
#: templates/email/overdue_purchase_order.html:16
-#: templates/js/translated/company.js:339
-#: templates/js/translated/company.js:502
-#: templates/js/translated/company.js:1194 templates/js/translated/part.js:1741
+#: templates/js/translated/company.js:349
+#: templates/js/translated/company.js:509
+#: templates/js/translated/company.js:1615 templates/js/translated/part.js:1740
#: templates/js/translated/pricing.js:498
-#: templates/js/translated/purchase_order.js:1653
-#: templates/js/translated/table_filters.js:713
+#: templates/js/translated/purchase_order.js:1668
+#: templates/js/translated/table_filters.js:735
msgid "Supplier"
msgstr ""
-#: company/models.py:565
+#: company/models.py:714
msgid "Select supplier"
msgstr ""
-#: company/models.py:570 company/templates/company/supplier_part.html:140
-#: part/bom.py:286 part/bom.py:314 part/serializers.py:349
-#: templates/js/translated/company.js:338 templates/js/translated/part.js:1759
+#: company/models.py:719 company/templates/company/supplier_part.html:140
+#: part/bom.py:286 part/bom.py:314 part/serializers.py:399
+#: templates/js/translated/company.js:348 templates/js/translated/part.js:1758
#: templates/js/translated/pricing.js:510
-#: templates/js/translated/purchase_order.js:1813
-#: templates/js/translated/purchase_order.js:1996
+#: templates/js/translated/purchase_order.js:1828
+#: templates/js/translated/purchase_order.js:2006
msgid "SKU"
msgstr ""
-#: company/models.py:571 part/serializers.py:349
+#: company/models.py:720 part/serializers.py:399
msgid "Supplier stock keeping unit"
msgstr ""
-#: company/models.py:579
+#: company/models.py:728
msgid "Select manufacturer part"
msgstr ""
-#: company/models.py:585
+#: company/models.py:734
msgid "URL for external supplier part link"
msgstr ""
-#: company/models.py:591
+#: company/models.py:740
msgid "Supplier part description"
msgstr ""
-#: company/models.py:596 company/templates/company/supplier_part.html:188
-#: part/admin.py:279 part/models.py:3801 part/templates/part/upload_bom.html:59
+#: company/models.py:745 company/templates/company/supplier_part.html:188
+#: part/admin.py:279 part/models.py:3845 part/templates/part/upload_bom.html:59
#: report/templates/report/inventree_bill_of_materials_report.html:140
#: report/templates/report/inventree_po_report_base.html:32
#: report/templates/report/inventree_return_order_report_base.html:27
#: report/templates/report/inventree_so_report_base.html:32
-#: stock/serializers.py:418
+#: stock/serializers.py:484
msgid "Note"
msgstr ""
-#: company/models.py:600 part/models.py:1919
+#: company/models.py:749 part/models.py:1921
msgid "base cost"
msgstr ""
-#: company/models.py:600 part/models.py:1919
+#: company/models.py:749 part/models.py:1921
msgid "Minimum charge (e.g. stocking fee)"
msgstr ""
-#: company/models.py:602 company/templates/company/supplier_part.html:161
+#: company/models.py:751 company/templates/company/supplier_part.html:161
#: stock/admin.py:119 stock/models.py:701
#: stock/templates/stock/item_base.html:241
-#: templates/js/translated/company.js:1256
-#: templates/js/translated/stock.js:2160
+#: templates/js/translated/company.js:1677
+#: templates/js/translated/stock.js:2317
msgid "Packaging"
msgstr ""
-#: company/models.py:602
+#: company/models.py:751
msgid "Part packaging"
msgstr ""
-#: company/models.py:606 templates/js/translated/company.js:1261
-#: templates/js/translated/part.js:1793 templates/js/translated/part.js:1848
-#: templates/js/translated/purchase_order.js:300
-#: templates/js/translated/purchase_order.js:827
-#: templates/js/translated/purchase_order.js:1073
-#: templates/js/translated/purchase_order.js:2052
-#: templates/js/translated/purchase_order.js:2069
+#: company/models.py:755 templates/js/translated/company.js:1682
+#: templates/js/translated/part.js:1792 templates/js/translated/part.js:1847
+#: templates/js/translated/purchase_order.js:311
+#: templates/js/translated/purchase_order.js:842
+#: templates/js/translated/purchase_order.js:1088
+#: templates/js/translated/purchase_order.js:2062
+#: templates/js/translated/purchase_order.js:2079
msgid "Pack Quantity"
msgstr ""
-#: company/models.py:607
+#: company/models.py:756
msgid "Total quantity supplied in a single pack. Leave empty for single items."
msgstr ""
-#: company/models.py:624 part/models.py:1921
+#: company/models.py:773 part/models.py:1923
msgid "multiple"
msgstr ""
-#: company/models.py:624
+#: company/models.py:773
msgid "Order multiple"
msgstr ""
-#: company/models.py:632 company/templates/company/supplier_part.html:115
+#: company/models.py:781 company/templates/company/supplier_part.html:115
#: templates/email/build_order_required_stock.html:19
#: templates/email/low_stock_notification.html:17
-#: templates/js/translated/bom.js:1127 templates/js/translated/build.js:2136
-#: templates/js/translated/build.js:3045
-#: templates/js/translated/model_renderers.js:205
-#: templates/js/translated/part.js:670 templates/js/translated/part.js:672
-#: templates/js/translated/part.js:677
-#: templates/js/translated/table_filters.js:286
-#: templates/js/translated/table_filters.js:492
+#: templates/js/translated/bom.js:1145 templates/js/translated/build.js:2490
+#: templates/js/translated/index.js:118
+#: templates/js/translated/model_renderers.js:219
+#: templates/js/translated/part.js:669 templates/js/translated/part.js:671
+#: templates/js/translated/part.js:676
+#: templates/js/translated/table_filters.js:292
+#: templates/js/translated/table_filters.js:510
msgid "Available"
msgstr ""
-#: company/models.py:633
+#: company/models.py:782
msgid "Quantity available from supplier"
msgstr ""
-#: company/models.py:637
+#: company/models.py:786
msgid "Availability Updated"
msgstr ""
-#: company/models.py:638
+#: company/models.py:787
msgid "Date of last update of availability data"
msgstr ""
-#: company/serializers.py:99
+#: company/serializers.py:156
msgid "Default currency used for this supplier"
msgstr ""
#: company/templates/company/company_base.html:22
-#: templates/js/translated/purchase_order.js:228
+#: templates/js/translated/purchase_order.js:239
msgid "Create Purchase Order"
msgstr ""
@@ -3816,7 +3878,7 @@ msgid "Edit company information"
msgstr ""
#: company/templates/company/company_base.html:34
-#: templates/js/translated/company.js:436
+#: templates/js/translated/company.js:443
msgid "Edit Company"
msgstr ""
@@ -3856,17 +3918,17 @@ msgstr ""
msgid "Delete image"
msgstr ""
-#: company/templates/company/company_base.html:87 order/models.py:779
-#: order/models.py:1738 order/templates/order/return_order_base.html:132
+#: company/templates/company/company_base.html:87 order/models.py:792
+#: order/models.py:1751 order/templates/order/return_order_base.html:132
#: order/templates/order/sales_order_base.html:145 stock/models.py:720
-#: stock/models.py:721 stock/serializers.py:825
+#: stock/models.py:721 stock/serializers.py:942
#: stock/templates/stock/item_base.html:401
#: templates/email/overdue_sales_order.html:16
-#: templates/js/translated/company.js:494
-#: templates/js/translated/return_order.js:284
-#: templates/js/translated/sales_order.js:772
-#: templates/js/translated/stock.js:2696
-#: templates/js/translated/table_filters.js:717
+#: templates/js/translated/company.js:501
+#: templates/js/translated/return_order.js:296
+#: templates/js/translated/sales_order.js:784
+#: templates/js/translated/stock.js:2827
+#: templates/js/translated/table_filters.js:739
msgid "Customer"
msgstr ""
@@ -3874,6 +3936,13 @@ msgstr ""
msgid "Uses default currency"
msgstr ""
+#: company/templates/company/company_base.html:119 order/models.py:279
+#: order/templates/order/order_base.html:210
+#: order/templates/order/return_order_base.html:182
+#: order/templates/order/sales_order_base.html:222
+msgid "Address"
+msgstr ""
+
#: company/templates/company/company_base.html:126
msgid "Phone"
msgstr ""
@@ -3906,7 +3975,7 @@ msgstr ""
#: company/templates/company/detail.html:15
#: company/templates/company/manufacturer_part_sidebar.html:7
-#: templates/InvenTree/search.html:120 templates/js/translated/search.js:189
+#: templates/InvenTree/search.html:120 templates/js/translated/search.js:147
msgid "Supplier Parts"
msgstr ""
@@ -3916,129 +3985,121 @@ msgstr ""
#: company/templates/company/detail.html:20
#: company/templates/company/manufacturer_part.html:123
-#: part/templates/part/detail.html:381
+#: part/templates/part/detail.html:356
msgid "New Supplier Part"
msgstr ""
-#: company/templates/company/detail.html:37
-#: company/templates/company/detail.html:85
-#: part/templates/part/category.html:183
-msgid "Order parts"
-msgstr ""
-
-#: company/templates/company/detail.html:42
-#: company/templates/company/detail.html:90
-msgid "Delete parts"
-msgstr ""
-
-#: company/templates/company/detail.html:43
-#: company/templates/company/detail.html:91
-msgid "Delete Parts"
-msgstr ""
-
-#: company/templates/company/detail.html:62 templates/InvenTree/search.html:105
-#: templates/js/translated/search.js:193
+#: company/templates/company/detail.html:41 templates/InvenTree/search.html:105
+#: templates/js/translated/search.js:151
msgid "Manufacturer Parts"
msgstr ""
-#: company/templates/company/detail.html:66
+#: company/templates/company/detail.html:45
msgid "Create new manufacturer part"
msgstr ""
-#: company/templates/company/detail.html:67 part/templates/part/detail.html:411
+#: company/templates/company/detail.html:46 part/templates/part/detail.html:376
msgid "New Manufacturer Part"
msgstr ""
-#: company/templates/company/detail.html:108
+#: company/templates/company/detail.html:65
msgid "Supplier Stock"
msgstr ""
-#: company/templates/company/detail.html:118
+#: company/templates/company/detail.html:75
#: company/templates/company/sidebar.html:12
#: company/templates/company/supplier_part_sidebar.html:7
#: 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:108 part/templates/part/part_sidebar.html:35
-#: templates/InvenTree/index.html:275 templates/InvenTree/search.html:199
+#: part/templates/part/detail.html:106 part/templates/part/part_sidebar.html:35
+#: templates/InvenTree/index.html:227 templates/InvenTree/search.html:199
#: templates/InvenTree/settings/sidebar.html:55
-#: templates/js/translated/search.js:247 templates/navbar.html:50
+#: templates/js/translated/search.js:205 templates/navbar.html:50
#: users/models.py:43
msgid "Purchase Orders"
msgstr ""
-#: company/templates/company/detail.html:122
+#: company/templates/company/detail.html:79
#: order/templates/order/purchase_orders.html:17
msgid "Create new purchase order"
msgstr ""
-#: company/templates/company/detail.html:123
+#: company/templates/company/detail.html:80
#: order/templates/order/purchase_orders.html:18
msgid "New Purchase Order"
msgstr ""
-#: company/templates/company/detail.html:146
+#: company/templates/company/detail.html:101
#: company/templates/company/sidebar.html:21
#: 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:131 part/templates/part/part_sidebar.html:39
-#: templates/InvenTree/index.html:307 templates/InvenTree/search.html:219
+#: part/templates/part/detail.html:127 part/templates/part/part_sidebar.html:39
+#: templates/InvenTree/index.html:259 templates/InvenTree/search.html:219
#: templates/InvenTree/settings/sidebar.html:57
-#: templates/js/translated/search.js:261 templates/navbar.html:62
+#: templates/js/translated/search.js:219 templates/navbar.html:62
#: users/models.py:44
msgid "Sales Orders"
msgstr ""
-#: company/templates/company/detail.html:150
+#: company/templates/company/detail.html:105
#: order/templates/order/sales_orders.html:20
msgid "Create new sales order"
msgstr ""
-#: company/templates/company/detail.html:151
+#: company/templates/company/detail.html:106
#: order/templates/order/sales_orders.html:21
msgid "New Sales Order"
msgstr ""
-#: company/templates/company/detail.html:173
-#: templates/js/translated/build.js:1976
+#: company/templates/company/detail.html:126
msgid "Assigned Stock"
msgstr ""
-#: company/templates/company/detail.html:191
+#: company/templates/company/detail.html:142
#: company/templates/company/sidebar.html:29
#: order/templates/order/return_order_base.html:13
#: order/templates/order/return_orders.html:8
#: order/templates/order/return_orders.html:15
#: templates/InvenTree/settings/sidebar.html:59
-#: templates/js/translated/search.js:274 templates/navbar.html:65
+#: templates/js/translated/search.js:232 templates/navbar.html:65
#: users/models.py:45
msgid "Return Orders"
msgstr ""
-#: company/templates/company/detail.html:195
+#: company/templates/company/detail.html:146
#: order/templates/order/return_orders.html:20
msgid "Create new return order"
msgstr ""
-#: company/templates/company/detail.html:196
+#: company/templates/company/detail.html:147
#: order/templates/order/return_orders.html:21
msgid "New Return Order"
msgstr ""
-#: company/templates/company/detail.html:221
+#: company/templates/company/detail.html:168
msgid "Company Notes"
msgstr ""
-#: company/templates/company/detail.html:236
+#: company/templates/company/detail.html:183
msgid "Company Contacts"
msgstr ""
-#: company/templates/company/detail.html:240
-#: company/templates/company/detail.html:241
+#: company/templates/company/detail.html:187
+#: company/templates/company/detail.html:188
msgid "Add Contact"
msgstr ""
+#: company/templates/company/detail.html:206
+msgid "Company addresses"
+msgstr ""
+
+#: company/templates/company/detail.html:210
+#: company/templates/company/detail.html:211
+msgid "Add Address"
+msgstr ""
+
#: company/templates/company/index.html:8
msgid "Supplier List"
msgstr ""
@@ -4050,17 +4111,17 @@ msgstr ""
#: company/templates/company/manufacturer_part.html:35
#: company/templates/company/supplier_part.html:228
-#: part/templates/part/detail.html:111 part/templates/part/part_base.html:85
+#: part/templates/part/detail.html:109 part/templates/part/part_base.html:85
msgid "Order part"
msgstr ""
#: company/templates/company/manufacturer_part.html:39
-#: templates/js/translated/company.js:1001
+#: templates/js/translated/company.js:1374
msgid "Edit manufacturer part"
msgstr ""
#: company/templates/company/manufacturer_part.html:43
-#: templates/js/translated/company.js:1002
+#: templates/js/translated/company.js:1375
msgid "Delete manufacturer part"
msgstr ""
@@ -4080,40 +4141,22 @@ msgstr ""
msgid "Suppliers"
msgstr ""
-#: company/templates/company/manufacturer_part.html:136
-#: part/templates/part/detail.html:392
-msgid "Delete supplier parts"
-msgstr ""
-
-#: company/templates/company/manufacturer_part.html:136
-#: company/templates/company/manufacturer_part.html:183
-#: part/templates/part/detail.html:393 part/templates/part/detail.html:423
-#: templates/js/translated/forms.js:506 templates/js/translated/helpers.js:105
-#: templates/js/translated/part.js:370 templates/js/translated/pricing.js:629
-#: templates/js/translated/stock.js:216 users/models.py:247
-msgid "Delete"
-msgstr ""
-
-#: company/templates/company/manufacturer_part.html:166
+#: company/templates/company/manufacturer_part.html:156
#: company/templates/company/manufacturer_part_sidebar.html:5
#: part/templates/part/category_sidebar.html:20
-#: part/templates/part/detail.html:208 part/templates/part/part_sidebar.html:8
+#: part/templates/part/detail.html:195 part/templates/part/part_sidebar.html:8
msgid "Parameters"
msgstr ""
-#: company/templates/company/manufacturer_part.html:170
-#: part/templates/part/detail.html:213
+#: company/templates/company/manufacturer_part.html:160
+#: part/templates/part/detail.html:200
#: templates/InvenTree/settings/category.html:12
#: templates/InvenTree/settings/part_parameters.html:12
msgid "New Parameter"
msgstr ""
-#: company/templates/company/manufacturer_part.html:183
-msgid "Delete parameters"
-msgstr ""
-
-#: company/templates/company/manufacturer_part.html:226
-#: templates/js/translated/part.js:1396
+#: company/templates/company/manufacturer_part.html:206
+#: templates/js/translated/part.js:1395
msgid "Add Parameter"
msgstr ""
@@ -4137,23 +4180,28 @@ msgstr ""
msgid "Contacts"
msgstr ""
+#: company/templates/company/sidebar.html:35
+msgid "Addresses"
+msgstr ""
+
#: company/templates/company/supplier_part.html:7
#: company/templates/company/supplier_part.html:24 stock/models.py:684
#: stock/templates/stock/item_base.html:234
-#: templates/js/translated/company.js:1210
-#: templates/js/translated/purchase_order.js:747
-#: templates/js/translated/stock.js:2016
+#: templates/js/translated/company.js:1631
+#: templates/js/translated/purchase_order.js:758
+#: templates/js/translated/stock.js:2173
msgid "Supplier Part"
msgstr ""
#: company/templates/company/supplier_part.html:51
+#: templates/js/translated/company.js:1557
msgid "Supplier part actions"
msgstr ""
#: company/templates/company/supplier_part.html:56
#: company/templates/company/supplier_part.html:57
#: company/templates/company/supplier_part.html:229
-#: part/templates/part/detail.html:112
+#: part/templates/part/detail.html:110
msgid "Order Part"
msgstr ""
@@ -4164,13 +4212,13 @@ msgstr ""
#: company/templates/company/supplier_part.html:64
#: company/templates/company/supplier_part.html:65
-#: templates/js/translated/company.js:283
+#: templates/js/translated/company.js:293
msgid "Edit Supplier Part"
msgstr ""
#: company/templates/company/supplier_part.html:69
#: company/templates/company/supplier_part.html:70
-#: templates/js/translated/company.js:258
+#: templates/js/translated/company.js:268
msgid "Duplicate Supplier Part"
msgstr ""
@@ -4197,7 +4245,7 @@ msgstr ""
#: company/templates/company/supplier_part.html:211
#: part/templates/part/detail.html:25 stock/templates/stock/location.html:198
-#: templates/js/translated/stock.js:504
+#: templates/js/translated/stock.js:503
msgid "New Stock Item"
msgstr ""
@@ -4205,37 +4253,37 @@ msgstr ""
msgid "Supplier Part Orders"
msgstr ""
-#: company/templates/company/supplier_part.html:249
+#: company/templates/company/supplier_part.html:247
msgid "Pricing Information"
msgstr ""
-#: company/templates/company/supplier_part.html:254
-#: templates/js/translated/company.js:387
+#: company/templates/company/supplier_part.html:252
+#: templates/js/translated/company.js:397
#: templates/js/translated/pricing.js:684
msgid "Add Price Break"
msgstr ""
-#: company/templates/company/supplier_part.html:281
+#: company/templates/company/supplier_part.html:277
msgid "Supplier Part QR Code"
msgstr ""
-#: company/templates/company/supplier_part.html:292
+#: company/templates/company/supplier_part.html:288
msgid "Link Barcode to Supplier Part"
msgstr ""
-#: company/templates/company/supplier_part.html:365
+#: company/templates/company/supplier_part.html:361
msgid "Update Part Availability"
msgstr ""
#: company/templates/company/supplier_part_sidebar.html:5 part/tasks.py:293
-#: part/templates/part/category.html:199
+#: part/templates/part/category.html:182
#: part/templates/part/category_sidebar.html:17 stock/admin.py:47
-#: stock/templates/stock/location.html:168
+#: stock/serializers.py:662 stock/templates/stock/location.html:168
#: stock/templates/stock/location.html:182
#: stock/templates/stock/location.html:194
#: stock/templates/stock/location_sidebar.html:7
-#: templates/InvenTree/search.html:155 templates/js/translated/part.js:1034
-#: templates/js/translated/search.js:214 templates/js/translated/stock.js:2514
+#: templates/InvenTree/search.html:155 templates/js/translated/part.js:1033
+#: templates/js/translated/search.js:172 templates/js/translated/stock.js:2645
#: users/models.py:41
msgid "Stock Items"
msgstr ""
@@ -4261,7 +4309,7 @@ msgstr ""
msgid "New Customer"
msgstr ""
-#: company/views.py:52 templates/js/translated/search.js:234
+#: company/views.py:52 templates/js/translated/search.js:192
msgid "Companies"
msgstr ""
@@ -4269,72 +4317,76 @@ msgstr ""
msgid "New Company"
msgstr ""
-#: label/models.py:104
+#: label/models.py:112
msgid "Label name"
msgstr ""
-#: label/models.py:111
+#: label/models.py:119
msgid "Label description"
msgstr ""
-#: label/models.py:118
+#: label/models.py:126
msgid "Label"
msgstr ""
-#: label/models.py:119
+#: label/models.py:127
msgid "Label template file"
msgstr ""
-#: label/models.py:125 report/models.py:273
+#: label/models.py:133 report/models.py:273
msgid "Enabled"
msgstr ""
-#: label/models.py:126
+#: label/models.py:134
msgid "Label template is enabled"
msgstr ""
-#: label/models.py:131
+#: label/models.py:139
msgid "Width [mm]"
msgstr ""
-#: label/models.py:132
+#: label/models.py:140
msgid "Label width, specified in mm"
msgstr ""
-#: label/models.py:138
+#: label/models.py:146
msgid "Height [mm]"
msgstr ""
-#: label/models.py:139
+#: label/models.py:147
msgid "Label height, specified in mm"
msgstr ""
-#: label/models.py:145 report/models.py:266
+#: label/models.py:153 report/models.py:266
msgid "Filename Pattern"
msgstr ""
-#: label/models.py:146
+#: label/models.py:154
msgid "Pattern for generating label filenames"
msgstr ""
-#: label/models.py:242
+#: label/models.py:250
msgid "Query filters (comma-separated list of key=value pairs),"
msgstr ""
-#: label/models.py:243 label/models.py:284 label/models.py:312
-#: report/models.py:294 report/models.py:452 report/models.py:490
-#: report/models.py:528
+#: label/models.py:251 label/models.py:292 label/models.py:320
+#: label/models.py:356 report/models.py:294 report/models.py:454
+#: report/models.py:492 report/models.py:530
msgid "Filters"
msgstr ""
-#: label/models.py:283
+#: label/models.py:291
msgid "Query filters (comma-separated list of key=value pairs"
msgstr ""
-#: label/models.py:311
+#: label/models.py:319
msgid "Part query filters (comma-separated value of key=value pairs)"
msgstr ""
+#: label/models.py:355
+msgid "Query filters (comma-separated list of key=value pairs)"
+msgstr ""
+
#: label/templates/label/part/part_label.html:31
#: label/templates/label/stockitem/qr.html:21
#: label/templates/label/stocklocation/qr.html:21
@@ -4352,8 +4404,8 @@ msgstr ""
#: report/templates/report/inventree_po_report_base.html:31
#: report/templates/report/inventree_so_report_base.html:31
#: templates/js/translated/order.js:327
-#: templates/js/translated/purchase_order.js:2093
-#: templates/js/translated/sales_order.js:1827
+#: templates/js/translated/purchase_order.js:2103
+#: templates/js/translated/sales_order.js:1839
msgid "Total Price"
msgstr ""
@@ -4361,30 +4413,30 @@ msgstr ""
msgid "No matching purchase order found"
msgstr ""
-#: order/api.py:1452 order/models.py:1178 order/models.py:1262
+#: order/api.py:1452 order/models.py:1191 order/models.py:1275
#: order/templates/order/order_base.html:9
#: order/templates/order/order_base.html:18
#: report/templates/report/inventree_po_report_base.html:14
#: stock/templates/stock/item_base.html:177
#: templates/email/overdue_purchase_order.html:15
-#: templates/js/translated/part.js:1718 templates/js/translated/pricing.js:790
-#: templates/js/translated/purchase_order.js:154
-#: templates/js/translated/purchase_order.js:748
-#: templates/js/translated/purchase_order.js:1637
-#: templates/js/translated/stock.js:1996 templates/js/translated/stock.js:2644
+#: templates/js/translated/part.js:1717 templates/js/translated/pricing.js:790
+#: templates/js/translated/purchase_order.js:165
+#: templates/js/translated/purchase_order.js:759
+#: templates/js/translated/purchase_order.js:1652
+#: templates/js/translated/stock.js:2153 templates/js/translated/stock.js:2775
msgid "Purchase Order"
msgstr ""
-#: order/api.py:1456 order/models.py:1909 order/models.py:1955
+#: order/api.py:1456 order/models.py:1922 order/models.py:1968
#: order/templates/order/return_order_base.html:9
#: order/templates/order/return_order_base.html:28
#: report/templates/report/inventree_return_order_report_base.html:13
-#: templates/js/translated/return_order.js:269
-#: templates/js/translated/stock.js:2678
+#: templates/js/translated/return_order.js:281
+#: templates/js/translated/stock.js:2809
msgid "Return Order"
msgstr ""
-#: order/api.py:1458 templates/js/translated/sales_order.js:1030
+#: order/api.py:1458 templates/js/translated/sales_order.js:1042
msgid "Unknown"
msgstr ""
@@ -4392,11 +4444,11 @@ msgstr ""
msgid "Total price for this order"
msgstr ""
-#: order/models.py:79 order/serializers.py:49
+#: order/models.py:79 order/serializers.py:50
msgid "Order Currency"
msgstr ""
-#: order/models.py:81 order/serializers.py:50
+#: order/models.py:81 order/serializers.py:51
msgid "Currency for this order (leave blank to use company default)"
msgstr ""
@@ -4408,492 +4460,496 @@ msgstr ""
msgid "Order description (optional)"
msgstr ""
-#: order/models.py:234
+#: order/models.py:237
msgid "Select project code for this order"
msgstr ""
-#: order/models.py:236 order/models.py:1094 order/models.py:1454
+#: order/models.py:240 order/models.py:1107 order/models.py:1467
msgid "Link to external page"
msgstr ""
-#: order/models.py:241
+#: order/models.py:245
msgid "Expected date for order delivery. Order will be overdue after this date."
msgstr ""
-#: order/models.py:250
+#: order/models.py:254
msgid "Created By"
msgstr ""
-#: order/models.py:257
+#: order/models.py:261
msgid "User or group responsible for this order"
msgstr ""
-#: order/models.py:267
+#: order/models.py:271
msgid "Point of contact for this order"
msgstr ""
-#: order/models.py:360 order/models.py:766
+#: order/models.py:280
+msgid "Company address for this order"
+msgstr ""
+
+#: order/models.py:373 order/models.py:779
msgid "Order reference"
msgstr ""
-#: order/models.py:368 order/models.py:791
+#: order/models.py:381 order/models.py:804
msgid "Purchase order status"
msgstr ""
-#: order/models.py:383
+#: order/models.py:396
msgid "Company from which the items are being ordered"
msgstr ""
-#: order/models.py:391 order/templates/order/order_base.html:152
-#: templates/js/translated/purchase_order.js:1662
+#: order/models.py:404 order/templates/order/order_base.html:148
+#: templates/js/translated/purchase_order.js:1677
msgid "Supplier Reference"
msgstr ""
-#: order/models.py:391
+#: order/models.py:404
msgid "Supplier order reference code"
msgstr ""
-#: order/models.py:398
+#: order/models.py:411
msgid "received by"
msgstr ""
-#: order/models.py:403 order/models.py:1761
+#: order/models.py:416 order/models.py:1774
msgid "Issue Date"
msgstr ""
-#: order/models.py:404 order/models.py:1762
+#: order/models.py:417 order/models.py:1775
msgid "Date order was issued"
msgstr ""
-#: order/models.py:410 order/models.py:1768
+#: order/models.py:423 order/models.py:1781
msgid "Date order was completed"
msgstr ""
-#: order/models.py:445
+#: order/models.py:458
msgid "Part supplier must match PO supplier"
msgstr ""
-#: order/models.py:606
+#: order/models.py:619
msgid "Quantity must be a positive number"
msgstr ""
-#: order/models.py:780
+#: order/models.py:793
msgid "Company to which the items are being sold"
msgstr ""
-#: order/models.py:799 order/models.py:1755
+#: order/models.py:812 order/models.py:1768
msgid "Customer Reference "
msgstr ""
-#: order/models.py:799 order/models.py:1756
+#: order/models.py:812 order/models.py:1769
msgid "Customer order reference code"
msgstr ""
-#: order/models.py:801 order/models.py:1408
-#: templates/js/translated/sales_order.js:831
-#: templates/js/translated/sales_order.js:1012
+#: order/models.py:814 order/models.py:1421
+#: templates/js/translated/sales_order.js:843
+#: templates/js/translated/sales_order.js:1024
msgid "Shipment Date"
msgstr ""
-#: order/models.py:808
+#: order/models.py:821
msgid "shipped by"
msgstr ""
-#: order/models.py:857
+#: order/models.py:870
msgid "Order cannot be completed as no parts have been assigned"
msgstr ""
-#: order/models.py:861
+#: order/models.py:874
msgid "Only an open order can be marked as complete"
msgstr ""
-#: order/models.py:864 templates/js/translated/sales_order.js:491
+#: order/models.py:877 templates/js/translated/sales_order.js:503
msgid "Order cannot be completed as there are incomplete shipments"
msgstr ""
-#: order/models.py:867
+#: order/models.py:880
msgid "Order cannot be completed as there are incomplete line items"
msgstr ""
-#: order/models.py:1074
+#: order/models.py:1087
msgid "Item quantity"
msgstr ""
-#: order/models.py:1087
+#: order/models.py:1100
msgid "Line item reference"
msgstr ""
-#: order/models.py:1089
+#: order/models.py:1102
msgid "Line item notes"
msgstr ""
-#: order/models.py:1100
+#: order/models.py:1113
msgid "Target date for this line item (leave blank to use the target date from the order)"
msgstr ""
-#: order/models.py:1118
+#: order/models.py:1131
msgid "Line item description (optional)"
msgstr ""
-#: order/models.py:1123
+#: order/models.py:1136
msgid "Context"
msgstr ""
-#: order/models.py:1124
+#: order/models.py:1137
msgid "Additional context for this line"
msgstr ""
-#: order/models.py:1133
+#: order/models.py:1146
msgid "Unit price"
msgstr ""
-#: order/models.py:1163
+#: order/models.py:1176
msgid "Supplier part must match supplier"
msgstr ""
-#: order/models.py:1171
+#: order/models.py:1184
msgid "deleted"
msgstr ""
-#: order/models.py:1177 order/models.py:1262 order/models.py:1303
-#: order/models.py:1402 order/models.py:1551 order/models.py:1908
-#: order/models.py:1955 templates/js/translated/sales_order.js:1474
+#: order/models.py:1190 order/models.py:1275 order/models.py:1316
+#: order/models.py:1415 order/models.py:1564 order/models.py:1921
+#: order/models.py:1968 templates/js/translated/sales_order.js:1486
msgid "Order"
msgstr ""
-#: order/models.py:1196
+#: order/models.py:1209
msgid "Supplier part"
msgstr ""
-#: order/models.py:1203 order/templates/order/order_base.html:200
-#: templates/js/translated/part.js:1841 templates/js/translated/part.js:1872
-#: templates/js/translated/purchase_order.js:1276
-#: templates/js/translated/purchase_order.js:2137
-#: templates/js/translated/return_order.js:748
-#: templates/js/translated/table_filters.js:90
-#: templates/js/translated/table_filters.js:515
+#: order/models.py:1216 order/templates/order/order_base.html:196
+#: templates/js/translated/part.js:1840 templates/js/translated/part.js:1871
+#: templates/js/translated/purchase_order.js:1291
+#: templates/js/translated/purchase_order.js:2147
+#: templates/js/translated/return_order.js:760
+#: templates/js/translated/table_filters.js:96
+#: templates/js/translated/table_filters.js:537
msgid "Received"
msgstr ""
-#: order/models.py:1204
+#: order/models.py:1217
msgid "Number of items received"
msgstr ""
-#: order/models.py:1211 stock/models.py:823 stock/serializers.py:252
+#: order/models.py:1224 stock/models.py:823 stock/serializers.py:314
#: stock/templates/stock/item_base.html:184
-#: templates/js/translated/stock.js:2047
+#: templates/js/translated/stock.js:2204
msgid "Purchase Price"
msgstr ""
-#: order/models.py:1212
+#: order/models.py:1225
msgid "Unit purchase price"
msgstr ""
-#: order/models.py:1225
+#: order/models.py:1238
msgid "Where does the Purchaser want this item to be stored?"
msgstr ""
-#: order/models.py:1291
+#: order/models.py:1304
msgid "Virtual part cannot be assigned to a sales order"
msgstr ""
-#: order/models.py:1296
+#: order/models.py:1309
msgid "Only salable parts can be assigned to a sales order"
msgstr ""
-#: order/models.py:1322 part/templates/part/part_pricing.html:107
+#: order/models.py:1335 part/templates/part/part_pricing.html:107
#: part/templates/part/prices.html:128 templates/js/translated/pricing.js:943
msgid "Sale Price"
msgstr ""
-#: order/models.py:1323
+#: order/models.py:1336
msgid "Unit sale price"
msgstr ""
-#: order/models.py:1333
+#: order/models.py:1346
msgid "Shipped quantity"
msgstr ""
-#: order/models.py:1409
+#: order/models.py:1422
msgid "Date of shipment"
msgstr ""
-#: order/models.py:1414 templates/js/translated/sales_order.js:1024
+#: order/models.py:1427 templates/js/translated/sales_order.js:1036
msgid "Delivery Date"
msgstr ""
-#: order/models.py:1415
+#: order/models.py:1428
msgid "Date of delivery of shipment"
msgstr ""
-#: order/models.py:1422
+#: order/models.py:1435
msgid "Checked By"
msgstr ""
-#: order/models.py:1423
+#: order/models.py:1436
msgid "User who checked this shipment"
msgstr ""
-#: order/models.py:1430 order/models.py:1627 order/serializers.py:1248
-#: order/serializers.py:1376 templates/js/translated/model_renderers.js:415
+#: order/models.py:1443 order/models.py:1640 order/serializers.py:1254
+#: order/serializers.py:1382 templates/js/translated/model_renderers.js:429
msgid "Shipment"
msgstr ""
-#: order/models.py:1431
+#: order/models.py:1444
msgid "Shipment number"
msgstr ""
-#: order/models.py:1439
+#: order/models.py:1452
msgid "Tracking Number"
msgstr ""
-#: order/models.py:1440
+#: order/models.py:1453
msgid "Shipment tracking information"
msgstr ""
-#: order/models.py:1447
+#: order/models.py:1460
msgid "Invoice Number"
msgstr ""
-#: order/models.py:1448
+#: order/models.py:1461
msgid "Reference number for associated invoice"
msgstr ""
-#: order/models.py:1470
+#: order/models.py:1483
msgid "Shipment has already been sent"
msgstr ""
-#: order/models.py:1473
+#: order/models.py:1486
msgid "Shipment has no allocated stock items"
msgstr ""
-#: order/models.py:1586 order/models.py:1588
+#: order/models.py:1599 order/models.py:1601
msgid "Stock item has not been assigned"
msgstr ""
-#: order/models.py:1592
+#: order/models.py:1605
msgid "Cannot allocate stock item to a line with a different part"
msgstr ""
-#: order/models.py:1594
+#: order/models.py:1607
msgid "Cannot allocate stock to a line without a part"
msgstr ""
-#: order/models.py:1597
+#: order/models.py:1610
msgid "Allocation quantity cannot exceed stock quantity"
msgstr ""
-#: order/models.py:1607 order/serializers.py:1110
+#: order/models.py:1620 order/serializers.py:1116
msgid "Quantity must be 1 for serialized stock item"
msgstr ""
-#: order/models.py:1610
+#: order/models.py:1623
msgid "Sales order does not match shipment"
msgstr ""
-#: order/models.py:1611
+#: order/models.py:1624
msgid "Shipment does not match sales order"
msgstr ""
-#: order/models.py:1619
+#: order/models.py:1632
msgid "Line"
msgstr ""
-#: order/models.py:1628
+#: order/models.py:1641
msgid "Sales order shipment reference"
msgstr ""
-#: order/models.py:1641 order/models.py:1916
-#: templates/js/translated/return_order.js:706
+#: order/models.py:1654 order/models.py:1929
+#: templates/js/translated/return_order.js:718
msgid "Item"
msgstr ""
-#: order/models.py:1642
+#: order/models.py:1655
msgid "Select stock item to allocate"
msgstr ""
-#: order/models.py:1645
+#: order/models.py:1658
msgid "Enter stock allocation quantity"
msgstr ""
-#: order/models.py:1725
+#: order/models.py:1738
msgid "Return Order reference"
msgstr ""
-#: order/models.py:1739
+#: order/models.py:1752
msgid "Company from which items are being returned"
msgstr ""
-#: order/models.py:1750
+#: order/models.py:1763
msgid "Return order status"
msgstr ""
-#: order/models.py:1901
+#: order/models.py:1914
msgid "Only serialized items can be assigned to a Return Order"
msgstr ""
-#: order/models.py:1917
+#: order/models.py:1930
msgid "Select item to return from customer"
msgstr ""
-#: order/models.py:1922
+#: order/models.py:1935
msgid "Received Date"
msgstr ""
-#: order/models.py:1923
+#: order/models.py:1936
msgid "The date this this return item was received"
msgstr ""
-#: order/models.py:1934 templates/js/translated/return_order.js:717
-#: templates/js/translated/table_filters.js:93
+#: order/models.py:1947 templates/js/translated/return_order.js:729
+#: templates/js/translated/table_filters.js:99
msgid "Outcome"
msgstr ""
-#: order/models.py:1934
+#: order/models.py:1947
msgid "Outcome for this line item"
msgstr ""
-#: order/models.py:1940
+#: order/models.py:1953
msgid "Cost associated with return or repair for this line item"
msgstr ""
-#: order/serializers.py:247
+#: order/serializers.py:253
msgid "Order cannot be cancelled"
msgstr ""
-#: order/serializers.py:262 order/serializers.py:1128
+#: order/serializers.py:268 order/serializers.py:1134
msgid "Allow order to be closed with incomplete line items"
msgstr ""
-#: order/serializers.py:273 order/serializers.py:1139
+#: order/serializers.py:279 order/serializers.py:1145
msgid "Order has incomplete line items"
msgstr ""
-#: order/serializers.py:386
+#: order/serializers.py:392
msgid "Order is not open"
msgstr ""
-#: order/serializers.py:404
+#: order/serializers.py:410
msgid "Purchase price currency"
msgstr ""
-#: order/serializers.py:422
+#: order/serializers.py:428
msgid "Supplier part must be specified"
msgstr ""
-#: order/serializers.py:427
+#: order/serializers.py:433
msgid "Purchase order must be specified"
msgstr ""
-#: order/serializers.py:433
+#: order/serializers.py:439
msgid "Supplier must match purchase order"
msgstr ""
-#: order/serializers.py:434
+#: order/serializers.py:440
msgid "Purchase order must match supplier"
msgstr ""
-#: order/serializers.py:472 order/serializers.py:1216
+#: order/serializers.py:478 order/serializers.py:1222
msgid "Line Item"
msgstr ""
-#: order/serializers.py:478
+#: order/serializers.py:484
msgid "Line item does not match purchase order"
msgstr ""
-#: order/serializers.py:488 order/serializers.py:607 order/serializers.py:1589
+#: order/serializers.py:494 order/serializers.py:613 order/serializers.py:1595
msgid "Select destination location for received items"
msgstr ""
-#: order/serializers.py:507 templates/js/translated/purchase_order.js:1100
+#: order/serializers.py:513 templates/js/translated/purchase_order.js:1115
msgid "Enter batch code for incoming stock items"
msgstr ""
-#: order/serializers.py:515 templates/js/translated/purchase_order.js:1124
+#: order/serializers.py:521 templates/js/translated/purchase_order.js:1139
msgid "Enter serial numbers for incoming stock items"
msgstr ""
-#: order/serializers.py:528 templates/js/translated/barcode.js:52
+#: order/serializers.py:534 templates/js/translated/barcode.js:52
msgid "Barcode"
msgstr ""
-#: order/serializers.py:529
+#: order/serializers.py:535
msgid "Scanned barcode"
msgstr ""
-#: order/serializers.py:545
+#: order/serializers.py:551
msgid "Barcode is already in use"
msgstr ""
-#: order/serializers.py:569
+#: order/serializers.py:575
msgid "An integer quantity must be provided for trackable parts"
msgstr ""
-#: order/serializers.py:623 order/serializers.py:1604
+#: order/serializers.py:629 order/serializers.py:1610
msgid "Line items must be provided"
msgstr ""
-#: order/serializers.py:640
+#: order/serializers.py:646
msgid "Destination location must be specified"
msgstr ""
-#: order/serializers.py:651
+#: order/serializers.py:657
msgid "Supplied barcode values must be unique"
msgstr ""
-#: order/serializers.py:950
+#: order/serializers.py:956
msgid "Sale price currency"
msgstr ""
-#: order/serializers.py:1007
+#: order/serializers.py:1013
msgid "No shipment details provided"
msgstr ""
-#: order/serializers.py:1071 order/serializers.py:1225
+#: order/serializers.py:1077 order/serializers.py:1231
msgid "Line item is not associated with this order"
msgstr ""
-#: order/serializers.py:1093
+#: order/serializers.py:1099
msgid "Quantity must be positive"
msgstr ""
-#: order/serializers.py:1238
+#: order/serializers.py:1244
msgid "Enter serial numbers to allocate"
msgstr ""
-#: order/serializers.py:1260 order/serializers.py:1384
+#: order/serializers.py:1266 order/serializers.py:1390
msgid "Shipment has already been shipped"
msgstr ""
-#: order/serializers.py:1263 order/serializers.py:1387
+#: order/serializers.py:1269 order/serializers.py:1393
msgid "Shipment is not associated with this order"
msgstr ""
-#: order/serializers.py:1317
+#: order/serializers.py:1323
msgid "No match found for the following serial numbers"
msgstr ""
-#: order/serializers.py:1327
+#: order/serializers.py:1333
msgid "The following serial numbers are already allocated"
msgstr ""
-#: order/serializers.py:1555
+#: order/serializers.py:1561
msgid "Return order line item"
msgstr ""
-#: order/serializers.py:1562
+#: order/serializers.py:1568
msgid "Line item does not match return order"
msgstr ""
-#: order/serializers.py:1565
+#: order/serializers.py:1571
msgid "Line item has already been received"
msgstr ""
-#: order/serializers.py:1597
+#: order/serializers.py:1603
msgid "Items can only be received against orders which are in progress"
msgstr ""
-#: order/serializers.py:1678
+#: order/serializers.py:1684
msgid "Line price currency"
msgstr ""
@@ -4957,82 +5013,74 @@ msgid "Issue Order"
msgstr ""
#: order/templates/order/order_base.html:83
-msgid "Receive items"
-msgstr ""
-
-#: order/templates/order/order_base.html:85
-msgid "Receive Items"
-msgstr ""
-
-#: order/templates/order/order_base.html:87
#: order/templates/order/return_order_base.html:87
msgid "Mark order as complete"
msgstr ""
-#: order/templates/order/order_base.html:88
+#: order/templates/order/order_base.html:84
#: order/templates/order/return_order_base.html:88
#: order/templates/order/sales_order_base.html:94
msgid "Complete Order"
msgstr ""
-#: order/templates/order/order_base.html:95
+#: order/templates/order/order_base.html:91
msgid "Supplier part thumbnail"
msgstr ""
-#: order/templates/order/order_base.html:110
+#: order/templates/order/order_base.html:106
#: order/templates/order/return_order_base.html:102
#: order/templates/order/sales_order_base.html:107
msgid "Order Reference"
msgstr ""
-#: order/templates/order/order_base.html:115
+#: order/templates/order/order_base.html:111
#: order/templates/order/return_order_base.html:107
#: order/templates/order/sales_order_base.html:112
msgid "Order Description"
msgstr ""
-#: order/templates/order/order_base.html:122
+#: order/templates/order/order_base.html:118
#: order/templates/order/return_order_base.html:114
#: order/templates/order/sales_order_base.html:119
msgid "Order Status"
msgstr ""
-#: order/templates/order/order_base.html:145
+#: order/templates/order/order_base.html:141
msgid "No suppplier information available"
msgstr ""
-#: order/templates/order/order_base.html:158
+#: order/templates/order/order_base.html:154
#: order/templates/order/sales_order_base.html:158
msgid "Completed Line Items"
msgstr ""
-#: order/templates/order/order_base.html:164
+#: order/templates/order/order_base.html:160
#: order/templates/order/sales_order_base.html:164
#: order/templates/order/sales_order_base.html:174
msgid "Incomplete"
msgstr ""
-#: order/templates/order/order_base.html:183
+#: order/templates/order/order_base.html:179
#: order/templates/order/return_order_base.html:158
#: report/templates/report/inventree_build_order_base.html:121
msgid "Issued"
msgstr ""
-#: order/templates/order/order_base.html:221
+#: order/templates/order/order_base.html:224
msgid "Total cost"
msgstr ""
-#: order/templates/order/order_base.html:225
-#: order/templates/order/return_order_base.html:193
-#: order/templates/order/sales_order_base.html:233
+#: order/templates/order/order_base.html:228
+#: order/templates/order/return_order_base.html:200
+#: order/templates/order/sales_order_base.html:240
msgid "Total cost could not be calculated"
msgstr ""
-#: order/templates/order/order_base.html:331
+#: order/templates/order/order_base.html:318
msgid "Purchase Order QR Code"
msgstr ""
-#: order/templates/order/order_base.html:343
+#: order/templates/order/order_base.html:330
msgid "Link Barcode to Purchase Order"
msgstr ""
@@ -5085,13 +5133,13 @@ msgstr ""
#: part/templates/part/import_wizard/ajax_match_references.html:42
#: part/templates/part/import_wizard/match_fields.html:71
#: part/templates/part/import_wizard/match_references.html:49
-#: templates/js/translated/bom.js:132 templates/js/translated/build.js:512
-#: templates/js/translated/build.js:2348
-#: templates/js/translated/purchase_order.js:692
-#: templates/js/translated/purchase_order.js:1206
-#: templates/js/translated/return_order.js:494
-#: templates/js/translated/sales_order.js:1097
-#: templates/js/translated/stock.js:681 templates/js/translated/stock.js:850
+#: templates/js/translated/bom.js:133 templates/js/translated/build.js:518
+#: templates/js/translated/build.js:1555
+#: templates/js/translated/purchase_order.js:703
+#: templates/js/translated/purchase_order.js:1221
+#: templates/js/translated/return_order.js:506
+#: templates/js/translated/sales_order.js:1109
+#: templates/js/translated/stock.js:680 templates/js/translated/stock.js:849
#: templates/patterns/wizard/match_fields.html:70
msgid "Remove row"
msgstr ""
@@ -5152,9 +5200,9 @@ msgstr ""
#: order/templates/order/purchase_order_detail.html:27
#: order/templates/order/return_order_detail.html:24
#: order/templates/order/sales_order_detail.html:24
-#: templates/js/translated/purchase_order.js:419
-#: templates/js/translated/return_order.js:447
-#: templates/js/translated/sales_order.js:222
+#: templates/js/translated/purchase_order.js:430
+#: templates/js/translated/return_order.js:459
+#: templates/js/translated/sales_order.js:234
msgid "Add Line Item"
msgstr ""
@@ -5165,30 +5213,25 @@ msgstr ""
msgid "Receive Line Items"
msgstr ""
-#: order/templates/order/purchase_order_detail.html:49
#: order/templates/order/purchase_order_detail.html:50
-msgid "Delete Line Items"
-msgstr ""
-
-#: order/templates/order/purchase_order_detail.html:66
-#: order/templates/order/return_order_detail.html:47
-#: order/templates/order/sales_order_detail.html:43
+#: order/templates/order/return_order_detail.html:45
+#: order/templates/order/sales_order_detail.html:41
msgid "Extra Lines"
msgstr ""
-#: order/templates/order/purchase_order_detail.html:72
-#: order/templates/order/return_order_detail.html:53
-#: order/templates/order/sales_order_detail.html:49
+#: order/templates/order/purchase_order_detail.html:56
+#: order/templates/order/return_order_detail.html:51
+#: order/templates/order/sales_order_detail.html:47
msgid "Add Extra Line"
msgstr ""
-#: order/templates/order/purchase_order_detail.html:92
+#: order/templates/order/purchase_order_detail.html:74
msgid "Received Items"
msgstr ""
-#: order/templates/order/purchase_order_detail.html:117
-#: order/templates/order/return_order_detail.html:89
-#: order/templates/order/sales_order_detail.html:149
+#: order/templates/order/purchase_order_detail.html:99
+#: order/templates/order/return_order_detail.html:85
+#: order/templates/order/sales_order_detail.html:139
msgid "Order Notes"
msgstr ""
@@ -5208,29 +5251,29 @@ msgstr ""
#: order/templates/order/return_order_base.html:139
#: order/templates/order/sales_order_base.html:152
-#: templates/js/translated/return_order.js:297
-#: templates/js/translated/sales_order.js:785
+#: templates/js/translated/return_order.js:309
+#: templates/js/translated/sales_order.js:797
msgid "Customer Reference"
msgstr ""
-#: order/templates/order/return_order_base.html:189
-#: order/templates/order/sales_order_base.html:229
+#: order/templates/order/return_order_base.html:196
+#: order/templates/order/sales_order_base.html:236
#: part/templates/part/part_pricing.html:32
#: part/templates/part/part_pricing.html:58
#: part/templates/part/part_pricing.html:99
#: part/templates/part/part_pricing.html:114
-#: templates/js/translated/part.js:1046
-#: templates/js/translated/purchase_order.js:1712
-#: templates/js/translated/return_order.js:369
-#: templates/js/translated/sales_order.js:843
+#: templates/js/translated/part.js:1045
+#: templates/js/translated/purchase_order.js:1727
+#: templates/js/translated/return_order.js:381
+#: templates/js/translated/sales_order.js:855
msgid "Total Cost"
msgstr ""
-#: order/templates/order/return_order_base.html:257
+#: order/templates/order/return_order_base.html:264
msgid "Return Order QR Code"
msgstr ""
-#: order/templates/order/return_order_base.html:269
+#: order/templates/order/return_order_base.html:276
msgid "Link Barcode to Return Order"
msgstr ""
@@ -5248,7 +5291,7 @@ msgid "Ship Items"
msgstr ""
#: order/templates/order/sales_order_base.html:93
-#: templates/js/translated/sales_order.js:469
+#: templates/js/translated/sales_order.js:481
msgid "Complete Sales Order"
msgstr ""
@@ -5257,16 +5300,16 @@ msgid "This Sales Order has not been fully allocated"
msgstr ""
#: order/templates/order/sales_order_base.html:170
-#: order/templates/order/sales_order_detail.html:105
+#: order/templates/order/sales_order_detail.html:99
#: order/templates/order/so_sidebar.html:11
msgid "Completed Shipments"
msgstr ""
-#: order/templates/order/sales_order_base.html:306
+#: order/templates/order/sales_order_base.html:313
msgid "Sales Order QR Code"
msgstr ""
-#: order/templates/order/sales_order_base.html:318
+#: order/templates/order/sales_order_base.html:325
msgid "Link Barcode to Sales Order"
msgstr ""
@@ -5274,18 +5317,17 @@ msgstr ""
msgid "Sales Order Items"
msgstr ""
-#: order/templates/order/sales_order_detail.html:71
-#: order/templates/order/so_sidebar.html:8 templates/InvenTree/index.html:332
+#: order/templates/order/sales_order_detail.html:67
+#: order/templates/order/so_sidebar.html:8 templates/InvenTree/index.html:284
msgid "Pending Shipments"
msgstr ""
-#: order/templates/order/sales_order_detail.html:75
-#: templates/attachment_table.html:6 templates/js/translated/bom.js:1236
-#: templates/js/translated/build.js:2249
+#: order/templates/order/sales_order_detail.html:71
+#: templates/js/translated/bom.js:1256 templates/js/translated/filters.js:297
msgid "Actions"
msgstr ""
-#: order/templates/order/sales_order_detail.html:84
+#: order/templates/order/sales_order_detail.html:80
msgid "New Shipment"
msgstr ""
@@ -5311,12 +5353,12 @@ msgstr ""
msgid "Updated {part} unit-price to {price} and quantity to {qty}"
msgstr ""
-#: part/admin.py:33 part/admin.py:273 part/models.py:3667 part/tasks.py:288
+#: part/admin.py:33 part/admin.py:273 part/models.py:3716 part/tasks.py:288
#: stock/admin.py:101
msgid "Part ID"
msgstr ""
-#: part/admin.py:34 part/admin.py:275 part/models.py:3671 part/tasks.py:289
+#: part/admin.py:34 part/admin.py:275 part/models.py:3720 part/tasks.py:289
#: stock/admin.py:102
msgid "Part Name"
msgstr ""
@@ -5325,19 +5367,19 @@ msgstr ""
msgid "Part Description"
msgstr ""
-#: part/admin.py:36 part/models.py:889 part/templates/part/part_base.html:271
-#: templates/js/translated/part.js:1200 templates/js/translated/part.js:2233
-#: templates/js/translated/stock.js:1795
+#: part/admin.py:36 part/models.py:890 part/templates/part/part_base.html:271
+#: templates/js/translated/part.js:1199 templates/js/translated/part.js:2309
+#: templates/js/translated/stock.js:1952
msgid "IPN"
msgstr ""
-#: part/admin.py:37 part/models.py:896 part/templates/part/part_base.html:279
-#: report/models.py:179 templates/js/translated/part.js:1205
-#: templates/js/translated/part.js:2239
+#: part/admin.py:37 part/models.py:897 part/templates/part/part_base.html:279
+#: report/models.py:179 templates/js/translated/part.js:1204
+#: templates/js/translated/part.js:2315
msgid "Revision"
msgstr ""
-#: part/admin.py:38 part/admin.py:198 part/models.py:875
+#: part/admin.py:38 part/admin.py:198 part/models.py:876
#: part/templates/part/category.html:93 part/templates/part/part_base.html:300
msgid "Keywords"
msgstr ""
@@ -5358,24 +5400,24 @@ msgstr ""
msgid "Default Supplier ID"
msgstr ""
-#: part/admin.py:46 part/models.py:864 part/templates/part/part_base.html:179
+#: part/admin.py:46 part/models.py:865 part/templates/part/part_base.html:179
msgid "Variant Of"
msgstr ""
-#: part/admin.py:47 part/models.py:980 part/templates/part/part_base.html:205
+#: part/admin.py:47 part/models.py:981 part/templates/part/part_base.html:205
msgid "Minimum Stock"
msgstr ""
#: part/admin.py:61 part/templates/part/part_base.html:199
-#: templates/js/translated/company.js:1299
-#: templates/js/translated/table_filters.js:301
+#: templates/js/translated/company.js:1720
+#: templates/js/translated/table_filters.js:307
msgid "In Stock"
msgstr ""
#: part/admin.py:62 part/bom.py:178 part/templates/part/part_base.html:212
-#: templates/js/translated/bom.js:1167 templates/js/translated/build.js:2191
-#: templates/js/translated/part.js:687 templates/js/translated/part.js:2123
-#: templates/js/translated/table_filters.js:140
+#: templates/js/translated/bom.js:1187 templates/js/translated/build.js:2541
+#: templates/js/translated/part.js:686 templates/js/translated/part.js:2122
+#: templates/js/translated/table_filters.js:146
msgid "On Order"
msgstr ""
@@ -5383,23 +5425,16 @@ msgstr ""
msgid "Used In"
msgstr ""
-#: part/admin.py:64 templates/js/translated/build.js:2203
-#: templates/js/translated/build.js:2465 templates/js/translated/build.js:3052
-#: templates/js/translated/sales_order.js:1906
-#: templates/js/translated/table_filters.js:488
-msgid "Allocated"
-msgstr ""
-
#: part/admin.py:65 part/templates/part/part_base.html:243 stock/admin.py:124
-#: templates/js/translated/part.js:692 templates/js/translated/part.js:2127
+#: templates/js/translated/part.js:691 templates/js/translated/part.js:2126
msgid "Building"
msgstr ""
-#: part/admin.py:66 part/models.py:2930 templates/js/translated/part.js:943
+#: part/admin.py:66 part/models.py:2964 templates/js/translated/part.js:942
msgid "Minimum Cost"
msgstr ""
-#: part/admin.py:67 part/models.py:2936 templates/js/translated/part.js:953
+#: part/admin.py:67 part/models.py:2970 templates/js/translated/part.js:952
msgid "Maximum Cost"
msgstr ""
@@ -5416,13 +5451,13 @@ msgstr ""
msgid "Category Path"
msgstr ""
-#: part/admin.py:202 part/models.py:392 part/templates/part/cat_link.html:3
-#: part/templates/part/category.html:23 part/templates/part/category.html:140
-#: part/templates/part/category.html:160
+#: part/admin.py:202 part/models.py:393 part/serializers.py:307
+#: part/templates/part/cat_link.html:3 part/templates/part/category.html:23
+#: part/templates/part/category.html:140 part/templates/part/category.html:160
#: part/templates/part/category_sidebar.html:9
-#: templates/InvenTree/index.html:86 templates/InvenTree/search.html:84
+#: templates/InvenTree/index.html:36 templates/InvenTree/search.html:84
#: templates/InvenTree/settings/sidebar.html:45
-#: templates/js/translated/part.js:2754 templates/js/translated/search.js:172
+#: templates/js/translated/part.js:2739 templates/js/translated/search.js:130
#: templates/navbar.html:24 users/models.py:38
msgid "Parts"
msgstr ""
@@ -5439,7 +5474,7 @@ msgstr ""
msgid "Parent IPN"
msgstr ""
-#: part/admin.py:274 part/models.py:3675
+#: part/admin.py:274 part/models.py:3724
msgid "Part IPN"
msgstr ""
@@ -5453,35 +5488,35 @@ msgstr ""
msgid "Maximum Price"
msgstr ""
-#: part/api.py:498
+#: part/api.py:501
msgid "Incoming Purchase Order"
msgstr ""
-#: part/api.py:518
+#: part/api.py:521
msgid "Outgoing Sales Order"
msgstr ""
-#: part/api.py:536
+#: part/api.py:539
msgid "Stock produced by Build Order"
msgstr ""
-#: part/api.py:622
+#: part/api.py:625
msgid "Stock required for Build Order"
msgstr ""
-#: part/api.py:770
+#: part/api.py:773
msgid "Valid"
msgstr ""
-#: part/api.py:771
+#: part/api.py:774
msgid "Validate entire Bill of Materials"
msgstr ""
-#: part/api.py:777
+#: part/api.py:780
msgid "This option must be selected"
msgstr ""
-#: part/bom.py:175 part/models.py:127 part/models.py:923
+#: part/bom.py:175 part/models.py:128 part/models.py:924
#: part/templates/part/category.html:115 part/templates/part/part_base.html:369
msgid "Default Location"
msgstr ""
@@ -5491,7 +5526,7 @@ msgid "Total Stock"
msgstr ""
#: part/bom.py:177 part/templates/part/part_base.html:194
-#: templates/js/translated/sales_order.js:1873
+#: templates/js/translated/sales_order.js:1885
msgid "Available Stock"
msgstr ""
@@ -5499,916 +5534,913 @@ msgstr ""
msgid "Input quantity for price calculation"
msgstr ""
-#: part/models.py:75 part/models.py:3616 part/templates/part/category.html:16
+#: part/models.py:76 part/models.py:3665 part/templates/part/category.html:16
#: part/templates/part/part_app_base.html:10
msgid "Part Category"
msgstr ""
-#: part/models.py:76 part/templates/part/category.html:135
-#: templates/InvenTree/search.html:97 templates/js/translated/search.js:200
+#: part/models.py:77 part/templates/part/category.html:135
+#: templates/InvenTree/search.html:97 templates/js/translated/search.js:158
#: users/models.py:37
msgid "Part Categories"
msgstr ""
-#: part/models.py:128
+#: part/models.py:129
msgid "Default location for parts in this category"
msgstr ""
-#: part/models.py:133 stock/models.py:124 templates/js/translated/stock.js:2520
-#: templates/js/translated/table_filters.js:209
-#: templates/js/translated/table_filters.js:229
+#: part/models.py:134 stock/models.py:124 templates/js/translated/stock.js:2651
+#: templates/js/translated/table_filters.js:215
+#: templates/js/translated/table_filters.js:235
msgid "Structural"
msgstr ""
-#: part/models.py:135
+#: part/models.py:136
msgid "Parts may not be directly assigned to a structural category, but may be assigned to child categories."
msgstr ""
-#: part/models.py:139
+#: part/models.py:140
msgid "Default keywords"
msgstr ""
-#: part/models.py:139
+#: part/models.py:140
msgid "Default keywords for parts in this category"
msgstr ""
-#: part/models.py:144 stock/models.py:113
+#: part/models.py:145 stock/models.py:113
msgid "Icon"
msgstr ""
-#: part/models.py:145 stock/models.py:114
+#: part/models.py:146 stock/models.py:114
msgid "Icon (optional)"
msgstr ""
-#: part/models.py:164
+#: part/models.py:165
msgid "You cannot make this part category structural because some parts are already assigned to it!"
msgstr ""
-#: part/models.py:475
+#: part/models.py:476
msgid "Invalid choice for parent part"
msgstr ""
-#: part/models.py:517 part/models.py:529
+#: part/models.py:518 part/models.py:530
#, python-brace-format
msgid "Part '{p1}' is used in BOM for '{p2}' (recursive)"
msgstr ""
-#: part/models.py:601
+#: part/models.py:602
#, python-brace-format
msgid "IPN must match regex pattern {pat}"
msgstr "IPN skal matche regex mønster {pat}"
-#: part/models.py:672
+#: part/models.py:673
msgid "Stock item with this serial number already exists"
msgstr ""
-#: part/models.py:803
+#: part/models.py:804
msgid "Duplicate IPN not allowed in part settings"
msgstr ""
-#: part/models.py:808
+#: part/models.py:809
msgid "Part with this Name, IPN and Revision already exists."
msgstr ""
-#: part/models.py:822
+#: part/models.py:823
msgid "Parts cannot be assigned to structural part categories!"
msgstr ""
-#: part/models.py:846 part/models.py:3672
+#: part/models.py:847 part/models.py:3721
msgid "Part name"
msgstr ""
-#: part/models.py:852
+#: part/models.py:853
msgid "Is Template"
msgstr ""
-#: part/models.py:853
+#: part/models.py:854
msgid "Is this part a template part?"
msgstr ""
-#: part/models.py:863
+#: part/models.py:864
msgid "Is this part a variant of another part?"
msgstr ""
-#: part/models.py:870
+#: part/models.py:871
msgid "Part description (optional)"
msgstr ""
-#: part/models.py:876
+#: part/models.py:877
msgid "Part keywords to improve visibility in search results"
msgstr ""
-#: part/models.py:883 part/models.py:3198 part/models.py:3615
-#: part/serializers.py:848 part/templates/part/part_base.html:262
+#: part/models.py:884 part/models.py:3232 part/models.py:3664
+#: part/serializers.py:320 part/serializers.py:910
+#: part/templates/part/part_base.html:262
#: templates/InvenTree/settings/settings_staff_js.html:204
#: templates/js/translated/notification.js:59
-#: templates/js/translated/part.js:2269 templates/js/translated/part.js:2481
+#: templates/js/translated/part.js:2345
msgid "Category"
msgstr ""
-#: part/models.py:884
+#: part/models.py:885
msgid "Part category"
msgstr ""
-#: part/models.py:890
+#: part/models.py:891
msgid "Internal Part Number"
msgstr ""
-#: part/models.py:895
+#: part/models.py:896
msgid "Part revision or version number"
msgstr ""
-#: part/models.py:921
+#: part/models.py:922
msgid "Where is this item normally stored?"
msgstr ""
-#: part/models.py:966 part/templates/part/part_base.html:378
+#: part/models.py:967 part/templates/part/part_base.html:378
msgid "Default Supplier"
msgstr ""
-#: part/models.py:967
+#: part/models.py:968
msgid "Default supplier part"
msgstr ""
-#: part/models.py:974
+#: part/models.py:975
msgid "Default Expiry"
msgstr ""
-#: part/models.py:975
+#: part/models.py:976
msgid "Expiry time (in days) for stock items of this part"
msgstr ""
-#: part/models.py:981
+#: part/models.py:982
msgid "Minimum allowed stock level"
msgstr ""
-#: part/models.py:988
+#: part/models.py:989
msgid "Units of measure for this part"
msgstr ""
-#: part/models.py:997
+#: part/models.py:998
msgid "Can this part be built from other parts?"
msgstr ""
-#: part/models.py:1003
+#: part/models.py:1004
msgid "Can this part be used to build other parts?"
msgstr ""
-#: part/models.py:1009
+#: part/models.py:1010
msgid "Does this part have tracking for unique items?"
msgstr ""
-#: part/models.py:1014
+#: part/models.py:1015
msgid "Can this part be purchased from external suppliers?"
msgstr ""
-#: part/models.py:1019
+#: part/models.py:1020
msgid "Can this part be sold to customers?"
msgstr ""
-#: part/models.py:1024
+#: part/models.py:1025
msgid "Is this part active?"
msgstr ""
-#: part/models.py:1029
+#: part/models.py:1030
msgid "Is this a virtual part, such as a software product or license?"
msgstr ""
-#: part/models.py:1031
+#: part/models.py:1032
msgid "BOM checksum"
msgstr ""
-#: part/models.py:1031
+#: part/models.py:1032
msgid "Stored BOM checksum"
msgstr ""
-#: part/models.py:1034
+#: part/models.py:1035
msgid "BOM checked by"
msgstr ""
-#: part/models.py:1036
+#: part/models.py:1037
msgid "BOM checked date"
msgstr ""
-#: part/models.py:1040
+#: part/models.py:1041
msgid "Creation User"
msgstr ""
-#: part/models.py:1042
+#: part/models.py:1043
msgid "User responsible for this part"
msgstr ""
-#: part/models.py:1046 part/templates/part/part_base.html:341
+#: part/models.py:1047 part/templates/part/part_base.html:341
#: stock/templates/stock/item_base.html:447
-#: templates/js/translated/part.js:2331
+#: templates/js/translated/part.js:2407
msgid "Last Stocktake"
msgstr ""
-#: part/models.py:1921
+#: part/models.py:1923
msgid "Sell multiple"
msgstr ""
-#: part/models.py:2853
+#: part/models.py:2887
msgid "Currency used to cache pricing calculations"
msgstr ""
-#: part/models.py:2870
+#: part/models.py:2904
msgid "Minimum BOM Cost"
msgstr ""
-#: part/models.py:2871
+#: part/models.py:2905
msgid "Minimum cost of component parts"
msgstr ""
-#: part/models.py:2876
+#: part/models.py:2910
msgid "Maximum BOM Cost"
msgstr ""
-#: part/models.py:2877
+#: part/models.py:2911
msgid "Maximum cost of component parts"
msgstr ""
-#: part/models.py:2882
+#: part/models.py:2916
msgid "Minimum Purchase Cost"
msgstr ""
-#: part/models.py:2883
+#: part/models.py:2917
msgid "Minimum historical purchase cost"
msgstr ""
-#: part/models.py:2888
+#: part/models.py:2922
msgid "Maximum Purchase Cost"
msgstr ""
-#: part/models.py:2889
+#: part/models.py:2923
msgid "Maximum historical purchase cost"
msgstr ""
-#: part/models.py:2894
+#: part/models.py:2928
msgid "Minimum Internal Price"
msgstr ""
-#: part/models.py:2895
+#: part/models.py:2929
msgid "Minimum cost based on internal price breaks"
msgstr ""
-#: part/models.py:2900
+#: part/models.py:2934
msgid "Maximum Internal Price"
msgstr ""
-#: part/models.py:2901
+#: part/models.py:2935
msgid "Maximum cost based on internal price breaks"
msgstr ""
-#: part/models.py:2906
+#: part/models.py:2940
msgid "Minimum Supplier Price"
msgstr ""
-#: part/models.py:2907
+#: part/models.py:2941
msgid "Minimum price of part from external suppliers"
msgstr ""
-#: part/models.py:2912
+#: part/models.py:2946
msgid "Maximum Supplier Price"
msgstr ""
-#: part/models.py:2913
+#: part/models.py:2947
msgid "Maximum price of part from external suppliers"
msgstr ""
-#: part/models.py:2918
+#: part/models.py:2952
msgid "Minimum Variant Cost"
msgstr ""
-#: part/models.py:2919
+#: part/models.py:2953
msgid "Calculated minimum cost of variant parts"
msgstr ""
-#: part/models.py:2924
+#: part/models.py:2958
msgid "Maximum Variant Cost"
msgstr ""
-#: part/models.py:2925
+#: part/models.py:2959
msgid "Calculated maximum cost of variant parts"
msgstr ""
-#: part/models.py:2931
+#: part/models.py:2965
msgid "Calculated overall minimum cost"
msgstr ""
-#: part/models.py:2937
+#: part/models.py:2971
msgid "Calculated overall maximum cost"
msgstr ""
-#: part/models.py:2942
+#: part/models.py:2976
msgid "Minimum Sale Price"
msgstr ""
-#: part/models.py:2943
+#: part/models.py:2977
msgid "Minimum sale price based on price breaks"
msgstr ""
-#: part/models.py:2948
+#: part/models.py:2982
msgid "Maximum Sale Price"
msgstr ""
-#: part/models.py:2949
+#: part/models.py:2983
msgid "Maximum sale price based on price breaks"
msgstr ""
-#: part/models.py:2954
+#: part/models.py:2988
msgid "Minimum Sale Cost"
msgstr ""
-#: part/models.py:2955
+#: part/models.py:2989
msgid "Minimum historical sale price"
msgstr ""
-#: part/models.py:2960
+#: part/models.py:2994
msgid "Maximum Sale Cost"
msgstr ""
-#: part/models.py:2961
+#: part/models.py:2995
msgid "Maximum historical sale price"
msgstr ""
-#: part/models.py:2980
+#: part/models.py:3014
msgid "Part for stocktake"
msgstr ""
-#: part/models.py:2985
+#: part/models.py:3019
msgid "Item Count"
msgstr ""
-#: part/models.py:2986
+#: part/models.py:3020
msgid "Number of individual stock entries at time of stocktake"
msgstr ""
-#: part/models.py:2993
+#: part/models.py:3027
msgid "Total available stock at time of stocktake"
msgstr ""
-#: part/models.py:2997 part/models.py:3080
+#: part/models.py:3031 part/models.py:3114
#: part/templates/part/part_scheduling.html:13
#: report/templates/report/inventree_test_report_base.html:106
#: templates/InvenTree/settings/plugin_settings.html:37
#: templates/InvenTree/settings/settings_staff_js.html:360
-#: templates/js/translated/part.js:1059 templates/js/translated/pricing.js:812
+#: templates/js/translated/part.js:1058 templates/js/translated/pricing.js:812
#: templates/js/translated/pricing.js:936
-#: templates/js/translated/purchase_order.js:1691
-#: templates/js/translated/stock.js:2558
+#: templates/js/translated/purchase_order.js:1706
+#: templates/js/translated/stock.js:2689
msgid "Date"
msgstr ""
-#: part/models.py:2998
+#: part/models.py:3032
msgid "Date stocktake was performed"
msgstr ""
-#: part/models.py:3006
+#: part/models.py:3040
msgid "Additional notes"
msgstr ""
-#: part/models.py:3014
+#: part/models.py:3048
msgid "User who performed this stocktake"
msgstr ""
-#: part/models.py:3019
+#: part/models.py:3053
msgid "Minimum Stock Cost"
msgstr ""
-#: part/models.py:3020
+#: part/models.py:3054
msgid "Estimated minimum cost of stock on hand"
msgstr ""
-#: part/models.py:3025
+#: part/models.py:3059
msgid "Maximum Stock Cost"
msgstr ""
-#: part/models.py:3026
+#: part/models.py:3060
msgid "Estimated maximum cost of stock on hand"
msgstr ""
-#: part/models.py:3087 templates/InvenTree/settings/settings_staff_js.html:349
+#: part/models.py:3121 templates/InvenTree/settings/settings_staff_js.html:349
msgid "Report"
msgstr ""
-#: part/models.py:3088
+#: part/models.py:3122
msgid "Stocktake report file (generated internally)"
msgstr ""
-#: part/models.py:3093 templates/InvenTree/settings/settings_staff_js.html:356
+#: part/models.py:3127 templates/InvenTree/settings/settings_staff_js.html:356
msgid "Part Count"
msgstr ""
-#: part/models.py:3094
+#: part/models.py:3128
msgid "Number of parts covered by stocktake"
msgstr ""
-#: part/models.py:3102
+#: part/models.py:3136
msgid "User who requested this stocktake report"
msgstr ""
-#: part/models.py:3238
+#: part/models.py:3272
msgid "Test templates can only be created for trackable parts"
msgstr ""
-#: part/models.py:3255
+#: part/models.py:3289
msgid "Test with this name already exists for this part"
msgstr ""
-#: part/models.py:3275 templates/js/translated/part.js:2821
+#: part/models.py:3309 templates/js/translated/part.js:2806
msgid "Test Name"
msgstr ""
-#: part/models.py:3276
+#: part/models.py:3310
msgid "Enter a name for the test"
msgstr ""
-#: part/models.py:3281
+#: part/models.py:3315
msgid "Test Description"
msgstr ""
-#: part/models.py:3282
+#: part/models.py:3316
msgid "Enter description for this test"
msgstr ""
-#: part/models.py:3287 templates/js/translated/part.js:2830
-#: templates/js/translated/table_filters.js:423
+#: part/models.py:3321 templates/js/translated/part.js:2815
+#: templates/js/translated/table_filters.js:429
msgid "Required"
msgstr ""
-#: part/models.py:3288
+#: part/models.py:3322
msgid "Is this test required to pass?"
msgstr ""
-#: part/models.py:3293 templates/js/translated/part.js:2838
+#: part/models.py:3327 templates/js/translated/part.js:2823
msgid "Requires Value"
msgstr ""
-#: part/models.py:3294
+#: part/models.py:3328
msgid "Does this test require a value when adding a test result?"
msgstr ""
-#: part/models.py:3299 templates/js/translated/part.js:2845
+#: part/models.py:3333 templates/js/translated/part.js:2830
msgid "Requires Attachment"
msgstr ""
-#: part/models.py:3300
+#: part/models.py:3334
msgid "Does this test require a file attachment when adding a test result?"
msgstr ""
-#: part/models.py:3346
+#: part/models.py:3380
msgid "Checkbox parameters cannot have units"
msgstr ""
-#: part/models.py:3351
+#: part/models.py:3385
msgid "Checkbox parameters cannot have choices"
msgstr ""
-#: part/models.py:3369
+#: part/models.py:3403
msgid "Choices must be unique"
msgstr ""
-#: part/models.py:3385
+#: part/models.py:3419
msgid "Parameter template name must be unique"
msgstr ""
-#: part/models.py:3401
+#: part/models.py:3435
msgid "Parameter Name"
msgstr ""
-#: part/models.py:3407
+#: part/models.py:3441
msgid "Physical units for this parameter"
msgstr ""
-#: part/models.py:3417
+#: part/models.py:3451
msgid "Parameter description"
msgstr ""
-#: part/models.py:3423 templates/js/translated/part.js:1600
-#: templates/js/translated/table_filters.js:734
+#: part/models.py:3457 templates/js/translated/part.js:1599
+#: templates/js/translated/table_filters.js:756
msgid "Checkbox"
msgstr ""
-#: part/models.py:3424
+#: part/models.py:3458
msgid "Is this parameter a checkbox?"
msgstr ""
-#: part/models.py:3429 templates/js/translated/part.js:1609
+#: part/models.py:3463 templates/js/translated/part.js:1608
msgid "Choices"
msgstr ""
-#: part/models.py:3430
+#: part/models.py:3464
msgid "Valid choices for this parameter (comma-separated)"
msgstr ""
-#: part/models.py:3511
+#: part/models.py:3545
msgid "Invalid choice for parameter value"
msgstr ""
-#: part/models.py:3555
+#: part/models.py:3589
msgid "Parent Part"
msgstr ""
-#: part/models.py:3560 part/models.py:3621 part/models.py:3622
+#: part/models.py:3594 part/models.py:3670 part/models.py:3671
#: templates/InvenTree/settings/settings_staff_js.html:199
msgid "Parameter Template"
msgstr ""
-#: part/models.py:3565
+#: part/models.py:3599
msgid "Data"
msgstr ""
-#: part/models.py:3565
+#: part/models.py:3599
msgid "Parameter Value"
msgstr ""
-#: part/models.py:3626 templates/InvenTree/settings/settings_staff_js.html:208
+#: part/models.py:3675 templates/InvenTree/settings/settings_staff_js.html:208
msgid "Default Value"
msgstr ""
-#: part/models.py:3627
+#: part/models.py:3676
msgid "Default Parameter Value"
msgstr ""
-#: part/models.py:3664
+#: part/models.py:3713
msgid "Part ID or part name"
msgstr ""
-#: part/models.py:3668
+#: part/models.py:3717
msgid "Unique part ID value"
msgstr ""
-#: part/models.py:3676
+#: part/models.py:3725
msgid "Part IPN value"
msgstr ""
-#: part/models.py:3679
+#: part/models.py:3728
msgid "Level"
msgstr ""
-#: part/models.py:3680
+#: part/models.py:3729
msgid "BOM level"
msgstr ""
-#: part/models.py:3764
+#: part/models.py:3735 part/models.py:4113
+msgid "BOM Item"
+msgstr ""
+
+#: part/models.py:3808
msgid "Select parent part"
msgstr ""
-#: part/models.py:3772
+#: part/models.py:3816
msgid "Sub part"
msgstr ""
-#: part/models.py:3773
+#: part/models.py:3817
msgid "Select part to be used in BOM"
msgstr ""
-#: part/models.py:3779
+#: part/models.py:3823
msgid "BOM quantity for this BOM item"
msgstr ""
-#: part/models.py:3783 part/templates/part/upload_bom.html:58
-#: templates/js/translated/bom.js:971 templates/js/translated/bom.js:998
-#: templates/js/translated/build.js:2113
-#: templates/js/translated/table_filters.js:156
-#: templates/js/translated/table_filters.js:185
-#: templates/js/translated/table_filters.js:500
-msgid "Optional"
-msgstr ""
-
-#: part/models.py:3784
+#: part/models.py:3828
msgid "This BOM item is optional"
msgstr ""
-#: part/models.py:3789 templates/js/translated/bom.js:967
-#: templates/js/translated/bom.js:1007 templates/js/translated/build.js:2104
-#: templates/js/translated/table_filters.js:160
-#: templates/js/translated/table_filters.js:496
-msgid "Consumable"
-msgstr ""
-
-#: part/models.py:3790
+#: part/models.py:3834
msgid "This BOM item is consumable (it is not tracked in build orders)"
msgstr ""
-#: part/models.py:3794 part/templates/part/upload_bom.html:55
+#: part/models.py:3838 part/templates/part/upload_bom.html:55
msgid "Overage"
msgstr ""
-#: part/models.py:3795
+#: part/models.py:3839
msgid "Estimated build wastage quantity (absolute or percentage)"
msgstr ""
-#: part/models.py:3798
+#: part/models.py:3842
msgid "BOM item reference"
msgstr ""
-#: part/models.py:3801
+#: part/models.py:3845
msgid "BOM item notes"
msgstr ""
-#: part/models.py:3805
+#: part/models.py:3849
msgid "Checksum"
msgstr ""
-#: part/models.py:3805
+#: part/models.py:3849
msgid "BOM line checksum"
msgstr ""
-#: part/models.py:3810 templates/js/translated/table_filters.js:144
+#: part/models.py:3854 templates/js/translated/table_filters.js:150
msgid "Validated"
msgstr ""
-#: part/models.py:3811
+#: part/models.py:3855
msgid "This BOM item has been validated"
msgstr ""
-#: part/models.py:3816 part/templates/part/upload_bom.html:57
-#: templates/js/translated/bom.js:1024
-#: templates/js/translated/table_filters.js:148
-#: templates/js/translated/table_filters.js:181
+#: part/models.py:3860 part/templates/part/upload_bom.html:57
+#: templates/js/translated/bom.js:1042
+#: templates/js/translated/table_filters.js:154
+#: templates/js/translated/table_filters.js:187
msgid "Gets inherited"
msgstr ""
-#: part/models.py:3817
+#: part/models.py:3861
msgid "This BOM item is inherited by BOMs for variant parts"
msgstr ""
-#: part/models.py:3822 part/templates/part/upload_bom.html:56
-#: templates/js/translated/bom.js:1016
+#: part/models.py:3866 part/templates/part/upload_bom.html:56
+#: templates/js/translated/bom.js:1034
msgid "Allow Variants"
msgstr ""
-#: part/models.py:3823
+#: part/models.py:3867
msgid "Stock items for variant parts can be used for this BOM item"
msgstr ""
-#: part/models.py:3909 stock/models.py:577
+#: part/models.py:3953 stock/models.py:577
msgid "Quantity must be integer value for trackable parts"
msgstr ""
-#: part/models.py:3918 part/models.py:3920
+#: part/models.py:3962 part/models.py:3964
msgid "Sub part must be specified"
msgstr ""
-#: part/models.py:4036
+#: part/models.py:4080
msgid "BOM Item Substitute"
msgstr ""
-#: part/models.py:4057
+#: part/models.py:4101
msgid "Substitute part cannot be the same as the master part"
msgstr ""
-#: part/models.py:4070
+#: part/models.py:4114
msgid "Parent BOM item"
msgstr ""
-#: part/models.py:4078
+#: part/models.py:4122
msgid "Substitute part"
msgstr ""
-#: part/models.py:4093
+#: part/models.py:4137
msgid "Part 1"
msgstr ""
-#: part/models.py:4097
+#: part/models.py:4141
msgid "Part 2"
msgstr ""
-#: part/models.py:4097
+#: part/models.py:4141
msgid "Select Related Part"
msgstr ""
-#: part/models.py:4115
+#: part/models.py:4159
msgid "Part relationship cannot be created between a part and itself"
msgstr ""
-#: part/models.py:4119
+#: part/models.py:4163
msgid "Duplicate relationship already exists"
msgstr ""
-#: part/serializers.py:152 part/serializers.py:175 stock/serializers.py:257
+#: part/serializers.py:152 part/serializers.py:175 stock/serializers.py:319
msgid "Purchase currency of this stock item"
msgstr ""
-#: part/serializers.py:302
+#: part/serializers.py:313
+msgid "No parts selected"
+msgstr ""
+
+#: part/serializers.py:321
+msgid "Select category"
+msgstr ""
+
+#: part/serializers.py:352
msgid "Original Part"
msgstr ""
-#: part/serializers.py:302
+#: part/serializers.py:352
msgid "Select original part to duplicate"
msgstr ""
-#: part/serializers.py:307
+#: part/serializers.py:357
msgid "Copy Image"
msgstr ""
-#: part/serializers.py:307
+#: part/serializers.py:357
msgid "Copy image from original part"
msgstr ""
-#: part/serializers.py:312 part/templates/part/detail.html:296
+#: part/serializers.py:362 part/templates/part/detail.html:277
msgid "Copy BOM"
msgstr ""
-#: part/serializers.py:312
+#: part/serializers.py:362
msgid "Copy bill of materials from original part"
msgstr ""
-#: part/serializers.py:317
+#: part/serializers.py:367
msgid "Copy Parameters"
msgstr ""
-#: part/serializers.py:317
+#: part/serializers.py:367
msgid "Copy parameter data from original part"
msgstr ""
-#: part/serializers.py:327
+#: part/serializers.py:377
msgid "Initial Stock Quantity"
msgstr ""
-#: part/serializers.py:327
+#: part/serializers.py:377
msgid "Specify initial stock quantity for this Part. If quantity is zero, no stock is added."
msgstr ""
-#: part/serializers.py:333
+#: part/serializers.py:383
msgid "Initial Stock Location"
msgstr ""
-#: part/serializers.py:333
+#: part/serializers.py:383
msgid "Specify initial stock location for this Part"
msgstr ""
-#: part/serializers.py:343
+#: part/serializers.py:393
msgid "Select supplier (or leave blank to skip)"
msgstr ""
-#: part/serializers.py:354
+#: part/serializers.py:404
msgid "Select manufacturer (or leave blank to skip)"
msgstr ""
-#: part/serializers.py:360
+#: part/serializers.py:410
msgid "Manufacturer part number"
msgstr ""
-#: part/serializers.py:367
+#: part/serializers.py:417
msgid "Selected company is not a valid supplier"
msgstr ""
-#: part/serializers.py:375
+#: part/serializers.py:425
msgid "Selected company is not a valid manufacturer"
msgstr ""
-#: part/serializers.py:387
+#: part/serializers.py:437
msgid "Manufacturer part matching this MPN already exists"
msgstr ""
-#: part/serializers.py:395
+#: part/serializers.py:445
msgid "Supplier part matching this SKU already exists"
msgstr ""
-#: part/serializers.py:620 part/templates/part/copy_part.html:9
-#: templates/js/translated/part.js:449
+#: part/serializers.py:682 part/templates/part/copy_part.html:9
+#: templates/js/translated/part.js:448
msgid "Duplicate Part"
msgstr ""
-#: part/serializers.py:620
+#: part/serializers.py:682
msgid "Copy initial data from another Part"
msgstr ""
-#: part/serializers.py:625 templates/js/translated/part.js:103
+#: part/serializers.py:687 templates/js/translated/part.js:102
msgid "Initial Stock"
msgstr ""
-#: part/serializers.py:625
+#: part/serializers.py:687
msgid "Create Part with initial stock quantity"
msgstr ""
-#: part/serializers.py:630
+#: part/serializers.py:692
msgid "Supplier Information"
msgstr ""
-#: part/serializers.py:630
+#: part/serializers.py:692
msgid "Add initial supplier information for this part"
msgstr ""
-#: part/serializers.py:636
+#: part/serializers.py:698
msgid "Copy Category Parameters"
msgstr ""
-#: part/serializers.py:637
+#: part/serializers.py:699
msgid "Copy parameter templates from selected part category"
msgstr ""
-#: part/serializers.py:842
+#: part/serializers.py:904
msgid "Limit stocktake report to a particular part, and any variant parts"
msgstr ""
-#: part/serializers.py:848
+#: part/serializers.py:910
msgid "Limit stocktake report to a particular part category, and any child categories"
msgstr ""
-#: part/serializers.py:854
+#: part/serializers.py:916
msgid "Limit stocktake report to a particular stock location, and any child locations"
msgstr ""
-#: part/serializers.py:859
+#: part/serializers.py:921
msgid "Generate Report"
msgstr ""
-#: part/serializers.py:860
+#: part/serializers.py:922
msgid "Generate report file containing calculated stocktake data"
msgstr ""
-#: part/serializers.py:865
+#: part/serializers.py:927
msgid "Update Parts"
msgstr ""
-#: part/serializers.py:866
+#: part/serializers.py:928
msgid "Update specified parts with calculated stocktake data"
msgstr ""
-#: part/serializers.py:874
+#: part/serializers.py:936
msgid "Stocktake functionality is not enabled"
msgstr ""
-#: part/serializers.py:963
+#: part/serializers.py:1025
msgid "Update"
msgstr ""
-#: part/serializers.py:964
+#: part/serializers.py:1026
msgid "Update pricing for this part"
msgstr ""
-#: part/serializers.py:1246
+#: part/serializers.py:1308
msgid "Select part to copy BOM from"
msgstr ""
-#: part/serializers.py:1254
+#: part/serializers.py:1316
msgid "Remove Existing Data"
msgstr ""
-#: part/serializers.py:1255
+#: part/serializers.py:1317
msgid "Remove existing BOM items before copying"
msgstr ""
-#: part/serializers.py:1260
+#: part/serializers.py:1322
msgid "Include Inherited"
msgstr ""
-#: part/serializers.py:1261
+#: part/serializers.py:1323
msgid "Include BOM items which are inherited from templated parts"
msgstr ""
-#: part/serializers.py:1266
+#: part/serializers.py:1328
msgid "Skip Invalid Rows"
msgstr ""
-#: part/serializers.py:1267
+#: part/serializers.py:1329
msgid "Enable this option to skip invalid rows"
msgstr ""
-#: part/serializers.py:1272
+#: part/serializers.py:1334
msgid "Copy Substitute Parts"
msgstr ""
-#: part/serializers.py:1273
+#: part/serializers.py:1335
msgid "Copy substitute parts when duplicate BOM items"
msgstr ""
-#: part/serializers.py:1313
+#: part/serializers.py:1375
msgid "Clear Existing BOM"
msgstr ""
-#: part/serializers.py:1314
+#: part/serializers.py:1376
msgid "Delete existing BOM items before uploading"
msgstr ""
-#: part/serializers.py:1344
+#: part/serializers.py:1406
msgid "No part column specified"
msgstr ""
-#: part/serializers.py:1387
+#: part/serializers.py:1449
msgid "Multiple matching parts found"
msgstr ""
-#: part/serializers.py:1390
+#: part/serializers.py:1452
msgid "No matching part found"
msgstr ""
-#: part/serializers.py:1393
+#: part/serializers.py:1455
msgid "Part is not designated as a component"
msgstr ""
-#: part/serializers.py:1402
+#: part/serializers.py:1464
msgid "Quantity not provided"
msgstr ""
-#: part/serializers.py:1410
+#: part/serializers.py:1472
msgid "Invalid quantity"
msgstr ""
-#: part/serializers.py:1431
+#: part/serializers.py:1493
msgid "At least one BOM item is required"
msgstr ""
@@ -6421,9 +6453,9 @@ msgstr ""
msgid "The available stock for {part.name} has fallen below the configured minimum level"
msgstr ""
-#: part/tasks.py:294 templates/js/translated/part.js:1040
-#: templates/js/translated/part.js:1793 templates/js/translated/part.js:1848
-#: templates/js/translated/purchase_order.js:2052
+#: part/tasks.py:294 templates/js/translated/part.js:1039
+#: templates/js/translated/part.js:1792 templates/js/translated/part.js:1847
+#: templates/js/translated/purchase_order.js:2062
msgid "Total Quantity"
msgstr ""
@@ -6461,14 +6493,6 @@ msgstr ""
msgid "The BOM for %(part)s has not been validated."
msgstr ""
-#: part/templates/part/bom.html:30 part/templates/part/detail.html:291
-msgid "BOM actions"
-msgstr ""
-
-#: part/templates/part/bom.html:34
-msgid "Delete Items"
-msgstr ""
-
#: part/templates/part/category.html:34
msgid "Perform stocktake for this part category"
msgstr ""
@@ -6505,7 +6529,7 @@ msgstr ""
msgid "Top level part category"
msgstr ""
-#: part/templates/part/category.html:121 part/templates/part/category.html:225
+#: part/templates/part/category.html:121 part/templates/part/category.html:206
#: part/templates/part/category_sidebar.html:7
msgid "Subcategories"
msgstr ""
@@ -6518,33 +6542,20 @@ msgstr ""
msgid "Create new part"
msgstr ""
-#: part/templates/part/category.html:165 templates/js/translated/bom.js:443
+#: part/templates/part/category.html:165 templates/js/translated/bom.js:444
msgid "New Part"
msgstr ""
-#: part/templates/part/category.html:175 part/templates/part/detail.html:390
-#: part/templates/part/detail.html:421
-msgid "Options"
-msgstr ""
-
-#: part/templates/part/category.html:179
-msgid "Set category"
-msgstr ""
-
-#: part/templates/part/category.html:180
-msgid "Set Category"
-msgstr ""
-
-#: part/templates/part/category.html:208
+#: part/templates/part/category.html:191
#: templates/InvenTree/settings/sidebar.html:47
msgid "Part Parameters"
msgstr ""
-#: part/templates/part/category.html:229
+#: part/templates/part/category.html:210
msgid "Create new part category"
msgstr ""
-#: part/templates/part/category.html:230
+#: part/templates/part/category.html:211
msgid "New Category"
msgstr ""
@@ -6581,7 +6592,7 @@ msgid "Refresh scheduling data"
msgstr ""
#: part/templates/part/detail.html:45 part/templates/part/prices.html:15
-#: templates/js/translated/tables.js:584
+#: templates/js/translated/tables.js:560
msgid "Refresh"
msgstr ""
@@ -6592,7 +6603,7 @@ msgstr ""
#: part/templates/part/detail.html:67 part/templates/part/part_sidebar.html:50
#: stock/admin.py:130 templates/InvenTree/settings/part_stocktake.html:29
#: templates/InvenTree/settings/sidebar.html:51
-#: templates/js/translated/stock.js:1952 users/models.py:39
+#: templates/js/translated/stock.js:2109 users/models.py:39
msgid "Stocktake"
msgstr ""
@@ -6604,101 +6615,101 @@ msgstr ""
msgid "Add Test Template"
msgstr ""
-#: part/templates/part/detail.html:145 stock/templates/stock/item.html:53
+#: part/templates/part/detail.html:139 stock/templates/stock/item.html:49
msgid "Sales Order Allocations"
msgstr ""
-#: part/templates/part/detail.html:165
+#: part/templates/part/detail.html:156
msgid "Part Notes"
msgstr ""
-#: part/templates/part/detail.html:180
+#: part/templates/part/detail.html:171
msgid "Part Variants"
msgstr ""
-#: part/templates/part/detail.html:184
+#: part/templates/part/detail.html:175
msgid "Create new variant"
msgstr ""
-#: part/templates/part/detail.html:185
+#: part/templates/part/detail.html:176
msgid "New Variant"
msgstr ""
-#: part/templates/part/detail.html:212
+#: part/templates/part/detail.html:199
msgid "Add new parameter"
msgstr ""
-#: part/templates/part/detail.html:249 part/templates/part/part_sidebar.html:58
+#: part/templates/part/detail.html:232 part/templates/part/part_sidebar.html:58
msgid "Related Parts"
msgstr ""
-#: part/templates/part/detail.html:253 part/templates/part/detail.html:254
+#: part/templates/part/detail.html:236 part/templates/part/detail.html:237
msgid "Add Related"
msgstr ""
-#: part/templates/part/detail.html:274 part/templates/part/part_sidebar.html:17
+#: part/templates/part/detail.html:255 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:279
+#: part/templates/part/detail.html:260
msgid "Export actions"
msgstr ""
-#: part/templates/part/detail.html:283 templates/js/translated/bom.js:339
+#: part/templates/part/detail.html:264 templates/js/translated/bom.js:340
msgid "Export BOM"
msgstr ""
-#: part/templates/part/detail.html:285
+#: part/templates/part/detail.html:266
msgid "Print BOM Report"
msgstr ""
-#: part/templates/part/detail.html:295
+#: part/templates/part/detail.html:272
+msgid "BOM actions"
+msgstr ""
+
+#: part/templates/part/detail.html:276
msgid "Upload BOM"
msgstr ""
-#: part/templates/part/detail.html:297
+#: part/templates/part/detail.html:278
msgid "Validate BOM"
msgstr ""
-#: part/templates/part/detail.html:302 part/templates/part/detail.html:303
-#: templates/js/translated/bom.js:1279 templates/js/translated/bom.js:1280
+#: part/templates/part/detail.html:283 part/templates/part/detail.html:284
+#: templates/js/translated/bom.js:1299 templates/js/translated/bom.js:1300
msgid "Add BOM Item"
msgstr ""
-#: part/templates/part/detail.html:316
+#: part/templates/part/detail.html:297
msgid "Assemblies"
msgstr ""
-#: part/templates/part/detail.html:334
+#: part/templates/part/detail.html:313
msgid "Part Builds"
msgstr ""
-#: part/templates/part/detail.html:361 stock/templates/stock/item.html:38
+#: part/templates/part/detail.html:338 stock/templates/stock/item.html:36
msgid "Build Order Allocations"
msgstr ""
-#: part/templates/part/detail.html:377
+#: part/templates/part/detail.html:352
msgid "Part Suppliers"
msgstr ""
-#: part/templates/part/detail.html:407
+#: part/templates/part/detail.html:372
msgid "Part Manufacturers"
msgstr ""
-#: part/templates/part/detail.html:423
-msgid "Delete manufacturer parts"
-msgstr ""
-
-#: part/templates/part/detail.html:707
+#: part/templates/part/detail.html:654
msgid "Related Part"
msgstr ""
-#: part/templates/part/detail.html:715
+#: part/templates/part/detail.html:662
msgid "Add Related Part"
msgstr ""
-#: part/templates/part/detail.html:800
+#: part/templates/part/detail.html:747
msgid "Add Test Result Template"
msgstr ""
@@ -6732,13 +6743,13 @@ msgid "Download Part Import Template"
msgstr ""
#: part/templates/part/import_wizard/part_upload.html:92
-#: templates/js/translated/bom.js:308 templates/js/translated/bom.js:342
+#: templates/js/translated/bom.js:309 templates/js/translated/bom.js:343
#: templates/js/translated/order.js:129 templates/js/translated/tables.js:189
msgid "Format"
msgstr ""
#: part/templates/part/import_wizard/part_upload.html:93
-#: templates/js/translated/bom.js:309 templates/js/translated/bom.js:343
+#: templates/js/translated/bom.js:310 templates/js/translated/bom.js:344
#: templates/js/translated/order.js:130
msgid "Select file format"
msgstr ""
@@ -6779,7 +6790,7 @@ msgstr ""
msgid "Transfer part stock"
msgstr ""
-#: part/templates/part/part_base.html:93
+#: part/templates/part/part_base.html:93 templates/js/translated/part.js:2264
msgid "Part actions"
msgstr ""
@@ -6824,10 +6835,10 @@ msgid "Part is not active"
msgstr ""
#: part/templates/part/part_base.html:148
-#: templates/js/translated/company.js:945
-#: templates/js/translated/company.js:1185
-#: templates/js/translated/model_renderers.js:273
-#: templates/js/translated/part.js:792 templates/js/translated/part.js:1192
+#: templates/js/translated/company.js:1318
+#: templates/js/translated/company.js:1606
+#: templates/js/translated/model_renderers.js:287
+#: templates/js/translated/part.js:791 templates/js/translated/part.js:1191
msgid "Inactive"
msgstr ""
@@ -6850,7 +6861,7 @@ msgstr ""
msgid "Allocated to Sales Orders"
msgstr ""
-#: part/templates/part/part_base.html:237 templates/js/translated/bom.js:1178
+#: part/templates/part/part_base.html:237 templates/js/translated/bom.js:1198
msgid "Can Build"
msgstr ""
@@ -6858,8 +6869,8 @@ msgstr ""
msgid "Minimum stock level"
msgstr ""
-#: part/templates/part/part_base.html:324 templates/js/translated/bom.js:1041
-#: templates/js/translated/part.js:1238 templates/js/translated/part.js:2304
+#: part/templates/part/part_base.html:324 templates/js/translated/bom.js:1059
+#: templates/js/translated/part.js:1237 templates/js/translated/part.js:2380
#: templates/js/translated/pricing.js:391
#: templates/js/translated/pricing.js:1040
msgid "Price Range"
@@ -6882,7 +6893,7 @@ msgstr ""
msgid "Link Barcode to Part"
msgstr ""
-#: part/templates/part/part_base.html:474 templates/js/translated/part.js:2191
+#: part/templates/part/part_base.html:474 templates/js/translated/part.js:2258
msgid "part"
msgstr ""
@@ -6956,9 +6967,9 @@ msgstr ""
#: stock/templates/stock/stock_app_base.html:10
#: templates/InvenTree/search.html:153
#: templates/InvenTree/settings/sidebar.html:49
-#: templates/js/translated/part.js:1216 templates/js/translated/part.js:2120
-#: templates/js/translated/part.js:2284 templates/js/translated/stock.js:1022
-#: templates/js/translated/stock.js:1829 templates/navbar.html:31
+#: templates/js/translated/part.js:1215 templates/js/translated/part.js:2119
+#: templates/js/translated/part.js:2360 templates/js/translated/stock.js:1021
+#: templates/js/translated/stock.js:1986 templates/navbar.html:31
msgid "Stock"
msgstr ""
@@ -6989,9 +7000,9 @@ msgstr ""
#: part/templates/part/prices.html:25 stock/admin.py:129
#: stock/templates/stock/item_base.html:442
-#: templates/js/translated/company.js:1313
-#: templates/js/translated/company.js:1323
-#: templates/js/translated/stock.js:1982
+#: templates/js/translated/company.js:1734
+#: templates/js/translated/company.js:1744
+#: templates/js/translated/stock.js:2139
msgid "Last Updated"
msgstr ""
@@ -7054,12 +7065,12 @@ msgstr ""
msgid "Add Sell Price Break"
msgstr ""
-#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:682
-#: templates/js/translated/part.js:2115 templates/js/translated/part.js:2117
+#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:681
+#: templates/js/translated/part.js:2114 templates/js/translated/part.js:2116
msgid "No Stock"
msgstr ""
-#: part/templates/part/stock_count.html:9 templates/InvenTree/index.html:167
+#: part/templates/part/stock_count.html:9 templates/InvenTree/index.html:120
msgid "Low Stock"
msgstr ""
@@ -7163,7 +7174,7 @@ msgid "Match found for barcode data"
msgstr ""
#: plugin/base/barcodes/api.py:120
-#: templates/js/translated/purchase_order.js:1372
+#: templates/js/translated/purchase_order.js:1387
msgid "Barcode matches existing item"
msgstr ""
@@ -7226,43 +7237,43 @@ msgstr ""
msgid "Open link"
msgstr ""
-#: plugin/models.py:27
+#: plugin/models.py:28
msgid "Plugin Configuration"
msgstr ""
-#: plugin/models.py:28
+#: plugin/models.py:29
msgid "Plugin Configurations"
msgstr ""
-#: plugin/models.py:33
+#: plugin/models.py:34
msgid "Key"
msgstr ""
-#: plugin/models.py:34
+#: plugin/models.py:35
msgid "Key of plugin"
msgstr ""
-#: plugin/models.py:42
+#: plugin/models.py:43
msgid "PluginName of the plugin"
msgstr ""
-#: plugin/models.py:48
+#: plugin/models.py:49
msgid "Is the plugin active"
msgstr ""
-#: plugin/models.py:124
+#: plugin/models.py:125
msgid "Sample plugin"
msgstr ""
-#: plugin/models.py:133
+#: plugin/models.py:134
msgid "Builtin Plugin"
msgstr ""
-#: plugin/models.py:159 templates/InvenTree/settings/plugin_settings.html:9
+#: plugin/models.py:160 templates/InvenTree/settings/plugin_settings.html:9
msgid "Plugin"
msgstr ""
-#: plugin/models.py:210
+#: plugin/models.py:211
msgid "Method"
msgstr ""
@@ -7414,47 +7425,47 @@ msgstr ""
msgid "Build query filters (comma-separated list of key=value pairs"
msgstr ""
-#: report/models.py:418
+#: report/models.py:420
msgid "Part Filters"
msgstr ""
-#: report/models.py:419
+#: report/models.py:421
msgid "Part query filters (comma-separated list of key=value pairs"
msgstr ""
-#: report/models.py:453
+#: report/models.py:455
msgid "Purchase order query filters"
msgstr ""
-#: report/models.py:491
+#: report/models.py:493
msgid "Sales order query filters"
msgstr ""
-#: report/models.py:529
+#: report/models.py:531
msgid "Return order query filters"
msgstr ""
-#: report/models.py:582
+#: report/models.py:584
msgid "Snippet"
msgstr ""
-#: report/models.py:583
+#: report/models.py:585
msgid "Report snippet file"
msgstr ""
-#: report/models.py:587
+#: report/models.py:589
msgid "Snippet file description"
msgstr ""
-#: report/models.py:624
+#: report/models.py:626
msgid "Asset"
msgstr ""
-#: report/models.py:625
+#: report/models.py:627
msgid "Report asset file"
msgstr ""
-#: report/models.py:632
+#: report/models.py:634
msgid "Asset file description"
msgstr ""
@@ -7475,8 +7486,8 @@ msgstr ""
#: templates/js/translated/order.js:316 templates/js/translated/pricing.js:527
#: templates/js/translated/pricing.js:596
#: templates/js/translated/pricing.js:820
-#: templates/js/translated/purchase_order.js:2083
-#: templates/js/translated/sales_order.js:1817
+#: templates/js/translated/purchase_order.js:2093
+#: templates/js/translated/sales_order.js:1829
msgid "Unit Price"
msgstr ""
@@ -7488,23 +7499,23 @@ msgstr ""
#: report/templates/report/inventree_po_report_base.html:72
#: report/templates/report/inventree_so_report_base.html:72
-#: templates/js/translated/purchase_order.js:1985
-#: templates/js/translated/sales_order.js:1792
+#: templates/js/translated/purchase_order.js:1995
+#: templates/js/translated/sales_order.js:1804
msgid "Total"
msgstr ""
#: report/templates/report/inventree_return_order_report_base.html:25
#: report/templates/report/inventree_test_report_base.html:88
#: stock/models.py:725 stock/templates/stock/item_base.html:312
-#: templates/js/translated/build.js:502 templates/js/translated/build.js:1423
-#: templates/js/translated/build.js:1989
-#: templates/js/translated/model_renderers.js:201
-#: templates/js/translated/return_order.js:528
-#: templates/js/translated/return_order.js:708
-#: templates/js/translated/sales_order.js:300
-#: templates/js/translated/sales_order.js:1597
-#: templates/js/translated/sales_order.js:1682
-#: templates/js/translated/stock.js:563
+#: templates/js/translated/build.js:508 templates/js/translated/build.js:1306
+#: templates/js/translated/build.js:2281
+#: templates/js/translated/model_renderers.js:215
+#: templates/js/translated/return_order.js:540
+#: templates/js/translated/return_order.js:720
+#: templates/js/translated/sales_order.js:312
+#: templates/js/translated/sales_order.js:1609
+#: templates/js/translated/sales_order.js:1694
+#: templates/js/translated/stock.js:562
msgid "Serial Number"
msgstr ""
@@ -7517,7 +7528,7 @@ msgid "Test Results"
msgstr ""
#: report/templates/report/inventree_test_report_base.html:102
-#: stock/models.py:2243 templates/js/translated/stock.js:1419
+#: stock/models.py:2243 templates/js/translated/stock.js:1418
msgid "Test"
msgstr ""
@@ -7548,8 +7559,8 @@ msgid "Installed Items"
msgstr ""
#: report/templates/report/inventree_test_report_base.html:168
-#: stock/admin.py:104 templates/js/translated/stock.js:667
-#: templates/js/translated/stock.js:838 templates/js/translated/stock.js:2849
+#: stock/admin.py:104 templates/js/translated/stock.js:666
+#: templates/js/translated/stock.js:837 templates/js/translated/stock.js:2976
msgid "Serial"
msgstr ""
@@ -7617,31 +7628,31 @@ msgstr ""
#: stock/admin.py:131 stock/models.py:789
#: stock/templates/stock/item_base.html:429
-#: templates/js/translated/stock.js:1966
+#: templates/js/translated/stock.js:2123
msgid "Expiry Date"
msgstr ""
-#: stock/api.py:420 templates/js/translated/table_filters.js:373
+#: stock/api.py:426 templates/js/translated/table_filters.js:379
msgid "External Location"
msgstr ""
-#: stock/api.py:582
+#: stock/api.py:619
msgid "Quantity is required"
msgstr ""
-#: stock/api.py:589
+#: stock/api.py:626
msgid "Valid part must be supplied"
msgstr ""
-#: stock/api.py:615
+#: stock/api.py:652
msgid "The given supplier part does not exist"
msgstr ""
-#: stock/api.py:624
+#: stock/api.py:661
msgid "The supplier part has a pack size defined, but flag use_pack_size not set"
msgstr ""
-#: stock/api.py:642
+#: stock/api.py:679
msgid "Serial numbers cannot be supplied for a non-trackable part"
msgstr ""
@@ -7652,7 +7663,7 @@ msgid "Stock Location"
msgstr ""
#: stock/models.py:55 stock/templates/stock/location.html:177
-#: templates/InvenTree/search.html:166 templates/js/translated/search.js:220
+#: templates/InvenTree/search.html:166 templates/js/translated/search.js:178
#: users/models.py:40
msgid "Stock Locations"
msgstr ""
@@ -7670,8 +7681,8 @@ msgstr ""
msgid "Stock items may not be directly located into a structural stock locations, but may be located to child locations."
msgstr ""
-#: stock/models.py:132 templates/js/translated/stock.js:2529
-#: templates/js/translated/table_filters.js:213
+#: stock/models.py:132 templates/js/translated/stock.js:2660
+#: templates/js/translated/table_filters.js:219
msgid "External"
msgstr ""
@@ -7687,7 +7698,7 @@ msgstr ""
msgid "Stock items cannot be located into structural stock locations!"
msgstr ""
-#: stock/models.py:583 stock/serializers.py:174
+#: stock/models.py:583 stock/serializers.py:223
msgid "Stock item cannot be created for virtual parts"
msgstr ""
@@ -7821,7 +7832,7 @@ msgstr ""
msgid "Quantity does not match serial numbers"
msgstr ""
-#: stock/models.py:1403 stock/serializers.py:374
+#: stock/models.py:1403 stock/serializers.py:440
msgid "Serial numbers already exist"
msgstr ""
@@ -7849,7 +7860,7 @@ msgstr ""
msgid "Serialized stock cannot be merged"
msgstr ""
-#: stock/models.py:1496 stock/serializers.py:975
+#: stock/models.py:1496 stock/serializers.py:1092
msgid "Duplicate stock items"
msgstr ""
@@ -7901,132 +7912,141 @@ msgstr ""
msgid "Test notes"
msgstr ""
-#: stock/serializers.py:76
+#: stock/serializers.py:121
msgid "Serial number is too large"
msgstr ""
-#: stock/serializers.py:166
+#: stock/serializers.py:215
msgid "Use pack size when adding: the quantity defined is the number of packs"
msgstr ""
-#: stock/serializers.py:254
+#: stock/serializers.py:316
msgid "Purchase price of this stock item, per unit or pack"
msgstr ""
-#: stock/serializers.py:307
+#: stock/serializers.py:373
msgid "Enter number of stock items to serialize"
msgstr ""
-#: stock/serializers.py:319
+#: stock/serializers.py:385
#, python-brace-format
msgid "Quantity must not exceed available stock quantity ({q})"
msgstr ""
-#: stock/serializers.py:325
+#: stock/serializers.py:391
msgid "Enter serial numbers for new items"
msgstr ""
-#: stock/serializers.py:336 stock/serializers.py:932 stock/serializers.py:1174
+#: stock/serializers.py:402 stock/serializers.py:1049 stock/serializers.py:1291
msgid "Destination stock location"
msgstr ""
-#: stock/serializers.py:343
+#: stock/serializers.py:409
msgid "Optional note field"
msgstr ""
-#: stock/serializers.py:353
+#: stock/serializers.py:419
msgid "Serial numbers cannot be assigned to this part"
msgstr ""
-#: stock/serializers.py:414
+#: stock/serializers.py:480
msgid "Select stock item to install"
msgstr ""
-#: stock/serializers.py:427
-msgid "Stock item is unavailable"
-msgstr ""
-
-#: stock/serializers.py:434
-msgid "Selected part is not in the Bill of Materials"
-msgstr ""
-
-#: stock/serializers.py:471
-msgid "Destination location for uninstalled item"
-msgstr ""
-
-#: stock/serializers.py:476 stock/serializers.py:557
+#: stock/serializers.py:485 stock/serializers.py:543 stock/serializers.py:624
+#: stock/serializers.py:682
msgid "Add transaction note (optional)"
msgstr ""
-#: stock/serializers.py:510
+#: stock/serializers.py:494
+msgid "Stock item is unavailable"
+msgstr ""
+
+#: stock/serializers.py:501
+msgid "Selected part is not in the Bill of Materials"
+msgstr ""
+
+#: stock/serializers.py:538
+msgid "Destination location for uninstalled item"
+msgstr ""
+
+#: stock/serializers.py:577
msgid "Select part to convert stock item into"
msgstr ""
-#: stock/serializers.py:521
+#: stock/serializers.py:588
msgid "Selected part is not a valid option for conversion"
msgstr ""
-#: stock/serializers.py:552
+#: stock/serializers.py:619
msgid "Destination location for returned item"
msgstr ""
-#: stock/serializers.py:787
+#: stock/serializers.py:663
+msgid "Select stock items to change status"
+msgstr ""
+
+#: stock/serializers.py:670
+msgid "No stock items selected"
+msgstr ""
+
+#: stock/serializers.py:904
msgid "Part must be salable"
msgstr ""
-#: stock/serializers.py:791
+#: stock/serializers.py:908
msgid "Item is allocated to a sales order"
msgstr ""
-#: stock/serializers.py:795
+#: stock/serializers.py:912
msgid "Item is allocated to a build order"
msgstr ""
-#: stock/serializers.py:826
+#: stock/serializers.py:943
msgid "Customer to assign stock items"
msgstr ""
-#: stock/serializers.py:832
+#: stock/serializers.py:949
msgid "Selected company is not a customer"
msgstr ""
-#: stock/serializers.py:840
+#: stock/serializers.py:957
msgid "Stock assignment notes"
msgstr ""
-#: stock/serializers.py:850 stock/serializers.py:1081
+#: stock/serializers.py:967 stock/serializers.py:1198
msgid "A list of stock items must be provided"
msgstr ""
-#: stock/serializers.py:939
+#: stock/serializers.py:1056
msgid "Stock merging notes"
msgstr ""
-#: stock/serializers.py:944
+#: stock/serializers.py:1061
msgid "Allow mismatched suppliers"
msgstr ""
-#: stock/serializers.py:945
+#: stock/serializers.py:1062
msgid "Allow stock items with different supplier parts to be merged"
msgstr ""
-#: stock/serializers.py:950
+#: stock/serializers.py:1067
msgid "Allow mismatched status"
msgstr ""
-#: stock/serializers.py:951
+#: stock/serializers.py:1068
msgid "Allow stock items with different status codes to be merged"
msgstr ""
-#: stock/serializers.py:961
+#: stock/serializers.py:1078
msgid "At least two stock items must be provided"
msgstr ""
-#: stock/serializers.py:1043
+#: stock/serializers.py:1160
msgid "StockItem primary key value"
msgstr ""
-#: stock/serializers.py:1071
+#: stock/serializers.py:1188
msgid "Stock transaction notes"
msgstr ""
@@ -8034,48 +8054,48 @@ msgstr ""
msgid "Stock Tracking Information"
msgstr ""
-#: stock/templates/stock/item.html:69
+#: stock/templates/stock/item.html:63
msgid "Child Stock Items"
msgstr ""
-#: stock/templates/stock/item.html:77
+#: stock/templates/stock/item.html:71
msgid "This stock item does not have any child items"
msgstr ""
-#: stock/templates/stock/item.html:86
+#: stock/templates/stock/item.html:80
#: stock/templates/stock/stock_sidebar.html:12
msgid "Test Data"
msgstr ""
-#: stock/templates/stock/item.html:90 stock/templates/stock/item_base.html:66
+#: stock/templates/stock/item.html:84 stock/templates/stock/item_base.html:66
msgid "Test Report"
msgstr ""
-#: stock/templates/stock/item.html:94 stock/templates/stock/item.html:288
+#: stock/templates/stock/item.html:88 stock/templates/stock/item.html:278
msgid "Delete Test Data"
msgstr ""
-#: stock/templates/stock/item.html:98
+#: stock/templates/stock/item.html:92
msgid "Add Test Data"
msgstr ""
-#: stock/templates/stock/item.html:132
+#: stock/templates/stock/item.html:124
msgid "Stock Item Notes"
msgstr ""
-#: stock/templates/stock/item.html:147
+#: stock/templates/stock/item.html:139
msgid "Installed Stock Items"
msgstr ""
-#: stock/templates/stock/item.html:152 templates/js/translated/stock.js:2996
+#: stock/templates/stock/item.html:144 templates/js/translated/stock.js:3123
msgid "Install Stock Item"
msgstr ""
-#: stock/templates/stock/item.html:276
+#: stock/templates/stock/item.html:266
msgid "Delete all test results for this stock item"
msgstr ""
-#: stock/templates/stock/item.html:305 templates/js/translated/stock.js:1611
+#: stock/templates/stock/item.html:295 templates/js/translated/stock.js:1610
msgid "Add Test Result"
msgstr ""
@@ -8083,13 +8103,13 @@ msgstr ""
msgid "Locate stock item"
msgstr ""
-#: stock/templates/stock/item_base.html:52 templates/stock_table.html:21
+#: stock/templates/stock/item_base.html:52
msgid "Scan to Location"
msgstr ""
#: stock/templates/stock/item_base.html:60
#: stock/templates/stock/location.html:69
-#: templates/js/translated/filters.js:322
+#: templates/js/translated/filters.js:432
msgid "Printing actions"
msgstr ""
@@ -8098,15 +8118,17 @@ msgid "Stock adjustment actions"
msgstr ""
#: stock/templates/stock/item_base.html:80
-#: stock/templates/stock/location.html:88 templates/stock_table.html:35
+#: stock/templates/stock/location.html:88 templates/js/translated/stock.js:1735
msgid "Count stock"
msgstr ""
-#: stock/templates/stock/item_base.html:82 templates/stock_table.html:33
+#: stock/templates/stock/item_base.html:82
+#: templates/js/translated/stock.js:1717
msgid "Add stock"
msgstr ""
-#: stock/templates/stock/item_base.html:83 templates/stock_table.html:34
+#: stock/templates/stock/item_base.html:83
+#: templates/js/translated/stock.js:1726
msgid "Remove stock"
msgstr ""
@@ -8115,11 +8137,12 @@ msgid "Serialize stock"
msgstr ""
#: stock/templates/stock/item_base.html:89
-#: stock/templates/stock/location.html:94 templates/stock_table.html:36
+#: stock/templates/stock/location.html:94 templates/js/translated/stock.js:1744
msgid "Transfer stock"
msgstr ""
-#: stock/templates/stock/item_base.html:92 templates/stock_table.html:39
+#: stock/templates/stock/item_base.html:92
+#: templates/js/translated/stock.js:1798
msgid "Assign to customer"
msgstr ""
@@ -8159,6 +8182,11 @@ msgstr ""
msgid "Delete stock item"
msgstr ""
+#: stock/templates/stock/item_base.html:170 templates/InvenTree/search.html:139
+#: templates/js/translated/build.js:2046 templates/navbar.html:38
+msgid "Build"
+msgstr ""
+
#: stock/templates/stock/item_base.html:194
msgid "Parent Item"
msgstr ""
@@ -8221,7 +8249,7 @@ msgid "Available Quantity"
msgstr ""
#: stock/templates/stock/item_base.html:394
-#: templates/js/translated/build.js:2015
+#: templates/js/translated/build.js:2306
msgid "No location set"
msgstr ""
@@ -8239,7 +8267,7 @@ msgid "This StockItem expired on %(item.expiry_date)s"
msgstr ""
#: stock/templates/stock/item_base.html:433
-#: templates/js/translated/table_filters.js:381
+#: templates/js/translated/table_filters.js:387
msgid "Expired"
msgstr ""
@@ -8249,7 +8277,7 @@ msgid "This StockItem expires on %(item.expiry_date)s"
msgstr ""
#: stock/templates/stock/item_base.html:435
-#: templates/js/translated/table_filters.js:387
+#: templates/js/translated/table_filters.js:393
msgid "Stale"
msgstr ""
@@ -8258,7 +8286,7 @@ msgid "No stocktake performed"
msgstr ""
#: stock/templates/stock/item_base.html:503
-#: templates/js/translated/stock.js:1745
+#: templates/js/translated/stock.js:1865
msgid "stock item"
msgstr ""
@@ -8364,20 +8392,20 @@ msgstr ""
msgid "New Location"
msgstr ""
-#: stock/templates/stock/location.html:287
-#: templates/js/translated/stock.js:2318
+#: stock/templates/stock/location.html:278
+#: templates/js/translated/stock.js:2449
msgid "stock location"
msgstr ""
-#: stock/templates/stock/location.html:304
+#: stock/templates/stock/location.html:295
msgid "Scanned stock container into this location"
msgstr ""
-#: stock/templates/stock/location.html:377
+#: stock/templates/stock/location.html:368
msgid "Stock Location QR Code"
msgstr ""
-#: stock/templates/stock/location.html:388
+#: stock/templates/stock/location.html:379
msgid "Link Barcode to Stock Location"
msgstr ""
@@ -8451,71 +8479,71 @@ msgstr ""
msgid "Index"
msgstr ""
-#: templates/InvenTree/index.html:89
+#: templates/InvenTree/index.html:39
msgid "Subscribed Parts"
msgstr ""
-#: templates/InvenTree/index.html:102
+#: templates/InvenTree/index.html:53
msgid "Subscribed Categories"
msgstr ""
-#: templates/InvenTree/index.html:112
+#: templates/InvenTree/index.html:63
msgid "Latest Parts"
msgstr ""
-#: templates/InvenTree/index.html:126
+#: templates/InvenTree/index.html:78
msgid "BOM Waiting Validation"
msgstr ""
-#: templates/InvenTree/index.html:155
+#: templates/InvenTree/index.html:107
msgid "Recently Updated"
msgstr ""
-#: templates/InvenTree/index.html:180
+#: templates/InvenTree/index.html:134
msgid "Depleted Stock"
msgstr ""
-#: templates/InvenTree/index.html:193
+#: templates/InvenTree/index.html:148
msgid "Required for Build Orders"
msgstr ""
-#: templates/InvenTree/index.html:208
+#: templates/InvenTree/index.html:156
msgid "Expired Stock"
msgstr ""
-#: templates/InvenTree/index.html:222
+#: templates/InvenTree/index.html:172
msgid "Stale Stock"
msgstr ""
-#: templates/InvenTree/index.html:247
+#: templates/InvenTree/index.html:199
msgid "Build Orders In Progress"
msgstr ""
-#: templates/InvenTree/index.html:258
+#: templates/InvenTree/index.html:210
msgid "Overdue Build Orders"
msgstr ""
-#: templates/InvenTree/index.html:278
+#: templates/InvenTree/index.html:230
msgid "Outstanding Purchase Orders"
msgstr ""
-#: templates/InvenTree/index.html:289
+#: templates/InvenTree/index.html:241
msgid "Overdue Purchase Orders"
msgstr ""
-#: templates/InvenTree/index.html:310
+#: templates/InvenTree/index.html:262
msgid "Outstanding Sales Orders"
msgstr ""
-#: templates/InvenTree/index.html:321
+#: templates/InvenTree/index.html:273
msgid "Overdue Sales Orders"
msgstr ""
-#: templates/InvenTree/index.html:347
+#: templates/InvenTree/index.html:299
msgid "InvenTree News"
msgstr ""
-#: templates/InvenTree/index.html:349
+#: templates/InvenTree/index.html:301
msgid "Current News"
msgstr ""
@@ -8672,29 +8700,29 @@ msgstr ""
msgid "Changing the settings below require you to immediately restart the server. Do not change this while under active usage."
msgstr ""
-#: templates/InvenTree/settings/plugin.html:37
+#: templates/InvenTree/settings/plugin.html:35
#: templates/InvenTree/settings/sidebar.html:64
msgid "Plugins"
msgstr ""
-#: templates/InvenTree/settings/plugin.html:43
+#: templates/InvenTree/settings/plugin.html:41
#: templates/js/translated/plugin.js:151
msgid "Install Plugin"
msgstr ""
-#: templates/InvenTree/settings/plugin.html:51
+#: templates/InvenTree/settings/plugin.html:49
msgid "External plugins are not enabled for this InvenTree installation"
msgstr ""
-#: templates/InvenTree/settings/plugin.html:70
+#: templates/InvenTree/settings/plugin.html:64
msgid "Plugin Error Stack"
msgstr ""
-#: templates/InvenTree/settings/plugin.html:79
+#: templates/InvenTree/settings/plugin.html:73
msgid "Stage"
msgstr ""
-#: templates/InvenTree/settings/plugin.html:81
+#: templates/InvenTree/settings/plugin.html:75
#: templates/js/translated/notification.js:75
msgid "Message"
msgstr ""
@@ -8767,14 +8795,6 @@ msgstr ""
msgid "Commit Message"
msgstr ""
-#: templates/InvenTree/settings/plugin_settings.html:126
-msgid "Sign Status"
-msgstr ""
-
-#: templates/InvenTree/settings/plugin_settings.html:131
-msgid "Sign Key"
-msgstr ""
-
#: templates/InvenTree/settings/po.html:7
msgid "Purchase Order Settings"
msgstr ""
@@ -8870,12 +8890,12 @@ msgid "No category parameter templates found"
msgstr ""
#: templates/InvenTree/settings/settings_staff_js.html:212
-#: templates/js/translated/part.js:1618
+#: templates/js/translated/part.js:1617
msgid "Edit Template"
msgstr ""
#: templates/InvenTree/settings/settings_staff_js.html:213
-#: templates/js/translated/part.js:1619
+#: templates/js/translated/part.js:1618
msgid "Delete Template"
msgstr ""
@@ -8913,7 +8933,7 @@ msgid "Home Page"
msgstr ""
#: templates/InvenTree/settings/sidebar.html:15
-#: templates/js/translated/tables.js:575 templates/navbar.html:107
+#: templates/js/translated/tables.js:551 templates/navbar.html:107
#: templates/search.html:8 templates/search_form.html:6
#: templates/search_form.html:7
msgid "Search"
@@ -8990,6 +9010,7 @@ msgid "Unverified"
msgstr ""
#: templates/InvenTree/settings/user.html:80
+#: templates/js/translated/company.js:984
msgid "Primary"
msgstr ""
@@ -9204,44 +9225,48 @@ msgstr ""
msgid "Update Available"
msgstr ""
-#: templates/about.html:42
+#: templates/about.html:43
+msgid "Commit Branch"
+msgstr ""
+
+#: templates/about.html:49
msgid "InvenTree Documentation"
msgstr ""
-#: templates/about.html:47
+#: templates/about.html:54
msgid "API Version"
msgstr ""
-#: templates/about.html:52
+#: templates/about.html:59
msgid "Python Version"
msgstr ""
-#: templates/about.html:57
+#: templates/about.html:64
msgid "Django Version"
msgstr ""
-#: templates/about.html:62
+#: templates/about.html:69
msgid "View Code on GitHub"
msgstr ""
-#: templates/about.html:67
+#: templates/about.html:74
msgid "Credits"
msgstr ""
-#: templates/about.html:72
+#: templates/about.html:79
msgid "Mobile App"
msgstr ""
-#: templates/about.html:77
+#: templates/about.html:84
msgid "Submit Bug Report"
msgstr ""
-#: templates/about.html:84 templates/clip.html:4
+#: templates/about.html:91 templates/clip.html:4
#: templates/js/translated/helpers.js:585
msgid "copy to clipboard"
msgstr ""
-#: templates/about.html:84
+#: templates/about.html:91
msgid "copy version information"
msgstr ""
@@ -9435,14 +9460,6 @@ msgstr ""
msgid "Add Attachment"
msgstr ""
-#: templates/attachment_table.html:11
-msgid "Delete selected attachments"
-msgstr ""
-
-#: templates/attachment_table.html:12 templates/js/translated/attachment.js:129
-msgid "Delete Attachments"
-msgstr ""
-
#: templates/barcode_data.html:5
msgid "Barcode Identifier"
msgstr ""
@@ -9487,7 +9504,7 @@ msgid "The following parts are low on required stock"
msgstr ""
#: templates/email/build_order_required_stock.html:18
-#: templates/js/translated/bom.js:1633
+#: templates/js/translated/bom.js:1653 templates/js/translated/build.js:2485
msgid "Required Quantity"
msgstr ""
@@ -9501,7 +9518,7 @@ msgid "Click on the following link to view this part"
msgstr ""
#: templates/email/low_stock_notification.html:18
-#: templates/js/translated/part.js:3140
+#: templates/js/translated/part.js:3125
msgid "Minimum Quantity"
msgstr ""
@@ -9573,23 +9590,35 @@ msgstr ""
msgid "All selected attachments will be deleted"
msgstr ""
-#: templates/js/translated/attachment.js:255
+#: templates/js/translated/attachment.js:129
+msgid "Delete Attachments"
+msgstr ""
+
+#: templates/js/translated/attachment.js:205
+msgid "Delete attachments"
+msgstr ""
+
+#: templates/js/translated/attachment.js:253
+msgid "Attachment actions"
+msgstr ""
+
+#: templates/js/translated/attachment.js:275
msgid "No attachments found"
msgstr ""
-#: templates/js/translated/attachment.js:285
+#: templates/js/translated/attachment.js:305
msgid "Edit Attachment"
msgstr ""
-#: templates/js/translated/attachment.js:326
+#: templates/js/translated/attachment.js:336
msgid "Upload Date"
msgstr ""
-#: templates/js/translated/attachment.js:346
+#: templates/js/translated/attachment.js:356
msgid "Edit attachment"
msgstr ""
-#: templates/js/translated/attachment.js:354
+#: templates/js/translated/attachment.js:364
msgid "Delete attachment"
msgstr ""
@@ -9646,7 +9675,7 @@ msgstr ""
msgid "Unlink"
msgstr ""
-#: templates/js/translated/barcode.js:550 templates/js/translated/stock.js:1118
+#: templates/js/translated/barcode.js:550 templates/js/translated/stock.js:1117
msgid "Remove stock item"
msgstr ""
@@ -9704,775 +9733,869 @@ msgstr ""
msgid "Barcode does not match a valid location"
msgstr ""
-#: templates/js/translated/bom.js:77
+#: templates/js/translated/bom.js:78
msgid "Create BOM Item"
msgstr ""
-#: templates/js/translated/bom.js:131
+#: templates/js/translated/bom.js:132
msgid "Display row data"
msgstr ""
-#: templates/js/translated/bom.js:187
+#: templates/js/translated/bom.js:188
msgid "Row Data"
msgstr ""
-#: templates/js/translated/bom.js:188 templates/js/translated/bom.js:699
+#: templates/js/translated/bom.js:189 templates/js/translated/bom.js:700
#: templates/js/translated/modals.js:71 templates/js/translated/modals.js:622
#: templates/js/translated/modals.js:746 templates/js/translated/modals.js:1054
-#: templates/js/translated/purchase_order.js:791 templates/modals.html:15
+#: templates/js/translated/purchase_order.js:802 templates/modals.html:15
#: templates/modals.html:27 templates/modals.html:39 templates/modals.html:50
msgid "Close"
msgstr ""
-#: templates/js/translated/bom.js:305
+#: templates/js/translated/bom.js:306
msgid "Download BOM Template"
msgstr ""
-#: templates/js/translated/bom.js:350
+#: templates/js/translated/bom.js:351
msgid "Multi Level BOM"
msgstr ""
-#: templates/js/translated/bom.js:351
+#: templates/js/translated/bom.js:352
msgid "Include BOM data for subassemblies"
msgstr ""
-#: templates/js/translated/bom.js:356
+#: templates/js/translated/bom.js:357
msgid "Levels"
msgstr ""
-#: templates/js/translated/bom.js:357
+#: templates/js/translated/bom.js:358
msgid "Select maximum number of BOM levels to export (0 = all levels)"
msgstr ""
-#: templates/js/translated/bom.js:364
+#: templates/js/translated/bom.js:365
msgid "Include Alternative Parts"
msgstr ""
-#: templates/js/translated/bom.js:365
+#: templates/js/translated/bom.js:366
msgid "Include alternative parts in exported BOM"
msgstr ""
-#: templates/js/translated/bom.js:370
+#: templates/js/translated/bom.js:371
msgid "Include Parameter Data"
msgstr ""
-#: templates/js/translated/bom.js:371
+#: templates/js/translated/bom.js:372
msgid "Include part parameter data in exported BOM"
msgstr ""
-#: templates/js/translated/bom.js:376
+#: templates/js/translated/bom.js:377
msgid "Include Stock Data"
msgstr ""
-#: templates/js/translated/bom.js:377
+#: templates/js/translated/bom.js:378
msgid "Include part stock data in exported BOM"
msgstr ""
-#: templates/js/translated/bom.js:382
+#: templates/js/translated/bom.js:383
msgid "Include Manufacturer Data"
msgstr ""
-#: templates/js/translated/bom.js:383
+#: templates/js/translated/bom.js:384
msgid "Include part manufacturer data in exported BOM"
msgstr ""
-#: templates/js/translated/bom.js:388
+#: templates/js/translated/bom.js:389
msgid "Include Supplier Data"
msgstr ""
-#: templates/js/translated/bom.js:389
+#: templates/js/translated/bom.js:390
msgid "Include part supplier data in exported BOM"
msgstr ""
-#: templates/js/translated/bom.js:394
+#: templates/js/translated/bom.js:395
msgid "Include Pricing Data"
msgstr ""
-#: templates/js/translated/bom.js:395
+#: templates/js/translated/bom.js:396
msgid "Include part pricing data in exported BOM"
msgstr ""
-#: templates/js/translated/bom.js:590
+#: templates/js/translated/bom.js:591
msgid "Remove substitute part"
msgstr ""
-#: templates/js/translated/bom.js:644
+#: templates/js/translated/bom.js:645
msgid "Select and add a new substitute part using the input below"
msgstr ""
-#: templates/js/translated/bom.js:655
+#: templates/js/translated/bom.js:656
msgid "Are you sure you wish to remove this substitute part link?"
msgstr ""
-#: templates/js/translated/bom.js:661
+#: templates/js/translated/bom.js:662
msgid "Remove Substitute Part"
msgstr ""
-#: templates/js/translated/bom.js:700
+#: templates/js/translated/bom.js:701
msgid "Add Substitute"
msgstr ""
-#: templates/js/translated/bom.js:701
+#: templates/js/translated/bom.js:702
msgid "Edit BOM Item Substitutes"
msgstr ""
-#: templates/js/translated/bom.js:763
+#: templates/js/translated/bom.js:764
msgid "All selected BOM items will be deleted"
msgstr ""
-#: templates/js/translated/bom.js:779
+#: templates/js/translated/bom.js:780
msgid "Delete selected BOM items?"
msgstr ""
-#: templates/js/translated/bom.js:906
+#: templates/js/translated/bom.js:826
+msgid "Delete items"
+msgstr ""
+
+#: templates/js/translated/bom.js:924
msgid "Load BOM for subassembly"
msgstr ""
-#: templates/js/translated/bom.js:916
+#: templates/js/translated/bom.js:934
msgid "Substitutes Available"
msgstr ""
-#: templates/js/translated/bom.js:920 templates/js/translated/build.js:2090
+#: templates/js/translated/bom.js:938 templates/js/translated/build.js:2429
msgid "Variant stock allowed"
msgstr ""
-#: templates/js/translated/bom.js:984
+#: templates/js/translated/bom.js:1002
msgid "Substitutes"
msgstr ""
-#: templates/js/translated/bom.js:1104
+#: templates/js/translated/bom.js:1122
msgid "BOM pricing is complete"
msgstr ""
-#: templates/js/translated/bom.js:1109
+#: templates/js/translated/bom.js:1127
msgid "BOM pricing is incomplete"
msgstr ""
-#: templates/js/translated/bom.js:1116
+#: templates/js/translated/bom.js:1134
msgid "No pricing available"
msgstr ""
-#: templates/js/translated/bom.js:1147 templates/js/translated/build.js:2173
-#: templates/js/translated/sales_order.js:1887
+#: templates/js/translated/bom.js:1165 templates/js/translated/build.js:2523
+#: templates/js/translated/sales_order.js:1899
msgid "No Stock Available"
msgstr ""
-#: templates/js/translated/bom.js:1152 templates/js/translated/build.js:2177
+#: templates/js/translated/bom.js:1170 templates/js/translated/build.js:2527
msgid "Includes variant and substitute stock"
msgstr ""
-#: templates/js/translated/bom.js:1154 templates/js/translated/build.js:2179
-#: templates/js/translated/part.js:1230
+#: templates/js/translated/bom.js:1172 templates/js/translated/build.js:2529
+#: templates/js/translated/part.js:1229
msgid "Includes variant stock"
msgstr ""
-#: templates/js/translated/bom.js:1156 templates/js/translated/build.js:2181
+#: templates/js/translated/bom.js:1174 templates/js/translated/build.js:2531
msgid "Includes substitute stock"
msgstr ""
-#: templates/js/translated/bom.js:1184 templates/js/translated/build.js:2164
-#: templates/js/translated/build.js:2255
+#: templates/js/translated/bom.js:1204 templates/js/translated/build.js:2514
msgid "Consumable item"
msgstr ""
-#: templates/js/translated/bom.js:1244
+#: templates/js/translated/bom.js:1264
msgid "Validate BOM Item"
msgstr ""
-#: templates/js/translated/bom.js:1246
+#: templates/js/translated/bom.js:1266
msgid "This line has been validated"
msgstr ""
-#: templates/js/translated/bom.js:1248
+#: templates/js/translated/bom.js:1268
msgid "Edit substitute parts"
msgstr ""
-#: templates/js/translated/bom.js:1250 templates/js/translated/bom.js:1445
+#: templates/js/translated/bom.js:1270 templates/js/translated/bom.js:1465
msgid "Edit BOM Item"
msgstr ""
-#: templates/js/translated/bom.js:1252
+#: templates/js/translated/bom.js:1272
msgid "Delete BOM Item"
msgstr ""
-#: templates/js/translated/bom.js:1272
+#: templates/js/translated/bom.js:1292
msgid "View BOM"
msgstr ""
-#: templates/js/translated/bom.js:1356 templates/js/translated/build.js:1927
+#: templates/js/translated/bom.js:1376
msgid "No BOM items found"
msgstr ""
-#: templates/js/translated/bom.js:1616 templates/js/translated/build.js:2073
+#: templates/js/translated/bom.js:1636 templates/js/translated/build.js:2414
msgid "Required Part"
msgstr ""
-#: templates/js/translated/bom.js:1642
+#: templates/js/translated/bom.js:1662
msgid "Inherited from parent BOM"
msgstr ""
-#: templates/js/translated/build.js:126
+#: templates/js/translated/build.js:136
msgid "Edit Build Order"
msgstr ""
-#: templates/js/translated/build.js:169
+#: templates/js/translated/build.js:179
msgid "Create Build Order"
msgstr ""
-#: templates/js/translated/build.js:202
+#: templates/js/translated/build.js:211
msgid "Cancel Build Order"
msgstr ""
-#: templates/js/translated/build.js:211
+#: templates/js/translated/build.js:220
msgid "Are you sure you wish to cancel this build?"
msgstr ""
-#: templates/js/translated/build.js:217
+#: templates/js/translated/build.js:226
msgid "Stock items have been allocated to this build order"
msgstr ""
-#: templates/js/translated/build.js:224
+#: templates/js/translated/build.js:233
msgid "There are incomplete outputs remaining for this build order"
msgstr ""
-#: templates/js/translated/build.js:276
+#: templates/js/translated/build.js:285
msgid "Build order is ready to be completed"
msgstr ""
-#: templates/js/translated/build.js:284
+#: templates/js/translated/build.js:293
msgid "This build order cannot be completed as there are incomplete outputs"
msgstr ""
-#: templates/js/translated/build.js:289
+#: templates/js/translated/build.js:298
msgid "Build Order is incomplete"
msgstr ""
-#: templates/js/translated/build.js:307
+#: templates/js/translated/build.js:316
msgid "Complete Build Order"
msgstr ""
-#: templates/js/translated/build.js:348 templates/js/translated/stock.js:119
-#: templates/js/translated/stock.js:265
+#: templates/js/translated/build.js:357 templates/js/translated/stock.js:118
+#: templates/js/translated/stock.js:264
msgid "Next available serial number"
msgstr ""
-#: templates/js/translated/build.js:350 templates/js/translated/stock.js:121
-#: templates/js/translated/stock.js:267
+#: templates/js/translated/build.js:359 templates/js/translated/stock.js:120
+#: templates/js/translated/stock.js:266
msgid "Latest serial number"
msgstr ""
-#: templates/js/translated/build.js:359
+#: templates/js/translated/build.js:368
msgid "The Bill of Materials contains trackable parts"
msgstr ""
-#: templates/js/translated/build.js:360
+#: templates/js/translated/build.js:369
msgid "Build outputs must be generated individually"
msgstr ""
-#: templates/js/translated/build.js:368
+#: templates/js/translated/build.js:377
msgid "Trackable parts can have serial numbers specified"
msgstr ""
-#: templates/js/translated/build.js:369
+#: templates/js/translated/build.js:378
msgid "Enter serial numbers to generate multiple single build outputs"
msgstr ""
-#: templates/js/translated/build.js:376
+#: templates/js/translated/build.js:385
msgid "Create Build Output"
msgstr ""
-#: templates/js/translated/build.js:407
+#: templates/js/translated/build.js:416
msgid "Allocate stock items to this build output"
msgstr ""
-#: templates/js/translated/build.js:418
-msgid "Unallocate stock from build output"
+#: templates/js/translated/build.js:424
+msgid "Deallocate stock from build output"
msgstr ""
-#: templates/js/translated/build.js:427
+#: templates/js/translated/build.js:433
msgid "Complete build output"
msgstr ""
-#: templates/js/translated/build.js:435
+#: templates/js/translated/build.js:441
msgid "Scrap build output"
msgstr ""
-#: templates/js/translated/build.js:442
+#: templates/js/translated/build.js:448
msgid "Delete build output"
msgstr ""
-#: templates/js/translated/build.js:462
-msgid "Are you sure you wish to unallocate stock items from this build?"
+#: templates/js/translated/build.js:468
+msgid "Are you sure you wish to deallocate the selected stock items from this build?"
msgstr ""
-#: templates/js/translated/build.js:480
-msgid "Unallocate Stock Items"
+#: templates/js/translated/build.js:486
+msgid "Deallocate Stock Items"
msgstr ""
-#: templates/js/translated/build.js:566 templates/js/translated/build.js:690
-#: templates/js/translated/build.js:812
+#: templates/js/translated/build.js:572 templates/js/translated/build.js:696
+#: templates/js/translated/build.js:818
msgid "Select Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:567 templates/js/translated/build.js:691
-#: templates/js/translated/build.js:813
+#: templates/js/translated/build.js:573 templates/js/translated/build.js:697
+#: templates/js/translated/build.js:819
msgid "At least one build output must be selected"
msgstr ""
-#: templates/js/translated/build.js:581
+#: templates/js/translated/build.js:587
msgid "Selected build outputs will be marked as complete"
msgstr ""
-#: templates/js/translated/build.js:585 templates/js/translated/build.js:715
-#: templates/js/translated/build.js:835
+#: templates/js/translated/build.js:591 templates/js/translated/build.js:721
+#: templates/js/translated/build.js:841
msgid "Output"
msgstr ""
-#: templates/js/translated/build.js:609
+#: templates/js/translated/build.js:615
msgid "Complete Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:706
+#: templates/js/translated/build.js:712
msgid "Selected build outputs will be marked as scrapped"
msgstr ""
-#: templates/js/translated/build.js:708
+#: templates/js/translated/build.js:714
msgid "Scrapped output are marked as rejected"
msgstr ""
-#: templates/js/translated/build.js:709
+#: templates/js/translated/build.js:715
msgid "Allocated stock items will no longer be available"
msgstr ""
-#: templates/js/translated/build.js:710
+#: templates/js/translated/build.js:716
msgid "The completion status of the build order will not be adjusted"
msgstr ""
-#: templates/js/translated/build.js:737
+#: templates/js/translated/build.js:743
msgid "Scrap Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:827
+#: templates/js/translated/build.js:833
msgid "Selected build outputs will be deleted"
msgstr ""
-#: templates/js/translated/build.js:829
+#: templates/js/translated/build.js:835
msgid "Build output data will be permanently deleted"
msgstr ""
-#: templates/js/translated/build.js:830
+#: templates/js/translated/build.js:836
msgid "Allocated stock items will be returned to stock"
msgstr ""
-#: templates/js/translated/build.js:848
+#: templates/js/translated/build.js:854
msgid "Delete Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:934
+#: templates/js/translated/build.js:941
msgid "No build order allocations found"
msgstr ""
-#: templates/js/translated/build.js:971
+#: templates/js/translated/build.js:970 templates/js/translated/build.js:2270
+msgid "Allocated Quantity"
+msgstr ""
+
+#: templates/js/translated/build.js:984
msgid "Location not specified"
msgstr ""
-#: templates/js/translated/build.js:1047
+#: templates/js/translated/build.js:1006
+msgid "Complete outputs"
+msgstr ""
+
+#: templates/js/translated/build.js:1024
+msgid "Scrap outputs"
+msgstr ""
+
+#: templates/js/translated/build.js:1042
+msgid "Delete outputs"
+msgstr ""
+
+#: templates/js/translated/build.js:1100
msgid "build output"
msgstr ""
-#: templates/js/translated/build.js:1048
+#: templates/js/translated/build.js:1101
msgid "build outputs"
msgstr ""
-#: templates/js/translated/build.js:1383
+#: templates/js/translated/build.js:1105
+msgid "Build output actions"
+msgstr ""
+
+#: templates/js/translated/build.js:1274
msgid "No active build outputs found"
msgstr ""
-#: templates/js/translated/build.js:1457
-msgid "Allocated Stock"
+#: templates/js/translated/build.js:1329
+msgid "Allocated Lines"
msgstr ""
-#: templates/js/translated/build.js:1464
-msgid "No tracked BOM items for this build"
+#: templates/js/translated/build.js:1343
+msgid "Required Tests"
msgstr ""
-#: templates/js/translated/build.js:1486
-msgid "Completed Tests"
-msgstr ""
-
-#: templates/js/translated/build.js:1491
-msgid "No required tests for this build"
-msgstr ""
-
-#: templates/js/translated/build.js:2032 templates/js/translated/build.js:3056
-#: templates/js/translated/sales_order.js:1632
-msgid "Edit stock allocation"
-msgstr ""
-
-#: templates/js/translated/build.js:2034 templates/js/translated/build.js:3057
-#: templates/js/translated/sales_order.js:1633
-msgid "Delete stock allocation"
-msgstr ""
-
-#: templates/js/translated/build.js:2050
-msgid "Edit Allocation"
-msgstr ""
-
-#: templates/js/translated/build.js:2060
-msgid "Remove Allocation"
-msgstr ""
-
-#: templates/js/translated/build.js:2086
-msgid "Substitute parts available"
-msgstr ""
-
-#: templates/js/translated/build.js:2122
-msgid "Quantity Per"
-msgstr ""
-
-#: templates/js/translated/build.js:2167
-#: templates/js/translated/sales_order.js:1894
-msgid "Insufficient stock available"
-msgstr ""
-
-#: templates/js/translated/build.js:2169
-#: templates/js/translated/sales_order.js:1892
-msgid "Sufficient stock available"
-msgstr ""
-
-#: templates/js/translated/build.js:2263
-#: templates/js/translated/sales_order.js:1993
-msgid "Build stock"
-msgstr ""
-
-#: templates/js/translated/build.js:2267 templates/stock_table.html:38
-msgid "Order stock"
-msgstr ""
-
-#: templates/js/translated/build.js:2270
-#: templates/js/translated/sales_order.js:1987
-msgid "Allocate stock"
-msgstr ""
-
-#: templates/js/translated/build.js:2310
-#: templates/js/translated/purchase_order.js:616
-#: templates/js/translated/sales_order.js:1159
+#: templates/js/translated/build.js:1502
+#: templates/js/translated/purchase_order.js:627
+#: templates/js/translated/sales_order.js:1171
msgid "Select Parts"
msgstr ""
-#: templates/js/translated/build.js:2311
-#: templates/js/translated/sales_order.js:1160
+#: templates/js/translated/build.js:1503
+#: templates/js/translated/sales_order.js:1172
msgid "You must select at least one part to allocate"
msgstr ""
-#: templates/js/translated/build.js:2359
-#: templates/js/translated/sales_order.js:1109
+#: templates/js/translated/build.js:1566
+#: templates/js/translated/sales_order.js:1121
msgid "Specify stock allocation quantity"
msgstr ""
-#: templates/js/translated/build.js:2438
+#: templates/js/translated/build.js:1643
msgid "All Parts Allocated"
msgstr ""
-#: templates/js/translated/build.js:2439
+#: templates/js/translated/build.js:1644
msgid "All selected parts have been fully allocated"
msgstr ""
-#: templates/js/translated/build.js:2453
-#: templates/js/translated/sales_order.js:1174
+#: templates/js/translated/build.js:1658
+#: templates/js/translated/sales_order.js:1186
msgid "Select source location (leave blank to take from all locations)"
msgstr ""
-#: templates/js/translated/build.js:2481
+#: templates/js/translated/build.js:1686
msgid "Allocate Stock Items to Build Order"
msgstr ""
-#: templates/js/translated/build.js:2492
-#: templates/js/translated/sales_order.js:1271
+#: templates/js/translated/build.js:1697
+#: templates/js/translated/sales_order.js:1283
msgid "No matching stock locations"
msgstr ""
-#: templates/js/translated/build.js:2565
-#: templates/js/translated/sales_order.js:1348
+#: templates/js/translated/build.js:1770
+#: templates/js/translated/sales_order.js:1360
msgid "No matching stock items"
msgstr ""
-#: templates/js/translated/build.js:2662
+#: templates/js/translated/build.js:1867
msgid "Automatic Stock Allocation"
msgstr ""
-#: templates/js/translated/build.js:2663
+#: templates/js/translated/build.js:1868
msgid "Stock items will be automatically allocated to this build order, according to the provided guidelines"
msgstr ""
-#: templates/js/translated/build.js:2665
+#: templates/js/translated/build.js:1870
msgid "If a location is specified, stock will only be allocated from that location"
msgstr ""
-#: templates/js/translated/build.js:2666
+#: templates/js/translated/build.js:1871
msgid "If stock is considered interchangeable, it will be allocated from the first location it is found"
msgstr ""
-#: templates/js/translated/build.js:2667
+#: templates/js/translated/build.js:1872
msgid "If substitute stock is allowed, it will be used where stock of the primary part cannot be found"
msgstr ""
-#: templates/js/translated/build.js:2694
+#: templates/js/translated/build.js:1899
msgid "Allocate Stock Items"
msgstr ""
-#: templates/js/translated/build.js:2800
+#: templates/js/translated/build.js:2005
msgid "No builds matching query"
msgstr ""
-#: templates/js/translated/build.js:2835 templates/js/translated/part.js:2208
-#: templates/js/translated/part.js:2692 templates/js/translated/stock.js:1759
-#: templates/js/translated/stock.js:2458
+#: templates/js/translated/build.js:2040 templates/js/translated/build.js:2408
+#: templates/js/translated/part.js:2284 templates/js/translated/part.js:2677
+#: templates/js/translated/stock.js:1899 templates/js/translated/stock.js:2589
msgid "Select"
msgstr ""
-#: templates/js/translated/build.js:2849
+#: templates/js/translated/build.js:2054
msgid "Build order is overdue"
msgstr ""
-#: templates/js/translated/build.js:2883
+#: templates/js/translated/build.js:2100
msgid "Progress"
msgstr ""
-#: templates/js/translated/build.js:2919 templates/js/translated/stock.js:2779
+#: templates/js/translated/build.js:2136 templates/js/translated/stock.js:2910
msgid "No user information"
msgstr ""
-#: templates/js/translated/build.js:2934
+#: templates/js/translated/build.js:2151
msgid "group"
msgstr ""
-#: templates/js/translated/build.js:3033
-msgid "No parts allocated for"
+#: templates/js/translated/build.js:2315
+#: templates/js/translated/sales_order.js:1644
+msgid "Edit stock allocation"
msgstr ""
-#: templates/js/translated/company.js:87
+#: templates/js/translated/build.js:2316
+#: templates/js/translated/sales_order.js:1645
+msgid "Delete stock allocation"
+msgstr ""
+
+#: templates/js/translated/build.js:2331
+msgid "Edit Allocation"
+msgstr ""
+
+#: templates/js/translated/build.js:2343
+msgid "Remove Allocation"
+msgstr ""
+
+#: templates/js/translated/build.js:2384
+msgid "build line"
+msgstr ""
+
+#: templates/js/translated/build.js:2385
+msgid "build lines"
+msgstr ""
+
+#: templates/js/translated/build.js:2403
+msgid "No build lines found"
+msgstr ""
+
+#: templates/js/translated/build.js:2433 templates/js/translated/part.js:767
+#: templates/js/translated/part.js:1175
+msgid "Trackable part"
+msgstr ""
+
+#: templates/js/translated/build.js:2468
+msgid "Unit Quantity"
+msgstr ""
+
+#: templates/js/translated/build.js:2517
+#: templates/js/translated/sales_order.js:1906
+msgid "Insufficient stock available"
+msgstr ""
+
+#: templates/js/translated/build.js:2519
+#: templates/js/translated/sales_order.js:1904
+msgid "Sufficient stock available"
+msgstr ""
+
+#: templates/js/translated/build.js:2566
+msgid "Consumable Item"
+msgstr ""
+
+#: templates/js/translated/build.js:2571
+msgid "Tracked item"
+msgstr ""
+
+#: templates/js/translated/build.js:2578
+#: templates/js/translated/sales_order.js:2005
+msgid "Build stock"
+msgstr ""
+
+#: templates/js/translated/build.js:2583 templates/js/translated/stock.js:1779
+msgid "Order stock"
+msgstr ""
+
+#: templates/js/translated/build.js:2587
+#: templates/js/translated/sales_order.js:1999
+msgid "Allocate stock"
+msgstr ""
+
+#: templates/js/translated/build.js:2591
+msgid "Remove stock allocation"
+msgstr ""
+
+#: templates/js/translated/company.js:97
msgid "Add Manufacturer"
msgstr ""
-#: templates/js/translated/company.js:100
-#: templates/js/translated/company.js:202
+#: templates/js/translated/company.js:110
+#: templates/js/translated/company.js:212
msgid "Add Manufacturer Part"
msgstr ""
-#: templates/js/translated/company.js:121
+#: templates/js/translated/company.js:131
msgid "Edit Manufacturer Part"
msgstr ""
-#: templates/js/translated/company.js:190
-#: templates/js/translated/purchase_order.js:94
+#: templates/js/translated/company.js:200
+#: templates/js/translated/purchase_order.js:93
msgid "Add Supplier"
msgstr ""
-#: templates/js/translated/company.js:232
-#: templates/js/translated/purchase_order.js:338
+#: templates/js/translated/company.js:242
+#: templates/js/translated/purchase_order.js:349
msgid "Add Supplier Part"
msgstr ""
-#: templates/js/translated/company.js:333
+#: templates/js/translated/company.js:343
msgid "All selected supplier parts will be deleted"
msgstr ""
-#: templates/js/translated/company.js:349
+#: templates/js/translated/company.js:359
msgid "Delete Supplier Parts"
msgstr ""
-#: templates/js/translated/company.js:457
+#: templates/js/translated/company.js:464
msgid "Add new Company"
msgstr ""
-#: templates/js/translated/company.js:528
+#: templates/js/translated/company.js:535
msgid "Parts Supplied"
msgstr ""
-#: templates/js/translated/company.js:537
+#: templates/js/translated/company.js:544
msgid "Parts Manufactured"
msgstr ""
-#: templates/js/translated/company.js:552
+#: templates/js/translated/company.js:559
msgid "No company information found"
msgstr ""
-#: templates/js/translated/company.js:601
+#: templates/js/translated/company.js:608
msgid "Create New Contact"
msgstr ""
-#: templates/js/translated/company.js:617
-#: templates/js/translated/company.js:740
+#: templates/js/translated/company.js:624
+#: templates/js/translated/company.js:747
msgid "Edit Contact"
msgstr ""
-#: templates/js/translated/company.js:654
+#: templates/js/translated/company.js:661
msgid "All selected contacts will be deleted"
msgstr ""
-#: templates/js/translated/company.js:660
-#: templates/js/translated/company.js:724
+#: templates/js/translated/company.js:667
+#: templates/js/translated/company.js:731
msgid "Role"
msgstr ""
-#: templates/js/translated/company.js:668
+#: templates/js/translated/company.js:675
msgid "Delete Contacts"
msgstr ""
-#: templates/js/translated/company.js:699
+#: templates/js/translated/company.js:706
msgid "No contacts found"
msgstr ""
-#: templates/js/translated/company.js:712
+#: templates/js/translated/company.js:719
msgid "Phone Number"
msgstr ""
-#: templates/js/translated/company.js:718
+#: templates/js/translated/company.js:725
msgid "Email Address"
msgstr ""
-#: templates/js/translated/company.js:744
+#: templates/js/translated/company.js:751
msgid "Delete Contact"
msgstr ""
-#: templates/js/translated/company.js:818
+#: templates/js/translated/company.js:886
+msgid "Create New Address"
+msgstr ""
+
+#: templates/js/translated/company.js:901
+#: templates/js/translated/company.js:1066
+msgid "Edit Address"
+msgstr ""
+
+#: templates/js/translated/company.js:936
+msgid "All selected addresses will be deleted"
+msgstr ""
+
+#: templates/js/translated/company.js:950
+msgid "Delete Addresses"
+msgstr ""
+
+#: templates/js/translated/company.js:977
+msgid "No addresses found"
+msgstr ""
+
+#: templates/js/translated/company.js:1020
+msgid "Postal city"
+msgstr ""
+
+#: templates/js/translated/company.js:1026
+msgid "State/province"
+msgstr ""
+
+#: templates/js/translated/company.js:1038
+msgid "Courier notes"
+msgstr ""
+
+#: templates/js/translated/company.js:1044
+msgid "Internal notes"
+msgstr ""
+
+#: templates/js/translated/company.js:1070
+msgid "Delete Address"
+msgstr ""
+
+#: templates/js/translated/company.js:1143
msgid "All selected manufacturer parts will be deleted"
msgstr ""
-#: templates/js/translated/company.js:833
+#: templates/js/translated/company.js:1158
msgid "Delete Manufacturer Parts"
msgstr ""
-#: templates/js/translated/company.js:867
+#: templates/js/translated/company.js:1192
msgid "All selected parameters will be deleted"
msgstr ""
-#: templates/js/translated/company.js:881
+#: templates/js/translated/company.js:1206
msgid "Delete Parameters"
msgstr ""
-#: templates/js/translated/company.js:917
+#: templates/js/translated/company.js:1222
+#: templates/js/translated/company.js:1510 templates/js/translated/part.js:2213
+msgid "Order parts"
+msgstr ""
+
+#: templates/js/translated/company.js:1239
+msgid "Delete manufacturer parts"
+msgstr ""
+
+#: templates/js/translated/company.js:1271
+msgid "Manufacturer part actions"
+msgstr ""
+
+#: templates/js/translated/company.js:1290
msgid "No manufacturer parts found"
msgstr ""
-#: templates/js/translated/company.js:937
-#: templates/js/translated/company.js:1177 templates/js/translated/part.js:776
-#: templates/js/translated/part.js:1184
+#: templates/js/translated/company.js:1310
+#: templates/js/translated/company.js:1598 templates/js/translated/part.js:775
+#: templates/js/translated/part.js:1183
msgid "Template part"
msgstr ""
-#: templates/js/translated/company.js:941
-#: templates/js/translated/company.js:1181 templates/js/translated/part.js:780
-#: templates/js/translated/part.js:1188
+#: templates/js/translated/company.js:1314
+#: templates/js/translated/company.js:1602 templates/js/translated/part.js:779
+#: templates/js/translated/part.js:1187
msgid "Assembled part"
msgstr ""
-#: templates/js/translated/company.js:1061 templates/js/translated/part.js:1437
+#: templates/js/translated/company.js:1434 templates/js/translated/part.js:1436
msgid "No parameters found"
msgstr ""
-#: templates/js/translated/company.js:1096 templates/js/translated/part.js:1500
+#: templates/js/translated/company.js:1469 templates/js/translated/part.js:1499
msgid "Edit parameter"
msgstr ""
-#: templates/js/translated/company.js:1097 templates/js/translated/part.js:1501
+#: templates/js/translated/company.js:1470 templates/js/translated/part.js:1500
msgid "Delete parameter"
msgstr ""
-#: templates/js/translated/company.js:1114 templates/js/translated/part.js:1407
+#: templates/js/translated/company.js:1487 templates/js/translated/part.js:1406
msgid "Edit Parameter"
msgstr ""
-#: templates/js/translated/company.js:1123 templates/js/translated/part.js:1522
+#: templates/js/translated/company.js:1496 templates/js/translated/part.js:1521
msgid "Delete Parameter"
msgstr ""
-#: templates/js/translated/company.js:1156
+#: templates/js/translated/company.js:1527
+msgid "Delete supplier parts"
+msgstr ""
+
+#: templates/js/translated/company.js:1577
msgid "No supplier parts found"
msgstr ""
-#: templates/js/translated/company.js:1274
+#: templates/js/translated/company.js:1695
msgid "Base Units"
msgstr ""
-#: templates/js/translated/company.js:1304
+#: templates/js/translated/company.js:1725
msgid "Availability"
msgstr ""
-#: templates/js/translated/company.js:1335
+#: templates/js/translated/company.js:1756
msgid "Edit supplier part"
msgstr ""
-#: templates/js/translated/company.js:1336
+#: templates/js/translated/company.js:1757
msgid "Delete supplier part"
msgstr ""
-#: templates/js/translated/company.js:1389
+#: templates/js/translated/company.js:1810
#: templates/js/translated/pricing.js:694
msgid "Delete Price Break"
msgstr ""
-#: templates/js/translated/company.js:1399
+#: templates/js/translated/company.js:1820
#: templates/js/translated/pricing.js:712
msgid "Edit Price Break"
msgstr ""
-#: templates/js/translated/company.js:1414
+#: templates/js/translated/company.js:1835
msgid "No price break information found"
msgstr ""
-#: templates/js/translated/company.js:1443
+#: templates/js/translated/company.js:1864
msgid "Last updated"
msgstr ""
-#: templates/js/translated/company.js:1450
+#: templates/js/translated/company.js:1871
msgid "Edit price break"
msgstr ""
-#: templates/js/translated/company.js:1451
+#: templates/js/translated/company.js:1872
msgid "Delete price break"
msgstr ""
-#: templates/js/translated/filters.js:186
-#: templates/js/translated/filters.js:550
+#: templates/js/translated/filters.js:187
+#: templates/js/translated/filters.js:673
msgid "true"
msgstr ""
-#: templates/js/translated/filters.js:190
-#: templates/js/translated/filters.js:551
+#: templates/js/translated/filters.js:191
+#: templates/js/translated/filters.js:674
msgid "false"
msgstr ""
-#: templates/js/translated/filters.js:214
+#: templates/js/translated/filters.js:215
msgid "Select filter"
msgstr ""
-#: templates/js/translated/filters.js:328
+#: templates/js/translated/filters.js:438
msgid "Print Labels"
msgstr ""
-#: templates/js/translated/filters.js:332
+#: templates/js/translated/filters.js:442
msgid "Print Reports"
msgstr ""
-#: templates/js/translated/filters.js:344
+#: templates/js/translated/filters.js:454
msgid "Download table data"
msgstr ""
-#: templates/js/translated/filters.js:351
+#: templates/js/translated/filters.js:461
msgid "Reload table data"
msgstr ""
-#: templates/js/translated/filters.js:360
+#: templates/js/translated/filters.js:470
msgid "Add new filter"
msgstr ""
-#: templates/js/translated/filters.js:368
+#: templates/js/translated/filters.js:478
msgid "Clear all filters"
msgstr ""
-#: templates/js/translated/filters.js:460
+#: templates/js/translated/filters.js:583
msgid "Create filter"
msgstr ""
@@ -10497,6 +10620,12 @@ msgstr ""
msgid "View operation not allowed"
msgstr ""
+#: templates/js/translated/forms.js:506 templates/js/translated/helpers.js:105
+#: templates/js/translated/part.js:369 templates/js/translated/pricing.js:629
+#: templates/js/translated/stock.js:215 users/models.py:253
+msgid "Delete"
+msgstr ""
+
#: templates/js/translated/forms.js:752
msgid "Keep this form open"
msgstr ""
@@ -10514,23 +10643,23 @@ msgstr ""
msgid "No results found"
msgstr ""
-#: templates/js/translated/forms.js:2071 templates/js/translated/search.js:281
+#: templates/js/translated/forms.js:2071 templates/js/translated/search.js:239
msgid "Searching"
msgstr ""
-#: templates/js/translated/forms.js:2276
+#: templates/js/translated/forms.js:2285
msgid "Clear input"
msgstr ""
-#: templates/js/translated/forms.js:2733
+#: templates/js/translated/forms.js:2742
msgid "File Column"
msgstr ""
-#: templates/js/translated/forms.js:2733
+#: templates/js/translated/forms.js:2742
msgid "Field Name"
msgstr ""
-#: templates/js/translated/forms.js:2745
+#: templates/js/translated/forms.js:2754
msgid "Select Columns"
msgstr ""
@@ -10550,6 +10679,14 @@ msgstr ""
msgid "False"
msgstr ""
+#: templates/js/translated/index.js:99
+msgid "No parts required for builds"
+msgstr ""
+
+#: templates/js/translated/index.js:125
+msgid "Allocated Stock"
+msgstr ""
+
#: templates/js/translated/label.js:58
msgid "Select Printer"
msgstr ""
@@ -10651,7 +10788,7 @@ msgstr ""
#: templates/js/translated/news.js:38
#: templates/js/translated/notification.js:45
-#: templates/js/translated/part.js:1577
+#: templates/js/translated/part.js:1576
msgid "ID"
msgstr ""
@@ -10700,7 +10837,7 @@ msgid "Delete Line"
msgstr ""
#: templates/js/translated/order.js:281
-#: templates/js/translated/purchase_order.js:1958
+#: templates/js/translated/purchase_order.js:1968
msgid "No line items found"
msgstr ""
@@ -10716,363 +10853,355 @@ msgstr ""
msgid "Delete line"
msgstr ""
-#: templates/js/translated/part.js:91
+#: templates/js/translated/part.js:90
msgid "Part Attributes"
msgstr ""
-#: templates/js/translated/part.js:95
+#: templates/js/translated/part.js:94
msgid "Part Creation Options"
msgstr ""
-#: templates/js/translated/part.js:99
+#: templates/js/translated/part.js:98
msgid "Part Duplication Options"
msgstr ""
-#: templates/js/translated/part.js:122
+#: templates/js/translated/part.js:121
msgid "Add Part Category"
msgstr ""
-#: templates/js/translated/part.js:294
+#: templates/js/translated/part.js:293
msgid "Parent part category"
msgstr ""
-#: templates/js/translated/part.js:310 templates/js/translated/stock.js:147
+#: templates/js/translated/part.js:309 templates/js/translated/stock.js:146
msgid "Icon (optional) - Explore all available icons on"
msgstr ""
-#: templates/js/translated/part.js:330
+#: templates/js/translated/part.js:329
msgid "Create Part Category"
msgstr ""
-#: templates/js/translated/part.js:333
+#: templates/js/translated/part.js:332
msgid "Create new category after this one"
msgstr ""
-#: templates/js/translated/part.js:334
+#: templates/js/translated/part.js:333
msgid "Part category created"
msgstr ""
-#: templates/js/translated/part.js:348
+#: templates/js/translated/part.js:347
msgid "Edit Part Category"
msgstr ""
-#: templates/js/translated/part.js:361
+#: templates/js/translated/part.js:360
msgid "Are you sure you want to delete this part category?"
msgstr ""
-#: templates/js/translated/part.js:366
+#: templates/js/translated/part.js:365
msgid "Move to parent category"
msgstr ""
-#: templates/js/translated/part.js:375
+#: templates/js/translated/part.js:374
msgid "Delete Part Category"
msgstr ""
-#: templates/js/translated/part.js:379
+#: templates/js/translated/part.js:378
msgid "Action for parts in this category"
msgstr ""
-#: templates/js/translated/part.js:384
+#: templates/js/translated/part.js:383
msgid "Action for child categories"
msgstr ""
-#: templates/js/translated/part.js:408
+#: templates/js/translated/part.js:407
msgid "Create Part"
msgstr ""
-#: templates/js/translated/part.js:410
+#: templates/js/translated/part.js:409
msgid "Create another part after this one"
msgstr ""
-#: templates/js/translated/part.js:411
+#: templates/js/translated/part.js:410
msgid "Part created successfully"
msgstr ""
-#: templates/js/translated/part.js:439
+#: templates/js/translated/part.js:438
msgid "Edit Part"
msgstr ""
-#: templates/js/translated/part.js:441
+#: templates/js/translated/part.js:440
msgid "Part edited"
msgstr ""
-#: templates/js/translated/part.js:452
+#: templates/js/translated/part.js:451
msgid "Create Part Variant"
msgstr ""
-#: templates/js/translated/part.js:509
+#: templates/js/translated/part.js:508
msgid "Active Part"
msgstr ""
-#: templates/js/translated/part.js:510
+#: templates/js/translated/part.js:509
msgid "Part cannot be deleted as it is currently active"
msgstr ""
-#: templates/js/translated/part.js:524
+#: templates/js/translated/part.js:523
msgid "Deleting this part cannot be reversed"
msgstr ""
-#: templates/js/translated/part.js:526
+#: templates/js/translated/part.js:525
msgid "Any stock items for this part will be deleted"
msgstr ""
-#: templates/js/translated/part.js:527
+#: templates/js/translated/part.js:526
msgid "This part will be removed from any Bills of Material"
msgstr ""
-#: templates/js/translated/part.js:528
+#: templates/js/translated/part.js:527
msgid "All manufacturer and supplier information for this part will be deleted"
msgstr ""
-#: templates/js/translated/part.js:535
+#: templates/js/translated/part.js:534
msgid "Delete Part"
msgstr ""
-#: templates/js/translated/part.js:571
+#: templates/js/translated/part.js:570
msgid "You are subscribed to notifications for this item"
msgstr ""
-#: templates/js/translated/part.js:573
+#: templates/js/translated/part.js:572
msgid "You have subscribed to notifications for this item"
msgstr ""
-#: templates/js/translated/part.js:578
+#: templates/js/translated/part.js:577
msgid "Subscribe to notifications for this item"
msgstr ""
-#: templates/js/translated/part.js:580
+#: templates/js/translated/part.js:579
msgid "You have unsubscribed to notifications for this item"
msgstr ""
-#: templates/js/translated/part.js:597
+#: templates/js/translated/part.js:596
msgid "Validating the BOM will mark each line item as valid"
msgstr ""
-#: templates/js/translated/part.js:607
+#: templates/js/translated/part.js:606
msgid "Validate Bill of Materials"
msgstr ""
-#: templates/js/translated/part.js:610
+#: templates/js/translated/part.js:609
msgid "Validated Bill of Materials"
msgstr ""
-#: templates/js/translated/part.js:635
+#: templates/js/translated/part.js:634
msgid "Copy Bill of Materials"
msgstr ""
-#: templates/js/translated/part.js:663
-#: templates/js/translated/table_filters.js:660
+#: templates/js/translated/part.js:662
+#: templates/js/translated/table_filters.js:682
msgid "Low stock"
msgstr ""
-#: templates/js/translated/part.js:666
+#: templates/js/translated/part.js:665
msgid "No stock available"
msgstr ""
-#: templates/js/translated/part.js:726
+#: templates/js/translated/part.js:725
msgid "Demand"
msgstr ""
-#: templates/js/translated/part.js:749
+#: templates/js/translated/part.js:748
msgid "Unit"
msgstr ""
-#: templates/js/translated/part.js:768 templates/js/translated/part.js:1176
-msgid "Trackable part"
-msgstr ""
-
-#: templates/js/translated/part.js:772 templates/js/translated/part.js:1180
+#: templates/js/translated/part.js:771 templates/js/translated/part.js:1179
msgid "Virtual part"
msgstr ""
-#: templates/js/translated/part.js:784
+#: templates/js/translated/part.js:783
msgid "Subscribed part"
msgstr ""
-#: templates/js/translated/part.js:788
+#: templates/js/translated/part.js:787
msgid "Salable part"
msgstr ""
-#: templates/js/translated/part.js:863
+#: templates/js/translated/part.js:862
msgid "Schedule generation of a new stocktake report."
msgstr ""
-#: templates/js/translated/part.js:863
+#: templates/js/translated/part.js:862
msgid "Once complete, the stocktake report will be available for download."
msgstr ""
-#: templates/js/translated/part.js:871
+#: templates/js/translated/part.js:870
msgid "Generate Stocktake Report"
msgstr ""
-#: templates/js/translated/part.js:875
+#: templates/js/translated/part.js:874
msgid "Stocktake report scheduled"
msgstr ""
-#: templates/js/translated/part.js:1024
+#: templates/js/translated/part.js:1023
msgid "No stocktake information available"
msgstr ""
-#: templates/js/translated/part.js:1082 templates/js/translated/part.js:1118
+#: templates/js/translated/part.js:1081 templates/js/translated/part.js:1117
msgid "Edit Stocktake Entry"
msgstr ""
-#: templates/js/translated/part.js:1086 templates/js/translated/part.js:1128
+#: templates/js/translated/part.js:1085 templates/js/translated/part.js:1127
msgid "Delete Stocktake Entry"
msgstr ""
-#: templates/js/translated/part.js:1255
+#: templates/js/translated/part.js:1254
msgid "No variants found"
msgstr ""
-#: templates/js/translated/part.js:1572
+#: templates/js/translated/part.js:1571
msgid "No part parameter templates found"
msgstr ""
-#: templates/js/translated/part.js:1635
+#: templates/js/translated/part.js:1634
msgid "Edit Part Parameter Template"
msgstr ""
-#: templates/js/translated/part.js:1647
+#: templates/js/translated/part.js:1646
msgid "Any parameters which reference this template will also be deleted"
msgstr ""
-#: templates/js/translated/part.js:1655
+#: templates/js/translated/part.js:1654
msgid "Delete Part Parameter Template"
msgstr ""
-#: templates/js/translated/part.js:1689
-#: templates/js/translated/purchase_order.js:1618
+#: templates/js/translated/part.js:1688
+#: templates/js/translated/purchase_order.js:1633
msgid "No purchase orders found"
msgstr ""
-#: templates/js/translated/part.js:1832
-#: templates/js/translated/purchase_order.js:2121
-#: templates/js/translated/return_order.js:740
-#: templates/js/translated/sales_order.js:1855
+#: templates/js/translated/part.js:1831
+#: templates/js/translated/purchase_order.js:2131
+#: templates/js/translated/return_order.js:752
+#: templates/js/translated/sales_order.js:1867
msgid "This line item is overdue"
msgstr ""
-#: templates/js/translated/part.js:1877
-#: templates/js/translated/purchase_order.js:2188
+#: templates/js/translated/part.js:1876
+#: templates/js/translated/purchase_order.js:2198
msgid "Receive line item"
msgstr ""
-#: templates/js/translated/part.js:1944
+#: templates/js/translated/part.js:1943
msgid "Delete part relationship"
msgstr ""
-#: templates/js/translated/part.js:1966
+#: templates/js/translated/part.js:1965
msgid "Delete Part Relationship"
msgstr ""
-#: templates/js/translated/part.js:2054 templates/js/translated/part.js:2366
+#: templates/js/translated/part.js:2053 templates/js/translated/part.js:2442
msgid "No parts found"
msgstr ""
-#: templates/js/translated/part.js:2192
-msgid "parts"
-msgstr ""
-
-#: templates/js/translated/part.js:2276
-msgid "No category"
-msgstr ""
-
-#: templates/js/translated/part.js:2390 templates/js/translated/part.js:2611
-#: templates/js/translated/stock.js:2417
-msgid "Display as list"
-msgstr ""
-
-#: templates/js/translated/part.js:2406
-msgid "Display as grid"
-msgstr ""
-
-#: templates/js/translated/part.js:2472
+#: templates/js/translated/part.js:2174
msgid "Set the part category for the selected parts"
msgstr ""
-#: templates/js/translated/part.js:2477
+#: templates/js/translated/part.js:2179
msgid "Set Part Category"
msgstr ""
+#: templates/js/translated/part.js:2204
+msgid "Set category"
+msgstr ""
+
+#: templates/js/translated/part.js:2259
+msgid "parts"
+msgstr ""
+
+#: templates/js/translated/part.js:2352
+msgid "No category"
+msgstr ""
+
+#: templates/js/translated/part.js:2466 templates/js/translated/part.js:2596
+#: templates/js/translated/stock.js:2548
+msgid "Display as list"
+msgstr ""
+
#: templates/js/translated/part.js:2482
-msgid "Select Part Category"
+msgid "Display as grid"
msgstr ""
-#: templates/js/translated/part.js:2495
-msgid "Category is required"
-msgstr ""
-
-#: templates/js/translated/part.js:2595
+#: templates/js/translated/part.js:2580
msgid "No subcategories found"
msgstr ""
-#: templates/js/translated/part.js:2631 templates/js/translated/stock.js:2437
+#: templates/js/translated/part.js:2616 templates/js/translated/stock.js:2568
msgid "Display as tree"
msgstr ""
-#: templates/js/translated/part.js:2711
+#: templates/js/translated/part.js:2696
msgid "Load Subcategories"
msgstr ""
-#: templates/js/translated/part.js:2727
+#: templates/js/translated/part.js:2712
msgid "Subscribed category"
msgstr ""
-#: templates/js/translated/part.js:2807
+#: templates/js/translated/part.js:2792
msgid "No test templates matching query"
msgstr ""
-#: templates/js/translated/part.js:2858 templates/js/translated/stock.js:1380
+#: templates/js/translated/part.js:2843 templates/js/translated/stock.js:1379
msgid "Edit test result"
msgstr ""
-#: templates/js/translated/part.js:2859 templates/js/translated/stock.js:1381
-#: templates/js/translated/stock.js:1643
+#: templates/js/translated/part.js:2844 templates/js/translated/stock.js:1380
+#: templates/js/translated/stock.js:1642
msgid "Delete test result"
msgstr ""
-#: templates/js/translated/part.js:2863
+#: templates/js/translated/part.js:2848
msgid "This test is defined for a parent part"
msgstr ""
-#: templates/js/translated/part.js:2879
+#: templates/js/translated/part.js:2864
msgid "Edit Test Result Template"
msgstr ""
-#: templates/js/translated/part.js:2893
+#: templates/js/translated/part.js:2878
msgid "Delete Test Result Template"
msgstr ""
-#: templates/js/translated/part.js:2972 templates/js/translated/part.js:2973
+#: templates/js/translated/part.js:2957 templates/js/translated/part.js:2958
msgid "No date specified"
msgstr ""
-#: templates/js/translated/part.js:2975
+#: templates/js/translated/part.js:2960
msgid "Specified date is in the past"
msgstr ""
-#: templates/js/translated/part.js:2981
+#: templates/js/translated/part.js:2966
msgid "Speculative"
msgstr ""
-#: templates/js/translated/part.js:3031
+#: templates/js/translated/part.js:3016
msgid "No scheduling information available for this part"
msgstr ""
-#: templates/js/translated/part.js:3037
+#: templates/js/translated/part.js:3022
msgid "Error fetching scheduling information for this part"
msgstr ""
-#: templates/js/translated/part.js:3133
+#: templates/js/translated/part.js:3118
msgid "Scheduled Stock Quantities"
msgstr ""
-#: templates/js/translated/part.js:3149
+#: templates/js/translated/part.js:3134
msgid "Maximum Quantity"
msgstr ""
-#: templates/js/translated/part.js:3194
+#: templates/js/translated/part.js:3179
msgid "Minimum Stock Level"
msgstr ""
@@ -11168,234 +11297,234 @@ msgstr ""
msgid "Variant Part"
msgstr ""
-#: templates/js/translated/purchase_order.js:155
+#: templates/js/translated/purchase_order.js:166
msgid "Select purchase order to duplicate"
msgstr ""
-#: templates/js/translated/purchase_order.js:162
+#: templates/js/translated/purchase_order.js:173
msgid "Duplicate Line Items"
msgstr ""
-#: templates/js/translated/purchase_order.js:163
+#: templates/js/translated/purchase_order.js:174
msgid "Duplicate all line items from the selected order"
msgstr ""
-#: templates/js/translated/purchase_order.js:170
+#: templates/js/translated/purchase_order.js:181
msgid "Duplicate Extra Lines"
msgstr ""
-#: templates/js/translated/purchase_order.js:171
+#: templates/js/translated/purchase_order.js:182
msgid "Duplicate extra line items from the selected order"
msgstr ""
-#: templates/js/translated/purchase_order.js:192
+#: templates/js/translated/purchase_order.js:203
msgid "Edit Purchase Order"
msgstr ""
-#: templates/js/translated/purchase_order.js:209
+#: templates/js/translated/purchase_order.js:220
msgid "Duplication Options"
msgstr ""
-#: templates/js/translated/purchase_order.js:436
+#: templates/js/translated/purchase_order.js:447
msgid "Complete Purchase Order"
msgstr ""
-#: templates/js/translated/purchase_order.js:453
-#: templates/js/translated/return_order.js:195
-#: templates/js/translated/sales_order.js:485
+#: templates/js/translated/purchase_order.js:464
+#: templates/js/translated/return_order.js:207
+#: templates/js/translated/sales_order.js:497
msgid "Mark this order as complete?"
msgstr ""
-#: templates/js/translated/purchase_order.js:459
+#: templates/js/translated/purchase_order.js:470
msgid "All line items have been received"
msgstr ""
-#: templates/js/translated/purchase_order.js:464
+#: templates/js/translated/purchase_order.js:475
msgid "This order has line items which have not been marked as received."
msgstr ""
-#: templates/js/translated/purchase_order.js:465
-#: templates/js/translated/sales_order.js:499
+#: templates/js/translated/purchase_order.js:476
+#: templates/js/translated/sales_order.js:511
msgid "Completing this order means that the order and line items will no longer be editable."
msgstr ""
-#: templates/js/translated/purchase_order.js:488
+#: templates/js/translated/purchase_order.js:499
msgid "Cancel Purchase Order"
msgstr ""
-#: templates/js/translated/purchase_order.js:493
+#: templates/js/translated/purchase_order.js:504
msgid "Are you sure you wish to cancel this purchase order?"
msgstr ""
-#: templates/js/translated/purchase_order.js:499
+#: templates/js/translated/purchase_order.js:510
msgid "This purchase order can not be cancelled"
msgstr ""
-#: templates/js/translated/purchase_order.js:520
-#: templates/js/translated/return_order.js:149
+#: templates/js/translated/purchase_order.js:531
+#: templates/js/translated/return_order.js:161
msgid "After placing this order, line items will no longer be editable."
msgstr ""
-#: templates/js/translated/purchase_order.js:525
+#: templates/js/translated/purchase_order.js:536
msgid "Issue Purchase Order"
msgstr ""
-#: templates/js/translated/purchase_order.js:617
+#: templates/js/translated/purchase_order.js:628
msgid "At least one purchaseable part must be selected"
msgstr ""
-#: templates/js/translated/purchase_order.js:642
+#: templates/js/translated/purchase_order.js:653
msgid "Quantity to order"
msgstr ""
-#: templates/js/translated/purchase_order.js:651
+#: templates/js/translated/purchase_order.js:662
msgid "New supplier part"
msgstr ""
-#: templates/js/translated/purchase_order.js:669
+#: templates/js/translated/purchase_order.js:680
msgid "New purchase order"
msgstr ""
-#: templates/js/translated/purchase_order.js:701
+#: templates/js/translated/purchase_order.js:712
msgid "Add to purchase order"
msgstr ""
-#: templates/js/translated/purchase_order.js:845
+#: templates/js/translated/purchase_order.js:860
msgid "No matching supplier parts"
msgstr ""
-#: templates/js/translated/purchase_order.js:864
+#: templates/js/translated/purchase_order.js:879
msgid "No matching purchase orders"
msgstr ""
-#: templates/js/translated/purchase_order.js:1043
+#: templates/js/translated/purchase_order.js:1058
msgid "Select Line Items"
msgstr ""
-#: templates/js/translated/purchase_order.js:1044
-#: templates/js/translated/return_order.js:480
+#: templates/js/translated/purchase_order.js:1059
+#: templates/js/translated/return_order.js:492
msgid "At least one line item must be selected"
msgstr ""
-#: templates/js/translated/purchase_order.js:1074
+#: templates/js/translated/purchase_order.js:1089
msgid "Received Quantity"
msgstr ""
-#: templates/js/translated/purchase_order.js:1085
+#: templates/js/translated/purchase_order.js:1100
msgid "Quantity to receive"
msgstr ""
-#: templates/js/translated/purchase_order.js:1161
+#: templates/js/translated/purchase_order.js:1176
msgid "Stock Status"
msgstr ""
-#: templates/js/translated/purchase_order.js:1175
+#: templates/js/translated/purchase_order.js:1190
msgid "Add barcode"
msgstr ""
-#: templates/js/translated/purchase_order.js:1176
+#: templates/js/translated/purchase_order.js:1191
msgid "Remove barcode"
msgstr ""
-#: templates/js/translated/purchase_order.js:1179
+#: templates/js/translated/purchase_order.js:1194
msgid "Specify location"
msgstr ""
-#: templates/js/translated/purchase_order.js:1187
+#: templates/js/translated/purchase_order.js:1202
msgid "Add batch code"
msgstr ""
-#: templates/js/translated/purchase_order.js:1198
+#: templates/js/translated/purchase_order.js:1213
msgid "Add serial numbers"
msgstr ""
-#: templates/js/translated/purchase_order.js:1250
+#: templates/js/translated/purchase_order.js:1265
msgid "Serials"
msgstr ""
-#: templates/js/translated/purchase_order.js:1275
+#: templates/js/translated/purchase_order.js:1290
msgid "Order Code"
msgstr ""
-#: templates/js/translated/purchase_order.js:1277
+#: templates/js/translated/purchase_order.js:1292
msgid "Quantity to Receive"
msgstr ""
-#: templates/js/translated/purchase_order.js:1299
-#: templates/js/translated/return_order.js:545
+#: templates/js/translated/purchase_order.js:1314
+#: templates/js/translated/return_order.js:557
msgid "Confirm receipt of items"
msgstr ""
-#: templates/js/translated/purchase_order.js:1300
+#: templates/js/translated/purchase_order.js:1315
msgid "Receive Purchase Order Items"
msgstr ""
-#: templates/js/translated/purchase_order.js:1368
+#: templates/js/translated/purchase_order.js:1383
msgid "Scan Item Barcode"
msgstr ""
-#: templates/js/translated/purchase_order.js:1369
+#: templates/js/translated/purchase_order.js:1384
msgid "Scan barcode on incoming item (must not match any existing stock items)"
msgstr ""
-#: templates/js/translated/purchase_order.js:1383
+#: templates/js/translated/purchase_order.js:1398
msgid "Invalid barcode data"
msgstr ""
-#: templates/js/translated/purchase_order.js:1645
-#: templates/js/translated/return_order.js:274
-#: templates/js/translated/sales_order.js:762
-#: templates/js/translated/sales_order.js:986
+#: templates/js/translated/purchase_order.js:1660
+#: templates/js/translated/return_order.js:286
+#: templates/js/translated/sales_order.js:774
+#: templates/js/translated/sales_order.js:998
msgid "Order is overdue"
msgstr ""
-#: templates/js/translated/purchase_order.js:1707
-#: templates/js/translated/return_order.js:342
-#: templates/js/translated/sales_order.js:839
-#: templates/js/translated/sales_order.js:999
+#: templates/js/translated/purchase_order.js:1722
+#: templates/js/translated/return_order.js:354
+#: templates/js/translated/sales_order.js:851
+#: templates/js/translated/sales_order.js:1011
msgid "Items"
msgstr ""
-#: templates/js/translated/purchase_order.js:1806
+#: templates/js/translated/purchase_order.js:1821
msgid "All selected Line items will be deleted"
msgstr ""
-#: templates/js/translated/purchase_order.js:1824
+#: templates/js/translated/purchase_order.js:1839
msgid "Delete selected Line items?"
msgstr ""
-#: templates/js/translated/purchase_order.js:1884
-#: templates/js/translated/sales_order.js:2047
+#: templates/js/translated/purchase_order.js:1894
+#: templates/js/translated/sales_order.js:2059
msgid "Duplicate Line Item"
msgstr ""
-#: templates/js/translated/purchase_order.js:1899
-#: templates/js/translated/return_order.js:464
-#: templates/js/translated/return_order.js:653
-#: templates/js/translated/sales_order.js:2060
+#: templates/js/translated/purchase_order.js:1909
+#: templates/js/translated/return_order.js:476
+#: templates/js/translated/return_order.js:665
+#: templates/js/translated/sales_order.js:2072
msgid "Edit Line Item"
msgstr ""
-#: templates/js/translated/purchase_order.js:1910
-#: templates/js/translated/return_order.js:666
-#: templates/js/translated/sales_order.js:2071
+#: templates/js/translated/purchase_order.js:1920
+#: templates/js/translated/return_order.js:678
+#: templates/js/translated/sales_order.js:2083
msgid "Delete Line Item"
msgstr ""
-#: templates/js/translated/purchase_order.js:2192
-#: templates/js/translated/sales_order.js:2001
+#: templates/js/translated/purchase_order.js:2202
+#: templates/js/translated/sales_order.js:2013
msgid "Duplicate line item"
msgstr ""
-#: templates/js/translated/purchase_order.js:2193
-#: templates/js/translated/return_order.js:785
-#: templates/js/translated/sales_order.js:2002
+#: templates/js/translated/purchase_order.js:2203
+#: templates/js/translated/return_order.js:797
+#: templates/js/translated/sales_order.js:2014
msgid "Edit line item"
msgstr ""
-#: templates/js/translated/purchase_order.js:2194
-#: templates/js/translated/return_order.js:789
-#: templates/js/translated/sales_order.js:2008
+#: templates/js/translated/purchase_order.js:2204
+#: templates/js/translated/return_order.js:801
+#: templates/js/translated/sales_order.js:2020
msgid "Delete line item"
msgstr ""
@@ -11424,941 +11553,973 @@ msgstr ""
msgid "Add Customer"
msgstr ""
-#: templates/js/translated/return_order.js:119
+#: templates/js/translated/return_order.js:131
msgid "Create Return Order"
msgstr ""
-#: templates/js/translated/return_order.js:134
+#: templates/js/translated/return_order.js:146
msgid "Edit Return Order"
msgstr ""
-#: templates/js/translated/return_order.js:154
+#: templates/js/translated/return_order.js:166
msgid "Issue Return Order"
msgstr ""
-#: templates/js/translated/return_order.js:171
+#: templates/js/translated/return_order.js:183
msgid "Are you sure you wish to cancel this Return Order?"
msgstr ""
-#: templates/js/translated/return_order.js:178
+#: templates/js/translated/return_order.js:190
msgid "Cancel Return Order"
msgstr ""
-#: templates/js/translated/return_order.js:203
+#: templates/js/translated/return_order.js:215
msgid "Complete Return Order"
msgstr ""
-#: templates/js/translated/return_order.js:251
+#: templates/js/translated/return_order.js:263
msgid "No return orders found"
msgstr ""
-#: templates/js/translated/return_order.js:288
-#: templates/js/translated/sales_order.js:776
+#: templates/js/translated/return_order.js:300
+#: templates/js/translated/sales_order.js:788
msgid "Invalid Customer"
msgstr ""
-#: templates/js/translated/return_order.js:546
+#: templates/js/translated/return_order.js:558
msgid "Receive Return Order Items"
msgstr ""
-#: templates/js/translated/return_order.js:677
-#: templates/js/translated/sales_order.js:2207
+#: templates/js/translated/return_order.js:689
+#: templates/js/translated/sales_order.js:2219
msgid "No matching line items"
msgstr ""
-#: templates/js/translated/return_order.js:782
+#: templates/js/translated/return_order.js:794
msgid "Mark item as received"
msgstr ""
-#: templates/js/translated/sales_order.js:146
+#: templates/js/translated/sales_order.js:158
msgid "Create Sales Order"
msgstr ""
-#: templates/js/translated/sales_order.js:161
+#: templates/js/translated/sales_order.js:173
msgid "Edit Sales Order"
msgstr ""
-#: templates/js/translated/sales_order.js:276
+#: templates/js/translated/sales_order.js:288
msgid "No stock items have been allocated to this shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:281
+#: templates/js/translated/sales_order.js:293
msgid "The following stock items will be shipped"
msgstr ""
-#: templates/js/translated/sales_order.js:321
+#: templates/js/translated/sales_order.js:333
msgid "Complete Shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:345
+#: templates/js/translated/sales_order.js:357
msgid "Confirm Shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:401
+#: templates/js/translated/sales_order.js:413
msgid "No pending shipments found"
msgstr ""
-#: templates/js/translated/sales_order.js:405
+#: templates/js/translated/sales_order.js:417
msgid "No stock items have been allocated to pending shipments"
msgstr ""
-#: templates/js/translated/sales_order.js:415
+#: templates/js/translated/sales_order.js:427
msgid "Complete Shipments"
msgstr ""
-#: templates/js/translated/sales_order.js:437
+#: templates/js/translated/sales_order.js:449
msgid "Skip"
msgstr ""
-#: templates/js/translated/sales_order.js:498
+#: templates/js/translated/sales_order.js:510
msgid "This order has line items which have not been completed."
msgstr ""
-#: templates/js/translated/sales_order.js:520
+#: templates/js/translated/sales_order.js:532
msgid "Issue this Sales Order?"
msgstr ""
-#: templates/js/translated/sales_order.js:525
+#: templates/js/translated/sales_order.js:537
msgid "Issue Sales Order"
msgstr ""
-#: templates/js/translated/sales_order.js:544
+#: templates/js/translated/sales_order.js:556
msgid "Cancel Sales Order"
msgstr ""
-#: templates/js/translated/sales_order.js:549
+#: templates/js/translated/sales_order.js:561
msgid "Cancelling this order means that the order will no longer be editable."
msgstr ""
-#: templates/js/translated/sales_order.js:603
+#: templates/js/translated/sales_order.js:615
msgid "Create New Shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:713
+#: templates/js/translated/sales_order.js:725
msgid "No sales orders found"
msgstr ""
-#: templates/js/translated/sales_order.js:896
+#: templates/js/translated/sales_order.js:908
msgid "Edit shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:899
+#: templates/js/translated/sales_order.js:911
msgid "Complete shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:904
+#: templates/js/translated/sales_order.js:916
msgid "Delete shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:921
+#: templates/js/translated/sales_order.js:933
msgid "Edit Shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:936
+#: templates/js/translated/sales_order.js:948
msgid "Delete Shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:969
+#: templates/js/translated/sales_order.js:981
msgid "No matching shipments found"
msgstr ""
-#: templates/js/translated/sales_order.js:994
+#: templates/js/translated/sales_order.js:1006
msgid "Shipment Reference"
msgstr ""
-#: templates/js/translated/sales_order.js:1018
-#: templates/js/translated/sales_order.js:1515
+#: templates/js/translated/sales_order.js:1030
+#: templates/js/translated/sales_order.js:1527
msgid "Not shipped"
msgstr ""
-#: templates/js/translated/sales_order.js:1036
+#: templates/js/translated/sales_order.js:1048
msgid "Tracking"
msgstr ""
-#: templates/js/translated/sales_order.js:1040
+#: templates/js/translated/sales_order.js:1052
msgid "Invoice"
msgstr ""
-#: templates/js/translated/sales_order.js:1207
+#: templates/js/translated/sales_order.js:1219
msgid "Add Shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:1258
+#: templates/js/translated/sales_order.js:1270
msgid "Confirm stock allocation"
msgstr ""
-#: templates/js/translated/sales_order.js:1259
+#: templates/js/translated/sales_order.js:1271
msgid "Allocate Stock Items to Sales Order"
msgstr ""
-#: templates/js/translated/sales_order.js:1463
+#: templates/js/translated/sales_order.js:1475
msgid "No sales order allocations found"
msgstr ""
-#: templates/js/translated/sales_order.js:1555
+#: templates/js/translated/sales_order.js:1567
msgid "Edit Stock Allocation"
msgstr ""
-#: templates/js/translated/sales_order.js:1569
+#: templates/js/translated/sales_order.js:1581
msgid "Confirm Delete Operation"
msgstr ""
-#: templates/js/translated/sales_order.js:1570
+#: templates/js/translated/sales_order.js:1582
msgid "Delete Stock Allocation"
msgstr ""
-#: templates/js/translated/sales_order.js:1609
-#: templates/js/translated/sales_order.js:1696
-#: templates/js/translated/stock.js:1688
+#: templates/js/translated/sales_order.js:1621
+#: templates/js/translated/sales_order.js:1708
+#: templates/js/translated/stock.js:1687
msgid "Shipped to customer"
msgstr ""
-#: templates/js/translated/sales_order.js:1617
-#: templates/js/translated/sales_order.js:1705
+#: templates/js/translated/sales_order.js:1629
+#: templates/js/translated/sales_order.js:1717
msgid "Stock location not specified"
msgstr ""
-#: templates/js/translated/sales_order.js:1985
+#: templates/js/translated/sales_order.js:1997
msgid "Allocate serial numbers"
msgstr ""
-#: templates/js/translated/sales_order.js:1989
+#: templates/js/translated/sales_order.js:2001
msgid "Purchase stock"
msgstr ""
-#: templates/js/translated/sales_order.js:1998
-#: templates/js/translated/sales_order.js:2185
+#: templates/js/translated/sales_order.js:2010
+#: templates/js/translated/sales_order.js:2197
msgid "Calculate price"
msgstr ""
-#: templates/js/translated/sales_order.js:2012
+#: templates/js/translated/sales_order.js:2024
msgid "Cannot be deleted as items have been shipped"
msgstr ""
-#: templates/js/translated/sales_order.js:2015
+#: templates/js/translated/sales_order.js:2027
msgid "Cannot be deleted as items have been allocated"
msgstr ""
-#: templates/js/translated/sales_order.js:2086
+#: templates/js/translated/sales_order.js:2098
msgid "Allocate Serial Numbers"
msgstr ""
-#: templates/js/translated/sales_order.js:2193
+#: templates/js/translated/sales_order.js:2205
msgid "Update Unit Price"
msgstr ""
-#: templates/js/translated/search.js:312
+#: templates/js/translated/search.js:270
msgid "No results"
msgstr ""
-#: templates/js/translated/search.js:334 templates/search.html:25
+#: templates/js/translated/search.js:292 templates/search.html:25
msgid "Enter search query"
msgstr ""
-#: templates/js/translated/search.js:384
+#: templates/js/translated/search.js:342
msgid "result"
msgstr ""
-#: templates/js/translated/search.js:384
+#: templates/js/translated/search.js:342
msgid "results"
msgstr ""
-#: templates/js/translated/search.js:394
+#: templates/js/translated/search.js:352
msgid "Minimize results"
msgstr ""
-#: templates/js/translated/search.js:397
+#: templates/js/translated/search.js:355
msgid "Remove results"
msgstr ""
-#: templates/js/translated/stock.js:98
+#: templates/js/translated/stock.js:97
msgid "Serialize Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:129
+#: templates/js/translated/stock.js:128
msgid "Confirm Stock Serialization"
msgstr ""
-#: templates/js/translated/stock.js:138
+#: templates/js/translated/stock.js:137
msgid "Parent stock location"
msgstr ""
-#: templates/js/translated/stock.js:173
+#: templates/js/translated/stock.js:172
msgid "Edit Stock Location"
msgstr ""
-#: templates/js/translated/stock.js:188
+#: templates/js/translated/stock.js:187
msgid "New Stock Location"
msgstr ""
-#: templates/js/translated/stock.js:190
+#: templates/js/translated/stock.js:189
msgid "Create another location after this one"
msgstr ""
-#: templates/js/translated/stock.js:191
+#: templates/js/translated/stock.js:190
msgid "Stock location created"
msgstr ""
-#: templates/js/translated/stock.js:205
+#: templates/js/translated/stock.js:204
msgid "Are you sure you want to delete this stock location?"
msgstr ""
-#: templates/js/translated/stock.js:212
+#: templates/js/translated/stock.js:211
msgid "Move to parent stock location"
msgstr ""
-#: templates/js/translated/stock.js:221
+#: templates/js/translated/stock.js:220
msgid "Delete Stock Location"
msgstr ""
-#: templates/js/translated/stock.js:225
+#: templates/js/translated/stock.js:224
msgid "Action for stock items in this stock location"
msgstr ""
-#: templates/js/translated/stock.js:230
+#: templates/js/translated/stock.js:229
msgid "Action for sub-locations"
msgstr ""
-#: templates/js/translated/stock.js:284
+#: templates/js/translated/stock.js:283
msgid "This part cannot be serialized"
msgstr ""
-#: templates/js/translated/stock.js:320
+#: templates/js/translated/stock.js:319
msgid "Add given quantity as packs instead of individual items"
msgstr ""
-#: templates/js/translated/stock.js:329
+#: templates/js/translated/stock.js:328
msgid "Enter initial quantity for this stock item"
msgstr ""
-#: templates/js/translated/stock.js:335
+#: templates/js/translated/stock.js:334
msgid "Enter serial numbers for new stock (or leave blank)"
msgstr ""
-#: templates/js/translated/stock.js:406
+#: templates/js/translated/stock.js:405
msgid "Stock item duplicated"
msgstr ""
-#: templates/js/translated/stock.js:426
+#: templates/js/translated/stock.js:425
msgid "Duplicate Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:442
+#: templates/js/translated/stock.js:441
msgid "Are you sure you want to delete this stock item?"
msgstr ""
-#: templates/js/translated/stock.js:447
+#: templates/js/translated/stock.js:446
msgid "Delete Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:468
+#: templates/js/translated/stock.js:467
msgid "Edit Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:510
+#: templates/js/translated/stock.js:509
msgid "Create another item after this one"
msgstr ""
-#: templates/js/translated/stock.js:522
+#: templates/js/translated/stock.js:521
msgid "Created new stock item"
msgstr ""
-#: templates/js/translated/stock.js:535
+#: templates/js/translated/stock.js:534
msgid "Created multiple stock items"
msgstr ""
-#: templates/js/translated/stock.js:560
+#: templates/js/translated/stock.js:559
msgid "Find Serial Number"
msgstr ""
-#: templates/js/translated/stock.js:564 templates/js/translated/stock.js:565
+#: templates/js/translated/stock.js:563 templates/js/translated/stock.js:564
msgid "Enter serial number"
msgstr ""
-#: templates/js/translated/stock.js:581
+#: templates/js/translated/stock.js:580
msgid "Enter a serial number"
msgstr ""
-#: templates/js/translated/stock.js:601
+#: templates/js/translated/stock.js:600
msgid "No matching serial number"
msgstr ""
-#: templates/js/translated/stock.js:610
+#: templates/js/translated/stock.js:609
msgid "More than one matching result found"
msgstr ""
-#: templates/js/translated/stock.js:718
+#: templates/js/translated/stock.js:717
msgid "Confirm stock assignment"
msgstr ""
-#: templates/js/translated/stock.js:719
+#: templates/js/translated/stock.js:718
msgid "Assign Stock to Customer"
msgstr ""
-#: templates/js/translated/stock.js:796
+#: templates/js/translated/stock.js:795
msgid "Warning: Merge operation cannot be reversed"
msgstr ""
-#: templates/js/translated/stock.js:797
+#: templates/js/translated/stock.js:796
msgid "Some information will be lost when merging stock items"
msgstr ""
-#: templates/js/translated/stock.js:799
+#: templates/js/translated/stock.js:798
msgid "Stock transaction history will be deleted for merged items"
msgstr ""
-#: templates/js/translated/stock.js:800
+#: templates/js/translated/stock.js:799
msgid "Supplier part information will be deleted for merged items"
msgstr ""
-#: templates/js/translated/stock.js:891
+#: templates/js/translated/stock.js:890
msgid "Confirm stock item merge"
msgstr ""
-#: templates/js/translated/stock.js:892
+#: templates/js/translated/stock.js:891
msgid "Merge Stock Items"
msgstr ""
-#: templates/js/translated/stock.js:987
+#: templates/js/translated/stock.js:986
msgid "Transfer Stock"
msgstr ""
-#: templates/js/translated/stock.js:988
+#: templates/js/translated/stock.js:987
msgid "Move"
msgstr ""
-#: templates/js/translated/stock.js:994
+#: templates/js/translated/stock.js:993
msgid "Count Stock"
msgstr ""
-#: templates/js/translated/stock.js:995
+#: templates/js/translated/stock.js:994
msgid "Count"
msgstr ""
-#: templates/js/translated/stock.js:999
+#: templates/js/translated/stock.js:998
msgid "Remove Stock"
msgstr ""
-#: templates/js/translated/stock.js:1000
+#: templates/js/translated/stock.js:999
msgid "Take"
msgstr ""
-#: templates/js/translated/stock.js:1004
+#: templates/js/translated/stock.js:1003
msgid "Add Stock"
msgstr ""
-#: templates/js/translated/stock.js:1005 users/models.py:243
+#: templates/js/translated/stock.js:1004 users/models.py:249
msgid "Add"
msgstr ""
-#: templates/js/translated/stock.js:1009
+#: templates/js/translated/stock.js:1008
msgid "Delete Stock"
msgstr ""
-#: templates/js/translated/stock.js:1106
+#: templates/js/translated/stock.js:1105
msgid "Quantity cannot be adjusted for serialized stock"
msgstr ""
-#: templates/js/translated/stock.js:1106
+#: templates/js/translated/stock.js:1105
msgid "Specify stock quantity"
msgstr ""
-#: templates/js/translated/stock.js:1140
+#: templates/js/translated/stock.js:1139 templates/js/translated/stock.js:3151
msgid "Select Stock Items"
msgstr ""
-#: templates/js/translated/stock.js:1141
-msgid "You must select at least one available stock item"
+#: templates/js/translated/stock.js:1140
+msgid "Select at least one available stock item"
msgstr ""
-#: templates/js/translated/stock.js:1168
+#: templates/js/translated/stock.js:1167
msgid "Confirm stock adjustment"
msgstr ""
-#: templates/js/translated/stock.js:1304
+#: templates/js/translated/stock.js:1303
msgid "PASS"
msgstr ""
-#: templates/js/translated/stock.js:1306
+#: templates/js/translated/stock.js:1305
msgid "FAIL"
msgstr ""
-#: templates/js/translated/stock.js:1311
+#: templates/js/translated/stock.js:1310
msgid "NO RESULT"
msgstr ""
-#: templates/js/translated/stock.js:1373
+#: templates/js/translated/stock.js:1372
msgid "Pass test"
msgstr ""
-#: templates/js/translated/stock.js:1376
+#: templates/js/translated/stock.js:1375
msgid "Add test result"
msgstr ""
-#: templates/js/translated/stock.js:1400
+#: templates/js/translated/stock.js:1399
msgid "No test results found"
msgstr ""
-#: templates/js/translated/stock.js:1464
+#: templates/js/translated/stock.js:1463
msgid "Test Date"
msgstr ""
-#: templates/js/translated/stock.js:1626
+#: templates/js/translated/stock.js:1625
msgid "Edit Test Result"
msgstr ""
-#: templates/js/translated/stock.js:1648
+#: templates/js/translated/stock.js:1647
msgid "Delete Test Result"
msgstr ""
-#: templates/js/translated/stock.js:1680
+#: templates/js/translated/stock.js:1679
msgid "In production"
msgstr ""
-#: templates/js/translated/stock.js:1684
+#: templates/js/translated/stock.js:1683
msgid "Installed in Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:1692
+#: templates/js/translated/stock.js:1691
msgid "Assigned to Sales Order"
msgstr ""
-#: templates/js/translated/stock.js:1698
+#: templates/js/translated/stock.js:1697
msgid "No stock location set"
msgstr ""
-#: templates/js/translated/stock.js:1746
+#: templates/js/translated/stock.js:1753
+msgid "Change stock status"
+msgstr ""
+
+#: templates/js/translated/stock.js:1762
+msgid "Merge stock"
+msgstr ""
+
+#: templates/js/translated/stock.js:1811
+msgid "Delete stock"
+msgstr ""
+
+#: templates/js/translated/stock.js:1866
msgid "stock items"
msgstr ""
-#: templates/js/translated/stock.js:1850
+#: templates/js/translated/stock.js:1871
+msgid "Scan to location"
+msgstr ""
+
+#: templates/js/translated/stock.js:1882
+msgid "Stock Actions"
+msgstr ""
+
+#: templates/js/translated/stock.js:1929
+msgid "Load installed items"
+msgstr ""
+
+#: templates/js/translated/stock.js:2007
msgid "Stock item is in production"
msgstr ""
-#: templates/js/translated/stock.js:1855
+#: templates/js/translated/stock.js:2012
msgid "Stock item assigned to sales order"
msgstr ""
-#: templates/js/translated/stock.js:1858
+#: templates/js/translated/stock.js:2015
msgid "Stock item assigned to customer"
msgstr ""
-#: templates/js/translated/stock.js:1861
+#: templates/js/translated/stock.js:2018
msgid "Serialized stock item has been allocated"
msgstr ""
-#: templates/js/translated/stock.js:1863
+#: templates/js/translated/stock.js:2020
msgid "Stock item has been fully allocated"
msgstr ""
-#: templates/js/translated/stock.js:1865
+#: templates/js/translated/stock.js:2022
msgid "Stock item has been partially allocated"
msgstr ""
-#: templates/js/translated/stock.js:1868
+#: templates/js/translated/stock.js:2025
msgid "Stock item has been installed in another item"
msgstr ""
-#: templates/js/translated/stock.js:1870
+#: templates/js/translated/stock.js:2027
msgid "Stock item has been consumed by a build order"
msgstr ""
-#: templates/js/translated/stock.js:1874
+#: templates/js/translated/stock.js:2031
msgid "Stock item has expired"
msgstr ""
-#: templates/js/translated/stock.js:1876
+#: templates/js/translated/stock.js:2033
msgid "Stock item will expire soon"
msgstr ""
-#: templates/js/translated/stock.js:1881
+#: templates/js/translated/stock.js:2038
msgid "Stock item has been rejected"
msgstr ""
-#: templates/js/translated/stock.js:1883
+#: templates/js/translated/stock.js:2040
msgid "Stock item is lost"
msgstr ""
-#: templates/js/translated/stock.js:1885
+#: templates/js/translated/stock.js:2042
msgid "Stock item is destroyed"
msgstr ""
-#: templates/js/translated/stock.js:1889
-#: templates/js/translated/table_filters.js:296
+#: templates/js/translated/stock.js:2046
+#: templates/js/translated/table_filters.js:302
msgid "Depleted"
msgstr ""
-#: templates/js/translated/stock.js:2031
+#: templates/js/translated/stock.js:2188
msgid "Supplier part not specified"
msgstr ""
-#: templates/js/translated/stock.js:2078
+#: templates/js/translated/stock.js:2235
msgid "Stock Value"
msgstr ""
-#: templates/js/translated/stock.js:2170
+#: templates/js/translated/stock.js:2358
msgid "No stock items matching query"
msgstr ""
-#: templates/js/translated/stock.js:2319
+#: templates/js/translated/stock.js:2450
msgid "stock locations"
msgstr ""
-#: templates/js/translated/stock.js:2476
+#: templates/js/translated/stock.js:2607
msgid "Load Subloactions"
msgstr ""
-#: templates/js/translated/stock.js:2583
+#: templates/js/translated/stock.js:2714
msgid "Details"
msgstr ""
-#: templates/js/translated/stock.js:2587
+#: templates/js/translated/stock.js:2718
msgid "No changes"
msgstr ""
-#: templates/js/translated/stock.js:2599
+#: templates/js/translated/stock.js:2730
msgid "Part information unavailable"
msgstr ""
-#: templates/js/translated/stock.js:2621
+#: templates/js/translated/stock.js:2752
msgid "Location no longer exists"
msgstr ""
-#: templates/js/translated/stock.js:2638
+#: templates/js/translated/stock.js:2769
msgid "Build order no longer exists"
msgstr ""
-#: templates/js/translated/stock.js:2653
+#: templates/js/translated/stock.js:2784
msgid "Purchase order no longer exists"
msgstr ""
-#: templates/js/translated/stock.js:2670
+#: templates/js/translated/stock.js:2801
msgid "Sales Order no longer exists"
msgstr ""
-#: templates/js/translated/stock.js:2687
+#: templates/js/translated/stock.js:2818
msgid "Return Order no longer exists"
msgstr ""
-#: templates/js/translated/stock.js:2706
+#: templates/js/translated/stock.js:2837
msgid "Customer no longer exists"
msgstr ""
-#: templates/js/translated/stock.js:2724
+#: templates/js/translated/stock.js:2855
msgid "Stock item no longer exists"
msgstr ""
-#: templates/js/translated/stock.js:2742
+#: templates/js/translated/stock.js:2873
msgid "Added"
msgstr ""
-#: templates/js/translated/stock.js:2750
+#: templates/js/translated/stock.js:2881
msgid "Removed"
msgstr ""
-#: templates/js/translated/stock.js:2826
+#: templates/js/translated/stock.js:2953
msgid "No installed items"
msgstr ""
-#: templates/js/translated/stock.js:2876 templates/js/translated/stock.js:2911
+#: templates/js/translated/stock.js:3003 templates/js/translated/stock.js:3038
msgid "Uninstall Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:2929
+#: templates/js/translated/stock.js:3056
msgid "Select stock item to uninstall"
msgstr ""
-#: templates/js/translated/stock.js:2950
+#: templates/js/translated/stock.js:3077
msgid "Install another stock item into this item"
msgstr ""
-#: templates/js/translated/stock.js:2951
+#: templates/js/translated/stock.js:3078
msgid "Stock items can only be installed if they meet the following criteria"
msgstr ""
-#: templates/js/translated/stock.js:2953
+#: templates/js/translated/stock.js:3080
msgid "The Stock Item links to a Part which is the BOM for this Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:2954
+#: templates/js/translated/stock.js:3081
msgid "The Stock Item is currently available in stock"
msgstr ""
-#: templates/js/translated/stock.js:2955
+#: templates/js/translated/stock.js:3082
msgid "The Stock Item is not already installed in another item"
msgstr ""
-#: templates/js/translated/stock.js:2956
+#: templates/js/translated/stock.js:3083
msgid "The Stock Item is tracked by either a batch code or serial number"
msgstr ""
-#: templates/js/translated/stock.js:2969
+#: templates/js/translated/stock.js:3096
msgid "Select part to install"
msgstr ""
+#: templates/js/translated/stock.js:3152
+msgid "Select one or more stock items"
+msgstr ""
+
+#: templates/js/translated/stock.js:3165
+msgid "Selected stock items"
+msgstr ""
+
+#: templates/js/translated/stock.js:3169
+msgid "Change Stock Status"
+msgstr ""
+
#: templates/js/translated/table_filters.js:50
msgid "Has project code"
msgstr ""
-#: templates/js/translated/table_filters.js:59
-#: templates/js/translated/table_filters.js:518
-#: templates/js/translated/table_filters.js:530
-#: templates/js/translated/table_filters.js:571
+#: templates/js/translated/table_filters.js:65
+#: templates/js/translated/table_filters.js:540
+#: templates/js/translated/table_filters.js:552
+#: templates/js/translated/table_filters.js:593
msgid "Order status"
msgstr ""
-#: templates/js/translated/table_filters.js:64
-#: templates/js/translated/table_filters.js:535
-#: templates/js/translated/table_filters.js:561
-#: templates/js/translated/table_filters.js:576
+#: templates/js/translated/table_filters.js:70
+#: templates/js/translated/table_filters.js:557
+#: templates/js/translated/table_filters.js:583
+#: templates/js/translated/table_filters.js:598
msgid "Outstanding"
msgstr ""
-#: templates/js/translated/table_filters.js:72
-#: templates/js/translated/table_filters.js:458
-#: templates/js/translated/table_filters.js:543
-#: templates/js/translated/table_filters.js:584
+#: templates/js/translated/table_filters.js:78
+#: templates/js/translated/table_filters.js:464
+#: templates/js/translated/table_filters.js:565
+#: templates/js/translated/table_filters.js:606
msgid "Assigned to me"
msgstr ""
-#: templates/js/translated/table_filters.js:128
+#: templates/js/translated/table_filters.js:134
msgid "Trackable Part"
msgstr ""
-#: templates/js/translated/table_filters.js:132
+#: templates/js/translated/table_filters.js:138
msgid "Assembled Part"
msgstr ""
-#: templates/js/translated/table_filters.js:136
+#: templates/js/translated/table_filters.js:142
msgid "Has Available Stock"
msgstr ""
-#: templates/js/translated/table_filters.js:152
+#: templates/js/translated/table_filters.js:158
msgid "Allow Variant Stock"
msgstr ""
-#: templates/js/translated/table_filters.js:164
-#: templates/js/translated/table_filters.js:692
+#: templates/js/translated/table_filters.js:170
+#: templates/js/translated/table_filters.js:714
msgid "Has Pricing"
msgstr ""
-#: templates/js/translated/table_filters.js:204
-#: templates/js/translated/table_filters.js:291
+#: templates/js/translated/table_filters.js:210
+#: templates/js/translated/table_filters.js:297
msgid "Include sublocations"
msgstr ""
-#: templates/js/translated/table_filters.js:205
+#: templates/js/translated/table_filters.js:211
msgid "Include locations"
msgstr ""
-#: templates/js/translated/table_filters.js:224
-#: templates/js/translated/table_filters.js:225
-#: templates/js/translated/table_filters.js:624
+#: templates/js/translated/table_filters.js:230
+#: templates/js/translated/table_filters.js:231
+#: templates/js/translated/table_filters.js:646
msgid "Include subcategories"
msgstr ""
-#: templates/js/translated/table_filters.js:233
-#: templates/js/translated/table_filters.js:672
+#: templates/js/translated/table_filters.js:239
+#: templates/js/translated/table_filters.js:694
msgid "Subscribed"
msgstr ""
-#: templates/js/translated/table_filters.js:244
-#: templates/js/translated/table_filters.js:326
+#: templates/js/translated/table_filters.js:250
+#: templates/js/translated/table_filters.js:332
msgid "Is Serialized"
msgstr ""
-#: templates/js/translated/table_filters.js:247
-#: templates/js/translated/table_filters.js:333
+#: templates/js/translated/table_filters.js:253
+#: templates/js/translated/table_filters.js:339
msgid "Serial number GTE"
msgstr ""
-#: templates/js/translated/table_filters.js:248
-#: templates/js/translated/table_filters.js:334
+#: templates/js/translated/table_filters.js:254
+#: templates/js/translated/table_filters.js:340
msgid "Serial number greater than or equal to"
msgstr ""
-#: templates/js/translated/table_filters.js:251
-#: templates/js/translated/table_filters.js:337
+#: templates/js/translated/table_filters.js:257
+#: templates/js/translated/table_filters.js:343
msgid "Serial number LTE"
msgstr ""
-#: templates/js/translated/table_filters.js:252
-#: templates/js/translated/table_filters.js:338
+#: templates/js/translated/table_filters.js:258
+#: templates/js/translated/table_filters.js:344
msgid "Serial number less than or equal to"
msgstr ""
-#: templates/js/translated/table_filters.js:255
-#: templates/js/translated/table_filters.js:256
-#: templates/js/translated/table_filters.js:329
-#: templates/js/translated/table_filters.js:330
+#: templates/js/translated/table_filters.js:261
+#: templates/js/translated/table_filters.js:262
+#: templates/js/translated/table_filters.js:335
+#: templates/js/translated/table_filters.js:336
msgid "Serial number"
msgstr ""
-#: templates/js/translated/table_filters.js:260
-#: templates/js/translated/table_filters.js:351
+#: templates/js/translated/table_filters.js:266
+#: templates/js/translated/table_filters.js:357
msgid "Batch code"
msgstr ""
-#: templates/js/translated/table_filters.js:271
-#: templates/js/translated/table_filters.js:613
+#: templates/js/translated/table_filters.js:277
+#: templates/js/translated/table_filters.js:635
msgid "Active parts"
msgstr ""
-#: templates/js/translated/table_filters.js:272
+#: templates/js/translated/table_filters.js:278
msgid "Show stock for active parts"
msgstr ""
-#: templates/js/translated/table_filters.js:277
+#: templates/js/translated/table_filters.js:283
msgid "Part is an assembly"
msgstr ""
-#: templates/js/translated/table_filters.js:281
+#: templates/js/translated/table_filters.js:287
msgid "Is allocated"
msgstr ""
-#: templates/js/translated/table_filters.js:282
+#: templates/js/translated/table_filters.js:288
msgid "Item has been allocated"
msgstr ""
-#: templates/js/translated/table_filters.js:287
+#: templates/js/translated/table_filters.js:293
msgid "Stock is available for use"
msgstr ""
-#: templates/js/translated/table_filters.js:292
+#: templates/js/translated/table_filters.js:298
msgid "Include stock in sublocations"
msgstr ""
-#: templates/js/translated/table_filters.js:297
+#: templates/js/translated/table_filters.js:303
msgid "Show stock items which are depleted"
msgstr ""
-#: templates/js/translated/table_filters.js:302
+#: templates/js/translated/table_filters.js:308
msgid "Show items which are in stock"
msgstr ""
-#: templates/js/translated/table_filters.js:306
+#: templates/js/translated/table_filters.js:312
msgid "In Production"
msgstr ""
-#: templates/js/translated/table_filters.js:307
+#: templates/js/translated/table_filters.js:313
msgid "Show items which are in production"
msgstr ""
-#: templates/js/translated/table_filters.js:311
+#: templates/js/translated/table_filters.js:317
msgid "Include Variants"
msgstr ""
-#: templates/js/translated/table_filters.js:312
+#: templates/js/translated/table_filters.js:318
msgid "Include stock items for variant parts"
msgstr ""
-#: templates/js/translated/table_filters.js:316
+#: templates/js/translated/table_filters.js:322
msgid "Installed"
msgstr ""
-#: templates/js/translated/table_filters.js:317
+#: templates/js/translated/table_filters.js:323
msgid "Show stock items which are installed in another item"
msgstr ""
-#: templates/js/translated/table_filters.js:322
+#: templates/js/translated/table_filters.js:328
msgid "Show items which have been assigned to a customer"
msgstr ""
-#: templates/js/translated/table_filters.js:342
-#: templates/js/translated/table_filters.js:343
+#: templates/js/translated/table_filters.js:348
+#: templates/js/translated/table_filters.js:349
msgid "Stock status"
msgstr ""
-#: templates/js/translated/table_filters.js:346
+#: templates/js/translated/table_filters.js:352
msgid "Has batch code"
msgstr ""
-#: templates/js/translated/table_filters.js:354
-msgid "Tracked"
-msgstr ""
-
-#: templates/js/translated/table_filters.js:355
+#: templates/js/translated/table_filters.js:361
msgid "Stock item is tracked by either batch code or serial number"
msgstr ""
-#: templates/js/translated/table_filters.js:360
+#: templates/js/translated/table_filters.js:366
msgid "Has purchase price"
msgstr ""
-#: templates/js/translated/table_filters.js:361
+#: templates/js/translated/table_filters.js:367
msgid "Show stock items which have a purchase price set"
msgstr ""
-#: templates/js/translated/table_filters.js:365
+#: templates/js/translated/table_filters.js:371
msgid "Expiry Date before"
msgstr ""
-#: templates/js/translated/table_filters.js:369
+#: templates/js/translated/table_filters.js:375
msgid "Expiry Date after"
msgstr ""
-#: templates/js/translated/table_filters.js:382
+#: templates/js/translated/table_filters.js:388
msgid "Show stock items which have expired"
msgstr ""
-#: templates/js/translated/table_filters.js:388
+#: templates/js/translated/table_filters.js:394
msgid "Show stock which is close to expiring"
msgstr ""
-#: templates/js/translated/table_filters.js:402
+#: templates/js/translated/table_filters.js:408
msgid "Test Passed"
msgstr ""
-#: templates/js/translated/table_filters.js:406
+#: templates/js/translated/table_filters.js:412
msgid "Include Installed Items"
msgstr ""
-#: templates/js/translated/table_filters.js:445
+#: templates/js/translated/table_filters.js:451
msgid "Build status"
msgstr ""
-#: templates/js/translated/table_filters.js:625
+#: templates/js/translated/table_filters.js:647
msgid "Include parts in subcategories"
msgstr ""
-#: templates/js/translated/table_filters.js:630
+#: templates/js/translated/table_filters.js:652
msgid "Show active parts"
msgstr ""
-#: templates/js/translated/table_filters.js:638
+#: templates/js/translated/table_filters.js:660
msgid "Available stock"
msgstr ""
-#: templates/js/translated/table_filters.js:646
-#: templates/js/translated/table_filters.js:742
+#: templates/js/translated/table_filters.js:668
+#: templates/js/translated/table_filters.js:764
msgid "Has Units"
msgstr ""
-#: templates/js/translated/table_filters.js:647
+#: templates/js/translated/table_filters.js:669
msgid "Part has defined units"
msgstr ""
-#: templates/js/translated/table_filters.js:651
+#: templates/js/translated/table_filters.js:673
msgid "Has IPN"
msgstr ""
-#: templates/js/translated/table_filters.js:652
+#: templates/js/translated/table_filters.js:674
msgid "Part has internal part number"
msgstr ""
-#: templates/js/translated/table_filters.js:656
+#: templates/js/translated/table_filters.js:678
msgid "In stock"
msgstr ""
-#: templates/js/translated/table_filters.js:664
+#: templates/js/translated/table_filters.js:686
msgid "Purchasable"
msgstr ""
-#: templates/js/translated/table_filters.js:676
+#: templates/js/translated/table_filters.js:698
msgid "Has stocktake entries"
msgstr ""
-#: templates/js/translated/table_filters.js:738
+#: templates/js/translated/table_filters.js:760
msgid "Has Choices"
msgstr ""
@@ -12390,51 +12551,51 @@ msgstr ""
msgid "Select File Format"
msgstr ""
-#: templates/js/translated/tables.js:561
+#: templates/js/translated/tables.js:537
msgid "Loading data"
msgstr ""
-#: templates/js/translated/tables.js:564
+#: templates/js/translated/tables.js:540
msgid "rows per page"
msgstr ""
-#: templates/js/translated/tables.js:569
+#: templates/js/translated/tables.js:545
msgid "Showing all rows"
msgstr ""
-#: templates/js/translated/tables.js:571
+#: templates/js/translated/tables.js:547
msgid "Showing"
msgstr ""
-#: templates/js/translated/tables.js:571
+#: templates/js/translated/tables.js:547
msgid "to"
msgstr ""
-#: templates/js/translated/tables.js:571
+#: templates/js/translated/tables.js:547
msgid "of"
msgstr ""
-#: templates/js/translated/tables.js:571
+#: templates/js/translated/tables.js:547
msgid "rows"
msgstr ""
-#: templates/js/translated/tables.js:578
+#: templates/js/translated/tables.js:554
msgid "No matching results"
msgstr ""
-#: templates/js/translated/tables.js:581
+#: templates/js/translated/tables.js:557
msgid "Hide/Show pagination"
msgstr ""
-#: templates/js/translated/tables.js:587
+#: templates/js/translated/tables.js:563
msgid "Toggle"
msgstr ""
-#: templates/js/translated/tables.js:590
+#: templates/js/translated/tables.js:566
msgid "Columns"
msgstr ""
-#: templates/js/translated/tables.js:593
+#: templates/js/translated/tables.js:569
msgid "All"
msgstr ""
@@ -12616,50 +12777,6 @@ msgstr ""
msgid "Email settings not configured"
msgstr ""
-#: templates/stock_table.html:17
-msgid "Barcode Actions"
-msgstr ""
-
-#: templates/stock_table.html:28
-msgid "Stock Options"
-msgstr ""
-
-#: templates/stock_table.html:33
-msgid "Add to selected stock items"
-msgstr ""
-
-#: templates/stock_table.html:34
-msgid "Remove from selected stock items"
-msgstr ""
-
-#: templates/stock_table.html:35
-msgid "Stocktake selected stock items"
-msgstr ""
-
-#: templates/stock_table.html:36
-msgid "Move selected stock items"
-msgstr ""
-
-#: templates/stock_table.html:37
-msgid "Merge selected stock items"
-msgstr ""
-
-#: templates/stock_table.html:37
-msgid "Merge stock"
-msgstr ""
-
-#: templates/stock_table.html:38
-msgid "Order selected items"
-msgstr ""
-
-#: templates/stock_table.html:42
-msgid "Delete selected items"
-msgstr ""
-
-#: templates/stock_table.html:42
-msgid "Delete stock"
-msgstr ""
-
#: templates/yesnolabel.html:4
msgid "Yes"
msgstr ""
@@ -12692,35 +12809,35 @@ msgstr ""
msgid "Important dates"
msgstr ""
-#: users/models.py:230
+#: users/models.py:236
msgid "Permission set"
msgstr ""
-#: users/models.py:238
+#: users/models.py:244
msgid "Group"
msgstr ""
-#: users/models.py:241
+#: users/models.py:247
msgid "View"
msgstr ""
-#: users/models.py:241
+#: users/models.py:247
msgid "Permission to view items"
msgstr ""
-#: users/models.py:243
+#: users/models.py:249
msgid "Permission to add items"
msgstr ""
-#: users/models.py:245
+#: users/models.py:251
msgid "Change"
msgstr ""
-#: users/models.py:245
+#: users/models.py:251
msgid "Permissions to edit items"
msgstr ""
-#: users/models.py:247
+#: users/models.py:253
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 00b8c159e9..d7dc473398 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: 2023-06-09 00:32+0000\n"
-"PO-Revision-Date: 2023-06-09 10:27\n"
+"POT-Creation-Date: 2023-06-20 07:01+0000\n"
+"PO-Revision-Date: 2023-06-20 07:06\n"
"Last-Translator: \n"
"Language-Team: German\n"
"Language: de_DE\n"
@@ -49,26 +49,26 @@ msgstr "Fehlerdetails finden Sie im Admin-Panel"
msgid "Enter date"
msgstr "Datum eingeben"
-#: InvenTree/fields.py:206 InvenTree/models.py:766 build/serializers.py:427
-#: build/serializers.py:506 build/templates/build/sidebar.html:23
-#: company/models.py:597 company/templates/company/sidebar.html:35
-#: order/models.py:1089 order/templates/order/po_sidebar.html:11
+#: InvenTree/fields.py:206 InvenTree/models.py:766 build/serializers.py:435
+#: build/serializers.py:514 build/templates/build/sidebar.html:21
+#: company/models.py:746 company/templates/company/sidebar.html:37
+#: order/models.py:1102 order/templates/order/po_sidebar.html:11
#: order/templates/order/return_order_sidebar.html:9
#: order/templates/order/so_sidebar.html:17 part/admin.py:41
-#: part/models.py:3005 part/templates/part/part_sidebar.html:63
+#: part/models.py:3039 part/templates/part/part_sidebar.html:63
#: report/templates/report/inventree_build_order_base.html:172
#: stock/admin.py:121 stock/models.py:2160 stock/models.py:2268
-#: stock/serializers.py:342 stock/serializers.py:475 stock/serializers.py:556
-#: stock/serializers.py:839 stock/serializers.py:938 stock/serializers.py:1070
-#: stock/templates/stock/stock_sidebar.html:25
-#: templates/js/translated/barcode.js:143 templates/js/translated/bom.js:1224
-#: templates/js/translated/company.js:1294 templates/js/translated/order.js:347
-#: templates/js/translated/part.js:1054
-#: templates/js/translated/purchase_order.js:2168
-#: templates/js/translated/return_order.js:760
-#: templates/js/translated/sales_order.js:1055
-#: templates/js/translated/sales_order.js:1959
-#: templates/js/translated/stock.js:1460 templates/js/translated/stock.js:2164
+#: stock/serializers.py:408 stock/serializers.py:542 stock/serializers.py:623
+#: stock/serializers.py:681 stock/serializers.py:956 stock/serializers.py:1055
+#: stock/serializers.py:1187 stock/templates/stock/stock_sidebar.html:25
+#: templates/js/translated/barcode.js:143 templates/js/translated/bom.js:1244
+#: templates/js/translated/company.js:1715 templates/js/translated/order.js:347
+#: templates/js/translated/part.js:1053
+#: templates/js/translated/purchase_order.js:2178
+#: templates/js/translated/return_order.js:772
+#: templates/js/translated/sales_order.js:1067
+#: templates/js/translated/sales_order.js:1971
+#: templates/js/translated/stock.js:1459 templates/js/translated/stock.js:2321
msgid "Notes"
msgstr "Notizen"
@@ -81,47 +81,51 @@ msgstr "Wert '{name}' hält das Musterformat nicht ein"
msgid "Provided value does not match required pattern: "
msgstr "Angegebener Wert entspricht nicht dem benötigten Muster: "
-#: InvenTree/forms.py:145
+#: InvenTree/forms.py:147
msgid "Enter password"
msgstr "Passwort eingeben"
-#: InvenTree/forms.py:146
+#: InvenTree/forms.py:148
msgid "Enter new password"
msgstr "Neues Passwort eingeben"
-#: InvenTree/forms.py:155
+#: InvenTree/forms.py:157
msgid "Confirm password"
msgstr "Passwort wiederholen"
-#: InvenTree/forms.py:156
+#: InvenTree/forms.py:158
msgid "Confirm new password"
msgstr "Neues Passwort bestätigen"
-#: InvenTree/forms.py:160
+#: InvenTree/forms.py:162
msgid "Old password"
msgstr "Altes Passwort"
-#: InvenTree/forms.py:179
+#: InvenTree/forms.py:181
msgid "Email (again)"
msgstr "E-Mail (nochmal)"
-#: InvenTree/forms.py:183
+#: InvenTree/forms.py:185
msgid "Email address confirmation"
msgstr "Bestätigung der E-Mail Adresse"
-#: InvenTree/forms.py:204
+#: InvenTree/forms.py:206
msgid "You must type the same email each time."
msgstr "E-Mail Adressen müssen übereinstimmen."
-#: InvenTree/forms.py:230 InvenTree/forms.py:236
+#: InvenTree/forms.py:237 InvenTree/forms.py:243
msgid "The provided primary email address is not valid."
msgstr "Die angegebene primäre E-Mail-Adresse ist ungültig."
-#: InvenTree/forms.py:242
+#: InvenTree/forms.py:249
msgid "The provided email domain is not approved."
msgstr "Die angegebene E-Mail-Domain ist nicht freigegeben."
-#: InvenTree/helpers.py:462 order/models.py:442 order/models.py:611
+#: InvenTree/forms.py:345
+msgid "Registration is disabled."
+msgstr ""
+
+#: InvenTree/helpers.py:462 order/models.py:455 order/models.py:624
msgid "Invalid quantity provided"
msgstr "Keine gültige Menge"
@@ -239,7 +243,7 @@ msgstr "Fehlender externer Link"
#: InvenTree/models.py:486 stock/models.py:2262
#: templates/js/translated/attachment.js:119
-#: templates/js/translated/attachment.js:306
+#: templates/js/translated/attachment.js:316
msgid "Attachment"
msgstr "Anhang"
@@ -247,29 +251,30 @@ msgstr "Anhang"
msgid "Select file to attach"
msgstr "Datei zum Anhängen auswählen"
-#: InvenTree/models.py:493 common/models.py:2695 company/models.py:132
-#: company/models.py:306 company/models.py:584 order/models.py:236
-#: order/models.py:1093 order/models.py:1453 part/admin.py:39
-#: part/models.py:901 part/templates/part/part_scheduling.html:11
+#: InvenTree/models.py:493 common/models.py:2681 company/models.py:128
+#: company/models.py:381 company/models.py:455 company/models.py:733
+#: order/models.py:240 order/models.py:1106 order/models.py:1466
+#: part/admin.py:39 part/models.py:902
+#: part/templates/part/part_scheduling.html:11
#: report/templates/report/inventree_build_order_base.html:164
-#: stock/admin.py:120 templates/js/translated/company.js:977
-#: templates/js/translated/company.js:1283 templates/js/translated/order.js:351
-#: templates/js/translated/part.js:2316
-#: templates/js/translated/purchase_order.js:2008
-#: templates/js/translated/purchase_order.js:2172
-#: templates/js/translated/return_order.js:764
-#: templates/js/translated/sales_order.js:1044
-#: templates/js/translated/sales_order.js:1964
+#: stock/admin.py:120 templates/js/translated/company.js:1350
+#: templates/js/translated/company.js:1704 templates/js/translated/order.js:351
+#: templates/js/translated/part.js:2392
+#: templates/js/translated/purchase_order.js:2018
+#: templates/js/translated/purchase_order.js:2182
+#: templates/js/translated/return_order.js:776
+#: templates/js/translated/sales_order.js:1056
+#: templates/js/translated/sales_order.js:1976
msgid "Link"
msgstr "Link"
-#: InvenTree/models.py:494 build/models.py:291 part/models.py:902
+#: InvenTree/models.py:494 build/models.py:295 part/models.py:903
#: stock/models.py:735
msgid "Link to external URL"
msgstr "Link zu einer externen URL"
#: InvenTree/models.py:497 templates/js/translated/attachment.js:120
-#: templates/js/translated/attachment.js:321
+#: templates/js/translated/attachment.js:331
msgid "Comment"
msgstr "Kommentar"
@@ -277,13 +282,13 @@ msgstr "Kommentar"
msgid "File comment"
msgstr "Datei-Kommentar"
-#: InvenTree/models.py:503 InvenTree/models.py:504 common/models.py:2154
-#: common/models.py:2155 common/models.py:2368 common/models.py:2369
-#: common/models.py:2625 common/models.py:2626 part/models.py:3013
-#: part/models.py:3101 part/models.py:3180 part/models.py:3200
-#: plugin/models.py:217 plugin/models.py:218
+#: InvenTree/models.py:503 InvenTree/models.py:504 common/models.py:2140
+#: common/models.py:2141 common/models.py:2354 common/models.py:2355
+#: common/models.py:2611 common/models.py:2612 part/models.py:3047
+#: part/models.py:3135 part/models.py:3214 part/models.py:3234
+#: plugin/models.py:218 plugin/models.py:219
#: report/templates/report/inventree_test_report_base.html:105
-#: templates/js/translated/stock.js:2773
+#: templates/js/translated/stock.js:2904
msgid "User"
msgstr "Benutzer"
@@ -324,53 +329,54 @@ msgstr "Doppelte Namen können nicht unter dem selben Elternteil existieren"
msgid "Invalid choice"
msgstr "Ungültige Auswahl"
-#: InvenTree/models.py:648 InvenTree/models.py:649 common/models.py:2354
-#: company/models.py:390 label/models.py:103 part/models.py:847
-#: part/models.py:3400 plugin/models.py:41 report/models.py:160
+#: InvenTree/models.py:648 InvenTree/models.py:649 common/models.py:2340
+#: company/models.py:539 label/models.py:111 part/models.py:848
+#: part/models.py:3434 plugin/models.py:42 report/models.py:160
#: templates/InvenTree/settings/mixins/urls.html:13
#: templates/InvenTree/settings/notifications.html:17
-#: templates/InvenTree/settings/plugin.html:80
+#: templates/InvenTree/settings/plugin.html:74
#: templates/InvenTree/settings/plugin_settings.html:22
-#: templates/js/translated/company.js:658
-#: templates/js/translated/company.js:706
-#: templates/js/translated/company.js:871
-#: templates/js/translated/company.js:1071 templates/js/translated/part.js:1160
-#: templates/js/translated/part.js:1447 templates/js/translated/part.js:1583
-#: templates/js/translated/part.js:2699 templates/js/translated/stock.js:2464
+#: templates/js/translated/company.js:665
+#: templates/js/translated/company.js:713
+#: templates/js/translated/company.js:940
+#: templates/js/translated/company.js:1196
+#: templates/js/translated/company.js:1444 templates/js/translated/part.js:1159
+#: templates/js/translated/part.js:1446 templates/js/translated/part.js:1582
+#: templates/js/translated/part.js:2684 templates/js/translated/stock.js:2595
msgid "Name"
msgstr "Name"
-#: InvenTree/models.py:655 build/models.py:164
+#: InvenTree/models.py:655 build/models.py:168
#: build/templates/build/detail.html:24 common/models.py:111
-#: company/models.py:312 company/models.py:590
+#: company/models.py:461 company/models.py:739
#: company/templates/company/company_base.html:72
#: company/templates/company/manufacturer_part.html:75
-#: company/templates/company/supplier_part.html:108 label/models.py:110
-#: order/models.py:232 order/models.py:1117 part/admin.py:194 part/admin.py:276
-#: part/models.py:869 part/models.py:3416 part/templates/part/category.html:81
+#: company/templates/company/supplier_part.html:108 label/models.py:118
+#: order/models.py:232 order/models.py:1130 part/admin.py:194 part/admin.py:276
+#: part/models.py:870 part/models.py:3450 part/templates/part/category.html:81
#: part/templates/part/part_base.html:172
#: part/templates/part/part_scheduling.html:12 report/models.py:173
-#: report/models.py:587 report/models.py:631
+#: report/models.py:589 report/models.py:633
#: report/templates/report/inventree_build_order_base.html:117
#: stock/admin.py:41 stock/templates/stock/location.html:123
#: templates/InvenTree/settings/notifications.html:19
#: templates/InvenTree/settings/plugin_settings.html:27
#: templates/InvenTree/settings/settings_staff_js.html:75
-#: templates/js/translated/bom.js:632 templates/js/translated/bom.js:933
-#: templates/js/translated/build.js:2857 templates/js/translated/company.js:510
-#: templates/js/translated/company.js:988
-#: templates/js/translated/company.js:1251 templates/js/translated/order.js:298
-#: templates/js/translated/part.js:1212 templates/js/translated/part.js:1456
-#: templates/js/translated/part.js:1594 templates/js/translated/part.js:1933
-#: templates/js/translated/part.js:2247 templates/js/translated/part.js:2735
-#: templates/js/translated/part.js:2826
-#: templates/js/translated/purchase_order.js:1666
-#: templates/js/translated/purchase_order.js:1812
-#: templates/js/translated/purchase_order.js:1990
-#: templates/js/translated/return_order.js:302
-#: templates/js/translated/sales_order.js:790
-#: templates/js/translated/stock.js:1439 templates/js/translated/stock.js:1817
-#: templates/js/translated/stock.js:2496 templates/js/translated/stock.js:2568
+#: templates/js/translated/bom.js:633 templates/js/translated/bom.js:951
+#: templates/js/translated/build.js:2062 templates/js/translated/company.js:517
+#: templates/js/translated/company.js:1361
+#: templates/js/translated/company.js:1672 templates/js/translated/index.js:114
+#: templates/js/translated/order.js:298 templates/js/translated/part.js:1211
+#: templates/js/translated/part.js:1455 templates/js/translated/part.js:1593
+#: templates/js/translated/part.js:1932 templates/js/translated/part.js:2323
+#: templates/js/translated/part.js:2720 templates/js/translated/part.js:2811
+#: templates/js/translated/purchase_order.js:1681
+#: templates/js/translated/purchase_order.js:1827
+#: templates/js/translated/purchase_order.js:2000
+#: templates/js/translated/return_order.js:314
+#: templates/js/translated/sales_order.js:802
+#: templates/js/translated/stock.js:1438 templates/js/translated/stock.js:1974
+#: templates/js/translated/stock.js:2627 templates/js/translated/stock.js:2699
msgid "Description"
msgstr "Beschreibung"
@@ -383,7 +389,7 @@ msgid "parent"
msgstr "Eltern"
#: InvenTree/models.py:671 InvenTree/models.py:672
-#: templates/js/translated/part.js:2744 templates/js/translated/stock.js:2505
+#: templates/js/translated/part.js:2729 templates/js/translated/stock.js:2636
msgid "Path"
msgstr "Pfad"
@@ -419,12 +425,12 @@ msgstr "Serverfehler"
msgid "An error has been logged by the server."
msgstr "Ein Fehler wurde vom Server protokolliert."
-#: InvenTree/serializers.py:60 part/models.py:3897
+#: InvenTree/serializers.py:60 part/models.py:3941
msgid "Must be a valid number"
msgstr "Muss eine gültige Nummer sein"
-#: InvenTree/serializers.py:90 company/models.py:154
-#: company/templates/company/company_base.html:107 part/models.py:2852
+#: InvenTree/serializers.py:90 company/models.py:150
+#: company/templates/company/company_base.html:107 part/models.py:2886
#: templates/InvenTree/settings/settings_staff_js.html:44
#: templates/currency_data.html:5
msgid "Currency"
@@ -497,130 +503,130 @@ 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:714
+#: InvenTree/settings.py:741
msgid "Czech"
msgstr "Tschechisch"
-#: InvenTree/settings.py:715
+#: InvenTree/settings.py:742
msgid "Danish"
msgstr "Dänisch"
-#: InvenTree/settings.py:716
+#: InvenTree/settings.py:743
msgid "German"
msgstr "Deutsch"
-#: InvenTree/settings.py:717
+#: InvenTree/settings.py:744
msgid "Greek"
msgstr "Griechisch"
-#: InvenTree/settings.py:718
+#: InvenTree/settings.py:745
msgid "English"
msgstr "Englisch"
-#: InvenTree/settings.py:719
+#: InvenTree/settings.py:746
msgid "Spanish"
msgstr "Spanisch"
-#: InvenTree/settings.py:720
+#: InvenTree/settings.py:747
msgid "Spanish (Mexican)"
msgstr "Spanisch (Mexikanisch)"
-#: InvenTree/settings.py:721
+#: InvenTree/settings.py:748
msgid "Farsi / Persian"
msgstr "Persisch"
-#: InvenTree/settings.py:722
+#: InvenTree/settings.py:749
msgid "Finnish"
msgstr "Beenden"
-#: InvenTree/settings.py:723
+#: InvenTree/settings.py:750
msgid "French"
msgstr "Französisch"
-#: InvenTree/settings.py:724
+#: InvenTree/settings.py:751
msgid "Hebrew"
msgstr "Hebräisch"
-#: InvenTree/settings.py:725
+#: InvenTree/settings.py:752
msgid "Hungarian"
msgstr "Ungarisch"
-#: InvenTree/settings.py:726
+#: InvenTree/settings.py:753
msgid "Italian"
msgstr "Italienisch"
-#: InvenTree/settings.py:727
+#: InvenTree/settings.py:754
msgid "Japanese"
msgstr "Japanisch"
-#: InvenTree/settings.py:728
+#: InvenTree/settings.py:755
msgid "Korean"
msgstr "Koreanisch"
-#: InvenTree/settings.py:729
+#: InvenTree/settings.py:756
msgid "Dutch"
msgstr "Niederländisch"
-#: InvenTree/settings.py:730
+#: InvenTree/settings.py:757
msgid "Norwegian"
msgstr "Norwegisch"
-#: InvenTree/settings.py:731
+#: InvenTree/settings.py:758
msgid "Polish"
msgstr "Polnisch"
-#: InvenTree/settings.py:732
+#: InvenTree/settings.py:759
msgid "Portuguese"
msgstr "Portugiesisch"
-#: InvenTree/settings.py:733
+#: InvenTree/settings.py:760
msgid "Portuguese (Brazilian)"
msgstr "Portugiesisch (Brasilien)"
-#: InvenTree/settings.py:734
+#: InvenTree/settings.py:761
msgid "Russian"
msgstr "Russisch"
-#: InvenTree/settings.py:735
+#: InvenTree/settings.py:762
msgid "Slovenian"
msgstr "Slowenisch"
-#: InvenTree/settings.py:736
+#: InvenTree/settings.py:763
msgid "Swedish"
msgstr "Schwedisch"
-#: InvenTree/settings.py:737
+#: InvenTree/settings.py:764
msgid "Thai"
msgstr "Thailändisch"
-#: InvenTree/settings.py:738
+#: InvenTree/settings.py:765
msgid "Turkish"
msgstr "Türkisch"
-#: InvenTree/settings.py:739
+#: InvenTree/settings.py:766
msgid "Vietnamese"
msgstr "Vietnamesisch"
-#: InvenTree/settings.py:740
+#: InvenTree/settings.py:767
msgid "Chinese"
msgstr "Chinesisch"
-#: InvenTree/status.py:61 part/serializers.py:878
+#: InvenTree/status.py:68 part/serializers.py:940
msgid "Background worker check failed"
msgstr "Hintergrund-Prozess-Kontrolle fehlgeschlagen"
-#: InvenTree/status.py:65
+#: InvenTree/status.py:72
msgid "Email backend not configured"
msgstr "E-Mail-Backend nicht konfiguriert"
-#: InvenTree/status.py:68
+#: InvenTree/status.py:75
msgid "InvenTree system health checks failed"
msgstr "InvenTree Status-Überprüfung fehlgeschlagen"
#: InvenTree/status_codes.py:12 InvenTree/status_codes.py:40
#: InvenTree/status_codes.py:148 InvenTree/status_codes.py:167
#: InvenTree/status_codes.py:188 generic/states/tests.py:16
-#: templates/js/translated/table_filters.js:511
+#: templates/js/translated/table_filters.js:533
msgid "Pending"
msgstr "Ausstehend"
@@ -630,7 +636,7 @@ msgstr "Platziert"
#: InvenTree/status_codes.py:14 InvenTree/status_codes.py:151
#: InvenTree/status_codes.py:172 generic/states/tests.py:18
-#: order/templates/order/order_base.html:162
+#: order/templates/order/order_base.html:158
#: order/templates/order/sales_order_base.html:162
msgid "Complete"
msgstr "Fertig"
@@ -654,10 +660,10 @@ msgstr "Zurückgegeben"
msgid "In Progress"
msgstr "In Bearbeitung"
-#: InvenTree/status_codes.py:42 order/models.py:1332
-#: templates/js/translated/sales_order.js:1509
-#: templates/js/translated/sales_order.js:1630
-#: templates/js/translated/sales_order.js:1934
+#: InvenTree/status_codes.py:42 order/models.py:1345
+#: templates/js/translated/sales_order.js:1521
+#: templates/js/translated/sales_order.js:1642
+#: templates/js/translated/sales_order.js:1946
msgid "Shipped"
msgstr "Versendet"
@@ -689,7 +695,7 @@ msgstr "In Quarantäne"
msgid "Legacy stock tracking entry"
msgstr "Alter Bestand-Verfolgungs-Eintrag"
-#: InvenTree/status_codes.py:93 templates/js/translated/stock.js:511
+#: InvenTree/status_codes.py:93 templates/js/translated/stock.js:510
msgid "Stock item created"
msgstr "Lagerartikel erstellt"
@@ -745,7 +751,7 @@ msgstr "Vom übergeordneten Element geteilt"
msgid "Split child item"
msgstr "Unterobjekt geteilt"
-#: InvenTree/status_codes.py:120 templates/js/translated/stock.js:2243
+#: InvenTree/status_codes.py:120 templates/js/translated/stock.js:1769
msgid "Merged stock items"
msgstr "Lagerartikel zusammengeführt"
@@ -765,7 +771,7 @@ msgstr "Endprodukt fertiggestellt"
msgid "Build order output rejected"
msgstr "Endprodukt abgelehnt"
-#: InvenTree/status_codes.py:129 templates/js/translated/stock.js:1676
+#: InvenTree/status_codes.py:129 templates/js/translated/stock.js:1675
msgid "Consumed by build order"
msgstr "Durch Bauauftrag verbraucht"
@@ -781,7 +787,7 @@ msgstr "Gegen Bestellung empfangen"
msgid "Returned against Return Order"
msgstr "Zurückgeschickt gegen Rücksendeauftrag"
-#: InvenTree/status_codes.py:141 templates/js/translated/table_filters.js:321
+#: InvenTree/status_codes.py:141 templates/js/translated/table_filters.js:327
msgid "Sent to customer"
msgstr "Zum Kunden geschickt"
@@ -849,83 +855,111 @@ msgstr "Passwörter stimmen nicht überein"
msgid "Wrong password provided"
msgstr "Falsches Passwort angegeben"
-#: InvenTree/views.py:651 templates/navbar.html:157
+#: InvenTree/views.py:653 templates/navbar.html:157
msgid "System Information"
msgstr "Systeminformationen"
-#: InvenTree/views.py:658 templates/navbar.html:168
+#: InvenTree/views.py:660 templates/navbar.html:168
msgid "About InvenTree"
msgstr "Über InvenTree"
-#: build/api.py:222
+#: build/api.py:242
msgid "Build must be cancelled before it can be deleted"
msgstr "Bauauftrag muss abgebrochen werden, bevor er gelöscht werden kann"
-#: build/models.py:69 build/templates/build/build_base.html:9
+#: build/api.py:286 part/models.py:3833 templates/js/translated/bom.js:985
+#: templates/js/translated/bom.js:1025 templates/js/translated/build.js:2449
+#: templates/js/translated/table_filters.js:166
+#: templates/js/translated/table_filters.js:518
+msgid "Consumable"
+msgstr "Verbrauchsmaterial"
+
+#: build/api.py:287 part/models.py:3827 part/templates/part/upload_bom.html:58
+#: templates/js/translated/bom.js:989 templates/js/translated/bom.js:1016
+#: templates/js/translated/build.js:2458
+#: templates/js/translated/table_filters.js:162
+#: templates/js/translated/table_filters.js:191
+#: templates/js/translated/table_filters.js:522
+msgid "Optional"
+msgstr "Optional"
+
+#: build/api.py:288 templates/js/translated/table_filters.js:360
+#: templates/js/translated/table_filters.js:514
+msgid "Tracked"
+msgstr "Nachverfolgt"
+
+#: build/api.py:290 part/admin.py:64 templates/js/translated/build.js:1670
+#: templates/js/translated/build.js:2549
+#: templates/js/translated/sales_order.js:1918
+#: templates/js/translated/table_filters.js:506
+msgid "Allocated"
+msgstr "Zugeordnet"
+
+#: build/models.py:73 build/templates/build/build_base.html:9
#: build/templates/build/build_base.html:27
#: report/templates/report/inventree_build_order_base.html:105
#: templates/email/build_order_completed.html:16
#: templates/email/overdue_build_order.html:15
-#: templates/js/translated/build.js:945 templates/js/translated/stock.js:2629
+#: templates/js/translated/build.js:953 templates/js/translated/stock.js:2760
msgid "Build Order"
msgstr "Bauauftrag"
-#: build/models.py:70 build/templates/build/build_base.html:13
+#: build/models.py:74 build/templates/build/build_base.html:13
#: build/templates/build/index.html:8 build/templates/build/index.html:12
-#: order/templates/order/sales_order_detail.html:119
+#: order/templates/order/sales_order_detail.html:111
#: order/templates/order/so_sidebar.html:13
-#: part/templates/part/part_sidebar.html:22 templates/InvenTree/index.html:244
+#: part/templates/part/part_sidebar.html:22 templates/InvenTree/index.html:196
#: templates/InvenTree/search.html:141
#: templates/InvenTree/settings/sidebar.html:53
-#: templates/js/translated/search.js:228 users/models.py:42
+#: templates/js/translated/search.js:186 users/models.py:42
msgid "Build Orders"
msgstr "Bauaufträge"
-#: build/models.py:111
+#: build/models.py:115
msgid "Invalid choice for parent build"
msgstr "Ungültige Wahl für übergeordneten Bauauftrag"
-#: build/models.py:155
+#: build/models.py:159
msgid "Build Order Reference"
msgstr "Bauauftragsreferenz"
-#: build/models.py:156 order/models.py:359 order/models.py:765
-#: order/models.py:1087 order/models.py:1724 part/admin.py:278
-#: part/models.py:3798 part/templates/part/upload_bom.html:54
+#: build/models.py:160 order/models.py:372 order/models.py:778
+#: order/models.py:1100 order/models.py:1737 part/admin.py:278
+#: part/models.py:3842 part/templates/part/upload_bom.html:54
#: report/templates/report/inventree_bill_of_materials_report.html:139
#: report/templates/report/inventree_po_report_base.html:28
#: report/templates/report/inventree_return_order_report_base.html:26
#: report/templates/report/inventree_so_report_base.html:28
-#: templates/js/translated/bom.js:769 templates/js/translated/bom.js:943
-#: templates/js/translated/build.js:2098 templates/js/translated/order.js:291
+#: templates/js/translated/bom.js:770 templates/js/translated/bom.js:961
+#: templates/js/translated/build.js:2441 templates/js/translated/order.js:291
#: templates/js/translated/pricing.js:386
-#: templates/js/translated/purchase_order.js:2033
-#: templates/js/translated/return_order.js:713
-#: templates/js/translated/sales_order.js:1798
+#: templates/js/translated/purchase_order.js:2043
+#: templates/js/translated/return_order.js:725
+#: templates/js/translated/sales_order.js:1810
msgid "Reference"
msgstr "Referenz"
-#: build/models.py:167
+#: build/models.py:171
msgid "Brief description of the build (optional)"
msgstr "Kurze Beschreibung des Baus (optional)"
-#: build/models.py:175 build/templates/build/build_base.html:183
+#: build/models.py:179 build/templates/build/build_base.html:184
#: build/templates/build/detail.html:87
msgid "Parent Build"
msgstr "Eltern-Bauauftrag"
-#: build/models.py:176
+#: build/models.py:180
msgid "BuildOrder to which this build is allocated"
msgstr "Bauauftrag, zu dem dieser Bauauftrag zugwiesen ist"
-#: build/models.py:181 build/templates/build/build_base.html:98
-#: build/templates/build/detail.html:29 company/models.py:775
-#: order/models.py:1195 order/models.py:1311 order/models.py:1312
-#: part/models.py:391 part/models.py:2865 part/models.py:2979
-#: part/models.py:3119 part/models.py:3138 part/models.py:3157
-#: part/models.py:3178 part/models.py:3270 part/models.py:3555
-#: part/models.py:3663 part/models.py:3763 part/models.py:4077
-#: part/serializers.py:842 part/serializers.py:1245
+#: build/models.py:185 build/templates/build/build_base.html:98
+#: build/templates/build/detail.html:29 company/models.py:924
+#: order/models.py:1208 order/models.py:1324 order/models.py:1325
+#: part/models.py:392 part/models.py:2899 part/models.py:3013
+#: part/models.py:3153 part/models.py:3172 part/models.py:3191
+#: part/models.py:3212 part/models.py:3304 part/models.py:3589
+#: part/models.py:3712 part/models.py:3807 part/models.py:4121
+#: part/serializers.py:904 part/serializers.py:1307
#: part/templates/part/part_app_base.html:8
#: part/templates/part/part_pricing.html:12
#: part/templates/part/upload_bom.html:52
@@ -935,266 +969,229 @@ msgstr "Bauauftrag, zu dem dieser Bauauftrag zugwiesen ist"
#: report/templates/report/inventree_po_report_base.html:27
#: report/templates/report/inventree_return_order_report_base.html:24
#: report/templates/report/inventree_so_report_base.html:27
-#: stock/serializers.py:156 stock/serializers.py:509
+#: stock/serializers.py:205 stock/serializers.py:576
#: templates/InvenTree/search.html:82
#: templates/email/build_order_completed.html:17
#: templates/email/build_order_required_stock.html:17
#: templates/email/low_stock_notification.html:15
#: templates/email/overdue_build_order.html:16
-#: templates/js/translated/barcode.js:529 templates/js/translated/bom.js:631
-#: templates/js/translated/bom.js:768 templates/js/translated/bom.js:887
-#: templates/js/translated/build.js:1403 templates/js/translated/build.js:1965
-#: templates/js/translated/build.js:2464 templates/js/translated/build.js:2868
-#: templates/js/translated/company.js:337
-#: templates/js/translated/company.js:822
-#: templates/js/translated/company.js:929
-#: templates/js/translated/company.js:1169 templates/js/translated/part.js:1918
-#: templates/js/translated/part.js:1990 templates/js/translated/part.js:2216
-#: templates/js/translated/pricing.js:369
-#: templates/js/translated/purchase_order.js:746
-#: templates/js/translated/purchase_order.js:1274
-#: templates/js/translated/purchase_order.js:1811
-#: templates/js/translated/purchase_order.js:1975
-#: templates/js/translated/return_order.js:527
-#: templates/js/translated/return_order.js:694
-#: templates/js/translated/sales_order.js:285
-#: templates/js/translated/sales_order.js:1185
-#: templates/js/translated/sales_order.js:1584
-#: templates/js/translated/sales_order.js:1782
-#: templates/js/translated/stock.js:643 templates/js/translated/stock.js:809
-#: templates/js/translated/stock.js:1021 templates/js/translated/stock.js:1773
-#: templates/js/translated/stock.js:2594 templates/js/translated/stock.js:2831
-#: templates/js/translated/stock.js:2968
+#: templates/js/translated/barcode.js:529 templates/js/translated/bom.js:632
+#: templates/js/translated/bom.js:769 templates/js/translated/bom.js:905
+#: templates/js/translated/build.js:1289 templates/js/translated/build.js:1669
+#: templates/js/translated/build.js:2085 templates/js/translated/build.js:2261
+#: templates/js/translated/company.js:347
+#: templates/js/translated/company.js:1147
+#: templates/js/translated/company.js:1302
+#: templates/js/translated/company.js:1590 templates/js/translated/index.js:104
+#: templates/js/translated/part.js:1917 templates/js/translated/part.js:1989
+#: templates/js/translated/part.js:2292 templates/js/translated/pricing.js:369
+#: templates/js/translated/purchase_order.js:757
+#: templates/js/translated/purchase_order.js:1289
+#: templates/js/translated/purchase_order.js:1826
+#: templates/js/translated/purchase_order.js:1985
+#: templates/js/translated/return_order.js:539
+#: templates/js/translated/return_order.js:706
+#: templates/js/translated/sales_order.js:297
+#: templates/js/translated/sales_order.js:1197
+#: templates/js/translated/sales_order.js:1596
+#: templates/js/translated/sales_order.js:1794
+#: templates/js/translated/stock.js:642 templates/js/translated/stock.js:808
+#: templates/js/translated/stock.js:1020 templates/js/translated/stock.js:1913
+#: templates/js/translated/stock.js:2725 templates/js/translated/stock.js:2958
+#: templates/js/translated/stock.js:3095
msgid "Part"
msgstr "Teil"
-#: build/models.py:189
+#: build/models.py:193
msgid "Select part to build"
msgstr "Teil für den Bauauftrag wählen"
-#: build/models.py:194
+#: build/models.py:198
msgid "Sales Order Reference"
msgstr "Auftrag Referenz"
-#: build/models.py:198
+#: build/models.py:202
msgid "SalesOrder to which this build is allocated"
msgstr "Bestellung, die diesem Bauauftrag zugewiesen ist"
-#: build/models.py:203 build/serializers.py:942
-#: templates/js/translated/build.js:2452
-#: templates/js/translated/sales_order.js:1173
+#: build/models.py:207 build/serializers.py:946
+#: templates/js/translated/build.js:1657
+#: templates/js/translated/sales_order.js:1185
msgid "Source Location"
msgstr "Quell-Lagerort"
-#: build/models.py:207
+#: build/models.py:211
msgid "Select location to take stock from for this build (leave blank to take from any stock location)"
msgstr "Entnahme-Lagerort für diesen Bauauftrag wählen (oder leer lassen für einen beliebigen Lagerort)"
-#: build/models.py:212
+#: build/models.py:216
msgid "Destination Location"
msgstr "Ziel-Lagerort"
-#: build/models.py:216
+#: build/models.py:220
msgid "Select location where the completed items will be stored"
msgstr "Lagerort an dem fertige Objekte gelagert werden auswählen"
-#: build/models.py:220
+#: build/models.py:224
msgid "Build Quantity"
msgstr "Bau-Anzahl"
-#: build/models.py:223
+#: build/models.py:227
msgid "Number of stock items to build"
msgstr "Anzahl der zu bauenden Lagerartikel"
-#: build/models.py:227
+#: build/models.py:231
msgid "Completed items"
msgstr "Fertiggestellte Teile"
-#: build/models.py:229
+#: build/models.py:233
msgid "Number of stock items which have been completed"
msgstr "Anzahl der fertigen Lagerartikel"
-#: build/models.py:233
+#: build/models.py:237
msgid "Build Status"
msgstr "Bauauftrags-Status"
-#: build/models.py:237
+#: build/models.py:241
msgid "Build status code"
msgstr "Bau-Statuscode"
-#: build/models.py:246 build/serializers.py:269 order/serializers.py:506
-#: stock/models.py:739 templates/js/translated/purchase_order.js:1099
+#: build/models.py:250 build/serializers.py:277 order/serializers.py:512
+#: stock/models.py:739 templates/js/translated/purchase_order.js:1114
msgid "Batch Code"
msgstr "Losnummer"
-#: build/models.py:250 build/serializers.py:270
+#: build/models.py:254 build/serializers.py:278
msgid "Batch code for this build output"
msgstr "Losnummer für dieses Endprodukt"
-#: build/models.py:253 order/models.py:244 part/models.py:1038
+#: build/models.py:257 order/models.py:248 part/models.py:1039
#: part/templates/part/part_base.html:312
-#: templates/js/translated/return_order.js:327
-#: templates/js/translated/sales_order.js:815
+#: templates/js/translated/return_order.js:339
+#: templates/js/translated/sales_order.js:827
msgid "Creation Date"
msgstr "Erstelldatum"
-#: build/models.py:257
+#: build/models.py:261
msgid "Target completion date"
msgstr "geplantes Fertigstellungsdatum"
-#: build/models.py:258
+#: build/models.py:262
msgid "Target date for build completion. Build will be overdue after this date."
msgstr "Zieldatum für Bauauftrag-Fertigstellung."
-#: build/models.py:261 order/models.py:409 order/models.py:1767
-#: templates/js/translated/build.js:2953
+#: build/models.py:265 order/models.py:422 order/models.py:1780
+#: templates/js/translated/build.js:2170
msgid "Completion Date"
msgstr "Fertigstellungsdatum"
-#: build/models.py:267
+#: build/models.py:271
msgid "completed by"
msgstr "Fertiggestellt von"
-#: build/models.py:275 templates/js/translated/build.js:2913
+#: build/models.py:279 templates/js/translated/build.js:2130
msgid "Issued by"
msgstr "Aufgegeben von"
-#: build/models.py:276
+#: build/models.py:280
msgid "User who issued this build order"
msgstr "Nutzer der diesen Bauauftrag erstellt hat"
-#: build/models.py:284 build/templates/build/build_base.html:204
-#: build/templates/build/detail.html:122 order/models.py:258
-#: order/templates/order/order_base.html:214
-#: order/templates/order/return_order_base.html:182
-#: order/templates/order/sales_order_base.html:222 part/models.py:1042
+#: build/models.py:288 build/templates/build/build_base.html:205
+#: build/templates/build/detail.html:122 order/models.py:262
+#: order/templates/order/order_base.html:217
+#: order/templates/order/return_order_base.html:189
+#: order/templates/order/sales_order_base.html:229 part/models.py:1043
#: part/templates/part/part_base.html:392
#: report/templates/report/inventree_build_order_base.html:158
-#: templates/js/translated/build.js:2925
-#: templates/js/translated/purchase_order.js:1723
-#: templates/js/translated/return_order.js:347
-#: templates/js/translated/table_filters.js:461
+#: templates/js/translated/build.js:2142
+#: templates/js/translated/purchase_order.js:1738
+#: templates/js/translated/return_order.js:359
+#: templates/js/translated/table_filters.js:467
msgid "Responsible"
msgstr "Verantwortlicher Benutzer"
-#: build/models.py:285
+#: build/models.py:289
msgid "User or group responsible for this build order"
msgstr "Benutzer oder Gruppe verantwortlich für diesen Bauauftrag"
-#: build/models.py:290 build/templates/build/detail.html:108
+#: build/models.py:294 build/templates/build/detail.html:108
#: company/templates/company/manufacturer_part.html:107
#: company/templates/company/supplier_part.html:195
-#: order/templates/order/order_base.html:171
+#: order/templates/order/order_base.html:167
#: order/templates/order/return_order_base.html:146
#: order/templates/order/sales_order_base.html:181
#: part/templates/part/part_base.html:385 stock/models.py:733
#: stock/templates/stock/item_base.html:201
+#: templates/js/translated/company.js:1050
msgid "External Link"
msgstr "Externer Link"
-#: build/models.py:295
+#: build/models.py:299
msgid "Build Priority"
msgstr "Bauauftrags-Priorität"
-#: build/models.py:298
+#: build/models.py:302
msgid "Priority of this build order"
msgstr "Priorität dieses Bauauftrags"
-#: build/models.py:536
+#: build/models.py:309 common/models.py:104 order/admin.py:17
+#: order/models.py:237 templates/InvenTree/settings/settings_staff_js.html:70
+#: templates/js/translated/build.js:2067
+#: templates/js/translated/purchase_order.js:1685
+#: templates/js/translated/return_order.js:318
+#: templates/js/translated/sales_order.js:806
+#: templates/js/translated/table_filters.js:24
+#: templates/project_code_data.html:6
+msgid "Project Code"
+msgstr "Projektcode"
+
+#: build/models.py:310
+msgid "Project code for this build order"
+msgstr ""
+
+#: build/models.py:545
#, python-brace-format
msgid "Build order {build} has been completed"
msgstr "Bauauftrag {build} wurde fertiggestellt"
-#: build/models.py:542
+#: build/models.py:551
msgid "A build order has been completed"
msgstr "Ein Bauauftrag wurde fertiggestellt"
-#: build/models.py:744 build/models.py:811
+#: build/models.py:753 build/models.py:831
msgid "No build output specified"
msgstr "kein Endprodukt angegeben"
-#: build/models.py:747
+#: build/models.py:756
msgid "Build output is already completed"
msgstr "Endprodukt bereits hergstellt"
-#: build/models.py:750
+#: build/models.py:759
msgid "Build output does not match Build Order"
msgstr "Endprodukt stimmt nicht mit dem Bauauftrag überein"
-#: build/models.py:815 build/serializers.py:212 build/serializers.py:251
-#: build/serializers.py:811 order/models.py:440 order/serializers.py:379
-#: order/serializers.py:501 part/serializers.py:1087 part/serializers.py:1408
-#: stock/models.py:593 stock/models.py:1387 stock/serializers.py:315
+#: build/models.py:835 build/serializers.py:220 build/serializers.py:259
+#: build/serializers.py:819 order/models.py:453 order/serializers.py:385
+#: order/serializers.py:507 part/serializers.py:1149 part/serializers.py:1470
+#: stock/models.py:593 stock/models.py:1387 stock/serializers.py:381
msgid "Quantity must be greater than zero"
msgstr "Anzahl muss größer Null sein"
-#: build/models.py:820 build/serializers.py:217
+#: build/models.py:840 build/serializers.py:225
msgid "Quantity cannot be greater than the output quantity"
msgstr "Menge kann nicht größer als die Ausgangsmenge sein"
-#: build/models.py:1272
-msgid "Build item must specify a build output, as master part is marked as trackable"
-msgstr "Bauauftragsposition muss ein Endprodukt festlegen, da der übergeordnete Teil verfolgbar ist"
+#: build/models.py:1260
+msgid "Build object"
+msgstr ""
-#: build/models.py:1281
-#, python-brace-format
-msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})"
-msgstr "Zugewiesene Menge ({q}) darf nicht verfügbare Menge ({a}) übersteigen"
-
-#: build/models.py:1291 order/models.py:1601
-msgid "Stock item is over-allocated"
-msgstr "BestandObjekt ist zu oft zugewiesen"
-
-#: build/models.py:1297 order/models.py:1604
-msgid "Allocation quantity must be greater than zero"
-msgstr "Reserviermenge muss größer null sein"
-
-#: build/models.py:1303
-msgid "Quantity must be 1 for serialized stock"
-msgstr "Anzahl muss 1 für Objekte mit Seriennummer sein"
-
-#: build/models.py:1360
-msgid "Selected stock item not found in BOM"
-msgstr "Ausgewähltes Bestands-Objekt nicht in Stückliste für Teil '{p}' gefunden"
-
-#: build/models.py:1438 stock/templates/stock/item_base.html:170
-#: templates/InvenTree/search.html:139 templates/js/translated/build.js:2841
-#: templates/navbar.html:38
-msgid "Build"
-msgstr "Bauauftrag"
-
-#: build/models.py:1439
-msgid "Build to allocate parts"
-msgstr "Bauauftrag starten um Teile zuzuweisen"
-
-#: build/models.py:1455 build/serializers.py:791 order/serializers.py:1059
-#: order/serializers.py:1080 stock/serializers.py:413 stock/serializers.py:770
-#: stock/serializers.py:896 stock/templates/stock/item_base.html:10
-#: stock/templates/stock/item_base.html:23
-#: stock/templates/stock/item_base.html:195
-#: templates/js/translated/build.js:955 templates/js/translated/build.js:960
-#: templates/js/translated/build.js:2466 templates/js/translated/build.js:3038
-#: templates/js/translated/sales_order.js:286
-#: templates/js/translated/sales_order.js:1186
-#: templates/js/translated/sales_order.js:1485
-#: templates/js/translated/sales_order.js:1490
-#: templates/js/translated/sales_order.js:1591
-#: templates/js/translated/sales_order.js:1678
-#: templates/js/translated/stock.js:644 templates/js/translated/stock.js:810
-#: templates/js/translated/stock.js:2714
-msgid "Stock Item"
-msgstr "Lagerartikel"
-
-#: build/models.py:1456
-msgid "Source stock item"
-msgstr "Quell-Lagerartikel"
-
-#: build/models.py:1468 build/serializers.py:198 build/serializers.py:236
-#: build/templates/build/build_base.html:103
-#: build/templates/build/detail.html:34 common/models.py:2176
-#: order/models.py:1073 order/models.py:1645 order/serializers.py:1233
+#: build/models.py:1274 build/models.py:1556 build/serializers.py:206
+#: build/serializers.py:244 build/templates/build/build_base.html:103
+#: build/templates/build/detail.html:34 common/models.py:2162
+#: order/models.py:1086 order/models.py:1658 order/serializers.py:1239
#: order/templates/order/order_wizard/match_parts.html:30 part/admin.py:277
-#: part/forms.py:47 part/models.py:2992 part/models.py:3779
+#: part/forms.py:47 part/models.py:3026 part/models.py:3823
#: part/templates/part/part_pricing.html:16
#: part/templates/part/upload_bom.html:53
#: report/templates/report/inventree_bill_of_materials_report.html:138
@@ -1203,315 +1200,367 @@ msgstr "Quell-Lagerartikel"
#: report/templates/report/inventree_so_report_base.html:29
#: report/templates/report/inventree_test_report_base.html:90
#: report/templates/report/inventree_test_report_base.html:170
-#: stock/admin.py:103 stock/serializers.py:306
+#: stock/admin.py:103 stock/serializers.py:372
#: stock/templates/stock/item_base.html:288
#: stock/templates/stock/item_base.html:296
#: stock/templates/stock/item_base.html:343
#: templates/email/build_order_completed.html:18
-#: templates/js/translated/barcode.js:531 templates/js/translated/bom.js:770
-#: templates/js/translated/bom.js:951 templates/js/translated/build.js:504
-#: templates/js/translated/build.js:716 templates/js/translated/build.js:982
-#: templates/js/translated/build.js:1425 templates/js/translated/build.js:1991
-#: templates/js/translated/build.js:2467
-#: templates/js/translated/company.js:1428
-#: templates/js/translated/model_renderers.js:207
-#: templates/js/translated/order.js:304 templates/js/translated/part.js:935
-#: templates/js/translated/part.js:1784 templates/js/translated/part.js:3263
+#: templates/js/translated/barcode.js:531 templates/js/translated/bom.js:771
+#: templates/js/translated/bom.js:969 templates/js/translated/build.js:510
+#: templates/js/translated/build.js:722 templates/js/translated/build.js:1308
+#: templates/js/translated/build.js:1672 templates/js/translated/build.js:2283
+#: templates/js/translated/company.js:1849
+#: templates/js/translated/model_renderers.js:221
+#: templates/js/translated/order.js:304 templates/js/translated/part.js:934
+#: templates/js/translated/part.js:1783 templates/js/translated/part.js:3248
#: templates/js/translated/pricing.js:381
#: templates/js/translated/pricing.js:474
#: templates/js/translated/pricing.js:522
#: templates/js/translated/pricing.js:616
-#: templates/js/translated/purchase_order.js:749
-#: templates/js/translated/purchase_order.js:1815
-#: templates/js/translated/purchase_order.js:2039
-#: templates/js/translated/sales_order.js:302
-#: templates/js/translated/sales_order.js:1187
-#: templates/js/translated/sales_order.js:1504
-#: templates/js/translated/sales_order.js:1594
-#: templates/js/translated/sales_order.js:1684
-#: templates/js/translated/sales_order.js:1804
-#: templates/js/translated/stock.js:531 templates/js/translated/stock.js:669
-#: templates/js/translated/stock.js:840 templates/js/translated/stock.js:2758
-#: templates/js/translated/stock.js:2843
+#: templates/js/translated/purchase_order.js:760
+#: templates/js/translated/purchase_order.js:1830
+#: templates/js/translated/purchase_order.js:2049
+#: templates/js/translated/sales_order.js:314
+#: templates/js/translated/sales_order.js:1199
+#: templates/js/translated/sales_order.js:1516
+#: templates/js/translated/sales_order.js:1606
+#: templates/js/translated/sales_order.js:1696
+#: templates/js/translated/sales_order.js:1816
+#: templates/js/translated/stock.js:530 templates/js/translated/stock.js:668
+#: templates/js/translated/stock.js:839 templates/js/translated/stock.js:2889
+#: templates/js/translated/stock.js:2970
msgid "Quantity"
msgstr "Anzahl"
-#: build/models.py:1469
+#: build/models.py:1275
+msgid "Required quantity for build order"
+msgstr ""
+
+#: build/models.py:1357
+msgid "Build item must specify a build output, as master part is marked as trackable"
+msgstr "Bauauftragsposition muss ein Endprodukt festlegen, da der übergeordnete Teil verfolgbar ist"
+
+#: build/models.py:1366
+#, python-brace-format
+msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})"
+msgstr "Zugewiesene Menge ({q}) darf nicht verfügbare Menge ({a}) übersteigen"
+
+#: build/models.py:1376 order/models.py:1614
+msgid "Stock item is over-allocated"
+msgstr "BestandObjekt ist zu oft zugewiesen"
+
+#: build/models.py:1382 order/models.py:1617
+msgid "Allocation quantity must be greater than zero"
+msgstr "Reserviermenge muss größer null sein"
+
+#: build/models.py:1388
+msgid "Quantity must be 1 for serialized stock"
+msgstr "Anzahl muss 1 für Objekte mit Seriennummer sein"
+
+#: build/models.py:1449
+msgid "Selected stock item does not match BOM line"
+msgstr ""
+
+#: build/models.py:1543 build/serializers.py:799 order/serializers.py:1065
+#: order/serializers.py:1086 stock/serializers.py:479 stock/serializers.py:887
+#: stock/serializers.py:1013 stock/templates/stock/item_base.html:10
+#: stock/templates/stock/item_base.html:23
+#: stock/templates/stock/item_base.html:195
+#: templates/js/translated/build.js:1671
+#: templates/js/translated/sales_order.js:298
+#: templates/js/translated/sales_order.js:1198
+#: templates/js/translated/sales_order.js:1497
+#: templates/js/translated/sales_order.js:1502
+#: templates/js/translated/sales_order.js:1603
+#: templates/js/translated/sales_order.js:1690
+#: templates/js/translated/stock.js:643 templates/js/translated/stock.js:809
+#: templates/js/translated/stock.js:2845
+msgid "Stock Item"
+msgstr "Lagerartikel"
+
+#: build/models.py:1544
+msgid "Source stock item"
+msgstr "Quell-Lagerartikel"
+
+#: build/models.py:1557
msgid "Stock quantity to allocate to build"
msgstr "Anzahl an Lagerartikel dem Bauauftrag zuweisen"
-#: build/models.py:1477
+#: build/models.py:1565
msgid "Install into"
msgstr "Installiere in"
-#: build/models.py:1478
+#: build/models.py:1566
msgid "Destination stock item"
msgstr "Ziel-Lagerartikel"
-#: build/serializers.py:148 build/serializers.py:820
-#: templates/js/translated/build.js:1413
+#: build/serializers.py:156 build/serializers.py:828
+#: templates/js/translated/build.js:1299
msgid "Build Output"
msgstr "Endprodukt"
-#: build/serializers.py:160
+#: build/serializers.py:168
msgid "Build output does not match the parent build"
msgstr "Endprodukt stimmt nicht mit übergeordnetem Bauauftrag überein"
-#: build/serializers.py:164
+#: build/serializers.py:172
msgid "Output part does not match BuildOrder part"
msgstr "Endprodukt entspricht nicht dem Teil des Bauauftrags"
-#: build/serializers.py:168
+#: build/serializers.py:176
msgid "This build output has already been completed"
msgstr "Dieses Endprodukt wurde bereits fertiggestellt"
-#: build/serializers.py:179
+#: build/serializers.py:187
msgid "This build output is not fully allocated"
msgstr "Dieses Endprodukt ist nicht vollständig zugewiesen"
-#: build/serializers.py:199 build/serializers.py:237
+#: build/serializers.py:207 build/serializers.py:245
msgid "Enter quantity for build output"
msgstr "Menge der Endprodukte angeben"
-#: build/serializers.py:258
+#: build/serializers.py:266
msgid "Integer quantity required for trackable parts"
msgstr "Ganzzahl für verfolgbare Teile erforderlich"
-#: build/serializers.py:261
+#: build/serializers.py:269
msgid "Integer quantity required, as the bill of materials contains trackable parts"
msgstr "Ganzzahl erforderlich da die Stückliste nachverfolgbare Teile enthält"
-#: build/serializers.py:276 order/serializers.py:514 order/serializers.py:1237
-#: stock/serializers.py:324 templates/js/translated/purchase_order.js:1123
-#: templates/js/translated/stock.js:334 templates/js/translated/stock.js:532
+#: build/serializers.py:284 order/serializers.py:520 order/serializers.py:1243
+#: stock/serializers.py:390 templates/js/translated/purchase_order.js:1138
+#: templates/js/translated/stock.js:333 templates/js/translated/stock.js:531
msgid "Serial Numbers"
msgstr "Seriennummer"
-#: build/serializers.py:277
+#: build/serializers.py:285
msgid "Enter serial numbers for build outputs"
msgstr "Seriennummer für dieses Endprodukt eingeben"
-#: build/serializers.py:290
+#: build/serializers.py:298
msgid "Auto Allocate Serial Numbers"
msgstr "Seriennummern automatisch zuweisen"
-#: build/serializers.py:291
+#: build/serializers.py:299
msgid "Automatically allocate required items with matching serial numbers"
msgstr "Benötigte Lagerartikel automatisch mit passenden Seriennummern zuweisen"
-#: build/serializers.py:326 stock/api.py:670
+#: build/serializers.py:334 stock/api.py:707
msgid "The following serial numbers already exist or are invalid"
msgstr "Die folgenden Seriennummern existieren bereits oder sind ungültig"
-#: build/serializers.py:377 build/serializers.py:439 build/serializers.py:518
+#: build/serializers.py:385 build/serializers.py:447 build/serializers.py:526
msgid "A list of build outputs must be provided"
msgstr "Eine Liste von Endprodukten muss angegeben werden"
-#: build/serializers.py:415 build/serializers.py:488 order/serializers.py:487
-#: order/serializers.py:606 order/serializers.py:1588 part/serializers.py:854
-#: stock/serializers.py:335 stock/serializers.py:470 stock/serializers.py:551
-#: stock/serializers.py:931 stock/serializers.py:1173
+#: build/serializers.py:423 build/serializers.py:496 order/serializers.py:493
+#: order/serializers.py:612 order/serializers.py:1594 part/serializers.py:916
+#: stock/serializers.py:401 stock/serializers.py:537 stock/serializers.py:618
+#: stock/serializers.py:1048 stock/serializers.py:1290
#: stock/templates/stock/item_base.html:390
#: templates/js/translated/barcode.js:530
-#: templates/js/translated/barcode.js:778 templates/js/translated/build.js:967
-#: templates/js/translated/build.js:2006
-#: templates/js/translated/purchase_order.js:1148
-#: templates/js/translated/purchase_order.js:1238
-#: templates/js/translated/sales_order.js:1497
-#: templates/js/translated/sales_order.js:1605
-#: templates/js/translated/sales_order.js:1613
-#: templates/js/translated/sales_order.js:1692
-#: templates/js/translated/stock.js:645 templates/js/translated/stock.js:811
-#: templates/js/translated/stock.js:1023 templates/js/translated/stock.js:1937
-#: templates/js/translated/stock.js:2608
+#: templates/js/translated/barcode.js:778 templates/js/translated/build.js:980
+#: templates/js/translated/build.js:2298
+#: templates/js/translated/purchase_order.js:1163
+#: templates/js/translated/purchase_order.js:1253
+#: templates/js/translated/sales_order.js:1509
+#: templates/js/translated/sales_order.js:1617
+#: templates/js/translated/sales_order.js:1625
+#: templates/js/translated/sales_order.js:1704
+#: templates/js/translated/stock.js:644 templates/js/translated/stock.js:810
+#: templates/js/translated/stock.js:1022 templates/js/translated/stock.js:2094
+#: templates/js/translated/stock.js:2739
msgid "Location"
msgstr "Lagerort"
-#: build/serializers.py:416
+#: build/serializers.py:424
msgid "Stock location for scrapped outputs"
msgstr "Lagerort für ausgemusterte Ausgänge"
-#: build/serializers.py:422
+#: build/serializers.py:430
msgid "Discard Allocations"
msgstr "Zuteilungen verwerfen"
-#: build/serializers.py:423
+#: build/serializers.py:431
msgid "Discard any stock allocations for scrapped outputs"
msgstr "Bestandszuteilung für ausgemusterte Endprodukte verwerfen"
-#: build/serializers.py:428
+#: build/serializers.py:436
msgid "Reason for scrapping build output(s)"
msgstr "Grund für das Verwerfen des Bauauftrages/der Bauaufträge"
-#: build/serializers.py:489
+#: build/serializers.py:497
msgid "Location for completed build outputs"
msgstr "Lagerort für fertige Endprodukte"
-#: build/serializers.py:495 build/templates/build/build_base.html:151
-#: build/templates/build/detail.html:62 order/models.py:791
-#: order/models.py:1750 order/serializers.py:524 stock/admin.py:106
-#: stock/templates/stock/item_base.html:423
-#: templates/js/translated/barcode.js:252 templates/js/translated/build.js:2897
-#: templates/js/translated/purchase_order.js:1278
-#: templates/js/translated/purchase_order.js:1682
-#: templates/js/translated/return_order.js:319
-#: templates/js/translated/sales_order.js:807
-#: templates/js/translated/stock.js:1912 templates/js/translated/stock.js:2732
-#: templates/js/translated/stock.js:2859
+#: build/serializers.py:503 build/templates/build/build_base.html:152
+#: build/templates/build/detail.html:62 order/models.py:804
+#: order/models.py:1763 order/serializers.py:530 stock/admin.py:106
+#: stock/serializers.py:677 stock/templates/stock/item_base.html:423
+#: templates/js/translated/barcode.js:252 templates/js/translated/build.js:2114
+#: templates/js/translated/purchase_order.js:1293
+#: templates/js/translated/purchase_order.js:1697
+#: templates/js/translated/return_order.js:331
+#: templates/js/translated/sales_order.js:819
+#: templates/js/translated/stock.js:2069 templates/js/translated/stock.js:2863
+#: templates/js/translated/stock.js:2986
msgid "Status"
msgstr "Status"
-#: build/serializers.py:501
+#: build/serializers.py:509
msgid "Accept Incomplete Allocation"
msgstr "Unvollständige Zuweisung akzeptieren"
-#: build/serializers.py:502
+#: build/serializers.py:510
msgid "Complete outputs if stock has not been fully allocated"
msgstr "Endprodukte fertigstellen, auch wenn Bestand nicht fertig zugewiesen wurde"
-#: build/serializers.py:571
+#: build/serializers.py:579
msgid "Remove Allocated Stock"
msgstr "Zugewiesenen Bestand entfernen"
-#: build/serializers.py:572
+#: build/serializers.py:580
msgid "Subtract any stock which has already been allocated to this build"
msgstr "Abzug aller Lagerbestände, die diesem Build bereits zugewiesen wurden"
-#: build/serializers.py:578
+#: build/serializers.py:586
msgid "Remove Incomplete Outputs"
msgstr "Unfertige Endprodukte entfernen"
-#: build/serializers.py:579
+#: build/serializers.py:587
msgid "Delete any build outputs which have not been completed"
msgstr "Lösche alle noch nicht abgeschlossenen Endprodukte"
-#: build/serializers.py:606
+#: build/serializers.py:614
msgid "Not permitted"
msgstr "Nicht erlaubt"
-#: build/serializers.py:607
+#: build/serializers.py:615
msgid "Accept as consumed by this build order"
msgstr "Als von diesem Bauauftrag verbraucht setzen"
-#: build/serializers.py:608
+#: build/serializers.py:616
msgid "Deallocate before completing this build order"
msgstr "Bestandszuordnung vor dem Abschluss dieses Bauauftrags freigeben"
-#: build/serializers.py:631
+#: build/serializers.py:639
msgid "Overallocated Stock"
msgstr "Überbelegter Lagerbestand"
-#: build/serializers.py:633
+#: build/serializers.py:641
msgid "How do you want to handle extra stock items assigned to the build order"
msgstr "Wie sollen zusätzliche Lagerbestandteile, die dem Bauauftrag zugewiesen wurden, behandelt werden"
-#: build/serializers.py:643
+#: build/serializers.py:651
msgid "Some stock items have been overallocated"
msgstr "Der Bestand einiger Lagerartikel ist überbelegt"
-#: build/serializers.py:648
+#: build/serializers.py:656
msgid "Accept Unallocated"
msgstr "Nicht zugewiesene akzeptieren"
-#: build/serializers.py:649
+#: build/serializers.py:657
msgid "Accept that stock items have not been fully allocated to this build order"
msgstr "Akzeptieren, dass Lagerartikel diesem Bauauftrag nicht vollständig zugewiesen wurden"
-#: build/serializers.py:659 templates/js/translated/build.js:295
+#: build/serializers.py:667 templates/js/translated/build.js:304
msgid "Required stock has not been fully allocated"
msgstr "Benötigter Bestand wurde nicht vollständig zugewiesen"
-#: build/serializers.py:664 order/serializers.py:261 order/serializers.py:1127
+#: build/serializers.py:672 order/serializers.py:267 order/serializers.py:1133
msgid "Accept Incomplete"
msgstr "Unvollständig Zuweisung akzeptieren"
-#: build/serializers.py:665
+#: build/serializers.py:673
msgid "Accept that the required number of build outputs have not been completed"
msgstr "Akzeptieren, dass die erforderliche Anzahl der Bauaufträge nicht abgeschlossen ist"
-#: build/serializers.py:675 templates/js/translated/build.js:299
+#: build/serializers.py:683 templates/js/translated/build.js:308
msgid "Required build quantity has not been completed"
msgstr "Benötigte Teil-Anzahl wurde noch nicht fertiggestellt"
-#: build/serializers.py:684 templates/js/translated/build.js:283
+#: build/serializers.py:692 templates/js/translated/build.js:292
msgid "Build order has incomplete outputs"
msgstr "Bauauftrag hat unvollständige Aufbauten"
-#: build/serializers.py:714 build/serializers.py:768 part/models.py:3686
-#: part/models.py:4069
-msgid "BOM Item"
-msgstr "Stücklisten-Position"
+#: build/serializers.py:722
+msgid "Build Line"
+msgstr ""
-#: build/serializers.py:724
+#: build/serializers.py:732
msgid "Build output"
msgstr "Endprodukt"
-#: build/serializers.py:732
+#: build/serializers.py:740
msgid "Build output must point to the same build"
msgstr "Endprodukt muss auf den gleichen Bauauftrag verweisen"
-#: build/serializers.py:782
+#: build/serializers.py:776
+msgid "Build Line Item"
+msgstr ""
+
+#: build/serializers.py:790
msgid "bom_item.part must point to the same part as the build order"
msgstr "bom_item.part muss auf dasselbe Teil verweisen wie der Bauauftrag"
-#: build/serializers.py:797 stock/serializers.py:783
+#: build/serializers.py:805 stock/serializers.py:900
msgid "Item must be in stock"
msgstr "Teil muss auf Lager sein"
-#: build/serializers.py:846 order/serializers.py:1117
+#: build/serializers.py:853 order/serializers.py:1123
#, python-brace-format
msgid "Available quantity ({q}) exceeded"
msgstr "Verfügbare Menge ({q}) überschritten"
-#: build/serializers.py:852
+#: build/serializers.py:859
msgid "Build output must be specified for allocation of tracked parts"
msgstr "Für Zuweisung von verfolgten Teilen muss ein Endprodukt angegeben sein"
-#: build/serializers.py:859
+#: build/serializers.py:866
msgid "Build output cannot be specified for allocation of untracked parts"
msgstr "Endprodukt kann bei Zuweisung nicht-verfolgter Teile nicht angegeben werden"
-#: build/serializers.py:864
+#: build/serializers.py:871
msgid "This stock item has already been allocated to this build output"
msgstr "Dieser Lagerbestand wurde bereits diesem Endprodukt zugewiesen"
-#: build/serializers.py:887 order/serializers.py:1401
+#: build/serializers.py:894 order/serializers.py:1407
msgid "Allocation items must be provided"
msgstr "Zuweisungen müssen angegeben werden"
-#: build/serializers.py:943
+#: build/serializers.py:947
msgid "Stock location where parts are to be sourced (leave blank to take from any location)"
msgstr "Lagerort, von dem Teile bezogen werden sollen (leer lassen, um sie von jedem Lagerort zu nehmen)"
-#: build/serializers.py:951
+#: build/serializers.py:955
msgid "Exclude Location"
msgstr "Lagerort ausschließen"
-#: build/serializers.py:952
+#: build/serializers.py:956
msgid "Exclude stock items from this selected location"
msgstr "Lagerartikel vom ausgewählten Ort ausschließen"
-#: build/serializers.py:957
+#: build/serializers.py:961
msgid "Interchangeable Stock"
msgstr "Wechselbares Lagerbestand"
-#: build/serializers.py:958
+#: build/serializers.py:962
msgid "Stock items in multiple locations can be used interchangeably"
msgstr "Lagerartikel an mehreren Standorten können austauschbar verwendet werden"
-#: build/serializers.py:963
+#: build/serializers.py:967
msgid "Substitute Stock"
msgstr "Ersatzbestand"
-#: build/serializers.py:964
+#: build/serializers.py:968
msgid "Allow allocation of substitute parts"
msgstr "Zuordnung von Ersatzteilen erlauben"
-#: build/serializers.py:969
+#: build/serializers.py:973
msgid "Optional Items"
msgstr "Optionale Positionen"
-#: build/serializers.py:970
+#: build/serializers.py:974
msgid "Allocate optional BOM items to build order"
msgstr "Optionale Stücklisten-Positionen dem Bauauftrag hinzufügen"
@@ -1540,6 +1589,7 @@ msgstr "Miniaturansicht"
#: part/templates/part/part_base.html:43
#: stock/templates/stock/item_base.html:41
#: stock/templates/stock/location.html:54
+#: templates/js/translated/filters.js:336
msgid "Barcode actions"
msgstr "Barcode Aktionen"
@@ -1618,69 +1668,67 @@ msgstr "Bauauftrag fertigstellen"
msgid "Build Description"
msgstr "Baubeschreibung"
-#: build/templates/build/build_base.html:117
+#: build/templates/build/build_base.html:118
msgid "No build outputs have been created for this build order"
msgstr "Es wurden keine Endprodukte für diesen Bauauftrag erstellt"
-#: build/templates/build/build_base.html:124
+#: build/templates/build/build_base.html:125
msgid "Build Order is ready to mark as completed"
msgstr "Bauauftrag ist bereit abgeschlossen zu werden"
-#: build/templates/build/build_base.html:129
+#: build/templates/build/build_base.html:130
msgid "Build Order cannot be completed as outstanding outputs remain"
msgstr "Bauauftrag kann nicht abgeschlossen werden, da es noch ausstehende Endprodukte gibt"
-#: build/templates/build/build_base.html:134
+#: build/templates/build/build_base.html:135
msgid "Required build quantity has not yet been completed"
msgstr "Benötigte Teil-Anzahl wurde noch nicht fertiggestellt"
-#: build/templates/build/build_base.html:139
+#: build/templates/build/build_base.html:140
msgid "Stock has not been fully allocated to this Build Order"
msgstr "Bestand wurde Bauauftrag noch nicht vollständig zugewiesen"
-#: build/templates/build/build_base.html:160
-#: build/templates/build/detail.html:138 order/models.py:240
-#: order/models.py:1099 order/templates/order/order_base.html:190
+#: build/templates/build/build_base.html:161
+#: build/templates/build/detail.html:138 order/models.py:244
+#: order/models.py:1112 order/templates/order/order_base.html:186
#: order/templates/order/return_order_base.html:165
#: order/templates/order/sales_order_base.html:193
#: report/templates/report/inventree_build_order_base.html:125
-#: templates/js/translated/build.js:2945 templates/js/translated/part.js:1802
-#: templates/js/translated/purchase_order.js:1699
-#: templates/js/translated/purchase_order.js:2115
-#: templates/js/translated/return_order.js:335
-#: templates/js/translated/return_order.js:735
-#: templates/js/translated/sales_order.js:823
-#: templates/js/translated/sales_order.js:1847
+#: templates/js/translated/build.js:2162 templates/js/translated/part.js:1801
+#: templates/js/translated/purchase_order.js:1714
+#: templates/js/translated/purchase_order.js:2125
+#: templates/js/translated/return_order.js:347
+#: templates/js/translated/return_order.js:747
+#: templates/js/translated/sales_order.js:835
+#: templates/js/translated/sales_order.js:1859
msgid "Target Date"
msgstr "Zieldatum"
-#: build/templates/build/build_base.html:165
+#: build/templates/build/build_base.html:166
#, python-format
msgid "This build was due on %(target)s"
msgstr "Bauauftrag war fällig am %(target)s"
-#: build/templates/build/build_base.html:165
-#: build/templates/build/build_base.html:222
-#: order/templates/order/order_base.html:126
+#: build/templates/build/build_base.html:166
+#: build/templates/build/build_base.html:223
+#: order/templates/order/order_base.html:122
#: order/templates/order/return_order_base.html:118
#: order/templates/order/sales_order_base.html:123
-#: templates/js/translated/table_filters.js:68
-#: templates/js/translated/table_filters.js:454
-#: templates/js/translated/table_filters.js:539
-#: templates/js/translated/table_filters.js:580
+#: templates/js/translated/table_filters.js:74
+#: templates/js/translated/table_filters.js:460
+#: templates/js/translated/table_filters.js:561
+#: templates/js/translated/table_filters.js:602
msgid "Overdue"
msgstr "Überfällig"
-#: build/templates/build/build_base.html:177
-#: build/templates/build/detail.html:67 build/templates/build/detail.html:149
-#: order/templates/order/sales_order_base.html:203
-#: templates/js/translated/table_filters.js:602
-msgid "Completed"
-msgstr "Fertig"
+#: build/templates/build/build_base.html:178
+#: build/templates/build/detail.html:67 build/templates/build/sidebar.html:13
+msgid "Completed Outputs"
+msgstr "Fertiggestellte Endprodukte"
-#: build/templates/build/build_base.html:190
-#: build/templates/build/detail.html:101 order/api.py:1454 order/models.py:1304
-#: order/models.py:1403 order/models.py:1551
+#: build/templates/build/build_base.html:191
+#: build/templates/build/detail.html:101 order/api.py:1454 order/models.py:1317
+#: order/models.py:1416 order/models.py:1564
#: order/templates/order/sales_order_base.html:9
#: order/templates/order/sales_order_base.html:28
#: report/templates/report/inventree_build_order_base.html:135
@@ -1688,32 +1736,32 @@ msgstr "Fertig"
#: stock/templates/stock/item_base.html:370
#: templates/email/overdue_sales_order.html:15
#: templates/js/translated/pricing.js:915
-#: templates/js/translated/sales_order.js:757
-#: templates/js/translated/sales_order.js:980
-#: templates/js/translated/stock.js:2661
+#: templates/js/translated/sales_order.js:769
+#: templates/js/translated/sales_order.js:992
+#: templates/js/translated/stock.js:2792
msgid "Sales Order"
msgstr "Auftrag"
-#: build/templates/build/build_base.html:197
+#: build/templates/build/build_base.html:198
#: build/templates/build/detail.html:115
#: report/templates/report/inventree_build_order_base.html:152
msgid "Issued By"
msgstr "Aufgegeben von"
-#: build/templates/build/build_base.html:211
-#: build/templates/build/detail.html:94 templates/js/translated/build.js:2862
+#: build/templates/build/build_base.html:212
+#: build/templates/build/detail.html:94 templates/js/translated/build.js:2079
msgid "Priority"
msgstr "Priorität"
-#: build/templates/build/build_base.html:273
+#: build/templates/build/build_base.html:274
msgid "Delete Build Order"
msgstr "Bauauftrag löschen"
-#: build/templates/build/build_base.html:283
+#: build/templates/build/build_base.html:284
msgid "Build Order QR Code"
msgstr "Bauftrags-QR-Code"
-#: build/templates/build/build_base.html:295
+#: build/templates/build/build_base.html:296
msgid "Link Barcode to Build Order"
msgstr "Barcode mit Bauauftrag verknüpfen"
@@ -1729,8 +1777,8 @@ msgstr "Ausgangs-Lager"
msgid "Stock can be taken from any available location."
msgstr "Bestand kann jedem verfügbaren Lagerort entnommen werden."
-#: build/templates/build/detail.html:49 order/models.py:1222
-#: templates/js/translated/purchase_order.js:2157
+#: build/templates/build/detail.html:49 order/models.py:1235
+#: templates/js/translated/purchase_order.js:2167
msgid "Destination"
msgstr "Ziel-Lager"
@@ -1744,21 +1792,21 @@ msgstr "Zugewiesene Teile"
#: build/templates/build/detail.html:80 stock/admin.py:105
#: stock/templates/stock/item_base.html:163
-#: templates/js/translated/build.js:1432
-#: templates/js/translated/model_renderers.js:212
-#: templates/js/translated/purchase_order.js:1244
-#: templates/js/translated/stock.js:1093 templates/js/translated/stock.js:1926
-#: templates/js/translated/stock.js:2866
-#: templates/js/translated/table_filters.js:259
-#: templates/js/translated/table_filters.js:350
+#: templates/js/translated/build.js:1319
+#: templates/js/translated/model_renderers.js:226
+#: templates/js/translated/purchase_order.js:1259
+#: templates/js/translated/stock.js:1092 templates/js/translated/stock.js:2083
+#: templates/js/translated/stock.js:2993
+#: templates/js/translated/table_filters.js:265
+#: templates/js/translated/table_filters.js:356
msgid "Batch"
msgstr "Losnummer"
#: build/templates/build/detail.html:133
-#: order/templates/order/order_base.html:177
+#: order/templates/order/order_base.html:173
#: order/templates/order/return_order_base.html:152
#: order/templates/order/sales_order_base.html:187
-#: templates/js/translated/build.js:2905
+#: templates/js/translated/build.js:2122
msgid "Created"
msgstr "Erstellt"
@@ -1766,147 +1814,106 @@ msgstr "Erstellt"
msgid "No target date set"
msgstr "Kein Ziel-Datum gesetzt"
+#: build/templates/build/detail.html:149
+#: order/templates/order/sales_order_base.html:203
+#: templates/js/translated/table_filters.js:624
+msgid "Completed"
+msgstr "Fertig"
+
#: build/templates/build/detail.html:153
msgid "Build not complete"
msgstr "Bauauftrag ist nicht vollständig"
-#: build/templates/build/detail.html:164 build/templates/build/sidebar.html:19
+#: build/templates/build/detail.html:164 build/templates/build/sidebar.html:17
msgid "Child Build Orders"
msgstr "Unter-Bauaufträge"
-#: build/templates/build/detail.html:179
+#: build/templates/build/detail.html:177
msgid "Allocate Stock to Build"
msgstr "Bestand Bauauftrag zuweisen"
-#: build/templates/build/detail.html:183 templates/js/translated/build.js:2276
-msgid "Unallocate stock"
-msgstr "Bestandszuordnung aufheben"
+#: build/templates/build/detail.html:181
+msgid "Deallocate stock"
+msgstr ""
+
+#: build/templates/build/detail.html:182
+msgid "Deallocate Stock"
+msgstr ""
#: build/templates/build/detail.html:184
-msgid "Unallocate Stock"
-msgstr "Bestandszuordnung aufheben"
-
-#: build/templates/build/detail.html:186
msgid "Automatically allocate stock to build"
msgstr "Lagerartikel automatisch zuweisen"
-#: build/templates/build/detail.html:187
+#: build/templates/build/detail.html:185
msgid "Auto Allocate"
msgstr "Automatisch zuweisen"
-#: build/templates/build/detail.html:189
+#: build/templates/build/detail.html:187
msgid "Manually allocate stock to build"
msgstr "Lagerartikel manuell dem Bauauftrag zuweisen"
-#: build/templates/build/detail.html:190 build/templates/build/sidebar.html:8
+#: build/templates/build/detail.html:188 build/templates/build/sidebar.html:8
msgid "Allocate Stock"
msgstr "Bestand zuweisen"
-#: build/templates/build/detail.html:193
+#: build/templates/build/detail.html:191
msgid "Order required parts"
msgstr "Benötigte Teile bestellen"
-#: build/templates/build/detail.html:194
-#: company/templates/company/detail.html:38
-#: company/templates/company/detail.html:86
-#: part/templates/part/category.html:184
-#: templates/js/translated/purchase_order.js:789
+#: build/templates/build/detail.html:192
+#: templates/js/translated/purchase_order.js:800
msgid "Order Parts"
msgstr "Teile bestellen"
-#: build/templates/build/detail.html:206
-msgid "Untracked stock has been fully allocated for this Build Order"
-msgstr "Nicht verfolgter Bestand wurde Bauauftrag vollständig zugewiesen"
-
#: build/templates/build/detail.html:210
-msgid "Untracked stock has not been fully allocated for this Build Order"
-msgstr "Nicht verfolgter Bestand wurde Bauauftrag noch nicht vollständig zugewiesen"
-
-#: build/templates/build/detail.html:217
-msgid "Allocate selected items"
-msgstr "Ausgewählte Positionen zuweisen"
-
-#: build/templates/build/detail.html:227
-msgid "This Build Order does not have any associated untracked BOM items"
-msgstr "Dieser Bauauftrag hat keine zugeordneten Stücklisten-Einträge"
-
-#: build/templates/build/detail.html:236
msgid "Incomplete Build Outputs"
msgstr "Unfertige Endprodukte"
-#: build/templates/build/detail.html:240
+#: build/templates/build/detail.html:214
msgid "Create new build output"
msgstr "Neues Endprodukt anlegen"
-#: build/templates/build/detail.html:241
+#: build/templates/build/detail.html:215
msgid "New Build Output"
msgstr "Neues Endprodukt"
-#: build/templates/build/detail.html:255
-msgid "Output Actions"
-msgstr "Endproduktaktionen"
-
-#: build/templates/build/detail.html:260
-msgid "Complete selected build outputs"
-msgstr "Ausgewählte Endprodukt fertigstellen"
-
-#: build/templates/build/detail.html:261
-msgid "Complete outputs"
-msgstr "Endprodukte fertigstellen"
-
-#: build/templates/build/detail.html:265
-msgid "Scrap selected build outputs"
-msgstr ""
-
-#: build/templates/build/detail.html:266
-msgid "Scrap outputs"
-msgstr ""
-
-#: build/templates/build/detail.html:270
-msgid "Delete selected build outputs"
-msgstr "Ausgewählte Endprodukte löschen"
-
-#: build/templates/build/detail.html:271
-msgid "Delete outputs"
-msgstr "Endprodukte löschen"
-
-#: build/templates/build/detail.html:288 build/templates/build/sidebar.html:11
+#: build/templates/build/detail.html:232 build/templates/build/sidebar.html:15
msgid "Consumed Stock"
msgstr ""
-#: build/templates/build/detail.html:300
+#: build/templates/build/detail.html:244
msgid "Completed Build Outputs"
msgstr "Fertiggestellte Endprodukte"
-#: build/templates/build/detail.html:312 build/templates/build/sidebar.html:21
-#: company/templates/company/detail.html:261
-#: company/templates/company/manufacturer_part.html:151
+#: build/templates/build/detail.html:256 build/templates/build/sidebar.html:19
+#: company/templates/company/detail.html:229
+#: company/templates/company/manufacturer_part.html:141
#: company/templates/company/manufacturer_part_sidebar.html:9
-#: company/templates/company/sidebar.html:37
+#: company/templates/company/sidebar.html:39
#: order/templates/order/po_sidebar.html:9
-#: order/templates/order/purchase_order_detail.html:102
-#: order/templates/order/return_order_detail.html:74
+#: order/templates/order/purchase_order_detail.html:84
+#: order/templates/order/return_order_detail.html:70
#: order/templates/order/return_order_sidebar.html:7
-#: order/templates/order/sales_order_detail.html:134
-#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:234
-#: part/templates/part/part_sidebar.html:61 stock/templates/stock/item.html:117
+#: order/templates/order/sales_order_detail.html:124
+#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:217
+#: part/templates/part/part_sidebar.html:61 stock/templates/stock/item.html:109
#: stock/templates/stock/stock_sidebar.html:23
msgid "Attachments"
msgstr "Anhänge"
-#: build/templates/build/detail.html:327
+#: build/templates/build/detail.html:271
msgid "Build Notes"
msgstr "Bauauftrags-Notizen"
-#: build/templates/build/detail.html:502
+#: build/templates/build/detail.html:425
msgid "Allocation Complete"
msgstr "Zuordnung abgeschlossen"
-#: build/templates/build/detail.html:503
-msgid "All untracked stock items have been allocated"
-msgstr "Alle nicht verfolgten Lagerartikel wurden zugewiesen"
+#: build/templates/build/detail.html:426
+msgid "All lines have been fully allocated"
+msgstr ""
-#: build/templates/build/index.html:18 part/templates/part/detail.html:340
+#: build/templates/build/index.html:18 part/templates/part/detail.html:319
msgid "New Build Order"
msgstr "Neuer Bauauftrag"
@@ -1914,14 +1921,10 @@ msgstr "Neuer Bauauftrag"
msgid "Build Order Details"
msgstr "Bauauftragdetails"
-#: build/templates/build/sidebar.html:14
+#: build/templates/build/sidebar.html:10
msgid "Incomplete Outputs"
msgstr "Unfertige Endprodukte"
-#: build/templates/build/sidebar.html:17
-msgid "Completed Outputs"
-msgstr "Fertiggestellte Endprodukte"
-
#: common/files.py:63
#, python-brace-format
msgid "Unsupported file format: {fmt}"
@@ -1968,16 +1971,6 @@ msgstr "Aktualisiert"
msgid "Timestamp of last update"
msgstr "Zeitstempel der letzten Aktualisierung"
-#: common/models.py:104 order/admin.py:17 order/models.py:234
-#: templates/InvenTree/settings/settings_staff_js.html:70
-#: templates/js/translated/purchase_order.js:1670
-#: templates/js/translated/return_order.js:306
-#: templates/js/translated/sales_order.js:794
-#: templates/js/translated/table_filters.js:24
-#: templates/project_code_data.html:6
-msgid "Project Code"
-msgstr "Projektcode"
-
#: common/models.py:105
msgid "Unique project code"
msgstr "Eindeutiger Projektcode"
@@ -2261,9 +2254,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:1162 part/admin.py:55 part/models.py:3560
-#: report/models.py:166 templates/js/translated/table_filters.js:109
-#: templates/js/translated/table_filters.js:680
+#: common/models.py:1162 part/admin.py:55 part/models.py:3594
+#: report/models.py:166 templates/js/translated/table_filters.js:115
+#: templates/js/translated/table_filters.js:702
msgid "Template"
msgstr "Vorlage"
@@ -2271,10 +2264,10 @@ msgstr "Vorlage"
msgid "Parts are templates by default"
msgstr "Teile sind standardmäßig Vorlagen"
-#: common/models.py:1169 part/admin.py:51 part/admin.py:283 part/models.py:996
-#: templates/js/translated/bom.js:1598
-#: templates/js/translated/table_filters.js:276
-#: templates/js/translated/table_filters.js:634
+#: common/models.py:1169 part/admin.py:51 part/admin.py:283 part/models.py:997
+#: templates/js/translated/bom.js:1618
+#: templates/js/translated/table_filters.js:282
+#: templates/js/translated/table_filters.js:656
msgid "Assembly"
msgstr "Baugruppe"
@@ -2282,8 +2275,8 @@ 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:1176 part/admin.py:52 part/models.py:1002
-#: templates/js/translated/table_filters.js:642
+#: common/models.py:1176 part/admin.py:52 part/models.py:1003
+#: templates/js/translated/table_filters.js:664
msgid "Component"
msgstr "Komponente"
@@ -2291,7 +2284,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:1183 part/admin.py:53 part/models.py:1013
+#: common/models.py:1183 part/admin.py:53 part/models.py:1014
msgid "Purchaseable"
msgstr "Kaufbar"
@@ -2299,8 +2292,8 @@ msgstr "Kaufbar"
msgid "Parts are purchaseable by default"
msgstr "Artikel sind grundsätzlich kaufbar"
-#: common/models.py:1190 part/admin.py:54 part/models.py:1018
-#: templates/js/translated/table_filters.js:668
+#: common/models.py:1190 part/admin.py:54 part/models.py:1019
+#: templates/js/translated/table_filters.js:690
msgid "Salable"
msgstr "Verkäuflich"
@@ -2308,10 +2301,10 @@ msgstr "Verkäuflich"
msgid "Parts are salable by default"
msgstr "Artikel sind grundsätzlich verkaufbar"
-#: common/models.py:1197 part/admin.py:56 part/models.py:1008
-#: templates/js/translated/table_filters.js:117
-#: templates/js/translated/table_filters.js:193
-#: templates/js/translated/table_filters.js:684
+#: common/models.py:1197 part/admin.py:56 part/models.py:1009
+#: templates/js/translated/table_filters.js:123
+#: templates/js/translated/table_filters.js:199
+#: templates/js/translated/table_filters.js:706
msgid "Trackable"
msgstr "Nachverfolgbar"
@@ -2319,10 +2312,10 @@ msgstr "Nachverfolgbar"
msgid "Parts are trackable by default"
msgstr "Artikel sind grundsätzlich verfolgbar"
-#: common/models.py:1204 part/admin.py:57 part/models.py:1028
+#: common/models.py:1204 part/admin.py:57 part/models.py:1029
#: part/templates/part/part_base.html:156
-#: templates/js/translated/table_filters.js:113
-#: templates/js/translated/table_filters.js:688
+#: templates/js/translated/table_filters.js:119
+#: templates/js/translated/table_filters.js:710
msgid "Virtual"
msgstr "Virtuell"
@@ -2354,7 +2347,7 @@ msgstr "Initialer Lagerbestand"
msgid "Allow creation of initial stock when adding a new part"
msgstr "Erstellen von Lagerbestand beim Hinzufügen eines neuen Teils erlauben"
-#: common/models.py:1232 templates/js/translated/part.js:108
+#: common/models.py:1232 templates/js/translated/part.js:107
msgid "Initial Supplier Data"
msgstr "Initiale Lieferantendaten"
@@ -2603,181 +2596,181 @@ msgid "Stock location default icon (empty means no icon)"
msgstr "Standardsymbol für Lagerstandort (leer bedeutet kein Symbol)"
#: common/models.py:1471
+msgid "Show Installed Stock Items"
+msgstr ""
+
+#: common/models.py:1472
+msgid "Display installed stock items in stock tables"
+msgstr ""
+
+#: common/models.py:1478
msgid "Build Order Reference Pattern"
msgstr "Bauauftragsreferenz-Muster"
-#: common/models.py:1472
+#: common/models.py:1479
msgid "Required pattern for generating Build Order reference field"
msgstr "Benötigtes Muster für die Generierung des Referenzfeldes für Bauaufträge"
-#: common/models.py:1478
+#: common/models.py:1485
msgid "Enable Return Orders"
msgstr ""
-#: common/models.py:1479
+#: common/models.py:1486
msgid "Enable return order functionality in the user interface"
msgstr ""
-#: common/models.py:1485
+#: common/models.py:1492
msgid "Return Order Reference Pattern"
msgstr ""
-#: common/models.py:1486
+#: common/models.py:1493
msgid "Required pattern for generating Return Order reference field"
msgstr ""
-#: common/models.py:1492
+#: common/models.py:1499
msgid "Edit Completed Return Orders"
msgstr ""
-#: common/models.py:1493
+#: common/models.py:1500
msgid "Allow editing of return orders after they have been completed"
msgstr ""
-#: common/models.py:1499
+#: common/models.py:1506
msgid "Sales Order Reference Pattern"
msgstr "Auftragsreferenz-Muster"
-#: common/models.py:1500
+#: common/models.py:1507
msgid "Required pattern for generating Sales Order reference field"
msgstr "Benötigtes Muster für die Generierung des Referenzfeldes für Aufträge"
-#: common/models.py:1506
+#: common/models.py:1513
msgid "Sales Order Default Shipment"
msgstr "Auftrag Standardsendung"
-#: common/models.py:1507
+#: common/models.py:1514
msgid "Enable creation of default shipment with sales orders"
msgstr "Erstelle eine Standardsendung für Aufträge"
-#: common/models.py:1513
+#: common/models.py:1520
msgid "Edit Completed Sales Orders"
msgstr "Abgeschlossene Verkaufsaufträge bearbeiten"
-#: common/models.py:1514
+#: common/models.py:1521
msgid "Allow editing of sales orders after they have been shipped or completed"
msgstr "Bearbeitung von Verkaufsaufträgen nach Versand oder Abschluss erlauben"
-#: common/models.py:1520
+#: common/models.py:1527
msgid "Purchase Order Reference Pattern"
msgstr "Bestellungsreferenz-Muster"
-#: common/models.py:1521
+#: common/models.py:1528
msgid "Required pattern for generating Purchase Order reference field"
msgstr "Benötigtes Muster für die Generierung des Referenzfeldes für Bestellungen"
-#: common/models.py:1527
+#: common/models.py:1534
msgid "Edit Completed Purchase Orders"
msgstr "Abgeschlossene Einkaufsaufträge bearbeiten"
-#: common/models.py:1528
+#: common/models.py:1535
msgid "Allow editing of purchase orders after they have been shipped or completed"
msgstr "Bearbeitung von Einkaufsaufträgen nach Versand oder Abschluss erlauben"
-#: common/models.py:1535
+#: common/models.py:1542
msgid "Enable password forgot"
msgstr "Passwort vergessen aktivieren"
-#: common/models.py:1536
+#: common/models.py:1543
msgid "Enable password forgot function on the login pages"
msgstr "Passwort-vergessen-Funktion auf den Anmeldeseiten aktivieren"
-#: common/models.py:1542
+#: common/models.py:1549
msgid "Enable registration"
msgstr "Registrierung erlauben"
-#: common/models.py:1543
+#: common/models.py:1550
msgid "Enable self-registration for users on the login pages"
msgstr "Selbstregistrierung für Benutzer auf den Anmeldeseiten aktivieren"
-#: common/models.py:1549
+#: common/models.py:1556
msgid "Enable SSO"
msgstr "SSO aktivieren"
-#: common/models.py:1550
+#: common/models.py:1557
msgid "Enable SSO on the login pages"
msgstr "SSO auf den Anmeldeseiten aktivieren"
-#: common/models.py:1556
+#: common/models.py:1563
msgid "Enable SSO registration"
msgstr "SSO Selbstregistrierung aktivieren"
-#: common/models.py:1557
+#: common/models.py:1564
msgid "Enable self-registration via SSO for users on the login pages"
msgstr "Selbstregistrierung über SSO für Benutzer auf den Anmeldeseiten aktivieren"
-#: common/models.py:1563
+#: common/models.py:1570
msgid "Email required"
msgstr "Email-Adresse erforderlich"
-#: common/models.py:1564
+#: common/models.py:1571
msgid "Require user to supply mail on signup"
msgstr "Benutzer müssen bei der Registrierung eine E-Mail angeben"
-#: common/models.py:1570
+#: common/models.py:1577
msgid "Auto-fill SSO users"
msgstr "SSO-Benutzer automatisch ausfüllen"
-#: common/models.py:1571
+#: common/models.py:1578
msgid "Automatically fill out user-details from SSO account-data"
msgstr "Benutzer-Details automatisch aus SSO-Konto ausfüllen"
-#: common/models.py:1577
+#: common/models.py:1584
msgid "Mail twice"
msgstr "E-Mail zweimal"
-#: common/models.py:1578
+#: common/models.py:1585
msgid "On signup ask users twice for their mail"
msgstr "Bei der Registrierung den Benutzer zweimal nach der E-Mail-Adresse fragen"
-#: common/models.py:1584
+#: common/models.py:1591
msgid "Password twice"
msgstr "Passwort zweimal"
-#: common/models.py:1585
+#: common/models.py:1592
msgid "On signup ask users twice for their password"
msgstr "Bei der Registrierung den Benutzer zweimal nach dem Passwort fragen"
-#: common/models.py:1591
+#: common/models.py:1598
msgid "Allowed domains"
msgstr "Erlaubte Domains"
-#: common/models.py:1592
+#: common/models.py:1599
msgid "Restrict signup to certain domains (comma-separated, starting with @)"
msgstr ""
-#: common/models.py:1598
+#: common/models.py:1605
msgid "Group on signup"
msgstr "Gruppe bei Registrierung"
-#: common/models.py:1599
+#: common/models.py:1606
msgid "Group to which new users are assigned on registration"
msgstr "Gruppe der neue Benutzer bei der Registrierung zugewiesen werden"
-#: common/models.py:1605
+#: common/models.py:1612
msgid "Enforce MFA"
msgstr "MFA erzwingen"
-#: common/models.py:1606
+#: common/models.py:1613
msgid "Users must use multifactor security."
msgstr "Benutzer müssen Multifaktor-Authentifizierung verwenden."
-#: common/models.py:1612
+#: common/models.py:1619
msgid "Check plugins on startup"
msgstr "Plugins beim Start prüfen"
-#: common/models.py:1613
+#: common/models.py:1620
msgid "Check that all plugins are installed on startup - enable in container environments"
msgstr "Beim Start überprüfen, ob alle Plugins installiert sind - Für Container aktivieren"
-#: common/models.py:1620
-msgid "Check plugin signatures"
-msgstr "Plugin-Signaturen überprüfen"
-
-#: common/models.py:1621
-msgid "Check and show signatures for plugins"
-msgstr "Signaturen für Plugins prüfen und anzeigen"
-
#: common/models.py:1628
msgid "Enable URL integration"
msgstr "URL-Integration aktivieren"
@@ -2850,7 +2843,7 @@ msgstr "Löschintervall für Berichte"
msgid "Stocktake reports will be deleted after specified number of days"
msgstr "Inventurberichte werden nach der angegebenen Anzahl von Tagen gelöscht"
-#: common/models.py:1710 common/models.py:2147
+#: common/models.py:1710 common/models.py:2133
msgid "Settings key (must be unique - case insensitive"
msgstr "Einstellungs-Schlüssel (muss einzigartig sein, Groß-/ Kleinschreibung wird nicht beachtet)"
@@ -2891,528 +2884,513 @@ msgid "Show latest parts on the homepage"
msgstr "Zeige neueste Teile auf der Startseite"
#: common/models.py:1779
-msgid "Recent Part Count"
-msgstr "Aktuelle Teile-Stände"
-
-#: common/models.py:1780
-msgid "Number of recent parts to display on index page"
-msgstr "Anzahl der neusten Teile auf der Startseite"
-
-#: common/models.py:1786
msgid "Show unvalidated BOMs"
msgstr "Nicht validierte Stücklisten anzeigen"
-#: common/models.py:1787
+#: common/models.py:1780
msgid "Show BOMs that await validation on the homepage"
msgstr "Zeige Stücklisten, die noch nicht validiert sind, auf der Startseite"
-#: common/models.py:1793
+#: common/models.py:1786
msgid "Show recent stock changes"
msgstr "Neueste Bestandänderungen anzeigen"
-#: common/models.py:1794
+#: common/models.py:1787
msgid "Show recently changed stock items on the homepage"
msgstr "Zeige zuletzt geänderte Lagerbestände auf der Startseite"
-#: common/models.py:1800
-msgid "Recent Stock Count"
-msgstr "aktueller Bestand"
-
-#: common/models.py:1801
-msgid "Number of recent stock items to display on index page"
-msgstr "Anzahl des geänderten Bestands auf der Startseite"
-
-#: common/models.py:1807
+#: common/models.py:1793
msgid "Show low stock"
msgstr "Niedrigen Bestand anzeigen"
-#: common/models.py:1808
+#: common/models.py:1794
msgid "Show low stock items on the homepage"
msgstr "Zeige geringen Bestand auf der Startseite"
-#: common/models.py:1814
+#: common/models.py:1800
msgid "Show depleted stock"
msgstr "Lerren Bestand anzeigen"
-#: common/models.py:1815
+#: common/models.py:1801
msgid "Show depleted stock items on the homepage"
msgstr "Zeige aufgebrauchte Lagerartikel auf der Startseite"
-#: common/models.py:1821
+#: common/models.py:1807
msgid "Show needed stock"
msgstr "Benötigten Bestand anzeigen"
-#: common/models.py:1822
+#: common/models.py:1808
msgid "Show stock items needed for builds on the homepage"
msgstr "Zeige Bestand für Bauaufträge auf der Startseite"
-#: common/models.py:1828
+#: common/models.py:1814
msgid "Show expired stock"
msgstr "Abgelaufenen Bestand anzeigen"
-#: common/models.py:1829
+#: common/models.py:1815
msgid "Show expired stock items on the homepage"
msgstr "Zeige abgelaufene Lagerbestände auf der Startseite"
-#: common/models.py:1835
+#: common/models.py:1821
msgid "Show stale stock"
msgstr "Alten Bestand anzeigen"
-#: common/models.py:1836
+#: common/models.py:1822
msgid "Show stale stock items on the homepage"
msgstr "Zeige überfällige Lagerartikel auf der Startseite"
-#: common/models.py:1842
+#: common/models.py:1828
msgid "Show pending builds"
msgstr "Ausstehende Bauaufträge anzeigen"
-#: common/models.py:1843
+#: common/models.py:1829
msgid "Show pending builds on the homepage"
msgstr "Zeige ausstehende Bauaufträge auf der Startseite"
-#: common/models.py:1849
+#: common/models.py:1835
msgid "Show overdue builds"
msgstr "Zeige überfällige Bauaufträge"
-#: common/models.py:1850
+#: common/models.py:1836
msgid "Show overdue builds on the homepage"
msgstr "Zeige überfällige Bauaufträge auf der Startseite"
-#: common/models.py:1856
+#: common/models.py:1842
msgid "Show outstanding POs"
msgstr "Ausstehende POs anzeigen"
-#: common/models.py:1857
+#: common/models.py:1843
msgid "Show outstanding POs on the homepage"
msgstr "Zeige ausstehende POs auf der Startseite"
-#: common/models.py:1863
+#: common/models.py:1849
msgid "Show overdue POs"
msgstr "Überfällige POs anzeigen"
-#: common/models.py:1864
+#: common/models.py:1850
msgid "Show overdue POs on the homepage"
msgstr "Zeige überfällige POs auf der Startseite"
-#: common/models.py:1870
+#: common/models.py:1856
msgid "Show outstanding SOs"
msgstr "Ausstehende SOs anzeigen"
-#: common/models.py:1871
+#: common/models.py:1857
msgid "Show outstanding SOs on the homepage"
msgstr "Zeige ausstehende SOs auf der Startseite"
-#: common/models.py:1877
+#: common/models.py:1863
msgid "Show overdue SOs"
msgstr "Überfällige SOs anzeigen"
-#: common/models.py:1878
+#: common/models.py:1864
msgid "Show overdue SOs on the homepage"
msgstr "Zeige überfällige SOs auf der Startseite"
-#: common/models.py:1884
+#: common/models.py:1870
msgid "Show pending SO shipments"
msgstr ""
-#: common/models.py:1885
+#: common/models.py:1871
msgid "Show pending SO shipments on the homepage"
msgstr ""
-#: common/models.py:1891
+#: common/models.py:1877
msgid "Show News"
msgstr "Zeige Neuigkeiten"
-#: common/models.py:1892
+#: common/models.py:1878
msgid "Show news on the homepage"
msgstr "Neuigkeiten auf der Startseite anzeigen"
-#: common/models.py:1898
+#: common/models.py:1884
msgid "Inline label display"
msgstr "Label inline anzeigen"
-#: common/models.py:1899
+#: common/models.py:1885
msgid "Display PDF labels in the browser, instead of downloading as a file"
msgstr "PDF-Labels im Browser anzeigen, anstatt als Datei herunterzuladen"
-#: common/models.py:1905
+#: common/models.py:1891
msgid "Default label printer"
msgstr "Standard-Etikettendrucker"
-#: common/models.py:1906
+#: common/models.py:1892
msgid "Configure which label printer should be selected by default"
msgstr "Einen standardmäßig ausgewählten Etikettendrucker konfigurieren"
-#: common/models.py:1912
+#: common/models.py:1898
msgid "Inline report display"
msgstr "Berichte inline anzeigen"
-#: common/models.py:1913
+#: common/models.py:1899
msgid "Display PDF reports in the browser, instead of downloading as a file"
msgstr "PDF-Berichte im Browser anzeigen, anstatt als Datei herunterzuladen"
-#: common/models.py:1919
+#: common/models.py:1905
msgid "Search Parts"
msgstr "Teile suchen"
-#: common/models.py:1920
+#: common/models.py:1906
msgid "Display parts in search preview window"
msgstr "Teile in der Suchvorschau anzeigen"
-#: common/models.py:1926
+#: common/models.py:1912
msgid "Search Supplier Parts"
msgstr "Zulieferteile durchsuchen"
-#: common/models.py:1927
+#: common/models.py:1913
msgid "Display supplier parts in search preview window"
msgstr "Zuliefererteile in der Suchvorschau anzeigen"
-#: common/models.py:1933
+#: common/models.py:1919
msgid "Search Manufacturer Parts"
msgstr "Herstellerteile durchsuchen"
-#: common/models.py:1934
+#: common/models.py:1920
msgid "Display manufacturer parts in search preview window"
msgstr "Herstellerteile in der Suchvorschau anzeigen"
-#: common/models.py:1940
+#: common/models.py:1926
msgid "Hide Inactive Parts"
msgstr "Inaktive Teile ausblenden"
-#: common/models.py:1941
+#: common/models.py:1927
msgid "Excluded inactive parts from search preview window"
msgstr "Inaktive Teile in der Suchvorschau ausblenden"
-#: common/models.py:1947
+#: common/models.py:1933
msgid "Search Categories"
msgstr "Kategorien durchsuchen"
-#: common/models.py:1948
+#: common/models.py:1934
msgid "Display part categories in search preview window"
msgstr "Teilekategorien in der Suchvorschau anzeigen"
-#: common/models.py:1954
+#: common/models.py:1940
msgid "Search Stock"
msgstr "Bestand durchsuchen"
-#: common/models.py:1955
+#: common/models.py:1941
msgid "Display stock items in search preview window"
msgstr "Lagerartikel in Suchvorschau anzeigen"
-#: common/models.py:1961
+#: common/models.py:1947
msgid "Hide Unavailable Stock Items"
msgstr "Nicht verfügbare Artikel ausblenden"
-#: common/models.py:1962
+#: common/models.py:1948
msgid "Exclude stock items which are not available from the search preview window"
msgstr "Nicht verfügbare Lagerartikel aus der Suchvorschau ausschließen"
-#: common/models.py:1968
+#: common/models.py:1954
msgid "Search Locations"
msgstr "Lagerorte durchsuchen"
-#: common/models.py:1969
+#: common/models.py:1955
msgid "Display stock locations in search preview window"
msgstr "Lagerorte in Suchvorschau anzeigen"
-#: common/models.py:1975
+#: common/models.py:1961
msgid "Search Companies"
msgstr "Firmen durchsuchen"
-#: common/models.py:1976
+#: common/models.py:1962
msgid "Display companies in search preview window"
msgstr "Firmen in der Suchvorschau anzeigen"
-#: common/models.py:1982
+#: common/models.py:1968
msgid "Search Build Orders"
msgstr "Bauaufträge durchsuchen"
-#: common/models.py:1983
+#: common/models.py:1969
msgid "Display build orders in search preview window"
msgstr "Bauaufträge in der Suchvorschau anzeigen"
-#: common/models.py:1989
+#: common/models.py:1975
msgid "Search Purchase Orders"
msgstr "Bestellungen durchsuchen"
-#: common/models.py:1990
+#: common/models.py:1976
msgid "Display purchase orders in search preview window"
msgstr "Bestellungen in der Suchvorschau anzeigen"
-#: common/models.py:1996
+#: common/models.py:1982
msgid "Exclude Inactive Purchase Orders"
msgstr "Inaktive Bestellungen ausblenden"
-#: common/models.py:1997
+#: common/models.py:1983
msgid "Exclude inactive purchase orders from search preview window"
msgstr "Inaktive Bestellungen in der Suchvorschau ausblenden"
-#: common/models.py:2003
+#: common/models.py:1989
msgid "Search Sales Orders"
msgstr "Aufträge durchsuchen"
-#: common/models.py:2004
+#: common/models.py:1990
msgid "Display sales orders in search preview window"
msgstr "Aufträge in der Suchvorschau anzeigen"
-#: common/models.py:2010
+#: common/models.py:1996
msgid "Exclude Inactive Sales Orders"
msgstr "Inaktive Aufträge ausblenden"
-#: common/models.py:2011
+#: common/models.py:1997
msgid "Exclude inactive sales orders from search preview window"
msgstr "Inaktive Aufträge in der Suchvorschau ausblenden"
-#: common/models.py:2017
+#: common/models.py:2003
msgid "Search Return Orders"
msgstr ""
-#: common/models.py:2018
+#: common/models.py:2004
msgid "Display return orders in search preview window"
msgstr ""
-#: common/models.py:2024
+#: common/models.py:2010
msgid "Exclude Inactive Return Orders"
msgstr ""
-#: common/models.py:2025
+#: common/models.py:2011
msgid "Exclude inactive return orders from search preview window"
msgstr ""
-#: common/models.py:2031
+#: common/models.py:2017
msgid "Search Preview Results"
msgstr "Anzahl Suchergebnisse"
-#: common/models.py:2032
+#: common/models.py:2018
msgid "Number of results to show in each section of the search preview window"
msgstr "Anzahl der Ergebnisse, die in der Vorschau pro Sektion angezeigt werden sollen"
-#: common/models.py:2038
+#: common/models.py:2024
msgid "Regex Search"
msgstr "Regex Suche"
-#: common/models.py:2039
+#: common/models.py:2025
msgid "Enable regular expressions in search queries"
msgstr ""
-#: common/models.py:2045
+#: common/models.py:2031
msgid "Whole Word Search"
msgstr ""
-#: common/models.py:2046
+#: common/models.py:2032
msgid "Search queries return results for whole word matches"
msgstr ""
-#: common/models.py:2052
+#: common/models.py:2038
msgid "Show Quantity in Forms"
msgstr "zeige Bestand in Eingabemasken"
-#: common/models.py:2053
+#: common/models.py:2039
msgid "Display available part quantity in some forms"
msgstr "Zeige den verfügbaren Bestand in einigen Eingabemasken"
-#: common/models.py:2059
+#: common/models.py:2045
msgid "Escape Key Closes Forms"
msgstr "Esc-Taste schließt Formulare"
-#: common/models.py:2060
+#: common/models.py:2046
msgid "Use the escape key to close modal forms"
msgstr "Benutze die Esc-Taste, um Formulare zu schließen"
-#: common/models.py:2066
+#: common/models.py:2052
msgid "Fixed Navbar"
msgstr "Fixierter Navigationsleiste"
-#: common/models.py:2067
+#: common/models.py:2053
msgid "The navbar position is fixed to the top of the screen"
msgstr "Position der Navigationsleiste am oberen Bildschirmrand fixieren"
-#: common/models.py:2073
+#: common/models.py:2059
msgid "Date Format"
msgstr "Datumsformat"
-#: common/models.py:2074
+#: common/models.py:2060
msgid "Preferred format for displaying dates"
msgstr "Bevorzugtes Format für die Anzeige von Daten"
-#: common/models.py:2088 part/templates/part/detail.html:41
+#: common/models.py:2074 part/templates/part/detail.html:41
msgid "Part Scheduling"
msgstr "Teilzeitplanung"
-#: common/models.py:2089
+#: common/models.py:2075
msgid "Display part scheduling information"
msgstr "Zeige Zeitplanung für Teile"
-#: common/models.py:2095 part/templates/part/detail.html:62
+#: common/models.py:2081 part/templates/part/detail.html:62
msgid "Part Stocktake"
msgstr "Inventur"
-#: common/models.py:2096
+#: common/models.py:2082
msgid "Display part stocktake information (if stocktake functionality is enabled)"
msgstr "Zeigt Inventur-Informationen an (falls die Inventurfunktion aktiviert ist)"
-#: common/models.py:2102
+#: common/models.py:2088
msgid "Table String Length"
msgstr "Zeichenkettenlänge in Tabellen"
-#: common/models.py:2103
+#: common/models.py:2089
msgid "Maximimum length limit for strings displayed in table views"
msgstr "Maximale Länge der Zeichenketten, die in Tabellenansichten angezeigt werden"
-#: common/models.py:2112
+#: common/models.py:2098
msgid "Default part label template"
msgstr ""
-#: common/models.py:2113
+#: common/models.py:2099
msgid "The part label template to be automatically selected"
msgstr ""
-#: common/models.py:2121
+#: common/models.py:2107
msgid "Default stock item template"
msgstr ""
-#: common/models.py:2122
+#: common/models.py:2108
msgid "The stock item label template to be automatically selected"
msgstr ""
-#: common/models.py:2130
+#: common/models.py:2116
msgid "Default stock location label template"
msgstr ""
-#: common/models.py:2131
+#: common/models.py:2117
msgid "The stock location label template to be automatically selected"
msgstr ""
-#: common/models.py:2177
+#: common/models.py:2163
msgid "Price break quantity"
msgstr "Preisstaffelungs Anzahl"
-#: common/models.py:2184 company/serializers.py:434 order/admin.py:43
-#: order/models.py:1132 order/models.py:1939
-#: templates/js/translated/company.js:1433 templates/js/translated/part.js:1856
+#: common/models.py:2170 company/serializers.py:491 order/admin.py:43
+#: order/models.py:1145 order/models.py:1952
+#: templates/js/translated/company.js:1854 templates/js/translated/part.js:1855
#: templates/js/translated/pricing.js:621
-#: templates/js/translated/return_order.js:725
+#: templates/js/translated/return_order.js:737
msgid "Price"
msgstr "Preis"
-#: common/models.py:2185
+#: common/models.py:2171
msgid "Unit price at specified quantity"
msgstr "Stückpreis für die angegebene Anzahl"
-#: common/models.py:2345 common/models.py:2523
+#: common/models.py:2331 common/models.py:2509
msgid "Endpoint"
msgstr "Endpunkt"
-#: common/models.py:2346
+#: common/models.py:2332
msgid "Endpoint at which this webhook is received"
msgstr "Endpunkt, an dem dieser Webhook empfangen wird"
-#: common/models.py:2355
+#: common/models.py:2341
msgid "Name for this webhook"
msgstr "Name für diesen Webhook"
-#: common/models.py:2360 part/admin.py:50 part/models.py:1023
-#: plugin/models.py:47 templates/js/translated/table_filters.js:105
-#: templates/js/translated/table_filters.js:189
-#: templates/js/translated/table_filters.js:434
-#: templates/js/translated/table_filters.js:450
-#: templates/js/translated/table_filters.js:629
+#: common/models.py:2346 part/admin.py:50 part/models.py:1024
+#: plugin/models.py:48 templates/js/translated/table_filters.js:111
+#: templates/js/translated/table_filters.js:195
+#: templates/js/translated/table_filters.js:440
+#: templates/js/translated/table_filters.js:456
+#: templates/js/translated/table_filters.js:651
msgid "Active"
msgstr "Aktiv"
-#: common/models.py:2361
+#: common/models.py:2347
msgid "Is this webhook active"
msgstr "Ist dieser Webhook aktiv"
-#: common/models.py:2375
+#: common/models.py:2361
msgid "Token"
msgstr "Token"
-#: common/models.py:2376
+#: common/models.py:2362
msgid "Token for access"
msgstr "Token für Zugang"
-#: common/models.py:2383
+#: common/models.py:2369
msgid "Secret"
msgstr "Geheimnis"
-#: common/models.py:2384
+#: common/models.py:2370
msgid "Shared secret for HMAC"
msgstr "Shared Secret für HMAC"
-#: common/models.py:2490
+#: common/models.py:2476
msgid "Message ID"
msgstr "Nachrichten-ID"
-#: common/models.py:2491
+#: common/models.py:2477
msgid "Unique identifier for this message"
msgstr "Eindeutige Kennung für diese Nachricht"
-#: common/models.py:2499
+#: common/models.py:2485
msgid "Host"
msgstr "Host"
-#: common/models.py:2500
+#: common/models.py:2486
msgid "Host from which this message was received"
msgstr "Host von dem diese Nachricht empfangen wurde"
-#: common/models.py:2507
+#: common/models.py:2493
msgid "Header"
msgstr "Kopfzeile"
-#: common/models.py:2508
+#: common/models.py:2494
msgid "Header of this message"
msgstr "Header dieser Nachricht"
-#: common/models.py:2514
+#: common/models.py:2500
msgid "Body"
msgstr "Body"
-#: common/models.py:2515
+#: common/models.py:2501
msgid "Body of this message"
msgstr "Body dieser Nachricht"
-#: common/models.py:2524
+#: common/models.py:2510
msgid "Endpoint on which this message was received"
msgstr "Endpunkt, über den diese Nachricht empfangen wurde"
-#: common/models.py:2529
+#: common/models.py:2515
msgid "Worked on"
msgstr "Bearbeitet"
-#: common/models.py:2530
+#: common/models.py:2516
msgid "Was the work on this message finished?"
msgstr "Wurde die Arbeit an dieser Nachricht abgeschlossen?"
-#: common/models.py:2684
+#: common/models.py:2670
msgid "Id"
msgstr "ID"
-#: common/models.py:2690 templates/js/translated/news.js:44
+#: common/models.py:2676 templates/js/translated/company.js:996
+#: templates/js/translated/news.js:44
msgid "Title"
msgstr "Titel"
-#: common/models.py:2700 templates/js/translated/news.js:60
+#: common/models.py:2686 templates/js/translated/news.js:60
msgid "Published"
msgstr "Veröffentlicht"
-#: common/models.py:2705 templates/InvenTree/settings/plugin_settings.html:32
+#: common/models.py:2691 templates/InvenTree/settings/plugin_settings.html:32
#: templates/js/translated/news.js:56 templates/js/translated/plugin.js:106
msgid "Author"
msgstr "Autor"
-#: common/models.py:2710 templates/js/translated/news.js:52
+#: common/models.py:2696 templates/js/translated/news.js:52
msgid "Summary"
msgstr "Zusammenfassung"
-#: common/models.py:2715
+#: common/models.py:2701
msgid "Read"
msgstr "Gelesen"
-#: common/models.py:2716
+#: common/models.py:2702
msgid "Was this news item read?"
msgstr "Wurde diese Nachricht gelesen?"
-#: common/models.py:2736 company/models.py:143 part/models.py:914
+#: common/models.py:2722 company/models.py:139 part/models.py:915
#: report/templates/report/inventree_bill_of_materials_report.html:126
#: report/templates/report/inventree_bill_of_materials_report.html:148
#: report/templates/report/inventree_return_order_report_base.html:35
@@ -3422,7 +3400,7 @@ msgstr "Wurde diese Nachricht gelesen?"
msgid "Image"
msgstr "Bild"
-#: common/models.py:2737
+#: common/models.py:2723
msgid "Image file"
msgstr "Bilddatei"
@@ -3499,7 +3477,7 @@ msgstr "Firmenbeschreibung"
#: company/models.py:113 company/templates/company/company_base.html:101
#: templates/InvenTree/settings/plugin_settings.html:54
-#: templates/js/translated/company.js:514
+#: templates/js/translated/company.js:521
msgid "Website"
msgstr "Website"
@@ -3507,303 +3485,387 @@ msgstr "Website"
msgid "Company website URL"
msgstr "Firmenwebsite Adresse/URL"
-#: company/models.py:118 company/templates/company/company_base.html:119
-msgid "Address"
-msgstr "Adresse"
-
-#: company/models.py:119
-msgid "Company address"
-msgstr "Firmenadresse"
-
-#: company/models.py:122
+#: company/models.py:118
msgid "Phone number"
msgstr "Kontakt-Tel."
-#: company/models.py:123
+#: company/models.py:119
msgid "Contact phone number"
msgstr "Kontakt-Telefon"
-#: company/models.py:126 company/templates/company/company_base.html:133
+#: company/models.py:122 company/templates/company/company_base.html:133
#: templates/InvenTree/settings/user.html:49
-#: templates/js/translated/company.js:659
+#: templates/js/translated/company.js:666
msgid "Email"
msgstr "Email"
-#: company/models.py:126
+#: company/models.py:122
msgid "Contact email address"
msgstr "Kontakt-Email"
-#: company/models.py:129 company/templates/company/company_base.html:140
-#: order/models.py:266 order/templates/order/order_base.html:207
+#: company/models.py:125 company/templates/company/company_base.html:140
+#: order/models.py:270 order/templates/order/order_base.html:203
#: order/templates/order/return_order_base.html:175
#: order/templates/order/sales_order_base.html:215
msgid "Contact"
msgstr "Kontakt"
-#: company/models.py:130
+#: company/models.py:126
msgid "Point of contact"
msgstr "Anlaufstelle"
-#: company/models.py:132
+#: company/models.py:128
msgid "Link to external company information"
msgstr "Link auf externe Firmeninformation"
-#: company/models.py:146
+#: company/models.py:142
msgid "is customer"
msgstr "ist Kunde"
-#: company/models.py:146
+#: company/models.py:142
msgid "Do you sell items to this company?"
msgstr "Verkaufen Sie Teile an diese Firma?"
-#: company/models.py:148
+#: company/models.py:144
msgid "is supplier"
msgstr "ist Zulieferer"
-#: company/models.py:148
+#: company/models.py:144
msgid "Do you purchase items from this company?"
msgstr "Kaufen Sie Teile von dieser Firma?"
-#: company/models.py:150
+#: company/models.py:146
msgid "is manufacturer"
msgstr "ist Hersteller"
-#: company/models.py:150
+#: company/models.py:146
msgid "Does this company manufacture parts?"
msgstr "Produziert diese Firma Teile?"
-#: company/models.py:157
+#: company/models.py:153
msgid "Default currency used for this company"
msgstr "Standard-Währung für diese Firma"
-#: company/models.py:223 company/templates/company/company_base.html:8
+#: company/models.py:235 company/models.py:328
+#: company/templates/company/company_base.html:8
#: company/templates/company/company_base.html:12
-#: templates/InvenTree/search.html:178 templates/js/translated/company.js:487
+#: templates/InvenTree/search.html:178 templates/js/translated/company.js:494
msgid "Company"
msgstr "Firma"
-#: company/models.py:278 company/models.py:553 stock/models.py:675
-#: stock/serializers.py:155 stock/templates/stock/item_base.html:143
-#: templates/js/translated/bom.js:621
+#: company/models.py:324
+msgid "Company already has a primary address"
+msgstr ""
+
+#: company/models.py:329
+msgid "Select company"
+msgstr ""
+
+#: company/models.py:332
+msgid "Address title"
+msgstr ""
+
+#: company/models.py:333
+msgid "Title describing the address entry"
+msgstr ""
+
+#: company/models.py:337
+msgid "Primary address"
+msgstr ""
+
+#: company/models.py:338
+msgid "Set as primary address"
+msgstr ""
+
+#: company/models.py:341 templates/js/translated/company.js:941
+#: templates/js/translated/company.js:1002
+msgid "Line 1"
+msgstr ""
+
+#: company/models.py:342
+msgid "Address line 1"
+msgstr ""
+
+#: company/models.py:346 templates/js/translated/company.js:942
+#: templates/js/translated/company.js:1008
+msgid "Line 2"
+msgstr ""
+
+#: company/models.py:347
+msgid "Address line 2"
+msgstr ""
+
+#: company/models.py:351 company/models.py:352
+#: templates/js/translated/company.js:1014
+msgid "Postal code"
+msgstr ""
+
+#: company/models.py:356
+msgid "City/Region"
+msgstr ""
+
+#: company/models.py:357
+msgid "Postal code city/region"
+msgstr ""
+
+#: company/models.py:361
+msgid "State/Province"
+msgstr ""
+
+#: company/models.py:362
+msgid "State or province"
+msgstr ""
+
+#: company/models.py:366 templates/js/translated/company.js:1032
+msgid "Country"
+msgstr ""
+
+#: company/models.py:367
+msgid "Address country"
+msgstr ""
+
+#: company/models.py:371
+msgid "Courier shipping notes"
+msgstr ""
+
+#: company/models.py:372
+msgid "Notes for shipping courier"
+msgstr ""
+
+#: company/models.py:376
+msgid "Internal shipping notes"
+msgstr ""
+
+#: company/models.py:377
+msgid "Shipping notes for internal use"
+msgstr ""
+
+#: company/models.py:382
+msgid "Link to address information (external)"
+msgstr ""
+
+#: company/models.py:427 company/models.py:702 stock/models.py:675
+#: stock/serializers.py:204 stock/templates/stock/item_base.html:143
+#: templates/js/translated/bom.js:622
msgid "Base Part"
msgstr "Basisteil"
-#: company/models.py:282 company/models.py:557
+#: company/models.py:431 company/models.py:706
msgid "Select part"
msgstr "Teil auswählen"
-#: company/models.py:293 company/templates/company/company_base.html:77
+#: company/models.py:442 company/templates/company/company_base.html:77
#: company/templates/company/manufacturer_part.html:90
-#: company/templates/company/supplier_part.html:146 part/serializers.py:354
+#: company/templates/company/supplier_part.html:146 part/serializers.py:404
#: stock/templates/stock/item_base.html:208
-#: templates/js/translated/company.js:498
-#: templates/js/translated/company.js:824
-#: templates/js/translated/company.js:954
-#: templates/js/translated/company.js:1221
-#: templates/js/translated/table_filters.js:709
+#: templates/js/translated/company.js:505
+#: templates/js/translated/company.js:1149
+#: templates/js/translated/company.js:1327
+#: templates/js/translated/company.js:1642
+#: templates/js/translated/table_filters.js:731
msgid "Manufacturer"
msgstr "Hersteller"
-#: company/models.py:294
+#: company/models.py:443
msgid "Select manufacturer"
msgstr "Hersteller auswählen"
-#: company/models.py:300 company/templates/company/manufacturer_part.html:101
-#: company/templates/company/supplier_part.html:154 part/serializers.py:360
-#: templates/js/translated/company.js:340
-#: templates/js/translated/company.js:823
-#: templates/js/translated/company.js:970
-#: templates/js/translated/company.js:1240 templates/js/translated/part.js:1773
-#: templates/js/translated/purchase_order.js:1814
-#: templates/js/translated/purchase_order.js:2021
+#: company/models.py:449 company/templates/company/manufacturer_part.html:101
+#: company/templates/company/supplier_part.html:154 part/serializers.py:410
+#: templates/js/translated/company.js:350
+#: templates/js/translated/company.js:1148
+#: templates/js/translated/company.js:1343
+#: templates/js/translated/company.js:1661 templates/js/translated/part.js:1772
+#: templates/js/translated/purchase_order.js:1829
+#: templates/js/translated/purchase_order.js:2031
msgid "MPN"
msgstr "MPN"
-#: company/models.py:301
+#: company/models.py:450
msgid "Manufacturer Part Number"
msgstr "Hersteller-Teilenummer"
-#: company/models.py:307
+#: company/models.py:456
msgid "URL for external manufacturer part link"
msgstr "Externe URL für das Herstellerteil"
-#: company/models.py:313
+#: company/models.py:462
msgid "Manufacturer part description"
msgstr "Teilbeschreibung des Herstellers"
-#: company/models.py:360 company/models.py:384 company/models.py:578
+#: company/models.py:509 company/models.py:533 company/models.py:727
#: company/templates/company/manufacturer_part.html:7
#: company/templates/company/manufacturer_part.html:24
#: stock/templates/stock/item_base.html:218
msgid "Manufacturer Part"
msgstr "Herstellerteil"
-#: company/models.py:391
+#: company/models.py:540
msgid "Parameter name"
msgstr "Parametername"
-#: company/models.py:397
+#: company/models.py:546
#: report/templates/report/inventree_test_report_base.html:104
-#: stock/models.py:2255 templates/js/translated/company.js:872
-#: templates/js/translated/company.js:1077 templates/js/translated/part.js:1465
-#: templates/js/translated/stock.js:1446
+#: stock/models.py:2255 templates/js/translated/company.js:1197
+#: templates/js/translated/company.js:1450 templates/js/translated/part.js:1464
+#: templates/js/translated/stock.js:1445
msgid "Value"
msgstr "Wert"
-#: company/models.py:398
+#: company/models.py:547
msgid "Parameter value"
msgstr "Parameterwert"
-#: company/models.py:404 company/templates/company/supplier_part.html:169
-#: part/admin.py:40 part/models.py:987 part/models.py:3407
+#: company/models.py:553 company/templates/company/supplier_part.html:169
+#: part/admin.py:40 part/models.py:988 part/models.py:3441
#: part/templates/part/part_base.html:286
-#: templates/js/translated/company.js:1083 templates/js/translated/part.js:1484
-#: templates/js/translated/part.js:1588 templates/js/translated/part.js:2262
+#: templates/js/translated/company.js:1456 templates/js/translated/part.js:1483
+#: templates/js/translated/part.js:1587 templates/js/translated/part.js:2338
msgid "Units"
msgstr "Einheiten"
-#: company/models.py:405
+#: company/models.py:554
msgid "Parameter units"
msgstr "Parametereinheit"
-#: company/models.py:498
+#: company/models.py:647
msgid "Pack units must be compatible with the base part units"
msgstr ""
-#: company/models.py:504
+#: company/models.py:653
msgid "Pack units must be greater than zero"
msgstr ""
-#: company/models.py:520
+#: company/models.py:669
msgid "Linked manufacturer part must reference the same base part"
msgstr "Verlinktes Herstellerteil muss dasselbe Basisteil referenzieren"
-#: company/models.py:564 company/templates/company/company_base.html:82
-#: company/templates/company/supplier_part.html:130 order/models.py:382
-#: order/templates/order/order_base.html:140 part/bom.py:285 part/bom.py:313
-#: part/serializers.py:343 stock/templates/stock/item_base.html:225
+#: company/models.py:713 company/templates/company/company_base.html:82
+#: company/templates/company/supplier_part.html:130 order/models.py:395
+#: order/templates/order/order_base.html:136 part/bom.py:285 part/bom.py:313
+#: part/serializers.py:393 stock/templates/stock/item_base.html:225
#: templates/email/overdue_purchase_order.html:16
-#: templates/js/translated/company.js:339
-#: templates/js/translated/company.js:502
-#: templates/js/translated/company.js:1194 templates/js/translated/part.js:1741
+#: templates/js/translated/company.js:349
+#: templates/js/translated/company.js:509
+#: templates/js/translated/company.js:1615 templates/js/translated/part.js:1740
#: templates/js/translated/pricing.js:498
-#: templates/js/translated/purchase_order.js:1653
-#: templates/js/translated/table_filters.js:713
+#: templates/js/translated/purchase_order.js:1668
+#: templates/js/translated/table_filters.js:735
msgid "Supplier"
msgstr "Zulieferer"
-#: company/models.py:565
+#: company/models.py:714
msgid "Select supplier"
msgstr "Zulieferer auswählen"
-#: company/models.py:570 company/templates/company/supplier_part.html:140
-#: part/bom.py:286 part/bom.py:314 part/serializers.py:349
-#: templates/js/translated/company.js:338 templates/js/translated/part.js:1759
+#: company/models.py:719 company/templates/company/supplier_part.html:140
+#: part/bom.py:286 part/bom.py:314 part/serializers.py:399
+#: templates/js/translated/company.js:348 templates/js/translated/part.js:1758
#: templates/js/translated/pricing.js:510
-#: templates/js/translated/purchase_order.js:1813
-#: templates/js/translated/purchase_order.js:1996
+#: templates/js/translated/purchase_order.js:1828
+#: templates/js/translated/purchase_order.js:2006
msgid "SKU"
msgstr "SKU (Lagerbestandseinheit)"
-#: company/models.py:571 part/serializers.py:349
+#: company/models.py:720 part/serializers.py:399
msgid "Supplier stock keeping unit"
msgstr "Lagerbestandseinheit (SKU) des Zulieferers"
-#: company/models.py:579
+#: company/models.py:728
msgid "Select manufacturer part"
msgstr "Herstellerteil auswählen"
-#: company/models.py:585
+#: company/models.py:734
msgid "URL for external supplier part link"
msgstr "Teil-URL des Zulieferers"
-#: company/models.py:591
+#: company/models.py:740
msgid "Supplier part description"
msgstr "Zuliefererbeschreibung des Teils"
-#: company/models.py:596 company/templates/company/supplier_part.html:188
-#: part/admin.py:279 part/models.py:3801 part/templates/part/upload_bom.html:59
+#: company/models.py:745 company/templates/company/supplier_part.html:188
+#: part/admin.py:279 part/models.py:3845 part/templates/part/upload_bom.html:59
#: report/templates/report/inventree_bill_of_materials_report.html:140
#: report/templates/report/inventree_po_report_base.html:32
#: report/templates/report/inventree_return_order_report_base.html:27
#: report/templates/report/inventree_so_report_base.html:32
-#: stock/serializers.py:418
+#: stock/serializers.py:484
msgid "Note"
msgstr "Notiz"
-#: company/models.py:600 part/models.py:1919
+#: company/models.py:749 part/models.py:1921
msgid "base cost"
msgstr "Basiskosten"
-#: company/models.py:600 part/models.py:1919
+#: company/models.py:749 part/models.py:1921
msgid "Minimum charge (e.g. stocking fee)"
msgstr "Mindestpreis"
-#: company/models.py:602 company/templates/company/supplier_part.html:161
+#: company/models.py:751 company/templates/company/supplier_part.html:161
#: stock/admin.py:119 stock/models.py:701
#: stock/templates/stock/item_base.html:241
-#: templates/js/translated/company.js:1256
-#: templates/js/translated/stock.js:2160
+#: templates/js/translated/company.js:1677
+#: templates/js/translated/stock.js:2317
msgid "Packaging"
msgstr "Verpackungen"
-#: company/models.py:602
+#: company/models.py:751
msgid "Part packaging"
msgstr "Teile-Verpackungen"
-#: company/models.py:606 templates/js/translated/company.js:1261
-#: templates/js/translated/part.js:1793 templates/js/translated/part.js:1848
-#: templates/js/translated/purchase_order.js:300
-#: templates/js/translated/purchase_order.js:827
-#: templates/js/translated/purchase_order.js:1073
-#: templates/js/translated/purchase_order.js:2052
-#: templates/js/translated/purchase_order.js:2069
+#: company/models.py:755 templates/js/translated/company.js:1682
+#: templates/js/translated/part.js:1792 templates/js/translated/part.js:1847
+#: templates/js/translated/purchase_order.js:311
+#: templates/js/translated/purchase_order.js:842
+#: templates/js/translated/purchase_order.js:1088
+#: templates/js/translated/purchase_order.js:2062
+#: templates/js/translated/purchase_order.js:2079
msgid "Pack Quantity"
msgstr "Packmenge"
-#: company/models.py:607
+#: company/models.py:756
msgid "Total quantity supplied in a single pack. Leave empty for single items."
msgstr ""
-#: company/models.py:624 part/models.py:1921
+#: company/models.py:773 part/models.py:1923
msgid "multiple"
msgstr "Vielfache"
-#: company/models.py:624
+#: company/models.py:773
msgid "Order multiple"
msgstr "Mehrere bestellen"
-#: company/models.py:632 company/templates/company/supplier_part.html:115
+#: company/models.py:781 company/templates/company/supplier_part.html:115
#: templates/email/build_order_required_stock.html:19
#: templates/email/low_stock_notification.html:17
-#: templates/js/translated/bom.js:1127 templates/js/translated/build.js:2136
-#: templates/js/translated/build.js:3045
-#: templates/js/translated/model_renderers.js:205
-#: templates/js/translated/part.js:670 templates/js/translated/part.js:672
-#: templates/js/translated/part.js:677
-#: templates/js/translated/table_filters.js:286
-#: templates/js/translated/table_filters.js:492
+#: templates/js/translated/bom.js:1145 templates/js/translated/build.js:2490
+#: templates/js/translated/index.js:118
+#: templates/js/translated/model_renderers.js:219
+#: templates/js/translated/part.js:669 templates/js/translated/part.js:671
+#: templates/js/translated/part.js:676
+#: templates/js/translated/table_filters.js:292
+#: templates/js/translated/table_filters.js:510
msgid "Available"
msgstr "Verfügbar"
-#: company/models.py:633
+#: company/models.py:782
msgid "Quantity available from supplier"
msgstr "Verfügbare Menge von Lieferanten"
-#: company/models.py:637
+#: company/models.py:786
msgid "Availability Updated"
msgstr "Verfügbarkeit aktualisiert"
-#: company/models.py:638
+#: company/models.py:787
msgid "Date of last update of availability data"
msgstr "Datum des letzten Updates der Verfügbarkeitsdaten"
-#: company/serializers.py:99
+#: company/serializers.py:156
msgid "Default currency used for this supplier"
msgstr "Standard-Währung für diesen Zulieferer"
#: company/templates/company/company_base.html:22
-#: templates/js/translated/purchase_order.js:228
+#: templates/js/translated/purchase_order.js:239
msgid "Create Purchase Order"
msgstr "Bestellung anlegen"
@@ -3816,7 +3878,7 @@ msgid "Edit company information"
msgstr "Firmeninformation bearbeiten"
#: company/templates/company/company_base.html:34
-#: templates/js/translated/company.js:436
+#: templates/js/translated/company.js:443
msgid "Edit Company"
msgstr "Firma bearbeiten"
@@ -3856,17 +3918,17 @@ msgstr "Bild von URL herunterladen"
msgid "Delete image"
msgstr "Bild löschen"
-#: company/templates/company/company_base.html:87 order/models.py:779
-#: order/models.py:1738 order/templates/order/return_order_base.html:132
+#: company/templates/company/company_base.html:87 order/models.py:792
+#: order/models.py:1751 order/templates/order/return_order_base.html:132
#: order/templates/order/sales_order_base.html:145 stock/models.py:720
-#: stock/models.py:721 stock/serializers.py:825
+#: stock/models.py:721 stock/serializers.py:942
#: stock/templates/stock/item_base.html:401
#: templates/email/overdue_sales_order.html:16
-#: templates/js/translated/company.js:494
-#: templates/js/translated/return_order.js:284
-#: templates/js/translated/sales_order.js:772
-#: templates/js/translated/stock.js:2696
-#: templates/js/translated/table_filters.js:717
+#: templates/js/translated/company.js:501
+#: templates/js/translated/return_order.js:296
+#: templates/js/translated/sales_order.js:784
+#: templates/js/translated/stock.js:2827
+#: templates/js/translated/table_filters.js:739
msgid "Customer"
msgstr "Kunde"
@@ -3874,6 +3936,13 @@ msgstr "Kunde"
msgid "Uses default currency"
msgstr "verwendet Standard-Währung"
+#: company/templates/company/company_base.html:119 order/models.py:279
+#: order/templates/order/order_base.html:210
+#: order/templates/order/return_order_base.html:182
+#: order/templates/order/sales_order_base.html:222
+msgid "Address"
+msgstr "Adresse"
+
#: company/templates/company/company_base.html:126
msgid "Phone"
msgstr "Telefon"
@@ -3906,7 +3975,7 @@ msgstr "Bild herunterladen"
#: company/templates/company/detail.html:15
#: company/templates/company/manufacturer_part_sidebar.html:7
-#: templates/InvenTree/search.html:120 templates/js/translated/search.js:189
+#: templates/InvenTree/search.html:120 templates/js/translated/search.js:147
msgid "Supplier Parts"
msgstr "Zuliefererteile"
@@ -3916,129 +3985,121 @@ msgstr "Neues Zuliefererteil anlegen"
#: company/templates/company/detail.html:20
#: company/templates/company/manufacturer_part.html:123
-#: part/templates/part/detail.html:381
+#: part/templates/part/detail.html:356
msgid "New Supplier Part"
msgstr "Neues Zuliefererteil"
-#: company/templates/company/detail.html:37
-#: company/templates/company/detail.html:85
-#: part/templates/part/category.html:183
-msgid "Order parts"
-msgstr "Teile bestellen"
-
-#: company/templates/company/detail.html:42
-#: company/templates/company/detail.html:90
-msgid "Delete parts"
-msgstr "Teile löschen"
-
-#: company/templates/company/detail.html:43
-#: company/templates/company/detail.html:91
-msgid "Delete Parts"
-msgstr "Teile löschen"
-
-#: company/templates/company/detail.html:62 templates/InvenTree/search.html:105
-#: templates/js/translated/search.js:193
+#: company/templates/company/detail.html:41 templates/InvenTree/search.html:105
+#: templates/js/translated/search.js:151
msgid "Manufacturer Parts"
msgstr "Herstellerteile"
-#: company/templates/company/detail.html:66
+#: company/templates/company/detail.html:45
msgid "Create new manufacturer part"
msgstr "Neues Herstellerteil anlegen"
-#: company/templates/company/detail.html:67 part/templates/part/detail.html:411
+#: company/templates/company/detail.html:46 part/templates/part/detail.html:376
msgid "New Manufacturer Part"
msgstr "Neues Herstellerteil"
-#: company/templates/company/detail.html:108
+#: company/templates/company/detail.html:65
msgid "Supplier Stock"
msgstr "Zulieferer-Bestand"
-#: company/templates/company/detail.html:118
+#: company/templates/company/detail.html:75
#: company/templates/company/sidebar.html:12
#: company/templates/company/supplier_part_sidebar.html:7
#: 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:108 part/templates/part/part_sidebar.html:35
-#: templates/InvenTree/index.html:275 templates/InvenTree/search.html:199
+#: part/templates/part/detail.html:106 part/templates/part/part_sidebar.html:35
+#: templates/InvenTree/index.html:227 templates/InvenTree/search.html:199
#: templates/InvenTree/settings/sidebar.html:55
-#: templates/js/translated/search.js:247 templates/navbar.html:50
+#: templates/js/translated/search.js:205 templates/navbar.html:50
#: users/models.py:43
msgid "Purchase Orders"
msgstr "Bestellungen"
-#: company/templates/company/detail.html:122
+#: company/templates/company/detail.html:79
#: order/templates/order/purchase_orders.html:17
msgid "Create new purchase order"
msgstr "Neue Bestellung anlegen"
-#: company/templates/company/detail.html:123
+#: company/templates/company/detail.html:80
#: order/templates/order/purchase_orders.html:18
msgid "New Purchase Order"
msgstr "Neue Bestellung"
-#: company/templates/company/detail.html:146
+#: company/templates/company/detail.html:101
#: company/templates/company/sidebar.html:21
#: 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:131 part/templates/part/part_sidebar.html:39
-#: templates/InvenTree/index.html:307 templates/InvenTree/search.html:219
+#: part/templates/part/detail.html:127 part/templates/part/part_sidebar.html:39
+#: templates/InvenTree/index.html:259 templates/InvenTree/search.html:219
#: templates/InvenTree/settings/sidebar.html:57
-#: templates/js/translated/search.js:261 templates/navbar.html:62
+#: templates/js/translated/search.js:219 templates/navbar.html:62
#: users/models.py:44
msgid "Sales Orders"
msgstr "Aufträge"
-#: company/templates/company/detail.html:150
+#: company/templates/company/detail.html:105
#: order/templates/order/sales_orders.html:20
msgid "Create new sales order"
msgstr "Neuen Auftrag anlegen"
-#: company/templates/company/detail.html:151
+#: company/templates/company/detail.html:106
#: order/templates/order/sales_orders.html:21
msgid "New Sales Order"
msgstr "Neuer Auftrag"
-#: company/templates/company/detail.html:173
-#: templates/js/translated/build.js:1976
+#: company/templates/company/detail.html:126
msgid "Assigned Stock"
msgstr "Zugeordneter Bestand"
-#: company/templates/company/detail.html:191
+#: company/templates/company/detail.html:142
#: company/templates/company/sidebar.html:29
#: order/templates/order/return_order_base.html:13
#: order/templates/order/return_orders.html:8
#: order/templates/order/return_orders.html:15
#: templates/InvenTree/settings/sidebar.html:59
-#: templates/js/translated/search.js:274 templates/navbar.html:65
+#: templates/js/translated/search.js:232 templates/navbar.html:65
#: users/models.py:45
msgid "Return Orders"
msgstr ""
-#: company/templates/company/detail.html:195
+#: company/templates/company/detail.html:146
#: order/templates/order/return_orders.html:20
msgid "Create new return order"
msgstr ""
-#: company/templates/company/detail.html:196
+#: company/templates/company/detail.html:147
#: order/templates/order/return_orders.html:21
msgid "New Return Order"
msgstr ""
-#: company/templates/company/detail.html:221
+#: company/templates/company/detail.html:168
msgid "Company Notes"
msgstr "Firmenbemerkungen"
-#: company/templates/company/detail.html:236
+#: company/templates/company/detail.html:183
msgid "Company Contacts"
msgstr ""
-#: company/templates/company/detail.html:240
-#: company/templates/company/detail.html:241
+#: company/templates/company/detail.html:187
+#: company/templates/company/detail.html:188
msgid "Add Contact"
msgstr ""
+#: company/templates/company/detail.html:206
+msgid "Company addresses"
+msgstr ""
+
+#: company/templates/company/detail.html:210
+#: company/templates/company/detail.html:211
+msgid "Add Address"
+msgstr ""
+
#: company/templates/company/index.html:8
msgid "Supplier List"
msgstr "Zulieferer-Liste"
@@ -4050,17 +4111,17 @@ msgstr "Hersteller"
#: company/templates/company/manufacturer_part.html:35
#: company/templates/company/supplier_part.html:228
-#: part/templates/part/detail.html:111 part/templates/part/part_base.html:85
+#: part/templates/part/detail.html:109 part/templates/part/part_base.html:85
msgid "Order part"
msgstr "Teil bestellen"
#: company/templates/company/manufacturer_part.html:39
-#: templates/js/translated/company.js:1001
+#: templates/js/translated/company.js:1374
msgid "Edit manufacturer part"
msgstr "Herstellerteil bearbeiten"
#: company/templates/company/manufacturer_part.html:43
-#: templates/js/translated/company.js:1002
+#: templates/js/translated/company.js:1375
msgid "Delete manufacturer part"
msgstr "Herstellerteil löschen"
@@ -4080,40 +4141,22 @@ msgstr "Keine Herstellerdaten verfügbar"
msgid "Suppliers"
msgstr "Zulieferer"
-#: company/templates/company/manufacturer_part.html:136
-#: part/templates/part/detail.html:392
-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:393 part/templates/part/detail.html:423
-#: templates/js/translated/forms.js:506 templates/js/translated/helpers.js:105
-#: templates/js/translated/part.js:370 templates/js/translated/pricing.js:629
-#: templates/js/translated/stock.js:216 users/models.py:247
-msgid "Delete"
-msgstr "Löschen"
-
-#: company/templates/company/manufacturer_part.html:166
+#: company/templates/company/manufacturer_part.html:156
#: company/templates/company/manufacturer_part_sidebar.html:5
#: part/templates/part/category_sidebar.html:20
-#: part/templates/part/detail.html:208 part/templates/part/part_sidebar.html:8
+#: part/templates/part/detail.html:195 part/templates/part/part_sidebar.html:8
msgid "Parameters"
msgstr "Parameter"
-#: company/templates/company/manufacturer_part.html:170
-#: part/templates/part/detail.html:213
+#: company/templates/company/manufacturer_part.html:160
+#: part/templates/part/detail.html:200
#: templates/InvenTree/settings/category.html:12
#: templates/InvenTree/settings/part_parameters.html:12
msgid "New Parameter"
msgstr "Neuer Parameter"
-#: company/templates/company/manufacturer_part.html:183
-msgid "Delete parameters"
-msgstr "Parameter löschen"
-
-#: company/templates/company/manufacturer_part.html:226
-#: templates/js/translated/part.js:1396
+#: company/templates/company/manufacturer_part.html:206
+#: templates/js/translated/part.js:1395
msgid "Add Parameter"
msgstr "Parameter hinzufügen"
@@ -4137,23 +4180,28 @@ msgstr "Zugewiesene Lagerartikel"
msgid "Contacts"
msgstr ""
+#: company/templates/company/sidebar.html:35
+msgid "Addresses"
+msgstr ""
+
#: company/templates/company/supplier_part.html:7
#: company/templates/company/supplier_part.html:24 stock/models.py:684
#: stock/templates/stock/item_base.html:234
-#: templates/js/translated/company.js:1210
-#: templates/js/translated/purchase_order.js:747
-#: templates/js/translated/stock.js:2016
+#: templates/js/translated/company.js:1631
+#: templates/js/translated/purchase_order.js:758
+#: templates/js/translated/stock.js:2173
msgid "Supplier Part"
msgstr "Zuliefererteil"
#: company/templates/company/supplier_part.html:51
+#: templates/js/translated/company.js:1557
msgid "Supplier part actions"
msgstr "Zulieferer-Teil Aktionen"
#: company/templates/company/supplier_part.html:56
#: company/templates/company/supplier_part.html:57
#: company/templates/company/supplier_part.html:229
-#: part/templates/part/detail.html:112
+#: part/templates/part/detail.html:110
msgid "Order Part"
msgstr "Teil bestellen"
@@ -4164,13 +4212,13 @@ msgstr "Verfügbarkeit aktualisieren"
#: company/templates/company/supplier_part.html:64
#: company/templates/company/supplier_part.html:65
-#: templates/js/translated/company.js:283
+#: templates/js/translated/company.js:293
msgid "Edit Supplier Part"
msgstr "Zuliefererteil bearbeiten"
#: company/templates/company/supplier_part.html:69
#: company/templates/company/supplier_part.html:70
-#: templates/js/translated/company.js:258
+#: templates/js/translated/company.js:268
msgid "Duplicate Supplier Part"
msgstr "Zulieferer-Teil duplizieren"
@@ -4197,7 +4245,7 @@ msgstr "Neuen Lagerartikel hinzufügen"
#: company/templates/company/supplier_part.html:211
#: part/templates/part/detail.html:25 stock/templates/stock/location.html:198
-#: templates/js/translated/stock.js:504
+#: templates/js/translated/stock.js:503
msgid "New Stock Item"
msgstr "Neuer Lagerartikel"
@@ -4205,37 +4253,37 @@ msgstr "Neuer Lagerartikel"
msgid "Supplier Part Orders"
msgstr "Zulieferer-Bestellungen"
-#: company/templates/company/supplier_part.html:249
+#: company/templates/company/supplier_part.html:247
msgid "Pricing Information"
msgstr "Preisinformationen ansehen"
-#: company/templates/company/supplier_part.html:254
-#: templates/js/translated/company.js:387
+#: company/templates/company/supplier_part.html:252
+#: templates/js/translated/company.js:397
#: templates/js/translated/pricing.js:684
msgid "Add Price Break"
msgstr "Preisstaffel hinzufügen"
-#: company/templates/company/supplier_part.html:281
+#: company/templates/company/supplier_part.html:277
msgid "Supplier Part QR Code"
msgstr "Zuliefererteil QR-Code"
-#: company/templates/company/supplier_part.html:292
+#: company/templates/company/supplier_part.html:288
msgid "Link Barcode to Supplier Part"
msgstr "Barcode mit Zuliefererteil verknüpfen"
-#: company/templates/company/supplier_part.html:365
+#: company/templates/company/supplier_part.html:361
msgid "Update Part Availability"
msgstr "Teilverfügbarkeit aktualisieren"
#: company/templates/company/supplier_part_sidebar.html:5 part/tasks.py:293
-#: part/templates/part/category.html:199
+#: part/templates/part/category.html:182
#: part/templates/part/category_sidebar.html:17 stock/admin.py:47
-#: stock/templates/stock/location.html:168
+#: stock/serializers.py:662 stock/templates/stock/location.html:168
#: stock/templates/stock/location.html:182
#: stock/templates/stock/location.html:194
#: stock/templates/stock/location_sidebar.html:7
-#: templates/InvenTree/search.html:155 templates/js/translated/part.js:1034
-#: templates/js/translated/search.js:214 templates/js/translated/stock.js:2514
+#: templates/InvenTree/search.html:155 templates/js/translated/part.js:1033
+#: templates/js/translated/search.js:172 templates/js/translated/stock.js:2645
#: users/models.py:41
msgid "Stock Items"
msgstr "Lagerartikel"
@@ -4261,7 +4309,7 @@ msgstr "Kunden"
msgid "New Customer"
msgstr "Neuer Kunde"
-#: company/views.py:52 templates/js/translated/search.js:234
+#: company/views.py:52 templates/js/translated/search.js:192
msgid "Companies"
msgstr "Firmen"
@@ -4269,72 +4317,76 @@ msgstr "Firmen"
msgid "New Company"
msgstr "Neue Firma"
-#: label/models.py:104
+#: label/models.py:112
msgid "Label name"
msgstr "Label Name"
-#: label/models.py:111
+#: label/models.py:119
msgid "Label description"
msgstr "Label Beschreibung"
-#: label/models.py:118
+#: label/models.py:126
msgid "Label"
msgstr "Label"
-#: label/models.py:119
+#: label/models.py:127
msgid "Label template file"
msgstr "Label-Vorlage-Datei"
-#: label/models.py:125 report/models.py:273
+#: label/models.py:133 report/models.py:273
msgid "Enabled"
msgstr "Aktiviert"
-#: label/models.py:126
+#: label/models.py:134
msgid "Label template is enabled"
msgstr "Label-Vorlage ist aktiviert"
-#: label/models.py:131
+#: label/models.py:139
msgid "Width [mm]"
msgstr "Breite [mm]"
-#: label/models.py:132
+#: label/models.py:140
msgid "Label width, specified in mm"
msgstr "Label-Breite in mm"
-#: label/models.py:138
+#: label/models.py:146
msgid "Height [mm]"
msgstr "Höhe [mm]"
-#: label/models.py:139
+#: label/models.py:147
msgid "Label height, specified in mm"
msgstr "Label-Höhe in mm"
-#: label/models.py:145 report/models.py:266
+#: label/models.py:153 report/models.py:266
msgid "Filename Pattern"
msgstr "Dateinamen-Muster"
-#: label/models.py:146
+#: label/models.py:154
msgid "Pattern for generating label filenames"
msgstr "Muster für die Erstellung von Label-Dateinamen"
-#: label/models.py:242
+#: label/models.py:250
msgid "Query filters (comma-separated list of key=value pairs),"
msgstr "Abfragefilter (kommagetrennte Liste mit Schlüssel=Wert-Paaren)"
-#: label/models.py:243 label/models.py:284 label/models.py:312
-#: report/models.py:294 report/models.py:452 report/models.py:490
-#: report/models.py:528
+#: label/models.py:251 label/models.py:292 label/models.py:320
+#: label/models.py:356 report/models.py:294 report/models.py:454
+#: report/models.py:492 report/models.py:530
msgid "Filters"
msgstr "Filter"
-#: label/models.py:283
+#: label/models.py:291
msgid "Query filters (comma-separated list of key=value pairs"
msgstr "Abfragefilter (kommagetrennte Liste mit Schlüssel=Wert-Paaren)"
-#: label/models.py:311
+#: label/models.py:319
msgid "Part query filters (comma-separated value of key=value pairs)"
msgstr "Teile-Abfragefilter (kommagetrennte Liste mit Schlüssel=Wert-Paaren)"
+#: label/models.py:355
+msgid "Query filters (comma-separated list of key=value pairs)"
+msgstr ""
+
#: label/templates/label/part/part_label.html:31
#: label/templates/label/stockitem/qr.html:21
#: label/templates/label/stocklocation/qr.html:21
@@ -4352,8 +4404,8 @@ msgstr ""
#: report/templates/report/inventree_po_report_base.html:31
#: report/templates/report/inventree_so_report_base.html:31
#: templates/js/translated/order.js:327
-#: templates/js/translated/purchase_order.js:2093
-#: templates/js/translated/sales_order.js:1827
+#: templates/js/translated/purchase_order.js:2103
+#: templates/js/translated/sales_order.js:1839
msgid "Total Price"
msgstr "Gesamtpreis"
@@ -4361,30 +4413,30 @@ msgstr "Gesamtpreis"
msgid "No matching purchase order found"
msgstr "Keine passende Bestellung gefunden"
-#: order/api.py:1452 order/models.py:1178 order/models.py:1262
+#: order/api.py:1452 order/models.py:1191 order/models.py:1275
#: order/templates/order/order_base.html:9
#: order/templates/order/order_base.html:18
#: report/templates/report/inventree_po_report_base.html:14
#: stock/templates/stock/item_base.html:177
#: templates/email/overdue_purchase_order.html:15
-#: templates/js/translated/part.js:1718 templates/js/translated/pricing.js:790
-#: templates/js/translated/purchase_order.js:154
-#: templates/js/translated/purchase_order.js:748
-#: templates/js/translated/purchase_order.js:1637
-#: templates/js/translated/stock.js:1996 templates/js/translated/stock.js:2644
+#: templates/js/translated/part.js:1717 templates/js/translated/pricing.js:790
+#: templates/js/translated/purchase_order.js:165
+#: templates/js/translated/purchase_order.js:759
+#: templates/js/translated/purchase_order.js:1652
+#: templates/js/translated/stock.js:2153 templates/js/translated/stock.js:2775
msgid "Purchase Order"
msgstr "Bestellung"
-#: order/api.py:1456 order/models.py:1909 order/models.py:1955
+#: order/api.py:1456 order/models.py:1922 order/models.py:1968
#: order/templates/order/return_order_base.html:9
#: order/templates/order/return_order_base.html:28
#: report/templates/report/inventree_return_order_report_base.html:13
-#: templates/js/translated/return_order.js:269
-#: templates/js/translated/stock.js:2678
+#: templates/js/translated/return_order.js:281
+#: templates/js/translated/stock.js:2809
msgid "Return Order"
msgstr ""
-#: order/api.py:1458 templates/js/translated/sales_order.js:1030
+#: order/api.py:1458 templates/js/translated/sales_order.js:1042
msgid "Unknown"
msgstr "Unbekannt"
@@ -4392,11 +4444,11 @@ msgstr "Unbekannt"
msgid "Total price for this order"
msgstr "Gesamtpreis für diese Bestellung"
-#: order/models.py:79 order/serializers.py:49
+#: order/models.py:79 order/serializers.py:50
msgid "Order Currency"
msgstr ""
-#: order/models.py:81 order/serializers.py:50
+#: order/models.py:81 order/serializers.py:51
msgid "Currency for this order (leave blank to use company default)"
msgstr ""
@@ -4408,492 +4460,496 @@ msgstr ""
msgid "Order description (optional)"
msgstr ""
-#: order/models.py:234
+#: order/models.py:237
msgid "Select project code for this order"
msgstr ""
-#: order/models.py:236 order/models.py:1094 order/models.py:1454
+#: order/models.py:240 order/models.py:1107 order/models.py:1467
msgid "Link to external page"
msgstr "Link auf externe Seite"
-#: order/models.py:241
+#: order/models.py:245
msgid "Expected date for order delivery. Order will be overdue after this date."
msgstr "Geplantes Lieferdatum für Auftrag."
-#: order/models.py:250
+#: order/models.py:254
msgid "Created By"
msgstr "Erstellt von"
-#: order/models.py:257
+#: order/models.py:261
msgid "User or group responsible for this order"
msgstr "Nutzer oder Gruppe der/die für diesen Auftrag zuständig ist/sind"
-#: order/models.py:267
+#: order/models.py:271
msgid "Point of contact for this order"
msgstr ""
-#: order/models.py:360 order/models.py:766
+#: order/models.py:280
+msgid "Company address for this order"
+msgstr ""
+
+#: order/models.py:373 order/models.py:779
msgid "Order reference"
msgstr "Bestell-Referenz"
-#: order/models.py:368 order/models.py:791
+#: order/models.py:381 order/models.py:804
msgid "Purchase order status"
msgstr "Bestellungs-Status"
-#: order/models.py:383
+#: order/models.py:396
msgid "Company from which the items are being ordered"
msgstr "Firma bei der die Teile bestellt werden"
-#: order/models.py:391 order/templates/order/order_base.html:152
-#: templates/js/translated/purchase_order.js:1662
+#: order/models.py:404 order/templates/order/order_base.html:148
+#: templates/js/translated/purchase_order.js:1677
msgid "Supplier Reference"
msgstr "Zulieferer-Referenz"
-#: order/models.py:391
+#: order/models.py:404
msgid "Supplier order reference code"
msgstr "Zulieferer Bestellreferenz"
-#: order/models.py:398
+#: order/models.py:411
msgid "received by"
msgstr "Empfangen von"
-#: order/models.py:403 order/models.py:1761
+#: order/models.py:416 order/models.py:1774
msgid "Issue Date"
msgstr "Aufgabedatum"
-#: order/models.py:404 order/models.py:1762
+#: order/models.py:417 order/models.py:1775
msgid "Date order was issued"
msgstr "Datum an dem die Bestellung aufgegeben wurde"
-#: order/models.py:410 order/models.py:1768
+#: order/models.py:423 order/models.py:1781
msgid "Date order was completed"
msgstr "Datum an dem der Auftrag fertigstellt wurde"
-#: order/models.py:445
+#: order/models.py:458
msgid "Part supplier must match PO supplier"
msgstr "Teile-Zulieferer muss dem Zulieferer der Bestellung entsprechen"
-#: order/models.py:606
+#: order/models.py:619
msgid "Quantity must be a positive number"
msgstr "Anzahl muss eine positive Zahl sein"
-#: order/models.py:780
+#: order/models.py:793
msgid "Company to which the items are being sold"
msgstr "Firma an die die Teile verkauft werden"
-#: order/models.py:799 order/models.py:1755
+#: order/models.py:812 order/models.py:1768
msgid "Customer Reference "
msgstr "Kundenreferenz"
-#: order/models.py:799 order/models.py:1756
+#: order/models.py:812 order/models.py:1769
msgid "Customer order reference code"
msgstr "Bestellreferenz"
-#: order/models.py:801 order/models.py:1408
-#: templates/js/translated/sales_order.js:831
-#: templates/js/translated/sales_order.js:1012
+#: order/models.py:814 order/models.py:1421
+#: templates/js/translated/sales_order.js:843
+#: templates/js/translated/sales_order.js:1024
msgid "Shipment Date"
msgstr "Versanddatum"
-#: order/models.py:808
+#: order/models.py:821
msgid "shipped by"
msgstr "Versand von"
-#: order/models.py:857
+#: order/models.py:870
msgid "Order cannot be completed as no parts have been assigned"
msgstr "Auftrag kann nicht abgeschlossen werden, da keine Teile zugewiesen wurden"
-#: order/models.py:861
+#: order/models.py:874
msgid "Only an open order can be marked as complete"
msgstr ""
-#: order/models.py:864 templates/js/translated/sales_order.js:491
+#: order/models.py:877 templates/js/translated/sales_order.js:503
msgid "Order cannot be completed as there are incomplete shipments"
msgstr "Auftrag kann nicht abgeschlossen werden, da unvollständige Sendungen vorhanden sind"
-#: order/models.py:867
+#: order/models.py:880
msgid "Order cannot be completed as there are incomplete line items"
msgstr "Auftrag kann nicht abgeschlossen werden, da es unvollständige Positionen gibt"
-#: order/models.py:1074
+#: order/models.py:1087
msgid "Item quantity"
msgstr "Anzahl"
-#: order/models.py:1087
+#: order/models.py:1100
msgid "Line item reference"
msgstr "Position - Referenz"
-#: order/models.py:1089
+#: order/models.py:1102
msgid "Line item notes"
msgstr "Position - Notizen"
-#: order/models.py:1100
+#: order/models.py:1113
msgid "Target date for this line item (leave blank to use the target date from the order)"
msgstr "Zieldatum für diesen Einzelposten (leer lassen, um das Zieldatum des Auftrags zu verwenden)"
-#: order/models.py:1118
+#: order/models.py:1131
msgid "Line item description (optional)"
msgstr ""
-#: order/models.py:1123
+#: order/models.py:1136
msgid "Context"
msgstr "Kontext"
-#: order/models.py:1124
+#: order/models.py:1137
msgid "Additional context for this line"
msgstr "Zusätzlicher Kontext für diese Zeile"
-#: order/models.py:1133
+#: order/models.py:1146
msgid "Unit price"
msgstr "Stückpreis"
-#: order/models.py:1163
+#: order/models.py:1176
msgid "Supplier part must match supplier"
msgstr "Lieferantenteil muss mit Lieferant übereinstimmen"
-#: order/models.py:1171
+#: order/models.py:1184
msgid "deleted"
msgstr "gelöscht"
-#: order/models.py:1177 order/models.py:1262 order/models.py:1303
-#: order/models.py:1402 order/models.py:1551 order/models.py:1908
-#: order/models.py:1955 templates/js/translated/sales_order.js:1474
+#: order/models.py:1190 order/models.py:1275 order/models.py:1316
+#: order/models.py:1415 order/models.py:1564 order/models.py:1921
+#: order/models.py:1968 templates/js/translated/sales_order.js:1486
msgid "Order"
msgstr "Bestellung"
-#: order/models.py:1196
+#: order/models.py:1209
msgid "Supplier part"
msgstr "Zuliefererteil"
-#: order/models.py:1203 order/templates/order/order_base.html:200
-#: templates/js/translated/part.js:1841 templates/js/translated/part.js:1872
-#: templates/js/translated/purchase_order.js:1276
-#: templates/js/translated/purchase_order.js:2137
-#: templates/js/translated/return_order.js:748
-#: templates/js/translated/table_filters.js:90
-#: templates/js/translated/table_filters.js:515
+#: order/models.py:1216 order/templates/order/order_base.html:196
+#: templates/js/translated/part.js:1840 templates/js/translated/part.js:1871
+#: templates/js/translated/purchase_order.js:1291
+#: templates/js/translated/purchase_order.js:2147
+#: templates/js/translated/return_order.js:760
+#: templates/js/translated/table_filters.js:96
+#: templates/js/translated/table_filters.js:537
msgid "Received"
msgstr "Empfangen"
-#: order/models.py:1204
+#: order/models.py:1217
msgid "Number of items received"
msgstr "Empfangene Objekt-Anzahl"
-#: order/models.py:1211 stock/models.py:823 stock/serializers.py:252
+#: order/models.py:1224 stock/models.py:823 stock/serializers.py:314
#: stock/templates/stock/item_base.html:184
-#: templates/js/translated/stock.js:2047
+#: templates/js/translated/stock.js:2204
msgid "Purchase Price"
msgstr "Preis"
-#: order/models.py:1212
+#: order/models.py:1225
msgid "Unit purchase price"
msgstr "Preis pro Einheit"
-#: order/models.py:1225
+#: order/models.py:1238
msgid "Where does the Purchaser want this item to be stored?"
msgstr "Wo möchte der Käufer diesen Artikel gelagert haben?"
-#: order/models.py:1291
+#: order/models.py:1304
msgid "Virtual part cannot be assigned to a sales order"
msgstr "Ein virtuelles Teil kann nicht einem Auftrag zugeordnet werden"
-#: order/models.py:1296
+#: order/models.py:1309
msgid "Only salable parts can be assigned to a sales order"
msgstr "Nur verkaufbare Teile können einem Auftrag zugewiesen werden"
-#: order/models.py:1322 part/templates/part/part_pricing.html:107
+#: order/models.py:1335 part/templates/part/part_pricing.html:107
#: part/templates/part/prices.html:128 templates/js/translated/pricing.js:943
msgid "Sale Price"
msgstr "Verkaufspreis"
-#: order/models.py:1323
+#: order/models.py:1336
msgid "Unit sale price"
msgstr "Stückverkaufspreis"
-#: order/models.py:1333
+#: order/models.py:1346
msgid "Shipped quantity"
msgstr "Versendete Menge"
-#: order/models.py:1409
+#: order/models.py:1422
msgid "Date of shipment"
msgstr "Versanddatum"
-#: order/models.py:1414 templates/js/translated/sales_order.js:1024
+#: order/models.py:1427 templates/js/translated/sales_order.js:1036
msgid "Delivery Date"
msgstr ""
-#: order/models.py:1415
+#: order/models.py:1428
msgid "Date of delivery of shipment"
msgstr ""
-#: order/models.py:1422
+#: order/models.py:1435
msgid "Checked By"
msgstr "Kontrolliert von"
-#: order/models.py:1423
+#: order/models.py:1436
msgid "User who checked this shipment"
msgstr "Benutzer, der diese Sendung kontrolliert hat"
-#: order/models.py:1430 order/models.py:1627 order/serializers.py:1248
-#: order/serializers.py:1376 templates/js/translated/model_renderers.js:415
+#: order/models.py:1443 order/models.py:1640 order/serializers.py:1254
+#: order/serializers.py:1382 templates/js/translated/model_renderers.js:429
msgid "Shipment"
msgstr "Sendung"
-#: order/models.py:1431
+#: order/models.py:1444
msgid "Shipment number"
msgstr "Sendungsnummer"
-#: order/models.py:1439
+#: order/models.py:1452
msgid "Tracking Number"
msgstr "Sendungsverfolgungsnummer"
-#: order/models.py:1440
+#: order/models.py:1453
msgid "Shipment tracking information"
msgstr "Informationen zur Sendungsverfolgung"
-#: order/models.py:1447
+#: order/models.py:1460
msgid "Invoice Number"
msgstr "Rechnungsnummer"
-#: order/models.py:1448
+#: order/models.py:1461
msgid "Reference number for associated invoice"
msgstr "Referenznummer für zugehörige Rechnung"
-#: order/models.py:1470
+#: order/models.py:1483
msgid "Shipment has already been sent"
msgstr "Sendung wurde bereits versandt"
-#: order/models.py:1473
+#: order/models.py:1486
msgid "Shipment has no allocated stock items"
msgstr "Sendung hat keine zugewiesene Lagerartikel"
-#: order/models.py:1586 order/models.py:1588
+#: order/models.py:1599 order/models.py:1601
msgid "Stock item has not been assigned"
msgstr "Lagerartikel wurde nicht zugewiesen"
-#: order/models.py:1592
+#: order/models.py:1605
msgid "Cannot allocate stock item to a line with a different part"
msgstr "Kann Lagerartikel keiner Zeile mit einem anderen Teil hinzufügen"
-#: order/models.py:1594
+#: order/models.py:1607
msgid "Cannot allocate stock to a line without a part"
msgstr "Kann Lagerartikel keiner Zeile ohne Teil hinzufügen"
-#: order/models.py:1597
+#: order/models.py:1610
msgid "Allocation quantity cannot exceed stock quantity"
msgstr "Die zugeordnete Anzahl darf nicht die verfügbare Anzahl überschreiten"
-#: order/models.py:1607 order/serializers.py:1110
+#: order/models.py:1620 order/serializers.py:1116
msgid "Quantity must be 1 for serialized stock item"
msgstr "Anzahl für serialisierte Lagerartikel muss 1 sein"
-#: order/models.py:1610
+#: order/models.py:1623
msgid "Sales order does not match shipment"
msgstr "Auftrag gehört nicht zu Sendung"
-#: order/models.py:1611
+#: order/models.py:1624
msgid "Shipment does not match sales order"
msgstr "Sendung gehört nicht zu Auftrag"
-#: order/models.py:1619
+#: order/models.py:1632
msgid "Line"
msgstr "Position"
-#: order/models.py:1628
+#: order/models.py:1641
msgid "Sales order shipment reference"
msgstr "Sendungsnummer-Referenz"
-#: order/models.py:1641 order/models.py:1916
-#: templates/js/translated/return_order.js:706
+#: order/models.py:1654 order/models.py:1929
+#: templates/js/translated/return_order.js:718
msgid "Item"
msgstr "Position"
-#: order/models.py:1642
+#: order/models.py:1655
msgid "Select stock item to allocate"
msgstr "Lagerartikel für Zuordnung auswählen"
-#: order/models.py:1645
+#: order/models.py:1658
msgid "Enter stock allocation quantity"
msgstr "Anzahl für Bestandszuordnung eingeben"
-#: order/models.py:1725
+#: order/models.py:1738
msgid "Return Order reference"
msgstr ""
-#: order/models.py:1739
+#: order/models.py:1752
msgid "Company from which items are being returned"
msgstr ""
-#: order/models.py:1750
+#: order/models.py:1763
msgid "Return order status"
msgstr ""
-#: order/models.py:1901
+#: order/models.py:1914
msgid "Only serialized items can be assigned to a Return Order"
msgstr ""
-#: order/models.py:1917
+#: order/models.py:1930
msgid "Select item to return from customer"
msgstr ""
-#: order/models.py:1922
+#: order/models.py:1935
msgid "Received Date"
msgstr ""
-#: order/models.py:1923
+#: order/models.py:1936
msgid "The date this this return item was received"
msgstr ""
-#: order/models.py:1934 templates/js/translated/return_order.js:717
-#: templates/js/translated/table_filters.js:93
+#: order/models.py:1947 templates/js/translated/return_order.js:729
+#: templates/js/translated/table_filters.js:99
msgid "Outcome"
msgstr ""
-#: order/models.py:1934
+#: order/models.py:1947
msgid "Outcome for this line item"
msgstr ""
-#: order/models.py:1940
+#: order/models.py:1953
msgid "Cost associated with return or repair for this line item"
msgstr ""
-#: order/serializers.py:247
+#: order/serializers.py:253
msgid "Order cannot be cancelled"
msgstr "Bestellung kann nicht verworfen werden"
-#: order/serializers.py:262 order/serializers.py:1128
+#: order/serializers.py:268 order/serializers.py:1134
msgid "Allow order to be closed with incomplete line items"
msgstr "Erlaube das Schließen des Auftrags mit unvollständigen Positionen"
-#: order/serializers.py:273 order/serializers.py:1139
+#: order/serializers.py:279 order/serializers.py:1145
msgid "Order has incomplete line items"
msgstr "Auftrag hat unvollständige Positionen"
-#: order/serializers.py:386
+#: order/serializers.py:392
msgid "Order is not open"
msgstr "Der Auftrag ist nicht offen"
-#: order/serializers.py:404
+#: order/serializers.py:410
msgid "Purchase price currency"
msgstr "Kaufpreiswährung"
-#: order/serializers.py:422
+#: order/serializers.py:428
msgid "Supplier part must be specified"
msgstr "Zuliefererteil muss ausgewählt werden"
-#: order/serializers.py:427
+#: order/serializers.py:433
msgid "Purchase order must be specified"
msgstr "Bestellung muss angegeben sein"
-#: order/serializers.py:433
+#: order/serializers.py:439
msgid "Supplier must match purchase order"
msgstr "Lieferant muss mit der Bestellung übereinstimmen"
-#: order/serializers.py:434
+#: order/serializers.py:440
msgid "Purchase order must match supplier"
msgstr "Die Bestellung muss mit dem Lieferant übereinstimmen"
-#: order/serializers.py:472 order/serializers.py:1216
+#: order/serializers.py:478 order/serializers.py:1222
msgid "Line Item"
msgstr "Position"
-#: order/serializers.py:478
+#: order/serializers.py:484
msgid "Line item does not match purchase order"
msgstr "Position stimmt nicht mit Kaufauftrag überein"
-#: order/serializers.py:488 order/serializers.py:607 order/serializers.py:1589
+#: order/serializers.py:494 order/serializers.py:613 order/serializers.py:1595
msgid "Select destination location for received items"
msgstr "Zielort für empfangene Teile auswählen"
-#: order/serializers.py:507 templates/js/translated/purchase_order.js:1100
+#: order/serializers.py:513 templates/js/translated/purchase_order.js:1115
msgid "Enter batch code for incoming stock items"
msgstr "Losnummer für eingehende Lagerartikel"
-#: order/serializers.py:515 templates/js/translated/purchase_order.js:1124
+#: order/serializers.py:521 templates/js/translated/purchase_order.js:1139
msgid "Enter serial numbers for incoming stock items"
msgstr "Seriennummern für eingehende Lagerartikel"
-#: order/serializers.py:528 templates/js/translated/barcode.js:52
+#: order/serializers.py:534 templates/js/translated/barcode.js:52
msgid "Barcode"
msgstr "Barcode"
-#: order/serializers.py:529
+#: order/serializers.py:535
msgid "Scanned barcode"
msgstr ""
-#: order/serializers.py:545
+#: order/serializers.py:551
msgid "Barcode is already in use"
msgstr "Barcode ist bereits in Verwendung"
-#: order/serializers.py:569
+#: order/serializers.py:575
msgid "An integer quantity must be provided for trackable parts"
msgstr "Ganzzahl für verfolgbare Teile erforderlich"
-#: order/serializers.py:623 order/serializers.py:1604
+#: order/serializers.py:629 order/serializers.py:1610
msgid "Line items must be provided"
msgstr "Positionen müssen angegeben werden"
-#: order/serializers.py:640
+#: order/serializers.py:646
msgid "Destination location must be specified"
msgstr "Ziel-Lagerort muss angegeben werden"
-#: order/serializers.py:651
+#: order/serializers.py:657
msgid "Supplied barcode values must be unique"
msgstr "Barcode muss eindeutig sein"
-#: order/serializers.py:950
+#: order/serializers.py:956
msgid "Sale price currency"
msgstr "Verkaufspreis-Währung"
-#: order/serializers.py:1007
+#: order/serializers.py:1013
msgid "No shipment details provided"
msgstr "Keine Sendungsdetails angegeben"
-#: order/serializers.py:1071 order/serializers.py:1225
+#: order/serializers.py:1077 order/serializers.py:1231
msgid "Line item is not associated with this order"
msgstr "Position ist nicht diesem Auftrag zugeordnet"
-#: order/serializers.py:1093
+#: order/serializers.py:1099
msgid "Quantity must be positive"
msgstr "Anzahl muss positiv sein"
-#: order/serializers.py:1238
+#: order/serializers.py:1244
msgid "Enter serial numbers to allocate"
msgstr "Seriennummern zum Zuweisen eingeben"
-#: order/serializers.py:1260 order/serializers.py:1384
+#: order/serializers.py:1266 order/serializers.py:1390
msgid "Shipment has already been shipped"
msgstr "Sendung wurde bereits versandt"
-#: order/serializers.py:1263 order/serializers.py:1387
+#: order/serializers.py:1269 order/serializers.py:1393
msgid "Shipment is not associated with this order"
msgstr "Sendung ist nicht diesem Auftrag zugeordnet"
-#: order/serializers.py:1317
+#: order/serializers.py:1323
msgid "No match found for the following serial numbers"
msgstr "Folgende Serienummern konnten nicht gefunden werden"
-#: order/serializers.py:1327
+#: order/serializers.py:1333
msgid "The following serial numbers are already allocated"
msgstr "Folgende Seriennummern sind bereits zugewiesen"
-#: order/serializers.py:1555
+#: order/serializers.py:1561
msgid "Return order line item"
msgstr ""
-#: order/serializers.py:1562
+#: order/serializers.py:1568
msgid "Line item does not match return order"
msgstr ""
-#: order/serializers.py:1565
+#: order/serializers.py:1571
msgid "Line item has already been received"
msgstr ""
-#: order/serializers.py:1597
+#: order/serializers.py:1603
msgid "Items can only be received against orders which are in progress"
msgstr ""
-#: order/serializers.py:1678
+#: order/serializers.py:1684
msgid "Line price currency"
msgstr ""
@@ -4957,82 +5013,74 @@ msgid "Issue Order"
msgstr ""
#: order/templates/order/order_base.html:83
-msgid "Receive items"
-msgstr "Elemente empfangen"
-
-#: order/templates/order/order_base.html:85
-msgid "Receive Items"
-msgstr "Teile empfangen"
-
-#: order/templates/order/order_base.html:87
#: order/templates/order/return_order_base.html:87
msgid "Mark order as complete"
msgstr "Bestellung als vollständig markieren"
-#: order/templates/order/order_base.html:88
+#: order/templates/order/order_base.html:84
#: order/templates/order/return_order_base.html:88
#: order/templates/order/sales_order_base.html:94
msgid "Complete Order"
msgstr "Auftrag fertigstellen"
-#: order/templates/order/order_base.html:95
+#: order/templates/order/order_base.html:91
msgid "Supplier part thumbnail"
msgstr ""
-#: order/templates/order/order_base.html:110
+#: order/templates/order/order_base.html:106
#: order/templates/order/return_order_base.html:102
#: order/templates/order/sales_order_base.html:107
msgid "Order Reference"
msgstr "Bestellreferenz"
-#: order/templates/order/order_base.html:115
+#: order/templates/order/order_base.html:111
#: order/templates/order/return_order_base.html:107
#: order/templates/order/sales_order_base.html:112
msgid "Order Description"
msgstr "Bestellungsbeschreibung"
-#: order/templates/order/order_base.html:122
+#: order/templates/order/order_base.html:118
#: order/templates/order/return_order_base.html:114
#: order/templates/order/sales_order_base.html:119
msgid "Order Status"
msgstr "Bestellstatus"
-#: order/templates/order/order_base.html:145
+#: order/templates/order/order_base.html:141
msgid "No suppplier information available"
msgstr "Keine Lieferanteninformationen verfügbar"
-#: order/templates/order/order_base.html:158
+#: order/templates/order/order_base.html:154
#: order/templates/order/sales_order_base.html:158
msgid "Completed Line Items"
msgstr "Abgeschlossene Positionen"
-#: order/templates/order/order_base.html:164
+#: order/templates/order/order_base.html:160
#: order/templates/order/sales_order_base.html:164
#: order/templates/order/sales_order_base.html:174
msgid "Incomplete"
msgstr "Unvollständig"
-#: order/templates/order/order_base.html:183
+#: order/templates/order/order_base.html:179
#: order/templates/order/return_order_base.html:158
#: report/templates/report/inventree_build_order_base.html:121
msgid "Issued"
msgstr "Aufgegeben"
-#: order/templates/order/order_base.html:221
+#: order/templates/order/order_base.html:224
msgid "Total cost"
msgstr "Gesamtsumme"
-#: order/templates/order/order_base.html:225
-#: order/templates/order/return_order_base.html:193
-#: order/templates/order/sales_order_base.html:233
+#: order/templates/order/order_base.html:228
+#: order/templates/order/return_order_base.html:200
+#: order/templates/order/sales_order_base.html:240
msgid "Total cost could not be calculated"
msgstr "Gesamtkosten konnten nicht berechnet werden"
-#: order/templates/order/order_base.html:331
+#: order/templates/order/order_base.html:318
msgid "Purchase Order QR Code"
msgstr ""
-#: order/templates/order/order_base.html:343
+#: order/templates/order/order_base.html:330
msgid "Link Barcode to Purchase Order"
msgstr ""
@@ -5085,13 +5133,13 @@ msgstr "Auswahl duplizieren"
#: part/templates/part/import_wizard/ajax_match_references.html:42
#: part/templates/part/import_wizard/match_fields.html:71
#: part/templates/part/import_wizard/match_references.html:49
-#: templates/js/translated/bom.js:132 templates/js/translated/build.js:512
-#: templates/js/translated/build.js:2348
-#: templates/js/translated/purchase_order.js:692
-#: templates/js/translated/purchase_order.js:1206
-#: templates/js/translated/return_order.js:494
-#: templates/js/translated/sales_order.js:1097
-#: templates/js/translated/stock.js:681 templates/js/translated/stock.js:850
+#: templates/js/translated/bom.js:133 templates/js/translated/build.js:518
+#: templates/js/translated/build.js:1555
+#: templates/js/translated/purchase_order.js:703
+#: templates/js/translated/purchase_order.js:1221
+#: templates/js/translated/return_order.js:506
+#: templates/js/translated/sales_order.js:1109
+#: templates/js/translated/stock.js:680 templates/js/translated/stock.js:849
#: templates/patterns/wizard/match_fields.html:70
msgid "Remove row"
msgstr "Zeile entfernen"
@@ -5152,9 +5200,9 @@ msgstr "Bestellungs-Positionen"
#: order/templates/order/purchase_order_detail.html:27
#: order/templates/order/return_order_detail.html:24
#: order/templates/order/sales_order_detail.html:24
-#: templates/js/translated/purchase_order.js:419
-#: templates/js/translated/return_order.js:447
-#: templates/js/translated/sales_order.js:222
+#: templates/js/translated/purchase_order.js:430
+#: templates/js/translated/return_order.js:459
+#: templates/js/translated/sales_order.js:234
msgid "Add Line Item"
msgstr "Position hinzufügen"
@@ -5165,30 +5213,25 @@ msgstr "Position hinzufügen"
msgid "Receive Line Items"
msgstr ""
-#: order/templates/order/purchase_order_detail.html:49
#: order/templates/order/purchase_order_detail.html:50
-msgid "Delete Line Items"
-msgstr "Positionen löschen"
-
-#: order/templates/order/purchase_order_detail.html:66
-#: order/templates/order/return_order_detail.html:47
-#: order/templates/order/sales_order_detail.html:43
+#: order/templates/order/return_order_detail.html:45
+#: order/templates/order/sales_order_detail.html:41
msgid "Extra Lines"
msgstr "Zusätzliche Positionen"
-#: order/templates/order/purchase_order_detail.html:72
-#: order/templates/order/return_order_detail.html:53
-#: order/templates/order/sales_order_detail.html:49
+#: order/templates/order/purchase_order_detail.html:56
+#: order/templates/order/return_order_detail.html:51
+#: order/templates/order/sales_order_detail.html:47
msgid "Add Extra Line"
msgstr "Extra Zeile anzeigen"
-#: order/templates/order/purchase_order_detail.html:92
+#: order/templates/order/purchase_order_detail.html:74
msgid "Received Items"
msgstr "Empfangene Teile"
-#: order/templates/order/purchase_order_detail.html:117
-#: order/templates/order/return_order_detail.html:89
-#: order/templates/order/sales_order_detail.html:149
+#: order/templates/order/purchase_order_detail.html:99
+#: order/templates/order/return_order_detail.html:85
+#: order/templates/order/sales_order_detail.html:139
msgid "Order Notes"
msgstr "Notizen zur Bestellung"
@@ -5208,29 +5251,29 @@ msgstr "Paketliste drucken"
#: order/templates/order/return_order_base.html:139
#: order/templates/order/sales_order_base.html:152
-#: templates/js/translated/return_order.js:297
-#: templates/js/translated/sales_order.js:785
+#: templates/js/translated/return_order.js:309
+#: templates/js/translated/sales_order.js:797
msgid "Customer Reference"
msgstr "Kundenreferenz"
-#: order/templates/order/return_order_base.html:189
-#: order/templates/order/sales_order_base.html:229
+#: order/templates/order/return_order_base.html:196
+#: order/templates/order/sales_order_base.html:236
#: part/templates/part/part_pricing.html:32
#: part/templates/part/part_pricing.html:58
#: part/templates/part/part_pricing.html:99
#: part/templates/part/part_pricing.html:114
-#: templates/js/translated/part.js:1046
-#: templates/js/translated/purchase_order.js:1712
-#: templates/js/translated/return_order.js:369
-#: templates/js/translated/sales_order.js:843
+#: templates/js/translated/part.js:1045
+#: templates/js/translated/purchase_order.js:1727
+#: templates/js/translated/return_order.js:381
+#: templates/js/translated/sales_order.js:855
msgid "Total Cost"
msgstr "Gesamtkosten"
-#: order/templates/order/return_order_base.html:257
+#: order/templates/order/return_order_base.html:264
msgid "Return Order QR Code"
msgstr ""
-#: order/templates/order/return_order_base.html:269
+#: order/templates/order/return_order_base.html:276
msgid "Link Barcode to Return Order"
msgstr ""
@@ -5248,7 +5291,7 @@ msgid "Ship Items"
msgstr ""
#: order/templates/order/sales_order_base.html:93
-#: templates/js/translated/sales_order.js:469
+#: templates/js/translated/sales_order.js:481
msgid "Complete Sales Order"
msgstr "Auftrag abschließen"
@@ -5257,16 +5300,16 @@ msgid "This Sales Order has not been fully allocated"
msgstr "Dieser Auftrag ist nicht vollständig zugeordnet"
#: order/templates/order/sales_order_base.html:170
-#: order/templates/order/sales_order_detail.html:105
+#: order/templates/order/sales_order_detail.html:99
#: order/templates/order/so_sidebar.html:11
msgid "Completed Shipments"
msgstr "Abgeschlossene Sendungen"
-#: order/templates/order/sales_order_base.html:306
+#: order/templates/order/sales_order_base.html:313
msgid "Sales Order QR Code"
msgstr ""
-#: order/templates/order/sales_order_base.html:318
+#: order/templates/order/sales_order_base.html:325
msgid "Link Barcode to Sales Order"
msgstr ""
@@ -5274,18 +5317,17 @@ msgstr ""
msgid "Sales Order Items"
msgstr "Auftrags-Positionen"
-#: order/templates/order/sales_order_detail.html:71
-#: order/templates/order/so_sidebar.html:8 templates/InvenTree/index.html:332
+#: order/templates/order/sales_order_detail.html:67
+#: order/templates/order/so_sidebar.html:8 templates/InvenTree/index.html:284
msgid "Pending Shipments"
msgstr "Ausstehende Sendungen"
-#: order/templates/order/sales_order_detail.html:75
-#: templates/attachment_table.html:6 templates/js/translated/bom.js:1236
-#: templates/js/translated/build.js:2249
+#: order/templates/order/sales_order_detail.html:71
+#: templates/js/translated/bom.js:1256 templates/js/translated/filters.js:297
msgid "Actions"
msgstr "Aktionen"
-#: order/templates/order/sales_order_detail.html:84
+#: order/templates/order/sales_order_detail.html:80
msgid "New Shipment"
msgstr "Neue Sendung"
@@ -5311,12 +5353,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:33 part/admin.py:273 part/models.py:3667 part/tasks.py:288
+#: part/admin.py:33 part/admin.py:273 part/models.py:3716 part/tasks.py:288
#: stock/admin.py:101
msgid "Part ID"
msgstr "Teil-ID"
-#: part/admin.py:34 part/admin.py:275 part/models.py:3671 part/tasks.py:289
+#: part/admin.py:34 part/admin.py:275 part/models.py:3720 part/tasks.py:289
#: stock/admin.py:102
msgid "Part Name"
msgstr "Name des Teils"
@@ -5325,19 +5367,19 @@ msgstr "Name des Teils"
msgid "Part Description"
msgstr "Beschreibung des Teils"
-#: part/admin.py:36 part/models.py:889 part/templates/part/part_base.html:271
-#: templates/js/translated/part.js:1200 templates/js/translated/part.js:2233
-#: templates/js/translated/stock.js:1795
+#: part/admin.py:36 part/models.py:890 part/templates/part/part_base.html:271
+#: templates/js/translated/part.js:1199 templates/js/translated/part.js:2309
+#: templates/js/translated/stock.js:1952
msgid "IPN"
msgstr "IPN (Interne Produktnummer)"
-#: part/admin.py:37 part/models.py:896 part/templates/part/part_base.html:279
-#: report/models.py:179 templates/js/translated/part.js:1205
-#: templates/js/translated/part.js:2239
+#: part/admin.py:37 part/models.py:897 part/templates/part/part_base.html:279
+#: report/models.py:179 templates/js/translated/part.js:1204
+#: templates/js/translated/part.js:2315
msgid "Revision"
msgstr "Version"
-#: part/admin.py:38 part/admin.py:198 part/models.py:875
+#: part/admin.py:38 part/admin.py:198 part/models.py:876
#: part/templates/part/category.html:93 part/templates/part/part_base.html:300
msgid "Keywords"
msgstr "Schlüsselwörter"
@@ -5358,24 +5400,24 @@ msgstr "Standard-Standortnummer"
msgid "Default Supplier ID"
msgstr "Standard-Lieferantennummer"
-#: part/admin.py:46 part/models.py:864 part/templates/part/part_base.html:179
+#: part/admin.py:46 part/models.py:865 part/templates/part/part_base.html:179
msgid "Variant Of"
msgstr "Variante von"
-#: part/admin.py:47 part/models.py:980 part/templates/part/part_base.html:205
+#: part/admin.py:47 part/models.py:981 part/templates/part/part_base.html:205
msgid "Minimum Stock"
msgstr "Minimaler Bestand"
#: part/admin.py:61 part/templates/part/part_base.html:199
-#: templates/js/translated/company.js:1299
-#: templates/js/translated/table_filters.js:301
+#: templates/js/translated/company.js:1720
+#: templates/js/translated/table_filters.js:307
msgid "In Stock"
msgstr "Auf Lager"
#: part/admin.py:62 part/bom.py:178 part/templates/part/part_base.html:212
-#: templates/js/translated/bom.js:1167 templates/js/translated/build.js:2191
-#: templates/js/translated/part.js:687 templates/js/translated/part.js:2123
-#: templates/js/translated/table_filters.js:140
+#: templates/js/translated/bom.js:1187 templates/js/translated/build.js:2541
+#: templates/js/translated/part.js:686 templates/js/translated/part.js:2122
+#: templates/js/translated/table_filters.js:146
msgid "On Order"
msgstr "Bestellt"
@@ -5383,23 +5425,16 @@ msgstr "Bestellt"
msgid "Used In"
msgstr "Benutzt in"
-#: part/admin.py:64 templates/js/translated/build.js:2203
-#: templates/js/translated/build.js:2465 templates/js/translated/build.js:3052
-#: templates/js/translated/sales_order.js:1906
-#: templates/js/translated/table_filters.js:488
-msgid "Allocated"
-msgstr "Zugeordnet"
-
#: part/admin.py:65 part/templates/part/part_base.html:243 stock/admin.py:124
-#: templates/js/translated/part.js:692 templates/js/translated/part.js:2127
+#: templates/js/translated/part.js:691 templates/js/translated/part.js:2126
msgid "Building"
msgstr "Im Bau"
-#: part/admin.py:66 part/models.py:2930 templates/js/translated/part.js:943
+#: part/admin.py:66 part/models.py:2964 templates/js/translated/part.js:942
msgid "Minimum Cost"
msgstr "Minimale Kosten"
-#: part/admin.py:67 part/models.py:2936 templates/js/translated/part.js:953
+#: part/admin.py:67 part/models.py:2970 templates/js/translated/part.js:952
msgid "Maximum Cost"
msgstr "Maximale Kosten"
@@ -5416,13 +5451,13 @@ msgstr "Name des übergeordneten Teils"
msgid "Category Path"
msgstr "Pfad zur Kategorie"
-#: part/admin.py:202 part/models.py:392 part/templates/part/cat_link.html:3
-#: part/templates/part/category.html:23 part/templates/part/category.html:140
-#: part/templates/part/category.html:160
+#: part/admin.py:202 part/models.py:393 part/serializers.py:307
+#: part/templates/part/cat_link.html:3 part/templates/part/category.html:23
+#: part/templates/part/category.html:140 part/templates/part/category.html:160
#: part/templates/part/category_sidebar.html:9
-#: templates/InvenTree/index.html:86 templates/InvenTree/search.html:84
+#: templates/InvenTree/index.html:36 templates/InvenTree/search.html:84
#: templates/InvenTree/settings/sidebar.html:45
-#: templates/js/translated/part.js:2754 templates/js/translated/search.js:172
+#: templates/js/translated/part.js:2739 templates/js/translated/search.js:130
#: templates/navbar.html:24 users/models.py:38
msgid "Parts"
msgstr "Teile"
@@ -5439,7 +5474,7 @@ msgstr "Stücklisten-Position ID"
msgid "Parent IPN"
msgstr "Übergeordnete IPN"
-#: part/admin.py:274 part/models.py:3675
+#: part/admin.py:274 part/models.py:3724
msgid "Part IPN"
msgstr "Teil IPN"
@@ -5453,35 +5488,35 @@ msgstr "Niedrigster Preis"
msgid "Maximum Price"
msgstr "Höchster Preis"
-#: part/api.py:498
+#: part/api.py:501
msgid "Incoming Purchase Order"
msgstr "Eingehende Bestellung"
-#: part/api.py:518
+#: part/api.py:521
msgid "Outgoing Sales Order"
msgstr "Ausgehender Auftrag"
-#: part/api.py:536
+#: part/api.py:539
msgid "Stock produced by Build Order"
msgstr "Lagerartikel produziert von Bauauftrag"
-#: part/api.py:622
+#: part/api.py:625
msgid "Stock required for Build Order"
msgstr "Lagerartikel für Bauauftrag benötigt"
-#: part/api.py:770
+#: part/api.py:773
msgid "Valid"
msgstr "Gültig"
-#: part/api.py:771
+#: part/api.py:774
msgid "Validate entire Bill of Materials"
msgstr "Gesamte Stückliste validieren"
-#: part/api.py:777
+#: part/api.py:780
msgid "This option must be selected"
msgstr "Diese Option muss ausgewählt werden"
-#: part/bom.py:175 part/models.py:127 part/models.py:923
+#: part/bom.py:175 part/models.py:128 part/models.py:924
#: part/templates/part/category.html:115 part/templates/part/part_base.html:369
msgid "Default Location"
msgstr "Standard-Lagerort"
@@ -5491,7 +5526,7 @@ msgid "Total Stock"
msgstr "Gesamtbestand"
#: part/bom.py:177 part/templates/part/part_base.html:194
-#: templates/js/translated/sales_order.js:1873
+#: templates/js/translated/sales_order.js:1885
msgid "Available Stock"
msgstr "Verfügbarer Bestand"
@@ -5499,916 +5534,913 @@ msgstr "Verfügbarer Bestand"
msgid "Input quantity for price calculation"
msgstr "Menge für die Preisberechnung"
-#: part/models.py:75 part/models.py:3616 part/templates/part/category.html:16
+#: part/models.py:76 part/models.py:3665 part/templates/part/category.html:16
#: part/templates/part/part_app_base.html:10
msgid "Part Category"
msgstr "Teil-Kategorie"
-#: part/models.py:76 part/templates/part/category.html:135
-#: templates/InvenTree/search.html:97 templates/js/translated/search.js:200
+#: part/models.py:77 part/templates/part/category.html:135
+#: templates/InvenTree/search.html:97 templates/js/translated/search.js:158
#: users/models.py:37
msgid "Part Categories"
msgstr "Teil-Kategorien"
-#: part/models.py:128
+#: part/models.py:129
msgid "Default location for parts in this category"
msgstr "Standard-Lagerort für Teile dieser Kategorie"
-#: part/models.py:133 stock/models.py:124 templates/js/translated/stock.js:2520
-#: templates/js/translated/table_filters.js:209
-#: templates/js/translated/table_filters.js:229
+#: part/models.py:134 stock/models.py:124 templates/js/translated/stock.js:2651
+#: templates/js/translated/table_filters.js:215
+#: templates/js/translated/table_filters.js:235
msgid "Structural"
msgstr "Strukturell"
-#: part/models.py:135
+#: part/models.py:136
msgid "Parts may not be directly assigned to a structural category, but may be assigned to child categories."
msgstr "Teile können nicht direkt einer strukturellen Kategorie zugeordnet werden, können aber untergeordneten Kategorien zugeordnet werden."
-#: part/models.py:139
+#: part/models.py:140
msgid "Default keywords"
msgstr "Standard Stichwörter"
-#: part/models.py:139
+#: part/models.py:140
msgid "Default keywords for parts in this category"
msgstr "Standard-Stichworte für Teile dieser Kategorie"
-#: part/models.py:144 stock/models.py:113
+#: part/models.py:145 stock/models.py:113
msgid "Icon"
msgstr "Symbol"
-#: part/models.py:145 stock/models.py:114
+#: part/models.py:146 stock/models.py:114
msgid "Icon (optional)"
msgstr "Symbol (optional)"
-#: part/models.py:164
+#: part/models.py:165
msgid "You cannot make this part category structural because some parts are already assigned to it!"
msgstr "Sie können diese Teilekategorie nicht als strukturell festlegen, da ihr bereits Teile zugewiesen sind!"
-#: part/models.py:475
+#: part/models.py:476
msgid "Invalid choice for parent part"
msgstr "Ungültige Auswahl für übergeordnetes Teil"
-#: part/models.py:517 part/models.py:529
+#: part/models.py:518 part/models.py:530
#, 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:601
+#: part/models.py:602
#, python-brace-format
msgid "IPN must match regex pattern {pat}"
msgstr "IPN muss zu Regex-Muster {pat} passen"
-#: part/models.py:672
+#: part/models.py:673
msgid "Stock item with this serial number already exists"
msgstr "Ein Lagerartikel mit dieser Seriennummer existiert bereits"
-#: part/models.py:803
+#: part/models.py:804
msgid "Duplicate IPN not allowed in part settings"
msgstr "Doppelte IPN in den Teil-Einstellungen nicht erlaubt"
-#: part/models.py:808
+#: part/models.py:809
msgid "Part with this Name, IPN and Revision already exists."
msgstr "Teil mit diesem Namen, IPN und Revision existiert bereits."
-#: part/models.py:822
+#: part/models.py:823
msgid "Parts cannot be assigned to structural part categories!"
msgstr "Strukturellen Teilekategorien können keine Teile zugewiesen werden!"
-#: part/models.py:846 part/models.py:3672
+#: part/models.py:847 part/models.py:3721
msgid "Part name"
msgstr "Name des Teils"
-#: part/models.py:852
+#: part/models.py:853
msgid "Is Template"
msgstr "Ist eine Vorlage"
-#: part/models.py:853
+#: part/models.py:854
msgid "Is this part a template part?"
msgstr "Ist dieses Teil eine Vorlage?"
-#: part/models.py:863
+#: part/models.py:864
msgid "Is this part a variant of another part?"
msgstr "Ist dieses Teil eine Variante eines anderen Teils?"
-#: part/models.py:870
+#: part/models.py:871
msgid "Part description (optional)"
msgstr ""
-#: part/models.py:876
+#: part/models.py:877
msgid "Part keywords to improve visibility in search results"
msgstr "Schlüsselworte um die Sichtbarkeit in Suchergebnissen zu verbessern"
-#: part/models.py:883 part/models.py:3198 part/models.py:3615
-#: part/serializers.py:848 part/templates/part/part_base.html:262
+#: part/models.py:884 part/models.py:3232 part/models.py:3664
+#: part/serializers.py:320 part/serializers.py:910
+#: part/templates/part/part_base.html:262
#: templates/InvenTree/settings/settings_staff_js.html:204
#: templates/js/translated/notification.js:59
-#: templates/js/translated/part.js:2269 templates/js/translated/part.js:2481
+#: templates/js/translated/part.js:2345
msgid "Category"
msgstr "Kategorie"
-#: part/models.py:884
+#: part/models.py:885
msgid "Part category"
msgstr "Teile-Kategorie"
-#: part/models.py:890
+#: part/models.py:891
msgid "Internal Part Number"
msgstr "Interne Teilenummer"
-#: part/models.py:895
+#: part/models.py:896
msgid "Part revision or version number"
msgstr "Revisions- oder Versionsnummer"
-#: part/models.py:921
+#: part/models.py:922
msgid "Where is this item normally stored?"
msgstr "Wo wird dieses Teil normalerweise gelagert?"
-#: part/models.py:966 part/templates/part/part_base.html:378
+#: part/models.py:967 part/templates/part/part_base.html:378
msgid "Default Supplier"
msgstr "Standard Zulieferer"
-#: part/models.py:967
+#: part/models.py:968
msgid "Default supplier part"
msgstr "Standard Zuliefererteil"
-#: part/models.py:974
+#: part/models.py:975
msgid "Default Expiry"
msgstr "Standard Ablaufzeit"
-#: part/models.py:975
+#: part/models.py:976
msgid "Expiry time (in days) for stock items of this part"
msgstr "Ablauf-Zeit (in Tagen) für Bestand dieses Teils"
-#: part/models.py:981
+#: part/models.py:982
msgid "Minimum allowed stock level"
msgstr "Minimal zulässiger Bestand"
-#: part/models.py:988
+#: part/models.py:989
msgid "Units of measure for this part"
msgstr "Maßeinheit für diesen Teil"
-#: part/models.py:997
+#: part/models.py:998
msgid "Can this part be built from other parts?"
msgstr "Kann dieses Teil aus anderen Teilen angefertigt werden?"
-#: part/models.py:1003
+#: part/models.py:1004
msgid "Can this part be used to build other parts?"
msgstr "Kann dieses Teil zum Bauauftrag von anderen genutzt werden?"
-#: part/models.py:1009
+#: part/models.py:1010
msgid "Does this part have tracking for unique items?"
msgstr "Hat dieses Teil Tracking für einzelne Objekte?"
-#: part/models.py:1014
+#: part/models.py:1015
msgid "Can this part be purchased from external suppliers?"
msgstr "Kann dieses Teil von externen Zulieferern gekauft werden?"
-#: part/models.py:1019
+#: part/models.py:1020
msgid "Can this part be sold to customers?"
msgstr "Kann dieses Teil an Kunden verkauft werden?"
-#: part/models.py:1024
+#: part/models.py:1025
msgid "Is this part active?"
msgstr "Ist dieses Teil aktiv?"
-#: part/models.py:1029
+#: part/models.py:1030
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:1031
+#: part/models.py:1032
msgid "BOM checksum"
msgstr "Prüfsumme der Stückliste"
-#: part/models.py:1031
+#: part/models.py:1032
msgid "Stored BOM checksum"
msgstr "Prüfsumme der Stückliste gespeichert"
-#: part/models.py:1034
+#: part/models.py:1035
msgid "BOM checked by"
msgstr "Stückliste kontrolliert von"
-#: part/models.py:1036
+#: part/models.py:1037
msgid "BOM checked date"
msgstr "BOM Kontrolldatum"
-#: part/models.py:1040
+#: part/models.py:1041
msgid "Creation User"
msgstr "Erstellungs-Nutzer"
-#: part/models.py:1042
+#: part/models.py:1043
msgid "User responsible for this part"
msgstr "Benutzer, der für diesen Teil verantwortlich ist"
-#: part/models.py:1046 part/templates/part/part_base.html:341
+#: part/models.py:1047 part/templates/part/part_base.html:341
#: stock/templates/stock/item_base.html:447
-#: templates/js/translated/part.js:2331
+#: templates/js/translated/part.js:2407
msgid "Last Stocktake"
msgstr "Letzte Inventur"
-#: part/models.py:1921
+#: part/models.py:1923
msgid "Sell multiple"
msgstr "Mehrere verkaufen"
-#: part/models.py:2853
+#: part/models.py:2887
msgid "Currency used to cache pricing calculations"
msgstr "Währung für die Berechnung der Preise im Cache"
-#: part/models.py:2870
+#: part/models.py:2904
msgid "Minimum BOM Cost"
msgstr "Minimale Stücklisten Kosten"
-#: part/models.py:2871
+#: part/models.py:2905
msgid "Minimum cost of component parts"
msgstr "Minimale Kosten für Teile"
-#: part/models.py:2876
+#: part/models.py:2910
msgid "Maximum BOM Cost"
msgstr "Maximale Stücklisten Kosten"
-#: part/models.py:2877
+#: part/models.py:2911
msgid "Maximum cost of component parts"
msgstr "Maximale Kosten für Teile"
-#: part/models.py:2882
+#: part/models.py:2916
msgid "Minimum Purchase Cost"
msgstr "Minimale Einkaufskosten"
-#: part/models.py:2883
+#: part/models.py:2917
msgid "Minimum historical purchase cost"
msgstr "Minimale historische Kaufkosten"
-#: part/models.py:2888
+#: part/models.py:2922
msgid "Maximum Purchase Cost"
msgstr "Maximale Einkaufskosten"
-#: part/models.py:2889
+#: part/models.py:2923
msgid "Maximum historical purchase cost"
msgstr "Maximale historische Einkaufskosten"
-#: part/models.py:2894
+#: part/models.py:2928
msgid "Minimum Internal Price"
msgstr "Minimaler interner Preis"
-#: part/models.py:2895
+#: part/models.py:2929
msgid "Minimum cost based on internal price breaks"
msgstr "Minimale Kosten basierend auf den internen Staffelpreisen"
-#: part/models.py:2900
+#: part/models.py:2934
msgid "Maximum Internal Price"
msgstr "Maximaler interner Preis"
-#: part/models.py:2901
+#: part/models.py:2935
msgid "Maximum cost based on internal price breaks"
msgstr "Maximale Kosten basierend auf internen Preisstaffeln"
-#: part/models.py:2906
+#: part/models.py:2940
msgid "Minimum Supplier Price"
msgstr "Minimaler Lieferantenpreis"
-#: part/models.py:2907
+#: part/models.py:2941
msgid "Minimum price of part from external suppliers"
msgstr "Mindestpreis für Teil von externen Lieferanten"
-#: part/models.py:2912
+#: part/models.py:2946
msgid "Maximum Supplier Price"
msgstr "Maximaler Lieferantenpreis"
-#: part/models.py:2913
+#: part/models.py:2947
msgid "Maximum price of part from external suppliers"
msgstr "Maximaler Preis für Teil von externen Lieferanten"
-#: part/models.py:2918
+#: part/models.py:2952
msgid "Minimum Variant Cost"
msgstr "Minimale Variantenkosten"
-#: part/models.py:2919
+#: part/models.py:2953
msgid "Calculated minimum cost of variant parts"
msgstr "Berechnete minimale Kosten für Variantenteile"
-#: part/models.py:2924
+#: part/models.py:2958
msgid "Maximum Variant Cost"
msgstr "Maximale Variantenkosten"
-#: part/models.py:2925
+#: part/models.py:2959
msgid "Calculated maximum cost of variant parts"
msgstr "Berechnete maximale Kosten für Variantenteile"
-#: part/models.py:2931
+#: part/models.py:2965
msgid "Calculated overall minimum cost"
msgstr "Berechnete Mindestkosten"
-#: part/models.py:2937
+#: part/models.py:2971
msgid "Calculated overall maximum cost"
msgstr "Berechnete Maximalkosten"
-#: part/models.py:2942
+#: part/models.py:2976
msgid "Minimum Sale Price"
msgstr "Mindestverkaufspreis"
-#: part/models.py:2943
+#: part/models.py:2977
msgid "Minimum sale price based on price breaks"
msgstr "Mindestverkaufspreis basierend auf Staffelpreisen"
-#: part/models.py:2948
+#: part/models.py:2982
msgid "Maximum Sale Price"
msgstr "Maximaler Verkaufspreis"
-#: part/models.py:2949
+#: part/models.py:2983
msgid "Maximum sale price based on price breaks"
msgstr "Maximalverkaufspreis basierend auf Staffelpreisen"
-#: part/models.py:2954
+#: part/models.py:2988
msgid "Minimum Sale Cost"
msgstr "Mindestverkaufskosten"
-#: part/models.py:2955
+#: part/models.py:2989
msgid "Minimum historical sale price"
msgstr "Minimaler historischer Verkaufspreis"
-#: part/models.py:2960
+#: part/models.py:2994
msgid "Maximum Sale Cost"
msgstr "Maximale Verkaufskosten"
-#: part/models.py:2961
+#: part/models.py:2995
msgid "Maximum historical sale price"
msgstr "Maximaler historischer Verkaufspreis"
-#: part/models.py:2980
+#: part/models.py:3014
msgid "Part for stocktake"
msgstr "Teil für die Inventur"
-#: part/models.py:2985
+#: part/models.py:3019
msgid "Item Count"
msgstr "Stückzahl"
-#: part/models.py:2986
+#: part/models.py:3020
msgid "Number of individual stock entries at time of stocktake"
msgstr "Anzahl einzelner Bestandseinträge zum Zeitpunkt der Inventur"
-#: part/models.py:2993
+#: part/models.py:3027
msgid "Total available stock at time of stocktake"
msgstr "Insgesamt verfügbarer Lagerbestand zum Zeitpunkt der Inventur"
-#: part/models.py:2997 part/models.py:3080
+#: part/models.py:3031 part/models.py:3114
#: part/templates/part/part_scheduling.html:13
#: report/templates/report/inventree_test_report_base.html:106
#: templates/InvenTree/settings/plugin_settings.html:37
#: templates/InvenTree/settings/settings_staff_js.html:360
-#: templates/js/translated/part.js:1059 templates/js/translated/pricing.js:812
+#: templates/js/translated/part.js:1058 templates/js/translated/pricing.js:812
#: templates/js/translated/pricing.js:936
-#: templates/js/translated/purchase_order.js:1691
-#: templates/js/translated/stock.js:2558
+#: templates/js/translated/purchase_order.js:1706
+#: templates/js/translated/stock.js:2689
msgid "Date"
msgstr "Datum"
-#: part/models.py:2998
+#: part/models.py:3032
msgid "Date stocktake was performed"
msgstr "Datum der Inventur"
-#: part/models.py:3006
+#: part/models.py:3040
msgid "Additional notes"
msgstr "Zusätzliche Notizen"
-#: part/models.py:3014
+#: part/models.py:3048
msgid "User who performed this stocktake"
msgstr "Benutzer, der diese Inventur durchgeführt hat"
-#: part/models.py:3019
+#: part/models.py:3053
msgid "Minimum Stock Cost"
msgstr "Mindestbestandswert"
-#: part/models.py:3020
+#: part/models.py:3054
msgid "Estimated minimum cost of stock on hand"
msgstr "Geschätzter Mindestwert des vorhandenen Bestands"
-#: part/models.py:3025
+#: part/models.py:3059
msgid "Maximum Stock Cost"
msgstr "Maximaler Bestandswert"
-#: part/models.py:3026
+#: part/models.py:3060
msgid "Estimated maximum cost of stock on hand"
msgstr "Geschätzter Maximalwert des vorhandenen Bestands"
-#: part/models.py:3087 templates/InvenTree/settings/settings_staff_js.html:349
+#: part/models.py:3121 templates/InvenTree/settings/settings_staff_js.html:349
msgid "Report"
msgstr "Bericht"
-#: part/models.py:3088
+#: part/models.py:3122
msgid "Stocktake report file (generated internally)"
msgstr "Inventur-Berichtsdatei (intern generiert)"
-#: part/models.py:3093 templates/InvenTree/settings/settings_staff_js.html:356
+#: part/models.py:3127 templates/InvenTree/settings/settings_staff_js.html:356
msgid "Part Count"
msgstr "Anzahl der Teile"
-#: part/models.py:3094
+#: part/models.py:3128
msgid "Number of parts covered by stocktake"
msgstr "Anzahl der Teile, die von der Inventur abgedeckt werden"
-#: part/models.py:3102
+#: part/models.py:3136
msgid "User who requested this stocktake report"
msgstr "Benutzer, der diesen Inventurbericht angefordert hat"
-#: part/models.py:3238
+#: part/models.py:3272
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:3255
+#: part/models.py:3289
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:3275 templates/js/translated/part.js:2821
+#: part/models.py:3309 templates/js/translated/part.js:2806
msgid "Test Name"
msgstr "Test-Name"
-#: part/models.py:3276
+#: part/models.py:3310
msgid "Enter a name for the test"
msgstr "Namen für diesen Test eingeben"
-#: part/models.py:3281
+#: part/models.py:3315
msgid "Test Description"
msgstr "Test-Beschreibung"
-#: part/models.py:3282
+#: part/models.py:3316
msgid "Enter description for this test"
msgstr "Beschreibung für diesen Test eingeben"
-#: part/models.py:3287 templates/js/translated/part.js:2830
-#: templates/js/translated/table_filters.js:423
+#: part/models.py:3321 templates/js/translated/part.js:2815
+#: templates/js/translated/table_filters.js:429
msgid "Required"
msgstr "Benötigt"
-#: part/models.py:3288
+#: part/models.py:3322
msgid "Is this test required to pass?"
msgstr "Muss dieser Test erfolgreich sein?"
-#: part/models.py:3293 templates/js/translated/part.js:2838
+#: part/models.py:3327 templates/js/translated/part.js:2823
msgid "Requires Value"
msgstr "Erfordert Wert"
-#: part/models.py:3294
+#: part/models.py:3328
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:3299 templates/js/translated/part.js:2845
+#: part/models.py:3333 templates/js/translated/part.js:2830
msgid "Requires Attachment"
msgstr "Anhang muss eingegeben werden"
-#: part/models.py:3300
+#: part/models.py:3334
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:3346
+#: part/models.py:3380
msgid "Checkbox parameters cannot have units"
msgstr ""
-#: part/models.py:3351
+#: part/models.py:3385
msgid "Checkbox parameters cannot have choices"
msgstr ""
-#: part/models.py:3369
+#: part/models.py:3403
msgid "Choices must be unique"
msgstr ""
-#: part/models.py:3385
+#: part/models.py:3419
msgid "Parameter template name must be unique"
msgstr "Vorlagen-Name des Parameters muss eindeutig sein"
-#: part/models.py:3401
+#: part/models.py:3435
msgid "Parameter Name"
msgstr "Name des Parameters"
-#: part/models.py:3407
+#: part/models.py:3441
msgid "Physical units for this parameter"
msgstr ""
-#: part/models.py:3417
+#: part/models.py:3451
msgid "Parameter description"
msgstr "Parameter-Beschreibung"
-#: part/models.py:3423 templates/js/translated/part.js:1600
-#: templates/js/translated/table_filters.js:734
+#: part/models.py:3457 templates/js/translated/part.js:1599
+#: templates/js/translated/table_filters.js:756
msgid "Checkbox"
msgstr ""
-#: part/models.py:3424
+#: part/models.py:3458
msgid "Is this parameter a checkbox?"
msgstr ""
-#: part/models.py:3429 templates/js/translated/part.js:1609
+#: part/models.py:3463 templates/js/translated/part.js:1608
msgid "Choices"
msgstr ""
-#: part/models.py:3430
+#: part/models.py:3464
msgid "Valid choices for this parameter (comma-separated)"
msgstr ""
-#: part/models.py:3511
+#: part/models.py:3545
msgid "Invalid choice for parameter value"
msgstr ""
-#: part/models.py:3555
+#: part/models.py:3589
msgid "Parent Part"
msgstr "Ausgangsteil"
-#: part/models.py:3560 part/models.py:3621 part/models.py:3622
+#: part/models.py:3594 part/models.py:3670 part/models.py:3671
#: templates/InvenTree/settings/settings_staff_js.html:199
msgid "Parameter Template"
msgstr "Parameter Vorlage"
-#: part/models.py:3565
+#: part/models.py:3599
msgid "Data"
msgstr "Wert"
-#: part/models.py:3565
+#: part/models.py:3599
msgid "Parameter Value"
msgstr "Parameter Wert"
-#: part/models.py:3626 templates/InvenTree/settings/settings_staff_js.html:208
+#: part/models.py:3675 templates/InvenTree/settings/settings_staff_js.html:208
msgid "Default Value"
msgstr "Standard-Wert"
-#: part/models.py:3627
+#: part/models.py:3676
msgid "Default Parameter Value"
msgstr "Standard Parameter Wert"
-#: part/models.py:3664
+#: part/models.py:3713
msgid "Part ID or part name"
msgstr "Teilnummer oder Teilname"
-#: part/models.py:3668
+#: part/models.py:3717
msgid "Unique part ID value"
msgstr "Eindeutige Teil-ID"
-#: part/models.py:3676
+#: part/models.py:3725
msgid "Part IPN value"
msgstr "IPN-Wert des Teils"
-#: part/models.py:3679
+#: part/models.py:3728
msgid "Level"
msgstr "Stufe"
-#: part/models.py:3680
+#: part/models.py:3729
msgid "BOM level"
msgstr "Stücklistenebene"
-#: part/models.py:3764
+#: part/models.py:3735 part/models.py:4113
+msgid "BOM Item"
+msgstr "Stücklisten-Position"
+
+#: part/models.py:3808
msgid "Select parent part"
msgstr "Ausgangsteil auswählen"
-#: part/models.py:3772
+#: part/models.py:3816
msgid "Sub part"
msgstr "Untergeordnetes Teil"
-#: part/models.py:3773
+#: part/models.py:3817
msgid "Select part to be used in BOM"
msgstr "Teil für die Nutzung in der Stückliste auswählen"
-#: part/models.py:3779
+#: part/models.py:3823
msgid "BOM quantity for this BOM item"
msgstr "Stücklisten-Anzahl für dieses Stücklisten-Teil"
-#: part/models.py:3783 part/templates/part/upload_bom.html:58
-#: templates/js/translated/bom.js:971 templates/js/translated/bom.js:998
-#: templates/js/translated/build.js:2113
-#: templates/js/translated/table_filters.js:156
-#: templates/js/translated/table_filters.js:185
-#: templates/js/translated/table_filters.js:500
-msgid "Optional"
-msgstr "Optional"
-
-#: part/models.py:3784
+#: part/models.py:3828
msgid "This BOM item is optional"
msgstr "Diese Stücklisten-Position ist optional"
-#: part/models.py:3789 templates/js/translated/bom.js:967
-#: templates/js/translated/bom.js:1007 templates/js/translated/build.js:2104
-#: templates/js/translated/table_filters.js:160
-#: templates/js/translated/table_filters.js:496
-msgid "Consumable"
-msgstr "Verbrauchsmaterial"
-
-#: part/models.py:3790
+#: part/models.py:3834
msgid "This BOM item is consumable (it is not tracked in build orders)"
msgstr "Diese Stücklisten-Position ist ein Verbrauchsartikel (sie wird nicht in Bauaufträgen verfolgt)"
-#: part/models.py:3794 part/templates/part/upload_bom.html:55
+#: part/models.py:3838 part/templates/part/upload_bom.html:55
msgid "Overage"
msgstr "Überschuss"
-#: part/models.py:3795
+#: part/models.py:3839
msgid "Estimated build wastage quantity (absolute or percentage)"
msgstr "Geschätzter Ausschuss (absolut oder prozentual)"
-#: part/models.py:3798
+#: part/models.py:3842
msgid "BOM item reference"
msgstr "Referenz der Postion auf der Stückliste"
-#: part/models.py:3801
+#: part/models.py:3845
msgid "BOM item notes"
msgstr "Notizen zur Stücklisten-Position"
-#: part/models.py:3805
+#: part/models.py:3849
msgid "Checksum"
msgstr "Prüfsumme"
-#: part/models.py:3805
+#: part/models.py:3849
msgid "BOM line checksum"
msgstr "Prüfsumme der Stückliste"
-#: part/models.py:3810 templates/js/translated/table_filters.js:144
+#: part/models.py:3854 templates/js/translated/table_filters.js:150
msgid "Validated"
msgstr "überprüft"
-#: part/models.py:3811
+#: part/models.py:3855
msgid "This BOM item has been validated"
msgstr "Diese Stücklistenposition wurde validiert"
-#: part/models.py:3816 part/templates/part/upload_bom.html:57
-#: templates/js/translated/bom.js:1024
-#: templates/js/translated/table_filters.js:148
-#: templates/js/translated/table_filters.js:181
+#: part/models.py:3860 part/templates/part/upload_bom.html:57
+#: templates/js/translated/bom.js:1042
+#: templates/js/translated/table_filters.js:154
+#: templates/js/translated/table_filters.js:187
msgid "Gets inherited"
msgstr "Wird vererbt"
-#: part/models.py:3817
+#: part/models.py:3861
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:3822 part/templates/part/upload_bom.html:56
-#: templates/js/translated/bom.js:1016
+#: part/models.py:3866 part/templates/part/upload_bom.html:56
+#: templates/js/translated/bom.js:1034
msgid "Allow Variants"
msgstr "Varianten zulassen"
-#: part/models.py:3823
+#: part/models.py:3867
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:3909 stock/models.py:577
+#: part/models.py:3953 stock/models.py:577
msgid "Quantity must be integer value for trackable parts"
msgstr "Menge muss eine Ganzzahl sein"
-#: part/models.py:3918 part/models.py:3920
+#: part/models.py:3962 part/models.py:3964
msgid "Sub part must be specified"
msgstr "Zuliefererteil muss festgelegt sein"
-#: part/models.py:4036
+#: part/models.py:4080
msgid "BOM Item Substitute"
msgstr "Stücklisten Ersatzteile"
-#: part/models.py:4057
+#: part/models.py:4101
msgid "Substitute part cannot be the same as the master part"
msgstr "Ersatzteil kann nicht identisch mit dem Hauptteil sein"
-#: part/models.py:4070
+#: part/models.py:4114
msgid "Parent BOM item"
msgstr "Übergeordnete Stücklisten Position"
-#: part/models.py:4078
+#: part/models.py:4122
msgid "Substitute part"
msgstr "Ersatzteil"
-#: part/models.py:4093
+#: part/models.py:4137
msgid "Part 1"
msgstr "Teil 1"
-#: part/models.py:4097
+#: part/models.py:4141
msgid "Part 2"
msgstr "Teil 2"
-#: part/models.py:4097
+#: part/models.py:4141
msgid "Select Related Part"
msgstr "verknüpftes Teil auswählen"
-#: part/models.py:4115
+#: part/models.py:4159
msgid "Part relationship cannot be created between a part and itself"
msgstr "Teil-Beziehung kann nicht zwischen einem Teil und sich selbst erstellt werden"
-#: part/models.py:4119
+#: part/models.py:4163
msgid "Duplicate relationship already exists"
msgstr "Doppelte Beziehung existiert bereits"
-#: part/serializers.py:152 part/serializers.py:175 stock/serializers.py:257
+#: part/serializers.py:152 part/serializers.py:175 stock/serializers.py:319
msgid "Purchase currency of this stock item"
msgstr "Kaufwährung dieses Lagerartikels"
-#: part/serializers.py:302
+#: part/serializers.py:313
+msgid "No parts selected"
+msgstr ""
+
+#: part/serializers.py:321
+msgid "Select category"
+msgstr ""
+
+#: part/serializers.py:352
msgid "Original Part"
msgstr "Originalteil"
-#: part/serializers.py:302
+#: part/serializers.py:352
msgid "Select original part to duplicate"
msgstr "Originalteil zum Duplizieren auswählen"
-#: part/serializers.py:307
+#: part/serializers.py:357
msgid "Copy Image"
msgstr "Bild kopieren"
-#: part/serializers.py:307
+#: part/serializers.py:357
msgid "Copy image from original part"
msgstr "Bild vom Originalteil kopieren"
-#: part/serializers.py:312 part/templates/part/detail.html:296
+#: part/serializers.py:362 part/templates/part/detail.html:277
msgid "Copy BOM"
msgstr "Stückliste kopieren"
-#: part/serializers.py:312
+#: part/serializers.py:362
msgid "Copy bill of materials from original part"
msgstr "Stückliste vom Originalteil kopieren"
-#: part/serializers.py:317
+#: part/serializers.py:367
msgid "Copy Parameters"
msgstr "Parameter kopieren"
-#: part/serializers.py:317
+#: part/serializers.py:367
msgid "Copy parameter data from original part"
msgstr "Parameterdaten vom Originalteil kopieren"
-#: part/serializers.py:327
+#: part/serializers.py:377
msgid "Initial Stock Quantity"
msgstr "Start-Bestandsmenge"
-#: part/serializers.py:327
+#: part/serializers.py:377
msgid "Specify initial stock quantity for this Part. If quantity is zero, no stock is added."
msgstr "Initiale Lagermenge für dieses Teil. Wenn die Menge null ist, wird kein Lagerbestand hinzugefügt."
-#: part/serializers.py:333
+#: part/serializers.py:383
msgid "Initial Stock Location"
msgstr "Initialer Lagerort"
-#: part/serializers.py:333
+#: part/serializers.py:383
msgid "Specify initial stock location for this Part"
msgstr "Lagerstandort für dieses Teil angeben"
-#: part/serializers.py:343
+#: part/serializers.py:393
msgid "Select supplier (or leave blank to skip)"
msgstr "Lieferant auswählen (oder leer lassen, um zu überspringen)"
-#: part/serializers.py:354
+#: part/serializers.py:404
msgid "Select manufacturer (or leave blank to skip)"
msgstr "Hersteller auswählen (oder leer lassen, um zu überspringen)"
-#: part/serializers.py:360
+#: part/serializers.py:410
msgid "Manufacturer part number"
msgstr "Hersteller-Teilenummer"
-#: part/serializers.py:367
+#: part/serializers.py:417
msgid "Selected company is not a valid supplier"
msgstr "Ausgewählte Firma ist kein gültiger Lieferant"
-#: part/serializers.py:375
+#: part/serializers.py:425
msgid "Selected company is not a valid manufacturer"
msgstr "Ausgewählte Firma ist kein gültiger Hersteller"
-#: part/serializers.py:387
+#: part/serializers.py:437
msgid "Manufacturer part matching this MPN already exists"
msgstr "Herstellerteil mit dieser MPN existiert bereits"
-#: part/serializers.py:395
+#: part/serializers.py:445
msgid "Supplier part matching this SKU already exists"
msgstr "Lieferantenteil mit dieser SKU existiert bereits"
-#: part/serializers.py:620 part/templates/part/copy_part.html:9
-#: templates/js/translated/part.js:449
+#: part/serializers.py:682 part/templates/part/copy_part.html:9
+#: templates/js/translated/part.js:448
msgid "Duplicate Part"
msgstr "Teil duplizieren"
-#: part/serializers.py:620
+#: part/serializers.py:682
msgid "Copy initial data from another Part"
msgstr "Initiale Daten von anderem Teil kopieren"
-#: part/serializers.py:625 templates/js/translated/part.js:103
+#: part/serializers.py:687 templates/js/translated/part.js:102
msgid "Initial Stock"
msgstr "Initialer Lagerbestand"
-#: part/serializers.py:625
+#: part/serializers.py:687
msgid "Create Part with initial stock quantity"
msgstr "Erstelle Teil mit Ausgangsbestand"
-#: part/serializers.py:630
+#: part/serializers.py:692
msgid "Supplier Information"
msgstr "Lieferanteninformationen"
-#: part/serializers.py:630
+#: part/serializers.py:692
msgid "Add initial supplier information for this part"
msgstr "Lieferanteninformationen zu diesem Teil hinzufügen"
-#: part/serializers.py:636
+#: part/serializers.py:698
msgid "Copy Category Parameters"
msgstr "Kategorieparameter kopieren"
-#: part/serializers.py:637
+#: part/serializers.py:699
msgid "Copy parameter templates from selected part category"
msgstr "Parametervorlagen aus der ausgewählten Teilkategorie kopieren"
-#: part/serializers.py:842
+#: part/serializers.py:904
msgid "Limit stocktake report to a particular part, and any variant parts"
msgstr "Inventurbericht auf ein bestimmtes Teil und alle Variantenteile beschränken"
-#: part/serializers.py:848
+#: part/serializers.py:910
msgid "Limit stocktake report to a particular part category, and any child categories"
msgstr "Inventurbericht auf eine bestimmte Teilekategorie und alle untergeordneten Kategorien beschränken"
-#: part/serializers.py:854
+#: part/serializers.py:916
msgid "Limit stocktake report to a particular stock location, and any child locations"
msgstr "Inventurbericht auf einen bestimmten Lagerort und alle untergeordneten Lagerorte beschränken"
-#: part/serializers.py:859
+#: part/serializers.py:921
msgid "Generate Report"
msgstr "Bericht generieren"
-#: part/serializers.py:860
+#: part/serializers.py:922
msgid "Generate report file containing calculated stocktake data"
msgstr "Erstelle Berichtsdatei mit berechneten Inventurdaten"
-#: part/serializers.py:865
+#: part/serializers.py:927
msgid "Update Parts"
msgstr "Teile aktualisieren"
-#: part/serializers.py:866
+#: part/serializers.py:928
msgid "Update specified parts with calculated stocktake data"
msgstr "Angegebene Teile mit berechneten Inventurdaten aktualisieren"
-#: part/serializers.py:874
+#: part/serializers.py:936
msgid "Stocktake functionality is not enabled"
msgstr "Inventur-Funktionalität ist nicht aktiviert"
-#: part/serializers.py:963
+#: part/serializers.py:1025
msgid "Update"
msgstr "Aktualisieren"
-#: part/serializers.py:964
+#: part/serializers.py:1026
msgid "Update pricing for this part"
msgstr "Preis für dieses Teil aktualisieren"
-#: part/serializers.py:1246
+#: part/serializers.py:1308
msgid "Select part to copy BOM from"
msgstr "Teil auswählen, von dem Stückliste kopiert wird"
-#: part/serializers.py:1254
+#: part/serializers.py:1316
msgid "Remove Existing Data"
msgstr "Bestehende Daten entfernen"
-#: part/serializers.py:1255
+#: part/serializers.py:1317
msgid "Remove existing BOM items before copying"
msgstr "Bestehende Stücklisten-Positionen vor dem Kopieren entfernen"
-#: part/serializers.py:1260
+#: part/serializers.py:1322
msgid "Include Inherited"
msgstr "Vererbtes einschließen"
-#: part/serializers.py:1261
+#: part/serializers.py:1323
msgid "Include BOM items which are inherited from templated parts"
msgstr "Stücklisten-Positionen einbeziehen, die von Vorlage-Teilen geerbt werden"
-#: part/serializers.py:1266
+#: part/serializers.py:1328
msgid "Skip Invalid Rows"
msgstr "Ungültige Zeilen überspringen"
-#: part/serializers.py:1267
+#: part/serializers.py:1329
msgid "Enable this option to skip invalid rows"
msgstr "Aktiviere diese Option, um ungültige Zeilen zu überspringen"
-#: part/serializers.py:1272
+#: part/serializers.py:1334
msgid "Copy Substitute Parts"
msgstr "Ersatzteile kopieren"
-#: part/serializers.py:1273
+#: part/serializers.py:1335
msgid "Copy substitute parts when duplicate BOM items"
msgstr "Ersatzteile beim Duplizieren von Stücklisten-Positionen kopieren"
-#: part/serializers.py:1313
+#: part/serializers.py:1375
msgid "Clear Existing BOM"
msgstr "Bestehende Stückliste löschen"
-#: part/serializers.py:1314
+#: part/serializers.py:1376
msgid "Delete existing BOM items before uploading"
msgstr "Bestehende Stücklisten-Positionen vor dem Importieren entfernen"
-#: part/serializers.py:1344
+#: part/serializers.py:1406
msgid "No part column specified"
msgstr "Keine Teilspalte angegeben"
-#: part/serializers.py:1387
+#: part/serializers.py:1449
msgid "Multiple matching parts found"
msgstr "Mehrere übereinstimmende Teile gefunden"
-#: part/serializers.py:1390
+#: part/serializers.py:1452
msgid "No matching part found"
msgstr "Keine passenden Teile gefunden"
-#: part/serializers.py:1393
+#: part/serializers.py:1455
msgid "Part is not designated as a component"
msgstr "Teil ist nicht als Komponente angelegt"
-#: part/serializers.py:1402
+#: part/serializers.py:1464
msgid "Quantity not provided"
msgstr "Menge nicht angegeben"
-#: part/serializers.py:1410
+#: part/serializers.py:1472
msgid "Invalid quantity"
msgstr "Ungültige Menge"
-#: part/serializers.py:1431
+#: part/serializers.py:1493
msgid "At least one BOM item is required"
msgstr "Mindestens eine Stückliste-Position ist erforderlich"
@@ -6421,9 +6453,9 @@ msgstr "Benachrichtigungen über geringen Bestand"
msgid "The available stock for {part.name} has fallen below the configured minimum level"
msgstr "Der verfügbare Bestand für {part.name} ist unter das konfigurierte Mindestniveau gefallen"
-#: part/tasks.py:294 templates/js/translated/part.js:1040
-#: templates/js/translated/part.js:1793 templates/js/translated/part.js:1848
-#: templates/js/translated/purchase_order.js:2052
+#: part/tasks.py:294 templates/js/translated/part.js:1039
+#: templates/js/translated/part.js:1792 templates/js/translated/part.js:1847
+#: templates/js/translated/purchase_order.js:2062
msgid "Total Quantity"
msgstr "Gesamtstückzahl"
@@ -6461,14 +6493,6 @@ 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:291
-msgid "BOM actions"
-msgstr "Stücklisten-Aktionen"
-
-#: part/templates/part/bom.html:34
-msgid "Delete Items"
-msgstr "Einträge löschen"
-
#: part/templates/part/category.html:34
msgid "Perform stocktake for this part category"
msgstr "Inventur für diese Teilekategorie durchführen"
@@ -6505,7 +6529,7 @@ msgstr "Kategorie löschen"
msgid "Top level part category"
msgstr "Oberste Teil-Kategorie"
-#: part/templates/part/category.html:121 part/templates/part/category.html:225
+#: part/templates/part/category.html:121 part/templates/part/category.html:206
#: part/templates/part/category_sidebar.html:7
msgid "Subcategories"
msgstr "Unter-Kategorien"
@@ -6518,33 +6542,20 @@ msgstr "Teile (inklusive Unter-Kategorien)"
msgid "Create new part"
msgstr "Neues Teil anlegen"
-#: part/templates/part/category.html:165 templates/js/translated/bom.js:443
+#: part/templates/part/category.html:165 templates/js/translated/bom.js:444
msgid "New Part"
msgstr "Neues Teil"
-#: part/templates/part/category.html:175 part/templates/part/detail.html:390
-#: part/templates/part/detail.html:421
-msgid "Options"
-msgstr "Optionen"
-
-#: part/templates/part/category.html:179
-msgid "Set category"
-msgstr "Teil-Kategorie auswählen"
-
-#: part/templates/part/category.html:180
-msgid "Set Category"
-msgstr "Teil-Kategorie auswählen"
-
-#: part/templates/part/category.html:208
+#: part/templates/part/category.html:191
#: templates/InvenTree/settings/sidebar.html:47
msgid "Part Parameters"
msgstr "Teilparameter"
-#: part/templates/part/category.html:229
+#: part/templates/part/category.html:210
msgid "Create new part category"
msgstr "Teil-Kategorie anlegen"
-#: part/templates/part/category.html:230
+#: part/templates/part/category.html:211
msgid "New Category"
msgstr "Neue Kategorie"
@@ -6581,7 +6592,7 @@ msgid "Refresh scheduling data"
msgstr "Terminierungsdaten aktualisieren"
#: part/templates/part/detail.html:45 part/templates/part/prices.html:15
-#: templates/js/translated/tables.js:584
+#: templates/js/translated/tables.js:560
msgid "Refresh"
msgstr "Neu laden"
@@ -6592,7 +6603,7 @@ msgstr "Inventurinformationen hinzufügen"
#: part/templates/part/detail.html:67 part/templates/part/part_sidebar.html:50
#: stock/admin.py:130 templates/InvenTree/settings/part_stocktake.html:29
#: templates/InvenTree/settings/sidebar.html:51
-#: templates/js/translated/stock.js:1952 users/models.py:39
+#: templates/js/translated/stock.js:2109 users/models.py:39
msgid "Stocktake"
msgstr "Inventur"
@@ -6604,101 +6615,101 @@ msgstr "Teil Test-Vorlagen"
msgid "Add Test Template"
msgstr "Test Vorlage hinzufügen"
-#: part/templates/part/detail.html:145 stock/templates/stock/item.html:53
+#: part/templates/part/detail.html:139 stock/templates/stock/item.html:49
msgid "Sales Order Allocations"
msgstr "Verkaufsauftragszuweisungen"
-#: part/templates/part/detail.html:165
+#: part/templates/part/detail.html:156
msgid "Part Notes"
msgstr "Teile-Notizen"
-#: part/templates/part/detail.html:180
+#: part/templates/part/detail.html:171
msgid "Part Variants"
msgstr "Teil Varianten"
-#: part/templates/part/detail.html:184
+#: part/templates/part/detail.html:175
msgid "Create new variant"
msgstr "Neue Variante anlegen"
-#: part/templates/part/detail.html:185
+#: part/templates/part/detail.html:176
msgid "New Variant"
msgstr "neue Variante anlegen"
-#: part/templates/part/detail.html:212
+#: part/templates/part/detail.html:199
msgid "Add new parameter"
msgstr "Parameter hinzufügen"
-#: part/templates/part/detail.html:249 part/templates/part/part_sidebar.html:58
+#: part/templates/part/detail.html:232 part/templates/part/part_sidebar.html:58
msgid "Related Parts"
msgstr "Verknüpfte Teile"
-#: part/templates/part/detail.html:253 part/templates/part/detail.html:254
+#: part/templates/part/detail.html:236 part/templates/part/detail.html:237
msgid "Add Related"
msgstr "Verknüpftes Teil hinzufügen"
-#: part/templates/part/detail.html:274 part/templates/part/part_sidebar.html:17
+#: part/templates/part/detail.html:255 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:279
+#: part/templates/part/detail.html:260
msgid "Export actions"
msgstr "Export-Aktionen"
-#: part/templates/part/detail.html:283 templates/js/translated/bom.js:339
+#: part/templates/part/detail.html:264 templates/js/translated/bom.js:340
msgid "Export BOM"
msgstr "Stückliste exportieren"
-#: part/templates/part/detail.html:285
+#: part/templates/part/detail.html:266
msgid "Print BOM Report"
msgstr "Stücklisten-Bericht drucken"
-#: part/templates/part/detail.html:295
+#: part/templates/part/detail.html:272
+msgid "BOM actions"
+msgstr "Stücklisten-Aktionen"
+
+#: part/templates/part/detail.html:276
msgid "Upload BOM"
msgstr "Stückliste hochladen"
-#: part/templates/part/detail.html:297
+#: part/templates/part/detail.html:278
msgid "Validate BOM"
msgstr "Stückliste überprüfen"
-#: part/templates/part/detail.html:302 part/templates/part/detail.html:303
-#: templates/js/translated/bom.js:1279 templates/js/translated/bom.js:1280
+#: part/templates/part/detail.html:283 part/templates/part/detail.html:284
+#: templates/js/translated/bom.js:1299 templates/js/translated/bom.js:1300
msgid "Add BOM Item"
msgstr "Stücklisten-Position hinzufügen"
-#: part/templates/part/detail.html:316
+#: part/templates/part/detail.html:297
msgid "Assemblies"
msgstr "Baugruppen"
-#: part/templates/part/detail.html:334
+#: part/templates/part/detail.html:313
msgid "Part Builds"
msgstr "Gefertigte Teile"
-#: part/templates/part/detail.html:361 stock/templates/stock/item.html:38
+#: part/templates/part/detail.html:338 stock/templates/stock/item.html:36
msgid "Build Order Allocations"
msgstr "Bauauftragszuweisungen"
-#: part/templates/part/detail.html:377
+#: part/templates/part/detail.html:352
msgid "Part Suppliers"
msgstr "Zulieferer"
-#: part/templates/part/detail.html:407
+#: part/templates/part/detail.html:372
msgid "Part Manufacturers"
msgstr "Teil-Hersteller"
-#: part/templates/part/detail.html:423
-msgid "Delete manufacturer parts"
-msgstr "Herstellerteile löschen"
-
-#: part/templates/part/detail.html:707
+#: part/templates/part/detail.html:654
msgid "Related Part"
msgstr "verknüpftes Teil"
-#: part/templates/part/detail.html:715
+#: part/templates/part/detail.html:662
msgid "Add Related Part"
msgstr "verknüpftes Teil hinzufügen"
-#: part/templates/part/detail.html:800
+#: part/templates/part/detail.html:747
msgid "Add Test Result Template"
msgstr "Testergebnis-Vorlage hinzufügen"
@@ -6732,13 +6743,13 @@ msgid "Download Part Import Template"
msgstr "Teile-Importvorlage herunterladen"
#: part/templates/part/import_wizard/part_upload.html:92
-#: templates/js/translated/bom.js:308 templates/js/translated/bom.js:342
+#: templates/js/translated/bom.js:309 templates/js/translated/bom.js:343
#: templates/js/translated/order.js:129 templates/js/translated/tables.js:189
msgid "Format"
msgstr "Format"
#: part/templates/part/import_wizard/part_upload.html:93
-#: templates/js/translated/bom.js:309 templates/js/translated/bom.js:343
+#: templates/js/translated/bom.js:310 templates/js/translated/bom.js:344
#: templates/js/translated/order.js:130
msgid "Select file format"
msgstr "Dateiformat auswählen"
@@ -6779,7 +6790,7 @@ msgstr "Bestand zählen"
msgid "Transfer part stock"
msgstr "Teilbestand verschieben"
-#: part/templates/part/part_base.html:93
+#: part/templates/part/part_base.html:93 templates/js/translated/part.js:2264
msgid "Part actions"
msgstr "Teile Aktionen"
@@ -6824,10 +6835,10 @@ msgid "Part is not active"
msgstr ""
#: part/templates/part/part_base.html:148
-#: templates/js/translated/company.js:945
-#: templates/js/translated/company.js:1185
-#: templates/js/translated/model_renderers.js:273
-#: templates/js/translated/part.js:792 templates/js/translated/part.js:1192
+#: templates/js/translated/company.js:1318
+#: templates/js/translated/company.js:1606
+#: templates/js/translated/model_renderers.js:287
+#: templates/js/translated/part.js:791 templates/js/translated/part.js:1191
msgid "Inactive"
msgstr "Inaktiv"
@@ -6850,7 +6861,7 @@ msgstr "Zu Bauaufträgen zugeordnet"
msgid "Allocated to Sales Orders"
msgstr "Zur Bestellung zugeordnet"
-#: part/templates/part/part_base.html:237 templates/js/translated/bom.js:1178
+#: part/templates/part/part_base.html:237 templates/js/translated/bom.js:1198
msgid "Can Build"
msgstr "Herstellbar"
@@ -6858,8 +6869,8 @@ msgstr "Herstellbar"
msgid "Minimum stock level"
msgstr "Minimaler Bestand"
-#: part/templates/part/part_base.html:324 templates/js/translated/bom.js:1041
-#: templates/js/translated/part.js:1238 templates/js/translated/part.js:2304
+#: part/templates/part/part_base.html:324 templates/js/translated/bom.js:1059
+#: templates/js/translated/part.js:1237 templates/js/translated/part.js:2380
#: templates/js/translated/pricing.js:391
#: templates/js/translated/pricing.js:1040
msgid "Price Range"
@@ -6882,7 +6893,7 @@ msgstr "Teil-QR-Code"
msgid "Link Barcode to Part"
msgstr "Barcode mit Teil verknüpfen"
-#: part/templates/part/part_base.html:474 templates/js/translated/part.js:2191
+#: part/templates/part/part_base.html:474 templates/js/translated/part.js:2258
msgid "part"
msgstr ""
@@ -6956,9 +6967,9 @@ msgstr "Varianten"
#: stock/templates/stock/stock_app_base.html:10
#: templates/InvenTree/search.html:153
#: templates/InvenTree/settings/sidebar.html:49
-#: templates/js/translated/part.js:1216 templates/js/translated/part.js:2120
-#: templates/js/translated/part.js:2284 templates/js/translated/stock.js:1022
-#: templates/js/translated/stock.js:1829 templates/navbar.html:31
+#: templates/js/translated/part.js:1215 templates/js/translated/part.js:2119
+#: templates/js/translated/part.js:2360 templates/js/translated/stock.js:1021
+#: templates/js/translated/stock.js:1986 templates/navbar.html:31
msgid "Stock"
msgstr "Bestand"
@@ -6989,9 +7000,9 @@ msgstr "Preis aktualisieren"
#: part/templates/part/prices.html:25 stock/admin.py:129
#: stock/templates/stock/item_base.html:442
-#: templates/js/translated/company.js:1313
-#: templates/js/translated/company.js:1323
-#: templates/js/translated/stock.js:1982
+#: templates/js/translated/company.js:1734
+#: templates/js/translated/company.js:1744
+#: templates/js/translated/stock.js:2139
msgid "Last Updated"
msgstr "Zuletzt aktualisiert"
@@ -7054,12 +7065,12 @@ msgstr "Verkaufspreise"
msgid "Add Sell Price Break"
msgstr "Verkaufspreisstaffel hinzufügen"
-#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:682
-#: templates/js/translated/part.js:2115 templates/js/translated/part.js:2117
+#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:681
+#: templates/js/translated/part.js:2114 templates/js/translated/part.js:2116
msgid "No Stock"
msgstr "Kein Bestand"
-#: part/templates/part/stock_count.html:9 templates/InvenTree/index.html:167
+#: part/templates/part/stock_count.html:9 templates/InvenTree/index.html:120
msgid "Low Stock"
msgstr "niedriger Bestand"
@@ -7163,7 +7174,7 @@ msgid "Match found for barcode data"
msgstr "Treffer für Barcode gefunden"
#: plugin/base/barcodes/api.py:120
-#: templates/js/translated/purchase_order.js:1372
+#: templates/js/translated/purchase_order.js:1387
msgid "Barcode matches existing item"
msgstr "Barcode entspricht einem bereits vorhandenen Artikel"
@@ -7226,43 +7237,43 @@ msgstr "URL, die verwendet wird, um Nachrichten an einen Slack-Kanal zu senden"
msgid "Open link"
msgstr "Link öffnen"
-#: plugin/models.py:27
+#: plugin/models.py:28
msgid "Plugin Configuration"
msgstr "Plugin-Konfiguration"
-#: plugin/models.py:28
+#: plugin/models.py:29
msgid "Plugin Configurations"
msgstr "Plugin-Konfigurationen"
-#: plugin/models.py:33
+#: plugin/models.py:34
msgid "Key"
msgstr "Schlüssel"
-#: plugin/models.py:34
+#: plugin/models.py:35
msgid "Key of plugin"
msgstr "Schlüssel des Plugins"
-#: plugin/models.py:42
+#: plugin/models.py:43
msgid "PluginName of the plugin"
msgstr "Name des Plugins"
-#: plugin/models.py:48
+#: plugin/models.py:49
msgid "Is the plugin active"
msgstr "Ist das Plugin aktiv"
-#: plugin/models.py:124
+#: plugin/models.py:125
msgid "Sample plugin"
msgstr "Beispiel-Plugin"
-#: plugin/models.py:133
+#: plugin/models.py:134
msgid "Builtin Plugin"
msgstr "Integriertes Plugin"
-#: plugin/models.py:159 templates/InvenTree/settings/plugin_settings.html:9
+#: plugin/models.py:160 templates/InvenTree/settings/plugin_settings.html:9
msgid "Plugin"
msgstr "Plugin"
-#: plugin/models.py:210
+#: plugin/models.py:211
msgid "Method"
msgstr "Methode"
@@ -7414,47 +7425,47 @@ msgstr "Bauauftrag Filter"
msgid "Build query filters (comma-separated list of key=value pairs"
msgstr "Bau-Abfragefilter (kommagetrennte Liste mit Schlüssel=Wert-Paaren)"
-#: report/models.py:418
+#: report/models.py:420
msgid "Part Filters"
msgstr "Teil Filter"
-#: report/models.py:419
+#: report/models.py:421
msgid "Part query filters (comma-separated list of key=value pairs"
msgstr "Teile-Abfragefilter (kommagetrennte Liste mit Schlüssel=Wert-Paaren)"
-#: report/models.py:453
+#: report/models.py:455
msgid "Purchase order query filters"
msgstr "Bestellungs-Abfragefilter"
-#: report/models.py:491
+#: report/models.py:493
msgid "Sales order query filters"
msgstr "Auftrags-Abfragefilter"
-#: report/models.py:529
+#: report/models.py:531
msgid "Return order query filters"
msgstr ""
-#: report/models.py:582
+#: report/models.py:584
msgid "Snippet"
msgstr "Snippet"
-#: report/models.py:583
+#: report/models.py:585
msgid "Report snippet file"
msgstr "Berichts-Snippet"
-#: report/models.py:587
+#: report/models.py:589
msgid "Snippet file description"
msgstr "Snippet-Beschreibung"
-#: report/models.py:624
+#: report/models.py:626
msgid "Asset"
msgstr "Ressource"
-#: report/models.py:625
+#: report/models.py:627
msgid "Report asset file"
msgstr "Berichts-Ressource"
-#: report/models.py:632
+#: report/models.py:634
msgid "Asset file description"
msgstr "Ressource-Beschreibung"
@@ -7475,8 +7486,8 @@ msgstr "Lieferant gelöscht"
#: templates/js/translated/order.js:316 templates/js/translated/pricing.js:527
#: templates/js/translated/pricing.js:596
#: templates/js/translated/pricing.js:820
-#: templates/js/translated/purchase_order.js:2083
-#: templates/js/translated/sales_order.js:1817
+#: templates/js/translated/purchase_order.js:2093
+#: templates/js/translated/sales_order.js:1829
msgid "Unit Price"
msgstr "Stück-Preis"
@@ -7488,23 +7499,23 @@ msgstr "Zusätzliche Positionen"
#: report/templates/report/inventree_po_report_base.html:72
#: report/templates/report/inventree_so_report_base.html:72
-#: templates/js/translated/purchase_order.js:1985
-#: templates/js/translated/sales_order.js:1792
+#: templates/js/translated/purchase_order.js:1995
+#: templates/js/translated/sales_order.js:1804
msgid "Total"
msgstr "Summe"
#: report/templates/report/inventree_return_order_report_base.html:25
#: report/templates/report/inventree_test_report_base.html:88
#: stock/models.py:725 stock/templates/stock/item_base.html:312
-#: templates/js/translated/build.js:502 templates/js/translated/build.js:1423
-#: templates/js/translated/build.js:1989
-#: templates/js/translated/model_renderers.js:201
-#: templates/js/translated/return_order.js:528
-#: templates/js/translated/return_order.js:708
-#: templates/js/translated/sales_order.js:300
-#: templates/js/translated/sales_order.js:1597
-#: templates/js/translated/sales_order.js:1682
-#: templates/js/translated/stock.js:563
+#: templates/js/translated/build.js:508 templates/js/translated/build.js:1306
+#: templates/js/translated/build.js:2281
+#: templates/js/translated/model_renderers.js:215
+#: templates/js/translated/return_order.js:540
+#: templates/js/translated/return_order.js:720
+#: templates/js/translated/sales_order.js:312
+#: templates/js/translated/sales_order.js:1609
+#: templates/js/translated/sales_order.js:1694
+#: templates/js/translated/stock.js:562
msgid "Serial Number"
msgstr "Seriennummer"
@@ -7517,7 +7528,7 @@ msgid "Test Results"
msgstr "Testergebnisse"
#: report/templates/report/inventree_test_report_base.html:102
-#: stock/models.py:2243 templates/js/translated/stock.js:1419
+#: stock/models.py:2243 templates/js/translated/stock.js:1418
msgid "Test"
msgstr "Test"
@@ -7548,8 +7559,8 @@ msgid "Installed Items"
msgstr "Verbaute Objekte"
#: report/templates/report/inventree_test_report_base.html:168
-#: stock/admin.py:104 templates/js/translated/stock.js:667
-#: templates/js/translated/stock.js:838 templates/js/translated/stock.js:2849
+#: stock/admin.py:104 templates/js/translated/stock.js:666
+#: templates/js/translated/stock.js:837 templates/js/translated/stock.js:2976
msgid "Serial"
msgstr "Seriennummer"
@@ -7617,31 +7628,31 @@ msgstr "Löschen wenn leer"
#: stock/admin.py:131 stock/models.py:789
#: stock/templates/stock/item_base.html:429
-#: templates/js/translated/stock.js:1966
+#: templates/js/translated/stock.js:2123
msgid "Expiry Date"
msgstr "Ablaufdatum"
-#: stock/api.py:420 templates/js/translated/table_filters.js:373
+#: stock/api.py:426 templates/js/translated/table_filters.js:379
msgid "External Location"
msgstr "Externer Standort"
-#: stock/api.py:582
+#: stock/api.py:619
msgid "Quantity is required"
msgstr "Menge ist erforderlich"
-#: stock/api.py:589
+#: stock/api.py:626
msgid "Valid part must be supplied"
msgstr "Gültiges Teil muss angegeben werden"
-#: stock/api.py:615
+#: stock/api.py:652
msgid "The given supplier part does not exist"
msgstr "Der angegebene Lieferantenartikel existiert nicht"
-#: stock/api.py:624
+#: stock/api.py:661
msgid "The supplier part has a pack size defined, but flag use_pack_size not set"
msgstr ""
-#: stock/api.py:642
+#: stock/api.py:679
msgid "Serial numbers cannot be supplied for a non-trackable part"
msgstr "Seriennummern können für nicht verfolgbare Teile nicht angegeben werden"
@@ -7652,7 +7663,7 @@ msgid "Stock Location"
msgstr "Bestand-Lagerort"
#: stock/models.py:55 stock/templates/stock/location.html:177
-#: templates/InvenTree/search.html:166 templates/js/translated/search.js:220
+#: templates/InvenTree/search.html:166 templates/js/translated/search.js:178
#: users/models.py:40
msgid "Stock Locations"
msgstr "Bestand-Lagerorte"
@@ -7670,8 +7681,8 @@ msgstr "Besitzer auswählen"
msgid "Stock items may not be directly located into a structural stock locations, but may be located to child locations."
msgstr "Lagerartikel können nicht direkt an einen strukturellen Lagerort verlegt werden, können aber an einen untergeordneten Lagerort verlegt werden."
-#: stock/models.py:132 templates/js/translated/stock.js:2529
-#: templates/js/translated/table_filters.js:213
+#: stock/models.py:132 templates/js/translated/stock.js:2660
+#: templates/js/translated/table_filters.js:219
msgid "External"
msgstr "Extern"
@@ -7687,7 +7698,7 @@ msgstr "Sie können diesen Lagerort nicht als strukturell markieren, da sich ber
msgid "Stock items cannot be located into structural stock locations!"
msgstr "Lagerartikel können nicht in strukturelle Lagerorte abgelegt werden!"
-#: stock/models.py:583 stock/serializers.py:174
+#: stock/models.py:583 stock/serializers.py:223
msgid "Stock item cannot be created for virtual parts"
msgstr "Für virtuelle Teile können keine Lagerartikel erstellt werden"
@@ -7821,7 +7832,7 @@ msgstr "Seriennummern muss eine Liste von Ganzzahlen sein"
msgid "Quantity does not match serial numbers"
msgstr "Anzahl stimmt nicht mit den Seriennummern überein"
-#: stock/models.py:1403 stock/serializers.py:374
+#: stock/models.py:1403 stock/serializers.py:440
msgid "Serial numbers already exist"
msgstr "Seriennummern existieren bereits"
@@ -7849,7 +7860,7 @@ msgstr "Lagerartikel wird aktuell produziert"
msgid "Serialized stock cannot be merged"
msgstr "Nachverfolgbare Lagerartikel können nicht zusammengeführt werden"
-#: stock/models.py:1496 stock/serializers.py:975
+#: stock/models.py:1496 stock/serializers.py:1092
msgid "Duplicate stock items"
msgstr "Artikel duplizeren"
@@ -7901,132 +7912,141 @@ msgstr "Test Ergebnis Anhang"
msgid "Test notes"
msgstr "Test Notizen"
-#: stock/serializers.py:76
+#: stock/serializers.py:121
msgid "Serial number is too large"
msgstr "Seriennummer ist zu lang"
-#: stock/serializers.py:166
+#: stock/serializers.py:215
msgid "Use pack size when adding: the quantity defined is the number of packs"
msgstr ""
-#: stock/serializers.py:254
+#: stock/serializers.py:316
msgid "Purchase price of this stock item, per unit or pack"
msgstr ""
-#: stock/serializers.py:307
+#: stock/serializers.py:373
msgid "Enter number of stock items to serialize"
msgstr "Anzahl der zu serialisierenden Lagerartikel eingeben"
-#: stock/serializers.py:319
+#: stock/serializers.py:385
#, python-brace-format
msgid "Quantity must not exceed available stock quantity ({q})"
msgstr "Anzahl darf nicht die verfügbare Menge überschreiten ({q})"
-#: stock/serializers.py:325
+#: stock/serializers.py:391
msgid "Enter serial numbers for new items"
msgstr "Seriennummern für neue Teile eingeben"
-#: stock/serializers.py:336 stock/serializers.py:932 stock/serializers.py:1174
+#: stock/serializers.py:402 stock/serializers.py:1049 stock/serializers.py:1291
msgid "Destination stock location"
msgstr "Ziel-Bestand"
-#: stock/serializers.py:343
+#: stock/serializers.py:409
msgid "Optional note field"
msgstr "Optionales Notizfeld"
-#: stock/serializers.py:353
+#: stock/serializers.py:419
msgid "Serial numbers cannot be assigned to this part"
msgstr "Seriennummern können diesem Teil nicht zugewiesen werden"
-#: stock/serializers.py:414
+#: stock/serializers.py:480
msgid "Select stock item to install"
msgstr "Lagerartikel für Installation auswählen"
-#: stock/serializers.py:427
-msgid "Stock item is unavailable"
-msgstr "Lagerartikel ist nicht verfügbar"
-
-#: stock/serializers.py:434
-msgid "Selected part is not in the Bill of Materials"
-msgstr "Ausgewähltes Teil ist nicht in der Stückliste"
-
-#: stock/serializers.py:471
-msgid "Destination location for uninstalled item"
-msgstr "Ziel Lagerort für unverbautes Objekt"
-
-#: stock/serializers.py:476 stock/serializers.py:557
+#: stock/serializers.py:485 stock/serializers.py:543 stock/serializers.py:624
+#: stock/serializers.py:682
msgid "Add transaction note (optional)"
msgstr " Transaktionsnotizen hinzufügen (optional)"
-#: stock/serializers.py:510
+#: stock/serializers.py:494
+msgid "Stock item is unavailable"
+msgstr "Lagerartikel ist nicht verfügbar"
+
+#: stock/serializers.py:501
+msgid "Selected part is not in the Bill of Materials"
+msgstr "Ausgewähltes Teil ist nicht in der Stückliste"
+
+#: stock/serializers.py:538
+msgid "Destination location for uninstalled item"
+msgstr "Ziel Lagerort für unverbautes Objekt"
+
+#: stock/serializers.py:577
msgid "Select part to convert stock item into"
msgstr "Wählen Sie einen Teil aus, zu dem dieser Lagerartikel geändert werden soll"
-#: stock/serializers.py:521
+#: stock/serializers.py:588
msgid "Selected part is not a valid option for conversion"
msgstr "Das ausgewählte Teil ist keine gültige Option für die Umwandlung"
-#: stock/serializers.py:552
+#: stock/serializers.py:619
msgid "Destination location for returned item"
msgstr "Ziel Lagerort für zurückgegebene Artikel"
-#: stock/serializers.py:787
+#: stock/serializers.py:663
+msgid "Select stock items to change status"
+msgstr ""
+
+#: stock/serializers.py:670
+msgid "No stock items selected"
+msgstr ""
+
+#: stock/serializers.py:904
msgid "Part must be salable"
msgstr "Teil muss verkaufbar sein"
-#: stock/serializers.py:791
+#: stock/serializers.py:908
msgid "Item is allocated to a sales order"
msgstr "Artikel ist einem Kundenauftrag zugeordnet"
-#: stock/serializers.py:795
+#: stock/serializers.py:912
msgid "Item is allocated to a build order"
msgstr "Artikel ist einem Fertigungsauftrag zugeordnet"
-#: stock/serializers.py:826
+#: stock/serializers.py:943
msgid "Customer to assign stock items"
msgstr "Kunde zum Zuweisen von Lagerartikel"
-#: stock/serializers.py:832
+#: stock/serializers.py:949
msgid "Selected company is not a customer"
msgstr "Ausgewählte Firma ist kein Kunde"
-#: stock/serializers.py:840
+#: stock/serializers.py:957
msgid "Stock assignment notes"
msgstr "Notizen zur Lagerzuordnung"
-#: stock/serializers.py:850 stock/serializers.py:1081
+#: stock/serializers.py:967 stock/serializers.py:1198
msgid "A list of stock items must be provided"
msgstr "Eine Liste der Lagerbestände muss angegeben werden"
-#: stock/serializers.py:939
+#: stock/serializers.py:1056
msgid "Stock merging notes"
msgstr "Notizen zur Lagerartikelzusammenführung"
-#: stock/serializers.py:944
+#: stock/serializers.py:1061
msgid "Allow mismatched suppliers"
msgstr "Unterschiedliche Lieferanten erlauben"
-#: stock/serializers.py:945
+#: stock/serializers.py:1062
msgid "Allow stock items with different supplier parts to be merged"
msgstr "Zusammenführen von Lagerartikeln mit unterschiedlichen Lieferanten erlauben"
-#: stock/serializers.py:950
+#: stock/serializers.py:1067
msgid "Allow mismatched status"
msgstr "Unterschiedliche Status erlauben"
-#: stock/serializers.py:951
+#: stock/serializers.py:1068
msgid "Allow stock items with different status codes to be merged"
msgstr "Zusammenführen von Lagerartikeln mit unterschiedlichen Status-Codes erlauben"
-#: stock/serializers.py:961
+#: stock/serializers.py:1078
msgid "At least two stock items must be provided"
msgstr "Mindestens zwei Lagerartikel müssen angegeben werden"
-#: stock/serializers.py:1043
+#: stock/serializers.py:1160
msgid "StockItem primary key value"
msgstr "Primärschlüssel Lagerelement"
-#: stock/serializers.py:1071
+#: stock/serializers.py:1188
msgid "Stock transaction notes"
msgstr "Bestandsbewegungsnotizen"
@@ -8034,48 +8054,48 @@ msgstr "Bestandsbewegungsnotizen"
msgid "Stock Tracking Information"
msgstr "Informationen zur Bestand-Verfolgung"
-#: stock/templates/stock/item.html:69
+#: stock/templates/stock/item.html:63
msgid "Child Stock Items"
msgstr "Kind-Lagerartikel"
-#: stock/templates/stock/item.html:77
+#: stock/templates/stock/item.html:71
msgid "This stock item does not have any child items"
msgstr "Dieser Lagerartikel hat keine Kinder"
-#: stock/templates/stock/item.html:86
+#: stock/templates/stock/item.html:80
#: stock/templates/stock/stock_sidebar.html:12
msgid "Test Data"
msgstr "Testdaten"
-#: stock/templates/stock/item.html:90 stock/templates/stock/item_base.html:66
+#: stock/templates/stock/item.html:84 stock/templates/stock/item_base.html:66
msgid "Test Report"
msgstr "Test-Bericht"
-#: stock/templates/stock/item.html:94 stock/templates/stock/item.html:288
+#: stock/templates/stock/item.html:88 stock/templates/stock/item.html:278
msgid "Delete Test Data"
msgstr "Testdaten löschen"
-#: stock/templates/stock/item.html:98
+#: stock/templates/stock/item.html:92
msgid "Add Test Data"
msgstr "Testdaten hinzufügen"
-#: stock/templates/stock/item.html:132
+#: stock/templates/stock/item.html:124
msgid "Stock Item Notes"
msgstr "Lagerartikel-Notizen"
-#: stock/templates/stock/item.html:147
+#: stock/templates/stock/item.html:139
msgid "Installed Stock Items"
msgstr "Installierte Lagerartikel"
-#: stock/templates/stock/item.html:152 templates/js/translated/stock.js:2996
+#: stock/templates/stock/item.html:144 templates/js/translated/stock.js:3123
msgid "Install Stock Item"
msgstr "Lagerartikel installieren"
-#: stock/templates/stock/item.html:276
+#: stock/templates/stock/item.html:266
msgid "Delete all test results for this stock item"
msgstr "Alle Testergebnisse für diesen Lagerartikel löschen"
-#: stock/templates/stock/item.html:305 templates/js/translated/stock.js:1611
+#: stock/templates/stock/item.html:295 templates/js/translated/stock.js:1610
msgid "Add Test Result"
msgstr "Testergebnis hinzufügen"
@@ -8083,13 +8103,13 @@ msgstr "Testergebnis hinzufügen"
msgid "Locate stock item"
msgstr "Lagerbestand lokalisieren"
-#: stock/templates/stock/item_base.html:52 templates/stock_table.html:21
+#: stock/templates/stock/item_base.html:52
msgid "Scan to Location"
msgstr "zu Lagerort einscannen"
#: stock/templates/stock/item_base.html:60
#: stock/templates/stock/location.html:69
-#: templates/js/translated/filters.js:322
+#: templates/js/translated/filters.js:432
msgid "Printing actions"
msgstr "Druck Aktionen"
@@ -8098,15 +8118,17 @@ msgid "Stock adjustment actions"
msgstr "Bestands-Anpassungs Aktionen"
#: stock/templates/stock/item_base.html:80
-#: stock/templates/stock/location.html:88 templates/stock_table.html:35
+#: stock/templates/stock/location.html:88 templates/js/translated/stock.js:1735
msgid "Count stock"
msgstr "Bestand zählen"
-#: stock/templates/stock/item_base.html:82 templates/stock_table.html:33
+#: stock/templates/stock/item_base.html:82
+#: templates/js/translated/stock.js:1717
msgid "Add stock"
msgstr "Bestand hinzufügen"
-#: stock/templates/stock/item_base.html:83 templates/stock_table.html:34
+#: stock/templates/stock/item_base.html:83
+#: templates/js/translated/stock.js:1726
msgid "Remove stock"
msgstr "Bestand entfernen"
@@ -8115,11 +8137,12 @@ msgid "Serialize stock"
msgstr "Bestand serialisieren"
#: stock/templates/stock/item_base.html:89
-#: stock/templates/stock/location.html:94 templates/stock_table.html:36
+#: stock/templates/stock/location.html:94 templates/js/translated/stock.js:1744
msgid "Transfer stock"
msgstr "Bestand verschieben"
-#: stock/templates/stock/item_base.html:92 templates/stock_table.html:39
+#: stock/templates/stock/item_base.html:92
+#: templates/js/translated/stock.js:1798
msgid "Assign to customer"
msgstr "Kunden zuweisen"
@@ -8159,6 +8182,11 @@ msgstr "Lagerartikel bearbeiten"
msgid "Delete stock item"
msgstr "Lagerartikel löschen"
+#: stock/templates/stock/item_base.html:170 templates/InvenTree/search.html:139
+#: templates/js/translated/build.js:2046 templates/navbar.html:38
+msgid "Build"
+msgstr "Bauauftrag"
+
#: stock/templates/stock/item_base.html:194
msgid "Parent Item"
msgstr "Elternposition"
@@ -8221,7 +8249,7 @@ msgid "Available Quantity"
msgstr "Verfügbare Menge"
#: stock/templates/stock/item_base.html:394
-#: templates/js/translated/build.js:2015
+#: templates/js/translated/build.js:2306
msgid "No location set"
msgstr "Kein Lagerort gesetzt"
@@ -8239,7 +8267,7 @@ msgid "This StockItem expired on %(item.expiry_date)s"
msgstr "Dieser Lagerartikel lief am %(item.expiry_date)s ab"
#: stock/templates/stock/item_base.html:433
-#: templates/js/translated/table_filters.js:381
+#: templates/js/translated/table_filters.js:387
msgid "Expired"
msgstr "abgelaufen"
@@ -8249,7 +8277,7 @@ msgid "This StockItem expires on %(item.expiry_date)s"
msgstr "Dieser Lagerartikel läuft am %(item.expiry_date)s ab"
#: stock/templates/stock/item_base.html:435
-#: templates/js/translated/table_filters.js:387
+#: templates/js/translated/table_filters.js:393
msgid "Stale"
msgstr "überfällig"
@@ -8258,7 +8286,7 @@ msgid "No stocktake performed"
msgstr "Keine Inventur ausgeführt"
#: stock/templates/stock/item_base.html:503
-#: templates/js/translated/stock.js:1745
+#: templates/js/translated/stock.js:1865
msgid "stock item"
msgstr ""
@@ -8364,20 +8392,20 @@ msgstr "Neuen Lagerort anlegen"
msgid "New Location"
msgstr "Neuer Lagerort"
-#: stock/templates/stock/location.html:287
-#: templates/js/translated/stock.js:2318
+#: stock/templates/stock/location.html:278
+#: templates/js/translated/stock.js:2449
msgid "stock location"
msgstr ""
-#: stock/templates/stock/location.html:304
+#: stock/templates/stock/location.html:295
msgid "Scanned stock container into this location"
msgstr "Lagerort an diesen Ort eingescannt"
-#: stock/templates/stock/location.html:377
+#: stock/templates/stock/location.html:368
msgid "Stock Location QR Code"
msgstr "QR-Code für diesen Lagerort"
-#: stock/templates/stock/location.html:388
+#: stock/templates/stock/location.html:379
msgid "Link Barcode to Stock Location"
msgstr "Barcode mit Lagerort verknüpfen"
@@ -8451,71 +8479,71 @@ msgstr "Die Seite ist derzeit in Wartung und sollte bald wieder verfügbar sein!
msgid "Index"
msgstr "Index"
-#: templates/InvenTree/index.html:89
+#: templates/InvenTree/index.html:39
msgid "Subscribed Parts"
msgstr "Abonnierte Teile"
-#: templates/InvenTree/index.html:102
+#: templates/InvenTree/index.html:53
msgid "Subscribed Categories"
msgstr "Abonnierte Kategorien"
-#: templates/InvenTree/index.html:112
+#: templates/InvenTree/index.html:63
msgid "Latest Parts"
msgstr "neueste Teile"
-#: templates/InvenTree/index.html:126
+#: templates/InvenTree/index.html:78
msgid "BOM Waiting Validation"
msgstr "Stücklisten erwarten Kontrolle"
-#: templates/InvenTree/index.html:155
+#: templates/InvenTree/index.html:107
msgid "Recently Updated"
msgstr "kürzlich aktualisiert"
-#: templates/InvenTree/index.html:180
+#: templates/InvenTree/index.html:134
msgid "Depleted Stock"
msgstr "Verbrauchter Bestand"
-#: templates/InvenTree/index.html:193
+#: templates/InvenTree/index.html:148
msgid "Required for Build Orders"
msgstr "Für Bauaufträge benötigt"
-#: templates/InvenTree/index.html:208
+#: templates/InvenTree/index.html:156
msgid "Expired Stock"
msgstr "abgelaufener Bestand"
-#: templates/InvenTree/index.html:222
+#: templates/InvenTree/index.html:172
msgid "Stale Stock"
msgstr "Bestand überfällig"
-#: templates/InvenTree/index.html:247
+#: templates/InvenTree/index.html:199
msgid "Build Orders In Progress"
msgstr "laufende Bauaufträge"
-#: templates/InvenTree/index.html:258
+#: templates/InvenTree/index.html:210
msgid "Overdue Build Orders"
msgstr "überfällige Bauaufträge"
-#: templates/InvenTree/index.html:278
+#: templates/InvenTree/index.html:230
msgid "Outstanding Purchase Orders"
msgstr "ausstehende Bestellungen"
-#: templates/InvenTree/index.html:289
+#: templates/InvenTree/index.html:241
msgid "Overdue Purchase Orders"
msgstr "überfällige Bestellungen"
-#: templates/InvenTree/index.html:310
+#: templates/InvenTree/index.html:262
msgid "Outstanding Sales Orders"
msgstr "ausstehende Aufträge"
-#: templates/InvenTree/index.html:321
+#: templates/InvenTree/index.html:273
msgid "Overdue Sales Orders"
msgstr "überfällige Aufträge"
-#: templates/InvenTree/index.html:347
+#: templates/InvenTree/index.html:299
msgid "InvenTree News"
msgstr "InvenTree Neuigkeiten"
-#: templates/InvenTree/index.html:349
+#: templates/InvenTree/index.html:301
msgid "Current News"
msgstr "Aktuelle Neuigkeiten"
@@ -8672,29 +8700,29 @@ msgstr "Plugin-Einstellungen"
msgid "Changing the settings below require you to immediately restart the server. Do not change this while under active usage."
msgstr "Wenn Sie die folgenden Einstellungen ändern, müssen Sie InvenTree sofort neu starten. Ändern Sie dies nicht während der aktiven Nutzung."
-#: templates/InvenTree/settings/plugin.html:37
+#: templates/InvenTree/settings/plugin.html:35
#: templates/InvenTree/settings/sidebar.html:64
msgid "Plugins"
msgstr "Plugins"
-#: templates/InvenTree/settings/plugin.html:43
+#: templates/InvenTree/settings/plugin.html:41
#: templates/js/translated/plugin.js:151
msgid "Install Plugin"
msgstr "Plugin installieren"
-#: templates/InvenTree/settings/plugin.html:51
+#: templates/InvenTree/settings/plugin.html:49
msgid "External plugins are not enabled for this InvenTree installation"
msgstr "Externe Plugins sind für diese InvenTree-Installation nicht aktiviert"
-#: templates/InvenTree/settings/plugin.html:70
+#: templates/InvenTree/settings/plugin.html:64
msgid "Plugin Error Stack"
msgstr "Plugin-Fehlerstapel"
-#: templates/InvenTree/settings/plugin.html:79
+#: templates/InvenTree/settings/plugin.html:73
msgid "Stage"
msgstr "Stufe"
-#: templates/InvenTree/settings/plugin.html:81
+#: templates/InvenTree/settings/plugin.html:75
#: templates/js/translated/notification.js:75
msgid "Message"
msgstr "Meldung"
@@ -8767,14 +8795,6 @@ msgstr "Commit-Hash"
msgid "Commit Message"
msgstr "Commit-Nachricht"
-#: templates/InvenTree/settings/plugin_settings.html:126
-msgid "Sign Status"
-msgstr "Signaturstatus"
-
-#: templates/InvenTree/settings/plugin_settings.html:131
-msgid "Sign Key"
-msgstr "Signatur Schlüssel"
-
#: templates/InvenTree/settings/po.html:7
msgid "Purchase Order Settings"
msgstr "Bestellungs-Einstellungen"
@@ -8870,12 +8890,12 @@ msgid "No category parameter templates found"
msgstr "Keine Kategorie-Parametervorlagen gefunden"
#: templates/InvenTree/settings/settings_staff_js.html:212
-#: templates/js/translated/part.js:1618
+#: templates/js/translated/part.js:1617
msgid "Edit Template"
msgstr "Vorlage bearbeiten"
#: templates/InvenTree/settings/settings_staff_js.html:213
-#: templates/js/translated/part.js:1619
+#: templates/js/translated/part.js:1618
msgid "Delete Template"
msgstr "Vorlage löschen"
@@ -8913,7 +8933,7 @@ msgid "Home Page"
msgstr "Startseite"
#: templates/InvenTree/settings/sidebar.html:15
-#: templates/js/translated/tables.js:575 templates/navbar.html:107
+#: templates/js/translated/tables.js:551 templates/navbar.html:107
#: templates/search.html:8 templates/search_form.html:6
#: templates/search_form.html:7
msgid "Search"
@@ -8990,6 +9010,7 @@ msgid "Unverified"
msgstr "Nicht verifiziert"
#: templates/InvenTree/settings/user.html:80
+#: templates/js/translated/company.js:984
msgid "Primary"
msgstr "Primär"
@@ -9204,44 +9225,48 @@ msgstr "Aktuell"
msgid "Update Available"
msgstr "Aktualisierung verfügbar"
-#: templates/about.html:42
+#: templates/about.html:43
+msgid "Commit Branch"
+msgstr ""
+
+#: templates/about.html:49
msgid "InvenTree Documentation"
msgstr "InvenTree-Dokumentation"
-#: templates/about.html:47
+#: templates/about.html:54
msgid "API Version"
msgstr "API-Version"
-#: templates/about.html:52
+#: templates/about.html:59
msgid "Python Version"
msgstr "Python-Version"
-#: templates/about.html:57
+#: templates/about.html:64
msgid "Django Version"
msgstr "Django-Version"
-#: templates/about.html:62
+#: templates/about.html:69
msgid "View Code on GitHub"
msgstr "Code auf GitHub ansehen"
-#: templates/about.html:67
+#: templates/about.html:74
msgid "Credits"
msgstr "Danksagung"
-#: templates/about.html:72
+#: templates/about.html:79
msgid "Mobile App"
msgstr "Mobile App"
-#: templates/about.html:77
+#: templates/about.html:84
msgid "Submit Bug Report"
msgstr "Fehlerbericht senden"
-#: templates/about.html:84 templates/clip.html:4
+#: templates/about.html:91 templates/clip.html:4
#: templates/js/translated/helpers.js:585
msgid "copy to clipboard"
msgstr "In die Zwischenablage kopieren"
-#: templates/about.html:84
+#: templates/about.html:91
msgid "copy version information"
msgstr "Versionsinformationen kopieren"
@@ -9435,14 +9460,6 @@ msgstr "Link hinzufügen"
msgid "Add Attachment"
msgstr "Anhang hinzufügen"
-#: templates/attachment_table.html:11
-msgid "Delete selected attachments"
-msgstr "Markierte Anhänge löschen"
-
-#: templates/attachment_table.html:12 templates/js/translated/attachment.js:129
-msgid "Delete Attachments"
-msgstr "Anhänge entfernen"
-
#: templates/barcode_data.html:5
msgid "Barcode Identifier"
msgstr "Barcode-Bezeichner"
@@ -9487,7 +9504,7 @@ msgid "The following parts are low on required stock"
msgstr "Bei den folgenden Teilen gibt es wenige Lagerartikel"
#: templates/email/build_order_required_stock.html:18
-#: templates/js/translated/bom.js:1633
+#: templates/js/translated/bom.js:1653 templates/js/translated/build.js:2485
msgid "Required Quantity"
msgstr "Benötigte Menge"
@@ -9501,7 +9518,7 @@ msgid "Click on the following link to view this part"
msgstr "Klicken Sie auf den folgenden Link, um diesen Teil anzuzeigen"
#: templates/email/low_stock_notification.html:18
-#: templates/js/translated/part.js:3140
+#: templates/js/translated/part.js:3125
msgid "Minimum Quantity"
msgstr "Mindestmenge"
@@ -9573,23 +9590,35 @@ msgstr "Fehler-Code"
msgid "All selected attachments will be deleted"
msgstr "Alle ausgewählten anhänge werden gelöscht"
-#: templates/js/translated/attachment.js:255
+#: templates/js/translated/attachment.js:129
+msgid "Delete Attachments"
+msgstr "Anhänge entfernen"
+
+#: templates/js/translated/attachment.js:205
+msgid "Delete attachments"
+msgstr ""
+
+#: templates/js/translated/attachment.js:253
+msgid "Attachment actions"
+msgstr ""
+
+#: templates/js/translated/attachment.js:275
msgid "No attachments found"
msgstr "Keine Anhänge gefunden"
-#: templates/js/translated/attachment.js:285
+#: templates/js/translated/attachment.js:305
msgid "Edit Attachment"
msgstr "Anhang bearbeiten"
-#: templates/js/translated/attachment.js:326
+#: templates/js/translated/attachment.js:336
msgid "Upload Date"
msgstr "Hochladedatum"
-#: templates/js/translated/attachment.js:346
+#: templates/js/translated/attachment.js:356
msgid "Edit attachment"
msgstr "Anhang bearbeiten"
-#: templates/js/translated/attachment.js:354
+#: templates/js/translated/attachment.js:364
msgid "Delete attachment"
msgstr "Anhang löschen"
@@ -9646,7 +9675,7 @@ msgstr "Dadurch wird der Link zu dem zugehörigen Barcode entfernt"
msgid "Unlink"
msgstr "Entfernen"
-#: templates/js/translated/barcode.js:550 templates/js/translated/stock.js:1118
+#: templates/js/translated/barcode.js:550 templates/js/translated/stock.js:1117
msgid "Remove stock item"
msgstr "Lagerartikel entfernen"
@@ -9704,775 +9733,869 @@ msgstr "In Lagerorten buchen"
msgid "Barcode does not match a valid location"
msgstr "Barcode entspricht keinem Lagerort"
-#: templates/js/translated/bom.js:77
+#: templates/js/translated/bom.js:78
msgid "Create BOM Item"
msgstr "Stücklisten-Position anlegen"
-#: templates/js/translated/bom.js:131
+#: templates/js/translated/bom.js:132
msgid "Display row data"
msgstr "Zeilendaten anzeigen"
-#: templates/js/translated/bom.js:187
+#: templates/js/translated/bom.js:188
msgid "Row Data"
msgstr "Zeilendaten"
-#: templates/js/translated/bom.js:188 templates/js/translated/bom.js:699
+#: templates/js/translated/bom.js:189 templates/js/translated/bom.js:700
#: templates/js/translated/modals.js:71 templates/js/translated/modals.js:622
#: templates/js/translated/modals.js:746 templates/js/translated/modals.js:1054
-#: templates/js/translated/purchase_order.js:791 templates/modals.html:15
+#: templates/js/translated/purchase_order.js:802 templates/modals.html:15
#: templates/modals.html:27 templates/modals.html:39 templates/modals.html:50
msgid "Close"
msgstr "Schliessen"
-#: templates/js/translated/bom.js:305
+#: templates/js/translated/bom.js:306
msgid "Download BOM Template"
msgstr "Vorlage einer Stückliste herunterladen"
-#: templates/js/translated/bom.js:350
+#: templates/js/translated/bom.js:351
msgid "Multi Level BOM"
msgstr "Multilevel Stückliste"
-#: templates/js/translated/bom.js:351
+#: templates/js/translated/bom.js:352
msgid "Include BOM data for subassemblies"
msgstr "Stücklisten-Daten für Untergruppen einbeziehen"
-#: templates/js/translated/bom.js:356
+#: templates/js/translated/bom.js:357
msgid "Levels"
msgstr "Ebenen"
-#: templates/js/translated/bom.js:357
+#: templates/js/translated/bom.js:358
msgid "Select maximum number of BOM levels to export (0 = all levels)"
msgstr "Maximale Anzahl an Ebenen für Stückliste-Export auswählen (0 = alle Ebenen)"
-#: templates/js/translated/bom.js:364
+#: templates/js/translated/bom.js:365
msgid "Include Alternative Parts"
msgstr "Alternative Teile einbeziehen"
-#: templates/js/translated/bom.js:365
+#: templates/js/translated/bom.js:366
msgid "Include alternative parts in exported BOM"
msgstr "Alternative Teile in exportierte Stückliste einbeziehen"
-#: templates/js/translated/bom.js:370
+#: templates/js/translated/bom.js:371
msgid "Include Parameter Data"
msgstr "Parameter-Daten einschließen"
-#: templates/js/translated/bom.js:371
+#: templates/js/translated/bom.js:372
msgid "Include part parameter data in exported BOM"
msgstr "Teile-Parameter in Stücklisten-Export einschließen"
-#: templates/js/translated/bom.js:376
+#: templates/js/translated/bom.js:377
msgid "Include Stock Data"
msgstr "Bestand einschließen"
-#: templates/js/translated/bom.js:377
+#: templates/js/translated/bom.js:378
msgid "Include part stock data in exported BOM"
msgstr "Teil-Bestand in Stückliste-Export einschließen"
-#: templates/js/translated/bom.js:382
+#: templates/js/translated/bom.js:383
msgid "Include Manufacturer Data"
msgstr "Herstellerdaten einschließen"
-#: templates/js/translated/bom.js:383
+#: templates/js/translated/bom.js:384
msgid "Include part manufacturer data in exported BOM"
msgstr "Teil-Herstellerdaten in Stückliste-Export einschließen"
-#: templates/js/translated/bom.js:388
+#: templates/js/translated/bom.js:389
msgid "Include Supplier Data"
msgstr "Zulieferer einschließen"
-#: templates/js/translated/bom.js:389
+#: templates/js/translated/bom.js:390
msgid "Include part supplier data in exported BOM"
msgstr "Zulieferer-Daten in Stückliste-Export einschließen"
-#: templates/js/translated/bom.js:394
+#: templates/js/translated/bom.js:395
msgid "Include Pricing Data"
msgstr "Preisdaten einschließen"
-#: templates/js/translated/bom.js:395
+#: templates/js/translated/bom.js:396
msgid "Include part pricing data in exported BOM"
msgstr "Preisinformationen in Stücklisten-Export einschließen"
-#: templates/js/translated/bom.js:590
+#: templates/js/translated/bom.js:591
msgid "Remove substitute part"
msgstr "Ersatzteil entfernen"
-#: templates/js/translated/bom.js:644
+#: templates/js/translated/bom.js:645
msgid "Select and add a new substitute part using the input below"
msgstr "Wählen Sie ein neues Ersatzteil aus und fügen Sie sie mit den folgenden Eingaben hinzu"
-#: templates/js/translated/bom.js:655
+#: templates/js/translated/bom.js:656
msgid "Are you sure you wish to remove this substitute part link?"
msgstr "Sind Sie sicher, dass Sie dieses Ersatzteil entfernen möchten?"
-#: templates/js/translated/bom.js:661
+#: templates/js/translated/bom.js:662
msgid "Remove Substitute Part"
msgstr "Ersatzteil entfernen"
-#: templates/js/translated/bom.js:700
+#: templates/js/translated/bom.js:701
msgid "Add Substitute"
msgstr "Ersatzteil hinzufügen"
-#: templates/js/translated/bom.js:701
+#: templates/js/translated/bom.js:702
msgid "Edit BOM Item Substitutes"
msgstr "Stücklisten Ersatzteile bearbeiten"
-#: templates/js/translated/bom.js:763
+#: templates/js/translated/bom.js:764
msgid "All selected BOM items will be deleted"
msgstr "Alle ausgewählte Stücklistenpositionen werden gelöscht"
-#: templates/js/translated/bom.js:779
+#: templates/js/translated/bom.js:780
msgid "Delete selected BOM items?"
msgstr "Ausgewählte Stücklistenpositionen löschen?"
-#: templates/js/translated/bom.js:906
+#: templates/js/translated/bom.js:826
+msgid "Delete items"
+msgstr ""
+
+#: templates/js/translated/bom.js:924
msgid "Load BOM for subassembly"
msgstr "Stückliste für Bauteile laden"
-#: templates/js/translated/bom.js:916
+#: templates/js/translated/bom.js:934
msgid "Substitutes Available"
msgstr "Ersatzteile verfügbar"
-#: templates/js/translated/bom.js:920 templates/js/translated/build.js:2090
+#: templates/js/translated/bom.js:938 templates/js/translated/build.js:2429
msgid "Variant stock allowed"
msgstr "Varianten erlaubt"
-#: templates/js/translated/bom.js:984
+#: templates/js/translated/bom.js:1002
msgid "Substitutes"
msgstr "Ersatzteile"
-#: templates/js/translated/bom.js:1104
+#: templates/js/translated/bom.js:1122
msgid "BOM pricing is complete"
msgstr "Stücklisten-Bepreisung ist vollständig"
-#: templates/js/translated/bom.js:1109
+#: templates/js/translated/bom.js:1127
msgid "BOM pricing is incomplete"
msgstr "Stücklisten-Bepreisung ist unvollständig"
-#: templates/js/translated/bom.js:1116
+#: templates/js/translated/bom.js:1134
msgid "No pricing available"
msgstr "Keine Preisinformation verfügbar"
-#: templates/js/translated/bom.js:1147 templates/js/translated/build.js:2173
-#: templates/js/translated/sales_order.js:1887
+#: templates/js/translated/bom.js:1165 templates/js/translated/build.js:2523
+#: templates/js/translated/sales_order.js:1899
msgid "No Stock Available"
msgstr "Kein Lagerbestand verfügbar"
-#: templates/js/translated/bom.js:1152 templates/js/translated/build.js:2177
+#: templates/js/translated/bom.js:1170 templates/js/translated/build.js:2527
msgid "Includes variant and substitute stock"
msgstr "Beinhaltet Variante und Ersatzbestand"
-#: templates/js/translated/bom.js:1154 templates/js/translated/build.js:2179
-#: templates/js/translated/part.js:1230
+#: templates/js/translated/bom.js:1172 templates/js/translated/build.js:2529
+#: templates/js/translated/part.js:1229
msgid "Includes variant stock"
msgstr "Beinhaltet Variantenbestand"
-#: templates/js/translated/bom.js:1156 templates/js/translated/build.js:2181
+#: templates/js/translated/bom.js:1174 templates/js/translated/build.js:2531
msgid "Includes substitute stock"
msgstr "Enthält Ersatzbestand"
-#: templates/js/translated/bom.js:1184 templates/js/translated/build.js:2164
-#: templates/js/translated/build.js:2255
+#: templates/js/translated/bom.js:1204 templates/js/translated/build.js:2514
msgid "Consumable item"
msgstr "Verbrauchsartikel"
-#: templates/js/translated/bom.js:1244
+#: templates/js/translated/bom.js:1264
msgid "Validate BOM Item"
msgstr "Stücklisten-Position kontrollieren"
-#: templates/js/translated/bom.js:1246
+#: templates/js/translated/bom.js:1266
msgid "This line has been validated"
msgstr "Diese Position wurde kontrolliert"
-#: templates/js/translated/bom.js:1248
+#: templates/js/translated/bom.js:1268
msgid "Edit substitute parts"
msgstr "Ersatzteile bearbeiten"
-#: templates/js/translated/bom.js:1250 templates/js/translated/bom.js:1445
+#: templates/js/translated/bom.js:1270 templates/js/translated/bom.js:1465
msgid "Edit BOM Item"
msgstr "Stücklisten-Position bearbeiten"
-#: templates/js/translated/bom.js:1252
+#: templates/js/translated/bom.js:1272
msgid "Delete BOM Item"
msgstr "Stücklisten-Position löschen"
-#: templates/js/translated/bom.js:1272
+#: templates/js/translated/bom.js:1292
msgid "View BOM"
msgstr "Stückliste anzeigen"
-#: templates/js/translated/bom.js:1356 templates/js/translated/build.js:1927
+#: templates/js/translated/bom.js:1376
msgid "No BOM items found"
msgstr "Keine Stücklisten-Position(en) gefunden"
-#: templates/js/translated/bom.js:1616 templates/js/translated/build.js:2073
+#: templates/js/translated/bom.js:1636 templates/js/translated/build.js:2414
msgid "Required Part"
msgstr "benötigtes Teil"
-#: templates/js/translated/bom.js:1642
+#: templates/js/translated/bom.js:1662
msgid "Inherited from parent BOM"
msgstr "Geerbt von übergeordneter Stückliste"
-#: templates/js/translated/build.js:126
+#: templates/js/translated/build.js:136
msgid "Edit Build Order"
msgstr "Bauauftrag bearbeiten"
-#: templates/js/translated/build.js:169
+#: templates/js/translated/build.js:179
msgid "Create Build Order"
msgstr "Bauauftrag erstellen"
-#: templates/js/translated/build.js:202
+#: templates/js/translated/build.js:211
msgid "Cancel Build Order"
msgstr "Bauauftrag abbrechen"
-#: templates/js/translated/build.js:211
+#: templates/js/translated/build.js:220
msgid "Are you sure you wish to cancel this build?"
msgstr "Sind Sie sicher, dass sie diesen Bauauftrag abbrechen möchten?"
-#: templates/js/translated/build.js:217
+#: templates/js/translated/build.js:226
msgid "Stock items have been allocated to this build order"
msgstr "Lagerbestand wurde zu diesem Bauauftrag hinzugefügt"
-#: templates/js/translated/build.js:224
+#: templates/js/translated/build.js:233
msgid "There are incomplete outputs remaining for this build order"
msgstr "Für diesen Bau-Auftrag sind noch unvollständige Endprodukte vorhanden"
-#: templates/js/translated/build.js:276
+#: templates/js/translated/build.js:285
msgid "Build order is ready to be completed"
msgstr "Bauauftrag ist bereit abgeschlossen zu werden"
-#: templates/js/translated/build.js:284
+#: templates/js/translated/build.js:293
msgid "This build order cannot be completed as there are incomplete outputs"
msgstr "Dieser Bauauftrag kann nicht abgeschlossen werden, da es unfertige Endprodukte gibt"
-#: templates/js/translated/build.js:289
+#: templates/js/translated/build.js:298
msgid "Build Order is incomplete"
msgstr "Bauauftrag ist unvollständig"
-#: templates/js/translated/build.js:307
+#: templates/js/translated/build.js:316
msgid "Complete Build Order"
msgstr "Bauauftrag fertigstellen"
-#: templates/js/translated/build.js:348 templates/js/translated/stock.js:119
-#: templates/js/translated/stock.js:265
+#: templates/js/translated/build.js:357 templates/js/translated/stock.js:118
+#: templates/js/translated/stock.js:264
msgid "Next available serial number"
msgstr "Nächste verfügbare Seriennummer"
-#: templates/js/translated/build.js:350 templates/js/translated/stock.js:121
-#: templates/js/translated/stock.js:267
+#: templates/js/translated/build.js:359 templates/js/translated/stock.js:120
+#: templates/js/translated/stock.js:266
msgid "Latest serial number"
msgstr "Letzte Seriennummer"
-#: templates/js/translated/build.js:359
+#: templates/js/translated/build.js:368
msgid "The Bill of Materials contains trackable parts"
msgstr "Die Stückliste enthält verfolgbare Teile"
-#: templates/js/translated/build.js:360
+#: templates/js/translated/build.js:369
msgid "Build outputs must be generated individually"
msgstr "Endprodukte müssen individuell angelegt werden"
-#: templates/js/translated/build.js:368
+#: templates/js/translated/build.js:377
msgid "Trackable parts can have serial numbers specified"
msgstr "Nachverfolgbare Teile können Seriennummern haben"
-#: templates/js/translated/build.js:369
+#: templates/js/translated/build.js:378
msgid "Enter serial numbers to generate multiple single build outputs"
msgstr "Seriennummeren für mehrere einzelne Endprodukte angeben"
-#: templates/js/translated/build.js:376
+#: templates/js/translated/build.js:385
msgid "Create Build Output"
msgstr "Endprodukt anlegen"
-#: templates/js/translated/build.js:407
+#: templates/js/translated/build.js:416
msgid "Allocate stock items to this build output"
msgstr "Lagerartikel zu diesem Endprodukt zuweisen"
-#: templates/js/translated/build.js:418
-msgid "Unallocate stock from build output"
-msgstr "Bestand von Endpordukt zurücknehmen"
+#: templates/js/translated/build.js:424
+msgid "Deallocate stock from build output"
+msgstr ""
-#: templates/js/translated/build.js:427
+#: templates/js/translated/build.js:433
msgid "Complete build output"
msgstr "Endprodukt fertigstellen"
-#: templates/js/translated/build.js:435
+#: templates/js/translated/build.js:441
msgid "Scrap build output"
msgstr ""
-#: templates/js/translated/build.js:442
+#: templates/js/translated/build.js:448
msgid "Delete build output"
msgstr "Endprodukt entfernen"
-#: templates/js/translated/build.js:462
-msgid "Are you sure you wish to unallocate stock items from this build?"
-msgstr "Sind Sie sicher, dass sie alle Lagerartikel von diesem Bauauftrag entfernen möchten?"
+#: templates/js/translated/build.js:468
+msgid "Are you sure you wish to deallocate the selected stock items from this build?"
+msgstr ""
-#: templates/js/translated/build.js:480
-msgid "Unallocate Stock Items"
-msgstr "Lagerartikel zurücknehmen"
+#: templates/js/translated/build.js:486
+msgid "Deallocate Stock Items"
+msgstr ""
-#: templates/js/translated/build.js:566 templates/js/translated/build.js:690
-#: templates/js/translated/build.js:812
+#: templates/js/translated/build.js:572 templates/js/translated/build.js:696
+#: templates/js/translated/build.js:818
msgid "Select Build Outputs"
msgstr "Endprodukte auswählen"
-#: templates/js/translated/build.js:567 templates/js/translated/build.js:691
-#: templates/js/translated/build.js:813
+#: templates/js/translated/build.js:573 templates/js/translated/build.js:697
+#: templates/js/translated/build.js:819
msgid "At least one build output must be selected"
msgstr "Mindestens ein Endprodukt muss ausgewählt werden"
-#: templates/js/translated/build.js:581
+#: templates/js/translated/build.js:587
msgid "Selected build outputs will be marked as complete"
msgstr ""
-#: templates/js/translated/build.js:585 templates/js/translated/build.js:715
-#: templates/js/translated/build.js:835
+#: templates/js/translated/build.js:591 templates/js/translated/build.js:721
+#: templates/js/translated/build.js:841
msgid "Output"
msgstr "Endprodukt"
-#: templates/js/translated/build.js:609
+#: templates/js/translated/build.js:615
msgid "Complete Build Outputs"
msgstr "Endprodukte fertigstellen"
-#: templates/js/translated/build.js:706
+#: templates/js/translated/build.js:712
msgid "Selected build outputs will be marked as scrapped"
msgstr ""
-#: templates/js/translated/build.js:708
+#: templates/js/translated/build.js:714
msgid "Scrapped output are marked as rejected"
msgstr ""
-#: templates/js/translated/build.js:709
+#: templates/js/translated/build.js:715
msgid "Allocated stock items will no longer be available"
msgstr ""
-#: templates/js/translated/build.js:710
+#: templates/js/translated/build.js:716
msgid "The completion status of the build order will not be adjusted"
msgstr ""
-#: templates/js/translated/build.js:737
+#: templates/js/translated/build.js:743
msgid "Scrap Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:827
+#: templates/js/translated/build.js:833
msgid "Selected build outputs will be deleted"
msgstr ""
-#: templates/js/translated/build.js:829
+#: templates/js/translated/build.js:835
msgid "Build output data will be permanently deleted"
msgstr ""
-#: templates/js/translated/build.js:830
+#: templates/js/translated/build.js:836
msgid "Allocated stock items will be returned to stock"
msgstr ""
-#: templates/js/translated/build.js:848
+#: templates/js/translated/build.js:854
msgid "Delete Build Outputs"
msgstr "Endprodukte entfernen"
-#: templates/js/translated/build.js:934
+#: templates/js/translated/build.js:941
msgid "No build order allocations found"
msgstr "Keine Allokationen für Bauauftrag gefunden"
-#: templates/js/translated/build.js:971
+#: templates/js/translated/build.js:970 templates/js/translated/build.js:2270
+msgid "Allocated Quantity"
+msgstr ""
+
+#: templates/js/translated/build.js:984
msgid "Location not specified"
msgstr "Standort nicht angegeben"
-#: templates/js/translated/build.js:1047
+#: templates/js/translated/build.js:1006
+msgid "Complete outputs"
+msgstr "Endprodukte fertigstellen"
+
+#: templates/js/translated/build.js:1024
+msgid "Scrap outputs"
+msgstr ""
+
+#: templates/js/translated/build.js:1042
+msgid "Delete outputs"
+msgstr "Endprodukte löschen"
+
+#: templates/js/translated/build.js:1100
msgid "build output"
msgstr ""
-#: templates/js/translated/build.js:1048
+#: templates/js/translated/build.js:1101
msgid "build outputs"
msgstr ""
-#: templates/js/translated/build.js:1383
+#: templates/js/translated/build.js:1105
+msgid "Build output actions"
+msgstr ""
+
+#: templates/js/translated/build.js:1274
msgid "No active build outputs found"
msgstr "Keine aktiven Endprodukte gefunden"
-#: templates/js/translated/build.js:1457
-msgid "Allocated Stock"
-msgstr "Bestand zuteilen"
+#: templates/js/translated/build.js:1329
+msgid "Allocated Lines"
+msgstr ""
-#: templates/js/translated/build.js:1464
-msgid "No tracked BOM items for this build"
-msgstr "Keine nachverfolgten Stücklisten-Einträge für diesen Bauauftrag"
+#: templates/js/translated/build.js:1343
+msgid "Required Tests"
+msgstr ""
-#: templates/js/translated/build.js:1486
-msgid "Completed Tests"
-msgstr "Abgeschlossene Tests"
-
-#: templates/js/translated/build.js:1491
-msgid "No required tests for this build"
-msgstr "Keine erforderlichen Tests für diesen Bauauftrag"
-
-#: templates/js/translated/build.js:2032 templates/js/translated/build.js:3056
-#: templates/js/translated/sales_order.js:1632
-msgid "Edit stock allocation"
-msgstr "Bestands-Zuordnung bearbeiten"
-
-#: templates/js/translated/build.js:2034 templates/js/translated/build.js:3057
-#: templates/js/translated/sales_order.js:1633
-msgid "Delete stock allocation"
-msgstr "Bestands-Zuordnung löschen"
-
-#: templates/js/translated/build.js:2050
-msgid "Edit Allocation"
-msgstr "Zuordnung bearbeiten"
-
-#: templates/js/translated/build.js:2060
-msgid "Remove Allocation"
-msgstr "Zuordnung entfernen"
-
-#: templates/js/translated/build.js:2086
-msgid "Substitute parts available"
-msgstr "Ersatzteile verfügbar"
-
-#: templates/js/translated/build.js:2122
-msgid "Quantity Per"
-msgstr "Anzahl pro"
-
-#: templates/js/translated/build.js:2167
-#: templates/js/translated/sales_order.js:1894
-msgid "Insufficient stock available"
-msgstr "Unzureichender Bestand verfügbar"
-
-#: templates/js/translated/build.js:2169
-#: templates/js/translated/sales_order.js:1892
-msgid "Sufficient stock available"
-msgstr "Ausreichender Bestand verfügbar"
-
-#: templates/js/translated/build.js:2263
-#: templates/js/translated/sales_order.js:1993
-msgid "Build stock"
-msgstr "Bestand bauen"
-
-#: templates/js/translated/build.js:2267 templates/stock_table.html:38
-msgid "Order stock"
-msgstr "Bestand bestellen"
-
-#: templates/js/translated/build.js:2270
-#: templates/js/translated/sales_order.js:1987
-msgid "Allocate stock"
-msgstr "Bestand zuweisen"
-
-#: templates/js/translated/build.js:2310
-#: templates/js/translated/purchase_order.js:616
-#: templates/js/translated/sales_order.js:1159
+#: templates/js/translated/build.js:1502
+#: templates/js/translated/purchase_order.js:627
+#: templates/js/translated/sales_order.js:1171
msgid "Select Parts"
msgstr "Teile auswählen"
-#: templates/js/translated/build.js:2311
-#: templates/js/translated/sales_order.js:1160
+#: templates/js/translated/build.js:1503
+#: templates/js/translated/sales_order.js:1172
msgid "You must select at least one part to allocate"
msgstr "Sie müssen mindestens ein Teil auswählen"
-#: templates/js/translated/build.js:2359
-#: templates/js/translated/sales_order.js:1109
+#: templates/js/translated/build.js:1566
+#: templates/js/translated/sales_order.js:1121
msgid "Specify stock allocation quantity"
msgstr "Anzahl für Bestandszuordnung eingeben"
-#: templates/js/translated/build.js:2438
+#: templates/js/translated/build.js:1643
msgid "All Parts Allocated"
msgstr "Alle Teile zugeordnet"
-#: templates/js/translated/build.js:2439
+#: templates/js/translated/build.js:1644
msgid "All selected parts have been fully allocated"
msgstr "Alle ausgewählten Teile wurden vollständig zugeordnet"
-#: templates/js/translated/build.js:2453
-#: templates/js/translated/sales_order.js:1174
+#: templates/js/translated/build.js:1658
+#: templates/js/translated/sales_order.js:1186
msgid "Select source location (leave blank to take from all locations)"
msgstr "Wählen Sie den Quellort aus (leer lassen um von allen Standorten zu nehmen)"
-#: templates/js/translated/build.js:2481
+#: templates/js/translated/build.js:1686
msgid "Allocate Stock Items to Build Order"
msgstr "Lagerartikel für Bauauftrag zuweisen"
-#: templates/js/translated/build.js:2492
-#: templates/js/translated/sales_order.js:1271
+#: templates/js/translated/build.js:1697
+#: templates/js/translated/sales_order.js:1283
msgid "No matching stock locations"
msgstr "Keine passenden Lagerstandorte"
-#: templates/js/translated/build.js:2565
-#: templates/js/translated/sales_order.js:1348
+#: templates/js/translated/build.js:1770
+#: templates/js/translated/sales_order.js:1360
msgid "No matching stock items"
msgstr "Keine passenden Lagerbestände"
-#: templates/js/translated/build.js:2662
+#: templates/js/translated/build.js:1867
msgid "Automatic Stock Allocation"
msgstr "Automatische Lagerzuordnung"
-#: templates/js/translated/build.js:2663
+#: templates/js/translated/build.js:1868
msgid "Stock items will be automatically allocated to this build order, according to the provided guidelines"
msgstr "Lagerartikel werden automatisch diesem Bauauftrag zugewiesen, entsprechend den angegebenen Richtlinien"
-#: templates/js/translated/build.js:2665
+#: templates/js/translated/build.js:1870
msgid "If a location is specified, stock will only be allocated from that location"
msgstr "Wenn ein Lagerort angegeben ist, wird der Lagerbestand nur von diesem Ort zugewiesen"
-#: templates/js/translated/build.js:2666
+#: templates/js/translated/build.js:1871
msgid "If stock is considered interchangeable, it will be allocated from the first location it is found"
msgstr "Wenn der Lagerbestand als austauschbar gilt, wird er vom ersten Standort zugewiesen, an dem er gefunden wird"
-#: templates/js/translated/build.js:2667
+#: templates/js/translated/build.js:1872
msgid "If substitute stock is allowed, it will be used where stock of the primary part cannot be found"
msgstr "Wenn ein Ersatzbestand erlaubt ist, wird es dort verwendet, wo kein Vorrat des Primärteils gefunden werden kann"
-#: templates/js/translated/build.js:2694
+#: templates/js/translated/build.js:1899
msgid "Allocate Stock Items"
msgstr "Lagerartikel zuordnen"
-#: templates/js/translated/build.js:2800
+#: templates/js/translated/build.js:2005
msgid "No builds matching query"
msgstr "Keine Bauaufträge passen zur Anfrage"
-#: templates/js/translated/build.js:2835 templates/js/translated/part.js:2208
-#: templates/js/translated/part.js:2692 templates/js/translated/stock.js:1759
-#: templates/js/translated/stock.js:2458
+#: templates/js/translated/build.js:2040 templates/js/translated/build.js:2408
+#: templates/js/translated/part.js:2284 templates/js/translated/part.js:2677
+#: templates/js/translated/stock.js:1899 templates/js/translated/stock.js:2589
msgid "Select"
msgstr "Auswählen"
-#: templates/js/translated/build.js:2849
+#: templates/js/translated/build.js:2054
msgid "Build order is overdue"
msgstr "Bauauftrag ist überfällig"
-#: templates/js/translated/build.js:2883
+#: templates/js/translated/build.js:2100
msgid "Progress"
msgstr "Fortschritt"
-#: templates/js/translated/build.js:2919 templates/js/translated/stock.js:2779
+#: templates/js/translated/build.js:2136 templates/js/translated/stock.js:2910
msgid "No user information"
msgstr "Keine Benutzerinformation"
-#: templates/js/translated/build.js:2934
+#: templates/js/translated/build.js:2151
msgid "group"
msgstr "Gruppe"
-#: templates/js/translated/build.js:3033
-msgid "No parts allocated for"
-msgstr "Keine Teile zugeordnet zu"
+#: templates/js/translated/build.js:2315
+#: templates/js/translated/sales_order.js:1644
+msgid "Edit stock allocation"
+msgstr "Bestands-Zuordnung bearbeiten"
-#: templates/js/translated/company.js:87
+#: templates/js/translated/build.js:2316
+#: templates/js/translated/sales_order.js:1645
+msgid "Delete stock allocation"
+msgstr "Bestands-Zuordnung löschen"
+
+#: templates/js/translated/build.js:2331
+msgid "Edit Allocation"
+msgstr "Zuordnung bearbeiten"
+
+#: templates/js/translated/build.js:2343
+msgid "Remove Allocation"
+msgstr "Zuordnung entfernen"
+
+#: templates/js/translated/build.js:2384
+msgid "build line"
+msgstr ""
+
+#: templates/js/translated/build.js:2385
+msgid "build lines"
+msgstr ""
+
+#: templates/js/translated/build.js:2403
+msgid "No build lines found"
+msgstr ""
+
+#: templates/js/translated/build.js:2433 templates/js/translated/part.js:767
+#: templates/js/translated/part.js:1175
+msgid "Trackable part"
+msgstr "Nachverfolgbares Teil"
+
+#: templates/js/translated/build.js:2468
+msgid "Unit Quantity"
+msgstr ""
+
+#: templates/js/translated/build.js:2517
+#: templates/js/translated/sales_order.js:1906
+msgid "Insufficient stock available"
+msgstr "Unzureichender Bestand verfügbar"
+
+#: templates/js/translated/build.js:2519
+#: templates/js/translated/sales_order.js:1904
+msgid "Sufficient stock available"
+msgstr "Ausreichender Bestand verfügbar"
+
+#: templates/js/translated/build.js:2566
+msgid "Consumable Item"
+msgstr ""
+
+#: templates/js/translated/build.js:2571
+msgid "Tracked item"
+msgstr ""
+
+#: templates/js/translated/build.js:2578
+#: templates/js/translated/sales_order.js:2005
+msgid "Build stock"
+msgstr "Bestand bauen"
+
+#: templates/js/translated/build.js:2583 templates/js/translated/stock.js:1779
+msgid "Order stock"
+msgstr "Bestand bestellen"
+
+#: templates/js/translated/build.js:2587
+#: templates/js/translated/sales_order.js:1999
+msgid "Allocate stock"
+msgstr "Bestand zuweisen"
+
+#: templates/js/translated/build.js:2591
+msgid "Remove stock allocation"
+msgstr ""
+
+#: templates/js/translated/company.js:97
msgid "Add Manufacturer"
msgstr "Hersteller hinzufügen"
-#: templates/js/translated/company.js:100
-#: templates/js/translated/company.js:202
+#: templates/js/translated/company.js:110
+#: templates/js/translated/company.js:212
msgid "Add Manufacturer Part"
msgstr "Herstellerteil hinzufügen"
-#: templates/js/translated/company.js:121
+#: templates/js/translated/company.js:131
msgid "Edit Manufacturer Part"
msgstr "Herstellerteil ändern"
-#: templates/js/translated/company.js:190
-#: templates/js/translated/purchase_order.js:94
+#: templates/js/translated/company.js:200
+#: templates/js/translated/purchase_order.js:93
msgid "Add Supplier"
msgstr "Zulieferer hinzufügen"
-#: templates/js/translated/company.js:232
-#: templates/js/translated/purchase_order.js:338
+#: templates/js/translated/company.js:242
+#: templates/js/translated/purchase_order.js:349
msgid "Add Supplier Part"
msgstr "Zuliefererteil hinzufügen"
-#: templates/js/translated/company.js:333
+#: templates/js/translated/company.js:343
msgid "All selected supplier parts will be deleted"
msgstr "Alle ausgewählten Zulieferteile werden gelöscht"
-#: templates/js/translated/company.js:349
+#: templates/js/translated/company.js:359
msgid "Delete Supplier Parts"
msgstr "Zuliefererteil entfernen"
-#: templates/js/translated/company.js:457
+#: templates/js/translated/company.js:464
msgid "Add new Company"
msgstr "Neue Firma hinzufügen"
-#: templates/js/translated/company.js:528
+#: templates/js/translated/company.js:535
msgid "Parts Supplied"
msgstr "Teile geliefert"
-#: templates/js/translated/company.js:537
+#: templates/js/translated/company.js:544
msgid "Parts Manufactured"
msgstr "Hersteller-Teile"
-#: templates/js/translated/company.js:552
+#: templates/js/translated/company.js:559
msgid "No company information found"
msgstr "Keine Firmeninformation gefunden"
-#: templates/js/translated/company.js:601
+#: templates/js/translated/company.js:608
msgid "Create New Contact"
msgstr ""
-#: templates/js/translated/company.js:617
-#: templates/js/translated/company.js:740
+#: templates/js/translated/company.js:624
+#: templates/js/translated/company.js:747
msgid "Edit Contact"
msgstr ""
-#: templates/js/translated/company.js:654
+#: templates/js/translated/company.js:661
msgid "All selected contacts will be deleted"
msgstr ""
-#: templates/js/translated/company.js:660
-#: templates/js/translated/company.js:724
+#: templates/js/translated/company.js:667
+#: templates/js/translated/company.js:731
msgid "Role"
msgstr ""
-#: templates/js/translated/company.js:668
+#: templates/js/translated/company.js:675
msgid "Delete Contacts"
msgstr ""
-#: templates/js/translated/company.js:699
+#: templates/js/translated/company.js:706
msgid "No contacts found"
msgstr ""
-#: templates/js/translated/company.js:712
+#: templates/js/translated/company.js:719
msgid "Phone Number"
msgstr ""
-#: templates/js/translated/company.js:718
+#: templates/js/translated/company.js:725
msgid "Email Address"
msgstr ""
-#: templates/js/translated/company.js:744
+#: templates/js/translated/company.js:751
msgid "Delete Contact"
msgstr ""
-#: templates/js/translated/company.js:818
+#: templates/js/translated/company.js:886
+msgid "Create New Address"
+msgstr ""
+
+#: templates/js/translated/company.js:901
+#: templates/js/translated/company.js:1066
+msgid "Edit Address"
+msgstr ""
+
+#: templates/js/translated/company.js:936
+msgid "All selected addresses will be deleted"
+msgstr ""
+
+#: templates/js/translated/company.js:950
+msgid "Delete Addresses"
+msgstr ""
+
+#: templates/js/translated/company.js:977
+msgid "No addresses found"
+msgstr ""
+
+#: templates/js/translated/company.js:1020
+msgid "Postal city"
+msgstr ""
+
+#: templates/js/translated/company.js:1026
+msgid "State/province"
+msgstr ""
+
+#: templates/js/translated/company.js:1038
+msgid "Courier notes"
+msgstr ""
+
+#: templates/js/translated/company.js:1044
+msgid "Internal notes"
+msgstr ""
+
+#: templates/js/translated/company.js:1070
+msgid "Delete Address"
+msgstr ""
+
+#: templates/js/translated/company.js:1143
msgid "All selected manufacturer parts will be deleted"
msgstr "Alle ausgewählten Herstellerrteile werden gelöscht"
-#: templates/js/translated/company.js:833
+#: templates/js/translated/company.js:1158
msgid "Delete Manufacturer Parts"
msgstr "Herstellerteile löschen"
-#: templates/js/translated/company.js:867
+#: templates/js/translated/company.js:1192
msgid "All selected parameters will be deleted"
msgstr "Alle ausgewählten Parameter werden gelöscht"
-#: templates/js/translated/company.js:881
+#: templates/js/translated/company.js:1206
msgid "Delete Parameters"
msgstr "Parameter löschen"
-#: templates/js/translated/company.js:917
+#: templates/js/translated/company.js:1222
+#: templates/js/translated/company.js:1510 templates/js/translated/part.js:2213
+msgid "Order parts"
+msgstr "Teile bestellen"
+
+#: templates/js/translated/company.js:1239
+msgid "Delete manufacturer parts"
+msgstr "Herstellerteile löschen"
+
+#: templates/js/translated/company.js:1271
+msgid "Manufacturer part actions"
+msgstr ""
+
+#: templates/js/translated/company.js:1290
msgid "No manufacturer parts found"
msgstr "Keine Herstellerteile gefunden"
-#: templates/js/translated/company.js:937
-#: templates/js/translated/company.js:1177 templates/js/translated/part.js:776
-#: templates/js/translated/part.js:1184
+#: templates/js/translated/company.js:1310
+#: templates/js/translated/company.js:1598 templates/js/translated/part.js:775
+#: templates/js/translated/part.js:1183
msgid "Template part"
msgstr "Vorlagenteil"
-#: templates/js/translated/company.js:941
-#: templates/js/translated/company.js:1181 templates/js/translated/part.js:780
-#: templates/js/translated/part.js:1188
+#: templates/js/translated/company.js:1314
+#: templates/js/translated/company.js:1602 templates/js/translated/part.js:779
+#: templates/js/translated/part.js:1187
msgid "Assembled part"
msgstr "Baugruppe"
-#: templates/js/translated/company.js:1061 templates/js/translated/part.js:1437
+#: templates/js/translated/company.js:1434 templates/js/translated/part.js:1436
msgid "No parameters found"
msgstr "Keine Parameter gefunden"
-#: templates/js/translated/company.js:1096 templates/js/translated/part.js:1500
+#: templates/js/translated/company.js:1469 templates/js/translated/part.js:1499
msgid "Edit parameter"
msgstr "Parameter bearbeiten"
-#: templates/js/translated/company.js:1097 templates/js/translated/part.js:1501
+#: templates/js/translated/company.js:1470 templates/js/translated/part.js:1500
msgid "Delete parameter"
msgstr "Parameter löschen"
-#: templates/js/translated/company.js:1114 templates/js/translated/part.js:1407
+#: templates/js/translated/company.js:1487 templates/js/translated/part.js:1406
msgid "Edit Parameter"
msgstr "Parameter bearbeiten"
-#: templates/js/translated/company.js:1123 templates/js/translated/part.js:1522
+#: templates/js/translated/company.js:1496 templates/js/translated/part.js:1521
msgid "Delete Parameter"
msgstr "Parameter löschen"
-#: templates/js/translated/company.js:1156
+#: templates/js/translated/company.js:1527
+msgid "Delete supplier parts"
+msgstr "Zuliefererteil entfernen"
+
+#: templates/js/translated/company.js:1577
msgid "No supplier parts found"
msgstr "Keine Zuliefererteile gefunden"
-#: templates/js/translated/company.js:1274
+#: templates/js/translated/company.js:1695
msgid "Base Units"
msgstr ""
-#: templates/js/translated/company.js:1304
+#: templates/js/translated/company.js:1725
msgid "Availability"
msgstr "Verfügbarkeit"
-#: templates/js/translated/company.js:1335
+#: templates/js/translated/company.js:1756
msgid "Edit supplier part"
msgstr "Zuliefererteil bearbeiten"
-#: templates/js/translated/company.js:1336
+#: templates/js/translated/company.js:1757
msgid "Delete supplier part"
msgstr "Zuliefererteil entfernen"
-#: templates/js/translated/company.js:1389
+#: templates/js/translated/company.js:1810
#: templates/js/translated/pricing.js:694
msgid "Delete Price Break"
msgstr "Preisstaffel löschen"
-#: templates/js/translated/company.js:1399
+#: templates/js/translated/company.js:1820
#: templates/js/translated/pricing.js:712
msgid "Edit Price Break"
msgstr "Preisstaffel bearbeiten"
-#: templates/js/translated/company.js:1414
+#: templates/js/translated/company.js:1835
msgid "No price break information found"
msgstr "Keine Informationen zur Preisstaffel gefunden"
-#: templates/js/translated/company.js:1443
+#: templates/js/translated/company.js:1864
msgid "Last updated"
msgstr "Zuletzt aktualisiert"
-#: templates/js/translated/company.js:1450
+#: templates/js/translated/company.js:1871
msgid "Edit price break"
msgstr "Preisstaffel bearbeiten"
-#: templates/js/translated/company.js:1451
+#: templates/js/translated/company.js:1872
msgid "Delete price break"
msgstr "Preisstaffel löschen"
-#: templates/js/translated/filters.js:186
-#: templates/js/translated/filters.js:550
+#: templates/js/translated/filters.js:187
+#: templates/js/translated/filters.js:673
msgid "true"
msgstr "ja"
-#: templates/js/translated/filters.js:190
-#: templates/js/translated/filters.js:551
+#: templates/js/translated/filters.js:191
+#: templates/js/translated/filters.js:674
msgid "false"
msgstr "nein"
-#: templates/js/translated/filters.js:214
+#: templates/js/translated/filters.js:215
msgid "Select filter"
msgstr "Filter auswählen"
-#: templates/js/translated/filters.js:328
+#: templates/js/translated/filters.js:438
msgid "Print Labels"
msgstr ""
-#: templates/js/translated/filters.js:332
+#: templates/js/translated/filters.js:442
msgid "Print Reports"
msgstr ""
-#: templates/js/translated/filters.js:344
+#: templates/js/translated/filters.js:454
msgid "Download table data"
msgstr ""
-#: templates/js/translated/filters.js:351
+#: templates/js/translated/filters.js:461
msgid "Reload table data"
msgstr ""
-#: templates/js/translated/filters.js:360
+#: templates/js/translated/filters.js:470
msgid "Add new filter"
msgstr "Filter hinzufügen"
-#: templates/js/translated/filters.js:368
+#: templates/js/translated/filters.js:478
msgid "Clear all filters"
msgstr "Filter entfernen"
-#: templates/js/translated/filters.js:460
+#: templates/js/translated/filters.js:583
msgid "Create filter"
msgstr "Filter anlegen"
@@ -10497,6 +10620,12 @@ msgstr "Löschvorgang nicht erlaubt"
msgid "View operation not allowed"
msgstr "Anzeigevorgang nicht erlaubt"
+#: templates/js/translated/forms.js:506 templates/js/translated/helpers.js:105
+#: templates/js/translated/part.js:369 templates/js/translated/pricing.js:629
+#: templates/js/translated/stock.js:215 users/models.py:253
+msgid "Delete"
+msgstr "Löschen"
+
#: templates/js/translated/forms.js:752
msgid "Keep this form open"
msgstr "Dieses Formular offen lassen"
@@ -10514,23 +10643,23 @@ msgstr "Fehler in Formular"
msgid "No results found"
msgstr "Keine Ergebnisse gefunden"
-#: templates/js/translated/forms.js:2071 templates/js/translated/search.js:281
+#: templates/js/translated/forms.js:2071 templates/js/translated/search.js:239
msgid "Searching"
msgstr "Suche"
-#: templates/js/translated/forms.js:2276
+#: templates/js/translated/forms.js:2285
msgid "Clear input"
msgstr "Eingabe leeren"
-#: templates/js/translated/forms.js:2733
+#: templates/js/translated/forms.js:2742
msgid "File Column"
msgstr "Dateispalte"
-#: templates/js/translated/forms.js:2733
+#: templates/js/translated/forms.js:2742
msgid "Field Name"
msgstr "Feldname"
-#: templates/js/translated/forms.js:2745
+#: templates/js/translated/forms.js:2754
msgid "Select Columns"
msgstr "Spalten auswählen"
@@ -10550,6 +10679,14 @@ msgstr ""
msgid "False"
msgstr ""
+#: templates/js/translated/index.js:99
+msgid "No parts required for builds"
+msgstr ""
+
+#: templates/js/translated/index.js:125
+msgid "Allocated Stock"
+msgstr ""
+
#: templates/js/translated/label.js:58
msgid "Select Printer"
msgstr "Drucker auswählen"
@@ -10651,7 +10788,7 @@ msgstr "Keine Nachrichten gefunden"
#: templates/js/translated/news.js:38
#: templates/js/translated/notification.js:45
-#: templates/js/translated/part.js:1577
+#: templates/js/translated/part.js:1576
msgid "ID"
msgstr "ID"
@@ -10700,7 +10837,7 @@ msgid "Delete Line"
msgstr "Zeile löschen"
#: templates/js/translated/order.js:281
-#: templates/js/translated/purchase_order.js:1958
+#: templates/js/translated/purchase_order.js:1968
msgid "No line items found"
msgstr "Keine Positionen gefunden"
@@ -10716,363 +10853,355 @@ msgstr "Zeile bearbeiten"
msgid "Delete line"
msgstr "Zeile löschen"
-#: templates/js/translated/part.js:91
+#: templates/js/translated/part.js:90
msgid "Part Attributes"
msgstr "Teileigenschaften"
-#: templates/js/translated/part.js:95
+#: templates/js/translated/part.js:94
msgid "Part Creation Options"
msgstr "Erstellungsoptionen für Teile"
-#: templates/js/translated/part.js:99
+#: templates/js/translated/part.js:98
msgid "Part Duplication Options"
msgstr "Einstellungen für Teilkopien"
-#: templates/js/translated/part.js:122
+#: templates/js/translated/part.js:121
msgid "Add Part Category"
msgstr "Teil-Kategorie hinzufügen"
-#: templates/js/translated/part.js:294
+#: templates/js/translated/part.js:293
msgid "Parent part category"
msgstr "Übergeordnete Teilkategorie"
-#: templates/js/translated/part.js:310 templates/js/translated/stock.js:147
+#: templates/js/translated/part.js:309 templates/js/translated/stock.js:146
msgid "Icon (optional) - Explore all available icons on"
msgstr "Icon (optional) - alle verfügbaren Icons einsehbar auf"
-#: templates/js/translated/part.js:330
+#: templates/js/translated/part.js:329
msgid "Create Part Category"
msgstr "Teil-Kategorie hinzufügen"
-#: templates/js/translated/part.js:333
+#: templates/js/translated/part.js:332
msgid "Create new category after this one"
msgstr ""
-#: templates/js/translated/part.js:334
+#: templates/js/translated/part.js:333
msgid "Part category created"
msgstr ""
-#: templates/js/translated/part.js:348
+#: templates/js/translated/part.js:347
msgid "Edit Part Category"
msgstr "Teil-Kategorie bearbeiten"
-#: templates/js/translated/part.js:361
+#: templates/js/translated/part.js:360
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:366
+#: templates/js/translated/part.js:365
msgid "Move to parent category"
msgstr "In übergeordnete Kategorie verschieben"
-#: templates/js/translated/part.js:375
+#: templates/js/translated/part.js:374
msgid "Delete Part Category"
msgstr "Teil-Kategorie löschen"
-#: templates/js/translated/part.js:379
+#: templates/js/translated/part.js:378
msgid "Action for parts in this category"
msgstr "Aktion für Teile in dieser Kategorie"
-#: templates/js/translated/part.js:384
+#: templates/js/translated/part.js:383
msgid "Action for child categories"
msgstr "Aktion für Unterkategorien"
-#: templates/js/translated/part.js:408
+#: templates/js/translated/part.js:407
msgid "Create Part"
msgstr "Teil hinzufügen"
-#: templates/js/translated/part.js:410
+#: templates/js/translated/part.js:409
msgid "Create another part after this one"
msgstr "Ein weiteres Teil anlegen"
-#: templates/js/translated/part.js:411
+#: templates/js/translated/part.js:410
msgid "Part created successfully"
msgstr "Teil erfolgreich angelegt"
-#: templates/js/translated/part.js:439
+#: templates/js/translated/part.js:438
msgid "Edit Part"
msgstr "Teil bearbeiten"
-#: templates/js/translated/part.js:441
+#: templates/js/translated/part.js:440
msgid "Part edited"
msgstr "Teil bearbeitet"
-#: templates/js/translated/part.js:452
+#: templates/js/translated/part.js:451
msgid "Create Part Variant"
msgstr "Teil-Variante anlegen"
-#: templates/js/translated/part.js:509
+#: templates/js/translated/part.js:508
msgid "Active Part"
msgstr "Aktives Teil"
-#: templates/js/translated/part.js:510
+#: templates/js/translated/part.js:509
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:524
+#: templates/js/translated/part.js:523
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:526
+#: templates/js/translated/part.js:525
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:527
+#: templates/js/translated/part.js:526
msgid "This part will be removed from any Bills of Material"
msgstr "Dieses Teil wird von allen Stücklisten entfernt"
-#: templates/js/translated/part.js:528
+#: templates/js/translated/part.js:527
msgid "All manufacturer and supplier information for this part will be deleted"
msgstr "Alle Hersteller- und Zuliefererinformationen für dieses Teil werden gelöscht"
-#: templates/js/translated/part.js:535
+#: templates/js/translated/part.js:534
msgid "Delete Part"
msgstr "Teil löschen"
-#: templates/js/translated/part.js:571
+#: templates/js/translated/part.js:570
msgid "You are subscribed to notifications for this item"
msgstr "Sie haben Benachrichtigungen für dieses Teil abonniert"
-#: templates/js/translated/part.js:573
+#: templates/js/translated/part.js:572
msgid "You have subscribed to notifications for this item"
msgstr "Sie haben Benachrichtigungen für dieses Teil abonniert"
-#: templates/js/translated/part.js:578
+#: templates/js/translated/part.js:577
msgid "Subscribe to notifications for this item"
msgstr "Benachrichtigungen für dieses Teil abonnieren"
-#: templates/js/translated/part.js:580
+#: templates/js/translated/part.js:579
msgid "You have unsubscribed to notifications for this item"
msgstr "Sie haben Benachrichtigungen für dieses Teil abgemeldet"
-#: templates/js/translated/part.js:597
+#: templates/js/translated/part.js:596
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:607
+#: templates/js/translated/part.js:606
msgid "Validate Bill of Materials"
msgstr "Stückliste prüfen"
-#: templates/js/translated/part.js:610
+#: templates/js/translated/part.js:609
msgid "Validated Bill of Materials"
msgstr "überprüfte Stückliste"
-#: templates/js/translated/part.js:635
+#: templates/js/translated/part.js:634
msgid "Copy Bill of Materials"
msgstr "Stückliste kopieren"
-#: templates/js/translated/part.js:663
-#: templates/js/translated/table_filters.js:660
+#: templates/js/translated/part.js:662
+#: templates/js/translated/table_filters.js:682
msgid "Low stock"
msgstr "Bestand niedrig"
-#: templates/js/translated/part.js:666
+#: templates/js/translated/part.js:665
msgid "No stock available"
msgstr "Kein Lagerbestand verfügbar"
-#: templates/js/translated/part.js:726
+#: templates/js/translated/part.js:725
msgid "Demand"
msgstr "Bedarf"
-#: templates/js/translated/part.js:749
+#: templates/js/translated/part.js:748
msgid "Unit"
msgstr "Einheit"
-#: templates/js/translated/part.js:768 templates/js/translated/part.js:1176
-msgid "Trackable part"
-msgstr "Nachverfolgbares Teil"
-
-#: templates/js/translated/part.js:772 templates/js/translated/part.js:1180
+#: templates/js/translated/part.js:771 templates/js/translated/part.js:1179
msgid "Virtual part"
msgstr "virtuelles Teil"
-#: templates/js/translated/part.js:784
+#: templates/js/translated/part.js:783
msgid "Subscribed part"
msgstr "Abonnierter Teil"
-#: templates/js/translated/part.js:788
+#: templates/js/translated/part.js:787
msgid "Salable part"
msgstr "Verkäufliches Teil"
-#: templates/js/translated/part.js:863
+#: templates/js/translated/part.js:862
msgid "Schedule generation of a new stocktake report."
msgstr "Die Erstellung eines neuen Inventurberichtes planen."
-#: templates/js/translated/part.js:863
+#: templates/js/translated/part.js:862
msgid "Once complete, the stocktake report will be available for download."
msgstr "Nach Fertigstellung steht der Inventurbericht zum Download zur Verfügung."
-#: templates/js/translated/part.js:871
+#: templates/js/translated/part.js:870
msgid "Generate Stocktake Report"
msgstr "Inventurbericht generieren"
-#: templates/js/translated/part.js:875
+#: templates/js/translated/part.js:874
msgid "Stocktake report scheduled"
msgstr "Inventurbericht geplant"
-#: templates/js/translated/part.js:1024
+#: templates/js/translated/part.js:1023
msgid "No stocktake information available"
msgstr "Keine Inventurinformationen verfügbar"
-#: templates/js/translated/part.js:1082 templates/js/translated/part.js:1118
+#: templates/js/translated/part.js:1081 templates/js/translated/part.js:1117
msgid "Edit Stocktake Entry"
msgstr "Inventureintrag bearbeiten"
-#: templates/js/translated/part.js:1086 templates/js/translated/part.js:1128
+#: templates/js/translated/part.js:1085 templates/js/translated/part.js:1127
msgid "Delete Stocktake Entry"
msgstr "Inventureintrag löschen"
-#: templates/js/translated/part.js:1255
+#: templates/js/translated/part.js:1254
msgid "No variants found"
msgstr "Keine Varianten gefunden"
-#: templates/js/translated/part.js:1572
+#: templates/js/translated/part.js:1571
msgid "No part parameter templates found"
msgstr "Keine Teilparametervorlagen gefunden"
-#: templates/js/translated/part.js:1635
+#: templates/js/translated/part.js:1634
msgid "Edit Part Parameter Template"
msgstr "Teilparametervorlage bearbeiten"
-#: templates/js/translated/part.js:1647
+#: templates/js/translated/part.js:1646
msgid "Any parameters which reference this template will also be deleted"
msgstr "Alle Parameter, die diese Vorlage referenzieren, werden ebenfalls gelöscht"
-#: templates/js/translated/part.js:1655
+#: templates/js/translated/part.js:1654
msgid "Delete Part Parameter Template"
msgstr "Teilparametervorlage löschen"
-#: templates/js/translated/part.js:1689
-#: templates/js/translated/purchase_order.js:1618
+#: templates/js/translated/part.js:1688
+#: templates/js/translated/purchase_order.js:1633
msgid "No purchase orders found"
msgstr "Keine Bestellungen gefunden"
-#: templates/js/translated/part.js:1832
-#: templates/js/translated/purchase_order.js:2121
-#: templates/js/translated/return_order.js:740
-#: templates/js/translated/sales_order.js:1855
+#: templates/js/translated/part.js:1831
+#: templates/js/translated/purchase_order.js:2131
+#: templates/js/translated/return_order.js:752
+#: templates/js/translated/sales_order.js:1867
msgid "This line item is overdue"
msgstr "Diese Position ist überfällig"
-#: templates/js/translated/part.js:1877
-#: templates/js/translated/purchase_order.js:2188
+#: templates/js/translated/part.js:1876
+#: templates/js/translated/purchase_order.js:2198
msgid "Receive line item"
msgstr "Position empfangen"
-#: templates/js/translated/part.js:1944
+#: templates/js/translated/part.js:1943
msgid "Delete part relationship"
msgstr "Teile-Beziehung löschen"
-#: templates/js/translated/part.js:1966
+#: templates/js/translated/part.js:1965
msgid "Delete Part Relationship"
msgstr "Teile-Beziehung löschen"
-#: templates/js/translated/part.js:2054 templates/js/translated/part.js:2366
+#: templates/js/translated/part.js:2053 templates/js/translated/part.js:2442
msgid "No parts found"
msgstr "Keine Teile gefunden"
-#: templates/js/translated/part.js:2192
-msgid "parts"
-msgstr ""
-
-#: templates/js/translated/part.js:2276
-msgid "No category"
-msgstr "Keine Kategorie"
-
-#: templates/js/translated/part.js:2390 templates/js/translated/part.js:2611
-#: templates/js/translated/stock.js:2417
-msgid "Display as list"
-msgstr "Listenansicht"
-
-#: templates/js/translated/part.js:2406
-msgid "Display as grid"
-msgstr "Rasteransicht"
-
-#: templates/js/translated/part.js:2472
+#: templates/js/translated/part.js:2174
msgid "Set the part category for the selected parts"
msgstr "Legen Sie die Teilkategorie für die ausgewählten Teile fest"
-#: templates/js/translated/part.js:2477
+#: templates/js/translated/part.js:2179
msgid "Set Part Category"
msgstr "Teil-Kategorie auswählen"
+#: templates/js/translated/part.js:2204
+msgid "Set category"
+msgstr "Teil-Kategorie auswählen"
+
+#: templates/js/translated/part.js:2259
+msgid "parts"
+msgstr ""
+
+#: templates/js/translated/part.js:2352
+msgid "No category"
+msgstr "Keine Kategorie"
+
+#: templates/js/translated/part.js:2466 templates/js/translated/part.js:2596
+#: templates/js/translated/stock.js:2548
+msgid "Display as list"
+msgstr "Listenansicht"
+
#: templates/js/translated/part.js:2482
-msgid "Select Part Category"
-msgstr "Teil-Kategorie wählen"
+msgid "Display as grid"
+msgstr "Rasteransicht"
-#: templates/js/translated/part.js:2495
-msgid "Category is required"
-msgstr "Kategorie erforderlich"
-
-#: templates/js/translated/part.js:2595
+#: templates/js/translated/part.js:2580
msgid "No subcategories found"
msgstr ""
-#: templates/js/translated/part.js:2631 templates/js/translated/stock.js:2437
+#: templates/js/translated/part.js:2616 templates/js/translated/stock.js:2568
msgid "Display as tree"
msgstr "Baumansicht"
-#: templates/js/translated/part.js:2711
+#: templates/js/translated/part.js:2696
msgid "Load Subcategories"
msgstr "Unterkategorien laden"
-#: templates/js/translated/part.js:2727
+#: templates/js/translated/part.js:2712
msgid "Subscribed category"
msgstr "Abonnierte Kategorie"
-#: templates/js/translated/part.js:2807
+#: templates/js/translated/part.js:2792
msgid "No test templates matching query"
msgstr "Keine zur Anfrage passenden Testvorlagen"
-#: templates/js/translated/part.js:2858 templates/js/translated/stock.js:1380
+#: templates/js/translated/part.js:2843 templates/js/translated/stock.js:1379
msgid "Edit test result"
msgstr "Testergebnis bearbeiten"
-#: templates/js/translated/part.js:2859 templates/js/translated/stock.js:1381
-#: templates/js/translated/stock.js:1643
+#: templates/js/translated/part.js:2844 templates/js/translated/stock.js:1380
+#: templates/js/translated/stock.js:1642
msgid "Delete test result"
msgstr "Testergebnis löschen"
-#: templates/js/translated/part.js:2863
+#: templates/js/translated/part.js:2848
msgid "This test is defined for a parent part"
msgstr "Dieses Testergebnis ist für ein Hauptteil"
-#: templates/js/translated/part.js:2879
+#: templates/js/translated/part.js:2864
msgid "Edit Test Result Template"
msgstr "Testergebnis-Vorlage bearbeiten"
-#: templates/js/translated/part.js:2893
+#: templates/js/translated/part.js:2878
msgid "Delete Test Result Template"
msgstr "Testergebnis-Vorlage löschen"
-#: templates/js/translated/part.js:2972 templates/js/translated/part.js:2973
+#: templates/js/translated/part.js:2957 templates/js/translated/part.js:2958
msgid "No date specified"
msgstr "Kein Datum angegeben"
-#: templates/js/translated/part.js:2975
+#: templates/js/translated/part.js:2960
msgid "Specified date is in the past"
msgstr "Das angegebene Datum liegt in der Vergangenheit"
-#: templates/js/translated/part.js:2981
+#: templates/js/translated/part.js:2966
msgid "Speculative"
msgstr "Spekulativ"
-#: templates/js/translated/part.js:3031
+#: templates/js/translated/part.js:3016
msgid "No scheduling information available for this part"
msgstr "Keine Zeitplanung für dieses Teil vorhanden"
-#: templates/js/translated/part.js:3037
+#: templates/js/translated/part.js:3022
msgid "Error fetching scheduling information for this part"
msgstr "Fehler beim Abrufen der Zeitplanungsinformationen für dieses Teil"
-#: templates/js/translated/part.js:3133
+#: templates/js/translated/part.js:3118
msgid "Scheduled Stock Quantities"
msgstr "Geplante Lagermengen"
-#: templates/js/translated/part.js:3149
+#: templates/js/translated/part.js:3134
msgid "Maximum Quantity"
msgstr "Maximale Anzahl"
-#: templates/js/translated/part.js:3194
+#: templates/js/translated/part.js:3179
msgid "Minimum Stock Level"
msgstr "Minimaler Lagerbestand"
@@ -11168,234 +11297,234 @@ msgstr "Keine Variantendaten verfügbar"
msgid "Variant Part"
msgstr "Variantenteil"
-#: templates/js/translated/purchase_order.js:155
+#: templates/js/translated/purchase_order.js:166
msgid "Select purchase order to duplicate"
msgstr "Bestellung zum Duplizieren auswählen"
-#: templates/js/translated/purchase_order.js:162
+#: templates/js/translated/purchase_order.js:173
msgid "Duplicate Line Items"
msgstr "Positionen duplizieren"
-#: templates/js/translated/purchase_order.js:163
+#: templates/js/translated/purchase_order.js:174
msgid "Duplicate all line items from the selected order"
msgstr "Alle Positionen der ausgewählten Bestellung duplizieren"
-#: templates/js/translated/purchase_order.js:170
+#: templates/js/translated/purchase_order.js:181
msgid "Duplicate Extra Lines"
msgstr "Zusätzliche Zeilen duplizieren"
-#: templates/js/translated/purchase_order.js:171
+#: templates/js/translated/purchase_order.js:182
msgid "Duplicate extra line items from the selected order"
msgstr "Zusätzliche Positionen der ausgewählten Bestellung duplizieren"
-#: templates/js/translated/purchase_order.js:192
+#: templates/js/translated/purchase_order.js:203
msgid "Edit Purchase Order"
msgstr "Bestellung bearbeiten"
-#: templates/js/translated/purchase_order.js:209
+#: templates/js/translated/purchase_order.js:220
msgid "Duplication Options"
msgstr "Duplizierungsoptionen"
-#: templates/js/translated/purchase_order.js:436
+#: templates/js/translated/purchase_order.js:447
msgid "Complete Purchase Order"
msgstr "Bestellung vervollständigen"
-#: templates/js/translated/purchase_order.js:453
-#: templates/js/translated/return_order.js:195
-#: templates/js/translated/sales_order.js:485
+#: templates/js/translated/purchase_order.js:464
+#: templates/js/translated/return_order.js:207
+#: templates/js/translated/sales_order.js:497
msgid "Mark this order as complete?"
msgstr "Diese Bestellung als vollständig markieren?"
-#: templates/js/translated/purchase_order.js:459
+#: templates/js/translated/purchase_order.js:470
msgid "All line items have been received"
msgstr "Alle Einträge wurden erhalten"
-#: templates/js/translated/purchase_order.js:464
+#: templates/js/translated/purchase_order.js:475
msgid "This order has line items which have not been marked as received."
msgstr "Diese Bestellung enthält Positionen, die nicht als empfangen markiert wurden."
-#: templates/js/translated/purchase_order.js:465
-#: templates/js/translated/sales_order.js:499
+#: templates/js/translated/purchase_order.js:476
+#: templates/js/translated/sales_order.js:511
msgid "Completing this order means that the order and line items will no longer be editable."
msgstr "Fertigstellen dieser Bestellung bedeutet, dass sie und ihre Positionen nicht länger bearbeitbar sind."
-#: templates/js/translated/purchase_order.js:488
+#: templates/js/translated/purchase_order.js:499
msgid "Cancel Purchase Order"
msgstr "Bestellung abbrechen"
-#: templates/js/translated/purchase_order.js:493
+#: templates/js/translated/purchase_order.js:504
msgid "Are you sure you wish to cancel this purchase order?"
msgstr "Sind Sie sicher, dass Sie diese Bestellung abbrechen möchten?"
-#: templates/js/translated/purchase_order.js:499
+#: templates/js/translated/purchase_order.js:510
msgid "This purchase order can not be cancelled"
msgstr "Diese Bestellung kann nicht storniert werden"
-#: templates/js/translated/purchase_order.js:520
-#: templates/js/translated/return_order.js:149
+#: templates/js/translated/purchase_order.js:531
+#: templates/js/translated/return_order.js:161
msgid "After placing this order, line items will no longer be editable."
msgstr ""
-#: templates/js/translated/purchase_order.js:525
+#: templates/js/translated/purchase_order.js:536
msgid "Issue Purchase Order"
msgstr "Bestellung aufgeben"
-#: templates/js/translated/purchase_order.js:617
+#: templates/js/translated/purchase_order.js:628
msgid "At least one purchaseable part must be selected"
msgstr "Mindestens ein kaufbares Teil muss ausgewählt werden"
-#: templates/js/translated/purchase_order.js:642
+#: templates/js/translated/purchase_order.js:653
msgid "Quantity to order"
msgstr "Zu bestellende Menge"
-#: templates/js/translated/purchase_order.js:651
+#: templates/js/translated/purchase_order.js:662
msgid "New supplier part"
msgstr "Neues Zuliefererteil"
-#: templates/js/translated/purchase_order.js:669
+#: templates/js/translated/purchase_order.js:680
msgid "New purchase order"
msgstr "Neue Bestellung"
-#: templates/js/translated/purchase_order.js:701
+#: templates/js/translated/purchase_order.js:712
msgid "Add to purchase order"
msgstr "Zur Bestellung hinzufügen"
-#: templates/js/translated/purchase_order.js:845
+#: templates/js/translated/purchase_order.js:860
msgid "No matching supplier parts"
msgstr "Keine passenden Lieferantenteile"
-#: templates/js/translated/purchase_order.js:864
+#: templates/js/translated/purchase_order.js:879
msgid "No matching purchase orders"
msgstr "Keine passenden Bestellungen"
-#: templates/js/translated/purchase_order.js:1043
+#: templates/js/translated/purchase_order.js:1058
msgid "Select Line Items"
msgstr "Positionen auswählen"
-#: templates/js/translated/purchase_order.js:1044
-#: templates/js/translated/return_order.js:480
+#: templates/js/translated/purchase_order.js:1059
+#: templates/js/translated/return_order.js:492
msgid "At least one line item must be selected"
msgstr "Mindestens eine Position muss ausgewählt werden"
-#: templates/js/translated/purchase_order.js:1074
+#: templates/js/translated/purchase_order.js:1089
msgid "Received Quantity"
msgstr "Gelieferte Menge"
-#: templates/js/translated/purchase_order.js:1085
+#: templates/js/translated/purchase_order.js:1100
msgid "Quantity to receive"
msgstr "Zu erhaltende Menge"
-#: templates/js/translated/purchase_order.js:1161
+#: templates/js/translated/purchase_order.js:1176
msgid "Stock Status"
msgstr "Status"
-#: templates/js/translated/purchase_order.js:1175
+#: templates/js/translated/purchase_order.js:1190
msgid "Add barcode"
msgstr ""
-#: templates/js/translated/purchase_order.js:1176
+#: templates/js/translated/purchase_order.js:1191
msgid "Remove barcode"
msgstr ""
-#: templates/js/translated/purchase_order.js:1179
+#: templates/js/translated/purchase_order.js:1194
msgid "Specify location"
msgstr ""
-#: templates/js/translated/purchase_order.js:1187
+#: templates/js/translated/purchase_order.js:1202
msgid "Add batch code"
msgstr "Losnummer hinzufügen"
-#: templates/js/translated/purchase_order.js:1198
+#: templates/js/translated/purchase_order.js:1213
msgid "Add serial numbers"
msgstr "Seriennummern hinzufügen"
-#: templates/js/translated/purchase_order.js:1250
+#: templates/js/translated/purchase_order.js:1265
msgid "Serials"
msgstr ""
-#: templates/js/translated/purchase_order.js:1275
+#: templates/js/translated/purchase_order.js:1290
msgid "Order Code"
msgstr "Bestellnummer"
-#: templates/js/translated/purchase_order.js:1277
+#: templates/js/translated/purchase_order.js:1292
msgid "Quantity to Receive"
msgstr "Zu erhaltende Menge"
-#: templates/js/translated/purchase_order.js:1299
-#: templates/js/translated/return_order.js:545
+#: templates/js/translated/purchase_order.js:1314
+#: templates/js/translated/return_order.js:557
msgid "Confirm receipt of items"
msgstr "Empfang der Teile bestätigen"
-#: templates/js/translated/purchase_order.js:1300
+#: templates/js/translated/purchase_order.js:1315
msgid "Receive Purchase Order Items"
msgstr "Bestellpositionen erhalten"
-#: templates/js/translated/purchase_order.js:1368
+#: templates/js/translated/purchase_order.js:1383
msgid "Scan Item Barcode"
msgstr ""
-#: templates/js/translated/purchase_order.js:1369
+#: templates/js/translated/purchase_order.js:1384
msgid "Scan barcode on incoming item (must not match any existing stock items)"
msgstr ""
-#: templates/js/translated/purchase_order.js:1383
+#: templates/js/translated/purchase_order.js:1398
msgid "Invalid barcode data"
msgstr ""
-#: templates/js/translated/purchase_order.js:1645
-#: templates/js/translated/return_order.js:274
-#: templates/js/translated/sales_order.js:762
-#: templates/js/translated/sales_order.js:986
+#: templates/js/translated/purchase_order.js:1660
+#: templates/js/translated/return_order.js:286
+#: templates/js/translated/sales_order.js:774
+#: templates/js/translated/sales_order.js:998
msgid "Order is overdue"
msgstr "Bestellung überfällig"
-#: templates/js/translated/purchase_order.js:1707
-#: templates/js/translated/return_order.js:342
-#: templates/js/translated/sales_order.js:839
-#: templates/js/translated/sales_order.js:999
+#: templates/js/translated/purchase_order.js:1722
+#: templates/js/translated/return_order.js:354
+#: templates/js/translated/sales_order.js:851
+#: templates/js/translated/sales_order.js:1011
msgid "Items"
msgstr "Positionen"
-#: templates/js/translated/purchase_order.js:1806
+#: templates/js/translated/purchase_order.js:1821
msgid "All selected Line items will be deleted"
msgstr "Alle ausgewählten Positionen werden gelöscht"
-#: templates/js/translated/purchase_order.js:1824
+#: templates/js/translated/purchase_order.js:1839
msgid "Delete selected Line items?"
msgstr "Ausgewählte Positionen löschen?"
-#: templates/js/translated/purchase_order.js:1884
-#: templates/js/translated/sales_order.js:2047
+#: templates/js/translated/purchase_order.js:1894
+#: templates/js/translated/sales_order.js:2059
msgid "Duplicate Line Item"
msgstr "Position duplizieren"
-#: templates/js/translated/purchase_order.js:1899
-#: templates/js/translated/return_order.js:464
-#: templates/js/translated/return_order.js:653
-#: templates/js/translated/sales_order.js:2060
+#: templates/js/translated/purchase_order.js:1909
+#: templates/js/translated/return_order.js:476
+#: templates/js/translated/return_order.js:665
+#: templates/js/translated/sales_order.js:2072
msgid "Edit Line Item"
msgstr "Position bearbeiten"
-#: templates/js/translated/purchase_order.js:1910
-#: templates/js/translated/return_order.js:666
-#: templates/js/translated/sales_order.js:2071
+#: templates/js/translated/purchase_order.js:1920
+#: templates/js/translated/return_order.js:678
+#: templates/js/translated/sales_order.js:2083
msgid "Delete Line Item"
msgstr "Position löschen"
-#: templates/js/translated/purchase_order.js:2192
-#: templates/js/translated/sales_order.js:2001
+#: templates/js/translated/purchase_order.js:2202
+#: templates/js/translated/sales_order.js:2013
msgid "Duplicate line item"
msgstr "Position duplizieren"
-#: templates/js/translated/purchase_order.js:2193
-#: templates/js/translated/return_order.js:785
-#: templates/js/translated/sales_order.js:2002
+#: templates/js/translated/purchase_order.js:2203
+#: templates/js/translated/return_order.js:797
+#: templates/js/translated/sales_order.js:2014
msgid "Edit line item"
msgstr "Position bearbeiten"
-#: templates/js/translated/purchase_order.js:2194
-#: templates/js/translated/return_order.js:789
-#: templates/js/translated/sales_order.js:2008
+#: templates/js/translated/purchase_order.js:2204
+#: templates/js/translated/return_order.js:801
+#: templates/js/translated/sales_order.js:2020
msgid "Delete line item"
msgstr "Position löschen"
@@ -11424,941 +11553,973 @@ msgstr ""
msgid "Add Customer"
msgstr "Kunden hinzufügen"
-#: templates/js/translated/return_order.js:119
+#: templates/js/translated/return_order.js:131
msgid "Create Return Order"
msgstr ""
-#: templates/js/translated/return_order.js:134
+#: templates/js/translated/return_order.js:146
msgid "Edit Return Order"
msgstr ""
-#: templates/js/translated/return_order.js:154
+#: templates/js/translated/return_order.js:166
msgid "Issue Return Order"
msgstr ""
-#: templates/js/translated/return_order.js:171
+#: templates/js/translated/return_order.js:183
msgid "Are you sure you wish to cancel this Return Order?"
msgstr ""
-#: templates/js/translated/return_order.js:178
+#: templates/js/translated/return_order.js:190
msgid "Cancel Return Order"
msgstr ""
-#: templates/js/translated/return_order.js:203
+#: templates/js/translated/return_order.js:215
msgid "Complete Return Order"
msgstr ""
-#: templates/js/translated/return_order.js:251
+#: templates/js/translated/return_order.js:263
msgid "No return orders found"
msgstr ""
-#: templates/js/translated/return_order.js:288
-#: templates/js/translated/sales_order.js:776
+#: templates/js/translated/return_order.js:300
+#: templates/js/translated/sales_order.js:788
msgid "Invalid Customer"
msgstr "Ungültiger Kunde"
-#: templates/js/translated/return_order.js:546
+#: templates/js/translated/return_order.js:558
msgid "Receive Return Order Items"
msgstr ""
-#: templates/js/translated/return_order.js:677
-#: templates/js/translated/sales_order.js:2207
+#: templates/js/translated/return_order.js:689
+#: templates/js/translated/sales_order.js:2219
msgid "No matching line items"
msgstr "Keine passenden Positionen gefunden"
-#: templates/js/translated/return_order.js:782
+#: templates/js/translated/return_order.js:794
msgid "Mark item as received"
msgstr ""
-#: templates/js/translated/sales_order.js:146
+#: templates/js/translated/sales_order.js:158
msgid "Create Sales Order"
msgstr "Auftrag anlegen"
-#: templates/js/translated/sales_order.js:161
+#: templates/js/translated/sales_order.js:173
msgid "Edit Sales Order"
msgstr "Auftrag bearbeiten"
-#: templates/js/translated/sales_order.js:276
+#: templates/js/translated/sales_order.js:288
msgid "No stock items have been allocated to this shipment"
msgstr "Dieser Sendung wurden keine Artikel zugewiesen"
-#: templates/js/translated/sales_order.js:281
+#: templates/js/translated/sales_order.js:293
msgid "The following stock items will be shipped"
msgstr "Die folgenden Artikel werden verschickt"
-#: templates/js/translated/sales_order.js:321
+#: templates/js/translated/sales_order.js:333
msgid "Complete Shipment"
msgstr "Sendung fertigstellen"
-#: templates/js/translated/sales_order.js:345
+#: templates/js/translated/sales_order.js:357
msgid "Confirm Shipment"
msgstr "Sendung bestätigen"
-#: templates/js/translated/sales_order.js:401
+#: templates/js/translated/sales_order.js:413
msgid "No pending shipments found"
msgstr "Keine ausstehenden Sendungen gefunden"
-#: templates/js/translated/sales_order.js:405
+#: templates/js/translated/sales_order.js:417
msgid "No stock items have been allocated to pending shipments"
msgstr "Keine Lagerartikel für offene Sendungen zugewiesen"
-#: templates/js/translated/sales_order.js:415
+#: templates/js/translated/sales_order.js:427
msgid "Complete Shipments"
msgstr "Abgeschlossene Sendungen"
-#: templates/js/translated/sales_order.js:437
+#: templates/js/translated/sales_order.js:449
msgid "Skip"
msgstr "Überspringen"
-#: templates/js/translated/sales_order.js:498
+#: templates/js/translated/sales_order.js:510
msgid "This order has line items which have not been completed."
msgstr "Dieser Auftrag enthält Positionen, die noch nicht abgeschlossen sind."
-#: templates/js/translated/sales_order.js:520
+#: templates/js/translated/sales_order.js:532
msgid "Issue this Sales Order?"
msgstr ""
-#: templates/js/translated/sales_order.js:525
+#: templates/js/translated/sales_order.js:537
msgid "Issue Sales Order"
msgstr ""
-#: templates/js/translated/sales_order.js:544
+#: templates/js/translated/sales_order.js:556
msgid "Cancel Sales Order"
msgstr "Auftrag stornieren"
-#: templates/js/translated/sales_order.js:549
+#: templates/js/translated/sales_order.js:561
msgid "Cancelling this order means that the order will no longer be editable."
msgstr "Abbruch dieser Bestellung bedeutet, dass sie nicht länger bearbeitbar ist."
-#: templates/js/translated/sales_order.js:603
+#: templates/js/translated/sales_order.js:615
msgid "Create New Shipment"
msgstr "Sendung anlegen"
-#: templates/js/translated/sales_order.js:713
+#: templates/js/translated/sales_order.js:725
msgid "No sales orders found"
msgstr "Keine Aufträge gefunden"
-#: templates/js/translated/sales_order.js:896
+#: templates/js/translated/sales_order.js:908
msgid "Edit shipment"
msgstr "Sendung bearbeiten"
-#: templates/js/translated/sales_order.js:899
+#: templates/js/translated/sales_order.js:911
msgid "Complete shipment"
msgstr "Sendung fertigstellen"
-#: templates/js/translated/sales_order.js:904
+#: templates/js/translated/sales_order.js:916
msgid "Delete shipment"
msgstr "Sendung löschen"
-#: templates/js/translated/sales_order.js:921
+#: templates/js/translated/sales_order.js:933
msgid "Edit Shipment"
msgstr "Sendung bearbeiten"
-#: templates/js/translated/sales_order.js:936
+#: templates/js/translated/sales_order.js:948
msgid "Delete Shipment"
msgstr "Sendung löschen"
-#: templates/js/translated/sales_order.js:969
+#: templates/js/translated/sales_order.js:981
msgid "No matching shipments found"
msgstr "Keine passenden Sendungen gefunden"
-#: templates/js/translated/sales_order.js:994
+#: templates/js/translated/sales_order.js:1006
msgid "Shipment Reference"
msgstr "Sendungsreferenz"
-#: templates/js/translated/sales_order.js:1018
-#: templates/js/translated/sales_order.js:1515
+#: templates/js/translated/sales_order.js:1030
+#: templates/js/translated/sales_order.js:1527
msgid "Not shipped"
msgstr "Nicht versandt"
-#: templates/js/translated/sales_order.js:1036
+#: templates/js/translated/sales_order.js:1048
msgid "Tracking"
msgstr "Nachverfolgen"
-#: templates/js/translated/sales_order.js:1040
+#: templates/js/translated/sales_order.js:1052
msgid "Invoice"
msgstr "Rechnung"
-#: templates/js/translated/sales_order.js:1207
+#: templates/js/translated/sales_order.js:1219
msgid "Add Shipment"
msgstr "Sendung hinzufügen"
-#: templates/js/translated/sales_order.js:1258
+#: templates/js/translated/sales_order.js:1270
msgid "Confirm stock allocation"
msgstr "Bestandszuordnung bestätigen"
-#: templates/js/translated/sales_order.js:1259
+#: templates/js/translated/sales_order.js:1271
msgid "Allocate Stock Items to Sales Order"
msgstr "Artikel zu Kundenauftrag zuweisen"
-#: templates/js/translated/sales_order.js:1463
+#: templates/js/translated/sales_order.js:1475
msgid "No sales order allocations found"
msgstr "Keine Allokationen für Verkaufsaufträge gefunden"
-#: templates/js/translated/sales_order.js:1555
+#: templates/js/translated/sales_order.js:1567
msgid "Edit Stock Allocation"
msgstr "Bestandszuordnung bearbeiten"
-#: templates/js/translated/sales_order.js:1569
+#: templates/js/translated/sales_order.js:1581
msgid "Confirm Delete Operation"
msgstr "Löschvorgang bestätigen"
-#: templates/js/translated/sales_order.js:1570
+#: templates/js/translated/sales_order.js:1582
msgid "Delete Stock Allocation"
msgstr "Bestands-Zuordnung löschen"
-#: templates/js/translated/sales_order.js:1609
-#: templates/js/translated/sales_order.js:1696
-#: templates/js/translated/stock.js:1688
+#: templates/js/translated/sales_order.js:1621
+#: templates/js/translated/sales_order.js:1708
+#: templates/js/translated/stock.js:1687
msgid "Shipped to customer"
msgstr "an Kunde versand"
-#: templates/js/translated/sales_order.js:1617
-#: templates/js/translated/sales_order.js:1705
+#: templates/js/translated/sales_order.js:1629
+#: templates/js/translated/sales_order.js:1717
msgid "Stock location not specified"
msgstr "Lagerstandort nicht angegeben"
-#: templates/js/translated/sales_order.js:1985
+#: templates/js/translated/sales_order.js:1997
msgid "Allocate serial numbers"
msgstr "Seriennummern zuweisen"
-#: templates/js/translated/sales_order.js:1989
+#: templates/js/translated/sales_order.js:2001
msgid "Purchase stock"
msgstr "Bestand kaufen"
-#: templates/js/translated/sales_order.js:1998
-#: templates/js/translated/sales_order.js:2185
+#: templates/js/translated/sales_order.js:2010
+#: templates/js/translated/sales_order.js:2197
msgid "Calculate price"
msgstr "Preis berechnen"
-#: templates/js/translated/sales_order.js:2012
+#: templates/js/translated/sales_order.js:2024
msgid "Cannot be deleted as items have been shipped"
msgstr "Kann nicht gelöscht werden, da Artikel versandt wurden"
-#: templates/js/translated/sales_order.js:2015
+#: templates/js/translated/sales_order.js:2027
msgid "Cannot be deleted as items have been allocated"
msgstr "Kann nicht gelöscht werden, da Artikel zugewiesen sind"
-#: templates/js/translated/sales_order.js:2086
+#: templates/js/translated/sales_order.js:2098
msgid "Allocate Serial Numbers"
msgstr "Seriennummern zuweisen"
-#: templates/js/translated/sales_order.js:2193
+#: templates/js/translated/sales_order.js:2205
msgid "Update Unit Price"
msgstr "Stückpreis aktualisieren"
-#: templates/js/translated/search.js:312
+#: templates/js/translated/search.js:270
msgid "No results"
msgstr "Keine Ergebnisse"
-#: templates/js/translated/search.js:334 templates/search.html:25
+#: templates/js/translated/search.js:292 templates/search.html:25
msgid "Enter search query"
msgstr "Suchbegriff eingeben"
-#: templates/js/translated/search.js:384
+#: templates/js/translated/search.js:342
msgid "result"
msgstr ""
-#: templates/js/translated/search.js:384
+#: templates/js/translated/search.js:342
msgid "results"
msgstr ""
-#: templates/js/translated/search.js:394
+#: templates/js/translated/search.js:352
msgid "Minimize results"
msgstr "Ergebnisse minimieren"
-#: templates/js/translated/search.js:397
+#: templates/js/translated/search.js:355
msgid "Remove results"
msgstr "Ergebnisse entfernen"
-#: templates/js/translated/stock.js:98
+#: templates/js/translated/stock.js:97
msgid "Serialize Stock Item"
msgstr "Lagerartikel serialisieren"
-#: templates/js/translated/stock.js:129
+#: templates/js/translated/stock.js:128
msgid "Confirm Stock Serialization"
msgstr "Lager-Serialisierung bestätigen"
-#: templates/js/translated/stock.js:138
+#: templates/js/translated/stock.js:137
msgid "Parent stock location"
msgstr "Übergeordneter Lagerort"
-#: templates/js/translated/stock.js:173
+#: templates/js/translated/stock.js:172
msgid "Edit Stock Location"
msgstr "Lagerartikel-Ort bearbeiten"
-#: templates/js/translated/stock.js:188
+#: templates/js/translated/stock.js:187
msgid "New Stock Location"
msgstr "Neuer Lagerstandort"
-#: templates/js/translated/stock.js:190
+#: templates/js/translated/stock.js:189
msgid "Create another location after this one"
msgstr ""
-#: templates/js/translated/stock.js:191
+#: templates/js/translated/stock.js:190
msgid "Stock location created"
msgstr ""
-#: templates/js/translated/stock.js:205
+#: templates/js/translated/stock.js:204
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:212
+#: templates/js/translated/stock.js:211
msgid "Move to parent stock location"
msgstr "Zum übergeordneten Lagerbestand verschieben"
-#: templates/js/translated/stock.js:221
+#: templates/js/translated/stock.js:220
msgid "Delete Stock Location"
msgstr "Bestand-Lagerort löschen"
-#: templates/js/translated/stock.js:225
+#: templates/js/translated/stock.js:224
msgid "Action for stock items in this stock location"
msgstr "Aktion für Lagerartikel in diesem Lagerort"
-#: templates/js/translated/stock.js:230
+#: templates/js/translated/stock.js:229
msgid "Action for sub-locations"
msgstr "Aktion für Unter-Lagerorte"
-#: templates/js/translated/stock.js:284
+#: templates/js/translated/stock.js:283
msgid "This part cannot be serialized"
msgstr "Dieser Teil kann nicht serialisiert werden"
-#: templates/js/translated/stock.js:320
+#: templates/js/translated/stock.js:319
msgid "Add given quantity as packs instead of individual items"
msgstr ""
-#: templates/js/translated/stock.js:329
+#: templates/js/translated/stock.js:328
msgid "Enter initial quantity for this stock item"
msgstr "Ausgangsmenge für diesen Lagerartikel eingeben"
-#: templates/js/translated/stock.js:335
+#: templates/js/translated/stock.js:334
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:406
+#: templates/js/translated/stock.js:405
msgid "Stock item duplicated"
msgstr "Lagerartikel dupliziert"
-#: templates/js/translated/stock.js:426
+#: templates/js/translated/stock.js:425
msgid "Duplicate Stock Item"
msgstr "Bestand duplizieren"
-#: templates/js/translated/stock.js:442
+#: templates/js/translated/stock.js:441
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:447
+#: templates/js/translated/stock.js:446
msgid "Delete Stock Item"
msgstr "Lagerartikel löschen"
-#: templates/js/translated/stock.js:468
+#: templates/js/translated/stock.js:467
msgid "Edit Stock Item"
msgstr "Lagerartikel bearbeiten"
-#: templates/js/translated/stock.js:510
+#: templates/js/translated/stock.js:509
msgid "Create another item after this one"
msgstr ""
-#: templates/js/translated/stock.js:522
+#: templates/js/translated/stock.js:521
msgid "Created new stock item"
msgstr "Neuer Lagerartikel erstellt"
-#: templates/js/translated/stock.js:535
+#: templates/js/translated/stock.js:534
msgid "Created multiple stock items"
msgstr "Mehrere Lagerartikel erstellt"
-#: templates/js/translated/stock.js:560
+#: templates/js/translated/stock.js:559
msgid "Find Serial Number"
msgstr "Seriennummer finden"
-#: templates/js/translated/stock.js:564 templates/js/translated/stock.js:565
+#: templates/js/translated/stock.js:563 templates/js/translated/stock.js:564
msgid "Enter serial number"
msgstr "Seriennummer eingeben"
-#: templates/js/translated/stock.js:581
+#: templates/js/translated/stock.js:580
msgid "Enter a serial number"
msgstr "Eine Seriennummer eingeben"
-#: templates/js/translated/stock.js:601
+#: templates/js/translated/stock.js:600
msgid "No matching serial number"
msgstr "Keine passende Seriennummer"
-#: templates/js/translated/stock.js:610
+#: templates/js/translated/stock.js:609
msgid "More than one matching result found"
msgstr "Mehrere Ergebnisse gefunden"
-#: templates/js/translated/stock.js:718
+#: templates/js/translated/stock.js:717
msgid "Confirm stock assignment"
msgstr "Bestand Zuweisung bestätigen"
-#: templates/js/translated/stock.js:719
+#: templates/js/translated/stock.js:718
msgid "Assign Stock to Customer"
msgstr "Einem Kunden zuordnen"
-#: templates/js/translated/stock.js:796
+#: templates/js/translated/stock.js:795
msgid "Warning: Merge operation cannot be reversed"
msgstr "Achtung: Das Zusammenführen kann nicht rückgängig gemacht werden"
-#: templates/js/translated/stock.js:797
+#: templates/js/translated/stock.js:796
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:799
+#: templates/js/translated/stock.js:798
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:800
+#: templates/js/translated/stock.js:799
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:891
+#: templates/js/translated/stock.js:890
msgid "Confirm stock item merge"
msgstr "Zusammenführung der Artikel bestätigen"
-#: templates/js/translated/stock.js:892
+#: templates/js/translated/stock.js:891
msgid "Merge Stock Items"
msgstr "Artikel zusammenführen"
-#: templates/js/translated/stock.js:987
+#: templates/js/translated/stock.js:986
msgid "Transfer Stock"
msgstr "Bestand verschieben"
-#: templates/js/translated/stock.js:988
+#: templates/js/translated/stock.js:987
msgid "Move"
msgstr "Verschieben"
-#: templates/js/translated/stock.js:994
+#: templates/js/translated/stock.js:993
msgid "Count Stock"
msgstr "Bestand zählen"
-#: templates/js/translated/stock.js:995
+#: templates/js/translated/stock.js:994
msgid "Count"
msgstr "Anzahl"
-#: templates/js/translated/stock.js:999
+#: templates/js/translated/stock.js:998
msgid "Remove Stock"
msgstr "Bestand entfernen"
-#: templates/js/translated/stock.js:1000
+#: templates/js/translated/stock.js:999
msgid "Take"
msgstr "Entfernen"
-#: templates/js/translated/stock.js:1004
+#: templates/js/translated/stock.js:1003
msgid "Add Stock"
msgstr "Bestand hinzufügen"
-#: templates/js/translated/stock.js:1005 users/models.py:243
+#: templates/js/translated/stock.js:1004 users/models.py:249
msgid "Add"
msgstr "Hinzufügen"
-#: templates/js/translated/stock.js:1009
+#: templates/js/translated/stock.js:1008
msgid "Delete Stock"
msgstr "Bestand löschen"
-#: templates/js/translated/stock.js:1106
+#: templates/js/translated/stock.js:1105
msgid "Quantity cannot be adjusted for serialized stock"
msgstr "Menge von serialisiertem Bestand kann nicht bearbeitet werden"
-#: templates/js/translated/stock.js:1106
+#: templates/js/translated/stock.js:1105
msgid "Specify stock quantity"
msgstr "Bestandsanzahl angeben"
-#: templates/js/translated/stock.js:1140
+#: templates/js/translated/stock.js:1139 templates/js/translated/stock.js:3151
msgid "Select Stock Items"
msgstr "Lagerartikel auswählen"
-#: templates/js/translated/stock.js:1141
-msgid "You must select at least one available stock item"
-msgstr "Sie müssen mindestens einen Lagerartikel auswählen"
+#: templates/js/translated/stock.js:1140
+msgid "Select at least one available stock item"
+msgstr ""
-#: templates/js/translated/stock.js:1168
+#: templates/js/translated/stock.js:1167
msgid "Confirm stock adjustment"
msgstr "Bestands-Anpassung bestätigen"
-#: templates/js/translated/stock.js:1304
+#: templates/js/translated/stock.js:1303
msgid "PASS"
msgstr "ERFOLGREICH"
-#: templates/js/translated/stock.js:1306
+#: templates/js/translated/stock.js:1305
msgid "FAIL"
msgstr "FEHLGESCHLAGEN"
-#: templates/js/translated/stock.js:1311
+#: templates/js/translated/stock.js:1310
msgid "NO RESULT"
msgstr "KEIN ERGEBNIS"
-#: templates/js/translated/stock.js:1373
+#: templates/js/translated/stock.js:1372
msgid "Pass test"
msgstr "Test bestanden"
-#: templates/js/translated/stock.js:1376
+#: templates/js/translated/stock.js:1375
msgid "Add test result"
msgstr "Testergebnis hinzufügen"
-#: templates/js/translated/stock.js:1400
+#: templates/js/translated/stock.js:1399
msgid "No test results found"
msgstr "Keine Testergebnisse gefunden"
-#: templates/js/translated/stock.js:1464
+#: templates/js/translated/stock.js:1463
msgid "Test Date"
msgstr "Testdatum"
-#: templates/js/translated/stock.js:1626
+#: templates/js/translated/stock.js:1625
msgid "Edit Test Result"
msgstr "Testergebnis bearbeiten"
-#: templates/js/translated/stock.js:1648
+#: templates/js/translated/stock.js:1647
msgid "Delete Test Result"
msgstr "Testergebnis löschen"
-#: templates/js/translated/stock.js:1680
+#: templates/js/translated/stock.js:1679
msgid "In production"
msgstr "In Arbeit"
-#: templates/js/translated/stock.js:1684
+#: templates/js/translated/stock.js:1683
msgid "Installed in Stock Item"
msgstr "In Lagerartikel installiert"
-#: templates/js/translated/stock.js:1692
+#: templates/js/translated/stock.js:1691
msgid "Assigned to Sales Order"
msgstr "Auftrag zugewiesen"
-#: templates/js/translated/stock.js:1698
+#: templates/js/translated/stock.js:1697
msgid "No stock location set"
msgstr "Kein Lagerort gesetzt"
-#: templates/js/translated/stock.js:1746
+#: templates/js/translated/stock.js:1753
+msgid "Change stock status"
+msgstr ""
+
+#: templates/js/translated/stock.js:1762
+msgid "Merge stock"
+msgstr "Bestand zusammenführen"
+
+#: templates/js/translated/stock.js:1811
+msgid "Delete stock"
+msgstr "Bestand löschen"
+
+#: templates/js/translated/stock.js:1866
msgid "stock items"
msgstr ""
-#: templates/js/translated/stock.js:1850
+#: templates/js/translated/stock.js:1871
+msgid "Scan to location"
+msgstr ""
+
+#: templates/js/translated/stock.js:1882
+msgid "Stock Actions"
+msgstr ""
+
+#: templates/js/translated/stock.js:1929
+msgid "Load installed items"
+msgstr ""
+
+#: templates/js/translated/stock.js:2007
msgid "Stock item is in production"
msgstr "Lagerartikel wird produziert"
-#: templates/js/translated/stock.js:1855
+#: templates/js/translated/stock.js:2012
msgid "Stock item assigned to sales order"
msgstr "Lagerartikel wurde Auftrag zugewiesen"
-#: templates/js/translated/stock.js:1858
+#: templates/js/translated/stock.js:2015
msgid "Stock item assigned to customer"
msgstr "Lagerartikel wurde Kunden zugewiesen"
-#: templates/js/translated/stock.js:1861
+#: templates/js/translated/stock.js:2018
msgid "Serialized stock item has been allocated"
msgstr "Serialisierter Lagerartikel wurde zugewiesen"
-#: templates/js/translated/stock.js:1863
+#: templates/js/translated/stock.js:2020
msgid "Stock item has been fully allocated"
msgstr "Lagerartikel wurde vollständig zugewiesen"
-#: templates/js/translated/stock.js:1865
+#: templates/js/translated/stock.js:2022
msgid "Stock item has been partially allocated"
msgstr "Lagerartikel wurde teilweise zugewiesen"
-#: templates/js/translated/stock.js:1868
+#: templates/js/translated/stock.js:2025
msgid "Stock item has been installed in another item"
msgstr "Lagerartikel in anderem Element verbaut"
-#: templates/js/translated/stock.js:1870
+#: templates/js/translated/stock.js:2027
msgid "Stock item has been consumed by a build order"
msgstr ""
-#: templates/js/translated/stock.js:1874
+#: templates/js/translated/stock.js:2031
msgid "Stock item has expired"
msgstr "Lagerartikel ist abgelaufen"
-#: templates/js/translated/stock.js:1876
+#: templates/js/translated/stock.js:2033
msgid "Stock item will expire soon"
msgstr "Lagerartikel läuft demnächst ab"
-#: templates/js/translated/stock.js:1881
+#: templates/js/translated/stock.js:2038
msgid "Stock item has been rejected"
msgstr "Lagerartikel abgewiesen"
-#: templates/js/translated/stock.js:1883
+#: templates/js/translated/stock.js:2040
msgid "Stock item is lost"
msgstr "Lagerartikel verloren"
-#: templates/js/translated/stock.js:1885
+#: templates/js/translated/stock.js:2042
msgid "Stock item is destroyed"
msgstr "Lagerartikel zerstört"
-#: templates/js/translated/stock.js:1889
-#: templates/js/translated/table_filters.js:296
+#: templates/js/translated/stock.js:2046
+#: templates/js/translated/table_filters.js:302
msgid "Depleted"
msgstr "gelöscht"
-#: templates/js/translated/stock.js:2031
+#: templates/js/translated/stock.js:2188
msgid "Supplier part not specified"
msgstr "Zuliefererteil nicht angegeben"
-#: templates/js/translated/stock.js:2078
+#: templates/js/translated/stock.js:2235
msgid "Stock Value"
msgstr "Bestandswert"
-#: templates/js/translated/stock.js:2170
+#: templates/js/translated/stock.js:2358
msgid "No stock items matching query"
msgstr "Keine zur Anfrage passenden Lagerartikel"
-#: templates/js/translated/stock.js:2319
+#: templates/js/translated/stock.js:2450
msgid "stock locations"
msgstr ""
-#: templates/js/translated/stock.js:2476
+#: templates/js/translated/stock.js:2607
msgid "Load Subloactions"
msgstr "Untergeordnete Lagerorte laden"
-#: templates/js/translated/stock.js:2583
+#: templates/js/translated/stock.js:2714
msgid "Details"
msgstr "Details"
-#: templates/js/translated/stock.js:2587
+#: templates/js/translated/stock.js:2718
msgid "No changes"
msgstr ""
-#: templates/js/translated/stock.js:2599
+#: templates/js/translated/stock.js:2730
msgid "Part information unavailable"
msgstr "Artikelinformationen nicht verfügbar"
-#: templates/js/translated/stock.js:2621
+#: templates/js/translated/stock.js:2752
msgid "Location no longer exists"
msgstr "Standort nicht mehr vorhanden"
-#: templates/js/translated/stock.js:2638
+#: templates/js/translated/stock.js:2769
msgid "Build order no longer exists"
msgstr ""
-#: templates/js/translated/stock.js:2653
+#: templates/js/translated/stock.js:2784
msgid "Purchase order no longer exists"
msgstr "Bestellung existiert nicht mehr"
-#: templates/js/translated/stock.js:2670
+#: templates/js/translated/stock.js:2801
msgid "Sales Order no longer exists"
msgstr ""
-#: templates/js/translated/stock.js:2687
+#: templates/js/translated/stock.js:2818
msgid "Return Order no longer exists"
msgstr ""
-#: templates/js/translated/stock.js:2706
+#: templates/js/translated/stock.js:2837
msgid "Customer no longer exists"
msgstr "Kunde existiert nicht mehr"
-#: templates/js/translated/stock.js:2724
+#: templates/js/translated/stock.js:2855
msgid "Stock item no longer exists"
msgstr "Lagerartikel existiert nicht mehr"
-#: templates/js/translated/stock.js:2742
+#: templates/js/translated/stock.js:2873
msgid "Added"
msgstr "Hinzugefügt"
-#: templates/js/translated/stock.js:2750
+#: templates/js/translated/stock.js:2881
msgid "Removed"
msgstr "Entfernt"
-#: templates/js/translated/stock.js:2826
+#: templates/js/translated/stock.js:2953
msgid "No installed items"
msgstr "Keine installierten Elemente"
-#: templates/js/translated/stock.js:2876 templates/js/translated/stock.js:2911
+#: templates/js/translated/stock.js:3003 templates/js/translated/stock.js:3038
msgid "Uninstall Stock Item"
msgstr "Lagerartikel entfernen"
-#: templates/js/translated/stock.js:2929
+#: templates/js/translated/stock.js:3056
msgid "Select stock item to uninstall"
msgstr "Zu deinstallierende Lagerartikel auswählen"
-#: templates/js/translated/stock.js:2950
+#: templates/js/translated/stock.js:3077
msgid "Install another stock item into this item"
msgstr "Einen weiteren Lagerartikel in dieses Teil installiert"
-#: templates/js/translated/stock.js:2951
+#: templates/js/translated/stock.js:3078
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:2953
+#: templates/js/translated/stock.js:3080
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:2954
+#: templates/js/translated/stock.js:3081
msgid "The Stock Item is currently available in stock"
msgstr "Dieser Lagerartikel ist aktuell vorhanden"
-#: templates/js/translated/stock.js:2955
+#: templates/js/translated/stock.js:3082
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:2956
+#: templates/js/translated/stock.js:3083
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:2969
+#: templates/js/translated/stock.js:3096
msgid "Select part to install"
msgstr "Teil zur Installation auswählen"
+#: templates/js/translated/stock.js:3152
+msgid "Select one or more stock items"
+msgstr ""
+
+#: templates/js/translated/stock.js:3165
+msgid "Selected stock items"
+msgstr ""
+
+#: templates/js/translated/stock.js:3169
+msgid "Change Stock Status"
+msgstr ""
+
#: templates/js/translated/table_filters.js:50
msgid "Has project code"
msgstr ""
-#: templates/js/translated/table_filters.js:59
-#: templates/js/translated/table_filters.js:518
-#: templates/js/translated/table_filters.js:530
-#: templates/js/translated/table_filters.js:571
+#: templates/js/translated/table_filters.js:65
+#: templates/js/translated/table_filters.js:540
+#: templates/js/translated/table_filters.js:552
+#: templates/js/translated/table_filters.js:593
msgid "Order status"
msgstr "Bestellstatus"
-#: templates/js/translated/table_filters.js:64
-#: templates/js/translated/table_filters.js:535
-#: templates/js/translated/table_filters.js:561
-#: templates/js/translated/table_filters.js:576
+#: templates/js/translated/table_filters.js:70
+#: templates/js/translated/table_filters.js:557
+#: templates/js/translated/table_filters.js:583
+#: templates/js/translated/table_filters.js:598
msgid "Outstanding"
msgstr "ausstehend"
-#: templates/js/translated/table_filters.js:72
-#: templates/js/translated/table_filters.js:458
-#: templates/js/translated/table_filters.js:543
-#: templates/js/translated/table_filters.js:584
+#: templates/js/translated/table_filters.js:78
+#: templates/js/translated/table_filters.js:464
+#: templates/js/translated/table_filters.js:565
+#: templates/js/translated/table_filters.js:606
msgid "Assigned to me"
msgstr "Mir zugewiesen"
-#: templates/js/translated/table_filters.js:128
+#: templates/js/translated/table_filters.js:134
msgid "Trackable Part"
msgstr "Nachverfolgbares Teil"
-#: templates/js/translated/table_filters.js:132
+#: templates/js/translated/table_filters.js:138
msgid "Assembled Part"
msgstr "Baugruppe"
-#: templates/js/translated/table_filters.js:136
+#: templates/js/translated/table_filters.js:142
msgid "Has Available Stock"
msgstr "Hat verfügbaren Bestand"
-#: templates/js/translated/table_filters.js:152
+#: templates/js/translated/table_filters.js:158
msgid "Allow Variant Stock"
msgstr "Bestand an Varianten zulassen"
-#: templates/js/translated/table_filters.js:164
-#: templates/js/translated/table_filters.js:692
+#: templates/js/translated/table_filters.js:170
+#: templates/js/translated/table_filters.js:714
msgid "Has Pricing"
msgstr "Hat Preis"
-#: templates/js/translated/table_filters.js:204
-#: templates/js/translated/table_filters.js:291
+#: templates/js/translated/table_filters.js:210
+#: templates/js/translated/table_filters.js:297
msgid "Include sublocations"
msgstr "Unter-Lagerorte einschließen"
-#: templates/js/translated/table_filters.js:205
+#: templates/js/translated/table_filters.js:211
msgid "Include locations"
msgstr "Lagerorte einschließen"
-#: templates/js/translated/table_filters.js:224
-#: templates/js/translated/table_filters.js:225
-#: templates/js/translated/table_filters.js:624
+#: templates/js/translated/table_filters.js:230
+#: templates/js/translated/table_filters.js:231
+#: templates/js/translated/table_filters.js:646
msgid "Include subcategories"
msgstr "Unterkategorien einschließen"
-#: templates/js/translated/table_filters.js:233
-#: templates/js/translated/table_filters.js:672
+#: templates/js/translated/table_filters.js:239
+#: templates/js/translated/table_filters.js:694
msgid "Subscribed"
msgstr "Abonniert"
-#: templates/js/translated/table_filters.js:244
-#: templates/js/translated/table_filters.js:326
+#: templates/js/translated/table_filters.js:250
+#: templates/js/translated/table_filters.js:332
msgid "Is Serialized"
msgstr "Hat Seriennummer"
-#: templates/js/translated/table_filters.js:247
-#: templates/js/translated/table_filters.js:333
+#: templates/js/translated/table_filters.js:253
+#: templates/js/translated/table_filters.js:339
msgid "Serial number GTE"
msgstr "Seriennummer >="
-#: templates/js/translated/table_filters.js:248
-#: templates/js/translated/table_filters.js:334
+#: templates/js/translated/table_filters.js:254
+#: templates/js/translated/table_filters.js:340
msgid "Serial number greater than or equal to"
msgstr "Seriennummer größer oder gleich"
-#: templates/js/translated/table_filters.js:251
-#: templates/js/translated/table_filters.js:337
+#: templates/js/translated/table_filters.js:257
+#: templates/js/translated/table_filters.js:343
msgid "Serial number LTE"
msgstr "Seriennummer <="
-#: templates/js/translated/table_filters.js:252
-#: templates/js/translated/table_filters.js:338
+#: templates/js/translated/table_filters.js:258
+#: templates/js/translated/table_filters.js:344
msgid "Serial number less than or equal to"
msgstr "Seriennummern kleiner oder gleich"
-#: templates/js/translated/table_filters.js:255
-#: templates/js/translated/table_filters.js:256
-#: templates/js/translated/table_filters.js:329
-#: templates/js/translated/table_filters.js:330
+#: templates/js/translated/table_filters.js:261
+#: templates/js/translated/table_filters.js:262
+#: templates/js/translated/table_filters.js:335
+#: templates/js/translated/table_filters.js:336
msgid "Serial number"
msgstr "Seriennummer"
-#: templates/js/translated/table_filters.js:260
-#: templates/js/translated/table_filters.js:351
+#: templates/js/translated/table_filters.js:266
+#: templates/js/translated/table_filters.js:357
msgid "Batch code"
msgstr "Losnummer"
-#: templates/js/translated/table_filters.js:271
-#: templates/js/translated/table_filters.js:613
+#: templates/js/translated/table_filters.js:277
+#: templates/js/translated/table_filters.js:635
msgid "Active parts"
msgstr "Aktive Teile"
-#: templates/js/translated/table_filters.js:272
+#: templates/js/translated/table_filters.js:278
msgid "Show stock for active parts"
msgstr "Bestand aktiver Teile anzeigen"
-#: templates/js/translated/table_filters.js:277
+#: templates/js/translated/table_filters.js:283
msgid "Part is an assembly"
msgstr "Teil ist eine Baugruppe"
-#: templates/js/translated/table_filters.js:281
+#: templates/js/translated/table_filters.js:287
msgid "Is allocated"
msgstr "Ist zugeordnet"
-#: templates/js/translated/table_filters.js:282
+#: templates/js/translated/table_filters.js:288
msgid "Item has been allocated"
msgstr "Teil wurde zugeordnet"
-#: templates/js/translated/table_filters.js:287
+#: templates/js/translated/table_filters.js:293
msgid "Stock is available for use"
msgstr "Lagerartikel ist zur Verwendung verfügbar"
-#: templates/js/translated/table_filters.js:292
+#: templates/js/translated/table_filters.js:298
msgid "Include stock in sublocations"
msgstr "Bestand in Unter-Lagerorten einschließen"
-#: templates/js/translated/table_filters.js:297
+#: templates/js/translated/table_filters.js:303
msgid "Show stock items which are depleted"
msgstr "Zeige aufgebrauchte Lagerartikel"
-#: templates/js/translated/table_filters.js:302
+#: templates/js/translated/table_filters.js:308
msgid "Show items which are in stock"
msgstr "Zeige Objekte welche im Lager sind"
-#: templates/js/translated/table_filters.js:306
+#: templates/js/translated/table_filters.js:312
msgid "In Production"
msgstr "In Arbeit"
-#: templates/js/translated/table_filters.js:307
+#: templates/js/translated/table_filters.js:313
msgid "Show items which are in production"
msgstr "Elemente, die in Produktion sind, anzeigen"
-#: templates/js/translated/table_filters.js:311
+#: templates/js/translated/table_filters.js:317
msgid "Include Variants"
msgstr "Varianten einschließen"
-#: templates/js/translated/table_filters.js:312
+#: templates/js/translated/table_filters.js:318
msgid "Include stock items for variant parts"
msgstr "Lagerartikel für Teil-Varianten einschließen"
-#: templates/js/translated/table_filters.js:316
+#: templates/js/translated/table_filters.js:322
msgid "Installed"
msgstr "Installiert"
-#: templates/js/translated/table_filters.js:317
+#: templates/js/translated/table_filters.js:323
msgid "Show stock items which are installed in another item"
msgstr "Lagerartikel, die in anderen Elementen verbaut sind, anzeigen"
-#: templates/js/translated/table_filters.js:322
+#: templates/js/translated/table_filters.js:328
msgid "Show items which have been assigned to a customer"
msgstr "zeige zu Kunden zugeordnete Einträge"
-#: templates/js/translated/table_filters.js:342
-#: templates/js/translated/table_filters.js:343
+#: templates/js/translated/table_filters.js:348
+#: templates/js/translated/table_filters.js:349
msgid "Stock status"
msgstr "Status"
-#: templates/js/translated/table_filters.js:346
+#: templates/js/translated/table_filters.js:352
msgid "Has batch code"
msgstr "Hat Batch-Code"
-#: templates/js/translated/table_filters.js:354
-msgid "Tracked"
-msgstr "Nachverfolgt"
-
-#: templates/js/translated/table_filters.js:355
+#: templates/js/translated/table_filters.js:361
msgid "Stock item is tracked by either batch code or serial number"
msgstr "Lagerbestand wird entweder per Batch-Code oder Seriennummer verfolgt"
-#: templates/js/translated/table_filters.js:360
+#: templates/js/translated/table_filters.js:366
msgid "Has purchase price"
msgstr "Hat Einkaufspreis"
-#: templates/js/translated/table_filters.js:361
+#: templates/js/translated/table_filters.js:367
msgid "Show stock items which have a purchase price set"
msgstr "Bestand mit Einkaufspreis anzeigen"
-#: templates/js/translated/table_filters.js:365
+#: templates/js/translated/table_filters.js:371
msgid "Expiry Date before"
msgstr "Ablaufdatum vor"
-#: templates/js/translated/table_filters.js:369
+#: templates/js/translated/table_filters.js:375
msgid "Expiry Date after"
msgstr "Ablaufdatum nach"
-#: templates/js/translated/table_filters.js:382
+#: templates/js/translated/table_filters.js:388
msgid "Show stock items which have expired"
msgstr "Zeige abgelaufene Lagerartikel"
-#: templates/js/translated/table_filters.js:388
+#: templates/js/translated/table_filters.js:394
msgid "Show stock which is close to expiring"
msgstr "Bestand, der bald ablaufen, anzeigen"
-#: templates/js/translated/table_filters.js:402
+#: templates/js/translated/table_filters.js:408
msgid "Test Passed"
msgstr "Test bestanden"
-#: templates/js/translated/table_filters.js:406
+#: templates/js/translated/table_filters.js:412
msgid "Include Installed Items"
msgstr "Installierte Elemente einschließen"
-#: templates/js/translated/table_filters.js:445
+#: templates/js/translated/table_filters.js:451
msgid "Build status"
msgstr "Bauauftrags-Status"
-#: templates/js/translated/table_filters.js:625
+#: templates/js/translated/table_filters.js:647
msgid "Include parts in subcategories"
msgstr "Teile in Unterkategorien einschließen"
-#: templates/js/translated/table_filters.js:630
+#: templates/js/translated/table_filters.js:652
msgid "Show active parts"
msgstr "Aktive Teile anzeigen"
-#: templates/js/translated/table_filters.js:638
+#: templates/js/translated/table_filters.js:660
msgid "Available stock"
msgstr "Verfügbarer Lagerbestand"
-#: templates/js/translated/table_filters.js:646
-#: templates/js/translated/table_filters.js:742
+#: templates/js/translated/table_filters.js:668
+#: templates/js/translated/table_filters.js:764
msgid "Has Units"
msgstr ""
-#: templates/js/translated/table_filters.js:647
+#: templates/js/translated/table_filters.js:669
msgid "Part has defined units"
msgstr ""
-#: templates/js/translated/table_filters.js:651
+#: templates/js/translated/table_filters.js:673
msgid "Has IPN"
msgstr "Hat IPN"
-#: templates/js/translated/table_filters.js:652
+#: templates/js/translated/table_filters.js:674
msgid "Part has internal part number"
msgstr "Teil hat Interne Teilenummer"
-#: templates/js/translated/table_filters.js:656
+#: templates/js/translated/table_filters.js:678
msgid "In stock"
msgstr "Auf Lager"
-#: templates/js/translated/table_filters.js:664
+#: templates/js/translated/table_filters.js:686
msgid "Purchasable"
msgstr "Käuflich"
-#: templates/js/translated/table_filters.js:676
+#: templates/js/translated/table_filters.js:698
msgid "Has stocktake entries"
msgstr "Hat Inventureinträge"
-#: templates/js/translated/table_filters.js:738
+#: templates/js/translated/table_filters.js:760
msgid "Has Choices"
msgstr ""
@@ -12390,51 +12551,51 @@ msgstr "Tabellendaten exportieren"
msgid "Select File Format"
msgstr "Dateiformat wählen"
-#: templates/js/translated/tables.js:561
+#: templates/js/translated/tables.js:537
msgid "Loading data"
msgstr "Lade Daten"
-#: templates/js/translated/tables.js:564
+#: templates/js/translated/tables.js:540
msgid "rows per page"
msgstr "Zeilen pro Seite"
-#: templates/js/translated/tables.js:569
+#: templates/js/translated/tables.js:545
msgid "Showing all rows"
msgstr "Alle Zeilen anzeigen"
-#: templates/js/translated/tables.js:571
+#: templates/js/translated/tables.js:547
msgid "Showing"
msgstr "zeige"
-#: templates/js/translated/tables.js:571
+#: templates/js/translated/tables.js:547
msgid "to"
msgstr "bis"
-#: templates/js/translated/tables.js:571
+#: templates/js/translated/tables.js:547
msgid "of"
msgstr "von"
-#: templates/js/translated/tables.js:571
+#: templates/js/translated/tables.js:547
msgid "rows"
msgstr "Zeilen"
-#: templates/js/translated/tables.js:578
+#: templates/js/translated/tables.js:554
msgid "No matching results"
msgstr "Keine passenden Ergebnisse gefunden"
-#: templates/js/translated/tables.js:581
+#: templates/js/translated/tables.js:557
msgid "Hide/Show pagination"
msgstr "Zeige/Verstecke Pagination"
-#: templates/js/translated/tables.js:587
+#: templates/js/translated/tables.js:563
msgid "Toggle"
msgstr "umschalten"
-#: templates/js/translated/tables.js:590
+#: templates/js/translated/tables.js:566
msgid "Columns"
msgstr "Spalten"
-#: templates/js/translated/tables.js:593
+#: templates/js/translated/tables.js:569
msgid "All"
msgstr "Alle"
@@ -12617,50 +12778,6 @@ msgstr "E-Mail-Einstellungen"
msgid "Email settings not configured"
msgstr "E-Mail-Einstellungen nicht konfiguriert"
-#: templates/stock_table.html:17
-msgid "Barcode Actions"
-msgstr "Barcode Aktionen"
-
-#: templates/stock_table.html:28
-msgid "Stock Options"
-msgstr "Bestands-Einstellungen "
-
-#: templates/stock_table.html:33
-msgid "Add to selected stock items"
-msgstr "Zu ausgewählten Lagerartikeln hinzufügen"
-
-#: templates/stock_table.html:34
-msgid "Remove from selected stock items"
-msgstr "Von ausgewählten Lagerartikeln entfernen"
-
-#: templates/stock_table.html:35
-msgid "Stocktake selected stock items"
-msgstr "Inventur für gewählte Lagerartikel"
-
-#: templates/stock_table.html:36
-msgid "Move selected stock items"
-msgstr "Ausgewählte Lagerartikel verschieben"
-
-#: templates/stock_table.html:37
-msgid "Merge selected stock items"
-msgstr "Ausgewählte Artikel zusammenführen"
-
-#: templates/stock_table.html:37
-msgid "Merge stock"
-msgstr "Bestand zusammenführen"
-
-#: templates/stock_table.html:38
-msgid "Order selected items"
-msgstr "Ausgewählte Positionen bestellen"
-
-#: templates/stock_table.html:42
-msgid "Delete selected items"
-msgstr "Ausgewählte Positionen löschen"
-
-#: templates/stock_table.html:42
-msgid "Delete stock"
-msgstr "Bestand löschen"
-
#: templates/yesnolabel.html:4
msgid "Yes"
msgstr "Ja"
@@ -12693,35 +12810,35 @@ msgstr "Berechtigungen"
msgid "Important dates"
msgstr "wichtige Daten"
-#: users/models.py:230
+#: users/models.py:236
msgid "Permission set"
msgstr "Berechtigung geändert"
-#: users/models.py:238
+#: users/models.py:244
msgid "Group"
msgstr "Gruppe"
-#: users/models.py:241
+#: users/models.py:247
msgid "View"
msgstr "Ansicht"
-#: users/models.py:241
+#: users/models.py:247
msgid "Permission to view items"
msgstr "Berechtigung Einträge anzuzeigen"
-#: users/models.py:243
+#: users/models.py:249
msgid "Permission to add items"
msgstr "Berechtigung Einträge zu erstellen"
-#: users/models.py:245
+#: users/models.py:251
msgid "Change"
msgstr "Ändern"
-#: users/models.py:245
+#: users/models.py:251
msgid "Permissions to edit items"
msgstr "Berechtigungen Einträge zu ändern"
-#: users/models.py:247
+#: users/models.py:253
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 8f0e0179f1..9e4b6109c0 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: 2023-06-09 00:32+0000\n"
-"PO-Revision-Date: 2023-06-09 10:27\n"
+"POT-Creation-Date: 2023-06-20 07:01+0000\n"
+"PO-Revision-Date: 2023-06-20 07:06\n"
"Last-Translator: \n"
"Language-Team: Greek\n"
"Language: el_GR\n"
@@ -49,26 +49,26 @@ msgstr "Μπορείτε να βρείτε λεπτομέρειες σφάλμα
msgid "Enter date"
msgstr "Εισάγετε ημερομηνία"
-#: InvenTree/fields.py:206 InvenTree/models.py:766 build/serializers.py:427
-#: build/serializers.py:506 build/templates/build/sidebar.html:23
-#: company/models.py:597 company/templates/company/sidebar.html:35
-#: order/models.py:1089 order/templates/order/po_sidebar.html:11
+#: InvenTree/fields.py:206 InvenTree/models.py:766 build/serializers.py:435
+#: build/serializers.py:514 build/templates/build/sidebar.html:21
+#: company/models.py:746 company/templates/company/sidebar.html:37
+#: order/models.py:1102 order/templates/order/po_sidebar.html:11
#: order/templates/order/return_order_sidebar.html:9
#: order/templates/order/so_sidebar.html:17 part/admin.py:41
-#: part/models.py:3005 part/templates/part/part_sidebar.html:63
+#: part/models.py:3039 part/templates/part/part_sidebar.html:63
#: report/templates/report/inventree_build_order_base.html:172
#: stock/admin.py:121 stock/models.py:2160 stock/models.py:2268
-#: stock/serializers.py:342 stock/serializers.py:475 stock/serializers.py:556
-#: stock/serializers.py:839 stock/serializers.py:938 stock/serializers.py:1070
-#: stock/templates/stock/stock_sidebar.html:25
-#: templates/js/translated/barcode.js:143 templates/js/translated/bom.js:1224
-#: templates/js/translated/company.js:1294 templates/js/translated/order.js:347
-#: templates/js/translated/part.js:1054
-#: templates/js/translated/purchase_order.js:2168
-#: templates/js/translated/return_order.js:760
-#: templates/js/translated/sales_order.js:1055
-#: templates/js/translated/sales_order.js:1959
-#: templates/js/translated/stock.js:1460 templates/js/translated/stock.js:2164
+#: stock/serializers.py:408 stock/serializers.py:542 stock/serializers.py:623
+#: stock/serializers.py:681 stock/serializers.py:956 stock/serializers.py:1055
+#: stock/serializers.py:1187 stock/templates/stock/stock_sidebar.html:25
+#: templates/js/translated/barcode.js:143 templates/js/translated/bom.js:1244
+#: templates/js/translated/company.js:1715 templates/js/translated/order.js:347
+#: templates/js/translated/part.js:1053
+#: templates/js/translated/purchase_order.js:2178
+#: templates/js/translated/return_order.js:772
+#: templates/js/translated/sales_order.js:1067
+#: templates/js/translated/sales_order.js:1971
+#: templates/js/translated/stock.js:1459 templates/js/translated/stock.js:2321
msgid "Notes"
msgstr "Σημειώσεις"
@@ -81,47 +81,51 @@ msgstr "Η τιμή '{name}' δεν εμφανίζεται σε μορφή μο
msgid "Provided value does not match required pattern: "
msgstr "Η παρεχόμενη τιμή δεν ταιριάζει με το απαιτούμενο απαραραίητη μοτίβο: "
-#: InvenTree/forms.py:145
+#: InvenTree/forms.py:147
msgid "Enter password"
msgstr "Εισάγετε κωδικό"
-#: InvenTree/forms.py:146
+#: InvenTree/forms.py:148
msgid "Enter new password"
msgstr "Εισάγετε νέο κωδικό πρόσβασης"
-#: InvenTree/forms.py:155
+#: InvenTree/forms.py:157
msgid "Confirm password"
msgstr "Επιβεβαιώστε τον κωδικό πρόσβασης"
-#: InvenTree/forms.py:156
+#: InvenTree/forms.py:158
msgid "Confirm new password"
msgstr "Επιβεβαιώστε τον νέο κωδικό πρόσβασης"
-#: InvenTree/forms.py:160
+#: InvenTree/forms.py:162
msgid "Old password"
msgstr "Παλιός κωδικός πρόσβασης"
-#: InvenTree/forms.py:179
+#: InvenTree/forms.py:181
msgid "Email (again)"
msgstr "E-mail (ξανά)"
-#: InvenTree/forms.py:183
+#: InvenTree/forms.py:185
msgid "Email address confirmation"
msgstr "Επιβεβαίωση διεύθυνσης email"
-#: InvenTree/forms.py:204
+#: InvenTree/forms.py:206
msgid "You must type the same email each time."
msgstr "Πρέπει να πληκτρολογήσετε το ίδιο email κάθε φορά."
-#: InvenTree/forms.py:230 InvenTree/forms.py:236
+#: InvenTree/forms.py:237 InvenTree/forms.py:243
msgid "The provided primary email address is not valid."
msgstr "Η παρεχόμενη κύρια διεύθυνση ηλεκτρονικού ταχυδρομείου δεν είναι έγκυρη."
-#: InvenTree/forms.py:242
+#: InvenTree/forms.py:249
msgid "The provided email domain is not approved."
msgstr "Ο παρεχόμενος τομέας ηλεκτρονικού ταχυδρομείου δεν έχει εγκριθεί."
-#: InvenTree/helpers.py:462 order/models.py:442 order/models.py:611
+#: InvenTree/forms.py:345
+msgid "Registration is disabled."
+msgstr ""
+
+#: InvenTree/helpers.py:462 order/models.py:455 order/models.py:624
msgid "Invalid quantity provided"
msgstr "Μη έγκυρη ποσότητα"
@@ -239,7 +243,7 @@ msgstr "Λείπει ο εξωτερικός σύνδεσμος"
#: InvenTree/models.py:486 stock/models.py:2262
#: templates/js/translated/attachment.js:119
-#: templates/js/translated/attachment.js:306
+#: templates/js/translated/attachment.js:316
msgid "Attachment"
msgstr "Συνημμένο"
@@ -247,29 +251,30 @@ msgstr "Συνημμένο"
msgid "Select file to attach"
msgstr "Επιλέξτε αρχείο για επισύναψη"
-#: InvenTree/models.py:493 common/models.py:2695 company/models.py:132
-#: company/models.py:306 company/models.py:584 order/models.py:236
-#: order/models.py:1093 order/models.py:1453 part/admin.py:39
-#: part/models.py:901 part/templates/part/part_scheduling.html:11
+#: InvenTree/models.py:493 common/models.py:2681 company/models.py:128
+#: company/models.py:381 company/models.py:455 company/models.py:733
+#: order/models.py:240 order/models.py:1106 order/models.py:1466
+#: part/admin.py:39 part/models.py:902
+#: part/templates/part/part_scheduling.html:11
#: report/templates/report/inventree_build_order_base.html:164
-#: stock/admin.py:120 templates/js/translated/company.js:977
-#: templates/js/translated/company.js:1283 templates/js/translated/order.js:351
-#: templates/js/translated/part.js:2316
-#: templates/js/translated/purchase_order.js:2008
-#: templates/js/translated/purchase_order.js:2172
-#: templates/js/translated/return_order.js:764
-#: templates/js/translated/sales_order.js:1044
-#: templates/js/translated/sales_order.js:1964
+#: stock/admin.py:120 templates/js/translated/company.js:1350
+#: templates/js/translated/company.js:1704 templates/js/translated/order.js:351
+#: templates/js/translated/part.js:2392
+#: templates/js/translated/purchase_order.js:2018
+#: templates/js/translated/purchase_order.js:2182
+#: templates/js/translated/return_order.js:776
+#: templates/js/translated/sales_order.js:1056
+#: templates/js/translated/sales_order.js:1976
msgid "Link"
msgstr "Σύνδεσμος"
-#: InvenTree/models.py:494 build/models.py:291 part/models.py:902
+#: InvenTree/models.py:494 build/models.py:295 part/models.py:903
#: stock/models.py:735
msgid "Link to external URL"
msgstr "Σύνδεσμος προς εξωτερική διεύθυνση URL"
#: InvenTree/models.py:497 templates/js/translated/attachment.js:120
-#: templates/js/translated/attachment.js:321
+#: templates/js/translated/attachment.js:331
msgid "Comment"
msgstr "Σχόλιο"
@@ -277,13 +282,13 @@ msgstr "Σχόλιο"
msgid "File comment"
msgstr "Σχόλιο αρχείου"
-#: InvenTree/models.py:503 InvenTree/models.py:504 common/models.py:2154
-#: common/models.py:2155 common/models.py:2368 common/models.py:2369
-#: common/models.py:2625 common/models.py:2626 part/models.py:3013
-#: part/models.py:3101 part/models.py:3180 part/models.py:3200
-#: plugin/models.py:217 plugin/models.py:218
+#: InvenTree/models.py:503 InvenTree/models.py:504 common/models.py:2140
+#: common/models.py:2141 common/models.py:2354 common/models.py:2355
+#: common/models.py:2611 common/models.py:2612 part/models.py:3047
+#: part/models.py:3135 part/models.py:3214 part/models.py:3234
+#: plugin/models.py:218 plugin/models.py:219
#: report/templates/report/inventree_test_report_base.html:105
-#: templates/js/translated/stock.js:2773
+#: templates/js/translated/stock.js:2904
msgid "User"
msgstr "Χρήστης"
@@ -324,53 +329,54 @@ msgstr ""
msgid "Invalid choice"
msgstr "Μη έγκυρη επιλογή"
-#: InvenTree/models.py:648 InvenTree/models.py:649 common/models.py:2354
-#: company/models.py:390 label/models.py:103 part/models.py:847
-#: part/models.py:3400 plugin/models.py:41 report/models.py:160
+#: InvenTree/models.py:648 InvenTree/models.py:649 common/models.py:2340
+#: company/models.py:539 label/models.py:111 part/models.py:848
+#: part/models.py:3434 plugin/models.py:42 report/models.py:160
#: templates/InvenTree/settings/mixins/urls.html:13
#: templates/InvenTree/settings/notifications.html:17
-#: templates/InvenTree/settings/plugin.html:80
+#: templates/InvenTree/settings/plugin.html:74
#: templates/InvenTree/settings/plugin_settings.html:22
-#: templates/js/translated/company.js:658
-#: templates/js/translated/company.js:706
-#: templates/js/translated/company.js:871
-#: templates/js/translated/company.js:1071 templates/js/translated/part.js:1160
-#: templates/js/translated/part.js:1447 templates/js/translated/part.js:1583
-#: templates/js/translated/part.js:2699 templates/js/translated/stock.js:2464
+#: templates/js/translated/company.js:665
+#: templates/js/translated/company.js:713
+#: templates/js/translated/company.js:940
+#: templates/js/translated/company.js:1196
+#: templates/js/translated/company.js:1444 templates/js/translated/part.js:1159
+#: templates/js/translated/part.js:1446 templates/js/translated/part.js:1582
+#: templates/js/translated/part.js:2684 templates/js/translated/stock.js:2595
msgid "Name"
msgstr "Όνομα"
-#: InvenTree/models.py:655 build/models.py:164
+#: InvenTree/models.py:655 build/models.py:168
#: build/templates/build/detail.html:24 common/models.py:111
-#: company/models.py:312 company/models.py:590
+#: company/models.py:461 company/models.py:739
#: company/templates/company/company_base.html:72
#: company/templates/company/manufacturer_part.html:75
-#: company/templates/company/supplier_part.html:108 label/models.py:110
-#: order/models.py:232 order/models.py:1117 part/admin.py:194 part/admin.py:276
-#: part/models.py:869 part/models.py:3416 part/templates/part/category.html:81
+#: company/templates/company/supplier_part.html:108 label/models.py:118
+#: order/models.py:232 order/models.py:1130 part/admin.py:194 part/admin.py:276
+#: part/models.py:870 part/models.py:3450 part/templates/part/category.html:81
#: part/templates/part/part_base.html:172
#: part/templates/part/part_scheduling.html:12 report/models.py:173
-#: report/models.py:587 report/models.py:631
+#: report/models.py:589 report/models.py:633
#: report/templates/report/inventree_build_order_base.html:117
#: stock/admin.py:41 stock/templates/stock/location.html:123
#: templates/InvenTree/settings/notifications.html:19
#: templates/InvenTree/settings/plugin_settings.html:27
#: templates/InvenTree/settings/settings_staff_js.html:75
-#: templates/js/translated/bom.js:632 templates/js/translated/bom.js:933
-#: templates/js/translated/build.js:2857 templates/js/translated/company.js:510
-#: templates/js/translated/company.js:988
-#: templates/js/translated/company.js:1251 templates/js/translated/order.js:298
-#: templates/js/translated/part.js:1212 templates/js/translated/part.js:1456
-#: templates/js/translated/part.js:1594 templates/js/translated/part.js:1933
-#: templates/js/translated/part.js:2247 templates/js/translated/part.js:2735
-#: templates/js/translated/part.js:2826
-#: templates/js/translated/purchase_order.js:1666
-#: templates/js/translated/purchase_order.js:1812
-#: templates/js/translated/purchase_order.js:1990
-#: templates/js/translated/return_order.js:302
-#: templates/js/translated/sales_order.js:790
-#: templates/js/translated/stock.js:1439 templates/js/translated/stock.js:1817
-#: templates/js/translated/stock.js:2496 templates/js/translated/stock.js:2568
+#: templates/js/translated/bom.js:633 templates/js/translated/bom.js:951
+#: templates/js/translated/build.js:2062 templates/js/translated/company.js:517
+#: templates/js/translated/company.js:1361
+#: templates/js/translated/company.js:1672 templates/js/translated/index.js:114
+#: templates/js/translated/order.js:298 templates/js/translated/part.js:1211
+#: templates/js/translated/part.js:1455 templates/js/translated/part.js:1593
+#: templates/js/translated/part.js:1932 templates/js/translated/part.js:2323
+#: templates/js/translated/part.js:2720 templates/js/translated/part.js:2811
+#: templates/js/translated/purchase_order.js:1681
+#: templates/js/translated/purchase_order.js:1827
+#: templates/js/translated/purchase_order.js:2000
+#: templates/js/translated/return_order.js:314
+#: templates/js/translated/sales_order.js:802
+#: templates/js/translated/stock.js:1438 templates/js/translated/stock.js:1974
+#: templates/js/translated/stock.js:2627 templates/js/translated/stock.js:2699
msgid "Description"
msgstr "Περιγραφή"
@@ -383,7 +389,7 @@ msgid "parent"
msgstr "γονέας"
#: InvenTree/models.py:671 InvenTree/models.py:672
-#: templates/js/translated/part.js:2744 templates/js/translated/stock.js:2505
+#: templates/js/translated/part.js:2729 templates/js/translated/stock.js:2636
msgid "Path"
msgstr "Μονοπάτι"
@@ -419,12 +425,12 @@ msgstr "Σφάλμα διακομιστή"
msgid "An error has been logged by the server."
msgstr "Ένα σφάλμα έχει καταγραφεί από το διακομιστή."
-#: InvenTree/serializers.py:60 part/models.py:3897
+#: InvenTree/serializers.py:60 part/models.py:3941
msgid "Must be a valid number"
msgstr "Πρέπει να είναι αριθμός"
-#: InvenTree/serializers.py:90 company/models.py:154
-#: company/templates/company/company_base.html:107 part/models.py:2852
+#: InvenTree/serializers.py:90 company/models.py:150
+#: company/templates/company/company_base.html:107 part/models.py:2886
#: templates/InvenTree/settings/settings_staff_js.html:44
#: templates/currency_data.html:5
msgid "Currency"
@@ -497,130 +503,130 @@ msgstr "Διεύθυνση URL του αρχείου απομακρυσμένη
msgid "Downloading images from remote URL is not enabled"
msgstr "Η λήψη εικόνων από απομακρυσμένο URL δεν είναι ενεργοποιημένη"
-#: InvenTree/settings.py:714
+#: InvenTree/settings.py:741
msgid "Czech"
msgstr "Τσέχικα"
-#: InvenTree/settings.py:715
+#: InvenTree/settings.py:742
msgid "Danish"
msgstr ""
-#: InvenTree/settings.py:716
+#: InvenTree/settings.py:743
msgid "German"
msgstr "Γερμανικά"
-#: InvenTree/settings.py:717
+#: InvenTree/settings.py:744
msgid "Greek"
msgstr "Ελληνικά"
-#: InvenTree/settings.py:718
+#: InvenTree/settings.py:745
msgid "English"
msgstr "Αγγλικά"
-#: InvenTree/settings.py:719
+#: InvenTree/settings.py:746
msgid "Spanish"
msgstr "Ισπανικά"
-#: InvenTree/settings.py:720
+#: InvenTree/settings.py:747
msgid "Spanish (Mexican)"
msgstr "Ισπανικά (Μεξικό)"
-#: InvenTree/settings.py:721
+#: InvenTree/settings.py:748
msgid "Farsi / Persian"
msgstr "Φαρσί / Περσικά"
-#: InvenTree/settings.py:722
+#: InvenTree/settings.py:749
msgid "Finnish"
msgstr ""
-#: InvenTree/settings.py:723
+#: InvenTree/settings.py:750
msgid "French"
msgstr "Γαλλικά"
-#: InvenTree/settings.py:724
+#: InvenTree/settings.py:751
msgid "Hebrew"
msgstr "Εβραϊκά"
-#: InvenTree/settings.py:725
+#: InvenTree/settings.py:752
msgid "Hungarian"
msgstr "Ούγγρικα"
-#: InvenTree/settings.py:726
+#: InvenTree/settings.py:753
msgid "Italian"
msgstr "Ιταλικά"
-#: InvenTree/settings.py:727
+#: InvenTree/settings.py:754
msgid "Japanese"
msgstr "Ιαπωνικά"
-#: InvenTree/settings.py:728
+#: InvenTree/settings.py:755
msgid "Korean"
msgstr "Κορεάτικα"
-#: InvenTree/settings.py:729
+#: InvenTree/settings.py:756
msgid "Dutch"
msgstr "Dutch"
-#: InvenTree/settings.py:730
+#: InvenTree/settings.py:757
msgid "Norwegian"
msgstr "Νορβηγικά"
-#: InvenTree/settings.py:731
+#: InvenTree/settings.py:758
msgid "Polish"
msgstr "Πολωνικά"
-#: InvenTree/settings.py:732
+#: InvenTree/settings.py:759
msgid "Portuguese"
msgstr "Πορτογαλικά"
-#: InvenTree/settings.py:733
+#: InvenTree/settings.py:760
msgid "Portuguese (Brazilian)"
msgstr "Πορτογαλικά (Βραζιλίας)"
-#: InvenTree/settings.py:734
+#: InvenTree/settings.py:761
msgid "Russian"
msgstr "Ρωσικά"
-#: InvenTree/settings.py:735
+#: InvenTree/settings.py:762
msgid "Slovenian"
msgstr ""
-#: InvenTree/settings.py:736
+#: InvenTree/settings.py:763
msgid "Swedish"
msgstr "Σουηδικά"
-#: InvenTree/settings.py:737
+#: InvenTree/settings.py:764
msgid "Thai"
msgstr "Ταϊλανδέζικα"
-#: InvenTree/settings.py:738
+#: InvenTree/settings.py:765
msgid "Turkish"
msgstr "Τούρκικα"
-#: InvenTree/settings.py:739
+#: InvenTree/settings.py:766
msgid "Vietnamese"
msgstr "Βιετναμέζικα"
-#: InvenTree/settings.py:740
+#: InvenTree/settings.py:767
msgid "Chinese"
msgstr "Κινέζικα"
-#: InvenTree/status.py:61 part/serializers.py:878
+#: InvenTree/status.py:68 part/serializers.py:940
msgid "Background worker check failed"
msgstr "Ο έλεγχος εργασίας στο παρασκήνιο απέτυχε"
-#: InvenTree/status.py:65
+#: InvenTree/status.py:72
msgid "Email backend not configured"
msgstr "Δεν έχει ρυθμιστεί διεύθυνση ηλεκτρονικού ταχυδρομείου"
-#: InvenTree/status.py:68
+#: InvenTree/status.py:75
msgid "InvenTree system health checks failed"
msgstr "Ο έλεγχος συστήματος για το Inventree απέτυχε"
#: InvenTree/status_codes.py:12 InvenTree/status_codes.py:40
#: InvenTree/status_codes.py:148 InvenTree/status_codes.py:167
#: InvenTree/status_codes.py:188 generic/states/tests.py:16
-#: templates/js/translated/table_filters.js:511
+#: templates/js/translated/table_filters.js:533
msgid "Pending"
msgstr "Σε εκκρεμότητα"
@@ -630,7 +636,7 @@ msgstr "Τοποθετήθηκε"
#: InvenTree/status_codes.py:14 InvenTree/status_codes.py:151
#: InvenTree/status_codes.py:172 generic/states/tests.py:18
-#: order/templates/order/order_base.html:162
+#: order/templates/order/order_base.html:158
#: order/templates/order/sales_order_base.html:162
msgid "Complete"
msgstr "Ολοκληρώθηκε"
@@ -654,10 +660,10 @@ msgstr "Επιστράφηκε"
msgid "In Progress"
msgstr ""
-#: InvenTree/status_codes.py:42 order/models.py:1332
-#: templates/js/translated/sales_order.js:1509
-#: templates/js/translated/sales_order.js:1630
-#: templates/js/translated/sales_order.js:1934
+#: InvenTree/status_codes.py:42 order/models.py:1345
+#: templates/js/translated/sales_order.js:1521
+#: templates/js/translated/sales_order.js:1642
+#: templates/js/translated/sales_order.js:1946
msgid "Shipped"
msgstr "Αποστάλθηκε"
@@ -689,7 +695,7 @@ msgstr "Σε Καραντίνα"
msgid "Legacy stock tracking entry"
msgstr "Καταχώρηση παλαιού αποθέματος"
-#: InvenTree/status_codes.py:93 templates/js/translated/stock.js:511
+#: InvenTree/status_codes.py:93 templates/js/translated/stock.js:510
msgid "Stock item created"
msgstr "Το αντικείμενο αποθεμάτων δημιουργήθηκε"
@@ -745,7 +751,7 @@ msgstr "Έγινε διαχωρισμός από το γονεϊκό αρχεί
msgid "Split child item"
msgstr "Διαχωρίστηκε θυγατρικό στοιχείο"
-#: InvenTree/status_codes.py:120 templates/js/translated/stock.js:2243
+#: InvenTree/status_codes.py:120 templates/js/translated/stock.js:1769
msgid "Merged stock items"
msgstr "Έγινε συγχώνευση αποθεμάτων"
@@ -765,7 +771,7 @@ msgstr "Η έξοδος της σειράς κατασκευής ολοκληρ
msgid "Build order output rejected"
msgstr ""
-#: InvenTree/status_codes.py:129 templates/js/translated/stock.js:1676
+#: InvenTree/status_codes.py:129 templates/js/translated/stock.js:1675
msgid "Consumed by build order"
msgstr "Κατανάλωση με εντολή κατασκευής"
@@ -781,7 +787,7 @@ msgstr ""
msgid "Returned against Return Order"
msgstr ""
-#: InvenTree/status_codes.py:141 templates/js/translated/table_filters.js:321
+#: InvenTree/status_codes.py:141 templates/js/translated/table_filters.js:327
msgid "Sent to customer"
msgstr "Απεστάλη στον πελάτη"
@@ -849,83 +855,111 @@ msgstr "Τα πεδία κωδικού πρόσβασης πρέπει να τα
msgid "Wrong password provided"
msgstr "Δόθηκε λάθος κωδικός πρόσβασης"
-#: InvenTree/views.py:651 templates/navbar.html:157
+#: InvenTree/views.py:653 templates/navbar.html:157
msgid "System Information"
msgstr "Πληροφορίες συστήματος"
-#: InvenTree/views.py:658 templates/navbar.html:168
+#: InvenTree/views.py:660 templates/navbar.html:168
msgid "About InvenTree"
msgstr "Σχετικά με το InvenTree"
-#: build/api.py:222
+#: build/api.py:242
msgid "Build must be cancelled before it can be deleted"
msgstr "Η έκδοση πρέπει να ακυρωθεί πριν διαγραφεί"
-#: build/models.py:69 build/templates/build/build_base.html:9
+#: build/api.py:286 part/models.py:3833 templates/js/translated/bom.js:985
+#: templates/js/translated/bom.js:1025 templates/js/translated/build.js:2449
+#: templates/js/translated/table_filters.js:166
+#: templates/js/translated/table_filters.js:518
+msgid "Consumable"
+msgstr ""
+
+#: build/api.py:287 part/models.py:3827 part/templates/part/upload_bom.html:58
+#: templates/js/translated/bom.js:989 templates/js/translated/bom.js:1016
+#: templates/js/translated/build.js:2458
+#: templates/js/translated/table_filters.js:162
+#: templates/js/translated/table_filters.js:191
+#: templates/js/translated/table_filters.js:522
+msgid "Optional"
+msgstr ""
+
+#: build/api.py:288 templates/js/translated/table_filters.js:360
+#: templates/js/translated/table_filters.js:514
+msgid "Tracked"
+msgstr ""
+
+#: build/api.py:290 part/admin.py:64 templates/js/translated/build.js:1670
+#: templates/js/translated/build.js:2549
+#: templates/js/translated/sales_order.js:1918
+#: templates/js/translated/table_filters.js:506
+msgid "Allocated"
+msgstr ""
+
+#: build/models.py:73 build/templates/build/build_base.html:9
#: build/templates/build/build_base.html:27
#: report/templates/report/inventree_build_order_base.html:105
#: templates/email/build_order_completed.html:16
#: templates/email/overdue_build_order.html:15
-#: templates/js/translated/build.js:945 templates/js/translated/stock.js:2629
+#: templates/js/translated/build.js:953 templates/js/translated/stock.js:2760
msgid "Build Order"
msgstr "Σειρά Κατασκευής"
-#: build/models.py:70 build/templates/build/build_base.html:13
+#: build/models.py:74 build/templates/build/build_base.html:13
#: build/templates/build/index.html:8 build/templates/build/index.html:12
-#: order/templates/order/sales_order_detail.html:119
+#: order/templates/order/sales_order_detail.html:111
#: order/templates/order/so_sidebar.html:13
-#: part/templates/part/part_sidebar.html:22 templates/InvenTree/index.html:244
+#: part/templates/part/part_sidebar.html:22 templates/InvenTree/index.html:196
#: templates/InvenTree/search.html:141
#: templates/InvenTree/settings/sidebar.html:53
-#: templates/js/translated/search.js:228 users/models.py:42
+#: templates/js/translated/search.js:186 users/models.py:42
msgid "Build Orders"
msgstr "Δημιουργία Παραγγελιών"
-#: build/models.py:111
+#: build/models.py:115
msgid "Invalid choice for parent build"
msgstr "Μη έγκυρη επιλογή για γονική κατασκευή"
-#: build/models.py:155
+#: build/models.py:159
msgid "Build Order Reference"
msgstr "Αναφορά Παραγγελίας Κατασκευής"
-#: build/models.py:156 order/models.py:359 order/models.py:765
-#: order/models.py:1087 order/models.py:1724 part/admin.py:278
-#: part/models.py:3798 part/templates/part/upload_bom.html:54
+#: build/models.py:160 order/models.py:372 order/models.py:778
+#: order/models.py:1100 order/models.py:1737 part/admin.py:278
+#: part/models.py:3842 part/templates/part/upload_bom.html:54
#: report/templates/report/inventree_bill_of_materials_report.html:139
#: report/templates/report/inventree_po_report_base.html:28
#: report/templates/report/inventree_return_order_report_base.html:26
#: report/templates/report/inventree_so_report_base.html:28
-#: templates/js/translated/bom.js:769 templates/js/translated/bom.js:943
-#: templates/js/translated/build.js:2098 templates/js/translated/order.js:291
+#: templates/js/translated/bom.js:770 templates/js/translated/bom.js:961
+#: templates/js/translated/build.js:2441 templates/js/translated/order.js:291
#: templates/js/translated/pricing.js:386
-#: templates/js/translated/purchase_order.js:2033
-#: templates/js/translated/return_order.js:713
-#: templates/js/translated/sales_order.js:1798
+#: templates/js/translated/purchase_order.js:2043
+#: templates/js/translated/return_order.js:725
+#: templates/js/translated/sales_order.js:1810
msgid "Reference"
msgstr "Αναφορά"
-#: build/models.py:167
+#: build/models.py:171
msgid "Brief description of the build (optional)"
msgstr ""
-#: build/models.py:175 build/templates/build/build_base.html:183
+#: build/models.py:179 build/templates/build/build_base.html:184
#: build/templates/build/detail.html:87
msgid "Parent Build"
msgstr "Γονική Κατασκευή"
-#: build/models.py:176
+#: build/models.py:180
msgid "BuildOrder to which this build is allocated"
msgstr "BuildOrder στην οποία έχει δοθεί αυτή η κατασκευή"
-#: build/models.py:181 build/templates/build/build_base.html:98
-#: build/templates/build/detail.html:29 company/models.py:775
-#: order/models.py:1195 order/models.py:1311 order/models.py:1312
-#: part/models.py:391 part/models.py:2865 part/models.py:2979
-#: part/models.py:3119 part/models.py:3138 part/models.py:3157
-#: part/models.py:3178 part/models.py:3270 part/models.py:3555
-#: part/models.py:3663 part/models.py:3763 part/models.py:4077
-#: part/serializers.py:842 part/serializers.py:1245
+#: build/models.py:185 build/templates/build/build_base.html:98
+#: build/templates/build/detail.html:29 company/models.py:924
+#: order/models.py:1208 order/models.py:1324 order/models.py:1325
+#: part/models.py:392 part/models.py:2899 part/models.py:3013
+#: part/models.py:3153 part/models.py:3172 part/models.py:3191
+#: part/models.py:3212 part/models.py:3304 part/models.py:3589
+#: part/models.py:3712 part/models.py:3807 part/models.py:4121
+#: part/serializers.py:904 part/serializers.py:1307
#: part/templates/part/part_app_base.html:8
#: part/templates/part/part_pricing.html:12
#: part/templates/part/upload_bom.html:52
@@ -935,266 +969,229 @@ msgstr "BuildOrder στην οποία έχει δοθεί αυτή η κατα
#: report/templates/report/inventree_po_report_base.html:27
#: report/templates/report/inventree_return_order_report_base.html:24
#: report/templates/report/inventree_so_report_base.html:27
-#: stock/serializers.py:156 stock/serializers.py:509
+#: stock/serializers.py:205 stock/serializers.py:576
#: templates/InvenTree/search.html:82
#: templates/email/build_order_completed.html:17
#: templates/email/build_order_required_stock.html:17
#: templates/email/low_stock_notification.html:15
#: templates/email/overdue_build_order.html:16
-#: templates/js/translated/barcode.js:529 templates/js/translated/bom.js:631
-#: templates/js/translated/bom.js:768 templates/js/translated/bom.js:887
-#: templates/js/translated/build.js:1403 templates/js/translated/build.js:1965
-#: templates/js/translated/build.js:2464 templates/js/translated/build.js:2868
-#: templates/js/translated/company.js:337
-#: templates/js/translated/company.js:822
-#: templates/js/translated/company.js:929
-#: templates/js/translated/company.js:1169 templates/js/translated/part.js:1918
-#: templates/js/translated/part.js:1990 templates/js/translated/part.js:2216
-#: templates/js/translated/pricing.js:369
-#: templates/js/translated/purchase_order.js:746
-#: templates/js/translated/purchase_order.js:1274
-#: templates/js/translated/purchase_order.js:1811
-#: templates/js/translated/purchase_order.js:1975
-#: templates/js/translated/return_order.js:527
-#: templates/js/translated/return_order.js:694
-#: templates/js/translated/sales_order.js:285
-#: templates/js/translated/sales_order.js:1185
-#: templates/js/translated/sales_order.js:1584
-#: templates/js/translated/sales_order.js:1782
-#: templates/js/translated/stock.js:643 templates/js/translated/stock.js:809
-#: templates/js/translated/stock.js:1021 templates/js/translated/stock.js:1773
-#: templates/js/translated/stock.js:2594 templates/js/translated/stock.js:2831
-#: templates/js/translated/stock.js:2968
+#: templates/js/translated/barcode.js:529 templates/js/translated/bom.js:632
+#: templates/js/translated/bom.js:769 templates/js/translated/bom.js:905
+#: templates/js/translated/build.js:1289 templates/js/translated/build.js:1669
+#: templates/js/translated/build.js:2085 templates/js/translated/build.js:2261
+#: templates/js/translated/company.js:347
+#: templates/js/translated/company.js:1147
+#: templates/js/translated/company.js:1302
+#: templates/js/translated/company.js:1590 templates/js/translated/index.js:104
+#: templates/js/translated/part.js:1917 templates/js/translated/part.js:1989
+#: templates/js/translated/part.js:2292 templates/js/translated/pricing.js:369
+#: templates/js/translated/purchase_order.js:757
+#: templates/js/translated/purchase_order.js:1289
+#: templates/js/translated/purchase_order.js:1826
+#: templates/js/translated/purchase_order.js:1985
+#: templates/js/translated/return_order.js:539
+#: templates/js/translated/return_order.js:706
+#: templates/js/translated/sales_order.js:297
+#: templates/js/translated/sales_order.js:1197
+#: templates/js/translated/sales_order.js:1596
+#: templates/js/translated/sales_order.js:1794
+#: templates/js/translated/stock.js:642 templates/js/translated/stock.js:808
+#: templates/js/translated/stock.js:1020 templates/js/translated/stock.js:1913
+#: templates/js/translated/stock.js:2725 templates/js/translated/stock.js:2958
+#: templates/js/translated/stock.js:3095
msgid "Part"
msgstr "Εξάρτημα"
-#: build/models.py:189
+#: build/models.py:193
msgid "Select part to build"
msgstr "Επιλέξτε τμήμα για κατασκευή"
-#: build/models.py:194
+#: build/models.py:198
msgid "Sales Order Reference"
msgstr "Κωδικός Παραγγελίας Πωλήσεων"
-#: build/models.py:198
+#: build/models.py:202
msgid "SalesOrder to which this build is allocated"
msgstr "SalesOrder στην οποία έχει διατεθεί αυτό το build"
-#: build/models.py:203 build/serializers.py:942
-#: templates/js/translated/build.js:2452
-#: templates/js/translated/sales_order.js:1173
+#: build/models.py:207 build/serializers.py:946
+#: templates/js/translated/build.js:1657
+#: templates/js/translated/sales_order.js:1185
msgid "Source Location"
msgstr "Τοποθεσία Προέλευσης"
-#: build/models.py:207
+#: build/models.py:211
msgid "Select location to take stock from for this build (leave blank to take from any stock location)"
msgstr "Επιλέξτε τοποθεσία από την οποία θα γίνει απόθεμα, για αυτή την κατασκευή (αφήστε κενό για να πάρετε από οποιαδήποτε θέση αποθήκευσης)"
-#: build/models.py:212
+#: build/models.py:216
msgid "Destination Location"
msgstr "Τοποθεσία Προορισμού"
-#: build/models.py:216
+#: build/models.py:220
msgid "Select location where the completed items will be stored"
msgstr "Επιλέξτε την τοποθεσία όπου θα αποθηκευτούν τα ολοκληρωμένα στοιχεία"
-#: build/models.py:220
+#: build/models.py:224
msgid "Build Quantity"
msgstr "Ποσότητα Κατασκευής"
-#: build/models.py:223
+#: build/models.py:227
msgid "Number of stock items to build"
msgstr "Αριθμός αντικειμένων για κατασκευή"
-#: build/models.py:227
+#: build/models.py:231
msgid "Completed items"
msgstr "Ολοκληρωμένα αντικείμενα"
-#: build/models.py:229
+#: build/models.py:233
msgid "Number of stock items which have been completed"
msgstr "Αριθμός αντικειμένων αποθέματος που έχουν ολοκληρωθεί"
-#: build/models.py:233
+#: build/models.py:237
msgid "Build Status"
msgstr "Κατάσταση Κατασκευής"
-#: build/models.py:237
+#: build/models.py:241
msgid "Build status code"
msgstr "Κωδικός κατάστασης κατασκευής"
-#: build/models.py:246 build/serializers.py:269 order/serializers.py:506
-#: stock/models.py:739 templates/js/translated/purchase_order.js:1099
+#: build/models.py:250 build/serializers.py:277 order/serializers.py:512
+#: stock/models.py:739 templates/js/translated/purchase_order.js:1114
msgid "Batch Code"
msgstr "Κωδικός Παρτίδας"
-#: build/models.py:250 build/serializers.py:270
+#: build/models.py:254 build/serializers.py:278
msgid "Batch code for this build output"
msgstr "Κωδικός παρτίδας για αυτήν την κατασκευή"
-#: build/models.py:253 order/models.py:244 part/models.py:1038
+#: build/models.py:257 order/models.py:248 part/models.py:1039
#: part/templates/part/part_base.html:312
-#: templates/js/translated/return_order.js:327
-#: templates/js/translated/sales_order.js:815
+#: templates/js/translated/return_order.js:339
+#: templates/js/translated/sales_order.js:827
msgid "Creation Date"
msgstr "Ημερομηνία Δημιουργίας"
-#: build/models.py:257
+#: build/models.py:261
msgid "Target completion date"
msgstr "Ημερομηνία ολοκλήρωσης στόχου"
-#: build/models.py:258
+#: build/models.py:262
msgid "Target date for build completion. Build will be overdue after this date."
msgstr "Ημερομηνία ολοκλήρωσης της κατασκευής. Η κατασκευή θα καθυστερήσει μετά από αυτή την ημερομηνία."
-#: build/models.py:261 order/models.py:409 order/models.py:1767
-#: templates/js/translated/build.js:2953
+#: build/models.py:265 order/models.py:422 order/models.py:1780
+#: templates/js/translated/build.js:2170
msgid "Completion Date"
msgstr "Ημερομηνία ολοκλήρωσης"
-#: build/models.py:267
+#: build/models.py:271
msgid "completed by"
msgstr "ολοκληρώθηκε από"
-#: build/models.py:275 templates/js/translated/build.js:2913
+#: build/models.py:279 templates/js/translated/build.js:2130
msgid "Issued by"
msgstr "Εκδόθηκε από"
-#: build/models.py:276
+#: build/models.py:280
msgid "User who issued this build order"
msgstr "Χρήστης που εξέδωσε αυτήν την παραγγελία κατασκευής"
-#: build/models.py:284 build/templates/build/build_base.html:204
-#: build/templates/build/detail.html:122 order/models.py:258
-#: order/templates/order/order_base.html:214
-#: order/templates/order/return_order_base.html:182
-#: order/templates/order/sales_order_base.html:222 part/models.py:1042
+#: build/models.py:288 build/templates/build/build_base.html:205
+#: build/templates/build/detail.html:122 order/models.py:262
+#: order/templates/order/order_base.html:217
+#: order/templates/order/return_order_base.html:189
+#: order/templates/order/sales_order_base.html:229 part/models.py:1043
#: part/templates/part/part_base.html:392
#: report/templates/report/inventree_build_order_base.html:158
-#: templates/js/translated/build.js:2925
-#: templates/js/translated/purchase_order.js:1723
-#: templates/js/translated/return_order.js:347
-#: templates/js/translated/table_filters.js:461
+#: templates/js/translated/build.js:2142
+#: templates/js/translated/purchase_order.js:1738
+#: templates/js/translated/return_order.js:359
+#: templates/js/translated/table_filters.js:467
msgid "Responsible"
msgstr "Υπεύθυνος"
-#: build/models.py:285
+#: build/models.py:289
msgid "User or group responsible for this build order"
msgstr ""
-#: build/models.py:290 build/templates/build/detail.html:108
+#: build/models.py:294 build/templates/build/detail.html:108
#: company/templates/company/manufacturer_part.html:107
#: company/templates/company/supplier_part.html:195
-#: order/templates/order/order_base.html:171
+#: order/templates/order/order_base.html:167
#: order/templates/order/return_order_base.html:146
#: order/templates/order/sales_order_base.html:181
#: part/templates/part/part_base.html:385 stock/models.py:733
#: stock/templates/stock/item_base.html:201
+#: templates/js/translated/company.js:1050
msgid "External Link"
msgstr "Εξωτερικοί σύνδεσμοι"
-#: build/models.py:295
+#: build/models.py:299
msgid "Build Priority"
msgstr ""
-#: build/models.py:298
+#: build/models.py:302
msgid "Priority of this build order"
msgstr ""
-#: build/models.py:536
+#: build/models.py:309 common/models.py:104 order/admin.py:17
+#: order/models.py:237 templates/InvenTree/settings/settings_staff_js.html:70
+#: templates/js/translated/build.js:2067
+#: templates/js/translated/purchase_order.js:1685
+#: templates/js/translated/return_order.js:318
+#: templates/js/translated/sales_order.js:806
+#: templates/js/translated/table_filters.js:24
+#: templates/project_code_data.html:6
+msgid "Project Code"
+msgstr ""
+
+#: build/models.py:310
+msgid "Project code for this build order"
+msgstr ""
+
+#: build/models.py:545
#, python-brace-format
msgid "Build order {build} has been completed"
msgstr "Η παραγγελία κατασκευής {build} έχει ολοκληρωθεί"
-#: build/models.py:542
+#: build/models.py:551
msgid "A build order has been completed"
msgstr "Η παραγγελία κατασκευής έχει ολοκληρωθεί"
-#: build/models.py:744 build/models.py:811
+#: build/models.py:753 build/models.py:831
msgid "No build output specified"
msgstr "Δεν καθορίστηκε έξοδος κατασκευής"
-#: build/models.py:747
+#: build/models.py:756
msgid "Build output is already completed"
msgstr "Η παραγγελία κατασκευής έχει ολοκληρωθεί"
-#: build/models.py:750
+#: build/models.py:759
msgid "Build output does not match Build Order"
msgstr "Η έξοδος κατασκευής δεν ταιριάζει με την παραγγελία κατασκευής"
-#: build/models.py:815 build/serializers.py:212 build/serializers.py:251
-#: build/serializers.py:811 order/models.py:440 order/serializers.py:379
-#: order/serializers.py:501 part/serializers.py:1087 part/serializers.py:1408
-#: stock/models.py:593 stock/models.py:1387 stock/serializers.py:315
+#: build/models.py:835 build/serializers.py:220 build/serializers.py:259
+#: build/serializers.py:819 order/models.py:453 order/serializers.py:385
+#: order/serializers.py:507 part/serializers.py:1149 part/serializers.py:1470
+#: stock/models.py:593 stock/models.py:1387 stock/serializers.py:381
msgid "Quantity must be greater than zero"
msgstr "Η ποσότητα πρέπει να είναι μεγαλύτερη από 0"
-#: build/models.py:820 build/serializers.py:217
+#: build/models.py:840 build/serializers.py:225
msgid "Quantity cannot be greater than the output quantity"
msgstr ""
-#: build/models.py:1272
-msgid "Build item must specify a build output, as master part is marked as trackable"
-msgstr "Το στοιχείο κατασκευής πρέπει να ορίζει μια έξοδο κατασκευής, καθώς το κύριο τμήμα επισημαίνεται ως ανιχνεύσιμο"
+#: build/models.py:1260
+msgid "Build object"
+msgstr ""
-#: build/models.py:1281
-#, python-brace-format
-msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})"
-msgstr "Η καταχωρημένη ποσότητα ({q}) δεν πρέπει να υπερβαίνει τη διαθέσιμη ποσότητα αποθέματος ({a})"
-
-#: build/models.py:1291 order/models.py:1601
-msgid "Stock item is over-allocated"
-msgstr "Στοιχείο αποθέματος είναι υπερ-κατανεμημένο"
-
-#: build/models.py:1297 order/models.py:1604
-msgid "Allocation quantity must be greater than zero"
-msgstr "Η ποσότητα πρέπει να είναι μεγαλύτερη από 0"
-
-#: build/models.py:1303
-msgid "Quantity must be 1 for serialized stock"
-msgstr "Η ποσότητα πρέπει να είναι 1 για σειριακό απόθεμα"
-
-#: build/models.py:1360
-msgid "Selected stock item not found in BOM"
-msgstr "Το επιλεγμένο αντικείμενο αποθέματος δεν βρέθηκε στο BOM"
-
-#: build/models.py:1438 stock/templates/stock/item_base.html:170
-#: templates/InvenTree/search.html:139 templates/js/translated/build.js:2841
-#: templates/navbar.html:38
-msgid "Build"
-msgstr "Κατασκευή"
-
-#: build/models.py:1439
-msgid "Build to allocate parts"
-msgstr "Κατασκευή για εκχώρηση τμημάτων"
-
-#: build/models.py:1455 build/serializers.py:791 order/serializers.py:1059
-#: order/serializers.py:1080 stock/serializers.py:413 stock/serializers.py:770
-#: stock/serializers.py:896 stock/templates/stock/item_base.html:10
-#: stock/templates/stock/item_base.html:23
-#: stock/templates/stock/item_base.html:195
-#: templates/js/translated/build.js:955 templates/js/translated/build.js:960
-#: templates/js/translated/build.js:2466 templates/js/translated/build.js:3038
-#: templates/js/translated/sales_order.js:286
-#: templates/js/translated/sales_order.js:1186
-#: templates/js/translated/sales_order.js:1485
-#: templates/js/translated/sales_order.js:1490
-#: templates/js/translated/sales_order.js:1591
-#: templates/js/translated/sales_order.js:1678
-#: templates/js/translated/stock.js:644 templates/js/translated/stock.js:810
-#: templates/js/translated/stock.js:2714
-msgid "Stock Item"
-msgstr "Στοιχείο Αποθέματος"
-
-#: build/models.py:1456
-msgid "Source stock item"
-msgstr "Στοιχείο πηγαίου αποθέματος"
-
-#: build/models.py:1468 build/serializers.py:198 build/serializers.py:236
-#: build/templates/build/build_base.html:103
-#: build/templates/build/detail.html:34 common/models.py:2176
-#: order/models.py:1073 order/models.py:1645 order/serializers.py:1233
+#: build/models.py:1274 build/models.py:1556 build/serializers.py:206
+#: build/serializers.py:244 build/templates/build/build_base.html:103
+#: build/templates/build/detail.html:34 common/models.py:2162
+#: order/models.py:1086 order/models.py:1658 order/serializers.py:1239
#: order/templates/order/order_wizard/match_parts.html:30 part/admin.py:277
-#: part/forms.py:47 part/models.py:2992 part/models.py:3779
+#: part/forms.py:47 part/models.py:3026 part/models.py:3823
#: part/templates/part/part_pricing.html:16
#: part/templates/part/upload_bom.html:53
#: report/templates/report/inventree_bill_of_materials_report.html:138
@@ -1203,315 +1200,367 @@ msgstr "Στοιχείο πηγαίου αποθέματος"
#: report/templates/report/inventree_so_report_base.html:29
#: report/templates/report/inventree_test_report_base.html:90
#: report/templates/report/inventree_test_report_base.html:170
-#: stock/admin.py:103 stock/serializers.py:306
+#: stock/admin.py:103 stock/serializers.py:372
#: stock/templates/stock/item_base.html:288
#: stock/templates/stock/item_base.html:296
#: stock/templates/stock/item_base.html:343
#: templates/email/build_order_completed.html:18
-#: templates/js/translated/barcode.js:531 templates/js/translated/bom.js:770
-#: templates/js/translated/bom.js:951 templates/js/translated/build.js:504
-#: templates/js/translated/build.js:716 templates/js/translated/build.js:982
-#: templates/js/translated/build.js:1425 templates/js/translated/build.js:1991
-#: templates/js/translated/build.js:2467
-#: templates/js/translated/company.js:1428
-#: templates/js/translated/model_renderers.js:207
-#: templates/js/translated/order.js:304 templates/js/translated/part.js:935
-#: templates/js/translated/part.js:1784 templates/js/translated/part.js:3263
+#: templates/js/translated/barcode.js:531 templates/js/translated/bom.js:771
+#: templates/js/translated/bom.js:969 templates/js/translated/build.js:510
+#: templates/js/translated/build.js:722 templates/js/translated/build.js:1308
+#: templates/js/translated/build.js:1672 templates/js/translated/build.js:2283
+#: templates/js/translated/company.js:1849
+#: templates/js/translated/model_renderers.js:221
+#: templates/js/translated/order.js:304 templates/js/translated/part.js:934
+#: templates/js/translated/part.js:1783 templates/js/translated/part.js:3248
#: templates/js/translated/pricing.js:381
#: templates/js/translated/pricing.js:474
#: templates/js/translated/pricing.js:522
#: templates/js/translated/pricing.js:616
-#: templates/js/translated/purchase_order.js:749
-#: templates/js/translated/purchase_order.js:1815
-#: templates/js/translated/purchase_order.js:2039
-#: templates/js/translated/sales_order.js:302
-#: templates/js/translated/sales_order.js:1187
-#: templates/js/translated/sales_order.js:1504
-#: templates/js/translated/sales_order.js:1594
-#: templates/js/translated/sales_order.js:1684
-#: templates/js/translated/sales_order.js:1804
-#: templates/js/translated/stock.js:531 templates/js/translated/stock.js:669
-#: templates/js/translated/stock.js:840 templates/js/translated/stock.js:2758
-#: templates/js/translated/stock.js:2843
+#: templates/js/translated/purchase_order.js:760
+#: templates/js/translated/purchase_order.js:1830
+#: templates/js/translated/purchase_order.js:2049
+#: templates/js/translated/sales_order.js:314
+#: templates/js/translated/sales_order.js:1199
+#: templates/js/translated/sales_order.js:1516
+#: templates/js/translated/sales_order.js:1606
+#: templates/js/translated/sales_order.js:1696
+#: templates/js/translated/sales_order.js:1816
+#: templates/js/translated/stock.js:530 templates/js/translated/stock.js:668
+#: templates/js/translated/stock.js:839 templates/js/translated/stock.js:2889
+#: templates/js/translated/stock.js:2970
msgid "Quantity"
msgstr "Ποσότητα"
-#: build/models.py:1469
+#: build/models.py:1275
+msgid "Required quantity for build order"
+msgstr ""
+
+#: build/models.py:1357
+msgid "Build item must specify a build output, as master part is marked as trackable"
+msgstr "Το στοιχείο κατασκευής πρέπει να ορίζει μια έξοδο κατασκευής, καθώς το κύριο τμήμα επισημαίνεται ως ανιχνεύσιμο"
+
+#: build/models.py:1366
+#, python-brace-format
+msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})"
+msgstr "Η καταχωρημένη ποσότητα ({q}) δεν πρέπει να υπερβαίνει τη διαθέσιμη ποσότητα αποθέματος ({a})"
+
+#: build/models.py:1376 order/models.py:1614
+msgid "Stock item is over-allocated"
+msgstr "Στοιχείο αποθέματος είναι υπερ-κατανεμημένο"
+
+#: build/models.py:1382 order/models.py:1617
+msgid "Allocation quantity must be greater than zero"
+msgstr "Η ποσότητα πρέπει να είναι μεγαλύτερη από 0"
+
+#: build/models.py:1388
+msgid "Quantity must be 1 for serialized stock"
+msgstr "Η ποσότητα πρέπει να είναι 1 για σειριακό απόθεμα"
+
+#: build/models.py:1449
+msgid "Selected stock item does not match BOM line"
+msgstr ""
+
+#: build/models.py:1543 build/serializers.py:799 order/serializers.py:1065
+#: order/serializers.py:1086 stock/serializers.py:479 stock/serializers.py:887
+#: stock/serializers.py:1013 stock/templates/stock/item_base.html:10
+#: stock/templates/stock/item_base.html:23
+#: stock/templates/stock/item_base.html:195
+#: templates/js/translated/build.js:1671
+#: templates/js/translated/sales_order.js:298
+#: templates/js/translated/sales_order.js:1198
+#: templates/js/translated/sales_order.js:1497
+#: templates/js/translated/sales_order.js:1502
+#: templates/js/translated/sales_order.js:1603
+#: templates/js/translated/sales_order.js:1690
+#: templates/js/translated/stock.js:643 templates/js/translated/stock.js:809
+#: templates/js/translated/stock.js:2845
+msgid "Stock Item"
+msgstr "Στοιχείο Αποθέματος"
+
+#: build/models.py:1544
+msgid "Source stock item"
+msgstr "Στοιχείο πηγαίου αποθέματος"
+
+#: build/models.py:1557
msgid "Stock quantity to allocate to build"
msgstr "Ποσότητα αποθέματος για διάθεση για κατασκευή"
-#: build/models.py:1477
+#: build/models.py:1565
msgid "Install into"
msgstr "Εγκατάσταση σε"
-#: build/models.py:1478
+#: build/models.py:1566
msgid "Destination stock item"
msgstr "Αποθήκη προορισμού"
-#: build/serializers.py:148 build/serializers.py:820
-#: templates/js/translated/build.js:1413
+#: build/serializers.py:156 build/serializers.py:828
+#: templates/js/translated/build.js:1299
msgid "Build Output"
msgstr "Κατασκευή Εξόδου"
-#: build/serializers.py:160
+#: build/serializers.py:168
msgid "Build output does not match the parent build"
msgstr "Η έξοδος κατασκευής δεν ταιριάζει με την παραγγελία κατασκευής"
-#: build/serializers.py:164
+#: build/serializers.py:172
msgid "Output part does not match BuildOrder part"
msgstr "Το εξερχόμενο μέρος δεν ταιριάζει με το μέρος BuildOrder"
-#: build/serializers.py:168
+#: build/serializers.py:176
msgid "This build output has already been completed"
msgstr "Η παραγγελία κατασκευής έχει ολοκληρωθεί"
-#: build/serializers.py:179
+#: build/serializers.py:187
msgid "This build output is not fully allocated"
msgstr "Αυτή η έξοδος κατασκευής δεν έχει εκχωρηθεί πλήρως"
-#: build/serializers.py:199 build/serializers.py:237
+#: build/serializers.py:207 build/serializers.py:245
msgid "Enter quantity for build output"
msgstr "Εισάγετε ποσότητα για την έξοδο κατασκευής"
-#: build/serializers.py:258
+#: build/serializers.py:266
msgid "Integer quantity required for trackable parts"
msgstr "Ακέραιη ποσότητα που απαιτείται για ανιχνεύσιμα μέρη"
-#: build/serializers.py:261
+#: build/serializers.py:269
msgid "Integer quantity required, as the bill of materials contains trackable parts"
msgstr "Ακέραιη ποσότητα που απαιτείται, καθώς ο λογαριασμός των υλικών περιέχει ανιχνεύσιμα μέρη"
-#: build/serializers.py:276 order/serializers.py:514 order/serializers.py:1237
-#: stock/serializers.py:324 templates/js/translated/purchase_order.js:1123
-#: templates/js/translated/stock.js:334 templates/js/translated/stock.js:532
+#: build/serializers.py:284 order/serializers.py:520 order/serializers.py:1243
+#: stock/serializers.py:390 templates/js/translated/purchase_order.js:1138
+#: templates/js/translated/stock.js:333 templates/js/translated/stock.js:531
msgid "Serial Numbers"
msgstr "Σειριακοί αριθμοί"
-#: build/serializers.py:277
+#: build/serializers.py:285
msgid "Enter serial numbers for build outputs"
msgstr "Εισάγετε ποσότητα για την έξοδο κατασκευής"
-#: build/serializers.py:290
+#: build/serializers.py:298
msgid "Auto Allocate Serial Numbers"
msgstr "Αυτόματη Κατανομή Σειριακών Αριθμών"
-#: build/serializers.py:291
+#: build/serializers.py:299
msgid "Automatically allocate required items with matching serial numbers"
msgstr ""
-#: build/serializers.py:326 stock/api.py:670
+#: build/serializers.py:334 stock/api.py:707
msgid "The following serial numbers already exist or are invalid"
msgstr ""
-#: build/serializers.py:377 build/serializers.py:439 build/serializers.py:518
+#: build/serializers.py:385 build/serializers.py:447 build/serializers.py:526
msgid "A list of build outputs must be provided"
msgstr ""
-#: build/serializers.py:415 build/serializers.py:488 order/serializers.py:487
-#: order/serializers.py:606 order/serializers.py:1588 part/serializers.py:854
-#: stock/serializers.py:335 stock/serializers.py:470 stock/serializers.py:551
-#: stock/serializers.py:931 stock/serializers.py:1173
+#: build/serializers.py:423 build/serializers.py:496 order/serializers.py:493
+#: order/serializers.py:612 order/serializers.py:1594 part/serializers.py:916
+#: stock/serializers.py:401 stock/serializers.py:537 stock/serializers.py:618
+#: stock/serializers.py:1048 stock/serializers.py:1290
#: stock/templates/stock/item_base.html:390
#: templates/js/translated/barcode.js:530
-#: templates/js/translated/barcode.js:778 templates/js/translated/build.js:967
-#: templates/js/translated/build.js:2006
-#: templates/js/translated/purchase_order.js:1148
-#: templates/js/translated/purchase_order.js:1238
-#: templates/js/translated/sales_order.js:1497
-#: templates/js/translated/sales_order.js:1605
-#: templates/js/translated/sales_order.js:1613
-#: templates/js/translated/sales_order.js:1692
-#: templates/js/translated/stock.js:645 templates/js/translated/stock.js:811
-#: templates/js/translated/stock.js:1023 templates/js/translated/stock.js:1937
-#: templates/js/translated/stock.js:2608
+#: templates/js/translated/barcode.js:778 templates/js/translated/build.js:980
+#: templates/js/translated/build.js:2298
+#: templates/js/translated/purchase_order.js:1163
+#: templates/js/translated/purchase_order.js:1253
+#: templates/js/translated/sales_order.js:1509
+#: templates/js/translated/sales_order.js:1617
+#: templates/js/translated/sales_order.js:1625
+#: templates/js/translated/sales_order.js:1704
+#: templates/js/translated/stock.js:644 templates/js/translated/stock.js:810
+#: templates/js/translated/stock.js:1022 templates/js/translated/stock.js:2094
+#: templates/js/translated/stock.js:2739
msgid "Location"
msgstr ""
-#: build/serializers.py:416
+#: build/serializers.py:424
msgid "Stock location for scrapped outputs"
msgstr ""
-#: build/serializers.py:422
+#: build/serializers.py:430
msgid "Discard Allocations"
msgstr ""
-#: build/serializers.py:423
+#: build/serializers.py:431
msgid "Discard any stock allocations for scrapped outputs"
msgstr ""
-#: build/serializers.py:428
+#: build/serializers.py:436
msgid "Reason for scrapping build output(s)"
msgstr ""
-#: build/serializers.py:489
+#: build/serializers.py:497
msgid "Location for completed build outputs"
msgstr ""
-#: build/serializers.py:495 build/templates/build/build_base.html:151
-#: build/templates/build/detail.html:62 order/models.py:791
-#: order/models.py:1750 order/serializers.py:524 stock/admin.py:106
-#: stock/templates/stock/item_base.html:423
-#: templates/js/translated/barcode.js:252 templates/js/translated/build.js:2897
-#: templates/js/translated/purchase_order.js:1278
-#: templates/js/translated/purchase_order.js:1682
-#: templates/js/translated/return_order.js:319
-#: templates/js/translated/sales_order.js:807
-#: templates/js/translated/stock.js:1912 templates/js/translated/stock.js:2732
-#: templates/js/translated/stock.js:2859
+#: build/serializers.py:503 build/templates/build/build_base.html:152
+#: build/templates/build/detail.html:62 order/models.py:804
+#: order/models.py:1763 order/serializers.py:530 stock/admin.py:106
+#: stock/serializers.py:677 stock/templates/stock/item_base.html:423
+#: templates/js/translated/barcode.js:252 templates/js/translated/build.js:2114
+#: templates/js/translated/purchase_order.js:1293
+#: templates/js/translated/purchase_order.js:1697
+#: templates/js/translated/return_order.js:331
+#: templates/js/translated/sales_order.js:819
+#: templates/js/translated/stock.js:2069 templates/js/translated/stock.js:2863
+#: templates/js/translated/stock.js:2986
msgid "Status"
msgstr ""
-#: build/serializers.py:501
+#: build/serializers.py:509
msgid "Accept Incomplete Allocation"
msgstr ""
-#: build/serializers.py:502
+#: build/serializers.py:510
msgid "Complete outputs if stock has not been fully allocated"
msgstr ""
-#: build/serializers.py:571
+#: build/serializers.py:579
msgid "Remove Allocated Stock"
msgstr ""
-#: build/serializers.py:572
+#: build/serializers.py:580
msgid "Subtract any stock which has already been allocated to this build"
msgstr ""
-#: build/serializers.py:578
+#: build/serializers.py:586
msgid "Remove Incomplete Outputs"
msgstr ""
-#: build/serializers.py:579
+#: build/serializers.py:587
msgid "Delete any build outputs which have not been completed"
msgstr ""
-#: build/serializers.py:606
+#: build/serializers.py:614
msgid "Not permitted"
msgstr ""
-#: build/serializers.py:607
+#: build/serializers.py:615
msgid "Accept as consumed by this build order"
msgstr ""
-#: build/serializers.py:608
+#: build/serializers.py:616
msgid "Deallocate before completing this build order"
msgstr ""
-#: build/serializers.py:631
+#: build/serializers.py:639
msgid "Overallocated Stock"
msgstr ""
-#: build/serializers.py:633
+#: build/serializers.py:641
msgid "How do you want to handle extra stock items assigned to the build order"
msgstr ""
-#: build/serializers.py:643
+#: build/serializers.py:651
msgid "Some stock items have been overallocated"
msgstr ""
-#: build/serializers.py:648
+#: build/serializers.py:656
msgid "Accept Unallocated"
msgstr ""
-#: build/serializers.py:649
+#: build/serializers.py:657
msgid "Accept that stock items have not been fully allocated to this build order"
msgstr ""
-#: build/serializers.py:659 templates/js/translated/build.js:295
+#: build/serializers.py:667 templates/js/translated/build.js:304
msgid "Required stock has not been fully allocated"
msgstr ""
-#: build/serializers.py:664 order/serializers.py:261 order/serializers.py:1127
+#: build/serializers.py:672 order/serializers.py:267 order/serializers.py:1133
msgid "Accept Incomplete"
msgstr ""
-#: build/serializers.py:665
+#: build/serializers.py:673
msgid "Accept that the required number of build outputs have not been completed"
msgstr ""
-#: build/serializers.py:675 templates/js/translated/build.js:299
+#: build/serializers.py:683 templates/js/translated/build.js:308
msgid "Required build quantity has not been completed"
msgstr ""
-#: build/serializers.py:684 templates/js/translated/build.js:283
+#: build/serializers.py:692 templates/js/translated/build.js:292
msgid "Build order has incomplete outputs"
msgstr ""
-#: build/serializers.py:714 build/serializers.py:768 part/models.py:3686
-#: part/models.py:4069
-msgid "BOM Item"
-msgstr ""
-
-#: build/serializers.py:724
-msgid "Build output"
+#: build/serializers.py:722
+msgid "Build Line"
msgstr ""
#: build/serializers.py:732
+msgid "Build output"
+msgstr ""
+
+#: build/serializers.py:740
msgid "Build output must point to the same build"
msgstr ""
-#: build/serializers.py:782
+#: build/serializers.py:776
+msgid "Build Line Item"
+msgstr ""
+
+#: build/serializers.py:790
msgid "bom_item.part must point to the same part as the build order"
msgstr ""
-#: build/serializers.py:797 stock/serializers.py:783
+#: build/serializers.py:805 stock/serializers.py:900
msgid "Item must be in stock"
msgstr ""
-#: build/serializers.py:846 order/serializers.py:1117
+#: build/serializers.py:853 order/serializers.py:1123
#, python-brace-format
msgid "Available quantity ({q}) exceeded"
msgstr ""
-#: build/serializers.py:852
+#: build/serializers.py:859
msgid "Build output must be specified for allocation of tracked parts"
msgstr ""
-#: build/serializers.py:859
+#: build/serializers.py:866
msgid "Build output cannot be specified for allocation of untracked parts"
msgstr ""
-#: build/serializers.py:864
+#: build/serializers.py:871
msgid "This stock item has already been allocated to this build output"
msgstr ""
-#: build/serializers.py:887 order/serializers.py:1401
+#: build/serializers.py:894 order/serializers.py:1407
msgid "Allocation items must be provided"
msgstr ""
-#: build/serializers.py:943
+#: build/serializers.py:947
msgid "Stock location where parts are to be sourced (leave blank to take from any location)"
msgstr ""
-#: build/serializers.py:951
+#: build/serializers.py:955
msgid "Exclude Location"
msgstr ""
-#: build/serializers.py:952
+#: build/serializers.py:956
msgid "Exclude stock items from this selected location"
msgstr ""
-#: build/serializers.py:957
+#: build/serializers.py:961
msgid "Interchangeable Stock"
msgstr ""
-#: build/serializers.py:958
+#: build/serializers.py:962
msgid "Stock items in multiple locations can be used interchangeably"
msgstr ""
-#: build/serializers.py:963
+#: build/serializers.py:967
msgid "Substitute Stock"
msgstr ""
-#: build/serializers.py:964
+#: build/serializers.py:968
msgid "Allow allocation of substitute parts"
msgstr ""
-#: build/serializers.py:969
+#: build/serializers.py:973
msgid "Optional Items"
msgstr ""
-#: build/serializers.py:970
+#: build/serializers.py:974
msgid "Allocate optional BOM items to build order"
msgstr ""
@@ -1540,6 +1589,7 @@ msgstr ""
#: part/templates/part/part_base.html:43
#: stock/templates/stock/item_base.html:41
#: stock/templates/stock/location.html:54
+#: templates/js/translated/filters.js:336
msgid "Barcode actions"
msgstr ""
@@ -1618,69 +1668,67 @@ msgstr ""
msgid "Build Description"
msgstr ""
-#: build/templates/build/build_base.html:117
+#: build/templates/build/build_base.html:118
msgid "No build outputs have been created for this build order"
msgstr ""
-#: build/templates/build/build_base.html:124
+#: build/templates/build/build_base.html:125
msgid "Build Order is ready to mark as completed"
msgstr ""
-#: build/templates/build/build_base.html:129
+#: build/templates/build/build_base.html:130
msgid "Build Order cannot be completed as outstanding outputs remain"
msgstr ""
-#: build/templates/build/build_base.html:134
+#: build/templates/build/build_base.html:135
msgid "Required build quantity has not yet been completed"
msgstr ""
-#: build/templates/build/build_base.html:139
+#: build/templates/build/build_base.html:140
msgid "Stock has not been fully allocated to this Build Order"
msgstr ""
-#: build/templates/build/build_base.html:160
-#: build/templates/build/detail.html:138 order/models.py:240
-#: order/models.py:1099 order/templates/order/order_base.html:190
+#: build/templates/build/build_base.html:161
+#: build/templates/build/detail.html:138 order/models.py:244
+#: order/models.py:1112 order/templates/order/order_base.html:186
#: order/templates/order/return_order_base.html:165
#: order/templates/order/sales_order_base.html:193
#: report/templates/report/inventree_build_order_base.html:125
-#: templates/js/translated/build.js:2945 templates/js/translated/part.js:1802
-#: templates/js/translated/purchase_order.js:1699
-#: templates/js/translated/purchase_order.js:2115
-#: templates/js/translated/return_order.js:335
-#: templates/js/translated/return_order.js:735
-#: templates/js/translated/sales_order.js:823
-#: templates/js/translated/sales_order.js:1847
+#: templates/js/translated/build.js:2162 templates/js/translated/part.js:1801
+#: templates/js/translated/purchase_order.js:1714
+#: templates/js/translated/purchase_order.js:2125
+#: templates/js/translated/return_order.js:347
+#: templates/js/translated/return_order.js:747
+#: templates/js/translated/sales_order.js:835
+#: templates/js/translated/sales_order.js:1859
msgid "Target Date"
msgstr ""
-#: build/templates/build/build_base.html:165
+#: build/templates/build/build_base.html:166
#, python-format
msgid "This build was due on %(target)s"
msgstr ""
-#: build/templates/build/build_base.html:165
-#: build/templates/build/build_base.html:222
-#: order/templates/order/order_base.html:126
+#: build/templates/build/build_base.html:166
+#: build/templates/build/build_base.html:223
+#: order/templates/order/order_base.html:122
#: order/templates/order/return_order_base.html:118
#: order/templates/order/sales_order_base.html:123
-#: templates/js/translated/table_filters.js:68
-#: templates/js/translated/table_filters.js:454
-#: templates/js/translated/table_filters.js:539
-#: templates/js/translated/table_filters.js:580
+#: templates/js/translated/table_filters.js:74
+#: templates/js/translated/table_filters.js:460
+#: templates/js/translated/table_filters.js:561
+#: templates/js/translated/table_filters.js:602
msgid "Overdue"
msgstr ""
-#: build/templates/build/build_base.html:177
-#: build/templates/build/detail.html:67 build/templates/build/detail.html:149
-#: order/templates/order/sales_order_base.html:203
-#: templates/js/translated/table_filters.js:602
-msgid "Completed"
+#: build/templates/build/build_base.html:178
+#: build/templates/build/detail.html:67 build/templates/build/sidebar.html:13
+msgid "Completed Outputs"
msgstr ""
-#: build/templates/build/build_base.html:190
-#: build/templates/build/detail.html:101 order/api.py:1454 order/models.py:1304
-#: order/models.py:1403 order/models.py:1551
+#: build/templates/build/build_base.html:191
+#: build/templates/build/detail.html:101 order/api.py:1454 order/models.py:1317
+#: order/models.py:1416 order/models.py:1564
#: order/templates/order/sales_order_base.html:9
#: order/templates/order/sales_order_base.html:28
#: report/templates/report/inventree_build_order_base.html:135
@@ -1688,32 +1736,32 @@ msgstr ""
#: stock/templates/stock/item_base.html:370
#: templates/email/overdue_sales_order.html:15
#: templates/js/translated/pricing.js:915
-#: templates/js/translated/sales_order.js:757
-#: templates/js/translated/sales_order.js:980
-#: templates/js/translated/stock.js:2661
+#: templates/js/translated/sales_order.js:769
+#: templates/js/translated/sales_order.js:992
+#: templates/js/translated/stock.js:2792
msgid "Sales Order"
msgstr ""
-#: build/templates/build/build_base.html:197
+#: build/templates/build/build_base.html:198
#: build/templates/build/detail.html:115
#: report/templates/report/inventree_build_order_base.html:152
msgid "Issued By"
msgstr ""
-#: build/templates/build/build_base.html:211
-#: build/templates/build/detail.html:94 templates/js/translated/build.js:2862
+#: build/templates/build/build_base.html:212
+#: build/templates/build/detail.html:94 templates/js/translated/build.js:2079
msgid "Priority"
msgstr ""
-#: build/templates/build/build_base.html:273
+#: build/templates/build/build_base.html:274
msgid "Delete Build Order"
msgstr ""
-#: build/templates/build/build_base.html:283
+#: build/templates/build/build_base.html:284
msgid "Build Order QR Code"
msgstr ""
-#: build/templates/build/build_base.html:295
+#: build/templates/build/build_base.html:296
msgid "Link Barcode to Build Order"
msgstr ""
@@ -1729,8 +1777,8 @@ msgstr ""
msgid "Stock can be taken from any available location."
msgstr ""
-#: build/templates/build/detail.html:49 order/models.py:1222
-#: templates/js/translated/purchase_order.js:2157
+#: build/templates/build/detail.html:49 order/models.py:1235
+#: templates/js/translated/purchase_order.js:2167
msgid "Destination"
msgstr ""
@@ -1744,21 +1792,21 @@ msgstr ""
#: build/templates/build/detail.html:80 stock/admin.py:105
#: stock/templates/stock/item_base.html:163
-#: templates/js/translated/build.js:1432
-#: templates/js/translated/model_renderers.js:212
-#: templates/js/translated/purchase_order.js:1244
-#: templates/js/translated/stock.js:1093 templates/js/translated/stock.js:1926
-#: templates/js/translated/stock.js:2866
-#: templates/js/translated/table_filters.js:259
-#: templates/js/translated/table_filters.js:350
+#: templates/js/translated/build.js:1319
+#: templates/js/translated/model_renderers.js:226
+#: templates/js/translated/purchase_order.js:1259
+#: templates/js/translated/stock.js:1092 templates/js/translated/stock.js:2083
+#: templates/js/translated/stock.js:2993
+#: templates/js/translated/table_filters.js:265
+#: templates/js/translated/table_filters.js:356
msgid "Batch"
msgstr ""
#: build/templates/build/detail.html:133
-#: order/templates/order/order_base.html:177
+#: order/templates/order/order_base.html:173
#: order/templates/order/return_order_base.html:152
#: order/templates/order/sales_order_base.html:187
-#: templates/js/translated/build.js:2905
+#: templates/js/translated/build.js:2122
msgid "Created"
msgstr ""
@@ -1766,147 +1814,106 @@ msgstr ""
msgid "No target date set"
msgstr ""
+#: build/templates/build/detail.html:149
+#: order/templates/order/sales_order_base.html:203
+#: templates/js/translated/table_filters.js:624
+msgid "Completed"
+msgstr ""
+
#: build/templates/build/detail.html:153
msgid "Build not complete"
msgstr ""
-#: build/templates/build/detail.html:164 build/templates/build/sidebar.html:19
+#: build/templates/build/detail.html:164 build/templates/build/sidebar.html:17
msgid "Child Build Orders"
msgstr ""
-#: build/templates/build/detail.html:179
+#: build/templates/build/detail.html:177
msgid "Allocate Stock to Build"
msgstr ""
-#: build/templates/build/detail.html:183 templates/js/translated/build.js:2276
-msgid "Unallocate stock"
+#: build/templates/build/detail.html:181
+msgid "Deallocate stock"
+msgstr ""
+
+#: build/templates/build/detail.html:182
+msgid "Deallocate Stock"
msgstr ""
#: build/templates/build/detail.html:184
-msgid "Unallocate Stock"
-msgstr ""
-
-#: build/templates/build/detail.html:186
msgid "Automatically allocate stock to build"
msgstr ""
-#: build/templates/build/detail.html:187
+#: build/templates/build/detail.html:185
msgid "Auto Allocate"
msgstr ""
-#: build/templates/build/detail.html:189
+#: build/templates/build/detail.html:187
msgid "Manually allocate stock to build"
msgstr ""
-#: build/templates/build/detail.html:190 build/templates/build/sidebar.html:8
+#: build/templates/build/detail.html:188 build/templates/build/sidebar.html:8
msgid "Allocate Stock"
msgstr ""
-#: build/templates/build/detail.html:193
+#: build/templates/build/detail.html:191
msgid "Order required parts"
msgstr ""
-#: build/templates/build/detail.html:194
-#: company/templates/company/detail.html:38
-#: company/templates/company/detail.html:86
-#: part/templates/part/category.html:184
-#: templates/js/translated/purchase_order.js:789
+#: build/templates/build/detail.html:192
+#: templates/js/translated/purchase_order.js:800
msgid "Order Parts"
msgstr ""
-#: build/templates/build/detail.html:206
-msgid "Untracked stock has been fully allocated for this Build Order"
-msgstr ""
-
#: build/templates/build/detail.html:210
-msgid "Untracked stock has not been fully allocated for this Build Order"
-msgstr ""
-
-#: build/templates/build/detail.html:217
-msgid "Allocate selected items"
-msgstr ""
-
-#: build/templates/build/detail.html:227
-msgid "This Build Order does not have any associated untracked BOM items"
-msgstr ""
-
-#: build/templates/build/detail.html:236
msgid "Incomplete Build Outputs"
msgstr ""
-#: build/templates/build/detail.html:240
+#: build/templates/build/detail.html:214
msgid "Create new build output"
msgstr ""
-#: build/templates/build/detail.html:241
+#: build/templates/build/detail.html:215
msgid "New Build Output"
msgstr ""
-#: build/templates/build/detail.html:255
-msgid "Output Actions"
-msgstr ""
-
-#: build/templates/build/detail.html:260
-msgid "Complete selected build outputs"
-msgstr ""
-
-#: build/templates/build/detail.html:261
-msgid "Complete outputs"
-msgstr ""
-
-#: build/templates/build/detail.html:265
-msgid "Scrap selected build outputs"
-msgstr ""
-
-#: build/templates/build/detail.html:266
-msgid "Scrap outputs"
-msgstr ""
-
-#: build/templates/build/detail.html:270
-msgid "Delete selected build outputs"
-msgstr ""
-
-#: build/templates/build/detail.html:271
-msgid "Delete outputs"
-msgstr ""
-
-#: build/templates/build/detail.html:288 build/templates/build/sidebar.html:11
+#: build/templates/build/detail.html:232 build/templates/build/sidebar.html:15
msgid "Consumed Stock"
msgstr ""
-#: build/templates/build/detail.html:300
+#: build/templates/build/detail.html:244
msgid "Completed Build Outputs"
msgstr ""
-#: build/templates/build/detail.html:312 build/templates/build/sidebar.html:21
-#: company/templates/company/detail.html:261
-#: company/templates/company/manufacturer_part.html:151
+#: build/templates/build/detail.html:256 build/templates/build/sidebar.html:19
+#: company/templates/company/detail.html:229
+#: company/templates/company/manufacturer_part.html:141
#: company/templates/company/manufacturer_part_sidebar.html:9
-#: company/templates/company/sidebar.html:37
+#: company/templates/company/sidebar.html:39
#: order/templates/order/po_sidebar.html:9
-#: order/templates/order/purchase_order_detail.html:102
-#: order/templates/order/return_order_detail.html:74
+#: order/templates/order/purchase_order_detail.html:84
+#: order/templates/order/return_order_detail.html:70
#: order/templates/order/return_order_sidebar.html:7
-#: order/templates/order/sales_order_detail.html:134
-#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:234
-#: part/templates/part/part_sidebar.html:61 stock/templates/stock/item.html:117
+#: order/templates/order/sales_order_detail.html:124
+#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:217
+#: part/templates/part/part_sidebar.html:61 stock/templates/stock/item.html:109
#: stock/templates/stock/stock_sidebar.html:23
msgid "Attachments"
msgstr ""
-#: build/templates/build/detail.html:327
+#: build/templates/build/detail.html:271
msgid "Build Notes"
msgstr ""
-#: build/templates/build/detail.html:502
+#: build/templates/build/detail.html:425
msgid "Allocation Complete"
msgstr ""
-#: build/templates/build/detail.html:503
-msgid "All untracked stock items have been allocated"
+#: build/templates/build/detail.html:426
+msgid "All lines have been fully allocated"
msgstr ""
-#: build/templates/build/index.html:18 part/templates/part/detail.html:340
+#: build/templates/build/index.html:18 part/templates/part/detail.html:319
msgid "New Build Order"
msgstr ""
@@ -1914,14 +1921,10 @@ msgstr ""
msgid "Build Order Details"
msgstr ""
-#: build/templates/build/sidebar.html:14
+#: build/templates/build/sidebar.html:10
msgid "Incomplete Outputs"
msgstr ""
-#: build/templates/build/sidebar.html:17
-msgid "Completed Outputs"
-msgstr ""
-
#: common/files.py:63
#, python-brace-format
msgid "Unsupported file format: {fmt}"
@@ -1968,16 +1971,6 @@ msgstr ""
msgid "Timestamp of last update"
msgstr ""
-#: common/models.py:104 order/admin.py:17 order/models.py:234
-#: templates/InvenTree/settings/settings_staff_js.html:70
-#: templates/js/translated/purchase_order.js:1670
-#: templates/js/translated/return_order.js:306
-#: templates/js/translated/sales_order.js:794
-#: templates/js/translated/table_filters.js:24
-#: templates/project_code_data.html:6
-msgid "Project Code"
-msgstr ""
-
#: common/models.py:105
msgid "Unique project code"
msgstr ""
@@ -2261,9 +2254,9 @@ msgstr ""
msgid "Copy category parameter templates when creating a part"
msgstr ""
-#: common/models.py:1162 part/admin.py:55 part/models.py:3560
-#: report/models.py:166 templates/js/translated/table_filters.js:109
-#: templates/js/translated/table_filters.js:680
+#: common/models.py:1162 part/admin.py:55 part/models.py:3594
+#: report/models.py:166 templates/js/translated/table_filters.js:115
+#: templates/js/translated/table_filters.js:702
msgid "Template"
msgstr ""
@@ -2271,10 +2264,10 @@ msgstr ""
msgid "Parts are templates by default"
msgstr ""
-#: common/models.py:1169 part/admin.py:51 part/admin.py:283 part/models.py:996
-#: templates/js/translated/bom.js:1598
-#: templates/js/translated/table_filters.js:276
-#: templates/js/translated/table_filters.js:634
+#: common/models.py:1169 part/admin.py:51 part/admin.py:283 part/models.py:997
+#: templates/js/translated/bom.js:1618
+#: templates/js/translated/table_filters.js:282
+#: templates/js/translated/table_filters.js:656
msgid "Assembly"
msgstr ""
@@ -2282,8 +2275,8 @@ msgstr ""
msgid "Parts can be assembled from other components by default"
msgstr ""
-#: common/models.py:1176 part/admin.py:52 part/models.py:1002
-#: templates/js/translated/table_filters.js:642
+#: common/models.py:1176 part/admin.py:52 part/models.py:1003
+#: templates/js/translated/table_filters.js:664
msgid "Component"
msgstr ""
@@ -2291,7 +2284,7 @@ msgstr ""
msgid "Parts can be used as sub-components by default"
msgstr ""
-#: common/models.py:1183 part/admin.py:53 part/models.py:1013
+#: common/models.py:1183 part/admin.py:53 part/models.py:1014
msgid "Purchaseable"
msgstr ""
@@ -2299,8 +2292,8 @@ msgstr ""
msgid "Parts are purchaseable by default"
msgstr ""
-#: common/models.py:1190 part/admin.py:54 part/models.py:1018
-#: templates/js/translated/table_filters.js:668
+#: common/models.py:1190 part/admin.py:54 part/models.py:1019
+#: templates/js/translated/table_filters.js:690
msgid "Salable"
msgstr ""
@@ -2308,10 +2301,10 @@ msgstr ""
msgid "Parts are salable by default"
msgstr ""
-#: common/models.py:1197 part/admin.py:56 part/models.py:1008
-#: templates/js/translated/table_filters.js:117
-#: templates/js/translated/table_filters.js:193
-#: templates/js/translated/table_filters.js:684
+#: common/models.py:1197 part/admin.py:56 part/models.py:1009
+#: templates/js/translated/table_filters.js:123
+#: templates/js/translated/table_filters.js:199
+#: templates/js/translated/table_filters.js:706
msgid "Trackable"
msgstr ""
@@ -2319,10 +2312,10 @@ msgstr ""
msgid "Parts are trackable by default"
msgstr ""
-#: common/models.py:1204 part/admin.py:57 part/models.py:1028
+#: common/models.py:1204 part/admin.py:57 part/models.py:1029
#: part/templates/part/part_base.html:156
-#: templates/js/translated/table_filters.js:113
-#: templates/js/translated/table_filters.js:688
+#: templates/js/translated/table_filters.js:119
+#: templates/js/translated/table_filters.js:710
msgid "Virtual"
msgstr ""
@@ -2354,7 +2347,7 @@ msgstr ""
msgid "Allow creation of initial stock when adding a new part"
msgstr ""
-#: common/models.py:1232 templates/js/translated/part.js:108
+#: common/models.py:1232 templates/js/translated/part.js:107
msgid "Initial Supplier Data"
msgstr ""
@@ -2603,179 +2596,179 @@ msgid "Stock location default icon (empty means no icon)"
msgstr ""
#: common/models.py:1471
-msgid "Build Order Reference Pattern"
+msgid "Show Installed Stock Items"
msgstr ""
#: common/models.py:1472
-msgid "Required pattern for generating Build Order reference field"
+msgid "Display installed stock items in stock tables"
msgstr ""
#: common/models.py:1478
-msgid "Enable Return Orders"
+msgid "Build Order Reference Pattern"
msgstr ""
#: common/models.py:1479
-msgid "Enable return order functionality in the user interface"
+msgid "Required pattern for generating Build Order reference field"
msgstr ""
#: common/models.py:1485
-msgid "Return Order Reference Pattern"
+msgid "Enable Return Orders"
msgstr ""
#: common/models.py:1486
-msgid "Required pattern for generating Return Order reference field"
+msgid "Enable return order functionality in the user interface"
msgstr ""
#: common/models.py:1492
-msgid "Edit Completed Return Orders"
+msgid "Return Order Reference Pattern"
msgstr ""
#: common/models.py:1493
-msgid "Allow editing of return orders after they have been completed"
+msgid "Required pattern for generating Return Order reference field"
msgstr ""
#: common/models.py:1499
-msgid "Sales Order Reference Pattern"
+msgid "Edit Completed Return Orders"
msgstr ""
#: common/models.py:1500
-msgid "Required pattern for generating Sales Order reference field"
+msgid "Allow editing of return orders after they have been completed"
msgstr ""
#: common/models.py:1506
-msgid "Sales Order Default Shipment"
+msgid "Sales Order Reference Pattern"
msgstr ""
#: common/models.py:1507
-msgid "Enable creation of default shipment with sales orders"
+msgid "Required pattern for generating Sales Order reference field"
msgstr ""
#: common/models.py:1513
-msgid "Edit Completed Sales Orders"
+msgid "Sales Order Default Shipment"
msgstr ""
#: common/models.py:1514
-msgid "Allow editing of sales orders after they have been shipped or completed"
+msgid "Enable creation of default shipment with sales orders"
msgstr ""
#: common/models.py:1520
-msgid "Purchase Order Reference Pattern"
+msgid "Edit Completed Sales Orders"
msgstr ""
#: common/models.py:1521
-msgid "Required pattern for generating Purchase Order reference field"
+msgid "Allow editing of sales orders after they have been shipped or completed"
msgstr ""
#: common/models.py:1527
-msgid "Edit Completed Purchase Orders"
+msgid "Purchase Order Reference Pattern"
msgstr ""
#: common/models.py:1528
-msgid "Allow editing of purchase orders after they have been shipped or completed"
+msgid "Required pattern for generating Purchase Order reference field"
+msgstr ""
+
+#: common/models.py:1534
+msgid "Edit Completed Purchase Orders"
msgstr ""
#: common/models.py:1535
-msgid "Enable password forgot"
-msgstr ""
-
-#: common/models.py:1536
-msgid "Enable password forgot function on the login pages"
+msgid "Allow editing of purchase orders after they have been shipped or completed"
msgstr ""
#: common/models.py:1542
-msgid "Enable registration"
+msgid "Enable password forgot"
msgstr ""
#: common/models.py:1543
-msgid "Enable self-registration for users on the login pages"
+msgid "Enable password forgot function on the login pages"
msgstr ""
#: common/models.py:1549
-msgid "Enable SSO"
+msgid "Enable registration"
msgstr ""
#: common/models.py:1550
-msgid "Enable SSO on the login pages"
+msgid "Enable self-registration for users on the login pages"
msgstr ""
#: common/models.py:1556
-msgid "Enable SSO registration"
+msgid "Enable SSO"
msgstr ""
#: common/models.py:1557
-msgid "Enable self-registration via SSO for users on the login pages"
+msgid "Enable SSO on the login pages"
msgstr ""
#: common/models.py:1563
-msgid "Email required"
+msgid "Enable SSO registration"
msgstr ""
#: common/models.py:1564
-msgid "Require user to supply mail on signup"
+msgid "Enable self-registration via SSO for users on the login pages"
msgstr ""
#: common/models.py:1570
-msgid "Auto-fill SSO users"
+msgid "Email required"
msgstr ""
#: common/models.py:1571
-msgid "Automatically fill out user-details from SSO account-data"
+msgid "Require user to supply mail on signup"
msgstr ""
#: common/models.py:1577
-msgid "Mail twice"
+msgid "Auto-fill SSO users"
msgstr ""
#: common/models.py:1578
-msgid "On signup ask users twice for their mail"
+msgid "Automatically fill out user-details from SSO account-data"
msgstr ""
#: common/models.py:1584
-msgid "Password twice"
+msgid "Mail twice"
msgstr ""
#: common/models.py:1585
-msgid "On signup ask users twice for their password"
+msgid "On signup ask users twice for their mail"
msgstr ""
#: common/models.py:1591
-msgid "Allowed domains"
+msgid "Password twice"
msgstr ""
#: common/models.py:1592
-msgid "Restrict signup to certain domains (comma-separated, starting with @)"
+msgid "On signup ask users twice for their password"
msgstr ""
#: common/models.py:1598
-msgid "Group on signup"
+msgid "Allowed domains"
msgstr ""
#: common/models.py:1599
-msgid "Group to which new users are assigned on registration"
+msgid "Restrict signup to certain domains (comma-separated, starting with @)"
msgstr ""
#: common/models.py:1605
-msgid "Enforce MFA"
+msgid "Group on signup"
msgstr ""
#: common/models.py:1606
-msgid "Users must use multifactor security."
+msgid "Group to which new users are assigned on registration"
msgstr ""
#: common/models.py:1612
-msgid "Check plugins on startup"
+msgid "Enforce MFA"
msgstr ""
#: common/models.py:1613
-msgid "Check that all plugins are installed on startup - enable in container environments"
+msgid "Users must use multifactor security."
+msgstr ""
+
+#: common/models.py:1619
+msgid "Check plugins on startup"
msgstr ""
#: common/models.py:1620
-msgid "Check plugin signatures"
-msgstr ""
-
-#: common/models.py:1621
-msgid "Check and show signatures for plugins"
+msgid "Check that all plugins are installed on startup - enable in container environments"
msgstr ""
#: common/models.py:1628
@@ -2850,7 +2843,7 @@ msgstr ""
msgid "Stocktake reports will be deleted after specified number of days"
msgstr ""
-#: common/models.py:1710 common/models.py:2147
+#: common/models.py:1710 common/models.py:2133
msgid "Settings key (must be unique - case insensitive"
msgstr ""
@@ -2891,528 +2884,513 @@ msgid "Show latest parts on the homepage"
msgstr ""
#: common/models.py:1779
-msgid "Recent Part Count"
-msgstr ""
-
-#: common/models.py:1780
-msgid "Number of recent parts to display on index page"
-msgstr ""
-
-#: common/models.py:1786
msgid "Show unvalidated BOMs"
msgstr ""
-#: common/models.py:1787
+#: common/models.py:1780
msgid "Show BOMs that await validation on the homepage"
msgstr ""
-#: common/models.py:1793
+#: common/models.py:1786
msgid "Show recent stock changes"
msgstr ""
-#: common/models.py:1794
+#: common/models.py:1787
msgid "Show recently changed stock items on the homepage"
msgstr ""
-#: common/models.py:1800
-msgid "Recent Stock Count"
-msgstr ""
-
-#: common/models.py:1801
-msgid "Number of recent stock items to display on index page"
-msgstr ""
-
-#: common/models.py:1807
+#: common/models.py:1793
msgid "Show low stock"
msgstr ""
-#: common/models.py:1808
+#: common/models.py:1794
msgid "Show low stock items on the homepage"
msgstr ""
-#: common/models.py:1814
+#: common/models.py:1800
msgid "Show depleted stock"
msgstr ""
-#: common/models.py:1815
+#: common/models.py:1801
msgid "Show depleted stock items on the homepage"
msgstr ""
-#: common/models.py:1821
+#: common/models.py:1807
msgid "Show needed stock"
msgstr ""
-#: common/models.py:1822
+#: common/models.py:1808
msgid "Show stock items needed for builds on the homepage"
msgstr ""
-#: common/models.py:1828
+#: common/models.py:1814
msgid "Show expired stock"
msgstr ""
-#: common/models.py:1829
+#: common/models.py:1815
msgid "Show expired stock items on the homepage"
msgstr ""
-#: common/models.py:1835
+#: common/models.py:1821
msgid "Show stale stock"
msgstr ""
-#: common/models.py:1836
+#: common/models.py:1822
msgid "Show stale stock items on the homepage"
msgstr ""
-#: common/models.py:1842
+#: common/models.py:1828
msgid "Show pending builds"
msgstr ""
-#: common/models.py:1843
+#: common/models.py:1829
msgid "Show pending builds on the homepage"
msgstr ""
-#: common/models.py:1849
+#: common/models.py:1835
msgid "Show overdue builds"
msgstr ""
-#: common/models.py:1850
+#: common/models.py:1836
msgid "Show overdue builds on the homepage"
msgstr ""
-#: common/models.py:1856
+#: common/models.py:1842
msgid "Show outstanding POs"
msgstr ""
-#: common/models.py:1857
+#: common/models.py:1843
msgid "Show outstanding POs on the homepage"
msgstr ""
-#: common/models.py:1863
+#: common/models.py:1849
msgid "Show overdue POs"
msgstr ""
-#: common/models.py:1864
+#: common/models.py:1850
msgid "Show overdue POs on the homepage"
msgstr ""
-#: common/models.py:1870
+#: common/models.py:1856
msgid "Show outstanding SOs"
msgstr ""
-#: common/models.py:1871
+#: common/models.py:1857
msgid "Show outstanding SOs on the homepage"
msgstr ""
-#: common/models.py:1877
+#: common/models.py:1863
msgid "Show overdue SOs"
msgstr ""
-#: common/models.py:1878
+#: common/models.py:1864
msgid "Show overdue SOs on the homepage"
msgstr ""
-#: common/models.py:1884
+#: common/models.py:1870
msgid "Show pending SO shipments"
msgstr ""
-#: common/models.py:1885
+#: common/models.py:1871
msgid "Show pending SO shipments on the homepage"
msgstr ""
-#: common/models.py:1891
+#: common/models.py:1877
msgid "Show News"
msgstr ""
-#: common/models.py:1892
+#: common/models.py:1878
msgid "Show news on the homepage"
msgstr ""
-#: common/models.py:1898
+#: common/models.py:1884
msgid "Inline label display"
msgstr ""
-#: common/models.py:1899
+#: common/models.py:1885
msgid "Display PDF labels in the browser, instead of downloading as a file"
msgstr ""
-#: common/models.py:1905
+#: common/models.py:1891
msgid "Default label printer"
msgstr ""
-#: common/models.py:1906
+#: common/models.py:1892
msgid "Configure which label printer should be selected by default"
msgstr ""
-#: common/models.py:1912
+#: common/models.py:1898
msgid "Inline report display"
msgstr ""
-#: common/models.py:1913
+#: common/models.py:1899
msgid "Display PDF reports in the browser, instead of downloading as a file"
msgstr ""
-#: common/models.py:1919
+#: common/models.py:1905
msgid "Search Parts"
msgstr ""
-#: common/models.py:1920
+#: common/models.py:1906
msgid "Display parts in search preview window"
msgstr ""
-#: common/models.py:1926
+#: common/models.py:1912
msgid "Search Supplier Parts"
msgstr ""
-#: common/models.py:1927
+#: common/models.py:1913
msgid "Display supplier parts in search preview window"
msgstr ""
-#: common/models.py:1933
+#: common/models.py:1919
msgid "Search Manufacturer Parts"
msgstr ""
-#: common/models.py:1934
+#: common/models.py:1920
msgid "Display manufacturer parts in search preview window"
msgstr ""
-#: common/models.py:1940
+#: common/models.py:1926
msgid "Hide Inactive Parts"
msgstr ""
-#: common/models.py:1941
+#: common/models.py:1927
msgid "Excluded inactive parts from search preview window"
msgstr ""
-#: common/models.py:1947
+#: common/models.py:1933
msgid "Search Categories"
msgstr ""
-#: common/models.py:1948
+#: common/models.py:1934
msgid "Display part categories in search preview window"
msgstr ""
-#: common/models.py:1954
+#: common/models.py:1940
msgid "Search Stock"
msgstr ""
-#: common/models.py:1955
+#: common/models.py:1941
msgid "Display stock items in search preview window"
msgstr ""
-#: common/models.py:1961
+#: common/models.py:1947
msgid "Hide Unavailable Stock Items"
msgstr ""
-#: common/models.py:1962
+#: common/models.py:1948
msgid "Exclude stock items which are not available from the search preview window"
msgstr ""
-#: common/models.py:1968
+#: common/models.py:1954
msgid "Search Locations"
msgstr ""
-#: common/models.py:1969
+#: common/models.py:1955
msgid "Display stock locations in search preview window"
msgstr ""
-#: common/models.py:1975
+#: common/models.py:1961
msgid "Search Companies"
msgstr ""
-#: common/models.py:1976
+#: common/models.py:1962
msgid "Display companies in search preview window"
msgstr ""
-#: common/models.py:1982
+#: common/models.py:1968
msgid "Search Build Orders"
msgstr ""
-#: common/models.py:1983
+#: common/models.py:1969
msgid "Display build orders in search preview window"
msgstr ""
-#: common/models.py:1989
+#: common/models.py:1975
msgid "Search Purchase Orders"
msgstr ""
-#: common/models.py:1990
+#: common/models.py:1976
msgid "Display purchase orders in search preview window"
msgstr ""
-#: common/models.py:1996
+#: common/models.py:1982
msgid "Exclude Inactive Purchase Orders"
msgstr ""
-#: common/models.py:1997
+#: common/models.py:1983
msgid "Exclude inactive purchase orders from search preview window"
msgstr ""
-#: common/models.py:2003
+#: common/models.py:1989
msgid "Search Sales Orders"
msgstr ""
-#: common/models.py:2004
+#: common/models.py:1990
msgid "Display sales orders in search preview window"
msgstr ""
-#: common/models.py:2010
+#: common/models.py:1996
msgid "Exclude Inactive Sales Orders"
msgstr ""
-#: common/models.py:2011
+#: common/models.py:1997
msgid "Exclude inactive sales orders from search preview window"
msgstr ""
-#: common/models.py:2017
+#: common/models.py:2003
msgid "Search Return Orders"
msgstr ""
-#: common/models.py:2018
+#: common/models.py:2004
msgid "Display return orders in search preview window"
msgstr ""
-#: common/models.py:2024
+#: common/models.py:2010
msgid "Exclude Inactive Return Orders"
msgstr ""
-#: common/models.py:2025
+#: common/models.py:2011
msgid "Exclude inactive return orders from search preview window"
msgstr ""
-#: common/models.py:2031
+#: common/models.py:2017
msgid "Search Preview Results"
msgstr ""
-#: common/models.py:2032
+#: common/models.py:2018
msgid "Number of results to show in each section of the search preview window"
msgstr ""
-#: common/models.py:2038
+#: common/models.py:2024
msgid "Regex Search"
msgstr ""
-#: common/models.py:2039
+#: common/models.py:2025
msgid "Enable regular expressions in search queries"
msgstr ""
-#: common/models.py:2045
+#: common/models.py:2031
msgid "Whole Word Search"
msgstr ""
-#: common/models.py:2046
+#: common/models.py:2032
msgid "Search queries return results for whole word matches"
msgstr ""
-#: common/models.py:2052
+#: common/models.py:2038
msgid "Show Quantity in Forms"
msgstr ""
-#: common/models.py:2053
+#: common/models.py:2039
msgid "Display available part quantity in some forms"
msgstr ""
-#: common/models.py:2059
+#: common/models.py:2045
msgid "Escape Key Closes Forms"
msgstr ""
-#: common/models.py:2060
+#: common/models.py:2046
msgid "Use the escape key to close modal forms"
msgstr ""
-#: common/models.py:2066
+#: common/models.py:2052
msgid "Fixed Navbar"
msgstr ""
-#: common/models.py:2067
+#: common/models.py:2053
msgid "The navbar position is fixed to the top of the screen"
msgstr ""
-#: common/models.py:2073
+#: common/models.py:2059
msgid "Date Format"
msgstr ""
-#: common/models.py:2074
+#: common/models.py:2060
msgid "Preferred format for displaying dates"
msgstr ""
-#: common/models.py:2088 part/templates/part/detail.html:41
+#: common/models.py:2074 part/templates/part/detail.html:41
msgid "Part Scheduling"
msgstr ""
-#: common/models.py:2089
+#: common/models.py:2075
msgid "Display part scheduling information"
msgstr ""
-#: common/models.py:2095 part/templates/part/detail.html:62
+#: common/models.py:2081 part/templates/part/detail.html:62
msgid "Part Stocktake"
msgstr ""
-#: common/models.py:2096
+#: common/models.py:2082
msgid "Display part stocktake information (if stocktake functionality is enabled)"
msgstr ""
-#: common/models.py:2102
+#: common/models.py:2088
msgid "Table String Length"
msgstr ""
-#: common/models.py:2103
+#: common/models.py:2089
msgid "Maximimum length limit for strings displayed in table views"
msgstr ""
-#: common/models.py:2112
+#: common/models.py:2098
msgid "Default part label template"
msgstr ""
-#: common/models.py:2113
+#: common/models.py:2099
msgid "The part label template to be automatically selected"
msgstr ""
-#: common/models.py:2121
+#: common/models.py:2107
msgid "Default stock item template"
msgstr ""
-#: common/models.py:2122
+#: common/models.py:2108
msgid "The stock item label template to be automatically selected"
msgstr ""
-#: common/models.py:2130
+#: common/models.py:2116
msgid "Default stock location label template"
msgstr ""
-#: common/models.py:2131
+#: common/models.py:2117
msgid "The stock location label template to be automatically selected"
msgstr ""
-#: common/models.py:2177
+#: common/models.py:2163
msgid "Price break quantity"
msgstr ""
-#: common/models.py:2184 company/serializers.py:434 order/admin.py:43
-#: order/models.py:1132 order/models.py:1939
-#: templates/js/translated/company.js:1433 templates/js/translated/part.js:1856
+#: common/models.py:2170 company/serializers.py:491 order/admin.py:43
+#: order/models.py:1145 order/models.py:1952
+#: templates/js/translated/company.js:1854 templates/js/translated/part.js:1855
#: templates/js/translated/pricing.js:621
-#: templates/js/translated/return_order.js:725
+#: templates/js/translated/return_order.js:737
msgid "Price"
msgstr ""
-#: common/models.py:2185
+#: common/models.py:2171
msgid "Unit price at specified quantity"
msgstr ""
-#: common/models.py:2345 common/models.py:2523
+#: common/models.py:2331 common/models.py:2509
msgid "Endpoint"
msgstr ""
-#: common/models.py:2346
+#: common/models.py:2332
msgid "Endpoint at which this webhook is received"
msgstr ""
-#: common/models.py:2355
+#: common/models.py:2341
msgid "Name for this webhook"
msgstr ""
-#: common/models.py:2360 part/admin.py:50 part/models.py:1023
-#: plugin/models.py:47 templates/js/translated/table_filters.js:105
-#: templates/js/translated/table_filters.js:189
-#: templates/js/translated/table_filters.js:434
-#: templates/js/translated/table_filters.js:450
-#: templates/js/translated/table_filters.js:629
+#: common/models.py:2346 part/admin.py:50 part/models.py:1024
+#: plugin/models.py:48 templates/js/translated/table_filters.js:111
+#: templates/js/translated/table_filters.js:195
+#: templates/js/translated/table_filters.js:440
+#: templates/js/translated/table_filters.js:456
+#: templates/js/translated/table_filters.js:651
msgid "Active"
msgstr ""
-#: common/models.py:2361
+#: common/models.py:2347
msgid "Is this webhook active"
msgstr ""
-#: common/models.py:2375
+#: common/models.py:2361
msgid "Token"
msgstr ""
-#: common/models.py:2376
+#: common/models.py:2362
msgid "Token for access"
msgstr ""
-#: common/models.py:2383
+#: common/models.py:2369
msgid "Secret"
msgstr ""
-#: common/models.py:2384
+#: common/models.py:2370
msgid "Shared secret for HMAC"
msgstr ""
-#: common/models.py:2490
+#: common/models.py:2476
msgid "Message ID"
msgstr ""
-#: common/models.py:2491
+#: common/models.py:2477
msgid "Unique identifier for this message"
msgstr ""
-#: common/models.py:2499
+#: common/models.py:2485
msgid "Host"
msgstr ""
-#: common/models.py:2500
+#: common/models.py:2486
msgid "Host from which this message was received"
msgstr ""
-#: common/models.py:2507
+#: common/models.py:2493
msgid "Header"
msgstr ""
-#: common/models.py:2508
+#: common/models.py:2494
msgid "Header of this message"
msgstr ""
-#: common/models.py:2514
+#: common/models.py:2500
msgid "Body"
msgstr ""
-#: common/models.py:2515
+#: common/models.py:2501
msgid "Body of this message"
msgstr ""
-#: common/models.py:2524
+#: common/models.py:2510
msgid "Endpoint on which this message was received"
msgstr ""
-#: common/models.py:2529
+#: common/models.py:2515
msgid "Worked on"
msgstr ""
-#: common/models.py:2530
+#: common/models.py:2516
msgid "Was the work on this message finished?"
msgstr ""
-#: common/models.py:2684
+#: common/models.py:2670
msgid "Id"
msgstr ""
-#: common/models.py:2690 templates/js/translated/news.js:44
+#: common/models.py:2676 templates/js/translated/company.js:996
+#: templates/js/translated/news.js:44
msgid "Title"
msgstr ""
-#: common/models.py:2700 templates/js/translated/news.js:60
+#: common/models.py:2686 templates/js/translated/news.js:60
msgid "Published"
msgstr ""
-#: common/models.py:2705 templates/InvenTree/settings/plugin_settings.html:32
+#: common/models.py:2691 templates/InvenTree/settings/plugin_settings.html:32
#: templates/js/translated/news.js:56 templates/js/translated/plugin.js:106
msgid "Author"
msgstr ""
-#: common/models.py:2710 templates/js/translated/news.js:52
+#: common/models.py:2696 templates/js/translated/news.js:52
msgid "Summary"
msgstr ""
-#: common/models.py:2715
+#: common/models.py:2701
msgid "Read"
msgstr ""
-#: common/models.py:2716
+#: common/models.py:2702
msgid "Was this news item read?"
msgstr ""
-#: common/models.py:2736 company/models.py:143 part/models.py:914
+#: common/models.py:2722 company/models.py:139 part/models.py:915
#: report/templates/report/inventree_bill_of_materials_report.html:126
#: report/templates/report/inventree_bill_of_materials_report.html:148
#: report/templates/report/inventree_return_order_report_base.html:35
@@ -3422,7 +3400,7 @@ msgstr ""
msgid "Image"
msgstr ""
-#: common/models.py:2737
+#: common/models.py:2723
msgid "Image file"
msgstr ""
@@ -3499,7 +3477,7 @@ msgstr ""
#: company/models.py:113 company/templates/company/company_base.html:101
#: templates/InvenTree/settings/plugin_settings.html:54
-#: templates/js/translated/company.js:514
+#: templates/js/translated/company.js:521
msgid "Website"
msgstr ""
@@ -3507,303 +3485,387 @@ msgstr ""
msgid "Company website URL"
msgstr ""
-#: company/models.py:118 company/templates/company/company_base.html:119
-msgid "Address"
-msgstr ""
-
-#: company/models.py:119
-msgid "Company address"
-msgstr ""
-
-#: company/models.py:122
+#: company/models.py:118
msgid "Phone number"
msgstr ""
-#: company/models.py:123
+#: company/models.py:119
msgid "Contact phone number"
msgstr ""
-#: company/models.py:126 company/templates/company/company_base.html:133
+#: company/models.py:122 company/templates/company/company_base.html:133
#: templates/InvenTree/settings/user.html:49
-#: templates/js/translated/company.js:659
+#: templates/js/translated/company.js:666
msgid "Email"
msgstr ""
-#: company/models.py:126
+#: company/models.py:122
msgid "Contact email address"
msgstr ""
-#: company/models.py:129 company/templates/company/company_base.html:140
-#: order/models.py:266 order/templates/order/order_base.html:207
+#: company/models.py:125 company/templates/company/company_base.html:140
+#: order/models.py:270 order/templates/order/order_base.html:203
#: order/templates/order/return_order_base.html:175
#: order/templates/order/sales_order_base.html:215
msgid "Contact"
msgstr ""
-#: company/models.py:130
+#: company/models.py:126
msgid "Point of contact"
msgstr ""
-#: company/models.py:132
+#: company/models.py:128
msgid "Link to external company information"
msgstr ""
-#: company/models.py:146
+#: company/models.py:142
msgid "is customer"
msgstr ""
-#: company/models.py:146
+#: company/models.py:142
msgid "Do you sell items to this company?"
msgstr ""
-#: company/models.py:148
+#: company/models.py:144
msgid "is supplier"
msgstr ""
-#: company/models.py:148
+#: company/models.py:144
msgid "Do you purchase items from this company?"
msgstr ""
-#: company/models.py:150
+#: company/models.py:146
msgid "is manufacturer"
msgstr ""
-#: company/models.py:150
+#: company/models.py:146
msgid "Does this company manufacture parts?"
msgstr ""
-#: company/models.py:157
+#: company/models.py:153
msgid "Default currency used for this company"
msgstr ""
-#: company/models.py:223 company/templates/company/company_base.html:8
+#: company/models.py:235 company/models.py:328
+#: company/templates/company/company_base.html:8
#: company/templates/company/company_base.html:12
-#: templates/InvenTree/search.html:178 templates/js/translated/company.js:487
+#: templates/InvenTree/search.html:178 templates/js/translated/company.js:494
msgid "Company"
msgstr ""
-#: company/models.py:278 company/models.py:553 stock/models.py:675
-#: stock/serializers.py:155 stock/templates/stock/item_base.html:143
-#: templates/js/translated/bom.js:621
+#: company/models.py:324
+msgid "Company already has a primary address"
+msgstr ""
+
+#: company/models.py:329
+msgid "Select company"
+msgstr ""
+
+#: company/models.py:332
+msgid "Address title"
+msgstr ""
+
+#: company/models.py:333
+msgid "Title describing the address entry"
+msgstr ""
+
+#: company/models.py:337
+msgid "Primary address"
+msgstr ""
+
+#: company/models.py:338
+msgid "Set as primary address"
+msgstr ""
+
+#: company/models.py:341 templates/js/translated/company.js:941
+#: templates/js/translated/company.js:1002
+msgid "Line 1"
+msgstr ""
+
+#: company/models.py:342
+msgid "Address line 1"
+msgstr ""
+
+#: company/models.py:346 templates/js/translated/company.js:942
+#: templates/js/translated/company.js:1008
+msgid "Line 2"
+msgstr ""
+
+#: company/models.py:347
+msgid "Address line 2"
+msgstr ""
+
+#: company/models.py:351 company/models.py:352
+#: templates/js/translated/company.js:1014
+msgid "Postal code"
+msgstr ""
+
+#: company/models.py:356
+msgid "City/Region"
+msgstr ""
+
+#: company/models.py:357
+msgid "Postal code city/region"
+msgstr ""
+
+#: company/models.py:361
+msgid "State/Province"
+msgstr ""
+
+#: company/models.py:362
+msgid "State or province"
+msgstr ""
+
+#: company/models.py:366 templates/js/translated/company.js:1032
+msgid "Country"
+msgstr ""
+
+#: company/models.py:367
+msgid "Address country"
+msgstr ""
+
+#: company/models.py:371
+msgid "Courier shipping notes"
+msgstr ""
+
+#: company/models.py:372
+msgid "Notes for shipping courier"
+msgstr ""
+
+#: company/models.py:376
+msgid "Internal shipping notes"
+msgstr ""
+
+#: company/models.py:377
+msgid "Shipping notes for internal use"
+msgstr ""
+
+#: company/models.py:382
+msgid "Link to address information (external)"
+msgstr ""
+
+#: company/models.py:427 company/models.py:702 stock/models.py:675
+#: stock/serializers.py:204 stock/templates/stock/item_base.html:143
+#: templates/js/translated/bom.js:622
msgid "Base Part"
msgstr ""
-#: company/models.py:282 company/models.py:557
+#: company/models.py:431 company/models.py:706
msgid "Select part"
msgstr ""
-#: company/models.py:293 company/templates/company/company_base.html:77
+#: company/models.py:442 company/templates/company/company_base.html:77
#: company/templates/company/manufacturer_part.html:90
-#: company/templates/company/supplier_part.html:146 part/serializers.py:354
+#: company/templates/company/supplier_part.html:146 part/serializers.py:404
#: stock/templates/stock/item_base.html:208
-#: templates/js/translated/company.js:498
-#: templates/js/translated/company.js:824
-#: templates/js/translated/company.js:954
-#: templates/js/translated/company.js:1221
-#: templates/js/translated/table_filters.js:709
+#: templates/js/translated/company.js:505
+#: templates/js/translated/company.js:1149
+#: templates/js/translated/company.js:1327
+#: templates/js/translated/company.js:1642
+#: templates/js/translated/table_filters.js:731
msgid "Manufacturer"
msgstr ""
-#: company/models.py:294
+#: company/models.py:443
msgid "Select manufacturer"
msgstr ""
-#: company/models.py:300 company/templates/company/manufacturer_part.html:101
-#: company/templates/company/supplier_part.html:154 part/serializers.py:360
-#: templates/js/translated/company.js:340
-#: templates/js/translated/company.js:823
-#: templates/js/translated/company.js:970
-#: templates/js/translated/company.js:1240 templates/js/translated/part.js:1773
-#: templates/js/translated/purchase_order.js:1814
-#: templates/js/translated/purchase_order.js:2021
+#: company/models.py:449 company/templates/company/manufacturer_part.html:101
+#: company/templates/company/supplier_part.html:154 part/serializers.py:410
+#: templates/js/translated/company.js:350
+#: templates/js/translated/company.js:1148
+#: templates/js/translated/company.js:1343
+#: templates/js/translated/company.js:1661 templates/js/translated/part.js:1772
+#: templates/js/translated/purchase_order.js:1829
+#: templates/js/translated/purchase_order.js:2031
msgid "MPN"
msgstr ""
-#: company/models.py:301
+#: company/models.py:450
msgid "Manufacturer Part Number"
msgstr ""
-#: company/models.py:307
+#: company/models.py:456
msgid "URL for external manufacturer part link"
msgstr ""
-#: company/models.py:313
+#: company/models.py:462
msgid "Manufacturer part description"
msgstr ""
-#: company/models.py:360 company/models.py:384 company/models.py:578
+#: company/models.py:509 company/models.py:533 company/models.py:727
#: company/templates/company/manufacturer_part.html:7
#: company/templates/company/manufacturer_part.html:24
#: stock/templates/stock/item_base.html:218
msgid "Manufacturer Part"
msgstr ""
-#: company/models.py:391
+#: company/models.py:540
msgid "Parameter name"
msgstr ""
-#: company/models.py:397
+#: company/models.py:546
#: report/templates/report/inventree_test_report_base.html:104
-#: stock/models.py:2255 templates/js/translated/company.js:872
-#: templates/js/translated/company.js:1077 templates/js/translated/part.js:1465
-#: templates/js/translated/stock.js:1446
+#: stock/models.py:2255 templates/js/translated/company.js:1197
+#: templates/js/translated/company.js:1450 templates/js/translated/part.js:1464
+#: templates/js/translated/stock.js:1445
msgid "Value"
msgstr ""
-#: company/models.py:398
+#: company/models.py:547
msgid "Parameter value"
msgstr ""
-#: company/models.py:404 company/templates/company/supplier_part.html:169
-#: part/admin.py:40 part/models.py:987 part/models.py:3407
+#: company/models.py:553 company/templates/company/supplier_part.html:169
+#: part/admin.py:40 part/models.py:988 part/models.py:3441
#: part/templates/part/part_base.html:286
-#: templates/js/translated/company.js:1083 templates/js/translated/part.js:1484
-#: templates/js/translated/part.js:1588 templates/js/translated/part.js:2262
+#: templates/js/translated/company.js:1456 templates/js/translated/part.js:1483
+#: templates/js/translated/part.js:1587 templates/js/translated/part.js:2338
msgid "Units"
msgstr ""
-#: company/models.py:405
+#: company/models.py:554
msgid "Parameter units"
msgstr ""
-#: company/models.py:498
+#: company/models.py:647
msgid "Pack units must be compatible with the base part units"
msgstr ""
-#: company/models.py:504
+#: company/models.py:653
msgid "Pack units must be greater than zero"
msgstr ""
-#: company/models.py:520
+#: company/models.py:669
msgid "Linked manufacturer part must reference the same base part"
msgstr ""
-#: company/models.py:564 company/templates/company/company_base.html:82
-#: company/templates/company/supplier_part.html:130 order/models.py:382
-#: order/templates/order/order_base.html:140 part/bom.py:285 part/bom.py:313
-#: part/serializers.py:343 stock/templates/stock/item_base.html:225
+#: company/models.py:713 company/templates/company/company_base.html:82
+#: company/templates/company/supplier_part.html:130 order/models.py:395
+#: order/templates/order/order_base.html:136 part/bom.py:285 part/bom.py:313
+#: part/serializers.py:393 stock/templates/stock/item_base.html:225
#: templates/email/overdue_purchase_order.html:16
-#: templates/js/translated/company.js:339
-#: templates/js/translated/company.js:502
-#: templates/js/translated/company.js:1194 templates/js/translated/part.js:1741
+#: templates/js/translated/company.js:349
+#: templates/js/translated/company.js:509
+#: templates/js/translated/company.js:1615 templates/js/translated/part.js:1740
#: templates/js/translated/pricing.js:498
-#: templates/js/translated/purchase_order.js:1653
-#: templates/js/translated/table_filters.js:713
+#: templates/js/translated/purchase_order.js:1668
+#: templates/js/translated/table_filters.js:735
msgid "Supplier"
msgstr ""
-#: company/models.py:565
+#: company/models.py:714
msgid "Select supplier"
msgstr ""
-#: company/models.py:570 company/templates/company/supplier_part.html:140
-#: part/bom.py:286 part/bom.py:314 part/serializers.py:349
-#: templates/js/translated/company.js:338 templates/js/translated/part.js:1759
+#: company/models.py:719 company/templates/company/supplier_part.html:140
+#: part/bom.py:286 part/bom.py:314 part/serializers.py:399
+#: templates/js/translated/company.js:348 templates/js/translated/part.js:1758
#: templates/js/translated/pricing.js:510
-#: templates/js/translated/purchase_order.js:1813
-#: templates/js/translated/purchase_order.js:1996
+#: templates/js/translated/purchase_order.js:1828
+#: templates/js/translated/purchase_order.js:2006
msgid "SKU"
msgstr ""
-#: company/models.py:571 part/serializers.py:349
+#: company/models.py:720 part/serializers.py:399
msgid "Supplier stock keeping unit"
msgstr ""
-#: company/models.py:579
+#: company/models.py:728
msgid "Select manufacturer part"
msgstr ""
-#: company/models.py:585
+#: company/models.py:734
msgid "URL for external supplier part link"
msgstr ""
-#: company/models.py:591
+#: company/models.py:740
msgid "Supplier part description"
msgstr ""
-#: company/models.py:596 company/templates/company/supplier_part.html:188
-#: part/admin.py:279 part/models.py:3801 part/templates/part/upload_bom.html:59
+#: company/models.py:745 company/templates/company/supplier_part.html:188
+#: part/admin.py:279 part/models.py:3845 part/templates/part/upload_bom.html:59
#: report/templates/report/inventree_bill_of_materials_report.html:140
#: report/templates/report/inventree_po_report_base.html:32
#: report/templates/report/inventree_return_order_report_base.html:27
#: report/templates/report/inventree_so_report_base.html:32
-#: stock/serializers.py:418
+#: stock/serializers.py:484
msgid "Note"
msgstr ""
-#: company/models.py:600 part/models.py:1919
+#: company/models.py:749 part/models.py:1921
msgid "base cost"
msgstr ""
-#: company/models.py:600 part/models.py:1919
+#: company/models.py:749 part/models.py:1921
msgid "Minimum charge (e.g. stocking fee)"
msgstr ""
-#: company/models.py:602 company/templates/company/supplier_part.html:161
+#: company/models.py:751 company/templates/company/supplier_part.html:161
#: stock/admin.py:119 stock/models.py:701
#: stock/templates/stock/item_base.html:241
-#: templates/js/translated/company.js:1256
-#: templates/js/translated/stock.js:2160
+#: templates/js/translated/company.js:1677
+#: templates/js/translated/stock.js:2317
msgid "Packaging"
msgstr ""
-#: company/models.py:602
+#: company/models.py:751
msgid "Part packaging"
msgstr ""
-#: company/models.py:606 templates/js/translated/company.js:1261
-#: templates/js/translated/part.js:1793 templates/js/translated/part.js:1848
-#: templates/js/translated/purchase_order.js:300
-#: templates/js/translated/purchase_order.js:827
-#: templates/js/translated/purchase_order.js:1073
-#: templates/js/translated/purchase_order.js:2052
-#: templates/js/translated/purchase_order.js:2069
+#: company/models.py:755 templates/js/translated/company.js:1682
+#: templates/js/translated/part.js:1792 templates/js/translated/part.js:1847
+#: templates/js/translated/purchase_order.js:311
+#: templates/js/translated/purchase_order.js:842
+#: templates/js/translated/purchase_order.js:1088
+#: templates/js/translated/purchase_order.js:2062
+#: templates/js/translated/purchase_order.js:2079
msgid "Pack Quantity"
msgstr ""
-#: company/models.py:607
+#: company/models.py:756
msgid "Total quantity supplied in a single pack. Leave empty for single items."
msgstr ""
-#: company/models.py:624 part/models.py:1921
+#: company/models.py:773 part/models.py:1923
msgid "multiple"
msgstr ""
-#: company/models.py:624
+#: company/models.py:773
msgid "Order multiple"
msgstr ""
-#: company/models.py:632 company/templates/company/supplier_part.html:115
+#: company/models.py:781 company/templates/company/supplier_part.html:115
#: templates/email/build_order_required_stock.html:19
#: templates/email/low_stock_notification.html:17
-#: templates/js/translated/bom.js:1127 templates/js/translated/build.js:2136
-#: templates/js/translated/build.js:3045
-#: templates/js/translated/model_renderers.js:205
-#: templates/js/translated/part.js:670 templates/js/translated/part.js:672
-#: templates/js/translated/part.js:677
-#: templates/js/translated/table_filters.js:286
-#: templates/js/translated/table_filters.js:492
+#: templates/js/translated/bom.js:1145 templates/js/translated/build.js:2490
+#: templates/js/translated/index.js:118
+#: templates/js/translated/model_renderers.js:219
+#: templates/js/translated/part.js:669 templates/js/translated/part.js:671
+#: templates/js/translated/part.js:676
+#: templates/js/translated/table_filters.js:292
+#: templates/js/translated/table_filters.js:510
msgid "Available"
msgstr ""
-#: company/models.py:633
+#: company/models.py:782
msgid "Quantity available from supplier"
msgstr ""
-#: company/models.py:637
+#: company/models.py:786
msgid "Availability Updated"
msgstr ""
-#: company/models.py:638
+#: company/models.py:787
msgid "Date of last update of availability data"
msgstr ""
-#: company/serializers.py:99
+#: company/serializers.py:156
msgid "Default currency used for this supplier"
msgstr ""
#: company/templates/company/company_base.html:22
-#: templates/js/translated/purchase_order.js:228
+#: templates/js/translated/purchase_order.js:239
msgid "Create Purchase Order"
msgstr ""
@@ -3816,7 +3878,7 @@ msgid "Edit company information"
msgstr ""
#: company/templates/company/company_base.html:34
-#: templates/js/translated/company.js:436
+#: templates/js/translated/company.js:443
msgid "Edit Company"
msgstr ""
@@ -3856,17 +3918,17 @@ msgstr ""
msgid "Delete image"
msgstr ""
-#: company/templates/company/company_base.html:87 order/models.py:779
-#: order/models.py:1738 order/templates/order/return_order_base.html:132
+#: company/templates/company/company_base.html:87 order/models.py:792
+#: order/models.py:1751 order/templates/order/return_order_base.html:132
#: order/templates/order/sales_order_base.html:145 stock/models.py:720
-#: stock/models.py:721 stock/serializers.py:825
+#: stock/models.py:721 stock/serializers.py:942
#: stock/templates/stock/item_base.html:401
#: templates/email/overdue_sales_order.html:16
-#: templates/js/translated/company.js:494
-#: templates/js/translated/return_order.js:284
-#: templates/js/translated/sales_order.js:772
-#: templates/js/translated/stock.js:2696
-#: templates/js/translated/table_filters.js:717
+#: templates/js/translated/company.js:501
+#: templates/js/translated/return_order.js:296
+#: templates/js/translated/sales_order.js:784
+#: templates/js/translated/stock.js:2827
+#: templates/js/translated/table_filters.js:739
msgid "Customer"
msgstr ""
@@ -3874,6 +3936,13 @@ msgstr ""
msgid "Uses default currency"
msgstr ""
+#: company/templates/company/company_base.html:119 order/models.py:279
+#: order/templates/order/order_base.html:210
+#: order/templates/order/return_order_base.html:182
+#: order/templates/order/sales_order_base.html:222
+msgid "Address"
+msgstr ""
+
#: company/templates/company/company_base.html:126
msgid "Phone"
msgstr ""
@@ -3906,7 +3975,7 @@ msgstr ""
#: company/templates/company/detail.html:15
#: company/templates/company/manufacturer_part_sidebar.html:7
-#: templates/InvenTree/search.html:120 templates/js/translated/search.js:189
+#: templates/InvenTree/search.html:120 templates/js/translated/search.js:147
msgid "Supplier Parts"
msgstr ""
@@ -3916,129 +3985,121 @@ msgstr ""
#: company/templates/company/detail.html:20
#: company/templates/company/manufacturer_part.html:123
-#: part/templates/part/detail.html:381
+#: part/templates/part/detail.html:356
msgid "New Supplier Part"
msgstr ""
-#: company/templates/company/detail.html:37
-#: company/templates/company/detail.html:85
-#: part/templates/part/category.html:183
-msgid "Order parts"
-msgstr ""
-
-#: company/templates/company/detail.html:42
-#: company/templates/company/detail.html:90
-msgid "Delete parts"
-msgstr ""
-
-#: company/templates/company/detail.html:43
-#: company/templates/company/detail.html:91
-msgid "Delete Parts"
-msgstr ""
-
-#: company/templates/company/detail.html:62 templates/InvenTree/search.html:105
-#: templates/js/translated/search.js:193
+#: company/templates/company/detail.html:41 templates/InvenTree/search.html:105
+#: templates/js/translated/search.js:151
msgid "Manufacturer Parts"
msgstr ""
-#: company/templates/company/detail.html:66
+#: company/templates/company/detail.html:45
msgid "Create new manufacturer part"
msgstr ""
-#: company/templates/company/detail.html:67 part/templates/part/detail.html:411
+#: company/templates/company/detail.html:46 part/templates/part/detail.html:376
msgid "New Manufacturer Part"
msgstr ""
-#: company/templates/company/detail.html:108
+#: company/templates/company/detail.html:65
msgid "Supplier Stock"
msgstr ""
-#: company/templates/company/detail.html:118
+#: company/templates/company/detail.html:75
#: company/templates/company/sidebar.html:12
#: company/templates/company/supplier_part_sidebar.html:7
#: 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:108 part/templates/part/part_sidebar.html:35
-#: templates/InvenTree/index.html:275 templates/InvenTree/search.html:199
+#: part/templates/part/detail.html:106 part/templates/part/part_sidebar.html:35
+#: templates/InvenTree/index.html:227 templates/InvenTree/search.html:199
#: templates/InvenTree/settings/sidebar.html:55
-#: templates/js/translated/search.js:247 templates/navbar.html:50
+#: templates/js/translated/search.js:205 templates/navbar.html:50
#: users/models.py:43
msgid "Purchase Orders"
msgstr ""
-#: company/templates/company/detail.html:122
+#: company/templates/company/detail.html:79
#: order/templates/order/purchase_orders.html:17
msgid "Create new purchase order"
msgstr ""
-#: company/templates/company/detail.html:123
+#: company/templates/company/detail.html:80
#: order/templates/order/purchase_orders.html:18
msgid "New Purchase Order"
msgstr ""
-#: company/templates/company/detail.html:146
+#: company/templates/company/detail.html:101
#: company/templates/company/sidebar.html:21
#: 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:131 part/templates/part/part_sidebar.html:39
-#: templates/InvenTree/index.html:307 templates/InvenTree/search.html:219
+#: part/templates/part/detail.html:127 part/templates/part/part_sidebar.html:39
+#: templates/InvenTree/index.html:259 templates/InvenTree/search.html:219
#: templates/InvenTree/settings/sidebar.html:57
-#: templates/js/translated/search.js:261 templates/navbar.html:62
+#: templates/js/translated/search.js:219 templates/navbar.html:62
#: users/models.py:44
msgid "Sales Orders"
msgstr ""
-#: company/templates/company/detail.html:150
+#: company/templates/company/detail.html:105
#: order/templates/order/sales_orders.html:20
msgid "Create new sales order"
msgstr ""
-#: company/templates/company/detail.html:151
+#: company/templates/company/detail.html:106
#: order/templates/order/sales_orders.html:21
msgid "New Sales Order"
msgstr ""
-#: company/templates/company/detail.html:173
-#: templates/js/translated/build.js:1976
+#: company/templates/company/detail.html:126
msgid "Assigned Stock"
msgstr ""
-#: company/templates/company/detail.html:191
+#: company/templates/company/detail.html:142
#: company/templates/company/sidebar.html:29
#: order/templates/order/return_order_base.html:13
#: order/templates/order/return_orders.html:8
#: order/templates/order/return_orders.html:15
#: templates/InvenTree/settings/sidebar.html:59
-#: templates/js/translated/search.js:274 templates/navbar.html:65
+#: templates/js/translated/search.js:232 templates/navbar.html:65
#: users/models.py:45
msgid "Return Orders"
msgstr ""
-#: company/templates/company/detail.html:195
+#: company/templates/company/detail.html:146
#: order/templates/order/return_orders.html:20
msgid "Create new return order"
msgstr ""
-#: company/templates/company/detail.html:196
+#: company/templates/company/detail.html:147
#: order/templates/order/return_orders.html:21
msgid "New Return Order"
msgstr ""
-#: company/templates/company/detail.html:221
+#: company/templates/company/detail.html:168
msgid "Company Notes"
msgstr ""
-#: company/templates/company/detail.html:236
+#: company/templates/company/detail.html:183
msgid "Company Contacts"
msgstr ""
-#: company/templates/company/detail.html:240
-#: company/templates/company/detail.html:241
+#: company/templates/company/detail.html:187
+#: company/templates/company/detail.html:188
msgid "Add Contact"
msgstr ""
+#: company/templates/company/detail.html:206
+msgid "Company addresses"
+msgstr ""
+
+#: company/templates/company/detail.html:210
+#: company/templates/company/detail.html:211
+msgid "Add Address"
+msgstr ""
+
#: company/templates/company/index.html:8
msgid "Supplier List"
msgstr ""
@@ -4050,17 +4111,17 @@ msgstr ""
#: company/templates/company/manufacturer_part.html:35
#: company/templates/company/supplier_part.html:228
-#: part/templates/part/detail.html:111 part/templates/part/part_base.html:85
+#: part/templates/part/detail.html:109 part/templates/part/part_base.html:85
msgid "Order part"
msgstr ""
#: company/templates/company/manufacturer_part.html:39
-#: templates/js/translated/company.js:1001
+#: templates/js/translated/company.js:1374
msgid "Edit manufacturer part"
msgstr ""
#: company/templates/company/manufacturer_part.html:43
-#: templates/js/translated/company.js:1002
+#: templates/js/translated/company.js:1375
msgid "Delete manufacturer part"
msgstr ""
@@ -4080,40 +4141,22 @@ msgstr ""
msgid "Suppliers"
msgstr ""
-#: company/templates/company/manufacturer_part.html:136
-#: part/templates/part/detail.html:392
-msgid "Delete supplier parts"
-msgstr ""
-
-#: company/templates/company/manufacturer_part.html:136
-#: company/templates/company/manufacturer_part.html:183
-#: part/templates/part/detail.html:393 part/templates/part/detail.html:423
-#: templates/js/translated/forms.js:506 templates/js/translated/helpers.js:105
-#: templates/js/translated/part.js:370 templates/js/translated/pricing.js:629
-#: templates/js/translated/stock.js:216 users/models.py:247
-msgid "Delete"
-msgstr ""
-
-#: company/templates/company/manufacturer_part.html:166
+#: company/templates/company/manufacturer_part.html:156
#: company/templates/company/manufacturer_part_sidebar.html:5
#: part/templates/part/category_sidebar.html:20
-#: part/templates/part/detail.html:208 part/templates/part/part_sidebar.html:8
+#: part/templates/part/detail.html:195 part/templates/part/part_sidebar.html:8
msgid "Parameters"
msgstr ""
-#: company/templates/company/manufacturer_part.html:170
-#: part/templates/part/detail.html:213
+#: company/templates/company/manufacturer_part.html:160
+#: part/templates/part/detail.html:200
#: templates/InvenTree/settings/category.html:12
#: templates/InvenTree/settings/part_parameters.html:12
msgid "New Parameter"
msgstr ""
-#: company/templates/company/manufacturer_part.html:183
-msgid "Delete parameters"
-msgstr ""
-
-#: company/templates/company/manufacturer_part.html:226
-#: templates/js/translated/part.js:1396
+#: company/templates/company/manufacturer_part.html:206
+#: templates/js/translated/part.js:1395
msgid "Add Parameter"
msgstr ""
@@ -4137,23 +4180,28 @@ msgstr ""
msgid "Contacts"
msgstr ""
+#: company/templates/company/sidebar.html:35
+msgid "Addresses"
+msgstr ""
+
#: company/templates/company/supplier_part.html:7
#: company/templates/company/supplier_part.html:24 stock/models.py:684
#: stock/templates/stock/item_base.html:234
-#: templates/js/translated/company.js:1210
-#: templates/js/translated/purchase_order.js:747
-#: templates/js/translated/stock.js:2016
+#: templates/js/translated/company.js:1631
+#: templates/js/translated/purchase_order.js:758
+#: templates/js/translated/stock.js:2173
msgid "Supplier Part"
msgstr ""
#: company/templates/company/supplier_part.html:51
+#: templates/js/translated/company.js:1557
msgid "Supplier part actions"
msgstr ""
#: company/templates/company/supplier_part.html:56
#: company/templates/company/supplier_part.html:57
#: company/templates/company/supplier_part.html:229
-#: part/templates/part/detail.html:112
+#: part/templates/part/detail.html:110
msgid "Order Part"
msgstr ""
@@ -4164,13 +4212,13 @@ msgstr ""
#: company/templates/company/supplier_part.html:64
#: company/templates/company/supplier_part.html:65
-#: templates/js/translated/company.js:283
+#: templates/js/translated/company.js:293
msgid "Edit Supplier Part"
msgstr ""
#: company/templates/company/supplier_part.html:69
#: company/templates/company/supplier_part.html:70
-#: templates/js/translated/company.js:258
+#: templates/js/translated/company.js:268
msgid "Duplicate Supplier Part"
msgstr ""
@@ -4197,7 +4245,7 @@ msgstr ""
#: company/templates/company/supplier_part.html:211
#: part/templates/part/detail.html:25 stock/templates/stock/location.html:198
-#: templates/js/translated/stock.js:504
+#: templates/js/translated/stock.js:503
msgid "New Stock Item"
msgstr ""
@@ -4205,37 +4253,37 @@ msgstr ""
msgid "Supplier Part Orders"
msgstr ""
-#: company/templates/company/supplier_part.html:249
+#: company/templates/company/supplier_part.html:247
msgid "Pricing Information"
msgstr ""
-#: company/templates/company/supplier_part.html:254
-#: templates/js/translated/company.js:387
+#: company/templates/company/supplier_part.html:252
+#: templates/js/translated/company.js:397
#: templates/js/translated/pricing.js:684
msgid "Add Price Break"
msgstr ""
-#: company/templates/company/supplier_part.html:281
+#: company/templates/company/supplier_part.html:277
msgid "Supplier Part QR Code"
msgstr ""
-#: company/templates/company/supplier_part.html:292
+#: company/templates/company/supplier_part.html:288
msgid "Link Barcode to Supplier Part"
msgstr ""
-#: company/templates/company/supplier_part.html:365
+#: company/templates/company/supplier_part.html:361
msgid "Update Part Availability"
msgstr ""
#: company/templates/company/supplier_part_sidebar.html:5 part/tasks.py:293
-#: part/templates/part/category.html:199
+#: part/templates/part/category.html:182
#: part/templates/part/category_sidebar.html:17 stock/admin.py:47
-#: stock/templates/stock/location.html:168
+#: stock/serializers.py:662 stock/templates/stock/location.html:168
#: stock/templates/stock/location.html:182
#: stock/templates/stock/location.html:194
#: stock/templates/stock/location_sidebar.html:7
-#: templates/InvenTree/search.html:155 templates/js/translated/part.js:1034
-#: templates/js/translated/search.js:214 templates/js/translated/stock.js:2514
+#: templates/InvenTree/search.html:155 templates/js/translated/part.js:1033
+#: templates/js/translated/search.js:172 templates/js/translated/stock.js:2645
#: users/models.py:41
msgid "Stock Items"
msgstr ""
@@ -4261,7 +4309,7 @@ msgstr ""
msgid "New Customer"
msgstr ""
-#: company/views.py:52 templates/js/translated/search.js:234
+#: company/views.py:52 templates/js/translated/search.js:192
msgid "Companies"
msgstr ""
@@ -4269,72 +4317,76 @@ msgstr ""
msgid "New Company"
msgstr ""
-#: label/models.py:104
+#: label/models.py:112
msgid "Label name"
msgstr ""
-#: label/models.py:111
+#: label/models.py:119
msgid "Label description"
msgstr ""
-#: label/models.py:118
+#: label/models.py:126
msgid "Label"
msgstr ""
-#: label/models.py:119
+#: label/models.py:127
msgid "Label template file"
msgstr ""
-#: label/models.py:125 report/models.py:273
+#: label/models.py:133 report/models.py:273
msgid "Enabled"
msgstr ""
-#: label/models.py:126
+#: label/models.py:134
msgid "Label template is enabled"
msgstr ""
-#: label/models.py:131
+#: label/models.py:139
msgid "Width [mm]"
msgstr ""
-#: label/models.py:132
+#: label/models.py:140
msgid "Label width, specified in mm"
msgstr ""
-#: label/models.py:138
+#: label/models.py:146
msgid "Height [mm]"
msgstr ""
-#: label/models.py:139
+#: label/models.py:147
msgid "Label height, specified in mm"
msgstr ""
-#: label/models.py:145 report/models.py:266
+#: label/models.py:153 report/models.py:266
msgid "Filename Pattern"
msgstr ""
-#: label/models.py:146
+#: label/models.py:154
msgid "Pattern for generating label filenames"
msgstr ""
-#: label/models.py:242
+#: label/models.py:250
msgid "Query filters (comma-separated list of key=value pairs),"
msgstr ""
-#: label/models.py:243 label/models.py:284 label/models.py:312
-#: report/models.py:294 report/models.py:452 report/models.py:490
-#: report/models.py:528
+#: label/models.py:251 label/models.py:292 label/models.py:320
+#: label/models.py:356 report/models.py:294 report/models.py:454
+#: report/models.py:492 report/models.py:530
msgid "Filters"
msgstr ""
-#: label/models.py:283
+#: label/models.py:291
msgid "Query filters (comma-separated list of key=value pairs"
msgstr ""
-#: label/models.py:311
+#: label/models.py:319
msgid "Part query filters (comma-separated value of key=value pairs)"
msgstr ""
+#: label/models.py:355
+msgid "Query filters (comma-separated list of key=value pairs)"
+msgstr ""
+
#: label/templates/label/part/part_label.html:31
#: label/templates/label/stockitem/qr.html:21
#: label/templates/label/stocklocation/qr.html:21
@@ -4352,8 +4404,8 @@ msgstr ""
#: report/templates/report/inventree_po_report_base.html:31
#: report/templates/report/inventree_so_report_base.html:31
#: templates/js/translated/order.js:327
-#: templates/js/translated/purchase_order.js:2093
-#: templates/js/translated/sales_order.js:1827
+#: templates/js/translated/purchase_order.js:2103
+#: templates/js/translated/sales_order.js:1839
msgid "Total Price"
msgstr ""
@@ -4361,30 +4413,30 @@ msgstr ""
msgid "No matching purchase order found"
msgstr ""
-#: order/api.py:1452 order/models.py:1178 order/models.py:1262
+#: order/api.py:1452 order/models.py:1191 order/models.py:1275
#: order/templates/order/order_base.html:9
#: order/templates/order/order_base.html:18
#: report/templates/report/inventree_po_report_base.html:14
#: stock/templates/stock/item_base.html:177
#: templates/email/overdue_purchase_order.html:15
-#: templates/js/translated/part.js:1718 templates/js/translated/pricing.js:790
-#: templates/js/translated/purchase_order.js:154
-#: templates/js/translated/purchase_order.js:748
-#: templates/js/translated/purchase_order.js:1637
-#: templates/js/translated/stock.js:1996 templates/js/translated/stock.js:2644
+#: templates/js/translated/part.js:1717 templates/js/translated/pricing.js:790
+#: templates/js/translated/purchase_order.js:165
+#: templates/js/translated/purchase_order.js:759
+#: templates/js/translated/purchase_order.js:1652
+#: templates/js/translated/stock.js:2153 templates/js/translated/stock.js:2775
msgid "Purchase Order"
msgstr ""
-#: order/api.py:1456 order/models.py:1909 order/models.py:1955
+#: order/api.py:1456 order/models.py:1922 order/models.py:1968
#: order/templates/order/return_order_base.html:9
#: order/templates/order/return_order_base.html:28
#: report/templates/report/inventree_return_order_report_base.html:13
-#: templates/js/translated/return_order.js:269
-#: templates/js/translated/stock.js:2678
+#: templates/js/translated/return_order.js:281
+#: templates/js/translated/stock.js:2809
msgid "Return Order"
msgstr ""
-#: order/api.py:1458 templates/js/translated/sales_order.js:1030
+#: order/api.py:1458 templates/js/translated/sales_order.js:1042
msgid "Unknown"
msgstr ""
@@ -4392,11 +4444,11 @@ msgstr ""
msgid "Total price for this order"
msgstr ""
-#: order/models.py:79 order/serializers.py:49
+#: order/models.py:79 order/serializers.py:50
msgid "Order Currency"
msgstr ""
-#: order/models.py:81 order/serializers.py:50
+#: order/models.py:81 order/serializers.py:51
msgid "Currency for this order (leave blank to use company default)"
msgstr ""
@@ -4408,492 +4460,496 @@ msgstr ""
msgid "Order description (optional)"
msgstr ""
-#: order/models.py:234
+#: order/models.py:237
msgid "Select project code for this order"
msgstr ""
-#: order/models.py:236 order/models.py:1094 order/models.py:1454
+#: order/models.py:240 order/models.py:1107 order/models.py:1467
msgid "Link to external page"
msgstr ""
-#: order/models.py:241
+#: order/models.py:245
msgid "Expected date for order delivery. Order will be overdue after this date."
msgstr ""
-#: order/models.py:250
+#: order/models.py:254
msgid "Created By"
msgstr ""
-#: order/models.py:257
+#: order/models.py:261
msgid "User or group responsible for this order"
msgstr ""
-#: order/models.py:267
+#: order/models.py:271
msgid "Point of contact for this order"
msgstr ""
-#: order/models.py:360 order/models.py:766
+#: order/models.py:280
+msgid "Company address for this order"
+msgstr ""
+
+#: order/models.py:373 order/models.py:779
msgid "Order reference"
msgstr ""
-#: order/models.py:368 order/models.py:791
+#: order/models.py:381 order/models.py:804
msgid "Purchase order status"
msgstr ""
-#: order/models.py:383
+#: order/models.py:396
msgid "Company from which the items are being ordered"
msgstr ""
-#: order/models.py:391 order/templates/order/order_base.html:152
-#: templates/js/translated/purchase_order.js:1662
+#: order/models.py:404 order/templates/order/order_base.html:148
+#: templates/js/translated/purchase_order.js:1677
msgid "Supplier Reference"
msgstr ""
-#: order/models.py:391
+#: order/models.py:404
msgid "Supplier order reference code"
msgstr ""
-#: order/models.py:398
+#: order/models.py:411
msgid "received by"
msgstr ""
-#: order/models.py:403 order/models.py:1761
+#: order/models.py:416 order/models.py:1774
msgid "Issue Date"
msgstr ""
-#: order/models.py:404 order/models.py:1762
+#: order/models.py:417 order/models.py:1775
msgid "Date order was issued"
msgstr ""
-#: order/models.py:410 order/models.py:1768
+#: order/models.py:423 order/models.py:1781
msgid "Date order was completed"
msgstr ""
-#: order/models.py:445
+#: order/models.py:458
msgid "Part supplier must match PO supplier"
msgstr ""
-#: order/models.py:606
+#: order/models.py:619
msgid "Quantity must be a positive number"
msgstr ""
-#: order/models.py:780
+#: order/models.py:793
msgid "Company to which the items are being sold"
msgstr ""
-#: order/models.py:799 order/models.py:1755
+#: order/models.py:812 order/models.py:1768
msgid "Customer Reference "
msgstr ""
-#: order/models.py:799 order/models.py:1756
+#: order/models.py:812 order/models.py:1769
msgid "Customer order reference code"
msgstr ""
-#: order/models.py:801 order/models.py:1408
-#: templates/js/translated/sales_order.js:831
-#: templates/js/translated/sales_order.js:1012
+#: order/models.py:814 order/models.py:1421
+#: templates/js/translated/sales_order.js:843
+#: templates/js/translated/sales_order.js:1024
msgid "Shipment Date"
msgstr ""
-#: order/models.py:808
+#: order/models.py:821
msgid "shipped by"
msgstr ""
-#: order/models.py:857
+#: order/models.py:870
msgid "Order cannot be completed as no parts have been assigned"
msgstr ""
-#: order/models.py:861
+#: order/models.py:874
msgid "Only an open order can be marked as complete"
msgstr ""
-#: order/models.py:864 templates/js/translated/sales_order.js:491
+#: order/models.py:877 templates/js/translated/sales_order.js:503
msgid "Order cannot be completed as there are incomplete shipments"
msgstr ""
-#: order/models.py:867
+#: order/models.py:880
msgid "Order cannot be completed as there are incomplete line items"
msgstr ""
-#: order/models.py:1074
+#: order/models.py:1087
msgid "Item quantity"
msgstr ""
-#: order/models.py:1087
+#: order/models.py:1100
msgid "Line item reference"
msgstr ""
-#: order/models.py:1089
+#: order/models.py:1102
msgid "Line item notes"
msgstr ""
-#: order/models.py:1100
+#: order/models.py:1113
msgid "Target date for this line item (leave blank to use the target date from the order)"
msgstr ""
-#: order/models.py:1118
+#: order/models.py:1131
msgid "Line item description (optional)"
msgstr ""
-#: order/models.py:1123
+#: order/models.py:1136
msgid "Context"
msgstr ""
-#: order/models.py:1124
+#: order/models.py:1137
msgid "Additional context for this line"
msgstr ""
-#: order/models.py:1133
+#: order/models.py:1146
msgid "Unit price"
msgstr ""
-#: order/models.py:1163
+#: order/models.py:1176
msgid "Supplier part must match supplier"
msgstr ""
-#: order/models.py:1171
+#: order/models.py:1184
msgid "deleted"
msgstr ""
-#: order/models.py:1177 order/models.py:1262 order/models.py:1303
-#: order/models.py:1402 order/models.py:1551 order/models.py:1908
-#: order/models.py:1955 templates/js/translated/sales_order.js:1474
+#: order/models.py:1190 order/models.py:1275 order/models.py:1316
+#: order/models.py:1415 order/models.py:1564 order/models.py:1921
+#: order/models.py:1968 templates/js/translated/sales_order.js:1486
msgid "Order"
msgstr ""
-#: order/models.py:1196
+#: order/models.py:1209
msgid "Supplier part"
msgstr ""
-#: order/models.py:1203 order/templates/order/order_base.html:200
-#: templates/js/translated/part.js:1841 templates/js/translated/part.js:1872
-#: templates/js/translated/purchase_order.js:1276
-#: templates/js/translated/purchase_order.js:2137
-#: templates/js/translated/return_order.js:748
-#: templates/js/translated/table_filters.js:90
-#: templates/js/translated/table_filters.js:515
+#: order/models.py:1216 order/templates/order/order_base.html:196
+#: templates/js/translated/part.js:1840 templates/js/translated/part.js:1871
+#: templates/js/translated/purchase_order.js:1291
+#: templates/js/translated/purchase_order.js:2147
+#: templates/js/translated/return_order.js:760
+#: templates/js/translated/table_filters.js:96
+#: templates/js/translated/table_filters.js:537
msgid "Received"
msgstr ""
-#: order/models.py:1204
+#: order/models.py:1217
msgid "Number of items received"
msgstr ""
-#: order/models.py:1211 stock/models.py:823 stock/serializers.py:252
+#: order/models.py:1224 stock/models.py:823 stock/serializers.py:314
#: stock/templates/stock/item_base.html:184
-#: templates/js/translated/stock.js:2047
+#: templates/js/translated/stock.js:2204
msgid "Purchase Price"
msgstr ""
-#: order/models.py:1212
+#: order/models.py:1225
msgid "Unit purchase price"
msgstr ""
-#: order/models.py:1225
+#: order/models.py:1238
msgid "Where does the Purchaser want this item to be stored?"
msgstr ""
-#: order/models.py:1291
+#: order/models.py:1304
msgid "Virtual part cannot be assigned to a sales order"
msgstr ""
-#: order/models.py:1296
+#: order/models.py:1309
msgid "Only salable parts can be assigned to a sales order"
msgstr ""
-#: order/models.py:1322 part/templates/part/part_pricing.html:107
+#: order/models.py:1335 part/templates/part/part_pricing.html:107
#: part/templates/part/prices.html:128 templates/js/translated/pricing.js:943
msgid "Sale Price"
msgstr ""
-#: order/models.py:1323
+#: order/models.py:1336
msgid "Unit sale price"
msgstr ""
-#: order/models.py:1333
+#: order/models.py:1346
msgid "Shipped quantity"
msgstr ""
-#: order/models.py:1409
+#: order/models.py:1422
msgid "Date of shipment"
msgstr ""
-#: order/models.py:1414 templates/js/translated/sales_order.js:1024
+#: order/models.py:1427 templates/js/translated/sales_order.js:1036
msgid "Delivery Date"
msgstr ""
-#: order/models.py:1415
+#: order/models.py:1428
msgid "Date of delivery of shipment"
msgstr ""
-#: order/models.py:1422
+#: order/models.py:1435
msgid "Checked By"
msgstr ""
-#: order/models.py:1423
+#: order/models.py:1436
msgid "User who checked this shipment"
msgstr ""
-#: order/models.py:1430 order/models.py:1627 order/serializers.py:1248
-#: order/serializers.py:1376 templates/js/translated/model_renderers.js:415
+#: order/models.py:1443 order/models.py:1640 order/serializers.py:1254
+#: order/serializers.py:1382 templates/js/translated/model_renderers.js:429
msgid "Shipment"
msgstr ""
-#: order/models.py:1431
+#: order/models.py:1444
msgid "Shipment number"
msgstr ""
-#: order/models.py:1439
+#: order/models.py:1452
msgid "Tracking Number"
msgstr ""
-#: order/models.py:1440
+#: order/models.py:1453
msgid "Shipment tracking information"
msgstr ""
-#: order/models.py:1447
+#: order/models.py:1460
msgid "Invoice Number"
msgstr ""
-#: order/models.py:1448
+#: order/models.py:1461
msgid "Reference number for associated invoice"
msgstr ""
-#: order/models.py:1470
+#: order/models.py:1483
msgid "Shipment has already been sent"
msgstr ""
-#: order/models.py:1473
+#: order/models.py:1486
msgid "Shipment has no allocated stock items"
msgstr ""
-#: order/models.py:1586 order/models.py:1588
+#: order/models.py:1599 order/models.py:1601
msgid "Stock item has not been assigned"
msgstr ""
-#: order/models.py:1592
+#: order/models.py:1605
msgid "Cannot allocate stock item to a line with a different part"
msgstr ""
-#: order/models.py:1594
+#: order/models.py:1607
msgid "Cannot allocate stock to a line without a part"
msgstr ""
-#: order/models.py:1597
+#: order/models.py:1610
msgid "Allocation quantity cannot exceed stock quantity"
msgstr ""
-#: order/models.py:1607 order/serializers.py:1110
+#: order/models.py:1620 order/serializers.py:1116
msgid "Quantity must be 1 for serialized stock item"
msgstr ""
-#: order/models.py:1610
+#: order/models.py:1623
msgid "Sales order does not match shipment"
msgstr ""
-#: order/models.py:1611
+#: order/models.py:1624
msgid "Shipment does not match sales order"
msgstr ""
-#: order/models.py:1619
+#: order/models.py:1632
msgid "Line"
msgstr ""
-#: order/models.py:1628
+#: order/models.py:1641
msgid "Sales order shipment reference"
msgstr ""
-#: order/models.py:1641 order/models.py:1916
-#: templates/js/translated/return_order.js:706
+#: order/models.py:1654 order/models.py:1929
+#: templates/js/translated/return_order.js:718
msgid "Item"
msgstr ""
-#: order/models.py:1642
+#: order/models.py:1655
msgid "Select stock item to allocate"
msgstr ""
-#: order/models.py:1645
+#: order/models.py:1658
msgid "Enter stock allocation quantity"
msgstr ""
-#: order/models.py:1725
+#: order/models.py:1738
msgid "Return Order reference"
msgstr ""
-#: order/models.py:1739
+#: order/models.py:1752
msgid "Company from which items are being returned"
msgstr ""
-#: order/models.py:1750
+#: order/models.py:1763
msgid "Return order status"
msgstr ""
-#: order/models.py:1901
+#: order/models.py:1914
msgid "Only serialized items can be assigned to a Return Order"
msgstr ""
-#: order/models.py:1917
+#: order/models.py:1930
msgid "Select item to return from customer"
msgstr ""
-#: order/models.py:1922
+#: order/models.py:1935
msgid "Received Date"
msgstr ""
-#: order/models.py:1923
+#: order/models.py:1936
msgid "The date this this return item was received"
msgstr ""
-#: order/models.py:1934 templates/js/translated/return_order.js:717
-#: templates/js/translated/table_filters.js:93
+#: order/models.py:1947 templates/js/translated/return_order.js:729
+#: templates/js/translated/table_filters.js:99
msgid "Outcome"
msgstr ""
-#: order/models.py:1934
+#: order/models.py:1947
msgid "Outcome for this line item"
msgstr ""
-#: order/models.py:1940
+#: order/models.py:1953
msgid "Cost associated with return or repair for this line item"
msgstr ""
-#: order/serializers.py:247
+#: order/serializers.py:253
msgid "Order cannot be cancelled"
msgstr ""
-#: order/serializers.py:262 order/serializers.py:1128
+#: order/serializers.py:268 order/serializers.py:1134
msgid "Allow order to be closed with incomplete line items"
msgstr ""
-#: order/serializers.py:273 order/serializers.py:1139
+#: order/serializers.py:279 order/serializers.py:1145
msgid "Order has incomplete line items"
msgstr ""
-#: order/serializers.py:386
+#: order/serializers.py:392
msgid "Order is not open"
msgstr ""
-#: order/serializers.py:404
+#: order/serializers.py:410
msgid "Purchase price currency"
msgstr ""
-#: order/serializers.py:422
+#: order/serializers.py:428
msgid "Supplier part must be specified"
msgstr ""
-#: order/serializers.py:427
+#: order/serializers.py:433
msgid "Purchase order must be specified"
msgstr ""
-#: order/serializers.py:433
+#: order/serializers.py:439
msgid "Supplier must match purchase order"
msgstr ""
-#: order/serializers.py:434
+#: order/serializers.py:440
msgid "Purchase order must match supplier"
msgstr ""
-#: order/serializers.py:472 order/serializers.py:1216
+#: order/serializers.py:478 order/serializers.py:1222
msgid "Line Item"
msgstr ""
-#: order/serializers.py:478
+#: order/serializers.py:484
msgid "Line item does not match purchase order"
msgstr ""
-#: order/serializers.py:488 order/serializers.py:607 order/serializers.py:1589
+#: order/serializers.py:494 order/serializers.py:613 order/serializers.py:1595
msgid "Select destination location for received items"
msgstr ""
-#: order/serializers.py:507 templates/js/translated/purchase_order.js:1100
+#: order/serializers.py:513 templates/js/translated/purchase_order.js:1115
msgid "Enter batch code for incoming stock items"
msgstr ""
-#: order/serializers.py:515 templates/js/translated/purchase_order.js:1124
+#: order/serializers.py:521 templates/js/translated/purchase_order.js:1139
msgid "Enter serial numbers for incoming stock items"
msgstr ""
-#: order/serializers.py:528 templates/js/translated/barcode.js:52
+#: order/serializers.py:534 templates/js/translated/barcode.js:52
msgid "Barcode"
msgstr ""
-#: order/serializers.py:529
+#: order/serializers.py:535
msgid "Scanned barcode"
msgstr ""
-#: order/serializers.py:545
+#: order/serializers.py:551
msgid "Barcode is already in use"
msgstr ""
-#: order/serializers.py:569
+#: order/serializers.py:575
msgid "An integer quantity must be provided for trackable parts"
msgstr ""
-#: order/serializers.py:623 order/serializers.py:1604
+#: order/serializers.py:629 order/serializers.py:1610
msgid "Line items must be provided"
msgstr ""
-#: order/serializers.py:640
+#: order/serializers.py:646
msgid "Destination location must be specified"
msgstr ""
-#: order/serializers.py:651
+#: order/serializers.py:657
msgid "Supplied barcode values must be unique"
msgstr ""
-#: order/serializers.py:950
+#: order/serializers.py:956
msgid "Sale price currency"
msgstr ""
-#: order/serializers.py:1007
+#: order/serializers.py:1013
msgid "No shipment details provided"
msgstr ""
-#: order/serializers.py:1071 order/serializers.py:1225
+#: order/serializers.py:1077 order/serializers.py:1231
msgid "Line item is not associated with this order"
msgstr ""
-#: order/serializers.py:1093
+#: order/serializers.py:1099
msgid "Quantity must be positive"
msgstr ""
-#: order/serializers.py:1238
+#: order/serializers.py:1244
msgid "Enter serial numbers to allocate"
msgstr ""
-#: order/serializers.py:1260 order/serializers.py:1384
+#: order/serializers.py:1266 order/serializers.py:1390
msgid "Shipment has already been shipped"
msgstr ""
-#: order/serializers.py:1263 order/serializers.py:1387
+#: order/serializers.py:1269 order/serializers.py:1393
msgid "Shipment is not associated with this order"
msgstr ""
-#: order/serializers.py:1317
+#: order/serializers.py:1323
msgid "No match found for the following serial numbers"
msgstr ""
-#: order/serializers.py:1327
+#: order/serializers.py:1333
msgid "The following serial numbers are already allocated"
msgstr ""
-#: order/serializers.py:1555
+#: order/serializers.py:1561
msgid "Return order line item"
msgstr ""
-#: order/serializers.py:1562
+#: order/serializers.py:1568
msgid "Line item does not match return order"
msgstr ""
-#: order/serializers.py:1565
+#: order/serializers.py:1571
msgid "Line item has already been received"
msgstr ""
-#: order/serializers.py:1597
+#: order/serializers.py:1603
msgid "Items can only be received against orders which are in progress"
msgstr ""
-#: order/serializers.py:1678
+#: order/serializers.py:1684
msgid "Line price currency"
msgstr ""
@@ -4957,82 +5013,74 @@ msgid "Issue Order"
msgstr ""
#: order/templates/order/order_base.html:83
-msgid "Receive items"
-msgstr ""
-
-#: order/templates/order/order_base.html:85
-msgid "Receive Items"
-msgstr ""
-
-#: order/templates/order/order_base.html:87
#: order/templates/order/return_order_base.html:87
msgid "Mark order as complete"
msgstr ""
-#: order/templates/order/order_base.html:88
+#: order/templates/order/order_base.html:84
#: order/templates/order/return_order_base.html:88
#: order/templates/order/sales_order_base.html:94
msgid "Complete Order"
msgstr ""
-#: order/templates/order/order_base.html:95
+#: order/templates/order/order_base.html:91
msgid "Supplier part thumbnail"
msgstr ""
-#: order/templates/order/order_base.html:110
+#: order/templates/order/order_base.html:106
#: order/templates/order/return_order_base.html:102
#: order/templates/order/sales_order_base.html:107
msgid "Order Reference"
msgstr ""
-#: order/templates/order/order_base.html:115
+#: order/templates/order/order_base.html:111
#: order/templates/order/return_order_base.html:107
#: order/templates/order/sales_order_base.html:112
msgid "Order Description"
msgstr ""
-#: order/templates/order/order_base.html:122
+#: order/templates/order/order_base.html:118
#: order/templates/order/return_order_base.html:114
#: order/templates/order/sales_order_base.html:119
msgid "Order Status"
msgstr ""
-#: order/templates/order/order_base.html:145
+#: order/templates/order/order_base.html:141
msgid "No suppplier information available"
msgstr ""
-#: order/templates/order/order_base.html:158
+#: order/templates/order/order_base.html:154
#: order/templates/order/sales_order_base.html:158
msgid "Completed Line Items"
msgstr ""
-#: order/templates/order/order_base.html:164
+#: order/templates/order/order_base.html:160
#: order/templates/order/sales_order_base.html:164
#: order/templates/order/sales_order_base.html:174
msgid "Incomplete"
msgstr ""
-#: order/templates/order/order_base.html:183
+#: order/templates/order/order_base.html:179
#: order/templates/order/return_order_base.html:158
#: report/templates/report/inventree_build_order_base.html:121
msgid "Issued"
msgstr ""
-#: order/templates/order/order_base.html:221
+#: order/templates/order/order_base.html:224
msgid "Total cost"
msgstr ""
-#: order/templates/order/order_base.html:225
-#: order/templates/order/return_order_base.html:193
-#: order/templates/order/sales_order_base.html:233
+#: order/templates/order/order_base.html:228
+#: order/templates/order/return_order_base.html:200
+#: order/templates/order/sales_order_base.html:240
msgid "Total cost could not be calculated"
msgstr ""
-#: order/templates/order/order_base.html:331
+#: order/templates/order/order_base.html:318
msgid "Purchase Order QR Code"
msgstr ""
-#: order/templates/order/order_base.html:343
+#: order/templates/order/order_base.html:330
msgid "Link Barcode to Purchase Order"
msgstr ""
@@ -5085,13 +5133,13 @@ msgstr ""
#: part/templates/part/import_wizard/ajax_match_references.html:42
#: part/templates/part/import_wizard/match_fields.html:71
#: part/templates/part/import_wizard/match_references.html:49
-#: templates/js/translated/bom.js:132 templates/js/translated/build.js:512
-#: templates/js/translated/build.js:2348
-#: templates/js/translated/purchase_order.js:692
-#: templates/js/translated/purchase_order.js:1206
-#: templates/js/translated/return_order.js:494
-#: templates/js/translated/sales_order.js:1097
-#: templates/js/translated/stock.js:681 templates/js/translated/stock.js:850
+#: templates/js/translated/bom.js:133 templates/js/translated/build.js:518
+#: templates/js/translated/build.js:1555
+#: templates/js/translated/purchase_order.js:703
+#: templates/js/translated/purchase_order.js:1221
+#: templates/js/translated/return_order.js:506
+#: templates/js/translated/sales_order.js:1109
+#: templates/js/translated/stock.js:680 templates/js/translated/stock.js:849
#: templates/patterns/wizard/match_fields.html:70
msgid "Remove row"
msgstr ""
@@ -5152,9 +5200,9 @@ msgstr ""
#: order/templates/order/purchase_order_detail.html:27
#: order/templates/order/return_order_detail.html:24
#: order/templates/order/sales_order_detail.html:24
-#: templates/js/translated/purchase_order.js:419
-#: templates/js/translated/return_order.js:447
-#: templates/js/translated/sales_order.js:222
+#: templates/js/translated/purchase_order.js:430
+#: templates/js/translated/return_order.js:459
+#: templates/js/translated/sales_order.js:234
msgid "Add Line Item"
msgstr ""
@@ -5165,30 +5213,25 @@ msgstr ""
msgid "Receive Line Items"
msgstr ""
-#: order/templates/order/purchase_order_detail.html:49
#: order/templates/order/purchase_order_detail.html:50
-msgid "Delete Line Items"
-msgstr ""
-
-#: order/templates/order/purchase_order_detail.html:66
-#: order/templates/order/return_order_detail.html:47
-#: order/templates/order/sales_order_detail.html:43
+#: order/templates/order/return_order_detail.html:45
+#: order/templates/order/sales_order_detail.html:41
msgid "Extra Lines"
msgstr ""
-#: order/templates/order/purchase_order_detail.html:72
-#: order/templates/order/return_order_detail.html:53
-#: order/templates/order/sales_order_detail.html:49
+#: order/templates/order/purchase_order_detail.html:56
+#: order/templates/order/return_order_detail.html:51
+#: order/templates/order/sales_order_detail.html:47
msgid "Add Extra Line"
msgstr ""
-#: order/templates/order/purchase_order_detail.html:92
+#: order/templates/order/purchase_order_detail.html:74
msgid "Received Items"
msgstr ""
-#: order/templates/order/purchase_order_detail.html:117
-#: order/templates/order/return_order_detail.html:89
-#: order/templates/order/sales_order_detail.html:149
+#: order/templates/order/purchase_order_detail.html:99
+#: order/templates/order/return_order_detail.html:85
+#: order/templates/order/sales_order_detail.html:139
msgid "Order Notes"
msgstr ""
@@ -5208,29 +5251,29 @@ msgstr ""
#: order/templates/order/return_order_base.html:139
#: order/templates/order/sales_order_base.html:152
-#: templates/js/translated/return_order.js:297
-#: templates/js/translated/sales_order.js:785
+#: templates/js/translated/return_order.js:309
+#: templates/js/translated/sales_order.js:797
msgid "Customer Reference"
msgstr ""
-#: order/templates/order/return_order_base.html:189
-#: order/templates/order/sales_order_base.html:229
+#: order/templates/order/return_order_base.html:196
+#: order/templates/order/sales_order_base.html:236
#: part/templates/part/part_pricing.html:32
#: part/templates/part/part_pricing.html:58
#: part/templates/part/part_pricing.html:99
#: part/templates/part/part_pricing.html:114
-#: templates/js/translated/part.js:1046
-#: templates/js/translated/purchase_order.js:1712
-#: templates/js/translated/return_order.js:369
-#: templates/js/translated/sales_order.js:843
+#: templates/js/translated/part.js:1045
+#: templates/js/translated/purchase_order.js:1727
+#: templates/js/translated/return_order.js:381
+#: templates/js/translated/sales_order.js:855
msgid "Total Cost"
msgstr ""
-#: order/templates/order/return_order_base.html:257
+#: order/templates/order/return_order_base.html:264
msgid "Return Order QR Code"
msgstr ""
-#: order/templates/order/return_order_base.html:269
+#: order/templates/order/return_order_base.html:276
msgid "Link Barcode to Return Order"
msgstr ""
@@ -5248,7 +5291,7 @@ msgid "Ship Items"
msgstr ""
#: order/templates/order/sales_order_base.html:93
-#: templates/js/translated/sales_order.js:469
+#: templates/js/translated/sales_order.js:481
msgid "Complete Sales Order"
msgstr ""
@@ -5257,16 +5300,16 @@ msgid "This Sales Order has not been fully allocated"
msgstr ""
#: order/templates/order/sales_order_base.html:170
-#: order/templates/order/sales_order_detail.html:105
+#: order/templates/order/sales_order_detail.html:99
#: order/templates/order/so_sidebar.html:11
msgid "Completed Shipments"
msgstr ""
-#: order/templates/order/sales_order_base.html:306
+#: order/templates/order/sales_order_base.html:313
msgid "Sales Order QR Code"
msgstr ""
-#: order/templates/order/sales_order_base.html:318
+#: order/templates/order/sales_order_base.html:325
msgid "Link Barcode to Sales Order"
msgstr ""
@@ -5274,18 +5317,17 @@ msgstr ""
msgid "Sales Order Items"
msgstr ""
-#: order/templates/order/sales_order_detail.html:71
-#: order/templates/order/so_sidebar.html:8 templates/InvenTree/index.html:332
+#: order/templates/order/sales_order_detail.html:67
+#: order/templates/order/so_sidebar.html:8 templates/InvenTree/index.html:284
msgid "Pending Shipments"
msgstr ""
-#: order/templates/order/sales_order_detail.html:75
-#: templates/attachment_table.html:6 templates/js/translated/bom.js:1236
-#: templates/js/translated/build.js:2249
+#: order/templates/order/sales_order_detail.html:71
+#: templates/js/translated/bom.js:1256 templates/js/translated/filters.js:297
msgid "Actions"
msgstr ""
-#: order/templates/order/sales_order_detail.html:84
+#: order/templates/order/sales_order_detail.html:80
msgid "New Shipment"
msgstr ""
@@ -5311,12 +5353,12 @@ msgstr ""
msgid "Updated {part} unit-price to {price} and quantity to {qty}"
msgstr ""
-#: part/admin.py:33 part/admin.py:273 part/models.py:3667 part/tasks.py:288
+#: part/admin.py:33 part/admin.py:273 part/models.py:3716 part/tasks.py:288
#: stock/admin.py:101
msgid "Part ID"
msgstr ""
-#: part/admin.py:34 part/admin.py:275 part/models.py:3671 part/tasks.py:289
+#: part/admin.py:34 part/admin.py:275 part/models.py:3720 part/tasks.py:289
#: stock/admin.py:102
msgid "Part Name"
msgstr ""
@@ -5325,19 +5367,19 @@ msgstr ""
msgid "Part Description"
msgstr ""
-#: part/admin.py:36 part/models.py:889 part/templates/part/part_base.html:271
-#: templates/js/translated/part.js:1200 templates/js/translated/part.js:2233
-#: templates/js/translated/stock.js:1795
+#: part/admin.py:36 part/models.py:890 part/templates/part/part_base.html:271
+#: templates/js/translated/part.js:1199 templates/js/translated/part.js:2309
+#: templates/js/translated/stock.js:1952
msgid "IPN"
msgstr ""
-#: part/admin.py:37 part/models.py:896 part/templates/part/part_base.html:279
-#: report/models.py:179 templates/js/translated/part.js:1205
-#: templates/js/translated/part.js:2239
+#: part/admin.py:37 part/models.py:897 part/templates/part/part_base.html:279
+#: report/models.py:179 templates/js/translated/part.js:1204
+#: templates/js/translated/part.js:2315
msgid "Revision"
msgstr ""
-#: part/admin.py:38 part/admin.py:198 part/models.py:875
+#: part/admin.py:38 part/admin.py:198 part/models.py:876
#: part/templates/part/category.html:93 part/templates/part/part_base.html:300
msgid "Keywords"
msgstr ""
@@ -5358,24 +5400,24 @@ msgstr ""
msgid "Default Supplier ID"
msgstr ""
-#: part/admin.py:46 part/models.py:864 part/templates/part/part_base.html:179
+#: part/admin.py:46 part/models.py:865 part/templates/part/part_base.html:179
msgid "Variant Of"
msgstr ""
-#: part/admin.py:47 part/models.py:980 part/templates/part/part_base.html:205
+#: part/admin.py:47 part/models.py:981 part/templates/part/part_base.html:205
msgid "Minimum Stock"
msgstr ""
#: part/admin.py:61 part/templates/part/part_base.html:199
-#: templates/js/translated/company.js:1299
-#: templates/js/translated/table_filters.js:301
+#: templates/js/translated/company.js:1720
+#: templates/js/translated/table_filters.js:307
msgid "In Stock"
msgstr ""
#: part/admin.py:62 part/bom.py:178 part/templates/part/part_base.html:212
-#: templates/js/translated/bom.js:1167 templates/js/translated/build.js:2191
-#: templates/js/translated/part.js:687 templates/js/translated/part.js:2123
-#: templates/js/translated/table_filters.js:140
+#: templates/js/translated/bom.js:1187 templates/js/translated/build.js:2541
+#: templates/js/translated/part.js:686 templates/js/translated/part.js:2122
+#: templates/js/translated/table_filters.js:146
msgid "On Order"
msgstr ""
@@ -5383,23 +5425,16 @@ msgstr ""
msgid "Used In"
msgstr ""
-#: part/admin.py:64 templates/js/translated/build.js:2203
-#: templates/js/translated/build.js:2465 templates/js/translated/build.js:3052
-#: templates/js/translated/sales_order.js:1906
-#: templates/js/translated/table_filters.js:488
-msgid "Allocated"
-msgstr ""
-
#: part/admin.py:65 part/templates/part/part_base.html:243 stock/admin.py:124
-#: templates/js/translated/part.js:692 templates/js/translated/part.js:2127
+#: templates/js/translated/part.js:691 templates/js/translated/part.js:2126
msgid "Building"
msgstr ""
-#: part/admin.py:66 part/models.py:2930 templates/js/translated/part.js:943
+#: part/admin.py:66 part/models.py:2964 templates/js/translated/part.js:942
msgid "Minimum Cost"
msgstr ""
-#: part/admin.py:67 part/models.py:2936 templates/js/translated/part.js:953
+#: part/admin.py:67 part/models.py:2970 templates/js/translated/part.js:952
msgid "Maximum Cost"
msgstr ""
@@ -5416,13 +5451,13 @@ msgstr ""
msgid "Category Path"
msgstr ""
-#: part/admin.py:202 part/models.py:392 part/templates/part/cat_link.html:3
-#: part/templates/part/category.html:23 part/templates/part/category.html:140
-#: part/templates/part/category.html:160
+#: part/admin.py:202 part/models.py:393 part/serializers.py:307
+#: part/templates/part/cat_link.html:3 part/templates/part/category.html:23
+#: part/templates/part/category.html:140 part/templates/part/category.html:160
#: part/templates/part/category_sidebar.html:9
-#: templates/InvenTree/index.html:86 templates/InvenTree/search.html:84
+#: templates/InvenTree/index.html:36 templates/InvenTree/search.html:84
#: templates/InvenTree/settings/sidebar.html:45
-#: templates/js/translated/part.js:2754 templates/js/translated/search.js:172
+#: templates/js/translated/part.js:2739 templates/js/translated/search.js:130
#: templates/navbar.html:24 users/models.py:38
msgid "Parts"
msgstr ""
@@ -5439,7 +5474,7 @@ msgstr ""
msgid "Parent IPN"
msgstr ""
-#: part/admin.py:274 part/models.py:3675
+#: part/admin.py:274 part/models.py:3724
msgid "Part IPN"
msgstr ""
@@ -5453,35 +5488,35 @@ msgstr ""
msgid "Maximum Price"
msgstr ""
-#: part/api.py:498
+#: part/api.py:501
msgid "Incoming Purchase Order"
msgstr ""
-#: part/api.py:518
+#: part/api.py:521
msgid "Outgoing Sales Order"
msgstr ""
-#: part/api.py:536
+#: part/api.py:539
msgid "Stock produced by Build Order"
msgstr ""
-#: part/api.py:622
+#: part/api.py:625
msgid "Stock required for Build Order"
msgstr ""
-#: part/api.py:770
+#: part/api.py:773
msgid "Valid"
msgstr ""
-#: part/api.py:771
+#: part/api.py:774
msgid "Validate entire Bill of Materials"
msgstr ""
-#: part/api.py:777
+#: part/api.py:780
msgid "This option must be selected"
msgstr ""
-#: part/bom.py:175 part/models.py:127 part/models.py:923
+#: part/bom.py:175 part/models.py:128 part/models.py:924
#: part/templates/part/category.html:115 part/templates/part/part_base.html:369
msgid "Default Location"
msgstr ""
@@ -5491,7 +5526,7 @@ msgid "Total Stock"
msgstr ""
#: part/bom.py:177 part/templates/part/part_base.html:194
-#: templates/js/translated/sales_order.js:1873
+#: templates/js/translated/sales_order.js:1885
msgid "Available Stock"
msgstr ""
@@ -5499,916 +5534,913 @@ msgstr ""
msgid "Input quantity for price calculation"
msgstr ""
-#: part/models.py:75 part/models.py:3616 part/templates/part/category.html:16
+#: part/models.py:76 part/models.py:3665 part/templates/part/category.html:16
#: part/templates/part/part_app_base.html:10
msgid "Part Category"
msgstr ""
-#: part/models.py:76 part/templates/part/category.html:135
-#: templates/InvenTree/search.html:97 templates/js/translated/search.js:200
+#: part/models.py:77 part/templates/part/category.html:135
+#: templates/InvenTree/search.html:97 templates/js/translated/search.js:158
#: users/models.py:37
msgid "Part Categories"
msgstr ""
-#: part/models.py:128
+#: part/models.py:129
msgid "Default location for parts in this category"
msgstr ""
-#: part/models.py:133 stock/models.py:124 templates/js/translated/stock.js:2520
-#: templates/js/translated/table_filters.js:209
-#: templates/js/translated/table_filters.js:229
+#: part/models.py:134 stock/models.py:124 templates/js/translated/stock.js:2651
+#: templates/js/translated/table_filters.js:215
+#: templates/js/translated/table_filters.js:235
msgid "Structural"
msgstr ""
-#: part/models.py:135
+#: part/models.py:136
msgid "Parts may not be directly assigned to a structural category, but may be assigned to child categories."
msgstr ""
-#: part/models.py:139
+#: part/models.py:140
msgid "Default keywords"
msgstr ""
-#: part/models.py:139
+#: part/models.py:140
msgid "Default keywords for parts in this category"
msgstr ""
-#: part/models.py:144 stock/models.py:113
+#: part/models.py:145 stock/models.py:113
msgid "Icon"
msgstr ""
-#: part/models.py:145 stock/models.py:114
+#: part/models.py:146 stock/models.py:114
msgid "Icon (optional)"
msgstr ""
-#: part/models.py:164
+#: part/models.py:165
msgid "You cannot make this part category structural because some parts are already assigned to it!"
msgstr ""
-#: part/models.py:475
+#: part/models.py:476
msgid "Invalid choice for parent part"
msgstr ""
-#: part/models.py:517 part/models.py:529
+#: part/models.py:518 part/models.py:530
#, python-brace-format
msgid "Part '{p1}' is used in BOM for '{p2}' (recursive)"
msgstr ""
-#: part/models.py:601
+#: part/models.py:602
#, python-brace-format
msgid "IPN must match regex pattern {pat}"
msgstr "Το IPN πρέπει να ταιριάζει με το μοτίβο regex {pat}"
-#: part/models.py:672
+#: part/models.py:673
msgid "Stock item with this serial number already exists"
msgstr ""
-#: part/models.py:803
+#: part/models.py:804
msgid "Duplicate IPN not allowed in part settings"
msgstr ""
-#: part/models.py:808
+#: part/models.py:809
msgid "Part with this Name, IPN and Revision already exists."
msgstr ""
-#: part/models.py:822
+#: part/models.py:823
msgid "Parts cannot be assigned to structural part categories!"
msgstr ""
-#: part/models.py:846 part/models.py:3672
+#: part/models.py:847 part/models.py:3721
msgid "Part name"
msgstr ""
-#: part/models.py:852
+#: part/models.py:853
msgid "Is Template"
msgstr ""
-#: part/models.py:853
+#: part/models.py:854
msgid "Is this part a template part?"
msgstr ""
-#: part/models.py:863
+#: part/models.py:864
msgid "Is this part a variant of another part?"
msgstr ""
-#: part/models.py:870
+#: part/models.py:871
msgid "Part description (optional)"
msgstr ""
-#: part/models.py:876
+#: part/models.py:877
msgid "Part keywords to improve visibility in search results"
msgstr ""
-#: part/models.py:883 part/models.py:3198 part/models.py:3615
-#: part/serializers.py:848 part/templates/part/part_base.html:262
+#: part/models.py:884 part/models.py:3232 part/models.py:3664
+#: part/serializers.py:320 part/serializers.py:910
+#: part/templates/part/part_base.html:262
#: templates/InvenTree/settings/settings_staff_js.html:204
#: templates/js/translated/notification.js:59
-#: templates/js/translated/part.js:2269 templates/js/translated/part.js:2481
+#: templates/js/translated/part.js:2345
msgid "Category"
msgstr ""
-#: part/models.py:884
+#: part/models.py:885
msgid "Part category"
msgstr ""
-#: part/models.py:890
+#: part/models.py:891
msgid "Internal Part Number"
msgstr ""
-#: part/models.py:895
+#: part/models.py:896
msgid "Part revision or version number"
msgstr ""
-#: part/models.py:921
+#: part/models.py:922
msgid "Where is this item normally stored?"
msgstr ""
-#: part/models.py:966 part/templates/part/part_base.html:378
+#: part/models.py:967 part/templates/part/part_base.html:378
msgid "Default Supplier"
msgstr ""
-#: part/models.py:967
+#: part/models.py:968
msgid "Default supplier part"
msgstr ""
-#: part/models.py:974
+#: part/models.py:975
msgid "Default Expiry"
msgstr ""
-#: part/models.py:975
+#: part/models.py:976
msgid "Expiry time (in days) for stock items of this part"
msgstr ""
-#: part/models.py:981
+#: part/models.py:982
msgid "Minimum allowed stock level"
msgstr ""
-#: part/models.py:988
+#: part/models.py:989
msgid "Units of measure for this part"
msgstr ""
-#: part/models.py:997
+#: part/models.py:998
msgid "Can this part be built from other parts?"
msgstr ""
-#: part/models.py:1003
+#: part/models.py:1004
msgid "Can this part be used to build other parts?"
msgstr ""
-#: part/models.py:1009
+#: part/models.py:1010
msgid "Does this part have tracking for unique items?"
msgstr ""
-#: part/models.py:1014
+#: part/models.py:1015
msgid "Can this part be purchased from external suppliers?"
msgstr ""
-#: part/models.py:1019
+#: part/models.py:1020
msgid "Can this part be sold to customers?"
msgstr ""
-#: part/models.py:1024
+#: part/models.py:1025
msgid "Is this part active?"
msgstr ""
-#: part/models.py:1029
+#: part/models.py:1030
msgid "Is this a virtual part, such as a software product or license?"
msgstr ""
-#: part/models.py:1031
+#: part/models.py:1032
msgid "BOM checksum"
msgstr ""
-#: part/models.py:1031
+#: part/models.py:1032
msgid "Stored BOM checksum"
msgstr ""
-#: part/models.py:1034
+#: part/models.py:1035
msgid "BOM checked by"
msgstr ""
-#: part/models.py:1036
+#: part/models.py:1037
msgid "BOM checked date"
msgstr ""
-#: part/models.py:1040
+#: part/models.py:1041
msgid "Creation User"
msgstr ""
-#: part/models.py:1042
+#: part/models.py:1043
msgid "User responsible for this part"
msgstr ""
-#: part/models.py:1046 part/templates/part/part_base.html:341
+#: part/models.py:1047 part/templates/part/part_base.html:341
#: stock/templates/stock/item_base.html:447
-#: templates/js/translated/part.js:2331
+#: templates/js/translated/part.js:2407
msgid "Last Stocktake"
msgstr ""
-#: part/models.py:1921
+#: part/models.py:1923
msgid "Sell multiple"
msgstr ""
-#: part/models.py:2853
+#: part/models.py:2887
msgid "Currency used to cache pricing calculations"
msgstr ""
-#: part/models.py:2870
+#: part/models.py:2904
msgid "Minimum BOM Cost"
msgstr ""
-#: part/models.py:2871
+#: part/models.py:2905
msgid "Minimum cost of component parts"
msgstr ""
-#: part/models.py:2876
+#: part/models.py:2910
msgid "Maximum BOM Cost"
msgstr ""
-#: part/models.py:2877
+#: part/models.py:2911
msgid "Maximum cost of component parts"
msgstr ""
-#: part/models.py:2882
+#: part/models.py:2916
msgid "Minimum Purchase Cost"
msgstr ""
-#: part/models.py:2883
+#: part/models.py:2917
msgid "Minimum historical purchase cost"
msgstr ""
-#: part/models.py:2888
+#: part/models.py:2922
msgid "Maximum Purchase Cost"
msgstr ""
-#: part/models.py:2889
+#: part/models.py:2923
msgid "Maximum historical purchase cost"
msgstr ""
-#: part/models.py:2894
+#: part/models.py:2928
msgid "Minimum Internal Price"
msgstr ""
-#: part/models.py:2895
+#: part/models.py:2929
msgid "Minimum cost based on internal price breaks"
msgstr ""
-#: part/models.py:2900
+#: part/models.py:2934
msgid "Maximum Internal Price"
msgstr ""
-#: part/models.py:2901
+#: part/models.py:2935
msgid "Maximum cost based on internal price breaks"
msgstr ""
-#: part/models.py:2906
+#: part/models.py:2940
msgid "Minimum Supplier Price"
msgstr ""
-#: part/models.py:2907
+#: part/models.py:2941
msgid "Minimum price of part from external suppliers"
msgstr ""
-#: part/models.py:2912
+#: part/models.py:2946
msgid "Maximum Supplier Price"
msgstr ""
-#: part/models.py:2913
+#: part/models.py:2947
msgid "Maximum price of part from external suppliers"
msgstr ""
-#: part/models.py:2918
+#: part/models.py:2952
msgid "Minimum Variant Cost"
msgstr ""
-#: part/models.py:2919
+#: part/models.py:2953
msgid "Calculated minimum cost of variant parts"
msgstr ""
-#: part/models.py:2924
+#: part/models.py:2958
msgid "Maximum Variant Cost"
msgstr ""
-#: part/models.py:2925
+#: part/models.py:2959
msgid "Calculated maximum cost of variant parts"
msgstr ""
-#: part/models.py:2931
+#: part/models.py:2965
msgid "Calculated overall minimum cost"
msgstr ""
-#: part/models.py:2937
+#: part/models.py:2971
msgid "Calculated overall maximum cost"
msgstr ""
-#: part/models.py:2942
+#: part/models.py:2976
msgid "Minimum Sale Price"
msgstr ""
-#: part/models.py:2943
+#: part/models.py:2977
msgid "Minimum sale price based on price breaks"
msgstr ""
-#: part/models.py:2948
+#: part/models.py:2982
msgid "Maximum Sale Price"
msgstr ""
-#: part/models.py:2949
+#: part/models.py:2983
msgid "Maximum sale price based on price breaks"
msgstr ""
-#: part/models.py:2954
+#: part/models.py:2988
msgid "Minimum Sale Cost"
msgstr ""
-#: part/models.py:2955
+#: part/models.py:2989
msgid "Minimum historical sale price"
msgstr ""
-#: part/models.py:2960
+#: part/models.py:2994
msgid "Maximum Sale Cost"
msgstr ""
-#: part/models.py:2961
+#: part/models.py:2995
msgid "Maximum historical sale price"
msgstr ""
-#: part/models.py:2980
+#: part/models.py:3014
msgid "Part for stocktake"
msgstr ""
-#: part/models.py:2985
+#: part/models.py:3019
msgid "Item Count"
msgstr ""
-#: part/models.py:2986
+#: part/models.py:3020
msgid "Number of individual stock entries at time of stocktake"
msgstr ""
-#: part/models.py:2993
+#: part/models.py:3027
msgid "Total available stock at time of stocktake"
msgstr ""
-#: part/models.py:2997 part/models.py:3080
+#: part/models.py:3031 part/models.py:3114
#: part/templates/part/part_scheduling.html:13
#: report/templates/report/inventree_test_report_base.html:106
#: templates/InvenTree/settings/plugin_settings.html:37
#: templates/InvenTree/settings/settings_staff_js.html:360
-#: templates/js/translated/part.js:1059 templates/js/translated/pricing.js:812
+#: templates/js/translated/part.js:1058 templates/js/translated/pricing.js:812
#: templates/js/translated/pricing.js:936
-#: templates/js/translated/purchase_order.js:1691
-#: templates/js/translated/stock.js:2558
+#: templates/js/translated/purchase_order.js:1706
+#: templates/js/translated/stock.js:2689
msgid "Date"
msgstr ""
-#: part/models.py:2998
+#: part/models.py:3032
msgid "Date stocktake was performed"
msgstr ""
-#: part/models.py:3006
+#: part/models.py:3040
msgid "Additional notes"
msgstr ""
-#: part/models.py:3014
+#: part/models.py:3048
msgid "User who performed this stocktake"
msgstr ""
-#: part/models.py:3019
+#: part/models.py:3053
msgid "Minimum Stock Cost"
msgstr ""
-#: part/models.py:3020
+#: part/models.py:3054
msgid "Estimated minimum cost of stock on hand"
msgstr ""
-#: part/models.py:3025
+#: part/models.py:3059
msgid "Maximum Stock Cost"
msgstr ""
-#: part/models.py:3026
+#: part/models.py:3060
msgid "Estimated maximum cost of stock on hand"
msgstr ""
-#: part/models.py:3087 templates/InvenTree/settings/settings_staff_js.html:349
+#: part/models.py:3121 templates/InvenTree/settings/settings_staff_js.html:349
msgid "Report"
msgstr ""
-#: part/models.py:3088
+#: part/models.py:3122
msgid "Stocktake report file (generated internally)"
msgstr ""
-#: part/models.py:3093 templates/InvenTree/settings/settings_staff_js.html:356
+#: part/models.py:3127 templates/InvenTree/settings/settings_staff_js.html:356
msgid "Part Count"
msgstr ""
-#: part/models.py:3094
+#: part/models.py:3128
msgid "Number of parts covered by stocktake"
msgstr ""
-#: part/models.py:3102
+#: part/models.py:3136
msgid "User who requested this stocktake report"
msgstr ""
-#: part/models.py:3238
+#: part/models.py:3272
msgid "Test templates can only be created for trackable parts"
msgstr ""
-#: part/models.py:3255
+#: part/models.py:3289
msgid "Test with this name already exists for this part"
msgstr ""
-#: part/models.py:3275 templates/js/translated/part.js:2821
+#: part/models.py:3309 templates/js/translated/part.js:2806
msgid "Test Name"
msgstr ""
-#: part/models.py:3276
+#: part/models.py:3310
msgid "Enter a name for the test"
msgstr ""
-#: part/models.py:3281
+#: part/models.py:3315
msgid "Test Description"
msgstr ""
-#: part/models.py:3282
+#: part/models.py:3316
msgid "Enter description for this test"
msgstr ""
-#: part/models.py:3287 templates/js/translated/part.js:2830
-#: templates/js/translated/table_filters.js:423
+#: part/models.py:3321 templates/js/translated/part.js:2815
+#: templates/js/translated/table_filters.js:429
msgid "Required"
msgstr ""
-#: part/models.py:3288
+#: part/models.py:3322
msgid "Is this test required to pass?"
msgstr ""
-#: part/models.py:3293 templates/js/translated/part.js:2838
+#: part/models.py:3327 templates/js/translated/part.js:2823
msgid "Requires Value"
msgstr ""
-#: part/models.py:3294
+#: part/models.py:3328
msgid "Does this test require a value when adding a test result?"
msgstr ""
-#: part/models.py:3299 templates/js/translated/part.js:2845
+#: part/models.py:3333 templates/js/translated/part.js:2830
msgid "Requires Attachment"
msgstr ""
-#: part/models.py:3300
+#: part/models.py:3334
msgid "Does this test require a file attachment when adding a test result?"
msgstr ""
-#: part/models.py:3346
+#: part/models.py:3380
msgid "Checkbox parameters cannot have units"
msgstr ""
-#: part/models.py:3351
+#: part/models.py:3385
msgid "Checkbox parameters cannot have choices"
msgstr ""
-#: part/models.py:3369
+#: part/models.py:3403
msgid "Choices must be unique"
msgstr ""
-#: part/models.py:3385
+#: part/models.py:3419
msgid "Parameter template name must be unique"
msgstr ""
-#: part/models.py:3401
+#: part/models.py:3435
msgid "Parameter Name"
msgstr ""
-#: part/models.py:3407
+#: part/models.py:3441
msgid "Physical units for this parameter"
msgstr ""
-#: part/models.py:3417
+#: part/models.py:3451
msgid "Parameter description"
msgstr ""
-#: part/models.py:3423 templates/js/translated/part.js:1600
-#: templates/js/translated/table_filters.js:734
+#: part/models.py:3457 templates/js/translated/part.js:1599
+#: templates/js/translated/table_filters.js:756
msgid "Checkbox"
msgstr ""
-#: part/models.py:3424
+#: part/models.py:3458
msgid "Is this parameter a checkbox?"
msgstr ""
-#: part/models.py:3429 templates/js/translated/part.js:1609
+#: part/models.py:3463 templates/js/translated/part.js:1608
msgid "Choices"
msgstr ""
-#: part/models.py:3430
+#: part/models.py:3464
msgid "Valid choices for this parameter (comma-separated)"
msgstr ""
-#: part/models.py:3511
+#: part/models.py:3545
msgid "Invalid choice for parameter value"
msgstr ""
-#: part/models.py:3555
+#: part/models.py:3589
msgid "Parent Part"
msgstr ""
-#: part/models.py:3560 part/models.py:3621 part/models.py:3622
+#: part/models.py:3594 part/models.py:3670 part/models.py:3671
#: templates/InvenTree/settings/settings_staff_js.html:199
msgid "Parameter Template"
msgstr ""
-#: part/models.py:3565
+#: part/models.py:3599
msgid "Data"
msgstr ""
-#: part/models.py:3565
+#: part/models.py:3599
msgid "Parameter Value"
msgstr ""
-#: part/models.py:3626 templates/InvenTree/settings/settings_staff_js.html:208
+#: part/models.py:3675 templates/InvenTree/settings/settings_staff_js.html:208
msgid "Default Value"
msgstr ""
-#: part/models.py:3627
+#: part/models.py:3676
msgid "Default Parameter Value"
msgstr ""
-#: part/models.py:3664
+#: part/models.py:3713
msgid "Part ID or part name"
msgstr ""
-#: part/models.py:3668
+#: part/models.py:3717
msgid "Unique part ID value"
msgstr ""
-#: part/models.py:3676
+#: part/models.py:3725
msgid "Part IPN value"
msgstr ""
-#: part/models.py:3679
+#: part/models.py:3728
msgid "Level"
msgstr ""
-#: part/models.py:3680
+#: part/models.py:3729
msgid "BOM level"
msgstr ""
-#: part/models.py:3764
+#: part/models.py:3735 part/models.py:4113
+msgid "BOM Item"
+msgstr ""
+
+#: part/models.py:3808
msgid "Select parent part"
msgstr ""
-#: part/models.py:3772
+#: part/models.py:3816
msgid "Sub part"
msgstr ""
-#: part/models.py:3773
+#: part/models.py:3817
msgid "Select part to be used in BOM"
msgstr ""
-#: part/models.py:3779
+#: part/models.py:3823
msgid "BOM quantity for this BOM item"
msgstr ""
-#: part/models.py:3783 part/templates/part/upload_bom.html:58
-#: templates/js/translated/bom.js:971 templates/js/translated/bom.js:998
-#: templates/js/translated/build.js:2113
-#: templates/js/translated/table_filters.js:156
-#: templates/js/translated/table_filters.js:185
-#: templates/js/translated/table_filters.js:500
-msgid "Optional"
-msgstr ""
-
-#: part/models.py:3784
+#: part/models.py:3828
msgid "This BOM item is optional"
msgstr ""
-#: part/models.py:3789 templates/js/translated/bom.js:967
-#: templates/js/translated/bom.js:1007 templates/js/translated/build.js:2104
-#: templates/js/translated/table_filters.js:160
-#: templates/js/translated/table_filters.js:496
-msgid "Consumable"
-msgstr ""
-
-#: part/models.py:3790
+#: part/models.py:3834
msgid "This BOM item is consumable (it is not tracked in build orders)"
msgstr ""
-#: part/models.py:3794 part/templates/part/upload_bom.html:55
+#: part/models.py:3838 part/templates/part/upload_bom.html:55
msgid "Overage"
msgstr ""
-#: part/models.py:3795
+#: part/models.py:3839
msgid "Estimated build wastage quantity (absolute or percentage)"
msgstr ""
-#: part/models.py:3798
+#: part/models.py:3842
msgid "BOM item reference"
msgstr ""
-#: part/models.py:3801
+#: part/models.py:3845
msgid "BOM item notes"
msgstr ""
-#: part/models.py:3805
+#: part/models.py:3849
msgid "Checksum"
msgstr ""
-#: part/models.py:3805
+#: part/models.py:3849
msgid "BOM line checksum"
msgstr ""
-#: part/models.py:3810 templates/js/translated/table_filters.js:144
+#: part/models.py:3854 templates/js/translated/table_filters.js:150
msgid "Validated"
msgstr ""
-#: part/models.py:3811
+#: part/models.py:3855
msgid "This BOM item has been validated"
msgstr ""
-#: part/models.py:3816 part/templates/part/upload_bom.html:57
-#: templates/js/translated/bom.js:1024
-#: templates/js/translated/table_filters.js:148
-#: templates/js/translated/table_filters.js:181
+#: part/models.py:3860 part/templates/part/upload_bom.html:57
+#: templates/js/translated/bom.js:1042
+#: templates/js/translated/table_filters.js:154
+#: templates/js/translated/table_filters.js:187
msgid "Gets inherited"
msgstr ""
-#: part/models.py:3817
+#: part/models.py:3861
msgid "This BOM item is inherited by BOMs for variant parts"
msgstr ""
-#: part/models.py:3822 part/templates/part/upload_bom.html:56
-#: templates/js/translated/bom.js:1016
+#: part/models.py:3866 part/templates/part/upload_bom.html:56
+#: templates/js/translated/bom.js:1034
msgid "Allow Variants"
msgstr ""
-#: part/models.py:3823
+#: part/models.py:3867
msgid "Stock items for variant parts can be used for this BOM item"
msgstr ""
-#: part/models.py:3909 stock/models.py:577
+#: part/models.py:3953 stock/models.py:577
msgid "Quantity must be integer value for trackable parts"
msgstr ""
-#: part/models.py:3918 part/models.py:3920
+#: part/models.py:3962 part/models.py:3964
msgid "Sub part must be specified"
msgstr ""
-#: part/models.py:4036
+#: part/models.py:4080
msgid "BOM Item Substitute"
msgstr ""
-#: part/models.py:4057
+#: part/models.py:4101
msgid "Substitute part cannot be the same as the master part"
msgstr ""
-#: part/models.py:4070
+#: part/models.py:4114
msgid "Parent BOM item"
msgstr ""
-#: part/models.py:4078
+#: part/models.py:4122
msgid "Substitute part"
msgstr ""
-#: part/models.py:4093
+#: part/models.py:4137
msgid "Part 1"
msgstr ""
-#: part/models.py:4097
+#: part/models.py:4141
msgid "Part 2"
msgstr ""
-#: part/models.py:4097
+#: part/models.py:4141
msgid "Select Related Part"
msgstr ""
-#: part/models.py:4115
+#: part/models.py:4159
msgid "Part relationship cannot be created between a part and itself"
msgstr ""
-#: part/models.py:4119
+#: part/models.py:4163
msgid "Duplicate relationship already exists"
msgstr ""
-#: part/serializers.py:152 part/serializers.py:175 stock/serializers.py:257
+#: part/serializers.py:152 part/serializers.py:175 stock/serializers.py:319
msgid "Purchase currency of this stock item"
msgstr ""
-#: part/serializers.py:302
+#: part/serializers.py:313
+msgid "No parts selected"
+msgstr ""
+
+#: part/serializers.py:321
+msgid "Select category"
+msgstr ""
+
+#: part/serializers.py:352
msgid "Original Part"
msgstr ""
-#: part/serializers.py:302
+#: part/serializers.py:352
msgid "Select original part to duplicate"
msgstr ""
-#: part/serializers.py:307
+#: part/serializers.py:357
msgid "Copy Image"
msgstr ""
-#: part/serializers.py:307
+#: part/serializers.py:357
msgid "Copy image from original part"
msgstr ""
-#: part/serializers.py:312 part/templates/part/detail.html:296
+#: part/serializers.py:362 part/templates/part/detail.html:277
msgid "Copy BOM"
msgstr ""
-#: part/serializers.py:312
+#: part/serializers.py:362
msgid "Copy bill of materials from original part"
msgstr ""
-#: part/serializers.py:317
+#: part/serializers.py:367
msgid "Copy Parameters"
msgstr ""
-#: part/serializers.py:317
+#: part/serializers.py:367
msgid "Copy parameter data from original part"
msgstr ""
-#: part/serializers.py:327
+#: part/serializers.py:377
msgid "Initial Stock Quantity"
msgstr ""
-#: part/serializers.py:327
+#: part/serializers.py:377
msgid "Specify initial stock quantity for this Part. If quantity is zero, no stock is added."
msgstr ""
-#: part/serializers.py:333
+#: part/serializers.py:383
msgid "Initial Stock Location"
msgstr ""
-#: part/serializers.py:333
+#: part/serializers.py:383
msgid "Specify initial stock location for this Part"
msgstr ""
-#: part/serializers.py:343
+#: part/serializers.py:393
msgid "Select supplier (or leave blank to skip)"
msgstr ""
-#: part/serializers.py:354
+#: part/serializers.py:404
msgid "Select manufacturer (or leave blank to skip)"
msgstr ""
-#: part/serializers.py:360
+#: part/serializers.py:410
msgid "Manufacturer part number"
msgstr ""
-#: part/serializers.py:367
+#: part/serializers.py:417
msgid "Selected company is not a valid supplier"
msgstr ""
-#: part/serializers.py:375
+#: part/serializers.py:425
msgid "Selected company is not a valid manufacturer"
msgstr ""
-#: part/serializers.py:387
+#: part/serializers.py:437
msgid "Manufacturer part matching this MPN already exists"
msgstr ""
-#: part/serializers.py:395
+#: part/serializers.py:445
msgid "Supplier part matching this SKU already exists"
msgstr ""
-#: part/serializers.py:620 part/templates/part/copy_part.html:9
-#: templates/js/translated/part.js:449
+#: part/serializers.py:682 part/templates/part/copy_part.html:9
+#: templates/js/translated/part.js:448
msgid "Duplicate Part"
msgstr ""
-#: part/serializers.py:620
+#: part/serializers.py:682
msgid "Copy initial data from another Part"
msgstr ""
-#: part/serializers.py:625 templates/js/translated/part.js:103
+#: part/serializers.py:687 templates/js/translated/part.js:102
msgid "Initial Stock"
msgstr ""
-#: part/serializers.py:625
+#: part/serializers.py:687
msgid "Create Part with initial stock quantity"
msgstr ""
-#: part/serializers.py:630
+#: part/serializers.py:692
msgid "Supplier Information"
msgstr ""
-#: part/serializers.py:630
+#: part/serializers.py:692
msgid "Add initial supplier information for this part"
msgstr ""
-#: part/serializers.py:636
+#: part/serializers.py:698
msgid "Copy Category Parameters"
msgstr ""
-#: part/serializers.py:637
+#: part/serializers.py:699
msgid "Copy parameter templates from selected part category"
msgstr ""
-#: part/serializers.py:842
+#: part/serializers.py:904
msgid "Limit stocktake report to a particular part, and any variant parts"
msgstr ""
-#: part/serializers.py:848
+#: part/serializers.py:910
msgid "Limit stocktake report to a particular part category, and any child categories"
msgstr ""
-#: part/serializers.py:854
+#: part/serializers.py:916
msgid "Limit stocktake report to a particular stock location, and any child locations"
msgstr ""
-#: part/serializers.py:859
+#: part/serializers.py:921
msgid "Generate Report"
msgstr ""
-#: part/serializers.py:860
+#: part/serializers.py:922
msgid "Generate report file containing calculated stocktake data"
msgstr ""
-#: part/serializers.py:865
+#: part/serializers.py:927
msgid "Update Parts"
msgstr ""
-#: part/serializers.py:866
+#: part/serializers.py:928
msgid "Update specified parts with calculated stocktake data"
msgstr ""
-#: part/serializers.py:874
+#: part/serializers.py:936
msgid "Stocktake functionality is not enabled"
msgstr ""
-#: part/serializers.py:963
+#: part/serializers.py:1025
msgid "Update"
msgstr ""
-#: part/serializers.py:964
+#: part/serializers.py:1026
msgid "Update pricing for this part"
msgstr ""
-#: part/serializers.py:1246
+#: part/serializers.py:1308
msgid "Select part to copy BOM from"
msgstr ""
-#: part/serializers.py:1254
+#: part/serializers.py:1316
msgid "Remove Existing Data"
msgstr ""
-#: part/serializers.py:1255
+#: part/serializers.py:1317
msgid "Remove existing BOM items before copying"
msgstr ""
-#: part/serializers.py:1260
+#: part/serializers.py:1322
msgid "Include Inherited"
msgstr ""
-#: part/serializers.py:1261
+#: part/serializers.py:1323
msgid "Include BOM items which are inherited from templated parts"
msgstr ""
-#: part/serializers.py:1266
+#: part/serializers.py:1328
msgid "Skip Invalid Rows"
msgstr ""
-#: part/serializers.py:1267
+#: part/serializers.py:1329
msgid "Enable this option to skip invalid rows"
msgstr ""
-#: part/serializers.py:1272
+#: part/serializers.py:1334
msgid "Copy Substitute Parts"
msgstr ""
-#: part/serializers.py:1273
+#: part/serializers.py:1335
msgid "Copy substitute parts when duplicate BOM items"
msgstr ""
-#: part/serializers.py:1313
+#: part/serializers.py:1375
msgid "Clear Existing BOM"
msgstr ""
-#: part/serializers.py:1314
+#: part/serializers.py:1376
msgid "Delete existing BOM items before uploading"
msgstr ""
-#: part/serializers.py:1344
+#: part/serializers.py:1406
msgid "No part column specified"
msgstr ""
-#: part/serializers.py:1387
+#: part/serializers.py:1449
msgid "Multiple matching parts found"
msgstr ""
-#: part/serializers.py:1390
+#: part/serializers.py:1452
msgid "No matching part found"
msgstr ""
-#: part/serializers.py:1393
+#: part/serializers.py:1455
msgid "Part is not designated as a component"
msgstr ""
-#: part/serializers.py:1402
+#: part/serializers.py:1464
msgid "Quantity not provided"
msgstr ""
-#: part/serializers.py:1410
+#: part/serializers.py:1472
msgid "Invalid quantity"
msgstr ""
-#: part/serializers.py:1431
+#: part/serializers.py:1493
msgid "At least one BOM item is required"
msgstr ""
@@ -6421,9 +6453,9 @@ msgstr ""
msgid "The available stock for {part.name} has fallen below the configured minimum level"
msgstr ""
-#: part/tasks.py:294 templates/js/translated/part.js:1040
-#: templates/js/translated/part.js:1793 templates/js/translated/part.js:1848
-#: templates/js/translated/purchase_order.js:2052
+#: part/tasks.py:294 templates/js/translated/part.js:1039
+#: templates/js/translated/part.js:1792 templates/js/translated/part.js:1847
+#: templates/js/translated/purchase_order.js:2062
msgid "Total Quantity"
msgstr ""
@@ -6461,14 +6493,6 @@ msgstr ""
msgid "The BOM for %(part)s has not been validated."
msgstr ""
-#: part/templates/part/bom.html:30 part/templates/part/detail.html:291
-msgid "BOM actions"
-msgstr ""
-
-#: part/templates/part/bom.html:34
-msgid "Delete Items"
-msgstr ""
-
#: part/templates/part/category.html:34
msgid "Perform stocktake for this part category"
msgstr ""
@@ -6505,7 +6529,7 @@ msgstr ""
msgid "Top level part category"
msgstr ""
-#: part/templates/part/category.html:121 part/templates/part/category.html:225
+#: part/templates/part/category.html:121 part/templates/part/category.html:206
#: part/templates/part/category_sidebar.html:7
msgid "Subcategories"
msgstr ""
@@ -6518,33 +6542,20 @@ msgstr ""
msgid "Create new part"
msgstr ""
-#: part/templates/part/category.html:165 templates/js/translated/bom.js:443
+#: part/templates/part/category.html:165 templates/js/translated/bom.js:444
msgid "New Part"
msgstr ""
-#: part/templates/part/category.html:175 part/templates/part/detail.html:390
-#: part/templates/part/detail.html:421
-msgid "Options"
-msgstr ""
-
-#: part/templates/part/category.html:179
-msgid "Set category"
-msgstr ""
-
-#: part/templates/part/category.html:180
-msgid "Set Category"
-msgstr ""
-
-#: part/templates/part/category.html:208
+#: part/templates/part/category.html:191
#: templates/InvenTree/settings/sidebar.html:47
msgid "Part Parameters"
msgstr ""
-#: part/templates/part/category.html:229
+#: part/templates/part/category.html:210
msgid "Create new part category"
msgstr ""
-#: part/templates/part/category.html:230
+#: part/templates/part/category.html:211
msgid "New Category"
msgstr ""
@@ -6581,7 +6592,7 @@ msgid "Refresh scheduling data"
msgstr ""
#: part/templates/part/detail.html:45 part/templates/part/prices.html:15
-#: templates/js/translated/tables.js:584
+#: templates/js/translated/tables.js:560
msgid "Refresh"
msgstr ""
@@ -6592,7 +6603,7 @@ msgstr ""
#: part/templates/part/detail.html:67 part/templates/part/part_sidebar.html:50
#: stock/admin.py:130 templates/InvenTree/settings/part_stocktake.html:29
#: templates/InvenTree/settings/sidebar.html:51
-#: templates/js/translated/stock.js:1952 users/models.py:39
+#: templates/js/translated/stock.js:2109 users/models.py:39
msgid "Stocktake"
msgstr ""
@@ -6604,101 +6615,101 @@ msgstr ""
msgid "Add Test Template"
msgstr ""
-#: part/templates/part/detail.html:145 stock/templates/stock/item.html:53
+#: part/templates/part/detail.html:139 stock/templates/stock/item.html:49
msgid "Sales Order Allocations"
msgstr ""
-#: part/templates/part/detail.html:165
+#: part/templates/part/detail.html:156
msgid "Part Notes"
msgstr ""
-#: part/templates/part/detail.html:180
+#: part/templates/part/detail.html:171
msgid "Part Variants"
msgstr ""
-#: part/templates/part/detail.html:184
+#: part/templates/part/detail.html:175
msgid "Create new variant"
msgstr ""
-#: part/templates/part/detail.html:185
+#: part/templates/part/detail.html:176
msgid "New Variant"
msgstr ""
-#: part/templates/part/detail.html:212
+#: part/templates/part/detail.html:199
msgid "Add new parameter"
msgstr ""
-#: part/templates/part/detail.html:249 part/templates/part/part_sidebar.html:58
+#: part/templates/part/detail.html:232 part/templates/part/part_sidebar.html:58
msgid "Related Parts"
msgstr ""
-#: part/templates/part/detail.html:253 part/templates/part/detail.html:254
+#: part/templates/part/detail.html:236 part/templates/part/detail.html:237
msgid "Add Related"
msgstr ""
-#: part/templates/part/detail.html:274 part/templates/part/part_sidebar.html:17
+#: part/templates/part/detail.html:255 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:279
+#: part/templates/part/detail.html:260
msgid "Export actions"
msgstr ""
-#: part/templates/part/detail.html:283 templates/js/translated/bom.js:339
+#: part/templates/part/detail.html:264 templates/js/translated/bom.js:340
msgid "Export BOM"
msgstr ""
-#: part/templates/part/detail.html:285
+#: part/templates/part/detail.html:266
msgid "Print BOM Report"
msgstr ""
-#: part/templates/part/detail.html:295
+#: part/templates/part/detail.html:272
+msgid "BOM actions"
+msgstr ""
+
+#: part/templates/part/detail.html:276
msgid "Upload BOM"
msgstr ""
-#: part/templates/part/detail.html:297
+#: part/templates/part/detail.html:278
msgid "Validate BOM"
msgstr ""
-#: part/templates/part/detail.html:302 part/templates/part/detail.html:303
-#: templates/js/translated/bom.js:1279 templates/js/translated/bom.js:1280
+#: part/templates/part/detail.html:283 part/templates/part/detail.html:284
+#: templates/js/translated/bom.js:1299 templates/js/translated/bom.js:1300
msgid "Add BOM Item"
msgstr ""
-#: part/templates/part/detail.html:316
+#: part/templates/part/detail.html:297
msgid "Assemblies"
msgstr ""
-#: part/templates/part/detail.html:334
+#: part/templates/part/detail.html:313
msgid "Part Builds"
msgstr ""
-#: part/templates/part/detail.html:361 stock/templates/stock/item.html:38
+#: part/templates/part/detail.html:338 stock/templates/stock/item.html:36
msgid "Build Order Allocations"
msgstr ""
-#: part/templates/part/detail.html:377
+#: part/templates/part/detail.html:352
msgid "Part Suppliers"
msgstr ""
-#: part/templates/part/detail.html:407
+#: part/templates/part/detail.html:372
msgid "Part Manufacturers"
msgstr ""
-#: part/templates/part/detail.html:423
-msgid "Delete manufacturer parts"
-msgstr ""
-
-#: part/templates/part/detail.html:707
+#: part/templates/part/detail.html:654
msgid "Related Part"
msgstr ""
-#: part/templates/part/detail.html:715
+#: part/templates/part/detail.html:662
msgid "Add Related Part"
msgstr ""
-#: part/templates/part/detail.html:800
+#: part/templates/part/detail.html:747
msgid "Add Test Result Template"
msgstr ""
@@ -6732,13 +6743,13 @@ msgid "Download Part Import Template"
msgstr ""
#: part/templates/part/import_wizard/part_upload.html:92
-#: templates/js/translated/bom.js:308 templates/js/translated/bom.js:342
+#: templates/js/translated/bom.js:309 templates/js/translated/bom.js:343
#: templates/js/translated/order.js:129 templates/js/translated/tables.js:189
msgid "Format"
msgstr ""
#: part/templates/part/import_wizard/part_upload.html:93
-#: templates/js/translated/bom.js:309 templates/js/translated/bom.js:343
+#: templates/js/translated/bom.js:310 templates/js/translated/bom.js:344
#: templates/js/translated/order.js:130
msgid "Select file format"
msgstr ""
@@ -6779,7 +6790,7 @@ msgstr ""
msgid "Transfer part stock"
msgstr ""
-#: part/templates/part/part_base.html:93
+#: part/templates/part/part_base.html:93 templates/js/translated/part.js:2264
msgid "Part actions"
msgstr ""
@@ -6824,10 +6835,10 @@ msgid "Part is not active"
msgstr ""
#: part/templates/part/part_base.html:148
-#: templates/js/translated/company.js:945
-#: templates/js/translated/company.js:1185
-#: templates/js/translated/model_renderers.js:273
-#: templates/js/translated/part.js:792 templates/js/translated/part.js:1192
+#: templates/js/translated/company.js:1318
+#: templates/js/translated/company.js:1606
+#: templates/js/translated/model_renderers.js:287
+#: templates/js/translated/part.js:791 templates/js/translated/part.js:1191
msgid "Inactive"
msgstr ""
@@ -6850,7 +6861,7 @@ msgstr ""
msgid "Allocated to Sales Orders"
msgstr ""
-#: part/templates/part/part_base.html:237 templates/js/translated/bom.js:1178
+#: part/templates/part/part_base.html:237 templates/js/translated/bom.js:1198
msgid "Can Build"
msgstr ""
@@ -6858,8 +6869,8 @@ msgstr ""
msgid "Minimum stock level"
msgstr ""
-#: part/templates/part/part_base.html:324 templates/js/translated/bom.js:1041
-#: templates/js/translated/part.js:1238 templates/js/translated/part.js:2304
+#: part/templates/part/part_base.html:324 templates/js/translated/bom.js:1059
+#: templates/js/translated/part.js:1237 templates/js/translated/part.js:2380
#: templates/js/translated/pricing.js:391
#: templates/js/translated/pricing.js:1040
msgid "Price Range"
@@ -6882,7 +6893,7 @@ msgstr ""
msgid "Link Barcode to Part"
msgstr ""
-#: part/templates/part/part_base.html:474 templates/js/translated/part.js:2191
+#: part/templates/part/part_base.html:474 templates/js/translated/part.js:2258
msgid "part"
msgstr ""
@@ -6956,9 +6967,9 @@ msgstr ""
#: stock/templates/stock/stock_app_base.html:10
#: templates/InvenTree/search.html:153
#: templates/InvenTree/settings/sidebar.html:49
-#: templates/js/translated/part.js:1216 templates/js/translated/part.js:2120
-#: templates/js/translated/part.js:2284 templates/js/translated/stock.js:1022
-#: templates/js/translated/stock.js:1829 templates/navbar.html:31
+#: templates/js/translated/part.js:1215 templates/js/translated/part.js:2119
+#: templates/js/translated/part.js:2360 templates/js/translated/stock.js:1021
+#: templates/js/translated/stock.js:1986 templates/navbar.html:31
msgid "Stock"
msgstr ""
@@ -6989,9 +7000,9 @@ msgstr ""
#: part/templates/part/prices.html:25 stock/admin.py:129
#: stock/templates/stock/item_base.html:442
-#: templates/js/translated/company.js:1313
-#: templates/js/translated/company.js:1323
-#: templates/js/translated/stock.js:1982
+#: templates/js/translated/company.js:1734
+#: templates/js/translated/company.js:1744
+#: templates/js/translated/stock.js:2139
msgid "Last Updated"
msgstr ""
@@ -7054,12 +7065,12 @@ msgstr ""
msgid "Add Sell Price Break"
msgstr ""
-#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:682
-#: templates/js/translated/part.js:2115 templates/js/translated/part.js:2117
+#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:681
+#: templates/js/translated/part.js:2114 templates/js/translated/part.js:2116
msgid "No Stock"
msgstr ""
-#: part/templates/part/stock_count.html:9 templates/InvenTree/index.html:167
+#: part/templates/part/stock_count.html:9 templates/InvenTree/index.html:120
msgid "Low Stock"
msgstr ""
@@ -7163,7 +7174,7 @@ msgid "Match found for barcode data"
msgstr ""
#: plugin/base/barcodes/api.py:120
-#: templates/js/translated/purchase_order.js:1372
+#: templates/js/translated/purchase_order.js:1387
msgid "Barcode matches existing item"
msgstr ""
@@ -7226,43 +7237,43 @@ msgstr ""
msgid "Open link"
msgstr ""
-#: plugin/models.py:27
+#: plugin/models.py:28
msgid "Plugin Configuration"
msgstr ""
-#: plugin/models.py:28
+#: plugin/models.py:29
msgid "Plugin Configurations"
msgstr ""
-#: plugin/models.py:33
+#: plugin/models.py:34
msgid "Key"
msgstr ""
-#: plugin/models.py:34
+#: plugin/models.py:35
msgid "Key of plugin"
msgstr ""
-#: plugin/models.py:42
+#: plugin/models.py:43
msgid "PluginName of the plugin"
msgstr ""
-#: plugin/models.py:48
+#: plugin/models.py:49
msgid "Is the plugin active"
msgstr ""
-#: plugin/models.py:124
+#: plugin/models.py:125
msgid "Sample plugin"
msgstr ""
-#: plugin/models.py:133
+#: plugin/models.py:134
msgid "Builtin Plugin"
msgstr ""
-#: plugin/models.py:159 templates/InvenTree/settings/plugin_settings.html:9
+#: plugin/models.py:160 templates/InvenTree/settings/plugin_settings.html:9
msgid "Plugin"
msgstr ""
-#: plugin/models.py:210
+#: plugin/models.py:211
msgid "Method"
msgstr ""
@@ -7414,47 +7425,47 @@ msgstr ""
msgid "Build query filters (comma-separated list of key=value pairs"
msgstr ""
-#: report/models.py:418
+#: report/models.py:420
msgid "Part Filters"
msgstr ""
-#: report/models.py:419
+#: report/models.py:421
msgid "Part query filters (comma-separated list of key=value pairs"
msgstr ""
-#: report/models.py:453
+#: report/models.py:455
msgid "Purchase order query filters"
msgstr ""
-#: report/models.py:491
+#: report/models.py:493
msgid "Sales order query filters"
msgstr ""
-#: report/models.py:529
+#: report/models.py:531
msgid "Return order query filters"
msgstr ""
-#: report/models.py:582
+#: report/models.py:584
msgid "Snippet"
msgstr ""
-#: report/models.py:583
+#: report/models.py:585
msgid "Report snippet file"
msgstr ""
-#: report/models.py:587
+#: report/models.py:589
msgid "Snippet file description"
msgstr ""
-#: report/models.py:624
+#: report/models.py:626
msgid "Asset"
msgstr ""
-#: report/models.py:625
+#: report/models.py:627
msgid "Report asset file"
msgstr ""
-#: report/models.py:632
+#: report/models.py:634
msgid "Asset file description"
msgstr ""
@@ -7475,8 +7486,8 @@ msgstr ""
#: templates/js/translated/order.js:316 templates/js/translated/pricing.js:527
#: templates/js/translated/pricing.js:596
#: templates/js/translated/pricing.js:820
-#: templates/js/translated/purchase_order.js:2083
-#: templates/js/translated/sales_order.js:1817
+#: templates/js/translated/purchase_order.js:2093
+#: templates/js/translated/sales_order.js:1829
msgid "Unit Price"
msgstr ""
@@ -7488,23 +7499,23 @@ msgstr ""
#: report/templates/report/inventree_po_report_base.html:72
#: report/templates/report/inventree_so_report_base.html:72
-#: templates/js/translated/purchase_order.js:1985
-#: templates/js/translated/sales_order.js:1792
+#: templates/js/translated/purchase_order.js:1995
+#: templates/js/translated/sales_order.js:1804
msgid "Total"
msgstr ""
#: report/templates/report/inventree_return_order_report_base.html:25
#: report/templates/report/inventree_test_report_base.html:88
#: stock/models.py:725 stock/templates/stock/item_base.html:312
-#: templates/js/translated/build.js:502 templates/js/translated/build.js:1423
-#: templates/js/translated/build.js:1989
-#: templates/js/translated/model_renderers.js:201
-#: templates/js/translated/return_order.js:528
-#: templates/js/translated/return_order.js:708
-#: templates/js/translated/sales_order.js:300
-#: templates/js/translated/sales_order.js:1597
-#: templates/js/translated/sales_order.js:1682
-#: templates/js/translated/stock.js:563
+#: templates/js/translated/build.js:508 templates/js/translated/build.js:1306
+#: templates/js/translated/build.js:2281
+#: templates/js/translated/model_renderers.js:215
+#: templates/js/translated/return_order.js:540
+#: templates/js/translated/return_order.js:720
+#: templates/js/translated/sales_order.js:312
+#: templates/js/translated/sales_order.js:1609
+#: templates/js/translated/sales_order.js:1694
+#: templates/js/translated/stock.js:562
msgid "Serial Number"
msgstr ""
@@ -7517,7 +7528,7 @@ msgid "Test Results"
msgstr ""
#: report/templates/report/inventree_test_report_base.html:102
-#: stock/models.py:2243 templates/js/translated/stock.js:1419
+#: stock/models.py:2243 templates/js/translated/stock.js:1418
msgid "Test"
msgstr ""
@@ -7548,8 +7559,8 @@ msgid "Installed Items"
msgstr ""
#: report/templates/report/inventree_test_report_base.html:168
-#: stock/admin.py:104 templates/js/translated/stock.js:667
-#: templates/js/translated/stock.js:838 templates/js/translated/stock.js:2849
+#: stock/admin.py:104 templates/js/translated/stock.js:666
+#: templates/js/translated/stock.js:837 templates/js/translated/stock.js:2976
msgid "Serial"
msgstr ""
@@ -7617,31 +7628,31 @@ msgstr ""
#: stock/admin.py:131 stock/models.py:789
#: stock/templates/stock/item_base.html:429
-#: templates/js/translated/stock.js:1966
+#: templates/js/translated/stock.js:2123
msgid "Expiry Date"
msgstr ""
-#: stock/api.py:420 templates/js/translated/table_filters.js:373
+#: stock/api.py:426 templates/js/translated/table_filters.js:379
msgid "External Location"
msgstr ""
-#: stock/api.py:582
+#: stock/api.py:619
msgid "Quantity is required"
msgstr ""
-#: stock/api.py:589
+#: stock/api.py:626
msgid "Valid part must be supplied"
msgstr ""
-#: stock/api.py:615
+#: stock/api.py:652
msgid "The given supplier part does not exist"
msgstr ""
-#: stock/api.py:624
+#: stock/api.py:661
msgid "The supplier part has a pack size defined, but flag use_pack_size not set"
msgstr ""
-#: stock/api.py:642
+#: stock/api.py:679
msgid "Serial numbers cannot be supplied for a non-trackable part"
msgstr ""
@@ -7652,7 +7663,7 @@ msgid "Stock Location"
msgstr ""
#: stock/models.py:55 stock/templates/stock/location.html:177
-#: templates/InvenTree/search.html:166 templates/js/translated/search.js:220
+#: templates/InvenTree/search.html:166 templates/js/translated/search.js:178
#: users/models.py:40
msgid "Stock Locations"
msgstr ""
@@ -7670,8 +7681,8 @@ msgstr ""
msgid "Stock items may not be directly located into a structural stock locations, but may be located to child locations."
msgstr ""
-#: stock/models.py:132 templates/js/translated/stock.js:2529
-#: templates/js/translated/table_filters.js:213
+#: stock/models.py:132 templates/js/translated/stock.js:2660
+#: templates/js/translated/table_filters.js:219
msgid "External"
msgstr ""
@@ -7687,7 +7698,7 @@ msgstr ""
msgid "Stock items cannot be located into structural stock locations!"
msgstr ""
-#: stock/models.py:583 stock/serializers.py:174
+#: stock/models.py:583 stock/serializers.py:223
msgid "Stock item cannot be created for virtual parts"
msgstr ""
@@ -7821,7 +7832,7 @@ msgstr ""
msgid "Quantity does not match serial numbers"
msgstr ""
-#: stock/models.py:1403 stock/serializers.py:374
+#: stock/models.py:1403 stock/serializers.py:440
msgid "Serial numbers already exist"
msgstr ""
@@ -7849,7 +7860,7 @@ msgstr ""
msgid "Serialized stock cannot be merged"
msgstr ""
-#: stock/models.py:1496 stock/serializers.py:975
+#: stock/models.py:1496 stock/serializers.py:1092
msgid "Duplicate stock items"
msgstr ""
@@ -7901,132 +7912,141 @@ msgstr ""
msgid "Test notes"
msgstr ""
-#: stock/serializers.py:76
+#: stock/serializers.py:121
msgid "Serial number is too large"
msgstr ""
-#: stock/serializers.py:166
+#: stock/serializers.py:215
msgid "Use pack size when adding: the quantity defined is the number of packs"
msgstr ""
-#: stock/serializers.py:254
+#: stock/serializers.py:316
msgid "Purchase price of this stock item, per unit or pack"
msgstr ""
-#: stock/serializers.py:307
+#: stock/serializers.py:373
msgid "Enter number of stock items to serialize"
msgstr ""
-#: stock/serializers.py:319
+#: stock/serializers.py:385
#, python-brace-format
msgid "Quantity must not exceed available stock quantity ({q})"
msgstr ""
-#: stock/serializers.py:325
+#: stock/serializers.py:391
msgid "Enter serial numbers for new items"
msgstr ""
-#: stock/serializers.py:336 stock/serializers.py:932 stock/serializers.py:1174
+#: stock/serializers.py:402 stock/serializers.py:1049 stock/serializers.py:1291
msgid "Destination stock location"
msgstr ""
-#: stock/serializers.py:343
+#: stock/serializers.py:409
msgid "Optional note field"
msgstr ""
-#: stock/serializers.py:353
+#: stock/serializers.py:419
msgid "Serial numbers cannot be assigned to this part"
msgstr ""
-#: stock/serializers.py:414
+#: stock/serializers.py:480
msgid "Select stock item to install"
msgstr ""
-#: stock/serializers.py:427
-msgid "Stock item is unavailable"
-msgstr ""
-
-#: stock/serializers.py:434
-msgid "Selected part is not in the Bill of Materials"
-msgstr ""
-
-#: stock/serializers.py:471
-msgid "Destination location for uninstalled item"
-msgstr ""
-
-#: stock/serializers.py:476 stock/serializers.py:557
+#: stock/serializers.py:485 stock/serializers.py:543 stock/serializers.py:624
+#: stock/serializers.py:682
msgid "Add transaction note (optional)"
msgstr ""
-#: stock/serializers.py:510
+#: stock/serializers.py:494
+msgid "Stock item is unavailable"
+msgstr ""
+
+#: stock/serializers.py:501
+msgid "Selected part is not in the Bill of Materials"
+msgstr ""
+
+#: stock/serializers.py:538
+msgid "Destination location for uninstalled item"
+msgstr ""
+
+#: stock/serializers.py:577
msgid "Select part to convert stock item into"
msgstr ""
-#: stock/serializers.py:521
+#: stock/serializers.py:588
msgid "Selected part is not a valid option for conversion"
msgstr ""
-#: stock/serializers.py:552
+#: stock/serializers.py:619
msgid "Destination location for returned item"
msgstr ""
-#: stock/serializers.py:787
+#: stock/serializers.py:663
+msgid "Select stock items to change status"
+msgstr ""
+
+#: stock/serializers.py:670
+msgid "No stock items selected"
+msgstr ""
+
+#: stock/serializers.py:904
msgid "Part must be salable"
msgstr ""
-#: stock/serializers.py:791
+#: stock/serializers.py:908
msgid "Item is allocated to a sales order"
msgstr ""
-#: stock/serializers.py:795
+#: stock/serializers.py:912
msgid "Item is allocated to a build order"
msgstr ""
-#: stock/serializers.py:826
+#: stock/serializers.py:943
msgid "Customer to assign stock items"
msgstr ""
-#: stock/serializers.py:832
+#: stock/serializers.py:949
msgid "Selected company is not a customer"
msgstr ""
-#: stock/serializers.py:840
+#: stock/serializers.py:957
msgid "Stock assignment notes"
msgstr ""
-#: stock/serializers.py:850 stock/serializers.py:1081
+#: stock/serializers.py:967 stock/serializers.py:1198
msgid "A list of stock items must be provided"
msgstr ""
-#: stock/serializers.py:939
+#: stock/serializers.py:1056
msgid "Stock merging notes"
msgstr ""
-#: stock/serializers.py:944
+#: stock/serializers.py:1061
msgid "Allow mismatched suppliers"
msgstr ""
-#: stock/serializers.py:945
+#: stock/serializers.py:1062
msgid "Allow stock items with different supplier parts to be merged"
msgstr ""
-#: stock/serializers.py:950
+#: stock/serializers.py:1067
msgid "Allow mismatched status"
msgstr ""
-#: stock/serializers.py:951
+#: stock/serializers.py:1068
msgid "Allow stock items with different status codes to be merged"
msgstr ""
-#: stock/serializers.py:961
+#: stock/serializers.py:1078
msgid "At least two stock items must be provided"
msgstr ""
-#: stock/serializers.py:1043
+#: stock/serializers.py:1160
msgid "StockItem primary key value"
msgstr ""
-#: stock/serializers.py:1071
+#: stock/serializers.py:1188
msgid "Stock transaction notes"
msgstr ""
@@ -8034,48 +8054,48 @@ msgstr ""
msgid "Stock Tracking Information"
msgstr ""
-#: stock/templates/stock/item.html:69
+#: stock/templates/stock/item.html:63
msgid "Child Stock Items"
msgstr ""
-#: stock/templates/stock/item.html:77
+#: stock/templates/stock/item.html:71
msgid "This stock item does not have any child items"
msgstr ""
-#: stock/templates/stock/item.html:86
+#: stock/templates/stock/item.html:80
#: stock/templates/stock/stock_sidebar.html:12
msgid "Test Data"
msgstr ""
-#: stock/templates/stock/item.html:90 stock/templates/stock/item_base.html:66
+#: stock/templates/stock/item.html:84 stock/templates/stock/item_base.html:66
msgid "Test Report"
msgstr ""
-#: stock/templates/stock/item.html:94 stock/templates/stock/item.html:288
+#: stock/templates/stock/item.html:88 stock/templates/stock/item.html:278
msgid "Delete Test Data"
msgstr ""
-#: stock/templates/stock/item.html:98
+#: stock/templates/stock/item.html:92
msgid "Add Test Data"
msgstr ""
-#: stock/templates/stock/item.html:132
+#: stock/templates/stock/item.html:124
msgid "Stock Item Notes"
msgstr ""
-#: stock/templates/stock/item.html:147
+#: stock/templates/stock/item.html:139
msgid "Installed Stock Items"
msgstr ""
-#: stock/templates/stock/item.html:152 templates/js/translated/stock.js:2996
+#: stock/templates/stock/item.html:144 templates/js/translated/stock.js:3123
msgid "Install Stock Item"
msgstr ""
-#: stock/templates/stock/item.html:276
+#: stock/templates/stock/item.html:266
msgid "Delete all test results for this stock item"
msgstr ""
-#: stock/templates/stock/item.html:305 templates/js/translated/stock.js:1611
+#: stock/templates/stock/item.html:295 templates/js/translated/stock.js:1610
msgid "Add Test Result"
msgstr ""
@@ -8083,13 +8103,13 @@ msgstr ""
msgid "Locate stock item"
msgstr ""
-#: stock/templates/stock/item_base.html:52 templates/stock_table.html:21
+#: stock/templates/stock/item_base.html:52
msgid "Scan to Location"
msgstr ""
#: stock/templates/stock/item_base.html:60
#: stock/templates/stock/location.html:69
-#: templates/js/translated/filters.js:322
+#: templates/js/translated/filters.js:432
msgid "Printing actions"
msgstr ""
@@ -8098,15 +8118,17 @@ msgid "Stock adjustment actions"
msgstr ""
#: stock/templates/stock/item_base.html:80
-#: stock/templates/stock/location.html:88 templates/stock_table.html:35
+#: stock/templates/stock/location.html:88 templates/js/translated/stock.js:1735
msgid "Count stock"
msgstr ""
-#: stock/templates/stock/item_base.html:82 templates/stock_table.html:33
+#: stock/templates/stock/item_base.html:82
+#: templates/js/translated/stock.js:1717
msgid "Add stock"
msgstr ""
-#: stock/templates/stock/item_base.html:83 templates/stock_table.html:34
+#: stock/templates/stock/item_base.html:83
+#: templates/js/translated/stock.js:1726
msgid "Remove stock"
msgstr ""
@@ -8115,11 +8137,12 @@ msgid "Serialize stock"
msgstr ""
#: stock/templates/stock/item_base.html:89
-#: stock/templates/stock/location.html:94 templates/stock_table.html:36
+#: stock/templates/stock/location.html:94 templates/js/translated/stock.js:1744
msgid "Transfer stock"
msgstr ""
-#: stock/templates/stock/item_base.html:92 templates/stock_table.html:39
+#: stock/templates/stock/item_base.html:92
+#: templates/js/translated/stock.js:1798
msgid "Assign to customer"
msgstr ""
@@ -8159,6 +8182,11 @@ msgstr ""
msgid "Delete stock item"
msgstr ""
+#: stock/templates/stock/item_base.html:170 templates/InvenTree/search.html:139
+#: templates/js/translated/build.js:2046 templates/navbar.html:38
+msgid "Build"
+msgstr "Κατασκευή"
+
#: stock/templates/stock/item_base.html:194
msgid "Parent Item"
msgstr ""
@@ -8221,7 +8249,7 @@ msgid "Available Quantity"
msgstr ""
#: stock/templates/stock/item_base.html:394
-#: templates/js/translated/build.js:2015
+#: templates/js/translated/build.js:2306
msgid "No location set"
msgstr ""
@@ -8239,7 +8267,7 @@ msgid "This StockItem expired on %(item.expiry_date)s"
msgstr ""
#: stock/templates/stock/item_base.html:433
-#: templates/js/translated/table_filters.js:381
+#: templates/js/translated/table_filters.js:387
msgid "Expired"
msgstr ""
@@ -8249,7 +8277,7 @@ msgid "This StockItem expires on %(item.expiry_date)s"
msgstr ""
#: stock/templates/stock/item_base.html:435
-#: templates/js/translated/table_filters.js:387
+#: templates/js/translated/table_filters.js:393
msgid "Stale"
msgstr ""
@@ -8258,7 +8286,7 @@ msgid "No stocktake performed"
msgstr ""
#: stock/templates/stock/item_base.html:503
-#: templates/js/translated/stock.js:1745
+#: templates/js/translated/stock.js:1865
msgid "stock item"
msgstr ""
@@ -8364,20 +8392,20 @@ msgstr ""
msgid "New Location"
msgstr ""
-#: stock/templates/stock/location.html:287
-#: templates/js/translated/stock.js:2318
+#: stock/templates/stock/location.html:278
+#: templates/js/translated/stock.js:2449
msgid "stock location"
msgstr ""
-#: stock/templates/stock/location.html:304
+#: stock/templates/stock/location.html:295
msgid "Scanned stock container into this location"
msgstr ""
-#: stock/templates/stock/location.html:377
+#: stock/templates/stock/location.html:368
msgid "Stock Location QR Code"
msgstr ""
-#: stock/templates/stock/location.html:388
+#: stock/templates/stock/location.html:379
msgid "Link Barcode to Stock Location"
msgstr ""
@@ -8451,71 +8479,71 @@ msgstr ""
msgid "Index"
msgstr ""
-#: templates/InvenTree/index.html:89
+#: templates/InvenTree/index.html:39
msgid "Subscribed Parts"
msgstr ""
-#: templates/InvenTree/index.html:102
+#: templates/InvenTree/index.html:53
msgid "Subscribed Categories"
msgstr ""
-#: templates/InvenTree/index.html:112
+#: templates/InvenTree/index.html:63
msgid "Latest Parts"
msgstr ""
-#: templates/InvenTree/index.html:126
+#: templates/InvenTree/index.html:78
msgid "BOM Waiting Validation"
msgstr ""
-#: templates/InvenTree/index.html:155
+#: templates/InvenTree/index.html:107
msgid "Recently Updated"
msgstr ""
-#: templates/InvenTree/index.html:180
+#: templates/InvenTree/index.html:134
msgid "Depleted Stock"
msgstr ""
-#: templates/InvenTree/index.html:193
+#: templates/InvenTree/index.html:148
msgid "Required for Build Orders"
msgstr ""
-#: templates/InvenTree/index.html:208
+#: templates/InvenTree/index.html:156
msgid "Expired Stock"
msgstr ""
-#: templates/InvenTree/index.html:222
+#: templates/InvenTree/index.html:172
msgid "Stale Stock"
msgstr ""
-#: templates/InvenTree/index.html:247
+#: templates/InvenTree/index.html:199
msgid "Build Orders In Progress"
msgstr ""
-#: templates/InvenTree/index.html:258
+#: templates/InvenTree/index.html:210
msgid "Overdue Build Orders"
msgstr ""
-#: templates/InvenTree/index.html:278
+#: templates/InvenTree/index.html:230
msgid "Outstanding Purchase Orders"
msgstr ""
-#: templates/InvenTree/index.html:289
+#: templates/InvenTree/index.html:241
msgid "Overdue Purchase Orders"
msgstr ""
-#: templates/InvenTree/index.html:310
+#: templates/InvenTree/index.html:262
msgid "Outstanding Sales Orders"
msgstr ""
-#: templates/InvenTree/index.html:321
+#: templates/InvenTree/index.html:273
msgid "Overdue Sales Orders"
msgstr ""
-#: templates/InvenTree/index.html:347
+#: templates/InvenTree/index.html:299
msgid "InvenTree News"
msgstr ""
-#: templates/InvenTree/index.html:349
+#: templates/InvenTree/index.html:301
msgid "Current News"
msgstr ""
@@ -8672,29 +8700,29 @@ msgstr ""
msgid "Changing the settings below require you to immediately restart the server. Do not change this while under active usage."
msgstr ""
-#: templates/InvenTree/settings/plugin.html:37
+#: templates/InvenTree/settings/plugin.html:35
#: templates/InvenTree/settings/sidebar.html:64
msgid "Plugins"
msgstr ""
-#: templates/InvenTree/settings/plugin.html:43
+#: templates/InvenTree/settings/plugin.html:41
#: templates/js/translated/plugin.js:151
msgid "Install Plugin"
msgstr ""
-#: templates/InvenTree/settings/plugin.html:51
+#: templates/InvenTree/settings/plugin.html:49
msgid "External plugins are not enabled for this InvenTree installation"
msgstr ""
-#: templates/InvenTree/settings/plugin.html:70
+#: templates/InvenTree/settings/plugin.html:64
msgid "Plugin Error Stack"
msgstr ""
-#: templates/InvenTree/settings/plugin.html:79
+#: templates/InvenTree/settings/plugin.html:73
msgid "Stage"
msgstr ""
-#: templates/InvenTree/settings/plugin.html:81
+#: templates/InvenTree/settings/plugin.html:75
#: templates/js/translated/notification.js:75
msgid "Message"
msgstr ""
@@ -8767,14 +8795,6 @@ msgstr ""
msgid "Commit Message"
msgstr ""
-#: templates/InvenTree/settings/plugin_settings.html:126
-msgid "Sign Status"
-msgstr ""
-
-#: templates/InvenTree/settings/plugin_settings.html:131
-msgid "Sign Key"
-msgstr ""
-
#: templates/InvenTree/settings/po.html:7
msgid "Purchase Order Settings"
msgstr ""
@@ -8870,12 +8890,12 @@ msgid "No category parameter templates found"
msgstr ""
#: templates/InvenTree/settings/settings_staff_js.html:212
-#: templates/js/translated/part.js:1618
+#: templates/js/translated/part.js:1617
msgid "Edit Template"
msgstr ""
#: templates/InvenTree/settings/settings_staff_js.html:213
-#: templates/js/translated/part.js:1619
+#: templates/js/translated/part.js:1618
msgid "Delete Template"
msgstr ""
@@ -8913,7 +8933,7 @@ msgid "Home Page"
msgstr ""
#: templates/InvenTree/settings/sidebar.html:15
-#: templates/js/translated/tables.js:575 templates/navbar.html:107
+#: templates/js/translated/tables.js:551 templates/navbar.html:107
#: templates/search.html:8 templates/search_form.html:6
#: templates/search_form.html:7
msgid "Search"
@@ -8990,6 +9010,7 @@ msgid "Unverified"
msgstr ""
#: templates/InvenTree/settings/user.html:80
+#: templates/js/translated/company.js:984
msgid "Primary"
msgstr ""
@@ -9204,44 +9225,48 @@ msgstr ""
msgid "Update Available"
msgstr ""
-#: templates/about.html:42
+#: templates/about.html:43
+msgid "Commit Branch"
+msgstr ""
+
+#: templates/about.html:49
msgid "InvenTree Documentation"
msgstr ""
-#: templates/about.html:47
+#: templates/about.html:54
msgid "API Version"
msgstr ""
-#: templates/about.html:52
+#: templates/about.html:59
msgid "Python Version"
msgstr ""
-#: templates/about.html:57
+#: templates/about.html:64
msgid "Django Version"
msgstr ""
-#: templates/about.html:62
+#: templates/about.html:69
msgid "View Code on GitHub"
msgstr ""
-#: templates/about.html:67
+#: templates/about.html:74
msgid "Credits"
msgstr ""
-#: templates/about.html:72
+#: templates/about.html:79
msgid "Mobile App"
msgstr ""
-#: templates/about.html:77
+#: templates/about.html:84
msgid "Submit Bug Report"
msgstr ""
-#: templates/about.html:84 templates/clip.html:4
+#: templates/about.html:91 templates/clip.html:4
#: templates/js/translated/helpers.js:585
msgid "copy to clipboard"
msgstr ""
-#: templates/about.html:84
+#: templates/about.html:91
msgid "copy version information"
msgstr ""
@@ -9435,14 +9460,6 @@ msgstr ""
msgid "Add Attachment"
msgstr ""
-#: templates/attachment_table.html:11
-msgid "Delete selected attachments"
-msgstr ""
-
-#: templates/attachment_table.html:12 templates/js/translated/attachment.js:129
-msgid "Delete Attachments"
-msgstr ""
-
#: templates/barcode_data.html:5
msgid "Barcode Identifier"
msgstr ""
@@ -9487,7 +9504,7 @@ msgid "The following parts are low on required stock"
msgstr ""
#: templates/email/build_order_required_stock.html:18
-#: templates/js/translated/bom.js:1633
+#: templates/js/translated/bom.js:1653 templates/js/translated/build.js:2485
msgid "Required Quantity"
msgstr ""
@@ -9501,7 +9518,7 @@ msgid "Click on the following link to view this part"
msgstr ""
#: templates/email/low_stock_notification.html:18
-#: templates/js/translated/part.js:3140
+#: templates/js/translated/part.js:3125
msgid "Minimum Quantity"
msgstr ""
@@ -9573,23 +9590,35 @@ msgstr ""
msgid "All selected attachments will be deleted"
msgstr ""
-#: templates/js/translated/attachment.js:255
+#: templates/js/translated/attachment.js:129
+msgid "Delete Attachments"
+msgstr ""
+
+#: templates/js/translated/attachment.js:205
+msgid "Delete attachments"
+msgstr ""
+
+#: templates/js/translated/attachment.js:253
+msgid "Attachment actions"
+msgstr ""
+
+#: templates/js/translated/attachment.js:275
msgid "No attachments found"
msgstr ""
-#: templates/js/translated/attachment.js:285
+#: templates/js/translated/attachment.js:305
msgid "Edit Attachment"
msgstr ""
-#: templates/js/translated/attachment.js:326
+#: templates/js/translated/attachment.js:336
msgid "Upload Date"
msgstr ""
-#: templates/js/translated/attachment.js:346
+#: templates/js/translated/attachment.js:356
msgid "Edit attachment"
msgstr ""
-#: templates/js/translated/attachment.js:354
+#: templates/js/translated/attachment.js:364
msgid "Delete attachment"
msgstr ""
@@ -9646,7 +9675,7 @@ msgstr ""
msgid "Unlink"
msgstr ""
-#: templates/js/translated/barcode.js:550 templates/js/translated/stock.js:1118
+#: templates/js/translated/barcode.js:550 templates/js/translated/stock.js:1117
msgid "Remove stock item"
msgstr ""
@@ -9704,775 +9733,869 @@ msgstr ""
msgid "Barcode does not match a valid location"
msgstr ""
-#: templates/js/translated/bom.js:77
+#: templates/js/translated/bom.js:78
msgid "Create BOM Item"
msgstr ""
-#: templates/js/translated/bom.js:131
+#: templates/js/translated/bom.js:132
msgid "Display row data"
msgstr ""
-#: templates/js/translated/bom.js:187
+#: templates/js/translated/bom.js:188
msgid "Row Data"
msgstr ""
-#: templates/js/translated/bom.js:188 templates/js/translated/bom.js:699
+#: templates/js/translated/bom.js:189 templates/js/translated/bom.js:700
#: templates/js/translated/modals.js:71 templates/js/translated/modals.js:622
#: templates/js/translated/modals.js:746 templates/js/translated/modals.js:1054
-#: templates/js/translated/purchase_order.js:791 templates/modals.html:15
+#: templates/js/translated/purchase_order.js:802 templates/modals.html:15
#: templates/modals.html:27 templates/modals.html:39 templates/modals.html:50
msgid "Close"
msgstr ""
-#: templates/js/translated/bom.js:305
+#: templates/js/translated/bom.js:306
msgid "Download BOM Template"
msgstr ""
-#: templates/js/translated/bom.js:350
+#: templates/js/translated/bom.js:351
msgid "Multi Level BOM"
msgstr ""
-#: templates/js/translated/bom.js:351
+#: templates/js/translated/bom.js:352
msgid "Include BOM data for subassemblies"
msgstr ""
-#: templates/js/translated/bom.js:356
+#: templates/js/translated/bom.js:357
msgid "Levels"
msgstr ""
-#: templates/js/translated/bom.js:357
+#: templates/js/translated/bom.js:358
msgid "Select maximum number of BOM levels to export (0 = all levels)"
msgstr ""
-#: templates/js/translated/bom.js:364
+#: templates/js/translated/bom.js:365
msgid "Include Alternative Parts"
msgstr ""
-#: templates/js/translated/bom.js:365
+#: templates/js/translated/bom.js:366
msgid "Include alternative parts in exported BOM"
msgstr ""
-#: templates/js/translated/bom.js:370
+#: templates/js/translated/bom.js:371
msgid "Include Parameter Data"
msgstr ""
-#: templates/js/translated/bom.js:371
+#: templates/js/translated/bom.js:372
msgid "Include part parameter data in exported BOM"
msgstr ""
-#: templates/js/translated/bom.js:376
+#: templates/js/translated/bom.js:377
msgid "Include Stock Data"
msgstr ""
-#: templates/js/translated/bom.js:377
+#: templates/js/translated/bom.js:378
msgid "Include part stock data in exported BOM"
msgstr ""
-#: templates/js/translated/bom.js:382
+#: templates/js/translated/bom.js:383
msgid "Include Manufacturer Data"
msgstr ""
-#: templates/js/translated/bom.js:383
+#: templates/js/translated/bom.js:384
msgid "Include part manufacturer data in exported BOM"
msgstr ""
-#: templates/js/translated/bom.js:388
+#: templates/js/translated/bom.js:389
msgid "Include Supplier Data"
msgstr ""
-#: templates/js/translated/bom.js:389
+#: templates/js/translated/bom.js:390
msgid "Include part supplier data in exported BOM"
msgstr ""
-#: templates/js/translated/bom.js:394
+#: templates/js/translated/bom.js:395
msgid "Include Pricing Data"
msgstr ""
-#: templates/js/translated/bom.js:395
+#: templates/js/translated/bom.js:396
msgid "Include part pricing data in exported BOM"
msgstr ""
-#: templates/js/translated/bom.js:590
+#: templates/js/translated/bom.js:591
msgid "Remove substitute part"
msgstr ""
-#: templates/js/translated/bom.js:644
+#: templates/js/translated/bom.js:645
msgid "Select and add a new substitute part using the input below"
msgstr ""
-#: templates/js/translated/bom.js:655
+#: templates/js/translated/bom.js:656
msgid "Are you sure you wish to remove this substitute part link?"
msgstr ""
-#: templates/js/translated/bom.js:661
+#: templates/js/translated/bom.js:662
msgid "Remove Substitute Part"
msgstr ""
-#: templates/js/translated/bom.js:700
+#: templates/js/translated/bom.js:701
msgid "Add Substitute"
msgstr ""
-#: templates/js/translated/bom.js:701
+#: templates/js/translated/bom.js:702
msgid "Edit BOM Item Substitutes"
msgstr ""
-#: templates/js/translated/bom.js:763
+#: templates/js/translated/bom.js:764
msgid "All selected BOM items will be deleted"
msgstr ""
-#: templates/js/translated/bom.js:779
+#: templates/js/translated/bom.js:780
msgid "Delete selected BOM items?"
msgstr ""
-#: templates/js/translated/bom.js:906
+#: templates/js/translated/bom.js:826
+msgid "Delete items"
+msgstr ""
+
+#: templates/js/translated/bom.js:924
msgid "Load BOM for subassembly"
msgstr ""
-#: templates/js/translated/bom.js:916
+#: templates/js/translated/bom.js:934
msgid "Substitutes Available"
msgstr ""
-#: templates/js/translated/bom.js:920 templates/js/translated/build.js:2090
+#: templates/js/translated/bom.js:938 templates/js/translated/build.js:2429
msgid "Variant stock allowed"
msgstr ""
-#: templates/js/translated/bom.js:984
+#: templates/js/translated/bom.js:1002
msgid "Substitutes"
msgstr ""
-#: templates/js/translated/bom.js:1104
+#: templates/js/translated/bom.js:1122
msgid "BOM pricing is complete"
msgstr ""
-#: templates/js/translated/bom.js:1109
+#: templates/js/translated/bom.js:1127
msgid "BOM pricing is incomplete"
msgstr ""
-#: templates/js/translated/bom.js:1116
+#: templates/js/translated/bom.js:1134
msgid "No pricing available"
msgstr ""
-#: templates/js/translated/bom.js:1147 templates/js/translated/build.js:2173
-#: templates/js/translated/sales_order.js:1887
+#: templates/js/translated/bom.js:1165 templates/js/translated/build.js:2523
+#: templates/js/translated/sales_order.js:1899
msgid "No Stock Available"
msgstr ""
-#: templates/js/translated/bom.js:1152 templates/js/translated/build.js:2177
+#: templates/js/translated/bom.js:1170 templates/js/translated/build.js:2527
msgid "Includes variant and substitute stock"
msgstr ""
-#: templates/js/translated/bom.js:1154 templates/js/translated/build.js:2179
-#: templates/js/translated/part.js:1230
+#: templates/js/translated/bom.js:1172 templates/js/translated/build.js:2529
+#: templates/js/translated/part.js:1229
msgid "Includes variant stock"
msgstr ""
-#: templates/js/translated/bom.js:1156 templates/js/translated/build.js:2181
+#: templates/js/translated/bom.js:1174 templates/js/translated/build.js:2531
msgid "Includes substitute stock"
msgstr ""
-#: templates/js/translated/bom.js:1184 templates/js/translated/build.js:2164
-#: templates/js/translated/build.js:2255
+#: templates/js/translated/bom.js:1204 templates/js/translated/build.js:2514
msgid "Consumable item"
msgstr ""
-#: templates/js/translated/bom.js:1244
+#: templates/js/translated/bom.js:1264
msgid "Validate BOM Item"
msgstr ""
-#: templates/js/translated/bom.js:1246
+#: templates/js/translated/bom.js:1266
msgid "This line has been validated"
msgstr ""
-#: templates/js/translated/bom.js:1248
+#: templates/js/translated/bom.js:1268
msgid "Edit substitute parts"
msgstr ""
-#: templates/js/translated/bom.js:1250 templates/js/translated/bom.js:1445
+#: templates/js/translated/bom.js:1270 templates/js/translated/bom.js:1465
msgid "Edit BOM Item"
msgstr ""
-#: templates/js/translated/bom.js:1252
+#: templates/js/translated/bom.js:1272
msgid "Delete BOM Item"
msgstr ""
-#: templates/js/translated/bom.js:1272
+#: templates/js/translated/bom.js:1292
msgid "View BOM"
msgstr ""
-#: templates/js/translated/bom.js:1356 templates/js/translated/build.js:1927
+#: templates/js/translated/bom.js:1376
msgid "No BOM items found"
msgstr ""
-#: templates/js/translated/bom.js:1616 templates/js/translated/build.js:2073
+#: templates/js/translated/bom.js:1636 templates/js/translated/build.js:2414
msgid "Required Part"
msgstr ""
-#: templates/js/translated/bom.js:1642
+#: templates/js/translated/bom.js:1662
msgid "Inherited from parent BOM"
msgstr ""
-#: templates/js/translated/build.js:126
+#: templates/js/translated/build.js:136
msgid "Edit Build Order"
msgstr ""
-#: templates/js/translated/build.js:169
+#: templates/js/translated/build.js:179
msgid "Create Build Order"
msgstr ""
-#: templates/js/translated/build.js:202
+#: templates/js/translated/build.js:211
msgid "Cancel Build Order"
msgstr ""
-#: templates/js/translated/build.js:211
+#: templates/js/translated/build.js:220
msgid "Are you sure you wish to cancel this build?"
msgstr ""
-#: templates/js/translated/build.js:217
+#: templates/js/translated/build.js:226
msgid "Stock items have been allocated to this build order"
msgstr ""
-#: templates/js/translated/build.js:224
+#: templates/js/translated/build.js:233
msgid "There are incomplete outputs remaining for this build order"
msgstr ""
-#: templates/js/translated/build.js:276
+#: templates/js/translated/build.js:285
msgid "Build order is ready to be completed"
msgstr ""
-#: templates/js/translated/build.js:284
+#: templates/js/translated/build.js:293
msgid "This build order cannot be completed as there are incomplete outputs"
msgstr ""
-#: templates/js/translated/build.js:289
+#: templates/js/translated/build.js:298
msgid "Build Order is incomplete"
msgstr ""
-#: templates/js/translated/build.js:307
+#: templates/js/translated/build.js:316
msgid "Complete Build Order"
msgstr ""
-#: templates/js/translated/build.js:348 templates/js/translated/stock.js:119
-#: templates/js/translated/stock.js:265
+#: templates/js/translated/build.js:357 templates/js/translated/stock.js:118
+#: templates/js/translated/stock.js:264
msgid "Next available serial number"
msgstr ""
-#: templates/js/translated/build.js:350 templates/js/translated/stock.js:121
-#: templates/js/translated/stock.js:267
+#: templates/js/translated/build.js:359 templates/js/translated/stock.js:120
+#: templates/js/translated/stock.js:266
msgid "Latest serial number"
msgstr ""
-#: templates/js/translated/build.js:359
+#: templates/js/translated/build.js:368
msgid "The Bill of Materials contains trackable parts"
msgstr ""
-#: templates/js/translated/build.js:360
+#: templates/js/translated/build.js:369
msgid "Build outputs must be generated individually"
msgstr ""
-#: templates/js/translated/build.js:368
+#: templates/js/translated/build.js:377
msgid "Trackable parts can have serial numbers specified"
msgstr ""
-#: templates/js/translated/build.js:369
+#: templates/js/translated/build.js:378
msgid "Enter serial numbers to generate multiple single build outputs"
msgstr ""
-#: templates/js/translated/build.js:376
+#: templates/js/translated/build.js:385
msgid "Create Build Output"
msgstr ""
-#: templates/js/translated/build.js:407
+#: templates/js/translated/build.js:416
msgid "Allocate stock items to this build output"
msgstr ""
-#: templates/js/translated/build.js:418
-msgid "Unallocate stock from build output"
+#: templates/js/translated/build.js:424
+msgid "Deallocate stock from build output"
msgstr ""
-#: templates/js/translated/build.js:427
+#: templates/js/translated/build.js:433
msgid "Complete build output"
msgstr ""
-#: templates/js/translated/build.js:435
+#: templates/js/translated/build.js:441
msgid "Scrap build output"
msgstr ""
-#: templates/js/translated/build.js:442
+#: templates/js/translated/build.js:448
msgid "Delete build output"
msgstr ""
-#: templates/js/translated/build.js:462
-msgid "Are you sure you wish to unallocate stock items from this build?"
+#: templates/js/translated/build.js:468
+msgid "Are you sure you wish to deallocate the selected stock items from this build?"
msgstr ""
-#: templates/js/translated/build.js:480
-msgid "Unallocate Stock Items"
+#: templates/js/translated/build.js:486
+msgid "Deallocate Stock Items"
msgstr ""
-#: templates/js/translated/build.js:566 templates/js/translated/build.js:690
-#: templates/js/translated/build.js:812
+#: templates/js/translated/build.js:572 templates/js/translated/build.js:696
+#: templates/js/translated/build.js:818
msgid "Select Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:567 templates/js/translated/build.js:691
-#: templates/js/translated/build.js:813
+#: templates/js/translated/build.js:573 templates/js/translated/build.js:697
+#: templates/js/translated/build.js:819
msgid "At least one build output must be selected"
msgstr ""
-#: templates/js/translated/build.js:581
+#: templates/js/translated/build.js:587
msgid "Selected build outputs will be marked as complete"
msgstr ""
-#: templates/js/translated/build.js:585 templates/js/translated/build.js:715
-#: templates/js/translated/build.js:835
+#: templates/js/translated/build.js:591 templates/js/translated/build.js:721
+#: templates/js/translated/build.js:841
msgid "Output"
msgstr ""
-#: templates/js/translated/build.js:609
+#: templates/js/translated/build.js:615
msgid "Complete Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:706
+#: templates/js/translated/build.js:712
msgid "Selected build outputs will be marked as scrapped"
msgstr ""
-#: templates/js/translated/build.js:708
+#: templates/js/translated/build.js:714
msgid "Scrapped output are marked as rejected"
msgstr ""
-#: templates/js/translated/build.js:709
+#: templates/js/translated/build.js:715
msgid "Allocated stock items will no longer be available"
msgstr ""
-#: templates/js/translated/build.js:710
+#: templates/js/translated/build.js:716
msgid "The completion status of the build order will not be adjusted"
msgstr ""
-#: templates/js/translated/build.js:737
+#: templates/js/translated/build.js:743
msgid "Scrap Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:827
+#: templates/js/translated/build.js:833
msgid "Selected build outputs will be deleted"
msgstr ""
-#: templates/js/translated/build.js:829
+#: templates/js/translated/build.js:835
msgid "Build output data will be permanently deleted"
msgstr ""
-#: templates/js/translated/build.js:830
+#: templates/js/translated/build.js:836
msgid "Allocated stock items will be returned to stock"
msgstr ""
-#: templates/js/translated/build.js:848
+#: templates/js/translated/build.js:854
msgid "Delete Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:934
+#: templates/js/translated/build.js:941
msgid "No build order allocations found"
msgstr ""
-#: templates/js/translated/build.js:971
+#: templates/js/translated/build.js:970 templates/js/translated/build.js:2270
+msgid "Allocated Quantity"
+msgstr ""
+
+#: templates/js/translated/build.js:984
msgid "Location not specified"
msgstr ""
-#: templates/js/translated/build.js:1047
+#: templates/js/translated/build.js:1006
+msgid "Complete outputs"
+msgstr ""
+
+#: templates/js/translated/build.js:1024
+msgid "Scrap outputs"
+msgstr ""
+
+#: templates/js/translated/build.js:1042
+msgid "Delete outputs"
+msgstr ""
+
+#: templates/js/translated/build.js:1100
msgid "build output"
msgstr ""
-#: templates/js/translated/build.js:1048
+#: templates/js/translated/build.js:1101
msgid "build outputs"
msgstr ""
-#: templates/js/translated/build.js:1383
+#: templates/js/translated/build.js:1105
+msgid "Build output actions"
+msgstr ""
+
+#: templates/js/translated/build.js:1274
msgid "No active build outputs found"
msgstr ""
-#: templates/js/translated/build.js:1457
-msgid "Allocated Stock"
+#: templates/js/translated/build.js:1329
+msgid "Allocated Lines"
msgstr ""
-#: templates/js/translated/build.js:1464
-msgid "No tracked BOM items for this build"
+#: templates/js/translated/build.js:1343
+msgid "Required Tests"
msgstr ""
-#: templates/js/translated/build.js:1486
-msgid "Completed Tests"
-msgstr ""
-
-#: templates/js/translated/build.js:1491
-msgid "No required tests for this build"
-msgstr ""
-
-#: templates/js/translated/build.js:2032 templates/js/translated/build.js:3056
-#: templates/js/translated/sales_order.js:1632
-msgid "Edit stock allocation"
-msgstr ""
-
-#: templates/js/translated/build.js:2034 templates/js/translated/build.js:3057
-#: templates/js/translated/sales_order.js:1633
-msgid "Delete stock allocation"
-msgstr ""
-
-#: templates/js/translated/build.js:2050
-msgid "Edit Allocation"
-msgstr ""
-
-#: templates/js/translated/build.js:2060
-msgid "Remove Allocation"
-msgstr ""
-
-#: templates/js/translated/build.js:2086
-msgid "Substitute parts available"
-msgstr ""
-
-#: templates/js/translated/build.js:2122
-msgid "Quantity Per"
-msgstr ""
-
-#: templates/js/translated/build.js:2167
-#: templates/js/translated/sales_order.js:1894
-msgid "Insufficient stock available"
-msgstr ""
-
-#: templates/js/translated/build.js:2169
-#: templates/js/translated/sales_order.js:1892
-msgid "Sufficient stock available"
-msgstr ""
-
-#: templates/js/translated/build.js:2263
-#: templates/js/translated/sales_order.js:1993
-msgid "Build stock"
-msgstr ""
-
-#: templates/js/translated/build.js:2267 templates/stock_table.html:38
-msgid "Order stock"
-msgstr ""
-
-#: templates/js/translated/build.js:2270
-#: templates/js/translated/sales_order.js:1987
-msgid "Allocate stock"
-msgstr ""
-
-#: templates/js/translated/build.js:2310
-#: templates/js/translated/purchase_order.js:616
-#: templates/js/translated/sales_order.js:1159
+#: templates/js/translated/build.js:1502
+#: templates/js/translated/purchase_order.js:627
+#: templates/js/translated/sales_order.js:1171
msgid "Select Parts"
msgstr ""
-#: templates/js/translated/build.js:2311
-#: templates/js/translated/sales_order.js:1160
+#: templates/js/translated/build.js:1503
+#: templates/js/translated/sales_order.js:1172
msgid "You must select at least one part to allocate"
msgstr ""
-#: templates/js/translated/build.js:2359
-#: templates/js/translated/sales_order.js:1109
+#: templates/js/translated/build.js:1566
+#: templates/js/translated/sales_order.js:1121
msgid "Specify stock allocation quantity"
msgstr ""
-#: templates/js/translated/build.js:2438
+#: templates/js/translated/build.js:1643
msgid "All Parts Allocated"
msgstr ""
-#: templates/js/translated/build.js:2439
+#: templates/js/translated/build.js:1644
msgid "All selected parts have been fully allocated"
msgstr ""
-#: templates/js/translated/build.js:2453
-#: templates/js/translated/sales_order.js:1174
+#: templates/js/translated/build.js:1658
+#: templates/js/translated/sales_order.js:1186
msgid "Select source location (leave blank to take from all locations)"
msgstr ""
-#: templates/js/translated/build.js:2481
+#: templates/js/translated/build.js:1686
msgid "Allocate Stock Items to Build Order"
msgstr ""
-#: templates/js/translated/build.js:2492
-#: templates/js/translated/sales_order.js:1271
+#: templates/js/translated/build.js:1697
+#: templates/js/translated/sales_order.js:1283
msgid "No matching stock locations"
msgstr ""
-#: templates/js/translated/build.js:2565
-#: templates/js/translated/sales_order.js:1348
+#: templates/js/translated/build.js:1770
+#: templates/js/translated/sales_order.js:1360
msgid "No matching stock items"
msgstr ""
-#: templates/js/translated/build.js:2662
+#: templates/js/translated/build.js:1867
msgid "Automatic Stock Allocation"
msgstr ""
-#: templates/js/translated/build.js:2663
+#: templates/js/translated/build.js:1868
msgid "Stock items will be automatically allocated to this build order, according to the provided guidelines"
msgstr ""
-#: templates/js/translated/build.js:2665
+#: templates/js/translated/build.js:1870
msgid "If a location is specified, stock will only be allocated from that location"
msgstr ""
-#: templates/js/translated/build.js:2666
+#: templates/js/translated/build.js:1871
msgid "If stock is considered interchangeable, it will be allocated from the first location it is found"
msgstr ""
-#: templates/js/translated/build.js:2667
+#: templates/js/translated/build.js:1872
msgid "If substitute stock is allowed, it will be used where stock of the primary part cannot be found"
msgstr ""
-#: templates/js/translated/build.js:2694
+#: templates/js/translated/build.js:1899
msgid "Allocate Stock Items"
msgstr ""
-#: templates/js/translated/build.js:2800
+#: templates/js/translated/build.js:2005
msgid "No builds matching query"
msgstr ""
-#: templates/js/translated/build.js:2835 templates/js/translated/part.js:2208
-#: templates/js/translated/part.js:2692 templates/js/translated/stock.js:1759
-#: templates/js/translated/stock.js:2458
+#: templates/js/translated/build.js:2040 templates/js/translated/build.js:2408
+#: templates/js/translated/part.js:2284 templates/js/translated/part.js:2677
+#: templates/js/translated/stock.js:1899 templates/js/translated/stock.js:2589
msgid "Select"
msgstr ""
-#: templates/js/translated/build.js:2849
+#: templates/js/translated/build.js:2054
msgid "Build order is overdue"
msgstr ""
-#: templates/js/translated/build.js:2883
+#: templates/js/translated/build.js:2100
msgid "Progress"
msgstr ""
-#: templates/js/translated/build.js:2919 templates/js/translated/stock.js:2779
+#: templates/js/translated/build.js:2136 templates/js/translated/stock.js:2910
msgid "No user information"
msgstr ""
-#: templates/js/translated/build.js:2934
+#: templates/js/translated/build.js:2151
msgid "group"
msgstr ""
-#: templates/js/translated/build.js:3033
-msgid "No parts allocated for"
+#: templates/js/translated/build.js:2315
+#: templates/js/translated/sales_order.js:1644
+msgid "Edit stock allocation"
msgstr ""
-#: templates/js/translated/company.js:87
+#: templates/js/translated/build.js:2316
+#: templates/js/translated/sales_order.js:1645
+msgid "Delete stock allocation"
+msgstr ""
+
+#: templates/js/translated/build.js:2331
+msgid "Edit Allocation"
+msgstr ""
+
+#: templates/js/translated/build.js:2343
+msgid "Remove Allocation"
+msgstr ""
+
+#: templates/js/translated/build.js:2384
+msgid "build line"
+msgstr ""
+
+#: templates/js/translated/build.js:2385
+msgid "build lines"
+msgstr ""
+
+#: templates/js/translated/build.js:2403
+msgid "No build lines found"
+msgstr ""
+
+#: templates/js/translated/build.js:2433 templates/js/translated/part.js:767
+#: templates/js/translated/part.js:1175
+msgid "Trackable part"
+msgstr ""
+
+#: templates/js/translated/build.js:2468
+msgid "Unit Quantity"
+msgstr ""
+
+#: templates/js/translated/build.js:2517
+#: templates/js/translated/sales_order.js:1906
+msgid "Insufficient stock available"
+msgstr ""
+
+#: templates/js/translated/build.js:2519
+#: templates/js/translated/sales_order.js:1904
+msgid "Sufficient stock available"
+msgstr ""
+
+#: templates/js/translated/build.js:2566
+msgid "Consumable Item"
+msgstr ""
+
+#: templates/js/translated/build.js:2571
+msgid "Tracked item"
+msgstr ""
+
+#: templates/js/translated/build.js:2578
+#: templates/js/translated/sales_order.js:2005
+msgid "Build stock"
+msgstr ""
+
+#: templates/js/translated/build.js:2583 templates/js/translated/stock.js:1779
+msgid "Order stock"
+msgstr ""
+
+#: templates/js/translated/build.js:2587
+#: templates/js/translated/sales_order.js:1999
+msgid "Allocate stock"
+msgstr ""
+
+#: templates/js/translated/build.js:2591
+msgid "Remove stock allocation"
+msgstr ""
+
+#: templates/js/translated/company.js:97
msgid "Add Manufacturer"
msgstr ""
-#: templates/js/translated/company.js:100
-#: templates/js/translated/company.js:202
+#: templates/js/translated/company.js:110
+#: templates/js/translated/company.js:212
msgid "Add Manufacturer Part"
msgstr ""
-#: templates/js/translated/company.js:121
+#: templates/js/translated/company.js:131
msgid "Edit Manufacturer Part"
msgstr ""
-#: templates/js/translated/company.js:190
-#: templates/js/translated/purchase_order.js:94
+#: templates/js/translated/company.js:200
+#: templates/js/translated/purchase_order.js:93
msgid "Add Supplier"
msgstr ""
-#: templates/js/translated/company.js:232
-#: templates/js/translated/purchase_order.js:338
+#: templates/js/translated/company.js:242
+#: templates/js/translated/purchase_order.js:349
msgid "Add Supplier Part"
msgstr ""
-#: templates/js/translated/company.js:333
+#: templates/js/translated/company.js:343
msgid "All selected supplier parts will be deleted"
msgstr ""
-#: templates/js/translated/company.js:349
+#: templates/js/translated/company.js:359
msgid "Delete Supplier Parts"
msgstr ""
-#: templates/js/translated/company.js:457
+#: templates/js/translated/company.js:464
msgid "Add new Company"
msgstr ""
-#: templates/js/translated/company.js:528
+#: templates/js/translated/company.js:535
msgid "Parts Supplied"
msgstr ""
-#: templates/js/translated/company.js:537
+#: templates/js/translated/company.js:544
msgid "Parts Manufactured"
msgstr ""
-#: templates/js/translated/company.js:552
+#: templates/js/translated/company.js:559
msgid "No company information found"
msgstr ""
-#: templates/js/translated/company.js:601
+#: templates/js/translated/company.js:608
msgid "Create New Contact"
msgstr ""
-#: templates/js/translated/company.js:617
-#: templates/js/translated/company.js:740
+#: templates/js/translated/company.js:624
+#: templates/js/translated/company.js:747
msgid "Edit Contact"
msgstr ""
-#: templates/js/translated/company.js:654
+#: templates/js/translated/company.js:661
msgid "All selected contacts will be deleted"
msgstr ""
-#: templates/js/translated/company.js:660
-#: templates/js/translated/company.js:724
+#: templates/js/translated/company.js:667
+#: templates/js/translated/company.js:731
msgid "Role"
msgstr ""
-#: templates/js/translated/company.js:668
+#: templates/js/translated/company.js:675
msgid "Delete Contacts"
msgstr ""
-#: templates/js/translated/company.js:699
+#: templates/js/translated/company.js:706
msgid "No contacts found"
msgstr ""
-#: templates/js/translated/company.js:712
+#: templates/js/translated/company.js:719
msgid "Phone Number"
msgstr ""
-#: templates/js/translated/company.js:718
+#: templates/js/translated/company.js:725
msgid "Email Address"
msgstr ""
-#: templates/js/translated/company.js:744
+#: templates/js/translated/company.js:751
msgid "Delete Contact"
msgstr ""
-#: templates/js/translated/company.js:818
+#: templates/js/translated/company.js:886
+msgid "Create New Address"
+msgstr ""
+
+#: templates/js/translated/company.js:901
+#: templates/js/translated/company.js:1066
+msgid "Edit Address"
+msgstr ""
+
+#: templates/js/translated/company.js:936
+msgid "All selected addresses will be deleted"
+msgstr ""
+
+#: templates/js/translated/company.js:950
+msgid "Delete Addresses"
+msgstr ""
+
+#: templates/js/translated/company.js:977
+msgid "No addresses found"
+msgstr ""
+
+#: templates/js/translated/company.js:1020
+msgid "Postal city"
+msgstr ""
+
+#: templates/js/translated/company.js:1026
+msgid "State/province"
+msgstr ""
+
+#: templates/js/translated/company.js:1038
+msgid "Courier notes"
+msgstr ""
+
+#: templates/js/translated/company.js:1044
+msgid "Internal notes"
+msgstr ""
+
+#: templates/js/translated/company.js:1070
+msgid "Delete Address"
+msgstr ""
+
+#: templates/js/translated/company.js:1143
msgid "All selected manufacturer parts will be deleted"
msgstr ""
-#: templates/js/translated/company.js:833
+#: templates/js/translated/company.js:1158
msgid "Delete Manufacturer Parts"
msgstr ""
-#: templates/js/translated/company.js:867
+#: templates/js/translated/company.js:1192
msgid "All selected parameters will be deleted"
msgstr ""
-#: templates/js/translated/company.js:881
+#: templates/js/translated/company.js:1206
msgid "Delete Parameters"
msgstr ""
-#: templates/js/translated/company.js:917
+#: templates/js/translated/company.js:1222
+#: templates/js/translated/company.js:1510 templates/js/translated/part.js:2213
+msgid "Order parts"
+msgstr ""
+
+#: templates/js/translated/company.js:1239
+msgid "Delete manufacturer parts"
+msgstr ""
+
+#: templates/js/translated/company.js:1271
+msgid "Manufacturer part actions"
+msgstr ""
+
+#: templates/js/translated/company.js:1290
msgid "No manufacturer parts found"
msgstr ""
-#: templates/js/translated/company.js:937
-#: templates/js/translated/company.js:1177 templates/js/translated/part.js:776
-#: templates/js/translated/part.js:1184
+#: templates/js/translated/company.js:1310
+#: templates/js/translated/company.js:1598 templates/js/translated/part.js:775
+#: templates/js/translated/part.js:1183
msgid "Template part"
msgstr ""
-#: templates/js/translated/company.js:941
-#: templates/js/translated/company.js:1181 templates/js/translated/part.js:780
-#: templates/js/translated/part.js:1188
+#: templates/js/translated/company.js:1314
+#: templates/js/translated/company.js:1602 templates/js/translated/part.js:779
+#: templates/js/translated/part.js:1187
msgid "Assembled part"
msgstr ""
-#: templates/js/translated/company.js:1061 templates/js/translated/part.js:1437
+#: templates/js/translated/company.js:1434 templates/js/translated/part.js:1436
msgid "No parameters found"
msgstr ""
-#: templates/js/translated/company.js:1096 templates/js/translated/part.js:1500
+#: templates/js/translated/company.js:1469 templates/js/translated/part.js:1499
msgid "Edit parameter"
msgstr ""
-#: templates/js/translated/company.js:1097 templates/js/translated/part.js:1501
+#: templates/js/translated/company.js:1470 templates/js/translated/part.js:1500
msgid "Delete parameter"
msgstr ""
-#: templates/js/translated/company.js:1114 templates/js/translated/part.js:1407
+#: templates/js/translated/company.js:1487 templates/js/translated/part.js:1406
msgid "Edit Parameter"
msgstr ""
-#: templates/js/translated/company.js:1123 templates/js/translated/part.js:1522
+#: templates/js/translated/company.js:1496 templates/js/translated/part.js:1521
msgid "Delete Parameter"
msgstr ""
-#: templates/js/translated/company.js:1156
+#: templates/js/translated/company.js:1527
+msgid "Delete supplier parts"
+msgstr ""
+
+#: templates/js/translated/company.js:1577
msgid "No supplier parts found"
msgstr ""
-#: templates/js/translated/company.js:1274
+#: templates/js/translated/company.js:1695
msgid "Base Units"
msgstr ""
-#: templates/js/translated/company.js:1304
+#: templates/js/translated/company.js:1725
msgid "Availability"
msgstr ""
-#: templates/js/translated/company.js:1335
+#: templates/js/translated/company.js:1756
msgid "Edit supplier part"
msgstr ""
-#: templates/js/translated/company.js:1336
+#: templates/js/translated/company.js:1757
msgid "Delete supplier part"
msgstr ""
-#: templates/js/translated/company.js:1389
+#: templates/js/translated/company.js:1810
#: templates/js/translated/pricing.js:694
msgid "Delete Price Break"
msgstr ""
-#: templates/js/translated/company.js:1399
+#: templates/js/translated/company.js:1820
#: templates/js/translated/pricing.js:712
msgid "Edit Price Break"
msgstr ""
-#: templates/js/translated/company.js:1414
+#: templates/js/translated/company.js:1835
msgid "No price break information found"
msgstr ""
-#: templates/js/translated/company.js:1443
+#: templates/js/translated/company.js:1864
msgid "Last updated"
msgstr ""
-#: templates/js/translated/company.js:1450
+#: templates/js/translated/company.js:1871
msgid "Edit price break"
msgstr ""
-#: templates/js/translated/company.js:1451
+#: templates/js/translated/company.js:1872
msgid "Delete price break"
msgstr ""
-#: templates/js/translated/filters.js:186
-#: templates/js/translated/filters.js:550
+#: templates/js/translated/filters.js:187
+#: templates/js/translated/filters.js:673
msgid "true"
msgstr ""
-#: templates/js/translated/filters.js:190
-#: templates/js/translated/filters.js:551
+#: templates/js/translated/filters.js:191
+#: templates/js/translated/filters.js:674
msgid "false"
msgstr ""
-#: templates/js/translated/filters.js:214
+#: templates/js/translated/filters.js:215
msgid "Select filter"
msgstr ""
-#: templates/js/translated/filters.js:328
+#: templates/js/translated/filters.js:438
msgid "Print Labels"
msgstr ""
-#: templates/js/translated/filters.js:332
+#: templates/js/translated/filters.js:442
msgid "Print Reports"
msgstr ""
-#: templates/js/translated/filters.js:344
+#: templates/js/translated/filters.js:454
msgid "Download table data"
msgstr ""
-#: templates/js/translated/filters.js:351
+#: templates/js/translated/filters.js:461
msgid "Reload table data"
msgstr ""
-#: templates/js/translated/filters.js:360
+#: templates/js/translated/filters.js:470
msgid "Add new filter"
msgstr ""
-#: templates/js/translated/filters.js:368
+#: templates/js/translated/filters.js:478
msgid "Clear all filters"
msgstr ""
-#: templates/js/translated/filters.js:460
+#: templates/js/translated/filters.js:583
msgid "Create filter"
msgstr ""
@@ -10497,6 +10620,12 @@ msgstr ""
msgid "View operation not allowed"
msgstr ""
+#: templates/js/translated/forms.js:506 templates/js/translated/helpers.js:105
+#: templates/js/translated/part.js:369 templates/js/translated/pricing.js:629
+#: templates/js/translated/stock.js:215 users/models.py:253
+msgid "Delete"
+msgstr ""
+
#: templates/js/translated/forms.js:752
msgid "Keep this form open"
msgstr ""
@@ -10514,23 +10643,23 @@ msgstr ""
msgid "No results found"
msgstr ""
-#: templates/js/translated/forms.js:2071 templates/js/translated/search.js:281
+#: templates/js/translated/forms.js:2071 templates/js/translated/search.js:239
msgid "Searching"
msgstr ""
-#: templates/js/translated/forms.js:2276
+#: templates/js/translated/forms.js:2285
msgid "Clear input"
msgstr ""
-#: templates/js/translated/forms.js:2733
+#: templates/js/translated/forms.js:2742
msgid "File Column"
msgstr ""
-#: templates/js/translated/forms.js:2733
+#: templates/js/translated/forms.js:2742
msgid "Field Name"
msgstr ""
-#: templates/js/translated/forms.js:2745
+#: templates/js/translated/forms.js:2754
msgid "Select Columns"
msgstr ""
@@ -10550,6 +10679,14 @@ msgstr ""
msgid "False"
msgstr ""
+#: templates/js/translated/index.js:99
+msgid "No parts required for builds"
+msgstr ""
+
+#: templates/js/translated/index.js:125
+msgid "Allocated Stock"
+msgstr ""
+
#: templates/js/translated/label.js:58
msgid "Select Printer"
msgstr ""
@@ -10651,7 +10788,7 @@ msgstr ""
#: templates/js/translated/news.js:38
#: templates/js/translated/notification.js:45
-#: templates/js/translated/part.js:1577
+#: templates/js/translated/part.js:1576
msgid "ID"
msgstr ""
@@ -10700,7 +10837,7 @@ msgid "Delete Line"
msgstr ""
#: templates/js/translated/order.js:281
-#: templates/js/translated/purchase_order.js:1958
+#: templates/js/translated/purchase_order.js:1968
msgid "No line items found"
msgstr ""
@@ -10716,363 +10853,355 @@ msgstr ""
msgid "Delete line"
msgstr ""
-#: templates/js/translated/part.js:91
+#: templates/js/translated/part.js:90
msgid "Part Attributes"
msgstr ""
-#: templates/js/translated/part.js:95
+#: templates/js/translated/part.js:94
msgid "Part Creation Options"
msgstr ""
-#: templates/js/translated/part.js:99
+#: templates/js/translated/part.js:98
msgid "Part Duplication Options"
msgstr ""
-#: templates/js/translated/part.js:122
+#: templates/js/translated/part.js:121
msgid "Add Part Category"
msgstr ""
-#: templates/js/translated/part.js:294
+#: templates/js/translated/part.js:293
msgid "Parent part category"
msgstr ""
-#: templates/js/translated/part.js:310 templates/js/translated/stock.js:147
+#: templates/js/translated/part.js:309 templates/js/translated/stock.js:146
msgid "Icon (optional) - Explore all available icons on"
msgstr ""
-#: templates/js/translated/part.js:330
+#: templates/js/translated/part.js:329
msgid "Create Part Category"
msgstr ""
-#: templates/js/translated/part.js:333
+#: templates/js/translated/part.js:332
msgid "Create new category after this one"
msgstr ""
-#: templates/js/translated/part.js:334
+#: templates/js/translated/part.js:333
msgid "Part category created"
msgstr ""
-#: templates/js/translated/part.js:348
+#: templates/js/translated/part.js:347
msgid "Edit Part Category"
msgstr ""
-#: templates/js/translated/part.js:361
+#: templates/js/translated/part.js:360
msgid "Are you sure you want to delete this part category?"
msgstr ""
-#: templates/js/translated/part.js:366
+#: templates/js/translated/part.js:365
msgid "Move to parent category"
msgstr ""
-#: templates/js/translated/part.js:375
+#: templates/js/translated/part.js:374
msgid "Delete Part Category"
msgstr ""
-#: templates/js/translated/part.js:379
+#: templates/js/translated/part.js:378
msgid "Action for parts in this category"
msgstr ""
-#: templates/js/translated/part.js:384
+#: templates/js/translated/part.js:383
msgid "Action for child categories"
msgstr ""
-#: templates/js/translated/part.js:408
+#: templates/js/translated/part.js:407
msgid "Create Part"
msgstr ""
-#: templates/js/translated/part.js:410
+#: templates/js/translated/part.js:409
msgid "Create another part after this one"
msgstr ""
-#: templates/js/translated/part.js:411
+#: templates/js/translated/part.js:410
msgid "Part created successfully"
msgstr ""
-#: templates/js/translated/part.js:439
+#: templates/js/translated/part.js:438
msgid "Edit Part"
msgstr ""
-#: templates/js/translated/part.js:441
+#: templates/js/translated/part.js:440
msgid "Part edited"
msgstr ""
-#: templates/js/translated/part.js:452
+#: templates/js/translated/part.js:451
msgid "Create Part Variant"
msgstr ""
-#: templates/js/translated/part.js:509
+#: templates/js/translated/part.js:508
msgid "Active Part"
msgstr ""
-#: templates/js/translated/part.js:510
+#: templates/js/translated/part.js:509
msgid "Part cannot be deleted as it is currently active"
msgstr ""
-#: templates/js/translated/part.js:524
+#: templates/js/translated/part.js:523
msgid "Deleting this part cannot be reversed"
msgstr ""
-#: templates/js/translated/part.js:526
+#: templates/js/translated/part.js:525
msgid "Any stock items for this part will be deleted"
msgstr ""
-#: templates/js/translated/part.js:527
+#: templates/js/translated/part.js:526
msgid "This part will be removed from any Bills of Material"
msgstr ""
-#: templates/js/translated/part.js:528
+#: templates/js/translated/part.js:527
msgid "All manufacturer and supplier information for this part will be deleted"
msgstr ""
-#: templates/js/translated/part.js:535
+#: templates/js/translated/part.js:534
msgid "Delete Part"
msgstr ""
-#: templates/js/translated/part.js:571
+#: templates/js/translated/part.js:570
msgid "You are subscribed to notifications for this item"
msgstr ""
-#: templates/js/translated/part.js:573
+#: templates/js/translated/part.js:572
msgid "You have subscribed to notifications for this item"
msgstr ""
-#: templates/js/translated/part.js:578
+#: templates/js/translated/part.js:577
msgid "Subscribe to notifications for this item"
msgstr ""
-#: templates/js/translated/part.js:580
+#: templates/js/translated/part.js:579
msgid "You have unsubscribed to notifications for this item"
msgstr ""
-#: templates/js/translated/part.js:597
+#: templates/js/translated/part.js:596
msgid "Validating the BOM will mark each line item as valid"
msgstr ""
-#: templates/js/translated/part.js:607
+#: templates/js/translated/part.js:606
msgid "Validate Bill of Materials"
msgstr ""
-#: templates/js/translated/part.js:610
+#: templates/js/translated/part.js:609
msgid "Validated Bill of Materials"
msgstr ""
-#: templates/js/translated/part.js:635
+#: templates/js/translated/part.js:634
msgid "Copy Bill of Materials"
msgstr ""
-#: templates/js/translated/part.js:663
-#: templates/js/translated/table_filters.js:660
+#: templates/js/translated/part.js:662
+#: templates/js/translated/table_filters.js:682
msgid "Low stock"
msgstr ""
-#: templates/js/translated/part.js:666
+#: templates/js/translated/part.js:665
msgid "No stock available"
msgstr ""
-#: templates/js/translated/part.js:726
+#: templates/js/translated/part.js:725
msgid "Demand"
msgstr ""
-#: templates/js/translated/part.js:749
+#: templates/js/translated/part.js:748
msgid "Unit"
msgstr ""
-#: templates/js/translated/part.js:768 templates/js/translated/part.js:1176
-msgid "Trackable part"
-msgstr ""
-
-#: templates/js/translated/part.js:772 templates/js/translated/part.js:1180
+#: templates/js/translated/part.js:771 templates/js/translated/part.js:1179
msgid "Virtual part"
msgstr ""
-#: templates/js/translated/part.js:784
+#: templates/js/translated/part.js:783
msgid "Subscribed part"
msgstr ""
-#: templates/js/translated/part.js:788
+#: templates/js/translated/part.js:787
msgid "Salable part"
msgstr ""
-#: templates/js/translated/part.js:863
+#: templates/js/translated/part.js:862
msgid "Schedule generation of a new stocktake report."
msgstr ""
-#: templates/js/translated/part.js:863
+#: templates/js/translated/part.js:862
msgid "Once complete, the stocktake report will be available for download."
msgstr ""
-#: templates/js/translated/part.js:871
+#: templates/js/translated/part.js:870
msgid "Generate Stocktake Report"
msgstr ""
-#: templates/js/translated/part.js:875
+#: templates/js/translated/part.js:874
msgid "Stocktake report scheduled"
msgstr ""
-#: templates/js/translated/part.js:1024
+#: templates/js/translated/part.js:1023
msgid "No stocktake information available"
msgstr ""
-#: templates/js/translated/part.js:1082 templates/js/translated/part.js:1118
+#: templates/js/translated/part.js:1081 templates/js/translated/part.js:1117
msgid "Edit Stocktake Entry"
msgstr ""
-#: templates/js/translated/part.js:1086 templates/js/translated/part.js:1128
+#: templates/js/translated/part.js:1085 templates/js/translated/part.js:1127
msgid "Delete Stocktake Entry"
msgstr ""
-#: templates/js/translated/part.js:1255
+#: templates/js/translated/part.js:1254
msgid "No variants found"
msgstr ""
-#: templates/js/translated/part.js:1572
+#: templates/js/translated/part.js:1571
msgid "No part parameter templates found"
msgstr ""
-#: templates/js/translated/part.js:1635
+#: templates/js/translated/part.js:1634
msgid "Edit Part Parameter Template"
msgstr ""
-#: templates/js/translated/part.js:1647
+#: templates/js/translated/part.js:1646
msgid "Any parameters which reference this template will also be deleted"
msgstr ""
-#: templates/js/translated/part.js:1655
+#: templates/js/translated/part.js:1654
msgid "Delete Part Parameter Template"
msgstr ""
-#: templates/js/translated/part.js:1689
-#: templates/js/translated/purchase_order.js:1618
+#: templates/js/translated/part.js:1688
+#: templates/js/translated/purchase_order.js:1633
msgid "No purchase orders found"
msgstr ""
-#: templates/js/translated/part.js:1832
-#: templates/js/translated/purchase_order.js:2121
-#: templates/js/translated/return_order.js:740
-#: templates/js/translated/sales_order.js:1855
+#: templates/js/translated/part.js:1831
+#: templates/js/translated/purchase_order.js:2131
+#: templates/js/translated/return_order.js:752
+#: templates/js/translated/sales_order.js:1867
msgid "This line item is overdue"
msgstr ""
-#: templates/js/translated/part.js:1877
-#: templates/js/translated/purchase_order.js:2188
+#: templates/js/translated/part.js:1876
+#: templates/js/translated/purchase_order.js:2198
msgid "Receive line item"
msgstr ""
-#: templates/js/translated/part.js:1944
+#: templates/js/translated/part.js:1943
msgid "Delete part relationship"
msgstr ""
-#: templates/js/translated/part.js:1966
+#: templates/js/translated/part.js:1965
msgid "Delete Part Relationship"
msgstr ""
-#: templates/js/translated/part.js:2054 templates/js/translated/part.js:2366
+#: templates/js/translated/part.js:2053 templates/js/translated/part.js:2442
msgid "No parts found"
msgstr ""
-#: templates/js/translated/part.js:2192
-msgid "parts"
-msgstr ""
-
-#: templates/js/translated/part.js:2276
-msgid "No category"
-msgstr ""
-
-#: templates/js/translated/part.js:2390 templates/js/translated/part.js:2611
-#: templates/js/translated/stock.js:2417
-msgid "Display as list"
-msgstr ""
-
-#: templates/js/translated/part.js:2406
-msgid "Display as grid"
-msgstr ""
-
-#: templates/js/translated/part.js:2472
+#: templates/js/translated/part.js:2174
msgid "Set the part category for the selected parts"
msgstr ""
-#: templates/js/translated/part.js:2477
+#: templates/js/translated/part.js:2179
msgid "Set Part Category"
msgstr ""
+#: templates/js/translated/part.js:2204
+msgid "Set category"
+msgstr ""
+
+#: templates/js/translated/part.js:2259
+msgid "parts"
+msgstr ""
+
+#: templates/js/translated/part.js:2352
+msgid "No category"
+msgstr ""
+
+#: templates/js/translated/part.js:2466 templates/js/translated/part.js:2596
+#: templates/js/translated/stock.js:2548
+msgid "Display as list"
+msgstr ""
+
#: templates/js/translated/part.js:2482
-msgid "Select Part Category"
+msgid "Display as grid"
msgstr ""
-#: templates/js/translated/part.js:2495
-msgid "Category is required"
-msgstr ""
-
-#: templates/js/translated/part.js:2595
+#: templates/js/translated/part.js:2580
msgid "No subcategories found"
msgstr ""
-#: templates/js/translated/part.js:2631 templates/js/translated/stock.js:2437
+#: templates/js/translated/part.js:2616 templates/js/translated/stock.js:2568
msgid "Display as tree"
msgstr ""
-#: templates/js/translated/part.js:2711
+#: templates/js/translated/part.js:2696
msgid "Load Subcategories"
msgstr ""
-#: templates/js/translated/part.js:2727
+#: templates/js/translated/part.js:2712
msgid "Subscribed category"
msgstr ""
-#: templates/js/translated/part.js:2807
+#: templates/js/translated/part.js:2792
msgid "No test templates matching query"
msgstr ""
-#: templates/js/translated/part.js:2858 templates/js/translated/stock.js:1380
+#: templates/js/translated/part.js:2843 templates/js/translated/stock.js:1379
msgid "Edit test result"
msgstr ""
-#: templates/js/translated/part.js:2859 templates/js/translated/stock.js:1381
-#: templates/js/translated/stock.js:1643
+#: templates/js/translated/part.js:2844 templates/js/translated/stock.js:1380
+#: templates/js/translated/stock.js:1642
msgid "Delete test result"
msgstr ""
-#: templates/js/translated/part.js:2863
+#: templates/js/translated/part.js:2848
msgid "This test is defined for a parent part"
msgstr ""
-#: templates/js/translated/part.js:2879
+#: templates/js/translated/part.js:2864
msgid "Edit Test Result Template"
msgstr ""
-#: templates/js/translated/part.js:2893
+#: templates/js/translated/part.js:2878
msgid "Delete Test Result Template"
msgstr ""
-#: templates/js/translated/part.js:2972 templates/js/translated/part.js:2973
+#: templates/js/translated/part.js:2957 templates/js/translated/part.js:2958
msgid "No date specified"
msgstr ""
-#: templates/js/translated/part.js:2975
+#: templates/js/translated/part.js:2960
msgid "Specified date is in the past"
msgstr ""
-#: templates/js/translated/part.js:2981
+#: templates/js/translated/part.js:2966
msgid "Speculative"
msgstr ""
-#: templates/js/translated/part.js:3031
+#: templates/js/translated/part.js:3016
msgid "No scheduling information available for this part"
msgstr ""
-#: templates/js/translated/part.js:3037
+#: templates/js/translated/part.js:3022
msgid "Error fetching scheduling information for this part"
msgstr ""
-#: templates/js/translated/part.js:3133
+#: templates/js/translated/part.js:3118
msgid "Scheduled Stock Quantities"
msgstr ""
-#: templates/js/translated/part.js:3149
+#: templates/js/translated/part.js:3134
msgid "Maximum Quantity"
msgstr ""
-#: templates/js/translated/part.js:3194
+#: templates/js/translated/part.js:3179
msgid "Minimum Stock Level"
msgstr ""
@@ -11168,234 +11297,234 @@ msgstr ""
msgid "Variant Part"
msgstr ""
-#: templates/js/translated/purchase_order.js:155
+#: templates/js/translated/purchase_order.js:166
msgid "Select purchase order to duplicate"
msgstr ""
-#: templates/js/translated/purchase_order.js:162
+#: templates/js/translated/purchase_order.js:173
msgid "Duplicate Line Items"
msgstr ""
-#: templates/js/translated/purchase_order.js:163
+#: templates/js/translated/purchase_order.js:174
msgid "Duplicate all line items from the selected order"
msgstr ""
-#: templates/js/translated/purchase_order.js:170
+#: templates/js/translated/purchase_order.js:181
msgid "Duplicate Extra Lines"
msgstr ""
-#: templates/js/translated/purchase_order.js:171
+#: templates/js/translated/purchase_order.js:182
msgid "Duplicate extra line items from the selected order"
msgstr ""
-#: templates/js/translated/purchase_order.js:192
+#: templates/js/translated/purchase_order.js:203
msgid "Edit Purchase Order"
msgstr ""
-#: templates/js/translated/purchase_order.js:209
+#: templates/js/translated/purchase_order.js:220
msgid "Duplication Options"
msgstr ""
-#: templates/js/translated/purchase_order.js:436
+#: templates/js/translated/purchase_order.js:447
msgid "Complete Purchase Order"
msgstr ""
-#: templates/js/translated/purchase_order.js:453
-#: templates/js/translated/return_order.js:195
-#: templates/js/translated/sales_order.js:485
+#: templates/js/translated/purchase_order.js:464
+#: templates/js/translated/return_order.js:207
+#: templates/js/translated/sales_order.js:497
msgid "Mark this order as complete?"
msgstr ""
-#: templates/js/translated/purchase_order.js:459
+#: templates/js/translated/purchase_order.js:470
msgid "All line items have been received"
msgstr ""
-#: templates/js/translated/purchase_order.js:464
+#: templates/js/translated/purchase_order.js:475
msgid "This order has line items which have not been marked as received."
msgstr ""
-#: templates/js/translated/purchase_order.js:465
-#: templates/js/translated/sales_order.js:499
+#: templates/js/translated/purchase_order.js:476
+#: templates/js/translated/sales_order.js:511
msgid "Completing this order means that the order and line items will no longer be editable."
msgstr ""
-#: templates/js/translated/purchase_order.js:488
+#: templates/js/translated/purchase_order.js:499
msgid "Cancel Purchase Order"
msgstr ""
-#: templates/js/translated/purchase_order.js:493
+#: templates/js/translated/purchase_order.js:504
msgid "Are you sure you wish to cancel this purchase order?"
msgstr ""
-#: templates/js/translated/purchase_order.js:499
+#: templates/js/translated/purchase_order.js:510
msgid "This purchase order can not be cancelled"
msgstr ""
-#: templates/js/translated/purchase_order.js:520
-#: templates/js/translated/return_order.js:149
+#: templates/js/translated/purchase_order.js:531
+#: templates/js/translated/return_order.js:161
msgid "After placing this order, line items will no longer be editable."
msgstr ""
-#: templates/js/translated/purchase_order.js:525
+#: templates/js/translated/purchase_order.js:536
msgid "Issue Purchase Order"
msgstr ""
-#: templates/js/translated/purchase_order.js:617
+#: templates/js/translated/purchase_order.js:628
msgid "At least one purchaseable part must be selected"
msgstr ""
-#: templates/js/translated/purchase_order.js:642
+#: templates/js/translated/purchase_order.js:653
msgid "Quantity to order"
msgstr ""
-#: templates/js/translated/purchase_order.js:651
+#: templates/js/translated/purchase_order.js:662
msgid "New supplier part"
msgstr ""
-#: templates/js/translated/purchase_order.js:669
+#: templates/js/translated/purchase_order.js:680
msgid "New purchase order"
msgstr ""
-#: templates/js/translated/purchase_order.js:701
+#: templates/js/translated/purchase_order.js:712
msgid "Add to purchase order"
msgstr ""
-#: templates/js/translated/purchase_order.js:845
+#: templates/js/translated/purchase_order.js:860
msgid "No matching supplier parts"
msgstr ""
-#: templates/js/translated/purchase_order.js:864
+#: templates/js/translated/purchase_order.js:879
msgid "No matching purchase orders"
msgstr ""
-#: templates/js/translated/purchase_order.js:1043
+#: templates/js/translated/purchase_order.js:1058
msgid "Select Line Items"
msgstr ""
-#: templates/js/translated/purchase_order.js:1044
-#: templates/js/translated/return_order.js:480
+#: templates/js/translated/purchase_order.js:1059
+#: templates/js/translated/return_order.js:492
msgid "At least one line item must be selected"
msgstr ""
-#: templates/js/translated/purchase_order.js:1074
+#: templates/js/translated/purchase_order.js:1089
msgid "Received Quantity"
msgstr ""
-#: templates/js/translated/purchase_order.js:1085
+#: templates/js/translated/purchase_order.js:1100
msgid "Quantity to receive"
msgstr ""
-#: templates/js/translated/purchase_order.js:1161
+#: templates/js/translated/purchase_order.js:1176
msgid "Stock Status"
msgstr ""
-#: templates/js/translated/purchase_order.js:1175
+#: templates/js/translated/purchase_order.js:1190
msgid "Add barcode"
msgstr ""
-#: templates/js/translated/purchase_order.js:1176
+#: templates/js/translated/purchase_order.js:1191
msgid "Remove barcode"
msgstr ""
-#: templates/js/translated/purchase_order.js:1179
+#: templates/js/translated/purchase_order.js:1194
msgid "Specify location"
msgstr ""
-#: templates/js/translated/purchase_order.js:1187
+#: templates/js/translated/purchase_order.js:1202
msgid "Add batch code"
msgstr ""
-#: templates/js/translated/purchase_order.js:1198
+#: templates/js/translated/purchase_order.js:1213
msgid "Add serial numbers"
msgstr ""
-#: templates/js/translated/purchase_order.js:1250
+#: templates/js/translated/purchase_order.js:1265
msgid "Serials"
msgstr ""
-#: templates/js/translated/purchase_order.js:1275
+#: templates/js/translated/purchase_order.js:1290
msgid "Order Code"
msgstr ""
-#: templates/js/translated/purchase_order.js:1277
+#: templates/js/translated/purchase_order.js:1292
msgid "Quantity to Receive"
msgstr ""
-#: templates/js/translated/purchase_order.js:1299
-#: templates/js/translated/return_order.js:545
+#: templates/js/translated/purchase_order.js:1314
+#: templates/js/translated/return_order.js:557
msgid "Confirm receipt of items"
msgstr ""
-#: templates/js/translated/purchase_order.js:1300
+#: templates/js/translated/purchase_order.js:1315
msgid "Receive Purchase Order Items"
msgstr ""
-#: templates/js/translated/purchase_order.js:1368
+#: templates/js/translated/purchase_order.js:1383
msgid "Scan Item Barcode"
msgstr ""
-#: templates/js/translated/purchase_order.js:1369
+#: templates/js/translated/purchase_order.js:1384
msgid "Scan barcode on incoming item (must not match any existing stock items)"
msgstr ""
-#: templates/js/translated/purchase_order.js:1383
+#: templates/js/translated/purchase_order.js:1398
msgid "Invalid barcode data"
msgstr ""
-#: templates/js/translated/purchase_order.js:1645
-#: templates/js/translated/return_order.js:274
-#: templates/js/translated/sales_order.js:762
-#: templates/js/translated/sales_order.js:986
+#: templates/js/translated/purchase_order.js:1660
+#: templates/js/translated/return_order.js:286
+#: templates/js/translated/sales_order.js:774
+#: templates/js/translated/sales_order.js:998
msgid "Order is overdue"
msgstr ""
-#: templates/js/translated/purchase_order.js:1707
-#: templates/js/translated/return_order.js:342
-#: templates/js/translated/sales_order.js:839
-#: templates/js/translated/sales_order.js:999
+#: templates/js/translated/purchase_order.js:1722
+#: templates/js/translated/return_order.js:354
+#: templates/js/translated/sales_order.js:851
+#: templates/js/translated/sales_order.js:1011
msgid "Items"
msgstr ""
-#: templates/js/translated/purchase_order.js:1806
+#: templates/js/translated/purchase_order.js:1821
msgid "All selected Line items will be deleted"
msgstr ""
-#: templates/js/translated/purchase_order.js:1824
+#: templates/js/translated/purchase_order.js:1839
msgid "Delete selected Line items?"
msgstr ""
-#: templates/js/translated/purchase_order.js:1884
-#: templates/js/translated/sales_order.js:2047
+#: templates/js/translated/purchase_order.js:1894
+#: templates/js/translated/sales_order.js:2059
msgid "Duplicate Line Item"
msgstr ""
-#: templates/js/translated/purchase_order.js:1899
-#: templates/js/translated/return_order.js:464
-#: templates/js/translated/return_order.js:653
-#: templates/js/translated/sales_order.js:2060
+#: templates/js/translated/purchase_order.js:1909
+#: templates/js/translated/return_order.js:476
+#: templates/js/translated/return_order.js:665
+#: templates/js/translated/sales_order.js:2072
msgid "Edit Line Item"
msgstr ""
-#: templates/js/translated/purchase_order.js:1910
-#: templates/js/translated/return_order.js:666
-#: templates/js/translated/sales_order.js:2071
+#: templates/js/translated/purchase_order.js:1920
+#: templates/js/translated/return_order.js:678
+#: templates/js/translated/sales_order.js:2083
msgid "Delete Line Item"
msgstr ""
-#: templates/js/translated/purchase_order.js:2192
-#: templates/js/translated/sales_order.js:2001
+#: templates/js/translated/purchase_order.js:2202
+#: templates/js/translated/sales_order.js:2013
msgid "Duplicate line item"
msgstr ""
-#: templates/js/translated/purchase_order.js:2193
-#: templates/js/translated/return_order.js:785
-#: templates/js/translated/sales_order.js:2002
+#: templates/js/translated/purchase_order.js:2203
+#: templates/js/translated/return_order.js:797
+#: templates/js/translated/sales_order.js:2014
msgid "Edit line item"
msgstr ""
-#: templates/js/translated/purchase_order.js:2194
-#: templates/js/translated/return_order.js:789
-#: templates/js/translated/sales_order.js:2008
+#: templates/js/translated/purchase_order.js:2204
+#: templates/js/translated/return_order.js:801
+#: templates/js/translated/sales_order.js:2020
msgid "Delete line item"
msgstr ""
@@ -11424,941 +11553,973 @@ msgstr ""
msgid "Add Customer"
msgstr ""
-#: templates/js/translated/return_order.js:119
+#: templates/js/translated/return_order.js:131
msgid "Create Return Order"
msgstr ""
-#: templates/js/translated/return_order.js:134
+#: templates/js/translated/return_order.js:146
msgid "Edit Return Order"
msgstr ""
-#: templates/js/translated/return_order.js:154
+#: templates/js/translated/return_order.js:166
msgid "Issue Return Order"
msgstr ""
-#: templates/js/translated/return_order.js:171
+#: templates/js/translated/return_order.js:183
msgid "Are you sure you wish to cancel this Return Order?"
msgstr ""
-#: templates/js/translated/return_order.js:178
+#: templates/js/translated/return_order.js:190
msgid "Cancel Return Order"
msgstr ""
-#: templates/js/translated/return_order.js:203
+#: templates/js/translated/return_order.js:215
msgid "Complete Return Order"
msgstr ""
-#: templates/js/translated/return_order.js:251
+#: templates/js/translated/return_order.js:263
msgid "No return orders found"
msgstr ""
-#: templates/js/translated/return_order.js:288
-#: templates/js/translated/sales_order.js:776
+#: templates/js/translated/return_order.js:300
+#: templates/js/translated/sales_order.js:788
msgid "Invalid Customer"
msgstr ""
-#: templates/js/translated/return_order.js:546
+#: templates/js/translated/return_order.js:558
msgid "Receive Return Order Items"
msgstr ""
-#: templates/js/translated/return_order.js:677
-#: templates/js/translated/sales_order.js:2207
+#: templates/js/translated/return_order.js:689
+#: templates/js/translated/sales_order.js:2219
msgid "No matching line items"
msgstr ""
-#: templates/js/translated/return_order.js:782
+#: templates/js/translated/return_order.js:794
msgid "Mark item as received"
msgstr ""
-#: templates/js/translated/sales_order.js:146
+#: templates/js/translated/sales_order.js:158
msgid "Create Sales Order"
msgstr ""
-#: templates/js/translated/sales_order.js:161
+#: templates/js/translated/sales_order.js:173
msgid "Edit Sales Order"
msgstr ""
-#: templates/js/translated/sales_order.js:276
+#: templates/js/translated/sales_order.js:288
msgid "No stock items have been allocated to this shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:281
+#: templates/js/translated/sales_order.js:293
msgid "The following stock items will be shipped"
msgstr ""
-#: templates/js/translated/sales_order.js:321
+#: templates/js/translated/sales_order.js:333
msgid "Complete Shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:345
+#: templates/js/translated/sales_order.js:357
msgid "Confirm Shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:401
+#: templates/js/translated/sales_order.js:413
msgid "No pending shipments found"
msgstr ""
-#: templates/js/translated/sales_order.js:405
+#: templates/js/translated/sales_order.js:417
msgid "No stock items have been allocated to pending shipments"
msgstr ""
-#: templates/js/translated/sales_order.js:415
+#: templates/js/translated/sales_order.js:427
msgid "Complete Shipments"
msgstr ""
-#: templates/js/translated/sales_order.js:437
+#: templates/js/translated/sales_order.js:449
msgid "Skip"
msgstr ""
-#: templates/js/translated/sales_order.js:498
+#: templates/js/translated/sales_order.js:510
msgid "This order has line items which have not been completed."
msgstr ""
-#: templates/js/translated/sales_order.js:520
+#: templates/js/translated/sales_order.js:532
msgid "Issue this Sales Order?"
msgstr ""
-#: templates/js/translated/sales_order.js:525
+#: templates/js/translated/sales_order.js:537
msgid "Issue Sales Order"
msgstr ""
-#: templates/js/translated/sales_order.js:544
+#: templates/js/translated/sales_order.js:556
msgid "Cancel Sales Order"
msgstr ""
-#: templates/js/translated/sales_order.js:549
+#: templates/js/translated/sales_order.js:561
msgid "Cancelling this order means that the order will no longer be editable."
msgstr ""
-#: templates/js/translated/sales_order.js:603
+#: templates/js/translated/sales_order.js:615
msgid "Create New Shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:713
+#: templates/js/translated/sales_order.js:725
msgid "No sales orders found"
msgstr ""
-#: templates/js/translated/sales_order.js:896
+#: templates/js/translated/sales_order.js:908
msgid "Edit shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:899
+#: templates/js/translated/sales_order.js:911
msgid "Complete shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:904
+#: templates/js/translated/sales_order.js:916
msgid "Delete shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:921
+#: templates/js/translated/sales_order.js:933
msgid "Edit Shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:936
+#: templates/js/translated/sales_order.js:948
msgid "Delete Shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:969
+#: templates/js/translated/sales_order.js:981
msgid "No matching shipments found"
msgstr ""
-#: templates/js/translated/sales_order.js:994
+#: templates/js/translated/sales_order.js:1006
msgid "Shipment Reference"
msgstr ""
-#: templates/js/translated/sales_order.js:1018
-#: templates/js/translated/sales_order.js:1515
+#: templates/js/translated/sales_order.js:1030
+#: templates/js/translated/sales_order.js:1527
msgid "Not shipped"
msgstr ""
-#: templates/js/translated/sales_order.js:1036
+#: templates/js/translated/sales_order.js:1048
msgid "Tracking"
msgstr ""
-#: templates/js/translated/sales_order.js:1040
+#: templates/js/translated/sales_order.js:1052
msgid "Invoice"
msgstr ""
-#: templates/js/translated/sales_order.js:1207
+#: templates/js/translated/sales_order.js:1219
msgid "Add Shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:1258
+#: templates/js/translated/sales_order.js:1270
msgid "Confirm stock allocation"
msgstr ""
-#: templates/js/translated/sales_order.js:1259
+#: templates/js/translated/sales_order.js:1271
msgid "Allocate Stock Items to Sales Order"
msgstr ""
-#: templates/js/translated/sales_order.js:1463
+#: templates/js/translated/sales_order.js:1475
msgid "No sales order allocations found"
msgstr ""
-#: templates/js/translated/sales_order.js:1555
+#: templates/js/translated/sales_order.js:1567
msgid "Edit Stock Allocation"
msgstr ""
-#: templates/js/translated/sales_order.js:1569
+#: templates/js/translated/sales_order.js:1581
msgid "Confirm Delete Operation"
msgstr ""
-#: templates/js/translated/sales_order.js:1570
+#: templates/js/translated/sales_order.js:1582
msgid "Delete Stock Allocation"
msgstr ""
-#: templates/js/translated/sales_order.js:1609
-#: templates/js/translated/sales_order.js:1696
-#: templates/js/translated/stock.js:1688
+#: templates/js/translated/sales_order.js:1621
+#: templates/js/translated/sales_order.js:1708
+#: templates/js/translated/stock.js:1687
msgid "Shipped to customer"
msgstr ""
-#: templates/js/translated/sales_order.js:1617
-#: templates/js/translated/sales_order.js:1705
+#: templates/js/translated/sales_order.js:1629
+#: templates/js/translated/sales_order.js:1717
msgid "Stock location not specified"
msgstr ""
-#: templates/js/translated/sales_order.js:1985
+#: templates/js/translated/sales_order.js:1997
msgid "Allocate serial numbers"
msgstr ""
-#: templates/js/translated/sales_order.js:1989
+#: templates/js/translated/sales_order.js:2001
msgid "Purchase stock"
msgstr ""
-#: templates/js/translated/sales_order.js:1998
-#: templates/js/translated/sales_order.js:2185
+#: templates/js/translated/sales_order.js:2010
+#: templates/js/translated/sales_order.js:2197
msgid "Calculate price"
msgstr ""
-#: templates/js/translated/sales_order.js:2012
+#: templates/js/translated/sales_order.js:2024
msgid "Cannot be deleted as items have been shipped"
msgstr ""
-#: templates/js/translated/sales_order.js:2015
+#: templates/js/translated/sales_order.js:2027
msgid "Cannot be deleted as items have been allocated"
msgstr ""
-#: templates/js/translated/sales_order.js:2086
+#: templates/js/translated/sales_order.js:2098
msgid "Allocate Serial Numbers"
msgstr ""
-#: templates/js/translated/sales_order.js:2193
+#: templates/js/translated/sales_order.js:2205
msgid "Update Unit Price"
msgstr ""
-#: templates/js/translated/search.js:312
+#: templates/js/translated/search.js:270
msgid "No results"
msgstr ""
-#: templates/js/translated/search.js:334 templates/search.html:25
+#: templates/js/translated/search.js:292 templates/search.html:25
msgid "Enter search query"
msgstr ""
-#: templates/js/translated/search.js:384
+#: templates/js/translated/search.js:342
msgid "result"
msgstr ""
-#: templates/js/translated/search.js:384
+#: templates/js/translated/search.js:342
msgid "results"
msgstr ""
-#: templates/js/translated/search.js:394
+#: templates/js/translated/search.js:352
msgid "Minimize results"
msgstr ""
-#: templates/js/translated/search.js:397
+#: templates/js/translated/search.js:355
msgid "Remove results"
msgstr ""
-#: templates/js/translated/stock.js:98
+#: templates/js/translated/stock.js:97
msgid "Serialize Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:129
+#: templates/js/translated/stock.js:128
msgid "Confirm Stock Serialization"
msgstr ""
-#: templates/js/translated/stock.js:138
+#: templates/js/translated/stock.js:137
msgid "Parent stock location"
msgstr ""
-#: templates/js/translated/stock.js:173
+#: templates/js/translated/stock.js:172
msgid "Edit Stock Location"
msgstr ""
-#: templates/js/translated/stock.js:188
+#: templates/js/translated/stock.js:187
msgid "New Stock Location"
msgstr ""
-#: templates/js/translated/stock.js:190
+#: templates/js/translated/stock.js:189
msgid "Create another location after this one"
msgstr ""
-#: templates/js/translated/stock.js:191
+#: templates/js/translated/stock.js:190
msgid "Stock location created"
msgstr ""
-#: templates/js/translated/stock.js:205
+#: templates/js/translated/stock.js:204
msgid "Are you sure you want to delete this stock location?"
msgstr ""
-#: templates/js/translated/stock.js:212
+#: templates/js/translated/stock.js:211
msgid "Move to parent stock location"
msgstr ""
-#: templates/js/translated/stock.js:221
+#: templates/js/translated/stock.js:220
msgid "Delete Stock Location"
msgstr ""
-#: templates/js/translated/stock.js:225
+#: templates/js/translated/stock.js:224
msgid "Action for stock items in this stock location"
msgstr ""
-#: templates/js/translated/stock.js:230
+#: templates/js/translated/stock.js:229
msgid "Action for sub-locations"
msgstr ""
-#: templates/js/translated/stock.js:284
+#: templates/js/translated/stock.js:283
msgid "This part cannot be serialized"
msgstr ""
-#: templates/js/translated/stock.js:320
+#: templates/js/translated/stock.js:319
msgid "Add given quantity as packs instead of individual items"
msgstr ""
-#: templates/js/translated/stock.js:329
+#: templates/js/translated/stock.js:328
msgid "Enter initial quantity for this stock item"
msgstr ""
-#: templates/js/translated/stock.js:335
+#: templates/js/translated/stock.js:334
msgid "Enter serial numbers for new stock (or leave blank)"
msgstr ""
-#: templates/js/translated/stock.js:406
+#: templates/js/translated/stock.js:405
msgid "Stock item duplicated"
msgstr ""
-#: templates/js/translated/stock.js:426
+#: templates/js/translated/stock.js:425
msgid "Duplicate Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:442
+#: templates/js/translated/stock.js:441
msgid "Are you sure you want to delete this stock item?"
msgstr ""
-#: templates/js/translated/stock.js:447
+#: templates/js/translated/stock.js:446
msgid "Delete Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:468
+#: templates/js/translated/stock.js:467
msgid "Edit Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:510
+#: templates/js/translated/stock.js:509
msgid "Create another item after this one"
msgstr ""
-#: templates/js/translated/stock.js:522
+#: templates/js/translated/stock.js:521
msgid "Created new stock item"
msgstr ""
-#: templates/js/translated/stock.js:535
+#: templates/js/translated/stock.js:534
msgid "Created multiple stock items"
msgstr ""
-#: templates/js/translated/stock.js:560
+#: templates/js/translated/stock.js:559
msgid "Find Serial Number"
msgstr ""
-#: templates/js/translated/stock.js:564 templates/js/translated/stock.js:565
+#: templates/js/translated/stock.js:563 templates/js/translated/stock.js:564
msgid "Enter serial number"
msgstr ""
-#: templates/js/translated/stock.js:581
+#: templates/js/translated/stock.js:580
msgid "Enter a serial number"
msgstr ""
-#: templates/js/translated/stock.js:601
+#: templates/js/translated/stock.js:600
msgid "No matching serial number"
msgstr ""
-#: templates/js/translated/stock.js:610
+#: templates/js/translated/stock.js:609
msgid "More than one matching result found"
msgstr ""
-#: templates/js/translated/stock.js:718
+#: templates/js/translated/stock.js:717
msgid "Confirm stock assignment"
msgstr ""
-#: templates/js/translated/stock.js:719
+#: templates/js/translated/stock.js:718
msgid "Assign Stock to Customer"
msgstr ""
-#: templates/js/translated/stock.js:796
+#: templates/js/translated/stock.js:795
msgid "Warning: Merge operation cannot be reversed"
msgstr ""
-#: templates/js/translated/stock.js:797
+#: templates/js/translated/stock.js:796
msgid "Some information will be lost when merging stock items"
msgstr ""
-#: templates/js/translated/stock.js:799
+#: templates/js/translated/stock.js:798
msgid "Stock transaction history will be deleted for merged items"
msgstr ""
-#: templates/js/translated/stock.js:800
+#: templates/js/translated/stock.js:799
msgid "Supplier part information will be deleted for merged items"
msgstr ""
-#: templates/js/translated/stock.js:891
+#: templates/js/translated/stock.js:890
msgid "Confirm stock item merge"
msgstr ""
-#: templates/js/translated/stock.js:892
+#: templates/js/translated/stock.js:891
msgid "Merge Stock Items"
msgstr ""
-#: templates/js/translated/stock.js:987
+#: templates/js/translated/stock.js:986
msgid "Transfer Stock"
msgstr ""
-#: templates/js/translated/stock.js:988
+#: templates/js/translated/stock.js:987
msgid "Move"
msgstr ""
-#: templates/js/translated/stock.js:994
+#: templates/js/translated/stock.js:993
msgid "Count Stock"
msgstr ""
-#: templates/js/translated/stock.js:995
+#: templates/js/translated/stock.js:994
msgid "Count"
msgstr ""
-#: templates/js/translated/stock.js:999
+#: templates/js/translated/stock.js:998
msgid "Remove Stock"
msgstr ""
-#: templates/js/translated/stock.js:1000
+#: templates/js/translated/stock.js:999
msgid "Take"
msgstr ""
-#: templates/js/translated/stock.js:1004
+#: templates/js/translated/stock.js:1003
msgid "Add Stock"
msgstr ""
-#: templates/js/translated/stock.js:1005 users/models.py:243
+#: templates/js/translated/stock.js:1004 users/models.py:249
msgid "Add"
msgstr ""
-#: templates/js/translated/stock.js:1009
+#: templates/js/translated/stock.js:1008
msgid "Delete Stock"
msgstr ""
-#: templates/js/translated/stock.js:1106
+#: templates/js/translated/stock.js:1105
msgid "Quantity cannot be adjusted for serialized stock"
msgstr ""
-#: templates/js/translated/stock.js:1106
+#: templates/js/translated/stock.js:1105
msgid "Specify stock quantity"
msgstr ""
-#: templates/js/translated/stock.js:1140
+#: templates/js/translated/stock.js:1139 templates/js/translated/stock.js:3151
msgid "Select Stock Items"
msgstr ""
-#: templates/js/translated/stock.js:1141
-msgid "You must select at least one available stock item"
+#: templates/js/translated/stock.js:1140
+msgid "Select at least one available stock item"
msgstr ""
-#: templates/js/translated/stock.js:1168
+#: templates/js/translated/stock.js:1167
msgid "Confirm stock adjustment"
msgstr ""
-#: templates/js/translated/stock.js:1304
+#: templates/js/translated/stock.js:1303
msgid "PASS"
msgstr ""
-#: templates/js/translated/stock.js:1306
+#: templates/js/translated/stock.js:1305
msgid "FAIL"
msgstr ""
-#: templates/js/translated/stock.js:1311
+#: templates/js/translated/stock.js:1310
msgid "NO RESULT"
msgstr ""
-#: templates/js/translated/stock.js:1373
+#: templates/js/translated/stock.js:1372
msgid "Pass test"
msgstr ""
-#: templates/js/translated/stock.js:1376
+#: templates/js/translated/stock.js:1375
msgid "Add test result"
msgstr ""
-#: templates/js/translated/stock.js:1400
+#: templates/js/translated/stock.js:1399
msgid "No test results found"
msgstr ""
-#: templates/js/translated/stock.js:1464
+#: templates/js/translated/stock.js:1463
msgid "Test Date"
msgstr ""
-#: templates/js/translated/stock.js:1626
+#: templates/js/translated/stock.js:1625
msgid "Edit Test Result"
msgstr ""
-#: templates/js/translated/stock.js:1648
+#: templates/js/translated/stock.js:1647
msgid "Delete Test Result"
msgstr ""
-#: templates/js/translated/stock.js:1680
+#: templates/js/translated/stock.js:1679
msgid "In production"
msgstr ""
-#: templates/js/translated/stock.js:1684
+#: templates/js/translated/stock.js:1683
msgid "Installed in Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:1692
+#: templates/js/translated/stock.js:1691
msgid "Assigned to Sales Order"
msgstr ""
-#: templates/js/translated/stock.js:1698
+#: templates/js/translated/stock.js:1697
msgid "No stock location set"
msgstr ""
-#: templates/js/translated/stock.js:1746
+#: templates/js/translated/stock.js:1753
+msgid "Change stock status"
+msgstr ""
+
+#: templates/js/translated/stock.js:1762
+msgid "Merge stock"
+msgstr ""
+
+#: templates/js/translated/stock.js:1811
+msgid "Delete stock"
+msgstr ""
+
+#: templates/js/translated/stock.js:1866
msgid "stock items"
msgstr ""
-#: templates/js/translated/stock.js:1850
+#: templates/js/translated/stock.js:1871
+msgid "Scan to location"
+msgstr ""
+
+#: templates/js/translated/stock.js:1882
+msgid "Stock Actions"
+msgstr ""
+
+#: templates/js/translated/stock.js:1929
+msgid "Load installed items"
+msgstr ""
+
+#: templates/js/translated/stock.js:2007
msgid "Stock item is in production"
msgstr ""
-#: templates/js/translated/stock.js:1855
+#: templates/js/translated/stock.js:2012
msgid "Stock item assigned to sales order"
msgstr ""
-#: templates/js/translated/stock.js:1858
+#: templates/js/translated/stock.js:2015
msgid "Stock item assigned to customer"
msgstr ""
-#: templates/js/translated/stock.js:1861
+#: templates/js/translated/stock.js:2018
msgid "Serialized stock item has been allocated"
msgstr ""
-#: templates/js/translated/stock.js:1863
+#: templates/js/translated/stock.js:2020
msgid "Stock item has been fully allocated"
msgstr ""
-#: templates/js/translated/stock.js:1865
+#: templates/js/translated/stock.js:2022
msgid "Stock item has been partially allocated"
msgstr ""
-#: templates/js/translated/stock.js:1868
+#: templates/js/translated/stock.js:2025
msgid "Stock item has been installed in another item"
msgstr ""
-#: templates/js/translated/stock.js:1870
+#: templates/js/translated/stock.js:2027
msgid "Stock item has been consumed by a build order"
msgstr ""
-#: templates/js/translated/stock.js:1874
+#: templates/js/translated/stock.js:2031
msgid "Stock item has expired"
msgstr ""
-#: templates/js/translated/stock.js:1876
+#: templates/js/translated/stock.js:2033
msgid "Stock item will expire soon"
msgstr ""
-#: templates/js/translated/stock.js:1881
+#: templates/js/translated/stock.js:2038
msgid "Stock item has been rejected"
msgstr ""
-#: templates/js/translated/stock.js:1883
+#: templates/js/translated/stock.js:2040
msgid "Stock item is lost"
msgstr ""
-#: templates/js/translated/stock.js:1885
+#: templates/js/translated/stock.js:2042
msgid "Stock item is destroyed"
msgstr ""
-#: templates/js/translated/stock.js:1889
-#: templates/js/translated/table_filters.js:296
+#: templates/js/translated/stock.js:2046
+#: templates/js/translated/table_filters.js:302
msgid "Depleted"
msgstr ""
-#: templates/js/translated/stock.js:2031
+#: templates/js/translated/stock.js:2188
msgid "Supplier part not specified"
msgstr ""
-#: templates/js/translated/stock.js:2078
+#: templates/js/translated/stock.js:2235
msgid "Stock Value"
msgstr ""
-#: templates/js/translated/stock.js:2170
+#: templates/js/translated/stock.js:2358
msgid "No stock items matching query"
msgstr ""
-#: templates/js/translated/stock.js:2319
+#: templates/js/translated/stock.js:2450
msgid "stock locations"
msgstr ""
-#: templates/js/translated/stock.js:2476
+#: templates/js/translated/stock.js:2607
msgid "Load Subloactions"
msgstr ""
-#: templates/js/translated/stock.js:2583
+#: templates/js/translated/stock.js:2714
msgid "Details"
msgstr ""
-#: templates/js/translated/stock.js:2587
+#: templates/js/translated/stock.js:2718
msgid "No changes"
msgstr ""
-#: templates/js/translated/stock.js:2599
+#: templates/js/translated/stock.js:2730
msgid "Part information unavailable"
msgstr ""
-#: templates/js/translated/stock.js:2621
+#: templates/js/translated/stock.js:2752
msgid "Location no longer exists"
msgstr ""
-#: templates/js/translated/stock.js:2638
+#: templates/js/translated/stock.js:2769
msgid "Build order no longer exists"
msgstr ""
-#: templates/js/translated/stock.js:2653
+#: templates/js/translated/stock.js:2784
msgid "Purchase order no longer exists"
msgstr ""
-#: templates/js/translated/stock.js:2670
+#: templates/js/translated/stock.js:2801
msgid "Sales Order no longer exists"
msgstr ""
-#: templates/js/translated/stock.js:2687
+#: templates/js/translated/stock.js:2818
msgid "Return Order no longer exists"
msgstr ""
-#: templates/js/translated/stock.js:2706
+#: templates/js/translated/stock.js:2837
msgid "Customer no longer exists"
msgstr ""
-#: templates/js/translated/stock.js:2724
+#: templates/js/translated/stock.js:2855
msgid "Stock item no longer exists"
msgstr ""
-#: templates/js/translated/stock.js:2742
+#: templates/js/translated/stock.js:2873
msgid "Added"
msgstr ""
-#: templates/js/translated/stock.js:2750
+#: templates/js/translated/stock.js:2881
msgid "Removed"
msgstr ""
-#: templates/js/translated/stock.js:2826
+#: templates/js/translated/stock.js:2953
msgid "No installed items"
msgstr ""
-#: templates/js/translated/stock.js:2876 templates/js/translated/stock.js:2911
+#: templates/js/translated/stock.js:3003 templates/js/translated/stock.js:3038
msgid "Uninstall Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:2929
+#: templates/js/translated/stock.js:3056
msgid "Select stock item to uninstall"
msgstr ""
-#: templates/js/translated/stock.js:2950
+#: templates/js/translated/stock.js:3077
msgid "Install another stock item into this item"
msgstr ""
-#: templates/js/translated/stock.js:2951
+#: templates/js/translated/stock.js:3078
msgid "Stock items can only be installed if they meet the following criteria"
msgstr ""
-#: templates/js/translated/stock.js:2953
+#: templates/js/translated/stock.js:3080
msgid "The Stock Item links to a Part which is the BOM for this Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:2954
+#: templates/js/translated/stock.js:3081
msgid "The Stock Item is currently available in stock"
msgstr ""
-#: templates/js/translated/stock.js:2955
+#: templates/js/translated/stock.js:3082
msgid "The Stock Item is not already installed in another item"
msgstr ""
-#: templates/js/translated/stock.js:2956
+#: templates/js/translated/stock.js:3083
msgid "The Stock Item is tracked by either a batch code or serial number"
msgstr ""
-#: templates/js/translated/stock.js:2969
+#: templates/js/translated/stock.js:3096
msgid "Select part to install"
msgstr ""
+#: templates/js/translated/stock.js:3152
+msgid "Select one or more stock items"
+msgstr ""
+
+#: templates/js/translated/stock.js:3165
+msgid "Selected stock items"
+msgstr ""
+
+#: templates/js/translated/stock.js:3169
+msgid "Change Stock Status"
+msgstr ""
+
#: templates/js/translated/table_filters.js:50
msgid "Has project code"
msgstr ""
-#: templates/js/translated/table_filters.js:59
-#: templates/js/translated/table_filters.js:518
-#: templates/js/translated/table_filters.js:530
-#: templates/js/translated/table_filters.js:571
+#: templates/js/translated/table_filters.js:65
+#: templates/js/translated/table_filters.js:540
+#: templates/js/translated/table_filters.js:552
+#: templates/js/translated/table_filters.js:593
msgid "Order status"
msgstr ""
-#: templates/js/translated/table_filters.js:64
-#: templates/js/translated/table_filters.js:535
-#: templates/js/translated/table_filters.js:561
-#: templates/js/translated/table_filters.js:576
+#: templates/js/translated/table_filters.js:70
+#: templates/js/translated/table_filters.js:557
+#: templates/js/translated/table_filters.js:583
+#: templates/js/translated/table_filters.js:598
msgid "Outstanding"
msgstr ""
-#: templates/js/translated/table_filters.js:72
-#: templates/js/translated/table_filters.js:458
-#: templates/js/translated/table_filters.js:543
-#: templates/js/translated/table_filters.js:584
+#: templates/js/translated/table_filters.js:78
+#: templates/js/translated/table_filters.js:464
+#: templates/js/translated/table_filters.js:565
+#: templates/js/translated/table_filters.js:606
msgid "Assigned to me"
msgstr ""
-#: templates/js/translated/table_filters.js:128
+#: templates/js/translated/table_filters.js:134
msgid "Trackable Part"
msgstr ""
-#: templates/js/translated/table_filters.js:132
+#: templates/js/translated/table_filters.js:138
msgid "Assembled Part"
msgstr ""
-#: templates/js/translated/table_filters.js:136
+#: templates/js/translated/table_filters.js:142
msgid "Has Available Stock"
msgstr ""
-#: templates/js/translated/table_filters.js:152
+#: templates/js/translated/table_filters.js:158
msgid "Allow Variant Stock"
msgstr ""
-#: templates/js/translated/table_filters.js:164
-#: templates/js/translated/table_filters.js:692
+#: templates/js/translated/table_filters.js:170
+#: templates/js/translated/table_filters.js:714
msgid "Has Pricing"
msgstr ""
-#: templates/js/translated/table_filters.js:204
-#: templates/js/translated/table_filters.js:291
+#: templates/js/translated/table_filters.js:210
+#: templates/js/translated/table_filters.js:297
msgid "Include sublocations"
msgstr ""
-#: templates/js/translated/table_filters.js:205
+#: templates/js/translated/table_filters.js:211
msgid "Include locations"
msgstr ""
-#: templates/js/translated/table_filters.js:224
-#: templates/js/translated/table_filters.js:225
-#: templates/js/translated/table_filters.js:624
+#: templates/js/translated/table_filters.js:230
+#: templates/js/translated/table_filters.js:231
+#: templates/js/translated/table_filters.js:646
msgid "Include subcategories"
msgstr ""
-#: templates/js/translated/table_filters.js:233
-#: templates/js/translated/table_filters.js:672
+#: templates/js/translated/table_filters.js:239
+#: templates/js/translated/table_filters.js:694
msgid "Subscribed"
msgstr ""
-#: templates/js/translated/table_filters.js:244
-#: templates/js/translated/table_filters.js:326
+#: templates/js/translated/table_filters.js:250
+#: templates/js/translated/table_filters.js:332
msgid "Is Serialized"
msgstr ""
-#: templates/js/translated/table_filters.js:247
-#: templates/js/translated/table_filters.js:333
+#: templates/js/translated/table_filters.js:253
+#: templates/js/translated/table_filters.js:339
msgid "Serial number GTE"
msgstr ""
-#: templates/js/translated/table_filters.js:248
-#: templates/js/translated/table_filters.js:334
+#: templates/js/translated/table_filters.js:254
+#: templates/js/translated/table_filters.js:340
msgid "Serial number greater than or equal to"
msgstr ""
-#: templates/js/translated/table_filters.js:251
-#: templates/js/translated/table_filters.js:337
+#: templates/js/translated/table_filters.js:257
+#: templates/js/translated/table_filters.js:343
msgid "Serial number LTE"
msgstr ""
-#: templates/js/translated/table_filters.js:252
-#: templates/js/translated/table_filters.js:338
+#: templates/js/translated/table_filters.js:258
+#: templates/js/translated/table_filters.js:344
msgid "Serial number less than or equal to"
msgstr ""
-#: templates/js/translated/table_filters.js:255
-#: templates/js/translated/table_filters.js:256
-#: templates/js/translated/table_filters.js:329
-#: templates/js/translated/table_filters.js:330
+#: templates/js/translated/table_filters.js:261
+#: templates/js/translated/table_filters.js:262
+#: templates/js/translated/table_filters.js:335
+#: templates/js/translated/table_filters.js:336
msgid "Serial number"
msgstr ""
-#: templates/js/translated/table_filters.js:260
-#: templates/js/translated/table_filters.js:351
+#: templates/js/translated/table_filters.js:266
+#: templates/js/translated/table_filters.js:357
msgid "Batch code"
msgstr ""
-#: templates/js/translated/table_filters.js:271
-#: templates/js/translated/table_filters.js:613
+#: templates/js/translated/table_filters.js:277
+#: templates/js/translated/table_filters.js:635
msgid "Active parts"
msgstr ""
-#: templates/js/translated/table_filters.js:272
+#: templates/js/translated/table_filters.js:278
msgid "Show stock for active parts"
msgstr ""
-#: templates/js/translated/table_filters.js:277
+#: templates/js/translated/table_filters.js:283
msgid "Part is an assembly"
msgstr ""
-#: templates/js/translated/table_filters.js:281
+#: templates/js/translated/table_filters.js:287
msgid "Is allocated"
msgstr ""
-#: templates/js/translated/table_filters.js:282
+#: templates/js/translated/table_filters.js:288
msgid "Item has been allocated"
msgstr ""
-#: templates/js/translated/table_filters.js:287
+#: templates/js/translated/table_filters.js:293
msgid "Stock is available for use"
msgstr ""
-#: templates/js/translated/table_filters.js:292
+#: templates/js/translated/table_filters.js:298
msgid "Include stock in sublocations"
msgstr ""
-#: templates/js/translated/table_filters.js:297
+#: templates/js/translated/table_filters.js:303
msgid "Show stock items which are depleted"
msgstr ""
-#: templates/js/translated/table_filters.js:302
+#: templates/js/translated/table_filters.js:308
msgid "Show items which are in stock"
msgstr ""
-#: templates/js/translated/table_filters.js:306
+#: templates/js/translated/table_filters.js:312
msgid "In Production"
msgstr ""
-#: templates/js/translated/table_filters.js:307
+#: templates/js/translated/table_filters.js:313
msgid "Show items which are in production"
msgstr ""
-#: templates/js/translated/table_filters.js:311
+#: templates/js/translated/table_filters.js:317
msgid "Include Variants"
msgstr ""
-#: templates/js/translated/table_filters.js:312
+#: templates/js/translated/table_filters.js:318
msgid "Include stock items for variant parts"
msgstr ""
-#: templates/js/translated/table_filters.js:316
+#: templates/js/translated/table_filters.js:322
msgid "Installed"
msgstr ""
-#: templates/js/translated/table_filters.js:317
+#: templates/js/translated/table_filters.js:323
msgid "Show stock items which are installed in another item"
msgstr ""
-#: templates/js/translated/table_filters.js:322
+#: templates/js/translated/table_filters.js:328
msgid "Show items which have been assigned to a customer"
msgstr ""
-#: templates/js/translated/table_filters.js:342
-#: templates/js/translated/table_filters.js:343
+#: templates/js/translated/table_filters.js:348
+#: templates/js/translated/table_filters.js:349
msgid "Stock status"
msgstr ""
-#: templates/js/translated/table_filters.js:346
+#: templates/js/translated/table_filters.js:352
msgid "Has batch code"
msgstr ""
-#: templates/js/translated/table_filters.js:354
-msgid "Tracked"
-msgstr ""
-
-#: templates/js/translated/table_filters.js:355
+#: templates/js/translated/table_filters.js:361
msgid "Stock item is tracked by either batch code or serial number"
msgstr ""
-#: templates/js/translated/table_filters.js:360
+#: templates/js/translated/table_filters.js:366
msgid "Has purchase price"
msgstr ""
-#: templates/js/translated/table_filters.js:361
+#: templates/js/translated/table_filters.js:367
msgid "Show stock items which have a purchase price set"
msgstr ""
-#: templates/js/translated/table_filters.js:365
+#: templates/js/translated/table_filters.js:371
msgid "Expiry Date before"
msgstr ""
-#: templates/js/translated/table_filters.js:369
+#: templates/js/translated/table_filters.js:375
msgid "Expiry Date after"
msgstr ""
-#: templates/js/translated/table_filters.js:382
+#: templates/js/translated/table_filters.js:388
msgid "Show stock items which have expired"
msgstr ""
-#: templates/js/translated/table_filters.js:388
+#: templates/js/translated/table_filters.js:394
msgid "Show stock which is close to expiring"
msgstr ""
-#: templates/js/translated/table_filters.js:402
+#: templates/js/translated/table_filters.js:408
msgid "Test Passed"
msgstr ""
-#: templates/js/translated/table_filters.js:406
+#: templates/js/translated/table_filters.js:412
msgid "Include Installed Items"
msgstr ""
-#: templates/js/translated/table_filters.js:445
+#: templates/js/translated/table_filters.js:451
msgid "Build status"
msgstr ""
-#: templates/js/translated/table_filters.js:625
+#: templates/js/translated/table_filters.js:647
msgid "Include parts in subcategories"
msgstr ""
-#: templates/js/translated/table_filters.js:630
+#: templates/js/translated/table_filters.js:652
msgid "Show active parts"
msgstr ""
-#: templates/js/translated/table_filters.js:638
+#: templates/js/translated/table_filters.js:660
msgid "Available stock"
msgstr ""
-#: templates/js/translated/table_filters.js:646
-#: templates/js/translated/table_filters.js:742
+#: templates/js/translated/table_filters.js:668
+#: templates/js/translated/table_filters.js:764
msgid "Has Units"
msgstr ""
-#: templates/js/translated/table_filters.js:647
+#: templates/js/translated/table_filters.js:669
msgid "Part has defined units"
msgstr ""
-#: templates/js/translated/table_filters.js:651
+#: templates/js/translated/table_filters.js:673
msgid "Has IPN"
msgstr ""
-#: templates/js/translated/table_filters.js:652
+#: templates/js/translated/table_filters.js:674
msgid "Part has internal part number"
msgstr ""
-#: templates/js/translated/table_filters.js:656
+#: templates/js/translated/table_filters.js:678
msgid "In stock"
msgstr ""
-#: templates/js/translated/table_filters.js:664
+#: templates/js/translated/table_filters.js:686
msgid "Purchasable"
msgstr ""
-#: templates/js/translated/table_filters.js:676
+#: templates/js/translated/table_filters.js:698
msgid "Has stocktake entries"
msgstr ""
-#: templates/js/translated/table_filters.js:738
+#: templates/js/translated/table_filters.js:760
msgid "Has Choices"
msgstr ""
@@ -12390,51 +12551,51 @@ msgstr ""
msgid "Select File Format"
msgstr ""
-#: templates/js/translated/tables.js:561
+#: templates/js/translated/tables.js:537
msgid "Loading data"
msgstr ""
-#: templates/js/translated/tables.js:564
+#: templates/js/translated/tables.js:540
msgid "rows per page"
msgstr ""
-#: templates/js/translated/tables.js:569
+#: templates/js/translated/tables.js:545
msgid "Showing all rows"
msgstr ""
-#: templates/js/translated/tables.js:571
+#: templates/js/translated/tables.js:547
msgid "Showing"
msgstr ""
-#: templates/js/translated/tables.js:571
+#: templates/js/translated/tables.js:547
msgid "to"
msgstr ""
-#: templates/js/translated/tables.js:571
+#: templates/js/translated/tables.js:547
msgid "of"
msgstr ""
-#: templates/js/translated/tables.js:571
+#: templates/js/translated/tables.js:547
msgid "rows"
msgstr ""
-#: templates/js/translated/tables.js:578
+#: templates/js/translated/tables.js:554
msgid "No matching results"
msgstr ""
-#: templates/js/translated/tables.js:581
+#: templates/js/translated/tables.js:557
msgid "Hide/Show pagination"
msgstr ""
-#: templates/js/translated/tables.js:587
+#: templates/js/translated/tables.js:563
msgid "Toggle"
msgstr ""
-#: templates/js/translated/tables.js:590
+#: templates/js/translated/tables.js:566
msgid "Columns"
msgstr ""
-#: templates/js/translated/tables.js:593
+#: templates/js/translated/tables.js:569
msgid "All"
msgstr ""
@@ -12616,50 +12777,6 @@ msgstr ""
msgid "Email settings not configured"
msgstr ""
-#: templates/stock_table.html:17
-msgid "Barcode Actions"
-msgstr ""
-
-#: templates/stock_table.html:28
-msgid "Stock Options"
-msgstr ""
-
-#: templates/stock_table.html:33
-msgid "Add to selected stock items"
-msgstr ""
-
-#: templates/stock_table.html:34
-msgid "Remove from selected stock items"
-msgstr ""
-
-#: templates/stock_table.html:35
-msgid "Stocktake selected stock items"
-msgstr ""
-
-#: templates/stock_table.html:36
-msgid "Move selected stock items"
-msgstr ""
-
-#: templates/stock_table.html:37
-msgid "Merge selected stock items"
-msgstr ""
-
-#: templates/stock_table.html:37
-msgid "Merge stock"
-msgstr ""
-
-#: templates/stock_table.html:38
-msgid "Order selected items"
-msgstr ""
-
-#: templates/stock_table.html:42
-msgid "Delete selected items"
-msgstr ""
-
-#: templates/stock_table.html:42
-msgid "Delete stock"
-msgstr ""
-
#: templates/yesnolabel.html:4
msgid "Yes"
msgstr ""
@@ -12692,35 +12809,35 @@ msgstr ""
msgid "Important dates"
msgstr ""
-#: users/models.py:230
+#: users/models.py:236
msgid "Permission set"
msgstr ""
-#: users/models.py:238
+#: users/models.py:244
msgid "Group"
msgstr ""
-#: users/models.py:241
+#: users/models.py:247
msgid "View"
msgstr ""
-#: users/models.py:241
+#: users/models.py:247
msgid "Permission to view items"
msgstr ""
-#: users/models.py:243
+#: users/models.py:249
msgid "Permission to add items"
msgstr ""
-#: users/models.py:245
+#: users/models.py:251
msgid "Change"
msgstr ""
-#: users/models.py:245
+#: users/models.py:251
msgid "Permissions to edit items"
msgstr ""
-#: users/models.py:247
+#: users/models.py:253
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 fcd5f93774..0a8805525b 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: 2023-06-05 11:04+0000\n"
+"POT-Creation-Date: 2023-06-12 21:36+0000\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME \n"
"Language-Team: LANGUAGE \n"
@@ -53,12 +53,12 @@ msgstr ""
#: InvenTree/fields.py:206 InvenTree/models.py:766 build/serializers.py:427
#: build/serializers.py:506 build/templates/build/sidebar.html:23
#: company/models.py:597 company/templates/company/sidebar.html:35
-#: order/models.py:1086 order/templates/order/po_sidebar.html:11
+#: order/models.py:1089 order/templates/order/po_sidebar.html:11
#: order/templates/order/return_order_sidebar.html:9
#: order/templates/order/so_sidebar.html:17 part/admin.py:41
-#: part/models.py:3004 part/templates/part/part_sidebar.html:63
+#: part/models.py:3005 part/templates/part/part_sidebar.html:63
#: report/templates/report/inventree_build_order_base.html:172
-#: stock/admin.py:121 stock/models.py:2159 stock/models.py:2267
+#: stock/admin.py:121 stock/models.py:2160 stock/models.py:2268
#: stock/serializers.py:342 stock/serializers.py:475 stock/serializers.py:556
#: stock/serializers.py:839 stock/serializers.py:938 stock/serializers.py:1070
#: stock/templates/stock/stock_sidebar.html:25
@@ -122,7 +122,7 @@ msgstr ""
msgid "The provided email domain is not approved."
msgstr ""
-#: InvenTree/helpers.py:462 order/models.py:439 order/models.py:608
+#: InvenTree/helpers.py:462 order/models.py:442 order/models.py:611
msgid "Invalid quantity provided"
msgstr ""
@@ -238,7 +238,7 @@ msgstr ""
msgid "Missing external link"
msgstr ""
-#: InvenTree/models.py:486 stock/models.py:2261
+#: InvenTree/models.py:486 stock/models.py:2262
#: templates/js/translated/attachment.js:119
#: templates/js/translated/attachment.js:306
msgid "Attachment"
@@ -248,10 +248,10 @@ msgstr ""
msgid "Select file to attach"
msgstr ""
-#: InvenTree/models.py:493 common/models.py:2695 company/models.py:132
-#: company/models.py:306 company/models.py:584 order/models.py:233
-#: order/models.py:1090 order/models.py:1450 part/admin.py:39
-#: part/models.py:900 part/templates/part/part_scheduling.html:11
+#: InvenTree/models.py:493 common/models.py:2688 company/models.py:132
+#: company/models.py:306 company/models.py:584 order/models.py:236
+#: order/models.py:1093 order/models.py:1453 part/admin.py:39
+#: part/models.py:901 part/templates/part/part_scheduling.html:11
#: report/templates/report/inventree_build_order_base.html:164
#: stock/admin.py:120 templates/js/translated/company.js:977
#: templates/js/translated/company.js:1283 templates/js/translated/order.js:351
@@ -264,7 +264,7 @@ msgstr ""
msgid "Link"
msgstr ""
-#: InvenTree/models.py:494 build/models.py:291 part/models.py:901
+#: InvenTree/models.py:494 build/models.py:291 part/models.py:902
#: stock/models.py:735
msgid "Link to external URL"
msgstr ""
@@ -278,10 +278,10 @@ msgstr ""
msgid "File comment"
msgstr ""
-#: InvenTree/models.py:503 InvenTree/models.py:504 common/models.py:2154
-#: common/models.py:2155 common/models.py:2368 common/models.py:2369
-#: common/models.py:2625 common/models.py:2626 part/models.py:3012
-#: part/models.py:3100 part/models.py:3179 part/models.py:3199
+#: InvenTree/models.py:503 InvenTree/models.py:504 common/models.py:2147
+#: common/models.py:2148 common/models.py:2361 common/models.py:2362
+#: common/models.py:2618 common/models.py:2619 part/models.py:3013
+#: part/models.py:3101 part/models.py:3180 part/models.py:3200
#: plugin/models.py:217 plugin/models.py:218
#: report/templates/report/inventree_test_report_base.html:105
#: templates/js/translated/stock.js:2773
@@ -325,12 +325,12 @@ msgstr ""
msgid "Invalid choice"
msgstr ""
-#: InvenTree/models.py:648 InvenTree/models.py:649 common/models.py:2354
-#: company/models.py:390 label/models.py:103 part/models.py:846
-#: part/models.py:3399 plugin/models.py:41 report/models.py:160
+#: InvenTree/models.py:648 InvenTree/models.py:649 common/models.py:2347
+#: company/models.py:390 label/models.py:103 part/models.py:847
+#: part/models.py:3400 plugin/models.py:41 report/models.py:160
#: templates/InvenTree/settings/mixins/urls.html:13
#: templates/InvenTree/settings/notifications.html:17
-#: templates/InvenTree/settings/plugin.html:80
+#: templates/InvenTree/settings/plugin.html:78
#: templates/InvenTree/settings/plugin_settings.html:22
#: templates/js/translated/company.js:658
#: templates/js/translated/company.js:706
@@ -347,8 +347,8 @@ msgstr ""
#: company/templates/company/company_base.html:72
#: company/templates/company/manufacturer_part.html:75
#: company/templates/company/supplier_part.html:108 label/models.py:110
-#: order/models.py:229 order/models.py:1114 part/admin.py:194 part/admin.py:276
-#: part/models.py:868 part/models.py:3415 part/templates/part/category.html:81
+#: order/models.py:232 order/models.py:1117 part/admin.py:194 part/admin.py:276
+#: part/models.py:869 part/models.py:3416 part/templates/part/category.html:81
#: part/templates/part/part_base.html:172
#: part/templates/part/part_scheduling.html:12 report/models.py:173
#: report/models.py:587 report/models.py:631
@@ -420,12 +420,12 @@ msgstr ""
msgid "An error has been logged by the server."
msgstr ""
-#: InvenTree/serializers.py:60 part/models.py:3896
+#: InvenTree/serializers.py:60 part/models.py:3897
msgid "Must be a valid number"
msgstr ""
#: InvenTree/serializers.py:90 company/models.py:154
-#: company/templates/company/company_base.html:107 part/models.py:2851
+#: company/templates/company/company_base.html:107 part/models.py:2852
#: templates/InvenTree/settings/settings_staff_js.html:44
#: templates/currency_data.html:5
msgid "Currency"
@@ -498,111 +498,111 @@ msgstr ""
msgid "Downloading images from remote URL is not enabled"
msgstr ""
-#: InvenTree/settings.py:713
+#: InvenTree/settings.py:722
msgid "Czech"
msgstr ""
-#: InvenTree/settings.py:714
+#: InvenTree/settings.py:723
msgid "Danish"
msgstr ""
-#: InvenTree/settings.py:715
+#: InvenTree/settings.py:724
msgid "German"
msgstr ""
-#: InvenTree/settings.py:716
+#: InvenTree/settings.py:725
msgid "Greek"
msgstr ""
-#: InvenTree/settings.py:717
+#: InvenTree/settings.py:726
msgid "English"
msgstr ""
-#: InvenTree/settings.py:718
+#: InvenTree/settings.py:727
msgid "Spanish"
msgstr ""
-#: InvenTree/settings.py:719
+#: InvenTree/settings.py:728
msgid "Spanish (Mexican)"
msgstr ""
-#: InvenTree/settings.py:720
+#: InvenTree/settings.py:729
msgid "Farsi / Persian"
msgstr ""
-#: InvenTree/settings.py:721
+#: InvenTree/settings.py:730
msgid "Finnish"
msgstr ""
-#: InvenTree/settings.py:722
+#: InvenTree/settings.py:731
msgid "French"
msgstr ""
-#: InvenTree/settings.py:723
+#: InvenTree/settings.py:732
msgid "Hebrew"
msgstr ""
-#: InvenTree/settings.py:724
+#: InvenTree/settings.py:733
msgid "Hungarian"
msgstr ""
-#: InvenTree/settings.py:725
+#: InvenTree/settings.py:734
msgid "Italian"
msgstr ""
-#: InvenTree/settings.py:726
+#: InvenTree/settings.py:735
msgid "Japanese"
msgstr ""
-#: InvenTree/settings.py:727
+#: InvenTree/settings.py:736
msgid "Korean"
msgstr ""
-#: InvenTree/settings.py:728
+#: InvenTree/settings.py:737
msgid "Dutch"
msgstr ""
-#: InvenTree/settings.py:729
+#: InvenTree/settings.py:738
msgid "Norwegian"
msgstr ""
-#: InvenTree/settings.py:730
+#: InvenTree/settings.py:739
msgid "Polish"
msgstr ""
-#: InvenTree/settings.py:731
+#: InvenTree/settings.py:740
msgid "Portuguese"
msgstr ""
-#: InvenTree/settings.py:732
+#: InvenTree/settings.py:741
msgid "Portuguese (Brazilian)"
msgstr ""
-#: InvenTree/settings.py:733
+#: InvenTree/settings.py:742
msgid "Russian"
msgstr ""
-#: InvenTree/settings.py:734
+#: InvenTree/settings.py:743
msgid "Slovenian"
msgstr ""
-#: InvenTree/settings.py:735
+#: InvenTree/settings.py:744
msgid "Swedish"
msgstr ""
-#: InvenTree/settings.py:736
+#: InvenTree/settings.py:745
msgid "Thai"
msgstr ""
-#: InvenTree/settings.py:737
+#: InvenTree/settings.py:746
msgid "Turkish"
msgstr ""
-#: InvenTree/settings.py:738
+#: InvenTree/settings.py:747
msgid "Vietnamese"
msgstr ""
-#: InvenTree/settings.py:739
+#: InvenTree/settings.py:748
msgid "Chinese"
msgstr ""
@@ -618,196 +618,199 @@ msgstr ""
msgid "InvenTree system health checks failed"
msgstr ""
-#: InvenTree/status_codes.py:139 InvenTree/status_codes.py:181
-#: InvenTree/status_codes.py:360 InvenTree/status_codes.py:397
-#: InvenTree/status_codes.py:432 templates/js/translated/table_filters.js:511
+#: InvenTree/status_codes.py:12 InvenTree/status_codes.py:40
+#: InvenTree/status_codes.py:148 InvenTree/status_codes.py:167
+#: InvenTree/status_codes.py:188 generic/states/tests.py:16
+#: templates/js/translated/table_filters.js:511
msgid "Pending"
msgstr ""
-#: InvenTree/status_codes.py:140
+#: InvenTree/status_codes.py:13 generic/states/tests.py:17
msgid "Placed"
msgstr ""
-#: InvenTree/status_codes.py:141 InvenTree/status_codes.py:363
-#: InvenTree/status_codes.py:399 order/templates/order/order_base.html:162
+#: InvenTree/status_codes.py:14 InvenTree/status_codes.py:151
+#: InvenTree/status_codes.py:172 generic/states/tests.py:18
+#: order/templates/order/order_base.html:162
#: order/templates/order/sales_order_base.html:162
msgid "Complete"
msgstr ""
-#: InvenTree/status_codes.py:142 InvenTree/status_codes.py:184
-#: InvenTree/status_codes.py:362 InvenTree/status_codes.py:400
+#: InvenTree/status_codes.py:15 InvenTree/status_codes.py:43
+#: InvenTree/status_codes.py:150 InvenTree/status_codes.py:173
msgid "Cancelled"
msgstr ""
-#: InvenTree/status_codes.py:143 InvenTree/status_codes.py:185
-#: InvenTree/status_codes.py:227
+#: InvenTree/status_codes.py:16 InvenTree/status_codes.py:44
+#: InvenTree/status_codes.py:71
msgid "Lost"
msgstr ""
-#: InvenTree/status_codes.py:144 InvenTree/status_codes.py:186
+#: InvenTree/status_codes.py:17 InvenTree/status_codes.py:45
+#: InvenTree/status_codes.py:73
msgid "Returned"
msgstr ""
-#: InvenTree/status_codes.py:182 InvenTree/status_codes.py:398
+#: InvenTree/status_codes.py:41 InvenTree/status_codes.py:170
msgid "In Progress"
msgstr ""
-#: InvenTree/status_codes.py:183 order/models.py:1329
+#: InvenTree/status_codes.py:42 order/models.py:1332
#: templates/js/translated/sales_order.js:1509
#: templates/js/translated/sales_order.js:1630
#: templates/js/translated/sales_order.js:1934
msgid "Shipped"
msgstr ""
-#: InvenTree/status_codes.py:223
+#: InvenTree/status_codes.py:66
msgid "OK"
msgstr ""
-#: InvenTree/status_codes.py:224
+#: InvenTree/status_codes.py:67
msgid "Attention needed"
msgstr ""
-#: InvenTree/status_codes.py:225
+#: InvenTree/status_codes.py:68
msgid "Damaged"
msgstr ""
-#: InvenTree/status_codes.py:226
+#: InvenTree/status_codes.py:69
msgid "Destroyed"
msgstr ""
-#: InvenTree/status_codes.py:228
+#: InvenTree/status_codes.py:70
msgid "Rejected"
msgstr ""
-#: InvenTree/status_codes.py:229
+#: InvenTree/status_codes.py:72
msgid "Quarantined"
msgstr ""
-#: InvenTree/status_codes.py:308
+#: InvenTree/status_codes.py:91
msgid "Legacy stock tracking entry"
msgstr ""
-#: InvenTree/status_codes.py:310 templates/js/translated/stock.js:511
+#: InvenTree/status_codes.py:93 templates/js/translated/stock.js:511
msgid "Stock item created"
msgstr ""
-#: InvenTree/status_codes.py:312
+#: InvenTree/status_codes.py:96
msgid "Edited stock item"
msgstr ""
-#: InvenTree/status_codes.py:313
+#: InvenTree/status_codes.py:97
msgid "Assigned serial number"
msgstr ""
-#: InvenTree/status_codes.py:315
+#: InvenTree/status_codes.py:100
msgid "Stock counted"
msgstr ""
-#: InvenTree/status_codes.py:316
+#: InvenTree/status_codes.py:101
msgid "Stock manually added"
msgstr ""
-#: InvenTree/status_codes.py:317
+#: InvenTree/status_codes.py:102
msgid "Stock manually removed"
msgstr ""
-#: InvenTree/status_codes.py:319
+#: InvenTree/status_codes.py:105
msgid "Location changed"
msgstr ""
-#: InvenTree/status_codes.py:320
+#: InvenTree/status_codes.py:106
msgid "Stock updated"
msgstr ""
-#: InvenTree/status_codes.py:322
+#: InvenTree/status_codes.py:109
msgid "Installed into assembly"
msgstr ""
-#: InvenTree/status_codes.py:323
+#: InvenTree/status_codes.py:110
msgid "Removed from assembly"
msgstr ""
-#: InvenTree/status_codes.py:325
+#: InvenTree/status_codes.py:112
msgid "Installed component item"
msgstr ""
-#: InvenTree/status_codes.py:326
+#: InvenTree/status_codes.py:113
msgid "Removed component item"
msgstr ""
-#: InvenTree/status_codes.py:328
+#: InvenTree/status_codes.py:116
msgid "Split from parent item"
msgstr ""
-#: InvenTree/status_codes.py:329
+#: InvenTree/status_codes.py:117
msgid "Split child item"
msgstr ""
-#: InvenTree/status_codes.py:331 templates/js/translated/stock.js:2243
+#: InvenTree/status_codes.py:120 templates/js/translated/stock.js:2243
msgid "Merged stock items"
msgstr ""
-#: InvenTree/status_codes.py:333
+#: InvenTree/status_codes.py:123
msgid "Converted to variant"
msgstr ""
-#: InvenTree/status_codes.py:335 templates/js/translated/table_filters.js:321
-msgid "Sent to customer"
-msgstr ""
-
-#: InvenTree/status_codes.py:336
-msgid "Returned from customer"
-msgstr ""
-
-#: InvenTree/status_codes.py:338
+#: InvenTree/status_codes.py:126
msgid "Build order output created"
msgstr ""
-#: InvenTree/status_codes.py:339
+#: InvenTree/status_codes.py:127
msgid "Build order output completed"
msgstr ""
-#: InvenTree/status_codes.py:340
+#: InvenTree/status_codes.py:128
msgid "Build order output rejected"
msgstr ""
-#: InvenTree/status_codes.py:341 templates/js/translated/stock.js:1676
+#: InvenTree/status_codes.py:129 templates/js/translated/stock.js:1676
msgid "Consumed by build order"
msgstr ""
-#: InvenTree/status_codes.py:343
+#: InvenTree/status_codes.py:132
msgid "Shipped against Sales Order"
msgstr ""
-#: InvenTree/status_codes.py:345
+#: InvenTree/status_codes.py:135
msgid "Received against Purchase Order"
msgstr ""
-#: InvenTree/status_codes.py:347
+#: InvenTree/status_codes.py:138
msgid "Returned against Return Order"
msgstr ""
-#: InvenTree/status_codes.py:361
+#: InvenTree/status_codes.py:141 templates/js/translated/table_filters.js:321
+msgid "Sent to customer"
+msgstr ""
+
+#: InvenTree/status_codes.py:142
+msgid "Returned from customer"
+msgstr ""
+
+#: InvenTree/status_codes.py:149
msgid "Production"
msgstr ""
-#: InvenTree/status_codes.py:433
+#: InvenTree/status_codes.py:191
msgid "Return"
msgstr ""
-#: InvenTree/status_codes.py:434
+#: InvenTree/status_codes.py:194
msgid "Repair"
msgstr ""
-#: InvenTree/status_codes.py:435
-msgid "Refund"
-msgstr ""
-
-#: InvenTree/status_codes.py:436
+#: InvenTree/status_codes.py:197
msgid "Replace"
msgstr ""
-#: InvenTree/status_codes.py:437
+#: InvenTree/status_codes.py:200
+msgid "Refund"
+msgstr ""
+
+#: InvenTree/status_codes.py:203
msgid "Reject"
msgstr ""
@@ -855,7 +858,7 @@ msgstr ""
msgid "About InvenTree"
msgstr ""
-#: build/api.py:221
+#: build/api.py:222
msgid "Build must be cancelled before it can be deleted"
msgstr ""
@@ -887,9 +890,9 @@ msgstr ""
msgid "Build Order Reference"
msgstr ""
-#: build/models.py:156 order/models.py:356 order/models.py:762
-#: order/models.py:1084 order/models.py:1721 part/admin.py:278
-#: part/models.py:3797 part/templates/part/upload_bom.html:54
+#: build/models.py:156 order/models.py:359 order/models.py:765
+#: order/models.py:1087 order/models.py:1724 part/admin.py:278
+#: part/models.py:3798 part/templates/part/upload_bom.html:54
#: report/templates/report/inventree_bill_of_materials_report.html:139
#: report/templates/report/inventree_po_report_base.html:28
#: report/templates/report/inventree_return_order_report_base.html:26
@@ -918,11 +921,11 @@ msgstr ""
#: build/models.py:181 build/templates/build/build_base.html:98
#: build/templates/build/detail.html:29 company/models.py:775
-#: order/models.py:1192 order/models.py:1308 order/models.py:1309
-#: part/models.py:390 part/models.py:2864 part/models.py:2978
-#: part/models.py:3118 part/models.py:3137 part/models.py:3156
-#: part/models.py:3177 part/models.py:3269 part/models.py:3554
-#: part/models.py:3662 part/models.py:3762 part/models.py:4076
+#: order/models.py:1195 order/models.py:1311 order/models.py:1312
+#: part/models.py:391 part/models.py:2865 part/models.py:2979
+#: part/models.py:3119 part/models.py:3138 part/models.py:3157
+#: part/models.py:3178 part/models.py:3270 part/models.py:3555
+#: part/models.py:3663 part/models.py:3763 part/models.py:4077
#: part/serializers.py:842 part/serializers.py:1245
#: part/templates/part/part_app_base.html:8
#: part/templates/part/part_pricing.html:12
@@ -1020,7 +1023,7 @@ msgstr ""
msgid "Build status code"
msgstr ""
-#: build/models.py:246 build/serializers.py:269 order/serializers.py:505
+#: build/models.py:246 build/serializers.py:269 order/serializers.py:506
#: stock/models.py:739 templates/js/translated/purchase_order.js:1099
msgid "Batch Code"
msgstr ""
@@ -1029,7 +1032,7 @@ msgstr ""
msgid "Batch code for this build output"
msgstr ""
-#: build/models.py:253 order/models.py:241 part/models.py:1037
+#: build/models.py:253 order/models.py:244 part/models.py:1038
#: part/templates/part/part_base.html:312
#: templates/js/translated/return_order.js:327
#: templates/js/translated/sales_order.js:815
@@ -1044,7 +1047,7 @@ msgstr ""
msgid "Target date for build completion. Build will be overdue after this date."
msgstr ""
-#: build/models.py:261 order/models.py:406 order/models.py:1764
+#: build/models.py:261 order/models.py:409 order/models.py:1767
#: templates/js/translated/build.js:2953
msgid "Completion Date"
msgstr ""
@@ -1062,10 +1065,10 @@ msgid "User who issued this build order"
msgstr ""
#: build/models.py:284 build/templates/build/build_base.html:204
-#: build/templates/build/detail.html:122 order/models.py:255
+#: build/templates/build/detail.html:122 order/models.py:258
#: order/templates/order/order_base.html:214
#: order/templates/order/return_order_base.html:182
-#: order/templates/order/sales_order_base.html:222 part/models.py:1041
+#: order/templates/order/sales_order_base.html:222 part/models.py:1042
#: part/templates/part/part_base.html:392
#: report/templates/report/inventree_build_order_base.html:158
#: templates/js/translated/build.js:2925
@@ -1120,9 +1123,9 @@ msgid "Build output does not match Build Order"
msgstr ""
#: build/models.py:815 build/serializers.py:212 build/serializers.py:251
-#: build/serializers.py:811 order/models.py:437 order/serializers.py:378
-#: order/serializers.py:500 part/serializers.py:1087 part/serializers.py:1408
-#: stock/models.py:593 stock/models.py:1386 stock/serializers.py:315
+#: build/serializers.py:811 order/models.py:440 order/serializers.py:379
+#: order/serializers.py:501 part/serializers.py:1087 part/serializers.py:1408
+#: stock/models.py:593 stock/models.py:1387 stock/serializers.py:315
msgid "Quantity must be greater than zero"
msgstr ""
@@ -1139,11 +1142,11 @@ msgstr ""
msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})"
msgstr ""
-#: build/models.py:1291 order/models.py:1598
+#: build/models.py:1291 order/models.py:1601
msgid "Stock item is over-allocated"
msgstr ""
-#: build/models.py:1297 order/models.py:1601
+#: build/models.py:1297 order/models.py:1604
msgid "Allocation quantity must be greater than zero"
msgstr ""
@@ -1165,8 +1168,8 @@ msgstr ""
msgid "Build to allocate parts"
msgstr ""
-#: build/models.py:1455 build/serializers.py:791 order/serializers.py:1058
-#: order/serializers.py:1079 stock/serializers.py:413 stock/serializers.py:770
+#: build/models.py:1455 build/serializers.py:791 order/serializers.py:1059
+#: order/serializers.py:1080 stock/serializers.py:413 stock/serializers.py:770
#: stock/serializers.py:896 stock/templates/stock/item_base.html:10
#: stock/templates/stock/item_base.html:23
#: stock/templates/stock/item_base.html:195
@@ -1189,10 +1192,10 @@ msgstr ""
#: build/models.py:1468 build/serializers.py:198 build/serializers.py:236
#: build/templates/build/build_base.html:103
-#: build/templates/build/detail.html:34 common/models.py:2176
-#: order/models.py:1070 order/models.py:1642 order/serializers.py:1232
+#: build/templates/build/detail.html:34 common/models.py:2169
+#: order/models.py:1073 order/models.py:1645 order/serializers.py:1233
#: order/templates/order/order_wizard/match_parts.html:30 part/admin.py:277
-#: part/forms.py:47 part/models.py:2991 part/models.py:3778
+#: part/forms.py:47 part/models.py:2992 part/models.py:3779
#: part/templates/part/part_pricing.html:16
#: part/templates/part/upload_bom.html:53
#: report/templates/report/inventree_bill_of_materials_report.html:138
@@ -1279,7 +1282,7 @@ msgstr ""
msgid "Integer quantity required, as the bill of materials contains trackable parts"
msgstr ""
-#: build/serializers.py:276 order/serializers.py:513 order/serializers.py:1236
+#: build/serializers.py:276 order/serializers.py:514 order/serializers.py:1237
#: stock/serializers.py:324 templates/js/translated/purchase_order.js:1123
#: templates/js/translated/stock.js:334 templates/js/translated/stock.js:532
msgid "Serial Numbers"
@@ -1297,7 +1300,7 @@ msgstr ""
msgid "Automatically allocate required items with matching serial numbers"
msgstr ""
-#: build/serializers.py:326 stock/api.py:669
+#: build/serializers.py:326 stock/api.py:670
msgid "The following serial numbers already exist or are invalid"
msgstr ""
@@ -1305,8 +1308,8 @@ msgstr ""
msgid "A list of build outputs must be provided"
msgstr ""
-#: build/serializers.py:415 build/serializers.py:488 order/serializers.py:486
-#: order/serializers.py:605 order/serializers.py:1587 part/serializers.py:854
+#: build/serializers.py:415 build/serializers.py:488 order/serializers.py:487
+#: order/serializers.py:606 order/serializers.py:1588 part/serializers.py:854
#: stock/serializers.py:335 stock/serializers.py:470 stock/serializers.py:551
#: stock/serializers.py:931 stock/serializers.py:1173
#: stock/templates/stock/item_base.html:390
@@ -1346,8 +1349,8 @@ msgid "Location for completed build outputs"
msgstr ""
#: build/serializers.py:495 build/templates/build/build_base.html:151
-#: build/templates/build/detail.html:62 order/models.py:788
-#: order/models.py:1747 order/serializers.py:523 stock/admin.py:106
+#: build/templates/build/detail.html:62 order/models.py:791
+#: order/models.py:1750 order/serializers.py:524 stock/admin.py:106
#: stock/templates/stock/item_base.html:423
#: templates/js/translated/barcode.js:252 templates/js/translated/build.js:2897
#: templates/js/translated/purchase_order.js:1278
@@ -1419,7 +1422,7 @@ msgstr ""
msgid "Required stock has not been fully allocated"
msgstr ""
-#: build/serializers.py:664 order/serializers.py:260 order/serializers.py:1126
+#: build/serializers.py:664 order/serializers.py:261 order/serializers.py:1127
msgid "Accept Incomplete"
msgstr ""
@@ -1435,8 +1438,8 @@ msgstr ""
msgid "Build order has incomplete outputs"
msgstr ""
-#: build/serializers.py:714 build/serializers.py:768 part/models.py:3685
-#: part/models.py:4068
+#: build/serializers.py:714 build/serializers.py:768 part/models.py:3686
+#: part/models.py:4069
msgid "BOM Item"
msgstr ""
@@ -1456,7 +1459,7 @@ msgstr ""
msgid "Item must be in stock"
msgstr ""
-#: build/serializers.py:846 order/serializers.py:1116
+#: build/serializers.py:846 order/serializers.py:1117
#, python-brace-format
msgid "Available quantity ({q}) exceeded"
msgstr ""
@@ -1473,7 +1476,7 @@ msgstr ""
msgid "This stock item has already been allocated to this build output"
msgstr ""
-#: build/serializers.py:887 order/serializers.py:1400
+#: build/serializers.py:887 order/serializers.py:1401
msgid "Allocation items must be provided"
msgstr ""
@@ -1637,8 +1640,8 @@ msgid "Stock has not been fully allocated to this Build Order"
msgstr ""
#: build/templates/build/build_base.html:160
-#: build/templates/build/detail.html:138 order/models.py:237
-#: order/models.py:1096 order/templates/order/order_base.html:190
+#: build/templates/build/detail.html:138 order/models.py:240
+#: order/models.py:1099 order/templates/order/order_base.html:190
#: order/templates/order/return_order_base.html:165
#: order/templates/order/sales_order_base.html:193
#: report/templates/report/inventree_build_order_base.html:125
@@ -1677,8 +1680,8 @@ msgid "Completed"
msgstr ""
#: build/templates/build/build_base.html:190
-#: build/templates/build/detail.html:101 order/api.py:1451 order/models.py:1301
-#: order/models.py:1400 order/models.py:1548
+#: build/templates/build/detail.html:101 order/api.py:1454 order/models.py:1304
+#: order/models.py:1403 order/models.py:1551
#: order/templates/order/sales_order_base.html:9
#: order/templates/order/sales_order_base.html:28
#: report/templates/report/inventree_build_order_base.html:135
@@ -1727,7 +1730,7 @@ msgstr ""
msgid "Stock can be taken from any available location."
msgstr ""
-#: build/templates/build/detail.html:49 order/models.py:1219
+#: build/templates/build/detail.html:49 order/models.py:1222
#: templates/js/translated/purchase_order.js:2157
msgid "Destination"
msgstr ""
@@ -1966,7 +1969,7 @@ msgstr ""
msgid "Timestamp of last update"
msgstr ""
-#: common/models.py:104 order/admin.py:17 order/models.py:231
+#: common/models.py:104 order/admin.py:17 order/models.py:234
#: templates/InvenTree/settings/settings_staff_js.html:70
#: templates/js/translated/purchase_order.js:1670
#: templates/js/translated/return_order.js:306
@@ -2127,7 +2130,7 @@ msgstr ""
#: common/models.py:1028 common/models.py:1046 common/models.py:1053
#: common/models.py:1064 common/models.py:1075 common/models.py:1299
-#: common/models.py:1323 common/models.py:1446 common/models.py:1695
+#: common/models.py:1323 common/models.py:1446 common/models.py:1688
msgid "days"
msgstr ""
@@ -2259,7 +2262,7 @@ msgstr ""
msgid "Copy category parameter templates when creating a part"
msgstr ""
-#: common/models.py:1162 part/admin.py:55 part/models.py:3559
+#: common/models.py:1162 part/admin.py:55 part/models.py:3560
#: report/models.py:166 templates/js/translated/table_filters.js:109
#: templates/js/translated/table_filters.js:680
msgid "Template"
@@ -2269,7 +2272,7 @@ msgstr ""
msgid "Parts are templates by default"
msgstr ""
-#: common/models.py:1169 part/admin.py:51 part/admin.py:283 part/models.py:995
+#: common/models.py:1169 part/admin.py:51 part/admin.py:283 part/models.py:996
#: templates/js/translated/bom.js:1598
#: templates/js/translated/table_filters.js:276
#: templates/js/translated/table_filters.js:634
@@ -2280,7 +2283,7 @@ msgstr ""
msgid "Parts can be assembled from other components by default"
msgstr ""
-#: common/models.py:1176 part/admin.py:52 part/models.py:1001
+#: common/models.py:1176 part/admin.py:52 part/models.py:1002
#: templates/js/translated/table_filters.js:642
msgid "Component"
msgstr ""
@@ -2289,7 +2292,7 @@ msgstr ""
msgid "Parts can be used as sub-components by default"
msgstr ""
-#: common/models.py:1183 part/admin.py:53 part/models.py:1012
+#: common/models.py:1183 part/admin.py:53 part/models.py:1013
msgid "Purchaseable"
msgstr ""
@@ -2297,7 +2300,7 @@ msgstr ""
msgid "Parts are purchaseable by default"
msgstr ""
-#: common/models.py:1190 part/admin.py:54 part/models.py:1017
+#: common/models.py:1190 part/admin.py:54 part/models.py:1018
#: templates/js/translated/table_filters.js:668
msgid "Salable"
msgstr ""
@@ -2306,7 +2309,7 @@ msgstr ""
msgid "Parts are salable by default"
msgstr ""
-#: common/models.py:1197 part/admin.py:56 part/models.py:1007
+#: common/models.py:1197 part/admin.py:56 part/models.py:1008
#: templates/js/translated/table_filters.js:117
#: templates/js/translated/table_filters.js:193
#: templates/js/translated/table_filters.js:684
@@ -2317,7 +2320,7 @@ msgstr ""
msgid "Parts are trackable by default"
msgstr ""
-#: common/models.py:1204 part/admin.py:57 part/models.py:1027
+#: common/models.py:1204 part/admin.py:57 part/models.py:1028
#: part/templates/part/part_base.html:156
#: templates/js/translated/table_filters.js:113
#: templates/js/translated/table_filters.js:688
@@ -2768,547 +2771,539 @@ msgstr ""
msgid "Check that all plugins are installed on startup - enable in container environments"
msgstr ""
-#: common/models.py:1620
-msgid "Check plugin signatures"
-msgstr ""
-
#: common/models.py:1621
-msgid "Check and show signatures for plugins"
-msgstr ""
-
-#: common/models.py:1628
msgid "Enable URL integration"
msgstr ""
-#: common/models.py:1629
+#: common/models.py:1622
msgid "Enable plugins to add URL routes"
msgstr ""
-#: common/models.py:1636
+#: common/models.py:1629
msgid "Enable navigation integration"
msgstr ""
-#: common/models.py:1637
+#: common/models.py:1630
msgid "Enable plugins to integrate into navigation"
msgstr ""
-#: common/models.py:1644
+#: common/models.py:1637
msgid "Enable app integration"
msgstr ""
-#: common/models.py:1645
+#: common/models.py:1638
msgid "Enable plugins to add apps"
msgstr ""
-#: common/models.py:1652
+#: common/models.py:1645
msgid "Enable schedule integration"
msgstr ""
-#: common/models.py:1653
+#: common/models.py:1646
msgid "Enable plugins to run scheduled tasks"
msgstr ""
-#: common/models.py:1660
+#: common/models.py:1653
msgid "Enable event integration"
msgstr ""
-#: common/models.py:1661
+#: common/models.py:1654
msgid "Enable plugins to respond to internal events"
msgstr ""
-#: common/models.py:1668
+#: common/models.py:1661
msgid "Enable project codes"
msgstr ""
-#: common/models.py:1669
+#: common/models.py:1662
msgid "Enable project codes for tracking projects"
msgstr ""
-#: common/models.py:1675
+#: common/models.py:1668
msgid "Stocktake Functionality"
msgstr ""
-#: common/models.py:1676
+#: common/models.py:1669
msgid "Enable stocktake functionality for recording stock levels and calculating stock value"
msgstr ""
-#: common/models.py:1682
+#: common/models.py:1675
msgid "Automatic Stocktake Period"
msgstr ""
-#: common/models.py:1683
+#: common/models.py:1676
msgid "Number of days between automatic stocktake recording (set to zero to disable)"
msgstr ""
-#: common/models.py:1692
+#: common/models.py:1685
msgid "Report Deletion Interval"
msgstr ""
-#: common/models.py:1693
+#: common/models.py:1686
msgid "Stocktake reports will be deleted after specified number of days"
msgstr ""
-#: common/models.py:1710 common/models.py:2147
+#: common/models.py:1703 common/models.py:2140
msgid "Settings key (must be unique - case insensitive"
msgstr ""
-#: common/models.py:1729
+#: common/models.py:1722
msgid "No Printer (Export to PDF)"
msgstr ""
-#: common/models.py:1751
+#: common/models.py:1744
msgid "Hide inactive parts"
msgstr ""
-#: common/models.py:1752
+#: common/models.py:1745
msgid "Hide inactive parts in results displayed on the homepage"
msgstr ""
-#: common/models.py:1758
+#: common/models.py:1751
msgid "Show subscribed parts"
msgstr ""
-#: common/models.py:1759
+#: common/models.py:1752
msgid "Show subscribed parts on the homepage"
msgstr ""
-#: common/models.py:1765
+#: common/models.py:1758
msgid "Show subscribed categories"
msgstr ""
-#: common/models.py:1766
+#: common/models.py:1759
msgid "Show subscribed part categories on the homepage"
msgstr ""
-#: common/models.py:1772
+#: common/models.py:1765
msgid "Show latest parts"
msgstr ""
-#: common/models.py:1773
+#: common/models.py:1766
msgid "Show latest parts on the homepage"
msgstr ""
-#: common/models.py:1779
+#: common/models.py:1772
msgid "Recent Part Count"
msgstr ""
-#: common/models.py:1780
+#: common/models.py:1773
msgid "Number of recent parts to display on index page"
msgstr ""
-#: common/models.py:1786
+#: common/models.py:1779
msgid "Show unvalidated BOMs"
msgstr ""
-#: common/models.py:1787
+#: common/models.py:1780
msgid "Show BOMs that await validation on the homepage"
msgstr ""
-#: common/models.py:1793
+#: common/models.py:1786
msgid "Show recent stock changes"
msgstr ""
-#: common/models.py:1794
+#: common/models.py:1787
msgid "Show recently changed stock items on the homepage"
msgstr ""
-#: common/models.py:1800
+#: common/models.py:1793
msgid "Recent Stock Count"
msgstr ""
-#: common/models.py:1801
+#: common/models.py:1794
msgid "Number of recent stock items to display on index page"
msgstr ""
-#: common/models.py:1807
+#: common/models.py:1800
msgid "Show low stock"
msgstr ""
-#: common/models.py:1808
+#: common/models.py:1801
msgid "Show low stock items on the homepage"
msgstr ""
-#: common/models.py:1814
+#: common/models.py:1807
msgid "Show depleted stock"
msgstr ""
-#: common/models.py:1815
+#: common/models.py:1808
msgid "Show depleted stock items on the homepage"
msgstr ""
-#: common/models.py:1821
+#: common/models.py:1814
msgid "Show needed stock"
msgstr ""
-#: common/models.py:1822
+#: common/models.py:1815
msgid "Show stock items needed for builds on the homepage"
msgstr ""
-#: common/models.py:1828
+#: common/models.py:1821
msgid "Show expired stock"
msgstr ""
-#: common/models.py:1829
+#: common/models.py:1822
msgid "Show expired stock items on the homepage"
msgstr ""
-#: common/models.py:1835
+#: common/models.py:1828
msgid "Show stale stock"
msgstr ""
-#: common/models.py:1836
+#: common/models.py:1829
msgid "Show stale stock items on the homepage"
msgstr ""
-#: common/models.py:1842
+#: common/models.py:1835
msgid "Show pending builds"
msgstr ""
-#: common/models.py:1843
+#: common/models.py:1836
msgid "Show pending builds on the homepage"
msgstr ""
-#: common/models.py:1849
+#: common/models.py:1842
msgid "Show overdue builds"
msgstr ""
-#: common/models.py:1850
+#: common/models.py:1843
msgid "Show overdue builds on the homepage"
msgstr ""
-#: common/models.py:1856
+#: common/models.py:1849
msgid "Show outstanding POs"
msgstr ""
-#: common/models.py:1857
+#: common/models.py:1850
msgid "Show outstanding POs on the homepage"
msgstr ""
-#: common/models.py:1863
+#: common/models.py:1856
msgid "Show overdue POs"
msgstr ""
-#: common/models.py:1864
+#: common/models.py:1857
msgid "Show overdue POs on the homepage"
msgstr ""
-#: common/models.py:1870
+#: common/models.py:1863
msgid "Show outstanding SOs"
msgstr ""
-#: common/models.py:1871
+#: common/models.py:1864
msgid "Show outstanding SOs on the homepage"
msgstr ""
-#: common/models.py:1877
+#: common/models.py:1870
msgid "Show overdue SOs"
msgstr ""
-#: common/models.py:1878
+#: common/models.py:1871
msgid "Show overdue SOs on the homepage"
msgstr ""
-#: common/models.py:1884
+#: common/models.py:1877
msgid "Show pending SO shipments"
msgstr ""
-#: common/models.py:1885
+#: common/models.py:1878
msgid "Show pending SO shipments on the homepage"
msgstr ""
-#: common/models.py:1891
+#: common/models.py:1884
msgid "Show News"
msgstr ""
-#: common/models.py:1892
+#: common/models.py:1885
msgid "Show news on the homepage"
msgstr ""
-#: common/models.py:1898
+#: common/models.py:1891
msgid "Inline label display"
msgstr ""
-#: common/models.py:1899
+#: common/models.py:1892
msgid "Display PDF labels in the browser, instead of downloading as a file"
msgstr ""
-#: common/models.py:1905
+#: common/models.py:1898
msgid "Default label printer"
msgstr ""
-#: common/models.py:1906
+#: common/models.py:1899
msgid "Configure which label printer should be selected by default"
msgstr ""
-#: common/models.py:1912
+#: common/models.py:1905
msgid "Inline report display"
msgstr ""
-#: common/models.py:1913
+#: common/models.py:1906
msgid "Display PDF reports in the browser, instead of downloading as a file"
msgstr ""
-#: common/models.py:1919
+#: common/models.py:1912
msgid "Search Parts"
msgstr ""
-#: common/models.py:1920
+#: common/models.py:1913
msgid "Display parts in search preview window"
msgstr ""
-#: common/models.py:1926
+#: common/models.py:1919
msgid "Search Supplier Parts"
msgstr ""
-#: common/models.py:1927
+#: common/models.py:1920
msgid "Display supplier parts in search preview window"
msgstr ""
-#: common/models.py:1933
+#: common/models.py:1926
msgid "Search Manufacturer Parts"
msgstr ""
-#: common/models.py:1934
+#: common/models.py:1927
msgid "Display manufacturer parts in search preview window"
msgstr ""
-#: common/models.py:1940
+#: common/models.py:1933
msgid "Hide Inactive Parts"
msgstr ""
-#: common/models.py:1941
+#: common/models.py:1934
msgid "Excluded inactive parts from search preview window"
msgstr ""
-#: common/models.py:1947
+#: common/models.py:1940
msgid "Search Categories"
msgstr ""
-#: common/models.py:1948
+#: common/models.py:1941
msgid "Display part categories in search preview window"
msgstr ""
-#: common/models.py:1954
+#: common/models.py:1947
msgid "Search Stock"
msgstr ""
-#: common/models.py:1955
+#: common/models.py:1948
msgid "Display stock items in search preview window"
msgstr ""
-#: common/models.py:1961
+#: common/models.py:1954
msgid "Hide Unavailable Stock Items"
msgstr ""
-#: common/models.py:1962
+#: common/models.py:1955
msgid "Exclude stock items which are not available from the search preview window"
msgstr ""
-#: common/models.py:1968
+#: common/models.py:1961
msgid "Search Locations"
msgstr ""
-#: common/models.py:1969
+#: common/models.py:1962
msgid "Display stock locations in search preview window"
msgstr ""
-#: common/models.py:1975
+#: common/models.py:1968
msgid "Search Companies"
msgstr ""
-#: common/models.py:1976
+#: common/models.py:1969
msgid "Display companies in search preview window"
msgstr ""
-#: common/models.py:1982
+#: common/models.py:1975
msgid "Search Build Orders"
msgstr ""
-#: common/models.py:1983
+#: common/models.py:1976
msgid "Display build orders in search preview window"
msgstr ""
-#: common/models.py:1989
+#: common/models.py:1982
msgid "Search Purchase Orders"
msgstr ""
-#: common/models.py:1990
+#: common/models.py:1983
msgid "Display purchase orders in search preview window"
msgstr ""
-#: common/models.py:1996
+#: common/models.py:1989
msgid "Exclude Inactive Purchase Orders"
msgstr ""
-#: common/models.py:1997
+#: common/models.py:1990
msgid "Exclude inactive purchase orders from search preview window"
msgstr ""
-#: common/models.py:2003
+#: common/models.py:1996
msgid "Search Sales Orders"
msgstr ""
-#: common/models.py:2004
+#: common/models.py:1997
msgid "Display sales orders in search preview window"
msgstr ""
-#: common/models.py:2010
+#: common/models.py:2003
msgid "Exclude Inactive Sales Orders"
msgstr ""
-#: common/models.py:2011
+#: common/models.py:2004
msgid "Exclude inactive sales orders from search preview window"
msgstr ""
-#: common/models.py:2017
+#: common/models.py:2010
msgid "Search Return Orders"
msgstr ""
-#: common/models.py:2018
+#: common/models.py:2011
msgid "Display return orders in search preview window"
msgstr ""
-#: common/models.py:2024
+#: common/models.py:2017
msgid "Exclude Inactive Return Orders"
msgstr ""
-#: common/models.py:2025
+#: common/models.py:2018
msgid "Exclude inactive return orders from search preview window"
msgstr ""
-#: common/models.py:2031
+#: common/models.py:2024
msgid "Search Preview Results"
msgstr ""
-#: common/models.py:2032
+#: common/models.py:2025
msgid "Number of results to show in each section of the search preview window"
msgstr ""
-#: common/models.py:2038
+#: common/models.py:2031
msgid "Regex Search"
msgstr ""
-#: common/models.py:2039
+#: common/models.py:2032
msgid "Enable regular expressions in search queries"
msgstr ""
-#: common/models.py:2045
+#: common/models.py:2038
msgid "Whole Word Search"
msgstr ""
-#: common/models.py:2046
+#: common/models.py:2039
msgid "Search queries return results for whole word matches"
msgstr ""
-#: common/models.py:2052
+#: common/models.py:2045
msgid "Show Quantity in Forms"
msgstr ""
-#: common/models.py:2053
+#: common/models.py:2046
msgid "Display available part quantity in some forms"
msgstr ""
-#: common/models.py:2059
+#: common/models.py:2052
msgid "Escape Key Closes Forms"
msgstr ""
-#: common/models.py:2060
+#: common/models.py:2053
msgid "Use the escape key to close modal forms"
msgstr ""
-#: common/models.py:2066
+#: common/models.py:2059
msgid "Fixed Navbar"
msgstr ""
-#: common/models.py:2067
+#: common/models.py:2060
msgid "The navbar position is fixed to the top of the screen"
msgstr ""
-#: common/models.py:2073
+#: common/models.py:2066
msgid "Date Format"
msgstr ""
-#: common/models.py:2074
+#: common/models.py:2067
msgid "Preferred format for displaying dates"
msgstr ""
-#: common/models.py:2088 part/templates/part/detail.html:41
+#: common/models.py:2081 part/templates/part/detail.html:41
msgid "Part Scheduling"
msgstr ""
-#: common/models.py:2089
+#: common/models.py:2082
msgid "Display part scheduling information"
msgstr ""
-#: common/models.py:2095 part/templates/part/detail.html:62
+#: common/models.py:2088 part/templates/part/detail.html:62
msgid "Part Stocktake"
msgstr ""
-#: common/models.py:2096
+#: common/models.py:2089
msgid "Display part stocktake information (if stocktake functionality is enabled)"
msgstr ""
-#: common/models.py:2102
+#: common/models.py:2095
msgid "Table String Length"
msgstr ""
-#: common/models.py:2103
+#: common/models.py:2096
msgid "Maximimum length limit for strings displayed in table views"
msgstr ""
-#: common/models.py:2112
+#: common/models.py:2105
msgid "Default part label template"
msgstr ""
-#: common/models.py:2113
+#: common/models.py:2106
msgid "The part label template to be automatically selected"
msgstr ""
-#: common/models.py:2121
+#: common/models.py:2114
msgid "Default stock item template"
msgstr ""
-#: common/models.py:2122
+#: common/models.py:2115
msgid "The stock item label template to be automatically selected"
msgstr ""
-#: common/models.py:2130
+#: common/models.py:2123
msgid "Default stock location label template"
msgstr ""
-#: common/models.py:2131
+#: common/models.py:2124
msgid "The stock location label template to be automatically selected"
msgstr ""
-#: common/models.py:2177
+#: common/models.py:2170
msgid "Price break quantity"
msgstr ""
-#: common/models.py:2184 company/serializers.py:434 order/admin.py:43
-#: order/models.py:1129 order/models.py:1936
+#: common/models.py:2177 company/serializers.py:434 order/admin.py:43
+#: order/models.py:1132 order/models.py:1939
#: templates/js/translated/company.js:1433 templates/js/translated/part.js:1856
#: templates/js/translated/pricing.js:621
#: templates/js/translated/return_order.js:725
msgid "Price"
msgstr ""
-#: common/models.py:2185
+#: common/models.py:2178
msgid "Unit price at specified quantity"
msgstr ""
-#: common/models.py:2345 common/models.py:2523
+#: common/models.py:2338 common/models.py:2516
msgid "Endpoint"
msgstr ""
-#: common/models.py:2346
+#: common/models.py:2339
msgid "Endpoint at which this webhook is received"
msgstr ""
-#: common/models.py:2355
+#: common/models.py:2348
msgid "Name for this webhook"
msgstr ""
-#: common/models.py:2360 part/admin.py:50 part/models.py:1022
+#: common/models.py:2353 part/admin.py:50 part/models.py:1023
#: plugin/models.py:47 templates/js/translated/table_filters.js:105
#: templates/js/translated/table_filters.js:189
#: templates/js/translated/table_filters.js:434
@@ -3317,100 +3312,100 @@ msgstr ""
msgid "Active"
msgstr ""
-#: common/models.py:2361
+#: common/models.py:2354
msgid "Is this webhook active"
msgstr ""
-#: common/models.py:2375
+#: common/models.py:2368
msgid "Token"
msgstr ""
-#: common/models.py:2376
+#: common/models.py:2369
msgid "Token for access"
msgstr ""
-#: common/models.py:2383
+#: common/models.py:2376
msgid "Secret"
msgstr ""
-#: common/models.py:2384
+#: common/models.py:2377
msgid "Shared secret for HMAC"
msgstr ""
-#: common/models.py:2490
+#: common/models.py:2483
msgid "Message ID"
msgstr ""
-#: common/models.py:2491
+#: common/models.py:2484
msgid "Unique identifier for this message"
msgstr ""
-#: common/models.py:2499
+#: common/models.py:2492
msgid "Host"
msgstr ""
-#: common/models.py:2500
+#: common/models.py:2493
msgid "Host from which this message was received"
msgstr ""
-#: common/models.py:2507
+#: common/models.py:2500
msgid "Header"
msgstr ""
-#: common/models.py:2508
+#: common/models.py:2501
msgid "Header of this message"
msgstr ""
-#: common/models.py:2514
+#: common/models.py:2507
msgid "Body"
msgstr ""
-#: common/models.py:2515
+#: common/models.py:2508
msgid "Body of this message"
msgstr ""
-#: common/models.py:2524
+#: common/models.py:2517
msgid "Endpoint on which this message was received"
msgstr ""
-#: common/models.py:2529
+#: common/models.py:2522
msgid "Worked on"
msgstr ""
-#: common/models.py:2530
+#: common/models.py:2523
msgid "Was the work on this message finished?"
msgstr ""
-#: common/models.py:2684
+#: common/models.py:2677
msgid "Id"
msgstr ""
-#: common/models.py:2690 templates/js/translated/news.js:44
+#: common/models.py:2683 templates/js/translated/news.js:44
msgid "Title"
msgstr ""
-#: common/models.py:2700 templates/js/translated/news.js:60
+#: common/models.py:2693 templates/js/translated/news.js:60
msgid "Published"
msgstr ""
-#: common/models.py:2705 templates/InvenTree/settings/plugin_settings.html:32
+#: common/models.py:2698 templates/InvenTree/settings/plugin_settings.html:32
#: templates/js/translated/news.js:56 templates/js/translated/plugin.js:106
msgid "Author"
msgstr ""
-#: common/models.py:2710 templates/js/translated/news.js:52
+#: common/models.py:2703 templates/js/translated/news.js:52
msgid "Summary"
msgstr ""
-#: common/models.py:2715
+#: common/models.py:2708
msgid "Read"
msgstr ""
-#: common/models.py:2716
+#: common/models.py:2709
msgid "Was this news item read?"
msgstr ""
-#: common/models.py:2736 company/models.py:143 part/models.py:913
+#: common/models.py:2729 company/models.py:143 part/models.py:914
#: report/templates/report/inventree_bill_of_materials_report.html:126
#: report/templates/report/inventree_bill_of_materials_report.html:148
#: report/templates/report/inventree_return_order_report_base.html:35
@@ -3420,7 +3415,7 @@ msgstr ""
msgid "Image"
msgstr ""
-#: common/models.py:2737
+#: common/models.py:2730
msgid "Image file"
msgstr ""
@@ -3532,7 +3527,7 @@ msgid "Contact email address"
msgstr ""
#: company/models.py:129 company/templates/company/company_base.html:140
-#: order/models.py:263 order/templates/order/order_base.html:207
+#: order/models.py:266 order/templates/order/order_base.html:207
#: order/templates/order/return_order_base.html:175
#: order/templates/order/sales_order_base.html:215
msgid "Contact"
@@ -3642,7 +3637,7 @@ msgstr ""
#: company/models.py:397
#: report/templates/report/inventree_test_report_base.html:104
-#: stock/models.py:2254 templates/js/translated/company.js:872
+#: stock/models.py:2255 templates/js/translated/company.js:872
#: templates/js/translated/company.js:1077 templates/js/translated/part.js:1465
#: templates/js/translated/stock.js:1446
msgid "Value"
@@ -3653,7 +3648,7 @@ msgid "Parameter value"
msgstr ""
#: company/models.py:404 company/templates/company/supplier_part.html:169
-#: part/admin.py:40 part/models.py:986 part/models.py:3406
+#: part/admin.py:40 part/models.py:987 part/models.py:3407
#: part/templates/part/part_base.html:286
#: templates/js/translated/company.js:1083 templates/js/translated/part.js:1484
#: templates/js/translated/part.js:1588 templates/js/translated/part.js:2262
@@ -3677,7 +3672,7 @@ msgid "Linked manufacturer part must reference the same base part"
msgstr ""
#: company/models.py:564 company/templates/company/company_base.html:82
-#: company/templates/company/supplier_part.html:130 order/models.py:379
+#: company/templates/company/supplier_part.html:130 order/models.py:382
#: order/templates/order/order_base.html:140 part/bom.py:285 part/bom.py:313
#: part/serializers.py:343 stock/templates/stock/item_base.html:225
#: templates/email/overdue_purchase_order.html:16
@@ -3720,7 +3715,7 @@ msgid "Supplier part description"
msgstr ""
#: company/models.py:596 company/templates/company/supplier_part.html:188
-#: part/admin.py:279 part/models.py:3800 part/templates/part/upload_bom.html:59
+#: part/admin.py:279 part/models.py:3801 part/templates/part/upload_bom.html:59
#: report/templates/report/inventree_bill_of_materials_report.html:140
#: report/templates/report/inventree_po_report_base.html:32
#: report/templates/report/inventree_return_order_report_base.html:27
@@ -3729,11 +3724,11 @@ msgstr ""
msgid "Note"
msgstr ""
-#: company/models.py:600 part/models.py:1918
+#: company/models.py:600 part/models.py:1919
msgid "base cost"
msgstr ""
-#: company/models.py:600 part/models.py:1918
+#: company/models.py:600 part/models.py:1919
msgid "Minimum charge (e.g. stocking fee)"
msgstr ""
@@ -3763,7 +3758,7 @@ msgstr ""
msgid "Total quantity supplied in a single pack. Leave empty for single items."
msgstr ""
-#: company/models.py:624 part/models.py:1920
+#: company/models.py:624 part/models.py:1921
msgid "multiple"
msgstr ""
@@ -3854,8 +3849,8 @@ msgstr ""
msgid "Delete image"
msgstr ""
-#: company/templates/company/company_base.html:87 order/models.py:776
-#: order/models.py:1735 order/templates/order/return_order_base.html:132
+#: company/templates/company/company_base.html:87 order/models.py:779
+#: order/models.py:1738 order/templates/order/return_order_base.html:132
#: order/templates/order/sales_order_base.html:145 stock/models.py:720
#: stock/models.py:721 stock/serializers.py:825
#: stock/templates/stock/item_base.html:401
@@ -4088,7 +4083,7 @@ msgstr ""
#: part/templates/part/detail.html:393 part/templates/part/detail.html:423
#: templates/js/translated/forms.js:506 templates/js/translated/helpers.js:105
#: templates/js/translated/part.js:370 templates/js/translated/pricing.js:629
-#: templates/js/translated/stock.js:216 users/models.py:247
+#: templates/js/translated/stock.js:216 users/models.py:248
msgid "Delete"
msgstr ""
@@ -4346,7 +4341,7 @@ msgstr ""
msgid "QR code"
msgstr ""
-#: order/admin.py:30 order/models.py:70
+#: order/admin.py:30 order/models.py:73
#: report/templates/report/inventree_po_report_base.html:31
#: report/templates/report/inventree_so_report_base.html:31
#: templates/js/translated/order.js:327
@@ -4355,11 +4350,11 @@ msgstr ""
msgid "Total Price"
msgstr ""
-#: order/api.py:239
+#: order/api.py:242
msgid "No matching purchase order found"
msgstr ""
-#: order/api.py:1449 order/models.py:1175 order/models.py:1259
+#: order/api.py:1452 order/models.py:1178 order/models.py:1262
#: order/templates/order/order_base.html:9
#: order/templates/order/order_base.html:18
#: report/templates/report/inventree_po_report_base.html:14
@@ -4373,7 +4368,7 @@ msgstr ""
msgid "Purchase Order"
msgstr ""
-#: order/api.py:1453 order/models.py:1906 order/models.py:1952
+#: order/api.py:1456 order/models.py:1909 order/models.py:1955
#: order/templates/order/return_order_base.html:9
#: order/templates/order/return_order_base.html:28
#: report/templates/report/inventree_return_order_report_base.html:13
@@ -4382,188 +4377,188 @@ msgstr ""
msgid "Return Order"
msgstr ""
-#: order/api.py:1455 templates/js/translated/sales_order.js:1030
+#: order/api.py:1458 templates/js/translated/sales_order.js:1030
msgid "Unknown"
msgstr ""
-#: order/models.py:71
+#: order/models.py:74
msgid "Total price for this order"
msgstr ""
-#: order/models.py:76 order/serializers.py:48
+#: order/models.py:79 order/serializers.py:49
msgid "Order Currency"
msgstr ""
-#: order/models.py:78 order/serializers.py:49
+#: order/models.py:81 order/serializers.py:50
msgid "Currency for this order (leave blank to use company default)"
msgstr ""
-#: order/models.py:207
+#: order/models.py:210
msgid "Contact does not match selected company"
msgstr ""
-#: order/models.py:229
+#: order/models.py:232
msgid "Order description (optional)"
msgstr ""
-#: order/models.py:231
+#: order/models.py:234
msgid "Select project code for this order"
msgstr ""
-#: order/models.py:233 order/models.py:1091 order/models.py:1451
+#: order/models.py:236 order/models.py:1094 order/models.py:1454
msgid "Link to external page"
msgstr ""
-#: order/models.py:238
+#: order/models.py:241
msgid "Expected date for order delivery. Order will be overdue after this date."
msgstr ""
-#: order/models.py:247
+#: order/models.py:250
msgid "Created By"
msgstr ""
-#: order/models.py:254
+#: order/models.py:257
msgid "User or group responsible for this order"
msgstr ""
-#: order/models.py:264
+#: order/models.py:267
msgid "Point of contact for this order"
msgstr ""
-#: order/models.py:357 order/models.py:763
+#: order/models.py:360 order/models.py:766
msgid "Order reference"
msgstr ""
-#: order/models.py:365 order/models.py:788
+#: order/models.py:368 order/models.py:791
msgid "Purchase order status"
msgstr ""
-#: order/models.py:380
+#: order/models.py:383
msgid "Company from which the items are being ordered"
msgstr ""
-#: order/models.py:388 order/templates/order/order_base.html:152
+#: order/models.py:391 order/templates/order/order_base.html:152
#: templates/js/translated/purchase_order.js:1662
msgid "Supplier Reference"
msgstr ""
-#: order/models.py:388
+#: order/models.py:391
msgid "Supplier order reference code"
msgstr ""
-#: order/models.py:395
+#: order/models.py:398
msgid "received by"
msgstr ""
-#: order/models.py:400 order/models.py:1758
+#: order/models.py:403 order/models.py:1761
msgid "Issue Date"
msgstr ""
-#: order/models.py:401 order/models.py:1759
+#: order/models.py:404 order/models.py:1762
msgid "Date order was issued"
msgstr ""
-#: order/models.py:407 order/models.py:1765
+#: order/models.py:410 order/models.py:1768
msgid "Date order was completed"
msgstr ""
-#: order/models.py:442
+#: order/models.py:445
msgid "Part supplier must match PO supplier"
msgstr ""
-#: order/models.py:603
+#: order/models.py:606
msgid "Quantity must be a positive number"
msgstr ""
-#: order/models.py:777
+#: order/models.py:780
msgid "Company to which the items are being sold"
msgstr ""
-#: order/models.py:796 order/models.py:1752
+#: order/models.py:799 order/models.py:1755
msgid "Customer Reference "
msgstr ""
-#: order/models.py:796 order/models.py:1753
+#: order/models.py:799 order/models.py:1756
msgid "Customer order reference code"
msgstr ""
-#: order/models.py:798 order/models.py:1405
+#: order/models.py:801 order/models.py:1408
#: templates/js/translated/sales_order.js:831
#: templates/js/translated/sales_order.js:1012
msgid "Shipment Date"
msgstr ""
-#: order/models.py:805
+#: order/models.py:808
msgid "shipped by"
msgstr ""
-#: order/models.py:854
+#: order/models.py:857
msgid "Order cannot be completed as no parts have been assigned"
msgstr ""
-#: order/models.py:858
+#: order/models.py:861
msgid "Only an open order can be marked as complete"
msgstr ""
-#: order/models.py:861 templates/js/translated/sales_order.js:491
+#: order/models.py:864 templates/js/translated/sales_order.js:491
msgid "Order cannot be completed as there are incomplete shipments"
msgstr ""
-#: order/models.py:864
+#: order/models.py:867
msgid "Order cannot be completed as there are incomplete line items"
msgstr ""
-#: order/models.py:1071
+#: order/models.py:1074
msgid "Item quantity"
msgstr ""
-#: order/models.py:1084
+#: order/models.py:1087
msgid "Line item reference"
msgstr ""
-#: order/models.py:1086
+#: order/models.py:1089
msgid "Line item notes"
msgstr ""
-#: order/models.py:1097
+#: order/models.py:1100
msgid "Target date for this line item (leave blank to use the target date from the order)"
msgstr ""
-#: order/models.py:1115
+#: order/models.py:1118
msgid "Line item description (optional)"
msgstr ""
-#: order/models.py:1120
+#: order/models.py:1123
msgid "Context"
msgstr ""
-#: order/models.py:1121
+#: order/models.py:1124
msgid "Additional context for this line"
msgstr ""
-#: order/models.py:1130
+#: order/models.py:1133
msgid "Unit price"
msgstr ""
-#: order/models.py:1160
+#: order/models.py:1163
msgid "Supplier part must match supplier"
msgstr ""
-#: order/models.py:1168
+#: order/models.py:1171
msgid "deleted"
msgstr ""
-#: order/models.py:1174 order/models.py:1259 order/models.py:1300
-#: order/models.py:1399 order/models.py:1548 order/models.py:1905
-#: order/models.py:1952 templates/js/translated/sales_order.js:1474
+#: order/models.py:1177 order/models.py:1262 order/models.py:1303
+#: order/models.py:1402 order/models.py:1551 order/models.py:1908
+#: order/models.py:1955 templates/js/translated/sales_order.js:1474
msgid "Order"
msgstr ""
-#: order/models.py:1193
+#: order/models.py:1196
msgid "Supplier part"
msgstr ""
-#: order/models.py:1200 order/templates/order/order_base.html:200
+#: order/models.py:1203 order/templates/order/order_base.html:200
#: templates/js/translated/part.js:1841 templates/js/translated/part.js:1872
#: templates/js/translated/purchase_order.js:1276
#: templates/js/translated/purchase_order.js:2137
@@ -4573,342 +4568,342 @@ msgstr ""
msgid "Received"
msgstr ""
-#: order/models.py:1201
+#: order/models.py:1204
msgid "Number of items received"
msgstr ""
-#: order/models.py:1208 stock/models.py:823 stock/serializers.py:252
+#: order/models.py:1211 stock/models.py:823 stock/serializers.py:252
#: stock/templates/stock/item_base.html:184
#: templates/js/translated/stock.js:2047
msgid "Purchase Price"
msgstr ""
-#: order/models.py:1209
+#: order/models.py:1212
msgid "Unit purchase price"
msgstr ""
-#: order/models.py:1222
+#: order/models.py:1225
msgid "Where does the Purchaser want this item to be stored?"
msgstr ""
-#: order/models.py:1288
+#: order/models.py:1291
msgid "Virtual part cannot be assigned to a sales order"
msgstr ""
-#: order/models.py:1293
+#: order/models.py:1296
msgid "Only salable parts can be assigned to a sales order"
msgstr ""
-#: order/models.py:1319 part/templates/part/part_pricing.html:107
+#: order/models.py:1322 part/templates/part/part_pricing.html:107
#: part/templates/part/prices.html:128 templates/js/translated/pricing.js:943
msgid "Sale Price"
msgstr ""
-#: order/models.py:1320
+#: order/models.py:1323
msgid "Unit sale price"
msgstr ""
-#: order/models.py:1330
+#: order/models.py:1333
msgid "Shipped quantity"
msgstr ""
-#: order/models.py:1406
+#: order/models.py:1409
msgid "Date of shipment"
msgstr ""
-#: order/models.py:1411 templates/js/translated/sales_order.js:1024
+#: order/models.py:1414 templates/js/translated/sales_order.js:1024
msgid "Delivery Date"
msgstr ""
-#: order/models.py:1412
+#: order/models.py:1415
msgid "Date of delivery of shipment"
msgstr ""
-#: order/models.py:1419
+#: order/models.py:1422
msgid "Checked By"
msgstr ""
-#: order/models.py:1420
+#: order/models.py:1423
msgid "User who checked this shipment"
msgstr ""
-#: order/models.py:1427 order/models.py:1624 order/serializers.py:1247
-#: order/serializers.py:1375 templates/js/translated/model_renderers.js:415
+#: order/models.py:1430 order/models.py:1627 order/serializers.py:1248
+#: order/serializers.py:1376 templates/js/translated/model_renderers.js:415
msgid "Shipment"
msgstr ""
-#: order/models.py:1428
+#: order/models.py:1431
msgid "Shipment number"
msgstr ""
-#: order/models.py:1436
+#: order/models.py:1439
msgid "Tracking Number"
msgstr ""
-#: order/models.py:1437
+#: order/models.py:1440
msgid "Shipment tracking information"
msgstr ""
-#: order/models.py:1444
+#: order/models.py:1447
msgid "Invoice Number"
msgstr ""
-#: order/models.py:1445
+#: order/models.py:1448
msgid "Reference number for associated invoice"
msgstr ""
-#: order/models.py:1467
+#: order/models.py:1470
msgid "Shipment has already been sent"
msgstr ""
-#: order/models.py:1470
+#: order/models.py:1473
msgid "Shipment has no allocated stock items"
msgstr ""
-#: order/models.py:1583 order/models.py:1585
+#: order/models.py:1586 order/models.py:1588
msgid "Stock item has not been assigned"
msgstr ""
-#: order/models.py:1589
+#: order/models.py:1592
msgid "Cannot allocate stock item to a line with a different part"
msgstr ""
-#: order/models.py:1591
+#: order/models.py:1594
msgid "Cannot allocate stock to a line without a part"
msgstr ""
-#: order/models.py:1594
+#: order/models.py:1597
msgid "Allocation quantity cannot exceed stock quantity"
msgstr ""
-#: order/models.py:1604 order/serializers.py:1109
+#: order/models.py:1607 order/serializers.py:1110
msgid "Quantity must be 1 for serialized stock item"
msgstr ""
-#: order/models.py:1607
+#: order/models.py:1610
msgid "Sales order does not match shipment"
msgstr ""
-#: order/models.py:1608
+#: order/models.py:1611
msgid "Shipment does not match sales order"
msgstr ""
-#: order/models.py:1616
+#: order/models.py:1619
msgid "Line"
msgstr ""
-#: order/models.py:1625
+#: order/models.py:1628
msgid "Sales order shipment reference"
msgstr ""
-#: order/models.py:1638 order/models.py:1913
+#: order/models.py:1641 order/models.py:1916
#: templates/js/translated/return_order.js:706
msgid "Item"
msgstr ""
-#: order/models.py:1639
+#: order/models.py:1642
msgid "Select stock item to allocate"
msgstr ""
-#: order/models.py:1642
+#: order/models.py:1645
msgid "Enter stock allocation quantity"
msgstr ""
-#: order/models.py:1722
+#: order/models.py:1725
msgid "Return Order reference"
msgstr ""
-#: order/models.py:1736
+#: order/models.py:1739
msgid "Company from which items are being returned"
msgstr ""
-#: order/models.py:1747
+#: order/models.py:1750
msgid "Return order status"
msgstr ""
-#: order/models.py:1898
+#: order/models.py:1901
msgid "Only serialized items can be assigned to a Return Order"
msgstr ""
-#: order/models.py:1914
+#: order/models.py:1917
msgid "Select item to return from customer"
msgstr ""
-#: order/models.py:1919
+#: order/models.py:1922
msgid "Received Date"
msgstr ""
-#: order/models.py:1920
+#: order/models.py:1923
msgid "The date this this return item was received"
msgstr ""
-#: order/models.py:1931 templates/js/translated/return_order.js:717
+#: order/models.py:1934 templates/js/translated/return_order.js:717
#: templates/js/translated/table_filters.js:93
msgid "Outcome"
msgstr ""
-#: order/models.py:1931
+#: order/models.py:1934
msgid "Outcome for this line item"
msgstr ""
-#: order/models.py:1937
+#: order/models.py:1940
msgid "Cost associated with return or repair for this line item"
msgstr ""
-#: order/serializers.py:246
+#: order/serializers.py:247
msgid "Order cannot be cancelled"
msgstr ""
-#: order/serializers.py:261 order/serializers.py:1127
+#: order/serializers.py:262 order/serializers.py:1128
msgid "Allow order to be closed with incomplete line items"
msgstr ""
-#: order/serializers.py:272 order/serializers.py:1138
+#: order/serializers.py:273 order/serializers.py:1139
msgid "Order has incomplete line items"
msgstr ""
-#: order/serializers.py:385
+#: order/serializers.py:386
msgid "Order is not open"
msgstr ""
-#: order/serializers.py:403
+#: order/serializers.py:404
msgid "Purchase price currency"
msgstr ""
-#: order/serializers.py:421
+#: order/serializers.py:422
msgid "Supplier part must be specified"
msgstr ""
-#: order/serializers.py:426
+#: order/serializers.py:427
msgid "Purchase order must be specified"
msgstr ""
-#: order/serializers.py:432
+#: order/serializers.py:433
msgid "Supplier must match purchase order"
msgstr ""
-#: order/serializers.py:433
+#: order/serializers.py:434
msgid "Purchase order must match supplier"
msgstr ""
-#: order/serializers.py:471 order/serializers.py:1215
+#: order/serializers.py:472 order/serializers.py:1216
msgid "Line Item"
msgstr ""
-#: order/serializers.py:477
+#: order/serializers.py:478
msgid "Line item does not match purchase order"
msgstr ""
-#: order/serializers.py:487 order/serializers.py:606 order/serializers.py:1588
+#: order/serializers.py:488 order/serializers.py:607 order/serializers.py:1589
msgid "Select destination location for received items"
msgstr ""
-#: order/serializers.py:506 templates/js/translated/purchase_order.js:1100
+#: order/serializers.py:507 templates/js/translated/purchase_order.js:1100
msgid "Enter batch code for incoming stock items"
msgstr ""
-#: order/serializers.py:514 templates/js/translated/purchase_order.js:1124
+#: order/serializers.py:515 templates/js/translated/purchase_order.js:1124
msgid "Enter serial numbers for incoming stock items"
msgstr ""
-#: order/serializers.py:527 templates/js/translated/barcode.js:52
+#: order/serializers.py:528 templates/js/translated/barcode.js:52
msgid "Barcode"
msgstr ""
-#: order/serializers.py:528
+#: order/serializers.py:529
msgid "Scanned barcode"
msgstr ""
-#: order/serializers.py:544
+#: order/serializers.py:545
msgid "Barcode is already in use"
msgstr ""
-#: order/serializers.py:568
+#: order/serializers.py:569
msgid "An integer quantity must be provided for trackable parts"
msgstr ""
-#: order/serializers.py:622 order/serializers.py:1603
+#: order/serializers.py:623 order/serializers.py:1604
msgid "Line items must be provided"
msgstr ""
-#: order/serializers.py:639
+#: order/serializers.py:640
msgid "Destination location must be specified"
msgstr ""
-#: order/serializers.py:650
+#: order/serializers.py:651
msgid "Supplied barcode values must be unique"
msgstr ""
-#: order/serializers.py:949
+#: order/serializers.py:950
msgid "Sale price currency"
msgstr ""
-#: order/serializers.py:1006
+#: order/serializers.py:1007
msgid "No shipment details provided"
msgstr ""
-#: order/serializers.py:1070 order/serializers.py:1224
+#: order/serializers.py:1071 order/serializers.py:1225
msgid "Line item is not associated with this order"
msgstr ""
-#: order/serializers.py:1092
+#: order/serializers.py:1093
msgid "Quantity must be positive"
msgstr ""
-#: order/serializers.py:1237
+#: order/serializers.py:1238
msgid "Enter serial numbers to allocate"
msgstr ""
-#: order/serializers.py:1259 order/serializers.py:1383
+#: order/serializers.py:1260 order/serializers.py:1384
msgid "Shipment has already been shipped"
msgstr ""
-#: order/serializers.py:1262 order/serializers.py:1386
+#: order/serializers.py:1263 order/serializers.py:1387
msgid "Shipment is not associated with this order"
msgstr ""
-#: order/serializers.py:1316
+#: order/serializers.py:1317
msgid "No match found for the following serial numbers"
msgstr ""
-#: order/serializers.py:1326
+#: order/serializers.py:1327
msgid "The following serial numbers are already allocated"
msgstr ""
-#: order/serializers.py:1554
+#: order/serializers.py:1555
msgid "Return order line item"
msgstr ""
-#: order/serializers.py:1561
+#: order/serializers.py:1562
msgid "Line item does not match return order"
msgstr ""
-#: order/serializers.py:1564
+#: order/serializers.py:1565
msgid "Line item has already been received"
msgstr ""
-#: order/serializers.py:1596
+#: order/serializers.py:1597
msgid "Items can only be received against orders which are in progress"
msgstr ""
-#: order/serializers.py:1677
+#: order/serializers.py:1678
msgid "Line price currency"
msgstr ""
-#: order/tasks.py:26
+#: order/tasks.py:27
msgid "Overdue Purchase Order"
msgstr ""
-#: order/tasks.py:31
+#: order/tasks.py:32
#, python-brace-format
msgid "Purchase order {po} is now overdue"
msgstr ""
-#: order/tasks.py:89
+#: order/tasks.py:90
msgid "Overdue Sales Order"
msgstr ""
-#: order/tasks.py:94
+#: order/tasks.py:95
#, python-brace-format
msgid "Sales order {so} is now overdue"
msgstr ""
@@ -5309,12 +5304,12 @@ msgstr ""
msgid "Updated {part} unit-price to {price} and quantity to {qty}"
msgstr ""
-#: part/admin.py:33 part/admin.py:273 part/models.py:3666 part/tasks.py:288
+#: part/admin.py:33 part/admin.py:273 part/models.py:3667 part/tasks.py:288
#: stock/admin.py:101
msgid "Part ID"
msgstr ""
-#: part/admin.py:34 part/admin.py:275 part/models.py:3670 part/tasks.py:289
+#: part/admin.py:34 part/admin.py:275 part/models.py:3671 part/tasks.py:289
#: stock/admin.py:102
msgid "Part Name"
msgstr ""
@@ -5323,19 +5318,19 @@ msgstr ""
msgid "Part Description"
msgstr ""
-#: part/admin.py:36 part/models.py:888 part/templates/part/part_base.html:271
+#: part/admin.py:36 part/models.py:889 part/templates/part/part_base.html:271
#: templates/js/translated/part.js:1200 templates/js/translated/part.js:2233
#: templates/js/translated/stock.js:1795
msgid "IPN"
msgstr ""
-#: part/admin.py:37 part/models.py:895 part/templates/part/part_base.html:279
+#: part/admin.py:37 part/models.py:896 part/templates/part/part_base.html:279
#: report/models.py:179 templates/js/translated/part.js:1205
#: templates/js/translated/part.js:2239
msgid "Revision"
msgstr ""
-#: part/admin.py:38 part/admin.py:198 part/models.py:874
+#: part/admin.py:38 part/admin.py:198 part/models.py:875
#: part/templates/part/category.html:93 part/templates/part/part_base.html:300
msgid "Keywords"
msgstr ""
@@ -5356,11 +5351,11 @@ msgstr ""
msgid "Default Supplier ID"
msgstr ""
-#: part/admin.py:46 part/models.py:863 part/templates/part/part_base.html:179
+#: part/admin.py:46 part/models.py:864 part/templates/part/part_base.html:179
msgid "Variant Of"
msgstr ""
-#: part/admin.py:47 part/models.py:979 part/templates/part/part_base.html:205
+#: part/admin.py:47 part/models.py:980 part/templates/part/part_base.html:205
msgid "Minimum Stock"
msgstr ""
@@ -5393,11 +5388,11 @@ msgstr ""
msgid "Building"
msgstr ""
-#: part/admin.py:66 part/models.py:2929 templates/js/translated/part.js:943
+#: part/admin.py:66 part/models.py:2930 templates/js/translated/part.js:943
msgid "Minimum Cost"
msgstr ""
-#: part/admin.py:67 part/models.py:2935 templates/js/translated/part.js:953
+#: part/admin.py:67 part/models.py:2936 templates/js/translated/part.js:953
msgid "Maximum Cost"
msgstr ""
@@ -5414,7 +5409,7 @@ msgstr ""
msgid "Category Path"
msgstr ""
-#: part/admin.py:202 part/models.py:391 part/templates/part/cat_link.html:3
+#: part/admin.py:202 part/models.py:392 part/templates/part/cat_link.html:3
#: part/templates/part/category.html:23 part/templates/part/category.html:140
#: part/templates/part/category.html:160
#: part/templates/part/category_sidebar.html:9
@@ -5437,7 +5432,7 @@ msgstr ""
msgid "Parent IPN"
msgstr ""
-#: part/admin.py:274 part/models.py:3674
+#: part/admin.py:274 part/models.py:3675
msgid "Part IPN"
msgstr ""
@@ -5451,35 +5446,35 @@ msgstr ""
msgid "Maximum Price"
msgstr ""
-#: part/api.py:497
+#: part/api.py:498
msgid "Incoming Purchase Order"
msgstr ""
-#: part/api.py:517
+#: part/api.py:518
msgid "Outgoing Sales Order"
msgstr ""
-#: part/api.py:535
+#: part/api.py:536
msgid "Stock produced by Build Order"
msgstr ""
-#: part/api.py:621
+#: part/api.py:622
msgid "Stock required for Build Order"
msgstr ""
-#: part/api.py:769
+#: part/api.py:770
msgid "Valid"
msgstr ""
-#: part/api.py:770
+#: part/api.py:771
msgid "Validate entire Bill of Materials"
msgstr ""
-#: part/api.py:776
+#: part/api.py:777
msgid "This option must be selected"
msgstr ""
-#: part/bom.py:175 part/models.py:126 part/models.py:922
+#: part/bom.py:175 part/models.py:127 part/models.py:923
#: part/templates/part/category.html:115 part/templates/part/part_base.html:369
msgid "Default Location"
msgstr ""
@@ -5497,106 +5492,106 @@ msgstr ""
msgid "Input quantity for price calculation"
msgstr ""
-#: part/models.py:74 part/models.py:3615 part/templates/part/category.html:16
+#: part/models.py:75 part/models.py:3616 part/templates/part/category.html:16
#: part/templates/part/part_app_base.html:10
msgid "Part Category"
msgstr ""
-#: part/models.py:75 part/templates/part/category.html:135
+#: part/models.py:76 part/templates/part/category.html:135
#: templates/InvenTree/search.html:97 templates/js/translated/search.js:200
#: users/models.py:37
msgid "Part Categories"
msgstr ""
-#: part/models.py:127
+#: part/models.py:128
msgid "Default location for parts in this category"
msgstr ""
-#: part/models.py:132 stock/models.py:124 templates/js/translated/stock.js:2520
+#: part/models.py:133 stock/models.py:124 templates/js/translated/stock.js:2520
#: templates/js/translated/table_filters.js:209
#: templates/js/translated/table_filters.js:229
msgid "Structural"
msgstr ""
-#: part/models.py:134
+#: part/models.py:135
msgid "Parts may not be directly assigned to a structural category, but may be assigned to child categories."
msgstr ""
-#: part/models.py:138
+#: part/models.py:139
msgid "Default keywords"
msgstr ""
-#: part/models.py:138
+#: part/models.py:139
msgid "Default keywords for parts in this category"
msgstr ""
-#: part/models.py:143 stock/models.py:113
+#: part/models.py:144 stock/models.py:113
msgid "Icon"
msgstr ""
-#: part/models.py:144 stock/models.py:114
+#: part/models.py:145 stock/models.py:114
msgid "Icon (optional)"
msgstr ""
-#: part/models.py:163
+#: part/models.py:164
msgid "You cannot make this part category structural because some parts are already assigned to it!"
msgstr ""
-#: part/models.py:474
+#: part/models.py:475
msgid "Invalid choice for parent part"
msgstr ""
-#: part/models.py:516 part/models.py:528
+#: part/models.py:517 part/models.py:529
#, python-brace-format
msgid "Part '{p1}' is used in BOM for '{p2}' (recursive)"
msgstr ""
-#: part/models.py:600
+#: part/models.py:601
#, python-brace-format
msgid "IPN must match regex pattern {pat}"
msgstr ""
-#: part/models.py:671
+#: part/models.py:672
msgid "Stock item with this serial number already exists"
msgstr ""
-#: part/models.py:802
+#: part/models.py:803
msgid "Duplicate IPN not allowed in part settings"
msgstr ""
-#: part/models.py:807
+#: part/models.py:808
msgid "Part with this Name, IPN and Revision already exists."
msgstr ""
-#: part/models.py:821
+#: part/models.py:822
msgid "Parts cannot be assigned to structural part categories!"
msgstr ""
-#: part/models.py:845 part/models.py:3671
+#: part/models.py:846 part/models.py:3672
msgid "Part name"
msgstr ""
-#: part/models.py:851
+#: part/models.py:852
msgid "Is Template"
msgstr ""
-#: part/models.py:852
+#: part/models.py:853
msgid "Is this part a template part?"
msgstr ""
-#: part/models.py:862
+#: part/models.py:863
msgid "Is this part a variant of another part?"
msgstr ""
-#: part/models.py:869
+#: part/models.py:870
msgid "Part description (optional)"
msgstr ""
-#: part/models.py:875
+#: part/models.py:876
msgid "Part keywords to improve visibility in search results"
msgstr ""
-#: part/models.py:882 part/models.py:3197 part/models.py:3614
+#: part/models.py:883 part/models.py:3198 part/models.py:3615
#: part/serializers.py:848 part/templates/part/part_base.html:262
#: templates/InvenTree/settings/settings_staff_js.html:204
#: templates/js/translated/notification.js:59
@@ -5604,249 +5599,249 @@ msgstr ""
msgid "Category"
msgstr ""
-#: part/models.py:883
+#: part/models.py:884
msgid "Part category"
msgstr ""
-#: part/models.py:889
+#: part/models.py:890
msgid "Internal Part Number"
msgstr ""
-#: part/models.py:894
+#: part/models.py:895
msgid "Part revision or version number"
msgstr ""
-#: part/models.py:920
+#: part/models.py:921
msgid "Where is this item normally stored?"
msgstr ""
-#: part/models.py:965 part/templates/part/part_base.html:378
+#: part/models.py:966 part/templates/part/part_base.html:378
msgid "Default Supplier"
msgstr ""
-#: part/models.py:966
+#: part/models.py:967
msgid "Default supplier part"
msgstr ""
-#: part/models.py:973
+#: part/models.py:974
msgid "Default Expiry"
msgstr ""
-#: part/models.py:974
+#: part/models.py:975
msgid "Expiry time (in days) for stock items of this part"
msgstr ""
-#: part/models.py:980
+#: part/models.py:981
msgid "Minimum allowed stock level"
msgstr ""
-#: part/models.py:987
+#: part/models.py:988
msgid "Units of measure for this part"
msgstr ""
-#: part/models.py:996
+#: part/models.py:997
msgid "Can this part be built from other parts?"
msgstr ""
-#: part/models.py:1002
+#: part/models.py:1003
msgid "Can this part be used to build other parts?"
msgstr ""
-#: part/models.py:1008
+#: part/models.py:1009
msgid "Does this part have tracking for unique items?"
msgstr ""
-#: part/models.py:1013
+#: part/models.py:1014
msgid "Can this part be purchased from external suppliers?"
msgstr ""
-#: part/models.py:1018
+#: part/models.py:1019
msgid "Can this part be sold to customers?"
msgstr ""
-#: part/models.py:1023
+#: part/models.py:1024
msgid "Is this part active?"
msgstr ""
-#: part/models.py:1028
+#: part/models.py:1029
msgid "Is this a virtual part, such as a software product or license?"
msgstr ""
-#: part/models.py:1030
+#: part/models.py:1031
msgid "BOM checksum"
msgstr ""
-#: part/models.py:1030
+#: part/models.py:1031
msgid "Stored BOM checksum"
msgstr ""
-#: part/models.py:1033
+#: part/models.py:1034
msgid "BOM checked by"
msgstr ""
-#: part/models.py:1035
+#: part/models.py:1036
msgid "BOM checked date"
msgstr ""
-#: part/models.py:1039
+#: part/models.py:1040
msgid "Creation User"
msgstr ""
-#: part/models.py:1041
+#: part/models.py:1042
msgid "User responsible for this part"
msgstr ""
-#: part/models.py:1045 part/templates/part/part_base.html:341
+#: part/models.py:1046 part/templates/part/part_base.html:341
#: stock/templates/stock/item_base.html:447
#: templates/js/translated/part.js:2331
msgid "Last Stocktake"
msgstr ""
-#: part/models.py:1920
+#: part/models.py:1921
msgid "Sell multiple"
msgstr ""
-#: part/models.py:2852
+#: part/models.py:2853
msgid "Currency used to cache pricing calculations"
msgstr ""
-#: part/models.py:2869
+#: part/models.py:2870
msgid "Minimum BOM Cost"
msgstr ""
-#: part/models.py:2870
+#: part/models.py:2871
msgid "Minimum cost of component parts"
msgstr ""
-#: part/models.py:2875
+#: part/models.py:2876
msgid "Maximum BOM Cost"
msgstr ""
-#: part/models.py:2876
+#: part/models.py:2877
msgid "Maximum cost of component parts"
msgstr ""
-#: part/models.py:2881
+#: part/models.py:2882
msgid "Minimum Purchase Cost"
msgstr ""
-#: part/models.py:2882
+#: part/models.py:2883
msgid "Minimum historical purchase cost"
msgstr ""
-#: part/models.py:2887
+#: part/models.py:2888
msgid "Maximum Purchase Cost"
msgstr ""
-#: part/models.py:2888
+#: part/models.py:2889
msgid "Maximum historical purchase cost"
msgstr ""
-#: part/models.py:2893
+#: part/models.py:2894
msgid "Minimum Internal Price"
msgstr ""
-#: part/models.py:2894
+#: part/models.py:2895
msgid "Minimum cost based on internal price breaks"
msgstr ""
-#: part/models.py:2899
+#: part/models.py:2900
msgid "Maximum Internal Price"
msgstr ""
-#: part/models.py:2900
+#: part/models.py:2901
msgid "Maximum cost based on internal price breaks"
msgstr ""
-#: part/models.py:2905
+#: part/models.py:2906
msgid "Minimum Supplier Price"
msgstr ""
-#: part/models.py:2906
+#: part/models.py:2907
msgid "Minimum price of part from external suppliers"
msgstr ""
-#: part/models.py:2911
+#: part/models.py:2912
msgid "Maximum Supplier Price"
msgstr ""
-#: part/models.py:2912
+#: part/models.py:2913
msgid "Maximum price of part from external suppliers"
msgstr ""
-#: part/models.py:2917
+#: part/models.py:2918
msgid "Minimum Variant Cost"
msgstr ""
-#: part/models.py:2918
+#: part/models.py:2919
msgid "Calculated minimum cost of variant parts"
msgstr ""
-#: part/models.py:2923
+#: part/models.py:2924
msgid "Maximum Variant Cost"
msgstr ""
-#: part/models.py:2924
+#: part/models.py:2925
msgid "Calculated maximum cost of variant parts"
msgstr ""
-#: part/models.py:2930
+#: part/models.py:2931
msgid "Calculated overall minimum cost"
msgstr ""
-#: part/models.py:2936
+#: part/models.py:2937
msgid "Calculated overall maximum cost"
msgstr ""
-#: part/models.py:2941
+#: part/models.py:2942
msgid "Minimum Sale Price"
msgstr ""
-#: part/models.py:2942
+#: part/models.py:2943
msgid "Minimum sale price based on price breaks"
msgstr ""
-#: part/models.py:2947
+#: part/models.py:2948
msgid "Maximum Sale Price"
msgstr ""
-#: part/models.py:2948
+#: part/models.py:2949
msgid "Maximum sale price based on price breaks"
msgstr ""
-#: part/models.py:2953
+#: part/models.py:2954
msgid "Minimum Sale Cost"
msgstr ""
-#: part/models.py:2954
+#: part/models.py:2955
msgid "Minimum historical sale price"
msgstr ""
-#: part/models.py:2959
+#: part/models.py:2960
msgid "Maximum Sale Cost"
msgstr ""
-#: part/models.py:2960
+#: part/models.py:2961
msgid "Maximum historical sale price"
msgstr ""
-#: part/models.py:2979
+#: part/models.py:2980
msgid "Part for stocktake"
msgstr ""
-#: part/models.py:2984
+#: part/models.py:2985
msgid "Item Count"
msgstr ""
-#: part/models.py:2985
+#: part/models.py:2986
msgid "Number of individual stock entries at time of stocktake"
msgstr ""
-#: part/models.py:2992
+#: part/models.py:2993
msgid "Total available stock at time of stocktake"
msgstr ""
-#: part/models.py:2996 part/models.py:3079
+#: part/models.py:2997 part/models.py:3080
#: part/templates/part/part_scheduling.html:13
#: report/templates/report/inventree_test_report_base.html:106
#: templates/InvenTree/settings/plugin_settings.html:37
@@ -5858,214 +5853,214 @@ msgstr ""
msgid "Date"
msgstr ""
-#: part/models.py:2997
+#: part/models.py:2998
msgid "Date stocktake was performed"
msgstr ""
-#: part/models.py:3005
+#: part/models.py:3006
msgid "Additional notes"
msgstr ""
-#: part/models.py:3013
+#: part/models.py:3014
msgid "User who performed this stocktake"
msgstr ""
-#: part/models.py:3018
+#: part/models.py:3019
msgid "Minimum Stock Cost"
msgstr ""
-#: part/models.py:3019
+#: part/models.py:3020
msgid "Estimated minimum cost of stock on hand"
msgstr ""
-#: part/models.py:3024
+#: part/models.py:3025
msgid "Maximum Stock Cost"
msgstr ""
-#: part/models.py:3025
+#: part/models.py:3026
msgid "Estimated maximum cost of stock on hand"
msgstr ""
-#: part/models.py:3086 templates/InvenTree/settings/settings_staff_js.html:349
+#: part/models.py:3087 templates/InvenTree/settings/settings_staff_js.html:349
msgid "Report"
msgstr ""
-#: part/models.py:3087
+#: part/models.py:3088
msgid "Stocktake report file (generated internally)"
msgstr ""
-#: part/models.py:3092 templates/InvenTree/settings/settings_staff_js.html:356
+#: part/models.py:3093 templates/InvenTree/settings/settings_staff_js.html:356
msgid "Part Count"
msgstr ""
-#: part/models.py:3093
+#: part/models.py:3094
msgid "Number of parts covered by stocktake"
msgstr ""
-#: part/models.py:3101
+#: part/models.py:3102
msgid "User who requested this stocktake report"
msgstr ""
-#: part/models.py:3237
+#: part/models.py:3238
msgid "Test templates can only be created for trackable parts"
msgstr ""
-#: part/models.py:3254
+#: part/models.py:3255
msgid "Test with this name already exists for this part"
msgstr ""
-#: part/models.py:3274 templates/js/translated/part.js:2821
+#: part/models.py:3275 templates/js/translated/part.js:2821
msgid "Test Name"
msgstr ""
-#: part/models.py:3275
+#: part/models.py:3276
msgid "Enter a name for the test"
msgstr ""
-#: part/models.py:3280
+#: part/models.py:3281
msgid "Test Description"
msgstr ""
-#: part/models.py:3281
+#: part/models.py:3282
msgid "Enter description for this test"
msgstr ""
-#: part/models.py:3286 templates/js/translated/part.js:2830
+#: part/models.py:3287 templates/js/translated/part.js:2830
#: templates/js/translated/table_filters.js:423
msgid "Required"
msgstr ""
-#: part/models.py:3287
+#: part/models.py:3288
msgid "Is this test required to pass?"
msgstr ""
-#: part/models.py:3292 templates/js/translated/part.js:2838
+#: part/models.py:3293 templates/js/translated/part.js:2838
msgid "Requires Value"
msgstr ""
-#: part/models.py:3293
+#: part/models.py:3294
msgid "Does this test require a value when adding a test result?"
msgstr ""
-#: part/models.py:3298 templates/js/translated/part.js:2845
+#: part/models.py:3299 templates/js/translated/part.js:2845
msgid "Requires Attachment"
msgstr ""
-#: part/models.py:3299
+#: part/models.py:3300
msgid "Does this test require a file attachment when adding a test result?"
msgstr ""
-#: part/models.py:3345
+#: part/models.py:3346
msgid "Checkbox parameters cannot have units"
msgstr ""
-#: part/models.py:3350
+#: part/models.py:3351
msgid "Checkbox parameters cannot have choices"
msgstr ""
-#: part/models.py:3368
+#: part/models.py:3369
msgid "Choices must be unique"
msgstr ""
-#: part/models.py:3384
+#: part/models.py:3385
msgid "Parameter template name must be unique"
msgstr ""
-#: part/models.py:3400
+#: part/models.py:3401
msgid "Parameter Name"
msgstr ""
-#: part/models.py:3406
+#: part/models.py:3407
msgid "Physical units for this parameter"
msgstr ""
-#: part/models.py:3416
+#: part/models.py:3417
msgid "Parameter description"
msgstr ""
-#: part/models.py:3422 templates/js/translated/part.js:1600
+#: part/models.py:3423 templates/js/translated/part.js:1600
#: templates/js/translated/table_filters.js:734
msgid "Checkbox"
msgstr ""
-#: part/models.py:3423
+#: part/models.py:3424
msgid "Is this parameter a checkbox?"
msgstr ""
-#: part/models.py:3428 templates/js/translated/part.js:1609
+#: part/models.py:3429 templates/js/translated/part.js:1609
msgid "Choices"
msgstr ""
-#: part/models.py:3429
+#: part/models.py:3430
msgid "Valid choices for this parameter (comma-separated)"
msgstr ""
-#: part/models.py:3510
+#: part/models.py:3511
msgid "Invalid choice for parameter value"
msgstr ""
-#: part/models.py:3554
+#: part/models.py:3555
msgid "Parent Part"
msgstr ""
-#: part/models.py:3559 part/models.py:3620 part/models.py:3621
+#: part/models.py:3560 part/models.py:3621 part/models.py:3622
#: templates/InvenTree/settings/settings_staff_js.html:199
msgid "Parameter Template"
msgstr ""
-#: part/models.py:3564
+#: part/models.py:3565
msgid "Data"
msgstr ""
-#: part/models.py:3564
+#: part/models.py:3565
msgid "Parameter Value"
msgstr ""
-#: part/models.py:3625 templates/InvenTree/settings/settings_staff_js.html:208
+#: part/models.py:3626 templates/InvenTree/settings/settings_staff_js.html:208
msgid "Default Value"
msgstr ""
-#: part/models.py:3626
+#: part/models.py:3627
msgid "Default Parameter Value"
msgstr ""
-#: part/models.py:3663
+#: part/models.py:3664
msgid "Part ID or part name"
msgstr ""
-#: part/models.py:3667
+#: part/models.py:3668
msgid "Unique part ID value"
msgstr ""
-#: part/models.py:3675
+#: part/models.py:3676
msgid "Part IPN value"
msgstr ""
-#: part/models.py:3678
+#: part/models.py:3679
msgid "Level"
msgstr ""
-#: part/models.py:3679
+#: part/models.py:3680
msgid "BOM level"
msgstr ""
-#: part/models.py:3763
+#: part/models.py:3764
msgid "Select parent part"
msgstr ""
-#: part/models.py:3771
+#: part/models.py:3772
msgid "Sub part"
msgstr ""
-#: part/models.py:3772
+#: part/models.py:3773
msgid "Select part to be used in BOM"
msgstr ""
-#: part/models.py:3778
+#: part/models.py:3779
msgid "BOM quantity for this BOM item"
msgstr ""
-#: part/models.py:3782 part/templates/part/upload_bom.html:58
+#: part/models.py:3783 part/templates/part/upload_bom.html:58
#: templates/js/translated/bom.js:971 templates/js/translated/bom.js:998
#: templates/js/translated/build.js:2113
#: templates/js/translated/table_filters.js:156
@@ -6074,114 +6069,114 @@ msgstr ""
msgid "Optional"
msgstr ""
-#: part/models.py:3783
+#: part/models.py:3784
msgid "This BOM item is optional"
msgstr ""
-#: part/models.py:3788 templates/js/translated/bom.js:967
+#: part/models.py:3789 templates/js/translated/bom.js:967
#: templates/js/translated/bom.js:1007 templates/js/translated/build.js:2104
#: templates/js/translated/table_filters.js:160
#: templates/js/translated/table_filters.js:496
msgid "Consumable"
msgstr ""
-#: part/models.py:3789
+#: part/models.py:3790
msgid "This BOM item is consumable (it is not tracked in build orders)"
msgstr ""
-#: part/models.py:3793 part/templates/part/upload_bom.html:55
+#: part/models.py:3794 part/templates/part/upload_bom.html:55
msgid "Overage"
msgstr ""
-#: part/models.py:3794
+#: part/models.py:3795
msgid "Estimated build wastage quantity (absolute or percentage)"
msgstr ""
-#: part/models.py:3797
+#: part/models.py:3798
msgid "BOM item reference"
msgstr ""
-#: part/models.py:3800
+#: part/models.py:3801
msgid "BOM item notes"
msgstr ""
-#: part/models.py:3804
+#: part/models.py:3805
msgid "Checksum"
msgstr ""
-#: part/models.py:3804
+#: part/models.py:3805
msgid "BOM line checksum"
msgstr ""
-#: part/models.py:3809 templates/js/translated/table_filters.js:144
+#: part/models.py:3810 templates/js/translated/table_filters.js:144
msgid "Validated"
msgstr ""
-#: part/models.py:3810
+#: part/models.py:3811
msgid "This BOM item has been validated"
msgstr ""
-#: part/models.py:3815 part/templates/part/upload_bom.html:57
+#: part/models.py:3816 part/templates/part/upload_bom.html:57
#: templates/js/translated/bom.js:1024
#: templates/js/translated/table_filters.js:148
#: templates/js/translated/table_filters.js:181
msgid "Gets inherited"
msgstr ""
-#: part/models.py:3816
+#: part/models.py:3817
msgid "This BOM item is inherited by BOMs for variant parts"
msgstr ""
-#: part/models.py:3821 part/templates/part/upload_bom.html:56
+#: part/models.py:3822 part/templates/part/upload_bom.html:56
#: templates/js/translated/bom.js:1016
msgid "Allow Variants"
msgstr ""
-#: part/models.py:3822
+#: part/models.py:3823
msgid "Stock items for variant parts can be used for this BOM item"
msgstr ""
-#: part/models.py:3908 stock/models.py:577
+#: part/models.py:3909 stock/models.py:577
msgid "Quantity must be integer value for trackable parts"
msgstr ""
-#: part/models.py:3917 part/models.py:3919
+#: part/models.py:3918 part/models.py:3920
msgid "Sub part must be specified"
msgstr ""
-#: part/models.py:4035
+#: part/models.py:4036
msgid "BOM Item Substitute"
msgstr ""
-#: part/models.py:4056
+#: part/models.py:4057
msgid "Substitute part cannot be the same as the master part"
msgstr ""
-#: part/models.py:4069
+#: part/models.py:4070
msgid "Parent BOM item"
msgstr ""
-#: part/models.py:4077
+#: part/models.py:4078
msgid "Substitute part"
msgstr ""
-#: part/models.py:4092
+#: part/models.py:4093
msgid "Part 1"
msgstr ""
-#: part/models.py:4096
+#: part/models.py:4097
msgid "Part 2"
msgstr ""
-#: part/models.py:4096
+#: part/models.py:4097
msgid "Select Related Part"
msgstr ""
-#: part/models.py:4114
+#: part/models.py:4115
msgid "Part relationship cannot be created between a part and itself"
msgstr ""
-#: part/models.py:4118
+#: part/models.py:4119
msgid "Duplicate relationship already exists"
msgstr ""
@@ -7515,12 +7510,12 @@ msgid "Test Results"
msgstr ""
#: report/templates/report/inventree_test_report_base.html:102
-#: stock/models.py:2242 templates/js/translated/stock.js:1419
+#: stock/models.py:2243 templates/js/translated/stock.js:1419
msgid "Test"
msgstr ""
#: report/templates/report/inventree_test_report_base.html:103
-#: stock/models.py:2248
+#: stock/models.py:2249
msgid "Result"
msgstr ""
@@ -7619,27 +7614,27 @@ msgstr ""
msgid "Expiry Date"
msgstr ""
-#: stock/api.py:419 templates/js/translated/table_filters.js:373
+#: stock/api.py:420 templates/js/translated/table_filters.js:373
msgid "External Location"
msgstr ""
-#: stock/api.py:581
+#: stock/api.py:582
msgid "Quantity is required"
msgstr ""
-#: stock/api.py:588
+#: stock/api.py:589
msgid "Valid part must be supplied"
msgstr ""
-#: stock/api.py:614
+#: stock/api.py:615
msgid "The given supplier part does not exist"
msgstr ""
-#: stock/api.py:623
+#: stock/api.py:624
msgid "The supplier part has a pack size defined, but flag use_pack_size not set"
msgstr ""
-#: stock/api.py:641
+#: stock/api.py:642
msgid "Serial numbers cannot be supplied for a non-trackable part"
msgstr ""
@@ -7798,104 +7793,104 @@ msgstr ""
msgid "Converted to part"
msgstr ""
-#: stock/models.py:1377
+#: stock/models.py:1378
msgid "Part is not set as trackable"
msgstr ""
-#: stock/models.py:1383
+#: stock/models.py:1384
msgid "Quantity must be integer"
msgstr ""
-#: stock/models.py:1389
+#: stock/models.py:1390
#, python-brace-format
msgid "Quantity must not exceed available stock quantity ({n})"
msgstr ""
-#: stock/models.py:1392
+#: stock/models.py:1393
msgid "Serial numbers must be a list of integers"
msgstr ""
-#: stock/models.py:1395
+#: stock/models.py:1396
msgid "Quantity does not match serial numbers"
msgstr ""
-#: stock/models.py:1402 stock/serializers.py:374
+#: stock/models.py:1403 stock/serializers.py:374
msgid "Serial numbers already exist"
msgstr ""
-#: stock/models.py:1473
+#: stock/models.py:1474
msgid "Stock item has been assigned to a sales order"
msgstr ""
-#: stock/models.py:1476
+#: stock/models.py:1477
msgid "Stock item is installed in another item"
msgstr ""
-#: stock/models.py:1479
+#: stock/models.py:1480
msgid "Stock item contains other items"
msgstr ""
-#: stock/models.py:1482
+#: stock/models.py:1483
msgid "Stock item has been assigned to a customer"
msgstr ""
-#: stock/models.py:1485
+#: stock/models.py:1486
msgid "Stock item is currently in production"
msgstr ""
-#: stock/models.py:1488
+#: stock/models.py:1489
msgid "Serialized stock cannot be merged"
msgstr ""
-#: stock/models.py:1495 stock/serializers.py:975
+#: stock/models.py:1496 stock/serializers.py:975
msgid "Duplicate stock items"
msgstr ""
-#: stock/models.py:1499
+#: stock/models.py:1500
msgid "Stock items must refer to the same part"
msgstr ""
-#: stock/models.py:1503
+#: stock/models.py:1504
msgid "Stock items must refer to the same supplier part"
msgstr ""
-#: stock/models.py:1507
+#: stock/models.py:1508
msgid "Stock status codes must match"
msgstr ""
-#: stock/models.py:1678
+#: stock/models.py:1679
msgid "StockItem cannot be moved as it is not in stock"
msgstr ""
-#: stock/models.py:2160
+#: stock/models.py:2161
msgid "Entry notes"
msgstr ""
-#: stock/models.py:2218
+#: stock/models.py:2219
msgid "Value must be provided for this test"
msgstr ""
-#: stock/models.py:2224
+#: stock/models.py:2225
msgid "Attachment must be uploaded for this test"
msgstr ""
-#: stock/models.py:2243
+#: stock/models.py:2244
msgid "Test name"
msgstr ""
-#: stock/models.py:2249
+#: stock/models.py:2250
msgid "Test result"
msgstr ""
-#: stock/models.py:2255
+#: stock/models.py:2256
msgid "Test output value"
msgstr ""
-#: stock/models.py:2262
+#: stock/models.py:2263
msgid "Test result attachment"
msgstr ""
-#: stock/models.py:2268
+#: stock/models.py:2269
msgid "Test notes"
msgstr ""
@@ -8670,29 +8665,29 @@ msgstr ""
msgid "Changing the settings below require you to immediately restart the server. Do not change this while under active usage."
msgstr ""
-#: templates/InvenTree/settings/plugin.html:37
+#: templates/InvenTree/settings/plugin.html:35
#: templates/InvenTree/settings/sidebar.html:64
msgid "Plugins"
msgstr ""
-#: templates/InvenTree/settings/plugin.html:43
+#: templates/InvenTree/settings/plugin.html:41
#: templates/js/translated/plugin.js:151
msgid "Install Plugin"
msgstr ""
-#: templates/InvenTree/settings/plugin.html:51
+#: templates/InvenTree/settings/plugin.html:49
msgid "External plugins are not enabled for this InvenTree installation"
msgstr ""
-#: templates/InvenTree/settings/plugin.html:70
+#: templates/InvenTree/settings/plugin.html:68
msgid "Plugin Error Stack"
msgstr ""
-#: templates/InvenTree/settings/plugin.html:79
+#: templates/InvenTree/settings/plugin.html:77
msgid "Stage"
msgstr ""
-#: templates/InvenTree/settings/plugin.html:81
+#: templates/InvenTree/settings/plugin.html:79
#: templates/js/translated/notification.js:75
msgid "Message"
msgstr ""
@@ -8765,14 +8760,6 @@ msgstr ""
msgid "Commit Message"
msgstr ""
-#: templates/InvenTree/settings/plugin_settings.html:126
-msgid "Sign Status"
-msgstr ""
-
-#: templates/InvenTree/settings/plugin_settings.html:131
-msgid "Sign Key"
-msgstr ""
-
#: templates/InvenTree/settings/po.html:7
msgid "Purchase Order Settings"
msgstr ""
@@ -9202,44 +9189,48 @@ msgstr ""
msgid "Update Available"
msgstr ""
-#: templates/about.html:42
+#: templates/about.html:43
+msgid "Commit Branch"
+msgstr ""
+
+#: templates/about.html:49
msgid "InvenTree Documentation"
msgstr ""
-#: templates/about.html:47
+#: templates/about.html:54
msgid "API Version"
msgstr ""
-#: templates/about.html:52
+#: templates/about.html:59
msgid "Python Version"
msgstr ""
-#: templates/about.html:57
+#: templates/about.html:64
msgid "Django Version"
msgstr ""
-#: templates/about.html:62
+#: templates/about.html:69
msgid "View Code on GitHub"
msgstr ""
-#: templates/about.html:67
+#: templates/about.html:74
msgid "Credits"
msgstr ""
-#: templates/about.html:72
+#: templates/about.html:79
msgid "Mobile App"
msgstr ""
-#: templates/about.html:77
+#: templates/about.html:84
msgid "Submit Bug Report"
msgstr ""
-#: templates/about.html:84 templates/clip.html:4
+#: templates/about.html:91 templates/clip.html:4
#: templates/js/translated/helpers.js:585
msgid "copy to clipboard"
msgstr ""
-#: templates/about.html:84
+#: templates/about.html:91
msgid "copy version information"
msgstr ""
@@ -11845,7 +11836,7 @@ msgstr ""
msgid "Add Stock"
msgstr ""
-#: templates/js/translated/stock.js:1005 users/models.py:243
+#: templates/js/translated/stock.js:1005 users/models.py:244
msgid "Add"
msgstr ""
@@ -12691,34 +12682,34 @@ msgstr ""
msgid "Important dates"
msgstr ""
-#: users/models.py:230
+#: users/models.py:231
msgid "Permission set"
msgstr ""
-#: users/models.py:238
+#: users/models.py:239
msgid "Group"
msgstr ""
-#: users/models.py:241
+#: users/models.py:242
msgid "View"
msgstr ""
-#: users/models.py:241
+#: users/models.py:242
msgid "Permission to view items"
msgstr ""
-#: users/models.py:243
+#: users/models.py:244
msgid "Permission to add items"
msgstr ""
-#: users/models.py:245
+#: users/models.py:246
msgid "Change"
msgstr ""
-#: users/models.py:245
+#: users/models.py:246
msgid "Permissions to edit items"
msgstr ""
-#: users/models.py:247
+#: users/models.py:248
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 4d9fdf2506..b5288a9078 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: 2023-06-09 00:32+0000\n"
-"PO-Revision-Date: 2023-06-09 10:27\n"
+"POT-Creation-Date: 2023-06-20 07:01+0000\n"
+"PO-Revision-Date: 2023-06-20 07:06\n"
"Last-Translator: \n"
"Language-Team: Spanish, Mexico\n"
"Language: es_MX\n"
@@ -49,26 +49,26 @@ msgstr "Detalles del error pueden encontrarse en el panel de administración"
msgid "Enter date"
msgstr "Ingrese la fecha"
-#: InvenTree/fields.py:206 InvenTree/models.py:766 build/serializers.py:427
-#: build/serializers.py:506 build/templates/build/sidebar.html:23
-#: company/models.py:597 company/templates/company/sidebar.html:35
-#: order/models.py:1089 order/templates/order/po_sidebar.html:11
+#: InvenTree/fields.py:206 InvenTree/models.py:766 build/serializers.py:435
+#: build/serializers.py:514 build/templates/build/sidebar.html:21
+#: company/models.py:746 company/templates/company/sidebar.html:37
+#: order/models.py:1102 order/templates/order/po_sidebar.html:11
#: order/templates/order/return_order_sidebar.html:9
#: order/templates/order/so_sidebar.html:17 part/admin.py:41
-#: part/models.py:3005 part/templates/part/part_sidebar.html:63
+#: part/models.py:3039 part/templates/part/part_sidebar.html:63
#: report/templates/report/inventree_build_order_base.html:172
#: stock/admin.py:121 stock/models.py:2160 stock/models.py:2268
-#: stock/serializers.py:342 stock/serializers.py:475 stock/serializers.py:556
-#: stock/serializers.py:839 stock/serializers.py:938 stock/serializers.py:1070
-#: stock/templates/stock/stock_sidebar.html:25
-#: templates/js/translated/barcode.js:143 templates/js/translated/bom.js:1224
-#: templates/js/translated/company.js:1294 templates/js/translated/order.js:347
-#: templates/js/translated/part.js:1054
-#: templates/js/translated/purchase_order.js:2168
-#: templates/js/translated/return_order.js:760
-#: templates/js/translated/sales_order.js:1055
-#: templates/js/translated/sales_order.js:1959
-#: templates/js/translated/stock.js:1460 templates/js/translated/stock.js:2164
+#: stock/serializers.py:408 stock/serializers.py:542 stock/serializers.py:623
+#: stock/serializers.py:681 stock/serializers.py:956 stock/serializers.py:1055
+#: stock/serializers.py:1187 stock/templates/stock/stock_sidebar.html:25
+#: templates/js/translated/barcode.js:143 templates/js/translated/bom.js:1244
+#: templates/js/translated/company.js:1715 templates/js/translated/order.js:347
+#: templates/js/translated/part.js:1053
+#: templates/js/translated/purchase_order.js:2178
+#: templates/js/translated/return_order.js:772
+#: templates/js/translated/sales_order.js:1067
+#: templates/js/translated/sales_order.js:1971
+#: templates/js/translated/stock.js:1459 templates/js/translated/stock.js:2321
msgid "Notes"
msgstr "Notas"
@@ -81,47 +81,51 @@ msgstr "El valor '{name}' no aparece en formato de patrón"
msgid "Provided value does not match required pattern: "
msgstr "El valor proporcionado no coincide con el patrón requerido: "
-#: InvenTree/forms.py:145
+#: InvenTree/forms.py:147
msgid "Enter password"
msgstr "Introduzca contraseña"
-#: InvenTree/forms.py:146
+#: InvenTree/forms.py:148
msgid "Enter new password"
msgstr "Ingrese su nueva contraseña"
-#: InvenTree/forms.py:155
+#: InvenTree/forms.py:157
msgid "Confirm password"
msgstr "Confirmar la contraseña"
-#: InvenTree/forms.py:156
+#: InvenTree/forms.py:158
msgid "Confirm new password"
msgstr "Confirmar contraseña nueva"
-#: InvenTree/forms.py:160
+#: InvenTree/forms.py:162
msgid "Old password"
msgstr "Contraseña anterior"
-#: InvenTree/forms.py:179
+#: InvenTree/forms.py:181
msgid "Email (again)"
msgstr "Email (de nuevo)"
-#: InvenTree/forms.py:183
+#: InvenTree/forms.py:185
msgid "Email address confirmation"
msgstr "Confirmación de dirección de email"
-#: InvenTree/forms.py:204
+#: InvenTree/forms.py:206
msgid "You must type the same email each time."
msgstr "Debe escribir el mismo correo electrónico cada vez."
-#: InvenTree/forms.py:230 InvenTree/forms.py:236
+#: InvenTree/forms.py:237 InvenTree/forms.py:243
msgid "The provided primary email address is not valid."
msgstr "La dirección de correo electrónico principal proporcionada no es válida."
-#: InvenTree/forms.py:242
+#: InvenTree/forms.py:249
msgid "The provided email domain is not approved."
msgstr "El dominio de correo electrónico proporcionado no está aprobado."
-#: InvenTree/helpers.py:462 order/models.py:442 order/models.py:611
+#: InvenTree/forms.py:345
+msgid "Registration is disabled."
+msgstr ""
+
+#: InvenTree/helpers.py:462 order/models.py:455 order/models.py:624
msgid "Invalid quantity provided"
msgstr "Cantidad proporcionada no válida"
@@ -239,7 +243,7 @@ msgstr "Falta enlace externo"
#: InvenTree/models.py:486 stock/models.py:2262
#: templates/js/translated/attachment.js:119
-#: templates/js/translated/attachment.js:306
+#: templates/js/translated/attachment.js:316
msgid "Attachment"
msgstr "Archivo adjunto"
@@ -247,29 +251,30 @@ msgstr "Archivo adjunto"
msgid "Select file to attach"
msgstr "Seleccionar archivo para adjuntar"
-#: InvenTree/models.py:493 common/models.py:2695 company/models.py:132
-#: company/models.py:306 company/models.py:584 order/models.py:236
-#: order/models.py:1093 order/models.py:1453 part/admin.py:39
-#: part/models.py:901 part/templates/part/part_scheduling.html:11
+#: InvenTree/models.py:493 common/models.py:2681 company/models.py:128
+#: company/models.py:381 company/models.py:455 company/models.py:733
+#: order/models.py:240 order/models.py:1106 order/models.py:1466
+#: part/admin.py:39 part/models.py:902
+#: part/templates/part/part_scheduling.html:11
#: report/templates/report/inventree_build_order_base.html:164
-#: stock/admin.py:120 templates/js/translated/company.js:977
-#: templates/js/translated/company.js:1283 templates/js/translated/order.js:351
-#: templates/js/translated/part.js:2316
-#: templates/js/translated/purchase_order.js:2008
-#: templates/js/translated/purchase_order.js:2172
-#: templates/js/translated/return_order.js:764
-#: templates/js/translated/sales_order.js:1044
-#: templates/js/translated/sales_order.js:1964
+#: stock/admin.py:120 templates/js/translated/company.js:1350
+#: templates/js/translated/company.js:1704 templates/js/translated/order.js:351
+#: templates/js/translated/part.js:2392
+#: templates/js/translated/purchase_order.js:2018
+#: templates/js/translated/purchase_order.js:2182
+#: templates/js/translated/return_order.js:776
+#: templates/js/translated/sales_order.js:1056
+#: templates/js/translated/sales_order.js:1976
msgid "Link"
msgstr "Enlace"
-#: InvenTree/models.py:494 build/models.py:291 part/models.py:902
+#: InvenTree/models.py:494 build/models.py:295 part/models.py:903
#: stock/models.py:735
msgid "Link to external URL"
msgstr "Enlace a URL externa"
#: InvenTree/models.py:497 templates/js/translated/attachment.js:120
-#: templates/js/translated/attachment.js:321
+#: templates/js/translated/attachment.js:331
msgid "Comment"
msgstr "Comentario"
@@ -277,13 +282,13 @@ msgstr "Comentario"
msgid "File comment"
msgstr "Comentario del archivo"
-#: InvenTree/models.py:503 InvenTree/models.py:504 common/models.py:2154
-#: common/models.py:2155 common/models.py:2368 common/models.py:2369
-#: common/models.py:2625 common/models.py:2626 part/models.py:3013
-#: part/models.py:3101 part/models.py:3180 part/models.py:3200
-#: plugin/models.py:217 plugin/models.py:218
+#: InvenTree/models.py:503 InvenTree/models.py:504 common/models.py:2140
+#: common/models.py:2141 common/models.py:2354 common/models.py:2355
+#: common/models.py:2611 common/models.py:2612 part/models.py:3047
+#: part/models.py:3135 part/models.py:3214 part/models.py:3234
+#: plugin/models.py:218 plugin/models.py:219
#: report/templates/report/inventree_test_report_base.html:105
-#: templates/js/translated/stock.js:2773
+#: templates/js/translated/stock.js:2904
msgid "User"
msgstr "Usuario"
@@ -324,53 +329,54 @@ msgstr "Los nombres duplicados no pueden existir bajo el mismo padre"
msgid "Invalid choice"
msgstr "Selección no válida"
-#: InvenTree/models.py:648 InvenTree/models.py:649 common/models.py:2354
-#: company/models.py:390 label/models.py:103 part/models.py:847
-#: part/models.py:3400 plugin/models.py:41 report/models.py:160
+#: InvenTree/models.py:648 InvenTree/models.py:649 common/models.py:2340
+#: company/models.py:539 label/models.py:111 part/models.py:848
+#: part/models.py:3434 plugin/models.py:42 report/models.py:160
#: templates/InvenTree/settings/mixins/urls.html:13
#: templates/InvenTree/settings/notifications.html:17
-#: templates/InvenTree/settings/plugin.html:80
+#: templates/InvenTree/settings/plugin.html:74
#: templates/InvenTree/settings/plugin_settings.html:22
-#: templates/js/translated/company.js:658
-#: templates/js/translated/company.js:706
-#: templates/js/translated/company.js:871
-#: templates/js/translated/company.js:1071 templates/js/translated/part.js:1160
-#: templates/js/translated/part.js:1447 templates/js/translated/part.js:1583
-#: templates/js/translated/part.js:2699 templates/js/translated/stock.js:2464
+#: templates/js/translated/company.js:665
+#: templates/js/translated/company.js:713
+#: templates/js/translated/company.js:940
+#: templates/js/translated/company.js:1196
+#: templates/js/translated/company.js:1444 templates/js/translated/part.js:1159
+#: templates/js/translated/part.js:1446 templates/js/translated/part.js:1582
+#: templates/js/translated/part.js:2684 templates/js/translated/stock.js:2595
msgid "Name"
msgstr "Nombre"
-#: InvenTree/models.py:655 build/models.py:164
+#: InvenTree/models.py:655 build/models.py:168
#: build/templates/build/detail.html:24 common/models.py:111
-#: company/models.py:312 company/models.py:590
+#: company/models.py:461 company/models.py:739
#: company/templates/company/company_base.html:72
#: company/templates/company/manufacturer_part.html:75
-#: company/templates/company/supplier_part.html:108 label/models.py:110
-#: order/models.py:232 order/models.py:1117 part/admin.py:194 part/admin.py:276
-#: part/models.py:869 part/models.py:3416 part/templates/part/category.html:81
+#: company/templates/company/supplier_part.html:108 label/models.py:118
+#: order/models.py:232 order/models.py:1130 part/admin.py:194 part/admin.py:276
+#: part/models.py:870 part/models.py:3450 part/templates/part/category.html:81
#: part/templates/part/part_base.html:172
#: part/templates/part/part_scheduling.html:12 report/models.py:173
-#: report/models.py:587 report/models.py:631
+#: report/models.py:589 report/models.py:633
#: report/templates/report/inventree_build_order_base.html:117
#: stock/admin.py:41 stock/templates/stock/location.html:123
#: templates/InvenTree/settings/notifications.html:19
#: templates/InvenTree/settings/plugin_settings.html:27
#: templates/InvenTree/settings/settings_staff_js.html:75
-#: templates/js/translated/bom.js:632 templates/js/translated/bom.js:933
-#: templates/js/translated/build.js:2857 templates/js/translated/company.js:510
-#: templates/js/translated/company.js:988
-#: templates/js/translated/company.js:1251 templates/js/translated/order.js:298
-#: templates/js/translated/part.js:1212 templates/js/translated/part.js:1456
-#: templates/js/translated/part.js:1594 templates/js/translated/part.js:1933
-#: templates/js/translated/part.js:2247 templates/js/translated/part.js:2735
-#: templates/js/translated/part.js:2826
-#: templates/js/translated/purchase_order.js:1666
-#: templates/js/translated/purchase_order.js:1812
-#: templates/js/translated/purchase_order.js:1990
-#: templates/js/translated/return_order.js:302
-#: templates/js/translated/sales_order.js:790
-#: templates/js/translated/stock.js:1439 templates/js/translated/stock.js:1817
-#: templates/js/translated/stock.js:2496 templates/js/translated/stock.js:2568
+#: templates/js/translated/bom.js:633 templates/js/translated/bom.js:951
+#: templates/js/translated/build.js:2062 templates/js/translated/company.js:517
+#: templates/js/translated/company.js:1361
+#: templates/js/translated/company.js:1672 templates/js/translated/index.js:114
+#: templates/js/translated/order.js:298 templates/js/translated/part.js:1211
+#: templates/js/translated/part.js:1455 templates/js/translated/part.js:1593
+#: templates/js/translated/part.js:1932 templates/js/translated/part.js:2323
+#: templates/js/translated/part.js:2720 templates/js/translated/part.js:2811
+#: templates/js/translated/purchase_order.js:1681
+#: templates/js/translated/purchase_order.js:1827
+#: templates/js/translated/purchase_order.js:2000
+#: templates/js/translated/return_order.js:314
+#: templates/js/translated/sales_order.js:802
+#: templates/js/translated/stock.js:1438 templates/js/translated/stock.js:1974
+#: templates/js/translated/stock.js:2627 templates/js/translated/stock.js:2699
msgid "Description"
msgstr "Descripción"
@@ -383,7 +389,7 @@ msgid "parent"
msgstr "padre"
#: InvenTree/models.py:671 InvenTree/models.py:672
-#: templates/js/translated/part.js:2744 templates/js/translated/stock.js:2505
+#: templates/js/translated/part.js:2729 templates/js/translated/stock.js:2636
msgid "Path"
msgstr "Ruta"
@@ -419,12 +425,12 @@ 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:60 part/models.py:3897
+#: InvenTree/serializers.py:60 part/models.py:3941
msgid "Must be a valid number"
msgstr "Debe ser un número válido"
-#: InvenTree/serializers.py:90 company/models.py:154
-#: company/templates/company/company_base.html:107 part/models.py:2852
+#: InvenTree/serializers.py:90 company/models.py:150
+#: company/templates/company/company_base.html:107 part/models.py:2886
#: templates/InvenTree/settings/settings_staff_js.html:44
#: templates/currency_data.html:5
msgid "Currency"
@@ -497,130 +503,130 @@ 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:714
+#: InvenTree/settings.py:741
msgid "Czech"
msgstr "Checo"
-#: InvenTree/settings.py:715
+#: InvenTree/settings.py:742
msgid "Danish"
msgstr "Danés"
-#: InvenTree/settings.py:716
+#: InvenTree/settings.py:743
msgid "German"
msgstr "Alemán"
-#: InvenTree/settings.py:717
+#: InvenTree/settings.py:744
msgid "Greek"
msgstr "Griego"
-#: InvenTree/settings.py:718
+#: InvenTree/settings.py:745
msgid "English"
msgstr "Inglés"
-#: InvenTree/settings.py:719
+#: InvenTree/settings.py:746
msgid "Spanish"
msgstr "Español"
-#: InvenTree/settings.py:720
+#: InvenTree/settings.py:747
msgid "Spanish (Mexican)"
msgstr "Español (México)"
-#: InvenTree/settings.py:721
+#: InvenTree/settings.py:748
msgid "Farsi / Persian"
msgstr "Farsi / Persa"
-#: InvenTree/settings.py:722
+#: InvenTree/settings.py:749
msgid "Finnish"
msgstr "Finlandés"
-#: InvenTree/settings.py:723
+#: InvenTree/settings.py:750
msgid "French"
msgstr "Francés"
-#: InvenTree/settings.py:724
+#: InvenTree/settings.py:751
msgid "Hebrew"
msgstr "Hebreo"
-#: InvenTree/settings.py:725
+#: InvenTree/settings.py:752
msgid "Hungarian"
msgstr "Húngaro"
-#: InvenTree/settings.py:726
+#: InvenTree/settings.py:753
msgid "Italian"
msgstr "Italiano"
-#: InvenTree/settings.py:727
+#: InvenTree/settings.py:754
msgid "Japanese"
msgstr "Japonés"
-#: InvenTree/settings.py:728
+#: InvenTree/settings.py:755
msgid "Korean"
msgstr "Coreano"
-#: InvenTree/settings.py:729
+#: InvenTree/settings.py:756
msgid "Dutch"
msgstr "Holandés"
-#: InvenTree/settings.py:730
+#: InvenTree/settings.py:757
msgid "Norwegian"
msgstr "Noruego"
-#: InvenTree/settings.py:731
+#: InvenTree/settings.py:758
msgid "Polish"
msgstr "Polaco"
-#: InvenTree/settings.py:732
+#: InvenTree/settings.py:759
msgid "Portuguese"
msgstr "Portugués"
-#: InvenTree/settings.py:733
+#: InvenTree/settings.py:760
msgid "Portuguese (Brazilian)"
msgstr "Portugués (Brasileño)"
-#: InvenTree/settings.py:734
+#: InvenTree/settings.py:761
msgid "Russian"
msgstr "Ruso"
-#: InvenTree/settings.py:735
+#: InvenTree/settings.py:762
msgid "Slovenian"
msgstr "Esloveno"
-#: InvenTree/settings.py:736
+#: InvenTree/settings.py:763
msgid "Swedish"
msgstr "Sueco"
-#: InvenTree/settings.py:737
+#: InvenTree/settings.py:764
msgid "Thai"
msgstr "Tailandés"
-#: InvenTree/settings.py:738
+#: InvenTree/settings.py:765
msgid "Turkish"
msgstr "Turco"
-#: InvenTree/settings.py:739
+#: InvenTree/settings.py:766
msgid "Vietnamese"
msgstr "Vietnamita"
-#: InvenTree/settings.py:740
+#: InvenTree/settings.py:767
msgid "Chinese"
msgstr "Chino"
-#: InvenTree/status.py:61 part/serializers.py:878
+#: InvenTree/status.py:68 part/serializers.py:940
msgid "Background worker check failed"
msgstr "Falló la comprobación en segundo plano del worker"
-#: InvenTree/status.py:65
+#: InvenTree/status.py:72
msgid "Email backend not configured"
msgstr "No se ha configurado el backend de correo"
-#: InvenTree/status.py:68
+#: InvenTree/status.py:75
msgid "InvenTree system health checks failed"
msgstr "Las comprobaciones de estado del sistema InvenTree fallaron"
#: InvenTree/status_codes.py:12 InvenTree/status_codes.py:40
#: InvenTree/status_codes.py:148 InvenTree/status_codes.py:167
#: InvenTree/status_codes.py:188 generic/states/tests.py:16
-#: templates/js/translated/table_filters.js:511
+#: templates/js/translated/table_filters.js:533
msgid "Pending"
msgstr "Pendiente"
@@ -630,7 +636,7 @@ msgstr "Colocado"
#: InvenTree/status_codes.py:14 InvenTree/status_codes.py:151
#: InvenTree/status_codes.py:172 generic/states/tests.py:18
-#: order/templates/order/order_base.html:162
+#: order/templates/order/order_base.html:158
#: order/templates/order/sales_order_base.html:162
msgid "Complete"
msgstr "Terminado"
@@ -654,10 +660,10 @@ msgstr "Devuelto"
msgid "In Progress"
msgstr "En progreso"
-#: InvenTree/status_codes.py:42 order/models.py:1332
-#: templates/js/translated/sales_order.js:1509
-#: templates/js/translated/sales_order.js:1630
-#: templates/js/translated/sales_order.js:1934
+#: InvenTree/status_codes.py:42 order/models.py:1345
+#: templates/js/translated/sales_order.js:1521
+#: templates/js/translated/sales_order.js:1642
+#: templates/js/translated/sales_order.js:1946
msgid "Shipped"
msgstr "Enviado"
@@ -689,7 +695,7 @@ msgstr "En cuarentena"
msgid "Legacy stock tracking entry"
msgstr "Entrada antigua de rastreo de stock"
-#: InvenTree/status_codes.py:93 templates/js/translated/stock.js:511
+#: InvenTree/status_codes.py:93 templates/js/translated/stock.js:510
msgid "Stock item created"
msgstr "Artículo de stock creado"
@@ -745,7 +751,7 @@ msgstr "Separar del artículo principal"
msgid "Split child item"
msgstr "Dividir artículo secundario"
-#: InvenTree/status_codes.py:120 templates/js/translated/stock.js:2243
+#: InvenTree/status_codes.py:120 templates/js/translated/stock.js:1769
msgid "Merged stock items"
msgstr "Artículos de stock combinados"
@@ -765,7 +771,7 @@ msgstr "Construir orden de salida completado"
msgid "Build order output rejected"
msgstr ""
-#: InvenTree/status_codes.py:129 templates/js/translated/stock.js:1676
+#: InvenTree/status_codes.py:129 templates/js/translated/stock.js:1675
msgid "Consumed by build order"
msgstr "Consumido por orden de construcción"
@@ -781,7 +787,7 @@ msgstr "Recibido contra la orden de compra"
msgid "Returned against Return Order"
msgstr "Devuelto contra orden de devolución"
-#: InvenTree/status_codes.py:141 templates/js/translated/table_filters.js:321
+#: InvenTree/status_codes.py:141 templates/js/translated/table_filters.js:327
msgid "Sent to customer"
msgstr "Enviar al cliente"
@@ -849,83 +855,111 @@ msgstr "Los campos de contraseña deben coincidir"
msgid "Wrong password provided"
msgstr "Contraseña incorrecta proporcionada"
-#: InvenTree/views.py:651 templates/navbar.html:157
+#: InvenTree/views.py:653 templates/navbar.html:157
msgid "System Information"
msgstr "Información del sistema"
-#: InvenTree/views.py:658 templates/navbar.html:168
+#: InvenTree/views.py:660 templates/navbar.html:168
msgid "About InvenTree"
msgstr "Acerca de InvenTree"
-#: build/api.py:222
+#: build/api.py:242
msgid "Build must be cancelled before it can be deleted"
msgstr "La compilación debe cancelarse antes de poder ser eliminada"
-#: build/models.py:69 build/templates/build/build_base.html:9
+#: build/api.py:286 part/models.py:3833 templates/js/translated/bom.js:985
+#: templates/js/translated/bom.js:1025 templates/js/translated/build.js:2449
+#: templates/js/translated/table_filters.js:166
+#: templates/js/translated/table_filters.js:518
+msgid "Consumable"
+msgstr "Consumible"
+
+#: build/api.py:287 part/models.py:3827 part/templates/part/upload_bom.html:58
+#: templates/js/translated/bom.js:989 templates/js/translated/bom.js:1016
+#: templates/js/translated/build.js:2458
+#: templates/js/translated/table_filters.js:162
+#: templates/js/translated/table_filters.js:191
+#: templates/js/translated/table_filters.js:522
+msgid "Optional"
+msgstr "Opcional"
+
+#: build/api.py:288 templates/js/translated/table_filters.js:360
+#: templates/js/translated/table_filters.js:514
+msgid "Tracked"
+msgstr "Rastreado"
+
+#: build/api.py:290 part/admin.py:64 templates/js/translated/build.js:1670
+#: templates/js/translated/build.js:2549
+#: templates/js/translated/sales_order.js:1918
+#: templates/js/translated/table_filters.js:506
+msgid "Allocated"
+msgstr "Asignadas"
+
+#: build/models.py:73 build/templates/build/build_base.html:9
#: build/templates/build/build_base.html:27
#: report/templates/report/inventree_build_order_base.html:105
#: templates/email/build_order_completed.html:16
#: templates/email/overdue_build_order.html:15
-#: templates/js/translated/build.js:945 templates/js/translated/stock.js:2629
+#: templates/js/translated/build.js:953 templates/js/translated/stock.js:2760
msgid "Build Order"
msgstr "Construir órden"
-#: build/models.py:70 build/templates/build/build_base.html:13
+#: build/models.py:74 build/templates/build/build_base.html:13
#: build/templates/build/index.html:8 build/templates/build/index.html:12
-#: order/templates/order/sales_order_detail.html:119
+#: order/templates/order/sales_order_detail.html:111
#: order/templates/order/so_sidebar.html:13
-#: part/templates/part/part_sidebar.html:22 templates/InvenTree/index.html:244
+#: part/templates/part/part_sidebar.html:22 templates/InvenTree/index.html:196
#: templates/InvenTree/search.html:141
#: templates/InvenTree/settings/sidebar.html:53
-#: templates/js/translated/search.js:228 users/models.py:42
+#: templates/js/translated/search.js:186 users/models.py:42
msgid "Build Orders"
msgstr "Construir órdenes"
-#: build/models.py:111
+#: build/models.py:115
msgid "Invalid choice for parent build"
msgstr "Opción no válida para la construcción padre"
-#: build/models.py:155
+#: build/models.py:159
msgid "Build Order Reference"
msgstr "Número de orden de construcción o armado"
-#: build/models.py:156 order/models.py:359 order/models.py:765
-#: order/models.py:1087 order/models.py:1724 part/admin.py:278
-#: part/models.py:3798 part/templates/part/upload_bom.html:54
+#: build/models.py:160 order/models.py:372 order/models.py:778
+#: order/models.py:1100 order/models.py:1737 part/admin.py:278
+#: part/models.py:3842 part/templates/part/upload_bom.html:54
#: report/templates/report/inventree_bill_of_materials_report.html:139
#: report/templates/report/inventree_po_report_base.html:28
#: report/templates/report/inventree_return_order_report_base.html:26
#: report/templates/report/inventree_so_report_base.html:28
-#: templates/js/translated/bom.js:769 templates/js/translated/bom.js:943
-#: templates/js/translated/build.js:2098 templates/js/translated/order.js:291
+#: templates/js/translated/bom.js:770 templates/js/translated/bom.js:961
+#: templates/js/translated/build.js:2441 templates/js/translated/order.js:291
#: templates/js/translated/pricing.js:386
-#: templates/js/translated/purchase_order.js:2033
-#: templates/js/translated/return_order.js:713
-#: templates/js/translated/sales_order.js:1798
+#: templates/js/translated/purchase_order.js:2043
+#: templates/js/translated/return_order.js:725
+#: templates/js/translated/sales_order.js:1810
msgid "Reference"
msgstr "Referencia"
-#: build/models.py:167
+#: build/models.py:171
msgid "Brief description of the build (optional)"
msgstr "Breve descripción de la construcción (opcional)"
-#: build/models.py:175 build/templates/build/build_base.html:183
+#: build/models.py:179 build/templates/build/build_base.html:184
#: build/templates/build/detail.html:87
msgid "Parent Build"
msgstr "Construcción o Armado Superior"
-#: build/models.py:176
+#: build/models.py:180
msgid "BuildOrder to which this build is allocated"
msgstr "Orden de Construcción o Armado a la que se asigna"
-#: build/models.py:181 build/templates/build/build_base.html:98
-#: build/templates/build/detail.html:29 company/models.py:775
-#: order/models.py:1195 order/models.py:1311 order/models.py:1312
-#: part/models.py:391 part/models.py:2865 part/models.py:2979
-#: part/models.py:3119 part/models.py:3138 part/models.py:3157
-#: part/models.py:3178 part/models.py:3270 part/models.py:3555
-#: part/models.py:3663 part/models.py:3763 part/models.py:4077
-#: part/serializers.py:842 part/serializers.py:1245
+#: build/models.py:185 build/templates/build/build_base.html:98
+#: build/templates/build/detail.html:29 company/models.py:924
+#: order/models.py:1208 order/models.py:1324 order/models.py:1325
+#: part/models.py:392 part/models.py:2899 part/models.py:3013
+#: part/models.py:3153 part/models.py:3172 part/models.py:3191
+#: part/models.py:3212 part/models.py:3304 part/models.py:3589
+#: part/models.py:3712 part/models.py:3807 part/models.py:4121
+#: part/serializers.py:904 part/serializers.py:1307
#: part/templates/part/part_app_base.html:8
#: part/templates/part/part_pricing.html:12
#: part/templates/part/upload_bom.html:52
@@ -935,266 +969,229 @@ msgstr "Orden de Construcción o Armado a la que se asigna"
#: report/templates/report/inventree_po_report_base.html:27
#: report/templates/report/inventree_return_order_report_base.html:24
#: report/templates/report/inventree_so_report_base.html:27
-#: stock/serializers.py:156 stock/serializers.py:509
+#: stock/serializers.py:205 stock/serializers.py:576
#: templates/InvenTree/search.html:82
#: templates/email/build_order_completed.html:17
#: templates/email/build_order_required_stock.html:17
#: templates/email/low_stock_notification.html:15
#: templates/email/overdue_build_order.html:16
-#: templates/js/translated/barcode.js:529 templates/js/translated/bom.js:631
-#: templates/js/translated/bom.js:768 templates/js/translated/bom.js:887
-#: templates/js/translated/build.js:1403 templates/js/translated/build.js:1965
-#: templates/js/translated/build.js:2464 templates/js/translated/build.js:2868
-#: templates/js/translated/company.js:337
-#: templates/js/translated/company.js:822
-#: templates/js/translated/company.js:929
-#: templates/js/translated/company.js:1169 templates/js/translated/part.js:1918
-#: templates/js/translated/part.js:1990 templates/js/translated/part.js:2216
-#: templates/js/translated/pricing.js:369
-#: templates/js/translated/purchase_order.js:746
-#: templates/js/translated/purchase_order.js:1274
-#: templates/js/translated/purchase_order.js:1811
-#: templates/js/translated/purchase_order.js:1975
-#: templates/js/translated/return_order.js:527
-#: templates/js/translated/return_order.js:694
-#: templates/js/translated/sales_order.js:285
-#: templates/js/translated/sales_order.js:1185
-#: templates/js/translated/sales_order.js:1584
-#: templates/js/translated/sales_order.js:1782
-#: templates/js/translated/stock.js:643 templates/js/translated/stock.js:809
-#: templates/js/translated/stock.js:1021 templates/js/translated/stock.js:1773
-#: templates/js/translated/stock.js:2594 templates/js/translated/stock.js:2831
-#: templates/js/translated/stock.js:2968
+#: templates/js/translated/barcode.js:529 templates/js/translated/bom.js:632
+#: templates/js/translated/bom.js:769 templates/js/translated/bom.js:905
+#: templates/js/translated/build.js:1289 templates/js/translated/build.js:1669
+#: templates/js/translated/build.js:2085 templates/js/translated/build.js:2261
+#: templates/js/translated/company.js:347
+#: templates/js/translated/company.js:1147
+#: templates/js/translated/company.js:1302
+#: templates/js/translated/company.js:1590 templates/js/translated/index.js:104
+#: templates/js/translated/part.js:1917 templates/js/translated/part.js:1989
+#: templates/js/translated/part.js:2292 templates/js/translated/pricing.js:369
+#: templates/js/translated/purchase_order.js:757
+#: templates/js/translated/purchase_order.js:1289
+#: templates/js/translated/purchase_order.js:1826
+#: templates/js/translated/purchase_order.js:1985
+#: templates/js/translated/return_order.js:539
+#: templates/js/translated/return_order.js:706
+#: templates/js/translated/sales_order.js:297
+#: templates/js/translated/sales_order.js:1197
+#: templates/js/translated/sales_order.js:1596
+#: templates/js/translated/sales_order.js:1794
+#: templates/js/translated/stock.js:642 templates/js/translated/stock.js:808
+#: templates/js/translated/stock.js:1020 templates/js/translated/stock.js:1913
+#: templates/js/translated/stock.js:2725 templates/js/translated/stock.js:2958
+#: templates/js/translated/stock.js:3095
msgid "Part"
msgstr "Parte"
-#: build/models.py:189
+#: build/models.py:193
msgid "Select part to build"
msgstr "Seleccionar parte a construir o armar"
-#: build/models.py:194
+#: build/models.py:198
msgid "Sales Order Reference"
msgstr "Referencia de orden de venta"
-#: build/models.py:198
+#: build/models.py:202
msgid "SalesOrder to which this build is allocated"
msgstr "Orden de Venta a la que se asigna"
-#: build/models.py:203 build/serializers.py:942
-#: templates/js/translated/build.js:2452
-#: templates/js/translated/sales_order.js:1173
+#: build/models.py:207 build/serializers.py:946
+#: templates/js/translated/build.js:1657
+#: templates/js/translated/sales_order.js:1185
msgid "Source Location"
msgstr "Ubicación de la fuente"
-#: build/models.py:207
+#: build/models.py:211
msgid "Select location to take stock from for this build (leave blank to take from any stock location)"
msgstr "Seleccione la ubicación de donde tomar stock para esta construcción o armado (deje en blanco para tomar desde cualquier ubicación)"
-#: build/models.py:212
+#: build/models.py:216
msgid "Destination Location"
msgstr "Ubicación de destino"
-#: build/models.py:216
+#: build/models.py:220
msgid "Select location where the completed items will be stored"
msgstr "Seleccione la ubicación donde se almacenarán los artículos completados"
-#: build/models.py:220
+#: build/models.py:224
msgid "Build Quantity"
msgstr "Cantidad a crear"
-#: build/models.py:223
+#: build/models.py:227
msgid "Number of stock items to build"
msgstr "Número de objetos existentes a construir"
-#: build/models.py:227
+#: build/models.py:231
msgid "Completed items"
msgstr "Elementos completados"
-#: build/models.py:229
+#: build/models.py:233
msgid "Number of stock items which have been completed"
msgstr "Número de productos en stock que se han completado"
-#: build/models.py:233
+#: build/models.py:237
msgid "Build Status"
msgstr "Estado de la construcción"
-#: build/models.py:237
+#: build/models.py:241
msgid "Build status code"
msgstr "Código de estado de construcción"
-#: build/models.py:246 build/serializers.py:269 order/serializers.py:506
-#: stock/models.py:739 templates/js/translated/purchase_order.js:1099
+#: build/models.py:250 build/serializers.py:277 order/serializers.py:512
+#: stock/models.py:739 templates/js/translated/purchase_order.js:1114
msgid "Batch Code"
msgstr "Numero de lote"
-#: build/models.py:250 build/serializers.py:270
+#: build/models.py:254 build/serializers.py:278
msgid "Batch code for this build output"
msgstr "Número de lote de este producto final"
-#: build/models.py:253 order/models.py:244 part/models.py:1038
+#: build/models.py:257 order/models.py:248 part/models.py:1039
#: part/templates/part/part_base.html:312
-#: templates/js/translated/return_order.js:327
-#: templates/js/translated/sales_order.js:815
+#: templates/js/translated/return_order.js:339
+#: templates/js/translated/sales_order.js:827
msgid "Creation Date"
msgstr "Fecha de Creación"
-#: build/models.py:257
+#: build/models.py:261
msgid "Target completion date"
msgstr "Fecha límite de finalización"
-#: build/models.py:258
+#: build/models.py:262
msgid "Target date for build completion. Build will be overdue after this date."
msgstr "Fecha límite para la finalización de la construcción. La construcción estará vencida después de esta fecha."
-#: build/models.py:261 order/models.py:409 order/models.py:1767
-#: templates/js/translated/build.js:2953
+#: build/models.py:265 order/models.py:422 order/models.py:1780
+#: templates/js/translated/build.js:2170
msgid "Completion Date"
msgstr "Fecha de finalización"
-#: build/models.py:267
+#: build/models.py:271
msgid "completed by"
msgstr "terminado por"
-#: build/models.py:275 templates/js/translated/build.js:2913
+#: build/models.py:279 templates/js/translated/build.js:2130
msgid "Issued by"
msgstr "Emitido por"
-#: build/models.py:276
+#: build/models.py:280
msgid "User who issued this build order"
msgstr "El usuario que emitió esta orden"
-#: build/models.py:284 build/templates/build/build_base.html:204
-#: build/templates/build/detail.html:122 order/models.py:258
-#: order/templates/order/order_base.html:214
-#: order/templates/order/return_order_base.html:182
-#: order/templates/order/sales_order_base.html:222 part/models.py:1042
+#: build/models.py:288 build/templates/build/build_base.html:205
+#: build/templates/build/detail.html:122 order/models.py:262
+#: order/templates/order/order_base.html:217
+#: order/templates/order/return_order_base.html:189
+#: order/templates/order/sales_order_base.html:229 part/models.py:1043
#: part/templates/part/part_base.html:392
#: report/templates/report/inventree_build_order_base.html:158
-#: templates/js/translated/build.js:2925
-#: templates/js/translated/purchase_order.js:1723
-#: templates/js/translated/return_order.js:347
-#: templates/js/translated/table_filters.js:461
+#: templates/js/translated/build.js:2142
+#: templates/js/translated/purchase_order.js:1738
+#: templates/js/translated/return_order.js:359
+#: templates/js/translated/table_filters.js:467
msgid "Responsible"
msgstr "Responsable"
-#: build/models.py:285
+#: build/models.py:289
msgid "User or group responsible for this build order"
msgstr "Usuario o grupo responsable de esta orden de construcción"
-#: build/models.py:290 build/templates/build/detail.html:108
+#: build/models.py:294 build/templates/build/detail.html:108
#: company/templates/company/manufacturer_part.html:107
#: company/templates/company/supplier_part.html:195
-#: order/templates/order/order_base.html:171
+#: order/templates/order/order_base.html:167
#: order/templates/order/return_order_base.html:146
#: order/templates/order/sales_order_base.html:181
#: part/templates/part/part_base.html:385 stock/models.py:733
#: stock/templates/stock/item_base.html:201
+#: templates/js/translated/company.js:1050
msgid "External Link"
msgstr "Link externo"
-#: build/models.py:295
+#: build/models.py:299
msgid "Build Priority"
msgstr "Prioridad de construcción"
-#: build/models.py:298
+#: build/models.py:302
msgid "Priority of this build order"
msgstr "Prioridad de esta orden de construcción"
-#: build/models.py:536
+#: build/models.py:309 common/models.py:104 order/admin.py:17
+#: order/models.py:237 templates/InvenTree/settings/settings_staff_js.html:70
+#: templates/js/translated/build.js:2067
+#: templates/js/translated/purchase_order.js:1685
+#: templates/js/translated/return_order.js:318
+#: templates/js/translated/sales_order.js:806
+#: templates/js/translated/table_filters.js:24
+#: templates/project_code_data.html:6
+msgid "Project Code"
+msgstr "Código del proyecto"
+
+#: build/models.py:310
+msgid "Project code for this build order"
+msgstr ""
+
+#: build/models.py:545
#, python-brace-format
msgid "Build order {build} has been completed"
msgstr "El pedido {build} ha sido procesado"
-#: build/models.py:542
+#: build/models.py:551
msgid "A build order has been completed"
msgstr "Pedido #[order] ha sido procesado"
-#: build/models.py:744 build/models.py:811
+#: build/models.py:753 build/models.py:831
msgid "No build output specified"
msgstr "No se ha especificado salida de construcción"
-#: build/models.py:747
+#: build/models.py:756
msgid "Build output is already completed"
msgstr "La construcción de la salida ya está completa"
-#: build/models.py:750
+#: build/models.py:759
msgid "Build output does not match Build Order"
msgstr "La salida de la construcción no coincide con el orden de construcción"
-#: build/models.py:815 build/serializers.py:212 build/serializers.py:251
-#: build/serializers.py:811 order/models.py:440 order/serializers.py:379
-#: order/serializers.py:501 part/serializers.py:1087 part/serializers.py:1408
-#: stock/models.py:593 stock/models.py:1387 stock/serializers.py:315
+#: build/models.py:835 build/serializers.py:220 build/serializers.py:259
+#: build/serializers.py:819 order/models.py:453 order/serializers.py:385
+#: order/serializers.py:507 part/serializers.py:1149 part/serializers.py:1470
+#: stock/models.py:593 stock/models.py:1387 stock/serializers.py:381
msgid "Quantity must be greater than zero"
msgstr "La cantidad debe ser mayor que cero"
-#: build/models.py:820 build/serializers.py:217
+#: build/models.py:840 build/serializers.py:225
msgid "Quantity cannot be greater than the output quantity"
msgstr "La cantidad no puede ser mayor que la cantidad de salida"
-#: build/models.py:1272
-msgid "Build item must specify a build output, as master part is marked as trackable"
-msgstr "Item de construcción o armado debe especificar un resultado o salida, ya que la parte maestra está marcada como rastreable"
+#: build/models.py:1260
+msgid "Build object"
+msgstr ""
-#: build/models.py:1281
-#, python-brace-format
-msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})"
-msgstr "Cantidad asignada ({q}) no debe exceder la cantidad disponible de stock ({a})"
-
-#: build/models.py:1291 order/models.py:1601
-msgid "Stock item is over-allocated"
-msgstr "Artículo de stock sobreasignado"
-
-#: build/models.py:1297 order/models.py:1604
-msgid "Allocation quantity must be greater than zero"
-msgstr "Cantidad asignada debe ser mayor que cero"
-
-#: build/models.py:1303
-msgid "Quantity must be 1 for serialized stock"
-msgstr "La cantidad debe ser 1 para el stock serializado"
-
-#: build/models.py:1360
-msgid "Selected stock item not found in BOM"
-msgstr "Artículo de stock seleccionado no encontrado en BOM"
-
-#: build/models.py:1438 stock/templates/stock/item_base.html:170
-#: templates/InvenTree/search.html:139 templates/js/translated/build.js:2841
-#: templates/navbar.html:38
-msgid "Build"
-msgstr "Construcción o Armado"
-
-#: build/models.py:1439
-msgid "Build to allocate parts"
-msgstr "Armar para asignar partes"
-
-#: build/models.py:1455 build/serializers.py:791 order/serializers.py:1059
-#: order/serializers.py:1080 stock/serializers.py:413 stock/serializers.py:770
-#: stock/serializers.py:896 stock/templates/stock/item_base.html:10
-#: stock/templates/stock/item_base.html:23
-#: stock/templates/stock/item_base.html:195
-#: templates/js/translated/build.js:955 templates/js/translated/build.js:960
-#: templates/js/translated/build.js:2466 templates/js/translated/build.js:3038
-#: templates/js/translated/sales_order.js:286
-#: templates/js/translated/sales_order.js:1186
-#: templates/js/translated/sales_order.js:1485
-#: templates/js/translated/sales_order.js:1490
-#: templates/js/translated/sales_order.js:1591
-#: templates/js/translated/sales_order.js:1678
-#: templates/js/translated/stock.js:644 templates/js/translated/stock.js:810
-#: templates/js/translated/stock.js:2714
-msgid "Stock Item"
-msgstr "Artículo de stock"
-
-#: build/models.py:1456
-msgid "Source stock item"
-msgstr "Producto original de stock"
-
-#: build/models.py:1468 build/serializers.py:198 build/serializers.py:236
-#: build/templates/build/build_base.html:103
-#: build/templates/build/detail.html:34 common/models.py:2176
-#: order/models.py:1073 order/models.py:1645 order/serializers.py:1233
+#: build/models.py:1274 build/models.py:1556 build/serializers.py:206
+#: build/serializers.py:244 build/templates/build/build_base.html:103
+#: build/templates/build/detail.html:34 common/models.py:2162
+#: order/models.py:1086 order/models.py:1658 order/serializers.py:1239
#: order/templates/order/order_wizard/match_parts.html:30 part/admin.py:277
-#: part/forms.py:47 part/models.py:2992 part/models.py:3779
+#: part/forms.py:47 part/models.py:3026 part/models.py:3823
#: part/templates/part/part_pricing.html:16
#: part/templates/part/upload_bom.html:53
#: report/templates/report/inventree_bill_of_materials_report.html:138
@@ -1203,315 +1200,367 @@ msgstr "Producto original de stock"
#: report/templates/report/inventree_so_report_base.html:29
#: report/templates/report/inventree_test_report_base.html:90
#: report/templates/report/inventree_test_report_base.html:170
-#: stock/admin.py:103 stock/serializers.py:306
+#: stock/admin.py:103 stock/serializers.py:372
#: stock/templates/stock/item_base.html:288
#: stock/templates/stock/item_base.html:296
#: stock/templates/stock/item_base.html:343
#: templates/email/build_order_completed.html:18
-#: templates/js/translated/barcode.js:531 templates/js/translated/bom.js:770
-#: templates/js/translated/bom.js:951 templates/js/translated/build.js:504
-#: templates/js/translated/build.js:716 templates/js/translated/build.js:982
-#: templates/js/translated/build.js:1425 templates/js/translated/build.js:1991
-#: templates/js/translated/build.js:2467
-#: templates/js/translated/company.js:1428
-#: templates/js/translated/model_renderers.js:207
-#: templates/js/translated/order.js:304 templates/js/translated/part.js:935
-#: templates/js/translated/part.js:1784 templates/js/translated/part.js:3263
+#: templates/js/translated/barcode.js:531 templates/js/translated/bom.js:771
+#: templates/js/translated/bom.js:969 templates/js/translated/build.js:510
+#: templates/js/translated/build.js:722 templates/js/translated/build.js:1308
+#: templates/js/translated/build.js:1672 templates/js/translated/build.js:2283
+#: templates/js/translated/company.js:1849
+#: templates/js/translated/model_renderers.js:221
+#: templates/js/translated/order.js:304 templates/js/translated/part.js:934
+#: templates/js/translated/part.js:1783 templates/js/translated/part.js:3248
#: templates/js/translated/pricing.js:381
#: templates/js/translated/pricing.js:474
#: templates/js/translated/pricing.js:522
#: templates/js/translated/pricing.js:616
-#: templates/js/translated/purchase_order.js:749
-#: templates/js/translated/purchase_order.js:1815
-#: templates/js/translated/purchase_order.js:2039
-#: templates/js/translated/sales_order.js:302
-#: templates/js/translated/sales_order.js:1187
-#: templates/js/translated/sales_order.js:1504
-#: templates/js/translated/sales_order.js:1594
-#: templates/js/translated/sales_order.js:1684
-#: templates/js/translated/sales_order.js:1804
-#: templates/js/translated/stock.js:531 templates/js/translated/stock.js:669
-#: templates/js/translated/stock.js:840 templates/js/translated/stock.js:2758
-#: templates/js/translated/stock.js:2843
+#: templates/js/translated/purchase_order.js:760
+#: templates/js/translated/purchase_order.js:1830
+#: templates/js/translated/purchase_order.js:2049
+#: templates/js/translated/sales_order.js:314
+#: templates/js/translated/sales_order.js:1199
+#: templates/js/translated/sales_order.js:1516
+#: templates/js/translated/sales_order.js:1606
+#: templates/js/translated/sales_order.js:1696
+#: templates/js/translated/sales_order.js:1816
+#: templates/js/translated/stock.js:530 templates/js/translated/stock.js:668
+#: templates/js/translated/stock.js:839 templates/js/translated/stock.js:2889
+#: templates/js/translated/stock.js:2970
msgid "Quantity"
msgstr "Cantidad"
-#: build/models.py:1469
+#: build/models.py:1275
+msgid "Required quantity for build order"
+msgstr ""
+
+#: build/models.py:1357
+msgid "Build item must specify a build output, as master part is marked as trackable"
+msgstr "Item de construcción o armado debe especificar un resultado o salida, ya que la parte maestra está marcada como rastreable"
+
+#: build/models.py:1366
+#, python-brace-format
+msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})"
+msgstr "Cantidad asignada ({q}) no debe exceder la cantidad disponible de stock ({a})"
+
+#: build/models.py:1376 order/models.py:1614
+msgid "Stock item is over-allocated"
+msgstr "Artículo de stock sobreasignado"
+
+#: build/models.py:1382 order/models.py:1617
+msgid "Allocation quantity must be greater than zero"
+msgstr "Cantidad asignada debe ser mayor que cero"
+
+#: build/models.py:1388
+msgid "Quantity must be 1 for serialized stock"
+msgstr "La cantidad debe ser 1 para el stock serializado"
+
+#: build/models.py:1449
+msgid "Selected stock item does not match BOM line"
+msgstr ""
+
+#: build/models.py:1543 build/serializers.py:799 order/serializers.py:1065
+#: order/serializers.py:1086 stock/serializers.py:479 stock/serializers.py:887
+#: stock/serializers.py:1013 stock/templates/stock/item_base.html:10
+#: stock/templates/stock/item_base.html:23
+#: stock/templates/stock/item_base.html:195
+#: templates/js/translated/build.js:1671
+#: templates/js/translated/sales_order.js:298
+#: templates/js/translated/sales_order.js:1198
+#: templates/js/translated/sales_order.js:1497
+#: templates/js/translated/sales_order.js:1502
+#: templates/js/translated/sales_order.js:1603
+#: templates/js/translated/sales_order.js:1690
+#: templates/js/translated/stock.js:643 templates/js/translated/stock.js:809
+#: templates/js/translated/stock.js:2845
+msgid "Stock Item"
+msgstr "Artículo de stock"
+
+#: build/models.py:1544
+msgid "Source stock item"
+msgstr "Producto original de stock"
+
+#: build/models.py:1557
msgid "Stock quantity to allocate to build"
msgstr "Cantidad de stock a asignar para construir"
-#: build/models.py:1477
+#: build/models.py:1565
msgid "Install into"
msgstr "Instalar en"
-#: build/models.py:1478
+#: build/models.py:1566
msgid "Destination stock item"
msgstr "Artículo de stock de destino"
-#: build/serializers.py:148 build/serializers.py:820
-#: templates/js/translated/build.js:1413
+#: build/serializers.py:156 build/serializers.py:828
+#: templates/js/translated/build.js:1299
msgid "Build Output"
msgstr "Resultado de la construcción o armado"
-#: build/serializers.py:160
+#: build/serializers.py:168
msgid "Build output does not match the parent build"
msgstr "La salida de construcción no coincide con la construcción padre"
-#: build/serializers.py:164
+#: build/serializers.py:172
msgid "Output part does not match BuildOrder part"
msgstr "La parte de salida no coincide con la parte de la Orden de Construcción"
-#: build/serializers.py:168
+#: build/serializers.py:176
msgid "This build output has already been completed"
msgstr "Esta salida de construcción ya ha sido completada"
-#: build/serializers.py:179
+#: build/serializers.py:187
msgid "This build output is not fully allocated"
msgstr "Esta salida de construcción no está completamente asignada"
-#: build/serializers.py:199 build/serializers.py:237
+#: build/serializers.py:207 build/serializers.py:245
msgid "Enter quantity for build output"
msgstr "Ingrese la cantidad para la producción de la construcción"
-#: build/serializers.py:258
+#: build/serializers.py:266
msgid "Integer quantity required for trackable parts"
msgstr "Cantidad entera requerida para partes rastreables"
-#: build/serializers.py:261
+#: build/serializers.py:269
msgid "Integer quantity required, as the bill of materials contains trackable parts"
msgstr "Cantidad entera requerida, ya que la factura de materiales contiene partes rastreables"
-#: build/serializers.py:276 order/serializers.py:514 order/serializers.py:1237
-#: stock/serializers.py:324 templates/js/translated/purchase_order.js:1123
-#: templates/js/translated/stock.js:334 templates/js/translated/stock.js:532
+#: build/serializers.py:284 order/serializers.py:520 order/serializers.py:1243
+#: stock/serializers.py:390 templates/js/translated/purchase_order.js:1138
+#: templates/js/translated/stock.js:333 templates/js/translated/stock.js:531
msgid "Serial Numbers"
msgstr "Números de serie"
-#: build/serializers.py:277
+#: build/serializers.py:285
msgid "Enter serial numbers for build outputs"
msgstr "Introduzca los números de serie de salidas de construcción"
-#: build/serializers.py:290
+#: build/serializers.py:298
msgid "Auto Allocate Serial Numbers"
msgstr "Autoasignar Números de Serie"
-#: build/serializers.py:291
+#: build/serializers.py:299
msgid "Automatically allocate required items with matching serial numbers"
msgstr "Asignar automáticamente los artículos requeridos con números de serie coincidentes"
-#: build/serializers.py:326 stock/api.py:670
+#: build/serializers.py:334 stock/api.py:707
msgid "The following serial numbers already exist or are invalid"
msgstr "Los siguientes números seriales ya existen o son inválidos"
-#: build/serializers.py:377 build/serializers.py:439 build/serializers.py:518
+#: build/serializers.py:385 build/serializers.py:447 build/serializers.py:526
msgid "A list of build outputs must be provided"
msgstr "Debe proporcionarse una lista de salidas de construcción"
-#: build/serializers.py:415 build/serializers.py:488 order/serializers.py:487
-#: order/serializers.py:606 order/serializers.py:1588 part/serializers.py:854
-#: stock/serializers.py:335 stock/serializers.py:470 stock/serializers.py:551
-#: stock/serializers.py:931 stock/serializers.py:1173
+#: build/serializers.py:423 build/serializers.py:496 order/serializers.py:493
+#: order/serializers.py:612 order/serializers.py:1594 part/serializers.py:916
+#: stock/serializers.py:401 stock/serializers.py:537 stock/serializers.py:618
+#: stock/serializers.py:1048 stock/serializers.py:1290
#: stock/templates/stock/item_base.html:390
#: templates/js/translated/barcode.js:530
-#: templates/js/translated/barcode.js:778 templates/js/translated/build.js:967
-#: templates/js/translated/build.js:2006
-#: templates/js/translated/purchase_order.js:1148
-#: templates/js/translated/purchase_order.js:1238
-#: templates/js/translated/sales_order.js:1497
-#: templates/js/translated/sales_order.js:1605
-#: templates/js/translated/sales_order.js:1613
-#: templates/js/translated/sales_order.js:1692
-#: templates/js/translated/stock.js:645 templates/js/translated/stock.js:811
-#: templates/js/translated/stock.js:1023 templates/js/translated/stock.js:1937
-#: templates/js/translated/stock.js:2608
+#: templates/js/translated/barcode.js:778 templates/js/translated/build.js:980
+#: templates/js/translated/build.js:2298
+#: templates/js/translated/purchase_order.js:1163
+#: templates/js/translated/purchase_order.js:1253
+#: templates/js/translated/sales_order.js:1509
+#: templates/js/translated/sales_order.js:1617
+#: templates/js/translated/sales_order.js:1625
+#: templates/js/translated/sales_order.js:1704
+#: templates/js/translated/stock.js:644 templates/js/translated/stock.js:810
+#: templates/js/translated/stock.js:1022 templates/js/translated/stock.js:2094
+#: templates/js/translated/stock.js:2739
msgid "Location"
msgstr "Ubicación"
-#: build/serializers.py:416
+#: build/serializers.py:424
msgid "Stock location for scrapped outputs"
msgstr ""
-#: build/serializers.py:422
+#: build/serializers.py:430
msgid "Discard Allocations"
msgstr ""
-#: build/serializers.py:423
+#: build/serializers.py:431
msgid "Discard any stock allocations for scrapped outputs"
msgstr ""
-#: build/serializers.py:428
+#: build/serializers.py:436
msgid "Reason for scrapping build output(s)"
msgstr ""
-#: build/serializers.py:489
+#: build/serializers.py:497
msgid "Location for completed build outputs"
msgstr "Ubicación para las salidas de construcción completadas"
-#: build/serializers.py:495 build/templates/build/build_base.html:151
-#: build/templates/build/detail.html:62 order/models.py:791
-#: order/models.py:1750 order/serializers.py:524 stock/admin.py:106
-#: stock/templates/stock/item_base.html:423
-#: templates/js/translated/barcode.js:252 templates/js/translated/build.js:2897
-#: templates/js/translated/purchase_order.js:1278
-#: templates/js/translated/purchase_order.js:1682
-#: templates/js/translated/return_order.js:319
-#: templates/js/translated/sales_order.js:807
-#: templates/js/translated/stock.js:1912 templates/js/translated/stock.js:2732
-#: templates/js/translated/stock.js:2859
+#: build/serializers.py:503 build/templates/build/build_base.html:152
+#: build/templates/build/detail.html:62 order/models.py:804
+#: order/models.py:1763 order/serializers.py:530 stock/admin.py:106
+#: stock/serializers.py:677 stock/templates/stock/item_base.html:423
+#: templates/js/translated/barcode.js:252 templates/js/translated/build.js:2114
+#: templates/js/translated/purchase_order.js:1293
+#: templates/js/translated/purchase_order.js:1697
+#: templates/js/translated/return_order.js:331
+#: templates/js/translated/sales_order.js:819
+#: templates/js/translated/stock.js:2069 templates/js/translated/stock.js:2863
+#: templates/js/translated/stock.js:2986
msgid "Status"
msgstr "Estado"
-#: build/serializers.py:501
+#: build/serializers.py:509
msgid "Accept Incomplete Allocation"
msgstr "Aceptar Asignación Incompleta"
-#: build/serializers.py:502
+#: build/serializers.py:510
msgid "Complete outputs if stock has not been fully allocated"
msgstr "Completar salidas si el inventario no se ha asignado completamente"
-#: build/serializers.py:571
+#: build/serializers.py:579
msgid "Remove Allocated Stock"
msgstr "Quitar inventario asignado"
-#: build/serializers.py:572
+#: build/serializers.py:580
msgid "Subtract any stock which has already been allocated to this build"
msgstr "Resta cualquier existencia que ya ha sido asignado a esta versión"
-#: build/serializers.py:578
+#: build/serializers.py:586
msgid "Remove Incomplete Outputs"
msgstr "Eliminar salidas incompletas"
-#: build/serializers.py:579
+#: build/serializers.py:587
msgid "Delete any build outputs which have not been completed"
msgstr "Eliminar cualquier salida de construcción que no se haya completado"
-#: build/serializers.py:606
+#: build/serializers.py:614
msgid "Not permitted"
msgstr "No permitido"
-#: build/serializers.py:607
+#: build/serializers.py:615
msgid "Accept as consumed by this build order"
msgstr "Aceptar como consumido por este pedido de construcción"
-#: build/serializers.py:608
+#: build/serializers.py:616
msgid "Deallocate before completing this build order"
msgstr "Liberar antes de completar esta orden de construcción"
-#: build/serializers.py:631
+#: build/serializers.py:639
msgid "Overallocated Stock"
msgstr "Stock sobreasignado"
-#: build/serializers.py:633
+#: build/serializers.py:641
msgid "How do you want to handle extra stock items assigned to the build order"
msgstr "Cómo quieres manejar los artículos extra de inventario asignados a la orden de construcción"
-#: build/serializers.py:643
+#: build/serializers.py:651
msgid "Some stock items have been overallocated"
msgstr "Algunos artículos de inventario han sido sobreasignados"
-#: build/serializers.py:648
+#: build/serializers.py:656
msgid "Accept Unallocated"
msgstr "Aceptar no asignado"
-#: build/serializers.py:649
+#: build/serializers.py:657
msgid "Accept that stock items have not been fully allocated to this build order"
msgstr "Aceptar que los artículos de stock no se han asignado completamente a este pedido de construcción"
-#: build/serializers.py:659 templates/js/translated/build.js:295
+#: build/serializers.py:667 templates/js/translated/build.js:304
msgid "Required stock has not been fully allocated"
msgstr "El stock requerido no ha sido completamente asignado"
-#: build/serializers.py:664 order/serializers.py:261 order/serializers.py:1127
+#: build/serializers.py:672 order/serializers.py:267 order/serializers.py:1133
msgid "Accept Incomplete"
msgstr "Aceptar incompleto"
-#: build/serializers.py:665
+#: build/serializers.py:673
msgid "Accept that the required number of build outputs have not been completed"
msgstr "Aceptar que el número requerido de salidas de construcción no se han completado"
-#: build/serializers.py:675 templates/js/translated/build.js:299
+#: build/serializers.py:683 templates/js/translated/build.js:308
msgid "Required build quantity has not been completed"
msgstr "La cantidad de construcción requerida aún no se ha completado"
-#: build/serializers.py:684 templates/js/translated/build.js:283
+#: build/serializers.py:692 templates/js/translated/build.js:292
msgid "Build order has incomplete outputs"
msgstr "El orden de construcción tiene salidas incompletas"
-#: build/serializers.py:714 build/serializers.py:768 part/models.py:3686
-#: part/models.py:4069
-msgid "BOM Item"
-msgstr "Item de Lista de Materiales"
+#: build/serializers.py:722
+msgid "Build Line"
+msgstr ""
-#: build/serializers.py:724
+#: build/serializers.py:732
msgid "Build output"
msgstr "Resultado de la construcción o armado"
-#: build/serializers.py:732
+#: build/serializers.py:740
msgid "Build output must point to the same build"
msgstr "La salida de la construcción debe apuntar a la misma construcción"
-#: build/serializers.py:782
+#: build/serializers.py:776
+msgid "Build Line Item"
+msgstr ""
+
+#: build/serializers.py:790
msgid "bom_item.part must point to the same part as the build order"
msgstr "bom_item.part debe apuntar a la misma parte que la orden de construcción"
-#: build/serializers.py:797 stock/serializers.py:783
+#: build/serializers.py:805 stock/serializers.py:900
msgid "Item must be in stock"
msgstr "El artículo debe estar en stock"
-#: build/serializers.py:846 order/serializers.py:1117
+#: build/serializers.py:853 order/serializers.py:1123
#, python-brace-format
msgid "Available quantity ({q}) exceeded"
msgstr "Cantidad disponible ({q}) excedida"
-#: build/serializers.py:852
+#: build/serializers.py:859
msgid "Build output must be specified for allocation of tracked parts"
msgstr "La salida de la construcción debe especificarse para la asignación de partes rastreadas"
-#: build/serializers.py:859
+#: build/serializers.py:866
msgid "Build output cannot be specified for allocation of untracked parts"
msgstr "La salida de construcción no se puede especificar para la asignación de partes no rastreadas"
-#: build/serializers.py:864
+#: build/serializers.py:871
msgid "This stock item has already been allocated to this build output"
msgstr "Este artículo de stock ya ha sido asignado a esta salida de construcción"
-#: build/serializers.py:887 order/serializers.py:1401
+#: build/serializers.py:894 order/serializers.py:1407
msgid "Allocation items must be provided"
msgstr "Debe proporcionarse la adjudicación de artículos"
-#: build/serializers.py:943
+#: build/serializers.py:947
msgid "Stock location where parts are to be sourced (leave blank to take from any location)"
msgstr "Ubicación de inventario donde las partes deben ser obtenidas (dejar en blanco para tomar de cualquier ubicación)"
-#: build/serializers.py:951
+#: build/serializers.py:955
msgid "Exclude Location"
msgstr "Excluir ubicación"
-#: build/serializers.py:952
+#: build/serializers.py:956
msgid "Exclude stock items from this selected location"
msgstr "Excluir artículos de stock de esta ubicación seleccionada"
-#: build/serializers.py:957
+#: build/serializers.py:961
msgid "Interchangeable Stock"
msgstr "Stock intercambiable"
-#: build/serializers.py:958
+#: build/serializers.py:962
msgid "Stock items in multiple locations can be used interchangeably"
msgstr "Los artículos de inventario en múltiples ubicaciones se pueden utilizar de forma intercambiable"
-#: build/serializers.py:963
+#: build/serializers.py:967
msgid "Substitute Stock"
msgstr "Sustituir stock"
-#: build/serializers.py:964
+#: build/serializers.py:968
msgid "Allow allocation of substitute parts"
msgstr "Permitir la asignación de partes sustitutas"
-#: build/serializers.py:969
+#: build/serializers.py:973
msgid "Optional Items"
msgstr "Elementos opcionales"
-#: build/serializers.py:970
+#: build/serializers.py:974
msgid "Allocate optional BOM items to build order"
msgstr "Asignar artículos de la BOM opcionales para construir la orden"
@@ -1540,6 +1589,7 @@ msgstr "Miniatura de parte"
#: part/templates/part/part_base.html:43
#: stock/templates/stock/item_base.html:41
#: stock/templates/stock/location.html:54
+#: templates/js/translated/filters.js:336
msgid "Barcode actions"
msgstr "Acciones para código de barras"
@@ -1618,69 +1668,67 @@ msgstr "Completar construcción"
msgid "Build Description"
msgstr "Descripción de Construcción"
-#: build/templates/build/build_base.html:117
+#: build/templates/build/build_base.html:118
msgid "No build outputs have been created for this build order"
msgstr "No se han creado salidas para esta orden de construcción"
-#: build/templates/build/build_base.html:124
+#: build/templates/build/build_base.html:125
msgid "Build Order is ready to mark as completed"
msgstr "Orden de construcción está lista para marcar como completada"
-#: build/templates/build/build_base.html:129
+#: build/templates/build/build_base.html:130
msgid "Build Order cannot be completed as outstanding outputs remain"
msgstr "La orden de construcción no se puede completar ya que existen salidas pendientes"
-#: build/templates/build/build_base.html:134
+#: build/templates/build/build_base.html:135
msgid "Required build quantity has not yet been completed"
msgstr "La cantidad de construcción requerida aún no se ha completado"
-#: build/templates/build/build_base.html:139
+#: build/templates/build/build_base.html:140
msgid "Stock has not been fully allocated to this Build Order"
msgstr "Stock no ha sido asignado completamente a este pedido de construcción"
-#: build/templates/build/build_base.html:160
-#: build/templates/build/detail.html:138 order/models.py:240
-#: order/models.py:1099 order/templates/order/order_base.html:190
+#: build/templates/build/build_base.html:161
+#: build/templates/build/detail.html:138 order/models.py:244
+#: order/models.py:1112 order/templates/order/order_base.html:186
#: order/templates/order/return_order_base.html:165
#: order/templates/order/sales_order_base.html:193
#: report/templates/report/inventree_build_order_base.html:125
-#: templates/js/translated/build.js:2945 templates/js/translated/part.js:1802
-#: templates/js/translated/purchase_order.js:1699
-#: templates/js/translated/purchase_order.js:2115
-#: templates/js/translated/return_order.js:335
-#: templates/js/translated/return_order.js:735
-#: templates/js/translated/sales_order.js:823
-#: templates/js/translated/sales_order.js:1847
+#: templates/js/translated/build.js:2162 templates/js/translated/part.js:1801
+#: templates/js/translated/purchase_order.js:1714
+#: templates/js/translated/purchase_order.js:2125
+#: templates/js/translated/return_order.js:347
+#: templates/js/translated/return_order.js:747
+#: templates/js/translated/sales_order.js:835
+#: templates/js/translated/sales_order.js:1859
msgid "Target Date"
msgstr "Fecha objetivo"
-#: build/templates/build/build_base.html:165
+#: build/templates/build/build_base.html:166
#, python-format
msgid "This build was due on %(target)s"
msgstr "Esta construcción vence el %(target)s"
-#: build/templates/build/build_base.html:165
-#: build/templates/build/build_base.html:222
-#: order/templates/order/order_base.html:126
+#: build/templates/build/build_base.html:166
+#: build/templates/build/build_base.html:223
+#: order/templates/order/order_base.html:122
#: order/templates/order/return_order_base.html:118
#: order/templates/order/sales_order_base.html:123
-#: templates/js/translated/table_filters.js:68
-#: templates/js/translated/table_filters.js:454
-#: templates/js/translated/table_filters.js:539
-#: templates/js/translated/table_filters.js:580
+#: templates/js/translated/table_filters.js:74
+#: templates/js/translated/table_filters.js:460
+#: templates/js/translated/table_filters.js:561
+#: templates/js/translated/table_filters.js:602
msgid "Overdue"
msgstr "Vencido"
-#: build/templates/build/build_base.html:177
-#: build/templates/build/detail.html:67 build/templates/build/detail.html:149
-#: order/templates/order/sales_order_base.html:203
-#: templates/js/translated/table_filters.js:602
-msgid "Completed"
-msgstr "Completados"
+#: build/templates/build/build_base.html:178
+#: build/templates/build/detail.html:67 build/templates/build/sidebar.html:13
+msgid "Completed Outputs"
+msgstr "Salidas completadas"
-#: build/templates/build/build_base.html:190
-#: build/templates/build/detail.html:101 order/api.py:1454 order/models.py:1304
-#: order/models.py:1403 order/models.py:1551
+#: build/templates/build/build_base.html:191
+#: build/templates/build/detail.html:101 order/api.py:1454 order/models.py:1317
+#: order/models.py:1416 order/models.py:1564
#: order/templates/order/sales_order_base.html:9
#: order/templates/order/sales_order_base.html:28
#: report/templates/report/inventree_build_order_base.html:135
@@ -1688,32 +1736,32 @@ msgstr "Completados"
#: stock/templates/stock/item_base.html:370
#: templates/email/overdue_sales_order.html:15
#: templates/js/translated/pricing.js:915
-#: templates/js/translated/sales_order.js:757
-#: templates/js/translated/sales_order.js:980
-#: templates/js/translated/stock.js:2661
+#: templates/js/translated/sales_order.js:769
+#: templates/js/translated/sales_order.js:992
+#: templates/js/translated/stock.js:2792
msgid "Sales Order"
msgstr "Orden de Venta"
-#: build/templates/build/build_base.html:197
+#: build/templates/build/build_base.html:198
#: build/templates/build/detail.html:115
#: report/templates/report/inventree_build_order_base.html:152
msgid "Issued By"
msgstr "Emitido por"
-#: build/templates/build/build_base.html:211
-#: build/templates/build/detail.html:94 templates/js/translated/build.js:2862
+#: build/templates/build/build_base.html:212
+#: build/templates/build/detail.html:94 templates/js/translated/build.js:2079
msgid "Priority"
msgstr "Prioridad"
-#: build/templates/build/build_base.html:273
+#: build/templates/build/build_base.html:274
msgid "Delete Build Order"
msgstr "Eliminar Orden de Trabajo"
-#: build/templates/build/build_base.html:283
+#: build/templates/build/build_base.html:284
msgid "Build Order QR Code"
msgstr "Código QR del pedido de contrucción"
-#: build/templates/build/build_base.html:295
+#: build/templates/build/build_base.html:296
msgid "Link Barcode to Build Order"
msgstr "Enlazar código de barras a orden de construcción"
@@ -1729,8 +1777,8 @@ msgstr "Fuente de stock"
msgid "Stock can be taken from any available location."
msgstr "Las existencias se pueden tomar desde cualquier ubicación disponible."
-#: build/templates/build/detail.html:49 order/models.py:1222
-#: templates/js/translated/purchase_order.js:2157
+#: build/templates/build/detail.html:49 order/models.py:1235
+#: templates/js/translated/purchase_order.js:2167
msgid "Destination"
msgstr "Destinación"
@@ -1744,21 +1792,21 @@ msgstr "Partes asignadas"
#: build/templates/build/detail.html:80 stock/admin.py:105
#: stock/templates/stock/item_base.html:163
-#: templates/js/translated/build.js:1432
-#: templates/js/translated/model_renderers.js:212
-#: templates/js/translated/purchase_order.js:1244
-#: templates/js/translated/stock.js:1093 templates/js/translated/stock.js:1926
-#: templates/js/translated/stock.js:2866
-#: templates/js/translated/table_filters.js:259
-#: templates/js/translated/table_filters.js:350
+#: templates/js/translated/build.js:1319
+#: templates/js/translated/model_renderers.js:226
+#: templates/js/translated/purchase_order.js:1259
+#: templates/js/translated/stock.js:1092 templates/js/translated/stock.js:2083
+#: templates/js/translated/stock.js:2993
+#: templates/js/translated/table_filters.js:265
+#: templates/js/translated/table_filters.js:356
msgid "Batch"
msgstr "Lote"
#: build/templates/build/detail.html:133
-#: order/templates/order/order_base.html:177
+#: order/templates/order/order_base.html:173
#: order/templates/order/return_order_base.html:152
#: order/templates/order/sales_order_base.html:187
-#: templates/js/translated/build.js:2905
+#: templates/js/translated/build.js:2122
msgid "Created"
msgstr "Creado"
@@ -1766,147 +1814,106 @@ msgstr "Creado"
msgid "No target date set"
msgstr "Sin fecha objetivo"
+#: build/templates/build/detail.html:149
+#: order/templates/order/sales_order_base.html:203
+#: templates/js/translated/table_filters.js:624
+msgid "Completed"
+msgstr "Completados"
+
#: build/templates/build/detail.html:153
msgid "Build not complete"
msgstr "Trabajo incompleto"
-#: build/templates/build/detail.html:164 build/templates/build/sidebar.html:19
+#: build/templates/build/detail.html:164 build/templates/build/sidebar.html:17
msgid "Child Build Orders"
msgstr "Órdenes de Trabajo herederas"
-#: build/templates/build/detail.html:179
+#: build/templates/build/detail.html:177
msgid "Allocate Stock to Build"
msgstr "Asignar Stock a Trabajo"
-#: build/templates/build/detail.html:183 templates/js/translated/build.js:2276
-msgid "Unallocate stock"
-msgstr "Desasignar stock"
+#: build/templates/build/detail.html:181
+msgid "Deallocate stock"
+msgstr ""
+
+#: build/templates/build/detail.html:182
+msgid "Deallocate Stock"
+msgstr ""
#: build/templates/build/detail.html:184
-msgid "Unallocate Stock"
-msgstr "Desasignar stock"
-
-#: build/templates/build/detail.html:186
msgid "Automatically allocate stock to build"
msgstr "Asignar existencias automáticamente a contrucción"
-#: build/templates/build/detail.html:187
+#: build/templates/build/detail.html:185
msgid "Auto Allocate"
msgstr "Auto asignar"
-#: build/templates/build/detail.html:189
+#: build/templates/build/detail.html:187
msgid "Manually allocate stock to build"
msgstr "Asignar existencias manualmente a construcción"
-#: build/templates/build/detail.html:190 build/templates/build/sidebar.html:8
+#: build/templates/build/detail.html:188 build/templates/build/sidebar.html:8
msgid "Allocate Stock"
msgstr "Asignar stock"
-#: build/templates/build/detail.html:193
+#: build/templates/build/detail.html:191
msgid "Order required parts"
msgstr "Pedir partes necesarias"
-#: build/templates/build/detail.html:194
-#: company/templates/company/detail.html:38
-#: company/templates/company/detail.html:86
-#: part/templates/part/category.html:184
-#: templates/js/translated/purchase_order.js:789
+#: build/templates/build/detail.html:192
+#: templates/js/translated/purchase_order.js:800
msgid "Order Parts"
msgstr "Partes del pedido"
-#: build/templates/build/detail.html:206
-msgid "Untracked stock has been fully allocated for this Build Order"
-msgstr "Stock no ha sido asignado completamente a esta Orden de Trabajo"
-
#: build/templates/build/detail.html:210
-msgid "Untracked stock has not been fully allocated for this Build Order"
-msgstr "El stock sin rastrear no ha sido asignado completamente para esta Orden de Trabajo"
-
-#: build/templates/build/detail.html:217
-msgid "Allocate selected items"
-msgstr "Asignar partes seleccionadas"
-
-#: build/templates/build/detail.html:227
-msgid "This Build Order does not have any associated untracked BOM items"
-msgstr "Esta Orden de Trabajo no tiene ningún objeto BOM sin seguimiento asociados"
-
-#: build/templates/build/detail.html:236
msgid "Incomplete Build Outputs"
msgstr "Salidas de Trabajo incompletas"
-#: build/templates/build/detail.html:240
+#: build/templates/build/detail.html:214
msgid "Create new build output"
msgstr "Crear nueva salida de trabajo"
-#: build/templates/build/detail.html:241
+#: build/templates/build/detail.html:215
msgid "New Build Output"
msgstr "Nueva Salida de Trabajo"
-#: build/templates/build/detail.html:255
-msgid "Output Actions"
-msgstr "Acciones de salida"
-
-#: build/templates/build/detail.html:260
-msgid "Complete selected build outputs"
-msgstr "Completa las salidas seleccionadas"
-
-#: build/templates/build/detail.html:261
-msgid "Complete outputs"
-msgstr "Completar salidas"
-
-#: build/templates/build/detail.html:265
-msgid "Scrap selected build outputs"
-msgstr ""
-
-#: build/templates/build/detail.html:266
-msgid "Scrap outputs"
-msgstr ""
-
-#: build/templates/build/detail.html:270
-msgid "Delete selected build outputs"
-msgstr "Eliminar salidas seleccionadas"
-
-#: build/templates/build/detail.html:271
-msgid "Delete outputs"
-msgstr "Eliminar salidas"
-
-#: build/templates/build/detail.html:288 build/templates/build/sidebar.html:11
+#: build/templates/build/detail.html:232 build/templates/build/sidebar.html:15
msgid "Consumed Stock"
msgstr ""
-#: build/templates/build/detail.html:300
+#: build/templates/build/detail.html:244
msgid "Completed Build Outputs"
msgstr "Salidas de Trabajo Completadas"
-#: build/templates/build/detail.html:312 build/templates/build/sidebar.html:21
-#: company/templates/company/detail.html:261
-#: company/templates/company/manufacturer_part.html:151
+#: build/templates/build/detail.html:256 build/templates/build/sidebar.html:19
+#: company/templates/company/detail.html:229
+#: company/templates/company/manufacturer_part.html:141
#: company/templates/company/manufacturer_part_sidebar.html:9
-#: company/templates/company/sidebar.html:37
+#: company/templates/company/sidebar.html:39
#: order/templates/order/po_sidebar.html:9
-#: order/templates/order/purchase_order_detail.html:102
-#: order/templates/order/return_order_detail.html:74
+#: order/templates/order/purchase_order_detail.html:84
+#: order/templates/order/return_order_detail.html:70
#: order/templates/order/return_order_sidebar.html:7
-#: order/templates/order/sales_order_detail.html:134
-#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:234
-#: part/templates/part/part_sidebar.html:61 stock/templates/stock/item.html:117
+#: order/templates/order/sales_order_detail.html:124
+#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:217
+#: part/templates/part/part_sidebar.html:61 stock/templates/stock/item.html:109
#: stock/templates/stock/stock_sidebar.html:23
msgid "Attachments"
msgstr "Adjuntos"
-#: build/templates/build/detail.html:327
+#: build/templates/build/detail.html:271
msgid "Build Notes"
msgstr "Notas del Trabajo"
-#: build/templates/build/detail.html:502
+#: build/templates/build/detail.html:425
msgid "Allocation Complete"
msgstr "Asignación completa"
-#: build/templates/build/detail.html:503
-msgid "All untracked stock items have been allocated"
-msgstr "Todos los artículos de stock no rastreados han sido asignados"
+#: build/templates/build/detail.html:426
+msgid "All lines have been fully allocated"
+msgstr ""
-#: build/templates/build/index.html:18 part/templates/part/detail.html:340
+#: build/templates/build/index.html:18 part/templates/part/detail.html:319
msgid "New Build Order"
msgstr "Nueva Orden de Trabajo"
@@ -1914,14 +1921,10 @@ msgstr "Nueva Orden de Trabajo"
msgid "Build Order Details"
msgstr "Configuración de Pedido de Trabajo"
-#: build/templates/build/sidebar.html:14
+#: build/templates/build/sidebar.html:10
msgid "Incomplete Outputs"
msgstr "Salidas incompletas"
-#: build/templates/build/sidebar.html:17
-msgid "Completed Outputs"
-msgstr "Salidas completadas"
-
#: common/files.py:63
#, python-brace-format
msgid "Unsupported file format: {fmt}"
@@ -1968,16 +1971,6 @@ msgstr "Actualizado"
msgid "Timestamp of last update"
msgstr "Fecha y hora de la última actualización"
-#: common/models.py:104 order/admin.py:17 order/models.py:234
-#: templates/InvenTree/settings/settings_staff_js.html:70
-#: templates/js/translated/purchase_order.js:1670
-#: templates/js/translated/return_order.js:306
-#: templates/js/translated/sales_order.js:794
-#: templates/js/translated/table_filters.js:24
-#: templates/project_code_data.html:6
-msgid "Project Code"
-msgstr "Código del proyecto"
-
#: common/models.py:105
msgid "Unique project code"
msgstr "Código único del proyecto"
@@ -2261,9 +2254,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:1162 part/admin.py:55 part/models.py:3560
-#: report/models.py:166 templates/js/translated/table_filters.js:109
-#: templates/js/translated/table_filters.js:680
+#: common/models.py:1162 part/admin.py:55 part/models.py:3594
+#: report/models.py:166 templates/js/translated/table_filters.js:115
+#: templates/js/translated/table_filters.js:702
msgid "Template"
msgstr "Plantilla"
@@ -2271,10 +2264,10 @@ msgstr "Plantilla"
msgid "Parts are templates by default"
msgstr "Las partes son plantillas por defecto"
-#: common/models.py:1169 part/admin.py:51 part/admin.py:283 part/models.py:996
-#: templates/js/translated/bom.js:1598
-#: templates/js/translated/table_filters.js:276
-#: templates/js/translated/table_filters.js:634
+#: common/models.py:1169 part/admin.py:51 part/admin.py:283 part/models.py:997
+#: templates/js/translated/bom.js:1618
+#: templates/js/translated/table_filters.js:282
+#: templates/js/translated/table_filters.js:656
msgid "Assembly"
msgstr "Montaje"
@@ -2282,8 +2275,8 @@ msgstr "Montaje"
msgid "Parts can be assembled from other components by default"
msgstr "Las partes pueden ser ensambladas desde otros componentes por defecto"
-#: common/models.py:1176 part/admin.py:52 part/models.py:1002
-#: templates/js/translated/table_filters.js:642
+#: common/models.py:1176 part/admin.py:52 part/models.py:1003
+#: templates/js/translated/table_filters.js:664
msgid "Component"
msgstr "Componente"
@@ -2291,7 +2284,7 @@ msgstr "Componente"
msgid "Parts can be used as sub-components by default"
msgstr "Las partes pueden ser usadas como subcomponentes por defecto"
-#: common/models.py:1183 part/admin.py:53 part/models.py:1013
+#: common/models.py:1183 part/admin.py:53 part/models.py:1014
msgid "Purchaseable"
msgstr "Comprable"
@@ -2299,8 +2292,8 @@ msgstr "Comprable"
msgid "Parts are purchaseable by default"
msgstr "Las partes son comprables por defecto"
-#: common/models.py:1190 part/admin.py:54 part/models.py:1018
-#: templates/js/translated/table_filters.js:668
+#: common/models.py:1190 part/admin.py:54 part/models.py:1019
+#: templates/js/translated/table_filters.js:690
msgid "Salable"
msgstr "Vendible"
@@ -2308,10 +2301,10 @@ msgstr "Vendible"
msgid "Parts are salable by default"
msgstr "Las partes se pueden vender por defecto"
-#: common/models.py:1197 part/admin.py:56 part/models.py:1008
-#: templates/js/translated/table_filters.js:117
-#: templates/js/translated/table_filters.js:193
-#: templates/js/translated/table_filters.js:684
+#: common/models.py:1197 part/admin.py:56 part/models.py:1009
+#: templates/js/translated/table_filters.js:123
+#: templates/js/translated/table_filters.js:199
+#: templates/js/translated/table_filters.js:706
msgid "Trackable"
msgstr "Rastreable"
@@ -2319,10 +2312,10 @@ msgstr "Rastreable"
msgid "Parts are trackable by default"
msgstr "Las partes son rastreables por defecto"
-#: common/models.py:1204 part/admin.py:57 part/models.py:1028
+#: common/models.py:1204 part/admin.py:57 part/models.py:1029
#: part/templates/part/part_base.html:156
-#: templates/js/translated/table_filters.js:113
-#: templates/js/translated/table_filters.js:688
+#: templates/js/translated/table_filters.js:119
+#: templates/js/translated/table_filters.js:710
msgid "Virtual"
msgstr "Virtual"
@@ -2354,7 +2347,7 @@ msgstr "Datos iniciales de existencias"
msgid "Allow creation of initial stock when adding a new part"
msgstr "Permitir la creación del stock inicial al añadir una nueva parte"
-#: common/models.py:1232 templates/js/translated/part.js:108
+#: common/models.py:1232 templates/js/translated/part.js:107
msgid "Initial Supplier Data"
msgstr "Datos iniciales del proveedor"
@@ -2603,181 +2596,181 @@ msgid "Stock location default icon (empty means no icon)"
msgstr "Icono por defecto de ubicación de almacén (vacío significa que no hay icono)"
#: common/models.py:1471
-msgid "Build Order Reference Pattern"
+msgid "Show Installed Stock Items"
msgstr ""
#: common/models.py:1472
+msgid "Display installed stock items in stock tables"
+msgstr ""
+
+#: common/models.py:1478
+msgid "Build Order Reference Pattern"
+msgstr ""
+
+#: common/models.py:1479
msgid "Required pattern for generating Build Order reference field"
msgstr "Patrón requerido para generar el campo de referencia de la Orden de Ensamblado"
-#: common/models.py:1478
+#: common/models.py:1485
msgid "Enable Return Orders"
msgstr "Habilitar órdenes de devolución"
-#: common/models.py:1479
+#: common/models.py:1486
msgid "Enable return order functionality in the user interface"
msgstr "Habilitar la funcionalidad de orden de devolución en la interfaz de usuario"
-#: common/models.py:1485
+#: common/models.py:1492
msgid "Return Order Reference Pattern"
msgstr "Patrón de referencia de orden de devolución"
-#: common/models.py:1486
+#: common/models.py:1493
msgid "Required pattern for generating Return Order reference field"
msgstr "Patrón requerido para generar el campo de referencia de la orden de devolución"
-#: common/models.py:1492
+#: common/models.py:1499
msgid "Edit Completed Return Orders"
msgstr "Editar ordenes de devolución completadas"
-#: common/models.py:1493
+#: common/models.py:1500
msgid "Allow editing of return orders after they have been completed"
msgstr "Permitir la edición de ordenes de devolución después de que hayan sido completados"
-#: common/models.py:1499
+#: common/models.py:1506
msgid "Sales Order Reference Pattern"
msgstr ""
-#: common/models.py:1500
+#: common/models.py:1507
msgid "Required pattern for generating Sales Order reference field"
msgstr "Patrón requerido para generar el campo de referencia de la orden de venta"
-#: common/models.py:1506
+#: common/models.py:1513
msgid "Sales Order Default Shipment"
msgstr ""
-#: common/models.py:1507
+#: common/models.py:1514
msgid "Enable creation of default shipment with sales orders"
msgstr ""
-#: common/models.py:1513
+#: common/models.py:1520
msgid "Edit Completed Sales Orders"
msgstr ""
-#: common/models.py:1514
+#: common/models.py:1521
msgid "Allow editing of sales orders after they have been shipped or completed"
msgstr ""
-#: common/models.py:1520
+#: common/models.py:1527
msgid "Purchase Order Reference Pattern"
msgstr ""
-#: common/models.py:1521
+#: common/models.py:1528
msgid "Required pattern for generating Purchase Order reference field"
msgstr ""
-#: common/models.py:1527
+#: common/models.py:1534
msgid "Edit Completed Purchase Orders"
msgstr ""
-#: common/models.py:1528
+#: common/models.py:1535
msgid "Allow editing of purchase orders after they have been shipped or completed"
msgstr ""
-#: common/models.py:1535
+#: common/models.py:1542
msgid "Enable password forgot"
msgstr "Habilitar función de contraseña olvidada"
-#: common/models.py:1536
+#: common/models.py:1543
msgid "Enable password forgot function on the login pages"
msgstr "Activar la función olvido de contraseña en las páginas de inicio de sesión"
-#: common/models.py:1542
+#: common/models.py:1549
msgid "Enable registration"
msgstr "Habilitar registro"
-#: common/models.py:1543
+#: common/models.py:1550
msgid "Enable self-registration for users on the login pages"
msgstr "Activar auto-registro para usuarios en las páginas de inicio de sesión"
-#: common/models.py:1549
+#: common/models.py:1556
msgid "Enable SSO"
msgstr "Habilitar SSO"
-#: common/models.py:1550
+#: common/models.py:1557
msgid "Enable SSO on the login pages"
msgstr "Habilitar SSO en las páginas de inicio de sesión"
-#: common/models.py:1556
+#: common/models.py:1563
msgid "Enable SSO registration"
msgstr "Habilitar registro SSO"
-#: common/models.py:1557
+#: common/models.py:1564
msgid "Enable self-registration via SSO for users on the login pages"
msgstr "Activar autoregistro a través de SSO para usuarios en las páginas de inicio de sesión"
-#: common/models.py:1563
+#: common/models.py:1570
msgid "Email required"
msgstr "Email requerido"
-#: common/models.py:1564
+#: common/models.py:1571
msgid "Require user to supply mail on signup"
msgstr "Requiere usuario para suministrar correo al registrarse"
-#: common/models.py:1570
+#: common/models.py:1577
msgid "Auto-fill SSO users"
msgstr "Auto-rellenar usuarios SSO"
-#: common/models.py:1571
+#: common/models.py:1578
msgid "Automatically fill out user-details from SSO account-data"
msgstr "Rellenar automáticamente los datos de usuario de la cuenta SSO"
-#: common/models.py:1577
+#: common/models.py:1584
msgid "Mail twice"
msgstr "Correo dos veces"
-#: common/models.py:1578
+#: common/models.py:1585
msgid "On signup ask users twice for their mail"
msgstr "Al registrarse pregunte dos veces a los usuarios por su correo"
-#: common/models.py:1584
+#: common/models.py:1591
msgid "Password twice"
msgstr "Contraseña dos veces"
-#: common/models.py:1585
+#: common/models.py:1592
msgid "On signup ask users twice for their password"
msgstr "Al registrarse, preguntar dos veces a los usuarios por su contraseña"
-#: common/models.py:1591
+#: common/models.py:1598
msgid "Allowed domains"
msgstr "Dominios permitidos"
-#: common/models.py:1592
+#: common/models.py:1599
msgid "Restrict signup to certain domains (comma-separated, starting with @)"
msgstr ""
-#: common/models.py:1598
+#: common/models.py:1605
msgid "Group on signup"
msgstr "Grupo al registrarse"
-#: common/models.py:1599
+#: common/models.py:1606
msgid "Group to which new users are assigned on registration"
msgstr "Grupo al que se asignan nuevos usuarios al registrarse"
-#: common/models.py:1605
+#: common/models.py:1612
msgid "Enforce MFA"
msgstr "Forzar MFA"
-#: common/models.py:1606
+#: common/models.py:1613
msgid "Users must use multifactor security."
msgstr "Los usuarios deben utilizar seguridad multifactor."
-#: common/models.py:1612
+#: common/models.py:1619
msgid "Check plugins on startup"
msgstr "Comprobar complementos al iniciar"
-#: common/models.py:1613
+#: common/models.py:1620
msgid "Check that all plugins are installed on startup - enable in container environments"
msgstr "Comprobar que todos los complementos están instalados en el arranque - habilitar en entornos de contenedores"
-#: common/models.py:1620
-msgid "Check plugin signatures"
-msgstr "Comprobar las firmas del complemento"
-
-#: common/models.py:1621
-msgid "Check and show signatures for plugins"
-msgstr "Comprobar y mostrar firmas de complementos"
-
#: common/models.py:1628
msgid "Enable URL integration"
msgstr "Habilitar integración de URL"
@@ -2850,7 +2843,7 @@ msgstr "Intervalo de borrado de informe"
msgid "Stocktake reports will be deleted after specified number of days"
msgstr ""
-#: common/models.py:1710 common/models.py:2147
+#: common/models.py:1710 common/models.py:2133
msgid "Settings key (must be unique - case insensitive"
msgstr "Tecla de ajustes (debe ser única - mayúsculas y minúsculas"
@@ -2891,528 +2884,513 @@ msgid "Show latest parts on the homepage"
msgstr "Mostrar las últimas partes en la página de inicio"
#: common/models.py:1779
-msgid "Recent Part Count"
-msgstr "Conteo de Partes Recientes"
-
-#: common/models.py:1780
-msgid "Number of recent parts to display on index page"
-msgstr "Número de partes recientes a mostrar en la página de índice"
-
-#: common/models.py:1786
msgid "Show unvalidated BOMs"
msgstr "Mostrar BOMs no validadas"
-#: common/models.py:1787
+#: common/models.py:1780
msgid "Show BOMs that await validation on the homepage"
msgstr "Mostrar BOMs que esperan validación en la página de inicio"
-#: common/models.py:1793
+#: common/models.py:1786
msgid "Show recent stock changes"
msgstr "Mostrar cambios recientes de stock"
-#: common/models.py:1794
+#: common/models.py:1787
msgid "Show recently changed stock items on the homepage"
msgstr "Mostrar artículos de stock recientemente modificados en la página de inicio"
-#: common/models.py:1800
-msgid "Recent Stock Count"
-msgstr "Conteo Reciente de Stock"
-
-#: common/models.py:1801
-msgid "Number of recent stock items to display on index page"
-msgstr "Número de artículos de stock recientes a mostrar en la página de índice"
-
-#: common/models.py:1807
+#: common/models.py:1793
msgid "Show low stock"
msgstr "Mostrar stock bajo"
-#: common/models.py:1808
+#: common/models.py:1794
msgid "Show low stock items on the homepage"
msgstr "Mostrar artículos de stock bajo en la página de inicio"
-#: common/models.py:1814
+#: common/models.py:1800
msgid "Show depleted stock"
msgstr "Mostrar stock agotado"
-#: common/models.py:1815
+#: common/models.py:1801
msgid "Show depleted stock items on the homepage"
msgstr "Mostrar artículos agotados en la página de inicio"
-#: common/models.py:1821
+#: common/models.py:1807
msgid "Show needed stock"
msgstr "Mostrar stock necesario"
-#: common/models.py:1822
+#: common/models.py:1808
msgid "Show stock items needed for builds on the homepage"
msgstr "Mostrar artículos de stock necesarios para trabajos en la página de inicio"
-#: common/models.py:1828
+#: common/models.py:1814
msgid "Show expired stock"
msgstr "Mostrar stock caducado"
-#: common/models.py:1829
+#: common/models.py:1815
msgid "Show expired stock items on the homepage"
msgstr "Mostrar artículos de stock caducados en la página de inicio"
-#: common/models.py:1835
+#: common/models.py:1821
msgid "Show stale stock"
msgstr "Mostrar stock obsoleto"
-#: common/models.py:1836
+#: common/models.py:1822
msgid "Show stale stock items on the homepage"
msgstr "Mostrar artículos de stock obsoletos en la página de inicio"
-#: common/models.py:1842
+#: common/models.py:1828
msgid "Show pending builds"
msgstr "Mostrar trabajos pendientes"
-#: common/models.py:1843
+#: common/models.py:1829
msgid "Show pending builds on the homepage"
msgstr "Mostrar trabajos pendientes en la página de inicio"
-#: common/models.py:1849
+#: common/models.py:1835
msgid "Show overdue builds"
msgstr "Mostrar trabajos vencidos"
-#: common/models.py:1850
+#: common/models.py:1836
msgid "Show overdue builds on the homepage"
msgstr "Mostrar trabajos pendientes en la página de inicio"
-#: common/models.py:1856
+#: common/models.py:1842
msgid "Show outstanding POs"
msgstr "Mostrar Órdenes de Compra Pendientes"
-#: common/models.py:1857
+#: common/models.py:1843
msgid "Show outstanding POs on the homepage"
msgstr "Mostrar las OC destacadas en la página de inicio"
-#: common/models.py:1863
+#: common/models.py:1849
msgid "Show overdue POs"
msgstr "Mostrar OC atrasadas"
-#: common/models.py:1864
+#: common/models.py:1850
msgid "Show overdue POs on the homepage"
msgstr "Mostrar las OC vencidas en la página de inicio"
-#: common/models.py:1870
+#: common/models.py:1856
msgid "Show outstanding SOs"
msgstr "Mostrar OV pendiemtes"
-#: common/models.py:1871
+#: common/models.py:1857
msgid "Show outstanding SOs on the homepage"
msgstr "Mostrar OV pendientes en la página de inicio"
-#: common/models.py:1877
+#: common/models.py:1863
msgid "Show overdue SOs"
msgstr "Mostrar OV atrasadas"
-#: common/models.py:1878
+#: common/models.py:1864
msgid "Show overdue SOs on the homepage"
msgstr "Mostrar OV atrasadas en la página de inicio"
-#: common/models.py:1884
+#: common/models.py:1870
msgid "Show pending SO shipments"
msgstr ""
-#: common/models.py:1885
+#: common/models.py:1871
msgid "Show pending SO shipments on the homepage"
msgstr ""
-#: common/models.py:1891
+#: common/models.py:1877
msgid "Show News"
msgstr "Mostrar noticias"
-#: common/models.py:1892
+#: common/models.py:1878
msgid "Show news on the homepage"
msgstr "Mostrar las últimas novedades de InvenTree en la página de inicio"
-#: common/models.py:1898
+#: common/models.py:1884
msgid "Inline label display"
msgstr "Mostrar etiqueta interior"
-#: common/models.py:1899
+#: common/models.py:1885
msgid "Display PDF labels in the browser, instead of downloading as a file"
msgstr "Mostrar etiquetas PDF en el navegador, en lugar de descargar como un archivo"
-#: common/models.py:1905
+#: common/models.py:1891
msgid "Default label printer"
msgstr "Impresora predeterminada"
-#: common/models.py:1906
+#: common/models.py:1892
msgid "Configure which label printer should be selected by default"
msgstr ""
-#: common/models.py:1912
+#: common/models.py:1898
msgid "Inline report display"
msgstr "Mostrar informe en línea"
-#: common/models.py:1913
+#: common/models.py:1899
msgid "Display PDF reports in the browser, instead of downloading as a file"
msgstr "Mostrar informes PDF en el navegador, en lugar de descargar como un archivo"
-#: common/models.py:1919
+#: common/models.py:1905
msgid "Search Parts"
msgstr "Buscar partes"
-#: common/models.py:1920
+#: common/models.py:1906
msgid "Display parts in search preview window"
msgstr ""
-#: common/models.py:1926
+#: common/models.py:1912
msgid "Search Supplier Parts"
msgstr "Buscar partes de proveedor"
-#: common/models.py:1927
+#: common/models.py:1913
msgid "Display supplier parts in search preview window"
msgstr ""
-#: common/models.py:1933
+#: common/models.py:1919
msgid "Search Manufacturer Parts"
msgstr ""
-#: common/models.py:1934
+#: common/models.py:1920
msgid "Display manufacturer parts in search preview window"
msgstr ""
-#: common/models.py:1940
+#: common/models.py:1926
msgid "Hide Inactive Parts"
msgstr "Ocultar Partes Inactivas"
-#: common/models.py:1941
+#: common/models.py:1927
msgid "Excluded inactive parts from search preview window"
msgstr ""
-#: common/models.py:1947
+#: common/models.py:1933
msgid "Search Categories"
msgstr "Buscar categorías"
-#: common/models.py:1948
+#: common/models.py:1934
msgid "Display part categories in search preview window"
msgstr ""
-#: common/models.py:1954
+#: common/models.py:1940
msgid "Search Stock"
msgstr "Buscar inventario"
-#: common/models.py:1955
+#: common/models.py:1941
msgid "Display stock items in search preview window"
msgstr ""
-#: common/models.py:1961
+#: common/models.py:1947
msgid "Hide Unavailable Stock Items"
msgstr ""
-#: common/models.py:1962
+#: common/models.py:1948
msgid "Exclude stock items which are not available from the search preview window"
msgstr ""
-#: common/models.py:1968
+#: common/models.py:1954
msgid "Search Locations"
msgstr "Buscar ubicaciones"
-#: common/models.py:1969
+#: common/models.py:1955
msgid "Display stock locations in search preview window"
msgstr "Mostrar ubicaciones de almacén en la ventana de vista previa de búsqueda"
-#: common/models.py:1975
+#: common/models.py:1961
msgid "Search Companies"
msgstr "Buscar empresas"
-#: common/models.py:1976
+#: common/models.py:1962
msgid "Display companies in search preview window"
msgstr "Mostrar empresas en la ventana de vista previa de búsqueda"
-#: common/models.py:1982
+#: common/models.py:1968
msgid "Search Build Orders"
msgstr ""
-#: common/models.py:1983
+#: common/models.py:1969
msgid "Display build orders in search preview window"
msgstr ""
-#: common/models.py:1989
+#: common/models.py:1975
msgid "Search Purchase Orders"
msgstr "Buscar órdenes de compra"
-#: common/models.py:1990
+#: common/models.py:1976
msgid "Display purchase orders in search preview window"
msgstr ""
-#: common/models.py:1996
+#: common/models.py:1982
msgid "Exclude Inactive Purchase Orders"
msgstr ""
-#: common/models.py:1997
+#: common/models.py:1983
msgid "Exclude inactive purchase orders from search preview window"
msgstr ""
-#: common/models.py:2003
+#: common/models.py:1989
msgid "Search Sales Orders"
msgstr "Buscar órdenes de venta"
-#: common/models.py:2004
+#: common/models.py:1990
msgid "Display sales orders in search preview window"
msgstr ""
-#: common/models.py:2010
+#: common/models.py:1996
msgid "Exclude Inactive Sales Orders"
msgstr ""
-#: common/models.py:2011
+#: common/models.py:1997
msgid "Exclude inactive sales orders from search preview window"
msgstr ""
-#: common/models.py:2017
+#: common/models.py:2003
msgid "Search Return Orders"
msgstr "Buscar órdenes de devolución"
-#: common/models.py:2018
+#: common/models.py:2004
msgid "Display return orders in search preview window"
msgstr ""
-#: common/models.py:2024
+#: common/models.py:2010
msgid "Exclude Inactive Return Orders"
msgstr ""
-#: common/models.py:2025
+#: common/models.py:2011
msgid "Exclude inactive return orders from search preview window"
msgstr ""
-#: common/models.py:2031
+#: common/models.py:2017
msgid "Search Preview Results"
msgstr "Resultados de la vista previa"
-#: common/models.py:2032
+#: common/models.py:2018
msgid "Number of results to show in each section of the search preview window"
msgstr ""
-#: common/models.py:2038
+#: common/models.py:2024
msgid "Regex Search"
msgstr "Búsqueda Regex"
-#: common/models.py:2039
+#: common/models.py:2025
msgid "Enable regular expressions in search queries"
msgstr "Habilitar expresiones regulares en las consultas de búsqueda"
-#: common/models.py:2045
+#: common/models.py:2031
msgid "Whole Word Search"
msgstr "Búsqueda por palabra completa"
-#: common/models.py:2046
+#: common/models.py:2032
msgid "Search queries return results for whole word matches"
msgstr "Las consultas de búsqueda devuelven resultados para palabras enteras coincidentes"
-#: common/models.py:2052
+#: common/models.py:2038
msgid "Show Quantity in Forms"
msgstr "Mostrar cantidad en formularios"
-#: common/models.py:2053
+#: common/models.py:2039
msgid "Display available part quantity in some forms"
msgstr "Mostrar la cantidad de partes disponibles en algunos formularios"
-#: common/models.py:2059
+#: common/models.py:2045
msgid "Escape Key Closes Forms"
msgstr "Formularios de cierre de teclas de escape"
-#: common/models.py:2060
+#: common/models.py:2046
msgid "Use the escape key to close modal forms"
msgstr "Usa la clave de escape para cerrar formularios modales"
-#: common/models.py:2066
+#: common/models.py:2052
msgid "Fixed Navbar"
msgstr "Barra de navegación fija"
-#: common/models.py:2067
+#: common/models.py:2053
msgid "The navbar position is fixed to the top of the screen"
msgstr "La posición de la barra de navegación se fija en la parte superior de la pantalla"
-#: common/models.py:2073
+#: common/models.py:2059
msgid "Date Format"
msgstr "Formato de Fecha"
-#: common/models.py:2074
+#: common/models.py:2060
msgid "Preferred format for displaying dates"
msgstr "Formato preferido para mostrar fechas"
-#: common/models.py:2088 part/templates/part/detail.html:41
+#: common/models.py:2074 part/templates/part/detail.html:41
msgid "Part Scheduling"
msgstr "Planificación de partes"
-#: common/models.py:2089
+#: common/models.py:2075
msgid "Display part scheduling information"
msgstr ""
-#: common/models.py:2095 part/templates/part/detail.html:62
+#: common/models.py:2081 part/templates/part/detail.html:62
msgid "Part Stocktake"
msgstr ""
-#: common/models.py:2096
+#: common/models.py:2082
msgid "Display part stocktake information (if stocktake functionality is enabled)"
msgstr ""
-#: common/models.py:2102
+#: common/models.py:2088
msgid "Table String Length"
msgstr ""
-#: common/models.py:2103
+#: common/models.py:2089
msgid "Maximimum length limit for strings displayed in table views"
msgstr ""
-#: common/models.py:2112
+#: common/models.py:2098
msgid "Default part label template"
msgstr ""
-#: common/models.py:2113
+#: common/models.py:2099
msgid "The part label template to be automatically selected"
msgstr ""
-#: common/models.py:2121
+#: common/models.py:2107
msgid "Default stock item template"
msgstr ""
-#: common/models.py:2122
+#: common/models.py:2108
msgid "The stock item label template to be automatically selected"
msgstr ""
-#: common/models.py:2130
+#: common/models.py:2116
msgid "Default stock location label template"
msgstr ""
-#: common/models.py:2131
+#: common/models.py:2117
msgid "The stock location label template to be automatically selected"
msgstr ""
-#: common/models.py:2177
+#: common/models.py:2163
msgid "Price break quantity"
msgstr "Cantidad de salto de precio"
-#: common/models.py:2184 company/serializers.py:434 order/admin.py:43
-#: order/models.py:1132 order/models.py:1939
-#: templates/js/translated/company.js:1433 templates/js/translated/part.js:1856
+#: common/models.py:2170 company/serializers.py:491 order/admin.py:43
+#: order/models.py:1145 order/models.py:1952
+#: templates/js/translated/company.js:1854 templates/js/translated/part.js:1855
#: templates/js/translated/pricing.js:621
-#: templates/js/translated/return_order.js:725
+#: templates/js/translated/return_order.js:737
msgid "Price"
msgstr "Precio"
-#: common/models.py:2185
+#: common/models.py:2171
msgid "Unit price at specified quantity"
msgstr "Precio unitario a la cantidad especificada"
-#: common/models.py:2345 common/models.py:2523
+#: common/models.py:2331 common/models.py:2509
msgid "Endpoint"
msgstr ""
-#: common/models.py:2346
+#: common/models.py:2332
msgid "Endpoint at which this webhook is received"
msgstr "Punto final en el que se recibe este webhook"
-#: common/models.py:2355
+#: common/models.py:2341
msgid "Name for this webhook"
msgstr "Nombre para este webhook"
-#: common/models.py:2360 part/admin.py:50 part/models.py:1023
-#: plugin/models.py:47 templates/js/translated/table_filters.js:105
-#: templates/js/translated/table_filters.js:189
-#: templates/js/translated/table_filters.js:434
-#: templates/js/translated/table_filters.js:450
-#: templates/js/translated/table_filters.js:629
+#: common/models.py:2346 part/admin.py:50 part/models.py:1024
+#: plugin/models.py:48 templates/js/translated/table_filters.js:111
+#: templates/js/translated/table_filters.js:195
+#: templates/js/translated/table_filters.js:440
+#: templates/js/translated/table_filters.js:456
+#: templates/js/translated/table_filters.js:651
msgid "Active"
msgstr "Activo"
-#: common/models.py:2361
+#: common/models.py:2347
msgid "Is this webhook active"
msgstr "Está activo este webhook"
-#: common/models.py:2375
+#: common/models.py:2361
msgid "Token"
msgstr "Token"
-#: common/models.py:2376
+#: common/models.py:2362
msgid "Token for access"
msgstr "Token para el acceso"
-#: common/models.py:2383
+#: common/models.py:2369
msgid "Secret"
msgstr "Clave"
-#: common/models.py:2384
+#: common/models.py:2370
msgid "Shared secret for HMAC"
msgstr "Secreto compartido para HMAC"
-#: common/models.py:2490
+#: common/models.py:2476
msgid "Message ID"
msgstr "ID de mensaje"
-#: common/models.py:2491
+#: common/models.py:2477
msgid "Unique identifier for this message"
msgstr "Identificador único para este mensaje"
-#: common/models.py:2499
+#: common/models.py:2485
msgid "Host"
msgstr "Host"
-#: common/models.py:2500
+#: common/models.py:2486
msgid "Host from which this message was received"
msgstr "Servidor desde el cual se recibió este mensaje"
-#: common/models.py:2507
+#: common/models.py:2493
msgid "Header"
msgstr "Encabezado"
-#: common/models.py:2508
+#: common/models.py:2494
msgid "Header of this message"
msgstr "Encabezado del mensaje"
-#: common/models.py:2514
+#: common/models.py:2500
msgid "Body"
msgstr "Cuerpo"
-#: common/models.py:2515
+#: common/models.py:2501
msgid "Body of this message"
msgstr "Cuerpo de este mensaje"
-#: common/models.py:2524
+#: common/models.py:2510
msgid "Endpoint on which this message was received"
msgstr "Endpoint en el que se recibió este mensaje"
-#: common/models.py:2529
+#: common/models.py:2515
msgid "Worked on"
msgstr "Trabajado en"
-#: common/models.py:2530
+#: common/models.py:2516
msgid "Was the work on this message finished?"
msgstr "¿El trabajo en este mensaje ha terminado?"
-#: common/models.py:2684
+#: common/models.py:2670
msgid "Id"
msgstr "Id"
-#: common/models.py:2690 templates/js/translated/news.js:44
+#: common/models.py:2676 templates/js/translated/company.js:996
+#: templates/js/translated/news.js:44
msgid "Title"
msgstr "Titulo"
-#: common/models.py:2700 templates/js/translated/news.js:60
+#: common/models.py:2686 templates/js/translated/news.js:60
msgid "Published"
msgstr "Publicado"
-#: common/models.py:2705 templates/InvenTree/settings/plugin_settings.html:32
+#: common/models.py:2691 templates/InvenTree/settings/plugin_settings.html:32
#: templates/js/translated/news.js:56 templates/js/translated/plugin.js:106
msgid "Author"
msgstr "Autor"
-#: common/models.py:2710 templates/js/translated/news.js:52
+#: common/models.py:2696 templates/js/translated/news.js:52
msgid "Summary"
msgstr "Resumen"
-#: common/models.py:2715
+#: common/models.py:2701
msgid "Read"
msgstr "Leer"
-#: common/models.py:2716
+#: common/models.py:2702
msgid "Was this news item read?"
msgstr "¿Esta noticia fue leída?"
-#: common/models.py:2736 company/models.py:143 part/models.py:914
+#: common/models.py:2722 company/models.py:139 part/models.py:915
#: report/templates/report/inventree_bill_of_materials_report.html:126
#: report/templates/report/inventree_bill_of_materials_report.html:148
#: report/templates/report/inventree_return_order_report_base.html:35
@@ -3422,7 +3400,7 @@ msgstr "¿Esta noticia fue leída?"
msgid "Image"
msgstr "Imágen"
-#: common/models.py:2737
+#: common/models.py:2723
msgid "Image file"
msgstr "Archivo de imagen"
@@ -3499,7 +3477,7 @@ msgstr "Descripción de la empresa"
#: company/models.py:113 company/templates/company/company_base.html:101
#: templates/InvenTree/settings/plugin_settings.html:54
-#: templates/js/translated/company.js:514
+#: templates/js/translated/company.js:521
msgid "Website"
msgstr "Página web"
@@ -3507,303 +3485,387 @@ msgstr "Página web"
msgid "Company website URL"
msgstr "URL del sitio web de la empresa"
-#: company/models.py:118 company/templates/company/company_base.html:119
-msgid "Address"
-msgstr "Dirección"
-
-#: company/models.py:119
-msgid "Company address"
-msgstr "Dirección de la empresa"
-
-#: company/models.py:122
+#: company/models.py:118
msgid "Phone number"
msgstr "Teléfono"
-#: company/models.py:123
+#: company/models.py:119
msgid "Contact phone number"
msgstr "Teléfono de contacto"
-#: company/models.py:126 company/templates/company/company_base.html:133
+#: company/models.py:122 company/templates/company/company_base.html:133
#: templates/InvenTree/settings/user.html:49
-#: templates/js/translated/company.js:659
+#: templates/js/translated/company.js:666
msgid "Email"
msgstr "Correo electrónico"
-#: company/models.py:126
+#: company/models.py:122
msgid "Contact email address"
msgstr "Correo electrónico de contacto"
-#: company/models.py:129 company/templates/company/company_base.html:140
-#: order/models.py:266 order/templates/order/order_base.html:207
+#: company/models.py:125 company/templates/company/company_base.html:140
+#: order/models.py:270 order/templates/order/order_base.html:203
#: order/templates/order/return_order_base.html:175
#: order/templates/order/sales_order_base.html:215
msgid "Contact"
msgstr "Contacto"
-#: company/models.py:130
+#: company/models.py:126
msgid "Point of contact"
msgstr "Punto de contacto"
-#: company/models.py:132
+#: company/models.py:128
msgid "Link to external company information"
msgstr "Enlace a información externa de la empresa"
-#: company/models.py:146
+#: company/models.py:142
msgid "is customer"
msgstr "es cliente"
-#: company/models.py:146
+#: company/models.py:142
msgid "Do you sell items to this company?"
msgstr "¿Vendes artículos a esta empresa?"
-#: company/models.py:148
+#: company/models.py:144
msgid "is supplier"
msgstr "es proveedor"
-#: company/models.py:148
+#: company/models.py:144
msgid "Do you purchase items from this company?"
msgstr "¿Compras artículos de esta empresa?"
-#: company/models.py:150
+#: company/models.py:146
msgid "is manufacturer"
msgstr "es fabricante"
-#: company/models.py:150
+#: company/models.py:146
msgid "Does this company manufacture parts?"
msgstr "¿Esta empresa fabrica partes?"
-#: company/models.py:157
+#: company/models.py:153
msgid "Default currency used for this company"
msgstr "Moneda predeterminada utilizada para esta empresa"
-#: company/models.py:223 company/templates/company/company_base.html:8
+#: company/models.py:235 company/models.py:328
+#: company/templates/company/company_base.html:8
#: company/templates/company/company_base.html:12
-#: templates/InvenTree/search.html:178 templates/js/translated/company.js:487
+#: templates/InvenTree/search.html:178 templates/js/translated/company.js:494
msgid "Company"
msgstr "Empresa"
-#: company/models.py:278 company/models.py:553 stock/models.py:675
-#: stock/serializers.py:155 stock/templates/stock/item_base.html:143
-#: templates/js/translated/bom.js:621
+#: company/models.py:324
+msgid "Company already has a primary address"
+msgstr ""
+
+#: company/models.py:329
+msgid "Select company"
+msgstr ""
+
+#: company/models.py:332
+msgid "Address title"
+msgstr ""
+
+#: company/models.py:333
+msgid "Title describing the address entry"
+msgstr ""
+
+#: company/models.py:337
+msgid "Primary address"
+msgstr ""
+
+#: company/models.py:338
+msgid "Set as primary address"
+msgstr ""
+
+#: company/models.py:341 templates/js/translated/company.js:941
+#: templates/js/translated/company.js:1002
+msgid "Line 1"
+msgstr ""
+
+#: company/models.py:342
+msgid "Address line 1"
+msgstr ""
+
+#: company/models.py:346 templates/js/translated/company.js:942
+#: templates/js/translated/company.js:1008
+msgid "Line 2"
+msgstr ""
+
+#: company/models.py:347
+msgid "Address line 2"
+msgstr ""
+
+#: company/models.py:351 company/models.py:352
+#: templates/js/translated/company.js:1014
+msgid "Postal code"
+msgstr ""
+
+#: company/models.py:356
+msgid "City/Region"
+msgstr ""
+
+#: company/models.py:357
+msgid "Postal code city/region"
+msgstr ""
+
+#: company/models.py:361
+msgid "State/Province"
+msgstr ""
+
+#: company/models.py:362
+msgid "State or province"
+msgstr ""
+
+#: company/models.py:366 templates/js/translated/company.js:1032
+msgid "Country"
+msgstr ""
+
+#: company/models.py:367
+msgid "Address country"
+msgstr ""
+
+#: company/models.py:371
+msgid "Courier shipping notes"
+msgstr ""
+
+#: company/models.py:372
+msgid "Notes for shipping courier"
+msgstr ""
+
+#: company/models.py:376
+msgid "Internal shipping notes"
+msgstr ""
+
+#: company/models.py:377
+msgid "Shipping notes for internal use"
+msgstr ""
+
+#: company/models.py:382
+msgid "Link to address information (external)"
+msgstr ""
+
+#: company/models.py:427 company/models.py:702 stock/models.py:675
+#: stock/serializers.py:204 stock/templates/stock/item_base.html:143
+#: templates/js/translated/bom.js:622
msgid "Base Part"
msgstr "Parte base"
-#: company/models.py:282 company/models.py:557
+#: company/models.py:431 company/models.py:706
msgid "Select part"
msgstr "Seleccionar parte"
-#: company/models.py:293 company/templates/company/company_base.html:77
+#: company/models.py:442 company/templates/company/company_base.html:77
#: company/templates/company/manufacturer_part.html:90
-#: company/templates/company/supplier_part.html:146 part/serializers.py:354
+#: company/templates/company/supplier_part.html:146 part/serializers.py:404
#: stock/templates/stock/item_base.html:208
-#: templates/js/translated/company.js:498
-#: templates/js/translated/company.js:824
-#: templates/js/translated/company.js:954
-#: templates/js/translated/company.js:1221
-#: templates/js/translated/table_filters.js:709
+#: templates/js/translated/company.js:505
+#: templates/js/translated/company.js:1149
+#: templates/js/translated/company.js:1327
+#: templates/js/translated/company.js:1642
+#: templates/js/translated/table_filters.js:731
msgid "Manufacturer"
msgstr "Fabricante"
-#: company/models.py:294
+#: company/models.py:443
msgid "Select manufacturer"
msgstr "Seleccionar fabricante"
-#: company/models.py:300 company/templates/company/manufacturer_part.html:101
-#: company/templates/company/supplier_part.html:154 part/serializers.py:360
-#: templates/js/translated/company.js:340
-#: templates/js/translated/company.js:823
-#: templates/js/translated/company.js:970
-#: templates/js/translated/company.js:1240 templates/js/translated/part.js:1773
-#: templates/js/translated/purchase_order.js:1814
-#: templates/js/translated/purchase_order.js:2021
+#: company/models.py:449 company/templates/company/manufacturer_part.html:101
+#: company/templates/company/supplier_part.html:154 part/serializers.py:410
+#: templates/js/translated/company.js:350
+#: templates/js/translated/company.js:1148
+#: templates/js/translated/company.js:1343
+#: templates/js/translated/company.js:1661 templates/js/translated/part.js:1772
+#: templates/js/translated/purchase_order.js:1829
+#: templates/js/translated/purchase_order.js:2031
msgid "MPN"
msgstr "MPN"
-#: company/models.py:301
+#: company/models.py:450
msgid "Manufacturer Part Number"
msgstr "Número de parte de fabricante"
-#: company/models.py:307
+#: company/models.py:456
msgid "URL for external manufacturer part link"
msgstr "URL para el enlace de parte del fabricante externo"
-#: company/models.py:313
+#: company/models.py:462
msgid "Manufacturer part description"
msgstr "Descripción de la parte del fabricante"
-#: company/models.py:360 company/models.py:384 company/models.py:578
+#: company/models.py:509 company/models.py:533 company/models.py:727
#: company/templates/company/manufacturer_part.html:7
#: company/templates/company/manufacturer_part.html:24
#: stock/templates/stock/item_base.html:218
msgid "Manufacturer Part"
msgstr "Parte del fabricante"
-#: company/models.py:391
+#: company/models.py:540
msgid "Parameter name"
msgstr "Nombre del parámetro"
-#: company/models.py:397
+#: company/models.py:546
#: report/templates/report/inventree_test_report_base.html:104
-#: stock/models.py:2255 templates/js/translated/company.js:872
-#: templates/js/translated/company.js:1077 templates/js/translated/part.js:1465
-#: templates/js/translated/stock.js:1446
+#: stock/models.py:2255 templates/js/translated/company.js:1197
+#: templates/js/translated/company.js:1450 templates/js/translated/part.js:1464
+#: templates/js/translated/stock.js:1445
msgid "Value"
msgstr "Valor"
-#: company/models.py:398
+#: company/models.py:547
msgid "Parameter value"
msgstr "Valor del parámetro"
-#: company/models.py:404 company/templates/company/supplier_part.html:169
-#: part/admin.py:40 part/models.py:987 part/models.py:3407
+#: company/models.py:553 company/templates/company/supplier_part.html:169
+#: part/admin.py:40 part/models.py:988 part/models.py:3441
#: part/templates/part/part_base.html:286
-#: templates/js/translated/company.js:1083 templates/js/translated/part.js:1484
-#: templates/js/translated/part.js:1588 templates/js/translated/part.js:2262
+#: templates/js/translated/company.js:1456 templates/js/translated/part.js:1483
+#: templates/js/translated/part.js:1587 templates/js/translated/part.js:2338
msgid "Units"
msgstr "Unidades"
-#: company/models.py:405
+#: company/models.py:554
msgid "Parameter units"
msgstr "Unidades de parámetro"
-#: company/models.py:498
+#: company/models.py:647
msgid "Pack units must be compatible with the base part units"
-msgstr "Las unidades de paquete deben ser compatibles con las unidades de piezas de base"
+msgstr "Las unidades de paquete deben ser compatibles con las unidades de partes de base"
-#: company/models.py:504
+#: company/models.py:653
msgid "Pack units must be greater than zero"
msgstr "Las unidades de paquete deben ser mayor que cero"
-#: company/models.py:520
+#: company/models.py:669
msgid "Linked manufacturer part must reference the same base part"
msgstr "La parte vinculada del fabricante debe hacer referencia a la misma parte base"
-#: company/models.py:564 company/templates/company/company_base.html:82
-#: company/templates/company/supplier_part.html:130 order/models.py:382
-#: order/templates/order/order_base.html:140 part/bom.py:285 part/bom.py:313
-#: part/serializers.py:343 stock/templates/stock/item_base.html:225
+#: company/models.py:713 company/templates/company/company_base.html:82
+#: company/templates/company/supplier_part.html:130 order/models.py:395
+#: order/templates/order/order_base.html:136 part/bom.py:285 part/bom.py:313
+#: part/serializers.py:393 stock/templates/stock/item_base.html:225
#: templates/email/overdue_purchase_order.html:16
-#: templates/js/translated/company.js:339
-#: templates/js/translated/company.js:502
-#: templates/js/translated/company.js:1194 templates/js/translated/part.js:1741
+#: templates/js/translated/company.js:349
+#: templates/js/translated/company.js:509
+#: templates/js/translated/company.js:1615 templates/js/translated/part.js:1740
#: templates/js/translated/pricing.js:498
-#: templates/js/translated/purchase_order.js:1653
-#: templates/js/translated/table_filters.js:713
+#: templates/js/translated/purchase_order.js:1668
+#: templates/js/translated/table_filters.js:735
msgid "Supplier"
msgstr "Proveedor"
-#: company/models.py:565
+#: company/models.py:714
msgid "Select supplier"
msgstr "Seleccionar proveedor"
-#: company/models.py:570 company/templates/company/supplier_part.html:140
-#: part/bom.py:286 part/bom.py:314 part/serializers.py:349
-#: templates/js/translated/company.js:338 templates/js/translated/part.js:1759
+#: company/models.py:719 company/templates/company/supplier_part.html:140
+#: part/bom.py:286 part/bom.py:314 part/serializers.py:399
+#: templates/js/translated/company.js:348 templates/js/translated/part.js:1758
#: templates/js/translated/pricing.js:510
-#: templates/js/translated/purchase_order.js:1813
-#: templates/js/translated/purchase_order.js:1996
+#: templates/js/translated/purchase_order.js:1828
+#: templates/js/translated/purchase_order.js:2006
msgid "SKU"
msgstr "SKU"
-#: company/models.py:571 part/serializers.py:349
+#: company/models.py:720 part/serializers.py:399
msgid "Supplier stock keeping unit"
msgstr "Unidad de mantenimiento de stock de proveedores"
-#: company/models.py:579
+#: company/models.py:728
msgid "Select manufacturer part"
msgstr "Seleccionar parte del fabricante"
-#: company/models.py:585
+#: company/models.py:734
msgid "URL for external supplier part link"
msgstr "URL del enlace de parte del proveedor externo"
-#: company/models.py:591
+#: company/models.py:740
msgid "Supplier part description"
msgstr "Descripción de la parte del proveedor"
-#: company/models.py:596 company/templates/company/supplier_part.html:188
-#: part/admin.py:279 part/models.py:3801 part/templates/part/upload_bom.html:59
+#: company/models.py:745 company/templates/company/supplier_part.html:188
+#: part/admin.py:279 part/models.py:3845 part/templates/part/upload_bom.html:59
#: report/templates/report/inventree_bill_of_materials_report.html:140
#: report/templates/report/inventree_po_report_base.html:32
#: report/templates/report/inventree_return_order_report_base.html:27
#: report/templates/report/inventree_so_report_base.html:32
-#: stock/serializers.py:418
+#: stock/serializers.py:484
msgid "Note"
msgstr "Nota"
-#: company/models.py:600 part/models.py:1919
+#: company/models.py:749 part/models.py:1921
msgid "base cost"
msgstr "costo base"
-#: company/models.py:600 part/models.py:1919
+#: company/models.py:749 part/models.py:1921
msgid "Minimum charge (e.g. stocking fee)"
msgstr "Cargo mínimo (p. ej., cuota de almacenamiento)"
-#: company/models.py:602 company/templates/company/supplier_part.html:161
+#: company/models.py:751 company/templates/company/supplier_part.html:161
#: stock/admin.py:119 stock/models.py:701
#: stock/templates/stock/item_base.html:241
-#: templates/js/translated/company.js:1256
-#: templates/js/translated/stock.js:2160
+#: templates/js/translated/company.js:1677
+#: templates/js/translated/stock.js:2317
msgid "Packaging"
msgstr "Paquetes"
-#: company/models.py:602
+#: company/models.py:751
msgid "Part packaging"
msgstr "Embalaje de partes"
-#: company/models.py:606 templates/js/translated/company.js:1261
-#: templates/js/translated/part.js:1793 templates/js/translated/part.js:1848
-#: templates/js/translated/purchase_order.js:300
-#: templates/js/translated/purchase_order.js:827
-#: templates/js/translated/purchase_order.js:1073
-#: templates/js/translated/purchase_order.js:2052
-#: templates/js/translated/purchase_order.js:2069
+#: company/models.py:755 templates/js/translated/company.js:1682
+#: templates/js/translated/part.js:1792 templates/js/translated/part.js:1847
+#: templates/js/translated/purchase_order.js:311
+#: templates/js/translated/purchase_order.js:842
+#: templates/js/translated/purchase_order.js:1088
+#: templates/js/translated/purchase_order.js:2062
+#: templates/js/translated/purchase_order.js:2079
msgid "Pack Quantity"
msgstr "Cantidad de paquete"
-#: company/models.py:607
+#: company/models.py:756
msgid "Total quantity supplied in a single pack. Leave empty for single items."
msgstr "Cantidad total suministrada en un solo paquete. Dejar vacío para artículos individuales."
-#: company/models.py:624 part/models.py:1921
+#: company/models.py:773 part/models.py:1923
msgid "multiple"
msgstr "múltiple"
-#: company/models.py:624
+#: company/models.py:773
msgid "Order multiple"
msgstr "Pedido múltiple"
-#: company/models.py:632 company/templates/company/supplier_part.html:115
+#: company/models.py:781 company/templates/company/supplier_part.html:115
#: templates/email/build_order_required_stock.html:19
#: templates/email/low_stock_notification.html:17
-#: templates/js/translated/bom.js:1127 templates/js/translated/build.js:2136
-#: templates/js/translated/build.js:3045
-#: templates/js/translated/model_renderers.js:205
-#: templates/js/translated/part.js:670 templates/js/translated/part.js:672
-#: templates/js/translated/part.js:677
-#: templates/js/translated/table_filters.js:286
-#: templates/js/translated/table_filters.js:492
+#: templates/js/translated/bom.js:1145 templates/js/translated/build.js:2490
+#: templates/js/translated/index.js:118
+#: templates/js/translated/model_renderers.js:219
+#: templates/js/translated/part.js:669 templates/js/translated/part.js:671
+#: templates/js/translated/part.js:676
+#: templates/js/translated/table_filters.js:292
+#: templates/js/translated/table_filters.js:510
msgid "Available"
msgstr "Disponible"
-#: company/models.py:633
+#: company/models.py:782
msgid "Quantity available from supplier"
msgstr "Cantidad disponible del proveedor"
-#: company/models.py:637
+#: company/models.py:786
msgid "Availability Updated"
msgstr "Disponibilidad actualizada"
-#: company/models.py:638
+#: company/models.py:787
msgid "Date of last update of availability data"
msgstr "Fecha de última actualización de los datos de disponibilidad"
-#: company/serializers.py:99
+#: company/serializers.py:156
msgid "Default currency used for this supplier"
msgstr "Moneda predeterminada utilizada para este proveedor"
#: company/templates/company/company_base.html:22
-#: templates/js/translated/purchase_order.js:228
+#: templates/js/translated/purchase_order.js:239
msgid "Create Purchase Order"
msgstr "Crear orden de compra"
@@ -3816,7 +3878,7 @@ msgid "Edit company information"
msgstr "Editar datos de la empresa"
#: company/templates/company/company_base.html:34
-#: templates/js/translated/company.js:436
+#: templates/js/translated/company.js:443
msgid "Edit Company"
msgstr "Modificar Empresa"
@@ -3856,17 +3918,17 @@ msgstr "Descargar desde URL"
msgid "Delete image"
msgstr "Borrar imagen"
-#: company/templates/company/company_base.html:87 order/models.py:779
-#: order/models.py:1738 order/templates/order/return_order_base.html:132
+#: company/templates/company/company_base.html:87 order/models.py:792
+#: order/models.py:1751 order/templates/order/return_order_base.html:132
#: order/templates/order/sales_order_base.html:145 stock/models.py:720
-#: stock/models.py:721 stock/serializers.py:825
+#: stock/models.py:721 stock/serializers.py:942
#: stock/templates/stock/item_base.html:401
#: templates/email/overdue_sales_order.html:16
-#: templates/js/translated/company.js:494
-#: templates/js/translated/return_order.js:284
-#: templates/js/translated/sales_order.js:772
-#: templates/js/translated/stock.js:2696
-#: templates/js/translated/table_filters.js:717
+#: templates/js/translated/company.js:501
+#: templates/js/translated/return_order.js:296
+#: templates/js/translated/sales_order.js:784
+#: templates/js/translated/stock.js:2827
+#: templates/js/translated/table_filters.js:739
msgid "Customer"
msgstr "Cliente"
@@ -3874,6 +3936,13 @@ msgstr "Cliente"
msgid "Uses default currency"
msgstr "Usa la moneda predeterminada"
+#: company/templates/company/company_base.html:119 order/models.py:279
+#: order/templates/order/order_base.html:210
+#: order/templates/order/return_order_base.html:182
+#: order/templates/order/sales_order_base.html:222
+msgid "Address"
+msgstr "Dirección"
+
#: company/templates/company/company_base.html:126
msgid "Phone"
msgstr "Teléfono"
@@ -3906,7 +3975,7 @@ msgstr "Descargar imagen"
#: company/templates/company/detail.html:15
#: company/templates/company/manufacturer_part_sidebar.html:7
-#: templates/InvenTree/search.html:120 templates/js/translated/search.js:189
+#: templates/InvenTree/search.html:120 templates/js/translated/search.js:147
msgid "Supplier Parts"
msgstr "Partes de Proveedor"
@@ -3916,129 +3985,121 @@ msgstr "Crear nueva parte del proveedor"
#: company/templates/company/detail.html:20
#: company/templates/company/manufacturer_part.html:123
-#: part/templates/part/detail.html:381
+#: part/templates/part/detail.html:356
msgid "New Supplier Part"
msgstr "Nueva Parte de Proveedor"
-#: company/templates/company/detail.html:37
-#: company/templates/company/detail.html:85
-#: part/templates/part/category.html:183
-msgid "Order parts"
-msgstr "Partes de pedido"
-
-#: company/templates/company/detail.html:42
-#: company/templates/company/detail.html:90
-msgid "Delete parts"
-msgstr "Eliminar partes"
-
-#: company/templates/company/detail.html:43
-#: company/templates/company/detail.html:91
-msgid "Delete Parts"
-msgstr "Eliminar Partes"
-
-#: company/templates/company/detail.html:62 templates/InvenTree/search.html:105
-#: templates/js/translated/search.js:193
+#: company/templates/company/detail.html:41 templates/InvenTree/search.html:105
+#: templates/js/translated/search.js:151
msgid "Manufacturer Parts"
msgstr "Partes del fabricante"
-#: company/templates/company/detail.html:66
+#: company/templates/company/detail.html:45
msgid "Create new manufacturer part"
msgstr "Crear nueva parte de fabricante"
-#: company/templates/company/detail.html:67 part/templates/part/detail.html:411
+#: company/templates/company/detail.html:46 part/templates/part/detail.html:376
msgid "New Manufacturer Part"
msgstr "Nueva parte de fabricante"
-#: company/templates/company/detail.html:108
+#: company/templates/company/detail.html:65
msgid "Supplier Stock"
msgstr "Stock del Proveedor"
-#: company/templates/company/detail.html:118
+#: company/templates/company/detail.html:75
#: company/templates/company/sidebar.html:12
#: company/templates/company/supplier_part_sidebar.html:7
#: 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:108 part/templates/part/part_sidebar.html:35
-#: templates/InvenTree/index.html:275 templates/InvenTree/search.html:199
+#: part/templates/part/detail.html:106 part/templates/part/part_sidebar.html:35
+#: templates/InvenTree/index.html:227 templates/InvenTree/search.html:199
#: templates/InvenTree/settings/sidebar.html:55
-#: templates/js/translated/search.js:247 templates/navbar.html:50
+#: templates/js/translated/search.js:205 templates/navbar.html:50
#: users/models.py:43
msgid "Purchase Orders"
msgstr "Ordenes de compra"
-#: company/templates/company/detail.html:122
+#: company/templates/company/detail.html:79
#: order/templates/order/purchase_orders.html:17
msgid "Create new purchase order"
msgstr "Crear nueva orden de compra"
-#: company/templates/company/detail.html:123
+#: company/templates/company/detail.html:80
#: order/templates/order/purchase_orders.html:18
msgid "New Purchase Order"
msgstr "Nueva orden de compra"
-#: company/templates/company/detail.html:146
+#: company/templates/company/detail.html:101
#: company/templates/company/sidebar.html:21
#: 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:131 part/templates/part/part_sidebar.html:39
-#: templates/InvenTree/index.html:307 templates/InvenTree/search.html:219
+#: part/templates/part/detail.html:127 part/templates/part/part_sidebar.html:39
+#: templates/InvenTree/index.html:259 templates/InvenTree/search.html:219
#: templates/InvenTree/settings/sidebar.html:57
-#: templates/js/translated/search.js:261 templates/navbar.html:62
+#: templates/js/translated/search.js:219 templates/navbar.html:62
#: users/models.py:44
msgid "Sales Orders"
msgstr "Órdenes de venta"
-#: company/templates/company/detail.html:150
+#: company/templates/company/detail.html:105
#: order/templates/order/sales_orders.html:20
msgid "Create new sales order"
msgstr "Crear Orden de Venta"
-#: company/templates/company/detail.html:151
+#: company/templates/company/detail.html:106
#: order/templates/order/sales_orders.html:21
msgid "New Sales Order"
msgstr "Nueva orden de venta"
-#: company/templates/company/detail.html:173
-#: templates/js/translated/build.js:1976
+#: company/templates/company/detail.html:126
msgid "Assigned Stock"
msgstr "Stock asignado"
-#: company/templates/company/detail.html:191
+#: company/templates/company/detail.html:142
#: company/templates/company/sidebar.html:29
#: order/templates/order/return_order_base.html:13
#: order/templates/order/return_orders.html:8
#: order/templates/order/return_orders.html:15
#: templates/InvenTree/settings/sidebar.html:59
-#: templates/js/translated/search.js:274 templates/navbar.html:65
+#: templates/js/translated/search.js:232 templates/navbar.html:65
#: users/models.py:45
msgid "Return Orders"
msgstr "Ordenes de devolución"
-#: company/templates/company/detail.html:195
+#: company/templates/company/detail.html:146
#: order/templates/order/return_orders.html:20
msgid "Create new return order"
msgstr "Crear nueva orden de devolución"
-#: company/templates/company/detail.html:196
+#: company/templates/company/detail.html:147
#: order/templates/order/return_orders.html:21
msgid "New Return Order"
msgstr "Nueva orden de devolución"
-#: company/templates/company/detail.html:221
+#: company/templates/company/detail.html:168
msgid "Company Notes"
msgstr "Notas de la empresa"
-#: company/templates/company/detail.html:236
+#: company/templates/company/detail.html:183
msgid "Company Contacts"
msgstr "Contactos de la empresa"
-#: company/templates/company/detail.html:240
-#: company/templates/company/detail.html:241
+#: company/templates/company/detail.html:187
+#: company/templates/company/detail.html:188
msgid "Add Contact"
msgstr "Añadir contacto"
+#: company/templates/company/detail.html:206
+msgid "Company addresses"
+msgstr ""
+
+#: company/templates/company/detail.html:210
+#: company/templates/company/detail.html:211
+msgid "Add Address"
+msgstr ""
+
#: company/templates/company/index.html:8
msgid "Supplier List"
msgstr "Listado de proveedores"
@@ -4050,17 +4111,17 @@ msgstr "Fabricantes"
#: company/templates/company/manufacturer_part.html:35
#: company/templates/company/supplier_part.html:228
-#: part/templates/part/detail.html:111 part/templates/part/part_base.html:85
+#: part/templates/part/detail.html:109 part/templates/part/part_base.html:85
msgid "Order part"
msgstr "Pedir ítem"
#: company/templates/company/manufacturer_part.html:39
-#: templates/js/translated/company.js:1001
+#: templates/js/translated/company.js:1374
msgid "Edit manufacturer part"
msgstr "Editar fabricante de la parte"
#: company/templates/company/manufacturer_part.html:43
-#: templates/js/translated/company.js:1002
+#: templates/js/translated/company.js:1375
msgid "Delete manufacturer part"
msgstr "Eliminar fabricante de la parte"
@@ -4080,40 +4141,22 @@ msgstr "No hay información del fabricante disponible"
msgid "Suppliers"
msgstr "Proveedores"
-#: company/templates/company/manufacturer_part.html:136
-#: part/templates/part/detail.html:392
-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:393 part/templates/part/detail.html:423
-#: templates/js/translated/forms.js:506 templates/js/translated/helpers.js:105
-#: templates/js/translated/part.js:370 templates/js/translated/pricing.js:629
-#: templates/js/translated/stock.js:216 users/models.py:247
-msgid "Delete"
-msgstr "Eliminar"
-
-#: company/templates/company/manufacturer_part.html:166
+#: company/templates/company/manufacturer_part.html:156
#: company/templates/company/manufacturer_part_sidebar.html:5
#: part/templates/part/category_sidebar.html:20
-#: part/templates/part/detail.html:208 part/templates/part/part_sidebar.html:8
+#: part/templates/part/detail.html:195 part/templates/part/part_sidebar.html:8
msgid "Parameters"
msgstr "Parámetros"
-#: company/templates/company/manufacturer_part.html:170
-#: part/templates/part/detail.html:213
+#: company/templates/company/manufacturer_part.html:160
+#: part/templates/part/detail.html:200
#: templates/InvenTree/settings/category.html:12
#: templates/InvenTree/settings/part_parameters.html:12
msgid "New Parameter"
msgstr "Nuevo parámetro"
-#: company/templates/company/manufacturer_part.html:183
-msgid "Delete parameters"
-msgstr "Eliminar parámetro"
-
-#: company/templates/company/manufacturer_part.html:226
-#: templates/js/translated/part.js:1396
+#: company/templates/company/manufacturer_part.html:206
+#: templates/js/translated/part.js:1395
msgid "Add Parameter"
msgstr "Añadir parámetro"
@@ -4137,23 +4180,28 @@ msgstr "Elementos de Stock Asignados"
msgid "Contacts"
msgstr "Contactos"
+#: company/templates/company/sidebar.html:35
+msgid "Addresses"
+msgstr ""
+
#: company/templates/company/supplier_part.html:7
#: company/templates/company/supplier_part.html:24 stock/models.py:684
#: stock/templates/stock/item_base.html:234
-#: templates/js/translated/company.js:1210
-#: templates/js/translated/purchase_order.js:747
-#: templates/js/translated/stock.js:2016
+#: templates/js/translated/company.js:1631
+#: templates/js/translated/purchase_order.js:758
+#: templates/js/translated/stock.js:2173
msgid "Supplier Part"
msgstr "Parte del proveedor"
#: company/templates/company/supplier_part.html:51
+#: templates/js/translated/company.js:1557
msgid "Supplier part actions"
msgstr "Acciones de partes del proveedor"
#: company/templates/company/supplier_part.html:56
#: company/templates/company/supplier_part.html:57
#: company/templates/company/supplier_part.html:229
-#: part/templates/part/detail.html:112
+#: part/templates/part/detail.html:110
msgid "Order Part"
msgstr "Pedir ítem"
@@ -4164,13 +4212,13 @@ msgstr "Actualizar disponibilidad"
#: company/templates/company/supplier_part.html:64
#: company/templates/company/supplier_part.html:65
-#: templates/js/translated/company.js:283
+#: templates/js/translated/company.js:293
msgid "Edit Supplier Part"
msgstr "Editar Parte del Proveedor"
#: company/templates/company/supplier_part.html:69
#: company/templates/company/supplier_part.html:70
-#: templates/js/translated/company.js:258
+#: templates/js/translated/company.js:268
msgid "Duplicate Supplier Part"
msgstr "Duplicar parte del proveedor"
@@ -4197,7 +4245,7 @@ msgstr "Crear nuevo artículo de stock"
#: company/templates/company/supplier_part.html:211
#: part/templates/part/detail.html:25 stock/templates/stock/location.html:198
-#: templates/js/translated/stock.js:504
+#: templates/js/translated/stock.js:503
msgid "New Stock Item"
msgstr "Nuevo artículo de stock"
@@ -4205,37 +4253,37 @@ msgstr "Nuevo artículo de stock"
msgid "Supplier Part Orders"
msgstr "Pedidos de partes al proveedor"
-#: company/templates/company/supplier_part.html:249
+#: company/templates/company/supplier_part.html:247
msgid "Pricing Information"
msgstr "Información de precios"
-#: company/templates/company/supplier_part.html:254
-#: templates/js/translated/company.js:387
+#: company/templates/company/supplier_part.html:252
+#: templates/js/translated/company.js:397
#: templates/js/translated/pricing.js:684
msgid "Add Price Break"
msgstr "Agregar descuento de precio"
-#: company/templates/company/supplier_part.html:281
+#: company/templates/company/supplier_part.html:277
msgid "Supplier Part QR Code"
msgstr "Código QR de parte del proveedor"
-#: company/templates/company/supplier_part.html:292
+#: company/templates/company/supplier_part.html:288
msgid "Link Barcode to Supplier Part"
msgstr "Enlazar código de barras a la parte del proveedor"
-#: company/templates/company/supplier_part.html:365
+#: company/templates/company/supplier_part.html:361
msgid "Update Part Availability"
msgstr "Actualizar disponibilidad de parte"
#: company/templates/company/supplier_part_sidebar.html:5 part/tasks.py:293
-#: part/templates/part/category.html:199
+#: part/templates/part/category.html:182
#: part/templates/part/category_sidebar.html:17 stock/admin.py:47
-#: stock/templates/stock/location.html:168
+#: stock/serializers.py:662 stock/templates/stock/location.html:168
#: stock/templates/stock/location.html:182
#: stock/templates/stock/location.html:194
#: stock/templates/stock/location_sidebar.html:7
-#: templates/InvenTree/search.html:155 templates/js/translated/part.js:1034
-#: templates/js/translated/search.js:214 templates/js/translated/stock.js:2514
+#: templates/InvenTree/search.html:155 templates/js/translated/part.js:1033
+#: templates/js/translated/search.js:172 templates/js/translated/stock.js:2645
#: users/models.py:41
msgid "Stock Items"
msgstr "Elementos de stock"
@@ -4261,7 +4309,7 @@ msgstr "Clientes"
msgid "New Customer"
msgstr "Nuevo Cliente"
-#: company/views.py:52 templates/js/translated/search.js:234
+#: company/views.py:52 templates/js/translated/search.js:192
msgid "Companies"
msgstr "Empresas"
@@ -4269,72 +4317,76 @@ msgstr "Empresas"
msgid "New Company"
msgstr "Nueva Compañía"
-#: label/models.py:104
+#: label/models.py:112
msgid "Label name"
msgstr "Nombre etiqueta"
-#: label/models.py:111
+#: label/models.py:119
msgid "Label description"
msgstr "Descripción de etiqueta"
-#: label/models.py:118
+#: label/models.py:126
msgid "Label"
msgstr "Etiqueta"
-#: label/models.py:119
+#: label/models.py:127
msgid "Label template file"
msgstr "Archivo de plantilla de etiqueta"
-#: label/models.py:125 report/models.py:273
+#: label/models.py:133 report/models.py:273
msgid "Enabled"
msgstr "Habilitado"
-#: label/models.py:126
+#: label/models.py:134
msgid "Label template is enabled"
msgstr "Plantilla de etiqueta habilitada"
-#: label/models.py:131
+#: label/models.py:139
msgid "Width [mm]"
msgstr "Ancho [mm]"
-#: label/models.py:132
+#: label/models.py:140
msgid "Label width, specified in mm"
msgstr "Ancho de la etiqueta, especificado en mm"
-#: label/models.py:138
+#: label/models.py:146
msgid "Height [mm]"
msgstr "Altura [mm]"
-#: label/models.py:139
+#: label/models.py:147
msgid "Label height, specified in mm"
msgstr "Altura de la etiqueta, especificada en mm"
-#: label/models.py:145 report/models.py:266
+#: label/models.py:153 report/models.py:266
msgid "Filename Pattern"
msgstr "Patrón de Nombre de archivo"
-#: label/models.py:146
+#: label/models.py:154
msgid "Pattern for generating label filenames"
msgstr "Patrón para generar nombres de archivo de etiquetas"
-#: label/models.py:242
+#: label/models.py:250
msgid "Query filters (comma-separated list of key=value pairs),"
msgstr "Crear filtros de consulta (lista separada por comas de pares clave=valor),"
-#: label/models.py:243 label/models.py:284 label/models.py:312
-#: report/models.py:294 report/models.py:452 report/models.py:490
-#: report/models.py:528
+#: label/models.py:251 label/models.py:292 label/models.py:320
+#: label/models.py:356 report/models.py:294 report/models.py:454
+#: report/models.py:492 report/models.py:530
msgid "Filters"
msgstr "Filtros"
-#: label/models.py:283
+#: label/models.py:291
msgid "Query filters (comma-separated list of key=value pairs"
msgstr "Crear filtros de consulta (lista separada por comas de pares clave=valor"
-#: label/models.py:311
+#: label/models.py:319
msgid "Part query filters (comma-separated value of key=value pairs)"
msgstr "Filtros de búsqueda de partes (valor separado por comas de pares clave=valor)"
+#: label/models.py:355
+msgid "Query filters (comma-separated list of key=value pairs)"
+msgstr ""
+
#: label/templates/label/part/part_label.html:31
#: label/templates/label/stockitem/qr.html:21
#: label/templates/label/stocklocation/qr.html:21
@@ -4352,8 +4404,8 @@ msgstr "Código QR"
#: report/templates/report/inventree_po_report_base.html:31
#: report/templates/report/inventree_so_report_base.html:31
#: templates/js/translated/order.js:327
-#: templates/js/translated/purchase_order.js:2093
-#: templates/js/translated/sales_order.js:1827
+#: templates/js/translated/purchase_order.js:2103
+#: templates/js/translated/sales_order.js:1839
msgid "Total Price"
msgstr "Precio Total"
@@ -4361,30 +4413,30 @@ msgstr "Precio Total"
msgid "No matching purchase order found"
msgstr "No se encontró ninguna orden de compra coincidente"
-#: order/api.py:1452 order/models.py:1178 order/models.py:1262
+#: order/api.py:1452 order/models.py:1191 order/models.py:1275
#: order/templates/order/order_base.html:9
#: order/templates/order/order_base.html:18
#: report/templates/report/inventree_po_report_base.html:14
#: stock/templates/stock/item_base.html:177
#: templates/email/overdue_purchase_order.html:15
-#: templates/js/translated/part.js:1718 templates/js/translated/pricing.js:790
-#: templates/js/translated/purchase_order.js:154
-#: templates/js/translated/purchase_order.js:748
-#: templates/js/translated/purchase_order.js:1637
-#: templates/js/translated/stock.js:1996 templates/js/translated/stock.js:2644
+#: templates/js/translated/part.js:1717 templates/js/translated/pricing.js:790
+#: templates/js/translated/purchase_order.js:165
+#: templates/js/translated/purchase_order.js:759
+#: templates/js/translated/purchase_order.js:1652
+#: templates/js/translated/stock.js:2153 templates/js/translated/stock.js:2775
msgid "Purchase Order"
msgstr "Orden de compra"
-#: order/api.py:1456 order/models.py:1909 order/models.py:1955
+#: order/api.py:1456 order/models.py:1922 order/models.py:1968
#: order/templates/order/return_order_base.html:9
#: order/templates/order/return_order_base.html:28
#: report/templates/report/inventree_return_order_report_base.html:13
-#: templates/js/translated/return_order.js:269
-#: templates/js/translated/stock.js:2678
+#: templates/js/translated/return_order.js:281
+#: templates/js/translated/stock.js:2809
msgid "Return Order"
msgstr "Orden de devolución"
-#: order/api.py:1458 templates/js/translated/sales_order.js:1030
+#: order/api.py:1458 templates/js/translated/sales_order.js:1042
msgid "Unknown"
msgstr "Desconocido"
@@ -4392,11 +4444,11 @@ msgstr "Desconocido"
msgid "Total price for this order"
msgstr "Precio total para este pedido"
-#: order/models.py:79 order/serializers.py:49
+#: order/models.py:79 order/serializers.py:50
msgid "Order Currency"
msgstr "Moneda de pedido"
-#: order/models.py:81 order/serializers.py:50
+#: order/models.py:81 order/serializers.py:51
msgid "Currency for this order (leave blank to use company default)"
msgstr "Moneda para este pedido (dejar en blanco para utilizar el valor predeterminado de la empresa)"
@@ -4408,492 +4460,496 @@ msgstr "El contacto no coincide con la empresa seleccionada"
msgid "Order description (optional)"
msgstr "Descripción del pedido (opcional)"
-#: order/models.py:234
+#: order/models.py:237
msgid "Select project code for this order"
msgstr "Seleccione el código del proyecto para este pedido"
-#: order/models.py:236 order/models.py:1094 order/models.py:1454
+#: order/models.py:240 order/models.py:1107 order/models.py:1467
msgid "Link to external page"
msgstr "Enlace a Url externa"
-#: order/models.py:241
+#: order/models.py:245
msgid "Expected date for order delivery. Order will be overdue after this date."
msgstr "Fecha esperada para la entrega del pedido. El pedido se retrasará después de esta fecha."
-#: order/models.py:250
+#: order/models.py:254
msgid "Created By"
msgstr "Creado por"
-#: order/models.py:257
+#: order/models.py:261
msgid "User or group responsible for this order"
msgstr "Usuario o grupo responsable de este pedido"
-#: order/models.py:267
+#: order/models.py:271
msgid "Point of contact for this order"
msgstr "Punto de contacto para este pedido"
-#: order/models.py:360 order/models.py:766
+#: order/models.py:280
+msgid "Company address for this order"
+msgstr ""
+
+#: order/models.py:373 order/models.py:779
msgid "Order reference"
msgstr "Referencia del pedido"
-#: order/models.py:368 order/models.py:791
+#: order/models.py:381 order/models.py:804
msgid "Purchase order status"
msgstr "Estado de la orden de compra"
-#: order/models.py:383
+#: order/models.py:396
msgid "Company from which the items are being ordered"
msgstr "Compañía de la que se están encargando los artículos"
-#: order/models.py:391 order/templates/order/order_base.html:152
-#: templates/js/translated/purchase_order.js:1662
+#: order/models.py:404 order/templates/order/order_base.html:148
+#: templates/js/translated/purchase_order.js:1677
msgid "Supplier Reference"
msgstr "Referencia del proveedor"
-#: order/models.py:391
+#: order/models.py:404
msgid "Supplier order reference code"
msgstr "Código de referencia de pedido del proveedor"
-#: order/models.py:398
+#: order/models.py:411
msgid "received by"
msgstr "recibido por"
-#: order/models.py:403 order/models.py:1761
+#: order/models.py:416 order/models.py:1774
msgid "Issue Date"
msgstr "Fecha de emisión"
-#: order/models.py:404 order/models.py:1762
+#: order/models.py:417 order/models.py:1775
msgid "Date order was issued"
msgstr "Fecha de expedición del pedido"
-#: order/models.py:410 order/models.py:1768
+#: order/models.py:423 order/models.py:1781
msgid "Date order was completed"
msgstr "La fecha de pedido fue completada"
-#: order/models.py:445
+#: order/models.py:458
msgid "Part supplier must match PO supplier"
msgstr "El proveedor de la parte debe coincidir con el proveedor de PO"
-#: order/models.py:606
+#: order/models.py:619
msgid "Quantity must be a positive number"
msgstr "La cantidad debe ser un número positivo"
-#: order/models.py:780
+#: order/models.py:793
msgid "Company to which the items are being sold"
msgstr "Empresa a la que se venden los artículos"
-#: order/models.py:799 order/models.py:1755
+#: order/models.py:812 order/models.py:1768
msgid "Customer Reference "
msgstr "Referencia del cliente "
-#: order/models.py:799 order/models.py:1756
+#: order/models.py:812 order/models.py:1769
msgid "Customer order reference code"
msgstr "Código de referencia de pedido del cliente"
-#: order/models.py:801 order/models.py:1408
-#: templates/js/translated/sales_order.js:831
-#: templates/js/translated/sales_order.js:1012
+#: order/models.py:814 order/models.py:1421
+#: templates/js/translated/sales_order.js:843
+#: templates/js/translated/sales_order.js:1024
msgid "Shipment Date"
msgstr "Fecha de envío"
-#: order/models.py:808
+#: order/models.py:821
msgid "shipped by"
msgstr "enviado por"
-#: order/models.py:857
+#: order/models.py:870
msgid "Order cannot be completed as no parts have been assigned"
msgstr "El pedido no se puede completar porque no se han asignado partes"
-#: order/models.py:861
+#: order/models.py:874
msgid "Only an open order can be marked as complete"
msgstr "Sólo una orden abierta puede ser marcada como completa"
-#: order/models.py:864 templates/js/translated/sales_order.js:491
+#: order/models.py:877 templates/js/translated/sales_order.js:503
msgid "Order cannot be completed as there are incomplete shipments"
msgstr "El pedido no se puede completar porque hay envíos incompletos"
-#: order/models.py:867
+#: order/models.py:880
msgid "Order cannot be completed as there are incomplete line items"
msgstr "El pedido no se puede completar porque hay artículos de línea incompletos"
-#: order/models.py:1074
+#: order/models.py:1087
msgid "Item quantity"
msgstr "Cantidad del artículo"
-#: order/models.py:1087
+#: order/models.py:1100
msgid "Line item reference"
msgstr "Referencia de línea en la orden"
-#: order/models.py:1089
+#: order/models.py:1102
msgid "Line item notes"
msgstr "Notas del artículo de línea"
-#: order/models.py:1100
+#: order/models.py:1113
msgid "Target date for this line item (leave blank to use the target date from the order)"
msgstr "Fecha objetivo para este artículo de línea (dejar en blanco para usar la fecha de destino de la orden)"
-#: order/models.py:1118
+#: order/models.py:1131
msgid "Line item description (optional)"
msgstr "Descripción del artículo de línea (opcional)"
-#: order/models.py:1123
+#: order/models.py:1136
msgid "Context"
msgstr "Contexto"
-#: order/models.py:1124
+#: order/models.py:1137
msgid "Additional context for this line"
msgstr "Contexto adicional para esta línea"
-#: order/models.py:1133
+#: order/models.py:1146
msgid "Unit price"
msgstr "Precio unitario"
-#: order/models.py:1163
+#: order/models.py:1176
msgid "Supplier part must match supplier"
msgstr "La parte del proveedor debe coincidir con el proveedor"
-#: order/models.py:1171
+#: order/models.py:1184
msgid "deleted"
msgstr "eliminado"
-#: order/models.py:1177 order/models.py:1262 order/models.py:1303
-#: order/models.py:1402 order/models.py:1551 order/models.py:1908
-#: order/models.py:1955 templates/js/translated/sales_order.js:1474
+#: order/models.py:1190 order/models.py:1275 order/models.py:1316
+#: order/models.py:1415 order/models.py:1564 order/models.py:1921
+#: order/models.py:1968 templates/js/translated/sales_order.js:1486
msgid "Order"
msgstr "Orden"
-#: order/models.py:1196
+#: order/models.py:1209
msgid "Supplier part"
msgstr "Parte del proveedor"
-#: order/models.py:1203 order/templates/order/order_base.html:200
-#: templates/js/translated/part.js:1841 templates/js/translated/part.js:1872
-#: templates/js/translated/purchase_order.js:1276
-#: templates/js/translated/purchase_order.js:2137
-#: templates/js/translated/return_order.js:748
-#: templates/js/translated/table_filters.js:90
-#: templates/js/translated/table_filters.js:515
+#: order/models.py:1216 order/templates/order/order_base.html:196
+#: templates/js/translated/part.js:1840 templates/js/translated/part.js:1871
+#: templates/js/translated/purchase_order.js:1291
+#: templates/js/translated/purchase_order.js:2147
+#: templates/js/translated/return_order.js:760
+#: templates/js/translated/table_filters.js:96
+#: templates/js/translated/table_filters.js:537
msgid "Received"
msgstr "Recibido"
-#: order/models.py:1204
+#: order/models.py:1217
msgid "Number of items received"
msgstr "Número de artículos recibidos"
-#: order/models.py:1211 stock/models.py:823 stock/serializers.py:252
+#: order/models.py:1224 stock/models.py:823 stock/serializers.py:314
#: stock/templates/stock/item_base.html:184
-#: templates/js/translated/stock.js:2047
+#: templates/js/translated/stock.js:2204
msgid "Purchase Price"
msgstr "Precio de Compra"
-#: order/models.py:1212
+#: order/models.py:1225
msgid "Unit purchase price"
msgstr "Precio de compra unitario"
-#: order/models.py:1225
+#: order/models.py:1238
msgid "Where does the Purchaser want this item to be stored?"
msgstr "¿Dónde quiere el comprador almacenar este objeto?"
-#: order/models.py:1291
+#: order/models.py:1304
msgid "Virtual part cannot be assigned to a sales order"
msgstr "Una parte virtual no puede ser asignada a un pedido de venta"
-#: order/models.py:1296
+#: order/models.py:1309
msgid "Only salable parts can be assigned to a sales order"
msgstr "Sólo las partes vendibles pueden ser asignadas a un pedido de venta"
-#: order/models.py:1322 part/templates/part/part_pricing.html:107
+#: order/models.py:1335 part/templates/part/part_pricing.html:107
#: part/templates/part/prices.html:128 templates/js/translated/pricing.js:943
msgid "Sale Price"
msgstr "Precio de Venta"
-#: order/models.py:1323
+#: order/models.py:1336
msgid "Unit sale price"
msgstr "Precio de venta unitario"
-#: order/models.py:1333
+#: order/models.py:1346
msgid "Shipped quantity"
msgstr "Cantidad enviada"
-#: order/models.py:1409
+#: order/models.py:1422
msgid "Date of shipment"
msgstr "Fecha del envío"
-#: order/models.py:1414 templates/js/translated/sales_order.js:1024
+#: order/models.py:1427 templates/js/translated/sales_order.js:1036
msgid "Delivery Date"
msgstr "Fecha de entrega"
-#: order/models.py:1415
+#: order/models.py:1428
msgid "Date of delivery of shipment"
msgstr "Fecha de entrega del envío"
-#: order/models.py:1422
+#: order/models.py:1435
msgid "Checked By"
msgstr "Revisado por"
-#: order/models.py:1423
+#: order/models.py:1436
msgid "User who checked this shipment"
msgstr "Usuario que revisó este envío"
-#: order/models.py:1430 order/models.py:1627 order/serializers.py:1248
-#: order/serializers.py:1376 templates/js/translated/model_renderers.js:415
+#: order/models.py:1443 order/models.py:1640 order/serializers.py:1254
+#: order/serializers.py:1382 templates/js/translated/model_renderers.js:429
msgid "Shipment"
msgstr "Envío"
-#: order/models.py:1431
+#: order/models.py:1444
msgid "Shipment number"
msgstr "Número de envío"
-#: order/models.py:1439
+#: order/models.py:1452
msgid "Tracking Number"
msgstr "Número de Seguimiento"
-#: order/models.py:1440
+#: order/models.py:1453
msgid "Shipment tracking information"
msgstr "Información de seguimiento del envío"
-#: order/models.py:1447
+#: order/models.py:1460
msgid "Invoice Number"
msgstr "Número de factura"
-#: order/models.py:1448
+#: order/models.py:1461
msgid "Reference number for associated invoice"
msgstr "Número de referencia para la factura asociada"
-#: order/models.py:1470
+#: order/models.py:1483
msgid "Shipment has already been sent"
msgstr "El envío ya ha sido enviado"
-#: order/models.py:1473
+#: order/models.py:1486
msgid "Shipment has no allocated stock items"
msgstr "El envío no tiene artículos de stock asignados"
-#: order/models.py:1586 order/models.py:1588
+#: order/models.py:1599 order/models.py:1601
msgid "Stock item has not been assigned"
msgstr "El artículo de stock no ha sido asignado"
-#: order/models.py:1592
+#: order/models.py:1605
msgid "Cannot allocate stock item to a line with a different part"
msgstr "No se puede asignar el artículo de stock a una línea con una parte diferente"
-#: order/models.py:1594
+#: order/models.py:1607
msgid "Cannot allocate stock to a line without a part"
msgstr "No se puede asignar stock a una línea sin una parte"
-#: order/models.py:1597
+#: order/models.py:1610
msgid "Allocation quantity cannot exceed stock quantity"
msgstr "La cantidad de asignación no puede exceder la cantidad de stock"
-#: order/models.py:1607 order/serializers.py:1110
+#: order/models.py:1620 order/serializers.py:1116
msgid "Quantity must be 1 for serialized stock item"
msgstr "La cantidad debe ser 1 para el stock serializado"
-#: order/models.py:1610
+#: order/models.py:1623
msgid "Sales order does not match shipment"
msgstr "La orden de venta no coincide con el envío"
-#: order/models.py:1611
+#: order/models.py:1624
msgid "Shipment does not match sales order"
msgstr "El envío no coincide con el pedido de venta"
-#: order/models.py:1619
+#: order/models.py:1632
msgid "Line"
msgstr "Línea"
-#: order/models.py:1628
+#: order/models.py:1641
msgid "Sales order shipment reference"
msgstr "Referencia del envío del pedido de venta"
-#: order/models.py:1641 order/models.py:1916
-#: templates/js/translated/return_order.js:706
+#: order/models.py:1654 order/models.py:1929
+#: templates/js/translated/return_order.js:718
msgid "Item"
msgstr "Ítem"
-#: order/models.py:1642
+#: order/models.py:1655
msgid "Select stock item to allocate"
msgstr "Seleccionar artículo de stock para asignar"
-#: order/models.py:1645
+#: order/models.py:1658
msgid "Enter stock allocation quantity"
msgstr "Especificar la cantidad de asignación de stock"
-#: order/models.py:1725
+#: order/models.py:1738
msgid "Return Order reference"
msgstr "Referencia de la orden de devolución"
-#: order/models.py:1739
+#: order/models.py:1752
msgid "Company from which items are being returned"
msgstr "Compañía de la que se están devolviendo los artículos"
-#: order/models.py:1750
+#: order/models.py:1763
msgid "Return order status"
msgstr "Estado de la orden de devolución"
-#: order/models.py:1901
+#: order/models.py:1914
msgid "Only serialized items can be assigned to a Return Order"
msgstr "Sólo los artículos serializados pueden ser asignados a una orden de devolución"
-#: order/models.py:1917
+#: order/models.py:1930
msgid "Select item to return from customer"
msgstr "Seleccionar el artículo a devolver del cliente"
-#: order/models.py:1922
+#: order/models.py:1935
msgid "Received Date"
msgstr "Fecha de recepción"
-#: order/models.py:1923
+#: order/models.py:1936
msgid "The date this this return item was received"
msgstr "La fecha en la que se recibió este artículo de devolución"
-#: order/models.py:1934 templates/js/translated/return_order.js:717
-#: templates/js/translated/table_filters.js:93
+#: order/models.py:1947 templates/js/translated/return_order.js:729
+#: templates/js/translated/table_filters.js:99
msgid "Outcome"
msgstr "Resultado"
-#: order/models.py:1934
+#: order/models.py:1947
msgid "Outcome for this line item"
msgstr "Salida para este artículo de línea"
-#: order/models.py:1940
+#: order/models.py:1953
msgid "Cost associated with return or repair for this line item"
msgstr "Costo asociado con la devolución o reparación para este artículo de línea"
-#: order/serializers.py:247
+#: order/serializers.py:253
msgid "Order cannot be cancelled"
msgstr "El pedido no puede ser cancelado"
-#: order/serializers.py:262 order/serializers.py:1128
+#: order/serializers.py:268 order/serializers.py:1134
msgid "Allow order to be closed with incomplete line items"
msgstr "Permitir cerrar el pedido con artículos de línea incompletos"
-#: order/serializers.py:273 order/serializers.py:1139
+#: order/serializers.py:279 order/serializers.py:1145
msgid "Order has incomplete line items"
msgstr "El pedido tiene artículos de línea incompletos"
-#: order/serializers.py:386
+#: order/serializers.py:392
msgid "Order is not open"
msgstr "El pedido no está abierto"
-#: order/serializers.py:404
+#: order/serializers.py:410
msgid "Purchase price currency"
msgstr "Moneda del precio de compra"
-#: order/serializers.py:422
+#: order/serializers.py:428
msgid "Supplier part must be specified"
msgstr "Debe especificar la parte del proveedor"
-#: order/serializers.py:427
+#: order/serializers.py:433
msgid "Purchase order must be specified"
msgstr "La orden de compra debe especificarse"
-#: order/serializers.py:433
+#: order/serializers.py:439
msgid "Supplier must match purchase order"
msgstr "El proveedor debe coincidir con la orden de compra"
-#: order/serializers.py:434
+#: order/serializers.py:440
msgid "Purchase order must match supplier"
msgstr "La orden de compra debe coincidir con el proveedor"
-#: order/serializers.py:472 order/serializers.py:1216
+#: order/serializers.py:478 order/serializers.py:1222
msgid "Line Item"
msgstr "Artículo en línea"
-#: order/serializers.py:478
+#: order/serializers.py:484
msgid "Line item does not match purchase order"
msgstr "La línea del artículo no coincide con la orden de compra"
-#: order/serializers.py:488 order/serializers.py:607 order/serializers.py:1589
+#: order/serializers.py:494 order/serializers.py:613 order/serializers.py:1595
msgid "Select destination location for received items"
msgstr "Seleccione la ubicación de destino para los artículos recibidos"
-#: order/serializers.py:507 templates/js/translated/purchase_order.js:1100
+#: order/serializers.py:513 templates/js/translated/purchase_order.js:1115
msgid "Enter batch code for incoming stock items"
msgstr "Introduzca el código de lote para los artículos de almacén entrantes"
-#: order/serializers.py:515 templates/js/translated/purchase_order.js:1124
+#: order/serializers.py:521 templates/js/translated/purchase_order.js:1139
msgid "Enter serial numbers for incoming stock items"
msgstr "Introduzca números de serie para artículos de almacén entrantes"
-#: order/serializers.py:528 templates/js/translated/barcode.js:52
+#: order/serializers.py:534 templates/js/translated/barcode.js:52
msgid "Barcode"
msgstr "Código de barras"
-#: order/serializers.py:529
+#: order/serializers.py:535
msgid "Scanned barcode"
msgstr "Código de barras escaneado"
-#: order/serializers.py:545
+#: order/serializers.py:551
msgid "Barcode is already in use"
msgstr "Código de barras en uso"
-#: order/serializers.py:569
+#: order/serializers.py:575
msgid "An integer quantity must be provided for trackable parts"
msgstr "Debe proporcionarse una cantidad entera para las partes rastreables"
-#: order/serializers.py:623 order/serializers.py:1604
+#: order/serializers.py:629 order/serializers.py:1610
msgid "Line items must be provided"
msgstr "Se deben proporcionar artículos de línea"
-#: order/serializers.py:640
+#: order/serializers.py:646
msgid "Destination location must be specified"
msgstr "Se requiere ubicación de destino"
-#: order/serializers.py:651
+#: order/serializers.py:657
msgid "Supplied barcode values must be unique"
msgstr "Los valores del código de barras deben ser únicos"
-#: order/serializers.py:950
+#: order/serializers.py:956
msgid "Sale price currency"
msgstr "Moneda del precio de venta"
-#: order/serializers.py:1007
+#: order/serializers.py:1013
msgid "No shipment details provided"
msgstr "No se proporcionaron detalles de envío"
-#: order/serializers.py:1071 order/serializers.py:1225
+#: order/serializers.py:1077 order/serializers.py:1231
msgid "Line item is not associated with this order"
msgstr "Artículo en línea no está asociado con este pedido"
-#: order/serializers.py:1093
+#: order/serializers.py:1099
msgid "Quantity must be positive"
msgstr "La cantidad debe ser positiva"
-#: order/serializers.py:1238
+#: order/serializers.py:1244
msgid "Enter serial numbers to allocate"
msgstr "Introduzca números de serie para asignar"
-#: order/serializers.py:1260 order/serializers.py:1384
+#: order/serializers.py:1266 order/serializers.py:1390
msgid "Shipment has already been shipped"
msgstr "El envío ya ha sido enviado"
-#: order/serializers.py:1263 order/serializers.py:1387
+#: order/serializers.py:1269 order/serializers.py:1393
msgid "Shipment is not associated with this order"
msgstr "El envío no está asociado con este pedido"
-#: order/serializers.py:1317
+#: order/serializers.py:1323
msgid "No match found for the following serial numbers"
msgstr "No se han encontrado coincidencias para los siguientes números de serie"
-#: order/serializers.py:1327
+#: order/serializers.py:1333
msgid "The following serial numbers are already allocated"
msgstr "Los siguientes números de serie ya están asignados"
-#: order/serializers.py:1555
+#: order/serializers.py:1561
msgid "Return order line item"
msgstr "Artículo de línea de orden de devolución"
-#: order/serializers.py:1562
+#: order/serializers.py:1568
msgid "Line item does not match return order"
msgstr "El artículo de línea no coincide con la orden de devolución"
-#: order/serializers.py:1565
+#: order/serializers.py:1571
msgid "Line item has already been received"
msgstr "El artículo de línea ya ha sido recibido"
-#: order/serializers.py:1597
+#: order/serializers.py:1603
msgid "Items can only be received against orders which are in progress"
msgstr "Los artículos sólo pueden ser recibidos contra pedidos en curso"
-#: order/serializers.py:1678
+#: order/serializers.py:1684
msgid "Line price currency"
msgstr "Moneda de precio de línea"
@@ -4957,82 +5013,74 @@ msgid "Issue Order"
msgstr "Emitir pedido"
#: order/templates/order/order_base.html:83
-msgid "Receive items"
-msgstr "Recibir artículos"
-
-#: order/templates/order/order_base.html:85
-msgid "Receive Items"
-msgstr "Recibir artículos"
-
-#: order/templates/order/order_base.html:87
#: order/templates/order/return_order_base.html:87
msgid "Mark order as complete"
msgstr "Marcar pedido como completado"
-#: order/templates/order/order_base.html:88
+#: order/templates/order/order_base.html:84
#: order/templates/order/return_order_base.html:88
#: order/templates/order/sales_order_base.html:94
msgid "Complete Order"
msgstr "Completar pedido"
-#: order/templates/order/order_base.html:95
+#: order/templates/order/order_base.html:91
msgid "Supplier part thumbnail"
msgstr "Miniatura de la parte del proveedor"
-#: order/templates/order/order_base.html:110
+#: order/templates/order/order_base.html:106
#: order/templates/order/return_order_base.html:102
#: order/templates/order/sales_order_base.html:107
msgid "Order Reference"
msgstr "Referencia del pedido"
-#: order/templates/order/order_base.html:115
+#: order/templates/order/order_base.html:111
#: order/templates/order/return_order_base.html:107
#: order/templates/order/sales_order_base.html:112
msgid "Order Description"
msgstr "Descripción del pedido"
-#: order/templates/order/order_base.html:122
+#: order/templates/order/order_base.html:118
#: order/templates/order/return_order_base.html:114
#: order/templates/order/sales_order_base.html:119
msgid "Order Status"
msgstr "Estado del pedido"
-#: order/templates/order/order_base.html:145
+#: order/templates/order/order_base.html:141
msgid "No suppplier information available"
msgstr "No hay información disponible sobre el proveedor"
-#: order/templates/order/order_base.html:158
+#: order/templates/order/order_base.html:154
#: order/templates/order/sales_order_base.html:158
msgid "Completed Line Items"
msgstr "Artículos de línea completados"
-#: order/templates/order/order_base.html:164
+#: order/templates/order/order_base.html:160
#: order/templates/order/sales_order_base.html:164
#: order/templates/order/sales_order_base.html:174
msgid "Incomplete"
msgstr "Incompleto"
-#: order/templates/order/order_base.html:183
+#: order/templates/order/order_base.html:179
#: order/templates/order/return_order_base.html:158
#: report/templates/report/inventree_build_order_base.html:121
msgid "Issued"
msgstr "Emitido"
-#: order/templates/order/order_base.html:221
+#: order/templates/order/order_base.html:224
msgid "Total cost"
msgstr "Costo total"
-#: order/templates/order/order_base.html:225
-#: order/templates/order/return_order_base.html:193
-#: order/templates/order/sales_order_base.html:233
+#: order/templates/order/order_base.html:228
+#: order/templates/order/return_order_base.html:200
+#: order/templates/order/sales_order_base.html:240
msgid "Total cost could not be calculated"
msgstr "No se ha podido calcular el costo total"
-#: order/templates/order/order_base.html:331
+#: order/templates/order/order_base.html:318
msgid "Purchase Order QR Code"
msgstr "Código QR de la orden de compra"
-#: order/templates/order/order_base.html:343
+#: order/templates/order/order_base.html:330
msgid "Link Barcode to Purchase Order"
msgstr "Vincular código de barras a la orden de compra"
@@ -5085,13 +5133,13 @@ msgstr "Duplicar selección"
#: 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:132 templates/js/translated/build.js:512
-#: templates/js/translated/build.js:2348
-#: templates/js/translated/purchase_order.js:692
-#: templates/js/translated/purchase_order.js:1206
-#: templates/js/translated/return_order.js:494
-#: templates/js/translated/sales_order.js:1097
-#: templates/js/translated/stock.js:681 templates/js/translated/stock.js:850
+#: templates/js/translated/bom.js:133 templates/js/translated/build.js:518
+#: templates/js/translated/build.js:1555
+#: templates/js/translated/purchase_order.js:703
+#: templates/js/translated/purchase_order.js:1221
+#: templates/js/translated/return_order.js:506
+#: templates/js/translated/sales_order.js:1109
+#: templates/js/translated/stock.js:680 templates/js/translated/stock.js:849
#: templates/patterns/wizard/match_fields.html:70
msgid "Remove row"
msgstr "Eliminar fila"
@@ -5152,9 +5200,9 @@ msgstr "Comprar artículos de orden"
#: order/templates/order/purchase_order_detail.html:27
#: order/templates/order/return_order_detail.html:24
#: order/templates/order/sales_order_detail.html:24
-#: templates/js/translated/purchase_order.js:419
-#: templates/js/translated/return_order.js:447
-#: templates/js/translated/sales_order.js:222
+#: templates/js/translated/purchase_order.js:430
+#: templates/js/translated/return_order.js:459
+#: templates/js/translated/sales_order.js:234
msgid "Add Line Item"
msgstr "Añadir artículo de línea"
@@ -5165,30 +5213,25 @@ msgstr "Añadir artículo de línea"
msgid "Receive Line Items"
msgstr "Recibir artículos de línea"
-#: order/templates/order/purchase_order_detail.html:49
#: order/templates/order/purchase_order_detail.html:50
-msgid "Delete Line Items"
-msgstr "Eliminar artículos de línea"
-
-#: order/templates/order/purchase_order_detail.html:66
-#: order/templates/order/return_order_detail.html:47
-#: order/templates/order/sales_order_detail.html:43
+#: order/templates/order/return_order_detail.html:45
+#: order/templates/order/sales_order_detail.html:41
msgid "Extra Lines"
msgstr "Líneas Adicionales"
-#: order/templates/order/purchase_order_detail.html:72
-#: order/templates/order/return_order_detail.html:53
-#: order/templates/order/sales_order_detail.html:49
+#: order/templates/order/purchase_order_detail.html:56
+#: order/templates/order/return_order_detail.html:51
+#: order/templates/order/sales_order_detail.html:47
msgid "Add Extra Line"
msgstr "Añadir línea adicional"
-#: order/templates/order/purchase_order_detail.html:92
+#: order/templates/order/purchase_order_detail.html:74
msgid "Received Items"
msgstr "Articulos Recibidos"
-#: order/templates/order/purchase_order_detail.html:117
-#: order/templates/order/return_order_detail.html:89
-#: order/templates/order/sales_order_detail.html:149
+#: order/templates/order/purchase_order_detail.html:99
+#: order/templates/order/return_order_detail.html:85
+#: order/templates/order/sales_order_detail.html:139
msgid "Order Notes"
msgstr "Notas del pedido"
@@ -5208,29 +5251,29 @@ msgstr "Imprimir lista de empaquetado"
#: order/templates/order/return_order_base.html:139
#: order/templates/order/sales_order_base.html:152
-#: templates/js/translated/return_order.js:297
-#: templates/js/translated/sales_order.js:785
+#: templates/js/translated/return_order.js:309
+#: templates/js/translated/sales_order.js:797
msgid "Customer Reference"
msgstr "Referencia del cliente"
-#: order/templates/order/return_order_base.html:189
-#: order/templates/order/sales_order_base.html:229
+#: order/templates/order/return_order_base.html:196
+#: order/templates/order/sales_order_base.html:236
#: part/templates/part/part_pricing.html:32
#: part/templates/part/part_pricing.html:58
#: part/templates/part/part_pricing.html:99
#: part/templates/part/part_pricing.html:114
-#: templates/js/translated/part.js:1046
-#: templates/js/translated/purchase_order.js:1712
-#: templates/js/translated/return_order.js:369
-#: templates/js/translated/sales_order.js:843
+#: templates/js/translated/part.js:1045
+#: templates/js/translated/purchase_order.js:1727
+#: templates/js/translated/return_order.js:381
+#: templates/js/translated/sales_order.js:855
msgid "Total Cost"
msgstr "Costo Total"
-#: order/templates/order/return_order_base.html:257
+#: order/templates/order/return_order_base.html:264
msgid "Return Order QR Code"
msgstr "Devolver código QR del pedido"
-#: order/templates/order/return_order_base.html:269
+#: order/templates/order/return_order_base.html:276
msgid "Link Barcode to Return Order"
msgstr "Enlazar código de barras al pedido de devolución"
@@ -5248,7 +5291,7 @@ msgid "Ship Items"
msgstr "Enviar artículos"
#: order/templates/order/sales_order_base.html:93
-#: templates/js/translated/sales_order.js:469
+#: templates/js/translated/sales_order.js:481
msgid "Complete Sales Order"
msgstr "Ordenes de venta completas"
@@ -5257,16 +5300,16 @@ msgid "This Sales Order has not been fully allocated"
msgstr "Esta orden de venta no ha sido completamente asignada"
#: order/templates/order/sales_order_base.html:170
-#: order/templates/order/sales_order_detail.html:105
+#: order/templates/order/sales_order_detail.html:99
#: order/templates/order/so_sidebar.html:11
msgid "Completed Shipments"
msgstr "Envíos completados"
-#: order/templates/order/sales_order_base.html:306
+#: order/templates/order/sales_order_base.html:313
msgid "Sales Order QR Code"
msgstr "Código QR del pedido de ventas"
-#: order/templates/order/sales_order_base.html:318
+#: order/templates/order/sales_order_base.html:325
msgid "Link Barcode to Sales Order"
msgstr "Enlazar código de barras al pedido de venta"
@@ -5274,18 +5317,17 @@ msgstr "Enlazar código de barras al pedido de venta"
msgid "Sales Order Items"
msgstr "Artículos de Pedidos de Venta"
-#: order/templates/order/sales_order_detail.html:71
-#: order/templates/order/so_sidebar.html:8 templates/InvenTree/index.html:332
+#: order/templates/order/sales_order_detail.html:67
+#: order/templates/order/so_sidebar.html:8 templates/InvenTree/index.html:284
msgid "Pending Shipments"
msgstr "Envíos pendientes"
-#: order/templates/order/sales_order_detail.html:75
-#: templates/attachment_table.html:6 templates/js/translated/bom.js:1236
-#: templates/js/translated/build.js:2249
+#: order/templates/order/sales_order_detail.html:71
+#: templates/js/translated/bom.js:1256 templates/js/translated/filters.js:297
msgid "Actions"
msgstr "Acciones"
-#: order/templates/order/sales_order_detail.html:84
+#: order/templates/order/sales_order_detail.html:80
msgid "New Shipment"
msgstr "Nuevo Envío"
@@ -5311,12 +5353,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:33 part/admin.py:273 part/models.py:3667 part/tasks.py:288
+#: part/admin.py:33 part/admin.py:273 part/models.py:3716 part/tasks.py:288
#: stock/admin.py:101
msgid "Part ID"
msgstr "ID de Parte"
-#: part/admin.py:34 part/admin.py:275 part/models.py:3671 part/tasks.py:289
+#: part/admin.py:34 part/admin.py:275 part/models.py:3720 part/tasks.py:289
#: stock/admin.py:102
msgid "Part Name"
msgstr "Nombre de parte"
@@ -5325,19 +5367,19 @@ msgstr "Nombre de parte"
msgid "Part Description"
msgstr "Descripción de parte"
-#: part/admin.py:36 part/models.py:889 part/templates/part/part_base.html:271
-#: templates/js/translated/part.js:1200 templates/js/translated/part.js:2233
-#: templates/js/translated/stock.js:1795
+#: part/admin.py:36 part/models.py:890 part/templates/part/part_base.html:271
+#: templates/js/translated/part.js:1199 templates/js/translated/part.js:2309
+#: templates/js/translated/stock.js:1952
msgid "IPN"
msgstr "IPN"
-#: part/admin.py:37 part/models.py:896 part/templates/part/part_base.html:279
-#: report/models.py:179 templates/js/translated/part.js:1205
-#: templates/js/translated/part.js:2239
+#: part/admin.py:37 part/models.py:897 part/templates/part/part_base.html:279
+#: report/models.py:179 templates/js/translated/part.js:1204
+#: templates/js/translated/part.js:2315
msgid "Revision"
msgstr "Revisión"
-#: part/admin.py:38 part/admin.py:198 part/models.py:875
+#: part/admin.py:38 part/admin.py:198 part/models.py:876
#: part/templates/part/category.html:93 part/templates/part/part_base.html:300
msgid "Keywords"
msgstr "Palabras claves"
@@ -5358,24 +5400,24 @@ msgstr "ID de ubicación predeterminada"
msgid "Default Supplier ID"
msgstr "ID de proveedor predeterminado"
-#: part/admin.py:46 part/models.py:864 part/templates/part/part_base.html:179
+#: part/admin.py:46 part/models.py:865 part/templates/part/part_base.html:179
msgid "Variant Of"
msgstr "Variante de"
-#: part/admin.py:47 part/models.py:980 part/templates/part/part_base.html:205
+#: part/admin.py:47 part/models.py:981 part/templates/part/part_base.html:205
msgid "Minimum Stock"
msgstr "Stock mínimo"
#: part/admin.py:61 part/templates/part/part_base.html:199
-#: templates/js/translated/company.js:1299
-#: templates/js/translated/table_filters.js:301
+#: templates/js/translated/company.js:1720
+#: templates/js/translated/table_filters.js:307
msgid "In Stock"
msgstr "En Stock"
#: part/admin.py:62 part/bom.py:178 part/templates/part/part_base.html:212
-#: templates/js/translated/bom.js:1167 templates/js/translated/build.js:2191
-#: templates/js/translated/part.js:687 templates/js/translated/part.js:2123
-#: templates/js/translated/table_filters.js:140
+#: templates/js/translated/bom.js:1187 templates/js/translated/build.js:2541
+#: templates/js/translated/part.js:686 templates/js/translated/part.js:2122
+#: templates/js/translated/table_filters.js:146
msgid "On Order"
msgstr "En pedido"
@@ -5383,23 +5425,16 @@ msgstr "En pedido"
msgid "Used In"
msgstr "Usado en"
-#: part/admin.py:64 templates/js/translated/build.js:2203
-#: templates/js/translated/build.js:2465 templates/js/translated/build.js:3052
-#: templates/js/translated/sales_order.js:1906
-#: templates/js/translated/table_filters.js:488
-msgid "Allocated"
-msgstr "Asignadas"
-
#: part/admin.py:65 part/templates/part/part_base.html:243 stock/admin.py:124
-#: templates/js/translated/part.js:692 templates/js/translated/part.js:2127
+#: templates/js/translated/part.js:691 templates/js/translated/part.js:2126
msgid "Building"
msgstr "En construcción"
-#: part/admin.py:66 part/models.py:2930 templates/js/translated/part.js:943
+#: part/admin.py:66 part/models.py:2964 templates/js/translated/part.js:942
msgid "Minimum Cost"
msgstr "Costo mínimo"
-#: part/admin.py:67 part/models.py:2936 templates/js/translated/part.js:953
+#: part/admin.py:67 part/models.py:2970 templates/js/translated/part.js:952
msgid "Maximum Cost"
msgstr "Costo máximo"
@@ -5416,13 +5451,13 @@ msgstr "Nombre del padre"
msgid "Category Path"
msgstr "Ruta de Categoría"
-#: part/admin.py:202 part/models.py:392 part/templates/part/cat_link.html:3
-#: part/templates/part/category.html:23 part/templates/part/category.html:140
-#: part/templates/part/category.html:160
+#: part/admin.py:202 part/models.py:393 part/serializers.py:307
+#: part/templates/part/cat_link.html:3 part/templates/part/category.html:23
+#: part/templates/part/category.html:140 part/templates/part/category.html:160
#: part/templates/part/category_sidebar.html:9
-#: templates/InvenTree/index.html:86 templates/InvenTree/search.html:84
+#: templates/InvenTree/index.html:36 templates/InvenTree/search.html:84
#: templates/InvenTree/settings/sidebar.html:45
-#: templates/js/translated/part.js:2754 templates/js/translated/search.js:172
+#: templates/js/translated/part.js:2739 templates/js/translated/search.js:130
#: templates/navbar.html:24 users/models.py:38
msgid "Parts"
msgstr "Partes"
@@ -5439,7 +5474,7 @@ msgstr "ID de artículo de BOM"
msgid "Parent IPN"
msgstr "IPN del padre"
-#: part/admin.py:274 part/models.py:3675
+#: part/admin.py:274 part/models.py:3724
msgid "Part IPN"
msgstr "IPN de la parte"
@@ -5453,35 +5488,35 @@ msgstr "Precio mínimo"
msgid "Maximum Price"
msgstr "Precio máximo"
-#: part/api.py:498
+#: part/api.py:501
msgid "Incoming Purchase Order"
msgstr "Orden de compra entrante"
-#: part/api.py:518
+#: part/api.py:521
msgid "Outgoing Sales Order"
msgstr "Orden de venta saliente"
-#: part/api.py:536
+#: part/api.py:539
msgid "Stock produced by Build Order"
msgstr ""
-#: part/api.py:622
+#: part/api.py:625
msgid "Stock required for Build Order"
msgstr ""
-#: part/api.py:770
+#: part/api.py:773
msgid "Valid"
msgstr "Válido"
-#: part/api.py:771
+#: part/api.py:774
msgid "Validate entire Bill of Materials"
msgstr "Validación de Lista de Materiales"
-#: part/api.py:777
+#: part/api.py:780
msgid "This option must be selected"
msgstr "Esta opción debe ser seleccionada"
-#: part/bom.py:175 part/models.py:127 part/models.py:923
+#: part/bom.py:175 part/models.py:128 part/models.py:924
#: part/templates/part/category.html:115 part/templates/part/part_base.html:369
msgid "Default Location"
msgstr "Ubicación Predeterminada"
@@ -5491,7 +5526,7 @@ msgid "Total Stock"
msgstr "Inventario Total"
#: part/bom.py:177 part/templates/part/part_base.html:194
-#: templates/js/translated/sales_order.js:1873
+#: templates/js/translated/sales_order.js:1885
msgid "Available Stock"
msgstr "Stock Disponible"
@@ -5499,916 +5534,913 @@ msgstr "Stock Disponible"
msgid "Input quantity for price calculation"
msgstr "Cantidad de entrada para el cálculo del precio"
-#: part/models.py:75 part/models.py:3616 part/templates/part/category.html:16
+#: part/models.py:76 part/models.py:3665 part/templates/part/category.html:16
#: part/templates/part/part_app_base.html:10
msgid "Part Category"
msgstr "Categoría de parte"
-#: part/models.py:76 part/templates/part/category.html:135
-#: templates/InvenTree/search.html:97 templates/js/translated/search.js:200
+#: part/models.py:77 part/templates/part/category.html:135
+#: templates/InvenTree/search.html:97 templates/js/translated/search.js:158
#: users/models.py:37
msgid "Part Categories"
msgstr "Categorías de parte"
-#: part/models.py:128
+#: part/models.py:129
msgid "Default location for parts in this category"
msgstr "Ubicación predeterminada para partes de esta categoría"
-#: part/models.py:133 stock/models.py:124 templates/js/translated/stock.js:2520
-#: templates/js/translated/table_filters.js:209
-#: templates/js/translated/table_filters.js:229
+#: part/models.py:134 stock/models.py:124 templates/js/translated/stock.js:2651
+#: templates/js/translated/table_filters.js:215
+#: templates/js/translated/table_filters.js:235
msgid "Structural"
msgstr "Estructural"
-#: part/models.py:135
+#: part/models.py:136
msgid "Parts may not be directly assigned to a structural category, but may be assigned to child categories."
msgstr "Las partes no pueden asignarse directamente a una categoría estructural, pero pueden asignarse a categorías hijas."
-#: part/models.py:139
+#: part/models.py:140
msgid "Default keywords"
msgstr "Palabras clave predeterminadas"
-#: part/models.py:139
+#: part/models.py:140
msgid "Default keywords for parts in this category"
msgstr "Palabras clave por defecto para partes en esta categoría"
-#: part/models.py:144 stock/models.py:113
+#: part/models.py:145 stock/models.py:113
msgid "Icon"
msgstr "Icono"
-#: part/models.py:145 stock/models.py:114
+#: part/models.py:146 stock/models.py:114
msgid "Icon (optional)"
msgstr "Icono (opcional)"
-#: part/models.py:164
+#: part/models.py:165
msgid "You cannot make this part category structural because some parts are already assigned to it!"
msgstr "¡No puedes hacer que esta categoría de partes sea estructural porque algunas partes ya están asignadas!"
-#: part/models.py:475
+#: part/models.py:476
msgid "Invalid choice for parent part"
msgstr "Opción no válida para la parte principal"
-#: part/models.py:517 part/models.py:529
+#: part/models.py:518 part/models.py:530
#, 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:601
+#: part/models.py:602
#, python-brace-format
msgid "IPN must match regex pattern {pat}"
msgstr "El IPN debe coincidir con la expresión regular {pat}"
-#: part/models.py:672
+#: part/models.py:673
msgid "Stock item with this serial number already exists"
msgstr "Ya existe un artículo de almacén con este número de serie"
-#: part/models.py:803
+#: part/models.py:804
msgid "Duplicate IPN not allowed in part settings"
msgstr "IPN duplicado no permitido en la configuración de partes"
-#: part/models.py:808
+#: part/models.py:809
msgid "Part with this Name, IPN and Revision already exists."
msgstr "Parte con este nombre, IPN y revisión ya existe."
-#: part/models.py:822
+#: part/models.py:823
msgid "Parts cannot be assigned to structural part categories!"
msgstr "¡No se pueden asignar partes a las categorías de partes estructurales!"
-#: part/models.py:846 part/models.py:3672
+#: part/models.py:847 part/models.py:3721
msgid "Part name"
msgstr "Nombre de la parte"
-#: part/models.py:852
+#: part/models.py:853
msgid "Is Template"
msgstr "Es plantilla"
-#: part/models.py:853
+#: part/models.py:854
msgid "Is this part a template part?"
msgstr "¿Es esta parte una parte de la plantilla?"
-#: part/models.py:863
+#: part/models.py:864
msgid "Is this part a variant of another part?"
msgstr "¿Es esta parte una variante de otra parte?"
-#: part/models.py:870
+#: part/models.py:871
msgid "Part description (optional)"
msgstr "Descripción de parte (opcional)"
-#: part/models.py:876
+#: part/models.py:877
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:883 part/models.py:3198 part/models.py:3615
-#: part/serializers.py:848 part/templates/part/part_base.html:262
+#: part/models.py:884 part/models.py:3232 part/models.py:3664
+#: part/serializers.py:320 part/serializers.py:910
+#: part/templates/part/part_base.html:262
#: templates/InvenTree/settings/settings_staff_js.html:204
#: templates/js/translated/notification.js:59
-#: templates/js/translated/part.js:2269 templates/js/translated/part.js:2481
+#: templates/js/translated/part.js:2345
msgid "Category"
msgstr "Categoría"
-#: part/models.py:884
+#: part/models.py:885
msgid "Part category"
msgstr "Categoría de parte"
-#: part/models.py:890
+#: part/models.py:891
msgid "Internal Part Number"
msgstr "Número de parte interna"
-#: part/models.py:895
+#: part/models.py:896
msgid "Part revision or version number"
msgstr "Revisión de parte o número de versión"
-#: part/models.py:921
+#: part/models.py:922
msgid "Where is this item normally stored?"
msgstr "¿Dónde se almacena este artículo normalmente?"
-#: part/models.py:966 part/templates/part/part_base.html:378
+#: part/models.py:967 part/templates/part/part_base.html:378
msgid "Default Supplier"
msgstr "Proveedor por defecto"
-#: part/models.py:967
+#: part/models.py:968
msgid "Default supplier part"
msgstr "Parte de proveedor predeterminada"
-#: part/models.py:974
+#: part/models.py:975
msgid "Default Expiry"
msgstr "Expiración por defecto"
-#: part/models.py:975
+#: part/models.py:976
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:981
+#: part/models.py:982
msgid "Minimum allowed stock level"
msgstr "Nivel mínimo de stock permitido"
-#: part/models.py:988
+#: part/models.py:989
msgid "Units of measure for this part"
msgstr "Unidades de medida para esta parte"
-#: part/models.py:997
+#: part/models.py:998
msgid "Can this part be built from other parts?"
msgstr "¿Se puede construir esta parte a partir de otras partes?"
-#: part/models.py:1003
+#: part/models.py:1004
msgid "Can this part be used to build other parts?"
msgstr "¿Se puede utilizar esta parte para construir otras partes?"
-#: part/models.py:1009
+#: part/models.py:1010
msgid "Does this part have tracking for unique items?"
msgstr "¿Esta parte tiene seguimiento de objetos únicos?"
-#: part/models.py:1014
+#: part/models.py:1015
msgid "Can this part be purchased from external suppliers?"
msgstr "¿Se puede comprar esta parte a proveedores externos?"
-#: part/models.py:1019
+#: part/models.py:1020
msgid "Can this part be sold to customers?"
msgstr "¿Se puede vender esta parte a los clientes?"
-#: part/models.py:1024
+#: part/models.py:1025
msgid "Is this part active?"
msgstr "¿Está activa esta parte?"
-#: part/models.py:1029
+#: part/models.py:1030
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:1031
+#: part/models.py:1032
msgid "BOM checksum"
msgstr "Suma de verificación de BOM"
-#: part/models.py:1031
+#: part/models.py:1032
msgid "Stored BOM checksum"
msgstr "Suma de verificación de BOM almacenada"
-#: part/models.py:1034
+#: part/models.py:1035
msgid "BOM checked by"
msgstr "BOM comprobado por"
-#: part/models.py:1036
+#: part/models.py:1037
msgid "BOM checked date"
msgstr "Fecha BOM comprobada"
-#: part/models.py:1040
+#: part/models.py:1041
msgid "Creation User"
msgstr "Creación de Usuario"
-#: part/models.py:1042
+#: part/models.py:1043
msgid "User responsible for this part"
msgstr "Usuario responsable de esta parte"
-#: part/models.py:1046 part/templates/part/part_base.html:341
+#: part/models.py:1047 part/templates/part/part_base.html:341
#: stock/templates/stock/item_base.html:447
-#: templates/js/translated/part.js:2331
+#: templates/js/translated/part.js:2407
msgid "Last Stocktake"
msgstr "Último inventario"
-#: part/models.py:1921
+#: part/models.py:1923
msgid "Sell multiple"
msgstr "Vender múltiples"
-#: part/models.py:2853
+#: part/models.py:2887
msgid "Currency used to cache pricing calculations"
msgstr "Moneda utilizada para almacenar en caché los cálculos de precios"
-#: part/models.py:2870
+#: part/models.py:2904
msgid "Minimum BOM Cost"
msgstr "Costo mínimo de BOM"
-#: part/models.py:2871
+#: part/models.py:2905
msgid "Minimum cost of component parts"
msgstr "Costo mínimo de partes de componentes"
-#: part/models.py:2876
+#: part/models.py:2910
msgid "Maximum BOM Cost"
msgstr "Costo máximo de BOM"
-#: part/models.py:2877
+#: part/models.py:2911
msgid "Maximum cost of component parts"
msgstr "Costo máximo de partes de componentes"
-#: part/models.py:2882
+#: part/models.py:2916
msgid "Minimum Purchase Cost"
msgstr "Costo mínimo de compra"
-#: part/models.py:2883
+#: part/models.py:2917
msgid "Minimum historical purchase cost"
msgstr "Costo histórico mínimo de compra"
-#: part/models.py:2888
+#: part/models.py:2922
msgid "Maximum Purchase Cost"
msgstr "Costo máximo de compra"
-#: part/models.py:2889
+#: part/models.py:2923
msgid "Maximum historical purchase cost"
msgstr "Costo histórico máximo de compra"
-#: part/models.py:2894
+#: part/models.py:2928
msgid "Minimum Internal Price"
msgstr "Precio interno mínimo"
-#: part/models.py:2895
+#: part/models.py:2929
msgid "Minimum cost based on internal price breaks"
msgstr ""
-#: part/models.py:2900
+#: part/models.py:2934
msgid "Maximum Internal Price"
msgstr "Precio interno máximo"
-#: part/models.py:2901
+#: part/models.py:2935
msgid "Maximum cost based on internal price breaks"
msgstr "Costo máximo basado en precios reducidos internos"
-#: part/models.py:2906
+#: part/models.py:2940
msgid "Minimum Supplier Price"
msgstr "Precio mínimo de proveedor"
-#: part/models.py:2907
+#: part/models.py:2941
msgid "Minimum price of part from external suppliers"
msgstr "Precio mínimo de la parte de proveedores externos"
-#: part/models.py:2912
+#: part/models.py:2946
msgid "Maximum Supplier Price"
msgstr "Precio máximo de proveedor"
-#: part/models.py:2913
+#: part/models.py:2947
msgid "Maximum price of part from external suppliers"
msgstr "Precio máximo de la parte de proveedores externos"
-#: part/models.py:2918
+#: part/models.py:2952
msgid "Minimum Variant Cost"
msgstr "Costo mínimo de variante"
-#: part/models.py:2919
+#: part/models.py:2953
msgid "Calculated minimum cost of variant parts"
msgstr "Costo mínimo calculado de las partes variantes"
-#: part/models.py:2924
+#: part/models.py:2958
msgid "Maximum Variant Cost"
msgstr "Costo máximo de variante"
-#: part/models.py:2925
+#: part/models.py:2959
msgid "Calculated maximum cost of variant parts"
msgstr "Costo máximo calculado de las partes variantes"
-#: part/models.py:2931
+#: part/models.py:2965
msgid "Calculated overall minimum cost"
msgstr ""
-#: part/models.py:2937
+#: part/models.py:2971
msgid "Calculated overall maximum cost"
msgstr ""
-#: part/models.py:2942
+#: part/models.py:2976
msgid "Minimum Sale Price"
msgstr "Precio de venta mínimo"
-#: part/models.py:2943
+#: part/models.py:2977
msgid "Minimum sale price based on price breaks"
msgstr "Precio de venta mínimo basado en precios reducidos"
-#: part/models.py:2948
+#: part/models.py:2982
msgid "Maximum Sale Price"
msgstr "Precio de venta máximo"
-#: part/models.py:2949
+#: part/models.py:2983
msgid "Maximum sale price based on price breaks"
msgstr "Precio de venta máximo basado en precios reducidos"
-#: part/models.py:2954
+#: part/models.py:2988
msgid "Minimum Sale Cost"
msgstr "Costo de venta mínimo"
-#: part/models.py:2955
+#: part/models.py:2989
msgid "Minimum historical sale price"
msgstr "Precio de venta mínimo histórico"
-#: part/models.py:2960
+#: part/models.py:2994
msgid "Maximum Sale Cost"
msgstr ""
-#: part/models.py:2961
+#: part/models.py:2995
msgid "Maximum historical sale price"
msgstr ""
-#: part/models.py:2980
+#: part/models.py:3014
msgid "Part for stocktake"
msgstr ""
-#: part/models.py:2985
+#: part/models.py:3019
msgid "Item Count"
msgstr "Número de artículos"
-#: part/models.py:2986
+#: part/models.py:3020
msgid "Number of individual stock entries at time of stocktake"
msgstr ""
-#: part/models.py:2993
+#: part/models.py:3027
msgid "Total available stock at time of stocktake"
msgstr ""
-#: part/models.py:2997 part/models.py:3080
+#: part/models.py:3031 part/models.py:3114
#: part/templates/part/part_scheduling.html:13
#: report/templates/report/inventree_test_report_base.html:106
#: templates/InvenTree/settings/plugin_settings.html:37
#: templates/InvenTree/settings/settings_staff_js.html:360
-#: templates/js/translated/part.js:1059 templates/js/translated/pricing.js:812
+#: templates/js/translated/part.js:1058 templates/js/translated/pricing.js:812
#: templates/js/translated/pricing.js:936
-#: templates/js/translated/purchase_order.js:1691
-#: templates/js/translated/stock.js:2558
+#: templates/js/translated/purchase_order.js:1706
+#: templates/js/translated/stock.js:2689
msgid "Date"
msgstr "Fecha"
-#: part/models.py:2998
+#: part/models.py:3032
msgid "Date stocktake was performed"
msgstr ""
-#: part/models.py:3006
+#: part/models.py:3040
msgid "Additional notes"
msgstr "Notas adicionales"
-#: part/models.py:3014
+#: part/models.py:3048
msgid "User who performed this stocktake"
msgstr ""
-#: part/models.py:3019
+#: part/models.py:3053
msgid "Minimum Stock Cost"
msgstr ""
-#: part/models.py:3020
+#: part/models.py:3054
msgid "Estimated minimum cost of stock on hand"
msgstr ""
-#: part/models.py:3025
+#: part/models.py:3059
msgid "Maximum Stock Cost"
msgstr ""
-#: part/models.py:3026
+#: part/models.py:3060
msgid "Estimated maximum cost of stock on hand"
msgstr ""
-#: part/models.py:3087 templates/InvenTree/settings/settings_staff_js.html:349
+#: part/models.py:3121 templates/InvenTree/settings/settings_staff_js.html:349
msgid "Report"
msgstr "Informe"
-#: part/models.py:3088
+#: part/models.py:3122
msgid "Stocktake report file (generated internally)"
msgstr ""
-#: part/models.py:3093 templates/InvenTree/settings/settings_staff_js.html:356
+#: part/models.py:3127 templates/InvenTree/settings/settings_staff_js.html:356
msgid "Part Count"
msgstr "Número de partes"
-#: part/models.py:3094
+#: part/models.py:3128
msgid "Number of parts covered by stocktake"
msgstr ""
-#: part/models.py:3102
+#: part/models.py:3136
msgid "User who requested this stocktake report"
msgstr ""
-#: part/models.py:3238
+#: part/models.py:3272
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:3255
+#: part/models.py:3289
msgid "Test with this name already exists for this part"
msgstr "Ya existe una prueba con este nombre para esta parte"
-#: part/models.py:3275 templates/js/translated/part.js:2821
+#: part/models.py:3309 templates/js/translated/part.js:2806
msgid "Test Name"
msgstr "Nombre de prueba"
-#: part/models.py:3276
+#: part/models.py:3310
msgid "Enter a name for the test"
msgstr "Introduzca un nombre para la prueba"
-#: part/models.py:3281
+#: part/models.py:3315
msgid "Test Description"
msgstr "Descripción de prueba"
-#: part/models.py:3282
+#: part/models.py:3316
msgid "Enter description for this test"
msgstr "Introduce la descripción para esta prueba"
-#: part/models.py:3287 templates/js/translated/part.js:2830
-#: templates/js/translated/table_filters.js:423
+#: part/models.py:3321 templates/js/translated/part.js:2815
+#: templates/js/translated/table_filters.js:429
msgid "Required"
msgstr "Requerido"
-#: part/models.py:3288
+#: part/models.py:3322
msgid "Is this test required to pass?"
msgstr "¿Es necesario pasar esta prueba?"
-#: part/models.py:3293 templates/js/translated/part.js:2838
+#: part/models.py:3327 templates/js/translated/part.js:2823
msgid "Requires Value"
msgstr "Requiere valor"
-#: part/models.py:3294
+#: part/models.py:3328
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:3299 templates/js/translated/part.js:2845
+#: part/models.py:3333 templates/js/translated/part.js:2830
msgid "Requires Attachment"
msgstr "Adjunto obligatorio"
-#: part/models.py:3300
+#: part/models.py:3334
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:3346
+#: part/models.py:3380
msgid "Checkbox parameters cannot have units"
msgstr ""
-#: part/models.py:3351
+#: part/models.py:3385
msgid "Checkbox parameters cannot have choices"
msgstr ""
-#: part/models.py:3369
+#: part/models.py:3403
msgid "Choices must be unique"
msgstr ""
-#: part/models.py:3385
+#: part/models.py:3419
msgid "Parameter template name must be unique"
msgstr "El nombre de parámetro en la plantilla tiene que ser único"
-#: part/models.py:3401
+#: part/models.py:3435
msgid "Parameter Name"
msgstr "Nombre de Parámetro"
-#: part/models.py:3407
+#: part/models.py:3441
msgid "Physical units for this parameter"
msgstr ""
-#: part/models.py:3417
+#: part/models.py:3451
msgid "Parameter description"
msgstr ""
-#: part/models.py:3423 templates/js/translated/part.js:1600
-#: templates/js/translated/table_filters.js:734
+#: part/models.py:3457 templates/js/translated/part.js:1599
+#: templates/js/translated/table_filters.js:756
msgid "Checkbox"
msgstr ""
-#: part/models.py:3424
+#: part/models.py:3458
msgid "Is this parameter a checkbox?"
msgstr ""
-#: part/models.py:3429 templates/js/translated/part.js:1609
+#: part/models.py:3463 templates/js/translated/part.js:1608
msgid "Choices"
msgstr ""
-#: part/models.py:3430
+#: part/models.py:3464
msgid "Valid choices for this parameter (comma-separated)"
msgstr ""
-#: part/models.py:3511
+#: part/models.py:3545
msgid "Invalid choice for parameter value"
msgstr ""
-#: part/models.py:3555
+#: part/models.py:3589
msgid "Parent Part"
msgstr "Parte principal"
-#: part/models.py:3560 part/models.py:3621 part/models.py:3622
+#: part/models.py:3594 part/models.py:3670 part/models.py:3671
#: templates/InvenTree/settings/settings_staff_js.html:199
msgid "Parameter Template"
msgstr "Plantilla de parámetro"
-#: part/models.py:3565
+#: part/models.py:3599
msgid "Data"
msgstr "Datos"
-#: part/models.py:3565
+#: part/models.py:3599
msgid "Parameter Value"
msgstr "Valor del parámetro"
-#: part/models.py:3626 templates/InvenTree/settings/settings_staff_js.html:208
+#: part/models.py:3675 templates/InvenTree/settings/settings_staff_js.html:208
msgid "Default Value"
msgstr "Valor predeterminado"
-#: part/models.py:3627
+#: part/models.py:3676
msgid "Default Parameter Value"
msgstr "Valor de parámetro por defecto"
-#: part/models.py:3664
+#: part/models.py:3713
msgid "Part ID or part name"
msgstr "ID de parte o nombre de parte"
-#: part/models.py:3668
+#: part/models.py:3717
msgid "Unique part ID value"
msgstr ""
-#: part/models.py:3676
+#: part/models.py:3725
msgid "Part IPN value"
msgstr ""
-#: part/models.py:3679
+#: part/models.py:3728
msgid "Level"
msgstr "Nivel"
-#: part/models.py:3680
+#: part/models.py:3729
msgid "BOM level"
msgstr "Nivel de BOM"
-#: part/models.py:3764
+#: part/models.py:3735 part/models.py:4113
+msgid "BOM Item"
+msgstr "Item de Lista de Materiales"
+
+#: part/models.py:3808
msgid "Select parent part"
msgstr "Seleccionar parte principal"
-#: part/models.py:3772
+#: part/models.py:3816
msgid "Sub part"
msgstr "Sub parte"
-#: part/models.py:3773
+#: part/models.py:3817
msgid "Select part to be used in BOM"
msgstr "Seleccionar parte a utilizar en BOM"
-#: part/models.py:3779
+#: part/models.py:3823
msgid "BOM quantity for this BOM item"
msgstr "Cantidad del artículo en BOM"
-#: part/models.py:3783 part/templates/part/upload_bom.html:58
-#: templates/js/translated/bom.js:971 templates/js/translated/bom.js:998
-#: templates/js/translated/build.js:2113
-#: templates/js/translated/table_filters.js:156
-#: templates/js/translated/table_filters.js:185
-#: templates/js/translated/table_filters.js:500
-msgid "Optional"
-msgstr "Opcional"
-
-#: part/models.py:3784
+#: part/models.py:3828
msgid "This BOM item is optional"
msgstr "Este artículo BOM es opcional"
-#: part/models.py:3789 templates/js/translated/bom.js:967
-#: templates/js/translated/bom.js:1007 templates/js/translated/build.js:2104
-#: templates/js/translated/table_filters.js:160
-#: templates/js/translated/table_filters.js:496
-msgid "Consumable"
-msgstr "Consumible"
-
-#: part/models.py:3790
+#: part/models.py:3834
msgid "This BOM item is consumable (it is not tracked in build orders)"
msgstr ""
-#: part/models.py:3794 part/templates/part/upload_bom.html:55
+#: part/models.py:3838 part/templates/part/upload_bom.html:55
msgid "Overage"
msgstr "Exceso"
-#: part/models.py:3795
+#: part/models.py:3839
msgid "Estimated build wastage quantity (absolute or percentage)"
msgstr "Cantidad estimada de desperdicio de construcción (absoluta o porcentaje)"
-#: part/models.py:3798
+#: part/models.py:3842
msgid "BOM item reference"
msgstr "Referencia de artículo de BOM"
-#: part/models.py:3801
+#: part/models.py:3845
msgid "BOM item notes"
msgstr "Notas del artículo de BOM"
-#: part/models.py:3805
+#: part/models.py:3849
msgid "Checksum"
msgstr "Suma de verificación"
-#: part/models.py:3805
+#: part/models.py:3849
msgid "BOM line checksum"
msgstr "Suma de verificación de línea de BOM"
-#: part/models.py:3810 templates/js/translated/table_filters.js:144
+#: part/models.py:3854 templates/js/translated/table_filters.js:150
msgid "Validated"
msgstr "Validado"
-#: part/models.py:3811
+#: part/models.py:3855
msgid "This BOM item has been validated"
msgstr ""
-#: part/models.py:3816 part/templates/part/upload_bom.html:57
-#: templates/js/translated/bom.js:1024
-#: templates/js/translated/table_filters.js:148
-#: templates/js/translated/table_filters.js:181
+#: part/models.py:3860 part/templates/part/upload_bom.html:57
+#: templates/js/translated/bom.js:1042
+#: templates/js/translated/table_filters.js:154
+#: templates/js/translated/table_filters.js:187
msgid "Gets inherited"
msgstr ""
-#: part/models.py:3817
+#: part/models.py:3861
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:3822 part/templates/part/upload_bom.html:56
-#: templates/js/translated/bom.js:1016
+#: part/models.py:3866 part/templates/part/upload_bom.html:56
+#: templates/js/translated/bom.js:1034
msgid "Allow Variants"
msgstr "Permitir variantes"
-#: part/models.py:3823
+#: part/models.py:3867
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:3909 stock/models.py:577
+#: part/models.py:3953 stock/models.py:577
msgid "Quantity must be integer value for trackable parts"
msgstr "La cantidad debe ser un valor entero para las partes rastreables"
-#: part/models.py:3918 part/models.py:3920
+#: part/models.py:3962 part/models.py:3964
msgid "Sub part must be specified"
msgstr "Debe especificar la subparte"
-#: part/models.py:4036
+#: part/models.py:4080
msgid "BOM Item Substitute"
msgstr "Ítem de BOM sustituto"
-#: part/models.py:4057
+#: part/models.py:4101
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:4070
+#: part/models.py:4114
msgid "Parent BOM item"
msgstr "Artículo BOM superior"
-#: part/models.py:4078
+#: part/models.py:4122
msgid "Substitute part"
msgstr "Sustituir parte"
-#: part/models.py:4093
+#: part/models.py:4137
msgid "Part 1"
msgstr "Parte 1"
-#: part/models.py:4097
+#: part/models.py:4141
msgid "Part 2"
msgstr "Parte 2"
-#: part/models.py:4097
+#: part/models.py:4141
msgid "Select Related Part"
msgstr "Seleccionar parte relacionada"
-#: part/models.py:4115
+#: part/models.py:4159
msgid "Part relationship cannot be created between a part and itself"
msgstr ""
-#: part/models.py:4119
+#: part/models.py:4163
msgid "Duplicate relationship already exists"
msgstr ""
-#: part/serializers.py:152 part/serializers.py:175 stock/serializers.py:257
+#: part/serializers.py:152 part/serializers.py:175 stock/serializers.py:319
msgid "Purchase currency of this stock item"
msgstr "Moneda de compra de ítem de stock"
-#: part/serializers.py:302
+#: part/serializers.py:313
+msgid "No parts selected"
+msgstr ""
+
+#: part/serializers.py:321
+msgid "Select category"
+msgstr ""
+
+#: part/serializers.py:352
msgid "Original Part"
msgstr "Parte original"
-#: part/serializers.py:302
+#: part/serializers.py:352
msgid "Select original part to duplicate"
msgstr "Seleccione la parte original a duplicar"
-#: part/serializers.py:307
+#: part/serializers.py:357
msgid "Copy Image"
msgstr "Copiar Imagen"
-#: part/serializers.py:307
+#: part/serializers.py:357
msgid "Copy image from original part"
msgstr "Copiar imagen desde la parte original"
-#: part/serializers.py:312 part/templates/part/detail.html:296
+#: part/serializers.py:362 part/templates/part/detail.html:277
msgid "Copy BOM"
msgstr "Copiar BOM"
-#: part/serializers.py:312
+#: part/serializers.py:362
msgid "Copy bill of materials from original part"
msgstr "Copiar la factura de materiales de la parte original"
-#: part/serializers.py:317
+#: part/serializers.py:367
msgid "Copy Parameters"
msgstr "Copiar Parámetros"
-#: part/serializers.py:317
+#: part/serializers.py:367
msgid "Copy parameter data from original part"
msgstr "Copiar datos del parámetro de la parte original"
-#: part/serializers.py:327
+#: part/serializers.py:377
msgid "Initial Stock Quantity"
msgstr "Cantidad Inicial de Stock"
-#: part/serializers.py:327
+#: part/serializers.py:377
msgid "Specify initial stock quantity for this Part. If quantity is zero, no stock is added."
msgstr ""
-#: part/serializers.py:333
+#: part/serializers.py:383
msgid "Initial Stock Location"
msgstr ""
-#: part/serializers.py:333
+#: part/serializers.py:383
msgid "Specify initial stock location for this Part"
msgstr ""
-#: part/serializers.py:343
+#: part/serializers.py:393
msgid "Select supplier (or leave blank to skip)"
msgstr "Seleccione proveedor (o déjelo en blanco para saltar)"
-#: part/serializers.py:354
+#: part/serializers.py:404
msgid "Select manufacturer (or leave blank to skip)"
msgstr "Seleccionar fabricante (o dejar en blanco para saltar)"
-#: part/serializers.py:360
+#: part/serializers.py:410
msgid "Manufacturer part number"
msgstr "Número de parte del fabricante"
-#: part/serializers.py:367
+#: part/serializers.py:417
msgid "Selected company is not a valid supplier"
msgstr "La empresa seleccionada no es un proveedor válido"
-#: part/serializers.py:375
+#: part/serializers.py:425
msgid "Selected company is not a valid manufacturer"
msgstr "La empresa seleccionada no es un fabricante válido"
-#: part/serializers.py:387
+#: part/serializers.py:437
msgid "Manufacturer part matching this MPN already exists"
msgstr ""
-#: part/serializers.py:395
+#: part/serializers.py:445
msgid "Supplier part matching this SKU already exists"
msgstr ""
-#: part/serializers.py:620 part/templates/part/copy_part.html:9
-#: templates/js/translated/part.js:449
+#: part/serializers.py:682 part/templates/part/copy_part.html:9
+#: templates/js/translated/part.js:448
msgid "Duplicate Part"
msgstr "Duplicar Parte"
-#: part/serializers.py:620
+#: part/serializers.py:682
msgid "Copy initial data from another Part"
msgstr ""
-#: part/serializers.py:625 templates/js/translated/part.js:103
+#: part/serializers.py:687 templates/js/translated/part.js:102
msgid "Initial Stock"
msgstr ""
-#: part/serializers.py:625
+#: part/serializers.py:687
msgid "Create Part with initial stock quantity"
msgstr ""
-#: part/serializers.py:630
+#: part/serializers.py:692
msgid "Supplier Information"
msgstr "Información del proveedor"
-#: part/serializers.py:630
+#: part/serializers.py:692
msgid "Add initial supplier information for this part"
msgstr "Añadir información inicial del proveedor para esta parte"
-#: part/serializers.py:636
+#: part/serializers.py:698
msgid "Copy Category Parameters"
msgstr "Copiar Parámetros de Categoría"
-#: part/serializers.py:637
+#: part/serializers.py:699
msgid "Copy parameter templates from selected part category"
msgstr "Copiar plantillas de parámetro de la categoría de partes seleccionada"
-#: part/serializers.py:842
+#: part/serializers.py:904
msgid "Limit stocktake report to a particular part, and any variant parts"
msgstr ""
-#: part/serializers.py:848
+#: part/serializers.py:910
msgid "Limit stocktake report to a particular part category, and any child categories"
msgstr ""
-#: part/serializers.py:854
+#: part/serializers.py:916
msgid "Limit stocktake report to a particular stock location, and any child locations"
msgstr ""
-#: part/serializers.py:859
+#: part/serializers.py:921
msgid "Generate Report"
msgstr "Generar informe"
-#: part/serializers.py:860
+#: part/serializers.py:922
msgid "Generate report file containing calculated stocktake data"
msgstr ""
-#: part/serializers.py:865
+#: part/serializers.py:927
msgid "Update Parts"
msgstr "Actualizar partes"
-#: part/serializers.py:866
+#: part/serializers.py:928
msgid "Update specified parts with calculated stocktake data"
msgstr ""
-#: part/serializers.py:874
+#: part/serializers.py:936
msgid "Stocktake functionality is not enabled"
msgstr ""
-#: part/serializers.py:963
+#: part/serializers.py:1025
msgid "Update"
msgstr "Actualizar"
-#: part/serializers.py:964
+#: part/serializers.py:1026
msgid "Update pricing for this part"
msgstr ""
-#: part/serializers.py:1246
+#: part/serializers.py:1308
msgid "Select part to copy BOM from"
msgstr "Seleccionar parte de la que copiar BOM"
-#: part/serializers.py:1254
+#: part/serializers.py:1316
msgid "Remove Existing Data"
msgstr "Eliminar Datos Existentes"
-#: part/serializers.py:1255
+#: part/serializers.py:1317
msgid "Remove existing BOM items before copying"
msgstr "Eliminar artículos BOM existentes antes de copiar"
-#: part/serializers.py:1260
+#: part/serializers.py:1322
msgid "Include Inherited"
msgstr "Incluye Heredado"
-#: part/serializers.py:1261
+#: part/serializers.py:1323
msgid "Include BOM items which are inherited from templated parts"
msgstr "Incluye artículos BOM que son heredados de partes con plantillas"
-#: part/serializers.py:1266
+#: part/serializers.py:1328
msgid "Skip Invalid Rows"
msgstr "Omitir filas no válidas"
-#: part/serializers.py:1267
+#: part/serializers.py:1329
msgid "Enable this option to skip invalid rows"
msgstr "Activar esta opción para omitir filas inválidas"
-#: part/serializers.py:1272
+#: part/serializers.py:1334
msgid "Copy Substitute Parts"
msgstr "Copiar partes sustitutas"
-#: part/serializers.py:1273
+#: part/serializers.py:1335
msgid "Copy substitute parts when duplicate BOM items"
msgstr ""
-#: part/serializers.py:1313
+#: part/serializers.py:1375
msgid "Clear Existing BOM"
msgstr "Limpiar BOM Existente"
-#: part/serializers.py:1314
+#: part/serializers.py:1376
msgid "Delete existing BOM items before uploading"
msgstr ""
-#: part/serializers.py:1344
+#: part/serializers.py:1406
msgid "No part column specified"
msgstr ""
-#: part/serializers.py:1387
+#: part/serializers.py:1449
msgid "Multiple matching parts found"
msgstr "Varios resultados encontrados"
-#: part/serializers.py:1390
+#: part/serializers.py:1452
msgid "No matching part found"
msgstr "No se encontraron partes coincidentes"
-#: part/serializers.py:1393
+#: part/serializers.py:1455
msgid "Part is not designated as a component"
msgstr "La parte no está designada como componente"
-#: part/serializers.py:1402
+#: part/serializers.py:1464
msgid "Quantity not provided"
msgstr "Cantidad no proporcionada"
-#: part/serializers.py:1410
+#: part/serializers.py:1472
msgid "Invalid quantity"
msgstr "Cantidad no válida"
-#: part/serializers.py:1431
+#: part/serializers.py:1493
msgid "At least one BOM item is required"
msgstr "Se requiere al menos un artículo BOM"
@@ -6421,9 +6453,9 @@ msgstr "Notificación por bajo stock"
msgid "The available stock for {part.name} has fallen below the configured minimum level"
msgstr ""
-#: part/tasks.py:294 templates/js/translated/part.js:1040
-#: templates/js/translated/part.js:1793 templates/js/translated/part.js:1848
-#: templates/js/translated/purchase_order.js:2052
+#: part/tasks.py:294 templates/js/translated/part.js:1039
+#: templates/js/translated/part.js:1792 templates/js/translated/part.js:1847
+#: templates/js/translated/purchase_order.js:2062
msgid "Total Quantity"
msgstr "Cantidad Total"
@@ -6461,14 +6493,6 @@ 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:291
-msgid "BOM actions"
-msgstr "Acciones BOM"
-
-#: part/templates/part/bom.html:34
-msgid "Delete Items"
-msgstr "Eliminar artículos"
-
#: part/templates/part/category.html:34
msgid "Perform stocktake for this part category"
msgstr ""
@@ -6505,7 +6529,7 @@ msgstr "Eliminar Categoría"
msgid "Top level part category"
msgstr "Categoría de partes de nivel superior"
-#: part/templates/part/category.html:121 part/templates/part/category.html:225
+#: part/templates/part/category.html:121 part/templates/part/category.html:206
#: part/templates/part/category_sidebar.html:7
msgid "Subcategories"
msgstr "Subcategorías"
@@ -6518,33 +6542,20 @@ msgstr "Partes (incluyendo subcategorías)"
msgid "Create new part"
msgstr "Crear nueva parte"
-#: part/templates/part/category.html:165 templates/js/translated/bom.js:443
+#: part/templates/part/category.html:165 templates/js/translated/bom.js:444
msgid "New Part"
msgstr "Nueva Parte"
-#: part/templates/part/category.html:175 part/templates/part/detail.html:390
-#: part/templates/part/detail.html:421
-msgid "Options"
-msgstr "Opciones"
-
-#: part/templates/part/category.html:179
-msgid "Set category"
-msgstr "Definir categoría"
-
-#: part/templates/part/category.html:180
-msgid "Set Category"
-msgstr "Definir Categoría"
-
-#: part/templates/part/category.html:208
+#: part/templates/part/category.html:191
#: templates/InvenTree/settings/sidebar.html:47
msgid "Part Parameters"
msgstr "Parámetros de Parte"
-#: part/templates/part/category.html:229
+#: part/templates/part/category.html:210
msgid "Create new part category"
msgstr "Crear nueva categoría de partes"
-#: part/templates/part/category.html:230
+#: part/templates/part/category.html:211
msgid "New Category"
msgstr "Nueva Categoría"
@@ -6581,7 +6592,7 @@ msgid "Refresh scheduling data"
msgstr ""
#: part/templates/part/detail.html:45 part/templates/part/prices.html:15
-#: templates/js/translated/tables.js:584
+#: templates/js/translated/tables.js:560
msgid "Refresh"
msgstr "Actualizar"
@@ -6592,7 +6603,7 @@ msgstr ""
#: part/templates/part/detail.html:67 part/templates/part/part_sidebar.html:50
#: stock/admin.py:130 templates/InvenTree/settings/part_stocktake.html:29
#: templates/InvenTree/settings/sidebar.html:51
-#: templates/js/translated/stock.js:1952 users/models.py:39
+#: templates/js/translated/stock.js:2109 users/models.py:39
msgid "Stocktake"
msgstr "Inventario"
@@ -6604,101 +6615,101 @@ msgstr "Plantillas de prueba de parte"
msgid "Add Test Template"
msgstr "Añadir Plantilla de Prueba"
-#: part/templates/part/detail.html:145 stock/templates/stock/item.html:53
+#: part/templates/part/detail.html:139 stock/templates/stock/item.html:49
msgid "Sales Order Allocations"
msgstr "Asignaciones de órdenes de venta"
-#: part/templates/part/detail.html:165
+#: part/templates/part/detail.html:156
msgid "Part Notes"
msgstr "Notas de parte"
-#: part/templates/part/detail.html:180
+#: part/templates/part/detail.html:171
msgid "Part Variants"
msgstr "Variantes de Parte"
-#: part/templates/part/detail.html:184
+#: part/templates/part/detail.html:175
msgid "Create new variant"
msgstr "Crear nueva variante"
-#: part/templates/part/detail.html:185
+#: part/templates/part/detail.html:176
msgid "New Variant"
msgstr "Nueva Variante"
-#: part/templates/part/detail.html:212
+#: part/templates/part/detail.html:199
msgid "Add new parameter"
msgstr "Añadir nuevo parámetro"
-#: part/templates/part/detail.html:249 part/templates/part/part_sidebar.html:58
+#: part/templates/part/detail.html:232 part/templates/part/part_sidebar.html:58
msgid "Related Parts"
msgstr "Partes relacionadas"
-#: part/templates/part/detail.html:253 part/templates/part/detail.html:254
+#: part/templates/part/detail.html:236 part/templates/part/detail.html:237
msgid "Add Related"
msgstr "Añadir Relacionado"
-#: part/templates/part/detail.html:274 part/templates/part/part_sidebar.html:17
+#: part/templates/part/detail.html:255 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:279
+#: part/templates/part/detail.html:260
msgid "Export actions"
msgstr "Exportar acciones"
-#: part/templates/part/detail.html:283 templates/js/translated/bom.js:339
+#: part/templates/part/detail.html:264 templates/js/translated/bom.js:340
msgid "Export BOM"
msgstr "Exportar BOM"
-#: part/templates/part/detail.html:285
+#: part/templates/part/detail.html:266
msgid "Print BOM Report"
msgstr "Imprimir informe BOM"
-#: part/templates/part/detail.html:295
+#: part/templates/part/detail.html:272
+msgid "BOM actions"
+msgstr "Acciones BOM"
+
+#: part/templates/part/detail.html:276
msgid "Upload BOM"
msgstr "Subir BOM"
-#: part/templates/part/detail.html:297
+#: part/templates/part/detail.html:278
msgid "Validate BOM"
msgstr "Validar BOM"
-#: part/templates/part/detail.html:302 part/templates/part/detail.html:303
-#: templates/js/translated/bom.js:1279 templates/js/translated/bom.js:1280
+#: part/templates/part/detail.html:283 part/templates/part/detail.html:284
+#: templates/js/translated/bom.js:1299 templates/js/translated/bom.js:1300
msgid "Add BOM Item"
msgstr "Añadir artículo al BOM"
-#: part/templates/part/detail.html:316
+#: part/templates/part/detail.html:297
msgid "Assemblies"
msgstr "Ensamblajes"
-#: part/templates/part/detail.html:334
+#: part/templates/part/detail.html:313
msgid "Part Builds"
msgstr "Construcción de partes"
-#: part/templates/part/detail.html:361 stock/templates/stock/item.html:38
+#: part/templates/part/detail.html:338 stock/templates/stock/item.html:36
msgid "Build Order Allocations"
msgstr "Construir adjudicaciones de pedidos"
-#: part/templates/part/detail.html:377
+#: part/templates/part/detail.html:352
msgid "Part Suppliers"
msgstr "Proveedores de partes"
-#: part/templates/part/detail.html:407
+#: part/templates/part/detail.html:372
msgid "Part Manufacturers"
msgstr "Fabricantes de partes"
-#: part/templates/part/detail.html:423
-msgid "Delete manufacturer parts"
-msgstr "Eliminar partes del fabricante"
-
-#: part/templates/part/detail.html:707
+#: part/templates/part/detail.html:654
msgid "Related Part"
msgstr "Partes relacionadas"
-#: part/templates/part/detail.html:715
+#: part/templates/part/detail.html:662
msgid "Add Related Part"
msgstr "Añadir artículos relacionados"
-#: part/templates/part/detail.html:800
+#: part/templates/part/detail.html:747
msgid "Add Test Result Template"
msgstr "Añadir plantilla de resultados de prueba"
@@ -6732,13 +6743,13 @@ msgid "Download Part Import Template"
msgstr "Descargar plantilla de importación de parte"
#: part/templates/part/import_wizard/part_upload.html:92
-#: templates/js/translated/bom.js:308 templates/js/translated/bom.js:342
+#: templates/js/translated/bom.js:309 templates/js/translated/bom.js:343
#: templates/js/translated/order.js:129 templates/js/translated/tables.js:189
msgid "Format"
msgstr "Formato"
#: part/templates/part/import_wizard/part_upload.html:93
-#: templates/js/translated/bom.js:309 templates/js/translated/bom.js:343
+#: templates/js/translated/bom.js:310 templates/js/translated/bom.js:344
#: templates/js/translated/order.js:130
msgid "Select file format"
msgstr "Seleccionar formato de archivo"
@@ -6779,7 +6790,7 @@ msgstr "Contar stock de partes"
msgid "Transfer part stock"
msgstr "Transferir stock de partes"
-#: part/templates/part/part_base.html:93
+#: part/templates/part/part_base.html:93 templates/js/translated/part.js:2264
msgid "Part actions"
msgstr "Acciones para partes"
@@ -6824,10 +6835,10 @@ msgid "Part is not active"
msgstr ""
#: part/templates/part/part_base.html:148
-#: templates/js/translated/company.js:945
-#: templates/js/translated/company.js:1185
-#: templates/js/translated/model_renderers.js:273
-#: templates/js/translated/part.js:792 templates/js/translated/part.js:1192
+#: templates/js/translated/company.js:1318
+#: templates/js/translated/company.js:1606
+#: templates/js/translated/model_renderers.js:287
+#: templates/js/translated/part.js:791 templates/js/translated/part.js:1191
msgid "Inactive"
msgstr "Inactivo"
@@ -6850,7 +6861,7 @@ msgstr ""
msgid "Allocated to Sales Orders"
msgstr ""
-#: part/templates/part/part_base.html:237 templates/js/translated/bom.js:1178
+#: part/templates/part/part_base.html:237 templates/js/translated/bom.js:1198
msgid "Can Build"
msgstr "Puede construir"
@@ -6858,8 +6869,8 @@ msgstr "Puede construir"
msgid "Minimum stock level"
msgstr "Nivel mínimo de stock"
-#: part/templates/part/part_base.html:324 templates/js/translated/bom.js:1041
-#: templates/js/translated/part.js:1238 templates/js/translated/part.js:2304
+#: part/templates/part/part_base.html:324 templates/js/translated/bom.js:1059
+#: templates/js/translated/part.js:1237 templates/js/translated/part.js:2380
#: templates/js/translated/pricing.js:391
#: templates/js/translated/pricing.js:1040
msgid "Price Range"
@@ -6882,7 +6893,7 @@ msgstr "Código QR de Parte"
msgid "Link Barcode to Part"
msgstr ""
-#: part/templates/part/part_base.html:474 templates/js/translated/part.js:2191
+#: part/templates/part/part_base.html:474 templates/js/translated/part.js:2258
msgid "part"
msgstr "parte"
@@ -6956,9 +6967,9 @@ msgstr "Variantes"
#: stock/templates/stock/stock_app_base.html:10
#: templates/InvenTree/search.html:153
#: templates/InvenTree/settings/sidebar.html:49
-#: templates/js/translated/part.js:1216 templates/js/translated/part.js:2120
-#: templates/js/translated/part.js:2284 templates/js/translated/stock.js:1022
-#: templates/js/translated/stock.js:1829 templates/navbar.html:31
+#: templates/js/translated/part.js:1215 templates/js/translated/part.js:2119
+#: templates/js/translated/part.js:2360 templates/js/translated/stock.js:1021
+#: templates/js/translated/stock.js:1986 templates/navbar.html:31
msgid "Stock"
msgstr "Inventario"
@@ -6989,9 +7000,9 @@ msgstr "Actualizar precio de partes"
#: part/templates/part/prices.html:25 stock/admin.py:129
#: stock/templates/stock/item_base.html:442
-#: templates/js/translated/company.js:1313
-#: templates/js/translated/company.js:1323
-#: templates/js/translated/stock.js:1982
+#: templates/js/translated/company.js:1734
+#: templates/js/translated/company.js:1744
+#: templates/js/translated/stock.js:2139
msgid "Last Updated"
msgstr "Última actualización"
@@ -7054,12 +7065,12 @@ msgstr ""
msgid "Add Sell Price Break"
msgstr ""
-#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:682
-#: templates/js/translated/part.js:2115 templates/js/translated/part.js:2117
+#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:681
+#: templates/js/translated/part.js:2114 templates/js/translated/part.js:2116
msgid "No Stock"
msgstr "Sin Stock"
-#: part/templates/part/stock_count.html:9 templates/InvenTree/index.html:167
+#: part/templates/part/stock_count.html:9 templates/InvenTree/index.html:120
msgid "Low Stock"
msgstr "Bajo Stock"
@@ -7163,7 +7174,7 @@ msgid "Match found for barcode data"
msgstr "Coincidencia encontrada para datos de códigos de barras"
#: plugin/base/barcodes/api.py:120
-#: templates/js/translated/purchase_order.js:1372
+#: templates/js/translated/purchase_order.js:1387
msgid "Barcode matches existing item"
msgstr "El código de barras coincide con artículo existente"
@@ -7226,43 +7237,43 @@ msgstr "URL que se utiliza para enviar mensajes a un canal de slack"
msgid "Open link"
msgstr "Abrir enlace"
-#: plugin/models.py:27
+#: plugin/models.py:28
msgid "Plugin Configuration"
msgstr "Configuración del complemento"
-#: plugin/models.py:28
+#: plugin/models.py:29
msgid "Plugin Configurations"
msgstr "Configuraciones del Plug-in"
-#: plugin/models.py:33
+#: plugin/models.py:34
msgid "Key"
msgstr "Clave"
-#: plugin/models.py:34
+#: plugin/models.py:35
msgid "Key of plugin"
msgstr "Clave del complemento"
-#: plugin/models.py:42
+#: plugin/models.py:43
msgid "PluginName of the plugin"
msgstr "Nombre del complemento"
-#: plugin/models.py:48
+#: plugin/models.py:49
msgid "Is the plugin active"
msgstr "Está activo el complemento"
-#: plugin/models.py:124
+#: plugin/models.py:125
msgid "Sample plugin"
msgstr "Complemento de ejemplo"
-#: plugin/models.py:133
+#: plugin/models.py:134
msgid "Builtin Plugin"
msgstr "Complemento integrado"
-#: plugin/models.py:159 templates/InvenTree/settings/plugin_settings.html:9
+#: plugin/models.py:160 templates/InvenTree/settings/plugin_settings.html:9
msgid "Plugin"
msgstr "Complemento"
-#: plugin/models.py:210
+#: plugin/models.py:211
msgid "Method"
msgstr "Método"
@@ -7414,47 +7425,47 @@ msgstr "Crear filtros"
msgid "Build query filters (comma-separated list of key=value pairs"
msgstr "Crear filtros de consulta (lista separada por comas de pares clave=valor"
-#: report/models.py:418
+#: report/models.py:420
msgid "Part Filters"
msgstr "Filtros de partes"
-#: report/models.py:419
+#: report/models.py:421
msgid "Part query filters (comma-separated list of key=value pairs"
msgstr "Filtros de búsqueda de partes (lista separada por comas de pares clave=valor"
-#: report/models.py:453
+#: report/models.py:455
msgid "Purchase order query filters"
msgstr "Filtros de búsqueda de orden de compra"
-#: report/models.py:491
+#: report/models.py:493
msgid "Sales order query filters"
msgstr "Filtros de búsqueda de pedidos de ventas"
-#: report/models.py:529
+#: report/models.py:531
msgid "Return order query filters"
msgstr "Filtros de búsqueda de orden de devolución"
-#: report/models.py:582
+#: report/models.py:584
msgid "Snippet"
msgstr "Fragmento"
-#: report/models.py:583
+#: report/models.py:585
msgid "Report snippet file"
msgstr "Archivo fragmento de informe"
-#: report/models.py:587
+#: report/models.py:589
msgid "Snippet file description"
msgstr "Descripción de archivo de fragmento"
-#: report/models.py:624
+#: report/models.py:626
msgid "Asset"
msgstr "Activo"
-#: report/models.py:625
+#: report/models.py:627
msgid "Report asset file"
msgstr "Reportar archivo de activos"
-#: report/models.py:632
+#: report/models.py:634
msgid "Asset file description"
msgstr "Descripción del archivo de activos"
@@ -7475,8 +7486,8 @@ msgstr "El proveedor ha sido eliminado"
#: templates/js/translated/order.js:316 templates/js/translated/pricing.js:527
#: templates/js/translated/pricing.js:596
#: templates/js/translated/pricing.js:820
-#: templates/js/translated/purchase_order.js:2083
-#: templates/js/translated/sales_order.js:1817
+#: templates/js/translated/purchase_order.js:2093
+#: templates/js/translated/sales_order.js:1829
msgid "Unit Price"
msgstr "Precio Unitario"
@@ -7488,23 +7499,23 @@ msgstr "Elementos de línea extra"
#: report/templates/report/inventree_po_report_base.html:72
#: report/templates/report/inventree_so_report_base.html:72
-#: templates/js/translated/purchase_order.js:1985
-#: templates/js/translated/sales_order.js:1792
+#: templates/js/translated/purchase_order.js:1995
+#: templates/js/translated/sales_order.js:1804
msgid "Total"
msgstr "Total"
#: report/templates/report/inventree_return_order_report_base.html:25
#: report/templates/report/inventree_test_report_base.html:88
#: stock/models.py:725 stock/templates/stock/item_base.html:312
-#: templates/js/translated/build.js:502 templates/js/translated/build.js:1423
-#: templates/js/translated/build.js:1989
-#: templates/js/translated/model_renderers.js:201
-#: templates/js/translated/return_order.js:528
-#: templates/js/translated/return_order.js:708
-#: templates/js/translated/sales_order.js:300
-#: templates/js/translated/sales_order.js:1597
-#: templates/js/translated/sales_order.js:1682
-#: templates/js/translated/stock.js:563
+#: templates/js/translated/build.js:508 templates/js/translated/build.js:1306
+#: templates/js/translated/build.js:2281
+#: templates/js/translated/model_renderers.js:215
+#: templates/js/translated/return_order.js:540
+#: templates/js/translated/return_order.js:720
+#: templates/js/translated/sales_order.js:312
+#: templates/js/translated/sales_order.js:1609
+#: templates/js/translated/sales_order.js:1694
+#: templates/js/translated/stock.js:562
msgid "Serial Number"
msgstr "Número de serie"
@@ -7517,7 +7528,7 @@ msgid "Test Results"
msgstr "Resultados de la Prueba"
#: report/templates/report/inventree_test_report_base.html:102
-#: stock/models.py:2243 templates/js/translated/stock.js:1419
+#: stock/models.py:2243 templates/js/translated/stock.js:1418
msgid "Test"
msgstr "Prueba"
@@ -7548,8 +7559,8 @@ msgid "Installed Items"
msgstr "Elementos instalados"
#: report/templates/report/inventree_test_report_base.html:168
-#: stock/admin.py:104 templates/js/translated/stock.js:667
-#: templates/js/translated/stock.js:838 templates/js/translated/stock.js:2849
+#: stock/admin.py:104 templates/js/translated/stock.js:666
+#: templates/js/translated/stock.js:837 templates/js/translated/stock.js:2976
msgid "Serial"
msgstr "Serial"
@@ -7617,31 +7628,31 @@ msgstr ""
#: stock/admin.py:131 stock/models.py:789
#: stock/templates/stock/item_base.html:429
-#: templates/js/translated/stock.js:1966
+#: templates/js/translated/stock.js:2123
msgid "Expiry Date"
msgstr "Fecha de Expiración"
-#: stock/api.py:420 templates/js/translated/table_filters.js:373
+#: stock/api.py:426 templates/js/translated/table_filters.js:379
msgid "External Location"
msgstr "Ubicación externa"
-#: stock/api.py:582
+#: stock/api.py:619
msgid "Quantity is required"
msgstr "Cantidad requerida"
-#: stock/api.py:589
+#: stock/api.py:626
msgid "Valid part must be supplied"
msgstr "Debe suministrarse una parte válida"
-#: stock/api.py:615
+#: stock/api.py:652
msgid "The given supplier part does not exist"
msgstr ""
-#: stock/api.py:624
+#: stock/api.py:661
msgid "The supplier part has a pack size defined, but flag use_pack_size not set"
msgstr ""
-#: stock/api.py:642
+#: stock/api.py:679
msgid "Serial numbers cannot be supplied for a non-trackable part"
msgstr ""
@@ -7652,7 +7663,7 @@ msgid "Stock Location"
msgstr "Ubicación de Stock"
#: stock/models.py:55 stock/templates/stock/location.html:177
-#: templates/InvenTree/search.html:166 templates/js/translated/search.js:220
+#: templates/InvenTree/search.html:166 templates/js/translated/search.js:178
#: users/models.py:40
msgid "Stock Locations"
msgstr "Ubicaciones de Stock"
@@ -7670,8 +7681,8 @@ msgstr "Seleccionar Propietario"
msgid "Stock items may not be directly located into a structural stock locations, but may be located to child locations."
msgstr ""
-#: stock/models.py:132 templates/js/translated/stock.js:2529
-#: templates/js/translated/table_filters.js:213
+#: stock/models.py:132 templates/js/translated/stock.js:2660
+#: templates/js/translated/table_filters.js:219
msgid "External"
msgstr "Externo"
@@ -7687,7 +7698,7 @@ msgstr ""
msgid "Stock items cannot be located into structural stock locations!"
msgstr ""
-#: stock/models.py:583 stock/serializers.py:174
+#: stock/models.py:583 stock/serializers.py:223
msgid "Stock item cannot be created for virtual parts"
msgstr ""
@@ -7821,7 +7832,7 @@ msgstr "Los números de serie deben ser una lista de enteros"
msgid "Quantity does not match serial numbers"
msgstr "La cantidad no coincide con los números de serie"
-#: stock/models.py:1403 stock/serializers.py:374
+#: stock/models.py:1403 stock/serializers.py:440
msgid "Serial numbers already exist"
msgstr "Números de serie ya existen"
@@ -7849,7 +7860,7 @@ msgstr "El artículo de stock está en producción"
msgid "Serialized stock cannot be merged"
msgstr "Stock serializado no puede ser combinado"
-#: stock/models.py:1496 stock/serializers.py:975
+#: stock/models.py:1496 stock/serializers.py:1092
msgid "Duplicate stock items"
msgstr "Artículos de Stock Duplicados"
@@ -7901,132 +7912,141 @@ msgstr "Adjunto de resultados de prueba"
msgid "Test notes"
msgstr "Notas de prueba"
-#: stock/serializers.py:76
+#: stock/serializers.py:121
msgid "Serial number is too large"
msgstr "El número de serie es demasiado grande"
-#: stock/serializers.py:166
+#: stock/serializers.py:215
msgid "Use pack size when adding: the quantity defined is the number of packs"
msgstr ""
-#: stock/serializers.py:254
+#: stock/serializers.py:316
msgid "Purchase price of this stock item, per unit or pack"
msgstr ""
-#: stock/serializers.py:307
+#: stock/serializers.py:373
msgid "Enter number of stock items to serialize"
msgstr "Introduzca el número de artículos de stock para serializar"
-#: stock/serializers.py:319
+#: stock/serializers.py:385
#, python-brace-format
msgid "Quantity must not exceed available stock quantity ({q})"
msgstr "La cantidad no debe exceder la cantidad disponible de stock ({q})"
-#: stock/serializers.py:325
+#: stock/serializers.py:391
msgid "Enter serial numbers for new items"
msgstr "Introduzca números de serie para nuevos artículos"
-#: stock/serializers.py:336 stock/serializers.py:932 stock/serializers.py:1174
+#: stock/serializers.py:402 stock/serializers.py:1049 stock/serializers.py:1291
msgid "Destination stock location"
msgstr "Ubicación de stock de destino"
-#: stock/serializers.py:343
+#: stock/serializers.py:409
msgid "Optional note field"
msgstr "Campo de nota opcional"
-#: stock/serializers.py:353
+#: stock/serializers.py:419
msgid "Serial numbers cannot be assigned to this part"
msgstr "Los números de serie no se pueden asignar a esta parte"
-#: stock/serializers.py:414
+#: stock/serializers.py:480
msgid "Select stock item to install"
msgstr ""
-#: stock/serializers.py:427
-msgid "Stock item is unavailable"
-msgstr ""
-
-#: stock/serializers.py:434
-msgid "Selected part is not in the Bill of Materials"
-msgstr ""
-
-#: stock/serializers.py:471
-msgid "Destination location for uninstalled item"
-msgstr ""
-
-#: stock/serializers.py:476 stock/serializers.py:557
+#: stock/serializers.py:485 stock/serializers.py:543 stock/serializers.py:624
+#: stock/serializers.py:682
msgid "Add transaction note (optional)"
msgstr "Añadir nota de transacción (opcional)"
-#: stock/serializers.py:510
+#: stock/serializers.py:494
+msgid "Stock item is unavailable"
+msgstr ""
+
+#: stock/serializers.py:501
+msgid "Selected part is not in the Bill of Materials"
+msgstr ""
+
+#: stock/serializers.py:538
+msgid "Destination location for uninstalled item"
+msgstr ""
+
+#: stock/serializers.py:577
msgid "Select part to convert stock item into"
msgstr ""
-#: stock/serializers.py:521
+#: stock/serializers.py:588
msgid "Selected part is not a valid option for conversion"
msgstr ""
-#: stock/serializers.py:552
+#: stock/serializers.py:619
msgid "Destination location for returned item"
msgstr ""
-#: stock/serializers.py:787
+#: stock/serializers.py:663
+msgid "Select stock items to change status"
+msgstr ""
+
+#: stock/serializers.py:670
+msgid "No stock items selected"
+msgstr ""
+
+#: stock/serializers.py:904
msgid "Part must be salable"
msgstr "La parte debe ser vendible"
-#: stock/serializers.py:791
+#: stock/serializers.py:908
msgid "Item is allocated to a sales order"
msgstr "El artículo está asignado a una orden de venta"
-#: stock/serializers.py:795
+#: stock/serializers.py:912
msgid "Item is allocated to a build order"
msgstr "El artículo está asignado a una orden de creación"
-#: stock/serializers.py:826
+#: stock/serializers.py:943
msgid "Customer to assign stock items"
msgstr "Cliente para asignar artículos de stock"
-#: stock/serializers.py:832
+#: stock/serializers.py:949
msgid "Selected company is not a customer"
msgstr "La empresa seleccionada no es un cliente"
-#: stock/serializers.py:840
+#: stock/serializers.py:957
msgid "Stock assignment notes"
msgstr "Notas de asignación de stock"
-#: stock/serializers.py:850 stock/serializers.py:1081
+#: stock/serializers.py:967 stock/serializers.py:1198
msgid "A list of stock items must be provided"
msgstr "Debe proporcionarse una lista de artículos de stock"
-#: stock/serializers.py:939
+#: stock/serializers.py:1056
msgid "Stock merging notes"
msgstr "Notas de fusión de stock"
-#: stock/serializers.py:944
+#: stock/serializers.py:1061
msgid "Allow mismatched suppliers"
msgstr "Permitir proveedores no coincidentes"
-#: stock/serializers.py:945
+#: stock/serializers.py:1062
msgid "Allow stock items with different supplier parts to be merged"
msgstr "Permitir fusionar artículos de stock con diferentes partes de proveedor"
-#: stock/serializers.py:950
+#: stock/serializers.py:1067
msgid "Allow mismatched status"
msgstr "Permitir estado no coincidente"
-#: stock/serializers.py:951
+#: stock/serializers.py:1068
msgid "Allow stock items with different status codes to be merged"
msgstr "Permitir fusionar artículos de stock con diferentes códigos de estado"
-#: stock/serializers.py:961
+#: stock/serializers.py:1078
msgid "At least two stock items must be provided"
msgstr "Debe proporcionar al menos dos artículos de stock"
-#: stock/serializers.py:1043
+#: stock/serializers.py:1160
msgid "StockItem primary key value"
msgstr "Valor de clave primaria de Stock"
-#: stock/serializers.py:1071
+#: stock/serializers.py:1188
msgid "Stock transaction notes"
msgstr "Notas de transacción de stock"
@@ -8034,48 +8054,48 @@ msgstr "Notas de transacción de stock"
msgid "Stock Tracking Information"
msgstr "Información de Seguimiento de Stock"
-#: stock/templates/stock/item.html:69
+#: stock/templates/stock/item.html:63
msgid "Child Stock Items"
msgstr "Elementos de Stock Hijos"
-#: stock/templates/stock/item.html:77
+#: stock/templates/stock/item.html:71
msgid "This stock item does not have any child items"
msgstr "Este artículo de stock no tiene ningún artículo secundario"
-#: stock/templates/stock/item.html:86
+#: stock/templates/stock/item.html:80
#: stock/templates/stock/stock_sidebar.html:12
msgid "Test Data"
msgstr "Datos de Prueba"
-#: stock/templates/stock/item.html:90 stock/templates/stock/item_base.html:66
+#: stock/templates/stock/item.html:84 stock/templates/stock/item_base.html:66
msgid "Test Report"
msgstr "Informe de Prueba"
-#: stock/templates/stock/item.html:94 stock/templates/stock/item.html:288
+#: stock/templates/stock/item.html:88 stock/templates/stock/item.html:278
msgid "Delete Test Data"
msgstr "Eliminar Datos de Prueba"
-#: stock/templates/stock/item.html:98
+#: stock/templates/stock/item.html:92
msgid "Add Test Data"
msgstr "Añadir Datos de Prueba"
-#: stock/templates/stock/item.html:132
+#: stock/templates/stock/item.html:124
msgid "Stock Item Notes"
msgstr "Notas del artículo de stock"
-#: stock/templates/stock/item.html:147
+#: stock/templates/stock/item.html:139
msgid "Installed Stock Items"
msgstr "Elementos de Stock instalados"
-#: stock/templates/stock/item.html:152 templates/js/translated/stock.js:2996
+#: stock/templates/stock/item.html:144 templates/js/translated/stock.js:3123
msgid "Install Stock Item"
msgstr "Instalar artículo de stock"
-#: stock/templates/stock/item.html:276
+#: stock/templates/stock/item.html:266
msgid "Delete all test results for this stock item"
msgstr ""
-#: stock/templates/stock/item.html:305 templates/js/translated/stock.js:1611
+#: stock/templates/stock/item.html:295 templates/js/translated/stock.js:1610
msgid "Add Test Result"
msgstr "Añadir Resultado de Prueba"
@@ -8083,13 +8103,13 @@ msgstr "Añadir Resultado de Prueba"
msgid "Locate stock item"
msgstr ""
-#: stock/templates/stock/item_base.html:52 templates/stock_table.html:21
+#: stock/templates/stock/item_base.html:52
msgid "Scan to Location"
msgstr "Escanear a la ubicación"
#: stock/templates/stock/item_base.html:60
#: stock/templates/stock/location.html:69
-#: templates/js/translated/filters.js:322
+#: templates/js/translated/filters.js:432
msgid "Printing actions"
msgstr "Acciones de impresión"
@@ -8098,15 +8118,17 @@ msgid "Stock adjustment actions"
msgstr "Acciones de ajuste de stock"
#: stock/templates/stock/item_base.html:80
-#: stock/templates/stock/location.html:88 templates/stock_table.html:35
+#: stock/templates/stock/location.html:88 templates/js/translated/stock.js:1735
msgid "Count stock"
msgstr "Contar stock"
-#: stock/templates/stock/item_base.html:82 templates/stock_table.html:33
+#: stock/templates/stock/item_base.html:82
+#: templates/js/translated/stock.js:1717
msgid "Add stock"
msgstr "Añadir stock"
-#: stock/templates/stock/item_base.html:83 templates/stock_table.html:34
+#: stock/templates/stock/item_base.html:83
+#: templates/js/translated/stock.js:1726
msgid "Remove stock"
msgstr "Eliminar stock"
@@ -8115,11 +8137,12 @@ msgid "Serialize stock"
msgstr "Serializar stock"
#: stock/templates/stock/item_base.html:89
-#: stock/templates/stock/location.html:94 templates/stock_table.html:36
+#: stock/templates/stock/location.html:94 templates/js/translated/stock.js:1744
msgid "Transfer stock"
msgstr "Transferir stock"
-#: stock/templates/stock/item_base.html:92 templates/stock_table.html:39
+#: stock/templates/stock/item_base.html:92
+#: templates/js/translated/stock.js:1798
msgid "Assign to customer"
msgstr "Asignar a cliente"
@@ -8159,6 +8182,11 @@ msgstr "Editar artículo de almacén"
msgid "Delete stock item"
msgstr "Eliminar artículo de stock"
+#: stock/templates/stock/item_base.html:170 templates/InvenTree/search.html:139
+#: templates/js/translated/build.js:2046 templates/navbar.html:38
+msgid "Build"
+msgstr "Construcción o Armado"
+
#: stock/templates/stock/item_base.html:194
msgid "Parent Item"
msgstr "Elemento padre"
@@ -8221,7 +8249,7 @@ msgid "Available Quantity"
msgstr "Cantidad disponible"
#: stock/templates/stock/item_base.html:394
-#: templates/js/translated/build.js:2015
+#: templates/js/translated/build.js:2306
msgid "No location set"
msgstr "Ubicación no establecida"
@@ -8239,7 +8267,7 @@ msgid "This StockItem expired on %(item.expiry_date)s"
msgstr "Este ítem expiró el %(item.expiry_date)s"
#: stock/templates/stock/item_base.html:433
-#: templates/js/translated/table_filters.js:381
+#: templates/js/translated/table_filters.js:387
msgid "Expired"
msgstr "Expirado"
@@ -8249,7 +8277,7 @@ msgid "This StockItem expires on %(item.expiry_date)s"
msgstr "Este ítem expira el %(item.expiry_date)s"
#: stock/templates/stock/item_base.html:435
-#: templates/js/translated/table_filters.js:387
+#: templates/js/translated/table_filters.js:393
msgid "Stale"
msgstr "Desactualizado"
@@ -8258,7 +8286,7 @@ msgid "No stocktake performed"
msgstr "Ningún inventario realizado"
#: stock/templates/stock/item_base.html:503
-#: templates/js/translated/stock.js:1745
+#: templates/js/translated/stock.js:1865
msgid "stock item"
msgstr ""
@@ -8364,20 +8392,20 @@ msgstr "Crear nueva ubicación de stock"
msgid "New Location"
msgstr "Nueva Ubicación"
-#: stock/templates/stock/location.html:287
-#: templates/js/translated/stock.js:2318
+#: stock/templates/stock/location.html:278
+#: templates/js/translated/stock.js:2449
msgid "stock location"
msgstr "ubicación de almacén"
-#: stock/templates/stock/location.html:304
+#: stock/templates/stock/location.html:295
msgid "Scanned stock container into this location"
msgstr ""
-#: stock/templates/stock/location.html:377
+#: stock/templates/stock/location.html:368
msgid "Stock Location QR Code"
msgstr ""
-#: stock/templates/stock/location.html:388
+#: stock/templates/stock/location.html:379
msgid "Link Barcode to Stock Location"
msgstr ""
@@ -8451,71 +8479,71 @@ msgstr "El sitio está actualmente en mantenimiento y debería estar listo pront
msgid "Index"
msgstr "Índice"
-#: templates/InvenTree/index.html:89
+#: templates/InvenTree/index.html:39
msgid "Subscribed Parts"
msgstr "Partes Suscritas"
-#: templates/InvenTree/index.html:102
+#: templates/InvenTree/index.html:53
msgid "Subscribed Categories"
msgstr "Categorías Suscritas"
-#: templates/InvenTree/index.html:112
+#: templates/InvenTree/index.html:63
msgid "Latest Parts"
msgstr "Últimas Partes"
-#: templates/InvenTree/index.html:126
+#: templates/InvenTree/index.html:78
msgid "BOM Waiting Validation"
msgstr "Validación de BOM en espera"
-#: templates/InvenTree/index.html:155
+#: templates/InvenTree/index.html:107
msgid "Recently Updated"
msgstr "Actualizado Recientemente"
-#: templates/InvenTree/index.html:180
+#: templates/InvenTree/index.html:134
msgid "Depleted Stock"
msgstr "Stock Agotado"
-#: templates/InvenTree/index.html:193
+#: templates/InvenTree/index.html:148
msgid "Required for Build Orders"
msgstr "Requerido para construir pedidos"
-#: templates/InvenTree/index.html:208
+#: templates/InvenTree/index.html:156
msgid "Expired Stock"
msgstr "Stock Caducado"
-#: templates/InvenTree/index.html:222
+#: templates/InvenTree/index.html:172
msgid "Stale Stock"
msgstr "Stock Obsoleto"
-#: templates/InvenTree/index.html:247
+#: templates/InvenTree/index.html:199
msgid "Build Orders In Progress"
msgstr "Pedidos en curso"
-#: templates/InvenTree/index.html:258
+#: templates/InvenTree/index.html:210
msgid "Overdue Build Orders"
msgstr "Órdenes de construcción atrasadas"
-#: templates/InvenTree/index.html:278
+#: templates/InvenTree/index.html:230
msgid "Outstanding Purchase Orders"
msgstr "Órdenes de Compra Pendientes"
-#: templates/InvenTree/index.html:289
+#: templates/InvenTree/index.html:241
msgid "Overdue Purchase Orders"
msgstr "Pedidos de Compra Atrasados"
-#: templates/InvenTree/index.html:310
+#: templates/InvenTree/index.html:262
msgid "Outstanding Sales Orders"
msgstr "Pedidos de Venta Pendientes"
-#: templates/InvenTree/index.html:321
+#: templates/InvenTree/index.html:273
msgid "Overdue Sales Orders"
msgstr "Pedidos de Venta Atrasados"
-#: templates/InvenTree/index.html:347
+#: templates/InvenTree/index.html:299
msgid "InvenTree News"
msgstr "Noticias de InvenTree"
-#: templates/InvenTree/index.html:349
+#: templates/InvenTree/index.html:301
msgid "Current News"
msgstr "Noticias actuales"
@@ -8672,29 +8700,29 @@ msgstr "Ajustes del complemento"
msgid "Changing the settings below require you to immediately restart the server. Do not change this while under active usage."
msgstr "Cambiar la configuración de abajo requiere reiniciar inmediatamente el servidor. No lo cambie mientras esté en uso activo."
-#: templates/InvenTree/settings/plugin.html:37
+#: templates/InvenTree/settings/plugin.html:35
#: templates/InvenTree/settings/sidebar.html:64
msgid "Plugins"
msgstr "Complementos"
-#: templates/InvenTree/settings/plugin.html:43
+#: templates/InvenTree/settings/plugin.html:41
#: templates/js/translated/plugin.js:151
msgid "Install Plugin"
msgstr "Instalar complemento"
-#: templates/InvenTree/settings/plugin.html:51
+#: templates/InvenTree/settings/plugin.html:49
msgid "External plugins are not enabled for this InvenTree installation"
msgstr "Los complementos externos no están habilitados para esta instalación de InvenTree"
-#: templates/InvenTree/settings/plugin.html:70
+#: templates/InvenTree/settings/plugin.html:64
msgid "Plugin Error Stack"
msgstr "Pila de error de complementos"
-#: templates/InvenTree/settings/plugin.html:79
+#: templates/InvenTree/settings/plugin.html:73
msgid "Stage"
msgstr "Etapa"
-#: templates/InvenTree/settings/plugin.html:81
+#: templates/InvenTree/settings/plugin.html:75
#: templates/js/translated/notification.js:75
msgid "Message"
msgstr "Mensaje"
@@ -8767,14 +8795,6 @@ msgstr "Hash de Commit"
msgid "Commit Message"
msgstr "Mensaje de Commit"
-#: templates/InvenTree/settings/plugin_settings.html:126
-msgid "Sign Status"
-msgstr "Estado de Firma"
-
-#: templates/InvenTree/settings/plugin_settings.html:131
-msgid "Sign Key"
-msgstr "Firma de clave"
-
#: templates/InvenTree/settings/po.html:7
msgid "Purchase Order Settings"
msgstr "Ajustes de Orden de Compra"
@@ -8870,12 +8890,12 @@ msgid "No category parameter templates found"
msgstr "No hay plantillas de parámetros de categoría"
#: templates/InvenTree/settings/settings_staff_js.html:212
-#: templates/js/translated/part.js:1618
+#: templates/js/translated/part.js:1617
msgid "Edit Template"
msgstr "Editar Plantilla"
#: templates/InvenTree/settings/settings_staff_js.html:213
-#: templates/js/translated/part.js:1619
+#: templates/js/translated/part.js:1618
msgid "Delete Template"
msgstr "Eliminar Plantilla"
@@ -8913,7 +8933,7 @@ msgid "Home Page"
msgstr "Página de Inicio"
#: templates/InvenTree/settings/sidebar.html:15
-#: templates/js/translated/tables.js:575 templates/navbar.html:107
+#: templates/js/translated/tables.js:551 templates/navbar.html:107
#: templates/search.html:8 templates/search_form.html:6
#: templates/search_form.html:7
msgid "Search"
@@ -8990,6 +9010,7 @@ msgid "Unverified"
msgstr "Sin verificar"
#: templates/InvenTree/settings/user.html:80
+#: templates/js/translated/company.js:984
msgid "Primary"
msgstr "Principal"
@@ -9204,44 +9225,48 @@ msgstr "Actualizado"
msgid "Update Available"
msgstr "Actualización Disponible"
-#: templates/about.html:42
+#: templates/about.html:43
+msgid "Commit Branch"
+msgstr ""
+
+#: templates/about.html:49
msgid "InvenTree Documentation"
msgstr "Documentación de InvenTree"
-#: templates/about.html:47
+#: templates/about.html:54
msgid "API Version"
msgstr "Versión API"
-#: templates/about.html:52
+#: templates/about.html:59
msgid "Python Version"
msgstr "Versión de Python"
-#: templates/about.html:57
+#: templates/about.html:64
msgid "Django Version"
msgstr "Versión de Django"
-#: templates/about.html:62
+#: templates/about.html:69
msgid "View Code on GitHub"
msgstr "Ver código en GitHub"
-#: templates/about.html:67
+#: templates/about.html:74
msgid "Credits"
msgstr "Créditos"
-#: templates/about.html:72
+#: templates/about.html:79
msgid "Mobile App"
msgstr "Aplicación Móvil"
-#: templates/about.html:77
+#: templates/about.html:84
msgid "Submit Bug Report"
msgstr "Enviar Informe de Error"
-#: templates/about.html:84 templates/clip.html:4
+#: templates/about.html:91 templates/clip.html:4
#: templates/js/translated/helpers.js:585
msgid "copy to clipboard"
msgstr "copiar al portapapeles"
-#: templates/about.html:84
+#: templates/about.html:91
msgid "copy version information"
msgstr "copiar información de versión"
@@ -9435,14 +9460,6 @@ msgstr "Agregar Enlace"
msgid "Add Attachment"
msgstr "Añadir archivo adjunto"
-#: templates/attachment_table.html:11
-msgid "Delete selected attachments"
-msgstr ""
-
-#: templates/attachment_table.html:12 templates/js/translated/attachment.js:129
-msgid "Delete Attachments"
-msgstr ""
-
#: templates/barcode_data.html:5
msgid "Barcode Identifier"
msgstr "Identificador de Código de Barras"
@@ -9487,7 +9504,7 @@ msgid "The following parts are low on required stock"
msgstr "Las siguientes partes están bajas en stock requerido"
#: templates/email/build_order_required_stock.html:18
-#: templates/js/translated/bom.js:1633
+#: templates/js/translated/bom.js:1653 templates/js/translated/build.js:2485
msgid "Required Quantity"
msgstr "Cantidad requerida"
@@ -9501,7 +9518,7 @@ msgid "Click on the following link to view this part"
msgstr "Haga clic en el siguiente enlace para ver esta parte"
#: templates/email/low_stock_notification.html:18
-#: templates/js/translated/part.js:3140
+#: templates/js/translated/part.js:3125
msgid "Minimum Quantity"
msgstr "Cantidad Mínima"
@@ -9573,23 +9590,35 @@ msgstr "Código de error"
msgid "All selected attachments will be deleted"
msgstr ""
-#: templates/js/translated/attachment.js:255
+#: templates/js/translated/attachment.js:129
+msgid "Delete Attachments"
+msgstr ""
+
+#: templates/js/translated/attachment.js:205
+msgid "Delete attachments"
+msgstr ""
+
+#: templates/js/translated/attachment.js:253
+msgid "Attachment actions"
+msgstr ""
+
+#: templates/js/translated/attachment.js:275
msgid "No attachments found"
msgstr "No se encontraron archivos adjuntos"
-#: templates/js/translated/attachment.js:285
+#: templates/js/translated/attachment.js:305
msgid "Edit Attachment"
msgstr "Editar archivos adjuntos"
-#: templates/js/translated/attachment.js:326
+#: templates/js/translated/attachment.js:336
msgid "Upload Date"
msgstr "Fecha de subida"
-#: templates/js/translated/attachment.js:346
+#: templates/js/translated/attachment.js:356
msgid "Edit attachment"
msgstr "Editar adjunto"
-#: templates/js/translated/attachment.js:354
+#: templates/js/translated/attachment.js:364
msgid "Delete attachment"
msgstr "Eliminar adjunto"
@@ -9646,7 +9675,7 @@ msgstr ""
msgid "Unlink"
msgstr "Desvincular"
-#: templates/js/translated/barcode.js:550 templates/js/translated/stock.js:1118
+#: templates/js/translated/barcode.js:550 templates/js/translated/stock.js:1117
msgid "Remove stock item"
msgstr "Eliminar artículo de stock"
@@ -9704,775 +9733,869 @@ msgstr "Comprobar en la ubicación"
msgid "Barcode does not match a valid location"
msgstr "El código de barras no coincide con una ubicación válida"
-#: templates/js/translated/bom.js:77
+#: templates/js/translated/bom.js:78
msgid "Create BOM Item"
msgstr "Crear artículo para el BOM"
-#: templates/js/translated/bom.js:131
+#: templates/js/translated/bom.js:132
msgid "Display row data"
msgstr "Mostrar datos de fila"
-#: templates/js/translated/bom.js:187
+#: templates/js/translated/bom.js:188
msgid "Row Data"
msgstr "Datos de Fila"
-#: templates/js/translated/bom.js:188 templates/js/translated/bom.js:699
+#: templates/js/translated/bom.js:189 templates/js/translated/bom.js:700
#: templates/js/translated/modals.js:71 templates/js/translated/modals.js:622
#: templates/js/translated/modals.js:746 templates/js/translated/modals.js:1054
-#: templates/js/translated/purchase_order.js:791 templates/modals.html:15
+#: templates/js/translated/purchase_order.js:802 templates/modals.html:15
#: templates/modals.html:27 templates/modals.html:39 templates/modals.html:50
msgid "Close"
msgstr "Cerrar"
-#: templates/js/translated/bom.js:305
+#: templates/js/translated/bom.js:306
msgid "Download BOM Template"
msgstr "Descargar plantilla BOM"
-#: templates/js/translated/bom.js:350
+#: templates/js/translated/bom.js:351
msgid "Multi Level BOM"
msgstr ""
-#: templates/js/translated/bom.js:351
+#: templates/js/translated/bom.js:352
msgid "Include BOM data for subassemblies"
msgstr ""
-#: templates/js/translated/bom.js:356
+#: templates/js/translated/bom.js:357
msgid "Levels"
msgstr "Niveles"
-#: templates/js/translated/bom.js:357
+#: templates/js/translated/bom.js:358
msgid "Select maximum number of BOM levels to export (0 = all levels)"
msgstr "Seleccione el número máximo de niveles BOM a exportar (0 = todos los niveles)"
-#: templates/js/translated/bom.js:364
+#: templates/js/translated/bom.js:365
msgid "Include Alternative Parts"
msgstr "Incluye partes alternativas"
-#: templates/js/translated/bom.js:365
+#: templates/js/translated/bom.js:366
msgid "Include alternative parts in exported BOM"
msgstr ""
-#: templates/js/translated/bom.js:370
+#: templates/js/translated/bom.js:371
msgid "Include Parameter Data"
msgstr "Incluye Parámetros de Datos"
-#: templates/js/translated/bom.js:371
+#: templates/js/translated/bom.js:372
msgid "Include part parameter data in exported BOM"
msgstr ""
-#: templates/js/translated/bom.js:376
+#: templates/js/translated/bom.js:377
msgid "Include Stock Data"
msgstr "Incluye Datos de Stock"
-#: templates/js/translated/bom.js:377
+#: templates/js/translated/bom.js:378
msgid "Include part stock data in exported BOM"
msgstr "Incluye datos de stock de partes en BOM exportado"
-#: templates/js/translated/bom.js:382
+#: templates/js/translated/bom.js:383
msgid "Include Manufacturer Data"
msgstr "Incluir Datos del fabricante"
-#: templates/js/translated/bom.js:383
+#: templates/js/translated/bom.js:384
msgid "Include part manufacturer data in exported BOM"
msgstr "Incluye datos del fabricante de partes en BOM exportado"
-#: templates/js/translated/bom.js:388
+#: templates/js/translated/bom.js:389
msgid "Include Supplier Data"
msgstr "Incluir Datos del Proveedor"
-#: templates/js/translated/bom.js:389
+#: templates/js/translated/bom.js:390
msgid "Include part supplier data in exported BOM"
msgstr "Incluye datos del proveedor de partes en BOM exportado"
-#: templates/js/translated/bom.js:394
+#: templates/js/translated/bom.js:395
msgid "Include Pricing Data"
msgstr ""
-#: templates/js/translated/bom.js:395
+#: templates/js/translated/bom.js:396
msgid "Include part pricing data in exported BOM"
msgstr ""
-#: templates/js/translated/bom.js:590
+#: templates/js/translated/bom.js:591
msgid "Remove substitute part"
msgstr "Eliminar parte sustituta"
-#: templates/js/translated/bom.js:644
+#: templates/js/translated/bom.js:645
msgid "Select and add a new substitute part using the input below"
msgstr "Seleccione y añada una nueva parte sustituta usando la siguiente entrada"
-#: templates/js/translated/bom.js:655
+#: templates/js/translated/bom.js:656
msgid "Are you sure you wish to remove this substitute part link?"
msgstr "¿Está seguro que desea eliminar este enlace de la parte sustituta?"
-#: templates/js/translated/bom.js:661
+#: templates/js/translated/bom.js:662
msgid "Remove Substitute Part"
msgstr "Eliminar parte sustituta"
-#: templates/js/translated/bom.js:700
+#: templates/js/translated/bom.js:701
msgid "Add Substitute"
msgstr "Añadir sustituto"
-#: templates/js/translated/bom.js:701
+#: templates/js/translated/bom.js:702
msgid "Edit BOM Item Substitutes"
msgstr "Editar sustitutos de artículos BOM"
-#: templates/js/translated/bom.js:763
+#: templates/js/translated/bom.js:764
msgid "All selected BOM items will be deleted"
msgstr "Todos los artículos BOM seleccionados serán eliminados"
-#: templates/js/translated/bom.js:779
+#: templates/js/translated/bom.js:780
msgid "Delete selected BOM items?"
msgstr "¿Eliminar artículos BOM seleccionados?"
-#: templates/js/translated/bom.js:906
+#: templates/js/translated/bom.js:826
+msgid "Delete items"
+msgstr ""
+
+#: templates/js/translated/bom.js:924
msgid "Load BOM for subassembly"
msgstr ""
-#: templates/js/translated/bom.js:916
+#: templates/js/translated/bom.js:934
msgid "Substitutes Available"
msgstr "Sustitutos Disponibles"
-#: templates/js/translated/bom.js:920 templates/js/translated/build.js:2090
+#: templates/js/translated/bom.js:938 templates/js/translated/build.js:2429
msgid "Variant stock allowed"
msgstr "Stock de variante permitido"
-#: templates/js/translated/bom.js:984
+#: templates/js/translated/bom.js:1002
msgid "Substitutes"
msgstr "Sustitutos"
-#: templates/js/translated/bom.js:1104
+#: templates/js/translated/bom.js:1122
msgid "BOM pricing is complete"
msgstr ""
-#: templates/js/translated/bom.js:1109
+#: templates/js/translated/bom.js:1127
msgid "BOM pricing is incomplete"
msgstr ""
-#: templates/js/translated/bom.js:1116
+#: templates/js/translated/bom.js:1134
msgid "No pricing available"
msgstr ""
-#: templates/js/translated/bom.js:1147 templates/js/translated/build.js:2173
-#: templates/js/translated/sales_order.js:1887
+#: templates/js/translated/bom.js:1165 templates/js/translated/build.js:2523
+#: templates/js/translated/sales_order.js:1899
msgid "No Stock Available"
msgstr ""
-#: templates/js/translated/bom.js:1152 templates/js/translated/build.js:2177
+#: templates/js/translated/bom.js:1170 templates/js/translated/build.js:2527
msgid "Includes variant and substitute stock"
msgstr ""
-#: templates/js/translated/bom.js:1154 templates/js/translated/build.js:2179
-#: templates/js/translated/part.js:1230
+#: templates/js/translated/bom.js:1172 templates/js/translated/build.js:2529
+#: templates/js/translated/part.js:1229
msgid "Includes variant stock"
msgstr ""
-#: templates/js/translated/bom.js:1156 templates/js/translated/build.js:2181
+#: templates/js/translated/bom.js:1174 templates/js/translated/build.js:2531
msgid "Includes substitute stock"
msgstr ""
-#: templates/js/translated/bom.js:1184 templates/js/translated/build.js:2164
-#: templates/js/translated/build.js:2255
+#: templates/js/translated/bom.js:1204 templates/js/translated/build.js:2514
msgid "Consumable item"
msgstr ""
-#: templates/js/translated/bom.js:1244
+#: templates/js/translated/bom.js:1264
msgid "Validate BOM Item"
msgstr "Validar Artículo para el BOM"
-#: templates/js/translated/bom.js:1246
+#: templates/js/translated/bom.js:1266
msgid "This line has been validated"
msgstr "Esta línea ha sido validada"
-#: templates/js/translated/bom.js:1248
+#: templates/js/translated/bom.js:1268
msgid "Edit substitute parts"
msgstr "Editar partes sustitutas"
-#: templates/js/translated/bom.js:1250 templates/js/translated/bom.js:1445
+#: templates/js/translated/bom.js:1270 templates/js/translated/bom.js:1465
msgid "Edit BOM Item"
msgstr "Editar Artículo de BOM"
-#: templates/js/translated/bom.js:1252
+#: templates/js/translated/bom.js:1272
msgid "Delete BOM Item"
msgstr "Eliminar Artículo de BOM"
-#: templates/js/translated/bom.js:1272
+#: templates/js/translated/bom.js:1292
msgid "View BOM"
msgstr "Ver BOM"
-#: templates/js/translated/bom.js:1356 templates/js/translated/build.js:1927
+#: templates/js/translated/bom.js:1376
msgid "No BOM items found"
msgstr "No se encontraron artículos BOM"
-#: templates/js/translated/bom.js:1616 templates/js/translated/build.js:2073
+#: templates/js/translated/bom.js:1636 templates/js/translated/build.js:2414
msgid "Required Part"
msgstr "Parte requerida"
-#: templates/js/translated/bom.js:1642
+#: templates/js/translated/bom.js:1662
msgid "Inherited from parent BOM"
msgstr "Heredado de BOM superior"
-#: templates/js/translated/build.js:126
+#: templates/js/translated/build.js:136
msgid "Edit Build Order"
msgstr "Editar Orden de Trabajo"
-#: templates/js/translated/build.js:169
+#: templates/js/translated/build.js:179
msgid "Create Build Order"
msgstr "Crear Orden de Trabajo"
-#: templates/js/translated/build.js:202
+#: templates/js/translated/build.js:211
msgid "Cancel Build Order"
msgstr ""
-#: templates/js/translated/build.js:211
+#: templates/js/translated/build.js:220
msgid "Are you sure you wish to cancel this build?"
msgstr "¿Estás seguro de que quieres cancelar esta construcción?"
-#: templates/js/translated/build.js:217
+#: templates/js/translated/build.js:226
msgid "Stock items have been allocated to this build order"
msgstr ""
-#: templates/js/translated/build.js:224
+#: templates/js/translated/build.js:233
msgid "There are incomplete outputs remaining for this build order"
msgstr ""
-#: templates/js/translated/build.js:276
+#: templates/js/translated/build.js:285
msgid "Build order is ready to be completed"
msgstr "El pedido de construcción está listo para ser completado"
-#: templates/js/translated/build.js:284
+#: templates/js/translated/build.js:293
msgid "This build order cannot be completed as there are incomplete outputs"
msgstr ""
-#: templates/js/translated/build.js:289
+#: templates/js/translated/build.js:298
msgid "Build Order is incomplete"
msgstr "Orden de construcción incompleta"
-#: templates/js/translated/build.js:307
+#: templates/js/translated/build.js:316
msgid "Complete Build Order"
msgstr "Completar Orden de Construcción"
-#: templates/js/translated/build.js:348 templates/js/translated/stock.js:119
-#: templates/js/translated/stock.js:265
+#: templates/js/translated/build.js:357 templates/js/translated/stock.js:118
+#: templates/js/translated/stock.js:264
msgid "Next available serial number"
msgstr "Siguiente número de serie disponible"
-#: templates/js/translated/build.js:350 templates/js/translated/stock.js:121
-#: templates/js/translated/stock.js:267
+#: templates/js/translated/build.js:359 templates/js/translated/stock.js:120
+#: templates/js/translated/stock.js:266
msgid "Latest serial number"
msgstr "Último número de serie"
-#: templates/js/translated/build.js:359
+#: templates/js/translated/build.js:368
msgid "The Bill of Materials contains trackable parts"
msgstr "La ley de materiales contiene partes rastreables"
-#: templates/js/translated/build.js:360
+#: templates/js/translated/build.js:369
msgid "Build outputs must be generated individually"
msgstr "Las salidas de construcción deben ser generadas individualmente"
-#: templates/js/translated/build.js:368
+#: templates/js/translated/build.js:377
msgid "Trackable parts can have serial numbers specified"
msgstr "Las partes rastreables pueden tener números de serie especificados"
-#: templates/js/translated/build.js:369
+#: templates/js/translated/build.js:378
msgid "Enter serial numbers to generate multiple single build outputs"
msgstr "Introduzca números de serie para generar múltiples salidas de construcción única"
-#: templates/js/translated/build.js:376
+#: templates/js/translated/build.js:385
msgid "Create Build Output"
msgstr "Crear Salida de Trabajo"
-#: templates/js/translated/build.js:407
+#: templates/js/translated/build.js:416
msgid "Allocate stock items to this build output"
msgstr "Asignar artículos de stock a esta salida de trabajo"
-#: templates/js/translated/build.js:418
-msgid "Unallocate stock from build output"
-msgstr "Desasignar stock de la salida de trabajo"
+#: templates/js/translated/build.js:424
+msgid "Deallocate stock from build output"
+msgstr ""
-#: templates/js/translated/build.js:427
+#: templates/js/translated/build.js:433
msgid "Complete build output"
msgstr "Completar salida de trabajo"
-#: templates/js/translated/build.js:435
+#: templates/js/translated/build.js:441
msgid "Scrap build output"
msgstr ""
-#: templates/js/translated/build.js:442
+#: templates/js/translated/build.js:448
msgid "Delete build output"
msgstr "Eliminar Salida de Trabajo"
-#: templates/js/translated/build.js:462
-msgid "Are you sure you wish to unallocate stock items from this build?"
-msgstr "¿Está seguro que desea desasignar los artículos de stock de este trabajo?"
+#: templates/js/translated/build.js:468
+msgid "Are you sure you wish to deallocate the selected stock items from this build?"
+msgstr ""
-#: templates/js/translated/build.js:480
-msgid "Unallocate Stock Items"
-msgstr "Desasignar artículos de stock"
+#: templates/js/translated/build.js:486
+msgid "Deallocate Stock Items"
+msgstr ""
-#: templates/js/translated/build.js:566 templates/js/translated/build.js:690
-#: templates/js/translated/build.js:812
+#: templates/js/translated/build.js:572 templates/js/translated/build.js:696
+#: templates/js/translated/build.js:818
msgid "Select Build Outputs"
msgstr "Seleccionar Salida de Trabajo"
-#: templates/js/translated/build.js:567 templates/js/translated/build.js:691
-#: templates/js/translated/build.js:813
+#: templates/js/translated/build.js:573 templates/js/translated/build.js:697
+#: templates/js/translated/build.js:819
msgid "At least one build output must be selected"
msgstr "Se debe seleccionar al menos una salida de trabajo"
-#: templates/js/translated/build.js:581
+#: templates/js/translated/build.js:587
msgid "Selected build outputs will be marked as complete"
msgstr ""
-#: templates/js/translated/build.js:585 templates/js/translated/build.js:715
-#: templates/js/translated/build.js:835
+#: templates/js/translated/build.js:591 templates/js/translated/build.js:721
+#: templates/js/translated/build.js:841
msgid "Output"
msgstr "Salida"
-#: templates/js/translated/build.js:609
+#: templates/js/translated/build.js:615
msgid "Complete Build Outputs"
msgstr "Completar salidas de trabajo"
-#: templates/js/translated/build.js:706
+#: templates/js/translated/build.js:712
msgid "Selected build outputs will be marked as scrapped"
msgstr ""
-#: templates/js/translated/build.js:708
+#: templates/js/translated/build.js:714
msgid "Scrapped output are marked as rejected"
msgstr ""
-#: templates/js/translated/build.js:709
+#: templates/js/translated/build.js:715
msgid "Allocated stock items will no longer be available"
msgstr ""
-#: templates/js/translated/build.js:710
+#: templates/js/translated/build.js:716
msgid "The completion status of the build order will not be adjusted"
msgstr ""
-#: templates/js/translated/build.js:737
+#: templates/js/translated/build.js:743
msgid "Scrap Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:827
+#: templates/js/translated/build.js:833
msgid "Selected build outputs will be deleted"
msgstr ""
-#: templates/js/translated/build.js:829
+#: templates/js/translated/build.js:835
msgid "Build output data will be permanently deleted"
msgstr ""
-#: templates/js/translated/build.js:830
+#: templates/js/translated/build.js:836
msgid "Allocated stock items will be returned to stock"
msgstr ""
-#: templates/js/translated/build.js:848
+#: templates/js/translated/build.js:854
msgid "Delete Build Outputs"
msgstr "Eliminar Salidas"
-#: templates/js/translated/build.js:934
+#: templates/js/translated/build.js:941
msgid "No build order allocations found"
msgstr "No se encontraron asignaciones de órdenes de trabajo"
-#: templates/js/translated/build.js:971
+#: templates/js/translated/build.js:970 templates/js/translated/build.js:2270
+msgid "Allocated Quantity"
+msgstr ""
+
+#: templates/js/translated/build.js:984
msgid "Location not specified"
msgstr "Ubicación no especificada"
-#: templates/js/translated/build.js:1047
+#: templates/js/translated/build.js:1006
+msgid "Complete outputs"
+msgstr "Completar salidas"
+
+#: templates/js/translated/build.js:1024
+msgid "Scrap outputs"
+msgstr ""
+
+#: templates/js/translated/build.js:1042
+msgid "Delete outputs"
+msgstr "Eliminar salidas"
+
+#: templates/js/translated/build.js:1100
msgid "build output"
msgstr ""
-#: templates/js/translated/build.js:1048
+#: templates/js/translated/build.js:1101
msgid "build outputs"
msgstr ""
-#: templates/js/translated/build.js:1383
+#: templates/js/translated/build.js:1105
+msgid "Build output actions"
+msgstr ""
+
+#: templates/js/translated/build.js:1274
msgid "No active build outputs found"
msgstr "No se encontraron salidas de trabajo activas"
-#: templates/js/translated/build.js:1457
-msgid "Allocated Stock"
+#: templates/js/translated/build.js:1329
+msgid "Allocated Lines"
msgstr ""
-#: templates/js/translated/build.js:1464
-msgid "No tracked BOM items for this build"
+#: templates/js/translated/build.js:1343
+msgid "Required Tests"
msgstr ""
-#: templates/js/translated/build.js:1486
-msgid "Completed Tests"
-msgstr ""
-
-#: templates/js/translated/build.js:1491
-msgid "No required tests for this build"
-msgstr ""
-
-#: templates/js/translated/build.js:2032 templates/js/translated/build.js:3056
-#: templates/js/translated/sales_order.js:1632
-msgid "Edit stock allocation"
-msgstr "Editar asignación de stock"
-
-#: templates/js/translated/build.js:2034 templates/js/translated/build.js:3057
-#: templates/js/translated/sales_order.js:1633
-msgid "Delete stock allocation"
-msgstr "Eliminar asignación de stock"
-
-#: templates/js/translated/build.js:2050
-msgid "Edit Allocation"
-msgstr "Editar Asignación"
-
-#: templates/js/translated/build.js:2060
-msgid "Remove Allocation"
-msgstr "Quitar asignación"
-
-#: templates/js/translated/build.js:2086
-msgid "Substitute parts available"
-msgstr "Partes sustitutas disponibles"
-
-#: templates/js/translated/build.js:2122
-msgid "Quantity Per"
-msgstr "Cantidad por"
-
-#: templates/js/translated/build.js:2167
-#: templates/js/translated/sales_order.js:1894
-msgid "Insufficient stock available"
-msgstr ""
-
-#: templates/js/translated/build.js:2169
-#: templates/js/translated/sales_order.js:1892
-msgid "Sufficient stock available"
-msgstr ""
-
-#: templates/js/translated/build.js:2263
-#: templates/js/translated/sales_order.js:1993
-msgid "Build stock"
-msgstr "Stock de Trabajo"
-
-#: templates/js/translated/build.js:2267 templates/stock_table.html:38
-msgid "Order stock"
-msgstr "Pedido de stock"
-
-#: templates/js/translated/build.js:2270
-#: templates/js/translated/sales_order.js:1987
-msgid "Allocate stock"
-msgstr "Asignar stock"
-
-#: templates/js/translated/build.js:2310
-#: templates/js/translated/purchase_order.js:616
-#: templates/js/translated/sales_order.js:1159
+#: templates/js/translated/build.js:1502
+#: templates/js/translated/purchase_order.js:627
+#: templates/js/translated/sales_order.js:1171
msgid "Select Parts"
msgstr "Seleccionar partes"
-#: templates/js/translated/build.js:2311
-#: templates/js/translated/sales_order.js:1160
+#: templates/js/translated/build.js:1503
+#: templates/js/translated/sales_order.js:1172
msgid "You must select at least one part to allocate"
msgstr "Debe seleccionar al menos una parte para asignar"
-#: templates/js/translated/build.js:2359
-#: templates/js/translated/sales_order.js:1109
+#: templates/js/translated/build.js:1566
+#: templates/js/translated/sales_order.js:1121
msgid "Specify stock allocation quantity"
msgstr "Especificar la cantidad de asignación de stock"
-#: templates/js/translated/build.js:2438
+#: templates/js/translated/build.js:1643
msgid "All Parts Allocated"
msgstr ""
-#: templates/js/translated/build.js:2439
+#: templates/js/translated/build.js:1644
msgid "All selected parts have been fully allocated"
msgstr ""
-#: templates/js/translated/build.js:2453
-#: templates/js/translated/sales_order.js:1174
+#: templates/js/translated/build.js:1658
+#: templates/js/translated/sales_order.js:1186
msgid "Select source location (leave blank to take from all locations)"
msgstr "Seleccionar ubicación de origen (dejar en blanco para tomar de todas las ubicaciones)"
-#: templates/js/translated/build.js:2481
+#: templates/js/translated/build.js:1686
msgid "Allocate Stock Items to Build Order"
msgstr "Asignar Artículos de Stock a Orden de Trabajo"
-#: templates/js/translated/build.js:2492
-#: templates/js/translated/sales_order.js:1271
+#: templates/js/translated/build.js:1697
+#: templates/js/translated/sales_order.js:1283
msgid "No matching stock locations"
msgstr "No hay ubicaciones de stock coincidentes"
-#: templates/js/translated/build.js:2565
-#: templates/js/translated/sales_order.js:1348
+#: templates/js/translated/build.js:1770
+#: templates/js/translated/sales_order.js:1360
msgid "No matching stock items"
msgstr "No hay artículos de stock coincidentes"
-#: templates/js/translated/build.js:2662
+#: templates/js/translated/build.js:1867
msgid "Automatic Stock Allocation"
msgstr ""
-#: templates/js/translated/build.js:2663
+#: templates/js/translated/build.js:1868
msgid "Stock items will be automatically allocated to this build order, according to the provided guidelines"
msgstr ""
-#: templates/js/translated/build.js:2665
+#: templates/js/translated/build.js:1870
msgid "If a location is specified, stock will only be allocated from that location"
msgstr ""
-#: templates/js/translated/build.js:2666
+#: templates/js/translated/build.js:1871
msgid "If stock is considered interchangeable, it will be allocated from the first location it is found"
msgstr ""
-#: templates/js/translated/build.js:2667
+#: templates/js/translated/build.js:1872
msgid "If substitute stock is allowed, it will be used where stock of the primary part cannot be found"
msgstr ""
-#: templates/js/translated/build.js:2694
+#: templates/js/translated/build.js:1899
msgid "Allocate Stock Items"
msgstr "Asignar artículos de inventario"
-#: templates/js/translated/build.js:2800
+#: templates/js/translated/build.js:2005
msgid "No builds matching query"
msgstr "No hay trabajos que coincidan con la consulta"
-#: templates/js/translated/build.js:2835 templates/js/translated/part.js:2208
-#: templates/js/translated/part.js:2692 templates/js/translated/stock.js:1759
-#: templates/js/translated/stock.js:2458
+#: templates/js/translated/build.js:2040 templates/js/translated/build.js:2408
+#: templates/js/translated/part.js:2284 templates/js/translated/part.js:2677
+#: templates/js/translated/stock.js:1899 templates/js/translated/stock.js:2589
msgid "Select"
msgstr "Seleccionar"
-#: templates/js/translated/build.js:2849
+#: templates/js/translated/build.js:2054
msgid "Build order is overdue"
msgstr "Orden de trabajo atrasada"
-#: templates/js/translated/build.js:2883
+#: templates/js/translated/build.js:2100
msgid "Progress"
msgstr "Progreso"
-#: templates/js/translated/build.js:2919 templates/js/translated/stock.js:2779
+#: templates/js/translated/build.js:2136 templates/js/translated/stock.js:2910
msgid "No user information"
msgstr "No hay información de usuario"
-#: templates/js/translated/build.js:2934
+#: templates/js/translated/build.js:2151
msgid "group"
msgstr "grupo"
-#: templates/js/translated/build.js:3033
-msgid "No parts allocated for"
-msgstr "No se asignaron partes para"
+#: templates/js/translated/build.js:2315
+#: templates/js/translated/sales_order.js:1644
+msgid "Edit stock allocation"
+msgstr "Editar asignación de stock"
-#: templates/js/translated/company.js:87
+#: templates/js/translated/build.js:2316
+#: templates/js/translated/sales_order.js:1645
+msgid "Delete stock allocation"
+msgstr "Eliminar asignación de stock"
+
+#: templates/js/translated/build.js:2331
+msgid "Edit Allocation"
+msgstr "Editar Asignación"
+
+#: templates/js/translated/build.js:2343
+msgid "Remove Allocation"
+msgstr "Quitar asignación"
+
+#: templates/js/translated/build.js:2384
+msgid "build line"
+msgstr ""
+
+#: templates/js/translated/build.js:2385
+msgid "build lines"
+msgstr ""
+
+#: templates/js/translated/build.js:2403
+msgid "No build lines found"
+msgstr ""
+
+#: templates/js/translated/build.js:2433 templates/js/translated/part.js:767
+#: templates/js/translated/part.js:1175
+msgid "Trackable part"
+msgstr "Parte Rastreable"
+
+#: templates/js/translated/build.js:2468
+msgid "Unit Quantity"
+msgstr ""
+
+#: templates/js/translated/build.js:2517
+#: templates/js/translated/sales_order.js:1906
+msgid "Insufficient stock available"
+msgstr ""
+
+#: templates/js/translated/build.js:2519
+#: templates/js/translated/sales_order.js:1904
+msgid "Sufficient stock available"
+msgstr ""
+
+#: templates/js/translated/build.js:2566
+msgid "Consumable Item"
+msgstr ""
+
+#: templates/js/translated/build.js:2571
+msgid "Tracked item"
+msgstr ""
+
+#: templates/js/translated/build.js:2578
+#: templates/js/translated/sales_order.js:2005
+msgid "Build stock"
+msgstr "Stock de Trabajo"
+
+#: templates/js/translated/build.js:2583 templates/js/translated/stock.js:1779
+msgid "Order stock"
+msgstr "Pedido de stock"
+
+#: templates/js/translated/build.js:2587
+#: templates/js/translated/sales_order.js:1999
+msgid "Allocate stock"
+msgstr "Asignar stock"
+
+#: templates/js/translated/build.js:2591
+msgid "Remove stock allocation"
+msgstr ""
+
+#: templates/js/translated/company.js:97
msgid "Add Manufacturer"
msgstr "Agregar Fabricante"
-#: templates/js/translated/company.js:100
-#: templates/js/translated/company.js:202
+#: templates/js/translated/company.js:110
+#: templates/js/translated/company.js:212
msgid "Add Manufacturer Part"
msgstr "Añadir Parte del fabricante"
-#: templates/js/translated/company.js:121
+#: templates/js/translated/company.js:131
msgid "Edit Manufacturer Part"
msgstr "Editar Parte del Fabricante"
-#: templates/js/translated/company.js:190
-#: templates/js/translated/purchase_order.js:94
+#: templates/js/translated/company.js:200
+#: templates/js/translated/purchase_order.js:93
msgid "Add Supplier"
msgstr "Añadir Proveedor"
-#: templates/js/translated/company.js:232
-#: templates/js/translated/purchase_order.js:338
+#: templates/js/translated/company.js:242
+#: templates/js/translated/purchase_order.js:349
msgid "Add Supplier Part"
msgstr "Añadir Parte de Proveedor"
-#: templates/js/translated/company.js:333
+#: templates/js/translated/company.js:343
msgid "All selected supplier parts will be deleted"
msgstr "Se eliminarán todas las partes del proveedor seleccionadas"
-#: templates/js/translated/company.js:349
+#: templates/js/translated/company.js:359
msgid "Delete Supplier Parts"
msgstr "Eliminar partes de proveedor"
-#: templates/js/translated/company.js:457
+#: templates/js/translated/company.js:464
msgid "Add new Company"
msgstr "Añadir nueva Empresa"
-#: templates/js/translated/company.js:528
+#: templates/js/translated/company.js:535
msgid "Parts Supplied"
msgstr "Partes Suministradas"
-#: templates/js/translated/company.js:537
+#: templates/js/translated/company.js:544
msgid "Parts Manufactured"
msgstr "Partes Fabricadas"
-#: templates/js/translated/company.js:552
+#: templates/js/translated/company.js:559
msgid "No company information found"
msgstr "No se encontró información de la empresa"
-#: templates/js/translated/company.js:601
+#: templates/js/translated/company.js:608
msgid "Create New Contact"
msgstr "Crear nuevo contacto"
-#: templates/js/translated/company.js:617
-#: templates/js/translated/company.js:740
+#: templates/js/translated/company.js:624
+#: templates/js/translated/company.js:747
msgid "Edit Contact"
msgstr "Editar contacto"
-#: templates/js/translated/company.js:654
+#: templates/js/translated/company.js:661
msgid "All selected contacts will be deleted"
msgstr "Todos los contactos seleccionados serán eliminados"
-#: templates/js/translated/company.js:660
-#: templates/js/translated/company.js:724
+#: templates/js/translated/company.js:667
+#: templates/js/translated/company.js:731
msgid "Role"
msgstr "Cargo"
-#: templates/js/translated/company.js:668
+#: templates/js/translated/company.js:675
msgid "Delete Contacts"
msgstr "Eliminar contactos"
-#: templates/js/translated/company.js:699
+#: templates/js/translated/company.js:706
msgid "No contacts found"
msgstr "No se encontró ningún contacto"
-#: templates/js/translated/company.js:712
+#: templates/js/translated/company.js:719
msgid "Phone Number"
msgstr "Número de teléfono"
-#: templates/js/translated/company.js:718
+#: templates/js/translated/company.js:725
msgid "Email Address"
msgstr "Dirección de correo electrónico"
-#: templates/js/translated/company.js:744
+#: templates/js/translated/company.js:751
msgid "Delete Contact"
msgstr "Eliminar contacto"
-#: templates/js/translated/company.js:818
+#: templates/js/translated/company.js:886
+msgid "Create New Address"
+msgstr ""
+
+#: templates/js/translated/company.js:901
+#: templates/js/translated/company.js:1066
+msgid "Edit Address"
+msgstr ""
+
+#: templates/js/translated/company.js:936
+msgid "All selected addresses will be deleted"
+msgstr ""
+
+#: templates/js/translated/company.js:950
+msgid "Delete Addresses"
+msgstr ""
+
+#: templates/js/translated/company.js:977
+msgid "No addresses found"
+msgstr ""
+
+#: templates/js/translated/company.js:1020
+msgid "Postal city"
+msgstr ""
+
+#: templates/js/translated/company.js:1026
+msgid "State/province"
+msgstr ""
+
+#: templates/js/translated/company.js:1038
+msgid "Courier notes"
+msgstr ""
+
+#: templates/js/translated/company.js:1044
+msgid "Internal notes"
+msgstr ""
+
+#: templates/js/translated/company.js:1070
+msgid "Delete Address"
+msgstr ""
+
+#: templates/js/translated/company.js:1143
msgid "All selected manufacturer parts will be deleted"
msgstr "Se eliminarán todas las partes del fabricante seleccionadas"
-#: templates/js/translated/company.js:833
+#: templates/js/translated/company.js:1158
msgid "Delete Manufacturer Parts"
msgstr "Eliminar Partes del Fabricante"
-#: templates/js/translated/company.js:867
+#: templates/js/translated/company.js:1192
msgid "All selected parameters will be deleted"
msgstr "Todos los parámetros seleccionados serán eliminados"
-#: templates/js/translated/company.js:881
+#: templates/js/translated/company.js:1206
msgid "Delete Parameters"
msgstr "Eliminar parámetros"
-#: templates/js/translated/company.js:917
+#: templates/js/translated/company.js:1222
+#: templates/js/translated/company.js:1510 templates/js/translated/part.js:2213
+msgid "Order parts"
+msgstr "Partes de pedido"
+
+#: templates/js/translated/company.js:1239
+msgid "Delete manufacturer parts"
+msgstr "Eliminar partes del fabricante"
+
+#: templates/js/translated/company.js:1271
+msgid "Manufacturer part actions"
+msgstr ""
+
+#: templates/js/translated/company.js:1290
msgid "No manufacturer parts found"
msgstr "No se encontraron partes del fabricante"
-#: templates/js/translated/company.js:937
-#: templates/js/translated/company.js:1177 templates/js/translated/part.js:776
-#: templates/js/translated/part.js:1184
+#: templates/js/translated/company.js:1310
+#: templates/js/translated/company.js:1598 templates/js/translated/part.js:775
+#: templates/js/translated/part.js:1183
msgid "Template part"
msgstr "Plantilla de parte"
-#: templates/js/translated/company.js:941
-#: templates/js/translated/company.js:1181 templates/js/translated/part.js:780
-#: templates/js/translated/part.js:1188
+#: templates/js/translated/company.js:1314
+#: templates/js/translated/company.js:1602 templates/js/translated/part.js:779
+#: templates/js/translated/part.js:1187
msgid "Assembled part"
msgstr "Parte ensamblada"
-#: templates/js/translated/company.js:1061 templates/js/translated/part.js:1437
+#: templates/js/translated/company.js:1434 templates/js/translated/part.js:1436
msgid "No parameters found"
msgstr "No se encontraron parámetros"
-#: templates/js/translated/company.js:1096 templates/js/translated/part.js:1500
+#: templates/js/translated/company.js:1469 templates/js/translated/part.js:1499
msgid "Edit parameter"
msgstr "Editar parámetro"
-#: templates/js/translated/company.js:1097 templates/js/translated/part.js:1501
+#: templates/js/translated/company.js:1470 templates/js/translated/part.js:1500
msgid "Delete parameter"
msgstr "Eliminar parámetro"
-#: templates/js/translated/company.js:1114 templates/js/translated/part.js:1407
+#: templates/js/translated/company.js:1487 templates/js/translated/part.js:1406
msgid "Edit Parameter"
msgstr "Editar parámetro"
-#: templates/js/translated/company.js:1123 templates/js/translated/part.js:1522
+#: templates/js/translated/company.js:1496 templates/js/translated/part.js:1521
msgid "Delete Parameter"
msgstr "Eliminar parámetro"
-#: templates/js/translated/company.js:1156
+#: templates/js/translated/company.js:1527
+msgid "Delete supplier parts"
+msgstr "Eliminar partes del proveedor"
+
+#: templates/js/translated/company.js:1577
msgid "No supplier parts found"
msgstr "No se encontraron partes de proveedor"
-#: templates/js/translated/company.js:1274
+#: templates/js/translated/company.js:1695
msgid "Base Units"
msgstr "Unidades base"
-#: templates/js/translated/company.js:1304
+#: templates/js/translated/company.js:1725
msgid "Availability"
msgstr "Disponibilidad"
-#: templates/js/translated/company.js:1335
+#: templates/js/translated/company.js:1756
msgid "Edit supplier part"
msgstr "Editar proveedor"
-#: templates/js/translated/company.js:1336
+#: templates/js/translated/company.js:1757
msgid "Delete supplier part"
msgstr "Eliminar ítem del proveedor"
-#: templates/js/translated/company.js:1389
+#: templates/js/translated/company.js:1810
#: templates/js/translated/pricing.js:694
msgid "Delete Price Break"
msgstr "Eliminar precio de descuento"
-#: templates/js/translated/company.js:1399
+#: templates/js/translated/company.js:1820
#: templates/js/translated/pricing.js:712
msgid "Edit Price Break"
msgstr "Editar precio de descuento"
-#: templates/js/translated/company.js:1414
+#: templates/js/translated/company.js:1835
msgid "No price break information found"
msgstr "No se ha encontrado información de descuento de precios"
-#: templates/js/translated/company.js:1443
+#: templates/js/translated/company.js:1864
msgid "Last updated"
msgstr "Última actualización"
-#: templates/js/translated/company.js:1450
+#: templates/js/translated/company.js:1871
msgid "Edit price break"
msgstr "Editar precio de descuento"
-#: templates/js/translated/company.js:1451
+#: templates/js/translated/company.js:1872
msgid "Delete price break"
msgstr "Eliminar precio de descuento"
-#: templates/js/translated/filters.js:186
-#: templates/js/translated/filters.js:550
+#: templates/js/translated/filters.js:187
+#: templates/js/translated/filters.js:673
msgid "true"
msgstr "verdadero"
-#: templates/js/translated/filters.js:190
-#: templates/js/translated/filters.js:551
+#: templates/js/translated/filters.js:191
+#: templates/js/translated/filters.js:674
msgid "false"
msgstr "falso"
-#: templates/js/translated/filters.js:214
+#: templates/js/translated/filters.js:215
msgid "Select filter"
msgstr "Seleccionar filtro"
-#: templates/js/translated/filters.js:328
+#: templates/js/translated/filters.js:438
msgid "Print Labels"
msgstr "Imprimir etiquetas"
-#: templates/js/translated/filters.js:332
+#: templates/js/translated/filters.js:442
msgid "Print Reports"
msgstr "Imprimir informes"
-#: templates/js/translated/filters.js:344
+#: templates/js/translated/filters.js:454
msgid "Download table data"
msgstr "Descargar tabla de datos"
-#: templates/js/translated/filters.js:351
+#: templates/js/translated/filters.js:461
msgid "Reload table data"
msgstr "Recargar tabla de datos"
-#: templates/js/translated/filters.js:360
+#: templates/js/translated/filters.js:470
msgid "Add new filter"
msgstr "Añadir un nuevo filtro"
-#: templates/js/translated/filters.js:368
+#: templates/js/translated/filters.js:478
msgid "Clear all filters"
msgstr "Limpiar todos los filtros"
-#: templates/js/translated/filters.js:460
+#: templates/js/translated/filters.js:583
msgid "Create filter"
msgstr "Crear filtro"
@@ -10497,6 +10620,12 @@ msgstr "Operación de eliminación no permitida"
msgid "View operation not allowed"
msgstr "Operación de visualización no permitida"
+#: templates/js/translated/forms.js:506 templates/js/translated/helpers.js:105
+#: templates/js/translated/part.js:369 templates/js/translated/pricing.js:629
+#: templates/js/translated/stock.js:215 users/models.py:253
+msgid "Delete"
+msgstr "Eliminar"
+
#: templates/js/translated/forms.js:752
msgid "Keep this form open"
msgstr "Mantener este formulario abierto"
@@ -10514,23 +10643,23 @@ msgstr "Existen errores en el formulario"
msgid "No results found"
msgstr "No hay resultados"
-#: templates/js/translated/forms.js:2071 templates/js/translated/search.js:281
+#: templates/js/translated/forms.js:2071 templates/js/translated/search.js:239
msgid "Searching"
msgstr "Buscando"
-#: templates/js/translated/forms.js:2276
+#: templates/js/translated/forms.js:2285
msgid "Clear input"
msgstr "Limpiar entrada"
-#: templates/js/translated/forms.js:2733
+#: templates/js/translated/forms.js:2742
msgid "File Column"
msgstr "Columna de archivo"
-#: templates/js/translated/forms.js:2733
+#: templates/js/translated/forms.js:2742
msgid "Field Name"
msgstr "Nombre del campo"
-#: templates/js/translated/forms.js:2745
+#: templates/js/translated/forms.js:2754
msgid "Select Columns"
msgstr "Seleccionar columnas"
@@ -10550,6 +10679,14 @@ msgstr ""
msgid "False"
msgstr ""
+#: templates/js/translated/index.js:99
+msgid "No parts required for builds"
+msgstr ""
+
+#: templates/js/translated/index.js:125
+msgid "Allocated Stock"
+msgstr ""
+
#: templates/js/translated/label.js:58
msgid "Select Printer"
msgstr "Seleccionar impresora"
@@ -10651,7 +10788,7 @@ msgstr ""
#: templates/js/translated/news.js:38
#: templates/js/translated/notification.js:45
-#: templates/js/translated/part.js:1577
+#: templates/js/translated/part.js:1576
msgid "ID"
msgstr "Identificación"
@@ -10700,7 +10837,7 @@ msgid "Delete Line"
msgstr "Eliminar línea"
#: templates/js/translated/order.js:281
-#: templates/js/translated/purchase_order.js:1958
+#: templates/js/translated/purchase_order.js:1968
msgid "No line items found"
msgstr "No hay artículos de línea"
@@ -10716,363 +10853,355 @@ msgstr "Editar línea"
msgid "Delete line"
msgstr "Eliminar línea"
-#: templates/js/translated/part.js:91
+#: templates/js/translated/part.js:90
msgid "Part Attributes"
msgstr "Atributos de Parte"
-#: templates/js/translated/part.js:95
+#: templates/js/translated/part.js:94
msgid "Part Creation Options"
msgstr "Opciones de Creación de Parte"
-#: templates/js/translated/part.js:99
+#: templates/js/translated/part.js:98
msgid "Part Duplication Options"
msgstr "Opciones de Duplicación de Parte"
-#: templates/js/translated/part.js:122
+#: templates/js/translated/part.js:121
msgid "Add Part Category"
msgstr "Añadir Categoría de Parte"
-#: templates/js/translated/part.js:294
+#: templates/js/translated/part.js:293
msgid "Parent part category"
msgstr "Categoría superior de parte"
-#: templates/js/translated/part.js:310 templates/js/translated/stock.js:147
+#: templates/js/translated/part.js:309 templates/js/translated/stock.js:146
msgid "Icon (optional) - Explore all available icons on"
msgstr ""
-#: templates/js/translated/part.js:330
+#: templates/js/translated/part.js:329
msgid "Create Part Category"
msgstr "Crear Categoría de Parte"
-#: templates/js/translated/part.js:333
+#: templates/js/translated/part.js:332
msgid "Create new category after this one"
msgstr ""
-#: templates/js/translated/part.js:334
+#: templates/js/translated/part.js:333
msgid "Part category created"
msgstr "Categoría de partes creada"
-#: templates/js/translated/part.js:348
+#: templates/js/translated/part.js:347
msgid "Edit Part Category"
msgstr "Editar Categoría de Parte"
-#: templates/js/translated/part.js:361
+#: templates/js/translated/part.js:360
msgid "Are you sure you want to delete this part category?"
msgstr ""
-#: templates/js/translated/part.js:366
+#: templates/js/translated/part.js:365
msgid "Move to parent category"
msgstr "Mover a la categoría padre"
-#: templates/js/translated/part.js:375
+#: templates/js/translated/part.js:374
msgid "Delete Part Category"
msgstr "Eliminar Categoría de Parte"
-#: templates/js/translated/part.js:379
+#: templates/js/translated/part.js:378
msgid "Action for parts in this category"
msgstr ""
-#: templates/js/translated/part.js:384
+#: templates/js/translated/part.js:383
msgid "Action for child categories"
msgstr ""
-#: templates/js/translated/part.js:408
+#: templates/js/translated/part.js:407
msgid "Create Part"
msgstr "Crear Parte"
-#: templates/js/translated/part.js:410
+#: templates/js/translated/part.js:409
msgid "Create another part after this one"
msgstr ""
-#: templates/js/translated/part.js:411
+#: templates/js/translated/part.js:410
msgid "Part created successfully"
msgstr "Parte creada con éxito"
-#: templates/js/translated/part.js:439
+#: templates/js/translated/part.js:438
msgid "Edit Part"
msgstr "Editar Parte"
-#: templates/js/translated/part.js:441
+#: templates/js/translated/part.js:440
msgid "Part edited"
msgstr "Parte editada"
-#: templates/js/translated/part.js:452
+#: templates/js/translated/part.js:451
msgid "Create Part Variant"
msgstr "Crear Variante de Parte"
-#: templates/js/translated/part.js:509
+#: templates/js/translated/part.js:508
msgid "Active Part"
msgstr "Parte activa"
-#: templates/js/translated/part.js:510
+#: templates/js/translated/part.js:509
msgid "Part cannot be deleted as it is currently active"
msgstr ""
-#: templates/js/translated/part.js:524
+#: templates/js/translated/part.js:523
msgid "Deleting this part cannot be reversed"
msgstr ""
-#: templates/js/translated/part.js:526
+#: templates/js/translated/part.js:525
msgid "Any stock items for this part will be deleted"
msgstr ""
-#: templates/js/translated/part.js:527
+#: templates/js/translated/part.js:526
msgid "This part will be removed from any Bills of Material"
msgstr ""
-#: templates/js/translated/part.js:528
+#: templates/js/translated/part.js:527
msgid "All manufacturer and supplier information for this part will be deleted"
msgstr ""
-#: templates/js/translated/part.js:535
+#: templates/js/translated/part.js:534
msgid "Delete Part"
msgstr "Eliminar parte"
-#: templates/js/translated/part.js:571
+#: templates/js/translated/part.js:570
msgid "You are subscribed to notifications for this item"
msgstr "Estás suscrito a las notificaciones de este artículo"
-#: templates/js/translated/part.js:573
+#: templates/js/translated/part.js:572
msgid "You have subscribed to notifications for this item"
msgstr "Te has suscrito a las notificaciones de este artículo"
-#: templates/js/translated/part.js:578
+#: templates/js/translated/part.js:577
msgid "Subscribe to notifications for this item"
msgstr "Suscríbete a las notificaciones de este artículo"
-#: templates/js/translated/part.js:580
+#: templates/js/translated/part.js:579
msgid "You have unsubscribed to notifications for this item"
msgstr "Has cancelado la suscripción a las notificaciones de este artículo"
-#: templates/js/translated/part.js:597
+#: templates/js/translated/part.js:596
msgid "Validating the BOM will mark each line item as valid"
msgstr "Validar el BOM marcará cada artículo de línea como válido"
-#: templates/js/translated/part.js:607
+#: templates/js/translated/part.js:606
msgid "Validate Bill of Materials"
msgstr "Validar la Factura de Materiales"
-#: templates/js/translated/part.js:610
+#: templates/js/translated/part.js:609
msgid "Validated Bill of Materials"
msgstr "Validación de Lista de Materiales"
-#: templates/js/translated/part.js:635
+#: templates/js/translated/part.js:634
msgid "Copy Bill of Materials"
msgstr "Copiar Factura de Materiales"
-#: templates/js/translated/part.js:663
-#: templates/js/translated/table_filters.js:660
+#: templates/js/translated/part.js:662
+#: templates/js/translated/table_filters.js:682
msgid "Low stock"
msgstr "Stock bajo"
-#: templates/js/translated/part.js:666
+#: templates/js/translated/part.js:665
msgid "No stock available"
msgstr "Existencias no disponibles"
-#: templates/js/translated/part.js:726
+#: templates/js/translated/part.js:725
msgid "Demand"
msgstr "Demanda"
-#: templates/js/translated/part.js:749
+#: templates/js/translated/part.js:748
msgid "Unit"
msgstr "Unidad"
-#: templates/js/translated/part.js:768 templates/js/translated/part.js:1176
-msgid "Trackable part"
-msgstr "Parte Rastreable"
-
-#: templates/js/translated/part.js:772 templates/js/translated/part.js:1180
+#: templates/js/translated/part.js:771 templates/js/translated/part.js:1179
msgid "Virtual part"
msgstr "Parte virtual"
-#: templates/js/translated/part.js:784
+#: templates/js/translated/part.js:783
msgid "Subscribed part"
msgstr "Parte suscrita"
-#: templates/js/translated/part.js:788
+#: templates/js/translated/part.js:787
msgid "Salable part"
msgstr "Parte vendible"
-#: templates/js/translated/part.js:863
+#: templates/js/translated/part.js:862
msgid "Schedule generation of a new stocktake report."
msgstr ""
-#: templates/js/translated/part.js:863
+#: templates/js/translated/part.js:862
msgid "Once complete, the stocktake report will be available for download."
msgstr ""
-#: templates/js/translated/part.js:871
+#: templates/js/translated/part.js:870
msgid "Generate Stocktake Report"
msgstr ""
-#: templates/js/translated/part.js:875
+#: templates/js/translated/part.js:874
msgid "Stocktake report scheduled"
msgstr ""
-#: templates/js/translated/part.js:1024
+#: templates/js/translated/part.js:1023
msgid "No stocktake information available"
msgstr ""
-#: templates/js/translated/part.js:1082 templates/js/translated/part.js:1118
+#: templates/js/translated/part.js:1081 templates/js/translated/part.js:1117
msgid "Edit Stocktake Entry"
msgstr ""
-#: templates/js/translated/part.js:1086 templates/js/translated/part.js:1128
+#: templates/js/translated/part.js:1085 templates/js/translated/part.js:1127
msgid "Delete Stocktake Entry"
msgstr ""
-#: templates/js/translated/part.js:1255
+#: templates/js/translated/part.js:1254
msgid "No variants found"
msgstr "No se encontraron variantes"
-#: templates/js/translated/part.js:1572
+#: templates/js/translated/part.js:1571
msgid "No part parameter templates found"
msgstr "No se encontraron plantillas de parámetros de parte"
-#: templates/js/translated/part.js:1635
+#: templates/js/translated/part.js:1634
msgid "Edit Part Parameter Template"
msgstr "Crear plantilla Parámetro de Parte"
-#: templates/js/translated/part.js:1647
+#: templates/js/translated/part.js:1646
msgid "Any parameters which reference this template will also be deleted"
msgstr ""
-#: templates/js/translated/part.js:1655
+#: templates/js/translated/part.js:1654
msgid "Delete Part Parameter Template"
msgstr "Eliminar Plantilla de Parámetros de Parte"
-#: templates/js/translated/part.js:1689
-#: templates/js/translated/purchase_order.js:1618
+#: templates/js/translated/part.js:1688
+#: templates/js/translated/purchase_order.js:1633
msgid "No purchase orders found"
msgstr "No se encontraron órdenes de compra"
-#: templates/js/translated/part.js:1832
-#: templates/js/translated/purchase_order.js:2121
-#: templates/js/translated/return_order.js:740
-#: templates/js/translated/sales_order.js:1855
+#: templates/js/translated/part.js:1831
+#: templates/js/translated/purchase_order.js:2131
+#: templates/js/translated/return_order.js:752
+#: templates/js/translated/sales_order.js:1867
msgid "This line item is overdue"
msgstr ""
-#: templates/js/translated/part.js:1877
-#: templates/js/translated/purchase_order.js:2188
+#: templates/js/translated/part.js:1876
+#: templates/js/translated/purchase_order.js:2198
msgid "Receive line item"
msgstr "Recibir ítem de línea"
-#: templates/js/translated/part.js:1944
+#: templates/js/translated/part.js:1943
msgid "Delete part relationship"
msgstr "Eliminar relación de parte"
-#: templates/js/translated/part.js:1966
+#: templates/js/translated/part.js:1965
msgid "Delete Part Relationship"
msgstr "Eliminar Relación de Parte"
-#: templates/js/translated/part.js:2054 templates/js/translated/part.js:2366
+#: templates/js/translated/part.js:2053 templates/js/translated/part.js:2442
msgid "No parts found"
msgstr "No se encontraron partes"
-#: templates/js/translated/part.js:2192
-msgid "parts"
-msgstr "partes"
-
-#: templates/js/translated/part.js:2276
-msgid "No category"
-msgstr "Sin categoría"
-
-#: templates/js/translated/part.js:2390 templates/js/translated/part.js:2611
-#: templates/js/translated/stock.js:2417
-msgid "Display as list"
-msgstr "Mostrar como lista"
-
-#: templates/js/translated/part.js:2406
-msgid "Display as grid"
-msgstr "Mostrar como cuadrícula"
-
-#: templates/js/translated/part.js:2472
+#: templates/js/translated/part.js:2174
msgid "Set the part category for the selected parts"
msgstr ""
-#: templates/js/translated/part.js:2477
+#: templates/js/translated/part.js:2179
msgid "Set Part Category"
msgstr "Definir Categoría de Parte"
+#: templates/js/translated/part.js:2204
+msgid "Set category"
+msgstr "Definir categoría"
+
+#: templates/js/translated/part.js:2259
+msgid "parts"
+msgstr "partes"
+
+#: templates/js/translated/part.js:2352
+msgid "No category"
+msgstr "Sin categoría"
+
+#: templates/js/translated/part.js:2466 templates/js/translated/part.js:2596
+#: templates/js/translated/stock.js:2548
+msgid "Display as list"
+msgstr "Mostrar como lista"
+
#: templates/js/translated/part.js:2482
-msgid "Select Part Category"
-msgstr ""
+msgid "Display as grid"
+msgstr "Mostrar como cuadrícula"
-#: templates/js/translated/part.js:2495
-msgid "Category is required"
-msgstr ""
-
-#: templates/js/translated/part.js:2595
+#: templates/js/translated/part.js:2580
msgid "No subcategories found"
msgstr ""
-#: templates/js/translated/part.js:2631 templates/js/translated/stock.js:2437
+#: templates/js/translated/part.js:2616 templates/js/translated/stock.js:2568
msgid "Display as tree"
msgstr "Mostrar como árbol"
-#: templates/js/translated/part.js:2711
+#: templates/js/translated/part.js:2696
msgid "Load Subcategories"
msgstr "Cargar subcategorías"
-#: templates/js/translated/part.js:2727
+#: templates/js/translated/part.js:2712
msgid "Subscribed category"
msgstr "Categoría suscrita"
-#: templates/js/translated/part.js:2807
+#: templates/js/translated/part.js:2792
msgid "No test templates matching query"
msgstr "No hay plantillas de prueba que coincidan con la consulta"
-#: templates/js/translated/part.js:2858 templates/js/translated/stock.js:1380
+#: templates/js/translated/part.js:2843 templates/js/translated/stock.js:1379
msgid "Edit test result"
msgstr "Editar resultado de prueba"
-#: templates/js/translated/part.js:2859 templates/js/translated/stock.js:1381
-#: templates/js/translated/stock.js:1643
+#: templates/js/translated/part.js:2844 templates/js/translated/stock.js:1380
+#: templates/js/translated/stock.js:1642
msgid "Delete test result"
msgstr "Eliminar resultado de prueba"
-#: templates/js/translated/part.js:2863
+#: templates/js/translated/part.js:2848
msgid "This test is defined for a parent part"
msgstr "Esta prueba está definida para una parte principal"
-#: templates/js/translated/part.js:2879
+#: templates/js/translated/part.js:2864
msgid "Edit Test Result Template"
msgstr "Editar plantilla de resultado de prueba"
-#: templates/js/translated/part.js:2893
+#: templates/js/translated/part.js:2878
msgid "Delete Test Result Template"
msgstr "Eliminar plantilla de resultados de prueba"
-#: templates/js/translated/part.js:2972 templates/js/translated/part.js:2973
+#: templates/js/translated/part.js:2957 templates/js/translated/part.js:2958
msgid "No date specified"
msgstr "Sin fecha especificada"
-#: templates/js/translated/part.js:2975
+#: templates/js/translated/part.js:2960
msgid "Specified date is in the past"
msgstr ""
-#: templates/js/translated/part.js:2981
+#: templates/js/translated/part.js:2966
msgid "Speculative"
msgstr "Especulativo"
-#: templates/js/translated/part.js:3031
+#: templates/js/translated/part.js:3016
msgid "No scheduling information available for this part"
msgstr ""
-#: templates/js/translated/part.js:3037
+#: templates/js/translated/part.js:3022
msgid "Error fetching scheduling information for this part"
msgstr ""
-#: templates/js/translated/part.js:3133
+#: templates/js/translated/part.js:3118
msgid "Scheduled Stock Quantities"
msgstr ""
-#: templates/js/translated/part.js:3149
+#: templates/js/translated/part.js:3134
msgid "Maximum Quantity"
msgstr "Cantidad máxima"
-#: templates/js/translated/part.js:3194
+#: templates/js/translated/part.js:3179
msgid "Minimum Stock Level"
msgstr ""
@@ -11168,234 +11297,234 @@ msgstr "No hay datos de variantes disponibles"
msgid "Variant Part"
msgstr "Parte variante"
-#: templates/js/translated/purchase_order.js:155
+#: templates/js/translated/purchase_order.js:166
msgid "Select purchase order to duplicate"
msgstr ""
-#: templates/js/translated/purchase_order.js:162
+#: templates/js/translated/purchase_order.js:173
msgid "Duplicate Line Items"
msgstr "Duplicar artículos de línea"
-#: templates/js/translated/purchase_order.js:163
+#: templates/js/translated/purchase_order.js:174
msgid "Duplicate all line items from the selected order"
msgstr ""
-#: templates/js/translated/purchase_order.js:170
+#: templates/js/translated/purchase_order.js:181
msgid "Duplicate Extra Lines"
msgstr "Duplicar líneas adicionales"
-#: templates/js/translated/purchase_order.js:171
+#: templates/js/translated/purchase_order.js:182
msgid "Duplicate extra line items from the selected order"
msgstr ""
-#: templates/js/translated/purchase_order.js:192
+#: templates/js/translated/purchase_order.js:203
msgid "Edit Purchase Order"
msgstr "Modificar orden de compra"
-#: templates/js/translated/purchase_order.js:209
+#: templates/js/translated/purchase_order.js:220
msgid "Duplication Options"
msgstr ""
-#: templates/js/translated/purchase_order.js:436
+#: templates/js/translated/purchase_order.js:447
msgid "Complete Purchase Order"
msgstr "Completar orden de compra"
-#: templates/js/translated/purchase_order.js:453
-#: templates/js/translated/return_order.js:195
-#: templates/js/translated/sales_order.js:485
+#: templates/js/translated/purchase_order.js:464
+#: templates/js/translated/return_order.js:207
+#: templates/js/translated/sales_order.js:497
msgid "Mark this order as complete?"
msgstr "Marcar pedido como completado?"
-#: templates/js/translated/purchase_order.js:459
+#: templates/js/translated/purchase_order.js:470
msgid "All line items have been received"
msgstr ""
-#: templates/js/translated/purchase_order.js:464
+#: templates/js/translated/purchase_order.js:475
msgid "This order has line items which have not been marked as received."
msgstr "Este pedido tiene artículos de línea que no han sido marcados como recibidos."
-#: templates/js/translated/purchase_order.js:465
-#: templates/js/translated/sales_order.js:499
+#: templates/js/translated/purchase_order.js:476
+#: templates/js/translated/sales_order.js:511
msgid "Completing this order means that the order and line items will no longer be editable."
msgstr "Completar este pedido significa que los artículos de orden y línea ya no serán editables."
-#: templates/js/translated/purchase_order.js:488
+#: templates/js/translated/purchase_order.js:499
msgid "Cancel Purchase Order"
msgstr "Cancelar orden de compra"
-#: templates/js/translated/purchase_order.js:493
+#: templates/js/translated/purchase_order.js:504
msgid "Are you sure you wish to cancel this purchase order?"
msgstr ""
-#: templates/js/translated/purchase_order.js:499
+#: templates/js/translated/purchase_order.js:510
msgid "This purchase order can not be cancelled"
msgstr ""
-#: templates/js/translated/purchase_order.js:520
-#: templates/js/translated/return_order.js:149
+#: templates/js/translated/purchase_order.js:531
+#: templates/js/translated/return_order.js:161
msgid "After placing this order, line items will no longer be editable."
msgstr ""
-#: templates/js/translated/purchase_order.js:525
+#: templates/js/translated/purchase_order.js:536
msgid "Issue Purchase Order"
msgstr ""
-#: templates/js/translated/purchase_order.js:617
+#: templates/js/translated/purchase_order.js:628
msgid "At least one purchaseable part must be selected"
msgstr ""
-#: templates/js/translated/purchase_order.js:642
+#: templates/js/translated/purchase_order.js:653
msgid "Quantity to order"
msgstr "Cantidad a ordenar"
-#: templates/js/translated/purchase_order.js:651
+#: templates/js/translated/purchase_order.js:662
msgid "New supplier part"
msgstr "Nueva parte del proveedor"
-#: templates/js/translated/purchase_order.js:669
+#: templates/js/translated/purchase_order.js:680
msgid "New purchase order"
msgstr "Nueva orden de compra"
-#: templates/js/translated/purchase_order.js:701
+#: templates/js/translated/purchase_order.js:712
msgid "Add to purchase order"
msgstr "Añadir a la orden de compra"
-#: templates/js/translated/purchase_order.js:845
+#: templates/js/translated/purchase_order.js:860
msgid "No matching supplier parts"
msgstr "No hay partes de proveedor coincidentes"
-#: templates/js/translated/purchase_order.js:864
+#: templates/js/translated/purchase_order.js:879
msgid "No matching purchase orders"
msgstr "No hay órdenes de compra coincidentes"
-#: templates/js/translated/purchase_order.js:1043
+#: templates/js/translated/purchase_order.js:1058
msgid "Select Line Items"
msgstr "Seleccionar Artículos de Línea"
-#: templates/js/translated/purchase_order.js:1044
-#: templates/js/translated/return_order.js:480
+#: templates/js/translated/purchase_order.js:1059
+#: templates/js/translated/return_order.js:492
msgid "At least one line item must be selected"
msgstr "Debe seleccionar al menos un artículo de línea"
-#: templates/js/translated/purchase_order.js:1074
+#: templates/js/translated/purchase_order.js:1089
msgid "Received Quantity"
msgstr "Cantidad recibida"
-#: templates/js/translated/purchase_order.js:1085
+#: templates/js/translated/purchase_order.js:1100
msgid "Quantity to receive"
msgstr "Cantidad a recibir"
-#: templates/js/translated/purchase_order.js:1161
+#: templates/js/translated/purchase_order.js:1176
msgid "Stock Status"
msgstr "Estado del Stock"
-#: templates/js/translated/purchase_order.js:1175
+#: templates/js/translated/purchase_order.js:1190
msgid "Add barcode"
msgstr "Agregar código de barras"
-#: templates/js/translated/purchase_order.js:1176
+#: templates/js/translated/purchase_order.js:1191
msgid "Remove barcode"
msgstr "Eliminar código de barras"
-#: templates/js/translated/purchase_order.js:1179
+#: templates/js/translated/purchase_order.js:1194
msgid "Specify location"
msgstr "Especificar ubicación"
-#: templates/js/translated/purchase_order.js:1187
+#: templates/js/translated/purchase_order.js:1202
msgid "Add batch code"
msgstr "Añadir código de lote"
-#: templates/js/translated/purchase_order.js:1198
+#: templates/js/translated/purchase_order.js:1213
msgid "Add serial numbers"
msgstr "Añadir números de serie"
-#: templates/js/translated/purchase_order.js:1250
+#: templates/js/translated/purchase_order.js:1265
msgid "Serials"
msgstr ""
-#: templates/js/translated/purchase_order.js:1275
+#: templates/js/translated/purchase_order.js:1290
msgid "Order Code"
msgstr "Código de Pedido"
-#: templates/js/translated/purchase_order.js:1277
+#: templates/js/translated/purchase_order.js:1292
msgid "Quantity to Receive"
msgstr "Cantidad a recibir"
-#: templates/js/translated/purchase_order.js:1299
-#: templates/js/translated/return_order.js:545
+#: templates/js/translated/purchase_order.js:1314
+#: templates/js/translated/return_order.js:557
msgid "Confirm receipt of items"
msgstr "Confirmar recepción de artículos"
-#: templates/js/translated/purchase_order.js:1300
+#: templates/js/translated/purchase_order.js:1315
msgid "Receive Purchase Order Items"
msgstr "Recibir artículos de orden de compra"
-#: templates/js/translated/purchase_order.js:1368
+#: templates/js/translated/purchase_order.js:1383
msgid "Scan Item Barcode"
msgstr ""
-#: templates/js/translated/purchase_order.js:1369
+#: templates/js/translated/purchase_order.js:1384
msgid "Scan barcode on incoming item (must not match any existing stock items)"
msgstr ""
-#: templates/js/translated/purchase_order.js:1383
+#: templates/js/translated/purchase_order.js:1398
msgid "Invalid barcode data"
msgstr ""
-#: templates/js/translated/purchase_order.js:1645
-#: templates/js/translated/return_order.js:274
-#: templates/js/translated/sales_order.js:762
-#: templates/js/translated/sales_order.js:986
+#: templates/js/translated/purchase_order.js:1660
+#: templates/js/translated/return_order.js:286
+#: templates/js/translated/sales_order.js:774
+#: templates/js/translated/sales_order.js:998
msgid "Order is overdue"
msgstr "El pedido está vencido"
-#: templates/js/translated/purchase_order.js:1707
-#: templates/js/translated/return_order.js:342
-#: templates/js/translated/sales_order.js:839
-#: templates/js/translated/sales_order.js:999
+#: templates/js/translated/purchase_order.js:1722
+#: templates/js/translated/return_order.js:354
+#: templates/js/translated/sales_order.js:851
+#: templates/js/translated/sales_order.js:1011
msgid "Items"
msgstr "Artículos"
-#: templates/js/translated/purchase_order.js:1806
+#: templates/js/translated/purchase_order.js:1821
msgid "All selected Line items will be deleted"
msgstr ""
-#: templates/js/translated/purchase_order.js:1824
+#: templates/js/translated/purchase_order.js:1839
msgid "Delete selected Line items?"
msgstr ""
-#: templates/js/translated/purchase_order.js:1884
-#: templates/js/translated/sales_order.js:2047
+#: templates/js/translated/purchase_order.js:1894
+#: templates/js/translated/sales_order.js:2059
msgid "Duplicate Line Item"
msgstr "Duplicar artículo de línea"
-#: templates/js/translated/purchase_order.js:1899
-#: templates/js/translated/return_order.js:464
-#: templates/js/translated/return_order.js:653
-#: templates/js/translated/sales_order.js:2060
+#: templates/js/translated/purchase_order.js:1909
+#: templates/js/translated/return_order.js:476
+#: templates/js/translated/return_order.js:665
+#: templates/js/translated/sales_order.js:2072
msgid "Edit Line Item"
msgstr "Editar Ítem de Línea"
-#: templates/js/translated/purchase_order.js:1910
-#: templates/js/translated/return_order.js:666
-#: templates/js/translated/sales_order.js:2071
+#: templates/js/translated/purchase_order.js:1920
+#: templates/js/translated/return_order.js:678
+#: templates/js/translated/sales_order.js:2083
msgid "Delete Line Item"
msgstr "Eliminar Ítemde Línea"
-#: templates/js/translated/purchase_order.js:2192
-#: templates/js/translated/sales_order.js:2001
+#: templates/js/translated/purchase_order.js:2202
+#: templates/js/translated/sales_order.js:2013
msgid "Duplicate line item"
msgstr "Duplicar artículo de línea"
-#: templates/js/translated/purchase_order.js:2193
-#: templates/js/translated/return_order.js:785
-#: templates/js/translated/sales_order.js:2002
+#: templates/js/translated/purchase_order.js:2203
+#: templates/js/translated/return_order.js:797
+#: templates/js/translated/sales_order.js:2014
msgid "Edit line item"
msgstr "Editar artículo de línea"
-#: templates/js/translated/purchase_order.js:2194
-#: templates/js/translated/return_order.js:789
-#: templates/js/translated/sales_order.js:2008
+#: templates/js/translated/purchase_order.js:2204
+#: templates/js/translated/return_order.js:801
+#: templates/js/translated/sales_order.js:2020
msgid "Delete line item"
msgstr "Eliminar artículo de línea"
@@ -11424,941 +11553,973 @@ msgstr ""
msgid "Add Customer"
msgstr "Añadir Cliente"
-#: templates/js/translated/return_order.js:119
+#: templates/js/translated/return_order.js:131
msgid "Create Return Order"
msgstr ""
-#: templates/js/translated/return_order.js:134
+#: templates/js/translated/return_order.js:146
msgid "Edit Return Order"
msgstr ""
-#: templates/js/translated/return_order.js:154
+#: templates/js/translated/return_order.js:166
msgid "Issue Return Order"
msgstr ""
-#: templates/js/translated/return_order.js:171
+#: templates/js/translated/return_order.js:183
msgid "Are you sure you wish to cancel this Return Order?"
msgstr ""
-#: templates/js/translated/return_order.js:178
+#: templates/js/translated/return_order.js:190
msgid "Cancel Return Order"
msgstr ""
-#: templates/js/translated/return_order.js:203
+#: templates/js/translated/return_order.js:215
msgid "Complete Return Order"
msgstr ""
-#: templates/js/translated/return_order.js:251
+#: templates/js/translated/return_order.js:263
msgid "No return orders found"
msgstr ""
-#: templates/js/translated/return_order.js:288
-#: templates/js/translated/sales_order.js:776
+#: templates/js/translated/return_order.js:300
+#: templates/js/translated/sales_order.js:788
msgid "Invalid Customer"
msgstr "Cliente Inválido"
-#: templates/js/translated/return_order.js:546
+#: templates/js/translated/return_order.js:558
msgid "Receive Return Order Items"
msgstr "Recibir artículos de pedido de devolución"
-#: templates/js/translated/return_order.js:677
-#: templates/js/translated/sales_order.js:2207
+#: templates/js/translated/return_order.js:689
+#: templates/js/translated/sales_order.js:2219
msgid "No matching line items"
msgstr "No hay artículos de línea coincidentes"
-#: templates/js/translated/return_order.js:782
+#: templates/js/translated/return_order.js:794
msgid "Mark item as received"
msgstr "Marcar artículo como recibido"
-#: templates/js/translated/sales_order.js:146
+#: templates/js/translated/sales_order.js:158
msgid "Create Sales Order"
msgstr "Crear Orden de Venta"
-#: templates/js/translated/sales_order.js:161
+#: templates/js/translated/sales_order.js:173
msgid "Edit Sales Order"
msgstr "Editar orden de venta"
-#: templates/js/translated/sales_order.js:276
+#: templates/js/translated/sales_order.js:288
msgid "No stock items have been allocated to this shipment"
msgstr "No se ha asignado ningún artículo de stock a este envío"
-#: templates/js/translated/sales_order.js:281
+#: templates/js/translated/sales_order.js:293
msgid "The following stock items will be shipped"
msgstr "Los siguientes artículos de stock serán enviados"
-#: templates/js/translated/sales_order.js:321
+#: templates/js/translated/sales_order.js:333
msgid "Complete Shipment"
msgstr "Completar Envío"
-#: templates/js/translated/sales_order.js:345
+#: templates/js/translated/sales_order.js:357
msgid "Confirm Shipment"
msgstr "Confirmar Envío"
-#: templates/js/translated/sales_order.js:401
+#: templates/js/translated/sales_order.js:413
msgid "No pending shipments found"
msgstr "No se encontraron envíos pendientes"
-#: templates/js/translated/sales_order.js:405
+#: templates/js/translated/sales_order.js:417
msgid "No stock items have been allocated to pending shipments"
msgstr "No se ha asignado ningún artículo de almacén a los envíos pendientes"
-#: templates/js/translated/sales_order.js:415
+#: templates/js/translated/sales_order.js:427
msgid "Complete Shipments"
msgstr "Completar Envíos"
-#: templates/js/translated/sales_order.js:437
+#: templates/js/translated/sales_order.js:449
msgid "Skip"
msgstr "Omitir"
-#: templates/js/translated/sales_order.js:498
+#: templates/js/translated/sales_order.js:510
msgid "This order has line items which have not been completed."
msgstr "Este pedido tiene artículos de línea que no han sido completados."
-#: templates/js/translated/sales_order.js:520
+#: templates/js/translated/sales_order.js:532
msgid "Issue this Sales Order?"
msgstr "¿Emitir este pedido de venta?"
-#: templates/js/translated/sales_order.js:525
+#: templates/js/translated/sales_order.js:537
msgid "Issue Sales Order"
msgstr "Emitir orden de venta"
-#: templates/js/translated/sales_order.js:544
+#: templates/js/translated/sales_order.js:556
msgid "Cancel Sales Order"
msgstr "Cancelar orden de venta"
-#: templates/js/translated/sales_order.js:549
+#: templates/js/translated/sales_order.js:561
msgid "Cancelling this order means that the order will no longer be editable."
msgstr "Cancelar esta orden significa que la orden ya no será editable."
-#: templates/js/translated/sales_order.js:603
+#: templates/js/translated/sales_order.js:615
msgid "Create New Shipment"
msgstr "Crear Nuevo Envío"
-#: templates/js/translated/sales_order.js:713
+#: templates/js/translated/sales_order.js:725
msgid "No sales orders found"
msgstr "No se encontraron ventas"
-#: templates/js/translated/sales_order.js:896
+#: templates/js/translated/sales_order.js:908
msgid "Edit shipment"
msgstr "Editar envío"
-#: templates/js/translated/sales_order.js:899
+#: templates/js/translated/sales_order.js:911
msgid "Complete shipment"
msgstr "Completar envío"
-#: templates/js/translated/sales_order.js:904
+#: templates/js/translated/sales_order.js:916
msgid "Delete shipment"
msgstr "Eliminar envío"
-#: templates/js/translated/sales_order.js:921
+#: templates/js/translated/sales_order.js:933
msgid "Edit Shipment"
msgstr "Editar envío"
-#: templates/js/translated/sales_order.js:936
+#: templates/js/translated/sales_order.js:948
msgid "Delete Shipment"
msgstr "Eliminar Envío"
-#: templates/js/translated/sales_order.js:969
+#: templates/js/translated/sales_order.js:981
msgid "No matching shipments found"
msgstr "No se encontraron envíos coincidentes"
-#: templates/js/translated/sales_order.js:994
+#: templates/js/translated/sales_order.js:1006
msgid "Shipment Reference"
msgstr "Referencia de Envío"
-#: templates/js/translated/sales_order.js:1018
-#: templates/js/translated/sales_order.js:1515
+#: templates/js/translated/sales_order.js:1030
+#: templates/js/translated/sales_order.js:1527
msgid "Not shipped"
msgstr "No enviado"
-#: templates/js/translated/sales_order.js:1036
+#: templates/js/translated/sales_order.js:1048
msgid "Tracking"
msgstr "Seguimiento"
-#: templates/js/translated/sales_order.js:1040
+#: templates/js/translated/sales_order.js:1052
msgid "Invoice"
msgstr "Factura"
-#: templates/js/translated/sales_order.js:1207
+#: templates/js/translated/sales_order.js:1219
msgid "Add Shipment"
msgstr "Añadir envío"
-#: templates/js/translated/sales_order.js:1258
+#: templates/js/translated/sales_order.js:1270
msgid "Confirm stock allocation"
msgstr "Confirmar asignación de stock"
-#: templates/js/translated/sales_order.js:1259
+#: templates/js/translated/sales_order.js:1271
msgid "Allocate Stock Items to Sales Order"
msgstr "Asignar artículos de stock a pedido de venta"
-#: templates/js/translated/sales_order.js:1463
+#: templates/js/translated/sales_order.js:1475
msgid "No sales order allocations found"
msgstr "No se encontraron asignaciones de órdenes"
-#: templates/js/translated/sales_order.js:1555
+#: templates/js/translated/sales_order.js:1567
msgid "Edit Stock Allocation"
msgstr "Editar Asignación de Stock"
-#: templates/js/translated/sales_order.js:1569
+#: templates/js/translated/sales_order.js:1581
msgid "Confirm Delete Operation"
msgstr "Confirmar Operación de Eliminar"
-#: templates/js/translated/sales_order.js:1570
+#: templates/js/translated/sales_order.js:1582
msgid "Delete Stock Allocation"
msgstr "Eliminar Adjudicación de Stock"
-#: templates/js/translated/sales_order.js:1609
-#: templates/js/translated/sales_order.js:1696
-#: templates/js/translated/stock.js:1688
+#: templates/js/translated/sales_order.js:1621
+#: templates/js/translated/sales_order.js:1708
+#: templates/js/translated/stock.js:1687
msgid "Shipped to customer"
msgstr "Enviado al cliente"
-#: templates/js/translated/sales_order.js:1617
-#: templates/js/translated/sales_order.js:1705
+#: templates/js/translated/sales_order.js:1629
+#: templates/js/translated/sales_order.js:1717
msgid "Stock location not specified"
msgstr "Ubicación de stock no especificada"
-#: templates/js/translated/sales_order.js:1985
+#: templates/js/translated/sales_order.js:1997
msgid "Allocate serial numbers"
msgstr "Asignar números de serie"
-#: templates/js/translated/sales_order.js:1989
+#: templates/js/translated/sales_order.js:2001
msgid "Purchase stock"
msgstr "Comprar stock"
-#: templates/js/translated/sales_order.js:1998
-#: templates/js/translated/sales_order.js:2185
+#: templates/js/translated/sales_order.js:2010
+#: templates/js/translated/sales_order.js:2197
msgid "Calculate price"
msgstr "Calcular precio"
-#: templates/js/translated/sales_order.js:2012
+#: templates/js/translated/sales_order.js:2024
msgid "Cannot be deleted as items have been shipped"
msgstr "No se puede eliminar ya que los artículos han sido enviados"
-#: templates/js/translated/sales_order.js:2015
+#: templates/js/translated/sales_order.js:2027
msgid "Cannot be deleted as items have been allocated"
msgstr "No se puede eliminar ya que los artículos han sido asignados"
-#: templates/js/translated/sales_order.js:2086
+#: templates/js/translated/sales_order.js:2098
msgid "Allocate Serial Numbers"
msgstr "Asignar Números de Serie"
-#: templates/js/translated/sales_order.js:2193
+#: templates/js/translated/sales_order.js:2205
msgid "Update Unit Price"
msgstr "Actualizar precio unitario"
-#: templates/js/translated/search.js:312
+#: templates/js/translated/search.js:270
msgid "No results"
msgstr "Sin resultados"
-#: templates/js/translated/search.js:334 templates/search.html:25
+#: templates/js/translated/search.js:292 templates/search.html:25
msgid "Enter search query"
msgstr "Ingresar consulta de búsqueda"
-#: templates/js/translated/search.js:384
+#: templates/js/translated/search.js:342
msgid "result"
msgstr "resultado"
-#: templates/js/translated/search.js:384
+#: templates/js/translated/search.js:342
msgid "results"
msgstr "resultados"
-#: templates/js/translated/search.js:394
+#: templates/js/translated/search.js:352
msgid "Minimize results"
msgstr "Minimizar resultados"
-#: templates/js/translated/search.js:397
+#: templates/js/translated/search.js:355
msgid "Remove results"
msgstr "Eliminar resultados"
-#: templates/js/translated/stock.js:98
+#: templates/js/translated/stock.js:97
msgid "Serialize Stock Item"
msgstr "Serializar Artículo de Stock"
-#: templates/js/translated/stock.js:129
+#: templates/js/translated/stock.js:128
msgid "Confirm Stock Serialization"
msgstr "Confirmar Serialización de Stock"
-#: templates/js/translated/stock.js:138
+#: templates/js/translated/stock.js:137
msgid "Parent stock location"
msgstr "Ubicación del stock principal"
-#: templates/js/translated/stock.js:173
+#: templates/js/translated/stock.js:172
msgid "Edit Stock Location"
msgstr "Editar ubicación de stock"
-#: templates/js/translated/stock.js:188
+#: templates/js/translated/stock.js:187
msgid "New Stock Location"
msgstr "Nueva Ubicación de Stock"
-#: templates/js/translated/stock.js:190
+#: templates/js/translated/stock.js:189
msgid "Create another location after this one"
msgstr "Crear otra ubicación después de ésta"
-#: templates/js/translated/stock.js:191
+#: templates/js/translated/stock.js:190
msgid "Stock location created"
msgstr "Ubicación de inventario creada"
-#: templates/js/translated/stock.js:205
+#: templates/js/translated/stock.js:204
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:212
+#: templates/js/translated/stock.js:211
msgid "Move to parent stock location"
msgstr "Mover a la ubicación de inventario del padre"
-#: templates/js/translated/stock.js:221
+#: templates/js/translated/stock.js:220
msgid "Delete Stock Location"
msgstr "Eliminar ubicación de stock"
-#: templates/js/translated/stock.js:225
+#: templates/js/translated/stock.js:224
msgid "Action for stock items in this stock location"
msgstr ""
-#: templates/js/translated/stock.js:230
+#: templates/js/translated/stock.js:229
msgid "Action for sub-locations"
msgstr ""
-#: templates/js/translated/stock.js:284
+#: templates/js/translated/stock.js:283
msgid "This part cannot be serialized"
msgstr "Esta parte no se puede serializar"
-#: templates/js/translated/stock.js:320
+#: templates/js/translated/stock.js:319
msgid "Add given quantity as packs instead of individual items"
msgstr ""
-#: templates/js/translated/stock.js:329
+#: templates/js/translated/stock.js:328
msgid "Enter initial quantity for this stock item"
msgstr "Introduzca la cantidad inicial para este artículo de stock"
-#: templates/js/translated/stock.js:335
+#: templates/js/translated/stock.js:334
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:406
+#: templates/js/translated/stock.js:405
msgid "Stock item duplicated"
msgstr ""
-#: templates/js/translated/stock.js:426
+#: templates/js/translated/stock.js:425
msgid "Duplicate Stock Item"
msgstr "Duplicar artículo de stock"
-#: templates/js/translated/stock.js:442
+#: templates/js/translated/stock.js:441
msgid "Are you sure you want to delete this stock item?"
msgstr "¿Está seguro que desea eliminar este artículo de stock?"
-#: templates/js/translated/stock.js:447
+#: templates/js/translated/stock.js:446
msgid "Delete Stock Item"
msgstr "Eliminar artículo de stock"
-#: templates/js/translated/stock.js:468
+#: templates/js/translated/stock.js:467
msgid "Edit Stock Item"
msgstr "Editar artículo de stock"
-#: templates/js/translated/stock.js:510
+#: templates/js/translated/stock.js:509
msgid "Create another item after this one"
msgstr ""
-#: templates/js/translated/stock.js:522
+#: templates/js/translated/stock.js:521
msgid "Created new stock item"
msgstr "Crear nuevo artículo de stock"
-#: templates/js/translated/stock.js:535
+#: templates/js/translated/stock.js:534
msgid "Created multiple stock items"
msgstr "Creados varios artículos de stock"
-#: templates/js/translated/stock.js:560
+#: templates/js/translated/stock.js:559
msgid "Find Serial Number"
msgstr "Encontrar número serial"
-#: templates/js/translated/stock.js:564 templates/js/translated/stock.js:565
+#: templates/js/translated/stock.js:563 templates/js/translated/stock.js:564
msgid "Enter serial number"
msgstr "Introducir número de serie"
-#: templates/js/translated/stock.js:581
+#: templates/js/translated/stock.js:580
msgid "Enter a serial number"
msgstr "Introducir un número de serie"
-#: templates/js/translated/stock.js:601
+#: templates/js/translated/stock.js:600
msgid "No matching serial number"
msgstr "Ningún número de serie coincidente"
-#: templates/js/translated/stock.js:610
+#: templates/js/translated/stock.js:609
msgid "More than one matching result found"
msgstr "Más de un resultado encontrado"
-#: templates/js/translated/stock.js:718
+#: templates/js/translated/stock.js:717
msgid "Confirm stock assignment"
msgstr "Confirmar asignación de stock"
-#: templates/js/translated/stock.js:719
+#: templates/js/translated/stock.js:718
msgid "Assign Stock to Customer"
msgstr "Asignar Stock al Cliente"
-#: templates/js/translated/stock.js:796
+#: templates/js/translated/stock.js:795
msgid "Warning: Merge operation cannot be reversed"
msgstr "Advertencia: La operación de fusión no puede ser revertida"
-#: templates/js/translated/stock.js:797
+#: templates/js/translated/stock.js:796
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:799
+#: templates/js/translated/stock.js:798
msgid "Stock transaction history will be deleted for merged items"
msgstr "Se eliminará el historial de transacciones de stock para artículos fusionados"
-#: templates/js/translated/stock.js:800
+#: templates/js/translated/stock.js:799
msgid "Supplier part information will be deleted for merged items"
msgstr "La información de la parte del proveedor se eliminará para los artículos fusionados"
-#: templates/js/translated/stock.js:891
+#: templates/js/translated/stock.js:890
msgid "Confirm stock item merge"
msgstr "Confirmar fusión de artículos de stock"
-#: templates/js/translated/stock.js:892
+#: templates/js/translated/stock.js:891
msgid "Merge Stock Items"
msgstr "Fusionar Artículos de Stock"
-#: templates/js/translated/stock.js:987
+#: templates/js/translated/stock.js:986
msgid "Transfer Stock"
msgstr "Transferir Stock"
-#: templates/js/translated/stock.js:988
+#: templates/js/translated/stock.js:987
msgid "Move"
msgstr "Mover"
-#: templates/js/translated/stock.js:994
+#: templates/js/translated/stock.js:993
msgid "Count Stock"
msgstr "Contar Stock"
-#: templates/js/translated/stock.js:995
+#: templates/js/translated/stock.js:994
msgid "Count"
msgstr "Contar"
-#: templates/js/translated/stock.js:999
+#: templates/js/translated/stock.js:998
msgid "Remove Stock"
msgstr "Eliminar Stock"
-#: templates/js/translated/stock.js:1000
+#: templates/js/translated/stock.js:999
msgid "Take"
msgstr "Tomar"
-#: templates/js/translated/stock.js:1004
+#: templates/js/translated/stock.js:1003
msgid "Add Stock"
msgstr "Añadir Stock"
-#: templates/js/translated/stock.js:1005 users/models.py:243
+#: templates/js/translated/stock.js:1004 users/models.py:249
msgid "Add"
msgstr "Añadir"
-#: templates/js/translated/stock.js:1009
+#: templates/js/translated/stock.js:1008
msgid "Delete Stock"
msgstr "Eliminar Stock"
-#: templates/js/translated/stock.js:1106
+#: templates/js/translated/stock.js:1105
msgid "Quantity cannot be adjusted for serialized stock"
msgstr "La cantidad no se puede ajustar para el stock serializado"
-#: templates/js/translated/stock.js:1106
+#: templates/js/translated/stock.js:1105
msgid "Specify stock quantity"
msgstr "Especificar cantidad de stock"
-#: templates/js/translated/stock.js:1140
+#: templates/js/translated/stock.js:1139 templates/js/translated/stock.js:3151
msgid "Select Stock Items"
msgstr "Seleccionar artículos de stock"
-#: templates/js/translated/stock.js:1141
-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:1140
+msgid "Select at least one available stock item"
+msgstr ""
-#: templates/js/translated/stock.js:1168
+#: templates/js/translated/stock.js:1167
msgid "Confirm stock adjustment"
msgstr "Confirmar ajuste de stock"
-#: templates/js/translated/stock.js:1304
+#: templates/js/translated/stock.js:1303
msgid "PASS"
msgstr "PASA"
-#: templates/js/translated/stock.js:1306
+#: templates/js/translated/stock.js:1305
msgid "FAIL"
msgstr "FALLO"
-#: templates/js/translated/stock.js:1311
+#: templates/js/translated/stock.js:1310
msgid "NO RESULT"
msgstr "SIN RESULTADO"
-#: templates/js/translated/stock.js:1373
+#: templates/js/translated/stock.js:1372
msgid "Pass test"
msgstr "Pruebas pasadas"
-#: templates/js/translated/stock.js:1376
+#: templates/js/translated/stock.js:1375
msgid "Add test result"
msgstr "Añadir resultado de prueba"
-#: templates/js/translated/stock.js:1400
+#: templates/js/translated/stock.js:1399
msgid "No test results found"
msgstr "No se encontraron resultados de prueba"
-#: templates/js/translated/stock.js:1464
+#: templates/js/translated/stock.js:1463
msgid "Test Date"
msgstr "Fecha de Prueba"
-#: templates/js/translated/stock.js:1626
+#: templates/js/translated/stock.js:1625
msgid "Edit Test Result"
msgstr "Editar Resultados de Prueba"
-#: templates/js/translated/stock.js:1648
+#: templates/js/translated/stock.js:1647
msgid "Delete Test Result"
msgstr "Borrar Resultado de Prueba"
-#: templates/js/translated/stock.js:1680
+#: templates/js/translated/stock.js:1679
msgid "In production"
msgstr "En producción"
-#: templates/js/translated/stock.js:1684
+#: templates/js/translated/stock.js:1683
msgid "Installed in Stock Item"
msgstr "Instalado en el artículo de stock"
-#: templates/js/translated/stock.js:1692
+#: templates/js/translated/stock.js:1691
msgid "Assigned to Sales Order"
msgstr "Asignado a la Orden de Venta"
-#: templates/js/translated/stock.js:1698
+#: templates/js/translated/stock.js:1697
msgid "No stock location set"
msgstr "Ninguna ubicación de stock establecida"
-#: templates/js/translated/stock.js:1746
+#: templates/js/translated/stock.js:1753
+msgid "Change stock status"
+msgstr ""
+
+#: templates/js/translated/stock.js:1762
+msgid "Merge stock"
+msgstr "Fusionar stock"
+
+#: templates/js/translated/stock.js:1811
+msgid "Delete stock"
+msgstr "Eliminar existencias"
+
+#: templates/js/translated/stock.js:1866
msgid "stock items"
msgstr ""
-#: templates/js/translated/stock.js:1850
+#: templates/js/translated/stock.js:1871
+msgid "Scan to location"
+msgstr ""
+
+#: templates/js/translated/stock.js:1882
+msgid "Stock Actions"
+msgstr ""
+
+#: templates/js/translated/stock.js:1929
+msgid "Load installed items"
+msgstr ""
+
+#: templates/js/translated/stock.js:2007
msgid "Stock item is in production"
msgstr "El artículo de stock está en producción"
-#: templates/js/translated/stock.js:1855
+#: templates/js/translated/stock.js:2012
msgid "Stock item assigned to sales order"
msgstr "Artículo de stock asignado al pedido de venta"
-#: templates/js/translated/stock.js:1858
+#: templates/js/translated/stock.js:2015
msgid "Stock item assigned to customer"
msgstr "Artículo de stock asignado al cliente"
-#: templates/js/translated/stock.js:1861
+#: templates/js/translated/stock.js:2018
msgid "Serialized stock item has been allocated"
msgstr "Se ha asignado un artículo de stock serializado"
-#: templates/js/translated/stock.js:1863
+#: templates/js/translated/stock.js:2020
msgid "Stock item has been fully allocated"
msgstr "Artículo de stock ha sido completamente asignado"
-#: templates/js/translated/stock.js:1865
+#: templates/js/translated/stock.js:2022
msgid "Stock item has been partially allocated"
msgstr "Artículo de stock ha sido asignado parcialmente"
-#: templates/js/translated/stock.js:1868
+#: templates/js/translated/stock.js:2025
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:1870
+#: templates/js/translated/stock.js:2027
msgid "Stock item has been consumed by a build order"
msgstr ""
-#: templates/js/translated/stock.js:1874
+#: templates/js/translated/stock.js:2031
msgid "Stock item has expired"
msgstr "Artículo de stock ha caducado"
-#: templates/js/translated/stock.js:1876
+#: templates/js/translated/stock.js:2033
msgid "Stock item will expire soon"
msgstr "El artículo de stock caducará pronto"
-#: templates/js/translated/stock.js:1881
+#: templates/js/translated/stock.js:2038
msgid "Stock item has been rejected"
msgstr "Artículo de stock ha sido rechazado"
-#: templates/js/translated/stock.js:1883
+#: templates/js/translated/stock.js:2040
msgid "Stock item is lost"
msgstr "Artículo de stock perdido"
-#: templates/js/translated/stock.js:1885
+#: templates/js/translated/stock.js:2042
msgid "Stock item is destroyed"
msgstr "Artículo de stock destruido"
-#: templates/js/translated/stock.js:1889
-#: templates/js/translated/table_filters.js:296
+#: templates/js/translated/stock.js:2046
+#: templates/js/translated/table_filters.js:302
msgid "Depleted"
msgstr "Agotado"
-#: templates/js/translated/stock.js:2031
+#: templates/js/translated/stock.js:2188
msgid "Supplier part not specified"
msgstr "Parte del proveedor no especificada"
-#: templates/js/translated/stock.js:2078
+#: templates/js/translated/stock.js:2235
msgid "Stock Value"
msgstr ""
-#: templates/js/translated/stock.js:2170
+#: templates/js/translated/stock.js:2358
msgid "No stock items matching query"
msgstr "No hay artículos de stock que coincidan con la consulta"
-#: templates/js/translated/stock.js:2319
+#: templates/js/translated/stock.js:2450
msgid "stock locations"
msgstr ""
-#: templates/js/translated/stock.js:2476
+#: templates/js/translated/stock.js:2607
msgid "Load Subloactions"
msgstr "Cargar sublocalidades"
-#: templates/js/translated/stock.js:2583
+#: templates/js/translated/stock.js:2714
msgid "Details"
msgstr "Detalles"
-#: templates/js/translated/stock.js:2587
+#: templates/js/translated/stock.js:2718
msgid "No changes"
msgstr "Sin cambios"
-#: templates/js/translated/stock.js:2599
+#: templates/js/translated/stock.js:2730
msgid "Part information unavailable"
msgstr "Información de la parte no disponible"
-#: templates/js/translated/stock.js:2621
+#: templates/js/translated/stock.js:2752
msgid "Location no longer exists"
msgstr "Ubicación ya no existe"
-#: templates/js/translated/stock.js:2638
+#: templates/js/translated/stock.js:2769
msgid "Build order no longer exists"
msgstr ""
-#: templates/js/translated/stock.js:2653
+#: templates/js/translated/stock.js:2784
msgid "Purchase order no longer exists"
msgstr "La orden de compra ya no existe"
-#: templates/js/translated/stock.js:2670
+#: templates/js/translated/stock.js:2801
msgid "Sales Order no longer exists"
msgstr "El pedido de venta ya no existe"
-#: templates/js/translated/stock.js:2687
+#: templates/js/translated/stock.js:2818
msgid "Return Order no longer exists"
msgstr "El pedido de devolución ya no existe"
-#: templates/js/translated/stock.js:2706
+#: templates/js/translated/stock.js:2837
msgid "Customer no longer exists"
msgstr "El cliente ya no existe"
-#: templates/js/translated/stock.js:2724
+#: templates/js/translated/stock.js:2855
msgid "Stock item no longer exists"
msgstr "Artículo de stock ya no existe"
-#: templates/js/translated/stock.js:2742
+#: templates/js/translated/stock.js:2873
msgid "Added"
msgstr "Añadido"
-#: templates/js/translated/stock.js:2750
+#: templates/js/translated/stock.js:2881
msgid "Removed"
msgstr "Eliminado"
-#: templates/js/translated/stock.js:2826
+#: templates/js/translated/stock.js:2953
msgid "No installed items"
msgstr "Ningún artículo instalado"
-#: templates/js/translated/stock.js:2876 templates/js/translated/stock.js:2911
+#: templates/js/translated/stock.js:3003 templates/js/translated/stock.js:3038
msgid "Uninstall Stock Item"
msgstr "Desinstalar artículo de stock"
-#: templates/js/translated/stock.js:2929
+#: templates/js/translated/stock.js:3056
msgid "Select stock item to uninstall"
msgstr ""
-#: templates/js/translated/stock.js:2950
+#: templates/js/translated/stock.js:3077
msgid "Install another stock item into this item"
msgstr ""
-#: templates/js/translated/stock.js:2951
+#: templates/js/translated/stock.js:3078
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:2953
+#: templates/js/translated/stock.js:3080
msgid "The Stock Item links to a Part which is the BOM for this Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:2954
+#: templates/js/translated/stock.js:3081
msgid "The Stock Item is currently available in stock"
msgstr ""
-#: templates/js/translated/stock.js:2955
+#: templates/js/translated/stock.js:3082
msgid "The Stock Item is not already installed in another item"
msgstr ""
-#: templates/js/translated/stock.js:2956
+#: templates/js/translated/stock.js:3083
msgid "The Stock Item is tracked by either a batch code or serial number"
msgstr ""
-#: templates/js/translated/stock.js:2969
+#: templates/js/translated/stock.js:3096
msgid "Select part to install"
msgstr "Seleccionar parte para instalar"
+#: templates/js/translated/stock.js:3152
+msgid "Select one or more stock items"
+msgstr ""
+
+#: templates/js/translated/stock.js:3165
+msgid "Selected stock items"
+msgstr ""
+
+#: templates/js/translated/stock.js:3169
+msgid "Change Stock Status"
+msgstr ""
+
#: templates/js/translated/table_filters.js:50
msgid "Has project code"
msgstr "Tiene código de proyecto"
-#: templates/js/translated/table_filters.js:59
-#: templates/js/translated/table_filters.js:518
-#: templates/js/translated/table_filters.js:530
-#: templates/js/translated/table_filters.js:571
+#: templates/js/translated/table_filters.js:65
+#: templates/js/translated/table_filters.js:540
+#: templates/js/translated/table_filters.js:552
+#: templates/js/translated/table_filters.js:593
msgid "Order status"
msgstr "Estado del pedido"
-#: templates/js/translated/table_filters.js:64
-#: templates/js/translated/table_filters.js:535
-#: templates/js/translated/table_filters.js:561
-#: templates/js/translated/table_filters.js:576
+#: templates/js/translated/table_filters.js:70
+#: templates/js/translated/table_filters.js:557
+#: templates/js/translated/table_filters.js:583
+#: templates/js/translated/table_filters.js:598
msgid "Outstanding"
msgstr "Pendiente"
-#: templates/js/translated/table_filters.js:72
-#: templates/js/translated/table_filters.js:458
-#: templates/js/translated/table_filters.js:543
-#: templates/js/translated/table_filters.js:584
+#: templates/js/translated/table_filters.js:78
+#: templates/js/translated/table_filters.js:464
+#: templates/js/translated/table_filters.js:565
+#: templates/js/translated/table_filters.js:606
msgid "Assigned to me"
msgstr "Asignado a mí"
-#: templates/js/translated/table_filters.js:128
+#: templates/js/translated/table_filters.js:134
msgid "Trackable Part"
msgstr "Parte Rastreable"
-#: templates/js/translated/table_filters.js:132
+#: templates/js/translated/table_filters.js:138
msgid "Assembled Part"
msgstr "Parte Ensamblada"
-#: templates/js/translated/table_filters.js:136
+#: templates/js/translated/table_filters.js:142
msgid "Has Available Stock"
msgstr "Tiene stock disponible"
-#: templates/js/translated/table_filters.js:152
+#: templates/js/translated/table_filters.js:158
msgid "Allow Variant Stock"
msgstr "Permitir stock de variante"
-#: templates/js/translated/table_filters.js:164
-#: templates/js/translated/table_filters.js:692
+#: templates/js/translated/table_filters.js:170
+#: templates/js/translated/table_filters.js:714
msgid "Has Pricing"
msgstr "Tiene precio"
-#: templates/js/translated/table_filters.js:204
-#: templates/js/translated/table_filters.js:291
+#: templates/js/translated/table_filters.js:210
+#: templates/js/translated/table_filters.js:297
msgid "Include sublocations"
msgstr "Incluir sub-ubicación"
-#: templates/js/translated/table_filters.js:205
+#: templates/js/translated/table_filters.js:211
msgid "Include locations"
msgstr "Incluir ubicaciones"
-#: templates/js/translated/table_filters.js:224
-#: templates/js/translated/table_filters.js:225
-#: templates/js/translated/table_filters.js:624
+#: templates/js/translated/table_filters.js:230
+#: templates/js/translated/table_filters.js:231
+#: templates/js/translated/table_filters.js:646
msgid "Include subcategories"
msgstr "Incluir subcategorías"
-#: templates/js/translated/table_filters.js:233
-#: templates/js/translated/table_filters.js:672
+#: templates/js/translated/table_filters.js:239
+#: templates/js/translated/table_filters.js:694
msgid "Subscribed"
msgstr "Suscrito"
-#: templates/js/translated/table_filters.js:244
-#: templates/js/translated/table_filters.js:326
+#: templates/js/translated/table_filters.js:250
+#: templates/js/translated/table_filters.js:332
msgid "Is Serialized"
msgstr "Es Serializado"
-#: templates/js/translated/table_filters.js:247
-#: templates/js/translated/table_filters.js:333
+#: templates/js/translated/table_filters.js:253
+#: templates/js/translated/table_filters.js:339
msgid "Serial number GTE"
msgstr "Número Serial GTE"
-#: templates/js/translated/table_filters.js:248
-#: templates/js/translated/table_filters.js:334
+#: templates/js/translated/table_filters.js:254
+#: templates/js/translated/table_filters.js:340
msgid "Serial number greater than or equal to"
msgstr "Número de serie mayor o igual a"
-#: templates/js/translated/table_filters.js:251
-#: templates/js/translated/table_filters.js:337
+#: templates/js/translated/table_filters.js:257
+#: templates/js/translated/table_filters.js:343
msgid "Serial number LTE"
msgstr "Número Serial LTE"
-#: templates/js/translated/table_filters.js:252
-#: templates/js/translated/table_filters.js:338
+#: templates/js/translated/table_filters.js:258
+#: templates/js/translated/table_filters.js:344
msgid "Serial number less than or equal to"
msgstr "Número de serie menor o igual que"
-#: templates/js/translated/table_filters.js:255
-#: templates/js/translated/table_filters.js:256
-#: templates/js/translated/table_filters.js:329
-#: templates/js/translated/table_filters.js:330
+#: templates/js/translated/table_filters.js:261
+#: templates/js/translated/table_filters.js:262
+#: templates/js/translated/table_filters.js:335
+#: templates/js/translated/table_filters.js:336
msgid "Serial number"
msgstr "Número de serie"
-#: templates/js/translated/table_filters.js:260
-#: templates/js/translated/table_filters.js:351
+#: templates/js/translated/table_filters.js:266
+#: templates/js/translated/table_filters.js:357
msgid "Batch code"
msgstr "Código de lote"
-#: templates/js/translated/table_filters.js:271
-#: templates/js/translated/table_filters.js:613
+#: templates/js/translated/table_filters.js:277
+#: templates/js/translated/table_filters.js:635
msgid "Active parts"
msgstr "Partes activas"
-#: templates/js/translated/table_filters.js:272
+#: templates/js/translated/table_filters.js:278
msgid "Show stock for active parts"
msgstr "Mostrar stock para las partes activas"
-#: templates/js/translated/table_filters.js:277
+#: templates/js/translated/table_filters.js:283
msgid "Part is an assembly"
msgstr "Parte es un ensamblado"
-#: templates/js/translated/table_filters.js:281
+#: templates/js/translated/table_filters.js:287
msgid "Is allocated"
msgstr "Está asignado"
-#: templates/js/translated/table_filters.js:282
+#: templates/js/translated/table_filters.js:288
msgid "Item has been allocated"
msgstr "El artículo ha sido asignado"
-#: templates/js/translated/table_filters.js:287
+#: templates/js/translated/table_filters.js:293
msgid "Stock is available for use"
msgstr "Stock disponible para uso"
-#: templates/js/translated/table_filters.js:292
+#: templates/js/translated/table_filters.js:298
msgid "Include stock in sublocations"
msgstr "Incluye stock en sub-ubicaciones"
-#: templates/js/translated/table_filters.js:297
+#: templates/js/translated/table_filters.js:303
msgid "Show stock items which are depleted"
msgstr "Mostrar artículos de stock que están agotados"
-#: templates/js/translated/table_filters.js:302
+#: templates/js/translated/table_filters.js:308
msgid "Show items which are in stock"
msgstr "Mostrar artículos en stock"
-#: templates/js/translated/table_filters.js:306
+#: templates/js/translated/table_filters.js:312
msgid "In Production"
msgstr "En Producción"
-#: templates/js/translated/table_filters.js:307
+#: templates/js/translated/table_filters.js:313
msgid "Show items which are in production"
msgstr "Mostrar artículos que están en producción"
-#: templates/js/translated/table_filters.js:311
+#: templates/js/translated/table_filters.js:317
msgid "Include Variants"
msgstr "Incluye Variantes"
-#: templates/js/translated/table_filters.js:312
+#: templates/js/translated/table_filters.js:318
msgid "Include stock items for variant parts"
msgstr "Incluye artículos de stock para partes de variantes"
-#: templates/js/translated/table_filters.js:316
+#: templates/js/translated/table_filters.js:322
msgid "Installed"
msgstr "Instalado"
-#: templates/js/translated/table_filters.js:317
+#: templates/js/translated/table_filters.js:323
msgid "Show stock items which are installed in another item"
msgstr "Mostrar artículos de stock que están instalados en otro artículo"
-#: templates/js/translated/table_filters.js:322
+#: templates/js/translated/table_filters.js:328
msgid "Show items which have been assigned to a customer"
msgstr "Mostrar artículos que han sido asignados a un cliente"
-#: templates/js/translated/table_filters.js:342
-#: templates/js/translated/table_filters.js:343
+#: templates/js/translated/table_filters.js:348
+#: templates/js/translated/table_filters.js:349
msgid "Stock status"
msgstr "Estado del stock"
-#: templates/js/translated/table_filters.js:346
+#: templates/js/translated/table_filters.js:352
msgid "Has batch code"
msgstr "Tiene código de lote"
-#: templates/js/translated/table_filters.js:354
-msgid "Tracked"
-msgstr "Rastreado"
-
-#: templates/js/translated/table_filters.js:355
+#: templates/js/translated/table_filters.js:361
msgid "Stock item is tracked by either batch code or serial number"
msgstr ""
-#: templates/js/translated/table_filters.js:360
+#: templates/js/translated/table_filters.js:366
msgid "Has purchase price"
msgstr "Tiene precio de compra"
-#: templates/js/translated/table_filters.js:361
+#: templates/js/translated/table_filters.js:367
msgid "Show stock items which have a purchase price set"
msgstr "Mostrar artículos de stock que tienen un precio de compra establecido"
-#: templates/js/translated/table_filters.js:365
+#: templates/js/translated/table_filters.js:371
msgid "Expiry Date before"
msgstr "Fecha de vencimiento antes de"
-#: templates/js/translated/table_filters.js:369
+#: templates/js/translated/table_filters.js:375
msgid "Expiry Date after"
msgstr "Fecha de vencimiento después"
-#: templates/js/translated/table_filters.js:382
+#: templates/js/translated/table_filters.js:388
msgid "Show stock items which have expired"
msgstr "Mostrar artículos de stock que han caducado"
-#: templates/js/translated/table_filters.js:388
+#: templates/js/translated/table_filters.js:394
msgid "Show stock which is close to expiring"
msgstr "Mostrar stock que está cerca de caducar"
-#: templates/js/translated/table_filters.js:402
+#: templates/js/translated/table_filters.js:408
msgid "Test Passed"
msgstr "Prueba aprobada"
-#: templates/js/translated/table_filters.js:406
+#: templates/js/translated/table_filters.js:412
msgid "Include Installed Items"
msgstr "Incluye artículos instalados"
-#: templates/js/translated/table_filters.js:445
+#: templates/js/translated/table_filters.js:451
msgid "Build status"
msgstr "Estado de la construcción"
-#: templates/js/translated/table_filters.js:625
+#: templates/js/translated/table_filters.js:647
msgid "Include parts in subcategories"
msgstr "Incluye partes en subcategorías"
-#: templates/js/translated/table_filters.js:630
+#: templates/js/translated/table_filters.js:652
msgid "Show active parts"
msgstr "Mostrar partes activas"
-#: templates/js/translated/table_filters.js:638
+#: templates/js/translated/table_filters.js:660
msgid "Available stock"
msgstr "Existencias disponibles"
-#: templates/js/translated/table_filters.js:646
-#: templates/js/translated/table_filters.js:742
+#: templates/js/translated/table_filters.js:668
+#: templates/js/translated/table_filters.js:764
msgid "Has Units"
msgstr "Tiene unidades"
-#: templates/js/translated/table_filters.js:647
+#: templates/js/translated/table_filters.js:669
msgid "Part has defined units"
msgstr ""
-#: templates/js/translated/table_filters.js:651
+#: templates/js/translated/table_filters.js:673
msgid "Has IPN"
msgstr "Tiene IPN"
-#: templates/js/translated/table_filters.js:652
+#: templates/js/translated/table_filters.js:674
msgid "Part has internal part number"
msgstr "La parte tiene un número de parte interno"
-#: templates/js/translated/table_filters.js:656
+#: templates/js/translated/table_filters.js:678
msgid "In stock"
msgstr "En existencia"
-#: templates/js/translated/table_filters.js:664
+#: templates/js/translated/table_filters.js:686
msgid "Purchasable"
msgstr "Comprable"
-#: templates/js/translated/table_filters.js:676
+#: templates/js/translated/table_filters.js:698
msgid "Has stocktake entries"
msgstr "Tiene entradas de inventario"
-#: templates/js/translated/table_filters.js:738
+#: templates/js/translated/table_filters.js:760
msgid "Has Choices"
msgstr "Tiene opciones"
@@ -12390,51 +12551,51 @@ msgstr "Exportar datos de tabla"
msgid "Select File Format"
msgstr "Seleccionar formato de archivo"
-#: templates/js/translated/tables.js:561
+#: templates/js/translated/tables.js:537
msgid "Loading data"
msgstr "Cargando datos"
-#: templates/js/translated/tables.js:564
+#: templates/js/translated/tables.js:540
msgid "rows per page"
msgstr "filas por página"
-#: templates/js/translated/tables.js:569
+#: templates/js/translated/tables.js:545
msgid "Showing all rows"
msgstr "Mostrar todas las filas"
-#: templates/js/translated/tables.js:571
+#: templates/js/translated/tables.js:547
msgid "Showing"
msgstr "Mostrando"
-#: templates/js/translated/tables.js:571
+#: templates/js/translated/tables.js:547
msgid "to"
msgstr "para"
-#: templates/js/translated/tables.js:571
+#: templates/js/translated/tables.js:547
msgid "of"
msgstr "de"
-#: templates/js/translated/tables.js:571
+#: templates/js/translated/tables.js:547
msgid "rows"
msgstr "filas"
-#: templates/js/translated/tables.js:578
+#: templates/js/translated/tables.js:554
msgid "No matching results"
msgstr "No se encontraron resultados"
-#: templates/js/translated/tables.js:581
+#: templates/js/translated/tables.js:557
msgid "Hide/Show pagination"
msgstr "Ocultar/Mostrar paginación"
-#: templates/js/translated/tables.js:587
+#: templates/js/translated/tables.js:563
msgid "Toggle"
msgstr "Alternar"
-#: templates/js/translated/tables.js:590
+#: templates/js/translated/tables.js:566
msgid "Columns"
msgstr "Columnas"
-#: templates/js/translated/tables.js:593
+#: templates/js/translated/tables.js:569
msgid "All"
msgstr "Todo"
@@ -12617,50 +12778,6 @@ msgstr "Configuración de Email"
msgid "Email settings not configured"
msgstr "Configuración de correo no configurada"
-#: templates/stock_table.html:17
-msgid "Barcode Actions"
-msgstr "Acciones de código de barras"
-
-#: templates/stock_table.html:28
-msgid "Stock Options"
-msgstr "Opciones Stock"
-
-#: templates/stock_table.html:33
-msgid "Add to selected stock items"
-msgstr "Añadir a los artículos de stock seleccionados"
-
-#: templates/stock_table.html:34
-msgid "Remove from selected stock items"
-msgstr "Eliminar de los artículos de stock seleccionados"
-
-#: templates/stock_table.html:35
-msgid "Stocktake selected stock items"
-msgstr "Artículos de stock seleccionados"
-
-#: templates/stock_table.html:36
-msgid "Move selected stock items"
-msgstr "Mover artículos de stock seleccionados"
-
-#: templates/stock_table.html:37
-msgid "Merge selected stock items"
-msgstr "Combinar artículos de stock seleccionados"
-
-#: templates/stock_table.html:37
-msgid "Merge stock"
-msgstr "Fusionar stock"
-
-#: templates/stock_table.html:38
-msgid "Order selected items"
-msgstr "Ordenar artículos seleccionados"
-
-#: templates/stock_table.html:42
-msgid "Delete selected items"
-msgstr "Eliminar artículos seleccionados"
-
-#: templates/stock_table.html:42
-msgid "Delete stock"
-msgstr "Eliminar existencias"
-
#: templates/yesnolabel.html:4
msgid "Yes"
msgstr "Sí"
@@ -12693,35 +12810,35 @@ msgstr "Permisos"
msgid "Important dates"
msgstr "Fechas importantes"
-#: users/models.py:230
+#: users/models.py:236
msgid "Permission set"
msgstr "Permiso establecido"
-#: users/models.py:238
+#: users/models.py:244
msgid "Group"
msgstr "Grupo"
-#: users/models.py:241
+#: users/models.py:247
msgid "View"
msgstr "Vista"
-#: users/models.py:241
+#: users/models.py:247
msgid "Permission to view items"
msgstr "Permiso para ver artículos"
-#: users/models.py:243
+#: users/models.py:249
msgid "Permission to add items"
msgstr "Permiso para añadir artículos"
-#: users/models.py:245
+#: users/models.py:251
msgid "Change"
msgstr "Cambiar"
-#: users/models.py:245
+#: users/models.py:251
msgid "Permissions to edit items"
msgstr "Permisos para editar artículos"
-#: users/models.py:247
+#: users/models.py:253
msgid "Permission to delete items"
msgstr "Permiso para eliminar artículos"
diff --git a/InvenTree/locale/es_MX/LC_MESSAGES/django.po b/InvenTree/locale/es_MX/LC_MESSAGES/django.po
index fcd5f93774..0a8805525b 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: 2023-06-05 11:04+0000\n"
+"POT-Creation-Date: 2023-06-12 21:36+0000\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME \n"
"Language-Team: LANGUAGE \n"
@@ -53,12 +53,12 @@ msgstr ""
#: InvenTree/fields.py:206 InvenTree/models.py:766 build/serializers.py:427
#: build/serializers.py:506 build/templates/build/sidebar.html:23
#: company/models.py:597 company/templates/company/sidebar.html:35
-#: order/models.py:1086 order/templates/order/po_sidebar.html:11
+#: order/models.py:1089 order/templates/order/po_sidebar.html:11
#: order/templates/order/return_order_sidebar.html:9
#: order/templates/order/so_sidebar.html:17 part/admin.py:41
-#: part/models.py:3004 part/templates/part/part_sidebar.html:63
+#: part/models.py:3005 part/templates/part/part_sidebar.html:63
#: report/templates/report/inventree_build_order_base.html:172
-#: stock/admin.py:121 stock/models.py:2159 stock/models.py:2267
+#: stock/admin.py:121 stock/models.py:2160 stock/models.py:2268
#: stock/serializers.py:342 stock/serializers.py:475 stock/serializers.py:556
#: stock/serializers.py:839 stock/serializers.py:938 stock/serializers.py:1070
#: stock/templates/stock/stock_sidebar.html:25
@@ -122,7 +122,7 @@ msgstr ""
msgid "The provided email domain is not approved."
msgstr ""
-#: InvenTree/helpers.py:462 order/models.py:439 order/models.py:608
+#: InvenTree/helpers.py:462 order/models.py:442 order/models.py:611
msgid "Invalid quantity provided"
msgstr ""
@@ -238,7 +238,7 @@ msgstr ""
msgid "Missing external link"
msgstr ""
-#: InvenTree/models.py:486 stock/models.py:2261
+#: InvenTree/models.py:486 stock/models.py:2262
#: templates/js/translated/attachment.js:119
#: templates/js/translated/attachment.js:306
msgid "Attachment"
@@ -248,10 +248,10 @@ msgstr ""
msgid "Select file to attach"
msgstr ""
-#: InvenTree/models.py:493 common/models.py:2695 company/models.py:132
-#: company/models.py:306 company/models.py:584 order/models.py:233
-#: order/models.py:1090 order/models.py:1450 part/admin.py:39
-#: part/models.py:900 part/templates/part/part_scheduling.html:11
+#: InvenTree/models.py:493 common/models.py:2688 company/models.py:132
+#: company/models.py:306 company/models.py:584 order/models.py:236
+#: order/models.py:1093 order/models.py:1453 part/admin.py:39
+#: part/models.py:901 part/templates/part/part_scheduling.html:11
#: report/templates/report/inventree_build_order_base.html:164
#: stock/admin.py:120 templates/js/translated/company.js:977
#: templates/js/translated/company.js:1283 templates/js/translated/order.js:351
@@ -264,7 +264,7 @@ msgstr ""
msgid "Link"
msgstr ""
-#: InvenTree/models.py:494 build/models.py:291 part/models.py:901
+#: InvenTree/models.py:494 build/models.py:291 part/models.py:902
#: stock/models.py:735
msgid "Link to external URL"
msgstr ""
@@ -278,10 +278,10 @@ msgstr ""
msgid "File comment"
msgstr ""
-#: InvenTree/models.py:503 InvenTree/models.py:504 common/models.py:2154
-#: common/models.py:2155 common/models.py:2368 common/models.py:2369
-#: common/models.py:2625 common/models.py:2626 part/models.py:3012
-#: part/models.py:3100 part/models.py:3179 part/models.py:3199
+#: InvenTree/models.py:503 InvenTree/models.py:504 common/models.py:2147
+#: common/models.py:2148 common/models.py:2361 common/models.py:2362
+#: common/models.py:2618 common/models.py:2619 part/models.py:3013
+#: part/models.py:3101 part/models.py:3180 part/models.py:3200
#: plugin/models.py:217 plugin/models.py:218
#: report/templates/report/inventree_test_report_base.html:105
#: templates/js/translated/stock.js:2773
@@ -325,12 +325,12 @@ msgstr ""
msgid "Invalid choice"
msgstr ""
-#: InvenTree/models.py:648 InvenTree/models.py:649 common/models.py:2354
-#: company/models.py:390 label/models.py:103 part/models.py:846
-#: part/models.py:3399 plugin/models.py:41 report/models.py:160
+#: InvenTree/models.py:648 InvenTree/models.py:649 common/models.py:2347
+#: company/models.py:390 label/models.py:103 part/models.py:847
+#: part/models.py:3400 plugin/models.py:41 report/models.py:160
#: templates/InvenTree/settings/mixins/urls.html:13
#: templates/InvenTree/settings/notifications.html:17
-#: templates/InvenTree/settings/plugin.html:80
+#: templates/InvenTree/settings/plugin.html:78
#: templates/InvenTree/settings/plugin_settings.html:22
#: templates/js/translated/company.js:658
#: templates/js/translated/company.js:706
@@ -347,8 +347,8 @@ msgstr ""
#: company/templates/company/company_base.html:72
#: company/templates/company/manufacturer_part.html:75
#: company/templates/company/supplier_part.html:108 label/models.py:110
-#: order/models.py:229 order/models.py:1114 part/admin.py:194 part/admin.py:276
-#: part/models.py:868 part/models.py:3415 part/templates/part/category.html:81
+#: order/models.py:232 order/models.py:1117 part/admin.py:194 part/admin.py:276
+#: part/models.py:869 part/models.py:3416 part/templates/part/category.html:81
#: part/templates/part/part_base.html:172
#: part/templates/part/part_scheduling.html:12 report/models.py:173
#: report/models.py:587 report/models.py:631
@@ -420,12 +420,12 @@ msgstr ""
msgid "An error has been logged by the server."
msgstr ""
-#: InvenTree/serializers.py:60 part/models.py:3896
+#: InvenTree/serializers.py:60 part/models.py:3897
msgid "Must be a valid number"
msgstr ""
#: InvenTree/serializers.py:90 company/models.py:154
-#: company/templates/company/company_base.html:107 part/models.py:2851
+#: company/templates/company/company_base.html:107 part/models.py:2852
#: templates/InvenTree/settings/settings_staff_js.html:44
#: templates/currency_data.html:5
msgid "Currency"
@@ -498,111 +498,111 @@ msgstr ""
msgid "Downloading images from remote URL is not enabled"
msgstr ""
-#: InvenTree/settings.py:713
+#: InvenTree/settings.py:722
msgid "Czech"
msgstr ""
-#: InvenTree/settings.py:714
+#: InvenTree/settings.py:723
msgid "Danish"
msgstr ""
-#: InvenTree/settings.py:715
+#: InvenTree/settings.py:724
msgid "German"
msgstr ""
-#: InvenTree/settings.py:716
+#: InvenTree/settings.py:725
msgid "Greek"
msgstr ""
-#: InvenTree/settings.py:717
+#: InvenTree/settings.py:726
msgid "English"
msgstr ""
-#: InvenTree/settings.py:718
+#: InvenTree/settings.py:727
msgid "Spanish"
msgstr ""
-#: InvenTree/settings.py:719
+#: InvenTree/settings.py:728
msgid "Spanish (Mexican)"
msgstr ""
-#: InvenTree/settings.py:720
+#: InvenTree/settings.py:729
msgid "Farsi / Persian"
msgstr ""
-#: InvenTree/settings.py:721
+#: InvenTree/settings.py:730
msgid "Finnish"
msgstr ""
-#: InvenTree/settings.py:722
+#: InvenTree/settings.py:731
msgid "French"
msgstr ""
-#: InvenTree/settings.py:723
+#: InvenTree/settings.py:732
msgid "Hebrew"
msgstr ""
-#: InvenTree/settings.py:724
+#: InvenTree/settings.py:733
msgid "Hungarian"
msgstr ""
-#: InvenTree/settings.py:725
+#: InvenTree/settings.py:734
msgid "Italian"
msgstr ""
-#: InvenTree/settings.py:726
+#: InvenTree/settings.py:735
msgid "Japanese"
msgstr ""
-#: InvenTree/settings.py:727
+#: InvenTree/settings.py:736
msgid "Korean"
msgstr ""
-#: InvenTree/settings.py:728
+#: InvenTree/settings.py:737
msgid "Dutch"
msgstr ""
-#: InvenTree/settings.py:729
+#: InvenTree/settings.py:738
msgid "Norwegian"
msgstr ""
-#: InvenTree/settings.py:730
+#: InvenTree/settings.py:739
msgid "Polish"
msgstr ""
-#: InvenTree/settings.py:731
+#: InvenTree/settings.py:740
msgid "Portuguese"
msgstr ""
-#: InvenTree/settings.py:732
+#: InvenTree/settings.py:741
msgid "Portuguese (Brazilian)"
msgstr ""
-#: InvenTree/settings.py:733
+#: InvenTree/settings.py:742
msgid "Russian"
msgstr ""
-#: InvenTree/settings.py:734
+#: InvenTree/settings.py:743
msgid "Slovenian"
msgstr ""
-#: InvenTree/settings.py:735
+#: InvenTree/settings.py:744
msgid "Swedish"
msgstr ""
-#: InvenTree/settings.py:736
+#: InvenTree/settings.py:745
msgid "Thai"
msgstr ""
-#: InvenTree/settings.py:737
+#: InvenTree/settings.py:746
msgid "Turkish"
msgstr ""
-#: InvenTree/settings.py:738
+#: InvenTree/settings.py:747
msgid "Vietnamese"
msgstr ""
-#: InvenTree/settings.py:739
+#: InvenTree/settings.py:748
msgid "Chinese"
msgstr ""
@@ -618,196 +618,199 @@ msgstr ""
msgid "InvenTree system health checks failed"
msgstr ""
-#: InvenTree/status_codes.py:139 InvenTree/status_codes.py:181
-#: InvenTree/status_codes.py:360 InvenTree/status_codes.py:397
-#: InvenTree/status_codes.py:432 templates/js/translated/table_filters.js:511
+#: InvenTree/status_codes.py:12 InvenTree/status_codes.py:40
+#: InvenTree/status_codes.py:148 InvenTree/status_codes.py:167
+#: InvenTree/status_codes.py:188 generic/states/tests.py:16
+#: templates/js/translated/table_filters.js:511
msgid "Pending"
msgstr ""
-#: InvenTree/status_codes.py:140
+#: InvenTree/status_codes.py:13 generic/states/tests.py:17
msgid "Placed"
msgstr ""
-#: InvenTree/status_codes.py:141 InvenTree/status_codes.py:363
-#: InvenTree/status_codes.py:399 order/templates/order/order_base.html:162
+#: InvenTree/status_codes.py:14 InvenTree/status_codes.py:151
+#: InvenTree/status_codes.py:172 generic/states/tests.py:18
+#: order/templates/order/order_base.html:162
#: order/templates/order/sales_order_base.html:162
msgid "Complete"
msgstr ""
-#: InvenTree/status_codes.py:142 InvenTree/status_codes.py:184
-#: InvenTree/status_codes.py:362 InvenTree/status_codes.py:400
+#: InvenTree/status_codes.py:15 InvenTree/status_codes.py:43
+#: InvenTree/status_codes.py:150 InvenTree/status_codes.py:173
msgid "Cancelled"
msgstr ""
-#: InvenTree/status_codes.py:143 InvenTree/status_codes.py:185
-#: InvenTree/status_codes.py:227
+#: InvenTree/status_codes.py:16 InvenTree/status_codes.py:44
+#: InvenTree/status_codes.py:71
msgid "Lost"
msgstr ""
-#: InvenTree/status_codes.py:144 InvenTree/status_codes.py:186
+#: InvenTree/status_codes.py:17 InvenTree/status_codes.py:45
+#: InvenTree/status_codes.py:73
msgid "Returned"
msgstr ""
-#: InvenTree/status_codes.py:182 InvenTree/status_codes.py:398
+#: InvenTree/status_codes.py:41 InvenTree/status_codes.py:170
msgid "In Progress"
msgstr ""
-#: InvenTree/status_codes.py:183 order/models.py:1329
+#: InvenTree/status_codes.py:42 order/models.py:1332
#: templates/js/translated/sales_order.js:1509
#: templates/js/translated/sales_order.js:1630
#: templates/js/translated/sales_order.js:1934
msgid "Shipped"
msgstr ""
-#: InvenTree/status_codes.py:223
+#: InvenTree/status_codes.py:66
msgid "OK"
msgstr ""
-#: InvenTree/status_codes.py:224
+#: InvenTree/status_codes.py:67
msgid "Attention needed"
msgstr ""
-#: InvenTree/status_codes.py:225
+#: InvenTree/status_codes.py:68
msgid "Damaged"
msgstr ""
-#: InvenTree/status_codes.py:226
+#: InvenTree/status_codes.py:69
msgid "Destroyed"
msgstr ""
-#: InvenTree/status_codes.py:228
+#: InvenTree/status_codes.py:70
msgid "Rejected"
msgstr ""
-#: InvenTree/status_codes.py:229
+#: InvenTree/status_codes.py:72
msgid "Quarantined"
msgstr ""
-#: InvenTree/status_codes.py:308
+#: InvenTree/status_codes.py:91
msgid "Legacy stock tracking entry"
msgstr ""
-#: InvenTree/status_codes.py:310 templates/js/translated/stock.js:511
+#: InvenTree/status_codes.py:93 templates/js/translated/stock.js:511
msgid "Stock item created"
msgstr ""
-#: InvenTree/status_codes.py:312
+#: InvenTree/status_codes.py:96
msgid "Edited stock item"
msgstr ""
-#: InvenTree/status_codes.py:313
+#: InvenTree/status_codes.py:97
msgid "Assigned serial number"
msgstr ""
-#: InvenTree/status_codes.py:315
+#: InvenTree/status_codes.py:100
msgid "Stock counted"
msgstr ""
-#: InvenTree/status_codes.py:316
+#: InvenTree/status_codes.py:101
msgid "Stock manually added"
msgstr ""
-#: InvenTree/status_codes.py:317
+#: InvenTree/status_codes.py:102
msgid "Stock manually removed"
msgstr ""
-#: InvenTree/status_codes.py:319
+#: InvenTree/status_codes.py:105
msgid "Location changed"
msgstr ""
-#: InvenTree/status_codes.py:320
+#: InvenTree/status_codes.py:106
msgid "Stock updated"
msgstr ""
-#: InvenTree/status_codes.py:322
+#: InvenTree/status_codes.py:109
msgid "Installed into assembly"
msgstr ""
-#: InvenTree/status_codes.py:323
+#: InvenTree/status_codes.py:110
msgid "Removed from assembly"
msgstr ""
-#: InvenTree/status_codes.py:325
+#: InvenTree/status_codes.py:112
msgid "Installed component item"
msgstr ""
-#: InvenTree/status_codes.py:326
+#: InvenTree/status_codes.py:113
msgid "Removed component item"
msgstr ""
-#: InvenTree/status_codes.py:328
+#: InvenTree/status_codes.py:116
msgid "Split from parent item"
msgstr ""
-#: InvenTree/status_codes.py:329
+#: InvenTree/status_codes.py:117
msgid "Split child item"
msgstr ""
-#: InvenTree/status_codes.py:331 templates/js/translated/stock.js:2243
+#: InvenTree/status_codes.py:120 templates/js/translated/stock.js:2243
msgid "Merged stock items"
msgstr ""
-#: InvenTree/status_codes.py:333
+#: InvenTree/status_codes.py:123
msgid "Converted to variant"
msgstr ""
-#: InvenTree/status_codes.py:335 templates/js/translated/table_filters.js:321
-msgid "Sent to customer"
-msgstr ""
-
-#: InvenTree/status_codes.py:336
-msgid "Returned from customer"
-msgstr ""
-
-#: InvenTree/status_codes.py:338
+#: InvenTree/status_codes.py:126
msgid "Build order output created"
msgstr ""
-#: InvenTree/status_codes.py:339
+#: InvenTree/status_codes.py:127
msgid "Build order output completed"
msgstr ""
-#: InvenTree/status_codes.py:340
+#: InvenTree/status_codes.py:128
msgid "Build order output rejected"
msgstr ""
-#: InvenTree/status_codes.py:341 templates/js/translated/stock.js:1676
+#: InvenTree/status_codes.py:129 templates/js/translated/stock.js:1676
msgid "Consumed by build order"
msgstr ""
-#: InvenTree/status_codes.py:343
+#: InvenTree/status_codes.py:132
msgid "Shipped against Sales Order"
msgstr ""
-#: InvenTree/status_codes.py:345
+#: InvenTree/status_codes.py:135
msgid "Received against Purchase Order"
msgstr ""
-#: InvenTree/status_codes.py:347
+#: InvenTree/status_codes.py:138
msgid "Returned against Return Order"
msgstr ""
-#: InvenTree/status_codes.py:361
+#: InvenTree/status_codes.py:141 templates/js/translated/table_filters.js:321
+msgid "Sent to customer"
+msgstr ""
+
+#: InvenTree/status_codes.py:142
+msgid "Returned from customer"
+msgstr ""
+
+#: InvenTree/status_codes.py:149
msgid "Production"
msgstr ""
-#: InvenTree/status_codes.py:433
+#: InvenTree/status_codes.py:191
msgid "Return"
msgstr ""
-#: InvenTree/status_codes.py:434
+#: InvenTree/status_codes.py:194
msgid "Repair"
msgstr ""
-#: InvenTree/status_codes.py:435
-msgid "Refund"
-msgstr ""
-
-#: InvenTree/status_codes.py:436
+#: InvenTree/status_codes.py:197
msgid "Replace"
msgstr ""
-#: InvenTree/status_codes.py:437
+#: InvenTree/status_codes.py:200
+msgid "Refund"
+msgstr ""
+
+#: InvenTree/status_codes.py:203
msgid "Reject"
msgstr ""
@@ -855,7 +858,7 @@ msgstr ""
msgid "About InvenTree"
msgstr ""
-#: build/api.py:221
+#: build/api.py:222
msgid "Build must be cancelled before it can be deleted"
msgstr ""
@@ -887,9 +890,9 @@ msgstr ""
msgid "Build Order Reference"
msgstr ""
-#: build/models.py:156 order/models.py:356 order/models.py:762
-#: order/models.py:1084 order/models.py:1721 part/admin.py:278
-#: part/models.py:3797 part/templates/part/upload_bom.html:54
+#: build/models.py:156 order/models.py:359 order/models.py:765
+#: order/models.py:1087 order/models.py:1724 part/admin.py:278
+#: part/models.py:3798 part/templates/part/upload_bom.html:54
#: report/templates/report/inventree_bill_of_materials_report.html:139
#: report/templates/report/inventree_po_report_base.html:28
#: report/templates/report/inventree_return_order_report_base.html:26
@@ -918,11 +921,11 @@ msgstr ""
#: build/models.py:181 build/templates/build/build_base.html:98
#: build/templates/build/detail.html:29 company/models.py:775
-#: order/models.py:1192 order/models.py:1308 order/models.py:1309
-#: part/models.py:390 part/models.py:2864 part/models.py:2978
-#: part/models.py:3118 part/models.py:3137 part/models.py:3156
-#: part/models.py:3177 part/models.py:3269 part/models.py:3554
-#: part/models.py:3662 part/models.py:3762 part/models.py:4076
+#: order/models.py:1195 order/models.py:1311 order/models.py:1312
+#: part/models.py:391 part/models.py:2865 part/models.py:2979
+#: part/models.py:3119 part/models.py:3138 part/models.py:3157
+#: part/models.py:3178 part/models.py:3270 part/models.py:3555
+#: part/models.py:3663 part/models.py:3763 part/models.py:4077
#: part/serializers.py:842 part/serializers.py:1245
#: part/templates/part/part_app_base.html:8
#: part/templates/part/part_pricing.html:12
@@ -1020,7 +1023,7 @@ msgstr ""
msgid "Build status code"
msgstr ""
-#: build/models.py:246 build/serializers.py:269 order/serializers.py:505
+#: build/models.py:246 build/serializers.py:269 order/serializers.py:506
#: stock/models.py:739 templates/js/translated/purchase_order.js:1099
msgid "Batch Code"
msgstr ""
@@ -1029,7 +1032,7 @@ msgstr ""
msgid "Batch code for this build output"
msgstr ""
-#: build/models.py:253 order/models.py:241 part/models.py:1037
+#: build/models.py:253 order/models.py:244 part/models.py:1038
#: part/templates/part/part_base.html:312
#: templates/js/translated/return_order.js:327
#: templates/js/translated/sales_order.js:815
@@ -1044,7 +1047,7 @@ msgstr ""
msgid "Target date for build completion. Build will be overdue after this date."
msgstr ""
-#: build/models.py:261 order/models.py:406 order/models.py:1764
+#: build/models.py:261 order/models.py:409 order/models.py:1767
#: templates/js/translated/build.js:2953
msgid "Completion Date"
msgstr ""
@@ -1062,10 +1065,10 @@ msgid "User who issued this build order"
msgstr ""
#: build/models.py:284 build/templates/build/build_base.html:204
-#: build/templates/build/detail.html:122 order/models.py:255
+#: build/templates/build/detail.html:122 order/models.py:258
#: order/templates/order/order_base.html:214
#: order/templates/order/return_order_base.html:182
-#: order/templates/order/sales_order_base.html:222 part/models.py:1041
+#: order/templates/order/sales_order_base.html:222 part/models.py:1042
#: part/templates/part/part_base.html:392
#: report/templates/report/inventree_build_order_base.html:158
#: templates/js/translated/build.js:2925
@@ -1120,9 +1123,9 @@ msgid "Build output does not match Build Order"
msgstr ""
#: build/models.py:815 build/serializers.py:212 build/serializers.py:251
-#: build/serializers.py:811 order/models.py:437 order/serializers.py:378
-#: order/serializers.py:500 part/serializers.py:1087 part/serializers.py:1408
-#: stock/models.py:593 stock/models.py:1386 stock/serializers.py:315
+#: build/serializers.py:811 order/models.py:440 order/serializers.py:379
+#: order/serializers.py:501 part/serializers.py:1087 part/serializers.py:1408
+#: stock/models.py:593 stock/models.py:1387 stock/serializers.py:315
msgid "Quantity must be greater than zero"
msgstr ""
@@ -1139,11 +1142,11 @@ msgstr ""
msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})"
msgstr ""
-#: build/models.py:1291 order/models.py:1598
+#: build/models.py:1291 order/models.py:1601
msgid "Stock item is over-allocated"
msgstr ""
-#: build/models.py:1297 order/models.py:1601
+#: build/models.py:1297 order/models.py:1604
msgid "Allocation quantity must be greater than zero"
msgstr ""
@@ -1165,8 +1168,8 @@ msgstr ""
msgid "Build to allocate parts"
msgstr ""
-#: build/models.py:1455 build/serializers.py:791 order/serializers.py:1058
-#: order/serializers.py:1079 stock/serializers.py:413 stock/serializers.py:770
+#: build/models.py:1455 build/serializers.py:791 order/serializers.py:1059
+#: order/serializers.py:1080 stock/serializers.py:413 stock/serializers.py:770
#: stock/serializers.py:896 stock/templates/stock/item_base.html:10
#: stock/templates/stock/item_base.html:23
#: stock/templates/stock/item_base.html:195
@@ -1189,10 +1192,10 @@ msgstr ""
#: build/models.py:1468 build/serializers.py:198 build/serializers.py:236
#: build/templates/build/build_base.html:103
-#: build/templates/build/detail.html:34 common/models.py:2176
-#: order/models.py:1070 order/models.py:1642 order/serializers.py:1232
+#: build/templates/build/detail.html:34 common/models.py:2169
+#: order/models.py:1073 order/models.py:1645 order/serializers.py:1233
#: order/templates/order/order_wizard/match_parts.html:30 part/admin.py:277
-#: part/forms.py:47 part/models.py:2991 part/models.py:3778
+#: part/forms.py:47 part/models.py:2992 part/models.py:3779
#: part/templates/part/part_pricing.html:16
#: part/templates/part/upload_bom.html:53
#: report/templates/report/inventree_bill_of_materials_report.html:138
@@ -1279,7 +1282,7 @@ msgstr ""
msgid "Integer quantity required, as the bill of materials contains trackable parts"
msgstr ""
-#: build/serializers.py:276 order/serializers.py:513 order/serializers.py:1236
+#: build/serializers.py:276 order/serializers.py:514 order/serializers.py:1237
#: stock/serializers.py:324 templates/js/translated/purchase_order.js:1123
#: templates/js/translated/stock.js:334 templates/js/translated/stock.js:532
msgid "Serial Numbers"
@@ -1297,7 +1300,7 @@ msgstr ""
msgid "Automatically allocate required items with matching serial numbers"
msgstr ""
-#: build/serializers.py:326 stock/api.py:669
+#: build/serializers.py:326 stock/api.py:670
msgid "The following serial numbers already exist or are invalid"
msgstr ""
@@ -1305,8 +1308,8 @@ msgstr ""
msgid "A list of build outputs must be provided"
msgstr ""
-#: build/serializers.py:415 build/serializers.py:488 order/serializers.py:486
-#: order/serializers.py:605 order/serializers.py:1587 part/serializers.py:854
+#: build/serializers.py:415 build/serializers.py:488 order/serializers.py:487
+#: order/serializers.py:606 order/serializers.py:1588 part/serializers.py:854
#: stock/serializers.py:335 stock/serializers.py:470 stock/serializers.py:551
#: stock/serializers.py:931 stock/serializers.py:1173
#: stock/templates/stock/item_base.html:390
@@ -1346,8 +1349,8 @@ msgid "Location for completed build outputs"
msgstr ""
#: build/serializers.py:495 build/templates/build/build_base.html:151
-#: build/templates/build/detail.html:62 order/models.py:788
-#: order/models.py:1747 order/serializers.py:523 stock/admin.py:106
+#: build/templates/build/detail.html:62 order/models.py:791
+#: order/models.py:1750 order/serializers.py:524 stock/admin.py:106
#: stock/templates/stock/item_base.html:423
#: templates/js/translated/barcode.js:252 templates/js/translated/build.js:2897
#: templates/js/translated/purchase_order.js:1278
@@ -1419,7 +1422,7 @@ msgstr ""
msgid "Required stock has not been fully allocated"
msgstr ""
-#: build/serializers.py:664 order/serializers.py:260 order/serializers.py:1126
+#: build/serializers.py:664 order/serializers.py:261 order/serializers.py:1127
msgid "Accept Incomplete"
msgstr ""
@@ -1435,8 +1438,8 @@ msgstr ""
msgid "Build order has incomplete outputs"
msgstr ""
-#: build/serializers.py:714 build/serializers.py:768 part/models.py:3685
-#: part/models.py:4068
+#: build/serializers.py:714 build/serializers.py:768 part/models.py:3686
+#: part/models.py:4069
msgid "BOM Item"
msgstr ""
@@ -1456,7 +1459,7 @@ msgstr ""
msgid "Item must be in stock"
msgstr ""
-#: build/serializers.py:846 order/serializers.py:1116
+#: build/serializers.py:846 order/serializers.py:1117
#, python-brace-format
msgid "Available quantity ({q}) exceeded"
msgstr ""
@@ -1473,7 +1476,7 @@ msgstr ""
msgid "This stock item has already been allocated to this build output"
msgstr ""
-#: build/serializers.py:887 order/serializers.py:1400
+#: build/serializers.py:887 order/serializers.py:1401
msgid "Allocation items must be provided"
msgstr ""
@@ -1637,8 +1640,8 @@ msgid "Stock has not been fully allocated to this Build Order"
msgstr ""
#: build/templates/build/build_base.html:160
-#: build/templates/build/detail.html:138 order/models.py:237
-#: order/models.py:1096 order/templates/order/order_base.html:190
+#: build/templates/build/detail.html:138 order/models.py:240
+#: order/models.py:1099 order/templates/order/order_base.html:190
#: order/templates/order/return_order_base.html:165
#: order/templates/order/sales_order_base.html:193
#: report/templates/report/inventree_build_order_base.html:125
@@ -1677,8 +1680,8 @@ msgid "Completed"
msgstr ""
#: build/templates/build/build_base.html:190
-#: build/templates/build/detail.html:101 order/api.py:1451 order/models.py:1301
-#: order/models.py:1400 order/models.py:1548
+#: build/templates/build/detail.html:101 order/api.py:1454 order/models.py:1304
+#: order/models.py:1403 order/models.py:1551
#: order/templates/order/sales_order_base.html:9
#: order/templates/order/sales_order_base.html:28
#: report/templates/report/inventree_build_order_base.html:135
@@ -1727,7 +1730,7 @@ msgstr ""
msgid "Stock can be taken from any available location."
msgstr ""
-#: build/templates/build/detail.html:49 order/models.py:1219
+#: build/templates/build/detail.html:49 order/models.py:1222
#: templates/js/translated/purchase_order.js:2157
msgid "Destination"
msgstr ""
@@ -1966,7 +1969,7 @@ msgstr ""
msgid "Timestamp of last update"
msgstr ""
-#: common/models.py:104 order/admin.py:17 order/models.py:231
+#: common/models.py:104 order/admin.py:17 order/models.py:234
#: templates/InvenTree/settings/settings_staff_js.html:70
#: templates/js/translated/purchase_order.js:1670
#: templates/js/translated/return_order.js:306
@@ -2127,7 +2130,7 @@ msgstr ""
#: common/models.py:1028 common/models.py:1046 common/models.py:1053
#: common/models.py:1064 common/models.py:1075 common/models.py:1299
-#: common/models.py:1323 common/models.py:1446 common/models.py:1695
+#: common/models.py:1323 common/models.py:1446 common/models.py:1688
msgid "days"
msgstr ""
@@ -2259,7 +2262,7 @@ msgstr ""
msgid "Copy category parameter templates when creating a part"
msgstr ""
-#: common/models.py:1162 part/admin.py:55 part/models.py:3559
+#: common/models.py:1162 part/admin.py:55 part/models.py:3560
#: report/models.py:166 templates/js/translated/table_filters.js:109
#: templates/js/translated/table_filters.js:680
msgid "Template"
@@ -2269,7 +2272,7 @@ msgstr ""
msgid "Parts are templates by default"
msgstr ""
-#: common/models.py:1169 part/admin.py:51 part/admin.py:283 part/models.py:995
+#: common/models.py:1169 part/admin.py:51 part/admin.py:283 part/models.py:996
#: templates/js/translated/bom.js:1598
#: templates/js/translated/table_filters.js:276
#: templates/js/translated/table_filters.js:634
@@ -2280,7 +2283,7 @@ msgstr ""
msgid "Parts can be assembled from other components by default"
msgstr ""
-#: common/models.py:1176 part/admin.py:52 part/models.py:1001
+#: common/models.py:1176 part/admin.py:52 part/models.py:1002
#: templates/js/translated/table_filters.js:642
msgid "Component"
msgstr ""
@@ -2289,7 +2292,7 @@ msgstr ""
msgid "Parts can be used as sub-components by default"
msgstr ""
-#: common/models.py:1183 part/admin.py:53 part/models.py:1012
+#: common/models.py:1183 part/admin.py:53 part/models.py:1013
msgid "Purchaseable"
msgstr ""
@@ -2297,7 +2300,7 @@ msgstr ""
msgid "Parts are purchaseable by default"
msgstr ""
-#: common/models.py:1190 part/admin.py:54 part/models.py:1017
+#: common/models.py:1190 part/admin.py:54 part/models.py:1018
#: templates/js/translated/table_filters.js:668
msgid "Salable"
msgstr ""
@@ -2306,7 +2309,7 @@ msgstr ""
msgid "Parts are salable by default"
msgstr ""
-#: common/models.py:1197 part/admin.py:56 part/models.py:1007
+#: common/models.py:1197 part/admin.py:56 part/models.py:1008
#: templates/js/translated/table_filters.js:117
#: templates/js/translated/table_filters.js:193
#: templates/js/translated/table_filters.js:684
@@ -2317,7 +2320,7 @@ msgstr ""
msgid "Parts are trackable by default"
msgstr ""
-#: common/models.py:1204 part/admin.py:57 part/models.py:1027
+#: common/models.py:1204 part/admin.py:57 part/models.py:1028
#: part/templates/part/part_base.html:156
#: templates/js/translated/table_filters.js:113
#: templates/js/translated/table_filters.js:688
@@ -2768,547 +2771,539 @@ msgstr ""
msgid "Check that all plugins are installed on startup - enable in container environments"
msgstr ""
-#: common/models.py:1620
-msgid "Check plugin signatures"
-msgstr ""
-
#: common/models.py:1621
-msgid "Check and show signatures for plugins"
-msgstr ""
-
-#: common/models.py:1628
msgid "Enable URL integration"
msgstr ""
-#: common/models.py:1629
+#: common/models.py:1622
msgid "Enable plugins to add URL routes"
msgstr ""
-#: common/models.py:1636
+#: common/models.py:1629
msgid "Enable navigation integration"
msgstr ""
-#: common/models.py:1637
+#: common/models.py:1630
msgid "Enable plugins to integrate into navigation"
msgstr ""
-#: common/models.py:1644
+#: common/models.py:1637
msgid "Enable app integration"
msgstr ""
-#: common/models.py:1645
+#: common/models.py:1638
msgid "Enable plugins to add apps"
msgstr ""
-#: common/models.py:1652
+#: common/models.py:1645
msgid "Enable schedule integration"
msgstr ""
-#: common/models.py:1653
+#: common/models.py:1646
msgid "Enable plugins to run scheduled tasks"
msgstr ""
-#: common/models.py:1660
+#: common/models.py:1653
msgid "Enable event integration"
msgstr ""
-#: common/models.py:1661
+#: common/models.py:1654
msgid "Enable plugins to respond to internal events"
msgstr ""
-#: common/models.py:1668
+#: common/models.py:1661
msgid "Enable project codes"
msgstr ""
-#: common/models.py:1669
+#: common/models.py:1662
msgid "Enable project codes for tracking projects"
msgstr ""
-#: common/models.py:1675
+#: common/models.py:1668
msgid "Stocktake Functionality"
msgstr ""
-#: common/models.py:1676
+#: common/models.py:1669
msgid "Enable stocktake functionality for recording stock levels and calculating stock value"
msgstr ""
-#: common/models.py:1682
+#: common/models.py:1675
msgid "Automatic Stocktake Period"
msgstr ""
-#: common/models.py:1683
+#: common/models.py:1676
msgid "Number of days between automatic stocktake recording (set to zero to disable)"
msgstr ""
-#: common/models.py:1692
+#: common/models.py:1685
msgid "Report Deletion Interval"
msgstr ""
-#: common/models.py:1693
+#: common/models.py:1686
msgid "Stocktake reports will be deleted after specified number of days"
msgstr ""
-#: common/models.py:1710 common/models.py:2147
+#: common/models.py:1703 common/models.py:2140
msgid "Settings key (must be unique - case insensitive"
msgstr ""
-#: common/models.py:1729
+#: common/models.py:1722
msgid "No Printer (Export to PDF)"
msgstr ""
-#: common/models.py:1751
+#: common/models.py:1744
msgid "Hide inactive parts"
msgstr ""
-#: common/models.py:1752
+#: common/models.py:1745
msgid "Hide inactive parts in results displayed on the homepage"
msgstr ""
-#: common/models.py:1758
+#: common/models.py:1751
msgid "Show subscribed parts"
msgstr ""
-#: common/models.py:1759
+#: common/models.py:1752
msgid "Show subscribed parts on the homepage"
msgstr ""
-#: common/models.py:1765
+#: common/models.py:1758
msgid "Show subscribed categories"
msgstr ""
-#: common/models.py:1766
+#: common/models.py:1759
msgid "Show subscribed part categories on the homepage"
msgstr ""
-#: common/models.py:1772
+#: common/models.py:1765
msgid "Show latest parts"
msgstr ""
-#: common/models.py:1773
+#: common/models.py:1766
msgid "Show latest parts on the homepage"
msgstr ""
-#: common/models.py:1779
+#: common/models.py:1772
msgid "Recent Part Count"
msgstr ""
-#: common/models.py:1780
+#: common/models.py:1773
msgid "Number of recent parts to display on index page"
msgstr ""
-#: common/models.py:1786
+#: common/models.py:1779
msgid "Show unvalidated BOMs"
msgstr ""
-#: common/models.py:1787
+#: common/models.py:1780
msgid "Show BOMs that await validation on the homepage"
msgstr ""
-#: common/models.py:1793
+#: common/models.py:1786
msgid "Show recent stock changes"
msgstr ""
-#: common/models.py:1794
+#: common/models.py:1787
msgid "Show recently changed stock items on the homepage"
msgstr ""
-#: common/models.py:1800
+#: common/models.py:1793
msgid "Recent Stock Count"
msgstr ""
-#: common/models.py:1801
+#: common/models.py:1794
msgid "Number of recent stock items to display on index page"
msgstr ""
-#: common/models.py:1807
+#: common/models.py:1800
msgid "Show low stock"
msgstr ""
-#: common/models.py:1808
+#: common/models.py:1801
msgid "Show low stock items on the homepage"
msgstr ""
-#: common/models.py:1814
+#: common/models.py:1807
msgid "Show depleted stock"
msgstr ""
-#: common/models.py:1815
+#: common/models.py:1808
msgid "Show depleted stock items on the homepage"
msgstr ""
-#: common/models.py:1821
+#: common/models.py:1814
msgid "Show needed stock"
msgstr ""
-#: common/models.py:1822
+#: common/models.py:1815
msgid "Show stock items needed for builds on the homepage"
msgstr ""
-#: common/models.py:1828
+#: common/models.py:1821
msgid "Show expired stock"
msgstr ""
-#: common/models.py:1829
+#: common/models.py:1822
msgid "Show expired stock items on the homepage"
msgstr ""
-#: common/models.py:1835
+#: common/models.py:1828
msgid "Show stale stock"
msgstr ""
-#: common/models.py:1836
+#: common/models.py:1829
msgid "Show stale stock items on the homepage"
msgstr ""
-#: common/models.py:1842
+#: common/models.py:1835
msgid "Show pending builds"
msgstr ""
-#: common/models.py:1843
+#: common/models.py:1836
msgid "Show pending builds on the homepage"
msgstr ""
-#: common/models.py:1849
+#: common/models.py:1842
msgid "Show overdue builds"
msgstr ""
-#: common/models.py:1850
+#: common/models.py:1843
msgid "Show overdue builds on the homepage"
msgstr ""
-#: common/models.py:1856
+#: common/models.py:1849
msgid "Show outstanding POs"
msgstr ""
-#: common/models.py:1857
+#: common/models.py:1850
msgid "Show outstanding POs on the homepage"
msgstr ""
-#: common/models.py:1863
+#: common/models.py:1856
msgid "Show overdue POs"
msgstr ""
-#: common/models.py:1864
+#: common/models.py:1857
msgid "Show overdue POs on the homepage"
msgstr ""
-#: common/models.py:1870
+#: common/models.py:1863
msgid "Show outstanding SOs"
msgstr ""
-#: common/models.py:1871
+#: common/models.py:1864
msgid "Show outstanding SOs on the homepage"
msgstr ""
-#: common/models.py:1877
+#: common/models.py:1870
msgid "Show overdue SOs"
msgstr ""
-#: common/models.py:1878
+#: common/models.py:1871
msgid "Show overdue SOs on the homepage"
msgstr ""
-#: common/models.py:1884
+#: common/models.py:1877
msgid "Show pending SO shipments"
msgstr ""
-#: common/models.py:1885
+#: common/models.py:1878
msgid "Show pending SO shipments on the homepage"
msgstr ""
-#: common/models.py:1891
+#: common/models.py:1884
msgid "Show News"
msgstr ""
-#: common/models.py:1892
+#: common/models.py:1885
msgid "Show news on the homepage"
msgstr ""
-#: common/models.py:1898
+#: common/models.py:1891
msgid "Inline label display"
msgstr ""
-#: common/models.py:1899
+#: common/models.py:1892
msgid "Display PDF labels in the browser, instead of downloading as a file"
msgstr ""
-#: common/models.py:1905
+#: common/models.py:1898
msgid "Default label printer"
msgstr ""
-#: common/models.py:1906
+#: common/models.py:1899
msgid "Configure which label printer should be selected by default"
msgstr ""
-#: common/models.py:1912
+#: common/models.py:1905
msgid "Inline report display"
msgstr ""
-#: common/models.py:1913
+#: common/models.py:1906
msgid "Display PDF reports in the browser, instead of downloading as a file"
msgstr ""
-#: common/models.py:1919
+#: common/models.py:1912
msgid "Search Parts"
msgstr ""
-#: common/models.py:1920
+#: common/models.py:1913
msgid "Display parts in search preview window"
msgstr ""
-#: common/models.py:1926
+#: common/models.py:1919
msgid "Search Supplier Parts"
msgstr ""
-#: common/models.py:1927
+#: common/models.py:1920
msgid "Display supplier parts in search preview window"
msgstr ""
-#: common/models.py:1933
+#: common/models.py:1926
msgid "Search Manufacturer Parts"
msgstr ""
-#: common/models.py:1934
+#: common/models.py:1927
msgid "Display manufacturer parts in search preview window"
msgstr ""
-#: common/models.py:1940
+#: common/models.py:1933
msgid "Hide Inactive Parts"
msgstr ""
-#: common/models.py:1941
+#: common/models.py:1934
msgid "Excluded inactive parts from search preview window"
msgstr ""
-#: common/models.py:1947
+#: common/models.py:1940
msgid "Search Categories"
msgstr ""
-#: common/models.py:1948
+#: common/models.py:1941
msgid "Display part categories in search preview window"
msgstr ""
-#: common/models.py:1954
+#: common/models.py:1947
msgid "Search Stock"
msgstr ""
-#: common/models.py:1955
+#: common/models.py:1948
msgid "Display stock items in search preview window"
msgstr ""
-#: common/models.py:1961
+#: common/models.py:1954
msgid "Hide Unavailable Stock Items"
msgstr ""
-#: common/models.py:1962
+#: common/models.py:1955
msgid "Exclude stock items which are not available from the search preview window"
msgstr ""
-#: common/models.py:1968
+#: common/models.py:1961
msgid "Search Locations"
msgstr ""
-#: common/models.py:1969
+#: common/models.py:1962
msgid "Display stock locations in search preview window"
msgstr ""
-#: common/models.py:1975
+#: common/models.py:1968
msgid "Search Companies"
msgstr ""
-#: common/models.py:1976
+#: common/models.py:1969
msgid "Display companies in search preview window"
msgstr ""
-#: common/models.py:1982
+#: common/models.py:1975
msgid "Search Build Orders"
msgstr ""
-#: common/models.py:1983
+#: common/models.py:1976
msgid "Display build orders in search preview window"
msgstr ""
-#: common/models.py:1989
+#: common/models.py:1982
msgid "Search Purchase Orders"
msgstr ""
-#: common/models.py:1990
+#: common/models.py:1983
msgid "Display purchase orders in search preview window"
msgstr ""
-#: common/models.py:1996
+#: common/models.py:1989
msgid "Exclude Inactive Purchase Orders"
msgstr ""
-#: common/models.py:1997
+#: common/models.py:1990
msgid "Exclude inactive purchase orders from search preview window"
msgstr ""
-#: common/models.py:2003
+#: common/models.py:1996
msgid "Search Sales Orders"
msgstr ""
-#: common/models.py:2004
+#: common/models.py:1997
msgid "Display sales orders in search preview window"
msgstr ""
-#: common/models.py:2010
+#: common/models.py:2003
msgid "Exclude Inactive Sales Orders"
msgstr ""
-#: common/models.py:2011
+#: common/models.py:2004
msgid "Exclude inactive sales orders from search preview window"
msgstr ""
-#: common/models.py:2017
+#: common/models.py:2010
msgid "Search Return Orders"
msgstr ""
-#: common/models.py:2018
+#: common/models.py:2011
msgid "Display return orders in search preview window"
msgstr ""
-#: common/models.py:2024
+#: common/models.py:2017
msgid "Exclude Inactive Return Orders"
msgstr ""
-#: common/models.py:2025
+#: common/models.py:2018
msgid "Exclude inactive return orders from search preview window"
msgstr ""
-#: common/models.py:2031
+#: common/models.py:2024
msgid "Search Preview Results"
msgstr ""
-#: common/models.py:2032
+#: common/models.py:2025
msgid "Number of results to show in each section of the search preview window"
msgstr ""
-#: common/models.py:2038
+#: common/models.py:2031
msgid "Regex Search"
msgstr ""
-#: common/models.py:2039
+#: common/models.py:2032
msgid "Enable regular expressions in search queries"
msgstr ""
-#: common/models.py:2045
+#: common/models.py:2038
msgid "Whole Word Search"
msgstr ""
-#: common/models.py:2046
+#: common/models.py:2039
msgid "Search queries return results for whole word matches"
msgstr ""
-#: common/models.py:2052
+#: common/models.py:2045
msgid "Show Quantity in Forms"
msgstr ""
-#: common/models.py:2053
+#: common/models.py:2046
msgid "Display available part quantity in some forms"
msgstr ""
-#: common/models.py:2059
+#: common/models.py:2052
msgid "Escape Key Closes Forms"
msgstr ""
-#: common/models.py:2060
+#: common/models.py:2053
msgid "Use the escape key to close modal forms"
msgstr ""
-#: common/models.py:2066
+#: common/models.py:2059
msgid "Fixed Navbar"
msgstr ""
-#: common/models.py:2067
+#: common/models.py:2060
msgid "The navbar position is fixed to the top of the screen"
msgstr ""
-#: common/models.py:2073
+#: common/models.py:2066
msgid "Date Format"
msgstr ""
-#: common/models.py:2074
+#: common/models.py:2067
msgid "Preferred format for displaying dates"
msgstr ""
-#: common/models.py:2088 part/templates/part/detail.html:41
+#: common/models.py:2081 part/templates/part/detail.html:41
msgid "Part Scheduling"
msgstr ""
-#: common/models.py:2089
+#: common/models.py:2082
msgid "Display part scheduling information"
msgstr ""
-#: common/models.py:2095 part/templates/part/detail.html:62
+#: common/models.py:2088 part/templates/part/detail.html:62
msgid "Part Stocktake"
msgstr ""
-#: common/models.py:2096
+#: common/models.py:2089
msgid "Display part stocktake information (if stocktake functionality is enabled)"
msgstr ""
-#: common/models.py:2102
+#: common/models.py:2095
msgid "Table String Length"
msgstr ""
-#: common/models.py:2103
+#: common/models.py:2096
msgid "Maximimum length limit for strings displayed in table views"
msgstr ""
-#: common/models.py:2112
+#: common/models.py:2105
msgid "Default part label template"
msgstr ""
-#: common/models.py:2113
+#: common/models.py:2106
msgid "The part label template to be automatically selected"
msgstr ""
-#: common/models.py:2121
+#: common/models.py:2114
msgid "Default stock item template"
msgstr ""
-#: common/models.py:2122
+#: common/models.py:2115
msgid "The stock item label template to be automatically selected"
msgstr ""
-#: common/models.py:2130
+#: common/models.py:2123
msgid "Default stock location label template"
msgstr ""
-#: common/models.py:2131
+#: common/models.py:2124
msgid "The stock location label template to be automatically selected"
msgstr ""
-#: common/models.py:2177
+#: common/models.py:2170
msgid "Price break quantity"
msgstr ""
-#: common/models.py:2184 company/serializers.py:434 order/admin.py:43
-#: order/models.py:1129 order/models.py:1936
+#: common/models.py:2177 company/serializers.py:434 order/admin.py:43
+#: order/models.py:1132 order/models.py:1939
#: templates/js/translated/company.js:1433 templates/js/translated/part.js:1856
#: templates/js/translated/pricing.js:621
#: templates/js/translated/return_order.js:725
msgid "Price"
msgstr ""
-#: common/models.py:2185
+#: common/models.py:2178
msgid "Unit price at specified quantity"
msgstr ""
-#: common/models.py:2345 common/models.py:2523
+#: common/models.py:2338 common/models.py:2516
msgid "Endpoint"
msgstr ""
-#: common/models.py:2346
+#: common/models.py:2339
msgid "Endpoint at which this webhook is received"
msgstr ""
-#: common/models.py:2355
+#: common/models.py:2348
msgid "Name for this webhook"
msgstr ""
-#: common/models.py:2360 part/admin.py:50 part/models.py:1022
+#: common/models.py:2353 part/admin.py:50 part/models.py:1023
#: plugin/models.py:47 templates/js/translated/table_filters.js:105
#: templates/js/translated/table_filters.js:189
#: templates/js/translated/table_filters.js:434
@@ -3317,100 +3312,100 @@ msgstr ""
msgid "Active"
msgstr ""
-#: common/models.py:2361
+#: common/models.py:2354
msgid "Is this webhook active"
msgstr ""
-#: common/models.py:2375
+#: common/models.py:2368
msgid "Token"
msgstr ""
-#: common/models.py:2376
+#: common/models.py:2369
msgid "Token for access"
msgstr ""
-#: common/models.py:2383
+#: common/models.py:2376
msgid "Secret"
msgstr ""
-#: common/models.py:2384
+#: common/models.py:2377
msgid "Shared secret for HMAC"
msgstr ""
-#: common/models.py:2490
+#: common/models.py:2483
msgid "Message ID"
msgstr ""
-#: common/models.py:2491
+#: common/models.py:2484
msgid "Unique identifier for this message"
msgstr ""
-#: common/models.py:2499
+#: common/models.py:2492
msgid "Host"
msgstr ""
-#: common/models.py:2500
+#: common/models.py:2493
msgid "Host from which this message was received"
msgstr ""
-#: common/models.py:2507
+#: common/models.py:2500
msgid "Header"
msgstr ""
-#: common/models.py:2508
+#: common/models.py:2501
msgid "Header of this message"
msgstr ""
-#: common/models.py:2514
+#: common/models.py:2507
msgid "Body"
msgstr ""
-#: common/models.py:2515
+#: common/models.py:2508
msgid "Body of this message"
msgstr ""
-#: common/models.py:2524
+#: common/models.py:2517
msgid "Endpoint on which this message was received"
msgstr ""
-#: common/models.py:2529
+#: common/models.py:2522
msgid "Worked on"
msgstr ""
-#: common/models.py:2530
+#: common/models.py:2523
msgid "Was the work on this message finished?"
msgstr ""
-#: common/models.py:2684
+#: common/models.py:2677
msgid "Id"
msgstr ""
-#: common/models.py:2690 templates/js/translated/news.js:44
+#: common/models.py:2683 templates/js/translated/news.js:44
msgid "Title"
msgstr ""
-#: common/models.py:2700 templates/js/translated/news.js:60
+#: common/models.py:2693 templates/js/translated/news.js:60
msgid "Published"
msgstr ""
-#: common/models.py:2705 templates/InvenTree/settings/plugin_settings.html:32
+#: common/models.py:2698 templates/InvenTree/settings/plugin_settings.html:32
#: templates/js/translated/news.js:56 templates/js/translated/plugin.js:106
msgid "Author"
msgstr ""
-#: common/models.py:2710 templates/js/translated/news.js:52
+#: common/models.py:2703 templates/js/translated/news.js:52
msgid "Summary"
msgstr ""
-#: common/models.py:2715
+#: common/models.py:2708
msgid "Read"
msgstr ""
-#: common/models.py:2716
+#: common/models.py:2709
msgid "Was this news item read?"
msgstr ""
-#: common/models.py:2736 company/models.py:143 part/models.py:913
+#: common/models.py:2729 company/models.py:143 part/models.py:914
#: report/templates/report/inventree_bill_of_materials_report.html:126
#: report/templates/report/inventree_bill_of_materials_report.html:148
#: report/templates/report/inventree_return_order_report_base.html:35
@@ -3420,7 +3415,7 @@ msgstr ""
msgid "Image"
msgstr ""
-#: common/models.py:2737
+#: common/models.py:2730
msgid "Image file"
msgstr ""
@@ -3532,7 +3527,7 @@ msgid "Contact email address"
msgstr ""
#: company/models.py:129 company/templates/company/company_base.html:140
-#: order/models.py:263 order/templates/order/order_base.html:207
+#: order/models.py:266 order/templates/order/order_base.html:207
#: order/templates/order/return_order_base.html:175
#: order/templates/order/sales_order_base.html:215
msgid "Contact"
@@ -3642,7 +3637,7 @@ msgstr ""
#: company/models.py:397
#: report/templates/report/inventree_test_report_base.html:104
-#: stock/models.py:2254 templates/js/translated/company.js:872
+#: stock/models.py:2255 templates/js/translated/company.js:872
#: templates/js/translated/company.js:1077 templates/js/translated/part.js:1465
#: templates/js/translated/stock.js:1446
msgid "Value"
@@ -3653,7 +3648,7 @@ msgid "Parameter value"
msgstr ""
#: company/models.py:404 company/templates/company/supplier_part.html:169
-#: part/admin.py:40 part/models.py:986 part/models.py:3406
+#: part/admin.py:40 part/models.py:987 part/models.py:3407
#: part/templates/part/part_base.html:286
#: templates/js/translated/company.js:1083 templates/js/translated/part.js:1484
#: templates/js/translated/part.js:1588 templates/js/translated/part.js:2262
@@ -3677,7 +3672,7 @@ msgid "Linked manufacturer part must reference the same base part"
msgstr ""
#: company/models.py:564 company/templates/company/company_base.html:82
-#: company/templates/company/supplier_part.html:130 order/models.py:379
+#: company/templates/company/supplier_part.html:130 order/models.py:382
#: order/templates/order/order_base.html:140 part/bom.py:285 part/bom.py:313
#: part/serializers.py:343 stock/templates/stock/item_base.html:225
#: templates/email/overdue_purchase_order.html:16
@@ -3720,7 +3715,7 @@ msgid "Supplier part description"
msgstr ""
#: company/models.py:596 company/templates/company/supplier_part.html:188
-#: part/admin.py:279 part/models.py:3800 part/templates/part/upload_bom.html:59
+#: part/admin.py:279 part/models.py:3801 part/templates/part/upload_bom.html:59
#: report/templates/report/inventree_bill_of_materials_report.html:140
#: report/templates/report/inventree_po_report_base.html:32
#: report/templates/report/inventree_return_order_report_base.html:27
@@ -3729,11 +3724,11 @@ msgstr ""
msgid "Note"
msgstr ""
-#: company/models.py:600 part/models.py:1918
+#: company/models.py:600 part/models.py:1919
msgid "base cost"
msgstr ""
-#: company/models.py:600 part/models.py:1918
+#: company/models.py:600 part/models.py:1919
msgid "Minimum charge (e.g. stocking fee)"
msgstr ""
@@ -3763,7 +3758,7 @@ msgstr ""
msgid "Total quantity supplied in a single pack. Leave empty for single items."
msgstr ""
-#: company/models.py:624 part/models.py:1920
+#: company/models.py:624 part/models.py:1921
msgid "multiple"
msgstr ""
@@ -3854,8 +3849,8 @@ msgstr ""
msgid "Delete image"
msgstr ""
-#: company/templates/company/company_base.html:87 order/models.py:776
-#: order/models.py:1735 order/templates/order/return_order_base.html:132
+#: company/templates/company/company_base.html:87 order/models.py:779
+#: order/models.py:1738 order/templates/order/return_order_base.html:132
#: order/templates/order/sales_order_base.html:145 stock/models.py:720
#: stock/models.py:721 stock/serializers.py:825
#: stock/templates/stock/item_base.html:401
@@ -4088,7 +4083,7 @@ msgstr ""
#: part/templates/part/detail.html:393 part/templates/part/detail.html:423
#: templates/js/translated/forms.js:506 templates/js/translated/helpers.js:105
#: templates/js/translated/part.js:370 templates/js/translated/pricing.js:629
-#: templates/js/translated/stock.js:216 users/models.py:247
+#: templates/js/translated/stock.js:216 users/models.py:248
msgid "Delete"
msgstr ""
@@ -4346,7 +4341,7 @@ msgstr ""
msgid "QR code"
msgstr ""
-#: order/admin.py:30 order/models.py:70
+#: order/admin.py:30 order/models.py:73
#: report/templates/report/inventree_po_report_base.html:31
#: report/templates/report/inventree_so_report_base.html:31
#: templates/js/translated/order.js:327
@@ -4355,11 +4350,11 @@ msgstr ""
msgid "Total Price"
msgstr ""
-#: order/api.py:239
+#: order/api.py:242
msgid "No matching purchase order found"
msgstr ""
-#: order/api.py:1449 order/models.py:1175 order/models.py:1259
+#: order/api.py:1452 order/models.py:1178 order/models.py:1262
#: order/templates/order/order_base.html:9
#: order/templates/order/order_base.html:18
#: report/templates/report/inventree_po_report_base.html:14
@@ -4373,7 +4368,7 @@ msgstr ""
msgid "Purchase Order"
msgstr ""
-#: order/api.py:1453 order/models.py:1906 order/models.py:1952
+#: order/api.py:1456 order/models.py:1909 order/models.py:1955
#: order/templates/order/return_order_base.html:9
#: order/templates/order/return_order_base.html:28
#: report/templates/report/inventree_return_order_report_base.html:13
@@ -4382,188 +4377,188 @@ msgstr ""
msgid "Return Order"
msgstr ""
-#: order/api.py:1455 templates/js/translated/sales_order.js:1030
+#: order/api.py:1458 templates/js/translated/sales_order.js:1030
msgid "Unknown"
msgstr ""
-#: order/models.py:71
+#: order/models.py:74
msgid "Total price for this order"
msgstr ""
-#: order/models.py:76 order/serializers.py:48
+#: order/models.py:79 order/serializers.py:49
msgid "Order Currency"
msgstr ""
-#: order/models.py:78 order/serializers.py:49
+#: order/models.py:81 order/serializers.py:50
msgid "Currency for this order (leave blank to use company default)"
msgstr ""
-#: order/models.py:207
+#: order/models.py:210
msgid "Contact does not match selected company"
msgstr ""
-#: order/models.py:229
+#: order/models.py:232
msgid "Order description (optional)"
msgstr ""
-#: order/models.py:231
+#: order/models.py:234
msgid "Select project code for this order"
msgstr ""
-#: order/models.py:233 order/models.py:1091 order/models.py:1451
+#: order/models.py:236 order/models.py:1094 order/models.py:1454
msgid "Link to external page"
msgstr ""
-#: order/models.py:238
+#: order/models.py:241
msgid "Expected date for order delivery. Order will be overdue after this date."
msgstr ""
-#: order/models.py:247
+#: order/models.py:250
msgid "Created By"
msgstr ""
-#: order/models.py:254
+#: order/models.py:257
msgid "User or group responsible for this order"
msgstr ""
-#: order/models.py:264
+#: order/models.py:267
msgid "Point of contact for this order"
msgstr ""
-#: order/models.py:357 order/models.py:763
+#: order/models.py:360 order/models.py:766
msgid "Order reference"
msgstr ""
-#: order/models.py:365 order/models.py:788
+#: order/models.py:368 order/models.py:791
msgid "Purchase order status"
msgstr ""
-#: order/models.py:380
+#: order/models.py:383
msgid "Company from which the items are being ordered"
msgstr ""
-#: order/models.py:388 order/templates/order/order_base.html:152
+#: order/models.py:391 order/templates/order/order_base.html:152
#: templates/js/translated/purchase_order.js:1662
msgid "Supplier Reference"
msgstr ""
-#: order/models.py:388
+#: order/models.py:391
msgid "Supplier order reference code"
msgstr ""
-#: order/models.py:395
+#: order/models.py:398
msgid "received by"
msgstr ""
-#: order/models.py:400 order/models.py:1758
+#: order/models.py:403 order/models.py:1761
msgid "Issue Date"
msgstr ""
-#: order/models.py:401 order/models.py:1759
+#: order/models.py:404 order/models.py:1762
msgid "Date order was issued"
msgstr ""
-#: order/models.py:407 order/models.py:1765
+#: order/models.py:410 order/models.py:1768
msgid "Date order was completed"
msgstr ""
-#: order/models.py:442
+#: order/models.py:445
msgid "Part supplier must match PO supplier"
msgstr ""
-#: order/models.py:603
+#: order/models.py:606
msgid "Quantity must be a positive number"
msgstr ""
-#: order/models.py:777
+#: order/models.py:780
msgid "Company to which the items are being sold"
msgstr ""
-#: order/models.py:796 order/models.py:1752
+#: order/models.py:799 order/models.py:1755
msgid "Customer Reference "
msgstr ""
-#: order/models.py:796 order/models.py:1753
+#: order/models.py:799 order/models.py:1756
msgid "Customer order reference code"
msgstr ""
-#: order/models.py:798 order/models.py:1405
+#: order/models.py:801 order/models.py:1408
#: templates/js/translated/sales_order.js:831
#: templates/js/translated/sales_order.js:1012
msgid "Shipment Date"
msgstr ""
-#: order/models.py:805
+#: order/models.py:808
msgid "shipped by"
msgstr ""
-#: order/models.py:854
+#: order/models.py:857
msgid "Order cannot be completed as no parts have been assigned"
msgstr ""
-#: order/models.py:858
+#: order/models.py:861
msgid "Only an open order can be marked as complete"
msgstr ""
-#: order/models.py:861 templates/js/translated/sales_order.js:491
+#: order/models.py:864 templates/js/translated/sales_order.js:491
msgid "Order cannot be completed as there are incomplete shipments"
msgstr ""
-#: order/models.py:864
+#: order/models.py:867
msgid "Order cannot be completed as there are incomplete line items"
msgstr ""
-#: order/models.py:1071
+#: order/models.py:1074
msgid "Item quantity"
msgstr ""
-#: order/models.py:1084
+#: order/models.py:1087
msgid "Line item reference"
msgstr ""
-#: order/models.py:1086
+#: order/models.py:1089
msgid "Line item notes"
msgstr ""
-#: order/models.py:1097
+#: order/models.py:1100
msgid "Target date for this line item (leave blank to use the target date from the order)"
msgstr ""
-#: order/models.py:1115
+#: order/models.py:1118
msgid "Line item description (optional)"
msgstr ""
-#: order/models.py:1120
+#: order/models.py:1123
msgid "Context"
msgstr ""
-#: order/models.py:1121
+#: order/models.py:1124
msgid "Additional context for this line"
msgstr ""
-#: order/models.py:1130
+#: order/models.py:1133
msgid "Unit price"
msgstr ""
-#: order/models.py:1160
+#: order/models.py:1163
msgid "Supplier part must match supplier"
msgstr ""
-#: order/models.py:1168
+#: order/models.py:1171
msgid "deleted"
msgstr ""
-#: order/models.py:1174 order/models.py:1259 order/models.py:1300
-#: order/models.py:1399 order/models.py:1548 order/models.py:1905
-#: order/models.py:1952 templates/js/translated/sales_order.js:1474
+#: order/models.py:1177 order/models.py:1262 order/models.py:1303
+#: order/models.py:1402 order/models.py:1551 order/models.py:1908
+#: order/models.py:1955 templates/js/translated/sales_order.js:1474
msgid "Order"
msgstr ""
-#: order/models.py:1193
+#: order/models.py:1196
msgid "Supplier part"
msgstr ""
-#: order/models.py:1200 order/templates/order/order_base.html:200
+#: order/models.py:1203 order/templates/order/order_base.html:200
#: templates/js/translated/part.js:1841 templates/js/translated/part.js:1872
#: templates/js/translated/purchase_order.js:1276
#: templates/js/translated/purchase_order.js:2137
@@ -4573,342 +4568,342 @@ msgstr ""
msgid "Received"
msgstr ""
-#: order/models.py:1201
+#: order/models.py:1204
msgid "Number of items received"
msgstr ""
-#: order/models.py:1208 stock/models.py:823 stock/serializers.py:252
+#: order/models.py:1211 stock/models.py:823 stock/serializers.py:252
#: stock/templates/stock/item_base.html:184
#: templates/js/translated/stock.js:2047
msgid "Purchase Price"
msgstr ""
-#: order/models.py:1209
+#: order/models.py:1212
msgid "Unit purchase price"
msgstr ""
-#: order/models.py:1222
+#: order/models.py:1225
msgid "Where does the Purchaser want this item to be stored?"
msgstr ""
-#: order/models.py:1288
+#: order/models.py:1291
msgid "Virtual part cannot be assigned to a sales order"
msgstr ""
-#: order/models.py:1293
+#: order/models.py:1296
msgid "Only salable parts can be assigned to a sales order"
msgstr ""
-#: order/models.py:1319 part/templates/part/part_pricing.html:107
+#: order/models.py:1322 part/templates/part/part_pricing.html:107
#: part/templates/part/prices.html:128 templates/js/translated/pricing.js:943
msgid "Sale Price"
msgstr ""
-#: order/models.py:1320
+#: order/models.py:1323
msgid "Unit sale price"
msgstr ""
-#: order/models.py:1330
+#: order/models.py:1333
msgid "Shipped quantity"
msgstr ""
-#: order/models.py:1406
+#: order/models.py:1409
msgid "Date of shipment"
msgstr ""
-#: order/models.py:1411 templates/js/translated/sales_order.js:1024
+#: order/models.py:1414 templates/js/translated/sales_order.js:1024
msgid "Delivery Date"
msgstr ""
-#: order/models.py:1412
+#: order/models.py:1415
msgid "Date of delivery of shipment"
msgstr ""
-#: order/models.py:1419
+#: order/models.py:1422
msgid "Checked By"
msgstr ""
-#: order/models.py:1420
+#: order/models.py:1423
msgid "User who checked this shipment"
msgstr ""
-#: order/models.py:1427 order/models.py:1624 order/serializers.py:1247
-#: order/serializers.py:1375 templates/js/translated/model_renderers.js:415
+#: order/models.py:1430 order/models.py:1627 order/serializers.py:1248
+#: order/serializers.py:1376 templates/js/translated/model_renderers.js:415
msgid "Shipment"
msgstr ""
-#: order/models.py:1428
+#: order/models.py:1431
msgid "Shipment number"
msgstr ""
-#: order/models.py:1436
+#: order/models.py:1439
msgid "Tracking Number"
msgstr ""
-#: order/models.py:1437
+#: order/models.py:1440
msgid "Shipment tracking information"
msgstr ""
-#: order/models.py:1444
+#: order/models.py:1447
msgid "Invoice Number"
msgstr ""
-#: order/models.py:1445
+#: order/models.py:1448
msgid "Reference number for associated invoice"
msgstr ""
-#: order/models.py:1467
+#: order/models.py:1470
msgid "Shipment has already been sent"
msgstr ""
-#: order/models.py:1470
+#: order/models.py:1473
msgid "Shipment has no allocated stock items"
msgstr ""
-#: order/models.py:1583 order/models.py:1585
+#: order/models.py:1586 order/models.py:1588
msgid "Stock item has not been assigned"
msgstr ""
-#: order/models.py:1589
+#: order/models.py:1592
msgid "Cannot allocate stock item to a line with a different part"
msgstr ""
-#: order/models.py:1591
+#: order/models.py:1594
msgid "Cannot allocate stock to a line without a part"
msgstr ""
-#: order/models.py:1594
+#: order/models.py:1597
msgid "Allocation quantity cannot exceed stock quantity"
msgstr ""
-#: order/models.py:1604 order/serializers.py:1109
+#: order/models.py:1607 order/serializers.py:1110
msgid "Quantity must be 1 for serialized stock item"
msgstr ""
-#: order/models.py:1607
+#: order/models.py:1610
msgid "Sales order does not match shipment"
msgstr ""
-#: order/models.py:1608
+#: order/models.py:1611
msgid "Shipment does not match sales order"
msgstr ""
-#: order/models.py:1616
+#: order/models.py:1619
msgid "Line"
msgstr ""
-#: order/models.py:1625
+#: order/models.py:1628
msgid "Sales order shipment reference"
msgstr ""
-#: order/models.py:1638 order/models.py:1913
+#: order/models.py:1641 order/models.py:1916
#: templates/js/translated/return_order.js:706
msgid "Item"
msgstr ""
-#: order/models.py:1639
+#: order/models.py:1642
msgid "Select stock item to allocate"
msgstr ""
-#: order/models.py:1642
+#: order/models.py:1645
msgid "Enter stock allocation quantity"
msgstr ""
-#: order/models.py:1722
+#: order/models.py:1725
msgid "Return Order reference"
msgstr ""
-#: order/models.py:1736
+#: order/models.py:1739
msgid "Company from which items are being returned"
msgstr ""
-#: order/models.py:1747
+#: order/models.py:1750
msgid "Return order status"
msgstr ""
-#: order/models.py:1898
+#: order/models.py:1901
msgid "Only serialized items can be assigned to a Return Order"
msgstr ""
-#: order/models.py:1914
+#: order/models.py:1917
msgid "Select item to return from customer"
msgstr ""
-#: order/models.py:1919
+#: order/models.py:1922
msgid "Received Date"
msgstr ""
-#: order/models.py:1920
+#: order/models.py:1923
msgid "The date this this return item was received"
msgstr ""
-#: order/models.py:1931 templates/js/translated/return_order.js:717
+#: order/models.py:1934 templates/js/translated/return_order.js:717
#: templates/js/translated/table_filters.js:93
msgid "Outcome"
msgstr ""
-#: order/models.py:1931
+#: order/models.py:1934
msgid "Outcome for this line item"
msgstr ""
-#: order/models.py:1937
+#: order/models.py:1940
msgid "Cost associated with return or repair for this line item"
msgstr ""
-#: order/serializers.py:246
+#: order/serializers.py:247
msgid "Order cannot be cancelled"
msgstr ""
-#: order/serializers.py:261 order/serializers.py:1127
+#: order/serializers.py:262 order/serializers.py:1128
msgid "Allow order to be closed with incomplete line items"
msgstr ""
-#: order/serializers.py:272 order/serializers.py:1138
+#: order/serializers.py:273 order/serializers.py:1139
msgid "Order has incomplete line items"
msgstr ""
-#: order/serializers.py:385
+#: order/serializers.py:386
msgid "Order is not open"
msgstr ""
-#: order/serializers.py:403
+#: order/serializers.py:404
msgid "Purchase price currency"
msgstr ""
-#: order/serializers.py:421
+#: order/serializers.py:422
msgid "Supplier part must be specified"
msgstr ""
-#: order/serializers.py:426
+#: order/serializers.py:427
msgid "Purchase order must be specified"
msgstr ""
-#: order/serializers.py:432
+#: order/serializers.py:433
msgid "Supplier must match purchase order"
msgstr ""
-#: order/serializers.py:433
+#: order/serializers.py:434
msgid "Purchase order must match supplier"
msgstr ""
-#: order/serializers.py:471 order/serializers.py:1215
+#: order/serializers.py:472 order/serializers.py:1216
msgid "Line Item"
msgstr ""
-#: order/serializers.py:477
+#: order/serializers.py:478
msgid "Line item does not match purchase order"
msgstr ""
-#: order/serializers.py:487 order/serializers.py:606 order/serializers.py:1588
+#: order/serializers.py:488 order/serializers.py:607 order/serializers.py:1589
msgid "Select destination location for received items"
msgstr ""
-#: order/serializers.py:506 templates/js/translated/purchase_order.js:1100
+#: order/serializers.py:507 templates/js/translated/purchase_order.js:1100
msgid "Enter batch code for incoming stock items"
msgstr ""
-#: order/serializers.py:514 templates/js/translated/purchase_order.js:1124
+#: order/serializers.py:515 templates/js/translated/purchase_order.js:1124
msgid "Enter serial numbers for incoming stock items"
msgstr ""
-#: order/serializers.py:527 templates/js/translated/barcode.js:52
+#: order/serializers.py:528 templates/js/translated/barcode.js:52
msgid "Barcode"
msgstr ""
-#: order/serializers.py:528
+#: order/serializers.py:529
msgid "Scanned barcode"
msgstr ""
-#: order/serializers.py:544
+#: order/serializers.py:545
msgid "Barcode is already in use"
msgstr ""
-#: order/serializers.py:568
+#: order/serializers.py:569
msgid "An integer quantity must be provided for trackable parts"
msgstr ""
-#: order/serializers.py:622 order/serializers.py:1603
+#: order/serializers.py:623 order/serializers.py:1604
msgid "Line items must be provided"
msgstr ""
-#: order/serializers.py:639
+#: order/serializers.py:640
msgid "Destination location must be specified"
msgstr ""
-#: order/serializers.py:650
+#: order/serializers.py:651
msgid "Supplied barcode values must be unique"
msgstr ""
-#: order/serializers.py:949
+#: order/serializers.py:950
msgid "Sale price currency"
msgstr ""
-#: order/serializers.py:1006
+#: order/serializers.py:1007
msgid "No shipment details provided"
msgstr ""
-#: order/serializers.py:1070 order/serializers.py:1224
+#: order/serializers.py:1071 order/serializers.py:1225
msgid "Line item is not associated with this order"
msgstr ""
-#: order/serializers.py:1092
+#: order/serializers.py:1093
msgid "Quantity must be positive"
msgstr ""
-#: order/serializers.py:1237
+#: order/serializers.py:1238
msgid "Enter serial numbers to allocate"
msgstr ""
-#: order/serializers.py:1259 order/serializers.py:1383
+#: order/serializers.py:1260 order/serializers.py:1384
msgid "Shipment has already been shipped"
msgstr ""
-#: order/serializers.py:1262 order/serializers.py:1386
+#: order/serializers.py:1263 order/serializers.py:1387
msgid "Shipment is not associated with this order"
msgstr ""
-#: order/serializers.py:1316
+#: order/serializers.py:1317
msgid "No match found for the following serial numbers"
msgstr ""
-#: order/serializers.py:1326
+#: order/serializers.py:1327
msgid "The following serial numbers are already allocated"
msgstr ""
-#: order/serializers.py:1554
+#: order/serializers.py:1555
msgid "Return order line item"
msgstr ""
-#: order/serializers.py:1561
+#: order/serializers.py:1562
msgid "Line item does not match return order"
msgstr ""
-#: order/serializers.py:1564
+#: order/serializers.py:1565
msgid "Line item has already been received"
msgstr ""
-#: order/serializers.py:1596
+#: order/serializers.py:1597
msgid "Items can only be received against orders which are in progress"
msgstr ""
-#: order/serializers.py:1677
+#: order/serializers.py:1678
msgid "Line price currency"
msgstr ""
-#: order/tasks.py:26
+#: order/tasks.py:27
msgid "Overdue Purchase Order"
msgstr ""
-#: order/tasks.py:31
+#: order/tasks.py:32
#, python-brace-format
msgid "Purchase order {po} is now overdue"
msgstr ""
-#: order/tasks.py:89
+#: order/tasks.py:90
msgid "Overdue Sales Order"
msgstr ""
-#: order/tasks.py:94
+#: order/tasks.py:95
#, python-brace-format
msgid "Sales order {so} is now overdue"
msgstr ""
@@ -5309,12 +5304,12 @@ msgstr ""
msgid "Updated {part} unit-price to {price} and quantity to {qty}"
msgstr ""
-#: part/admin.py:33 part/admin.py:273 part/models.py:3666 part/tasks.py:288
+#: part/admin.py:33 part/admin.py:273 part/models.py:3667 part/tasks.py:288
#: stock/admin.py:101
msgid "Part ID"
msgstr ""
-#: part/admin.py:34 part/admin.py:275 part/models.py:3670 part/tasks.py:289
+#: part/admin.py:34 part/admin.py:275 part/models.py:3671 part/tasks.py:289
#: stock/admin.py:102
msgid "Part Name"
msgstr ""
@@ -5323,19 +5318,19 @@ msgstr ""
msgid "Part Description"
msgstr ""
-#: part/admin.py:36 part/models.py:888 part/templates/part/part_base.html:271
+#: part/admin.py:36 part/models.py:889 part/templates/part/part_base.html:271
#: templates/js/translated/part.js:1200 templates/js/translated/part.js:2233
#: templates/js/translated/stock.js:1795
msgid "IPN"
msgstr ""
-#: part/admin.py:37 part/models.py:895 part/templates/part/part_base.html:279
+#: part/admin.py:37 part/models.py:896 part/templates/part/part_base.html:279
#: report/models.py:179 templates/js/translated/part.js:1205
#: templates/js/translated/part.js:2239
msgid "Revision"
msgstr ""
-#: part/admin.py:38 part/admin.py:198 part/models.py:874
+#: part/admin.py:38 part/admin.py:198 part/models.py:875
#: part/templates/part/category.html:93 part/templates/part/part_base.html:300
msgid "Keywords"
msgstr ""
@@ -5356,11 +5351,11 @@ msgstr ""
msgid "Default Supplier ID"
msgstr ""
-#: part/admin.py:46 part/models.py:863 part/templates/part/part_base.html:179
+#: part/admin.py:46 part/models.py:864 part/templates/part/part_base.html:179
msgid "Variant Of"
msgstr ""
-#: part/admin.py:47 part/models.py:979 part/templates/part/part_base.html:205
+#: part/admin.py:47 part/models.py:980 part/templates/part/part_base.html:205
msgid "Minimum Stock"
msgstr ""
@@ -5393,11 +5388,11 @@ msgstr ""
msgid "Building"
msgstr ""
-#: part/admin.py:66 part/models.py:2929 templates/js/translated/part.js:943
+#: part/admin.py:66 part/models.py:2930 templates/js/translated/part.js:943
msgid "Minimum Cost"
msgstr ""
-#: part/admin.py:67 part/models.py:2935 templates/js/translated/part.js:953
+#: part/admin.py:67 part/models.py:2936 templates/js/translated/part.js:953
msgid "Maximum Cost"
msgstr ""
@@ -5414,7 +5409,7 @@ msgstr ""
msgid "Category Path"
msgstr ""
-#: part/admin.py:202 part/models.py:391 part/templates/part/cat_link.html:3
+#: part/admin.py:202 part/models.py:392 part/templates/part/cat_link.html:3
#: part/templates/part/category.html:23 part/templates/part/category.html:140
#: part/templates/part/category.html:160
#: part/templates/part/category_sidebar.html:9
@@ -5437,7 +5432,7 @@ msgstr ""
msgid "Parent IPN"
msgstr ""
-#: part/admin.py:274 part/models.py:3674
+#: part/admin.py:274 part/models.py:3675
msgid "Part IPN"
msgstr ""
@@ -5451,35 +5446,35 @@ msgstr ""
msgid "Maximum Price"
msgstr ""
-#: part/api.py:497
+#: part/api.py:498
msgid "Incoming Purchase Order"
msgstr ""
-#: part/api.py:517
+#: part/api.py:518
msgid "Outgoing Sales Order"
msgstr ""
-#: part/api.py:535
+#: part/api.py:536
msgid "Stock produced by Build Order"
msgstr ""
-#: part/api.py:621
+#: part/api.py:622
msgid "Stock required for Build Order"
msgstr ""
-#: part/api.py:769
+#: part/api.py:770
msgid "Valid"
msgstr ""
-#: part/api.py:770
+#: part/api.py:771
msgid "Validate entire Bill of Materials"
msgstr ""
-#: part/api.py:776
+#: part/api.py:777
msgid "This option must be selected"
msgstr ""
-#: part/bom.py:175 part/models.py:126 part/models.py:922
+#: part/bom.py:175 part/models.py:127 part/models.py:923
#: part/templates/part/category.html:115 part/templates/part/part_base.html:369
msgid "Default Location"
msgstr ""
@@ -5497,106 +5492,106 @@ msgstr ""
msgid "Input quantity for price calculation"
msgstr ""
-#: part/models.py:74 part/models.py:3615 part/templates/part/category.html:16
+#: part/models.py:75 part/models.py:3616 part/templates/part/category.html:16
#: part/templates/part/part_app_base.html:10
msgid "Part Category"
msgstr ""
-#: part/models.py:75 part/templates/part/category.html:135
+#: part/models.py:76 part/templates/part/category.html:135
#: templates/InvenTree/search.html:97 templates/js/translated/search.js:200
#: users/models.py:37
msgid "Part Categories"
msgstr ""
-#: part/models.py:127
+#: part/models.py:128
msgid "Default location for parts in this category"
msgstr ""
-#: part/models.py:132 stock/models.py:124 templates/js/translated/stock.js:2520
+#: part/models.py:133 stock/models.py:124 templates/js/translated/stock.js:2520
#: templates/js/translated/table_filters.js:209
#: templates/js/translated/table_filters.js:229
msgid "Structural"
msgstr ""
-#: part/models.py:134
+#: part/models.py:135
msgid "Parts may not be directly assigned to a structural category, but may be assigned to child categories."
msgstr ""
-#: part/models.py:138
+#: part/models.py:139
msgid "Default keywords"
msgstr ""
-#: part/models.py:138
+#: part/models.py:139
msgid "Default keywords for parts in this category"
msgstr ""
-#: part/models.py:143 stock/models.py:113
+#: part/models.py:144 stock/models.py:113
msgid "Icon"
msgstr ""
-#: part/models.py:144 stock/models.py:114
+#: part/models.py:145 stock/models.py:114
msgid "Icon (optional)"
msgstr ""
-#: part/models.py:163
+#: part/models.py:164
msgid "You cannot make this part category structural because some parts are already assigned to it!"
msgstr ""
-#: part/models.py:474
+#: part/models.py:475
msgid "Invalid choice for parent part"
msgstr ""
-#: part/models.py:516 part/models.py:528
+#: part/models.py:517 part/models.py:529
#, python-brace-format
msgid "Part '{p1}' is used in BOM for '{p2}' (recursive)"
msgstr ""
-#: part/models.py:600
+#: part/models.py:601
#, python-brace-format
msgid "IPN must match regex pattern {pat}"
msgstr ""
-#: part/models.py:671
+#: part/models.py:672
msgid "Stock item with this serial number already exists"
msgstr ""
-#: part/models.py:802
+#: part/models.py:803
msgid "Duplicate IPN not allowed in part settings"
msgstr ""
-#: part/models.py:807
+#: part/models.py:808
msgid "Part with this Name, IPN and Revision already exists."
msgstr ""
-#: part/models.py:821
+#: part/models.py:822
msgid "Parts cannot be assigned to structural part categories!"
msgstr ""
-#: part/models.py:845 part/models.py:3671
+#: part/models.py:846 part/models.py:3672
msgid "Part name"
msgstr ""
-#: part/models.py:851
+#: part/models.py:852
msgid "Is Template"
msgstr ""
-#: part/models.py:852
+#: part/models.py:853
msgid "Is this part a template part?"
msgstr ""
-#: part/models.py:862
+#: part/models.py:863
msgid "Is this part a variant of another part?"
msgstr ""
-#: part/models.py:869
+#: part/models.py:870
msgid "Part description (optional)"
msgstr ""
-#: part/models.py:875
+#: part/models.py:876
msgid "Part keywords to improve visibility in search results"
msgstr ""
-#: part/models.py:882 part/models.py:3197 part/models.py:3614
+#: part/models.py:883 part/models.py:3198 part/models.py:3615
#: part/serializers.py:848 part/templates/part/part_base.html:262
#: templates/InvenTree/settings/settings_staff_js.html:204
#: templates/js/translated/notification.js:59
@@ -5604,249 +5599,249 @@ msgstr ""
msgid "Category"
msgstr ""
-#: part/models.py:883
+#: part/models.py:884
msgid "Part category"
msgstr ""
-#: part/models.py:889
+#: part/models.py:890
msgid "Internal Part Number"
msgstr ""
-#: part/models.py:894
+#: part/models.py:895
msgid "Part revision or version number"
msgstr ""
-#: part/models.py:920
+#: part/models.py:921
msgid "Where is this item normally stored?"
msgstr ""
-#: part/models.py:965 part/templates/part/part_base.html:378
+#: part/models.py:966 part/templates/part/part_base.html:378
msgid "Default Supplier"
msgstr ""
-#: part/models.py:966
+#: part/models.py:967
msgid "Default supplier part"
msgstr ""
-#: part/models.py:973
+#: part/models.py:974
msgid "Default Expiry"
msgstr ""
-#: part/models.py:974
+#: part/models.py:975
msgid "Expiry time (in days) for stock items of this part"
msgstr ""
-#: part/models.py:980
+#: part/models.py:981
msgid "Minimum allowed stock level"
msgstr ""
-#: part/models.py:987
+#: part/models.py:988
msgid "Units of measure for this part"
msgstr ""
-#: part/models.py:996
+#: part/models.py:997
msgid "Can this part be built from other parts?"
msgstr ""
-#: part/models.py:1002
+#: part/models.py:1003
msgid "Can this part be used to build other parts?"
msgstr ""
-#: part/models.py:1008
+#: part/models.py:1009
msgid "Does this part have tracking for unique items?"
msgstr ""
-#: part/models.py:1013
+#: part/models.py:1014
msgid "Can this part be purchased from external suppliers?"
msgstr ""
-#: part/models.py:1018
+#: part/models.py:1019
msgid "Can this part be sold to customers?"
msgstr ""
-#: part/models.py:1023
+#: part/models.py:1024
msgid "Is this part active?"
msgstr ""
-#: part/models.py:1028
+#: part/models.py:1029
msgid "Is this a virtual part, such as a software product or license?"
msgstr ""
-#: part/models.py:1030
+#: part/models.py:1031
msgid "BOM checksum"
msgstr ""
-#: part/models.py:1030
+#: part/models.py:1031
msgid "Stored BOM checksum"
msgstr ""
-#: part/models.py:1033
+#: part/models.py:1034
msgid "BOM checked by"
msgstr ""
-#: part/models.py:1035
+#: part/models.py:1036
msgid "BOM checked date"
msgstr ""
-#: part/models.py:1039
+#: part/models.py:1040
msgid "Creation User"
msgstr ""
-#: part/models.py:1041
+#: part/models.py:1042
msgid "User responsible for this part"
msgstr ""
-#: part/models.py:1045 part/templates/part/part_base.html:341
+#: part/models.py:1046 part/templates/part/part_base.html:341
#: stock/templates/stock/item_base.html:447
#: templates/js/translated/part.js:2331
msgid "Last Stocktake"
msgstr ""
-#: part/models.py:1920
+#: part/models.py:1921
msgid "Sell multiple"
msgstr ""
-#: part/models.py:2852
+#: part/models.py:2853
msgid "Currency used to cache pricing calculations"
msgstr ""
-#: part/models.py:2869
+#: part/models.py:2870
msgid "Minimum BOM Cost"
msgstr ""
-#: part/models.py:2870
+#: part/models.py:2871
msgid "Minimum cost of component parts"
msgstr ""
-#: part/models.py:2875
+#: part/models.py:2876
msgid "Maximum BOM Cost"
msgstr ""
-#: part/models.py:2876
+#: part/models.py:2877
msgid "Maximum cost of component parts"
msgstr ""
-#: part/models.py:2881
+#: part/models.py:2882
msgid "Minimum Purchase Cost"
msgstr ""
-#: part/models.py:2882
+#: part/models.py:2883
msgid "Minimum historical purchase cost"
msgstr ""
-#: part/models.py:2887
+#: part/models.py:2888
msgid "Maximum Purchase Cost"
msgstr ""
-#: part/models.py:2888
+#: part/models.py:2889
msgid "Maximum historical purchase cost"
msgstr ""
-#: part/models.py:2893
+#: part/models.py:2894
msgid "Minimum Internal Price"
msgstr ""
-#: part/models.py:2894
+#: part/models.py:2895
msgid "Minimum cost based on internal price breaks"
msgstr ""
-#: part/models.py:2899
+#: part/models.py:2900
msgid "Maximum Internal Price"
msgstr ""
-#: part/models.py:2900
+#: part/models.py:2901
msgid "Maximum cost based on internal price breaks"
msgstr ""
-#: part/models.py:2905
+#: part/models.py:2906
msgid "Minimum Supplier Price"
msgstr ""
-#: part/models.py:2906
+#: part/models.py:2907
msgid "Minimum price of part from external suppliers"
msgstr ""
-#: part/models.py:2911
+#: part/models.py:2912
msgid "Maximum Supplier Price"
msgstr ""
-#: part/models.py:2912
+#: part/models.py:2913
msgid "Maximum price of part from external suppliers"
msgstr ""
-#: part/models.py:2917
+#: part/models.py:2918
msgid "Minimum Variant Cost"
msgstr ""
-#: part/models.py:2918
+#: part/models.py:2919
msgid "Calculated minimum cost of variant parts"
msgstr ""
-#: part/models.py:2923
+#: part/models.py:2924
msgid "Maximum Variant Cost"
msgstr ""
-#: part/models.py:2924
+#: part/models.py:2925
msgid "Calculated maximum cost of variant parts"
msgstr ""
-#: part/models.py:2930
+#: part/models.py:2931
msgid "Calculated overall minimum cost"
msgstr ""
-#: part/models.py:2936
+#: part/models.py:2937
msgid "Calculated overall maximum cost"
msgstr ""
-#: part/models.py:2941
+#: part/models.py:2942
msgid "Minimum Sale Price"
msgstr ""
-#: part/models.py:2942
+#: part/models.py:2943
msgid "Minimum sale price based on price breaks"
msgstr ""
-#: part/models.py:2947
+#: part/models.py:2948
msgid "Maximum Sale Price"
msgstr ""
-#: part/models.py:2948
+#: part/models.py:2949
msgid "Maximum sale price based on price breaks"
msgstr ""
-#: part/models.py:2953
+#: part/models.py:2954
msgid "Minimum Sale Cost"
msgstr ""
-#: part/models.py:2954
+#: part/models.py:2955
msgid "Minimum historical sale price"
msgstr ""
-#: part/models.py:2959
+#: part/models.py:2960
msgid "Maximum Sale Cost"
msgstr ""
-#: part/models.py:2960
+#: part/models.py:2961
msgid "Maximum historical sale price"
msgstr ""
-#: part/models.py:2979
+#: part/models.py:2980
msgid "Part for stocktake"
msgstr ""
-#: part/models.py:2984
+#: part/models.py:2985
msgid "Item Count"
msgstr ""
-#: part/models.py:2985
+#: part/models.py:2986
msgid "Number of individual stock entries at time of stocktake"
msgstr ""
-#: part/models.py:2992
+#: part/models.py:2993
msgid "Total available stock at time of stocktake"
msgstr ""
-#: part/models.py:2996 part/models.py:3079
+#: part/models.py:2997 part/models.py:3080
#: part/templates/part/part_scheduling.html:13
#: report/templates/report/inventree_test_report_base.html:106
#: templates/InvenTree/settings/plugin_settings.html:37
@@ -5858,214 +5853,214 @@ msgstr ""
msgid "Date"
msgstr ""
-#: part/models.py:2997
+#: part/models.py:2998
msgid "Date stocktake was performed"
msgstr ""
-#: part/models.py:3005
+#: part/models.py:3006
msgid "Additional notes"
msgstr ""
-#: part/models.py:3013
+#: part/models.py:3014
msgid "User who performed this stocktake"
msgstr ""
-#: part/models.py:3018
+#: part/models.py:3019
msgid "Minimum Stock Cost"
msgstr ""
-#: part/models.py:3019
+#: part/models.py:3020
msgid "Estimated minimum cost of stock on hand"
msgstr ""
-#: part/models.py:3024
+#: part/models.py:3025
msgid "Maximum Stock Cost"
msgstr ""
-#: part/models.py:3025
+#: part/models.py:3026
msgid "Estimated maximum cost of stock on hand"
msgstr ""
-#: part/models.py:3086 templates/InvenTree/settings/settings_staff_js.html:349
+#: part/models.py:3087 templates/InvenTree/settings/settings_staff_js.html:349
msgid "Report"
msgstr ""
-#: part/models.py:3087
+#: part/models.py:3088
msgid "Stocktake report file (generated internally)"
msgstr ""
-#: part/models.py:3092 templates/InvenTree/settings/settings_staff_js.html:356
+#: part/models.py:3093 templates/InvenTree/settings/settings_staff_js.html:356
msgid "Part Count"
msgstr ""
-#: part/models.py:3093
+#: part/models.py:3094
msgid "Number of parts covered by stocktake"
msgstr ""
-#: part/models.py:3101
+#: part/models.py:3102
msgid "User who requested this stocktake report"
msgstr ""
-#: part/models.py:3237
+#: part/models.py:3238
msgid "Test templates can only be created for trackable parts"
msgstr ""
-#: part/models.py:3254
+#: part/models.py:3255
msgid "Test with this name already exists for this part"
msgstr ""
-#: part/models.py:3274 templates/js/translated/part.js:2821
+#: part/models.py:3275 templates/js/translated/part.js:2821
msgid "Test Name"
msgstr ""
-#: part/models.py:3275
+#: part/models.py:3276
msgid "Enter a name for the test"
msgstr ""
-#: part/models.py:3280
+#: part/models.py:3281
msgid "Test Description"
msgstr ""
-#: part/models.py:3281
+#: part/models.py:3282
msgid "Enter description for this test"
msgstr ""
-#: part/models.py:3286 templates/js/translated/part.js:2830
+#: part/models.py:3287 templates/js/translated/part.js:2830
#: templates/js/translated/table_filters.js:423
msgid "Required"
msgstr ""
-#: part/models.py:3287
+#: part/models.py:3288
msgid "Is this test required to pass?"
msgstr ""
-#: part/models.py:3292 templates/js/translated/part.js:2838
+#: part/models.py:3293 templates/js/translated/part.js:2838
msgid "Requires Value"
msgstr ""
-#: part/models.py:3293
+#: part/models.py:3294
msgid "Does this test require a value when adding a test result?"
msgstr ""
-#: part/models.py:3298 templates/js/translated/part.js:2845
+#: part/models.py:3299 templates/js/translated/part.js:2845
msgid "Requires Attachment"
msgstr ""
-#: part/models.py:3299
+#: part/models.py:3300
msgid "Does this test require a file attachment when adding a test result?"
msgstr ""
-#: part/models.py:3345
+#: part/models.py:3346
msgid "Checkbox parameters cannot have units"
msgstr ""
-#: part/models.py:3350
+#: part/models.py:3351
msgid "Checkbox parameters cannot have choices"
msgstr ""
-#: part/models.py:3368
+#: part/models.py:3369
msgid "Choices must be unique"
msgstr ""
-#: part/models.py:3384
+#: part/models.py:3385
msgid "Parameter template name must be unique"
msgstr ""
-#: part/models.py:3400
+#: part/models.py:3401
msgid "Parameter Name"
msgstr ""
-#: part/models.py:3406
+#: part/models.py:3407
msgid "Physical units for this parameter"
msgstr ""
-#: part/models.py:3416
+#: part/models.py:3417
msgid "Parameter description"
msgstr ""
-#: part/models.py:3422 templates/js/translated/part.js:1600
+#: part/models.py:3423 templates/js/translated/part.js:1600
#: templates/js/translated/table_filters.js:734
msgid "Checkbox"
msgstr ""
-#: part/models.py:3423
+#: part/models.py:3424
msgid "Is this parameter a checkbox?"
msgstr ""
-#: part/models.py:3428 templates/js/translated/part.js:1609
+#: part/models.py:3429 templates/js/translated/part.js:1609
msgid "Choices"
msgstr ""
-#: part/models.py:3429
+#: part/models.py:3430
msgid "Valid choices for this parameter (comma-separated)"
msgstr ""
-#: part/models.py:3510
+#: part/models.py:3511
msgid "Invalid choice for parameter value"
msgstr ""
-#: part/models.py:3554
+#: part/models.py:3555
msgid "Parent Part"
msgstr ""
-#: part/models.py:3559 part/models.py:3620 part/models.py:3621
+#: part/models.py:3560 part/models.py:3621 part/models.py:3622
#: templates/InvenTree/settings/settings_staff_js.html:199
msgid "Parameter Template"
msgstr ""
-#: part/models.py:3564
+#: part/models.py:3565
msgid "Data"
msgstr ""
-#: part/models.py:3564
+#: part/models.py:3565
msgid "Parameter Value"
msgstr ""
-#: part/models.py:3625 templates/InvenTree/settings/settings_staff_js.html:208
+#: part/models.py:3626 templates/InvenTree/settings/settings_staff_js.html:208
msgid "Default Value"
msgstr ""
-#: part/models.py:3626
+#: part/models.py:3627
msgid "Default Parameter Value"
msgstr ""
-#: part/models.py:3663
+#: part/models.py:3664
msgid "Part ID or part name"
msgstr ""
-#: part/models.py:3667
+#: part/models.py:3668
msgid "Unique part ID value"
msgstr ""
-#: part/models.py:3675
+#: part/models.py:3676
msgid "Part IPN value"
msgstr ""
-#: part/models.py:3678
+#: part/models.py:3679
msgid "Level"
msgstr ""
-#: part/models.py:3679
+#: part/models.py:3680
msgid "BOM level"
msgstr ""
-#: part/models.py:3763
+#: part/models.py:3764
msgid "Select parent part"
msgstr ""
-#: part/models.py:3771
+#: part/models.py:3772
msgid "Sub part"
msgstr ""
-#: part/models.py:3772
+#: part/models.py:3773
msgid "Select part to be used in BOM"
msgstr ""
-#: part/models.py:3778
+#: part/models.py:3779
msgid "BOM quantity for this BOM item"
msgstr ""
-#: part/models.py:3782 part/templates/part/upload_bom.html:58
+#: part/models.py:3783 part/templates/part/upload_bom.html:58
#: templates/js/translated/bom.js:971 templates/js/translated/bom.js:998
#: templates/js/translated/build.js:2113
#: templates/js/translated/table_filters.js:156
@@ -6074,114 +6069,114 @@ msgstr ""
msgid "Optional"
msgstr ""
-#: part/models.py:3783
+#: part/models.py:3784
msgid "This BOM item is optional"
msgstr ""
-#: part/models.py:3788 templates/js/translated/bom.js:967
+#: part/models.py:3789 templates/js/translated/bom.js:967
#: templates/js/translated/bom.js:1007 templates/js/translated/build.js:2104
#: templates/js/translated/table_filters.js:160
#: templates/js/translated/table_filters.js:496
msgid "Consumable"
msgstr ""
-#: part/models.py:3789
+#: part/models.py:3790
msgid "This BOM item is consumable (it is not tracked in build orders)"
msgstr ""
-#: part/models.py:3793 part/templates/part/upload_bom.html:55
+#: part/models.py:3794 part/templates/part/upload_bom.html:55
msgid "Overage"
msgstr ""
-#: part/models.py:3794
+#: part/models.py:3795
msgid "Estimated build wastage quantity (absolute or percentage)"
msgstr ""
-#: part/models.py:3797
+#: part/models.py:3798
msgid "BOM item reference"
msgstr ""
-#: part/models.py:3800
+#: part/models.py:3801
msgid "BOM item notes"
msgstr ""
-#: part/models.py:3804
+#: part/models.py:3805
msgid "Checksum"
msgstr ""
-#: part/models.py:3804
+#: part/models.py:3805
msgid "BOM line checksum"
msgstr ""
-#: part/models.py:3809 templates/js/translated/table_filters.js:144
+#: part/models.py:3810 templates/js/translated/table_filters.js:144
msgid "Validated"
msgstr ""
-#: part/models.py:3810
+#: part/models.py:3811
msgid "This BOM item has been validated"
msgstr ""
-#: part/models.py:3815 part/templates/part/upload_bom.html:57
+#: part/models.py:3816 part/templates/part/upload_bom.html:57
#: templates/js/translated/bom.js:1024
#: templates/js/translated/table_filters.js:148
#: templates/js/translated/table_filters.js:181
msgid "Gets inherited"
msgstr ""
-#: part/models.py:3816
+#: part/models.py:3817
msgid "This BOM item is inherited by BOMs for variant parts"
msgstr ""
-#: part/models.py:3821 part/templates/part/upload_bom.html:56
+#: part/models.py:3822 part/templates/part/upload_bom.html:56
#: templates/js/translated/bom.js:1016
msgid "Allow Variants"
msgstr ""
-#: part/models.py:3822
+#: part/models.py:3823
msgid "Stock items for variant parts can be used for this BOM item"
msgstr ""
-#: part/models.py:3908 stock/models.py:577
+#: part/models.py:3909 stock/models.py:577
msgid "Quantity must be integer value for trackable parts"
msgstr ""
-#: part/models.py:3917 part/models.py:3919
+#: part/models.py:3918 part/models.py:3920
msgid "Sub part must be specified"
msgstr ""
-#: part/models.py:4035
+#: part/models.py:4036
msgid "BOM Item Substitute"
msgstr ""
-#: part/models.py:4056
+#: part/models.py:4057
msgid "Substitute part cannot be the same as the master part"
msgstr ""
-#: part/models.py:4069
+#: part/models.py:4070
msgid "Parent BOM item"
msgstr ""
-#: part/models.py:4077
+#: part/models.py:4078
msgid "Substitute part"
msgstr ""
-#: part/models.py:4092
+#: part/models.py:4093
msgid "Part 1"
msgstr ""
-#: part/models.py:4096
+#: part/models.py:4097
msgid "Part 2"
msgstr ""
-#: part/models.py:4096
+#: part/models.py:4097
msgid "Select Related Part"
msgstr ""
-#: part/models.py:4114
+#: part/models.py:4115
msgid "Part relationship cannot be created between a part and itself"
msgstr ""
-#: part/models.py:4118
+#: part/models.py:4119
msgid "Duplicate relationship already exists"
msgstr ""
@@ -7515,12 +7510,12 @@ msgid "Test Results"
msgstr ""
#: report/templates/report/inventree_test_report_base.html:102
-#: stock/models.py:2242 templates/js/translated/stock.js:1419
+#: stock/models.py:2243 templates/js/translated/stock.js:1419
msgid "Test"
msgstr ""
#: report/templates/report/inventree_test_report_base.html:103
-#: stock/models.py:2248
+#: stock/models.py:2249
msgid "Result"
msgstr ""
@@ -7619,27 +7614,27 @@ msgstr ""
msgid "Expiry Date"
msgstr ""
-#: stock/api.py:419 templates/js/translated/table_filters.js:373
+#: stock/api.py:420 templates/js/translated/table_filters.js:373
msgid "External Location"
msgstr ""
-#: stock/api.py:581
+#: stock/api.py:582
msgid "Quantity is required"
msgstr ""
-#: stock/api.py:588
+#: stock/api.py:589
msgid "Valid part must be supplied"
msgstr ""
-#: stock/api.py:614
+#: stock/api.py:615
msgid "The given supplier part does not exist"
msgstr ""
-#: stock/api.py:623
+#: stock/api.py:624
msgid "The supplier part has a pack size defined, but flag use_pack_size not set"
msgstr ""
-#: stock/api.py:641
+#: stock/api.py:642
msgid "Serial numbers cannot be supplied for a non-trackable part"
msgstr ""
@@ -7798,104 +7793,104 @@ msgstr ""
msgid "Converted to part"
msgstr ""
-#: stock/models.py:1377
+#: stock/models.py:1378
msgid "Part is not set as trackable"
msgstr ""
-#: stock/models.py:1383
+#: stock/models.py:1384
msgid "Quantity must be integer"
msgstr ""
-#: stock/models.py:1389
+#: stock/models.py:1390
#, python-brace-format
msgid "Quantity must not exceed available stock quantity ({n})"
msgstr ""
-#: stock/models.py:1392
+#: stock/models.py:1393
msgid "Serial numbers must be a list of integers"
msgstr ""
-#: stock/models.py:1395
+#: stock/models.py:1396
msgid "Quantity does not match serial numbers"
msgstr ""
-#: stock/models.py:1402 stock/serializers.py:374
+#: stock/models.py:1403 stock/serializers.py:374
msgid "Serial numbers already exist"
msgstr ""
-#: stock/models.py:1473
+#: stock/models.py:1474
msgid "Stock item has been assigned to a sales order"
msgstr ""
-#: stock/models.py:1476
+#: stock/models.py:1477
msgid "Stock item is installed in another item"
msgstr ""
-#: stock/models.py:1479
+#: stock/models.py:1480
msgid "Stock item contains other items"
msgstr ""
-#: stock/models.py:1482
+#: stock/models.py:1483
msgid "Stock item has been assigned to a customer"
msgstr ""
-#: stock/models.py:1485
+#: stock/models.py:1486
msgid "Stock item is currently in production"
msgstr ""
-#: stock/models.py:1488
+#: stock/models.py:1489
msgid "Serialized stock cannot be merged"
msgstr ""
-#: stock/models.py:1495 stock/serializers.py:975
+#: stock/models.py:1496 stock/serializers.py:975
msgid "Duplicate stock items"
msgstr ""
-#: stock/models.py:1499
+#: stock/models.py:1500
msgid "Stock items must refer to the same part"
msgstr ""
-#: stock/models.py:1503
+#: stock/models.py:1504
msgid "Stock items must refer to the same supplier part"
msgstr ""
-#: stock/models.py:1507
+#: stock/models.py:1508
msgid "Stock status codes must match"
msgstr ""
-#: stock/models.py:1678
+#: stock/models.py:1679
msgid "StockItem cannot be moved as it is not in stock"
msgstr ""
-#: stock/models.py:2160
+#: stock/models.py:2161
msgid "Entry notes"
msgstr ""
-#: stock/models.py:2218
+#: stock/models.py:2219
msgid "Value must be provided for this test"
msgstr ""
-#: stock/models.py:2224
+#: stock/models.py:2225
msgid "Attachment must be uploaded for this test"
msgstr ""
-#: stock/models.py:2243
+#: stock/models.py:2244
msgid "Test name"
msgstr ""
-#: stock/models.py:2249
+#: stock/models.py:2250
msgid "Test result"
msgstr ""
-#: stock/models.py:2255
+#: stock/models.py:2256
msgid "Test output value"
msgstr ""
-#: stock/models.py:2262
+#: stock/models.py:2263
msgid "Test result attachment"
msgstr ""
-#: stock/models.py:2268
+#: stock/models.py:2269
msgid "Test notes"
msgstr ""
@@ -8670,29 +8665,29 @@ msgstr ""
msgid "Changing the settings below require you to immediately restart the server. Do not change this while under active usage."
msgstr ""
-#: templates/InvenTree/settings/plugin.html:37
+#: templates/InvenTree/settings/plugin.html:35
#: templates/InvenTree/settings/sidebar.html:64
msgid "Plugins"
msgstr ""
-#: templates/InvenTree/settings/plugin.html:43
+#: templates/InvenTree/settings/plugin.html:41
#: templates/js/translated/plugin.js:151
msgid "Install Plugin"
msgstr ""
-#: templates/InvenTree/settings/plugin.html:51
+#: templates/InvenTree/settings/plugin.html:49
msgid "External plugins are not enabled for this InvenTree installation"
msgstr ""
-#: templates/InvenTree/settings/plugin.html:70
+#: templates/InvenTree/settings/plugin.html:68
msgid "Plugin Error Stack"
msgstr ""
-#: templates/InvenTree/settings/plugin.html:79
+#: templates/InvenTree/settings/plugin.html:77
msgid "Stage"
msgstr ""
-#: templates/InvenTree/settings/plugin.html:81
+#: templates/InvenTree/settings/plugin.html:79
#: templates/js/translated/notification.js:75
msgid "Message"
msgstr ""
@@ -8765,14 +8760,6 @@ msgstr ""
msgid "Commit Message"
msgstr ""
-#: templates/InvenTree/settings/plugin_settings.html:126
-msgid "Sign Status"
-msgstr ""
-
-#: templates/InvenTree/settings/plugin_settings.html:131
-msgid "Sign Key"
-msgstr ""
-
#: templates/InvenTree/settings/po.html:7
msgid "Purchase Order Settings"
msgstr ""
@@ -9202,44 +9189,48 @@ msgstr ""
msgid "Update Available"
msgstr ""
-#: templates/about.html:42
+#: templates/about.html:43
+msgid "Commit Branch"
+msgstr ""
+
+#: templates/about.html:49
msgid "InvenTree Documentation"
msgstr ""
-#: templates/about.html:47
+#: templates/about.html:54
msgid "API Version"
msgstr ""
-#: templates/about.html:52
+#: templates/about.html:59
msgid "Python Version"
msgstr ""
-#: templates/about.html:57
+#: templates/about.html:64
msgid "Django Version"
msgstr ""
-#: templates/about.html:62
+#: templates/about.html:69
msgid "View Code on GitHub"
msgstr ""
-#: templates/about.html:67
+#: templates/about.html:74
msgid "Credits"
msgstr ""
-#: templates/about.html:72
+#: templates/about.html:79
msgid "Mobile App"
msgstr ""
-#: templates/about.html:77
+#: templates/about.html:84
msgid "Submit Bug Report"
msgstr ""
-#: templates/about.html:84 templates/clip.html:4
+#: templates/about.html:91 templates/clip.html:4
#: templates/js/translated/helpers.js:585
msgid "copy to clipboard"
msgstr ""
-#: templates/about.html:84
+#: templates/about.html:91
msgid "copy version information"
msgstr ""
@@ -11845,7 +11836,7 @@ msgstr ""
msgid "Add Stock"
msgstr ""
-#: templates/js/translated/stock.js:1005 users/models.py:243
+#: templates/js/translated/stock.js:1005 users/models.py:244
msgid "Add"
msgstr ""
@@ -12691,34 +12682,34 @@ msgstr ""
msgid "Important dates"
msgstr ""
-#: users/models.py:230
+#: users/models.py:231
msgid "Permission set"
msgstr ""
-#: users/models.py:238
+#: users/models.py:239
msgid "Group"
msgstr ""
-#: users/models.py:241
+#: users/models.py:242
msgid "View"
msgstr ""
-#: users/models.py:241
+#: users/models.py:242
msgid "Permission to view items"
msgstr ""
-#: users/models.py:243
+#: users/models.py:244
msgid "Permission to add items"
msgstr ""
-#: users/models.py:245
+#: users/models.py:246
msgid "Change"
msgstr ""
-#: users/models.py:245
+#: users/models.py:246
msgid "Permissions to edit items"
msgstr ""
-#: users/models.py:247
+#: users/models.py:248
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 cd76634ccc..ac75696eec 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: 2023-06-09 00:32+0000\n"
-"PO-Revision-Date: 2023-06-09 10:27\n"
+"POT-Creation-Date: 2023-06-20 07:01+0000\n"
+"PO-Revision-Date: 2023-06-20 07:06\n"
"Last-Translator: \n"
"Language-Team: Persian\n"
"Language: fa_IR\n"
@@ -49,26 +49,26 @@ msgstr "جزئیات خطا را می توان در پنل مدیریت پیدا
msgid "Enter date"
msgstr "تاریخ را وارد کنید"
-#: InvenTree/fields.py:206 InvenTree/models.py:766 build/serializers.py:427
-#: build/serializers.py:506 build/templates/build/sidebar.html:23
-#: company/models.py:597 company/templates/company/sidebar.html:35
-#: order/models.py:1089 order/templates/order/po_sidebar.html:11
+#: InvenTree/fields.py:206 InvenTree/models.py:766 build/serializers.py:435
+#: build/serializers.py:514 build/templates/build/sidebar.html:21
+#: company/models.py:746 company/templates/company/sidebar.html:37
+#: order/models.py:1102 order/templates/order/po_sidebar.html:11
#: order/templates/order/return_order_sidebar.html:9
#: order/templates/order/so_sidebar.html:17 part/admin.py:41
-#: part/models.py:3005 part/templates/part/part_sidebar.html:63
+#: part/models.py:3039 part/templates/part/part_sidebar.html:63
#: report/templates/report/inventree_build_order_base.html:172
#: stock/admin.py:121 stock/models.py:2160 stock/models.py:2268
-#: stock/serializers.py:342 stock/serializers.py:475 stock/serializers.py:556
-#: stock/serializers.py:839 stock/serializers.py:938 stock/serializers.py:1070
-#: stock/templates/stock/stock_sidebar.html:25
-#: templates/js/translated/barcode.js:143 templates/js/translated/bom.js:1224
-#: templates/js/translated/company.js:1294 templates/js/translated/order.js:347
-#: templates/js/translated/part.js:1054
-#: templates/js/translated/purchase_order.js:2168
-#: templates/js/translated/return_order.js:760
-#: templates/js/translated/sales_order.js:1055
-#: templates/js/translated/sales_order.js:1959
-#: templates/js/translated/stock.js:1460 templates/js/translated/stock.js:2164
+#: stock/serializers.py:408 stock/serializers.py:542 stock/serializers.py:623
+#: stock/serializers.py:681 stock/serializers.py:956 stock/serializers.py:1055
+#: stock/serializers.py:1187 stock/templates/stock/stock_sidebar.html:25
+#: templates/js/translated/barcode.js:143 templates/js/translated/bom.js:1244
+#: templates/js/translated/company.js:1715 templates/js/translated/order.js:347
+#: templates/js/translated/part.js:1053
+#: templates/js/translated/purchase_order.js:2178
+#: templates/js/translated/return_order.js:772
+#: templates/js/translated/sales_order.js:1067
+#: templates/js/translated/sales_order.js:1971
+#: templates/js/translated/stock.js:1459 templates/js/translated/stock.js:2321
msgid "Notes"
msgstr "یادداشت"
@@ -81,47 +81,51 @@ msgstr "مقدار '{name}' در قالب الگو ظاهر قرار نمی گی
msgid "Provided value does not match required pattern: "
msgstr "مقدار ارائه شده با الگوی مورد نیاز مطابقت ندارد: "
-#: InvenTree/forms.py:145
+#: InvenTree/forms.py:147
msgid "Enter password"
msgstr "رمز عبور را وارد کنید"
-#: InvenTree/forms.py:146
+#: InvenTree/forms.py:148
msgid "Enter new password"
msgstr "گذرواژه جدید را وارد کنید"
-#: InvenTree/forms.py:155
+#: InvenTree/forms.py:157
msgid "Confirm password"
msgstr "تأیید کلمهی عبور"
-#: InvenTree/forms.py:156
+#: InvenTree/forms.py:158
msgid "Confirm new password"
msgstr "گذرواژه جدید را تایید کنید"
-#: InvenTree/forms.py:160
+#: InvenTree/forms.py:162
msgid "Old password"
msgstr "رمز عبور قدیمی"
-#: InvenTree/forms.py:179
+#: InvenTree/forms.py:181
msgid "Email (again)"
msgstr "ایمیل (دوباره وارد کنید)"
-#: InvenTree/forms.py:183
+#: InvenTree/forms.py:185
msgid "Email address confirmation"
msgstr "تایید آدرس ایمیل"
-#: InvenTree/forms.py:204
+#: InvenTree/forms.py:206
msgid "You must type the same email each time."
msgstr "هر بار باید همان ایمیل را تایپ کنید."
-#: InvenTree/forms.py:230 InvenTree/forms.py:236
+#: InvenTree/forms.py:237 InvenTree/forms.py:243
msgid "The provided primary email address is not valid."
msgstr "آدرس ایمیل اصلی ارائه شده معتبر نیست."
-#: InvenTree/forms.py:242
+#: InvenTree/forms.py:249
msgid "The provided email domain is not approved."
msgstr "دامنه ایمیل ارائه شده تایید نشده است."
-#: InvenTree/helpers.py:462 order/models.py:442 order/models.py:611
+#: InvenTree/forms.py:345
+msgid "Registration is disabled."
+msgstr ""
+
+#: InvenTree/helpers.py:462 order/models.py:455 order/models.py:624
msgid "Invalid quantity provided"
msgstr ""
@@ -239,7 +243,7 @@ msgstr ""
#: InvenTree/models.py:486 stock/models.py:2262
#: templates/js/translated/attachment.js:119
-#: templates/js/translated/attachment.js:306
+#: templates/js/translated/attachment.js:316
msgid "Attachment"
msgstr ""
@@ -247,29 +251,30 @@ msgstr ""
msgid "Select file to attach"
msgstr ""
-#: InvenTree/models.py:493 common/models.py:2695 company/models.py:132
-#: company/models.py:306 company/models.py:584 order/models.py:236
-#: order/models.py:1093 order/models.py:1453 part/admin.py:39
-#: part/models.py:901 part/templates/part/part_scheduling.html:11
+#: InvenTree/models.py:493 common/models.py:2681 company/models.py:128
+#: company/models.py:381 company/models.py:455 company/models.py:733
+#: order/models.py:240 order/models.py:1106 order/models.py:1466
+#: part/admin.py:39 part/models.py:902
+#: part/templates/part/part_scheduling.html:11
#: report/templates/report/inventree_build_order_base.html:164
-#: stock/admin.py:120 templates/js/translated/company.js:977
-#: templates/js/translated/company.js:1283 templates/js/translated/order.js:351
-#: templates/js/translated/part.js:2316
-#: templates/js/translated/purchase_order.js:2008
-#: templates/js/translated/purchase_order.js:2172
-#: templates/js/translated/return_order.js:764
-#: templates/js/translated/sales_order.js:1044
-#: templates/js/translated/sales_order.js:1964
+#: stock/admin.py:120 templates/js/translated/company.js:1350
+#: templates/js/translated/company.js:1704 templates/js/translated/order.js:351
+#: templates/js/translated/part.js:2392
+#: templates/js/translated/purchase_order.js:2018
+#: templates/js/translated/purchase_order.js:2182
+#: templates/js/translated/return_order.js:776
+#: templates/js/translated/sales_order.js:1056
+#: templates/js/translated/sales_order.js:1976
msgid "Link"
msgstr ""
-#: InvenTree/models.py:494 build/models.py:291 part/models.py:902
+#: InvenTree/models.py:494 build/models.py:295 part/models.py:903
#: stock/models.py:735
msgid "Link to external URL"
msgstr ""
#: InvenTree/models.py:497 templates/js/translated/attachment.js:120
-#: templates/js/translated/attachment.js:321
+#: templates/js/translated/attachment.js:331
msgid "Comment"
msgstr ""
@@ -277,13 +282,13 @@ msgstr ""
msgid "File comment"
msgstr ""
-#: InvenTree/models.py:503 InvenTree/models.py:504 common/models.py:2154
-#: common/models.py:2155 common/models.py:2368 common/models.py:2369
-#: common/models.py:2625 common/models.py:2626 part/models.py:3013
-#: part/models.py:3101 part/models.py:3180 part/models.py:3200
-#: plugin/models.py:217 plugin/models.py:218
+#: InvenTree/models.py:503 InvenTree/models.py:504 common/models.py:2140
+#: common/models.py:2141 common/models.py:2354 common/models.py:2355
+#: common/models.py:2611 common/models.py:2612 part/models.py:3047
+#: part/models.py:3135 part/models.py:3214 part/models.py:3234
+#: plugin/models.py:218 plugin/models.py:219
#: report/templates/report/inventree_test_report_base.html:105
-#: templates/js/translated/stock.js:2773
+#: templates/js/translated/stock.js:2904
msgid "User"
msgstr ""
@@ -324,53 +329,54 @@ msgstr ""
msgid "Invalid choice"
msgstr ""
-#: InvenTree/models.py:648 InvenTree/models.py:649 common/models.py:2354
-#: company/models.py:390 label/models.py:103 part/models.py:847
-#: part/models.py:3400 plugin/models.py:41 report/models.py:160
+#: InvenTree/models.py:648 InvenTree/models.py:649 common/models.py:2340
+#: company/models.py:539 label/models.py:111 part/models.py:848
+#: part/models.py:3434 plugin/models.py:42 report/models.py:160
#: templates/InvenTree/settings/mixins/urls.html:13
#: templates/InvenTree/settings/notifications.html:17
-#: templates/InvenTree/settings/plugin.html:80
+#: templates/InvenTree/settings/plugin.html:74
#: templates/InvenTree/settings/plugin_settings.html:22
-#: templates/js/translated/company.js:658
-#: templates/js/translated/company.js:706
-#: templates/js/translated/company.js:871
-#: templates/js/translated/company.js:1071 templates/js/translated/part.js:1160
-#: templates/js/translated/part.js:1447 templates/js/translated/part.js:1583
-#: templates/js/translated/part.js:2699 templates/js/translated/stock.js:2464
+#: templates/js/translated/company.js:665
+#: templates/js/translated/company.js:713
+#: templates/js/translated/company.js:940
+#: templates/js/translated/company.js:1196
+#: templates/js/translated/company.js:1444 templates/js/translated/part.js:1159
+#: templates/js/translated/part.js:1446 templates/js/translated/part.js:1582
+#: templates/js/translated/part.js:2684 templates/js/translated/stock.js:2595
msgid "Name"
msgstr ""
-#: InvenTree/models.py:655 build/models.py:164
+#: InvenTree/models.py:655 build/models.py:168
#: build/templates/build/detail.html:24 common/models.py:111
-#: company/models.py:312 company/models.py:590
+#: company/models.py:461 company/models.py:739
#: company/templates/company/company_base.html:72
#: company/templates/company/manufacturer_part.html:75
-#: company/templates/company/supplier_part.html:108 label/models.py:110
-#: order/models.py:232 order/models.py:1117 part/admin.py:194 part/admin.py:276
-#: part/models.py:869 part/models.py:3416 part/templates/part/category.html:81
+#: company/templates/company/supplier_part.html:108 label/models.py:118
+#: order/models.py:232 order/models.py:1130 part/admin.py:194 part/admin.py:276
+#: part/models.py:870 part/models.py:3450 part/templates/part/category.html:81
#: part/templates/part/part_base.html:172
#: part/templates/part/part_scheduling.html:12 report/models.py:173
-#: report/models.py:587 report/models.py:631
+#: report/models.py:589 report/models.py:633
#: report/templates/report/inventree_build_order_base.html:117
#: stock/admin.py:41 stock/templates/stock/location.html:123
#: templates/InvenTree/settings/notifications.html:19
#: templates/InvenTree/settings/plugin_settings.html:27
#: templates/InvenTree/settings/settings_staff_js.html:75
-#: templates/js/translated/bom.js:632 templates/js/translated/bom.js:933
-#: templates/js/translated/build.js:2857 templates/js/translated/company.js:510
-#: templates/js/translated/company.js:988
-#: templates/js/translated/company.js:1251 templates/js/translated/order.js:298
-#: templates/js/translated/part.js:1212 templates/js/translated/part.js:1456
-#: templates/js/translated/part.js:1594 templates/js/translated/part.js:1933
-#: templates/js/translated/part.js:2247 templates/js/translated/part.js:2735
-#: templates/js/translated/part.js:2826
-#: templates/js/translated/purchase_order.js:1666
-#: templates/js/translated/purchase_order.js:1812
-#: templates/js/translated/purchase_order.js:1990
-#: templates/js/translated/return_order.js:302
-#: templates/js/translated/sales_order.js:790
-#: templates/js/translated/stock.js:1439 templates/js/translated/stock.js:1817
-#: templates/js/translated/stock.js:2496 templates/js/translated/stock.js:2568
+#: templates/js/translated/bom.js:633 templates/js/translated/bom.js:951
+#: templates/js/translated/build.js:2062 templates/js/translated/company.js:517
+#: templates/js/translated/company.js:1361
+#: templates/js/translated/company.js:1672 templates/js/translated/index.js:114
+#: templates/js/translated/order.js:298 templates/js/translated/part.js:1211
+#: templates/js/translated/part.js:1455 templates/js/translated/part.js:1593
+#: templates/js/translated/part.js:1932 templates/js/translated/part.js:2323
+#: templates/js/translated/part.js:2720 templates/js/translated/part.js:2811
+#: templates/js/translated/purchase_order.js:1681
+#: templates/js/translated/purchase_order.js:1827
+#: templates/js/translated/purchase_order.js:2000
+#: templates/js/translated/return_order.js:314
+#: templates/js/translated/sales_order.js:802
+#: templates/js/translated/stock.js:1438 templates/js/translated/stock.js:1974
+#: templates/js/translated/stock.js:2627 templates/js/translated/stock.js:2699
msgid "Description"
msgstr ""
@@ -383,7 +389,7 @@ msgid "parent"
msgstr ""
#: InvenTree/models.py:671 InvenTree/models.py:672
-#: templates/js/translated/part.js:2744 templates/js/translated/stock.js:2505
+#: templates/js/translated/part.js:2729 templates/js/translated/stock.js:2636
msgid "Path"
msgstr ""
@@ -419,12 +425,12 @@ msgstr ""
msgid "An error has been logged by the server."
msgstr ""
-#: InvenTree/serializers.py:60 part/models.py:3897
+#: InvenTree/serializers.py:60 part/models.py:3941
msgid "Must be a valid number"
msgstr ""
-#: InvenTree/serializers.py:90 company/models.py:154
-#: company/templates/company/company_base.html:107 part/models.py:2852
+#: InvenTree/serializers.py:90 company/models.py:150
+#: company/templates/company/company_base.html:107 part/models.py:2886
#: templates/InvenTree/settings/settings_staff_js.html:44
#: templates/currency_data.html:5
msgid "Currency"
@@ -497,130 +503,130 @@ msgstr "آدرس فایل تصویری از راه دور"
msgid "Downloading images from remote URL is not enabled"
msgstr ""
-#: InvenTree/settings.py:714
+#: InvenTree/settings.py:741
msgid "Czech"
msgstr ""
-#: InvenTree/settings.py:715
+#: InvenTree/settings.py:742
msgid "Danish"
msgstr ""
-#: InvenTree/settings.py:716
+#: InvenTree/settings.py:743
msgid "German"
msgstr ""
-#: InvenTree/settings.py:717
+#: InvenTree/settings.py:744
msgid "Greek"
msgstr ""
-#: InvenTree/settings.py:718
+#: InvenTree/settings.py:745
msgid "English"
msgstr ""
-#: InvenTree/settings.py:719
+#: InvenTree/settings.py:746
msgid "Spanish"
msgstr ""
-#: InvenTree/settings.py:720
+#: InvenTree/settings.py:747
msgid "Spanish (Mexican)"
msgstr ""
-#: InvenTree/settings.py:721
+#: InvenTree/settings.py:748
msgid "Farsi / Persian"
msgstr ""
-#: InvenTree/settings.py:722
+#: InvenTree/settings.py:749
msgid "Finnish"
msgstr ""
-#: InvenTree/settings.py:723
+#: InvenTree/settings.py:750
msgid "French"
msgstr ""
-#: InvenTree/settings.py:724
+#: InvenTree/settings.py:751
msgid "Hebrew"
msgstr ""
-#: InvenTree/settings.py:725
+#: InvenTree/settings.py:752
msgid "Hungarian"
msgstr ""
-#: InvenTree/settings.py:726
+#: InvenTree/settings.py:753
msgid "Italian"
msgstr ""
-#: InvenTree/settings.py:727
+#: InvenTree/settings.py:754
msgid "Japanese"
msgstr ""
-#: InvenTree/settings.py:728
+#: InvenTree/settings.py:755
msgid "Korean"
msgstr ""
-#: InvenTree/settings.py:729
+#: InvenTree/settings.py:756
msgid "Dutch"
msgstr ""
-#: InvenTree/settings.py:730
+#: InvenTree/settings.py:757
msgid "Norwegian"
msgstr ""
-#: InvenTree/settings.py:731
+#: InvenTree/settings.py:758
msgid "Polish"
msgstr ""
-#: InvenTree/settings.py:732
+#: InvenTree/settings.py:759
msgid "Portuguese"
msgstr ""
-#: InvenTree/settings.py:733
+#: InvenTree/settings.py:760
msgid "Portuguese (Brazilian)"
msgstr ""
-#: InvenTree/settings.py:734
+#: InvenTree/settings.py:761
msgid "Russian"
msgstr ""
-#: InvenTree/settings.py:735
+#: InvenTree/settings.py:762
msgid "Slovenian"
msgstr ""
-#: InvenTree/settings.py:736
+#: InvenTree/settings.py:763
msgid "Swedish"
msgstr ""
-#: InvenTree/settings.py:737
+#: InvenTree/settings.py:764
msgid "Thai"
msgstr ""
-#: InvenTree/settings.py:738
+#: InvenTree/settings.py:765
msgid "Turkish"
msgstr ""
-#: InvenTree/settings.py:739
+#: InvenTree/settings.py:766
msgid "Vietnamese"
msgstr ""
-#: InvenTree/settings.py:740
+#: InvenTree/settings.py:767
msgid "Chinese"
msgstr ""
-#: InvenTree/status.py:61 part/serializers.py:878
+#: InvenTree/status.py:68 part/serializers.py:940
msgid "Background worker check failed"
msgstr ""
-#: InvenTree/status.py:65
+#: InvenTree/status.py:72
msgid "Email backend not configured"
msgstr ""
-#: InvenTree/status.py:68
+#: InvenTree/status.py:75
msgid "InvenTree system health checks failed"
msgstr ""
#: InvenTree/status_codes.py:12 InvenTree/status_codes.py:40
#: InvenTree/status_codes.py:148 InvenTree/status_codes.py:167
#: InvenTree/status_codes.py:188 generic/states/tests.py:16
-#: templates/js/translated/table_filters.js:511
+#: templates/js/translated/table_filters.js:533
msgid "Pending"
msgstr ""
@@ -630,7 +636,7 @@ msgstr ""
#: InvenTree/status_codes.py:14 InvenTree/status_codes.py:151
#: InvenTree/status_codes.py:172 generic/states/tests.py:18
-#: order/templates/order/order_base.html:162
+#: order/templates/order/order_base.html:158
#: order/templates/order/sales_order_base.html:162
msgid "Complete"
msgstr ""
@@ -654,10 +660,10 @@ msgstr ""
msgid "In Progress"
msgstr ""
-#: InvenTree/status_codes.py:42 order/models.py:1332
-#: templates/js/translated/sales_order.js:1509
-#: templates/js/translated/sales_order.js:1630
-#: templates/js/translated/sales_order.js:1934
+#: InvenTree/status_codes.py:42 order/models.py:1345
+#: templates/js/translated/sales_order.js:1521
+#: templates/js/translated/sales_order.js:1642
+#: templates/js/translated/sales_order.js:1946
msgid "Shipped"
msgstr ""
@@ -689,7 +695,7 @@ msgstr ""
msgid "Legacy stock tracking entry"
msgstr ""
-#: InvenTree/status_codes.py:93 templates/js/translated/stock.js:511
+#: InvenTree/status_codes.py:93 templates/js/translated/stock.js:510
msgid "Stock item created"
msgstr ""
@@ -745,7 +751,7 @@ msgstr ""
msgid "Split child item"
msgstr ""
-#: InvenTree/status_codes.py:120 templates/js/translated/stock.js:2243
+#: InvenTree/status_codes.py:120 templates/js/translated/stock.js:1769
msgid "Merged stock items"
msgstr ""
@@ -765,7 +771,7 @@ msgstr ""
msgid "Build order output rejected"
msgstr ""
-#: InvenTree/status_codes.py:129 templates/js/translated/stock.js:1676
+#: InvenTree/status_codes.py:129 templates/js/translated/stock.js:1675
msgid "Consumed by build order"
msgstr ""
@@ -781,7 +787,7 @@ msgstr ""
msgid "Returned against Return Order"
msgstr ""
-#: InvenTree/status_codes.py:141 templates/js/translated/table_filters.js:321
+#: InvenTree/status_codes.py:141 templates/js/translated/table_filters.js:327
msgid "Sent to customer"
msgstr ""
@@ -849,83 +855,111 @@ msgstr ""
msgid "Wrong password provided"
msgstr ""
-#: InvenTree/views.py:651 templates/navbar.html:157
+#: InvenTree/views.py:653 templates/navbar.html:157
msgid "System Information"
msgstr ""
-#: InvenTree/views.py:658 templates/navbar.html:168
+#: InvenTree/views.py:660 templates/navbar.html:168
msgid "About InvenTree"
msgstr ""
-#: build/api.py:222
+#: build/api.py:242
msgid "Build must be cancelled before it can be deleted"
msgstr ""
-#: build/models.py:69 build/templates/build/build_base.html:9
+#: build/api.py:286 part/models.py:3833 templates/js/translated/bom.js:985
+#: templates/js/translated/bom.js:1025 templates/js/translated/build.js:2449
+#: templates/js/translated/table_filters.js:166
+#: templates/js/translated/table_filters.js:518
+msgid "Consumable"
+msgstr ""
+
+#: build/api.py:287 part/models.py:3827 part/templates/part/upload_bom.html:58
+#: templates/js/translated/bom.js:989 templates/js/translated/bom.js:1016
+#: templates/js/translated/build.js:2458
+#: templates/js/translated/table_filters.js:162
+#: templates/js/translated/table_filters.js:191
+#: templates/js/translated/table_filters.js:522
+msgid "Optional"
+msgstr ""
+
+#: build/api.py:288 templates/js/translated/table_filters.js:360
+#: templates/js/translated/table_filters.js:514
+msgid "Tracked"
+msgstr ""
+
+#: build/api.py:290 part/admin.py:64 templates/js/translated/build.js:1670
+#: templates/js/translated/build.js:2549
+#: templates/js/translated/sales_order.js:1918
+#: templates/js/translated/table_filters.js:506
+msgid "Allocated"
+msgstr ""
+
+#: build/models.py:73 build/templates/build/build_base.html:9
#: build/templates/build/build_base.html:27
#: report/templates/report/inventree_build_order_base.html:105
#: templates/email/build_order_completed.html:16
#: templates/email/overdue_build_order.html:15
-#: templates/js/translated/build.js:945 templates/js/translated/stock.js:2629
+#: templates/js/translated/build.js:953 templates/js/translated/stock.js:2760
msgid "Build Order"
msgstr ""
-#: build/models.py:70 build/templates/build/build_base.html:13
+#: build/models.py:74 build/templates/build/build_base.html:13
#: build/templates/build/index.html:8 build/templates/build/index.html:12
-#: order/templates/order/sales_order_detail.html:119
+#: order/templates/order/sales_order_detail.html:111
#: order/templates/order/so_sidebar.html:13
-#: part/templates/part/part_sidebar.html:22 templates/InvenTree/index.html:244
+#: part/templates/part/part_sidebar.html:22 templates/InvenTree/index.html:196
#: templates/InvenTree/search.html:141
#: templates/InvenTree/settings/sidebar.html:53
-#: templates/js/translated/search.js:228 users/models.py:42
+#: templates/js/translated/search.js:186 users/models.py:42
msgid "Build Orders"
msgstr ""
-#: build/models.py:111
+#: build/models.py:115
msgid "Invalid choice for parent build"
msgstr ""
-#: build/models.py:155
+#: build/models.py:159
msgid "Build Order Reference"
msgstr ""
-#: build/models.py:156 order/models.py:359 order/models.py:765
-#: order/models.py:1087 order/models.py:1724 part/admin.py:278
-#: part/models.py:3798 part/templates/part/upload_bom.html:54
+#: build/models.py:160 order/models.py:372 order/models.py:778
+#: order/models.py:1100 order/models.py:1737 part/admin.py:278
+#: part/models.py:3842 part/templates/part/upload_bom.html:54
#: report/templates/report/inventree_bill_of_materials_report.html:139
#: report/templates/report/inventree_po_report_base.html:28
#: report/templates/report/inventree_return_order_report_base.html:26
#: report/templates/report/inventree_so_report_base.html:28
-#: templates/js/translated/bom.js:769 templates/js/translated/bom.js:943
-#: templates/js/translated/build.js:2098 templates/js/translated/order.js:291
+#: templates/js/translated/bom.js:770 templates/js/translated/bom.js:961
+#: templates/js/translated/build.js:2441 templates/js/translated/order.js:291
#: templates/js/translated/pricing.js:386
-#: templates/js/translated/purchase_order.js:2033
-#: templates/js/translated/return_order.js:713
-#: templates/js/translated/sales_order.js:1798
+#: templates/js/translated/purchase_order.js:2043
+#: templates/js/translated/return_order.js:725
+#: templates/js/translated/sales_order.js:1810
msgid "Reference"
msgstr ""
-#: build/models.py:167
+#: build/models.py:171
msgid "Brief description of the build (optional)"
msgstr ""
-#: build/models.py:175 build/templates/build/build_base.html:183
+#: build/models.py:179 build/templates/build/build_base.html:184
#: build/templates/build/detail.html:87
msgid "Parent Build"
msgstr ""
-#: build/models.py:176
+#: build/models.py:180
msgid "BuildOrder to which this build is allocated"
msgstr ""
-#: build/models.py:181 build/templates/build/build_base.html:98
-#: build/templates/build/detail.html:29 company/models.py:775
-#: order/models.py:1195 order/models.py:1311 order/models.py:1312
-#: part/models.py:391 part/models.py:2865 part/models.py:2979
-#: part/models.py:3119 part/models.py:3138 part/models.py:3157
-#: part/models.py:3178 part/models.py:3270 part/models.py:3555
-#: part/models.py:3663 part/models.py:3763 part/models.py:4077
-#: part/serializers.py:842 part/serializers.py:1245
+#: build/models.py:185 build/templates/build/build_base.html:98
+#: build/templates/build/detail.html:29 company/models.py:924
+#: order/models.py:1208 order/models.py:1324 order/models.py:1325
+#: part/models.py:392 part/models.py:2899 part/models.py:3013
+#: part/models.py:3153 part/models.py:3172 part/models.py:3191
+#: part/models.py:3212 part/models.py:3304 part/models.py:3589
+#: part/models.py:3712 part/models.py:3807 part/models.py:4121
+#: part/serializers.py:904 part/serializers.py:1307
#: part/templates/part/part_app_base.html:8
#: part/templates/part/part_pricing.html:12
#: part/templates/part/upload_bom.html:52
@@ -935,266 +969,229 @@ msgstr ""
#: report/templates/report/inventree_po_report_base.html:27
#: report/templates/report/inventree_return_order_report_base.html:24
#: report/templates/report/inventree_so_report_base.html:27
-#: stock/serializers.py:156 stock/serializers.py:509
+#: stock/serializers.py:205 stock/serializers.py:576
#: templates/InvenTree/search.html:82
#: templates/email/build_order_completed.html:17
#: templates/email/build_order_required_stock.html:17
#: templates/email/low_stock_notification.html:15
#: templates/email/overdue_build_order.html:16
-#: templates/js/translated/barcode.js:529 templates/js/translated/bom.js:631
-#: templates/js/translated/bom.js:768 templates/js/translated/bom.js:887
-#: templates/js/translated/build.js:1403 templates/js/translated/build.js:1965
-#: templates/js/translated/build.js:2464 templates/js/translated/build.js:2868
-#: templates/js/translated/company.js:337
-#: templates/js/translated/company.js:822
-#: templates/js/translated/company.js:929
-#: templates/js/translated/company.js:1169 templates/js/translated/part.js:1918
-#: templates/js/translated/part.js:1990 templates/js/translated/part.js:2216
-#: templates/js/translated/pricing.js:369
-#: templates/js/translated/purchase_order.js:746
-#: templates/js/translated/purchase_order.js:1274
-#: templates/js/translated/purchase_order.js:1811
-#: templates/js/translated/purchase_order.js:1975
-#: templates/js/translated/return_order.js:527
-#: templates/js/translated/return_order.js:694
-#: templates/js/translated/sales_order.js:285
-#: templates/js/translated/sales_order.js:1185
-#: templates/js/translated/sales_order.js:1584
-#: templates/js/translated/sales_order.js:1782
-#: templates/js/translated/stock.js:643 templates/js/translated/stock.js:809
-#: templates/js/translated/stock.js:1021 templates/js/translated/stock.js:1773
-#: templates/js/translated/stock.js:2594 templates/js/translated/stock.js:2831
-#: templates/js/translated/stock.js:2968
+#: templates/js/translated/barcode.js:529 templates/js/translated/bom.js:632
+#: templates/js/translated/bom.js:769 templates/js/translated/bom.js:905
+#: templates/js/translated/build.js:1289 templates/js/translated/build.js:1669
+#: templates/js/translated/build.js:2085 templates/js/translated/build.js:2261
+#: templates/js/translated/company.js:347
+#: templates/js/translated/company.js:1147
+#: templates/js/translated/company.js:1302
+#: templates/js/translated/company.js:1590 templates/js/translated/index.js:104
+#: templates/js/translated/part.js:1917 templates/js/translated/part.js:1989
+#: templates/js/translated/part.js:2292 templates/js/translated/pricing.js:369
+#: templates/js/translated/purchase_order.js:757
+#: templates/js/translated/purchase_order.js:1289
+#: templates/js/translated/purchase_order.js:1826
+#: templates/js/translated/purchase_order.js:1985
+#: templates/js/translated/return_order.js:539
+#: templates/js/translated/return_order.js:706
+#: templates/js/translated/sales_order.js:297
+#: templates/js/translated/sales_order.js:1197
+#: templates/js/translated/sales_order.js:1596
+#: templates/js/translated/sales_order.js:1794
+#: templates/js/translated/stock.js:642 templates/js/translated/stock.js:808
+#: templates/js/translated/stock.js:1020 templates/js/translated/stock.js:1913
+#: templates/js/translated/stock.js:2725 templates/js/translated/stock.js:2958
+#: templates/js/translated/stock.js:3095
msgid "Part"
msgstr ""
-#: build/models.py:189
+#: build/models.py:193
msgid "Select part to build"
msgstr ""
-#: build/models.py:194
+#: build/models.py:198
msgid "Sales Order Reference"
msgstr "مرجع سفارش فروش"
-#: build/models.py:198
+#: build/models.py:202
msgid "SalesOrder to which this build is allocated"
msgstr ""
-#: build/models.py:203 build/serializers.py:942
-#: templates/js/translated/build.js:2452
-#: templates/js/translated/sales_order.js:1173
+#: build/models.py:207 build/serializers.py:946
+#: templates/js/translated/build.js:1657
+#: templates/js/translated/sales_order.js:1185
msgid "Source Location"
msgstr "منبع محل"
-#: build/models.py:207
+#: build/models.py:211
msgid "Select location to take stock from for this build (leave blank to take from any stock location)"
msgstr ""
-#: build/models.py:212
+#: build/models.py:216
msgid "Destination Location"
msgstr "مقصد"
-#: build/models.py:216
+#: build/models.py:220
msgid "Select location where the completed items will be stored"
msgstr ""
-#: build/models.py:220
+#: build/models.py:224
msgid "Build Quantity"
msgstr ""
-#: build/models.py:223
+#: build/models.py:227
msgid "Number of stock items to build"
msgstr ""
-#: build/models.py:227
+#: build/models.py:231
msgid "Completed items"
msgstr ""
-#: build/models.py:229
+#: build/models.py:233
msgid "Number of stock items which have been completed"
msgstr ""
-#: build/models.py:233
+#: build/models.py:237
msgid "Build Status"
msgstr ""
-#: build/models.py:237
+#: build/models.py:241
msgid "Build status code"
msgstr ""
-#: build/models.py:246 build/serializers.py:269 order/serializers.py:506
-#: stock/models.py:739 templates/js/translated/purchase_order.js:1099
+#: build/models.py:250 build/serializers.py:277 order/serializers.py:512
+#: stock/models.py:739 templates/js/translated/purchase_order.js:1114
msgid "Batch Code"
msgstr ""
-#: build/models.py:250 build/serializers.py:270
+#: build/models.py:254 build/serializers.py:278
msgid "Batch code for this build output"
msgstr ""
-#: build/models.py:253 order/models.py:244 part/models.py:1038
+#: build/models.py:257 order/models.py:248 part/models.py:1039
#: part/templates/part/part_base.html:312
-#: templates/js/translated/return_order.js:327
-#: templates/js/translated/sales_order.js:815
+#: templates/js/translated/return_order.js:339
+#: templates/js/translated/sales_order.js:827
msgid "Creation Date"
msgstr ""
-#: build/models.py:257
+#: build/models.py:261
msgid "Target completion date"
msgstr ""
-#: build/models.py:258
+#: build/models.py:262
msgid "Target date for build completion. Build will be overdue after this date."
msgstr ""
-#: build/models.py:261 order/models.py:409 order/models.py:1767
-#: templates/js/translated/build.js:2953
+#: build/models.py:265 order/models.py:422 order/models.py:1780
+#: templates/js/translated/build.js:2170
msgid "Completion Date"
msgstr ""
-#: build/models.py:267
+#: build/models.py:271
msgid "completed by"
msgstr ""
-#: build/models.py:275 templates/js/translated/build.js:2913
+#: build/models.py:279 templates/js/translated/build.js:2130
msgid "Issued by"
msgstr ""
-#: build/models.py:276
+#: build/models.py:280
msgid "User who issued this build order"
msgstr ""
-#: build/models.py:284 build/templates/build/build_base.html:204
-#: build/templates/build/detail.html:122 order/models.py:258
-#: order/templates/order/order_base.html:214
-#: order/templates/order/return_order_base.html:182
-#: order/templates/order/sales_order_base.html:222 part/models.py:1042
+#: build/models.py:288 build/templates/build/build_base.html:205
+#: build/templates/build/detail.html:122 order/models.py:262
+#: order/templates/order/order_base.html:217
+#: order/templates/order/return_order_base.html:189
+#: order/templates/order/sales_order_base.html:229 part/models.py:1043
#: part/templates/part/part_base.html:392
#: report/templates/report/inventree_build_order_base.html:158
-#: templates/js/translated/build.js:2925
-#: templates/js/translated/purchase_order.js:1723
-#: templates/js/translated/return_order.js:347
-#: templates/js/translated/table_filters.js:461
+#: templates/js/translated/build.js:2142
+#: templates/js/translated/purchase_order.js:1738
+#: templates/js/translated/return_order.js:359
+#: templates/js/translated/table_filters.js:467
msgid "Responsible"
msgstr ""
-#: build/models.py:285
+#: build/models.py:289
msgid "User or group responsible for this build order"
msgstr ""
-#: build/models.py:290 build/templates/build/detail.html:108
+#: build/models.py:294 build/templates/build/detail.html:108
#: company/templates/company/manufacturer_part.html:107
#: company/templates/company/supplier_part.html:195
-#: order/templates/order/order_base.html:171
+#: order/templates/order/order_base.html:167
#: order/templates/order/return_order_base.html:146
#: order/templates/order/sales_order_base.html:181
#: part/templates/part/part_base.html:385 stock/models.py:733
#: stock/templates/stock/item_base.html:201
+#: templates/js/translated/company.js:1050
msgid "External Link"
msgstr ""
-#: build/models.py:295
+#: build/models.py:299
msgid "Build Priority"
msgstr ""
-#: build/models.py:298
+#: build/models.py:302
msgid "Priority of this build order"
msgstr ""
-#: build/models.py:536
+#: build/models.py:309 common/models.py:104 order/admin.py:17
+#: order/models.py:237 templates/InvenTree/settings/settings_staff_js.html:70
+#: templates/js/translated/build.js:2067
+#: templates/js/translated/purchase_order.js:1685
+#: templates/js/translated/return_order.js:318
+#: templates/js/translated/sales_order.js:806
+#: templates/js/translated/table_filters.js:24
+#: templates/project_code_data.html:6
+msgid "Project Code"
+msgstr ""
+
+#: build/models.py:310
+msgid "Project code for this build order"
+msgstr ""
+
+#: build/models.py:545
#, python-brace-format
msgid "Build order {build} has been completed"
msgstr ""
-#: build/models.py:542
+#: build/models.py:551
msgid "A build order has been completed"
msgstr ""
-#: build/models.py:744 build/models.py:811
+#: build/models.py:753 build/models.py:831
msgid "No build output specified"
msgstr ""
-#: build/models.py:747
+#: build/models.py:756
msgid "Build output is already completed"
msgstr ""
-#: build/models.py:750
+#: build/models.py:759
msgid "Build output does not match Build Order"
msgstr ""
-#: build/models.py:815 build/serializers.py:212 build/serializers.py:251
-#: build/serializers.py:811 order/models.py:440 order/serializers.py:379
-#: order/serializers.py:501 part/serializers.py:1087 part/serializers.py:1408
-#: stock/models.py:593 stock/models.py:1387 stock/serializers.py:315
+#: build/models.py:835 build/serializers.py:220 build/serializers.py:259
+#: build/serializers.py:819 order/models.py:453 order/serializers.py:385
+#: order/serializers.py:507 part/serializers.py:1149 part/serializers.py:1470
+#: stock/models.py:593 stock/models.py:1387 stock/serializers.py:381
msgid "Quantity must be greater than zero"
msgstr ""
-#: build/models.py:820 build/serializers.py:217
+#: build/models.py:840 build/serializers.py:225
msgid "Quantity cannot be greater than the output quantity"
msgstr ""
-#: build/models.py:1272
-msgid "Build item must specify a build output, as master part is marked as trackable"
+#: build/models.py:1260
+msgid "Build object"
msgstr ""
-#: build/models.py:1281
-#, python-brace-format
-msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})"
-msgstr ""
-
-#: build/models.py:1291 order/models.py:1601
-msgid "Stock item is over-allocated"
-msgstr ""
-
-#: build/models.py:1297 order/models.py:1604
-msgid "Allocation quantity must be greater than zero"
-msgstr ""
-
-#: build/models.py:1303
-msgid "Quantity must be 1 for serialized stock"
-msgstr ""
-
-#: build/models.py:1360
-msgid "Selected stock item not found in BOM"
-msgstr ""
-
-#: build/models.py:1438 stock/templates/stock/item_base.html:170
-#: templates/InvenTree/search.html:139 templates/js/translated/build.js:2841
-#: templates/navbar.html:38
-msgid "Build"
-msgstr ""
-
-#: build/models.py:1439
-msgid "Build to allocate parts"
-msgstr ""
-
-#: build/models.py:1455 build/serializers.py:791 order/serializers.py:1059
-#: order/serializers.py:1080 stock/serializers.py:413 stock/serializers.py:770
-#: stock/serializers.py:896 stock/templates/stock/item_base.html:10
-#: stock/templates/stock/item_base.html:23
-#: stock/templates/stock/item_base.html:195
-#: templates/js/translated/build.js:955 templates/js/translated/build.js:960
-#: templates/js/translated/build.js:2466 templates/js/translated/build.js:3038
-#: templates/js/translated/sales_order.js:286
-#: templates/js/translated/sales_order.js:1186
-#: templates/js/translated/sales_order.js:1485
-#: templates/js/translated/sales_order.js:1490
-#: templates/js/translated/sales_order.js:1591
-#: templates/js/translated/sales_order.js:1678
-#: templates/js/translated/stock.js:644 templates/js/translated/stock.js:810
-#: templates/js/translated/stock.js:2714
-msgid "Stock Item"
-msgstr ""
-
-#: build/models.py:1456
-msgid "Source stock item"
-msgstr ""
-
-#: build/models.py:1468 build/serializers.py:198 build/serializers.py:236
-#: build/templates/build/build_base.html:103
-#: build/templates/build/detail.html:34 common/models.py:2176
-#: order/models.py:1073 order/models.py:1645 order/serializers.py:1233
+#: build/models.py:1274 build/models.py:1556 build/serializers.py:206
+#: build/serializers.py:244 build/templates/build/build_base.html:103
+#: build/templates/build/detail.html:34 common/models.py:2162
+#: order/models.py:1086 order/models.py:1658 order/serializers.py:1239
#: order/templates/order/order_wizard/match_parts.html:30 part/admin.py:277
-#: part/forms.py:47 part/models.py:2992 part/models.py:3779
+#: part/forms.py:47 part/models.py:3026 part/models.py:3823
#: part/templates/part/part_pricing.html:16
#: part/templates/part/upload_bom.html:53
#: report/templates/report/inventree_bill_of_materials_report.html:138
@@ -1203,315 +1200,367 @@ msgstr ""
#: report/templates/report/inventree_so_report_base.html:29
#: report/templates/report/inventree_test_report_base.html:90
#: report/templates/report/inventree_test_report_base.html:170
-#: stock/admin.py:103 stock/serializers.py:306
+#: stock/admin.py:103 stock/serializers.py:372
#: stock/templates/stock/item_base.html:288
#: stock/templates/stock/item_base.html:296
#: stock/templates/stock/item_base.html:343
#: templates/email/build_order_completed.html:18
-#: templates/js/translated/barcode.js:531 templates/js/translated/bom.js:770
-#: templates/js/translated/bom.js:951 templates/js/translated/build.js:504
-#: templates/js/translated/build.js:716 templates/js/translated/build.js:982
-#: templates/js/translated/build.js:1425 templates/js/translated/build.js:1991
-#: templates/js/translated/build.js:2467
-#: templates/js/translated/company.js:1428
-#: templates/js/translated/model_renderers.js:207
-#: templates/js/translated/order.js:304 templates/js/translated/part.js:935
-#: templates/js/translated/part.js:1784 templates/js/translated/part.js:3263
+#: templates/js/translated/barcode.js:531 templates/js/translated/bom.js:771
+#: templates/js/translated/bom.js:969 templates/js/translated/build.js:510
+#: templates/js/translated/build.js:722 templates/js/translated/build.js:1308
+#: templates/js/translated/build.js:1672 templates/js/translated/build.js:2283
+#: templates/js/translated/company.js:1849
+#: templates/js/translated/model_renderers.js:221
+#: templates/js/translated/order.js:304 templates/js/translated/part.js:934
+#: templates/js/translated/part.js:1783 templates/js/translated/part.js:3248
#: templates/js/translated/pricing.js:381
#: templates/js/translated/pricing.js:474
#: templates/js/translated/pricing.js:522
#: templates/js/translated/pricing.js:616
-#: templates/js/translated/purchase_order.js:749
-#: templates/js/translated/purchase_order.js:1815
-#: templates/js/translated/purchase_order.js:2039
-#: templates/js/translated/sales_order.js:302
-#: templates/js/translated/sales_order.js:1187
-#: templates/js/translated/sales_order.js:1504
-#: templates/js/translated/sales_order.js:1594
-#: templates/js/translated/sales_order.js:1684
-#: templates/js/translated/sales_order.js:1804
-#: templates/js/translated/stock.js:531 templates/js/translated/stock.js:669
-#: templates/js/translated/stock.js:840 templates/js/translated/stock.js:2758
-#: templates/js/translated/stock.js:2843
+#: templates/js/translated/purchase_order.js:760
+#: templates/js/translated/purchase_order.js:1830
+#: templates/js/translated/purchase_order.js:2049
+#: templates/js/translated/sales_order.js:314
+#: templates/js/translated/sales_order.js:1199
+#: templates/js/translated/sales_order.js:1516
+#: templates/js/translated/sales_order.js:1606
+#: templates/js/translated/sales_order.js:1696
+#: templates/js/translated/sales_order.js:1816
+#: templates/js/translated/stock.js:530 templates/js/translated/stock.js:668
+#: templates/js/translated/stock.js:839 templates/js/translated/stock.js:2889
+#: templates/js/translated/stock.js:2970
msgid "Quantity"
msgstr ""
-#: build/models.py:1469
+#: build/models.py:1275
+msgid "Required quantity for build order"
+msgstr ""
+
+#: build/models.py:1357
+msgid "Build item must specify a build output, as master part is marked as trackable"
+msgstr ""
+
+#: build/models.py:1366
+#, python-brace-format
+msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})"
+msgstr ""
+
+#: build/models.py:1376 order/models.py:1614
+msgid "Stock item is over-allocated"
+msgstr ""
+
+#: build/models.py:1382 order/models.py:1617
+msgid "Allocation quantity must be greater than zero"
+msgstr ""
+
+#: build/models.py:1388
+msgid "Quantity must be 1 for serialized stock"
+msgstr ""
+
+#: build/models.py:1449
+msgid "Selected stock item does not match BOM line"
+msgstr ""
+
+#: build/models.py:1543 build/serializers.py:799 order/serializers.py:1065
+#: order/serializers.py:1086 stock/serializers.py:479 stock/serializers.py:887
+#: stock/serializers.py:1013 stock/templates/stock/item_base.html:10
+#: stock/templates/stock/item_base.html:23
+#: stock/templates/stock/item_base.html:195
+#: templates/js/translated/build.js:1671
+#: templates/js/translated/sales_order.js:298
+#: templates/js/translated/sales_order.js:1198
+#: templates/js/translated/sales_order.js:1497
+#: templates/js/translated/sales_order.js:1502
+#: templates/js/translated/sales_order.js:1603
+#: templates/js/translated/sales_order.js:1690
+#: templates/js/translated/stock.js:643 templates/js/translated/stock.js:809
+#: templates/js/translated/stock.js:2845
+msgid "Stock Item"
+msgstr ""
+
+#: build/models.py:1544
+msgid "Source stock item"
+msgstr ""
+
+#: build/models.py:1557
msgid "Stock quantity to allocate to build"
msgstr ""
-#: build/models.py:1477
+#: build/models.py:1565
msgid "Install into"
msgstr ""
-#: build/models.py:1478
+#: build/models.py:1566
msgid "Destination stock item"
msgstr ""
-#: build/serializers.py:148 build/serializers.py:820
-#: templates/js/translated/build.js:1413
+#: build/serializers.py:156 build/serializers.py:828
+#: templates/js/translated/build.js:1299
msgid "Build Output"
msgstr ""
-#: build/serializers.py:160
+#: build/serializers.py:168
msgid "Build output does not match the parent build"
msgstr ""
-#: build/serializers.py:164
+#: build/serializers.py:172
msgid "Output part does not match BuildOrder part"
msgstr ""
-#: build/serializers.py:168
+#: build/serializers.py:176
msgid "This build output has already been completed"
msgstr ""
-#: build/serializers.py:179
+#: build/serializers.py:187
msgid "This build output is not fully allocated"
msgstr ""
-#: build/serializers.py:199 build/serializers.py:237
+#: build/serializers.py:207 build/serializers.py:245
msgid "Enter quantity for build output"
msgstr ""
-#: build/serializers.py:258
+#: build/serializers.py:266
msgid "Integer quantity required for trackable parts"
msgstr ""
-#: build/serializers.py:261
+#: build/serializers.py:269
msgid "Integer quantity required, as the bill of materials contains trackable parts"
msgstr ""
-#: build/serializers.py:276 order/serializers.py:514 order/serializers.py:1237
-#: stock/serializers.py:324 templates/js/translated/purchase_order.js:1123
-#: templates/js/translated/stock.js:334 templates/js/translated/stock.js:532
+#: build/serializers.py:284 order/serializers.py:520 order/serializers.py:1243
+#: stock/serializers.py:390 templates/js/translated/purchase_order.js:1138
+#: templates/js/translated/stock.js:333 templates/js/translated/stock.js:531
msgid "Serial Numbers"
msgstr ""
-#: build/serializers.py:277
+#: build/serializers.py:285
msgid "Enter serial numbers for build outputs"
msgstr ""
-#: build/serializers.py:290
+#: build/serializers.py:298
msgid "Auto Allocate Serial Numbers"
msgstr ""
-#: build/serializers.py:291
+#: build/serializers.py:299
msgid "Automatically allocate required items with matching serial numbers"
msgstr ""
-#: build/serializers.py:326 stock/api.py:670
+#: build/serializers.py:334 stock/api.py:707
msgid "The following serial numbers already exist or are invalid"
msgstr ""
-#: build/serializers.py:377 build/serializers.py:439 build/serializers.py:518
+#: build/serializers.py:385 build/serializers.py:447 build/serializers.py:526
msgid "A list of build outputs must be provided"
msgstr ""
-#: build/serializers.py:415 build/serializers.py:488 order/serializers.py:487
-#: order/serializers.py:606 order/serializers.py:1588 part/serializers.py:854
-#: stock/serializers.py:335 stock/serializers.py:470 stock/serializers.py:551
-#: stock/serializers.py:931 stock/serializers.py:1173
+#: build/serializers.py:423 build/serializers.py:496 order/serializers.py:493
+#: order/serializers.py:612 order/serializers.py:1594 part/serializers.py:916
+#: stock/serializers.py:401 stock/serializers.py:537 stock/serializers.py:618
+#: stock/serializers.py:1048 stock/serializers.py:1290
#: stock/templates/stock/item_base.html:390
#: templates/js/translated/barcode.js:530
-#: templates/js/translated/barcode.js:778 templates/js/translated/build.js:967
-#: templates/js/translated/build.js:2006
-#: templates/js/translated/purchase_order.js:1148
-#: templates/js/translated/purchase_order.js:1238
-#: templates/js/translated/sales_order.js:1497
-#: templates/js/translated/sales_order.js:1605
-#: templates/js/translated/sales_order.js:1613
-#: templates/js/translated/sales_order.js:1692
-#: templates/js/translated/stock.js:645 templates/js/translated/stock.js:811
-#: templates/js/translated/stock.js:1023 templates/js/translated/stock.js:1937
-#: templates/js/translated/stock.js:2608
+#: templates/js/translated/barcode.js:778 templates/js/translated/build.js:980
+#: templates/js/translated/build.js:2298
+#: templates/js/translated/purchase_order.js:1163
+#: templates/js/translated/purchase_order.js:1253
+#: templates/js/translated/sales_order.js:1509
+#: templates/js/translated/sales_order.js:1617
+#: templates/js/translated/sales_order.js:1625
+#: templates/js/translated/sales_order.js:1704
+#: templates/js/translated/stock.js:644 templates/js/translated/stock.js:810
+#: templates/js/translated/stock.js:1022 templates/js/translated/stock.js:2094
+#: templates/js/translated/stock.js:2739
msgid "Location"
msgstr ""
-#: build/serializers.py:416
+#: build/serializers.py:424
msgid "Stock location for scrapped outputs"
msgstr ""
-#: build/serializers.py:422
+#: build/serializers.py:430
msgid "Discard Allocations"
msgstr ""
-#: build/serializers.py:423
+#: build/serializers.py:431
msgid "Discard any stock allocations for scrapped outputs"
msgstr ""
-#: build/serializers.py:428
+#: build/serializers.py:436
msgid "Reason for scrapping build output(s)"
msgstr ""
-#: build/serializers.py:489
+#: build/serializers.py:497
msgid "Location for completed build outputs"
msgstr ""
-#: build/serializers.py:495 build/templates/build/build_base.html:151
-#: build/templates/build/detail.html:62 order/models.py:791
-#: order/models.py:1750 order/serializers.py:524 stock/admin.py:106
-#: stock/templates/stock/item_base.html:423
-#: templates/js/translated/barcode.js:252 templates/js/translated/build.js:2897
-#: templates/js/translated/purchase_order.js:1278
-#: templates/js/translated/purchase_order.js:1682
-#: templates/js/translated/return_order.js:319
-#: templates/js/translated/sales_order.js:807
-#: templates/js/translated/stock.js:1912 templates/js/translated/stock.js:2732
-#: templates/js/translated/stock.js:2859
+#: build/serializers.py:503 build/templates/build/build_base.html:152
+#: build/templates/build/detail.html:62 order/models.py:804
+#: order/models.py:1763 order/serializers.py:530 stock/admin.py:106
+#: stock/serializers.py:677 stock/templates/stock/item_base.html:423
+#: templates/js/translated/barcode.js:252 templates/js/translated/build.js:2114
+#: templates/js/translated/purchase_order.js:1293
+#: templates/js/translated/purchase_order.js:1697
+#: templates/js/translated/return_order.js:331
+#: templates/js/translated/sales_order.js:819
+#: templates/js/translated/stock.js:2069 templates/js/translated/stock.js:2863
+#: templates/js/translated/stock.js:2986
msgid "Status"
msgstr ""
-#: build/serializers.py:501
+#: build/serializers.py:509
msgid "Accept Incomplete Allocation"
msgstr ""
-#: build/serializers.py:502
+#: build/serializers.py:510
msgid "Complete outputs if stock has not been fully allocated"
msgstr ""
-#: build/serializers.py:571
+#: build/serializers.py:579
msgid "Remove Allocated Stock"
msgstr ""
-#: build/serializers.py:572
+#: build/serializers.py:580
msgid "Subtract any stock which has already been allocated to this build"
msgstr ""
-#: build/serializers.py:578
+#: build/serializers.py:586
msgid "Remove Incomplete Outputs"
msgstr ""
-#: build/serializers.py:579
+#: build/serializers.py:587
msgid "Delete any build outputs which have not been completed"
msgstr ""
-#: build/serializers.py:606
+#: build/serializers.py:614
msgid "Not permitted"
msgstr ""
-#: build/serializers.py:607
+#: build/serializers.py:615
msgid "Accept as consumed by this build order"
msgstr ""
-#: build/serializers.py:608
+#: build/serializers.py:616
msgid "Deallocate before completing this build order"
msgstr ""
-#: build/serializers.py:631
+#: build/serializers.py:639
msgid "Overallocated Stock"
msgstr ""
-#: build/serializers.py:633
+#: build/serializers.py:641
msgid "How do you want to handle extra stock items assigned to the build order"
msgstr ""
-#: build/serializers.py:643
+#: build/serializers.py:651
msgid "Some stock items have been overallocated"
msgstr ""
-#: build/serializers.py:648
+#: build/serializers.py:656
msgid "Accept Unallocated"
msgstr ""
-#: build/serializers.py:649
+#: build/serializers.py:657
msgid "Accept that stock items have not been fully allocated to this build order"
msgstr ""
-#: build/serializers.py:659 templates/js/translated/build.js:295
+#: build/serializers.py:667 templates/js/translated/build.js:304
msgid "Required stock has not been fully allocated"
msgstr ""
-#: build/serializers.py:664 order/serializers.py:261 order/serializers.py:1127
+#: build/serializers.py:672 order/serializers.py:267 order/serializers.py:1133
msgid "Accept Incomplete"
msgstr ""
-#: build/serializers.py:665
+#: build/serializers.py:673
msgid "Accept that the required number of build outputs have not been completed"
msgstr ""
-#: build/serializers.py:675 templates/js/translated/build.js:299
+#: build/serializers.py:683 templates/js/translated/build.js:308
msgid "Required build quantity has not been completed"
msgstr ""
-#: build/serializers.py:684 templates/js/translated/build.js:283
+#: build/serializers.py:692 templates/js/translated/build.js:292
msgid "Build order has incomplete outputs"
msgstr ""
-#: build/serializers.py:714 build/serializers.py:768 part/models.py:3686
-#: part/models.py:4069
-msgid "BOM Item"
-msgstr ""
-
-#: build/serializers.py:724
-msgid "Build output"
+#: build/serializers.py:722
+msgid "Build Line"
msgstr ""
#: build/serializers.py:732
+msgid "Build output"
+msgstr ""
+
+#: build/serializers.py:740
msgid "Build output must point to the same build"
msgstr ""
-#: build/serializers.py:782
+#: build/serializers.py:776
+msgid "Build Line Item"
+msgstr ""
+
+#: build/serializers.py:790
msgid "bom_item.part must point to the same part as the build order"
msgstr ""
-#: build/serializers.py:797 stock/serializers.py:783
+#: build/serializers.py:805 stock/serializers.py:900
msgid "Item must be in stock"
msgstr ""
-#: build/serializers.py:846 order/serializers.py:1117
+#: build/serializers.py:853 order/serializers.py:1123
#, python-brace-format
msgid "Available quantity ({q}) exceeded"
msgstr ""
-#: build/serializers.py:852
+#: build/serializers.py:859
msgid "Build output must be specified for allocation of tracked parts"
msgstr ""
-#: build/serializers.py:859
+#: build/serializers.py:866
msgid "Build output cannot be specified for allocation of untracked parts"
msgstr ""
-#: build/serializers.py:864
+#: build/serializers.py:871
msgid "This stock item has already been allocated to this build output"
msgstr ""
-#: build/serializers.py:887 order/serializers.py:1401
+#: build/serializers.py:894 order/serializers.py:1407
msgid "Allocation items must be provided"
msgstr ""
-#: build/serializers.py:943
+#: build/serializers.py:947
msgid "Stock location where parts are to be sourced (leave blank to take from any location)"
msgstr ""
-#: build/serializers.py:951
+#: build/serializers.py:955
msgid "Exclude Location"
msgstr ""
-#: build/serializers.py:952
+#: build/serializers.py:956
msgid "Exclude stock items from this selected location"
msgstr ""
-#: build/serializers.py:957
+#: build/serializers.py:961
msgid "Interchangeable Stock"
msgstr ""
-#: build/serializers.py:958
+#: build/serializers.py:962
msgid "Stock items in multiple locations can be used interchangeably"
msgstr ""
-#: build/serializers.py:963
+#: build/serializers.py:967
msgid "Substitute Stock"
msgstr ""
-#: build/serializers.py:964
+#: build/serializers.py:968
msgid "Allow allocation of substitute parts"
msgstr ""
-#: build/serializers.py:969
+#: build/serializers.py:973
msgid "Optional Items"
msgstr ""
-#: build/serializers.py:970
+#: build/serializers.py:974
msgid "Allocate optional BOM items to build order"
msgstr ""
@@ -1540,6 +1589,7 @@ msgstr ""
#: part/templates/part/part_base.html:43
#: stock/templates/stock/item_base.html:41
#: stock/templates/stock/location.html:54
+#: templates/js/translated/filters.js:336
msgid "Barcode actions"
msgstr ""
@@ -1618,69 +1668,67 @@ msgstr ""
msgid "Build Description"
msgstr ""
-#: build/templates/build/build_base.html:117
+#: build/templates/build/build_base.html:118
msgid "No build outputs have been created for this build order"
msgstr ""
-#: build/templates/build/build_base.html:124
+#: build/templates/build/build_base.html:125
msgid "Build Order is ready to mark as completed"
msgstr ""
-#: build/templates/build/build_base.html:129
+#: build/templates/build/build_base.html:130
msgid "Build Order cannot be completed as outstanding outputs remain"
msgstr ""
-#: build/templates/build/build_base.html:134
+#: build/templates/build/build_base.html:135
msgid "Required build quantity has not yet been completed"
msgstr ""
-#: build/templates/build/build_base.html:139
+#: build/templates/build/build_base.html:140
msgid "Stock has not been fully allocated to this Build Order"
msgstr ""
-#: build/templates/build/build_base.html:160
-#: build/templates/build/detail.html:138 order/models.py:240
-#: order/models.py:1099 order/templates/order/order_base.html:190
+#: build/templates/build/build_base.html:161
+#: build/templates/build/detail.html:138 order/models.py:244
+#: order/models.py:1112 order/templates/order/order_base.html:186
#: order/templates/order/return_order_base.html:165
#: order/templates/order/sales_order_base.html:193
#: report/templates/report/inventree_build_order_base.html:125
-#: templates/js/translated/build.js:2945 templates/js/translated/part.js:1802
-#: templates/js/translated/purchase_order.js:1699
-#: templates/js/translated/purchase_order.js:2115
-#: templates/js/translated/return_order.js:335
-#: templates/js/translated/return_order.js:735
-#: templates/js/translated/sales_order.js:823
-#: templates/js/translated/sales_order.js:1847
+#: templates/js/translated/build.js:2162 templates/js/translated/part.js:1801
+#: templates/js/translated/purchase_order.js:1714
+#: templates/js/translated/purchase_order.js:2125
+#: templates/js/translated/return_order.js:347
+#: templates/js/translated/return_order.js:747
+#: templates/js/translated/sales_order.js:835
+#: templates/js/translated/sales_order.js:1859
msgid "Target Date"
msgstr ""
-#: build/templates/build/build_base.html:165
+#: build/templates/build/build_base.html:166
#, python-format
msgid "This build was due on %(target)s"
msgstr ""
-#: build/templates/build/build_base.html:165
-#: build/templates/build/build_base.html:222
-#: order/templates/order/order_base.html:126
+#: build/templates/build/build_base.html:166
+#: build/templates/build/build_base.html:223
+#: order/templates/order/order_base.html:122
#: order/templates/order/return_order_base.html:118
#: order/templates/order/sales_order_base.html:123
-#: templates/js/translated/table_filters.js:68
-#: templates/js/translated/table_filters.js:454
-#: templates/js/translated/table_filters.js:539
-#: templates/js/translated/table_filters.js:580
+#: templates/js/translated/table_filters.js:74
+#: templates/js/translated/table_filters.js:460
+#: templates/js/translated/table_filters.js:561
+#: templates/js/translated/table_filters.js:602
msgid "Overdue"
msgstr ""
-#: build/templates/build/build_base.html:177
-#: build/templates/build/detail.html:67 build/templates/build/detail.html:149
-#: order/templates/order/sales_order_base.html:203
-#: templates/js/translated/table_filters.js:602
-msgid "Completed"
+#: build/templates/build/build_base.html:178
+#: build/templates/build/detail.html:67 build/templates/build/sidebar.html:13
+msgid "Completed Outputs"
msgstr ""
-#: build/templates/build/build_base.html:190
-#: build/templates/build/detail.html:101 order/api.py:1454 order/models.py:1304
-#: order/models.py:1403 order/models.py:1551
+#: build/templates/build/build_base.html:191
+#: build/templates/build/detail.html:101 order/api.py:1454 order/models.py:1317
+#: order/models.py:1416 order/models.py:1564
#: order/templates/order/sales_order_base.html:9
#: order/templates/order/sales_order_base.html:28
#: report/templates/report/inventree_build_order_base.html:135
@@ -1688,32 +1736,32 @@ msgstr ""
#: stock/templates/stock/item_base.html:370
#: templates/email/overdue_sales_order.html:15
#: templates/js/translated/pricing.js:915
-#: templates/js/translated/sales_order.js:757
-#: templates/js/translated/sales_order.js:980
-#: templates/js/translated/stock.js:2661
+#: templates/js/translated/sales_order.js:769
+#: templates/js/translated/sales_order.js:992
+#: templates/js/translated/stock.js:2792
msgid "Sales Order"
msgstr ""
-#: build/templates/build/build_base.html:197
+#: build/templates/build/build_base.html:198
#: build/templates/build/detail.html:115
#: report/templates/report/inventree_build_order_base.html:152
msgid "Issued By"
msgstr ""
-#: build/templates/build/build_base.html:211
-#: build/templates/build/detail.html:94 templates/js/translated/build.js:2862
+#: build/templates/build/build_base.html:212
+#: build/templates/build/detail.html:94 templates/js/translated/build.js:2079
msgid "Priority"
msgstr ""
-#: build/templates/build/build_base.html:273
+#: build/templates/build/build_base.html:274
msgid "Delete Build Order"
msgstr ""
-#: build/templates/build/build_base.html:283
+#: build/templates/build/build_base.html:284
msgid "Build Order QR Code"
msgstr ""
-#: build/templates/build/build_base.html:295
+#: build/templates/build/build_base.html:296
msgid "Link Barcode to Build Order"
msgstr ""
@@ -1729,8 +1777,8 @@ msgstr ""
msgid "Stock can be taken from any available location."
msgstr ""
-#: build/templates/build/detail.html:49 order/models.py:1222
-#: templates/js/translated/purchase_order.js:2157
+#: build/templates/build/detail.html:49 order/models.py:1235
+#: templates/js/translated/purchase_order.js:2167
msgid "Destination"
msgstr ""
@@ -1744,21 +1792,21 @@ msgstr ""
#: build/templates/build/detail.html:80 stock/admin.py:105
#: stock/templates/stock/item_base.html:163
-#: templates/js/translated/build.js:1432
-#: templates/js/translated/model_renderers.js:212
-#: templates/js/translated/purchase_order.js:1244
-#: templates/js/translated/stock.js:1093 templates/js/translated/stock.js:1926
-#: templates/js/translated/stock.js:2866
-#: templates/js/translated/table_filters.js:259
-#: templates/js/translated/table_filters.js:350
+#: templates/js/translated/build.js:1319
+#: templates/js/translated/model_renderers.js:226
+#: templates/js/translated/purchase_order.js:1259
+#: templates/js/translated/stock.js:1092 templates/js/translated/stock.js:2083
+#: templates/js/translated/stock.js:2993
+#: templates/js/translated/table_filters.js:265
+#: templates/js/translated/table_filters.js:356
msgid "Batch"
msgstr ""
#: build/templates/build/detail.html:133
-#: order/templates/order/order_base.html:177
+#: order/templates/order/order_base.html:173
#: order/templates/order/return_order_base.html:152
#: order/templates/order/sales_order_base.html:187
-#: templates/js/translated/build.js:2905
+#: templates/js/translated/build.js:2122
msgid "Created"
msgstr ""
@@ -1766,147 +1814,106 @@ msgstr ""
msgid "No target date set"
msgstr ""
+#: build/templates/build/detail.html:149
+#: order/templates/order/sales_order_base.html:203
+#: templates/js/translated/table_filters.js:624
+msgid "Completed"
+msgstr ""
+
#: build/templates/build/detail.html:153
msgid "Build not complete"
msgstr ""
-#: build/templates/build/detail.html:164 build/templates/build/sidebar.html:19
+#: build/templates/build/detail.html:164 build/templates/build/sidebar.html:17
msgid "Child Build Orders"
msgstr ""
-#: build/templates/build/detail.html:179
+#: build/templates/build/detail.html:177
msgid "Allocate Stock to Build"
msgstr ""
-#: build/templates/build/detail.html:183 templates/js/translated/build.js:2276
-msgid "Unallocate stock"
+#: build/templates/build/detail.html:181
+msgid "Deallocate stock"
+msgstr ""
+
+#: build/templates/build/detail.html:182
+msgid "Deallocate Stock"
msgstr ""
#: build/templates/build/detail.html:184
-msgid "Unallocate Stock"
-msgstr ""
-
-#: build/templates/build/detail.html:186
msgid "Automatically allocate stock to build"
msgstr ""
-#: build/templates/build/detail.html:187
+#: build/templates/build/detail.html:185
msgid "Auto Allocate"
msgstr ""
-#: build/templates/build/detail.html:189
+#: build/templates/build/detail.html:187
msgid "Manually allocate stock to build"
msgstr ""
-#: build/templates/build/detail.html:190 build/templates/build/sidebar.html:8
+#: build/templates/build/detail.html:188 build/templates/build/sidebar.html:8
msgid "Allocate Stock"
msgstr ""
-#: build/templates/build/detail.html:193
+#: build/templates/build/detail.html:191
msgid "Order required parts"
msgstr ""
-#: build/templates/build/detail.html:194
-#: company/templates/company/detail.html:38
-#: company/templates/company/detail.html:86
-#: part/templates/part/category.html:184
-#: templates/js/translated/purchase_order.js:789
+#: build/templates/build/detail.html:192
+#: templates/js/translated/purchase_order.js:800
msgid "Order Parts"
msgstr ""
-#: build/templates/build/detail.html:206
-msgid "Untracked stock has been fully allocated for this Build Order"
-msgstr ""
-
#: build/templates/build/detail.html:210
-msgid "Untracked stock has not been fully allocated for this Build Order"
-msgstr ""
-
-#: build/templates/build/detail.html:217
-msgid "Allocate selected items"
-msgstr ""
-
-#: build/templates/build/detail.html:227
-msgid "This Build Order does not have any associated untracked BOM items"
-msgstr ""
-
-#: build/templates/build/detail.html:236
msgid "Incomplete Build Outputs"
msgstr ""
-#: build/templates/build/detail.html:240
+#: build/templates/build/detail.html:214
msgid "Create new build output"
msgstr ""
-#: build/templates/build/detail.html:241
+#: build/templates/build/detail.html:215
msgid "New Build Output"
msgstr ""
-#: build/templates/build/detail.html:255
-msgid "Output Actions"
-msgstr ""
-
-#: build/templates/build/detail.html:260
-msgid "Complete selected build outputs"
-msgstr ""
-
-#: build/templates/build/detail.html:261
-msgid "Complete outputs"
-msgstr ""
-
-#: build/templates/build/detail.html:265
-msgid "Scrap selected build outputs"
-msgstr ""
-
-#: build/templates/build/detail.html:266
-msgid "Scrap outputs"
-msgstr ""
-
-#: build/templates/build/detail.html:270
-msgid "Delete selected build outputs"
-msgstr ""
-
-#: build/templates/build/detail.html:271
-msgid "Delete outputs"
-msgstr ""
-
-#: build/templates/build/detail.html:288 build/templates/build/sidebar.html:11
+#: build/templates/build/detail.html:232 build/templates/build/sidebar.html:15
msgid "Consumed Stock"
msgstr ""
-#: build/templates/build/detail.html:300
+#: build/templates/build/detail.html:244
msgid "Completed Build Outputs"
msgstr ""
-#: build/templates/build/detail.html:312 build/templates/build/sidebar.html:21
-#: company/templates/company/detail.html:261
-#: company/templates/company/manufacturer_part.html:151
+#: build/templates/build/detail.html:256 build/templates/build/sidebar.html:19
+#: company/templates/company/detail.html:229
+#: company/templates/company/manufacturer_part.html:141
#: company/templates/company/manufacturer_part_sidebar.html:9
-#: company/templates/company/sidebar.html:37
+#: company/templates/company/sidebar.html:39
#: order/templates/order/po_sidebar.html:9
-#: order/templates/order/purchase_order_detail.html:102
-#: order/templates/order/return_order_detail.html:74
+#: order/templates/order/purchase_order_detail.html:84
+#: order/templates/order/return_order_detail.html:70
#: order/templates/order/return_order_sidebar.html:7
-#: order/templates/order/sales_order_detail.html:134
-#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:234
-#: part/templates/part/part_sidebar.html:61 stock/templates/stock/item.html:117
+#: order/templates/order/sales_order_detail.html:124
+#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:217
+#: part/templates/part/part_sidebar.html:61 stock/templates/stock/item.html:109
#: stock/templates/stock/stock_sidebar.html:23
msgid "Attachments"
msgstr ""
-#: build/templates/build/detail.html:327
+#: build/templates/build/detail.html:271
msgid "Build Notes"
msgstr ""
-#: build/templates/build/detail.html:502
+#: build/templates/build/detail.html:425
msgid "Allocation Complete"
msgstr ""
-#: build/templates/build/detail.html:503
-msgid "All untracked stock items have been allocated"
+#: build/templates/build/detail.html:426
+msgid "All lines have been fully allocated"
msgstr ""
-#: build/templates/build/index.html:18 part/templates/part/detail.html:340
+#: build/templates/build/index.html:18 part/templates/part/detail.html:319
msgid "New Build Order"
msgstr ""
@@ -1914,14 +1921,10 @@ msgstr ""
msgid "Build Order Details"
msgstr ""
-#: build/templates/build/sidebar.html:14
+#: build/templates/build/sidebar.html:10
msgid "Incomplete Outputs"
msgstr ""
-#: build/templates/build/sidebar.html:17
-msgid "Completed Outputs"
-msgstr ""
-
#: common/files.py:63
#, python-brace-format
msgid "Unsupported file format: {fmt}"
@@ -1968,16 +1971,6 @@ msgstr ""
msgid "Timestamp of last update"
msgstr ""
-#: common/models.py:104 order/admin.py:17 order/models.py:234
-#: templates/InvenTree/settings/settings_staff_js.html:70
-#: templates/js/translated/purchase_order.js:1670
-#: templates/js/translated/return_order.js:306
-#: templates/js/translated/sales_order.js:794
-#: templates/js/translated/table_filters.js:24
-#: templates/project_code_data.html:6
-msgid "Project Code"
-msgstr ""
-
#: common/models.py:105
msgid "Unique project code"
msgstr ""
@@ -2261,9 +2254,9 @@ msgstr ""
msgid "Copy category parameter templates when creating a part"
msgstr ""
-#: common/models.py:1162 part/admin.py:55 part/models.py:3560
-#: report/models.py:166 templates/js/translated/table_filters.js:109
-#: templates/js/translated/table_filters.js:680
+#: common/models.py:1162 part/admin.py:55 part/models.py:3594
+#: report/models.py:166 templates/js/translated/table_filters.js:115
+#: templates/js/translated/table_filters.js:702
msgid "Template"
msgstr ""
@@ -2271,10 +2264,10 @@ msgstr ""
msgid "Parts are templates by default"
msgstr ""
-#: common/models.py:1169 part/admin.py:51 part/admin.py:283 part/models.py:996
-#: templates/js/translated/bom.js:1598
-#: templates/js/translated/table_filters.js:276
-#: templates/js/translated/table_filters.js:634
+#: common/models.py:1169 part/admin.py:51 part/admin.py:283 part/models.py:997
+#: templates/js/translated/bom.js:1618
+#: templates/js/translated/table_filters.js:282
+#: templates/js/translated/table_filters.js:656
msgid "Assembly"
msgstr ""
@@ -2282,8 +2275,8 @@ msgstr ""
msgid "Parts can be assembled from other components by default"
msgstr ""
-#: common/models.py:1176 part/admin.py:52 part/models.py:1002
-#: templates/js/translated/table_filters.js:642
+#: common/models.py:1176 part/admin.py:52 part/models.py:1003
+#: templates/js/translated/table_filters.js:664
msgid "Component"
msgstr ""
@@ -2291,7 +2284,7 @@ msgstr ""
msgid "Parts can be used as sub-components by default"
msgstr ""
-#: common/models.py:1183 part/admin.py:53 part/models.py:1013
+#: common/models.py:1183 part/admin.py:53 part/models.py:1014
msgid "Purchaseable"
msgstr ""
@@ -2299,8 +2292,8 @@ msgstr ""
msgid "Parts are purchaseable by default"
msgstr ""
-#: common/models.py:1190 part/admin.py:54 part/models.py:1018
-#: templates/js/translated/table_filters.js:668
+#: common/models.py:1190 part/admin.py:54 part/models.py:1019
+#: templates/js/translated/table_filters.js:690
msgid "Salable"
msgstr ""
@@ -2308,10 +2301,10 @@ msgstr ""
msgid "Parts are salable by default"
msgstr ""
-#: common/models.py:1197 part/admin.py:56 part/models.py:1008
-#: templates/js/translated/table_filters.js:117
-#: templates/js/translated/table_filters.js:193
-#: templates/js/translated/table_filters.js:684
+#: common/models.py:1197 part/admin.py:56 part/models.py:1009
+#: templates/js/translated/table_filters.js:123
+#: templates/js/translated/table_filters.js:199
+#: templates/js/translated/table_filters.js:706
msgid "Trackable"
msgstr ""
@@ -2319,10 +2312,10 @@ msgstr ""
msgid "Parts are trackable by default"
msgstr ""
-#: common/models.py:1204 part/admin.py:57 part/models.py:1028
+#: common/models.py:1204 part/admin.py:57 part/models.py:1029
#: part/templates/part/part_base.html:156
-#: templates/js/translated/table_filters.js:113
-#: templates/js/translated/table_filters.js:688
+#: templates/js/translated/table_filters.js:119
+#: templates/js/translated/table_filters.js:710
msgid "Virtual"
msgstr ""
@@ -2354,7 +2347,7 @@ msgstr ""
msgid "Allow creation of initial stock when adding a new part"
msgstr ""
-#: common/models.py:1232 templates/js/translated/part.js:108
+#: common/models.py:1232 templates/js/translated/part.js:107
msgid "Initial Supplier Data"
msgstr ""
@@ -2603,179 +2596,179 @@ msgid "Stock location default icon (empty means no icon)"
msgstr ""
#: common/models.py:1471
-msgid "Build Order Reference Pattern"
+msgid "Show Installed Stock Items"
msgstr ""
#: common/models.py:1472
-msgid "Required pattern for generating Build Order reference field"
+msgid "Display installed stock items in stock tables"
msgstr ""
#: common/models.py:1478
-msgid "Enable Return Orders"
+msgid "Build Order Reference Pattern"
msgstr ""
#: common/models.py:1479
-msgid "Enable return order functionality in the user interface"
+msgid "Required pattern for generating Build Order reference field"
msgstr ""
#: common/models.py:1485
-msgid "Return Order Reference Pattern"
+msgid "Enable Return Orders"
msgstr ""
#: common/models.py:1486
-msgid "Required pattern for generating Return Order reference field"
+msgid "Enable return order functionality in the user interface"
msgstr ""
#: common/models.py:1492
-msgid "Edit Completed Return Orders"
+msgid "Return Order Reference Pattern"
msgstr ""
#: common/models.py:1493
-msgid "Allow editing of return orders after they have been completed"
+msgid "Required pattern for generating Return Order reference field"
msgstr ""
#: common/models.py:1499
-msgid "Sales Order Reference Pattern"
+msgid "Edit Completed Return Orders"
msgstr ""
#: common/models.py:1500
-msgid "Required pattern for generating Sales Order reference field"
+msgid "Allow editing of return orders after they have been completed"
msgstr ""
#: common/models.py:1506
-msgid "Sales Order Default Shipment"
+msgid "Sales Order Reference Pattern"
msgstr ""
#: common/models.py:1507
-msgid "Enable creation of default shipment with sales orders"
+msgid "Required pattern for generating Sales Order reference field"
msgstr ""
#: common/models.py:1513
-msgid "Edit Completed Sales Orders"
+msgid "Sales Order Default Shipment"
msgstr ""
#: common/models.py:1514
-msgid "Allow editing of sales orders after they have been shipped or completed"
+msgid "Enable creation of default shipment with sales orders"
msgstr ""
#: common/models.py:1520
-msgid "Purchase Order Reference Pattern"
+msgid "Edit Completed Sales Orders"
msgstr ""
#: common/models.py:1521
-msgid "Required pattern for generating Purchase Order reference field"
+msgid "Allow editing of sales orders after they have been shipped or completed"
msgstr ""
#: common/models.py:1527
-msgid "Edit Completed Purchase Orders"
+msgid "Purchase Order Reference Pattern"
msgstr ""
#: common/models.py:1528
-msgid "Allow editing of purchase orders after they have been shipped or completed"
+msgid "Required pattern for generating Purchase Order reference field"
+msgstr ""
+
+#: common/models.py:1534
+msgid "Edit Completed Purchase Orders"
msgstr ""
#: common/models.py:1535
-msgid "Enable password forgot"
-msgstr ""
-
-#: common/models.py:1536
-msgid "Enable password forgot function on the login pages"
+msgid "Allow editing of purchase orders after they have been shipped or completed"
msgstr ""
#: common/models.py:1542
-msgid "Enable registration"
+msgid "Enable password forgot"
msgstr ""
#: common/models.py:1543
-msgid "Enable self-registration for users on the login pages"
+msgid "Enable password forgot function on the login pages"
msgstr ""
#: common/models.py:1549
-msgid "Enable SSO"
+msgid "Enable registration"
msgstr ""
#: common/models.py:1550
-msgid "Enable SSO on the login pages"
+msgid "Enable self-registration for users on the login pages"
msgstr ""
#: common/models.py:1556
-msgid "Enable SSO registration"
+msgid "Enable SSO"
msgstr ""
#: common/models.py:1557
-msgid "Enable self-registration via SSO for users on the login pages"
+msgid "Enable SSO on the login pages"
msgstr ""
#: common/models.py:1563
-msgid "Email required"
+msgid "Enable SSO registration"
msgstr ""
#: common/models.py:1564
-msgid "Require user to supply mail on signup"
+msgid "Enable self-registration via SSO for users on the login pages"
msgstr ""
#: common/models.py:1570
-msgid "Auto-fill SSO users"
+msgid "Email required"
msgstr ""
#: common/models.py:1571
-msgid "Automatically fill out user-details from SSO account-data"
+msgid "Require user to supply mail on signup"
msgstr ""
#: common/models.py:1577
-msgid "Mail twice"
+msgid "Auto-fill SSO users"
msgstr ""
#: common/models.py:1578
-msgid "On signup ask users twice for their mail"
+msgid "Automatically fill out user-details from SSO account-data"
msgstr ""
#: common/models.py:1584
-msgid "Password twice"
+msgid "Mail twice"
msgstr ""
#: common/models.py:1585
-msgid "On signup ask users twice for their password"
+msgid "On signup ask users twice for their mail"
msgstr ""
#: common/models.py:1591
-msgid "Allowed domains"
+msgid "Password twice"
msgstr ""
#: common/models.py:1592
-msgid "Restrict signup to certain domains (comma-separated, starting with @)"
+msgid "On signup ask users twice for their password"
msgstr ""
#: common/models.py:1598
-msgid "Group on signup"
+msgid "Allowed domains"
msgstr ""
#: common/models.py:1599
-msgid "Group to which new users are assigned on registration"
+msgid "Restrict signup to certain domains (comma-separated, starting with @)"
msgstr ""
#: common/models.py:1605
-msgid "Enforce MFA"
+msgid "Group on signup"
msgstr ""
#: common/models.py:1606
-msgid "Users must use multifactor security."
+msgid "Group to which new users are assigned on registration"
msgstr ""
#: common/models.py:1612
-msgid "Check plugins on startup"
+msgid "Enforce MFA"
msgstr ""
#: common/models.py:1613
-msgid "Check that all plugins are installed on startup - enable in container environments"
+msgid "Users must use multifactor security."
+msgstr ""
+
+#: common/models.py:1619
+msgid "Check plugins on startup"
msgstr ""
#: common/models.py:1620
-msgid "Check plugin signatures"
-msgstr ""
-
-#: common/models.py:1621
-msgid "Check and show signatures for plugins"
+msgid "Check that all plugins are installed on startup - enable in container environments"
msgstr ""
#: common/models.py:1628
@@ -2850,7 +2843,7 @@ msgstr ""
msgid "Stocktake reports will be deleted after specified number of days"
msgstr ""
-#: common/models.py:1710 common/models.py:2147
+#: common/models.py:1710 common/models.py:2133
msgid "Settings key (must be unique - case insensitive"
msgstr ""
@@ -2891,528 +2884,513 @@ msgid "Show latest parts on the homepage"
msgstr ""
#: common/models.py:1779
-msgid "Recent Part Count"
-msgstr ""
-
-#: common/models.py:1780
-msgid "Number of recent parts to display on index page"
-msgstr ""
-
-#: common/models.py:1786
msgid "Show unvalidated BOMs"
msgstr ""
-#: common/models.py:1787
+#: common/models.py:1780
msgid "Show BOMs that await validation on the homepage"
msgstr ""
-#: common/models.py:1793
+#: common/models.py:1786
msgid "Show recent stock changes"
msgstr ""
-#: common/models.py:1794
+#: common/models.py:1787
msgid "Show recently changed stock items on the homepage"
msgstr ""
-#: common/models.py:1800
-msgid "Recent Stock Count"
-msgstr ""
-
-#: common/models.py:1801
-msgid "Number of recent stock items to display on index page"
-msgstr ""
-
-#: common/models.py:1807
+#: common/models.py:1793
msgid "Show low stock"
msgstr ""
-#: common/models.py:1808
+#: common/models.py:1794
msgid "Show low stock items on the homepage"
msgstr ""
-#: common/models.py:1814
+#: common/models.py:1800
msgid "Show depleted stock"
msgstr ""
-#: common/models.py:1815
+#: common/models.py:1801
msgid "Show depleted stock items on the homepage"
msgstr ""
-#: common/models.py:1821
+#: common/models.py:1807
msgid "Show needed stock"
msgstr ""
-#: common/models.py:1822
+#: common/models.py:1808
msgid "Show stock items needed for builds on the homepage"
msgstr ""
-#: common/models.py:1828
+#: common/models.py:1814
msgid "Show expired stock"
msgstr ""
-#: common/models.py:1829
+#: common/models.py:1815
msgid "Show expired stock items on the homepage"
msgstr ""
-#: common/models.py:1835
+#: common/models.py:1821
msgid "Show stale stock"
msgstr ""
-#: common/models.py:1836
+#: common/models.py:1822
msgid "Show stale stock items on the homepage"
msgstr ""
-#: common/models.py:1842
+#: common/models.py:1828
msgid "Show pending builds"
msgstr ""
-#: common/models.py:1843
+#: common/models.py:1829
msgid "Show pending builds on the homepage"
msgstr ""
-#: common/models.py:1849
+#: common/models.py:1835
msgid "Show overdue builds"
msgstr ""
-#: common/models.py:1850
+#: common/models.py:1836
msgid "Show overdue builds on the homepage"
msgstr ""
-#: common/models.py:1856
+#: common/models.py:1842
msgid "Show outstanding POs"
msgstr ""
-#: common/models.py:1857
+#: common/models.py:1843
msgid "Show outstanding POs on the homepage"
msgstr ""
-#: common/models.py:1863
+#: common/models.py:1849
msgid "Show overdue POs"
msgstr ""
-#: common/models.py:1864
+#: common/models.py:1850
msgid "Show overdue POs on the homepage"
msgstr ""
-#: common/models.py:1870
+#: common/models.py:1856
msgid "Show outstanding SOs"
msgstr ""
-#: common/models.py:1871
+#: common/models.py:1857
msgid "Show outstanding SOs on the homepage"
msgstr ""
-#: common/models.py:1877
+#: common/models.py:1863
msgid "Show overdue SOs"
msgstr ""
-#: common/models.py:1878
+#: common/models.py:1864
msgid "Show overdue SOs on the homepage"
msgstr ""
-#: common/models.py:1884
+#: common/models.py:1870
msgid "Show pending SO shipments"
msgstr ""
-#: common/models.py:1885
+#: common/models.py:1871
msgid "Show pending SO shipments on the homepage"
msgstr ""
-#: common/models.py:1891
+#: common/models.py:1877
msgid "Show News"
msgstr ""
-#: common/models.py:1892
+#: common/models.py:1878
msgid "Show news on the homepage"
msgstr ""
-#: common/models.py:1898
+#: common/models.py:1884
msgid "Inline label display"
msgstr ""
-#: common/models.py:1899
+#: common/models.py:1885
msgid "Display PDF labels in the browser, instead of downloading as a file"
msgstr ""
-#: common/models.py:1905
+#: common/models.py:1891
msgid "Default label printer"
msgstr ""
-#: common/models.py:1906
+#: common/models.py:1892
msgid "Configure which label printer should be selected by default"
msgstr ""
-#: common/models.py:1912
+#: common/models.py:1898
msgid "Inline report display"
msgstr ""
-#: common/models.py:1913
+#: common/models.py:1899
msgid "Display PDF reports in the browser, instead of downloading as a file"
msgstr ""
-#: common/models.py:1919
+#: common/models.py:1905
msgid "Search Parts"
msgstr ""
-#: common/models.py:1920
+#: common/models.py:1906
msgid "Display parts in search preview window"
msgstr ""
-#: common/models.py:1926
+#: common/models.py:1912
msgid "Search Supplier Parts"
msgstr ""
-#: common/models.py:1927
+#: common/models.py:1913
msgid "Display supplier parts in search preview window"
msgstr ""
-#: common/models.py:1933
+#: common/models.py:1919
msgid "Search Manufacturer Parts"
msgstr ""
-#: common/models.py:1934
+#: common/models.py:1920
msgid "Display manufacturer parts in search preview window"
msgstr ""
-#: common/models.py:1940
+#: common/models.py:1926
msgid "Hide Inactive Parts"
msgstr ""
-#: common/models.py:1941
+#: common/models.py:1927
msgid "Excluded inactive parts from search preview window"
msgstr ""
-#: common/models.py:1947
+#: common/models.py:1933
msgid "Search Categories"
msgstr ""
-#: common/models.py:1948
+#: common/models.py:1934
msgid "Display part categories in search preview window"
msgstr ""
-#: common/models.py:1954
+#: common/models.py:1940
msgid "Search Stock"
msgstr ""
-#: common/models.py:1955
+#: common/models.py:1941
msgid "Display stock items in search preview window"
msgstr ""
-#: common/models.py:1961
+#: common/models.py:1947
msgid "Hide Unavailable Stock Items"
msgstr ""
-#: common/models.py:1962
+#: common/models.py:1948
msgid "Exclude stock items which are not available from the search preview window"
msgstr ""
-#: common/models.py:1968
+#: common/models.py:1954
msgid "Search Locations"
msgstr ""
-#: common/models.py:1969
+#: common/models.py:1955
msgid "Display stock locations in search preview window"
msgstr ""
-#: common/models.py:1975
+#: common/models.py:1961
msgid "Search Companies"
msgstr ""
-#: common/models.py:1976
+#: common/models.py:1962
msgid "Display companies in search preview window"
msgstr ""
-#: common/models.py:1982
+#: common/models.py:1968
msgid "Search Build Orders"
msgstr ""
-#: common/models.py:1983
+#: common/models.py:1969
msgid "Display build orders in search preview window"
msgstr ""
-#: common/models.py:1989
+#: common/models.py:1975
msgid "Search Purchase Orders"
msgstr ""
-#: common/models.py:1990
+#: common/models.py:1976
msgid "Display purchase orders in search preview window"
msgstr ""
-#: common/models.py:1996
+#: common/models.py:1982
msgid "Exclude Inactive Purchase Orders"
msgstr ""
-#: common/models.py:1997
+#: common/models.py:1983
msgid "Exclude inactive purchase orders from search preview window"
msgstr ""
-#: common/models.py:2003
+#: common/models.py:1989
msgid "Search Sales Orders"
msgstr ""
-#: common/models.py:2004
+#: common/models.py:1990
msgid "Display sales orders in search preview window"
msgstr ""
-#: common/models.py:2010
+#: common/models.py:1996
msgid "Exclude Inactive Sales Orders"
msgstr ""
-#: common/models.py:2011
+#: common/models.py:1997
msgid "Exclude inactive sales orders from search preview window"
msgstr ""
-#: common/models.py:2017
+#: common/models.py:2003
msgid "Search Return Orders"
msgstr ""
-#: common/models.py:2018
+#: common/models.py:2004
msgid "Display return orders in search preview window"
msgstr ""
-#: common/models.py:2024
+#: common/models.py:2010
msgid "Exclude Inactive Return Orders"
msgstr ""
-#: common/models.py:2025
+#: common/models.py:2011
msgid "Exclude inactive return orders from search preview window"
msgstr ""
-#: common/models.py:2031
+#: common/models.py:2017
msgid "Search Preview Results"
msgstr ""
-#: common/models.py:2032
+#: common/models.py:2018
msgid "Number of results to show in each section of the search preview window"
msgstr ""
-#: common/models.py:2038
+#: common/models.py:2024
msgid "Regex Search"
msgstr ""
-#: common/models.py:2039
+#: common/models.py:2025
msgid "Enable regular expressions in search queries"
msgstr ""
-#: common/models.py:2045
+#: common/models.py:2031
msgid "Whole Word Search"
msgstr ""
-#: common/models.py:2046
+#: common/models.py:2032
msgid "Search queries return results for whole word matches"
msgstr ""
-#: common/models.py:2052
+#: common/models.py:2038
msgid "Show Quantity in Forms"
msgstr ""
-#: common/models.py:2053
+#: common/models.py:2039
msgid "Display available part quantity in some forms"
msgstr ""
-#: common/models.py:2059
+#: common/models.py:2045
msgid "Escape Key Closes Forms"
msgstr ""
-#: common/models.py:2060
+#: common/models.py:2046
msgid "Use the escape key to close modal forms"
msgstr ""
-#: common/models.py:2066
+#: common/models.py:2052
msgid "Fixed Navbar"
msgstr ""
-#: common/models.py:2067
+#: common/models.py:2053
msgid "The navbar position is fixed to the top of the screen"
msgstr ""
-#: common/models.py:2073
+#: common/models.py:2059
msgid "Date Format"
msgstr ""
-#: common/models.py:2074
+#: common/models.py:2060
msgid "Preferred format for displaying dates"
msgstr ""
-#: common/models.py:2088 part/templates/part/detail.html:41
+#: common/models.py:2074 part/templates/part/detail.html:41
msgid "Part Scheduling"
msgstr ""
-#: common/models.py:2089
+#: common/models.py:2075
msgid "Display part scheduling information"
msgstr ""
-#: common/models.py:2095 part/templates/part/detail.html:62
+#: common/models.py:2081 part/templates/part/detail.html:62
msgid "Part Stocktake"
msgstr ""
-#: common/models.py:2096
+#: common/models.py:2082
msgid "Display part stocktake information (if stocktake functionality is enabled)"
msgstr ""
-#: common/models.py:2102
+#: common/models.py:2088
msgid "Table String Length"
msgstr ""
-#: common/models.py:2103
+#: common/models.py:2089
msgid "Maximimum length limit for strings displayed in table views"
msgstr ""
-#: common/models.py:2112
+#: common/models.py:2098
msgid "Default part label template"
msgstr ""
-#: common/models.py:2113
+#: common/models.py:2099
msgid "The part label template to be automatically selected"
msgstr ""
-#: common/models.py:2121
+#: common/models.py:2107
msgid "Default stock item template"
msgstr ""
-#: common/models.py:2122
+#: common/models.py:2108
msgid "The stock item label template to be automatically selected"
msgstr ""
-#: common/models.py:2130
+#: common/models.py:2116
msgid "Default stock location label template"
msgstr ""
-#: common/models.py:2131
+#: common/models.py:2117
msgid "The stock location label template to be automatically selected"
msgstr ""
-#: common/models.py:2177
+#: common/models.py:2163
msgid "Price break quantity"
msgstr ""
-#: common/models.py:2184 company/serializers.py:434 order/admin.py:43
-#: order/models.py:1132 order/models.py:1939
-#: templates/js/translated/company.js:1433 templates/js/translated/part.js:1856
+#: common/models.py:2170 company/serializers.py:491 order/admin.py:43
+#: order/models.py:1145 order/models.py:1952
+#: templates/js/translated/company.js:1854 templates/js/translated/part.js:1855
#: templates/js/translated/pricing.js:621
-#: templates/js/translated/return_order.js:725
+#: templates/js/translated/return_order.js:737
msgid "Price"
msgstr ""
-#: common/models.py:2185
+#: common/models.py:2171
msgid "Unit price at specified quantity"
msgstr ""
-#: common/models.py:2345 common/models.py:2523
+#: common/models.py:2331 common/models.py:2509
msgid "Endpoint"
msgstr ""
-#: common/models.py:2346
+#: common/models.py:2332
msgid "Endpoint at which this webhook is received"
msgstr ""
-#: common/models.py:2355
+#: common/models.py:2341
msgid "Name for this webhook"
msgstr ""
-#: common/models.py:2360 part/admin.py:50 part/models.py:1023
-#: plugin/models.py:47 templates/js/translated/table_filters.js:105
-#: templates/js/translated/table_filters.js:189
-#: templates/js/translated/table_filters.js:434
-#: templates/js/translated/table_filters.js:450
-#: templates/js/translated/table_filters.js:629
+#: common/models.py:2346 part/admin.py:50 part/models.py:1024
+#: plugin/models.py:48 templates/js/translated/table_filters.js:111
+#: templates/js/translated/table_filters.js:195
+#: templates/js/translated/table_filters.js:440
+#: templates/js/translated/table_filters.js:456
+#: templates/js/translated/table_filters.js:651
msgid "Active"
msgstr ""
-#: common/models.py:2361
+#: common/models.py:2347
msgid "Is this webhook active"
msgstr ""
-#: common/models.py:2375
+#: common/models.py:2361
msgid "Token"
msgstr ""
-#: common/models.py:2376
+#: common/models.py:2362
msgid "Token for access"
msgstr ""
-#: common/models.py:2383
+#: common/models.py:2369
msgid "Secret"
msgstr ""
-#: common/models.py:2384
+#: common/models.py:2370
msgid "Shared secret for HMAC"
msgstr ""
-#: common/models.py:2490
+#: common/models.py:2476
msgid "Message ID"
msgstr ""
-#: common/models.py:2491
+#: common/models.py:2477
msgid "Unique identifier for this message"
msgstr ""
-#: common/models.py:2499
+#: common/models.py:2485
msgid "Host"
msgstr ""
-#: common/models.py:2500
+#: common/models.py:2486
msgid "Host from which this message was received"
msgstr ""
-#: common/models.py:2507
+#: common/models.py:2493
msgid "Header"
msgstr ""
-#: common/models.py:2508
+#: common/models.py:2494
msgid "Header of this message"
msgstr ""
-#: common/models.py:2514
+#: common/models.py:2500
msgid "Body"
msgstr ""
-#: common/models.py:2515
+#: common/models.py:2501
msgid "Body of this message"
msgstr ""
-#: common/models.py:2524
+#: common/models.py:2510
msgid "Endpoint on which this message was received"
msgstr ""
-#: common/models.py:2529
+#: common/models.py:2515
msgid "Worked on"
msgstr ""
-#: common/models.py:2530
+#: common/models.py:2516
msgid "Was the work on this message finished?"
msgstr ""
-#: common/models.py:2684
+#: common/models.py:2670
msgid "Id"
msgstr ""
-#: common/models.py:2690 templates/js/translated/news.js:44
+#: common/models.py:2676 templates/js/translated/company.js:996
+#: templates/js/translated/news.js:44
msgid "Title"
msgstr ""
-#: common/models.py:2700 templates/js/translated/news.js:60
+#: common/models.py:2686 templates/js/translated/news.js:60
msgid "Published"
msgstr ""
-#: common/models.py:2705 templates/InvenTree/settings/plugin_settings.html:32
+#: common/models.py:2691 templates/InvenTree/settings/plugin_settings.html:32
#: templates/js/translated/news.js:56 templates/js/translated/plugin.js:106
msgid "Author"
msgstr ""
-#: common/models.py:2710 templates/js/translated/news.js:52
+#: common/models.py:2696 templates/js/translated/news.js:52
msgid "Summary"
msgstr ""
-#: common/models.py:2715
+#: common/models.py:2701
msgid "Read"
msgstr ""
-#: common/models.py:2716
+#: common/models.py:2702
msgid "Was this news item read?"
msgstr ""
-#: common/models.py:2736 company/models.py:143 part/models.py:914
+#: common/models.py:2722 company/models.py:139 part/models.py:915
#: report/templates/report/inventree_bill_of_materials_report.html:126
#: report/templates/report/inventree_bill_of_materials_report.html:148
#: report/templates/report/inventree_return_order_report_base.html:35
@@ -3422,7 +3400,7 @@ msgstr ""
msgid "Image"
msgstr ""
-#: common/models.py:2737
+#: common/models.py:2723
msgid "Image file"
msgstr ""
@@ -3499,7 +3477,7 @@ msgstr ""
#: company/models.py:113 company/templates/company/company_base.html:101
#: templates/InvenTree/settings/plugin_settings.html:54
-#: templates/js/translated/company.js:514
+#: templates/js/translated/company.js:521
msgid "Website"
msgstr ""
@@ -3507,303 +3485,387 @@ msgstr ""
msgid "Company website URL"
msgstr ""
-#: company/models.py:118 company/templates/company/company_base.html:119
-msgid "Address"
-msgstr ""
-
-#: company/models.py:119
-msgid "Company address"
-msgstr ""
-
-#: company/models.py:122
+#: company/models.py:118
msgid "Phone number"
msgstr ""
-#: company/models.py:123
+#: company/models.py:119
msgid "Contact phone number"
msgstr ""
-#: company/models.py:126 company/templates/company/company_base.html:133
+#: company/models.py:122 company/templates/company/company_base.html:133
#: templates/InvenTree/settings/user.html:49
-#: templates/js/translated/company.js:659
+#: templates/js/translated/company.js:666
msgid "Email"
msgstr ""
-#: company/models.py:126
+#: company/models.py:122
msgid "Contact email address"
msgstr ""
-#: company/models.py:129 company/templates/company/company_base.html:140
-#: order/models.py:266 order/templates/order/order_base.html:207
+#: company/models.py:125 company/templates/company/company_base.html:140
+#: order/models.py:270 order/templates/order/order_base.html:203
#: order/templates/order/return_order_base.html:175
#: order/templates/order/sales_order_base.html:215
msgid "Contact"
msgstr ""
-#: company/models.py:130
+#: company/models.py:126
msgid "Point of contact"
msgstr ""
-#: company/models.py:132
+#: company/models.py:128
msgid "Link to external company information"
msgstr ""
-#: company/models.py:146
+#: company/models.py:142
msgid "is customer"
msgstr ""
-#: company/models.py:146
+#: company/models.py:142
msgid "Do you sell items to this company?"
msgstr ""
-#: company/models.py:148
+#: company/models.py:144
msgid "is supplier"
msgstr ""
-#: company/models.py:148
+#: company/models.py:144
msgid "Do you purchase items from this company?"
msgstr ""
-#: company/models.py:150
+#: company/models.py:146
msgid "is manufacturer"
msgstr ""
-#: company/models.py:150
+#: company/models.py:146
msgid "Does this company manufacture parts?"
msgstr ""
-#: company/models.py:157
+#: company/models.py:153
msgid "Default currency used for this company"
msgstr ""
-#: company/models.py:223 company/templates/company/company_base.html:8
+#: company/models.py:235 company/models.py:328
+#: company/templates/company/company_base.html:8
#: company/templates/company/company_base.html:12
-#: templates/InvenTree/search.html:178 templates/js/translated/company.js:487
+#: templates/InvenTree/search.html:178 templates/js/translated/company.js:494
msgid "Company"
msgstr ""
-#: company/models.py:278 company/models.py:553 stock/models.py:675
-#: stock/serializers.py:155 stock/templates/stock/item_base.html:143
-#: templates/js/translated/bom.js:621
+#: company/models.py:324
+msgid "Company already has a primary address"
+msgstr ""
+
+#: company/models.py:329
+msgid "Select company"
+msgstr ""
+
+#: company/models.py:332
+msgid "Address title"
+msgstr ""
+
+#: company/models.py:333
+msgid "Title describing the address entry"
+msgstr ""
+
+#: company/models.py:337
+msgid "Primary address"
+msgstr ""
+
+#: company/models.py:338
+msgid "Set as primary address"
+msgstr ""
+
+#: company/models.py:341 templates/js/translated/company.js:941
+#: templates/js/translated/company.js:1002
+msgid "Line 1"
+msgstr ""
+
+#: company/models.py:342
+msgid "Address line 1"
+msgstr ""
+
+#: company/models.py:346 templates/js/translated/company.js:942
+#: templates/js/translated/company.js:1008
+msgid "Line 2"
+msgstr ""
+
+#: company/models.py:347
+msgid "Address line 2"
+msgstr ""
+
+#: company/models.py:351 company/models.py:352
+#: templates/js/translated/company.js:1014
+msgid "Postal code"
+msgstr ""
+
+#: company/models.py:356
+msgid "City/Region"
+msgstr ""
+
+#: company/models.py:357
+msgid "Postal code city/region"
+msgstr ""
+
+#: company/models.py:361
+msgid "State/Province"
+msgstr ""
+
+#: company/models.py:362
+msgid "State or province"
+msgstr ""
+
+#: company/models.py:366 templates/js/translated/company.js:1032
+msgid "Country"
+msgstr ""
+
+#: company/models.py:367
+msgid "Address country"
+msgstr ""
+
+#: company/models.py:371
+msgid "Courier shipping notes"
+msgstr ""
+
+#: company/models.py:372
+msgid "Notes for shipping courier"
+msgstr ""
+
+#: company/models.py:376
+msgid "Internal shipping notes"
+msgstr ""
+
+#: company/models.py:377
+msgid "Shipping notes for internal use"
+msgstr ""
+
+#: company/models.py:382
+msgid "Link to address information (external)"
+msgstr ""
+
+#: company/models.py:427 company/models.py:702 stock/models.py:675
+#: stock/serializers.py:204 stock/templates/stock/item_base.html:143
+#: templates/js/translated/bom.js:622
msgid "Base Part"
msgstr ""
-#: company/models.py:282 company/models.py:557
+#: company/models.py:431 company/models.py:706
msgid "Select part"
msgstr ""
-#: company/models.py:293 company/templates/company/company_base.html:77
+#: company/models.py:442 company/templates/company/company_base.html:77
#: company/templates/company/manufacturer_part.html:90
-#: company/templates/company/supplier_part.html:146 part/serializers.py:354
+#: company/templates/company/supplier_part.html:146 part/serializers.py:404
#: stock/templates/stock/item_base.html:208
-#: templates/js/translated/company.js:498
-#: templates/js/translated/company.js:824
-#: templates/js/translated/company.js:954
-#: templates/js/translated/company.js:1221
-#: templates/js/translated/table_filters.js:709
+#: templates/js/translated/company.js:505
+#: templates/js/translated/company.js:1149
+#: templates/js/translated/company.js:1327
+#: templates/js/translated/company.js:1642
+#: templates/js/translated/table_filters.js:731
msgid "Manufacturer"
msgstr ""
-#: company/models.py:294
+#: company/models.py:443
msgid "Select manufacturer"
msgstr ""
-#: company/models.py:300 company/templates/company/manufacturer_part.html:101
-#: company/templates/company/supplier_part.html:154 part/serializers.py:360
-#: templates/js/translated/company.js:340
-#: templates/js/translated/company.js:823
-#: templates/js/translated/company.js:970
-#: templates/js/translated/company.js:1240 templates/js/translated/part.js:1773
-#: templates/js/translated/purchase_order.js:1814
-#: templates/js/translated/purchase_order.js:2021
+#: company/models.py:449 company/templates/company/manufacturer_part.html:101
+#: company/templates/company/supplier_part.html:154 part/serializers.py:410
+#: templates/js/translated/company.js:350
+#: templates/js/translated/company.js:1148
+#: templates/js/translated/company.js:1343
+#: templates/js/translated/company.js:1661 templates/js/translated/part.js:1772
+#: templates/js/translated/purchase_order.js:1829
+#: templates/js/translated/purchase_order.js:2031
msgid "MPN"
msgstr ""
-#: company/models.py:301
+#: company/models.py:450
msgid "Manufacturer Part Number"
msgstr ""
-#: company/models.py:307
+#: company/models.py:456
msgid "URL for external manufacturer part link"
msgstr ""
-#: company/models.py:313
+#: company/models.py:462
msgid "Manufacturer part description"
msgstr ""
-#: company/models.py:360 company/models.py:384 company/models.py:578
+#: company/models.py:509 company/models.py:533 company/models.py:727
#: company/templates/company/manufacturer_part.html:7
#: company/templates/company/manufacturer_part.html:24
#: stock/templates/stock/item_base.html:218
msgid "Manufacturer Part"
msgstr ""
-#: company/models.py:391
+#: company/models.py:540
msgid "Parameter name"
msgstr ""
-#: company/models.py:397
+#: company/models.py:546
#: report/templates/report/inventree_test_report_base.html:104
-#: stock/models.py:2255 templates/js/translated/company.js:872
-#: templates/js/translated/company.js:1077 templates/js/translated/part.js:1465
-#: templates/js/translated/stock.js:1446
+#: stock/models.py:2255 templates/js/translated/company.js:1197
+#: templates/js/translated/company.js:1450 templates/js/translated/part.js:1464
+#: templates/js/translated/stock.js:1445
msgid "Value"
msgstr ""
-#: company/models.py:398
+#: company/models.py:547
msgid "Parameter value"
msgstr ""
-#: company/models.py:404 company/templates/company/supplier_part.html:169
-#: part/admin.py:40 part/models.py:987 part/models.py:3407
+#: company/models.py:553 company/templates/company/supplier_part.html:169
+#: part/admin.py:40 part/models.py:988 part/models.py:3441
#: part/templates/part/part_base.html:286
-#: templates/js/translated/company.js:1083 templates/js/translated/part.js:1484
-#: templates/js/translated/part.js:1588 templates/js/translated/part.js:2262
+#: templates/js/translated/company.js:1456 templates/js/translated/part.js:1483
+#: templates/js/translated/part.js:1587 templates/js/translated/part.js:2338
msgid "Units"
msgstr ""
-#: company/models.py:405
+#: company/models.py:554
msgid "Parameter units"
msgstr ""
-#: company/models.py:498
+#: company/models.py:647
msgid "Pack units must be compatible with the base part units"
msgstr ""
-#: company/models.py:504
+#: company/models.py:653
msgid "Pack units must be greater than zero"
msgstr ""
-#: company/models.py:520
+#: company/models.py:669
msgid "Linked manufacturer part must reference the same base part"
msgstr ""
-#: company/models.py:564 company/templates/company/company_base.html:82
-#: company/templates/company/supplier_part.html:130 order/models.py:382
-#: order/templates/order/order_base.html:140 part/bom.py:285 part/bom.py:313
-#: part/serializers.py:343 stock/templates/stock/item_base.html:225
+#: company/models.py:713 company/templates/company/company_base.html:82
+#: company/templates/company/supplier_part.html:130 order/models.py:395
+#: order/templates/order/order_base.html:136 part/bom.py:285 part/bom.py:313
+#: part/serializers.py:393 stock/templates/stock/item_base.html:225
#: templates/email/overdue_purchase_order.html:16
-#: templates/js/translated/company.js:339
-#: templates/js/translated/company.js:502
-#: templates/js/translated/company.js:1194 templates/js/translated/part.js:1741
+#: templates/js/translated/company.js:349
+#: templates/js/translated/company.js:509
+#: templates/js/translated/company.js:1615 templates/js/translated/part.js:1740
#: templates/js/translated/pricing.js:498
-#: templates/js/translated/purchase_order.js:1653
-#: templates/js/translated/table_filters.js:713
+#: templates/js/translated/purchase_order.js:1668
+#: templates/js/translated/table_filters.js:735
msgid "Supplier"
msgstr ""
-#: company/models.py:565
+#: company/models.py:714
msgid "Select supplier"
msgstr ""
-#: company/models.py:570 company/templates/company/supplier_part.html:140
-#: part/bom.py:286 part/bom.py:314 part/serializers.py:349
-#: templates/js/translated/company.js:338 templates/js/translated/part.js:1759
+#: company/models.py:719 company/templates/company/supplier_part.html:140
+#: part/bom.py:286 part/bom.py:314 part/serializers.py:399
+#: templates/js/translated/company.js:348 templates/js/translated/part.js:1758
#: templates/js/translated/pricing.js:510
-#: templates/js/translated/purchase_order.js:1813
-#: templates/js/translated/purchase_order.js:1996
+#: templates/js/translated/purchase_order.js:1828
+#: templates/js/translated/purchase_order.js:2006
msgid "SKU"
msgstr ""
-#: company/models.py:571 part/serializers.py:349
+#: company/models.py:720 part/serializers.py:399
msgid "Supplier stock keeping unit"
msgstr ""
-#: company/models.py:579
+#: company/models.py:728
msgid "Select manufacturer part"
msgstr ""
-#: company/models.py:585
+#: company/models.py:734
msgid "URL for external supplier part link"
msgstr ""
-#: company/models.py:591
+#: company/models.py:740
msgid "Supplier part description"
msgstr ""
-#: company/models.py:596 company/templates/company/supplier_part.html:188
-#: part/admin.py:279 part/models.py:3801 part/templates/part/upload_bom.html:59
+#: company/models.py:745 company/templates/company/supplier_part.html:188
+#: part/admin.py:279 part/models.py:3845 part/templates/part/upload_bom.html:59
#: report/templates/report/inventree_bill_of_materials_report.html:140
#: report/templates/report/inventree_po_report_base.html:32
#: report/templates/report/inventree_return_order_report_base.html:27
#: report/templates/report/inventree_so_report_base.html:32
-#: stock/serializers.py:418
+#: stock/serializers.py:484
msgid "Note"
msgstr ""
-#: company/models.py:600 part/models.py:1919
+#: company/models.py:749 part/models.py:1921
msgid "base cost"
msgstr ""
-#: company/models.py:600 part/models.py:1919
+#: company/models.py:749 part/models.py:1921
msgid "Minimum charge (e.g. stocking fee)"
msgstr ""
-#: company/models.py:602 company/templates/company/supplier_part.html:161
+#: company/models.py:751 company/templates/company/supplier_part.html:161
#: stock/admin.py:119 stock/models.py:701
#: stock/templates/stock/item_base.html:241
-#: templates/js/translated/company.js:1256
-#: templates/js/translated/stock.js:2160
+#: templates/js/translated/company.js:1677
+#: templates/js/translated/stock.js:2317
msgid "Packaging"
msgstr ""
-#: company/models.py:602
+#: company/models.py:751
msgid "Part packaging"
msgstr ""
-#: company/models.py:606 templates/js/translated/company.js:1261
-#: templates/js/translated/part.js:1793 templates/js/translated/part.js:1848
-#: templates/js/translated/purchase_order.js:300
-#: templates/js/translated/purchase_order.js:827
-#: templates/js/translated/purchase_order.js:1073
-#: templates/js/translated/purchase_order.js:2052
-#: templates/js/translated/purchase_order.js:2069
+#: company/models.py:755 templates/js/translated/company.js:1682
+#: templates/js/translated/part.js:1792 templates/js/translated/part.js:1847
+#: templates/js/translated/purchase_order.js:311
+#: templates/js/translated/purchase_order.js:842
+#: templates/js/translated/purchase_order.js:1088
+#: templates/js/translated/purchase_order.js:2062
+#: templates/js/translated/purchase_order.js:2079
msgid "Pack Quantity"
msgstr ""
-#: company/models.py:607
+#: company/models.py:756
msgid "Total quantity supplied in a single pack. Leave empty for single items."
msgstr ""
-#: company/models.py:624 part/models.py:1921
+#: company/models.py:773 part/models.py:1923
msgid "multiple"
msgstr ""
-#: company/models.py:624
+#: company/models.py:773
msgid "Order multiple"
msgstr ""
-#: company/models.py:632 company/templates/company/supplier_part.html:115
+#: company/models.py:781 company/templates/company/supplier_part.html:115
#: templates/email/build_order_required_stock.html:19
#: templates/email/low_stock_notification.html:17
-#: templates/js/translated/bom.js:1127 templates/js/translated/build.js:2136
-#: templates/js/translated/build.js:3045
-#: templates/js/translated/model_renderers.js:205
-#: templates/js/translated/part.js:670 templates/js/translated/part.js:672
-#: templates/js/translated/part.js:677
-#: templates/js/translated/table_filters.js:286
-#: templates/js/translated/table_filters.js:492
+#: templates/js/translated/bom.js:1145 templates/js/translated/build.js:2490
+#: templates/js/translated/index.js:118
+#: templates/js/translated/model_renderers.js:219
+#: templates/js/translated/part.js:669 templates/js/translated/part.js:671
+#: templates/js/translated/part.js:676
+#: templates/js/translated/table_filters.js:292
+#: templates/js/translated/table_filters.js:510
msgid "Available"
msgstr ""
-#: company/models.py:633
+#: company/models.py:782
msgid "Quantity available from supplier"
msgstr ""
-#: company/models.py:637
+#: company/models.py:786
msgid "Availability Updated"
msgstr ""
-#: company/models.py:638
+#: company/models.py:787
msgid "Date of last update of availability data"
msgstr ""
-#: company/serializers.py:99
+#: company/serializers.py:156
msgid "Default currency used for this supplier"
msgstr ""
#: company/templates/company/company_base.html:22
-#: templates/js/translated/purchase_order.js:228
+#: templates/js/translated/purchase_order.js:239
msgid "Create Purchase Order"
msgstr ""
@@ -3816,7 +3878,7 @@ msgid "Edit company information"
msgstr ""
#: company/templates/company/company_base.html:34
-#: templates/js/translated/company.js:436
+#: templates/js/translated/company.js:443
msgid "Edit Company"
msgstr ""
@@ -3856,17 +3918,17 @@ msgstr ""
msgid "Delete image"
msgstr ""
-#: company/templates/company/company_base.html:87 order/models.py:779
-#: order/models.py:1738 order/templates/order/return_order_base.html:132
+#: company/templates/company/company_base.html:87 order/models.py:792
+#: order/models.py:1751 order/templates/order/return_order_base.html:132
#: order/templates/order/sales_order_base.html:145 stock/models.py:720
-#: stock/models.py:721 stock/serializers.py:825
+#: stock/models.py:721 stock/serializers.py:942
#: stock/templates/stock/item_base.html:401
#: templates/email/overdue_sales_order.html:16
-#: templates/js/translated/company.js:494
-#: templates/js/translated/return_order.js:284
-#: templates/js/translated/sales_order.js:772
-#: templates/js/translated/stock.js:2696
-#: templates/js/translated/table_filters.js:717
+#: templates/js/translated/company.js:501
+#: templates/js/translated/return_order.js:296
+#: templates/js/translated/sales_order.js:784
+#: templates/js/translated/stock.js:2827
+#: templates/js/translated/table_filters.js:739
msgid "Customer"
msgstr ""
@@ -3874,6 +3936,13 @@ msgstr ""
msgid "Uses default currency"
msgstr ""
+#: company/templates/company/company_base.html:119 order/models.py:279
+#: order/templates/order/order_base.html:210
+#: order/templates/order/return_order_base.html:182
+#: order/templates/order/sales_order_base.html:222
+msgid "Address"
+msgstr ""
+
#: company/templates/company/company_base.html:126
msgid "Phone"
msgstr ""
@@ -3906,7 +3975,7 @@ msgstr ""
#: company/templates/company/detail.html:15
#: company/templates/company/manufacturer_part_sidebar.html:7
-#: templates/InvenTree/search.html:120 templates/js/translated/search.js:189
+#: templates/InvenTree/search.html:120 templates/js/translated/search.js:147
msgid "Supplier Parts"
msgstr ""
@@ -3916,129 +3985,121 @@ msgstr ""
#: company/templates/company/detail.html:20
#: company/templates/company/manufacturer_part.html:123
-#: part/templates/part/detail.html:381
+#: part/templates/part/detail.html:356
msgid "New Supplier Part"
msgstr ""
-#: company/templates/company/detail.html:37
-#: company/templates/company/detail.html:85
-#: part/templates/part/category.html:183
-msgid "Order parts"
-msgstr ""
-
-#: company/templates/company/detail.html:42
-#: company/templates/company/detail.html:90
-msgid "Delete parts"
-msgstr ""
-
-#: company/templates/company/detail.html:43
-#: company/templates/company/detail.html:91
-msgid "Delete Parts"
-msgstr ""
-
-#: company/templates/company/detail.html:62 templates/InvenTree/search.html:105
-#: templates/js/translated/search.js:193
+#: company/templates/company/detail.html:41 templates/InvenTree/search.html:105
+#: templates/js/translated/search.js:151
msgid "Manufacturer Parts"
msgstr ""
-#: company/templates/company/detail.html:66
+#: company/templates/company/detail.html:45
msgid "Create new manufacturer part"
msgstr ""
-#: company/templates/company/detail.html:67 part/templates/part/detail.html:411
+#: company/templates/company/detail.html:46 part/templates/part/detail.html:376
msgid "New Manufacturer Part"
msgstr ""
-#: company/templates/company/detail.html:108
+#: company/templates/company/detail.html:65
msgid "Supplier Stock"
msgstr ""
-#: company/templates/company/detail.html:118
+#: company/templates/company/detail.html:75
#: company/templates/company/sidebar.html:12
#: company/templates/company/supplier_part_sidebar.html:7
#: 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:108 part/templates/part/part_sidebar.html:35
-#: templates/InvenTree/index.html:275 templates/InvenTree/search.html:199
+#: part/templates/part/detail.html:106 part/templates/part/part_sidebar.html:35
+#: templates/InvenTree/index.html:227 templates/InvenTree/search.html:199
#: templates/InvenTree/settings/sidebar.html:55
-#: templates/js/translated/search.js:247 templates/navbar.html:50
+#: templates/js/translated/search.js:205 templates/navbar.html:50
#: users/models.py:43
msgid "Purchase Orders"
msgstr ""
-#: company/templates/company/detail.html:122
+#: company/templates/company/detail.html:79
#: order/templates/order/purchase_orders.html:17
msgid "Create new purchase order"
msgstr ""
-#: company/templates/company/detail.html:123
+#: company/templates/company/detail.html:80
#: order/templates/order/purchase_orders.html:18
msgid "New Purchase Order"
msgstr ""
-#: company/templates/company/detail.html:146
+#: company/templates/company/detail.html:101
#: company/templates/company/sidebar.html:21
#: 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:131 part/templates/part/part_sidebar.html:39
-#: templates/InvenTree/index.html:307 templates/InvenTree/search.html:219
+#: part/templates/part/detail.html:127 part/templates/part/part_sidebar.html:39
+#: templates/InvenTree/index.html:259 templates/InvenTree/search.html:219
#: templates/InvenTree/settings/sidebar.html:57
-#: templates/js/translated/search.js:261 templates/navbar.html:62
+#: templates/js/translated/search.js:219 templates/navbar.html:62
#: users/models.py:44
msgid "Sales Orders"
msgstr ""
-#: company/templates/company/detail.html:150
+#: company/templates/company/detail.html:105
#: order/templates/order/sales_orders.html:20
msgid "Create new sales order"
msgstr ""
-#: company/templates/company/detail.html:151
+#: company/templates/company/detail.html:106
#: order/templates/order/sales_orders.html:21
msgid "New Sales Order"
msgstr ""
-#: company/templates/company/detail.html:173
-#: templates/js/translated/build.js:1976
+#: company/templates/company/detail.html:126
msgid "Assigned Stock"
msgstr ""
-#: company/templates/company/detail.html:191
+#: company/templates/company/detail.html:142
#: company/templates/company/sidebar.html:29
#: order/templates/order/return_order_base.html:13
#: order/templates/order/return_orders.html:8
#: order/templates/order/return_orders.html:15
#: templates/InvenTree/settings/sidebar.html:59
-#: templates/js/translated/search.js:274 templates/navbar.html:65
+#: templates/js/translated/search.js:232 templates/navbar.html:65
#: users/models.py:45
msgid "Return Orders"
msgstr ""
-#: company/templates/company/detail.html:195
+#: company/templates/company/detail.html:146
#: order/templates/order/return_orders.html:20
msgid "Create new return order"
msgstr ""
-#: company/templates/company/detail.html:196
+#: company/templates/company/detail.html:147
#: order/templates/order/return_orders.html:21
msgid "New Return Order"
msgstr ""
-#: company/templates/company/detail.html:221
+#: company/templates/company/detail.html:168
msgid "Company Notes"
msgstr ""
-#: company/templates/company/detail.html:236
+#: company/templates/company/detail.html:183
msgid "Company Contacts"
msgstr ""
-#: company/templates/company/detail.html:240
-#: company/templates/company/detail.html:241
+#: company/templates/company/detail.html:187
+#: company/templates/company/detail.html:188
msgid "Add Contact"
msgstr ""
+#: company/templates/company/detail.html:206
+msgid "Company addresses"
+msgstr ""
+
+#: company/templates/company/detail.html:210
+#: company/templates/company/detail.html:211
+msgid "Add Address"
+msgstr ""
+
#: company/templates/company/index.html:8
msgid "Supplier List"
msgstr ""
@@ -4050,17 +4111,17 @@ msgstr ""
#: company/templates/company/manufacturer_part.html:35
#: company/templates/company/supplier_part.html:228
-#: part/templates/part/detail.html:111 part/templates/part/part_base.html:85
+#: part/templates/part/detail.html:109 part/templates/part/part_base.html:85
msgid "Order part"
msgstr ""
#: company/templates/company/manufacturer_part.html:39
-#: templates/js/translated/company.js:1001
+#: templates/js/translated/company.js:1374
msgid "Edit manufacturer part"
msgstr ""
#: company/templates/company/manufacturer_part.html:43
-#: templates/js/translated/company.js:1002
+#: templates/js/translated/company.js:1375
msgid "Delete manufacturer part"
msgstr ""
@@ -4080,40 +4141,22 @@ msgstr ""
msgid "Suppliers"
msgstr ""
-#: company/templates/company/manufacturer_part.html:136
-#: part/templates/part/detail.html:392
-msgid "Delete supplier parts"
-msgstr ""
-
-#: company/templates/company/manufacturer_part.html:136
-#: company/templates/company/manufacturer_part.html:183
-#: part/templates/part/detail.html:393 part/templates/part/detail.html:423
-#: templates/js/translated/forms.js:506 templates/js/translated/helpers.js:105
-#: templates/js/translated/part.js:370 templates/js/translated/pricing.js:629
-#: templates/js/translated/stock.js:216 users/models.py:247
-msgid "Delete"
-msgstr ""
-
-#: company/templates/company/manufacturer_part.html:166
+#: company/templates/company/manufacturer_part.html:156
#: company/templates/company/manufacturer_part_sidebar.html:5
#: part/templates/part/category_sidebar.html:20
-#: part/templates/part/detail.html:208 part/templates/part/part_sidebar.html:8
+#: part/templates/part/detail.html:195 part/templates/part/part_sidebar.html:8
msgid "Parameters"
msgstr ""
-#: company/templates/company/manufacturer_part.html:170
-#: part/templates/part/detail.html:213
+#: company/templates/company/manufacturer_part.html:160
+#: part/templates/part/detail.html:200
#: templates/InvenTree/settings/category.html:12
#: templates/InvenTree/settings/part_parameters.html:12
msgid "New Parameter"
msgstr ""
-#: company/templates/company/manufacturer_part.html:183
-msgid "Delete parameters"
-msgstr ""
-
-#: company/templates/company/manufacturer_part.html:226
-#: templates/js/translated/part.js:1396
+#: company/templates/company/manufacturer_part.html:206
+#: templates/js/translated/part.js:1395
msgid "Add Parameter"
msgstr ""
@@ -4137,23 +4180,28 @@ msgstr ""
msgid "Contacts"
msgstr ""
+#: company/templates/company/sidebar.html:35
+msgid "Addresses"
+msgstr ""
+
#: company/templates/company/supplier_part.html:7
#: company/templates/company/supplier_part.html:24 stock/models.py:684
#: stock/templates/stock/item_base.html:234
-#: templates/js/translated/company.js:1210
-#: templates/js/translated/purchase_order.js:747
-#: templates/js/translated/stock.js:2016
+#: templates/js/translated/company.js:1631
+#: templates/js/translated/purchase_order.js:758
+#: templates/js/translated/stock.js:2173
msgid "Supplier Part"
msgstr ""
#: company/templates/company/supplier_part.html:51
+#: templates/js/translated/company.js:1557
msgid "Supplier part actions"
msgstr ""
#: company/templates/company/supplier_part.html:56
#: company/templates/company/supplier_part.html:57
#: company/templates/company/supplier_part.html:229
-#: part/templates/part/detail.html:112
+#: part/templates/part/detail.html:110
msgid "Order Part"
msgstr ""
@@ -4164,13 +4212,13 @@ msgstr ""
#: company/templates/company/supplier_part.html:64
#: company/templates/company/supplier_part.html:65
-#: templates/js/translated/company.js:283
+#: templates/js/translated/company.js:293
msgid "Edit Supplier Part"
msgstr ""
#: company/templates/company/supplier_part.html:69
#: company/templates/company/supplier_part.html:70
-#: templates/js/translated/company.js:258
+#: templates/js/translated/company.js:268
msgid "Duplicate Supplier Part"
msgstr ""
@@ -4197,7 +4245,7 @@ msgstr ""
#: company/templates/company/supplier_part.html:211
#: part/templates/part/detail.html:25 stock/templates/stock/location.html:198
-#: templates/js/translated/stock.js:504
+#: templates/js/translated/stock.js:503
msgid "New Stock Item"
msgstr ""
@@ -4205,37 +4253,37 @@ msgstr ""
msgid "Supplier Part Orders"
msgstr ""
-#: company/templates/company/supplier_part.html:249
+#: company/templates/company/supplier_part.html:247
msgid "Pricing Information"
msgstr ""
-#: company/templates/company/supplier_part.html:254
-#: templates/js/translated/company.js:387
+#: company/templates/company/supplier_part.html:252
+#: templates/js/translated/company.js:397
#: templates/js/translated/pricing.js:684
msgid "Add Price Break"
msgstr ""
-#: company/templates/company/supplier_part.html:281
+#: company/templates/company/supplier_part.html:277
msgid "Supplier Part QR Code"
msgstr ""
-#: company/templates/company/supplier_part.html:292
+#: company/templates/company/supplier_part.html:288
msgid "Link Barcode to Supplier Part"
msgstr ""
-#: company/templates/company/supplier_part.html:365
+#: company/templates/company/supplier_part.html:361
msgid "Update Part Availability"
msgstr ""
#: company/templates/company/supplier_part_sidebar.html:5 part/tasks.py:293
-#: part/templates/part/category.html:199
+#: part/templates/part/category.html:182
#: part/templates/part/category_sidebar.html:17 stock/admin.py:47
-#: stock/templates/stock/location.html:168
+#: stock/serializers.py:662 stock/templates/stock/location.html:168
#: stock/templates/stock/location.html:182
#: stock/templates/stock/location.html:194
#: stock/templates/stock/location_sidebar.html:7
-#: templates/InvenTree/search.html:155 templates/js/translated/part.js:1034
-#: templates/js/translated/search.js:214 templates/js/translated/stock.js:2514
+#: templates/InvenTree/search.html:155 templates/js/translated/part.js:1033
+#: templates/js/translated/search.js:172 templates/js/translated/stock.js:2645
#: users/models.py:41
msgid "Stock Items"
msgstr ""
@@ -4261,7 +4309,7 @@ msgstr ""
msgid "New Customer"
msgstr ""
-#: company/views.py:52 templates/js/translated/search.js:234
+#: company/views.py:52 templates/js/translated/search.js:192
msgid "Companies"
msgstr ""
@@ -4269,72 +4317,76 @@ msgstr ""
msgid "New Company"
msgstr ""
-#: label/models.py:104
+#: label/models.py:112
msgid "Label name"
msgstr ""
-#: label/models.py:111
+#: label/models.py:119
msgid "Label description"
msgstr ""
-#: label/models.py:118
+#: label/models.py:126
msgid "Label"
msgstr ""
-#: label/models.py:119
+#: label/models.py:127
msgid "Label template file"
msgstr ""
-#: label/models.py:125 report/models.py:273
+#: label/models.py:133 report/models.py:273
msgid "Enabled"
msgstr ""
-#: label/models.py:126
+#: label/models.py:134
msgid "Label template is enabled"
msgstr ""
-#: label/models.py:131
+#: label/models.py:139
msgid "Width [mm]"
msgstr ""
-#: label/models.py:132
+#: label/models.py:140
msgid "Label width, specified in mm"
msgstr ""
-#: label/models.py:138
+#: label/models.py:146
msgid "Height [mm]"
msgstr ""
-#: label/models.py:139
+#: label/models.py:147
msgid "Label height, specified in mm"
msgstr ""
-#: label/models.py:145 report/models.py:266
+#: label/models.py:153 report/models.py:266
msgid "Filename Pattern"
msgstr ""
-#: label/models.py:146
+#: label/models.py:154
msgid "Pattern for generating label filenames"
msgstr ""
-#: label/models.py:242
+#: label/models.py:250
msgid "Query filters (comma-separated list of key=value pairs),"
msgstr ""
-#: label/models.py:243 label/models.py:284 label/models.py:312
-#: report/models.py:294 report/models.py:452 report/models.py:490
-#: report/models.py:528
+#: label/models.py:251 label/models.py:292 label/models.py:320
+#: label/models.py:356 report/models.py:294 report/models.py:454
+#: report/models.py:492 report/models.py:530
msgid "Filters"
msgstr ""
-#: label/models.py:283
+#: label/models.py:291
msgid "Query filters (comma-separated list of key=value pairs"
msgstr ""
-#: label/models.py:311
+#: label/models.py:319
msgid "Part query filters (comma-separated value of key=value pairs)"
msgstr ""
+#: label/models.py:355
+msgid "Query filters (comma-separated list of key=value pairs)"
+msgstr ""
+
#: label/templates/label/part/part_label.html:31
#: label/templates/label/stockitem/qr.html:21
#: label/templates/label/stocklocation/qr.html:21
@@ -4352,8 +4404,8 @@ msgstr ""
#: report/templates/report/inventree_po_report_base.html:31
#: report/templates/report/inventree_so_report_base.html:31
#: templates/js/translated/order.js:327
-#: templates/js/translated/purchase_order.js:2093
-#: templates/js/translated/sales_order.js:1827
+#: templates/js/translated/purchase_order.js:2103
+#: templates/js/translated/sales_order.js:1839
msgid "Total Price"
msgstr ""
@@ -4361,30 +4413,30 @@ msgstr ""
msgid "No matching purchase order found"
msgstr ""
-#: order/api.py:1452 order/models.py:1178 order/models.py:1262
+#: order/api.py:1452 order/models.py:1191 order/models.py:1275
#: order/templates/order/order_base.html:9
#: order/templates/order/order_base.html:18
#: report/templates/report/inventree_po_report_base.html:14
#: stock/templates/stock/item_base.html:177
#: templates/email/overdue_purchase_order.html:15
-#: templates/js/translated/part.js:1718 templates/js/translated/pricing.js:790
-#: templates/js/translated/purchase_order.js:154
-#: templates/js/translated/purchase_order.js:748
-#: templates/js/translated/purchase_order.js:1637
-#: templates/js/translated/stock.js:1996 templates/js/translated/stock.js:2644
+#: templates/js/translated/part.js:1717 templates/js/translated/pricing.js:790
+#: templates/js/translated/purchase_order.js:165
+#: templates/js/translated/purchase_order.js:759
+#: templates/js/translated/purchase_order.js:1652
+#: templates/js/translated/stock.js:2153 templates/js/translated/stock.js:2775
msgid "Purchase Order"
msgstr ""
-#: order/api.py:1456 order/models.py:1909 order/models.py:1955
+#: order/api.py:1456 order/models.py:1922 order/models.py:1968
#: order/templates/order/return_order_base.html:9
#: order/templates/order/return_order_base.html:28
#: report/templates/report/inventree_return_order_report_base.html:13
-#: templates/js/translated/return_order.js:269
-#: templates/js/translated/stock.js:2678
+#: templates/js/translated/return_order.js:281
+#: templates/js/translated/stock.js:2809
msgid "Return Order"
msgstr ""
-#: order/api.py:1458 templates/js/translated/sales_order.js:1030
+#: order/api.py:1458 templates/js/translated/sales_order.js:1042
msgid "Unknown"
msgstr ""
@@ -4392,11 +4444,11 @@ msgstr ""
msgid "Total price for this order"
msgstr ""
-#: order/models.py:79 order/serializers.py:49
+#: order/models.py:79 order/serializers.py:50
msgid "Order Currency"
msgstr ""
-#: order/models.py:81 order/serializers.py:50
+#: order/models.py:81 order/serializers.py:51
msgid "Currency for this order (leave blank to use company default)"
msgstr ""
@@ -4408,492 +4460,496 @@ msgstr ""
msgid "Order description (optional)"
msgstr ""
-#: order/models.py:234
+#: order/models.py:237
msgid "Select project code for this order"
msgstr ""
-#: order/models.py:236 order/models.py:1094 order/models.py:1454
+#: order/models.py:240 order/models.py:1107 order/models.py:1467
msgid "Link to external page"
msgstr ""
-#: order/models.py:241
+#: order/models.py:245
msgid "Expected date for order delivery. Order will be overdue after this date."
msgstr ""
-#: order/models.py:250
+#: order/models.py:254
msgid "Created By"
msgstr ""
-#: order/models.py:257
+#: order/models.py:261
msgid "User or group responsible for this order"
msgstr ""
-#: order/models.py:267
+#: order/models.py:271
msgid "Point of contact for this order"
msgstr ""
-#: order/models.py:360 order/models.py:766
+#: order/models.py:280
+msgid "Company address for this order"
+msgstr ""
+
+#: order/models.py:373 order/models.py:779
msgid "Order reference"
msgstr ""
-#: order/models.py:368 order/models.py:791
+#: order/models.py:381 order/models.py:804
msgid "Purchase order status"
msgstr ""
-#: order/models.py:383
+#: order/models.py:396
msgid "Company from which the items are being ordered"
msgstr ""
-#: order/models.py:391 order/templates/order/order_base.html:152
-#: templates/js/translated/purchase_order.js:1662
+#: order/models.py:404 order/templates/order/order_base.html:148
+#: templates/js/translated/purchase_order.js:1677
msgid "Supplier Reference"
msgstr ""
-#: order/models.py:391
+#: order/models.py:404
msgid "Supplier order reference code"
msgstr ""
-#: order/models.py:398
+#: order/models.py:411
msgid "received by"
msgstr ""
-#: order/models.py:403 order/models.py:1761
+#: order/models.py:416 order/models.py:1774
msgid "Issue Date"
msgstr ""
-#: order/models.py:404 order/models.py:1762
+#: order/models.py:417 order/models.py:1775
msgid "Date order was issued"
msgstr ""
-#: order/models.py:410 order/models.py:1768
+#: order/models.py:423 order/models.py:1781
msgid "Date order was completed"
msgstr ""
-#: order/models.py:445
+#: order/models.py:458
msgid "Part supplier must match PO supplier"
msgstr ""
-#: order/models.py:606
+#: order/models.py:619
msgid "Quantity must be a positive number"
msgstr ""
-#: order/models.py:780
+#: order/models.py:793
msgid "Company to which the items are being sold"
msgstr ""
-#: order/models.py:799 order/models.py:1755
+#: order/models.py:812 order/models.py:1768
msgid "Customer Reference "
msgstr ""
-#: order/models.py:799 order/models.py:1756
+#: order/models.py:812 order/models.py:1769
msgid "Customer order reference code"
msgstr ""
-#: order/models.py:801 order/models.py:1408
-#: templates/js/translated/sales_order.js:831
-#: templates/js/translated/sales_order.js:1012
+#: order/models.py:814 order/models.py:1421
+#: templates/js/translated/sales_order.js:843
+#: templates/js/translated/sales_order.js:1024
msgid "Shipment Date"
msgstr ""
-#: order/models.py:808
+#: order/models.py:821
msgid "shipped by"
msgstr ""
-#: order/models.py:857
+#: order/models.py:870
msgid "Order cannot be completed as no parts have been assigned"
msgstr ""
-#: order/models.py:861
+#: order/models.py:874
msgid "Only an open order can be marked as complete"
msgstr ""
-#: order/models.py:864 templates/js/translated/sales_order.js:491
+#: order/models.py:877 templates/js/translated/sales_order.js:503
msgid "Order cannot be completed as there are incomplete shipments"
msgstr ""
-#: order/models.py:867
+#: order/models.py:880
msgid "Order cannot be completed as there are incomplete line items"
msgstr ""
-#: order/models.py:1074
+#: order/models.py:1087
msgid "Item quantity"
msgstr ""
-#: order/models.py:1087
+#: order/models.py:1100
msgid "Line item reference"
msgstr ""
-#: order/models.py:1089
+#: order/models.py:1102
msgid "Line item notes"
msgstr ""
-#: order/models.py:1100
+#: order/models.py:1113
msgid "Target date for this line item (leave blank to use the target date from the order)"
msgstr ""
-#: order/models.py:1118
+#: order/models.py:1131
msgid "Line item description (optional)"
msgstr ""
-#: order/models.py:1123
+#: order/models.py:1136
msgid "Context"
msgstr ""
-#: order/models.py:1124
+#: order/models.py:1137
msgid "Additional context for this line"
msgstr ""
-#: order/models.py:1133
+#: order/models.py:1146
msgid "Unit price"
msgstr ""
-#: order/models.py:1163
+#: order/models.py:1176
msgid "Supplier part must match supplier"
msgstr ""
-#: order/models.py:1171
+#: order/models.py:1184
msgid "deleted"
msgstr ""
-#: order/models.py:1177 order/models.py:1262 order/models.py:1303
-#: order/models.py:1402 order/models.py:1551 order/models.py:1908
-#: order/models.py:1955 templates/js/translated/sales_order.js:1474
+#: order/models.py:1190 order/models.py:1275 order/models.py:1316
+#: order/models.py:1415 order/models.py:1564 order/models.py:1921
+#: order/models.py:1968 templates/js/translated/sales_order.js:1486
msgid "Order"
msgstr ""
-#: order/models.py:1196
+#: order/models.py:1209
msgid "Supplier part"
msgstr ""
-#: order/models.py:1203 order/templates/order/order_base.html:200
-#: templates/js/translated/part.js:1841 templates/js/translated/part.js:1872
-#: templates/js/translated/purchase_order.js:1276
-#: templates/js/translated/purchase_order.js:2137
-#: templates/js/translated/return_order.js:748
-#: templates/js/translated/table_filters.js:90
-#: templates/js/translated/table_filters.js:515
+#: order/models.py:1216 order/templates/order/order_base.html:196
+#: templates/js/translated/part.js:1840 templates/js/translated/part.js:1871
+#: templates/js/translated/purchase_order.js:1291
+#: templates/js/translated/purchase_order.js:2147
+#: templates/js/translated/return_order.js:760
+#: templates/js/translated/table_filters.js:96
+#: templates/js/translated/table_filters.js:537
msgid "Received"
msgstr ""
-#: order/models.py:1204
+#: order/models.py:1217
msgid "Number of items received"
msgstr ""
-#: order/models.py:1211 stock/models.py:823 stock/serializers.py:252
+#: order/models.py:1224 stock/models.py:823 stock/serializers.py:314
#: stock/templates/stock/item_base.html:184
-#: templates/js/translated/stock.js:2047
+#: templates/js/translated/stock.js:2204
msgid "Purchase Price"
msgstr ""
-#: order/models.py:1212
+#: order/models.py:1225
msgid "Unit purchase price"
msgstr ""
-#: order/models.py:1225
+#: order/models.py:1238
msgid "Where does the Purchaser want this item to be stored?"
msgstr ""
-#: order/models.py:1291
+#: order/models.py:1304
msgid "Virtual part cannot be assigned to a sales order"
msgstr ""
-#: order/models.py:1296
+#: order/models.py:1309
msgid "Only salable parts can be assigned to a sales order"
msgstr ""
-#: order/models.py:1322 part/templates/part/part_pricing.html:107
+#: order/models.py:1335 part/templates/part/part_pricing.html:107
#: part/templates/part/prices.html:128 templates/js/translated/pricing.js:943
msgid "Sale Price"
msgstr ""
-#: order/models.py:1323
+#: order/models.py:1336
msgid "Unit sale price"
msgstr ""
-#: order/models.py:1333
+#: order/models.py:1346
msgid "Shipped quantity"
msgstr ""
-#: order/models.py:1409
+#: order/models.py:1422
msgid "Date of shipment"
msgstr ""
-#: order/models.py:1414 templates/js/translated/sales_order.js:1024
+#: order/models.py:1427 templates/js/translated/sales_order.js:1036
msgid "Delivery Date"
msgstr ""
-#: order/models.py:1415
+#: order/models.py:1428
msgid "Date of delivery of shipment"
msgstr ""
-#: order/models.py:1422
+#: order/models.py:1435
msgid "Checked By"
msgstr ""
-#: order/models.py:1423
+#: order/models.py:1436
msgid "User who checked this shipment"
msgstr ""
-#: order/models.py:1430 order/models.py:1627 order/serializers.py:1248
-#: order/serializers.py:1376 templates/js/translated/model_renderers.js:415
+#: order/models.py:1443 order/models.py:1640 order/serializers.py:1254
+#: order/serializers.py:1382 templates/js/translated/model_renderers.js:429
msgid "Shipment"
msgstr ""
-#: order/models.py:1431
+#: order/models.py:1444
msgid "Shipment number"
msgstr ""
-#: order/models.py:1439
+#: order/models.py:1452
msgid "Tracking Number"
msgstr ""
-#: order/models.py:1440
+#: order/models.py:1453
msgid "Shipment tracking information"
msgstr ""
-#: order/models.py:1447
+#: order/models.py:1460
msgid "Invoice Number"
msgstr ""
-#: order/models.py:1448
+#: order/models.py:1461
msgid "Reference number for associated invoice"
msgstr ""
-#: order/models.py:1470
+#: order/models.py:1483
msgid "Shipment has already been sent"
msgstr ""
-#: order/models.py:1473
+#: order/models.py:1486
msgid "Shipment has no allocated stock items"
msgstr ""
-#: order/models.py:1586 order/models.py:1588
+#: order/models.py:1599 order/models.py:1601
msgid "Stock item has not been assigned"
msgstr ""
-#: order/models.py:1592
+#: order/models.py:1605
msgid "Cannot allocate stock item to a line with a different part"
msgstr ""
-#: order/models.py:1594
+#: order/models.py:1607
msgid "Cannot allocate stock to a line without a part"
msgstr ""
-#: order/models.py:1597
+#: order/models.py:1610
msgid "Allocation quantity cannot exceed stock quantity"
msgstr ""
-#: order/models.py:1607 order/serializers.py:1110
+#: order/models.py:1620 order/serializers.py:1116
msgid "Quantity must be 1 for serialized stock item"
msgstr ""
-#: order/models.py:1610
+#: order/models.py:1623
msgid "Sales order does not match shipment"
msgstr ""
-#: order/models.py:1611
+#: order/models.py:1624
msgid "Shipment does not match sales order"
msgstr ""
-#: order/models.py:1619
+#: order/models.py:1632
msgid "Line"
msgstr ""
-#: order/models.py:1628
+#: order/models.py:1641
msgid "Sales order shipment reference"
msgstr ""
-#: order/models.py:1641 order/models.py:1916
-#: templates/js/translated/return_order.js:706
+#: order/models.py:1654 order/models.py:1929
+#: templates/js/translated/return_order.js:718
msgid "Item"
msgstr ""
-#: order/models.py:1642
+#: order/models.py:1655
msgid "Select stock item to allocate"
msgstr ""
-#: order/models.py:1645
+#: order/models.py:1658
msgid "Enter stock allocation quantity"
msgstr ""
-#: order/models.py:1725
+#: order/models.py:1738
msgid "Return Order reference"
msgstr ""
-#: order/models.py:1739
+#: order/models.py:1752
msgid "Company from which items are being returned"
msgstr ""
-#: order/models.py:1750
+#: order/models.py:1763
msgid "Return order status"
msgstr ""
-#: order/models.py:1901
+#: order/models.py:1914
msgid "Only serialized items can be assigned to a Return Order"
msgstr ""
-#: order/models.py:1917
+#: order/models.py:1930
msgid "Select item to return from customer"
msgstr ""
-#: order/models.py:1922
+#: order/models.py:1935
msgid "Received Date"
msgstr ""
-#: order/models.py:1923
+#: order/models.py:1936
msgid "The date this this return item was received"
msgstr ""
-#: order/models.py:1934 templates/js/translated/return_order.js:717
-#: templates/js/translated/table_filters.js:93
+#: order/models.py:1947 templates/js/translated/return_order.js:729
+#: templates/js/translated/table_filters.js:99
msgid "Outcome"
msgstr ""
-#: order/models.py:1934
+#: order/models.py:1947
msgid "Outcome for this line item"
msgstr ""
-#: order/models.py:1940
+#: order/models.py:1953
msgid "Cost associated with return or repair for this line item"
msgstr ""
-#: order/serializers.py:247
+#: order/serializers.py:253
msgid "Order cannot be cancelled"
msgstr ""
-#: order/serializers.py:262 order/serializers.py:1128
+#: order/serializers.py:268 order/serializers.py:1134
msgid "Allow order to be closed with incomplete line items"
msgstr ""
-#: order/serializers.py:273 order/serializers.py:1139
+#: order/serializers.py:279 order/serializers.py:1145
msgid "Order has incomplete line items"
msgstr ""
-#: order/serializers.py:386
+#: order/serializers.py:392
msgid "Order is not open"
msgstr ""
-#: order/serializers.py:404
+#: order/serializers.py:410
msgid "Purchase price currency"
msgstr ""
-#: order/serializers.py:422
+#: order/serializers.py:428
msgid "Supplier part must be specified"
msgstr ""
-#: order/serializers.py:427
+#: order/serializers.py:433
msgid "Purchase order must be specified"
msgstr ""
-#: order/serializers.py:433
+#: order/serializers.py:439
msgid "Supplier must match purchase order"
msgstr ""
-#: order/serializers.py:434
+#: order/serializers.py:440
msgid "Purchase order must match supplier"
msgstr ""
-#: order/serializers.py:472 order/serializers.py:1216
+#: order/serializers.py:478 order/serializers.py:1222
msgid "Line Item"
msgstr ""
-#: order/serializers.py:478
+#: order/serializers.py:484
msgid "Line item does not match purchase order"
msgstr ""
-#: order/serializers.py:488 order/serializers.py:607 order/serializers.py:1589
+#: order/serializers.py:494 order/serializers.py:613 order/serializers.py:1595
msgid "Select destination location for received items"
msgstr ""
-#: order/serializers.py:507 templates/js/translated/purchase_order.js:1100
+#: order/serializers.py:513 templates/js/translated/purchase_order.js:1115
msgid "Enter batch code for incoming stock items"
msgstr ""
-#: order/serializers.py:515 templates/js/translated/purchase_order.js:1124
+#: order/serializers.py:521 templates/js/translated/purchase_order.js:1139
msgid "Enter serial numbers for incoming stock items"
msgstr ""
-#: order/serializers.py:528 templates/js/translated/barcode.js:52
+#: order/serializers.py:534 templates/js/translated/barcode.js:52
msgid "Barcode"
msgstr ""
-#: order/serializers.py:529
+#: order/serializers.py:535
msgid "Scanned barcode"
msgstr ""
-#: order/serializers.py:545
+#: order/serializers.py:551
msgid "Barcode is already in use"
msgstr ""
-#: order/serializers.py:569
+#: order/serializers.py:575
msgid "An integer quantity must be provided for trackable parts"
msgstr ""
-#: order/serializers.py:623 order/serializers.py:1604
+#: order/serializers.py:629 order/serializers.py:1610
msgid "Line items must be provided"
msgstr ""
-#: order/serializers.py:640
+#: order/serializers.py:646
msgid "Destination location must be specified"
msgstr ""
-#: order/serializers.py:651
+#: order/serializers.py:657
msgid "Supplied barcode values must be unique"
msgstr ""
-#: order/serializers.py:950
+#: order/serializers.py:956
msgid "Sale price currency"
msgstr ""
-#: order/serializers.py:1007
+#: order/serializers.py:1013
msgid "No shipment details provided"
msgstr ""
-#: order/serializers.py:1071 order/serializers.py:1225
+#: order/serializers.py:1077 order/serializers.py:1231
msgid "Line item is not associated with this order"
msgstr ""
-#: order/serializers.py:1093
+#: order/serializers.py:1099
msgid "Quantity must be positive"
msgstr ""
-#: order/serializers.py:1238
+#: order/serializers.py:1244
msgid "Enter serial numbers to allocate"
msgstr ""
-#: order/serializers.py:1260 order/serializers.py:1384
+#: order/serializers.py:1266 order/serializers.py:1390
msgid "Shipment has already been shipped"
msgstr ""
-#: order/serializers.py:1263 order/serializers.py:1387
+#: order/serializers.py:1269 order/serializers.py:1393
msgid "Shipment is not associated with this order"
msgstr ""
-#: order/serializers.py:1317
+#: order/serializers.py:1323
msgid "No match found for the following serial numbers"
msgstr ""
-#: order/serializers.py:1327
+#: order/serializers.py:1333
msgid "The following serial numbers are already allocated"
msgstr ""
-#: order/serializers.py:1555
+#: order/serializers.py:1561
msgid "Return order line item"
msgstr ""
-#: order/serializers.py:1562
+#: order/serializers.py:1568
msgid "Line item does not match return order"
msgstr ""
-#: order/serializers.py:1565
+#: order/serializers.py:1571
msgid "Line item has already been received"
msgstr ""
-#: order/serializers.py:1597
+#: order/serializers.py:1603
msgid "Items can only be received against orders which are in progress"
msgstr ""
-#: order/serializers.py:1678
+#: order/serializers.py:1684
msgid "Line price currency"
msgstr ""
@@ -4957,82 +5013,74 @@ msgid "Issue Order"
msgstr ""
#: order/templates/order/order_base.html:83
-msgid "Receive items"
-msgstr ""
-
-#: order/templates/order/order_base.html:85
-msgid "Receive Items"
-msgstr ""
-
-#: order/templates/order/order_base.html:87
#: order/templates/order/return_order_base.html:87
msgid "Mark order as complete"
msgstr ""
-#: order/templates/order/order_base.html:88
+#: order/templates/order/order_base.html:84
#: order/templates/order/return_order_base.html:88
#: order/templates/order/sales_order_base.html:94
msgid "Complete Order"
msgstr ""
-#: order/templates/order/order_base.html:95
+#: order/templates/order/order_base.html:91
msgid "Supplier part thumbnail"
msgstr ""
-#: order/templates/order/order_base.html:110
+#: order/templates/order/order_base.html:106
#: order/templates/order/return_order_base.html:102
#: order/templates/order/sales_order_base.html:107
msgid "Order Reference"
msgstr ""
-#: order/templates/order/order_base.html:115
+#: order/templates/order/order_base.html:111
#: order/templates/order/return_order_base.html:107
#: order/templates/order/sales_order_base.html:112
msgid "Order Description"
msgstr ""
-#: order/templates/order/order_base.html:122
+#: order/templates/order/order_base.html:118
#: order/templates/order/return_order_base.html:114
#: order/templates/order/sales_order_base.html:119
msgid "Order Status"
msgstr ""
-#: order/templates/order/order_base.html:145
+#: order/templates/order/order_base.html:141
msgid "No suppplier information available"
msgstr ""
-#: order/templates/order/order_base.html:158
+#: order/templates/order/order_base.html:154
#: order/templates/order/sales_order_base.html:158
msgid "Completed Line Items"
msgstr ""
-#: order/templates/order/order_base.html:164
+#: order/templates/order/order_base.html:160
#: order/templates/order/sales_order_base.html:164
#: order/templates/order/sales_order_base.html:174
msgid "Incomplete"
msgstr ""
-#: order/templates/order/order_base.html:183
+#: order/templates/order/order_base.html:179
#: order/templates/order/return_order_base.html:158
#: report/templates/report/inventree_build_order_base.html:121
msgid "Issued"
msgstr ""
-#: order/templates/order/order_base.html:221
+#: order/templates/order/order_base.html:224
msgid "Total cost"
msgstr ""
-#: order/templates/order/order_base.html:225
-#: order/templates/order/return_order_base.html:193
-#: order/templates/order/sales_order_base.html:233
+#: order/templates/order/order_base.html:228
+#: order/templates/order/return_order_base.html:200
+#: order/templates/order/sales_order_base.html:240
msgid "Total cost could not be calculated"
msgstr ""
-#: order/templates/order/order_base.html:331
+#: order/templates/order/order_base.html:318
msgid "Purchase Order QR Code"
msgstr ""
-#: order/templates/order/order_base.html:343
+#: order/templates/order/order_base.html:330
msgid "Link Barcode to Purchase Order"
msgstr ""
@@ -5085,13 +5133,13 @@ msgstr ""
#: part/templates/part/import_wizard/ajax_match_references.html:42
#: part/templates/part/import_wizard/match_fields.html:71
#: part/templates/part/import_wizard/match_references.html:49
-#: templates/js/translated/bom.js:132 templates/js/translated/build.js:512
-#: templates/js/translated/build.js:2348
-#: templates/js/translated/purchase_order.js:692
-#: templates/js/translated/purchase_order.js:1206
-#: templates/js/translated/return_order.js:494
-#: templates/js/translated/sales_order.js:1097
-#: templates/js/translated/stock.js:681 templates/js/translated/stock.js:850
+#: templates/js/translated/bom.js:133 templates/js/translated/build.js:518
+#: templates/js/translated/build.js:1555
+#: templates/js/translated/purchase_order.js:703
+#: templates/js/translated/purchase_order.js:1221
+#: templates/js/translated/return_order.js:506
+#: templates/js/translated/sales_order.js:1109
+#: templates/js/translated/stock.js:680 templates/js/translated/stock.js:849
#: templates/patterns/wizard/match_fields.html:70
msgid "Remove row"
msgstr ""
@@ -5152,9 +5200,9 @@ msgstr ""
#: order/templates/order/purchase_order_detail.html:27
#: order/templates/order/return_order_detail.html:24
#: order/templates/order/sales_order_detail.html:24
-#: templates/js/translated/purchase_order.js:419
-#: templates/js/translated/return_order.js:447
-#: templates/js/translated/sales_order.js:222
+#: templates/js/translated/purchase_order.js:430
+#: templates/js/translated/return_order.js:459
+#: templates/js/translated/sales_order.js:234
msgid "Add Line Item"
msgstr ""
@@ -5165,30 +5213,25 @@ msgstr ""
msgid "Receive Line Items"
msgstr ""
-#: order/templates/order/purchase_order_detail.html:49
#: order/templates/order/purchase_order_detail.html:50
-msgid "Delete Line Items"
-msgstr ""
-
-#: order/templates/order/purchase_order_detail.html:66
-#: order/templates/order/return_order_detail.html:47
-#: order/templates/order/sales_order_detail.html:43
+#: order/templates/order/return_order_detail.html:45
+#: order/templates/order/sales_order_detail.html:41
msgid "Extra Lines"
msgstr ""
-#: order/templates/order/purchase_order_detail.html:72
-#: order/templates/order/return_order_detail.html:53
-#: order/templates/order/sales_order_detail.html:49
+#: order/templates/order/purchase_order_detail.html:56
+#: order/templates/order/return_order_detail.html:51
+#: order/templates/order/sales_order_detail.html:47
msgid "Add Extra Line"
msgstr ""
-#: order/templates/order/purchase_order_detail.html:92
+#: order/templates/order/purchase_order_detail.html:74
msgid "Received Items"
msgstr ""
-#: order/templates/order/purchase_order_detail.html:117
-#: order/templates/order/return_order_detail.html:89
-#: order/templates/order/sales_order_detail.html:149
+#: order/templates/order/purchase_order_detail.html:99
+#: order/templates/order/return_order_detail.html:85
+#: order/templates/order/sales_order_detail.html:139
msgid "Order Notes"
msgstr ""
@@ -5208,29 +5251,29 @@ msgstr ""
#: order/templates/order/return_order_base.html:139
#: order/templates/order/sales_order_base.html:152
-#: templates/js/translated/return_order.js:297
-#: templates/js/translated/sales_order.js:785
+#: templates/js/translated/return_order.js:309
+#: templates/js/translated/sales_order.js:797
msgid "Customer Reference"
msgstr ""
-#: order/templates/order/return_order_base.html:189
-#: order/templates/order/sales_order_base.html:229
+#: order/templates/order/return_order_base.html:196
+#: order/templates/order/sales_order_base.html:236
#: part/templates/part/part_pricing.html:32
#: part/templates/part/part_pricing.html:58
#: part/templates/part/part_pricing.html:99
#: part/templates/part/part_pricing.html:114
-#: templates/js/translated/part.js:1046
-#: templates/js/translated/purchase_order.js:1712
-#: templates/js/translated/return_order.js:369
-#: templates/js/translated/sales_order.js:843
+#: templates/js/translated/part.js:1045
+#: templates/js/translated/purchase_order.js:1727
+#: templates/js/translated/return_order.js:381
+#: templates/js/translated/sales_order.js:855
msgid "Total Cost"
msgstr ""
-#: order/templates/order/return_order_base.html:257
+#: order/templates/order/return_order_base.html:264
msgid "Return Order QR Code"
msgstr ""
-#: order/templates/order/return_order_base.html:269
+#: order/templates/order/return_order_base.html:276
msgid "Link Barcode to Return Order"
msgstr ""
@@ -5248,7 +5291,7 @@ msgid "Ship Items"
msgstr ""
#: order/templates/order/sales_order_base.html:93
-#: templates/js/translated/sales_order.js:469
+#: templates/js/translated/sales_order.js:481
msgid "Complete Sales Order"
msgstr ""
@@ -5257,16 +5300,16 @@ msgid "This Sales Order has not been fully allocated"
msgstr ""
#: order/templates/order/sales_order_base.html:170
-#: order/templates/order/sales_order_detail.html:105
+#: order/templates/order/sales_order_detail.html:99
#: order/templates/order/so_sidebar.html:11
msgid "Completed Shipments"
msgstr ""
-#: order/templates/order/sales_order_base.html:306
+#: order/templates/order/sales_order_base.html:313
msgid "Sales Order QR Code"
msgstr ""
-#: order/templates/order/sales_order_base.html:318
+#: order/templates/order/sales_order_base.html:325
msgid "Link Barcode to Sales Order"
msgstr ""
@@ -5274,18 +5317,17 @@ msgstr ""
msgid "Sales Order Items"
msgstr ""
-#: order/templates/order/sales_order_detail.html:71
-#: order/templates/order/so_sidebar.html:8 templates/InvenTree/index.html:332
+#: order/templates/order/sales_order_detail.html:67
+#: order/templates/order/so_sidebar.html:8 templates/InvenTree/index.html:284
msgid "Pending Shipments"
msgstr ""
-#: order/templates/order/sales_order_detail.html:75
-#: templates/attachment_table.html:6 templates/js/translated/bom.js:1236
-#: templates/js/translated/build.js:2249
+#: order/templates/order/sales_order_detail.html:71
+#: templates/js/translated/bom.js:1256 templates/js/translated/filters.js:297
msgid "Actions"
msgstr ""
-#: order/templates/order/sales_order_detail.html:84
+#: order/templates/order/sales_order_detail.html:80
msgid "New Shipment"
msgstr ""
@@ -5311,12 +5353,12 @@ msgstr ""
msgid "Updated {part} unit-price to {price} and quantity to {qty}"
msgstr ""
-#: part/admin.py:33 part/admin.py:273 part/models.py:3667 part/tasks.py:288
+#: part/admin.py:33 part/admin.py:273 part/models.py:3716 part/tasks.py:288
#: stock/admin.py:101
msgid "Part ID"
msgstr ""
-#: part/admin.py:34 part/admin.py:275 part/models.py:3671 part/tasks.py:289
+#: part/admin.py:34 part/admin.py:275 part/models.py:3720 part/tasks.py:289
#: stock/admin.py:102
msgid "Part Name"
msgstr ""
@@ -5325,19 +5367,19 @@ msgstr ""
msgid "Part Description"
msgstr ""
-#: part/admin.py:36 part/models.py:889 part/templates/part/part_base.html:271
-#: templates/js/translated/part.js:1200 templates/js/translated/part.js:2233
-#: templates/js/translated/stock.js:1795
+#: part/admin.py:36 part/models.py:890 part/templates/part/part_base.html:271
+#: templates/js/translated/part.js:1199 templates/js/translated/part.js:2309
+#: templates/js/translated/stock.js:1952
msgid "IPN"
msgstr ""
-#: part/admin.py:37 part/models.py:896 part/templates/part/part_base.html:279
-#: report/models.py:179 templates/js/translated/part.js:1205
-#: templates/js/translated/part.js:2239
+#: part/admin.py:37 part/models.py:897 part/templates/part/part_base.html:279
+#: report/models.py:179 templates/js/translated/part.js:1204
+#: templates/js/translated/part.js:2315
msgid "Revision"
msgstr ""
-#: part/admin.py:38 part/admin.py:198 part/models.py:875
+#: part/admin.py:38 part/admin.py:198 part/models.py:876
#: part/templates/part/category.html:93 part/templates/part/part_base.html:300
msgid "Keywords"
msgstr ""
@@ -5358,24 +5400,24 @@ msgstr ""
msgid "Default Supplier ID"
msgstr ""
-#: part/admin.py:46 part/models.py:864 part/templates/part/part_base.html:179
+#: part/admin.py:46 part/models.py:865 part/templates/part/part_base.html:179
msgid "Variant Of"
msgstr ""
-#: part/admin.py:47 part/models.py:980 part/templates/part/part_base.html:205
+#: part/admin.py:47 part/models.py:981 part/templates/part/part_base.html:205
msgid "Minimum Stock"
msgstr ""
#: part/admin.py:61 part/templates/part/part_base.html:199
-#: templates/js/translated/company.js:1299
-#: templates/js/translated/table_filters.js:301
+#: templates/js/translated/company.js:1720
+#: templates/js/translated/table_filters.js:307
msgid "In Stock"
msgstr ""
#: part/admin.py:62 part/bom.py:178 part/templates/part/part_base.html:212
-#: templates/js/translated/bom.js:1167 templates/js/translated/build.js:2191
-#: templates/js/translated/part.js:687 templates/js/translated/part.js:2123
-#: templates/js/translated/table_filters.js:140
+#: templates/js/translated/bom.js:1187 templates/js/translated/build.js:2541
+#: templates/js/translated/part.js:686 templates/js/translated/part.js:2122
+#: templates/js/translated/table_filters.js:146
msgid "On Order"
msgstr ""
@@ -5383,23 +5425,16 @@ msgstr ""
msgid "Used In"
msgstr ""
-#: part/admin.py:64 templates/js/translated/build.js:2203
-#: templates/js/translated/build.js:2465 templates/js/translated/build.js:3052
-#: templates/js/translated/sales_order.js:1906
-#: templates/js/translated/table_filters.js:488
-msgid "Allocated"
-msgstr ""
-
#: part/admin.py:65 part/templates/part/part_base.html:243 stock/admin.py:124
-#: templates/js/translated/part.js:692 templates/js/translated/part.js:2127
+#: templates/js/translated/part.js:691 templates/js/translated/part.js:2126
msgid "Building"
msgstr ""
-#: part/admin.py:66 part/models.py:2930 templates/js/translated/part.js:943
+#: part/admin.py:66 part/models.py:2964 templates/js/translated/part.js:942
msgid "Minimum Cost"
msgstr ""
-#: part/admin.py:67 part/models.py:2936 templates/js/translated/part.js:953
+#: part/admin.py:67 part/models.py:2970 templates/js/translated/part.js:952
msgid "Maximum Cost"
msgstr ""
@@ -5416,13 +5451,13 @@ msgstr ""
msgid "Category Path"
msgstr ""
-#: part/admin.py:202 part/models.py:392 part/templates/part/cat_link.html:3
-#: part/templates/part/category.html:23 part/templates/part/category.html:140
-#: part/templates/part/category.html:160
+#: part/admin.py:202 part/models.py:393 part/serializers.py:307
+#: part/templates/part/cat_link.html:3 part/templates/part/category.html:23
+#: part/templates/part/category.html:140 part/templates/part/category.html:160
#: part/templates/part/category_sidebar.html:9
-#: templates/InvenTree/index.html:86 templates/InvenTree/search.html:84
+#: templates/InvenTree/index.html:36 templates/InvenTree/search.html:84
#: templates/InvenTree/settings/sidebar.html:45
-#: templates/js/translated/part.js:2754 templates/js/translated/search.js:172
+#: templates/js/translated/part.js:2739 templates/js/translated/search.js:130
#: templates/navbar.html:24 users/models.py:38
msgid "Parts"
msgstr ""
@@ -5439,7 +5474,7 @@ msgstr ""
msgid "Parent IPN"
msgstr ""
-#: part/admin.py:274 part/models.py:3675
+#: part/admin.py:274 part/models.py:3724
msgid "Part IPN"
msgstr ""
@@ -5453,35 +5488,35 @@ msgstr ""
msgid "Maximum Price"
msgstr ""
-#: part/api.py:498
+#: part/api.py:501
msgid "Incoming Purchase Order"
msgstr ""
-#: part/api.py:518
+#: part/api.py:521
msgid "Outgoing Sales Order"
msgstr ""
-#: part/api.py:536
+#: part/api.py:539
msgid "Stock produced by Build Order"
msgstr ""
-#: part/api.py:622
+#: part/api.py:625
msgid "Stock required for Build Order"
msgstr ""
-#: part/api.py:770
+#: part/api.py:773
msgid "Valid"
msgstr ""
-#: part/api.py:771
+#: part/api.py:774
msgid "Validate entire Bill of Materials"
msgstr ""
-#: part/api.py:777
+#: part/api.py:780
msgid "This option must be selected"
msgstr ""
-#: part/bom.py:175 part/models.py:127 part/models.py:923
+#: part/bom.py:175 part/models.py:128 part/models.py:924
#: part/templates/part/category.html:115 part/templates/part/part_base.html:369
msgid "Default Location"
msgstr ""
@@ -5491,7 +5526,7 @@ msgid "Total Stock"
msgstr ""
#: part/bom.py:177 part/templates/part/part_base.html:194
-#: templates/js/translated/sales_order.js:1873
+#: templates/js/translated/sales_order.js:1885
msgid "Available Stock"
msgstr ""
@@ -5499,916 +5534,913 @@ msgstr ""
msgid "Input quantity for price calculation"
msgstr ""
-#: part/models.py:75 part/models.py:3616 part/templates/part/category.html:16
+#: part/models.py:76 part/models.py:3665 part/templates/part/category.html:16
#: part/templates/part/part_app_base.html:10
msgid "Part Category"
msgstr ""
-#: part/models.py:76 part/templates/part/category.html:135
-#: templates/InvenTree/search.html:97 templates/js/translated/search.js:200
+#: part/models.py:77 part/templates/part/category.html:135
+#: templates/InvenTree/search.html:97 templates/js/translated/search.js:158
#: users/models.py:37
msgid "Part Categories"
msgstr ""
-#: part/models.py:128
+#: part/models.py:129
msgid "Default location for parts in this category"
msgstr ""
-#: part/models.py:133 stock/models.py:124 templates/js/translated/stock.js:2520
-#: templates/js/translated/table_filters.js:209
-#: templates/js/translated/table_filters.js:229
+#: part/models.py:134 stock/models.py:124 templates/js/translated/stock.js:2651
+#: templates/js/translated/table_filters.js:215
+#: templates/js/translated/table_filters.js:235
msgid "Structural"
msgstr ""
-#: part/models.py:135
+#: part/models.py:136
msgid "Parts may not be directly assigned to a structural category, but may be assigned to child categories."
msgstr ""
-#: part/models.py:139
+#: part/models.py:140
msgid "Default keywords"
msgstr ""
-#: part/models.py:139
+#: part/models.py:140
msgid "Default keywords for parts in this category"
msgstr ""
-#: part/models.py:144 stock/models.py:113
+#: part/models.py:145 stock/models.py:113
msgid "Icon"
msgstr ""
-#: part/models.py:145 stock/models.py:114
+#: part/models.py:146 stock/models.py:114
msgid "Icon (optional)"
msgstr ""
-#: part/models.py:164
+#: part/models.py:165
msgid "You cannot make this part category structural because some parts are already assigned to it!"
msgstr ""
-#: part/models.py:475
+#: part/models.py:476
msgid "Invalid choice for parent part"
msgstr ""
-#: part/models.py:517 part/models.py:529
+#: part/models.py:518 part/models.py:530
#, python-brace-format
msgid "Part '{p1}' is used in BOM for '{p2}' (recursive)"
msgstr ""
-#: part/models.py:601
+#: part/models.py:602
#, python-brace-format
msgid "IPN must match regex pattern {pat}"
msgstr ""
-#: part/models.py:672
+#: part/models.py:673
msgid "Stock item with this serial number already exists"
msgstr ""
-#: part/models.py:803
+#: part/models.py:804
msgid "Duplicate IPN not allowed in part settings"
msgstr ""
-#: part/models.py:808
+#: part/models.py:809
msgid "Part with this Name, IPN and Revision already exists."
msgstr ""
-#: part/models.py:822
+#: part/models.py:823
msgid "Parts cannot be assigned to structural part categories!"
msgstr ""
-#: part/models.py:846 part/models.py:3672
+#: part/models.py:847 part/models.py:3721
msgid "Part name"
msgstr ""
-#: part/models.py:852
+#: part/models.py:853
msgid "Is Template"
msgstr ""
-#: part/models.py:853
+#: part/models.py:854
msgid "Is this part a template part?"
msgstr ""
-#: part/models.py:863
+#: part/models.py:864
msgid "Is this part a variant of another part?"
msgstr ""
-#: part/models.py:870
+#: part/models.py:871
msgid "Part description (optional)"
msgstr ""
-#: part/models.py:876
+#: part/models.py:877
msgid "Part keywords to improve visibility in search results"
msgstr ""
-#: part/models.py:883 part/models.py:3198 part/models.py:3615
-#: part/serializers.py:848 part/templates/part/part_base.html:262
+#: part/models.py:884 part/models.py:3232 part/models.py:3664
+#: part/serializers.py:320 part/serializers.py:910
+#: part/templates/part/part_base.html:262
#: templates/InvenTree/settings/settings_staff_js.html:204
#: templates/js/translated/notification.js:59
-#: templates/js/translated/part.js:2269 templates/js/translated/part.js:2481
+#: templates/js/translated/part.js:2345
msgid "Category"
msgstr ""
-#: part/models.py:884
+#: part/models.py:885
msgid "Part category"
msgstr ""
-#: part/models.py:890
+#: part/models.py:891
msgid "Internal Part Number"
msgstr ""
-#: part/models.py:895
+#: part/models.py:896
msgid "Part revision or version number"
msgstr ""
-#: part/models.py:921
+#: part/models.py:922
msgid "Where is this item normally stored?"
msgstr ""
-#: part/models.py:966 part/templates/part/part_base.html:378
+#: part/models.py:967 part/templates/part/part_base.html:378
msgid "Default Supplier"
msgstr ""
-#: part/models.py:967
+#: part/models.py:968
msgid "Default supplier part"
msgstr ""
-#: part/models.py:974
+#: part/models.py:975
msgid "Default Expiry"
msgstr ""
-#: part/models.py:975
+#: part/models.py:976
msgid "Expiry time (in days) for stock items of this part"
msgstr ""
-#: part/models.py:981
+#: part/models.py:982
msgid "Minimum allowed stock level"
msgstr ""
-#: part/models.py:988
+#: part/models.py:989
msgid "Units of measure for this part"
msgstr ""
-#: part/models.py:997
+#: part/models.py:998
msgid "Can this part be built from other parts?"
msgstr ""
-#: part/models.py:1003
+#: part/models.py:1004
msgid "Can this part be used to build other parts?"
msgstr ""
-#: part/models.py:1009
+#: part/models.py:1010
msgid "Does this part have tracking for unique items?"
msgstr ""
-#: part/models.py:1014
+#: part/models.py:1015
msgid "Can this part be purchased from external suppliers?"
msgstr ""
-#: part/models.py:1019
+#: part/models.py:1020
msgid "Can this part be sold to customers?"
msgstr ""
-#: part/models.py:1024
+#: part/models.py:1025
msgid "Is this part active?"
msgstr ""
-#: part/models.py:1029
+#: part/models.py:1030
msgid "Is this a virtual part, such as a software product or license?"
msgstr ""
-#: part/models.py:1031
+#: part/models.py:1032
msgid "BOM checksum"
msgstr ""
-#: part/models.py:1031
+#: part/models.py:1032
msgid "Stored BOM checksum"
msgstr ""
-#: part/models.py:1034
+#: part/models.py:1035
msgid "BOM checked by"
msgstr ""
-#: part/models.py:1036
+#: part/models.py:1037
msgid "BOM checked date"
msgstr ""
-#: part/models.py:1040
+#: part/models.py:1041
msgid "Creation User"
msgstr ""
-#: part/models.py:1042
+#: part/models.py:1043
msgid "User responsible for this part"
msgstr ""
-#: part/models.py:1046 part/templates/part/part_base.html:341
+#: part/models.py:1047 part/templates/part/part_base.html:341
#: stock/templates/stock/item_base.html:447
-#: templates/js/translated/part.js:2331
+#: templates/js/translated/part.js:2407
msgid "Last Stocktake"
msgstr ""
-#: part/models.py:1921
+#: part/models.py:1923
msgid "Sell multiple"
msgstr ""
-#: part/models.py:2853
+#: part/models.py:2887
msgid "Currency used to cache pricing calculations"
msgstr ""
-#: part/models.py:2870
+#: part/models.py:2904
msgid "Minimum BOM Cost"
msgstr ""
-#: part/models.py:2871
+#: part/models.py:2905
msgid "Minimum cost of component parts"
msgstr ""
-#: part/models.py:2876
+#: part/models.py:2910
msgid "Maximum BOM Cost"
msgstr ""
-#: part/models.py:2877
+#: part/models.py:2911
msgid "Maximum cost of component parts"
msgstr ""
-#: part/models.py:2882
+#: part/models.py:2916
msgid "Minimum Purchase Cost"
msgstr ""
-#: part/models.py:2883
+#: part/models.py:2917
msgid "Minimum historical purchase cost"
msgstr ""
-#: part/models.py:2888
+#: part/models.py:2922
msgid "Maximum Purchase Cost"
msgstr ""
-#: part/models.py:2889
+#: part/models.py:2923
msgid "Maximum historical purchase cost"
msgstr ""
-#: part/models.py:2894
+#: part/models.py:2928
msgid "Minimum Internal Price"
msgstr ""
-#: part/models.py:2895
+#: part/models.py:2929
msgid "Minimum cost based on internal price breaks"
msgstr ""
-#: part/models.py:2900
+#: part/models.py:2934
msgid "Maximum Internal Price"
msgstr ""
-#: part/models.py:2901
+#: part/models.py:2935
msgid "Maximum cost based on internal price breaks"
msgstr ""
-#: part/models.py:2906
+#: part/models.py:2940
msgid "Minimum Supplier Price"
msgstr ""
-#: part/models.py:2907
+#: part/models.py:2941
msgid "Minimum price of part from external suppliers"
msgstr ""
-#: part/models.py:2912
+#: part/models.py:2946
msgid "Maximum Supplier Price"
msgstr ""
-#: part/models.py:2913
+#: part/models.py:2947
msgid "Maximum price of part from external suppliers"
msgstr ""
-#: part/models.py:2918
+#: part/models.py:2952
msgid "Minimum Variant Cost"
msgstr ""
-#: part/models.py:2919
+#: part/models.py:2953
msgid "Calculated minimum cost of variant parts"
msgstr ""
-#: part/models.py:2924
+#: part/models.py:2958
msgid "Maximum Variant Cost"
msgstr ""
-#: part/models.py:2925
+#: part/models.py:2959
msgid "Calculated maximum cost of variant parts"
msgstr ""
-#: part/models.py:2931
+#: part/models.py:2965
msgid "Calculated overall minimum cost"
msgstr ""
-#: part/models.py:2937
+#: part/models.py:2971
msgid "Calculated overall maximum cost"
msgstr ""
-#: part/models.py:2942
+#: part/models.py:2976
msgid "Minimum Sale Price"
msgstr ""
-#: part/models.py:2943
+#: part/models.py:2977
msgid "Minimum sale price based on price breaks"
msgstr ""
-#: part/models.py:2948
+#: part/models.py:2982
msgid "Maximum Sale Price"
msgstr ""
-#: part/models.py:2949
+#: part/models.py:2983
msgid "Maximum sale price based on price breaks"
msgstr ""
-#: part/models.py:2954
+#: part/models.py:2988
msgid "Minimum Sale Cost"
msgstr ""
-#: part/models.py:2955
+#: part/models.py:2989
msgid "Minimum historical sale price"
msgstr ""
-#: part/models.py:2960
+#: part/models.py:2994
msgid "Maximum Sale Cost"
msgstr ""
-#: part/models.py:2961
+#: part/models.py:2995
msgid "Maximum historical sale price"
msgstr ""
-#: part/models.py:2980
+#: part/models.py:3014
msgid "Part for stocktake"
msgstr ""
-#: part/models.py:2985
+#: part/models.py:3019
msgid "Item Count"
msgstr ""
-#: part/models.py:2986
+#: part/models.py:3020
msgid "Number of individual stock entries at time of stocktake"
msgstr ""
-#: part/models.py:2993
+#: part/models.py:3027
msgid "Total available stock at time of stocktake"
msgstr ""
-#: part/models.py:2997 part/models.py:3080
+#: part/models.py:3031 part/models.py:3114
#: part/templates/part/part_scheduling.html:13
#: report/templates/report/inventree_test_report_base.html:106
#: templates/InvenTree/settings/plugin_settings.html:37
#: templates/InvenTree/settings/settings_staff_js.html:360
-#: templates/js/translated/part.js:1059 templates/js/translated/pricing.js:812
+#: templates/js/translated/part.js:1058 templates/js/translated/pricing.js:812
#: templates/js/translated/pricing.js:936
-#: templates/js/translated/purchase_order.js:1691
-#: templates/js/translated/stock.js:2558
+#: templates/js/translated/purchase_order.js:1706
+#: templates/js/translated/stock.js:2689
msgid "Date"
msgstr ""
-#: part/models.py:2998
+#: part/models.py:3032
msgid "Date stocktake was performed"
msgstr ""
-#: part/models.py:3006
+#: part/models.py:3040
msgid "Additional notes"
msgstr ""
-#: part/models.py:3014
+#: part/models.py:3048
msgid "User who performed this stocktake"
msgstr ""
-#: part/models.py:3019
+#: part/models.py:3053
msgid "Minimum Stock Cost"
msgstr ""
-#: part/models.py:3020
+#: part/models.py:3054
msgid "Estimated minimum cost of stock on hand"
msgstr ""
-#: part/models.py:3025
+#: part/models.py:3059
msgid "Maximum Stock Cost"
msgstr ""
-#: part/models.py:3026
+#: part/models.py:3060
msgid "Estimated maximum cost of stock on hand"
msgstr ""
-#: part/models.py:3087 templates/InvenTree/settings/settings_staff_js.html:349
+#: part/models.py:3121 templates/InvenTree/settings/settings_staff_js.html:349
msgid "Report"
msgstr ""
-#: part/models.py:3088
+#: part/models.py:3122
msgid "Stocktake report file (generated internally)"
msgstr ""
-#: part/models.py:3093 templates/InvenTree/settings/settings_staff_js.html:356
+#: part/models.py:3127 templates/InvenTree/settings/settings_staff_js.html:356
msgid "Part Count"
msgstr ""
-#: part/models.py:3094
+#: part/models.py:3128
msgid "Number of parts covered by stocktake"
msgstr ""
-#: part/models.py:3102
+#: part/models.py:3136
msgid "User who requested this stocktake report"
msgstr ""
-#: part/models.py:3238
+#: part/models.py:3272
msgid "Test templates can only be created for trackable parts"
msgstr ""
-#: part/models.py:3255
+#: part/models.py:3289
msgid "Test with this name already exists for this part"
msgstr ""
-#: part/models.py:3275 templates/js/translated/part.js:2821
+#: part/models.py:3309 templates/js/translated/part.js:2806
msgid "Test Name"
msgstr ""
-#: part/models.py:3276
+#: part/models.py:3310
msgid "Enter a name for the test"
msgstr ""
-#: part/models.py:3281
+#: part/models.py:3315
msgid "Test Description"
msgstr ""
-#: part/models.py:3282
+#: part/models.py:3316
msgid "Enter description for this test"
msgstr ""
-#: part/models.py:3287 templates/js/translated/part.js:2830
-#: templates/js/translated/table_filters.js:423
+#: part/models.py:3321 templates/js/translated/part.js:2815
+#: templates/js/translated/table_filters.js:429
msgid "Required"
msgstr ""
-#: part/models.py:3288
+#: part/models.py:3322
msgid "Is this test required to pass?"
msgstr ""
-#: part/models.py:3293 templates/js/translated/part.js:2838
+#: part/models.py:3327 templates/js/translated/part.js:2823
msgid "Requires Value"
msgstr ""
-#: part/models.py:3294
+#: part/models.py:3328
msgid "Does this test require a value when adding a test result?"
msgstr ""
-#: part/models.py:3299 templates/js/translated/part.js:2845
+#: part/models.py:3333 templates/js/translated/part.js:2830
msgid "Requires Attachment"
msgstr ""
-#: part/models.py:3300
+#: part/models.py:3334
msgid "Does this test require a file attachment when adding a test result?"
msgstr ""
-#: part/models.py:3346
+#: part/models.py:3380
msgid "Checkbox parameters cannot have units"
msgstr ""
-#: part/models.py:3351
+#: part/models.py:3385
msgid "Checkbox parameters cannot have choices"
msgstr ""
-#: part/models.py:3369
+#: part/models.py:3403
msgid "Choices must be unique"
msgstr ""
-#: part/models.py:3385
+#: part/models.py:3419
msgid "Parameter template name must be unique"
msgstr ""
-#: part/models.py:3401
+#: part/models.py:3435
msgid "Parameter Name"
msgstr ""
-#: part/models.py:3407
+#: part/models.py:3441
msgid "Physical units for this parameter"
msgstr ""
-#: part/models.py:3417
+#: part/models.py:3451
msgid "Parameter description"
msgstr ""
-#: part/models.py:3423 templates/js/translated/part.js:1600
-#: templates/js/translated/table_filters.js:734
+#: part/models.py:3457 templates/js/translated/part.js:1599
+#: templates/js/translated/table_filters.js:756
msgid "Checkbox"
msgstr ""
-#: part/models.py:3424
+#: part/models.py:3458
msgid "Is this parameter a checkbox?"
msgstr ""
-#: part/models.py:3429 templates/js/translated/part.js:1609
+#: part/models.py:3463 templates/js/translated/part.js:1608
msgid "Choices"
msgstr ""
-#: part/models.py:3430
+#: part/models.py:3464
msgid "Valid choices for this parameter (comma-separated)"
msgstr ""
-#: part/models.py:3511
+#: part/models.py:3545
msgid "Invalid choice for parameter value"
msgstr ""
-#: part/models.py:3555
+#: part/models.py:3589
msgid "Parent Part"
msgstr ""
-#: part/models.py:3560 part/models.py:3621 part/models.py:3622
+#: part/models.py:3594 part/models.py:3670 part/models.py:3671
#: templates/InvenTree/settings/settings_staff_js.html:199
msgid "Parameter Template"
msgstr ""
-#: part/models.py:3565
+#: part/models.py:3599
msgid "Data"
msgstr ""
-#: part/models.py:3565
+#: part/models.py:3599
msgid "Parameter Value"
msgstr ""
-#: part/models.py:3626 templates/InvenTree/settings/settings_staff_js.html:208
+#: part/models.py:3675 templates/InvenTree/settings/settings_staff_js.html:208
msgid "Default Value"
msgstr ""
-#: part/models.py:3627
+#: part/models.py:3676
msgid "Default Parameter Value"
msgstr ""
-#: part/models.py:3664
+#: part/models.py:3713
msgid "Part ID or part name"
msgstr ""
-#: part/models.py:3668
+#: part/models.py:3717
msgid "Unique part ID value"
msgstr ""
-#: part/models.py:3676
+#: part/models.py:3725
msgid "Part IPN value"
msgstr ""
-#: part/models.py:3679
+#: part/models.py:3728
msgid "Level"
msgstr ""
-#: part/models.py:3680
+#: part/models.py:3729
msgid "BOM level"
msgstr ""
-#: part/models.py:3764
+#: part/models.py:3735 part/models.py:4113
+msgid "BOM Item"
+msgstr ""
+
+#: part/models.py:3808
msgid "Select parent part"
msgstr ""
-#: part/models.py:3772
+#: part/models.py:3816
msgid "Sub part"
msgstr ""
-#: part/models.py:3773
+#: part/models.py:3817
msgid "Select part to be used in BOM"
msgstr ""
-#: part/models.py:3779
+#: part/models.py:3823
msgid "BOM quantity for this BOM item"
msgstr ""
-#: part/models.py:3783 part/templates/part/upload_bom.html:58
-#: templates/js/translated/bom.js:971 templates/js/translated/bom.js:998
-#: templates/js/translated/build.js:2113
-#: templates/js/translated/table_filters.js:156
-#: templates/js/translated/table_filters.js:185
-#: templates/js/translated/table_filters.js:500
-msgid "Optional"
-msgstr ""
-
-#: part/models.py:3784
+#: part/models.py:3828
msgid "This BOM item is optional"
msgstr ""
-#: part/models.py:3789 templates/js/translated/bom.js:967
-#: templates/js/translated/bom.js:1007 templates/js/translated/build.js:2104
-#: templates/js/translated/table_filters.js:160
-#: templates/js/translated/table_filters.js:496
-msgid "Consumable"
-msgstr ""
-
-#: part/models.py:3790
+#: part/models.py:3834
msgid "This BOM item is consumable (it is not tracked in build orders)"
msgstr ""
-#: part/models.py:3794 part/templates/part/upload_bom.html:55
+#: part/models.py:3838 part/templates/part/upload_bom.html:55
msgid "Overage"
msgstr ""
-#: part/models.py:3795
+#: part/models.py:3839
msgid "Estimated build wastage quantity (absolute or percentage)"
msgstr ""
-#: part/models.py:3798
+#: part/models.py:3842
msgid "BOM item reference"
msgstr ""
-#: part/models.py:3801
+#: part/models.py:3845
msgid "BOM item notes"
msgstr ""
-#: part/models.py:3805
+#: part/models.py:3849
msgid "Checksum"
msgstr ""
-#: part/models.py:3805
+#: part/models.py:3849
msgid "BOM line checksum"
msgstr ""
-#: part/models.py:3810 templates/js/translated/table_filters.js:144
+#: part/models.py:3854 templates/js/translated/table_filters.js:150
msgid "Validated"
msgstr ""
-#: part/models.py:3811
+#: part/models.py:3855
msgid "This BOM item has been validated"
msgstr ""
-#: part/models.py:3816 part/templates/part/upload_bom.html:57
-#: templates/js/translated/bom.js:1024
-#: templates/js/translated/table_filters.js:148
-#: templates/js/translated/table_filters.js:181
+#: part/models.py:3860 part/templates/part/upload_bom.html:57
+#: templates/js/translated/bom.js:1042
+#: templates/js/translated/table_filters.js:154
+#: templates/js/translated/table_filters.js:187
msgid "Gets inherited"
msgstr ""
-#: part/models.py:3817
+#: part/models.py:3861
msgid "This BOM item is inherited by BOMs for variant parts"
msgstr ""
-#: part/models.py:3822 part/templates/part/upload_bom.html:56
-#: templates/js/translated/bom.js:1016
+#: part/models.py:3866 part/templates/part/upload_bom.html:56
+#: templates/js/translated/bom.js:1034
msgid "Allow Variants"
msgstr ""
-#: part/models.py:3823
+#: part/models.py:3867
msgid "Stock items for variant parts can be used for this BOM item"
msgstr ""
-#: part/models.py:3909 stock/models.py:577
+#: part/models.py:3953 stock/models.py:577
msgid "Quantity must be integer value for trackable parts"
msgstr ""
-#: part/models.py:3918 part/models.py:3920
+#: part/models.py:3962 part/models.py:3964
msgid "Sub part must be specified"
msgstr ""
-#: part/models.py:4036
+#: part/models.py:4080
msgid "BOM Item Substitute"
msgstr ""
-#: part/models.py:4057
+#: part/models.py:4101
msgid "Substitute part cannot be the same as the master part"
msgstr ""
-#: part/models.py:4070
+#: part/models.py:4114
msgid "Parent BOM item"
msgstr ""
-#: part/models.py:4078
+#: part/models.py:4122
msgid "Substitute part"
msgstr ""
-#: part/models.py:4093
+#: part/models.py:4137
msgid "Part 1"
msgstr ""
-#: part/models.py:4097
+#: part/models.py:4141
msgid "Part 2"
msgstr ""
-#: part/models.py:4097
+#: part/models.py:4141
msgid "Select Related Part"
msgstr ""
-#: part/models.py:4115
+#: part/models.py:4159
msgid "Part relationship cannot be created between a part and itself"
msgstr ""
-#: part/models.py:4119
+#: part/models.py:4163
msgid "Duplicate relationship already exists"
msgstr ""
-#: part/serializers.py:152 part/serializers.py:175 stock/serializers.py:257
+#: part/serializers.py:152 part/serializers.py:175 stock/serializers.py:319
msgid "Purchase currency of this stock item"
msgstr ""
-#: part/serializers.py:302
+#: part/serializers.py:313
+msgid "No parts selected"
+msgstr ""
+
+#: part/serializers.py:321
+msgid "Select category"
+msgstr ""
+
+#: part/serializers.py:352
msgid "Original Part"
msgstr ""
-#: part/serializers.py:302
+#: part/serializers.py:352
msgid "Select original part to duplicate"
msgstr ""
-#: part/serializers.py:307
+#: part/serializers.py:357
msgid "Copy Image"
msgstr ""
-#: part/serializers.py:307
+#: part/serializers.py:357
msgid "Copy image from original part"
msgstr ""
-#: part/serializers.py:312 part/templates/part/detail.html:296
+#: part/serializers.py:362 part/templates/part/detail.html:277
msgid "Copy BOM"
msgstr ""
-#: part/serializers.py:312
+#: part/serializers.py:362
msgid "Copy bill of materials from original part"
msgstr ""
-#: part/serializers.py:317
+#: part/serializers.py:367
msgid "Copy Parameters"
msgstr ""
-#: part/serializers.py:317
+#: part/serializers.py:367
msgid "Copy parameter data from original part"
msgstr ""
-#: part/serializers.py:327
+#: part/serializers.py:377
msgid "Initial Stock Quantity"
msgstr ""
-#: part/serializers.py:327
+#: part/serializers.py:377
msgid "Specify initial stock quantity for this Part. If quantity is zero, no stock is added."
msgstr ""
-#: part/serializers.py:333
+#: part/serializers.py:383
msgid "Initial Stock Location"
msgstr ""
-#: part/serializers.py:333
+#: part/serializers.py:383
msgid "Specify initial stock location for this Part"
msgstr ""
-#: part/serializers.py:343
+#: part/serializers.py:393
msgid "Select supplier (or leave blank to skip)"
msgstr ""
-#: part/serializers.py:354
+#: part/serializers.py:404
msgid "Select manufacturer (or leave blank to skip)"
msgstr ""
-#: part/serializers.py:360
+#: part/serializers.py:410
msgid "Manufacturer part number"
msgstr ""
-#: part/serializers.py:367
+#: part/serializers.py:417
msgid "Selected company is not a valid supplier"
msgstr ""
-#: part/serializers.py:375
+#: part/serializers.py:425
msgid "Selected company is not a valid manufacturer"
msgstr ""
-#: part/serializers.py:387
+#: part/serializers.py:437
msgid "Manufacturer part matching this MPN already exists"
msgstr ""
-#: part/serializers.py:395
+#: part/serializers.py:445
msgid "Supplier part matching this SKU already exists"
msgstr ""
-#: part/serializers.py:620 part/templates/part/copy_part.html:9
-#: templates/js/translated/part.js:449
+#: part/serializers.py:682 part/templates/part/copy_part.html:9
+#: templates/js/translated/part.js:448
msgid "Duplicate Part"
msgstr ""
-#: part/serializers.py:620
+#: part/serializers.py:682
msgid "Copy initial data from another Part"
msgstr ""
-#: part/serializers.py:625 templates/js/translated/part.js:103
+#: part/serializers.py:687 templates/js/translated/part.js:102
msgid "Initial Stock"
msgstr ""
-#: part/serializers.py:625
+#: part/serializers.py:687
msgid "Create Part with initial stock quantity"
msgstr ""
-#: part/serializers.py:630
+#: part/serializers.py:692
msgid "Supplier Information"
msgstr ""
-#: part/serializers.py:630
+#: part/serializers.py:692
msgid "Add initial supplier information for this part"
msgstr ""
-#: part/serializers.py:636
+#: part/serializers.py:698
msgid "Copy Category Parameters"
msgstr ""
-#: part/serializers.py:637
+#: part/serializers.py:699
msgid "Copy parameter templates from selected part category"
msgstr ""
-#: part/serializers.py:842
+#: part/serializers.py:904
msgid "Limit stocktake report to a particular part, and any variant parts"
msgstr ""
-#: part/serializers.py:848
+#: part/serializers.py:910
msgid "Limit stocktake report to a particular part category, and any child categories"
msgstr ""
-#: part/serializers.py:854
+#: part/serializers.py:916
msgid "Limit stocktake report to a particular stock location, and any child locations"
msgstr ""
-#: part/serializers.py:859
+#: part/serializers.py:921
msgid "Generate Report"
msgstr ""
-#: part/serializers.py:860
+#: part/serializers.py:922
msgid "Generate report file containing calculated stocktake data"
msgstr ""
-#: part/serializers.py:865
+#: part/serializers.py:927
msgid "Update Parts"
msgstr ""
-#: part/serializers.py:866
+#: part/serializers.py:928
msgid "Update specified parts with calculated stocktake data"
msgstr ""
-#: part/serializers.py:874
+#: part/serializers.py:936
msgid "Stocktake functionality is not enabled"
msgstr ""
-#: part/serializers.py:963
+#: part/serializers.py:1025
msgid "Update"
msgstr ""
-#: part/serializers.py:964
+#: part/serializers.py:1026
msgid "Update pricing for this part"
msgstr ""
-#: part/serializers.py:1246
+#: part/serializers.py:1308
msgid "Select part to copy BOM from"
msgstr ""
-#: part/serializers.py:1254
+#: part/serializers.py:1316
msgid "Remove Existing Data"
msgstr ""
-#: part/serializers.py:1255
+#: part/serializers.py:1317
msgid "Remove existing BOM items before copying"
msgstr ""
-#: part/serializers.py:1260
+#: part/serializers.py:1322
msgid "Include Inherited"
msgstr ""
-#: part/serializers.py:1261
+#: part/serializers.py:1323
msgid "Include BOM items which are inherited from templated parts"
msgstr ""
-#: part/serializers.py:1266
+#: part/serializers.py:1328
msgid "Skip Invalid Rows"
msgstr ""
-#: part/serializers.py:1267
+#: part/serializers.py:1329
msgid "Enable this option to skip invalid rows"
msgstr ""
-#: part/serializers.py:1272
+#: part/serializers.py:1334
msgid "Copy Substitute Parts"
msgstr ""
-#: part/serializers.py:1273
+#: part/serializers.py:1335
msgid "Copy substitute parts when duplicate BOM items"
msgstr ""
-#: part/serializers.py:1313
+#: part/serializers.py:1375
msgid "Clear Existing BOM"
msgstr ""
-#: part/serializers.py:1314
+#: part/serializers.py:1376
msgid "Delete existing BOM items before uploading"
msgstr ""
-#: part/serializers.py:1344
+#: part/serializers.py:1406
msgid "No part column specified"
msgstr ""
-#: part/serializers.py:1387
+#: part/serializers.py:1449
msgid "Multiple matching parts found"
msgstr ""
-#: part/serializers.py:1390
+#: part/serializers.py:1452
msgid "No matching part found"
msgstr ""
-#: part/serializers.py:1393
+#: part/serializers.py:1455
msgid "Part is not designated as a component"
msgstr ""
-#: part/serializers.py:1402
+#: part/serializers.py:1464
msgid "Quantity not provided"
msgstr ""
-#: part/serializers.py:1410
+#: part/serializers.py:1472
msgid "Invalid quantity"
msgstr ""
-#: part/serializers.py:1431
+#: part/serializers.py:1493
msgid "At least one BOM item is required"
msgstr ""
@@ -6421,9 +6453,9 @@ msgstr ""
msgid "The available stock for {part.name} has fallen below the configured minimum level"
msgstr ""
-#: part/tasks.py:294 templates/js/translated/part.js:1040
-#: templates/js/translated/part.js:1793 templates/js/translated/part.js:1848
-#: templates/js/translated/purchase_order.js:2052
+#: part/tasks.py:294 templates/js/translated/part.js:1039
+#: templates/js/translated/part.js:1792 templates/js/translated/part.js:1847
+#: templates/js/translated/purchase_order.js:2062
msgid "Total Quantity"
msgstr ""
@@ -6461,14 +6493,6 @@ msgstr ""
msgid "The BOM for %(part)s has not been validated."
msgstr ""
-#: part/templates/part/bom.html:30 part/templates/part/detail.html:291
-msgid "BOM actions"
-msgstr ""
-
-#: part/templates/part/bom.html:34
-msgid "Delete Items"
-msgstr ""
-
#: part/templates/part/category.html:34
msgid "Perform stocktake for this part category"
msgstr ""
@@ -6505,7 +6529,7 @@ msgstr ""
msgid "Top level part category"
msgstr ""
-#: part/templates/part/category.html:121 part/templates/part/category.html:225
+#: part/templates/part/category.html:121 part/templates/part/category.html:206
#: part/templates/part/category_sidebar.html:7
msgid "Subcategories"
msgstr ""
@@ -6518,33 +6542,20 @@ msgstr ""
msgid "Create new part"
msgstr ""
-#: part/templates/part/category.html:165 templates/js/translated/bom.js:443
+#: part/templates/part/category.html:165 templates/js/translated/bom.js:444
msgid "New Part"
msgstr ""
-#: part/templates/part/category.html:175 part/templates/part/detail.html:390
-#: part/templates/part/detail.html:421
-msgid "Options"
-msgstr ""
-
-#: part/templates/part/category.html:179
-msgid "Set category"
-msgstr ""
-
-#: part/templates/part/category.html:180
-msgid "Set Category"
-msgstr ""
-
-#: part/templates/part/category.html:208
+#: part/templates/part/category.html:191
#: templates/InvenTree/settings/sidebar.html:47
msgid "Part Parameters"
msgstr ""
-#: part/templates/part/category.html:229
+#: part/templates/part/category.html:210
msgid "Create new part category"
msgstr ""
-#: part/templates/part/category.html:230
+#: part/templates/part/category.html:211
msgid "New Category"
msgstr ""
@@ -6581,7 +6592,7 @@ msgid "Refresh scheduling data"
msgstr ""
#: part/templates/part/detail.html:45 part/templates/part/prices.html:15
-#: templates/js/translated/tables.js:584
+#: templates/js/translated/tables.js:560
msgid "Refresh"
msgstr ""
@@ -6592,7 +6603,7 @@ msgstr ""
#: part/templates/part/detail.html:67 part/templates/part/part_sidebar.html:50
#: stock/admin.py:130 templates/InvenTree/settings/part_stocktake.html:29
#: templates/InvenTree/settings/sidebar.html:51
-#: templates/js/translated/stock.js:1952 users/models.py:39
+#: templates/js/translated/stock.js:2109 users/models.py:39
msgid "Stocktake"
msgstr ""
@@ -6604,101 +6615,101 @@ msgstr ""
msgid "Add Test Template"
msgstr ""
-#: part/templates/part/detail.html:145 stock/templates/stock/item.html:53
+#: part/templates/part/detail.html:139 stock/templates/stock/item.html:49
msgid "Sales Order Allocations"
msgstr ""
-#: part/templates/part/detail.html:165
+#: part/templates/part/detail.html:156
msgid "Part Notes"
msgstr ""
-#: part/templates/part/detail.html:180
+#: part/templates/part/detail.html:171
msgid "Part Variants"
msgstr ""
-#: part/templates/part/detail.html:184
+#: part/templates/part/detail.html:175
msgid "Create new variant"
msgstr ""
-#: part/templates/part/detail.html:185
+#: part/templates/part/detail.html:176
msgid "New Variant"
msgstr ""
-#: part/templates/part/detail.html:212
+#: part/templates/part/detail.html:199
msgid "Add new parameter"
msgstr ""
-#: part/templates/part/detail.html:249 part/templates/part/part_sidebar.html:58
+#: part/templates/part/detail.html:232 part/templates/part/part_sidebar.html:58
msgid "Related Parts"
msgstr ""
-#: part/templates/part/detail.html:253 part/templates/part/detail.html:254
+#: part/templates/part/detail.html:236 part/templates/part/detail.html:237
msgid "Add Related"
msgstr ""
-#: part/templates/part/detail.html:274 part/templates/part/part_sidebar.html:17
+#: part/templates/part/detail.html:255 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:279
+#: part/templates/part/detail.html:260
msgid "Export actions"
msgstr ""
-#: part/templates/part/detail.html:283 templates/js/translated/bom.js:339
+#: part/templates/part/detail.html:264 templates/js/translated/bom.js:340
msgid "Export BOM"
msgstr ""
-#: part/templates/part/detail.html:285
+#: part/templates/part/detail.html:266
msgid "Print BOM Report"
msgstr ""
-#: part/templates/part/detail.html:295
+#: part/templates/part/detail.html:272
+msgid "BOM actions"
+msgstr ""
+
+#: part/templates/part/detail.html:276
msgid "Upload BOM"
msgstr ""
-#: part/templates/part/detail.html:297
+#: part/templates/part/detail.html:278
msgid "Validate BOM"
msgstr ""
-#: part/templates/part/detail.html:302 part/templates/part/detail.html:303
-#: templates/js/translated/bom.js:1279 templates/js/translated/bom.js:1280
+#: part/templates/part/detail.html:283 part/templates/part/detail.html:284
+#: templates/js/translated/bom.js:1299 templates/js/translated/bom.js:1300
msgid "Add BOM Item"
msgstr ""
-#: part/templates/part/detail.html:316
+#: part/templates/part/detail.html:297
msgid "Assemblies"
msgstr ""
-#: part/templates/part/detail.html:334
+#: part/templates/part/detail.html:313
msgid "Part Builds"
msgstr ""
-#: part/templates/part/detail.html:361 stock/templates/stock/item.html:38
+#: part/templates/part/detail.html:338 stock/templates/stock/item.html:36
msgid "Build Order Allocations"
msgstr ""
-#: part/templates/part/detail.html:377
+#: part/templates/part/detail.html:352
msgid "Part Suppliers"
msgstr ""
-#: part/templates/part/detail.html:407
+#: part/templates/part/detail.html:372
msgid "Part Manufacturers"
msgstr ""
-#: part/templates/part/detail.html:423
-msgid "Delete manufacturer parts"
-msgstr ""
-
-#: part/templates/part/detail.html:707
+#: part/templates/part/detail.html:654
msgid "Related Part"
msgstr ""
-#: part/templates/part/detail.html:715
+#: part/templates/part/detail.html:662
msgid "Add Related Part"
msgstr ""
-#: part/templates/part/detail.html:800
+#: part/templates/part/detail.html:747
msgid "Add Test Result Template"
msgstr ""
@@ -6732,13 +6743,13 @@ msgid "Download Part Import Template"
msgstr ""
#: part/templates/part/import_wizard/part_upload.html:92
-#: templates/js/translated/bom.js:308 templates/js/translated/bom.js:342
+#: templates/js/translated/bom.js:309 templates/js/translated/bom.js:343
#: templates/js/translated/order.js:129 templates/js/translated/tables.js:189
msgid "Format"
msgstr ""
#: part/templates/part/import_wizard/part_upload.html:93
-#: templates/js/translated/bom.js:309 templates/js/translated/bom.js:343
+#: templates/js/translated/bom.js:310 templates/js/translated/bom.js:344
#: templates/js/translated/order.js:130
msgid "Select file format"
msgstr ""
@@ -6779,7 +6790,7 @@ msgstr ""
msgid "Transfer part stock"
msgstr ""
-#: part/templates/part/part_base.html:93
+#: part/templates/part/part_base.html:93 templates/js/translated/part.js:2264
msgid "Part actions"
msgstr ""
@@ -6824,10 +6835,10 @@ msgid "Part is not active"
msgstr ""
#: part/templates/part/part_base.html:148
-#: templates/js/translated/company.js:945
-#: templates/js/translated/company.js:1185
-#: templates/js/translated/model_renderers.js:273
-#: templates/js/translated/part.js:792 templates/js/translated/part.js:1192
+#: templates/js/translated/company.js:1318
+#: templates/js/translated/company.js:1606
+#: templates/js/translated/model_renderers.js:287
+#: templates/js/translated/part.js:791 templates/js/translated/part.js:1191
msgid "Inactive"
msgstr ""
@@ -6850,7 +6861,7 @@ msgstr ""
msgid "Allocated to Sales Orders"
msgstr ""
-#: part/templates/part/part_base.html:237 templates/js/translated/bom.js:1178
+#: part/templates/part/part_base.html:237 templates/js/translated/bom.js:1198
msgid "Can Build"
msgstr ""
@@ -6858,8 +6869,8 @@ msgstr ""
msgid "Minimum stock level"
msgstr ""
-#: part/templates/part/part_base.html:324 templates/js/translated/bom.js:1041
-#: templates/js/translated/part.js:1238 templates/js/translated/part.js:2304
+#: part/templates/part/part_base.html:324 templates/js/translated/bom.js:1059
+#: templates/js/translated/part.js:1237 templates/js/translated/part.js:2380
#: templates/js/translated/pricing.js:391
#: templates/js/translated/pricing.js:1040
msgid "Price Range"
@@ -6882,7 +6893,7 @@ msgstr ""
msgid "Link Barcode to Part"
msgstr ""
-#: part/templates/part/part_base.html:474 templates/js/translated/part.js:2191
+#: part/templates/part/part_base.html:474 templates/js/translated/part.js:2258
msgid "part"
msgstr ""
@@ -6956,9 +6967,9 @@ msgstr ""
#: stock/templates/stock/stock_app_base.html:10
#: templates/InvenTree/search.html:153
#: templates/InvenTree/settings/sidebar.html:49
-#: templates/js/translated/part.js:1216 templates/js/translated/part.js:2120
-#: templates/js/translated/part.js:2284 templates/js/translated/stock.js:1022
-#: templates/js/translated/stock.js:1829 templates/navbar.html:31
+#: templates/js/translated/part.js:1215 templates/js/translated/part.js:2119
+#: templates/js/translated/part.js:2360 templates/js/translated/stock.js:1021
+#: templates/js/translated/stock.js:1986 templates/navbar.html:31
msgid "Stock"
msgstr ""
@@ -6989,9 +7000,9 @@ msgstr ""
#: part/templates/part/prices.html:25 stock/admin.py:129
#: stock/templates/stock/item_base.html:442
-#: templates/js/translated/company.js:1313
-#: templates/js/translated/company.js:1323
-#: templates/js/translated/stock.js:1982
+#: templates/js/translated/company.js:1734
+#: templates/js/translated/company.js:1744
+#: templates/js/translated/stock.js:2139
msgid "Last Updated"
msgstr ""
@@ -7054,12 +7065,12 @@ msgstr ""
msgid "Add Sell Price Break"
msgstr ""
-#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:682
-#: templates/js/translated/part.js:2115 templates/js/translated/part.js:2117
+#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:681
+#: templates/js/translated/part.js:2114 templates/js/translated/part.js:2116
msgid "No Stock"
msgstr ""
-#: part/templates/part/stock_count.html:9 templates/InvenTree/index.html:167
+#: part/templates/part/stock_count.html:9 templates/InvenTree/index.html:120
msgid "Low Stock"
msgstr ""
@@ -7163,7 +7174,7 @@ msgid "Match found for barcode data"
msgstr ""
#: plugin/base/barcodes/api.py:120
-#: templates/js/translated/purchase_order.js:1372
+#: templates/js/translated/purchase_order.js:1387
msgid "Barcode matches existing item"
msgstr ""
@@ -7226,43 +7237,43 @@ msgstr ""
msgid "Open link"
msgstr ""
-#: plugin/models.py:27
+#: plugin/models.py:28
msgid "Plugin Configuration"
msgstr ""
-#: plugin/models.py:28
+#: plugin/models.py:29
msgid "Plugin Configurations"
msgstr ""
-#: plugin/models.py:33
+#: plugin/models.py:34
msgid "Key"
msgstr ""
-#: plugin/models.py:34
+#: plugin/models.py:35
msgid "Key of plugin"
msgstr ""
-#: plugin/models.py:42
+#: plugin/models.py:43
msgid "PluginName of the plugin"
msgstr ""
-#: plugin/models.py:48
+#: plugin/models.py:49
msgid "Is the plugin active"
msgstr ""
-#: plugin/models.py:124
+#: plugin/models.py:125
msgid "Sample plugin"
msgstr ""
-#: plugin/models.py:133
+#: plugin/models.py:134
msgid "Builtin Plugin"
msgstr ""
-#: plugin/models.py:159 templates/InvenTree/settings/plugin_settings.html:9
+#: plugin/models.py:160 templates/InvenTree/settings/plugin_settings.html:9
msgid "Plugin"
msgstr ""
-#: plugin/models.py:210
+#: plugin/models.py:211
msgid "Method"
msgstr ""
@@ -7414,47 +7425,47 @@ msgstr ""
msgid "Build query filters (comma-separated list of key=value pairs"
msgstr ""
-#: report/models.py:418
+#: report/models.py:420
msgid "Part Filters"
msgstr ""
-#: report/models.py:419
+#: report/models.py:421
msgid "Part query filters (comma-separated list of key=value pairs"
msgstr ""
-#: report/models.py:453
+#: report/models.py:455
msgid "Purchase order query filters"
msgstr ""
-#: report/models.py:491
+#: report/models.py:493
msgid "Sales order query filters"
msgstr ""
-#: report/models.py:529
+#: report/models.py:531
msgid "Return order query filters"
msgstr ""
-#: report/models.py:582
+#: report/models.py:584
msgid "Snippet"
msgstr ""
-#: report/models.py:583
+#: report/models.py:585
msgid "Report snippet file"
msgstr ""
-#: report/models.py:587
+#: report/models.py:589
msgid "Snippet file description"
msgstr ""
-#: report/models.py:624
+#: report/models.py:626
msgid "Asset"
msgstr ""
-#: report/models.py:625
+#: report/models.py:627
msgid "Report asset file"
msgstr ""
-#: report/models.py:632
+#: report/models.py:634
msgid "Asset file description"
msgstr ""
@@ -7475,8 +7486,8 @@ msgstr ""
#: templates/js/translated/order.js:316 templates/js/translated/pricing.js:527
#: templates/js/translated/pricing.js:596
#: templates/js/translated/pricing.js:820
-#: templates/js/translated/purchase_order.js:2083
-#: templates/js/translated/sales_order.js:1817
+#: templates/js/translated/purchase_order.js:2093
+#: templates/js/translated/sales_order.js:1829
msgid "Unit Price"
msgstr ""
@@ -7488,23 +7499,23 @@ msgstr ""
#: report/templates/report/inventree_po_report_base.html:72
#: report/templates/report/inventree_so_report_base.html:72
-#: templates/js/translated/purchase_order.js:1985
-#: templates/js/translated/sales_order.js:1792
+#: templates/js/translated/purchase_order.js:1995
+#: templates/js/translated/sales_order.js:1804
msgid "Total"
msgstr ""
#: report/templates/report/inventree_return_order_report_base.html:25
#: report/templates/report/inventree_test_report_base.html:88
#: stock/models.py:725 stock/templates/stock/item_base.html:312
-#: templates/js/translated/build.js:502 templates/js/translated/build.js:1423
-#: templates/js/translated/build.js:1989
-#: templates/js/translated/model_renderers.js:201
-#: templates/js/translated/return_order.js:528
-#: templates/js/translated/return_order.js:708
-#: templates/js/translated/sales_order.js:300
-#: templates/js/translated/sales_order.js:1597
-#: templates/js/translated/sales_order.js:1682
-#: templates/js/translated/stock.js:563
+#: templates/js/translated/build.js:508 templates/js/translated/build.js:1306
+#: templates/js/translated/build.js:2281
+#: templates/js/translated/model_renderers.js:215
+#: templates/js/translated/return_order.js:540
+#: templates/js/translated/return_order.js:720
+#: templates/js/translated/sales_order.js:312
+#: templates/js/translated/sales_order.js:1609
+#: templates/js/translated/sales_order.js:1694
+#: templates/js/translated/stock.js:562
msgid "Serial Number"
msgstr ""
@@ -7517,7 +7528,7 @@ msgid "Test Results"
msgstr ""
#: report/templates/report/inventree_test_report_base.html:102
-#: stock/models.py:2243 templates/js/translated/stock.js:1419
+#: stock/models.py:2243 templates/js/translated/stock.js:1418
msgid "Test"
msgstr ""
@@ -7548,8 +7559,8 @@ msgid "Installed Items"
msgstr ""
#: report/templates/report/inventree_test_report_base.html:168
-#: stock/admin.py:104 templates/js/translated/stock.js:667
-#: templates/js/translated/stock.js:838 templates/js/translated/stock.js:2849
+#: stock/admin.py:104 templates/js/translated/stock.js:666
+#: templates/js/translated/stock.js:837 templates/js/translated/stock.js:2976
msgid "Serial"
msgstr ""
@@ -7617,31 +7628,31 @@ msgstr ""
#: stock/admin.py:131 stock/models.py:789
#: stock/templates/stock/item_base.html:429
-#: templates/js/translated/stock.js:1966
+#: templates/js/translated/stock.js:2123
msgid "Expiry Date"
msgstr ""
-#: stock/api.py:420 templates/js/translated/table_filters.js:373
+#: stock/api.py:426 templates/js/translated/table_filters.js:379
msgid "External Location"
msgstr ""
-#: stock/api.py:582
+#: stock/api.py:619
msgid "Quantity is required"
msgstr ""
-#: stock/api.py:589
+#: stock/api.py:626
msgid "Valid part must be supplied"
msgstr ""
-#: stock/api.py:615
+#: stock/api.py:652
msgid "The given supplier part does not exist"
msgstr ""
-#: stock/api.py:624
+#: stock/api.py:661
msgid "The supplier part has a pack size defined, but flag use_pack_size not set"
msgstr ""
-#: stock/api.py:642
+#: stock/api.py:679
msgid "Serial numbers cannot be supplied for a non-trackable part"
msgstr ""
@@ -7652,7 +7663,7 @@ msgid "Stock Location"
msgstr ""
#: stock/models.py:55 stock/templates/stock/location.html:177
-#: templates/InvenTree/search.html:166 templates/js/translated/search.js:220
+#: templates/InvenTree/search.html:166 templates/js/translated/search.js:178
#: users/models.py:40
msgid "Stock Locations"
msgstr ""
@@ -7670,8 +7681,8 @@ msgstr ""
msgid "Stock items may not be directly located into a structural stock locations, but may be located to child locations."
msgstr ""
-#: stock/models.py:132 templates/js/translated/stock.js:2529
-#: templates/js/translated/table_filters.js:213
+#: stock/models.py:132 templates/js/translated/stock.js:2660
+#: templates/js/translated/table_filters.js:219
msgid "External"
msgstr ""
@@ -7687,7 +7698,7 @@ msgstr ""
msgid "Stock items cannot be located into structural stock locations!"
msgstr ""
-#: stock/models.py:583 stock/serializers.py:174
+#: stock/models.py:583 stock/serializers.py:223
msgid "Stock item cannot be created for virtual parts"
msgstr ""
@@ -7821,7 +7832,7 @@ msgstr ""
msgid "Quantity does not match serial numbers"
msgstr ""
-#: stock/models.py:1403 stock/serializers.py:374
+#: stock/models.py:1403 stock/serializers.py:440
msgid "Serial numbers already exist"
msgstr ""
@@ -7849,7 +7860,7 @@ msgstr ""
msgid "Serialized stock cannot be merged"
msgstr ""
-#: stock/models.py:1496 stock/serializers.py:975
+#: stock/models.py:1496 stock/serializers.py:1092
msgid "Duplicate stock items"
msgstr ""
@@ -7901,132 +7912,141 @@ msgstr ""
msgid "Test notes"
msgstr ""
-#: stock/serializers.py:76
+#: stock/serializers.py:121
msgid "Serial number is too large"
msgstr ""
-#: stock/serializers.py:166
+#: stock/serializers.py:215
msgid "Use pack size when adding: the quantity defined is the number of packs"
msgstr ""
-#: stock/serializers.py:254
+#: stock/serializers.py:316
msgid "Purchase price of this stock item, per unit or pack"
msgstr ""
-#: stock/serializers.py:307
+#: stock/serializers.py:373
msgid "Enter number of stock items to serialize"
msgstr ""
-#: stock/serializers.py:319
+#: stock/serializers.py:385
#, python-brace-format
msgid "Quantity must not exceed available stock quantity ({q})"
msgstr ""
-#: stock/serializers.py:325
+#: stock/serializers.py:391
msgid "Enter serial numbers for new items"
msgstr ""
-#: stock/serializers.py:336 stock/serializers.py:932 stock/serializers.py:1174
+#: stock/serializers.py:402 stock/serializers.py:1049 stock/serializers.py:1291
msgid "Destination stock location"
msgstr ""
-#: stock/serializers.py:343
+#: stock/serializers.py:409
msgid "Optional note field"
msgstr ""
-#: stock/serializers.py:353
+#: stock/serializers.py:419
msgid "Serial numbers cannot be assigned to this part"
msgstr ""
-#: stock/serializers.py:414
+#: stock/serializers.py:480
msgid "Select stock item to install"
msgstr ""
-#: stock/serializers.py:427
-msgid "Stock item is unavailable"
-msgstr ""
-
-#: stock/serializers.py:434
-msgid "Selected part is not in the Bill of Materials"
-msgstr ""
-
-#: stock/serializers.py:471
-msgid "Destination location for uninstalled item"
-msgstr ""
-
-#: stock/serializers.py:476 stock/serializers.py:557
+#: stock/serializers.py:485 stock/serializers.py:543 stock/serializers.py:624
+#: stock/serializers.py:682
msgid "Add transaction note (optional)"
msgstr ""
-#: stock/serializers.py:510
+#: stock/serializers.py:494
+msgid "Stock item is unavailable"
+msgstr ""
+
+#: stock/serializers.py:501
+msgid "Selected part is not in the Bill of Materials"
+msgstr ""
+
+#: stock/serializers.py:538
+msgid "Destination location for uninstalled item"
+msgstr ""
+
+#: stock/serializers.py:577
msgid "Select part to convert stock item into"
msgstr ""
-#: stock/serializers.py:521
+#: stock/serializers.py:588
msgid "Selected part is not a valid option for conversion"
msgstr ""
-#: stock/serializers.py:552
+#: stock/serializers.py:619
msgid "Destination location for returned item"
msgstr ""
-#: stock/serializers.py:787
+#: stock/serializers.py:663
+msgid "Select stock items to change status"
+msgstr ""
+
+#: stock/serializers.py:670
+msgid "No stock items selected"
+msgstr ""
+
+#: stock/serializers.py:904
msgid "Part must be salable"
msgstr ""
-#: stock/serializers.py:791
+#: stock/serializers.py:908
msgid "Item is allocated to a sales order"
msgstr ""
-#: stock/serializers.py:795
+#: stock/serializers.py:912
msgid "Item is allocated to a build order"
msgstr ""
-#: stock/serializers.py:826
+#: stock/serializers.py:943
msgid "Customer to assign stock items"
msgstr ""
-#: stock/serializers.py:832
+#: stock/serializers.py:949
msgid "Selected company is not a customer"
msgstr ""
-#: stock/serializers.py:840
+#: stock/serializers.py:957
msgid "Stock assignment notes"
msgstr ""
-#: stock/serializers.py:850 stock/serializers.py:1081
+#: stock/serializers.py:967 stock/serializers.py:1198
msgid "A list of stock items must be provided"
msgstr ""
-#: stock/serializers.py:939
+#: stock/serializers.py:1056
msgid "Stock merging notes"
msgstr ""
-#: stock/serializers.py:944
+#: stock/serializers.py:1061
msgid "Allow mismatched suppliers"
msgstr ""
-#: stock/serializers.py:945
+#: stock/serializers.py:1062
msgid "Allow stock items with different supplier parts to be merged"
msgstr ""
-#: stock/serializers.py:950
+#: stock/serializers.py:1067
msgid "Allow mismatched status"
msgstr ""
-#: stock/serializers.py:951
+#: stock/serializers.py:1068
msgid "Allow stock items with different status codes to be merged"
msgstr ""
-#: stock/serializers.py:961
+#: stock/serializers.py:1078
msgid "At least two stock items must be provided"
msgstr ""
-#: stock/serializers.py:1043
+#: stock/serializers.py:1160
msgid "StockItem primary key value"
msgstr ""
-#: stock/serializers.py:1071
+#: stock/serializers.py:1188
msgid "Stock transaction notes"
msgstr ""
@@ -8034,48 +8054,48 @@ msgstr ""
msgid "Stock Tracking Information"
msgstr ""
-#: stock/templates/stock/item.html:69
+#: stock/templates/stock/item.html:63
msgid "Child Stock Items"
msgstr ""
-#: stock/templates/stock/item.html:77
+#: stock/templates/stock/item.html:71
msgid "This stock item does not have any child items"
msgstr ""
-#: stock/templates/stock/item.html:86
+#: stock/templates/stock/item.html:80
#: stock/templates/stock/stock_sidebar.html:12
msgid "Test Data"
msgstr ""
-#: stock/templates/stock/item.html:90 stock/templates/stock/item_base.html:66
+#: stock/templates/stock/item.html:84 stock/templates/stock/item_base.html:66
msgid "Test Report"
msgstr ""
-#: stock/templates/stock/item.html:94 stock/templates/stock/item.html:288
+#: stock/templates/stock/item.html:88 stock/templates/stock/item.html:278
msgid "Delete Test Data"
msgstr ""
-#: stock/templates/stock/item.html:98
+#: stock/templates/stock/item.html:92
msgid "Add Test Data"
msgstr ""
-#: stock/templates/stock/item.html:132
+#: stock/templates/stock/item.html:124
msgid "Stock Item Notes"
msgstr ""
-#: stock/templates/stock/item.html:147
+#: stock/templates/stock/item.html:139
msgid "Installed Stock Items"
msgstr ""
-#: stock/templates/stock/item.html:152 templates/js/translated/stock.js:2996
+#: stock/templates/stock/item.html:144 templates/js/translated/stock.js:3123
msgid "Install Stock Item"
msgstr ""
-#: stock/templates/stock/item.html:276
+#: stock/templates/stock/item.html:266
msgid "Delete all test results for this stock item"
msgstr ""
-#: stock/templates/stock/item.html:305 templates/js/translated/stock.js:1611
+#: stock/templates/stock/item.html:295 templates/js/translated/stock.js:1610
msgid "Add Test Result"
msgstr ""
@@ -8083,13 +8103,13 @@ msgstr ""
msgid "Locate stock item"
msgstr ""
-#: stock/templates/stock/item_base.html:52 templates/stock_table.html:21
+#: stock/templates/stock/item_base.html:52
msgid "Scan to Location"
msgstr ""
#: stock/templates/stock/item_base.html:60
#: stock/templates/stock/location.html:69
-#: templates/js/translated/filters.js:322
+#: templates/js/translated/filters.js:432
msgid "Printing actions"
msgstr ""
@@ -8098,15 +8118,17 @@ msgid "Stock adjustment actions"
msgstr ""
#: stock/templates/stock/item_base.html:80
-#: stock/templates/stock/location.html:88 templates/stock_table.html:35
+#: stock/templates/stock/location.html:88 templates/js/translated/stock.js:1735
msgid "Count stock"
msgstr ""
-#: stock/templates/stock/item_base.html:82 templates/stock_table.html:33
+#: stock/templates/stock/item_base.html:82
+#: templates/js/translated/stock.js:1717
msgid "Add stock"
msgstr ""
-#: stock/templates/stock/item_base.html:83 templates/stock_table.html:34
+#: stock/templates/stock/item_base.html:83
+#: templates/js/translated/stock.js:1726
msgid "Remove stock"
msgstr ""
@@ -8115,11 +8137,12 @@ msgid "Serialize stock"
msgstr ""
#: stock/templates/stock/item_base.html:89
-#: stock/templates/stock/location.html:94 templates/stock_table.html:36
+#: stock/templates/stock/location.html:94 templates/js/translated/stock.js:1744
msgid "Transfer stock"
msgstr ""
-#: stock/templates/stock/item_base.html:92 templates/stock_table.html:39
+#: stock/templates/stock/item_base.html:92
+#: templates/js/translated/stock.js:1798
msgid "Assign to customer"
msgstr ""
@@ -8159,6 +8182,11 @@ msgstr ""
msgid "Delete stock item"
msgstr ""
+#: stock/templates/stock/item_base.html:170 templates/InvenTree/search.html:139
+#: templates/js/translated/build.js:2046 templates/navbar.html:38
+msgid "Build"
+msgstr ""
+
#: stock/templates/stock/item_base.html:194
msgid "Parent Item"
msgstr ""
@@ -8221,7 +8249,7 @@ msgid "Available Quantity"
msgstr ""
#: stock/templates/stock/item_base.html:394
-#: templates/js/translated/build.js:2015
+#: templates/js/translated/build.js:2306
msgid "No location set"
msgstr ""
@@ -8239,7 +8267,7 @@ msgid "This StockItem expired on %(item.expiry_date)s"
msgstr ""
#: stock/templates/stock/item_base.html:433
-#: templates/js/translated/table_filters.js:381
+#: templates/js/translated/table_filters.js:387
msgid "Expired"
msgstr ""
@@ -8249,7 +8277,7 @@ msgid "This StockItem expires on %(item.expiry_date)s"
msgstr ""
#: stock/templates/stock/item_base.html:435
-#: templates/js/translated/table_filters.js:387
+#: templates/js/translated/table_filters.js:393
msgid "Stale"
msgstr ""
@@ -8258,7 +8286,7 @@ msgid "No stocktake performed"
msgstr ""
#: stock/templates/stock/item_base.html:503
-#: templates/js/translated/stock.js:1745
+#: templates/js/translated/stock.js:1865
msgid "stock item"
msgstr ""
@@ -8364,20 +8392,20 @@ msgstr ""
msgid "New Location"
msgstr ""
-#: stock/templates/stock/location.html:287
-#: templates/js/translated/stock.js:2318
+#: stock/templates/stock/location.html:278
+#: templates/js/translated/stock.js:2449
msgid "stock location"
msgstr ""
-#: stock/templates/stock/location.html:304
+#: stock/templates/stock/location.html:295
msgid "Scanned stock container into this location"
msgstr ""
-#: stock/templates/stock/location.html:377
+#: stock/templates/stock/location.html:368
msgid "Stock Location QR Code"
msgstr ""
-#: stock/templates/stock/location.html:388
+#: stock/templates/stock/location.html:379
msgid "Link Barcode to Stock Location"
msgstr ""
@@ -8451,71 +8479,71 @@ msgstr ""
msgid "Index"
msgstr ""
-#: templates/InvenTree/index.html:89
+#: templates/InvenTree/index.html:39
msgid "Subscribed Parts"
msgstr ""
-#: templates/InvenTree/index.html:102
+#: templates/InvenTree/index.html:53
msgid "Subscribed Categories"
msgstr ""
-#: templates/InvenTree/index.html:112
+#: templates/InvenTree/index.html:63
msgid "Latest Parts"
msgstr ""
-#: templates/InvenTree/index.html:126
+#: templates/InvenTree/index.html:78
msgid "BOM Waiting Validation"
msgstr ""
-#: templates/InvenTree/index.html:155
+#: templates/InvenTree/index.html:107
msgid "Recently Updated"
msgstr ""
-#: templates/InvenTree/index.html:180
+#: templates/InvenTree/index.html:134
msgid "Depleted Stock"
msgstr ""
-#: templates/InvenTree/index.html:193
+#: templates/InvenTree/index.html:148
msgid "Required for Build Orders"
msgstr ""
-#: templates/InvenTree/index.html:208
+#: templates/InvenTree/index.html:156
msgid "Expired Stock"
msgstr ""
-#: templates/InvenTree/index.html:222
+#: templates/InvenTree/index.html:172
msgid "Stale Stock"
msgstr ""
-#: templates/InvenTree/index.html:247
+#: templates/InvenTree/index.html:199
msgid "Build Orders In Progress"
msgstr ""
-#: templates/InvenTree/index.html:258
+#: templates/InvenTree/index.html:210
msgid "Overdue Build Orders"
msgstr ""
-#: templates/InvenTree/index.html:278
+#: templates/InvenTree/index.html:230
msgid "Outstanding Purchase Orders"
msgstr ""
-#: templates/InvenTree/index.html:289
+#: templates/InvenTree/index.html:241
msgid "Overdue Purchase Orders"
msgstr ""
-#: templates/InvenTree/index.html:310
+#: templates/InvenTree/index.html:262
msgid "Outstanding Sales Orders"
msgstr ""
-#: templates/InvenTree/index.html:321
+#: templates/InvenTree/index.html:273
msgid "Overdue Sales Orders"
msgstr ""
-#: templates/InvenTree/index.html:347
+#: templates/InvenTree/index.html:299
msgid "InvenTree News"
msgstr ""
-#: templates/InvenTree/index.html:349
+#: templates/InvenTree/index.html:301
msgid "Current News"
msgstr ""
@@ -8672,29 +8700,29 @@ msgstr ""
msgid "Changing the settings below require you to immediately restart the server. Do not change this while under active usage."
msgstr ""
-#: templates/InvenTree/settings/plugin.html:37
+#: templates/InvenTree/settings/plugin.html:35
#: templates/InvenTree/settings/sidebar.html:64
msgid "Plugins"
msgstr ""
-#: templates/InvenTree/settings/plugin.html:43
+#: templates/InvenTree/settings/plugin.html:41
#: templates/js/translated/plugin.js:151
msgid "Install Plugin"
msgstr ""
-#: templates/InvenTree/settings/plugin.html:51
+#: templates/InvenTree/settings/plugin.html:49
msgid "External plugins are not enabled for this InvenTree installation"
msgstr ""
-#: templates/InvenTree/settings/plugin.html:70
+#: templates/InvenTree/settings/plugin.html:64
msgid "Plugin Error Stack"
msgstr ""
-#: templates/InvenTree/settings/plugin.html:79
+#: templates/InvenTree/settings/plugin.html:73
msgid "Stage"
msgstr ""
-#: templates/InvenTree/settings/plugin.html:81
+#: templates/InvenTree/settings/plugin.html:75
#: templates/js/translated/notification.js:75
msgid "Message"
msgstr ""
@@ -8767,14 +8795,6 @@ msgstr ""
msgid "Commit Message"
msgstr ""
-#: templates/InvenTree/settings/plugin_settings.html:126
-msgid "Sign Status"
-msgstr ""
-
-#: templates/InvenTree/settings/plugin_settings.html:131
-msgid "Sign Key"
-msgstr ""
-
#: templates/InvenTree/settings/po.html:7
msgid "Purchase Order Settings"
msgstr ""
@@ -8870,12 +8890,12 @@ msgid "No category parameter templates found"
msgstr ""
#: templates/InvenTree/settings/settings_staff_js.html:212
-#: templates/js/translated/part.js:1618
+#: templates/js/translated/part.js:1617
msgid "Edit Template"
msgstr ""
#: templates/InvenTree/settings/settings_staff_js.html:213
-#: templates/js/translated/part.js:1619
+#: templates/js/translated/part.js:1618
msgid "Delete Template"
msgstr ""
@@ -8913,7 +8933,7 @@ msgid "Home Page"
msgstr ""
#: templates/InvenTree/settings/sidebar.html:15
-#: templates/js/translated/tables.js:575 templates/navbar.html:107
+#: templates/js/translated/tables.js:551 templates/navbar.html:107
#: templates/search.html:8 templates/search_form.html:6
#: templates/search_form.html:7
msgid "Search"
@@ -8990,6 +9010,7 @@ msgid "Unverified"
msgstr ""
#: templates/InvenTree/settings/user.html:80
+#: templates/js/translated/company.js:984
msgid "Primary"
msgstr ""
@@ -9204,44 +9225,48 @@ msgstr ""
msgid "Update Available"
msgstr ""
-#: templates/about.html:42
+#: templates/about.html:43
+msgid "Commit Branch"
+msgstr ""
+
+#: templates/about.html:49
msgid "InvenTree Documentation"
msgstr ""
-#: templates/about.html:47
+#: templates/about.html:54
msgid "API Version"
msgstr ""
-#: templates/about.html:52
+#: templates/about.html:59
msgid "Python Version"
msgstr ""
-#: templates/about.html:57
+#: templates/about.html:64
msgid "Django Version"
msgstr ""
-#: templates/about.html:62
+#: templates/about.html:69
msgid "View Code on GitHub"
msgstr ""
-#: templates/about.html:67
+#: templates/about.html:74
msgid "Credits"
msgstr ""
-#: templates/about.html:72
+#: templates/about.html:79
msgid "Mobile App"
msgstr ""
-#: templates/about.html:77
+#: templates/about.html:84
msgid "Submit Bug Report"
msgstr ""
-#: templates/about.html:84 templates/clip.html:4
+#: templates/about.html:91 templates/clip.html:4
#: templates/js/translated/helpers.js:585
msgid "copy to clipboard"
msgstr ""
-#: templates/about.html:84
+#: templates/about.html:91
msgid "copy version information"
msgstr ""
@@ -9435,14 +9460,6 @@ msgstr ""
msgid "Add Attachment"
msgstr ""
-#: templates/attachment_table.html:11
-msgid "Delete selected attachments"
-msgstr ""
-
-#: templates/attachment_table.html:12 templates/js/translated/attachment.js:129
-msgid "Delete Attachments"
-msgstr ""
-
#: templates/barcode_data.html:5
msgid "Barcode Identifier"
msgstr ""
@@ -9487,7 +9504,7 @@ msgid "The following parts are low on required stock"
msgstr ""
#: templates/email/build_order_required_stock.html:18
-#: templates/js/translated/bom.js:1633
+#: templates/js/translated/bom.js:1653 templates/js/translated/build.js:2485
msgid "Required Quantity"
msgstr ""
@@ -9501,7 +9518,7 @@ msgid "Click on the following link to view this part"
msgstr ""
#: templates/email/low_stock_notification.html:18
-#: templates/js/translated/part.js:3140
+#: templates/js/translated/part.js:3125
msgid "Minimum Quantity"
msgstr ""
@@ -9573,23 +9590,35 @@ msgstr ""
msgid "All selected attachments will be deleted"
msgstr ""
-#: templates/js/translated/attachment.js:255
+#: templates/js/translated/attachment.js:129
+msgid "Delete Attachments"
+msgstr ""
+
+#: templates/js/translated/attachment.js:205
+msgid "Delete attachments"
+msgstr ""
+
+#: templates/js/translated/attachment.js:253
+msgid "Attachment actions"
+msgstr ""
+
+#: templates/js/translated/attachment.js:275
msgid "No attachments found"
msgstr ""
-#: templates/js/translated/attachment.js:285
+#: templates/js/translated/attachment.js:305
msgid "Edit Attachment"
msgstr ""
-#: templates/js/translated/attachment.js:326
+#: templates/js/translated/attachment.js:336
msgid "Upload Date"
msgstr ""
-#: templates/js/translated/attachment.js:346
+#: templates/js/translated/attachment.js:356
msgid "Edit attachment"
msgstr ""
-#: templates/js/translated/attachment.js:354
+#: templates/js/translated/attachment.js:364
msgid "Delete attachment"
msgstr ""
@@ -9646,7 +9675,7 @@ msgstr ""
msgid "Unlink"
msgstr ""
-#: templates/js/translated/barcode.js:550 templates/js/translated/stock.js:1118
+#: templates/js/translated/barcode.js:550 templates/js/translated/stock.js:1117
msgid "Remove stock item"
msgstr ""
@@ -9704,775 +9733,869 @@ msgstr ""
msgid "Barcode does not match a valid location"
msgstr ""
-#: templates/js/translated/bom.js:77
+#: templates/js/translated/bom.js:78
msgid "Create BOM Item"
msgstr ""
-#: templates/js/translated/bom.js:131
+#: templates/js/translated/bom.js:132
msgid "Display row data"
msgstr ""
-#: templates/js/translated/bom.js:187
+#: templates/js/translated/bom.js:188
msgid "Row Data"
msgstr ""
-#: templates/js/translated/bom.js:188 templates/js/translated/bom.js:699
+#: templates/js/translated/bom.js:189 templates/js/translated/bom.js:700
#: templates/js/translated/modals.js:71 templates/js/translated/modals.js:622
#: templates/js/translated/modals.js:746 templates/js/translated/modals.js:1054
-#: templates/js/translated/purchase_order.js:791 templates/modals.html:15
+#: templates/js/translated/purchase_order.js:802 templates/modals.html:15
#: templates/modals.html:27 templates/modals.html:39 templates/modals.html:50
msgid "Close"
msgstr ""
-#: templates/js/translated/bom.js:305
+#: templates/js/translated/bom.js:306
msgid "Download BOM Template"
msgstr ""
-#: templates/js/translated/bom.js:350
+#: templates/js/translated/bom.js:351
msgid "Multi Level BOM"
msgstr ""
-#: templates/js/translated/bom.js:351
+#: templates/js/translated/bom.js:352
msgid "Include BOM data for subassemblies"
msgstr ""
-#: templates/js/translated/bom.js:356
+#: templates/js/translated/bom.js:357
msgid "Levels"
msgstr ""
-#: templates/js/translated/bom.js:357
+#: templates/js/translated/bom.js:358
msgid "Select maximum number of BOM levels to export (0 = all levels)"
msgstr ""
-#: templates/js/translated/bom.js:364
+#: templates/js/translated/bom.js:365
msgid "Include Alternative Parts"
msgstr ""
-#: templates/js/translated/bom.js:365
+#: templates/js/translated/bom.js:366
msgid "Include alternative parts in exported BOM"
msgstr ""
-#: templates/js/translated/bom.js:370
+#: templates/js/translated/bom.js:371
msgid "Include Parameter Data"
msgstr ""
-#: templates/js/translated/bom.js:371
+#: templates/js/translated/bom.js:372
msgid "Include part parameter data in exported BOM"
msgstr ""
-#: templates/js/translated/bom.js:376
+#: templates/js/translated/bom.js:377
msgid "Include Stock Data"
msgstr ""
-#: templates/js/translated/bom.js:377
+#: templates/js/translated/bom.js:378
msgid "Include part stock data in exported BOM"
msgstr ""
-#: templates/js/translated/bom.js:382
+#: templates/js/translated/bom.js:383
msgid "Include Manufacturer Data"
msgstr ""
-#: templates/js/translated/bom.js:383
+#: templates/js/translated/bom.js:384
msgid "Include part manufacturer data in exported BOM"
msgstr ""
-#: templates/js/translated/bom.js:388
+#: templates/js/translated/bom.js:389
msgid "Include Supplier Data"
msgstr ""
-#: templates/js/translated/bom.js:389
+#: templates/js/translated/bom.js:390
msgid "Include part supplier data in exported BOM"
msgstr ""
-#: templates/js/translated/bom.js:394
+#: templates/js/translated/bom.js:395
msgid "Include Pricing Data"
msgstr ""
-#: templates/js/translated/bom.js:395
+#: templates/js/translated/bom.js:396
msgid "Include part pricing data in exported BOM"
msgstr ""
-#: templates/js/translated/bom.js:590
+#: templates/js/translated/bom.js:591
msgid "Remove substitute part"
msgstr ""
-#: templates/js/translated/bom.js:644
+#: templates/js/translated/bom.js:645
msgid "Select and add a new substitute part using the input below"
msgstr ""
-#: templates/js/translated/bom.js:655
+#: templates/js/translated/bom.js:656
msgid "Are you sure you wish to remove this substitute part link?"
msgstr ""
-#: templates/js/translated/bom.js:661
+#: templates/js/translated/bom.js:662
msgid "Remove Substitute Part"
msgstr ""
-#: templates/js/translated/bom.js:700
+#: templates/js/translated/bom.js:701
msgid "Add Substitute"
msgstr ""
-#: templates/js/translated/bom.js:701
+#: templates/js/translated/bom.js:702
msgid "Edit BOM Item Substitutes"
msgstr ""
-#: templates/js/translated/bom.js:763
+#: templates/js/translated/bom.js:764
msgid "All selected BOM items will be deleted"
msgstr ""
-#: templates/js/translated/bom.js:779
+#: templates/js/translated/bom.js:780
msgid "Delete selected BOM items?"
msgstr ""
-#: templates/js/translated/bom.js:906
+#: templates/js/translated/bom.js:826
+msgid "Delete items"
+msgstr ""
+
+#: templates/js/translated/bom.js:924
msgid "Load BOM for subassembly"
msgstr ""
-#: templates/js/translated/bom.js:916
+#: templates/js/translated/bom.js:934
msgid "Substitutes Available"
msgstr ""
-#: templates/js/translated/bom.js:920 templates/js/translated/build.js:2090
+#: templates/js/translated/bom.js:938 templates/js/translated/build.js:2429
msgid "Variant stock allowed"
msgstr ""
-#: templates/js/translated/bom.js:984
+#: templates/js/translated/bom.js:1002
msgid "Substitutes"
msgstr ""
-#: templates/js/translated/bom.js:1104
+#: templates/js/translated/bom.js:1122
msgid "BOM pricing is complete"
msgstr ""
-#: templates/js/translated/bom.js:1109
+#: templates/js/translated/bom.js:1127
msgid "BOM pricing is incomplete"
msgstr ""
-#: templates/js/translated/bom.js:1116
+#: templates/js/translated/bom.js:1134
msgid "No pricing available"
msgstr ""
-#: templates/js/translated/bom.js:1147 templates/js/translated/build.js:2173
-#: templates/js/translated/sales_order.js:1887
+#: templates/js/translated/bom.js:1165 templates/js/translated/build.js:2523
+#: templates/js/translated/sales_order.js:1899
msgid "No Stock Available"
msgstr ""
-#: templates/js/translated/bom.js:1152 templates/js/translated/build.js:2177
+#: templates/js/translated/bom.js:1170 templates/js/translated/build.js:2527
msgid "Includes variant and substitute stock"
msgstr ""
-#: templates/js/translated/bom.js:1154 templates/js/translated/build.js:2179
-#: templates/js/translated/part.js:1230
+#: templates/js/translated/bom.js:1172 templates/js/translated/build.js:2529
+#: templates/js/translated/part.js:1229
msgid "Includes variant stock"
msgstr ""
-#: templates/js/translated/bom.js:1156 templates/js/translated/build.js:2181
+#: templates/js/translated/bom.js:1174 templates/js/translated/build.js:2531
msgid "Includes substitute stock"
msgstr ""
-#: templates/js/translated/bom.js:1184 templates/js/translated/build.js:2164
-#: templates/js/translated/build.js:2255
+#: templates/js/translated/bom.js:1204 templates/js/translated/build.js:2514
msgid "Consumable item"
msgstr ""
-#: templates/js/translated/bom.js:1244
+#: templates/js/translated/bom.js:1264
msgid "Validate BOM Item"
msgstr ""
-#: templates/js/translated/bom.js:1246
+#: templates/js/translated/bom.js:1266
msgid "This line has been validated"
msgstr ""
-#: templates/js/translated/bom.js:1248
+#: templates/js/translated/bom.js:1268
msgid "Edit substitute parts"
msgstr ""
-#: templates/js/translated/bom.js:1250 templates/js/translated/bom.js:1445
+#: templates/js/translated/bom.js:1270 templates/js/translated/bom.js:1465
msgid "Edit BOM Item"
msgstr ""
-#: templates/js/translated/bom.js:1252
+#: templates/js/translated/bom.js:1272
msgid "Delete BOM Item"
msgstr ""
-#: templates/js/translated/bom.js:1272
+#: templates/js/translated/bom.js:1292
msgid "View BOM"
msgstr ""
-#: templates/js/translated/bom.js:1356 templates/js/translated/build.js:1927
+#: templates/js/translated/bom.js:1376
msgid "No BOM items found"
msgstr ""
-#: templates/js/translated/bom.js:1616 templates/js/translated/build.js:2073
+#: templates/js/translated/bom.js:1636 templates/js/translated/build.js:2414
msgid "Required Part"
msgstr ""
-#: templates/js/translated/bom.js:1642
+#: templates/js/translated/bom.js:1662
msgid "Inherited from parent BOM"
msgstr ""
-#: templates/js/translated/build.js:126
+#: templates/js/translated/build.js:136
msgid "Edit Build Order"
msgstr ""
-#: templates/js/translated/build.js:169
+#: templates/js/translated/build.js:179
msgid "Create Build Order"
msgstr ""
-#: templates/js/translated/build.js:202
+#: templates/js/translated/build.js:211
msgid "Cancel Build Order"
msgstr ""
-#: templates/js/translated/build.js:211
+#: templates/js/translated/build.js:220
msgid "Are you sure you wish to cancel this build?"
msgstr ""
-#: templates/js/translated/build.js:217
+#: templates/js/translated/build.js:226
msgid "Stock items have been allocated to this build order"
msgstr ""
-#: templates/js/translated/build.js:224
+#: templates/js/translated/build.js:233
msgid "There are incomplete outputs remaining for this build order"
msgstr ""
-#: templates/js/translated/build.js:276
+#: templates/js/translated/build.js:285
msgid "Build order is ready to be completed"
msgstr ""
-#: templates/js/translated/build.js:284
+#: templates/js/translated/build.js:293
msgid "This build order cannot be completed as there are incomplete outputs"
msgstr ""
-#: templates/js/translated/build.js:289
+#: templates/js/translated/build.js:298
msgid "Build Order is incomplete"
msgstr ""
-#: templates/js/translated/build.js:307
+#: templates/js/translated/build.js:316
msgid "Complete Build Order"
msgstr ""
-#: templates/js/translated/build.js:348 templates/js/translated/stock.js:119
-#: templates/js/translated/stock.js:265
+#: templates/js/translated/build.js:357 templates/js/translated/stock.js:118
+#: templates/js/translated/stock.js:264
msgid "Next available serial number"
msgstr ""
-#: templates/js/translated/build.js:350 templates/js/translated/stock.js:121
-#: templates/js/translated/stock.js:267
+#: templates/js/translated/build.js:359 templates/js/translated/stock.js:120
+#: templates/js/translated/stock.js:266
msgid "Latest serial number"
msgstr ""
-#: templates/js/translated/build.js:359
+#: templates/js/translated/build.js:368
msgid "The Bill of Materials contains trackable parts"
msgstr ""
-#: templates/js/translated/build.js:360
+#: templates/js/translated/build.js:369
msgid "Build outputs must be generated individually"
msgstr ""
-#: templates/js/translated/build.js:368
+#: templates/js/translated/build.js:377
msgid "Trackable parts can have serial numbers specified"
msgstr ""
-#: templates/js/translated/build.js:369
+#: templates/js/translated/build.js:378
msgid "Enter serial numbers to generate multiple single build outputs"
msgstr ""
-#: templates/js/translated/build.js:376
+#: templates/js/translated/build.js:385
msgid "Create Build Output"
msgstr ""
-#: templates/js/translated/build.js:407
+#: templates/js/translated/build.js:416
msgid "Allocate stock items to this build output"
msgstr ""
-#: templates/js/translated/build.js:418
-msgid "Unallocate stock from build output"
+#: templates/js/translated/build.js:424
+msgid "Deallocate stock from build output"
msgstr ""
-#: templates/js/translated/build.js:427
+#: templates/js/translated/build.js:433
msgid "Complete build output"
msgstr ""
-#: templates/js/translated/build.js:435
+#: templates/js/translated/build.js:441
msgid "Scrap build output"
msgstr ""
-#: templates/js/translated/build.js:442
+#: templates/js/translated/build.js:448
msgid "Delete build output"
msgstr ""
-#: templates/js/translated/build.js:462
-msgid "Are you sure you wish to unallocate stock items from this build?"
+#: templates/js/translated/build.js:468
+msgid "Are you sure you wish to deallocate the selected stock items from this build?"
msgstr ""
-#: templates/js/translated/build.js:480
-msgid "Unallocate Stock Items"
+#: templates/js/translated/build.js:486
+msgid "Deallocate Stock Items"
msgstr ""
-#: templates/js/translated/build.js:566 templates/js/translated/build.js:690
-#: templates/js/translated/build.js:812
+#: templates/js/translated/build.js:572 templates/js/translated/build.js:696
+#: templates/js/translated/build.js:818
msgid "Select Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:567 templates/js/translated/build.js:691
-#: templates/js/translated/build.js:813
+#: templates/js/translated/build.js:573 templates/js/translated/build.js:697
+#: templates/js/translated/build.js:819
msgid "At least one build output must be selected"
msgstr ""
-#: templates/js/translated/build.js:581
+#: templates/js/translated/build.js:587
msgid "Selected build outputs will be marked as complete"
msgstr ""
-#: templates/js/translated/build.js:585 templates/js/translated/build.js:715
-#: templates/js/translated/build.js:835
+#: templates/js/translated/build.js:591 templates/js/translated/build.js:721
+#: templates/js/translated/build.js:841
msgid "Output"
msgstr ""
-#: templates/js/translated/build.js:609
+#: templates/js/translated/build.js:615
msgid "Complete Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:706
+#: templates/js/translated/build.js:712
msgid "Selected build outputs will be marked as scrapped"
msgstr ""
-#: templates/js/translated/build.js:708
+#: templates/js/translated/build.js:714
msgid "Scrapped output are marked as rejected"
msgstr ""
-#: templates/js/translated/build.js:709
+#: templates/js/translated/build.js:715
msgid "Allocated stock items will no longer be available"
msgstr ""
-#: templates/js/translated/build.js:710
+#: templates/js/translated/build.js:716
msgid "The completion status of the build order will not be adjusted"
msgstr ""
-#: templates/js/translated/build.js:737
+#: templates/js/translated/build.js:743
msgid "Scrap Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:827
+#: templates/js/translated/build.js:833
msgid "Selected build outputs will be deleted"
msgstr ""
-#: templates/js/translated/build.js:829
+#: templates/js/translated/build.js:835
msgid "Build output data will be permanently deleted"
msgstr ""
-#: templates/js/translated/build.js:830
+#: templates/js/translated/build.js:836
msgid "Allocated stock items will be returned to stock"
msgstr ""
-#: templates/js/translated/build.js:848
+#: templates/js/translated/build.js:854
msgid "Delete Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:934
+#: templates/js/translated/build.js:941
msgid "No build order allocations found"
msgstr ""
-#: templates/js/translated/build.js:971
+#: templates/js/translated/build.js:970 templates/js/translated/build.js:2270
+msgid "Allocated Quantity"
+msgstr ""
+
+#: templates/js/translated/build.js:984
msgid "Location not specified"
msgstr ""
-#: templates/js/translated/build.js:1047
+#: templates/js/translated/build.js:1006
+msgid "Complete outputs"
+msgstr ""
+
+#: templates/js/translated/build.js:1024
+msgid "Scrap outputs"
+msgstr ""
+
+#: templates/js/translated/build.js:1042
+msgid "Delete outputs"
+msgstr ""
+
+#: templates/js/translated/build.js:1100
msgid "build output"
msgstr ""
-#: templates/js/translated/build.js:1048
+#: templates/js/translated/build.js:1101
msgid "build outputs"
msgstr ""
-#: templates/js/translated/build.js:1383
+#: templates/js/translated/build.js:1105
+msgid "Build output actions"
+msgstr ""
+
+#: templates/js/translated/build.js:1274
msgid "No active build outputs found"
msgstr ""
-#: templates/js/translated/build.js:1457
-msgid "Allocated Stock"
+#: templates/js/translated/build.js:1329
+msgid "Allocated Lines"
msgstr ""
-#: templates/js/translated/build.js:1464
-msgid "No tracked BOM items for this build"
+#: templates/js/translated/build.js:1343
+msgid "Required Tests"
msgstr ""
-#: templates/js/translated/build.js:1486
-msgid "Completed Tests"
-msgstr ""
-
-#: templates/js/translated/build.js:1491
-msgid "No required tests for this build"
-msgstr ""
-
-#: templates/js/translated/build.js:2032 templates/js/translated/build.js:3056
-#: templates/js/translated/sales_order.js:1632
-msgid "Edit stock allocation"
-msgstr ""
-
-#: templates/js/translated/build.js:2034 templates/js/translated/build.js:3057
-#: templates/js/translated/sales_order.js:1633
-msgid "Delete stock allocation"
-msgstr ""
-
-#: templates/js/translated/build.js:2050
-msgid "Edit Allocation"
-msgstr ""
-
-#: templates/js/translated/build.js:2060
-msgid "Remove Allocation"
-msgstr ""
-
-#: templates/js/translated/build.js:2086
-msgid "Substitute parts available"
-msgstr ""
-
-#: templates/js/translated/build.js:2122
-msgid "Quantity Per"
-msgstr ""
-
-#: templates/js/translated/build.js:2167
-#: templates/js/translated/sales_order.js:1894
-msgid "Insufficient stock available"
-msgstr ""
-
-#: templates/js/translated/build.js:2169
-#: templates/js/translated/sales_order.js:1892
-msgid "Sufficient stock available"
-msgstr ""
-
-#: templates/js/translated/build.js:2263
-#: templates/js/translated/sales_order.js:1993
-msgid "Build stock"
-msgstr ""
-
-#: templates/js/translated/build.js:2267 templates/stock_table.html:38
-msgid "Order stock"
-msgstr ""
-
-#: templates/js/translated/build.js:2270
-#: templates/js/translated/sales_order.js:1987
-msgid "Allocate stock"
-msgstr ""
-
-#: templates/js/translated/build.js:2310
-#: templates/js/translated/purchase_order.js:616
-#: templates/js/translated/sales_order.js:1159
+#: templates/js/translated/build.js:1502
+#: templates/js/translated/purchase_order.js:627
+#: templates/js/translated/sales_order.js:1171
msgid "Select Parts"
msgstr ""
-#: templates/js/translated/build.js:2311
-#: templates/js/translated/sales_order.js:1160
+#: templates/js/translated/build.js:1503
+#: templates/js/translated/sales_order.js:1172
msgid "You must select at least one part to allocate"
msgstr ""
-#: templates/js/translated/build.js:2359
-#: templates/js/translated/sales_order.js:1109
+#: templates/js/translated/build.js:1566
+#: templates/js/translated/sales_order.js:1121
msgid "Specify stock allocation quantity"
msgstr ""
-#: templates/js/translated/build.js:2438
+#: templates/js/translated/build.js:1643
msgid "All Parts Allocated"
msgstr ""
-#: templates/js/translated/build.js:2439
+#: templates/js/translated/build.js:1644
msgid "All selected parts have been fully allocated"
msgstr ""
-#: templates/js/translated/build.js:2453
-#: templates/js/translated/sales_order.js:1174
+#: templates/js/translated/build.js:1658
+#: templates/js/translated/sales_order.js:1186
msgid "Select source location (leave blank to take from all locations)"
msgstr ""
-#: templates/js/translated/build.js:2481
+#: templates/js/translated/build.js:1686
msgid "Allocate Stock Items to Build Order"
msgstr ""
-#: templates/js/translated/build.js:2492
-#: templates/js/translated/sales_order.js:1271
+#: templates/js/translated/build.js:1697
+#: templates/js/translated/sales_order.js:1283
msgid "No matching stock locations"
msgstr ""
-#: templates/js/translated/build.js:2565
-#: templates/js/translated/sales_order.js:1348
+#: templates/js/translated/build.js:1770
+#: templates/js/translated/sales_order.js:1360
msgid "No matching stock items"
msgstr ""
-#: templates/js/translated/build.js:2662
+#: templates/js/translated/build.js:1867
msgid "Automatic Stock Allocation"
msgstr ""
-#: templates/js/translated/build.js:2663
+#: templates/js/translated/build.js:1868
msgid "Stock items will be automatically allocated to this build order, according to the provided guidelines"
msgstr ""
-#: templates/js/translated/build.js:2665
+#: templates/js/translated/build.js:1870
msgid "If a location is specified, stock will only be allocated from that location"
msgstr ""
-#: templates/js/translated/build.js:2666
+#: templates/js/translated/build.js:1871
msgid "If stock is considered interchangeable, it will be allocated from the first location it is found"
msgstr ""
-#: templates/js/translated/build.js:2667
+#: templates/js/translated/build.js:1872
msgid "If substitute stock is allowed, it will be used where stock of the primary part cannot be found"
msgstr ""
-#: templates/js/translated/build.js:2694
+#: templates/js/translated/build.js:1899
msgid "Allocate Stock Items"
msgstr ""
-#: templates/js/translated/build.js:2800
+#: templates/js/translated/build.js:2005
msgid "No builds matching query"
msgstr ""
-#: templates/js/translated/build.js:2835 templates/js/translated/part.js:2208
-#: templates/js/translated/part.js:2692 templates/js/translated/stock.js:1759
-#: templates/js/translated/stock.js:2458
+#: templates/js/translated/build.js:2040 templates/js/translated/build.js:2408
+#: templates/js/translated/part.js:2284 templates/js/translated/part.js:2677
+#: templates/js/translated/stock.js:1899 templates/js/translated/stock.js:2589
msgid "Select"
msgstr ""
-#: templates/js/translated/build.js:2849
+#: templates/js/translated/build.js:2054
msgid "Build order is overdue"
msgstr ""
-#: templates/js/translated/build.js:2883
+#: templates/js/translated/build.js:2100
msgid "Progress"
msgstr ""
-#: templates/js/translated/build.js:2919 templates/js/translated/stock.js:2779
+#: templates/js/translated/build.js:2136 templates/js/translated/stock.js:2910
msgid "No user information"
msgstr ""
-#: templates/js/translated/build.js:2934
+#: templates/js/translated/build.js:2151
msgid "group"
msgstr ""
-#: templates/js/translated/build.js:3033
-msgid "No parts allocated for"
+#: templates/js/translated/build.js:2315
+#: templates/js/translated/sales_order.js:1644
+msgid "Edit stock allocation"
msgstr ""
-#: templates/js/translated/company.js:87
+#: templates/js/translated/build.js:2316
+#: templates/js/translated/sales_order.js:1645
+msgid "Delete stock allocation"
+msgstr ""
+
+#: templates/js/translated/build.js:2331
+msgid "Edit Allocation"
+msgstr ""
+
+#: templates/js/translated/build.js:2343
+msgid "Remove Allocation"
+msgstr ""
+
+#: templates/js/translated/build.js:2384
+msgid "build line"
+msgstr ""
+
+#: templates/js/translated/build.js:2385
+msgid "build lines"
+msgstr ""
+
+#: templates/js/translated/build.js:2403
+msgid "No build lines found"
+msgstr ""
+
+#: templates/js/translated/build.js:2433 templates/js/translated/part.js:767
+#: templates/js/translated/part.js:1175
+msgid "Trackable part"
+msgstr ""
+
+#: templates/js/translated/build.js:2468
+msgid "Unit Quantity"
+msgstr ""
+
+#: templates/js/translated/build.js:2517
+#: templates/js/translated/sales_order.js:1906
+msgid "Insufficient stock available"
+msgstr ""
+
+#: templates/js/translated/build.js:2519
+#: templates/js/translated/sales_order.js:1904
+msgid "Sufficient stock available"
+msgstr ""
+
+#: templates/js/translated/build.js:2566
+msgid "Consumable Item"
+msgstr ""
+
+#: templates/js/translated/build.js:2571
+msgid "Tracked item"
+msgstr ""
+
+#: templates/js/translated/build.js:2578
+#: templates/js/translated/sales_order.js:2005
+msgid "Build stock"
+msgstr ""
+
+#: templates/js/translated/build.js:2583 templates/js/translated/stock.js:1779
+msgid "Order stock"
+msgstr ""
+
+#: templates/js/translated/build.js:2587
+#: templates/js/translated/sales_order.js:1999
+msgid "Allocate stock"
+msgstr ""
+
+#: templates/js/translated/build.js:2591
+msgid "Remove stock allocation"
+msgstr ""
+
+#: templates/js/translated/company.js:97
msgid "Add Manufacturer"
msgstr ""
-#: templates/js/translated/company.js:100
-#: templates/js/translated/company.js:202
+#: templates/js/translated/company.js:110
+#: templates/js/translated/company.js:212
msgid "Add Manufacturer Part"
msgstr ""
-#: templates/js/translated/company.js:121
+#: templates/js/translated/company.js:131
msgid "Edit Manufacturer Part"
msgstr ""
-#: templates/js/translated/company.js:190
-#: templates/js/translated/purchase_order.js:94
+#: templates/js/translated/company.js:200
+#: templates/js/translated/purchase_order.js:93
msgid "Add Supplier"
msgstr ""
-#: templates/js/translated/company.js:232
-#: templates/js/translated/purchase_order.js:338
+#: templates/js/translated/company.js:242
+#: templates/js/translated/purchase_order.js:349
msgid "Add Supplier Part"
msgstr ""
-#: templates/js/translated/company.js:333
+#: templates/js/translated/company.js:343
msgid "All selected supplier parts will be deleted"
msgstr ""
-#: templates/js/translated/company.js:349
+#: templates/js/translated/company.js:359
msgid "Delete Supplier Parts"
msgstr ""
-#: templates/js/translated/company.js:457
+#: templates/js/translated/company.js:464
msgid "Add new Company"
msgstr ""
-#: templates/js/translated/company.js:528
+#: templates/js/translated/company.js:535
msgid "Parts Supplied"
msgstr ""
-#: templates/js/translated/company.js:537
+#: templates/js/translated/company.js:544
msgid "Parts Manufactured"
msgstr ""
-#: templates/js/translated/company.js:552
+#: templates/js/translated/company.js:559
msgid "No company information found"
msgstr ""
-#: templates/js/translated/company.js:601
+#: templates/js/translated/company.js:608
msgid "Create New Contact"
msgstr ""
-#: templates/js/translated/company.js:617
-#: templates/js/translated/company.js:740
+#: templates/js/translated/company.js:624
+#: templates/js/translated/company.js:747
msgid "Edit Contact"
msgstr ""
-#: templates/js/translated/company.js:654
+#: templates/js/translated/company.js:661
msgid "All selected contacts will be deleted"
msgstr ""
-#: templates/js/translated/company.js:660
-#: templates/js/translated/company.js:724
+#: templates/js/translated/company.js:667
+#: templates/js/translated/company.js:731
msgid "Role"
msgstr ""
-#: templates/js/translated/company.js:668
+#: templates/js/translated/company.js:675
msgid "Delete Contacts"
msgstr ""
-#: templates/js/translated/company.js:699
+#: templates/js/translated/company.js:706
msgid "No contacts found"
msgstr ""
-#: templates/js/translated/company.js:712
+#: templates/js/translated/company.js:719
msgid "Phone Number"
msgstr ""
-#: templates/js/translated/company.js:718
+#: templates/js/translated/company.js:725
msgid "Email Address"
msgstr ""
-#: templates/js/translated/company.js:744
+#: templates/js/translated/company.js:751
msgid "Delete Contact"
msgstr ""
-#: templates/js/translated/company.js:818
+#: templates/js/translated/company.js:886
+msgid "Create New Address"
+msgstr ""
+
+#: templates/js/translated/company.js:901
+#: templates/js/translated/company.js:1066
+msgid "Edit Address"
+msgstr ""
+
+#: templates/js/translated/company.js:936
+msgid "All selected addresses will be deleted"
+msgstr ""
+
+#: templates/js/translated/company.js:950
+msgid "Delete Addresses"
+msgstr ""
+
+#: templates/js/translated/company.js:977
+msgid "No addresses found"
+msgstr ""
+
+#: templates/js/translated/company.js:1020
+msgid "Postal city"
+msgstr ""
+
+#: templates/js/translated/company.js:1026
+msgid "State/province"
+msgstr ""
+
+#: templates/js/translated/company.js:1038
+msgid "Courier notes"
+msgstr ""
+
+#: templates/js/translated/company.js:1044
+msgid "Internal notes"
+msgstr ""
+
+#: templates/js/translated/company.js:1070
+msgid "Delete Address"
+msgstr ""
+
+#: templates/js/translated/company.js:1143
msgid "All selected manufacturer parts will be deleted"
msgstr ""
-#: templates/js/translated/company.js:833
+#: templates/js/translated/company.js:1158
msgid "Delete Manufacturer Parts"
msgstr ""
-#: templates/js/translated/company.js:867
+#: templates/js/translated/company.js:1192
msgid "All selected parameters will be deleted"
msgstr ""
-#: templates/js/translated/company.js:881
+#: templates/js/translated/company.js:1206
msgid "Delete Parameters"
msgstr ""
-#: templates/js/translated/company.js:917
+#: templates/js/translated/company.js:1222
+#: templates/js/translated/company.js:1510 templates/js/translated/part.js:2213
+msgid "Order parts"
+msgstr ""
+
+#: templates/js/translated/company.js:1239
+msgid "Delete manufacturer parts"
+msgstr ""
+
+#: templates/js/translated/company.js:1271
+msgid "Manufacturer part actions"
+msgstr ""
+
+#: templates/js/translated/company.js:1290
msgid "No manufacturer parts found"
msgstr ""
-#: templates/js/translated/company.js:937
-#: templates/js/translated/company.js:1177 templates/js/translated/part.js:776
-#: templates/js/translated/part.js:1184
+#: templates/js/translated/company.js:1310
+#: templates/js/translated/company.js:1598 templates/js/translated/part.js:775
+#: templates/js/translated/part.js:1183
msgid "Template part"
msgstr ""
-#: templates/js/translated/company.js:941
-#: templates/js/translated/company.js:1181 templates/js/translated/part.js:780
-#: templates/js/translated/part.js:1188
+#: templates/js/translated/company.js:1314
+#: templates/js/translated/company.js:1602 templates/js/translated/part.js:779
+#: templates/js/translated/part.js:1187
msgid "Assembled part"
msgstr ""
-#: templates/js/translated/company.js:1061 templates/js/translated/part.js:1437
+#: templates/js/translated/company.js:1434 templates/js/translated/part.js:1436
msgid "No parameters found"
msgstr ""
-#: templates/js/translated/company.js:1096 templates/js/translated/part.js:1500
+#: templates/js/translated/company.js:1469 templates/js/translated/part.js:1499
msgid "Edit parameter"
msgstr ""
-#: templates/js/translated/company.js:1097 templates/js/translated/part.js:1501
+#: templates/js/translated/company.js:1470 templates/js/translated/part.js:1500
msgid "Delete parameter"
msgstr ""
-#: templates/js/translated/company.js:1114 templates/js/translated/part.js:1407
+#: templates/js/translated/company.js:1487 templates/js/translated/part.js:1406
msgid "Edit Parameter"
msgstr ""
-#: templates/js/translated/company.js:1123 templates/js/translated/part.js:1522
+#: templates/js/translated/company.js:1496 templates/js/translated/part.js:1521
msgid "Delete Parameter"
msgstr ""
-#: templates/js/translated/company.js:1156
+#: templates/js/translated/company.js:1527
+msgid "Delete supplier parts"
+msgstr ""
+
+#: templates/js/translated/company.js:1577
msgid "No supplier parts found"
msgstr ""
-#: templates/js/translated/company.js:1274
+#: templates/js/translated/company.js:1695
msgid "Base Units"
msgstr ""
-#: templates/js/translated/company.js:1304
+#: templates/js/translated/company.js:1725
msgid "Availability"
msgstr ""
-#: templates/js/translated/company.js:1335
+#: templates/js/translated/company.js:1756
msgid "Edit supplier part"
msgstr ""
-#: templates/js/translated/company.js:1336
+#: templates/js/translated/company.js:1757
msgid "Delete supplier part"
msgstr ""
-#: templates/js/translated/company.js:1389
+#: templates/js/translated/company.js:1810
#: templates/js/translated/pricing.js:694
msgid "Delete Price Break"
msgstr ""
-#: templates/js/translated/company.js:1399
+#: templates/js/translated/company.js:1820
#: templates/js/translated/pricing.js:712
msgid "Edit Price Break"
msgstr ""
-#: templates/js/translated/company.js:1414
+#: templates/js/translated/company.js:1835
msgid "No price break information found"
msgstr ""
-#: templates/js/translated/company.js:1443
+#: templates/js/translated/company.js:1864
msgid "Last updated"
msgstr ""
-#: templates/js/translated/company.js:1450
+#: templates/js/translated/company.js:1871
msgid "Edit price break"
msgstr ""
-#: templates/js/translated/company.js:1451
+#: templates/js/translated/company.js:1872
msgid "Delete price break"
msgstr ""
-#: templates/js/translated/filters.js:186
-#: templates/js/translated/filters.js:550
+#: templates/js/translated/filters.js:187
+#: templates/js/translated/filters.js:673
msgid "true"
msgstr ""
-#: templates/js/translated/filters.js:190
-#: templates/js/translated/filters.js:551
+#: templates/js/translated/filters.js:191
+#: templates/js/translated/filters.js:674
msgid "false"
msgstr ""
-#: templates/js/translated/filters.js:214
+#: templates/js/translated/filters.js:215
msgid "Select filter"
msgstr ""
-#: templates/js/translated/filters.js:328
+#: templates/js/translated/filters.js:438
msgid "Print Labels"
msgstr ""
-#: templates/js/translated/filters.js:332
+#: templates/js/translated/filters.js:442
msgid "Print Reports"
msgstr ""
-#: templates/js/translated/filters.js:344
+#: templates/js/translated/filters.js:454
msgid "Download table data"
msgstr ""
-#: templates/js/translated/filters.js:351
+#: templates/js/translated/filters.js:461
msgid "Reload table data"
msgstr ""
-#: templates/js/translated/filters.js:360
+#: templates/js/translated/filters.js:470
msgid "Add new filter"
msgstr ""
-#: templates/js/translated/filters.js:368
+#: templates/js/translated/filters.js:478
msgid "Clear all filters"
msgstr ""
-#: templates/js/translated/filters.js:460
+#: templates/js/translated/filters.js:583
msgid "Create filter"
msgstr ""
@@ -10497,6 +10620,12 @@ msgstr ""
msgid "View operation not allowed"
msgstr ""
+#: templates/js/translated/forms.js:506 templates/js/translated/helpers.js:105
+#: templates/js/translated/part.js:369 templates/js/translated/pricing.js:629
+#: templates/js/translated/stock.js:215 users/models.py:253
+msgid "Delete"
+msgstr ""
+
#: templates/js/translated/forms.js:752
msgid "Keep this form open"
msgstr ""
@@ -10514,23 +10643,23 @@ msgstr ""
msgid "No results found"
msgstr ""
-#: templates/js/translated/forms.js:2071 templates/js/translated/search.js:281
+#: templates/js/translated/forms.js:2071 templates/js/translated/search.js:239
msgid "Searching"
msgstr ""
-#: templates/js/translated/forms.js:2276
+#: templates/js/translated/forms.js:2285
msgid "Clear input"
msgstr ""
-#: templates/js/translated/forms.js:2733
+#: templates/js/translated/forms.js:2742
msgid "File Column"
msgstr ""
-#: templates/js/translated/forms.js:2733
+#: templates/js/translated/forms.js:2742
msgid "Field Name"
msgstr ""
-#: templates/js/translated/forms.js:2745
+#: templates/js/translated/forms.js:2754
msgid "Select Columns"
msgstr ""
@@ -10550,6 +10679,14 @@ msgstr ""
msgid "False"
msgstr ""
+#: templates/js/translated/index.js:99
+msgid "No parts required for builds"
+msgstr ""
+
+#: templates/js/translated/index.js:125
+msgid "Allocated Stock"
+msgstr ""
+
#: templates/js/translated/label.js:58
msgid "Select Printer"
msgstr ""
@@ -10651,7 +10788,7 @@ msgstr ""
#: templates/js/translated/news.js:38
#: templates/js/translated/notification.js:45
-#: templates/js/translated/part.js:1577
+#: templates/js/translated/part.js:1576
msgid "ID"
msgstr ""
@@ -10700,7 +10837,7 @@ msgid "Delete Line"
msgstr ""
#: templates/js/translated/order.js:281
-#: templates/js/translated/purchase_order.js:1958
+#: templates/js/translated/purchase_order.js:1968
msgid "No line items found"
msgstr ""
@@ -10716,363 +10853,355 @@ msgstr ""
msgid "Delete line"
msgstr ""
-#: templates/js/translated/part.js:91
+#: templates/js/translated/part.js:90
msgid "Part Attributes"
msgstr ""
-#: templates/js/translated/part.js:95
+#: templates/js/translated/part.js:94
msgid "Part Creation Options"
msgstr ""
-#: templates/js/translated/part.js:99
+#: templates/js/translated/part.js:98
msgid "Part Duplication Options"
msgstr ""
-#: templates/js/translated/part.js:122
+#: templates/js/translated/part.js:121
msgid "Add Part Category"
msgstr ""
-#: templates/js/translated/part.js:294
+#: templates/js/translated/part.js:293
msgid "Parent part category"
msgstr ""
-#: templates/js/translated/part.js:310 templates/js/translated/stock.js:147
+#: templates/js/translated/part.js:309 templates/js/translated/stock.js:146
msgid "Icon (optional) - Explore all available icons on"
msgstr ""
-#: templates/js/translated/part.js:330
+#: templates/js/translated/part.js:329
msgid "Create Part Category"
msgstr ""
-#: templates/js/translated/part.js:333
+#: templates/js/translated/part.js:332
msgid "Create new category after this one"
msgstr ""
-#: templates/js/translated/part.js:334
+#: templates/js/translated/part.js:333
msgid "Part category created"
msgstr ""
-#: templates/js/translated/part.js:348
+#: templates/js/translated/part.js:347
msgid "Edit Part Category"
msgstr ""
-#: templates/js/translated/part.js:361
+#: templates/js/translated/part.js:360
msgid "Are you sure you want to delete this part category?"
msgstr ""
-#: templates/js/translated/part.js:366
+#: templates/js/translated/part.js:365
msgid "Move to parent category"
msgstr ""
-#: templates/js/translated/part.js:375
+#: templates/js/translated/part.js:374
msgid "Delete Part Category"
msgstr ""
-#: templates/js/translated/part.js:379
+#: templates/js/translated/part.js:378
msgid "Action for parts in this category"
msgstr ""
-#: templates/js/translated/part.js:384
+#: templates/js/translated/part.js:383
msgid "Action for child categories"
msgstr ""
-#: templates/js/translated/part.js:408
+#: templates/js/translated/part.js:407
msgid "Create Part"
msgstr ""
-#: templates/js/translated/part.js:410
+#: templates/js/translated/part.js:409
msgid "Create another part after this one"
msgstr ""
-#: templates/js/translated/part.js:411
+#: templates/js/translated/part.js:410
msgid "Part created successfully"
msgstr ""
-#: templates/js/translated/part.js:439
+#: templates/js/translated/part.js:438
msgid "Edit Part"
msgstr ""
-#: templates/js/translated/part.js:441
+#: templates/js/translated/part.js:440
msgid "Part edited"
msgstr ""
-#: templates/js/translated/part.js:452
+#: templates/js/translated/part.js:451
msgid "Create Part Variant"
msgstr ""
-#: templates/js/translated/part.js:509
+#: templates/js/translated/part.js:508
msgid "Active Part"
msgstr ""
-#: templates/js/translated/part.js:510
+#: templates/js/translated/part.js:509
msgid "Part cannot be deleted as it is currently active"
msgstr ""
-#: templates/js/translated/part.js:524
+#: templates/js/translated/part.js:523
msgid "Deleting this part cannot be reversed"
msgstr ""
-#: templates/js/translated/part.js:526
+#: templates/js/translated/part.js:525
msgid "Any stock items for this part will be deleted"
msgstr ""
-#: templates/js/translated/part.js:527
+#: templates/js/translated/part.js:526
msgid "This part will be removed from any Bills of Material"
msgstr ""
-#: templates/js/translated/part.js:528
+#: templates/js/translated/part.js:527
msgid "All manufacturer and supplier information for this part will be deleted"
msgstr ""
-#: templates/js/translated/part.js:535
+#: templates/js/translated/part.js:534
msgid "Delete Part"
msgstr ""
-#: templates/js/translated/part.js:571
+#: templates/js/translated/part.js:570
msgid "You are subscribed to notifications for this item"
msgstr ""
-#: templates/js/translated/part.js:573
+#: templates/js/translated/part.js:572
msgid "You have subscribed to notifications for this item"
msgstr ""
-#: templates/js/translated/part.js:578
+#: templates/js/translated/part.js:577
msgid "Subscribe to notifications for this item"
msgstr ""
-#: templates/js/translated/part.js:580
+#: templates/js/translated/part.js:579
msgid "You have unsubscribed to notifications for this item"
msgstr ""
-#: templates/js/translated/part.js:597
+#: templates/js/translated/part.js:596
msgid "Validating the BOM will mark each line item as valid"
msgstr ""
-#: templates/js/translated/part.js:607
+#: templates/js/translated/part.js:606
msgid "Validate Bill of Materials"
msgstr ""
-#: templates/js/translated/part.js:610
+#: templates/js/translated/part.js:609
msgid "Validated Bill of Materials"
msgstr ""
-#: templates/js/translated/part.js:635
+#: templates/js/translated/part.js:634
msgid "Copy Bill of Materials"
msgstr ""
-#: templates/js/translated/part.js:663
-#: templates/js/translated/table_filters.js:660
+#: templates/js/translated/part.js:662
+#: templates/js/translated/table_filters.js:682
msgid "Low stock"
msgstr ""
-#: templates/js/translated/part.js:666
+#: templates/js/translated/part.js:665
msgid "No stock available"
msgstr ""
-#: templates/js/translated/part.js:726
+#: templates/js/translated/part.js:725
msgid "Demand"
msgstr ""
-#: templates/js/translated/part.js:749
+#: templates/js/translated/part.js:748
msgid "Unit"
msgstr ""
-#: templates/js/translated/part.js:768 templates/js/translated/part.js:1176
-msgid "Trackable part"
-msgstr ""
-
-#: templates/js/translated/part.js:772 templates/js/translated/part.js:1180
+#: templates/js/translated/part.js:771 templates/js/translated/part.js:1179
msgid "Virtual part"
msgstr ""
-#: templates/js/translated/part.js:784
+#: templates/js/translated/part.js:783
msgid "Subscribed part"
msgstr ""
-#: templates/js/translated/part.js:788
+#: templates/js/translated/part.js:787
msgid "Salable part"
msgstr ""
-#: templates/js/translated/part.js:863
+#: templates/js/translated/part.js:862
msgid "Schedule generation of a new stocktake report."
msgstr ""
-#: templates/js/translated/part.js:863
+#: templates/js/translated/part.js:862
msgid "Once complete, the stocktake report will be available for download."
msgstr ""
-#: templates/js/translated/part.js:871
+#: templates/js/translated/part.js:870
msgid "Generate Stocktake Report"
msgstr ""
-#: templates/js/translated/part.js:875
+#: templates/js/translated/part.js:874
msgid "Stocktake report scheduled"
msgstr ""
-#: templates/js/translated/part.js:1024
+#: templates/js/translated/part.js:1023
msgid "No stocktake information available"
msgstr ""
-#: templates/js/translated/part.js:1082 templates/js/translated/part.js:1118
+#: templates/js/translated/part.js:1081 templates/js/translated/part.js:1117
msgid "Edit Stocktake Entry"
msgstr ""
-#: templates/js/translated/part.js:1086 templates/js/translated/part.js:1128
+#: templates/js/translated/part.js:1085 templates/js/translated/part.js:1127
msgid "Delete Stocktake Entry"
msgstr ""
-#: templates/js/translated/part.js:1255
+#: templates/js/translated/part.js:1254
msgid "No variants found"
msgstr ""
-#: templates/js/translated/part.js:1572
+#: templates/js/translated/part.js:1571
msgid "No part parameter templates found"
msgstr ""
-#: templates/js/translated/part.js:1635
+#: templates/js/translated/part.js:1634
msgid "Edit Part Parameter Template"
msgstr ""
-#: templates/js/translated/part.js:1647
+#: templates/js/translated/part.js:1646
msgid "Any parameters which reference this template will also be deleted"
msgstr ""
-#: templates/js/translated/part.js:1655
+#: templates/js/translated/part.js:1654
msgid "Delete Part Parameter Template"
msgstr ""
-#: templates/js/translated/part.js:1689
-#: templates/js/translated/purchase_order.js:1618
+#: templates/js/translated/part.js:1688
+#: templates/js/translated/purchase_order.js:1633
msgid "No purchase orders found"
msgstr ""
-#: templates/js/translated/part.js:1832
-#: templates/js/translated/purchase_order.js:2121
-#: templates/js/translated/return_order.js:740
-#: templates/js/translated/sales_order.js:1855
+#: templates/js/translated/part.js:1831
+#: templates/js/translated/purchase_order.js:2131
+#: templates/js/translated/return_order.js:752
+#: templates/js/translated/sales_order.js:1867
msgid "This line item is overdue"
msgstr ""
-#: templates/js/translated/part.js:1877
-#: templates/js/translated/purchase_order.js:2188
+#: templates/js/translated/part.js:1876
+#: templates/js/translated/purchase_order.js:2198
msgid "Receive line item"
msgstr ""
-#: templates/js/translated/part.js:1944
+#: templates/js/translated/part.js:1943
msgid "Delete part relationship"
msgstr ""
-#: templates/js/translated/part.js:1966
+#: templates/js/translated/part.js:1965
msgid "Delete Part Relationship"
msgstr ""
-#: templates/js/translated/part.js:2054 templates/js/translated/part.js:2366
+#: templates/js/translated/part.js:2053 templates/js/translated/part.js:2442
msgid "No parts found"
msgstr ""
-#: templates/js/translated/part.js:2192
-msgid "parts"
-msgstr ""
-
-#: templates/js/translated/part.js:2276
-msgid "No category"
-msgstr ""
-
-#: templates/js/translated/part.js:2390 templates/js/translated/part.js:2611
-#: templates/js/translated/stock.js:2417
-msgid "Display as list"
-msgstr ""
-
-#: templates/js/translated/part.js:2406
-msgid "Display as grid"
-msgstr ""
-
-#: templates/js/translated/part.js:2472
+#: templates/js/translated/part.js:2174
msgid "Set the part category for the selected parts"
msgstr ""
-#: templates/js/translated/part.js:2477
+#: templates/js/translated/part.js:2179
msgid "Set Part Category"
msgstr ""
+#: templates/js/translated/part.js:2204
+msgid "Set category"
+msgstr ""
+
+#: templates/js/translated/part.js:2259
+msgid "parts"
+msgstr ""
+
+#: templates/js/translated/part.js:2352
+msgid "No category"
+msgstr ""
+
+#: templates/js/translated/part.js:2466 templates/js/translated/part.js:2596
+#: templates/js/translated/stock.js:2548
+msgid "Display as list"
+msgstr ""
+
#: templates/js/translated/part.js:2482
-msgid "Select Part Category"
+msgid "Display as grid"
msgstr ""
-#: templates/js/translated/part.js:2495
-msgid "Category is required"
-msgstr ""
-
-#: templates/js/translated/part.js:2595
+#: templates/js/translated/part.js:2580
msgid "No subcategories found"
msgstr ""
-#: templates/js/translated/part.js:2631 templates/js/translated/stock.js:2437
+#: templates/js/translated/part.js:2616 templates/js/translated/stock.js:2568
msgid "Display as tree"
msgstr ""
-#: templates/js/translated/part.js:2711
+#: templates/js/translated/part.js:2696
msgid "Load Subcategories"
msgstr ""
-#: templates/js/translated/part.js:2727
+#: templates/js/translated/part.js:2712
msgid "Subscribed category"
msgstr ""
-#: templates/js/translated/part.js:2807
+#: templates/js/translated/part.js:2792
msgid "No test templates matching query"
msgstr ""
-#: templates/js/translated/part.js:2858 templates/js/translated/stock.js:1380
+#: templates/js/translated/part.js:2843 templates/js/translated/stock.js:1379
msgid "Edit test result"
msgstr ""
-#: templates/js/translated/part.js:2859 templates/js/translated/stock.js:1381
-#: templates/js/translated/stock.js:1643
+#: templates/js/translated/part.js:2844 templates/js/translated/stock.js:1380
+#: templates/js/translated/stock.js:1642
msgid "Delete test result"
msgstr ""
-#: templates/js/translated/part.js:2863
+#: templates/js/translated/part.js:2848
msgid "This test is defined for a parent part"
msgstr ""
-#: templates/js/translated/part.js:2879
+#: templates/js/translated/part.js:2864
msgid "Edit Test Result Template"
msgstr ""
-#: templates/js/translated/part.js:2893
+#: templates/js/translated/part.js:2878
msgid "Delete Test Result Template"
msgstr ""
-#: templates/js/translated/part.js:2972 templates/js/translated/part.js:2973
+#: templates/js/translated/part.js:2957 templates/js/translated/part.js:2958
msgid "No date specified"
msgstr ""
-#: templates/js/translated/part.js:2975
+#: templates/js/translated/part.js:2960
msgid "Specified date is in the past"
msgstr ""
-#: templates/js/translated/part.js:2981
+#: templates/js/translated/part.js:2966
msgid "Speculative"
msgstr ""
-#: templates/js/translated/part.js:3031
+#: templates/js/translated/part.js:3016
msgid "No scheduling information available for this part"
msgstr ""
-#: templates/js/translated/part.js:3037
+#: templates/js/translated/part.js:3022
msgid "Error fetching scheduling information for this part"
msgstr ""
-#: templates/js/translated/part.js:3133
+#: templates/js/translated/part.js:3118
msgid "Scheduled Stock Quantities"
msgstr ""
-#: templates/js/translated/part.js:3149
+#: templates/js/translated/part.js:3134
msgid "Maximum Quantity"
msgstr ""
-#: templates/js/translated/part.js:3194
+#: templates/js/translated/part.js:3179
msgid "Minimum Stock Level"
msgstr ""
@@ -11168,234 +11297,234 @@ msgstr ""
msgid "Variant Part"
msgstr ""
-#: templates/js/translated/purchase_order.js:155
+#: templates/js/translated/purchase_order.js:166
msgid "Select purchase order to duplicate"
msgstr ""
-#: templates/js/translated/purchase_order.js:162
+#: templates/js/translated/purchase_order.js:173
msgid "Duplicate Line Items"
msgstr ""
-#: templates/js/translated/purchase_order.js:163
+#: templates/js/translated/purchase_order.js:174
msgid "Duplicate all line items from the selected order"
msgstr ""
-#: templates/js/translated/purchase_order.js:170
+#: templates/js/translated/purchase_order.js:181
msgid "Duplicate Extra Lines"
msgstr ""
-#: templates/js/translated/purchase_order.js:171
+#: templates/js/translated/purchase_order.js:182
msgid "Duplicate extra line items from the selected order"
msgstr ""
-#: templates/js/translated/purchase_order.js:192
+#: templates/js/translated/purchase_order.js:203
msgid "Edit Purchase Order"
msgstr ""
-#: templates/js/translated/purchase_order.js:209
+#: templates/js/translated/purchase_order.js:220
msgid "Duplication Options"
msgstr ""
-#: templates/js/translated/purchase_order.js:436
+#: templates/js/translated/purchase_order.js:447
msgid "Complete Purchase Order"
msgstr ""
-#: templates/js/translated/purchase_order.js:453
-#: templates/js/translated/return_order.js:195
-#: templates/js/translated/sales_order.js:485
+#: templates/js/translated/purchase_order.js:464
+#: templates/js/translated/return_order.js:207
+#: templates/js/translated/sales_order.js:497
msgid "Mark this order as complete?"
msgstr ""
-#: templates/js/translated/purchase_order.js:459
+#: templates/js/translated/purchase_order.js:470
msgid "All line items have been received"
msgstr ""
-#: templates/js/translated/purchase_order.js:464
+#: templates/js/translated/purchase_order.js:475
msgid "This order has line items which have not been marked as received."
msgstr ""
-#: templates/js/translated/purchase_order.js:465
-#: templates/js/translated/sales_order.js:499
+#: templates/js/translated/purchase_order.js:476
+#: templates/js/translated/sales_order.js:511
msgid "Completing this order means that the order and line items will no longer be editable."
msgstr ""
-#: templates/js/translated/purchase_order.js:488
+#: templates/js/translated/purchase_order.js:499
msgid "Cancel Purchase Order"
msgstr ""
-#: templates/js/translated/purchase_order.js:493
+#: templates/js/translated/purchase_order.js:504
msgid "Are you sure you wish to cancel this purchase order?"
msgstr ""
-#: templates/js/translated/purchase_order.js:499
+#: templates/js/translated/purchase_order.js:510
msgid "This purchase order can not be cancelled"
msgstr ""
-#: templates/js/translated/purchase_order.js:520
-#: templates/js/translated/return_order.js:149
+#: templates/js/translated/purchase_order.js:531
+#: templates/js/translated/return_order.js:161
msgid "After placing this order, line items will no longer be editable."
msgstr ""
-#: templates/js/translated/purchase_order.js:525
+#: templates/js/translated/purchase_order.js:536
msgid "Issue Purchase Order"
msgstr ""
-#: templates/js/translated/purchase_order.js:617
+#: templates/js/translated/purchase_order.js:628
msgid "At least one purchaseable part must be selected"
msgstr ""
-#: templates/js/translated/purchase_order.js:642
+#: templates/js/translated/purchase_order.js:653
msgid "Quantity to order"
msgstr ""
-#: templates/js/translated/purchase_order.js:651
+#: templates/js/translated/purchase_order.js:662
msgid "New supplier part"
msgstr ""
-#: templates/js/translated/purchase_order.js:669
+#: templates/js/translated/purchase_order.js:680
msgid "New purchase order"
msgstr ""
-#: templates/js/translated/purchase_order.js:701
+#: templates/js/translated/purchase_order.js:712
msgid "Add to purchase order"
msgstr ""
-#: templates/js/translated/purchase_order.js:845
+#: templates/js/translated/purchase_order.js:860
msgid "No matching supplier parts"
msgstr ""
-#: templates/js/translated/purchase_order.js:864
+#: templates/js/translated/purchase_order.js:879
msgid "No matching purchase orders"
msgstr ""
-#: templates/js/translated/purchase_order.js:1043
+#: templates/js/translated/purchase_order.js:1058
msgid "Select Line Items"
msgstr ""
-#: templates/js/translated/purchase_order.js:1044
-#: templates/js/translated/return_order.js:480
+#: templates/js/translated/purchase_order.js:1059
+#: templates/js/translated/return_order.js:492
msgid "At least one line item must be selected"
msgstr ""
-#: templates/js/translated/purchase_order.js:1074
+#: templates/js/translated/purchase_order.js:1089
msgid "Received Quantity"
msgstr ""
-#: templates/js/translated/purchase_order.js:1085
+#: templates/js/translated/purchase_order.js:1100
msgid "Quantity to receive"
msgstr ""
-#: templates/js/translated/purchase_order.js:1161
+#: templates/js/translated/purchase_order.js:1176
msgid "Stock Status"
msgstr ""
-#: templates/js/translated/purchase_order.js:1175
+#: templates/js/translated/purchase_order.js:1190
msgid "Add barcode"
msgstr ""
-#: templates/js/translated/purchase_order.js:1176
+#: templates/js/translated/purchase_order.js:1191
msgid "Remove barcode"
msgstr ""
-#: templates/js/translated/purchase_order.js:1179
+#: templates/js/translated/purchase_order.js:1194
msgid "Specify location"
msgstr ""
-#: templates/js/translated/purchase_order.js:1187
+#: templates/js/translated/purchase_order.js:1202
msgid "Add batch code"
msgstr ""
-#: templates/js/translated/purchase_order.js:1198
+#: templates/js/translated/purchase_order.js:1213
msgid "Add serial numbers"
msgstr ""
-#: templates/js/translated/purchase_order.js:1250
+#: templates/js/translated/purchase_order.js:1265
msgid "Serials"
msgstr ""
-#: templates/js/translated/purchase_order.js:1275
+#: templates/js/translated/purchase_order.js:1290
msgid "Order Code"
msgstr ""
-#: templates/js/translated/purchase_order.js:1277
+#: templates/js/translated/purchase_order.js:1292
msgid "Quantity to Receive"
msgstr ""
-#: templates/js/translated/purchase_order.js:1299
-#: templates/js/translated/return_order.js:545
+#: templates/js/translated/purchase_order.js:1314
+#: templates/js/translated/return_order.js:557
msgid "Confirm receipt of items"
msgstr ""
-#: templates/js/translated/purchase_order.js:1300
+#: templates/js/translated/purchase_order.js:1315
msgid "Receive Purchase Order Items"
msgstr ""
-#: templates/js/translated/purchase_order.js:1368
+#: templates/js/translated/purchase_order.js:1383
msgid "Scan Item Barcode"
msgstr ""
-#: templates/js/translated/purchase_order.js:1369
+#: templates/js/translated/purchase_order.js:1384
msgid "Scan barcode on incoming item (must not match any existing stock items)"
msgstr ""
-#: templates/js/translated/purchase_order.js:1383
+#: templates/js/translated/purchase_order.js:1398
msgid "Invalid barcode data"
msgstr ""
-#: templates/js/translated/purchase_order.js:1645
-#: templates/js/translated/return_order.js:274
-#: templates/js/translated/sales_order.js:762
-#: templates/js/translated/sales_order.js:986
+#: templates/js/translated/purchase_order.js:1660
+#: templates/js/translated/return_order.js:286
+#: templates/js/translated/sales_order.js:774
+#: templates/js/translated/sales_order.js:998
msgid "Order is overdue"
msgstr ""
-#: templates/js/translated/purchase_order.js:1707
-#: templates/js/translated/return_order.js:342
-#: templates/js/translated/sales_order.js:839
-#: templates/js/translated/sales_order.js:999
+#: templates/js/translated/purchase_order.js:1722
+#: templates/js/translated/return_order.js:354
+#: templates/js/translated/sales_order.js:851
+#: templates/js/translated/sales_order.js:1011
msgid "Items"
msgstr ""
-#: templates/js/translated/purchase_order.js:1806
+#: templates/js/translated/purchase_order.js:1821
msgid "All selected Line items will be deleted"
msgstr ""
-#: templates/js/translated/purchase_order.js:1824
+#: templates/js/translated/purchase_order.js:1839
msgid "Delete selected Line items?"
msgstr ""
-#: templates/js/translated/purchase_order.js:1884
-#: templates/js/translated/sales_order.js:2047
+#: templates/js/translated/purchase_order.js:1894
+#: templates/js/translated/sales_order.js:2059
msgid "Duplicate Line Item"
msgstr ""
-#: templates/js/translated/purchase_order.js:1899
-#: templates/js/translated/return_order.js:464
-#: templates/js/translated/return_order.js:653
-#: templates/js/translated/sales_order.js:2060
+#: templates/js/translated/purchase_order.js:1909
+#: templates/js/translated/return_order.js:476
+#: templates/js/translated/return_order.js:665
+#: templates/js/translated/sales_order.js:2072
msgid "Edit Line Item"
msgstr ""
-#: templates/js/translated/purchase_order.js:1910
-#: templates/js/translated/return_order.js:666
-#: templates/js/translated/sales_order.js:2071
+#: templates/js/translated/purchase_order.js:1920
+#: templates/js/translated/return_order.js:678
+#: templates/js/translated/sales_order.js:2083
msgid "Delete Line Item"
msgstr ""
-#: templates/js/translated/purchase_order.js:2192
-#: templates/js/translated/sales_order.js:2001
+#: templates/js/translated/purchase_order.js:2202
+#: templates/js/translated/sales_order.js:2013
msgid "Duplicate line item"
msgstr ""
-#: templates/js/translated/purchase_order.js:2193
-#: templates/js/translated/return_order.js:785
-#: templates/js/translated/sales_order.js:2002
+#: templates/js/translated/purchase_order.js:2203
+#: templates/js/translated/return_order.js:797
+#: templates/js/translated/sales_order.js:2014
msgid "Edit line item"
msgstr ""
-#: templates/js/translated/purchase_order.js:2194
-#: templates/js/translated/return_order.js:789
-#: templates/js/translated/sales_order.js:2008
+#: templates/js/translated/purchase_order.js:2204
+#: templates/js/translated/return_order.js:801
+#: templates/js/translated/sales_order.js:2020
msgid "Delete line item"
msgstr ""
@@ -11424,941 +11553,973 @@ msgstr ""
msgid "Add Customer"
msgstr ""
-#: templates/js/translated/return_order.js:119
+#: templates/js/translated/return_order.js:131
msgid "Create Return Order"
msgstr ""
-#: templates/js/translated/return_order.js:134
+#: templates/js/translated/return_order.js:146
msgid "Edit Return Order"
msgstr ""
-#: templates/js/translated/return_order.js:154
+#: templates/js/translated/return_order.js:166
msgid "Issue Return Order"
msgstr ""
-#: templates/js/translated/return_order.js:171
+#: templates/js/translated/return_order.js:183
msgid "Are you sure you wish to cancel this Return Order?"
msgstr ""
-#: templates/js/translated/return_order.js:178
+#: templates/js/translated/return_order.js:190
msgid "Cancel Return Order"
msgstr ""
-#: templates/js/translated/return_order.js:203
+#: templates/js/translated/return_order.js:215
msgid "Complete Return Order"
msgstr ""
-#: templates/js/translated/return_order.js:251
+#: templates/js/translated/return_order.js:263
msgid "No return orders found"
msgstr ""
-#: templates/js/translated/return_order.js:288
-#: templates/js/translated/sales_order.js:776
+#: templates/js/translated/return_order.js:300
+#: templates/js/translated/sales_order.js:788
msgid "Invalid Customer"
msgstr ""
-#: templates/js/translated/return_order.js:546
+#: templates/js/translated/return_order.js:558
msgid "Receive Return Order Items"
msgstr ""
-#: templates/js/translated/return_order.js:677
-#: templates/js/translated/sales_order.js:2207
+#: templates/js/translated/return_order.js:689
+#: templates/js/translated/sales_order.js:2219
msgid "No matching line items"
msgstr ""
-#: templates/js/translated/return_order.js:782
+#: templates/js/translated/return_order.js:794
msgid "Mark item as received"
msgstr ""
-#: templates/js/translated/sales_order.js:146
+#: templates/js/translated/sales_order.js:158
msgid "Create Sales Order"
msgstr ""
-#: templates/js/translated/sales_order.js:161
+#: templates/js/translated/sales_order.js:173
msgid "Edit Sales Order"
msgstr ""
-#: templates/js/translated/sales_order.js:276
+#: templates/js/translated/sales_order.js:288
msgid "No stock items have been allocated to this shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:281
+#: templates/js/translated/sales_order.js:293
msgid "The following stock items will be shipped"
msgstr ""
-#: templates/js/translated/sales_order.js:321
+#: templates/js/translated/sales_order.js:333
msgid "Complete Shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:345
+#: templates/js/translated/sales_order.js:357
msgid "Confirm Shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:401
+#: templates/js/translated/sales_order.js:413
msgid "No pending shipments found"
msgstr ""
-#: templates/js/translated/sales_order.js:405
+#: templates/js/translated/sales_order.js:417
msgid "No stock items have been allocated to pending shipments"
msgstr ""
-#: templates/js/translated/sales_order.js:415
+#: templates/js/translated/sales_order.js:427
msgid "Complete Shipments"
msgstr ""
-#: templates/js/translated/sales_order.js:437
+#: templates/js/translated/sales_order.js:449
msgid "Skip"
msgstr ""
-#: templates/js/translated/sales_order.js:498
+#: templates/js/translated/sales_order.js:510
msgid "This order has line items which have not been completed."
msgstr ""
-#: templates/js/translated/sales_order.js:520
+#: templates/js/translated/sales_order.js:532
msgid "Issue this Sales Order?"
msgstr ""
-#: templates/js/translated/sales_order.js:525
+#: templates/js/translated/sales_order.js:537
msgid "Issue Sales Order"
msgstr ""
-#: templates/js/translated/sales_order.js:544
+#: templates/js/translated/sales_order.js:556
msgid "Cancel Sales Order"
msgstr ""
-#: templates/js/translated/sales_order.js:549
+#: templates/js/translated/sales_order.js:561
msgid "Cancelling this order means that the order will no longer be editable."
msgstr ""
-#: templates/js/translated/sales_order.js:603
+#: templates/js/translated/sales_order.js:615
msgid "Create New Shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:713
+#: templates/js/translated/sales_order.js:725
msgid "No sales orders found"
msgstr ""
-#: templates/js/translated/sales_order.js:896
+#: templates/js/translated/sales_order.js:908
msgid "Edit shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:899
+#: templates/js/translated/sales_order.js:911
msgid "Complete shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:904
+#: templates/js/translated/sales_order.js:916
msgid "Delete shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:921
+#: templates/js/translated/sales_order.js:933
msgid "Edit Shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:936
+#: templates/js/translated/sales_order.js:948
msgid "Delete Shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:969
+#: templates/js/translated/sales_order.js:981
msgid "No matching shipments found"
msgstr ""
-#: templates/js/translated/sales_order.js:994
+#: templates/js/translated/sales_order.js:1006
msgid "Shipment Reference"
msgstr ""
-#: templates/js/translated/sales_order.js:1018
-#: templates/js/translated/sales_order.js:1515
+#: templates/js/translated/sales_order.js:1030
+#: templates/js/translated/sales_order.js:1527
msgid "Not shipped"
msgstr ""
-#: templates/js/translated/sales_order.js:1036
+#: templates/js/translated/sales_order.js:1048
msgid "Tracking"
msgstr ""
-#: templates/js/translated/sales_order.js:1040
+#: templates/js/translated/sales_order.js:1052
msgid "Invoice"
msgstr ""
-#: templates/js/translated/sales_order.js:1207
+#: templates/js/translated/sales_order.js:1219
msgid "Add Shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:1258
+#: templates/js/translated/sales_order.js:1270
msgid "Confirm stock allocation"
msgstr ""
-#: templates/js/translated/sales_order.js:1259
+#: templates/js/translated/sales_order.js:1271
msgid "Allocate Stock Items to Sales Order"
msgstr ""
-#: templates/js/translated/sales_order.js:1463
+#: templates/js/translated/sales_order.js:1475
msgid "No sales order allocations found"
msgstr ""
-#: templates/js/translated/sales_order.js:1555
+#: templates/js/translated/sales_order.js:1567
msgid "Edit Stock Allocation"
msgstr ""
-#: templates/js/translated/sales_order.js:1569
+#: templates/js/translated/sales_order.js:1581
msgid "Confirm Delete Operation"
msgstr ""
-#: templates/js/translated/sales_order.js:1570
+#: templates/js/translated/sales_order.js:1582
msgid "Delete Stock Allocation"
msgstr ""
-#: templates/js/translated/sales_order.js:1609
-#: templates/js/translated/sales_order.js:1696
-#: templates/js/translated/stock.js:1688
+#: templates/js/translated/sales_order.js:1621
+#: templates/js/translated/sales_order.js:1708
+#: templates/js/translated/stock.js:1687
msgid "Shipped to customer"
msgstr ""
-#: templates/js/translated/sales_order.js:1617
-#: templates/js/translated/sales_order.js:1705
+#: templates/js/translated/sales_order.js:1629
+#: templates/js/translated/sales_order.js:1717
msgid "Stock location not specified"
msgstr ""
-#: templates/js/translated/sales_order.js:1985
+#: templates/js/translated/sales_order.js:1997
msgid "Allocate serial numbers"
msgstr ""
-#: templates/js/translated/sales_order.js:1989
+#: templates/js/translated/sales_order.js:2001
msgid "Purchase stock"
msgstr ""
-#: templates/js/translated/sales_order.js:1998
-#: templates/js/translated/sales_order.js:2185
+#: templates/js/translated/sales_order.js:2010
+#: templates/js/translated/sales_order.js:2197
msgid "Calculate price"
msgstr ""
-#: templates/js/translated/sales_order.js:2012
+#: templates/js/translated/sales_order.js:2024
msgid "Cannot be deleted as items have been shipped"
msgstr ""
-#: templates/js/translated/sales_order.js:2015
+#: templates/js/translated/sales_order.js:2027
msgid "Cannot be deleted as items have been allocated"
msgstr ""
-#: templates/js/translated/sales_order.js:2086
+#: templates/js/translated/sales_order.js:2098
msgid "Allocate Serial Numbers"
msgstr ""
-#: templates/js/translated/sales_order.js:2193
+#: templates/js/translated/sales_order.js:2205
msgid "Update Unit Price"
msgstr ""
-#: templates/js/translated/search.js:312
+#: templates/js/translated/search.js:270
msgid "No results"
msgstr ""
-#: templates/js/translated/search.js:334 templates/search.html:25
+#: templates/js/translated/search.js:292 templates/search.html:25
msgid "Enter search query"
msgstr ""
-#: templates/js/translated/search.js:384
+#: templates/js/translated/search.js:342
msgid "result"
msgstr ""
-#: templates/js/translated/search.js:384
+#: templates/js/translated/search.js:342
msgid "results"
msgstr ""
-#: templates/js/translated/search.js:394
+#: templates/js/translated/search.js:352
msgid "Minimize results"
msgstr ""
-#: templates/js/translated/search.js:397
+#: templates/js/translated/search.js:355
msgid "Remove results"
msgstr ""
-#: templates/js/translated/stock.js:98
+#: templates/js/translated/stock.js:97
msgid "Serialize Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:129
+#: templates/js/translated/stock.js:128
msgid "Confirm Stock Serialization"
msgstr ""
-#: templates/js/translated/stock.js:138
+#: templates/js/translated/stock.js:137
msgid "Parent stock location"
msgstr ""
-#: templates/js/translated/stock.js:173
+#: templates/js/translated/stock.js:172
msgid "Edit Stock Location"
msgstr ""
-#: templates/js/translated/stock.js:188
+#: templates/js/translated/stock.js:187
msgid "New Stock Location"
msgstr ""
-#: templates/js/translated/stock.js:190
+#: templates/js/translated/stock.js:189
msgid "Create another location after this one"
msgstr ""
-#: templates/js/translated/stock.js:191
+#: templates/js/translated/stock.js:190
msgid "Stock location created"
msgstr ""
-#: templates/js/translated/stock.js:205
+#: templates/js/translated/stock.js:204
msgid "Are you sure you want to delete this stock location?"
msgstr ""
-#: templates/js/translated/stock.js:212
+#: templates/js/translated/stock.js:211
msgid "Move to parent stock location"
msgstr ""
-#: templates/js/translated/stock.js:221
+#: templates/js/translated/stock.js:220
msgid "Delete Stock Location"
msgstr ""
-#: templates/js/translated/stock.js:225
+#: templates/js/translated/stock.js:224
msgid "Action for stock items in this stock location"
msgstr ""
-#: templates/js/translated/stock.js:230
+#: templates/js/translated/stock.js:229
msgid "Action for sub-locations"
msgstr ""
-#: templates/js/translated/stock.js:284
+#: templates/js/translated/stock.js:283
msgid "This part cannot be serialized"
msgstr ""
-#: templates/js/translated/stock.js:320
+#: templates/js/translated/stock.js:319
msgid "Add given quantity as packs instead of individual items"
msgstr ""
-#: templates/js/translated/stock.js:329
+#: templates/js/translated/stock.js:328
msgid "Enter initial quantity for this stock item"
msgstr ""
-#: templates/js/translated/stock.js:335
+#: templates/js/translated/stock.js:334
msgid "Enter serial numbers for new stock (or leave blank)"
msgstr ""
-#: templates/js/translated/stock.js:406
+#: templates/js/translated/stock.js:405
msgid "Stock item duplicated"
msgstr ""
-#: templates/js/translated/stock.js:426
+#: templates/js/translated/stock.js:425
msgid "Duplicate Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:442
+#: templates/js/translated/stock.js:441
msgid "Are you sure you want to delete this stock item?"
msgstr ""
-#: templates/js/translated/stock.js:447
+#: templates/js/translated/stock.js:446
msgid "Delete Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:468
+#: templates/js/translated/stock.js:467
msgid "Edit Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:510
+#: templates/js/translated/stock.js:509
msgid "Create another item after this one"
msgstr ""
-#: templates/js/translated/stock.js:522
+#: templates/js/translated/stock.js:521
msgid "Created new stock item"
msgstr ""
-#: templates/js/translated/stock.js:535
+#: templates/js/translated/stock.js:534
msgid "Created multiple stock items"
msgstr ""
-#: templates/js/translated/stock.js:560
+#: templates/js/translated/stock.js:559
msgid "Find Serial Number"
msgstr ""
-#: templates/js/translated/stock.js:564 templates/js/translated/stock.js:565
+#: templates/js/translated/stock.js:563 templates/js/translated/stock.js:564
msgid "Enter serial number"
msgstr ""
-#: templates/js/translated/stock.js:581
+#: templates/js/translated/stock.js:580
msgid "Enter a serial number"
msgstr ""
-#: templates/js/translated/stock.js:601
+#: templates/js/translated/stock.js:600
msgid "No matching serial number"
msgstr ""
-#: templates/js/translated/stock.js:610
+#: templates/js/translated/stock.js:609
msgid "More than one matching result found"
msgstr ""
-#: templates/js/translated/stock.js:718
+#: templates/js/translated/stock.js:717
msgid "Confirm stock assignment"
msgstr ""
-#: templates/js/translated/stock.js:719
+#: templates/js/translated/stock.js:718
msgid "Assign Stock to Customer"
msgstr ""
-#: templates/js/translated/stock.js:796
+#: templates/js/translated/stock.js:795
msgid "Warning: Merge operation cannot be reversed"
msgstr ""
-#: templates/js/translated/stock.js:797
+#: templates/js/translated/stock.js:796
msgid "Some information will be lost when merging stock items"
msgstr ""
-#: templates/js/translated/stock.js:799
+#: templates/js/translated/stock.js:798
msgid "Stock transaction history will be deleted for merged items"
msgstr ""
-#: templates/js/translated/stock.js:800
+#: templates/js/translated/stock.js:799
msgid "Supplier part information will be deleted for merged items"
msgstr ""
-#: templates/js/translated/stock.js:891
+#: templates/js/translated/stock.js:890
msgid "Confirm stock item merge"
msgstr ""
-#: templates/js/translated/stock.js:892
+#: templates/js/translated/stock.js:891
msgid "Merge Stock Items"
msgstr ""
-#: templates/js/translated/stock.js:987
+#: templates/js/translated/stock.js:986
msgid "Transfer Stock"
msgstr ""
-#: templates/js/translated/stock.js:988
+#: templates/js/translated/stock.js:987
msgid "Move"
msgstr ""
-#: templates/js/translated/stock.js:994
+#: templates/js/translated/stock.js:993
msgid "Count Stock"
msgstr ""
-#: templates/js/translated/stock.js:995
+#: templates/js/translated/stock.js:994
msgid "Count"
msgstr ""
-#: templates/js/translated/stock.js:999
+#: templates/js/translated/stock.js:998
msgid "Remove Stock"
msgstr ""
-#: templates/js/translated/stock.js:1000
+#: templates/js/translated/stock.js:999
msgid "Take"
msgstr ""
-#: templates/js/translated/stock.js:1004
+#: templates/js/translated/stock.js:1003
msgid "Add Stock"
msgstr ""
-#: templates/js/translated/stock.js:1005 users/models.py:243
+#: templates/js/translated/stock.js:1004 users/models.py:249
msgid "Add"
msgstr ""
-#: templates/js/translated/stock.js:1009
+#: templates/js/translated/stock.js:1008
msgid "Delete Stock"
msgstr ""
-#: templates/js/translated/stock.js:1106
+#: templates/js/translated/stock.js:1105
msgid "Quantity cannot be adjusted for serialized stock"
msgstr ""
-#: templates/js/translated/stock.js:1106
+#: templates/js/translated/stock.js:1105
msgid "Specify stock quantity"
msgstr ""
-#: templates/js/translated/stock.js:1140
+#: templates/js/translated/stock.js:1139 templates/js/translated/stock.js:3151
msgid "Select Stock Items"
msgstr ""
-#: templates/js/translated/stock.js:1141
-msgid "You must select at least one available stock item"
+#: templates/js/translated/stock.js:1140
+msgid "Select at least one available stock item"
msgstr ""
-#: templates/js/translated/stock.js:1168
+#: templates/js/translated/stock.js:1167
msgid "Confirm stock adjustment"
msgstr ""
-#: templates/js/translated/stock.js:1304
+#: templates/js/translated/stock.js:1303
msgid "PASS"
msgstr ""
-#: templates/js/translated/stock.js:1306
+#: templates/js/translated/stock.js:1305
msgid "FAIL"
msgstr ""
-#: templates/js/translated/stock.js:1311
+#: templates/js/translated/stock.js:1310
msgid "NO RESULT"
msgstr ""
-#: templates/js/translated/stock.js:1373
+#: templates/js/translated/stock.js:1372
msgid "Pass test"
msgstr ""
-#: templates/js/translated/stock.js:1376
+#: templates/js/translated/stock.js:1375
msgid "Add test result"
msgstr ""
-#: templates/js/translated/stock.js:1400
+#: templates/js/translated/stock.js:1399
msgid "No test results found"
msgstr ""
-#: templates/js/translated/stock.js:1464
+#: templates/js/translated/stock.js:1463
msgid "Test Date"
msgstr ""
-#: templates/js/translated/stock.js:1626
+#: templates/js/translated/stock.js:1625
msgid "Edit Test Result"
msgstr ""
-#: templates/js/translated/stock.js:1648
+#: templates/js/translated/stock.js:1647
msgid "Delete Test Result"
msgstr ""
-#: templates/js/translated/stock.js:1680
+#: templates/js/translated/stock.js:1679
msgid "In production"
msgstr ""
-#: templates/js/translated/stock.js:1684
+#: templates/js/translated/stock.js:1683
msgid "Installed in Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:1692
+#: templates/js/translated/stock.js:1691
msgid "Assigned to Sales Order"
msgstr ""
-#: templates/js/translated/stock.js:1698
+#: templates/js/translated/stock.js:1697
msgid "No stock location set"
msgstr ""
-#: templates/js/translated/stock.js:1746
+#: templates/js/translated/stock.js:1753
+msgid "Change stock status"
+msgstr ""
+
+#: templates/js/translated/stock.js:1762
+msgid "Merge stock"
+msgstr ""
+
+#: templates/js/translated/stock.js:1811
+msgid "Delete stock"
+msgstr ""
+
+#: templates/js/translated/stock.js:1866
msgid "stock items"
msgstr ""
-#: templates/js/translated/stock.js:1850
+#: templates/js/translated/stock.js:1871
+msgid "Scan to location"
+msgstr ""
+
+#: templates/js/translated/stock.js:1882
+msgid "Stock Actions"
+msgstr ""
+
+#: templates/js/translated/stock.js:1929
+msgid "Load installed items"
+msgstr ""
+
+#: templates/js/translated/stock.js:2007
msgid "Stock item is in production"
msgstr ""
-#: templates/js/translated/stock.js:1855
+#: templates/js/translated/stock.js:2012
msgid "Stock item assigned to sales order"
msgstr ""
-#: templates/js/translated/stock.js:1858
+#: templates/js/translated/stock.js:2015
msgid "Stock item assigned to customer"
msgstr ""
-#: templates/js/translated/stock.js:1861
+#: templates/js/translated/stock.js:2018
msgid "Serialized stock item has been allocated"
msgstr ""
-#: templates/js/translated/stock.js:1863
+#: templates/js/translated/stock.js:2020
msgid "Stock item has been fully allocated"
msgstr ""
-#: templates/js/translated/stock.js:1865
+#: templates/js/translated/stock.js:2022
msgid "Stock item has been partially allocated"
msgstr ""
-#: templates/js/translated/stock.js:1868
+#: templates/js/translated/stock.js:2025
msgid "Stock item has been installed in another item"
msgstr ""
-#: templates/js/translated/stock.js:1870
+#: templates/js/translated/stock.js:2027
msgid "Stock item has been consumed by a build order"
msgstr ""
-#: templates/js/translated/stock.js:1874
+#: templates/js/translated/stock.js:2031
msgid "Stock item has expired"
msgstr ""
-#: templates/js/translated/stock.js:1876
+#: templates/js/translated/stock.js:2033
msgid "Stock item will expire soon"
msgstr ""
-#: templates/js/translated/stock.js:1881
+#: templates/js/translated/stock.js:2038
msgid "Stock item has been rejected"
msgstr ""
-#: templates/js/translated/stock.js:1883
+#: templates/js/translated/stock.js:2040
msgid "Stock item is lost"
msgstr ""
-#: templates/js/translated/stock.js:1885
+#: templates/js/translated/stock.js:2042
msgid "Stock item is destroyed"
msgstr ""
-#: templates/js/translated/stock.js:1889
-#: templates/js/translated/table_filters.js:296
+#: templates/js/translated/stock.js:2046
+#: templates/js/translated/table_filters.js:302
msgid "Depleted"
msgstr ""
-#: templates/js/translated/stock.js:2031
+#: templates/js/translated/stock.js:2188
msgid "Supplier part not specified"
msgstr ""
-#: templates/js/translated/stock.js:2078
+#: templates/js/translated/stock.js:2235
msgid "Stock Value"
msgstr ""
-#: templates/js/translated/stock.js:2170
+#: templates/js/translated/stock.js:2358
msgid "No stock items matching query"
msgstr ""
-#: templates/js/translated/stock.js:2319
+#: templates/js/translated/stock.js:2450
msgid "stock locations"
msgstr ""
-#: templates/js/translated/stock.js:2476
+#: templates/js/translated/stock.js:2607
msgid "Load Subloactions"
msgstr ""
-#: templates/js/translated/stock.js:2583
+#: templates/js/translated/stock.js:2714
msgid "Details"
msgstr ""
-#: templates/js/translated/stock.js:2587
+#: templates/js/translated/stock.js:2718
msgid "No changes"
msgstr ""
-#: templates/js/translated/stock.js:2599
+#: templates/js/translated/stock.js:2730
msgid "Part information unavailable"
msgstr ""
-#: templates/js/translated/stock.js:2621
+#: templates/js/translated/stock.js:2752
msgid "Location no longer exists"
msgstr ""
-#: templates/js/translated/stock.js:2638
+#: templates/js/translated/stock.js:2769
msgid "Build order no longer exists"
msgstr ""
-#: templates/js/translated/stock.js:2653
+#: templates/js/translated/stock.js:2784
msgid "Purchase order no longer exists"
msgstr ""
-#: templates/js/translated/stock.js:2670
+#: templates/js/translated/stock.js:2801
msgid "Sales Order no longer exists"
msgstr ""
-#: templates/js/translated/stock.js:2687
+#: templates/js/translated/stock.js:2818
msgid "Return Order no longer exists"
msgstr ""
-#: templates/js/translated/stock.js:2706
+#: templates/js/translated/stock.js:2837
msgid "Customer no longer exists"
msgstr ""
-#: templates/js/translated/stock.js:2724
+#: templates/js/translated/stock.js:2855
msgid "Stock item no longer exists"
msgstr ""
-#: templates/js/translated/stock.js:2742
+#: templates/js/translated/stock.js:2873
msgid "Added"
msgstr ""
-#: templates/js/translated/stock.js:2750
+#: templates/js/translated/stock.js:2881
msgid "Removed"
msgstr ""
-#: templates/js/translated/stock.js:2826
+#: templates/js/translated/stock.js:2953
msgid "No installed items"
msgstr ""
-#: templates/js/translated/stock.js:2876 templates/js/translated/stock.js:2911
+#: templates/js/translated/stock.js:3003 templates/js/translated/stock.js:3038
msgid "Uninstall Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:2929
+#: templates/js/translated/stock.js:3056
msgid "Select stock item to uninstall"
msgstr ""
-#: templates/js/translated/stock.js:2950
+#: templates/js/translated/stock.js:3077
msgid "Install another stock item into this item"
msgstr ""
-#: templates/js/translated/stock.js:2951
+#: templates/js/translated/stock.js:3078
msgid "Stock items can only be installed if they meet the following criteria"
msgstr ""
-#: templates/js/translated/stock.js:2953
+#: templates/js/translated/stock.js:3080
msgid "The Stock Item links to a Part which is the BOM for this Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:2954
+#: templates/js/translated/stock.js:3081
msgid "The Stock Item is currently available in stock"
msgstr ""
-#: templates/js/translated/stock.js:2955
+#: templates/js/translated/stock.js:3082
msgid "The Stock Item is not already installed in another item"
msgstr ""
-#: templates/js/translated/stock.js:2956
+#: templates/js/translated/stock.js:3083
msgid "The Stock Item is tracked by either a batch code or serial number"
msgstr ""
-#: templates/js/translated/stock.js:2969
+#: templates/js/translated/stock.js:3096
msgid "Select part to install"
msgstr ""
+#: templates/js/translated/stock.js:3152
+msgid "Select one or more stock items"
+msgstr ""
+
+#: templates/js/translated/stock.js:3165
+msgid "Selected stock items"
+msgstr ""
+
+#: templates/js/translated/stock.js:3169
+msgid "Change Stock Status"
+msgstr ""
+
#: templates/js/translated/table_filters.js:50
msgid "Has project code"
msgstr ""
-#: templates/js/translated/table_filters.js:59
-#: templates/js/translated/table_filters.js:518
-#: templates/js/translated/table_filters.js:530
-#: templates/js/translated/table_filters.js:571
+#: templates/js/translated/table_filters.js:65
+#: templates/js/translated/table_filters.js:540
+#: templates/js/translated/table_filters.js:552
+#: templates/js/translated/table_filters.js:593
msgid "Order status"
msgstr ""
-#: templates/js/translated/table_filters.js:64
-#: templates/js/translated/table_filters.js:535
-#: templates/js/translated/table_filters.js:561
-#: templates/js/translated/table_filters.js:576
+#: templates/js/translated/table_filters.js:70
+#: templates/js/translated/table_filters.js:557
+#: templates/js/translated/table_filters.js:583
+#: templates/js/translated/table_filters.js:598
msgid "Outstanding"
msgstr ""
-#: templates/js/translated/table_filters.js:72
-#: templates/js/translated/table_filters.js:458
-#: templates/js/translated/table_filters.js:543
-#: templates/js/translated/table_filters.js:584
+#: templates/js/translated/table_filters.js:78
+#: templates/js/translated/table_filters.js:464
+#: templates/js/translated/table_filters.js:565
+#: templates/js/translated/table_filters.js:606
msgid "Assigned to me"
msgstr ""
-#: templates/js/translated/table_filters.js:128
+#: templates/js/translated/table_filters.js:134
msgid "Trackable Part"
msgstr ""
-#: templates/js/translated/table_filters.js:132
+#: templates/js/translated/table_filters.js:138
msgid "Assembled Part"
msgstr ""
-#: templates/js/translated/table_filters.js:136
+#: templates/js/translated/table_filters.js:142
msgid "Has Available Stock"
msgstr ""
-#: templates/js/translated/table_filters.js:152
+#: templates/js/translated/table_filters.js:158
msgid "Allow Variant Stock"
msgstr ""
-#: templates/js/translated/table_filters.js:164
-#: templates/js/translated/table_filters.js:692
+#: templates/js/translated/table_filters.js:170
+#: templates/js/translated/table_filters.js:714
msgid "Has Pricing"
msgstr ""
-#: templates/js/translated/table_filters.js:204
-#: templates/js/translated/table_filters.js:291
+#: templates/js/translated/table_filters.js:210
+#: templates/js/translated/table_filters.js:297
msgid "Include sublocations"
msgstr ""
-#: templates/js/translated/table_filters.js:205
+#: templates/js/translated/table_filters.js:211
msgid "Include locations"
msgstr ""
-#: templates/js/translated/table_filters.js:224
-#: templates/js/translated/table_filters.js:225
-#: templates/js/translated/table_filters.js:624
+#: templates/js/translated/table_filters.js:230
+#: templates/js/translated/table_filters.js:231
+#: templates/js/translated/table_filters.js:646
msgid "Include subcategories"
msgstr ""
-#: templates/js/translated/table_filters.js:233
-#: templates/js/translated/table_filters.js:672
+#: templates/js/translated/table_filters.js:239
+#: templates/js/translated/table_filters.js:694
msgid "Subscribed"
msgstr ""
-#: templates/js/translated/table_filters.js:244
-#: templates/js/translated/table_filters.js:326
+#: templates/js/translated/table_filters.js:250
+#: templates/js/translated/table_filters.js:332
msgid "Is Serialized"
msgstr ""
-#: templates/js/translated/table_filters.js:247
-#: templates/js/translated/table_filters.js:333
+#: templates/js/translated/table_filters.js:253
+#: templates/js/translated/table_filters.js:339
msgid "Serial number GTE"
msgstr ""
-#: templates/js/translated/table_filters.js:248
-#: templates/js/translated/table_filters.js:334
+#: templates/js/translated/table_filters.js:254
+#: templates/js/translated/table_filters.js:340
msgid "Serial number greater than or equal to"
msgstr ""
-#: templates/js/translated/table_filters.js:251
-#: templates/js/translated/table_filters.js:337
+#: templates/js/translated/table_filters.js:257
+#: templates/js/translated/table_filters.js:343
msgid "Serial number LTE"
msgstr ""
-#: templates/js/translated/table_filters.js:252
-#: templates/js/translated/table_filters.js:338
+#: templates/js/translated/table_filters.js:258
+#: templates/js/translated/table_filters.js:344
msgid "Serial number less than or equal to"
msgstr ""
-#: templates/js/translated/table_filters.js:255
-#: templates/js/translated/table_filters.js:256
-#: templates/js/translated/table_filters.js:329
-#: templates/js/translated/table_filters.js:330
+#: templates/js/translated/table_filters.js:261
+#: templates/js/translated/table_filters.js:262
+#: templates/js/translated/table_filters.js:335
+#: templates/js/translated/table_filters.js:336
msgid "Serial number"
msgstr ""
-#: templates/js/translated/table_filters.js:260
-#: templates/js/translated/table_filters.js:351
+#: templates/js/translated/table_filters.js:266
+#: templates/js/translated/table_filters.js:357
msgid "Batch code"
msgstr ""
-#: templates/js/translated/table_filters.js:271
-#: templates/js/translated/table_filters.js:613
+#: templates/js/translated/table_filters.js:277
+#: templates/js/translated/table_filters.js:635
msgid "Active parts"
msgstr ""
-#: templates/js/translated/table_filters.js:272
+#: templates/js/translated/table_filters.js:278
msgid "Show stock for active parts"
msgstr ""
-#: templates/js/translated/table_filters.js:277
+#: templates/js/translated/table_filters.js:283
msgid "Part is an assembly"
msgstr ""
-#: templates/js/translated/table_filters.js:281
+#: templates/js/translated/table_filters.js:287
msgid "Is allocated"
msgstr ""
-#: templates/js/translated/table_filters.js:282
+#: templates/js/translated/table_filters.js:288
msgid "Item has been allocated"
msgstr ""
-#: templates/js/translated/table_filters.js:287
+#: templates/js/translated/table_filters.js:293
msgid "Stock is available for use"
msgstr ""
-#: templates/js/translated/table_filters.js:292
+#: templates/js/translated/table_filters.js:298
msgid "Include stock in sublocations"
msgstr ""
-#: templates/js/translated/table_filters.js:297
+#: templates/js/translated/table_filters.js:303
msgid "Show stock items which are depleted"
msgstr ""
-#: templates/js/translated/table_filters.js:302
+#: templates/js/translated/table_filters.js:308
msgid "Show items which are in stock"
msgstr ""
-#: templates/js/translated/table_filters.js:306
+#: templates/js/translated/table_filters.js:312
msgid "In Production"
msgstr ""
-#: templates/js/translated/table_filters.js:307
+#: templates/js/translated/table_filters.js:313
msgid "Show items which are in production"
msgstr ""
-#: templates/js/translated/table_filters.js:311
+#: templates/js/translated/table_filters.js:317
msgid "Include Variants"
msgstr ""
-#: templates/js/translated/table_filters.js:312
+#: templates/js/translated/table_filters.js:318
msgid "Include stock items for variant parts"
msgstr ""
-#: templates/js/translated/table_filters.js:316
+#: templates/js/translated/table_filters.js:322
msgid "Installed"
msgstr ""
-#: templates/js/translated/table_filters.js:317
+#: templates/js/translated/table_filters.js:323
msgid "Show stock items which are installed in another item"
msgstr ""
-#: templates/js/translated/table_filters.js:322
+#: templates/js/translated/table_filters.js:328
msgid "Show items which have been assigned to a customer"
msgstr ""
-#: templates/js/translated/table_filters.js:342
-#: templates/js/translated/table_filters.js:343
+#: templates/js/translated/table_filters.js:348
+#: templates/js/translated/table_filters.js:349
msgid "Stock status"
msgstr ""
-#: templates/js/translated/table_filters.js:346
+#: templates/js/translated/table_filters.js:352
msgid "Has batch code"
msgstr ""
-#: templates/js/translated/table_filters.js:354
-msgid "Tracked"
-msgstr ""
-
-#: templates/js/translated/table_filters.js:355
+#: templates/js/translated/table_filters.js:361
msgid "Stock item is tracked by either batch code or serial number"
msgstr ""
-#: templates/js/translated/table_filters.js:360
+#: templates/js/translated/table_filters.js:366
msgid "Has purchase price"
msgstr ""
-#: templates/js/translated/table_filters.js:361
+#: templates/js/translated/table_filters.js:367
msgid "Show stock items which have a purchase price set"
msgstr ""
-#: templates/js/translated/table_filters.js:365
+#: templates/js/translated/table_filters.js:371
msgid "Expiry Date before"
msgstr ""
-#: templates/js/translated/table_filters.js:369
+#: templates/js/translated/table_filters.js:375
msgid "Expiry Date after"
msgstr ""
-#: templates/js/translated/table_filters.js:382
+#: templates/js/translated/table_filters.js:388
msgid "Show stock items which have expired"
msgstr ""
-#: templates/js/translated/table_filters.js:388
+#: templates/js/translated/table_filters.js:394
msgid "Show stock which is close to expiring"
msgstr ""
-#: templates/js/translated/table_filters.js:402
+#: templates/js/translated/table_filters.js:408
msgid "Test Passed"
msgstr ""
-#: templates/js/translated/table_filters.js:406
+#: templates/js/translated/table_filters.js:412
msgid "Include Installed Items"
msgstr ""
-#: templates/js/translated/table_filters.js:445
+#: templates/js/translated/table_filters.js:451
msgid "Build status"
msgstr ""
-#: templates/js/translated/table_filters.js:625
+#: templates/js/translated/table_filters.js:647
msgid "Include parts in subcategories"
msgstr ""
-#: templates/js/translated/table_filters.js:630
+#: templates/js/translated/table_filters.js:652
msgid "Show active parts"
msgstr ""
-#: templates/js/translated/table_filters.js:638
+#: templates/js/translated/table_filters.js:660
msgid "Available stock"
msgstr ""
-#: templates/js/translated/table_filters.js:646
-#: templates/js/translated/table_filters.js:742
+#: templates/js/translated/table_filters.js:668
+#: templates/js/translated/table_filters.js:764
msgid "Has Units"
msgstr ""
-#: templates/js/translated/table_filters.js:647
+#: templates/js/translated/table_filters.js:669
msgid "Part has defined units"
msgstr ""
-#: templates/js/translated/table_filters.js:651
+#: templates/js/translated/table_filters.js:673
msgid "Has IPN"
msgstr ""
-#: templates/js/translated/table_filters.js:652
+#: templates/js/translated/table_filters.js:674
msgid "Part has internal part number"
msgstr ""
-#: templates/js/translated/table_filters.js:656
+#: templates/js/translated/table_filters.js:678
msgid "In stock"
msgstr ""
-#: templates/js/translated/table_filters.js:664
+#: templates/js/translated/table_filters.js:686
msgid "Purchasable"
msgstr ""
-#: templates/js/translated/table_filters.js:676
+#: templates/js/translated/table_filters.js:698
msgid "Has stocktake entries"
msgstr ""
-#: templates/js/translated/table_filters.js:738
+#: templates/js/translated/table_filters.js:760
msgid "Has Choices"
msgstr ""
@@ -12390,51 +12551,51 @@ msgstr ""
msgid "Select File Format"
msgstr ""
-#: templates/js/translated/tables.js:561
+#: templates/js/translated/tables.js:537
msgid "Loading data"
msgstr ""
-#: templates/js/translated/tables.js:564
+#: templates/js/translated/tables.js:540
msgid "rows per page"
msgstr ""
-#: templates/js/translated/tables.js:569
+#: templates/js/translated/tables.js:545
msgid "Showing all rows"
msgstr ""
-#: templates/js/translated/tables.js:571
+#: templates/js/translated/tables.js:547
msgid "Showing"
msgstr ""
-#: templates/js/translated/tables.js:571
+#: templates/js/translated/tables.js:547
msgid "to"
msgstr ""
-#: templates/js/translated/tables.js:571
+#: templates/js/translated/tables.js:547
msgid "of"
msgstr ""
-#: templates/js/translated/tables.js:571
+#: templates/js/translated/tables.js:547
msgid "rows"
msgstr ""
-#: templates/js/translated/tables.js:578
+#: templates/js/translated/tables.js:554
msgid "No matching results"
msgstr ""
-#: templates/js/translated/tables.js:581
+#: templates/js/translated/tables.js:557
msgid "Hide/Show pagination"
msgstr ""
-#: templates/js/translated/tables.js:587
+#: templates/js/translated/tables.js:563
msgid "Toggle"
msgstr ""
-#: templates/js/translated/tables.js:590
+#: templates/js/translated/tables.js:566
msgid "Columns"
msgstr ""
-#: templates/js/translated/tables.js:593
+#: templates/js/translated/tables.js:569
msgid "All"
msgstr ""
@@ -12616,50 +12777,6 @@ msgstr ""
msgid "Email settings not configured"
msgstr ""
-#: templates/stock_table.html:17
-msgid "Barcode Actions"
-msgstr ""
-
-#: templates/stock_table.html:28
-msgid "Stock Options"
-msgstr ""
-
-#: templates/stock_table.html:33
-msgid "Add to selected stock items"
-msgstr ""
-
-#: templates/stock_table.html:34
-msgid "Remove from selected stock items"
-msgstr ""
-
-#: templates/stock_table.html:35
-msgid "Stocktake selected stock items"
-msgstr ""
-
-#: templates/stock_table.html:36
-msgid "Move selected stock items"
-msgstr ""
-
-#: templates/stock_table.html:37
-msgid "Merge selected stock items"
-msgstr ""
-
-#: templates/stock_table.html:37
-msgid "Merge stock"
-msgstr ""
-
-#: templates/stock_table.html:38
-msgid "Order selected items"
-msgstr ""
-
-#: templates/stock_table.html:42
-msgid "Delete selected items"
-msgstr ""
-
-#: templates/stock_table.html:42
-msgid "Delete stock"
-msgstr ""
-
#: templates/yesnolabel.html:4
msgid "Yes"
msgstr ""
@@ -12692,35 +12809,35 @@ msgstr ""
msgid "Important dates"
msgstr ""
-#: users/models.py:230
+#: users/models.py:236
msgid "Permission set"
msgstr ""
-#: users/models.py:238
+#: users/models.py:244
msgid "Group"
msgstr ""
-#: users/models.py:241
+#: users/models.py:247
msgid "View"
msgstr ""
-#: users/models.py:241
+#: users/models.py:247
msgid "Permission to view items"
msgstr ""
-#: users/models.py:243
+#: users/models.py:249
msgid "Permission to add items"
msgstr ""
-#: users/models.py:245
+#: users/models.py:251
msgid "Change"
msgstr ""
-#: users/models.py:245
+#: users/models.py:251
msgid "Permissions to edit items"
msgstr ""
-#: users/models.py:247
+#: users/models.py:253
msgid "Permission to delete items"
msgstr ""
diff --git a/InvenTree/locale/fi/LC_MESSAGES/django.po b/InvenTree/locale/fi/LC_MESSAGES/django.po
index 1718b7e25e..a055974379 100644
--- a/InvenTree/locale/fi/LC_MESSAGES/django.po
+++ b/InvenTree/locale/fi/LC_MESSAGES/django.po
@@ -2,8 +2,8 @@ msgid ""
msgstr ""
"Project-Id-Version: inventree\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2023-06-09 00:32+0000\n"
-"PO-Revision-Date: 2023-06-09 10:27\n"
+"POT-Creation-Date: 2023-06-20 07:01+0000\n"
+"PO-Revision-Date: 2023-06-20 07:06\n"
"Last-Translator: \n"
"Language-Team: Finnish\n"
"Language: fi_FI\n"
@@ -49,26 +49,26 @@ msgstr "Virheen tiedot löytyvät hallintapaneelista"
msgid "Enter date"
msgstr "Anna päivämäärä"
-#: InvenTree/fields.py:206 InvenTree/models.py:766 build/serializers.py:427
-#: build/serializers.py:506 build/templates/build/sidebar.html:23
-#: company/models.py:597 company/templates/company/sidebar.html:35
-#: order/models.py:1089 order/templates/order/po_sidebar.html:11
+#: InvenTree/fields.py:206 InvenTree/models.py:766 build/serializers.py:435
+#: build/serializers.py:514 build/templates/build/sidebar.html:21
+#: company/models.py:746 company/templates/company/sidebar.html:37
+#: order/models.py:1102 order/templates/order/po_sidebar.html:11
#: order/templates/order/return_order_sidebar.html:9
#: order/templates/order/so_sidebar.html:17 part/admin.py:41
-#: part/models.py:3005 part/templates/part/part_sidebar.html:63
+#: part/models.py:3039 part/templates/part/part_sidebar.html:63
#: report/templates/report/inventree_build_order_base.html:172
#: stock/admin.py:121 stock/models.py:2160 stock/models.py:2268
-#: stock/serializers.py:342 stock/serializers.py:475 stock/serializers.py:556
-#: stock/serializers.py:839 stock/serializers.py:938 stock/serializers.py:1070
-#: stock/templates/stock/stock_sidebar.html:25
-#: templates/js/translated/barcode.js:143 templates/js/translated/bom.js:1224
-#: templates/js/translated/company.js:1294 templates/js/translated/order.js:347
-#: templates/js/translated/part.js:1054
-#: templates/js/translated/purchase_order.js:2168
-#: templates/js/translated/return_order.js:760
-#: templates/js/translated/sales_order.js:1055
-#: templates/js/translated/sales_order.js:1959
-#: templates/js/translated/stock.js:1460 templates/js/translated/stock.js:2164
+#: stock/serializers.py:408 stock/serializers.py:542 stock/serializers.py:623
+#: stock/serializers.py:681 stock/serializers.py:956 stock/serializers.py:1055
+#: stock/serializers.py:1187 stock/templates/stock/stock_sidebar.html:25
+#: templates/js/translated/barcode.js:143 templates/js/translated/bom.js:1244
+#: templates/js/translated/company.js:1715 templates/js/translated/order.js:347
+#: templates/js/translated/part.js:1053
+#: templates/js/translated/purchase_order.js:2178
+#: templates/js/translated/return_order.js:772
+#: templates/js/translated/sales_order.js:1067
+#: templates/js/translated/sales_order.js:1971
+#: templates/js/translated/stock.js:1459 templates/js/translated/stock.js:2321
msgid "Notes"
msgstr "Merkinnät"
@@ -81,47 +81,51 @@ msgstr ""
msgid "Provided value does not match required pattern: "
msgstr ""
-#: InvenTree/forms.py:145
+#: InvenTree/forms.py:147
msgid "Enter password"
msgstr "Anna salasana"
-#: InvenTree/forms.py:146
+#: InvenTree/forms.py:148
msgid "Enter new password"
msgstr "Anna uusi salasana"
-#: InvenTree/forms.py:155
+#: InvenTree/forms.py:157
msgid "Confirm password"
msgstr "Vahvista salasana"
-#: InvenTree/forms.py:156
+#: InvenTree/forms.py:158
msgid "Confirm new password"
msgstr "Vahvista uusi salasana"
-#: InvenTree/forms.py:160
+#: InvenTree/forms.py:162
msgid "Old password"
msgstr "Vanha salasana"
-#: InvenTree/forms.py:179
+#: InvenTree/forms.py:181
msgid "Email (again)"
msgstr "Sähköposti (uudelleen)"
-#: InvenTree/forms.py:183
+#: InvenTree/forms.py:185
msgid "Email address confirmation"
msgstr "Sähköpostiosoitteen vahvistus"
-#: InvenTree/forms.py:204
+#: InvenTree/forms.py:206
msgid "You must type the same email each time."
msgstr "Sinun täytyy kirjoittaa sama sähköposti joka kerta."
-#: InvenTree/forms.py:230 InvenTree/forms.py:236
+#: InvenTree/forms.py:237 InvenTree/forms.py:243
msgid "The provided primary email address is not valid."
msgstr "Annettu ensisijainen sähköpostiosoite ei kelpaa."
-#: InvenTree/forms.py:242
+#: InvenTree/forms.py:249
msgid "The provided email domain is not approved."
msgstr "Annetun sähköpostiosoitteen verkkotunnusta ei hyväksytä."
-#: InvenTree/helpers.py:462 order/models.py:442 order/models.py:611
+#: InvenTree/forms.py:345
+msgid "Registration is disabled."
+msgstr ""
+
+#: InvenTree/helpers.py:462 order/models.py:455 order/models.py:624
msgid "Invalid quantity provided"
msgstr "Annettu määrä on virheellinen"
@@ -239,7 +243,7 @@ msgstr "Puuttuva ulkoinen linkki"
#: InvenTree/models.py:486 stock/models.py:2262
#: templates/js/translated/attachment.js:119
-#: templates/js/translated/attachment.js:306
+#: templates/js/translated/attachment.js:316
msgid "Attachment"
msgstr "Liite"
@@ -247,29 +251,30 @@ msgstr "Liite"
msgid "Select file to attach"
msgstr "Valitse liitettävä tiedosto"
-#: InvenTree/models.py:493 common/models.py:2695 company/models.py:132
-#: company/models.py:306 company/models.py:584 order/models.py:236
-#: order/models.py:1093 order/models.py:1453 part/admin.py:39
-#: part/models.py:901 part/templates/part/part_scheduling.html:11
+#: InvenTree/models.py:493 common/models.py:2681 company/models.py:128
+#: company/models.py:381 company/models.py:455 company/models.py:733
+#: order/models.py:240 order/models.py:1106 order/models.py:1466
+#: part/admin.py:39 part/models.py:902
+#: part/templates/part/part_scheduling.html:11
#: report/templates/report/inventree_build_order_base.html:164
-#: stock/admin.py:120 templates/js/translated/company.js:977
-#: templates/js/translated/company.js:1283 templates/js/translated/order.js:351
-#: templates/js/translated/part.js:2316
-#: templates/js/translated/purchase_order.js:2008
-#: templates/js/translated/purchase_order.js:2172
-#: templates/js/translated/return_order.js:764
-#: templates/js/translated/sales_order.js:1044
-#: templates/js/translated/sales_order.js:1964
+#: stock/admin.py:120 templates/js/translated/company.js:1350
+#: templates/js/translated/company.js:1704 templates/js/translated/order.js:351
+#: templates/js/translated/part.js:2392
+#: templates/js/translated/purchase_order.js:2018
+#: templates/js/translated/purchase_order.js:2182
+#: templates/js/translated/return_order.js:776
+#: templates/js/translated/sales_order.js:1056
+#: templates/js/translated/sales_order.js:1976
msgid "Link"
msgstr "Linkki"
-#: InvenTree/models.py:494 build/models.py:291 part/models.py:902
+#: InvenTree/models.py:494 build/models.py:295 part/models.py:903
#: stock/models.py:735
msgid "Link to external URL"
msgstr "Linkki ulkoiseen URLiin"
#: InvenTree/models.py:497 templates/js/translated/attachment.js:120
-#: templates/js/translated/attachment.js:321
+#: templates/js/translated/attachment.js:331
msgid "Comment"
msgstr "Kommentti"
@@ -277,13 +282,13 @@ msgstr "Kommentti"
msgid "File comment"
msgstr "Tiedoston kommentti"
-#: InvenTree/models.py:503 InvenTree/models.py:504 common/models.py:2154
-#: common/models.py:2155 common/models.py:2368 common/models.py:2369
-#: common/models.py:2625 common/models.py:2626 part/models.py:3013
-#: part/models.py:3101 part/models.py:3180 part/models.py:3200
-#: plugin/models.py:217 plugin/models.py:218
+#: InvenTree/models.py:503 InvenTree/models.py:504 common/models.py:2140
+#: common/models.py:2141 common/models.py:2354 common/models.py:2355
+#: common/models.py:2611 common/models.py:2612 part/models.py:3047
+#: part/models.py:3135 part/models.py:3214 part/models.py:3234
+#: plugin/models.py:218 plugin/models.py:219
#: report/templates/report/inventree_test_report_base.html:105
-#: templates/js/translated/stock.js:2773
+#: templates/js/translated/stock.js:2904
msgid "User"
msgstr "Käyttäjä"
@@ -324,53 +329,54 @@ msgstr ""
msgid "Invalid choice"
msgstr "Virheellinen valinta"
-#: InvenTree/models.py:648 InvenTree/models.py:649 common/models.py:2354
-#: company/models.py:390 label/models.py:103 part/models.py:847
-#: part/models.py:3400 plugin/models.py:41 report/models.py:160
+#: InvenTree/models.py:648 InvenTree/models.py:649 common/models.py:2340
+#: company/models.py:539 label/models.py:111 part/models.py:848
+#: part/models.py:3434 plugin/models.py:42 report/models.py:160
#: templates/InvenTree/settings/mixins/urls.html:13
#: templates/InvenTree/settings/notifications.html:17
-#: templates/InvenTree/settings/plugin.html:80
+#: templates/InvenTree/settings/plugin.html:74
#: templates/InvenTree/settings/plugin_settings.html:22
-#: templates/js/translated/company.js:658
-#: templates/js/translated/company.js:706
-#: templates/js/translated/company.js:871
-#: templates/js/translated/company.js:1071 templates/js/translated/part.js:1160
-#: templates/js/translated/part.js:1447 templates/js/translated/part.js:1583
-#: templates/js/translated/part.js:2699 templates/js/translated/stock.js:2464
+#: templates/js/translated/company.js:665
+#: templates/js/translated/company.js:713
+#: templates/js/translated/company.js:940
+#: templates/js/translated/company.js:1196
+#: templates/js/translated/company.js:1444 templates/js/translated/part.js:1159
+#: templates/js/translated/part.js:1446 templates/js/translated/part.js:1582
+#: templates/js/translated/part.js:2684 templates/js/translated/stock.js:2595
msgid "Name"
msgstr "Nimi"
-#: InvenTree/models.py:655 build/models.py:164
+#: InvenTree/models.py:655 build/models.py:168
#: build/templates/build/detail.html:24 common/models.py:111
-#: company/models.py:312 company/models.py:590
+#: company/models.py:461 company/models.py:739
#: company/templates/company/company_base.html:72
#: company/templates/company/manufacturer_part.html:75
-#: company/templates/company/supplier_part.html:108 label/models.py:110
-#: order/models.py:232 order/models.py:1117 part/admin.py:194 part/admin.py:276
-#: part/models.py:869 part/models.py:3416 part/templates/part/category.html:81
+#: company/templates/company/supplier_part.html:108 label/models.py:118
+#: order/models.py:232 order/models.py:1130 part/admin.py:194 part/admin.py:276
+#: part/models.py:870 part/models.py:3450 part/templates/part/category.html:81
#: part/templates/part/part_base.html:172
#: part/templates/part/part_scheduling.html:12 report/models.py:173
-#: report/models.py:587 report/models.py:631
+#: report/models.py:589 report/models.py:633
#: report/templates/report/inventree_build_order_base.html:117
#: stock/admin.py:41 stock/templates/stock/location.html:123
#: templates/InvenTree/settings/notifications.html:19
#: templates/InvenTree/settings/plugin_settings.html:27
#: templates/InvenTree/settings/settings_staff_js.html:75
-#: templates/js/translated/bom.js:632 templates/js/translated/bom.js:933
-#: templates/js/translated/build.js:2857 templates/js/translated/company.js:510
-#: templates/js/translated/company.js:988
-#: templates/js/translated/company.js:1251 templates/js/translated/order.js:298
-#: templates/js/translated/part.js:1212 templates/js/translated/part.js:1456
-#: templates/js/translated/part.js:1594 templates/js/translated/part.js:1933
-#: templates/js/translated/part.js:2247 templates/js/translated/part.js:2735
-#: templates/js/translated/part.js:2826
-#: templates/js/translated/purchase_order.js:1666
-#: templates/js/translated/purchase_order.js:1812
-#: templates/js/translated/purchase_order.js:1990
-#: templates/js/translated/return_order.js:302
-#: templates/js/translated/sales_order.js:790
-#: templates/js/translated/stock.js:1439 templates/js/translated/stock.js:1817
-#: templates/js/translated/stock.js:2496 templates/js/translated/stock.js:2568
+#: templates/js/translated/bom.js:633 templates/js/translated/bom.js:951
+#: templates/js/translated/build.js:2062 templates/js/translated/company.js:517
+#: templates/js/translated/company.js:1361
+#: templates/js/translated/company.js:1672 templates/js/translated/index.js:114
+#: templates/js/translated/order.js:298 templates/js/translated/part.js:1211
+#: templates/js/translated/part.js:1455 templates/js/translated/part.js:1593
+#: templates/js/translated/part.js:1932 templates/js/translated/part.js:2323
+#: templates/js/translated/part.js:2720 templates/js/translated/part.js:2811
+#: templates/js/translated/purchase_order.js:1681
+#: templates/js/translated/purchase_order.js:1827
+#: templates/js/translated/purchase_order.js:2000
+#: templates/js/translated/return_order.js:314
+#: templates/js/translated/sales_order.js:802
+#: templates/js/translated/stock.js:1438 templates/js/translated/stock.js:1974
+#: templates/js/translated/stock.js:2627 templates/js/translated/stock.js:2699
msgid "Description"
msgstr "Kuvaus"
@@ -383,7 +389,7 @@ msgid "parent"
msgstr ""
#: InvenTree/models.py:671 InvenTree/models.py:672
-#: templates/js/translated/part.js:2744 templates/js/translated/stock.js:2505
+#: templates/js/translated/part.js:2729 templates/js/translated/stock.js:2636
msgid "Path"
msgstr "Polku"
@@ -419,12 +425,12 @@ msgstr "Palvelinvirhe"
msgid "An error has been logged by the server."
msgstr ""
-#: InvenTree/serializers.py:60 part/models.py:3897
+#: InvenTree/serializers.py:60 part/models.py:3941
msgid "Must be a valid number"
msgstr "Täytyy olla kelvollinen luku"
-#: InvenTree/serializers.py:90 company/models.py:154
-#: company/templates/company/company_base.html:107 part/models.py:2852
+#: InvenTree/serializers.py:90 company/models.py:150
+#: company/templates/company/company_base.html:107 part/models.py:2886
#: templates/InvenTree/settings/settings_staff_js.html:44
#: templates/currency_data.html:5
msgid "Currency"
@@ -497,130 +503,130 @@ msgstr "Kuvatiedoston URL"
msgid "Downloading images from remote URL is not enabled"
msgstr "Kuvien lataaminen ei ole käytössä"
-#: InvenTree/settings.py:714
+#: InvenTree/settings.py:741
msgid "Czech"
msgstr "tšekki"
-#: InvenTree/settings.py:715
+#: InvenTree/settings.py:742
msgid "Danish"
msgstr "tanska"
-#: InvenTree/settings.py:716
+#: InvenTree/settings.py:743
msgid "German"
msgstr "saksa"
-#: InvenTree/settings.py:717
+#: InvenTree/settings.py:744
msgid "Greek"
msgstr "kreikka"
-#: InvenTree/settings.py:718
+#: InvenTree/settings.py:745
msgid "English"
msgstr "englanti"
-#: InvenTree/settings.py:719
+#: InvenTree/settings.py:746
msgid "Spanish"
msgstr "espanja"
-#: InvenTree/settings.py:720
+#: InvenTree/settings.py:747
msgid "Spanish (Mexican)"
msgstr "espanja (Meksiko)"
-#: InvenTree/settings.py:721
+#: InvenTree/settings.py:748
msgid "Farsi / Persian"
msgstr "farsi / persia"
-#: InvenTree/settings.py:722
+#: InvenTree/settings.py:749
msgid "Finnish"
msgstr "suomi"
-#: InvenTree/settings.py:723
+#: InvenTree/settings.py:750
msgid "French"
msgstr "ranska"
-#: InvenTree/settings.py:724
+#: InvenTree/settings.py:751
msgid "Hebrew"
msgstr "heprea"
-#: InvenTree/settings.py:725
+#: InvenTree/settings.py:752
msgid "Hungarian"
msgstr "unkari"
-#: InvenTree/settings.py:726
+#: InvenTree/settings.py:753
msgid "Italian"
msgstr "italia"
-#: InvenTree/settings.py:727
+#: InvenTree/settings.py:754
msgid "Japanese"
msgstr "japani"
-#: InvenTree/settings.py:728
+#: InvenTree/settings.py:755
msgid "Korean"
msgstr "korea"
-#: InvenTree/settings.py:729
+#: InvenTree/settings.py:756
msgid "Dutch"
msgstr "hollanti"
-#: InvenTree/settings.py:730
+#: InvenTree/settings.py:757
msgid "Norwegian"
msgstr "norja"
-#: InvenTree/settings.py:731
+#: InvenTree/settings.py:758
msgid "Polish"
msgstr "puola"
-#: InvenTree/settings.py:732
+#: InvenTree/settings.py:759
msgid "Portuguese"
msgstr "portugali"
-#: InvenTree/settings.py:733
+#: InvenTree/settings.py:760
msgid "Portuguese (Brazilian)"
msgstr "portugali (Brasilia)"
-#: InvenTree/settings.py:734
+#: InvenTree/settings.py:761
msgid "Russian"
msgstr "venäjä"
-#: InvenTree/settings.py:735
+#: InvenTree/settings.py:762
msgid "Slovenian"
msgstr "slovenia"
-#: InvenTree/settings.py:736
+#: InvenTree/settings.py:763
msgid "Swedish"
msgstr "ruotsi"
-#: InvenTree/settings.py:737
+#: InvenTree/settings.py:764
msgid "Thai"
msgstr "thai"
-#: InvenTree/settings.py:738
+#: InvenTree/settings.py:765
msgid "Turkish"
msgstr "turkki"
-#: InvenTree/settings.py:739
+#: InvenTree/settings.py:766
msgid "Vietnamese"
msgstr "vietnam"
-#: InvenTree/settings.py:740
+#: InvenTree/settings.py:767
msgid "Chinese"
msgstr "kiina"
-#: InvenTree/status.py:61 part/serializers.py:878
+#: InvenTree/status.py:68 part/serializers.py:940
msgid "Background worker check failed"
msgstr ""
-#: InvenTree/status.py:65
+#: InvenTree/status.py:72
msgid "Email backend not configured"
msgstr ""
-#: InvenTree/status.py:68
+#: InvenTree/status.py:75
msgid "InvenTree system health checks failed"
msgstr "InvenTree järjestelmän terveystarkastukset epäonnistui"
#: InvenTree/status_codes.py:12 InvenTree/status_codes.py:40
#: InvenTree/status_codes.py:148 InvenTree/status_codes.py:167
#: InvenTree/status_codes.py:188 generic/states/tests.py:16
-#: templates/js/translated/table_filters.js:511
+#: templates/js/translated/table_filters.js:533
msgid "Pending"
msgstr "Odottaa"
@@ -630,7 +636,7 @@ msgstr ""
#: InvenTree/status_codes.py:14 InvenTree/status_codes.py:151
#: InvenTree/status_codes.py:172 generic/states/tests.py:18
-#: order/templates/order/order_base.html:162
+#: order/templates/order/order_base.html:158
#: order/templates/order/sales_order_base.html:162
msgid "Complete"
msgstr "Valmis"
@@ -654,10 +660,10 @@ msgstr "Palautettu"
msgid "In Progress"
msgstr "Kesken"
-#: InvenTree/status_codes.py:42 order/models.py:1332
-#: templates/js/translated/sales_order.js:1509
-#: templates/js/translated/sales_order.js:1630
-#: templates/js/translated/sales_order.js:1934
+#: InvenTree/status_codes.py:42 order/models.py:1345
+#: templates/js/translated/sales_order.js:1521
+#: templates/js/translated/sales_order.js:1642
+#: templates/js/translated/sales_order.js:1946
msgid "Shipped"
msgstr "Lähetetty"
@@ -689,7 +695,7 @@ msgstr "Asetettu karanteeniin"
msgid "Legacy stock tracking entry"
msgstr ""
-#: InvenTree/status_codes.py:93 templates/js/translated/stock.js:511
+#: InvenTree/status_codes.py:93 templates/js/translated/stock.js:510
msgid "Stock item created"
msgstr "Varastotuote luotu"
@@ -745,7 +751,7 @@ msgstr ""
msgid "Split child item"
msgstr ""
-#: InvenTree/status_codes.py:120 templates/js/translated/stock.js:2243
+#: InvenTree/status_codes.py:120 templates/js/translated/stock.js:1769
msgid "Merged stock items"
msgstr ""
@@ -765,7 +771,7 @@ msgstr ""
msgid "Build order output rejected"
msgstr ""
-#: InvenTree/status_codes.py:129 templates/js/translated/stock.js:1676
+#: InvenTree/status_codes.py:129 templates/js/translated/stock.js:1675
msgid "Consumed by build order"
msgstr ""
@@ -781,7 +787,7 @@ msgstr ""
msgid "Returned against Return Order"
msgstr ""
-#: InvenTree/status_codes.py:141 templates/js/translated/table_filters.js:321
+#: InvenTree/status_codes.py:141 templates/js/translated/table_filters.js:327
msgid "Sent to customer"
msgstr ""
@@ -849,83 +855,111 @@ msgstr "Salasanat eivät täsmää"
msgid "Wrong password provided"
msgstr "Virheellinen salasana"
-#: InvenTree/views.py:651 templates/navbar.html:157
+#: InvenTree/views.py:653 templates/navbar.html:157
msgid "System Information"
msgstr "Järjestelmän tiedot"
-#: InvenTree/views.py:658 templates/navbar.html:168
+#: InvenTree/views.py:660 templates/navbar.html:168
msgid "About InvenTree"
msgstr "Tietoja InvenTree:stä"
-#: build/api.py:222
+#: build/api.py:242
msgid "Build must be cancelled before it can be deleted"
msgstr ""
-#: build/models.py:69 build/templates/build/build_base.html:9
+#: build/api.py:286 part/models.py:3833 templates/js/translated/bom.js:985
+#: templates/js/translated/bom.js:1025 templates/js/translated/build.js:2449
+#: templates/js/translated/table_filters.js:166
+#: templates/js/translated/table_filters.js:518
+msgid "Consumable"
+msgstr ""
+
+#: build/api.py:287 part/models.py:3827 part/templates/part/upload_bom.html:58
+#: templates/js/translated/bom.js:989 templates/js/translated/bom.js:1016
+#: templates/js/translated/build.js:2458
+#: templates/js/translated/table_filters.js:162
+#: templates/js/translated/table_filters.js:191
+#: templates/js/translated/table_filters.js:522
+msgid "Optional"
+msgstr ""
+
+#: build/api.py:288 templates/js/translated/table_filters.js:360
+#: templates/js/translated/table_filters.js:514
+msgid "Tracked"
+msgstr ""
+
+#: build/api.py:290 part/admin.py:64 templates/js/translated/build.js:1670
+#: templates/js/translated/build.js:2549
+#: templates/js/translated/sales_order.js:1918
+#: templates/js/translated/table_filters.js:506
+msgid "Allocated"
+msgstr ""
+
+#: build/models.py:73 build/templates/build/build_base.html:9
#: build/templates/build/build_base.html:27
#: report/templates/report/inventree_build_order_base.html:105
#: templates/email/build_order_completed.html:16
#: templates/email/overdue_build_order.html:15
-#: templates/js/translated/build.js:945 templates/js/translated/stock.js:2629
+#: templates/js/translated/build.js:953 templates/js/translated/stock.js:2760
msgid "Build Order"
msgstr ""
-#: build/models.py:70 build/templates/build/build_base.html:13
+#: build/models.py:74 build/templates/build/build_base.html:13
#: build/templates/build/index.html:8 build/templates/build/index.html:12
-#: order/templates/order/sales_order_detail.html:119
+#: order/templates/order/sales_order_detail.html:111
#: order/templates/order/so_sidebar.html:13
-#: part/templates/part/part_sidebar.html:22 templates/InvenTree/index.html:244
+#: part/templates/part/part_sidebar.html:22 templates/InvenTree/index.html:196
#: templates/InvenTree/search.html:141
#: templates/InvenTree/settings/sidebar.html:53
-#: templates/js/translated/search.js:228 users/models.py:42
+#: templates/js/translated/search.js:186 users/models.py:42
msgid "Build Orders"
msgstr ""
-#: build/models.py:111
+#: build/models.py:115
msgid "Invalid choice for parent build"
msgstr ""
-#: build/models.py:155
+#: build/models.py:159
msgid "Build Order Reference"
msgstr ""
-#: build/models.py:156 order/models.py:359 order/models.py:765
-#: order/models.py:1087 order/models.py:1724 part/admin.py:278
-#: part/models.py:3798 part/templates/part/upload_bom.html:54
+#: build/models.py:160 order/models.py:372 order/models.py:778
+#: order/models.py:1100 order/models.py:1737 part/admin.py:278
+#: part/models.py:3842 part/templates/part/upload_bom.html:54
#: report/templates/report/inventree_bill_of_materials_report.html:139
#: report/templates/report/inventree_po_report_base.html:28
#: report/templates/report/inventree_return_order_report_base.html:26
#: report/templates/report/inventree_so_report_base.html:28
-#: templates/js/translated/bom.js:769 templates/js/translated/bom.js:943
-#: templates/js/translated/build.js:2098 templates/js/translated/order.js:291
+#: templates/js/translated/bom.js:770 templates/js/translated/bom.js:961
+#: templates/js/translated/build.js:2441 templates/js/translated/order.js:291
#: templates/js/translated/pricing.js:386
-#: templates/js/translated/purchase_order.js:2033
-#: templates/js/translated/return_order.js:713
-#: templates/js/translated/sales_order.js:1798
+#: templates/js/translated/purchase_order.js:2043
+#: templates/js/translated/return_order.js:725
+#: templates/js/translated/sales_order.js:1810
msgid "Reference"
msgstr ""
-#: build/models.py:167
+#: build/models.py:171
msgid "Brief description of the build (optional)"
msgstr ""
-#: build/models.py:175 build/templates/build/build_base.html:183
+#: build/models.py:179 build/templates/build/build_base.html:184
#: build/templates/build/detail.html:87
msgid "Parent Build"
msgstr ""
-#: build/models.py:176
+#: build/models.py:180
msgid "BuildOrder to which this build is allocated"
msgstr ""
-#: build/models.py:181 build/templates/build/build_base.html:98
-#: build/templates/build/detail.html:29 company/models.py:775
-#: order/models.py:1195 order/models.py:1311 order/models.py:1312
-#: part/models.py:391 part/models.py:2865 part/models.py:2979
-#: part/models.py:3119 part/models.py:3138 part/models.py:3157
-#: part/models.py:3178 part/models.py:3270 part/models.py:3555
-#: part/models.py:3663 part/models.py:3763 part/models.py:4077
-#: part/serializers.py:842 part/serializers.py:1245
+#: build/models.py:185 build/templates/build/build_base.html:98
+#: build/templates/build/detail.html:29 company/models.py:924
+#: order/models.py:1208 order/models.py:1324 order/models.py:1325
+#: part/models.py:392 part/models.py:2899 part/models.py:3013
+#: part/models.py:3153 part/models.py:3172 part/models.py:3191
+#: part/models.py:3212 part/models.py:3304 part/models.py:3589
+#: part/models.py:3712 part/models.py:3807 part/models.py:4121
+#: part/serializers.py:904 part/serializers.py:1307
#: part/templates/part/part_app_base.html:8
#: part/templates/part/part_pricing.html:12
#: part/templates/part/upload_bom.html:52
@@ -935,266 +969,229 @@ msgstr ""
#: report/templates/report/inventree_po_report_base.html:27
#: report/templates/report/inventree_return_order_report_base.html:24
#: report/templates/report/inventree_so_report_base.html:27
-#: stock/serializers.py:156 stock/serializers.py:509
+#: stock/serializers.py:205 stock/serializers.py:576
#: templates/InvenTree/search.html:82
#: templates/email/build_order_completed.html:17
#: templates/email/build_order_required_stock.html:17
#: templates/email/low_stock_notification.html:15
#: templates/email/overdue_build_order.html:16
-#: templates/js/translated/barcode.js:529 templates/js/translated/bom.js:631
-#: templates/js/translated/bom.js:768 templates/js/translated/bom.js:887
-#: templates/js/translated/build.js:1403 templates/js/translated/build.js:1965
-#: templates/js/translated/build.js:2464 templates/js/translated/build.js:2868
-#: templates/js/translated/company.js:337
-#: templates/js/translated/company.js:822
-#: templates/js/translated/company.js:929
-#: templates/js/translated/company.js:1169 templates/js/translated/part.js:1918
-#: templates/js/translated/part.js:1990 templates/js/translated/part.js:2216
-#: templates/js/translated/pricing.js:369
-#: templates/js/translated/purchase_order.js:746
-#: templates/js/translated/purchase_order.js:1274
-#: templates/js/translated/purchase_order.js:1811
-#: templates/js/translated/purchase_order.js:1975
-#: templates/js/translated/return_order.js:527
-#: templates/js/translated/return_order.js:694
-#: templates/js/translated/sales_order.js:285
-#: templates/js/translated/sales_order.js:1185
-#: templates/js/translated/sales_order.js:1584
-#: templates/js/translated/sales_order.js:1782
-#: templates/js/translated/stock.js:643 templates/js/translated/stock.js:809
-#: templates/js/translated/stock.js:1021 templates/js/translated/stock.js:1773
-#: templates/js/translated/stock.js:2594 templates/js/translated/stock.js:2831
-#: templates/js/translated/stock.js:2968
+#: templates/js/translated/barcode.js:529 templates/js/translated/bom.js:632
+#: templates/js/translated/bom.js:769 templates/js/translated/bom.js:905
+#: templates/js/translated/build.js:1289 templates/js/translated/build.js:1669
+#: templates/js/translated/build.js:2085 templates/js/translated/build.js:2261
+#: templates/js/translated/company.js:347
+#: templates/js/translated/company.js:1147
+#: templates/js/translated/company.js:1302
+#: templates/js/translated/company.js:1590 templates/js/translated/index.js:104
+#: templates/js/translated/part.js:1917 templates/js/translated/part.js:1989
+#: templates/js/translated/part.js:2292 templates/js/translated/pricing.js:369
+#: templates/js/translated/purchase_order.js:757
+#: templates/js/translated/purchase_order.js:1289
+#: templates/js/translated/purchase_order.js:1826
+#: templates/js/translated/purchase_order.js:1985
+#: templates/js/translated/return_order.js:539
+#: templates/js/translated/return_order.js:706
+#: templates/js/translated/sales_order.js:297
+#: templates/js/translated/sales_order.js:1197
+#: templates/js/translated/sales_order.js:1596
+#: templates/js/translated/sales_order.js:1794
+#: templates/js/translated/stock.js:642 templates/js/translated/stock.js:808
+#: templates/js/translated/stock.js:1020 templates/js/translated/stock.js:1913
+#: templates/js/translated/stock.js:2725 templates/js/translated/stock.js:2958
+#: templates/js/translated/stock.js:3095
msgid "Part"
msgstr "Osa"
-#: build/models.py:189
+#: build/models.py:193
msgid "Select part to build"
msgstr ""
-#: build/models.py:194
+#: build/models.py:198
msgid "Sales Order Reference"
msgstr ""
-#: build/models.py:198
+#: build/models.py:202
msgid "SalesOrder to which this build is allocated"
msgstr ""
-#: build/models.py:203 build/serializers.py:942
-#: templates/js/translated/build.js:2452
-#: templates/js/translated/sales_order.js:1173
+#: build/models.py:207 build/serializers.py:946
+#: templates/js/translated/build.js:1657
+#: templates/js/translated/sales_order.js:1185
msgid "Source Location"
msgstr ""
-#: build/models.py:207
+#: build/models.py:211
msgid "Select location to take stock from for this build (leave blank to take from any stock location)"
msgstr ""
-#: build/models.py:212
+#: build/models.py:216
msgid "Destination Location"
msgstr ""
-#: build/models.py:216
+#: build/models.py:220
msgid "Select location where the completed items will be stored"
msgstr ""
-#: build/models.py:220
+#: build/models.py:224
msgid "Build Quantity"
msgstr ""
-#: build/models.py:223
+#: build/models.py:227
msgid "Number of stock items to build"
msgstr ""
-#: build/models.py:227
+#: build/models.py:231
msgid "Completed items"
msgstr ""
-#: build/models.py:229
+#: build/models.py:233
msgid "Number of stock items which have been completed"
msgstr ""
-#: build/models.py:233
+#: build/models.py:237
msgid "Build Status"
msgstr ""
-#: build/models.py:237
+#: build/models.py:241
msgid "Build status code"
msgstr ""
-#: build/models.py:246 build/serializers.py:269 order/serializers.py:506
-#: stock/models.py:739 templates/js/translated/purchase_order.js:1099
+#: build/models.py:250 build/serializers.py:277 order/serializers.py:512
+#: stock/models.py:739 templates/js/translated/purchase_order.js:1114
msgid "Batch Code"
msgstr ""
-#: build/models.py:250 build/serializers.py:270
+#: build/models.py:254 build/serializers.py:278
msgid "Batch code for this build output"
msgstr ""
-#: build/models.py:253 order/models.py:244 part/models.py:1038
+#: build/models.py:257 order/models.py:248 part/models.py:1039
#: part/templates/part/part_base.html:312
-#: templates/js/translated/return_order.js:327
-#: templates/js/translated/sales_order.js:815
+#: templates/js/translated/return_order.js:339
+#: templates/js/translated/sales_order.js:827
msgid "Creation Date"
msgstr ""
-#: build/models.py:257
+#: build/models.py:261
msgid "Target completion date"
msgstr ""
-#: build/models.py:258
+#: build/models.py:262
msgid "Target date for build completion. Build will be overdue after this date."
msgstr ""
-#: build/models.py:261 order/models.py:409 order/models.py:1767
-#: templates/js/translated/build.js:2953
+#: build/models.py:265 order/models.py:422 order/models.py:1780
+#: templates/js/translated/build.js:2170
msgid "Completion Date"
msgstr ""
-#: build/models.py:267
+#: build/models.py:271
msgid "completed by"
msgstr ""
-#: build/models.py:275 templates/js/translated/build.js:2913
+#: build/models.py:279 templates/js/translated/build.js:2130
msgid "Issued by"
msgstr ""
-#: build/models.py:276
+#: build/models.py:280
msgid "User who issued this build order"
msgstr ""
-#: build/models.py:284 build/templates/build/build_base.html:204
-#: build/templates/build/detail.html:122 order/models.py:258
-#: order/templates/order/order_base.html:214
-#: order/templates/order/return_order_base.html:182
-#: order/templates/order/sales_order_base.html:222 part/models.py:1042
+#: build/models.py:288 build/templates/build/build_base.html:205
+#: build/templates/build/detail.html:122 order/models.py:262
+#: order/templates/order/order_base.html:217
+#: order/templates/order/return_order_base.html:189
+#: order/templates/order/sales_order_base.html:229 part/models.py:1043
#: part/templates/part/part_base.html:392
#: report/templates/report/inventree_build_order_base.html:158
-#: templates/js/translated/build.js:2925
-#: templates/js/translated/purchase_order.js:1723
-#: templates/js/translated/return_order.js:347
-#: templates/js/translated/table_filters.js:461
+#: templates/js/translated/build.js:2142
+#: templates/js/translated/purchase_order.js:1738
+#: templates/js/translated/return_order.js:359
+#: templates/js/translated/table_filters.js:467
msgid "Responsible"
msgstr ""
-#: build/models.py:285
+#: build/models.py:289
msgid "User or group responsible for this build order"
msgstr ""
-#: build/models.py:290 build/templates/build/detail.html:108
+#: build/models.py:294 build/templates/build/detail.html:108
#: company/templates/company/manufacturer_part.html:107
#: company/templates/company/supplier_part.html:195
-#: order/templates/order/order_base.html:171
+#: order/templates/order/order_base.html:167
#: order/templates/order/return_order_base.html:146
#: order/templates/order/sales_order_base.html:181
#: part/templates/part/part_base.html:385 stock/models.py:733
#: stock/templates/stock/item_base.html:201
+#: templates/js/translated/company.js:1050
msgid "External Link"
msgstr "Ulkoinen linkki"
-#: build/models.py:295
+#: build/models.py:299
msgid "Build Priority"
msgstr ""
-#: build/models.py:298
+#: build/models.py:302
msgid "Priority of this build order"
msgstr ""
-#: build/models.py:536
+#: build/models.py:309 common/models.py:104 order/admin.py:17
+#: order/models.py:237 templates/InvenTree/settings/settings_staff_js.html:70
+#: templates/js/translated/build.js:2067
+#: templates/js/translated/purchase_order.js:1685
+#: templates/js/translated/return_order.js:318
+#: templates/js/translated/sales_order.js:806
+#: templates/js/translated/table_filters.js:24
+#: templates/project_code_data.html:6
+msgid "Project Code"
+msgstr ""
+
+#: build/models.py:310
+msgid "Project code for this build order"
+msgstr ""
+
+#: build/models.py:545
#, python-brace-format
msgid "Build order {build} has been completed"
msgstr ""
-#: build/models.py:542
+#: build/models.py:551
msgid "A build order has been completed"
msgstr ""
-#: build/models.py:744 build/models.py:811
+#: build/models.py:753 build/models.py:831
msgid "No build output specified"
msgstr ""
-#: build/models.py:747
+#: build/models.py:756
msgid "Build output is already completed"
msgstr ""
-#: build/models.py:750
+#: build/models.py:759
msgid "Build output does not match Build Order"
msgstr ""
-#: build/models.py:815 build/serializers.py:212 build/serializers.py:251
-#: build/serializers.py:811 order/models.py:440 order/serializers.py:379
-#: order/serializers.py:501 part/serializers.py:1087 part/serializers.py:1408
-#: stock/models.py:593 stock/models.py:1387 stock/serializers.py:315
+#: build/models.py:835 build/serializers.py:220 build/serializers.py:259
+#: build/serializers.py:819 order/models.py:453 order/serializers.py:385
+#: order/serializers.py:507 part/serializers.py:1149 part/serializers.py:1470
+#: stock/models.py:593 stock/models.py:1387 stock/serializers.py:381
msgid "Quantity must be greater than zero"
msgstr ""
-#: build/models.py:820 build/serializers.py:217
+#: build/models.py:840 build/serializers.py:225
msgid "Quantity cannot be greater than the output quantity"
msgstr ""
-#: build/models.py:1272
-msgid "Build item must specify a build output, as master part is marked as trackable"
+#: build/models.py:1260
+msgid "Build object"
msgstr ""
-#: build/models.py:1281
-#, python-brace-format
-msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})"
-msgstr ""
-
-#: build/models.py:1291 order/models.py:1601
-msgid "Stock item is over-allocated"
-msgstr ""
-
-#: build/models.py:1297 order/models.py:1604
-msgid "Allocation quantity must be greater than zero"
-msgstr ""
-
-#: build/models.py:1303
-msgid "Quantity must be 1 for serialized stock"
-msgstr ""
-
-#: build/models.py:1360
-msgid "Selected stock item not found in BOM"
-msgstr ""
-
-#: build/models.py:1438 stock/templates/stock/item_base.html:170
-#: templates/InvenTree/search.html:139 templates/js/translated/build.js:2841
-#: templates/navbar.html:38
-msgid "Build"
-msgstr ""
-
-#: build/models.py:1439
-msgid "Build to allocate parts"
-msgstr ""
-
-#: build/models.py:1455 build/serializers.py:791 order/serializers.py:1059
-#: order/serializers.py:1080 stock/serializers.py:413 stock/serializers.py:770
-#: stock/serializers.py:896 stock/templates/stock/item_base.html:10
-#: stock/templates/stock/item_base.html:23
-#: stock/templates/stock/item_base.html:195
-#: templates/js/translated/build.js:955 templates/js/translated/build.js:960
-#: templates/js/translated/build.js:2466 templates/js/translated/build.js:3038
-#: templates/js/translated/sales_order.js:286
-#: templates/js/translated/sales_order.js:1186
-#: templates/js/translated/sales_order.js:1485
-#: templates/js/translated/sales_order.js:1490
-#: templates/js/translated/sales_order.js:1591
-#: templates/js/translated/sales_order.js:1678
-#: templates/js/translated/stock.js:644 templates/js/translated/stock.js:810
-#: templates/js/translated/stock.js:2714
-msgid "Stock Item"
-msgstr "Varastotuote"
-
-#: build/models.py:1456
-msgid "Source stock item"
-msgstr ""
-
-#: build/models.py:1468 build/serializers.py:198 build/serializers.py:236
-#: build/templates/build/build_base.html:103
-#: build/templates/build/detail.html:34 common/models.py:2176
-#: order/models.py:1073 order/models.py:1645 order/serializers.py:1233
+#: build/models.py:1274 build/models.py:1556 build/serializers.py:206
+#: build/serializers.py:244 build/templates/build/build_base.html:103
+#: build/templates/build/detail.html:34 common/models.py:2162
+#: order/models.py:1086 order/models.py:1658 order/serializers.py:1239
#: order/templates/order/order_wizard/match_parts.html:30 part/admin.py:277
-#: part/forms.py:47 part/models.py:2992 part/models.py:3779
+#: part/forms.py:47 part/models.py:3026 part/models.py:3823
#: part/templates/part/part_pricing.html:16
#: part/templates/part/upload_bom.html:53
#: report/templates/report/inventree_bill_of_materials_report.html:138
@@ -1203,315 +1200,367 @@ msgstr ""
#: report/templates/report/inventree_so_report_base.html:29
#: report/templates/report/inventree_test_report_base.html:90
#: report/templates/report/inventree_test_report_base.html:170
-#: stock/admin.py:103 stock/serializers.py:306
+#: stock/admin.py:103 stock/serializers.py:372
#: stock/templates/stock/item_base.html:288
#: stock/templates/stock/item_base.html:296
#: stock/templates/stock/item_base.html:343
#: templates/email/build_order_completed.html:18
-#: templates/js/translated/barcode.js:531 templates/js/translated/bom.js:770
-#: templates/js/translated/bom.js:951 templates/js/translated/build.js:504
-#: templates/js/translated/build.js:716 templates/js/translated/build.js:982
-#: templates/js/translated/build.js:1425 templates/js/translated/build.js:1991
-#: templates/js/translated/build.js:2467
-#: templates/js/translated/company.js:1428
-#: templates/js/translated/model_renderers.js:207
-#: templates/js/translated/order.js:304 templates/js/translated/part.js:935
-#: templates/js/translated/part.js:1784 templates/js/translated/part.js:3263
+#: templates/js/translated/barcode.js:531 templates/js/translated/bom.js:771
+#: templates/js/translated/bom.js:969 templates/js/translated/build.js:510
+#: templates/js/translated/build.js:722 templates/js/translated/build.js:1308
+#: templates/js/translated/build.js:1672 templates/js/translated/build.js:2283
+#: templates/js/translated/company.js:1849
+#: templates/js/translated/model_renderers.js:221
+#: templates/js/translated/order.js:304 templates/js/translated/part.js:934
+#: templates/js/translated/part.js:1783 templates/js/translated/part.js:3248
#: templates/js/translated/pricing.js:381
#: templates/js/translated/pricing.js:474
#: templates/js/translated/pricing.js:522
#: templates/js/translated/pricing.js:616
-#: templates/js/translated/purchase_order.js:749
-#: templates/js/translated/purchase_order.js:1815
-#: templates/js/translated/purchase_order.js:2039
-#: templates/js/translated/sales_order.js:302
-#: templates/js/translated/sales_order.js:1187
-#: templates/js/translated/sales_order.js:1504
-#: templates/js/translated/sales_order.js:1594
-#: templates/js/translated/sales_order.js:1684
-#: templates/js/translated/sales_order.js:1804
-#: templates/js/translated/stock.js:531 templates/js/translated/stock.js:669
-#: templates/js/translated/stock.js:840 templates/js/translated/stock.js:2758
-#: templates/js/translated/stock.js:2843
+#: templates/js/translated/purchase_order.js:760
+#: templates/js/translated/purchase_order.js:1830
+#: templates/js/translated/purchase_order.js:2049
+#: templates/js/translated/sales_order.js:314
+#: templates/js/translated/sales_order.js:1199
+#: templates/js/translated/sales_order.js:1516
+#: templates/js/translated/sales_order.js:1606
+#: templates/js/translated/sales_order.js:1696
+#: templates/js/translated/sales_order.js:1816
+#: templates/js/translated/stock.js:530 templates/js/translated/stock.js:668
+#: templates/js/translated/stock.js:839 templates/js/translated/stock.js:2889
+#: templates/js/translated/stock.js:2970
msgid "Quantity"
msgstr "Määrä"
-#: build/models.py:1469
+#: build/models.py:1275
+msgid "Required quantity for build order"
+msgstr ""
+
+#: build/models.py:1357
+msgid "Build item must specify a build output, as master part is marked as trackable"
+msgstr ""
+
+#: build/models.py:1366
+#, python-brace-format
+msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})"
+msgstr ""
+
+#: build/models.py:1376 order/models.py:1614
+msgid "Stock item is over-allocated"
+msgstr ""
+
+#: build/models.py:1382 order/models.py:1617
+msgid "Allocation quantity must be greater than zero"
+msgstr ""
+
+#: build/models.py:1388
+msgid "Quantity must be 1 for serialized stock"
+msgstr ""
+
+#: build/models.py:1449
+msgid "Selected stock item does not match BOM line"
+msgstr ""
+
+#: build/models.py:1543 build/serializers.py:799 order/serializers.py:1065
+#: order/serializers.py:1086 stock/serializers.py:479 stock/serializers.py:887
+#: stock/serializers.py:1013 stock/templates/stock/item_base.html:10
+#: stock/templates/stock/item_base.html:23
+#: stock/templates/stock/item_base.html:195
+#: templates/js/translated/build.js:1671
+#: templates/js/translated/sales_order.js:298
+#: templates/js/translated/sales_order.js:1198
+#: templates/js/translated/sales_order.js:1497
+#: templates/js/translated/sales_order.js:1502
+#: templates/js/translated/sales_order.js:1603
+#: templates/js/translated/sales_order.js:1690
+#: templates/js/translated/stock.js:643 templates/js/translated/stock.js:809
+#: templates/js/translated/stock.js:2845
+msgid "Stock Item"
+msgstr "Varastotuote"
+
+#: build/models.py:1544
+msgid "Source stock item"
+msgstr ""
+
+#: build/models.py:1557
msgid "Stock quantity to allocate to build"
msgstr ""
-#: build/models.py:1477
+#: build/models.py:1565
msgid "Install into"
msgstr ""
-#: build/models.py:1478
+#: build/models.py:1566
msgid "Destination stock item"
msgstr ""
-#: build/serializers.py:148 build/serializers.py:820
-#: templates/js/translated/build.js:1413
+#: build/serializers.py:156 build/serializers.py:828
+#: templates/js/translated/build.js:1299
msgid "Build Output"
msgstr ""
-#: build/serializers.py:160
+#: build/serializers.py:168
msgid "Build output does not match the parent build"
msgstr ""
-#: build/serializers.py:164
+#: build/serializers.py:172
msgid "Output part does not match BuildOrder part"
msgstr ""
-#: build/serializers.py:168
+#: build/serializers.py:176
msgid "This build output has already been completed"
msgstr ""
-#: build/serializers.py:179
+#: build/serializers.py:187
msgid "This build output is not fully allocated"
msgstr ""
-#: build/serializers.py:199 build/serializers.py:237
+#: build/serializers.py:207 build/serializers.py:245
msgid "Enter quantity for build output"
msgstr ""
-#: build/serializers.py:258
+#: build/serializers.py:266
msgid "Integer quantity required for trackable parts"
msgstr ""
-#: build/serializers.py:261
+#: build/serializers.py:269
msgid "Integer quantity required, as the bill of materials contains trackable parts"
msgstr ""
-#: build/serializers.py:276 order/serializers.py:514 order/serializers.py:1237
-#: stock/serializers.py:324 templates/js/translated/purchase_order.js:1123
-#: templates/js/translated/stock.js:334 templates/js/translated/stock.js:532
+#: build/serializers.py:284 order/serializers.py:520 order/serializers.py:1243
+#: stock/serializers.py:390 templates/js/translated/purchase_order.js:1138
+#: templates/js/translated/stock.js:333 templates/js/translated/stock.js:531
msgid "Serial Numbers"
msgstr "Sarjanumerot"
-#: build/serializers.py:277
+#: build/serializers.py:285
msgid "Enter serial numbers for build outputs"
msgstr ""
-#: build/serializers.py:290
+#: build/serializers.py:298
msgid "Auto Allocate Serial Numbers"
msgstr ""
-#: build/serializers.py:291
+#: build/serializers.py:299
msgid "Automatically allocate required items with matching serial numbers"
msgstr ""
-#: build/serializers.py:326 stock/api.py:670
+#: build/serializers.py:334 stock/api.py:707
msgid "The following serial numbers already exist or are invalid"
msgstr ""
-#: build/serializers.py:377 build/serializers.py:439 build/serializers.py:518
+#: build/serializers.py:385 build/serializers.py:447 build/serializers.py:526
msgid "A list of build outputs must be provided"
msgstr ""
-#: build/serializers.py:415 build/serializers.py:488 order/serializers.py:487
-#: order/serializers.py:606 order/serializers.py:1588 part/serializers.py:854
-#: stock/serializers.py:335 stock/serializers.py:470 stock/serializers.py:551
-#: stock/serializers.py:931 stock/serializers.py:1173
+#: build/serializers.py:423 build/serializers.py:496 order/serializers.py:493
+#: order/serializers.py:612 order/serializers.py:1594 part/serializers.py:916
+#: stock/serializers.py:401 stock/serializers.py:537 stock/serializers.py:618
+#: stock/serializers.py:1048 stock/serializers.py:1290
#: stock/templates/stock/item_base.html:390
#: templates/js/translated/barcode.js:530
-#: templates/js/translated/barcode.js:778 templates/js/translated/build.js:967
-#: templates/js/translated/build.js:2006
-#: templates/js/translated/purchase_order.js:1148
-#: templates/js/translated/purchase_order.js:1238
-#: templates/js/translated/sales_order.js:1497
-#: templates/js/translated/sales_order.js:1605
-#: templates/js/translated/sales_order.js:1613
-#: templates/js/translated/sales_order.js:1692
-#: templates/js/translated/stock.js:645 templates/js/translated/stock.js:811
-#: templates/js/translated/stock.js:1023 templates/js/translated/stock.js:1937
-#: templates/js/translated/stock.js:2608
+#: templates/js/translated/barcode.js:778 templates/js/translated/build.js:980
+#: templates/js/translated/build.js:2298
+#: templates/js/translated/purchase_order.js:1163
+#: templates/js/translated/purchase_order.js:1253
+#: templates/js/translated/sales_order.js:1509
+#: templates/js/translated/sales_order.js:1617
+#: templates/js/translated/sales_order.js:1625
+#: templates/js/translated/sales_order.js:1704
+#: templates/js/translated/stock.js:644 templates/js/translated/stock.js:810
+#: templates/js/translated/stock.js:1022 templates/js/translated/stock.js:2094
+#: templates/js/translated/stock.js:2739
msgid "Location"
msgstr "Sijainti"
-#: build/serializers.py:416
+#: build/serializers.py:424
msgid "Stock location for scrapped outputs"
msgstr ""
-#: build/serializers.py:422
+#: build/serializers.py:430
msgid "Discard Allocations"
msgstr ""
-#: build/serializers.py:423
+#: build/serializers.py:431
msgid "Discard any stock allocations for scrapped outputs"
msgstr ""
-#: build/serializers.py:428
+#: build/serializers.py:436
msgid "Reason for scrapping build output(s)"
msgstr ""
-#: build/serializers.py:489
+#: build/serializers.py:497
msgid "Location for completed build outputs"
msgstr ""
-#: build/serializers.py:495 build/templates/build/build_base.html:151
-#: build/templates/build/detail.html:62 order/models.py:791
-#: order/models.py:1750 order/serializers.py:524 stock/admin.py:106
-#: stock/templates/stock/item_base.html:423
-#: templates/js/translated/barcode.js:252 templates/js/translated/build.js:2897
-#: templates/js/translated/purchase_order.js:1278
-#: templates/js/translated/purchase_order.js:1682
-#: templates/js/translated/return_order.js:319
-#: templates/js/translated/sales_order.js:807
-#: templates/js/translated/stock.js:1912 templates/js/translated/stock.js:2732
-#: templates/js/translated/stock.js:2859
+#: build/serializers.py:503 build/templates/build/build_base.html:152
+#: build/templates/build/detail.html:62 order/models.py:804
+#: order/models.py:1763 order/serializers.py:530 stock/admin.py:106
+#: stock/serializers.py:677 stock/templates/stock/item_base.html:423
+#: templates/js/translated/barcode.js:252 templates/js/translated/build.js:2114
+#: templates/js/translated/purchase_order.js:1293
+#: templates/js/translated/purchase_order.js:1697
+#: templates/js/translated/return_order.js:331
+#: templates/js/translated/sales_order.js:819
+#: templates/js/translated/stock.js:2069 templates/js/translated/stock.js:2863
+#: templates/js/translated/stock.js:2986
msgid "Status"
msgstr "Tila"
-#: build/serializers.py:501
+#: build/serializers.py:509
msgid "Accept Incomplete Allocation"
msgstr ""
-#: build/serializers.py:502
+#: build/serializers.py:510
msgid "Complete outputs if stock has not been fully allocated"
msgstr ""
-#: build/serializers.py:571
+#: build/serializers.py:579
msgid "Remove Allocated Stock"
msgstr ""
-#: build/serializers.py:572
+#: build/serializers.py:580
msgid "Subtract any stock which has already been allocated to this build"
msgstr ""
-#: build/serializers.py:578
+#: build/serializers.py:586
msgid "Remove Incomplete Outputs"
msgstr ""
-#: build/serializers.py:579
+#: build/serializers.py:587
msgid "Delete any build outputs which have not been completed"
msgstr ""
-#: build/serializers.py:606
+#: build/serializers.py:614
msgid "Not permitted"
msgstr "Ei sallittu"
-#: build/serializers.py:607
+#: build/serializers.py:615
msgid "Accept as consumed by this build order"
msgstr ""
-#: build/serializers.py:608
+#: build/serializers.py:616
msgid "Deallocate before completing this build order"
msgstr ""
-#: build/serializers.py:631
+#: build/serializers.py:639
msgid "Overallocated Stock"
msgstr ""
-#: build/serializers.py:633
+#: build/serializers.py:641
msgid "How do you want to handle extra stock items assigned to the build order"
msgstr ""
-#: build/serializers.py:643
+#: build/serializers.py:651
msgid "Some stock items have been overallocated"
msgstr ""
-#: build/serializers.py:648
+#: build/serializers.py:656
msgid "Accept Unallocated"
msgstr ""
-#: build/serializers.py:649
+#: build/serializers.py:657
msgid "Accept that stock items have not been fully allocated to this build order"
msgstr ""
-#: build/serializers.py:659 templates/js/translated/build.js:295
+#: build/serializers.py:667 templates/js/translated/build.js:304
msgid "Required stock has not been fully allocated"
msgstr ""
-#: build/serializers.py:664 order/serializers.py:261 order/serializers.py:1127
+#: build/serializers.py:672 order/serializers.py:267 order/serializers.py:1133
msgid "Accept Incomplete"
msgstr ""
-#: build/serializers.py:665
+#: build/serializers.py:673
msgid "Accept that the required number of build outputs have not been completed"
msgstr ""
-#: build/serializers.py:675 templates/js/translated/build.js:299
+#: build/serializers.py:683 templates/js/translated/build.js:308
msgid "Required build quantity has not been completed"
msgstr ""
-#: build/serializers.py:684 templates/js/translated/build.js:283
+#: build/serializers.py:692 templates/js/translated/build.js:292
msgid "Build order has incomplete outputs"
msgstr ""
-#: build/serializers.py:714 build/serializers.py:768 part/models.py:3686
-#: part/models.py:4069
-msgid "BOM Item"
-msgstr ""
-
-#: build/serializers.py:724
-msgid "Build output"
+#: build/serializers.py:722
+msgid "Build Line"
msgstr ""
#: build/serializers.py:732
+msgid "Build output"
+msgstr ""
+
+#: build/serializers.py:740
msgid "Build output must point to the same build"
msgstr ""
-#: build/serializers.py:782
+#: build/serializers.py:776
+msgid "Build Line Item"
+msgstr ""
+
+#: build/serializers.py:790
msgid "bom_item.part must point to the same part as the build order"
msgstr ""
-#: build/serializers.py:797 stock/serializers.py:783
+#: build/serializers.py:805 stock/serializers.py:900
msgid "Item must be in stock"
msgstr ""
-#: build/serializers.py:846 order/serializers.py:1117
+#: build/serializers.py:853 order/serializers.py:1123
#, python-brace-format
msgid "Available quantity ({q}) exceeded"
msgstr ""
-#: build/serializers.py:852
+#: build/serializers.py:859
msgid "Build output must be specified for allocation of tracked parts"
msgstr ""
-#: build/serializers.py:859
+#: build/serializers.py:866
msgid "Build output cannot be specified for allocation of untracked parts"
msgstr ""
-#: build/serializers.py:864
+#: build/serializers.py:871
msgid "This stock item has already been allocated to this build output"
msgstr ""
-#: build/serializers.py:887 order/serializers.py:1401
+#: build/serializers.py:894 order/serializers.py:1407
msgid "Allocation items must be provided"
msgstr ""
-#: build/serializers.py:943
+#: build/serializers.py:947
msgid "Stock location where parts are to be sourced (leave blank to take from any location)"
msgstr ""
-#: build/serializers.py:951
+#: build/serializers.py:955
msgid "Exclude Location"
msgstr ""
-#: build/serializers.py:952
+#: build/serializers.py:956
msgid "Exclude stock items from this selected location"
msgstr ""
-#: build/serializers.py:957
+#: build/serializers.py:961
msgid "Interchangeable Stock"
msgstr ""
-#: build/serializers.py:958
+#: build/serializers.py:962
msgid "Stock items in multiple locations can be used interchangeably"
msgstr ""
-#: build/serializers.py:963
+#: build/serializers.py:967
msgid "Substitute Stock"
msgstr ""
-#: build/serializers.py:964
+#: build/serializers.py:968
msgid "Allow allocation of substitute parts"
msgstr ""
-#: build/serializers.py:969
+#: build/serializers.py:973
msgid "Optional Items"
msgstr ""
-#: build/serializers.py:970
+#: build/serializers.py:974
msgid "Allocate optional BOM items to build order"
msgstr ""
@@ -1540,6 +1589,7 @@ msgstr ""
#: part/templates/part/part_base.html:43
#: stock/templates/stock/item_base.html:41
#: stock/templates/stock/location.html:54
+#: templates/js/translated/filters.js:336
msgid "Barcode actions"
msgstr ""
@@ -1618,69 +1668,67 @@ msgstr ""
msgid "Build Description"
msgstr ""
-#: build/templates/build/build_base.html:117
+#: build/templates/build/build_base.html:118
msgid "No build outputs have been created for this build order"
msgstr ""
-#: build/templates/build/build_base.html:124
+#: build/templates/build/build_base.html:125
msgid "Build Order is ready to mark as completed"
msgstr ""
-#: build/templates/build/build_base.html:129
+#: build/templates/build/build_base.html:130
msgid "Build Order cannot be completed as outstanding outputs remain"
msgstr ""
-#: build/templates/build/build_base.html:134
+#: build/templates/build/build_base.html:135
msgid "Required build quantity has not yet been completed"
msgstr ""
-#: build/templates/build/build_base.html:139
+#: build/templates/build/build_base.html:140
msgid "Stock has not been fully allocated to this Build Order"
msgstr ""
-#: build/templates/build/build_base.html:160
-#: build/templates/build/detail.html:138 order/models.py:240
-#: order/models.py:1099 order/templates/order/order_base.html:190
+#: build/templates/build/build_base.html:161
+#: build/templates/build/detail.html:138 order/models.py:244
+#: order/models.py:1112 order/templates/order/order_base.html:186
#: order/templates/order/return_order_base.html:165
#: order/templates/order/sales_order_base.html:193
#: report/templates/report/inventree_build_order_base.html:125
-#: templates/js/translated/build.js:2945 templates/js/translated/part.js:1802
-#: templates/js/translated/purchase_order.js:1699
-#: templates/js/translated/purchase_order.js:2115
-#: templates/js/translated/return_order.js:335
-#: templates/js/translated/return_order.js:735
-#: templates/js/translated/sales_order.js:823
-#: templates/js/translated/sales_order.js:1847
+#: templates/js/translated/build.js:2162 templates/js/translated/part.js:1801
+#: templates/js/translated/purchase_order.js:1714
+#: templates/js/translated/purchase_order.js:2125
+#: templates/js/translated/return_order.js:347
+#: templates/js/translated/return_order.js:747
+#: templates/js/translated/sales_order.js:835
+#: templates/js/translated/sales_order.js:1859
msgid "Target Date"
msgstr ""
-#: build/templates/build/build_base.html:165
+#: build/templates/build/build_base.html:166
#, python-format
msgid "This build was due on %(target)s"
msgstr ""
-#: build/templates/build/build_base.html:165
-#: build/templates/build/build_base.html:222
-#: order/templates/order/order_base.html:126
+#: build/templates/build/build_base.html:166
+#: build/templates/build/build_base.html:223
+#: order/templates/order/order_base.html:122
#: order/templates/order/return_order_base.html:118
#: order/templates/order/sales_order_base.html:123
-#: templates/js/translated/table_filters.js:68
-#: templates/js/translated/table_filters.js:454
-#: templates/js/translated/table_filters.js:539
-#: templates/js/translated/table_filters.js:580
+#: templates/js/translated/table_filters.js:74
+#: templates/js/translated/table_filters.js:460
+#: templates/js/translated/table_filters.js:561
+#: templates/js/translated/table_filters.js:602
msgid "Overdue"
msgstr "Myöhässä"
-#: build/templates/build/build_base.html:177
-#: build/templates/build/detail.html:67 build/templates/build/detail.html:149
-#: order/templates/order/sales_order_base.html:203
-#: templates/js/translated/table_filters.js:602
-msgid "Completed"
-msgstr "Valmis"
+#: build/templates/build/build_base.html:178
+#: build/templates/build/detail.html:67 build/templates/build/sidebar.html:13
+msgid "Completed Outputs"
+msgstr ""
-#: build/templates/build/build_base.html:190
-#: build/templates/build/detail.html:101 order/api.py:1454 order/models.py:1304
-#: order/models.py:1403 order/models.py:1551
+#: build/templates/build/build_base.html:191
+#: build/templates/build/detail.html:101 order/api.py:1454 order/models.py:1317
+#: order/models.py:1416 order/models.py:1564
#: order/templates/order/sales_order_base.html:9
#: order/templates/order/sales_order_base.html:28
#: report/templates/report/inventree_build_order_base.html:135
@@ -1688,32 +1736,32 @@ msgstr "Valmis"
#: stock/templates/stock/item_base.html:370
#: templates/email/overdue_sales_order.html:15
#: templates/js/translated/pricing.js:915
-#: templates/js/translated/sales_order.js:757
-#: templates/js/translated/sales_order.js:980
-#: templates/js/translated/stock.js:2661
+#: templates/js/translated/sales_order.js:769
+#: templates/js/translated/sales_order.js:992
+#: templates/js/translated/stock.js:2792
msgid "Sales Order"
msgstr ""
-#: build/templates/build/build_base.html:197
+#: build/templates/build/build_base.html:198
#: build/templates/build/detail.html:115
#: report/templates/report/inventree_build_order_base.html:152
msgid "Issued By"
msgstr ""
-#: build/templates/build/build_base.html:211
-#: build/templates/build/detail.html:94 templates/js/translated/build.js:2862
+#: build/templates/build/build_base.html:212
+#: build/templates/build/detail.html:94 templates/js/translated/build.js:2079
msgid "Priority"
msgstr "Prioriteetti"
-#: build/templates/build/build_base.html:273
+#: build/templates/build/build_base.html:274
msgid "Delete Build Order"
msgstr ""
-#: build/templates/build/build_base.html:283
+#: build/templates/build/build_base.html:284
msgid "Build Order QR Code"
msgstr ""
-#: build/templates/build/build_base.html:295
+#: build/templates/build/build_base.html:296
msgid "Link Barcode to Build Order"
msgstr ""
@@ -1729,8 +1777,8 @@ msgstr ""
msgid "Stock can be taken from any available location."
msgstr ""
-#: build/templates/build/detail.html:49 order/models.py:1222
-#: templates/js/translated/purchase_order.js:2157
+#: build/templates/build/detail.html:49 order/models.py:1235
+#: templates/js/translated/purchase_order.js:2167
msgid "Destination"
msgstr ""
@@ -1744,21 +1792,21 @@ msgstr ""
#: build/templates/build/detail.html:80 stock/admin.py:105
#: stock/templates/stock/item_base.html:163
-#: templates/js/translated/build.js:1432
-#: templates/js/translated/model_renderers.js:212
-#: templates/js/translated/purchase_order.js:1244
-#: templates/js/translated/stock.js:1093 templates/js/translated/stock.js:1926
-#: templates/js/translated/stock.js:2866
-#: templates/js/translated/table_filters.js:259
-#: templates/js/translated/table_filters.js:350
+#: templates/js/translated/build.js:1319
+#: templates/js/translated/model_renderers.js:226
+#: templates/js/translated/purchase_order.js:1259
+#: templates/js/translated/stock.js:1092 templates/js/translated/stock.js:2083
+#: templates/js/translated/stock.js:2993
+#: templates/js/translated/table_filters.js:265
+#: templates/js/translated/table_filters.js:356
msgid "Batch"
msgstr ""
#: build/templates/build/detail.html:133
-#: order/templates/order/order_base.html:177
+#: order/templates/order/order_base.html:173
#: order/templates/order/return_order_base.html:152
#: order/templates/order/sales_order_base.html:187
-#: templates/js/translated/build.js:2905
+#: templates/js/translated/build.js:2122
msgid "Created"
msgstr ""
@@ -1766,147 +1814,106 @@ msgstr ""
msgid "No target date set"
msgstr ""
+#: build/templates/build/detail.html:149
+#: order/templates/order/sales_order_base.html:203
+#: templates/js/translated/table_filters.js:624
+msgid "Completed"
+msgstr "Valmis"
+
#: build/templates/build/detail.html:153
msgid "Build not complete"
msgstr ""
-#: build/templates/build/detail.html:164 build/templates/build/sidebar.html:19
+#: build/templates/build/detail.html:164 build/templates/build/sidebar.html:17
msgid "Child Build Orders"
msgstr ""
-#: build/templates/build/detail.html:179
+#: build/templates/build/detail.html:177
msgid "Allocate Stock to Build"
msgstr ""
-#: build/templates/build/detail.html:183 templates/js/translated/build.js:2276
-msgid "Unallocate stock"
+#: build/templates/build/detail.html:181
+msgid "Deallocate stock"
+msgstr ""
+
+#: build/templates/build/detail.html:182
+msgid "Deallocate Stock"
msgstr ""
#: build/templates/build/detail.html:184
-msgid "Unallocate Stock"
-msgstr ""
-
-#: build/templates/build/detail.html:186
msgid "Automatically allocate stock to build"
msgstr ""
-#: build/templates/build/detail.html:187
+#: build/templates/build/detail.html:185
msgid "Auto Allocate"
msgstr ""
-#: build/templates/build/detail.html:189
+#: build/templates/build/detail.html:187
msgid "Manually allocate stock to build"
msgstr ""
-#: build/templates/build/detail.html:190 build/templates/build/sidebar.html:8
+#: build/templates/build/detail.html:188 build/templates/build/sidebar.html:8
msgid "Allocate Stock"
msgstr ""
-#: build/templates/build/detail.html:193
+#: build/templates/build/detail.html:191
msgid "Order required parts"
msgstr ""
-#: build/templates/build/detail.html:194
-#: company/templates/company/detail.html:38
-#: company/templates/company/detail.html:86
-#: part/templates/part/category.html:184
-#: templates/js/translated/purchase_order.js:789
+#: build/templates/build/detail.html:192
+#: templates/js/translated/purchase_order.js:800
msgid "Order Parts"
msgstr ""
-#: build/templates/build/detail.html:206
-msgid "Untracked stock has been fully allocated for this Build Order"
-msgstr ""
-
#: build/templates/build/detail.html:210
-msgid "Untracked stock has not been fully allocated for this Build Order"
-msgstr ""
-
-#: build/templates/build/detail.html:217
-msgid "Allocate selected items"
-msgstr ""
-
-#: build/templates/build/detail.html:227
-msgid "This Build Order does not have any associated untracked BOM items"
-msgstr ""
-
-#: build/templates/build/detail.html:236
msgid "Incomplete Build Outputs"
msgstr ""
-#: build/templates/build/detail.html:240
+#: build/templates/build/detail.html:214
msgid "Create new build output"
msgstr ""
-#: build/templates/build/detail.html:241
+#: build/templates/build/detail.html:215
msgid "New Build Output"
msgstr ""
-#: build/templates/build/detail.html:255
-msgid "Output Actions"
-msgstr ""
-
-#: build/templates/build/detail.html:260
-msgid "Complete selected build outputs"
-msgstr ""
-
-#: build/templates/build/detail.html:261
-msgid "Complete outputs"
-msgstr ""
-
-#: build/templates/build/detail.html:265
-msgid "Scrap selected build outputs"
-msgstr ""
-
-#: build/templates/build/detail.html:266
-msgid "Scrap outputs"
-msgstr ""
-
-#: build/templates/build/detail.html:270
-msgid "Delete selected build outputs"
-msgstr ""
-
-#: build/templates/build/detail.html:271
-msgid "Delete outputs"
-msgstr ""
-
-#: build/templates/build/detail.html:288 build/templates/build/sidebar.html:11
+#: build/templates/build/detail.html:232 build/templates/build/sidebar.html:15
msgid "Consumed Stock"
msgstr ""
-#: build/templates/build/detail.html:300
+#: build/templates/build/detail.html:244
msgid "Completed Build Outputs"
msgstr ""
-#: build/templates/build/detail.html:312 build/templates/build/sidebar.html:21
-#: company/templates/company/detail.html:261
-#: company/templates/company/manufacturer_part.html:151
+#: build/templates/build/detail.html:256 build/templates/build/sidebar.html:19
+#: company/templates/company/detail.html:229
+#: company/templates/company/manufacturer_part.html:141
#: company/templates/company/manufacturer_part_sidebar.html:9
-#: company/templates/company/sidebar.html:37
+#: company/templates/company/sidebar.html:39
#: order/templates/order/po_sidebar.html:9
-#: order/templates/order/purchase_order_detail.html:102
-#: order/templates/order/return_order_detail.html:74
+#: order/templates/order/purchase_order_detail.html:84
+#: order/templates/order/return_order_detail.html:70
#: order/templates/order/return_order_sidebar.html:7
-#: order/templates/order/sales_order_detail.html:134
-#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:234
-#: part/templates/part/part_sidebar.html:61 stock/templates/stock/item.html:117
+#: order/templates/order/sales_order_detail.html:124
+#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:217
+#: part/templates/part/part_sidebar.html:61 stock/templates/stock/item.html:109
#: stock/templates/stock/stock_sidebar.html:23
msgid "Attachments"
msgstr "Liitteet"
-#: build/templates/build/detail.html:327
+#: build/templates/build/detail.html:271
msgid "Build Notes"
msgstr ""
-#: build/templates/build/detail.html:502
+#: build/templates/build/detail.html:425
msgid "Allocation Complete"
msgstr ""
-#: build/templates/build/detail.html:503
-msgid "All untracked stock items have been allocated"
+#: build/templates/build/detail.html:426
+msgid "All lines have been fully allocated"
msgstr ""
-#: build/templates/build/index.html:18 part/templates/part/detail.html:340
+#: build/templates/build/index.html:18 part/templates/part/detail.html:319
msgid "New Build Order"
msgstr ""
@@ -1914,14 +1921,10 @@ msgstr ""
msgid "Build Order Details"
msgstr ""
-#: build/templates/build/sidebar.html:14
+#: build/templates/build/sidebar.html:10
msgid "Incomplete Outputs"
msgstr ""
-#: build/templates/build/sidebar.html:17
-msgid "Completed Outputs"
-msgstr ""
-
#: common/files.py:63
#, python-brace-format
msgid "Unsupported file format: {fmt}"
@@ -1968,16 +1971,6 @@ msgstr "Päivitetty"
msgid "Timestamp of last update"
msgstr "Viimeisimmän päivityksen aikaleima"
-#: common/models.py:104 order/admin.py:17 order/models.py:234
-#: templates/InvenTree/settings/settings_staff_js.html:70
-#: templates/js/translated/purchase_order.js:1670
-#: templates/js/translated/return_order.js:306
-#: templates/js/translated/sales_order.js:794
-#: templates/js/translated/table_filters.js:24
-#: templates/project_code_data.html:6
-msgid "Project Code"
-msgstr ""
-
#: common/models.py:105
msgid "Unique project code"
msgstr ""
@@ -2261,9 +2254,9 @@ msgstr ""
msgid "Copy category parameter templates when creating a part"
msgstr ""
-#: common/models.py:1162 part/admin.py:55 part/models.py:3560
-#: report/models.py:166 templates/js/translated/table_filters.js:109
-#: templates/js/translated/table_filters.js:680
+#: common/models.py:1162 part/admin.py:55 part/models.py:3594
+#: report/models.py:166 templates/js/translated/table_filters.js:115
+#: templates/js/translated/table_filters.js:702
msgid "Template"
msgstr ""
@@ -2271,10 +2264,10 @@ msgstr ""
msgid "Parts are templates by default"
msgstr ""
-#: common/models.py:1169 part/admin.py:51 part/admin.py:283 part/models.py:996
-#: templates/js/translated/bom.js:1598
-#: templates/js/translated/table_filters.js:276
-#: templates/js/translated/table_filters.js:634
+#: common/models.py:1169 part/admin.py:51 part/admin.py:283 part/models.py:997
+#: templates/js/translated/bom.js:1618
+#: templates/js/translated/table_filters.js:282
+#: templates/js/translated/table_filters.js:656
msgid "Assembly"
msgstr ""
@@ -2282,8 +2275,8 @@ msgstr ""
msgid "Parts can be assembled from other components by default"
msgstr ""
-#: common/models.py:1176 part/admin.py:52 part/models.py:1002
-#: templates/js/translated/table_filters.js:642
+#: common/models.py:1176 part/admin.py:52 part/models.py:1003
+#: templates/js/translated/table_filters.js:664
msgid "Component"
msgstr "Komponentti"
@@ -2291,7 +2284,7 @@ msgstr "Komponentti"
msgid "Parts can be used as sub-components by default"
msgstr ""
-#: common/models.py:1183 part/admin.py:53 part/models.py:1013
+#: common/models.py:1183 part/admin.py:53 part/models.py:1014
msgid "Purchaseable"
msgstr "Ostettavissa"
@@ -2299,8 +2292,8 @@ msgstr "Ostettavissa"
msgid "Parts are purchaseable by default"
msgstr ""
-#: common/models.py:1190 part/admin.py:54 part/models.py:1018
-#: templates/js/translated/table_filters.js:668
+#: common/models.py:1190 part/admin.py:54 part/models.py:1019
+#: templates/js/translated/table_filters.js:690
msgid "Salable"
msgstr ""
@@ -2308,10 +2301,10 @@ msgstr ""
msgid "Parts are salable by default"
msgstr ""
-#: common/models.py:1197 part/admin.py:56 part/models.py:1008
-#: templates/js/translated/table_filters.js:117
-#: templates/js/translated/table_filters.js:193
-#: templates/js/translated/table_filters.js:684
+#: common/models.py:1197 part/admin.py:56 part/models.py:1009
+#: templates/js/translated/table_filters.js:123
+#: templates/js/translated/table_filters.js:199
+#: templates/js/translated/table_filters.js:706
msgid "Trackable"
msgstr "Seurattavissa"
@@ -2319,10 +2312,10 @@ msgstr "Seurattavissa"
msgid "Parts are trackable by default"
msgstr ""
-#: common/models.py:1204 part/admin.py:57 part/models.py:1028
+#: common/models.py:1204 part/admin.py:57 part/models.py:1029
#: part/templates/part/part_base.html:156
-#: templates/js/translated/table_filters.js:113
-#: templates/js/translated/table_filters.js:688
+#: templates/js/translated/table_filters.js:119
+#: templates/js/translated/table_filters.js:710
msgid "Virtual"
msgstr ""
@@ -2354,7 +2347,7 @@ msgstr ""
msgid "Allow creation of initial stock when adding a new part"
msgstr ""
-#: common/models.py:1232 templates/js/translated/part.js:108
+#: common/models.py:1232 templates/js/translated/part.js:107
msgid "Initial Supplier Data"
msgstr ""
@@ -2603,179 +2596,179 @@ msgid "Stock location default icon (empty means no icon)"
msgstr ""
#: common/models.py:1471
-msgid "Build Order Reference Pattern"
+msgid "Show Installed Stock Items"
msgstr ""
#: common/models.py:1472
-msgid "Required pattern for generating Build Order reference field"
+msgid "Display installed stock items in stock tables"
msgstr ""
#: common/models.py:1478
-msgid "Enable Return Orders"
+msgid "Build Order Reference Pattern"
msgstr ""
#: common/models.py:1479
-msgid "Enable return order functionality in the user interface"
+msgid "Required pattern for generating Build Order reference field"
msgstr ""
#: common/models.py:1485
-msgid "Return Order Reference Pattern"
+msgid "Enable Return Orders"
msgstr ""
#: common/models.py:1486
-msgid "Required pattern for generating Return Order reference field"
+msgid "Enable return order functionality in the user interface"
msgstr ""
#: common/models.py:1492
-msgid "Edit Completed Return Orders"
+msgid "Return Order Reference Pattern"
msgstr ""
#: common/models.py:1493
-msgid "Allow editing of return orders after they have been completed"
+msgid "Required pattern for generating Return Order reference field"
msgstr ""
#: common/models.py:1499
-msgid "Sales Order Reference Pattern"
+msgid "Edit Completed Return Orders"
msgstr ""
#: common/models.py:1500
-msgid "Required pattern for generating Sales Order reference field"
+msgid "Allow editing of return orders after they have been completed"
msgstr ""
#: common/models.py:1506
-msgid "Sales Order Default Shipment"
+msgid "Sales Order Reference Pattern"
msgstr ""
#: common/models.py:1507
-msgid "Enable creation of default shipment with sales orders"
+msgid "Required pattern for generating Sales Order reference field"
msgstr ""
#: common/models.py:1513
-msgid "Edit Completed Sales Orders"
+msgid "Sales Order Default Shipment"
msgstr ""
#: common/models.py:1514
-msgid "Allow editing of sales orders after they have been shipped or completed"
+msgid "Enable creation of default shipment with sales orders"
msgstr ""
#: common/models.py:1520
-msgid "Purchase Order Reference Pattern"
+msgid "Edit Completed Sales Orders"
msgstr ""
#: common/models.py:1521
-msgid "Required pattern for generating Purchase Order reference field"
+msgid "Allow editing of sales orders after they have been shipped or completed"
msgstr ""
#: common/models.py:1527
-msgid "Edit Completed Purchase Orders"
+msgid "Purchase Order Reference Pattern"
msgstr ""
#: common/models.py:1528
-msgid "Allow editing of purchase orders after they have been shipped or completed"
+msgid "Required pattern for generating Purchase Order reference field"
+msgstr ""
+
+#: common/models.py:1534
+msgid "Edit Completed Purchase Orders"
msgstr ""
#: common/models.py:1535
-msgid "Enable password forgot"
-msgstr "Salli salasananpalautus"
-
-#: common/models.py:1536
-msgid "Enable password forgot function on the login pages"
+msgid "Allow editing of purchase orders after they have been shipped or completed"
msgstr ""
#: common/models.py:1542
-msgid "Enable registration"
-msgstr "Salli rekisteröinti"
+msgid "Enable password forgot"
+msgstr "Salli salasananpalautus"
#: common/models.py:1543
-msgid "Enable self-registration for users on the login pages"
+msgid "Enable password forgot function on the login pages"
msgstr ""
#: common/models.py:1549
+msgid "Enable registration"
+msgstr "Salli rekisteröinti"
+
+#: common/models.py:1550
+msgid "Enable self-registration for users on the login pages"
+msgstr ""
+
+#: common/models.py:1556
msgid "Enable SSO"
msgstr "Salli SSO"
-#: common/models.py:1550
+#: common/models.py:1557
msgid "Enable SSO on the login pages"
msgstr "Salli SSO kirjautumissivuilla"
-#: common/models.py:1556
+#: common/models.py:1563
msgid "Enable SSO registration"
msgstr "Salli SSO rekisteröinti"
-#: common/models.py:1557
+#: common/models.py:1564
msgid "Enable self-registration via SSO for users on the login pages"
msgstr ""
-#: common/models.py:1563
+#: common/models.py:1570
msgid "Email required"
msgstr "Sähköposti vaaditaan"
-#: common/models.py:1564
+#: common/models.py:1571
msgid "Require user to supply mail on signup"
msgstr ""
-#: common/models.py:1570
+#: common/models.py:1577
msgid "Auto-fill SSO users"
msgstr ""
-#: common/models.py:1571
+#: common/models.py:1578
msgid "Automatically fill out user-details from SSO account-data"
msgstr ""
-#: common/models.py:1577
+#: common/models.py:1584
msgid "Mail twice"
msgstr "Sähköpostiosoite kahdesti"
-#: common/models.py:1578
+#: common/models.py:1585
msgid "On signup ask users twice for their mail"
msgstr ""
-#: common/models.py:1584
+#: common/models.py:1591
msgid "Password twice"
msgstr "Salasana kahdesti"
-#: common/models.py:1585
+#: common/models.py:1592
msgid "On signup ask users twice for their password"
msgstr ""
-#: common/models.py:1591
+#: common/models.py:1598
msgid "Allowed domains"
msgstr "Sallitut verkkotunnukset"
-#: common/models.py:1592
+#: common/models.py:1599
msgid "Restrict signup to certain domains (comma-separated, starting with @)"
msgstr ""
-#: common/models.py:1598
+#: common/models.py:1605
msgid "Group on signup"
msgstr ""
-#: common/models.py:1599
+#: common/models.py:1606
msgid "Group to which new users are assigned on registration"
msgstr ""
-#: common/models.py:1605
+#: common/models.py:1612
msgid "Enforce MFA"
msgstr "Pakota MFA"
-#: common/models.py:1606
+#: common/models.py:1613
msgid "Users must use multifactor security."
msgstr ""
-#: common/models.py:1612
+#: common/models.py:1619
msgid "Check plugins on startup"
msgstr ""
-#: common/models.py:1613
-msgid "Check that all plugins are installed on startup - enable in container environments"
-msgstr ""
-
#: common/models.py:1620
-msgid "Check plugin signatures"
-msgstr ""
-
-#: common/models.py:1621
-msgid "Check and show signatures for plugins"
+msgid "Check that all plugins are installed on startup - enable in container environments"
msgstr ""
#: common/models.py:1628
@@ -2850,7 +2843,7 @@ msgstr ""
msgid "Stocktake reports will be deleted after specified number of days"
msgstr ""
-#: common/models.py:1710 common/models.py:2147
+#: common/models.py:1710 common/models.py:2133
msgid "Settings key (must be unique - case insensitive"
msgstr ""
@@ -2891,528 +2884,513 @@ msgid "Show latest parts on the homepage"
msgstr ""
#: common/models.py:1779
-msgid "Recent Part Count"
-msgstr ""
-
-#: common/models.py:1780
-msgid "Number of recent parts to display on index page"
-msgstr ""
-
-#: common/models.py:1786
msgid "Show unvalidated BOMs"
msgstr ""
-#: common/models.py:1787
+#: common/models.py:1780
msgid "Show BOMs that await validation on the homepage"
msgstr ""
-#: common/models.py:1793
+#: common/models.py:1786
msgid "Show recent stock changes"
msgstr ""
-#: common/models.py:1794
+#: common/models.py:1787
msgid "Show recently changed stock items on the homepage"
msgstr ""
-#: common/models.py:1800
-msgid "Recent Stock Count"
-msgstr ""
-
-#: common/models.py:1801
-msgid "Number of recent stock items to display on index page"
-msgstr ""
-
-#: common/models.py:1807
+#: common/models.py:1793
msgid "Show low stock"
msgstr ""
-#: common/models.py:1808
+#: common/models.py:1794
msgid "Show low stock items on the homepage"
msgstr ""
-#: common/models.py:1814
+#: common/models.py:1800
msgid "Show depleted stock"
msgstr ""
-#: common/models.py:1815
+#: common/models.py:1801
msgid "Show depleted stock items on the homepage"
msgstr ""
-#: common/models.py:1821
+#: common/models.py:1807
msgid "Show needed stock"
msgstr ""
-#: common/models.py:1822
+#: common/models.py:1808
msgid "Show stock items needed for builds on the homepage"
msgstr ""
-#: common/models.py:1828
+#: common/models.py:1814
msgid "Show expired stock"
msgstr ""
-#: common/models.py:1829
+#: common/models.py:1815
msgid "Show expired stock items on the homepage"
msgstr ""
-#: common/models.py:1835
+#: common/models.py:1821
msgid "Show stale stock"
msgstr ""
-#: common/models.py:1836
+#: common/models.py:1822
msgid "Show stale stock items on the homepage"
msgstr ""
-#: common/models.py:1842
+#: common/models.py:1828
msgid "Show pending builds"
msgstr ""
-#: common/models.py:1843
+#: common/models.py:1829
msgid "Show pending builds on the homepage"
msgstr ""
-#: common/models.py:1849
+#: common/models.py:1835
msgid "Show overdue builds"
msgstr ""
-#: common/models.py:1850
+#: common/models.py:1836
msgid "Show overdue builds on the homepage"
msgstr ""
-#: common/models.py:1856
+#: common/models.py:1842
msgid "Show outstanding POs"
msgstr ""
-#: common/models.py:1857
+#: common/models.py:1843
msgid "Show outstanding POs on the homepage"
msgstr ""
-#: common/models.py:1863
+#: common/models.py:1849
msgid "Show overdue POs"
msgstr ""
-#: common/models.py:1864
+#: common/models.py:1850
msgid "Show overdue POs on the homepage"
msgstr ""
-#: common/models.py:1870
+#: common/models.py:1856
msgid "Show outstanding SOs"
msgstr ""
-#: common/models.py:1871
+#: common/models.py:1857
msgid "Show outstanding SOs on the homepage"
msgstr ""
-#: common/models.py:1877
+#: common/models.py:1863
msgid "Show overdue SOs"
msgstr ""
-#: common/models.py:1878
+#: common/models.py:1864
msgid "Show overdue SOs on the homepage"
msgstr ""
-#: common/models.py:1884
+#: common/models.py:1870
msgid "Show pending SO shipments"
msgstr ""
-#: common/models.py:1885
+#: common/models.py:1871
msgid "Show pending SO shipments on the homepage"
msgstr ""
-#: common/models.py:1891
+#: common/models.py:1877
msgid "Show News"
msgstr "Näytä uutiset"
-#: common/models.py:1892
+#: common/models.py:1878
msgid "Show news on the homepage"
msgstr "Näytä uutiset kotisivulla"
-#: common/models.py:1898
+#: common/models.py:1884
msgid "Inline label display"
msgstr ""
-#: common/models.py:1899
+#: common/models.py:1885
msgid "Display PDF labels in the browser, instead of downloading as a file"
msgstr ""
-#: common/models.py:1905
+#: common/models.py:1891
msgid "Default label printer"
msgstr ""
-#: common/models.py:1906
+#: common/models.py:1892
msgid "Configure which label printer should be selected by default"
msgstr ""
-#: common/models.py:1912
+#: common/models.py:1898
msgid "Inline report display"
msgstr ""
-#: common/models.py:1913
+#: common/models.py:1899
msgid "Display PDF reports in the browser, instead of downloading as a file"
msgstr ""
-#: common/models.py:1919
+#: common/models.py:1905
msgid "Search Parts"
msgstr ""
-#: common/models.py:1920
+#: common/models.py:1906
msgid "Display parts in search preview window"
msgstr ""
-#: common/models.py:1926
+#: common/models.py:1912
msgid "Search Supplier Parts"
msgstr ""
-#: common/models.py:1927
+#: common/models.py:1913
msgid "Display supplier parts in search preview window"
msgstr ""
-#: common/models.py:1933
+#: common/models.py:1919
msgid "Search Manufacturer Parts"
msgstr ""
-#: common/models.py:1934
+#: common/models.py:1920
msgid "Display manufacturer parts in search preview window"
msgstr ""
-#: common/models.py:1940
+#: common/models.py:1926
msgid "Hide Inactive Parts"
msgstr ""
-#: common/models.py:1941
+#: common/models.py:1927
msgid "Excluded inactive parts from search preview window"
msgstr ""
-#: common/models.py:1947
+#: common/models.py:1933
msgid "Search Categories"
msgstr ""
-#: common/models.py:1948
+#: common/models.py:1934
msgid "Display part categories in search preview window"
msgstr ""
-#: common/models.py:1954
+#: common/models.py:1940
msgid "Search Stock"
msgstr ""
-#: common/models.py:1955
+#: common/models.py:1941
msgid "Display stock items in search preview window"
msgstr ""
-#: common/models.py:1961
+#: common/models.py:1947
msgid "Hide Unavailable Stock Items"
msgstr ""
-#: common/models.py:1962
+#: common/models.py:1948
msgid "Exclude stock items which are not available from the search preview window"
msgstr ""
-#: common/models.py:1968
+#: common/models.py:1954
msgid "Search Locations"
msgstr ""
-#: common/models.py:1969
+#: common/models.py:1955
msgid "Display stock locations in search preview window"
msgstr ""
-#: common/models.py:1975
+#: common/models.py:1961
msgid "Search Companies"
msgstr ""
-#: common/models.py:1976
+#: common/models.py:1962
msgid "Display companies in search preview window"
msgstr ""
-#: common/models.py:1982
+#: common/models.py:1968
msgid "Search Build Orders"
msgstr ""
-#: common/models.py:1983
+#: common/models.py:1969
msgid "Display build orders in search preview window"
msgstr ""
-#: common/models.py:1989
+#: common/models.py:1975
msgid "Search Purchase Orders"
msgstr ""
-#: common/models.py:1990
+#: common/models.py:1976
msgid "Display purchase orders in search preview window"
msgstr ""
-#: common/models.py:1996
+#: common/models.py:1982
msgid "Exclude Inactive Purchase Orders"
msgstr ""
-#: common/models.py:1997
+#: common/models.py:1983
msgid "Exclude inactive purchase orders from search preview window"
msgstr ""
-#: common/models.py:2003
+#: common/models.py:1989
msgid "Search Sales Orders"
msgstr ""
-#: common/models.py:2004
+#: common/models.py:1990
msgid "Display sales orders in search preview window"
msgstr ""
-#: common/models.py:2010
+#: common/models.py:1996
msgid "Exclude Inactive Sales Orders"
msgstr ""
-#: common/models.py:2011
+#: common/models.py:1997
msgid "Exclude inactive sales orders from search preview window"
msgstr ""
-#: common/models.py:2017
+#: common/models.py:2003
msgid "Search Return Orders"
msgstr ""
-#: common/models.py:2018
+#: common/models.py:2004
msgid "Display return orders in search preview window"
msgstr ""
-#: common/models.py:2024
+#: common/models.py:2010
msgid "Exclude Inactive Return Orders"
msgstr ""
-#: common/models.py:2025
+#: common/models.py:2011
msgid "Exclude inactive return orders from search preview window"
msgstr ""
-#: common/models.py:2031
+#: common/models.py:2017
msgid "Search Preview Results"
msgstr ""
-#: common/models.py:2032
+#: common/models.py:2018
msgid "Number of results to show in each section of the search preview window"
msgstr ""
-#: common/models.py:2038
+#: common/models.py:2024
msgid "Regex Search"
msgstr ""
-#: common/models.py:2039
+#: common/models.py:2025
msgid "Enable regular expressions in search queries"
msgstr ""
-#: common/models.py:2045
+#: common/models.py:2031
msgid "Whole Word Search"
msgstr ""
-#: common/models.py:2046
+#: common/models.py:2032
msgid "Search queries return results for whole word matches"
msgstr ""
-#: common/models.py:2052
+#: common/models.py:2038
msgid "Show Quantity in Forms"
msgstr ""
-#: common/models.py:2053
+#: common/models.py:2039
msgid "Display available part quantity in some forms"
msgstr ""
-#: common/models.py:2059
+#: common/models.py:2045
msgid "Escape Key Closes Forms"
msgstr ""
-#: common/models.py:2060
+#: common/models.py:2046
msgid "Use the escape key to close modal forms"
msgstr ""
-#: common/models.py:2066
+#: common/models.py:2052
msgid "Fixed Navbar"
msgstr ""
-#: common/models.py:2067
+#: common/models.py:2053
msgid "The navbar position is fixed to the top of the screen"
msgstr ""
-#: common/models.py:2073
+#: common/models.py:2059
msgid "Date Format"
msgstr ""
-#: common/models.py:2074
+#: common/models.py:2060
msgid "Preferred format for displaying dates"
msgstr ""
-#: common/models.py:2088 part/templates/part/detail.html:41
+#: common/models.py:2074 part/templates/part/detail.html:41
msgid "Part Scheduling"
msgstr ""
-#: common/models.py:2089
+#: common/models.py:2075
msgid "Display part scheduling information"
msgstr ""
-#: common/models.py:2095 part/templates/part/detail.html:62
+#: common/models.py:2081 part/templates/part/detail.html:62
msgid "Part Stocktake"
msgstr ""
-#: common/models.py:2096
+#: common/models.py:2082
msgid "Display part stocktake information (if stocktake functionality is enabled)"
msgstr ""
-#: common/models.py:2102
+#: common/models.py:2088
msgid "Table String Length"
msgstr ""
-#: common/models.py:2103
+#: common/models.py:2089
msgid "Maximimum length limit for strings displayed in table views"
msgstr ""
-#: common/models.py:2112
+#: common/models.py:2098
msgid "Default part label template"
msgstr ""
-#: common/models.py:2113
+#: common/models.py:2099
msgid "The part label template to be automatically selected"
msgstr ""
-#: common/models.py:2121
+#: common/models.py:2107
msgid "Default stock item template"
msgstr ""
-#: common/models.py:2122
+#: common/models.py:2108
msgid "The stock item label template to be automatically selected"
msgstr ""
-#: common/models.py:2130
+#: common/models.py:2116
msgid "Default stock location label template"
msgstr ""
-#: common/models.py:2131
+#: common/models.py:2117
msgid "The stock location label template to be automatically selected"
msgstr ""
-#: common/models.py:2177
+#: common/models.py:2163
msgid "Price break quantity"
msgstr ""
-#: common/models.py:2184 company/serializers.py:434 order/admin.py:43
-#: order/models.py:1132 order/models.py:1939
-#: templates/js/translated/company.js:1433 templates/js/translated/part.js:1856
+#: common/models.py:2170 company/serializers.py:491 order/admin.py:43
+#: order/models.py:1145 order/models.py:1952
+#: templates/js/translated/company.js:1854 templates/js/translated/part.js:1855
#: templates/js/translated/pricing.js:621
-#: templates/js/translated/return_order.js:725
+#: templates/js/translated/return_order.js:737
msgid "Price"
msgstr "Hinta"
-#: common/models.py:2185
+#: common/models.py:2171
msgid "Unit price at specified quantity"
msgstr ""
-#: common/models.py:2345 common/models.py:2523
+#: common/models.py:2331 common/models.py:2509
msgid "Endpoint"
msgstr ""
-#: common/models.py:2346
+#: common/models.py:2332
msgid "Endpoint at which this webhook is received"
msgstr ""
-#: common/models.py:2355
+#: common/models.py:2341
msgid "Name for this webhook"
msgstr ""
-#: common/models.py:2360 part/admin.py:50 part/models.py:1023
-#: plugin/models.py:47 templates/js/translated/table_filters.js:105
-#: templates/js/translated/table_filters.js:189
-#: templates/js/translated/table_filters.js:434
-#: templates/js/translated/table_filters.js:450
-#: templates/js/translated/table_filters.js:629
+#: common/models.py:2346 part/admin.py:50 part/models.py:1024
+#: plugin/models.py:48 templates/js/translated/table_filters.js:111
+#: templates/js/translated/table_filters.js:195
+#: templates/js/translated/table_filters.js:440
+#: templates/js/translated/table_filters.js:456
+#: templates/js/translated/table_filters.js:651
msgid "Active"
msgstr "Aktiivinen"
-#: common/models.py:2361
+#: common/models.py:2347
msgid "Is this webhook active"
msgstr ""
-#: common/models.py:2375
+#: common/models.py:2361
msgid "Token"
msgstr ""
-#: common/models.py:2376
+#: common/models.py:2362
msgid "Token for access"
msgstr ""
-#: common/models.py:2383
+#: common/models.py:2369
msgid "Secret"
msgstr "Salaisuus"
-#: common/models.py:2384
+#: common/models.py:2370
msgid "Shared secret for HMAC"
msgstr ""
-#: common/models.py:2490
+#: common/models.py:2476
msgid "Message ID"
msgstr ""
-#: common/models.py:2491
+#: common/models.py:2477
msgid "Unique identifier for this message"
msgstr ""
-#: common/models.py:2499
+#: common/models.py:2485
msgid "Host"
msgstr "Isäntä"
-#: common/models.py:2500
+#: common/models.py:2486
msgid "Host from which this message was received"
msgstr ""
-#: common/models.py:2507
+#: common/models.py:2493
msgid "Header"
msgstr ""
-#: common/models.py:2508
+#: common/models.py:2494
msgid "Header of this message"
msgstr ""
-#: common/models.py:2514
+#: common/models.py:2500
msgid "Body"
msgstr ""
-#: common/models.py:2515
+#: common/models.py:2501
msgid "Body of this message"
msgstr ""
-#: common/models.py:2524
+#: common/models.py:2510
msgid "Endpoint on which this message was received"
msgstr ""
-#: common/models.py:2529
+#: common/models.py:2515
msgid "Worked on"
msgstr ""
-#: common/models.py:2530
+#: common/models.py:2516
msgid "Was the work on this message finished?"
msgstr ""
-#: common/models.py:2684
+#: common/models.py:2670
msgid "Id"
msgstr ""
-#: common/models.py:2690 templates/js/translated/news.js:44
+#: common/models.py:2676 templates/js/translated/company.js:996
+#: templates/js/translated/news.js:44
msgid "Title"
msgstr "Otsikko"
-#: common/models.py:2700 templates/js/translated/news.js:60
+#: common/models.py:2686 templates/js/translated/news.js:60
msgid "Published"
msgstr "Julkaistu"
-#: common/models.py:2705 templates/InvenTree/settings/plugin_settings.html:32
+#: common/models.py:2691 templates/InvenTree/settings/plugin_settings.html:32
#: templates/js/translated/news.js:56 templates/js/translated/plugin.js:106
msgid "Author"
msgstr "Julkaisija"
-#: common/models.py:2710 templates/js/translated/news.js:52
+#: common/models.py:2696 templates/js/translated/news.js:52
msgid "Summary"
msgstr "Yhteenveto"
-#: common/models.py:2715
+#: common/models.py:2701
msgid "Read"
msgstr ""
-#: common/models.py:2716
+#: common/models.py:2702
msgid "Was this news item read?"
msgstr ""
-#: common/models.py:2736 company/models.py:143 part/models.py:914
+#: common/models.py:2722 company/models.py:139 part/models.py:915
#: report/templates/report/inventree_bill_of_materials_report.html:126
#: report/templates/report/inventree_bill_of_materials_report.html:148
#: report/templates/report/inventree_return_order_report_base.html:35
@@ -3422,7 +3400,7 @@ msgstr ""
msgid "Image"
msgstr "Kuva"
-#: common/models.py:2737
+#: common/models.py:2723
msgid "Image file"
msgstr "Kuvatiedosto"
@@ -3499,7 +3477,7 @@ msgstr ""
#: company/models.py:113 company/templates/company/company_base.html:101
#: templates/InvenTree/settings/plugin_settings.html:54
-#: templates/js/translated/company.js:514
+#: templates/js/translated/company.js:521
msgid "Website"
msgstr "Sivusto"
@@ -3507,303 +3485,387 @@ msgstr "Sivusto"
msgid "Company website URL"
msgstr "Yrityksen sivuston URL"
-#: company/models.py:118 company/templates/company/company_base.html:119
-msgid "Address"
-msgstr "Osoite"
-
-#: company/models.py:119
-msgid "Company address"
-msgstr "Yrityksen osoite"
-
-#: company/models.py:122
+#: company/models.py:118
msgid "Phone number"
msgstr "Puhelinnumero"
-#: company/models.py:123
+#: company/models.py:119
msgid "Contact phone number"
msgstr ""
-#: company/models.py:126 company/templates/company/company_base.html:133
+#: company/models.py:122 company/templates/company/company_base.html:133
#: templates/InvenTree/settings/user.html:49
-#: templates/js/translated/company.js:659
+#: templates/js/translated/company.js:666
msgid "Email"
msgstr "Sähköposti"
-#: company/models.py:126
+#: company/models.py:122
msgid "Contact email address"
msgstr ""
-#: company/models.py:129 company/templates/company/company_base.html:140
-#: order/models.py:266 order/templates/order/order_base.html:207
+#: company/models.py:125 company/templates/company/company_base.html:140
+#: order/models.py:270 order/templates/order/order_base.html:203
#: order/templates/order/return_order_base.html:175
#: order/templates/order/sales_order_base.html:215
msgid "Contact"
msgstr "Kontakti"
-#: company/models.py:130
+#: company/models.py:126
msgid "Point of contact"
msgstr ""
-#: company/models.py:132
+#: company/models.py:128
msgid "Link to external company information"
msgstr ""
-#: company/models.py:146
+#: company/models.py:142
msgid "is customer"
msgstr "on asiakas"
-#: company/models.py:146
+#: company/models.py:142
msgid "Do you sell items to this company?"
msgstr ""
-#: company/models.py:148
+#: company/models.py:144
msgid "is supplier"
msgstr "on toimittaja"
-#: company/models.py:148
+#: company/models.py:144
msgid "Do you purchase items from this company?"
msgstr ""
-#: company/models.py:150
+#: company/models.py:146
msgid "is manufacturer"
msgstr "on valmistaja"
-#: company/models.py:150
+#: company/models.py:146
msgid "Does this company manufacture parts?"
msgstr ""
-#: company/models.py:157
+#: company/models.py:153
msgid "Default currency used for this company"
msgstr ""
-#: company/models.py:223 company/templates/company/company_base.html:8
+#: company/models.py:235 company/models.py:328
+#: company/templates/company/company_base.html:8
#: company/templates/company/company_base.html:12
-#: templates/InvenTree/search.html:178 templates/js/translated/company.js:487
+#: templates/InvenTree/search.html:178 templates/js/translated/company.js:494
msgid "Company"
msgstr "Yritys"
-#: company/models.py:278 company/models.py:553 stock/models.py:675
-#: stock/serializers.py:155 stock/templates/stock/item_base.html:143
-#: templates/js/translated/bom.js:621
+#: company/models.py:324
+msgid "Company already has a primary address"
+msgstr ""
+
+#: company/models.py:329
+msgid "Select company"
+msgstr ""
+
+#: company/models.py:332
+msgid "Address title"
+msgstr ""
+
+#: company/models.py:333
+msgid "Title describing the address entry"
+msgstr ""
+
+#: company/models.py:337
+msgid "Primary address"
+msgstr ""
+
+#: company/models.py:338
+msgid "Set as primary address"
+msgstr ""
+
+#: company/models.py:341 templates/js/translated/company.js:941
+#: templates/js/translated/company.js:1002
+msgid "Line 1"
+msgstr ""
+
+#: company/models.py:342
+msgid "Address line 1"
+msgstr ""
+
+#: company/models.py:346 templates/js/translated/company.js:942
+#: templates/js/translated/company.js:1008
+msgid "Line 2"
+msgstr ""
+
+#: company/models.py:347
+msgid "Address line 2"
+msgstr ""
+
+#: company/models.py:351 company/models.py:352
+#: templates/js/translated/company.js:1014
+msgid "Postal code"
+msgstr ""
+
+#: company/models.py:356
+msgid "City/Region"
+msgstr ""
+
+#: company/models.py:357
+msgid "Postal code city/region"
+msgstr ""
+
+#: company/models.py:361
+msgid "State/Province"
+msgstr ""
+
+#: company/models.py:362
+msgid "State or province"
+msgstr ""
+
+#: company/models.py:366 templates/js/translated/company.js:1032
+msgid "Country"
+msgstr ""
+
+#: company/models.py:367
+msgid "Address country"
+msgstr ""
+
+#: company/models.py:371
+msgid "Courier shipping notes"
+msgstr ""
+
+#: company/models.py:372
+msgid "Notes for shipping courier"
+msgstr ""
+
+#: company/models.py:376
+msgid "Internal shipping notes"
+msgstr ""
+
+#: company/models.py:377
+msgid "Shipping notes for internal use"
+msgstr ""
+
+#: company/models.py:382
+msgid "Link to address information (external)"
+msgstr ""
+
+#: company/models.py:427 company/models.py:702 stock/models.py:675
+#: stock/serializers.py:204 stock/templates/stock/item_base.html:143
+#: templates/js/translated/bom.js:622
msgid "Base Part"
msgstr ""
-#: company/models.py:282 company/models.py:557
+#: company/models.py:431 company/models.py:706
msgid "Select part"
msgstr ""
-#: company/models.py:293 company/templates/company/company_base.html:77
+#: company/models.py:442 company/templates/company/company_base.html:77
#: company/templates/company/manufacturer_part.html:90
-#: company/templates/company/supplier_part.html:146 part/serializers.py:354
+#: company/templates/company/supplier_part.html:146 part/serializers.py:404
#: stock/templates/stock/item_base.html:208
-#: templates/js/translated/company.js:498
-#: templates/js/translated/company.js:824
-#: templates/js/translated/company.js:954
-#: templates/js/translated/company.js:1221
-#: templates/js/translated/table_filters.js:709
+#: templates/js/translated/company.js:505
+#: templates/js/translated/company.js:1149
+#: templates/js/translated/company.js:1327
+#: templates/js/translated/company.js:1642
+#: templates/js/translated/table_filters.js:731
msgid "Manufacturer"
msgstr "Valmistaja"
-#: company/models.py:294
+#: company/models.py:443
msgid "Select manufacturer"
msgstr "Valitse valmistaja"
-#: company/models.py:300 company/templates/company/manufacturer_part.html:101
-#: company/templates/company/supplier_part.html:154 part/serializers.py:360
-#: templates/js/translated/company.js:340
-#: templates/js/translated/company.js:823
-#: templates/js/translated/company.js:970
-#: templates/js/translated/company.js:1240 templates/js/translated/part.js:1773
-#: templates/js/translated/purchase_order.js:1814
-#: templates/js/translated/purchase_order.js:2021
+#: company/models.py:449 company/templates/company/manufacturer_part.html:101
+#: company/templates/company/supplier_part.html:154 part/serializers.py:410
+#: templates/js/translated/company.js:350
+#: templates/js/translated/company.js:1148
+#: templates/js/translated/company.js:1343
+#: templates/js/translated/company.js:1661 templates/js/translated/part.js:1772
+#: templates/js/translated/purchase_order.js:1829
+#: templates/js/translated/purchase_order.js:2031
msgid "MPN"
msgstr ""
-#: company/models.py:301
+#: company/models.py:450
msgid "Manufacturer Part Number"
msgstr "Valmistajan osanumero"
-#: company/models.py:307
+#: company/models.py:456
msgid "URL for external manufacturer part link"
msgstr ""
-#: company/models.py:313
+#: company/models.py:462
msgid "Manufacturer part description"
msgstr ""
-#: company/models.py:360 company/models.py:384 company/models.py:578
+#: company/models.py:509 company/models.py:533 company/models.py:727
#: company/templates/company/manufacturer_part.html:7
#: company/templates/company/manufacturer_part.html:24
#: stock/templates/stock/item_base.html:218
msgid "Manufacturer Part"
msgstr ""
-#: company/models.py:391
+#: company/models.py:540
msgid "Parameter name"
msgstr ""
-#: company/models.py:397
+#: company/models.py:546
#: report/templates/report/inventree_test_report_base.html:104
-#: stock/models.py:2255 templates/js/translated/company.js:872
-#: templates/js/translated/company.js:1077 templates/js/translated/part.js:1465
-#: templates/js/translated/stock.js:1446
+#: stock/models.py:2255 templates/js/translated/company.js:1197
+#: templates/js/translated/company.js:1450 templates/js/translated/part.js:1464
+#: templates/js/translated/stock.js:1445
msgid "Value"
msgstr "Arvo"
-#: company/models.py:398
+#: company/models.py:547
msgid "Parameter value"
msgstr ""
-#: company/models.py:404 company/templates/company/supplier_part.html:169
-#: part/admin.py:40 part/models.py:987 part/models.py:3407
+#: company/models.py:553 company/templates/company/supplier_part.html:169
+#: part/admin.py:40 part/models.py:988 part/models.py:3441
#: part/templates/part/part_base.html:286
-#: templates/js/translated/company.js:1083 templates/js/translated/part.js:1484
-#: templates/js/translated/part.js:1588 templates/js/translated/part.js:2262
+#: templates/js/translated/company.js:1456 templates/js/translated/part.js:1483
+#: templates/js/translated/part.js:1587 templates/js/translated/part.js:2338
msgid "Units"
msgstr ""
-#: company/models.py:405
+#: company/models.py:554
msgid "Parameter units"
msgstr ""
-#: company/models.py:498
+#: company/models.py:647
msgid "Pack units must be compatible with the base part units"
msgstr ""
-#: company/models.py:504
+#: company/models.py:653
msgid "Pack units must be greater than zero"
msgstr ""
-#: company/models.py:520
+#: company/models.py:669
msgid "Linked manufacturer part must reference the same base part"
msgstr ""
-#: company/models.py:564 company/templates/company/company_base.html:82
-#: company/templates/company/supplier_part.html:130 order/models.py:382
-#: order/templates/order/order_base.html:140 part/bom.py:285 part/bom.py:313
-#: part/serializers.py:343 stock/templates/stock/item_base.html:225
+#: company/models.py:713 company/templates/company/company_base.html:82
+#: company/templates/company/supplier_part.html:130 order/models.py:395
+#: order/templates/order/order_base.html:136 part/bom.py:285 part/bom.py:313
+#: part/serializers.py:393 stock/templates/stock/item_base.html:225
#: templates/email/overdue_purchase_order.html:16
-#: templates/js/translated/company.js:339
-#: templates/js/translated/company.js:502
-#: templates/js/translated/company.js:1194 templates/js/translated/part.js:1741
+#: templates/js/translated/company.js:349
+#: templates/js/translated/company.js:509
+#: templates/js/translated/company.js:1615 templates/js/translated/part.js:1740
#: templates/js/translated/pricing.js:498
-#: templates/js/translated/purchase_order.js:1653
-#: templates/js/translated/table_filters.js:713
+#: templates/js/translated/purchase_order.js:1668
+#: templates/js/translated/table_filters.js:735
msgid "Supplier"
msgstr "Toimittaja"
-#: company/models.py:565
+#: company/models.py:714
msgid "Select supplier"
msgstr "Valitse toimittaja"
-#: company/models.py:570 company/templates/company/supplier_part.html:140
-#: part/bom.py:286 part/bom.py:314 part/serializers.py:349
-#: templates/js/translated/company.js:338 templates/js/translated/part.js:1759
+#: company/models.py:719 company/templates/company/supplier_part.html:140
+#: part/bom.py:286 part/bom.py:314 part/serializers.py:399
+#: templates/js/translated/company.js:348 templates/js/translated/part.js:1758
#: templates/js/translated/pricing.js:510
-#: templates/js/translated/purchase_order.js:1813
-#: templates/js/translated/purchase_order.js:1996
+#: templates/js/translated/purchase_order.js:1828
+#: templates/js/translated/purchase_order.js:2006
msgid "SKU"
msgstr "SKU"
-#: company/models.py:571 part/serializers.py:349
+#: company/models.py:720 part/serializers.py:399
msgid "Supplier stock keeping unit"
msgstr "Toimittajan varastonimike"
-#: company/models.py:579
+#: company/models.py:728
msgid "Select manufacturer part"
msgstr "Valitse valmistajan osa"
-#: company/models.py:585
+#: company/models.py:734
msgid "URL for external supplier part link"
msgstr ""
-#: company/models.py:591
+#: company/models.py:740
msgid "Supplier part description"
msgstr ""
-#: company/models.py:596 company/templates/company/supplier_part.html:188
-#: part/admin.py:279 part/models.py:3801 part/templates/part/upload_bom.html:59
+#: company/models.py:745 company/templates/company/supplier_part.html:188
+#: part/admin.py:279 part/models.py:3845 part/templates/part/upload_bom.html:59
#: report/templates/report/inventree_bill_of_materials_report.html:140
#: report/templates/report/inventree_po_report_base.html:32
#: report/templates/report/inventree_return_order_report_base.html:27
#: report/templates/report/inventree_so_report_base.html:32
-#: stock/serializers.py:418
+#: stock/serializers.py:484
msgid "Note"
msgstr "Muistiinpano"
-#: company/models.py:600 part/models.py:1919
+#: company/models.py:749 part/models.py:1921
msgid "base cost"
msgstr ""
-#: company/models.py:600 part/models.py:1919
+#: company/models.py:749 part/models.py:1921
msgid "Minimum charge (e.g. stocking fee)"
msgstr ""
-#: company/models.py:602 company/templates/company/supplier_part.html:161
+#: company/models.py:751 company/templates/company/supplier_part.html:161
#: stock/admin.py:119 stock/models.py:701
#: stock/templates/stock/item_base.html:241
-#: templates/js/translated/company.js:1256
-#: templates/js/translated/stock.js:2160
+#: templates/js/translated/company.js:1677
+#: templates/js/translated/stock.js:2317
msgid "Packaging"
msgstr ""
-#: company/models.py:602
+#: company/models.py:751
msgid "Part packaging"
msgstr ""
-#: company/models.py:606 templates/js/translated/company.js:1261
-#: templates/js/translated/part.js:1793 templates/js/translated/part.js:1848
-#: templates/js/translated/purchase_order.js:300
-#: templates/js/translated/purchase_order.js:827
-#: templates/js/translated/purchase_order.js:1073
-#: templates/js/translated/purchase_order.js:2052
-#: templates/js/translated/purchase_order.js:2069
+#: company/models.py:755 templates/js/translated/company.js:1682
+#: templates/js/translated/part.js:1792 templates/js/translated/part.js:1847
+#: templates/js/translated/purchase_order.js:311
+#: templates/js/translated/purchase_order.js:842
+#: templates/js/translated/purchase_order.js:1088
+#: templates/js/translated/purchase_order.js:2062
+#: templates/js/translated/purchase_order.js:2079
msgid "Pack Quantity"
msgstr ""
-#: company/models.py:607
+#: company/models.py:756
msgid "Total quantity supplied in a single pack. Leave empty for single items."
msgstr ""
-#: company/models.py:624 part/models.py:1921
+#: company/models.py:773 part/models.py:1923
msgid "multiple"
msgstr ""
-#: company/models.py:624
+#: company/models.py:773
msgid "Order multiple"
msgstr ""
-#: company/models.py:632 company/templates/company/supplier_part.html:115
+#: company/models.py:781 company/templates/company/supplier_part.html:115
#: templates/email/build_order_required_stock.html:19
#: templates/email/low_stock_notification.html:17
-#: templates/js/translated/bom.js:1127 templates/js/translated/build.js:2136
-#: templates/js/translated/build.js:3045
-#: templates/js/translated/model_renderers.js:205
-#: templates/js/translated/part.js:670 templates/js/translated/part.js:672
-#: templates/js/translated/part.js:677
-#: templates/js/translated/table_filters.js:286
-#: templates/js/translated/table_filters.js:492
+#: templates/js/translated/bom.js:1145 templates/js/translated/build.js:2490
+#: templates/js/translated/index.js:118
+#: templates/js/translated/model_renderers.js:219
+#: templates/js/translated/part.js:669 templates/js/translated/part.js:671
+#: templates/js/translated/part.js:676
+#: templates/js/translated/table_filters.js:292
+#: templates/js/translated/table_filters.js:510
msgid "Available"
msgstr "Saatavilla"
-#: company/models.py:633
+#: company/models.py:782
msgid "Quantity available from supplier"
msgstr ""
-#: company/models.py:637
+#: company/models.py:786
msgid "Availability Updated"
msgstr ""
-#: company/models.py:638
+#: company/models.py:787
msgid "Date of last update of availability data"
msgstr ""
-#: company/serializers.py:99
+#: company/serializers.py:156
msgid "Default currency used for this supplier"
msgstr ""
#: company/templates/company/company_base.html:22
-#: templates/js/translated/purchase_order.js:228
+#: templates/js/translated/purchase_order.js:239
msgid "Create Purchase Order"
msgstr ""
@@ -3816,7 +3878,7 @@ msgid "Edit company information"
msgstr "Muokkaa yrityksen tietoja"
#: company/templates/company/company_base.html:34
-#: templates/js/translated/company.js:436
+#: templates/js/translated/company.js:443
msgid "Edit Company"
msgstr "Muokkaa yritystä"
@@ -3856,17 +3918,17 @@ msgstr ""
msgid "Delete image"
msgstr ""
-#: company/templates/company/company_base.html:87 order/models.py:779
-#: order/models.py:1738 order/templates/order/return_order_base.html:132
+#: company/templates/company/company_base.html:87 order/models.py:792
+#: order/models.py:1751 order/templates/order/return_order_base.html:132
#: order/templates/order/sales_order_base.html:145 stock/models.py:720
-#: stock/models.py:721 stock/serializers.py:825
+#: stock/models.py:721 stock/serializers.py:942
#: stock/templates/stock/item_base.html:401
#: templates/email/overdue_sales_order.html:16
-#: templates/js/translated/company.js:494
-#: templates/js/translated/return_order.js:284
-#: templates/js/translated/sales_order.js:772
-#: templates/js/translated/stock.js:2696
-#: templates/js/translated/table_filters.js:717
+#: templates/js/translated/company.js:501
+#: templates/js/translated/return_order.js:296
+#: templates/js/translated/sales_order.js:784
+#: templates/js/translated/stock.js:2827
+#: templates/js/translated/table_filters.js:739
msgid "Customer"
msgstr "Asiakas"
@@ -3874,6 +3936,13 @@ msgstr "Asiakas"
msgid "Uses default currency"
msgstr "Käyttää oletusvaluuttaa"
+#: company/templates/company/company_base.html:119 order/models.py:279
+#: order/templates/order/order_base.html:210
+#: order/templates/order/return_order_base.html:182
+#: order/templates/order/sales_order_base.html:222
+msgid "Address"
+msgstr "Osoite"
+
#: company/templates/company/company_base.html:126
msgid "Phone"
msgstr "Puhelin"
@@ -3906,7 +3975,7 @@ msgstr ""
#: company/templates/company/detail.html:15
#: company/templates/company/manufacturer_part_sidebar.html:7
-#: templates/InvenTree/search.html:120 templates/js/translated/search.js:189
+#: templates/InvenTree/search.html:120 templates/js/translated/search.js:147
msgid "Supplier Parts"
msgstr ""
@@ -3916,129 +3985,121 @@ msgstr ""
#: company/templates/company/detail.html:20
#: company/templates/company/manufacturer_part.html:123
-#: part/templates/part/detail.html:381
+#: part/templates/part/detail.html:356
msgid "New Supplier Part"
msgstr ""
-#: company/templates/company/detail.html:37
-#: company/templates/company/detail.html:85
-#: part/templates/part/category.html:183
-msgid "Order parts"
-msgstr ""
-
-#: company/templates/company/detail.html:42
-#: company/templates/company/detail.html:90
-msgid "Delete parts"
-msgstr ""
-
-#: company/templates/company/detail.html:43
-#: company/templates/company/detail.html:91
-msgid "Delete Parts"
-msgstr ""
-
-#: company/templates/company/detail.html:62 templates/InvenTree/search.html:105
-#: templates/js/translated/search.js:193
+#: company/templates/company/detail.html:41 templates/InvenTree/search.html:105
+#: templates/js/translated/search.js:151
msgid "Manufacturer Parts"
msgstr ""
-#: company/templates/company/detail.html:66
+#: company/templates/company/detail.html:45
msgid "Create new manufacturer part"
msgstr ""
-#: company/templates/company/detail.html:67 part/templates/part/detail.html:411
+#: company/templates/company/detail.html:46 part/templates/part/detail.html:376
msgid "New Manufacturer Part"
msgstr ""
-#: company/templates/company/detail.html:108
+#: company/templates/company/detail.html:65
msgid "Supplier Stock"
msgstr ""
-#: company/templates/company/detail.html:118
+#: company/templates/company/detail.html:75
#: company/templates/company/sidebar.html:12
#: company/templates/company/supplier_part_sidebar.html:7
#: 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:108 part/templates/part/part_sidebar.html:35
-#: templates/InvenTree/index.html:275 templates/InvenTree/search.html:199
+#: part/templates/part/detail.html:106 part/templates/part/part_sidebar.html:35
+#: templates/InvenTree/index.html:227 templates/InvenTree/search.html:199
#: templates/InvenTree/settings/sidebar.html:55
-#: templates/js/translated/search.js:247 templates/navbar.html:50
+#: templates/js/translated/search.js:205 templates/navbar.html:50
#: users/models.py:43
msgid "Purchase Orders"
msgstr ""
-#: company/templates/company/detail.html:122
+#: company/templates/company/detail.html:79
#: order/templates/order/purchase_orders.html:17
msgid "Create new purchase order"
msgstr ""
-#: company/templates/company/detail.html:123
+#: company/templates/company/detail.html:80
#: order/templates/order/purchase_orders.html:18
msgid "New Purchase Order"
msgstr ""
-#: company/templates/company/detail.html:146
+#: company/templates/company/detail.html:101
#: company/templates/company/sidebar.html:21
#: 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:131 part/templates/part/part_sidebar.html:39
-#: templates/InvenTree/index.html:307 templates/InvenTree/search.html:219
+#: part/templates/part/detail.html:127 part/templates/part/part_sidebar.html:39
+#: templates/InvenTree/index.html:259 templates/InvenTree/search.html:219
#: templates/InvenTree/settings/sidebar.html:57
-#: templates/js/translated/search.js:261 templates/navbar.html:62
+#: templates/js/translated/search.js:219 templates/navbar.html:62
#: users/models.py:44
msgid "Sales Orders"
msgstr ""
-#: company/templates/company/detail.html:150
+#: company/templates/company/detail.html:105
#: order/templates/order/sales_orders.html:20
msgid "Create new sales order"
msgstr ""
-#: company/templates/company/detail.html:151
+#: company/templates/company/detail.html:106
#: order/templates/order/sales_orders.html:21
msgid "New Sales Order"
msgstr ""
-#: company/templates/company/detail.html:173
-#: templates/js/translated/build.js:1976
+#: company/templates/company/detail.html:126
msgid "Assigned Stock"
msgstr ""
-#: company/templates/company/detail.html:191
+#: company/templates/company/detail.html:142
#: company/templates/company/sidebar.html:29
#: order/templates/order/return_order_base.html:13
#: order/templates/order/return_orders.html:8
#: order/templates/order/return_orders.html:15
#: templates/InvenTree/settings/sidebar.html:59
-#: templates/js/translated/search.js:274 templates/navbar.html:65
+#: templates/js/translated/search.js:232 templates/navbar.html:65
#: users/models.py:45
msgid "Return Orders"
msgstr ""
-#: company/templates/company/detail.html:195
+#: company/templates/company/detail.html:146
#: order/templates/order/return_orders.html:20
msgid "Create new return order"
msgstr ""
-#: company/templates/company/detail.html:196
+#: company/templates/company/detail.html:147
#: order/templates/order/return_orders.html:21
msgid "New Return Order"
msgstr ""
-#: company/templates/company/detail.html:221
+#: company/templates/company/detail.html:168
msgid "Company Notes"
msgstr ""
-#: company/templates/company/detail.html:236
+#: company/templates/company/detail.html:183
msgid "Company Contacts"
msgstr ""
-#: company/templates/company/detail.html:240
-#: company/templates/company/detail.html:241
+#: company/templates/company/detail.html:187
+#: company/templates/company/detail.html:188
msgid "Add Contact"
msgstr ""
+#: company/templates/company/detail.html:206
+msgid "Company addresses"
+msgstr ""
+
+#: company/templates/company/detail.html:210
+#: company/templates/company/detail.html:211
+msgid "Add Address"
+msgstr ""
+
#: company/templates/company/index.html:8
msgid "Supplier List"
msgstr ""
@@ -4050,17 +4111,17 @@ msgstr ""
#: company/templates/company/manufacturer_part.html:35
#: company/templates/company/supplier_part.html:228
-#: part/templates/part/detail.html:111 part/templates/part/part_base.html:85
+#: part/templates/part/detail.html:109 part/templates/part/part_base.html:85
msgid "Order part"
msgstr ""
#: company/templates/company/manufacturer_part.html:39
-#: templates/js/translated/company.js:1001
+#: templates/js/translated/company.js:1374
msgid "Edit manufacturer part"
msgstr ""
#: company/templates/company/manufacturer_part.html:43
-#: templates/js/translated/company.js:1002
+#: templates/js/translated/company.js:1375
msgid "Delete manufacturer part"
msgstr ""
@@ -4080,40 +4141,22 @@ msgstr ""
msgid "Suppliers"
msgstr ""
-#: company/templates/company/manufacturer_part.html:136
-#: part/templates/part/detail.html:392
-msgid "Delete supplier parts"
-msgstr ""
-
-#: company/templates/company/manufacturer_part.html:136
-#: company/templates/company/manufacturer_part.html:183
-#: part/templates/part/detail.html:393 part/templates/part/detail.html:423
-#: templates/js/translated/forms.js:506 templates/js/translated/helpers.js:105
-#: templates/js/translated/part.js:370 templates/js/translated/pricing.js:629
-#: templates/js/translated/stock.js:216 users/models.py:247
-msgid "Delete"
-msgstr "Poista"
-
-#: company/templates/company/manufacturer_part.html:166
+#: company/templates/company/manufacturer_part.html:156
#: company/templates/company/manufacturer_part_sidebar.html:5
#: part/templates/part/category_sidebar.html:20
-#: part/templates/part/detail.html:208 part/templates/part/part_sidebar.html:8
+#: part/templates/part/detail.html:195 part/templates/part/part_sidebar.html:8
msgid "Parameters"
msgstr ""
-#: company/templates/company/manufacturer_part.html:170
-#: part/templates/part/detail.html:213
+#: company/templates/company/manufacturer_part.html:160
+#: part/templates/part/detail.html:200
#: templates/InvenTree/settings/category.html:12
#: templates/InvenTree/settings/part_parameters.html:12
msgid "New Parameter"
msgstr ""
-#: company/templates/company/manufacturer_part.html:183
-msgid "Delete parameters"
-msgstr ""
-
-#: company/templates/company/manufacturer_part.html:226
-#: templates/js/translated/part.js:1396
+#: company/templates/company/manufacturer_part.html:206
+#: templates/js/translated/part.js:1395
msgid "Add Parameter"
msgstr ""
@@ -4137,23 +4180,28 @@ msgstr ""
msgid "Contacts"
msgstr ""
+#: company/templates/company/sidebar.html:35
+msgid "Addresses"
+msgstr ""
+
#: company/templates/company/supplier_part.html:7
#: company/templates/company/supplier_part.html:24 stock/models.py:684
#: stock/templates/stock/item_base.html:234
-#: templates/js/translated/company.js:1210
-#: templates/js/translated/purchase_order.js:747
-#: templates/js/translated/stock.js:2016
+#: templates/js/translated/company.js:1631
+#: templates/js/translated/purchase_order.js:758
+#: templates/js/translated/stock.js:2173
msgid "Supplier Part"
msgstr ""
#: company/templates/company/supplier_part.html:51
+#: templates/js/translated/company.js:1557
msgid "Supplier part actions"
msgstr ""
#: company/templates/company/supplier_part.html:56
#: company/templates/company/supplier_part.html:57
#: company/templates/company/supplier_part.html:229
-#: part/templates/part/detail.html:112
+#: part/templates/part/detail.html:110
msgid "Order Part"
msgstr ""
@@ -4164,13 +4212,13 @@ msgstr ""
#: company/templates/company/supplier_part.html:64
#: company/templates/company/supplier_part.html:65
-#: templates/js/translated/company.js:283
+#: templates/js/translated/company.js:293
msgid "Edit Supplier Part"
msgstr ""
#: company/templates/company/supplier_part.html:69
#: company/templates/company/supplier_part.html:70
-#: templates/js/translated/company.js:258
+#: templates/js/translated/company.js:268
msgid "Duplicate Supplier Part"
msgstr ""
@@ -4197,7 +4245,7 @@ msgstr ""
#: company/templates/company/supplier_part.html:211
#: part/templates/part/detail.html:25 stock/templates/stock/location.html:198
-#: templates/js/translated/stock.js:504
+#: templates/js/translated/stock.js:503
msgid "New Stock Item"
msgstr ""
@@ -4205,37 +4253,37 @@ msgstr ""
msgid "Supplier Part Orders"
msgstr ""
-#: company/templates/company/supplier_part.html:249
+#: company/templates/company/supplier_part.html:247
msgid "Pricing Information"
msgstr ""
-#: company/templates/company/supplier_part.html:254
-#: templates/js/translated/company.js:387
+#: company/templates/company/supplier_part.html:252
+#: templates/js/translated/company.js:397
#: templates/js/translated/pricing.js:684
msgid "Add Price Break"
msgstr ""
-#: company/templates/company/supplier_part.html:281
+#: company/templates/company/supplier_part.html:277
msgid "Supplier Part QR Code"
msgstr ""
-#: company/templates/company/supplier_part.html:292
+#: company/templates/company/supplier_part.html:288
msgid "Link Barcode to Supplier Part"
msgstr ""
-#: company/templates/company/supplier_part.html:365
+#: company/templates/company/supplier_part.html:361
msgid "Update Part Availability"
msgstr ""
#: company/templates/company/supplier_part_sidebar.html:5 part/tasks.py:293
-#: part/templates/part/category.html:199
+#: part/templates/part/category.html:182
#: part/templates/part/category_sidebar.html:17 stock/admin.py:47
-#: stock/templates/stock/location.html:168
+#: stock/serializers.py:662 stock/templates/stock/location.html:168
#: stock/templates/stock/location.html:182
#: stock/templates/stock/location.html:194
#: stock/templates/stock/location_sidebar.html:7
-#: templates/InvenTree/search.html:155 templates/js/translated/part.js:1034
-#: templates/js/translated/search.js:214 templates/js/translated/stock.js:2514
+#: templates/InvenTree/search.html:155 templates/js/translated/part.js:1033
+#: templates/js/translated/search.js:172 templates/js/translated/stock.js:2645
#: users/models.py:41
msgid "Stock Items"
msgstr ""
@@ -4261,7 +4309,7 @@ msgstr "Asiakkaat"
msgid "New Customer"
msgstr "Uusi asiakas"
-#: company/views.py:52 templates/js/translated/search.js:234
+#: company/views.py:52 templates/js/translated/search.js:192
msgid "Companies"
msgstr "Yritykset"
@@ -4269,72 +4317,76 @@ msgstr "Yritykset"
msgid "New Company"
msgstr "Uusi yritys"
-#: label/models.py:104
+#: label/models.py:112
msgid "Label name"
msgstr ""
-#: label/models.py:111
+#: label/models.py:119
msgid "Label description"
msgstr ""
-#: label/models.py:118
+#: label/models.py:126
msgid "Label"
msgstr ""
-#: label/models.py:119
+#: label/models.py:127
msgid "Label template file"
msgstr ""
-#: label/models.py:125 report/models.py:273
+#: label/models.py:133 report/models.py:273
msgid "Enabled"
msgstr "Käytössä"
-#: label/models.py:126
+#: label/models.py:134
msgid "Label template is enabled"
msgstr ""
-#: label/models.py:131
+#: label/models.py:139
msgid "Width [mm]"
msgstr "Leveys [mm]"
-#: label/models.py:132
+#: label/models.py:140
msgid "Label width, specified in mm"
msgstr ""
-#: label/models.py:138
+#: label/models.py:146
msgid "Height [mm]"
msgstr "Korkeus [mm]"
-#: label/models.py:139
+#: label/models.py:147
msgid "Label height, specified in mm"
msgstr ""
-#: label/models.py:145 report/models.py:266
+#: label/models.py:153 report/models.py:266
msgid "Filename Pattern"
msgstr ""
-#: label/models.py:146
+#: label/models.py:154
msgid "Pattern for generating label filenames"
msgstr ""
-#: label/models.py:242
+#: label/models.py:250
msgid "Query filters (comma-separated list of key=value pairs),"
msgstr ""
-#: label/models.py:243 label/models.py:284 label/models.py:312
-#: report/models.py:294 report/models.py:452 report/models.py:490
-#: report/models.py:528
+#: label/models.py:251 label/models.py:292 label/models.py:320
+#: label/models.py:356 report/models.py:294 report/models.py:454
+#: report/models.py:492 report/models.py:530
msgid "Filters"
msgstr "Suodattimet"
-#: label/models.py:283
+#: label/models.py:291
msgid "Query filters (comma-separated list of key=value pairs"
msgstr ""
-#: label/models.py:311
+#: label/models.py:319
msgid "Part query filters (comma-separated value of key=value pairs)"
msgstr ""
+#: label/models.py:355
+msgid "Query filters (comma-separated list of key=value pairs)"
+msgstr ""
+
#: label/templates/label/part/part_label.html:31
#: label/templates/label/stockitem/qr.html:21
#: label/templates/label/stocklocation/qr.html:21
@@ -4352,8 +4404,8 @@ msgstr "QR-koodi"
#: report/templates/report/inventree_po_report_base.html:31
#: report/templates/report/inventree_so_report_base.html:31
#: templates/js/translated/order.js:327
-#: templates/js/translated/purchase_order.js:2093
-#: templates/js/translated/sales_order.js:1827
+#: templates/js/translated/purchase_order.js:2103
+#: templates/js/translated/sales_order.js:1839
msgid "Total Price"
msgstr "Hinta yhteensä"
@@ -4361,30 +4413,30 @@ msgstr "Hinta yhteensä"
msgid "No matching purchase order found"
msgstr ""
-#: order/api.py:1452 order/models.py:1178 order/models.py:1262
+#: order/api.py:1452 order/models.py:1191 order/models.py:1275
#: order/templates/order/order_base.html:9
#: order/templates/order/order_base.html:18
#: report/templates/report/inventree_po_report_base.html:14
#: stock/templates/stock/item_base.html:177
#: templates/email/overdue_purchase_order.html:15
-#: templates/js/translated/part.js:1718 templates/js/translated/pricing.js:790
-#: templates/js/translated/purchase_order.js:154
-#: templates/js/translated/purchase_order.js:748
-#: templates/js/translated/purchase_order.js:1637
-#: templates/js/translated/stock.js:1996 templates/js/translated/stock.js:2644
+#: templates/js/translated/part.js:1717 templates/js/translated/pricing.js:790
+#: templates/js/translated/purchase_order.js:165
+#: templates/js/translated/purchase_order.js:759
+#: templates/js/translated/purchase_order.js:1652
+#: templates/js/translated/stock.js:2153 templates/js/translated/stock.js:2775
msgid "Purchase Order"
msgstr ""
-#: order/api.py:1456 order/models.py:1909 order/models.py:1955
+#: order/api.py:1456 order/models.py:1922 order/models.py:1968
#: order/templates/order/return_order_base.html:9
#: order/templates/order/return_order_base.html:28
#: report/templates/report/inventree_return_order_report_base.html:13
-#: templates/js/translated/return_order.js:269
-#: templates/js/translated/stock.js:2678
+#: templates/js/translated/return_order.js:281
+#: templates/js/translated/stock.js:2809
msgid "Return Order"
msgstr ""
-#: order/api.py:1458 templates/js/translated/sales_order.js:1030
+#: order/api.py:1458 templates/js/translated/sales_order.js:1042
msgid "Unknown"
msgstr ""
@@ -4392,11 +4444,11 @@ msgstr ""
msgid "Total price for this order"
msgstr ""
-#: order/models.py:79 order/serializers.py:49
+#: order/models.py:79 order/serializers.py:50
msgid "Order Currency"
msgstr "Tilauksen valuutta"
-#: order/models.py:81 order/serializers.py:50
+#: order/models.py:81 order/serializers.py:51
msgid "Currency for this order (leave blank to use company default)"
msgstr ""
@@ -4408,492 +4460,496 @@ msgstr ""
msgid "Order description (optional)"
msgstr ""
-#: order/models.py:234
+#: order/models.py:237
msgid "Select project code for this order"
msgstr ""
-#: order/models.py:236 order/models.py:1094 order/models.py:1454
+#: order/models.py:240 order/models.py:1107 order/models.py:1467
msgid "Link to external page"
msgstr ""
-#: order/models.py:241
+#: order/models.py:245
msgid "Expected date for order delivery. Order will be overdue after this date."
msgstr ""
-#: order/models.py:250
+#: order/models.py:254
msgid "Created By"
msgstr ""
-#: order/models.py:257
+#: order/models.py:261
msgid "User or group responsible for this order"
msgstr ""
-#: order/models.py:267
+#: order/models.py:271
msgid "Point of contact for this order"
msgstr ""
-#: order/models.py:360 order/models.py:766
+#: order/models.py:280
+msgid "Company address for this order"
+msgstr ""
+
+#: order/models.py:373 order/models.py:779
msgid "Order reference"
msgstr "Tilauksen viite"
-#: order/models.py:368 order/models.py:791
+#: order/models.py:381 order/models.py:804
msgid "Purchase order status"
msgstr ""
-#: order/models.py:383
+#: order/models.py:396
msgid "Company from which the items are being ordered"
msgstr ""
-#: order/models.py:391 order/templates/order/order_base.html:152
-#: templates/js/translated/purchase_order.js:1662
+#: order/models.py:404 order/templates/order/order_base.html:148
+#: templates/js/translated/purchase_order.js:1677
msgid "Supplier Reference"
msgstr ""
-#: order/models.py:391
+#: order/models.py:404
msgid "Supplier order reference code"
msgstr ""
-#: order/models.py:398
+#: order/models.py:411
msgid "received by"
msgstr ""
-#: order/models.py:403 order/models.py:1761
+#: order/models.py:416 order/models.py:1774
msgid "Issue Date"
msgstr ""
-#: order/models.py:404 order/models.py:1762
+#: order/models.py:417 order/models.py:1775
msgid "Date order was issued"
msgstr ""
-#: order/models.py:410 order/models.py:1768
+#: order/models.py:423 order/models.py:1781
msgid "Date order was completed"
msgstr ""
-#: order/models.py:445
+#: order/models.py:458
msgid "Part supplier must match PO supplier"
msgstr ""
-#: order/models.py:606
+#: order/models.py:619
msgid "Quantity must be a positive number"
msgstr ""
-#: order/models.py:780
+#: order/models.py:793
msgid "Company to which the items are being sold"
msgstr ""
-#: order/models.py:799 order/models.py:1755
+#: order/models.py:812 order/models.py:1768
msgid "Customer Reference "
msgstr "Asiakkaan viite "
-#: order/models.py:799 order/models.py:1756
+#: order/models.py:812 order/models.py:1769
msgid "Customer order reference code"
msgstr ""
-#: order/models.py:801 order/models.py:1408
-#: templates/js/translated/sales_order.js:831
-#: templates/js/translated/sales_order.js:1012
+#: order/models.py:814 order/models.py:1421
+#: templates/js/translated/sales_order.js:843
+#: templates/js/translated/sales_order.js:1024
msgid "Shipment Date"
msgstr ""
-#: order/models.py:808
+#: order/models.py:821
msgid "shipped by"
msgstr ""
-#: order/models.py:857
+#: order/models.py:870
msgid "Order cannot be completed as no parts have been assigned"
msgstr ""
-#: order/models.py:861
+#: order/models.py:874
msgid "Only an open order can be marked as complete"
msgstr ""
-#: order/models.py:864 templates/js/translated/sales_order.js:491
+#: order/models.py:877 templates/js/translated/sales_order.js:503
msgid "Order cannot be completed as there are incomplete shipments"
msgstr ""
-#: order/models.py:867
+#: order/models.py:880
msgid "Order cannot be completed as there are incomplete line items"
msgstr ""
-#: order/models.py:1074
+#: order/models.py:1087
msgid "Item quantity"
msgstr ""
-#: order/models.py:1087
+#: order/models.py:1100
msgid "Line item reference"
msgstr ""
-#: order/models.py:1089
+#: order/models.py:1102
msgid "Line item notes"
msgstr ""
-#: order/models.py:1100
+#: order/models.py:1113
msgid "Target date for this line item (leave blank to use the target date from the order)"
msgstr ""
-#: order/models.py:1118
+#: order/models.py:1131
msgid "Line item description (optional)"
msgstr ""
-#: order/models.py:1123
+#: order/models.py:1136
msgid "Context"
msgstr ""
-#: order/models.py:1124
+#: order/models.py:1137
msgid "Additional context for this line"
msgstr ""
-#: order/models.py:1133
+#: order/models.py:1146
msgid "Unit price"
msgstr ""
-#: order/models.py:1163
+#: order/models.py:1176
msgid "Supplier part must match supplier"
msgstr ""
-#: order/models.py:1171
+#: order/models.py:1184
msgid "deleted"
msgstr ""
-#: order/models.py:1177 order/models.py:1262 order/models.py:1303
-#: order/models.py:1402 order/models.py:1551 order/models.py:1908
-#: order/models.py:1955 templates/js/translated/sales_order.js:1474
+#: order/models.py:1190 order/models.py:1275 order/models.py:1316
+#: order/models.py:1415 order/models.py:1564 order/models.py:1921
+#: order/models.py:1968 templates/js/translated/sales_order.js:1486
msgid "Order"
msgstr ""
-#: order/models.py:1196
+#: order/models.py:1209
msgid "Supplier part"
msgstr ""
-#: order/models.py:1203 order/templates/order/order_base.html:200
-#: templates/js/translated/part.js:1841 templates/js/translated/part.js:1872
-#: templates/js/translated/purchase_order.js:1276
-#: templates/js/translated/purchase_order.js:2137
-#: templates/js/translated/return_order.js:748
-#: templates/js/translated/table_filters.js:90
-#: templates/js/translated/table_filters.js:515
+#: order/models.py:1216 order/templates/order/order_base.html:196
+#: templates/js/translated/part.js:1840 templates/js/translated/part.js:1871
+#: templates/js/translated/purchase_order.js:1291
+#: templates/js/translated/purchase_order.js:2147
+#: templates/js/translated/return_order.js:760
+#: templates/js/translated/table_filters.js:96
+#: templates/js/translated/table_filters.js:537
msgid "Received"
msgstr "Vastaanotettu"
-#: order/models.py:1204
+#: order/models.py:1217
msgid "Number of items received"
msgstr ""
-#: order/models.py:1211 stock/models.py:823 stock/serializers.py:252
+#: order/models.py:1224 stock/models.py:823 stock/serializers.py:314
#: stock/templates/stock/item_base.html:184
-#: templates/js/translated/stock.js:2047
+#: templates/js/translated/stock.js:2204
msgid "Purchase Price"
msgstr ""
-#: order/models.py:1212
+#: order/models.py:1225
msgid "Unit purchase price"
msgstr ""
-#: order/models.py:1225
+#: order/models.py:1238
msgid "Where does the Purchaser want this item to be stored?"
msgstr ""
-#: order/models.py:1291
+#: order/models.py:1304
msgid "Virtual part cannot be assigned to a sales order"
msgstr ""
-#: order/models.py:1296
+#: order/models.py:1309
msgid "Only salable parts can be assigned to a sales order"
msgstr ""
-#: order/models.py:1322 part/templates/part/part_pricing.html:107
+#: order/models.py:1335 part/templates/part/part_pricing.html:107
#: part/templates/part/prices.html:128 templates/js/translated/pricing.js:943
msgid "Sale Price"
msgstr ""
-#: order/models.py:1323
+#: order/models.py:1336
msgid "Unit sale price"
msgstr ""
-#: order/models.py:1333
+#: order/models.py:1346
msgid "Shipped quantity"
msgstr ""
-#: order/models.py:1409
+#: order/models.py:1422
msgid "Date of shipment"
msgstr ""
-#: order/models.py:1414 templates/js/translated/sales_order.js:1024
+#: order/models.py:1427 templates/js/translated/sales_order.js:1036
msgid "Delivery Date"
msgstr ""
-#: order/models.py:1415
+#: order/models.py:1428
msgid "Date of delivery of shipment"
msgstr ""
-#: order/models.py:1422
+#: order/models.py:1435
msgid "Checked By"
msgstr ""
-#: order/models.py:1423
+#: order/models.py:1436
msgid "User who checked this shipment"
msgstr ""
-#: order/models.py:1430 order/models.py:1627 order/serializers.py:1248
-#: order/serializers.py:1376 templates/js/translated/model_renderers.js:415
+#: order/models.py:1443 order/models.py:1640 order/serializers.py:1254
+#: order/serializers.py:1382 templates/js/translated/model_renderers.js:429
msgid "Shipment"
msgstr ""
-#: order/models.py:1431
+#: order/models.py:1444
msgid "Shipment number"
msgstr ""
-#: order/models.py:1439
+#: order/models.py:1452
msgid "Tracking Number"
msgstr "Seurantakoodi"
-#: order/models.py:1440
+#: order/models.py:1453
msgid "Shipment tracking information"
msgstr ""
-#: order/models.py:1447
+#: order/models.py:1460
msgid "Invoice Number"
msgstr "Laskunumero"
-#: order/models.py:1448
+#: order/models.py:1461
msgid "Reference number for associated invoice"
msgstr ""
-#: order/models.py:1470
+#: order/models.py:1483
msgid "Shipment has already been sent"
msgstr ""
-#: order/models.py:1473
+#: order/models.py:1486
msgid "Shipment has no allocated stock items"
msgstr ""
-#: order/models.py:1586 order/models.py:1588
+#: order/models.py:1599 order/models.py:1601
msgid "Stock item has not been assigned"
msgstr ""
-#: order/models.py:1592
+#: order/models.py:1605
msgid "Cannot allocate stock item to a line with a different part"
msgstr ""
-#: order/models.py:1594
+#: order/models.py:1607
msgid "Cannot allocate stock to a line without a part"
msgstr ""
-#: order/models.py:1597
+#: order/models.py:1610
msgid "Allocation quantity cannot exceed stock quantity"
msgstr ""
-#: order/models.py:1607 order/serializers.py:1110
+#: order/models.py:1620 order/serializers.py:1116
msgid "Quantity must be 1 for serialized stock item"
msgstr ""
-#: order/models.py:1610
+#: order/models.py:1623
msgid "Sales order does not match shipment"
msgstr ""
-#: order/models.py:1611
+#: order/models.py:1624
msgid "Shipment does not match sales order"
msgstr ""
-#: order/models.py:1619
+#: order/models.py:1632
msgid "Line"
msgstr ""
-#: order/models.py:1628
+#: order/models.py:1641
msgid "Sales order shipment reference"
msgstr ""
-#: order/models.py:1641 order/models.py:1916
-#: templates/js/translated/return_order.js:706
+#: order/models.py:1654 order/models.py:1929
+#: templates/js/translated/return_order.js:718
msgid "Item"
msgstr ""
-#: order/models.py:1642
+#: order/models.py:1655
msgid "Select stock item to allocate"
msgstr ""
-#: order/models.py:1645
+#: order/models.py:1658
msgid "Enter stock allocation quantity"
msgstr ""
-#: order/models.py:1725
+#: order/models.py:1738
msgid "Return Order reference"
msgstr ""
-#: order/models.py:1739
+#: order/models.py:1752
msgid "Company from which items are being returned"
msgstr ""
-#: order/models.py:1750
+#: order/models.py:1763
msgid "Return order status"
msgstr ""
-#: order/models.py:1901
+#: order/models.py:1914
msgid "Only serialized items can be assigned to a Return Order"
msgstr ""
-#: order/models.py:1917
+#: order/models.py:1930
msgid "Select item to return from customer"
msgstr ""
-#: order/models.py:1922
+#: order/models.py:1935
msgid "Received Date"
msgstr ""
-#: order/models.py:1923
+#: order/models.py:1936
msgid "The date this this return item was received"
msgstr ""
-#: order/models.py:1934 templates/js/translated/return_order.js:717
-#: templates/js/translated/table_filters.js:93
+#: order/models.py:1947 templates/js/translated/return_order.js:729
+#: templates/js/translated/table_filters.js:99
msgid "Outcome"
msgstr ""
-#: order/models.py:1934
+#: order/models.py:1947
msgid "Outcome for this line item"
msgstr ""
-#: order/models.py:1940
+#: order/models.py:1953
msgid "Cost associated with return or repair for this line item"
msgstr ""
-#: order/serializers.py:247
+#: order/serializers.py:253
msgid "Order cannot be cancelled"
msgstr ""
-#: order/serializers.py:262 order/serializers.py:1128
+#: order/serializers.py:268 order/serializers.py:1134
msgid "Allow order to be closed with incomplete line items"
msgstr ""
-#: order/serializers.py:273 order/serializers.py:1139
+#: order/serializers.py:279 order/serializers.py:1145
msgid "Order has incomplete line items"
msgstr ""
-#: order/serializers.py:386
+#: order/serializers.py:392
msgid "Order is not open"
msgstr ""
-#: order/serializers.py:404
+#: order/serializers.py:410
msgid "Purchase price currency"
msgstr ""
-#: order/serializers.py:422
+#: order/serializers.py:428
msgid "Supplier part must be specified"
msgstr ""
-#: order/serializers.py:427
+#: order/serializers.py:433
msgid "Purchase order must be specified"
msgstr ""
-#: order/serializers.py:433
+#: order/serializers.py:439
msgid "Supplier must match purchase order"
msgstr ""
-#: order/serializers.py:434
+#: order/serializers.py:440
msgid "Purchase order must match supplier"
msgstr ""
-#: order/serializers.py:472 order/serializers.py:1216
+#: order/serializers.py:478 order/serializers.py:1222
msgid "Line Item"
msgstr ""
-#: order/serializers.py:478
+#: order/serializers.py:484
msgid "Line item does not match purchase order"
msgstr ""
-#: order/serializers.py:488 order/serializers.py:607 order/serializers.py:1589
+#: order/serializers.py:494 order/serializers.py:613 order/serializers.py:1595
msgid "Select destination location for received items"
msgstr ""
-#: order/serializers.py:507 templates/js/translated/purchase_order.js:1100
+#: order/serializers.py:513 templates/js/translated/purchase_order.js:1115
msgid "Enter batch code for incoming stock items"
msgstr ""
-#: order/serializers.py:515 templates/js/translated/purchase_order.js:1124
+#: order/serializers.py:521 templates/js/translated/purchase_order.js:1139
msgid "Enter serial numbers for incoming stock items"
msgstr ""
-#: order/serializers.py:528 templates/js/translated/barcode.js:52
+#: order/serializers.py:534 templates/js/translated/barcode.js:52
msgid "Barcode"
msgstr "Viivakoodi"
-#: order/serializers.py:529
+#: order/serializers.py:535
msgid "Scanned barcode"
msgstr ""
-#: order/serializers.py:545
+#: order/serializers.py:551
msgid "Barcode is already in use"
msgstr ""
-#: order/serializers.py:569
+#: order/serializers.py:575
msgid "An integer quantity must be provided for trackable parts"
msgstr ""
-#: order/serializers.py:623 order/serializers.py:1604
+#: order/serializers.py:629 order/serializers.py:1610
msgid "Line items must be provided"
msgstr ""
-#: order/serializers.py:640
+#: order/serializers.py:646
msgid "Destination location must be specified"
msgstr ""
-#: order/serializers.py:651
+#: order/serializers.py:657
msgid "Supplied barcode values must be unique"
msgstr ""
-#: order/serializers.py:950
+#: order/serializers.py:956
msgid "Sale price currency"
msgstr ""
-#: order/serializers.py:1007
+#: order/serializers.py:1013
msgid "No shipment details provided"
msgstr ""
-#: order/serializers.py:1071 order/serializers.py:1225
+#: order/serializers.py:1077 order/serializers.py:1231
msgid "Line item is not associated with this order"
msgstr ""
-#: order/serializers.py:1093
+#: order/serializers.py:1099
msgid "Quantity must be positive"
msgstr ""
-#: order/serializers.py:1238
+#: order/serializers.py:1244
msgid "Enter serial numbers to allocate"
msgstr ""
-#: order/serializers.py:1260 order/serializers.py:1384
+#: order/serializers.py:1266 order/serializers.py:1390
msgid "Shipment has already been shipped"
msgstr ""
-#: order/serializers.py:1263 order/serializers.py:1387
+#: order/serializers.py:1269 order/serializers.py:1393
msgid "Shipment is not associated with this order"
msgstr ""
-#: order/serializers.py:1317
+#: order/serializers.py:1323
msgid "No match found for the following serial numbers"
msgstr ""
-#: order/serializers.py:1327
+#: order/serializers.py:1333
msgid "The following serial numbers are already allocated"
msgstr ""
-#: order/serializers.py:1555
+#: order/serializers.py:1561
msgid "Return order line item"
msgstr ""
-#: order/serializers.py:1562
+#: order/serializers.py:1568
msgid "Line item does not match return order"
msgstr ""
-#: order/serializers.py:1565
+#: order/serializers.py:1571
msgid "Line item has already been received"
msgstr ""
-#: order/serializers.py:1597
+#: order/serializers.py:1603
msgid "Items can only be received against orders which are in progress"
msgstr ""
-#: order/serializers.py:1678
+#: order/serializers.py:1684
msgid "Line price currency"
msgstr ""
@@ -4957,82 +5013,74 @@ msgid "Issue Order"
msgstr ""
#: order/templates/order/order_base.html:83
-msgid "Receive items"
-msgstr ""
-
-#: order/templates/order/order_base.html:85
-msgid "Receive Items"
-msgstr ""
-
-#: order/templates/order/order_base.html:87
#: order/templates/order/return_order_base.html:87
msgid "Mark order as complete"
msgstr ""
-#: order/templates/order/order_base.html:88
+#: order/templates/order/order_base.html:84
#: order/templates/order/return_order_base.html:88
#: order/templates/order/sales_order_base.html:94
msgid "Complete Order"
msgstr ""
-#: order/templates/order/order_base.html:95
+#: order/templates/order/order_base.html:91
msgid "Supplier part thumbnail"
msgstr ""
-#: order/templates/order/order_base.html:110
+#: order/templates/order/order_base.html:106
#: order/templates/order/return_order_base.html:102
#: order/templates/order/sales_order_base.html:107
msgid "Order Reference"
msgstr ""
-#: order/templates/order/order_base.html:115
+#: order/templates/order/order_base.html:111
#: order/templates/order/return_order_base.html:107
#: order/templates/order/sales_order_base.html:112
msgid "Order Description"
msgstr ""
-#: order/templates/order/order_base.html:122
+#: order/templates/order/order_base.html:118
#: order/templates/order/return_order_base.html:114
#: order/templates/order/sales_order_base.html:119
msgid "Order Status"
msgstr ""
-#: order/templates/order/order_base.html:145
+#: order/templates/order/order_base.html:141
msgid "No suppplier information available"
msgstr ""
-#: order/templates/order/order_base.html:158
+#: order/templates/order/order_base.html:154
#: order/templates/order/sales_order_base.html:158
msgid "Completed Line Items"
msgstr ""
-#: order/templates/order/order_base.html:164
+#: order/templates/order/order_base.html:160
#: order/templates/order/sales_order_base.html:164
#: order/templates/order/sales_order_base.html:174
msgid "Incomplete"
msgstr ""
-#: order/templates/order/order_base.html:183
+#: order/templates/order/order_base.html:179
#: order/templates/order/return_order_base.html:158
#: report/templates/report/inventree_build_order_base.html:121
msgid "Issued"
msgstr ""
-#: order/templates/order/order_base.html:221
+#: order/templates/order/order_base.html:224
msgid "Total cost"
msgstr "Kokonaiskustannukset"
-#: order/templates/order/order_base.html:225
-#: order/templates/order/return_order_base.html:193
-#: order/templates/order/sales_order_base.html:233
+#: order/templates/order/order_base.html:228
+#: order/templates/order/return_order_base.html:200
+#: order/templates/order/sales_order_base.html:240
msgid "Total cost could not be calculated"
msgstr "Kokonaiskustannuksia ei voitu laskea"
-#: order/templates/order/order_base.html:331
+#: order/templates/order/order_base.html:318
msgid "Purchase Order QR Code"
msgstr ""
-#: order/templates/order/order_base.html:343
+#: order/templates/order/order_base.html:330
msgid "Link Barcode to Purchase Order"
msgstr ""
@@ -5085,13 +5133,13 @@ msgstr ""
#: part/templates/part/import_wizard/ajax_match_references.html:42
#: part/templates/part/import_wizard/match_fields.html:71
#: part/templates/part/import_wizard/match_references.html:49
-#: templates/js/translated/bom.js:132 templates/js/translated/build.js:512
-#: templates/js/translated/build.js:2348
-#: templates/js/translated/purchase_order.js:692
-#: templates/js/translated/purchase_order.js:1206
-#: templates/js/translated/return_order.js:494
-#: templates/js/translated/sales_order.js:1097
-#: templates/js/translated/stock.js:681 templates/js/translated/stock.js:850
+#: templates/js/translated/bom.js:133 templates/js/translated/build.js:518
+#: templates/js/translated/build.js:1555
+#: templates/js/translated/purchase_order.js:703
+#: templates/js/translated/purchase_order.js:1221
+#: templates/js/translated/return_order.js:506
+#: templates/js/translated/sales_order.js:1109
+#: templates/js/translated/stock.js:680 templates/js/translated/stock.js:849
#: templates/patterns/wizard/match_fields.html:70
msgid "Remove row"
msgstr "Poista rivi"
@@ -5152,9 +5200,9 @@ msgstr ""
#: order/templates/order/purchase_order_detail.html:27
#: order/templates/order/return_order_detail.html:24
#: order/templates/order/sales_order_detail.html:24
-#: templates/js/translated/purchase_order.js:419
-#: templates/js/translated/return_order.js:447
-#: templates/js/translated/sales_order.js:222
+#: templates/js/translated/purchase_order.js:430
+#: templates/js/translated/return_order.js:459
+#: templates/js/translated/sales_order.js:234
msgid "Add Line Item"
msgstr ""
@@ -5165,30 +5213,25 @@ msgstr ""
msgid "Receive Line Items"
msgstr ""
-#: order/templates/order/purchase_order_detail.html:49
#: order/templates/order/purchase_order_detail.html:50
-msgid "Delete Line Items"
-msgstr ""
-
-#: order/templates/order/purchase_order_detail.html:66
-#: order/templates/order/return_order_detail.html:47
-#: order/templates/order/sales_order_detail.html:43
+#: order/templates/order/return_order_detail.html:45
+#: order/templates/order/sales_order_detail.html:41
msgid "Extra Lines"
msgstr ""
-#: order/templates/order/purchase_order_detail.html:72
-#: order/templates/order/return_order_detail.html:53
-#: order/templates/order/sales_order_detail.html:49
+#: order/templates/order/purchase_order_detail.html:56
+#: order/templates/order/return_order_detail.html:51
+#: order/templates/order/sales_order_detail.html:47
msgid "Add Extra Line"
msgstr ""
-#: order/templates/order/purchase_order_detail.html:92
+#: order/templates/order/purchase_order_detail.html:74
msgid "Received Items"
msgstr ""
-#: order/templates/order/purchase_order_detail.html:117
-#: order/templates/order/return_order_detail.html:89
-#: order/templates/order/sales_order_detail.html:149
+#: order/templates/order/purchase_order_detail.html:99
+#: order/templates/order/return_order_detail.html:85
+#: order/templates/order/sales_order_detail.html:139
msgid "Order Notes"
msgstr ""
@@ -5208,29 +5251,29 @@ msgstr ""
#: order/templates/order/return_order_base.html:139
#: order/templates/order/sales_order_base.html:152
-#: templates/js/translated/return_order.js:297
-#: templates/js/translated/sales_order.js:785
+#: templates/js/translated/return_order.js:309
+#: templates/js/translated/sales_order.js:797
msgid "Customer Reference"
msgstr ""
-#: order/templates/order/return_order_base.html:189
-#: order/templates/order/sales_order_base.html:229
+#: order/templates/order/return_order_base.html:196
+#: order/templates/order/sales_order_base.html:236
#: part/templates/part/part_pricing.html:32
#: part/templates/part/part_pricing.html:58
#: part/templates/part/part_pricing.html:99
#: part/templates/part/part_pricing.html:114
-#: templates/js/translated/part.js:1046
-#: templates/js/translated/purchase_order.js:1712
-#: templates/js/translated/return_order.js:369
-#: templates/js/translated/sales_order.js:843
+#: templates/js/translated/part.js:1045
+#: templates/js/translated/purchase_order.js:1727
+#: templates/js/translated/return_order.js:381
+#: templates/js/translated/sales_order.js:855
msgid "Total Cost"
msgstr ""
-#: order/templates/order/return_order_base.html:257
+#: order/templates/order/return_order_base.html:264
msgid "Return Order QR Code"
msgstr ""
-#: order/templates/order/return_order_base.html:269
+#: order/templates/order/return_order_base.html:276
msgid "Link Barcode to Return Order"
msgstr ""
@@ -5248,7 +5291,7 @@ msgid "Ship Items"
msgstr ""
#: order/templates/order/sales_order_base.html:93
-#: templates/js/translated/sales_order.js:469
+#: templates/js/translated/sales_order.js:481
msgid "Complete Sales Order"
msgstr ""
@@ -5257,16 +5300,16 @@ msgid "This Sales Order has not been fully allocated"
msgstr ""
#: order/templates/order/sales_order_base.html:170
-#: order/templates/order/sales_order_detail.html:105
+#: order/templates/order/sales_order_detail.html:99
#: order/templates/order/so_sidebar.html:11
msgid "Completed Shipments"
msgstr ""
-#: order/templates/order/sales_order_base.html:306
+#: order/templates/order/sales_order_base.html:313
msgid "Sales Order QR Code"
msgstr ""
-#: order/templates/order/sales_order_base.html:318
+#: order/templates/order/sales_order_base.html:325
msgid "Link Barcode to Sales Order"
msgstr ""
@@ -5274,18 +5317,17 @@ msgstr ""
msgid "Sales Order Items"
msgstr ""
-#: order/templates/order/sales_order_detail.html:71
-#: order/templates/order/so_sidebar.html:8 templates/InvenTree/index.html:332
+#: order/templates/order/sales_order_detail.html:67
+#: order/templates/order/so_sidebar.html:8 templates/InvenTree/index.html:284
msgid "Pending Shipments"
msgstr ""
-#: order/templates/order/sales_order_detail.html:75
-#: templates/attachment_table.html:6 templates/js/translated/bom.js:1236
-#: templates/js/translated/build.js:2249
+#: order/templates/order/sales_order_detail.html:71
+#: templates/js/translated/bom.js:1256 templates/js/translated/filters.js:297
msgid "Actions"
msgstr "Toiminnot"
-#: order/templates/order/sales_order_detail.html:84
+#: order/templates/order/sales_order_detail.html:80
msgid "New Shipment"
msgstr ""
@@ -5311,12 +5353,12 @@ msgstr ""
msgid "Updated {part} unit-price to {price} and quantity to {qty}"
msgstr ""
-#: part/admin.py:33 part/admin.py:273 part/models.py:3667 part/tasks.py:288
+#: part/admin.py:33 part/admin.py:273 part/models.py:3716 part/tasks.py:288
#: stock/admin.py:101
msgid "Part ID"
msgstr ""
-#: part/admin.py:34 part/admin.py:275 part/models.py:3671 part/tasks.py:289
+#: part/admin.py:34 part/admin.py:275 part/models.py:3720 part/tasks.py:289
#: stock/admin.py:102
msgid "Part Name"
msgstr ""
@@ -5325,19 +5367,19 @@ msgstr ""
msgid "Part Description"
msgstr ""
-#: part/admin.py:36 part/models.py:889 part/templates/part/part_base.html:271
-#: templates/js/translated/part.js:1200 templates/js/translated/part.js:2233
-#: templates/js/translated/stock.js:1795
+#: part/admin.py:36 part/models.py:890 part/templates/part/part_base.html:271
+#: templates/js/translated/part.js:1199 templates/js/translated/part.js:2309
+#: templates/js/translated/stock.js:1952
msgid "IPN"
msgstr ""
-#: part/admin.py:37 part/models.py:896 part/templates/part/part_base.html:279
-#: report/models.py:179 templates/js/translated/part.js:1205
-#: templates/js/translated/part.js:2239
+#: part/admin.py:37 part/models.py:897 part/templates/part/part_base.html:279
+#: report/models.py:179 templates/js/translated/part.js:1204
+#: templates/js/translated/part.js:2315
msgid "Revision"
msgstr ""
-#: part/admin.py:38 part/admin.py:198 part/models.py:875
+#: part/admin.py:38 part/admin.py:198 part/models.py:876
#: part/templates/part/category.html:93 part/templates/part/part_base.html:300
msgid "Keywords"
msgstr "Avainsanat"
@@ -5358,24 +5400,24 @@ msgstr ""
msgid "Default Supplier ID"
msgstr ""
-#: part/admin.py:46 part/models.py:864 part/templates/part/part_base.html:179
+#: part/admin.py:46 part/models.py:865 part/templates/part/part_base.html:179
msgid "Variant Of"
msgstr ""
-#: part/admin.py:47 part/models.py:980 part/templates/part/part_base.html:205
+#: part/admin.py:47 part/models.py:981 part/templates/part/part_base.html:205
msgid "Minimum Stock"
msgstr ""
#: part/admin.py:61 part/templates/part/part_base.html:199
-#: templates/js/translated/company.js:1299
-#: templates/js/translated/table_filters.js:301
+#: templates/js/translated/company.js:1720
+#: templates/js/translated/table_filters.js:307
msgid "In Stock"
msgstr ""
#: part/admin.py:62 part/bom.py:178 part/templates/part/part_base.html:212
-#: templates/js/translated/bom.js:1167 templates/js/translated/build.js:2191
-#: templates/js/translated/part.js:687 templates/js/translated/part.js:2123
-#: templates/js/translated/table_filters.js:140
+#: templates/js/translated/bom.js:1187 templates/js/translated/build.js:2541
+#: templates/js/translated/part.js:686 templates/js/translated/part.js:2122
+#: templates/js/translated/table_filters.js:146
msgid "On Order"
msgstr ""
@@ -5383,23 +5425,16 @@ msgstr ""
msgid "Used In"
msgstr ""
-#: part/admin.py:64 templates/js/translated/build.js:2203
-#: templates/js/translated/build.js:2465 templates/js/translated/build.js:3052
-#: templates/js/translated/sales_order.js:1906
-#: templates/js/translated/table_filters.js:488
-msgid "Allocated"
-msgstr ""
-
#: part/admin.py:65 part/templates/part/part_base.html:243 stock/admin.py:124
-#: templates/js/translated/part.js:692 templates/js/translated/part.js:2127
+#: templates/js/translated/part.js:691 templates/js/translated/part.js:2126
msgid "Building"
msgstr ""
-#: part/admin.py:66 part/models.py:2930 templates/js/translated/part.js:943
+#: part/admin.py:66 part/models.py:2964 templates/js/translated/part.js:942
msgid "Minimum Cost"
msgstr ""
-#: part/admin.py:67 part/models.py:2936 templates/js/translated/part.js:953
+#: part/admin.py:67 part/models.py:2970 templates/js/translated/part.js:952
msgid "Maximum Cost"
msgstr ""
@@ -5416,13 +5451,13 @@ msgstr ""
msgid "Category Path"
msgstr ""
-#: part/admin.py:202 part/models.py:392 part/templates/part/cat_link.html:3
-#: part/templates/part/category.html:23 part/templates/part/category.html:140
-#: part/templates/part/category.html:160
+#: part/admin.py:202 part/models.py:393 part/serializers.py:307
+#: part/templates/part/cat_link.html:3 part/templates/part/category.html:23
+#: part/templates/part/category.html:140 part/templates/part/category.html:160
#: part/templates/part/category_sidebar.html:9
-#: templates/InvenTree/index.html:86 templates/InvenTree/search.html:84
+#: templates/InvenTree/index.html:36 templates/InvenTree/search.html:84
#: templates/InvenTree/settings/sidebar.html:45
-#: templates/js/translated/part.js:2754 templates/js/translated/search.js:172
+#: templates/js/translated/part.js:2739 templates/js/translated/search.js:130
#: templates/navbar.html:24 users/models.py:38
msgid "Parts"
msgstr ""
@@ -5439,7 +5474,7 @@ msgstr ""
msgid "Parent IPN"
msgstr ""
-#: part/admin.py:274 part/models.py:3675
+#: part/admin.py:274 part/models.py:3724
msgid "Part IPN"
msgstr ""
@@ -5453,35 +5488,35 @@ msgstr ""
msgid "Maximum Price"
msgstr ""
-#: part/api.py:498
+#: part/api.py:501
msgid "Incoming Purchase Order"
msgstr ""
-#: part/api.py:518
+#: part/api.py:521
msgid "Outgoing Sales Order"
msgstr ""
-#: part/api.py:536
+#: part/api.py:539
msgid "Stock produced by Build Order"
msgstr ""
-#: part/api.py:622
+#: part/api.py:625
msgid "Stock required for Build Order"
msgstr ""
-#: part/api.py:770
+#: part/api.py:773
msgid "Valid"
msgstr ""
-#: part/api.py:771
+#: part/api.py:774
msgid "Validate entire Bill of Materials"
msgstr ""
-#: part/api.py:777
+#: part/api.py:780
msgid "This option must be selected"
msgstr ""
-#: part/bom.py:175 part/models.py:127 part/models.py:923
+#: part/bom.py:175 part/models.py:128 part/models.py:924
#: part/templates/part/category.html:115 part/templates/part/part_base.html:369
msgid "Default Location"
msgstr ""
@@ -5491,7 +5526,7 @@ msgid "Total Stock"
msgstr ""
#: part/bom.py:177 part/templates/part/part_base.html:194
-#: templates/js/translated/sales_order.js:1873
+#: templates/js/translated/sales_order.js:1885
msgid "Available Stock"
msgstr ""
@@ -5499,916 +5534,913 @@ msgstr ""
msgid "Input quantity for price calculation"
msgstr ""
-#: part/models.py:75 part/models.py:3616 part/templates/part/category.html:16
+#: part/models.py:76 part/models.py:3665 part/templates/part/category.html:16
#: part/templates/part/part_app_base.html:10
msgid "Part Category"
msgstr ""
-#: part/models.py:76 part/templates/part/category.html:135
-#: templates/InvenTree/search.html:97 templates/js/translated/search.js:200
+#: part/models.py:77 part/templates/part/category.html:135
+#: templates/InvenTree/search.html:97 templates/js/translated/search.js:158
#: users/models.py:37
msgid "Part Categories"
msgstr ""
-#: part/models.py:128
+#: part/models.py:129
msgid "Default location for parts in this category"
msgstr ""
-#: part/models.py:133 stock/models.py:124 templates/js/translated/stock.js:2520
-#: templates/js/translated/table_filters.js:209
-#: templates/js/translated/table_filters.js:229
+#: part/models.py:134 stock/models.py:124 templates/js/translated/stock.js:2651
+#: templates/js/translated/table_filters.js:215
+#: templates/js/translated/table_filters.js:235
msgid "Structural"
msgstr ""
-#: part/models.py:135
+#: part/models.py:136
msgid "Parts may not be directly assigned to a structural category, but may be assigned to child categories."
msgstr ""
-#: part/models.py:139
+#: part/models.py:140
msgid "Default keywords"
msgstr "Oletus avainsanat"
-#: part/models.py:139
+#: part/models.py:140
msgid "Default keywords for parts in this category"
msgstr ""
-#: part/models.py:144 stock/models.py:113
+#: part/models.py:145 stock/models.py:113
msgid "Icon"
msgstr "Kuvake"
-#: part/models.py:145 stock/models.py:114
+#: part/models.py:146 stock/models.py:114
msgid "Icon (optional)"
msgstr "Kuvake (valinnainen)"
-#: part/models.py:164
+#: part/models.py:165
msgid "You cannot make this part category structural because some parts are already assigned to it!"
msgstr ""
-#: part/models.py:475
+#: part/models.py:476
msgid "Invalid choice for parent part"
msgstr ""
-#: part/models.py:517 part/models.py:529
+#: part/models.py:518 part/models.py:530
#, python-brace-format
msgid "Part '{p1}' is used in BOM for '{p2}' (recursive)"
msgstr ""
-#: part/models.py:601
+#: part/models.py:602
#, python-brace-format
msgid "IPN must match regex pattern {pat}"
msgstr ""
-#: part/models.py:672
+#: part/models.py:673
msgid "Stock item with this serial number already exists"
msgstr ""
-#: part/models.py:803
+#: part/models.py:804
msgid "Duplicate IPN not allowed in part settings"
msgstr ""
-#: part/models.py:808
+#: part/models.py:809
msgid "Part with this Name, IPN and Revision already exists."
msgstr ""
-#: part/models.py:822
+#: part/models.py:823
msgid "Parts cannot be assigned to structural part categories!"
msgstr ""
-#: part/models.py:846 part/models.py:3672
+#: part/models.py:847 part/models.py:3721
msgid "Part name"
msgstr ""
-#: part/models.py:852
+#: part/models.py:853
msgid "Is Template"
msgstr ""
-#: part/models.py:853
+#: part/models.py:854
msgid "Is this part a template part?"
msgstr ""
-#: part/models.py:863
+#: part/models.py:864
msgid "Is this part a variant of another part?"
msgstr ""
-#: part/models.py:870
+#: part/models.py:871
msgid "Part description (optional)"
msgstr ""
-#: part/models.py:876
+#: part/models.py:877
msgid "Part keywords to improve visibility in search results"
msgstr ""
-#: part/models.py:883 part/models.py:3198 part/models.py:3615
-#: part/serializers.py:848 part/templates/part/part_base.html:262
+#: part/models.py:884 part/models.py:3232 part/models.py:3664
+#: part/serializers.py:320 part/serializers.py:910
+#: part/templates/part/part_base.html:262
#: templates/InvenTree/settings/settings_staff_js.html:204
#: templates/js/translated/notification.js:59
-#: templates/js/translated/part.js:2269 templates/js/translated/part.js:2481
+#: templates/js/translated/part.js:2345
msgid "Category"
msgstr "Kategoria"
-#: part/models.py:884
+#: part/models.py:885
msgid "Part category"
msgstr ""
-#: part/models.py:890
+#: part/models.py:891
msgid "Internal Part Number"
msgstr ""
-#: part/models.py:895
+#: part/models.py:896
msgid "Part revision or version number"
msgstr ""
-#: part/models.py:921
+#: part/models.py:922
msgid "Where is this item normally stored?"
msgstr ""
-#: part/models.py:966 part/templates/part/part_base.html:378
+#: part/models.py:967 part/templates/part/part_base.html:378
msgid "Default Supplier"
msgstr ""
-#: part/models.py:967
+#: part/models.py:968
msgid "Default supplier part"
msgstr ""
-#: part/models.py:974
+#: part/models.py:975
msgid "Default Expiry"
msgstr ""
-#: part/models.py:975
+#: part/models.py:976
msgid "Expiry time (in days) for stock items of this part"
msgstr ""
-#: part/models.py:981
+#: part/models.py:982
msgid "Minimum allowed stock level"
msgstr ""
-#: part/models.py:988
+#: part/models.py:989
msgid "Units of measure for this part"
msgstr ""
-#: part/models.py:997
+#: part/models.py:998
msgid "Can this part be built from other parts?"
msgstr ""
-#: part/models.py:1003
+#: part/models.py:1004
msgid "Can this part be used to build other parts?"
msgstr ""
-#: part/models.py:1009
+#: part/models.py:1010
msgid "Does this part have tracking for unique items?"
msgstr ""
-#: part/models.py:1014
+#: part/models.py:1015
msgid "Can this part be purchased from external suppliers?"
msgstr ""
-#: part/models.py:1019
+#: part/models.py:1020
msgid "Can this part be sold to customers?"
msgstr ""
-#: part/models.py:1024
+#: part/models.py:1025
msgid "Is this part active?"
msgstr ""
-#: part/models.py:1029
+#: part/models.py:1030
msgid "Is this a virtual part, such as a software product or license?"
msgstr ""
-#: part/models.py:1031
+#: part/models.py:1032
msgid "BOM checksum"
msgstr ""
-#: part/models.py:1031
+#: part/models.py:1032
msgid "Stored BOM checksum"
msgstr ""
-#: part/models.py:1034
+#: part/models.py:1035
msgid "BOM checked by"
msgstr ""
-#: part/models.py:1036
+#: part/models.py:1037
msgid "BOM checked date"
msgstr ""
-#: part/models.py:1040
+#: part/models.py:1041
msgid "Creation User"
msgstr ""
-#: part/models.py:1042
+#: part/models.py:1043
msgid "User responsible for this part"
msgstr ""
-#: part/models.py:1046 part/templates/part/part_base.html:341
+#: part/models.py:1047 part/templates/part/part_base.html:341
#: stock/templates/stock/item_base.html:447
-#: templates/js/translated/part.js:2331
+#: templates/js/translated/part.js:2407
msgid "Last Stocktake"
msgstr ""
-#: part/models.py:1921
+#: part/models.py:1923
msgid "Sell multiple"
msgstr ""
-#: part/models.py:2853
+#: part/models.py:2887
msgid "Currency used to cache pricing calculations"
msgstr ""
-#: part/models.py:2870
+#: part/models.py:2904
msgid "Minimum BOM Cost"
msgstr ""
-#: part/models.py:2871
+#: part/models.py:2905
msgid "Minimum cost of component parts"
msgstr ""
-#: part/models.py:2876
+#: part/models.py:2910
msgid "Maximum BOM Cost"
msgstr ""
-#: part/models.py:2877
+#: part/models.py:2911
msgid "Maximum cost of component parts"
msgstr ""
-#: part/models.py:2882
+#: part/models.py:2916
msgid "Minimum Purchase Cost"
msgstr ""
-#: part/models.py:2883
+#: part/models.py:2917
msgid "Minimum historical purchase cost"
msgstr ""
-#: part/models.py:2888
+#: part/models.py:2922
msgid "Maximum Purchase Cost"
msgstr ""
-#: part/models.py:2889
+#: part/models.py:2923
msgid "Maximum historical purchase cost"
msgstr ""
-#: part/models.py:2894
+#: part/models.py:2928
msgid "Minimum Internal Price"
msgstr ""
-#: part/models.py:2895
+#: part/models.py:2929
msgid "Minimum cost based on internal price breaks"
msgstr ""
-#: part/models.py:2900
+#: part/models.py:2934
msgid "Maximum Internal Price"
msgstr ""
-#: part/models.py:2901
+#: part/models.py:2935
msgid "Maximum cost based on internal price breaks"
msgstr ""
-#: part/models.py:2906
+#: part/models.py:2940
msgid "Minimum Supplier Price"
msgstr ""
-#: part/models.py:2907
+#: part/models.py:2941
msgid "Minimum price of part from external suppliers"
msgstr ""
-#: part/models.py:2912
+#: part/models.py:2946
msgid "Maximum Supplier Price"
msgstr ""
-#: part/models.py:2913
+#: part/models.py:2947
msgid "Maximum price of part from external suppliers"
msgstr ""
-#: part/models.py:2918
+#: part/models.py:2952
msgid "Minimum Variant Cost"
msgstr ""
-#: part/models.py:2919
+#: part/models.py:2953
msgid "Calculated minimum cost of variant parts"
msgstr ""
-#: part/models.py:2924
+#: part/models.py:2958
msgid "Maximum Variant Cost"
msgstr ""
-#: part/models.py:2925
+#: part/models.py:2959
msgid "Calculated maximum cost of variant parts"
msgstr ""
-#: part/models.py:2931
+#: part/models.py:2965
msgid "Calculated overall minimum cost"
msgstr ""
-#: part/models.py:2937
+#: part/models.py:2971
msgid "Calculated overall maximum cost"
msgstr ""
-#: part/models.py:2942
+#: part/models.py:2976
msgid "Minimum Sale Price"
msgstr ""
-#: part/models.py:2943
+#: part/models.py:2977
msgid "Minimum sale price based on price breaks"
msgstr ""
-#: part/models.py:2948
+#: part/models.py:2982
msgid "Maximum Sale Price"
msgstr ""
-#: part/models.py:2949
+#: part/models.py:2983
msgid "Maximum sale price based on price breaks"
msgstr ""
-#: part/models.py:2954
+#: part/models.py:2988
msgid "Minimum Sale Cost"
msgstr ""
-#: part/models.py:2955
+#: part/models.py:2989
msgid "Minimum historical sale price"
msgstr ""
-#: part/models.py:2960
+#: part/models.py:2994
msgid "Maximum Sale Cost"
msgstr ""
-#: part/models.py:2961
+#: part/models.py:2995
msgid "Maximum historical sale price"
msgstr ""
-#: part/models.py:2980
+#: part/models.py:3014
msgid "Part for stocktake"
msgstr ""
-#: part/models.py:2985
+#: part/models.py:3019
msgid "Item Count"
msgstr ""
-#: part/models.py:2986
+#: part/models.py:3020
msgid "Number of individual stock entries at time of stocktake"
msgstr ""
-#: part/models.py:2993
+#: part/models.py:3027
msgid "Total available stock at time of stocktake"
msgstr ""
-#: part/models.py:2997 part/models.py:3080
+#: part/models.py:3031 part/models.py:3114
#: part/templates/part/part_scheduling.html:13
#: report/templates/report/inventree_test_report_base.html:106
#: templates/InvenTree/settings/plugin_settings.html:37
#: templates/InvenTree/settings/settings_staff_js.html:360
-#: templates/js/translated/part.js:1059 templates/js/translated/pricing.js:812
+#: templates/js/translated/part.js:1058 templates/js/translated/pricing.js:812
#: templates/js/translated/pricing.js:936
-#: templates/js/translated/purchase_order.js:1691
-#: templates/js/translated/stock.js:2558
+#: templates/js/translated/purchase_order.js:1706
+#: templates/js/translated/stock.js:2689
msgid "Date"
msgstr "Päivämäärä"
-#: part/models.py:2998
+#: part/models.py:3032
msgid "Date stocktake was performed"
msgstr ""
-#: part/models.py:3006
+#: part/models.py:3040
msgid "Additional notes"
msgstr "Muut merkinnät"
-#: part/models.py:3014
+#: part/models.py:3048
msgid "User who performed this stocktake"
msgstr ""
-#: part/models.py:3019
+#: part/models.py:3053
msgid "Minimum Stock Cost"
msgstr ""
-#: part/models.py:3020
+#: part/models.py:3054
msgid "Estimated minimum cost of stock on hand"
msgstr ""
-#: part/models.py:3025
+#: part/models.py:3059
msgid "Maximum Stock Cost"
msgstr ""
-#: part/models.py:3026
+#: part/models.py:3060
msgid "Estimated maximum cost of stock on hand"
msgstr ""
-#: part/models.py:3087 templates/InvenTree/settings/settings_staff_js.html:349
+#: part/models.py:3121 templates/InvenTree/settings/settings_staff_js.html:349
msgid "Report"
msgstr "Raportti"
-#: part/models.py:3088
+#: part/models.py:3122
msgid "Stocktake report file (generated internally)"
msgstr ""
-#: part/models.py:3093 templates/InvenTree/settings/settings_staff_js.html:356
+#: part/models.py:3127 templates/InvenTree/settings/settings_staff_js.html:356
msgid "Part Count"
msgstr ""
-#: part/models.py:3094
+#: part/models.py:3128
msgid "Number of parts covered by stocktake"
msgstr ""
-#: part/models.py:3102
+#: part/models.py:3136
msgid "User who requested this stocktake report"
msgstr ""
-#: part/models.py:3238
+#: part/models.py:3272
msgid "Test templates can only be created for trackable parts"
msgstr ""
-#: part/models.py:3255
+#: part/models.py:3289
msgid "Test with this name already exists for this part"
msgstr ""
-#: part/models.py:3275 templates/js/translated/part.js:2821
+#: part/models.py:3309 templates/js/translated/part.js:2806
msgid "Test Name"
msgstr ""
-#: part/models.py:3276
+#: part/models.py:3310
msgid "Enter a name for the test"
msgstr ""
-#: part/models.py:3281
+#: part/models.py:3315
msgid "Test Description"
msgstr ""
-#: part/models.py:3282
+#: part/models.py:3316
msgid "Enter description for this test"
msgstr ""
-#: part/models.py:3287 templates/js/translated/part.js:2830
-#: templates/js/translated/table_filters.js:423
+#: part/models.py:3321 templates/js/translated/part.js:2815
+#: templates/js/translated/table_filters.js:429
msgid "Required"
msgstr ""
-#: part/models.py:3288
+#: part/models.py:3322
msgid "Is this test required to pass?"
msgstr ""
-#: part/models.py:3293 templates/js/translated/part.js:2838
+#: part/models.py:3327 templates/js/translated/part.js:2823
msgid "Requires Value"
msgstr ""
-#: part/models.py:3294
+#: part/models.py:3328
msgid "Does this test require a value when adding a test result?"
msgstr ""
-#: part/models.py:3299 templates/js/translated/part.js:2845
+#: part/models.py:3333 templates/js/translated/part.js:2830
msgid "Requires Attachment"
msgstr ""
-#: part/models.py:3300
+#: part/models.py:3334
msgid "Does this test require a file attachment when adding a test result?"
msgstr ""
-#: part/models.py:3346
+#: part/models.py:3380
msgid "Checkbox parameters cannot have units"
msgstr ""
-#: part/models.py:3351
+#: part/models.py:3385
msgid "Checkbox parameters cannot have choices"
msgstr ""
-#: part/models.py:3369
+#: part/models.py:3403
msgid "Choices must be unique"
msgstr ""
-#: part/models.py:3385
+#: part/models.py:3419
msgid "Parameter template name must be unique"
msgstr ""
-#: part/models.py:3401
+#: part/models.py:3435
msgid "Parameter Name"
msgstr ""
-#: part/models.py:3407
+#: part/models.py:3441
msgid "Physical units for this parameter"
msgstr ""
-#: part/models.py:3417
+#: part/models.py:3451
msgid "Parameter description"
msgstr ""
-#: part/models.py:3423 templates/js/translated/part.js:1600
-#: templates/js/translated/table_filters.js:734
+#: part/models.py:3457 templates/js/translated/part.js:1599
+#: templates/js/translated/table_filters.js:756
msgid "Checkbox"
msgstr ""
-#: part/models.py:3424
+#: part/models.py:3458
msgid "Is this parameter a checkbox?"
msgstr ""
-#: part/models.py:3429 templates/js/translated/part.js:1609
+#: part/models.py:3463 templates/js/translated/part.js:1608
msgid "Choices"
msgstr ""
-#: part/models.py:3430
+#: part/models.py:3464
msgid "Valid choices for this parameter (comma-separated)"
msgstr ""
-#: part/models.py:3511
+#: part/models.py:3545
msgid "Invalid choice for parameter value"
msgstr ""
-#: part/models.py:3555
+#: part/models.py:3589
msgid "Parent Part"
msgstr ""
-#: part/models.py:3560 part/models.py:3621 part/models.py:3622
+#: part/models.py:3594 part/models.py:3670 part/models.py:3671
#: templates/InvenTree/settings/settings_staff_js.html:199
msgid "Parameter Template"
msgstr ""
-#: part/models.py:3565
+#: part/models.py:3599
msgid "Data"
msgstr ""
-#: part/models.py:3565
+#: part/models.py:3599
msgid "Parameter Value"
msgstr ""
-#: part/models.py:3626 templates/InvenTree/settings/settings_staff_js.html:208
+#: part/models.py:3675 templates/InvenTree/settings/settings_staff_js.html:208
msgid "Default Value"
msgstr ""
-#: part/models.py:3627
+#: part/models.py:3676
msgid "Default Parameter Value"
msgstr ""
-#: part/models.py:3664
+#: part/models.py:3713
msgid "Part ID or part name"
msgstr ""
-#: part/models.py:3668
+#: part/models.py:3717
msgid "Unique part ID value"
msgstr ""
-#: part/models.py:3676
+#: part/models.py:3725
msgid "Part IPN value"
msgstr ""
-#: part/models.py:3679
+#: part/models.py:3728
msgid "Level"
msgstr ""
-#: part/models.py:3680
+#: part/models.py:3729
msgid "BOM level"
msgstr ""
-#: part/models.py:3764
+#: part/models.py:3735 part/models.py:4113
+msgid "BOM Item"
+msgstr ""
+
+#: part/models.py:3808
msgid "Select parent part"
msgstr ""
-#: part/models.py:3772
+#: part/models.py:3816
msgid "Sub part"
msgstr ""
-#: part/models.py:3773
+#: part/models.py:3817
msgid "Select part to be used in BOM"
msgstr ""
-#: part/models.py:3779
+#: part/models.py:3823
msgid "BOM quantity for this BOM item"
msgstr ""
-#: part/models.py:3783 part/templates/part/upload_bom.html:58
-#: templates/js/translated/bom.js:971 templates/js/translated/bom.js:998
-#: templates/js/translated/build.js:2113
-#: templates/js/translated/table_filters.js:156
-#: templates/js/translated/table_filters.js:185
-#: templates/js/translated/table_filters.js:500
-msgid "Optional"
-msgstr ""
-
-#: part/models.py:3784
+#: part/models.py:3828
msgid "This BOM item is optional"
msgstr ""
-#: part/models.py:3789 templates/js/translated/bom.js:967
-#: templates/js/translated/bom.js:1007 templates/js/translated/build.js:2104
-#: templates/js/translated/table_filters.js:160
-#: templates/js/translated/table_filters.js:496
-msgid "Consumable"
-msgstr ""
-
-#: part/models.py:3790
+#: part/models.py:3834
msgid "This BOM item is consumable (it is not tracked in build orders)"
msgstr ""
-#: part/models.py:3794 part/templates/part/upload_bom.html:55
+#: part/models.py:3838 part/templates/part/upload_bom.html:55
msgid "Overage"
msgstr ""
-#: part/models.py:3795
+#: part/models.py:3839
msgid "Estimated build wastage quantity (absolute or percentage)"
msgstr ""
-#: part/models.py:3798
+#: part/models.py:3842
msgid "BOM item reference"
msgstr ""
-#: part/models.py:3801
+#: part/models.py:3845
msgid "BOM item notes"
msgstr ""
-#: part/models.py:3805
+#: part/models.py:3849
msgid "Checksum"
msgstr ""
-#: part/models.py:3805
+#: part/models.py:3849
msgid "BOM line checksum"
msgstr ""
-#: part/models.py:3810 templates/js/translated/table_filters.js:144
+#: part/models.py:3854 templates/js/translated/table_filters.js:150
msgid "Validated"
msgstr ""
-#: part/models.py:3811
+#: part/models.py:3855
msgid "This BOM item has been validated"
msgstr ""
-#: part/models.py:3816 part/templates/part/upload_bom.html:57
-#: templates/js/translated/bom.js:1024
-#: templates/js/translated/table_filters.js:148
-#: templates/js/translated/table_filters.js:181
+#: part/models.py:3860 part/templates/part/upload_bom.html:57
+#: templates/js/translated/bom.js:1042
+#: templates/js/translated/table_filters.js:154
+#: templates/js/translated/table_filters.js:187
msgid "Gets inherited"
msgstr ""
-#: part/models.py:3817
+#: part/models.py:3861
msgid "This BOM item is inherited by BOMs for variant parts"
msgstr ""
-#: part/models.py:3822 part/templates/part/upload_bom.html:56
-#: templates/js/translated/bom.js:1016
+#: part/models.py:3866 part/templates/part/upload_bom.html:56
+#: templates/js/translated/bom.js:1034
msgid "Allow Variants"
msgstr ""
-#: part/models.py:3823
+#: part/models.py:3867
msgid "Stock items for variant parts can be used for this BOM item"
msgstr ""
-#: part/models.py:3909 stock/models.py:577
+#: part/models.py:3953 stock/models.py:577
msgid "Quantity must be integer value for trackable parts"
msgstr ""
-#: part/models.py:3918 part/models.py:3920
+#: part/models.py:3962 part/models.py:3964
msgid "Sub part must be specified"
msgstr ""
-#: part/models.py:4036
+#: part/models.py:4080
msgid "BOM Item Substitute"
msgstr ""
-#: part/models.py:4057
+#: part/models.py:4101
msgid "Substitute part cannot be the same as the master part"
msgstr ""
-#: part/models.py:4070
+#: part/models.py:4114
msgid "Parent BOM item"
msgstr ""
-#: part/models.py:4078
+#: part/models.py:4122
msgid "Substitute part"
msgstr ""
-#: part/models.py:4093
+#: part/models.py:4137
msgid "Part 1"
msgstr ""
-#: part/models.py:4097
+#: part/models.py:4141
msgid "Part 2"
msgstr ""
-#: part/models.py:4097
+#: part/models.py:4141
msgid "Select Related Part"
msgstr ""
-#: part/models.py:4115
+#: part/models.py:4159
msgid "Part relationship cannot be created between a part and itself"
msgstr ""
-#: part/models.py:4119
+#: part/models.py:4163
msgid "Duplicate relationship already exists"
msgstr ""
-#: part/serializers.py:152 part/serializers.py:175 stock/serializers.py:257
+#: part/serializers.py:152 part/serializers.py:175 stock/serializers.py:319
msgid "Purchase currency of this stock item"
msgstr ""
-#: part/serializers.py:302
+#: part/serializers.py:313
+msgid "No parts selected"
+msgstr ""
+
+#: part/serializers.py:321
+msgid "Select category"
+msgstr ""
+
+#: part/serializers.py:352
msgid "Original Part"
msgstr ""
-#: part/serializers.py:302
+#: part/serializers.py:352
msgid "Select original part to duplicate"
msgstr ""
-#: part/serializers.py:307
+#: part/serializers.py:357
msgid "Copy Image"
msgstr ""
-#: part/serializers.py:307
+#: part/serializers.py:357
msgid "Copy image from original part"
msgstr ""
-#: part/serializers.py:312 part/templates/part/detail.html:296
+#: part/serializers.py:362 part/templates/part/detail.html:277
msgid "Copy BOM"
msgstr ""
-#: part/serializers.py:312
+#: part/serializers.py:362
msgid "Copy bill of materials from original part"
msgstr ""
-#: part/serializers.py:317
+#: part/serializers.py:367
msgid "Copy Parameters"
msgstr ""
-#: part/serializers.py:317
+#: part/serializers.py:367
msgid "Copy parameter data from original part"
msgstr ""
-#: part/serializers.py:327
+#: part/serializers.py:377
msgid "Initial Stock Quantity"
msgstr ""
-#: part/serializers.py:327
+#: part/serializers.py:377
msgid "Specify initial stock quantity for this Part. If quantity is zero, no stock is added."
msgstr ""
-#: part/serializers.py:333
+#: part/serializers.py:383
msgid "Initial Stock Location"
msgstr ""
-#: part/serializers.py:333
+#: part/serializers.py:383
msgid "Specify initial stock location for this Part"
msgstr ""
-#: part/serializers.py:343
+#: part/serializers.py:393
msgid "Select supplier (or leave blank to skip)"
msgstr ""
-#: part/serializers.py:354
+#: part/serializers.py:404
msgid "Select manufacturer (or leave blank to skip)"
msgstr ""
-#: part/serializers.py:360
+#: part/serializers.py:410
msgid "Manufacturer part number"
msgstr "Valmistajan osanumero"
-#: part/serializers.py:367
+#: part/serializers.py:417
msgid "Selected company is not a valid supplier"
msgstr ""
-#: part/serializers.py:375
+#: part/serializers.py:425
msgid "Selected company is not a valid manufacturer"
msgstr ""
-#: part/serializers.py:387
+#: part/serializers.py:437
msgid "Manufacturer part matching this MPN already exists"
msgstr ""
-#: part/serializers.py:395
+#: part/serializers.py:445
msgid "Supplier part matching this SKU already exists"
msgstr ""
-#: part/serializers.py:620 part/templates/part/copy_part.html:9
-#: templates/js/translated/part.js:449
+#: part/serializers.py:682 part/templates/part/copy_part.html:9
+#: templates/js/translated/part.js:448
msgid "Duplicate Part"
msgstr ""
-#: part/serializers.py:620
+#: part/serializers.py:682
msgid "Copy initial data from another Part"
msgstr ""
-#: part/serializers.py:625 templates/js/translated/part.js:103
+#: part/serializers.py:687 templates/js/translated/part.js:102
msgid "Initial Stock"
msgstr ""
-#: part/serializers.py:625
+#: part/serializers.py:687
msgid "Create Part with initial stock quantity"
msgstr ""
-#: part/serializers.py:630
+#: part/serializers.py:692
msgid "Supplier Information"
msgstr ""
-#: part/serializers.py:630
+#: part/serializers.py:692
msgid "Add initial supplier information for this part"
msgstr ""
-#: part/serializers.py:636
+#: part/serializers.py:698
msgid "Copy Category Parameters"
msgstr ""
-#: part/serializers.py:637
+#: part/serializers.py:699
msgid "Copy parameter templates from selected part category"
msgstr ""
-#: part/serializers.py:842
+#: part/serializers.py:904
msgid "Limit stocktake report to a particular part, and any variant parts"
msgstr ""
-#: part/serializers.py:848
+#: part/serializers.py:910
msgid "Limit stocktake report to a particular part category, and any child categories"
msgstr ""
-#: part/serializers.py:854
+#: part/serializers.py:916
msgid "Limit stocktake report to a particular stock location, and any child locations"
msgstr ""
-#: part/serializers.py:859
+#: part/serializers.py:921
msgid "Generate Report"
msgstr "Luo raportti"
-#: part/serializers.py:860
+#: part/serializers.py:922
msgid "Generate report file containing calculated stocktake data"
msgstr ""
-#: part/serializers.py:865
+#: part/serializers.py:927
msgid "Update Parts"
msgstr ""
-#: part/serializers.py:866
+#: part/serializers.py:928
msgid "Update specified parts with calculated stocktake data"
msgstr ""
-#: part/serializers.py:874
+#: part/serializers.py:936
msgid "Stocktake functionality is not enabled"
msgstr ""
-#: part/serializers.py:963
+#: part/serializers.py:1025
msgid "Update"
msgstr ""
-#: part/serializers.py:964
+#: part/serializers.py:1026
msgid "Update pricing for this part"
msgstr ""
-#: part/serializers.py:1246
+#: part/serializers.py:1308
msgid "Select part to copy BOM from"
msgstr ""
-#: part/serializers.py:1254
+#: part/serializers.py:1316
msgid "Remove Existing Data"
msgstr ""
-#: part/serializers.py:1255
+#: part/serializers.py:1317
msgid "Remove existing BOM items before copying"
msgstr ""
-#: part/serializers.py:1260
+#: part/serializers.py:1322
msgid "Include Inherited"
msgstr ""
-#: part/serializers.py:1261
+#: part/serializers.py:1323
msgid "Include BOM items which are inherited from templated parts"
msgstr ""
-#: part/serializers.py:1266
+#: part/serializers.py:1328
msgid "Skip Invalid Rows"
msgstr ""
-#: part/serializers.py:1267
+#: part/serializers.py:1329
msgid "Enable this option to skip invalid rows"
msgstr ""
-#: part/serializers.py:1272
+#: part/serializers.py:1334
msgid "Copy Substitute Parts"
msgstr ""
-#: part/serializers.py:1273
+#: part/serializers.py:1335
msgid "Copy substitute parts when duplicate BOM items"
msgstr ""
-#: part/serializers.py:1313
+#: part/serializers.py:1375
msgid "Clear Existing BOM"
msgstr ""
-#: part/serializers.py:1314
+#: part/serializers.py:1376
msgid "Delete existing BOM items before uploading"
msgstr ""
-#: part/serializers.py:1344
+#: part/serializers.py:1406
msgid "No part column specified"
msgstr ""
-#: part/serializers.py:1387
+#: part/serializers.py:1449
msgid "Multiple matching parts found"
msgstr ""
-#: part/serializers.py:1390
+#: part/serializers.py:1452
msgid "No matching part found"
msgstr ""
-#: part/serializers.py:1393
+#: part/serializers.py:1455
msgid "Part is not designated as a component"
msgstr ""
-#: part/serializers.py:1402
+#: part/serializers.py:1464
msgid "Quantity not provided"
msgstr ""
-#: part/serializers.py:1410
+#: part/serializers.py:1472
msgid "Invalid quantity"
msgstr ""
-#: part/serializers.py:1431
+#: part/serializers.py:1493
msgid "At least one BOM item is required"
msgstr ""
@@ -6421,9 +6453,9 @@ msgstr ""
msgid "The available stock for {part.name} has fallen below the configured minimum level"
msgstr ""
-#: part/tasks.py:294 templates/js/translated/part.js:1040
-#: templates/js/translated/part.js:1793 templates/js/translated/part.js:1848
-#: templates/js/translated/purchase_order.js:2052
+#: part/tasks.py:294 templates/js/translated/part.js:1039
+#: templates/js/translated/part.js:1792 templates/js/translated/part.js:1847
+#: templates/js/translated/purchase_order.js:2062
msgid "Total Quantity"
msgstr ""
@@ -6461,14 +6493,6 @@ msgstr ""
msgid "The BOM for %(part)s has not been validated."
msgstr ""
-#: part/templates/part/bom.html:30 part/templates/part/detail.html:291
-msgid "BOM actions"
-msgstr ""
-
-#: part/templates/part/bom.html:34
-msgid "Delete Items"
-msgstr ""
-
#: part/templates/part/category.html:34
msgid "Perform stocktake for this part category"
msgstr ""
@@ -6505,7 +6529,7 @@ msgstr "Poista kategoria"
msgid "Top level part category"
msgstr ""
-#: part/templates/part/category.html:121 part/templates/part/category.html:225
+#: part/templates/part/category.html:121 part/templates/part/category.html:206
#: part/templates/part/category_sidebar.html:7
msgid "Subcategories"
msgstr ""
@@ -6518,33 +6542,20 @@ msgstr ""
msgid "Create new part"
msgstr "Luo uusi osa"
-#: part/templates/part/category.html:165 templates/js/translated/bom.js:443
+#: part/templates/part/category.html:165 templates/js/translated/bom.js:444
msgid "New Part"
msgstr "Uusi osa"
-#: part/templates/part/category.html:175 part/templates/part/detail.html:390
-#: part/templates/part/detail.html:421
-msgid "Options"
-msgstr "Valinnat"
-
-#: part/templates/part/category.html:179
-msgid "Set category"
-msgstr "Aseta kategoria"
-
-#: part/templates/part/category.html:180
-msgid "Set Category"
-msgstr "Aseta kategoria"
-
-#: part/templates/part/category.html:208
+#: part/templates/part/category.html:191
#: templates/InvenTree/settings/sidebar.html:47
msgid "Part Parameters"
msgstr ""
-#: part/templates/part/category.html:229
+#: part/templates/part/category.html:210
msgid "Create new part category"
msgstr ""
-#: part/templates/part/category.html:230
+#: part/templates/part/category.html:211
msgid "New Category"
msgstr ""
@@ -6581,7 +6592,7 @@ msgid "Refresh scheduling data"
msgstr ""
#: part/templates/part/detail.html:45 part/templates/part/prices.html:15
-#: templates/js/translated/tables.js:584
+#: templates/js/translated/tables.js:560
msgid "Refresh"
msgstr ""
@@ -6592,7 +6603,7 @@ msgstr ""
#: part/templates/part/detail.html:67 part/templates/part/part_sidebar.html:50
#: stock/admin.py:130 templates/InvenTree/settings/part_stocktake.html:29
#: templates/InvenTree/settings/sidebar.html:51
-#: templates/js/translated/stock.js:1952 users/models.py:39
+#: templates/js/translated/stock.js:2109 users/models.py:39
msgid "Stocktake"
msgstr ""
@@ -6604,101 +6615,101 @@ msgstr ""
msgid "Add Test Template"
msgstr ""
-#: part/templates/part/detail.html:145 stock/templates/stock/item.html:53
+#: part/templates/part/detail.html:139 stock/templates/stock/item.html:49
msgid "Sales Order Allocations"
msgstr ""
-#: part/templates/part/detail.html:165
+#: part/templates/part/detail.html:156
msgid "Part Notes"
msgstr ""
-#: part/templates/part/detail.html:180
+#: part/templates/part/detail.html:171
msgid "Part Variants"
msgstr ""
-#: part/templates/part/detail.html:184
+#: part/templates/part/detail.html:175
msgid "Create new variant"
msgstr ""
-#: part/templates/part/detail.html:185
+#: part/templates/part/detail.html:176
msgid "New Variant"
msgstr ""
-#: part/templates/part/detail.html:212
+#: part/templates/part/detail.html:199
msgid "Add new parameter"
msgstr ""
-#: part/templates/part/detail.html:249 part/templates/part/part_sidebar.html:58
+#: part/templates/part/detail.html:232 part/templates/part/part_sidebar.html:58
msgid "Related Parts"
msgstr ""
-#: part/templates/part/detail.html:253 part/templates/part/detail.html:254
+#: part/templates/part/detail.html:236 part/templates/part/detail.html:237
msgid "Add Related"
msgstr ""
-#: part/templates/part/detail.html:274 part/templates/part/part_sidebar.html:17
+#: part/templates/part/detail.html:255 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:279
+#: part/templates/part/detail.html:260
msgid "Export actions"
msgstr ""
-#: part/templates/part/detail.html:283 templates/js/translated/bom.js:339
+#: part/templates/part/detail.html:264 templates/js/translated/bom.js:340
msgid "Export BOM"
msgstr ""
-#: part/templates/part/detail.html:285
+#: part/templates/part/detail.html:266
msgid "Print BOM Report"
msgstr ""
-#: part/templates/part/detail.html:295
+#: part/templates/part/detail.html:272
+msgid "BOM actions"
+msgstr ""
+
+#: part/templates/part/detail.html:276
msgid "Upload BOM"
msgstr ""
-#: part/templates/part/detail.html:297
+#: part/templates/part/detail.html:278
msgid "Validate BOM"
msgstr ""
-#: part/templates/part/detail.html:302 part/templates/part/detail.html:303
-#: templates/js/translated/bom.js:1279 templates/js/translated/bom.js:1280
+#: part/templates/part/detail.html:283 part/templates/part/detail.html:284
+#: templates/js/translated/bom.js:1299 templates/js/translated/bom.js:1300
msgid "Add BOM Item"
msgstr ""
-#: part/templates/part/detail.html:316
+#: part/templates/part/detail.html:297
msgid "Assemblies"
msgstr ""
-#: part/templates/part/detail.html:334
+#: part/templates/part/detail.html:313
msgid "Part Builds"
msgstr ""
-#: part/templates/part/detail.html:361 stock/templates/stock/item.html:38
+#: part/templates/part/detail.html:338 stock/templates/stock/item.html:36
msgid "Build Order Allocations"
msgstr ""
-#: part/templates/part/detail.html:377
+#: part/templates/part/detail.html:352
msgid "Part Suppliers"
msgstr ""
-#: part/templates/part/detail.html:407
+#: part/templates/part/detail.html:372
msgid "Part Manufacturers"
msgstr ""
-#: part/templates/part/detail.html:423
-msgid "Delete manufacturer parts"
-msgstr ""
-
-#: part/templates/part/detail.html:707
+#: part/templates/part/detail.html:654
msgid "Related Part"
msgstr ""
-#: part/templates/part/detail.html:715
+#: part/templates/part/detail.html:662
msgid "Add Related Part"
msgstr ""
-#: part/templates/part/detail.html:800
+#: part/templates/part/detail.html:747
msgid "Add Test Result Template"
msgstr ""
@@ -6732,13 +6743,13 @@ msgid "Download Part Import Template"
msgstr ""
#: part/templates/part/import_wizard/part_upload.html:92
-#: templates/js/translated/bom.js:308 templates/js/translated/bom.js:342
+#: templates/js/translated/bom.js:309 templates/js/translated/bom.js:343
#: templates/js/translated/order.js:129 templates/js/translated/tables.js:189
msgid "Format"
msgstr ""
#: part/templates/part/import_wizard/part_upload.html:93
-#: templates/js/translated/bom.js:309 templates/js/translated/bom.js:343
+#: templates/js/translated/bom.js:310 templates/js/translated/bom.js:344
#: templates/js/translated/order.js:130
msgid "Select file format"
msgstr ""
@@ -6779,7 +6790,7 @@ msgstr ""
msgid "Transfer part stock"
msgstr ""
-#: part/templates/part/part_base.html:93
+#: part/templates/part/part_base.html:93 templates/js/translated/part.js:2264
msgid "Part actions"
msgstr ""
@@ -6824,10 +6835,10 @@ msgid "Part is not active"
msgstr ""
#: part/templates/part/part_base.html:148
-#: templates/js/translated/company.js:945
-#: templates/js/translated/company.js:1185
-#: templates/js/translated/model_renderers.js:273
-#: templates/js/translated/part.js:792 templates/js/translated/part.js:1192
+#: templates/js/translated/company.js:1318
+#: templates/js/translated/company.js:1606
+#: templates/js/translated/model_renderers.js:287
+#: templates/js/translated/part.js:791 templates/js/translated/part.js:1191
msgid "Inactive"
msgstr ""
@@ -6850,7 +6861,7 @@ msgstr ""
msgid "Allocated to Sales Orders"
msgstr ""
-#: part/templates/part/part_base.html:237 templates/js/translated/bom.js:1178
+#: part/templates/part/part_base.html:237 templates/js/translated/bom.js:1198
msgid "Can Build"
msgstr ""
@@ -6858,8 +6869,8 @@ msgstr ""
msgid "Minimum stock level"
msgstr ""
-#: part/templates/part/part_base.html:324 templates/js/translated/bom.js:1041
-#: templates/js/translated/part.js:1238 templates/js/translated/part.js:2304
+#: part/templates/part/part_base.html:324 templates/js/translated/bom.js:1059
+#: templates/js/translated/part.js:1237 templates/js/translated/part.js:2380
#: templates/js/translated/pricing.js:391
#: templates/js/translated/pricing.js:1040
msgid "Price Range"
@@ -6882,7 +6893,7 @@ msgstr ""
msgid "Link Barcode to Part"
msgstr ""
-#: part/templates/part/part_base.html:474 templates/js/translated/part.js:2191
+#: part/templates/part/part_base.html:474 templates/js/translated/part.js:2258
msgid "part"
msgstr ""
@@ -6956,9 +6967,9 @@ msgstr ""
#: stock/templates/stock/stock_app_base.html:10
#: templates/InvenTree/search.html:153
#: templates/InvenTree/settings/sidebar.html:49
-#: templates/js/translated/part.js:1216 templates/js/translated/part.js:2120
-#: templates/js/translated/part.js:2284 templates/js/translated/stock.js:1022
-#: templates/js/translated/stock.js:1829 templates/navbar.html:31
+#: templates/js/translated/part.js:1215 templates/js/translated/part.js:2119
+#: templates/js/translated/part.js:2360 templates/js/translated/stock.js:1021
+#: templates/js/translated/stock.js:1986 templates/navbar.html:31
msgid "Stock"
msgstr ""
@@ -6989,9 +7000,9 @@ msgstr ""
#: part/templates/part/prices.html:25 stock/admin.py:129
#: stock/templates/stock/item_base.html:442
-#: templates/js/translated/company.js:1313
-#: templates/js/translated/company.js:1323
-#: templates/js/translated/stock.js:1982
+#: templates/js/translated/company.js:1734
+#: templates/js/translated/company.js:1744
+#: templates/js/translated/stock.js:2139
msgid "Last Updated"
msgstr ""
@@ -7054,12 +7065,12 @@ msgstr ""
msgid "Add Sell Price Break"
msgstr ""
-#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:682
-#: templates/js/translated/part.js:2115 templates/js/translated/part.js:2117
+#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:681
+#: templates/js/translated/part.js:2114 templates/js/translated/part.js:2116
msgid "No Stock"
msgstr ""
-#: part/templates/part/stock_count.html:9 templates/InvenTree/index.html:167
+#: part/templates/part/stock_count.html:9 templates/InvenTree/index.html:120
msgid "Low Stock"
msgstr ""
@@ -7163,7 +7174,7 @@ msgid "Match found for barcode data"
msgstr ""
#: plugin/base/barcodes/api.py:120
-#: templates/js/translated/purchase_order.js:1372
+#: templates/js/translated/purchase_order.js:1387
msgid "Barcode matches existing item"
msgstr ""
@@ -7226,43 +7237,43 @@ msgstr ""
msgid "Open link"
msgstr "Avaa linkki"
-#: plugin/models.py:27
+#: plugin/models.py:28
msgid "Plugin Configuration"
msgstr ""
-#: plugin/models.py:28
+#: plugin/models.py:29
msgid "Plugin Configurations"
msgstr ""
-#: plugin/models.py:33
+#: plugin/models.py:34
msgid "Key"
msgstr "Avain"
-#: plugin/models.py:34
+#: plugin/models.py:35
msgid "Key of plugin"
msgstr ""
-#: plugin/models.py:42
+#: plugin/models.py:43
msgid "PluginName of the plugin"
msgstr ""
-#: plugin/models.py:48
+#: plugin/models.py:49
msgid "Is the plugin active"
msgstr ""
-#: plugin/models.py:124
+#: plugin/models.py:125
msgid "Sample plugin"
msgstr ""
-#: plugin/models.py:133
+#: plugin/models.py:134
msgid "Builtin Plugin"
msgstr ""
-#: plugin/models.py:159 templates/InvenTree/settings/plugin_settings.html:9
+#: plugin/models.py:160 templates/InvenTree/settings/plugin_settings.html:9
msgid "Plugin"
msgstr ""
-#: plugin/models.py:210
+#: plugin/models.py:211
msgid "Method"
msgstr ""
@@ -7414,47 +7425,47 @@ msgstr ""
msgid "Build query filters (comma-separated list of key=value pairs"
msgstr ""
-#: report/models.py:418
+#: report/models.py:420
msgid "Part Filters"
msgstr ""
-#: report/models.py:419
+#: report/models.py:421
msgid "Part query filters (comma-separated list of key=value pairs"
msgstr ""
-#: report/models.py:453
+#: report/models.py:455
msgid "Purchase order query filters"
msgstr ""
-#: report/models.py:491
+#: report/models.py:493
msgid "Sales order query filters"
msgstr ""
-#: report/models.py:529
+#: report/models.py:531
msgid "Return order query filters"
msgstr ""
-#: report/models.py:582
+#: report/models.py:584
msgid "Snippet"
msgstr ""
-#: report/models.py:583
+#: report/models.py:585
msgid "Report snippet file"
msgstr ""
-#: report/models.py:587
+#: report/models.py:589
msgid "Snippet file description"
msgstr ""
-#: report/models.py:624
+#: report/models.py:626
msgid "Asset"
msgstr ""
-#: report/models.py:625
+#: report/models.py:627
msgid "Report asset file"
msgstr ""
-#: report/models.py:632
+#: report/models.py:634
msgid "Asset file description"
msgstr ""
@@ -7475,8 +7486,8 @@ msgstr ""
#: templates/js/translated/order.js:316 templates/js/translated/pricing.js:527
#: templates/js/translated/pricing.js:596
#: templates/js/translated/pricing.js:820
-#: templates/js/translated/purchase_order.js:2083
-#: templates/js/translated/sales_order.js:1817
+#: templates/js/translated/purchase_order.js:2093
+#: templates/js/translated/sales_order.js:1829
msgid "Unit Price"
msgstr ""
@@ -7488,23 +7499,23 @@ msgstr ""
#: report/templates/report/inventree_po_report_base.html:72
#: report/templates/report/inventree_so_report_base.html:72
-#: templates/js/translated/purchase_order.js:1985
-#: templates/js/translated/sales_order.js:1792
+#: templates/js/translated/purchase_order.js:1995
+#: templates/js/translated/sales_order.js:1804
msgid "Total"
msgstr ""
#: report/templates/report/inventree_return_order_report_base.html:25
#: report/templates/report/inventree_test_report_base.html:88
#: stock/models.py:725 stock/templates/stock/item_base.html:312
-#: templates/js/translated/build.js:502 templates/js/translated/build.js:1423
-#: templates/js/translated/build.js:1989
-#: templates/js/translated/model_renderers.js:201
-#: templates/js/translated/return_order.js:528
-#: templates/js/translated/return_order.js:708
-#: templates/js/translated/sales_order.js:300
-#: templates/js/translated/sales_order.js:1597
-#: templates/js/translated/sales_order.js:1682
-#: templates/js/translated/stock.js:563
+#: templates/js/translated/build.js:508 templates/js/translated/build.js:1306
+#: templates/js/translated/build.js:2281
+#: templates/js/translated/model_renderers.js:215
+#: templates/js/translated/return_order.js:540
+#: templates/js/translated/return_order.js:720
+#: templates/js/translated/sales_order.js:312
+#: templates/js/translated/sales_order.js:1609
+#: templates/js/translated/sales_order.js:1694
+#: templates/js/translated/stock.js:562
msgid "Serial Number"
msgstr "Sarjanumero"
@@ -7517,7 +7528,7 @@ msgid "Test Results"
msgstr ""
#: report/templates/report/inventree_test_report_base.html:102
-#: stock/models.py:2243 templates/js/translated/stock.js:1419
+#: stock/models.py:2243 templates/js/translated/stock.js:1418
msgid "Test"
msgstr ""
@@ -7548,8 +7559,8 @@ msgid "Installed Items"
msgstr ""
#: report/templates/report/inventree_test_report_base.html:168
-#: stock/admin.py:104 templates/js/translated/stock.js:667
-#: templates/js/translated/stock.js:838 templates/js/translated/stock.js:2849
+#: stock/admin.py:104 templates/js/translated/stock.js:666
+#: templates/js/translated/stock.js:837 templates/js/translated/stock.js:2976
msgid "Serial"
msgstr "Sarjanumero"
@@ -7617,31 +7628,31 @@ msgstr ""
#: stock/admin.py:131 stock/models.py:789
#: stock/templates/stock/item_base.html:429
-#: templates/js/translated/stock.js:1966
+#: templates/js/translated/stock.js:2123
msgid "Expiry Date"
msgstr ""
-#: stock/api.py:420 templates/js/translated/table_filters.js:373
+#: stock/api.py:426 templates/js/translated/table_filters.js:379
msgid "External Location"
msgstr ""
-#: stock/api.py:582
+#: stock/api.py:619
msgid "Quantity is required"
msgstr ""
-#: stock/api.py:589
+#: stock/api.py:626
msgid "Valid part must be supplied"
msgstr ""
-#: stock/api.py:615
+#: stock/api.py:652
msgid "The given supplier part does not exist"
msgstr ""
-#: stock/api.py:624
+#: stock/api.py:661
msgid "The supplier part has a pack size defined, but flag use_pack_size not set"
msgstr ""
-#: stock/api.py:642
+#: stock/api.py:679
msgid "Serial numbers cannot be supplied for a non-trackable part"
msgstr ""
@@ -7652,7 +7663,7 @@ msgid "Stock Location"
msgstr ""
#: stock/models.py:55 stock/templates/stock/location.html:177
-#: templates/InvenTree/search.html:166 templates/js/translated/search.js:220
+#: templates/InvenTree/search.html:166 templates/js/translated/search.js:178
#: users/models.py:40
msgid "Stock Locations"
msgstr ""
@@ -7670,8 +7681,8 @@ msgstr ""
msgid "Stock items may not be directly located into a structural stock locations, but may be located to child locations."
msgstr ""
-#: stock/models.py:132 templates/js/translated/stock.js:2529
-#: templates/js/translated/table_filters.js:213
+#: stock/models.py:132 templates/js/translated/stock.js:2660
+#: templates/js/translated/table_filters.js:219
msgid "External"
msgstr ""
@@ -7687,7 +7698,7 @@ msgstr ""
msgid "Stock items cannot be located into structural stock locations!"
msgstr ""
-#: stock/models.py:583 stock/serializers.py:174
+#: stock/models.py:583 stock/serializers.py:223
msgid "Stock item cannot be created for virtual parts"
msgstr ""
@@ -7821,7 +7832,7 @@ msgstr ""
msgid "Quantity does not match serial numbers"
msgstr ""
-#: stock/models.py:1403 stock/serializers.py:374
+#: stock/models.py:1403 stock/serializers.py:440
msgid "Serial numbers already exist"
msgstr ""
@@ -7849,7 +7860,7 @@ msgstr ""
msgid "Serialized stock cannot be merged"
msgstr ""
-#: stock/models.py:1496 stock/serializers.py:975
+#: stock/models.py:1496 stock/serializers.py:1092
msgid "Duplicate stock items"
msgstr ""
@@ -7901,132 +7912,141 @@ msgstr ""
msgid "Test notes"
msgstr ""
-#: stock/serializers.py:76
+#: stock/serializers.py:121
msgid "Serial number is too large"
msgstr ""
-#: stock/serializers.py:166
+#: stock/serializers.py:215
msgid "Use pack size when adding: the quantity defined is the number of packs"
msgstr ""
-#: stock/serializers.py:254
+#: stock/serializers.py:316
msgid "Purchase price of this stock item, per unit or pack"
msgstr ""
-#: stock/serializers.py:307
+#: stock/serializers.py:373
msgid "Enter number of stock items to serialize"
msgstr ""
-#: stock/serializers.py:319
+#: stock/serializers.py:385
#, python-brace-format
msgid "Quantity must not exceed available stock quantity ({q})"
msgstr ""
-#: stock/serializers.py:325
+#: stock/serializers.py:391
msgid "Enter serial numbers for new items"
msgstr ""
-#: stock/serializers.py:336 stock/serializers.py:932 stock/serializers.py:1174
+#: stock/serializers.py:402 stock/serializers.py:1049 stock/serializers.py:1291
msgid "Destination stock location"
msgstr ""
-#: stock/serializers.py:343
+#: stock/serializers.py:409
msgid "Optional note field"
msgstr ""
-#: stock/serializers.py:353
+#: stock/serializers.py:419
msgid "Serial numbers cannot be assigned to this part"
msgstr ""
-#: stock/serializers.py:414
+#: stock/serializers.py:480
msgid "Select stock item to install"
msgstr ""
-#: stock/serializers.py:427
-msgid "Stock item is unavailable"
-msgstr ""
-
-#: stock/serializers.py:434
-msgid "Selected part is not in the Bill of Materials"
-msgstr ""
-
-#: stock/serializers.py:471
-msgid "Destination location for uninstalled item"
-msgstr ""
-
-#: stock/serializers.py:476 stock/serializers.py:557
+#: stock/serializers.py:485 stock/serializers.py:543 stock/serializers.py:624
+#: stock/serializers.py:682
msgid "Add transaction note (optional)"
msgstr ""
-#: stock/serializers.py:510
+#: stock/serializers.py:494
+msgid "Stock item is unavailable"
+msgstr ""
+
+#: stock/serializers.py:501
+msgid "Selected part is not in the Bill of Materials"
+msgstr ""
+
+#: stock/serializers.py:538
+msgid "Destination location for uninstalled item"
+msgstr ""
+
+#: stock/serializers.py:577
msgid "Select part to convert stock item into"
msgstr ""
-#: stock/serializers.py:521
+#: stock/serializers.py:588
msgid "Selected part is not a valid option for conversion"
msgstr ""
-#: stock/serializers.py:552
+#: stock/serializers.py:619
msgid "Destination location for returned item"
msgstr ""
-#: stock/serializers.py:787
+#: stock/serializers.py:663
+msgid "Select stock items to change status"
+msgstr ""
+
+#: stock/serializers.py:670
+msgid "No stock items selected"
+msgstr ""
+
+#: stock/serializers.py:904
msgid "Part must be salable"
msgstr ""
-#: stock/serializers.py:791
+#: stock/serializers.py:908
msgid "Item is allocated to a sales order"
msgstr ""
-#: stock/serializers.py:795
+#: stock/serializers.py:912
msgid "Item is allocated to a build order"
msgstr ""
-#: stock/serializers.py:826
+#: stock/serializers.py:943
msgid "Customer to assign stock items"
msgstr ""
-#: stock/serializers.py:832
+#: stock/serializers.py:949
msgid "Selected company is not a customer"
msgstr ""
-#: stock/serializers.py:840
+#: stock/serializers.py:957
msgid "Stock assignment notes"
msgstr ""
-#: stock/serializers.py:850 stock/serializers.py:1081
+#: stock/serializers.py:967 stock/serializers.py:1198
msgid "A list of stock items must be provided"
msgstr ""
-#: stock/serializers.py:939
+#: stock/serializers.py:1056
msgid "Stock merging notes"
msgstr ""
-#: stock/serializers.py:944
+#: stock/serializers.py:1061
msgid "Allow mismatched suppliers"
msgstr ""
-#: stock/serializers.py:945
+#: stock/serializers.py:1062
msgid "Allow stock items with different supplier parts to be merged"
msgstr ""
-#: stock/serializers.py:950
+#: stock/serializers.py:1067
msgid "Allow mismatched status"
msgstr ""
-#: stock/serializers.py:951
+#: stock/serializers.py:1068
msgid "Allow stock items with different status codes to be merged"
msgstr ""
-#: stock/serializers.py:961
+#: stock/serializers.py:1078
msgid "At least two stock items must be provided"
msgstr ""
-#: stock/serializers.py:1043
+#: stock/serializers.py:1160
msgid "StockItem primary key value"
msgstr ""
-#: stock/serializers.py:1071
+#: stock/serializers.py:1188
msgid "Stock transaction notes"
msgstr ""
@@ -8034,48 +8054,48 @@ msgstr ""
msgid "Stock Tracking Information"
msgstr ""
-#: stock/templates/stock/item.html:69
+#: stock/templates/stock/item.html:63
msgid "Child Stock Items"
msgstr ""
-#: stock/templates/stock/item.html:77
+#: stock/templates/stock/item.html:71
msgid "This stock item does not have any child items"
msgstr ""
-#: stock/templates/stock/item.html:86
+#: stock/templates/stock/item.html:80
#: stock/templates/stock/stock_sidebar.html:12
msgid "Test Data"
msgstr ""
-#: stock/templates/stock/item.html:90 stock/templates/stock/item_base.html:66
+#: stock/templates/stock/item.html:84 stock/templates/stock/item_base.html:66
msgid "Test Report"
msgstr ""
-#: stock/templates/stock/item.html:94 stock/templates/stock/item.html:288
+#: stock/templates/stock/item.html:88 stock/templates/stock/item.html:278
msgid "Delete Test Data"
msgstr ""
-#: stock/templates/stock/item.html:98
+#: stock/templates/stock/item.html:92
msgid "Add Test Data"
msgstr ""
-#: stock/templates/stock/item.html:132
+#: stock/templates/stock/item.html:124
msgid "Stock Item Notes"
msgstr ""
-#: stock/templates/stock/item.html:147
+#: stock/templates/stock/item.html:139
msgid "Installed Stock Items"
msgstr ""
-#: stock/templates/stock/item.html:152 templates/js/translated/stock.js:2996
+#: stock/templates/stock/item.html:144 templates/js/translated/stock.js:3123
msgid "Install Stock Item"
msgstr ""
-#: stock/templates/stock/item.html:276
+#: stock/templates/stock/item.html:266
msgid "Delete all test results for this stock item"
msgstr ""
-#: stock/templates/stock/item.html:305 templates/js/translated/stock.js:1611
+#: stock/templates/stock/item.html:295 templates/js/translated/stock.js:1610
msgid "Add Test Result"
msgstr ""
@@ -8083,13 +8103,13 @@ msgstr ""
msgid "Locate stock item"
msgstr ""
-#: stock/templates/stock/item_base.html:52 templates/stock_table.html:21
+#: stock/templates/stock/item_base.html:52
msgid "Scan to Location"
msgstr ""
#: stock/templates/stock/item_base.html:60
#: stock/templates/stock/location.html:69
-#: templates/js/translated/filters.js:322
+#: templates/js/translated/filters.js:432
msgid "Printing actions"
msgstr ""
@@ -8098,15 +8118,17 @@ msgid "Stock adjustment actions"
msgstr ""
#: stock/templates/stock/item_base.html:80
-#: stock/templates/stock/location.html:88 templates/stock_table.html:35
+#: stock/templates/stock/location.html:88 templates/js/translated/stock.js:1735
msgid "Count stock"
msgstr ""
-#: stock/templates/stock/item_base.html:82 templates/stock_table.html:33
+#: stock/templates/stock/item_base.html:82
+#: templates/js/translated/stock.js:1717
msgid "Add stock"
msgstr ""
-#: stock/templates/stock/item_base.html:83 templates/stock_table.html:34
+#: stock/templates/stock/item_base.html:83
+#: templates/js/translated/stock.js:1726
msgid "Remove stock"
msgstr ""
@@ -8115,11 +8137,12 @@ msgid "Serialize stock"
msgstr ""
#: stock/templates/stock/item_base.html:89
-#: stock/templates/stock/location.html:94 templates/stock_table.html:36
+#: stock/templates/stock/location.html:94 templates/js/translated/stock.js:1744
msgid "Transfer stock"
msgstr ""
-#: stock/templates/stock/item_base.html:92 templates/stock_table.html:39
+#: stock/templates/stock/item_base.html:92
+#: templates/js/translated/stock.js:1798
msgid "Assign to customer"
msgstr ""
@@ -8159,6 +8182,11 @@ msgstr ""
msgid "Delete stock item"
msgstr ""
+#: stock/templates/stock/item_base.html:170 templates/InvenTree/search.html:139
+#: templates/js/translated/build.js:2046 templates/navbar.html:38
+msgid "Build"
+msgstr ""
+
#: stock/templates/stock/item_base.html:194
msgid "Parent Item"
msgstr ""
@@ -8221,7 +8249,7 @@ msgid "Available Quantity"
msgstr ""
#: stock/templates/stock/item_base.html:394
-#: templates/js/translated/build.js:2015
+#: templates/js/translated/build.js:2306
msgid "No location set"
msgstr ""
@@ -8239,7 +8267,7 @@ msgid "This StockItem expired on %(item.expiry_date)s"
msgstr ""
#: stock/templates/stock/item_base.html:433
-#: templates/js/translated/table_filters.js:381
+#: templates/js/translated/table_filters.js:387
msgid "Expired"
msgstr ""
@@ -8249,7 +8277,7 @@ msgid "This StockItem expires on %(item.expiry_date)s"
msgstr ""
#: stock/templates/stock/item_base.html:435
-#: templates/js/translated/table_filters.js:387
+#: templates/js/translated/table_filters.js:393
msgid "Stale"
msgstr ""
@@ -8258,7 +8286,7 @@ msgid "No stocktake performed"
msgstr ""
#: stock/templates/stock/item_base.html:503
-#: templates/js/translated/stock.js:1745
+#: templates/js/translated/stock.js:1865
msgid "stock item"
msgstr ""
@@ -8364,20 +8392,20 @@ msgstr ""
msgid "New Location"
msgstr "Uusi sijainti"
-#: stock/templates/stock/location.html:287
-#: templates/js/translated/stock.js:2318
+#: stock/templates/stock/location.html:278
+#: templates/js/translated/stock.js:2449
msgid "stock location"
msgstr ""
-#: stock/templates/stock/location.html:304
+#: stock/templates/stock/location.html:295
msgid "Scanned stock container into this location"
msgstr ""
-#: stock/templates/stock/location.html:377
+#: stock/templates/stock/location.html:368
msgid "Stock Location QR Code"
msgstr ""
-#: stock/templates/stock/location.html:388
+#: stock/templates/stock/location.html:379
msgid "Link Barcode to Stock Location"
msgstr ""
@@ -8451,71 +8479,71 @@ msgstr ""
msgid "Index"
msgstr ""
-#: templates/InvenTree/index.html:89
+#: templates/InvenTree/index.html:39
msgid "Subscribed Parts"
msgstr ""
-#: templates/InvenTree/index.html:102
+#: templates/InvenTree/index.html:53
msgid "Subscribed Categories"
msgstr ""
-#: templates/InvenTree/index.html:112
+#: templates/InvenTree/index.html:63
msgid "Latest Parts"
msgstr ""
-#: templates/InvenTree/index.html:126
+#: templates/InvenTree/index.html:78
msgid "BOM Waiting Validation"
msgstr ""
-#: templates/InvenTree/index.html:155
+#: templates/InvenTree/index.html:107
msgid "Recently Updated"
msgstr ""
-#: templates/InvenTree/index.html:180
+#: templates/InvenTree/index.html:134
msgid "Depleted Stock"
msgstr ""
-#: templates/InvenTree/index.html:193
+#: templates/InvenTree/index.html:148
msgid "Required for Build Orders"
msgstr ""
-#: templates/InvenTree/index.html:208
+#: templates/InvenTree/index.html:156
msgid "Expired Stock"
msgstr ""
-#: templates/InvenTree/index.html:222
+#: templates/InvenTree/index.html:172
msgid "Stale Stock"
msgstr ""
-#: templates/InvenTree/index.html:247
+#: templates/InvenTree/index.html:199
msgid "Build Orders In Progress"
msgstr ""
-#: templates/InvenTree/index.html:258
+#: templates/InvenTree/index.html:210
msgid "Overdue Build Orders"
msgstr ""
-#: templates/InvenTree/index.html:278
+#: templates/InvenTree/index.html:230
msgid "Outstanding Purchase Orders"
msgstr ""
-#: templates/InvenTree/index.html:289
+#: templates/InvenTree/index.html:241
msgid "Overdue Purchase Orders"
msgstr ""
-#: templates/InvenTree/index.html:310
+#: templates/InvenTree/index.html:262
msgid "Outstanding Sales Orders"
msgstr ""
-#: templates/InvenTree/index.html:321
+#: templates/InvenTree/index.html:273
msgid "Overdue Sales Orders"
msgstr ""
-#: templates/InvenTree/index.html:347
+#: templates/InvenTree/index.html:299
msgid "InvenTree News"
msgstr ""
-#: templates/InvenTree/index.html:349
+#: templates/InvenTree/index.html:301
msgid "Current News"
msgstr ""
@@ -8672,29 +8700,29 @@ msgstr ""
msgid "Changing the settings below require you to immediately restart the server. Do not change this while under active usage."
msgstr ""
-#: templates/InvenTree/settings/plugin.html:37
+#: templates/InvenTree/settings/plugin.html:35
#: templates/InvenTree/settings/sidebar.html:64
msgid "Plugins"
msgstr ""
-#: templates/InvenTree/settings/plugin.html:43
+#: templates/InvenTree/settings/plugin.html:41
#: templates/js/translated/plugin.js:151
msgid "Install Plugin"
msgstr ""
-#: templates/InvenTree/settings/plugin.html:51
+#: templates/InvenTree/settings/plugin.html:49
msgid "External plugins are not enabled for this InvenTree installation"
msgstr ""
-#: templates/InvenTree/settings/plugin.html:70
+#: templates/InvenTree/settings/plugin.html:64
msgid "Plugin Error Stack"
msgstr ""
-#: templates/InvenTree/settings/plugin.html:79
+#: templates/InvenTree/settings/plugin.html:73
msgid "Stage"
msgstr ""
-#: templates/InvenTree/settings/plugin.html:81
+#: templates/InvenTree/settings/plugin.html:75
#: templates/js/translated/notification.js:75
msgid "Message"
msgstr ""
@@ -8767,14 +8795,6 @@ msgstr ""
msgid "Commit Message"
msgstr ""
-#: templates/InvenTree/settings/plugin_settings.html:126
-msgid "Sign Status"
-msgstr ""
-
-#: templates/InvenTree/settings/plugin_settings.html:131
-msgid "Sign Key"
-msgstr ""
-
#: templates/InvenTree/settings/po.html:7
msgid "Purchase Order Settings"
msgstr ""
@@ -8870,12 +8890,12 @@ msgid "No category parameter templates found"
msgstr ""
#: templates/InvenTree/settings/settings_staff_js.html:212
-#: templates/js/translated/part.js:1618
+#: templates/js/translated/part.js:1617
msgid "Edit Template"
msgstr ""
#: templates/InvenTree/settings/settings_staff_js.html:213
-#: templates/js/translated/part.js:1619
+#: templates/js/translated/part.js:1618
msgid "Delete Template"
msgstr ""
@@ -8913,7 +8933,7 @@ msgid "Home Page"
msgstr ""
#: templates/InvenTree/settings/sidebar.html:15
-#: templates/js/translated/tables.js:575 templates/navbar.html:107
+#: templates/js/translated/tables.js:551 templates/navbar.html:107
#: templates/search.html:8 templates/search_form.html:6
#: templates/search_form.html:7
msgid "Search"
@@ -8990,6 +9010,7 @@ msgid "Unverified"
msgstr "Vahvistamaton"
#: templates/InvenTree/settings/user.html:80
+#: templates/js/translated/company.js:984
msgid "Primary"
msgstr "Ensisijainen"
@@ -9204,44 +9225,48 @@ msgstr "Ajantasalla"
msgid "Update Available"
msgstr "Päivitys saatavilla"
-#: templates/about.html:42
+#: templates/about.html:43
+msgid "Commit Branch"
+msgstr ""
+
+#: templates/about.html:49
msgid "InvenTree Documentation"
msgstr "InvenTree dokumentaatio"
-#: templates/about.html:47
+#: templates/about.html:54
msgid "API Version"
msgstr "API-versio"
-#: templates/about.html:52
+#: templates/about.html:59
msgid "Python Version"
msgstr "Python-versio"
-#: templates/about.html:57
+#: templates/about.html:64
msgid "Django Version"
msgstr "Django-versio"
-#: templates/about.html:62
+#: templates/about.html:69
msgid "View Code on GitHub"
msgstr ""
-#: templates/about.html:67
+#: templates/about.html:74
msgid "Credits"
msgstr ""
-#: templates/about.html:72
+#: templates/about.html:79
msgid "Mobile App"
msgstr "Mobiilisovellus"
-#: templates/about.html:77
+#: templates/about.html:84
msgid "Submit Bug Report"
msgstr ""
-#: templates/about.html:84 templates/clip.html:4
+#: templates/about.html:91 templates/clip.html:4
#: templates/js/translated/helpers.js:585
msgid "copy to clipboard"
msgstr "kopioi leikepöydälle"
-#: templates/about.html:84
+#: templates/about.html:91
msgid "copy version information"
msgstr "kopioi versiotiedot"
@@ -9435,14 +9460,6 @@ msgstr "Lisää linkki"
msgid "Add Attachment"
msgstr "Lisää liite"
-#: templates/attachment_table.html:11
-msgid "Delete selected attachments"
-msgstr "Poista valitut liitteet"
-
-#: templates/attachment_table.html:12 templates/js/translated/attachment.js:129
-msgid "Delete Attachments"
-msgstr "Poista liitteet"
-
#: templates/barcode_data.html:5
msgid "Barcode Identifier"
msgstr ""
@@ -9487,7 +9504,7 @@ msgid "The following parts are low on required stock"
msgstr ""
#: templates/email/build_order_required_stock.html:18
-#: templates/js/translated/bom.js:1633
+#: templates/js/translated/bom.js:1653 templates/js/translated/build.js:2485
msgid "Required Quantity"
msgstr ""
@@ -9501,7 +9518,7 @@ msgid "Click on the following link to view this part"
msgstr ""
#: templates/email/low_stock_notification.html:18
-#: templates/js/translated/part.js:3140
+#: templates/js/translated/part.js:3125
msgid "Minimum Quantity"
msgstr ""
@@ -9573,23 +9590,35 @@ msgstr ""
msgid "All selected attachments will be deleted"
msgstr "Kaikki liitteet poistetaan"
-#: templates/js/translated/attachment.js:255
+#: templates/js/translated/attachment.js:129
+msgid "Delete Attachments"
+msgstr "Poista liitteet"
+
+#: templates/js/translated/attachment.js:205
+msgid "Delete attachments"
+msgstr ""
+
+#: templates/js/translated/attachment.js:253
+msgid "Attachment actions"
+msgstr ""
+
+#: templates/js/translated/attachment.js:275
msgid "No attachments found"
msgstr "Liitteitä ei löytynyt"
-#: templates/js/translated/attachment.js:285
+#: templates/js/translated/attachment.js:305
msgid "Edit Attachment"
msgstr "Muokkaa liitettä"
-#: templates/js/translated/attachment.js:326
+#: templates/js/translated/attachment.js:336
msgid "Upload Date"
msgstr ""
-#: templates/js/translated/attachment.js:346
+#: templates/js/translated/attachment.js:356
msgid "Edit attachment"
msgstr "Muokkaa liitettä"
-#: templates/js/translated/attachment.js:354
+#: templates/js/translated/attachment.js:364
msgid "Delete attachment"
msgstr "Poista liite"
@@ -9646,7 +9675,7 @@ msgstr ""
msgid "Unlink"
msgstr ""
-#: templates/js/translated/barcode.js:550 templates/js/translated/stock.js:1118
+#: templates/js/translated/barcode.js:550 templates/js/translated/stock.js:1117
msgid "Remove stock item"
msgstr ""
@@ -9704,775 +9733,869 @@ msgstr ""
msgid "Barcode does not match a valid location"
msgstr ""
-#: templates/js/translated/bom.js:77
+#: templates/js/translated/bom.js:78
msgid "Create BOM Item"
msgstr ""
-#: templates/js/translated/bom.js:131
+#: templates/js/translated/bom.js:132
msgid "Display row data"
msgstr ""
-#: templates/js/translated/bom.js:187
+#: templates/js/translated/bom.js:188
msgid "Row Data"
msgstr ""
-#: templates/js/translated/bom.js:188 templates/js/translated/bom.js:699
+#: templates/js/translated/bom.js:189 templates/js/translated/bom.js:700
#: templates/js/translated/modals.js:71 templates/js/translated/modals.js:622
#: templates/js/translated/modals.js:746 templates/js/translated/modals.js:1054
-#: templates/js/translated/purchase_order.js:791 templates/modals.html:15
+#: templates/js/translated/purchase_order.js:802 templates/modals.html:15
#: templates/modals.html:27 templates/modals.html:39 templates/modals.html:50
msgid "Close"
msgstr "Sulje"
-#: templates/js/translated/bom.js:305
+#: templates/js/translated/bom.js:306
msgid "Download BOM Template"
msgstr ""
-#: templates/js/translated/bom.js:350
+#: templates/js/translated/bom.js:351
msgid "Multi Level BOM"
msgstr ""
-#: templates/js/translated/bom.js:351
+#: templates/js/translated/bom.js:352
msgid "Include BOM data for subassemblies"
msgstr ""
-#: templates/js/translated/bom.js:356
+#: templates/js/translated/bom.js:357
msgid "Levels"
msgstr ""
-#: templates/js/translated/bom.js:357
+#: templates/js/translated/bom.js:358
msgid "Select maximum number of BOM levels to export (0 = all levels)"
msgstr ""
-#: templates/js/translated/bom.js:364
+#: templates/js/translated/bom.js:365
msgid "Include Alternative Parts"
msgstr ""
-#: templates/js/translated/bom.js:365
+#: templates/js/translated/bom.js:366
msgid "Include alternative parts in exported BOM"
msgstr ""
-#: templates/js/translated/bom.js:370
+#: templates/js/translated/bom.js:371
msgid "Include Parameter Data"
msgstr ""
-#: templates/js/translated/bom.js:371
+#: templates/js/translated/bom.js:372
msgid "Include part parameter data in exported BOM"
msgstr ""
-#: templates/js/translated/bom.js:376
+#: templates/js/translated/bom.js:377
msgid "Include Stock Data"
msgstr ""
-#: templates/js/translated/bom.js:377
+#: templates/js/translated/bom.js:378
msgid "Include part stock data in exported BOM"
msgstr ""
-#: templates/js/translated/bom.js:382
+#: templates/js/translated/bom.js:383
msgid "Include Manufacturer Data"
msgstr ""
-#: templates/js/translated/bom.js:383
+#: templates/js/translated/bom.js:384
msgid "Include part manufacturer data in exported BOM"
msgstr ""
-#: templates/js/translated/bom.js:388
+#: templates/js/translated/bom.js:389
msgid "Include Supplier Data"
msgstr ""
-#: templates/js/translated/bom.js:389
+#: templates/js/translated/bom.js:390
msgid "Include part supplier data in exported BOM"
msgstr ""
-#: templates/js/translated/bom.js:394
+#: templates/js/translated/bom.js:395
msgid "Include Pricing Data"
msgstr ""
-#: templates/js/translated/bom.js:395
+#: templates/js/translated/bom.js:396
msgid "Include part pricing data in exported BOM"
msgstr ""
-#: templates/js/translated/bom.js:590
+#: templates/js/translated/bom.js:591
msgid "Remove substitute part"
msgstr ""
-#: templates/js/translated/bom.js:644
+#: templates/js/translated/bom.js:645
msgid "Select and add a new substitute part using the input below"
msgstr ""
-#: templates/js/translated/bom.js:655
+#: templates/js/translated/bom.js:656
msgid "Are you sure you wish to remove this substitute part link?"
msgstr ""
-#: templates/js/translated/bom.js:661
+#: templates/js/translated/bom.js:662
msgid "Remove Substitute Part"
msgstr ""
-#: templates/js/translated/bom.js:700
+#: templates/js/translated/bom.js:701
msgid "Add Substitute"
msgstr ""
-#: templates/js/translated/bom.js:701
+#: templates/js/translated/bom.js:702
msgid "Edit BOM Item Substitutes"
msgstr ""
-#: templates/js/translated/bom.js:763
+#: templates/js/translated/bom.js:764
msgid "All selected BOM items will be deleted"
msgstr ""
-#: templates/js/translated/bom.js:779
+#: templates/js/translated/bom.js:780
msgid "Delete selected BOM items?"
msgstr ""
-#: templates/js/translated/bom.js:906
+#: templates/js/translated/bom.js:826
+msgid "Delete items"
+msgstr ""
+
+#: templates/js/translated/bom.js:924
msgid "Load BOM for subassembly"
msgstr ""
-#: templates/js/translated/bom.js:916
+#: templates/js/translated/bom.js:934
msgid "Substitutes Available"
msgstr ""
-#: templates/js/translated/bom.js:920 templates/js/translated/build.js:2090
+#: templates/js/translated/bom.js:938 templates/js/translated/build.js:2429
msgid "Variant stock allowed"
msgstr ""
-#: templates/js/translated/bom.js:984
+#: templates/js/translated/bom.js:1002
msgid "Substitutes"
msgstr ""
-#: templates/js/translated/bom.js:1104
+#: templates/js/translated/bom.js:1122
msgid "BOM pricing is complete"
msgstr ""
-#: templates/js/translated/bom.js:1109
+#: templates/js/translated/bom.js:1127
msgid "BOM pricing is incomplete"
msgstr ""
-#: templates/js/translated/bom.js:1116
+#: templates/js/translated/bom.js:1134
msgid "No pricing available"
msgstr ""
-#: templates/js/translated/bom.js:1147 templates/js/translated/build.js:2173
-#: templates/js/translated/sales_order.js:1887
+#: templates/js/translated/bom.js:1165 templates/js/translated/build.js:2523
+#: templates/js/translated/sales_order.js:1899
msgid "No Stock Available"
msgstr ""
-#: templates/js/translated/bom.js:1152 templates/js/translated/build.js:2177
+#: templates/js/translated/bom.js:1170 templates/js/translated/build.js:2527
msgid "Includes variant and substitute stock"
msgstr ""
-#: templates/js/translated/bom.js:1154 templates/js/translated/build.js:2179
-#: templates/js/translated/part.js:1230
+#: templates/js/translated/bom.js:1172 templates/js/translated/build.js:2529
+#: templates/js/translated/part.js:1229
msgid "Includes variant stock"
msgstr ""
-#: templates/js/translated/bom.js:1156 templates/js/translated/build.js:2181
+#: templates/js/translated/bom.js:1174 templates/js/translated/build.js:2531
msgid "Includes substitute stock"
msgstr ""
-#: templates/js/translated/bom.js:1184 templates/js/translated/build.js:2164
-#: templates/js/translated/build.js:2255
+#: templates/js/translated/bom.js:1204 templates/js/translated/build.js:2514
msgid "Consumable item"
msgstr ""
-#: templates/js/translated/bom.js:1244
+#: templates/js/translated/bom.js:1264
msgid "Validate BOM Item"
msgstr ""
-#: templates/js/translated/bom.js:1246
+#: templates/js/translated/bom.js:1266
msgid "This line has been validated"
msgstr ""
-#: templates/js/translated/bom.js:1248
+#: templates/js/translated/bom.js:1268
msgid "Edit substitute parts"
msgstr ""
-#: templates/js/translated/bom.js:1250 templates/js/translated/bom.js:1445
+#: templates/js/translated/bom.js:1270 templates/js/translated/bom.js:1465
msgid "Edit BOM Item"
msgstr ""
-#: templates/js/translated/bom.js:1252
+#: templates/js/translated/bom.js:1272
msgid "Delete BOM Item"
msgstr ""
-#: templates/js/translated/bom.js:1272
+#: templates/js/translated/bom.js:1292
msgid "View BOM"
msgstr ""
-#: templates/js/translated/bom.js:1356 templates/js/translated/build.js:1927
+#: templates/js/translated/bom.js:1376
msgid "No BOM items found"
msgstr ""
-#: templates/js/translated/bom.js:1616 templates/js/translated/build.js:2073
+#: templates/js/translated/bom.js:1636 templates/js/translated/build.js:2414
msgid "Required Part"
msgstr ""
-#: templates/js/translated/bom.js:1642
+#: templates/js/translated/bom.js:1662
msgid "Inherited from parent BOM"
msgstr ""
-#: templates/js/translated/build.js:126
+#: templates/js/translated/build.js:136
msgid "Edit Build Order"
msgstr ""
-#: templates/js/translated/build.js:169
+#: templates/js/translated/build.js:179
msgid "Create Build Order"
msgstr ""
-#: templates/js/translated/build.js:202
+#: templates/js/translated/build.js:211
msgid "Cancel Build Order"
msgstr ""
-#: templates/js/translated/build.js:211
+#: templates/js/translated/build.js:220
msgid "Are you sure you wish to cancel this build?"
msgstr ""
-#: templates/js/translated/build.js:217
+#: templates/js/translated/build.js:226
msgid "Stock items have been allocated to this build order"
msgstr ""
-#: templates/js/translated/build.js:224
+#: templates/js/translated/build.js:233
msgid "There are incomplete outputs remaining for this build order"
msgstr ""
-#: templates/js/translated/build.js:276
+#: templates/js/translated/build.js:285
msgid "Build order is ready to be completed"
msgstr ""
-#: templates/js/translated/build.js:284
+#: templates/js/translated/build.js:293
msgid "This build order cannot be completed as there are incomplete outputs"
msgstr ""
-#: templates/js/translated/build.js:289
+#: templates/js/translated/build.js:298
msgid "Build Order is incomplete"
msgstr ""
-#: templates/js/translated/build.js:307
+#: templates/js/translated/build.js:316
msgid "Complete Build Order"
msgstr ""
-#: templates/js/translated/build.js:348 templates/js/translated/stock.js:119
-#: templates/js/translated/stock.js:265
+#: templates/js/translated/build.js:357 templates/js/translated/stock.js:118
+#: templates/js/translated/stock.js:264
msgid "Next available serial number"
msgstr ""
-#: templates/js/translated/build.js:350 templates/js/translated/stock.js:121
-#: templates/js/translated/stock.js:267
+#: templates/js/translated/build.js:359 templates/js/translated/stock.js:120
+#: templates/js/translated/stock.js:266
msgid "Latest serial number"
msgstr ""
-#: templates/js/translated/build.js:359
+#: templates/js/translated/build.js:368
msgid "The Bill of Materials contains trackable parts"
msgstr ""
-#: templates/js/translated/build.js:360
+#: templates/js/translated/build.js:369
msgid "Build outputs must be generated individually"
msgstr ""
-#: templates/js/translated/build.js:368
+#: templates/js/translated/build.js:377
msgid "Trackable parts can have serial numbers specified"
msgstr ""
-#: templates/js/translated/build.js:369
+#: templates/js/translated/build.js:378
msgid "Enter serial numbers to generate multiple single build outputs"
msgstr ""
-#: templates/js/translated/build.js:376
+#: templates/js/translated/build.js:385
msgid "Create Build Output"
msgstr ""
-#: templates/js/translated/build.js:407
+#: templates/js/translated/build.js:416
msgid "Allocate stock items to this build output"
msgstr ""
-#: templates/js/translated/build.js:418
-msgid "Unallocate stock from build output"
+#: templates/js/translated/build.js:424
+msgid "Deallocate stock from build output"
msgstr ""
-#: templates/js/translated/build.js:427
+#: templates/js/translated/build.js:433
msgid "Complete build output"
msgstr ""
-#: templates/js/translated/build.js:435
+#: templates/js/translated/build.js:441
msgid "Scrap build output"
msgstr ""
-#: templates/js/translated/build.js:442
+#: templates/js/translated/build.js:448
msgid "Delete build output"
msgstr ""
-#: templates/js/translated/build.js:462
-msgid "Are you sure you wish to unallocate stock items from this build?"
+#: templates/js/translated/build.js:468
+msgid "Are you sure you wish to deallocate the selected stock items from this build?"
msgstr ""
-#: templates/js/translated/build.js:480
-msgid "Unallocate Stock Items"
+#: templates/js/translated/build.js:486
+msgid "Deallocate Stock Items"
msgstr ""
-#: templates/js/translated/build.js:566 templates/js/translated/build.js:690
-#: templates/js/translated/build.js:812
+#: templates/js/translated/build.js:572 templates/js/translated/build.js:696
+#: templates/js/translated/build.js:818
msgid "Select Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:567 templates/js/translated/build.js:691
-#: templates/js/translated/build.js:813
+#: templates/js/translated/build.js:573 templates/js/translated/build.js:697
+#: templates/js/translated/build.js:819
msgid "At least one build output must be selected"
msgstr ""
-#: templates/js/translated/build.js:581
+#: templates/js/translated/build.js:587
msgid "Selected build outputs will be marked as complete"
msgstr ""
-#: templates/js/translated/build.js:585 templates/js/translated/build.js:715
-#: templates/js/translated/build.js:835
+#: templates/js/translated/build.js:591 templates/js/translated/build.js:721
+#: templates/js/translated/build.js:841
msgid "Output"
msgstr ""
-#: templates/js/translated/build.js:609
+#: templates/js/translated/build.js:615
msgid "Complete Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:706
+#: templates/js/translated/build.js:712
msgid "Selected build outputs will be marked as scrapped"
msgstr ""
-#: templates/js/translated/build.js:708
+#: templates/js/translated/build.js:714
msgid "Scrapped output are marked as rejected"
msgstr ""
-#: templates/js/translated/build.js:709
+#: templates/js/translated/build.js:715
msgid "Allocated stock items will no longer be available"
msgstr ""
-#: templates/js/translated/build.js:710
+#: templates/js/translated/build.js:716
msgid "The completion status of the build order will not be adjusted"
msgstr ""
-#: templates/js/translated/build.js:737
+#: templates/js/translated/build.js:743
msgid "Scrap Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:827
+#: templates/js/translated/build.js:833
msgid "Selected build outputs will be deleted"
msgstr ""
-#: templates/js/translated/build.js:829
+#: templates/js/translated/build.js:835
msgid "Build output data will be permanently deleted"
msgstr ""
-#: templates/js/translated/build.js:830
+#: templates/js/translated/build.js:836
msgid "Allocated stock items will be returned to stock"
msgstr ""
-#: templates/js/translated/build.js:848
+#: templates/js/translated/build.js:854
msgid "Delete Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:934
+#: templates/js/translated/build.js:941
msgid "No build order allocations found"
msgstr ""
-#: templates/js/translated/build.js:971
+#: templates/js/translated/build.js:970 templates/js/translated/build.js:2270
+msgid "Allocated Quantity"
+msgstr ""
+
+#: templates/js/translated/build.js:984
msgid "Location not specified"
msgstr ""
-#: templates/js/translated/build.js:1047
+#: templates/js/translated/build.js:1006
+msgid "Complete outputs"
+msgstr ""
+
+#: templates/js/translated/build.js:1024
+msgid "Scrap outputs"
+msgstr ""
+
+#: templates/js/translated/build.js:1042
+msgid "Delete outputs"
+msgstr ""
+
+#: templates/js/translated/build.js:1100
msgid "build output"
msgstr ""
-#: templates/js/translated/build.js:1048
+#: templates/js/translated/build.js:1101
msgid "build outputs"
msgstr ""
-#: templates/js/translated/build.js:1383
+#: templates/js/translated/build.js:1105
+msgid "Build output actions"
+msgstr ""
+
+#: templates/js/translated/build.js:1274
msgid "No active build outputs found"
msgstr ""
-#: templates/js/translated/build.js:1457
-msgid "Allocated Stock"
+#: templates/js/translated/build.js:1329
+msgid "Allocated Lines"
msgstr ""
-#: templates/js/translated/build.js:1464
-msgid "No tracked BOM items for this build"
+#: templates/js/translated/build.js:1343
+msgid "Required Tests"
msgstr ""
-#: templates/js/translated/build.js:1486
-msgid "Completed Tests"
-msgstr ""
-
-#: templates/js/translated/build.js:1491
-msgid "No required tests for this build"
-msgstr ""
-
-#: templates/js/translated/build.js:2032 templates/js/translated/build.js:3056
-#: templates/js/translated/sales_order.js:1632
-msgid "Edit stock allocation"
-msgstr ""
-
-#: templates/js/translated/build.js:2034 templates/js/translated/build.js:3057
-#: templates/js/translated/sales_order.js:1633
-msgid "Delete stock allocation"
-msgstr ""
-
-#: templates/js/translated/build.js:2050
-msgid "Edit Allocation"
-msgstr ""
-
-#: templates/js/translated/build.js:2060
-msgid "Remove Allocation"
-msgstr ""
-
-#: templates/js/translated/build.js:2086
-msgid "Substitute parts available"
-msgstr ""
-
-#: templates/js/translated/build.js:2122
-msgid "Quantity Per"
-msgstr ""
-
-#: templates/js/translated/build.js:2167
-#: templates/js/translated/sales_order.js:1894
-msgid "Insufficient stock available"
-msgstr ""
-
-#: templates/js/translated/build.js:2169
-#: templates/js/translated/sales_order.js:1892
-msgid "Sufficient stock available"
-msgstr ""
-
-#: templates/js/translated/build.js:2263
-#: templates/js/translated/sales_order.js:1993
-msgid "Build stock"
-msgstr ""
-
-#: templates/js/translated/build.js:2267 templates/stock_table.html:38
-msgid "Order stock"
-msgstr ""
-
-#: templates/js/translated/build.js:2270
-#: templates/js/translated/sales_order.js:1987
-msgid "Allocate stock"
-msgstr ""
-
-#: templates/js/translated/build.js:2310
-#: templates/js/translated/purchase_order.js:616
-#: templates/js/translated/sales_order.js:1159
+#: templates/js/translated/build.js:1502
+#: templates/js/translated/purchase_order.js:627
+#: templates/js/translated/sales_order.js:1171
msgid "Select Parts"
msgstr ""
-#: templates/js/translated/build.js:2311
-#: templates/js/translated/sales_order.js:1160
+#: templates/js/translated/build.js:1503
+#: templates/js/translated/sales_order.js:1172
msgid "You must select at least one part to allocate"
msgstr ""
-#: templates/js/translated/build.js:2359
-#: templates/js/translated/sales_order.js:1109
+#: templates/js/translated/build.js:1566
+#: templates/js/translated/sales_order.js:1121
msgid "Specify stock allocation quantity"
msgstr ""
-#: templates/js/translated/build.js:2438
+#: templates/js/translated/build.js:1643
msgid "All Parts Allocated"
msgstr ""
-#: templates/js/translated/build.js:2439
+#: templates/js/translated/build.js:1644
msgid "All selected parts have been fully allocated"
msgstr ""
-#: templates/js/translated/build.js:2453
-#: templates/js/translated/sales_order.js:1174
+#: templates/js/translated/build.js:1658
+#: templates/js/translated/sales_order.js:1186
msgid "Select source location (leave blank to take from all locations)"
msgstr ""
-#: templates/js/translated/build.js:2481
+#: templates/js/translated/build.js:1686
msgid "Allocate Stock Items to Build Order"
msgstr ""
-#: templates/js/translated/build.js:2492
-#: templates/js/translated/sales_order.js:1271
+#: templates/js/translated/build.js:1697
+#: templates/js/translated/sales_order.js:1283
msgid "No matching stock locations"
msgstr ""
-#: templates/js/translated/build.js:2565
-#: templates/js/translated/sales_order.js:1348
+#: templates/js/translated/build.js:1770
+#: templates/js/translated/sales_order.js:1360
msgid "No matching stock items"
msgstr ""
-#: templates/js/translated/build.js:2662
+#: templates/js/translated/build.js:1867
msgid "Automatic Stock Allocation"
msgstr ""
-#: templates/js/translated/build.js:2663
+#: templates/js/translated/build.js:1868
msgid "Stock items will be automatically allocated to this build order, according to the provided guidelines"
msgstr ""
-#: templates/js/translated/build.js:2665
+#: templates/js/translated/build.js:1870
msgid "If a location is specified, stock will only be allocated from that location"
msgstr ""
-#: templates/js/translated/build.js:2666
+#: templates/js/translated/build.js:1871
msgid "If stock is considered interchangeable, it will be allocated from the first location it is found"
msgstr ""
-#: templates/js/translated/build.js:2667
+#: templates/js/translated/build.js:1872
msgid "If substitute stock is allowed, it will be used where stock of the primary part cannot be found"
msgstr ""
-#: templates/js/translated/build.js:2694
+#: templates/js/translated/build.js:1899
msgid "Allocate Stock Items"
msgstr ""
-#: templates/js/translated/build.js:2800
+#: templates/js/translated/build.js:2005
msgid "No builds matching query"
msgstr ""
-#: templates/js/translated/build.js:2835 templates/js/translated/part.js:2208
-#: templates/js/translated/part.js:2692 templates/js/translated/stock.js:1759
-#: templates/js/translated/stock.js:2458
+#: templates/js/translated/build.js:2040 templates/js/translated/build.js:2408
+#: templates/js/translated/part.js:2284 templates/js/translated/part.js:2677
+#: templates/js/translated/stock.js:1899 templates/js/translated/stock.js:2589
msgid "Select"
msgstr "Valitse"
-#: templates/js/translated/build.js:2849
+#: templates/js/translated/build.js:2054
msgid "Build order is overdue"
msgstr ""
-#: templates/js/translated/build.js:2883
+#: templates/js/translated/build.js:2100
msgid "Progress"
msgstr "Edistyminen"
-#: templates/js/translated/build.js:2919 templates/js/translated/stock.js:2779
+#: templates/js/translated/build.js:2136 templates/js/translated/stock.js:2910
msgid "No user information"
msgstr ""
-#: templates/js/translated/build.js:2934
+#: templates/js/translated/build.js:2151
msgid "group"
msgstr ""
-#: templates/js/translated/build.js:3033
-msgid "No parts allocated for"
+#: templates/js/translated/build.js:2315
+#: templates/js/translated/sales_order.js:1644
+msgid "Edit stock allocation"
msgstr ""
-#: templates/js/translated/company.js:87
+#: templates/js/translated/build.js:2316
+#: templates/js/translated/sales_order.js:1645
+msgid "Delete stock allocation"
+msgstr ""
+
+#: templates/js/translated/build.js:2331
+msgid "Edit Allocation"
+msgstr ""
+
+#: templates/js/translated/build.js:2343
+msgid "Remove Allocation"
+msgstr ""
+
+#: templates/js/translated/build.js:2384
+msgid "build line"
+msgstr ""
+
+#: templates/js/translated/build.js:2385
+msgid "build lines"
+msgstr ""
+
+#: templates/js/translated/build.js:2403
+msgid "No build lines found"
+msgstr ""
+
+#: templates/js/translated/build.js:2433 templates/js/translated/part.js:767
+#: templates/js/translated/part.js:1175
+msgid "Trackable part"
+msgstr ""
+
+#: templates/js/translated/build.js:2468
+msgid "Unit Quantity"
+msgstr ""
+
+#: templates/js/translated/build.js:2517
+#: templates/js/translated/sales_order.js:1906
+msgid "Insufficient stock available"
+msgstr ""
+
+#: templates/js/translated/build.js:2519
+#: templates/js/translated/sales_order.js:1904
+msgid "Sufficient stock available"
+msgstr ""
+
+#: templates/js/translated/build.js:2566
+msgid "Consumable Item"
+msgstr ""
+
+#: templates/js/translated/build.js:2571
+msgid "Tracked item"
+msgstr ""
+
+#: templates/js/translated/build.js:2578
+#: templates/js/translated/sales_order.js:2005
+msgid "Build stock"
+msgstr ""
+
+#: templates/js/translated/build.js:2583 templates/js/translated/stock.js:1779
+msgid "Order stock"
+msgstr ""
+
+#: templates/js/translated/build.js:2587
+#: templates/js/translated/sales_order.js:1999
+msgid "Allocate stock"
+msgstr ""
+
+#: templates/js/translated/build.js:2591
+msgid "Remove stock allocation"
+msgstr ""
+
+#: templates/js/translated/company.js:97
msgid "Add Manufacturer"
msgstr "Lisää valmistaja"
-#: templates/js/translated/company.js:100
-#: templates/js/translated/company.js:202
+#: templates/js/translated/company.js:110
+#: templates/js/translated/company.js:212
msgid "Add Manufacturer Part"
msgstr ""
-#: templates/js/translated/company.js:121
+#: templates/js/translated/company.js:131
msgid "Edit Manufacturer Part"
msgstr ""
-#: templates/js/translated/company.js:190
-#: templates/js/translated/purchase_order.js:94
+#: templates/js/translated/company.js:200
+#: templates/js/translated/purchase_order.js:93
msgid "Add Supplier"
msgstr "Lisää toimittaja"
-#: templates/js/translated/company.js:232
-#: templates/js/translated/purchase_order.js:338
+#: templates/js/translated/company.js:242
+#: templates/js/translated/purchase_order.js:349
msgid "Add Supplier Part"
msgstr ""
-#: templates/js/translated/company.js:333
+#: templates/js/translated/company.js:343
msgid "All selected supplier parts will be deleted"
msgstr ""
-#: templates/js/translated/company.js:349
+#: templates/js/translated/company.js:359
msgid "Delete Supplier Parts"
msgstr ""
-#: templates/js/translated/company.js:457
+#: templates/js/translated/company.js:464
msgid "Add new Company"
msgstr "Lisää uusi yritys"
-#: templates/js/translated/company.js:528
+#: templates/js/translated/company.js:535
msgid "Parts Supplied"
msgstr ""
-#: templates/js/translated/company.js:537
+#: templates/js/translated/company.js:544
msgid "Parts Manufactured"
msgstr ""
-#: templates/js/translated/company.js:552
+#: templates/js/translated/company.js:559
msgid "No company information found"
msgstr ""
-#: templates/js/translated/company.js:601
+#: templates/js/translated/company.js:608
msgid "Create New Contact"
msgstr "Luo uusi yhteystieto"
-#: templates/js/translated/company.js:617
-#: templates/js/translated/company.js:740
+#: templates/js/translated/company.js:624
+#: templates/js/translated/company.js:747
msgid "Edit Contact"
msgstr "Muokkaa yhteystietoa"
-#: templates/js/translated/company.js:654
+#: templates/js/translated/company.js:661
msgid "All selected contacts will be deleted"
msgstr ""
-#: templates/js/translated/company.js:660
-#: templates/js/translated/company.js:724
+#: templates/js/translated/company.js:667
+#: templates/js/translated/company.js:731
msgid "Role"
msgstr ""
-#: templates/js/translated/company.js:668
+#: templates/js/translated/company.js:675
msgid "Delete Contacts"
msgstr "Poista yhteystiedot"
-#: templates/js/translated/company.js:699
+#: templates/js/translated/company.js:706
msgid "No contacts found"
msgstr "Yhteystietoja ei löytynyt"
-#: templates/js/translated/company.js:712
+#: templates/js/translated/company.js:719
msgid "Phone Number"
msgstr "Puhelinnumero"
-#: templates/js/translated/company.js:718
+#: templates/js/translated/company.js:725
msgid "Email Address"
msgstr "Sähköposti"
-#: templates/js/translated/company.js:744
+#: templates/js/translated/company.js:751
msgid "Delete Contact"
msgstr "Poista yhteystieto"
-#: templates/js/translated/company.js:818
+#: templates/js/translated/company.js:886
+msgid "Create New Address"
+msgstr ""
+
+#: templates/js/translated/company.js:901
+#: templates/js/translated/company.js:1066
+msgid "Edit Address"
+msgstr ""
+
+#: templates/js/translated/company.js:936
+msgid "All selected addresses will be deleted"
+msgstr ""
+
+#: templates/js/translated/company.js:950
+msgid "Delete Addresses"
+msgstr ""
+
+#: templates/js/translated/company.js:977
+msgid "No addresses found"
+msgstr ""
+
+#: templates/js/translated/company.js:1020
+msgid "Postal city"
+msgstr ""
+
+#: templates/js/translated/company.js:1026
+msgid "State/province"
+msgstr ""
+
+#: templates/js/translated/company.js:1038
+msgid "Courier notes"
+msgstr ""
+
+#: templates/js/translated/company.js:1044
+msgid "Internal notes"
+msgstr ""
+
+#: templates/js/translated/company.js:1070
+msgid "Delete Address"
+msgstr ""
+
+#: templates/js/translated/company.js:1143
msgid "All selected manufacturer parts will be deleted"
msgstr ""
-#: templates/js/translated/company.js:833
+#: templates/js/translated/company.js:1158
msgid "Delete Manufacturer Parts"
msgstr ""
-#: templates/js/translated/company.js:867
+#: templates/js/translated/company.js:1192
msgid "All selected parameters will be deleted"
msgstr ""
-#: templates/js/translated/company.js:881
+#: templates/js/translated/company.js:1206
msgid "Delete Parameters"
msgstr ""
-#: templates/js/translated/company.js:917
+#: templates/js/translated/company.js:1222
+#: templates/js/translated/company.js:1510 templates/js/translated/part.js:2213
+msgid "Order parts"
+msgstr ""
+
+#: templates/js/translated/company.js:1239
+msgid "Delete manufacturer parts"
+msgstr ""
+
+#: templates/js/translated/company.js:1271
+msgid "Manufacturer part actions"
+msgstr ""
+
+#: templates/js/translated/company.js:1290
msgid "No manufacturer parts found"
msgstr ""
-#: templates/js/translated/company.js:937
-#: templates/js/translated/company.js:1177 templates/js/translated/part.js:776
-#: templates/js/translated/part.js:1184
+#: templates/js/translated/company.js:1310
+#: templates/js/translated/company.js:1598 templates/js/translated/part.js:775
+#: templates/js/translated/part.js:1183
msgid "Template part"
msgstr ""
-#: templates/js/translated/company.js:941
-#: templates/js/translated/company.js:1181 templates/js/translated/part.js:780
-#: templates/js/translated/part.js:1188
+#: templates/js/translated/company.js:1314
+#: templates/js/translated/company.js:1602 templates/js/translated/part.js:779
+#: templates/js/translated/part.js:1187
msgid "Assembled part"
msgstr ""
-#: templates/js/translated/company.js:1061 templates/js/translated/part.js:1437
+#: templates/js/translated/company.js:1434 templates/js/translated/part.js:1436
msgid "No parameters found"
msgstr ""
-#: templates/js/translated/company.js:1096 templates/js/translated/part.js:1500
+#: templates/js/translated/company.js:1469 templates/js/translated/part.js:1499
msgid "Edit parameter"
msgstr ""
-#: templates/js/translated/company.js:1097 templates/js/translated/part.js:1501
+#: templates/js/translated/company.js:1470 templates/js/translated/part.js:1500
msgid "Delete parameter"
msgstr ""
-#: templates/js/translated/company.js:1114 templates/js/translated/part.js:1407
+#: templates/js/translated/company.js:1487 templates/js/translated/part.js:1406
msgid "Edit Parameter"
msgstr ""
-#: templates/js/translated/company.js:1123 templates/js/translated/part.js:1522
+#: templates/js/translated/company.js:1496 templates/js/translated/part.js:1521
msgid "Delete Parameter"
msgstr ""
-#: templates/js/translated/company.js:1156
+#: templates/js/translated/company.js:1527
+msgid "Delete supplier parts"
+msgstr ""
+
+#: templates/js/translated/company.js:1577
msgid "No supplier parts found"
msgstr ""
-#: templates/js/translated/company.js:1274
+#: templates/js/translated/company.js:1695
msgid "Base Units"
msgstr ""
-#: templates/js/translated/company.js:1304
+#: templates/js/translated/company.js:1725
msgid "Availability"
msgstr ""
-#: templates/js/translated/company.js:1335
+#: templates/js/translated/company.js:1756
msgid "Edit supplier part"
msgstr ""
-#: templates/js/translated/company.js:1336
+#: templates/js/translated/company.js:1757
msgid "Delete supplier part"
msgstr ""
-#: templates/js/translated/company.js:1389
+#: templates/js/translated/company.js:1810
#: templates/js/translated/pricing.js:694
msgid "Delete Price Break"
msgstr ""
-#: templates/js/translated/company.js:1399
+#: templates/js/translated/company.js:1820
#: templates/js/translated/pricing.js:712
msgid "Edit Price Break"
msgstr ""
-#: templates/js/translated/company.js:1414
+#: templates/js/translated/company.js:1835
msgid "No price break information found"
msgstr ""
-#: templates/js/translated/company.js:1443
+#: templates/js/translated/company.js:1864
msgid "Last updated"
msgstr "Päivitetty viimeksi"
-#: templates/js/translated/company.js:1450
+#: templates/js/translated/company.js:1871
msgid "Edit price break"
msgstr ""
-#: templates/js/translated/company.js:1451
+#: templates/js/translated/company.js:1872
msgid "Delete price break"
msgstr ""
-#: templates/js/translated/filters.js:186
-#: templates/js/translated/filters.js:550
+#: templates/js/translated/filters.js:187
+#: templates/js/translated/filters.js:673
msgid "true"
msgstr "tosi"
-#: templates/js/translated/filters.js:190
-#: templates/js/translated/filters.js:551
+#: templates/js/translated/filters.js:191
+#: templates/js/translated/filters.js:674
msgid "false"
msgstr "epätosi"
-#: templates/js/translated/filters.js:214
+#: templates/js/translated/filters.js:215
msgid "Select filter"
msgstr "Valitse suodatin"
-#: templates/js/translated/filters.js:328
+#: templates/js/translated/filters.js:438
msgid "Print Labels"
msgstr ""
-#: templates/js/translated/filters.js:332
+#: templates/js/translated/filters.js:442
msgid "Print Reports"
msgstr "Tulosta raportteja"
-#: templates/js/translated/filters.js:344
+#: templates/js/translated/filters.js:454
msgid "Download table data"
msgstr ""
-#: templates/js/translated/filters.js:351
+#: templates/js/translated/filters.js:461
msgid "Reload table data"
msgstr ""
-#: templates/js/translated/filters.js:360
+#: templates/js/translated/filters.js:470
msgid "Add new filter"
msgstr ""
-#: templates/js/translated/filters.js:368
+#: templates/js/translated/filters.js:478
msgid "Clear all filters"
msgstr ""
-#: templates/js/translated/filters.js:460
+#: templates/js/translated/filters.js:583
msgid "Create filter"
msgstr "Luo suodatin"
@@ -10497,6 +10620,12 @@ msgstr ""
msgid "View operation not allowed"
msgstr ""
+#: templates/js/translated/forms.js:506 templates/js/translated/helpers.js:105
+#: templates/js/translated/part.js:369 templates/js/translated/pricing.js:629
+#: templates/js/translated/stock.js:215 users/models.py:253
+msgid "Delete"
+msgstr "Poista"
+
#: templates/js/translated/forms.js:752
msgid "Keep this form open"
msgstr ""
@@ -10514,23 +10643,23 @@ msgstr ""
msgid "No results found"
msgstr ""
-#: templates/js/translated/forms.js:2071 templates/js/translated/search.js:281
+#: templates/js/translated/forms.js:2071 templates/js/translated/search.js:239
msgid "Searching"
msgstr ""
-#: templates/js/translated/forms.js:2276
+#: templates/js/translated/forms.js:2285
msgid "Clear input"
msgstr ""
-#: templates/js/translated/forms.js:2733
+#: templates/js/translated/forms.js:2742
msgid "File Column"
msgstr ""
-#: templates/js/translated/forms.js:2733
+#: templates/js/translated/forms.js:2742
msgid "Field Name"
msgstr ""
-#: templates/js/translated/forms.js:2745
+#: templates/js/translated/forms.js:2754
msgid "Select Columns"
msgstr ""
@@ -10550,6 +10679,14 @@ msgstr "Tosi"
msgid "False"
msgstr "Epätosi"
+#: templates/js/translated/index.js:99
+msgid "No parts required for builds"
+msgstr ""
+
+#: templates/js/translated/index.js:125
+msgid "Allocated Stock"
+msgstr ""
+
#: templates/js/translated/label.js:58
msgid "Select Printer"
msgstr "Valitse tulostin"
@@ -10651,7 +10788,7 @@ msgstr ""
#: templates/js/translated/news.js:38
#: templates/js/translated/notification.js:45
-#: templates/js/translated/part.js:1577
+#: templates/js/translated/part.js:1576
msgid "ID"
msgstr ""
@@ -10700,7 +10837,7 @@ msgid "Delete Line"
msgstr ""
#: templates/js/translated/order.js:281
-#: templates/js/translated/purchase_order.js:1958
+#: templates/js/translated/purchase_order.js:1968
msgid "No line items found"
msgstr ""
@@ -10716,363 +10853,355 @@ msgstr ""
msgid "Delete line"
msgstr ""
-#: templates/js/translated/part.js:91
+#: templates/js/translated/part.js:90
msgid "Part Attributes"
msgstr ""
-#: templates/js/translated/part.js:95
+#: templates/js/translated/part.js:94
msgid "Part Creation Options"
msgstr ""
-#: templates/js/translated/part.js:99
+#: templates/js/translated/part.js:98
msgid "Part Duplication Options"
msgstr ""
-#: templates/js/translated/part.js:122
+#: templates/js/translated/part.js:121
msgid "Add Part Category"
msgstr ""
-#: templates/js/translated/part.js:294
+#: templates/js/translated/part.js:293
msgid "Parent part category"
msgstr ""
-#: templates/js/translated/part.js:310 templates/js/translated/stock.js:147
+#: templates/js/translated/part.js:309 templates/js/translated/stock.js:146
msgid "Icon (optional) - Explore all available icons on"
msgstr ""
-#: templates/js/translated/part.js:330
+#: templates/js/translated/part.js:329
msgid "Create Part Category"
msgstr ""
-#: templates/js/translated/part.js:333
+#: templates/js/translated/part.js:332
msgid "Create new category after this one"
msgstr ""
-#: templates/js/translated/part.js:334
+#: templates/js/translated/part.js:333
msgid "Part category created"
msgstr ""
-#: templates/js/translated/part.js:348
+#: templates/js/translated/part.js:347
msgid "Edit Part Category"
msgstr ""
-#: templates/js/translated/part.js:361
+#: templates/js/translated/part.js:360
msgid "Are you sure you want to delete this part category?"
msgstr ""
-#: templates/js/translated/part.js:366
+#: templates/js/translated/part.js:365
msgid "Move to parent category"
msgstr ""
-#: templates/js/translated/part.js:375
+#: templates/js/translated/part.js:374
msgid "Delete Part Category"
msgstr ""
-#: templates/js/translated/part.js:379
+#: templates/js/translated/part.js:378
msgid "Action for parts in this category"
msgstr ""
-#: templates/js/translated/part.js:384
+#: templates/js/translated/part.js:383
msgid "Action for child categories"
msgstr ""
-#: templates/js/translated/part.js:408
+#: templates/js/translated/part.js:407
msgid "Create Part"
msgstr "Luo osa"
-#: templates/js/translated/part.js:410
+#: templates/js/translated/part.js:409
msgid "Create another part after this one"
msgstr "Luo toinen osa tämän jälkeen"
-#: templates/js/translated/part.js:411
+#: templates/js/translated/part.js:410
msgid "Part created successfully"
msgstr "Osan luonti onnistui"
-#: templates/js/translated/part.js:439
+#: templates/js/translated/part.js:438
msgid "Edit Part"
msgstr "Muokkaa osaa"
-#: templates/js/translated/part.js:441
+#: templates/js/translated/part.js:440
msgid "Part edited"
msgstr ""
-#: templates/js/translated/part.js:452
+#: templates/js/translated/part.js:451
msgid "Create Part Variant"
msgstr ""
-#: templates/js/translated/part.js:509
+#: templates/js/translated/part.js:508
msgid "Active Part"
msgstr ""
-#: templates/js/translated/part.js:510
+#: templates/js/translated/part.js:509
msgid "Part cannot be deleted as it is currently active"
msgstr ""
-#: templates/js/translated/part.js:524
+#: templates/js/translated/part.js:523
msgid "Deleting this part cannot be reversed"
msgstr ""
-#: templates/js/translated/part.js:526
+#: templates/js/translated/part.js:525
msgid "Any stock items for this part will be deleted"
msgstr ""
-#: templates/js/translated/part.js:527
+#: templates/js/translated/part.js:526
msgid "This part will be removed from any Bills of Material"
msgstr ""
-#: templates/js/translated/part.js:528
+#: templates/js/translated/part.js:527
msgid "All manufacturer and supplier information for this part will be deleted"
msgstr ""
-#: templates/js/translated/part.js:535
+#: templates/js/translated/part.js:534
msgid "Delete Part"
msgstr "Poista osa"
-#: templates/js/translated/part.js:571
+#: templates/js/translated/part.js:570
msgid "You are subscribed to notifications for this item"
msgstr ""
-#: templates/js/translated/part.js:573
+#: templates/js/translated/part.js:572
msgid "You have subscribed to notifications for this item"
msgstr ""
-#: templates/js/translated/part.js:578
+#: templates/js/translated/part.js:577
msgid "Subscribe to notifications for this item"
msgstr ""
-#: templates/js/translated/part.js:580
+#: templates/js/translated/part.js:579
msgid "You have unsubscribed to notifications for this item"
msgstr ""
-#: templates/js/translated/part.js:597
+#: templates/js/translated/part.js:596
msgid "Validating the BOM will mark each line item as valid"
msgstr ""
-#: templates/js/translated/part.js:607
+#: templates/js/translated/part.js:606
msgid "Validate Bill of Materials"
msgstr ""
-#: templates/js/translated/part.js:610
+#: templates/js/translated/part.js:609
msgid "Validated Bill of Materials"
msgstr ""
-#: templates/js/translated/part.js:635
+#: templates/js/translated/part.js:634
msgid "Copy Bill of Materials"
msgstr ""
-#: templates/js/translated/part.js:663
-#: templates/js/translated/table_filters.js:660
+#: templates/js/translated/part.js:662
+#: templates/js/translated/table_filters.js:682
msgid "Low stock"
msgstr ""
-#: templates/js/translated/part.js:666
+#: templates/js/translated/part.js:665
msgid "No stock available"
msgstr ""
-#: templates/js/translated/part.js:726
+#: templates/js/translated/part.js:725
msgid "Demand"
msgstr ""
-#: templates/js/translated/part.js:749
+#: templates/js/translated/part.js:748
msgid "Unit"
msgstr ""
-#: templates/js/translated/part.js:768 templates/js/translated/part.js:1176
-msgid "Trackable part"
-msgstr ""
-
-#: templates/js/translated/part.js:772 templates/js/translated/part.js:1180
+#: templates/js/translated/part.js:771 templates/js/translated/part.js:1179
msgid "Virtual part"
msgstr ""
-#: templates/js/translated/part.js:784
+#: templates/js/translated/part.js:783
msgid "Subscribed part"
msgstr ""
-#: templates/js/translated/part.js:788
+#: templates/js/translated/part.js:787
msgid "Salable part"
msgstr ""
-#: templates/js/translated/part.js:863
+#: templates/js/translated/part.js:862
msgid "Schedule generation of a new stocktake report."
msgstr ""
-#: templates/js/translated/part.js:863
+#: templates/js/translated/part.js:862
msgid "Once complete, the stocktake report will be available for download."
msgstr ""
-#: templates/js/translated/part.js:871
+#: templates/js/translated/part.js:870
msgid "Generate Stocktake Report"
msgstr ""
-#: templates/js/translated/part.js:875
+#: templates/js/translated/part.js:874
msgid "Stocktake report scheduled"
msgstr ""
-#: templates/js/translated/part.js:1024
+#: templates/js/translated/part.js:1023
msgid "No stocktake information available"
msgstr ""
-#: templates/js/translated/part.js:1082 templates/js/translated/part.js:1118
+#: templates/js/translated/part.js:1081 templates/js/translated/part.js:1117
msgid "Edit Stocktake Entry"
msgstr ""
-#: templates/js/translated/part.js:1086 templates/js/translated/part.js:1128
+#: templates/js/translated/part.js:1085 templates/js/translated/part.js:1127
msgid "Delete Stocktake Entry"
msgstr ""
-#: templates/js/translated/part.js:1255
+#: templates/js/translated/part.js:1254
msgid "No variants found"
msgstr ""
-#: templates/js/translated/part.js:1572
+#: templates/js/translated/part.js:1571
msgid "No part parameter templates found"
msgstr ""
-#: templates/js/translated/part.js:1635
+#: templates/js/translated/part.js:1634
msgid "Edit Part Parameter Template"
msgstr ""
-#: templates/js/translated/part.js:1647
+#: templates/js/translated/part.js:1646
msgid "Any parameters which reference this template will also be deleted"
msgstr ""
-#: templates/js/translated/part.js:1655
+#: templates/js/translated/part.js:1654
msgid "Delete Part Parameter Template"
msgstr ""
-#: templates/js/translated/part.js:1689
-#: templates/js/translated/purchase_order.js:1618
+#: templates/js/translated/part.js:1688
+#: templates/js/translated/purchase_order.js:1633
msgid "No purchase orders found"
msgstr ""
-#: templates/js/translated/part.js:1832
-#: templates/js/translated/purchase_order.js:2121
-#: templates/js/translated/return_order.js:740
-#: templates/js/translated/sales_order.js:1855
+#: templates/js/translated/part.js:1831
+#: templates/js/translated/purchase_order.js:2131
+#: templates/js/translated/return_order.js:752
+#: templates/js/translated/sales_order.js:1867
msgid "This line item is overdue"
msgstr ""
-#: templates/js/translated/part.js:1877
-#: templates/js/translated/purchase_order.js:2188
+#: templates/js/translated/part.js:1876
+#: templates/js/translated/purchase_order.js:2198
msgid "Receive line item"
msgstr ""
-#: templates/js/translated/part.js:1944
+#: templates/js/translated/part.js:1943
msgid "Delete part relationship"
msgstr ""
-#: templates/js/translated/part.js:1966
+#: templates/js/translated/part.js:1965
msgid "Delete Part Relationship"
msgstr ""
-#: templates/js/translated/part.js:2054 templates/js/translated/part.js:2366
+#: templates/js/translated/part.js:2053 templates/js/translated/part.js:2442
msgid "No parts found"
msgstr ""
-#: templates/js/translated/part.js:2192
-msgid "parts"
-msgstr ""
-
-#: templates/js/translated/part.js:2276
-msgid "No category"
-msgstr ""
-
-#: templates/js/translated/part.js:2390 templates/js/translated/part.js:2611
-#: templates/js/translated/stock.js:2417
-msgid "Display as list"
-msgstr ""
-
-#: templates/js/translated/part.js:2406
-msgid "Display as grid"
-msgstr ""
-
-#: templates/js/translated/part.js:2472
+#: templates/js/translated/part.js:2174
msgid "Set the part category for the selected parts"
msgstr ""
-#: templates/js/translated/part.js:2477
+#: templates/js/translated/part.js:2179
msgid "Set Part Category"
msgstr ""
+#: templates/js/translated/part.js:2204
+msgid "Set category"
+msgstr "Aseta kategoria"
+
+#: templates/js/translated/part.js:2259
+msgid "parts"
+msgstr ""
+
+#: templates/js/translated/part.js:2352
+msgid "No category"
+msgstr ""
+
+#: templates/js/translated/part.js:2466 templates/js/translated/part.js:2596
+#: templates/js/translated/stock.js:2548
+msgid "Display as list"
+msgstr ""
+
#: templates/js/translated/part.js:2482
-msgid "Select Part Category"
+msgid "Display as grid"
msgstr ""
-#: templates/js/translated/part.js:2495
-msgid "Category is required"
-msgstr ""
-
-#: templates/js/translated/part.js:2595
+#: templates/js/translated/part.js:2580
msgid "No subcategories found"
msgstr ""
-#: templates/js/translated/part.js:2631 templates/js/translated/stock.js:2437
+#: templates/js/translated/part.js:2616 templates/js/translated/stock.js:2568
msgid "Display as tree"
msgstr ""
-#: templates/js/translated/part.js:2711
+#: templates/js/translated/part.js:2696
msgid "Load Subcategories"
msgstr ""
-#: templates/js/translated/part.js:2727
+#: templates/js/translated/part.js:2712
msgid "Subscribed category"
msgstr ""
-#: templates/js/translated/part.js:2807
+#: templates/js/translated/part.js:2792
msgid "No test templates matching query"
msgstr ""
-#: templates/js/translated/part.js:2858 templates/js/translated/stock.js:1380
+#: templates/js/translated/part.js:2843 templates/js/translated/stock.js:1379
msgid "Edit test result"
msgstr ""
-#: templates/js/translated/part.js:2859 templates/js/translated/stock.js:1381
-#: templates/js/translated/stock.js:1643
+#: templates/js/translated/part.js:2844 templates/js/translated/stock.js:1380
+#: templates/js/translated/stock.js:1642
msgid "Delete test result"
msgstr ""
-#: templates/js/translated/part.js:2863
+#: templates/js/translated/part.js:2848
msgid "This test is defined for a parent part"
msgstr ""
-#: templates/js/translated/part.js:2879
+#: templates/js/translated/part.js:2864
msgid "Edit Test Result Template"
msgstr ""
-#: templates/js/translated/part.js:2893
+#: templates/js/translated/part.js:2878
msgid "Delete Test Result Template"
msgstr ""
-#: templates/js/translated/part.js:2972 templates/js/translated/part.js:2973
+#: templates/js/translated/part.js:2957 templates/js/translated/part.js:2958
msgid "No date specified"
msgstr ""
-#: templates/js/translated/part.js:2975
+#: templates/js/translated/part.js:2960
msgid "Specified date is in the past"
msgstr ""
-#: templates/js/translated/part.js:2981
+#: templates/js/translated/part.js:2966
msgid "Speculative"
msgstr ""
-#: templates/js/translated/part.js:3031
+#: templates/js/translated/part.js:3016
msgid "No scheduling information available for this part"
msgstr ""
-#: templates/js/translated/part.js:3037
+#: templates/js/translated/part.js:3022
msgid "Error fetching scheduling information for this part"
msgstr ""
-#: templates/js/translated/part.js:3133
+#: templates/js/translated/part.js:3118
msgid "Scheduled Stock Quantities"
msgstr ""
-#: templates/js/translated/part.js:3149
+#: templates/js/translated/part.js:3134
msgid "Maximum Quantity"
msgstr ""
-#: templates/js/translated/part.js:3194
+#: templates/js/translated/part.js:3179
msgid "Minimum Stock Level"
msgstr ""
@@ -11168,234 +11297,234 @@ msgstr ""
msgid "Variant Part"
msgstr ""
-#: templates/js/translated/purchase_order.js:155
+#: templates/js/translated/purchase_order.js:166
msgid "Select purchase order to duplicate"
msgstr ""
-#: templates/js/translated/purchase_order.js:162
+#: templates/js/translated/purchase_order.js:173
msgid "Duplicate Line Items"
msgstr ""
-#: templates/js/translated/purchase_order.js:163
+#: templates/js/translated/purchase_order.js:174
msgid "Duplicate all line items from the selected order"
msgstr ""
-#: templates/js/translated/purchase_order.js:170
+#: templates/js/translated/purchase_order.js:181
msgid "Duplicate Extra Lines"
msgstr ""
-#: templates/js/translated/purchase_order.js:171
+#: templates/js/translated/purchase_order.js:182
msgid "Duplicate extra line items from the selected order"
msgstr ""
-#: templates/js/translated/purchase_order.js:192
+#: templates/js/translated/purchase_order.js:203
msgid "Edit Purchase Order"
msgstr ""
-#: templates/js/translated/purchase_order.js:209
+#: templates/js/translated/purchase_order.js:220
msgid "Duplication Options"
msgstr ""
-#: templates/js/translated/purchase_order.js:436
+#: templates/js/translated/purchase_order.js:447
msgid "Complete Purchase Order"
msgstr ""
-#: templates/js/translated/purchase_order.js:453
-#: templates/js/translated/return_order.js:195
-#: templates/js/translated/sales_order.js:485
+#: templates/js/translated/purchase_order.js:464
+#: templates/js/translated/return_order.js:207
+#: templates/js/translated/sales_order.js:497
msgid "Mark this order as complete?"
msgstr ""
-#: templates/js/translated/purchase_order.js:459
+#: templates/js/translated/purchase_order.js:470
msgid "All line items have been received"
msgstr ""
-#: templates/js/translated/purchase_order.js:464
+#: templates/js/translated/purchase_order.js:475
msgid "This order has line items which have not been marked as received."
msgstr ""
-#: templates/js/translated/purchase_order.js:465
-#: templates/js/translated/sales_order.js:499
+#: templates/js/translated/purchase_order.js:476
+#: templates/js/translated/sales_order.js:511
msgid "Completing this order means that the order and line items will no longer be editable."
msgstr ""
-#: templates/js/translated/purchase_order.js:488
+#: templates/js/translated/purchase_order.js:499
msgid "Cancel Purchase Order"
msgstr ""
-#: templates/js/translated/purchase_order.js:493
+#: templates/js/translated/purchase_order.js:504
msgid "Are you sure you wish to cancel this purchase order?"
msgstr ""
-#: templates/js/translated/purchase_order.js:499
+#: templates/js/translated/purchase_order.js:510
msgid "This purchase order can not be cancelled"
msgstr ""
-#: templates/js/translated/purchase_order.js:520
-#: templates/js/translated/return_order.js:149
+#: templates/js/translated/purchase_order.js:531
+#: templates/js/translated/return_order.js:161
msgid "After placing this order, line items will no longer be editable."
msgstr ""
-#: templates/js/translated/purchase_order.js:525
+#: templates/js/translated/purchase_order.js:536
msgid "Issue Purchase Order"
msgstr ""
-#: templates/js/translated/purchase_order.js:617
+#: templates/js/translated/purchase_order.js:628
msgid "At least one purchaseable part must be selected"
msgstr ""
-#: templates/js/translated/purchase_order.js:642
+#: templates/js/translated/purchase_order.js:653
msgid "Quantity to order"
msgstr ""
-#: templates/js/translated/purchase_order.js:651
+#: templates/js/translated/purchase_order.js:662
msgid "New supplier part"
msgstr ""
-#: templates/js/translated/purchase_order.js:669
+#: templates/js/translated/purchase_order.js:680
msgid "New purchase order"
msgstr ""
-#: templates/js/translated/purchase_order.js:701
+#: templates/js/translated/purchase_order.js:712
msgid "Add to purchase order"
msgstr ""
-#: templates/js/translated/purchase_order.js:845
+#: templates/js/translated/purchase_order.js:860
msgid "No matching supplier parts"
msgstr ""
-#: templates/js/translated/purchase_order.js:864
+#: templates/js/translated/purchase_order.js:879
msgid "No matching purchase orders"
msgstr ""
-#: templates/js/translated/purchase_order.js:1043
+#: templates/js/translated/purchase_order.js:1058
msgid "Select Line Items"
msgstr ""
-#: templates/js/translated/purchase_order.js:1044
-#: templates/js/translated/return_order.js:480
+#: templates/js/translated/purchase_order.js:1059
+#: templates/js/translated/return_order.js:492
msgid "At least one line item must be selected"
msgstr ""
-#: templates/js/translated/purchase_order.js:1074
+#: templates/js/translated/purchase_order.js:1089
msgid "Received Quantity"
msgstr ""
-#: templates/js/translated/purchase_order.js:1085
+#: templates/js/translated/purchase_order.js:1100
msgid "Quantity to receive"
msgstr ""
-#: templates/js/translated/purchase_order.js:1161
+#: templates/js/translated/purchase_order.js:1176
msgid "Stock Status"
msgstr ""
-#: templates/js/translated/purchase_order.js:1175
+#: templates/js/translated/purchase_order.js:1190
msgid "Add barcode"
msgstr ""
-#: templates/js/translated/purchase_order.js:1176
+#: templates/js/translated/purchase_order.js:1191
msgid "Remove barcode"
msgstr ""
-#: templates/js/translated/purchase_order.js:1179
+#: templates/js/translated/purchase_order.js:1194
msgid "Specify location"
msgstr ""
-#: templates/js/translated/purchase_order.js:1187
+#: templates/js/translated/purchase_order.js:1202
msgid "Add batch code"
msgstr ""
-#: templates/js/translated/purchase_order.js:1198
+#: templates/js/translated/purchase_order.js:1213
msgid "Add serial numbers"
msgstr "Lisää sarjanumeroita"
-#: templates/js/translated/purchase_order.js:1250
+#: templates/js/translated/purchase_order.js:1265
msgid "Serials"
msgstr "Sarjanumerot"
-#: templates/js/translated/purchase_order.js:1275
+#: templates/js/translated/purchase_order.js:1290
msgid "Order Code"
msgstr ""
-#: templates/js/translated/purchase_order.js:1277
+#: templates/js/translated/purchase_order.js:1292
msgid "Quantity to Receive"
msgstr ""
-#: templates/js/translated/purchase_order.js:1299
-#: templates/js/translated/return_order.js:545
+#: templates/js/translated/purchase_order.js:1314
+#: templates/js/translated/return_order.js:557
msgid "Confirm receipt of items"
msgstr ""
-#: templates/js/translated/purchase_order.js:1300
+#: templates/js/translated/purchase_order.js:1315
msgid "Receive Purchase Order Items"
msgstr ""
-#: templates/js/translated/purchase_order.js:1368
+#: templates/js/translated/purchase_order.js:1383
msgid "Scan Item Barcode"
msgstr "Skannaa tuotteen viivakoodi"
-#: templates/js/translated/purchase_order.js:1369
+#: templates/js/translated/purchase_order.js:1384
msgid "Scan barcode on incoming item (must not match any existing stock items)"
msgstr ""
-#: templates/js/translated/purchase_order.js:1383
+#: templates/js/translated/purchase_order.js:1398
msgid "Invalid barcode data"
msgstr ""
-#: templates/js/translated/purchase_order.js:1645
-#: templates/js/translated/return_order.js:274
-#: templates/js/translated/sales_order.js:762
-#: templates/js/translated/sales_order.js:986
+#: templates/js/translated/purchase_order.js:1660
+#: templates/js/translated/return_order.js:286
+#: templates/js/translated/sales_order.js:774
+#: templates/js/translated/sales_order.js:998
msgid "Order is overdue"
msgstr ""
-#: templates/js/translated/purchase_order.js:1707
-#: templates/js/translated/return_order.js:342
-#: templates/js/translated/sales_order.js:839
-#: templates/js/translated/sales_order.js:999
+#: templates/js/translated/purchase_order.js:1722
+#: templates/js/translated/return_order.js:354
+#: templates/js/translated/sales_order.js:851
+#: templates/js/translated/sales_order.js:1011
msgid "Items"
msgstr ""
-#: templates/js/translated/purchase_order.js:1806
+#: templates/js/translated/purchase_order.js:1821
msgid "All selected Line items will be deleted"
msgstr ""
-#: templates/js/translated/purchase_order.js:1824
+#: templates/js/translated/purchase_order.js:1839
msgid "Delete selected Line items?"
msgstr ""
-#: templates/js/translated/purchase_order.js:1884
-#: templates/js/translated/sales_order.js:2047
+#: templates/js/translated/purchase_order.js:1894
+#: templates/js/translated/sales_order.js:2059
msgid "Duplicate Line Item"
msgstr ""
-#: templates/js/translated/purchase_order.js:1899
-#: templates/js/translated/return_order.js:464
-#: templates/js/translated/return_order.js:653
-#: templates/js/translated/sales_order.js:2060
+#: templates/js/translated/purchase_order.js:1909
+#: templates/js/translated/return_order.js:476
+#: templates/js/translated/return_order.js:665
+#: templates/js/translated/sales_order.js:2072
msgid "Edit Line Item"
msgstr ""
-#: templates/js/translated/purchase_order.js:1910
-#: templates/js/translated/return_order.js:666
-#: templates/js/translated/sales_order.js:2071
+#: templates/js/translated/purchase_order.js:1920
+#: templates/js/translated/return_order.js:678
+#: templates/js/translated/sales_order.js:2083
msgid "Delete Line Item"
msgstr ""
-#: templates/js/translated/purchase_order.js:2192
-#: templates/js/translated/sales_order.js:2001
+#: templates/js/translated/purchase_order.js:2202
+#: templates/js/translated/sales_order.js:2013
msgid "Duplicate line item"
msgstr ""
-#: templates/js/translated/purchase_order.js:2193
-#: templates/js/translated/return_order.js:785
-#: templates/js/translated/sales_order.js:2002
+#: templates/js/translated/purchase_order.js:2203
+#: templates/js/translated/return_order.js:797
+#: templates/js/translated/sales_order.js:2014
msgid "Edit line item"
msgstr ""
-#: templates/js/translated/purchase_order.js:2194
-#: templates/js/translated/return_order.js:789
-#: templates/js/translated/sales_order.js:2008
+#: templates/js/translated/purchase_order.js:2204
+#: templates/js/translated/return_order.js:801
+#: templates/js/translated/sales_order.js:2020
msgid "Delete line item"
msgstr ""
@@ -11424,941 +11553,973 @@ msgstr ""
msgid "Add Customer"
msgstr "Lisää asiakas"
-#: templates/js/translated/return_order.js:119
+#: templates/js/translated/return_order.js:131
msgid "Create Return Order"
msgstr ""
-#: templates/js/translated/return_order.js:134
+#: templates/js/translated/return_order.js:146
msgid "Edit Return Order"
msgstr ""
-#: templates/js/translated/return_order.js:154
+#: templates/js/translated/return_order.js:166
msgid "Issue Return Order"
msgstr ""
-#: templates/js/translated/return_order.js:171
+#: templates/js/translated/return_order.js:183
msgid "Are you sure you wish to cancel this Return Order?"
msgstr ""
-#: templates/js/translated/return_order.js:178
+#: templates/js/translated/return_order.js:190
msgid "Cancel Return Order"
msgstr ""
-#: templates/js/translated/return_order.js:203
+#: templates/js/translated/return_order.js:215
msgid "Complete Return Order"
msgstr ""
-#: templates/js/translated/return_order.js:251
+#: templates/js/translated/return_order.js:263
msgid "No return orders found"
msgstr ""
-#: templates/js/translated/return_order.js:288
-#: templates/js/translated/sales_order.js:776
+#: templates/js/translated/return_order.js:300
+#: templates/js/translated/sales_order.js:788
msgid "Invalid Customer"
msgstr "Virheellinen asiakas"
-#: templates/js/translated/return_order.js:546
+#: templates/js/translated/return_order.js:558
msgid "Receive Return Order Items"
msgstr ""
-#: templates/js/translated/return_order.js:677
-#: templates/js/translated/sales_order.js:2207
+#: templates/js/translated/return_order.js:689
+#: templates/js/translated/sales_order.js:2219
msgid "No matching line items"
msgstr ""
-#: templates/js/translated/return_order.js:782
+#: templates/js/translated/return_order.js:794
msgid "Mark item as received"
msgstr ""
-#: templates/js/translated/sales_order.js:146
+#: templates/js/translated/sales_order.js:158
msgid "Create Sales Order"
msgstr ""
-#: templates/js/translated/sales_order.js:161
+#: templates/js/translated/sales_order.js:173
msgid "Edit Sales Order"
msgstr ""
-#: templates/js/translated/sales_order.js:276
+#: templates/js/translated/sales_order.js:288
msgid "No stock items have been allocated to this shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:281
+#: templates/js/translated/sales_order.js:293
msgid "The following stock items will be shipped"
msgstr ""
-#: templates/js/translated/sales_order.js:321
+#: templates/js/translated/sales_order.js:333
msgid "Complete Shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:345
+#: templates/js/translated/sales_order.js:357
msgid "Confirm Shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:401
+#: templates/js/translated/sales_order.js:413
msgid "No pending shipments found"
msgstr ""
-#: templates/js/translated/sales_order.js:405
+#: templates/js/translated/sales_order.js:417
msgid "No stock items have been allocated to pending shipments"
msgstr ""
-#: templates/js/translated/sales_order.js:415
+#: templates/js/translated/sales_order.js:427
msgid "Complete Shipments"
msgstr ""
-#: templates/js/translated/sales_order.js:437
+#: templates/js/translated/sales_order.js:449
msgid "Skip"
msgstr ""
-#: templates/js/translated/sales_order.js:498
+#: templates/js/translated/sales_order.js:510
msgid "This order has line items which have not been completed."
msgstr ""
-#: templates/js/translated/sales_order.js:520
+#: templates/js/translated/sales_order.js:532
msgid "Issue this Sales Order?"
msgstr ""
-#: templates/js/translated/sales_order.js:525
+#: templates/js/translated/sales_order.js:537
msgid "Issue Sales Order"
msgstr ""
-#: templates/js/translated/sales_order.js:544
+#: templates/js/translated/sales_order.js:556
msgid "Cancel Sales Order"
msgstr ""
-#: templates/js/translated/sales_order.js:549
+#: templates/js/translated/sales_order.js:561
msgid "Cancelling this order means that the order will no longer be editable."
msgstr ""
-#: templates/js/translated/sales_order.js:603
+#: templates/js/translated/sales_order.js:615
msgid "Create New Shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:713
+#: templates/js/translated/sales_order.js:725
msgid "No sales orders found"
msgstr ""
-#: templates/js/translated/sales_order.js:896
+#: templates/js/translated/sales_order.js:908
msgid "Edit shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:899
+#: templates/js/translated/sales_order.js:911
msgid "Complete shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:904
+#: templates/js/translated/sales_order.js:916
msgid "Delete shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:921
+#: templates/js/translated/sales_order.js:933
msgid "Edit Shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:936
+#: templates/js/translated/sales_order.js:948
msgid "Delete Shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:969
+#: templates/js/translated/sales_order.js:981
msgid "No matching shipments found"
msgstr ""
-#: templates/js/translated/sales_order.js:994
+#: templates/js/translated/sales_order.js:1006
msgid "Shipment Reference"
msgstr ""
-#: templates/js/translated/sales_order.js:1018
-#: templates/js/translated/sales_order.js:1515
+#: templates/js/translated/sales_order.js:1030
+#: templates/js/translated/sales_order.js:1527
msgid "Not shipped"
msgstr ""
-#: templates/js/translated/sales_order.js:1036
+#: templates/js/translated/sales_order.js:1048
msgid "Tracking"
msgstr ""
-#: templates/js/translated/sales_order.js:1040
+#: templates/js/translated/sales_order.js:1052
msgid "Invoice"
msgstr "Lasku"
-#: templates/js/translated/sales_order.js:1207
+#: templates/js/translated/sales_order.js:1219
msgid "Add Shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:1258
+#: templates/js/translated/sales_order.js:1270
msgid "Confirm stock allocation"
msgstr ""
-#: templates/js/translated/sales_order.js:1259
+#: templates/js/translated/sales_order.js:1271
msgid "Allocate Stock Items to Sales Order"
msgstr ""
-#: templates/js/translated/sales_order.js:1463
+#: templates/js/translated/sales_order.js:1475
msgid "No sales order allocations found"
msgstr ""
-#: templates/js/translated/sales_order.js:1555
+#: templates/js/translated/sales_order.js:1567
msgid "Edit Stock Allocation"
msgstr ""
-#: templates/js/translated/sales_order.js:1569
+#: templates/js/translated/sales_order.js:1581
msgid "Confirm Delete Operation"
msgstr ""
-#: templates/js/translated/sales_order.js:1570
+#: templates/js/translated/sales_order.js:1582
msgid "Delete Stock Allocation"
msgstr ""
-#: templates/js/translated/sales_order.js:1609
-#: templates/js/translated/sales_order.js:1696
-#: templates/js/translated/stock.js:1688
+#: templates/js/translated/sales_order.js:1621
+#: templates/js/translated/sales_order.js:1708
+#: templates/js/translated/stock.js:1687
msgid "Shipped to customer"
msgstr ""
-#: templates/js/translated/sales_order.js:1617
-#: templates/js/translated/sales_order.js:1705
+#: templates/js/translated/sales_order.js:1629
+#: templates/js/translated/sales_order.js:1717
msgid "Stock location not specified"
msgstr ""
-#: templates/js/translated/sales_order.js:1985
+#: templates/js/translated/sales_order.js:1997
msgid "Allocate serial numbers"
msgstr ""
-#: templates/js/translated/sales_order.js:1989
+#: templates/js/translated/sales_order.js:2001
msgid "Purchase stock"
msgstr ""
-#: templates/js/translated/sales_order.js:1998
-#: templates/js/translated/sales_order.js:2185
+#: templates/js/translated/sales_order.js:2010
+#: templates/js/translated/sales_order.js:2197
msgid "Calculate price"
msgstr ""
-#: templates/js/translated/sales_order.js:2012
+#: templates/js/translated/sales_order.js:2024
msgid "Cannot be deleted as items have been shipped"
msgstr ""
-#: templates/js/translated/sales_order.js:2015
+#: templates/js/translated/sales_order.js:2027
msgid "Cannot be deleted as items have been allocated"
msgstr ""
-#: templates/js/translated/sales_order.js:2086
+#: templates/js/translated/sales_order.js:2098
msgid "Allocate Serial Numbers"
msgstr ""
-#: templates/js/translated/sales_order.js:2193
+#: templates/js/translated/sales_order.js:2205
msgid "Update Unit Price"
msgstr ""
-#: templates/js/translated/search.js:312
+#: templates/js/translated/search.js:270
msgid "No results"
msgstr ""
-#: templates/js/translated/search.js:334 templates/search.html:25
+#: templates/js/translated/search.js:292 templates/search.html:25
msgid "Enter search query"
msgstr ""
-#: templates/js/translated/search.js:384
+#: templates/js/translated/search.js:342
msgid "result"
msgstr ""
-#: templates/js/translated/search.js:384
+#: templates/js/translated/search.js:342
msgid "results"
msgstr ""
-#: templates/js/translated/search.js:394
+#: templates/js/translated/search.js:352
msgid "Minimize results"
msgstr ""
-#: templates/js/translated/search.js:397
+#: templates/js/translated/search.js:355
msgid "Remove results"
msgstr ""
-#: templates/js/translated/stock.js:98
+#: templates/js/translated/stock.js:97
msgid "Serialize Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:129
+#: templates/js/translated/stock.js:128
msgid "Confirm Stock Serialization"
msgstr ""
-#: templates/js/translated/stock.js:138
+#: templates/js/translated/stock.js:137
msgid "Parent stock location"
msgstr ""
-#: templates/js/translated/stock.js:173
+#: templates/js/translated/stock.js:172
msgid "Edit Stock Location"
msgstr ""
-#: templates/js/translated/stock.js:188
+#: templates/js/translated/stock.js:187
msgid "New Stock Location"
msgstr ""
-#: templates/js/translated/stock.js:190
+#: templates/js/translated/stock.js:189
msgid "Create another location after this one"
msgstr ""
-#: templates/js/translated/stock.js:191
+#: templates/js/translated/stock.js:190
msgid "Stock location created"
msgstr ""
-#: templates/js/translated/stock.js:205
+#: templates/js/translated/stock.js:204
msgid "Are you sure you want to delete this stock location?"
msgstr ""
-#: templates/js/translated/stock.js:212
+#: templates/js/translated/stock.js:211
msgid "Move to parent stock location"
msgstr ""
-#: templates/js/translated/stock.js:221
+#: templates/js/translated/stock.js:220
msgid "Delete Stock Location"
msgstr ""
-#: templates/js/translated/stock.js:225
+#: templates/js/translated/stock.js:224
msgid "Action for stock items in this stock location"
msgstr ""
-#: templates/js/translated/stock.js:230
+#: templates/js/translated/stock.js:229
msgid "Action for sub-locations"
msgstr ""
-#: templates/js/translated/stock.js:284
+#: templates/js/translated/stock.js:283
msgid "This part cannot be serialized"
msgstr ""
-#: templates/js/translated/stock.js:320
+#: templates/js/translated/stock.js:319
msgid "Add given quantity as packs instead of individual items"
msgstr ""
-#: templates/js/translated/stock.js:329
+#: templates/js/translated/stock.js:328
msgid "Enter initial quantity for this stock item"
msgstr ""
-#: templates/js/translated/stock.js:335
+#: templates/js/translated/stock.js:334
msgid "Enter serial numbers for new stock (or leave blank)"
msgstr ""
-#: templates/js/translated/stock.js:406
+#: templates/js/translated/stock.js:405
msgid "Stock item duplicated"
msgstr ""
-#: templates/js/translated/stock.js:426
+#: templates/js/translated/stock.js:425
msgid "Duplicate Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:442
+#: templates/js/translated/stock.js:441
msgid "Are you sure you want to delete this stock item?"
msgstr ""
-#: templates/js/translated/stock.js:447
+#: templates/js/translated/stock.js:446
msgid "Delete Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:468
+#: templates/js/translated/stock.js:467
msgid "Edit Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:510
+#: templates/js/translated/stock.js:509
msgid "Create another item after this one"
msgstr ""
-#: templates/js/translated/stock.js:522
+#: templates/js/translated/stock.js:521
msgid "Created new stock item"
msgstr ""
-#: templates/js/translated/stock.js:535
+#: templates/js/translated/stock.js:534
msgid "Created multiple stock items"
msgstr ""
-#: templates/js/translated/stock.js:560
+#: templates/js/translated/stock.js:559
msgid "Find Serial Number"
msgstr ""
-#: templates/js/translated/stock.js:564 templates/js/translated/stock.js:565
+#: templates/js/translated/stock.js:563 templates/js/translated/stock.js:564
msgid "Enter serial number"
msgstr "Syötä sarjanumero"
-#: templates/js/translated/stock.js:581
+#: templates/js/translated/stock.js:580
msgid "Enter a serial number"
msgstr "Syötä sarjanumero"
-#: templates/js/translated/stock.js:601
+#: templates/js/translated/stock.js:600
msgid "No matching serial number"
msgstr ""
-#: templates/js/translated/stock.js:610
+#: templates/js/translated/stock.js:609
msgid "More than one matching result found"
msgstr ""
-#: templates/js/translated/stock.js:718
+#: templates/js/translated/stock.js:717
msgid "Confirm stock assignment"
msgstr ""
-#: templates/js/translated/stock.js:719
+#: templates/js/translated/stock.js:718
msgid "Assign Stock to Customer"
msgstr ""
-#: templates/js/translated/stock.js:796
+#: templates/js/translated/stock.js:795
msgid "Warning: Merge operation cannot be reversed"
msgstr ""
-#: templates/js/translated/stock.js:797
+#: templates/js/translated/stock.js:796
msgid "Some information will be lost when merging stock items"
msgstr ""
-#: templates/js/translated/stock.js:799
+#: templates/js/translated/stock.js:798
msgid "Stock transaction history will be deleted for merged items"
msgstr ""
-#: templates/js/translated/stock.js:800
+#: templates/js/translated/stock.js:799
msgid "Supplier part information will be deleted for merged items"
msgstr ""
-#: templates/js/translated/stock.js:891
+#: templates/js/translated/stock.js:890
msgid "Confirm stock item merge"
msgstr ""
-#: templates/js/translated/stock.js:892
+#: templates/js/translated/stock.js:891
msgid "Merge Stock Items"
msgstr ""
-#: templates/js/translated/stock.js:987
+#: templates/js/translated/stock.js:986
msgid "Transfer Stock"
msgstr ""
-#: templates/js/translated/stock.js:988
+#: templates/js/translated/stock.js:987
msgid "Move"
msgstr "Siirrä"
-#: templates/js/translated/stock.js:994
+#: templates/js/translated/stock.js:993
msgid "Count Stock"
msgstr ""
-#: templates/js/translated/stock.js:995
+#: templates/js/translated/stock.js:994
msgid "Count"
msgstr ""
-#: templates/js/translated/stock.js:999
+#: templates/js/translated/stock.js:998
msgid "Remove Stock"
msgstr ""
-#: templates/js/translated/stock.js:1000
+#: templates/js/translated/stock.js:999
msgid "Take"
msgstr ""
-#: templates/js/translated/stock.js:1004
+#: templates/js/translated/stock.js:1003
msgid "Add Stock"
msgstr ""
-#: templates/js/translated/stock.js:1005 users/models.py:243
+#: templates/js/translated/stock.js:1004 users/models.py:249
msgid "Add"
msgstr ""
-#: templates/js/translated/stock.js:1009
+#: templates/js/translated/stock.js:1008
msgid "Delete Stock"
msgstr ""
-#: templates/js/translated/stock.js:1106
+#: templates/js/translated/stock.js:1105
msgid "Quantity cannot be adjusted for serialized stock"
msgstr ""
-#: templates/js/translated/stock.js:1106
+#: templates/js/translated/stock.js:1105
msgid "Specify stock quantity"
msgstr ""
-#: templates/js/translated/stock.js:1140
+#: templates/js/translated/stock.js:1139 templates/js/translated/stock.js:3151
msgid "Select Stock Items"
msgstr ""
-#: templates/js/translated/stock.js:1141
-msgid "You must select at least one available stock item"
+#: templates/js/translated/stock.js:1140
+msgid "Select at least one available stock item"
msgstr ""
-#: templates/js/translated/stock.js:1168
+#: templates/js/translated/stock.js:1167
msgid "Confirm stock adjustment"
msgstr ""
-#: templates/js/translated/stock.js:1304
+#: templates/js/translated/stock.js:1303
msgid "PASS"
msgstr ""
-#: templates/js/translated/stock.js:1306
+#: templates/js/translated/stock.js:1305
msgid "FAIL"
msgstr ""
-#: templates/js/translated/stock.js:1311
+#: templates/js/translated/stock.js:1310
msgid "NO RESULT"
msgstr ""
-#: templates/js/translated/stock.js:1373
+#: templates/js/translated/stock.js:1372
msgid "Pass test"
msgstr ""
-#: templates/js/translated/stock.js:1376
+#: templates/js/translated/stock.js:1375
msgid "Add test result"
msgstr ""
-#: templates/js/translated/stock.js:1400
+#: templates/js/translated/stock.js:1399
msgid "No test results found"
msgstr ""
-#: templates/js/translated/stock.js:1464
+#: templates/js/translated/stock.js:1463
msgid "Test Date"
msgstr ""
-#: templates/js/translated/stock.js:1626
+#: templates/js/translated/stock.js:1625
msgid "Edit Test Result"
msgstr ""
-#: templates/js/translated/stock.js:1648
+#: templates/js/translated/stock.js:1647
msgid "Delete Test Result"
msgstr ""
-#: templates/js/translated/stock.js:1680
+#: templates/js/translated/stock.js:1679
msgid "In production"
msgstr ""
-#: templates/js/translated/stock.js:1684
+#: templates/js/translated/stock.js:1683
msgid "Installed in Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:1692
+#: templates/js/translated/stock.js:1691
msgid "Assigned to Sales Order"
msgstr ""
-#: templates/js/translated/stock.js:1698
+#: templates/js/translated/stock.js:1697
msgid "No stock location set"
msgstr ""
-#: templates/js/translated/stock.js:1746
+#: templates/js/translated/stock.js:1753
+msgid "Change stock status"
+msgstr ""
+
+#: templates/js/translated/stock.js:1762
+msgid "Merge stock"
+msgstr ""
+
+#: templates/js/translated/stock.js:1811
+msgid "Delete stock"
+msgstr ""
+
+#: templates/js/translated/stock.js:1866
msgid "stock items"
msgstr ""
-#: templates/js/translated/stock.js:1850
+#: templates/js/translated/stock.js:1871
+msgid "Scan to location"
+msgstr ""
+
+#: templates/js/translated/stock.js:1882
+msgid "Stock Actions"
+msgstr ""
+
+#: templates/js/translated/stock.js:1929
+msgid "Load installed items"
+msgstr ""
+
+#: templates/js/translated/stock.js:2007
msgid "Stock item is in production"
msgstr ""
-#: templates/js/translated/stock.js:1855
+#: templates/js/translated/stock.js:2012
msgid "Stock item assigned to sales order"
msgstr ""
-#: templates/js/translated/stock.js:1858
+#: templates/js/translated/stock.js:2015
msgid "Stock item assigned to customer"
msgstr ""
-#: templates/js/translated/stock.js:1861
+#: templates/js/translated/stock.js:2018
msgid "Serialized stock item has been allocated"
msgstr ""
-#: templates/js/translated/stock.js:1863
+#: templates/js/translated/stock.js:2020
msgid "Stock item has been fully allocated"
msgstr ""
-#: templates/js/translated/stock.js:1865
+#: templates/js/translated/stock.js:2022
msgid "Stock item has been partially allocated"
msgstr ""
-#: templates/js/translated/stock.js:1868
+#: templates/js/translated/stock.js:2025
msgid "Stock item has been installed in another item"
msgstr ""
-#: templates/js/translated/stock.js:1870
+#: templates/js/translated/stock.js:2027
msgid "Stock item has been consumed by a build order"
msgstr ""
-#: templates/js/translated/stock.js:1874
+#: templates/js/translated/stock.js:2031
msgid "Stock item has expired"
msgstr ""
-#: templates/js/translated/stock.js:1876
+#: templates/js/translated/stock.js:2033
msgid "Stock item will expire soon"
msgstr ""
-#: templates/js/translated/stock.js:1881
+#: templates/js/translated/stock.js:2038
msgid "Stock item has been rejected"
msgstr ""
-#: templates/js/translated/stock.js:1883
+#: templates/js/translated/stock.js:2040
msgid "Stock item is lost"
msgstr ""
-#: templates/js/translated/stock.js:1885
+#: templates/js/translated/stock.js:2042
msgid "Stock item is destroyed"
msgstr ""
-#: templates/js/translated/stock.js:1889
-#: templates/js/translated/table_filters.js:296
+#: templates/js/translated/stock.js:2046
+#: templates/js/translated/table_filters.js:302
msgid "Depleted"
msgstr ""
-#: templates/js/translated/stock.js:2031
+#: templates/js/translated/stock.js:2188
msgid "Supplier part not specified"
msgstr ""
-#: templates/js/translated/stock.js:2078
+#: templates/js/translated/stock.js:2235
msgid "Stock Value"
msgstr ""
-#: templates/js/translated/stock.js:2170
+#: templates/js/translated/stock.js:2358
msgid "No stock items matching query"
msgstr ""
-#: templates/js/translated/stock.js:2319
+#: templates/js/translated/stock.js:2450
msgid "stock locations"
msgstr ""
-#: templates/js/translated/stock.js:2476
+#: templates/js/translated/stock.js:2607
msgid "Load Subloactions"
msgstr ""
-#: templates/js/translated/stock.js:2583
+#: templates/js/translated/stock.js:2714
msgid "Details"
msgstr ""
-#: templates/js/translated/stock.js:2587
+#: templates/js/translated/stock.js:2718
msgid "No changes"
msgstr ""
-#: templates/js/translated/stock.js:2599
+#: templates/js/translated/stock.js:2730
msgid "Part information unavailable"
msgstr ""
-#: templates/js/translated/stock.js:2621
+#: templates/js/translated/stock.js:2752
msgid "Location no longer exists"
msgstr ""
-#: templates/js/translated/stock.js:2638
+#: templates/js/translated/stock.js:2769
msgid "Build order no longer exists"
msgstr ""
-#: templates/js/translated/stock.js:2653
+#: templates/js/translated/stock.js:2784
msgid "Purchase order no longer exists"
msgstr ""
-#: templates/js/translated/stock.js:2670
+#: templates/js/translated/stock.js:2801
msgid "Sales Order no longer exists"
msgstr ""
-#: templates/js/translated/stock.js:2687
+#: templates/js/translated/stock.js:2818
msgid "Return Order no longer exists"
msgstr ""
-#: templates/js/translated/stock.js:2706
+#: templates/js/translated/stock.js:2837
msgid "Customer no longer exists"
msgstr ""
-#: templates/js/translated/stock.js:2724
+#: templates/js/translated/stock.js:2855
msgid "Stock item no longer exists"
msgstr ""
-#: templates/js/translated/stock.js:2742
+#: templates/js/translated/stock.js:2873
msgid "Added"
msgstr ""
-#: templates/js/translated/stock.js:2750
+#: templates/js/translated/stock.js:2881
msgid "Removed"
msgstr ""
-#: templates/js/translated/stock.js:2826
+#: templates/js/translated/stock.js:2953
msgid "No installed items"
msgstr ""
-#: templates/js/translated/stock.js:2876 templates/js/translated/stock.js:2911
+#: templates/js/translated/stock.js:3003 templates/js/translated/stock.js:3038
msgid "Uninstall Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:2929
+#: templates/js/translated/stock.js:3056
msgid "Select stock item to uninstall"
msgstr ""
-#: templates/js/translated/stock.js:2950
+#: templates/js/translated/stock.js:3077
msgid "Install another stock item into this item"
msgstr ""
-#: templates/js/translated/stock.js:2951
+#: templates/js/translated/stock.js:3078
msgid "Stock items can only be installed if they meet the following criteria"
msgstr ""
-#: templates/js/translated/stock.js:2953
+#: templates/js/translated/stock.js:3080
msgid "The Stock Item links to a Part which is the BOM for this Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:2954
+#: templates/js/translated/stock.js:3081
msgid "The Stock Item is currently available in stock"
msgstr ""
-#: templates/js/translated/stock.js:2955
+#: templates/js/translated/stock.js:3082
msgid "The Stock Item is not already installed in another item"
msgstr ""
-#: templates/js/translated/stock.js:2956
+#: templates/js/translated/stock.js:3083
msgid "The Stock Item is tracked by either a batch code or serial number"
msgstr ""
-#: templates/js/translated/stock.js:2969
+#: templates/js/translated/stock.js:3096
msgid "Select part to install"
msgstr ""
+#: templates/js/translated/stock.js:3152
+msgid "Select one or more stock items"
+msgstr ""
+
+#: templates/js/translated/stock.js:3165
+msgid "Selected stock items"
+msgstr ""
+
+#: templates/js/translated/stock.js:3169
+msgid "Change Stock Status"
+msgstr ""
+
#: templates/js/translated/table_filters.js:50
msgid "Has project code"
msgstr ""
-#: templates/js/translated/table_filters.js:59
-#: templates/js/translated/table_filters.js:518
-#: templates/js/translated/table_filters.js:530
-#: templates/js/translated/table_filters.js:571
+#: templates/js/translated/table_filters.js:65
+#: templates/js/translated/table_filters.js:540
+#: templates/js/translated/table_filters.js:552
+#: templates/js/translated/table_filters.js:593
msgid "Order status"
msgstr ""
-#: templates/js/translated/table_filters.js:64
-#: templates/js/translated/table_filters.js:535
-#: templates/js/translated/table_filters.js:561
-#: templates/js/translated/table_filters.js:576
+#: templates/js/translated/table_filters.js:70
+#: templates/js/translated/table_filters.js:557
+#: templates/js/translated/table_filters.js:583
+#: templates/js/translated/table_filters.js:598
msgid "Outstanding"
msgstr ""
-#: templates/js/translated/table_filters.js:72
-#: templates/js/translated/table_filters.js:458
-#: templates/js/translated/table_filters.js:543
-#: templates/js/translated/table_filters.js:584
+#: templates/js/translated/table_filters.js:78
+#: templates/js/translated/table_filters.js:464
+#: templates/js/translated/table_filters.js:565
+#: templates/js/translated/table_filters.js:606
msgid "Assigned to me"
msgstr ""
-#: templates/js/translated/table_filters.js:128
+#: templates/js/translated/table_filters.js:134
msgid "Trackable Part"
msgstr ""
-#: templates/js/translated/table_filters.js:132
+#: templates/js/translated/table_filters.js:138
msgid "Assembled Part"
msgstr ""
-#: templates/js/translated/table_filters.js:136
+#: templates/js/translated/table_filters.js:142
msgid "Has Available Stock"
msgstr ""
-#: templates/js/translated/table_filters.js:152
+#: templates/js/translated/table_filters.js:158
msgid "Allow Variant Stock"
msgstr ""
-#: templates/js/translated/table_filters.js:164
-#: templates/js/translated/table_filters.js:692
+#: templates/js/translated/table_filters.js:170
+#: templates/js/translated/table_filters.js:714
msgid "Has Pricing"
msgstr ""
-#: templates/js/translated/table_filters.js:204
-#: templates/js/translated/table_filters.js:291
+#: templates/js/translated/table_filters.js:210
+#: templates/js/translated/table_filters.js:297
msgid "Include sublocations"
msgstr ""
-#: templates/js/translated/table_filters.js:205
+#: templates/js/translated/table_filters.js:211
msgid "Include locations"
msgstr ""
-#: templates/js/translated/table_filters.js:224
-#: templates/js/translated/table_filters.js:225
-#: templates/js/translated/table_filters.js:624
+#: templates/js/translated/table_filters.js:230
+#: templates/js/translated/table_filters.js:231
+#: templates/js/translated/table_filters.js:646
msgid "Include subcategories"
msgstr ""
-#: templates/js/translated/table_filters.js:233
-#: templates/js/translated/table_filters.js:672
+#: templates/js/translated/table_filters.js:239
+#: templates/js/translated/table_filters.js:694
msgid "Subscribed"
msgstr ""
-#: templates/js/translated/table_filters.js:244
-#: templates/js/translated/table_filters.js:326
+#: templates/js/translated/table_filters.js:250
+#: templates/js/translated/table_filters.js:332
msgid "Is Serialized"
msgstr ""
-#: templates/js/translated/table_filters.js:247
-#: templates/js/translated/table_filters.js:333
+#: templates/js/translated/table_filters.js:253
+#: templates/js/translated/table_filters.js:339
msgid "Serial number GTE"
msgstr ""
-#: templates/js/translated/table_filters.js:248
-#: templates/js/translated/table_filters.js:334
+#: templates/js/translated/table_filters.js:254
+#: templates/js/translated/table_filters.js:340
msgid "Serial number greater than or equal to"
msgstr ""
-#: templates/js/translated/table_filters.js:251
-#: templates/js/translated/table_filters.js:337
+#: templates/js/translated/table_filters.js:257
+#: templates/js/translated/table_filters.js:343
msgid "Serial number LTE"
msgstr ""
-#: templates/js/translated/table_filters.js:252
-#: templates/js/translated/table_filters.js:338
+#: templates/js/translated/table_filters.js:258
+#: templates/js/translated/table_filters.js:344
msgid "Serial number less than or equal to"
msgstr ""
-#: templates/js/translated/table_filters.js:255
-#: templates/js/translated/table_filters.js:256
-#: templates/js/translated/table_filters.js:329
-#: templates/js/translated/table_filters.js:330
+#: templates/js/translated/table_filters.js:261
+#: templates/js/translated/table_filters.js:262
+#: templates/js/translated/table_filters.js:335
+#: templates/js/translated/table_filters.js:336
msgid "Serial number"
msgstr "Sarjanumero"
-#: templates/js/translated/table_filters.js:260
-#: templates/js/translated/table_filters.js:351
+#: templates/js/translated/table_filters.js:266
+#: templates/js/translated/table_filters.js:357
msgid "Batch code"
msgstr ""
-#: templates/js/translated/table_filters.js:271
-#: templates/js/translated/table_filters.js:613
+#: templates/js/translated/table_filters.js:277
+#: templates/js/translated/table_filters.js:635
msgid "Active parts"
msgstr ""
-#: templates/js/translated/table_filters.js:272
+#: templates/js/translated/table_filters.js:278
msgid "Show stock for active parts"
msgstr ""
-#: templates/js/translated/table_filters.js:277
+#: templates/js/translated/table_filters.js:283
msgid "Part is an assembly"
msgstr ""
-#: templates/js/translated/table_filters.js:281
+#: templates/js/translated/table_filters.js:287
msgid "Is allocated"
msgstr ""
-#: templates/js/translated/table_filters.js:282
+#: templates/js/translated/table_filters.js:288
msgid "Item has been allocated"
msgstr ""
-#: templates/js/translated/table_filters.js:287
+#: templates/js/translated/table_filters.js:293
msgid "Stock is available for use"
msgstr ""
-#: templates/js/translated/table_filters.js:292
+#: templates/js/translated/table_filters.js:298
msgid "Include stock in sublocations"
msgstr ""
-#: templates/js/translated/table_filters.js:297
+#: templates/js/translated/table_filters.js:303
msgid "Show stock items which are depleted"
msgstr ""
-#: templates/js/translated/table_filters.js:302
+#: templates/js/translated/table_filters.js:308
msgid "Show items which are in stock"
msgstr ""
-#: templates/js/translated/table_filters.js:306
+#: templates/js/translated/table_filters.js:312
msgid "In Production"
msgstr "Tuotannossa"
-#: templates/js/translated/table_filters.js:307
+#: templates/js/translated/table_filters.js:313
msgid "Show items which are in production"
msgstr ""
-#: templates/js/translated/table_filters.js:311
+#: templates/js/translated/table_filters.js:317
msgid "Include Variants"
msgstr ""
-#: templates/js/translated/table_filters.js:312
+#: templates/js/translated/table_filters.js:318
msgid "Include stock items for variant parts"
msgstr ""
-#: templates/js/translated/table_filters.js:316
+#: templates/js/translated/table_filters.js:322
msgid "Installed"
msgstr ""
-#: templates/js/translated/table_filters.js:317
+#: templates/js/translated/table_filters.js:323
msgid "Show stock items which are installed in another item"
msgstr ""
-#: templates/js/translated/table_filters.js:322
+#: templates/js/translated/table_filters.js:328
msgid "Show items which have been assigned to a customer"
msgstr ""
-#: templates/js/translated/table_filters.js:342
-#: templates/js/translated/table_filters.js:343
+#: templates/js/translated/table_filters.js:348
+#: templates/js/translated/table_filters.js:349
msgid "Stock status"
msgstr ""
-#: templates/js/translated/table_filters.js:346
+#: templates/js/translated/table_filters.js:352
msgid "Has batch code"
msgstr ""
-#: templates/js/translated/table_filters.js:354
-msgid "Tracked"
-msgstr ""
-
-#: templates/js/translated/table_filters.js:355
+#: templates/js/translated/table_filters.js:361
msgid "Stock item is tracked by either batch code or serial number"
msgstr ""
-#: templates/js/translated/table_filters.js:360
+#: templates/js/translated/table_filters.js:366
msgid "Has purchase price"
msgstr ""
-#: templates/js/translated/table_filters.js:361
+#: templates/js/translated/table_filters.js:367
msgid "Show stock items which have a purchase price set"
msgstr ""
-#: templates/js/translated/table_filters.js:365
+#: templates/js/translated/table_filters.js:371
msgid "Expiry Date before"
msgstr ""
-#: templates/js/translated/table_filters.js:369
+#: templates/js/translated/table_filters.js:375
msgid "Expiry Date after"
msgstr ""
-#: templates/js/translated/table_filters.js:382
+#: templates/js/translated/table_filters.js:388
msgid "Show stock items which have expired"
msgstr ""
-#: templates/js/translated/table_filters.js:388
+#: templates/js/translated/table_filters.js:394
msgid "Show stock which is close to expiring"
msgstr ""
-#: templates/js/translated/table_filters.js:402
+#: templates/js/translated/table_filters.js:408
msgid "Test Passed"
msgstr ""
-#: templates/js/translated/table_filters.js:406
+#: templates/js/translated/table_filters.js:412
msgid "Include Installed Items"
msgstr ""
-#: templates/js/translated/table_filters.js:445
+#: templates/js/translated/table_filters.js:451
msgid "Build status"
msgstr ""
-#: templates/js/translated/table_filters.js:625
+#: templates/js/translated/table_filters.js:647
msgid "Include parts in subcategories"
msgstr ""
-#: templates/js/translated/table_filters.js:630
+#: templates/js/translated/table_filters.js:652
msgid "Show active parts"
msgstr ""
-#: templates/js/translated/table_filters.js:638
+#: templates/js/translated/table_filters.js:660
msgid "Available stock"
msgstr ""
-#: templates/js/translated/table_filters.js:646
-#: templates/js/translated/table_filters.js:742
+#: templates/js/translated/table_filters.js:668
+#: templates/js/translated/table_filters.js:764
msgid "Has Units"
msgstr ""
-#: templates/js/translated/table_filters.js:647
+#: templates/js/translated/table_filters.js:669
msgid "Part has defined units"
msgstr ""
-#: templates/js/translated/table_filters.js:651
+#: templates/js/translated/table_filters.js:673
msgid "Has IPN"
msgstr ""
-#: templates/js/translated/table_filters.js:652
+#: templates/js/translated/table_filters.js:674
msgid "Part has internal part number"
msgstr ""
-#: templates/js/translated/table_filters.js:656
+#: templates/js/translated/table_filters.js:678
msgid "In stock"
msgstr ""
-#: templates/js/translated/table_filters.js:664
+#: templates/js/translated/table_filters.js:686
msgid "Purchasable"
msgstr ""
-#: templates/js/translated/table_filters.js:676
+#: templates/js/translated/table_filters.js:698
msgid "Has stocktake entries"
msgstr ""
-#: templates/js/translated/table_filters.js:738
+#: templates/js/translated/table_filters.js:760
msgid "Has Choices"
msgstr ""
@@ -12390,51 +12551,51 @@ msgstr ""
msgid "Select File Format"
msgstr ""
-#: templates/js/translated/tables.js:561
+#: templates/js/translated/tables.js:537
msgid "Loading data"
msgstr ""
-#: templates/js/translated/tables.js:564
+#: templates/js/translated/tables.js:540
msgid "rows per page"
msgstr ""
-#: templates/js/translated/tables.js:569
+#: templates/js/translated/tables.js:545
msgid "Showing all rows"
msgstr ""
-#: templates/js/translated/tables.js:571
+#: templates/js/translated/tables.js:547
msgid "Showing"
msgstr ""
-#: templates/js/translated/tables.js:571
+#: templates/js/translated/tables.js:547
msgid "to"
msgstr ""
-#: templates/js/translated/tables.js:571
+#: templates/js/translated/tables.js:547
msgid "of"
msgstr ""
-#: templates/js/translated/tables.js:571
+#: templates/js/translated/tables.js:547
msgid "rows"
msgstr ""
-#: templates/js/translated/tables.js:578
+#: templates/js/translated/tables.js:554
msgid "No matching results"
msgstr ""
-#: templates/js/translated/tables.js:581
+#: templates/js/translated/tables.js:557
msgid "Hide/Show pagination"
msgstr ""
-#: templates/js/translated/tables.js:587
+#: templates/js/translated/tables.js:563
msgid "Toggle"
msgstr ""
-#: templates/js/translated/tables.js:590
+#: templates/js/translated/tables.js:566
msgid "Columns"
msgstr ""
-#: templates/js/translated/tables.js:593
+#: templates/js/translated/tables.js:569
msgid "All"
msgstr "Kaikki"
@@ -12616,50 +12777,6 @@ msgstr "Sähköpostiasetukset"
msgid "Email settings not configured"
msgstr ""
-#: templates/stock_table.html:17
-msgid "Barcode Actions"
-msgstr ""
-
-#: templates/stock_table.html:28
-msgid "Stock Options"
-msgstr ""
-
-#: templates/stock_table.html:33
-msgid "Add to selected stock items"
-msgstr ""
-
-#: templates/stock_table.html:34
-msgid "Remove from selected stock items"
-msgstr ""
-
-#: templates/stock_table.html:35
-msgid "Stocktake selected stock items"
-msgstr ""
-
-#: templates/stock_table.html:36
-msgid "Move selected stock items"
-msgstr "Siirrä valitut varastokohteet"
-
-#: templates/stock_table.html:37
-msgid "Merge selected stock items"
-msgstr ""
-
-#: templates/stock_table.html:37
-msgid "Merge stock"
-msgstr ""
-
-#: templates/stock_table.html:38
-msgid "Order selected items"
-msgstr ""
-
-#: templates/stock_table.html:42
-msgid "Delete selected items"
-msgstr "Poista valitut kohteet"
-
-#: templates/stock_table.html:42
-msgid "Delete stock"
-msgstr ""
-
#: templates/yesnolabel.html:4
msgid "Yes"
msgstr "Kyllä"
@@ -12692,35 +12809,35 @@ msgstr "Oikeudet"
msgid "Important dates"
msgstr ""
-#: users/models.py:230
+#: users/models.py:236
msgid "Permission set"
msgstr ""
-#: users/models.py:238
+#: users/models.py:244
msgid "Group"
msgstr "Ryhmä"
-#: users/models.py:241
+#: users/models.py:247
msgid "View"
msgstr "Näytä"
-#: users/models.py:241
+#: users/models.py:247
msgid "Permission to view items"
msgstr "Oikeus tarkastella kohteita"
-#: users/models.py:243
+#: users/models.py:249
msgid "Permission to add items"
msgstr "Oikeus lisätä kohteita"
-#: users/models.py:245
+#: users/models.py:251
msgid "Change"
msgstr "Muuta"
-#: users/models.py:245
+#: users/models.py:251
msgid "Permissions to edit items"
msgstr "Oikeus muokata kohteita"
-#: users/models.py:247
+#: users/models.py:253
msgid "Permission to delete items"
msgstr "Oikeus poistaa kohteita"
diff --git a/InvenTree/locale/fr/LC_MESSAGES/django.po b/InvenTree/locale/fr/LC_MESSAGES/django.po
index ed9b7d90d3..1e19dc89c9 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: 2023-06-09 00:32+0000\n"
-"PO-Revision-Date: 2023-06-09 10:26\n"
+"POT-Creation-Date: 2023-06-20 07:01+0000\n"
+"PO-Revision-Date: 2023-06-20 07:06\n"
"Last-Translator: \n"
"Language-Team: French\n"
"Language: fr_FR\n"
@@ -49,26 +49,26 @@ msgstr "Les détails de l'erreur peuvent être trouvées dans le panneau d'admin
msgid "Enter date"
msgstr "Entrer la date"
-#: InvenTree/fields.py:206 InvenTree/models.py:766 build/serializers.py:427
-#: build/serializers.py:506 build/templates/build/sidebar.html:23
-#: company/models.py:597 company/templates/company/sidebar.html:35
-#: order/models.py:1089 order/templates/order/po_sidebar.html:11
+#: InvenTree/fields.py:206 InvenTree/models.py:766 build/serializers.py:435
+#: build/serializers.py:514 build/templates/build/sidebar.html:21
+#: company/models.py:746 company/templates/company/sidebar.html:37
+#: order/models.py:1102 order/templates/order/po_sidebar.html:11
#: order/templates/order/return_order_sidebar.html:9
#: order/templates/order/so_sidebar.html:17 part/admin.py:41
-#: part/models.py:3005 part/templates/part/part_sidebar.html:63
+#: part/models.py:3039 part/templates/part/part_sidebar.html:63
#: report/templates/report/inventree_build_order_base.html:172
#: stock/admin.py:121 stock/models.py:2160 stock/models.py:2268
-#: stock/serializers.py:342 stock/serializers.py:475 stock/serializers.py:556
-#: stock/serializers.py:839 stock/serializers.py:938 stock/serializers.py:1070
-#: stock/templates/stock/stock_sidebar.html:25
-#: templates/js/translated/barcode.js:143 templates/js/translated/bom.js:1224
-#: templates/js/translated/company.js:1294 templates/js/translated/order.js:347
-#: templates/js/translated/part.js:1054
-#: templates/js/translated/purchase_order.js:2168
-#: templates/js/translated/return_order.js:760
-#: templates/js/translated/sales_order.js:1055
-#: templates/js/translated/sales_order.js:1959
-#: templates/js/translated/stock.js:1460 templates/js/translated/stock.js:2164
+#: stock/serializers.py:408 stock/serializers.py:542 stock/serializers.py:623
+#: stock/serializers.py:681 stock/serializers.py:956 stock/serializers.py:1055
+#: stock/serializers.py:1187 stock/templates/stock/stock_sidebar.html:25
+#: templates/js/translated/barcode.js:143 templates/js/translated/bom.js:1244
+#: templates/js/translated/company.js:1715 templates/js/translated/order.js:347
+#: templates/js/translated/part.js:1053
+#: templates/js/translated/purchase_order.js:2178
+#: templates/js/translated/return_order.js:772
+#: templates/js/translated/sales_order.js:1067
+#: templates/js/translated/sales_order.js:1971
+#: templates/js/translated/stock.js:1459 templates/js/translated/stock.js:2321
msgid "Notes"
msgstr "Notes"
@@ -81,47 +81,51 @@ msgstr "La valeur '{name}' n'apparaît pas dans le format du modèle"
msgid "Provided value does not match required pattern: "
msgstr "La valeur fournie ne correspond pas au modèle requis : "
-#: InvenTree/forms.py:145
+#: InvenTree/forms.py:147
msgid "Enter password"
msgstr "Entrer le mot de passe"
-#: InvenTree/forms.py:146
+#: InvenTree/forms.py:148
msgid "Enter new password"
msgstr "Entrer le nouveau mot de passe"
-#: InvenTree/forms.py:155
+#: InvenTree/forms.py:157
msgid "Confirm password"
msgstr "Confirmez le mot de passe"
-#: InvenTree/forms.py:156
+#: InvenTree/forms.py:158
msgid "Confirm new password"
msgstr "Confirmer le nouveau mot de passe"
-#: InvenTree/forms.py:160
+#: InvenTree/forms.py:162
msgid "Old password"
msgstr "Ancien mot de passe"
-#: InvenTree/forms.py:179
+#: InvenTree/forms.py:181
msgid "Email (again)"
msgstr "Email (encore)"
-#: InvenTree/forms.py:183
+#: InvenTree/forms.py:185
msgid "Email address confirmation"
msgstr "Confirmation de l'adresse email"
-#: InvenTree/forms.py:204
+#: InvenTree/forms.py:206
msgid "You must type the same email each time."
msgstr "Vous devez taper le même e-mail à chaque fois."
-#: InvenTree/forms.py:230 InvenTree/forms.py:236
+#: InvenTree/forms.py:237 InvenTree/forms.py:243
msgid "The provided primary email address is not valid."
msgstr "L'adresse e-mail principale fournie n'est pas valide."
-#: InvenTree/forms.py:242
+#: InvenTree/forms.py:249
msgid "The provided email domain is not approved."
msgstr "Le domaine e-mail fourni n'est pas approuvé."
-#: InvenTree/helpers.py:462 order/models.py:442 order/models.py:611
+#: InvenTree/forms.py:345
+msgid "Registration is disabled."
+msgstr ""
+
+#: InvenTree/helpers.py:462 order/models.py:455 order/models.py:624
msgid "Invalid quantity provided"
msgstr "Quantité fournie invalide"
@@ -239,7 +243,7 @@ msgstr "Lien externe manquant"
#: InvenTree/models.py:486 stock/models.py:2262
#: templates/js/translated/attachment.js:119
-#: templates/js/translated/attachment.js:306
+#: templates/js/translated/attachment.js:316
msgid "Attachment"
msgstr "Pièce jointe"
@@ -247,29 +251,30 @@ msgstr "Pièce jointe"
msgid "Select file to attach"
msgstr "Sélectionnez un fichier à joindre"
-#: InvenTree/models.py:493 common/models.py:2695 company/models.py:132
-#: company/models.py:306 company/models.py:584 order/models.py:236
-#: order/models.py:1093 order/models.py:1453 part/admin.py:39
-#: part/models.py:901 part/templates/part/part_scheduling.html:11
+#: InvenTree/models.py:493 common/models.py:2681 company/models.py:128
+#: company/models.py:381 company/models.py:455 company/models.py:733
+#: order/models.py:240 order/models.py:1106 order/models.py:1466
+#: part/admin.py:39 part/models.py:902
+#: part/templates/part/part_scheduling.html:11
#: report/templates/report/inventree_build_order_base.html:164
-#: stock/admin.py:120 templates/js/translated/company.js:977
-#: templates/js/translated/company.js:1283 templates/js/translated/order.js:351
-#: templates/js/translated/part.js:2316
-#: templates/js/translated/purchase_order.js:2008
-#: templates/js/translated/purchase_order.js:2172
-#: templates/js/translated/return_order.js:764
-#: templates/js/translated/sales_order.js:1044
-#: templates/js/translated/sales_order.js:1964
+#: stock/admin.py:120 templates/js/translated/company.js:1350
+#: templates/js/translated/company.js:1704 templates/js/translated/order.js:351
+#: templates/js/translated/part.js:2392
+#: templates/js/translated/purchase_order.js:2018
+#: templates/js/translated/purchase_order.js:2182
+#: templates/js/translated/return_order.js:776
+#: templates/js/translated/sales_order.js:1056
+#: templates/js/translated/sales_order.js:1976
msgid "Link"
msgstr "Lien"
-#: InvenTree/models.py:494 build/models.py:291 part/models.py:902
+#: InvenTree/models.py:494 build/models.py:295 part/models.py:903
#: stock/models.py:735
msgid "Link to external URL"
msgstr "Lien vers une url externe"
#: InvenTree/models.py:497 templates/js/translated/attachment.js:120
-#: templates/js/translated/attachment.js:321
+#: templates/js/translated/attachment.js:331
msgid "Comment"
msgstr "Commentaire"
@@ -277,13 +282,13 @@ msgstr "Commentaire"
msgid "File comment"
msgstr "Commentaire du fichier"
-#: InvenTree/models.py:503 InvenTree/models.py:504 common/models.py:2154
-#: common/models.py:2155 common/models.py:2368 common/models.py:2369
-#: common/models.py:2625 common/models.py:2626 part/models.py:3013
-#: part/models.py:3101 part/models.py:3180 part/models.py:3200
-#: plugin/models.py:217 plugin/models.py:218
+#: InvenTree/models.py:503 InvenTree/models.py:504 common/models.py:2140
+#: common/models.py:2141 common/models.py:2354 common/models.py:2355
+#: common/models.py:2611 common/models.py:2612 part/models.py:3047
+#: part/models.py:3135 part/models.py:3214 part/models.py:3234
+#: plugin/models.py:218 plugin/models.py:219
#: report/templates/report/inventree_test_report_base.html:105
-#: templates/js/translated/stock.js:2773
+#: templates/js/translated/stock.js:2904
msgid "User"
msgstr "Utilisateur"
@@ -324,53 +329,54 @@ msgstr "Les noms dupliqués ne peuvent pas exister sous le même parent"
msgid "Invalid choice"
msgstr "Choix invalide"
-#: InvenTree/models.py:648 InvenTree/models.py:649 common/models.py:2354
-#: company/models.py:390 label/models.py:103 part/models.py:847
-#: part/models.py:3400 plugin/models.py:41 report/models.py:160
+#: InvenTree/models.py:648 InvenTree/models.py:649 common/models.py:2340
+#: company/models.py:539 label/models.py:111 part/models.py:848
+#: part/models.py:3434 plugin/models.py:42 report/models.py:160
#: templates/InvenTree/settings/mixins/urls.html:13
#: templates/InvenTree/settings/notifications.html:17
-#: templates/InvenTree/settings/plugin.html:80
+#: templates/InvenTree/settings/plugin.html:74
#: templates/InvenTree/settings/plugin_settings.html:22
-#: templates/js/translated/company.js:658
-#: templates/js/translated/company.js:706
-#: templates/js/translated/company.js:871
-#: templates/js/translated/company.js:1071 templates/js/translated/part.js:1160
-#: templates/js/translated/part.js:1447 templates/js/translated/part.js:1583
-#: templates/js/translated/part.js:2699 templates/js/translated/stock.js:2464
+#: templates/js/translated/company.js:665
+#: templates/js/translated/company.js:713
+#: templates/js/translated/company.js:940
+#: templates/js/translated/company.js:1196
+#: templates/js/translated/company.js:1444 templates/js/translated/part.js:1159
+#: templates/js/translated/part.js:1446 templates/js/translated/part.js:1582
+#: templates/js/translated/part.js:2684 templates/js/translated/stock.js:2595
msgid "Name"
msgstr "Nom"
-#: InvenTree/models.py:655 build/models.py:164
+#: InvenTree/models.py:655 build/models.py:168
#: build/templates/build/detail.html:24 common/models.py:111
-#: company/models.py:312 company/models.py:590
+#: company/models.py:461 company/models.py:739
#: company/templates/company/company_base.html:72
#: company/templates/company/manufacturer_part.html:75
-#: company/templates/company/supplier_part.html:108 label/models.py:110
-#: order/models.py:232 order/models.py:1117 part/admin.py:194 part/admin.py:276
-#: part/models.py:869 part/models.py:3416 part/templates/part/category.html:81
+#: company/templates/company/supplier_part.html:108 label/models.py:118
+#: order/models.py:232 order/models.py:1130 part/admin.py:194 part/admin.py:276
+#: part/models.py:870 part/models.py:3450 part/templates/part/category.html:81
#: part/templates/part/part_base.html:172
#: part/templates/part/part_scheduling.html:12 report/models.py:173
-#: report/models.py:587 report/models.py:631
+#: report/models.py:589 report/models.py:633
#: report/templates/report/inventree_build_order_base.html:117
#: stock/admin.py:41 stock/templates/stock/location.html:123
#: templates/InvenTree/settings/notifications.html:19
#: templates/InvenTree/settings/plugin_settings.html:27
#: templates/InvenTree/settings/settings_staff_js.html:75
-#: templates/js/translated/bom.js:632 templates/js/translated/bom.js:933
-#: templates/js/translated/build.js:2857 templates/js/translated/company.js:510
-#: templates/js/translated/company.js:988
-#: templates/js/translated/company.js:1251 templates/js/translated/order.js:298
-#: templates/js/translated/part.js:1212 templates/js/translated/part.js:1456
-#: templates/js/translated/part.js:1594 templates/js/translated/part.js:1933
-#: templates/js/translated/part.js:2247 templates/js/translated/part.js:2735
-#: templates/js/translated/part.js:2826
-#: templates/js/translated/purchase_order.js:1666
-#: templates/js/translated/purchase_order.js:1812
-#: templates/js/translated/purchase_order.js:1990
-#: templates/js/translated/return_order.js:302
-#: templates/js/translated/sales_order.js:790
-#: templates/js/translated/stock.js:1439 templates/js/translated/stock.js:1817
-#: templates/js/translated/stock.js:2496 templates/js/translated/stock.js:2568
+#: templates/js/translated/bom.js:633 templates/js/translated/bom.js:951
+#: templates/js/translated/build.js:2062 templates/js/translated/company.js:517
+#: templates/js/translated/company.js:1361
+#: templates/js/translated/company.js:1672 templates/js/translated/index.js:114
+#: templates/js/translated/order.js:298 templates/js/translated/part.js:1211
+#: templates/js/translated/part.js:1455 templates/js/translated/part.js:1593
+#: templates/js/translated/part.js:1932 templates/js/translated/part.js:2323
+#: templates/js/translated/part.js:2720 templates/js/translated/part.js:2811
+#: templates/js/translated/purchase_order.js:1681
+#: templates/js/translated/purchase_order.js:1827
+#: templates/js/translated/purchase_order.js:2000
+#: templates/js/translated/return_order.js:314
+#: templates/js/translated/sales_order.js:802
+#: templates/js/translated/stock.js:1438 templates/js/translated/stock.js:1974
+#: templates/js/translated/stock.js:2627 templates/js/translated/stock.js:2699
msgid "Description"
msgstr "Description"
@@ -383,7 +389,7 @@ msgid "parent"
msgstr "parent"
#: InvenTree/models.py:671 InvenTree/models.py:672
-#: templates/js/translated/part.js:2744 templates/js/translated/stock.js:2505
+#: templates/js/translated/part.js:2729 templates/js/translated/stock.js:2636
msgid "Path"
msgstr "Chemin d'accès"
@@ -419,12 +425,12 @@ msgstr "Erreur serveur"
msgid "An error has been logged by the server."
msgstr "Une erreur a été loguée par le serveur."
-#: InvenTree/serializers.py:60 part/models.py:3897
+#: InvenTree/serializers.py:60 part/models.py:3941
msgid "Must be a valid number"
msgstr "Doit être un nombre valide"
-#: InvenTree/serializers.py:90 company/models.py:154
-#: company/templates/company/company_base.html:107 part/models.py:2852
+#: InvenTree/serializers.py:90 company/models.py:150
+#: company/templates/company/company_base.html:107 part/models.py:2886
#: templates/InvenTree/settings/settings_staff_js.html:44
#: templates/currency_data.html:5
msgid "Currency"
@@ -497,130 +503,130 @@ 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:714
+#: InvenTree/settings.py:741
msgid "Czech"
msgstr "Tchèque"
-#: InvenTree/settings.py:715
+#: InvenTree/settings.py:742
msgid "Danish"
msgstr "Danois"
-#: InvenTree/settings.py:716
+#: InvenTree/settings.py:743
msgid "German"
msgstr "Allemand"
-#: InvenTree/settings.py:717
+#: InvenTree/settings.py:744
msgid "Greek"
msgstr "Grec"
-#: InvenTree/settings.py:718
+#: InvenTree/settings.py:745
msgid "English"
msgstr "Anglais"
-#: InvenTree/settings.py:719
+#: InvenTree/settings.py:746
msgid "Spanish"
msgstr "Espagnol"
-#: InvenTree/settings.py:720
+#: InvenTree/settings.py:747
msgid "Spanish (Mexican)"
msgstr "Espagnol (Mexique)"
-#: InvenTree/settings.py:721
+#: InvenTree/settings.py:748
msgid "Farsi / Persian"
msgstr "Farsi / Perse"
-#: InvenTree/settings.py:722
+#: InvenTree/settings.py:749
msgid "Finnish"
msgstr ""
-#: InvenTree/settings.py:723
+#: InvenTree/settings.py:750
msgid "French"
msgstr "Français"
-#: InvenTree/settings.py:724
+#: InvenTree/settings.py:751
msgid "Hebrew"
msgstr "Hébreu"
-#: InvenTree/settings.py:725
+#: InvenTree/settings.py:752
msgid "Hungarian"
msgstr "Hongrois"
-#: InvenTree/settings.py:726
+#: InvenTree/settings.py:753
msgid "Italian"
msgstr "Italien"
-#: InvenTree/settings.py:727
+#: InvenTree/settings.py:754
msgid "Japanese"
msgstr "Japonais"
-#: InvenTree/settings.py:728
+#: InvenTree/settings.py:755
msgid "Korean"
msgstr "Coréen"
-#: InvenTree/settings.py:729
+#: InvenTree/settings.py:756
msgid "Dutch"
msgstr "Néerlandais"
-#: InvenTree/settings.py:730
+#: InvenTree/settings.py:757
msgid "Norwegian"
msgstr "Norvégien"
-#: InvenTree/settings.py:731
+#: InvenTree/settings.py:758
msgid "Polish"
msgstr "Polonais"
-#: InvenTree/settings.py:732
+#: InvenTree/settings.py:759
msgid "Portuguese"
msgstr "Portugais"
-#: InvenTree/settings.py:733
+#: InvenTree/settings.py:760
msgid "Portuguese (Brazilian)"
msgstr "Portugais (Brésilien)"
-#: InvenTree/settings.py:734
+#: InvenTree/settings.py:761
msgid "Russian"
msgstr "Russe"
-#: InvenTree/settings.py:735
+#: InvenTree/settings.py:762
msgid "Slovenian"
msgstr "Slovénien"
-#: InvenTree/settings.py:736
+#: InvenTree/settings.py:763
msgid "Swedish"
msgstr "Suédois"
-#: InvenTree/settings.py:737
+#: InvenTree/settings.py:764
msgid "Thai"
msgstr "Thaïlandais"
-#: InvenTree/settings.py:738
+#: InvenTree/settings.py:765
msgid "Turkish"
msgstr "Turc"
-#: InvenTree/settings.py:739
+#: InvenTree/settings.py:766
msgid "Vietnamese"
msgstr "Vietnamien"
-#: InvenTree/settings.py:740
+#: InvenTree/settings.py:767
msgid "Chinese"
msgstr "Chinois"
-#: InvenTree/status.py:61 part/serializers.py:878
+#: InvenTree/status.py:68 part/serializers.py:940
msgid "Background worker check failed"
msgstr "Échec de la vérification du processus d'arrière-plan"
-#: InvenTree/status.py:65
+#: InvenTree/status.py:72
msgid "Email backend not configured"
msgstr "Backend d'email non configuré"
-#: InvenTree/status.py:68
+#: InvenTree/status.py:75
msgid "InvenTree system health checks failed"
msgstr "Échec des contrôles de santé du système"
#: InvenTree/status_codes.py:12 InvenTree/status_codes.py:40
#: InvenTree/status_codes.py:148 InvenTree/status_codes.py:167
#: InvenTree/status_codes.py:188 generic/states/tests.py:16
-#: templates/js/translated/table_filters.js:511
+#: templates/js/translated/table_filters.js:533
msgid "Pending"
msgstr "En attente"
@@ -630,7 +636,7 @@ msgstr "Placé"
#: InvenTree/status_codes.py:14 InvenTree/status_codes.py:151
#: InvenTree/status_codes.py:172 generic/states/tests.py:18
-#: order/templates/order/order_base.html:162
+#: order/templates/order/order_base.html:158
#: order/templates/order/sales_order_base.html:162
msgid "Complete"
msgstr "Terminé"
@@ -654,10 +660,10 @@ msgstr "Retourné"
msgid "In Progress"
msgstr "En Cours"
-#: InvenTree/status_codes.py:42 order/models.py:1332
-#: templates/js/translated/sales_order.js:1509
-#: templates/js/translated/sales_order.js:1630
-#: templates/js/translated/sales_order.js:1934
+#: InvenTree/status_codes.py:42 order/models.py:1345
+#: templates/js/translated/sales_order.js:1521
+#: templates/js/translated/sales_order.js:1642
+#: templates/js/translated/sales_order.js:1946
msgid "Shipped"
msgstr "Expédié"
@@ -689,7 +695,7 @@ msgstr "En quarantaine"
msgid "Legacy stock tracking entry"
msgstr "Ancienne entrée de suivi de stock"
-#: InvenTree/status_codes.py:93 templates/js/translated/stock.js:511
+#: InvenTree/status_codes.py:93 templates/js/translated/stock.js:510
msgid "Stock item created"
msgstr "Article en stock créé"
@@ -745,7 +751,7 @@ msgstr "Séparer de l'élément parent"
msgid "Split child item"
msgstr "Fractionner l'élément enfant"
-#: InvenTree/status_codes.py:120 templates/js/translated/stock.js:2243
+#: InvenTree/status_codes.py:120 templates/js/translated/stock.js:1769
msgid "Merged stock items"
msgstr "Articles de stock fusionnés"
@@ -765,7 +771,7 @@ msgstr "Sortie de l'ordre de construction terminée"
msgid "Build order output rejected"
msgstr ""
-#: InvenTree/status_codes.py:129 templates/js/translated/stock.js:1676
+#: InvenTree/status_codes.py:129 templates/js/translated/stock.js:1675
msgid "Consumed by build order"
msgstr "Consommé par ordre de construction"
@@ -781,7 +787,7 @@ msgstr ""
msgid "Returned against Return Order"
msgstr ""
-#: InvenTree/status_codes.py:141 templates/js/translated/table_filters.js:321
+#: InvenTree/status_codes.py:141 templates/js/translated/table_filters.js:327
msgid "Sent to customer"
msgstr "Envoyé au client"
@@ -849,83 +855,111 @@ msgstr "Les mots de passe doivent correspondre"
msgid "Wrong password provided"
msgstr "Mot de passe incorrect"
-#: InvenTree/views.py:651 templates/navbar.html:157
+#: InvenTree/views.py:653 templates/navbar.html:157
msgid "System Information"
msgstr "Informations système"
-#: InvenTree/views.py:658 templates/navbar.html:168
+#: InvenTree/views.py:660 templates/navbar.html:168
msgid "About InvenTree"
msgstr "À propos d'InvenTree"
-#: build/api.py:222
+#: build/api.py:242
msgid "Build must be cancelled before it can be deleted"
msgstr "La construction doit être annulée avant de pouvoir être supprimée"
-#: build/models.py:69 build/templates/build/build_base.html:9
+#: build/api.py:286 part/models.py:3833 templates/js/translated/bom.js:985
+#: templates/js/translated/bom.js:1025 templates/js/translated/build.js:2449
+#: templates/js/translated/table_filters.js:166
+#: templates/js/translated/table_filters.js:518
+msgid "Consumable"
+msgstr ""
+
+#: build/api.py:287 part/models.py:3827 part/templates/part/upload_bom.html:58
+#: templates/js/translated/bom.js:989 templates/js/translated/bom.js:1016
+#: templates/js/translated/build.js:2458
+#: templates/js/translated/table_filters.js:162
+#: templates/js/translated/table_filters.js:191
+#: templates/js/translated/table_filters.js:522
+msgid "Optional"
+msgstr ""
+
+#: build/api.py:288 templates/js/translated/table_filters.js:360
+#: templates/js/translated/table_filters.js:514
+msgid "Tracked"
+msgstr ""
+
+#: build/api.py:290 part/admin.py:64 templates/js/translated/build.js:1670
+#: templates/js/translated/build.js:2549
+#: templates/js/translated/sales_order.js:1918
+#: templates/js/translated/table_filters.js:506
+msgid "Allocated"
+msgstr ""
+
+#: build/models.py:73 build/templates/build/build_base.html:9
#: build/templates/build/build_base.html:27
#: report/templates/report/inventree_build_order_base.html:105
#: templates/email/build_order_completed.html:16
#: templates/email/overdue_build_order.html:15
-#: templates/js/translated/build.js:945 templates/js/translated/stock.js:2629
+#: templates/js/translated/build.js:953 templates/js/translated/stock.js:2760
msgid "Build Order"
msgstr "Ordre de Fabrication"
-#: build/models.py:70 build/templates/build/build_base.html:13
+#: build/models.py:74 build/templates/build/build_base.html:13
#: build/templates/build/index.html:8 build/templates/build/index.html:12
-#: order/templates/order/sales_order_detail.html:119
+#: order/templates/order/sales_order_detail.html:111
#: order/templates/order/so_sidebar.html:13
-#: part/templates/part/part_sidebar.html:22 templates/InvenTree/index.html:244
+#: part/templates/part/part_sidebar.html:22 templates/InvenTree/index.html:196
#: templates/InvenTree/search.html:141
#: templates/InvenTree/settings/sidebar.html:53
-#: templates/js/translated/search.js:228 users/models.py:42
+#: templates/js/translated/search.js:186 users/models.py:42
msgid "Build Orders"
msgstr "Ordres de Fabrication"
-#: build/models.py:111
+#: build/models.py:115
msgid "Invalid choice for parent build"
msgstr "Choix invalide pour la fabrication parente"
-#: build/models.py:155
+#: build/models.py:159
msgid "Build Order Reference"
msgstr "Référence de l' Ordre de Fabrication"
-#: build/models.py:156 order/models.py:359 order/models.py:765
-#: order/models.py:1087 order/models.py:1724 part/admin.py:278
-#: part/models.py:3798 part/templates/part/upload_bom.html:54
+#: build/models.py:160 order/models.py:372 order/models.py:778
+#: order/models.py:1100 order/models.py:1737 part/admin.py:278
+#: part/models.py:3842 part/templates/part/upload_bom.html:54
#: report/templates/report/inventree_bill_of_materials_report.html:139
#: report/templates/report/inventree_po_report_base.html:28
#: report/templates/report/inventree_return_order_report_base.html:26
#: report/templates/report/inventree_so_report_base.html:28
-#: templates/js/translated/bom.js:769 templates/js/translated/bom.js:943
-#: templates/js/translated/build.js:2098 templates/js/translated/order.js:291
+#: templates/js/translated/bom.js:770 templates/js/translated/bom.js:961
+#: templates/js/translated/build.js:2441 templates/js/translated/order.js:291
#: templates/js/translated/pricing.js:386
-#: templates/js/translated/purchase_order.js:2033
-#: templates/js/translated/return_order.js:713
-#: templates/js/translated/sales_order.js:1798
+#: templates/js/translated/purchase_order.js:2043
+#: templates/js/translated/return_order.js:725
+#: templates/js/translated/sales_order.js:1810
msgid "Reference"
msgstr "Référence"
-#: build/models.py:167
+#: build/models.py:171
msgid "Brief description of the build (optional)"
msgstr ""
-#: build/models.py:175 build/templates/build/build_base.html:183
+#: build/models.py:179 build/templates/build/build_base.html:184
#: build/templates/build/detail.html:87
msgid "Parent Build"
msgstr "Fabrication parente"
-#: build/models.py:176
+#: build/models.py:180
msgid "BuildOrder to which this build is allocated"
msgstr "BuildOrder associé a cette fabrication"
-#: build/models.py:181 build/templates/build/build_base.html:98
-#: build/templates/build/detail.html:29 company/models.py:775
-#: order/models.py:1195 order/models.py:1311 order/models.py:1312
-#: part/models.py:391 part/models.py:2865 part/models.py:2979
-#: part/models.py:3119 part/models.py:3138 part/models.py:3157
-#: part/models.py:3178 part/models.py:3270 part/models.py:3555
-#: part/models.py:3663 part/models.py:3763 part/models.py:4077
-#: part/serializers.py:842 part/serializers.py:1245
+#: build/models.py:185 build/templates/build/build_base.html:98
+#: build/templates/build/detail.html:29 company/models.py:924
+#: order/models.py:1208 order/models.py:1324 order/models.py:1325
+#: part/models.py:392 part/models.py:2899 part/models.py:3013
+#: part/models.py:3153 part/models.py:3172 part/models.py:3191
+#: part/models.py:3212 part/models.py:3304 part/models.py:3589
+#: part/models.py:3712 part/models.py:3807 part/models.py:4121
+#: part/serializers.py:904 part/serializers.py:1307
#: part/templates/part/part_app_base.html:8
#: part/templates/part/part_pricing.html:12
#: part/templates/part/upload_bom.html:52
@@ -935,266 +969,229 @@ msgstr "BuildOrder associé a cette fabrication"
#: report/templates/report/inventree_po_report_base.html:27
#: report/templates/report/inventree_return_order_report_base.html:24
#: report/templates/report/inventree_so_report_base.html:27
-#: stock/serializers.py:156 stock/serializers.py:509
+#: stock/serializers.py:205 stock/serializers.py:576
#: templates/InvenTree/search.html:82
#: templates/email/build_order_completed.html:17
#: templates/email/build_order_required_stock.html:17
#: templates/email/low_stock_notification.html:15
#: templates/email/overdue_build_order.html:16
-#: templates/js/translated/barcode.js:529 templates/js/translated/bom.js:631
-#: templates/js/translated/bom.js:768 templates/js/translated/bom.js:887
-#: templates/js/translated/build.js:1403 templates/js/translated/build.js:1965
-#: templates/js/translated/build.js:2464 templates/js/translated/build.js:2868
-#: templates/js/translated/company.js:337
-#: templates/js/translated/company.js:822
-#: templates/js/translated/company.js:929
-#: templates/js/translated/company.js:1169 templates/js/translated/part.js:1918
-#: templates/js/translated/part.js:1990 templates/js/translated/part.js:2216
-#: templates/js/translated/pricing.js:369
-#: templates/js/translated/purchase_order.js:746
-#: templates/js/translated/purchase_order.js:1274
-#: templates/js/translated/purchase_order.js:1811
-#: templates/js/translated/purchase_order.js:1975
-#: templates/js/translated/return_order.js:527
-#: templates/js/translated/return_order.js:694
-#: templates/js/translated/sales_order.js:285
-#: templates/js/translated/sales_order.js:1185
-#: templates/js/translated/sales_order.js:1584
-#: templates/js/translated/sales_order.js:1782
-#: templates/js/translated/stock.js:643 templates/js/translated/stock.js:809
-#: templates/js/translated/stock.js:1021 templates/js/translated/stock.js:1773
-#: templates/js/translated/stock.js:2594 templates/js/translated/stock.js:2831
-#: templates/js/translated/stock.js:2968
+#: templates/js/translated/barcode.js:529 templates/js/translated/bom.js:632
+#: templates/js/translated/bom.js:769 templates/js/translated/bom.js:905
+#: templates/js/translated/build.js:1289 templates/js/translated/build.js:1669
+#: templates/js/translated/build.js:2085 templates/js/translated/build.js:2261
+#: templates/js/translated/company.js:347
+#: templates/js/translated/company.js:1147
+#: templates/js/translated/company.js:1302
+#: templates/js/translated/company.js:1590 templates/js/translated/index.js:104
+#: templates/js/translated/part.js:1917 templates/js/translated/part.js:1989
+#: templates/js/translated/part.js:2292 templates/js/translated/pricing.js:369
+#: templates/js/translated/purchase_order.js:757
+#: templates/js/translated/purchase_order.js:1289
+#: templates/js/translated/purchase_order.js:1826
+#: templates/js/translated/purchase_order.js:1985
+#: templates/js/translated/return_order.js:539
+#: templates/js/translated/return_order.js:706
+#: templates/js/translated/sales_order.js:297
+#: templates/js/translated/sales_order.js:1197
+#: templates/js/translated/sales_order.js:1596
+#: templates/js/translated/sales_order.js:1794
+#: templates/js/translated/stock.js:642 templates/js/translated/stock.js:808
+#: templates/js/translated/stock.js:1020 templates/js/translated/stock.js:1913
+#: templates/js/translated/stock.js:2725 templates/js/translated/stock.js:2958
+#: templates/js/translated/stock.js:3095
msgid "Part"
msgstr "Pièce"
-#: build/models.py:189
+#: build/models.py:193
msgid "Select part to build"
msgstr "Sélectionnez la pièce à construire"
-#: build/models.py:194
+#: build/models.py:198
msgid "Sales Order Reference"
msgstr "Bon de commande de référence"
-#: build/models.py:198
+#: build/models.py:202
msgid "SalesOrder to which this build is allocated"
msgstr "Commande de vente à laquelle cette construction est allouée"
-#: build/models.py:203 build/serializers.py:942
-#: templates/js/translated/build.js:2452
-#: templates/js/translated/sales_order.js:1173
+#: build/models.py:207 build/serializers.py:946
+#: templates/js/translated/build.js:1657
+#: templates/js/translated/sales_order.js:1185
msgid "Source Location"
msgstr "Emplacement d'origine"
-#: build/models.py:207
+#: build/models.py:211
msgid "Select location to take stock from for this build (leave blank to take from any stock location)"
msgstr "Sélectionner l'emplacement à partir duquel le stock doit être pris pour cette construction (laisser vide pour prendre à partir de n'importe quel emplacement de stock)"
-#: build/models.py:212
+#: build/models.py:216
msgid "Destination Location"
msgstr "Emplacement cible"
-#: build/models.py:216
+#: build/models.py:220
msgid "Select location where the completed items will be stored"
msgstr "Sélectionnez l'emplacement où les éléments complétés seront stockés"
-#: build/models.py:220
+#: build/models.py:224
msgid "Build Quantity"
msgstr "Quantité a fabriquer"
-#: build/models.py:223
+#: build/models.py:227
msgid "Number of stock items to build"
msgstr "Nombre de stock items à construire"
-#: build/models.py:227
+#: build/models.py:231
msgid "Completed items"
msgstr "Articles terminés"
-#: build/models.py:229
+#: build/models.py:233
msgid "Number of stock items which have been completed"
msgstr "Nombre d'articles de stock qui ont été terminés"
-#: build/models.py:233
+#: build/models.py:237
msgid "Build Status"
msgstr "État de la construction"
-#: build/models.py:237
+#: build/models.py:241
msgid "Build status code"
msgstr "Code de statut de construction"
-#: build/models.py:246 build/serializers.py:269 order/serializers.py:506
-#: stock/models.py:739 templates/js/translated/purchase_order.js:1099
+#: build/models.py:250 build/serializers.py:277 order/serializers.py:512
+#: stock/models.py:739 templates/js/translated/purchase_order.js:1114
msgid "Batch Code"
msgstr "Code de lot"
-#: build/models.py:250 build/serializers.py:270
+#: build/models.py:254 build/serializers.py:278
msgid "Batch code for this build output"
msgstr "Code de lot pour ce build output"
-#: build/models.py:253 order/models.py:244 part/models.py:1038
+#: build/models.py:257 order/models.py:248 part/models.py:1039
#: part/templates/part/part_base.html:312
-#: templates/js/translated/return_order.js:327
-#: templates/js/translated/sales_order.js:815
+#: templates/js/translated/return_order.js:339
+#: templates/js/translated/sales_order.js:827
msgid "Creation Date"
msgstr "Date de création"
-#: build/models.py:257
+#: build/models.py:261
msgid "Target completion date"
msgstr "Date d'achèvement cible"
-#: build/models.py:258
+#: build/models.py:262
msgid "Target date for build completion. Build will be overdue after this date."
msgstr "Date cible pour l'achèvement de la construction. La construction sera en retard après cette date."
-#: build/models.py:261 order/models.py:409 order/models.py:1767
-#: templates/js/translated/build.js:2953
+#: build/models.py:265 order/models.py:422 order/models.py:1780
+#: templates/js/translated/build.js:2170
msgid "Completion Date"
msgstr "Date d'achèvement"
-#: build/models.py:267
+#: build/models.py:271
msgid "completed by"
msgstr "achevé par"
-#: build/models.py:275 templates/js/translated/build.js:2913
+#: build/models.py:279 templates/js/translated/build.js:2130
msgid "Issued by"
msgstr "Émis par"
-#: build/models.py:276
+#: build/models.py:280
msgid "User who issued this build order"
msgstr "Utilisateur ayant émis cette commande de construction"
-#: build/models.py:284 build/templates/build/build_base.html:204
-#: build/templates/build/detail.html:122 order/models.py:258
-#: order/templates/order/order_base.html:214
-#: order/templates/order/return_order_base.html:182
-#: order/templates/order/sales_order_base.html:222 part/models.py:1042
+#: build/models.py:288 build/templates/build/build_base.html:205
+#: build/templates/build/detail.html:122 order/models.py:262
+#: order/templates/order/order_base.html:217
+#: order/templates/order/return_order_base.html:189
+#: order/templates/order/sales_order_base.html:229 part/models.py:1043
#: part/templates/part/part_base.html:392
#: report/templates/report/inventree_build_order_base.html:158
-#: templates/js/translated/build.js:2925
-#: templates/js/translated/purchase_order.js:1723
-#: templates/js/translated/return_order.js:347
-#: templates/js/translated/table_filters.js:461
+#: templates/js/translated/build.js:2142
+#: templates/js/translated/purchase_order.js:1738
+#: templates/js/translated/return_order.js:359
+#: templates/js/translated/table_filters.js:467
msgid "Responsible"
msgstr "Responsable"
-#: build/models.py:285
+#: build/models.py:289
msgid "User or group responsible for this build order"
msgstr "Utilisateur ou groupe responsable de cet ordre de construction"
-#: build/models.py:290 build/templates/build/detail.html:108
+#: build/models.py:294 build/templates/build/detail.html:108
#: company/templates/company/manufacturer_part.html:107
#: company/templates/company/supplier_part.html:195
-#: order/templates/order/order_base.html:171
+#: order/templates/order/order_base.html:167
#: order/templates/order/return_order_base.html:146
#: order/templates/order/sales_order_base.html:181
#: part/templates/part/part_base.html:385 stock/models.py:733
#: stock/templates/stock/item_base.html:201
+#: templates/js/translated/company.js:1050
msgid "External Link"
msgstr "Lien Externe"
-#: build/models.py:295
+#: build/models.py:299
msgid "Build Priority"
msgstr "Priorité de fabrication"
-#: build/models.py:298
+#: build/models.py:302
msgid "Priority of this build order"
msgstr "Priorité de cet ordre de fabrication"
-#: build/models.py:536
+#: build/models.py:309 common/models.py:104 order/admin.py:17
+#: order/models.py:237 templates/InvenTree/settings/settings_staff_js.html:70
+#: templates/js/translated/build.js:2067
+#: templates/js/translated/purchase_order.js:1685
+#: templates/js/translated/return_order.js:318
+#: templates/js/translated/sales_order.js:806
+#: templates/js/translated/table_filters.js:24
+#: templates/project_code_data.html:6
+msgid "Project Code"
+msgstr ""
+
+#: build/models.py:310
+msgid "Project code for this build order"
+msgstr ""
+
+#: build/models.py:545
#, python-brace-format
msgid "Build order {build} has been completed"
msgstr "La commande de construction {build} a été effectuée"
-#: build/models.py:542
+#: build/models.py:551
msgid "A build order has been completed"
msgstr "Une commande de construction a été effectuée"
-#: build/models.py:744 build/models.py:811
+#: build/models.py:753 build/models.py:831
msgid "No build output specified"
msgstr "Pas d'ordre de production défini"
-#: build/models.py:747
+#: build/models.py:756
msgid "Build output is already completed"
msgstr "L'ordre de production a déjà été réalisé"
-#: build/models.py:750
+#: build/models.py:759
msgid "Build output does not match Build Order"
msgstr "L'ordre de production de correspond pas à l'ordre de commande"
-#: build/models.py:815 build/serializers.py:212 build/serializers.py:251
-#: build/serializers.py:811 order/models.py:440 order/serializers.py:379
-#: order/serializers.py:501 part/serializers.py:1087 part/serializers.py:1408
-#: stock/models.py:593 stock/models.py:1387 stock/serializers.py:315
+#: build/models.py:835 build/serializers.py:220 build/serializers.py:259
+#: build/serializers.py:819 order/models.py:453 order/serializers.py:385
+#: order/serializers.py:507 part/serializers.py:1149 part/serializers.py:1470
+#: stock/models.py:593 stock/models.py:1387 stock/serializers.py:381
msgid "Quantity must be greater than zero"
msgstr "La quantité doit être supérieure à zéro"
-#: build/models.py:820 build/serializers.py:217
+#: build/models.py:840 build/serializers.py:225
msgid "Quantity cannot be greater than the output quantity"
msgstr ""
-#: build/models.py:1272
-msgid "Build item must specify a build output, as master part is marked as trackable"
-msgstr "L'élément de construction doit spécifier une sortie de construction, la pièce maîtresse étant marquée comme objet traçable"
+#: build/models.py:1260
+msgid "Build object"
+msgstr ""
-#: build/models.py:1281
-#, python-brace-format
-msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})"
-msgstr "La quantité allouée ({q}) ne doit pas excéder la quantité disponible ({a})"
-
-#: build/models.py:1291 order/models.py:1601
-msgid "Stock item is over-allocated"
-msgstr "L'article de stock est suralloué"
-
-#: build/models.py:1297 order/models.py:1604
-msgid "Allocation quantity must be greater than zero"
-msgstr "La quantité allouée doit être supérieure à zéro"
-
-#: build/models.py:1303
-msgid "Quantity must be 1 for serialized stock"
-msgstr "La quantité doit être de 1 pour stock sérialisé"
-
-#: build/models.py:1360
-msgid "Selected stock item not found in BOM"
-msgstr "L'article du stock sélectionné n'a pas été trouvé dans la BOM"
-
-#: build/models.py:1438 stock/templates/stock/item_base.html:170
-#: templates/InvenTree/search.html:139 templates/js/translated/build.js:2841
-#: templates/navbar.html:38
-msgid "Build"
-msgstr "Assemblage"
-
-#: build/models.py:1439
-msgid "Build to allocate parts"
-msgstr "Construction à laquelle allouer des pièces"
-
-#: build/models.py:1455 build/serializers.py:791 order/serializers.py:1059
-#: order/serializers.py:1080 stock/serializers.py:413 stock/serializers.py:770
-#: stock/serializers.py:896 stock/templates/stock/item_base.html:10
-#: stock/templates/stock/item_base.html:23
-#: stock/templates/stock/item_base.html:195
-#: templates/js/translated/build.js:955 templates/js/translated/build.js:960
-#: templates/js/translated/build.js:2466 templates/js/translated/build.js:3038
-#: templates/js/translated/sales_order.js:286
-#: templates/js/translated/sales_order.js:1186
-#: templates/js/translated/sales_order.js:1485
-#: templates/js/translated/sales_order.js:1490
-#: templates/js/translated/sales_order.js:1591
-#: templates/js/translated/sales_order.js:1678
-#: templates/js/translated/stock.js:644 templates/js/translated/stock.js:810
-#: templates/js/translated/stock.js:2714
-msgid "Stock Item"
-msgstr "Article en stock"
-
-#: build/models.py:1456
-msgid "Source stock item"
-msgstr "Stock d'origine de l'article"
-
-#: build/models.py:1468 build/serializers.py:198 build/serializers.py:236
-#: build/templates/build/build_base.html:103
-#: build/templates/build/detail.html:34 common/models.py:2176
-#: order/models.py:1073 order/models.py:1645 order/serializers.py:1233
+#: build/models.py:1274 build/models.py:1556 build/serializers.py:206
+#: build/serializers.py:244 build/templates/build/build_base.html:103
+#: build/templates/build/detail.html:34 common/models.py:2162
+#: order/models.py:1086 order/models.py:1658 order/serializers.py:1239
#: order/templates/order/order_wizard/match_parts.html:30 part/admin.py:277
-#: part/forms.py:47 part/models.py:2992 part/models.py:3779
+#: part/forms.py:47 part/models.py:3026 part/models.py:3823
#: part/templates/part/part_pricing.html:16
#: part/templates/part/upload_bom.html:53
#: report/templates/report/inventree_bill_of_materials_report.html:138
@@ -1203,315 +1200,367 @@ msgstr "Stock d'origine de l'article"
#: report/templates/report/inventree_so_report_base.html:29
#: report/templates/report/inventree_test_report_base.html:90
#: report/templates/report/inventree_test_report_base.html:170
-#: stock/admin.py:103 stock/serializers.py:306
+#: stock/admin.py:103 stock/serializers.py:372
#: stock/templates/stock/item_base.html:288
#: stock/templates/stock/item_base.html:296
#: stock/templates/stock/item_base.html:343
#: templates/email/build_order_completed.html:18
-#: templates/js/translated/barcode.js:531 templates/js/translated/bom.js:770
-#: templates/js/translated/bom.js:951 templates/js/translated/build.js:504
-#: templates/js/translated/build.js:716 templates/js/translated/build.js:982
-#: templates/js/translated/build.js:1425 templates/js/translated/build.js:1991
-#: templates/js/translated/build.js:2467
-#: templates/js/translated/company.js:1428
-#: templates/js/translated/model_renderers.js:207
-#: templates/js/translated/order.js:304 templates/js/translated/part.js:935
-#: templates/js/translated/part.js:1784 templates/js/translated/part.js:3263
+#: templates/js/translated/barcode.js:531 templates/js/translated/bom.js:771
+#: templates/js/translated/bom.js:969 templates/js/translated/build.js:510
+#: templates/js/translated/build.js:722 templates/js/translated/build.js:1308
+#: templates/js/translated/build.js:1672 templates/js/translated/build.js:2283
+#: templates/js/translated/company.js:1849
+#: templates/js/translated/model_renderers.js:221
+#: templates/js/translated/order.js:304 templates/js/translated/part.js:934
+#: templates/js/translated/part.js:1783 templates/js/translated/part.js:3248
#: templates/js/translated/pricing.js:381
#: templates/js/translated/pricing.js:474
#: templates/js/translated/pricing.js:522
#: templates/js/translated/pricing.js:616
-#: templates/js/translated/purchase_order.js:749
-#: templates/js/translated/purchase_order.js:1815
-#: templates/js/translated/purchase_order.js:2039
-#: templates/js/translated/sales_order.js:302
-#: templates/js/translated/sales_order.js:1187
-#: templates/js/translated/sales_order.js:1504
-#: templates/js/translated/sales_order.js:1594
-#: templates/js/translated/sales_order.js:1684
-#: templates/js/translated/sales_order.js:1804
-#: templates/js/translated/stock.js:531 templates/js/translated/stock.js:669
-#: templates/js/translated/stock.js:840 templates/js/translated/stock.js:2758
-#: templates/js/translated/stock.js:2843
+#: templates/js/translated/purchase_order.js:760
+#: templates/js/translated/purchase_order.js:1830
+#: templates/js/translated/purchase_order.js:2049
+#: templates/js/translated/sales_order.js:314
+#: templates/js/translated/sales_order.js:1199
+#: templates/js/translated/sales_order.js:1516
+#: templates/js/translated/sales_order.js:1606
+#: templates/js/translated/sales_order.js:1696
+#: templates/js/translated/sales_order.js:1816
+#: templates/js/translated/stock.js:530 templates/js/translated/stock.js:668
+#: templates/js/translated/stock.js:839 templates/js/translated/stock.js:2889
+#: templates/js/translated/stock.js:2970
msgid "Quantity"
msgstr "Quantité"
-#: build/models.py:1469
+#: build/models.py:1275
+msgid "Required quantity for build order"
+msgstr ""
+
+#: build/models.py:1357
+msgid "Build item must specify a build output, as master part is marked as trackable"
+msgstr "L'élément de construction doit spécifier une sortie de construction, la pièce maîtresse étant marquée comme objet traçable"
+
+#: build/models.py:1366
+#, python-brace-format
+msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})"
+msgstr "La quantité allouée ({q}) ne doit pas excéder la quantité disponible ({a})"
+
+#: build/models.py:1376 order/models.py:1614
+msgid "Stock item is over-allocated"
+msgstr "L'article de stock est suralloué"
+
+#: build/models.py:1382 order/models.py:1617
+msgid "Allocation quantity must be greater than zero"
+msgstr "La quantité allouée doit être supérieure à zéro"
+
+#: build/models.py:1388
+msgid "Quantity must be 1 for serialized stock"
+msgstr "La quantité doit être de 1 pour stock sérialisé"
+
+#: build/models.py:1449
+msgid "Selected stock item does not match BOM line"
+msgstr ""
+
+#: build/models.py:1543 build/serializers.py:799 order/serializers.py:1065
+#: order/serializers.py:1086 stock/serializers.py:479 stock/serializers.py:887
+#: stock/serializers.py:1013 stock/templates/stock/item_base.html:10
+#: stock/templates/stock/item_base.html:23
+#: stock/templates/stock/item_base.html:195
+#: templates/js/translated/build.js:1671
+#: templates/js/translated/sales_order.js:298
+#: templates/js/translated/sales_order.js:1198
+#: templates/js/translated/sales_order.js:1497
+#: templates/js/translated/sales_order.js:1502
+#: templates/js/translated/sales_order.js:1603
+#: templates/js/translated/sales_order.js:1690
+#: templates/js/translated/stock.js:643 templates/js/translated/stock.js:809
+#: templates/js/translated/stock.js:2845
+msgid "Stock Item"
+msgstr "Article en stock"
+
+#: build/models.py:1544
+msgid "Source stock item"
+msgstr "Stock d'origine de l'article"
+
+#: build/models.py:1557
msgid "Stock quantity to allocate to build"
msgstr "Quantité de stock à allouer à la construction"
-#: build/models.py:1477
+#: build/models.py:1565
msgid "Install into"
msgstr "Installer dans"
-#: build/models.py:1478
+#: build/models.py:1566
msgid "Destination stock item"
msgstr "Stock de destination de l'article"
-#: build/serializers.py:148 build/serializers.py:820
-#: templates/js/translated/build.js:1413
+#: build/serializers.py:156 build/serializers.py:828
+#: templates/js/translated/build.js:1299
msgid "Build Output"
msgstr "Sortie d'assemblage"
-#: build/serializers.py:160
+#: build/serializers.py:168
msgid "Build output does not match the parent build"
msgstr "L'ordre de production ne correspond pas à l'ordre parent"
-#: build/serializers.py:164
+#: build/serializers.py:172
msgid "Output part does not match BuildOrder part"
msgstr "La pièce en sortie ne correspond pas à la pièce de l'ordre de construction"
-#: build/serializers.py:168
+#: build/serializers.py:176
msgid "This build output has already been completed"
msgstr "Cet ordre de production a déjà été produit"
-#: build/serializers.py:179
+#: build/serializers.py:187
msgid "This build output is not fully allocated"
msgstr "Cet ordre de production n'est pas complètement attribué"
-#: build/serializers.py:199 build/serializers.py:237
+#: build/serializers.py:207 build/serializers.py:245
msgid "Enter quantity for build output"
msgstr "Entrer la quantité désiré pour la fabrication"
-#: build/serializers.py:258
+#: build/serializers.py:266
msgid "Integer quantity required for trackable parts"
msgstr "Quantité entière requise pour les pièces à suivre"
-#: build/serializers.py:261
+#: build/serializers.py:269
msgid "Integer quantity required, as the bill of materials contains trackable parts"
msgstr "Quantité entière requise, car la facture de matériaux contient des pièces à puce"
-#: build/serializers.py:276 order/serializers.py:514 order/serializers.py:1237
-#: stock/serializers.py:324 templates/js/translated/purchase_order.js:1123
-#: templates/js/translated/stock.js:334 templates/js/translated/stock.js:532
+#: build/serializers.py:284 order/serializers.py:520 order/serializers.py:1243
+#: stock/serializers.py:390 templates/js/translated/purchase_order.js:1138
+#: templates/js/translated/stock.js:333 templates/js/translated/stock.js:531
msgid "Serial Numbers"
msgstr "Numéros de série"
-#: build/serializers.py:277
+#: build/serializers.py:285
msgid "Enter serial numbers for build outputs"
msgstr "Entrer les numéros de séries pour la fabrication"
-#: build/serializers.py:290
+#: build/serializers.py:298
msgid "Auto Allocate Serial Numbers"
msgstr "Allouer automatiquement les numéros de série"
-#: build/serializers.py:291
+#: build/serializers.py:299
msgid "Automatically allocate required items with matching serial numbers"
msgstr "Affecter automatiquement les éléments requis avec les numéros de série correspondants"
-#: build/serializers.py:326 stock/api.py:670
+#: build/serializers.py:334 stock/api.py:707
msgid "The following serial numbers already exist or are invalid"
msgstr "Les numéros de série suivants existent déjà, ou sont invalides"
-#: build/serializers.py:377 build/serializers.py:439 build/serializers.py:518
+#: build/serializers.py:385 build/serializers.py:447 build/serializers.py:526
msgid "A list of build outputs must be provided"
msgstr "Une liste d'ordre de production doit être fourni"
-#: build/serializers.py:415 build/serializers.py:488 order/serializers.py:487
-#: order/serializers.py:606 order/serializers.py:1588 part/serializers.py:854
-#: stock/serializers.py:335 stock/serializers.py:470 stock/serializers.py:551
-#: stock/serializers.py:931 stock/serializers.py:1173
+#: build/serializers.py:423 build/serializers.py:496 order/serializers.py:493
+#: order/serializers.py:612 order/serializers.py:1594 part/serializers.py:916
+#: stock/serializers.py:401 stock/serializers.py:537 stock/serializers.py:618
+#: stock/serializers.py:1048 stock/serializers.py:1290
#: stock/templates/stock/item_base.html:390
#: templates/js/translated/barcode.js:530
-#: templates/js/translated/barcode.js:778 templates/js/translated/build.js:967
-#: templates/js/translated/build.js:2006
-#: templates/js/translated/purchase_order.js:1148
-#: templates/js/translated/purchase_order.js:1238
-#: templates/js/translated/sales_order.js:1497
-#: templates/js/translated/sales_order.js:1605
-#: templates/js/translated/sales_order.js:1613
-#: templates/js/translated/sales_order.js:1692
-#: templates/js/translated/stock.js:645 templates/js/translated/stock.js:811
-#: templates/js/translated/stock.js:1023 templates/js/translated/stock.js:1937
-#: templates/js/translated/stock.js:2608
+#: templates/js/translated/barcode.js:778 templates/js/translated/build.js:980
+#: templates/js/translated/build.js:2298
+#: templates/js/translated/purchase_order.js:1163
+#: templates/js/translated/purchase_order.js:1253
+#: templates/js/translated/sales_order.js:1509
+#: templates/js/translated/sales_order.js:1617
+#: templates/js/translated/sales_order.js:1625
+#: templates/js/translated/sales_order.js:1704
+#: templates/js/translated/stock.js:644 templates/js/translated/stock.js:810
+#: templates/js/translated/stock.js:1022 templates/js/translated/stock.js:2094
+#: templates/js/translated/stock.js:2739
msgid "Location"
msgstr "Emplacement"
-#: build/serializers.py:416
+#: build/serializers.py:424
msgid "Stock location for scrapped outputs"
msgstr ""
-#: build/serializers.py:422
+#: build/serializers.py:430
msgid "Discard Allocations"
msgstr ""
-#: build/serializers.py:423
+#: build/serializers.py:431
msgid "Discard any stock allocations for scrapped outputs"
msgstr ""
-#: build/serializers.py:428
+#: build/serializers.py:436
msgid "Reason for scrapping build output(s)"
msgstr ""
-#: build/serializers.py:489
+#: build/serializers.py:497
msgid "Location for completed build outputs"
msgstr "Emplacement des ordres de production achevés"
-#: build/serializers.py:495 build/templates/build/build_base.html:151
-#: build/templates/build/detail.html:62 order/models.py:791
-#: order/models.py:1750 order/serializers.py:524 stock/admin.py:106
-#: stock/templates/stock/item_base.html:423
-#: templates/js/translated/barcode.js:252 templates/js/translated/build.js:2897
-#: templates/js/translated/purchase_order.js:1278
-#: templates/js/translated/purchase_order.js:1682
-#: templates/js/translated/return_order.js:319
-#: templates/js/translated/sales_order.js:807
-#: templates/js/translated/stock.js:1912 templates/js/translated/stock.js:2732
-#: templates/js/translated/stock.js:2859
+#: build/serializers.py:503 build/templates/build/build_base.html:152
+#: build/templates/build/detail.html:62 order/models.py:804
+#: order/models.py:1763 order/serializers.py:530 stock/admin.py:106
+#: stock/serializers.py:677 stock/templates/stock/item_base.html:423
+#: templates/js/translated/barcode.js:252 templates/js/translated/build.js:2114
+#: templates/js/translated/purchase_order.js:1293
+#: templates/js/translated/purchase_order.js:1697
+#: templates/js/translated/return_order.js:331
+#: templates/js/translated/sales_order.js:819
+#: templates/js/translated/stock.js:2069 templates/js/translated/stock.js:2863
+#: templates/js/translated/stock.js:2986
msgid "Status"
msgstr "État"
-#: build/serializers.py:501
+#: build/serializers.py:509
msgid "Accept Incomplete Allocation"
msgstr "Accepter l'allocation incomplète"
-#: build/serializers.py:502
+#: build/serializers.py:510
msgid "Complete outputs if stock has not been fully allocated"
msgstr "Compléter les sorties si le stock n'a pas été entièrement alloué"
-#: build/serializers.py:571
+#: build/serializers.py:579
msgid "Remove Allocated Stock"
msgstr "Supprimer le stock alloué"
-#: build/serializers.py:572
+#: build/serializers.py:580
msgid "Subtract any stock which has already been allocated to this build"
msgstr "Soustraire tout stock qui a déjà été alloué à cette construction"
-#: build/serializers.py:578
+#: build/serializers.py:586
msgid "Remove Incomplete Outputs"
msgstr "Retirer les sorties incomplètes"
-#: build/serializers.py:579
+#: build/serializers.py:587
msgid "Delete any build outputs which have not been completed"
msgstr "Supprimer toutes les sorties de construction qui n'ont pas été complétées"
-#: build/serializers.py:606
+#: build/serializers.py:614
msgid "Not permitted"
msgstr ""
-#: build/serializers.py:607
+#: build/serializers.py:615
msgid "Accept as consumed by this build order"
msgstr "Accepter comme consommé par cet ordre de construction"
-#: build/serializers.py:608
+#: build/serializers.py:616
msgid "Deallocate before completing this build order"
msgstr "Désaffecter avant de terminer cette commande de fabrication"
-#: build/serializers.py:631
+#: build/serializers.py:639
msgid "Overallocated Stock"
msgstr "Stock suralloué"
-#: build/serializers.py:633
+#: build/serializers.py:641
msgid "How do you want to handle extra stock items assigned to the build order"
msgstr "Comment voulez-vous gérer les articles en stock supplémentaires assignés à l'ordre de construction"
-#: build/serializers.py:643
+#: build/serializers.py:651
msgid "Some stock items have been overallocated"
msgstr "Certains articles de stock ont été suralloués"
-#: build/serializers.py:648
+#: build/serializers.py:656
msgid "Accept Unallocated"
msgstr "Accepter les non-alloués"
-#: build/serializers.py:649
+#: build/serializers.py:657
msgid "Accept that stock items have not been fully allocated to this build order"
msgstr "Accepter les articles de stock qui n'ont pas été complètement alloués à cette ordre de production"
-#: build/serializers.py:659 templates/js/translated/build.js:295
+#: build/serializers.py:667 templates/js/translated/build.js:304
msgid "Required stock has not been fully allocated"
msgstr "Le stock requis n'a pas encore été totalement alloué"
-#: build/serializers.py:664 order/serializers.py:261 order/serializers.py:1127
+#: build/serializers.py:672 order/serializers.py:267 order/serializers.py:1133
msgid "Accept Incomplete"
msgstr "Accepter les incomplèts"
-#: build/serializers.py:665
+#: build/serializers.py:673
msgid "Accept that the required number of build outputs have not been completed"
msgstr "Accepter que tous les ordres de production n'aient pas encore été achevés"
-#: build/serializers.py:675 templates/js/translated/build.js:299
+#: build/serializers.py:683 templates/js/translated/build.js:308
msgid "Required build quantity has not been completed"
msgstr "La quantité nécessaire n'a pas encore été complétée"
-#: build/serializers.py:684 templates/js/translated/build.js:283
+#: build/serializers.py:692 templates/js/translated/build.js:292
msgid "Build order has incomplete outputs"
msgstr "L'ordre de production a des sorties incomplètes"
-#: build/serializers.py:714 build/serializers.py:768 part/models.py:3686
-#: part/models.py:4069
-msgid "BOM Item"
-msgstr "Article du BOM"
+#: build/serializers.py:722
+msgid "Build Line"
+msgstr ""
-#: build/serializers.py:724
+#: build/serializers.py:732
msgid "Build output"
msgstr "Sortie d'assemblage"
-#: build/serializers.py:732
+#: build/serializers.py:740
msgid "Build output must point to the same build"
msgstr "La sortie de la construction doit pointer vers la même construction"
-#: build/serializers.py:782
+#: build/serializers.py:776
+msgid "Build Line Item"
+msgstr ""
+
+#: build/serializers.py:790
msgid "bom_item.part must point to the same part as the build order"
msgstr "bom_item.part doit pointer sur la même pièce que l'ordre de construction"
-#: build/serializers.py:797 stock/serializers.py:783
+#: build/serializers.py:805 stock/serializers.py:900
msgid "Item must be in stock"
msgstr "L'article doit être en stock"
-#: build/serializers.py:846 order/serializers.py:1117
+#: build/serializers.py:853 order/serializers.py:1123
#, python-brace-format
msgid "Available quantity ({q}) exceeded"
msgstr "Quantité disponible ({q}) dépassée"
-#: build/serializers.py:852
+#: build/serializers.py:859
msgid "Build output must be specified for allocation of tracked parts"
msgstr "La sortie de construction doit être spécifiée pour l'allocation des pièces suivies"
-#: build/serializers.py:859
+#: build/serializers.py:866
msgid "Build output cannot be specified for allocation of untracked parts"
msgstr "La sortie de la construction ne peut pas être spécifiée pour l'allocation des pièces non suivies"
-#: build/serializers.py:864
+#: build/serializers.py:871
msgid "This stock item has already been allocated to this build output"
msgstr "Cet article de stock a déjà été alloué à cette sortie de construction"
-#: build/serializers.py:887 order/serializers.py:1401
+#: build/serializers.py:894 order/serializers.py:1407
msgid "Allocation items must be provided"
msgstr "Les articles d'allocation doivent être fournis"
-#: build/serializers.py:943
+#: build/serializers.py:947
msgid "Stock location where parts are to be sourced (leave blank to take from any location)"
msgstr "Emplacement de stock où les pièces doivent être fournies (laissez vide pour les prendre à partir de n'importe quel emplacement)"
-#: build/serializers.py:951
+#: build/serializers.py:955
msgid "Exclude Location"
msgstr "Emplacements exclus"
-#: build/serializers.py:952
+#: build/serializers.py:956
msgid "Exclude stock items from this selected location"
msgstr "Exclure les articles de stock de cet emplacement sélectionné"
-#: build/serializers.py:957
+#: build/serializers.py:961
msgid "Interchangeable Stock"
msgstr "Stock interchangeable"
-#: build/serializers.py:958
+#: build/serializers.py:962
msgid "Stock items in multiple locations can be used interchangeably"
msgstr "Les articles de stock à plusieurs emplacements peuvent être utilisés de manière interchangeable"
-#: build/serializers.py:963
+#: build/serializers.py:967
msgid "Substitute Stock"
msgstr "Stock de substitution"
-#: build/serializers.py:964
+#: build/serializers.py:968
msgid "Allow allocation of substitute parts"
msgstr "Autoriser l'allocation de pièces de remplacement"
-#: build/serializers.py:969
+#: build/serializers.py:973
msgid "Optional Items"
msgstr "Objets Optionnels"
-#: build/serializers.py:970
+#: build/serializers.py:974
msgid "Allocate optional BOM items to build order"
msgstr "Affecter des éléments de nomenclature facultatifs à l'ordre de fabrication"
@@ -1540,6 +1589,7 @@ msgstr ""
#: part/templates/part/part_base.html:43
#: stock/templates/stock/item_base.html:41
#: stock/templates/stock/location.html:54
+#: templates/js/translated/filters.js:336
msgid "Barcode actions"
msgstr "Actions de code-barres"
@@ -1618,69 +1668,67 @@ msgstr "Compléter l'assemblage"
msgid "Build Description"
msgstr "Description de la construction"
-#: build/templates/build/build_base.html:117
+#: build/templates/build/build_base.html:118
msgid "No build outputs have been created for this build order"
msgstr "Aucune sortie de construction n'a été créée pour cet ordre de construction"
-#: build/templates/build/build_base.html:124
+#: build/templates/build/build_base.html:125
msgid "Build Order is ready to mark as completed"
msgstr "L'ordre de construction est prêt à être marqué comme terminé"
-#: build/templates/build/build_base.html:129
+#: build/templates/build/build_base.html:130
msgid "Build Order cannot be completed as outstanding outputs remain"
msgstr "L'ordre de construction ne peut pas être achevé car il reste des outputs en suspens"
-#: build/templates/build/build_base.html:134
+#: build/templates/build/build_base.html:135
msgid "Required build quantity has not yet been completed"
msgstr "Le nombre de constructions requis n'a pas encore été atteint"
-#: build/templates/build/build_base.html:139
+#: build/templates/build/build_base.html:140
msgid "Stock has not been fully allocated to this Build Order"
msgstr "Le stock n'a pas été entièrement alloué à cet ordre de construction"
-#: build/templates/build/build_base.html:160
-#: build/templates/build/detail.html:138 order/models.py:240
-#: order/models.py:1099 order/templates/order/order_base.html:190
+#: build/templates/build/build_base.html:161
+#: build/templates/build/detail.html:138 order/models.py:244
+#: order/models.py:1112 order/templates/order/order_base.html:186
#: order/templates/order/return_order_base.html:165
#: order/templates/order/sales_order_base.html:193
#: report/templates/report/inventree_build_order_base.html:125
-#: templates/js/translated/build.js:2945 templates/js/translated/part.js:1802
-#: templates/js/translated/purchase_order.js:1699
-#: templates/js/translated/purchase_order.js:2115
-#: templates/js/translated/return_order.js:335
-#: templates/js/translated/return_order.js:735
-#: templates/js/translated/sales_order.js:823
-#: templates/js/translated/sales_order.js:1847
+#: templates/js/translated/build.js:2162 templates/js/translated/part.js:1801
+#: templates/js/translated/purchase_order.js:1714
+#: templates/js/translated/purchase_order.js:2125
+#: templates/js/translated/return_order.js:347
+#: templates/js/translated/return_order.js:747
+#: templates/js/translated/sales_order.js:835
+#: templates/js/translated/sales_order.js:1859
msgid "Target Date"
msgstr "Date Cible"
-#: build/templates/build/build_base.html:165
+#: build/templates/build/build_base.html:166
#, python-format
msgid "This build was due on %(target)s"
msgstr "Cette construction était due le %(target)s"
-#: build/templates/build/build_base.html:165
-#: build/templates/build/build_base.html:222
-#: order/templates/order/order_base.html:126
+#: build/templates/build/build_base.html:166
+#: build/templates/build/build_base.html:223
+#: order/templates/order/order_base.html:122
#: order/templates/order/return_order_base.html:118
#: order/templates/order/sales_order_base.html:123
-#: templates/js/translated/table_filters.js:68
-#: templates/js/translated/table_filters.js:454
-#: templates/js/translated/table_filters.js:539
-#: templates/js/translated/table_filters.js:580
+#: templates/js/translated/table_filters.js:74
+#: templates/js/translated/table_filters.js:460
+#: templates/js/translated/table_filters.js:561
+#: templates/js/translated/table_filters.js:602
msgid "Overdue"
msgstr "En retard"
-#: build/templates/build/build_base.html:177
-#: build/templates/build/detail.html:67 build/templates/build/detail.html:149
-#: order/templates/order/sales_order_base.html:203
-#: templates/js/translated/table_filters.js:602
-msgid "Completed"
-msgstr "Terminé"
+#: build/templates/build/build_base.html:178
+#: build/templates/build/detail.html:67 build/templates/build/sidebar.html:13
+msgid "Completed Outputs"
+msgstr "Sorties de Construction terminées"
-#: build/templates/build/build_base.html:190
-#: build/templates/build/detail.html:101 order/api.py:1454 order/models.py:1304
-#: order/models.py:1403 order/models.py:1551
+#: build/templates/build/build_base.html:191
+#: build/templates/build/detail.html:101 order/api.py:1454 order/models.py:1317
+#: order/models.py:1416 order/models.py:1564
#: order/templates/order/sales_order_base.html:9
#: order/templates/order/sales_order_base.html:28
#: report/templates/report/inventree_build_order_base.html:135
@@ -1688,32 +1736,32 @@ msgstr "Terminé"
#: stock/templates/stock/item_base.html:370
#: templates/email/overdue_sales_order.html:15
#: templates/js/translated/pricing.js:915
-#: templates/js/translated/sales_order.js:757
-#: templates/js/translated/sales_order.js:980
-#: templates/js/translated/stock.js:2661
+#: templates/js/translated/sales_order.js:769
+#: templates/js/translated/sales_order.js:992
+#: templates/js/translated/stock.js:2792
msgid "Sales Order"
msgstr "Commandes"
-#: build/templates/build/build_base.html:197
+#: build/templates/build/build_base.html:198
#: build/templates/build/detail.html:115
#: report/templates/report/inventree_build_order_base.html:152
msgid "Issued By"
msgstr "Émis par"
-#: build/templates/build/build_base.html:211
-#: build/templates/build/detail.html:94 templates/js/translated/build.js:2862
+#: build/templates/build/build_base.html:212
+#: build/templates/build/detail.html:94 templates/js/translated/build.js:2079
msgid "Priority"
msgstr "Priorité"
-#: build/templates/build/build_base.html:273
+#: build/templates/build/build_base.html:274
msgid "Delete Build Order"
msgstr "Supprimer l'ordre de construction"
-#: build/templates/build/build_base.html:283
+#: build/templates/build/build_base.html:284
msgid "Build Order QR Code"
msgstr ""
-#: build/templates/build/build_base.html:295
+#: build/templates/build/build_base.html:296
msgid "Link Barcode to Build Order"
msgstr ""
@@ -1729,8 +1777,8 @@ msgstr "Stock d'origine"
msgid "Stock can be taken from any available location."
msgstr "Le stock peut être pris à partir de n'importe quel endroit disponible."
-#: build/templates/build/detail.html:49 order/models.py:1222
-#: templates/js/translated/purchase_order.js:2157
+#: build/templates/build/detail.html:49 order/models.py:1235
+#: templates/js/translated/purchase_order.js:2167
msgid "Destination"
msgstr "Destination"
@@ -1744,21 +1792,21 @@ msgstr "Pièces allouées"
#: build/templates/build/detail.html:80 stock/admin.py:105
#: stock/templates/stock/item_base.html:163
-#: templates/js/translated/build.js:1432
-#: templates/js/translated/model_renderers.js:212
-#: templates/js/translated/purchase_order.js:1244
-#: templates/js/translated/stock.js:1093 templates/js/translated/stock.js:1926
-#: templates/js/translated/stock.js:2866
-#: templates/js/translated/table_filters.js:259
-#: templates/js/translated/table_filters.js:350
+#: templates/js/translated/build.js:1319
+#: templates/js/translated/model_renderers.js:226
+#: templates/js/translated/purchase_order.js:1259
+#: templates/js/translated/stock.js:1092 templates/js/translated/stock.js:2083
+#: templates/js/translated/stock.js:2993
+#: templates/js/translated/table_filters.js:265
+#: templates/js/translated/table_filters.js:356
msgid "Batch"
msgstr "Lot"
#: build/templates/build/detail.html:133
-#: order/templates/order/order_base.html:177
+#: order/templates/order/order_base.html:173
#: order/templates/order/return_order_base.html:152
#: order/templates/order/sales_order_base.html:187
-#: templates/js/translated/build.js:2905
+#: templates/js/translated/build.js:2122
msgid "Created"
msgstr "Créé le"
@@ -1766,147 +1814,106 @@ msgstr "Créé le"
msgid "No target date set"
msgstr "Pas de date cible définie"
+#: build/templates/build/detail.html:149
+#: order/templates/order/sales_order_base.html:203
+#: templates/js/translated/table_filters.js:624
+msgid "Completed"
+msgstr "Terminé"
+
#: build/templates/build/detail.html:153
msgid "Build not complete"
msgstr "Compilation incomplète"
-#: build/templates/build/detail.html:164 build/templates/build/sidebar.html:19
+#: build/templates/build/detail.html:164 build/templates/build/sidebar.html:17
msgid "Child Build Orders"
msgstr "Commandes de constructions filles"
-#: build/templates/build/detail.html:179
+#: build/templates/build/detail.html:177
msgid "Allocate Stock to Build"
msgstr "Allouer le stock à la construction"
-#: build/templates/build/detail.html:183 templates/js/translated/build.js:2276
-msgid "Unallocate stock"
-msgstr "Désallouer le stock"
+#: build/templates/build/detail.html:181
+msgid "Deallocate stock"
+msgstr ""
+
+#: build/templates/build/detail.html:182
+msgid "Deallocate Stock"
+msgstr ""
#: build/templates/build/detail.html:184
-msgid "Unallocate Stock"
-msgstr "Désallouer le stock"
-
-#: build/templates/build/detail.html:186
msgid "Automatically allocate stock to build"
msgstr "Affecter automatiquement le stock à construire"
-#: build/templates/build/detail.html:187
+#: build/templates/build/detail.html:185
msgid "Auto Allocate"
msgstr "Allouer automatiquement"
-#: build/templates/build/detail.html:189
+#: build/templates/build/detail.html:187
msgid "Manually allocate stock to build"
msgstr "Allouer manuellement le stock à construire"
-#: build/templates/build/detail.html:190 build/templates/build/sidebar.html:8
+#: build/templates/build/detail.html:188 build/templates/build/sidebar.html:8
msgid "Allocate Stock"
msgstr "Allouer le stock"
-#: build/templates/build/detail.html:193
+#: build/templates/build/detail.html:191
msgid "Order required parts"
msgstr "Commander les pièces requises"
-#: build/templates/build/detail.html:194
-#: company/templates/company/detail.html:38
-#: company/templates/company/detail.html:86
-#: part/templates/part/category.html:184
-#: templates/js/translated/purchase_order.js:789
+#: build/templates/build/detail.html:192
+#: templates/js/translated/purchase_order.js:800
msgid "Order Parts"
msgstr "Commander des pièces"
-#: build/templates/build/detail.html:206
-msgid "Untracked stock has been fully allocated for this Build Order"
-msgstr "Le stock non suivi a été entièrement alloué pour cet ordre de construction"
-
#: build/templates/build/detail.html:210
-msgid "Untracked stock has not been fully allocated for this Build Order"
-msgstr "Du stock non suivi n'a pas été entièrement alloué pour cet ordre de construction"
-
-#: build/templates/build/detail.html:217
-msgid "Allocate selected items"
-msgstr "Allouer les éléments sélectionnés"
-
-#: build/templates/build/detail.html:227
-msgid "This Build Order does not have any associated untracked BOM items"
-msgstr "Cet ordre de construction n'a aucun objet de BOM non suivi associé"
-
-#: build/templates/build/detail.html:236
msgid "Incomplete Build Outputs"
msgstr "Sorties de construction incomplètes"
-#: build/templates/build/detail.html:240
+#: build/templates/build/detail.html:214
msgid "Create new build output"
msgstr "Créer une nouvelle sortie de construction"
-#: build/templates/build/detail.html:241
+#: build/templates/build/detail.html:215
msgid "New Build Output"
msgstr "Nouvelle sortie de construction"
-#: build/templates/build/detail.html:255
-msgid "Output Actions"
-msgstr "Actions de sortie"
-
-#: build/templates/build/detail.html:260
-msgid "Complete selected build outputs"
-msgstr "Compléter les sorties de construction sélectionnées"
-
-#: build/templates/build/detail.html:261
-msgid "Complete outputs"
-msgstr "Sortie complète"
-
-#: build/templates/build/detail.html:265
-msgid "Scrap selected build outputs"
-msgstr ""
-
-#: build/templates/build/detail.html:266
-msgid "Scrap outputs"
-msgstr ""
-
-#: build/templates/build/detail.html:270
-msgid "Delete selected build outputs"
-msgstr "Supprimer les sorties de construction sélectionnées"
-
-#: build/templates/build/detail.html:271
-msgid "Delete outputs"
-msgstr "Supprimer les sorties"
-
-#: build/templates/build/detail.html:288 build/templates/build/sidebar.html:11
+#: build/templates/build/detail.html:232 build/templates/build/sidebar.html:15
msgid "Consumed Stock"
msgstr ""
-#: build/templates/build/detail.html:300
+#: build/templates/build/detail.html:244
msgid "Completed Build Outputs"
msgstr "Sorties de Construction terminées"
-#: build/templates/build/detail.html:312 build/templates/build/sidebar.html:21
-#: company/templates/company/detail.html:261
-#: company/templates/company/manufacturer_part.html:151
+#: build/templates/build/detail.html:256 build/templates/build/sidebar.html:19
+#: company/templates/company/detail.html:229
+#: company/templates/company/manufacturer_part.html:141
#: company/templates/company/manufacturer_part_sidebar.html:9
-#: company/templates/company/sidebar.html:37
+#: company/templates/company/sidebar.html:39
#: order/templates/order/po_sidebar.html:9
-#: order/templates/order/purchase_order_detail.html:102
-#: order/templates/order/return_order_detail.html:74
+#: order/templates/order/purchase_order_detail.html:84
+#: order/templates/order/return_order_detail.html:70
#: order/templates/order/return_order_sidebar.html:7
-#: order/templates/order/sales_order_detail.html:134
-#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:234
-#: part/templates/part/part_sidebar.html:61 stock/templates/stock/item.html:117
+#: order/templates/order/sales_order_detail.html:124
+#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:217
+#: part/templates/part/part_sidebar.html:61 stock/templates/stock/item.html:109
#: stock/templates/stock/stock_sidebar.html:23
msgid "Attachments"
msgstr "Pieces jointes"
-#: build/templates/build/detail.html:327
+#: build/templates/build/detail.html:271
msgid "Build Notes"
msgstr "Notes de construction"
-#: build/templates/build/detail.html:502
+#: build/templates/build/detail.html:425
msgid "Allocation Complete"
msgstr "Allocation terminée"
-#: build/templates/build/detail.html:503
-msgid "All untracked stock items have been allocated"
-msgstr "Tous les articles de stock non suivis ont été alloués"
+#: build/templates/build/detail.html:426
+msgid "All lines have been fully allocated"
+msgstr ""
-#: build/templates/build/index.html:18 part/templates/part/detail.html:340
+#: build/templates/build/index.html:18 part/templates/part/detail.html:319
msgid "New Build Order"
msgstr "Nouvel ordre de construction"
@@ -1914,14 +1921,10 @@ msgstr "Nouvel ordre de construction"
msgid "Build Order Details"
msgstr "Détails de la commande de construction"
-#: build/templates/build/sidebar.html:14
+#: build/templates/build/sidebar.html:10
msgid "Incomplete Outputs"
msgstr "Sorties incomplètes"
-#: build/templates/build/sidebar.html:17
-msgid "Completed Outputs"
-msgstr "Sorties de Construction terminées"
-
#: common/files.py:63
#, python-brace-format
msgid "Unsupported file format: {fmt}"
@@ -1968,16 +1971,6 @@ msgstr "Mise à jour"
msgid "Timestamp of last update"
msgstr "Date de la dernière mise à jour"
-#: common/models.py:104 order/admin.py:17 order/models.py:234
-#: templates/InvenTree/settings/settings_staff_js.html:70
-#: templates/js/translated/purchase_order.js:1670
-#: templates/js/translated/return_order.js:306
-#: templates/js/translated/sales_order.js:794
-#: templates/js/translated/table_filters.js:24
-#: templates/project_code_data.html:6
-msgid "Project Code"
-msgstr ""
-
#: common/models.py:105
msgid "Unique project code"
msgstr ""
@@ -2261,9 +2254,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:1162 part/admin.py:55 part/models.py:3560
-#: report/models.py:166 templates/js/translated/table_filters.js:109
-#: templates/js/translated/table_filters.js:680
+#: common/models.py:1162 part/admin.py:55 part/models.py:3594
+#: report/models.py:166 templates/js/translated/table_filters.js:115
+#: templates/js/translated/table_filters.js:702
msgid "Template"
msgstr "Modèle"
@@ -2271,10 +2264,10 @@ msgstr "Modèle"
msgid "Parts are templates by default"
msgstr "Les pièces sont des templates par défaut"
-#: common/models.py:1169 part/admin.py:51 part/admin.py:283 part/models.py:996
-#: templates/js/translated/bom.js:1598
-#: templates/js/translated/table_filters.js:276
-#: templates/js/translated/table_filters.js:634
+#: common/models.py:1169 part/admin.py:51 part/admin.py:283 part/models.py:997
+#: templates/js/translated/bom.js:1618
+#: templates/js/translated/table_filters.js:282
+#: templates/js/translated/table_filters.js:656
msgid "Assembly"
msgstr "Assemblage"
@@ -2282,8 +2275,8 @@ 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:1176 part/admin.py:52 part/models.py:1002
-#: templates/js/translated/table_filters.js:642
+#: common/models.py:1176 part/admin.py:52 part/models.py:1003
+#: templates/js/translated/table_filters.js:664
msgid "Component"
msgstr "Composant"
@@ -2291,7 +2284,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:1183 part/admin.py:53 part/models.py:1013
+#: common/models.py:1183 part/admin.py:53 part/models.py:1014
msgid "Purchaseable"
msgstr "Achetable"
@@ -2299,8 +2292,8 @@ msgstr "Achetable"
msgid "Parts are purchaseable by default"
msgstr "Les pièces sont achetables par défaut"
-#: common/models.py:1190 part/admin.py:54 part/models.py:1018
-#: templates/js/translated/table_filters.js:668
+#: common/models.py:1190 part/admin.py:54 part/models.py:1019
+#: templates/js/translated/table_filters.js:690
msgid "Salable"
msgstr "Vendable"
@@ -2308,10 +2301,10 @@ msgstr "Vendable"
msgid "Parts are salable by default"
msgstr "Les pièces sont vendables par défaut"
-#: common/models.py:1197 part/admin.py:56 part/models.py:1008
-#: templates/js/translated/table_filters.js:117
-#: templates/js/translated/table_filters.js:193
-#: templates/js/translated/table_filters.js:684
+#: common/models.py:1197 part/admin.py:56 part/models.py:1009
+#: templates/js/translated/table_filters.js:123
+#: templates/js/translated/table_filters.js:199
+#: templates/js/translated/table_filters.js:706
msgid "Trackable"
msgstr "Traçable"
@@ -2319,10 +2312,10 @@ msgstr "Traçable"
msgid "Parts are trackable by default"
msgstr "Les pièces sont traçables par défaut"
-#: common/models.py:1204 part/admin.py:57 part/models.py:1028
+#: common/models.py:1204 part/admin.py:57 part/models.py:1029
#: part/templates/part/part_base.html:156
-#: templates/js/translated/table_filters.js:113
-#: templates/js/translated/table_filters.js:688
+#: templates/js/translated/table_filters.js:119
+#: templates/js/translated/table_filters.js:710
msgid "Virtual"
msgstr "Virtuelle"
@@ -2354,7 +2347,7 @@ msgstr "Stock initial"
msgid "Allow creation of initial stock when adding a new part"
msgstr "Permettre la création d'un stock initial lors de l'ajout d'une nouvelle pièce"
-#: common/models.py:1232 templates/js/translated/part.js:108
+#: common/models.py:1232 templates/js/translated/part.js:107
msgid "Initial Supplier Data"
msgstr "Données initiales du fournisseur"
@@ -2603,181 +2596,181 @@ msgid "Stock location default icon (empty means no icon)"
msgstr "Icône par défaut de l'emplacement du stock (vide signifie aucune icône)"
#: common/models.py:1471
+msgid "Show Installed Stock Items"
+msgstr ""
+
+#: common/models.py:1472
+msgid "Display installed stock items in stock tables"
+msgstr ""
+
+#: common/models.py:1478
msgid "Build Order Reference Pattern"
msgstr "Modèle de référence de commande de construction"
-#: common/models.py:1472
+#: common/models.py:1479
msgid "Required pattern for generating Build Order reference field"
msgstr "Modèle requis pour générer le champ de référence de l'ordre de construction"
-#: common/models.py:1478
+#: common/models.py:1485
msgid "Enable Return Orders"
msgstr ""
-#: common/models.py:1479
+#: common/models.py:1486
msgid "Enable return order functionality in the user interface"
msgstr ""
-#: common/models.py:1485
+#: common/models.py:1492
msgid "Return Order Reference Pattern"
msgstr ""
-#: common/models.py:1486
+#: common/models.py:1493
msgid "Required pattern for generating Return Order reference field"
msgstr ""
-#: common/models.py:1492
+#: common/models.py:1499
msgid "Edit Completed Return Orders"
msgstr ""
-#: common/models.py:1493
+#: common/models.py:1500
msgid "Allow editing of return orders after they have been completed"
msgstr ""
-#: common/models.py:1499
+#: common/models.py:1506
msgid "Sales Order Reference Pattern"
msgstr "Modèle de référence de bon de commande"
-#: common/models.py:1500
+#: common/models.py:1507
msgid "Required pattern for generating Sales Order reference field"
msgstr "Modèle requis pour générer le champ de référence du bon de commande"
-#: common/models.py:1506
+#: common/models.py:1513
msgid "Sales Order Default Shipment"
msgstr "Expédition par défaut du bon de commande"
-#: common/models.py:1507
+#: common/models.py:1514
msgid "Enable creation of default shipment with sales orders"
msgstr "Activer la création d'expédition par défaut avec les bons de commandes"
-#: common/models.py:1513
+#: common/models.py:1520
msgid "Edit Completed Sales Orders"
msgstr "Modifier les commandes de vente terminées"
-#: common/models.py:1514
+#: common/models.py:1521
msgid "Allow editing of sales orders after they have been shipped or completed"
msgstr "Autoriser la modification des commandes de vente après avoir été expédiées ou complétées"
-#: common/models.py:1520
+#: common/models.py:1527
msgid "Purchase Order Reference Pattern"
msgstr "Modèle de référence de commande d'achat"
-#: common/models.py:1521
+#: common/models.py:1528
msgid "Required pattern for generating Purchase Order reference field"
msgstr "Modèle requis pour générer le champ de référence de bon de commande"
-#: common/models.py:1527
+#: common/models.py:1534
msgid "Edit Completed Purchase Orders"
msgstr "Modifier les bons de commande terminés"
-#: common/models.py:1528
+#: common/models.py:1535
msgid "Allow editing of purchase orders after they have been shipped or completed"
msgstr "Autoriser la modification des bons de commande après avoir été expédiés ou complétés"
-#: common/models.py:1535
+#: common/models.py:1542
msgid "Enable password forgot"
msgstr "Activer les mots de passe oubliés"
-#: common/models.py:1536
+#: common/models.py:1543
msgid "Enable password forgot function on the login pages"
msgstr "Activer la fonction \"Mot de passe oublié\" sur les pages de connexion"
-#: common/models.py:1542
+#: common/models.py:1549
msgid "Enable registration"
msgstr "Activer les inscriptions"
-#: common/models.py:1543
+#: common/models.py:1550
msgid "Enable self-registration for users on the login pages"
msgstr "Activer l'auto-inscription pour les utilisateurs sur les pages de connexion"
-#: common/models.py:1549
+#: common/models.py:1556
msgid "Enable SSO"
msgstr "Activer le SSO"
-#: common/models.py:1550
+#: common/models.py:1557
msgid "Enable SSO on the login pages"
msgstr "Activer le SSO sur les pages de connexion"
-#: common/models.py:1556
+#: common/models.py:1563
msgid "Enable SSO registration"
msgstr "Activer l'inscription SSO"
-#: common/models.py:1557
+#: common/models.py:1564
msgid "Enable self-registration via SSO for users on the login pages"
msgstr "Activer l'auto-inscription via SSO pour les utilisateurs sur les pages de connexion"
-#: common/models.py:1563
+#: common/models.py:1570
msgid "Email required"
msgstr "Email requis"
-#: common/models.py:1564
+#: common/models.py:1571
msgid "Require user to supply mail on signup"
msgstr "Exiger que l'utilisateur fournisse un mail lors de l'inscription"
-#: common/models.py:1570
+#: common/models.py:1577
msgid "Auto-fill SSO users"
msgstr "Saisie automatique des utilisateurs SSO"
-#: common/models.py:1571
+#: common/models.py:1578
msgid "Automatically fill out user-details from SSO account-data"
msgstr "Remplir automatiquement les détails de l'utilisateur à partir des données de compte SSO"
-#: common/models.py:1577
+#: common/models.py:1584
msgid "Mail twice"
msgstr "Courriel en double"
-#: common/models.py:1578
+#: common/models.py:1585
msgid "On signup ask users twice for their mail"
msgstr "Lors de l'inscription, demandez deux fois aux utilisateurs leur mail"
-#: common/models.py:1584
+#: common/models.py:1591
msgid "Password twice"
msgstr "Mot de passe deux fois"
-#: common/models.py:1585
+#: common/models.py:1592
msgid "On signup ask users twice for their password"
msgstr "Lors de l'inscription, demandez deux fois aux utilisateurs leur mot de passe"
-#: common/models.py:1591
+#: common/models.py:1598
msgid "Allowed domains"
msgstr "Domaines autorisés"
-#: common/models.py:1592
+#: common/models.py:1599
msgid "Restrict signup to certain domains (comma-separated, starting with @)"
msgstr ""
-#: common/models.py:1598
+#: common/models.py:1605
msgid "Group on signup"
msgstr "Grouper sur inscription"
-#: common/models.py:1599
+#: common/models.py:1606
msgid "Group to which new users are assigned on registration"
msgstr "Groupe auquel les nouveaux utilisateurs sont assignés lors de l'inscription"
-#: common/models.py:1605
+#: common/models.py:1612
msgid "Enforce MFA"
msgstr "Forcer l'authentification multifacteurs"
-#: common/models.py:1606
+#: common/models.py:1613
msgid "Users must use multifactor security."
msgstr "Les utilisateurs doivent utiliser l'authentification multifacteurs."
-#: common/models.py:1612
+#: common/models.py:1619
msgid "Check plugins on startup"
msgstr "Vérifier les plugins au démarrage"
-#: common/models.py:1613
+#: common/models.py:1620
msgid "Check that all plugins are installed on startup - enable in container environments"
msgstr "Vérifier que tous les plugins sont installés au démarrage - activer dans les environnements conteneurs"
-#: common/models.py:1620
-msgid "Check plugin signatures"
-msgstr "Vérifier les signatures du plugin"
-
-#: common/models.py:1621
-msgid "Check and show signatures for plugins"
-msgstr "Vérifier et afficher les signatures des plugins"
-
#: common/models.py:1628
msgid "Enable URL integration"
msgstr "Activer l'intégration d'URL"
@@ -2850,7 +2843,7 @@ msgstr ""
msgid "Stocktake reports will be deleted after specified number of days"
msgstr "Les rapports d'inventaire seront supprimés après le nombre de jours spécifié"
-#: common/models.py:1710 common/models.py:2147
+#: common/models.py:1710 common/models.py:2133
msgid "Settings key (must be unique - case insensitive"
msgstr "Clé du paramètre (doit être unique - insensible à la casse)"
@@ -2891,528 +2884,513 @@ msgid "Show latest parts on the homepage"
msgstr "Afficher les derniers composants sur la page d'accueil"
#: common/models.py:1779
-msgid "Recent Part Count"
-msgstr "Nombre de composants récents"
-
-#: common/models.py:1780
-msgid "Number of recent parts to display on index page"
-msgstr "Nombre de pièces récentes à afficher sur la page d'index"
-
-#: common/models.py:1786
msgid "Show unvalidated BOMs"
msgstr "Afficher les listes de matériaux non validées"
-#: common/models.py:1787
+#: common/models.py:1780
msgid "Show BOMs that await validation on the homepage"
msgstr "Afficher les listes de matériaux en attente de validation sur la page d'accueil"
-#: common/models.py:1793
+#: common/models.py:1786
msgid "Show recent stock changes"
msgstr "Afficher les dernières modifications du stock"
-#: common/models.py:1794
+#: common/models.py:1787
msgid "Show recently changed stock items on the homepage"
msgstr "Afficher les articles de stock récemment modifiés sur la page d'accueil"
-#: common/models.py:1800
-msgid "Recent Stock Count"
-msgstr "Compte de stock récent"
-
-#: common/models.py:1801
-msgid "Number of recent stock items to display on index page"
-msgstr "Nombre d'éléments de stock récents à afficher sur la page d'index"
-
-#: common/models.py:1807
+#: common/models.py:1793
msgid "Show low stock"
msgstr "Afficher le stock faible"
-#: common/models.py:1808
+#: common/models.py:1794
msgid "Show low stock items on the homepage"
msgstr "Afficher les articles en stock bas sur la page d'accueil"
-#: common/models.py:1814
+#: common/models.py:1800
msgid "Show depleted stock"
msgstr "Afficher le stock épuisé"
-#: common/models.py:1815
+#: common/models.py:1801
msgid "Show depleted stock items on the homepage"
msgstr "Afficher les stocks épuisés sur la page d'accueil"
-#: common/models.py:1821
+#: common/models.py:1807
msgid "Show needed stock"
msgstr "Afficher le stock nécessaire"
-#: common/models.py:1822
+#: common/models.py:1808
msgid "Show stock items needed for builds on the homepage"
msgstr "Afficher les pièces en stock nécessaires pour les assemblages sur la page d'accueil"
-#: common/models.py:1828
+#: common/models.py:1814
msgid "Show expired stock"
msgstr "Afficher le stock expiré"
-#: common/models.py:1829
+#: common/models.py:1815
msgid "Show expired stock items on the homepage"
msgstr "Afficher les pièces en stock expirées sur la page d'accueil"
-#: common/models.py:1835
+#: common/models.py:1821
msgid "Show stale stock"
msgstr "Afficher le stock périmé"
-#: common/models.py:1836
+#: common/models.py:1822
msgid "Show stale stock items on the homepage"
msgstr "Afficher les articles de stock périmés sur la page d'accueil"
-#: common/models.py:1842
+#: common/models.py:1828
msgid "Show pending builds"
msgstr "Afficher les constructions en attente"
-#: common/models.py:1843
+#: common/models.py:1829
msgid "Show pending builds on the homepage"
msgstr "Afficher les constructions en attente sur la page d'accueil"
-#: common/models.py:1849
+#: common/models.py:1835
msgid "Show overdue builds"
msgstr "Afficher les constructions en retard"
-#: common/models.py:1850
+#: common/models.py:1836
msgid "Show overdue builds on the homepage"
msgstr "Afficher les constructions en retard sur la page d'accueil"
-#: common/models.py:1856
+#: common/models.py:1842
msgid "Show outstanding POs"
msgstr "Afficher les commandes en suspens"
-#: common/models.py:1857
+#: common/models.py:1843
msgid "Show outstanding POs on the homepage"
msgstr "Afficher les commandes en suspens sur la page d'accueil"
-#: common/models.py:1863
+#: common/models.py:1849
msgid "Show overdue POs"
msgstr "Afficher les commandes en retard"
-#: common/models.py:1864
+#: common/models.py:1850
msgid "Show overdue POs on the homepage"
msgstr "Afficher les commandes en retard sur la page d'accueil"
-#: common/models.py:1870
+#: common/models.py:1856
msgid "Show outstanding SOs"
msgstr "Afficher les envois en suspens"
-#: common/models.py:1871
+#: common/models.py:1857
msgid "Show outstanding SOs on the homepage"
msgstr "Afficher les envois en suspens sur la page d'accueil"
-#: common/models.py:1877
+#: common/models.py:1863
msgid "Show overdue SOs"
msgstr "Afficher les envois en retard"
-#: common/models.py:1878
+#: common/models.py:1864
msgid "Show overdue SOs on the homepage"
msgstr "Afficher les envois en retard sur la page d'accueil"
-#: common/models.py:1884
+#: common/models.py:1870
msgid "Show pending SO shipments"
msgstr ""
-#: common/models.py:1885
+#: common/models.py:1871
msgid "Show pending SO shipments on the homepage"
msgstr ""
-#: common/models.py:1891
+#: common/models.py:1877
msgid "Show News"
msgstr "Afficher les nouvelles"
-#: common/models.py:1892
+#: common/models.py:1878
msgid "Show news on the homepage"
msgstr "Afficher les nouvelles sur la page d'accueil"
-#: common/models.py:1898
+#: common/models.py:1884
msgid "Inline label display"
msgstr "Affichage du libellé en ligne"
-#: common/models.py:1899
+#: common/models.py:1885
msgid "Display PDF labels in the browser, instead of downloading as a file"
msgstr "Afficher les étiquettes PDF dans le navigateur, au lieu de les télécharger en tant que fichier"
-#: common/models.py:1905
+#: common/models.py:1891
msgid "Default label printer"
msgstr "Imprimante d'étiquettes par défaut"
-#: common/models.py:1906
+#: common/models.py:1892
msgid "Configure which label printer should be selected by default"
msgstr "Configurer quelle imprimante d'étiquette doit être sélectionnée par défaut"
-#: common/models.py:1912
+#: common/models.py:1898
msgid "Inline report display"
msgstr "Affichage du rapport en ligne"
-#: common/models.py:1913
+#: common/models.py:1899
msgid "Display PDF reports in the browser, instead of downloading as a file"
msgstr "Afficher les rapports PDF dans le navigateur, au lieu de les télécharger en tant que fichier"
-#: common/models.py:1919
+#: common/models.py:1905
msgid "Search Parts"
msgstr "Rechercher de pièces"
-#: common/models.py:1920
+#: common/models.py:1906
msgid "Display parts in search preview window"
msgstr "Afficher les pièces dans la fenêtre d'aperçu de la recherche"
-#: common/models.py:1926
+#: common/models.py:1912
msgid "Search Supplier Parts"
msgstr ""
-#: common/models.py:1927
+#: common/models.py:1913
msgid "Display supplier parts in search preview window"
msgstr "Afficher les pièces du fournisseur dans la fenêtre de prévisualisation de la recherche"
-#: common/models.py:1933
+#: common/models.py:1919
msgid "Search Manufacturer Parts"
msgstr "Rechercher les pièces du fabricant"
-#: common/models.py:1934
+#: common/models.py:1920
msgid "Display manufacturer parts in search preview window"
msgstr "Afficher les pièces du fabricant dans la fenêtre de prévisualisation de recherche"
-#: common/models.py:1940
+#: common/models.py:1926
msgid "Hide Inactive Parts"
msgstr "Masquer les pièces inactives"
-#: common/models.py:1941
+#: common/models.py:1927
msgid "Excluded inactive parts from search preview window"
msgstr "Exclure les pièces inactives de la fenêtre de prévisualisation de recherche"
-#: common/models.py:1947
+#: common/models.py:1933
msgid "Search Categories"
msgstr "Rechercher des catégories"
-#: common/models.py:1948
+#: common/models.py:1934
msgid "Display part categories in search preview window"
msgstr "Afficher les catégories de pièces dans la fenêtre de prévisualisation de recherche"
-#: common/models.py:1954
+#: common/models.py:1940
msgid "Search Stock"
msgstr "Rechercher dans le stock"
-#: common/models.py:1955
+#: common/models.py:1941
msgid "Display stock items in search preview window"
msgstr "Afficher les pièces en stock dans la fenêtre d'aperçu de la recherche"
-#: common/models.py:1961
+#: common/models.py:1947
msgid "Hide Unavailable Stock Items"
msgstr "Cacher les pièces indisponibles"
-#: common/models.py:1962
+#: common/models.py:1948
msgid "Exclude stock items which are not available from the search preview window"
msgstr "Exclure les articles en stock qui ne sont pas disponibles de la fenêtre de prévisualisation de recherche"
-#: common/models.py:1968
+#: common/models.py:1954
msgid "Search Locations"
msgstr "Chercher des Emplacements"
-#: common/models.py:1969
+#: common/models.py:1955
msgid "Display stock locations in search preview window"
msgstr "Afficher les emplacements dans la fenêtre d'aperçu de la recherche"
-#: common/models.py:1975
+#: common/models.py:1961
msgid "Search Companies"
msgstr "Rechercher les entreprises"
-#: common/models.py:1976
+#: common/models.py:1962
msgid "Display companies in search preview window"
msgstr "Afficher les entreprises dans la fenêtre de prévisualisation de recherche"
-#: common/models.py:1982
+#: common/models.py:1968
msgid "Search Build Orders"
msgstr "Rechercher les commandes de construction"
-#: common/models.py:1983
+#: common/models.py:1969
msgid "Display build orders in search preview window"
msgstr "Afficher les commandes de construction dans la fenêtre de prévisualisation de recherche"
-#: common/models.py:1989
+#: common/models.py:1975
msgid "Search Purchase Orders"
msgstr "Rechercher des bons de commande"
-#: common/models.py:1990
+#: common/models.py:1976
msgid "Display purchase orders in search preview window"
msgstr "Afficher les bons de commande dans la fenêtre de prévisualisation de recherche"
-#: common/models.py:1996
+#: common/models.py:1982
msgid "Exclude Inactive Purchase Orders"
msgstr "Exclure les bons de commande inactifs"
-#: common/models.py:1997
+#: common/models.py:1983
msgid "Exclude inactive purchase orders from search preview window"
msgstr "Exclure les commandes d’achat inactives de la fenêtre de prévisualisation de recherche"
-#: common/models.py:2003
+#: common/models.py:1989
msgid "Search Sales Orders"
msgstr "Rechercher les bons de commande"
-#: common/models.py:2004
+#: common/models.py:1990
msgid "Display sales orders in search preview window"
msgstr "Afficher les bons de commande dans la fenêtre de prévisualisation de la recherche"
-#: common/models.py:2010
+#: common/models.py:1996
msgid "Exclude Inactive Sales Orders"
msgstr "Exclure les bons de commande inactives"
-#: common/models.py:2011
+#: common/models.py:1997
msgid "Exclude inactive sales orders from search preview window"
msgstr "Exclure les bons de commande inactifs de la fenêtre de prévisualisation de recherche"
-#: common/models.py:2017
+#: common/models.py:2003
msgid "Search Return Orders"
msgstr ""
-#: common/models.py:2018
+#: common/models.py:2004
msgid "Display return orders in search preview window"
msgstr ""
-#: common/models.py:2024
+#: common/models.py:2010
msgid "Exclude Inactive Return Orders"
msgstr ""
-#: common/models.py:2025
+#: common/models.py:2011
msgid "Exclude inactive return orders from search preview window"
msgstr ""
-#: common/models.py:2031
+#: common/models.py:2017
msgid "Search Preview Results"
msgstr "Résultats de l'aperçu de la recherche"
-#: common/models.py:2032
+#: common/models.py:2018
msgid "Number of results to show in each section of the search preview window"
msgstr "Nombre de résultats à afficher dans chaque section de la fenêtre de prévisualisation de recherche"
-#: common/models.py:2038
+#: common/models.py:2024
msgid "Regex Search"
msgstr "Recherche Regex"
-#: common/models.py:2039
+#: common/models.py:2025
msgid "Enable regular expressions in search queries"
msgstr ""
-#: common/models.py:2045
+#: common/models.py:2031
msgid "Whole Word Search"
msgstr ""
-#: common/models.py:2046
+#: common/models.py:2032
msgid "Search queries return results for whole word matches"
msgstr ""
-#: common/models.py:2052
+#: common/models.py:2038
msgid "Show Quantity in Forms"
msgstr "Afficher la quantité dans les formulaires"
-#: common/models.py:2053
+#: common/models.py:2039
msgid "Display available part quantity in some forms"
msgstr "Afficher la quantité disponible dans certains formulaires"
-#: common/models.py:2059
+#: common/models.py:2045
msgid "Escape Key Closes Forms"
msgstr "La touche Echap ferme les formulaires"
-#: common/models.py:2060
+#: common/models.py:2046
msgid "Use the escape key to close modal forms"
msgstr "Utilisez la touche Echap pour fermer les formulaires modaux"
-#: common/models.py:2066
+#: common/models.py:2052
msgid "Fixed Navbar"
msgstr "Barre de navigation fixe"
-#: common/models.py:2067
+#: common/models.py:2053
msgid "The navbar position is fixed to the top of the screen"
msgstr "La position de la barre de navigation est fixée en haut de l'écran"
-#: common/models.py:2073
+#: common/models.py:2059
msgid "Date Format"
msgstr "Format de date"
-#: common/models.py:2074
+#: common/models.py:2060
msgid "Preferred format for displaying dates"
msgstr "Format préféré pour l'affichage des dates"
-#: common/models.py:2088 part/templates/part/detail.html:41
+#: common/models.py:2074 part/templates/part/detail.html:41
msgid "Part Scheduling"
msgstr "Planification des pièces"
-#: common/models.py:2089
+#: common/models.py:2075
msgid "Display part scheduling information"
msgstr "Afficher les informations de planification des pièces"
-#: common/models.py:2095 part/templates/part/detail.html:62
+#: common/models.py:2081 part/templates/part/detail.html:62
msgid "Part Stocktake"
msgstr "Inventaire des pièces"
-#: common/models.py:2096
+#: common/models.py:2082
msgid "Display part stocktake information (if stocktake functionality is enabled)"
msgstr ""
-#: common/models.py:2102
+#: common/models.py:2088
msgid "Table String Length"
msgstr "Longueur de la chaîne dans les Tableau"
-#: common/models.py:2103
+#: common/models.py:2089
msgid "Maximimum length limit for strings displayed in table views"
msgstr "Limite de longueur maximale pour les chaînes affichées dans les vues de la table"
-#: common/models.py:2112
+#: common/models.py:2098
msgid "Default part label template"
msgstr ""
-#: common/models.py:2113
+#: common/models.py:2099
msgid "The part label template to be automatically selected"
msgstr ""
-#: common/models.py:2121
+#: common/models.py:2107
msgid "Default stock item template"
msgstr ""
-#: common/models.py:2122
+#: common/models.py:2108
msgid "The stock item label template to be automatically selected"
msgstr ""
-#: common/models.py:2130
+#: common/models.py:2116
msgid "Default stock location label template"
msgstr ""
-#: common/models.py:2131
+#: common/models.py:2117
msgid "The stock location label template to be automatically selected"
msgstr ""
-#: common/models.py:2177
+#: common/models.py:2163
msgid "Price break quantity"
msgstr ""
-#: common/models.py:2184 company/serializers.py:434 order/admin.py:43
-#: order/models.py:1132 order/models.py:1939
-#: templates/js/translated/company.js:1433 templates/js/translated/part.js:1856
+#: common/models.py:2170 company/serializers.py:491 order/admin.py:43
+#: order/models.py:1145 order/models.py:1952
+#: templates/js/translated/company.js:1854 templates/js/translated/part.js:1855
#: templates/js/translated/pricing.js:621
-#: templates/js/translated/return_order.js:725
+#: templates/js/translated/return_order.js:737
msgid "Price"
msgstr "Prix"
-#: common/models.py:2185
+#: common/models.py:2171
msgid "Unit price at specified quantity"
msgstr ""
-#: common/models.py:2345 common/models.py:2523
+#: common/models.py:2331 common/models.py:2509
msgid "Endpoint"
msgstr ""
-#: common/models.py:2346
+#: common/models.py:2332
msgid "Endpoint at which this webhook is received"
msgstr ""
-#: common/models.py:2355
+#: common/models.py:2341
msgid "Name for this webhook"
msgstr ""
-#: common/models.py:2360 part/admin.py:50 part/models.py:1023
-#: plugin/models.py:47 templates/js/translated/table_filters.js:105
-#: templates/js/translated/table_filters.js:189
-#: templates/js/translated/table_filters.js:434
-#: templates/js/translated/table_filters.js:450
-#: templates/js/translated/table_filters.js:629
+#: common/models.py:2346 part/admin.py:50 part/models.py:1024
+#: plugin/models.py:48 templates/js/translated/table_filters.js:111
+#: templates/js/translated/table_filters.js:195
+#: templates/js/translated/table_filters.js:440
+#: templates/js/translated/table_filters.js:456
+#: templates/js/translated/table_filters.js:651
msgid "Active"
msgstr "Actif"
-#: common/models.py:2361
+#: common/models.py:2347
msgid "Is this webhook active"
msgstr "Ce webhook (lien de rappel HTTP) est-il actif"
-#: common/models.py:2375
+#: common/models.py:2361
msgid "Token"
msgstr "Jeton"
-#: common/models.py:2376
+#: common/models.py:2362
msgid "Token for access"
msgstr "Jeton d'accès"
-#: common/models.py:2383
+#: common/models.py:2369
msgid "Secret"
msgstr "Confidentiel"
-#: common/models.py:2384
+#: common/models.py:2370
msgid "Shared secret for HMAC"
msgstr ""
-#: common/models.py:2490
+#: common/models.py:2476
msgid "Message ID"
msgstr "ID message"
-#: common/models.py:2491
+#: common/models.py:2477
msgid "Unique identifier for this message"
msgstr "Identifiant unique pour ce message"
-#: common/models.py:2499
+#: common/models.py:2485
msgid "Host"
msgstr "Hôte"
-#: common/models.py:2500
+#: common/models.py:2486
msgid "Host from which this message was received"
msgstr "Hôte à partir duquel ce message a été reçu"
-#: common/models.py:2507
+#: common/models.py:2493
msgid "Header"
msgstr "Entête"
-#: common/models.py:2508
+#: common/models.py:2494
msgid "Header of this message"
msgstr "En-tête de ce message"
-#: common/models.py:2514
+#: common/models.py:2500
msgid "Body"
msgstr "Corps"
-#: common/models.py:2515
+#: common/models.py:2501
msgid "Body of this message"
msgstr "Corps de ce message"
-#: common/models.py:2524
+#: common/models.py:2510
msgid "Endpoint on which this message was received"
msgstr "Endpoint à partir duquel ce message a été reçu"
-#: common/models.py:2529
+#: common/models.py:2515
msgid "Worked on"
msgstr ""
-#: common/models.py:2530
+#: common/models.py:2516
msgid "Was the work on this message finished?"
msgstr "Le travail sur ce message est-il terminé ?"
-#: common/models.py:2684
+#: common/models.py:2670
msgid "Id"
msgstr "Id"
-#: common/models.py:2690 templates/js/translated/news.js:44
+#: common/models.py:2676 templates/js/translated/company.js:996
+#: templates/js/translated/news.js:44
msgid "Title"
msgstr "Titre"
-#: common/models.py:2700 templates/js/translated/news.js:60
+#: common/models.py:2686 templates/js/translated/news.js:60
msgid "Published"
msgstr "Publié"
-#: common/models.py:2705 templates/InvenTree/settings/plugin_settings.html:32
+#: common/models.py:2691 templates/InvenTree/settings/plugin_settings.html:32
#: templates/js/translated/news.js:56 templates/js/translated/plugin.js:106
msgid "Author"
msgstr "Auteur"
-#: common/models.py:2710 templates/js/translated/news.js:52
+#: common/models.py:2696 templates/js/translated/news.js:52
msgid "Summary"
msgstr "Résumé"
-#: common/models.py:2715
+#: common/models.py:2701
msgid "Read"
msgstr "Lu"
-#: common/models.py:2716
+#: common/models.py:2702
msgid "Was this news item read?"
msgstr "Cette nouvelle a-t-elle été lue ?"
-#: common/models.py:2736 company/models.py:143 part/models.py:914
+#: common/models.py:2722 company/models.py:139 part/models.py:915
#: report/templates/report/inventree_bill_of_materials_report.html:126
#: report/templates/report/inventree_bill_of_materials_report.html:148
#: report/templates/report/inventree_return_order_report_base.html:35
@@ -3422,7 +3400,7 @@ msgstr "Cette nouvelle a-t-elle été lue ?"
msgid "Image"
msgstr "Image"
-#: common/models.py:2737
+#: common/models.py:2723
msgid "Image file"
msgstr ""
@@ -3499,7 +3477,7 @@ msgstr "Description de la société"
#: company/models.py:113 company/templates/company/company_base.html:101
#: templates/InvenTree/settings/plugin_settings.html:54
-#: templates/js/translated/company.js:514
+#: templates/js/translated/company.js:521
msgid "Website"
msgstr "Site web"
@@ -3507,303 +3485,387 @@ msgstr "Site web"
msgid "Company website URL"
msgstr "Site Web de la société"
-#: company/models.py:118 company/templates/company/company_base.html:119
-msgid "Address"
-msgstr "Adresse"
-
-#: company/models.py:119
-msgid "Company address"
-msgstr "Adresse de l'entreprise"
-
-#: company/models.py:122
+#: company/models.py:118
msgid "Phone number"
msgstr "Numéro de téléphone"
-#: company/models.py:123
+#: company/models.py:119
msgid "Contact phone number"
msgstr "Numéro de téléphone de contact"
-#: company/models.py:126 company/templates/company/company_base.html:133
+#: company/models.py:122 company/templates/company/company_base.html:133
#: templates/InvenTree/settings/user.html:49
-#: templates/js/translated/company.js:659
+#: templates/js/translated/company.js:666
msgid "Email"
msgstr "E-mail"
-#: company/models.py:126
+#: company/models.py:122
msgid "Contact email address"
msgstr "Adresse e-mail de contact"
-#: company/models.py:129 company/templates/company/company_base.html:140
-#: order/models.py:266 order/templates/order/order_base.html:207
+#: company/models.py:125 company/templates/company/company_base.html:140
+#: order/models.py:270 order/templates/order/order_base.html:203
#: order/templates/order/return_order_base.html:175
#: order/templates/order/sales_order_base.html:215
msgid "Contact"
msgstr "Contact"
-#: company/models.py:130
+#: company/models.py:126
msgid "Point of contact"
msgstr "Point de contact"
-#: company/models.py:132
+#: company/models.py:128
msgid "Link to external company information"
msgstr "Lien externe vers les informations de l'entreprise"
-#: company/models.py:146
+#: company/models.py:142
msgid "is customer"
msgstr "est client"
-#: company/models.py:146
+#: company/models.py:142
msgid "Do you sell items to this company?"
msgstr "Vendez-vous des objets à cette entreprise?"
-#: company/models.py:148
+#: company/models.py:144
msgid "is supplier"
msgstr "est fournisseur"
-#: company/models.py:148
+#: company/models.py:144
msgid "Do you purchase items from this company?"
msgstr "Est-ce que vous achetez des articles à cette entreprise?"
-#: company/models.py:150
+#: company/models.py:146
msgid "is manufacturer"
msgstr "est fabricant"
-#: company/models.py:150
+#: company/models.py:146
msgid "Does this company manufacture parts?"
msgstr "Cette entreprise fabrique-t-elle des pièces?"
-#: company/models.py:157
+#: company/models.py:153
msgid "Default currency used for this company"
msgstr "Devise par défaut utilisée pour cette entreprise"
-#: company/models.py:223 company/templates/company/company_base.html:8
+#: company/models.py:235 company/models.py:328
+#: company/templates/company/company_base.html:8
#: company/templates/company/company_base.html:12
-#: templates/InvenTree/search.html:178 templates/js/translated/company.js:487
+#: templates/InvenTree/search.html:178 templates/js/translated/company.js:494
msgid "Company"
msgstr "Société"
-#: company/models.py:278 company/models.py:553 stock/models.py:675
-#: stock/serializers.py:155 stock/templates/stock/item_base.html:143
-#: templates/js/translated/bom.js:621
+#: company/models.py:324
+msgid "Company already has a primary address"
+msgstr ""
+
+#: company/models.py:329
+msgid "Select company"
+msgstr ""
+
+#: company/models.py:332
+msgid "Address title"
+msgstr ""
+
+#: company/models.py:333
+msgid "Title describing the address entry"
+msgstr ""
+
+#: company/models.py:337
+msgid "Primary address"
+msgstr ""
+
+#: company/models.py:338
+msgid "Set as primary address"
+msgstr ""
+
+#: company/models.py:341 templates/js/translated/company.js:941
+#: templates/js/translated/company.js:1002
+msgid "Line 1"
+msgstr ""
+
+#: company/models.py:342
+msgid "Address line 1"
+msgstr ""
+
+#: company/models.py:346 templates/js/translated/company.js:942
+#: templates/js/translated/company.js:1008
+msgid "Line 2"
+msgstr ""
+
+#: company/models.py:347
+msgid "Address line 2"
+msgstr ""
+
+#: company/models.py:351 company/models.py:352
+#: templates/js/translated/company.js:1014
+msgid "Postal code"
+msgstr ""
+
+#: company/models.py:356
+msgid "City/Region"
+msgstr ""
+
+#: company/models.py:357
+msgid "Postal code city/region"
+msgstr ""
+
+#: company/models.py:361
+msgid "State/Province"
+msgstr ""
+
+#: company/models.py:362
+msgid "State or province"
+msgstr ""
+
+#: company/models.py:366 templates/js/translated/company.js:1032
+msgid "Country"
+msgstr ""
+
+#: company/models.py:367
+msgid "Address country"
+msgstr ""
+
+#: company/models.py:371
+msgid "Courier shipping notes"
+msgstr ""
+
+#: company/models.py:372
+msgid "Notes for shipping courier"
+msgstr ""
+
+#: company/models.py:376
+msgid "Internal shipping notes"
+msgstr ""
+
+#: company/models.py:377
+msgid "Shipping notes for internal use"
+msgstr ""
+
+#: company/models.py:382
+msgid "Link to address information (external)"
+msgstr ""
+
+#: company/models.py:427 company/models.py:702 stock/models.py:675
+#: stock/serializers.py:204 stock/templates/stock/item_base.html:143
+#: templates/js/translated/bom.js:622
msgid "Base Part"
msgstr ""
-#: company/models.py:282 company/models.py:557
+#: company/models.py:431 company/models.py:706
msgid "Select part"
msgstr ""
-#: company/models.py:293 company/templates/company/company_base.html:77
+#: company/models.py:442 company/templates/company/company_base.html:77
#: company/templates/company/manufacturer_part.html:90
-#: company/templates/company/supplier_part.html:146 part/serializers.py:354
+#: company/templates/company/supplier_part.html:146 part/serializers.py:404
#: stock/templates/stock/item_base.html:208
-#: templates/js/translated/company.js:498
-#: templates/js/translated/company.js:824
-#: templates/js/translated/company.js:954
-#: templates/js/translated/company.js:1221
-#: templates/js/translated/table_filters.js:709
+#: templates/js/translated/company.js:505
+#: templates/js/translated/company.js:1149
+#: templates/js/translated/company.js:1327
+#: templates/js/translated/company.js:1642
+#: templates/js/translated/table_filters.js:731
msgid "Manufacturer"
msgstr "Fabricant"
-#: company/models.py:294
+#: company/models.py:443
msgid "Select manufacturer"
msgstr "Sélectionner un fabricant"
-#: company/models.py:300 company/templates/company/manufacturer_part.html:101
-#: company/templates/company/supplier_part.html:154 part/serializers.py:360
-#: templates/js/translated/company.js:340
-#: templates/js/translated/company.js:823
-#: templates/js/translated/company.js:970
-#: templates/js/translated/company.js:1240 templates/js/translated/part.js:1773
-#: templates/js/translated/purchase_order.js:1814
-#: templates/js/translated/purchase_order.js:2021
+#: company/models.py:449 company/templates/company/manufacturer_part.html:101
+#: company/templates/company/supplier_part.html:154 part/serializers.py:410
+#: templates/js/translated/company.js:350
+#: templates/js/translated/company.js:1148
+#: templates/js/translated/company.js:1343
+#: templates/js/translated/company.js:1661 templates/js/translated/part.js:1772
+#: templates/js/translated/purchase_order.js:1829
+#: templates/js/translated/purchase_order.js:2031
msgid "MPN"
msgstr ""
-#: company/models.py:301
+#: company/models.py:450
msgid "Manufacturer Part Number"
msgstr ""
-#: company/models.py:307
+#: company/models.py:456
msgid "URL for external manufacturer part link"
msgstr ""
-#: company/models.py:313
+#: company/models.py:462
msgid "Manufacturer part description"
msgstr ""
-#: company/models.py:360 company/models.py:384 company/models.py:578
+#: company/models.py:509 company/models.py:533 company/models.py:727
#: company/templates/company/manufacturer_part.html:7
#: company/templates/company/manufacturer_part.html:24
#: stock/templates/stock/item_base.html:218
msgid "Manufacturer Part"
msgstr "Pièces du fabricant"
-#: company/models.py:391
+#: company/models.py:540
msgid "Parameter name"
msgstr "Nom du paramètre"
-#: company/models.py:397
+#: company/models.py:546
#: report/templates/report/inventree_test_report_base.html:104
-#: stock/models.py:2255 templates/js/translated/company.js:872
-#: templates/js/translated/company.js:1077 templates/js/translated/part.js:1465
-#: templates/js/translated/stock.js:1446
+#: stock/models.py:2255 templates/js/translated/company.js:1197
+#: templates/js/translated/company.js:1450 templates/js/translated/part.js:1464
+#: templates/js/translated/stock.js:1445
msgid "Value"
msgstr "Valeur"
-#: company/models.py:398
+#: company/models.py:547
msgid "Parameter value"
msgstr "Valeur du paramètre"
-#: company/models.py:404 company/templates/company/supplier_part.html:169
-#: part/admin.py:40 part/models.py:987 part/models.py:3407
+#: company/models.py:553 company/templates/company/supplier_part.html:169
+#: part/admin.py:40 part/models.py:988 part/models.py:3441
#: part/templates/part/part_base.html:286
-#: templates/js/translated/company.js:1083 templates/js/translated/part.js:1484
-#: templates/js/translated/part.js:1588 templates/js/translated/part.js:2262
+#: templates/js/translated/company.js:1456 templates/js/translated/part.js:1483
+#: templates/js/translated/part.js:1587 templates/js/translated/part.js:2338
msgid "Units"
msgstr "Unités"
-#: company/models.py:405
+#: company/models.py:554
msgid "Parameter units"
msgstr "Unités du paramètre"
-#: company/models.py:498
+#: company/models.py:647
msgid "Pack units must be compatible with the base part units"
msgstr ""
-#: company/models.py:504
+#: company/models.py:653
msgid "Pack units must be greater than zero"
msgstr ""
-#: company/models.py:520
+#: company/models.py:669
msgid "Linked manufacturer part must reference the same base part"
msgstr "La pièce du fabricant liée doit faire référence à la même pièce de base"
-#: company/models.py:564 company/templates/company/company_base.html:82
-#: company/templates/company/supplier_part.html:130 order/models.py:382
-#: order/templates/order/order_base.html:140 part/bom.py:285 part/bom.py:313
-#: part/serializers.py:343 stock/templates/stock/item_base.html:225
+#: company/models.py:713 company/templates/company/company_base.html:82
+#: company/templates/company/supplier_part.html:130 order/models.py:395
+#: order/templates/order/order_base.html:136 part/bom.py:285 part/bom.py:313
+#: part/serializers.py:393 stock/templates/stock/item_base.html:225
#: templates/email/overdue_purchase_order.html:16
-#: templates/js/translated/company.js:339
-#: templates/js/translated/company.js:502
-#: templates/js/translated/company.js:1194 templates/js/translated/part.js:1741
+#: templates/js/translated/company.js:349
+#: templates/js/translated/company.js:509
+#: templates/js/translated/company.js:1615 templates/js/translated/part.js:1740
#: templates/js/translated/pricing.js:498
-#: templates/js/translated/purchase_order.js:1653
-#: templates/js/translated/table_filters.js:713
+#: templates/js/translated/purchase_order.js:1668
+#: templates/js/translated/table_filters.js:735
msgid "Supplier"
msgstr "Fournisseur"
-#: company/models.py:565
+#: company/models.py:714
msgid "Select supplier"
msgstr "Sélectionner un fournisseur"
-#: company/models.py:570 company/templates/company/supplier_part.html:140
-#: part/bom.py:286 part/bom.py:314 part/serializers.py:349
-#: templates/js/translated/company.js:338 templates/js/translated/part.js:1759
+#: company/models.py:719 company/templates/company/supplier_part.html:140
+#: part/bom.py:286 part/bom.py:314 part/serializers.py:399
+#: templates/js/translated/company.js:348 templates/js/translated/part.js:1758
#: templates/js/translated/pricing.js:510
-#: templates/js/translated/purchase_order.js:1813
-#: templates/js/translated/purchase_order.js:1996
+#: templates/js/translated/purchase_order.js:1828
+#: templates/js/translated/purchase_order.js:2006
msgid "SKU"
msgstr "SKU"
-#: company/models.py:571 part/serializers.py:349
+#: company/models.py:720 part/serializers.py:399
msgid "Supplier stock keeping unit"
msgstr "Unité de gestion des stocks des fournisseurs"
-#: company/models.py:579
+#: company/models.py:728
msgid "Select manufacturer part"
msgstr "Sélectionner un fabricant"
-#: company/models.py:585
+#: company/models.py:734
msgid "URL for external supplier part link"
msgstr "Lien de la pièce du fournisseur externe"
-#: company/models.py:591
+#: company/models.py:740
msgid "Supplier part description"
msgstr "Description de la pièce du fournisseur"
-#: company/models.py:596 company/templates/company/supplier_part.html:188
-#: part/admin.py:279 part/models.py:3801 part/templates/part/upload_bom.html:59
+#: company/models.py:745 company/templates/company/supplier_part.html:188
+#: part/admin.py:279 part/models.py:3845 part/templates/part/upload_bom.html:59
#: report/templates/report/inventree_bill_of_materials_report.html:140
#: report/templates/report/inventree_po_report_base.html:32
#: report/templates/report/inventree_return_order_report_base.html:27
#: report/templates/report/inventree_so_report_base.html:32
-#: stock/serializers.py:418
+#: stock/serializers.py:484
msgid "Note"
msgstr "Note"
-#: company/models.py:600 part/models.py:1919
+#: company/models.py:749 part/models.py:1921
msgid "base cost"
msgstr "coût de base"
-#: company/models.py:600 part/models.py:1919
+#: company/models.py:749 part/models.py:1921
msgid "Minimum charge (e.g. stocking fee)"
msgstr "Frais minimums (par exemple frais de stock)"
-#: company/models.py:602 company/templates/company/supplier_part.html:161
+#: company/models.py:751 company/templates/company/supplier_part.html:161
#: stock/admin.py:119 stock/models.py:701
#: stock/templates/stock/item_base.html:241
-#: templates/js/translated/company.js:1256
-#: templates/js/translated/stock.js:2160
+#: templates/js/translated/company.js:1677
+#: templates/js/translated/stock.js:2317
msgid "Packaging"
msgstr "Conditionnement"
-#: company/models.py:602
+#: company/models.py:751
msgid "Part packaging"
msgstr "Conditionnement de l'article"
-#: company/models.py:606 templates/js/translated/company.js:1261
-#: templates/js/translated/part.js:1793 templates/js/translated/part.js:1848
-#: templates/js/translated/purchase_order.js:300
-#: templates/js/translated/purchase_order.js:827
-#: templates/js/translated/purchase_order.js:1073
-#: templates/js/translated/purchase_order.js:2052
-#: templates/js/translated/purchase_order.js:2069
+#: company/models.py:755 templates/js/translated/company.js:1682
+#: templates/js/translated/part.js:1792 templates/js/translated/part.js:1847
+#: templates/js/translated/purchase_order.js:311
+#: templates/js/translated/purchase_order.js:842
+#: templates/js/translated/purchase_order.js:1088
+#: templates/js/translated/purchase_order.js:2062
+#: templates/js/translated/purchase_order.js:2079
msgid "Pack Quantity"
msgstr "Nombre de paquet"
-#: company/models.py:607
+#: company/models.py:756
msgid "Total quantity supplied in a single pack. Leave empty for single items."
msgstr ""
-#: company/models.py:624 part/models.py:1921
+#: company/models.py:773 part/models.py:1923
msgid "multiple"
msgstr "plusieurs"
-#: company/models.py:624
+#: company/models.py:773
msgid "Order multiple"
msgstr "Commande multiple"
-#: company/models.py:632 company/templates/company/supplier_part.html:115
+#: company/models.py:781 company/templates/company/supplier_part.html:115
#: templates/email/build_order_required_stock.html:19
#: templates/email/low_stock_notification.html:17
-#: templates/js/translated/bom.js:1127 templates/js/translated/build.js:2136
-#: templates/js/translated/build.js:3045
-#: templates/js/translated/model_renderers.js:205
-#: templates/js/translated/part.js:670 templates/js/translated/part.js:672
-#: templates/js/translated/part.js:677
-#: templates/js/translated/table_filters.js:286
-#: templates/js/translated/table_filters.js:492
+#: templates/js/translated/bom.js:1145 templates/js/translated/build.js:2490
+#: templates/js/translated/index.js:118
+#: templates/js/translated/model_renderers.js:219
+#: templates/js/translated/part.js:669 templates/js/translated/part.js:671
+#: templates/js/translated/part.js:676
+#: templates/js/translated/table_filters.js:292
+#: templates/js/translated/table_filters.js:510
msgid "Available"
msgstr "Disponible"
-#: company/models.py:633
+#: company/models.py:782
msgid "Quantity available from supplier"
msgstr "Quantité disponible auprès du fournisseur"
-#: company/models.py:637
+#: company/models.py:786
msgid "Availability Updated"
msgstr "Disponibilité mise à jour"
-#: company/models.py:638
+#: company/models.py:787
msgid "Date of last update of availability data"
msgstr "Date de dernière mise à jour des données de disponibilité"
-#: company/serializers.py:99
+#: company/serializers.py:156
msgid "Default currency used for this supplier"
msgstr "Devise par défaut utilisée pour ce fournisseur"
#: company/templates/company/company_base.html:22
-#: templates/js/translated/purchase_order.js:228
+#: templates/js/translated/purchase_order.js:239
msgid "Create Purchase Order"
msgstr "Créer une commande d'achat"
@@ -3816,7 +3878,7 @@ msgid "Edit company information"
msgstr "Éditer les informations sur la société"
#: company/templates/company/company_base.html:34
-#: templates/js/translated/company.js:436
+#: templates/js/translated/company.js:443
msgid "Edit Company"
msgstr "Editer la société"
@@ -3856,17 +3918,17 @@ msgstr "Télécharger l'image depuis l'URL"
msgid "Delete image"
msgstr "Supprimer image"
-#: company/templates/company/company_base.html:87 order/models.py:779
-#: order/models.py:1738 order/templates/order/return_order_base.html:132
+#: company/templates/company/company_base.html:87 order/models.py:792
+#: order/models.py:1751 order/templates/order/return_order_base.html:132
#: order/templates/order/sales_order_base.html:145 stock/models.py:720
-#: stock/models.py:721 stock/serializers.py:825
+#: stock/models.py:721 stock/serializers.py:942
#: stock/templates/stock/item_base.html:401
#: templates/email/overdue_sales_order.html:16
-#: templates/js/translated/company.js:494
-#: templates/js/translated/return_order.js:284
-#: templates/js/translated/sales_order.js:772
-#: templates/js/translated/stock.js:2696
-#: templates/js/translated/table_filters.js:717
+#: templates/js/translated/company.js:501
+#: templates/js/translated/return_order.js:296
+#: templates/js/translated/sales_order.js:784
+#: templates/js/translated/stock.js:2827
+#: templates/js/translated/table_filters.js:739
msgid "Customer"
msgstr "Client"
@@ -3874,6 +3936,13 @@ msgstr "Client"
msgid "Uses default currency"
msgstr "Utiliser la devise par défaut"
+#: company/templates/company/company_base.html:119 order/models.py:279
+#: order/templates/order/order_base.html:210
+#: order/templates/order/return_order_base.html:182
+#: order/templates/order/sales_order_base.html:222
+msgid "Address"
+msgstr "Adresse"
+
#: company/templates/company/company_base.html:126
msgid "Phone"
msgstr "Téléphone"
@@ -3906,7 +3975,7 @@ msgstr "Télécharger une image"
#: company/templates/company/detail.html:15
#: company/templates/company/manufacturer_part_sidebar.html:7
-#: templates/InvenTree/search.html:120 templates/js/translated/search.js:189
+#: templates/InvenTree/search.html:120 templates/js/translated/search.js:147
msgid "Supplier Parts"
msgstr "Pièce fournisseur"
@@ -3916,129 +3985,121 @@ msgstr "Créer une nouvelle pièce fournisseur"
#: company/templates/company/detail.html:20
#: company/templates/company/manufacturer_part.html:123
-#: part/templates/part/detail.html:381
+#: part/templates/part/detail.html:356
msgid "New Supplier Part"
msgstr "Nouvelle pièce fournisseur"
-#: company/templates/company/detail.html:37
-#: company/templates/company/detail.html:85
-#: part/templates/part/category.html:183
-msgid "Order parts"
-msgstr "Commander des composants"
-
-#: company/templates/company/detail.html:42
-#: company/templates/company/detail.html:90
-msgid "Delete parts"
-msgstr "Supprimer la pièce"
-
-#: company/templates/company/detail.html:43
-#: company/templates/company/detail.html:91
-msgid "Delete Parts"
-msgstr "Supprimer les pièces"
-
-#: company/templates/company/detail.html:62 templates/InvenTree/search.html:105
-#: templates/js/translated/search.js:193
+#: company/templates/company/detail.html:41 templates/InvenTree/search.html:105
+#: templates/js/translated/search.js:151
msgid "Manufacturer Parts"
msgstr "Pièces du fabricant"
-#: company/templates/company/detail.html:66
+#: company/templates/company/detail.html:45
msgid "Create new manufacturer part"
msgstr "Créer une nouvelle pièce de fabricant"
-#: company/templates/company/detail.html:67 part/templates/part/detail.html:411
+#: company/templates/company/detail.html:46 part/templates/part/detail.html:376
msgid "New Manufacturer Part"
msgstr "Nouvelle pièce de fabricant"
-#: company/templates/company/detail.html:108
+#: company/templates/company/detail.html:65
msgid "Supplier Stock"
msgstr "Stock fournisseur"
-#: company/templates/company/detail.html:118
+#: company/templates/company/detail.html:75
#: company/templates/company/sidebar.html:12
#: company/templates/company/supplier_part_sidebar.html:7
#: 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:108 part/templates/part/part_sidebar.html:35
-#: templates/InvenTree/index.html:275 templates/InvenTree/search.html:199
+#: part/templates/part/detail.html:106 part/templates/part/part_sidebar.html:35
+#: templates/InvenTree/index.html:227 templates/InvenTree/search.html:199
#: templates/InvenTree/settings/sidebar.html:55
-#: templates/js/translated/search.js:247 templates/navbar.html:50
+#: templates/js/translated/search.js:205 templates/navbar.html:50
#: users/models.py:43
msgid "Purchase Orders"
msgstr "Commandes d'achat"
-#: company/templates/company/detail.html:122
+#: company/templates/company/detail.html:79
#: order/templates/order/purchase_orders.html:17
msgid "Create new purchase order"
msgstr "Créer une commande d'achat"
-#: company/templates/company/detail.html:123
+#: company/templates/company/detail.html:80
#: order/templates/order/purchase_orders.html:18
msgid "New Purchase Order"
msgstr "Nouvelle commande achat"
-#: company/templates/company/detail.html:146
+#: company/templates/company/detail.html:101
#: company/templates/company/sidebar.html:21
#: 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:131 part/templates/part/part_sidebar.html:39
-#: templates/InvenTree/index.html:307 templates/InvenTree/search.html:219
+#: part/templates/part/detail.html:127 part/templates/part/part_sidebar.html:39
+#: templates/InvenTree/index.html:259 templates/InvenTree/search.html:219
#: templates/InvenTree/settings/sidebar.html:57
-#: templates/js/translated/search.js:261 templates/navbar.html:62
+#: templates/js/translated/search.js:219 templates/navbar.html:62
#: users/models.py:44
msgid "Sales Orders"
msgstr "Ventes"
-#: company/templates/company/detail.html:150
+#: company/templates/company/detail.html:105
#: order/templates/order/sales_orders.html:20
msgid "Create new sales order"
msgstr "Créer un nouvel ordre de vente"
-#: company/templates/company/detail.html:151
+#: company/templates/company/detail.html:106
#: order/templates/order/sales_orders.html:21
msgid "New Sales Order"
msgstr "Nouvelle commande de vente"
-#: company/templates/company/detail.html:173
-#: templates/js/translated/build.js:1976
+#: company/templates/company/detail.html:126
msgid "Assigned Stock"
msgstr "Stock affecté"
-#: company/templates/company/detail.html:191
+#: company/templates/company/detail.html:142
#: company/templates/company/sidebar.html:29
#: order/templates/order/return_order_base.html:13
#: order/templates/order/return_orders.html:8
#: order/templates/order/return_orders.html:15
#: templates/InvenTree/settings/sidebar.html:59
-#: templates/js/translated/search.js:274 templates/navbar.html:65
+#: templates/js/translated/search.js:232 templates/navbar.html:65
#: users/models.py:45
msgid "Return Orders"
msgstr ""
-#: company/templates/company/detail.html:195
+#: company/templates/company/detail.html:146
#: order/templates/order/return_orders.html:20
msgid "Create new return order"
msgstr ""
-#: company/templates/company/detail.html:196
+#: company/templates/company/detail.html:147
#: order/templates/order/return_orders.html:21
msgid "New Return Order"
msgstr ""
-#: company/templates/company/detail.html:221
+#: company/templates/company/detail.html:168
msgid "Company Notes"
msgstr "Notes de l'entreprise"
-#: company/templates/company/detail.html:236
+#: company/templates/company/detail.html:183
msgid "Company Contacts"
msgstr ""
-#: company/templates/company/detail.html:240
-#: company/templates/company/detail.html:241
+#: company/templates/company/detail.html:187
+#: company/templates/company/detail.html:188
msgid "Add Contact"
msgstr ""
+#: company/templates/company/detail.html:206
+msgid "Company addresses"
+msgstr ""
+
+#: company/templates/company/detail.html:210
+#: company/templates/company/detail.html:211
+msgid "Add Address"
+msgstr ""
+
#: company/templates/company/index.html:8
msgid "Supplier List"
msgstr "Liste des Fournisseurs"
@@ -4050,17 +4111,17 @@ msgstr "Fabricants"
#: company/templates/company/manufacturer_part.html:35
#: company/templates/company/supplier_part.html:228
-#: part/templates/part/detail.html:111 part/templates/part/part_base.html:85
+#: part/templates/part/detail.html:109 part/templates/part/part_base.html:85
msgid "Order part"
msgstr "Article de la commande"
#: company/templates/company/manufacturer_part.html:39
-#: templates/js/translated/company.js:1001
+#: templates/js/translated/company.js:1374
msgid "Edit manufacturer part"
msgstr "Modifier la pièce du fabricant"
#: company/templates/company/manufacturer_part.html:43
-#: templates/js/translated/company.js:1002
+#: templates/js/translated/company.js:1375
msgid "Delete manufacturer part"
msgstr "Supprimer la pièce de fabricant"
@@ -4080,40 +4141,22 @@ msgstr "Aucune information sur le fabricant disponible"
msgid "Suppliers"
msgstr "Fournisseurs"
-#: company/templates/company/manufacturer_part.html:136
-#: part/templates/part/detail.html:392
-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:393 part/templates/part/detail.html:423
-#: templates/js/translated/forms.js:506 templates/js/translated/helpers.js:105
-#: templates/js/translated/part.js:370 templates/js/translated/pricing.js:629
-#: templates/js/translated/stock.js:216 users/models.py:247
-msgid "Delete"
-msgstr "Supprimer"
-
-#: company/templates/company/manufacturer_part.html:166
+#: company/templates/company/manufacturer_part.html:156
#: company/templates/company/manufacturer_part_sidebar.html:5
#: part/templates/part/category_sidebar.html:20
-#: part/templates/part/detail.html:208 part/templates/part/part_sidebar.html:8
+#: part/templates/part/detail.html:195 part/templates/part/part_sidebar.html:8
msgid "Parameters"
msgstr "Paramètres"
-#: company/templates/company/manufacturer_part.html:170
-#: part/templates/part/detail.html:213
+#: company/templates/company/manufacturer_part.html:160
+#: part/templates/part/detail.html:200
#: templates/InvenTree/settings/category.html:12
#: templates/InvenTree/settings/part_parameters.html:12
msgid "New Parameter"
msgstr "Nouveau paramètre"
-#: company/templates/company/manufacturer_part.html:183
-msgid "Delete parameters"
-msgstr "Supprimer les paramètres"
-
-#: company/templates/company/manufacturer_part.html:226
-#: templates/js/translated/part.js:1396
+#: company/templates/company/manufacturer_part.html:206
+#: templates/js/translated/part.js:1395
msgid "Add Parameter"
msgstr "Ajouter un paramètre"
@@ -4137,23 +4180,28 @@ msgstr "Articles en stock assignés"
msgid "Contacts"
msgstr ""
+#: company/templates/company/sidebar.html:35
+msgid "Addresses"
+msgstr ""
+
#: company/templates/company/supplier_part.html:7
#: company/templates/company/supplier_part.html:24 stock/models.py:684
#: stock/templates/stock/item_base.html:234
-#: templates/js/translated/company.js:1210
-#: templates/js/translated/purchase_order.js:747
-#: templates/js/translated/stock.js:2016
+#: templates/js/translated/company.js:1631
+#: templates/js/translated/purchase_order.js:758
+#: templates/js/translated/stock.js:2173
msgid "Supplier Part"
msgstr "Pièce fournisseur"
#: company/templates/company/supplier_part.html:51
+#: templates/js/translated/company.js:1557
msgid "Supplier part actions"
msgstr "Actions de la pièce du fournisseur"
#: company/templates/company/supplier_part.html:56
#: company/templates/company/supplier_part.html:57
#: company/templates/company/supplier_part.html:229
-#: part/templates/part/detail.html:112
+#: part/templates/part/detail.html:110
msgid "Order Part"
msgstr "Commander un composant"
@@ -4164,13 +4212,13 @@ msgstr "Disponibilité de la mise à jour"
#: company/templates/company/supplier_part.html:64
#: company/templates/company/supplier_part.html:65
-#: templates/js/translated/company.js:283
+#: templates/js/translated/company.js:293
msgid "Edit Supplier Part"
msgstr "Modifier la pièce du fournisseur"
#: company/templates/company/supplier_part.html:69
#: company/templates/company/supplier_part.html:70
-#: templates/js/translated/company.js:258
+#: templates/js/translated/company.js:268
msgid "Duplicate Supplier Part"
msgstr "Dupliquer la pièce du fournisseur"
@@ -4197,7 +4245,7 @@ msgstr "Créer un nouvel article de stock"
#: company/templates/company/supplier_part.html:211
#: part/templates/part/detail.html:25 stock/templates/stock/location.html:198
-#: templates/js/translated/stock.js:504
+#: templates/js/translated/stock.js:503
msgid "New Stock Item"
msgstr "Nouvel article de stock"
@@ -4205,37 +4253,37 @@ msgstr "Nouvel article de stock"
msgid "Supplier Part Orders"
msgstr "Commandes de pièces du fournisseur"
-#: company/templates/company/supplier_part.html:249
+#: company/templates/company/supplier_part.html:247
msgid "Pricing Information"
msgstr "Information sur les prix"
-#: company/templates/company/supplier_part.html:254
-#: templates/js/translated/company.js:387
+#: company/templates/company/supplier_part.html:252
+#: templates/js/translated/company.js:397
#: templates/js/translated/pricing.js:684
msgid "Add Price Break"
msgstr "Ajouter un prix de rupture"
-#: company/templates/company/supplier_part.html:281
+#: company/templates/company/supplier_part.html:277
msgid "Supplier Part QR Code"
msgstr ""
-#: company/templates/company/supplier_part.html:292
+#: company/templates/company/supplier_part.html:288
msgid "Link Barcode to Supplier Part"
msgstr "Lier le code-barres à la pièce du fournisseur"
-#: company/templates/company/supplier_part.html:365
+#: company/templates/company/supplier_part.html:361
msgid "Update Part Availability"
msgstr "Mettre à jour la disponibilité des pièces"
#: company/templates/company/supplier_part_sidebar.html:5 part/tasks.py:293
-#: part/templates/part/category.html:199
+#: part/templates/part/category.html:182
#: part/templates/part/category_sidebar.html:17 stock/admin.py:47
-#: stock/templates/stock/location.html:168
+#: stock/serializers.py:662 stock/templates/stock/location.html:168
#: stock/templates/stock/location.html:182
#: stock/templates/stock/location.html:194
#: stock/templates/stock/location_sidebar.html:7
-#: templates/InvenTree/search.html:155 templates/js/translated/part.js:1034
-#: templates/js/translated/search.js:214 templates/js/translated/stock.js:2514
+#: templates/InvenTree/search.html:155 templates/js/translated/part.js:1033
+#: templates/js/translated/search.js:172 templates/js/translated/stock.js:2645
#: users/models.py:41
msgid "Stock Items"
msgstr "Éléments en stock"
@@ -4261,7 +4309,7 @@ msgstr "Clients"
msgid "New Customer"
msgstr "Nouveaux Clients"
-#: company/views.py:52 templates/js/translated/search.js:234
+#: company/views.py:52 templates/js/translated/search.js:192
msgid "Companies"
msgstr "Entreprises"
@@ -4269,72 +4317,76 @@ msgstr "Entreprises"
msgid "New Company"
msgstr "Nouvelle Entreprise"
-#: label/models.py:104
+#: label/models.py:112
msgid "Label name"
msgstr "Nom de l'étiquette"
-#: label/models.py:111
+#: label/models.py:119
msgid "Label description"
msgstr "Description de l’étiquette"
-#: label/models.py:118
+#: label/models.py:126
msgid "Label"
msgstr "Étiquette"
-#: label/models.py:119
+#: label/models.py:127
msgid "Label template file"
msgstr "Fichier de modèle d'étiquette"
-#: label/models.py:125 report/models.py:273
+#: label/models.py:133 report/models.py:273
msgid "Enabled"
msgstr "Activé"
-#: label/models.py:126
+#: label/models.py:134
msgid "Label template is enabled"
msgstr "Le modèle d'étiquette est activé"
-#: label/models.py:131
+#: label/models.py:139
msgid "Width [mm]"
msgstr "Largeur [mm]"
-#: label/models.py:132
+#: label/models.py:140
msgid "Label width, specified in mm"
msgstr "Largeur de l'étiquette, spécifiée en mm"
-#: label/models.py:138
+#: label/models.py:146
msgid "Height [mm]"
msgstr "Hauteur [mm]"
-#: label/models.py:139
+#: label/models.py:147
msgid "Label height, specified in mm"
msgstr "Hauteur de l'étiquette, spécifiée en mm"
-#: label/models.py:145 report/models.py:266
+#: label/models.py:153 report/models.py:266
msgid "Filename Pattern"
msgstr "Modèle de nom de fichier"
-#: label/models.py:146
+#: label/models.py:154
msgid "Pattern for generating label filenames"
msgstr "Modèle pour la génération des noms de fichiers d'étiquette"
-#: label/models.py:242
+#: label/models.py:250
msgid "Query filters (comma-separated list of key=value pairs),"
msgstr "Filtres de requête (liste de paires clé=valeur séparées par des virgules),"
-#: label/models.py:243 label/models.py:284 label/models.py:312
-#: report/models.py:294 report/models.py:452 report/models.py:490
-#: report/models.py:528
+#: label/models.py:251 label/models.py:292 label/models.py:320
+#: label/models.py:356 report/models.py:294 report/models.py:454
+#: report/models.py:492 report/models.py:530
msgid "Filters"
msgstr "Filtres"
-#: label/models.py:283
+#: label/models.py:291
msgid "Query filters (comma-separated list of key=value pairs"
msgstr "Filtres de requête (liste de paires clé=valeur séparées par des virgules"
-#: label/models.py:311
+#: label/models.py:319
msgid "Part query filters (comma-separated value of key=value pairs)"
msgstr "Filtres de requêtes de pièces (valeurs de paires clé=valeur séparées par des virgules)"
+#: label/models.py:355
+msgid "Query filters (comma-separated list of key=value pairs)"
+msgstr ""
+
#: label/templates/label/part/part_label.html:31
#: label/templates/label/stockitem/qr.html:21
#: label/templates/label/stocklocation/qr.html:21
@@ -4352,8 +4404,8 @@ msgstr ""
#: report/templates/report/inventree_po_report_base.html:31
#: report/templates/report/inventree_so_report_base.html:31
#: templates/js/translated/order.js:327
-#: templates/js/translated/purchase_order.js:2093
-#: templates/js/translated/sales_order.js:1827
+#: templates/js/translated/purchase_order.js:2103
+#: templates/js/translated/sales_order.js:1839
msgid "Total Price"
msgstr ""
@@ -4361,30 +4413,30 @@ msgstr ""
msgid "No matching purchase order found"
msgstr "Aucun bon de commande correspondant n'a été trouvé"
-#: order/api.py:1452 order/models.py:1178 order/models.py:1262
+#: order/api.py:1452 order/models.py:1191 order/models.py:1275
#: order/templates/order/order_base.html:9
#: order/templates/order/order_base.html:18
#: report/templates/report/inventree_po_report_base.html:14
#: stock/templates/stock/item_base.html:177
#: templates/email/overdue_purchase_order.html:15
-#: templates/js/translated/part.js:1718 templates/js/translated/pricing.js:790
-#: templates/js/translated/purchase_order.js:154
-#: templates/js/translated/purchase_order.js:748
-#: templates/js/translated/purchase_order.js:1637
-#: templates/js/translated/stock.js:1996 templates/js/translated/stock.js:2644
+#: templates/js/translated/part.js:1717 templates/js/translated/pricing.js:790
+#: templates/js/translated/purchase_order.js:165
+#: templates/js/translated/purchase_order.js:759
+#: templates/js/translated/purchase_order.js:1652
+#: templates/js/translated/stock.js:2153 templates/js/translated/stock.js:2775
msgid "Purchase Order"
msgstr "Commande d’achat"
-#: order/api.py:1456 order/models.py:1909 order/models.py:1955
+#: order/api.py:1456 order/models.py:1922 order/models.py:1968
#: order/templates/order/return_order_base.html:9
#: order/templates/order/return_order_base.html:28
#: report/templates/report/inventree_return_order_report_base.html:13
-#: templates/js/translated/return_order.js:269
-#: templates/js/translated/stock.js:2678
+#: templates/js/translated/return_order.js:281
+#: templates/js/translated/stock.js:2809
msgid "Return Order"
msgstr ""
-#: order/api.py:1458 templates/js/translated/sales_order.js:1030
+#: order/api.py:1458 templates/js/translated/sales_order.js:1042
msgid "Unknown"
msgstr "Inconnu"
@@ -4392,11 +4444,11 @@ msgstr "Inconnu"
msgid "Total price for this order"
msgstr ""
-#: order/models.py:79 order/serializers.py:49
+#: order/models.py:79 order/serializers.py:50
msgid "Order Currency"
msgstr ""
-#: order/models.py:81 order/serializers.py:50
+#: order/models.py:81 order/serializers.py:51
msgid "Currency for this order (leave blank to use company default)"
msgstr ""
@@ -4408,492 +4460,496 @@ msgstr ""
msgid "Order description (optional)"
msgstr ""
-#: order/models.py:234
+#: order/models.py:237
msgid "Select project code for this order"
msgstr ""
-#: order/models.py:236 order/models.py:1094 order/models.py:1454
+#: order/models.py:240 order/models.py:1107 order/models.py:1467
msgid "Link to external page"
msgstr "Lien vers une page externe"
-#: order/models.py:241
+#: order/models.py:245
msgid "Expected date for order delivery. Order will be overdue after this date."
msgstr "Date prévue pour la livraison de la commande. La commande sera en retard après cette date."
-#: order/models.py:250
+#: order/models.py:254
msgid "Created By"
msgstr "Créé par"
-#: order/models.py:257
+#: order/models.py:261
msgid "User or group responsible for this order"
msgstr "Utilisateur ou groupe responsable de cette commande"
-#: order/models.py:267
+#: order/models.py:271
msgid "Point of contact for this order"
msgstr ""
-#: order/models.py:360 order/models.py:766
+#: order/models.py:280
+msgid "Company address for this order"
+msgstr ""
+
+#: order/models.py:373 order/models.py:779
msgid "Order reference"
msgstr "Référence de la commande"
-#: order/models.py:368 order/models.py:791
+#: order/models.py:381 order/models.py:804
msgid "Purchase order status"
msgstr "Statut de la commande d'achat"
-#: order/models.py:383
+#: order/models.py:396
msgid "Company from which the items are being ordered"
msgstr "Société de laquelle les articles sont commandés"
-#: order/models.py:391 order/templates/order/order_base.html:152
-#: templates/js/translated/purchase_order.js:1662
+#: order/models.py:404 order/templates/order/order_base.html:148
+#: templates/js/translated/purchase_order.js:1677
msgid "Supplier Reference"
msgstr "Référence du fournisseur"
-#: order/models.py:391
+#: order/models.py:404
msgid "Supplier order reference code"
msgstr "Code de référence de la commande fournisseur"
-#: order/models.py:398
+#: order/models.py:411
msgid "received by"
msgstr "reçu par"
-#: order/models.py:403 order/models.py:1761
+#: order/models.py:416 order/models.py:1774
msgid "Issue Date"
msgstr "Date d'émission"
-#: order/models.py:404 order/models.py:1762
+#: order/models.py:417 order/models.py:1775
msgid "Date order was issued"
msgstr "Date d'émission de la commande"
-#: order/models.py:410 order/models.py:1768
+#: order/models.py:423 order/models.py:1781
msgid "Date order was completed"
msgstr "Date à laquelle la commande a été complété"
-#: order/models.py:445
+#: order/models.py:458
msgid "Part supplier must match PO supplier"
msgstr ""
-#: order/models.py:606
+#: order/models.py:619
msgid "Quantity must be a positive number"
msgstr "La quantité doit être un nombre positif"
-#: order/models.py:780
+#: order/models.py:793
msgid "Company to which the items are being sold"
msgstr "Société à laquelle les articles sont vendus"
-#: order/models.py:799 order/models.py:1755
+#: order/models.py:812 order/models.py:1768
msgid "Customer Reference "
msgstr ""
-#: order/models.py:799 order/models.py:1756
+#: order/models.py:812 order/models.py:1769
msgid "Customer order reference code"
msgstr ""
-#: order/models.py:801 order/models.py:1408
-#: templates/js/translated/sales_order.js:831
-#: templates/js/translated/sales_order.js:1012
+#: order/models.py:814 order/models.py:1421
+#: templates/js/translated/sales_order.js:843
+#: templates/js/translated/sales_order.js:1024
msgid "Shipment Date"
msgstr "Nom de l’expédition"
-#: order/models.py:808
+#: order/models.py:821
msgid "shipped by"
msgstr "expédié par"
-#: order/models.py:857
+#: order/models.py:870
msgid "Order cannot be completed as no parts have been assigned"
msgstr "La commande ne peut pas être terminée car aucune pièce n'a été assignée"
-#: order/models.py:861
+#: order/models.py:874
msgid "Only an open order can be marked as complete"
msgstr ""
-#: order/models.py:864 templates/js/translated/sales_order.js:491
+#: order/models.py:877 templates/js/translated/sales_order.js:503
msgid "Order cannot be completed as there are incomplete shipments"
msgstr "La commande ne peut pas être terminée car il y a des envois incomplets"
-#: order/models.py:867
+#: order/models.py:880
msgid "Order cannot be completed as there are incomplete line items"
msgstr ""
-#: order/models.py:1074
+#: order/models.py:1087
msgid "Item quantity"
msgstr "Nombre d'élement"
-#: order/models.py:1087
+#: order/models.py:1100
msgid "Line item reference"
msgstr ""
-#: order/models.py:1089
+#: order/models.py:1102
msgid "Line item notes"
msgstr ""
-#: order/models.py:1100
+#: order/models.py:1113
msgid "Target date for this line item (leave blank to use the target date from the order)"
msgstr ""
-#: order/models.py:1118
+#: order/models.py:1131
msgid "Line item description (optional)"
msgstr ""
-#: order/models.py:1123
+#: order/models.py:1136
msgid "Context"
msgstr "Contexte"
-#: order/models.py:1124
+#: order/models.py:1137
msgid "Additional context for this line"
msgstr ""
-#: order/models.py:1133
+#: order/models.py:1146
msgid "Unit price"
msgstr "Prix unitaire"
-#: order/models.py:1163
+#: order/models.py:1176
msgid "Supplier part must match supplier"
msgstr ""
-#: order/models.py:1171
+#: order/models.py:1184
msgid "deleted"
msgstr "supprimé"
-#: order/models.py:1177 order/models.py:1262 order/models.py:1303
-#: order/models.py:1402 order/models.py:1551 order/models.py:1908
-#: order/models.py:1955 templates/js/translated/sales_order.js:1474
+#: order/models.py:1190 order/models.py:1275 order/models.py:1316
+#: order/models.py:1415 order/models.py:1564 order/models.py:1921
+#: order/models.py:1968 templates/js/translated/sales_order.js:1486
msgid "Order"
msgstr "Commande"
-#: order/models.py:1196
+#: order/models.py:1209
msgid "Supplier part"
msgstr "Pièce fournisseur"
-#: order/models.py:1203 order/templates/order/order_base.html:200
-#: templates/js/translated/part.js:1841 templates/js/translated/part.js:1872
-#: templates/js/translated/purchase_order.js:1276
-#: templates/js/translated/purchase_order.js:2137
-#: templates/js/translated/return_order.js:748
-#: templates/js/translated/table_filters.js:90
-#: templates/js/translated/table_filters.js:515
+#: order/models.py:1216 order/templates/order/order_base.html:196
+#: templates/js/translated/part.js:1840 templates/js/translated/part.js:1871
+#: templates/js/translated/purchase_order.js:1291
+#: templates/js/translated/purchase_order.js:2147
+#: templates/js/translated/return_order.js:760
+#: templates/js/translated/table_filters.js:96
+#: templates/js/translated/table_filters.js:537
msgid "Received"
msgstr "Reçu"
-#: order/models.py:1204
+#: order/models.py:1217
msgid "Number of items received"
msgstr "Nombre d'éléments reçus"
-#: order/models.py:1211 stock/models.py:823 stock/serializers.py:252
+#: order/models.py:1224 stock/models.py:823 stock/serializers.py:314
#: stock/templates/stock/item_base.html:184
-#: templates/js/translated/stock.js:2047
+#: templates/js/translated/stock.js:2204
msgid "Purchase Price"
msgstr "Prix d'achat"
-#: order/models.py:1212
+#: order/models.py:1225
msgid "Unit purchase price"
msgstr "Prix d'achat unitaire"
-#: order/models.py:1225
+#: order/models.py:1238
msgid "Where does the Purchaser want this item to be stored?"
msgstr "Où l'Acheteur veut-il stocker cet article ?"
-#: order/models.py:1291
+#: order/models.py:1304
msgid "Virtual part cannot be assigned to a sales order"
msgstr "La pièce virtuelle ne peut pas être affectée à une commande"
-#: order/models.py:1296
+#: order/models.py:1309
msgid "Only salable parts can be assigned to a sales order"
msgstr "Seules les pièces vendues peuvent être attribuées à une commande"
-#: order/models.py:1322 part/templates/part/part_pricing.html:107
+#: order/models.py:1335 part/templates/part/part_pricing.html:107
#: part/templates/part/prices.html:128 templates/js/translated/pricing.js:943
msgid "Sale Price"
msgstr "Prix de vente"
-#: order/models.py:1323
+#: order/models.py:1336
msgid "Unit sale price"
msgstr "Prix de vente unitaire"
-#: order/models.py:1333
+#: order/models.py:1346
msgid "Shipped quantity"
msgstr "Quantité expédiée"
-#: order/models.py:1409
+#: order/models.py:1422
msgid "Date of shipment"
msgstr "Date d'expédition"
-#: order/models.py:1414 templates/js/translated/sales_order.js:1024
+#: order/models.py:1427 templates/js/translated/sales_order.js:1036
msgid "Delivery Date"
msgstr ""
-#: order/models.py:1415
+#: order/models.py:1428
msgid "Date of delivery of shipment"
msgstr ""
-#: order/models.py:1422
+#: order/models.py:1435
msgid "Checked By"
msgstr "Vérifié par"
-#: order/models.py:1423
+#: order/models.py:1436
msgid "User who checked this shipment"
msgstr "Utilisateur qui a vérifié cet envoi"
-#: order/models.py:1430 order/models.py:1627 order/serializers.py:1248
-#: order/serializers.py:1376 templates/js/translated/model_renderers.js:415
+#: order/models.py:1443 order/models.py:1640 order/serializers.py:1254
+#: order/serializers.py:1382 templates/js/translated/model_renderers.js:429
msgid "Shipment"
msgstr "Envoi"
-#: order/models.py:1431
+#: order/models.py:1444
msgid "Shipment number"
msgstr "Numéro d'expédition"
-#: order/models.py:1439
+#: order/models.py:1452
msgid "Tracking Number"
msgstr "N° de suivi"
-#: order/models.py:1440
+#: order/models.py:1453
msgid "Shipment tracking information"
msgstr "Information de suivi des colis"
-#: order/models.py:1447
+#: order/models.py:1460
msgid "Invoice Number"
msgstr "N° de facture"
-#: order/models.py:1448
+#: order/models.py:1461
msgid "Reference number for associated invoice"
msgstr "Numéro de référence de la facture associée"
-#: order/models.py:1470
+#: order/models.py:1483
msgid "Shipment has already been sent"
msgstr "Le colis a déjà été envoyé"
-#: order/models.py:1473
+#: order/models.py:1486
msgid "Shipment has no allocated stock items"
msgstr "L'expédition n'a pas d'articles en stock alloués"
-#: order/models.py:1586 order/models.py:1588
+#: order/models.py:1599 order/models.py:1601
msgid "Stock item has not been assigned"
msgstr "L'article de stock n'a pas été assigné"
-#: order/models.py:1592
+#: order/models.py:1605
msgid "Cannot allocate stock item to a line with a different part"
msgstr ""
-#: order/models.py:1594
+#: order/models.py:1607
msgid "Cannot allocate stock to a line without a part"
msgstr "Impossible d'allouer le stock à une ligne sans pièce"
-#: order/models.py:1597
+#: order/models.py:1610
msgid "Allocation quantity cannot exceed stock quantity"
msgstr "La quantité d'allocation ne peut pas excéder la quantité en stock"
-#: order/models.py:1607 order/serializers.py:1110
+#: order/models.py:1620 order/serializers.py:1116
msgid "Quantity must be 1 for serialized stock item"
msgstr ""
-#: order/models.py:1610
+#: order/models.py:1623
msgid "Sales order does not match shipment"
msgstr ""
-#: order/models.py:1611
+#: order/models.py:1624
msgid "Shipment does not match sales order"
msgstr ""
-#: order/models.py:1619
+#: order/models.py:1632
msgid "Line"
msgstr "Ligne"
-#: order/models.py:1628
+#: order/models.py:1641
msgid "Sales order shipment reference"
msgstr ""
-#: order/models.py:1641 order/models.py:1916
-#: templates/js/translated/return_order.js:706
+#: order/models.py:1654 order/models.py:1929
+#: templates/js/translated/return_order.js:718
msgid "Item"
msgstr "Article"
-#: order/models.py:1642
+#: order/models.py:1655
msgid "Select stock item to allocate"
msgstr ""
-#: order/models.py:1645
+#: order/models.py:1658
msgid "Enter stock allocation quantity"
msgstr ""
-#: order/models.py:1725
+#: order/models.py:1738
msgid "Return Order reference"
msgstr ""
-#: order/models.py:1739
+#: order/models.py:1752
msgid "Company from which items are being returned"
msgstr ""
-#: order/models.py:1750
+#: order/models.py:1763
msgid "Return order status"
msgstr ""
-#: order/models.py:1901
+#: order/models.py:1914
msgid "Only serialized items can be assigned to a Return Order"
msgstr ""
-#: order/models.py:1917
+#: order/models.py:1930
msgid "Select item to return from customer"
msgstr ""
-#: order/models.py:1922
+#: order/models.py:1935
msgid "Received Date"
msgstr ""
-#: order/models.py:1923
+#: order/models.py:1936
msgid "The date this this return item was received"
msgstr ""
-#: order/models.py:1934 templates/js/translated/return_order.js:717
-#: templates/js/translated/table_filters.js:93
+#: order/models.py:1947 templates/js/translated/return_order.js:729
+#: templates/js/translated/table_filters.js:99
msgid "Outcome"
msgstr ""
-#: order/models.py:1934
+#: order/models.py:1947
msgid "Outcome for this line item"
msgstr ""
-#: order/models.py:1940
+#: order/models.py:1953
msgid "Cost associated with return or repair for this line item"
msgstr ""
-#: order/serializers.py:247
+#: order/serializers.py:253
msgid "Order cannot be cancelled"
msgstr "La commande ne peut pas être annulée"
-#: order/serializers.py:262 order/serializers.py:1128
+#: order/serializers.py:268 order/serializers.py:1134
msgid "Allow order to be closed with incomplete line items"
msgstr ""
-#: order/serializers.py:273 order/serializers.py:1139
+#: order/serializers.py:279 order/serializers.py:1145
msgid "Order has incomplete line items"
msgstr ""
-#: order/serializers.py:386
+#: order/serializers.py:392
msgid "Order is not open"
msgstr "La commande n'est pas ouverte"
-#: order/serializers.py:404
+#: order/serializers.py:410
msgid "Purchase price currency"
msgstr "Devise du prix d'achat"
-#: order/serializers.py:422
+#: order/serializers.py:428
msgid "Supplier part must be specified"
msgstr ""
-#: order/serializers.py:427
+#: order/serializers.py:433
msgid "Purchase order must be specified"
msgstr ""
-#: order/serializers.py:433
+#: order/serializers.py:439
msgid "Supplier must match purchase order"
msgstr ""
-#: order/serializers.py:434
+#: order/serializers.py:440
msgid "Purchase order must match supplier"
msgstr ""
-#: order/serializers.py:472 order/serializers.py:1216
+#: order/serializers.py:478 order/serializers.py:1222
msgid "Line Item"
msgstr ""
-#: order/serializers.py:478
+#: order/serializers.py:484
msgid "Line item does not match purchase order"
msgstr ""
-#: order/serializers.py:488 order/serializers.py:607 order/serializers.py:1589
+#: order/serializers.py:494 order/serializers.py:613 order/serializers.py:1595
msgid "Select destination location for received items"
msgstr ""
-#: order/serializers.py:507 templates/js/translated/purchase_order.js:1100
+#: order/serializers.py:513 templates/js/translated/purchase_order.js:1115
msgid "Enter batch code for incoming stock items"
msgstr ""
-#: order/serializers.py:515 templates/js/translated/purchase_order.js:1124
+#: order/serializers.py:521 templates/js/translated/purchase_order.js:1139
msgid "Enter serial numbers for incoming stock items"
msgstr "Entrez les numéros de série pour les articles de stock entrants"
-#: order/serializers.py:528 templates/js/translated/barcode.js:52
+#: order/serializers.py:534 templates/js/translated/barcode.js:52
msgid "Barcode"
msgstr "Code-barres"
-#: order/serializers.py:529
+#: order/serializers.py:535
msgid "Scanned barcode"
msgstr ""
-#: order/serializers.py:545
+#: order/serializers.py:551
msgid "Barcode is already in use"
msgstr "Le code-barres est déjà utilisé"
-#: order/serializers.py:569
+#: order/serializers.py:575
msgid "An integer quantity must be provided for trackable parts"
msgstr "Une quantité entière doit être fournie pour les pièces tracables"
-#: order/serializers.py:623 order/serializers.py:1604
+#: order/serializers.py:629 order/serializers.py:1610
msgid "Line items must be provided"
msgstr ""
-#: order/serializers.py:640
+#: order/serializers.py:646
msgid "Destination location must be specified"
msgstr ""
-#: order/serializers.py:651
+#: order/serializers.py:657
msgid "Supplied barcode values must be unique"
msgstr ""
-#: order/serializers.py:950
+#: order/serializers.py:956
msgid "Sale price currency"
msgstr ""
-#: order/serializers.py:1007
+#: order/serializers.py:1013
msgid "No shipment details provided"
msgstr ""
-#: order/serializers.py:1071 order/serializers.py:1225
+#: order/serializers.py:1077 order/serializers.py:1231
msgid "Line item is not associated with this order"
msgstr ""
-#: order/serializers.py:1093
+#: order/serializers.py:1099
msgid "Quantity must be positive"
msgstr ""
-#: order/serializers.py:1238
+#: order/serializers.py:1244
msgid "Enter serial numbers to allocate"
msgstr "Entrez les numéros de série à allouer"
-#: order/serializers.py:1260 order/serializers.py:1384
+#: order/serializers.py:1266 order/serializers.py:1390
msgid "Shipment has already been shipped"
msgstr ""
-#: order/serializers.py:1263 order/serializers.py:1387
+#: order/serializers.py:1269 order/serializers.py:1393
msgid "Shipment is not associated with this order"
msgstr ""
-#: order/serializers.py:1317
+#: order/serializers.py:1323
msgid "No match found for the following serial numbers"
msgstr "Aucune correspondance trouvée pour les numéros de série suivants"
-#: order/serializers.py:1327
+#: order/serializers.py:1333
msgid "The following serial numbers are already allocated"
msgstr "Les numéros de série suivants sont déjà alloués"
-#: order/serializers.py:1555
+#: order/serializers.py:1561
msgid "Return order line item"
msgstr ""
-#: order/serializers.py:1562
+#: order/serializers.py:1568
msgid "Line item does not match return order"
msgstr ""
-#: order/serializers.py:1565
+#: order/serializers.py:1571
msgid "Line item has already been received"
msgstr ""
-#: order/serializers.py:1597
+#: order/serializers.py:1603
msgid "Items can only be received against orders which are in progress"
msgstr ""
-#: order/serializers.py:1678
+#: order/serializers.py:1684
msgid "Line price currency"
msgstr ""
@@ -4957,82 +5013,74 @@ msgid "Issue Order"
msgstr ""
#: order/templates/order/order_base.html:83
-msgid "Receive items"
-msgstr "Recevoir objet"
-
-#: order/templates/order/order_base.html:85
-msgid "Receive Items"
-msgstr "Réception d'articles"
-
-#: order/templates/order/order_base.html:87
#: order/templates/order/return_order_base.html:87
msgid "Mark order as complete"
msgstr "Marquer la commande comme complète"
-#: order/templates/order/order_base.html:88
+#: order/templates/order/order_base.html:84
#: order/templates/order/return_order_base.html:88
#: order/templates/order/sales_order_base.html:94
msgid "Complete Order"
msgstr "Finaliser la commande"
-#: order/templates/order/order_base.html:95
+#: order/templates/order/order_base.html:91
msgid "Supplier part thumbnail"
msgstr ""
-#: order/templates/order/order_base.html:110
+#: order/templates/order/order_base.html:106
#: order/templates/order/return_order_base.html:102
#: order/templates/order/sales_order_base.html:107
msgid "Order Reference"
msgstr "Référence de commande"
-#: order/templates/order/order_base.html:115
+#: order/templates/order/order_base.html:111
#: order/templates/order/return_order_base.html:107
#: order/templates/order/sales_order_base.html:112
msgid "Order Description"
msgstr "Description de la commande"
-#: order/templates/order/order_base.html:122
+#: order/templates/order/order_base.html:118
#: order/templates/order/return_order_base.html:114
#: order/templates/order/sales_order_base.html:119
msgid "Order Status"
msgstr "Statut de la commande"
-#: order/templates/order/order_base.html:145
+#: order/templates/order/order_base.html:141
msgid "No suppplier information available"
msgstr ""
-#: order/templates/order/order_base.html:158
+#: order/templates/order/order_base.html:154
#: order/templates/order/sales_order_base.html:158
msgid "Completed Line Items"
msgstr ""
-#: order/templates/order/order_base.html:164
+#: order/templates/order/order_base.html:160
#: order/templates/order/sales_order_base.html:164
#: order/templates/order/sales_order_base.html:174
msgid "Incomplete"
msgstr "Incomplet"
-#: order/templates/order/order_base.html:183
+#: order/templates/order/order_base.html:179
#: order/templates/order/return_order_base.html:158
#: report/templates/report/inventree_build_order_base.html:121
msgid "Issued"
msgstr ""
-#: order/templates/order/order_base.html:221
+#: order/templates/order/order_base.html:224
msgid "Total cost"
msgstr ""
-#: order/templates/order/order_base.html:225
-#: order/templates/order/return_order_base.html:193
-#: order/templates/order/sales_order_base.html:233
+#: order/templates/order/order_base.html:228
+#: order/templates/order/return_order_base.html:200
+#: order/templates/order/sales_order_base.html:240
msgid "Total cost could not be calculated"
msgstr ""
-#: order/templates/order/order_base.html:331
+#: order/templates/order/order_base.html:318
msgid "Purchase Order QR Code"
msgstr ""
-#: order/templates/order/order_base.html:343
+#: order/templates/order/order_base.html:330
msgid "Link Barcode to Purchase Order"
msgstr ""
@@ -5085,13 +5133,13 @@ msgstr "Dupliquer la sélection"
#: part/templates/part/import_wizard/ajax_match_references.html:42
#: part/templates/part/import_wizard/match_fields.html:71
#: part/templates/part/import_wizard/match_references.html:49
-#: templates/js/translated/bom.js:132 templates/js/translated/build.js:512
-#: templates/js/translated/build.js:2348
-#: templates/js/translated/purchase_order.js:692
-#: templates/js/translated/purchase_order.js:1206
-#: templates/js/translated/return_order.js:494
-#: templates/js/translated/sales_order.js:1097
-#: templates/js/translated/stock.js:681 templates/js/translated/stock.js:850
+#: templates/js/translated/bom.js:133 templates/js/translated/build.js:518
+#: templates/js/translated/build.js:1555
+#: templates/js/translated/purchase_order.js:703
+#: templates/js/translated/purchase_order.js:1221
+#: templates/js/translated/return_order.js:506
+#: templates/js/translated/sales_order.js:1109
+#: templates/js/translated/stock.js:680 templates/js/translated/stock.js:849
#: templates/patterns/wizard/match_fields.html:70
msgid "Remove row"
msgstr "Supprimer la ligne"
@@ -5152,9 +5200,9 @@ msgstr "Articles de la commande d'achat"
#: order/templates/order/purchase_order_detail.html:27
#: order/templates/order/return_order_detail.html:24
#: order/templates/order/sales_order_detail.html:24
-#: templates/js/translated/purchase_order.js:419
-#: templates/js/translated/return_order.js:447
-#: templates/js/translated/sales_order.js:222
+#: templates/js/translated/purchase_order.js:430
+#: templates/js/translated/return_order.js:459
+#: templates/js/translated/sales_order.js:234
msgid "Add Line Item"
msgstr ""
@@ -5165,30 +5213,25 @@ msgstr ""
msgid "Receive Line Items"
msgstr ""
-#: order/templates/order/purchase_order_detail.html:49
#: order/templates/order/purchase_order_detail.html:50
-msgid "Delete Line Items"
-msgstr ""
-
-#: order/templates/order/purchase_order_detail.html:66
-#: order/templates/order/return_order_detail.html:47
-#: order/templates/order/sales_order_detail.html:43
+#: order/templates/order/return_order_detail.html:45
+#: order/templates/order/sales_order_detail.html:41
msgid "Extra Lines"
msgstr ""
-#: order/templates/order/purchase_order_detail.html:72
-#: order/templates/order/return_order_detail.html:53
-#: order/templates/order/sales_order_detail.html:49
+#: order/templates/order/purchase_order_detail.html:56
+#: order/templates/order/return_order_detail.html:51
+#: order/templates/order/sales_order_detail.html:47
msgid "Add Extra Line"
msgstr ""
-#: order/templates/order/purchase_order_detail.html:92
+#: order/templates/order/purchase_order_detail.html:74
msgid "Received Items"
msgstr ""
-#: order/templates/order/purchase_order_detail.html:117
-#: order/templates/order/return_order_detail.html:89
-#: order/templates/order/sales_order_detail.html:149
+#: order/templates/order/purchase_order_detail.html:99
+#: order/templates/order/return_order_detail.html:85
+#: order/templates/order/sales_order_detail.html:139
msgid "Order Notes"
msgstr "Notes de commande"
@@ -5208,29 +5251,29 @@ msgstr ""
#: order/templates/order/return_order_base.html:139
#: order/templates/order/sales_order_base.html:152
-#: templates/js/translated/return_order.js:297
-#: templates/js/translated/sales_order.js:785
+#: templates/js/translated/return_order.js:309
+#: templates/js/translated/sales_order.js:797
msgid "Customer Reference"
msgstr ""
-#: order/templates/order/return_order_base.html:189
-#: order/templates/order/sales_order_base.html:229
+#: order/templates/order/return_order_base.html:196
+#: order/templates/order/sales_order_base.html:236
#: part/templates/part/part_pricing.html:32
#: part/templates/part/part_pricing.html:58
#: part/templates/part/part_pricing.html:99
#: part/templates/part/part_pricing.html:114
-#: templates/js/translated/part.js:1046
-#: templates/js/translated/purchase_order.js:1712
-#: templates/js/translated/return_order.js:369
-#: templates/js/translated/sales_order.js:843
+#: templates/js/translated/part.js:1045
+#: templates/js/translated/purchase_order.js:1727
+#: templates/js/translated/return_order.js:381
+#: templates/js/translated/sales_order.js:855
msgid "Total Cost"
msgstr ""
-#: order/templates/order/return_order_base.html:257
+#: order/templates/order/return_order_base.html:264
msgid "Return Order QR Code"
msgstr ""
-#: order/templates/order/return_order_base.html:269
+#: order/templates/order/return_order_base.html:276
msgid "Link Barcode to Return Order"
msgstr ""
@@ -5248,7 +5291,7 @@ msgid "Ship Items"
msgstr ""
#: order/templates/order/sales_order_base.html:93
-#: templates/js/translated/sales_order.js:469
+#: templates/js/translated/sales_order.js:481
msgid "Complete Sales Order"
msgstr ""
@@ -5257,16 +5300,16 @@ msgid "This Sales Order has not been fully allocated"
msgstr ""
#: order/templates/order/sales_order_base.html:170
-#: order/templates/order/sales_order_detail.html:105
+#: order/templates/order/sales_order_detail.html:99
#: order/templates/order/so_sidebar.html:11
msgid "Completed Shipments"
msgstr ""
-#: order/templates/order/sales_order_base.html:306
+#: order/templates/order/sales_order_base.html:313
msgid "Sales Order QR Code"
msgstr ""
-#: order/templates/order/sales_order_base.html:318
+#: order/templates/order/sales_order_base.html:325
msgid "Link Barcode to Sales Order"
msgstr ""
@@ -5274,18 +5317,17 @@ msgstr ""
msgid "Sales Order Items"
msgstr ""
-#: order/templates/order/sales_order_detail.html:71
-#: order/templates/order/so_sidebar.html:8 templates/InvenTree/index.html:332
+#: order/templates/order/sales_order_detail.html:67
+#: order/templates/order/so_sidebar.html:8 templates/InvenTree/index.html:284
msgid "Pending Shipments"
msgstr "Expéditions en attente"
-#: order/templates/order/sales_order_detail.html:75
-#: templates/attachment_table.html:6 templates/js/translated/bom.js:1236
-#: templates/js/translated/build.js:2249
+#: order/templates/order/sales_order_detail.html:71
+#: templates/js/translated/bom.js:1256 templates/js/translated/filters.js:297
msgid "Actions"
msgstr ""
-#: order/templates/order/sales_order_detail.html:84
+#: order/templates/order/sales_order_detail.html:80
msgid "New Shipment"
msgstr ""
@@ -5311,12 +5353,12 @@ msgstr ""
msgid "Updated {part} unit-price to {price} and quantity to {qty}"
msgstr ""
-#: part/admin.py:33 part/admin.py:273 part/models.py:3667 part/tasks.py:288
+#: part/admin.py:33 part/admin.py:273 part/models.py:3716 part/tasks.py:288
#: stock/admin.py:101
msgid "Part ID"
msgstr "ID de composant"
-#: part/admin.py:34 part/admin.py:275 part/models.py:3671 part/tasks.py:289
+#: part/admin.py:34 part/admin.py:275 part/models.py:3720 part/tasks.py:289
#: stock/admin.py:102
msgid "Part Name"
msgstr ""
@@ -5325,19 +5367,19 @@ msgstr ""
msgid "Part Description"
msgstr ""
-#: part/admin.py:36 part/models.py:889 part/templates/part/part_base.html:271
-#: templates/js/translated/part.js:1200 templates/js/translated/part.js:2233
-#: templates/js/translated/stock.js:1795
+#: part/admin.py:36 part/models.py:890 part/templates/part/part_base.html:271
+#: templates/js/translated/part.js:1199 templates/js/translated/part.js:2309
+#: templates/js/translated/stock.js:1952
msgid "IPN"
msgstr ""
-#: part/admin.py:37 part/models.py:896 part/templates/part/part_base.html:279
-#: report/models.py:179 templates/js/translated/part.js:1205
-#: templates/js/translated/part.js:2239
+#: part/admin.py:37 part/models.py:897 part/templates/part/part_base.html:279
+#: report/models.py:179 templates/js/translated/part.js:1204
+#: templates/js/translated/part.js:2315
msgid "Revision"
msgstr "Révision"
-#: part/admin.py:38 part/admin.py:198 part/models.py:875
+#: part/admin.py:38 part/admin.py:198 part/models.py:876
#: part/templates/part/category.html:93 part/templates/part/part_base.html:300
msgid "Keywords"
msgstr ""
@@ -5358,24 +5400,24 @@ msgstr ""
msgid "Default Supplier ID"
msgstr ""
-#: part/admin.py:46 part/models.py:864 part/templates/part/part_base.html:179
+#: part/admin.py:46 part/models.py:865 part/templates/part/part_base.html:179
msgid "Variant Of"
msgstr ""
-#: part/admin.py:47 part/models.py:980 part/templates/part/part_base.html:205
+#: part/admin.py:47 part/models.py:981 part/templates/part/part_base.html:205
msgid "Minimum Stock"
msgstr ""
#: part/admin.py:61 part/templates/part/part_base.html:199
-#: templates/js/translated/company.js:1299
-#: templates/js/translated/table_filters.js:301
+#: templates/js/translated/company.js:1720
+#: templates/js/translated/table_filters.js:307
msgid "In Stock"
msgstr ""
#: part/admin.py:62 part/bom.py:178 part/templates/part/part_base.html:212
-#: templates/js/translated/bom.js:1167 templates/js/translated/build.js:2191
-#: templates/js/translated/part.js:687 templates/js/translated/part.js:2123
-#: templates/js/translated/table_filters.js:140
+#: templates/js/translated/bom.js:1187 templates/js/translated/build.js:2541
+#: templates/js/translated/part.js:686 templates/js/translated/part.js:2122
+#: templates/js/translated/table_filters.js:146
msgid "On Order"
msgstr "En Commande"
@@ -5383,23 +5425,16 @@ msgstr "En Commande"
msgid "Used In"
msgstr ""
-#: part/admin.py:64 templates/js/translated/build.js:2203
-#: templates/js/translated/build.js:2465 templates/js/translated/build.js:3052
-#: templates/js/translated/sales_order.js:1906
-#: templates/js/translated/table_filters.js:488
-msgid "Allocated"
-msgstr ""
-
#: part/admin.py:65 part/templates/part/part_base.html:243 stock/admin.py:124
-#: templates/js/translated/part.js:692 templates/js/translated/part.js:2127
+#: templates/js/translated/part.js:691 templates/js/translated/part.js:2126
msgid "Building"
msgstr ""
-#: part/admin.py:66 part/models.py:2930 templates/js/translated/part.js:943
+#: part/admin.py:66 part/models.py:2964 templates/js/translated/part.js:942
msgid "Minimum Cost"
msgstr ""
-#: part/admin.py:67 part/models.py:2936 templates/js/translated/part.js:953
+#: part/admin.py:67 part/models.py:2970 templates/js/translated/part.js:952
msgid "Maximum Cost"
msgstr ""
@@ -5416,13 +5451,13 @@ msgstr ""
msgid "Category Path"
msgstr ""
-#: part/admin.py:202 part/models.py:392 part/templates/part/cat_link.html:3
-#: part/templates/part/category.html:23 part/templates/part/category.html:140
-#: part/templates/part/category.html:160
+#: part/admin.py:202 part/models.py:393 part/serializers.py:307
+#: part/templates/part/cat_link.html:3 part/templates/part/category.html:23
+#: part/templates/part/category.html:140 part/templates/part/category.html:160
#: part/templates/part/category_sidebar.html:9
-#: templates/InvenTree/index.html:86 templates/InvenTree/search.html:84
+#: templates/InvenTree/index.html:36 templates/InvenTree/search.html:84
#: templates/InvenTree/settings/sidebar.html:45
-#: templates/js/translated/part.js:2754 templates/js/translated/search.js:172
+#: templates/js/translated/part.js:2739 templates/js/translated/search.js:130
#: templates/navbar.html:24 users/models.py:38
msgid "Parts"
msgstr "Composantes"
@@ -5439,7 +5474,7 @@ msgstr ""
msgid "Parent IPN"
msgstr ""
-#: part/admin.py:274 part/models.py:3675
+#: part/admin.py:274 part/models.py:3724
msgid "Part IPN"
msgstr ""
@@ -5453,35 +5488,35 @@ msgstr ""
msgid "Maximum Price"
msgstr ""
-#: part/api.py:498
+#: part/api.py:501
msgid "Incoming Purchase Order"
msgstr ""
-#: part/api.py:518
+#: part/api.py:521
msgid "Outgoing Sales Order"
msgstr ""
-#: part/api.py:536
+#: part/api.py:539
msgid "Stock produced by Build Order"
msgstr ""
-#: part/api.py:622
+#: part/api.py:625
msgid "Stock required for Build Order"
msgstr ""
-#: part/api.py:770
+#: part/api.py:773
msgid "Valid"
msgstr ""
-#: part/api.py:771
+#: part/api.py:774
msgid "Validate entire Bill of Materials"
msgstr ""
-#: part/api.py:777
+#: part/api.py:780
msgid "This option must be selected"
msgstr ""
-#: part/bom.py:175 part/models.py:127 part/models.py:923
+#: part/bom.py:175 part/models.py:128 part/models.py:924
#: part/templates/part/category.html:115 part/templates/part/part_base.html:369
msgid "Default Location"
msgstr ""
@@ -5491,7 +5526,7 @@ msgid "Total Stock"
msgstr ""
#: part/bom.py:177 part/templates/part/part_base.html:194
-#: templates/js/translated/sales_order.js:1873
+#: templates/js/translated/sales_order.js:1885
msgid "Available Stock"
msgstr ""
@@ -5499,916 +5534,913 @@ msgstr ""
msgid "Input quantity for price calculation"
msgstr ""
-#: part/models.py:75 part/models.py:3616 part/templates/part/category.html:16
+#: part/models.py:76 part/models.py:3665 part/templates/part/category.html:16
#: part/templates/part/part_app_base.html:10
msgid "Part Category"
msgstr "Catégorie de composant"
-#: part/models.py:76 part/templates/part/category.html:135
-#: templates/InvenTree/search.html:97 templates/js/translated/search.js:200
+#: part/models.py:77 part/templates/part/category.html:135
+#: templates/InvenTree/search.html:97 templates/js/translated/search.js:158
#: users/models.py:37
msgid "Part Categories"
msgstr "Catégories de composants"
-#: part/models.py:128
+#: part/models.py:129
msgid "Default location for parts in this category"
msgstr ""
-#: part/models.py:133 stock/models.py:124 templates/js/translated/stock.js:2520
-#: templates/js/translated/table_filters.js:209
-#: templates/js/translated/table_filters.js:229
+#: part/models.py:134 stock/models.py:124 templates/js/translated/stock.js:2651
+#: templates/js/translated/table_filters.js:215
+#: templates/js/translated/table_filters.js:235
msgid "Structural"
msgstr ""
-#: part/models.py:135
+#: part/models.py:136
msgid "Parts may not be directly assigned to a structural category, but may be assigned to child categories."
msgstr ""
-#: part/models.py:139
+#: part/models.py:140
msgid "Default keywords"
msgstr ""
-#: part/models.py:139
+#: part/models.py:140
msgid "Default keywords for parts in this category"
msgstr ""
-#: part/models.py:144 stock/models.py:113
+#: part/models.py:145 stock/models.py:113
msgid "Icon"
msgstr ""
-#: part/models.py:145 stock/models.py:114
+#: part/models.py:146 stock/models.py:114
msgid "Icon (optional)"
msgstr ""
-#: part/models.py:164
+#: part/models.py:165
msgid "You cannot make this part category structural because some parts are already assigned to it!"
msgstr ""
-#: part/models.py:475
+#: part/models.py:476
msgid "Invalid choice for parent part"
msgstr ""
-#: part/models.py:517 part/models.py:529
+#: part/models.py:518 part/models.py:530
#, python-brace-format
msgid "Part '{p1}' is used in BOM for '{p2}' (recursive)"
msgstr ""
-#: part/models.py:601
+#: part/models.py:602
#, python-brace-format
msgid "IPN must match regex pattern {pat}"
msgstr "L'IPN doit correspondre au modèle de regex {pat}"
-#: part/models.py:672
+#: part/models.py:673
msgid "Stock item with this serial number already exists"
msgstr ""
-#: part/models.py:803
+#: part/models.py:804
msgid "Duplicate IPN not allowed in part settings"
msgstr "IPN dupliqué non autorisé dans les paramètres de la pièce"
-#: part/models.py:808
+#: part/models.py:809
msgid "Part with this Name, IPN and Revision already exists."
msgstr ""
-#: part/models.py:822
+#: part/models.py:823
msgid "Parts cannot be assigned to structural part categories!"
msgstr ""
-#: part/models.py:846 part/models.py:3672
+#: part/models.py:847 part/models.py:3721
msgid "Part name"
msgstr ""
-#: part/models.py:852
+#: part/models.py:853
msgid "Is Template"
msgstr ""
-#: part/models.py:853
+#: part/models.py:854
msgid "Is this part a template part?"
msgstr ""
-#: part/models.py:863
+#: part/models.py:864
msgid "Is this part a variant of another part?"
msgstr ""
-#: part/models.py:870
+#: part/models.py:871
msgid "Part description (optional)"
msgstr ""
-#: part/models.py:876
+#: part/models.py:877
msgid "Part keywords to improve visibility in search results"
msgstr ""
-#: part/models.py:883 part/models.py:3198 part/models.py:3615
-#: part/serializers.py:848 part/templates/part/part_base.html:262
+#: part/models.py:884 part/models.py:3232 part/models.py:3664
+#: part/serializers.py:320 part/serializers.py:910
+#: part/templates/part/part_base.html:262
#: templates/InvenTree/settings/settings_staff_js.html:204
#: templates/js/translated/notification.js:59
-#: templates/js/translated/part.js:2269 templates/js/translated/part.js:2481
+#: templates/js/translated/part.js:2345
msgid "Category"
msgstr "Catégorie"
-#: part/models.py:884
+#: part/models.py:885
msgid "Part category"
msgstr "Catégorie de la pièce"
-#: part/models.py:890
+#: part/models.py:891
msgid "Internal Part Number"
msgstr ""
-#: part/models.py:895
+#: part/models.py:896
msgid "Part revision or version number"
msgstr ""
-#: part/models.py:921
+#: part/models.py:922
msgid "Where is this item normally stored?"
msgstr ""
-#: part/models.py:966 part/templates/part/part_base.html:378
+#: part/models.py:967 part/templates/part/part_base.html:378
msgid "Default Supplier"
msgstr ""
-#: part/models.py:967
+#: part/models.py:968
msgid "Default supplier part"
msgstr ""
-#: part/models.py:974
+#: part/models.py:975
msgid "Default Expiry"
msgstr ""
-#: part/models.py:975
+#: part/models.py:976
msgid "Expiry time (in days) for stock items of this part"
msgstr ""
-#: part/models.py:981
+#: part/models.py:982
msgid "Minimum allowed stock level"
msgstr ""
-#: part/models.py:988
+#: part/models.py:989
msgid "Units of measure for this part"
msgstr ""
-#: part/models.py:997
+#: part/models.py:998
msgid "Can this part be built from other parts?"
msgstr ""
-#: part/models.py:1003
+#: part/models.py:1004
msgid "Can this part be used to build other parts?"
msgstr ""
-#: part/models.py:1009
+#: part/models.py:1010
msgid "Does this part have tracking for unique items?"
msgstr ""
-#: part/models.py:1014
+#: part/models.py:1015
msgid "Can this part be purchased from external suppliers?"
msgstr ""
-#: part/models.py:1019
+#: part/models.py:1020
msgid "Can this part be sold to customers?"
msgstr ""
-#: part/models.py:1024
+#: part/models.py:1025
msgid "Is this part active?"
msgstr ""
-#: part/models.py:1029
+#: part/models.py:1030
msgid "Is this a virtual part, such as a software product or license?"
msgstr ""
-#: part/models.py:1031
+#: part/models.py:1032
msgid "BOM checksum"
msgstr ""
-#: part/models.py:1031
+#: part/models.py:1032
msgid "Stored BOM checksum"
msgstr ""
-#: part/models.py:1034
+#: part/models.py:1035
msgid "BOM checked by"
msgstr ""
-#: part/models.py:1036
+#: part/models.py:1037
msgid "BOM checked date"
msgstr ""
-#: part/models.py:1040
+#: part/models.py:1041
msgid "Creation User"
msgstr ""
-#: part/models.py:1042
+#: part/models.py:1043
msgid "User responsible for this part"
msgstr ""
-#: part/models.py:1046 part/templates/part/part_base.html:341
+#: part/models.py:1047 part/templates/part/part_base.html:341
#: stock/templates/stock/item_base.html:447
-#: templates/js/translated/part.js:2331
+#: templates/js/translated/part.js:2407
msgid "Last Stocktake"
msgstr ""
-#: part/models.py:1921
+#: part/models.py:1923
msgid "Sell multiple"
msgstr "Ventes multiples"
-#: part/models.py:2853
+#: part/models.py:2887
msgid "Currency used to cache pricing calculations"
msgstr ""
-#: part/models.py:2870
+#: part/models.py:2904
msgid "Minimum BOM Cost"
msgstr ""
-#: part/models.py:2871
+#: part/models.py:2905
msgid "Minimum cost of component parts"
msgstr ""
-#: part/models.py:2876
+#: part/models.py:2910
msgid "Maximum BOM Cost"
msgstr ""
-#: part/models.py:2877
+#: part/models.py:2911
msgid "Maximum cost of component parts"
msgstr ""
-#: part/models.py:2882
+#: part/models.py:2916
msgid "Minimum Purchase Cost"
msgstr ""
-#: part/models.py:2883
+#: part/models.py:2917
msgid "Minimum historical purchase cost"
msgstr ""
-#: part/models.py:2888
+#: part/models.py:2922
msgid "Maximum Purchase Cost"
msgstr ""
-#: part/models.py:2889
+#: part/models.py:2923
msgid "Maximum historical purchase cost"
msgstr ""
-#: part/models.py:2894
+#: part/models.py:2928
msgid "Minimum Internal Price"
msgstr ""
-#: part/models.py:2895
+#: part/models.py:2929
msgid "Minimum cost based on internal price breaks"
msgstr ""
-#: part/models.py:2900
+#: part/models.py:2934
msgid "Maximum Internal Price"
msgstr ""
-#: part/models.py:2901
+#: part/models.py:2935
msgid "Maximum cost based on internal price breaks"
msgstr ""
-#: part/models.py:2906
+#: part/models.py:2940
msgid "Minimum Supplier Price"
msgstr ""
-#: part/models.py:2907
+#: part/models.py:2941
msgid "Minimum price of part from external suppliers"
msgstr ""
-#: part/models.py:2912
+#: part/models.py:2946
msgid "Maximum Supplier Price"
msgstr ""
-#: part/models.py:2913
+#: part/models.py:2947
msgid "Maximum price of part from external suppliers"
msgstr ""
-#: part/models.py:2918
+#: part/models.py:2952
msgid "Minimum Variant Cost"
msgstr ""
-#: part/models.py:2919
+#: part/models.py:2953
msgid "Calculated minimum cost of variant parts"
msgstr ""
-#: part/models.py:2924
+#: part/models.py:2958
msgid "Maximum Variant Cost"
msgstr ""
-#: part/models.py:2925
+#: part/models.py:2959
msgid "Calculated maximum cost of variant parts"
msgstr ""
-#: part/models.py:2931
+#: part/models.py:2965
msgid "Calculated overall minimum cost"
msgstr ""
-#: part/models.py:2937
+#: part/models.py:2971
msgid "Calculated overall maximum cost"
msgstr ""
-#: part/models.py:2942
+#: part/models.py:2976
msgid "Minimum Sale Price"
msgstr ""
-#: part/models.py:2943
+#: part/models.py:2977
msgid "Minimum sale price based on price breaks"
msgstr ""
-#: part/models.py:2948
+#: part/models.py:2982
msgid "Maximum Sale Price"
msgstr ""
-#: part/models.py:2949
+#: part/models.py:2983
msgid "Maximum sale price based on price breaks"
msgstr ""
-#: part/models.py:2954
+#: part/models.py:2988
msgid "Minimum Sale Cost"
msgstr ""
-#: part/models.py:2955
+#: part/models.py:2989
msgid "Minimum historical sale price"
msgstr ""
-#: part/models.py:2960
+#: part/models.py:2994
msgid "Maximum Sale Cost"
msgstr ""
-#: part/models.py:2961
+#: part/models.py:2995
msgid "Maximum historical sale price"
msgstr ""
-#: part/models.py:2980
+#: part/models.py:3014
msgid "Part for stocktake"
msgstr ""
-#: part/models.py:2985
+#: part/models.py:3019
msgid "Item Count"
msgstr ""
-#: part/models.py:2986
+#: part/models.py:3020
msgid "Number of individual stock entries at time of stocktake"
msgstr ""
-#: part/models.py:2993
+#: part/models.py:3027
msgid "Total available stock at time of stocktake"
msgstr ""
-#: part/models.py:2997 part/models.py:3080
+#: part/models.py:3031 part/models.py:3114
#: part/templates/part/part_scheduling.html:13
#: report/templates/report/inventree_test_report_base.html:106
#: templates/InvenTree/settings/plugin_settings.html:37
#: templates/InvenTree/settings/settings_staff_js.html:360
-#: templates/js/translated/part.js:1059 templates/js/translated/pricing.js:812
+#: templates/js/translated/part.js:1058 templates/js/translated/pricing.js:812
#: templates/js/translated/pricing.js:936
-#: templates/js/translated/purchase_order.js:1691
-#: templates/js/translated/stock.js:2558
+#: templates/js/translated/purchase_order.js:1706
+#: templates/js/translated/stock.js:2689
msgid "Date"
msgstr "Date"
-#: part/models.py:2998
+#: part/models.py:3032
msgid "Date stocktake was performed"
msgstr ""
-#: part/models.py:3006
+#: part/models.py:3040
msgid "Additional notes"
msgstr ""
-#: part/models.py:3014
+#: part/models.py:3048
msgid "User who performed this stocktake"
msgstr ""
-#: part/models.py:3019
+#: part/models.py:3053
msgid "Minimum Stock Cost"
msgstr ""
-#: part/models.py:3020
+#: part/models.py:3054
msgid "Estimated minimum cost of stock on hand"
msgstr ""
-#: part/models.py:3025
+#: part/models.py:3059
msgid "Maximum Stock Cost"
msgstr ""
-#: part/models.py:3026
+#: part/models.py:3060
msgid "Estimated maximum cost of stock on hand"
msgstr ""
-#: part/models.py:3087 templates/InvenTree/settings/settings_staff_js.html:349
+#: part/models.py:3121 templates/InvenTree/settings/settings_staff_js.html:349
msgid "Report"
msgstr ""
-#: part/models.py:3088
+#: part/models.py:3122
msgid "Stocktake report file (generated internally)"
msgstr ""
-#: part/models.py:3093 templates/InvenTree/settings/settings_staff_js.html:356
+#: part/models.py:3127 templates/InvenTree/settings/settings_staff_js.html:356
msgid "Part Count"
msgstr ""
-#: part/models.py:3094
+#: part/models.py:3128
msgid "Number of parts covered by stocktake"
msgstr ""
-#: part/models.py:3102
+#: part/models.py:3136
msgid "User who requested this stocktake report"
msgstr ""
-#: part/models.py:3238
+#: part/models.py:3272
msgid "Test templates can only be created for trackable parts"
msgstr ""
-#: part/models.py:3255
+#: part/models.py:3289
msgid "Test with this name already exists for this part"
msgstr ""
-#: part/models.py:3275 templates/js/translated/part.js:2821
+#: part/models.py:3309 templates/js/translated/part.js:2806
msgid "Test Name"
msgstr "Nom de test"
-#: part/models.py:3276
+#: part/models.py:3310
msgid "Enter a name for the test"
msgstr ""
-#: part/models.py:3281
+#: part/models.py:3315
msgid "Test Description"
msgstr ""
-#: part/models.py:3282
+#: part/models.py:3316
msgid "Enter description for this test"
msgstr ""
-#: part/models.py:3287 templates/js/translated/part.js:2830
-#: templates/js/translated/table_filters.js:423
+#: part/models.py:3321 templates/js/translated/part.js:2815
+#: templates/js/translated/table_filters.js:429
msgid "Required"
msgstr "Requis"
-#: part/models.py:3288
+#: part/models.py:3322
msgid "Is this test required to pass?"
msgstr ""
-#: part/models.py:3293 templates/js/translated/part.js:2838
+#: part/models.py:3327 templates/js/translated/part.js:2823
msgid "Requires Value"
msgstr ""
-#: part/models.py:3294
+#: part/models.py:3328
msgid "Does this test require a value when adding a test result?"
msgstr ""
-#: part/models.py:3299 templates/js/translated/part.js:2845
+#: part/models.py:3333 templates/js/translated/part.js:2830
msgid "Requires Attachment"
msgstr ""
-#: part/models.py:3300
+#: part/models.py:3334
msgid "Does this test require a file attachment when adding a test result?"
msgstr ""
-#: part/models.py:3346
+#: part/models.py:3380
msgid "Checkbox parameters cannot have units"
msgstr ""
-#: part/models.py:3351
+#: part/models.py:3385
msgid "Checkbox parameters cannot have choices"
msgstr ""
-#: part/models.py:3369
+#: part/models.py:3403
msgid "Choices must be unique"
msgstr ""
-#: part/models.py:3385
+#: part/models.py:3419
msgid "Parameter template name must be unique"
msgstr ""
-#: part/models.py:3401
+#: part/models.py:3435
msgid "Parameter Name"
msgstr ""
-#: part/models.py:3407
+#: part/models.py:3441
msgid "Physical units for this parameter"
msgstr ""
-#: part/models.py:3417
+#: part/models.py:3451
msgid "Parameter description"
msgstr ""
-#: part/models.py:3423 templates/js/translated/part.js:1600
-#: templates/js/translated/table_filters.js:734
+#: part/models.py:3457 templates/js/translated/part.js:1599
+#: templates/js/translated/table_filters.js:756
msgid "Checkbox"
msgstr ""
-#: part/models.py:3424
+#: part/models.py:3458
msgid "Is this parameter a checkbox?"
msgstr ""
-#: part/models.py:3429 templates/js/translated/part.js:1609
+#: part/models.py:3463 templates/js/translated/part.js:1608
msgid "Choices"
msgstr ""
-#: part/models.py:3430
+#: part/models.py:3464
msgid "Valid choices for this parameter (comma-separated)"
msgstr ""
-#: part/models.py:3511
+#: part/models.py:3545
msgid "Invalid choice for parameter value"
msgstr ""
-#: part/models.py:3555
+#: part/models.py:3589
msgid "Parent Part"
msgstr ""
-#: part/models.py:3560 part/models.py:3621 part/models.py:3622
+#: part/models.py:3594 part/models.py:3670 part/models.py:3671
#: templates/InvenTree/settings/settings_staff_js.html:199
msgid "Parameter Template"
msgstr ""
-#: part/models.py:3565
+#: part/models.py:3599
msgid "Data"
msgstr "Données"
-#: part/models.py:3565
+#: part/models.py:3599
msgid "Parameter Value"
msgstr ""
-#: part/models.py:3626 templates/InvenTree/settings/settings_staff_js.html:208
+#: part/models.py:3675 templates/InvenTree/settings/settings_staff_js.html:208
msgid "Default Value"
msgstr "Valeur par Défaut"
-#: part/models.py:3627
+#: part/models.py:3676
msgid "Default Parameter Value"
msgstr ""
-#: part/models.py:3664
+#: part/models.py:3713
msgid "Part ID or part name"
msgstr ""
-#: part/models.py:3668
+#: part/models.py:3717
msgid "Unique part ID value"
msgstr ""
-#: part/models.py:3676
+#: part/models.py:3725
msgid "Part IPN value"
msgstr ""
-#: part/models.py:3679
+#: part/models.py:3728
msgid "Level"
msgstr ""
-#: part/models.py:3680
+#: part/models.py:3729
msgid "BOM level"
msgstr ""
-#: part/models.py:3764
+#: part/models.py:3735 part/models.py:4113
+msgid "BOM Item"
+msgstr "Article du BOM"
+
+#: part/models.py:3808
msgid "Select parent part"
msgstr ""
-#: part/models.py:3772
+#: part/models.py:3816
msgid "Sub part"
msgstr ""
-#: part/models.py:3773
+#: part/models.py:3817
msgid "Select part to be used in BOM"
msgstr ""
-#: part/models.py:3779
+#: part/models.py:3823
msgid "BOM quantity for this BOM item"
msgstr ""
-#: part/models.py:3783 part/templates/part/upload_bom.html:58
-#: templates/js/translated/bom.js:971 templates/js/translated/bom.js:998
-#: templates/js/translated/build.js:2113
-#: templates/js/translated/table_filters.js:156
-#: templates/js/translated/table_filters.js:185
-#: templates/js/translated/table_filters.js:500
-msgid "Optional"
-msgstr ""
-
-#: part/models.py:3784
+#: part/models.py:3828
msgid "This BOM item is optional"
msgstr ""
-#: part/models.py:3789 templates/js/translated/bom.js:967
-#: templates/js/translated/bom.js:1007 templates/js/translated/build.js:2104
-#: templates/js/translated/table_filters.js:160
-#: templates/js/translated/table_filters.js:496
-msgid "Consumable"
-msgstr ""
-
-#: part/models.py:3790
+#: part/models.py:3834
msgid "This BOM item is consumable (it is not tracked in build orders)"
msgstr ""
-#: part/models.py:3794 part/templates/part/upload_bom.html:55
+#: part/models.py:3838 part/templates/part/upload_bom.html:55
msgid "Overage"
msgstr "Surplus"
-#: part/models.py:3795
+#: part/models.py:3839
msgid "Estimated build wastage quantity (absolute or percentage)"
msgstr ""
-#: part/models.py:3798
+#: part/models.py:3842
msgid "BOM item reference"
msgstr ""
-#: part/models.py:3801
+#: part/models.py:3845
msgid "BOM item notes"
msgstr ""
-#: part/models.py:3805
+#: part/models.py:3849
msgid "Checksum"
msgstr ""
-#: part/models.py:3805
+#: part/models.py:3849
msgid "BOM line checksum"
msgstr ""
-#: part/models.py:3810 templates/js/translated/table_filters.js:144
+#: part/models.py:3854 templates/js/translated/table_filters.js:150
msgid "Validated"
msgstr "Validée"
-#: part/models.py:3811
+#: part/models.py:3855
msgid "This BOM item has been validated"
msgstr ""
-#: part/models.py:3816 part/templates/part/upload_bom.html:57
-#: templates/js/translated/bom.js:1024
-#: templates/js/translated/table_filters.js:148
-#: templates/js/translated/table_filters.js:181
+#: part/models.py:3860 part/templates/part/upload_bom.html:57
+#: templates/js/translated/bom.js:1042
+#: templates/js/translated/table_filters.js:154
+#: templates/js/translated/table_filters.js:187
msgid "Gets inherited"
msgstr ""
-#: part/models.py:3817
+#: part/models.py:3861
msgid "This BOM item is inherited by BOMs for variant parts"
msgstr ""
-#: part/models.py:3822 part/templates/part/upload_bom.html:56
-#: templates/js/translated/bom.js:1016
+#: part/models.py:3866 part/templates/part/upload_bom.html:56
+#: templates/js/translated/bom.js:1034
msgid "Allow Variants"
msgstr ""
-#: part/models.py:3823
+#: part/models.py:3867
msgid "Stock items for variant parts can be used for this BOM item"
msgstr ""
-#: part/models.py:3909 stock/models.py:577
+#: part/models.py:3953 stock/models.py:577
msgid "Quantity must be integer value for trackable parts"
msgstr ""
-#: part/models.py:3918 part/models.py:3920
+#: part/models.py:3962 part/models.py:3964
msgid "Sub part must be specified"
msgstr ""
-#: part/models.py:4036
+#: part/models.py:4080
msgid "BOM Item Substitute"
msgstr ""
-#: part/models.py:4057
+#: part/models.py:4101
msgid "Substitute part cannot be the same as the master part"
msgstr ""
-#: part/models.py:4070
+#: part/models.py:4114
msgid "Parent BOM item"
msgstr ""
-#: part/models.py:4078
+#: part/models.py:4122
msgid "Substitute part"
msgstr ""
-#: part/models.py:4093
+#: part/models.py:4137
msgid "Part 1"
msgstr ""
-#: part/models.py:4097
+#: part/models.py:4141
msgid "Part 2"
msgstr ""
-#: part/models.py:4097
+#: part/models.py:4141
msgid "Select Related Part"
msgstr ""
-#: part/models.py:4115
+#: part/models.py:4159
msgid "Part relationship cannot be created between a part and itself"
msgstr ""
-#: part/models.py:4119
+#: part/models.py:4163
msgid "Duplicate relationship already exists"
msgstr ""
-#: part/serializers.py:152 part/serializers.py:175 stock/serializers.py:257
+#: part/serializers.py:152 part/serializers.py:175 stock/serializers.py:319
msgid "Purchase currency of this stock item"
msgstr "Devise d'achat de l'item"
-#: part/serializers.py:302
+#: part/serializers.py:313
+msgid "No parts selected"
+msgstr ""
+
+#: part/serializers.py:321
+msgid "Select category"
+msgstr ""
+
+#: part/serializers.py:352
msgid "Original Part"
msgstr ""
-#: part/serializers.py:302
+#: part/serializers.py:352
msgid "Select original part to duplicate"
msgstr ""
-#: part/serializers.py:307
+#: part/serializers.py:357
msgid "Copy Image"
msgstr "Copier l'image"
-#: part/serializers.py:307
+#: part/serializers.py:357
msgid "Copy image from original part"
msgstr ""
-#: part/serializers.py:312 part/templates/part/detail.html:296
+#: part/serializers.py:362 part/templates/part/detail.html:277
msgid "Copy BOM"
msgstr ""
-#: part/serializers.py:312
+#: part/serializers.py:362
msgid "Copy bill of materials from original part"
msgstr ""
-#: part/serializers.py:317
+#: part/serializers.py:367
msgid "Copy Parameters"
msgstr "Copier les paramètres"
-#: part/serializers.py:317
+#: part/serializers.py:367
msgid "Copy parameter data from original part"
msgstr ""
-#: part/serializers.py:327
+#: part/serializers.py:377
msgid "Initial Stock Quantity"
msgstr ""
-#: part/serializers.py:327
+#: part/serializers.py:377
msgid "Specify initial stock quantity for this Part. If quantity is zero, no stock is added."
msgstr ""
-#: part/serializers.py:333
+#: part/serializers.py:383
msgid "Initial Stock Location"
msgstr ""
-#: part/serializers.py:333
+#: part/serializers.py:383
msgid "Specify initial stock location for this Part"
msgstr ""
-#: part/serializers.py:343
+#: part/serializers.py:393
msgid "Select supplier (or leave blank to skip)"
msgstr ""
-#: part/serializers.py:354
+#: part/serializers.py:404
msgid "Select manufacturer (or leave blank to skip)"
msgstr ""
-#: part/serializers.py:360
+#: part/serializers.py:410
msgid "Manufacturer part number"
msgstr ""
-#: part/serializers.py:367
+#: part/serializers.py:417
msgid "Selected company is not a valid supplier"
msgstr ""
-#: part/serializers.py:375
+#: part/serializers.py:425
msgid "Selected company is not a valid manufacturer"
msgstr ""
-#: part/serializers.py:387
+#: part/serializers.py:437
msgid "Manufacturer part matching this MPN already exists"
msgstr ""
-#: part/serializers.py:395
+#: part/serializers.py:445
msgid "Supplier part matching this SKU already exists"
msgstr ""
-#: part/serializers.py:620 part/templates/part/copy_part.html:9
-#: templates/js/translated/part.js:449
+#: part/serializers.py:682 part/templates/part/copy_part.html:9
+#: templates/js/translated/part.js:448
msgid "Duplicate Part"
msgstr ""
-#: part/serializers.py:620
+#: part/serializers.py:682
msgid "Copy initial data from another Part"
msgstr ""
-#: part/serializers.py:625 templates/js/translated/part.js:103
+#: part/serializers.py:687 templates/js/translated/part.js:102
msgid "Initial Stock"
msgstr ""
-#: part/serializers.py:625
+#: part/serializers.py:687
msgid "Create Part with initial stock quantity"
msgstr ""
-#: part/serializers.py:630
+#: part/serializers.py:692
msgid "Supplier Information"
msgstr ""
-#: part/serializers.py:630
+#: part/serializers.py:692
msgid "Add initial supplier information for this part"
msgstr ""
-#: part/serializers.py:636
+#: part/serializers.py:698
msgid "Copy Category Parameters"
msgstr ""
-#: part/serializers.py:637
+#: part/serializers.py:699
msgid "Copy parameter templates from selected part category"
msgstr ""
-#: part/serializers.py:842
+#: part/serializers.py:904
msgid "Limit stocktake report to a particular part, and any variant parts"
msgstr ""
-#: part/serializers.py:848
+#: part/serializers.py:910
msgid "Limit stocktake report to a particular part category, and any child categories"
msgstr ""
-#: part/serializers.py:854
+#: part/serializers.py:916
msgid "Limit stocktake report to a particular stock location, and any child locations"
msgstr ""
-#: part/serializers.py:859
+#: part/serializers.py:921
msgid "Generate Report"
msgstr ""
-#: part/serializers.py:860
+#: part/serializers.py:922
msgid "Generate report file containing calculated stocktake data"
msgstr ""
-#: part/serializers.py:865
+#: part/serializers.py:927
msgid "Update Parts"
msgstr ""
-#: part/serializers.py:866
+#: part/serializers.py:928
msgid "Update specified parts with calculated stocktake data"
msgstr ""
-#: part/serializers.py:874
+#: part/serializers.py:936
msgid "Stocktake functionality is not enabled"
msgstr ""
-#: part/serializers.py:963
+#: part/serializers.py:1025
msgid "Update"
msgstr ""
-#: part/serializers.py:964
+#: part/serializers.py:1026
msgid "Update pricing for this part"
msgstr ""
-#: part/serializers.py:1246
+#: part/serializers.py:1308
msgid "Select part to copy BOM from"
msgstr ""
-#: part/serializers.py:1254
+#: part/serializers.py:1316
msgid "Remove Existing Data"
msgstr ""
-#: part/serializers.py:1255
+#: part/serializers.py:1317
msgid "Remove existing BOM items before copying"
msgstr ""
-#: part/serializers.py:1260
+#: part/serializers.py:1322
msgid "Include Inherited"
msgstr ""
-#: part/serializers.py:1261
+#: part/serializers.py:1323
msgid "Include BOM items which are inherited from templated parts"
msgstr ""
-#: part/serializers.py:1266
+#: part/serializers.py:1328
msgid "Skip Invalid Rows"
msgstr ""
-#: part/serializers.py:1267
+#: part/serializers.py:1329
msgid "Enable this option to skip invalid rows"
msgstr ""
-#: part/serializers.py:1272
+#: part/serializers.py:1334
msgid "Copy Substitute Parts"
msgstr ""
-#: part/serializers.py:1273
+#: part/serializers.py:1335
msgid "Copy substitute parts when duplicate BOM items"
msgstr ""
-#: part/serializers.py:1313
+#: part/serializers.py:1375
msgid "Clear Existing BOM"
msgstr ""
-#: part/serializers.py:1314
+#: part/serializers.py:1376
msgid "Delete existing BOM items before uploading"
msgstr ""
-#: part/serializers.py:1344
+#: part/serializers.py:1406
msgid "No part column specified"
msgstr ""
-#: part/serializers.py:1387
+#: part/serializers.py:1449
msgid "Multiple matching parts found"
msgstr ""
-#: part/serializers.py:1390
+#: part/serializers.py:1452
msgid "No matching part found"
msgstr ""
-#: part/serializers.py:1393
+#: part/serializers.py:1455
msgid "Part is not designated as a component"
msgstr ""
-#: part/serializers.py:1402
+#: part/serializers.py:1464
msgid "Quantity not provided"
msgstr ""
-#: part/serializers.py:1410
+#: part/serializers.py:1472
msgid "Invalid quantity"
msgstr ""
-#: part/serializers.py:1431
+#: part/serializers.py:1493
msgid "At least one BOM item is required"
msgstr ""
@@ -6421,9 +6453,9 @@ msgstr ""
msgid "The available stock for {part.name} has fallen below the configured minimum level"
msgstr ""
-#: part/tasks.py:294 templates/js/translated/part.js:1040
-#: templates/js/translated/part.js:1793 templates/js/translated/part.js:1848
-#: templates/js/translated/purchase_order.js:2052
+#: part/tasks.py:294 templates/js/translated/part.js:1039
+#: templates/js/translated/part.js:1792 templates/js/translated/part.js:1847
+#: templates/js/translated/purchase_order.js:2062
msgid "Total Quantity"
msgstr ""
@@ -6461,14 +6493,6 @@ msgstr ""
msgid "The BOM for %(part)s has not been validated."
msgstr ""
-#: part/templates/part/bom.html:30 part/templates/part/detail.html:291
-msgid "BOM actions"
-msgstr ""
-
-#: part/templates/part/bom.html:34
-msgid "Delete Items"
-msgstr "Supprimer l'élément"
-
#: part/templates/part/category.html:34
msgid "Perform stocktake for this part category"
msgstr ""
@@ -6505,7 +6529,7 @@ msgstr "Supprimer la catégorie"
msgid "Top level part category"
msgstr ""
-#: part/templates/part/category.html:121 part/templates/part/category.html:225
+#: part/templates/part/category.html:121 part/templates/part/category.html:206
#: part/templates/part/category_sidebar.html:7
msgid "Subcategories"
msgstr ""
@@ -6518,33 +6542,20 @@ msgstr "Composantes (incluant sous-catégories)"
msgid "Create new part"
msgstr ""
-#: part/templates/part/category.html:165 templates/js/translated/bom.js:443
+#: part/templates/part/category.html:165 templates/js/translated/bom.js:444
msgid "New Part"
msgstr ""
-#: part/templates/part/category.html:175 part/templates/part/detail.html:390
-#: part/templates/part/detail.html:421
-msgid "Options"
-msgstr ""
-
-#: part/templates/part/category.html:179
-msgid "Set category"
-msgstr ""
-
-#: part/templates/part/category.html:180
-msgid "Set Category"
-msgstr ""
-
-#: part/templates/part/category.html:208
+#: part/templates/part/category.html:191
#: templates/InvenTree/settings/sidebar.html:47
msgid "Part Parameters"
msgstr ""
-#: part/templates/part/category.html:229
+#: part/templates/part/category.html:210
msgid "Create new part category"
msgstr ""
-#: part/templates/part/category.html:230
+#: part/templates/part/category.html:211
msgid "New Category"
msgstr "Nouvelle catégorie"
@@ -6581,7 +6592,7 @@ msgid "Refresh scheduling data"
msgstr ""
#: part/templates/part/detail.html:45 part/templates/part/prices.html:15
-#: templates/js/translated/tables.js:584
+#: templates/js/translated/tables.js:560
msgid "Refresh"
msgstr "Actualiser"
@@ -6592,7 +6603,7 @@ msgstr ""
#: part/templates/part/detail.html:67 part/templates/part/part_sidebar.html:50
#: stock/admin.py:130 templates/InvenTree/settings/part_stocktake.html:29
#: templates/InvenTree/settings/sidebar.html:51
-#: templates/js/translated/stock.js:1952 users/models.py:39
+#: templates/js/translated/stock.js:2109 users/models.py:39
msgid "Stocktake"
msgstr "Prise d'inventaire"
@@ -6604,101 +6615,101 @@ msgstr ""
msgid "Add Test Template"
msgstr ""
-#: part/templates/part/detail.html:145 stock/templates/stock/item.html:53
+#: part/templates/part/detail.html:139 stock/templates/stock/item.html:49
msgid "Sales Order Allocations"
msgstr ""
-#: part/templates/part/detail.html:165
+#: part/templates/part/detail.html:156
msgid "Part Notes"
msgstr ""
-#: part/templates/part/detail.html:180
+#: part/templates/part/detail.html:171
msgid "Part Variants"
msgstr ""
-#: part/templates/part/detail.html:184
+#: part/templates/part/detail.html:175
msgid "Create new variant"
msgstr ""
-#: part/templates/part/detail.html:185
+#: part/templates/part/detail.html:176
msgid "New Variant"
msgstr ""
-#: part/templates/part/detail.html:212
+#: part/templates/part/detail.html:199
msgid "Add new parameter"
msgstr ""
-#: part/templates/part/detail.html:249 part/templates/part/part_sidebar.html:58
+#: part/templates/part/detail.html:232 part/templates/part/part_sidebar.html:58
msgid "Related Parts"
msgstr ""
-#: part/templates/part/detail.html:253 part/templates/part/detail.html:254
+#: part/templates/part/detail.html:236 part/templates/part/detail.html:237
msgid "Add Related"
msgstr ""
-#: part/templates/part/detail.html:274 part/templates/part/part_sidebar.html:17
+#: part/templates/part/detail.html:255 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:279
+#: part/templates/part/detail.html:260
msgid "Export actions"
msgstr ""
-#: part/templates/part/detail.html:283 templates/js/translated/bom.js:339
+#: part/templates/part/detail.html:264 templates/js/translated/bom.js:340
msgid "Export BOM"
msgstr ""
-#: part/templates/part/detail.html:285
+#: part/templates/part/detail.html:266
msgid "Print BOM Report"
msgstr ""
-#: part/templates/part/detail.html:295
+#: part/templates/part/detail.html:272
+msgid "BOM actions"
+msgstr ""
+
+#: part/templates/part/detail.html:276
msgid "Upload BOM"
msgstr ""
-#: part/templates/part/detail.html:297
+#: part/templates/part/detail.html:278
msgid "Validate BOM"
msgstr ""
-#: part/templates/part/detail.html:302 part/templates/part/detail.html:303
-#: templates/js/translated/bom.js:1279 templates/js/translated/bom.js:1280
+#: part/templates/part/detail.html:283 part/templates/part/detail.html:284
+#: templates/js/translated/bom.js:1299 templates/js/translated/bom.js:1300
msgid "Add BOM Item"
msgstr ""
-#: part/templates/part/detail.html:316
+#: part/templates/part/detail.html:297
msgid "Assemblies"
msgstr ""
-#: part/templates/part/detail.html:334
+#: part/templates/part/detail.html:313
msgid "Part Builds"
msgstr ""
-#: part/templates/part/detail.html:361 stock/templates/stock/item.html:38
+#: part/templates/part/detail.html:338 stock/templates/stock/item.html:36
msgid "Build Order Allocations"
msgstr ""
-#: part/templates/part/detail.html:377
+#: part/templates/part/detail.html:352
msgid "Part Suppliers"
msgstr ""
-#: part/templates/part/detail.html:407
+#: part/templates/part/detail.html:372
msgid "Part Manufacturers"
msgstr "Fabricants de composants"
-#: part/templates/part/detail.html:423
-msgid "Delete manufacturer parts"
-msgstr ""
-
-#: part/templates/part/detail.html:707
+#: part/templates/part/detail.html:654
msgid "Related Part"
msgstr ""
-#: part/templates/part/detail.html:715
+#: part/templates/part/detail.html:662
msgid "Add Related Part"
msgstr ""
-#: part/templates/part/detail.html:800
+#: part/templates/part/detail.html:747
msgid "Add Test Result Template"
msgstr ""
@@ -6732,13 +6743,13 @@ msgid "Download Part Import Template"
msgstr ""
#: part/templates/part/import_wizard/part_upload.html:92
-#: templates/js/translated/bom.js:308 templates/js/translated/bom.js:342
+#: templates/js/translated/bom.js:309 templates/js/translated/bom.js:343
#: templates/js/translated/order.js:129 templates/js/translated/tables.js:189
msgid "Format"
msgstr ""
#: part/templates/part/import_wizard/part_upload.html:93
-#: templates/js/translated/bom.js:309 templates/js/translated/bom.js:343
+#: templates/js/translated/bom.js:310 templates/js/translated/bom.js:344
#: templates/js/translated/order.js:130
msgid "Select file format"
msgstr "Sélectionner un format de fichier"
@@ -6779,7 +6790,7 @@ msgstr ""
msgid "Transfer part stock"
msgstr ""
-#: part/templates/part/part_base.html:93
+#: part/templates/part/part_base.html:93 templates/js/translated/part.js:2264
msgid "Part actions"
msgstr ""
@@ -6824,10 +6835,10 @@ msgid "Part is not active"
msgstr ""
#: part/templates/part/part_base.html:148
-#: templates/js/translated/company.js:945
-#: templates/js/translated/company.js:1185
-#: templates/js/translated/model_renderers.js:273
-#: templates/js/translated/part.js:792 templates/js/translated/part.js:1192
+#: templates/js/translated/company.js:1318
+#: templates/js/translated/company.js:1606
+#: templates/js/translated/model_renderers.js:287
+#: templates/js/translated/part.js:791 templates/js/translated/part.js:1191
msgid "Inactive"
msgstr ""
@@ -6850,7 +6861,7 @@ msgstr ""
msgid "Allocated to Sales Orders"
msgstr ""
-#: part/templates/part/part_base.html:237 templates/js/translated/bom.js:1178
+#: part/templates/part/part_base.html:237 templates/js/translated/bom.js:1198
msgid "Can Build"
msgstr ""
@@ -6858,8 +6869,8 @@ msgstr ""
msgid "Minimum stock level"
msgstr ""
-#: part/templates/part/part_base.html:324 templates/js/translated/bom.js:1041
-#: templates/js/translated/part.js:1238 templates/js/translated/part.js:2304
+#: part/templates/part/part_base.html:324 templates/js/translated/bom.js:1059
+#: templates/js/translated/part.js:1237 templates/js/translated/part.js:2380
#: templates/js/translated/pricing.js:391
#: templates/js/translated/pricing.js:1040
msgid "Price Range"
@@ -6882,7 +6893,7 @@ msgstr ""
msgid "Link Barcode to Part"
msgstr ""
-#: part/templates/part/part_base.html:474 templates/js/translated/part.js:2191
+#: part/templates/part/part_base.html:474 templates/js/translated/part.js:2258
msgid "part"
msgstr ""
@@ -6956,9 +6967,9 @@ msgstr ""
#: stock/templates/stock/stock_app_base.html:10
#: templates/InvenTree/search.html:153
#: templates/InvenTree/settings/sidebar.html:49
-#: templates/js/translated/part.js:1216 templates/js/translated/part.js:2120
-#: templates/js/translated/part.js:2284 templates/js/translated/stock.js:1022
-#: templates/js/translated/stock.js:1829 templates/navbar.html:31
+#: templates/js/translated/part.js:1215 templates/js/translated/part.js:2119
+#: templates/js/translated/part.js:2360 templates/js/translated/stock.js:1021
+#: templates/js/translated/stock.js:1986 templates/navbar.html:31
msgid "Stock"
msgstr "Stock"
@@ -6989,9 +7000,9 @@ msgstr ""
#: part/templates/part/prices.html:25 stock/admin.py:129
#: stock/templates/stock/item_base.html:442
-#: templates/js/translated/company.js:1313
-#: templates/js/translated/company.js:1323
-#: templates/js/translated/stock.js:1982
+#: templates/js/translated/company.js:1734
+#: templates/js/translated/company.js:1744
+#: templates/js/translated/stock.js:2139
msgid "Last Updated"
msgstr ""
@@ -7054,12 +7065,12 @@ msgstr ""
msgid "Add Sell Price Break"
msgstr ""
-#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:682
-#: templates/js/translated/part.js:2115 templates/js/translated/part.js:2117
+#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:681
+#: templates/js/translated/part.js:2114 templates/js/translated/part.js:2116
msgid "No Stock"
msgstr ""
-#: part/templates/part/stock_count.html:9 templates/InvenTree/index.html:167
+#: part/templates/part/stock_count.html:9 templates/InvenTree/index.html:120
msgid "Low Stock"
msgstr ""
@@ -7163,7 +7174,7 @@ msgid "Match found for barcode data"
msgstr "Correspondance trouvée pour les données du code-barres"
#: plugin/base/barcodes/api.py:120
-#: templates/js/translated/purchase_order.js:1372
+#: templates/js/translated/purchase_order.js:1387
msgid "Barcode matches existing item"
msgstr ""
@@ -7226,43 +7237,43 @@ msgstr ""
msgid "Open link"
msgstr ""
-#: plugin/models.py:27
+#: plugin/models.py:28
msgid "Plugin Configuration"
msgstr ""
-#: plugin/models.py:28
+#: plugin/models.py:29
msgid "Plugin Configurations"
msgstr ""
-#: plugin/models.py:33
+#: plugin/models.py:34
msgid "Key"
msgstr ""
-#: plugin/models.py:34
+#: plugin/models.py:35
msgid "Key of plugin"
msgstr ""
-#: plugin/models.py:42
+#: plugin/models.py:43
msgid "PluginName of the plugin"
msgstr "Non du Plugin"
-#: plugin/models.py:48
+#: plugin/models.py:49
msgid "Is the plugin active"
msgstr ""
-#: plugin/models.py:124
+#: plugin/models.py:125
msgid "Sample plugin"
msgstr ""
-#: plugin/models.py:133
+#: plugin/models.py:134
msgid "Builtin Plugin"
msgstr "Extension Intégrée"
-#: plugin/models.py:159 templates/InvenTree/settings/plugin_settings.html:9
+#: plugin/models.py:160 templates/InvenTree/settings/plugin_settings.html:9
msgid "Plugin"
msgstr "Extension"
-#: plugin/models.py:210
+#: plugin/models.py:211
msgid "Method"
msgstr ""
@@ -7414,47 +7425,47 @@ msgstr ""
msgid "Build query filters (comma-separated list of key=value pairs"
msgstr ""
-#: report/models.py:418
+#: report/models.py:420
msgid "Part Filters"
msgstr "Filtres de composants"
-#: report/models.py:419
+#: report/models.py:421
msgid "Part query filters (comma-separated list of key=value pairs"
msgstr ""
-#: report/models.py:453
+#: report/models.py:455
msgid "Purchase order query filters"
msgstr ""
-#: report/models.py:491
+#: report/models.py:493
msgid "Sales order query filters"
msgstr ""
-#: report/models.py:529
+#: report/models.py:531
msgid "Return order query filters"
msgstr ""
-#: report/models.py:582
+#: report/models.py:584
msgid "Snippet"
msgstr "Extrait "
-#: report/models.py:583
+#: report/models.py:585
msgid "Report snippet file"
msgstr ""
-#: report/models.py:587
+#: report/models.py:589
msgid "Snippet file description"
msgstr ""
-#: report/models.py:624
+#: report/models.py:626
msgid "Asset"
msgstr "Elément"
-#: report/models.py:625
+#: report/models.py:627
msgid "Report asset file"
msgstr ""
-#: report/models.py:632
+#: report/models.py:634
msgid "Asset file description"
msgstr ""
@@ -7475,8 +7486,8 @@ msgstr ""
#: templates/js/translated/order.js:316 templates/js/translated/pricing.js:527
#: templates/js/translated/pricing.js:596
#: templates/js/translated/pricing.js:820
-#: templates/js/translated/purchase_order.js:2083
-#: templates/js/translated/sales_order.js:1817
+#: templates/js/translated/purchase_order.js:2093
+#: templates/js/translated/sales_order.js:1829
msgid "Unit Price"
msgstr ""
@@ -7488,23 +7499,23 @@ msgstr ""
#: report/templates/report/inventree_po_report_base.html:72
#: report/templates/report/inventree_so_report_base.html:72
-#: templates/js/translated/purchase_order.js:1985
-#: templates/js/translated/sales_order.js:1792
+#: templates/js/translated/purchase_order.js:1995
+#: templates/js/translated/sales_order.js:1804
msgid "Total"
msgstr ""
#: report/templates/report/inventree_return_order_report_base.html:25
#: report/templates/report/inventree_test_report_base.html:88
#: stock/models.py:725 stock/templates/stock/item_base.html:312
-#: templates/js/translated/build.js:502 templates/js/translated/build.js:1423
-#: templates/js/translated/build.js:1989
-#: templates/js/translated/model_renderers.js:201
-#: templates/js/translated/return_order.js:528
-#: templates/js/translated/return_order.js:708
-#: templates/js/translated/sales_order.js:300
-#: templates/js/translated/sales_order.js:1597
-#: templates/js/translated/sales_order.js:1682
-#: templates/js/translated/stock.js:563
+#: templates/js/translated/build.js:508 templates/js/translated/build.js:1306
+#: templates/js/translated/build.js:2281
+#: templates/js/translated/model_renderers.js:215
+#: templates/js/translated/return_order.js:540
+#: templates/js/translated/return_order.js:720
+#: templates/js/translated/sales_order.js:312
+#: templates/js/translated/sales_order.js:1609
+#: templates/js/translated/sales_order.js:1694
+#: templates/js/translated/stock.js:562
msgid "Serial Number"
msgstr "Numéro de série"
@@ -7517,7 +7528,7 @@ msgid "Test Results"
msgstr ""
#: report/templates/report/inventree_test_report_base.html:102
-#: stock/models.py:2243 templates/js/translated/stock.js:1419
+#: stock/models.py:2243 templates/js/translated/stock.js:1418
msgid "Test"
msgstr ""
@@ -7548,8 +7559,8 @@ msgid "Installed Items"
msgstr ""
#: report/templates/report/inventree_test_report_base.html:168
-#: stock/admin.py:104 templates/js/translated/stock.js:667
-#: templates/js/translated/stock.js:838 templates/js/translated/stock.js:2849
+#: stock/admin.py:104 templates/js/translated/stock.js:666
+#: templates/js/translated/stock.js:837 templates/js/translated/stock.js:2976
msgid "Serial"
msgstr "Numéro de série"
@@ -7617,31 +7628,31 @@ msgstr ""
#: stock/admin.py:131 stock/models.py:789
#: stock/templates/stock/item_base.html:429
-#: templates/js/translated/stock.js:1966
+#: templates/js/translated/stock.js:2123
msgid "Expiry Date"
msgstr ""
-#: stock/api.py:420 templates/js/translated/table_filters.js:373
+#: stock/api.py:426 templates/js/translated/table_filters.js:379
msgid "External Location"
msgstr ""
-#: stock/api.py:582
+#: stock/api.py:619
msgid "Quantity is required"
msgstr ""
-#: stock/api.py:589
+#: stock/api.py:626
msgid "Valid part must be supplied"
msgstr ""
-#: stock/api.py:615
+#: stock/api.py:652
msgid "The given supplier part does not exist"
msgstr ""
-#: stock/api.py:624
+#: stock/api.py:661
msgid "The supplier part has a pack size defined, but flag use_pack_size not set"
msgstr ""
-#: stock/api.py:642
+#: stock/api.py:679
msgid "Serial numbers cannot be supplied for a non-trackable part"
msgstr ""
@@ -7652,7 +7663,7 @@ msgid "Stock Location"
msgstr ""
#: stock/models.py:55 stock/templates/stock/location.html:177
-#: templates/InvenTree/search.html:166 templates/js/translated/search.js:220
+#: templates/InvenTree/search.html:166 templates/js/translated/search.js:178
#: users/models.py:40
msgid "Stock Locations"
msgstr ""
@@ -7670,8 +7681,8 @@ msgstr "Sélectionner un propriétaire"
msgid "Stock items may not be directly located into a structural stock locations, but may be located to child locations."
msgstr ""
-#: stock/models.py:132 templates/js/translated/stock.js:2529
-#: templates/js/translated/table_filters.js:213
+#: stock/models.py:132 templates/js/translated/stock.js:2660
+#: templates/js/translated/table_filters.js:219
msgid "External"
msgstr ""
@@ -7687,7 +7698,7 @@ msgstr ""
msgid "Stock items cannot be located into structural stock locations!"
msgstr ""
-#: stock/models.py:583 stock/serializers.py:174
+#: stock/models.py:583 stock/serializers.py:223
msgid "Stock item cannot be created for virtual parts"
msgstr ""
@@ -7821,7 +7832,7 @@ msgstr "Les numéros de série doivent être une liste de nombres entiers"
msgid "Quantity does not match serial numbers"
msgstr "La quantité ne correspond pas au nombre de numéros de série"
-#: stock/models.py:1403 stock/serializers.py:374
+#: stock/models.py:1403 stock/serializers.py:440
msgid "Serial numbers already exist"
msgstr "Les numéros de série existent déjà"
@@ -7849,7 +7860,7 @@ msgstr ""
msgid "Serialized stock cannot be merged"
msgstr ""
-#: stock/models.py:1496 stock/serializers.py:975
+#: stock/models.py:1496 stock/serializers.py:1092
msgid "Duplicate stock items"
msgstr ""
@@ -7901,132 +7912,141 @@ msgstr ""
msgid "Test notes"
msgstr ""
-#: stock/serializers.py:76
+#: stock/serializers.py:121
msgid "Serial number is too large"
msgstr ""
-#: stock/serializers.py:166
+#: stock/serializers.py:215
msgid "Use pack size when adding: the quantity defined is the number of packs"
msgstr ""
-#: stock/serializers.py:254
+#: stock/serializers.py:316
msgid "Purchase price of this stock item, per unit or pack"
msgstr ""
-#: stock/serializers.py:307
+#: stock/serializers.py:373
msgid "Enter number of stock items to serialize"
msgstr "Entrez le nombre d'articles en stock à sérialiser"
-#: stock/serializers.py:319
+#: stock/serializers.py:385
#, python-brace-format
msgid "Quantity must not exceed available stock quantity ({q})"
msgstr ""
-#: stock/serializers.py:325
+#: stock/serializers.py:391
msgid "Enter serial numbers for new items"
msgstr "Entrez les numéros de série pour les nouveaux articles"
-#: stock/serializers.py:336 stock/serializers.py:932 stock/serializers.py:1174
+#: stock/serializers.py:402 stock/serializers.py:1049 stock/serializers.py:1291
msgid "Destination stock location"
msgstr ""
-#: stock/serializers.py:343
+#: stock/serializers.py:409
msgid "Optional note field"
msgstr ""
-#: stock/serializers.py:353
+#: stock/serializers.py:419
msgid "Serial numbers cannot be assigned to this part"
msgstr "Les numéros de série ne peuvent pas être assignés à cette pièce"
-#: stock/serializers.py:414
+#: stock/serializers.py:480
msgid "Select stock item to install"
msgstr ""
-#: stock/serializers.py:427
-msgid "Stock item is unavailable"
-msgstr ""
-
-#: stock/serializers.py:434
-msgid "Selected part is not in the Bill of Materials"
-msgstr ""
-
-#: stock/serializers.py:471
-msgid "Destination location for uninstalled item"
-msgstr ""
-
-#: stock/serializers.py:476 stock/serializers.py:557
+#: stock/serializers.py:485 stock/serializers.py:543 stock/serializers.py:624
+#: stock/serializers.py:682
msgid "Add transaction note (optional)"
msgstr ""
-#: stock/serializers.py:510
+#: stock/serializers.py:494
+msgid "Stock item is unavailable"
+msgstr ""
+
+#: stock/serializers.py:501
+msgid "Selected part is not in the Bill of Materials"
+msgstr ""
+
+#: stock/serializers.py:538
+msgid "Destination location for uninstalled item"
+msgstr ""
+
+#: stock/serializers.py:577
msgid "Select part to convert stock item into"
msgstr ""
-#: stock/serializers.py:521
+#: stock/serializers.py:588
msgid "Selected part is not a valid option for conversion"
msgstr ""
-#: stock/serializers.py:552
+#: stock/serializers.py:619
msgid "Destination location for returned item"
msgstr ""
-#: stock/serializers.py:787
+#: stock/serializers.py:663
+msgid "Select stock items to change status"
+msgstr ""
+
+#: stock/serializers.py:670
+msgid "No stock items selected"
+msgstr ""
+
+#: stock/serializers.py:904
msgid "Part must be salable"
msgstr ""
-#: stock/serializers.py:791
+#: stock/serializers.py:908
msgid "Item is allocated to a sales order"
msgstr ""
-#: stock/serializers.py:795
+#: stock/serializers.py:912
msgid "Item is allocated to a build order"
msgstr ""
-#: stock/serializers.py:826
+#: stock/serializers.py:943
msgid "Customer to assign stock items"
msgstr ""
-#: stock/serializers.py:832
+#: stock/serializers.py:949
msgid "Selected company is not a customer"
msgstr ""
-#: stock/serializers.py:840
+#: stock/serializers.py:957
msgid "Stock assignment notes"
msgstr ""
-#: stock/serializers.py:850 stock/serializers.py:1081
+#: stock/serializers.py:967 stock/serializers.py:1198
msgid "A list of stock items must be provided"
msgstr ""
-#: stock/serializers.py:939
+#: stock/serializers.py:1056
msgid "Stock merging notes"
msgstr ""
-#: stock/serializers.py:944
+#: stock/serializers.py:1061
msgid "Allow mismatched suppliers"
msgstr ""
-#: stock/serializers.py:945
+#: stock/serializers.py:1062
msgid "Allow stock items with different supplier parts to be merged"
msgstr ""
-#: stock/serializers.py:950
+#: stock/serializers.py:1067
msgid "Allow mismatched status"
msgstr ""
-#: stock/serializers.py:951
+#: stock/serializers.py:1068
msgid "Allow stock items with different status codes to be merged"
msgstr ""
-#: stock/serializers.py:961
+#: stock/serializers.py:1078
msgid "At least two stock items must be provided"
msgstr ""
-#: stock/serializers.py:1043
+#: stock/serializers.py:1160
msgid "StockItem primary key value"
msgstr ""
-#: stock/serializers.py:1071
+#: stock/serializers.py:1188
msgid "Stock transaction notes"
msgstr ""
@@ -8034,48 +8054,48 @@ msgstr ""
msgid "Stock Tracking Information"
msgstr ""
-#: stock/templates/stock/item.html:69
+#: stock/templates/stock/item.html:63
msgid "Child Stock Items"
msgstr ""
-#: stock/templates/stock/item.html:77
+#: stock/templates/stock/item.html:71
msgid "This stock item does not have any child items"
msgstr ""
-#: stock/templates/stock/item.html:86
+#: stock/templates/stock/item.html:80
#: stock/templates/stock/stock_sidebar.html:12
msgid "Test Data"
msgstr ""
-#: stock/templates/stock/item.html:90 stock/templates/stock/item_base.html:66
+#: stock/templates/stock/item.html:84 stock/templates/stock/item_base.html:66
msgid "Test Report"
msgstr ""
-#: stock/templates/stock/item.html:94 stock/templates/stock/item.html:288
+#: stock/templates/stock/item.html:88 stock/templates/stock/item.html:278
msgid "Delete Test Data"
msgstr ""
-#: stock/templates/stock/item.html:98
+#: stock/templates/stock/item.html:92
msgid "Add Test Data"
msgstr ""
-#: stock/templates/stock/item.html:132
+#: stock/templates/stock/item.html:124
msgid "Stock Item Notes"
msgstr ""
-#: stock/templates/stock/item.html:147
+#: stock/templates/stock/item.html:139
msgid "Installed Stock Items"
msgstr ""
-#: stock/templates/stock/item.html:152 templates/js/translated/stock.js:2996
+#: stock/templates/stock/item.html:144 templates/js/translated/stock.js:3123
msgid "Install Stock Item"
msgstr ""
-#: stock/templates/stock/item.html:276
+#: stock/templates/stock/item.html:266
msgid "Delete all test results for this stock item"
msgstr ""
-#: stock/templates/stock/item.html:305 templates/js/translated/stock.js:1611
+#: stock/templates/stock/item.html:295 templates/js/translated/stock.js:1610
msgid "Add Test Result"
msgstr ""
@@ -8083,13 +8103,13 @@ msgstr ""
msgid "Locate stock item"
msgstr ""
-#: stock/templates/stock/item_base.html:52 templates/stock_table.html:21
+#: stock/templates/stock/item_base.html:52
msgid "Scan to Location"
msgstr ""
#: stock/templates/stock/item_base.html:60
#: stock/templates/stock/location.html:69
-#: templates/js/translated/filters.js:322
+#: templates/js/translated/filters.js:432
msgid "Printing actions"
msgstr ""
@@ -8098,15 +8118,17 @@ msgid "Stock adjustment actions"
msgstr ""
#: stock/templates/stock/item_base.html:80
-#: stock/templates/stock/location.html:88 templates/stock_table.html:35
+#: stock/templates/stock/location.html:88 templates/js/translated/stock.js:1735
msgid "Count stock"
msgstr ""
-#: stock/templates/stock/item_base.html:82 templates/stock_table.html:33
+#: stock/templates/stock/item_base.html:82
+#: templates/js/translated/stock.js:1717
msgid "Add stock"
msgstr ""
-#: stock/templates/stock/item_base.html:83 templates/stock_table.html:34
+#: stock/templates/stock/item_base.html:83
+#: templates/js/translated/stock.js:1726
msgid "Remove stock"
msgstr ""
@@ -8115,11 +8137,12 @@ msgid "Serialize stock"
msgstr ""
#: stock/templates/stock/item_base.html:89
-#: stock/templates/stock/location.html:94 templates/stock_table.html:36
+#: stock/templates/stock/location.html:94 templates/js/translated/stock.js:1744
msgid "Transfer stock"
msgstr ""
-#: stock/templates/stock/item_base.html:92 templates/stock_table.html:39
+#: stock/templates/stock/item_base.html:92
+#: templates/js/translated/stock.js:1798
msgid "Assign to customer"
msgstr ""
@@ -8159,6 +8182,11 @@ msgstr ""
msgid "Delete stock item"
msgstr ""
+#: stock/templates/stock/item_base.html:170 templates/InvenTree/search.html:139
+#: templates/js/translated/build.js:2046 templates/navbar.html:38
+msgid "Build"
+msgstr "Assemblage"
+
#: stock/templates/stock/item_base.html:194
msgid "Parent Item"
msgstr ""
@@ -8221,7 +8249,7 @@ msgid "Available Quantity"
msgstr ""
#: stock/templates/stock/item_base.html:394
-#: templates/js/translated/build.js:2015
+#: templates/js/translated/build.js:2306
msgid "No location set"
msgstr ""
@@ -8239,7 +8267,7 @@ msgid "This StockItem expired on %(item.expiry_date)s"
msgstr ""
#: stock/templates/stock/item_base.html:433
-#: templates/js/translated/table_filters.js:381
+#: templates/js/translated/table_filters.js:387
msgid "Expired"
msgstr ""
@@ -8249,7 +8277,7 @@ msgid "This StockItem expires on %(item.expiry_date)s"
msgstr ""
#: stock/templates/stock/item_base.html:435
-#: templates/js/translated/table_filters.js:387
+#: templates/js/translated/table_filters.js:393
msgid "Stale"
msgstr ""
@@ -8258,7 +8286,7 @@ msgid "No stocktake performed"
msgstr ""
#: stock/templates/stock/item_base.html:503
-#: templates/js/translated/stock.js:1745
+#: templates/js/translated/stock.js:1865
msgid "stock item"
msgstr ""
@@ -8364,20 +8392,20 @@ msgstr ""
msgid "New Location"
msgstr ""
-#: stock/templates/stock/location.html:287
-#: templates/js/translated/stock.js:2318
+#: stock/templates/stock/location.html:278
+#: templates/js/translated/stock.js:2449
msgid "stock location"
msgstr ""
-#: stock/templates/stock/location.html:304
+#: stock/templates/stock/location.html:295
msgid "Scanned stock container into this location"
msgstr ""
-#: stock/templates/stock/location.html:377
+#: stock/templates/stock/location.html:368
msgid "Stock Location QR Code"
msgstr ""
-#: stock/templates/stock/location.html:388
+#: stock/templates/stock/location.html:379
msgid "Link Barcode to Stock Location"
msgstr ""
@@ -8451,71 +8479,71 @@ msgstr ""
msgid "Index"
msgstr ""
-#: templates/InvenTree/index.html:89
+#: templates/InvenTree/index.html:39
msgid "Subscribed Parts"
msgstr ""
-#: templates/InvenTree/index.html:102
+#: templates/InvenTree/index.html:53
msgid "Subscribed Categories"
msgstr ""
-#: templates/InvenTree/index.html:112
+#: templates/InvenTree/index.html:63
msgid "Latest Parts"
msgstr ""
-#: templates/InvenTree/index.html:126
+#: templates/InvenTree/index.html:78
msgid "BOM Waiting Validation"
msgstr ""
-#: templates/InvenTree/index.html:155
+#: templates/InvenTree/index.html:107
msgid "Recently Updated"
msgstr ""
-#: templates/InvenTree/index.html:180
+#: templates/InvenTree/index.html:134
msgid "Depleted Stock"
msgstr ""
-#: templates/InvenTree/index.html:193
+#: templates/InvenTree/index.html:148
msgid "Required for Build Orders"
msgstr ""
-#: templates/InvenTree/index.html:208
+#: templates/InvenTree/index.html:156
msgid "Expired Stock"
msgstr ""
-#: templates/InvenTree/index.html:222
+#: templates/InvenTree/index.html:172
msgid "Stale Stock"
msgstr ""
-#: templates/InvenTree/index.html:247
+#: templates/InvenTree/index.html:199
msgid "Build Orders In Progress"
msgstr ""
-#: templates/InvenTree/index.html:258
+#: templates/InvenTree/index.html:210
msgid "Overdue Build Orders"
msgstr ""
-#: templates/InvenTree/index.html:278
+#: templates/InvenTree/index.html:230
msgid "Outstanding Purchase Orders"
msgstr ""
-#: templates/InvenTree/index.html:289
+#: templates/InvenTree/index.html:241
msgid "Overdue Purchase Orders"
msgstr ""
-#: templates/InvenTree/index.html:310
+#: templates/InvenTree/index.html:262
msgid "Outstanding Sales Orders"
msgstr ""
-#: templates/InvenTree/index.html:321
+#: templates/InvenTree/index.html:273
msgid "Overdue Sales Orders"
msgstr ""
-#: templates/InvenTree/index.html:347
+#: templates/InvenTree/index.html:299
msgid "InvenTree News"
msgstr "Nouvelles d'InvenTree"
-#: templates/InvenTree/index.html:349
+#: templates/InvenTree/index.html:301
msgid "Current News"
msgstr ""
@@ -8672,29 +8700,29 @@ msgstr "Paramètres des Extensions"
msgid "Changing the settings below require you to immediately restart the server. Do not change this while under active usage."
msgstr ""
-#: templates/InvenTree/settings/plugin.html:37
+#: templates/InvenTree/settings/plugin.html:35
#: templates/InvenTree/settings/sidebar.html:64
msgid "Plugins"
msgstr "Extensions"
-#: templates/InvenTree/settings/plugin.html:43
+#: templates/InvenTree/settings/plugin.html:41
#: templates/js/translated/plugin.js:151
msgid "Install Plugin"
msgstr ""
-#: templates/InvenTree/settings/plugin.html:51
+#: templates/InvenTree/settings/plugin.html:49
msgid "External plugins are not enabled for this InvenTree installation"
msgstr "Les extensions tierces ne sont pas activées pour cette installation d'InvenTree"
-#: templates/InvenTree/settings/plugin.html:70
+#: templates/InvenTree/settings/plugin.html:64
msgid "Plugin Error Stack"
msgstr ""
-#: templates/InvenTree/settings/plugin.html:79
+#: templates/InvenTree/settings/plugin.html:73
msgid "Stage"
msgstr ""
-#: templates/InvenTree/settings/plugin.html:81
+#: templates/InvenTree/settings/plugin.html:75
#: templates/js/translated/notification.js:75
msgid "Message"
msgstr ""
@@ -8767,14 +8795,6 @@ msgstr "Hash du commit"
msgid "Commit Message"
msgstr "Message du commit"
-#: templates/InvenTree/settings/plugin_settings.html:126
-msgid "Sign Status"
-msgstr "Statut de la signature"
-
-#: templates/InvenTree/settings/plugin_settings.html:131
-msgid "Sign Key"
-msgstr "Clé de signature"
-
#: templates/InvenTree/settings/po.html:7
msgid "Purchase Order Settings"
msgstr ""
@@ -8870,12 +8890,12 @@ msgid "No category parameter templates found"
msgstr ""
#: templates/InvenTree/settings/settings_staff_js.html:212
-#: templates/js/translated/part.js:1618
+#: templates/js/translated/part.js:1617
msgid "Edit Template"
msgstr ""
#: templates/InvenTree/settings/settings_staff_js.html:213
-#: templates/js/translated/part.js:1619
+#: templates/js/translated/part.js:1618
msgid "Delete Template"
msgstr ""
@@ -8913,7 +8933,7 @@ msgid "Home Page"
msgstr ""
#: templates/InvenTree/settings/sidebar.html:15
-#: templates/js/translated/tables.js:575 templates/navbar.html:107
+#: templates/js/translated/tables.js:551 templates/navbar.html:107
#: templates/search.html:8 templates/search_form.html:6
#: templates/search_form.html:7
msgid "Search"
@@ -8990,6 +9010,7 @@ msgid "Unverified"
msgstr "Non vérifiée"
#: templates/InvenTree/settings/user.html:80
+#: templates/js/translated/company.js:984
msgid "Primary"
msgstr "Principale"
@@ -9204,44 +9225,48 @@ msgstr ""
msgid "Update Available"
msgstr ""
-#: templates/about.html:42
+#: templates/about.html:43
+msgid "Commit Branch"
+msgstr ""
+
+#: templates/about.html:49
msgid "InvenTree Documentation"
msgstr "Documentation d'InvenTree"
-#: templates/about.html:47
+#: templates/about.html:54
msgid "API Version"
msgstr ""
-#: templates/about.html:52
+#: templates/about.html:59
msgid "Python Version"
msgstr ""
-#: templates/about.html:57
+#: templates/about.html:64
msgid "Django Version"
msgstr ""
-#: templates/about.html:62
+#: templates/about.html:69
msgid "View Code on GitHub"
msgstr ""
-#: templates/about.html:67
+#: templates/about.html:74
msgid "Credits"
msgstr ""
-#: templates/about.html:72
+#: templates/about.html:79
msgid "Mobile App"
msgstr ""
-#: templates/about.html:77
+#: templates/about.html:84
msgid "Submit Bug Report"
msgstr ""
-#: templates/about.html:84 templates/clip.html:4
+#: templates/about.html:91 templates/clip.html:4
#: templates/js/translated/helpers.js:585
msgid "copy to clipboard"
msgstr ""
-#: templates/about.html:84
+#: templates/about.html:91
msgid "copy version information"
msgstr ""
@@ -9435,14 +9460,6 @@ msgstr "Ajouter un lien"
msgid "Add Attachment"
msgstr "Ajouter une pièce jointe"
-#: templates/attachment_table.html:11
-msgid "Delete selected attachments"
-msgstr ""
-
-#: templates/attachment_table.html:12 templates/js/translated/attachment.js:129
-msgid "Delete Attachments"
-msgstr ""
-
#: templates/barcode_data.html:5
msgid "Barcode Identifier"
msgstr "Identifiant du code-barres"
@@ -9487,7 +9504,7 @@ msgid "The following parts are low on required stock"
msgstr ""
#: templates/email/build_order_required_stock.html:18
-#: templates/js/translated/bom.js:1633
+#: templates/js/translated/bom.js:1653 templates/js/translated/build.js:2485
msgid "Required Quantity"
msgstr "Quantité requise"
@@ -9501,7 +9518,7 @@ msgid "Click on the following link to view this part"
msgstr ""
#: templates/email/low_stock_notification.html:18
-#: templates/js/translated/part.js:3140
+#: templates/js/translated/part.js:3125
msgid "Minimum Quantity"
msgstr ""
@@ -9573,23 +9590,35 @@ msgstr "Code d’erreur"
msgid "All selected attachments will be deleted"
msgstr ""
-#: templates/js/translated/attachment.js:255
+#: templates/js/translated/attachment.js:129
+msgid "Delete Attachments"
+msgstr ""
+
+#: templates/js/translated/attachment.js:205
+msgid "Delete attachments"
+msgstr ""
+
+#: templates/js/translated/attachment.js:253
+msgid "Attachment actions"
+msgstr ""
+
+#: templates/js/translated/attachment.js:275
msgid "No attachments found"
msgstr "Aucune pièce jointe trouvée"
-#: templates/js/translated/attachment.js:285
+#: templates/js/translated/attachment.js:305
msgid "Edit Attachment"
msgstr "Modifier la pièce jointe"
-#: templates/js/translated/attachment.js:326
+#: templates/js/translated/attachment.js:336
msgid "Upload Date"
msgstr "Date d'upload"
-#: templates/js/translated/attachment.js:346
+#: templates/js/translated/attachment.js:356
msgid "Edit attachment"
msgstr "Modifier la pièce jointe"
-#: templates/js/translated/attachment.js:354
+#: templates/js/translated/attachment.js:364
msgid "Delete attachment"
msgstr "Supprimer la pièce jointe"
@@ -9646,7 +9675,7 @@ msgstr ""
msgid "Unlink"
msgstr "Délier"
-#: templates/js/translated/barcode.js:550 templates/js/translated/stock.js:1118
+#: templates/js/translated/barcode.js:550 templates/js/translated/stock.js:1117
msgid "Remove stock item"
msgstr "Supprimer l'article de stock"
@@ -9704,775 +9733,869 @@ msgstr "Vérifier dans l'emplacement"
msgid "Barcode does not match a valid location"
msgstr "Le code-barres ne correspond pas à un emplacement valide"
-#: templates/js/translated/bom.js:77
+#: templates/js/translated/bom.js:78
msgid "Create BOM Item"
msgstr ""
-#: templates/js/translated/bom.js:131
+#: templates/js/translated/bom.js:132
msgid "Display row data"
msgstr ""
-#: templates/js/translated/bom.js:187
+#: templates/js/translated/bom.js:188
msgid "Row Data"
msgstr "Données de la rangée"
-#: templates/js/translated/bom.js:188 templates/js/translated/bom.js:699
+#: templates/js/translated/bom.js:189 templates/js/translated/bom.js:700
#: templates/js/translated/modals.js:71 templates/js/translated/modals.js:622
#: templates/js/translated/modals.js:746 templates/js/translated/modals.js:1054
-#: templates/js/translated/purchase_order.js:791 templates/modals.html:15
+#: templates/js/translated/purchase_order.js:802 templates/modals.html:15
#: templates/modals.html:27 templates/modals.html:39 templates/modals.html:50
msgid "Close"
msgstr ""
-#: templates/js/translated/bom.js:305
+#: templates/js/translated/bom.js:306
msgid "Download BOM Template"
msgstr "Télécharger le template de la BOM"
-#: templates/js/translated/bom.js:350
+#: templates/js/translated/bom.js:351
msgid "Multi Level BOM"
msgstr ""
-#: templates/js/translated/bom.js:351
+#: templates/js/translated/bom.js:352
msgid "Include BOM data for subassemblies"
msgstr ""
-#: templates/js/translated/bom.js:356
+#: templates/js/translated/bom.js:357
msgid "Levels"
msgstr "Niveaux"
-#: templates/js/translated/bom.js:357
+#: templates/js/translated/bom.js:358
msgid "Select maximum number of BOM levels to export (0 = all levels)"
msgstr "Sélectionner le nombre maximum de niveaux de BOM à exporter (0 = tous les niveaux)"
-#: templates/js/translated/bom.js:364
+#: templates/js/translated/bom.js:365
msgid "Include Alternative Parts"
msgstr ""
-#: templates/js/translated/bom.js:365
+#: templates/js/translated/bom.js:366
msgid "Include alternative parts in exported BOM"
msgstr ""
-#: templates/js/translated/bom.js:370
+#: templates/js/translated/bom.js:371
msgid "Include Parameter Data"
msgstr "Inclure les données de paramètre"
-#: templates/js/translated/bom.js:371
+#: templates/js/translated/bom.js:372
msgid "Include part parameter data in exported BOM"
msgstr ""
-#: templates/js/translated/bom.js:376
+#: templates/js/translated/bom.js:377
msgid "Include Stock Data"
msgstr "Inclure les données de stock"
-#: templates/js/translated/bom.js:377
+#: templates/js/translated/bom.js:378
msgid "Include part stock data in exported BOM"
msgstr ""
-#: templates/js/translated/bom.js:382
+#: templates/js/translated/bom.js:383
msgid "Include Manufacturer Data"
msgstr ""
-#: templates/js/translated/bom.js:383
+#: templates/js/translated/bom.js:384
msgid "Include part manufacturer data in exported BOM"
msgstr ""
-#: templates/js/translated/bom.js:388
+#: templates/js/translated/bom.js:389
msgid "Include Supplier Data"
msgstr ""
-#: templates/js/translated/bom.js:389
+#: templates/js/translated/bom.js:390
msgid "Include part supplier data in exported BOM"
msgstr ""
-#: templates/js/translated/bom.js:394
+#: templates/js/translated/bom.js:395
msgid "Include Pricing Data"
msgstr ""
-#: templates/js/translated/bom.js:395
+#: templates/js/translated/bom.js:396
msgid "Include part pricing data in exported BOM"
msgstr ""
-#: templates/js/translated/bom.js:590
+#: templates/js/translated/bom.js:591
msgid "Remove substitute part"
msgstr ""
-#: templates/js/translated/bom.js:644
+#: templates/js/translated/bom.js:645
msgid "Select and add a new substitute part using the input below"
msgstr ""
-#: templates/js/translated/bom.js:655
+#: templates/js/translated/bom.js:656
msgid "Are you sure you wish to remove this substitute part link?"
msgstr ""
-#: templates/js/translated/bom.js:661
+#: templates/js/translated/bom.js:662
msgid "Remove Substitute Part"
msgstr ""
-#: templates/js/translated/bom.js:700
+#: templates/js/translated/bom.js:701
msgid "Add Substitute"
msgstr ""
-#: templates/js/translated/bom.js:701
+#: templates/js/translated/bom.js:702
msgid "Edit BOM Item Substitutes"
msgstr ""
-#: templates/js/translated/bom.js:763
+#: templates/js/translated/bom.js:764
msgid "All selected BOM items will be deleted"
msgstr ""
-#: templates/js/translated/bom.js:779
+#: templates/js/translated/bom.js:780
msgid "Delete selected BOM items?"
msgstr ""
-#: templates/js/translated/bom.js:906
+#: templates/js/translated/bom.js:826
+msgid "Delete items"
+msgstr ""
+
+#: templates/js/translated/bom.js:924
msgid "Load BOM for subassembly"
msgstr ""
-#: templates/js/translated/bom.js:916
+#: templates/js/translated/bom.js:934
msgid "Substitutes Available"
msgstr ""
-#: templates/js/translated/bom.js:920 templates/js/translated/build.js:2090
+#: templates/js/translated/bom.js:938 templates/js/translated/build.js:2429
msgid "Variant stock allowed"
msgstr ""
-#: templates/js/translated/bom.js:984
+#: templates/js/translated/bom.js:1002
msgid "Substitutes"
msgstr ""
-#: templates/js/translated/bom.js:1104
+#: templates/js/translated/bom.js:1122
msgid "BOM pricing is complete"
msgstr ""
-#: templates/js/translated/bom.js:1109
+#: templates/js/translated/bom.js:1127
msgid "BOM pricing is incomplete"
msgstr ""
-#: templates/js/translated/bom.js:1116
+#: templates/js/translated/bom.js:1134
msgid "No pricing available"
msgstr ""
-#: templates/js/translated/bom.js:1147 templates/js/translated/build.js:2173
-#: templates/js/translated/sales_order.js:1887
+#: templates/js/translated/bom.js:1165 templates/js/translated/build.js:2523
+#: templates/js/translated/sales_order.js:1899
msgid "No Stock Available"
msgstr ""
-#: templates/js/translated/bom.js:1152 templates/js/translated/build.js:2177
+#: templates/js/translated/bom.js:1170 templates/js/translated/build.js:2527
msgid "Includes variant and substitute stock"
msgstr ""
-#: templates/js/translated/bom.js:1154 templates/js/translated/build.js:2179
-#: templates/js/translated/part.js:1230
+#: templates/js/translated/bom.js:1172 templates/js/translated/build.js:2529
+#: templates/js/translated/part.js:1229
msgid "Includes variant stock"
msgstr ""
-#: templates/js/translated/bom.js:1156 templates/js/translated/build.js:2181
+#: templates/js/translated/bom.js:1174 templates/js/translated/build.js:2531
msgid "Includes substitute stock"
msgstr ""
-#: templates/js/translated/bom.js:1184 templates/js/translated/build.js:2164
-#: templates/js/translated/build.js:2255
+#: templates/js/translated/bom.js:1204 templates/js/translated/build.js:2514
msgid "Consumable item"
msgstr ""
-#: templates/js/translated/bom.js:1244
+#: templates/js/translated/bom.js:1264
msgid "Validate BOM Item"
msgstr ""
-#: templates/js/translated/bom.js:1246
+#: templates/js/translated/bom.js:1266
msgid "This line has been validated"
msgstr ""
-#: templates/js/translated/bom.js:1248
+#: templates/js/translated/bom.js:1268
msgid "Edit substitute parts"
msgstr ""
-#: templates/js/translated/bom.js:1250 templates/js/translated/bom.js:1445
+#: templates/js/translated/bom.js:1270 templates/js/translated/bom.js:1465
msgid "Edit BOM Item"
msgstr ""
-#: templates/js/translated/bom.js:1252
+#: templates/js/translated/bom.js:1272
msgid "Delete BOM Item"
msgstr ""
-#: templates/js/translated/bom.js:1272
+#: templates/js/translated/bom.js:1292
msgid "View BOM"
msgstr ""
-#: templates/js/translated/bom.js:1356 templates/js/translated/build.js:1927
+#: templates/js/translated/bom.js:1376
msgid "No BOM items found"
msgstr ""
-#: templates/js/translated/bom.js:1616 templates/js/translated/build.js:2073
+#: templates/js/translated/bom.js:1636 templates/js/translated/build.js:2414
msgid "Required Part"
msgstr ""
-#: templates/js/translated/bom.js:1642
+#: templates/js/translated/bom.js:1662
msgid "Inherited from parent BOM"
msgstr ""
-#: templates/js/translated/build.js:126
+#: templates/js/translated/build.js:136
msgid "Edit Build Order"
msgstr ""
-#: templates/js/translated/build.js:169
+#: templates/js/translated/build.js:179
msgid "Create Build Order"
msgstr ""
-#: templates/js/translated/build.js:202
+#: templates/js/translated/build.js:211
msgid "Cancel Build Order"
msgstr ""
-#: templates/js/translated/build.js:211
+#: templates/js/translated/build.js:220
msgid "Are you sure you wish to cancel this build?"
msgstr "Êtes-vous sûr de vouloir annuler cette construction?"
-#: templates/js/translated/build.js:217
+#: templates/js/translated/build.js:226
msgid "Stock items have been allocated to this build order"
msgstr ""
-#: templates/js/translated/build.js:224
+#: templates/js/translated/build.js:233
msgid "There are incomplete outputs remaining for this build order"
msgstr ""
-#: templates/js/translated/build.js:276
+#: templates/js/translated/build.js:285
msgid "Build order is ready to be completed"
msgstr ""
-#: templates/js/translated/build.js:284
+#: templates/js/translated/build.js:293
msgid "This build order cannot be completed as there are incomplete outputs"
msgstr ""
-#: templates/js/translated/build.js:289
+#: templates/js/translated/build.js:298
msgid "Build Order is incomplete"
msgstr ""
-#: templates/js/translated/build.js:307
+#: templates/js/translated/build.js:316
msgid "Complete Build Order"
msgstr ""
-#: templates/js/translated/build.js:348 templates/js/translated/stock.js:119
-#: templates/js/translated/stock.js:265
+#: templates/js/translated/build.js:357 templates/js/translated/stock.js:118
+#: templates/js/translated/stock.js:264
msgid "Next available serial number"
msgstr "Prochain numéro de série disponible"
-#: templates/js/translated/build.js:350 templates/js/translated/stock.js:121
-#: templates/js/translated/stock.js:267
+#: templates/js/translated/build.js:359 templates/js/translated/stock.js:120
+#: templates/js/translated/stock.js:266
msgid "Latest serial number"
msgstr "Dernier numéro de série"
-#: templates/js/translated/build.js:359
+#: templates/js/translated/build.js:368
msgid "The Bill of Materials contains trackable parts"
msgstr "La BOM contient des pièces traçables"
-#: templates/js/translated/build.js:360
+#: templates/js/translated/build.js:369
msgid "Build outputs must be generated individually"
msgstr ""
-#: templates/js/translated/build.js:368
+#: templates/js/translated/build.js:377
msgid "Trackable parts can have serial numbers specified"
msgstr "Les pièces traçables peuvent avoir des numéros de série spécifiés"
-#: templates/js/translated/build.js:369
+#: templates/js/translated/build.js:378
msgid "Enter serial numbers to generate multiple single build outputs"
msgstr ""
-#: templates/js/translated/build.js:376
+#: templates/js/translated/build.js:385
msgid "Create Build Output"
msgstr ""
-#: templates/js/translated/build.js:407
+#: templates/js/translated/build.js:416
msgid "Allocate stock items to this build output"
msgstr ""
-#: templates/js/translated/build.js:418
-msgid "Unallocate stock from build output"
+#: templates/js/translated/build.js:424
+msgid "Deallocate stock from build output"
msgstr ""
-#: templates/js/translated/build.js:427
+#: templates/js/translated/build.js:433
msgid "Complete build output"
msgstr ""
-#: templates/js/translated/build.js:435
+#: templates/js/translated/build.js:441
msgid "Scrap build output"
msgstr ""
-#: templates/js/translated/build.js:442
+#: templates/js/translated/build.js:448
msgid "Delete build output"
msgstr ""
-#: templates/js/translated/build.js:462
-msgid "Are you sure you wish to unallocate stock items from this build?"
+#: templates/js/translated/build.js:468
+msgid "Are you sure you wish to deallocate the selected stock items from this build?"
msgstr ""
-#: templates/js/translated/build.js:480
-msgid "Unallocate Stock Items"
+#: templates/js/translated/build.js:486
+msgid "Deallocate Stock Items"
msgstr ""
-#: templates/js/translated/build.js:566 templates/js/translated/build.js:690
-#: templates/js/translated/build.js:812
+#: templates/js/translated/build.js:572 templates/js/translated/build.js:696
+#: templates/js/translated/build.js:818
msgid "Select Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:567 templates/js/translated/build.js:691
-#: templates/js/translated/build.js:813
+#: templates/js/translated/build.js:573 templates/js/translated/build.js:697
+#: templates/js/translated/build.js:819
msgid "At least one build output must be selected"
msgstr ""
-#: templates/js/translated/build.js:581
+#: templates/js/translated/build.js:587
msgid "Selected build outputs will be marked as complete"
msgstr ""
-#: templates/js/translated/build.js:585 templates/js/translated/build.js:715
-#: templates/js/translated/build.js:835
+#: templates/js/translated/build.js:591 templates/js/translated/build.js:721
+#: templates/js/translated/build.js:841
msgid "Output"
msgstr ""
-#: templates/js/translated/build.js:609
+#: templates/js/translated/build.js:615
msgid "Complete Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:706
+#: templates/js/translated/build.js:712
msgid "Selected build outputs will be marked as scrapped"
msgstr ""
-#: templates/js/translated/build.js:708
+#: templates/js/translated/build.js:714
msgid "Scrapped output are marked as rejected"
msgstr ""
-#: templates/js/translated/build.js:709
+#: templates/js/translated/build.js:715
msgid "Allocated stock items will no longer be available"
msgstr ""
-#: templates/js/translated/build.js:710
+#: templates/js/translated/build.js:716
msgid "The completion status of the build order will not be adjusted"
msgstr ""
-#: templates/js/translated/build.js:737
+#: templates/js/translated/build.js:743
msgid "Scrap Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:827
+#: templates/js/translated/build.js:833
msgid "Selected build outputs will be deleted"
msgstr ""
-#: templates/js/translated/build.js:829
+#: templates/js/translated/build.js:835
msgid "Build output data will be permanently deleted"
msgstr ""
-#: templates/js/translated/build.js:830
+#: templates/js/translated/build.js:836
msgid "Allocated stock items will be returned to stock"
msgstr ""
-#: templates/js/translated/build.js:848
+#: templates/js/translated/build.js:854
msgid "Delete Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:934
+#: templates/js/translated/build.js:941
msgid "No build order allocations found"
msgstr ""
-#: templates/js/translated/build.js:971
+#: templates/js/translated/build.js:970 templates/js/translated/build.js:2270
+msgid "Allocated Quantity"
+msgstr ""
+
+#: templates/js/translated/build.js:984
msgid "Location not specified"
msgstr ""
-#: templates/js/translated/build.js:1047
+#: templates/js/translated/build.js:1006
+msgid "Complete outputs"
+msgstr "Sortie complète"
+
+#: templates/js/translated/build.js:1024
+msgid "Scrap outputs"
+msgstr ""
+
+#: templates/js/translated/build.js:1042
+msgid "Delete outputs"
+msgstr "Supprimer les sorties"
+
+#: templates/js/translated/build.js:1100
msgid "build output"
msgstr ""
-#: templates/js/translated/build.js:1048
+#: templates/js/translated/build.js:1101
msgid "build outputs"
msgstr ""
-#: templates/js/translated/build.js:1383
+#: templates/js/translated/build.js:1105
+msgid "Build output actions"
+msgstr ""
+
+#: templates/js/translated/build.js:1274
msgid "No active build outputs found"
msgstr ""
-#: templates/js/translated/build.js:1457
-msgid "Allocated Stock"
+#: templates/js/translated/build.js:1329
+msgid "Allocated Lines"
msgstr ""
-#: templates/js/translated/build.js:1464
-msgid "No tracked BOM items for this build"
+#: templates/js/translated/build.js:1343
+msgid "Required Tests"
msgstr ""
-#: templates/js/translated/build.js:1486
-msgid "Completed Tests"
-msgstr ""
-
-#: templates/js/translated/build.js:1491
-msgid "No required tests for this build"
-msgstr ""
-
-#: templates/js/translated/build.js:2032 templates/js/translated/build.js:3056
-#: templates/js/translated/sales_order.js:1632
-msgid "Edit stock allocation"
-msgstr ""
-
-#: templates/js/translated/build.js:2034 templates/js/translated/build.js:3057
-#: templates/js/translated/sales_order.js:1633
-msgid "Delete stock allocation"
-msgstr ""
-
-#: templates/js/translated/build.js:2050
-msgid "Edit Allocation"
-msgstr ""
-
-#: templates/js/translated/build.js:2060
-msgid "Remove Allocation"
-msgstr ""
-
-#: templates/js/translated/build.js:2086
-msgid "Substitute parts available"
-msgstr ""
-
-#: templates/js/translated/build.js:2122
-msgid "Quantity Per"
-msgstr ""
-
-#: templates/js/translated/build.js:2167
-#: templates/js/translated/sales_order.js:1894
-msgid "Insufficient stock available"
-msgstr ""
-
-#: templates/js/translated/build.js:2169
-#: templates/js/translated/sales_order.js:1892
-msgid "Sufficient stock available"
-msgstr ""
-
-#: templates/js/translated/build.js:2263
-#: templates/js/translated/sales_order.js:1993
-msgid "Build stock"
-msgstr ""
-
-#: templates/js/translated/build.js:2267 templates/stock_table.html:38
-msgid "Order stock"
-msgstr "Commander des stocks"
-
-#: templates/js/translated/build.js:2270
-#: templates/js/translated/sales_order.js:1987
-msgid "Allocate stock"
-msgstr ""
-
-#: templates/js/translated/build.js:2310
-#: templates/js/translated/purchase_order.js:616
-#: templates/js/translated/sales_order.js:1159
+#: templates/js/translated/build.js:1502
+#: templates/js/translated/purchase_order.js:627
+#: templates/js/translated/sales_order.js:1171
msgid "Select Parts"
msgstr ""
-#: templates/js/translated/build.js:2311
-#: templates/js/translated/sales_order.js:1160
+#: templates/js/translated/build.js:1503
+#: templates/js/translated/sales_order.js:1172
msgid "You must select at least one part to allocate"
msgstr ""
-#: templates/js/translated/build.js:2359
-#: templates/js/translated/sales_order.js:1109
+#: templates/js/translated/build.js:1566
+#: templates/js/translated/sales_order.js:1121
msgid "Specify stock allocation quantity"
msgstr ""
-#: templates/js/translated/build.js:2438
+#: templates/js/translated/build.js:1643
msgid "All Parts Allocated"
msgstr ""
-#: templates/js/translated/build.js:2439
+#: templates/js/translated/build.js:1644
msgid "All selected parts have been fully allocated"
msgstr ""
-#: templates/js/translated/build.js:2453
-#: templates/js/translated/sales_order.js:1174
+#: templates/js/translated/build.js:1658
+#: templates/js/translated/sales_order.js:1186
msgid "Select source location (leave blank to take from all locations)"
msgstr ""
-#: templates/js/translated/build.js:2481
+#: templates/js/translated/build.js:1686
msgid "Allocate Stock Items to Build Order"
msgstr ""
-#: templates/js/translated/build.js:2492
-#: templates/js/translated/sales_order.js:1271
+#: templates/js/translated/build.js:1697
+#: templates/js/translated/sales_order.js:1283
msgid "No matching stock locations"
msgstr ""
-#: templates/js/translated/build.js:2565
-#: templates/js/translated/sales_order.js:1348
+#: templates/js/translated/build.js:1770
+#: templates/js/translated/sales_order.js:1360
msgid "No matching stock items"
msgstr ""
-#: templates/js/translated/build.js:2662
+#: templates/js/translated/build.js:1867
msgid "Automatic Stock Allocation"
msgstr ""
-#: templates/js/translated/build.js:2663
+#: templates/js/translated/build.js:1868
msgid "Stock items will be automatically allocated to this build order, according to the provided guidelines"
msgstr ""
-#: templates/js/translated/build.js:2665
+#: templates/js/translated/build.js:1870
msgid "If a location is specified, stock will only be allocated from that location"
msgstr ""
-#: templates/js/translated/build.js:2666
+#: templates/js/translated/build.js:1871
msgid "If stock is considered interchangeable, it will be allocated from the first location it is found"
msgstr ""
-#: templates/js/translated/build.js:2667
+#: templates/js/translated/build.js:1872
msgid "If substitute stock is allowed, it will be used where stock of the primary part cannot be found"
msgstr ""
-#: templates/js/translated/build.js:2694
+#: templates/js/translated/build.js:1899
msgid "Allocate Stock Items"
msgstr ""
-#: templates/js/translated/build.js:2800
+#: templates/js/translated/build.js:2005
msgid "No builds matching query"
msgstr ""
-#: templates/js/translated/build.js:2835 templates/js/translated/part.js:2208
-#: templates/js/translated/part.js:2692 templates/js/translated/stock.js:1759
-#: templates/js/translated/stock.js:2458
+#: templates/js/translated/build.js:2040 templates/js/translated/build.js:2408
+#: templates/js/translated/part.js:2284 templates/js/translated/part.js:2677
+#: templates/js/translated/stock.js:1899 templates/js/translated/stock.js:2589
msgid "Select"
msgstr ""
-#: templates/js/translated/build.js:2849
+#: templates/js/translated/build.js:2054
msgid "Build order is overdue"
msgstr ""
-#: templates/js/translated/build.js:2883
+#: templates/js/translated/build.js:2100
msgid "Progress"
msgstr ""
-#: templates/js/translated/build.js:2919 templates/js/translated/stock.js:2779
+#: templates/js/translated/build.js:2136 templates/js/translated/stock.js:2910
msgid "No user information"
msgstr "Pas d'informations sur l'utilisateur"
-#: templates/js/translated/build.js:2934
+#: templates/js/translated/build.js:2151
msgid "group"
msgstr ""
-#: templates/js/translated/build.js:3033
-msgid "No parts allocated for"
+#: templates/js/translated/build.js:2315
+#: templates/js/translated/sales_order.js:1644
+msgid "Edit stock allocation"
msgstr ""
-#: templates/js/translated/company.js:87
+#: templates/js/translated/build.js:2316
+#: templates/js/translated/sales_order.js:1645
+msgid "Delete stock allocation"
+msgstr ""
+
+#: templates/js/translated/build.js:2331
+msgid "Edit Allocation"
+msgstr ""
+
+#: templates/js/translated/build.js:2343
+msgid "Remove Allocation"
+msgstr ""
+
+#: templates/js/translated/build.js:2384
+msgid "build line"
+msgstr ""
+
+#: templates/js/translated/build.js:2385
+msgid "build lines"
+msgstr ""
+
+#: templates/js/translated/build.js:2403
+msgid "No build lines found"
+msgstr ""
+
+#: templates/js/translated/build.js:2433 templates/js/translated/part.js:767
+#: templates/js/translated/part.js:1175
+msgid "Trackable part"
+msgstr "Pièce traçable"
+
+#: templates/js/translated/build.js:2468
+msgid "Unit Quantity"
+msgstr ""
+
+#: templates/js/translated/build.js:2517
+#: templates/js/translated/sales_order.js:1906
+msgid "Insufficient stock available"
+msgstr ""
+
+#: templates/js/translated/build.js:2519
+#: templates/js/translated/sales_order.js:1904
+msgid "Sufficient stock available"
+msgstr ""
+
+#: templates/js/translated/build.js:2566
+msgid "Consumable Item"
+msgstr ""
+
+#: templates/js/translated/build.js:2571
+msgid "Tracked item"
+msgstr ""
+
+#: templates/js/translated/build.js:2578
+#: templates/js/translated/sales_order.js:2005
+msgid "Build stock"
+msgstr ""
+
+#: templates/js/translated/build.js:2583 templates/js/translated/stock.js:1779
+msgid "Order stock"
+msgstr "Commander des stocks"
+
+#: templates/js/translated/build.js:2587
+#: templates/js/translated/sales_order.js:1999
+msgid "Allocate stock"
+msgstr ""
+
+#: templates/js/translated/build.js:2591
+msgid "Remove stock allocation"
+msgstr ""
+
+#: templates/js/translated/company.js:97
msgid "Add Manufacturer"
msgstr ""
-#: templates/js/translated/company.js:100
-#: templates/js/translated/company.js:202
+#: templates/js/translated/company.js:110
+#: templates/js/translated/company.js:212
msgid "Add Manufacturer Part"
msgstr ""
-#: templates/js/translated/company.js:121
+#: templates/js/translated/company.js:131
msgid "Edit Manufacturer Part"
msgstr ""
-#: templates/js/translated/company.js:190
-#: templates/js/translated/purchase_order.js:94
+#: templates/js/translated/company.js:200
+#: templates/js/translated/purchase_order.js:93
msgid "Add Supplier"
msgstr ""
-#: templates/js/translated/company.js:232
-#: templates/js/translated/purchase_order.js:338
+#: templates/js/translated/company.js:242
+#: templates/js/translated/purchase_order.js:349
msgid "Add Supplier Part"
msgstr ""
-#: templates/js/translated/company.js:333
+#: templates/js/translated/company.js:343
msgid "All selected supplier parts will be deleted"
msgstr ""
-#: templates/js/translated/company.js:349
+#: templates/js/translated/company.js:359
msgid "Delete Supplier Parts"
msgstr ""
-#: templates/js/translated/company.js:457
+#: templates/js/translated/company.js:464
msgid "Add new Company"
msgstr ""
-#: templates/js/translated/company.js:528
+#: templates/js/translated/company.js:535
msgid "Parts Supplied"
msgstr "Composantes fournies"
-#: templates/js/translated/company.js:537
+#: templates/js/translated/company.js:544
msgid "Parts Manufactured"
msgstr "Composantes fabriquées"
-#: templates/js/translated/company.js:552
+#: templates/js/translated/company.js:559
msgid "No company information found"
msgstr ""
-#: templates/js/translated/company.js:601
+#: templates/js/translated/company.js:608
msgid "Create New Contact"
msgstr ""
-#: templates/js/translated/company.js:617
-#: templates/js/translated/company.js:740
+#: templates/js/translated/company.js:624
+#: templates/js/translated/company.js:747
msgid "Edit Contact"
msgstr ""
-#: templates/js/translated/company.js:654
+#: templates/js/translated/company.js:661
msgid "All selected contacts will be deleted"
msgstr ""
-#: templates/js/translated/company.js:660
-#: templates/js/translated/company.js:724
+#: templates/js/translated/company.js:667
+#: templates/js/translated/company.js:731
msgid "Role"
msgstr ""
-#: templates/js/translated/company.js:668
+#: templates/js/translated/company.js:675
msgid "Delete Contacts"
msgstr ""
-#: templates/js/translated/company.js:699
+#: templates/js/translated/company.js:706
msgid "No contacts found"
msgstr ""
-#: templates/js/translated/company.js:712
+#: templates/js/translated/company.js:719
msgid "Phone Number"
msgstr ""
-#: templates/js/translated/company.js:718
+#: templates/js/translated/company.js:725
msgid "Email Address"
msgstr ""
-#: templates/js/translated/company.js:744
+#: templates/js/translated/company.js:751
msgid "Delete Contact"
msgstr ""
-#: templates/js/translated/company.js:818
+#: templates/js/translated/company.js:886
+msgid "Create New Address"
+msgstr ""
+
+#: templates/js/translated/company.js:901
+#: templates/js/translated/company.js:1066
+msgid "Edit Address"
+msgstr ""
+
+#: templates/js/translated/company.js:936
+msgid "All selected addresses will be deleted"
+msgstr ""
+
+#: templates/js/translated/company.js:950
+msgid "Delete Addresses"
+msgstr ""
+
+#: templates/js/translated/company.js:977
+msgid "No addresses found"
+msgstr ""
+
+#: templates/js/translated/company.js:1020
+msgid "Postal city"
+msgstr ""
+
+#: templates/js/translated/company.js:1026
+msgid "State/province"
+msgstr ""
+
+#: templates/js/translated/company.js:1038
+msgid "Courier notes"
+msgstr ""
+
+#: templates/js/translated/company.js:1044
+msgid "Internal notes"
+msgstr ""
+
+#: templates/js/translated/company.js:1070
+msgid "Delete Address"
+msgstr ""
+
+#: templates/js/translated/company.js:1143
msgid "All selected manufacturer parts will be deleted"
msgstr ""
-#: templates/js/translated/company.js:833
+#: templates/js/translated/company.js:1158
msgid "Delete Manufacturer Parts"
msgstr ""
-#: templates/js/translated/company.js:867
+#: templates/js/translated/company.js:1192
msgid "All selected parameters will be deleted"
msgstr ""
-#: templates/js/translated/company.js:881
+#: templates/js/translated/company.js:1206
msgid "Delete Parameters"
msgstr ""
-#: templates/js/translated/company.js:917
+#: templates/js/translated/company.js:1222
+#: templates/js/translated/company.js:1510 templates/js/translated/part.js:2213
+msgid "Order parts"
+msgstr "Commander des composants"
+
+#: templates/js/translated/company.js:1239
+msgid "Delete manufacturer parts"
+msgstr ""
+
+#: templates/js/translated/company.js:1271
+msgid "Manufacturer part actions"
+msgstr ""
+
+#: templates/js/translated/company.js:1290
msgid "No manufacturer parts found"
msgstr ""
-#: templates/js/translated/company.js:937
-#: templates/js/translated/company.js:1177 templates/js/translated/part.js:776
-#: templates/js/translated/part.js:1184
+#: templates/js/translated/company.js:1310
+#: templates/js/translated/company.js:1598 templates/js/translated/part.js:775
+#: templates/js/translated/part.js:1183
msgid "Template part"
msgstr ""
-#: templates/js/translated/company.js:941
-#: templates/js/translated/company.js:1181 templates/js/translated/part.js:780
-#: templates/js/translated/part.js:1188
+#: templates/js/translated/company.js:1314
+#: templates/js/translated/company.js:1602 templates/js/translated/part.js:779
+#: templates/js/translated/part.js:1187
msgid "Assembled part"
msgstr ""
-#: templates/js/translated/company.js:1061 templates/js/translated/part.js:1437
+#: templates/js/translated/company.js:1434 templates/js/translated/part.js:1436
msgid "No parameters found"
msgstr ""
-#: templates/js/translated/company.js:1096 templates/js/translated/part.js:1500
+#: templates/js/translated/company.js:1469 templates/js/translated/part.js:1499
msgid "Edit parameter"
msgstr ""
-#: templates/js/translated/company.js:1097 templates/js/translated/part.js:1501
+#: templates/js/translated/company.js:1470 templates/js/translated/part.js:1500
msgid "Delete parameter"
msgstr ""
-#: templates/js/translated/company.js:1114 templates/js/translated/part.js:1407
+#: templates/js/translated/company.js:1487 templates/js/translated/part.js:1406
msgid "Edit Parameter"
msgstr ""
-#: templates/js/translated/company.js:1123 templates/js/translated/part.js:1522
+#: templates/js/translated/company.js:1496 templates/js/translated/part.js:1521
msgid "Delete Parameter"
msgstr ""
-#: templates/js/translated/company.js:1156
+#: templates/js/translated/company.js:1527
+msgid "Delete supplier parts"
+msgstr "Supprimer les pièces du fournisseur"
+
+#: templates/js/translated/company.js:1577
msgid "No supplier parts found"
msgstr ""
-#: templates/js/translated/company.js:1274
+#: templates/js/translated/company.js:1695
msgid "Base Units"
msgstr ""
-#: templates/js/translated/company.js:1304
+#: templates/js/translated/company.js:1725
msgid "Availability"
msgstr ""
-#: templates/js/translated/company.js:1335
+#: templates/js/translated/company.js:1756
msgid "Edit supplier part"
msgstr ""
-#: templates/js/translated/company.js:1336
+#: templates/js/translated/company.js:1757
msgid "Delete supplier part"
msgstr ""
-#: templates/js/translated/company.js:1389
+#: templates/js/translated/company.js:1810
#: templates/js/translated/pricing.js:694
msgid "Delete Price Break"
msgstr ""
-#: templates/js/translated/company.js:1399
+#: templates/js/translated/company.js:1820
#: templates/js/translated/pricing.js:712
msgid "Edit Price Break"
msgstr ""
-#: templates/js/translated/company.js:1414
+#: templates/js/translated/company.js:1835
msgid "No price break information found"
msgstr ""
-#: templates/js/translated/company.js:1443
+#: templates/js/translated/company.js:1864
msgid "Last updated"
msgstr ""
-#: templates/js/translated/company.js:1450
+#: templates/js/translated/company.js:1871
msgid "Edit price break"
msgstr ""
-#: templates/js/translated/company.js:1451
+#: templates/js/translated/company.js:1872
msgid "Delete price break"
msgstr ""
-#: templates/js/translated/filters.js:186
-#: templates/js/translated/filters.js:550
+#: templates/js/translated/filters.js:187
+#: templates/js/translated/filters.js:673
msgid "true"
msgstr ""
-#: templates/js/translated/filters.js:190
-#: templates/js/translated/filters.js:551
+#: templates/js/translated/filters.js:191
+#: templates/js/translated/filters.js:674
msgid "false"
msgstr ""
-#: templates/js/translated/filters.js:214
+#: templates/js/translated/filters.js:215
msgid "Select filter"
msgstr ""
-#: templates/js/translated/filters.js:328
+#: templates/js/translated/filters.js:438
msgid "Print Labels"
msgstr ""
-#: templates/js/translated/filters.js:332
+#: templates/js/translated/filters.js:442
msgid "Print Reports"
msgstr ""
-#: templates/js/translated/filters.js:344
+#: templates/js/translated/filters.js:454
msgid "Download table data"
msgstr ""
-#: templates/js/translated/filters.js:351
+#: templates/js/translated/filters.js:461
msgid "Reload table data"
msgstr ""
-#: templates/js/translated/filters.js:360
+#: templates/js/translated/filters.js:470
msgid "Add new filter"
msgstr ""
-#: templates/js/translated/filters.js:368
+#: templates/js/translated/filters.js:478
msgid "Clear all filters"
msgstr ""
-#: templates/js/translated/filters.js:460
+#: templates/js/translated/filters.js:583
msgid "Create filter"
msgstr ""
@@ -10497,6 +10620,12 @@ msgstr ""
msgid "View operation not allowed"
msgstr ""
+#: templates/js/translated/forms.js:506 templates/js/translated/helpers.js:105
+#: templates/js/translated/part.js:369 templates/js/translated/pricing.js:629
+#: templates/js/translated/stock.js:215 users/models.py:253
+msgid "Delete"
+msgstr "Supprimer"
+
#: templates/js/translated/forms.js:752
msgid "Keep this form open"
msgstr ""
@@ -10514,23 +10643,23 @@ msgstr ""
msgid "No results found"
msgstr ""
-#: templates/js/translated/forms.js:2071 templates/js/translated/search.js:281
+#: templates/js/translated/forms.js:2071 templates/js/translated/search.js:239
msgid "Searching"
msgstr ""
-#: templates/js/translated/forms.js:2276
+#: templates/js/translated/forms.js:2285
msgid "Clear input"
msgstr ""
-#: templates/js/translated/forms.js:2733
+#: templates/js/translated/forms.js:2742
msgid "File Column"
msgstr ""
-#: templates/js/translated/forms.js:2733
+#: templates/js/translated/forms.js:2742
msgid "Field Name"
msgstr ""
-#: templates/js/translated/forms.js:2745
+#: templates/js/translated/forms.js:2754
msgid "Select Columns"
msgstr ""
@@ -10550,6 +10679,14 @@ msgstr ""
msgid "False"
msgstr ""
+#: templates/js/translated/index.js:99
+msgid "No parts required for builds"
+msgstr ""
+
+#: templates/js/translated/index.js:125
+msgid "Allocated Stock"
+msgstr ""
+
#: templates/js/translated/label.js:58
msgid "Select Printer"
msgstr "Sélectionner imprimante"
@@ -10651,7 +10788,7 @@ msgstr ""
#: templates/js/translated/news.js:38
#: templates/js/translated/notification.js:45
-#: templates/js/translated/part.js:1577
+#: templates/js/translated/part.js:1576
msgid "ID"
msgstr ""
@@ -10700,7 +10837,7 @@ msgid "Delete Line"
msgstr ""
#: templates/js/translated/order.js:281
-#: templates/js/translated/purchase_order.js:1958
+#: templates/js/translated/purchase_order.js:1968
msgid "No line items found"
msgstr ""
@@ -10716,363 +10853,355 @@ msgstr ""
msgid "Delete line"
msgstr ""
-#: templates/js/translated/part.js:91
+#: templates/js/translated/part.js:90
msgid "Part Attributes"
msgstr "Attributs de la pièce"
-#: templates/js/translated/part.js:95
+#: templates/js/translated/part.js:94
msgid "Part Creation Options"
msgstr "Options de création de pièce"
-#: templates/js/translated/part.js:99
+#: templates/js/translated/part.js:98
msgid "Part Duplication Options"
msgstr "Options de duplication de pièces"
-#: templates/js/translated/part.js:122
+#: templates/js/translated/part.js:121
msgid "Add Part Category"
msgstr "Ajouter une catégorie de pièce"
-#: templates/js/translated/part.js:294
+#: templates/js/translated/part.js:293
msgid "Parent part category"
msgstr ""
-#: templates/js/translated/part.js:310 templates/js/translated/stock.js:147
+#: templates/js/translated/part.js:309 templates/js/translated/stock.js:146
msgid "Icon (optional) - Explore all available icons on"
msgstr ""
-#: templates/js/translated/part.js:330
+#: templates/js/translated/part.js:329
msgid "Create Part Category"
msgstr ""
-#: templates/js/translated/part.js:333
+#: templates/js/translated/part.js:332
msgid "Create new category after this one"
msgstr ""
-#: templates/js/translated/part.js:334
+#: templates/js/translated/part.js:333
msgid "Part category created"
msgstr ""
-#: templates/js/translated/part.js:348
+#: templates/js/translated/part.js:347
msgid "Edit Part Category"
msgstr ""
-#: templates/js/translated/part.js:361
+#: templates/js/translated/part.js:360
msgid "Are you sure you want to delete this part category?"
msgstr ""
-#: templates/js/translated/part.js:366
+#: templates/js/translated/part.js:365
msgid "Move to parent category"
msgstr ""
-#: templates/js/translated/part.js:375
+#: templates/js/translated/part.js:374
msgid "Delete Part Category"
msgstr ""
-#: templates/js/translated/part.js:379
+#: templates/js/translated/part.js:378
msgid "Action for parts in this category"
msgstr ""
-#: templates/js/translated/part.js:384
+#: templates/js/translated/part.js:383
msgid "Action for child categories"
msgstr ""
-#: templates/js/translated/part.js:408
+#: templates/js/translated/part.js:407
msgid "Create Part"
msgstr ""
-#: templates/js/translated/part.js:410
+#: templates/js/translated/part.js:409
msgid "Create another part after this one"
msgstr ""
-#: templates/js/translated/part.js:411
+#: templates/js/translated/part.js:410
msgid "Part created successfully"
msgstr "Composant créé avec succès"
-#: templates/js/translated/part.js:439
+#: templates/js/translated/part.js:438
msgid "Edit Part"
msgstr "Modifier la pièce"
-#: templates/js/translated/part.js:441
+#: templates/js/translated/part.js:440
msgid "Part edited"
msgstr "Pièce modifiée"
-#: templates/js/translated/part.js:452
+#: templates/js/translated/part.js:451
msgid "Create Part Variant"
msgstr "Créer une variante de pièce"
-#: templates/js/translated/part.js:509
+#: templates/js/translated/part.js:508
msgid "Active Part"
msgstr ""
-#: templates/js/translated/part.js:510
+#: templates/js/translated/part.js:509
msgid "Part cannot be deleted as it is currently active"
msgstr ""
-#: templates/js/translated/part.js:524
+#: templates/js/translated/part.js:523
msgid "Deleting this part cannot be reversed"
msgstr ""
-#: templates/js/translated/part.js:526
+#: templates/js/translated/part.js:525
msgid "Any stock items for this part will be deleted"
msgstr ""
-#: templates/js/translated/part.js:527
+#: templates/js/translated/part.js:526
msgid "This part will be removed from any Bills of Material"
msgstr ""
-#: templates/js/translated/part.js:528
+#: templates/js/translated/part.js:527
msgid "All manufacturer and supplier information for this part will be deleted"
msgstr ""
-#: templates/js/translated/part.js:535
+#: templates/js/translated/part.js:534
msgid "Delete Part"
msgstr ""
-#: templates/js/translated/part.js:571
+#: templates/js/translated/part.js:570
msgid "You are subscribed to notifications for this item"
msgstr ""
-#: templates/js/translated/part.js:573
+#: templates/js/translated/part.js:572
msgid "You have subscribed to notifications for this item"
msgstr ""
-#: templates/js/translated/part.js:578
+#: templates/js/translated/part.js:577
msgid "Subscribe to notifications for this item"
msgstr ""
-#: templates/js/translated/part.js:580
+#: templates/js/translated/part.js:579
msgid "You have unsubscribed to notifications for this item"
msgstr ""
-#: templates/js/translated/part.js:597
+#: templates/js/translated/part.js:596
msgid "Validating the BOM will mark each line item as valid"
msgstr ""
-#: templates/js/translated/part.js:607
+#: templates/js/translated/part.js:606
msgid "Validate Bill of Materials"
msgstr ""
-#: templates/js/translated/part.js:610
+#: templates/js/translated/part.js:609
msgid "Validated Bill of Materials"
msgstr ""
-#: templates/js/translated/part.js:635
+#: templates/js/translated/part.js:634
msgid "Copy Bill of Materials"
msgstr ""
-#: templates/js/translated/part.js:663
-#: templates/js/translated/table_filters.js:660
+#: templates/js/translated/part.js:662
+#: templates/js/translated/table_filters.js:682
msgid "Low stock"
msgstr "Stock bas"
-#: templates/js/translated/part.js:666
+#: templates/js/translated/part.js:665
msgid "No stock available"
msgstr ""
-#: templates/js/translated/part.js:726
+#: templates/js/translated/part.js:725
msgid "Demand"
msgstr ""
-#: templates/js/translated/part.js:749
+#: templates/js/translated/part.js:748
msgid "Unit"
msgstr ""
-#: templates/js/translated/part.js:768 templates/js/translated/part.js:1176
-msgid "Trackable part"
-msgstr "Pièce traçable"
-
-#: templates/js/translated/part.js:772 templates/js/translated/part.js:1180
+#: templates/js/translated/part.js:771 templates/js/translated/part.js:1179
msgid "Virtual part"
msgstr "Pièce virtuelle"
-#: templates/js/translated/part.js:784
+#: templates/js/translated/part.js:783
msgid "Subscribed part"
msgstr ""
-#: templates/js/translated/part.js:788
+#: templates/js/translated/part.js:787
msgid "Salable part"
msgstr "Pièce vendable"
-#: templates/js/translated/part.js:863
+#: templates/js/translated/part.js:862
msgid "Schedule generation of a new stocktake report."
msgstr ""
-#: templates/js/translated/part.js:863
+#: templates/js/translated/part.js:862
msgid "Once complete, the stocktake report will be available for download."
msgstr ""
-#: templates/js/translated/part.js:871
+#: templates/js/translated/part.js:870
msgid "Generate Stocktake Report"
msgstr ""
-#: templates/js/translated/part.js:875
+#: templates/js/translated/part.js:874
msgid "Stocktake report scheduled"
msgstr ""
-#: templates/js/translated/part.js:1024
+#: templates/js/translated/part.js:1023
msgid "No stocktake information available"
msgstr ""
-#: templates/js/translated/part.js:1082 templates/js/translated/part.js:1118
+#: templates/js/translated/part.js:1081 templates/js/translated/part.js:1117
msgid "Edit Stocktake Entry"
msgstr ""
-#: templates/js/translated/part.js:1086 templates/js/translated/part.js:1128
+#: templates/js/translated/part.js:1085 templates/js/translated/part.js:1127
msgid "Delete Stocktake Entry"
msgstr ""
-#: templates/js/translated/part.js:1255
+#: templates/js/translated/part.js:1254
msgid "No variants found"
msgstr "Aucune variante trouvée"
-#: templates/js/translated/part.js:1572
+#: templates/js/translated/part.js:1571
msgid "No part parameter templates found"
msgstr ""
-#: templates/js/translated/part.js:1635
+#: templates/js/translated/part.js:1634
msgid "Edit Part Parameter Template"
msgstr ""
-#: templates/js/translated/part.js:1647
+#: templates/js/translated/part.js:1646
msgid "Any parameters which reference this template will also be deleted"
msgstr ""
-#: templates/js/translated/part.js:1655
+#: templates/js/translated/part.js:1654
msgid "Delete Part Parameter Template"
msgstr ""
-#: templates/js/translated/part.js:1689
-#: templates/js/translated/purchase_order.js:1618
+#: templates/js/translated/part.js:1688
+#: templates/js/translated/purchase_order.js:1633
msgid "No purchase orders found"
msgstr ""
-#: templates/js/translated/part.js:1832
-#: templates/js/translated/purchase_order.js:2121
-#: templates/js/translated/return_order.js:740
-#: templates/js/translated/sales_order.js:1855
+#: templates/js/translated/part.js:1831
+#: templates/js/translated/purchase_order.js:2131
+#: templates/js/translated/return_order.js:752
+#: templates/js/translated/sales_order.js:1867
msgid "This line item is overdue"
msgstr ""
-#: templates/js/translated/part.js:1877
-#: templates/js/translated/purchase_order.js:2188
+#: templates/js/translated/part.js:1876
+#: templates/js/translated/purchase_order.js:2198
msgid "Receive line item"
msgstr ""
-#: templates/js/translated/part.js:1944
+#: templates/js/translated/part.js:1943
msgid "Delete part relationship"
msgstr ""
-#: templates/js/translated/part.js:1966
+#: templates/js/translated/part.js:1965
msgid "Delete Part Relationship"
msgstr ""
-#: templates/js/translated/part.js:2054 templates/js/translated/part.js:2366
+#: templates/js/translated/part.js:2053 templates/js/translated/part.js:2442
msgid "No parts found"
msgstr "Aucune pièce trouvée"
-#: templates/js/translated/part.js:2192
-msgid "parts"
-msgstr ""
-
-#: templates/js/translated/part.js:2276
-msgid "No category"
-msgstr "Aucune catégorie"
-
-#: templates/js/translated/part.js:2390 templates/js/translated/part.js:2611
-#: templates/js/translated/stock.js:2417
-msgid "Display as list"
-msgstr "Afficher sous forme de liste"
-
-#: templates/js/translated/part.js:2406
-msgid "Display as grid"
-msgstr "Afficher sous forme de grille"
-
-#: templates/js/translated/part.js:2472
+#: templates/js/translated/part.js:2174
msgid "Set the part category for the selected parts"
msgstr ""
-#: templates/js/translated/part.js:2477
+#: templates/js/translated/part.js:2179
msgid "Set Part Category"
msgstr ""
+#: templates/js/translated/part.js:2204
+msgid "Set category"
+msgstr ""
+
+#: templates/js/translated/part.js:2259
+msgid "parts"
+msgstr ""
+
+#: templates/js/translated/part.js:2352
+msgid "No category"
+msgstr "Aucune catégorie"
+
+#: templates/js/translated/part.js:2466 templates/js/translated/part.js:2596
+#: templates/js/translated/stock.js:2548
+msgid "Display as list"
+msgstr "Afficher sous forme de liste"
+
#: templates/js/translated/part.js:2482
-msgid "Select Part Category"
-msgstr ""
+msgid "Display as grid"
+msgstr "Afficher sous forme de grille"
-#: templates/js/translated/part.js:2495
-msgid "Category is required"
-msgstr ""
-
-#: templates/js/translated/part.js:2595
+#: templates/js/translated/part.js:2580
msgid "No subcategories found"
msgstr ""
-#: templates/js/translated/part.js:2631 templates/js/translated/stock.js:2437
+#: templates/js/translated/part.js:2616 templates/js/translated/stock.js:2568
msgid "Display as tree"
msgstr "Afficher sous forme d'arborescence"
-#: templates/js/translated/part.js:2711
+#: templates/js/translated/part.js:2696
msgid "Load Subcategories"
msgstr ""
-#: templates/js/translated/part.js:2727
+#: templates/js/translated/part.js:2712
msgid "Subscribed category"
msgstr ""
-#: templates/js/translated/part.js:2807
+#: templates/js/translated/part.js:2792
msgid "No test templates matching query"
msgstr ""
-#: templates/js/translated/part.js:2858 templates/js/translated/stock.js:1380
+#: templates/js/translated/part.js:2843 templates/js/translated/stock.js:1379
msgid "Edit test result"
msgstr "Modifier le résultat du test"
-#: templates/js/translated/part.js:2859 templates/js/translated/stock.js:1381
-#: templates/js/translated/stock.js:1643
+#: templates/js/translated/part.js:2844 templates/js/translated/stock.js:1380
+#: templates/js/translated/stock.js:1642
msgid "Delete test result"
msgstr "Supprimer le résultat du test"
-#: templates/js/translated/part.js:2863
+#: templates/js/translated/part.js:2848
msgid "This test is defined for a parent part"
msgstr ""
-#: templates/js/translated/part.js:2879
+#: templates/js/translated/part.js:2864
msgid "Edit Test Result Template"
msgstr ""
-#: templates/js/translated/part.js:2893
+#: templates/js/translated/part.js:2878
msgid "Delete Test Result Template"
msgstr ""
-#: templates/js/translated/part.js:2972 templates/js/translated/part.js:2973
+#: templates/js/translated/part.js:2957 templates/js/translated/part.js:2958
msgid "No date specified"
msgstr ""
-#: templates/js/translated/part.js:2975
+#: templates/js/translated/part.js:2960
msgid "Specified date is in the past"
msgstr ""
-#: templates/js/translated/part.js:2981
+#: templates/js/translated/part.js:2966
msgid "Speculative"
msgstr ""
-#: templates/js/translated/part.js:3031
+#: templates/js/translated/part.js:3016
msgid "No scheduling information available for this part"
msgstr ""
-#: templates/js/translated/part.js:3037
+#: templates/js/translated/part.js:3022
msgid "Error fetching scheduling information for this part"
msgstr ""
-#: templates/js/translated/part.js:3133
+#: templates/js/translated/part.js:3118
msgid "Scheduled Stock Quantities"
msgstr ""
-#: templates/js/translated/part.js:3149
+#: templates/js/translated/part.js:3134
msgid "Maximum Quantity"
msgstr ""
-#: templates/js/translated/part.js:3194
+#: templates/js/translated/part.js:3179
msgid "Minimum Stock Level"
msgstr ""
@@ -11168,234 +11297,234 @@ msgstr ""
msgid "Variant Part"
msgstr ""
-#: templates/js/translated/purchase_order.js:155
+#: templates/js/translated/purchase_order.js:166
msgid "Select purchase order to duplicate"
msgstr ""
-#: templates/js/translated/purchase_order.js:162
+#: templates/js/translated/purchase_order.js:173
msgid "Duplicate Line Items"
msgstr ""
-#: templates/js/translated/purchase_order.js:163
+#: templates/js/translated/purchase_order.js:174
msgid "Duplicate all line items from the selected order"
msgstr ""
-#: templates/js/translated/purchase_order.js:170
+#: templates/js/translated/purchase_order.js:181
msgid "Duplicate Extra Lines"
msgstr ""
-#: templates/js/translated/purchase_order.js:171
+#: templates/js/translated/purchase_order.js:182
msgid "Duplicate extra line items from the selected order"
msgstr ""
-#: templates/js/translated/purchase_order.js:192
+#: templates/js/translated/purchase_order.js:203
msgid "Edit Purchase Order"
msgstr ""
-#: templates/js/translated/purchase_order.js:209
+#: templates/js/translated/purchase_order.js:220
msgid "Duplication Options"
msgstr ""
-#: templates/js/translated/purchase_order.js:436
+#: templates/js/translated/purchase_order.js:447
msgid "Complete Purchase Order"
msgstr ""
-#: templates/js/translated/purchase_order.js:453
-#: templates/js/translated/return_order.js:195
-#: templates/js/translated/sales_order.js:485
+#: templates/js/translated/purchase_order.js:464
+#: templates/js/translated/return_order.js:207
+#: templates/js/translated/sales_order.js:497
msgid "Mark this order as complete?"
msgstr ""
-#: templates/js/translated/purchase_order.js:459
+#: templates/js/translated/purchase_order.js:470
msgid "All line items have been received"
msgstr ""
-#: templates/js/translated/purchase_order.js:464
+#: templates/js/translated/purchase_order.js:475
msgid "This order has line items which have not been marked as received."
msgstr ""
-#: templates/js/translated/purchase_order.js:465
-#: templates/js/translated/sales_order.js:499
+#: templates/js/translated/purchase_order.js:476
+#: templates/js/translated/sales_order.js:511
msgid "Completing this order means that the order and line items will no longer be editable."
msgstr ""
-#: templates/js/translated/purchase_order.js:488
+#: templates/js/translated/purchase_order.js:499
msgid "Cancel Purchase Order"
msgstr ""
-#: templates/js/translated/purchase_order.js:493
+#: templates/js/translated/purchase_order.js:504
msgid "Are you sure you wish to cancel this purchase order?"
msgstr ""
-#: templates/js/translated/purchase_order.js:499
+#: templates/js/translated/purchase_order.js:510
msgid "This purchase order can not be cancelled"
msgstr ""
-#: templates/js/translated/purchase_order.js:520
-#: templates/js/translated/return_order.js:149
+#: templates/js/translated/purchase_order.js:531
+#: templates/js/translated/return_order.js:161
msgid "After placing this order, line items will no longer be editable."
msgstr ""
-#: templates/js/translated/purchase_order.js:525
+#: templates/js/translated/purchase_order.js:536
msgid "Issue Purchase Order"
msgstr ""
-#: templates/js/translated/purchase_order.js:617
+#: templates/js/translated/purchase_order.js:628
msgid "At least one purchaseable part must be selected"
msgstr ""
-#: templates/js/translated/purchase_order.js:642
+#: templates/js/translated/purchase_order.js:653
msgid "Quantity to order"
msgstr ""
-#: templates/js/translated/purchase_order.js:651
+#: templates/js/translated/purchase_order.js:662
msgid "New supplier part"
msgstr ""
-#: templates/js/translated/purchase_order.js:669
+#: templates/js/translated/purchase_order.js:680
msgid "New purchase order"
msgstr ""
-#: templates/js/translated/purchase_order.js:701
+#: templates/js/translated/purchase_order.js:712
msgid "Add to purchase order"
msgstr ""
-#: templates/js/translated/purchase_order.js:845
+#: templates/js/translated/purchase_order.js:860
msgid "No matching supplier parts"
msgstr ""
-#: templates/js/translated/purchase_order.js:864
+#: templates/js/translated/purchase_order.js:879
msgid "No matching purchase orders"
msgstr ""
-#: templates/js/translated/purchase_order.js:1043
+#: templates/js/translated/purchase_order.js:1058
msgid "Select Line Items"
msgstr ""
-#: templates/js/translated/purchase_order.js:1044
-#: templates/js/translated/return_order.js:480
+#: templates/js/translated/purchase_order.js:1059
+#: templates/js/translated/return_order.js:492
msgid "At least one line item must be selected"
msgstr ""
-#: templates/js/translated/purchase_order.js:1074
+#: templates/js/translated/purchase_order.js:1089
msgid "Received Quantity"
msgstr ""
-#: templates/js/translated/purchase_order.js:1085
+#: templates/js/translated/purchase_order.js:1100
msgid "Quantity to receive"
msgstr ""
-#: templates/js/translated/purchase_order.js:1161
+#: templates/js/translated/purchase_order.js:1176
msgid "Stock Status"
msgstr ""
-#: templates/js/translated/purchase_order.js:1175
+#: templates/js/translated/purchase_order.js:1190
msgid "Add barcode"
msgstr ""
-#: templates/js/translated/purchase_order.js:1176
+#: templates/js/translated/purchase_order.js:1191
msgid "Remove barcode"
msgstr ""
-#: templates/js/translated/purchase_order.js:1179
+#: templates/js/translated/purchase_order.js:1194
msgid "Specify location"
msgstr ""
-#: templates/js/translated/purchase_order.js:1187
+#: templates/js/translated/purchase_order.js:1202
msgid "Add batch code"
msgstr ""
-#: templates/js/translated/purchase_order.js:1198
+#: templates/js/translated/purchase_order.js:1213
msgid "Add serial numbers"
msgstr ""
-#: templates/js/translated/purchase_order.js:1250
+#: templates/js/translated/purchase_order.js:1265
msgid "Serials"
msgstr ""
-#: templates/js/translated/purchase_order.js:1275
+#: templates/js/translated/purchase_order.js:1290
msgid "Order Code"
msgstr "Référence de commande"
-#: templates/js/translated/purchase_order.js:1277
+#: templates/js/translated/purchase_order.js:1292
msgid "Quantity to Receive"
msgstr ""
-#: templates/js/translated/purchase_order.js:1299
-#: templates/js/translated/return_order.js:545
+#: templates/js/translated/purchase_order.js:1314
+#: templates/js/translated/return_order.js:557
msgid "Confirm receipt of items"
msgstr ""
-#: templates/js/translated/purchase_order.js:1300
+#: templates/js/translated/purchase_order.js:1315
msgid "Receive Purchase Order Items"
msgstr ""
-#: templates/js/translated/purchase_order.js:1368
+#: templates/js/translated/purchase_order.js:1383
msgid "Scan Item Barcode"
msgstr ""
-#: templates/js/translated/purchase_order.js:1369
+#: templates/js/translated/purchase_order.js:1384
msgid "Scan barcode on incoming item (must not match any existing stock items)"
msgstr ""
-#: templates/js/translated/purchase_order.js:1383
+#: templates/js/translated/purchase_order.js:1398
msgid "Invalid barcode data"
msgstr ""
-#: templates/js/translated/purchase_order.js:1645
-#: templates/js/translated/return_order.js:274
-#: templates/js/translated/sales_order.js:762
-#: templates/js/translated/sales_order.js:986
+#: templates/js/translated/purchase_order.js:1660
+#: templates/js/translated/return_order.js:286
+#: templates/js/translated/sales_order.js:774
+#: templates/js/translated/sales_order.js:998
msgid "Order is overdue"
msgstr "Commande en retard"
-#: templates/js/translated/purchase_order.js:1707
-#: templates/js/translated/return_order.js:342
-#: templates/js/translated/sales_order.js:839
-#: templates/js/translated/sales_order.js:999
+#: templates/js/translated/purchase_order.js:1722
+#: templates/js/translated/return_order.js:354
+#: templates/js/translated/sales_order.js:851
+#: templates/js/translated/sales_order.js:1011
msgid "Items"
msgstr ""
-#: templates/js/translated/purchase_order.js:1806
+#: templates/js/translated/purchase_order.js:1821
msgid "All selected Line items will be deleted"
msgstr ""
-#: templates/js/translated/purchase_order.js:1824
+#: templates/js/translated/purchase_order.js:1839
msgid "Delete selected Line items?"
msgstr ""
-#: templates/js/translated/purchase_order.js:1884
-#: templates/js/translated/sales_order.js:2047
+#: templates/js/translated/purchase_order.js:1894
+#: templates/js/translated/sales_order.js:2059
msgid "Duplicate Line Item"
msgstr ""
-#: templates/js/translated/purchase_order.js:1899
-#: templates/js/translated/return_order.js:464
-#: templates/js/translated/return_order.js:653
-#: templates/js/translated/sales_order.js:2060
+#: templates/js/translated/purchase_order.js:1909
+#: templates/js/translated/return_order.js:476
+#: templates/js/translated/return_order.js:665
+#: templates/js/translated/sales_order.js:2072
msgid "Edit Line Item"
msgstr ""
-#: templates/js/translated/purchase_order.js:1910
-#: templates/js/translated/return_order.js:666
-#: templates/js/translated/sales_order.js:2071
+#: templates/js/translated/purchase_order.js:1920
+#: templates/js/translated/return_order.js:678
+#: templates/js/translated/sales_order.js:2083
msgid "Delete Line Item"
msgstr ""
-#: templates/js/translated/purchase_order.js:2192
-#: templates/js/translated/sales_order.js:2001
+#: templates/js/translated/purchase_order.js:2202
+#: templates/js/translated/sales_order.js:2013
msgid "Duplicate line item"
msgstr ""
-#: templates/js/translated/purchase_order.js:2193
-#: templates/js/translated/return_order.js:785
-#: templates/js/translated/sales_order.js:2002
+#: templates/js/translated/purchase_order.js:2203
+#: templates/js/translated/return_order.js:797
+#: templates/js/translated/sales_order.js:2014
msgid "Edit line item"
msgstr ""
-#: templates/js/translated/purchase_order.js:2194
-#: templates/js/translated/return_order.js:789
-#: templates/js/translated/sales_order.js:2008
+#: templates/js/translated/purchase_order.js:2204
+#: templates/js/translated/return_order.js:801
+#: templates/js/translated/sales_order.js:2020
msgid "Delete line item"
msgstr ""
@@ -11424,941 +11553,973 @@ msgstr ""
msgid "Add Customer"
msgstr ""
-#: templates/js/translated/return_order.js:119
+#: templates/js/translated/return_order.js:131
msgid "Create Return Order"
msgstr ""
-#: templates/js/translated/return_order.js:134
+#: templates/js/translated/return_order.js:146
msgid "Edit Return Order"
msgstr ""
-#: templates/js/translated/return_order.js:154
+#: templates/js/translated/return_order.js:166
msgid "Issue Return Order"
msgstr ""
-#: templates/js/translated/return_order.js:171
+#: templates/js/translated/return_order.js:183
msgid "Are you sure you wish to cancel this Return Order?"
msgstr ""
-#: templates/js/translated/return_order.js:178
+#: templates/js/translated/return_order.js:190
msgid "Cancel Return Order"
msgstr ""
-#: templates/js/translated/return_order.js:203
+#: templates/js/translated/return_order.js:215
msgid "Complete Return Order"
msgstr ""
-#: templates/js/translated/return_order.js:251
+#: templates/js/translated/return_order.js:263
msgid "No return orders found"
msgstr ""
-#: templates/js/translated/return_order.js:288
-#: templates/js/translated/sales_order.js:776
+#: templates/js/translated/return_order.js:300
+#: templates/js/translated/sales_order.js:788
msgid "Invalid Customer"
msgstr ""
-#: templates/js/translated/return_order.js:546
+#: templates/js/translated/return_order.js:558
msgid "Receive Return Order Items"
msgstr ""
-#: templates/js/translated/return_order.js:677
-#: templates/js/translated/sales_order.js:2207
+#: templates/js/translated/return_order.js:689
+#: templates/js/translated/sales_order.js:2219
msgid "No matching line items"
msgstr ""
-#: templates/js/translated/return_order.js:782
+#: templates/js/translated/return_order.js:794
msgid "Mark item as received"
msgstr ""
-#: templates/js/translated/sales_order.js:146
+#: templates/js/translated/sales_order.js:158
msgid "Create Sales Order"
msgstr ""
-#: templates/js/translated/sales_order.js:161
+#: templates/js/translated/sales_order.js:173
msgid "Edit Sales Order"
msgstr ""
-#: templates/js/translated/sales_order.js:276
+#: templates/js/translated/sales_order.js:288
msgid "No stock items have been allocated to this shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:281
+#: templates/js/translated/sales_order.js:293
msgid "The following stock items will be shipped"
msgstr ""
-#: templates/js/translated/sales_order.js:321
+#: templates/js/translated/sales_order.js:333
msgid "Complete Shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:345
+#: templates/js/translated/sales_order.js:357
msgid "Confirm Shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:401
+#: templates/js/translated/sales_order.js:413
msgid "No pending shipments found"
msgstr ""
-#: templates/js/translated/sales_order.js:405
+#: templates/js/translated/sales_order.js:417
msgid "No stock items have been allocated to pending shipments"
msgstr ""
-#: templates/js/translated/sales_order.js:415
+#: templates/js/translated/sales_order.js:427
msgid "Complete Shipments"
msgstr ""
-#: templates/js/translated/sales_order.js:437
+#: templates/js/translated/sales_order.js:449
msgid "Skip"
msgstr ""
-#: templates/js/translated/sales_order.js:498
+#: templates/js/translated/sales_order.js:510
msgid "This order has line items which have not been completed."
msgstr ""
-#: templates/js/translated/sales_order.js:520
+#: templates/js/translated/sales_order.js:532
msgid "Issue this Sales Order?"
msgstr ""
-#: templates/js/translated/sales_order.js:525
+#: templates/js/translated/sales_order.js:537
msgid "Issue Sales Order"
msgstr ""
-#: templates/js/translated/sales_order.js:544
+#: templates/js/translated/sales_order.js:556
msgid "Cancel Sales Order"
msgstr ""
-#: templates/js/translated/sales_order.js:549
+#: templates/js/translated/sales_order.js:561
msgid "Cancelling this order means that the order will no longer be editable."
msgstr ""
-#: templates/js/translated/sales_order.js:603
+#: templates/js/translated/sales_order.js:615
msgid "Create New Shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:713
+#: templates/js/translated/sales_order.js:725
msgid "No sales orders found"
msgstr ""
-#: templates/js/translated/sales_order.js:896
+#: templates/js/translated/sales_order.js:908
msgid "Edit shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:899
+#: templates/js/translated/sales_order.js:911
msgid "Complete shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:904
+#: templates/js/translated/sales_order.js:916
msgid "Delete shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:921
+#: templates/js/translated/sales_order.js:933
msgid "Edit Shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:936
+#: templates/js/translated/sales_order.js:948
msgid "Delete Shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:969
+#: templates/js/translated/sales_order.js:981
msgid "No matching shipments found"
msgstr ""
-#: templates/js/translated/sales_order.js:994
+#: templates/js/translated/sales_order.js:1006
msgid "Shipment Reference"
msgstr ""
-#: templates/js/translated/sales_order.js:1018
-#: templates/js/translated/sales_order.js:1515
+#: templates/js/translated/sales_order.js:1030
+#: templates/js/translated/sales_order.js:1527
msgid "Not shipped"
msgstr ""
-#: templates/js/translated/sales_order.js:1036
+#: templates/js/translated/sales_order.js:1048
msgid "Tracking"
msgstr ""
-#: templates/js/translated/sales_order.js:1040
+#: templates/js/translated/sales_order.js:1052
msgid "Invoice"
msgstr ""
-#: templates/js/translated/sales_order.js:1207
+#: templates/js/translated/sales_order.js:1219
msgid "Add Shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:1258
+#: templates/js/translated/sales_order.js:1270
msgid "Confirm stock allocation"
msgstr ""
-#: templates/js/translated/sales_order.js:1259
+#: templates/js/translated/sales_order.js:1271
msgid "Allocate Stock Items to Sales Order"
msgstr ""
-#: templates/js/translated/sales_order.js:1463
+#: templates/js/translated/sales_order.js:1475
msgid "No sales order allocations found"
msgstr ""
-#: templates/js/translated/sales_order.js:1555
+#: templates/js/translated/sales_order.js:1567
msgid "Edit Stock Allocation"
msgstr ""
-#: templates/js/translated/sales_order.js:1569
+#: templates/js/translated/sales_order.js:1581
msgid "Confirm Delete Operation"
msgstr ""
-#: templates/js/translated/sales_order.js:1570
+#: templates/js/translated/sales_order.js:1582
msgid "Delete Stock Allocation"
msgstr ""
-#: templates/js/translated/sales_order.js:1609
-#: templates/js/translated/sales_order.js:1696
-#: templates/js/translated/stock.js:1688
+#: templates/js/translated/sales_order.js:1621
+#: templates/js/translated/sales_order.js:1708
+#: templates/js/translated/stock.js:1687
msgid "Shipped to customer"
msgstr "Livré au client"
-#: templates/js/translated/sales_order.js:1617
-#: templates/js/translated/sales_order.js:1705
+#: templates/js/translated/sales_order.js:1629
+#: templates/js/translated/sales_order.js:1717
msgid "Stock location not specified"
msgstr ""
-#: templates/js/translated/sales_order.js:1985
+#: templates/js/translated/sales_order.js:1997
msgid "Allocate serial numbers"
msgstr "Allouer des numéros de série"
-#: templates/js/translated/sales_order.js:1989
+#: templates/js/translated/sales_order.js:2001
msgid "Purchase stock"
msgstr "Acheter du stock"
-#: templates/js/translated/sales_order.js:1998
-#: templates/js/translated/sales_order.js:2185
+#: templates/js/translated/sales_order.js:2010
+#: templates/js/translated/sales_order.js:2197
msgid "Calculate price"
msgstr "Calculer le prix"
-#: templates/js/translated/sales_order.js:2012
+#: templates/js/translated/sales_order.js:2024
msgid "Cannot be deleted as items have been shipped"
msgstr ""
-#: templates/js/translated/sales_order.js:2015
+#: templates/js/translated/sales_order.js:2027
msgid "Cannot be deleted as items have been allocated"
msgstr ""
-#: templates/js/translated/sales_order.js:2086
+#: templates/js/translated/sales_order.js:2098
msgid "Allocate Serial Numbers"
msgstr "Allouer des numéros de série"
-#: templates/js/translated/sales_order.js:2193
+#: templates/js/translated/sales_order.js:2205
msgid "Update Unit Price"
msgstr ""
-#: templates/js/translated/search.js:312
+#: templates/js/translated/search.js:270
msgid "No results"
msgstr ""
-#: templates/js/translated/search.js:334 templates/search.html:25
+#: templates/js/translated/search.js:292 templates/search.html:25
msgid "Enter search query"
msgstr ""
-#: templates/js/translated/search.js:384
+#: templates/js/translated/search.js:342
msgid "result"
msgstr ""
-#: templates/js/translated/search.js:384
+#: templates/js/translated/search.js:342
msgid "results"
msgstr ""
-#: templates/js/translated/search.js:394
+#: templates/js/translated/search.js:352
msgid "Minimize results"
msgstr ""
-#: templates/js/translated/search.js:397
+#: templates/js/translated/search.js:355
msgid "Remove results"
msgstr ""
-#: templates/js/translated/stock.js:98
+#: templates/js/translated/stock.js:97
msgid "Serialize Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:129
+#: templates/js/translated/stock.js:128
msgid "Confirm Stock Serialization"
msgstr ""
-#: templates/js/translated/stock.js:138
+#: templates/js/translated/stock.js:137
msgid "Parent stock location"
msgstr ""
-#: templates/js/translated/stock.js:173
+#: templates/js/translated/stock.js:172
msgid "Edit Stock Location"
msgstr ""
-#: templates/js/translated/stock.js:188
+#: templates/js/translated/stock.js:187
msgid "New Stock Location"
msgstr ""
-#: templates/js/translated/stock.js:190
+#: templates/js/translated/stock.js:189
msgid "Create another location after this one"
msgstr ""
-#: templates/js/translated/stock.js:191
+#: templates/js/translated/stock.js:190
msgid "Stock location created"
msgstr ""
-#: templates/js/translated/stock.js:205
+#: templates/js/translated/stock.js:204
msgid "Are you sure you want to delete this stock location?"
msgstr ""
-#: templates/js/translated/stock.js:212
+#: templates/js/translated/stock.js:211
msgid "Move to parent stock location"
msgstr ""
-#: templates/js/translated/stock.js:221
+#: templates/js/translated/stock.js:220
msgid "Delete Stock Location"
msgstr ""
-#: templates/js/translated/stock.js:225
+#: templates/js/translated/stock.js:224
msgid "Action for stock items in this stock location"
msgstr ""
-#: templates/js/translated/stock.js:230
+#: templates/js/translated/stock.js:229
msgid "Action for sub-locations"
msgstr ""
-#: templates/js/translated/stock.js:284
+#: templates/js/translated/stock.js:283
msgid "This part cannot be serialized"
msgstr ""
-#: templates/js/translated/stock.js:320
+#: templates/js/translated/stock.js:319
msgid "Add given quantity as packs instead of individual items"
msgstr ""
-#: templates/js/translated/stock.js:329
+#: templates/js/translated/stock.js:328
msgid "Enter initial quantity for this stock item"
msgstr ""
-#: templates/js/translated/stock.js:335
+#: templates/js/translated/stock.js:334
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:406
+#: templates/js/translated/stock.js:405
msgid "Stock item duplicated"
msgstr ""
-#: templates/js/translated/stock.js:426
+#: templates/js/translated/stock.js:425
msgid "Duplicate Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:442
+#: templates/js/translated/stock.js:441
msgid "Are you sure you want to delete this stock item?"
msgstr ""
-#: templates/js/translated/stock.js:447
+#: templates/js/translated/stock.js:446
msgid "Delete Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:468
+#: templates/js/translated/stock.js:467
msgid "Edit Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:510
+#: templates/js/translated/stock.js:509
msgid "Create another item after this one"
msgstr ""
-#: templates/js/translated/stock.js:522
+#: templates/js/translated/stock.js:521
msgid "Created new stock item"
msgstr ""
-#: templates/js/translated/stock.js:535
+#: templates/js/translated/stock.js:534
msgid "Created multiple stock items"
msgstr ""
-#: templates/js/translated/stock.js:560
+#: templates/js/translated/stock.js:559
msgid "Find Serial Number"
msgstr "Trouver un numéro de série"
-#: templates/js/translated/stock.js:564 templates/js/translated/stock.js:565
+#: templates/js/translated/stock.js:563 templates/js/translated/stock.js:564
msgid "Enter serial number"
msgstr "Entrer le numéro de série"
-#: templates/js/translated/stock.js:581
+#: templates/js/translated/stock.js:580
msgid "Enter a serial number"
msgstr "Entrer un numéro de série"
-#: templates/js/translated/stock.js:601
+#: templates/js/translated/stock.js:600
msgid "No matching serial number"
msgstr "Aucun numéro de série correspondant"
-#: templates/js/translated/stock.js:610
+#: templates/js/translated/stock.js:609
msgid "More than one matching result found"
msgstr "Plus d'un résultat correspondant trouvé"
-#: templates/js/translated/stock.js:718
+#: templates/js/translated/stock.js:717
msgid "Confirm stock assignment"
msgstr "Confirmer l'assignation de stock"
-#: templates/js/translated/stock.js:719
+#: templates/js/translated/stock.js:718
msgid "Assign Stock to Customer"
msgstr "Assigner le stock au client"
-#: templates/js/translated/stock.js:796
+#: templates/js/translated/stock.js:795
msgid "Warning: Merge operation cannot be reversed"
msgstr "Attention : l'opération de fusion est irréversible"
-#: templates/js/translated/stock.js:797
+#: templates/js/translated/stock.js:796
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:799
+#: templates/js/translated/stock.js:798
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:800
+#: templates/js/translated/stock.js:799
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:891
+#: templates/js/translated/stock.js:890
msgid "Confirm stock item merge"
msgstr "Confirmer la fusion de l'article en stock"
-#: templates/js/translated/stock.js:892
+#: templates/js/translated/stock.js:891
msgid "Merge Stock Items"
msgstr "Fusionner les articles en stock"
-#: templates/js/translated/stock.js:987
+#: templates/js/translated/stock.js:986
msgid "Transfer Stock"
msgstr "Transférer le stock"
-#: templates/js/translated/stock.js:988
+#: templates/js/translated/stock.js:987
msgid "Move"
msgstr "Transférer"
-#: templates/js/translated/stock.js:994
+#: templates/js/translated/stock.js:993
msgid "Count Stock"
msgstr "Compter le stock"
-#: templates/js/translated/stock.js:995
+#: templates/js/translated/stock.js:994
msgid "Count"
msgstr "Compter"
-#: templates/js/translated/stock.js:999
+#: templates/js/translated/stock.js:998
msgid "Remove Stock"
msgstr "Supprimer du stock"
-#: templates/js/translated/stock.js:1000
+#: templates/js/translated/stock.js:999
msgid "Take"
msgstr "Supprimer"
-#: templates/js/translated/stock.js:1004
+#: templates/js/translated/stock.js:1003
msgid "Add Stock"
msgstr "Ajouter du stock"
-#: templates/js/translated/stock.js:1005 users/models.py:243
+#: templates/js/translated/stock.js:1004 users/models.py:249
msgid "Add"
msgstr "Ajouter"
-#: templates/js/translated/stock.js:1009
+#: templates/js/translated/stock.js:1008
msgid "Delete Stock"
msgstr "Supprimer le stock"
-#: templates/js/translated/stock.js:1106
+#: templates/js/translated/stock.js:1105
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:1106
+#: templates/js/translated/stock.js:1105
msgid "Specify stock quantity"
msgstr "Spécifiez la quantité du stock"
-#: templates/js/translated/stock.js:1140
+#: templates/js/translated/stock.js:1139 templates/js/translated/stock.js:3151
msgid "Select Stock Items"
msgstr ""
-#: templates/js/translated/stock.js:1141
-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:1140
+msgid "Select at least one available stock item"
+msgstr ""
-#: templates/js/translated/stock.js:1168
+#: templates/js/translated/stock.js:1167
msgid "Confirm stock adjustment"
msgstr ""
-#: templates/js/translated/stock.js:1304
+#: templates/js/translated/stock.js:1303
msgid "PASS"
msgstr "RÉUSSI"
-#: templates/js/translated/stock.js:1306
+#: templates/js/translated/stock.js:1305
msgid "FAIL"
msgstr "ÉCHEC"
-#: templates/js/translated/stock.js:1311
+#: templates/js/translated/stock.js:1310
msgid "NO RESULT"
msgstr "AUCUN RÉSULTAT"
-#: templates/js/translated/stock.js:1373
+#: templates/js/translated/stock.js:1372
msgid "Pass test"
msgstr ""
-#: templates/js/translated/stock.js:1376
+#: templates/js/translated/stock.js:1375
msgid "Add test result"
msgstr "Ajouter un résultat de test"
-#: templates/js/translated/stock.js:1400
+#: templates/js/translated/stock.js:1399
msgid "No test results found"
msgstr "Aucun résultat de test trouvé"
-#: templates/js/translated/stock.js:1464
+#: templates/js/translated/stock.js:1463
msgid "Test Date"
msgstr "Date du test"
-#: templates/js/translated/stock.js:1626
+#: templates/js/translated/stock.js:1625
msgid "Edit Test Result"
msgstr ""
-#: templates/js/translated/stock.js:1648
+#: templates/js/translated/stock.js:1647
msgid "Delete Test Result"
msgstr ""
-#: templates/js/translated/stock.js:1680
+#: templates/js/translated/stock.js:1679
msgid "In production"
msgstr "En production"
-#: templates/js/translated/stock.js:1684
+#: templates/js/translated/stock.js:1683
msgid "Installed in Stock Item"
msgstr "Article en stock installé dans un autre article en stock"
-#: templates/js/translated/stock.js:1692
+#: templates/js/translated/stock.js:1691
msgid "Assigned to Sales Order"
msgstr "Assigné à une commande de vente"
-#: templates/js/translated/stock.js:1698
+#: templates/js/translated/stock.js:1697
msgid "No stock location set"
msgstr "Aucun emplacement de stock défini"
-#: templates/js/translated/stock.js:1746
+#: templates/js/translated/stock.js:1753
+msgid "Change stock status"
+msgstr ""
+
+#: templates/js/translated/stock.js:1762
+msgid "Merge stock"
+msgstr "Fusionner le stock"
+
+#: templates/js/translated/stock.js:1811
+msgid "Delete stock"
+msgstr ""
+
+#: templates/js/translated/stock.js:1866
msgid "stock items"
msgstr ""
-#: templates/js/translated/stock.js:1850
+#: templates/js/translated/stock.js:1871
+msgid "Scan to location"
+msgstr ""
+
+#: templates/js/translated/stock.js:1882
+msgid "Stock Actions"
+msgstr ""
+
+#: templates/js/translated/stock.js:1929
+msgid "Load installed items"
+msgstr ""
+
+#: templates/js/translated/stock.js:2007
msgid "Stock item is in production"
msgstr "L'article de stock est en production"
-#: templates/js/translated/stock.js:1855
+#: templates/js/translated/stock.js:2012
msgid "Stock item assigned to sales order"
msgstr "L'article en stock a été assigné à une commande de vente"
-#: templates/js/translated/stock.js:1858
+#: templates/js/translated/stock.js:2015
msgid "Stock item assigned to customer"
msgstr "L'article en stock a été assigné à un client"
-#: templates/js/translated/stock.js:1861
+#: templates/js/translated/stock.js:2018
msgid "Serialized stock item has been allocated"
msgstr "L'article de stock sérialisé a été alloué"
-#: templates/js/translated/stock.js:1863
+#: templates/js/translated/stock.js:2020
msgid "Stock item has been fully allocated"
msgstr "L'article de stock a été complètement alloué"
-#: templates/js/translated/stock.js:1865
+#: templates/js/translated/stock.js:2022
msgid "Stock item has been partially allocated"
msgstr "L'article de stock a été partiellement alloué"
-#: templates/js/translated/stock.js:1868
+#: templates/js/translated/stock.js:2025
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:1870
+#: templates/js/translated/stock.js:2027
msgid "Stock item has been consumed by a build order"
msgstr ""
-#: templates/js/translated/stock.js:1874
+#: templates/js/translated/stock.js:2031
msgid "Stock item has expired"
msgstr "L'article en stock a expiré"
-#: templates/js/translated/stock.js:1876
+#: templates/js/translated/stock.js:2033
msgid "Stock item will expire soon"
msgstr "L'article en stock va bientôt expirer"
-#: templates/js/translated/stock.js:1881
+#: templates/js/translated/stock.js:2038
msgid "Stock item has been rejected"
msgstr "L'article de stock a été rejeté"
-#: templates/js/translated/stock.js:1883
+#: templates/js/translated/stock.js:2040
msgid "Stock item is lost"
msgstr "L'article de stock est perdu"
-#: templates/js/translated/stock.js:1885
+#: templates/js/translated/stock.js:2042
msgid "Stock item is destroyed"
msgstr "L'article de stock est détruit"
-#: templates/js/translated/stock.js:1889
-#: templates/js/translated/table_filters.js:296
+#: templates/js/translated/stock.js:2046
+#: templates/js/translated/table_filters.js:302
msgid "Depleted"
msgstr "Epuisé"
-#: templates/js/translated/stock.js:2031
+#: templates/js/translated/stock.js:2188
msgid "Supplier part not specified"
msgstr "Pièce de fournisseur non précisée"
-#: templates/js/translated/stock.js:2078
+#: templates/js/translated/stock.js:2235
msgid "Stock Value"
msgstr ""
-#: templates/js/translated/stock.js:2170
+#: templates/js/translated/stock.js:2358
msgid "No stock items matching query"
msgstr "Aucun article de stock ne correspond à la requête"
-#: templates/js/translated/stock.js:2319
+#: templates/js/translated/stock.js:2450
msgid "stock locations"
msgstr ""
-#: templates/js/translated/stock.js:2476
+#: templates/js/translated/stock.js:2607
msgid "Load Subloactions"
msgstr ""
-#: templates/js/translated/stock.js:2583
+#: templates/js/translated/stock.js:2714
msgid "Details"
msgstr "Détails"
-#: templates/js/translated/stock.js:2587
+#: templates/js/translated/stock.js:2718
msgid "No changes"
msgstr ""
-#: templates/js/translated/stock.js:2599
+#: templates/js/translated/stock.js:2730
msgid "Part information unavailable"
msgstr ""
-#: templates/js/translated/stock.js:2621
+#: templates/js/translated/stock.js:2752
msgid "Location no longer exists"
msgstr "L'emplacement n'existe plus"
-#: templates/js/translated/stock.js:2638
+#: templates/js/translated/stock.js:2769
msgid "Build order no longer exists"
msgstr ""
-#: templates/js/translated/stock.js:2653
+#: templates/js/translated/stock.js:2784
msgid "Purchase order no longer exists"
msgstr "La commande d'achat n'existe plus"
-#: templates/js/translated/stock.js:2670
+#: templates/js/translated/stock.js:2801
msgid "Sales Order no longer exists"
msgstr ""
-#: templates/js/translated/stock.js:2687
+#: templates/js/translated/stock.js:2818
msgid "Return Order no longer exists"
msgstr ""
-#: templates/js/translated/stock.js:2706
+#: templates/js/translated/stock.js:2837
msgid "Customer no longer exists"
msgstr "Le client n'existe plus"
-#: templates/js/translated/stock.js:2724
+#: templates/js/translated/stock.js:2855
msgid "Stock item no longer exists"
msgstr "L'article de stock n'existe plus"
-#: templates/js/translated/stock.js:2742
+#: templates/js/translated/stock.js:2873
msgid "Added"
msgstr "Ajouté"
-#: templates/js/translated/stock.js:2750
+#: templates/js/translated/stock.js:2881
msgid "Removed"
msgstr "Supprimé"
-#: templates/js/translated/stock.js:2826
+#: templates/js/translated/stock.js:2953
msgid "No installed items"
msgstr ""
-#: templates/js/translated/stock.js:2876 templates/js/translated/stock.js:2911
+#: templates/js/translated/stock.js:3003 templates/js/translated/stock.js:3038
msgid "Uninstall Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:2929
+#: templates/js/translated/stock.js:3056
msgid "Select stock item to uninstall"
msgstr ""
-#: templates/js/translated/stock.js:2950
+#: templates/js/translated/stock.js:3077
msgid "Install another stock item into this item"
msgstr ""
-#: templates/js/translated/stock.js:2951
+#: templates/js/translated/stock.js:3078
msgid "Stock items can only be installed if they meet the following criteria"
msgstr ""
-#: templates/js/translated/stock.js:2953
+#: templates/js/translated/stock.js:3080
msgid "The Stock Item links to a Part which is the BOM for this Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:2954
+#: templates/js/translated/stock.js:3081
msgid "The Stock Item is currently available in stock"
msgstr ""
-#: templates/js/translated/stock.js:2955
+#: templates/js/translated/stock.js:3082
msgid "The Stock Item is not already installed in another item"
msgstr ""
-#: templates/js/translated/stock.js:2956
+#: templates/js/translated/stock.js:3083
msgid "The Stock Item is tracked by either a batch code or serial number"
msgstr ""
-#: templates/js/translated/stock.js:2969
+#: templates/js/translated/stock.js:3096
msgid "Select part to install"
msgstr ""
+#: templates/js/translated/stock.js:3152
+msgid "Select one or more stock items"
+msgstr ""
+
+#: templates/js/translated/stock.js:3165
+msgid "Selected stock items"
+msgstr ""
+
+#: templates/js/translated/stock.js:3169
+msgid "Change Stock Status"
+msgstr ""
+
#: templates/js/translated/table_filters.js:50
msgid "Has project code"
msgstr ""
-#: templates/js/translated/table_filters.js:59
-#: templates/js/translated/table_filters.js:518
-#: templates/js/translated/table_filters.js:530
-#: templates/js/translated/table_filters.js:571
+#: templates/js/translated/table_filters.js:65
+#: templates/js/translated/table_filters.js:540
+#: templates/js/translated/table_filters.js:552
+#: templates/js/translated/table_filters.js:593
msgid "Order status"
msgstr "État de la commande"
-#: templates/js/translated/table_filters.js:64
-#: templates/js/translated/table_filters.js:535
-#: templates/js/translated/table_filters.js:561
-#: templates/js/translated/table_filters.js:576
+#: templates/js/translated/table_filters.js:70
+#: templates/js/translated/table_filters.js:557
+#: templates/js/translated/table_filters.js:583
+#: templates/js/translated/table_filters.js:598
msgid "Outstanding"
msgstr "En suspens"
-#: templates/js/translated/table_filters.js:72
-#: templates/js/translated/table_filters.js:458
-#: templates/js/translated/table_filters.js:543
-#: templates/js/translated/table_filters.js:584
+#: templates/js/translated/table_filters.js:78
+#: templates/js/translated/table_filters.js:464
+#: templates/js/translated/table_filters.js:565
+#: templates/js/translated/table_filters.js:606
msgid "Assigned to me"
msgstr "Assigné à moi"
-#: templates/js/translated/table_filters.js:128
+#: templates/js/translated/table_filters.js:134
msgid "Trackable Part"
msgstr "Pièce traçable"
-#: templates/js/translated/table_filters.js:132
+#: templates/js/translated/table_filters.js:138
msgid "Assembled Part"
msgstr ""
-#: templates/js/translated/table_filters.js:136
+#: templates/js/translated/table_filters.js:142
msgid "Has Available Stock"
msgstr ""
-#: templates/js/translated/table_filters.js:152
+#: templates/js/translated/table_filters.js:158
msgid "Allow Variant Stock"
msgstr ""
-#: templates/js/translated/table_filters.js:164
-#: templates/js/translated/table_filters.js:692
+#: templates/js/translated/table_filters.js:170
+#: templates/js/translated/table_filters.js:714
msgid "Has Pricing"
msgstr ""
-#: templates/js/translated/table_filters.js:204
-#: templates/js/translated/table_filters.js:291
+#: templates/js/translated/table_filters.js:210
+#: templates/js/translated/table_filters.js:297
msgid "Include sublocations"
msgstr "Inclure les sous-emplacements"
-#: templates/js/translated/table_filters.js:205
+#: templates/js/translated/table_filters.js:211
msgid "Include locations"
msgstr "Inclure les emplacements"
-#: templates/js/translated/table_filters.js:224
-#: templates/js/translated/table_filters.js:225
-#: templates/js/translated/table_filters.js:624
+#: templates/js/translated/table_filters.js:230
+#: templates/js/translated/table_filters.js:231
+#: templates/js/translated/table_filters.js:646
msgid "Include subcategories"
msgstr "Inclure les sous-catégories"
-#: templates/js/translated/table_filters.js:233
-#: templates/js/translated/table_filters.js:672
+#: templates/js/translated/table_filters.js:239
+#: templates/js/translated/table_filters.js:694
msgid "Subscribed"
msgstr ""
-#: templates/js/translated/table_filters.js:244
-#: templates/js/translated/table_filters.js:326
+#: templates/js/translated/table_filters.js:250
+#: templates/js/translated/table_filters.js:332
msgid "Is Serialized"
msgstr "A un numéro de série"
-#: templates/js/translated/table_filters.js:247
-#: templates/js/translated/table_filters.js:333
+#: templates/js/translated/table_filters.js:253
+#: templates/js/translated/table_filters.js:339
msgid "Serial number GTE"
msgstr "Numéro de série PGE"
-#: templates/js/translated/table_filters.js:248
-#: templates/js/translated/table_filters.js:334
+#: templates/js/translated/table_filters.js:254
+#: templates/js/translated/table_filters.js:340
msgid "Serial number greater than or equal to"
msgstr "Numéro de série supérieur ou égal à"
-#: templates/js/translated/table_filters.js:251
-#: templates/js/translated/table_filters.js:337
+#: templates/js/translated/table_filters.js:257
+#: templates/js/translated/table_filters.js:343
msgid "Serial number LTE"
msgstr "Numéro de série PPE"
-#: templates/js/translated/table_filters.js:252
-#: templates/js/translated/table_filters.js:338
+#: templates/js/translated/table_filters.js:258
+#: templates/js/translated/table_filters.js:344
msgid "Serial number less than or equal to"
msgstr "Numéro de série inférieur ou égal à"
-#: templates/js/translated/table_filters.js:255
-#: templates/js/translated/table_filters.js:256
-#: templates/js/translated/table_filters.js:329
-#: templates/js/translated/table_filters.js:330
+#: templates/js/translated/table_filters.js:261
+#: templates/js/translated/table_filters.js:262
+#: templates/js/translated/table_filters.js:335
+#: templates/js/translated/table_filters.js:336
msgid "Serial number"
msgstr "Numéro de série"
-#: templates/js/translated/table_filters.js:260
-#: templates/js/translated/table_filters.js:351
+#: templates/js/translated/table_filters.js:266
+#: templates/js/translated/table_filters.js:357
msgid "Batch code"
msgstr "Code de lot"
-#: templates/js/translated/table_filters.js:271
-#: templates/js/translated/table_filters.js:613
+#: templates/js/translated/table_filters.js:277
+#: templates/js/translated/table_filters.js:635
msgid "Active parts"
msgstr "Pièces actives"
-#: templates/js/translated/table_filters.js:272
+#: templates/js/translated/table_filters.js:278
msgid "Show stock for active parts"
msgstr "Afficher le stock pour les pièces actives"
-#: templates/js/translated/table_filters.js:277
+#: templates/js/translated/table_filters.js:283
msgid "Part is an assembly"
msgstr "La pièce est un assemblage"
-#: templates/js/translated/table_filters.js:281
+#: templates/js/translated/table_filters.js:287
msgid "Is allocated"
msgstr "Est alloué"
-#: templates/js/translated/table_filters.js:282
+#: templates/js/translated/table_filters.js:288
msgid "Item has been allocated"
msgstr "L'élément a été alloué"
-#: templates/js/translated/table_filters.js:287
+#: templates/js/translated/table_filters.js:293
msgid "Stock is available for use"
msgstr "Le stock est disponible pour utilisation"
-#: templates/js/translated/table_filters.js:292
+#: templates/js/translated/table_filters.js:298
msgid "Include stock in sublocations"
msgstr ""
-#: templates/js/translated/table_filters.js:297
+#: templates/js/translated/table_filters.js:303
msgid "Show stock items which are depleted"
msgstr ""
-#: templates/js/translated/table_filters.js:302
+#: templates/js/translated/table_filters.js:308
msgid "Show items which are in stock"
msgstr ""
-#: templates/js/translated/table_filters.js:306
+#: templates/js/translated/table_filters.js:312
msgid "In Production"
msgstr ""
-#: templates/js/translated/table_filters.js:307
+#: templates/js/translated/table_filters.js:313
msgid "Show items which are in production"
msgstr ""
-#: templates/js/translated/table_filters.js:311
+#: templates/js/translated/table_filters.js:317
msgid "Include Variants"
msgstr ""
-#: templates/js/translated/table_filters.js:312
+#: templates/js/translated/table_filters.js:318
msgid "Include stock items for variant parts"
msgstr ""
-#: templates/js/translated/table_filters.js:316
+#: templates/js/translated/table_filters.js:322
msgid "Installed"
msgstr ""
-#: templates/js/translated/table_filters.js:317
+#: templates/js/translated/table_filters.js:323
msgid "Show stock items which are installed in another item"
msgstr "Afficher les articles de stock qui sont installés dans un autre article"
-#: templates/js/translated/table_filters.js:322
+#: templates/js/translated/table_filters.js:328
msgid "Show items which have been assigned to a customer"
msgstr "Afficher les articles qui ont été assignés à un client"
-#: templates/js/translated/table_filters.js:342
-#: templates/js/translated/table_filters.js:343
+#: templates/js/translated/table_filters.js:348
+#: templates/js/translated/table_filters.js:349
msgid "Stock status"
msgstr "État du stock"
-#: templates/js/translated/table_filters.js:346
+#: templates/js/translated/table_filters.js:352
msgid "Has batch code"
msgstr ""
-#: templates/js/translated/table_filters.js:354
-msgid "Tracked"
-msgstr ""
-
-#: templates/js/translated/table_filters.js:355
+#: templates/js/translated/table_filters.js:361
msgid "Stock item is tracked by either batch code or serial number"
msgstr ""
-#: templates/js/translated/table_filters.js:360
+#: templates/js/translated/table_filters.js:366
msgid "Has purchase price"
msgstr "A un prix d'achat"
-#: templates/js/translated/table_filters.js:361
+#: templates/js/translated/table_filters.js:367
msgid "Show stock items which have a purchase price set"
msgstr "Afficher les articles de stock qui ont un prix d'achat défini"
-#: templates/js/translated/table_filters.js:365
+#: templates/js/translated/table_filters.js:371
msgid "Expiry Date before"
msgstr ""
-#: templates/js/translated/table_filters.js:369
+#: templates/js/translated/table_filters.js:375
msgid "Expiry Date after"
msgstr ""
-#: templates/js/translated/table_filters.js:382
+#: templates/js/translated/table_filters.js:388
msgid "Show stock items which have expired"
msgstr "Afficher les articles de stock qui ont expiré"
-#: templates/js/translated/table_filters.js:388
+#: templates/js/translated/table_filters.js:394
msgid "Show stock which is close to expiring"
msgstr "Afficher le stock qui est proche de l'expiration"
-#: templates/js/translated/table_filters.js:402
+#: templates/js/translated/table_filters.js:408
msgid "Test Passed"
msgstr ""
-#: templates/js/translated/table_filters.js:406
+#: templates/js/translated/table_filters.js:412
msgid "Include Installed Items"
msgstr ""
-#: templates/js/translated/table_filters.js:445
+#: templates/js/translated/table_filters.js:451
msgid "Build status"
msgstr "État de la construction"
-#: templates/js/translated/table_filters.js:625
+#: templates/js/translated/table_filters.js:647
msgid "Include parts in subcategories"
msgstr "Inclure les pièces des sous-catégories"
-#: templates/js/translated/table_filters.js:630
+#: templates/js/translated/table_filters.js:652
msgid "Show active parts"
msgstr "Afficher les pièces actives"
-#: templates/js/translated/table_filters.js:638
+#: templates/js/translated/table_filters.js:660
msgid "Available stock"
msgstr ""
-#: templates/js/translated/table_filters.js:646
-#: templates/js/translated/table_filters.js:742
+#: templates/js/translated/table_filters.js:668
+#: templates/js/translated/table_filters.js:764
msgid "Has Units"
msgstr ""
-#: templates/js/translated/table_filters.js:647
+#: templates/js/translated/table_filters.js:669
msgid "Part has defined units"
msgstr ""
-#: templates/js/translated/table_filters.js:651
+#: templates/js/translated/table_filters.js:673
msgid "Has IPN"
msgstr "A un IPN"
-#: templates/js/translated/table_filters.js:652
+#: templates/js/translated/table_filters.js:674
msgid "Part has internal part number"
msgstr "La pièce a un numéro de pièce interne"
-#: templates/js/translated/table_filters.js:656
+#: templates/js/translated/table_filters.js:678
msgid "In stock"
msgstr ""
-#: templates/js/translated/table_filters.js:664
+#: templates/js/translated/table_filters.js:686
msgid "Purchasable"
msgstr "Achetable"
-#: templates/js/translated/table_filters.js:676
+#: templates/js/translated/table_filters.js:698
msgid "Has stocktake entries"
msgstr ""
-#: templates/js/translated/table_filters.js:738
+#: templates/js/translated/table_filters.js:760
msgid "Has Choices"
msgstr ""
@@ -12390,51 +12551,51 @@ msgstr ""
msgid "Select File Format"
msgstr ""
-#: templates/js/translated/tables.js:561
+#: templates/js/translated/tables.js:537
msgid "Loading data"
msgstr "Chargement des données"
-#: templates/js/translated/tables.js:564
+#: templates/js/translated/tables.js:540
msgid "rows per page"
msgstr "résultats par page"
-#: templates/js/translated/tables.js:569
+#: templates/js/translated/tables.js:545
msgid "Showing all rows"
msgstr "Afficher toutes les lignes"
-#: templates/js/translated/tables.js:571
+#: templates/js/translated/tables.js:547
msgid "Showing"
msgstr "Afficher"
-#: templates/js/translated/tables.js:571
+#: templates/js/translated/tables.js:547
msgid "to"
msgstr "à"
-#: templates/js/translated/tables.js:571
+#: templates/js/translated/tables.js:547
msgid "of"
msgstr "de"
-#: templates/js/translated/tables.js:571
+#: templates/js/translated/tables.js:547
msgid "rows"
msgstr "lignes"
-#: templates/js/translated/tables.js:578
+#: templates/js/translated/tables.js:554
msgid "No matching results"
msgstr "Aucun résultat correspondant n'a été trouvé"
-#: templates/js/translated/tables.js:581
+#: templates/js/translated/tables.js:557
msgid "Hide/Show pagination"
msgstr "Masquer/Afficher la pagination"
-#: templates/js/translated/tables.js:587
+#: templates/js/translated/tables.js:563
msgid "Toggle"
msgstr ""
-#: templates/js/translated/tables.js:590
+#: templates/js/translated/tables.js:566
msgid "Columns"
msgstr "Colonnes"
-#: templates/js/translated/tables.js:593
+#: templates/js/translated/tables.js:569
msgid "All"
msgstr "Tout"
@@ -12616,50 +12777,6 @@ msgstr "Paramètres de Messagerie"
msgid "Email settings not configured"
msgstr ""
-#: templates/stock_table.html:17
-msgid "Barcode Actions"
-msgstr ""
-
-#: templates/stock_table.html:28
-msgid "Stock Options"
-msgstr ""
-
-#: templates/stock_table.html:33
-msgid "Add to selected stock items"
-msgstr ""
-
-#: templates/stock_table.html:34
-msgid "Remove from selected stock items"
-msgstr ""
-
-#: templates/stock_table.html:35
-msgid "Stocktake selected stock items"
-msgstr ""
-
-#: templates/stock_table.html:36
-msgid "Move selected stock items"
-msgstr ""
-
-#: templates/stock_table.html:37
-msgid "Merge selected stock items"
-msgstr "Fusionner les éléments de stock sélectionnés"
-
-#: templates/stock_table.html:37
-msgid "Merge stock"
-msgstr "Fusionner le stock"
-
-#: templates/stock_table.html:38
-msgid "Order selected items"
-msgstr "Commander les éléments sélectionnés"
-
-#: templates/stock_table.html:42
-msgid "Delete selected items"
-msgstr "Supprimer les éléments sélectionnés"
-
-#: templates/stock_table.html:42
-msgid "Delete stock"
-msgstr ""
-
#: templates/yesnolabel.html:4
msgid "Yes"
msgstr "Oui"
@@ -12692,35 +12809,35 @@ msgstr "Droits"
msgid "Important dates"
msgstr "Dates importantes"
-#: users/models.py:230
+#: users/models.py:236
msgid "Permission set"
msgstr "Droit défini"
-#: users/models.py:238
+#: users/models.py:244
msgid "Group"
msgstr "Groupe"
-#: users/models.py:241
+#: users/models.py:247
msgid "View"
msgstr "Vue"
-#: users/models.py:241
+#: users/models.py:247
msgid "Permission to view items"
msgstr "Droit de voir des éléments"
-#: users/models.py:243
+#: users/models.py:249
msgid "Permission to add items"
msgstr "Droit d'ajouter des éléments"
-#: users/models.py:245
+#: users/models.py:251
msgid "Change"
msgstr "Modifier"
-#: users/models.py:245
+#: users/models.py:251
msgid "Permissions to edit items"
msgstr "Droit de modifier des élément"
-#: users/models.py:247
+#: users/models.py:253
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 59a6985d94..68fc033a1f 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: 2023-06-09 00:32+0000\n"
-"PO-Revision-Date: 2023-06-09 10:27\n"
+"POT-Creation-Date: 2023-06-20 07:01+0000\n"
+"PO-Revision-Date: 2023-06-20 07:06\n"
"Last-Translator: \n"
"Language-Team: Hebrew\n"
"Language: he_IL\n"
@@ -49,26 +49,26 @@ msgstr ""
msgid "Enter date"
msgstr "הזן תאריך סיום"
-#: InvenTree/fields.py:206 InvenTree/models.py:766 build/serializers.py:427
-#: build/serializers.py:506 build/templates/build/sidebar.html:23
-#: company/models.py:597 company/templates/company/sidebar.html:35
-#: order/models.py:1089 order/templates/order/po_sidebar.html:11
+#: InvenTree/fields.py:206 InvenTree/models.py:766 build/serializers.py:435
+#: build/serializers.py:514 build/templates/build/sidebar.html:21
+#: company/models.py:746 company/templates/company/sidebar.html:37
+#: order/models.py:1102 order/templates/order/po_sidebar.html:11
#: order/templates/order/return_order_sidebar.html:9
#: order/templates/order/so_sidebar.html:17 part/admin.py:41
-#: part/models.py:3005 part/templates/part/part_sidebar.html:63
+#: part/models.py:3039 part/templates/part/part_sidebar.html:63
#: report/templates/report/inventree_build_order_base.html:172
#: stock/admin.py:121 stock/models.py:2160 stock/models.py:2268
-#: stock/serializers.py:342 stock/serializers.py:475 stock/serializers.py:556
-#: stock/serializers.py:839 stock/serializers.py:938 stock/serializers.py:1070
-#: stock/templates/stock/stock_sidebar.html:25
-#: templates/js/translated/barcode.js:143 templates/js/translated/bom.js:1224
-#: templates/js/translated/company.js:1294 templates/js/translated/order.js:347
-#: templates/js/translated/part.js:1054
-#: templates/js/translated/purchase_order.js:2168
-#: templates/js/translated/return_order.js:760
-#: templates/js/translated/sales_order.js:1055
-#: templates/js/translated/sales_order.js:1959
-#: templates/js/translated/stock.js:1460 templates/js/translated/stock.js:2164
+#: stock/serializers.py:408 stock/serializers.py:542 stock/serializers.py:623
+#: stock/serializers.py:681 stock/serializers.py:956 stock/serializers.py:1055
+#: stock/serializers.py:1187 stock/templates/stock/stock_sidebar.html:25
+#: templates/js/translated/barcode.js:143 templates/js/translated/bom.js:1244
+#: templates/js/translated/company.js:1715 templates/js/translated/order.js:347
+#: templates/js/translated/part.js:1053
+#: templates/js/translated/purchase_order.js:2178
+#: templates/js/translated/return_order.js:772
+#: templates/js/translated/sales_order.js:1067
+#: templates/js/translated/sales_order.js:1971
+#: templates/js/translated/stock.js:1459 templates/js/translated/stock.js:2321
msgid "Notes"
msgstr ""
@@ -81,47 +81,51 @@ msgstr ""
msgid "Provided value does not match required pattern: "
msgstr ""
-#: InvenTree/forms.py:145
+#: InvenTree/forms.py:147
msgid "Enter password"
msgstr "הכנס סיסמה"
-#: InvenTree/forms.py:146
+#: InvenTree/forms.py:148
msgid "Enter new password"
msgstr "הכנס סיסמה חדשה"
-#: InvenTree/forms.py:155
+#: InvenTree/forms.py:157
msgid "Confirm password"
msgstr "אישור סיסמה"
-#: InvenTree/forms.py:156
+#: InvenTree/forms.py:158
msgid "Confirm new password"
msgstr "אשר סיסמה חדשה"
-#: InvenTree/forms.py:160
+#: InvenTree/forms.py:162
msgid "Old password"
msgstr ""
-#: InvenTree/forms.py:179
+#: InvenTree/forms.py:181
msgid "Email (again)"
msgstr "אימייל (שנית)"
-#: InvenTree/forms.py:183
+#: InvenTree/forms.py:185
msgid "Email address confirmation"
msgstr "אישור כתובת אימייל"
-#: InvenTree/forms.py:204
+#: InvenTree/forms.py:206
msgid "You must type the same email each time."
msgstr "חובה לרשום את אותו אימייל בכל פעם."
-#: InvenTree/forms.py:230 InvenTree/forms.py:236
+#: InvenTree/forms.py:237 InvenTree/forms.py:243
msgid "The provided primary email address is not valid."
msgstr ""
-#: InvenTree/forms.py:242
+#: InvenTree/forms.py:249
msgid "The provided email domain is not approved."
msgstr ""
-#: InvenTree/helpers.py:462 order/models.py:442 order/models.py:611
+#: InvenTree/forms.py:345
+msgid "Registration is disabled."
+msgstr ""
+
+#: InvenTree/helpers.py:462 order/models.py:455 order/models.py:624
msgid "Invalid quantity provided"
msgstr ""
@@ -239,7 +243,7 @@ msgstr "חסר קישור חיצוני"
#: InvenTree/models.py:486 stock/models.py:2262
#: templates/js/translated/attachment.js:119
-#: templates/js/translated/attachment.js:306
+#: templates/js/translated/attachment.js:316
msgid "Attachment"
msgstr "קובץ מצורף"
@@ -247,29 +251,30 @@ msgstr "קובץ מצורף"
msgid "Select file to attach"
msgstr "בחר קובץ לצירוף"
-#: InvenTree/models.py:493 common/models.py:2695 company/models.py:132
-#: company/models.py:306 company/models.py:584 order/models.py:236
-#: order/models.py:1093 order/models.py:1453 part/admin.py:39
-#: part/models.py:901 part/templates/part/part_scheduling.html:11
+#: InvenTree/models.py:493 common/models.py:2681 company/models.py:128
+#: company/models.py:381 company/models.py:455 company/models.py:733
+#: order/models.py:240 order/models.py:1106 order/models.py:1466
+#: part/admin.py:39 part/models.py:902
+#: part/templates/part/part_scheduling.html:11
#: report/templates/report/inventree_build_order_base.html:164
-#: stock/admin.py:120 templates/js/translated/company.js:977
-#: templates/js/translated/company.js:1283 templates/js/translated/order.js:351
-#: templates/js/translated/part.js:2316
-#: templates/js/translated/purchase_order.js:2008
-#: templates/js/translated/purchase_order.js:2172
-#: templates/js/translated/return_order.js:764
-#: templates/js/translated/sales_order.js:1044
-#: templates/js/translated/sales_order.js:1964
+#: stock/admin.py:120 templates/js/translated/company.js:1350
+#: templates/js/translated/company.js:1704 templates/js/translated/order.js:351
+#: templates/js/translated/part.js:2392
+#: templates/js/translated/purchase_order.js:2018
+#: templates/js/translated/purchase_order.js:2182
+#: templates/js/translated/return_order.js:776
+#: templates/js/translated/sales_order.js:1056
+#: templates/js/translated/sales_order.js:1976
msgid "Link"
msgstr "קישור"
-#: InvenTree/models.py:494 build/models.py:291 part/models.py:902
+#: InvenTree/models.py:494 build/models.py:295 part/models.py:903
#: stock/models.py:735
msgid "Link to external URL"
msgstr "קישור חיצוני"
#: InvenTree/models.py:497 templates/js/translated/attachment.js:120
-#: templates/js/translated/attachment.js:321
+#: templates/js/translated/attachment.js:331
msgid "Comment"
msgstr "הערה"
@@ -277,13 +282,13 @@ msgstr "הערה"
msgid "File comment"
msgstr "הערת קובץ"
-#: InvenTree/models.py:503 InvenTree/models.py:504 common/models.py:2154
-#: common/models.py:2155 common/models.py:2368 common/models.py:2369
-#: common/models.py:2625 common/models.py:2626 part/models.py:3013
-#: part/models.py:3101 part/models.py:3180 part/models.py:3200
-#: plugin/models.py:217 plugin/models.py:218
+#: InvenTree/models.py:503 InvenTree/models.py:504 common/models.py:2140
+#: common/models.py:2141 common/models.py:2354 common/models.py:2355
+#: common/models.py:2611 common/models.py:2612 part/models.py:3047
+#: part/models.py:3135 part/models.py:3214 part/models.py:3234
+#: plugin/models.py:218 plugin/models.py:219
#: report/templates/report/inventree_test_report_base.html:105
-#: templates/js/translated/stock.js:2773
+#: templates/js/translated/stock.js:2904
msgid "User"
msgstr "משתמש"
@@ -324,53 +329,54 @@ msgstr ""
msgid "Invalid choice"
msgstr "בחירה שגויה"
-#: InvenTree/models.py:648 InvenTree/models.py:649 common/models.py:2354
-#: company/models.py:390 label/models.py:103 part/models.py:847
-#: part/models.py:3400 plugin/models.py:41 report/models.py:160
+#: InvenTree/models.py:648 InvenTree/models.py:649 common/models.py:2340
+#: company/models.py:539 label/models.py:111 part/models.py:848
+#: part/models.py:3434 plugin/models.py:42 report/models.py:160
#: templates/InvenTree/settings/mixins/urls.html:13
#: templates/InvenTree/settings/notifications.html:17
-#: templates/InvenTree/settings/plugin.html:80
+#: templates/InvenTree/settings/plugin.html:74
#: templates/InvenTree/settings/plugin_settings.html:22
-#: templates/js/translated/company.js:658
-#: templates/js/translated/company.js:706
-#: templates/js/translated/company.js:871
-#: templates/js/translated/company.js:1071 templates/js/translated/part.js:1160
-#: templates/js/translated/part.js:1447 templates/js/translated/part.js:1583
-#: templates/js/translated/part.js:2699 templates/js/translated/stock.js:2464
+#: templates/js/translated/company.js:665
+#: templates/js/translated/company.js:713
+#: templates/js/translated/company.js:940
+#: templates/js/translated/company.js:1196
+#: templates/js/translated/company.js:1444 templates/js/translated/part.js:1159
+#: templates/js/translated/part.js:1446 templates/js/translated/part.js:1582
+#: templates/js/translated/part.js:2684 templates/js/translated/stock.js:2595
msgid "Name"
msgstr "שם"
-#: InvenTree/models.py:655 build/models.py:164
+#: InvenTree/models.py:655 build/models.py:168
#: build/templates/build/detail.html:24 common/models.py:111
-#: company/models.py:312 company/models.py:590
+#: company/models.py:461 company/models.py:739
#: company/templates/company/company_base.html:72
#: company/templates/company/manufacturer_part.html:75
-#: company/templates/company/supplier_part.html:108 label/models.py:110
-#: order/models.py:232 order/models.py:1117 part/admin.py:194 part/admin.py:276
-#: part/models.py:869 part/models.py:3416 part/templates/part/category.html:81
+#: company/templates/company/supplier_part.html:108 label/models.py:118
+#: order/models.py:232 order/models.py:1130 part/admin.py:194 part/admin.py:276
+#: part/models.py:870 part/models.py:3450 part/templates/part/category.html:81
#: part/templates/part/part_base.html:172
#: part/templates/part/part_scheduling.html:12 report/models.py:173
-#: report/models.py:587 report/models.py:631
+#: report/models.py:589 report/models.py:633
#: report/templates/report/inventree_build_order_base.html:117
#: stock/admin.py:41 stock/templates/stock/location.html:123
#: templates/InvenTree/settings/notifications.html:19
#: templates/InvenTree/settings/plugin_settings.html:27
#: templates/InvenTree/settings/settings_staff_js.html:75
-#: templates/js/translated/bom.js:632 templates/js/translated/bom.js:933
-#: templates/js/translated/build.js:2857 templates/js/translated/company.js:510
-#: templates/js/translated/company.js:988
-#: templates/js/translated/company.js:1251 templates/js/translated/order.js:298
-#: templates/js/translated/part.js:1212 templates/js/translated/part.js:1456
-#: templates/js/translated/part.js:1594 templates/js/translated/part.js:1933
-#: templates/js/translated/part.js:2247 templates/js/translated/part.js:2735
-#: templates/js/translated/part.js:2826
-#: templates/js/translated/purchase_order.js:1666
-#: templates/js/translated/purchase_order.js:1812
-#: templates/js/translated/purchase_order.js:1990
-#: templates/js/translated/return_order.js:302
-#: templates/js/translated/sales_order.js:790
-#: templates/js/translated/stock.js:1439 templates/js/translated/stock.js:1817
-#: templates/js/translated/stock.js:2496 templates/js/translated/stock.js:2568
+#: templates/js/translated/bom.js:633 templates/js/translated/bom.js:951
+#: templates/js/translated/build.js:2062 templates/js/translated/company.js:517
+#: templates/js/translated/company.js:1361
+#: templates/js/translated/company.js:1672 templates/js/translated/index.js:114
+#: templates/js/translated/order.js:298 templates/js/translated/part.js:1211
+#: templates/js/translated/part.js:1455 templates/js/translated/part.js:1593
+#: templates/js/translated/part.js:1932 templates/js/translated/part.js:2323
+#: templates/js/translated/part.js:2720 templates/js/translated/part.js:2811
+#: templates/js/translated/purchase_order.js:1681
+#: templates/js/translated/purchase_order.js:1827
+#: templates/js/translated/purchase_order.js:2000
+#: templates/js/translated/return_order.js:314
+#: templates/js/translated/sales_order.js:802
+#: templates/js/translated/stock.js:1438 templates/js/translated/stock.js:1974
+#: templates/js/translated/stock.js:2627 templates/js/translated/stock.js:2699
msgid "Description"
msgstr "תיאור"
@@ -383,7 +389,7 @@ msgid "parent"
msgstr "מקור"
#: InvenTree/models.py:671 InvenTree/models.py:672
-#: templates/js/translated/part.js:2744 templates/js/translated/stock.js:2505
+#: templates/js/translated/part.js:2729 templates/js/translated/stock.js:2636
msgid "Path"
msgstr ""
@@ -419,12 +425,12 @@ msgstr ""
msgid "An error has been logged by the server."
msgstr ""
-#: InvenTree/serializers.py:60 part/models.py:3897
+#: InvenTree/serializers.py:60 part/models.py:3941
msgid "Must be a valid number"
msgstr "המספר חייב להיות תקין"
-#: InvenTree/serializers.py:90 company/models.py:154
-#: company/templates/company/company_base.html:107 part/models.py:2852
+#: InvenTree/serializers.py:90 company/models.py:150
+#: company/templates/company/company_base.html:107 part/models.py:2886
#: templates/InvenTree/settings/settings_staff_js.html:44
#: templates/currency_data.html:5
msgid "Currency"
@@ -497,130 +503,130 @@ msgstr ""
msgid "Downloading images from remote URL is not enabled"
msgstr ""
-#: InvenTree/settings.py:714
+#: InvenTree/settings.py:741
msgid "Czech"
msgstr ""
-#: InvenTree/settings.py:715
+#: InvenTree/settings.py:742
msgid "Danish"
msgstr ""
-#: InvenTree/settings.py:716
+#: InvenTree/settings.py:743
msgid "German"
msgstr "גרמנית"
-#: InvenTree/settings.py:717
+#: InvenTree/settings.py:744
msgid "Greek"
msgstr "יוונית"
-#: InvenTree/settings.py:718
+#: InvenTree/settings.py:745
msgid "English"
msgstr "אנגלית"
-#: InvenTree/settings.py:719
+#: InvenTree/settings.py:746
msgid "Spanish"
msgstr "ספרדית"
-#: InvenTree/settings.py:720
+#: InvenTree/settings.py:747
msgid "Spanish (Mexican)"
msgstr "ספרדית (מקסיקנית)"
-#: InvenTree/settings.py:721
+#: InvenTree/settings.py:748
msgid "Farsi / Persian"
msgstr ""
-#: InvenTree/settings.py:722
+#: InvenTree/settings.py:749
msgid "Finnish"
msgstr ""
-#: InvenTree/settings.py:723
+#: InvenTree/settings.py:750
msgid "French"
msgstr "צרפתית"
-#: InvenTree/settings.py:724
+#: InvenTree/settings.py:751
msgid "Hebrew"
msgstr "עברית"
-#: InvenTree/settings.py:725
+#: InvenTree/settings.py:752
msgid "Hungarian"
msgstr ""
-#: InvenTree/settings.py:726
+#: InvenTree/settings.py:753
msgid "Italian"
msgstr "איטלקית"
-#: InvenTree/settings.py:727
+#: InvenTree/settings.py:754
msgid "Japanese"
msgstr "יפנית"
-#: InvenTree/settings.py:728
+#: InvenTree/settings.py:755
msgid "Korean"
msgstr "קוריאנית"
-#: InvenTree/settings.py:729
+#: InvenTree/settings.py:756
msgid "Dutch"
msgstr "הולנדית"
-#: InvenTree/settings.py:730
+#: InvenTree/settings.py:757
msgid "Norwegian"
msgstr "נורווגית"
-#: InvenTree/settings.py:731
+#: InvenTree/settings.py:758
msgid "Polish"
msgstr "פולנית"
-#: InvenTree/settings.py:732
+#: InvenTree/settings.py:759
msgid "Portuguese"
msgstr ""
-#: InvenTree/settings.py:733
+#: InvenTree/settings.py:760
msgid "Portuguese (Brazilian)"
msgstr ""
-#: InvenTree/settings.py:734
+#: InvenTree/settings.py:761
msgid "Russian"
msgstr "רוסית"
-#: InvenTree/settings.py:735
+#: InvenTree/settings.py:762
msgid "Slovenian"
msgstr ""
-#: InvenTree/settings.py:736
+#: InvenTree/settings.py:763
msgid "Swedish"
msgstr "שוודית"
-#: InvenTree/settings.py:737
+#: InvenTree/settings.py:764
msgid "Thai"
msgstr "תאילנדית"
-#: InvenTree/settings.py:738
+#: InvenTree/settings.py:765
msgid "Turkish"
msgstr "טורקית"
-#: InvenTree/settings.py:739
+#: InvenTree/settings.py:766
msgid "Vietnamese"
msgstr "ווייטנאמית"
-#: InvenTree/settings.py:740
+#: InvenTree/settings.py:767
msgid "Chinese"
msgstr "סינית"
-#: InvenTree/status.py:61 part/serializers.py:878
+#: InvenTree/status.py:68 part/serializers.py:940
msgid "Background worker check failed"
msgstr ""
-#: InvenTree/status.py:65
+#: InvenTree/status.py:72
msgid "Email backend not configured"
msgstr ""
-#: InvenTree/status.py:68
+#: InvenTree/status.py:75
msgid "InvenTree system health checks failed"
msgstr ""
#: InvenTree/status_codes.py:12 InvenTree/status_codes.py:40
#: InvenTree/status_codes.py:148 InvenTree/status_codes.py:167
#: InvenTree/status_codes.py:188 generic/states/tests.py:16
-#: templates/js/translated/table_filters.js:511
+#: templates/js/translated/table_filters.js:533
msgid "Pending"
msgstr "בהמתנה"
@@ -630,7 +636,7 @@ msgstr "מוקם"
#: InvenTree/status_codes.py:14 InvenTree/status_codes.py:151
#: InvenTree/status_codes.py:172 generic/states/tests.py:18
-#: order/templates/order/order_base.html:162
+#: order/templates/order/order_base.html:158
#: order/templates/order/sales_order_base.html:162
msgid "Complete"
msgstr "הושלם"
@@ -654,10 +660,10 @@ msgstr "הוחזר"
msgid "In Progress"
msgstr ""
-#: InvenTree/status_codes.py:42 order/models.py:1332
-#: templates/js/translated/sales_order.js:1509
-#: templates/js/translated/sales_order.js:1630
-#: templates/js/translated/sales_order.js:1934
+#: InvenTree/status_codes.py:42 order/models.py:1345
+#: templates/js/translated/sales_order.js:1521
+#: templates/js/translated/sales_order.js:1642
+#: templates/js/translated/sales_order.js:1946
msgid "Shipped"
msgstr "נשלח"
@@ -689,7 +695,7 @@ msgstr ""
msgid "Legacy stock tracking entry"
msgstr ""
-#: InvenTree/status_codes.py:93 templates/js/translated/stock.js:511
+#: InvenTree/status_codes.py:93 templates/js/translated/stock.js:510
msgid "Stock item created"
msgstr ""
@@ -745,7 +751,7 @@ msgstr ""
msgid "Split child item"
msgstr ""
-#: InvenTree/status_codes.py:120 templates/js/translated/stock.js:2243
+#: InvenTree/status_codes.py:120 templates/js/translated/stock.js:1769
msgid "Merged stock items"
msgstr ""
@@ -765,7 +771,7 @@ msgstr ""
msgid "Build order output rejected"
msgstr ""
-#: InvenTree/status_codes.py:129 templates/js/translated/stock.js:1676
+#: InvenTree/status_codes.py:129 templates/js/translated/stock.js:1675
msgid "Consumed by build order"
msgstr ""
@@ -781,7 +787,7 @@ msgstr ""
msgid "Returned against Return Order"
msgstr ""
-#: InvenTree/status_codes.py:141 templates/js/translated/table_filters.js:321
+#: InvenTree/status_codes.py:141 templates/js/translated/table_filters.js:327
msgid "Sent to customer"
msgstr "נשלח ללקוח"
@@ -849,83 +855,111 @@ msgstr "הסיסמאות מוכרחות להיות תואמות"
msgid "Wrong password provided"
msgstr ""
-#: InvenTree/views.py:651 templates/navbar.html:157
+#: InvenTree/views.py:653 templates/navbar.html:157
msgid "System Information"
msgstr "מידע אודות המערכת"
-#: InvenTree/views.py:658 templates/navbar.html:168
+#: InvenTree/views.py:660 templates/navbar.html:168
msgid "About InvenTree"
msgstr ""
-#: build/api.py:222
+#: build/api.py:242
msgid "Build must be cancelled before it can be deleted"
msgstr ""
-#: build/models.py:69 build/templates/build/build_base.html:9
+#: build/api.py:286 part/models.py:3833 templates/js/translated/bom.js:985
+#: templates/js/translated/bom.js:1025 templates/js/translated/build.js:2449
+#: templates/js/translated/table_filters.js:166
+#: templates/js/translated/table_filters.js:518
+msgid "Consumable"
+msgstr ""
+
+#: build/api.py:287 part/models.py:3827 part/templates/part/upload_bom.html:58
+#: templates/js/translated/bom.js:989 templates/js/translated/bom.js:1016
+#: templates/js/translated/build.js:2458
+#: templates/js/translated/table_filters.js:162
+#: templates/js/translated/table_filters.js:191
+#: templates/js/translated/table_filters.js:522
+msgid "Optional"
+msgstr ""
+
+#: build/api.py:288 templates/js/translated/table_filters.js:360
+#: templates/js/translated/table_filters.js:514
+msgid "Tracked"
+msgstr ""
+
+#: build/api.py:290 part/admin.py:64 templates/js/translated/build.js:1670
+#: templates/js/translated/build.js:2549
+#: templates/js/translated/sales_order.js:1918
+#: templates/js/translated/table_filters.js:506
+msgid "Allocated"
+msgstr ""
+
+#: build/models.py:73 build/templates/build/build_base.html:9
#: build/templates/build/build_base.html:27
#: report/templates/report/inventree_build_order_base.html:105
#: templates/email/build_order_completed.html:16
#: templates/email/overdue_build_order.html:15
-#: templates/js/translated/build.js:945 templates/js/translated/stock.js:2629
+#: templates/js/translated/build.js:953 templates/js/translated/stock.js:2760
msgid "Build Order"
msgstr ""
-#: build/models.py:70 build/templates/build/build_base.html:13
+#: build/models.py:74 build/templates/build/build_base.html:13
#: build/templates/build/index.html:8 build/templates/build/index.html:12
-#: order/templates/order/sales_order_detail.html:119
+#: order/templates/order/sales_order_detail.html:111
#: order/templates/order/so_sidebar.html:13
-#: part/templates/part/part_sidebar.html:22 templates/InvenTree/index.html:244
+#: part/templates/part/part_sidebar.html:22 templates/InvenTree/index.html:196
#: templates/InvenTree/search.html:141
#: templates/InvenTree/settings/sidebar.html:53
-#: templates/js/translated/search.js:228 users/models.py:42
+#: templates/js/translated/search.js:186 users/models.py:42
msgid "Build Orders"
msgstr ""
-#: build/models.py:111
+#: build/models.py:115
msgid "Invalid choice for parent build"
msgstr ""
-#: build/models.py:155
+#: build/models.py:159
msgid "Build Order Reference"
msgstr ""
-#: build/models.py:156 order/models.py:359 order/models.py:765
-#: order/models.py:1087 order/models.py:1724 part/admin.py:278
-#: part/models.py:3798 part/templates/part/upload_bom.html:54
+#: build/models.py:160 order/models.py:372 order/models.py:778
+#: order/models.py:1100 order/models.py:1737 part/admin.py:278
+#: part/models.py:3842 part/templates/part/upload_bom.html:54
#: report/templates/report/inventree_bill_of_materials_report.html:139
#: report/templates/report/inventree_po_report_base.html:28
#: report/templates/report/inventree_return_order_report_base.html:26
#: report/templates/report/inventree_so_report_base.html:28
-#: templates/js/translated/bom.js:769 templates/js/translated/bom.js:943
-#: templates/js/translated/build.js:2098 templates/js/translated/order.js:291
+#: templates/js/translated/bom.js:770 templates/js/translated/bom.js:961
+#: templates/js/translated/build.js:2441 templates/js/translated/order.js:291
#: templates/js/translated/pricing.js:386
-#: templates/js/translated/purchase_order.js:2033
-#: templates/js/translated/return_order.js:713
-#: templates/js/translated/sales_order.js:1798
+#: templates/js/translated/purchase_order.js:2043
+#: templates/js/translated/return_order.js:725
+#: templates/js/translated/sales_order.js:1810
msgid "Reference"
msgstr "מקט"
-#: build/models.py:167
+#: build/models.py:171
msgid "Brief description of the build (optional)"
msgstr ""
-#: build/models.py:175 build/templates/build/build_base.html:183
+#: build/models.py:179 build/templates/build/build_base.html:184
#: build/templates/build/detail.html:87
msgid "Parent Build"
msgstr "מקור הבנייה"
-#: build/models.py:176
+#: build/models.py:180
msgid "BuildOrder to which this build is allocated"
msgstr ""
-#: build/models.py:181 build/templates/build/build_base.html:98
-#: build/templates/build/detail.html:29 company/models.py:775
-#: order/models.py:1195 order/models.py:1311 order/models.py:1312
-#: part/models.py:391 part/models.py:2865 part/models.py:2979
-#: part/models.py:3119 part/models.py:3138 part/models.py:3157
-#: part/models.py:3178 part/models.py:3270 part/models.py:3555
-#: part/models.py:3663 part/models.py:3763 part/models.py:4077
-#: part/serializers.py:842 part/serializers.py:1245
+#: build/models.py:185 build/templates/build/build_base.html:98
+#: build/templates/build/detail.html:29 company/models.py:924
+#: order/models.py:1208 order/models.py:1324 order/models.py:1325
+#: part/models.py:392 part/models.py:2899 part/models.py:3013
+#: part/models.py:3153 part/models.py:3172 part/models.py:3191
+#: part/models.py:3212 part/models.py:3304 part/models.py:3589
+#: part/models.py:3712 part/models.py:3807 part/models.py:4121
+#: part/serializers.py:904 part/serializers.py:1307
#: part/templates/part/part_app_base.html:8
#: part/templates/part/part_pricing.html:12
#: part/templates/part/upload_bom.html:52
@@ -935,266 +969,229 @@ msgstr ""
#: report/templates/report/inventree_po_report_base.html:27
#: report/templates/report/inventree_return_order_report_base.html:24
#: report/templates/report/inventree_so_report_base.html:27
-#: stock/serializers.py:156 stock/serializers.py:509
+#: stock/serializers.py:205 stock/serializers.py:576
#: templates/InvenTree/search.html:82
#: templates/email/build_order_completed.html:17
#: templates/email/build_order_required_stock.html:17
#: templates/email/low_stock_notification.html:15
#: templates/email/overdue_build_order.html:16
-#: templates/js/translated/barcode.js:529 templates/js/translated/bom.js:631
-#: templates/js/translated/bom.js:768 templates/js/translated/bom.js:887
-#: templates/js/translated/build.js:1403 templates/js/translated/build.js:1965
-#: templates/js/translated/build.js:2464 templates/js/translated/build.js:2868
-#: templates/js/translated/company.js:337
-#: templates/js/translated/company.js:822
-#: templates/js/translated/company.js:929
-#: templates/js/translated/company.js:1169 templates/js/translated/part.js:1918
-#: templates/js/translated/part.js:1990 templates/js/translated/part.js:2216
-#: templates/js/translated/pricing.js:369
-#: templates/js/translated/purchase_order.js:746
-#: templates/js/translated/purchase_order.js:1274
-#: templates/js/translated/purchase_order.js:1811
-#: templates/js/translated/purchase_order.js:1975
-#: templates/js/translated/return_order.js:527
-#: templates/js/translated/return_order.js:694
-#: templates/js/translated/sales_order.js:285
-#: templates/js/translated/sales_order.js:1185
-#: templates/js/translated/sales_order.js:1584
-#: templates/js/translated/sales_order.js:1782
-#: templates/js/translated/stock.js:643 templates/js/translated/stock.js:809
-#: templates/js/translated/stock.js:1021 templates/js/translated/stock.js:1773
-#: templates/js/translated/stock.js:2594 templates/js/translated/stock.js:2831
-#: templates/js/translated/stock.js:2968
+#: templates/js/translated/barcode.js:529 templates/js/translated/bom.js:632
+#: templates/js/translated/bom.js:769 templates/js/translated/bom.js:905
+#: templates/js/translated/build.js:1289 templates/js/translated/build.js:1669
+#: templates/js/translated/build.js:2085 templates/js/translated/build.js:2261
+#: templates/js/translated/company.js:347
+#: templates/js/translated/company.js:1147
+#: templates/js/translated/company.js:1302
+#: templates/js/translated/company.js:1590 templates/js/translated/index.js:104
+#: templates/js/translated/part.js:1917 templates/js/translated/part.js:1989
+#: templates/js/translated/part.js:2292 templates/js/translated/pricing.js:369
+#: templates/js/translated/purchase_order.js:757
+#: templates/js/translated/purchase_order.js:1289
+#: templates/js/translated/purchase_order.js:1826
+#: templates/js/translated/purchase_order.js:1985
+#: templates/js/translated/return_order.js:539
+#: templates/js/translated/return_order.js:706
+#: templates/js/translated/sales_order.js:297
+#: templates/js/translated/sales_order.js:1197
+#: templates/js/translated/sales_order.js:1596
+#: templates/js/translated/sales_order.js:1794
+#: templates/js/translated/stock.js:642 templates/js/translated/stock.js:808
+#: templates/js/translated/stock.js:1020 templates/js/translated/stock.js:1913
+#: templates/js/translated/stock.js:2725 templates/js/translated/stock.js:2958
+#: templates/js/translated/stock.js:3095
msgid "Part"
msgstr "רכיב"
-#: build/models.py:189
+#: build/models.py:193
msgid "Select part to build"
msgstr "בחר רכיב לבנייה"
-#: build/models.py:194
+#: build/models.py:198
msgid "Sales Order Reference"
msgstr ""
-#: build/models.py:198
+#: build/models.py:202
msgid "SalesOrder to which this build is allocated"
msgstr ""
-#: build/models.py:203 build/serializers.py:942
-#: templates/js/translated/build.js:2452
-#: templates/js/translated/sales_order.js:1173
+#: build/models.py:207 build/serializers.py:946
+#: templates/js/translated/build.js:1657
+#: templates/js/translated/sales_order.js:1185
msgid "Source Location"
msgstr ""
-#: build/models.py:207
+#: build/models.py:211
msgid "Select location to take stock from for this build (leave blank to take from any stock location)"
msgstr ""
-#: build/models.py:212
+#: build/models.py:216
msgid "Destination Location"
msgstr ""
-#: build/models.py:216
+#: build/models.py:220
msgid "Select location where the completed items will be stored"
msgstr ""
-#: build/models.py:220
+#: build/models.py:224
msgid "Build Quantity"
msgstr "כמות בניה"
-#: build/models.py:223
+#: build/models.py:227
msgid "Number of stock items to build"
msgstr ""
-#: build/models.py:227
+#: build/models.py:231
msgid "Completed items"
msgstr ""
-#: build/models.py:229
+#: build/models.py:233
msgid "Number of stock items which have been completed"
msgstr ""
-#: build/models.py:233
+#: build/models.py:237
msgid "Build Status"
msgstr ""
-#: build/models.py:237
+#: build/models.py:241
msgid "Build status code"
msgstr ""
-#: build/models.py:246 build/serializers.py:269 order/serializers.py:506
-#: stock/models.py:739 templates/js/translated/purchase_order.js:1099
+#: build/models.py:250 build/serializers.py:277 order/serializers.py:512
+#: stock/models.py:739 templates/js/translated/purchase_order.js:1114
msgid "Batch Code"
msgstr ""
-#: build/models.py:250 build/serializers.py:270
+#: build/models.py:254 build/serializers.py:278
msgid "Batch code for this build output"
msgstr ""
-#: build/models.py:253 order/models.py:244 part/models.py:1038
+#: build/models.py:257 order/models.py:248 part/models.py:1039
#: part/templates/part/part_base.html:312
-#: templates/js/translated/return_order.js:327
-#: templates/js/translated/sales_order.js:815
+#: templates/js/translated/return_order.js:339
+#: templates/js/translated/sales_order.js:827
msgid "Creation Date"
msgstr ""
-#: build/models.py:257
+#: build/models.py:261
msgid "Target completion date"
msgstr ""
-#: build/models.py:258
+#: build/models.py:262
msgid "Target date for build completion. Build will be overdue after this date."
msgstr ""
-#: build/models.py:261 order/models.py:409 order/models.py:1767
-#: templates/js/translated/build.js:2953
+#: build/models.py:265 order/models.py:422 order/models.py:1780
+#: templates/js/translated/build.js:2170
msgid "Completion Date"
msgstr ""
-#: build/models.py:267
+#: build/models.py:271
msgid "completed by"
msgstr ""
-#: build/models.py:275 templates/js/translated/build.js:2913
+#: build/models.py:279 templates/js/translated/build.js:2130
msgid "Issued by"
msgstr ""
-#: build/models.py:276
+#: build/models.py:280
msgid "User who issued this build order"
msgstr ""
-#: build/models.py:284 build/templates/build/build_base.html:204
-#: build/templates/build/detail.html:122 order/models.py:258
-#: order/templates/order/order_base.html:214
-#: order/templates/order/return_order_base.html:182
-#: order/templates/order/sales_order_base.html:222 part/models.py:1042
+#: build/models.py:288 build/templates/build/build_base.html:205
+#: build/templates/build/detail.html:122 order/models.py:262
+#: order/templates/order/order_base.html:217
+#: order/templates/order/return_order_base.html:189
+#: order/templates/order/sales_order_base.html:229 part/models.py:1043
#: part/templates/part/part_base.html:392
#: report/templates/report/inventree_build_order_base.html:158
-#: templates/js/translated/build.js:2925
-#: templates/js/translated/purchase_order.js:1723
-#: templates/js/translated/return_order.js:347
-#: templates/js/translated/table_filters.js:461
+#: templates/js/translated/build.js:2142
+#: templates/js/translated/purchase_order.js:1738
+#: templates/js/translated/return_order.js:359
+#: templates/js/translated/table_filters.js:467
msgid "Responsible"
msgstr ""
-#: build/models.py:285
+#: build/models.py:289
msgid "User or group responsible for this build order"
msgstr ""
-#: build/models.py:290 build/templates/build/detail.html:108
+#: build/models.py:294 build/templates/build/detail.html:108
#: company/templates/company/manufacturer_part.html:107
#: company/templates/company/supplier_part.html:195
-#: order/templates/order/order_base.html:171
+#: order/templates/order/order_base.html:167
#: order/templates/order/return_order_base.html:146
#: order/templates/order/sales_order_base.html:181
#: part/templates/part/part_base.html:385 stock/models.py:733
#: stock/templates/stock/item_base.html:201
+#: templates/js/translated/company.js:1050
msgid "External Link"
msgstr ""
-#: build/models.py:295
+#: build/models.py:299
msgid "Build Priority"
msgstr ""
-#: build/models.py:298
+#: build/models.py:302
msgid "Priority of this build order"
msgstr ""
-#: build/models.py:536
+#: build/models.py:309 common/models.py:104 order/admin.py:17
+#: order/models.py:237 templates/InvenTree/settings/settings_staff_js.html:70
+#: templates/js/translated/build.js:2067
+#: templates/js/translated/purchase_order.js:1685
+#: templates/js/translated/return_order.js:318
+#: templates/js/translated/sales_order.js:806
+#: templates/js/translated/table_filters.js:24
+#: templates/project_code_data.html:6
+msgid "Project Code"
+msgstr ""
+
+#: build/models.py:310
+msgid "Project code for this build order"
+msgstr ""
+
+#: build/models.py:545
#, python-brace-format
msgid "Build order {build} has been completed"
msgstr ""
-#: build/models.py:542
+#: build/models.py:551
msgid "A build order has been completed"
msgstr ""
-#: build/models.py:744 build/models.py:811
+#: build/models.py:753 build/models.py:831
msgid "No build output specified"
msgstr ""
-#: build/models.py:747
+#: build/models.py:756
msgid "Build output is already completed"
msgstr ""
-#: build/models.py:750
+#: build/models.py:759
msgid "Build output does not match Build Order"
msgstr ""
-#: build/models.py:815 build/serializers.py:212 build/serializers.py:251
-#: build/serializers.py:811 order/models.py:440 order/serializers.py:379
-#: order/serializers.py:501 part/serializers.py:1087 part/serializers.py:1408
-#: stock/models.py:593 stock/models.py:1387 stock/serializers.py:315
+#: build/models.py:835 build/serializers.py:220 build/serializers.py:259
+#: build/serializers.py:819 order/models.py:453 order/serializers.py:385
+#: order/serializers.py:507 part/serializers.py:1149 part/serializers.py:1470
+#: stock/models.py:593 stock/models.py:1387 stock/serializers.py:381
msgid "Quantity must be greater than zero"
msgstr ""
-#: build/models.py:820 build/serializers.py:217
+#: build/models.py:840 build/serializers.py:225
msgid "Quantity cannot be greater than the output quantity"
msgstr ""
-#: build/models.py:1272
-msgid "Build item must specify a build output, as master part is marked as trackable"
+#: build/models.py:1260
+msgid "Build object"
msgstr ""
-#: build/models.py:1281
-#, python-brace-format
-msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})"
-msgstr ""
-
-#: build/models.py:1291 order/models.py:1601
-msgid "Stock item is over-allocated"
-msgstr ""
-
-#: build/models.py:1297 order/models.py:1604
-msgid "Allocation quantity must be greater than zero"
-msgstr ""
-
-#: build/models.py:1303
-msgid "Quantity must be 1 for serialized stock"
-msgstr ""
-
-#: build/models.py:1360
-msgid "Selected stock item not found in BOM"
-msgstr ""
-
-#: build/models.py:1438 stock/templates/stock/item_base.html:170
-#: templates/InvenTree/search.html:139 templates/js/translated/build.js:2841
-#: templates/navbar.html:38
-msgid "Build"
-msgstr ""
-
-#: build/models.py:1439
-msgid "Build to allocate parts"
-msgstr ""
-
-#: build/models.py:1455 build/serializers.py:791 order/serializers.py:1059
-#: order/serializers.py:1080 stock/serializers.py:413 stock/serializers.py:770
-#: stock/serializers.py:896 stock/templates/stock/item_base.html:10
-#: stock/templates/stock/item_base.html:23
-#: stock/templates/stock/item_base.html:195
-#: templates/js/translated/build.js:955 templates/js/translated/build.js:960
-#: templates/js/translated/build.js:2466 templates/js/translated/build.js:3038
-#: templates/js/translated/sales_order.js:286
-#: templates/js/translated/sales_order.js:1186
-#: templates/js/translated/sales_order.js:1485
-#: templates/js/translated/sales_order.js:1490
-#: templates/js/translated/sales_order.js:1591
-#: templates/js/translated/sales_order.js:1678
-#: templates/js/translated/stock.js:644 templates/js/translated/stock.js:810
-#: templates/js/translated/stock.js:2714
-msgid "Stock Item"
-msgstr ""
-
-#: build/models.py:1456
-msgid "Source stock item"
-msgstr ""
-
-#: build/models.py:1468 build/serializers.py:198 build/serializers.py:236
-#: build/templates/build/build_base.html:103
-#: build/templates/build/detail.html:34 common/models.py:2176
-#: order/models.py:1073 order/models.py:1645 order/serializers.py:1233
+#: build/models.py:1274 build/models.py:1556 build/serializers.py:206
+#: build/serializers.py:244 build/templates/build/build_base.html:103
+#: build/templates/build/detail.html:34 common/models.py:2162
+#: order/models.py:1086 order/models.py:1658 order/serializers.py:1239
#: order/templates/order/order_wizard/match_parts.html:30 part/admin.py:277
-#: part/forms.py:47 part/models.py:2992 part/models.py:3779
+#: part/forms.py:47 part/models.py:3026 part/models.py:3823
#: part/templates/part/part_pricing.html:16
#: part/templates/part/upload_bom.html:53
#: report/templates/report/inventree_bill_of_materials_report.html:138
@@ -1203,315 +1200,367 @@ msgstr ""
#: report/templates/report/inventree_so_report_base.html:29
#: report/templates/report/inventree_test_report_base.html:90
#: report/templates/report/inventree_test_report_base.html:170
-#: stock/admin.py:103 stock/serializers.py:306
+#: stock/admin.py:103 stock/serializers.py:372
#: stock/templates/stock/item_base.html:288
#: stock/templates/stock/item_base.html:296
#: stock/templates/stock/item_base.html:343
#: templates/email/build_order_completed.html:18
-#: templates/js/translated/barcode.js:531 templates/js/translated/bom.js:770
-#: templates/js/translated/bom.js:951 templates/js/translated/build.js:504
-#: templates/js/translated/build.js:716 templates/js/translated/build.js:982
-#: templates/js/translated/build.js:1425 templates/js/translated/build.js:1991
-#: templates/js/translated/build.js:2467
-#: templates/js/translated/company.js:1428
-#: templates/js/translated/model_renderers.js:207
-#: templates/js/translated/order.js:304 templates/js/translated/part.js:935
-#: templates/js/translated/part.js:1784 templates/js/translated/part.js:3263
+#: templates/js/translated/barcode.js:531 templates/js/translated/bom.js:771
+#: templates/js/translated/bom.js:969 templates/js/translated/build.js:510
+#: templates/js/translated/build.js:722 templates/js/translated/build.js:1308
+#: templates/js/translated/build.js:1672 templates/js/translated/build.js:2283
+#: templates/js/translated/company.js:1849
+#: templates/js/translated/model_renderers.js:221
+#: templates/js/translated/order.js:304 templates/js/translated/part.js:934
+#: templates/js/translated/part.js:1783 templates/js/translated/part.js:3248
#: templates/js/translated/pricing.js:381
#: templates/js/translated/pricing.js:474
#: templates/js/translated/pricing.js:522
#: templates/js/translated/pricing.js:616
-#: templates/js/translated/purchase_order.js:749
-#: templates/js/translated/purchase_order.js:1815
-#: templates/js/translated/purchase_order.js:2039
-#: templates/js/translated/sales_order.js:302
-#: templates/js/translated/sales_order.js:1187
-#: templates/js/translated/sales_order.js:1504
-#: templates/js/translated/sales_order.js:1594
-#: templates/js/translated/sales_order.js:1684
-#: templates/js/translated/sales_order.js:1804
-#: templates/js/translated/stock.js:531 templates/js/translated/stock.js:669
-#: templates/js/translated/stock.js:840 templates/js/translated/stock.js:2758
-#: templates/js/translated/stock.js:2843
+#: templates/js/translated/purchase_order.js:760
+#: templates/js/translated/purchase_order.js:1830
+#: templates/js/translated/purchase_order.js:2049
+#: templates/js/translated/sales_order.js:314
+#: templates/js/translated/sales_order.js:1199
+#: templates/js/translated/sales_order.js:1516
+#: templates/js/translated/sales_order.js:1606
+#: templates/js/translated/sales_order.js:1696
+#: templates/js/translated/sales_order.js:1816
+#: templates/js/translated/stock.js:530 templates/js/translated/stock.js:668
+#: templates/js/translated/stock.js:839 templates/js/translated/stock.js:2889
+#: templates/js/translated/stock.js:2970
msgid "Quantity"
msgstr "כמות"
-#: build/models.py:1469
+#: build/models.py:1275
+msgid "Required quantity for build order"
+msgstr ""
+
+#: build/models.py:1357
+msgid "Build item must specify a build output, as master part is marked as trackable"
+msgstr ""
+
+#: build/models.py:1366
+#, python-brace-format
+msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})"
+msgstr ""
+
+#: build/models.py:1376 order/models.py:1614
+msgid "Stock item is over-allocated"
+msgstr ""
+
+#: build/models.py:1382 order/models.py:1617
+msgid "Allocation quantity must be greater than zero"
+msgstr ""
+
+#: build/models.py:1388
+msgid "Quantity must be 1 for serialized stock"
+msgstr ""
+
+#: build/models.py:1449
+msgid "Selected stock item does not match BOM line"
+msgstr ""
+
+#: build/models.py:1543 build/serializers.py:799 order/serializers.py:1065
+#: order/serializers.py:1086 stock/serializers.py:479 stock/serializers.py:887
+#: stock/serializers.py:1013 stock/templates/stock/item_base.html:10
+#: stock/templates/stock/item_base.html:23
+#: stock/templates/stock/item_base.html:195
+#: templates/js/translated/build.js:1671
+#: templates/js/translated/sales_order.js:298
+#: templates/js/translated/sales_order.js:1198
+#: templates/js/translated/sales_order.js:1497
+#: templates/js/translated/sales_order.js:1502
+#: templates/js/translated/sales_order.js:1603
+#: templates/js/translated/sales_order.js:1690
+#: templates/js/translated/stock.js:643 templates/js/translated/stock.js:809
+#: templates/js/translated/stock.js:2845
+msgid "Stock Item"
+msgstr ""
+
+#: build/models.py:1544
+msgid "Source stock item"
+msgstr ""
+
+#: build/models.py:1557
msgid "Stock quantity to allocate to build"
msgstr ""
-#: build/models.py:1477
+#: build/models.py:1565
msgid "Install into"
msgstr ""
-#: build/models.py:1478
+#: build/models.py:1566
msgid "Destination stock item"
msgstr ""
-#: build/serializers.py:148 build/serializers.py:820
-#: templates/js/translated/build.js:1413
+#: build/serializers.py:156 build/serializers.py:828
+#: templates/js/translated/build.js:1299
msgid "Build Output"
msgstr ""
-#: build/serializers.py:160
+#: build/serializers.py:168
msgid "Build output does not match the parent build"
msgstr ""
-#: build/serializers.py:164
+#: build/serializers.py:172
msgid "Output part does not match BuildOrder part"
msgstr ""
-#: build/serializers.py:168
+#: build/serializers.py:176
msgid "This build output has already been completed"
msgstr ""
-#: build/serializers.py:179
+#: build/serializers.py:187
msgid "This build output is not fully allocated"
msgstr ""
-#: build/serializers.py:199 build/serializers.py:237
+#: build/serializers.py:207 build/serializers.py:245
msgid "Enter quantity for build output"
msgstr ""
-#: build/serializers.py:258
+#: build/serializers.py:266
msgid "Integer quantity required for trackable parts"
msgstr ""
-#: build/serializers.py:261
+#: build/serializers.py:269
msgid "Integer quantity required, as the bill of materials contains trackable parts"
msgstr ""
-#: build/serializers.py:276 order/serializers.py:514 order/serializers.py:1237
-#: stock/serializers.py:324 templates/js/translated/purchase_order.js:1123
-#: templates/js/translated/stock.js:334 templates/js/translated/stock.js:532
+#: build/serializers.py:284 order/serializers.py:520 order/serializers.py:1243
+#: stock/serializers.py:390 templates/js/translated/purchase_order.js:1138
+#: templates/js/translated/stock.js:333 templates/js/translated/stock.js:531
msgid "Serial Numbers"
msgstr "מספרים סידוריים"
-#: build/serializers.py:277
+#: build/serializers.py:285
msgid "Enter serial numbers for build outputs"
msgstr ""
-#: build/serializers.py:290
+#: build/serializers.py:298
msgid "Auto Allocate Serial Numbers"
msgstr ""
-#: build/serializers.py:291
+#: build/serializers.py:299
msgid "Automatically allocate required items with matching serial numbers"
msgstr ""
-#: build/serializers.py:326 stock/api.py:670
+#: build/serializers.py:334 stock/api.py:707
msgid "The following serial numbers already exist or are invalid"
msgstr ""
-#: build/serializers.py:377 build/serializers.py:439 build/serializers.py:518
+#: build/serializers.py:385 build/serializers.py:447 build/serializers.py:526
msgid "A list of build outputs must be provided"
msgstr ""
-#: build/serializers.py:415 build/serializers.py:488 order/serializers.py:487
-#: order/serializers.py:606 order/serializers.py:1588 part/serializers.py:854
-#: stock/serializers.py:335 stock/serializers.py:470 stock/serializers.py:551
-#: stock/serializers.py:931 stock/serializers.py:1173
+#: build/serializers.py:423 build/serializers.py:496 order/serializers.py:493
+#: order/serializers.py:612 order/serializers.py:1594 part/serializers.py:916
+#: stock/serializers.py:401 stock/serializers.py:537 stock/serializers.py:618
+#: stock/serializers.py:1048 stock/serializers.py:1290
#: stock/templates/stock/item_base.html:390
#: templates/js/translated/barcode.js:530
-#: templates/js/translated/barcode.js:778 templates/js/translated/build.js:967
-#: templates/js/translated/build.js:2006
-#: templates/js/translated/purchase_order.js:1148
-#: templates/js/translated/purchase_order.js:1238
-#: templates/js/translated/sales_order.js:1497
-#: templates/js/translated/sales_order.js:1605
-#: templates/js/translated/sales_order.js:1613
-#: templates/js/translated/sales_order.js:1692
-#: templates/js/translated/stock.js:645 templates/js/translated/stock.js:811
-#: templates/js/translated/stock.js:1023 templates/js/translated/stock.js:1937
-#: templates/js/translated/stock.js:2608
+#: templates/js/translated/barcode.js:778 templates/js/translated/build.js:980
+#: templates/js/translated/build.js:2298
+#: templates/js/translated/purchase_order.js:1163
+#: templates/js/translated/purchase_order.js:1253
+#: templates/js/translated/sales_order.js:1509
+#: templates/js/translated/sales_order.js:1617
+#: templates/js/translated/sales_order.js:1625
+#: templates/js/translated/sales_order.js:1704
+#: templates/js/translated/stock.js:644 templates/js/translated/stock.js:810
+#: templates/js/translated/stock.js:1022 templates/js/translated/stock.js:2094
+#: templates/js/translated/stock.js:2739
msgid "Location"
msgstr ""
-#: build/serializers.py:416
+#: build/serializers.py:424
msgid "Stock location for scrapped outputs"
msgstr ""
-#: build/serializers.py:422
+#: build/serializers.py:430
msgid "Discard Allocations"
msgstr ""
-#: build/serializers.py:423
+#: build/serializers.py:431
msgid "Discard any stock allocations for scrapped outputs"
msgstr ""
-#: build/serializers.py:428
+#: build/serializers.py:436
msgid "Reason for scrapping build output(s)"
msgstr ""
-#: build/serializers.py:489
+#: build/serializers.py:497
msgid "Location for completed build outputs"
msgstr ""
-#: build/serializers.py:495 build/templates/build/build_base.html:151
-#: build/templates/build/detail.html:62 order/models.py:791
-#: order/models.py:1750 order/serializers.py:524 stock/admin.py:106
-#: stock/templates/stock/item_base.html:423
-#: templates/js/translated/barcode.js:252 templates/js/translated/build.js:2897
-#: templates/js/translated/purchase_order.js:1278
-#: templates/js/translated/purchase_order.js:1682
-#: templates/js/translated/return_order.js:319
-#: templates/js/translated/sales_order.js:807
-#: templates/js/translated/stock.js:1912 templates/js/translated/stock.js:2732
-#: templates/js/translated/stock.js:2859
+#: build/serializers.py:503 build/templates/build/build_base.html:152
+#: build/templates/build/detail.html:62 order/models.py:804
+#: order/models.py:1763 order/serializers.py:530 stock/admin.py:106
+#: stock/serializers.py:677 stock/templates/stock/item_base.html:423
+#: templates/js/translated/barcode.js:252 templates/js/translated/build.js:2114
+#: templates/js/translated/purchase_order.js:1293
+#: templates/js/translated/purchase_order.js:1697
+#: templates/js/translated/return_order.js:331
+#: templates/js/translated/sales_order.js:819
+#: templates/js/translated/stock.js:2069 templates/js/translated/stock.js:2863
+#: templates/js/translated/stock.js:2986
msgid "Status"
msgstr ""
-#: build/serializers.py:501
+#: build/serializers.py:509
msgid "Accept Incomplete Allocation"
msgstr ""
-#: build/serializers.py:502
+#: build/serializers.py:510
msgid "Complete outputs if stock has not been fully allocated"
msgstr ""
-#: build/serializers.py:571
+#: build/serializers.py:579
msgid "Remove Allocated Stock"
msgstr ""
-#: build/serializers.py:572
+#: build/serializers.py:580
msgid "Subtract any stock which has already been allocated to this build"
msgstr ""
-#: build/serializers.py:578
+#: build/serializers.py:586
msgid "Remove Incomplete Outputs"
msgstr ""
-#: build/serializers.py:579
+#: build/serializers.py:587
msgid "Delete any build outputs which have not been completed"
msgstr ""
-#: build/serializers.py:606
+#: build/serializers.py:614
msgid "Not permitted"
msgstr ""
-#: build/serializers.py:607
+#: build/serializers.py:615
msgid "Accept as consumed by this build order"
msgstr ""
-#: build/serializers.py:608
+#: build/serializers.py:616
msgid "Deallocate before completing this build order"
msgstr ""
-#: build/serializers.py:631
+#: build/serializers.py:639
msgid "Overallocated Stock"
msgstr ""
-#: build/serializers.py:633
+#: build/serializers.py:641
msgid "How do you want to handle extra stock items assigned to the build order"
msgstr ""
-#: build/serializers.py:643
+#: build/serializers.py:651
msgid "Some stock items have been overallocated"
msgstr ""
-#: build/serializers.py:648
+#: build/serializers.py:656
msgid "Accept Unallocated"
msgstr ""
-#: build/serializers.py:649
+#: build/serializers.py:657
msgid "Accept that stock items have not been fully allocated to this build order"
msgstr ""
-#: build/serializers.py:659 templates/js/translated/build.js:295
+#: build/serializers.py:667 templates/js/translated/build.js:304
msgid "Required stock has not been fully allocated"
msgstr ""
-#: build/serializers.py:664 order/serializers.py:261 order/serializers.py:1127
+#: build/serializers.py:672 order/serializers.py:267 order/serializers.py:1133
msgid "Accept Incomplete"
msgstr ""
-#: build/serializers.py:665
+#: build/serializers.py:673
msgid "Accept that the required number of build outputs have not been completed"
msgstr ""
-#: build/serializers.py:675 templates/js/translated/build.js:299
+#: build/serializers.py:683 templates/js/translated/build.js:308
msgid "Required build quantity has not been completed"
msgstr ""
-#: build/serializers.py:684 templates/js/translated/build.js:283
+#: build/serializers.py:692 templates/js/translated/build.js:292
msgid "Build order has incomplete outputs"
msgstr ""
-#: build/serializers.py:714 build/serializers.py:768 part/models.py:3686
-#: part/models.py:4069
-msgid "BOM Item"
-msgstr ""
-
-#: build/serializers.py:724
-msgid "Build output"
+#: build/serializers.py:722
+msgid "Build Line"
msgstr ""
#: build/serializers.py:732
+msgid "Build output"
+msgstr ""
+
+#: build/serializers.py:740
msgid "Build output must point to the same build"
msgstr ""
-#: build/serializers.py:782
+#: build/serializers.py:776
+msgid "Build Line Item"
+msgstr ""
+
+#: build/serializers.py:790
msgid "bom_item.part must point to the same part as the build order"
msgstr ""
-#: build/serializers.py:797 stock/serializers.py:783
+#: build/serializers.py:805 stock/serializers.py:900
msgid "Item must be in stock"
msgstr ""
-#: build/serializers.py:846 order/serializers.py:1117
+#: build/serializers.py:853 order/serializers.py:1123
#, python-brace-format
msgid "Available quantity ({q}) exceeded"
msgstr ""
-#: build/serializers.py:852
+#: build/serializers.py:859
msgid "Build output must be specified for allocation of tracked parts"
msgstr ""
-#: build/serializers.py:859
+#: build/serializers.py:866
msgid "Build output cannot be specified for allocation of untracked parts"
msgstr ""
-#: build/serializers.py:864
+#: build/serializers.py:871
msgid "This stock item has already been allocated to this build output"
msgstr ""
-#: build/serializers.py:887 order/serializers.py:1401
+#: build/serializers.py:894 order/serializers.py:1407
msgid "Allocation items must be provided"
msgstr ""
-#: build/serializers.py:943
+#: build/serializers.py:947
msgid "Stock location where parts are to be sourced (leave blank to take from any location)"
msgstr ""
-#: build/serializers.py:951
+#: build/serializers.py:955
msgid "Exclude Location"
msgstr ""
-#: build/serializers.py:952
+#: build/serializers.py:956
msgid "Exclude stock items from this selected location"
msgstr ""
-#: build/serializers.py:957
+#: build/serializers.py:961
msgid "Interchangeable Stock"
msgstr ""
-#: build/serializers.py:958
+#: build/serializers.py:962
msgid "Stock items in multiple locations can be used interchangeably"
msgstr ""
-#: build/serializers.py:963
+#: build/serializers.py:967
msgid "Substitute Stock"
msgstr ""
-#: build/serializers.py:964
+#: build/serializers.py:968
msgid "Allow allocation of substitute parts"
msgstr ""
-#: build/serializers.py:969
+#: build/serializers.py:973
msgid "Optional Items"
msgstr ""
-#: build/serializers.py:970
+#: build/serializers.py:974
msgid "Allocate optional BOM items to build order"
msgstr ""
@@ -1540,6 +1589,7 @@ msgstr ""
#: part/templates/part/part_base.html:43
#: stock/templates/stock/item_base.html:41
#: stock/templates/stock/location.html:54
+#: templates/js/translated/filters.js:336
msgid "Barcode actions"
msgstr ""
@@ -1618,69 +1668,67 @@ msgstr ""
msgid "Build Description"
msgstr ""
-#: build/templates/build/build_base.html:117
+#: build/templates/build/build_base.html:118
msgid "No build outputs have been created for this build order"
msgstr ""
-#: build/templates/build/build_base.html:124
+#: build/templates/build/build_base.html:125
msgid "Build Order is ready to mark as completed"
msgstr ""
-#: build/templates/build/build_base.html:129
+#: build/templates/build/build_base.html:130
msgid "Build Order cannot be completed as outstanding outputs remain"
msgstr ""
-#: build/templates/build/build_base.html:134
+#: build/templates/build/build_base.html:135
msgid "Required build quantity has not yet been completed"
msgstr ""
-#: build/templates/build/build_base.html:139
+#: build/templates/build/build_base.html:140
msgid "Stock has not been fully allocated to this Build Order"
msgstr ""
-#: build/templates/build/build_base.html:160
-#: build/templates/build/detail.html:138 order/models.py:240
-#: order/models.py:1099 order/templates/order/order_base.html:190
+#: build/templates/build/build_base.html:161
+#: build/templates/build/detail.html:138 order/models.py:244
+#: order/models.py:1112 order/templates/order/order_base.html:186
#: order/templates/order/return_order_base.html:165
#: order/templates/order/sales_order_base.html:193
#: report/templates/report/inventree_build_order_base.html:125
-#: templates/js/translated/build.js:2945 templates/js/translated/part.js:1802
-#: templates/js/translated/purchase_order.js:1699
-#: templates/js/translated/purchase_order.js:2115
-#: templates/js/translated/return_order.js:335
-#: templates/js/translated/return_order.js:735
-#: templates/js/translated/sales_order.js:823
-#: templates/js/translated/sales_order.js:1847
+#: templates/js/translated/build.js:2162 templates/js/translated/part.js:1801
+#: templates/js/translated/purchase_order.js:1714
+#: templates/js/translated/purchase_order.js:2125
+#: templates/js/translated/return_order.js:347
+#: templates/js/translated/return_order.js:747
+#: templates/js/translated/sales_order.js:835
+#: templates/js/translated/sales_order.js:1859
msgid "Target Date"
msgstr ""
-#: build/templates/build/build_base.html:165
+#: build/templates/build/build_base.html:166
#, python-format
msgid "This build was due on %(target)s"
msgstr ""
-#: build/templates/build/build_base.html:165
-#: build/templates/build/build_base.html:222
-#: order/templates/order/order_base.html:126
+#: build/templates/build/build_base.html:166
+#: build/templates/build/build_base.html:223
+#: order/templates/order/order_base.html:122
#: order/templates/order/return_order_base.html:118
#: order/templates/order/sales_order_base.html:123
-#: templates/js/translated/table_filters.js:68
-#: templates/js/translated/table_filters.js:454
-#: templates/js/translated/table_filters.js:539
-#: templates/js/translated/table_filters.js:580
+#: templates/js/translated/table_filters.js:74
+#: templates/js/translated/table_filters.js:460
+#: templates/js/translated/table_filters.js:561
+#: templates/js/translated/table_filters.js:602
msgid "Overdue"
msgstr ""
-#: build/templates/build/build_base.html:177
-#: build/templates/build/detail.html:67 build/templates/build/detail.html:149
-#: order/templates/order/sales_order_base.html:203
-#: templates/js/translated/table_filters.js:602
-msgid "Completed"
+#: build/templates/build/build_base.html:178
+#: build/templates/build/detail.html:67 build/templates/build/sidebar.html:13
+msgid "Completed Outputs"
msgstr ""
-#: build/templates/build/build_base.html:190
-#: build/templates/build/detail.html:101 order/api.py:1454 order/models.py:1304
-#: order/models.py:1403 order/models.py:1551
+#: build/templates/build/build_base.html:191
+#: build/templates/build/detail.html:101 order/api.py:1454 order/models.py:1317
+#: order/models.py:1416 order/models.py:1564
#: order/templates/order/sales_order_base.html:9
#: order/templates/order/sales_order_base.html:28
#: report/templates/report/inventree_build_order_base.html:135
@@ -1688,32 +1736,32 @@ msgstr ""
#: stock/templates/stock/item_base.html:370
#: templates/email/overdue_sales_order.html:15
#: templates/js/translated/pricing.js:915
-#: templates/js/translated/sales_order.js:757
-#: templates/js/translated/sales_order.js:980
-#: templates/js/translated/stock.js:2661
+#: templates/js/translated/sales_order.js:769
+#: templates/js/translated/sales_order.js:992
+#: templates/js/translated/stock.js:2792
msgid "Sales Order"
msgstr ""
-#: build/templates/build/build_base.html:197
+#: build/templates/build/build_base.html:198
#: build/templates/build/detail.html:115
#: report/templates/report/inventree_build_order_base.html:152
msgid "Issued By"
msgstr ""
-#: build/templates/build/build_base.html:211
-#: build/templates/build/detail.html:94 templates/js/translated/build.js:2862
+#: build/templates/build/build_base.html:212
+#: build/templates/build/detail.html:94 templates/js/translated/build.js:2079
msgid "Priority"
msgstr ""
-#: build/templates/build/build_base.html:273
+#: build/templates/build/build_base.html:274
msgid "Delete Build Order"
msgstr ""
-#: build/templates/build/build_base.html:283
+#: build/templates/build/build_base.html:284
msgid "Build Order QR Code"
msgstr ""
-#: build/templates/build/build_base.html:295
+#: build/templates/build/build_base.html:296
msgid "Link Barcode to Build Order"
msgstr ""
@@ -1729,8 +1777,8 @@ msgstr ""
msgid "Stock can be taken from any available location."
msgstr ""
-#: build/templates/build/detail.html:49 order/models.py:1222
-#: templates/js/translated/purchase_order.js:2157
+#: build/templates/build/detail.html:49 order/models.py:1235
+#: templates/js/translated/purchase_order.js:2167
msgid "Destination"
msgstr ""
@@ -1744,21 +1792,21 @@ msgstr ""
#: build/templates/build/detail.html:80 stock/admin.py:105
#: stock/templates/stock/item_base.html:163
-#: templates/js/translated/build.js:1432
-#: templates/js/translated/model_renderers.js:212
-#: templates/js/translated/purchase_order.js:1244
-#: templates/js/translated/stock.js:1093 templates/js/translated/stock.js:1926
-#: templates/js/translated/stock.js:2866
-#: templates/js/translated/table_filters.js:259
-#: templates/js/translated/table_filters.js:350
+#: templates/js/translated/build.js:1319
+#: templates/js/translated/model_renderers.js:226
+#: templates/js/translated/purchase_order.js:1259
+#: templates/js/translated/stock.js:1092 templates/js/translated/stock.js:2083
+#: templates/js/translated/stock.js:2993
+#: templates/js/translated/table_filters.js:265
+#: templates/js/translated/table_filters.js:356
msgid "Batch"
msgstr ""
#: build/templates/build/detail.html:133
-#: order/templates/order/order_base.html:177
+#: order/templates/order/order_base.html:173
#: order/templates/order/return_order_base.html:152
#: order/templates/order/sales_order_base.html:187
-#: templates/js/translated/build.js:2905
+#: templates/js/translated/build.js:2122
msgid "Created"
msgstr ""
@@ -1766,147 +1814,106 @@ msgstr ""
msgid "No target date set"
msgstr ""
+#: build/templates/build/detail.html:149
+#: order/templates/order/sales_order_base.html:203
+#: templates/js/translated/table_filters.js:624
+msgid "Completed"
+msgstr ""
+
#: build/templates/build/detail.html:153
msgid "Build not complete"
msgstr ""
-#: build/templates/build/detail.html:164 build/templates/build/sidebar.html:19
+#: build/templates/build/detail.html:164 build/templates/build/sidebar.html:17
msgid "Child Build Orders"
msgstr ""
-#: build/templates/build/detail.html:179
+#: build/templates/build/detail.html:177
msgid "Allocate Stock to Build"
msgstr ""
-#: build/templates/build/detail.html:183 templates/js/translated/build.js:2276
-msgid "Unallocate stock"
+#: build/templates/build/detail.html:181
+msgid "Deallocate stock"
+msgstr ""
+
+#: build/templates/build/detail.html:182
+msgid "Deallocate Stock"
msgstr ""
#: build/templates/build/detail.html:184
-msgid "Unallocate Stock"
-msgstr ""
-
-#: build/templates/build/detail.html:186
msgid "Automatically allocate stock to build"
msgstr ""
-#: build/templates/build/detail.html:187
+#: build/templates/build/detail.html:185
msgid "Auto Allocate"
msgstr ""
-#: build/templates/build/detail.html:189
+#: build/templates/build/detail.html:187
msgid "Manually allocate stock to build"
msgstr ""
-#: build/templates/build/detail.html:190 build/templates/build/sidebar.html:8
+#: build/templates/build/detail.html:188 build/templates/build/sidebar.html:8
msgid "Allocate Stock"
msgstr ""
-#: build/templates/build/detail.html:193
+#: build/templates/build/detail.html:191
msgid "Order required parts"
msgstr ""
-#: build/templates/build/detail.html:194
-#: company/templates/company/detail.html:38
-#: company/templates/company/detail.html:86
-#: part/templates/part/category.html:184
-#: templates/js/translated/purchase_order.js:789
+#: build/templates/build/detail.html:192
+#: templates/js/translated/purchase_order.js:800
msgid "Order Parts"
msgstr ""
-#: build/templates/build/detail.html:206
-msgid "Untracked stock has been fully allocated for this Build Order"
-msgstr ""
-
#: build/templates/build/detail.html:210
-msgid "Untracked stock has not been fully allocated for this Build Order"
-msgstr ""
-
-#: build/templates/build/detail.html:217
-msgid "Allocate selected items"
-msgstr ""
-
-#: build/templates/build/detail.html:227
-msgid "This Build Order does not have any associated untracked BOM items"
-msgstr ""
-
-#: build/templates/build/detail.html:236
msgid "Incomplete Build Outputs"
msgstr ""
-#: build/templates/build/detail.html:240
+#: build/templates/build/detail.html:214
msgid "Create new build output"
msgstr ""
-#: build/templates/build/detail.html:241
+#: build/templates/build/detail.html:215
msgid "New Build Output"
msgstr ""
-#: build/templates/build/detail.html:255
-msgid "Output Actions"
-msgstr ""
-
-#: build/templates/build/detail.html:260
-msgid "Complete selected build outputs"
-msgstr ""
-
-#: build/templates/build/detail.html:261
-msgid "Complete outputs"
-msgstr ""
-
-#: build/templates/build/detail.html:265
-msgid "Scrap selected build outputs"
-msgstr ""
-
-#: build/templates/build/detail.html:266
-msgid "Scrap outputs"
-msgstr ""
-
-#: build/templates/build/detail.html:270
-msgid "Delete selected build outputs"
-msgstr ""
-
-#: build/templates/build/detail.html:271
-msgid "Delete outputs"
-msgstr ""
-
-#: build/templates/build/detail.html:288 build/templates/build/sidebar.html:11
+#: build/templates/build/detail.html:232 build/templates/build/sidebar.html:15
msgid "Consumed Stock"
msgstr ""
-#: build/templates/build/detail.html:300
+#: build/templates/build/detail.html:244
msgid "Completed Build Outputs"
msgstr ""
-#: build/templates/build/detail.html:312 build/templates/build/sidebar.html:21
-#: company/templates/company/detail.html:261
-#: company/templates/company/manufacturer_part.html:151
+#: build/templates/build/detail.html:256 build/templates/build/sidebar.html:19
+#: company/templates/company/detail.html:229
+#: company/templates/company/manufacturer_part.html:141
#: company/templates/company/manufacturer_part_sidebar.html:9
-#: company/templates/company/sidebar.html:37
+#: company/templates/company/sidebar.html:39
#: order/templates/order/po_sidebar.html:9
-#: order/templates/order/purchase_order_detail.html:102
-#: order/templates/order/return_order_detail.html:74
+#: order/templates/order/purchase_order_detail.html:84
+#: order/templates/order/return_order_detail.html:70
#: order/templates/order/return_order_sidebar.html:7
-#: order/templates/order/sales_order_detail.html:134
-#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:234
-#: part/templates/part/part_sidebar.html:61 stock/templates/stock/item.html:117
+#: order/templates/order/sales_order_detail.html:124
+#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:217
+#: part/templates/part/part_sidebar.html:61 stock/templates/stock/item.html:109
#: stock/templates/stock/stock_sidebar.html:23
msgid "Attachments"
msgstr ""
-#: build/templates/build/detail.html:327
+#: build/templates/build/detail.html:271
msgid "Build Notes"
msgstr ""
-#: build/templates/build/detail.html:502
+#: build/templates/build/detail.html:425
msgid "Allocation Complete"
msgstr ""
-#: build/templates/build/detail.html:503
-msgid "All untracked stock items have been allocated"
+#: build/templates/build/detail.html:426
+msgid "All lines have been fully allocated"
msgstr ""
-#: build/templates/build/index.html:18 part/templates/part/detail.html:340
+#: build/templates/build/index.html:18 part/templates/part/detail.html:319
msgid "New Build Order"
msgstr ""
@@ -1914,14 +1921,10 @@ msgstr ""
msgid "Build Order Details"
msgstr ""
-#: build/templates/build/sidebar.html:14
+#: build/templates/build/sidebar.html:10
msgid "Incomplete Outputs"
msgstr ""
-#: build/templates/build/sidebar.html:17
-msgid "Completed Outputs"
-msgstr ""
-
#: common/files.py:63
#, python-brace-format
msgid "Unsupported file format: {fmt}"
@@ -1968,16 +1971,6 @@ msgstr ""
msgid "Timestamp of last update"
msgstr ""
-#: common/models.py:104 order/admin.py:17 order/models.py:234
-#: templates/InvenTree/settings/settings_staff_js.html:70
-#: templates/js/translated/purchase_order.js:1670
-#: templates/js/translated/return_order.js:306
-#: templates/js/translated/sales_order.js:794
-#: templates/js/translated/table_filters.js:24
-#: templates/project_code_data.html:6
-msgid "Project Code"
-msgstr ""
-
#: common/models.py:105
msgid "Unique project code"
msgstr ""
@@ -2261,9 +2254,9 @@ msgstr ""
msgid "Copy category parameter templates when creating a part"
msgstr ""
-#: common/models.py:1162 part/admin.py:55 part/models.py:3560
-#: report/models.py:166 templates/js/translated/table_filters.js:109
-#: templates/js/translated/table_filters.js:680
+#: common/models.py:1162 part/admin.py:55 part/models.py:3594
+#: report/models.py:166 templates/js/translated/table_filters.js:115
+#: templates/js/translated/table_filters.js:702
msgid "Template"
msgstr ""
@@ -2271,10 +2264,10 @@ msgstr ""
msgid "Parts are templates by default"
msgstr ""
-#: common/models.py:1169 part/admin.py:51 part/admin.py:283 part/models.py:996
-#: templates/js/translated/bom.js:1598
-#: templates/js/translated/table_filters.js:276
-#: templates/js/translated/table_filters.js:634
+#: common/models.py:1169 part/admin.py:51 part/admin.py:283 part/models.py:997
+#: templates/js/translated/bom.js:1618
+#: templates/js/translated/table_filters.js:282
+#: templates/js/translated/table_filters.js:656
msgid "Assembly"
msgstr ""
@@ -2282,8 +2275,8 @@ msgstr ""
msgid "Parts can be assembled from other components by default"
msgstr ""
-#: common/models.py:1176 part/admin.py:52 part/models.py:1002
-#: templates/js/translated/table_filters.js:642
+#: common/models.py:1176 part/admin.py:52 part/models.py:1003
+#: templates/js/translated/table_filters.js:664
msgid "Component"
msgstr ""
@@ -2291,7 +2284,7 @@ msgstr ""
msgid "Parts can be used as sub-components by default"
msgstr ""
-#: common/models.py:1183 part/admin.py:53 part/models.py:1013
+#: common/models.py:1183 part/admin.py:53 part/models.py:1014
msgid "Purchaseable"
msgstr ""
@@ -2299,8 +2292,8 @@ msgstr ""
msgid "Parts are purchaseable by default"
msgstr ""
-#: common/models.py:1190 part/admin.py:54 part/models.py:1018
-#: templates/js/translated/table_filters.js:668
+#: common/models.py:1190 part/admin.py:54 part/models.py:1019
+#: templates/js/translated/table_filters.js:690
msgid "Salable"
msgstr ""
@@ -2308,10 +2301,10 @@ msgstr ""
msgid "Parts are salable by default"
msgstr ""
-#: common/models.py:1197 part/admin.py:56 part/models.py:1008
-#: templates/js/translated/table_filters.js:117
-#: templates/js/translated/table_filters.js:193
-#: templates/js/translated/table_filters.js:684
+#: common/models.py:1197 part/admin.py:56 part/models.py:1009
+#: templates/js/translated/table_filters.js:123
+#: templates/js/translated/table_filters.js:199
+#: templates/js/translated/table_filters.js:706
msgid "Trackable"
msgstr ""
@@ -2319,10 +2312,10 @@ msgstr ""
msgid "Parts are trackable by default"
msgstr ""
-#: common/models.py:1204 part/admin.py:57 part/models.py:1028
+#: common/models.py:1204 part/admin.py:57 part/models.py:1029
#: part/templates/part/part_base.html:156
-#: templates/js/translated/table_filters.js:113
-#: templates/js/translated/table_filters.js:688
+#: templates/js/translated/table_filters.js:119
+#: templates/js/translated/table_filters.js:710
msgid "Virtual"
msgstr ""
@@ -2354,7 +2347,7 @@ msgstr ""
msgid "Allow creation of initial stock when adding a new part"
msgstr ""
-#: common/models.py:1232 templates/js/translated/part.js:108
+#: common/models.py:1232 templates/js/translated/part.js:107
msgid "Initial Supplier Data"
msgstr ""
@@ -2603,179 +2596,179 @@ msgid "Stock location default icon (empty means no icon)"
msgstr ""
#: common/models.py:1471
-msgid "Build Order Reference Pattern"
+msgid "Show Installed Stock Items"
msgstr ""
#: common/models.py:1472
-msgid "Required pattern for generating Build Order reference field"
+msgid "Display installed stock items in stock tables"
msgstr ""
#: common/models.py:1478
-msgid "Enable Return Orders"
+msgid "Build Order Reference Pattern"
msgstr ""
#: common/models.py:1479
-msgid "Enable return order functionality in the user interface"
+msgid "Required pattern for generating Build Order reference field"
msgstr ""
#: common/models.py:1485
-msgid "Return Order Reference Pattern"
+msgid "Enable Return Orders"
msgstr ""
#: common/models.py:1486
-msgid "Required pattern for generating Return Order reference field"
+msgid "Enable return order functionality in the user interface"
msgstr ""
#: common/models.py:1492
-msgid "Edit Completed Return Orders"
+msgid "Return Order Reference Pattern"
msgstr ""
#: common/models.py:1493
-msgid "Allow editing of return orders after they have been completed"
+msgid "Required pattern for generating Return Order reference field"
msgstr ""
#: common/models.py:1499
-msgid "Sales Order Reference Pattern"
+msgid "Edit Completed Return Orders"
msgstr ""
#: common/models.py:1500
-msgid "Required pattern for generating Sales Order reference field"
+msgid "Allow editing of return orders after they have been completed"
msgstr ""
#: common/models.py:1506
-msgid "Sales Order Default Shipment"
+msgid "Sales Order Reference Pattern"
msgstr ""
#: common/models.py:1507
-msgid "Enable creation of default shipment with sales orders"
+msgid "Required pattern for generating Sales Order reference field"
msgstr ""
#: common/models.py:1513
-msgid "Edit Completed Sales Orders"
+msgid "Sales Order Default Shipment"
msgstr ""
#: common/models.py:1514
-msgid "Allow editing of sales orders after they have been shipped or completed"
+msgid "Enable creation of default shipment with sales orders"
msgstr ""
#: common/models.py:1520
-msgid "Purchase Order Reference Pattern"
+msgid "Edit Completed Sales Orders"
msgstr ""
#: common/models.py:1521
-msgid "Required pattern for generating Purchase Order reference field"
+msgid "Allow editing of sales orders after they have been shipped or completed"
msgstr ""
#: common/models.py:1527
-msgid "Edit Completed Purchase Orders"
+msgid "Purchase Order Reference Pattern"
msgstr ""
#: common/models.py:1528
-msgid "Allow editing of purchase orders after they have been shipped or completed"
+msgid "Required pattern for generating Purchase Order reference field"
+msgstr ""
+
+#: common/models.py:1534
+msgid "Edit Completed Purchase Orders"
msgstr ""
#: common/models.py:1535
-msgid "Enable password forgot"
-msgstr ""
-
-#: common/models.py:1536
-msgid "Enable password forgot function on the login pages"
+msgid "Allow editing of purchase orders after they have been shipped or completed"
msgstr ""
#: common/models.py:1542
-msgid "Enable registration"
+msgid "Enable password forgot"
msgstr ""
#: common/models.py:1543
-msgid "Enable self-registration for users on the login pages"
+msgid "Enable password forgot function on the login pages"
msgstr ""
#: common/models.py:1549
-msgid "Enable SSO"
+msgid "Enable registration"
msgstr ""
#: common/models.py:1550
-msgid "Enable SSO on the login pages"
+msgid "Enable self-registration for users on the login pages"
msgstr ""
#: common/models.py:1556
-msgid "Enable SSO registration"
+msgid "Enable SSO"
msgstr ""
#: common/models.py:1557
-msgid "Enable self-registration via SSO for users on the login pages"
+msgid "Enable SSO on the login pages"
msgstr ""
#: common/models.py:1563
-msgid "Email required"
+msgid "Enable SSO registration"
msgstr ""
#: common/models.py:1564
-msgid "Require user to supply mail on signup"
+msgid "Enable self-registration via SSO for users on the login pages"
msgstr ""
#: common/models.py:1570
-msgid "Auto-fill SSO users"
+msgid "Email required"
msgstr ""
#: common/models.py:1571
-msgid "Automatically fill out user-details from SSO account-data"
+msgid "Require user to supply mail on signup"
msgstr ""
#: common/models.py:1577
-msgid "Mail twice"
+msgid "Auto-fill SSO users"
msgstr ""
#: common/models.py:1578
-msgid "On signup ask users twice for their mail"
+msgid "Automatically fill out user-details from SSO account-data"
msgstr ""
#: common/models.py:1584
-msgid "Password twice"
+msgid "Mail twice"
msgstr ""
#: common/models.py:1585
-msgid "On signup ask users twice for their password"
+msgid "On signup ask users twice for their mail"
msgstr ""
#: common/models.py:1591
-msgid "Allowed domains"
+msgid "Password twice"
msgstr ""
#: common/models.py:1592
-msgid "Restrict signup to certain domains (comma-separated, starting with @)"
+msgid "On signup ask users twice for their password"
msgstr ""
#: common/models.py:1598
-msgid "Group on signup"
+msgid "Allowed domains"
msgstr ""
#: common/models.py:1599
-msgid "Group to which new users are assigned on registration"
+msgid "Restrict signup to certain domains (comma-separated, starting with @)"
msgstr ""
#: common/models.py:1605
-msgid "Enforce MFA"
+msgid "Group on signup"
msgstr ""
#: common/models.py:1606
-msgid "Users must use multifactor security."
+msgid "Group to which new users are assigned on registration"
msgstr ""
#: common/models.py:1612
-msgid "Check plugins on startup"
+msgid "Enforce MFA"
msgstr ""
#: common/models.py:1613
-msgid "Check that all plugins are installed on startup - enable in container environments"
+msgid "Users must use multifactor security."
+msgstr ""
+
+#: common/models.py:1619
+msgid "Check plugins on startup"
msgstr ""
#: common/models.py:1620
-msgid "Check plugin signatures"
-msgstr ""
-
-#: common/models.py:1621
-msgid "Check and show signatures for plugins"
+msgid "Check that all plugins are installed on startup - enable in container environments"
msgstr ""
#: common/models.py:1628
@@ -2850,7 +2843,7 @@ msgstr ""
msgid "Stocktake reports will be deleted after specified number of days"
msgstr ""
-#: common/models.py:1710 common/models.py:2147
+#: common/models.py:1710 common/models.py:2133
msgid "Settings key (must be unique - case insensitive"
msgstr ""
@@ -2891,528 +2884,513 @@ msgid "Show latest parts on the homepage"
msgstr ""
#: common/models.py:1779
-msgid "Recent Part Count"
-msgstr ""
-
-#: common/models.py:1780
-msgid "Number of recent parts to display on index page"
-msgstr ""
-
-#: common/models.py:1786
msgid "Show unvalidated BOMs"
msgstr ""
-#: common/models.py:1787
+#: common/models.py:1780
msgid "Show BOMs that await validation on the homepage"
msgstr ""
-#: common/models.py:1793
+#: common/models.py:1786
msgid "Show recent stock changes"
msgstr ""
-#: common/models.py:1794
+#: common/models.py:1787
msgid "Show recently changed stock items on the homepage"
msgstr ""
-#: common/models.py:1800
-msgid "Recent Stock Count"
-msgstr ""
-
-#: common/models.py:1801
-msgid "Number of recent stock items to display on index page"
-msgstr ""
-
-#: common/models.py:1807
+#: common/models.py:1793
msgid "Show low stock"
msgstr ""
-#: common/models.py:1808
+#: common/models.py:1794
msgid "Show low stock items on the homepage"
msgstr ""
-#: common/models.py:1814
+#: common/models.py:1800
msgid "Show depleted stock"
msgstr ""
-#: common/models.py:1815
+#: common/models.py:1801
msgid "Show depleted stock items on the homepage"
msgstr ""
-#: common/models.py:1821
+#: common/models.py:1807
msgid "Show needed stock"
msgstr ""
-#: common/models.py:1822
+#: common/models.py:1808
msgid "Show stock items needed for builds on the homepage"
msgstr ""
-#: common/models.py:1828
+#: common/models.py:1814
msgid "Show expired stock"
msgstr ""
-#: common/models.py:1829
+#: common/models.py:1815
msgid "Show expired stock items on the homepage"
msgstr ""
-#: common/models.py:1835
+#: common/models.py:1821
msgid "Show stale stock"
msgstr ""
-#: common/models.py:1836
+#: common/models.py:1822
msgid "Show stale stock items on the homepage"
msgstr ""
-#: common/models.py:1842
+#: common/models.py:1828
msgid "Show pending builds"
msgstr ""
-#: common/models.py:1843
+#: common/models.py:1829
msgid "Show pending builds on the homepage"
msgstr ""
-#: common/models.py:1849
+#: common/models.py:1835
msgid "Show overdue builds"
msgstr ""
-#: common/models.py:1850
+#: common/models.py:1836
msgid "Show overdue builds on the homepage"
msgstr ""
-#: common/models.py:1856
+#: common/models.py:1842
msgid "Show outstanding POs"
msgstr ""
-#: common/models.py:1857
+#: common/models.py:1843
msgid "Show outstanding POs on the homepage"
msgstr ""
-#: common/models.py:1863
+#: common/models.py:1849
msgid "Show overdue POs"
msgstr ""
-#: common/models.py:1864
+#: common/models.py:1850
msgid "Show overdue POs on the homepage"
msgstr ""
-#: common/models.py:1870
+#: common/models.py:1856
msgid "Show outstanding SOs"
msgstr ""
-#: common/models.py:1871
+#: common/models.py:1857
msgid "Show outstanding SOs on the homepage"
msgstr ""
-#: common/models.py:1877
+#: common/models.py:1863
msgid "Show overdue SOs"
msgstr ""
-#: common/models.py:1878
+#: common/models.py:1864
msgid "Show overdue SOs on the homepage"
msgstr ""
-#: common/models.py:1884
+#: common/models.py:1870
msgid "Show pending SO shipments"
msgstr ""
-#: common/models.py:1885
+#: common/models.py:1871
msgid "Show pending SO shipments on the homepage"
msgstr ""
-#: common/models.py:1891
+#: common/models.py:1877
msgid "Show News"
msgstr ""
-#: common/models.py:1892
+#: common/models.py:1878
msgid "Show news on the homepage"
msgstr ""
-#: common/models.py:1898
+#: common/models.py:1884
msgid "Inline label display"
msgstr ""
-#: common/models.py:1899
+#: common/models.py:1885
msgid "Display PDF labels in the browser, instead of downloading as a file"
msgstr ""
-#: common/models.py:1905
+#: common/models.py:1891
msgid "Default label printer"
msgstr ""
-#: common/models.py:1906
+#: common/models.py:1892
msgid "Configure which label printer should be selected by default"
msgstr ""
-#: common/models.py:1912
+#: common/models.py:1898
msgid "Inline report display"
msgstr ""
-#: common/models.py:1913
+#: common/models.py:1899
msgid "Display PDF reports in the browser, instead of downloading as a file"
msgstr ""
-#: common/models.py:1919
+#: common/models.py:1905
msgid "Search Parts"
msgstr ""
-#: common/models.py:1920
+#: common/models.py:1906
msgid "Display parts in search preview window"
msgstr ""
-#: common/models.py:1926
+#: common/models.py:1912
msgid "Search Supplier Parts"
msgstr ""
-#: common/models.py:1927
+#: common/models.py:1913
msgid "Display supplier parts in search preview window"
msgstr ""
-#: common/models.py:1933
+#: common/models.py:1919
msgid "Search Manufacturer Parts"
msgstr ""
-#: common/models.py:1934
+#: common/models.py:1920
msgid "Display manufacturer parts in search preview window"
msgstr ""
-#: common/models.py:1940
+#: common/models.py:1926
msgid "Hide Inactive Parts"
msgstr ""
-#: common/models.py:1941
+#: common/models.py:1927
msgid "Excluded inactive parts from search preview window"
msgstr ""
-#: common/models.py:1947
+#: common/models.py:1933
msgid "Search Categories"
msgstr ""
-#: common/models.py:1948
+#: common/models.py:1934
msgid "Display part categories in search preview window"
msgstr ""
-#: common/models.py:1954
+#: common/models.py:1940
msgid "Search Stock"
msgstr ""
-#: common/models.py:1955
+#: common/models.py:1941
msgid "Display stock items in search preview window"
msgstr ""
-#: common/models.py:1961
+#: common/models.py:1947
msgid "Hide Unavailable Stock Items"
msgstr ""
-#: common/models.py:1962
+#: common/models.py:1948
msgid "Exclude stock items which are not available from the search preview window"
msgstr ""
-#: common/models.py:1968
+#: common/models.py:1954
msgid "Search Locations"
msgstr ""
-#: common/models.py:1969
+#: common/models.py:1955
msgid "Display stock locations in search preview window"
msgstr ""
-#: common/models.py:1975
+#: common/models.py:1961
msgid "Search Companies"
msgstr ""
-#: common/models.py:1976
+#: common/models.py:1962
msgid "Display companies in search preview window"
msgstr ""
-#: common/models.py:1982
+#: common/models.py:1968
msgid "Search Build Orders"
msgstr ""
-#: common/models.py:1983
+#: common/models.py:1969
msgid "Display build orders in search preview window"
msgstr ""
-#: common/models.py:1989
+#: common/models.py:1975
msgid "Search Purchase Orders"
msgstr ""
-#: common/models.py:1990
+#: common/models.py:1976
msgid "Display purchase orders in search preview window"
msgstr ""
-#: common/models.py:1996
+#: common/models.py:1982
msgid "Exclude Inactive Purchase Orders"
msgstr ""
-#: common/models.py:1997
+#: common/models.py:1983
msgid "Exclude inactive purchase orders from search preview window"
msgstr ""
-#: common/models.py:2003
+#: common/models.py:1989
msgid "Search Sales Orders"
msgstr ""
-#: common/models.py:2004
+#: common/models.py:1990
msgid "Display sales orders in search preview window"
msgstr ""
-#: common/models.py:2010
+#: common/models.py:1996
msgid "Exclude Inactive Sales Orders"
msgstr ""
-#: common/models.py:2011
+#: common/models.py:1997
msgid "Exclude inactive sales orders from search preview window"
msgstr ""
-#: common/models.py:2017
+#: common/models.py:2003
msgid "Search Return Orders"
msgstr ""
-#: common/models.py:2018
+#: common/models.py:2004
msgid "Display return orders in search preview window"
msgstr ""
-#: common/models.py:2024
+#: common/models.py:2010
msgid "Exclude Inactive Return Orders"
msgstr ""
-#: common/models.py:2025
+#: common/models.py:2011
msgid "Exclude inactive return orders from search preview window"
msgstr ""
-#: common/models.py:2031
+#: common/models.py:2017
msgid "Search Preview Results"
msgstr ""
-#: common/models.py:2032
+#: common/models.py:2018
msgid "Number of results to show in each section of the search preview window"
msgstr ""
-#: common/models.py:2038
+#: common/models.py:2024
msgid "Regex Search"
msgstr ""
-#: common/models.py:2039
+#: common/models.py:2025
msgid "Enable regular expressions in search queries"
msgstr ""
-#: common/models.py:2045
+#: common/models.py:2031
msgid "Whole Word Search"
msgstr ""
-#: common/models.py:2046
+#: common/models.py:2032
msgid "Search queries return results for whole word matches"
msgstr ""
-#: common/models.py:2052
+#: common/models.py:2038
msgid "Show Quantity in Forms"
msgstr ""
-#: common/models.py:2053
+#: common/models.py:2039
msgid "Display available part quantity in some forms"
msgstr ""
-#: common/models.py:2059
+#: common/models.py:2045
msgid "Escape Key Closes Forms"
msgstr ""
-#: common/models.py:2060
+#: common/models.py:2046
msgid "Use the escape key to close modal forms"
msgstr ""
-#: common/models.py:2066
+#: common/models.py:2052
msgid "Fixed Navbar"
msgstr ""
-#: common/models.py:2067
+#: common/models.py:2053
msgid "The navbar position is fixed to the top of the screen"
msgstr ""
-#: common/models.py:2073
+#: common/models.py:2059
msgid "Date Format"
msgstr ""
-#: common/models.py:2074
+#: common/models.py:2060
msgid "Preferred format for displaying dates"
msgstr ""
-#: common/models.py:2088 part/templates/part/detail.html:41
+#: common/models.py:2074 part/templates/part/detail.html:41
msgid "Part Scheduling"
msgstr ""
-#: common/models.py:2089
+#: common/models.py:2075
msgid "Display part scheduling information"
msgstr ""
-#: common/models.py:2095 part/templates/part/detail.html:62
+#: common/models.py:2081 part/templates/part/detail.html:62
msgid "Part Stocktake"
msgstr ""
-#: common/models.py:2096
+#: common/models.py:2082
msgid "Display part stocktake information (if stocktake functionality is enabled)"
msgstr ""
-#: common/models.py:2102
+#: common/models.py:2088
msgid "Table String Length"
msgstr ""
-#: common/models.py:2103
+#: common/models.py:2089
msgid "Maximimum length limit for strings displayed in table views"
msgstr ""
-#: common/models.py:2112
+#: common/models.py:2098
msgid "Default part label template"
msgstr ""
-#: common/models.py:2113
+#: common/models.py:2099
msgid "The part label template to be automatically selected"
msgstr ""
-#: common/models.py:2121
+#: common/models.py:2107
msgid "Default stock item template"
msgstr ""
-#: common/models.py:2122
+#: common/models.py:2108
msgid "The stock item label template to be automatically selected"
msgstr ""
-#: common/models.py:2130
+#: common/models.py:2116
msgid "Default stock location label template"
msgstr ""
-#: common/models.py:2131
+#: common/models.py:2117
msgid "The stock location label template to be automatically selected"
msgstr ""
-#: common/models.py:2177
+#: common/models.py:2163
msgid "Price break quantity"
msgstr ""
-#: common/models.py:2184 company/serializers.py:434 order/admin.py:43
-#: order/models.py:1132 order/models.py:1939
-#: templates/js/translated/company.js:1433 templates/js/translated/part.js:1856
+#: common/models.py:2170 company/serializers.py:491 order/admin.py:43
+#: order/models.py:1145 order/models.py:1952
+#: templates/js/translated/company.js:1854 templates/js/translated/part.js:1855
#: templates/js/translated/pricing.js:621
-#: templates/js/translated/return_order.js:725
+#: templates/js/translated/return_order.js:737
msgid "Price"
msgstr ""
-#: common/models.py:2185
+#: common/models.py:2171
msgid "Unit price at specified quantity"
msgstr ""
-#: common/models.py:2345 common/models.py:2523
+#: common/models.py:2331 common/models.py:2509
msgid "Endpoint"
msgstr ""
-#: common/models.py:2346
+#: common/models.py:2332
msgid "Endpoint at which this webhook is received"
msgstr ""
-#: common/models.py:2355
+#: common/models.py:2341
msgid "Name for this webhook"
msgstr ""
-#: common/models.py:2360 part/admin.py:50 part/models.py:1023
-#: plugin/models.py:47 templates/js/translated/table_filters.js:105
-#: templates/js/translated/table_filters.js:189
-#: templates/js/translated/table_filters.js:434
-#: templates/js/translated/table_filters.js:450
-#: templates/js/translated/table_filters.js:629
+#: common/models.py:2346 part/admin.py:50 part/models.py:1024
+#: plugin/models.py:48 templates/js/translated/table_filters.js:111
+#: templates/js/translated/table_filters.js:195
+#: templates/js/translated/table_filters.js:440
+#: templates/js/translated/table_filters.js:456
+#: templates/js/translated/table_filters.js:651
msgid "Active"
msgstr ""
-#: common/models.py:2361
+#: common/models.py:2347
msgid "Is this webhook active"
msgstr ""
-#: common/models.py:2375
+#: common/models.py:2361
msgid "Token"
msgstr ""
-#: common/models.py:2376
+#: common/models.py:2362
msgid "Token for access"
msgstr ""
-#: common/models.py:2383
+#: common/models.py:2369
msgid "Secret"
msgstr ""
-#: common/models.py:2384
+#: common/models.py:2370
msgid "Shared secret for HMAC"
msgstr ""
-#: common/models.py:2490
+#: common/models.py:2476
msgid "Message ID"
msgstr ""
-#: common/models.py:2491
+#: common/models.py:2477
msgid "Unique identifier for this message"
msgstr ""
-#: common/models.py:2499
+#: common/models.py:2485
msgid "Host"
msgstr ""
-#: common/models.py:2500
+#: common/models.py:2486
msgid "Host from which this message was received"
msgstr ""
-#: common/models.py:2507
+#: common/models.py:2493
msgid "Header"
msgstr ""
-#: common/models.py:2508
+#: common/models.py:2494
msgid "Header of this message"
msgstr ""
-#: common/models.py:2514
+#: common/models.py:2500
msgid "Body"
msgstr ""
-#: common/models.py:2515
+#: common/models.py:2501
msgid "Body of this message"
msgstr ""
-#: common/models.py:2524
+#: common/models.py:2510
msgid "Endpoint on which this message was received"
msgstr ""
-#: common/models.py:2529
+#: common/models.py:2515
msgid "Worked on"
msgstr ""
-#: common/models.py:2530
+#: common/models.py:2516
msgid "Was the work on this message finished?"
msgstr ""
-#: common/models.py:2684
+#: common/models.py:2670
msgid "Id"
msgstr ""
-#: common/models.py:2690 templates/js/translated/news.js:44
+#: common/models.py:2676 templates/js/translated/company.js:996
+#: templates/js/translated/news.js:44
msgid "Title"
msgstr ""
-#: common/models.py:2700 templates/js/translated/news.js:60
+#: common/models.py:2686 templates/js/translated/news.js:60
msgid "Published"
msgstr ""
-#: common/models.py:2705 templates/InvenTree/settings/plugin_settings.html:32
+#: common/models.py:2691 templates/InvenTree/settings/plugin_settings.html:32
#: templates/js/translated/news.js:56 templates/js/translated/plugin.js:106
msgid "Author"
msgstr ""
-#: common/models.py:2710 templates/js/translated/news.js:52
+#: common/models.py:2696 templates/js/translated/news.js:52
msgid "Summary"
msgstr ""
-#: common/models.py:2715
+#: common/models.py:2701
msgid "Read"
msgstr ""
-#: common/models.py:2716
+#: common/models.py:2702
msgid "Was this news item read?"
msgstr ""
-#: common/models.py:2736 company/models.py:143 part/models.py:914
+#: common/models.py:2722 company/models.py:139 part/models.py:915
#: report/templates/report/inventree_bill_of_materials_report.html:126
#: report/templates/report/inventree_bill_of_materials_report.html:148
#: report/templates/report/inventree_return_order_report_base.html:35
@@ -3422,7 +3400,7 @@ msgstr ""
msgid "Image"
msgstr ""
-#: common/models.py:2737
+#: common/models.py:2723
msgid "Image file"
msgstr ""
@@ -3499,7 +3477,7 @@ msgstr ""
#: company/models.py:113 company/templates/company/company_base.html:101
#: templates/InvenTree/settings/plugin_settings.html:54
-#: templates/js/translated/company.js:514
+#: templates/js/translated/company.js:521
msgid "Website"
msgstr ""
@@ -3507,303 +3485,387 @@ msgstr ""
msgid "Company website URL"
msgstr ""
-#: company/models.py:118 company/templates/company/company_base.html:119
-msgid "Address"
-msgstr ""
-
-#: company/models.py:119
-msgid "Company address"
-msgstr ""
-
-#: company/models.py:122
+#: company/models.py:118
msgid "Phone number"
msgstr ""
-#: company/models.py:123
+#: company/models.py:119
msgid "Contact phone number"
msgstr ""
-#: company/models.py:126 company/templates/company/company_base.html:133
+#: company/models.py:122 company/templates/company/company_base.html:133
#: templates/InvenTree/settings/user.html:49
-#: templates/js/translated/company.js:659
+#: templates/js/translated/company.js:666
msgid "Email"
msgstr ""
-#: company/models.py:126
+#: company/models.py:122
msgid "Contact email address"
msgstr ""
-#: company/models.py:129 company/templates/company/company_base.html:140
-#: order/models.py:266 order/templates/order/order_base.html:207
+#: company/models.py:125 company/templates/company/company_base.html:140
+#: order/models.py:270 order/templates/order/order_base.html:203
#: order/templates/order/return_order_base.html:175
#: order/templates/order/sales_order_base.html:215
msgid "Contact"
msgstr ""
-#: company/models.py:130
+#: company/models.py:126
msgid "Point of contact"
msgstr ""
-#: company/models.py:132
+#: company/models.py:128
msgid "Link to external company information"
msgstr ""
-#: company/models.py:146
+#: company/models.py:142
msgid "is customer"
msgstr ""
-#: company/models.py:146
+#: company/models.py:142
msgid "Do you sell items to this company?"
msgstr ""
-#: company/models.py:148
+#: company/models.py:144
msgid "is supplier"
msgstr ""
-#: company/models.py:148
+#: company/models.py:144
msgid "Do you purchase items from this company?"
msgstr ""
-#: company/models.py:150
+#: company/models.py:146
msgid "is manufacturer"
msgstr ""
-#: company/models.py:150
+#: company/models.py:146
msgid "Does this company manufacture parts?"
msgstr ""
-#: company/models.py:157
+#: company/models.py:153
msgid "Default currency used for this company"
msgstr ""
-#: company/models.py:223 company/templates/company/company_base.html:8
+#: company/models.py:235 company/models.py:328
+#: company/templates/company/company_base.html:8
#: company/templates/company/company_base.html:12
-#: templates/InvenTree/search.html:178 templates/js/translated/company.js:487
+#: templates/InvenTree/search.html:178 templates/js/translated/company.js:494
msgid "Company"
msgstr ""
-#: company/models.py:278 company/models.py:553 stock/models.py:675
-#: stock/serializers.py:155 stock/templates/stock/item_base.html:143
-#: templates/js/translated/bom.js:621
+#: company/models.py:324
+msgid "Company already has a primary address"
+msgstr ""
+
+#: company/models.py:329
+msgid "Select company"
+msgstr ""
+
+#: company/models.py:332
+msgid "Address title"
+msgstr ""
+
+#: company/models.py:333
+msgid "Title describing the address entry"
+msgstr ""
+
+#: company/models.py:337
+msgid "Primary address"
+msgstr ""
+
+#: company/models.py:338
+msgid "Set as primary address"
+msgstr ""
+
+#: company/models.py:341 templates/js/translated/company.js:941
+#: templates/js/translated/company.js:1002
+msgid "Line 1"
+msgstr ""
+
+#: company/models.py:342
+msgid "Address line 1"
+msgstr ""
+
+#: company/models.py:346 templates/js/translated/company.js:942
+#: templates/js/translated/company.js:1008
+msgid "Line 2"
+msgstr ""
+
+#: company/models.py:347
+msgid "Address line 2"
+msgstr ""
+
+#: company/models.py:351 company/models.py:352
+#: templates/js/translated/company.js:1014
+msgid "Postal code"
+msgstr ""
+
+#: company/models.py:356
+msgid "City/Region"
+msgstr ""
+
+#: company/models.py:357
+msgid "Postal code city/region"
+msgstr ""
+
+#: company/models.py:361
+msgid "State/Province"
+msgstr ""
+
+#: company/models.py:362
+msgid "State or province"
+msgstr ""
+
+#: company/models.py:366 templates/js/translated/company.js:1032
+msgid "Country"
+msgstr ""
+
+#: company/models.py:367
+msgid "Address country"
+msgstr ""
+
+#: company/models.py:371
+msgid "Courier shipping notes"
+msgstr ""
+
+#: company/models.py:372
+msgid "Notes for shipping courier"
+msgstr ""
+
+#: company/models.py:376
+msgid "Internal shipping notes"
+msgstr ""
+
+#: company/models.py:377
+msgid "Shipping notes for internal use"
+msgstr ""
+
+#: company/models.py:382
+msgid "Link to address information (external)"
+msgstr ""
+
+#: company/models.py:427 company/models.py:702 stock/models.py:675
+#: stock/serializers.py:204 stock/templates/stock/item_base.html:143
+#: templates/js/translated/bom.js:622
msgid "Base Part"
msgstr ""
-#: company/models.py:282 company/models.py:557
+#: company/models.py:431 company/models.py:706
msgid "Select part"
msgstr ""
-#: company/models.py:293 company/templates/company/company_base.html:77
+#: company/models.py:442 company/templates/company/company_base.html:77
#: company/templates/company/manufacturer_part.html:90
-#: company/templates/company/supplier_part.html:146 part/serializers.py:354
+#: company/templates/company/supplier_part.html:146 part/serializers.py:404
#: stock/templates/stock/item_base.html:208
-#: templates/js/translated/company.js:498
-#: templates/js/translated/company.js:824
-#: templates/js/translated/company.js:954
-#: templates/js/translated/company.js:1221
-#: templates/js/translated/table_filters.js:709
+#: templates/js/translated/company.js:505
+#: templates/js/translated/company.js:1149
+#: templates/js/translated/company.js:1327
+#: templates/js/translated/company.js:1642
+#: templates/js/translated/table_filters.js:731
msgid "Manufacturer"
msgstr ""
-#: company/models.py:294
+#: company/models.py:443
msgid "Select manufacturer"
msgstr ""
-#: company/models.py:300 company/templates/company/manufacturer_part.html:101
-#: company/templates/company/supplier_part.html:154 part/serializers.py:360
-#: templates/js/translated/company.js:340
-#: templates/js/translated/company.js:823
-#: templates/js/translated/company.js:970
-#: templates/js/translated/company.js:1240 templates/js/translated/part.js:1773
-#: templates/js/translated/purchase_order.js:1814
-#: templates/js/translated/purchase_order.js:2021
+#: company/models.py:449 company/templates/company/manufacturer_part.html:101
+#: company/templates/company/supplier_part.html:154 part/serializers.py:410
+#: templates/js/translated/company.js:350
+#: templates/js/translated/company.js:1148
+#: templates/js/translated/company.js:1343
+#: templates/js/translated/company.js:1661 templates/js/translated/part.js:1772
+#: templates/js/translated/purchase_order.js:1829
+#: templates/js/translated/purchase_order.js:2031
msgid "MPN"
msgstr ""
-#: company/models.py:301
+#: company/models.py:450
msgid "Manufacturer Part Number"
msgstr ""
-#: company/models.py:307
+#: company/models.py:456
msgid "URL for external manufacturer part link"
msgstr ""
-#: company/models.py:313
+#: company/models.py:462
msgid "Manufacturer part description"
msgstr ""
-#: company/models.py:360 company/models.py:384 company/models.py:578
+#: company/models.py:509 company/models.py:533 company/models.py:727
#: company/templates/company/manufacturer_part.html:7
#: company/templates/company/manufacturer_part.html:24
#: stock/templates/stock/item_base.html:218
msgid "Manufacturer Part"
msgstr ""
-#: company/models.py:391
+#: company/models.py:540
msgid "Parameter name"
msgstr ""
-#: company/models.py:397
+#: company/models.py:546
#: report/templates/report/inventree_test_report_base.html:104
-#: stock/models.py:2255 templates/js/translated/company.js:872
-#: templates/js/translated/company.js:1077 templates/js/translated/part.js:1465
-#: templates/js/translated/stock.js:1446
+#: stock/models.py:2255 templates/js/translated/company.js:1197
+#: templates/js/translated/company.js:1450 templates/js/translated/part.js:1464
+#: templates/js/translated/stock.js:1445
msgid "Value"
msgstr ""
-#: company/models.py:398
+#: company/models.py:547
msgid "Parameter value"
msgstr ""
-#: company/models.py:404 company/templates/company/supplier_part.html:169
-#: part/admin.py:40 part/models.py:987 part/models.py:3407
+#: company/models.py:553 company/templates/company/supplier_part.html:169
+#: part/admin.py:40 part/models.py:988 part/models.py:3441
#: part/templates/part/part_base.html:286
-#: templates/js/translated/company.js:1083 templates/js/translated/part.js:1484
-#: templates/js/translated/part.js:1588 templates/js/translated/part.js:2262
+#: templates/js/translated/company.js:1456 templates/js/translated/part.js:1483
+#: templates/js/translated/part.js:1587 templates/js/translated/part.js:2338
msgid "Units"
msgstr ""
-#: company/models.py:405
+#: company/models.py:554
msgid "Parameter units"
msgstr ""
-#: company/models.py:498
+#: company/models.py:647
msgid "Pack units must be compatible with the base part units"
msgstr ""
-#: company/models.py:504
+#: company/models.py:653
msgid "Pack units must be greater than zero"
msgstr ""
-#: company/models.py:520
+#: company/models.py:669
msgid "Linked manufacturer part must reference the same base part"
msgstr ""
-#: company/models.py:564 company/templates/company/company_base.html:82
-#: company/templates/company/supplier_part.html:130 order/models.py:382
-#: order/templates/order/order_base.html:140 part/bom.py:285 part/bom.py:313
-#: part/serializers.py:343 stock/templates/stock/item_base.html:225
+#: company/models.py:713 company/templates/company/company_base.html:82
+#: company/templates/company/supplier_part.html:130 order/models.py:395
+#: order/templates/order/order_base.html:136 part/bom.py:285 part/bom.py:313
+#: part/serializers.py:393 stock/templates/stock/item_base.html:225
#: templates/email/overdue_purchase_order.html:16
-#: templates/js/translated/company.js:339
-#: templates/js/translated/company.js:502
-#: templates/js/translated/company.js:1194 templates/js/translated/part.js:1741
+#: templates/js/translated/company.js:349
+#: templates/js/translated/company.js:509
+#: templates/js/translated/company.js:1615 templates/js/translated/part.js:1740
#: templates/js/translated/pricing.js:498
-#: templates/js/translated/purchase_order.js:1653
-#: templates/js/translated/table_filters.js:713
+#: templates/js/translated/purchase_order.js:1668
+#: templates/js/translated/table_filters.js:735
msgid "Supplier"
msgstr ""
-#: company/models.py:565
+#: company/models.py:714
msgid "Select supplier"
msgstr ""
-#: company/models.py:570 company/templates/company/supplier_part.html:140
-#: part/bom.py:286 part/bom.py:314 part/serializers.py:349
-#: templates/js/translated/company.js:338 templates/js/translated/part.js:1759
+#: company/models.py:719 company/templates/company/supplier_part.html:140
+#: part/bom.py:286 part/bom.py:314 part/serializers.py:399
+#: templates/js/translated/company.js:348 templates/js/translated/part.js:1758
#: templates/js/translated/pricing.js:510
-#: templates/js/translated/purchase_order.js:1813
-#: templates/js/translated/purchase_order.js:1996
+#: templates/js/translated/purchase_order.js:1828
+#: templates/js/translated/purchase_order.js:2006
msgid "SKU"
msgstr ""
-#: company/models.py:571 part/serializers.py:349
+#: company/models.py:720 part/serializers.py:399
msgid "Supplier stock keeping unit"
msgstr ""
-#: company/models.py:579
+#: company/models.py:728
msgid "Select manufacturer part"
msgstr ""
-#: company/models.py:585
+#: company/models.py:734
msgid "URL for external supplier part link"
msgstr ""
-#: company/models.py:591
+#: company/models.py:740
msgid "Supplier part description"
msgstr ""
-#: company/models.py:596 company/templates/company/supplier_part.html:188
-#: part/admin.py:279 part/models.py:3801 part/templates/part/upload_bom.html:59
+#: company/models.py:745 company/templates/company/supplier_part.html:188
+#: part/admin.py:279 part/models.py:3845 part/templates/part/upload_bom.html:59
#: report/templates/report/inventree_bill_of_materials_report.html:140
#: report/templates/report/inventree_po_report_base.html:32
#: report/templates/report/inventree_return_order_report_base.html:27
#: report/templates/report/inventree_so_report_base.html:32
-#: stock/serializers.py:418
+#: stock/serializers.py:484
msgid "Note"
msgstr ""
-#: company/models.py:600 part/models.py:1919
+#: company/models.py:749 part/models.py:1921
msgid "base cost"
msgstr ""
-#: company/models.py:600 part/models.py:1919
+#: company/models.py:749 part/models.py:1921
msgid "Minimum charge (e.g. stocking fee)"
msgstr ""
-#: company/models.py:602 company/templates/company/supplier_part.html:161
+#: company/models.py:751 company/templates/company/supplier_part.html:161
#: stock/admin.py:119 stock/models.py:701
#: stock/templates/stock/item_base.html:241
-#: templates/js/translated/company.js:1256
-#: templates/js/translated/stock.js:2160
+#: templates/js/translated/company.js:1677
+#: templates/js/translated/stock.js:2317
msgid "Packaging"
msgstr ""
-#: company/models.py:602
+#: company/models.py:751
msgid "Part packaging"
msgstr ""
-#: company/models.py:606 templates/js/translated/company.js:1261
-#: templates/js/translated/part.js:1793 templates/js/translated/part.js:1848
-#: templates/js/translated/purchase_order.js:300
-#: templates/js/translated/purchase_order.js:827
-#: templates/js/translated/purchase_order.js:1073
-#: templates/js/translated/purchase_order.js:2052
-#: templates/js/translated/purchase_order.js:2069
+#: company/models.py:755 templates/js/translated/company.js:1682
+#: templates/js/translated/part.js:1792 templates/js/translated/part.js:1847
+#: templates/js/translated/purchase_order.js:311
+#: templates/js/translated/purchase_order.js:842
+#: templates/js/translated/purchase_order.js:1088
+#: templates/js/translated/purchase_order.js:2062
+#: templates/js/translated/purchase_order.js:2079
msgid "Pack Quantity"
msgstr ""
-#: company/models.py:607
+#: company/models.py:756
msgid "Total quantity supplied in a single pack. Leave empty for single items."
msgstr ""
-#: company/models.py:624 part/models.py:1921
+#: company/models.py:773 part/models.py:1923
msgid "multiple"
msgstr ""
-#: company/models.py:624
+#: company/models.py:773
msgid "Order multiple"
msgstr ""
-#: company/models.py:632 company/templates/company/supplier_part.html:115
+#: company/models.py:781 company/templates/company/supplier_part.html:115
#: templates/email/build_order_required_stock.html:19
#: templates/email/low_stock_notification.html:17
-#: templates/js/translated/bom.js:1127 templates/js/translated/build.js:2136
-#: templates/js/translated/build.js:3045
-#: templates/js/translated/model_renderers.js:205
-#: templates/js/translated/part.js:670 templates/js/translated/part.js:672
-#: templates/js/translated/part.js:677
-#: templates/js/translated/table_filters.js:286
-#: templates/js/translated/table_filters.js:492
+#: templates/js/translated/bom.js:1145 templates/js/translated/build.js:2490
+#: templates/js/translated/index.js:118
+#: templates/js/translated/model_renderers.js:219
+#: templates/js/translated/part.js:669 templates/js/translated/part.js:671
+#: templates/js/translated/part.js:676
+#: templates/js/translated/table_filters.js:292
+#: templates/js/translated/table_filters.js:510
msgid "Available"
msgstr ""
-#: company/models.py:633
+#: company/models.py:782
msgid "Quantity available from supplier"
msgstr ""
-#: company/models.py:637
+#: company/models.py:786
msgid "Availability Updated"
msgstr ""
-#: company/models.py:638
+#: company/models.py:787
msgid "Date of last update of availability data"
msgstr ""
-#: company/serializers.py:99
+#: company/serializers.py:156
msgid "Default currency used for this supplier"
msgstr ""
#: company/templates/company/company_base.html:22
-#: templates/js/translated/purchase_order.js:228
+#: templates/js/translated/purchase_order.js:239
msgid "Create Purchase Order"
msgstr ""
@@ -3816,7 +3878,7 @@ msgid "Edit company information"
msgstr ""
#: company/templates/company/company_base.html:34
-#: templates/js/translated/company.js:436
+#: templates/js/translated/company.js:443
msgid "Edit Company"
msgstr ""
@@ -3856,17 +3918,17 @@ msgstr ""
msgid "Delete image"
msgstr ""
-#: company/templates/company/company_base.html:87 order/models.py:779
-#: order/models.py:1738 order/templates/order/return_order_base.html:132
+#: company/templates/company/company_base.html:87 order/models.py:792
+#: order/models.py:1751 order/templates/order/return_order_base.html:132
#: order/templates/order/sales_order_base.html:145 stock/models.py:720
-#: stock/models.py:721 stock/serializers.py:825
+#: stock/models.py:721 stock/serializers.py:942
#: stock/templates/stock/item_base.html:401
#: templates/email/overdue_sales_order.html:16
-#: templates/js/translated/company.js:494
-#: templates/js/translated/return_order.js:284
-#: templates/js/translated/sales_order.js:772
-#: templates/js/translated/stock.js:2696
-#: templates/js/translated/table_filters.js:717
+#: templates/js/translated/company.js:501
+#: templates/js/translated/return_order.js:296
+#: templates/js/translated/sales_order.js:784
+#: templates/js/translated/stock.js:2827
+#: templates/js/translated/table_filters.js:739
msgid "Customer"
msgstr ""
@@ -3874,6 +3936,13 @@ msgstr ""
msgid "Uses default currency"
msgstr ""
+#: company/templates/company/company_base.html:119 order/models.py:279
+#: order/templates/order/order_base.html:210
+#: order/templates/order/return_order_base.html:182
+#: order/templates/order/sales_order_base.html:222
+msgid "Address"
+msgstr ""
+
#: company/templates/company/company_base.html:126
msgid "Phone"
msgstr ""
@@ -3906,7 +3975,7 @@ msgstr ""
#: company/templates/company/detail.html:15
#: company/templates/company/manufacturer_part_sidebar.html:7
-#: templates/InvenTree/search.html:120 templates/js/translated/search.js:189
+#: templates/InvenTree/search.html:120 templates/js/translated/search.js:147
msgid "Supplier Parts"
msgstr ""
@@ -3916,129 +3985,121 @@ msgstr ""
#: company/templates/company/detail.html:20
#: company/templates/company/manufacturer_part.html:123
-#: part/templates/part/detail.html:381
+#: part/templates/part/detail.html:356
msgid "New Supplier Part"
msgstr ""
-#: company/templates/company/detail.html:37
-#: company/templates/company/detail.html:85
-#: part/templates/part/category.html:183
-msgid "Order parts"
-msgstr ""
-
-#: company/templates/company/detail.html:42
-#: company/templates/company/detail.html:90
-msgid "Delete parts"
-msgstr ""
-
-#: company/templates/company/detail.html:43
-#: company/templates/company/detail.html:91
-msgid "Delete Parts"
-msgstr ""
-
-#: company/templates/company/detail.html:62 templates/InvenTree/search.html:105
-#: templates/js/translated/search.js:193
+#: company/templates/company/detail.html:41 templates/InvenTree/search.html:105
+#: templates/js/translated/search.js:151
msgid "Manufacturer Parts"
msgstr ""
-#: company/templates/company/detail.html:66
+#: company/templates/company/detail.html:45
msgid "Create new manufacturer part"
msgstr ""
-#: company/templates/company/detail.html:67 part/templates/part/detail.html:411
+#: company/templates/company/detail.html:46 part/templates/part/detail.html:376
msgid "New Manufacturer Part"
msgstr ""
-#: company/templates/company/detail.html:108
+#: company/templates/company/detail.html:65
msgid "Supplier Stock"
msgstr ""
-#: company/templates/company/detail.html:118
+#: company/templates/company/detail.html:75
#: company/templates/company/sidebar.html:12
#: company/templates/company/supplier_part_sidebar.html:7
#: 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:108 part/templates/part/part_sidebar.html:35
-#: templates/InvenTree/index.html:275 templates/InvenTree/search.html:199
+#: part/templates/part/detail.html:106 part/templates/part/part_sidebar.html:35
+#: templates/InvenTree/index.html:227 templates/InvenTree/search.html:199
#: templates/InvenTree/settings/sidebar.html:55
-#: templates/js/translated/search.js:247 templates/navbar.html:50
+#: templates/js/translated/search.js:205 templates/navbar.html:50
#: users/models.py:43
msgid "Purchase Orders"
msgstr ""
-#: company/templates/company/detail.html:122
+#: company/templates/company/detail.html:79
#: order/templates/order/purchase_orders.html:17
msgid "Create new purchase order"
msgstr ""
-#: company/templates/company/detail.html:123
+#: company/templates/company/detail.html:80
#: order/templates/order/purchase_orders.html:18
msgid "New Purchase Order"
msgstr ""
-#: company/templates/company/detail.html:146
+#: company/templates/company/detail.html:101
#: company/templates/company/sidebar.html:21
#: 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:131 part/templates/part/part_sidebar.html:39
-#: templates/InvenTree/index.html:307 templates/InvenTree/search.html:219
+#: part/templates/part/detail.html:127 part/templates/part/part_sidebar.html:39
+#: templates/InvenTree/index.html:259 templates/InvenTree/search.html:219
#: templates/InvenTree/settings/sidebar.html:57
-#: templates/js/translated/search.js:261 templates/navbar.html:62
+#: templates/js/translated/search.js:219 templates/navbar.html:62
#: users/models.py:44
msgid "Sales Orders"
msgstr ""
-#: company/templates/company/detail.html:150
+#: company/templates/company/detail.html:105
#: order/templates/order/sales_orders.html:20
msgid "Create new sales order"
msgstr ""
-#: company/templates/company/detail.html:151
+#: company/templates/company/detail.html:106
#: order/templates/order/sales_orders.html:21
msgid "New Sales Order"
msgstr ""
-#: company/templates/company/detail.html:173
-#: templates/js/translated/build.js:1976
+#: company/templates/company/detail.html:126
msgid "Assigned Stock"
msgstr ""
-#: company/templates/company/detail.html:191
+#: company/templates/company/detail.html:142
#: company/templates/company/sidebar.html:29
#: order/templates/order/return_order_base.html:13
#: order/templates/order/return_orders.html:8
#: order/templates/order/return_orders.html:15
#: templates/InvenTree/settings/sidebar.html:59
-#: templates/js/translated/search.js:274 templates/navbar.html:65
+#: templates/js/translated/search.js:232 templates/navbar.html:65
#: users/models.py:45
msgid "Return Orders"
msgstr ""
-#: company/templates/company/detail.html:195
+#: company/templates/company/detail.html:146
#: order/templates/order/return_orders.html:20
msgid "Create new return order"
msgstr ""
-#: company/templates/company/detail.html:196
+#: company/templates/company/detail.html:147
#: order/templates/order/return_orders.html:21
msgid "New Return Order"
msgstr ""
-#: company/templates/company/detail.html:221
+#: company/templates/company/detail.html:168
msgid "Company Notes"
msgstr ""
-#: company/templates/company/detail.html:236
+#: company/templates/company/detail.html:183
msgid "Company Contacts"
msgstr ""
-#: company/templates/company/detail.html:240
-#: company/templates/company/detail.html:241
+#: company/templates/company/detail.html:187
+#: company/templates/company/detail.html:188
msgid "Add Contact"
msgstr ""
+#: company/templates/company/detail.html:206
+msgid "Company addresses"
+msgstr ""
+
+#: company/templates/company/detail.html:210
+#: company/templates/company/detail.html:211
+msgid "Add Address"
+msgstr ""
+
#: company/templates/company/index.html:8
msgid "Supplier List"
msgstr ""
@@ -4050,17 +4111,17 @@ msgstr ""
#: company/templates/company/manufacturer_part.html:35
#: company/templates/company/supplier_part.html:228
-#: part/templates/part/detail.html:111 part/templates/part/part_base.html:85
+#: part/templates/part/detail.html:109 part/templates/part/part_base.html:85
msgid "Order part"
msgstr ""
#: company/templates/company/manufacturer_part.html:39
-#: templates/js/translated/company.js:1001
+#: templates/js/translated/company.js:1374
msgid "Edit manufacturer part"
msgstr ""
#: company/templates/company/manufacturer_part.html:43
-#: templates/js/translated/company.js:1002
+#: templates/js/translated/company.js:1375
msgid "Delete manufacturer part"
msgstr ""
@@ -4080,40 +4141,22 @@ msgstr ""
msgid "Suppliers"
msgstr ""
-#: company/templates/company/manufacturer_part.html:136
-#: part/templates/part/detail.html:392
-msgid "Delete supplier parts"
-msgstr ""
-
-#: company/templates/company/manufacturer_part.html:136
-#: company/templates/company/manufacturer_part.html:183
-#: part/templates/part/detail.html:393 part/templates/part/detail.html:423
-#: templates/js/translated/forms.js:506 templates/js/translated/helpers.js:105
-#: templates/js/translated/part.js:370 templates/js/translated/pricing.js:629
-#: templates/js/translated/stock.js:216 users/models.py:247
-msgid "Delete"
-msgstr ""
-
-#: company/templates/company/manufacturer_part.html:166
+#: company/templates/company/manufacturer_part.html:156
#: company/templates/company/manufacturer_part_sidebar.html:5
#: part/templates/part/category_sidebar.html:20
-#: part/templates/part/detail.html:208 part/templates/part/part_sidebar.html:8
+#: part/templates/part/detail.html:195 part/templates/part/part_sidebar.html:8
msgid "Parameters"
msgstr ""
-#: company/templates/company/manufacturer_part.html:170
-#: part/templates/part/detail.html:213
+#: company/templates/company/manufacturer_part.html:160
+#: part/templates/part/detail.html:200
#: templates/InvenTree/settings/category.html:12
#: templates/InvenTree/settings/part_parameters.html:12
msgid "New Parameter"
msgstr ""
-#: company/templates/company/manufacturer_part.html:183
-msgid "Delete parameters"
-msgstr ""
-
-#: company/templates/company/manufacturer_part.html:226
-#: templates/js/translated/part.js:1396
+#: company/templates/company/manufacturer_part.html:206
+#: templates/js/translated/part.js:1395
msgid "Add Parameter"
msgstr ""
@@ -4137,23 +4180,28 @@ msgstr ""
msgid "Contacts"
msgstr ""
+#: company/templates/company/sidebar.html:35
+msgid "Addresses"
+msgstr ""
+
#: company/templates/company/supplier_part.html:7
#: company/templates/company/supplier_part.html:24 stock/models.py:684
#: stock/templates/stock/item_base.html:234
-#: templates/js/translated/company.js:1210
-#: templates/js/translated/purchase_order.js:747
-#: templates/js/translated/stock.js:2016
+#: templates/js/translated/company.js:1631
+#: templates/js/translated/purchase_order.js:758
+#: templates/js/translated/stock.js:2173
msgid "Supplier Part"
msgstr ""
#: company/templates/company/supplier_part.html:51
+#: templates/js/translated/company.js:1557
msgid "Supplier part actions"
msgstr ""
#: company/templates/company/supplier_part.html:56
#: company/templates/company/supplier_part.html:57
#: company/templates/company/supplier_part.html:229
-#: part/templates/part/detail.html:112
+#: part/templates/part/detail.html:110
msgid "Order Part"
msgstr ""
@@ -4164,13 +4212,13 @@ msgstr ""
#: company/templates/company/supplier_part.html:64
#: company/templates/company/supplier_part.html:65
-#: templates/js/translated/company.js:283
+#: templates/js/translated/company.js:293
msgid "Edit Supplier Part"
msgstr ""
#: company/templates/company/supplier_part.html:69
#: company/templates/company/supplier_part.html:70
-#: templates/js/translated/company.js:258
+#: templates/js/translated/company.js:268
msgid "Duplicate Supplier Part"
msgstr ""
@@ -4197,7 +4245,7 @@ msgstr ""
#: company/templates/company/supplier_part.html:211
#: part/templates/part/detail.html:25 stock/templates/stock/location.html:198
-#: templates/js/translated/stock.js:504
+#: templates/js/translated/stock.js:503
msgid "New Stock Item"
msgstr ""
@@ -4205,37 +4253,37 @@ msgstr ""
msgid "Supplier Part Orders"
msgstr ""
-#: company/templates/company/supplier_part.html:249
+#: company/templates/company/supplier_part.html:247
msgid "Pricing Information"
msgstr ""
-#: company/templates/company/supplier_part.html:254
-#: templates/js/translated/company.js:387
+#: company/templates/company/supplier_part.html:252
+#: templates/js/translated/company.js:397
#: templates/js/translated/pricing.js:684
msgid "Add Price Break"
msgstr ""
-#: company/templates/company/supplier_part.html:281
+#: company/templates/company/supplier_part.html:277
msgid "Supplier Part QR Code"
msgstr ""
-#: company/templates/company/supplier_part.html:292
+#: company/templates/company/supplier_part.html:288
msgid "Link Barcode to Supplier Part"
msgstr ""
-#: company/templates/company/supplier_part.html:365
+#: company/templates/company/supplier_part.html:361
msgid "Update Part Availability"
msgstr ""
#: company/templates/company/supplier_part_sidebar.html:5 part/tasks.py:293
-#: part/templates/part/category.html:199
+#: part/templates/part/category.html:182
#: part/templates/part/category_sidebar.html:17 stock/admin.py:47
-#: stock/templates/stock/location.html:168
+#: stock/serializers.py:662 stock/templates/stock/location.html:168
#: stock/templates/stock/location.html:182
#: stock/templates/stock/location.html:194
#: stock/templates/stock/location_sidebar.html:7
-#: templates/InvenTree/search.html:155 templates/js/translated/part.js:1034
-#: templates/js/translated/search.js:214 templates/js/translated/stock.js:2514
+#: templates/InvenTree/search.html:155 templates/js/translated/part.js:1033
+#: templates/js/translated/search.js:172 templates/js/translated/stock.js:2645
#: users/models.py:41
msgid "Stock Items"
msgstr ""
@@ -4261,7 +4309,7 @@ msgstr ""
msgid "New Customer"
msgstr ""
-#: company/views.py:52 templates/js/translated/search.js:234
+#: company/views.py:52 templates/js/translated/search.js:192
msgid "Companies"
msgstr ""
@@ -4269,72 +4317,76 @@ msgstr ""
msgid "New Company"
msgstr ""
-#: label/models.py:104
+#: label/models.py:112
msgid "Label name"
msgstr ""
-#: label/models.py:111
+#: label/models.py:119
msgid "Label description"
msgstr ""
-#: label/models.py:118
+#: label/models.py:126
msgid "Label"
msgstr ""
-#: label/models.py:119
+#: label/models.py:127
msgid "Label template file"
msgstr ""
-#: label/models.py:125 report/models.py:273
+#: label/models.py:133 report/models.py:273
msgid "Enabled"
msgstr ""
-#: label/models.py:126
+#: label/models.py:134
msgid "Label template is enabled"
msgstr ""
-#: label/models.py:131
+#: label/models.py:139
msgid "Width [mm]"
msgstr ""
-#: label/models.py:132
+#: label/models.py:140
msgid "Label width, specified in mm"
msgstr ""
-#: label/models.py:138
+#: label/models.py:146
msgid "Height [mm]"
msgstr ""
-#: label/models.py:139
+#: label/models.py:147
msgid "Label height, specified in mm"
msgstr ""
-#: label/models.py:145 report/models.py:266
+#: label/models.py:153 report/models.py:266
msgid "Filename Pattern"
msgstr ""
-#: label/models.py:146
+#: label/models.py:154
msgid "Pattern for generating label filenames"
msgstr ""
-#: label/models.py:242
+#: label/models.py:250
msgid "Query filters (comma-separated list of key=value pairs),"
msgstr ""
-#: label/models.py:243 label/models.py:284 label/models.py:312
-#: report/models.py:294 report/models.py:452 report/models.py:490
-#: report/models.py:528
+#: label/models.py:251 label/models.py:292 label/models.py:320
+#: label/models.py:356 report/models.py:294 report/models.py:454
+#: report/models.py:492 report/models.py:530
msgid "Filters"
msgstr ""
-#: label/models.py:283
+#: label/models.py:291
msgid "Query filters (comma-separated list of key=value pairs"
msgstr ""
-#: label/models.py:311
+#: label/models.py:319
msgid "Part query filters (comma-separated value of key=value pairs)"
msgstr ""
+#: label/models.py:355
+msgid "Query filters (comma-separated list of key=value pairs)"
+msgstr ""
+
#: label/templates/label/part/part_label.html:31
#: label/templates/label/stockitem/qr.html:21
#: label/templates/label/stocklocation/qr.html:21
@@ -4352,8 +4404,8 @@ msgstr ""
#: report/templates/report/inventree_po_report_base.html:31
#: report/templates/report/inventree_so_report_base.html:31
#: templates/js/translated/order.js:327
-#: templates/js/translated/purchase_order.js:2093
-#: templates/js/translated/sales_order.js:1827
+#: templates/js/translated/purchase_order.js:2103
+#: templates/js/translated/sales_order.js:1839
msgid "Total Price"
msgstr ""
@@ -4361,30 +4413,30 @@ msgstr ""
msgid "No matching purchase order found"
msgstr ""
-#: order/api.py:1452 order/models.py:1178 order/models.py:1262
+#: order/api.py:1452 order/models.py:1191 order/models.py:1275
#: order/templates/order/order_base.html:9
#: order/templates/order/order_base.html:18
#: report/templates/report/inventree_po_report_base.html:14
#: stock/templates/stock/item_base.html:177
#: templates/email/overdue_purchase_order.html:15
-#: templates/js/translated/part.js:1718 templates/js/translated/pricing.js:790
-#: templates/js/translated/purchase_order.js:154
-#: templates/js/translated/purchase_order.js:748
-#: templates/js/translated/purchase_order.js:1637
-#: templates/js/translated/stock.js:1996 templates/js/translated/stock.js:2644
+#: templates/js/translated/part.js:1717 templates/js/translated/pricing.js:790
+#: templates/js/translated/purchase_order.js:165
+#: templates/js/translated/purchase_order.js:759
+#: templates/js/translated/purchase_order.js:1652
+#: templates/js/translated/stock.js:2153 templates/js/translated/stock.js:2775
msgid "Purchase Order"
msgstr ""
-#: order/api.py:1456 order/models.py:1909 order/models.py:1955
+#: order/api.py:1456 order/models.py:1922 order/models.py:1968
#: order/templates/order/return_order_base.html:9
#: order/templates/order/return_order_base.html:28
#: report/templates/report/inventree_return_order_report_base.html:13
-#: templates/js/translated/return_order.js:269
-#: templates/js/translated/stock.js:2678
+#: templates/js/translated/return_order.js:281
+#: templates/js/translated/stock.js:2809
msgid "Return Order"
msgstr ""
-#: order/api.py:1458 templates/js/translated/sales_order.js:1030
+#: order/api.py:1458 templates/js/translated/sales_order.js:1042
msgid "Unknown"
msgstr ""
@@ -4392,11 +4444,11 @@ msgstr ""
msgid "Total price for this order"
msgstr ""
-#: order/models.py:79 order/serializers.py:49
+#: order/models.py:79 order/serializers.py:50
msgid "Order Currency"
msgstr ""
-#: order/models.py:81 order/serializers.py:50
+#: order/models.py:81 order/serializers.py:51
msgid "Currency for this order (leave blank to use company default)"
msgstr ""
@@ -4408,492 +4460,496 @@ msgstr ""
msgid "Order description (optional)"
msgstr ""
-#: order/models.py:234
+#: order/models.py:237
msgid "Select project code for this order"
msgstr ""
-#: order/models.py:236 order/models.py:1094 order/models.py:1454
+#: order/models.py:240 order/models.py:1107 order/models.py:1467
msgid "Link to external page"
msgstr ""
-#: order/models.py:241
+#: order/models.py:245
msgid "Expected date for order delivery. Order will be overdue after this date."
msgstr ""
-#: order/models.py:250
+#: order/models.py:254
msgid "Created By"
msgstr ""
-#: order/models.py:257
+#: order/models.py:261
msgid "User or group responsible for this order"
msgstr ""
-#: order/models.py:267
+#: order/models.py:271
msgid "Point of contact for this order"
msgstr ""
-#: order/models.py:360 order/models.py:766
+#: order/models.py:280
+msgid "Company address for this order"
+msgstr ""
+
+#: order/models.py:373 order/models.py:779
msgid "Order reference"
msgstr ""
-#: order/models.py:368 order/models.py:791
+#: order/models.py:381 order/models.py:804
msgid "Purchase order status"
msgstr ""
-#: order/models.py:383
+#: order/models.py:396
msgid "Company from which the items are being ordered"
msgstr ""
-#: order/models.py:391 order/templates/order/order_base.html:152
-#: templates/js/translated/purchase_order.js:1662
+#: order/models.py:404 order/templates/order/order_base.html:148
+#: templates/js/translated/purchase_order.js:1677
msgid "Supplier Reference"
msgstr ""
-#: order/models.py:391
+#: order/models.py:404
msgid "Supplier order reference code"
msgstr ""
-#: order/models.py:398
+#: order/models.py:411
msgid "received by"
msgstr ""
-#: order/models.py:403 order/models.py:1761
+#: order/models.py:416 order/models.py:1774
msgid "Issue Date"
msgstr ""
-#: order/models.py:404 order/models.py:1762
+#: order/models.py:417 order/models.py:1775
msgid "Date order was issued"
msgstr ""
-#: order/models.py:410 order/models.py:1768
+#: order/models.py:423 order/models.py:1781
msgid "Date order was completed"
msgstr ""
-#: order/models.py:445
+#: order/models.py:458
msgid "Part supplier must match PO supplier"
msgstr ""
-#: order/models.py:606
+#: order/models.py:619
msgid "Quantity must be a positive number"
msgstr ""
-#: order/models.py:780
+#: order/models.py:793
msgid "Company to which the items are being sold"
msgstr ""
-#: order/models.py:799 order/models.py:1755
+#: order/models.py:812 order/models.py:1768
msgid "Customer Reference "
msgstr ""
-#: order/models.py:799 order/models.py:1756
+#: order/models.py:812 order/models.py:1769
msgid "Customer order reference code"
msgstr ""
-#: order/models.py:801 order/models.py:1408
-#: templates/js/translated/sales_order.js:831
-#: templates/js/translated/sales_order.js:1012
+#: order/models.py:814 order/models.py:1421
+#: templates/js/translated/sales_order.js:843
+#: templates/js/translated/sales_order.js:1024
msgid "Shipment Date"
msgstr ""
-#: order/models.py:808
+#: order/models.py:821
msgid "shipped by"
msgstr ""
-#: order/models.py:857
+#: order/models.py:870
msgid "Order cannot be completed as no parts have been assigned"
msgstr ""
-#: order/models.py:861
+#: order/models.py:874
msgid "Only an open order can be marked as complete"
msgstr ""
-#: order/models.py:864 templates/js/translated/sales_order.js:491
+#: order/models.py:877 templates/js/translated/sales_order.js:503
msgid "Order cannot be completed as there are incomplete shipments"
msgstr ""
-#: order/models.py:867
+#: order/models.py:880
msgid "Order cannot be completed as there are incomplete line items"
msgstr ""
-#: order/models.py:1074
+#: order/models.py:1087
msgid "Item quantity"
msgstr ""
-#: order/models.py:1087
+#: order/models.py:1100
msgid "Line item reference"
msgstr ""
-#: order/models.py:1089
+#: order/models.py:1102
msgid "Line item notes"
msgstr ""
-#: order/models.py:1100
+#: order/models.py:1113
msgid "Target date for this line item (leave blank to use the target date from the order)"
msgstr ""
-#: order/models.py:1118
+#: order/models.py:1131
msgid "Line item description (optional)"
msgstr ""
-#: order/models.py:1123
+#: order/models.py:1136
msgid "Context"
msgstr ""
-#: order/models.py:1124
+#: order/models.py:1137
msgid "Additional context for this line"
msgstr ""
-#: order/models.py:1133
+#: order/models.py:1146
msgid "Unit price"
msgstr ""
-#: order/models.py:1163
+#: order/models.py:1176
msgid "Supplier part must match supplier"
msgstr ""
-#: order/models.py:1171
+#: order/models.py:1184
msgid "deleted"
msgstr ""
-#: order/models.py:1177 order/models.py:1262 order/models.py:1303
-#: order/models.py:1402 order/models.py:1551 order/models.py:1908
-#: order/models.py:1955 templates/js/translated/sales_order.js:1474
+#: order/models.py:1190 order/models.py:1275 order/models.py:1316
+#: order/models.py:1415 order/models.py:1564 order/models.py:1921
+#: order/models.py:1968 templates/js/translated/sales_order.js:1486
msgid "Order"
msgstr ""
-#: order/models.py:1196
+#: order/models.py:1209
msgid "Supplier part"
msgstr ""
-#: order/models.py:1203 order/templates/order/order_base.html:200
-#: templates/js/translated/part.js:1841 templates/js/translated/part.js:1872
-#: templates/js/translated/purchase_order.js:1276
-#: templates/js/translated/purchase_order.js:2137
-#: templates/js/translated/return_order.js:748
-#: templates/js/translated/table_filters.js:90
-#: templates/js/translated/table_filters.js:515
+#: order/models.py:1216 order/templates/order/order_base.html:196
+#: templates/js/translated/part.js:1840 templates/js/translated/part.js:1871
+#: templates/js/translated/purchase_order.js:1291
+#: templates/js/translated/purchase_order.js:2147
+#: templates/js/translated/return_order.js:760
+#: templates/js/translated/table_filters.js:96
+#: templates/js/translated/table_filters.js:537
msgid "Received"
msgstr ""
-#: order/models.py:1204
+#: order/models.py:1217
msgid "Number of items received"
msgstr ""
-#: order/models.py:1211 stock/models.py:823 stock/serializers.py:252
+#: order/models.py:1224 stock/models.py:823 stock/serializers.py:314
#: stock/templates/stock/item_base.html:184
-#: templates/js/translated/stock.js:2047
+#: templates/js/translated/stock.js:2204
msgid "Purchase Price"
msgstr ""
-#: order/models.py:1212
+#: order/models.py:1225
msgid "Unit purchase price"
msgstr ""
-#: order/models.py:1225
+#: order/models.py:1238
msgid "Where does the Purchaser want this item to be stored?"
msgstr ""
-#: order/models.py:1291
+#: order/models.py:1304
msgid "Virtual part cannot be assigned to a sales order"
msgstr ""
-#: order/models.py:1296
+#: order/models.py:1309
msgid "Only salable parts can be assigned to a sales order"
msgstr ""
-#: order/models.py:1322 part/templates/part/part_pricing.html:107
+#: order/models.py:1335 part/templates/part/part_pricing.html:107
#: part/templates/part/prices.html:128 templates/js/translated/pricing.js:943
msgid "Sale Price"
msgstr ""
-#: order/models.py:1323
+#: order/models.py:1336
msgid "Unit sale price"
msgstr ""
-#: order/models.py:1333
+#: order/models.py:1346
msgid "Shipped quantity"
msgstr ""
-#: order/models.py:1409
+#: order/models.py:1422
msgid "Date of shipment"
msgstr ""
-#: order/models.py:1414 templates/js/translated/sales_order.js:1024
+#: order/models.py:1427 templates/js/translated/sales_order.js:1036
msgid "Delivery Date"
msgstr ""
-#: order/models.py:1415
+#: order/models.py:1428
msgid "Date of delivery of shipment"
msgstr ""
-#: order/models.py:1422
+#: order/models.py:1435
msgid "Checked By"
msgstr ""
-#: order/models.py:1423
+#: order/models.py:1436
msgid "User who checked this shipment"
msgstr ""
-#: order/models.py:1430 order/models.py:1627 order/serializers.py:1248
-#: order/serializers.py:1376 templates/js/translated/model_renderers.js:415
+#: order/models.py:1443 order/models.py:1640 order/serializers.py:1254
+#: order/serializers.py:1382 templates/js/translated/model_renderers.js:429
msgid "Shipment"
msgstr ""
-#: order/models.py:1431
+#: order/models.py:1444
msgid "Shipment number"
msgstr ""
-#: order/models.py:1439
+#: order/models.py:1452
msgid "Tracking Number"
msgstr ""
-#: order/models.py:1440
+#: order/models.py:1453
msgid "Shipment tracking information"
msgstr ""
-#: order/models.py:1447
+#: order/models.py:1460
msgid "Invoice Number"
msgstr ""
-#: order/models.py:1448
+#: order/models.py:1461
msgid "Reference number for associated invoice"
msgstr ""
-#: order/models.py:1470
+#: order/models.py:1483
msgid "Shipment has already been sent"
msgstr ""
-#: order/models.py:1473
+#: order/models.py:1486
msgid "Shipment has no allocated stock items"
msgstr ""
-#: order/models.py:1586 order/models.py:1588
+#: order/models.py:1599 order/models.py:1601
msgid "Stock item has not been assigned"
msgstr ""
-#: order/models.py:1592
+#: order/models.py:1605
msgid "Cannot allocate stock item to a line with a different part"
msgstr ""
-#: order/models.py:1594
+#: order/models.py:1607
msgid "Cannot allocate stock to a line without a part"
msgstr ""
-#: order/models.py:1597
+#: order/models.py:1610
msgid "Allocation quantity cannot exceed stock quantity"
msgstr ""
-#: order/models.py:1607 order/serializers.py:1110
+#: order/models.py:1620 order/serializers.py:1116
msgid "Quantity must be 1 for serialized stock item"
msgstr ""
-#: order/models.py:1610
+#: order/models.py:1623
msgid "Sales order does not match shipment"
msgstr ""
-#: order/models.py:1611
+#: order/models.py:1624
msgid "Shipment does not match sales order"
msgstr ""
-#: order/models.py:1619
+#: order/models.py:1632
msgid "Line"
msgstr ""
-#: order/models.py:1628
+#: order/models.py:1641
msgid "Sales order shipment reference"
msgstr ""
-#: order/models.py:1641 order/models.py:1916
-#: templates/js/translated/return_order.js:706
+#: order/models.py:1654 order/models.py:1929
+#: templates/js/translated/return_order.js:718
msgid "Item"
msgstr ""
-#: order/models.py:1642
+#: order/models.py:1655
msgid "Select stock item to allocate"
msgstr ""
-#: order/models.py:1645
+#: order/models.py:1658
msgid "Enter stock allocation quantity"
msgstr ""
-#: order/models.py:1725
+#: order/models.py:1738
msgid "Return Order reference"
msgstr ""
-#: order/models.py:1739
+#: order/models.py:1752
msgid "Company from which items are being returned"
msgstr ""
-#: order/models.py:1750
+#: order/models.py:1763
msgid "Return order status"
msgstr ""
-#: order/models.py:1901
+#: order/models.py:1914
msgid "Only serialized items can be assigned to a Return Order"
msgstr ""
-#: order/models.py:1917
+#: order/models.py:1930
msgid "Select item to return from customer"
msgstr ""
-#: order/models.py:1922
+#: order/models.py:1935
msgid "Received Date"
msgstr ""
-#: order/models.py:1923
+#: order/models.py:1936
msgid "The date this this return item was received"
msgstr ""
-#: order/models.py:1934 templates/js/translated/return_order.js:717
-#: templates/js/translated/table_filters.js:93
+#: order/models.py:1947 templates/js/translated/return_order.js:729
+#: templates/js/translated/table_filters.js:99
msgid "Outcome"
msgstr ""
-#: order/models.py:1934
+#: order/models.py:1947
msgid "Outcome for this line item"
msgstr ""
-#: order/models.py:1940
+#: order/models.py:1953
msgid "Cost associated with return or repair for this line item"
msgstr ""
-#: order/serializers.py:247
+#: order/serializers.py:253
msgid "Order cannot be cancelled"
msgstr ""
-#: order/serializers.py:262 order/serializers.py:1128
+#: order/serializers.py:268 order/serializers.py:1134
msgid "Allow order to be closed with incomplete line items"
msgstr ""
-#: order/serializers.py:273 order/serializers.py:1139
+#: order/serializers.py:279 order/serializers.py:1145
msgid "Order has incomplete line items"
msgstr ""
-#: order/serializers.py:386
+#: order/serializers.py:392
msgid "Order is not open"
msgstr ""
-#: order/serializers.py:404
+#: order/serializers.py:410
msgid "Purchase price currency"
msgstr ""
-#: order/serializers.py:422
+#: order/serializers.py:428
msgid "Supplier part must be specified"
msgstr ""
-#: order/serializers.py:427
+#: order/serializers.py:433
msgid "Purchase order must be specified"
msgstr ""
-#: order/serializers.py:433
+#: order/serializers.py:439
msgid "Supplier must match purchase order"
msgstr ""
-#: order/serializers.py:434
+#: order/serializers.py:440
msgid "Purchase order must match supplier"
msgstr ""
-#: order/serializers.py:472 order/serializers.py:1216
+#: order/serializers.py:478 order/serializers.py:1222
msgid "Line Item"
msgstr ""
-#: order/serializers.py:478
+#: order/serializers.py:484
msgid "Line item does not match purchase order"
msgstr ""
-#: order/serializers.py:488 order/serializers.py:607 order/serializers.py:1589
+#: order/serializers.py:494 order/serializers.py:613 order/serializers.py:1595
msgid "Select destination location for received items"
msgstr ""
-#: order/serializers.py:507 templates/js/translated/purchase_order.js:1100
+#: order/serializers.py:513 templates/js/translated/purchase_order.js:1115
msgid "Enter batch code for incoming stock items"
msgstr ""
-#: order/serializers.py:515 templates/js/translated/purchase_order.js:1124
+#: order/serializers.py:521 templates/js/translated/purchase_order.js:1139
msgid "Enter serial numbers for incoming stock items"
msgstr ""
-#: order/serializers.py:528 templates/js/translated/barcode.js:52
+#: order/serializers.py:534 templates/js/translated/barcode.js:52
msgid "Barcode"
msgstr ""
-#: order/serializers.py:529
+#: order/serializers.py:535
msgid "Scanned barcode"
msgstr ""
-#: order/serializers.py:545
+#: order/serializers.py:551
msgid "Barcode is already in use"
msgstr ""
-#: order/serializers.py:569
+#: order/serializers.py:575
msgid "An integer quantity must be provided for trackable parts"
msgstr ""
-#: order/serializers.py:623 order/serializers.py:1604
+#: order/serializers.py:629 order/serializers.py:1610
msgid "Line items must be provided"
msgstr ""
-#: order/serializers.py:640
+#: order/serializers.py:646
msgid "Destination location must be specified"
msgstr ""
-#: order/serializers.py:651
+#: order/serializers.py:657
msgid "Supplied barcode values must be unique"
msgstr ""
-#: order/serializers.py:950
+#: order/serializers.py:956
msgid "Sale price currency"
msgstr ""
-#: order/serializers.py:1007
+#: order/serializers.py:1013
msgid "No shipment details provided"
msgstr ""
-#: order/serializers.py:1071 order/serializers.py:1225
+#: order/serializers.py:1077 order/serializers.py:1231
msgid "Line item is not associated with this order"
msgstr ""
-#: order/serializers.py:1093
+#: order/serializers.py:1099
msgid "Quantity must be positive"
msgstr ""
-#: order/serializers.py:1238
+#: order/serializers.py:1244
msgid "Enter serial numbers to allocate"
msgstr ""
-#: order/serializers.py:1260 order/serializers.py:1384
+#: order/serializers.py:1266 order/serializers.py:1390
msgid "Shipment has already been shipped"
msgstr ""
-#: order/serializers.py:1263 order/serializers.py:1387
+#: order/serializers.py:1269 order/serializers.py:1393
msgid "Shipment is not associated with this order"
msgstr ""
-#: order/serializers.py:1317
+#: order/serializers.py:1323
msgid "No match found for the following serial numbers"
msgstr ""
-#: order/serializers.py:1327
+#: order/serializers.py:1333
msgid "The following serial numbers are already allocated"
msgstr ""
-#: order/serializers.py:1555
+#: order/serializers.py:1561
msgid "Return order line item"
msgstr ""
-#: order/serializers.py:1562
+#: order/serializers.py:1568
msgid "Line item does not match return order"
msgstr ""
-#: order/serializers.py:1565
+#: order/serializers.py:1571
msgid "Line item has already been received"
msgstr ""
-#: order/serializers.py:1597
+#: order/serializers.py:1603
msgid "Items can only be received against orders which are in progress"
msgstr ""
-#: order/serializers.py:1678
+#: order/serializers.py:1684
msgid "Line price currency"
msgstr ""
@@ -4957,82 +5013,74 @@ msgid "Issue Order"
msgstr ""
#: order/templates/order/order_base.html:83
-msgid "Receive items"
-msgstr ""
-
-#: order/templates/order/order_base.html:85
-msgid "Receive Items"
-msgstr ""
-
-#: order/templates/order/order_base.html:87
#: order/templates/order/return_order_base.html:87
msgid "Mark order as complete"
msgstr ""
-#: order/templates/order/order_base.html:88
+#: order/templates/order/order_base.html:84
#: order/templates/order/return_order_base.html:88
#: order/templates/order/sales_order_base.html:94
msgid "Complete Order"
msgstr ""
-#: order/templates/order/order_base.html:95
+#: order/templates/order/order_base.html:91
msgid "Supplier part thumbnail"
msgstr ""
-#: order/templates/order/order_base.html:110
+#: order/templates/order/order_base.html:106
#: order/templates/order/return_order_base.html:102
#: order/templates/order/sales_order_base.html:107
msgid "Order Reference"
msgstr ""
-#: order/templates/order/order_base.html:115
+#: order/templates/order/order_base.html:111
#: order/templates/order/return_order_base.html:107
#: order/templates/order/sales_order_base.html:112
msgid "Order Description"
msgstr ""
-#: order/templates/order/order_base.html:122
+#: order/templates/order/order_base.html:118
#: order/templates/order/return_order_base.html:114
#: order/templates/order/sales_order_base.html:119
msgid "Order Status"
msgstr ""
-#: order/templates/order/order_base.html:145
+#: order/templates/order/order_base.html:141
msgid "No suppplier information available"
msgstr ""
-#: order/templates/order/order_base.html:158
+#: order/templates/order/order_base.html:154
#: order/templates/order/sales_order_base.html:158
msgid "Completed Line Items"
msgstr ""
-#: order/templates/order/order_base.html:164
+#: order/templates/order/order_base.html:160
#: order/templates/order/sales_order_base.html:164
#: order/templates/order/sales_order_base.html:174
msgid "Incomplete"
msgstr ""
-#: order/templates/order/order_base.html:183
+#: order/templates/order/order_base.html:179
#: order/templates/order/return_order_base.html:158
#: report/templates/report/inventree_build_order_base.html:121
msgid "Issued"
msgstr ""
-#: order/templates/order/order_base.html:221
+#: order/templates/order/order_base.html:224
msgid "Total cost"
msgstr ""
-#: order/templates/order/order_base.html:225
-#: order/templates/order/return_order_base.html:193
-#: order/templates/order/sales_order_base.html:233
+#: order/templates/order/order_base.html:228
+#: order/templates/order/return_order_base.html:200
+#: order/templates/order/sales_order_base.html:240
msgid "Total cost could not be calculated"
msgstr ""
-#: order/templates/order/order_base.html:331
+#: order/templates/order/order_base.html:318
msgid "Purchase Order QR Code"
msgstr ""
-#: order/templates/order/order_base.html:343
+#: order/templates/order/order_base.html:330
msgid "Link Barcode to Purchase Order"
msgstr ""
@@ -5085,13 +5133,13 @@ msgstr ""
#: part/templates/part/import_wizard/ajax_match_references.html:42
#: part/templates/part/import_wizard/match_fields.html:71
#: part/templates/part/import_wizard/match_references.html:49
-#: templates/js/translated/bom.js:132 templates/js/translated/build.js:512
-#: templates/js/translated/build.js:2348
-#: templates/js/translated/purchase_order.js:692
-#: templates/js/translated/purchase_order.js:1206
-#: templates/js/translated/return_order.js:494
-#: templates/js/translated/sales_order.js:1097
-#: templates/js/translated/stock.js:681 templates/js/translated/stock.js:850
+#: templates/js/translated/bom.js:133 templates/js/translated/build.js:518
+#: templates/js/translated/build.js:1555
+#: templates/js/translated/purchase_order.js:703
+#: templates/js/translated/purchase_order.js:1221
+#: templates/js/translated/return_order.js:506
+#: templates/js/translated/sales_order.js:1109
+#: templates/js/translated/stock.js:680 templates/js/translated/stock.js:849
#: templates/patterns/wizard/match_fields.html:70
msgid "Remove row"
msgstr ""
@@ -5152,9 +5200,9 @@ msgstr ""
#: order/templates/order/purchase_order_detail.html:27
#: order/templates/order/return_order_detail.html:24
#: order/templates/order/sales_order_detail.html:24
-#: templates/js/translated/purchase_order.js:419
-#: templates/js/translated/return_order.js:447
-#: templates/js/translated/sales_order.js:222
+#: templates/js/translated/purchase_order.js:430
+#: templates/js/translated/return_order.js:459
+#: templates/js/translated/sales_order.js:234
msgid "Add Line Item"
msgstr ""
@@ -5165,30 +5213,25 @@ msgstr ""
msgid "Receive Line Items"
msgstr ""
-#: order/templates/order/purchase_order_detail.html:49
#: order/templates/order/purchase_order_detail.html:50
-msgid "Delete Line Items"
-msgstr ""
-
-#: order/templates/order/purchase_order_detail.html:66
-#: order/templates/order/return_order_detail.html:47
-#: order/templates/order/sales_order_detail.html:43
+#: order/templates/order/return_order_detail.html:45
+#: order/templates/order/sales_order_detail.html:41
msgid "Extra Lines"
msgstr ""
-#: order/templates/order/purchase_order_detail.html:72
-#: order/templates/order/return_order_detail.html:53
-#: order/templates/order/sales_order_detail.html:49
+#: order/templates/order/purchase_order_detail.html:56
+#: order/templates/order/return_order_detail.html:51
+#: order/templates/order/sales_order_detail.html:47
msgid "Add Extra Line"
msgstr ""
-#: order/templates/order/purchase_order_detail.html:92
+#: order/templates/order/purchase_order_detail.html:74
msgid "Received Items"
msgstr ""
-#: order/templates/order/purchase_order_detail.html:117
-#: order/templates/order/return_order_detail.html:89
-#: order/templates/order/sales_order_detail.html:149
+#: order/templates/order/purchase_order_detail.html:99
+#: order/templates/order/return_order_detail.html:85
+#: order/templates/order/sales_order_detail.html:139
msgid "Order Notes"
msgstr ""
@@ -5208,29 +5251,29 @@ msgstr ""
#: order/templates/order/return_order_base.html:139
#: order/templates/order/sales_order_base.html:152
-#: templates/js/translated/return_order.js:297
-#: templates/js/translated/sales_order.js:785
+#: templates/js/translated/return_order.js:309
+#: templates/js/translated/sales_order.js:797
msgid "Customer Reference"
msgstr ""
-#: order/templates/order/return_order_base.html:189
-#: order/templates/order/sales_order_base.html:229
+#: order/templates/order/return_order_base.html:196
+#: order/templates/order/sales_order_base.html:236
#: part/templates/part/part_pricing.html:32
#: part/templates/part/part_pricing.html:58
#: part/templates/part/part_pricing.html:99
#: part/templates/part/part_pricing.html:114
-#: templates/js/translated/part.js:1046
-#: templates/js/translated/purchase_order.js:1712
-#: templates/js/translated/return_order.js:369
-#: templates/js/translated/sales_order.js:843
+#: templates/js/translated/part.js:1045
+#: templates/js/translated/purchase_order.js:1727
+#: templates/js/translated/return_order.js:381
+#: templates/js/translated/sales_order.js:855
msgid "Total Cost"
msgstr ""
-#: order/templates/order/return_order_base.html:257
+#: order/templates/order/return_order_base.html:264
msgid "Return Order QR Code"
msgstr ""
-#: order/templates/order/return_order_base.html:269
+#: order/templates/order/return_order_base.html:276
msgid "Link Barcode to Return Order"
msgstr ""
@@ -5248,7 +5291,7 @@ msgid "Ship Items"
msgstr ""
#: order/templates/order/sales_order_base.html:93
-#: templates/js/translated/sales_order.js:469
+#: templates/js/translated/sales_order.js:481
msgid "Complete Sales Order"
msgstr ""
@@ -5257,16 +5300,16 @@ msgid "This Sales Order has not been fully allocated"
msgstr ""
#: order/templates/order/sales_order_base.html:170
-#: order/templates/order/sales_order_detail.html:105
+#: order/templates/order/sales_order_detail.html:99
#: order/templates/order/so_sidebar.html:11
msgid "Completed Shipments"
msgstr ""
-#: order/templates/order/sales_order_base.html:306
+#: order/templates/order/sales_order_base.html:313
msgid "Sales Order QR Code"
msgstr ""
-#: order/templates/order/sales_order_base.html:318
+#: order/templates/order/sales_order_base.html:325
msgid "Link Barcode to Sales Order"
msgstr ""
@@ -5274,18 +5317,17 @@ msgstr ""
msgid "Sales Order Items"
msgstr ""
-#: order/templates/order/sales_order_detail.html:71
-#: order/templates/order/so_sidebar.html:8 templates/InvenTree/index.html:332
+#: order/templates/order/sales_order_detail.html:67
+#: order/templates/order/so_sidebar.html:8 templates/InvenTree/index.html:284
msgid "Pending Shipments"
msgstr ""
-#: order/templates/order/sales_order_detail.html:75
-#: templates/attachment_table.html:6 templates/js/translated/bom.js:1236
-#: templates/js/translated/build.js:2249
+#: order/templates/order/sales_order_detail.html:71
+#: templates/js/translated/bom.js:1256 templates/js/translated/filters.js:297
msgid "Actions"
msgstr ""
-#: order/templates/order/sales_order_detail.html:84
+#: order/templates/order/sales_order_detail.html:80
msgid "New Shipment"
msgstr ""
@@ -5311,12 +5353,12 @@ msgstr ""
msgid "Updated {part} unit-price to {price} and quantity to {qty}"
msgstr ""
-#: part/admin.py:33 part/admin.py:273 part/models.py:3667 part/tasks.py:288
+#: part/admin.py:33 part/admin.py:273 part/models.py:3716 part/tasks.py:288
#: stock/admin.py:101
msgid "Part ID"
msgstr ""
-#: part/admin.py:34 part/admin.py:275 part/models.py:3671 part/tasks.py:289
+#: part/admin.py:34 part/admin.py:275 part/models.py:3720 part/tasks.py:289
#: stock/admin.py:102
msgid "Part Name"
msgstr ""
@@ -5325,19 +5367,19 @@ msgstr ""
msgid "Part Description"
msgstr ""
-#: part/admin.py:36 part/models.py:889 part/templates/part/part_base.html:271
-#: templates/js/translated/part.js:1200 templates/js/translated/part.js:2233
-#: templates/js/translated/stock.js:1795
+#: part/admin.py:36 part/models.py:890 part/templates/part/part_base.html:271
+#: templates/js/translated/part.js:1199 templates/js/translated/part.js:2309
+#: templates/js/translated/stock.js:1952
msgid "IPN"
msgstr ""
-#: part/admin.py:37 part/models.py:896 part/templates/part/part_base.html:279
-#: report/models.py:179 templates/js/translated/part.js:1205
-#: templates/js/translated/part.js:2239
+#: part/admin.py:37 part/models.py:897 part/templates/part/part_base.html:279
+#: report/models.py:179 templates/js/translated/part.js:1204
+#: templates/js/translated/part.js:2315
msgid "Revision"
msgstr ""
-#: part/admin.py:38 part/admin.py:198 part/models.py:875
+#: part/admin.py:38 part/admin.py:198 part/models.py:876
#: part/templates/part/category.html:93 part/templates/part/part_base.html:300
msgid "Keywords"
msgstr ""
@@ -5358,24 +5400,24 @@ msgstr ""
msgid "Default Supplier ID"
msgstr ""
-#: part/admin.py:46 part/models.py:864 part/templates/part/part_base.html:179
+#: part/admin.py:46 part/models.py:865 part/templates/part/part_base.html:179
msgid "Variant Of"
msgstr ""
-#: part/admin.py:47 part/models.py:980 part/templates/part/part_base.html:205
+#: part/admin.py:47 part/models.py:981 part/templates/part/part_base.html:205
msgid "Minimum Stock"
msgstr ""
#: part/admin.py:61 part/templates/part/part_base.html:199
-#: templates/js/translated/company.js:1299
-#: templates/js/translated/table_filters.js:301
+#: templates/js/translated/company.js:1720
+#: templates/js/translated/table_filters.js:307
msgid "In Stock"
msgstr ""
#: part/admin.py:62 part/bom.py:178 part/templates/part/part_base.html:212
-#: templates/js/translated/bom.js:1167 templates/js/translated/build.js:2191
-#: templates/js/translated/part.js:687 templates/js/translated/part.js:2123
-#: templates/js/translated/table_filters.js:140
+#: templates/js/translated/bom.js:1187 templates/js/translated/build.js:2541
+#: templates/js/translated/part.js:686 templates/js/translated/part.js:2122
+#: templates/js/translated/table_filters.js:146
msgid "On Order"
msgstr ""
@@ -5383,23 +5425,16 @@ msgstr ""
msgid "Used In"
msgstr ""
-#: part/admin.py:64 templates/js/translated/build.js:2203
-#: templates/js/translated/build.js:2465 templates/js/translated/build.js:3052
-#: templates/js/translated/sales_order.js:1906
-#: templates/js/translated/table_filters.js:488
-msgid "Allocated"
-msgstr ""
-
#: part/admin.py:65 part/templates/part/part_base.html:243 stock/admin.py:124
-#: templates/js/translated/part.js:692 templates/js/translated/part.js:2127
+#: templates/js/translated/part.js:691 templates/js/translated/part.js:2126
msgid "Building"
msgstr ""
-#: part/admin.py:66 part/models.py:2930 templates/js/translated/part.js:943
+#: part/admin.py:66 part/models.py:2964 templates/js/translated/part.js:942
msgid "Minimum Cost"
msgstr ""
-#: part/admin.py:67 part/models.py:2936 templates/js/translated/part.js:953
+#: part/admin.py:67 part/models.py:2970 templates/js/translated/part.js:952
msgid "Maximum Cost"
msgstr ""
@@ -5416,13 +5451,13 @@ msgstr ""
msgid "Category Path"
msgstr ""
-#: part/admin.py:202 part/models.py:392 part/templates/part/cat_link.html:3
-#: part/templates/part/category.html:23 part/templates/part/category.html:140
-#: part/templates/part/category.html:160
+#: part/admin.py:202 part/models.py:393 part/serializers.py:307
+#: part/templates/part/cat_link.html:3 part/templates/part/category.html:23
+#: part/templates/part/category.html:140 part/templates/part/category.html:160
#: part/templates/part/category_sidebar.html:9
-#: templates/InvenTree/index.html:86 templates/InvenTree/search.html:84
+#: templates/InvenTree/index.html:36 templates/InvenTree/search.html:84
#: templates/InvenTree/settings/sidebar.html:45
-#: templates/js/translated/part.js:2754 templates/js/translated/search.js:172
+#: templates/js/translated/part.js:2739 templates/js/translated/search.js:130
#: templates/navbar.html:24 users/models.py:38
msgid "Parts"
msgstr ""
@@ -5439,7 +5474,7 @@ msgstr ""
msgid "Parent IPN"
msgstr ""
-#: part/admin.py:274 part/models.py:3675
+#: part/admin.py:274 part/models.py:3724
msgid "Part IPN"
msgstr ""
@@ -5453,35 +5488,35 @@ msgstr ""
msgid "Maximum Price"
msgstr ""
-#: part/api.py:498
+#: part/api.py:501
msgid "Incoming Purchase Order"
msgstr ""
-#: part/api.py:518
+#: part/api.py:521
msgid "Outgoing Sales Order"
msgstr ""
-#: part/api.py:536
+#: part/api.py:539
msgid "Stock produced by Build Order"
msgstr ""
-#: part/api.py:622
+#: part/api.py:625
msgid "Stock required for Build Order"
msgstr ""
-#: part/api.py:770
+#: part/api.py:773
msgid "Valid"
msgstr ""
-#: part/api.py:771
+#: part/api.py:774
msgid "Validate entire Bill of Materials"
msgstr ""
-#: part/api.py:777
+#: part/api.py:780
msgid "This option must be selected"
msgstr ""
-#: part/bom.py:175 part/models.py:127 part/models.py:923
+#: part/bom.py:175 part/models.py:128 part/models.py:924
#: part/templates/part/category.html:115 part/templates/part/part_base.html:369
msgid "Default Location"
msgstr ""
@@ -5491,7 +5526,7 @@ msgid "Total Stock"
msgstr ""
#: part/bom.py:177 part/templates/part/part_base.html:194
-#: templates/js/translated/sales_order.js:1873
+#: templates/js/translated/sales_order.js:1885
msgid "Available Stock"
msgstr ""
@@ -5499,916 +5534,913 @@ msgstr ""
msgid "Input quantity for price calculation"
msgstr ""
-#: part/models.py:75 part/models.py:3616 part/templates/part/category.html:16
+#: part/models.py:76 part/models.py:3665 part/templates/part/category.html:16
#: part/templates/part/part_app_base.html:10
msgid "Part Category"
msgstr ""
-#: part/models.py:76 part/templates/part/category.html:135
-#: templates/InvenTree/search.html:97 templates/js/translated/search.js:200
+#: part/models.py:77 part/templates/part/category.html:135
+#: templates/InvenTree/search.html:97 templates/js/translated/search.js:158
#: users/models.py:37
msgid "Part Categories"
msgstr ""
-#: part/models.py:128
+#: part/models.py:129
msgid "Default location for parts in this category"
msgstr ""
-#: part/models.py:133 stock/models.py:124 templates/js/translated/stock.js:2520
-#: templates/js/translated/table_filters.js:209
-#: templates/js/translated/table_filters.js:229
+#: part/models.py:134 stock/models.py:124 templates/js/translated/stock.js:2651
+#: templates/js/translated/table_filters.js:215
+#: templates/js/translated/table_filters.js:235
msgid "Structural"
msgstr ""
-#: part/models.py:135
+#: part/models.py:136
msgid "Parts may not be directly assigned to a structural category, but may be assigned to child categories."
msgstr ""
-#: part/models.py:139
+#: part/models.py:140
msgid "Default keywords"
msgstr ""
-#: part/models.py:139
+#: part/models.py:140
msgid "Default keywords for parts in this category"
msgstr ""
-#: part/models.py:144 stock/models.py:113
+#: part/models.py:145 stock/models.py:113
msgid "Icon"
msgstr ""
-#: part/models.py:145 stock/models.py:114
+#: part/models.py:146 stock/models.py:114
msgid "Icon (optional)"
msgstr ""
-#: part/models.py:164
+#: part/models.py:165
msgid "You cannot make this part category structural because some parts are already assigned to it!"
msgstr ""
-#: part/models.py:475
+#: part/models.py:476
msgid "Invalid choice for parent part"
msgstr ""
-#: part/models.py:517 part/models.py:529
+#: part/models.py:518 part/models.py:530
#, python-brace-format
msgid "Part '{p1}' is used in BOM for '{p2}' (recursive)"
msgstr ""
-#: part/models.py:601
+#: part/models.py:602
#, python-brace-format
msgid "IPN must match regex pattern {pat}"
msgstr ""
-#: part/models.py:672
+#: part/models.py:673
msgid "Stock item with this serial number already exists"
msgstr ""
-#: part/models.py:803
+#: part/models.py:804
msgid "Duplicate IPN not allowed in part settings"
msgstr ""
-#: part/models.py:808
+#: part/models.py:809
msgid "Part with this Name, IPN and Revision already exists."
msgstr ""
-#: part/models.py:822
+#: part/models.py:823
msgid "Parts cannot be assigned to structural part categories!"
msgstr ""
-#: part/models.py:846 part/models.py:3672
+#: part/models.py:847 part/models.py:3721
msgid "Part name"
msgstr ""
-#: part/models.py:852
+#: part/models.py:853
msgid "Is Template"
msgstr ""
-#: part/models.py:853
+#: part/models.py:854
msgid "Is this part a template part?"
msgstr ""
-#: part/models.py:863
+#: part/models.py:864
msgid "Is this part a variant of another part?"
msgstr ""
-#: part/models.py:870
+#: part/models.py:871
msgid "Part description (optional)"
msgstr ""
-#: part/models.py:876
+#: part/models.py:877
msgid "Part keywords to improve visibility in search results"
msgstr ""
-#: part/models.py:883 part/models.py:3198 part/models.py:3615
-#: part/serializers.py:848 part/templates/part/part_base.html:262
+#: part/models.py:884 part/models.py:3232 part/models.py:3664
+#: part/serializers.py:320 part/serializers.py:910
+#: part/templates/part/part_base.html:262
#: templates/InvenTree/settings/settings_staff_js.html:204
#: templates/js/translated/notification.js:59
-#: templates/js/translated/part.js:2269 templates/js/translated/part.js:2481
+#: templates/js/translated/part.js:2345
msgid "Category"
msgstr ""
-#: part/models.py:884
+#: part/models.py:885
msgid "Part category"
msgstr ""
-#: part/models.py:890
+#: part/models.py:891
msgid "Internal Part Number"
msgstr ""
-#: part/models.py:895
+#: part/models.py:896
msgid "Part revision or version number"
msgstr ""
-#: part/models.py:921
+#: part/models.py:922
msgid "Where is this item normally stored?"
msgstr ""
-#: part/models.py:966 part/templates/part/part_base.html:378
+#: part/models.py:967 part/templates/part/part_base.html:378
msgid "Default Supplier"
msgstr ""
-#: part/models.py:967
+#: part/models.py:968
msgid "Default supplier part"
msgstr ""
-#: part/models.py:974
+#: part/models.py:975
msgid "Default Expiry"
msgstr ""
-#: part/models.py:975
+#: part/models.py:976
msgid "Expiry time (in days) for stock items of this part"
msgstr ""
-#: part/models.py:981
+#: part/models.py:982
msgid "Minimum allowed stock level"
msgstr ""
-#: part/models.py:988
+#: part/models.py:989
msgid "Units of measure for this part"
msgstr ""
-#: part/models.py:997
+#: part/models.py:998
msgid "Can this part be built from other parts?"
msgstr ""
-#: part/models.py:1003
+#: part/models.py:1004
msgid "Can this part be used to build other parts?"
msgstr ""
-#: part/models.py:1009
+#: part/models.py:1010
msgid "Does this part have tracking for unique items?"
msgstr ""
-#: part/models.py:1014
+#: part/models.py:1015
msgid "Can this part be purchased from external suppliers?"
msgstr ""
-#: part/models.py:1019
+#: part/models.py:1020
msgid "Can this part be sold to customers?"
msgstr ""
-#: part/models.py:1024
+#: part/models.py:1025
msgid "Is this part active?"
msgstr ""
-#: part/models.py:1029
+#: part/models.py:1030
msgid "Is this a virtual part, such as a software product or license?"
msgstr ""
-#: part/models.py:1031
+#: part/models.py:1032
msgid "BOM checksum"
msgstr ""
-#: part/models.py:1031
+#: part/models.py:1032
msgid "Stored BOM checksum"
msgstr ""
-#: part/models.py:1034
+#: part/models.py:1035
msgid "BOM checked by"
msgstr ""
-#: part/models.py:1036
+#: part/models.py:1037
msgid "BOM checked date"
msgstr ""
-#: part/models.py:1040
+#: part/models.py:1041
msgid "Creation User"
msgstr ""
-#: part/models.py:1042
+#: part/models.py:1043
msgid "User responsible for this part"
msgstr ""
-#: part/models.py:1046 part/templates/part/part_base.html:341
+#: part/models.py:1047 part/templates/part/part_base.html:341
#: stock/templates/stock/item_base.html:447
-#: templates/js/translated/part.js:2331
+#: templates/js/translated/part.js:2407
msgid "Last Stocktake"
msgstr ""
-#: part/models.py:1921
+#: part/models.py:1923
msgid "Sell multiple"
msgstr ""
-#: part/models.py:2853
+#: part/models.py:2887
msgid "Currency used to cache pricing calculations"
msgstr ""
-#: part/models.py:2870
+#: part/models.py:2904
msgid "Minimum BOM Cost"
msgstr ""
-#: part/models.py:2871
+#: part/models.py:2905
msgid "Minimum cost of component parts"
msgstr ""
-#: part/models.py:2876
+#: part/models.py:2910
msgid "Maximum BOM Cost"
msgstr ""
-#: part/models.py:2877
+#: part/models.py:2911
msgid "Maximum cost of component parts"
msgstr ""
-#: part/models.py:2882
+#: part/models.py:2916
msgid "Minimum Purchase Cost"
msgstr ""
-#: part/models.py:2883
+#: part/models.py:2917
msgid "Minimum historical purchase cost"
msgstr ""
-#: part/models.py:2888
+#: part/models.py:2922
msgid "Maximum Purchase Cost"
msgstr ""
-#: part/models.py:2889
+#: part/models.py:2923
msgid "Maximum historical purchase cost"
msgstr ""
-#: part/models.py:2894
+#: part/models.py:2928
msgid "Minimum Internal Price"
msgstr ""
-#: part/models.py:2895
+#: part/models.py:2929
msgid "Minimum cost based on internal price breaks"
msgstr ""
-#: part/models.py:2900
+#: part/models.py:2934
msgid "Maximum Internal Price"
msgstr ""
-#: part/models.py:2901
+#: part/models.py:2935
msgid "Maximum cost based on internal price breaks"
msgstr ""
-#: part/models.py:2906
+#: part/models.py:2940
msgid "Minimum Supplier Price"
msgstr ""
-#: part/models.py:2907
+#: part/models.py:2941
msgid "Minimum price of part from external suppliers"
msgstr ""
-#: part/models.py:2912
+#: part/models.py:2946
msgid "Maximum Supplier Price"
msgstr ""
-#: part/models.py:2913
+#: part/models.py:2947
msgid "Maximum price of part from external suppliers"
msgstr ""
-#: part/models.py:2918
+#: part/models.py:2952
msgid "Minimum Variant Cost"
msgstr ""
-#: part/models.py:2919
+#: part/models.py:2953
msgid "Calculated minimum cost of variant parts"
msgstr ""
-#: part/models.py:2924
+#: part/models.py:2958
msgid "Maximum Variant Cost"
msgstr ""
-#: part/models.py:2925
+#: part/models.py:2959
msgid "Calculated maximum cost of variant parts"
msgstr ""
-#: part/models.py:2931
+#: part/models.py:2965
msgid "Calculated overall minimum cost"
msgstr ""
-#: part/models.py:2937
+#: part/models.py:2971
msgid "Calculated overall maximum cost"
msgstr ""
-#: part/models.py:2942
+#: part/models.py:2976
msgid "Minimum Sale Price"
msgstr ""
-#: part/models.py:2943
+#: part/models.py:2977
msgid "Minimum sale price based on price breaks"
msgstr ""
-#: part/models.py:2948
+#: part/models.py:2982
msgid "Maximum Sale Price"
msgstr ""
-#: part/models.py:2949
+#: part/models.py:2983
msgid "Maximum sale price based on price breaks"
msgstr ""
-#: part/models.py:2954
+#: part/models.py:2988
msgid "Minimum Sale Cost"
msgstr ""
-#: part/models.py:2955
+#: part/models.py:2989
msgid "Minimum historical sale price"
msgstr ""
-#: part/models.py:2960
+#: part/models.py:2994
msgid "Maximum Sale Cost"
msgstr ""
-#: part/models.py:2961
+#: part/models.py:2995
msgid "Maximum historical sale price"
msgstr ""
-#: part/models.py:2980
+#: part/models.py:3014
msgid "Part for stocktake"
msgstr ""
-#: part/models.py:2985
+#: part/models.py:3019
msgid "Item Count"
msgstr ""
-#: part/models.py:2986
+#: part/models.py:3020
msgid "Number of individual stock entries at time of stocktake"
msgstr ""
-#: part/models.py:2993
+#: part/models.py:3027
msgid "Total available stock at time of stocktake"
msgstr ""
-#: part/models.py:2997 part/models.py:3080
+#: part/models.py:3031 part/models.py:3114
#: part/templates/part/part_scheduling.html:13
#: report/templates/report/inventree_test_report_base.html:106
#: templates/InvenTree/settings/plugin_settings.html:37
#: templates/InvenTree/settings/settings_staff_js.html:360
-#: templates/js/translated/part.js:1059 templates/js/translated/pricing.js:812
+#: templates/js/translated/part.js:1058 templates/js/translated/pricing.js:812
#: templates/js/translated/pricing.js:936
-#: templates/js/translated/purchase_order.js:1691
-#: templates/js/translated/stock.js:2558
+#: templates/js/translated/purchase_order.js:1706
+#: templates/js/translated/stock.js:2689
msgid "Date"
msgstr ""
-#: part/models.py:2998
+#: part/models.py:3032
msgid "Date stocktake was performed"
msgstr ""
-#: part/models.py:3006
+#: part/models.py:3040
msgid "Additional notes"
msgstr ""
-#: part/models.py:3014
+#: part/models.py:3048
msgid "User who performed this stocktake"
msgstr ""
-#: part/models.py:3019
+#: part/models.py:3053
msgid "Minimum Stock Cost"
msgstr ""
-#: part/models.py:3020
+#: part/models.py:3054
msgid "Estimated minimum cost of stock on hand"
msgstr ""
-#: part/models.py:3025
+#: part/models.py:3059
msgid "Maximum Stock Cost"
msgstr ""
-#: part/models.py:3026
+#: part/models.py:3060
msgid "Estimated maximum cost of stock on hand"
msgstr ""
-#: part/models.py:3087 templates/InvenTree/settings/settings_staff_js.html:349
+#: part/models.py:3121 templates/InvenTree/settings/settings_staff_js.html:349
msgid "Report"
msgstr ""
-#: part/models.py:3088
+#: part/models.py:3122
msgid "Stocktake report file (generated internally)"
msgstr ""
-#: part/models.py:3093 templates/InvenTree/settings/settings_staff_js.html:356
+#: part/models.py:3127 templates/InvenTree/settings/settings_staff_js.html:356
msgid "Part Count"
msgstr ""
-#: part/models.py:3094
+#: part/models.py:3128
msgid "Number of parts covered by stocktake"
msgstr ""
-#: part/models.py:3102
+#: part/models.py:3136
msgid "User who requested this stocktake report"
msgstr ""
-#: part/models.py:3238
+#: part/models.py:3272
msgid "Test templates can only be created for trackable parts"
msgstr ""
-#: part/models.py:3255
+#: part/models.py:3289
msgid "Test with this name already exists for this part"
msgstr ""
-#: part/models.py:3275 templates/js/translated/part.js:2821
+#: part/models.py:3309 templates/js/translated/part.js:2806
msgid "Test Name"
msgstr ""
-#: part/models.py:3276
+#: part/models.py:3310
msgid "Enter a name for the test"
msgstr ""
-#: part/models.py:3281
+#: part/models.py:3315
msgid "Test Description"
msgstr ""
-#: part/models.py:3282
+#: part/models.py:3316
msgid "Enter description for this test"
msgstr ""
-#: part/models.py:3287 templates/js/translated/part.js:2830
-#: templates/js/translated/table_filters.js:423
+#: part/models.py:3321 templates/js/translated/part.js:2815
+#: templates/js/translated/table_filters.js:429
msgid "Required"
msgstr ""
-#: part/models.py:3288
+#: part/models.py:3322
msgid "Is this test required to pass?"
msgstr ""
-#: part/models.py:3293 templates/js/translated/part.js:2838
+#: part/models.py:3327 templates/js/translated/part.js:2823
msgid "Requires Value"
msgstr ""
-#: part/models.py:3294
+#: part/models.py:3328
msgid "Does this test require a value when adding a test result?"
msgstr ""
-#: part/models.py:3299 templates/js/translated/part.js:2845
+#: part/models.py:3333 templates/js/translated/part.js:2830
msgid "Requires Attachment"
msgstr ""
-#: part/models.py:3300
+#: part/models.py:3334
msgid "Does this test require a file attachment when adding a test result?"
msgstr ""
-#: part/models.py:3346
+#: part/models.py:3380
msgid "Checkbox parameters cannot have units"
msgstr ""
-#: part/models.py:3351
+#: part/models.py:3385
msgid "Checkbox parameters cannot have choices"
msgstr ""
-#: part/models.py:3369
+#: part/models.py:3403
msgid "Choices must be unique"
msgstr ""
-#: part/models.py:3385
+#: part/models.py:3419
msgid "Parameter template name must be unique"
msgstr ""
-#: part/models.py:3401
+#: part/models.py:3435
msgid "Parameter Name"
msgstr ""
-#: part/models.py:3407
+#: part/models.py:3441
msgid "Physical units for this parameter"
msgstr ""
-#: part/models.py:3417
+#: part/models.py:3451
msgid "Parameter description"
msgstr ""
-#: part/models.py:3423 templates/js/translated/part.js:1600
-#: templates/js/translated/table_filters.js:734
+#: part/models.py:3457 templates/js/translated/part.js:1599
+#: templates/js/translated/table_filters.js:756
msgid "Checkbox"
msgstr ""
-#: part/models.py:3424
+#: part/models.py:3458
msgid "Is this parameter a checkbox?"
msgstr ""
-#: part/models.py:3429 templates/js/translated/part.js:1609
+#: part/models.py:3463 templates/js/translated/part.js:1608
msgid "Choices"
msgstr ""
-#: part/models.py:3430
+#: part/models.py:3464
msgid "Valid choices for this parameter (comma-separated)"
msgstr ""
-#: part/models.py:3511
+#: part/models.py:3545
msgid "Invalid choice for parameter value"
msgstr ""
-#: part/models.py:3555
+#: part/models.py:3589
msgid "Parent Part"
msgstr ""
-#: part/models.py:3560 part/models.py:3621 part/models.py:3622
+#: part/models.py:3594 part/models.py:3670 part/models.py:3671
#: templates/InvenTree/settings/settings_staff_js.html:199
msgid "Parameter Template"
msgstr ""
-#: part/models.py:3565
+#: part/models.py:3599
msgid "Data"
msgstr ""
-#: part/models.py:3565
+#: part/models.py:3599
msgid "Parameter Value"
msgstr ""
-#: part/models.py:3626 templates/InvenTree/settings/settings_staff_js.html:208
+#: part/models.py:3675 templates/InvenTree/settings/settings_staff_js.html:208
msgid "Default Value"
msgstr ""
-#: part/models.py:3627
+#: part/models.py:3676
msgid "Default Parameter Value"
msgstr ""
-#: part/models.py:3664
+#: part/models.py:3713
msgid "Part ID or part name"
msgstr ""
-#: part/models.py:3668
+#: part/models.py:3717
msgid "Unique part ID value"
msgstr ""
-#: part/models.py:3676
+#: part/models.py:3725
msgid "Part IPN value"
msgstr ""
-#: part/models.py:3679
+#: part/models.py:3728
msgid "Level"
msgstr ""
-#: part/models.py:3680
+#: part/models.py:3729
msgid "BOM level"
msgstr ""
-#: part/models.py:3764
+#: part/models.py:3735 part/models.py:4113
+msgid "BOM Item"
+msgstr ""
+
+#: part/models.py:3808
msgid "Select parent part"
msgstr ""
-#: part/models.py:3772
+#: part/models.py:3816
msgid "Sub part"
msgstr ""
-#: part/models.py:3773
+#: part/models.py:3817
msgid "Select part to be used in BOM"
msgstr ""
-#: part/models.py:3779
+#: part/models.py:3823
msgid "BOM quantity for this BOM item"
msgstr ""
-#: part/models.py:3783 part/templates/part/upload_bom.html:58
-#: templates/js/translated/bom.js:971 templates/js/translated/bom.js:998
-#: templates/js/translated/build.js:2113
-#: templates/js/translated/table_filters.js:156
-#: templates/js/translated/table_filters.js:185
-#: templates/js/translated/table_filters.js:500
-msgid "Optional"
-msgstr ""
-
-#: part/models.py:3784
+#: part/models.py:3828
msgid "This BOM item is optional"
msgstr ""
-#: part/models.py:3789 templates/js/translated/bom.js:967
-#: templates/js/translated/bom.js:1007 templates/js/translated/build.js:2104
-#: templates/js/translated/table_filters.js:160
-#: templates/js/translated/table_filters.js:496
-msgid "Consumable"
-msgstr ""
-
-#: part/models.py:3790
+#: part/models.py:3834
msgid "This BOM item is consumable (it is not tracked in build orders)"
msgstr ""
-#: part/models.py:3794 part/templates/part/upload_bom.html:55
+#: part/models.py:3838 part/templates/part/upload_bom.html:55
msgid "Overage"
msgstr ""
-#: part/models.py:3795
+#: part/models.py:3839
msgid "Estimated build wastage quantity (absolute or percentage)"
msgstr ""
-#: part/models.py:3798
+#: part/models.py:3842
msgid "BOM item reference"
msgstr ""
-#: part/models.py:3801
+#: part/models.py:3845
msgid "BOM item notes"
msgstr ""
-#: part/models.py:3805
+#: part/models.py:3849
msgid "Checksum"
msgstr ""
-#: part/models.py:3805
+#: part/models.py:3849
msgid "BOM line checksum"
msgstr ""
-#: part/models.py:3810 templates/js/translated/table_filters.js:144
+#: part/models.py:3854 templates/js/translated/table_filters.js:150
msgid "Validated"
msgstr ""
-#: part/models.py:3811
+#: part/models.py:3855
msgid "This BOM item has been validated"
msgstr ""
-#: part/models.py:3816 part/templates/part/upload_bom.html:57
-#: templates/js/translated/bom.js:1024
-#: templates/js/translated/table_filters.js:148
-#: templates/js/translated/table_filters.js:181
+#: part/models.py:3860 part/templates/part/upload_bom.html:57
+#: templates/js/translated/bom.js:1042
+#: templates/js/translated/table_filters.js:154
+#: templates/js/translated/table_filters.js:187
msgid "Gets inherited"
msgstr ""
-#: part/models.py:3817
+#: part/models.py:3861
msgid "This BOM item is inherited by BOMs for variant parts"
msgstr ""
-#: part/models.py:3822 part/templates/part/upload_bom.html:56
-#: templates/js/translated/bom.js:1016
+#: part/models.py:3866 part/templates/part/upload_bom.html:56
+#: templates/js/translated/bom.js:1034
msgid "Allow Variants"
msgstr ""
-#: part/models.py:3823
+#: part/models.py:3867
msgid "Stock items for variant parts can be used for this BOM item"
msgstr ""
-#: part/models.py:3909 stock/models.py:577
+#: part/models.py:3953 stock/models.py:577
msgid "Quantity must be integer value for trackable parts"
msgstr ""
-#: part/models.py:3918 part/models.py:3920
+#: part/models.py:3962 part/models.py:3964
msgid "Sub part must be specified"
msgstr ""
-#: part/models.py:4036
+#: part/models.py:4080
msgid "BOM Item Substitute"
msgstr ""
-#: part/models.py:4057
+#: part/models.py:4101
msgid "Substitute part cannot be the same as the master part"
msgstr ""
-#: part/models.py:4070
+#: part/models.py:4114
msgid "Parent BOM item"
msgstr ""
-#: part/models.py:4078
+#: part/models.py:4122
msgid "Substitute part"
msgstr ""
-#: part/models.py:4093
+#: part/models.py:4137
msgid "Part 1"
msgstr ""
-#: part/models.py:4097
+#: part/models.py:4141
msgid "Part 2"
msgstr ""
-#: part/models.py:4097
+#: part/models.py:4141
msgid "Select Related Part"
msgstr ""
-#: part/models.py:4115
+#: part/models.py:4159
msgid "Part relationship cannot be created between a part and itself"
msgstr ""
-#: part/models.py:4119
+#: part/models.py:4163
msgid "Duplicate relationship already exists"
msgstr ""
-#: part/serializers.py:152 part/serializers.py:175 stock/serializers.py:257
+#: part/serializers.py:152 part/serializers.py:175 stock/serializers.py:319
msgid "Purchase currency of this stock item"
msgstr ""
-#: part/serializers.py:302
+#: part/serializers.py:313
+msgid "No parts selected"
+msgstr ""
+
+#: part/serializers.py:321
+msgid "Select category"
+msgstr ""
+
+#: part/serializers.py:352
msgid "Original Part"
msgstr ""
-#: part/serializers.py:302
+#: part/serializers.py:352
msgid "Select original part to duplicate"
msgstr ""
-#: part/serializers.py:307
+#: part/serializers.py:357
msgid "Copy Image"
msgstr ""
-#: part/serializers.py:307
+#: part/serializers.py:357
msgid "Copy image from original part"
msgstr ""
-#: part/serializers.py:312 part/templates/part/detail.html:296
+#: part/serializers.py:362 part/templates/part/detail.html:277
msgid "Copy BOM"
msgstr ""
-#: part/serializers.py:312
+#: part/serializers.py:362
msgid "Copy bill of materials from original part"
msgstr ""
-#: part/serializers.py:317
+#: part/serializers.py:367
msgid "Copy Parameters"
msgstr ""
-#: part/serializers.py:317
+#: part/serializers.py:367
msgid "Copy parameter data from original part"
msgstr ""
-#: part/serializers.py:327
+#: part/serializers.py:377
msgid "Initial Stock Quantity"
msgstr ""
-#: part/serializers.py:327
+#: part/serializers.py:377
msgid "Specify initial stock quantity for this Part. If quantity is zero, no stock is added."
msgstr ""
-#: part/serializers.py:333
+#: part/serializers.py:383
msgid "Initial Stock Location"
msgstr ""
-#: part/serializers.py:333
+#: part/serializers.py:383
msgid "Specify initial stock location for this Part"
msgstr ""
-#: part/serializers.py:343
+#: part/serializers.py:393
msgid "Select supplier (or leave blank to skip)"
msgstr ""
-#: part/serializers.py:354
+#: part/serializers.py:404
msgid "Select manufacturer (or leave blank to skip)"
msgstr ""
-#: part/serializers.py:360
+#: part/serializers.py:410
msgid "Manufacturer part number"
msgstr ""
-#: part/serializers.py:367
+#: part/serializers.py:417
msgid "Selected company is not a valid supplier"
msgstr ""
-#: part/serializers.py:375
+#: part/serializers.py:425
msgid "Selected company is not a valid manufacturer"
msgstr ""
-#: part/serializers.py:387
+#: part/serializers.py:437
msgid "Manufacturer part matching this MPN already exists"
msgstr ""
-#: part/serializers.py:395
+#: part/serializers.py:445
msgid "Supplier part matching this SKU already exists"
msgstr ""
-#: part/serializers.py:620 part/templates/part/copy_part.html:9
-#: templates/js/translated/part.js:449
+#: part/serializers.py:682 part/templates/part/copy_part.html:9
+#: templates/js/translated/part.js:448
msgid "Duplicate Part"
msgstr ""
-#: part/serializers.py:620
+#: part/serializers.py:682
msgid "Copy initial data from another Part"
msgstr ""
-#: part/serializers.py:625 templates/js/translated/part.js:103
+#: part/serializers.py:687 templates/js/translated/part.js:102
msgid "Initial Stock"
msgstr ""
-#: part/serializers.py:625
+#: part/serializers.py:687
msgid "Create Part with initial stock quantity"
msgstr ""
-#: part/serializers.py:630
+#: part/serializers.py:692
msgid "Supplier Information"
msgstr ""
-#: part/serializers.py:630
+#: part/serializers.py:692
msgid "Add initial supplier information for this part"
msgstr ""
-#: part/serializers.py:636
+#: part/serializers.py:698
msgid "Copy Category Parameters"
msgstr ""
-#: part/serializers.py:637
+#: part/serializers.py:699
msgid "Copy parameter templates from selected part category"
msgstr ""
-#: part/serializers.py:842
+#: part/serializers.py:904
msgid "Limit stocktake report to a particular part, and any variant parts"
msgstr ""
-#: part/serializers.py:848
+#: part/serializers.py:910
msgid "Limit stocktake report to a particular part category, and any child categories"
msgstr ""
-#: part/serializers.py:854
+#: part/serializers.py:916
msgid "Limit stocktake report to a particular stock location, and any child locations"
msgstr ""
-#: part/serializers.py:859
+#: part/serializers.py:921
msgid "Generate Report"
msgstr ""
-#: part/serializers.py:860
+#: part/serializers.py:922
msgid "Generate report file containing calculated stocktake data"
msgstr ""
-#: part/serializers.py:865
+#: part/serializers.py:927
msgid "Update Parts"
msgstr ""
-#: part/serializers.py:866
+#: part/serializers.py:928
msgid "Update specified parts with calculated stocktake data"
msgstr ""
-#: part/serializers.py:874
+#: part/serializers.py:936
msgid "Stocktake functionality is not enabled"
msgstr ""
-#: part/serializers.py:963
+#: part/serializers.py:1025
msgid "Update"
msgstr ""
-#: part/serializers.py:964
+#: part/serializers.py:1026
msgid "Update pricing for this part"
msgstr ""
-#: part/serializers.py:1246
+#: part/serializers.py:1308
msgid "Select part to copy BOM from"
msgstr ""
-#: part/serializers.py:1254
+#: part/serializers.py:1316
msgid "Remove Existing Data"
msgstr ""
-#: part/serializers.py:1255
+#: part/serializers.py:1317
msgid "Remove existing BOM items before copying"
msgstr ""
-#: part/serializers.py:1260
+#: part/serializers.py:1322
msgid "Include Inherited"
msgstr ""
-#: part/serializers.py:1261
+#: part/serializers.py:1323
msgid "Include BOM items which are inherited from templated parts"
msgstr ""
-#: part/serializers.py:1266
+#: part/serializers.py:1328
msgid "Skip Invalid Rows"
msgstr ""
-#: part/serializers.py:1267
+#: part/serializers.py:1329
msgid "Enable this option to skip invalid rows"
msgstr ""
-#: part/serializers.py:1272
+#: part/serializers.py:1334
msgid "Copy Substitute Parts"
msgstr ""
-#: part/serializers.py:1273
+#: part/serializers.py:1335
msgid "Copy substitute parts when duplicate BOM items"
msgstr ""
-#: part/serializers.py:1313
+#: part/serializers.py:1375
msgid "Clear Existing BOM"
msgstr ""
-#: part/serializers.py:1314
+#: part/serializers.py:1376
msgid "Delete existing BOM items before uploading"
msgstr ""
-#: part/serializers.py:1344
+#: part/serializers.py:1406
msgid "No part column specified"
msgstr ""
-#: part/serializers.py:1387
+#: part/serializers.py:1449
msgid "Multiple matching parts found"
msgstr ""
-#: part/serializers.py:1390
+#: part/serializers.py:1452
msgid "No matching part found"
msgstr ""
-#: part/serializers.py:1393
+#: part/serializers.py:1455
msgid "Part is not designated as a component"
msgstr ""
-#: part/serializers.py:1402
+#: part/serializers.py:1464
msgid "Quantity not provided"
msgstr ""
-#: part/serializers.py:1410
+#: part/serializers.py:1472
msgid "Invalid quantity"
msgstr ""
-#: part/serializers.py:1431
+#: part/serializers.py:1493
msgid "At least one BOM item is required"
msgstr ""
@@ -6421,9 +6453,9 @@ msgstr ""
msgid "The available stock for {part.name} has fallen below the configured minimum level"
msgstr ""
-#: part/tasks.py:294 templates/js/translated/part.js:1040
-#: templates/js/translated/part.js:1793 templates/js/translated/part.js:1848
-#: templates/js/translated/purchase_order.js:2052
+#: part/tasks.py:294 templates/js/translated/part.js:1039
+#: templates/js/translated/part.js:1792 templates/js/translated/part.js:1847
+#: templates/js/translated/purchase_order.js:2062
msgid "Total Quantity"
msgstr ""
@@ -6461,14 +6493,6 @@ msgstr ""
msgid "The BOM for %(part)s has not been validated."
msgstr ""
-#: part/templates/part/bom.html:30 part/templates/part/detail.html:291
-msgid "BOM actions"
-msgstr ""
-
-#: part/templates/part/bom.html:34
-msgid "Delete Items"
-msgstr ""
-
#: part/templates/part/category.html:34
msgid "Perform stocktake for this part category"
msgstr ""
@@ -6505,7 +6529,7 @@ msgstr ""
msgid "Top level part category"
msgstr ""
-#: part/templates/part/category.html:121 part/templates/part/category.html:225
+#: part/templates/part/category.html:121 part/templates/part/category.html:206
#: part/templates/part/category_sidebar.html:7
msgid "Subcategories"
msgstr ""
@@ -6518,33 +6542,20 @@ msgstr ""
msgid "Create new part"
msgstr ""
-#: part/templates/part/category.html:165 templates/js/translated/bom.js:443
+#: part/templates/part/category.html:165 templates/js/translated/bom.js:444
msgid "New Part"
msgstr ""
-#: part/templates/part/category.html:175 part/templates/part/detail.html:390
-#: part/templates/part/detail.html:421
-msgid "Options"
-msgstr ""
-
-#: part/templates/part/category.html:179
-msgid "Set category"
-msgstr ""
-
-#: part/templates/part/category.html:180
-msgid "Set Category"
-msgstr ""
-
-#: part/templates/part/category.html:208
+#: part/templates/part/category.html:191
#: templates/InvenTree/settings/sidebar.html:47
msgid "Part Parameters"
msgstr ""
-#: part/templates/part/category.html:229
+#: part/templates/part/category.html:210
msgid "Create new part category"
msgstr ""
-#: part/templates/part/category.html:230
+#: part/templates/part/category.html:211
msgid "New Category"
msgstr ""
@@ -6581,7 +6592,7 @@ msgid "Refresh scheduling data"
msgstr ""
#: part/templates/part/detail.html:45 part/templates/part/prices.html:15
-#: templates/js/translated/tables.js:584
+#: templates/js/translated/tables.js:560
msgid "Refresh"
msgstr ""
@@ -6592,7 +6603,7 @@ msgstr ""
#: part/templates/part/detail.html:67 part/templates/part/part_sidebar.html:50
#: stock/admin.py:130 templates/InvenTree/settings/part_stocktake.html:29
#: templates/InvenTree/settings/sidebar.html:51
-#: templates/js/translated/stock.js:1952 users/models.py:39
+#: templates/js/translated/stock.js:2109 users/models.py:39
msgid "Stocktake"
msgstr ""
@@ -6604,101 +6615,101 @@ msgstr ""
msgid "Add Test Template"
msgstr ""
-#: part/templates/part/detail.html:145 stock/templates/stock/item.html:53
+#: part/templates/part/detail.html:139 stock/templates/stock/item.html:49
msgid "Sales Order Allocations"
msgstr ""
-#: part/templates/part/detail.html:165
+#: part/templates/part/detail.html:156
msgid "Part Notes"
msgstr ""
-#: part/templates/part/detail.html:180
+#: part/templates/part/detail.html:171
msgid "Part Variants"
msgstr ""
-#: part/templates/part/detail.html:184
+#: part/templates/part/detail.html:175
msgid "Create new variant"
msgstr ""
-#: part/templates/part/detail.html:185
+#: part/templates/part/detail.html:176
msgid "New Variant"
msgstr ""
-#: part/templates/part/detail.html:212
+#: part/templates/part/detail.html:199
msgid "Add new parameter"
msgstr ""
-#: part/templates/part/detail.html:249 part/templates/part/part_sidebar.html:58
+#: part/templates/part/detail.html:232 part/templates/part/part_sidebar.html:58
msgid "Related Parts"
msgstr ""
-#: part/templates/part/detail.html:253 part/templates/part/detail.html:254
+#: part/templates/part/detail.html:236 part/templates/part/detail.html:237
msgid "Add Related"
msgstr ""
-#: part/templates/part/detail.html:274 part/templates/part/part_sidebar.html:17
+#: part/templates/part/detail.html:255 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:279
+#: part/templates/part/detail.html:260
msgid "Export actions"
msgstr ""
-#: part/templates/part/detail.html:283 templates/js/translated/bom.js:339
+#: part/templates/part/detail.html:264 templates/js/translated/bom.js:340
msgid "Export BOM"
msgstr ""
-#: part/templates/part/detail.html:285
+#: part/templates/part/detail.html:266
msgid "Print BOM Report"
msgstr ""
-#: part/templates/part/detail.html:295
+#: part/templates/part/detail.html:272
+msgid "BOM actions"
+msgstr ""
+
+#: part/templates/part/detail.html:276
msgid "Upload BOM"
msgstr ""
-#: part/templates/part/detail.html:297
+#: part/templates/part/detail.html:278
msgid "Validate BOM"
msgstr ""
-#: part/templates/part/detail.html:302 part/templates/part/detail.html:303
-#: templates/js/translated/bom.js:1279 templates/js/translated/bom.js:1280
+#: part/templates/part/detail.html:283 part/templates/part/detail.html:284
+#: templates/js/translated/bom.js:1299 templates/js/translated/bom.js:1300
msgid "Add BOM Item"
msgstr ""
-#: part/templates/part/detail.html:316
+#: part/templates/part/detail.html:297
msgid "Assemblies"
msgstr ""
-#: part/templates/part/detail.html:334
+#: part/templates/part/detail.html:313
msgid "Part Builds"
msgstr ""
-#: part/templates/part/detail.html:361 stock/templates/stock/item.html:38
+#: part/templates/part/detail.html:338 stock/templates/stock/item.html:36
msgid "Build Order Allocations"
msgstr ""
-#: part/templates/part/detail.html:377
+#: part/templates/part/detail.html:352
msgid "Part Suppliers"
msgstr ""
-#: part/templates/part/detail.html:407
+#: part/templates/part/detail.html:372
msgid "Part Manufacturers"
msgstr ""
-#: part/templates/part/detail.html:423
-msgid "Delete manufacturer parts"
-msgstr ""
-
-#: part/templates/part/detail.html:707
+#: part/templates/part/detail.html:654
msgid "Related Part"
msgstr ""
-#: part/templates/part/detail.html:715
+#: part/templates/part/detail.html:662
msgid "Add Related Part"
msgstr ""
-#: part/templates/part/detail.html:800
+#: part/templates/part/detail.html:747
msgid "Add Test Result Template"
msgstr ""
@@ -6732,13 +6743,13 @@ msgid "Download Part Import Template"
msgstr ""
#: part/templates/part/import_wizard/part_upload.html:92
-#: templates/js/translated/bom.js:308 templates/js/translated/bom.js:342
+#: templates/js/translated/bom.js:309 templates/js/translated/bom.js:343
#: templates/js/translated/order.js:129 templates/js/translated/tables.js:189
msgid "Format"
msgstr ""
#: part/templates/part/import_wizard/part_upload.html:93
-#: templates/js/translated/bom.js:309 templates/js/translated/bom.js:343
+#: templates/js/translated/bom.js:310 templates/js/translated/bom.js:344
#: templates/js/translated/order.js:130
msgid "Select file format"
msgstr ""
@@ -6779,7 +6790,7 @@ msgstr ""
msgid "Transfer part stock"
msgstr ""
-#: part/templates/part/part_base.html:93
+#: part/templates/part/part_base.html:93 templates/js/translated/part.js:2264
msgid "Part actions"
msgstr ""
@@ -6824,10 +6835,10 @@ msgid "Part is not active"
msgstr ""
#: part/templates/part/part_base.html:148
-#: templates/js/translated/company.js:945
-#: templates/js/translated/company.js:1185
-#: templates/js/translated/model_renderers.js:273
-#: templates/js/translated/part.js:792 templates/js/translated/part.js:1192
+#: templates/js/translated/company.js:1318
+#: templates/js/translated/company.js:1606
+#: templates/js/translated/model_renderers.js:287
+#: templates/js/translated/part.js:791 templates/js/translated/part.js:1191
msgid "Inactive"
msgstr ""
@@ -6850,7 +6861,7 @@ msgstr ""
msgid "Allocated to Sales Orders"
msgstr ""
-#: part/templates/part/part_base.html:237 templates/js/translated/bom.js:1178
+#: part/templates/part/part_base.html:237 templates/js/translated/bom.js:1198
msgid "Can Build"
msgstr ""
@@ -6858,8 +6869,8 @@ msgstr ""
msgid "Minimum stock level"
msgstr ""
-#: part/templates/part/part_base.html:324 templates/js/translated/bom.js:1041
-#: templates/js/translated/part.js:1238 templates/js/translated/part.js:2304
+#: part/templates/part/part_base.html:324 templates/js/translated/bom.js:1059
+#: templates/js/translated/part.js:1237 templates/js/translated/part.js:2380
#: templates/js/translated/pricing.js:391
#: templates/js/translated/pricing.js:1040
msgid "Price Range"
@@ -6882,7 +6893,7 @@ msgstr ""
msgid "Link Barcode to Part"
msgstr ""
-#: part/templates/part/part_base.html:474 templates/js/translated/part.js:2191
+#: part/templates/part/part_base.html:474 templates/js/translated/part.js:2258
msgid "part"
msgstr ""
@@ -6956,9 +6967,9 @@ msgstr ""
#: stock/templates/stock/stock_app_base.html:10
#: templates/InvenTree/search.html:153
#: templates/InvenTree/settings/sidebar.html:49
-#: templates/js/translated/part.js:1216 templates/js/translated/part.js:2120
-#: templates/js/translated/part.js:2284 templates/js/translated/stock.js:1022
-#: templates/js/translated/stock.js:1829 templates/navbar.html:31
+#: templates/js/translated/part.js:1215 templates/js/translated/part.js:2119
+#: templates/js/translated/part.js:2360 templates/js/translated/stock.js:1021
+#: templates/js/translated/stock.js:1986 templates/navbar.html:31
msgid "Stock"
msgstr ""
@@ -6989,9 +7000,9 @@ msgstr ""
#: part/templates/part/prices.html:25 stock/admin.py:129
#: stock/templates/stock/item_base.html:442
-#: templates/js/translated/company.js:1313
-#: templates/js/translated/company.js:1323
-#: templates/js/translated/stock.js:1982
+#: templates/js/translated/company.js:1734
+#: templates/js/translated/company.js:1744
+#: templates/js/translated/stock.js:2139
msgid "Last Updated"
msgstr ""
@@ -7054,12 +7065,12 @@ msgstr ""
msgid "Add Sell Price Break"
msgstr ""
-#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:682
-#: templates/js/translated/part.js:2115 templates/js/translated/part.js:2117
+#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:681
+#: templates/js/translated/part.js:2114 templates/js/translated/part.js:2116
msgid "No Stock"
msgstr ""
-#: part/templates/part/stock_count.html:9 templates/InvenTree/index.html:167
+#: part/templates/part/stock_count.html:9 templates/InvenTree/index.html:120
msgid "Low Stock"
msgstr ""
@@ -7163,7 +7174,7 @@ msgid "Match found for barcode data"
msgstr ""
#: plugin/base/barcodes/api.py:120
-#: templates/js/translated/purchase_order.js:1372
+#: templates/js/translated/purchase_order.js:1387
msgid "Barcode matches existing item"
msgstr ""
@@ -7226,43 +7237,43 @@ msgstr ""
msgid "Open link"
msgstr ""
-#: plugin/models.py:27
+#: plugin/models.py:28
msgid "Plugin Configuration"
msgstr ""
-#: plugin/models.py:28
+#: plugin/models.py:29
msgid "Plugin Configurations"
msgstr ""
-#: plugin/models.py:33
+#: plugin/models.py:34
msgid "Key"
msgstr ""
-#: plugin/models.py:34
+#: plugin/models.py:35
msgid "Key of plugin"
msgstr ""
-#: plugin/models.py:42
+#: plugin/models.py:43
msgid "PluginName of the plugin"
msgstr ""
-#: plugin/models.py:48
+#: plugin/models.py:49
msgid "Is the plugin active"
msgstr ""
-#: plugin/models.py:124
+#: plugin/models.py:125
msgid "Sample plugin"
msgstr ""
-#: plugin/models.py:133
+#: plugin/models.py:134
msgid "Builtin Plugin"
msgstr ""
-#: plugin/models.py:159 templates/InvenTree/settings/plugin_settings.html:9
+#: plugin/models.py:160 templates/InvenTree/settings/plugin_settings.html:9
msgid "Plugin"
msgstr ""
-#: plugin/models.py:210
+#: plugin/models.py:211
msgid "Method"
msgstr ""
@@ -7414,47 +7425,47 @@ msgstr ""
msgid "Build query filters (comma-separated list of key=value pairs"
msgstr ""
-#: report/models.py:418
+#: report/models.py:420
msgid "Part Filters"
msgstr ""
-#: report/models.py:419
+#: report/models.py:421
msgid "Part query filters (comma-separated list of key=value pairs"
msgstr ""
-#: report/models.py:453
+#: report/models.py:455
msgid "Purchase order query filters"
msgstr ""
-#: report/models.py:491
+#: report/models.py:493
msgid "Sales order query filters"
msgstr ""
-#: report/models.py:529
+#: report/models.py:531
msgid "Return order query filters"
msgstr ""
-#: report/models.py:582
+#: report/models.py:584
msgid "Snippet"
msgstr ""
-#: report/models.py:583
+#: report/models.py:585
msgid "Report snippet file"
msgstr ""
-#: report/models.py:587
+#: report/models.py:589
msgid "Snippet file description"
msgstr ""
-#: report/models.py:624
+#: report/models.py:626
msgid "Asset"
msgstr ""
-#: report/models.py:625
+#: report/models.py:627
msgid "Report asset file"
msgstr ""
-#: report/models.py:632
+#: report/models.py:634
msgid "Asset file description"
msgstr ""
@@ -7475,8 +7486,8 @@ msgstr ""
#: templates/js/translated/order.js:316 templates/js/translated/pricing.js:527
#: templates/js/translated/pricing.js:596
#: templates/js/translated/pricing.js:820
-#: templates/js/translated/purchase_order.js:2083
-#: templates/js/translated/sales_order.js:1817
+#: templates/js/translated/purchase_order.js:2093
+#: templates/js/translated/sales_order.js:1829
msgid "Unit Price"
msgstr ""
@@ -7488,23 +7499,23 @@ msgstr ""
#: report/templates/report/inventree_po_report_base.html:72
#: report/templates/report/inventree_so_report_base.html:72
-#: templates/js/translated/purchase_order.js:1985
-#: templates/js/translated/sales_order.js:1792
+#: templates/js/translated/purchase_order.js:1995
+#: templates/js/translated/sales_order.js:1804
msgid "Total"
msgstr ""
#: report/templates/report/inventree_return_order_report_base.html:25
#: report/templates/report/inventree_test_report_base.html:88
#: stock/models.py:725 stock/templates/stock/item_base.html:312
-#: templates/js/translated/build.js:502 templates/js/translated/build.js:1423
-#: templates/js/translated/build.js:1989
-#: templates/js/translated/model_renderers.js:201
-#: templates/js/translated/return_order.js:528
-#: templates/js/translated/return_order.js:708
-#: templates/js/translated/sales_order.js:300
-#: templates/js/translated/sales_order.js:1597
-#: templates/js/translated/sales_order.js:1682
-#: templates/js/translated/stock.js:563
+#: templates/js/translated/build.js:508 templates/js/translated/build.js:1306
+#: templates/js/translated/build.js:2281
+#: templates/js/translated/model_renderers.js:215
+#: templates/js/translated/return_order.js:540
+#: templates/js/translated/return_order.js:720
+#: templates/js/translated/sales_order.js:312
+#: templates/js/translated/sales_order.js:1609
+#: templates/js/translated/sales_order.js:1694
+#: templates/js/translated/stock.js:562
msgid "Serial Number"
msgstr ""
@@ -7517,7 +7528,7 @@ msgid "Test Results"
msgstr ""
#: report/templates/report/inventree_test_report_base.html:102
-#: stock/models.py:2243 templates/js/translated/stock.js:1419
+#: stock/models.py:2243 templates/js/translated/stock.js:1418
msgid "Test"
msgstr ""
@@ -7548,8 +7559,8 @@ msgid "Installed Items"
msgstr ""
#: report/templates/report/inventree_test_report_base.html:168
-#: stock/admin.py:104 templates/js/translated/stock.js:667
-#: templates/js/translated/stock.js:838 templates/js/translated/stock.js:2849
+#: stock/admin.py:104 templates/js/translated/stock.js:666
+#: templates/js/translated/stock.js:837 templates/js/translated/stock.js:2976
msgid "Serial"
msgstr ""
@@ -7617,31 +7628,31 @@ msgstr ""
#: stock/admin.py:131 stock/models.py:789
#: stock/templates/stock/item_base.html:429
-#: templates/js/translated/stock.js:1966
+#: templates/js/translated/stock.js:2123
msgid "Expiry Date"
msgstr ""
-#: stock/api.py:420 templates/js/translated/table_filters.js:373
+#: stock/api.py:426 templates/js/translated/table_filters.js:379
msgid "External Location"
msgstr ""
-#: stock/api.py:582
+#: stock/api.py:619
msgid "Quantity is required"
msgstr ""
-#: stock/api.py:589
+#: stock/api.py:626
msgid "Valid part must be supplied"
msgstr ""
-#: stock/api.py:615
+#: stock/api.py:652
msgid "The given supplier part does not exist"
msgstr ""
-#: stock/api.py:624
+#: stock/api.py:661
msgid "The supplier part has a pack size defined, but flag use_pack_size not set"
msgstr ""
-#: stock/api.py:642
+#: stock/api.py:679
msgid "Serial numbers cannot be supplied for a non-trackable part"
msgstr ""
@@ -7652,7 +7663,7 @@ msgid "Stock Location"
msgstr ""
#: stock/models.py:55 stock/templates/stock/location.html:177
-#: templates/InvenTree/search.html:166 templates/js/translated/search.js:220
+#: templates/InvenTree/search.html:166 templates/js/translated/search.js:178
#: users/models.py:40
msgid "Stock Locations"
msgstr ""
@@ -7670,8 +7681,8 @@ msgstr ""
msgid "Stock items may not be directly located into a structural stock locations, but may be located to child locations."
msgstr ""
-#: stock/models.py:132 templates/js/translated/stock.js:2529
-#: templates/js/translated/table_filters.js:213
+#: stock/models.py:132 templates/js/translated/stock.js:2660
+#: templates/js/translated/table_filters.js:219
msgid "External"
msgstr ""
@@ -7687,7 +7698,7 @@ msgstr ""
msgid "Stock items cannot be located into structural stock locations!"
msgstr ""
-#: stock/models.py:583 stock/serializers.py:174
+#: stock/models.py:583 stock/serializers.py:223
msgid "Stock item cannot be created for virtual parts"
msgstr ""
@@ -7821,7 +7832,7 @@ msgstr ""
msgid "Quantity does not match serial numbers"
msgstr ""
-#: stock/models.py:1403 stock/serializers.py:374
+#: stock/models.py:1403 stock/serializers.py:440
msgid "Serial numbers already exist"
msgstr ""
@@ -7849,7 +7860,7 @@ msgstr ""
msgid "Serialized stock cannot be merged"
msgstr ""
-#: stock/models.py:1496 stock/serializers.py:975
+#: stock/models.py:1496 stock/serializers.py:1092
msgid "Duplicate stock items"
msgstr ""
@@ -7901,132 +7912,141 @@ msgstr ""
msgid "Test notes"
msgstr ""
-#: stock/serializers.py:76
+#: stock/serializers.py:121
msgid "Serial number is too large"
msgstr ""
-#: stock/serializers.py:166
+#: stock/serializers.py:215
msgid "Use pack size when adding: the quantity defined is the number of packs"
msgstr ""
-#: stock/serializers.py:254
+#: stock/serializers.py:316
msgid "Purchase price of this stock item, per unit or pack"
msgstr ""
-#: stock/serializers.py:307
+#: stock/serializers.py:373
msgid "Enter number of stock items to serialize"
msgstr ""
-#: stock/serializers.py:319
+#: stock/serializers.py:385
#, python-brace-format
msgid "Quantity must not exceed available stock quantity ({q})"
msgstr ""
-#: stock/serializers.py:325
+#: stock/serializers.py:391
msgid "Enter serial numbers for new items"
msgstr ""
-#: stock/serializers.py:336 stock/serializers.py:932 stock/serializers.py:1174
+#: stock/serializers.py:402 stock/serializers.py:1049 stock/serializers.py:1291
msgid "Destination stock location"
msgstr ""
-#: stock/serializers.py:343
+#: stock/serializers.py:409
msgid "Optional note field"
msgstr ""
-#: stock/serializers.py:353
+#: stock/serializers.py:419
msgid "Serial numbers cannot be assigned to this part"
msgstr ""
-#: stock/serializers.py:414
+#: stock/serializers.py:480
msgid "Select stock item to install"
msgstr ""
-#: stock/serializers.py:427
-msgid "Stock item is unavailable"
-msgstr ""
-
-#: stock/serializers.py:434
-msgid "Selected part is not in the Bill of Materials"
-msgstr ""
-
-#: stock/serializers.py:471
-msgid "Destination location for uninstalled item"
-msgstr ""
-
-#: stock/serializers.py:476 stock/serializers.py:557
+#: stock/serializers.py:485 stock/serializers.py:543 stock/serializers.py:624
+#: stock/serializers.py:682
msgid "Add transaction note (optional)"
msgstr ""
-#: stock/serializers.py:510
+#: stock/serializers.py:494
+msgid "Stock item is unavailable"
+msgstr ""
+
+#: stock/serializers.py:501
+msgid "Selected part is not in the Bill of Materials"
+msgstr ""
+
+#: stock/serializers.py:538
+msgid "Destination location for uninstalled item"
+msgstr ""
+
+#: stock/serializers.py:577
msgid "Select part to convert stock item into"
msgstr ""
-#: stock/serializers.py:521
+#: stock/serializers.py:588
msgid "Selected part is not a valid option for conversion"
msgstr ""
-#: stock/serializers.py:552
+#: stock/serializers.py:619
msgid "Destination location for returned item"
msgstr ""
-#: stock/serializers.py:787
+#: stock/serializers.py:663
+msgid "Select stock items to change status"
+msgstr ""
+
+#: stock/serializers.py:670
+msgid "No stock items selected"
+msgstr ""
+
+#: stock/serializers.py:904
msgid "Part must be salable"
msgstr ""
-#: stock/serializers.py:791
+#: stock/serializers.py:908
msgid "Item is allocated to a sales order"
msgstr ""
-#: stock/serializers.py:795
+#: stock/serializers.py:912
msgid "Item is allocated to a build order"
msgstr ""
-#: stock/serializers.py:826
+#: stock/serializers.py:943
msgid "Customer to assign stock items"
msgstr ""
-#: stock/serializers.py:832
+#: stock/serializers.py:949
msgid "Selected company is not a customer"
msgstr ""
-#: stock/serializers.py:840
+#: stock/serializers.py:957
msgid "Stock assignment notes"
msgstr ""
-#: stock/serializers.py:850 stock/serializers.py:1081
+#: stock/serializers.py:967 stock/serializers.py:1198
msgid "A list of stock items must be provided"
msgstr ""
-#: stock/serializers.py:939
+#: stock/serializers.py:1056
msgid "Stock merging notes"
msgstr ""
-#: stock/serializers.py:944
+#: stock/serializers.py:1061
msgid "Allow mismatched suppliers"
msgstr ""
-#: stock/serializers.py:945
+#: stock/serializers.py:1062
msgid "Allow stock items with different supplier parts to be merged"
msgstr ""
-#: stock/serializers.py:950
+#: stock/serializers.py:1067
msgid "Allow mismatched status"
msgstr ""
-#: stock/serializers.py:951
+#: stock/serializers.py:1068
msgid "Allow stock items with different status codes to be merged"
msgstr ""
-#: stock/serializers.py:961
+#: stock/serializers.py:1078
msgid "At least two stock items must be provided"
msgstr ""
-#: stock/serializers.py:1043
+#: stock/serializers.py:1160
msgid "StockItem primary key value"
msgstr ""
-#: stock/serializers.py:1071
+#: stock/serializers.py:1188
msgid "Stock transaction notes"
msgstr ""
@@ -8034,48 +8054,48 @@ msgstr ""
msgid "Stock Tracking Information"
msgstr ""
-#: stock/templates/stock/item.html:69
+#: stock/templates/stock/item.html:63
msgid "Child Stock Items"
msgstr ""
-#: stock/templates/stock/item.html:77
+#: stock/templates/stock/item.html:71
msgid "This stock item does not have any child items"
msgstr ""
-#: stock/templates/stock/item.html:86
+#: stock/templates/stock/item.html:80
#: stock/templates/stock/stock_sidebar.html:12
msgid "Test Data"
msgstr ""
-#: stock/templates/stock/item.html:90 stock/templates/stock/item_base.html:66
+#: stock/templates/stock/item.html:84 stock/templates/stock/item_base.html:66
msgid "Test Report"
msgstr ""
-#: stock/templates/stock/item.html:94 stock/templates/stock/item.html:288
+#: stock/templates/stock/item.html:88 stock/templates/stock/item.html:278
msgid "Delete Test Data"
msgstr ""
-#: stock/templates/stock/item.html:98
+#: stock/templates/stock/item.html:92
msgid "Add Test Data"
msgstr ""
-#: stock/templates/stock/item.html:132
+#: stock/templates/stock/item.html:124
msgid "Stock Item Notes"
msgstr ""
-#: stock/templates/stock/item.html:147
+#: stock/templates/stock/item.html:139
msgid "Installed Stock Items"
msgstr ""
-#: stock/templates/stock/item.html:152 templates/js/translated/stock.js:2996
+#: stock/templates/stock/item.html:144 templates/js/translated/stock.js:3123
msgid "Install Stock Item"
msgstr ""
-#: stock/templates/stock/item.html:276
+#: stock/templates/stock/item.html:266
msgid "Delete all test results for this stock item"
msgstr ""
-#: stock/templates/stock/item.html:305 templates/js/translated/stock.js:1611
+#: stock/templates/stock/item.html:295 templates/js/translated/stock.js:1610
msgid "Add Test Result"
msgstr ""
@@ -8083,13 +8103,13 @@ msgstr ""
msgid "Locate stock item"
msgstr ""
-#: stock/templates/stock/item_base.html:52 templates/stock_table.html:21
+#: stock/templates/stock/item_base.html:52
msgid "Scan to Location"
msgstr ""
#: stock/templates/stock/item_base.html:60
#: stock/templates/stock/location.html:69
-#: templates/js/translated/filters.js:322
+#: templates/js/translated/filters.js:432
msgid "Printing actions"
msgstr ""
@@ -8098,15 +8118,17 @@ msgid "Stock adjustment actions"
msgstr ""
#: stock/templates/stock/item_base.html:80
-#: stock/templates/stock/location.html:88 templates/stock_table.html:35
+#: stock/templates/stock/location.html:88 templates/js/translated/stock.js:1735
msgid "Count stock"
msgstr ""
-#: stock/templates/stock/item_base.html:82 templates/stock_table.html:33
+#: stock/templates/stock/item_base.html:82
+#: templates/js/translated/stock.js:1717
msgid "Add stock"
msgstr ""
-#: stock/templates/stock/item_base.html:83 templates/stock_table.html:34
+#: stock/templates/stock/item_base.html:83
+#: templates/js/translated/stock.js:1726
msgid "Remove stock"
msgstr ""
@@ -8115,11 +8137,12 @@ msgid "Serialize stock"
msgstr ""
#: stock/templates/stock/item_base.html:89
-#: stock/templates/stock/location.html:94 templates/stock_table.html:36
+#: stock/templates/stock/location.html:94 templates/js/translated/stock.js:1744
msgid "Transfer stock"
msgstr ""
-#: stock/templates/stock/item_base.html:92 templates/stock_table.html:39
+#: stock/templates/stock/item_base.html:92
+#: templates/js/translated/stock.js:1798
msgid "Assign to customer"
msgstr ""
@@ -8159,6 +8182,11 @@ msgstr ""
msgid "Delete stock item"
msgstr ""
+#: stock/templates/stock/item_base.html:170 templates/InvenTree/search.html:139
+#: templates/js/translated/build.js:2046 templates/navbar.html:38
+msgid "Build"
+msgstr ""
+
#: stock/templates/stock/item_base.html:194
msgid "Parent Item"
msgstr ""
@@ -8221,7 +8249,7 @@ msgid "Available Quantity"
msgstr ""
#: stock/templates/stock/item_base.html:394
-#: templates/js/translated/build.js:2015
+#: templates/js/translated/build.js:2306
msgid "No location set"
msgstr ""
@@ -8239,7 +8267,7 @@ msgid "This StockItem expired on %(item.expiry_date)s"
msgstr ""
#: stock/templates/stock/item_base.html:433
-#: templates/js/translated/table_filters.js:381
+#: templates/js/translated/table_filters.js:387
msgid "Expired"
msgstr ""
@@ -8249,7 +8277,7 @@ msgid "This StockItem expires on %(item.expiry_date)s"
msgstr ""
#: stock/templates/stock/item_base.html:435
-#: templates/js/translated/table_filters.js:387
+#: templates/js/translated/table_filters.js:393
msgid "Stale"
msgstr ""
@@ -8258,7 +8286,7 @@ msgid "No stocktake performed"
msgstr ""
#: stock/templates/stock/item_base.html:503
-#: templates/js/translated/stock.js:1745
+#: templates/js/translated/stock.js:1865
msgid "stock item"
msgstr ""
@@ -8364,20 +8392,20 @@ msgstr ""
msgid "New Location"
msgstr ""
-#: stock/templates/stock/location.html:287
-#: templates/js/translated/stock.js:2318
+#: stock/templates/stock/location.html:278
+#: templates/js/translated/stock.js:2449
msgid "stock location"
msgstr ""
-#: stock/templates/stock/location.html:304
+#: stock/templates/stock/location.html:295
msgid "Scanned stock container into this location"
msgstr ""
-#: stock/templates/stock/location.html:377
+#: stock/templates/stock/location.html:368
msgid "Stock Location QR Code"
msgstr ""
-#: stock/templates/stock/location.html:388
+#: stock/templates/stock/location.html:379
msgid "Link Barcode to Stock Location"
msgstr ""
@@ -8451,71 +8479,71 @@ msgstr ""
msgid "Index"
msgstr ""
-#: templates/InvenTree/index.html:89
+#: templates/InvenTree/index.html:39
msgid "Subscribed Parts"
msgstr ""
-#: templates/InvenTree/index.html:102
+#: templates/InvenTree/index.html:53
msgid "Subscribed Categories"
msgstr ""
-#: templates/InvenTree/index.html:112
+#: templates/InvenTree/index.html:63
msgid "Latest Parts"
msgstr ""
-#: templates/InvenTree/index.html:126
+#: templates/InvenTree/index.html:78
msgid "BOM Waiting Validation"
msgstr ""
-#: templates/InvenTree/index.html:155
+#: templates/InvenTree/index.html:107
msgid "Recently Updated"
msgstr ""
-#: templates/InvenTree/index.html:180
+#: templates/InvenTree/index.html:134
msgid "Depleted Stock"
msgstr ""
-#: templates/InvenTree/index.html:193
+#: templates/InvenTree/index.html:148
msgid "Required for Build Orders"
msgstr ""
-#: templates/InvenTree/index.html:208
+#: templates/InvenTree/index.html:156
msgid "Expired Stock"
msgstr ""
-#: templates/InvenTree/index.html:222
+#: templates/InvenTree/index.html:172
msgid "Stale Stock"
msgstr ""
-#: templates/InvenTree/index.html:247
+#: templates/InvenTree/index.html:199
msgid "Build Orders In Progress"
msgstr ""
-#: templates/InvenTree/index.html:258
+#: templates/InvenTree/index.html:210
msgid "Overdue Build Orders"
msgstr ""
-#: templates/InvenTree/index.html:278
+#: templates/InvenTree/index.html:230
msgid "Outstanding Purchase Orders"
msgstr ""
-#: templates/InvenTree/index.html:289
+#: templates/InvenTree/index.html:241
msgid "Overdue Purchase Orders"
msgstr ""
-#: templates/InvenTree/index.html:310
+#: templates/InvenTree/index.html:262
msgid "Outstanding Sales Orders"
msgstr ""
-#: templates/InvenTree/index.html:321
+#: templates/InvenTree/index.html:273
msgid "Overdue Sales Orders"
msgstr ""
-#: templates/InvenTree/index.html:347
+#: templates/InvenTree/index.html:299
msgid "InvenTree News"
msgstr ""
-#: templates/InvenTree/index.html:349
+#: templates/InvenTree/index.html:301
msgid "Current News"
msgstr ""
@@ -8672,29 +8700,29 @@ msgstr ""
msgid "Changing the settings below require you to immediately restart the server. Do not change this while under active usage."
msgstr ""
-#: templates/InvenTree/settings/plugin.html:37
+#: templates/InvenTree/settings/plugin.html:35
#: templates/InvenTree/settings/sidebar.html:64
msgid "Plugins"
msgstr ""
-#: templates/InvenTree/settings/plugin.html:43
+#: templates/InvenTree/settings/plugin.html:41
#: templates/js/translated/plugin.js:151
msgid "Install Plugin"
msgstr ""
-#: templates/InvenTree/settings/plugin.html:51
+#: templates/InvenTree/settings/plugin.html:49
msgid "External plugins are not enabled for this InvenTree installation"
msgstr ""
-#: templates/InvenTree/settings/plugin.html:70
+#: templates/InvenTree/settings/plugin.html:64
msgid "Plugin Error Stack"
msgstr ""
-#: templates/InvenTree/settings/plugin.html:79
+#: templates/InvenTree/settings/plugin.html:73
msgid "Stage"
msgstr ""
-#: templates/InvenTree/settings/plugin.html:81
+#: templates/InvenTree/settings/plugin.html:75
#: templates/js/translated/notification.js:75
msgid "Message"
msgstr ""
@@ -8767,14 +8795,6 @@ msgstr ""
msgid "Commit Message"
msgstr ""
-#: templates/InvenTree/settings/plugin_settings.html:126
-msgid "Sign Status"
-msgstr ""
-
-#: templates/InvenTree/settings/plugin_settings.html:131
-msgid "Sign Key"
-msgstr ""
-
#: templates/InvenTree/settings/po.html:7
msgid "Purchase Order Settings"
msgstr ""
@@ -8870,12 +8890,12 @@ msgid "No category parameter templates found"
msgstr ""
#: templates/InvenTree/settings/settings_staff_js.html:212
-#: templates/js/translated/part.js:1618
+#: templates/js/translated/part.js:1617
msgid "Edit Template"
msgstr ""
#: templates/InvenTree/settings/settings_staff_js.html:213
-#: templates/js/translated/part.js:1619
+#: templates/js/translated/part.js:1618
msgid "Delete Template"
msgstr ""
@@ -8913,7 +8933,7 @@ msgid "Home Page"
msgstr ""
#: templates/InvenTree/settings/sidebar.html:15
-#: templates/js/translated/tables.js:575 templates/navbar.html:107
+#: templates/js/translated/tables.js:551 templates/navbar.html:107
#: templates/search.html:8 templates/search_form.html:6
#: templates/search_form.html:7
msgid "Search"
@@ -8990,6 +9010,7 @@ msgid "Unverified"
msgstr ""
#: templates/InvenTree/settings/user.html:80
+#: templates/js/translated/company.js:984
msgid "Primary"
msgstr ""
@@ -9204,44 +9225,48 @@ msgstr ""
msgid "Update Available"
msgstr ""
-#: templates/about.html:42
+#: templates/about.html:43
+msgid "Commit Branch"
+msgstr ""
+
+#: templates/about.html:49
msgid "InvenTree Documentation"
msgstr ""
-#: templates/about.html:47
+#: templates/about.html:54
msgid "API Version"
msgstr ""
-#: templates/about.html:52
+#: templates/about.html:59
msgid "Python Version"
msgstr ""
-#: templates/about.html:57
+#: templates/about.html:64
msgid "Django Version"
msgstr ""
-#: templates/about.html:62
+#: templates/about.html:69
msgid "View Code on GitHub"
msgstr ""
-#: templates/about.html:67
+#: templates/about.html:74
msgid "Credits"
msgstr ""
-#: templates/about.html:72
+#: templates/about.html:79
msgid "Mobile App"
msgstr ""
-#: templates/about.html:77
+#: templates/about.html:84
msgid "Submit Bug Report"
msgstr ""
-#: templates/about.html:84 templates/clip.html:4
+#: templates/about.html:91 templates/clip.html:4
#: templates/js/translated/helpers.js:585
msgid "copy to clipboard"
msgstr ""
-#: templates/about.html:84
+#: templates/about.html:91
msgid "copy version information"
msgstr ""
@@ -9435,14 +9460,6 @@ msgstr ""
msgid "Add Attachment"
msgstr ""
-#: templates/attachment_table.html:11
-msgid "Delete selected attachments"
-msgstr ""
-
-#: templates/attachment_table.html:12 templates/js/translated/attachment.js:129
-msgid "Delete Attachments"
-msgstr ""
-
#: templates/barcode_data.html:5
msgid "Barcode Identifier"
msgstr ""
@@ -9487,7 +9504,7 @@ msgid "The following parts are low on required stock"
msgstr ""
#: templates/email/build_order_required_stock.html:18
-#: templates/js/translated/bom.js:1633
+#: templates/js/translated/bom.js:1653 templates/js/translated/build.js:2485
msgid "Required Quantity"
msgstr ""
@@ -9501,7 +9518,7 @@ msgid "Click on the following link to view this part"
msgstr ""
#: templates/email/low_stock_notification.html:18
-#: templates/js/translated/part.js:3140
+#: templates/js/translated/part.js:3125
msgid "Minimum Quantity"
msgstr ""
@@ -9573,23 +9590,35 @@ msgstr ""
msgid "All selected attachments will be deleted"
msgstr ""
-#: templates/js/translated/attachment.js:255
+#: templates/js/translated/attachment.js:129
+msgid "Delete Attachments"
+msgstr ""
+
+#: templates/js/translated/attachment.js:205
+msgid "Delete attachments"
+msgstr ""
+
+#: templates/js/translated/attachment.js:253
+msgid "Attachment actions"
+msgstr ""
+
+#: templates/js/translated/attachment.js:275
msgid "No attachments found"
msgstr ""
-#: templates/js/translated/attachment.js:285
+#: templates/js/translated/attachment.js:305
msgid "Edit Attachment"
msgstr ""
-#: templates/js/translated/attachment.js:326
+#: templates/js/translated/attachment.js:336
msgid "Upload Date"
msgstr ""
-#: templates/js/translated/attachment.js:346
+#: templates/js/translated/attachment.js:356
msgid "Edit attachment"
msgstr ""
-#: templates/js/translated/attachment.js:354
+#: templates/js/translated/attachment.js:364
msgid "Delete attachment"
msgstr ""
@@ -9646,7 +9675,7 @@ msgstr ""
msgid "Unlink"
msgstr ""
-#: templates/js/translated/barcode.js:550 templates/js/translated/stock.js:1118
+#: templates/js/translated/barcode.js:550 templates/js/translated/stock.js:1117
msgid "Remove stock item"
msgstr ""
@@ -9704,775 +9733,869 @@ msgstr ""
msgid "Barcode does not match a valid location"
msgstr ""
-#: templates/js/translated/bom.js:77
+#: templates/js/translated/bom.js:78
msgid "Create BOM Item"
msgstr ""
-#: templates/js/translated/bom.js:131
+#: templates/js/translated/bom.js:132
msgid "Display row data"
msgstr ""
-#: templates/js/translated/bom.js:187
+#: templates/js/translated/bom.js:188
msgid "Row Data"
msgstr ""
-#: templates/js/translated/bom.js:188 templates/js/translated/bom.js:699
+#: templates/js/translated/bom.js:189 templates/js/translated/bom.js:700
#: templates/js/translated/modals.js:71 templates/js/translated/modals.js:622
#: templates/js/translated/modals.js:746 templates/js/translated/modals.js:1054
-#: templates/js/translated/purchase_order.js:791 templates/modals.html:15
+#: templates/js/translated/purchase_order.js:802 templates/modals.html:15
#: templates/modals.html:27 templates/modals.html:39 templates/modals.html:50
msgid "Close"
msgstr ""
-#: templates/js/translated/bom.js:305
+#: templates/js/translated/bom.js:306
msgid "Download BOM Template"
msgstr ""
-#: templates/js/translated/bom.js:350
+#: templates/js/translated/bom.js:351
msgid "Multi Level BOM"
msgstr ""
-#: templates/js/translated/bom.js:351
+#: templates/js/translated/bom.js:352
msgid "Include BOM data for subassemblies"
msgstr ""
-#: templates/js/translated/bom.js:356
+#: templates/js/translated/bom.js:357
msgid "Levels"
msgstr ""
-#: templates/js/translated/bom.js:357
+#: templates/js/translated/bom.js:358
msgid "Select maximum number of BOM levels to export (0 = all levels)"
msgstr ""
-#: templates/js/translated/bom.js:364
+#: templates/js/translated/bom.js:365
msgid "Include Alternative Parts"
msgstr ""
-#: templates/js/translated/bom.js:365
+#: templates/js/translated/bom.js:366
msgid "Include alternative parts in exported BOM"
msgstr ""
-#: templates/js/translated/bom.js:370
+#: templates/js/translated/bom.js:371
msgid "Include Parameter Data"
msgstr ""
-#: templates/js/translated/bom.js:371
+#: templates/js/translated/bom.js:372
msgid "Include part parameter data in exported BOM"
msgstr ""
-#: templates/js/translated/bom.js:376
+#: templates/js/translated/bom.js:377
msgid "Include Stock Data"
msgstr ""
-#: templates/js/translated/bom.js:377
+#: templates/js/translated/bom.js:378
msgid "Include part stock data in exported BOM"
msgstr ""
-#: templates/js/translated/bom.js:382
+#: templates/js/translated/bom.js:383
msgid "Include Manufacturer Data"
msgstr ""
-#: templates/js/translated/bom.js:383
+#: templates/js/translated/bom.js:384
msgid "Include part manufacturer data in exported BOM"
msgstr ""
-#: templates/js/translated/bom.js:388
+#: templates/js/translated/bom.js:389
msgid "Include Supplier Data"
msgstr ""
-#: templates/js/translated/bom.js:389
+#: templates/js/translated/bom.js:390
msgid "Include part supplier data in exported BOM"
msgstr ""
-#: templates/js/translated/bom.js:394
+#: templates/js/translated/bom.js:395
msgid "Include Pricing Data"
msgstr ""
-#: templates/js/translated/bom.js:395
+#: templates/js/translated/bom.js:396
msgid "Include part pricing data in exported BOM"
msgstr ""
-#: templates/js/translated/bom.js:590
+#: templates/js/translated/bom.js:591
msgid "Remove substitute part"
msgstr ""
-#: templates/js/translated/bom.js:644
+#: templates/js/translated/bom.js:645
msgid "Select and add a new substitute part using the input below"
msgstr ""
-#: templates/js/translated/bom.js:655
+#: templates/js/translated/bom.js:656
msgid "Are you sure you wish to remove this substitute part link?"
msgstr ""
-#: templates/js/translated/bom.js:661
+#: templates/js/translated/bom.js:662
msgid "Remove Substitute Part"
msgstr ""
-#: templates/js/translated/bom.js:700
+#: templates/js/translated/bom.js:701
msgid "Add Substitute"
msgstr ""
-#: templates/js/translated/bom.js:701
+#: templates/js/translated/bom.js:702
msgid "Edit BOM Item Substitutes"
msgstr ""
-#: templates/js/translated/bom.js:763
+#: templates/js/translated/bom.js:764
msgid "All selected BOM items will be deleted"
msgstr ""
-#: templates/js/translated/bom.js:779
+#: templates/js/translated/bom.js:780
msgid "Delete selected BOM items?"
msgstr ""
-#: templates/js/translated/bom.js:906
+#: templates/js/translated/bom.js:826
+msgid "Delete items"
+msgstr ""
+
+#: templates/js/translated/bom.js:924
msgid "Load BOM for subassembly"
msgstr ""
-#: templates/js/translated/bom.js:916
+#: templates/js/translated/bom.js:934
msgid "Substitutes Available"
msgstr ""
-#: templates/js/translated/bom.js:920 templates/js/translated/build.js:2090
+#: templates/js/translated/bom.js:938 templates/js/translated/build.js:2429
msgid "Variant stock allowed"
msgstr ""
-#: templates/js/translated/bom.js:984
+#: templates/js/translated/bom.js:1002
msgid "Substitutes"
msgstr ""
-#: templates/js/translated/bom.js:1104
+#: templates/js/translated/bom.js:1122
msgid "BOM pricing is complete"
msgstr ""
-#: templates/js/translated/bom.js:1109
+#: templates/js/translated/bom.js:1127
msgid "BOM pricing is incomplete"
msgstr ""
-#: templates/js/translated/bom.js:1116
+#: templates/js/translated/bom.js:1134
msgid "No pricing available"
msgstr ""
-#: templates/js/translated/bom.js:1147 templates/js/translated/build.js:2173
-#: templates/js/translated/sales_order.js:1887
+#: templates/js/translated/bom.js:1165 templates/js/translated/build.js:2523
+#: templates/js/translated/sales_order.js:1899
msgid "No Stock Available"
msgstr ""
-#: templates/js/translated/bom.js:1152 templates/js/translated/build.js:2177
+#: templates/js/translated/bom.js:1170 templates/js/translated/build.js:2527
msgid "Includes variant and substitute stock"
msgstr ""
-#: templates/js/translated/bom.js:1154 templates/js/translated/build.js:2179
-#: templates/js/translated/part.js:1230
+#: templates/js/translated/bom.js:1172 templates/js/translated/build.js:2529
+#: templates/js/translated/part.js:1229
msgid "Includes variant stock"
msgstr ""
-#: templates/js/translated/bom.js:1156 templates/js/translated/build.js:2181
+#: templates/js/translated/bom.js:1174 templates/js/translated/build.js:2531
msgid "Includes substitute stock"
msgstr ""
-#: templates/js/translated/bom.js:1184 templates/js/translated/build.js:2164
-#: templates/js/translated/build.js:2255
+#: templates/js/translated/bom.js:1204 templates/js/translated/build.js:2514
msgid "Consumable item"
msgstr ""
-#: templates/js/translated/bom.js:1244
+#: templates/js/translated/bom.js:1264
msgid "Validate BOM Item"
msgstr ""
-#: templates/js/translated/bom.js:1246
+#: templates/js/translated/bom.js:1266
msgid "This line has been validated"
msgstr ""
-#: templates/js/translated/bom.js:1248
+#: templates/js/translated/bom.js:1268
msgid "Edit substitute parts"
msgstr ""
-#: templates/js/translated/bom.js:1250 templates/js/translated/bom.js:1445
+#: templates/js/translated/bom.js:1270 templates/js/translated/bom.js:1465
msgid "Edit BOM Item"
msgstr ""
-#: templates/js/translated/bom.js:1252
+#: templates/js/translated/bom.js:1272
msgid "Delete BOM Item"
msgstr ""
-#: templates/js/translated/bom.js:1272
+#: templates/js/translated/bom.js:1292
msgid "View BOM"
msgstr ""
-#: templates/js/translated/bom.js:1356 templates/js/translated/build.js:1927
+#: templates/js/translated/bom.js:1376
msgid "No BOM items found"
msgstr ""
-#: templates/js/translated/bom.js:1616 templates/js/translated/build.js:2073
+#: templates/js/translated/bom.js:1636 templates/js/translated/build.js:2414
msgid "Required Part"
msgstr ""
-#: templates/js/translated/bom.js:1642
+#: templates/js/translated/bom.js:1662
msgid "Inherited from parent BOM"
msgstr ""
-#: templates/js/translated/build.js:126
+#: templates/js/translated/build.js:136
msgid "Edit Build Order"
msgstr ""
-#: templates/js/translated/build.js:169
+#: templates/js/translated/build.js:179
msgid "Create Build Order"
msgstr ""
-#: templates/js/translated/build.js:202
+#: templates/js/translated/build.js:211
msgid "Cancel Build Order"
msgstr ""
-#: templates/js/translated/build.js:211
+#: templates/js/translated/build.js:220
msgid "Are you sure you wish to cancel this build?"
msgstr ""
-#: templates/js/translated/build.js:217
+#: templates/js/translated/build.js:226
msgid "Stock items have been allocated to this build order"
msgstr ""
-#: templates/js/translated/build.js:224
+#: templates/js/translated/build.js:233
msgid "There are incomplete outputs remaining for this build order"
msgstr ""
-#: templates/js/translated/build.js:276
+#: templates/js/translated/build.js:285
msgid "Build order is ready to be completed"
msgstr ""
-#: templates/js/translated/build.js:284
+#: templates/js/translated/build.js:293
msgid "This build order cannot be completed as there are incomplete outputs"
msgstr ""
-#: templates/js/translated/build.js:289
+#: templates/js/translated/build.js:298
msgid "Build Order is incomplete"
msgstr ""
-#: templates/js/translated/build.js:307
+#: templates/js/translated/build.js:316
msgid "Complete Build Order"
msgstr ""
-#: templates/js/translated/build.js:348 templates/js/translated/stock.js:119
-#: templates/js/translated/stock.js:265
+#: templates/js/translated/build.js:357 templates/js/translated/stock.js:118
+#: templates/js/translated/stock.js:264
msgid "Next available serial number"
msgstr ""
-#: templates/js/translated/build.js:350 templates/js/translated/stock.js:121
-#: templates/js/translated/stock.js:267
+#: templates/js/translated/build.js:359 templates/js/translated/stock.js:120
+#: templates/js/translated/stock.js:266
msgid "Latest serial number"
msgstr ""
-#: templates/js/translated/build.js:359
+#: templates/js/translated/build.js:368
msgid "The Bill of Materials contains trackable parts"
msgstr ""
-#: templates/js/translated/build.js:360
+#: templates/js/translated/build.js:369
msgid "Build outputs must be generated individually"
msgstr ""
-#: templates/js/translated/build.js:368
+#: templates/js/translated/build.js:377
msgid "Trackable parts can have serial numbers specified"
msgstr ""
-#: templates/js/translated/build.js:369
+#: templates/js/translated/build.js:378
msgid "Enter serial numbers to generate multiple single build outputs"
msgstr ""
-#: templates/js/translated/build.js:376
+#: templates/js/translated/build.js:385
msgid "Create Build Output"
msgstr ""
-#: templates/js/translated/build.js:407
+#: templates/js/translated/build.js:416
msgid "Allocate stock items to this build output"
msgstr ""
-#: templates/js/translated/build.js:418
-msgid "Unallocate stock from build output"
+#: templates/js/translated/build.js:424
+msgid "Deallocate stock from build output"
msgstr ""
-#: templates/js/translated/build.js:427
+#: templates/js/translated/build.js:433
msgid "Complete build output"
msgstr ""
-#: templates/js/translated/build.js:435
+#: templates/js/translated/build.js:441
msgid "Scrap build output"
msgstr ""
-#: templates/js/translated/build.js:442
+#: templates/js/translated/build.js:448
msgid "Delete build output"
msgstr ""
-#: templates/js/translated/build.js:462
-msgid "Are you sure you wish to unallocate stock items from this build?"
+#: templates/js/translated/build.js:468
+msgid "Are you sure you wish to deallocate the selected stock items from this build?"
msgstr ""
-#: templates/js/translated/build.js:480
-msgid "Unallocate Stock Items"
+#: templates/js/translated/build.js:486
+msgid "Deallocate Stock Items"
msgstr ""
-#: templates/js/translated/build.js:566 templates/js/translated/build.js:690
-#: templates/js/translated/build.js:812
+#: templates/js/translated/build.js:572 templates/js/translated/build.js:696
+#: templates/js/translated/build.js:818
msgid "Select Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:567 templates/js/translated/build.js:691
-#: templates/js/translated/build.js:813
+#: templates/js/translated/build.js:573 templates/js/translated/build.js:697
+#: templates/js/translated/build.js:819
msgid "At least one build output must be selected"
msgstr ""
-#: templates/js/translated/build.js:581
+#: templates/js/translated/build.js:587
msgid "Selected build outputs will be marked as complete"
msgstr ""
-#: templates/js/translated/build.js:585 templates/js/translated/build.js:715
-#: templates/js/translated/build.js:835
+#: templates/js/translated/build.js:591 templates/js/translated/build.js:721
+#: templates/js/translated/build.js:841
msgid "Output"
msgstr ""
-#: templates/js/translated/build.js:609
+#: templates/js/translated/build.js:615
msgid "Complete Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:706
+#: templates/js/translated/build.js:712
msgid "Selected build outputs will be marked as scrapped"
msgstr ""
-#: templates/js/translated/build.js:708
+#: templates/js/translated/build.js:714
msgid "Scrapped output are marked as rejected"
msgstr ""
-#: templates/js/translated/build.js:709
+#: templates/js/translated/build.js:715
msgid "Allocated stock items will no longer be available"
msgstr ""
-#: templates/js/translated/build.js:710
+#: templates/js/translated/build.js:716
msgid "The completion status of the build order will not be adjusted"
msgstr ""
-#: templates/js/translated/build.js:737
+#: templates/js/translated/build.js:743
msgid "Scrap Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:827
+#: templates/js/translated/build.js:833
msgid "Selected build outputs will be deleted"
msgstr ""
-#: templates/js/translated/build.js:829
+#: templates/js/translated/build.js:835
msgid "Build output data will be permanently deleted"
msgstr ""
-#: templates/js/translated/build.js:830
+#: templates/js/translated/build.js:836
msgid "Allocated stock items will be returned to stock"
msgstr ""
-#: templates/js/translated/build.js:848
+#: templates/js/translated/build.js:854
msgid "Delete Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:934
+#: templates/js/translated/build.js:941
msgid "No build order allocations found"
msgstr ""
-#: templates/js/translated/build.js:971
+#: templates/js/translated/build.js:970 templates/js/translated/build.js:2270
+msgid "Allocated Quantity"
+msgstr ""
+
+#: templates/js/translated/build.js:984
msgid "Location not specified"
msgstr ""
-#: templates/js/translated/build.js:1047
+#: templates/js/translated/build.js:1006
+msgid "Complete outputs"
+msgstr ""
+
+#: templates/js/translated/build.js:1024
+msgid "Scrap outputs"
+msgstr ""
+
+#: templates/js/translated/build.js:1042
+msgid "Delete outputs"
+msgstr ""
+
+#: templates/js/translated/build.js:1100
msgid "build output"
msgstr ""
-#: templates/js/translated/build.js:1048
+#: templates/js/translated/build.js:1101
msgid "build outputs"
msgstr ""
-#: templates/js/translated/build.js:1383
+#: templates/js/translated/build.js:1105
+msgid "Build output actions"
+msgstr ""
+
+#: templates/js/translated/build.js:1274
msgid "No active build outputs found"
msgstr ""
-#: templates/js/translated/build.js:1457
-msgid "Allocated Stock"
+#: templates/js/translated/build.js:1329
+msgid "Allocated Lines"
msgstr ""
-#: templates/js/translated/build.js:1464
-msgid "No tracked BOM items for this build"
+#: templates/js/translated/build.js:1343
+msgid "Required Tests"
msgstr ""
-#: templates/js/translated/build.js:1486
-msgid "Completed Tests"
-msgstr ""
-
-#: templates/js/translated/build.js:1491
-msgid "No required tests for this build"
-msgstr ""
-
-#: templates/js/translated/build.js:2032 templates/js/translated/build.js:3056
-#: templates/js/translated/sales_order.js:1632
-msgid "Edit stock allocation"
-msgstr ""
-
-#: templates/js/translated/build.js:2034 templates/js/translated/build.js:3057
-#: templates/js/translated/sales_order.js:1633
-msgid "Delete stock allocation"
-msgstr ""
-
-#: templates/js/translated/build.js:2050
-msgid "Edit Allocation"
-msgstr ""
-
-#: templates/js/translated/build.js:2060
-msgid "Remove Allocation"
-msgstr ""
-
-#: templates/js/translated/build.js:2086
-msgid "Substitute parts available"
-msgstr ""
-
-#: templates/js/translated/build.js:2122
-msgid "Quantity Per"
-msgstr ""
-
-#: templates/js/translated/build.js:2167
-#: templates/js/translated/sales_order.js:1894
-msgid "Insufficient stock available"
-msgstr ""
-
-#: templates/js/translated/build.js:2169
-#: templates/js/translated/sales_order.js:1892
-msgid "Sufficient stock available"
-msgstr ""
-
-#: templates/js/translated/build.js:2263
-#: templates/js/translated/sales_order.js:1993
-msgid "Build stock"
-msgstr ""
-
-#: templates/js/translated/build.js:2267 templates/stock_table.html:38
-msgid "Order stock"
-msgstr ""
-
-#: templates/js/translated/build.js:2270
-#: templates/js/translated/sales_order.js:1987
-msgid "Allocate stock"
-msgstr ""
-
-#: templates/js/translated/build.js:2310
-#: templates/js/translated/purchase_order.js:616
-#: templates/js/translated/sales_order.js:1159
+#: templates/js/translated/build.js:1502
+#: templates/js/translated/purchase_order.js:627
+#: templates/js/translated/sales_order.js:1171
msgid "Select Parts"
msgstr ""
-#: templates/js/translated/build.js:2311
-#: templates/js/translated/sales_order.js:1160
+#: templates/js/translated/build.js:1503
+#: templates/js/translated/sales_order.js:1172
msgid "You must select at least one part to allocate"
msgstr ""
-#: templates/js/translated/build.js:2359
-#: templates/js/translated/sales_order.js:1109
+#: templates/js/translated/build.js:1566
+#: templates/js/translated/sales_order.js:1121
msgid "Specify stock allocation quantity"
msgstr ""
-#: templates/js/translated/build.js:2438
+#: templates/js/translated/build.js:1643
msgid "All Parts Allocated"
msgstr ""
-#: templates/js/translated/build.js:2439
+#: templates/js/translated/build.js:1644
msgid "All selected parts have been fully allocated"
msgstr ""
-#: templates/js/translated/build.js:2453
-#: templates/js/translated/sales_order.js:1174
+#: templates/js/translated/build.js:1658
+#: templates/js/translated/sales_order.js:1186
msgid "Select source location (leave blank to take from all locations)"
msgstr ""
-#: templates/js/translated/build.js:2481
+#: templates/js/translated/build.js:1686
msgid "Allocate Stock Items to Build Order"
msgstr ""
-#: templates/js/translated/build.js:2492
-#: templates/js/translated/sales_order.js:1271
+#: templates/js/translated/build.js:1697
+#: templates/js/translated/sales_order.js:1283
msgid "No matching stock locations"
msgstr ""
-#: templates/js/translated/build.js:2565
-#: templates/js/translated/sales_order.js:1348
+#: templates/js/translated/build.js:1770
+#: templates/js/translated/sales_order.js:1360
msgid "No matching stock items"
msgstr ""
-#: templates/js/translated/build.js:2662
+#: templates/js/translated/build.js:1867
msgid "Automatic Stock Allocation"
msgstr ""
-#: templates/js/translated/build.js:2663
+#: templates/js/translated/build.js:1868
msgid "Stock items will be automatically allocated to this build order, according to the provided guidelines"
msgstr ""
-#: templates/js/translated/build.js:2665
+#: templates/js/translated/build.js:1870
msgid "If a location is specified, stock will only be allocated from that location"
msgstr ""
-#: templates/js/translated/build.js:2666
+#: templates/js/translated/build.js:1871
msgid "If stock is considered interchangeable, it will be allocated from the first location it is found"
msgstr ""
-#: templates/js/translated/build.js:2667
+#: templates/js/translated/build.js:1872
msgid "If substitute stock is allowed, it will be used where stock of the primary part cannot be found"
msgstr ""
-#: templates/js/translated/build.js:2694
+#: templates/js/translated/build.js:1899
msgid "Allocate Stock Items"
msgstr ""
-#: templates/js/translated/build.js:2800
+#: templates/js/translated/build.js:2005
msgid "No builds matching query"
msgstr ""
-#: templates/js/translated/build.js:2835 templates/js/translated/part.js:2208
-#: templates/js/translated/part.js:2692 templates/js/translated/stock.js:1759
-#: templates/js/translated/stock.js:2458
+#: templates/js/translated/build.js:2040 templates/js/translated/build.js:2408
+#: templates/js/translated/part.js:2284 templates/js/translated/part.js:2677
+#: templates/js/translated/stock.js:1899 templates/js/translated/stock.js:2589
msgid "Select"
msgstr ""
-#: templates/js/translated/build.js:2849
+#: templates/js/translated/build.js:2054
msgid "Build order is overdue"
msgstr ""
-#: templates/js/translated/build.js:2883
+#: templates/js/translated/build.js:2100
msgid "Progress"
msgstr ""
-#: templates/js/translated/build.js:2919 templates/js/translated/stock.js:2779
+#: templates/js/translated/build.js:2136 templates/js/translated/stock.js:2910
msgid "No user information"
msgstr ""
-#: templates/js/translated/build.js:2934
+#: templates/js/translated/build.js:2151
msgid "group"
msgstr ""
-#: templates/js/translated/build.js:3033
-msgid "No parts allocated for"
+#: templates/js/translated/build.js:2315
+#: templates/js/translated/sales_order.js:1644
+msgid "Edit stock allocation"
msgstr ""
-#: templates/js/translated/company.js:87
+#: templates/js/translated/build.js:2316
+#: templates/js/translated/sales_order.js:1645
+msgid "Delete stock allocation"
+msgstr ""
+
+#: templates/js/translated/build.js:2331
+msgid "Edit Allocation"
+msgstr ""
+
+#: templates/js/translated/build.js:2343
+msgid "Remove Allocation"
+msgstr ""
+
+#: templates/js/translated/build.js:2384
+msgid "build line"
+msgstr ""
+
+#: templates/js/translated/build.js:2385
+msgid "build lines"
+msgstr ""
+
+#: templates/js/translated/build.js:2403
+msgid "No build lines found"
+msgstr ""
+
+#: templates/js/translated/build.js:2433 templates/js/translated/part.js:767
+#: templates/js/translated/part.js:1175
+msgid "Trackable part"
+msgstr ""
+
+#: templates/js/translated/build.js:2468
+msgid "Unit Quantity"
+msgstr ""
+
+#: templates/js/translated/build.js:2517
+#: templates/js/translated/sales_order.js:1906
+msgid "Insufficient stock available"
+msgstr ""
+
+#: templates/js/translated/build.js:2519
+#: templates/js/translated/sales_order.js:1904
+msgid "Sufficient stock available"
+msgstr ""
+
+#: templates/js/translated/build.js:2566
+msgid "Consumable Item"
+msgstr ""
+
+#: templates/js/translated/build.js:2571
+msgid "Tracked item"
+msgstr ""
+
+#: templates/js/translated/build.js:2578
+#: templates/js/translated/sales_order.js:2005
+msgid "Build stock"
+msgstr ""
+
+#: templates/js/translated/build.js:2583 templates/js/translated/stock.js:1779
+msgid "Order stock"
+msgstr ""
+
+#: templates/js/translated/build.js:2587
+#: templates/js/translated/sales_order.js:1999
+msgid "Allocate stock"
+msgstr ""
+
+#: templates/js/translated/build.js:2591
+msgid "Remove stock allocation"
+msgstr ""
+
+#: templates/js/translated/company.js:97
msgid "Add Manufacturer"
msgstr ""
-#: templates/js/translated/company.js:100
-#: templates/js/translated/company.js:202
+#: templates/js/translated/company.js:110
+#: templates/js/translated/company.js:212
msgid "Add Manufacturer Part"
msgstr ""
-#: templates/js/translated/company.js:121
+#: templates/js/translated/company.js:131
msgid "Edit Manufacturer Part"
msgstr ""
-#: templates/js/translated/company.js:190
-#: templates/js/translated/purchase_order.js:94
+#: templates/js/translated/company.js:200
+#: templates/js/translated/purchase_order.js:93
msgid "Add Supplier"
msgstr ""
-#: templates/js/translated/company.js:232
-#: templates/js/translated/purchase_order.js:338
+#: templates/js/translated/company.js:242
+#: templates/js/translated/purchase_order.js:349
msgid "Add Supplier Part"
msgstr ""
-#: templates/js/translated/company.js:333
+#: templates/js/translated/company.js:343
msgid "All selected supplier parts will be deleted"
msgstr ""
-#: templates/js/translated/company.js:349
+#: templates/js/translated/company.js:359
msgid "Delete Supplier Parts"
msgstr ""
-#: templates/js/translated/company.js:457
+#: templates/js/translated/company.js:464
msgid "Add new Company"
msgstr ""
-#: templates/js/translated/company.js:528
+#: templates/js/translated/company.js:535
msgid "Parts Supplied"
msgstr ""
-#: templates/js/translated/company.js:537
+#: templates/js/translated/company.js:544
msgid "Parts Manufactured"
msgstr ""
-#: templates/js/translated/company.js:552
+#: templates/js/translated/company.js:559
msgid "No company information found"
msgstr ""
-#: templates/js/translated/company.js:601
+#: templates/js/translated/company.js:608
msgid "Create New Contact"
msgstr ""
-#: templates/js/translated/company.js:617
-#: templates/js/translated/company.js:740
+#: templates/js/translated/company.js:624
+#: templates/js/translated/company.js:747
msgid "Edit Contact"
msgstr ""
-#: templates/js/translated/company.js:654
+#: templates/js/translated/company.js:661
msgid "All selected contacts will be deleted"
msgstr ""
-#: templates/js/translated/company.js:660
-#: templates/js/translated/company.js:724
+#: templates/js/translated/company.js:667
+#: templates/js/translated/company.js:731
msgid "Role"
msgstr ""
-#: templates/js/translated/company.js:668
+#: templates/js/translated/company.js:675
msgid "Delete Contacts"
msgstr ""
-#: templates/js/translated/company.js:699
+#: templates/js/translated/company.js:706
msgid "No contacts found"
msgstr ""
-#: templates/js/translated/company.js:712
+#: templates/js/translated/company.js:719
msgid "Phone Number"
msgstr ""
-#: templates/js/translated/company.js:718
+#: templates/js/translated/company.js:725
msgid "Email Address"
msgstr ""
-#: templates/js/translated/company.js:744
+#: templates/js/translated/company.js:751
msgid "Delete Contact"
msgstr ""
-#: templates/js/translated/company.js:818
+#: templates/js/translated/company.js:886
+msgid "Create New Address"
+msgstr ""
+
+#: templates/js/translated/company.js:901
+#: templates/js/translated/company.js:1066
+msgid "Edit Address"
+msgstr ""
+
+#: templates/js/translated/company.js:936
+msgid "All selected addresses will be deleted"
+msgstr ""
+
+#: templates/js/translated/company.js:950
+msgid "Delete Addresses"
+msgstr ""
+
+#: templates/js/translated/company.js:977
+msgid "No addresses found"
+msgstr ""
+
+#: templates/js/translated/company.js:1020
+msgid "Postal city"
+msgstr ""
+
+#: templates/js/translated/company.js:1026
+msgid "State/province"
+msgstr ""
+
+#: templates/js/translated/company.js:1038
+msgid "Courier notes"
+msgstr ""
+
+#: templates/js/translated/company.js:1044
+msgid "Internal notes"
+msgstr ""
+
+#: templates/js/translated/company.js:1070
+msgid "Delete Address"
+msgstr ""
+
+#: templates/js/translated/company.js:1143
msgid "All selected manufacturer parts will be deleted"
msgstr ""
-#: templates/js/translated/company.js:833
+#: templates/js/translated/company.js:1158
msgid "Delete Manufacturer Parts"
msgstr ""
-#: templates/js/translated/company.js:867
+#: templates/js/translated/company.js:1192
msgid "All selected parameters will be deleted"
msgstr ""
-#: templates/js/translated/company.js:881
+#: templates/js/translated/company.js:1206
msgid "Delete Parameters"
msgstr ""
-#: templates/js/translated/company.js:917
+#: templates/js/translated/company.js:1222
+#: templates/js/translated/company.js:1510 templates/js/translated/part.js:2213
+msgid "Order parts"
+msgstr ""
+
+#: templates/js/translated/company.js:1239
+msgid "Delete manufacturer parts"
+msgstr ""
+
+#: templates/js/translated/company.js:1271
+msgid "Manufacturer part actions"
+msgstr ""
+
+#: templates/js/translated/company.js:1290
msgid "No manufacturer parts found"
msgstr ""
-#: templates/js/translated/company.js:937
-#: templates/js/translated/company.js:1177 templates/js/translated/part.js:776
-#: templates/js/translated/part.js:1184
+#: templates/js/translated/company.js:1310
+#: templates/js/translated/company.js:1598 templates/js/translated/part.js:775
+#: templates/js/translated/part.js:1183
msgid "Template part"
msgstr ""
-#: templates/js/translated/company.js:941
-#: templates/js/translated/company.js:1181 templates/js/translated/part.js:780
-#: templates/js/translated/part.js:1188
+#: templates/js/translated/company.js:1314
+#: templates/js/translated/company.js:1602 templates/js/translated/part.js:779
+#: templates/js/translated/part.js:1187
msgid "Assembled part"
msgstr ""
-#: templates/js/translated/company.js:1061 templates/js/translated/part.js:1437
+#: templates/js/translated/company.js:1434 templates/js/translated/part.js:1436
msgid "No parameters found"
msgstr ""
-#: templates/js/translated/company.js:1096 templates/js/translated/part.js:1500
+#: templates/js/translated/company.js:1469 templates/js/translated/part.js:1499
msgid "Edit parameter"
msgstr ""
-#: templates/js/translated/company.js:1097 templates/js/translated/part.js:1501
+#: templates/js/translated/company.js:1470 templates/js/translated/part.js:1500
msgid "Delete parameter"
msgstr ""
-#: templates/js/translated/company.js:1114 templates/js/translated/part.js:1407
+#: templates/js/translated/company.js:1487 templates/js/translated/part.js:1406
msgid "Edit Parameter"
msgstr ""
-#: templates/js/translated/company.js:1123 templates/js/translated/part.js:1522
+#: templates/js/translated/company.js:1496 templates/js/translated/part.js:1521
msgid "Delete Parameter"
msgstr ""
-#: templates/js/translated/company.js:1156
+#: templates/js/translated/company.js:1527
+msgid "Delete supplier parts"
+msgstr ""
+
+#: templates/js/translated/company.js:1577
msgid "No supplier parts found"
msgstr ""
-#: templates/js/translated/company.js:1274
+#: templates/js/translated/company.js:1695
msgid "Base Units"
msgstr ""
-#: templates/js/translated/company.js:1304
+#: templates/js/translated/company.js:1725
msgid "Availability"
msgstr ""
-#: templates/js/translated/company.js:1335
+#: templates/js/translated/company.js:1756
msgid "Edit supplier part"
msgstr ""
-#: templates/js/translated/company.js:1336
+#: templates/js/translated/company.js:1757
msgid "Delete supplier part"
msgstr ""
-#: templates/js/translated/company.js:1389
+#: templates/js/translated/company.js:1810
#: templates/js/translated/pricing.js:694
msgid "Delete Price Break"
msgstr ""
-#: templates/js/translated/company.js:1399
+#: templates/js/translated/company.js:1820
#: templates/js/translated/pricing.js:712
msgid "Edit Price Break"
msgstr ""
-#: templates/js/translated/company.js:1414
+#: templates/js/translated/company.js:1835
msgid "No price break information found"
msgstr ""
-#: templates/js/translated/company.js:1443
+#: templates/js/translated/company.js:1864
msgid "Last updated"
msgstr ""
-#: templates/js/translated/company.js:1450
+#: templates/js/translated/company.js:1871
msgid "Edit price break"
msgstr ""
-#: templates/js/translated/company.js:1451
+#: templates/js/translated/company.js:1872
msgid "Delete price break"
msgstr ""
-#: templates/js/translated/filters.js:186
-#: templates/js/translated/filters.js:550
+#: templates/js/translated/filters.js:187
+#: templates/js/translated/filters.js:673
msgid "true"
msgstr ""
-#: templates/js/translated/filters.js:190
-#: templates/js/translated/filters.js:551
+#: templates/js/translated/filters.js:191
+#: templates/js/translated/filters.js:674
msgid "false"
msgstr ""
-#: templates/js/translated/filters.js:214
+#: templates/js/translated/filters.js:215
msgid "Select filter"
msgstr ""
-#: templates/js/translated/filters.js:328
+#: templates/js/translated/filters.js:438
msgid "Print Labels"
msgstr ""
-#: templates/js/translated/filters.js:332
+#: templates/js/translated/filters.js:442
msgid "Print Reports"
msgstr ""
-#: templates/js/translated/filters.js:344
+#: templates/js/translated/filters.js:454
msgid "Download table data"
msgstr ""
-#: templates/js/translated/filters.js:351
+#: templates/js/translated/filters.js:461
msgid "Reload table data"
msgstr ""
-#: templates/js/translated/filters.js:360
+#: templates/js/translated/filters.js:470
msgid "Add new filter"
msgstr ""
-#: templates/js/translated/filters.js:368
+#: templates/js/translated/filters.js:478
msgid "Clear all filters"
msgstr ""
-#: templates/js/translated/filters.js:460
+#: templates/js/translated/filters.js:583
msgid "Create filter"
msgstr ""
@@ -10497,6 +10620,12 @@ msgstr ""
msgid "View operation not allowed"
msgstr ""
+#: templates/js/translated/forms.js:506 templates/js/translated/helpers.js:105
+#: templates/js/translated/part.js:369 templates/js/translated/pricing.js:629
+#: templates/js/translated/stock.js:215 users/models.py:253
+msgid "Delete"
+msgstr ""
+
#: templates/js/translated/forms.js:752
msgid "Keep this form open"
msgstr ""
@@ -10514,23 +10643,23 @@ msgstr ""
msgid "No results found"
msgstr ""
-#: templates/js/translated/forms.js:2071 templates/js/translated/search.js:281
+#: templates/js/translated/forms.js:2071 templates/js/translated/search.js:239
msgid "Searching"
msgstr ""
-#: templates/js/translated/forms.js:2276
+#: templates/js/translated/forms.js:2285
msgid "Clear input"
msgstr ""
-#: templates/js/translated/forms.js:2733
+#: templates/js/translated/forms.js:2742
msgid "File Column"
msgstr ""
-#: templates/js/translated/forms.js:2733
+#: templates/js/translated/forms.js:2742
msgid "Field Name"
msgstr ""
-#: templates/js/translated/forms.js:2745
+#: templates/js/translated/forms.js:2754
msgid "Select Columns"
msgstr ""
@@ -10550,6 +10679,14 @@ msgstr ""
msgid "False"
msgstr ""
+#: templates/js/translated/index.js:99
+msgid "No parts required for builds"
+msgstr ""
+
+#: templates/js/translated/index.js:125
+msgid "Allocated Stock"
+msgstr ""
+
#: templates/js/translated/label.js:58
msgid "Select Printer"
msgstr ""
@@ -10651,7 +10788,7 @@ msgstr ""
#: templates/js/translated/news.js:38
#: templates/js/translated/notification.js:45
-#: templates/js/translated/part.js:1577
+#: templates/js/translated/part.js:1576
msgid "ID"
msgstr ""
@@ -10700,7 +10837,7 @@ msgid "Delete Line"
msgstr ""
#: templates/js/translated/order.js:281
-#: templates/js/translated/purchase_order.js:1958
+#: templates/js/translated/purchase_order.js:1968
msgid "No line items found"
msgstr ""
@@ -10716,363 +10853,355 @@ msgstr ""
msgid "Delete line"
msgstr ""
-#: templates/js/translated/part.js:91
+#: templates/js/translated/part.js:90
msgid "Part Attributes"
msgstr ""
-#: templates/js/translated/part.js:95
+#: templates/js/translated/part.js:94
msgid "Part Creation Options"
msgstr ""
-#: templates/js/translated/part.js:99
+#: templates/js/translated/part.js:98
msgid "Part Duplication Options"
msgstr ""
-#: templates/js/translated/part.js:122
+#: templates/js/translated/part.js:121
msgid "Add Part Category"
msgstr ""
-#: templates/js/translated/part.js:294
+#: templates/js/translated/part.js:293
msgid "Parent part category"
msgstr ""
-#: templates/js/translated/part.js:310 templates/js/translated/stock.js:147
+#: templates/js/translated/part.js:309 templates/js/translated/stock.js:146
msgid "Icon (optional) - Explore all available icons on"
msgstr ""
-#: templates/js/translated/part.js:330
+#: templates/js/translated/part.js:329
msgid "Create Part Category"
msgstr ""
-#: templates/js/translated/part.js:333
+#: templates/js/translated/part.js:332
msgid "Create new category after this one"
msgstr ""
-#: templates/js/translated/part.js:334
+#: templates/js/translated/part.js:333
msgid "Part category created"
msgstr ""
-#: templates/js/translated/part.js:348
+#: templates/js/translated/part.js:347
msgid "Edit Part Category"
msgstr ""
-#: templates/js/translated/part.js:361
+#: templates/js/translated/part.js:360
msgid "Are you sure you want to delete this part category?"
msgstr ""
-#: templates/js/translated/part.js:366
+#: templates/js/translated/part.js:365
msgid "Move to parent category"
msgstr ""
-#: templates/js/translated/part.js:375
+#: templates/js/translated/part.js:374
msgid "Delete Part Category"
msgstr ""
-#: templates/js/translated/part.js:379
+#: templates/js/translated/part.js:378
msgid "Action for parts in this category"
msgstr ""
-#: templates/js/translated/part.js:384
+#: templates/js/translated/part.js:383
msgid "Action for child categories"
msgstr ""
-#: templates/js/translated/part.js:408
+#: templates/js/translated/part.js:407
msgid "Create Part"
msgstr ""
-#: templates/js/translated/part.js:410
+#: templates/js/translated/part.js:409
msgid "Create another part after this one"
msgstr ""
-#: templates/js/translated/part.js:411
+#: templates/js/translated/part.js:410
msgid "Part created successfully"
msgstr ""
-#: templates/js/translated/part.js:439
+#: templates/js/translated/part.js:438
msgid "Edit Part"
msgstr ""
-#: templates/js/translated/part.js:441
+#: templates/js/translated/part.js:440
msgid "Part edited"
msgstr ""
-#: templates/js/translated/part.js:452
+#: templates/js/translated/part.js:451
msgid "Create Part Variant"
msgstr ""
-#: templates/js/translated/part.js:509
+#: templates/js/translated/part.js:508
msgid "Active Part"
msgstr ""
-#: templates/js/translated/part.js:510
+#: templates/js/translated/part.js:509
msgid "Part cannot be deleted as it is currently active"
msgstr ""
-#: templates/js/translated/part.js:524
+#: templates/js/translated/part.js:523
msgid "Deleting this part cannot be reversed"
msgstr ""
-#: templates/js/translated/part.js:526
+#: templates/js/translated/part.js:525
msgid "Any stock items for this part will be deleted"
msgstr ""
-#: templates/js/translated/part.js:527
+#: templates/js/translated/part.js:526
msgid "This part will be removed from any Bills of Material"
msgstr ""
-#: templates/js/translated/part.js:528
+#: templates/js/translated/part.js:527
msgid "All manufacturer and supplier information for this part will be deleted"
msgstr ""
-#: templates/js/translated/part.js:535
+#: templates/js/translated/part.js:534
msgid "Delete Part"
msgstr ""
-#: templates/js/translated/part.js:571
+#: templates/js/translated/part.js:570
msgid "You are subscribed to notifications for this item"
msgstr ""
-#: templates/js/translated/part.js:573
+#: templates/js/translated/part.js:572
msgid "You have subscribed to notifications for this item"
msgstr ""
-#: templates/js/translated/part.js:578
+#: templates/js/translated/part.js:577
msgid "Subscribe to notifications for this item"
msgstr ""
-#: templates/js/translated/part.js:580
+#: templates/js/translated/part.js:579
msgid "You have unsubscribed to notifications for this item"
msgstr ""
-#: templates/js/translated/part.js:597
+#: templates/js/translated/part.js:596
msgid "Validating the BOM will mark each line item as valid"
msgstr ""
-#: templates/js/translated/part.js:607
+#: templates/js/translated/part.js:606
msgid "Validate Bill of Materials"
msgstr ""
-#: templates/js/translated/part.js:610
+#: templates/js/translated/part.js:609
msgid "Validated Bill of Materials"
msgstr ""
-#: templates/js/translated/part.js:635
+#: templates/js/translated/part.js:634
msgid "Copy Bill of Materials"
msgstr ""
-#: templates/js/translated/part.js:663
-#: templates/js/translated/table_filters.js:660
+#: templates/js/translated/part.js:662
+#: templates/js/translated/table_filters.js:682
msgid "Low stock"
msgstr ""
-#: templates/js/translated/part.js:666
+#: templates/js/translated/part.js:665
msgid "No stock available"
msgstr ""
-#: templates/js/translated/part.js:726
+#: templates/js/translated/part.js:725
msgid "Demand"
msgstr ""
-#: templates/js/translated/part.js:749
+#: templates/js/translated/part.js:748
msgid "Unit"
msgstr ""
-#: templates/js/translated/part.js:768 templates/js/translated/part.js:1176
-msgid "Trackable part"
-msgstr ""
-
-#: templates/js/translated/part.js:772 templates/js/translated/part.js:1180
+#: templates/js/translated/part.js:771 templates/js/translated/part.js:1179
msgid "Virtual part"
msgstr ""
-#: templates/js/translated/part.js:784
+#: templates/js/translated/part.js:783
msgid "Subscribed part"
msgstr ""
-#: templates/js/translated/part.js:788
+#: templates/js/translated/part.js:787
msgid "Salable part"
msgstr ""
-#: templates/js/translated/part.js:863
+#: templates/js/translated/part.js:862
msgid "Schedule generation of a new stocktake report."
msgstr ""
-#: templates/js/translated/part.js:863
+#: templates/js/translated/part.js:862
msgid "Once complete, the stocktake report will be available for download."
msgstr ""
-#: templates/js/translated/part.js:871
+#: templates/js/translated/part.js:870
msgid "Generate Stocktake Report"
msgstr ""
-#: templates/js/translated/part.js:875
+#: templates/js/translated/part.js:874
msgid "Stocktake report scheduled"
msgstr ""
-#: templates/js/translated/part.js:1024
+#: templates/js/translated/part.js:1023
msgid "No stocktake information available"
msgstr ""
-#: templates/js/translated/part.js:1082 templates/js/translated/part.js:1118
+#: templates/js/translated/part.js:1081 templates/js/translated/part.js:1117
msgid "Edit Stocktake Entry"
msgstr ""
-#: templates/js/translated/part.js:1086 templates/js/translated/part.js:1128
+#: templates/js/translated/part.js:1085 templates/js/translated/part.js:1127
msgid "Delete Stocktake Entry"
msgstr ""
-#: templates/js/translated/part.js:1255
+#: templates/js/translated/part.js:1254
msgid "No variants found"
msgstr ""
-#: templates/js/translated/part.js:1572
+#: templates/js/translated/part.js:1571
msgid "No part parameter templates found"
msgstr ""
-#: templates/js/translated/part.js:1635
+#: templates/js/translated/part.js:1634
msgid "Edit Part Parameter Template"
msgstr ""
-#: templates/js/translated/part.js:1647
+#: templates/js/translated/part.js:1646
msgid "Any parameters which reference this template will also be deleted"
msgstr ""
-#: templates/js/translated/part.js:1655
+#: templates/js/translated/part.js:1654
msgid "Delete Part Parameter Template"
msgstr ""
-#: templates/js/translated/part.js:1689
-#: templates/js/translated/purchase_order.js:1618
+#: templates/js/translated/part.js:1688
+#: templates/js/translated/purchase_order.js:1633
msgid "No purchase orders found"
msgstr ""
-#: templates/js/translated/part.js:1832
-#: templates/js/translated/purchase_order.js:2121
-#: templates/js/translated/return_order.js:740
-#: templates/js/translated/sales_order.js:1855
+#: templates/js/translated/part.js:1831
+#: templates/js/translated/purchase_order.js:2131
+#: templates/js/translated/return_order.js:752
+#: templates/js/translated/sales_order.js:1867
msgid "This line item is overdue"
msgstr ""
-#: templates/js/translated/part.js:1877
-#: templates/js/translated/purchase_order.js:2188
+#: templates/js/translated/part.js:1876
+#: templates/js/translated/purchase_order.js:2198
msgid "Receive line item"
msgstr ""
-#: templates/js/translated/part.js:1944
+#: templates/js/translated/part.js:1943
msgid "Delete part relationship"
msgstr ""
-#: templates/js/translated/part.js:1966
+#: templates/js/translated/part.js:1965
msgid "Delete Part Relationship"
msgstr ""
-#: templates/js/translated/part.js:2054 templates/js/translated/part.js:2366
+#: templates/js/translated/part.js:2053 templates/js/translated/part.js:2442
msgid "No parts found"
msgstr ""
-#: templates/js/translated/part.js:2192
-msgid "parts"
-msgstr ""
-
-#: templates/js/translated/part.js:2276
-msgid "No category"
-msgstr ""
-
-#: templates/js/translated/part.js:2390 templates/js/translated/part.js:2611
-#: templates/js/translated/stock.js:2417
-msgid "Display as list"
-msgstr ""
-
-#: templates/js/translated/part.js:2406
-msgid "Display as grid"
-msgstr ""
-
-#: templates/js/translated/part.js:2472
+#: templates/js/translated/part.js:2174
msgid "Set the part category for the selected parts"
msgstr ""
-#: templates/js/translated/part.js:2477
+#: templates/js/translated/part.js:2179
msgid "Set Part Category"
msgstr ""
+#: templates/js/translated/part.js:2204
+msgid "Set category"
+msgstr ""
+
+#: templates/js/translated/part.js:2259
+msgid "parts"
+msgstr ""
+
+#: templates/js/translated/part.js:2352
+msgid "No category"
+msgstr ""
+
+#: templates/js/translated/part.js:2466 templates/js/translated/part.js:2596
+#: templates/js/translated/stock.js:2548
+msgid "Display as list"
+msgstr ""
+
#: templates/js/translated/part.js:2482
-msgid "Select Part Category"
+msgid "Display as grid"
msgstr ""
-#: templates/js/translated/part.js:2495
-msgid "Category is required"
-msgstr ""
-
-#: templates/js/translated/part.js:2595
+#: templates/js/translated/part.js:2580
msgid "No subcategories found"
msgstr ""
-#: templates/js/translated/part.js:2631 templates/js/translated/stock.js:2437
+#: templates/js/translated/part.js:2616 templates/js/translated/stock.js:2568
msgid "Display as tree"
msgstr ""
-#: templates/js/translated/part.js:2711
+#: templates/js/translated/part.js:2696
msgid "Load Subcategories"
msgstr ""
-#: templates/js/translated/part.js:2727
+#: templates/js/translated/part.js:2712
msgid "Subscribed category"
msgstr ""
-#: templates/js/translated/part.js:2807
+#: templates/js/translated/part.js:2792
msgid "No test templates matching query"
msgstr ""
-#: templates/js/translated/part.js:2858 templates/js/translated/stock.js:1380
+#: templates/js/translated/part.js:2843 templates/js/translated/stock.js:1379
msgid "Edit test result"
msgstr ""
-#: templates/js/translated/part.js:2859 templates/js/translated/stock.js:1381
-#: templates/js/translated/stock.js:1643
+#: templates/js/translated/part.js:2844 templates/js/translated/stock.js:1380
+#: templates/js/translated/stock.js:1642
msgid "Delete test result"
msgstr ""
-#: templates/js/translated/part.js:2863
+#: templates/js/translated/part.js:2848
msgid "This test is defined for a parent part"
msgstr ""
-#: templates/js/translated/part.js:2879
+#: templates/js/translated/part.js:2864
msgid "Edit Test Result Template"
msgstr ""
-#: templates/js/translated/part.js:2893
+#: templates/js/translated/part.js:2878
msgid "Delete Test Result Template"
msgstr ""
-#: templates/js/translated/part.js:2972 templates/js/translated/part.js:2973
+#: templates/js/translated/part.js:2957 templates/js/translated/part.js:2958
msgid "No date specified"
msgstr ""
-#: templates/js/translated/part.js:2975
+#: templates/js/translated/part.js:2960
msgid "Specified date is in the past"
msgstr ""
-#: templates/js/translated/part.js:2981
+#: templates/js/translated/part.js:2966
msgid "Speculative"
msgstr ""
-#: templates/js/translated/part.js:3031
+#: templates/js/translated/part.js:3016
msgid "No scheduling information available for this part"
msgstr ""
-#: templates/js/translated/part.js:3037
+#: templates/js/translated/part.js:3022
msgid "Error fetching scheduling information for this part"
msgstr ""
-#: templates/js/translated/part.js:3133
+#: templates/js/translated/part.js:3118
msgid "Scheduled Stock Quantities"
msgstr ""
-#: templates/js/translated/part.js:3149
+#: templates/js/translated/part.js:3134
msgid "Maximum Quantity"
msgstr ""
-#: templates/js/translated/part.js:3194
+#: templates/js/translated/part.js:3179
msgid "Minimum Stock Level"
msgstr ""
@@ -11168,234 +11297,234 @@ msgstr ""
msgid "Variant Part"
msgstr ""
-#: templates/js/translated/purchase_order.js:155
+#: templates/js/translated/purchase_order.js:166
msgid "Select purchase order to duplicate"
msgstr ""
-#: templates/js/translated/purchase_order.js:162
+#: templates/js/translated/purchase_order.js:173
msgid "Duplicate Line Items"
msgstr ""
-#: templates/js/translated/purchase_order.js:163
+#: templates/js/translated/purchase_order.js:174
msgid "Duplicate all line items from the selected order"
msgstr ""
-#: templates/js/translated/purchase_order.js:170
+#: templates/js/translated/purchase_order.js:181
msgid "Duplicate Extra Lines"
msgstr ""
-#: templates/js/translated/purchase_order.js:171
+#: templates/js/translated/purchase_order.js:182
msgid "Duplicate extra line items from the selected order"
msgstr ""
-#: templates/js/translated/purchase_order.js:192
+#: templates/js/translated/purchase_order.js:203
msgid "Edit Purchase Order"
msgstr ""
-#: templates/js/translated/purchase_order.js:209
+#: templates/js/translated/purchase_order.js:220
msgid "Duplication Options"
msgstr ""
-#: templates/js/translated/purchase_order.js:436
+#: templates/js/translated/purchase_order.js:447
msgid "Complete Purchase Order"
msgstr ""
-#: templates/js/translated/purchase_order.js:453
-#: templates/js/translated/return_order.js:195
-#: templates/js/translated/sales_order.js:485
+#: templates/js/translated/purchase_order.js:464
+#: templates/js/translated/return_order.js:207
+#: templates/js/translated/sales_order.js:497
msgid "Mark this order as complete?"
msgstr ""
-#: templates/js/translated/purchase_order.js:459
+#: templates/js/translated/purchase_order.js:470
msgid "All line items have been received"
msgstr ""
-#: templates/js/translated/purchase_order.js:464
+#: templates/js/translated/purchase_order.js:475
msgid "This order has line items which have not been marked as received."
msgstr ""
-#: templates/js/translated/purchase_order.js:465
-#: templates/js/translated/sales_order.js:499
+#: templates/js/translated/purchase_order.js:476
+#: templates/js/translated/sales_order.js:511
msgid "Completing this order means that the order and line items will no longer be editable."
msgstr ""
-#: templates/js/translated/purchase_order.js:488
+#: templates/js/translated/purchase_order.js:499
msgid "Cancel Purchase Order"
msgstr ""
-#: templates/js/translated/purchase_order.js:493
+#: templates/js/translated/purchase_order.js:504
msgid "Are you sure you wish to cancel this purchase order?"
msgstr ""
-#: templates/js/translated/purchase_order.js:499
+#: templates/js/translated/purchase_order.js:510
msgid "This purchase order can not be cancelled"
msgstr ""
-#: templates/js/translated/purchase_order.js:520
-#: templates/js/translated/return_order.js:149
+#: templates/js/translated/purchase_order.js:531
+#: templates/js/translated/return_order.js:161
msgid "After placing this order, line items will no longer be editable."
msgstr ""
-#: templates/js/translated/purchase_order.js:525
+#: templates/js/translated/purchase_order.js:536
msgid "Issue Purchase Order"
msgstr ""
-#: templates/js/translated/purchase_order.js:617
+#: templates/js/translated/purchase_order.js:628
msgid "At least one purchaseable part must be selected"
msgstr ""
-#: templates/js/translated/purchase_order.js:642
+#: templates/js/translated/purchase_order.js:653
msgid "Quantity to order"
msgstr ""
-#: templates/js/translated/purchase_order.js:651
+#: templates/js/translated/purchase_order.js:662
msgid "New supplier part"
msgstr ""
-#: templates/js/translated/purchase_order.js:669
+#: templates/js/translated/purchase_order.js:680
msgid "New purchase order"
msgstr ""
-#: templates/js/translated/purchase_order.js:701
+#: templates/js/translated/purchase_order.js:712
msgid "Add to purchase order"
msgstr ""
-#: templates/js/translated/purchase_order.js:845
+#: templates/js/translated/purchase_order.js:860
msgid "No matching supplier parts"
msgstr ""
-#: templates/js/translated/purchase_order.js:864
+#: templates/js/translated/purchase_order.js:879
msgid "No matching purchase orders"
msgstr ""
-#: templates/js/translated/purchase_order.js:1043
+#: templates/js/translated/purchase_order.js:1058
msgid "Select Line Items"
msgstr ""
-#: templates/js/translated/purchase_order.js:1044
-#: templates/js/translated/return_order.js:480
+#: templates/js/translated/purchase_order.js:1059
+#: templates/js/translated/return_order.js:492
msgid "At least one line item must be selected"
msgstr ""
-#: templates/js/translated/purchase_order.js:1074
+#: templates/js/translated/purchase_order.js:1089
msgid "Received Quantity"
msgstr ""
-#: templates/js/translated/purchase_order.js:1085
+#: templates/js/translated/purchase_order.js:1100
msgid "Quantity to receive"
msgstr ""
-#: templates/js/translated/purchase_order.js:1161
+#: templates/js/translated/purchase_order.js:1176
msgid "Stock Status"
msgstr ""
-#: templates/js/translated/purchase_order.js:1175
+#: templates/js/translated/purchase_order.js:1190
msgid "Add barcode"
msgstr ""
-#: templates/js/translated/purchase_order.js:1176
+#: templates/js/translated/purchase_order.js:1191
msgid "Remove barcode"
msgstr ""
-#: templates/js/translated/purchase_order.js:1179
+#: templates/js/translated/purchase_order.js:1194
msgid "Specify location"
msgstr ""
-#: templates/js/translated/purchase_order.js:1187
+#: templates/js/translated/purchase_order.js:1202
msgid "Add batch code"
msgstr ""
-#: templates/js/translated/purchase_order.js:1198
+#: templates/js/translated/purchase_order.js:1213
msgid "Add serial numbers"
msgstr ""
-#: templates/js/translated/purchase_order.js:1250
+#: templates/js/translated/purchase_order.js:1265
msgid "Serials"
msgstr ""
-#: templates/js/translated/purchase_order.js:1275
+#: templates/js/translated/purchase_order.js:1290
msgid "Order Code"
msgstr ""
-#: templates/js/translated/purchase_order.js:1277
+#: templates/js/translated/purchase_order.js:1292
msgid "Quantity to Receive"
msgstr ""
-#: templates/js/translated/purchase_order.js:1299
-#: templates/js/translated/return_order.js:545
+#: templates/js/translated/purchase_order.js:1314
+#: templates/js/translated/return_order.js:557
msgid "Confirm receipt of items"
msgstr ""
-#: templates/js/translated/purchase_order.js:1300
+#: templates/js/translated/purchase_order.js:1315
msgid "Receive Purchase Order Items"
msgstr ""
-#: templates/js/translated/purchase_order.js:1368
+#: templates/js/translated/purchase_order.js:1383
msgid "Scan Item Barcode"
msgstr ""
-#: templates/js/translated/purchase_order.js:1369
+#: templates/js/translated/purchase_order.js:1384
msgid "Scan barcode on incoming item (must not match any existing stock items)"
msgstr ""
-#: templates/js/translated/purchase_order.js:1383
+#: templates/js/translated/purchase_order.js:1398
msgid "Invalid barcode data"
msgstr ""
-#: templates/js/translated/purchase_order.js:1645
-#: templates/js/translated/return_order.js:274
-#: templates/js/translated/sales_order.js:762
-#: templates/js/translated/sales_order.js:986
+#: templates/js/translated/purchase_order.js:1660
+#: templates/js/translated/return_order.js:286
+#: templates/js/translated/sales_order.js:774
+#: templates/js/translated/sales_order.js:998
msgid "Order is overdue"
msgstr ""
-#: templates/js/translated/purchase_order.js:1707
-#: templates/js/translated/return_order.js:342
-#: templates/js/translated/sales_order.js:839
-#: templates/js/translated/sales_order.js:999
+#: templates/js/translated/purchase_order.js:1722
+#: templates/js/translated/return_order.js:354
+#: templates/js/translated/sales_order.js:851
+#: templates/js/translated/sales_order.js:1011
msgid "Items"
msgstr ""
-#: templates/js/translated/purchase_order.js:1806
+#: templates/js/translated/purchase_order.js:1821
msgid "All selected Line items will be deleted"
msgstr ""
-#: templates/js/translated/purchase_order.js:1824
+#: templates/js/translated/purchase_order.js:1839
msgid "Delete selected Line items?"
msgstr ""
-#: templates/js/translated/purchase_order.js:1884
-#: templates/js/translated/sales_order.js:2047
+#: templates/js/translated/purchase_order.js:1894
+#: templates/js/translated/sales_order.js:2059
msgid "Duplicate Line Item"
msgstr ""
-#: templates/js/translated/purchase_order.js:1899
-#: templates/js/translated/return_order.js:464
-#: templates/js/translated/return_order.js:653
-#: templates/js/translated/sales_order.js:2060
+#: templates/js/translated/purchase_order.js:1909
+#: templates/js/translated/return_order.js:476
+#: templates/js/translated/return_order.js:665
+#: templates/js/translated/sales_order.js:2072
msgid "Edit Line Item"
msgstr ""
-#: templates/js/translated/purchase_order.js:1910
-#: templates/js/translated/return_order.js:666
-#: templates/js/translated/sales_order.js:2071
+#: templates/js/translated/purchase_order.js:1920
+#: templates/js/translated/return_order.js:678
+#: templates/js/translated/sales_order.js:2083
msgid "Delete Line Item"
msgstr ""
-#: templates/js/translated/purchase_order.js:2192
-#: templates/js/translated/sales_order.js:2001
+#: templates/js/translated/purchase_order.js:2202
+#: templates/js/translated/sales_order.js:2013
msgid "Duplicate line item"
msgstr ""
-#: templates/js/translated/purchase_order.js:2193
-#: templates/js/translated/return_order.js:785
-#: templates/js/translated/sales_order.js:2002
+#: templates/js/translated/purchase_order.js:2203
+#: templates/js/translated/return_order.js:797
+#: templates/js/translated/sales_order.js:2014
msgid "Edit line item"
msgstr ""
-#: templates/js/translated/purchase_order.js:2194
-#: templates/js/translated/return_order.js:789
-#: templates/js/translated/sales_order.js:2008
+#: templates/js/translated/purchase_order.js:2204
+#: templates/js/translated/return_order.js:801
+#: templates/js/translated/sales_order.js:2020
msgid "Delete line item"
msgstr ""
@@ -11424,941 +11553,973 @@ msgstr ""
msgid "Add Customer"
msgstr ""
-#: templates/js/translated/return_order.js:119
+#: templates/js/translated/return_order.js:131
msgid "Create Return Order"
msgstr ""
-#: templates/js/translated/return_order.js:134
+#: templates/js/translated/return_order.js:146
msgid "Edit Return Order"
msgstr ""
-#: templates/js/translated/return_order.js:154
+#: templates/js/translated/return_order.js:166
msgid "Issue Return Order"
msgstr ""
-#: templates/js/translated/return_order.js:171
+#: templates/js/translated/return_order.js:183
msgid "Are you sure you wish to cancel this Return Order?"
msgstr ""
-#: templates/js/translated/return_order.js:178
+#: templates/js/translated/return_order.js:190
msgid "Cancel Return Order"
msgstr ""
-#: templates/js/translated/return_order.js:203
+#: templates/js/translated/return_order.js:215
msgid "Complete Return Order"
msgstr ""
-#: templates/js/translated/return_order.js:251
+#: templates/js/translated/return_order.js:263
msgid "No return orders found"
msgstr ""
-#: templates/js/translated/return_order.js:288
-#: templates/js/translated/sales_order.js:776
+#: templates/js/translated/return_order.js:300
+#: templates/js/translated/sales_order.js:788
msgid "Invalid Customer"
msgstr ""
-#: templates/js/translated/return_order.js:546
+#: templates/js/translated/return_order.js:558
msgid "Receive Return Order Items"
msgstr ""
-#: templates/js/translated/return_order.js:677
-#: templates/js/translated/sales_order.js:2207
+#: templates/js/translated/return_order.js:689
+#: templates/js/translated/sales_order.js:2219
msgid "No matching line items"
msgstr ""
-#: templates/js/translated/return_order.js:782
+#: templates/js/translated/return_order.js:794
msgid "Mark item as received"
msgstr ""
-#: templates/js/translated/sales_order.js:146
+#: templates/js/translated/sales_order.js:158
msgid "Create Sales Order"
msgstr ""
-#: templates/js/translated/sales_order.js:161
+#: templates/js/translated/sales_order.js:173
msgid "Edit Sales Order"
msgstr ""
-#: templates/js/translated/sales_order.js:276
+#: templates/js/translated/sales_order.js:288
msgid "No stock items have been allocated to this shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:281
+#: templates/js/translated/sales_order.js:293
msgid "The following stock items will be shipped"
msgstr ""
-#: templates/js/translated/sales_order.js:321
+#: templates/js/translated/sales_order.js:333
msgid "Complete Shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:345
+#: templates/js/translated/sales_order.js:357
msgid "Confirm Shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:401
+#: templates/js/translated/sales_order.js:413
msgid "No pending shipments found"
msgstr ""
-#: templates/js/translated/sales_order.js:405
+#: templates/js/translated/sales_order.js:417
msgid "No stock items have been allocated to pending shipments"
msgstr ""
-#: templates/js/translated/sales_order.js:415
+#: templates/js/translated/sales_order.js:427
msgid "Complete Shipments"
msgstr ""
-#: templates/js/translated/sales_order.js:437
+#: templates/js/translated/sales_order.js:449
msgid "Skip"
msgstr ""
-#: templates/js/translated/sales_order.js:498
+#: templates/js/translated/sales_order.js:510
msgid "This order has line items which have not been completed."
msgstr ""
-#: templates/js/translated/sales_order.js:520
+#: templates/js/translated/sales_order.js:532
msgid "Issue this Sales Order?"
msgstr ""
-#: templates/js/translated/sales_order.js:525
+#: templates/js/translated/sales_order.js:537
msgid "Issue Sales Order"
msgstr ""
-#: templates/js/translated/sales_order.js:544
+#: templates/js/translated/sales_order.js:556
msgid "Cancel Sales Order"
msgstr ""
-#: templates/js/translated/sales_order.js:549
+#: templates/js/translated/sales_order.js:561
msgid "Cancelling this order means that the order will no longer be editable."
msgstr ""
-#: templates/js/translated/sales_order.js:603
+#: templates/js/translated/sales_order.js:615
msgid "Create New Shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:713
+#: templates/js/translated/sales_order.js:725
msgid "No sales orders found"
msgstr ""
-#: templates/js/translated/sales_order.js:896
+#: templates/js/translated/sales_order.js:908
msgid "Edit shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:899
+#: templates/js/translated/sales_order.js:911
msgid "Complete shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:904
+#: templates/js/translated/sales_order.js:916
msgid "Delete shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:921
+#: templates/js/translated/sales_order.js:933
msgid "Edit Shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:936
+#: templates/js/translated/sales_order.js:948
msgid "Delete Shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:969
+#: templates/js/translated/sales_order.js:981
msgid "No matching shipments found"
msgstr ""
-#: templates/js/translated/sales_order.js:994
+#: templates/js/translated/sales_order.js:1006
msgid "Shipment Reference"
msgstr ""
-#: templates/js/translated/sales_order.js:1018
-#: templates/js/translated/sales_order.js:1515
+#: templates/js/translated/sales_order.js:1030
+#: templates/js/translated/sales_order.js:1527
msgid "Not shipped"
msgstr ""
-#: templates/js/translated/sales_order.js:1036
+#: templates/js/translated/sales_order.js:1048
msgid "Tracking"
msgstr ""
-#: templates/js/translated/sales_order.js:1040
+#: templates/js/translated/sales_order.js:1052
msgid "Invoice"
msgstr ""
-#: templates/js/translated/sales_order.js:1207
+#: templates/js/translated/sales_order.js:1219
msgid "Add Shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:1258
+#: templates/js/translated/sales_order.js:1270
msgid "Confirm stock allocation"
msgstr ""
-#: templates/js/translated/sales_order.js:1259
+#: templates/js/translated/sales_order.js:1271
msgid "Allocate Stock Items to Sales Order"
msgstr ""
-#: templates/js/translated/sales_order.js:1463
+#: templates/js/translated/sales_order.js:1475
msgid "No sales order allocations found"
msgstr ""
-#: templates/js/translated/sales_order.js:1555
+#: templates/js/translated/sales_order.js:1567
msgid "Edit Stock Allocation"
msgstr ""
-#: templates/js/translated/sales_order.js:1569
+#: templates/js/translated/sales_order.js:1581
msgid "Confirm Delete Operation"
msgstr ""
-#: templates/js/translated/sales_order.js:1570
+#: templates/js/translated/sales_order.js:1582
msgid "Delete Stock Allocation"
msgstr ""
-#: templates/js/translated/sales_order.js:1609
-#: templates/js/translated/sales_order.js:1696
-#: templates/js/translated/stock.js:1688
+#: templates/js/translated/sales_order.js:1621
+#: templates/js/translated/sales_order.js:1708
+#: templates/js/translated/stock.js:1687
msgid "Shipped to customer"
msgstr ""
-#: templates/js/translated/sales_order.js:1617
-#: templates/js/translated/sales_order.js:1705
+#: templates/js/translated/sales_order.js:1629
+#: templates/js/translated/sales_order.js:1717
msgid "Stock location not specified"
msgstr ""
-#: templates/js/translated/sales_order.js:1985
+#: templates/js/translated/sales_order.js:1997
msgid "Allocate serial numbers"
msgstr ""
-#: templates/js/translated/sales_order.js:1989
+#: templates/js/translated/sales_order.js:2001
msgid "Purchase stock"
msgstr ""
-#: templates/js/translated/sales_order.js:1998
-#: templates/js/translated/sales_order.js:2185
+#: templates/js/translated/sales_order.js:2010
+#: templates/js/translated/sales_order.js:2197
msgid "Calculate price"
msgstr ""
-#: templates/js/translated/sales_order.js:2012
+#: templates/js/translated/sales_order.js:2024
msgid "Cannot be deleted as items have been shipped"
msgstr ""
-#: templates/js/translated/sales_order.js:2015
+#: templates/js/translated/sales_order.js:2027
msgid "Cannot be deleted as items have been allocated"
msgstr ""
-#: templates/js/translated/sales_order.js:2086
+#: templates/js/translated/sales_order.js:2098
msgid "Allocate Serial Numbers"
msgstr ""
-#: templates/js/translated/sales_order.js:2193
+#: templates/js/translated/sales_order.js:2205
msgid "Update Unit Price"
msgstr ""
-#: templates/js/translated/search.js:312
+#: templates/js/translated/search.js:270
msgid "No results"
msgstr ""
-#: templates/js/translated/search.js:334 templates/search.html:25
+#: templates/js/translated/search.js:292 templates/search.html:25
msgid "Enter search query"
msgstr ""
-#: templates/js/translated/search.js:384
+#: templates/js/translated/search.js:342
msgid "result"
msgstr ""
-#: templates/js/translated/search.js:384
+#: templates/js/translated/search.js:342
msgid "results"
msgstr ""
-#: templates/js/translated/search.js:394
+#: templates/js/translated/search.js:352
msgid "Minimize results"
msgstr ""
-#: templates/js/translated/search.js:397
+#: templates/js/translated/search.js:355
msgid "Remove results"
msgstr ""
-#: templates/js/translated/stock.js:98
+#: templates/js/translated/stock.js:97
msgid "Serialize Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:129
+#: templates/js/translated/stock.js:128
msgid "Confirm Stock Serialization"
msgstr ""
-#: templates/js/translated/stock.js:138
+#: templates/js/translated/stock.js:137
msgid "Parent stock location"
msgstr ""
-#: templates/js/translated/stock.js:173
+#: templates/js/translated/stock.js:172
msgid "Edit Stock Location"
msgstr ""
-#: templates/js/translated/stock.js:188
+#: templates/js/translated/stock.js:187
msgid "New Stock Location"
msgstr ""
-#: templates/js/translated/stock.js:190
+#: templates/js/translated/stock.js:189
msgid "Create another location after this one"
msgstr ""
-#: templates/js/translated/stock.js:191
+#: templates/js/translated/stock.js:190
msgid "Stock location created"
msgstr ""
-#: templates/js/translated/stock.js:205
+#: templates/js/translated/stock.js:204
msgid "Are you sure you want to delete this stock location?"
msgstr ""
-#: templates/js/translated/stock.js:212
+#: templates/js/translated/stock.js:211
msgid "Move to parent stock location"
msgstr ""
-#: templates/js/translated/stock.js:221
+#: templates/js/translated/stock.js:220
msgid "Delete Stock Location"
msgstr ""
-#: templates/js/translated/stock.js:225
+#: templates/js/translated/stock.js:224
msgid "Action for stock items in this stock location"
msgstr ""
-#: templates/js/translated/stock.js:230
+#: templates/js/translated/stock.js:229
msgid "Action for sub-locations"
msgstr ""
-#: templates/js/translated/stock.js:284
+#: templates/js/translated/stock.js:283
msgid "This part cannot be serialized"
msgstr ""
-#: templates/js/translated/stock.js:320
+#: templates/js/translated/stock.js:319
msgid "Add given quantity as packs instead of individual items"
msgstr ""
-#: templates/js/translated/stock.js:329
+#: templates/js/translated/stock.js:328
msgid "Enter initial quantity for this stock item"
msgstr ""
-#: templates/js/translated/stock.js:335
+#: templates/js/translated/stock.js:334
msgid "Enter serial numbers for new stock (or leave blank)"
msgstr ""
-#: templates/js/translated/stock.js:406
+#: templates/js/translated/stock.js:405
msgid "Stock item duplicated"
msgstr ""
-#: templates/js/translated/stock.js:426
+#: templates/js/translated/stock.js:425
msgid "Duplicate Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:442
+#: templates/js/translated/stock.js:441
msgid "Are you sure you want to delete this stock item?"
msgstr ""
-#: templates/js/translated/stock.js:447
+#: templates/js/translated/stock.js:446
msgid "Delete Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:468
+#: templates/js/translated/stock.js:467
msgid "Edit Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:510
+#: templates/js/translated/stock.js:509
msgid "Create another item after this one"
msgstr ""
-#: templates/js/translated/stock.js:522
+#: templates/js/translated/stock.js:521
msgid "Created new stock item"
msgstr ""
-#: templates/js/translated/stock.js:535
+#: templates/js/translated/stock.js:534
msgid "Created multiple stock items"
msgstr ""
-#: templates/js/translated/stock.js:560
+#: templates/js/translated/stock.js:559
msgid "Find Serial Number"
msgstr ""
-#: templates/js/translated/stock.js:564 templates/js/translated/stock.js:565
+#: templates/js/translated/stock.js:563 templates/js/translated/stock.js:564
msgid "Enter serial number"
msgstr ""
-#: templates/js/translated/stock.js:581
+#: templates/js/translated/stock.js:580
msgid "Enter a serial number"
msgstr ""
-#: templates/js/translated/stock.js:601
+#: templates/js/translated/stock.js:600
msgid "No matching serial number"
msgstr ""
-#: templates/js/translated/stock.js:610
+#: templates/js/translated/stock.js:609
msgid "More than one matching result found"
msgstr ""
-#: templates/js/translated/stock.js:718
+#: templates/js/translated/stock.js:717
msgid "Confirm stock assignment"
msgstr ""
-#: templates/js/translated/stock.js:719
+#: templates/js/translated/stock.js:718
msgid "Assign Stock to Customer"
msgstr ""
-#: templates/js/translated/stock.js:796
+#: templates/js/translated/stock.js:795
msgid "Warning: Merge operation cannot be reversed"
msgstr ""
-#: templates/js/translated/stock.js:797
+#: templates/js/translated/stock.js:796
msgid "Some information will be lost when merging stock items"
msgstr ""
-#: templates/js/translated/stock.js:799
+#: templates/js/translated/stock.js:798
msgid "Stock transaction history will be deleted for merged items"
msgstr ""
-#: templates/js/translated/stock.js:800
+#: templates/js/translated/stock.js:799
msgid "Supplier part information will be deleted for merged items"
msgstr ""
-#: templates/js/translated/stock.js:891
+#: templates/js/translated/stock.js:890
msgid "Confirm stock item merge"
msgstr ""
-#: templates/js/translated/stock.js:892
+#: templates/js/translated/stock.js:891
msgid "Merge Stock Items"
msgstr ""
-#: templates/js/translated/stock.js:987
+#: templates/js/translated/stock.js:986
msgid "Transfer Stock"
msgstr ""
-#: templates/js/translated/stock.js:988
+#: templates/js/translated/stock.js:987
msgid "Move"
msgstr ""
-#: templates/js/translated/stock.js:994
+#: templates/js/translated/stock.js:993
msgid "Count Stock"
msgstr ""
-#: templates/js/translated/stock.js:995
+#: templates/js/translated/stock.js:994
msgid "Count"
msgstr ""
-#: templates/js/translated/stock.js:999
+#: templates/js/translated/stock.js:998
msgid "Remove Stock"
msgstr ""
-#: templates/js/translated/stock.js:1000
+#: templates/js/translated/stock.js:999
msgid "Take"
msgstr ""
-#: templates/js/translated/stock.js:1004
+#: templates/js/translated/stock.js:1003
msgid "Add Stock"
msgstr ""
-#: templates/js/translated/stock.js:1005 users/models.py:243
+#: templates/js/translated/stock.js:1004 users/models.py:249
msgid "Add"
msgstr ""
-#: templates/js/translated/stock.js:1009
+#: templates/js/translated/stock.js:1008
msgid "Delete Stock"
msgstr ""
-#: templates/js/translated/stock.js:1106
+#: templates/js/translated/stock.js:1105
msgid "Quantity cannot be adjusted for serialized stock"
msgstr ""
-#: templates/js/translated/stock.js:1106
+#: templates/js/translated/stock.js:1105
msgid "Specify stock quantity"
msgstr ""
-#: templates/js/translated/stock.js:1140
+#: templates/js/translated/stock.js:1139 templates/js/translated/stock.js:3151
msgid "Select Stock Items"
msgstr ""
-#: templates/js/translated/stock.js:1141
-msgid "You must select at least one available stock item"
+#: templates/js/translated/stock.js:1140
+msgid "Select at least one available stock item"
msgstr ""
-#: templates/js/translated/stock.js:1168
+#: templates/js/translated/stock.js:1167
msgid "Confirm stock adjustment"
msgstr ""
-#: templates/js/translated/stock.js:1304
+#: templates/js/translated/stock.js:1303
msgid "PASS"
msgstr ""
-#: templates/js/translated/stock.js:1306
+#: templates/js/translated/stock.js:1305
msgid "FAIL"
msgstr ""
-#: templates/js/translated/stock.js:1311
+#: templates/js/translated/stock.js:1310
msgid "NO RESULT"
msgstr ""
-#: templates/js/translated/stock.js:1373
+#: templates/js/translated/stock.js:1372
msgid "Pass test"
msgstr ""
-#: templates/js/translated/stock.js:1376
+#: templates/js/translated/stock.js:1375
msgid "Add test result"
msgstr ""
-#: templates/js/translated/stock.js:1400
+#: templates/js/translated/stock.js:1399
msgid "No test results found"
msgstr ""
-#: templates/js/translated/stock.js:1464
+#: templates/js/translated/stock.js:1463
msgid "Test Date"
msgstr ""
-#: templates/js/translated/stock.js:1626
+#: templates/js/translated/stock.js:1625
msgid "Edit Test Result"
msgstr ""
-#: templates/js/translated/stock.js:1648
+#: templates/js/translated/stock.js:1647
msgid "Delete Test Result"
msgstr ""
-#: templates/js/translated/stock.js:1680
+#: templates/js/translated/stock.js:1679
msgid "In production"
msgstr ""
-#: templates/js/translated/stock.js:1684
+#: templates/js/translated/stock.js:1683
msgid "Installed in Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:1692
+#: templates/js/translated/stock.js:1691
msgid "Assigned to Sales Order"
msgstr ""
-#: templates/js/translated/stock.js:1698
+#: templates/js/translated/stock.js:1697
msgid "No stock location set"
msgstr ""
-#: templates/js/translated/stock.js:1746
+#: templates/js/translated/stock.js:1753
+msgid "Change stock status"
+msgstr ""
+
+#: templates/js/translated/stock.js:1762
+msgid "Merge stock"
+msgstr ""
+
+#: templates/js/translated/stock.js:1811
+msgid "Delete stock"
+msgstr ""
+
+#: templates/js/translated/stock.js:1866
msgid "stock items"
msgstr ""
-#: templates/js/translated/stock.js:1850
+#: templates/js/translated/stock.js:1871
+msgid "Scan to location"
+msgstr ""
+
+#: templates/js/translated/stock.js:1882
+msgid "Stock Actions"
+msgstr ""
+
+#: templates/js/translated/stock.js:1929
+msgid "Load installed items"
+msgstr ""
+
+#: templates/js/translated/stock.js:2007
msgid "Stock item is in production"
msgstr ""
-#: templates/js/translated/stock.js:1855
+#: templates/js/translated/stock.js:2012
msgid "Stock item assigned to sales order"
msgstr ""
-#: templates/js/translated/stock.js:1858
+#: templates/js/translated/stock.js:2015
msgid "Stock item assigned to customer"
msgstr ""
-#: templates/js/translated/stock.js:1861
+#: templates/js/translated/stock.js:2018
msgid "Serialized stock item has been allocated"
msgstr ""
-#: templates/js/translated/stock.js:1863
+#: templates/js/translated/stock.js:2020
msgid "Stock item has been fully allocated"
msgstr ""
-#: templates/js/translated/stock.js:1865
+#: templates/js/translated/stock.js:2022
msgid "Stock item has been partially allocated"
msgstr ""
-#: templates/js/translated/stock.js:1868
+#: templates/js/translated/stock.js:2025
msgid "Stock item has been installed in another item"
msgstr ""
-#: templates/js/translated/stock.js:1870
+#: templates/js/translated/stock.js:2027
msgid "Stock item has been consumed by a build order"
msgstr ""
-#: templates/js/translated/stock.js:1874
+#: templates/js/translated/stock.js:2031
msgid "Stock item has expired"
msgstr ""
-#: templates/js/translated/stock.js:1876
+#: templates/js/translated/stock.js:2033
msgid "Stock item will expire soon"
msgstr ""
-#: templates/js/translated/stock.js:1881
+#: templates/js/translated/stock.js:2038
msgid "Stock item has been rejected"
msgstr ""
-#: templates/js/translated/stock.js:1883
+#: templates/js/translated/stock.js:2040
msgid "Stock item is lost"
msgstr ""
-#: templates/js/translated/stock.js:1885
+#: templates/js/translated/stock.js:2042
msgid "Stock item is destroyed"
msgstr ""
-#: templates/js/translated/stock.js:1889
-#: templates/js/translated/table_filters.js:296
+#: templates/js/translated/stock.js:2046
+#: templates/js/translated/table_filters.js:302
msgid "Depleted"
msgstr ""
-#: templates/js/translated/stock.js:2031
+#: templates/js/translated/stock.js:2188
msgid "Supplier part not specified"
msgstr ""
-#: templates/js/translated/stock.js:2078
+#: templates/js/translated/stock.js:2235
msgid "Stock Value"
msgstr ""
-#: templates/js/translated/stock.js:2170
+#: templates/js/translated/stock.js:2358
msgid "No stock items matching query"
msgstr ""
-#: templates/js/translated/stock.js:2319
+#: templates/js/translated/stock.js:2450
msgid "stock locations"
msgstr ""
-#: templates/js/translated/stock.js:2476
+#: templates/js/translated/stock.js:2607
msgid "Load Subloactions"
msgstr ""
-#: templates/js/translated/stock.js:2583
+#: templates/js/translated/stock.js:2714
msgid "Details"
msgstr ""
-#: templates/js/translated/stock.js:2587
+#: templates/js/translated/stock.js:2718
msgid "No changes"
msgstr ""
-#: templates/js/translated/stock.js:2599
+#: templates/js/translated/stock.js:2730
msgid "Part information unavailable"
msgstr ""
-#: templates/js/translated/stock.js:2621
+#: templates/js/translated/stock.js:2752
msgid "Location no longer exists"
msgstr ""
-#: templates/js/translated/stock.js:2638
+#: templates/js/translated/stock.js:2769
msgid "Build order no longer exists"
msgstr ""
-#: templates/js/translated/stock.js:2653
+#: templates/js/translated/stock.js:2784
msgid "Purchase order no longer exists"
msgstr ""
-#: templates/js/translated/stock.js:2670
+#: templates/js/translated/stock.js:2801
msgid "Sales Order no longer exists"
msgstr ""
-#: templates/js/translated/stock.js:2687
+#: templates/js/translated/stock.js:2818
msgid "Return Order no longer exists"
msgstr ""
-#: templates/js/translated/stock.js:2706
+#: templates/js/translated/stock.js:2837
msgid "Customer no longer exists"
msgstr ""
-#: templates/js/translated/stock.js:2724
+#: templates/js/translated/stock.js:2855
msgid "Stock item no longer exists"
msgstr ""
-#: templates/js/translated/stock.js:2742
+#: templates/js/translated/stock.js:2873
msgid "Added"
msgstr ""
-#: templates/js/translated/stock.js:2750
+#: templates/js/translated/stock.js:2881
msgid "Removed"
msgstr ""
-#: templates/js/translated/stock.js:2826
+#: templates/js/translated/stock.js:2953
msgid "No installed items"
msgstr ""
-#: templates/js/translated/stock.js:2876 templates/js/translated/stock.js:2911
+#: templates/js/translated/stock.js:3003 templates/js/translated/stock.js:3038
msgid "Uninstall Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:2929
+#: templates/js/translated/stock.js:3056
msgid "Select stock item to uninstall"
msgstr ""
-#: templates/js/translated/stock.js:2950
+#: templates/js/translated/stock.js:3077
msgid "Install another stock item into this item"
msgstr ""
-#: templates/js/translated/stock.js:2951
+#: templates/js/translated/stock.js:3078
msgid "Stock items can only be installed if they meet the following criteria"
msgstr ""
-#: templates/js/translated/stock.js:2953
+#: templates/js/translated/stock.js:3080
msgid "The Stock Item links to a Part which is the BOM for this Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:2954
+#: templates/js/translated/stock.js:3081
msgid "The Stock Item is currently available in stock"
msgstr ""
-#: templates/js/translated/stock.js:2955
+#: templates/js/translated/stock.js:3082
msgid "The Stock Item is not already installed in another item"
msgstr ""
-#: templates/js/translated/stock.js:2956
+#: templates/js/translated/stock.js:3083
msgid "The Stock Item is tracked by either a batch code or serial number"
msgstr ""
-#: templates/js/translated/stock.js:2969
+#: templates/js/translated/stock.js:3096
msgid "Select part to install"
msgstr ""
+#: templates/js/translated/stock.js:3152
+msgid "Select one or more stock items"
+msgstr ""
+
+#: templates/js/translated/stock.js:3165
+msgid "Selected stock items"
+msgstr ""
+
+#: templates/js/translated/stock.js:3169
+msgid "Change Stock Status"
+msgstr ""
+
#: templates/js/translated/table_filters.js:50
msgid "Has project code"
msgstr ""
-#: templates/js/translated/table_filters.js:59
-#: templates/js/translated/table_filters.js:518
-#: templates/js/translated/table_filters.js:530
-#: templates/js/translated/table_filters.js:571
+#: templates/js/translated/table_filters.js:65
+#: templates/js/translated/table_filters.js:540
+#: templates/js/translated/table_filters.js:552
+#: templates/js/translated/table_filters.js:593
msgid "Order status"
msgstr ""
-#: templates/js/translated/table_filters.js:64
-#: templates/js/translated/table_filters.js:535
-#: templates/js/translated/table_filters.js:561
-#: templates/js/translated/table_filters.js:576
+#: templates/js/translated/table_filters.js:70
+#: templates/js/translated/table_filters.js:557
+#: templates/js/translated/table_filters.js:583
+#: templates/js/translated/table_filters.js:598
msgid "Outstanding"
msgstr ""
-#: templates/js/translated/table_filters.js:72
-#: templates/js/translated/table_filters.js:458
-#: templates/js/translated/table_filters.js:543
-#: templates/js/translated/table_filters.js:584
+#: templates/js/translated/table_filters.js:78
+#: templates/js/translated/table_filters.js:464
+#: templates/js/translated/table_filters.js:565
+#: templates/js/translated/table_filters.js:606
msgid "Assigned to me"
msgstr ""
-#: templates/js/translated/table_filters.js:128
+#: templates/js/translated/table_filters.js:134
msgid "Trackable Part"
msgstr ""
-#: templates/js/translated/table_filters.js:132
+#: templates/js/translated/table_filters.js:138
msgid "Assembled Part"
msgstr ""
-#: templates/js/translated/table_filters.js:136
+#: templates/js/translated/table_filters.js:142
msgid "Has Available Stock"
msgstr ""
-#: templates/js/translated/table_filters.js:152
+#: templates/js/translated/table_filters.js:158
msgid "Allow Variant Stock"
msgstr ""
-#: templates/js/translated/table_filters.js:164
-#: templates/js/translated/table_filters.js:692
+#: templates/js/translated/table_filters.js:170
+#: templates/js/translated/table_filters.js:714
msgid "Has Pricing"
msgstr ""
-#: templates/js/translated/table_filters.js:204
-#: templates/js/translated/table_filters.js:291
+#: templates/js/translated/table_filters.js:210
+#: templates/js/translated/table_filters.js:297
msgid "Include sublocations"
msgstr ""
-#: templates/js/translated/table_filters.js:205
+#: templates/js/translated/table_filters.js:211
msgid "Include locations"
msgstr ""
-#: templates/js/translated/table_filters.js:224
-#: templates/js/translated/table_filters.js:225
-#: templates/js/translated/table_filters.js:624
+#: templates/js/translated/table_filters.js:230
+#: templates/js/translated/table_filters.js:231
+#: templates/js/translated/table_filters.js:646
msgid "Include subcategories"
msgstr ""
-#: templates/js/translated/table_filters.js:233
-#: templates/js/translated/table_filters.js:672
+#: templates/js/translated/table_filters.js:239
+#: templates/js/translated/table_filters.js:694
msgid "Subscribed"
msgstr ""
-#: templates/js/translated/table_filters.js:244
-#: templates/js/translated/table_filters.js:326
+#: templates/js/translated/table_filters.js:250
+#: templates/js/translated/table_filters.js:332
msgid "Is Serialized"
msgstr ""
-#: templates/js/translated/table_filters.js:247
-#: templates/js/translated/table_filters.js:333
+#: templates/js/translated/table_filters.js:253
+#: templates/js/translated/table_filters.js:339
msgid "Serial number GTE"
msgstr ""
-#: templates/js/translated/table_filters.js:248
-#: templates/js/translated/table_filters.js:334
+#: templates/js/translated/table_filters.js:254
+#: templates/js/translated/table_filters.js:340
msgid "Serial number greater than or equal to"
msgstr ""
-#: templates/js/translated/table_filters.js:251
-#: templates/js/translated/table_filters.js:337
+#: templates/js/translated/table_filters.js:257
+#: templates/js/translated/table_filters.js:343
msgid "Serial number LTE"
msgstr ""
-#: templates/js/translated/table_filters.js:252
-#: templates/js/translated/table_filters.js:338
+#: templates/js/translated/table_filters.js:258
+#: templates/js/translated/table_filters.js:344
msgid "Serial number less than or equal to"
msgstr ""
-#: templates/js/translated/table_filters.js:255
-#: templates/js/translated/table_filters.js:256
-#: templates/js/translated/table_filters.js:329
-#: templates/js/translated/table_filters.js:330
+#: templates/js/translated/table_filters.js:261
+#: templates/js/translated/table_filters.js:262
+#: templates/js/translated/table_filters.js:335
+#: templates/js/translated/table_filters.js:336
msgid "Serial number"
msgstr ""
-#: templates/js/translated/table_filters.js:260
-#: templates/js/translated/table_filters.js:351
+#: templates/js/translated/table_filters.js:266
+#: templates/js/translated/table_filters.js:357
msgid "Batch code"
msgstr ""
-#: templates/js/translated/table_filters.js:271
-#: templates/js/translated/table_filters.js:613
+#: templates/js/translated/table_filters.js:277
+#: templates/js/translated/table_filters.js:635
msgid "Active parts"
msgstr ""
-#: templates/js/translated/table_filters.js:272
+#: templates/js/translated/table_filters.js:278
msgid "Show stock for active parts"
msgstr ""
-#: templates/js/translated/table_filters.js:277
+#: templates/js/translated/table_filters.js:283
msgid "Part is an assembly"
msgstr ""
-#: templates/js/translated/table_filters.js:281
+#: templates/js/translated/table_filters.js:287
msgid "Is allocated"
msgstr ""
-#: templates/js/translated/table_filters.js:282
+#: templates/js/translated/table_filters.js:288
msgid "Item has been allocated"
msgstr ""
-#: templates/js/translated/table_filters.js:287
+#: templates/js/translated/table_filters.js:293
msgid "Stock is available for use"
msgstr ""
-#: templates/js/translated/table_filters.js:292
+#: templates/js/translated/table_filters.js:298
msgid "Include stock in sublocations"
msgstr ""
-#: templates/js/translated/table_filters.js:297
+#: templates/js/translated/table_filters.js:303
msgid "Show stock items which are depleted"
msgstr ""
-#: templates/js/translated/table_filters.js:302
+#: templates/js/translated/table_filters.js:308
msgid "Show items which are in stock"
msgstr ""
-#: templates/js/translated/table_filters.js:306
+#: templates/js/translated/table_filters.js:312
msgid "In Production"
msgstr ""
-#: templates/js/translated/table_filters.js:307
+#: templates/js/translated/table_filters.js:313
msgid "Show items which are in production"
msgstr ""
-#: templates/js/translated/table_filters.js:311
+#: templates/js/translated/table_filters.js:317
msgid "Include Variants"
msgstr ""
-#: templates/js/translated/table_filters.js:312
+#: templates/js/translated/table_filters.js:318
msgid "Include stock items for variant parts"
msgstr ""
-#: templates/js/translated/table_filters.js:316
+#: templates/js/translated/table_filters.js:322
msgid "Installed"
msgstr ""
-#: templates/js/translated/table_filters.js:317
+#: templates/js/translated/table_filters.js:323
msgid "Show stock items which are installed in another item"
msgstr ""
-#: templates/js/translated/table_filters.js:322
+#: templates/js/translated/table_filters.js:328
msgid "Show items which have been assigned to a customer"
msgstr ""
-#: templates/js/translated/table_filters.js:342
-#: templates/js/translated/table_filters.js:343
+#: templates/js/translated/table_filters.js:348
+#: templates/js/translated/table_filters.js:349
msgid "Stock status"
msgstr ""
-#: templates/js/translated/table_filters.js:346
+#: templates/js/translated/table_filters.js:352
msgid "Has batch code"
msgstr ""
-#: templates/js/translated/table_filters.js:354
-msgid "Tracked"
-msgstr ""
-
-#: templates/js/translated/table_filters.js:355
+#: templates/js/translated/table_filters.js:361
msgid "Stock item is tracked by either batch code or serial number"
msgstr ""
-#: templates/js/translated/table_filters.js:360
+#: templates/js/translated/table_filters.js:366
msgid "Has purchase price"
msgstr ""
-#: templates/js/translated/table_filters.js:361
+#: templates/js/translated/table_filters.js:367
msgid "Show stock items which have a purchase price set"
msgstr ""
-#: templates/js/translated/table_filters.js:365
+#: templates/js/translated/table_filters.js:371
msgid "Expiry Date before"
msgstr ""
-#: templates/js/translated/table_filters.js:369
+#: templates/js/translated/table_filters.js:375
msgid "Expiry Date after"
msgstr ""
-#: templates/js/translated/table_filters.js:382
+#: templates/js/translated/table_filters.js:388
msgid "Show stock items which have expired"
msgstr ""
-#: templates/js/translated/table_filters.js:388
+#: templates/js/translated/table_filters.js:394
msgid "Show stock which is close to expiring"
msgstr ""
-#: templates/js/translated/table_filters.js:402
+#: templates/js/translated/table_filters.js:408
msgid "Test Passed"
msgstr ""
-#: templates/js/translated/table_filters.js:406
+#: templates/js/translated/table_filters.js:412
msgid "Include Installed Items"
msgstr ""
-#: templates/js/translated/table_filters.js:445
+#: templates/js/translated/table_filters.js:451
msgid "Build status"
msgstr ""
-#: templates/js/translated/table_filters.js:625
+#: templates/js/translated/table_filters.js:647
msgid "Include parts in subcategories"
msgstr ""
-#: templates/js/translated/table_filters.js:630
+#: templates/js/translated/table_filters.js:652
msgid "Show active parts"
msgstr ""
-#: templates/js/translated/table_filters.js:638
+#: templates/js/translated/table_filters.js:660
msgid "Available stock"
msgstr ""
-#: templates/js/translated/table_filters.js:646
-#: templates/js/translated/table_filters.js:742
+#: templates/js/translated/table_filters.js:668
+#: templates/js/translated/table_filters.js:764
msgid "Has Units"
msgstr ""
-#: templates/js/translated/table_filters.js:647
+#: templates/js/translated/table_filters.js:669
msgid "Part has defined units"
msgstr ""
-#: templates/js/translated/table_filters.js:651
+#: templates/js/translated/table_filters.js:673
msgid "Has IPN"
msgstr ""
-#: templates/js/translated/table_filters.js:652
+#: templates/js/translated/table_filters.js:674
msgid "Part has internal part number"
msgstr ""
-#: templates/js/translated/table_filters.js:656
+#: templates/js/translated/table_filters.js:678
msgid "In stock"
msgstr ""
-#: templates/js/translated/table_filters.js:664
+#: templates/js/translated/table_filters.js:686
msgid "Purchasable"
msgstr ""
-#: templates/js/translated/table_filters.js:676
+#: templates/js/translated/table_filters.js:698
msgid "Has stocktake entries"
msgstr ""
-#: templates/js/translated/table_filters.js:738
+#: templates/js/translated/table_filters.js:760
msgid "Has Choices"
msgstr ""
@@ -12390,51 +12551,51 @@ msgstr ""
msgid "Select File Format"
msgstr ""
-#: templates/js/translated/tables.js:561
+#: templates/js/translated/tables.js:537
msgid "Loading data"
msgstr ""
-#: templates/js/translated/tables.js:564
+#: templates/js/translated/tables.js:540
msgid "rows per page"
msgstr ""
-#: templates/js/translated/tables.js:569
+#: templates/js/translated/tables.js:545
msgid "Showing all rows"
msgstr ""
-#: templates/js/translated/tables.js:571
+#: templates/js/translated/tables.js:547
msgid "Showing"
msgstr ""
-#: templates/js/translated/tables.js:571
+#: templates/js/translated/tables.js:547
msgid "to"
msgstr ""
-#: templates/js/translated/tables.js:571
+#: templates/js/translated/tables.js:547
msgid "of"
msgstr ""
-#: templates/js/translated/tables.js:571
+#: templates/js/translated/tables.js:547
msgid "rows"
msgstr ""
-#: templates/js/translated/tables.js:578
+#: templates/js/translated/tables.js:554
msgid "No matching results"
msgstr ""
-#: templates/js/translated/tables.js:581
+#: templates/js/translated/tables.js:557
msgid "Hide/Show pagination"
msgstr ""
-#: templates/js/translated/tables.js:587
+#: templates/js/translated/tables.js:563
msgid "Toggle"
msgstr ""
-#: templates/js/translated/tables.js:590
+#: templates/js/translated/tables.js:566
msgid "Columns"
msgstr ""
-#: templates/js/translated/tables.js:593
+#: templates/js/translated/tables.js:569
msgid "All"
msgstr ""
@@ -12616,50 +12777,6 @@ msgstr ""
msgid "Email settings not configured"
msgstr ""
-#: templates/stock_table.html:17
-msgid "Barcode Actions"
-msgstr ""
-
-#: templates/stock_table.html:28
-msgid "Stock Options"
-msgstr ""
-
-#: templates/stock_table.html:33
-msgid "Add to selected stock items"
-msgstr ""
-
-#: templates/stock_table.html:34
-msgid "Remove from selected stock items"
-msgstr ""
-
-#: templates/stock_table.html:35
-msgid "Stocktake selected stock items"
-msgstr ""
-
-#: templates/stock_table.html:36
-msgid "Move selected stock items"
-msgstr ""
-
-#: templates/stock_table.html:37
-msgid "Merge selected stock items"
-msgstr ""
-
-#: templates/stock_table.html:37
-msgid "Merge stock"
-msgstr ""
-
-#: templates/stock_table.html:38
-msgid "Order selected items"
-msgstr ""
-
-#: templates/stock_table.html:42
-msgid "Delete selected items"
-msgstr ""
-
-#: templates/stock_table.html:42
-msgid "Delete stock"
-msgstr ""
-
#: templates/yesnolabel.html:4
msgid "Yes"
msgstr ""
@@ -12692,35 +12809,35 @@ msgstr ""
msgid "Important dates"
msgstr ""
-#: users/models.py:230
+#: users/models.py:236
msgid "Permission set"
msgstr ""
-#: users/models.py:238
+#: users/models.py:244
msgid "Group"
msgstr ""
-#: users/models.py:241
+#: users/models.py:247
msgid "View"
msgstr ""
-#: users/models.py:241
+#: users/models.py:247
msgid "Permission to view items"
msgstr ""
-#: users/models.py:243
+#: users/models.py:249
msgid "Permission to add items"
msgstr ""
-#: users/models.py:245
+#: users/models.py:251
msgid "Change"
msgstr ""
-#: users/models.py:245
+#: users/models.py:251
msgid "Permissions to edit items"
msgstr ""
-#: users/models.py:247
+#: users/models.py:253
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 2e0e8437ab..b17aa7082c 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: 2023-06-09 00:32+0000\n"
-"PO-Revision-Date: 2023-06-09 10:27\n"
+"POT-Creation-Date: 2023-06-20 07:01+0000\n"
+"PO-Revision-Date: 2023-06-20 07:06\n"
"Last-Translator: \n"
"Language-Team: Hungarian\n"
"Language: hu_HU\n"
@@ -49,26 +49,26 @@ msgstr "A hiba részleteit megtalálod az admin panelen"
msgid "Enter date"
msgstr "Dátum megadása"
-#: InvenTree/fields.py:206 InvenTree/models.py:766 build/serializers.py:427
-#: build/serializers.py:506 build/templates/build/sidebar.html:23
-#: company/models.py:597 company/templates/company/sidebar.html:35
-#: order/models.py:1089 order/templates/order/po_sidebar.html:11
+#: InvenTree/fields.py:206 InvenTree/models.py:766 build/serializers.py:435
+#: build/serializers.py:514 build/templates/build/sidebar.html:21
+#: company/models.py:746 company/templates/company/sidebar.html:37
+#: order/models.py:1102 order/templates/order/po_sidebar.html:11
#: order/templates/order/return_order_sidebar.html:9
#: order/templates/order/so_sidebar.html:17 part/admin.py:41
-#: part/models.py:3005 part/templates/part/part_sidebar.html:63
+#: part/models.py:3039 part/templates/part/part_sidebar.html:63
#: report/templates/report/inventree_build_order_base.html:172
#: stock/admin.py:121 stock/models.py:2160 stock/models.py:2268
-#: stock/serializers.py:342 stock/serializers.py:475 stock/serializers.py:556
-#: stock/serializers.py:839 stock/serializers.py:938 stock/serializers.py:1070
-#: stock/templates/stock/stock_sidebar.html:25
-#: templates/js/translated/barcode.js:143 templates/js/translated/bom.js:1224
-#: templates/js/translated/company.js:1294 templates/js/translated/order.js:347
-#: templates/js/translated/part.js:1054
-#: templates/js/translated/purchase_order.js:2168
-#: templates/js/translated/return_order.js:760
-#: templates/js/translated/sales_order.js:1055
-#: templates/js/translated/sales_order.js:1959
-#: templates/js/translated/stock.js:1460 templates/js/translated/stock.js:2164
+#: stock/serializers.py:408 stock/serializers.py:542 stock/serializers.py:623
+#: stock/serializers.py:681 stock/serializers.py:956 stock/serializers.py:1055
+#: stock/serializers.py:1187 stock/templates/stock/stock_sidebar.html:25
+#: templates/js/translated/barcode.js:143 templates/js/translated/bom.js:1244
+#: templates/js/translated/company.js:1715 templates/js/translated/order.js:347
+#: templates/js/translated/part.js:1053
+#: templates/js/translated/purchase_order.js:2178
+#: templates/js/translated/return_order.js:772
+#: templates/js/translated/sales_order.js:1067
+#: templates/js/translated/sales_order.js:1971
+#: templates/js/translated/stock.js:1459 templates/js/translated/stock.js:2321
msgid "Notes"
msgstr "Megjegyzések"
@@ -81,47 +81,51 @@ msgstr "A(z) '{name}' érték nem a szükséges minta szerinti"
msgid "Provided value does not match required pattern: "
msgstr "A megadott érték nem felel meg a szükséges mintának: "
-#: InvenTree/forms.py:145
+#: InvenTree/forms.py:147
msgid "Enter password"
msgstr "Jelszó megadása"
-#: InvenTree/forms.py:146
+#: InvenTree/forms.py:148
msgid "Enter new password"
msgstr "Új jelszó megadása"
-#: InvenTree/forms.py:155
+#: InvenTree/forms.py:157
msgid "Confirm password"
msgstr "Jelszó megerősítése"
-#: InvenTree/forms.py:156
+#: InvenTree/forms.py:158
msgid "Confirm new password"
msgstr "Új jelszó megerősítése"
-#: InvenTree/forms.py:160
+#: InvenTree/forms.py:162
msgid "Old password"
msgstr "Régi jelszó"
-#: InvenTree/forms.py:179
+#: InvenTree/forms.py:181
msgid "Email (again)"
msgstr "Email (újra)"
-#: InvenTree/forms.py:183
+#: InvenTree/forms.py:185
msgid "Email address confirmation"
msgstr "Email cím megerősítés"
-#: InvenTree/forms.py:204
+#: InvenTree/forms.py:206
msgid "You must type the same email each time."
msgstr "Mindig ugyanazt az email címet kell beírni."
-#: InvenTree/forms.py:230 InvenTree/forms.py:236
+#: InvenTree/forms.py:237 InvenTree/forms.py:243
msgid "The provided primary email address is not valid."
msgstr "A megadott elsődleges email cím nem valós."
-#: InvenTree/forms.py:242
+#: InvenTree/forms.py:249
msgid "The provided email domain is not approved."
msgstr "A megadott email domain nincs jóváhagyva."
-#: InvenTree/helpers.py:462 order/models.py:442 order/models.py:611
+#: InvenTree/forms.py:345
+msgid "Registration is disabled."
+msgstr ""
+
+#: InvenTree/helpers.py:462 order/models.py:455 order/models.py:624
msgid "Invalid quantity provided"
msgstr "Nem megfelelő mennyiség"
@@ -239,7 +243,7 @@ msgstr "Hiányzó külső link"
#: InvenTree/models.py:486 stock/models.py:2262
#: templates/js/translated/attachment.js:119
-#: templates/js/translated/attachment.js:306
+#: templates/js/translated/attachment.js:316
msgid "Attachment"
msgstr "Melléklet"
@@ -247,29 +251,30 @@ msgstr "Melléklet"
msgid "Select file to attach"
msgstr "Válaszd ki a mellekelni kívánt fájlt"
-#: InvenTree/models.py:493 common/models.py:2695 company/models.py:132
-#: company/models.py:306 company/models.py:584 order/models.py:236
-#: order/models.py:1093 order/models.py:1453 part/admin.py:39
-#: part/models.py:901 part/templates/part/part_scheduling.html:11
+#: InvenTree/models.py:493 common/models.py:2681 company/models.py:128
+#: company/models.py:381 company/models.py:455 company/models.py:733
+#: order/models.py:240 order/models.py:1106 order/models.py:1466
+#: part/admin.py:39 part/models.py:902
+#: part/templates/part/part_scheduling.html:11
#: report/templates/report/inventree_build_order_base.html:164
-#: stock/admin.py:120 templates/js/translated/company.js:977
-#: templates/js/translated/company.js:1283 templates/js/translated/order.js:351
-#: templates/js/translated/part.js:2316
-#: templates/js/translated/purchase_order.js:2008
-#: templates/js/translated/purchase_order.js:2172
-#: templates/js/translated/return_order.js:764
-#: templates/js/translated/sales_order.js:1044
-#: templates/js/translated/sales_order.js:1964
+#: stock/admin.py:120 templates/js/translated/company.js:1350
+#: templates/js/translated/company.js:1704 templates/js/translated/order.js:351
+#: templates/js/translated/part.js:2392
+#: templates/js/translated/purchase_order.js:2018
+#: templates/js/translated/purchase_order.js:2182
+#: templates/js/translated/return_order.js:776
+#: templates/js/translated/sales_order.js:1056
+#: templates/js/translated/sales_order.js:1976
msgid "Link"
msgstr "Link"
-#: InvenTree/models.py:494 build/models.py:291 part/models.py:902
+#: InvenTree/models.py:494 build/models.py:295 part/models.py:903
#: stock/models.py:735
msgid "Link to external URL"
msgstr "Link külső URL-re"
#: InvenTree/models.py:497 templates/js/translated/attachment.js:120
-#: templates/js/translated/attachment.js:321
+#: templates/js/translated/attachment.js:331
msgid "Comment"
msgstr "Megjegyzés"
@@ -277,13 +282,13 @@ msgstr "Megjegyzés"
msgid "File comment"
msgstr "Leírás, bővebb infó"
-#: InvenTree/models.py:503 InvenTree/models.py:504 common/models.py:2154
-#: common/models.py:2155 common/models.py:2368 common/models.py:2369
-#: common/models.py:2625 common/models.py:2626 part/models.py:3013
-#: part/models.py:3101 part/models.py:3180 part/models.py:3200
-#: plugin/models.py:217 plugin/models.py:218
+#: InvenTree/models.py:503 InvenTree/models.py:504 common/models.py:2140
+#: common/models.py:2141 common/models.py:2354 common/models.py:2355
+#: common/models.py:2611 common/models.py:2612 part/models.py:3047
+#: part/models.py:3135 part/models.py:3214 part/models.py:3234
+#: plugin/models.py:218 plugin/models.py:219
#: report/templates/report/inventree_test_report_base.html:105
-#: templates/js/translated/stock.js:2773
+#: templates/js/translated/stock.js:2904
msgid "User"
msgstr "Felhasználó"
@@ -324,53 +329,54 @@ msgstr "Duplikált nevek nem lehetnek ugyanazon szülő alatt"
msgid "Invalid choice"
msgstr "Érvénytelen választás"
-#: InvenTree/models.py:648 InvenTree/models.py:649 common/models.py:2354
-#: company/models.py:390 label/models.py:103 part/models.py:847
-#: part/models.py:3400 plugin/models.py:41 report/models.py:160
+#: InvenTree/models.py:648 InvenTree/models.py:649 common/models.py:2340
+#: company/models.py:539 label/models.py:111 part/models.py:848
+#: part/models.py:3434 plugin/models.py:42 report/models.py:160
#: templates/InvenTree/settings/mixins/urls.html:13
#: templates/InvenTree/settings/notifications.html:17
-#: templates/InvenTree/settings/plugin.html:80
+#: templates/InvenTree/settings/plugin.html:74
#: templates/InvenTree/settings/plugin_settings.html:22
-#: templates/js/translated/company.js:658
-#: templates/js/translated/company.js:706
-#: templates/js/translated/company.js:871
-#: templates/js/translated/company.js:1071 templates/js/translated/part.js:1160
-#: templates/js/translated/part.js:1447 templates/js/translated/part.js:1583
-#: templates/js/translated/part.js:2699 templates/js/translated/stock.js:2464
+#: templates/js/translated/company.js:665
+#: templates/js/translated/company.js:713
+#: templates/js/translated/company.js:940
+#: templates/js/translated/company.js:1196
+#: templates/js/translated/company.js:1444 templates/js/translated/part.js:1159
+#: templates/js/translated/part.js:1446 templates/js/translated/part.js:1582
+#: templates/js/translated/part.js:2684 templates/js/translated/stock.js:2595
msgid "Name"
msgstr "Név"
-#: InvenTree/models.py:655 build/models.py:164
+#: InvenTree/models.py:655 build/models.py:168
#: build/templates/build/detail.html:24 common/models.py:111
-#: company/models.py:312 company/models.py:590
+#: company/models.py:461 company/models.py:739
#: company/templates/company/company_base.html:72
#: company/templates/company/manufacturer_part.html:75
-#: company/templates/company/supplier_part.html:108 label/models.py:110
-#: order/models.py:232 order/models.py:1117 part/admin.py:194 part/admin.py:276
-#: part/models.py:869 part/models.py:3416 part/templates/part/category.html:81
+#: company/templates/company/supplier_part.html:108 label/models.py:118
+#: order/models.py:232 order/models.py:1130 part/admin.py:194 part/admin.py:276
+#: part/models.py:870 part/models.py:3450 part/templates/part/category.html:81
#: part/templates/part/part_base.html:172
#: part/templates/part/part_scheduling.html:12 report/models.py:173
-#: report/models.py:587 report/models.py:631
+#: report/models.py:589 report/models.py:633
#: report/templates/report/inventree_build_order_base.html:117
#: stock/admin.py:41 stock/templates/stock/location.html:123
#: templates/InvenTree/settings/notifications.html:19
#: templates/InvenTree/settings/plugin_settings.html:27
#: templates/InvenTree/settings/settings_staff_js.html:75
-#: templates/js/translated/bom.js:632 templates/js/translated/bom.js:933
-#: templates/js/translated/build.js:2857 templates/js/translated/company.js:510
-#: templates/js/translated/company.js:988
-#: templates/js/translated/company.js:1251 templates/js/translated/order.js:298
-#: templates/js/translated/part.js:1212 templates/js/translated/part.js:1456
-#: templates/js/translated/part.js:1594 templates/js/translated/part.js:1933
-#: templates/js/translated/part.js:2247 templates/js/translated/part.js:2735
-#: templates/js/translated/part.js:2826
-#: templates/js/translated/purchase_order.js:1666
-#: templates/js/translated/purchase_order.js:1812
-#: templates/js/translated/purchase_order.js:1990
-#: templates/js/translated/return_order.js:302
-#: templates/js/translated/sales_order.js:790
-#: templates/js/translated/stock.js:1439 templates/js/translated/stock.js:1817
-#: templates/js/translated/stock.js:2496 templates/js/translated/stock.js:2568
+#: templates/js/translated/bom.js:633 templates/js/translated/bom.js:951
+#: templates/js/translated/build.js:2062 templates/js/translated/company.js:517
+#: templates/js/translated/company.js:1361
+#: templates/js/translated/company.js:1672 templates/js/translated/index.js:114
+#: templates/js/translated/order.js:298 templates/js/translated/part.js:1211
+#: templates/js/translated/part.js:1455 templates/js/translated/part.js:1593
+#: templates/js/translated/part.js:1932 templates/js/translated/part.js:2323
+#: templates/js/translated/part.js:2720 templates/js/translated/part.js:2811
+#: templates/js/translated/purchase_order.js:1681
+#: templates/js/translated/purchase_order.js:1827
+#: templates/js/translated/purchase_order.js:2000
+#: templates/js/translated/return_order.js:314
+#: templates/js/translated/sales_order.js:802
+#: templates/js/translated/stock.js:1438 templates/js/translated/stock.js:1974
+#: templates/js/translated/stock.js:2627 templates/js/translated/stock.js:2699
msgid "Description"
msgstr "Leírás"
@@ -383,7 +389,7 @@ msgid "parent"
msgstr "szülő"
#: InvenTree/models.py:671 InvenTree/models.py:672
-#: templates/js/translated/part.js:2744 templates/js/translated/stock.js:2505
+#: templates/js/translated/part.js:2729 templates/js/translated/stock.js:2636
msgid "Path"
msgstr "Elérési út"
@@ -419,12 +425,12 @@ msgstr "Kiszolgálóhiba"
msgid "An error has been logged by the server."
msgstr "A kiszolgáló egy hibaüzenetet rögzített."
-#: InvenTree/serializers.py:60 part/models.py:3897
+#: InvenTree/serializers.py:60 part/models.py:3941
msgid "Must be a valid number"
msgstr "Érvényes számnak kell lennie"
-#: InvenTree/serializers.py:90 company/models.py:154
-#: company/templates/company/company_base.html:107 part/models.py:2852
+#: InvenTree/serializers.py:90 company/models.py:150
+#: company/templates/company/company_base.html:107 part/models.py:2886
#: templates/InvenTree/settings/settings_staff_js.html:44
#: templates/currency_data.html:5
msgid "Currency"
@@ -497,130 +503,130 @@ 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:714
+#: InvenTree/settings.py:741
msgid "Czech"
msgstr "Cseh"
-#: InvenTree/settings.py:715
+#: InvenTree/settings.py:742
msgid "Danish"
msgstr "Dán"
-#: InvenTree/settings.py:716
+#: InvenTree/settings.py:743
msgid "German"
msgstr "Német"
-#: InvenTree/settings.py:717
+#: InvenTree/settings.py:744
msgid "Greek"
msgstr "Görög"
-#: InvenTree/settings.py:718
+#: InvenTree/settings.py:745
msgid "English"
msgstr "Angol"
-#: InvenTree/settings.py:719
+#: InvenTree/settings.py:746
msgid "Spanish"
msgstr "Spanyol"
-#: InvenTree/settings.py:720
+#: InvenTree/settings.py:747
msgid "Spanish (Mexican)"
msgstr "Spanyol (Mexikói)"
-#: InvenTree/settings.py:721
+#: InvenTree/settings.py:748
msgid "Farsi / Persian"
msgstr "Fárszi/Perzsa"
-#: InvenTree/settings.py:722
+#: InvenTree/settings.py:749
msgid "Finnish"
msgstr ""
-#: InvenTree/settings.py:723
+#: InvenTree/settings.py:750
msgid "French"
msgstr "Francia"
-#: InvenTree/settings.py:724
+#: InvenTree/settings.py:751
msgid "Hebrew"
msgstr "Héber"
-#: InvenTree/settings.py:725
+#: InvenTree/settings.py:752
msgid "Hungarian"
msgstr "Magyar"
-#: InvenTree/settings.py:726
+#: InvenTree/settings.py:753
msgid "Italian"
msgstr "Olasz"
-#: InvenTree/settings.py:727
+#: InvenTree/settings.py:754
msgid "Japanese"
msgstr "Japán"
-#: InvenTree/settings.py:728
+#: InvenTree/settings.py:755
msgid "Korean"
msgstr "Koreai"
-#: InvenTree/settings.py:729
+#: InvenTree/settings.py:756
msgid "Dutch"
msgstr "Holland"
-#: InvenTree/settings.py:730
+#: InvenTree/settings.py:757
msgid "Norwegian"
msgstr "Norvég"
-#: InvenTree/settings.py:731
+#: InvenTree/settings.py:758
msgid "Polish"
msgstr "Lengyel"
-#: InvenTree/settings.py:732
+#: InvenTree/settings.py:759
msgid "Portuguese"
msgstr "Portugál"
-#: InvenTree/settings.py:733
+#: InvenTree/settings.py:760
msgid "Portuguese (Brazilian)"
msgstr "Portugál (Brazíliai)"
-#: InvenTree/settings.py:734
+#: InvenTree/settings.py:761
msgid "Russian"
msgstr "Orosz"
-#: InvenTree/settings.py:735
+#: InvenTree/settings.py:762
msgid "Slovenian"
msgstr "Szlovén"
-#: InvenTree/settings.py:736
+#: InvenTree/settings.py:763
msgid "Swedish"
msgstr "Svéd"
-#: InvenTree/settings.py:737
+#: InvenTree/settings.py:764
msgid "Thai"
msgstr "Tháj"
-#: InvenTree/settings.py:738
+#: InvenTree/settings.py:765
msgid "Turkish"
msgstr "Török"
-#: InvenTree/settings.py:739
+#: InvenTree/settings.py:766
msgid "Vietnamese"
msgstr "Vietnámi"
-#: InvenTree/settings.py:740
+#: InvenTree/settings.py:767
msgid "Chinese"
msgstr "Kínai"
-#: InvenTree/status.py:61 part/serializers.py:878
+#: InvenTree/status.py:68 part/serializers.py:940
msgid "Background worker check failed"
msgstr "Háttér folyamat ellenőrzés sikertelen"
-#: InvenTree/status.py:65
+#: InvenTree/status.py:72
msgid "Email backend not configured"
msgstr "Email backend nincs beállítva"
-#: InvenTree/status.py:68
+#: InvenTree/status.py:75
msgid "InvenTree system health checks failed"
msgstr "InvenTree rendszer állapotának ellenőrzése sikertelen"
#: InvenTree/status_codes.py:12 InvenTree/status_codes.py:40
#: InvenTree/status_codes.py:148 InvenTree/status_codes.py:167
#: InvenTree/status_codes.py:188 generic/states/tests.py:16
-#: templates/js/translated/table_filters.js:511
+#: templates/js/translated/table_filters.js:533
msgid "Pending"
msgstr "Függőben"
@@ -630,7 +636,7 @@ msgstr "Kiküldve"
#: InvenTree/status_codes.py:14 InvenTree/status_codes.py:151
#: InvenTree/status_codes.py:172 generic/states/tests.py:18
-#: order/templates/order/order_base.html:162
+#: order/templates/order/order_base.html:158
#: order/templates/order/sales_order_base.html:162
msgid "Complete"
msgstr "Kész"
@@ -654,10 +660,10 @@ msgstr "Visszaküldve"
msgid "In Progress"
msgstr "Folyamatban"
-#: InvenTree/status_codes.py:42 order/models.py:1332
-#: templates/js/translated/sales_order.js:1509
-#: templates/js/translated/sales_order.js:1630
-#: templates/js/translated/sales_order.js:1934
+#: InvenTree/status_codes.py:42 order/models.py:1345
+#: templates/js/translated/sales_order.js:1521
+#: templates/js/translated/sales_order.js:1642
+#: templates/js/translated/sales_order.js:1946
msgid "Shipped"
msgstr "Kiszállítva"
@@ -689,7 +695,7 @@ msgstr "Karanténban"
msgid "Legacy stock tracking entry"
msgstr "Örökölt készlet követési bejegyzés"
-#: InvenTree/status_codes.py:93 templates/js/translated/stock.js:511
+#: InvenTree/status_codes.py:93 templates/js/translated/stock.js:510
msgid "Stock item created"
msgstr "Készlet tétel létrehozva"
@@ -745,7 +751,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:120 templates/js/translated/stock.js:2243
+#: InvenTree/status_codes.py:120 templates/js/translated/stock.js:1769
msgid "Merged stock items"
msgstr "Összevont készlet tétel"
@@ -765,7 +771,7 @@ msgstr "Gyártási utasítás kimenete kész"
msgid "Build order output rejected"
msgstr "Gyártási utasítás kimenete visszautasítva"
-#: InvenTree/status_codes.py:129 templates/js/translated/stock.js:1676
+#: InvenTree/status_codes.py:129 templates/js/translated/stock.js:1675
msgid "Consumed by build order"
msgstr "Gyártásra felhasználva"
@@ -781,7 +787,7 @@ msgstr "Megrendelésre érkezett"
msgid "Returned against Return Order"
msgstr "Visszavéve"
-#: InvenTree/status_codes.py:141 templates/js/translated/table_filters.js:321
+#: InvenTree/status_codes.py:141 templates/js/translated/table_filters.js:327
msgid "Sent to customer"
msgstr "Vevőnek kiszállítva"
@@ -849,83 +855,111 @@ msgstr "A jelszavaknak egyeznie kell"
msgid "Wrong password provided"
msgstr "Rossz jelszó lett megadva"
-#: InvenTree/views.py:651 templates/navbar.html:157
+#: InvenTree/views.py:653 templates/navbar.html:157
msgid "System Information"
msgstr "Rendszerinformáció"
-#: InvenTree/views.py:658 templates/navbar.html:168
+#: InvenTree/views.py:660 templates/navbar.html:168
msgid "About InvenTree"
msgstr "Verzió információk"
-#: build/api.py:222
+#: build/api.py:242
msgid "Build must be cancelled before it can be deleted"
msgstr "A gyártást be kell fejezni a törlés előtt"
-#: build/models.py:69 build/templates/build/build_base.html:9
+#: build/api.py:286 part/models.py:3833 templates/js/translated/bom.js:985
+#: templates/js/translated/bom.js:1025 templates/js/translated/build.js:2449
+#: templates/js/translated/table_filters.js:166
+#: templates/js/translated/table_filters.js:518
+msgid "Consumable"
+msgstr "Fogyóeszköz"
+
+#: build/api.py:287 part/models.py:3827 part/templates/part/upload_bom.html:58
+#: templates/js/translated/bom.js:989 templates/js/translated/bom.js:1016
+#: templates/js/translated/build.js:2458
+#: templates/js/translated/table_filters.js:162
+#: templates/js/translated/table_filters.js:191
+#: templates/js/translated/table_filters.js:522
+msgid "Optional"
+msgstr "Opcionális"
+
+#: build/api.py:288 templates/js/translated/table_filters.js:360
+#: templates/js/translated/table_filters.js:514
+msgid "Tracked"
+msgstr "Követett"
+
+#: build/api.py:290 part/admin.py:64 templates/js/translated/build.js:1670
+#: templates/js/translated/build.js:2549
+#: templates/js/translated/sales_order.js:1918
+#: templates/js/translated/table_filters.js:506
+msgid "Allocated"
+msgstr "Lefoglalva"
+
+#: build/models.py:73 build/templates/build/build_base.html:9
#: build/templates/build/build_base.html:27
#: report/templates/report/inventree_build_order_base.html:105
#: templates/email/build_order_completed.html:16
#: templates/email/overdue_build_order.html:15
-#: templates/js/translated/build.js:945 templates/js/translated/stock.js:2629
+#: templates/js/translated/build.js:953 templates/js/translated/stock.js:2760
msgid "Build Order"
msgstr "Gyártási utasítás"
-#: build/models.py:70 build/templates/build/build_base.html:13
+#: build/models.py:74 build/templates/build/build_base.html:13
#: build/templates/build/index.html:8 build/templates/build/index.html:12
-#: order/templates/order/sales_order_detail.html:119
+#: order/templates/order/sales_order_detail.html:111
#: order/templates/order/so_sidebar.html:13
-#: part/templates/part/part_sidebar.html:22 templates/InvenTree/index.html:244
+#: part/templates/part/part_sidebar.html:22 templates/InvenTree/index.html:196
#: templates/InvenTree/search.html:141
#: templates/InvenTree/settings/sidebar.html:53
-#: templates/js/translated/search.js:228 users/models.py:42
+#: templates/js/translated/search.js:186 users/models.py:42
msgid "Build Orders"
msgstr "Gyártási utasítások"
-#: build/models.py:111
+#: build/models.py:115
msgid "Invalid choice for parent build"
msgstr "Hibás választás a szülő gyártásra"
-#: build/models.py:155
+#: build/models.py:159
msgid "Build Order Reference"
msgstr "Gyártási utasítás azonosító"
-#: build/models.py:156 order/models.py:359 order/models.py:765
-#: order/models.py:1087 order/models.py:1724 part/admin.py:278
-#: part/models.py:3798 part/templates/part/upload_bom.html:54
+#: build/models.py:160 order/models.py:372 order/models.py:778
+#: order/models.py:1100 order/models.py:1737 part/admin.py:278
+#: part/models.py:3842 part/templates/part/upload_bom.html:54
#: report/templates/report/inventree_bill_of_materials_report.html:139
#: report/templates/report/inventree_po_report_base.html:28
#: report/templates/report/inventree_return_order_report_base.html:26
#: report/templates/report/inventree_so_report_base.html:28
-#: templates/js/translated/bom.js:769 templates/js/translated/bom.js:943
-#: templates/js/translated/build.js:2098 templates/js/translated/order.js:291
+#: templates/js/translated/bom.js:770 templates/js/translated/bom.js:961
+#: templates/js/translated/build.js:2441 templates/js/translated/order.js:291
#: templates/js/translated/pricing.js:386
-#: templates/js/translated/purchase_order.js:2033
-#: templates/js/translated/return_order.js:713
-#: templates/js/translated/sales_order.js:1798
+#: templates/js/translated/purchase_order.js:2043
+#: templates/js/translated/return_order.js:725
+#: templates/js/translated/sales_order.js:1810
msgid "Reference"
msgstr "Azonosító"
-#: build/models.py:167
+#: build/models.py:171
msgid "Brief description of the build (optional)"
msgstr "Gyártás rövid leírása (opcionális)"
-#: build/models.py:175 build/templates/build/build_base.html:183
+#: build/models.py:179 build/templates/build/build_base.html:184
#: build/templates/build/detail.html:87
msgid "Parent Build"
msgstr "Szülő gyártás"
-#: build/models.py:176
+#: build/models.py:180
msgid "BuildOrder to which this build is allocated"
msgstr "Gyártás, amihez ez a gyártás hozzá van rendelve"
-#: build/models.py:181 build/templates/build/build_base.html:98
-#: build/templates/build/detail.html:29 company/models.py:775
-#: order/models.py:1195 order/models.py:1311 order/models.py:1312
-#: part/models.py:391 part/models.py:2865 part/models.py:2979
-#: part/models.py:3119 part/models.py:3138 part/models.py:3157
-#: part/models.py:3178 part/models.py:3270 part/models.py:3555
-#: part/models.py:3663 part/models.py:3763 part/models.py:4077
-#: part/serializers.py:842 part/serializers.py:1245
+#: build/models.py:185 build/templates/build/build_base.html:98
+#: build/templates/build/detail.html:29 company/models.py:924
+#: order/models.py:1208 order/models.py:1324 order/models.py:1325
+#: part/models.py:392 part/models.py:2899 part/models.py:3013
+#: part/models.py:3153 part/models.py:3172 part/models.py:3191
+#: part/models.py:3212 part/models.py:3304 part/models.py:3589
+#: part/models.py:3712 part/models.py:3807 part/models.py:4121
+#: part/serializers.py:904 part/serializers.py:1307
#: part/templates/part/part_app_base.html:8
#: part/templates/part/part_pricing.html:12
#: part/templates/part/upload_bom.html:52
@@ -935,266 +969,229 @@ msgstr "Gyártás, amihez ez a gyártás hozzá van rendelve"
#: report/templates/report/inventree_po_report_base.html:27
#: report/templates/report/inventree_return_order_report_base.html:24
#: report/templates/report/inventree_so_report_base.html:27
-#: stock/serializers.py:156 stock/serializers.py:509
+#: stock/serializers.py:205 stock/serializers.py:576
#: templates/InvenTree/search.html:82
#: templates/email/build_order_completed.html:17
#: templates/email/build_order_required_stock.html:17
#: templates/email/low_stock_notification.html:15
#: templates/email/overdue_build_order.html:16
-#: templates/js/translated/barcode.js:529 templates/js/translated/bom.js:631
-#: templates/js/translated/bom.js:768 templates/js/translated/bom.js:887
-#: templates/js/translated/build.js:1403 templates/js/translated/build.js:1965
-#: templates/js/translated/build.js:2464 templates/js/translated/build.js:2868
-#: templates/js/translated/company.js:337
-#: templates/js/translated/company.js:822
-#: templates/js/translated/company.js:929
-#: templates/js/translated/company.js:1169 templates/js/translated/part.js:1918
-#: templates/js/translated/part.js:1990 templates/js/translated/part.js:2216
-#: templates/js/translated/pricing.js:369
-#: templates/js/translated/purchase_order.js:746
-#: templates/js/translated/purchase_order.js:1274
-#: templates/js/translated/purchase_order.js:1811
-#: templates/js/translated/purchase_order.js:1975
-#: templates/js/translated/return_order.js:527
-#: templates/js/translated/return_order.js:694
-#: templates/js/translated/sales_order.js:285
-#: templates/js/translated/sales_order.js:1185
-#: templates/js/translated/sales_order.js:1584
-#: templates/js/translated/sales_order.js:1782
-#: templates/js/translated/stock.js:643 templates/js/translated/stock.js:809
-#: templates/js/translated/stock.js:1021 templates/js/translated/stock.js:1773
-#: templates/js/translated/stock.js:2594 templates/js/translated/stock.js:2831
-#: templates/js/translated/stock.js:2968
+#: templates/js/translated/barcode.js:529 templates/js/translated/bom.js:632
+#: templates/js/translated/bom.js:769 templates/js/translated/bom.js:905
+#: templates/js/translated/build.js:1289 templates/js/translated/build.js:1669
+#: templates/js/translated/build.js:2085 templates/js/translated/build.js:2261
+#: templates/js/translated/company.js:347
+#: templates/js/translated/company.js:1147
+#: templates/js/translated/company.js:1302
+#: templates/js/translated/company.js:1590 templates/js/translated/index.js:104
+#: templates/js/translated/part.js:1917 templates/js/translated/part.js:1989
+#: templates/js/translated/part.js:2292 templates/js/translated/pricing.js:369
+#: templates/js/translated/purchase_order.js:757
+#: templates/js/translated/purchase_order.js:1289
+#: templates/js/translated/purchase_order.js:1826
+#: templates/js/translated/purchase_order.js:1985
+#: templates/js/translated/return_order.js:539
+#: templates/js/translated/return_order.js:706
+#: templates/js/translated/sales_order.js:297
+#: templates/js/translated/sales_order.js:1197
+#: templates/js/translated/sales_order.js:1596
+#: templates/js/translated/sales_order.js:1794
+#: templates/js/translated/stock.js:642 templates/js/translated/stock.js:808
+#: templates/js/translated/stock.js:1020 templates/js/translated/stock.js:1913
+#: templates/js/translated/stock.js:2725 templates/js/translated/stock.js:2958
+#: templates/js/translated/stock.js:3095
msgid "Part"
msgstr "Alkatrész"
-#: build/models.py:189
+#: build/models.py:193
msgid "Select part to build"
msgstr "Válassz alkatrészt a gyártáshoz"
-#: build/models.py:194
+#: build/models.py:198
msgid "Sales Order Reference"
msgstr "Vevői rendelés azonosító"
-#: build/models.py:198
+#: build/models.py:202
msgid "SalesOrder to which this build is allocated"
msgstr "Vevői rendelés amihez ez a gyártás hozzá van rendelve"
-#: build/models.py:203 build/serializers.py:942
-#: templates/js/translated/build.js:2452
-#: templates/js/translated/sales_order.js:1173
+#: build/models.py:207 build/serializers.py:946
+#: templates/js/translated/build.js:1657
+#: templates/js/translated/sales_order.js:1185
msgid "Source Location"
msgstr "Forrás hely"
-#: build/models.py:207
+#: build/models.py:211
msgid "Select location to take stock from for this build (leave blank to take from any stock location)"
msgstr "Válassz helyet ahonnan készletet vegyünk el ehhez a gyártáshoz (hagyd üresen ha bárhonnan)"
-#: build/models.py:212
+#: build/models.py:216
msgid "Destination Location"
msgstr "Cél hely"
-#: build/models.py:216
+#: build/models.py:220
msgid "Select location where the completed items will be stored"
msgstr "Válassz helyet ahol a kész tételek tárolva lesznek"
-#: build/models.py:220
+#: build/models.py:224
msgid "Build Quantity"
msgstr "Gyártási mennyiség"
-#: build/models.py:223
+#: build/models.py:227
msgid "Number of stock items to build"
msgstr "Gyártandó készlet tételek száma"
-#: build/models.py:227
+#: build/models.py:231
msgid "Completed items"
msgstr "Kész tételek"
-#: build/models.py:229
+#: build/models.py:233
msgid "Number of stock items which have been completed"
msgstr "Elkészült készlet tételek száma"
-#: build/models.py:233
+#: build/models.py:237
msgid "Build Status"
msgstr "Gyártási állapot"
-#: build/models.py:237
+#: build/models.py:241
msgid "Build status code"
msgstr "Gyártás státusz kód"
-#: build/models.py:246 build/serializers.py:269 order/serializers.py:506
-#: stock/models.py:739 templates/js/translated/purchase_order.js:1099
+#: build/models.py:250 build/serializers.py:277 order/serializers.py:512
+#: stock/models.py:739 templates/js/translated/purchase_order.js:1114
msgid "Batch Code"
msgstr "Batch kód"
-#: build/models.py:250 build/serializers.py:270
+#: build/models.py:254 build/serializers.py:278
msgid "Batch code for this build output"
msgstr "Batch kód a gyártás kimenetéhez"
-#: build/models.py:253 order/models.py:244 part/models.py:1038
+#: build/models.py:257 order/models.py:248 part/models.py:1039
#: part/templates/part/part_base.html:312
-#: templates/js/translated/return_order.js:327
-#: templates/js/translated/sales_order.js:815
+#: templates/js/translated/return_order.js:339
+#: templates/js/translated/sales_order.js:827
msgid "Creation Date"
msgstr "Létrehozás dátuma"
-#: build/models.py:257
+#: build/models.py:261
msgid "Target completion date"
msgstr "Befejezés cél dátuma"
-#: build/models.py:258
+#: build/models.py:262
msgid "Target date for build completion. Build will be overdue after this date."
msgstr "Cél dátum a gyártás befejezéséhez. Ez után késettnek számít majd."
-#: build/models.py:261 order/models.py:409 order/models.py:1767
-#: templates/js/translated/build.js:2953
+#: build/models.py:265 order/models.py:422 order/models.py:1780
+#: templates/js/translated/build.js:2170
msgid "Completion Date"
msgstr "Elkészítés dátuma"
-#: build/models.py:267
+#: build/models.py:271
msgid "completed by"
msgstr "elkészítette"
-#: build/models.py:275 templates/js/translated/build.js:2913
+#: build/models.py:279 templates/js/translated/build.js:2130
msgid "Issued by"
msgstr "Kiállította"
-#: build/models.py:276
+#: build/models.py:280
msgid "User who issued this build order"
msgstr "Felhasználó aki ezt a gyártási utasítást kiállította"
-#: build/models.py:284 build/templates/build/build_base.html:204
-#: build/templates/build/detail.html:122 order/models.py:258
-#: order/templates/order/order_base.html:214
-#: order/templates/order/return_order_base.html:182
-#: order/templates/order/sales_order_base.html:222 part/models.py:1042
+#: build/models.py:288 build/templates/build/build_base.html:205
+#: build/templates/build/detail.html:122 order/models.py:262
+#: order/templates/order/order_base.html:217
+#: order/templates/order/return_order_base.html:189
+#: order/templates/order/sales_order_base.html:229 part/models.py:1043
#: part/templates/part/part_base.html:392
#: report/templates/report/inventree_build_order_base.html:158
-#: templates/js/translated/build.js:2925
-#: templates/js/translated/purchase_order.js:1723
-#: templates/js/translated/return_order.js:347
-#: templates/js/translated/table_filters.js:461
+#: templates/js/translated/build.js:2142
+#: templates/js/translated/purchase_order.js:1738
+#: templates/js/translated/return_order.js:359
+#: templates/js/translated/table_filters.js:467
msgid "Responsible"
msgstr "Felelős"
-#: build/models.py:285
+#: build/models.py:289
msgid "User or group responsible for this build order"
msgstr "Felhasználó vagy csoport aki felelős ezért a gyártásért"
-#: build/models.py:290 build/templates/build/detail.html:108
+#: build/models.py:294 build/templates/build/detail.html:108
#: company/templates/company/manufacturer_part.html:107
#: company/templates/company/supplier_part.html:195
-#: order/templates/order/order_base.html:171
+#: order/templates/order/order_base.html:167
#: order/templates/order/return_order_base.html:146
#: order/templates/order/sales_order_base.html:181
#: part/templates/part/part_base.html:385 stock/models.py:733
#: stock/templates/stock/item_base.html:201
+#: templates/js/translated/company.js:1050
msgid "External Link"
msgstr "Külső link"
-#: build/models.py:295
+#: build/models.py:299
msgid "Build Priority"
msgstr "Priorítás"
-#: build/models.py:298
+#: build/models.py:302
msgid "Priority of this build order"
msgstr "Gyártási utasítás priorítása"
-#: build/models.py:536
+#: build/models.py:309 common/models.py:104 order/admin.py:17
+#: order/models.py:237 templates/InvenTree/settings/settings_staff_js.html:70
+#: templates/js/translated/build.js:2067
+#: templates/js/translated/purchase_order.js:1685
+#: templates/js/translated/return_order.js:318
+#: templates/js/translated/sales_order.js:806
+#: templates/js/translated/table_filters.js:24
+#: templates/project_code_data.html:6
+msgid "Project Code"
+msgstr "Projektszám"
+
+#: build/models.py:310
+msgid "Project code for this build order"
+msgstr ""
+
+#: build/models.py:545
#, python-brace-format
msgid "Build order {build} has been completed"
msgstr "A {build} gyártási utasítás elkészült"
-#: build/models.py:542
+#: build/models.py:551
msgid "A build order has been completed"
msgstr "Gyártási utasítás elkészült"
-#: build/models.py:744 build/models.py:811
+#: build/models.py:753 build/models.py:831
msgid "No build output specified"
msgstr "Nincs gyártási kimenet megadva"
-#: build/models.py:747
+#: build/models.py:756
msgid "Build output is already completed"
msgstr "Gyártási kimenet már kész"
-#: build/models.py:750
+#: build/models.py:759
msgid "Build output does not match Build Order"
msgstr "Gyártási kimenet nem egyezik a gyártási utasítással"
-#: build/models.py:815 build/serializers.py:212 build/serializers.py:251
-#: build/serializers.py:811 order/models.py:440 order/serializers.py:379
-#: order/serializers.py:501 part/serializers.py:1087 part/serializers.py:1408
-#: stock/models.py:593 stock/models.py:1387 stock/serializers.py:315
+#: build/models.py:835 build/serializers.py:220 build/serializers.py:259
+#: build/serializers.py:819 order/models.py:453 order/serializers.py:385
+#: order/serializers.py:507 part/serializers.py:1149 part/serializers.py:1470
+#: stock/models.py:593 stock/models.py:1387 stock/serializers.py:381
msgid "Quantity must be greater than zero"
msgstr "Mennyiségnek nullánál többnek kell lennie"
-#: build/models.py:820 build/serializers.py:217
+#: build/models.py:840 build/serializers.py:225
msgid "Quantity cannot be greater than the output quantity"
msgstr "A mennyiség nem lehet mint a gyártási mennyiség"
-#: build/models.py:1272
-msgid "Build item must specify a build output, as master part is marked as trackable"
-msgstr "Gyártási tételnek meg kell adnia a gyártási kimenetet, mivel a fő darab egyedi követésre kötelezett"
+#: build/models.py:1260
+msgid "Build object"
+msgstr ""
-#: build/models.py:1281
-#, python-brace-format
-msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})"
-msgstr "A lefoglalt mennyiség ({q}) nem lépheti túl a szabad készletet ({a})"
-
-#: build/models.py:1291 order/models.py:1601
-msgid "Stock item is over-allocated"
-msgstr "Készlet túlfoglalva"
-
-#: build/models.py:1297 order/models.py:1604
-msgid "Allocation quantity must be greater than zero"
-msgstr "Lefoglalt mennyiségnek nullánál többnek kell lennie"
-
-#: build/models.py:1303
-msgid "Quantity must be 1 for serialized stock"
-msgstr "Egyedi követésre kötelezett tételeknél a menyiség 1 kell legyen"
-
-#: build/models.py:1360
-msgid "Selected stock item not found in BOM"
-msgstr "Kiválasztott készlet tétel nem található az alkatrészjegyzékben"
-
-#: build/models.py:1438 stock/templates/stock/item_base.html:170
-#: templates/InvenTree/search.html:139 templates/js/translated/build.js:2841
-#: templates/navbar.html:38
-msgid "Build"
-msgstr "Gyártás"
-
-#: build/models.py:1439
-msgid "Build to allocate parts"
-msgstr "Gyártás amihez készletet foglaljunk"
-
-#: build/models.py:1455 build/serializers.py:791 order/serializers.py:1059
-#: order/serializers.py:1080 stock/serializers.py:413 stock/serializers.py:770
-#: stock/serializers.py:896 stock/templates/stock/item_base.html:10
-#: stock/templates/stock/item_base.html:23
-#: stock/templates/stock/item_base.html:195
-#: templates/js/translated/build.js:955 templates/js/translated/build.js:960
-#: templates/js/translated/build.js:2466 templates/js/translated/build.js:3038
-#: templates/js/translated/sales_order.js:286
-#: templates/js/translated/sales_order.js:1186
-#: templates/js/translated/sales_order.js:1485
-#: templates/js/translated/sales_order.js:1490
-#: templates/js/translated/sales_order.js:1591
-#: templates/js/translated/sales_order.js:1678
-#: templates/js/translated/stock.js:644 templates/js/translated/stock.js:810
-#: templates/js/translated/stock.js:2714
-msgid "Stock Item"
-msgstr "Készlet tétel"
-
-#: build/models.py:1456
-msgid "Source stock item"
-msgstr "Forrás készlet tétel"
-
-#: build/models.py:1468 build/serializers.py:198 build/serializers.py:236
-#: build/templates/build/build_base.html:103
-#: build/templates/build/detail.html:34 common/models.py:2176
-#: order/models.py:1073 order/models.py:1645 order/serializers.py:1233
+#: build/models.py:1274 build/models.py:1556 build/serializers.py:206
+#: build/serializers.py:244 build/templates/build/build_base.html:103
+#: build/templates/build/detail.html:34 common/models.py:2162
+#: order/models.py:1086 order/models.py:1658 order/serializers.py:1239
#: order/templates/order/order_wizard/match_parts.html:30 part/admin.py:277
-#: part/forms.py:47 part/models.py:2992 part/models.py:3779
+#: part/forms.py:47 part/models.py:3026 part/models.py:3823
#: part/templates/part/part_pricing.html:16
#: part/templates/part/upload_bom.html:53
#: report/templates/report/inventree_bill_of_materials_report.html:138
@@ -1203,316 +1200,368 @@ msgstr "Forrás készlet tétel"
#: report/templates/report/inventree_so_report_base.html:29
#: report/templates/report/inventree_test_report_base.html:90
#: report/templates/report/inventree_test_report_base.html:170
-#: stock/admin.py:103 stock/serializers.py:306
+#: stock/admin.py:103 stock/serializers.py:372
#: stock/templates/stock/item_base.html:288
#: stock/templates/stock/item_base.html:296
#: stock/templates/stock/item_base.html:343
#: templates/email/build_order_completed.html:18
-#: templates/js/translated/barcode.js:531 templates/js/translated/bom.js:770
-#: templates/js/translated/bom.js:951 templates/js/translated/build.js:504
-#: templates/js/translated/build.js:716 templates/js/translated/build.js:982
-#: templates/js/translated/build.js:1425 templates/js/translated/build.js:1991
-#: templates/js/translated/build.js:2467
-#: templates/js/translated/company.js:1428
-#: templates/js/translated/model_renderers.js:207
-#: templates/js/translated/order.js:304 templates/js/translated/part.js:935
-#: templates/js/translated/part.js:1784 templates/js/translated/part.js:3263
+#: templates/js/translated/barcode.js:531 templates/js/translated/bom.js:771
+#: templates/js/translated/bom.js:969 templates/js/translated/build.js:510
+#: templates/js/translated/build.js:722 templates/js/translated/build.js:1308
+#: templates/js/translated/build.js:1672 templates/js/translated/build.js:2283
+#: templates/js/translated/company.js:1849
+#: templates/js/translated/model_renderers.js:221
+#: templates/js/translated/order.js:304 templates/js/translated/part.js:934
+#: templates/js/translated/part.js:1783 templates/js/translated/part.js:3248
#: templates/js/translated/pricing.js:381
#: templates/js/translated/pricing.js:474
#: templates/js/translated/pricing.js:522
#: templates/js/translated/pricing.js:616
-#: templates/js/translated/purchase_order.js:749
-#: templates/js/translated/purchase_order.js:1815
-#: templates/js/translated/purchase_order.js:2039
-#: templates/js/translated/sales_order.js:302
-#: templates/js/translated/sales_order.js:1187
-#: templates/js/translated/sales_order.js:1504
-#: templates/js/translated/sales_order.js:1594
-#: templates/js/translated/sales_order.js:1684
-#: templates/js/translated/sales_order.js:1804
-#: templates/js/translated/stock.js:531 templates/js/translated/stock.js:669
-#: templates/js/translated/stock.js:840 templates/js/translated/stock.js:2758
-#: templates/js/translated/stock.js:2843
+#: templates/js/translated/purchase_order.js:760
+#: templates/js/translated/purchase_order.js:1830
+#: templates/js/translated/purchase_order.js:2049
+#: templates/js/translated/sales_order.js:314
+#: templates/js/translated/sales_order.js:1199
+#: templates/js/translated/sales_order.js:1516
+#: templates/js/translated/sales_order.js:1606
+#: templates/js/translated/sales_order.js:1696
+#: templates/js/translated/sales_order.js:1816
+#: templates/js/translated/stock.js:530 templates/js/translated/stock.js:668
+#: templates/js/translated/stock.js:839 templates/js/translated/stock.js:2889
+#: templates/js/translated/stock.js:2970
msgid "Quantity"
msgstr "Mennyiség"
-#: build/models.py:1469
+#: build/models.py:1275
+msgid "Required quantity for build order"
+msgstr ""
+
+#: build/models.py:1357
+msgid "Build item must specify a build output, as master part is marked as trackable"
+msgstr "Gyártási tételnek meg kell adnia a gyártási kimenetet, mivel a fő darab egyedi követésre kötelezett"
+
+#: build/models.py:1366
+#, python-brace-format
+msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})"
+msgstr "A lefoglalt mennyiség ({q}) nem lépheti túl a szabad készletet ({a})"
+
+#: build/models.py:1376 order/models.py:1614
+msgid "Stock item is over-allocated"
+msgstr "Készlet túlfoglalva"
+
+#: build/models.py:1382 order/models.py:1617
+msgid "Allocation quantity must be greater than zero"
+msgstr "Lefoglalt mennyiségnek nullánál többnek kell lennie"
+
+#: build/models.py:1388
+msgid "Quantity must be 1 for serialized stock"
+msgstr "Egyedi követésre kötelezett tételeknél a menyiség 1 kell legyen"
+
+#: build/models.py:1449
+msgid "Selected stock item does not match BOM line"
+msgstr ""
+
+#: build/models.py:1543 build/serializers.py:799 order/serializers.py:1065
+#: order/serializers.py:1086 stock/serializers.py:479 stock/serializers.py:887
+#: stock/serializers.py:1013 stock/templates/stock/item_base.html:10
+#: stock/templates/stock/item_base.html:23
+#: stock/templates/stock/item_base.html:195
+#: templates/js/translated/build.js:1671
+#: templates/js/translated/sales_order.js:298
+#: templates/js/translated/sales_order.js:1198
+#: templates/js/translated/sales_order.js:1497
+#: templates/js/translated/sales_order.js:1502
+#: templates/js/translated/sales_order.js:1603
+#: templates/js/translated/sales_order.js:1690
+#: templates/js/translated/stock.js:643 templates/js/translated/stock.js:809
+#: templates/js/translated/stock.js:2845
+msgid "Stock Item"
+msgstr "Készlet tétel"
+
+#: build/models.py:1544
+msgid "Source stock item"
+msgstr "Forrás készlet tétel"
+
+#: build/models.py:1557
msgid "Stock quantity to allocate to build"
msgstr "Készlet mennyiség amit foglaljunk a gyártáshoz"
-#: build/models.py:1477
+#: build/models.py:1565
msgid "Install into"
msgstr "Beépítés ebbe"
-#: build/models.py:1478
+#: build/models.py:1566
msgid "Destination stock item"
msgstr "Cél készlet tétel"
-#: build/serializers.py:148 build/serializers.py:820
-#: templates/js/translated/build.js:1413
+#: build/serializers.py:156 build/serializers.py:828
+#: templates/js/translated/build.js:1299
msgid "Build Output"
msgstr "Gyártás kimenet"
-#: build/serializers.py:160
+#: build/serializers.py:168
msgid "Build output does not match the parent build"
msgstr "Gyártási kimenet nem egyezik a szülő gyártással"
-#: build/serializers.py:164
+#: build/serializers.py:172
msgid "Output part does not match BuildOrder part"
msgstr "Kimeneti alkatrész nem egyezik a gyártási utasításban lévő alkatrésszel"
-#: build/serializers.py:168
+#: build/serializers.py:176
msgid "This build output has already been completed"
msgstr "Ez a gyártási kimenet már elkészült"
-#: build/serializers.py:179
+#: build/serializers.py:187
msgid "This build output is not fully allocated"
msgstr "Ez a gyártási kimenet nincs teljesen lefoglalva"
-#: build/serializers.py:199 build/serializers.py:237
+#: build/serializers.py:207 build/serializers.py:245
msgid "Enter quantity for build output"
msgstr "Add meg a mennyiséget a gyártás kimenetéhez"
-#: build/serializers.py:258
+#: build/serializers.py:266
msgid "Integer quantity required for trackable parts"
msgstr "Egész számú mennyiség szükséges az egyedi követésre kötelezett alkatrészeknél"
-#: build/serializers.py:261
+#: build/serializers.py:269
msgid "Integer quantity required, as the bill of materials contains trackable parts"
msgstr "Egész számú mennyiség szükséges, mivel az alkatrészjegyzék egyedi követésre kötelezett alkatrészeket tartalmaz"
-#: build/serializers.py:276 order/serializers.py:514 order/serializers.py:1237
-#: stock/serializers.py:324 templates/js/translated/purchase_order.js:1123
-#: templates/js/translated/stock.js:334 templates/js/translated/stock.js:532
+#: build/serializers.py:284 order/serializers.py:520 order/serializers.py:1243
+#: stock/serializers.py:390 templates/js/translated/purchase_order.js:1138
+#: templates/js/translated/stock.js:333 templates/js/translated/stock.js:531
msgid "Serial Numbers"
msgstr "Sorozatszámok"
-#: build/serializers.py:277
+#: build/serializers.py:285
msgid "Enter serial numbers for build outputs"
msgstr "Add meg a sorozatszámokat a gyártás kimenetéhez"
-#: build/serializers.py:290
+#: build/serializers.py:298
msgid "Auto Allocate Serial Numbers"
msgstr "Sorozatszámok automatikus hozzárendelése"
-#: build/serializers.py:291
+#: build/serializers.py:299
msgid "Automatically allocate required items with matching serial numbers"
msgstr "Szükséges tételek automatikus hozzárendelése a megfelelő sorozatszámokkal"
-#: build/serializers.py:326 stock/api.py:670
+#: build/serializers.py:334 stock/api.py:707
msgid "The following serial numbers already exist or are invalid"
msgstr "A következő sorozatszámok már léteznek vagy nem megfelelőek"
-#: build/serializers.py:377 build/serializers.py:439 build/serializers.py:518
+#: build/serializers.py:385 build/serializers.py:447 build/serializers.py:526
msgid "A list of build outputs must be provided"
msgstr "A gyártási kimenetek listáját meg kell adni"
-#: build/serializers.py:415 build/serializers.py:488 order/serializers.py:487
-#: order/serializers.py:606 order/serializers.py:1588 part/serializers.py:854
-#: stock/serializers.py:335 stock/serializers.py:470 stock/serializers.py:551
-#: stock/serializers.py:931 stock/serializers.py:1173
+#: build/serializers.py:423 build/serializers.py:496 order/serializers.py:493
+#: order/serializers.py:612 order/serializers.py:1594 part/serializers.py:916
+#: stock/serializers.py:401 stock/serializers.py:537 stock/serializers.py:618
+#: stock/serializers.py:1048 stock/serializers.py:1290
#: stock/templates/stock/item_base.html:390
#: templates/js/translated/barcode.js:530
-#: templates/js/translated/barcode.js:778 templates/js/translated/build.js:967
-#: templates/js/translated/build.js:2006
-#: templates/js/translated/purchase_order.js:1148
-#: templates/js/translated/purchase_order.js:1238
-#: templates/js/translated/sales_order.js:1497
-#: templates/js/translated/sales_order.js:1605
-#: templates/js/translated/sales_order.js:1613
-#: templates/js/translated/sales_order.js:1692
-#: templates/js/translated/stock.js:645 templates/js/translated/stock.js:811
-#: templates/js/translated/stock.js:1023 templates/js/translated/stock.js:1937
-#: templates/js/translated/stock.js:2608
+#: templates/js/translated/barcode.js:778 templates/js/translated/build.js:980
+#: templates/js/translated/build.js:2298
+#: templates/js/translated/purchase_order.js:1163
+#: templates/js/translated/purchase_order.js:1253
+#: templates/js/translated/sales_order.js:1509
+#: templates/js/translated/sales_order.js:1617
+#: templates/js/translated/sales_order.js:1625
+#: templates/js/translated/sales_order.js:1704
+#: templates/js/translated/stock.js:644 templates/js/translated/stock.js:810
+#: templates/js/translated/stock.js:1022 templates/js/translated/stock.js:2094
+#: templates/js/translated/stock.js:2739
msgid "Location"
msgstr "Hely"
-#: build/serializers.py:416
+#: build/serializers.py:424
msgid "Stock location for scrapped outputs"
msgstr "Selejtezett termékek lokációja"
-#: build/serializers.py:422
+#: build/serializers.py:430
msgid "Discard Allocations"
msgstr "Foglalások törlése"
-#: build/serializers.py:423
+#: build/serializers.py:431
msgid "Discard any stock allocations for scrapped outputs"
msgstr ""
-#: build/serializers.py:428
+#: build/serializers.py:436
msgid "Reason for scrapping build output(s)"
msgstr "Selejtezés oka(i)"
-#: build/serializers.py:489
+#: build/serializers.py:497
msgid "Location for completed build outputs"
msgstr "A kész gyártási kimenetek helye"
-#: build/serializers.py:495 build/templates/build/build_base.html:151
-#: build/templates/build/detail.html:62 order/models.py:791
-#: order/models.py:1750 order/serializers.py:524 stock/admin.py:106
-#: stock/templates/stock/item_base.html:423
-#: templates/js/translated/barcode.js:252 templates/js/translated/build.js:2897
-#: templates/js/translated/purchase_order.js:1278
-#: templates/js/translated/purchase_order.js:1682
-#: templates/js/translated/return_order.js:319
-#: templates/js/translated/sales_order.js:807
-#: templates/js/translated/stock.js:1912 templates/js/translated/stock.js:2732
-#: templates/js/translated/stock.js:2859
+#: build/serializers.py:503 build/templates/build/build_base.html:152
+#: build/templates/build/detail.html:62 order/models.py:804
+#: order/models.py:1763 order/serializers.py:530 stock/admin.py:106
+#: stock/serializers.py:677 stock/templates/stock/item_base.html:423
+#: templates/js/translated/barcode.js:252 templates/js/translated/build.js:2114
+#: templates/js/translated/purchase_order.js:1293
+#: templates/js/translated/purchase_order.js:1697
+#: templates/js/translated/return_order.js:331
+#: templates/js/translated/sales_order.js:819
+#: templates/js/translated/stock.js:2069 templates/js/translated/stock.js:2863
+#: templates/js/translated/stock.js:2986
msgid "Status"
msgstr "Állapot"
-#: build/serializers.py:501
+#: build/serializers.py:509
msgid "Accept Incomplete Allocation"
msgstr "Hiányos foglalás elfogadása"
-#: build/serializers.py:502
+#: build/serializers.py:510
msgid "Complete outputs if stock has not been fully allocated"
msgstr "Kimenetek befejezése akkor is ha a készlet nem\n"
"lett teljesen lefoglalva"
-#: build/serializers.py:571
+#: build/serializers.py:579
msgid "Remove Allocated Stock"
msgstr "Lefoglalt készlet levonása"
-#: build/serializers.py:572
+#: build/serializers.py:580
msgid "Subtract any stock which has already been allocated to this build"
msgstr "Az összes lefoglalt tétel levonása a készletről"
-#: build/serializers.py:578
+#: build/serializers.py:586
msgid "Remove Incomplete Outputs"
msgstr "Befejezetlen kimenetek törlése"
-#: build/serializers.py:579
+#: build/serializers.py:587
msgid "Delete any build outputs which have not been completed"
msgstr "A nem befejezett gyártási kimenetek törlése"
-#: build/serializers.py:606
+#: build/serializers.py:614
msgid "Not permitted"
msgstr "Nem engedélyezett"
-#: build/serializers.py:607
+#: build/serializers.py:615
msgid "Accept as consumed by this build order"
msgstr "Gyártásban fel lett használva"
-#: build/serializers.py:608
+#: build/serializers.py:616
msgid "Deallocate before completing this build order"
msgstr "Foglalás felszabadítása a készre jelentés előtt"
-#: build/serializers.py:631
+#: build/serializers.py:639
msgid "Overallocated Stock"
msgstr "Túlfoglalt készlet"
-#: build/serializers.py:633
+#: build/serializers.py:641
msgid "How do you want to handle extra stock items assigned to the build order"
msgstr "Hogyan kezeljük az gyártáshoz rendelt egyéb készletet"
-#: build/serializers.py:643
+#: build/serializers.py:651
msgid "Some stock items have been overallocated"
msgstr "Pár készlet tétel túl lett foglalva"
-#: build/serializers.py:648
+#: build/serializers.py:656
msgid "Accept Unallocated"
msgstr "Kiosztatlanok elfogadása"
-#: build/serializers.py:649
+#: build/serializers.py:657
msgid "Accept that stock items have not been fully allocated to this build order"
msgstr "Fogadd el hogy a készlet tételek nincsenek teljesen lefoglalva ehhez a gyártási utastáshoz"
-#: build/serializers.py:659 templates/js/translated/build.js:295
+#: build/serializers.py:667 templates/js/translated/build.js:304
msgid "Required stock has not been fully allocated"
msgstr "A szükséges készlet nem lett teljesen lefoglalva"
-#: build/serializers.py:664 order/serializers.py:261 order/serializers.py:1127
+#: build/serializers.py:672 order/serializers.py:267 order/serializers.py:1133
msgid "Accept Incomplete"
msgstr "Befejezetlenek elfogadása"
-#: build/serializers.py:665
+#: build/serializers.py:673
msgid "Accept that the required number of build outputs have not been completed"
msgstr "Fogadd el hogy a szükséges számú gyártási kimenet nem lett elérve"
-#: build/serializers.py:675 templates/js/translated/build.js:299
+#: build/serializers.py:683 templates/js/translated/build.js:308
msgid "Required build quantity has not been completed"
msgstr "Szükséges gyártási mennyiség nem lett elérve"
-#: build/serializers.py:684 templates/js/translated/build.js:283
+#: build/serializers.py:692 templates/js/translated/build.js:292
msgid "Build order has incomplete outputs"
msgstr "A gyártási utasítás befejezetlen kimeneteket tartalmaz"
-#: build/serializers.py:714 build/serializers.py:768 part/models.py:3686
-#: part/models.py:4069
-msgid "BOM Item"
-msgstr "Alkatrészjegyzék tétel"
+#: build/serializers.py:722
+msgid "Build Line"
+msgstr ""
-#: build/serializers.py:724
+#: build/serializers.py:732
msgid "Build output"
msgstr "Gyártás kimenet"
-#: build/serializers.py:732
+#: build/serializers.py:740
msgid "Build output must point to the same build"
msgstr "A gyártási kimenetnek ugyanarra a gyártásra kell mutatnia"
-#: build/serializers.py:782
+#: build/serializers.py:776
+msgid "Build Line Item"
+msgstr ""
+
+#: build/serializers.py:790
msgid "bom_item.part must point to the same part as the build order"
msgstr "bom_item.part ugyanarra az alkatrészre kell mutasson mint a gyártási utasítás"
-#: build/serializers.py:797 stock/serializers.py:783
+#: build/serializers.py:805 stock/serializers.py:900
msgid "Item must be in stock"
msgstr "A tételnek kell legyen készlete"
-#: build/serializers.py:846 order/serializers.py:1117
+#: build/serializers.py:853 order/serializers.py:1123
#, python-brace-format
msgid "Available quantity ({q}) exceeded"
msgstr "Rendelkezésre álló mennyiség ({q}) túllépve"
-#: build/serializers.py:852
+#: build/serializers.py:859
msgid "Build output must be specified for allocation of tracked parts"
msgstr "Gyártási kimenetet meg kell adni a követésre kötelezett alkatrészek lefoglalásához"
-#: build/serializers.py:859
+#: build/serializers.py:866
msgid "Build output cannot be specified for allocation of untracked parts"
msgstr "Gyártási kimenetet nem lehet megadni a követésre kötelezett alkatrészek lefoglalásához"
-#: build/serializers.py:864
+#: build/serializers.py:871
msgid "This stock item has already been allocated to this build output"
msgstr "Ez a készlet tétel már le lett foglalva ehhez a gyártási kimenethez"
-#: build/serializers.py:887 order/serializers.py:1401
+#: build/serializers.py:894 order/serializers.py:1407
msgid "Allocation items must be provided"
msgstr "A lefoglalandó tételeket meg kell adni"
-#: build/serializers.py:943
+#: build/serializers.py:947
msgid "Stock location where parts are to be sourced (leave blank to take from any location)"
msgstr "Készlet hely ahonnan az alkatrészek származnak (hagyd üresen ha bárhonnan)"
-#: build/serializers.py:951
+#: build/serializers.py:955
msgid "Exclude Location"
msgstr "Hely kizárása"
-#: build/serializers.py:952
+#: build/serializers.py:956
msgid "Exclude stock items from this selected location"
msgstr "Készlet tételek kizárása erről a kiválasztott helyről"
-#: build/serializers.py:957
+#: build/serializers.py:961
msgid "Interchangeable Stock"
msgstr "Felcserélhető készlet"
-#: build/serializers.py:958
+#: build/serializers.py:962
msgid "Stock items in multiple locations can be used interchangeably"
msgstr "A különböző helyeken lévő készlet egyenrangúan felhasználható"
-#: build/serializers.py:963
+#: build/serializers.py:967
msgid "Substitute Stock"
msgstr "Készlet helyettesítés"
-#: build/serializers.py:964
+#: build/serializers.py:968
msgid "Allow allocation of substitute parts"
msgstr "Helyettesítő alkatrészek foglalásának engedélyezése"
-#: build/serializers.py:969
+#: build/serializers.py:973
msgid "Optional Items"
msgstr "Opcionális tételek"
-#: build/serializers.py:970
+#: build/serializers.py:974
msgid "Allocate optional BOM items to build order"
msgstr "Opcionális tételek lefoglalása a gyártáshoz"
@@ -1541,6 +1590,7 @@ msgstr ""
#: part/templates/part/part_base.html:43
#: stock/templates/stock/item_base.html:41
#: stock/templates/stock/location.html:54
+#: templates/js/translated/filters.js:336
msgid "Barcode actions"
msgstr "Vonalkód műveletek"
@@ -1619,69 +1669,67 @@ msgstr "Gyártás befejezése"
msgid "Build Description"
msgstr "Gyártás leírása"
-#: build/templates/build/build_base.html:117
+#: build/templates/build/build_base.html:118
msgid "No build outputs have been created for this build order"
msgstr "Ehhez a gyártási utasításhoz nem készült kimenet"
-#: build/templates/build/build_base.html:124
+#: build/templates/build/build_base.html:125
msgid "Build Order is ready to mark as completed"
msgstr "Gyártási utasítás elkészültnek jelölhető"
-#: build/templates/build/build_base.html:129
+#: build/templates/build/build_base.html:130
msgid "Build Order cannot be completed as outstanding outputs remain"
msgstr "Befejezetlen gyártási kimenetek vannak"
-#: build/templates/build/build_base.html:134
+#: build/templates/build/build_base.html:135
msgid "Required build quantity has not yet been completed"
msgstr "Szükséges gyártási mennyiség még nincs meg"
-#: build/templates/build/build_base.html:139
+#: build/templates/build/build_base.html:140
msgid "Stock has not been fully allocated to this Build Order"
msgstr "Még nincs lefoglalva a szükséges készlet"
-#: build/templates/build/build_base.html:160
-#: build/templates/build/detail.html:138 order/models.py:240
-#: order/models.py:1099 order/templates/order/order_base.html:190
+#: build/templates/build/build_base.html:161
+#: build/templates/build/detail.html:138 order/models.py:244
+#: order/models.py:1112 order/templates/order/order_base.html:186
#: order/templates/order/return_order_base.html:165
#: order/templates/order/sales_order_base.html:193
#: report/templates/report/inventree_build_order_base.html:125
-#: templates/js/translated/build.js:2945 templates/js/translated/part.js:1802
-#: templates/js/translated/purchase_order.js:1699
-#: templates/js/translated/purchase_order.js:2115
-#: templates/js/translated/return_order.js:335
-#: templates/js/translated/return_order.js:735
-#: templates/js/translated/sales_order.js:823
-#: templates/js/translated/sales_order.js:1847
+#: templates/js/translated/build.js:2162 templates/js/translated/part.js:1801
+#: templates/js/translated/purchase_order.js:1714
+#: templates/js/translated/purchase_order.js:2125
+#: templates/js/translated/return_order.js:347
+#: templates/js/translated/return_order.js:747
+#: templates/js/translated/sales_order.js:835
+#: templates/js/translated/sales_order.js:1859
msgid "Target Date"
msgstr "Cél dátum"
-#: build/templates/build/build_base.html:165
+#: build/templates/build/build_base.html:166
#, python-format
msgid "This build was due on %(target)s"
msgstr "Ez a gyártás %(target)s-n volt esedékes"
-#: build/templates/build/build_base.html:165
-#: build/templates/build/build_base.html:222
-#: order/templates/order/order_base.html:126
+#: build/templates/build/build_base.html:166
+#: build/templates/build/build_base.html:223
+#: order/templates/order/order_base.html:122
#: order/templates/order/return_order_base.html:118
#: order/templates/order/sales_order_base.html:123
-#: templates/js/translated/table_filters.js:68
-#: templates/js/translated/table_filters.js:454
-#: templates/js/translated/table_filters.js:539
-#: templates/js/translated/table_filters.js:580
+#: templates/js/translated/table_filters.js:74
+#: templates/js/translated/table_filters.js:460
+#: templates/js/translated/table_filters.js:561
+#: templates/js/translated/table_filters.js:602
msgid "Overdue"
msgstr "Késésben"
-#: build/templates/build/build_base.html:177
-#: build/templates/build/detail.html:67 build/templates/build/detail.html:149
-#: order/templates/order/sales_order_base.html:203
-#: templates/js/translated/table_filters.js:602
-msgid "Completed"
-msgstr "Kész"
+#: build/templates/build/build_base.html:178
+#: build/templates/build/detail.html:67 build/templates/build/sidebar.html:13
+msgid "Completed Outputs"
+msgstr "Befejezett kimenetek"
-#: build/templates/build/build_base.html:190
-#: build/templates/build/detail.html:101 order/api.py:1454 order/models.py:1304
-#: order/models.py:1403 order/models.py:1551
+#: build/templates/build/build_base.html:191
+#: build/templates/build/detail.html:101 order/api.py:1454 order/models.py:1317
+#: order/models.py:1416 order/models.py:1564
#: order/templates/order/sales_order_base.html:9
#: order/templates/order/sales_order_base.html:28
#: report/templates/report/inventree_build_order_base.html:135
@@ -1689,32 +1737,32 @@ msgstr "Kész"
#: stock/templates/stock/item_base.html:370
#: templates/email/overdue_sales_order.html:15
#: templates/js/translated/pricing.js:915
-#: templates/js/translated/sales_order.js:757
-#: templates/js/translated/sales_order.js:980
-#: templates/js/translated/stock.js:2661
+#: templates/js/translated/sales_order.js:769
+#: templates/js/translated/sales_order.js:992
+#: templates/js/translated/stock.js:2792
msgid "Sales Order"
msgstr "Vevői rendelés"
-#: build/templates/build/build_base.html:197
+#: build/templates/build/build_base.html:198
#: build/templates/build/detail.html:115
#: report/templates/report/inventree_build_order_base.html:152
msgid "Issued By"
msgstr "Kiállította"
-#: build/templates/build/build_base.html:211
-#: build/templates/build/detail.html:94 templates/js/translated/build.js:2862
+#: build/templates/build/build_base.html:212
+#: build/templates/build/detail.html:94 templates/js/translated/build.js:2079
msgid "Priority"
msgstr "Prioritás"
-#: build/templates/build/build_base.html:273
+#: build/templates/build/build_base.html:274
msgid "Delete Build Order"
msgstr "Gyártási utasítás törlése"
-#: build/templates/build/build_base.html:283
+#: build/templates/build/build_base.html:284
msgid "Build Order QR Code"
msgstr "Gyártási utasítás QR kódja"
-#: build/templates/build/build_base.html:295
+#: build/templates/build/build_base.html:296
msgid "Link Barcode to Build Order"
msgstr "Vonalkód gyártáshoz rendelése"
@@ -1730,8 +1778,8 @@ msgstr "Készlet forrás"
msgid "Stock can be taken from any available location."
msgstr "Készlet bármely rendelkezésre álló helyről felhasználható."
-#: build/templates/build/detail.html:49 order/models.py:1222
-#: templates/js/translated/purchase_order.js:2157
+#: build/templates/build/detail.html:49 order/models.py:1235
+#: templates/js/translated/purchase_order.js:2167
msgid "Destination"
msgstr "Cél"
@@ -1745,21 +1793,21 @@ msgstr "Lefoglalt alkatrészek"
#: build/templates/build/detail.html:80 stock/admin.py:105
#: stock/templates/stock/item_base.html:163
-#: templates/js/translated/build.js:1432
-#: templates/js/translated/model_renderers.js:212
-#: templates/js/translated/purchase_order.js:1244
-#: templates/js/translated/stock.js:1093 templates/js/translated/stock.js:1926
-#: templates/js/translated/stock.js:2866
-#: templates/js/translated/table_filters.js:259
-#: templates/js/translated/table_filters.js:350
+#: templates/js/translated/build.js:1319
+#: templates/js/translated/model_renderers.js:226
+#: templates/js/translated/purchase_order.js:1259
+#: templates/js/translated/stock.js:1092 templates/js/translated/stock.js:2083
+#: templates/js/translated/stock.js:2993
+#: templates/js/translated/table_filters.js:265
+#: templates/js/translated/table_filters.js:356
msgid "Batch"
msgstr "Batch"
#: build/templates/build/detail.html:133
-#: order/templates/order/order_base.html:177
+#: order/templates/order/order_base.html:173
#: order/templates/order/return_order_base.html:152
#: order/templates/order/sales_order_base.html:187
-#: templates/js/translated/build.js:2905
+#: templates/js/translated/build.js:2122
msgid "Created"
msgstr "Létrehozva"
@@ -1767,147 +1815,106 @@ msgstr "Létrehozva"
msgid "No target date set"
msgstr "Nincs céldátum beállítva"
+#: build/templates/build/detail.html:149
+#: order/templates/order/sales_order_base.html:203
+#: templates/js/translated/table_filters.js:624
+msgid "Completed"
+msgstr "Kész"
+
#: build/templates/build/detail.html:153
msgid "Build not complete"
msgstr "Gyártás nincs kész"
-#: build/templates/build/detail.html:164 build/templates/build/sidebar.html:19
+#: build/templates/build/detail.html:164 build/templates/build/sidebar.html:17
msgid "Child Build Orders"
msgstr "Alárendelt gyártások"
-#: build/templates/build/detail.html:179
+#: build/templates/build/detail.html:177
msgid "Allocate Stock to Build"
msgstr "Készlet foglalása gyártáshoz"
-#: build/templates/build/detail.html:183 templates/js/translated/build.js:2276
-msgid "Unallocate stock"
-msgstr "Készlet felszabadítása"
+#: build/templates/build/detail.html:181
+msgid "Deallocate stock"
+msgstr ""
+
+#: build/templates/build/detail.html:182
+msgid "Deallocate Stock"
+msgstr ""
#: build/templates/build/detail.html:184
-msgid "Unallocate Stock"
-msgstr "Készlet felszabadítása"
-
-#: build/templates/build/detail.html:186
msgid "Automatically allocate stock to build"
msgstr "Automatikus készlet foglalás a gyártáshoz"
-#: build/templates/build/detail.html:187
+#: build/templates/build/detail.html:185
msgid "Auto Allocate"
msgstr "Automata foglalás"
-#: build/templates/build/detail.html:189
+#: build/templates/build/detail.html:187
msgid "Manually allocate stock to build"
msgstr "Manuális készlet foglalás a gyártáshoz"
-#: build/templates/build/detail.html:190 build/templates/build/sidebar.html:8
+#: build/templates/build/detail.html:188 build/templates/build/sidebar.html:8
msgid "Allocate Stock"
msgstr "Készlet foglalása"
-#: build/templates/build/detail.html:193
+#: build/templates/build/detail.html:191
msgid "Order required parts"
msgstr "Szükséges alkatrészek rendelése"
-#: build/templates/build/detail.html:194
-#: company/templates/company/detail.html:38
-#: company/templates/company/detail.html:86
-#: part/templates/part/category.html:184
-#: templates/js/translated/purchase_order.js:789
+#: build/templates/build/detail.html:192
+#: templates/js/translated/purchase_order.js:800
msgid "Order Parts"
msgstr "Alkatrész rendelés"
-#: build/templates/build/detail.html:206
-msgid "Untracked stock has been fully allocated for this Build Order"
-msgstr "A teljes szükséges készlet le lett foglalva ehhez a gyártási utasításhoz"
-
#: build/templates/build/detail.html:210
-msgid "Untracked stock has not been fully allocated for this Build Order"
-msgstr "Nincs minden készlet lefoglalva ehhez a gyártási utasításhoz"
-
-#: build/templates/build/detail.html:217
-msgid "Allocate selected items"
-msgstr "Kiválasztott tételek lefoglalása"
-
-#: build/templates/build/detail.html:227
-msgid "This Build Order does not have any associated untracked BOM items"
-msgstr "Ez a gyártási utasítás egyáltalán nem tartalmaz nem követett alkatrészjegyzék tételt"
-
-#: build/templates/build/detail.html:236
msgid "Incomplete Build Outputs"
msgstr "Befejezetlen gyártási kimenetek"
-#: build/templates/build/detail.html:240
+#: build/templates/build/detail.html:214
msgid "Create new build output"
msgstr "Új gyártási kimenet létrehozása"
-#: build/templates/build/detail.html:241
+#: build/templates/build/detail.html:215
msgid "New Build Output"
msgstr "Új gyártási kimenet"
-#: build/templates/build/detail.html:255
-msgid "Output Actions"
-msgstr "Kimeneti műveletek"
-
-#: build/templates/build/detail.html:260
-msgid "Complete selected build outputs"
-msgstr "Kiválasztott gyártási kimenetek befejezése"
-
-#: build/templates/build/detail.html:261
-msgid "Complete outputs"
-msgstr "Befejezett kimenetek"
-
-#: build/templates/build/detail.html:265
-msgid "Scrap selected build outputs"
-msgstr "Kiválasztott gyártási kimenetek selejtezése"
-
-#: build/templates/build/detail.html:266
-msgid "Scrap outputs"
-msgstr "Gyártási kimenetek selejtezése"
-
-#: build/templates/build/detail.html:270
-msgid "Delete selected build outputs"
-msgstr "Kiválasztott gyártási kimenetek törlése"
-
-#: build/templates/build/detail.html:271
-msgid "Delete outputs"
-msgstr "Kimenetek törlése"
-
-#: build/templates/build/detail.html:288 build/templates/build/sidebar.html:11
+#: build/templates/build/detail.html:232 build/templates/build/sidebar.html:15
msgid "Consumed Stock"
msgstr "Elhasznált készlet"
-#: build/templates/build/detail.html:300
+#: build/templates/build/detail.html:244
msgid "Completed Build Outputs"
msgstr "Befejezett gyártási kimenetek"
-#: build/templates/build/detail.html:312 build/templates/build/sidebar.html:21
-#: company/templates/company/detail.html:261
-#: company/templates/company/manufacturer_part.html:151
+#: build/templates/build/detail.html:256 build/templates/build/sidebar.html:19
+#: company/templates/company/detail.html:229
+#: company/templates/company/manufacturer_part.html:141
#: company/templates/company/manufacturer_part_sidebar.html:9
-#: company/templates/company/sidebar.html:37
+#: company/templates/company/sidebar.html:39
#: order/templates/order/po_sidebar.html:9
-#: order/templates/order/purchase_order_detail.html:102
-#: order/templates/order/return_order_detail.html:74
+#: order/templates/order/purchase_order_detail.html:84
+#: order/templates/order/return_order_detail.html:70
#: order/templates/order/return_order_sidebar.html:7
-#: order/templates/order/sales_order_detail.html:134
-#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:234
-#: part/templates/part/part_sidebar.html:61 stock/templates/stock/item.html:117
+#: order/templates/order/sales_order_detail.html:124
+#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:217
+#: part/templates/part/part_sidebar.html:61 stock/templates/stock/item.html:109
#: stock/templates/stock/stock_sidebar.html:23
msgid "Attachments"
msgstr "Mellékletek"
-#: build/templates/build/detail.html:327
+#: build/templates/build/detail.html:271
msgid "Build Notes"
msgstr "Gyártási megjegyzések"
-#: build/templates/build/detail.html:502
+#: build/templates/build/detail.html:425
msgid "Allocation Complete"
msgstr "Lefoglalás kész"
-#: build/templates/build/detail.html:503
-msgid "All untracked stock items have been allocated"
-msgstr "A szükséges készlet már mind le lett foglalva"
+#: build/templates/build/detail.html:426
+msgid "All lines have been fully allocated"
+msgstr ""
-#: build/templates/build/index.html:18 part/templates/part/detail.html:340
+#: build/templates/build/index.html:18 part/templates/part/detail.html:319
msgid "New Build Order"
msgstr "Új gyártási utasítás"
@@ -1915,14 +1922,10 @@ msgstr "Új gyártási utasítás"
msgid "Build Order Details"
msgstr "Gyártási utasítás részletei"
-#: build/templates/build/sidebar.html:14
+#: build/templates/build/sidebar.html:10
msgid "Incomplete Outputs"
msgstr "Befejezetlen kimenetek"
-#: build/templates/build/sidebar.html:17
-msgid "Completed Outputs"
-msgstr "Befejezett kimenetek"
-
#: common/files.py:63
#, python-brace-format
msgid "Unsupported file format: {fmt}"
@@ -1969,16 +1972,6 @@ msgstr "Frissítve"
msgid "Timestamp of last update"
msgstr "Legutóbbi frissítés időpontja"
-#: common/models.py:104 order/admin.py:17 order/models.py:234
-#: templates/InvenTree/settings/settings_staff_js.html:70
-#: templates/js/translated/purchase_order.js:1670
-#: templates/js/translated/return_order.js:306
-#: templates/js/translated/sales_order.js:794
-#: templates/js/translated/table_filters.js:24
-#: templates/project_code_data.html:6
-msgid "Project Code"
-msgstr "Projektszám"
-
#: common/models.py:105
msgid "Unique project code"
msgstr "Egyedi projektszám"
@@ -2262,9 +2255,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:1162 part/admin.py:55 part/models.py:3560
-#: report/models.py:166 templates/js/translated/table_filters.js:109
-#: templates/js/translated/table_filters.js:680
+#: common/models.py:1162 part/admin.py:55 part/models.py:3594
+#: report/models.py:166 templates/js/translated/table_filters.js:115
+#: templates/js/translated/table_filters.js:702
msgid "Template"
msgstr "Sablon"
@@ -2272,10 +2265,10 @@ msgstr "Sablon"
msgid "Parts are templates by default"
msgstr "Alkatrészek alapból sablon alkatrészek legyenek"
-#: common/models.py:1169 part/admin.py:51 part/admin.py:283 part/models.py:996
-#: templates/js/translated/bom.js:1598
-#: templates/js/translated/table_filters.js:276
-#: templates/js/translated/table_filters.js:634
+#: common/models.py:1169 part/admin.py:51 part/admin.py:283 part/models.py:997
+#: templates/js/translated/bom.js:1618
+#: templates/js/translated/table_filters.js:282
+#: templates/js/translated/table_filters.js:656
msgid "Assembly"
msgstr "Gyártmány"
@@ -2283,8 +2276,8 @@ 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:1176 part/admin.py:52 part/models.py:1002
-#: templates/js/translated/table_filters.js:642
+#: common/models.py:1176 part/admin.py:52 part/models.py:1003
+#: templates/js/translated/table_filters.js:664
msgid "Component"
msgstr "Összetevő"
@@ -2292,7 +2285,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:1183 part/admin.py:53 part/models.py:1013
+#: common/models.py:1183 part/admin.py:53 part/models.py:1014
msgid "Purchaseable"
msgstr "Beszerezhető"
@@ -2300,8 +2293,8 @@ msgstr "Beszerezhető"
msgid "Parts are purchaseable by default"
msgstr "Alkatrészek alapból beszerezhetők legyenek"
-#: common/models.py:1190 part/admin.py:54 part/models.py:1018
-#: templates/js/translated/table_filters.js:668
+#: common/models.py:1190 part/admin.py:54 part/models.py:1019
+#: templates/js/translated/table_filters.js:690
msgid "Salable"
msgstr "Értékesíthető"
@@ -2309,10 +2302,10 @@ msgstr "Értékesíthető"
msgid "Parts are salable by default"
msgstr "Alkatrészek alapból eladhatók legyenek"
-#: common/models.py:1197 part/admin.py:56 part/models.py:1008
-#: templates/js/translated/table_filters.js:117
-#: templates/js/translated/table_filters.js:193
-#: templates/js/translated/table_filters.js:684
+#: common/models.py:1197 part/admin.py:56 part/models.py:1009
+#: templates/js/translated/table_filters.js:123
+#: templates/js/translated/table_filters.js:199
+#: templates/js/translated/table_filters.js:706
msgid "Trackable"
msgstr "Követésre kötelezett"
@@ -2320,10 +2313,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:1204 part/admin.py:57 part/models.py:1028
+#: common/models.py:1204 part/admin.py:57 part/models.py:1029
#: part/templates/part/part_base.html:156
-#: templates/js/translated/table_filters.js:113
-#: templates/js/translated/table_filters.js:688
+#: templates/js/translated/table_filters.js:119
+#: templates/js/translated/table_filters.js:710
msgid "Virtual"
msgstr "Virtuális"
@@ -2355,7 +2348,7 @@ msgstr "Kezdeti készlet adatok"
msgid "Allow creation of initial stock when adding a new part"
msgstr "Kezdeti készlet létrehozása új alkatrész felvételekor"
-#: common/models.py:1232 templates/js/translated/part.js:108
+#: common/models.py:1232 templates/js/translated/part.js:107
msgid "Initial Supplier Data"
msgstr "Kezdeti beszállítói adatok"
@@ -2604,181 +2597,181 @@ msgid "Stock location default icon (empty means no icon)"
msgstr "Hely alapértelmezett ikon (üres ha nincs)"
#: common/models.py:1471
+msgid "Show Installed Stock Items"
+msgstr ""
+
+#: common/models.py:1472
+msgid "Display installed stock items in stock tables"
+msgstr ""
+
+#: common/models.py:1478
msgid "Build Order Reference Pattern"
msgstr "Gyártási utasítás azonosító minta"
-#: common/models.py:1472
+#: common/models.py:1479
msgid "Required pattern for generating Build Order reference field"
msgstr "Szükséges minta a gyártási utasítás azonosító mező előállításához"
-#: common/models.py:1478
+#: common/models.py:1485
msgid "Enable Return Orders"
msgstr "Visszavétel engedélyezése"
-#: common/models.py:1479
+#: common/models.py:1486
msgid "Enable return order functionality in the user interface"
msgstr "Visszavételi utasítások engedélyezése a felületen"
-#: common/models.py:1485
+#: common/models.py:1492
msgid "Return Order Reference Pattern"
msgstr "Visszavételi utasítás azonosító minta"
-#: common/models.py:1486
+#: common/models.py:1493
msgid "Required pattern for generating Return Order reference field"
msgstr "Szükséges minta a visszavételi utasítás azonosító mező előállításához"
-#: common/models.py:1492
+#: common/models.py:1499
msgid "Edit Completed Return Orders"
msgstr "Befejezett visszavételi utasítás szerkesztése"
-#: common/models.py:1493
+#: common/models.py:1500
msgid "Allow editing of return orders after they have been completed"
msgstr "Visszavételi utasítások szerkesztésének engedélyezése befejezés után"
-#: common/models.py:1499
+#: common/models.py:1506
msgid "Sales Order Reference Pattern"
msgstr "Vevői rendelés azonosító minta"
-#: common/models.py:1500
+#: common/models.py:1507
msgid "Required pattern for generating Sales Order reference field"
msgstr "Szükséges minta a vevői rendelés azonosító mező előállításához"
-#: common/models.py:1506
+#: common/models.py:1513
msgid "Sales Order Default Shipment"
msgstr "Vevői rendeléshez alapértelmezett szállítmány"
-#: common/models.py:1507
+#: common/models.py:1514
msgid "Enable creation of default shipment with sales orders"
msgstr "Szállítmány automatikus létrehozása az új vevő rendelésekhez"
-#: common/models.py:1513
+#: common/models.py:1520
msgid "Edit Completed Sales Orders"
msgstr "Befejezett vevői rendelés szerkesztése"
-#: common/models.py:1514
+#: common/models.py:1521
msgid "Allow editing of sales orders after they have been shipped or completed"
msgstr "Vevői rendelések szerkesztésének engedélyezése szállítás vagy befejezés után"
-#: common/models.py:1520
+#: common/models.py:1527
msgid "Purchase Order Reference Pattern"
msgstr "Beszerzési rendelés azonosító minta"
-#: common/models.py:1521
+#: common/models.py:1528
msgid "Required pattern for generating Purchase Order reference field"
msgstr "Szükséges minta a beszerzési rendelés azonosító mező előállításához"
-#: common/models.py:1527
+#: common/models.py:1534
msgid "Edit Completed Purchase Orders"
msgstr "Befejezett beszerzési rendelés szerkesztése"
-#: common/models.py:1528
+#: common/models.py:1535
msgid "Allow editing of purchase orders after they have been shipped or completed"
msgstr "Beszérzési rendelések szerkesztésének engedélyezése kiküldés vagy befejezés után"
-#: common/models.py:1535
+#: common/models.py:1542
msgid "Enable password forgot"
msgstr "Elfelejtett jelszó engedélyezése"
-#: common/models.py:1536
+#: common/models.py:1543
msgid "Enable password forgot function on the login pages"
msgstr "Elfelejtett jelszó funkció engedélyezése a bejentkező oldalon"
-#: common/models.py:1542
+#: common/models.py:1549
msgid "Enable registration"
msgstr "Regisztráció engedélyezése"
-#: common/models.py:1543
+#: common/models.py:1550
msgid "Enable self-registration for users on the login pages"
msgstr "Felhaszálók önkéntes regisztrációjának engedélyezése a bejelentkező oldalon"
-#: common/models.py:1549
+#: common/models.py:1556
msgid "Enable SSO"
msgstr "SSO engedélyezése"
-#: common/models.py:1550
+#: common/models.py:1557
msgid "Enable SSO on the login pages"
msgstr "SSO engedélyezése a bejelentkező oldalon"
-#: common/models.py:1556
+#: common/models.py:1563
msgid "Enable SSO registration"
msgstr "SSO regisztráció engedélyezése"
-#: common/models.py:1557
+#: common/models.py:1564
msgid "Enable self-registration via SSO for users on the login pages"
msgstr "Felhaszálók önkéntes regisztrációjának engedélyezése SSO-n keresztül a bejelentkező oldalon"
-#: common/models.py:1563
+#: common/models.py:1570
msgid "Email required"
msgstr "Email szükséges"
-#: common/models.py:1564
+#: common/models.py:1571
msgid "Require user to supply mail on signup"
msgstr "Kötelező email megadás regisztrációkor"
-#: common/models.py:1570
+#: common/models.py:1577
msgid "Auto-fill SSO users"
msgstr "SSO felhasználók automatikus kitöltése"
-#: common/models.py:1571
+#: common/models.py:1578
msgid "Automatically fill out user-details from SSO account-data"
msgstr "Felhasználó adatainak automatikus kitöltése az SSO fiókadatokból"
-#: common/models.py:1577
+#: common/models.py:1584
msgid "Mail twice"
msgstr "Email kétszer"
-#: common/models.py:1578
+#: common/models.py:1585
msgid "On signup ask users twice for their mail"
msgstr "Regisztráláskor kétszer kérdezze a felhasználó email címét"
-#: common/models.py:1584
+#: common/models.py:1591
msgid "Password twice"
msgstr "Jelszó kétszer"
-#: common/models.py:1585
+#: common/models.py:1592
msgid "On signup ask users twice for their password"
msgstr "Regisztráláskor kétszer kérdezze a felhasználó jelszavát"
-#: common/models.py:1591
+#: common/models.py:1598
msgid "Allowed domains"
msgstr "Engedélyezett domainek"
-#: common/models.py:1592
+#: common/models.py:1599
msgid "Restrict signup to certain domains (comma-separated, starting with @)"
msgstr "Bejelentkezés korlátozása megadott domain-ekre (vesszővel elválasztva, @-al kezdve)"
-#: common/models.py:1598
+#: common/models.py:1605
msgid "Group on signup"
msgstr "Csoport regisztráláskor"
-#: common/models.py:1599
+#: common/models.py:1606
msgid "Group to which new users are assigned on registration"
msgstr "Csoport amihez a frissen regisztrált felhasználók hozzá lesznek rendelve"
-#: common/models.py:1605
+#: common/models.py:1612
msgid "Enforce MFA"
msgstr "Többfaktoros hitelesítés kényszerítése"
-#: common/models.py:1606
+#: common/models.py:1613
msgid "Users must use multifactor security."
msgstr "A felhasználóknak többfaktoros hitelesítést kell használniuk."
-#: common/models.py:1612
+#: common/models.py:1619
msgid "Check plugins on startup"
msgstr "Pluginok ellenőrzése indításkor"
-#: common/models.py:1613
+#: common/models.py:1620
msgid "Check that all plugins are installed on startup - enable in container environments"
msgstr "Ellenőrizze induláskor hogy minden plugin telepítve van - engedélyezd konténer környezetben (docker)"
-#: common/models.py:1620
-msgid "Check plugin signatures"
-msgstr "Plugin aláírások ellenőrzése"
-
-#: common/models.py:1621
-msgid "Check and show signatures for plugins"
-msgstr "Pluginok aláírásainak ellenőrzése és megjelenítése"
-
#: common/models.py:1628
msgid "Enable URL integration"
msgstr "URL integráció engedélyezése"
@@ -2851,7 +2844,7 @@ msgstr "Riport törlési gyakoriság"
msgid "Stocktake reports will be deleted after specified number of days"
msgstr "Régi leltár riportok törlése hány naponta történjen"
-#: common/models.py:1710 common/models.py:2147
+#: common/models.py:1710 common/models.py:2133
msgid "Settings key (must be unique - case insensitive"
msgstr "Beállítások kulcs (egyedinek kell lennie, nem kis- nagybetű érzékeny"
@@ -2892,528 +2885,513 @@ msgid "Show latest parts on the homepage"
msgstr "Legújabb alkatrészek megjelenítése a főoldalon"
#: common/models.py:1779
-msgid "Recent Part Count"
-msgstr "Legfrissebb alkatrész szám"
-
-#: common/models.py:1780
-msgid "Number of recent parts to display on index page"
-msgstr "Főoldalon megjelenítendő legújabb alkatrészek"
-
-#: common/models.py:1786
msgid "Show unvalidated BOMs"
msgstr "Jóváhagyás nélküli alkatrészjegyzékek megjelenítése"
-#: common/models.py:1787
+#: common/models.py:1780
msgid "Show BOMs that await validation on the homepage"
msgstr "Jóváhagyásra váró alkatrészjegyzékek megjelenítése a főoldalon"
-#: common/models.py:1793
+#: common/models.py:1786
msgid "Show recent stock changes"
msgstr "Legfrissebb készlet változások megjelenítése"
-#: common/models.py:1794
+#: common/models.py:1787
msgid "Show recently changed stock items on the homepage"
msgstr "Legutóbb megváltozott alkatrészek megjelenítése a főoldalon"
-#: common/models.py:1800
-msgid "Recent Stock Count"
-msgstr "Legfrissebb készlet mennyiség"
-
-#: common/models.py:1801
-msgid "Number of recent stock items to display on index page"
-msgstr "Főoldalon megjelenítendő legújabb készlet tételek száma"
-
-#: common/models.py:1807
+#: common/models.py:1793
msgid "Show low stock"
msgstr "Alacsony készlet megjelenítése"
-#: common/models.py:1808
+#: common/models.py:1794
msgid "Show low stock items on the homepage"
msgstr "Alacsony készletek megjelenítése a főoldalon"
-#: common/models.py:1814
+#: common/models.py:1800
msgid "Show depleted stock"
msgstr "Kimerült készlet megjelenítése"
-#: common/models.py:1815
+#: common/models.py:1801
msgid "Show depleted stock items on the homepage"
msgstr "Kimerült készletek megjelenítése a főoldalon"
-#: common/models.py:1821
+#: common/models.py:1807
msgid "Show needed stock"
msgstr "Gyártáshoz szükséges készlet megjelenítése"
-#: common/models.py:1822
+#: common/models.py:1808
msgid "Show stock items needed for builds on the homepage"
msgstr "Gyártáshoz szükséges készletek megjelenítése a főoldalon"
-#: common/models.py:1828
+#: common/models.py:1814
msgid "Show expired stock"
msgstr "Lejárt készlet megjelenítése"
-#: common/models.py:1829
+#: common/models.py:1815
msgid "Show expired stock items on the homepage"
msgstr "Lejárt készletek megjelenítése a főoldalon"
-#: common/models.py:1835
+#: common/models.py:1821
msgid "Show stale stock"
msgstr "Állott készlet megjelenítése"
-#: common/models.py:1836
+#: common/models.py:1822
msgid "Show stale stock items on the homepage"
msgstr "Álló készletek megjelenítése a főoldalon"
-#: common/models.py:1842
+#: common/models.py:1828
msgid "Show pending builds"
msgstr "Függő gyártások megjelenítése"
-#: common/models.py:1843
+#: common/models.py:1829
msgid "Show pending builds on the homepage"
msgstr "Folyamatban lévő gyártások megjelenítése a főoldalon"
-#: common/models.py:1849
+#: common/models.py:1835
msgid "Show overdue builds"
msgstr "Késésben lévő gyártások megjelenítése"
-#: common/models.py:1850
+#: common/models.py:1836
msgid "Show overdue builds on the homepage"
msgstr "Késésben lévő gyártások megjelenítése a főoldalon"
-#: common/models.py:1856
+#: common/models.py:1842
msgid "Show outstanding POs"
msgstr "Kintlévő beszerzési rendelések megjelenítése"
-#: common/models.py:1857
+#: common/models.py:1843
msgid "Show outstanding POs on the homepage"
msgstr "Kintlévő beszerzési rendelések megjelenítése a főoldalon"
-#: common/models.py:1863
+#: common/models.py:1849
msgid "Show overdue POs"
msgstr "Késésben lévő megrendelések megjelenítése"
-#: common/models.py:1864
+#: common/models.py:1850
msgid "Show overdue POs on the homepage"
msgstr "Késésben lévő megrendelések megjelenítése a főoldalon"
-#: common/models.py:1870
+#: common/models.py:1856
msgid "Show outstanding SOs"
msgstr "Függő vevői rendelések megjelenítése"
-#: common/models.py:1871
+#: common/models.py:1857
msgid "Show outstanding SOs on the homepage"
msgstr "Függő vevői rendelések megjelenítése a főoldalon"
-#: common/models.py:1877
+#: common/models.py:1863
msgid "Show overdue SOs"
msgstr "Késésben lévő vevői rendelések megjelenítése"
-#: common/models.py:1878
+#: common/models.py:1864
msgid "Show overdue SOs on the homepage"
msgstr "Késésben lévő vevői rendelések megjelenítése a főoldalon"
-#: common/models.py:1884
+#: common/models.py:1870
msgid "Show pending SO shipments"
msgstr ""
-#: common/models.py:1885
+#: common/models.py:1871
msgid "Show pending SO shipments on the homepage"
msgstr ""
-#: common/models.py:1891
+#: common/models.py:1877
msgid "Show News"
msgstr "Hírek megjelenítése"
-#: common/models.py:1892
+#: common/models.py:1878
msgid "Show news on the homepage"
msgstr "Hírek megjelenítése a főoldalon"
-#: common/models.py:1898
+#: common/models.py:1884
msgid "Inline label display"
msgstr "Beágyazott címke megjelenítés"
-#: common/models.py:1899
+#: common/models.py:1885
msgid "Display PDF labels in the browser, instead of downloading as a file"
msgstr "PDF címkék megjelenítése a böngészőben letöltés helyett"
-#: common/models.py:1905
+#: common/models.py:1891
msgid "Default label printer"
msgstr "Alapértelmezett címkenyomtató"
-#: common/models.py:1906
+#: common/models.py:1892
msgid "Configure which label printer should be selected by default"
msgstr "Melyik címkenyomtató legyen az alapértelmezett"
-#: common/models.py:1912
+#: common/models.py:1898
msgid "Inline report display"
msgstr "Beágyazott riport megjelenítés"
-#: common/models.py:1913
+#: common/models.py:1899
msgid "Display PDF reports in the browser, instead of downloading as a file"
msgstr "PDF riport megjelenítése a böngészőben letöltés helyett"
-#: common/models.py:1919
+#: common/models.py:1905
msgid "Search Parts"
msgstr "Alkatrészek keresése"
-#: common/models.py:1920
+#: common/models.py:1906
msgid "Display parts in search preview window"
msgstr "Alkatrészek megjelenítése a keresési előnézetben"
-#: common/models.py:1926
+#: common/models.py:1912
msgid "Search Supplier Parts"
msgstr "Beszállítói alkatrészek keresése"
-#: common/models.py:1927
+#: common/models.py:1913
msgid "Display supplier parts in search preview window"
msgstr "Beszállítói alkatrészek megjelenítése a keresési előnézetben"
-#: common/models.py:1933
+#: common/models.py:1919
msgid "Search Manufacturer Parts"
msgstr "Gyártói alkatrészek keresése"
-#: common/models.py:1934
+#: common/models.py:1920
msgid "Display manufacturer parts in search preview window"
msgstr "Gyártói alkatrészek megjelenítése a keresési előnézetben"
-#: common/models.py:1940
+#: common/models.py:1926
msgid "Hide Inactive Parts"
msgstr "Inaktív alkatrészek elrejtése"
-#: common/models.py:1941
+#: common/models.py:1927
msgid "Excluded inactive parts from search preview window"
msgstr "Inaktív alkatrészek kihagyása a keresési előnézet találataiból"
-#: common/models.py:1947
+#: common/models.py:1933
msgid "Search Categories"
msgstr "Kategóriák keresése"
-#: common/models.py:1948
+#: common/models.py:1934
msgid "Display part categories in search preview window"
msgstr "Alkatrész kategóriák megjelenítése a keresési előnézetben"
-#: common/models.py:1954
+#: common/models.py:1940
msgid "Search Stock"
msgstr "Készlet keresése"
-#: common/models.py:1955
+#: common/models.py:1941
msgid "Display stock items in search preview window"
msgstr "Készlet tételek megjelenítése a keresési előnézetben"
-#: common/models.py:1961
+#: common/models.py:1947
msgid "Hide Unavailable Stock Items"
msgstr "Nem elérhető készlet tételek elrejtése"
-#: common/models.py:1962
+#: common/models.py:1948
msgid "Exclude stock items which are not available from the search preview window"
msgstr "Nem elérhető készlet kihagyása a keresési előnézet találataiból"
-#: common/models.py:1968
+#: common/models.py:1954
msgid "Search Locations"
msgstr "Helyek keresése"
-#: common/models.py:1969
+#: common/models.py:1955
msgid "Display stock locations in search preview window"
msgstr "Készlet helyek megjelenítése a keresési előnézetben"
-#: common/models.py:1975
+#: common/models.py:1961
msgid "Search Companies"
msgstr "Cégek keresése"
-#: common/models.py:1976
+#: common/models.py:1962
msgid "Display companies in search preview window"
msgstr "Cégek megjelenítése a keresési előnézetben"
-#: common/models.py:1982
+#: common/models.py:1968
msgid "Search Build Orders"
msgstr "Gyártási utasítások keresése"
-#: common/models.py:1983
+#: common/models.py:1969
msgid "Display build orders in search preview window"
msgstr "Gyártási utasítások megjelenítése a keresés előnézet ablakban"
-#: common/models.py:1989
+#: common/models.py:1975
msgid "Search Purchase Orders"
msgstr "Beszerzési rendelések keresése"
-#: common/models.py:1990
+#: common/models.py:1976
msgid "Display purchase orders in search preview window"
msgstr "Beszerzési rendelések megjelenítése a keresési előnézetben"
-#: common/models.py:1996
+#: common/models.py:1982
msgid "Exclude Inactive Purchase Orders"
msgstr "Inaktív beszerzési rendelések kihagyása"
-#: common/models.py:1997
+#: common/models.py:1983
msgid "Exclude inactive purchase orders from search preview window"
msgstr "Inaktív beszerzési rendelések kihagyása a keresési előnézet találataiból"
-#: common/models.py:2003
+#: common/models.py:1989
msgid "Search Sales Orders"
msgstr "Vevői rendelések keresése"
-#: common/models.py:2004
+#: common/models.py:1990
msgid "Display sales orders in search preview window"
msgstr "Vevői rendelések megjelenítése a keresési előnézetben"
-#: common/models.py:2010
+#: common/models.py:1996
msgid "Exclude Inactive Sales Orders"
msgstr "Inaktív vevői rendelések kihagyása"
-#: common/models.py:2011
+#: common/models.py:1997
msgid "Exclude inactive sales orders from search preview window"
msgstr "Inaktív vevői rendelések kihagyása a keresési előnézet találataiból"
-#: common/models.py:2017
+#: common/models.py:2003
msgid "Search Return Orders"
msgstr "Visszavételi utasítások keresése"
-#: common/models.py:2018
+#: common/models.py:2004
msgid "Display return orders in search preview window"
msgstr "Visszavételi utasítások megjelenítése a keresés előnézet ablakban"
-#: common/models.py:2024
+#: common/models.py:2010
msgid "Exclude Inactive Return Orders"
msgstr "Inaktív visszavételi utasítások kihagyása"
-#: common/models.py:2025
+#: common/models.py:2011
msgid "Exclude inactive return orders from search preview window"
msgstr "Inaktív visszavételi utasítások kihagyása a keresési előnézet találataiból"
-#: common/models.py:2031
+#: common/models.py:2017
msgid "Search Preview Results"
msgstr "Keresési előnézet eredményei"
-#: common/models.py:2032
+#: common/models.py:2018
msgid "Number of results to show in each section of the search preview window"
msgstr "A keresési előnézetben megjelenítendő eredmények száma szekciónként"
-#: common/models.py:2038
+#: common/models.py:2024
msgid "Regex Search"
msgstr "Regex keresés"
-#: common/models.py:2039
+#: common/models.py:2025
msgid "Enable regular expressions in search queries"
msgstr "Reguláris kifejezések engedélyezése a keresésekben"
-#: common/models.py:2045
+#: common/models.py:2031
msgid "Whole Word Search"
msgstr "Teljes szó keresés"
-#: common/models.py:2046
+#: common/models.py:2032
msgid "Search queries return results for whole word matches"
msgstr "A keresések csak teljes szóra egyező találatokat adjanak"
-#: common/models.py:2052
+#: common/models.py:2038
msgid "Show Quantity in Forms"
msgstr "Mennyiség megjelenítése a formokon"
-#: common/models.py:2053
+#: common/models.py:2039
msgid "Display available part quantity in some forms"
msgstr "Rendelkezésre álló alkatrész mennyiség megjelenítése néhány formon"
-#: common/models.py:2059
+#: common/models.py:2045
msgid "Escape Key Closes Forms"
msgstr "ESC billentyű zárja be a formot"
-#: common/models.py:2060
+#: common/models.py:2046
msgid "Use the escape key to close modal forms"
msgstr "ESC billentyű használata a modális formok bezárásához"
-#: common/models.py:2066
+#: common/models.py:2052
msgid "Fixed Navbar"
msgstr "Rögzített menüsor"
-#: common/models.py:2067
+#: common/models.py:2053
msgid "The navbar position is fixed to the top of the screen"
msgstr "A menü pozíciója mindig rögzítve a lap tetején"
-#: common/models.py:2073
+#: common/models.py:2059
msgid "Date Format"
msgstr "Dátum formátum"
-#: common/models.py:2074
+#: common/models.py:2060
msgid "Preferred format for displaying dates"
msgstr "Preferált dátum formátum a dátumok kijelzésekor"
-#: common/models.py:2088 part/templates/part/detail.html:41
+#: common/models.py:2074 part/templates/part/detail.html:41
msgid "Part Scheduling"
msgstr "Alkatrész ütemezés"
-#: common/models.py:2089
+#: common/models.py:2075
msgid "Display part scheduling information"
msgstr "Alkatrész ütemezési információk megjelenítése"
-#: common/models.py:2095 part/templates/part/detail.html:62
+#: common/models.py:2081 part/templates/part/detail.html:62
msgid "Part Stocktake"
msgstr "Alkatrész leltár"
-#: common/models.py:2096
+#: common/models.py:2082
msgid "Display part stocktake information (if stocktake functionality is enabled)"
msgstr "Alkatrész leltár információk megjelenítése (ha a leltár funkció engedélyezett)"
-#: common/models.py:2102
+#: common/models.py:2088
msgid "Table String Length"
msgstr "Táblázati szöveg hossz"
-#: common/models.py:2103
+#: common/models.py:2089
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:2112
+#: common/models.py:2098
msgid "Default part label template"
msgstr ""
-#: common/models.py:2113
+#: common/models.py:2099
msgid "The part label template to be automatically selected"
msgstr ""
-#: common/models.py:2121
+#: common/models.py:2107
msgid "Default stock item template"
msgstr ""
-#: common/models.py:2122
+#: common/models.py:2108
msgid "The stock item label template to be automatically selected"
msgstr ""
-#: common/models.py:2130
+#: common/models.py:2116
msgid "Default stock location label template"
msgstr ""
-#: common/models.py:2131
+#: common/models.py:2117
msgid "The stock location label template to be automatically selected"
msgstr ""
-#: common/models.py:2177
+#: common/models.py:2163
msgid "Price break quantity"
msgstr "Ársáv mennyiség"
-#: common/models.py:2184 company/serializers.py:434 order/admin.py:43
-#: order/models.py:1132 order/models.py:1939
-#: templates/js/translated/company.js:1433 templates/js/translated/part.js:1856
+#: common/models.py:2170 company/serializers.py:491 order/admin.py:43
+#: order/models.py:1145 order/models.py:1952
+#: templates/js/translated/company.js:1854 templates/js/translated/part.js:1855
#: templates/js/translated/pricing.js:621
-#: templates/js/translated/return_order.js:725
+#: templates/js/translated/return_order.js:737
msgid "Price"
msgstr "Ár"
-#: common/models.py:2185
+#: common/models.py:2171
msgid "Unit price at specified quantity"
msgstr "Egységár egy meghatározott mennyiség esetén"
-#: common/models.py:2345 common/models.py:2523
+#: common/models.py:2331 common/models.py:2509
msgid "Endpoint"
msgstr "Végpont"
-#: common/models.py:2346
+#: common/models.py:2332
msgid "Endpoint at which this webhook is received"
msgstr "Végpont ahol ez a webhook érkezik"
-#: common/models.py:2355
+#: common/models.py:2341
msgid "Name for this webhook"
msgstr "Webhook neve"
-#: common/models.py:2360 part/admin.py:50 part/models.py:1023
-#: plugin/models.py:47 templates/js/translated/table_filters.js:105
-#: templates/js/translated/table_filters.js:189
-#: templates/js/translated/table_filters.js:434
-#: templates/js/translated/table_filters.js:450
-#: templates/js/translated/table_filters.js:629
+#: common/models.py:2346 part/admin.py:50 part/models.py:1024
+#: plugin/models.py:48 templates/js/translated/table_filters.js:111
+#: templates/js/translated/table_filters.js:195
+#: templates/js/translated/table_filters.js:440
+#: templates/js/translated/table_filters.js:456
+#: templates/js/translated/table_filters.js:651
msgid "Active"
msgstr "Aktív"
-#: common/models.py:2361
+#: common/models.py:2347
msgid "Is this webhook active"
msgstr "Aktív-e ez a webhook"
-#: common/models.py:2375
+#: common/models.py:2361
msgid "Token"
msgstr "Token"
-#: common/models.py:2376
+#: common/models.py:2362
msgid "Token for access"
msgstr "Token a hozzáféréshez"
-#: common/models.py:2383
+#: common/models.py:2369
msgid "Secret"
msgstr "Titok"
-#: common/models.py:2384
+#: common/models.py:2370
msgid "Shared secret for HMAC"
msgstr "Megosztott titok a HMAC-hoz"
-#: common/models.py:2490
+#: common/models.py:2476
msgid "Message ID"
msgstr "Üzenet azonosító"
-#: common/models.py:2491
+#: common/models.py:2477
msgid "Unique identifier for this message"
msgstr "Egyedi azonosító ehhez az üzenethez"
-#: common/models.py:2499
+#: common/models.py:2485
msgid "Host"
msgstr "Kiszolgáló"
-#: common/models.py:2500
+#: common/models.py:2486
msgid "Host from which this message was received"
msgstr "Kiszolgáló ahonnan ez az üzenet érkezett"
-#: common/models.py:2507
+#: common/models.py:2493
msgid "Header"
msgstr "Fejléc"
-#: common/models.py:2508
+#: common/models.py:2494
msgid "Header of this message"
msgstr "Üzenet fejléce"
-#: common/models.py:2514
+#: common/models.py:2500
msgid "Body"
msgstr "Törzs"
-#: common/models.py:2515
+#: common/models.py:2501
msgid "Body of this message"
msgstr "Üzenet törzse"
-#: common/models.py:2524
+#: common/models.py:2510
msgid "Endpoint on which this message was received"
msgstr "Végpont amin ez az üzenet érkezett"
-#: common/models.py:2529
+#: common/models.py:2515
msgid "Worked on"
msgstr "Dolgozott rajta"
-#: common/models.py:2530
+#: common/models.py:2516
msgid "Was the work on this message finished?"
msgstr "Befejeződött a munka ezzel az üzenettel?"
-#: common/models.py:2684
+#: common/models.py:2670
msgid "Id"
msgstr "Id"
-#: common/models.py:2690 templates/js/translated/news.js:44
+#: common/models.py:2676 templates/js/translated/company.js:996
+#: templates/js/translated/news.js:44
msgid "Title"
msgstr "Cím"
-#: common/models.py:2700 templates/js/translated/news.js:60
+#: common/models.py:2686 templates/js/translated/news.js:60
msgid "Published"
msgstr "Közzétéve"
-#: common/models.py:2705 templates/InvenTree/settings/plugin_settings.html:32
+#: common/models.py:2691 templates/InvenTree/settings/plugin_settings.html:32
#: templates/js/translated/news.js:56 templates/js/translated/plugin.js:106
msgid "Author"
msgstr "Szerző"
-#: common/models.py:2710 templates/js/translated/news.js:52
+#: common/models.py:2696 templates/js/translated/news.js:52
msgid "Summary"
msgstr "Összefoglaló"
-#: common/models.py:2715
+#: common/models.py:2701
msgid "Read"
msgstr "Elolvasva"
-#: common/models.py:2716
+#: common/models.py:2702
msgid "Was this news item read?"
msgstr "Elolvasva?"
-#: common/models.py:2736 company/models.py:143 part/models.py:914
+#: common/models.py:2722 company/models.py:139 part/models.py:915
#: report/templates/report/inventree_bill_of_materials_report.html:126
#: report/templates/report/inventree_bill_of_materials_report.html:148
#: report/templates/report/inventree_return_order_report_base.html:35
@@ -3423,7 +3401,7 @@ msgstr "Elolvasva?"
msgid "Image"
msgstr "Kép"
-#: common/models.py:2737
+#: common/models.py:2723
msgid "Image file"
msgstr "Képfájl"
@@ -3500,7 +3478,7 @@ msgstr "A cég leírása"
#: company/models.py:113 company/templates/company/company_base.html:101
#: templates/InvenTree/settings/plugin_settings.html:54
-#: templates/js/translated/company.js:514
+#: templates/js/translated/company.js:521
msgid "Website"
msgstr "Weboldal"
@@ -3508,303 +3486,387 @@ msgstr "Weboldal"
msgid "Company website URL"
msgstr "Cég weboldala"
-#: company/models.py:118 company/templates/company/company_base.html:119
-msgid "Address"
-msgstr "Cím"
-
-#: company/models.py:119
-msgid "Company address"
-msgstr "Cég címe"
-
-#: company/models.py:122
+#: company/models.py:118
msgid "Phone number"
msgstr "Telefonszám"
-#: company/models.py:123
+#: company/models.py:119
msgid "Contact phone number"
msgstr "Kapcsolattartó telefonszáma"
-#: company/models.py:126 company/templates/company/company_base.html:133
+#: company/models.py:122 company/templates/company/company_base.html:133
#: templates/InvenTree/settings/user.html:49
-#: templates/js/translated/company.js:659
+#: templates/js/translated/company.js:666
msgid "Email"
msgstr "Email"
-#: company/models.py:126
+#: company/models.py:122
msgid "Contact email address"
msgstr "Kapcsolattartó email címe"
-#: company/models.py:129 company/templates/company/company_base.html:140
-#: order/models.py:266 order/templates/order/order_base.html:207
+#: company/models.py:125 company/templates/company/company_base.html:140
+#: order/models.py:270 order/templates/order/order_base.html:203
#: order/templates/order/return_order_base.html:175
#: order/templates/order/sales_order_base.html:215
msgid "Contact"
msgstr "Névjegy"
-#: company/models.py:130
+#: company/models.py:126
msgid "Point of contact"
msgstr "Kapcsolattartó"
-#: company/models.py:132
+#: company/models.py:128
msgid "Link to external company information"
msgstr "Link a külső céginformációhoz"
-#: company/models.py:146
+#: company/models.py:142
msgid "is customer"
msgstr "vevő-e"
-#: company/models.py:146
+#: company/models.py:142
msgid "Do you sell items to this company?"
msgstr "Értékesítesz alkatrészeket ennek a cégnek?"
-#: company/models.py:148
+#: company/models.py:144
msgid "is supplier"
msgstr "beszállító-e"
-#: company/models.py:148
+#: company/models.py:144
msgid "Do you purchase items from this company?"
msgstr "Vásárolsz alkatrészeket ettől a cégtől?"
-#: company/models.py:150
+#: company/models.py:146
msgid "is manufacturer"
msgstr "gyártó-e"
-#: company/models.py:150
+#: company/models.py:146
msgid "Does this company manufacture parts?"
msgstr "Gyárt ez a cég alkatrészeket?"
-#: company/models.py:157
+#: company/models.py:153
msgid "Default currency used for this company"
msgstr "Cég által használt alapértelmezett pénznem"
-#: company/models.py:223 company/templates/company/company_base.html:8
+#: company/models.py:235 company/models.py:328
+#: company/templates/company/company_base.html:8
#: company/templates/company/company_base.html:12
-#: templates/InvenTree/search.html:178 templates/js/translated/company.js:487
+#: templates/InvenTree/search.html:178 templates/js/translated/company.js:494
msgid "Company"
msgstr "Cég"
-#: company/models.py:278 company/models.py:553 stock/models.py:675
-#: stock/serializers.py:155 stock/templates/stock/item_base.html:143
-#: templates/js/translated/bom.js:621
+#: company/models.py:324
+msgid "Company already has a primary address"
+msgstr ""
+
+#: company/models.py:329
+msgid "Select company"
+msgstr ""
+
+#: company/models.py:332
+msgid "Address title"
+msgstr ""
+
+#: company/models.py:333
+msgid "Title describing the address entry"
+msgstr ""
+
+#: company/models.py:337
+msgid "Primary address"
+msgstr ""
+
+#: company/models.py:338
+msgid "Set as primary address"
+msgstr ""
+
+#: company/models.py:341 templates/js/translated/company.js:941
+#: templates/js/translated/company.js:1002
+msgid "Line 1"
+msgstr ""
+
+#: company/models.py:342
+msgid "Address line 1"
+msgstr ""
+
+#: company/models.py:346 templates/js/translated/company.js:942
+#: templates/js/translated/company.js:1008
+msgid "Line 2"
+msgstr ""
+
+#: company/models.py:347
+msgid "Address line 2"
+msgstr ""
+
+#: company/models.py:351 company/models.py:352
+#: templates/js/translated/company.js:1014
+msgid "Postal code"
+msgstr ""
+
+#: company/models.py:356
+msgid "City/Region"
+msgstr ""
+
+#: company/models.py:357
+msgid "Postal code city/region"
+msgstr ""
+
+#: company/models.py:361
+msgid "State/Province"
+msgstr ""
+
+#: company/models.py:362
+msgid "State or province"
+msgstr ""
+
+#: company/models.py:366 templates/js/translated/company.js:1032
+msgid "Country"
+msgstr ""
+
+#: company/models.py:367
+msgid "Address country"
+msgstr ""
+
+#: company/models.py:371
+msgid "Courier shipping notes"
+msgstr ""
+
+#: company/models.py:372
+msgid "Notes for shipping courier"
+msgstr ""
+
+#: company/models.py:376
+msgid "Internal shipping notes"
+msgstr ""
+
+#: company/models.py:377
+msgid "Shipping notes for internal use"
+msgstr ""
+
+#: company/models.py:382
+msgid "Link to address information (external)"
+msgstr ""
+
+#: company/models.py:427 company/models.py:702 stock/models.py:675
+#: stock/serializers.py:204 stock/templates/stock/item_base.html:143
+#: templates/js/translated/bom.js:622
msgid "Base Part"
msgstr "Kiindulási alkatrész"
-#: company/models.py:282 company/models.py:557
+#: company/models.py:431 company/models.py:706
msgid "Select part"
msgstr "Válassz alkatrészt"
-#: company/models.py:293 company/templates/company/company_base.html:77
+#: company/models.py:442 company/templates/company/company_base.html:77
#: company/templates/company/manufacturer_part.html:90
-#: company/templates/company/supplier_part.html:146 part/serializers.py:354
+#: company/templates/company/supplier_part.html:146 part/serializers.py:404
#: stock/templates/stock/item_base.html:208
-#: templates/js/translated/company.js:498
-#: templates/js/translated/company.js:824
-#: templates/js/translated/company.js:954
-#: templates/js/translated/company.js:1221
-#: templates/js/translated/table_filters.js:709
+#: templates/js/translated/company.js:505
+#: templates/js/translated/company.js:1149
+#: templates/js/translated/company.js:1327
+#: templates/js/translated/company.js:1642
+#: templates/js/translated/table_filters.js:731
msgid "Manufacturer"
msgstr "Gyártó"
-#: company/models.py:294
+#: company/models.py:443
msgid "Select manufacturer"
msgstr "Gyártó kiválasztása"
-#: company/models.py:300 company/templates/company/manufacturer_part.html:101
-#: company/templates/company/supplier_part.html:154 part/serializers.py:360
-#: templates/js/translated/company.js:340
-#: templates/js/translated/company.js:823
-#: templates/js/translated/company.js:970
-#: templates/js/translated/company.js:1240 templates/js/translated/part.js:1773
-#: templates/js/translated/purchase_order.js:1814
-#: templates/js/translated/purchase_order.js:2021
+#: company/models.py:449 company/templates/company/manufacturer_part.html:101
+#: company/templates/company/supplier_part.html:154 part/serializers.py:410
+#: templates/js/translated/company.js:350
+#: templates/js/translated/company.js:1148
+#: templates/js/translated/company.js:1343
+#: templates/js/translated/company.js:1661 templates/js/translated/part.js:1772
+#: templates/js/translated/purchase_order.js:1829
+#: templates/js/translated/purchase_order.js:2031
msgid "MPN"
msgstr "MPN"
-#: company/models.py:301
+#: company/models.py:450
msgid "Manufacturer Part Number"
msgstr "Gyártói cikkszám"
-#: company/models.py:307
+#: company/models.py:456
msgid "URL for external manufacturer part link"
msgstr "URL link a gyártói alkatrészhez"
-#: company/models.py:313
+#: company/models.py:462
msgid "Manufacturer part description"
msgstr "Gyártói alkatrész leírása"
-#: company/models.py:360 company/models.py:384 company/models.py:578
+#: company/models.py:509 company/models.py:533 company/models.py:727
#: company/templates/company/manufacturer_part.html:7
#: company/templates/company/manufacturer_part.html:24
#: stock/templates/stock/item_base.html:218
msgid "Manufacturer Part"
msgstr "Gyártói alkatrész"
-#: company/models.py:391
+#: company/models.py:540
msgid "Parameter name"
msgstr "Paraméter neve"
-#: company/models.py:397
+#: company/models.py:546
#: report/templates/report/inventree_test_report_base.html:104
-#: stock/models.py:2255 templates/js/translated/company.js:872
-#: templates/js/translated/company.js:1077 templates/js/translated/part.js:1465
-#: templates/js/translated/stock.js:1446
+#: stock/models.py:2255 templates/js/translated/company.js:1197
+#: templates/js/translated/company.js:1450 templates/js/translated/part.js:1464
+#: templates/js/translated/stock.js:1445
msgid "Value"
msgstr "Érték"
-#: company/models.py:398
+#: company/models.py:547
msgid "Parameter value"
msgstr "Paraméter értéke"
-#: company/models.py:404 company/templates/company/supplier_part.html:169
-#: part/admin.py:40 part/models.py:987 part/models.py:3407
+#: company/models.py:553 company/templates/company/supplier_part.html:169
+#: part/admin.py:40 part/models.py:988 part/models.py:3441
#: part/templates/part/part_base.html:286
-#: templates/js/translated/company.js:1083 templates/js/translated/part.js:1484
-#: templates/js/translated/part.js:1588 templates/js/translated/part.js:2262
+#: templates/js/translated/company.js:1456 templates/js/translated/part.js:1483
+#: templates/js/translated/part.js:1587 templates/js/translated/part.js:2338
msgid "Units"
msgstr "Mértékegység"
-#: company/models.py:405
+#: company/models.py:554
msgid "Parameter units"
msgstr "Paraméter mértékegység"
-#: company/models.py:498
+#: company/models.py:647
msgid "Pack units must be compatible with the base part units"
msgstr ""
-#: company/models.py:504
+#: company/models.py:653
msgid "Pack units must be greater than zero"
msgstr ""
-#: company/models.py:520
+#: company/models.py:669
msgid "Linked manufacturer part must reference the same base part"
msgstr "Kapcsolódó gyártói alkatrésznek ugyanarra a kiindulási alkatrészre kell hivatkoznia"
-#: company/models.py:564 company/templates/company/company_base.html:82
-#: company/templates/company/supplier_part.html:130 order/models.py:382
-#: order/templates/order/order_base.html:140 part/bom.py:285 part/bom.py:313
-#: part/serializers.py:343 stock/templates/stock/item_base.html:225
+#: company/models.py:713 company/templates/company/company_base.html:82
+#: company/templates/company/supplier_part.html:130 order/models.py:395
+#: order/templates/order/order_base.html:136 part/bom.py:285 part/bom.py:313
+#: part/serializers.py:393 stock/templates/stock/item_base.html:225
#: templates/email/overdue_purchase_order.html:16
-#: templates/js/translated/company.js:339
-#: templates/js/translated/company.js:502
-#: templates/js/translated/company.js:1194 templates/js/translated/part.js:1741
+#: templates/js/translated/company.js:349
+#: templates/js/translated/company.js:509
+#: templates/js/translated/company.js:1615 templates/js/translated/part.js:1740
#: templates/js/translated/pricing.js:498
-#: templates/js/translated/purchase_order.js:1653
-#: templates/js/translated/table_filters.js:713
+#: templates/js/translated/purchase_order.js:1668
+#: templates/js/translated/table_filters.js:735
msgid "Supplier"
msgstr "Beszállító"
-#: company/models.py:565
+#: company/models.py:714
msgid "Select supplier"
msgstr "Beszállító kiválasztása"
-#: company/models.py:570 company/templates/company/supplier_part.html:140
-#: part/bom.py:286 part/bom.py:314 part/serializers.py:349
-#: templates/js/translated/company.js:338 templates/js/translated/part.js:1759
+#: company/models.py:719 company/templates/company/supplier_part.html:140
+#: part/bom.py:286 part/bom.py:314 part/serializers.py:399
+#: templates/js/translated/company.js:348 templates/js/translated/part.js:1758
#: templates/js/translated/pricing.js:510
-#: templates/js/translated/purchase_order.js:1813
-#: templates/js/translated/purchase_order.js:1996
+#: templates/js/translated/purchase_order.js:1828
+#: templates/js/translated/purchase_order.js:2006
msgid "SKU"
msgstr "SKU"
-#: company/models.py:571 part/serializers.py:349
+#: company/models.py:720 part/serializers.py:399
msgid "Supplier stock keeping unit"
msgstr "Beszállítói cikkszám"
-#: company/models.py:579
+#: company/models.py:728
msgid "Select manufacturer part"
msgstr "Gyártói alkatrész kiválasztása"
-#: company/models.py:585
+#: company/models.py:734
msgid "URL for external supplier part link"
msgstr "URL link a beszállítói alkatrészhez"
-#: company/models.py:591
+#: company/models.py:740
msgid "Supplier part description"
msgstr "Beszállítói alkatrész leírása"
-#: company/models.py:596 company/templates/company/supplier_part.html:188
-#: part/admin.py:279 part/models.py:3801 part/templates/part/upload_bom.html:59
+#: company/models.py:745 company/templates/company/supplier_part.html:188
+#: part/admin.py:279 part/models.py:3845 part/templates/part/upload_bom.html:59
#: report/templates/report/inventree_bill_of_materials_report.html:140
#: report/templates/report/inventree_po_report_base.html:32
#: report/templates/report/inventree_return_order_report_base.html:27
#: report/templates/report/inventree_so_report_base.html:32
-#: stock/serializers.py:418
+#: stock/serializers.py:484
msgid "Note"
msgstr "Megjegyzés"
-#: company/models.py:600 part/models.py:1919
+#: company/models.py:749 part/models.py:1921
msgid "base cost"
msgstr "alap költség"
-#: company/models.py:600 part/models.py:1919
+#: company/models.py:749 part/models.py:1921
msgid "Minimum charge (e.g. stocking fee)"
msgstr "Minimális díj (pl. tárolási díj)"
-#: company/models.py:602 company/templates/company/supplier_part.html:161
+#: company/models.py:751 company/templates/company/supplier_part.html:161
#: stock/admin.py:119 stock/models.py:701
#: stock/templates/stock/item_base.html:241
-#: templates/js/translated/company.js:1256
-#: templates/js/translated/stock.js:2160
+#: templates/js/translated/company.js:1677
+#: templates/js/translated/stock.js:2317
msgid "Packaging"
msgstr "Csomagolás"
-#: company/models.py:602
+#: company/models.py:751
msgid "Part packaging"
msgstr "Alkatrész csomagolás"
-#: company/models.py:606 templates/js/translated/company.js:1261
-#: templates/js/translated/part.js:1793 templates/js/translated/part.js:1848
-#: templates/js/translated/purchase_order.js:300
-#: templates/js/translated/purchase_order.js:827
-#: templates/js/translated/purchase_order.js:1073
-#: templates/js/translated/purchase_order.js:2052
-#: templates/js/translated/purchase_order.js:2069
+#: company/models.py:755 templates/js/translated/company.js:1682
+#: templates/js/translated/part.js:1792 templates/js/translated/part.js:1847
+#: templates/js/translated/purchase_order.js:311
+#: templates/js/translated/purchase_order.js:842
+#: templates/js/translated/purchase_order.js:1088
+#: templates/js/translated/purchase_order.js:2062
+#: templates/js/translated/purchase_order.js:2079
msgid "Pack Quantity"
msgstr "Csomagolási mennyiség"
-#: company/models.py:607
+#: company/models.py:756
msgid "Total quantity supplied in a single pack. Leave empty for single items."
msgstr ""
-#: company/models.py:624 part/models.py:1921
+#: company/models.py:773 part/models.py:1923
msgid "multiple"
msgstr "többszörös"
-#: company/models.py:624
+#: company/models.py:773
msgid "Order multiple"
msgstr "Többszörös rendelés"
-#: company/models.py:632 company/templates/company/supplier_part.html:115
+#: company/models.py:781 company/templates/company/supplier_part.html:115
#: templates/email/build_order_required_stock.html:19
#: templates/email/low_stock_notification.html:17
-#: templates/js/translated/bom.js:1127 templates/js/translated/build.js:2136
-#: templates/js/translated/build.js:3045
-#: templates/js/translated/model_renderers.js:205
-#: templates/js/translated/part.js:670 templates/js/translated/part.js:672
-#: templates/js/translated/part.js:677
-#: templates/js/translated/table_filters.js:286
-#: templates/js/translated/table_filters.js:492
+#: templates/js/translated/bom.js:1145 templates/js/translated/build.js:2490
+#: templates/js/translated/index.js:118
+#: templates/js/translated/model_renderers.js:219
+#: templates/js/translated/part.js:669 templates/js/translated/part.js:671
+#: templates/js/translated/part.js:676
+#: templates/js/translated/table_filters.js:292
+#: templates/js/translated/table_filters.js:510
msgid "Available"
msgstr "Elérhető"
-#: company/models.py:633
+#: company/models.py:782
msgid "Quantity available from supplier"
msgstr "Beszállítónál elérhető mennyiség"
-#: company/models.py:637
+#: company/models.py:786
msgid "Availability Updated"
msgstr "Elérhetőség frissítve"
-#: company/models.py:638
+#: company/models.py:787
msgid "Date of last update of availability data"
msgstr "Utolsó elérhetőségi adat frissítés"
-#: company/serializers.py:99
+#: company/serializers.py:156
msgid "Default currency used for this supplier"
msgstr "Beszállító által használt alapértelmezett pénznem"
#: company/templates/company/company_base.html:22
-#: templates/js/translated/purchase_order.js:228
+#: templates/js/translated/purchase_order.js:239
msgid "Create Purchase Order"
msgstr "Beszerzési rendelés létrehozása"
@@ -3817,7 +3879,7 @@ msgid "Edit company information"
msgstr "Cég adatainak szerkesztése"
#: company/templates/company/company_base.html:34
-#: templates/js/translated/company.js:436
+#: templates/js/translated/company.js:443
msgid "Edit Company"
msgstr "Cég szerkesztése"
@@ -3857,17 +3919,17 @@ msgstr "Kép letöltése URL-ről"
msgid "Delete image"
msgstr "Kép törlése"
-#: company/templates/company/company_base.html:87 order/models.py:779
-#: order/models.py:1738 order/templates/order/return_order_base.html:132
+#: company/templates/company/company_base.html:87 order/models.py:792
+#: order/models.py:1751 order/templates/order/return_order_base.html:132
#: order/templates/order/sales_order_base.html:145 stock/models.py:720
-#: stock/models.py:721 stock/serializers.py:825
+#: stock/models.py:721 stock/serializers.py:942
#: stock/templates/stock/item_base.html:401
#: templates/email/overdue_sales_order.html:16
-#: templates/js/translated/company.js:494
-#: templates/js/translated/return_order.js:284
-#: templates/js/translated/sales_order.js:772
-#: templates/js/translated/stock.js:2696
-#: templates/js/translated/table_filters.js:717
+#: templates/js/translated/company.js:501
+#: templates/js/translated/return_order.js:296
+#: templates/js/translated/sales_order.js:784
+#: templates/js/translated/stock.js:2827
+#: templates/js/translated/table_filters.js:739
msgid "Customer"
msgstr "Vevő"
@@ -3875,6 +3937,13 @@ msgstr "Vevő"
msgid "Uses default currency"
msgstr "Alapértelmezett pénznemet használja"
+#: company/templates/company/company_base.html:119 order/models.py:279
+#: order/templates/order/order_base.html:210
+#: order/templates/order/return_order_base.html:182
+#: order/templates/order/sales_order_base.html:222
+msgid "Address"
+msgstr "Cím"
+
#: company/templates/company/company_base.html:126
msgid "Phone"
msgstr "Telefonszám"
@@ -3907,7 +3976,7 @@ msgstr "Kép letöltése"
#: company/templates/company/detail.html:15
#: company/templates/company/manufacturer_part_sidebar.html:7
-#: templates/InvenTree/search.html:120 templates/js/translated/search.js:189
+#: templates/InvenTree/search.html:120 templates/js/translated/search.js:147
msgid "Supplier Parts"
msgstr "Beszállítói alkatrészek"
@@ -3917,129 +3986,121 @@ msgstr "Új beszállítói alkatrész létrehozása"
#: company/templates/company/detail.html:20
#: company/templates/company/manufacturer_part.html:123
-#: part/templates/part/detail.html:381
+#: part/templates/part/detail.html:356
msgid "New Supplier Part"
msgstr "Új beszállítói alkatrész"
-#: company/templates/company/detail.html:37
-#: company/templates/company/detail.html:85
-#: part/templates/part/category.html:183
-msgid "Order parts"
-msgstr "Alkatrész rendelés"
-
-#: company/templates/company/detail.html:42
-#: company/templates/company/detail.html:90
-msgid "Delete parts"
-msgstr "Alkatrész törlés"
-
-#: company/templates/company/detail.html:43
-#: company/templates/company/detail.html:91
-msgid "Delete Parts"
-msgstr "Alkatrész törlés"
-
-#: company/templates/company/detail.html:62 templates/InvenTree/search.html:105
-#: templates/js/translated/search.js:193
+#: company/templates/company/detail.html:41 templates/InvenTree/search.html:105
+#: templates/js/translated/search.js:151
msgid "Manufacturer Parts"
msgstr "Gyártói alkatrészek"
-#: company/templates/company/detail.html:66
+#: company/templates/company/detail.html:45
msgid "Create new manufacturer part"
msgstr "Új gyártói alkatrész létrehozása"
-#: company/templates/company/detail.html:67 part/templates/part/detail.html:411
+#: company/templates/company/detail.html:46 part/templates/part/detail.html:376
msgid "New Manufacturer Part"
msgstr "Új gyártói alkatrész"
-#: company/templates/company/detail.html:108
+#: company/templates/company/detail.html:65
msgid "Supplier Stock"
msgstr "Beszállítói készlet"
-#: company/templates/company/detail.html:118
+#: company/templates/company/detail.html:75
#: company/templates/company/sidebar.html:12
#: company/templates/company/supplier_part_sidebar.html:7
#: 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:108 part/templates/part/part_sidebar.html:35
-#: templates/InvenTree/index.html:275 templates/InvenTree/search.html:199
+#: part/templates/part/detail.html:106 part/templates/part/part_sidebar.html:35
+#: templates/InvenTree/index.html:227 templates/InvenTree/search.html:199
#: templates/InvenTree/settings/sidebar.html:55
-#: templates/js/translated/search.js:247 templates/navbar.html:50
+#: templates/js/translated/search.js:205 templates/navbar.html:50
#: users/models.py:43
msgid "Purchase Orders"
msgstr "Beszerzési rendelések"
-#: company/templates/company/detail.html:122
+#: company/templates/company/detail.html:79
#: order/templates/order/purchase_orders.html:17
msgid "Create new purchase order"
msgstr "Beszerzési rendelés létrehozása"
-#: company/templates/company/detail.html:123
+#: company/templates/company/detail.html:80
#: order/templates/order/purchase_orders.html:18
msgid "New Purchase Order"
msgstr "Új beszerzési rendelés"
-#: company/templates/company/detail.html:146
+#: company/templates/company/detail.html:101
#: company/templates/company/sidebar.html:21
#: 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:131 part/templates/part/part_sidebar.html:39
-#: templates/InvenTree/index.html:307 templates/InvenTree/search.html:219
+#: part/templates/part/detail.html:127 part/templates/part/part_sidebar.html:39
+#: templates/InvenTree/index.html:259 templates/InvenTree/search.html:219
#: templates/InvenTree/settings/sidebar.html:57
-#: templates/js/translated/search.js:261 templates/navbar.html:62
+#: templates/js/translated/search.js:219 templates/navbar.html:62
#: users/models.py:44
msgid "Sales Orders"
msgstr "Vevői rendelések"
-#: company/templates/company/detail.html:150
+#: company/templates/company/detail.html:105
#: order/templates/order/sales_orders.html:20
msgid "Create new sales order"
msgstr "Vevői rendelés létrehozása"
-#: company/templates/company/detail.html:151
+#: company/templates/company/detail.html:106
#: order/templates/order/sales_orders.html:21
msgid "New Sales Order"
msgstr "Új vevői rendelés"
-#: company/templates/company/detail.html:173
-#: templates/js/translated/build.js:1976
+#: company/templates/company/detail.html:126
msgid "Assigned Stock"
msgstr "Hozzárendelt készlet"
-#: company/templates/company/detail.html:191
+#: company/templates/company/detail.html:142
#: company/templates/company/sidebar.html:29
#: order/templates/order/return_order_base.html:13
#: order/templates/order/return_orders.html:8
#: order/templates/order/return_orders.html:15
#: templates/InvenTree/settings/sidebar.html:59
-#: templates/js/translated/search.js:274 templates/navbar.html:65
+#: templates/js/translated/search.js:232 templates/navbar.html:65
#: users/models.py:45
msgid "Return Orders"
msgstr "Visszavételi utasítások"
-#: company/templates/company/detail.html:195
+#: company/templates/company/detail.html:146
#: order/templates/order/return_orders.html:20
msgid "Create new return order"
msgstr "Visszavételi utasítás létrehozása"
-#: company/templates/company/detail.html:196
+#: company/templates/company/detail.html:147
#: order/templates/order/return_orders.html:21
msgid "New Return Order"
msgstr "Új visszavételi utasítás"
-#: company/templates/company/detail.html:221
+#: company/templates/company/detail.html:168
msgid "Company Notes"
msgstr "Cég megjegyzések"
-#: company/templates/company/detail.html:236
+#: company/templates/company/detail.html:183
msgid "Company Contacts"
msgstr "Cég névjegyek"
-#: company/templates/company/detail.html:240
-#: company/templates/company/detail.html:241
+#: company/templates/company/detail.html:187
+#: company/templates/company/detail.html:188
msgid "Add Contact"
msgstr "Névjegy hozzáadása"
+#: company/templates/company/detail.html:206
+msgid "Company addresses"
+msgstr ""
+
+#: company/templates/company/detail.html:210
+#: company/templates/company/detail.html:211
+msgid "Add Address"
+msgstr ""
+
#: company/templates/company/index.html:8
msgid "Supplier List"
msgstr "Beszállítók listája"
@@ -4051,17 +4112,17 @@ msgstr "Gyártók"
#: company/templates/company/manufacturer_part.html:35
#: company/templates/company/supplier_part.html:228
-#: part/templates/part/detail.html:111 part/templates/part/part_base.html:85
+#: part/templates/part/detail.html:109 part/templates/part/part_base.html:85
msgid "Order part"
msgstr "Alkatrész rendelés"
#: company/templates/company/manufacturer_part.html:39
-#: templates/js/translated/company.js:1001
+#: templates/js/translated/company.js:1374
msgid "Edit manufacturer part"
msgstr "Gyártói alkatrész szerkesztése"
#: company/templates/company/manufacturer_part.html:43
-#: templates/js/translated/company.js:1002
+#: templates/js/translated/company.js:1375
msgid "Delete manufacturer part"
msgstr "Gyártói alkatrész törlése"
@@ -4081,40 +4142,22 @@ msgstr "Nincs elérhető gyártói információ"
msgid "Suppliers"
msgstr "Beszállítók"
-#: company/templates/company/manufacturer_part.html:136
-#: part/templates/part/detail.html:392
-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:393 part/templates/part/detail.html:423
-#: templates/js/translated/forms.js:506 templates/js/translated/helpers.js:105
-#: templates/js/translated/part.js:370 templates/js/translated/pricing.js:629
-#: templates/js/translated/stock.js:216 users/models.py:247
-msgid "Delete"
-msgstr "Törlés"
-
-#: company/templates/company/manufacturer_part.html:166
+#: company/templates/company/manufacturer_part.html:156
#: company/templates/company/manufacturer_part_sidebar.html:5
#: part/templates/part/category_sidebar.html:20
-#: part/templates/part/detail.html:208 part/templates/part/part_sidebar.html:8
+#: part/templates/part/detail.html:195 part/templates/part/part_sidebar.html:8
msgid "Parameters"
msgstr "Paraméterek"
-#: company/templates/company/manufacturer_part.html:170
-#: part/templates/part/detail.html:213
+#: company/templates/company/manufacturer_part.html:160
+#: part/templates/part/detail.html:200
#: templates/InvenTree/settings/category.html:12
#: templates/InvenTree/settings/part_parameters.html:12
msgid "New Parameter"
msgstr "Új paraméter"
-#: company/templates/company/manufacturer_part.html:183
-msgid "Delete parameters"
-msgstr "Paraméterek törlése"
-
-#: company/templates/company/manufacturer_part.html:226
-#: templates/js/translated/part.js:1396
+#: company/templates/company/manufacturer_part.html:206
+#: templates/js/translated/part.js:1395
msgid "Add Parameter"
msgstr "Paraméter hozzáadása"
@@ -4138,23 +4181,28 @@ msgstr "Hozzárendelt készlet tételek"
msgid "Contacts"
msgstr "Névjegyek"
+#: company/templates/company/sidebar.html:35
+msgid "Addresses"
+msgstr ""
+
#: company/templates/company/supplier_part.html:7
#: company/templates/company/supplier_part.html:24 stock/models.py:684
#: stock/templates/stock/item_base.html:234
-#: templates/js/translated/company.js:1210
-#: templates/js/translated/purchase_order.js:747
-#: templates/js/translated/stock.js:2016
+#: templates/js/translated/company.js:1631
+#: templates/js/translated/purchase_order.js:758
+#: templates/js/translated/stock.js:2173
msgid "Supplier Part"
msgstr "Beszállítói alkatrész"
#: company/templates/company/supplier_part.html:51
+#: templates/js/translated/company.js:1557
msgid "Supplier part actions"
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:229
-#: part/templates/part/detail.html:112
+#: part/templates/part/detail.html:110
msgid "Order Part"
msgstr "Alkatrész rendelése"
@@ -4165,13 +4213,13 @@ msgstr "Elérhetőség frissítése"
#: company/templates/company/supplier_part.html:64
#: company/templates/company/supplier_part.html:65
-#: templates/js/translated/company.js:283
+#: templates/js/translated/company.js:293
msgid "Edit Supplier Part"
msgstr "Beszállítói alkatrész szerkesztése"
#: company/templates/company/supplier_part.html:69
#: company/templates/company/supplier_part.html:70
-#: templates/js/translated/company.js:258
+#: templates/js/translated/company.js:268
msgid "Duplicate Supplier Part"
msgstr "Beszállítói alkatrész másolása"
@@ -4198,7 +4246,7 @@ msgstr "Új készlet tétel létrehozása"
#: company/templates/company/supplier_part.html:211
#: part/templates/part/detail.html:25 stock/templates/stock/location.html:198
-#: templates/js/translated/stock.js:504
+#: templates/js/translated/stock.js:503
msgid "New Stock Item"
msgstr "Új készlet tétel"
@@ -4206,37 +4254,37 @@ msgstr "Új készlet tétel"
msgid "Supplier Part Orders"
msgstr "Beszállítói alkatrész rendelések"
-#: company/templates/company/supplier_part.html:249
+#: company/templates/company/supplier_part.html:247
msgid "Pricing Information"
msgstr "Árinformációk"
-#: company/templates/company/supplier_part.html:254
-#: templates/js/translated/company.js:387
+#: company/templates/company/supplier_part.html:252
+#: templates/js/translated/company.js:397
#: templates/js/translated/pricing.js:684
msgid "Add Price Break"
msgstr "Ársáv hozzáadása"
-#: company/templates/company/supplier_part.html:281
+#: company/templates/company/supplier_part.html:277
msgid "Supplier Part QR Code"
msgstr "Beszállítói alkatrész QR kód"
-#: company/templates/company/supplier_part.html:292
+#: company/templates/company/supplier_part.html:288
msgid "Link Barcode to Supplier Part"
msgstr "Vonalkód hozzárendelése a beszállítói alkatrészhez"
-#: company/templates/company/supplier_part.html:365
+#: company/templates/company/supplier_part.html:361
msgid "Update Part Availability"
msgstr "Alkatrész elérhetőség frissítése"
#: company/templates/company/supplier_part_sidebar.html:5 part/tasks.py:293
-#: part/templates/part/category.html:199
+#: part/templates/part/category.html:182
#: part/templates/part/category_sidebar.html:17 stock/admin.py:47
-#: stock/templates/stock/location.html:168
+#: stock/serializers.py:662 stock/templates/stock/location.html:168
#: stock/templates/stock/location.html:182
#: stock/templates/stock/location.html:194
#: stock/templates/stock/location_sidebar.html:7
-#: templates/InvenTree/search.html:155 templates/js/translated/part.js:1034
-#: templates/js/translated/search.js:214 templates/js/translated/stock.js:2514
+#: templates/InvenTree/search.html:155 templates/js/translated/part.js:1033
+#: templates/js/translated/search.js:172 templates/js/translated/stock.js:2645
#: users/models.py:41
msgid "Stock Items"
msgstr "Készlet tételek"
@@ -4262,7 +4310,7 @@ msgstr "Vevők"
msgid "New Customer"
msgstr "Új vevő"
-#: company/views.py:52 templates/js/translated/search.js:234
+#: company/views.py:52 templates/js/translated/search.js:192
msgid "Companies"
msgstr "Cégek"
@@ -4270,72 +4318,76 @@ msgstr "Cégek"
msgid "New Company"
msgstr "Új cég"
-#: label/models.py:104
+#: label/models.py:112
msgid "Label name"
msgstr "Címke neve"
-#: label/models.py:111
+#: label/models.py:119
msgid "Label description"
msgstr "Címke leírása"
-#: label/models.py:118
+#: label/models.py:126
msgid "Label"
msgstr "Címke"
-#: label/models.py:119
+#: label/models.py:127
msgid "Label template file"
msgstr "Címke sablon fájl"
-#: label/models.py:125 report/models.py:273
+#: label/models.py:133 report/models.py:273
msgid "Enabled"
msgstr "Engedélyezve"
-#: label/models.py:126
+#: label/models.py:134
msgid "Label template is enabled"
msgstr "Címke sablon engedélyezve"
-#: label/models.py:131
+#: label/models.py:139
msgid "Width [mm]"
msgstr "Szélesség [mm]"
-#: label/models.py:132
+#: label/models.py:140
msgid "Label width, specified in mm"
msgstr "Címke szélessége, mm-ben"
-#: label/models.py:138
+#: label/models.py:146
msgid "Height [mm]"
msgstr "Magasság [mm]"
-#: label/models.py:139
+#: label/models.py:147
msgid "Label height, specified in mm"
msgstr "Címke magassága, mm-ben"
-#: label/models.py:145 report/models.py:266
+#: label/models.py:153 report/models.py:266
msgid "Filename Pattern"
msgstr "Fájlnév minta"
-#: label/models.py:146
+#: label/models.py:154
msgid "Pattern for generating label filenames"
msgstr "Minta a címke fájlnevek előállításához"
-#: label/models.py:242
+#: label/models.py:250
msgid "Query filters (comma-separated list of key=value pairs),"
msgstr "Lekérdezés szűrők (vesszővel elválasztott kulcs=érték párok),"
-#: label/models.py:243 label/models.py:284 label/models.py:312
-#: report/models.py:294 report/models.py:452 report/models.py:490
-#: report/models.py:528
+#: label/models.py:251 label/models.py:292 label/models.py:320
+#: label/models.py:356 report/models.py:294 report/models.py:454
+#: report/models.py:492 report/models.py:530
msgid "Filters"
msgstr "Szűrők"
-#: label/models.py:283
+#: label/models.py:291
msgid "Query filters (comma-separated list of key=value pairs"
msgstr "Lekérdezés szűrők (vesszővel elválasztott kulcs=érték párok"
-#: label/models.py:311
+#: label/models.py:319
msgid "Part query filters (comma-separated value of key=value pairs)"
msgstr "Alkatrész lekérdezés szűrők (vesszővel elválasztott kulcs=érték párok)"
+#: label/models.py:355
+msgid "Query filters (comma-separated list of key=value pairs)"
+msgstr ""
+
#: label/templates/label/part/part_label.html:31
#: label/templates/label/stockitem/qr.html:21
#: label/templates/label/stocklocation/qr.html:21
@@ -4353,8 +4405,8 @@ msgstr "QR kód"
#: report/templates/report/inventree_po_report_base.html:31
#: report/templates/report/inventree_so_report_base.html:31
#: templates/js/translated/order.js:327
-#: templates/js/translated/purchase_order.js:2093
-#: templates/js/translated/sales_order.js:1827
+#: templates/js/translated/purchase_order.js:2103
+#: templates/js/translated/sales_order.js:1839
msgid "Total Price"
msgstr "Teljes ár"
@@ -4362,30 +4414,30 @@ msgstr "Teljes ár"
msgid "No matching purchase order found"
msgstr "Nincs egyező beszerzési rendelés"
-#: order/api.py:1452 order/models.py:1178 order/models.py:1262
+#: order/api.py:1452 order/models.py:1191 order/models.py:1275
#: order/templates/order/order_base.html:9
#: order/templates/order/order_base.html:18
#: report/templates/report/inventree_po_report_base.html:14
#: stock/templates/stock/item_base.html:177
#: templates/email/overdue_purchase_order.html:15
-#: templates/js/translated/part.js:1718 templates/js/translated/pricing.js:790
-#: templates/js/translated/purchase_order.js:154
-#: templates/js/translated/purchase_order.js:748
-#: templates/js/translated/purchase_order.js:1637
-#: templates/js/translated/stock.js:1996 templates/js/translated/stock.js:2644
+#: templates/js/translated/part.js:1717 templates/js/translated/pricing.js:790
+#: templates/js/translated/purchase_order.js:165
+#: templates/js/translated/purchase_order.js:759
+#: templates/js/translated/purchase_order.js:1652
+#: templates/js/translated/stock.js:2153 templates/js/translated/stock.js:2775
msgid "Purchase Order"
msgstr "Beszerzési rendelés"
-#: order/api.py:1456 order/models.py:1909 order/models.py:1955
+#: order/api.py:1456 order/models.py:1922 order/models.py:1968
#: order/templates/order/return_order_base.html:9
#: order/templates/order/return_order_base.html:28
#: report/templates/report/inventree_return_order_report_base.html:13
-#: templates/js/translated/return_order.js:269
-#: templates/js/translated/stock.js:2678
+#: templates/js/translated/return_order.js:281
+#: templates/js/translated/stock.js:2809
msgid "Return Order"
msgstr "Visszavételi utasítás"
-#: order/api.py:1458 templates/js/translated/sales_order.js:1030
+#: order/api.py:1458 templates/js/translated/sales_order.js:1042
msgid "Unknown"
msgstr "Ismeretlen"
@@ -4393,11 +4445,11 @@ msgstr "Ismeretlen"
msgid "Total price for this order"
msgstr "A rendelés teljes ára"
-#: order/models.py:79 order/serializers.py:49
+#: order/models.py:79 order/serializers.py:50
msgid "Order Currency"
msgstr "Megrendelés pénzneme"
-#: order/models.py:81 order/serializers.py:50
+#: order/models.py:81 order/serializers.py:51
msgid "Currency for this order (leave blank to use company default)"
msgstr "Megrendeléshez használt pénznem (hagyd üresen a cég alapértelmezett pénznemének használatához)"
@@ -4409,492 +4461,496 @@ msgstr "A kapcsolattartó nem egyezik a kiválasztott céggel"
msgid "Order description (optional)"
msgstr "Rendelés leírása (opcionális)"
-#: order/models.py:234
+#: order/models.py:237
msgid "Select project code for this order"
msgstr "Válassz projektszámot ehhez a rendeléshez"
-#: order/models.py:236 order/models.py:1094 order/models.py:1454
+#: order/models.py:240 order/models.py:1107 order/models.py:1467
msgid "Link to external page"
msgstr "Link külső weboldalra"
-#: order/models.py:241
+#: order/models.py:245
msgid "Expected date for order delivery. Order will be overdue after this date."
msgstr "Várt teljesítési dátuma a megrendelésnek. Ezután már késésben lévőnek számít majd."
-#: order/models.py:250
+#: order/models.py:254
msgid "Created By"
msgstr "Készítette"
-#: order/models.py:257
+#: order/models.py:261
msgid "User or group responsible for this order"
msgstr "Felhasználó vagy csoport aki felelőse ennek a rendelésnek"
-#: order/models.py:267
+#: order/models.py:271
msgid "Point of contact for this order"
msgstr "Kapcsolattartó ehhez a rendeléshez"
-#: order/models.py:360 order/models.py:766
+#: order/models.py:280
+msgid "Company address for this order"
+msgstr ""
+
+#: order/models.py:373 order/models.py:779
msgid "Order reference"
msgstr "Rendelés azonosító"
-#: order/models.py:368 order/models.py:791
+#: order/models.py:381 order/models.py:804
msgid "Purchase order status"
msgstr "Beszerzési rendelés állapota"
-#: order/models.py:383
+#: order/models.py:396
msgid "Company from which the items are being ordered"
msgstr "Cég akitől a tételek beszerzésre kerülnek"
-#: order/models.py:391 order/templates/order/order_base.html:152
-#: templates/js/translated/purchase_order.js:1662
+#: order/models.py:404 order/templates/order/order_base.html:148
+#: templates/js/translated/purchase_order.js:1677
msgid "Supplier Reference"
msgstr "Beszállítói azonosító"
-#: order/models.py:391
+#: order/models.py:404
msgid "Supplier order reference code"
msgstr "Beszállítói rendelés azonosító kód"
-#: order/models.py:398
+#: order/models.py:411
msgid "received by"
msgstr "érkeztette"
-#: order/models.py:403 order/models.py:1761
+#: order/models.py:416 order/models.py:1774
msgid "Issue Date"
msgstr "Kiállítás dátuma"
-#: order/models.py:404 order/models.py:1762
+#: order/models.py:417 order/models.py:1775
msgid "Date order was issued"
msgstr "Kiállítás dátuma"
-#: order/models.py:410 order/models.py:1768
+#: order/models.py:423 order/models.py:1781
msgid "Date order was completed"
msgstr "Rendelés teljesítési dátuma"
-#: order/models.py:445
+#: order/models.py:458
msgid "Part supplier must match PO supplier"
msgstr "Az alkatrész beszállítója meg kell egyezzen a beszerzési rendelés beszállítójával"
-#: order/models.py:606
+#: order/models.py:619
msgid "Quantity must be a positive number"
msgstr "Mennyiség pozitív kell legyen"
-#: order/models.py:780
+#: order/models.py:793
msgid "Company to which the items are being sold"
msgstr "Cég akinek a tételek értékesítésre kerülnek"
-#: order/models.py:799 order/models.py:1755
+#: order/models.py:812 order/models.py:1768
msgid "Customer Reference "
msgstr "Vevői azonosító "
-#: order/models.py:799 order/models.py:1756
+#: order/models.py:812 order/models.py:1769
msgid "Customer order reference code"
msgstr "Megrendelés azonosító kódja a vevőnél"
-#: order/models.py:801 order/models.py:1408
-#: templates/js/translated/sales_order.js:831
-#: templates/js/translated/sales_order.js:1012
+#: order/models.py:814 order/models.py:1421
+#: templates/js/translated/sales_order.js:843
+#: templates/js/translated/sales_order.js:1024
msgid "Shipment Date"
msgstr "Kiszállítás dátuma"
-#: order/models.py:808
+#: order/models.py:821
msgid "shipped by"
msgstr "szállította"
-#: order/models.py:857
+#: order/models.py:870
msgid "Order cannot be completed as no parts have been assigned"
msgstr "A rendelés nem teljesíthető mivel nincs hozzárendelve alkatrész"
-#: order/models.py:861
+#: order/models.py:874
msgid "Only an open order can be marked as complete"
msgstr "Csak nyitott rendelés jelölhető késznek"
-#: order/models.py:864 templates/js/translated/sales_order.js:491
+#: order/models.py:877 templates/js/translated/sales_order.js:503
msgid "Order cannot be completed as there are incomplete shipments"
msgstr "A rendelés nem jelölhető késznek mivel függő szállítmányok vannak"
-#: order/models.py:867
+#: order/models.py:880
msgid "Order cannot be completed as there are incomplete line items"
msgstr "A rendelés nem jelölhető késznek mivel nem teljesített sortételek vannak"
-#: order/models.py:1074
+#: order/models.py:1087
msgid "Item quantity"
msgstr "Tétel mennyiség"
-#: order/models.py:1087
+#: order/models.py:1100
msgid "Line item reference"
msgstr "Sortétel azonosító"
-#: order/models.py:1089
+#: order/models.py:1102
msgid "Line item notes"
msgstr "Sortétel megjegyzései"
-#: order/models.py:1100
+#: order/models.py:1113
msgid "Target date for this line item (leave blank to use the target date from the order)"
msgstr "Cél dátuma ennek a sortételnek (hagyd üresen a rendelés céldátum használatához)"
-#: order/models.py:1118
+#: order/models.py:1131
msgid "Line item description (optional)"
msgstr ""
-#: order/models.py:1123
+#: order/models.py:1136
msgid "Context"
msgstr "Kontextus"
-#: order/models.py:1124
+#: order/models.py:1137
msgid "Additional context for this line"
msgstr "További kontextus ehhez a sorhoz"
-#: order/models.py:1133
+#: order/models.py:1146
msgid "Unit price"
msgstr "Egységár"
-#: order/models.py:1163
+#: order/models.py:1176
msgid "Supplier part must match supplier"
msgstr "Beszállítói alkatrésznek egyeznie kell a beszállítóval"
-#: order/models.py:1171
+#: order/models.py:1184
msgid "deleted"
msgstr "törölve"
-#: order/models.py:1177 order/models.py:1262 order/models.py:1303
-#: order/models.py:1402 order/models.py:1551 order/models.py:1908
-#: order/models.py:1955 templates/js/translated/sales_order.js:1474
+#: order/models.py:1190 order/models.py:1275 order/models.py:1316
+#: order/models.py:1415 order/models.py:1564 order/models.py:1921
+#: order/models.py:1968 templates/js/translated/sales_order.js:1486
msgid "Order"
msgstr "Rendelés"
-#: order/models.py:1196
+#: order/models.py:1209
msgid "Supplier part"
msgstr "Beszállítói alkatrész"
-#: order/models.py:1203 order/templates/order/order_base.html:200
-#: templates/js/translated/part.js:1841 templates/js/translated/part.js:1872
-#: templates/js/translated/purchase_order.js:1276
-#: templates/js/translated/purchase_order.js:2137
-#: templates/js/translated/return_order.js:748
-#: templates/js/translated/table_filters.js:90
-#: templates/js/translated/table_filters.js:515
+#: order/models.py:1216 order/templates/order/order_base.html:196
+#: templates/js/translated/part.js:1840 templates/js/translated/part.js:1871
+#: templates/js/translated/purchase_order.js:1291
+#: templates/js/translated/purchase_order.js:2147
+#: templates/js/translated/return_order.js:760
+#: templates/js/translated/table_filters.js:96
+#: templates/js/translated/table_filters.js:537
msgid "Received"
msgstr "Beérkezett"
-#: order/models.py:1204
+#: order/models.py:1217
msgid "Number of items received"
msgstr "Érkezett tételek száma"
-#: order/models.py:1211 stock/models.py:823 stock/serializers.py:252
+#: order/models.py:1224 stock/models.py:823 stock/serializers.py:314
#: stock/templates/stock/item_base.html:184
-#: templates/js/translated/stock.js:2047
+#: templates/js/translated/stock.js:2204
msgid "Purchase Price"
msgstr "Beszerzési ár"
-#: order/models.py:1212
+#: order/models.py:1225
msgid "Unit purchase price"
msgstr "Beszerzési egységár"
-#: order/models.py:1225
+#: order/models.py:1238
msgid "Where does the Purchaser want this item to be stored?"
msgstr "Mit szeretne a vevő hol tároljuk ezt az alkatrészt?"
-#: order/models.py:1291
+#: order/models.py:1304
msgid "Virtual part cannot be assigned to a sales order"
msgstr "Virtuális alkatrészt nem lehet vevői rendeléshez adni"
-#: order/models.py:1296
+#: order/models.py:1309
msgid "Only salable parts can be assigned to a sales order"
msgstr "Csak értékesíthető alkatrészeket lehet vevői rendeléshez adni"
-#: order/models.py:1322 part/templates/part/part_pricing.html:107
+#: order/models.py:1335 part/templates/part/part_pricing.html:107
#: part/templates/part/prices.html:128 templates/js/translated/pricing.js:943
msgid "Sale Price"
msgstr "Eladási ár"
-#: order/models.py:1323
+#: order/models.py:1336
msgid "Unit sale price"
msgstr "Eladási egységár"
-#: order/models.py:1333
+#: order/models.py:1346
msgid "Shipped quantity"
msgstr "Szállított mennyiség"
-#: order/models.py:1409
+#: order/models.py:1422
msgid "Date of shipment"
msgstr "Szállítás dátuma"
-#: order/models.py:1414 templates/js/translated/sales_order.js:1024
+#: order/models.py:1427 templates/js/translated/sales_order.js:1036
msgid "Delivery Date"
msgstr "Szállítás dátuma"
-#: order/models.py:1415
+#: order/models.py:1428
msgid "Date of delivery of shipment"
msgstr ""
-#: order/models.py:1422
+#: order/models.py:1435
msgid "Checked By"
msgstr "Ellenőrizte"
-#: order/models.py:1423
+#: order/models.py:1436
msgid "User who checked this shipment"
msgstr "Felhasználó aki ellenőrizte ezt a szállítmányt"
-#: order/models.py:1430 order/models.py:1627 order/serializers.py:1248
-#: order/serializers.py:1376 templates/js/translated/model_renderers.js:415
+#: order/models.py:1443 order/models.py:1640 order/serializers.py:1254
+#: order/serializers.py:1382 templates/js/translated/model_renderers.js:429
msgid "Shipment"
msgstr "Szállítmány"
-#: order/models.py:1431
+#: order/models.py:1444
msgid "Shipment number"
msgstr "Szállítmány száma"
-#: order/models.py:1439
+#: order/models.py:1452
msgid "Tracking Number"
msgstr "Nyomkövetési szám"
-#: order/models.py:1440
+#: order/models.py:1453
msgid "Shipment tracking information"
msgstr "Szállítmány nyomkövetési információ"
-#: order/models.py:1447
+#: order/models.py:1460
msgid "Invoice Number"
msgstr "Számlaszám"
-#: order/models.py:1448
+#: order/models.py:1461
msgid "Reference number for associated invoice"
msgstr "Hozzátartozó számla referencia száma"
-#: order/models.py:1470
+#: order/models.py:1483
msgid "Shipment has already been sent"
msgstr "Szállítmány már elküldve"
-#: order/models.py:1473
+#: order/models.py:1486
msgid "Shipment has no allocated stock items"
msgstr "Szállítmány nem tartalmaz foglalt készlet tételeket"
-#: order/models.py:1586 order/models.py:1588
+#: order/models.py:1599 order/models.py:1601
msgid "Stock item has not been assigned"
msgstr "Készlet tétel nincs hozzárendelve"
-#: order/models.py:1592
+#: order/models.py:1605
msgid "Cannot allocate stock item to a line with a different part"
msgstr "Nem foglalható készlet egy másik fajta alkatrész sortételéhez"
-#: order/models.py:1594
+#: order/models.py:1607
msgid "Cannot allocate stock to a line without a part"
msgstr "Nem foglalható készlet egy olyan sorhoz amiben nincs alkatrész"
-#: order/models.py:1597
+#: order/models.py:1610
msgid "Allocation quantity cannot exceed stock quantity"
msgstr "A lefoglalandó mennyiség nem haladhatja meg a készlet mennyiségét"
-#: order/models.py:1607 order/serializers.py:1110
+#: order/models.py:1620 order/serializers.py:1116
msgid "Quantity must be 1 for serialized stock item"
msgstr "Egyedi követésre kötelezett tételeknél a menyiség 1 kell legyen"
-#: order/models.py:1610
+#: order/models.py:1623
msgid "Sales order does not match shipment"
msgstr "Vevői rendelés nem egyezik a szállítmánnyal"
-#: order/models.py:1611
+#: order/models.py:1624
msgid "Shipment does not match sales order"
msgstr "Szállítmány nem egyezik a vevői rendeléssel"
-#: order/models.py:1619
+#: order/models.py:1632
msgid "Line"
msgstr "Sor"
-#: order/models.py:1628
+#: order/models.py:1641
msgid "Sales order shipment reference"
msgstr "Vevői rendelés szállítmány azonosító"
-#: order/models.py:1641 order/models.py:1916
-#: templates/js/translated/return_order.js:706
+#: order/models.py:1654 order/models.py:1929
+#: templates/js/translated/return_order.js:718
msgid "Item"
msgstr "Tétel"
-#: order/models.py:1642
+#: order/models.py:1655
msgid "Select stock item to allocate"
msgstr "Válaszd ki a foglalásra szánt készlet tételt"
-#: order/models.py:1645
+#: order/models.py:1658
msgid "Enter stock allocation quantity"
msgstr "Készlet foglalási mennyiség megadása"
-#: order/models.py:1725
+#: order/models.py:1738
msgid "Return Order reference"
msgstr "Visszavételi utasítás azonosító"
-#: order/models.py:1739
+#: order/models.py:1752
msgid "Company from which items are being returned"
msgstr "Cég akitől a tételek visszavételre kerülnek"
-#: order/models.py:1750
+#: order/models.py:1763
msgid "Return order status"
msgstr "Visszavételi utasítás állapota"
-#: order/models.py:1901
+#: order/models.py:1914
msgid "Only serialized items can be assigned to a Return Order"
msgstr "Csak szériaszámos tételek rendelhetők visszaszállítási utasításhoz"
-#: order/models.py:1917
+#: order/models.py:1930
msgid "Select item to return from customer"
msgstr "Válaszd ki a vevőtől visszavenni kívánt tételt"
-#: order/models.py:1922
+#: order/models.py:1935
msgid "Received Date"
msgstr "Visszavételi dátum"
-#: order/models.py:1923
+#: order/models.py:1936
msgid "The date this this return item was received"
msgstr "Mikor lett visszavéve a tétel"
-#: order/models.py:1934 templates/js/translated/return_order.js:717
-#: templates/js/translated/table_filters.js:93
+#: order/models.py:1947 templates/js/translated/return_order.js:729
+#: templates/js/translated/table_filters.js:99
msgid "Outcome"
msgstr "Kimenetel"
-#: order/models.py:1934
+#: order/models.py:1947
msgid "Outcome for this line item"
msgstr "Sortétel végső kimenetele"
-#: order/models.py:1940
+#: order/models.py:1953
msgid "Cost associated with return or repair for this line item"
msgstr "Sortétel visszaküldésének vagy javításának költsége"
-#: order/serializers.py:247
+#: order/serializers.py:253
msgid "Order cannot be cancelled"
msgstr "A rendelést nem lehet törölni"
-#: order/serializers.py:262 order/serializers.py:1128
+#: order/serializers.py:268 order/serializers.py:1134
msgid "Allow order to be closed with incomplete line items"
msgstr "Rendelés lezárása teljesítetlen sortételek esetén is"
-#: order/serializers.py:273 order/serializers.py:1139
+#: order/serializers.py:279 order/serializers.py:1145
msgid "Order has incomplete line items"
msgstr "A rendelésben teljesítetlen sortételek vannak"
-#: order/serializers.py:386
+#: order/serializers.py:392
msgid "Order is not open"
msgstr "A rendelés nem nyitott"
-#: order/serializers.py:404
+#: order/serializers.py:410
msgid "Purchase price currency"
msgstr "Beszérzési ár pénzneme"
-#: order/serializers.py:422
+#: order/serializers.py:428
msgid "Supplier part must be specified"
msgstr "Beszállítói alkatrészt meg kell adni"
-#: order/serializers.py:427
+#: order/serializers.py:433
msgid "Purchase order must be specified"
msgstr "Beszerzési rendelést meg kell adni"
-#: order/serializers.py:433
+#: order/serializers.py:439
msgid "Supplier must match purchase order"
msgstr "A beszállítónak egyeznie kell a beszerzési rendelésben lévővel"
-#: order/serializers.py:434
+#: order/serializers.py:440
msgid "Purchase order must match supplier"
msgstr "A beszerzési rendelésnek egyeznie kell a beszállítóval"
-#: order/serializers.py:472 order/serializers.py:1216
+#: order/serializers.py:478 order/serializers.py:1222
msgid "Line Item"
msgstr "Sortétel"
-#: order/serializers.py:478
+#: order/serializers.py:484
msgid "Line item does not match purchase order"
msgstr "Sortétel nem egyezik a beszerzési megrendeléssel"
-#: order/serializers.py:488 order/serializers.py:607 order/serializers.py:1589
+#: order/serializers.py:494 order/serializers.py:613 order/serializers.py:1595
msgid "Select destination location for received items"
msgstr "Válassz cél helyet a beérkezett tételeknek"
-#: order/serializers.py:507 templates/js/translated/purchase_order.js:1100
+#: order/serializers.py:513 templates/js/translated/purchase_order.js:1115
msgid "Enter batch code for incoming stock items"
msgstr "Írd be a batch kódját a beérkezett tételeknek"
-#: order/serializers.py:515 templates/js/translated/purchase_order.js:1124
+#: order/serializers.py:521 templates/js/translated/purchase_order.js:1139
msgid "Enter serial numbers for incoming stock items"
msgstr "Írd be a sorozatszámokat a beérkezett tételekhez"
-#: order/serializers.py:528 templates/js/translated/barcode.js:52
+#: order/serializers.py:534 templates/js/translated/barcode.js:52
msgid "Barcode"
msgstr "Vonalkód"
-#: order/serializers.py:529
+#: order/serializers.py:535
msgid "Scanned barcode"
msgstr "Beolvasott vonalkód"
-#: order/serializers.py:545
+#: order/serializers.py:551
msgid "Barcode is already in use"
msgstr "Ez a vonalkód már használva van"
-#: order/serializers.py:569
+#: order/serializers.py:575
msgid "An integer quantity must be provided for trackable parts"
msgstr "Egész számú mennyiség szükséges az egyedi követésre kötelezett alkatrészeknél"
-#: order/serializers.py:623 order/serializers.py:1604
+#: order/serializers.py:629 order/serializers.py:1610
msgid "Line items must be provided"
msgstr "Sortételt meg kell adni"
-#: order/serializers.py:640
+#: order/serializers.py:646
msgid "Destination location must be specified"
msgstr "A cél helyet kötelező megadni"
-#: order/serializers.py:651
+#: order/serializers.py:657
msgid "Supplied barcode values must be unique"
msgstr "Megadott vonalkódoknak egyedieknek kel lenniük"
-#: order/serializers.py:950
+#: order/serializers.py:956
msgid "Sale price currency"
msgstr "Eladási ár pénzneme"
-#: order/serializers.py:1007
+#: order/serializers.py:1013
msgid "No shipment details provided"
msgstr "Nincsenek szállítmány részletek megadva"
-#: order/serializers.py:1071 order/serializers.py:1225
+#: order/serializers.py:1077 order/serializers.py:1231
msgid "Line item is not associated with this order"
msgstr "Sortétel nincs hozzárendelve ehhez a rendeléshez"
-#: order/serializers.py:1093
+#: order/serializers.py:1099
msgid "Quantity must be positive"
msgstr "Mennyiség pozitív kell legyen"
-#: order/serializers.py:1238
+#: order/serializers.py:1244
msgid "Enter serial numbers to allocate"
msgstr "Írd be a sorozatszámokat a kiosztáshoz"
-#: order/serializers.py:1260 order/serializers.py:1384
+#: order/serializers.py:1266 order/serializers.py:1390
msgid "Shipment has already been shipped"
msgstr "Szállítmány kiszállítva"
-#: order/serializers.py:1263 order/serializers.py:1387
+#: order/serializers.py:1269 order/serializers.py:1393
msgid "Shipment is not associated with this order"
msgstr "Szállítmány nincs hozzárendelve ehhez a rendeléshez"
-#: order/serializers.py:1317
+#: order/serializers.py:1323
msgid "No match found for the following serial numbers"
msgstr "Nincs találat a következő sorozatszámokra"
-#: order/serializers.py:1327
+#: order/serializers.py:1333
msgid "The following serial numbers are already allocated"
msgstr "A következő sorozatszámok már ki lettek osztva"
-#: order/serializers.py:1555
+#: order/serializers.py:1561
msgid "Return order line item"
msgstr "Visszavételi utasítás sortétel"
-#: order/serializers.py:1562
+#: order/serializers.py:1568
msgid "Line item does not match return order"
msgstr "Sortétel nem egyezik a visszavételi utasítással"
-#: order/serializers.py:1565
+#: order/serializers.py:1571
msgid "Line item has already been received"
msgstr "A sortétel már beérkezett"
-#: order/serializers.py:1597
+#: order/serializers.py:1603
msgid "Items can only be received against orders which are in progress"
msgstr "Csak folyamatban lévő megrendelés tételeit lehet bevételezni"
-#: order/serializers.py:1678
+#: order/serializers.py:1684
msgid "Line price currency"
msgstr "Sortétel pénzneme"
@@ -4958,82 +5014,74 @@ msgid "Issue Order"
msgstr "Rendelés kiküldése"
#: order/templates/order/order_base.html:83
-msgid "Receive items"
-msgstr "Érkezett tételek bevételezése"
-
-#: order/templates/order/order_base.html:85
-msgid "Receive Items"
-msgstr "Bevételezés"
-
-#: order/templates/order/order_base.html:87
#: order/templates/order/return_order_base.html:87
msgid "Mark order as complete"
msgstr "Rendelés teljesítettnek jelölése"
-#: order/templates/order/order_base.html:88
+#: order/templates/order/order_base.html:84
#: order/templates/order/return_order_base.html:88
#: order/templates/order/sales_order_base.html:94
msgid "Complete Order"
msgstr "Rendelés befejezése"
-#: order/templates/order/order_base.html:95
+#: order/templates/order/order_base.html:91
msgid "Supplier part thumbnail"
msgstr ""
-#: order/templates/order/order_base.html:110
+#: order/templates/order/order_base.html:106
#: order/templates/order/return_order_base.html:102
#: order/templates/order/sales_order_base.html:107
msgid "Order Reference"
msgstr "Rendelés azonosítója"
-#: order/templates/order/order_base.html:115
+#: order/templates/order/order_base.html:111
#: order/templates/order/return_order_base.html:107
#: order/templates/order/sales_order_base.html:112
msgid "Order Description"
msgstr "Rendelés leírása"
-#: order/templates/order/order_base.html:122
+#: order/templates/order/order_base.html:118
#: order/templates/order/return_order_base.html:114
#: order/templates/order/sales_order_base.html:119
msgid "Order Status"
msgstr "Rendelés állapota"
-#: order/templates/order/order_base.html:145
+#: order/templates/order/order_base.html:141
msgid "No suppplier information available"
msgstr "Nincs elérhető beszállítói információ"
-#: order/templates/order/order_base.html:158
+#: order/templates/order/order_base.html:154
#: order/templates/order/sales_order_base.html:158
msgid "Completed Line Items"
msgstr "Kész sortételek"
-#: order/templates/order/order_base.html:164
+#: order/templates/order/order_base.html:160
#: order/templates/order/sales_order_base.html:164
#: order/templates/order/sales_order_base.html:174
msgid "Incomplete"
msgstr "Hiányos"
-#: order/templates/order/order_base.html:183
+#: order/templates/order/order_base.html:179
#: order/templates/order/return_order_base.html:158
#: report/templates/report/inventree_build_order_base.html:121
msgid "Issued"
msgstr "Kiküldve"
-#: order/templates/order/order_base.html:221
+#: order/templates/order/order_base.html:224
msgid "Total cost"
msgstr "Teljes költség"
-#: order/templates/order/order_base.html:225
-#: order/templates/order/return_order_base.html:193
-#: order/templates/order/sales_order_base.html:233
+#: order/templates/order/order_base.html:228
+#: order/templates/order/return_order_base.html:200
+#: order/templates/order/sales_order_base.html:240
msgid "Total cost could not be calculated"
msgstr "A teljes költség nem számolható"
-#: order/templates/order/order_base.html:331
+#: order/templates/order/order_base.html:318
msgid "Purchase Order QR Code"
msgstr "Beszerzési rendelés QR kódja"
-#: order/templates/order/order_base.html:343
+#: order/templates/order/order_base.html:330
msgid "Link Barcode to Purchase Order"
msgstr "Vonalkód hozzáadása a beszerzési rendeléshez"
@@ -5086,13 +5134,13 @@ msgstr "Kijelöltek másolása"
#: part/templates/part/import_wizard/ajax_match_references.html:42
#: part/templates/part/import_wizard/match_fields.html:71
#: part/templates/part/import_wizard/match_references.html:49
-#: templates/js/translated/bom.js:132 templates/js/translated/build.js:512
-#: templates/js/translated/build.js:2348
-#: templates/js/translated/purchase_order.js:692
-#: templates/js/translated/purchase_order.js:1206
-#: templates/js/translated/return_order.js:494
-#: templates/js/translated/sales_order.js:1097
-#: templates/js/translated/stock.js:681 templates/js/translated/stock.js:850
+#: templates/js/translated/bom.js:133 templates/js/translated/build.js:518
+#: templates/js/translated/build.js:1555
+#: templates/js/translated/purchase_order.js:703
+#: templates/js/translated/purchase_order.js:1221
+#: templates/js/translated/return_order.js:506
+#: templates/js/translated/sales_order.js:1109
+#: templates/js/translated/stock.js:680 templates/js/translated/stock.js:849
#: templates/patterns/wizard/match_fields.html:70
msgid "Remove row"
msgstr "Sor törlése"
@@ -5153,9 +5201,9 @@ msgstr "Beszerzési rendelés tételei"
#: order/templates/order/purchase_order_detail.html:27
#: order/templates/order/return_order_detail.html:24
#: order/templates/order/sales_order_detail.html:24
-#: templates/js/translated/purchase_order.js:419
-#: templates/js/translated/return_order.js:447
-#: templates/js/translated/sales_order.js:222
+#: templates/js/translated/purchase_order.js:430
+#: templates/js/translated/return_order.js:459
+#: templates/js/translated/sales_order.js:234
msgid "Add Line Item"
msgstr "Sortétel hozzáadása"
@@ -5166,30 +5214,25 @@ msgstr "Sortétel hozzáadása"
msgid "Receive Line Items"
msgstr "Sortételek bevételezése"
-#: order/templates/order/purchase_order_detail.html:49
#: order/templates/order/purchase_order_detail.html:50
-msgid "Delete Line Items"
-msgstr "Sortételek törlése"
-
-#: order/templates/order/purchase_order_detail.html:66
-#: order/templates/order/return_order_detail.html:47
-#: order/templates/order/sales_order_detail.html:43
+#: order/templates/order/return_order_detail.html:45
+#: order/templates/order/sales_order_detail.html:41
msgid "Extra Lines"
msgstr "Egyéb tételek"
-#: order/templates/order/purchase_order_detail.html:72
-#: order/templates/order/return_order_detail.html:53
-#: order/templates/order/sales_order_detail.html:49
+#: order/templates/order/purchase_order_detail.html:56
+#: order/templates/order/return_order_detail.html:51
+#: order/templates/order/sales_order_detail.html:47
msgid "Add Extra Line"
msgstr "Egyéb tétel hozzáadása"
-#: order/templates/order/purchase_order_detail.html:92
+#: order/templates/order/purchase_order_detail.html:74
msgid "Received Items"
msgstr "Érkezett tételek"
-#: order/templates/order/purchase_order_detail.html:117
-#: order/templates/order/return_order_detail.html:89
-#: order/templates/order/sales_order_detail.html:149
+#: order/templates/order/purchase_order_detail.html:99
+#: order/templates/order/return_order_detail.html:85
+#: order/templates/order/sales_order_detail.html:139
msgid "Order Notes"
msgstr "Rendelés megjegyzések"
@@ -5209,29 +5252,29 @@ msgstr "Csomagolási lista nyomtatása"
#: order/templates/order/return_order_base.html:139
#: order/templates/order/sales_order_base.html:152
-#: templates/js/translated/return_order.js:297
-#: templates/js/translated/sales_order.js:785
+#: templates/js/translated/return_order.js:309
+#: templates/js/translated/sales_order.js:797
msgid "Customer Reference"
msgstr "Vevői azonosító"
-#: order/templates/order/return_order_base.html:189
-#: order/templates/order/sales_order_base.html:229
+#: order/templates/order/return_order_base.html:196
+#: order/templates/order/sales_order_base.html:236
#: part/templates/part/part_pricing.html:32
#: part/templates/part/part_pricing.html:58
#: part/templates/part/part_pricing.html:99
#: part/templates/part/part_pricing.html:114
-#: templates/js/translated/part.js:1046
-#: templates/js/translated/purchase_order.js:1712
-#: templates/js/translated/return_order.js:369
-#: templates/js/translated/sales_order.js:843
+#: templates/js/translated/part.js:1045
+#: templates/js/translated/purchase_order.js:1727
+#: templates/js/translated/return_order.js:381
+#: templates/js/translated/sales_order.js:855
msgid "Total Cost"
msgstr "Teljes költség"
-#: order/templates/order/return_order_base.html:257
+#: order/templates/order/return_order_base.html:264
msgid "Return Order QR Code"
msgstr "Visszavételi utasítás QR kódja"
-#: order/templates/order/return_order_base.html:269
+#: order/templates/order/return_order_base.html:276
msgid "Link Barcode to Return Order"
msgstr "Vonalkód visszavételi utasításhoz rendelése"
@@ -5249,7 +5292,7 @@ msgid "Ship Items"
msgstr "Tételek kiszállítása"
#: order/templates/order/sales_order_base.html:93
-#: templates/js/translated/sales_order.js:469
+#: templates/js/translated/sales_order.js:481
msgid "Complete Sales Order"
msgstr "Vevői rendelés befejezése, minden kiszállítva"
@@ -5258,16 +5301,16 @@ msgid "This Sales Order has not been fully allocated"
msgstr "Ehhez a vevői rendeléshez nincs minden alkatrész lefoglalva"
#: order/templates/order/sales_order_base.html:170
-#: order/templates/order/sales_order_detail.html:105
+#: order/templates/order/sales_order_detail.html:99
#: order/templates/order/so_sidebar.html:11
msgid "Completed Shipments"
msgstr "Kész szállítmányok"
-#: order/templates/order/sales_order_base.html:306
+#: order/templates/order/sales_order_base.html:313
msgid "Sales Order QR Code"
msgstr "Vevő rendelés QR kódja"
-#: order/templates/order/sales_order_base.html:318
+#: order/templates/order/sales_order_base.html:325
msgid "Link Barcode to Sales Order"
msgstr "Vonalkód hozzáadása a vevői rendeléshez"
@@ -5275,18 +5318,17 @@ msgstr "Vonalkód hozzáadása a vevői rendeléshez"
msgid "Sales Order Items"
msgstr "Vevői rendelés tételek"
-#: order/templates/order/sales_order_detail.html:71
-#: order/templates/order/so_sidebar.html:8 templates/InvenTree/index.html:332
+#: order/templates/order/sales_order_detail.html:67
+#: order/templates/order/so_sidebar.html:8 templates/InvenTree/index.html:284
msgid "Pending Shipments"
msgstr "Függő szállítmányok"
-#: order/templates/order/sales_order_detail.html:75
-#: templates/attachment_table.html:6 templates/js/translated/bom.js:1236
-#: templates/js/translated/build.js:2249
+#: order/templates/order/sales_order_detail.html:71
+#: templates/js/translated/bom.js:1256 templates/js/translated/filters.js:297
msgid "Actions"
msgstr "Műveletek"
-#: order/templates/order/sales_order_detail.html:84
+#: order/templates/order/sales_order_detail.html:80
msgid "New Shipment"
msgstr "Új szállítmány"
@@ -5312,12 +5354,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:33 part/admin.py:273 part/models.py:3667 part/tasks.py:288
+#: part/admin.py:33 part/admin.py:273 part/models.py:3716 part/tasks.py:288
#: stock/admin.py:101
msgid "Part ID"
msgstr "Alkatrész ID"
-#: part/admin.py:34 part/admin.py:275 part/models.py:3671 part/tasks.py:289
+#: part/admin.py:34 part/admin.py:275 part/models.py:3720 part/tasks.py:289
#: stock/admin.py:102
msgid "Part Name"
msgstr "Alkatrész neve"
@@ -5326,19 +5368,19 @@ msgstr "Alkatrész neve"
msgid "Part Description"
msgstr "Alkatrész leírása"
-#: part/admin.py:36 part/models.py:889 part/templates/part/part_base.html:271
-#: templates/js/translated/part.js:1200 templates/js/translated/part.js:2233
-#: templates/js/translated/stock.js:1795
+#: part/admin.py:36 part/models.py:890 part/templates/part/part_base.html:271
+#: templates/js/translated/part.js:1199 templates/js/translated/part.js:2309
+#: templates/js/translated/stock.js:1952
msgid "IPN"
msgstr "IPN"
-#: part/admin.py:37 part/models.py:896 part/templates/part/part_base.html:279
-#: report/models.py:179 templates/js/translated/part.js:1205
-#: templates/js/translated/part.js:2239
+#: part/admin.py:37 part/models.py:897 part/templates/part/part_base.html:279
+#: report/models.py:179 templates/js/translated/part.js:1204
+#: templates/js/translated/part.js:2315
msgid "Revision"
msgstr "Változat"
-#: part/admin.py:38 part/admin.py:198 part/models.py:875
+#: part/admin.py:38 part/admin.py:198 part/models.py:876
#: part/templates/part/category.html:93 part/templates/part/part_base.html:300
msgid "Keywords"
msgstr "Kulcsszavak"
@@ -5359,24 +5401,24 @@ msgstr "Alapértelmezett készlethely ID"
msgid "Default Supplier ID"
msgstr "Alapértelmezett beszállító ID"
-#: part/admin.py:46 part/models.py:864 part/templates/part/part_base.html:179
+#: part/admin.py:46 part/models.py:865 part/templates/part/part_base.html:179
msgid "Variant Of"
msgstr "Ebből a sablonból"
-#: part/admin.py:47 part/models.py:980 part/templates/part/part_base.html:205
+#: part/admin.py:47 part/models.py:981 part/templates/part/part_base.html:205
msgid "Minimum Stock"
msgstr "Minimális készlet"
#: part/admin.py:61 part/templates/part/part_base.html:199
-#: templates/js/translated/company.js:1299
-#: templates/js/translated/table_filters.js:301
+#: templates/js/translated/company.js:1720
+#: templates/js/translated/table_filters.js:307
msgid "In Stock"
msgstr "Készleten"
#: part/admin.py:62 part/bom.py:178 part/templates/part/part_base.html:212
-#: templates/js/translated/bom.js:1167 templates/js/translated/build.js:2191
-#: templates/js/translated/part.js:687 templates/js/translated/part.js:2123
-#: templates/js/translated/table_filters.js:140
+#: templates/js/translated/bom.js:1187 templates/js/translated/build.js:2541
+#: templates/js/translated/part.js:686 templates/js/translated/part.js:2122
+#: templates/js/translated/table_filters.js:146
msgid "On Order"
msgstr "Rendelve"
@@ -5384,23 +5426,16 @@ msgstr "Rendelve"
msgid "Used In"
msgstr "Felhasználva ebben"
-#: part/admin.py:64 templates/js/translated/build.js:2203
-#: templates/js/translated/build.js:2465 templates/js/translated/build.js:3052
-#: templates/js/translated/sales_order.js:1906
-#: templates/js/translated/table_filters.js:488
-msgid "Allocated"
-msgstr "Lefoglalva"
-
#: part/admin.py:65 part/templates/part/part_base.html:243 stock/admin.py:124
-#: templates/js/translated/part.js:692 templates/js/translated/part.js:2127
+#: templates/js/translated/part.js:691 templates/js/translated/part.js:2126
msgid "Building"
msgstr "Gyártásban"
-#: part/admin.py:66 part/models.py:2930 templates/js/translated/part.js:943
+#: part/admin.py:66 part/models.py:2964 templates/js/translated/part.js:942
msgid "Minimum Cost"
msgstr "Minimum költség"
-#: part/admin.py:67 part/models.py:2936 templates/js/translated/part.js:953
+#: part/admin.py:67 part/models.py:2970 templates/js/translated/part.js:952
msgid "Maximum Cost"
msgstr "Maximum költség"
@@ -5417,13 +5452,13 @@ msgstr "Szülő neve"
msgid "Category Path"
msgstr "Kategória elérési út"
-#: part/admin.py:202 part/models.py:392 part/templates/part/cat_link.html:3
-#: part/templates/part/category.html:23 part/templates/part/category.html:140
-#: part/templates/part/category.html:160
+#: part/admin.py:202 part/models.py:393 part/serializers.py:307
+#: part/templates/part/cat_link.html:3 part/templates/part/category.html:23
+#: part/templates/part/category.html:140 part/templates/part/category.html:160
#: part/templates/part/category_sidebar.html:9
-#: templates/InvenTree/index.html:86 templates/InvenTree/search.html:84
+#: templates/InvenTree/index.html:36 templates/InvenTree/search.html:84
#: templates/InvenTree/settings/sidebar.html:45
-#: templates/js/translated/part.js:2754 templates/js/translated/search.js:172
+#: templates/js/translated/part.js:2739 templates/js/translated/search.js:130
#: templates/navbar.html:24 users/models.py:38
msgid "Parts"
msgstr "Alkatrészek"
@@ -5440,7 +5475,7 @@ msgstr "Alkatrészjegyzék tétel ID"
msgid "Parent IPN"
msgstr "Szülő IPN"
-#: part/admin.py:274 part/models.py:3675
+#: part/admin.py:274 part/models.py:3724
msgid "Part IPN"
msgstr "Alkatrész IPN"
@@ -5454,35 +5489,35 @@ msgstr "Minimum ár"
msgid "Maximum Price"
msgstr "Maximum ár"
-#: part/api.py:498
+#: part/api.py:501
msgid "Incoming Purchase Order"
msgstr "Beérkező beszerzési rendelés"
-#: part/api.py:518
+#: part/api.py:521
msgid "Outgoing Sales Order"
msgstr "Kimenő vevői rendelés"
-#: part/api.py:536
+#: part/api.py:539
msgid "Stock produced by Build Order"
msgstr "Gyártással előállított készlet"
-#: part/api.py:622
+#: part/api.py:625
msgid "Stock required for Build Order"
msgstr "A gyártási utasításhoz szükséges készlet"
-#: part/api.py:770
+#: part/api.py:773
msgid "Valid"
msgstr "Érvényes"
-#: part/api.py:771
+#: part/api.py:774
msgid "Validate entire Bill of Materials"
msgstr "Teljes alkatrészjegyzék jóváhagyása"
-#: part/api.py:777
+#: part/api.py:780
msgid "This option must be selected"
msgstr "Ennek az opciónak ki kll lennie választva"
-#: part/bom.py:175 part/models.py:127 part/models.py:923
+#: part/bom.py:175 part/models.py:128 part/models.py:924
#: part/templates/part/category.html:115 part/templates/part/part_base.html:369
msgid "Default Location"
msgstr "Alapértelmezett hely"
@@ -5492,7 +5527,7 @@ msgid "Total Stock"
msgstr "Teljes készlet"
#: part/bom.py:177 part/templates/part/part_base.html:194
-#: templates/js/translated/sales_order.js:1873
+#: templates/js/translated/sales_order.js:1885
msgid "Available Stock"
msgstr "Elérhető készlet"
@@ -5500,916 +5535,913 @@ msgstr "Elérhető készlet"
msgid "Input quantity for price calculation"
msgstr "Add meg a mennyiséget az árszámításhoz"
-#: part/models.py:75 part/models.py:3616 part/templates/part/category.html:16
+#: part/models.py:76 part/models.py:3665 part/templates/part/category.html:16
#: part/templates/part/part_app_base.html:10
msgid "Part Category"
msgstr "Alkatrész kategória"
-#: part/models.py:76 part/templates/part/category.html:135
-#: templates/InvenTree/search.html:97 templates/js/translated/search.js:200
+#: part/models.py:77 part/templates/part/category.html:135
+#: templates/InvenTree/search.html:97 templates/js/translated/search.js:158
#: users/models.py:37
msgid "Part Categories"
msgstr "Alkatrész kategóriák"
-#: part/models.py:128
+#: part/models.py:129
msgid "Default location for parts in this category"
msgstr "Ebben a kategóriában lévő alkatrészek helye alapban"
-#: part/models.py:133 stock/models.py:124 templates/js/translated/stock.js:2520
-#: templates/js/translated/table_filters.js:209
-#: templates/js/translated/table_filters.js:229
+#: part/models.py:134 stock/models.py:124 templates/js/translated/stock.js:2651
+#: templates/js/translated/table_filters.js:215
+#: templates/js/translated/table_filters.js:235
msgid "Structural"
msgstr "Szerkezeti"
-#: part/models.py:135
+#: part/models.py:136
msgid "Parts may not be directly assigned to a structural category, but may be assigned to child categories."
msgstr "A szerkezeti alkatrész kategóriákhoz nem lehet direktben alkatrészeket hozzáadni, csak az alkategóriáikhoz."
-#: part/models.py:139
+#: part/models.py:140
msgid "Default keywords"
msgstr "Alapértelmezett kulcsszavak"
-#: part/models.py:139
+#: part/models.py:140
msgid "Default keywords for parts in this category"
msgstr "Ebben a kategóriában évő alkatrészek kulcsszavai alapban"
-#: part/models.py:144 stock/models.py:113
+#: part/models.py:145 stock/models.py:113
msgid "Icon"
msgstr "Ikon"
-#: part/models.py:145 stock/models.py:114
+#: part/models.py:146 stock/models.py:114
msgid "Icon (optional)"
msgstr "Ikon (opcionális)"
-#: part/models.py:164
+#: part/models.py:165
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:475
+#: part/models.py:476
msgid "Invalid choice for parent part"
msgstr "Hibás választás a szülő alkatrészre"
-#: part/models.py:517 part/models.py:529
+#: part/models.py:518 part/models.py:530
#, 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:601
+#: part/models.py:602
#, python-brace-format
msgid "IPN must match regex pattern {pat}"
msgstr "IPN mezőnek egyeznie kell a '{pat}' mintával"
-#: part/models.py:672
+#: part/models.py:673
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:803
+#: part/models.py:804
msgid "Duplicate IPN not allowed in part settings"
msgstr "Azonos IPN nem engedélyezett az alkatrészekre, már létezik ilyen"
-#: part/models.py:808
+#: part/models.py:809
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:822
+#: part/models.py:823
msgid "Parts cannot be assigned to structural part categories!"
msgstr "Szerkezeti kategóriákhoz nem lehet alkatrészeket rendelni!"
-#: part/models.py:846 part/models.py:3672
+#: part/models.py:847 part/models.py:3721
msgid "Part name"
msgstr "Alkatrész neve"
-#: part/models.py:852
+#: part/models.py:853
msgid "Is Template"
msgstr "Sablon-e"
-#: part/models.py:853
+#: part/models.py:854
msgid "Is this part a template part?"
msgstr "Ez egy sablon alkatrész?"
-#: part/models.py:863
+#: part/models.py:864
msgid "Is this part a variant of another part?"
msgstr "Ez az alkatrész egy másik változata?"
-#: part/models.py:870
+#: part/models.py:871
msgid "Part description (optional)"
msgstr "Alkatrész leírása (opcionális)"
-#: part/models.py:876
+#: part/models.py:877
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:883 part/models.py:3198 part/models.py:3615
-#: part/serializers.py:848 part/templates/part/part_base.html:262
+#: part/models.py:884 part/models.py:3232 part/models.py:3664
+#: part/serializers.py:320 part/serializers.py:910
+#: part/templates/part/part_base.html:262
#: templates/InvenTree/settings/settings_staff_js.html:204
#: templates/js/translated/notification.js:59
-#: templates/js/translated/part.js:2269 templates/js/translated/part.js:2481
+#: templates/js/translated/part.js:2345
msgid "Category"
msgstr "Kategória"
-#: part/models.py:884
+#: part/models.py:885
msgid "Part category"
msgstr "Alkatrész kategória"
-#: part/models.py:890
+#: part/models.py:891
msgid "Internal Part Number"
msgstr "Belső cikkszám"
-#: part/models.py:895
+#: part/models.py:896
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:921
+#: part/models.py:922
msgid "Where is this item normally stored?"
msgstr "Alapban hol tároljuk ezt az alkatrészt?"
-#: part/models.py:966 part/templates/part/part_base.html:378
+#: part/models.py:967 part/templates/part/part_base.html:378
msgid "Default Supplier"
msgstr "Alapértelmezett beszállító"
-#: part/models.py:967
+#: part/models.py:968
msgid "Default supplier part"
msgstr "Alapértelmezett beszállítói alkatrész"
-#: part/models.py:974
+#: part/models.py:975
msgid "Default Expiry"
msgstr "Alapértelmezett lejárat"
-#: part/models.py:975
+#: part/models.py:976
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:981
+#: part/models.py:982
msgid "Minimum allowed stock level"
msgstr "Minimálisan megengedett készlet mennyiség"
-#: part/models.py:988
+#: part/models.py:989
msgid "Units of measure for this part"
msgstr "Alkatrész mértékegysége"
-#: part/models.py:997
+#: part/models.py:998
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:1003
+#: part/models.py:1004
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:1009
+#: part/models.py:1010
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:1014
+#: part/models.py:1015
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:1019
+#: part/models.py:1020
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:1024
+#: part/models.py:1025
msgid "Is this part active?"
msgstr "Aktív-e ez az alkatrész?"
-#: part/models.py:1029
+#: part/models.py:1030
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:1031
+#: part/models.py:1032
msgid "BOM checksum"
msgstr "Alkatrészjegyzék ellenőrző összeg"
-#: part/models.py:1031
+#: part/models.py:1032
msgid "Stored BOM checksum"
msgstr "Tárolt alkatrészjegyzék ellenőrző összeg"
-#: part/models.py:1034
+#: part/models.py:1035
msgid "BOM checked by"
msgstr "Alkatrészjegyzéket ellenőrizte"
-#: part/models.py:1036
+#: part/models.py:1037
msgid "BOM checked date"
msgstr "Alkatrészjegyzék ellenőrzési dátuma"
-#: part/models.py:1040
+#: part/models.py:1041
msgid "Creation User"
msgstr "Létrehozó"
-#: part/models.py:1042
+#: part/models.py:1043
msgid "User responsible for this part"
msgstr "Felhasználó aki felelős ezért az alkatrészért"
-#: part/models.py:1046 part/templates/part/part_base.html:341
+#: part/models.py:1047 part/templates/part/part_base.html:341
#: stock/templates/stock/item_base.html:447
-#: templates/js/translated/part.js:2331
+#: templates/js/translated/part.js:2407
msgid "Last Stocktake"
msgstr "Utolsó leltár"
-#: part/models.py:1921
+#: part/models.py:1923
msgid "Sell multiple"
msgstr "Több értékesítése"
-#: part/models.py:2853
+#: part/models.py:2887
msgid "Currency used to cache pricing calculations"
msgstr "Árszámítások gyorstárazásához használt pénznem"
-#: part/models.py:2870
+#: part/models.py:2904
msgid "Minimum BOM Cost"
msgstr "Minimum alkatrészjegyzék költség"
-#: part/models.py:2871
+#: part/models.py:2905
msgid "Minimum cost of component parts"
msgstr "Összetevők minimum költsége"
-#: part/models.py:2876
+#: part/models.py:2910
msgid "Maximum BOM Cost"
msgstr "Maximum alkatrészjegyzék költség"
-#: part/models.py:2877
+#: part/models.py:2911
msgid "Maximum cost of component parts"
msgstr "Összetevők maximum költsége"
-#: part/models.py:2882
+#: part/models.py:2916
msgid "Minimum Purchase Cost"
msgstr "Minimum beszerzési ár"
-#: part/models.py:2883
+#: part/models.py:2917
msgid "Minimum historical purchase cost"
msgstr "Eddigi minimum beszerzési költség"
-#: part/models.py:2888
+#: part/models.py:2922
msgid "Maximum Purchase Cost"
msgstr "Maximum beszerzési ár"
-#: part/models.py:2889
+#: part/models.py:2923
msgid "Maximum historical purchase cost"
msgstr "Eddigi maximum beszerzési költség"
-#: part/models.py:2894
+#: part/models.py:2928
msgid "Minimum Internal Price"
msgstr "Minimum belső ár"
-#: part/models.py:2895
+#: part/models.py:2929
msgid "Minimum cost based on internal price breaks"
msgstr "Minimum költség a belső ársávok alapján"
-#: part/models.py:2900
+#: part/models.py:2934
msgid "Maximum Internal Price"
msgstr "Maximum belső ár"
-#: part/models.py:2901
+#: part/models.py:2935
msgid "Maximum cost based on internal price breaks"
msgstr "Maximum költség a belső ársávok alapján"
-#: part/models.py:2906
+#: part/models.py:2940
msgid "Minimum Supplier Price"
msgstr "Minimum beszállítói ár"
-#: part/models.py:2907
+#: part/models.py:2941
msgid "Minimum price of part from external suppliers"
msgstr "Minimum alkatrész ár a beszállítóktól"
-#: part/models.py:2912
+#: part/models.py:2946
msgid "Maximum Supplier Price"
msgstr "Maximum beszállítói ár"
-#: part/models.py:2913
+#: part/models.py:2947
msgid "Maximum price of part from external suppliers"
msgstr "Maximum alkatrész ár a beszállítóktól"
-#: part/models.py:2918
+#: part/models.py:2952
msgid "Minimum Variant Cost"
msgstr "Minimum alkatrészváltozat ár"
-#: part/models.py:2919
+#: part/models.py:2953
msgid "Calculated minimum cost of variant parts"
msgstr "Alkatrészváltozatok számolt minimum költsége"
-#: part/models.py:2924
+#: part/models.py:2958
msgid "Maximum Variant Cost"
msgstr "Maximum alkatrészváltozat ár"
-#: part/models.py:2925
+#: part/models.py:2959
msgid "Calculated maximum cost of variant parts"
msgstr "Alkatrészváltozatok számolt maximum költsége"
-#: part/models.py:2931
+#: part/models.py:2965
msgid "Calculated overall minimum cost"
msgstr "Számított általános minimum költség"
-#: part/models.py:2937
+#: part/models.py:2971
msgid "Calculated overall maximum cost"
msgstr "Számított általános maximum költség"
-#: part/models.py:2942
+#: part/models.py:2976
msgid "Minimum Sale Price"
msgstr "Minimum eladási ár"
-#: part/models.py:2943
+#: part/models.py:2977
msgid "Minimum sale price based on price breaks"
msgstr "Minimum eladási ár az ársávok alapján"
-#: part/models.py:2948
+#: part/models.py:2982
msgid "Maximum Sale Price"
msgstr "Maximum eladási ár"
-#: part/models.py:2949
+#: part/models.py:2983
msgid "Maximum sale price based on price breaks"
msgstr "Maximum eladási ár az ársávok alapján"
-#: part/models.py:2954
+#: part/models.py:2988
msgid "Minimum Sale Cost"
msgstr "Minimum eladási költség"
-#: part/models.py:2955
+#: part/models.py:2989
msgid "Minimum historical sale price"
msgstr "Eddigi minimum eladási ár"
-#: part/models.py:2960
+#: part/models.py:2994
msgid "Maximum Sale Cost"
msgstr "Maximum eladási költség"
-#: part/models.py:2961
+#: part/models.py:2995
msgid "Maximum historical sale price"
msgstr "Eddigi maximum eladási ár"
-#: part/models.py:2980
+#: part/models.py:3014
msgid "Part for stocktake"
msgstr "Leltározható alkatrész"
-#: part/models.py:2985
+#: part/models.py:3019
msgid "Item Count"
msgstr "Tételszám"
-#: part/models.py:2986
+#: part/models.py:3020
msgid "Number of individual stock entries at time of stocktake"
msgstr "Egyedi készlet tételek száma a leltárkor"
-#: part/models.py:2993
+#: part/models.py:3027
msgid "Total available stock at time of stocktake"
msgstr "Teljes készlet a leltárkor"
-#: part/models.py:2997 part/models.py:3080
+#: part/models.py:3031 part/models.py:3114
#: part/templates/part/part_scheduling.html:13
#: report/templates/report/inventree_test_report_base.html:106
#: templates/InvenTree/settings/plugin_settings.html:37
#: templates/InvenTree/settings/settings_staff_js.html:360
-#: templates/js/translated/part.js:1059 templates/js/translated/pricing.js:812
+#: templates/js/translated/part.js:1058 templates/js/translated/pricing.js:812
#: templates/js/translated/pricing.js:936
-#: templates/js/translated/purchase_order.js:1691
-#: templates/js/translated/stock.js:2558
+#: templates/js/translated/purchase_order.js:1706
+#: templates/js/translated/stock.js:2689
msgid "Date"
msgstr "Dátum"
-#: part/models.py:2998
+#: part/models.py:3032
msgid "Date stocktake was performed"
msgstr "Leltározva ekkor"
-#: part/models.py:3006
+#: part/models.py:3040
msgid "Additional notes"
msgstr "További megjegyzések"
-#: part/models.py:3014
+#: part/models.py:3048
msgid "User who performed this stocktake"
msgstr "Leltározta"
-#: part/models.py:3019
+#: part/models.py:3053
msgid "Minimum Stock Cost"
msgstr "Minimum készlet érték"
-#: part/models.py:3020
+#: part/models.py:3054
msgid "Estimated minimum cost of stock on hand"
msgstr "Becsült minimum raktárkészlet érték"
-#: part/models.py:3025
+#: part/models.py:3059
msgid "Maximum Stock Cost"
msgstr "Maximum készlet érték"
-#: part/models.py:3026
+#: part/models.py:3060
msgid "Estimated maximum cost of stock on hand"
msgstr "Becsült maximum raktárkészlet érték"
-#: part/models.py:3087 templates/InvenTree/settings/settings_staff_js.html:349
+#: part/models.py:3121 templates/InvenTree/settings/settings_staff_js.html:349
msgid "Report"
msgstr "Riport"
-#: part/models.py:3088
+#: part/models.py:3122
msgid "Stocktake report file (generated internally)"
msgstr "Leltár riport fájl (generált)"
-#: part/models.py:3093 templates/InvenTree/settings/settings_staff_js.html:356
+#: part/models.py:3127 templates/InvenTree/settings/settings_staff_js.html:356
msgid "Part Count"
msgstr "Alkatrész szám"
-#: part/models.py:3094
+#: part/models.py:3128
msgid "Number of parts covered by stocktake"
msgstr "Leltározott alkatrészek száma"
-#: part/models.py:3102
+#: part/models.py:3136
msgid "User who requested this stocktake report"
msgstr "Felhasználó aki a leltár riportot kérte"
-#: part/models.py:3238
+#: part/models.py:3272
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:3255
+#: part/models.py:3289
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:3275 templates/js/translated/part.js:2821
+#: part/models.py:3309 templates/js/translated/part.js:2806
msgid "Test Name"
msgstr "Teszt név"
-#: part/models.py:3276
+#: part/models.py:3310
msgid "Enter a name for the test"
msgstr "Add meg a teszt nevét"
-#: part/models.py:3281
+#: part/models.py:3315
msgid "Test Description"
msgstr "Teszt leírása"
-#: part/models.py:3282
+#: part/models.py:3316
msgid "Enter description for this test"
msgstr "Adj hozzá egy leírást ehhez a teszthez"
-#: part/models.py:3287 templates/js/translated/part.js:2830
-#: templates/js/translated/table_filters.js:423
+#: part/models.py:3321 templates/js/translated/part.js:2815
+#: templates/js/translated/table_filters.js:429
msgid "Required"
msgstr "Kötelező"
-#: part/models.py:3288
+#: part/models.py:3322
msgid "Is this test required to pass?"
msgstr "Szükséges-e hogy ez a teszt sikeres legyen?"
-#: part/models.py:3293 templates/js/translated/part.js:2838
+#: part/models.py:3327 templates/js/translated/part.js:2823
msgid "Requires Value"
msgstr "Kötelező érték"
-#: part/models.py:3294
+#: part/models.py:3328
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:3299 templates/js/translated/part.js:2845
+#: part/models.py:3333 templates/js/translated/part.js:2830
msgid "Requires Attachment"
msgstr "Kötelező melléklet"
-#: part/models.py:3300
+#: part/models.py:3334
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:3346
+#: part/models.py:3380
msgid "Checkbox parameters cannot have units"
msgstr ""
-#: part/models.py:3351
+#: part/models.py:3385
msgid "Checkbox parameters cannot have choices"
msgstr ""
-#: part/models.py:3369
+#: part/models.py:3403
msgid "Choices must be unique"
msgstr ""
-#: part/models.py:3385
+#: part/models.py:3419
msgid "Parameter template name must be unique"
msgstr "A paraméter sablon nevének egyedinek kell lennie"
-#: part/models.py:3401
+#: part/models.py:3435
msgid "Parameter Name"
msgstr "Paraméter neve"
-#: part/models.py:3407
+#: part/models.py:3441
msgid "Physical units for this parameter"
msgstr "Paraméter mértékegysége"
-#: part/models.py:3417
+#: part/models.py:3451
msgid "Parameter description"
msgstr "Paraméter leírása"
-#: part/models.py:3423 templates/js/translated/part.js:1600
-#: templates/js/translated/table_filters.js:734
+#: part/models.py:3457 templates/js/translated/part.js:1599
+#: templates/js/translated/table_filters.js:756
msgid "Checkbox"
msgstr ""
-#: part/models.py:3424
+#: part/models.py:3458
msgid "Is this parameter a checkbox?"
msgstr ""
-#: part/models.py:3429 templates/js/translated/part.js:1609
+#: part/models.py:3463 templates/js/translated/part.js:1608
msgid "Choices"
msgstr ""
-#: part/models.py:3430
+#: part/models.py:3464
msgid "Valid choices for this parameter (comma-separated)"
msgstr ""
-#: part/models.py:3511
+#: part/models.py:3545
msgid "Invalid choice for parameter value"
msgstr ""
-#: part/models.py:3555
+#: part/models.py:3589
msgid "Parent Part"
msgstr "Szülő alkatrész"
-#: part/models.py:3560 part/models.py:3621 part/models.py:3622
+#: part/models.py:3594 part/models.py:3670 part/models.py:3671
#: templates/InvenTree/settings/settings_staff_js.html:199
msgid "Parameter Template"
msgstr "Paraméter sablon"
-#: part/models.py:3565
+#: part/models.py:3599
msgid "Data"
msgstr "Adat"
-#: part/models.py:3565
+#: part/models.py:3599
msgid "Parameter Value"
msgstr "Paraméter értéke"
-#: part/models.py:3626 templates/InvenTree/settings/settings_staff_js.html:208
+#: part/models.py:3675 templates/InvenTree/settings/settings_staff_js.html:208
msgid "Default Value"
msgstr "Alapértelmezett érték"
-#: part/models.py:3627
+#: part/models.py:3676
msgid "Default Parameter Value"
msgstr "Alapértelmezett paraméter érték"
-#: part/models.py:3664
+#: part/models.py:3713
msgid "Part ID or part name"
msgstr "Alkatrész ID vagy alkatrész név"
-#: part/models.py:3668
+#: part/models.py:3717
msgid "Unique part ID value"
msgstr "Egyedi alkatrész ID értéke"
-#: part/models.py:3676
+#: part/models.py:3725
msgid "Part IPN value"
msgstr "Alkatrész IPN érték"
-#: part/models.py:3679
+#: part/models.py:3728
msgid "Level"
msgstr "Szint"
-#: part/models.py:3680
+#: part/models.py:3729
msgid "BOM level"
msgstr "Alkatrészjegyzék szint"
-#: part/models.py:3764
+#: part/models.py:3735 part/models.py:4113
+msgid "BOM Item"
+msgstr "Alkatrészjegyzék tétel"
+
+#: part/models.py:3808
msgid "Select parent part"
msgstr "Szülő alkatrész kiválasztása"
-#: part/models.py:3772
+#: part/models.py:3816
msgid "Sub part"
msgstr "Al alkatrész"
-#: part/models.py:3773
+#: part/models.py:3817
msgid "Select part to be used in BOM"
msgstr "Válaszd ki az alkatrészjegyzékben használandó alkatrészt"
-#: part/models.py:3779
+#: part/models.py:3823
msgid "BOM quantity for this BOM item"
msgstr "Alkatrészjegyzék mennyiség ehhez az alkatrészjegyzék tételhez"
-#: part/models.py:3783 part/templates/part/upload_bom.html:58
-#: templates/js/translated/bom.js:971 templates/js/translated/bom.js:998
-#: templates/js/translated/build.js:2113
-#: templates/js/translated/table_filters.js:156
-#: templates/js/translated/table_filters.js:185
-#: templates/js/translated/table_filters.js:500
-msgid "Optional"
-msgstr "Opcionális"
-
-#: part/models.py:3784
+#: part/models.py:3828
msgid "This BOM item is optional"
msgstr "Ez az alkatrészjegyzék tétel opcionális"
-#: part/models.py:3789 templates/js/translated/bom.js:967
-#: templates/js/translated/bom.js:1007 templates/js/translated/build.js:2104
-#: templates/js/translated/table_filters.js:160
-#: templates/js/translated/table_filters.js:496
-msgid "Consumable"
-msgstr "Fogyóeszköz"
-
-#: part/models.py:3790
+#: part/models.py:3834
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:3794 part/templates/part/upload_bom.html:55
+#: part/models.py:3838 part/templates/part/upload_bom.html:55
msgid "Overage"
msgstr "Többlet"
-#: part/models.py:3795
+#: part/models.py:3839
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:3798
+#: part/models.py:3842
msgid "BOM item reference"
msgstr "Alkatrészjegyzék tétel azonosító"
-#: part/models.py:3801
+#: part/models.py:3845
msgid "BOM item notes"
msgstr "Alkatrészjegyzék tétel megjegyzései"
-#: part/models.py:3805
+#: part/models.py:3849
msgid "Checksum"
msgstr "Ellenőrző összeg"
-#: part/models.py:3805
+#: part/models.py:3849
msgid "BOM line checksum"
msgstr "Alkatrészjegyzék sor ellenőrző összeg"
-#: part/models.py:3810 templates/js/translated/table_filters.js:144
+#: part/models.py:3854 templates/js/translated/table_filters.js:150
msgid "Validated"
msgstr "Jóváhagyva"
-#: part/models.py:3811
+#: part/models.py:3855
msgid "This BOM item has been validated"
msgstr "Ez a BOM tétel jóvá lett hagyva"
-#: part/models.py:3816 part/templates/part/upload_bom.html:57
-#: templates/js/translated/bom.js:1024
-#: templates/js/translated/table_filters.js:148
-#: templates/js/translated/table_filters.js:181
+#: part/models.py:3860 part/templates/part/upload_bom.html:57
+#: templates/js/translated/bom.js:1042
+#: templates/js/translated/table_filters.js:154
+#: templates/js/translated/table_filters.js:187
msgid "Gets inherited"
msgstr "Öröklődött"
-#: part/models.py:3817
+#: part/models.py:3861
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:3822 part/templates/part/upload_bom.html:56
-#: templates/js/translated/bom.js:1016
+#: part/models.py:3866 part/templates/part/upload_bom.html:56
+#: templates/js/translated/bom.js:1034
msgid "Allow Variants"
msgstr "Változatok"
-#: part/models.py:3823
+#: part/models.py:3867
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:3909 stock/models.py:577
+#: part/models.py:3953 stock/models.py:577
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:3918 part/models.py:3920
+#: part/models.py:3962 part/models.py:3964
msgid "Sub part must be specified"
msgstr "Al alkatrészt kötelező megadni"
-#: part/models.py:4036
+#: part/models.py:4080
msgid "BOM Item Substitute"
msgstr "Alkatrészjegyzék tétel helyettesítő"
-#: part/models.py:4057
+#: part/models.py:4101
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:4070
+#: part/models.py:4114
msgid "Parent BOM item"
msgstr "Szülő alkatrészjegyzék tétel"
-#: part/models.py:4078
+#: part/models.py:4122
msgid "Substitute part"
msgstr "Helyettesítő alkatrész"
-#: part/models.py:4093
+#: part/models.py:4137
msgid "Part 1"
msgstr "1.rész"
-#: part/models.py:4097
+#: part/models.py:4141
msgid "Part 2"
msgstr "2.rész"
-#: part/models.py:4097
+#: part/models.py:4141
msgid "Select Related Part"
msgstr "Válassz kapcsolódó alkatrészt"
-#: part/models.py:4115
+#: part/models.py:4159
msgid "Part relationship cannot be created between a part and itself"
msgstr "Alkatrész kapcsolat nem hozható létre önmagával"
-#: part/models.py:4119
+#: part/models.py:4163
msgid "Duplicate relationship already exists"
msgstr "Már létezik duplikált alkatrész kapcsolat"
-#: part/serializers.py:152 part/serializers.py:175 stock/serializers.py:257
+#: part/serializers.py:152 part/serializers.py:175 stock/serializers.py:319
msgid "Purchase currency of this stock item"
msgstr "Beszerzési pénzneme ennek a készlet tételnek"
-#: part/serializers.py:302
+#: part/serializers.py:313
+msgid "No parts selected"
+msgstr ""
+
+#: part/serializers.py:321
+msgid "Select category"
+msgstr ""
+
+#: part/serializers.py:352
msgid "Original Part"
msgstr "Eredeti alkatrész"
-#: part/serializers.py:302
+#: part/serializers.py:352
msgid "Select original part to duplicate"
msgstr "Válassz eredeti alkatrészt a másoláshoz"
-#: part/serializers.py:307
+#: part/serializers.py:357
msgid "Copy Image"
msgstr "Kép másolása"
-#: part/serializers.py:307
+#: part/serializers.py:357
msgid "Copy image from original part"
msgstr "Kép másolása az eredeti alkatrészről"
-#: part/serializers.py:312 part/templates/part/detail.html:296
+#: part/serializers.py:362 part/templates/part/detail.html:277
msgid "Copy BOM"
msgstr "Alkatrészjegyzék másolása"
-#: part/serializers.py:312
+#: part/serializers.py:362
msgid "Copy bill of materials from original part"
msgstr "Alkatrészjegyzék másolása az eredeti alkatrészről"
-#: part/serializers.py:317
+#: part/serializers.py:367
msgid "Copy Parameters"
msgstr "Paraméterek másolása"
-#: part/serializers.py:317
+#: part/serializers.py:367
msgid "Copy parameter data from original part"
msgstr "Paraméterek másolása az eredeti alkatrészről"
-#: part/serializers.py:327
+#: part/serializers.py:377
msgid "Initial Stock Quantity"
msgstr "Kezdeti készlet mennyiség"
-#: part/serializers.py:327
+#: part/serializers.py:377
msgid "Specify initial stock quantity for this Part. If quantity is zero, no stock is added."
msgstr "Add meg a kezdeti készlet mennyiséget. Ha nulla akkor nem lesz készlet létrehozva."
-#: part/serializers.py:333
+#: part/serializers.py:383
msgid "Initial Stock Location"
msgstr "Kezdeti készlet hely"
-#: part/serializers.py:333
+#: part/serializers.py:383
msgid "Specify initial stock location for this Part"
msgstr "Add meg a kezdeti készlet helyét"
-#: part/serializers.py:343
+#: part/serializers.py:393
msgid "Select supplier (or leave blank to skip)"
msgstr "Válassz beszállítót (hagyd üresen ha nem kell létrehozni)"
-#: part/serializers.py:354
+#: part/serializers.py:404
msgid "Select manufacturer (or leave blank to skip)"
msgstr "Válassz gyártót (hagyd üresen ha nem kell létrehozni)"
-#: part/serializers.py:360
+#: part/serializers.py:410
msgid "Manufacturer part number"
msgstr "Gyártói cikkszám"
-#: part/serializers.py:367
+#: part/serializers.py:417
msgid "Selected company is not a valid supplier"
msgstr "A kiválasztott cég nem érvényes beszállító"
-#: part/serializers.py:375
+#: part/serializers.py:425
msgid "Selected company is not a valid manufacturer"
msgstr "A kiválasztott cég nem érvényes gyártó"
-#: part/serializers.py:387
+#: part/serializers.py:437
msgid "Manufacturer part matching this MPN already exists"
msgstr "Van már ilyen gyártói alkatrész"
-#: part/serializers.py:395
+#: part/serializers.py:445
msgid "Supplier part matching this SKU already exists"
msgstr "Van már ilyen beszállítói alkatrész"
-#: part/serializers.py:620 part/templates/part/copy_part.html:9
-#: templates/js/translated/part.js:449
+#: part/serializers.py:682 part/templates/part/copy_part.html:9
+#: templates/js/translated/part.js:448
msgid "Duplicate Part"
msgstr "Alkatrész másolása"
-#: part/serializers.py:620
+#: part/serializers.py:682
msgid "Copy initial data from another Part"
msgstr "Kezdeti adatok másolása egy másik alkatrészről"
-#: part/serializers.py:625 templates/js/translated/part.js:103
+#: part/serializers.py:687 templates/js/translated/part.js:102
msgid "Initial Stock"
msgstr "Kezdeti készlet"
-#: part/serializers.py:625
+#: part/serializers.py:687
msgid "Create Part with initial stock quantity"
msgstr "Kezdeti készlet mennyiség létrehozása"
-#: part/serializers.py:630
+#: part/serializers.py:692
msgid "Supplier Information"
msgstr "Beszállító információ"
-#: part/serializers.py:630
+#: part/serializers.py:692
msgid "Add initial supplier information for this part"
msgstr "Kezdeti beszállító adatok hozzáadása"
-#: part/serializers.py:636
+#: part/serializers.py:698
msgid "Copy Category Parameters"
msgstr "Kategória paraméterek másolása"
-#: part/serializers.py:637
+#: part/serializers.py:699
msgid "Copy parameter templates from selected part category"
msgstr "Paraméter sablonok másolása a kiválasztott alkatrész kategóriából"
-#: part/serializers.py:842
+#: part/serializers.py:904
msgid "Limit stocktake report to a particular part, and any variant parts"
msgstr "Leltár riport korlátozása bizonyos alkatrészre és variánsra"
-#: part/serializers.py:848
+#: part/serializers.py:910
msgid "Limit stocktake report to a particular part category, and any child categories"
msgstr "Leltár riport korlátozása bizonyos alkatrész kategóriára és az alatta lévőkre"
-#: part/serializers.py:854
+#: part/serializers.py:916
msgid "Limit stocktake report to a particular stock location, and any child locations"
msgstr "Leltár riport korlátozása bizonyos készlethelyre és az alatta lévőkre"
-#: part/serializers.py:859
+#: part/serializers.py:921
msgid "Generate Report"
msgstr "Riport létrehozása"
-#: part/serializers.py:860
+#: part/serializers.py:922
msgid "Generate report file containing calculated stocktake data"
msgstr "Riport fájl létrehozása a számított leltár adatokkal"
-#: part/serializers.py:865
+#: part/serializers.py:927
msgid "Update Parts"
msgstr "Alaktrészek frissítése"
-#: part/serializers.py:866
+#: part/serializers.py:928
msgid "Update specified parts with calculated stocktake data"
msgstr "Megadott alkatrészek frissítése a számított leltár adatokkal"
-#: part/serializers.py:874
+#: part/serializers.py:936
msgid "Stocktake functionality is not enabled"
msgstr "Leltár funkció nincs engedélyezve"
-#: part/serializers.py:963
+#: part/serializers.py:1025
msgid "Update"
msgstr "Frissítés"
-#: part/serializers.py:964
+#: part/serializers.py:1026
msgid "Update pricing for this part"
msgstr "Alkatrész árak frissítése"
-#: part/serializers.py:1246
+#: part/serializers.py:1308
msgid "Select part to copy BOM from"
msgstr "Válassz alkatrészt ahonnan az alkatrészjegyzéket másoljuk"
-#: part/serializers.py:1254
+#: part/serializers.py:1316
msgid "Remove Existing Data"
msgstr "Létező adat törlése"
-#: part/serializers.py:1255
+#: part/serializers.py:1317
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:1260
+#: part/serializers.py:1322
msgid "Include Inherited"
msgstr "Örököltekkel együtt"
-#: part/serializers.py:1261
+#: part/serializers.py:1323
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:1266
+#: part/serializers.py:1328
msgid "Skip Invalid Rows"
msgstr "Hibás sorok kihagyása"
-#: part/serializers.py:1267
+#: part/serializers.py:1329
msgid "Enable this option to skip invalid rows"
msgstr "Engedély a hibás sorok kihagyására"
-#: part/serializers.py:1272
+#: part/serializers.py:1334
msgid "Copy Substitute Parts"
msgstr "Helyettesítő alkatrészek másolása"
-#: part/serializers.py:1273
+#: part/serializers.py:1335
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:1313
+#: part/serializers.py:1375
msgid "Clear Existing BOM"
msgstr "Meglévő alkatrészjegyzék törlése"
-#: part/serializers.py:1314
+#: part/serializers.py:1376
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:1344
+#: part/serializers.py:1406
msgid "No part column specified"
msgstr "Nincs megadva alkatrész oszlop"
-#: part/serializers.py:1387
+#: part/serializers.py:1449
msgid "Multiple matching parts found"
msgstr "Több egyező alkatrész is található"
-#: part/serializers.py:1390
+#: part/serializers.py:1452
msgid "No matching part found"
msgstr "Nincs egyező alkatrész"
-#: part/serializers.py:1393
+#: part/serializers.py:1455
msgid "Part is not designated as a component"
msgstr "Az alkatrész nem lett összetevőként jelölve"
-#: part/serializers.py:1402
+#: part/serializers.py:1464
msgid "Quantity not provided"
msgstr "Mennyiség nincs megadva"
-#: part/serializers.py:1410
+#: part/serializers.py:1472
msgid "Invalid quantity"
msgstr "Érvénytelen mennyiség"
-#: part/serializers.py:1431
+#: part/serializers.py:1493
msgid "At least one BOM item is required"
msgstr "Legalább egy alkatrészjegyzék tétel szükséges"
@@ -6422,9 +6454,9 @@ msgstr "Alacsony készlet értesítés"
msgid "The available stock for {part.name} has fallen below the configured minimum level"
msgstr "A {part.name} alkatrész rendelkezésre álló készlete a megadott minimum alá csökkent"
-#: part/tasks.py:294 templates/js/translated/part.js:1040
-#: templates/js/translated/part.js:1793 templates/js/translated/part.js:1848
-#: templates/js/translated/purchase_order.js:2052
+#: part/tasks.py:294 templates/js/translated/part.js:1039
+#: templates/js/translated/part.js:1792 templates/js/translated/part.js:1847
+#: templates/js/translated/purchase_order.js:2062
msgid "Total Quantity"
msgstr "Teljes mennyiség"
@@ -6462,14 +6494,6 @@ 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:291
-msgid "BOM actions"
-msgstr "Alkatrészjegyzék műveletek"
-
-#: part/templates/part/bom.html:34
-msgid "Delete Items"
-msgstr "Tételek törlése"
-
#: part/templates/part/category.html:34
msgid "Perform stocktake for this part category"
msgstr "Alkatrész kategória leltározása"
@@ -6506,7 +6530,7 @@ msgstr "Kategória törlése"
msgid "Top level part category"
msgstr "Legfelső szintű alkatrész kategória"
-#: part/templates/part/category.html:121 part/templates/part/category.html:225
+#: part/templates/part/category.html:121 part/templates/part/category.html:206
#: part/templates/part/category_sidebar.html:7
msgid "Subcategories"
msgstr "Alkategóriák"
@@ -6519,33 +6543,20 @@ msgstr "Alkatrészek száma (alkategóriákkal együtt)"
msgid "Create new part"
msgstr "Alkatrész létrehozása"
-#: part/templates/part/category.html:165 templates/js/translated/bom.js:443
+#: part/templates/part/category.html:165 templates/js/translated/bom.js:444
msgid "New Part"
msgstr "Új alkatrész"
-#: part/templates/part/category.html:175 part/templates/part/detail.html:390
-#: part/templates/part/detail.html:421
-msgid "Options"
-msgstr "Opciók"
-
-#: part/templates/part/category.html:179
-msgid "Set category"
-msgstr "Kategória beállítása"
-
-#: part/templates/part/category.html:180
-msgid "Set Category"
-msgstr "Kategória beállítása"
-
-#: part/templates/part/category.html:208
+#: part/templates/part/category.html:191
#: templates/InvenTree/settings/sidebar.html:47
msgid "Part Parameters"
msgstr "Alkatrész paraméterek"
-#: part/templates/part/category.html:229
+#: part/templates/part/category.html:210
msgid "Create new part category"
msgstr "Alkatrész kategória létrehozása"
-#: part/templates/part/category.html:230
+#: part/templates/part/category.html:211
msgid "New Category"
msgstr "Új kategória"
@@ -6582,7 +6593,7 @@ msgid "Refresh scheduling data"
msgstr "Ütemezési adatok frissítése"
#: part/templates/part/detail.html:45 part/templates/part/prices.html:15
-#: templates/js/translated/tables.js:584
+#: templates/js/translated/tables.js:560
msgid "Refresh"
msgstr "Frissítés"
@@ -6593,7 +6604,7 @@ msgstr "Leltár információ hozzáadása"
#: part/templates/part/detail.html:67 part/templates/part/part_sidebar.html:50
#: stock/admin.py:130 templates/InvenTree/settings/part_stocktake.html:29
#: templates/InvenTree/settings/sidebar.html:51
-#: templates/js/translated/stock.js:1952 users/models.py:39
+#: templates/js/translated/stock.js:2109 users/models.py:39
msgid "Stocktake"
msgstr "Leltár"
@@ -6605,101 +6616,101 @@ msgstr "Alkatrész teszt sablonok"
msgid "Add Test Template"
msgstr "Teszt sablon hozzáadása"
-#: part/templates/part/detail.html:145 stock/templates/stock/item.html:53
+#: part/templates/part/detail.html:139 stock/templates/stock/item.html:49
msgid "Sales Order Allocations"
msgstr "Vevői rendeléshez foglalások"
-#: part/templates/part/detail.html:165
+#: part/templates/part/detail.html:156
msgid "Part Notes"
msgstr "Alkatrész megjegyzések"
-#: part/templates/part/detail.html:180
+#: part/templates/part/detail.html:171
msgid "Part Variants"
msgstr "Alkatrész változatok"
-#: part/templates/part/detail.html:184
+#: part/templates/part/detail.html:175
msgid "Create new variant"
msgstr "Új változat létrehozása"
-#: part/templates/part/detail.html:185
+#: part/templates/part/detail.html:176
msgid "New Variant"
msgstr "Új változat"
-#: part/templates/part/detail.html:212
+#: part/templates/part/detail.html:199
msgid "Add new parameter"
msgstr "Paraméter hozzáadása"
-#: part/templates/part/detail.html:249 part/templates/part/part_sidebar.html:58
+#: part/templates/part/detail.html:232 part/templates/part/part_sidebar.html:58
msgid "Related Parts"
msgstr "Kapcsolódó alkatrészek"
-#: part/templates/part/detail.html:253 part/templates/part/detail.html:254
+#: part/templates/part/detail.html:236 part/templates/part/detail.html:237
msgid "Add Related"
msgstr "Kapcsolódó hozzáadása"
-#: part/templates/part/detail.html:274 part/templates/part/part_sidebar.html:17
+#: part/templates/part/detail.html:255 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:279
+#: part/templates/part/detail.html:260
msgid "Export actions"
msgstr "Exportálási műveletek"
-#: part/templates/part/detail.html:283 templates/js/translated/bom.js:339
+#: part/templates/part/detail.html:264 templates/js/translated/bom.js:340
msgid "Export BOM"
msgstr "Alkatrészjegyzék exportálása"
-#: part/templates/part/detail.html:285
+#: part/templates/part/detail.html:266
msgid "Print BOM Report"
msgstr "Alkatrészjegyzék riport nyomtatása"
-#: part/templates/part/detail.html:295
+#: part/templates/part/detail.html:272
+msgid "BOM actions"
+msgstr "Alkatrészjegyzék műveletek"
+
+#: part/templates/part/detail.html:276
msgid "Upload BOM"
msgstr "Alkatrészjegyzék feltöltése"
-#: part/templates/part/detail.html:297
+#: part/templates/part/detail.html:278
msgid "Validate BOM"
msgstr "Alkatrészjegyzék jóváhagyása"
-#: part/templates/part/detail.html:302 part/templates/part/detail.html:303
-#: templates/js/translated/bom.js:1279 templates/js/translated/bom.js:1280
+#: part/templates/part/detail.html:283 part/templates/part/detail.html:284
+#: templates/js/translated/bom.js:1299 templates/js/translated/bom.js:1300
msgid "Add BOM Item"
msgstr "Alkatrészjegyzék tétel hozzáadása"
-#: part/templates/part/detail.html:316
+#: part/templates/part/detail.html:297
msgid "Assemblies"
msgstr "Gyártmányok"
-#: part/templates/part/detail.html:334
+#: part/templates/part/detail.html:313
msgid "Part Builds"
msgstr "Alkatrész gyártások"
-#: part/templates/part/detail.html:361 stock/templates/stock/item.html:38
+#: part/templates/part/detail.html:338 stock/templates/stock/item.html:36
msgid "Build Order Allocations"
msgstr "Gyártáshoz foglalások"
-#: part/templates/part/detail.html:377
+#: part/templates/part/detail.html:352
msgid "Part Suppliers"
msgstr "Alkatrész beszállítók"
-#: part/templates/part/detail.html:407
+#: part/templates/part/detail.html:372
msgid "Part Manufacturers"
msgstr "Alkatrész gyártók"
-#: part/templates/part/detail.html:423
-msgid "Delete manufacturer parts"
-msgstr "Gyártói alkatrészek törlése"
-
-#: part/templates/part/detail.html:707
+#: part/templates/part/detail.html:654
msgid "Related Part"
msgstr "Kapcsolódó alkatrész"
-#: part/templates/part/detail.html:715
+#: part/templates/part/detail.html:662
msgid "Add Related Part"
msgstr "Kapcsolódó alkatrész hozzáadása"
-#: part/templates/part/detail.html:800
+#: part/templates/part/detail.html:747
msgid "Add Test Result Template"
msgstr "Teszt eredmény sablon hozzáadása"
@@ -6733,13 +6744,13 @@ msgid "Download Part Import Template"
msgstr "Alkatrész import sablon letöltése"
#: part/templates/part/import_wizard/part_upload.html:92
-#: templates/js/translated/bom.js:308 templates/js/translated/bom.js:342
+#: templates/js/translated/bom.js:309 templates/js/translated/bom.js:343
#: templates/js/translated/order.js:129 templates/js/translated/tables.js:189
msgid "Format"
msgstr "Formátum"
#: part/templates/part/import_wizard/part_upload.html:93
-#: templates/js/translated/bom.js:309 templates/js/translated/bom.js:343
+#: templates/js/translated/bom.js:310 templates/js/translated/bom.js:344
#: templates/js/translated/order.js:130
msgid "Select file format"
msgstr "Fájlfomátum kiválasztása"
@@ -6780,7 +6791,7 @@ msgstr "Készlet számolása"
msgid "Transfer part stock"
msgstr "Készlet áthelyezése"
-#: part/templates/part/part_base.html:93
+#: part/templates/part/part_base.html:93 templates/js/translated/part.js:2264
msgid "Part actions"
msgstr "Készlet műveletek"
@@ -6825,10 +6836,10 @@ msgid "Part is not active"
msgstr "Az alkatrész nem aktív"
#: part/templates/part/part_base.html:148
-#: templates/js/translated/company.js:945
-#: templates/js/translated/company.js:1185
-#: templates/js/translated/model_renderers.js:273
-#: templates/js/translated/part.js:792 templates/js/translated/part.js:1192
+#: templates/js/translated/company.js:1318
+#: templates/js/translated/company.js:1606
+#: templates/js/translated/model_renderers.js:287
+#: templates/js/translated/part.js:791 templates/js/translated/part.js:1191
msgid "Inactive"
msgstr "Inaktív"
@@ -6851,7 +6862,7 @@ msgstr "Gyártáshoz lefoglalva"
msgid "Allocated to Sales Orders"
msgstr "Vevő rendeléshez lefoglalva"
-#: part/templates/part/part_base.html:237 templates/js/translated/bom.js:1178
+#: part/templates/part/part_base.html:237 templates/js/translated/bom.js:1198
msgid "Can Build"
msgstr "Gyártható"
@@ -6859,8 +6870,8 @@ msgstr "Gyártható"
msgid "Minimum stock level"
msgstr "Minimális készlet"
-#: part/templates/part/part_base.html:324 templates/js/translated/bom.js:1041
-#: templates/js/translated/part.js:1238 templates/js/translated/part.js:2304
+#: part/templates/part/part_base.html:324 templates/js/translated/bom.js:1059
+#: templates/js/translated/part.js:1237 templates/js/translated/part.js:2380
#: templates/js/translated/pricing.js:391
#: templates/js/translated/pricing.js:1040
msgid "Price Range"
@@ -6883,7 +6894,7 @@ msgstr "Alkatrész QR kódja"
msgid "Link Barcode to Part"
msgstr "Vonalkód hozzárendelése az alkatrészhez"
-#: part/templates/part/part_base.html:474 templates/js/translated/part.js:2191
+#: part/templates/part/part_base.html:474 templates/js/translated/part.js:2258
msgid "part"
msgstr "alkatrész"
@@ -6957,9 +6968,9 @@ msgstr "Változatok"
#: stock/templates/stock/stock_app_base.html:10
#: templates/InvenTree/search.html:153
#: templates/InvenTree/settings/sidebar.html:49
-#: templates/js/translated/part.js:1216 templates/js/translated/part.js:2120
-#: templates/js/translated/part.js:2284 templates/js/translated/stock.js:1022
-#: templates/js/translated/stock.js:1829 templates/navbar.html:31
+#: templates/js/translated/part.js:1215 templates/js/translated/part.js:2119
+#: templates/js/translated/part.js:2360 templates/js/translated/stock.js:1021
+#: templates/js/translated/stock.js:1986 templates/navbar.html:31
msgid "Stock"
msgstr "Készlet"
@@ -6990,9 +7001,9 @@ msgstr "Árazás frissítése"
#: part/templates/part/prices.html:25 stock/admin.py:129
#: stock/templates/stock/item_base.html:442
-#: templates/js/translated/company.js:1313
-#: templates/js/translated/company.js:1323
-#: templates/js/translated/stock.js:1982
+#: templates/js/translated/company.js:1734
+#: templates/js/translated/company.js:1744
+#: templates/js/translated/stock.js:2139
msgid "Last Updated"
msgstr "Utoljára módosítva"
@@ -7055,12 +7066,12 @@ 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:682
-#: templates/js/translated/part.js:2115 templates/js/translated/part.js:2117
+#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:681
+#: templates/js/translated/part.js:2114 templates/js/translated/part.js:2116
msgid "No Stock"
msgstr "Nincs készlet"
-#: part/templates/part/stock_count.html:9 templates/InvenTree/index.html:167
+#: part/templates/part/stock_count.html:9 templates/InvenTree/index.html:120
msgid "Low Stock"
msgstr "Alacsony készlet"
@@ -7164,7 +7175,7 @@ msgid "Match found for barcode data"
msgstr "Egyezés vonalkódra"
#: plugin/base/barcodes/api.py:120
-#: templates/js/translated/purchase_order.js:1372
+#: templates/js/translated/purchase_order.js:1387
msgid "Barcode matches existing item"
msgstr "Ez a vonalkód már egy másik tételé"
@@ -7227,43 +7238,43 @@ msgstr "URL az üzenetek küldéséhez egy a slack channel-re"
msgid "Open link"
msgstr "Link megnyitása"
-#: plugin/models.py:27
+#: plugin/models.py:28
msgid "Plugin Configuration"
msgstr "Plugin beállítás"
-#: plugin/models.py:28
+#: plugin/models.py:29
msgid "Plugin Configurations"
msgstr "Plugin beállítások"
-#: plugin/models.py:33
+#: plugin/models.py:34
msgid "Key"
msgstr "Kulcs"
-#: plugin/models.py:34
+#: plugin/models.py:35
msgid "Key of plugin"
msgstr "Plugin kulcsa"
-#: plugin/models.py:42
+#: plugin/models.py:43
msgid "PluginName of the plugin"
msgstr "PluginNeve a pluginnak"
-#: plugin/models.py:48
+#: plugin/models.py:49
msgid "Is the plugin active"
msgstr "Aktív-e a plugin"
-#: plugin/models.py:124
+#: plugin/models.py:125
msgid "Sample plugin"
msgstr "Példa plugin"
-#: plugin/models.py:133
+#: plugin/models.py:134
msgid "Builtin Plugin"
msgstr "Beépített plugin"
-#: plugin/models.py:159 templates/InvenTree/settings/plugin_settings.html:9
+#: plugin/models.py:160 templates/InvenTree/settings/plugin_settings.html:9
msgid "Plugin"
msgstr "Plugin"
-#: plugin/models.py:210
+#: plugin/models.py:211
msgid "Method"
msgstr "Módszer"
@@ -7415,47 +7426,47 @@ msgstr "Gyártás szűrők"
msgid "Build query filters (comma-separated list of key=value pairs"
msgstr "Gyártás lekérdezés szűrők (vesszővel elválasztott kulcs=érték párok"
-#: report/models.py:418
+#: report/models.py:420
msgid "Part Filters"
msgstr "Alkatrész szűrők"
-#: report/models.py:419
+#: report/models.py:421
msgid "Part query filters (comma-separated list of key=value pairs"
msgstr "Alkatrész lekérdezés szűrők (vesszővel elválasztott kulcs=érték párok"
-#: report/models.py:453
+#: report/models.py:455
msgid "Purchase order query filters"
msgstr "Megrendelés lekérdezés szűrők"
-#: report/models.py:491
+#: report/models.py:493
msgid "Sales order query filters"
msgstr "Vevő rendelés lekérdezés szűrők"
-#: report/models.py:529
+#: report/models.py:531
msgid "Return order query filters"
msgstr "Visszavételi utasítás lekérdezés szűrők"
-#: report/models.py:582
+#: report/models.py:584
msgid "Snippet"
msgstr "Részlet"
-#: report/models.py:583
+#: report/models.py:585
msgid "Report snippet file"
msgstr "Riport részlet fájl"
-#: report/models.py:587
+#: report/models.py:589
msgid "Snippet file description"
msgstr "Részlet fájl leírása"
-#: report/models.py:624
+#: report/models.py:626
msgid "Asset"
msgstr "Eszköz"
-#: report/models.py:625
+#: report/models.py:627
msgid "Report asset file"
msgstr "Riport asset fájl"
-#: report/models.py:632
+#: report/models.py:634
msgid "Asset file description"
msgstr "Asset fájl leírása"
@@ -7476,8 +7487,8 @@ msgstr "Beszállító törölve lett"
#: templates/js/translated/order.js:316 templates/js/translated/pricing.js:527
#: templates/js/translated/pricing.js:596
#: templates/js/translated/pricing.js:820
-#: templates/js/translated/purchase_order.js:2083
-#: templates/js/translated/sales_order.js:1817
+#: templates/js/translated/purchase_order.js:2093
+#: templates/js/translated/sales_order.js:1829
msgid "Unit Price"
msgstr "Egységár"
@@ -7489,23 +7500,23 @@ msgstr "Egyéb tételek"
#: report/templates/report/inventree_po_report_base.html:72
#: report/templates/report/inventree_so_report_base.html:72
-#: templates/js/translated/purchase_order.js:1985
-#: templates/js/translated/sales_order.js:1792
+#: templates/js/translated/purchase_order.js:1995
+#: templates/js/translated/sales_order.js:1804
msgid "Total"
msgstr "Összesen"
#: report/templates/report/inventree_return_order_report_base.html:25
#: report/templates/report/inventree_test_report_base.html:88
#: stock/models.py:725 stock/templates/stock/item_base.html:312
-#: templates/js/translated/build.js:502 templates/js/translated/build.js:1423
-#: templates/js/translated/build.js:1989
-#: templates/js/translated/model_renderers.js:201
-#: templates/js/translated/return_order.js:528
-#: templates/js/translated/return_order.js:708
-#: templates/js/translated/sales_order.js:300
-#: templates/js/translated/sales_order.js:1597
-#: templates/js/translated/sales_order.js:1682
-#: templates/js/translated/stock.js:563
+#: templates/js/translated/build.js:508 templates/js/translated/build.js:1306
+#: templates/js/translated/build.js:2281
+#: templates/js/translated/model_renderers.js:215
+#: templates/js/translated/return_order.js:540
+#: templates/js/translated/return_order.js:720
+#: templates/js/translated/sales_order.js:312
+#: templates/js/translated/sales_order.js:1609
+#: templates/js/translated/sales_order.js:1694
+#: templates/js/translated/stock.js:562
msgid "Serial Number"
msgstr "Sorozatszám"
@@ -7518,7 +7529,7 @@ msgid "Test Results"
msgstr "Teszt eredmények"
#: report/templates/report/inventree_test_report_base.html:102
-#: stock/models.py:2243 templates/js/translated/stock.js:1419
+#: stock/models.py:2243 templates/js/translated/stock.js:1418
msgid "Test"
msgstr "Teszt"
@@ -7549,8 +7560,8 @@ msgid "Installed Items"
msgstr "Beépített tételek"
#: report/templates/report/inventree_test_report_base.html:168
-#: stock/admin.py:104 templates/js/translated/stock.js:667
-#: templates/js/translated/stock.js:838 templates/js/translated/stock.js:2849
+#: stock/admin.py:104 templates/js/translated/stock.js:666
+#: templates/js/translated/stock.js:837 templates/js/translated/stock.js:2976
msgid "Serial"
msgstr "Sorozatszám"
@@ -7618,31 +7629,31 @@ msgstr "Törlés ha kimerül"
#: stock/admin.py:131 stock/models.py:789
#: stock/templates/stock/item_base.html:429
-#: templates/js/translated/stock.js:1966
+#: templates/js/translated/stock.js:2123
msgid "Expiry Date"
msgstr "Lejárati dátum"
-#: stock/api.py:420 templates/js/translated/table_filters.js:373
+#: stock/api.py:426 templates/js/translated/table_filters.js:379
msgid "External Location"
msgstr "Külső hely"
-#: stock/api.py:582
+#: stock/api.py:619
msgid "Quantity is required"
msgstr "Mennyiség megadása kötelező"
-#: stock/api.py:589
+#: stock/api.py:626
msgid "Valid part must be supplied"
msgstr "Egy érvényes alkatrészt meg kell adni"
-#: stock/api.py:615
+#: stock/api.py:652
msgid "The given supplier part does not exist"
msgstr "A megadott beszállítói alkatrész nem létezik"
-#: stock/api.py:624
+#: stock/api.py:661
msgid "The supplier part has a pack size defined, but flag use_pack_size not set"
msgstr ""
-#: stock/api.py:642
+#: stock/api.py:679
msgid "Serial numbers cannot be supplied for a non-trackable part"
msgstr "Sorozatszámot nem lehet megadni nem követésre kötelezett alkatrész esetén"
@@ -7653,7 +7664,7 @@ msgid "Stock Location"
msgstr "Készlet hely"
#: stock/models.py:55 stock/templates/stock/location.html:177
-#: templates/InvenTree/search.html:166 templates/js/translated/search.js:220
+#: templates/InvenTree/search.html:166 templates/js/translated/search.js:178
#: users/models.py:40
msgid "Stock Locations"
msgstr "Készlethelyek"
@@ -7671,8 +7682,8 @@ msgstr "Tulajdonos kiválasztása"
msgid "Stock items may not be directly located into a structural stock locations, but may be located to child locations."
msgstr "A szerkezeti raktári helyekre nem lehet direktben raktározni, csak az al-helyekre."
-#: stock/models.py:132 templates/js/translated/stock.js:2529
-#: templates/js/translated/table_filters.js:213
+#: stock/models.py:132 templates/js/translated/stock.js:2660
+#: templates/js/translated/table_filters.js:219
msgid "External"
msgstr "Külső"
@@ -7688,7 +7699,7 @@ msgstr "Nem lehet ezt a raktári helyet szerkezetivé tenni, mert már vannak it
msgid "Stock items cannot be located into structural stock locations!"
msgstr "A szerkezeti raktári helyre nem lehet készletet felvenni!"
-#: stock/models.py:583 stock/serializers.py:174
+#: stock/models.py:583 stock/serializers.py:223
msgid "Stock item cannot be created for virtual parts"
msgstr "Virtuális alkatrészből nem lehet készletet létrehozni"
@@ -7822,7 +7833,7 @@ msgstr "A sorozatszám egész számok listája kell legyen"
msgid "Quantity does not match serial numbers"
msgstr "A mennyiség nem egyezik a megadott sorozatszámok számával"
-#: stock/models.py:1403 stock/serializers.py:374
+#: stock/models.py:1403 stock/serializers.py:440
msgid "Serial numbers already exist"
msgstr "A sorozatszámok már léteznek"
@@ -7850,7 +7861,7 @@ msgstr "Készlet tétel gyártás alatt"
msgid "Serialized stock cannot be merged"
msgstr "Követésre kötelezett készlet nem vonható össze"
-#: stock/models.py:1496 stock/serializers.py:975
+#: stock/models.py:1496 stock/serializers.py:1092
msgid "Duplicate stock items"
msgstr "Duplikált készlet tételek vannak"
@@ -7902,132 +7913,141 @@ msgstr "Teszt eredmény melléklet"
msgid "Test notes"
msgstr "Tesztek megjegyzései"
-#: stock/serializers.py:76
+#: stock/serializers.py:121
msgid "Serial number is too large"
msgstr "Szériaszám túl nagy"
-#: stock/serializers.py:166
+#: stock/serializers.py:215
msgid "Use pack size when adding: the quantity defined is the number of packs"
msgstr ""
-#: stock/serializers.py:254
+#: stock/serializers.py:316
msgid "Purchase price of this stock item, per unit or pack"
msgstr ""
-#: stock/serializers.py:307
+#: stock/serializers.py:373
msgid "Enter number of stock items to serialize"
msgstr "Add meg hány készlet tételt lássunk el sorozatszámmal"
-#: stock/serializers.py:319
+#: stock/serializers.py:385
#, python-brace-format
msgid "Quantity must not exceed available stock quantity ({q})"
msgstr "A mennyiség nem lépheti túl a rendelkezésre álló készletet ({q})"
-#: stock/serializers.py:325
+#: stock/serializers.py:391
msgid "Enter serial numbers for new items"
msgstr "Írd be a sorozatszámokat az új tételekhez"
-#: stock/serializers.py:336 stock/serializers.py:932 stock/serializers.py:1174
+#: stock/serializers.py:402 stock/serializers.py:1049 stock/serializers.py:1291
msgid "Destination stock location"
msgstr "Cél készlet hely"
-#: stock/serializers.py:343
+#: stock/serializers.py:409
msgid "Optional note field"
msgstr "Opcionális megjegyzés mező"
-#: stock/serializers.py:353
+#: stock/serializers.py:419
msgid "Serial numbers cannot be assigned to this part"
msgstr "Sorozatszámokat nem lehet hozzárendelni ehhez az alkatrészhez"
-#: stock/serializers.py:414
+#: stock/serializers.py:480
msgid "Select stock item to install"
msgstr "Válaszd ki a beépítésre szánt készlet tételt"
-#: stock/serializers.py:427
-msgid "Stock item is unavailable"
-msgstr "Készlet tétel nem elérhető"
-
-#: stock/serializers.py:434
-msgid "Selected part is not in the Bill of Materials"
-msgstr "A kiválasztott alkatrész nincs az alkatrészjegyzékben"
-
-#: stock/serializers.py:471
-msgid "Destination location for uninstalled item"
-msgstr "Cél hely a kiszedett tételeknek"
-
-#: stock/serializers.py:476 stock/serializers.py:557
+#: stock/serializers.py:485 stock/serializers.py:543 stock/serializers.py:624
+#: stock/serializers.py:682
msgid "Add transaction note (optional)"
msgstr "Tranzakció megjegyzés hozzáadása (opcionális)"
-#: stock/serializers.py:510
+#: stock/serializers.py:494
+msgid "Stock item is unavailable"
+msgstr "Készlet tétel nem elérhető"
+
+#: stock/serializers.py:501
+msgid "Selected part is not in the Bill of Materials"
+msgstr "A kiválasztott alkatrész nincs az alkatrészjegyzékben"
+
+#: stock/serializers.py:538
+msgid "Destination location for uninstalled item"
+msgstr "Cél hely a kiszedett tételeknek"
+
+#: stock/serializers.py:577
msgid "Select part to convert stock item into"
msgstr "Válassz alkatrészt amire konvertáljuk a készletet"
-#: stock/serializers.py:521
+#: stock/serializers.py:588
msgid "Selected part is not a valid option for conversion"
msgstr "A kiválasztott alkatrész nem megfelelő a konverzióhoz"
-#: stock/serializers.py:552
+#: stock/serializers.py:619
msgid "Destination location for returned item"
msgstr "Cél hely a visszatérő tételeknek"
-#: stock/serializers.py:787
+#: stock/serializers.py:663
+msgid "Select stock items to change status"
+msgstr ""
+
+#: stock/serializers.py:670
+msgid "No stock items selected"
+msgstr ""
+
+#: stock/serializers.py:904
msgid "Part must be salable"
msgstr "Az alkatrésznek értékesíthetőnek kell lennie"
-#: stock/serializers.py:791
+#: stock/serializers.py:908
msgid "Item is allocated to a sales order"
msgstr "A tétel egy vevő rendeléshez foglalt"
-#: stock/serializers.py:795
+#: stock/serializers.py:912
msgid "Item is allocated to a build order"
msgstr "A tétel egy gyártási utasításhoz foglalt"
-#: stock/serializers.py:826
+#: stock/serializers.py:943
msgid "Customer to assign stock items"
msgstr "Vevő akihez rendeljük a készlet tételeket"
-#: stock/serializers.py:832
+#: stock/serializers.py:949
msgid "Selected company is not a customer"
msgstr "A kiválasztott cég nem egy vevő"
-#: stock/serializers.py:840
+#: stock/serializers.py:957
msgid "Stock assignment notes"
msgstr "Készlet hozzárendelés megjegyzései"
-#: stock/serializers.py:850 stock/serializers.py:1081
+#: stock/serializers.py:967 stock/serializers.py:1198
msgid "A list of stock items must be provided"
msgstr "A készlet tételek listáját meg kell adni"
-#: stock/serializers.py:939
+#: stock/serializers.py:1056
msgid "Stock merging notes"
msgstr "Készlet összevonás megjegyzései"
-#: stock/serializers.py:944
+#: stock/serializers.py:1061
msgid "Allow mismatched suppliers"
msgstr "Nem egyező beszállítók megengedése"
-#: stock/serializers.py:945
+#: stock/serializers.py:1062
msgid "Allow stock items with different supplier parts to be merged"
msgstr "Különböző beszállítói alkatrészekből származó készletek összevonásának engedélyezése"
-#: stock/serializers.py:950
+#: stock/serializers.py:1067
msgid "Allow mismatched status"
msgstr "Nem egyező állapotok megjelenítése"
-#: stock/serializers.py:951
+#: stock/serializers.py:1068
msgid "Allow stock items with different status codes to be merged"
msgstr "Különböző állapotú készletek összevonásának engedélyezése"
-#: stock/serializers.py:961
+#: stock/serializers.py:1078
msgid "At least two stock items must be provided"
msgstr "Legalább két készlet tételt meg kell adni"
-#: stock/serializers.py:1043
+#: stock/serializers.py:1160
msgid "StockItem primary key value"
msgstr "Készlet tétel elsődleges kulcs értéke"
-#: stock/serializers.py:1071
+#: stock/serializers.py:1188
msgid "Stock transaction notes"
msgstr "Készlet tranzakció megjegyzései"
@@ -8035,48 +8055,48 @@ msgstr "Készlet tranzakció megjegyzései"
msgid "Stock Tracking Information"
msgstr "Készlettörténeti információk"
-#: stock/templates/stock/item.html:69
+#: stock/templates/stock/item.html:63
msgid "Child Stock Items"
msgstr "Al-készlet tételek"
-#: stock/templates/stock/item.html:77
+#: stock/templates/stock/item.html:71
msgid "This stock item does not have any child items"
msgstr "Ez a készlet tétel nem tartalmaz egy altételt sem"
-#: stock/templates/stock/item.html:86
+#: stock/templates/stock/item.html:80
#: stock/templates/stock/stock_sidebar.html:12
msgid "Test Data"
msgstr "Teszt adatok"
-#: stock/templates/stock/item.html:90 stock/templates/stock/item_base.html:66
+#: stock/templates/stock/item.html:84 stock/templates/stock/item_base.html:66
msgid "Test Report"
msgstr "Teszt riport"
-#: stock/templates/stock/item.html:94 stock/templates/stock/item.html:288
+#: stock/templates/stock/item.html:88 stock/templates/stock/item.html:278
msgid "Delete Test Data"
msgstr "Teszt adatok törlése"
-#: stock/templates/stock/item.html:98
+#: stock/templates/stock/item.html:92
msgid "Add Test Data"
msgstr "Teszt adatok hozzáadása"
-#: stock/templates/stock/item.html:132
+#: stock/templates/stock/item.html:124
msgid "Stock Item Notes"
msgstr "Készlet tétel megjegyzések"
-#: stock/templates/stock/item.html:147
+#: stock/templates/stock/item.html:139
msgid "Installed Stock Items"
msgstr "Beépített készlet tételek"
-#: stock/templates/stock/item.html:152 templates/js/translated/stock.js:2996
+#: stock/templates/stock/item.html:144 templates/js/translated/stock.js:3123
msgid "Install Stock Item"
msgstr "Készlet tétel beépítése"
-#: stock/templates/stock/item.html:276
+#: stock/templates/stock/item.html:266
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:305 templates/js/translated/stock.js:1611
+#: stock/templates/stock/item.html:295 templates/js/translated/stock.js:1610
msgid "Add Test Result"
msgstr "Teszt eredmény hozzáadása"
@@ -8084,13 +8104,13 @@ msgstr "Teszt eredmény hozzáadása"
msgid "Locate stock item"
msgstr "Készlet tétel keresése"
-#: stock/templates/stock/item_base.html:52 templates/stock_table.html:21
+#: stock/templates/stock/item_base.html:52
msgid "Scan to Location"
msgstr "Áthelyezés kódolvasással"
#: stock/templates/stock/item_base.html:60
#: stock/templates/stock/location.html:69
-#: templates/js/translated/filters.js:322
+#: templates/js/translated/filters.js:432
msgid "Printing actions"
msgstr "Nyomtatási műveletek"
@@ -8099,15 +8119,17 @@ msgid "Stock adjustment actions"
msgstr "Készlet módosítási műveletek"
#: stock/templates/stock/item_base.html:80
-#: stock/templates/stock/location.html:88 templates/stock_table.html:35
+#: stock/templates/stock/location.html:88 templates/js/translated/stock.js:1735
msgid "Count stock"
msgstr "Leltározás"
-#: stock/templates/stock/item_base.html:82 templates/stock_table.html:33
+#: stock/templates/stock/item_base.html:82
+#: templates/js/translated/stock.js:1717
msgid "Add stock"
msgstr "Készlet növelése"
-#: stock/templates/stock/item_base.html:83 templates/stock_table.html:34
+#: stock/templates/stock/item_base.html:83
+#: templates/js/translated/stock.js:1726
msgid "Remove stock"
msgstr "Készlet csökkentése"
@@ -8116,11 +8138,12 @@ msgid "Serialize stock"
msgstr "Sorozatszámok előállítása"
#: stock/templates/stock/item_base.html:89
-#: stock/templates/stock/location.html:94 templates/stock_table.html:36
+#: stock/templates/stock/location.html:94 templates/js/translated/stock.js:1744
msgid "Transfer stock"
msgstr "Készlet áthelyezése"
-#: stock/templates/stock/item_base.html:92 templates/stock_table.html:39
+#: stock/templates/stock/item_base.html:92
+#: templates/js/translated/stock.js:1798
msgid "Assign to customer"
msgstr "Vevőhöz rendelése"
@@ -8160,6 +8183,11 @@ msgstr "Készlet tétel szerkesztése"
msgid "Delete stock item"
msgstr "Készlet tétel törlése"
+#: stock/templates/stock/item_base.html:170 templates/InvenTree/search.html:139
+#: templates/js/translated/build.js:2046 templates/navbar.html:38
+msgid "Build"
+msgstr "Gyártás"
+
#: stock/templates/stock/item_base.html:194
msgid "Parent Item"
msgstr "Szülő tétel"
@@ -8222,7 +8250,7 @@ msgid "Available Quantity"
msgstr "Elérhető mennyiség"
#: stock/templates/stock/item_base.html:394
-#: templates/js/translated/build.js:2015
+#: templates/js/translated/build.js:2306
msgid "No location set"
msgstr "Nincs beállítva hely"
@@ -8240,7 +8268,7 @@ msgid "This StockItem expired on %(item.expiry_date)s"
msgstr "Ez a készlet tétel lejárt %(item.expiry_date)s-n"
#: stock/templates/stock/item_base.html:433
-#: templates/js/translated/table_filters.js:381
+#: templates/js/translated/table_filters.js:387
msgid "Expired"
msgstr "Lejárt"
@@ -8250,7 +8278,7 @@ msgid "This StockItem expires on %(item.expiry_date)s"
msgstr "Ez a készlet tétel lejár %(item.expiry_date)s-n"
#: stock/templates/stock/item_base.html:435
-#: templates/js/translated/table_filters.js:387
+#: templates/js/translated/table_filters.js:393
msgid "Stale"
msgstr "Állott"
@@ -8259,7 +8287,7 @@ msgid "No stocktake performed"
msgstr "Még nem volt leltározva"
#: stock/templates/stock/item_base.html:503
-#: templates/js/translated/stock.js:1745
+#: templates/js/translated/stock.js:1865
msgid "stock item"
msgstr "készlet tétel"
@@ -8365,20 +8393,20 @@ msgstr "Új készlet hely létrehozása"
msgid "New Location"
msgstr "Új hely"
-#: stock/templates/stock/location.html:287
-#: templates/js/translated/stock.js:2318
+#: stock/templates/stock/location.html:278
+#: templates/js/translated/stock.js:2449
msgid "stock location"
msgstr "készlet hely"
-#: stock/templates/stock/location.html:304
+#: stock/templates/stock/location.html:295
msgid "Scanned stock container into this location"
msgstr "Készlet tároló bevételezve erre a helyre"
-#: stock/templates/stock/location.html:377
+#: stock/templates/stock/location.html:368
msgid "Stock Location QR Code"
msgstr "Készlet hely QR kódja"
-#: stock/templates/stock/location.html:388
+#: stock/templates/stock/location.html:379
msgid "Link Barcode to Stock Location"
msgstr "Vonalkód hozzárendelése a készlet helyhez"
@@ -8452,71 +8480,71 @@ msgstr "Az oldal jelenleg karbantartás alatt van, hamarosan újra használható
msgid "Index"
msgstr "Index"
-#: templates/InvenTree/index.html:89
+#: templates/InvenTree/index.html:39
msgid "Subscribed Parts"
msgstr "Értesítésre beállított alkatrészek"
-#: templates/InvenTree/index.html:102
+#: templates/InvenTree/index.html:53
msgid "Subscribed Categories"
msgstr "Értesítésre beállított kategóriák"
-#: templates/InvenTree/index.html:112
+#: templates/InvenTree/index.html:63
msgid "Latest Parts"
msgstr "Legújabb alkatrészek"
-#: templates/InvenTree/index.html:126
+#: templates/InvenTree/index.html:78
msgid "BOM Waiting Validation"
msgstr "Jóváhagyásra váró alkatrészjegyzék"
-#: templates/InvenTree/index.html:155
+#: templates/InvenTree/index.html:107
msgid "Recently Updated"
msgstr "Nemrég frissítve"
-#: templates/InvenTree/index.html:180
+#: templates/InvenTree/index.html:134
msgid "Depleted Stock"
msgstr "Kimerült készlet"
-#: templates/InvenTree/index.html:193
+#: templates/InvenTree/index.html:148
msgid "Required for Build Orders"
msgstr "Gyártáshoz szükséges"
-#: templates/InvenTree/index.html:208
+#: templates/InvenTree/index.html:156
msgid "Expired Stock"
msgstr "Lejárt készlet"
-#: templates/InvenTree/index.html:222
+#: templates/InvenTree/index.html:172
msgid "Stale Stock"
msgstr "Állott készlet"
-#: templates/InvenTree/index.html:247
+#: templates/InvenTree/index.html:199
msgid "Build Orders In Progress"
msgstr "Folyamatban lévő gyártások"
-#: templates/InvenTree/index.html:258
+#: templates/InvenTree/index.html:210
msgid "Overdue Build Orders"
msgstr "Késésben lévő gyártások"
-#: templates/InvenTree/index.html:278
+#: templates/InvenTree/index.html:230
msgid "Outstanding Purchase Orders"
msgstr "Kintlévő beszerzési rendelések"
-#: templates/InvenTree/index.html:289
+#: templates/InvenTree/index.html:241
msgid "Overdue Purchase Orders"
msgstr "Késésben lévő beszerzések"
-#: templates/InvenTree/index.html:310
+#: templates/InvenTree/index.html:262
msgid "Outstanding Sales Orders"
msgstr "Függő vevői rendelések"
-#: templates/InvenTree/index.html:321
+#: templates/InvenTree/index.html:273
msgid "Overdue Sales Orders"
msgstr "Késésben lévő vevői rendelések"
-#: templates/InvenTree/index.html:347
+#: templates/InvenTree/index.html:299
msgid "InvenTree News"
msgstr "InvenTree hírek"
-#: templates/InvenTree/index.html:349
+#: templates/InvenTree/index.html:301
msgid "Current News"
msgstr "Jelenlegi hírek"
@@ -8673,29 +8701,29 @@ msgstr "Plugin beállítások"
msgid "Changing the settings below require you to immediately restart the server. Do not change this while under active usage."
msgstr "Az alábbi beállítások módosításához a kiszolgáló azonnali újraindítása szükséges. Aktív használat közben ne változtass ezeken."
-#: templates/InvenTree/settings/plugin.html:37
+#: templates/InvenTree/settings/plugin.html:35
#: templates/InvenTree/settings/sidebar.html:64
msgid "Plugins"
msgstr "Pluginok"
-#: templates/InvenTree/settings/plugin.html:43
+#: templates/InvenTree/settings/plugin.html:41
#: templates/js/translated/plugin.js:151
msgid "Install Plugin"
msgstr "Plugin Telepítése"
-#: templates/InvenTree/settings/plugin.html:51
+#: templates/InvenTree/settings/plugin.html:49
msgid "External plugins are not enabled for this InvenTree installation"
msgstr "Külső pluginok nincsenek engedélyezve"
-#: templates/InvenTree/settings/plugin.html:70
+#: templates/InvenTree/settings/plugin.html:64
msgid "Plugin Error Stack"
msgstr "Plugin hibatároló"
-#: templates/InvenTree/settings/plugin.html:79
+#: templates/InvenTree/settings/plugin.html:73
msgid "Stage"
msgstr "Szakasz"
-#: templates/InvenTree/settings/plugin.html:81
+#: templates/InvenTree/settings/plugin.html:75
#: templates/js/translated/notification.js:75
msgid "Message"
msgstr "Üzenet"
@@ -8768,14 +8796,6 @@ msgstr "Commit hash"
msgid "Commit Message"
msgstr "Commit üzenet"
-#: templates/InvenTree/settings/plugin_settings.html:126
-msgid "Sign Status"
-msgstr "Aláírás státusza"
-
-#: templates/InvenTree/settings/plugin_settings.html:131
-msgid "Sign Key"
-msgstr "Aláíró kulcs"
-
#: templates/InvenTree/settings/po.html:7
msgid "Purchase Order Settings"
msgstr "Beszerzési rendelés beállításai"
@@ -8871,12 +8891,12 @@ msgid "No category parameter templates found"
msgstr "Nincs kategória paraméter sablon"
#: templates/InvenTree/settings/settings_staff_js.html:212
-#: templates/js/translated/part.js:1618
+#: templates/js/translated/part.js:1617
msgid "Edit Template"
msgstr "Sablon szerkesztése"
#: templates/InvenTree/settings/settings_staff_js.html:213
-#: templates/js/translated/part.js:1619
+#: templates/js/translated/part.js:1618
msgid "Delete Template"
msgstr "Sablon törlése"
@@ -8914,7 +8934,7 @@ msgid "Home Page"
msgstr "Főoldal"
#: templates/InvenTree/settings/sidebar.html:15
-#: templates/js/translated/tables.js:575 templates/navbar.html:107
+#: templates/js/translated/tables.js:551 templates/navbar.html:107
#: templates/search.html:8 templates/search_form.html:6
#: templates/search_form.html:7
msgid "Search"
@@ -8991,6 +9011,7 @@ msgid "Unverified"
msgstr "Nem ellenőrzött"
#: templates/InvenTree/settings/user.html:80
+#: templates/js/translated/company.js:984
msgid "Primary"
msgstr "Elsődleges"
@@ -9205,44 +9226,48 @@ msgstr "Naprakész"
msgid "Update Available"
msgstr "Frissítés elérhető"
-#: templates/about.html:42
+#: templates/about.html:43
+msgid "Commit Branch"
+msgstr ""
+
+#: templates/about.html:49
msgid "InvenTree Documentation"
msgstr "Inventree dokumentáció"
-#: templates/about.html:47
+#: templates/about.html:54
msgid "API Version"
msgstr "API verzió"
-#: templates/about.html:52
+#: templates/about.html:59
msgid "Python Version"
msgstr "Python verzió"
-#: templates/about.html:57
+#: templates/about.html:64
msgid "Django Version"
msgstr "Django verzió"
-#: templates/about.html:62
+#: templates/about.html:69
msgid "View Code on GitHub"
msgstr "Megtekintés a GitHubon"
-#: templates/about.html:67
+#: templates/about.html:74
msgid "Credits"
msgstr "Közreműködők"
-#: templates/about.html:72
+#: templates/about.html:79
msgid "Mobile App"
msgstr "Mobil alkalmazás"
-#: templates/about.html:77
+#: templates/about.html:84
msgid "Submit Bug Report"
msgstr "Hibabejelentés küldése"
-#: templates/about.html:84 templates/clip.html:4
+#: templates/about.html:91 templates/clip.html:4
#: templates/js/translated/helpers.js:585
msgid "copy to clipboard"
msgstr "vágólapra másolás"
-#: templates/about.html:84
+#: templates/about.html:91
msgid "copy version information"
msgstr "verzió információk másolása"
@@ -9436,14 +9461,6 @@ msgstr "Link hozzáadása"
msgid "Add Attachment"
msgstr "Melléklet hozzáadása"
-#: templates/attachment_table.html:11
-msgid "Delete selected attachments"
-msgstr "Kiválasztott mellékletek törlése"
-
-#: templates/attachment_table.html:12 templates/js/translated/attachment.js:129
-msgid "Delete Attachments"
-msgstr "Mellékletek törlése"
-
#: templates/barcode_data.html:5
msgid "Barcode Identifier"
msgstr "Vonalkód azonosító"
@@ -9488,7 +9505,7 @@ msgid "The following parts are low on required stock"
msgstr "A következő alkatrészek szükséges készlete alacsony"
#: templates/email/build_order_required_stock.html:18
-#: templates/js/translated/bom.js:1633
+#: templates/js/translated/bom.js:1653 templates/js/translated/build.js:2485
msgid "Required Quantity"
msgstr "Szükséges mennyiség"
@@ -9502,7 +9519,7 @@ msgid "Click on the following link to view this part"
msgstr "Klikk a következő linkre az alkatrész megjelenítéséhez"
#: templates/email/low_stock_notification.html:18
-#: templates/js/translated/part.js:3140
+#: templates/js/translated/part.js:3125
msgid "Minimum Quantity"
msgstr "Minimum mennyiség"
@@ -9574,23 +9591,35 @@ msgstr "Hiba kód"
msgid "All selected attachments will be deleted"
msgstr "Az összes kijelölt melléklet törlésre kerül"
-#: templates/js/translated/attachment.js:255
+#: templates/js/translated/attachment.js:129
+msgid "Delete Attachments"
+msgstr "Mellékletek törlése"
+
+#: templates/js/translated/attachment.js:205
+msgid "Delete attachments"
+msgstr ""
+
+#: templates/js/translated/attachment.js:253
+msgid "Attachment actions"
+msgstr ""
+
+#: templates/js/translated/attachment.js:275
msgid "No attachments found"
msgstr "Nem találhatók mellékletek"
-#: templates/js/translated/attachment.js:285
+#: templates/js/translated/attachment.js:305
msgid "Edit Attachment"
msgstr "Melléklet szerkesztése"
-#: templates/js/translated/attachment.js:326
+#: templates/js/translated/attachment.js:336
msgid "Upload Date"
msgstr "Feltöltés dátuma"
-#: templates/js/translated/attachment.js:346
+#: templates/js/translated/attachment.js:356
msgid "Edit attachment"
msgstr "Melléklet szerkesztése"
-#: templates/js/translated/attachment.js:354
+#: templates/js/translated/attachment.js:364
msgid "Delete attachment"
msgstr "Melléklet törlése"
@@ -9647,7 +9676,7 @@ msgstr "Ez törli a vonalkód hozzárendelést"
msgid "Unlink"
msgstr "Leválasztás"
-#: templates/js/translated/barcode.js:550 templates/js/translated/stock.js:1118
+#: templates/js/translated/barcode.js:550 templates/js/translated/stock.js:1117
msgid "Remove stock item"
msgstr "Készlet tétel törlése"
@@ -9705,775 +9734,869 @@ msgstr "Készlet áthelyezése a leolvasott helyre"
msgid "Barcode does not match a valid location"
msgstr "A vonalkód nem egyezik egy ismert hellyel sem"
-#: templates/js/translated/bom.js:77
+#: templates/js/translated/bom.js:78
msgid "Create BOM Item"
msgstr "Alkatrészjegyzék tétel létrehozása"
-#: templates/js/translated/bom.js:131
+#: templates/js/translated/bom.js:132
msgid "Display row data"
msgstr "Sor adatok mutatása"
-#: templates/js/translated/bom.js:187
+#: templates/js/translated/bom.js:188
msgid "Row Data"
msgstr "Sor adat"
-#: templates/js/translated/bom.js:188 templates/js/translated/bom.js:699
+#: templates/js/translated/bom.js:189 templates/js/translated/bom.js:700
#: templates/js/translated/modals.js:71 templates/js/translated/modals.js:622
#: templates/js/translated/modals.js:746 templates/js/translated/modals.js:1054
-#: templates/js/translated/purchase_order.js:791 templates/modals.html:15
+#: templates/js/translated/purchase_order.js:802 templates/modals.html:15
#: templates/modals.html:27 templates/modals.html:39 templates/modals.html:50
msgid "Close"
msgstr "Bezárás"
-#: templates/js/translated/bom.js:305
+#: templates/js/translated/bom.js:306
msgid "Download BOM Template"
msgstr "Alkarészjegyzék sablon letöltése"
-#: templates/js/translated/bom.js:350
+#: templates/js/translated/bom.js:351
msgid "Multi Level BOM"
msgstr "Többszintű alkatrészjegyzék"
-#: templates/js/translated/bom.js:351
+#: templates/js/translated/bom.js:352
msgid "Include BOM data for subassemblies"
msgstr "Alszerelvények alkatrészlistáinak felhasználása"
-#: templates/js/translated/bom.js:356
+#: templates/js/translated/bom.js:357
msgid "Levels"
msgstr "Szintek"
-#: templates/js/translated/bom.js:357
+#: templates/js/translated/bom.js:358
msgid "Select maximum number of BOM levels to export (0 = all levels)"
msgstr "Válaszd ki a maximum alkatrészjegyzék szintet amit exportáljunk (0=összes szintet)"
-#: templates/js/translated/bom.js:364
+#: templates/js/translated/bom.js:365
msgid "Include Alternative Parts"
msgstr "Alternatív alkatrészekkel együtt"
-#: templates/js/translated/bom.js:365
+#: templates/js/translated/bom.js:366
msgid "Include alternative parts in exported BOM"
msgstr "Alternatív alkatrészek megjelenítése az exportált alkatrészjegyzékben"
-#: templates/js/translated/bom.js:370
+#: templates/js/translated/bom.js:371
msgid "Include Parameter Data"
msgstr "Paraméter adattal együtt"
-#: templates/js/translated/bom.js:371
+#: templates/js/translated/bom.js:372
msgid "Include part parameter data in exported BOM"
msgstr "Alkatrész paraméter adatok megjelenítése az exportált alkatrészjegyzékben"
-#: templates/js/translated/bom.js:376
+#: templates/js/translated/bom.js:377
msgid "Include Stock Data"
msgstr "Készlet adatokkal együtt"
-#: templates/js/translated/bom.js:377
+#: templates/js/translated/bom.js:378
msgid "Include part stock data in exported BOM"
msgstr "Készlet adatok megjelenítése az exportált alkatrészjegyzékben"
-#: templates/js/translated/bom.js:382
+#: templates/js/translated/bom.js:383
msgid "Include Manufacturer Data"
msgstr "Gyártói adatokkal együtt"
-#: templates/js/translated/bom.js:383
+#: templates/js/translated/bom.js:384
msgid "Include part manufacturer data in exported BOM"
msgstr "Gyártói adatok megjelenítése az exportált alkatrészjegyzékben"
-#: templates/js/translated/bom.js:388
+#: templates/js/translated/bom.js:389
msgid "Include Supplier Data"
msgstr "Beszállítói adatokkal együtt"
-#: templates/js/translated/bom.js:389
+#: templates/js/translated/bom.js:390
msgid "Include part supplier data in exported BOM"
msgstr "Beszállítói adatok megjelenítése az exportált alkatrészjegyzékben"
-#: templates/js/translated/bom.js:394
+#: templates/js/translated/bom.js:395
msgid "Include Pricing Data"
msgstr "Ár adatokkal együtt"
-#: templates/js/translated/bom.js:395
+#: templates/js/translated/bom.js:396
msgid "Include part pricing data in exported BOM"
msgstr "Ár adatok megjelenítése az exportált alkatrészjegyzékben"
-#: templates/js/translated/bom.js:590
+#: templates/js/translated/bom.js:591
msgid "Remove substitute part"
msgstr "Helyettesítő alkatrész törlése"
-#: templates/js/translated/bom.js:644
+#: templates/js/translated/bom.js:645
msgid "Select and add a new substitute part using the input below"
msgstr "Válassz és adj hozzá új helyettesítő alkatrészt a lenti mezőben"
-#: templates/js/translated/bom.js:655
+#: templates/js/translated/bom.js:656
msgid "Are you sure you wish to remove this substitute part link?"
msgstr "Biztosan törölni akarod ezt a helyettesítő alkatrész hozzárendelést?"
-#: templates/js/translated/bom.js:661
+#: templates/js/translated/bom.js:662
msgid "Remove Substitute Part"
msgstr "Helyettesítő alkatrész törlése"
-#: templates/js/translated/bom.js:700
+#: templates/js/translated/bom.js:701
msgid "Add Substitute"
msgstr "Helyettesítő hozzáadása"
-#: templates/js/translated/bom.js:701
+#: templates/js/translated/bom.js:702
msgid "Edit BOM Item Substitutes"
msgstr "Alkatrészjegyzék tétel helyettesítők szerkesztése"
-#: templates/js/translated/bom.js:763
+#: templates/js/translated/bom.js:764
msgid "All selected BOM items will be deleted"
msgstr "Az összes kijelölt alkatrészjegyzék tétel törlésre kerül"
-#: templates/js/translated/bom.js:779
+#: templates/js/translated/bom.js:780
msgid "Delete selected BOM items?"
msgstr "Töröljük a kiválasztott alkatrészjegyzék tételeket?"
-#: templates/js/translated/bom.js:906
+#: templates/js/translated/bom.js:826
+msgid "Delete items"
+msgstr ""
+
+#: templates/js/translated/bom.js:924
msgid "Load BOM for subassembly"
msgstr "Alkatrészjegyzék betöltése az al-gyártmányhoz"
-#: templates/js/translated/bom.js:916
+#: templates/js/translated/bom.js:934
msgid "Substitutes Available"
msgstr "Vannak helyettesítők"
-#: templates/js/translated/bom.js:920 templates/js/translated/build.js:2090
+#: templates/js/translated/bom.js:938 templates/js/translated/build.js:2429
msgid "Variant stock allowed"
msgstr "Készletváltozatok engedélyezve"
-#: templates/js/translated/bom.js:984
+#: templates/js/translated/bom.js:1002
msgid "Substitutes"
msgstr "Helyettesítõk"
-#: templates/js/translated/bom.js:1104
+#: templates/js/translated/bom.js:1122
msgid "BOM pricing is complete"
msgstr "Alkatrészjegyzék árazása teljes"
-#: templates/js/translated/bom.js:1109
+#: templates/js/translated/bom.js:1127
msgid "BOM pricing is incomplete"
msgstr "Alkatrészjegyzék árazása nem teljes"
-#: templates/js/translated/bom.js:1116
+#: templates/js/translated/bom.js:1134
msgid "No pricing available"
msgstr "Nincsenek árak"
-#: templates/js/translated/bom.js:1147 templates/js/translated/build.js:2173
-#: templates/js/translated/sales_order.js:1887
+#: templates/js/translated/bom.js:1165 templates/js/translated/build.js:2523
+#: templates/js/translated/sales_order.js:1899
msgid "No Stock Available"
msgstr "Nincs szabad"
-#: templates/js/translated/bom.js:1152 templates/js/translated/build.js:2177
+#: templates/js/translated/bom.js:1170 templates/js/translated/build.js:2527
msgid "Includes variant and substitute stock"
msgstr "Változatokkal és helyettesítőkkel együtt"
-#: templates/js/translated/bom.js:1154 templates/js/translated/build.js:2179
-#: templates/js/translated/part.js:1230
+#: templates/js/translated/bom.js:1172 templates/js/translated/build.js:2529
+#: templates/js/translated/part.js:1229
msgid "Includes variant stock"
msgstr "Változatokkal együtt"
-#: templates/js/translated/bom.js:1156 templates/js/translated/build.js:2181
+#: templates/js/translated/bom.js:1174 templates/js/translated/build.js:2531
msgid "Includes substitute stock"
msgstr "Helyettesítőkkel együtt"
-#: templates/js/translated/bom.js:1184 templates/js/translated/build.js:2164
-#: templates/js/translated/build.js:2255
+#: templates/js/translated/bom.js:1204 templates/js/translated/build.js:2514
msgid "Consumable item"
msgstr "Fogyóeszköz tétel"
-#: templates/js/translated/bom.js:1244
+#: templates/js/translated/bom.js:1264
msgid "Validate BOM Item"
msgstr "Alkatrészjegyzék tétel jóváhagyása"
-#: templates/js/translated/bom.js:1246
+#: templates/js/translated/bom.js:1266
msgid "This line has been validated"
msgstr "Ez a sor jóvá lett hagyva"
-#: templates/js/translated/bom.js:1248
+#: templates/js/translated/bom.js:1268
msgid "Edit substitute parts"
msgstr "Helyettesítő alkatrészek szerkesztése"
-#: templates/js/translated/bom.js:1250 templates/js/translated/bom.js:1445
+#: templates/js/translated/bom.js:1270 templates/js/translated/bom.js:1465
msgid "Edit BOM Item"
msgstr "Alkatrészjegyzék tétel szerkesztése"
-#: templates/js/translated/bom.js:1252
+#: templates/js/translated/bom.js:1272
msgid "Delete BOM Item"
msgstr "Alkatrészjegyzék tétel törlése"
-#: templates/js/translated/bom.js:1272
+#: templates/js/translated/bom.js:1292
msgid "View BOM"
msgstr "Alkatrészjegyzék megtekintése"
-#: templates/js/translated/bom.js:1356 templates/js/translated/build.js:1927
+#: templates/js/translated/bom.js:1376
msgid "No BOM items found"
msgstr "Nem találhatók alkatrészjegyzék tételek"
-#: templates/js/translated/bom.js:1616 templates/js/translated/build.js:2073
+#: templates/js/translated/bom.js:1636 templates/js/translated/build.js:2414
msgid "Required Part"
msgstr "Szükséges alkatrész"
-#: templates/js/translated/bom.js:1642
+#: templates/js/translated/bom.js:1662
msgid "Inherited from parent BOM"
msgstr "Örökölve a szülő alkatrészjegyzéktől"
-#: templates/js/translated/build.js:126
+#: templates/js/translated/build.js:136
msgid "Edit Build Order"
msgstr "Gyártási utasítás szerkesztése"
-#: templates/js/translated/build.js:169
+#: templates/js/translated/build.js:179
msgid "Create Build Order"
msgstr "Gyártási utasítás létrehozása"
-#: templates/js/translated/build.js:202
+#: templates/js/translated/build.js:211
msgid "Cancel Build Order"
msgstr "Gyártási utasítás törlése"
-#: templates/js/translated/build.js:211
+#: templates/js/translated/build.js:220
msgid "Are you sure you wish to cancel this build?"
msgstr "Biztosan meg szeretnéd szakítani ezt a gyártást?"
-#: templates/js/translated/build.js:217
+#: templates/js/translated/build.js:226
msgid "Stock items have been allocated to this build order"
msgstr "Ehhez a gyártáshoz készlet lett hozzárendelve"
-#: templates/js/translated/build.js:224
+#: templates/js/translated/build.js:233
msgid "There are incomplete outputs remaining for this build order"
msgstr "Ennek a gyártásnak befejezetlen kimenetei vannak"
-#: templates/js/translated/build.js:276
+#: templates/js/translated/build.js:285
msgid "Build order is ready to be completed"
msgstr "Gyártási utasítás készen áll a befejezésre"
-#: templates/js/translated/build.js:284
+#: templates/js/translated/build.js:293
msgid "This build order cannot be completed as there are incomplete outputs"
msgstr "A rendelés nem jelölhető késznek mivel függő kimenetek vannak"
-#: templates/js/translated/build.js:289
+#: templates/js/translated/build.js:298
msgid "Build Order is incomplete"
msgstr "Gyártási utasítás befejezetlen"
-#: templates/js/translated/build.js:307
+#: templates/js/translated/build.js:316
msgid "Complete Build Order"
msgstr "Gyártási utasítás befejezése"
-#: templates/js/translated/build.js:348 templates/js/translated/stock.js:119
-#: templates/js/translated/stock.js:265
+#: templates/js/translated/build.js:357 templates/js/translated/stock.js:118
+#: templates/js/translated/stock.js:264
msgid "Next available serial number"
msgstr "Következő szabad sorozatszám"
-#: templates/js/translated/build.js:350 templates/js/translated/stock.js:121
-#: templates/js/translated/stock.js:267
+#: templates/js/translated/build.js:359 templates/js/translated/stock.js:120
+#: templates/js/translated/stock.js:266
msgid "Latest serial number"
msgstr "Legutolsó sorozatszám"
-#: templates/js/translated/build.js:359
+#: templates/js/translated/build.js:368
msgid "The Bill of Materials contains trackable parts"
msgstr "Az alkatrészjegyzék követésre kötelezett alkatrészeket tartalmaz"
-#: templates/js/translated/build.js:360
+#: templates/js/translated/build.js:369
msgid "Build outputs must be generated individually"
msgstr "A gyártási kimeneteket egyesével kell előállítani"
-#: templates/js/translated/build.js:368
+#: templates/js/translated/build.js:377
msgid "Trackable parts can have serial numbers specified"
msgstr "A követésre kötelezett alkatrészekhez sorozatszámot lehet rendelni"
-#: templates/js/translated/build.js:369
+#: templates/js/translated/build.js:378
msgid "Enter serial numbers to generate multiple single build outputs"
msgstr "Adj meg sorozatszámokat a több egyedi gyártási kimenet létrehozásához"
-#: templates/js/translated/build.js:376
+#: templates/js/translated/build.js:385
msgid "Create Build Output"
msgstr "Gyártási kimenet létrehozása"
-#: templates/js/translated/build.js:407
+#: templates/js/translated/build.js:416
msgid "Allocate stock items to this build output"
msgstr "Készlet tételek foglalása ehhez a gyártási kimenethez"
-#: templates/js/translated/build.js:418
-msgid "Unallocate stock from build output"
-msgstr "Készlet felszabadítása a gyártási kimenetből"
+#: templates/js/translated/build.js:424
+msgid "Deallocate stock from build output"
+msgstr ""
-#: templates/js/translated/build.js:427
+#: templates/js/translated/build.js:433
msgid "Complete build output"
msgstr "Gyártási kimenet befejezése"
-#: templates/js/translated/build.js:435
+#: templates/js/translated/build.js:441
msgid "Scrap build output"
msgstr "Gyártási kimenet selejtezése"
-#: templates/js/translated/build.js:442
+#: templates/js/translated/build.js:448
msgid "Delete build output"
msgstr "Gyártási kimenet törlése"
-#: templates/js/translated/build.js:462
-msgid "Are you sure you wish to unallocate stock items from this build?"
-msgstr "Biztosan szeretnéd a már lefoglalt készlet tételeket felszabadítani ebből a gyártási utasításból?"
+#: templates/js/translated/build.js:468
+msgid "Are you sure you wish to deallocate the selected stock items from this build?"
+msgstr ""
-#: templates/js/translated/build.js:480
-msgid "Unallocate Stock Items"
-msgstr "Készlet tételek felszabadítása"
+#: templates/js/translated/build.js:486
+msgid "Deallocate Stock Items"
+msgstr ""
-#: templates/js/translated/build.js:566 templates/js/translated/build.js:690
-#: templates/js/translated/build.js:812
+#: templates/js/translated/build.js:572 templates/js/translated/build.js:696
+#: templates/js/translated/build.js:818
msgid "Select Build Outputs"
msgstr "Gyártási kimenetek kiválasztása"
-#: templates/js/translated/build.js:567 templates/js/translated/build.js:691
-#: templates/js/translated/build.js:813
+#: templates/js/translated/build.js:573 templates/js/translated/build.js:697
+#: templates/js/translated/build.js:819
msgid "At least one build output must be selected"
msgstr "Legalább egy gyártási kimenetet ki kell választani"
-#: templates/js/translated/build.js:581
+#: templates/js/translated/build.js:587
msgid "Selected build outputs will be marked as complete"
msgstr ""
-#: templates/js/translated/build.js:585 templates/js/translated/build.js:715
-#: templates/js/translated/build.js:835
+#: templates/js/translated/build.js:591 templates/js/translated/build.js:721
+#: templates/js/translated/build.js:841
msgid "Output"
msgstr "Kimenet"
-#: templates/js/translated/build.js:609
+#: templates/js/translated/build.js:615
msgid "Complete Build Outputs"
msgstr "Gyártási kimenetek befejezése"
-#: templates/js/translated/build.js:706
+#: templates/js/translated/build.js:712
msgid "Selected build outputs will be marked as scrapped"
msgstr ""
-#: templates/js/translated/build.js:708
+#: templates/js/translated/build.js:714
msgid "Scrapped output are marked as rejected"
msgstr ""
-#: templates/js/translated/build.js:709
+#: templates/js/translated/build.js:715
msgid "Allocated stock items will no longer be available"
msgstr ""
-#: templates/js/translated/build.js:710
+#: templates/js/translated/build.js:716
msgid "The completion status of the build order will not be adjusted"
msgstr ""
-#: templates/js/translated/build.js:737
+#: templates/js/translated/build.js:743
msgid "Scrap Build Outputs"
msgstr "Gyártási kimenetek selejtezése"
-#: templates/js/translated/build.js:827
+#: templates/js/translated/build.js:833
msgid "Selected build outputs will be deleted"
msgstr ""
-#: templates/js/translated/build.js:829
+#: templates/js/translated/build.js:835
msgid "Build output data will be permanently deleted"
msgstr ""
-#: templates/js/translated/build.js:830
+#: templates/js/translated/build.js:836
msgid "Allocated stock items will be returned to stock"
msgstr ""
-#: templates/js/translated/build.js:848
+#: templates/js/translated/build.js:854
msgid "Delete Build Outputs"
msgstr "Gyártási kimenetek törlése"
-#: templates/js/translated/build.js:934
+#: templates/js/translated/build.js:941
msgid "No build order allocations found"
msgstr "Nincs gyártási utasításhoz történő foglalás"
-#: templates/js/translated/build.js:971
+#: templates/js/translated/build.js:970 templates/js/translated/build.js:2270
+msgid "Allocated Quantity"
+msgstr ""
+
+#: templates/js/translated/build.js:984
msgid "Location not specified"
msgstr "Hely nincs megadva"
-#: templates/js/translated/build.js:1047
+#: templates/js/translated/build.js:1006
+msgid "Complete outputs"
+msgstr "Befejezett kimenetek"
+
+#: templates/js/translated/build.js:1024
+msgid "Scrap outputs"
+msgstr "Gyártási kimenetek selejtezése"
+
+#: templates/js/translated/build.js:1042
+msgid "Delete outputs"
+msgstr "Kimenetek törlése"
+
+#: templates/js/translated/build.js:1100
msgid "build output"
msgstr "gyártás kimenet"
-#: templates/js/translated/build.js:1048
+#: templates/js/translated/build.js:1101
msgid "build outputs"
msgstr "gyártás kimenetek"
-#: templates/js/translated/build.js:1383
+#: templates/js/translated/build.js:1105
+msgid "Build output actions"
+msgstr ""
+
+#: templates/js/translated/build.js:1274
msgid "No active build outputs found"
msgstr "Nem található aktív gyártási kimenet"
-#: templates/js/translated/build.js:1457
-msgid "Allocated Stock"
-msgstr "Lefoglalt készlet"
+#: templates/js/translated/build.js:1329
+msgid "Allocated Lines"
+msgstr ""
-#: templates/js/translated/build.js:1464
-msgid "No tracked BOM items for this build"
-msgstr "Nincsenek követett alkatrészjegyzék tételek ehhez a gyártáshoz"
+#: templates/js/translated/build.js:1343
+msgid "Required Tests"
+msgstr ""
-#: templates/js/translated/build.js:1486
-msgid "Completed Tests"
-msgstr "Befejezett tesztek"
-
-#: templates/js/translated/build.js:1491
-msgid "No required tests for this build"
-msgstr "Nincsenek szükséges tesztek ehhez a gyártáshoz"
-
-#: templates/js/translated/build.js:2032 templates/js/translated/build.js:3056
-#: templates/js/translated/sales_order.js:1632
-msgid "Edit stock allocation"
-msgstr "Készlet foglalások szerkesztése"
-
-#: templates/js/translated/build.js:2034 templates/js/translated/build.js:3057
-#: templates/js/translated/sales_order.js:1633
-msgid "Delete stock allocation"
-msgstr "Készlet foglalások törlése"
-
-#: templates/js/translated/build.js:2050
-msgid "Edit Allocation"
-msgstr "Foglalás szerkesztése"
-
-#: templates/js/translated/build.js:2060
-msgid "Remove Allocation"
-msgstr "Foglalás törlése"
-
-#: templates/js/translated/build.js:2086
-msgid "Substitute parts available"
-msgstr "Vannak helyettesítő alkatrészek"
-
-#: templates/js/translated/build.js:2122
-msgid "Quantity Per"
-msgstr "Szükséges/db"
-
-#: templates/js/translated/build.js:2167
-#: templates/js/translated/sales_order.js:1894
-msgid "Insufficient stock available"
-msgstr "Nincs elegendő"
-
-#: templates/js/translated/build.js:2169
-#: templates/js/translated/sales_order.js:1892
-msgid "Sufficient stock available"
-msgstr "Van elegendő"
-
-#: templates/js/translated/build.js:2263
-#: templates/js/translated/sales_order.js:1993
-msgid "Build stock"
-msgstr "Gyártási készlet"
-
-#: templates/js/translated/build.js:2267 templates/stock_table.html:38
-msgid "Order stock"
-msgstr "Készlet rendelés"
-
-#: templates/js/translated/build.js:2270
-#: templates/js/translated/sales_order.js:1987
-msgid "Allocate stock"
-msgstr "Lefoglalt készlet"
-
-#: templates/js/translated/build.js:2310
-#: templates/js/translated/purchase_order.js:616
-#: templates/js/translated/sales_order.js:1159
+#: templates/js/translated/build.js:1502
+#: templates/js/translated/purchase_order.js:627
+#: templates/js/translated/sales_order.js:1171
msgid "Select Parts"
msgstr "Kiválasztott alkatrészek"
-#: templates/js/translated/build.js:2311
-#: templates/js/translated/sales_order.js:1160
+#: templates/js/translated/build.js:1503
+#: templates/js/translated/sales_order.js:1172
msgid "You must select at least one part to allocate"
msgstr "Legalább egy alkatrész választása szükséges a foglaláshoz"
-#: templates/js/translated/build.js:2359
-#: templates/js/translated/sales_order.js:1109
+#: templates/js/translated/build.js:1566
+#: templates/js/translated/sales_order.js:1121
msgid "Specify stock allocation quantity"
msgstr "Készlet foglalási mennyiség megadása"
-#: templates/js/translated/build.js:2438
+#: templates/js/translated/build.js:1643
msgid "All Parts Allocated"
msgstr "Minden alkatrész lefoglalva"
-#: templates/js/translated/build.js:2439
+#: templates/js/translated/build.js:1644
msgid "All selected parts have been fully allocated"
msgstr "Minden kiválasztott alkatrész teljesen lefoglalva"
-#: templates/js/translated/build.js:2453
-#: templates/js/translated/sales_order.js:1174
+#: templates/js/translated/build.js:1658
+#: templates/js/translated/sales_order.js:1186
msgid "Select source location (leave blank to take from all locations)"
msgstr "Válassz forrás helyet (vagy hagyd üresen ha bárhonnan)"
-#: templates/js/translated/build.js:2481
+#: templates/js/translated/build.js:1686
msgid "Allocate Stock Items to Build Order"
msgstr "Készlet foglalása a gyártási utasításhoz"
-#: templates/js/translated/build.js:2492
-#: templates/js/translated/sales_order.js:1271
+#: templates/js/translated/build.js:1697
+#: templates/js/translated/sales_order.js:1283
msgid "No matching stock locations"
msgstr "Nincs egyező készlethely"
-#: templates/js/translated/build.js:2565
-#: templates/js/translated/sales_order.js:1348
+#: templates/js/translated/build.js:1770
+#: templates/js/translated/sales_order.js:1360
msgid "No matching stock items"
msgstr "Nincs egyező készlet"
-#: templates/js/translated/build.js:2662
+#: templates/js/translated/build.js:1867
msgid "Automatic Stock Allocation"
msgstr "Automatikus készlet foglalás"
-#: templates/js/translated/build.js:2663
+#: templates/js/translated/build.js:1868
msgid "Stock items will be automatically allocated to this build order, according to the provided guidelines"
msgstr "A készlet automatikusan lefoglalásra kerül ehhez a gyártási utasításhoz, a következő feltételek szerint"
-#: templates/js/translated/build.js:2665
+#: templates/js/translated/build.js:1870
msgid "If a location is specified, stock will only be allocated from that location"
msgstr "Ha egy készlet hely meg van adva, akkor készlet csak arról a helyről lesz foglalva"
-#: templates/js/translated/build.js:2666
+#: templates/js/translated/build.js:1871
msgid "If stock is considered interchangeable, it will be allocated from the first location it is found"
msgstr "Ha a készlet helyettesíthetőnek minősül, akkor az első rendelkezésre álló helyről lesz lefoglalva"
-#: templates/js/translated/build.js:2667
+#: templates/js/translated/build.js:1872
msgid "If substitute stock is allowed, it will be used where stock of the primary part cannot be found"
msgstr "Ha a helyettesítő készlet engedélyezve van, akkor ott az lesz használva ha az elsődleges alkatrésznek nincs készlete"
-#: templates/js/translated/build.js:2694
+#: templates/js/translated/build.js:1899
msgid "Allocate Stock Items"
msgstr "Készlet tételek foglalása"
-#: templates/js/translated/build.js:2800
+#: templates/js/translated/build.js:2005
msgid "No builds matching query"
msgstr "Nincs a lekérdezéssel egyező gyártási utasítás"
-#: templates/js/translated/build.js:2835 templates/js/translated/part.js:2208
-#: templates/js/translated/part.js:2692 templates/js/translated/stock.js:1759
-#: templates/js/translated/stock.js:2458
+#: templates/js/translated/build.js:2040 templates/js/translated/build.js:2408
+#: templates/js/translated/part.js:2284 templates/js/translated/part.js:2677
+#: templates/js/translated/stock.js:1899 templates/js/translated/stock.js:2589
msgid "Select"
msgstr "Kiválaszt"
-#: templates/js/translated/build.js:2849
+#: templates/js/translated/build.js:2054
msgid "Build order is overdue"
msgstr "Gyártás késésben van"
-#: templates/js/translated/build.js:2883
+#: templates/js/translated/build.js:2100
msgid "Progress"
msgstr "Haladás"
-#: templates/js/translated/build.js:2919 templates/js/translated/stock.js:2779
+#: templates/js/translated/build.js:2136 templates/js/translated/stock.js:2910
msgid "No user information"
msgstr "Nincs felhasználói információ"
-#: templates/js/translated/build.js:2934
+#: templates/js/translated/build.js:2151
msgid "group"
msgstr "csoport"
-#: templates/js/translated/build.js:3033
-msgid "No parts allocated for"
-msgstr "Nincs lefoglalt alkatrész ehhez"
+#: templates/js/translated/build.js:2315
+#: templates/js/translated/sales_order.js:1644
+msgid "Edit stock allocation"
+msgstr "Készlet foglalások szerkesztése"
-#: templates/js/translated/company.js:87
+#: templates/js/translated/build.js:2316
+#: templates/js/translated/sales_order.js:1645
+msgid "Delete stock allocation"
+msgstr "Készlet foglalások törlése"
+
+#: templates/js/translated/build.js:2331
+msgid "Edit Allocation"
+msgstr "Foglalás szerkesztése"
+
+#: templates/js/translated/build.js:2343
+msgid "Remove Allocation"
+msgstr "Foglalás törlése"
+
+#: templates/js/translated/build.js:2384
+msgid "build line"
+msgstr ""
+
+#: templates/js/translated/build.js:2385
+msgid "build lines"
+msgstr ""
+
+#: templates/js/translated/build.js:2403
+msgid "No build lines found"
+msgstr ""
+
+#: templates/js/translated/build.js:2433 templates/js/translated/part.js:767
+#: templates/js/translated/part.js:1175
+msgid "Trackable part"
+msgstr "Követésre kötelezett alkatrész"
+
+#: templates/js/translated/build.js:2468
+msgid "Unit Quantity"
+msgstr ""
+
+#: templates/js/translated/build.js:2517
+#: templates/js/translated/sales_order.js:1906
+msgid "Insufficient stock available"
+msgstr "Nincs elegendő"
+
+#: templates/js/translated/build.js:2519
+#: templates/js/translated/sales_order.js:1904
+msgid "Sufficient stock available"
+msgstr "Van elegendő"
+
+#: templates/js/translated/build.js:2566
+msgid "Consumable Item"
+msgstr ""
+
+#: templates/js/translated/build.js:2571
+msgid "Tracked item"
+msgstr ""
+
+#: templates/js/translated/build.js:2578
+#: templates/js/translated/sales_order.js:2005
+msgid "Build stock"
+msgstr "Gyártási készlet"
+
+#: templates/js/translated/build.js:2583 templates/js/translated/stock.js:1779
+msgid "Order stock"
+msgstr "Készlet rendelés"
+
+#: templates/js/translated/build.js:2587
+#: templates/js/translated/sales_order.js:1999
+msgid "Allocate stock"
+msgstr "Lefoglalt készlet"
+
+#: templates/js/translated/build.js:2591
+msgid "Remove stock allocation"
+msgstr ""
+
+#: templates/js/translated/company.js:97
msgid "Add Manufacturer"
msgstr "Gyártó hozzáadása"
-#: templates/js/translated/company.js:100
-#: templates/js/translated/company.js:202
+#: templates/js/translated/company.js:110
+#: templates/js/translated/company.js:212
msgid "Add Manufacturer Part"
msgstr "Gyártói alkatrész hozzáadása"
-#: templates/js/translated/company.js:121
+#: templates/js/translated/company.js:131
msgid "Edit Manufacturer Part"
msgstr "Gyártói alkatrész szerkesztése"
-#: templates/js/translated/company.js:190
-#: templates/js/translated/purchase_order.js:94
+#: templates/js/translated/company.js:200
+#: templates/js/translated/purchase_order.js:93
msgid "Add Supplier"
msgstr "Beszállító hozzáadása"
-#: templates/js/translated/company.js:232
-#: templates/js/translated/purchase_order.js:338
+#: templates/js/translated/company.js:242
+#: templates/js/translated/purchase_order.js:349
msgid "Add Supplier Part"
msgstr "Beszállítói alkatrész hozzáadása"
-#: templates/js/translated/company.js:333
+#: templates/js/translated/company.js:343
msgid "All selected supplier parts will be deleted"
msgstr "Az összes kiválasztott beszállítói alkatrész törölve lesz"
-#: templates/js/translated/company.js:349
+#: templates/js/translated/company.js:359
msgid "Delete Supplier Parts"
msgstr "Beszállítói alkatrészek törlése"
-#: templates/js/translated/company.js:457
+#: templates/js/translated/company.js:464
msgid "Add new Company"
msgstr "Új cég hozzáadása"
-#: templates/js/translated/company.js:528
+#: templates/js/translated/company.js:535
msgid "Parts Supplied"
msgstr "Beszállított alkatrészek"
-#: templates/js/translated/company.js:537
+#: templates/js/translated/company.js:544
msgid "Parts Manufactured"
msgstr "Gyártott alkatrészek"
-#: templates/js/translated/company.js:552
+#: templates/js/translated/company.js:559
msgid "No company information found"
msgstr "Nem található céginformáció"
-#: templates/js/translated/company.js:601
+#: templates/js/translated/company.js:608
msgid "Create New Contact"
msgstr "Új névjegy létrehozása"
-#: templates/js/translated/company.js:617
-#: templates/js/translated/company.js:740
+#: templates/js/translated/company.js:624
+#: templates/js/translated/company.js:747
msgid "Edit Contact"
msgstr "Névjegy szerkesztése"
-#: templates/js/translated/company.js:654
+#: templates/js/translated/company.js:661
msgid "All selected contacts will be deleted"
msgstr "A kiválasztott névjegyek törlésre kerülnek"
-#: templates/js/translated/company.js:660
-#: templates/js/translated/company.js:724
+#: templates/js/translated/company.js:667
+#: templates/js/translated/company.js:731
msgid "Role"
msgstr "Szerepkör"
-#: templates/js/translated/company.js:668
+#: templates/js/translated/company.js:675
msgid "Delete Contacts"
msgstr "Névjegyek törlése"
-#: templates/js/translated/company.js:699
+#: templates/js/translated/company.js:706
msgid "No contacts found"
msgstr "Nem található névjegy"
-#: templates/js/translated/company.js:712
+#: templates/js/translated/company.js:719
msgid "Phone Number"
msgstr "Telefonszám"
-#: templates/js/translated/company.js:718
+#: templates/js/translated/company.js:725
msgid "Email Address"
msgstr "E-mail cím"
-#: templates/js/translated/company.js:744
+#: templates/js/translated/company.js:751
msgid "Delete Contact"
msgstr "Névjegy törlése"
-#: templates/js/translated/company.js:818
+#: templates/js/translated/company.js:886
+msgid "Create New Address"
+msgstr ""
+
+#: templates/js/translated/company.js:901
+#: templates/js/translated/company.js:1066
+msgid "Edit Address"
+msgstr ""
+
+#: templates/js/translated/company.js:936
+msgid "All selected addresses will be deleted"
+msgstr ""
+
+#: templates/js/translated/company.js:950
+msgid "Delete Addresses"
+msgstr ""
+
+#: templates/js/translated/company.js:977
+msgid "No addresses found"
+msgstr ""
+
+#: templates/js/translated/company.js:1020
+msgid "Postal city"
+msgstr ""
+
+#: templates/js/translated/company.js:1026
+msgid "State/province"
+msgstr ""
+
+#: templates/js/translated/company.js:1038
+msgid "Courier notes"
+msgstr ""
+
+#: templates/js/translated/company.js:1044
+msgid "Internal notes"
+msgstr ""
+
+#: templates/js/translated/company.js:1070
+msgid "Delete Address"
+msgstr ""
+
+#: templates/js/translated/company.js:1143
msgid "All selected manufacturer parts will be deleted"
msgstr "Az összes kijelölt gyártói alkatrész törlésre kerül"
-#: templates/js/translated/company.js:833
+#: templates/js/translated/company.js:1158
msgid "Delete Manufacturer Parts"
msgstr "Gyártói alkatrészek törlése"
-#: templates/js/translated/company.js:867
+#: templates/js/translated/company.js:1192
msgid "All selected parameters will be deleted"
msgstr "Az összes kijelölt paraméter törlésre kerül"
-#: templates/js/translated/company.js:881
+#: templates/js/translated/company.js:1206
msgid "Delete Parameters"
msgstr "Paraméterek törlése"
-#: templates/js/translated/company.js:917
+#: templates/js/translated/company.js:1222
+#: templates/js/translated/company.js:1510 templates/js/translated/part.js:2213
+msgid "Order parts"
+msgstr "Alkatrész rendelés"
+
+#: templates/js/translated/company.js:1239
+msgid "Delete manufacturer parts"
+msgstr "Gyártói alkatrészek törlése"
+
+#: templates/js/translated/company.js:1271
+msgid "Manufacturer part actions"
+msgstr ""
+
+#: templates/js/translated/company.js:1290
msgid "No manufacturer parts found"
msgstr "Nincs gyártói alkatrész"
-#: templates/js/translated/company.js:937
-#: templates/js/translated/company.js:1177 templates/js/translated/part.js:776
-#: templates/js/translated/part.js:1184
+#: templates/js/translated/company.js:1310
+#: templates/js/translated/company.js:1598 templates/js/translated/part.js:775
+#: templates/js/translated/part.js:1183
msgid "Template part"
msgstr "Sablon alkatrész"
-#: templates/js/translated/company.js:941
-#: templates/js/translated/company.js:1181 templates/js/translated/part.js:780
-#: templates/js/translated/part.js:1188
+#: templates/js/translated/company.js:1314
+#: templates/js/translated/company.js:1602 templates/js/translated/part.js:779
+#: templates/js/translated/part.js:1187
msgid "Assembled part"
msgstr "Gyártmány alkatrész"
-#: templates/js/translated/company.js:1061 templates/js/translated/part.js:1437
+#: templates/js/translated/company.js:1434 templates/js/translated/part.js:1436
msgid "No parameters found"
msgstr "Nem található paraméter"
-#: templates/js/translated/company.js:1096 templates/js/translated/part.js:1500
+#: templates/js/translated/company.js:1469 templates/js/translated/part.js:1499
msgid "Edit parameter"
msgstr "Paraméter szerkesztése"
-#: templates/js/translated/company.js:1097 templates/js/translated/part.js:1501
+#: templates/js/translated/company.js:1470 templates/js/translated/part.js:1500
msgid "Delete parameter"
msgstr "Paraméter törlése"
-#: templates/js/translated/company.js:1114 templates/js/translated/part.js:1407
+#: templates/js/translated/company.js:1487 templates/js/translated/part.js:1406
msgid "Edit Parameter"
msgstr "Paraméter szerkesztése"
-#: templates/js/translated/company.js:1123 templates/js/translated/part.js:1522
+#: templates/js/translated/company.js:1496 templates/js/translated/part.js:1521
msgid "Delete Parameter"
msgstr "Paraméter törlése"
-#: templates/js/translated/company.js:1156
+#: templates/js/translated/company.js:1527
+msgid "Delete supplier parts"
+msgstr "Beszállítói alkatrész törlése"
+
+#: templates/js/translated/company.js:1577
msgid "No supplier parts found"
msgstr "Nincs beszállítói alkatrész"
-#: templates/js/translated/company.js:1274
+#: templates/js/translated/company.js:1695
msgid "Base Units"
msgstr ""
-#: templates/js/translated/company.js:1304
+#: templates/js/translated/company.js:1725
msgid "Availability"
msgstr "Elérhetőség"
-#: templates/js/translated/company.js:1335
+#: templates/js/translated/company.js:1756
msgid "Edit supplier part"
msgstr "Beszállítói alkatrész szerkesztése"
-#: templates/js/translated/company.js:1336
+#: templates/js/translated/company.js:1757
msgid "Delete supplier part"
msgstr "Beszállítói alkatrész törlése"
-#: templates/js/translated/company.js:1389
+#: templates/js/translated/company.js:1810
#: templates/js/translated/pricing.js:694
msgid "Delete Price Break"
msgstr "Ársáv törlése"
-#: templates/js/translated/company.js:1399
+#: templates/js/translated/company.js:1820
#: templates/js/translated/pricing.js:712
msgid "Edit Price Break"
msgstr "Ársáv szerkesztése"
-#: templates/js/translated/company.js:1414
+#: templates/js/translated/company.js:1835
msgid "No price break information found"
msgstr "Nincs ársáv információ"
-#: templates/js/translated/company.js:1443
+#: templates/js/translated/company.js:1864
msgid "Last updated"
msgstr "Utoljára módosítva"
-#: templates/js/translated/company.js:1450
+#: templates/js/translated/company.js:1871
msgid "Edit price break"
msgstr "Ársáv szerkesztése"
-#: templates/js/translated/company.js:1451
+#: templates/js/translated/company.js:1872
msgid "Delete price break"
msgstr "Ársáv törlése"
-#: templates/js/translated/filters.js:186
-#: templates/js/translated/filters.js:550
+#: templates/js/translated/filters.js:187
+#: templates/js/translated/filters.js:673
msgid "true"
msgstr "igaz"
-#: templates/js/translated/filters.js:190
-#: templates/js/translated/filters.js:551
+#: templates/js/translated/filters.js:191
+#: templates/js/translated/filters.js:674
msgid "false"
msgstr "hamis"
-#: templates/js/translated/filters.js:214
+#: templates/js/translated/filters.js:215
msgid "Select filter"
msgstr "Szűrők kiválasztása"
-#: templates/js/translated/filters.js:328
+#: templates/js/translated/filters.js:438
msgid "Print Labels"
msgstr "Címkék nyomtatása"
-#: templates/js/translated/filters.js:332
+#: templates/js/translated/filters.js:442
msgid "Print Reports"
msgstr "Riportok nyomtatása"
-#: templates/js/translated/filters.js:344
+#: templates/js/translated/filters.js:454
msgid "Download table data"
msgstr "Táblázat letöltése"
-#: templates/js/translated/filters.js:351
+#: templates/js/translated/filters.js:461
msgid "Reload table data"
msgstr "Táblázat frissítése"
-#: templates/js/translated/filters.js:360
+#: templates/js/translated/filters.js:470
msgid "Add new filter"
msgstr "Új szűrő hozzáadása"
-#: templates/js/translated/filters.js:368
+#: templates/js/translated/filters.js:478
msgid "Clear all filters"
msgstr "Összes szűrő törlése"
-#: templates/js/translated/filters.js:460
+#: templates/js/translated/filters.js:583
msgid "Create filter"
msgstr "Szűrő létrehozása"
@@ -10498,6 +10621,12 @@ msgstr "Törlés nem engedélyezett"
msgid "View operation not allowed"
msgstr "Megtekintés nem engedélyezett"
+#: templates/js/translated/forms.js:506 templates/js/translated/helpers.js:105
+#: templates/js/translated/part.js:369 templates/js/translated/pricing.js:629
+#: templates/js/translated/stock.js:215 users/models.py:253
+msgid "Delete"
+msgstr "Törlés"
+
#: templates/js/translated/forms.js:752
msgid "Keep this form open"
msgstr "Form nyitva tartása"
@@ -10515,23 +10644,23 @@ msgstr "Form hibák vannak"
msgid "No results found"
msgstr "Nincs eredmény"
-#: templates/js/translated/forms.js:2071 templates/js/translated/search.js:281
+#: templates/js/translated/forms.js:2071 templates/js/translated/search.js:239
msgid "Searching"
msgstr "Keresés"
-#: templates/js/translated/forms.js:2276
+#: templates/js/translated/forms.js:2285
msgid "Clear input"
msgstr "Bevitel törlése"
-#: templates/js/translated/forms.js:2733
+#: templates/js/translated/forms.js:2742
msgid "File Column"
msgstr "Fájl oszlop"
-#: templates/js/translated/forms.js:2733
+#: templates/js/translated/forms.js:2742
msgid "Field Name"
msgstr "Mező név"
-#: templates/js/translated/forms.js:2745
+#: templates/js/translated/forms.js:2754
msgid "Select Columns"
msgstr "Oszlopok kiválasztása"
@@ -10551,6 +10680,14 @@ msgstr ""
msgid "False"
msgstr ""
+#: templates/js/translated/index.js:99
+msgid "No parts required for builds"
+msgstr ""
+
+#: templates/js/translated/index.js:125
+msgid "Allocated Stock"
+msgstr ""
+
#: templates/js/translated/label.js:58
msgid "Select Printer"
msgstr "Nyomtató kiválasztása"
@@ -10652,7 +10789,7 @@ msgstr "Nem találhatók hírek"
#: templates/js/translated/news.js:38
#: templates/js/translated/notification.js:45
-#: templates/js/translated/part.js:1577
+#: templates/js/translated/part.js:1576
msgid "ID"
msgstr "Azonosító"
@@ -10701,7 +10838,7 @@ msgid "Delete Line"
msgstr "Sor törlése"
#: templates/js/translated/order.js:281
-#: templates/js/translated/purchase_order.js:1958
+#: templates/js/translated/purchase_order.js:1968
msgid "No line items found"
msgstr "Nem találhatók sortételek"
@@ -10717,363 +10854,355 @@ msgstr "Sor szerkesztése"
msgid "Delete line"
msgstr "Sor törlése"
-#: templates/js/translated/part.js:91
+#: templates/js/translated/part.js:90
msgid "Part Attributes"
msgstr "Alkatrész tulajdonságok"
-#: templates/js/translated/part.js:95
+#: templates/js/translated/part.js:94
msgid "Part Creation Options"
msgstr "Alkatrész létrehozási opciók"
-#: templates/js/translated/part.js:99
+#: templates/js/translated/part.js:98
msgid "Part Duplication Options"
msgstr "Alkatrész másolási opciók"
-#: templates/js/translated/part.js:122
+#: templates/js/translated/part.js:121
msgid "Add Part Category"
msgstr "Alkatrész kategória hozzáadása"
-#: templates/js/translated/part.js:294
+#: templates/js/translated/part.js:293
msgid "Parent part category"
msgstr "Felsőbb szintű alkatrész kategória"
-#: templates/js/translated/part.js:310 templates/js/translated/stock.js:147
+#: templates/js/translated/part.js:309 templates/js/translated/stock.js:146
msgid "Icon (optional) - Explore all available icons on"
msgstr "Ikon (opcionális) - Az összes ikon felfedezése itt"
-#: templates/js/translated/part.js:330
+#: templates/js/translated/part.js:329
msgid "Create Part Category"
msgstr "Alkatrész kategória létrehozása"
-#: templates/js/translated/part.js:333
+#: templates/js/translated/part.js:332
msgid "Create new category after this one"
msgstr "Új kategória létrehozása ez után"
-#: templates/js/translated/part.js:334
+#: templates/js/translated/part.js:333
msgid "Part category created"
msgstr "Alkatrész kategória létrehozva"
-#: templates/js/translated/part.js:348
+#: templates/js/translated/part.js:347
msgid "Edit Part Category"
msgstr "Alkatrész kategória szerkesztése"
-#: templates/js/translated/part.js:361
+#: templates/js/translated/part.js:360
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:366
+#: templates/js/translated/part.js:365
msgid "Move to parent category"
msgstr "Áthelyezés fentebbi kategóriába"
-#: templates/js/translated/part.js:375
+#: templates/js/translated/part.js:374
msgid "Delete Part Category"
msgstr "Alkatrész kategória törlése"
-#: templates/js/translated/part.js:379
+#: templates/js/translated/part.js:378
msgid "Action for parts in this category"
msgstr "A kategóriában lévő alkatrészek kezelése"
-#: templates/js/translated/part.js:384
+#: templates/js/translated/part.js:383
msgid "Action for child categories"
msgstr "Alkategóriák kezelése"
-#: templates/js/translated/part.js:408
+#: templates/js/translated/part.js:407
msgid "Create Part"
msgstr "Alkatrész létrehozása"
-#: templates/js/translated/part.js:410
+#: templates/js/translated/part.js:409
msgid "Create another part after this one"
msgstr "Új alkatrész létrehozása ez után"
-#: templates/js/translated/part.js:411
+#: templates/js/translated/part.js:410
msgid "Part created successfully"
msgstr "Alkatrész sikeresen létrehozva"
-#: templates/js/translated/part.js:439
+#: templates/js/translated/part.js:438
msgid "Edit Part"
msgstr "Alkatrész szerkesztése"
-#: templates/js/translated/part.js:441
+#: templates/js/translated/part.js:440
msgid "Part edited"
msgstr "Alkatrész módosítva"
-#: templates/js/translated/part.js:452
+#: templates/js/translated/part.js:451
msgid "Create Part Variant"
msgstr "Alkatrész változat létrehozása"
-#: templates/js/translated/part.js:509
+#: templates/js/translated/part.js:508
msgid "Active Part"
msgstr "Aktív alkatrész"
-#: templates/js/translated/part.js:510
+#: templates/js/translated/part.js:509
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:524
+#: templates/js/translated/part.js:523
msgid "Deleting this part cannot be reversed"
msgstr "Ezen alkatrész törlése nem vonható vissza"
-#: templates/js/translated/part.js:526
+#: templates/js/translated/part.js:525
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:527
+#: templates/js/translated/part.js:526
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:528
+#: templates/js/translated/part.js:527
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:535
+#: templates/js/translated/part.js:534
msgid "Delete Part"
msgstr "Alkatrész törlése"
-#: templates/js/translated/part.js:571
+#: templates/js/translated/part.js:570
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:573
+#: templates/js/translated/part.js:572
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:578
+#: templates/js/translated/part.js:577
msgid "Subscribe to notifications for this item"
msgstr "Értesítések kérése erre a tételre"
-#: templates/js/translated/part.js:580
+#: templates/js/translated/part.js:579
msgid "You have unsubscribed to notifications for this item"
msgstr "Értesítések letiltva erre a tételre"
-#: templates/js/translated/part.js:597
+#: templates/js/translated/part.js:596
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:607
+#: templates/js/translated/part.js:606
msgid "Validate Bill of Materials"
msgstr "Alkatrészjegyzék jóváhagyása"
-#: templates/js/translated/part.js:610
+#: templates/js/translated/part.js:609
msgid "Validated Bill of Materials"
msgstr "Alkatrészjegyzék jóvá lett hagyva"
-#: templates/js/translated/part.js:635
+#: templates/js/translated/part.js:634
msgid "Copy Bill of Materials"
msgstr "Alkatrészjegyzék másolása"
-#: templates/js/translated/part.js:663
-#: templates/js/translated/table_filters.js:660
+#: templates/js/translated/part.js:662
+#: templates/js/translated/table_filters.js:682
msgid "Low stock"
msgstr "Alacsony készlet"
-#: templates/js/translated/part.js:666
+#: templates/js/translated/part.js:665
msgid "No stock available"
msgstr "Nincs szabad"
-#: templates/js/translated/part.js:726
+#: templates/js/translated/part.js:725
msgid "Demand"
msgstr "Igény"
-#: templates/js/translated/part.js:749
+#: templates/js/translated/part.js:748
msgid "Unit"
msgstr "Me"
-#: templates/js/translated/part.js:768 templates/js/translated/part.js:1176
-msgid "Trackable part"
-msgstr "Követésre kötelezett alkatrész"
-
-#: templates/js/translated/part.js:772 templates/js/translated/part.js:1180
+#: templates/js/translated/part.js:771 templates/js/translated/part.js:1179
msgid "Virtual part"
msgstr "Virtuális alkatrész"
-#: templates/js/translated/part.js:784
+#: templates/js/translated/part.js:783
msgid "Subscribed part"
msgstr "Értesítésre beállított alkatrész"
-#: templates/js/translated/part.js:788
+#: templates/js/translated/part.js:787
msgid "Salable part"
msgstr "Értékesíthető alkatrész"
-#: templates/js/translated/part.js:863
+#: templates/js/translated/part.js:862
msgid "Schedule generation of a new stocktake report."
msgstr "Új leltár riport ütemezése."
-#: templates/js/translated/part.js:863
+#: templates/js/translated/part.js:862
msgid "Once complete, the stocktake report will be available for download."
msgstr "Amint elkészül, az új leltár riport letölthető lesz."
-#: templates/js/translated/part.js:871
+#: templates/js/translated/part.js:870
msgid "Generate Stocktake Report"
msgstr "Leltár riport létrehozása"
-#: templates/js/translated/part.js:875
+#: templates/js/translated/part.js:874
msgid "Stocktake report scheduled"
msgstr "Leltár riport beütemezve"
-#: templates/js/translated/part.js:1024
+#: templates/js/translated/part.js:1023
msgid "No stocktake information available"
msgstr "Nincs elérhető leltár előzmény"
-#: templates/js/translated/part.js:1082 templates/js/translated/part.js:1118
+#: templates/js/translated/part.js:1081 templates/js/translated/part.js:1117
msgid "Edit Stocktake Entry"
msgstr "Leltár bejegyzés szerkesztése"
-#: templates/js/translated/part.js:1086 templates/js/translated/part.js:1128
+#: templates/js/translated/part.js:1085 templates/js/translated/part.js:1127
msgid "Delete Stocktake Entry"
msgstr "Leltár bejegyzés törlése"
-#: templates/js/translated/part.js:1255
+#: templates/js/translated/part.js:1254
msgid "No variants found"
msgstr "Nincs több változat"
-#: templates/js/translated/part.js:1572
+#: templates/js/translated/part.js:1571
msgid "No part parameter templates found"
msgstr "Nincs alkatrész paraméter sablon"
-#: templates/js/translated/part.js:1635
+#: templates/js/translated/part.js:1634
msgid "Edit Part Parameter Template"
msgstr "Alkatrész paraméter sablon módosítása"
-#: templates/js/translated/part.js:1647
+#: templates/js/translated/part.js:1646
msgid "Any parameters which reference this template will also be deleted"
msgstr "Az összes erre a sablonra hivatkozó paraméter is törlésre kerül"
-#: templates/js/translated/part.js:1655
+#: templates/js/translated/part.js:1654
msgid "Delete Part Parameter Template"
msgstr "Alkatrész paraméter sablon törlése"
-#: templates/js/translated/part.js:1689
-#: templates/js/translated/purchase_order.js:1618
+#: templates/js/translated/part.js:1688
+#: templates/js/translated/purchase_order.js:1633
msgid "No purchase orders found"
msgstr "Nem található beszerzési rendelés"
-#: templates/js/translated/part.js:1832
-#: templates/js/translated/purchase_order.js:2121
-#: templates/js/translated/return_order.js:740
-#: templates/js/translated/sales_order.js:1855
+#: templates/js/translated/part.js:1831
+#: templates/js/translated/purchase_order.js:2131
+#: templates/js/translated/return_order.js:752
+#: templates/js/translated/sales_order.js:1867
msgid "This line item is overdue"
msgstr "Ez a sortétel késésben van"
-#: templates/js/translated/part.js:1877
-#: templates/js/translated/purchase_order.js:2188
+#: templates/js/translated/part.js:1876
+#: templates/js/translated/purchase_order.js:2198
msgid "Receive line item"
msgstr "Sortétel bevételezése"
-#: templates/js/translated/part.js:1944
+#: templates/js/translated/part.js:1943
msgid "Delete part relationship"
msgstr "Alkatrész kapcsolatok törlése"
-#: templates/js/translated/part.js:1966
+#: templates/js/translated/part.js:1965
msgid "Delete Part Relationship"
msgstr "Alkatrész kapcsolatok törlése"
-#: templates/js/translated/part.js:2054 templates/js/translated/part.js:2366
+#: templates/js/translated/part.js:2053 templates/js/translated/part.js:2442
msgid "No parts found"
msgstr "Nincs alkatrész"
-#: templates/js/translated/part.js:2192
-msgid "parts"
-msgstr "alkatrészek"
-
-#: templates/js/translated/part.js:2276
-msgid "No category"
-msgstr "Nincs kategória"
-
-#: templates/js/translated/part.js:2390 templates/js/translated/part.js:2611
-#: templates/js/translated/stock.js:2417
-msgid "Display as list"
-msgstr "Megjelenítés listaként"
-
-#: templates/js/translated/part.js:2406
-msgid "Display as grid"
-msgstr "Megjelenítés rácsnézetként"
-
-#: templates/js/translated/part.js:2472
+#: templates/js/translated/part.js:2174
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:2477
+#: templates/js/translated/part.js:2179
msgid "Set Part Category"
msgstr "Alkatrész kategória beállítása"
+#: templates/js/translated/part.js:2204
+msgid "Set category"
+msgstr "Kategória beállítása"
+
+#: templates/js/translated/part.js:2259
+msgid "parts"
+msgstr "alkatrészek"
+
+#: templates/js/translated/part.js:2352
+msgid "No category"
+msgstr "Nincs kategória"
+
+#: templates/js/translated/part.js:2466 templates/js/translated/part.js:2596
+#: templates/js/translated/stock.js:2548
+msgid "Display as list"
+msgstr "Megjelenítés listaként"
+
#: templates/js/translated/part.js:2482
-msgid "Select Part Category"
-msgstr "Alkatrész kategória kiválasztása"
+msgid "Display as grid"
+msgstr "Megjelenítés rácsnézetként"
-#: templates/js/translated/part.js:2495
-msgid "Category is required"
-msgstr "Kategória megadása kötelező"
-
-#: templates/js/translated/part.js:2595
+#: templates/js/translated/part.js:2580
msgid "No subcategories found"
msgstr "Nem találhatóak alkategóriák"
-#: templates/js/translated/part.js:2631 templates/js/translated/stock.js:2437
+#: templates/js/translated/part.js:2616 templates/js/translated/stock.js:2568
msgid "Display as tree"
msgstr "Megjelenítés fában"
-#: templates/js/translated/part.js:2711
+#: templates/js/translated/part.js:2696
msgid "Load Subcategories"
msgstr "Alkategóriák betöltése"
-#: templates/js/translated/part.js:2727
+#: templates/js/translated/part.js:2712
msgid "Subscribed category"
msgstr "Értesítésre beállított kategória"
-#: templates/js/translated/part.js:2807
+#: templates/js/translated/part.js:2792
msgid "No test templates matching query"
msgstr "Nincs a lekérdezéssel egyező teszt sablon"
-#: templates/js/translated/part.js:2858 templates/js/translated/stock.js:1380
+#: templates/js/translated/part.js:2843 templates/js/translated/stock.js:1379
msgid "Edit test result"
msgstr "Teszt eredmény szerkesztése"
-#: templates/js/translated/part.js:2859 templates/js/translated/stock.js:1381
-#: templates/js/translated/stock.js:1643
+#: templates/js/translated/part.js:2844 templates/js/translated/stock.js:1380
+#: templates/js/translated/stock.js:1642
msgid "Delete test result"
msgstr "Teszt eredmény törlése"
-#: templates/js/translated/part.js:2863
+#: templates/js/translated/part.js:2848
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:2879
+#: templates/js/translated/part.js:2864
msgid "Edit Test Result Template"
msgstr "Teszt eredmény sablon szerkesztése"
-#: templates/js/translated/part.js:2893
+#: templates/js/translated/part.js:2878
msgid "Delete Test Result Template"
msgstr "Teszt eredmény sablon törlése"
-#: templates/js/translated/part.js:2972 templates/js/translated/part.js:2973
+#: templates/js/translated/part.js:2957 templates/js/translated/part.js:2958
msgid "No date specified"
msgstr "Nincs megadva dátum"
-#: templates/js/translated/part.js:2975
+#: templates/js/translated/part.js:2960
msgid "Specified date is in the past"
msgstr "A megadott dátum a múltban van"
-#: templates/js/translated/part.js:2981
+#: templates/js/translated/part.js:2966
msgid "Speculative"
msgstr "Spekulatív"
-#: templates/js/translated/part.js:3031
+#: templates/js/translated/part.js:3016
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:3037
+#: templates/js/translated/part.js:3022
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:3133
+#: templates/js/translated/part.js:3118
msgid "Scheduled Stock Quantities"
msgstr "Ütemezett készlet mennyiség"
-#: templates/js/translated/part.js:3149
+#: templates/js/translated/part.js:3134
msgid "Maximum Quantity"
msgstr "Minimum mennyiség"
-#: templates/js/translated/part.js:3194
+#: templates/js/translated/part.js:3179
msgid "Minimum Stock Level"
msgstr "Minimális készlet"
@@ -11169,234 +11298,234 @@ msgstr "Nincs alkatrészváltozat infomáció"
msgid "Variant Part"
msgstr "Alkatrészváltozat"
-#: templates/js/translated/purchase_order.js:155
+#: templates/js/translated/purchase_order.js:166
msgid "Select purchase order to duplicate"
msgstr "Válaszd ki a lemásolandó beszerzési rendelést"
-#: templates/js/translated/purchase_order.js:162
+#: templates/js/translated/purchase_order.js:173
msgid "Duplicate Line Items"
msgstr "Sortételek másolása"
-#: templates/js/translated/purchase_order.js:163
+#: templates/js/translated/purchase_order.js:174
msgid "Duplicate all line items from the selected order"
msgstr "Összes sortétel másolása a kiválasztott rendelésből"
-#: templates/js/translated/purchase_order.js:170
+#: templates/js/translated/purchase_order.js:181
msgid "Duplicate Extra Lines"
msgstr "Egyéb tételek másolása"
-#: templates/js/translated/purchase_order.js:171
+#: templates/js/translated/purchase_order.js:182
msgid "Duplicate extra line items from the selected order"
msgstr "Összes egyéb tétel másolása a kiválasztott rendelésből"
-#: templates/js/translated/purchase_order.js:192
+#: templates/js/translated/purchase_order.js:203
msgid "Edit Purchase Order"
msgstr "Beszerzési rendelés szerkesztése"
-#: templates/js/translated/purchase_order.js:209
+#: templates/js/translated/purchase_order.js:220
msgid "Duplication Options"
msgstr "Másolási opciók"
-#: templates/js/translated/purchase_order.js:436
+#: templates/js/translated/purchase_order.js:447
msgid "Complete Purchase Order"
msgstr "Beszerzési rendelés befejezése"
-#: templates/js/translated/purchase_order.js:453
-#: templates/js/translated/return_order.js:195
-#: templates/js/translated/sales_order.js:485
+#: templates/js/translated/purchase_order.js:464
+#: templates/js/translated/return_order.js:207
+#: templates/js/translated/sales_order.js:497
msgid "Mark this order as complete?"
msgstr "Rendelés befejezettnek jelölése?"
-#: templates/js/translated/purchase_order.js:459
+#: templates/js/translated/purchase_order.js:470
msgid "All line items have been received"
msgstr "Minden sortétel megérkezett"
-#: templates/js/translated/purchase_order.js:464
+#: templates/js/translated/purchase_order.js:475
msgid "This order has line items which have not been marked as received."
msgstr "Ez a rendelés olyan sortételeket tartalmaz amik még nem érkeztek be."
-#: templates/js/translated/purchase_order.js:465
-#: templates/js/translated/sales_order.js:499
+#: templates/js/translated/purchase_order.js:476
+#: templates/js/translated/sales_order.js:511
msgid "Completing this order means that the order and line items will no longer be editable."
msgstr "A rendelés befejezésével jelölésével annak adatai és sortételei a továbbiakban már nem lesznek szerkeszthetők."
-#: templates/js/translated/purchase_order.js:488
+#: templates/js/translated/purchase_order.js:499
msgid "Cancel Purchase Order"
msgstr "Beszerzési rendelés törlése"
-#: templates/js/translated/purchase_order.js:493
+#: templates/js/translated/purchase_order.js:504
msgid "Are you sure you wish to cancel this purchase order?"
msgstr "Biztosan törölni szeretnéd ezt a beszerzési rendelést?"
-#: templates/js/translated/purchase_order.js:499
+#: templates/js/translated/purchase_order.js:510
msgid "This purchase order can not be cancelled"
msgstr "Ezt a beszerzési rendelést nem lehet törölni"
-#: templates/js/translated/purchase_order.js:520
-#: templates/js/translated/return_order.js:149
+#: templates/js/translated/purchase_order.js:531
+#: templates/js/translated/return_order.js:161
msgid "After placing this order, line items will no longer be editable."
msgstr "A kiküldés után a sortételek már nem lesznek szerkeszthetők."
-#: templates/js/translated/purchase_order.js:525
+#: templates/js/translated/purchase_order.js:536
msgid "Issue Purchase Order"
msgstr "Beszerzési rendelés kiküldése"
-#: templates/js/translated/purchase_order.js:617
+#: templates/js/translated/purchase_order.js:628
msgid "At least one purchaseable part must be selected"
msgstr "Legalább egy beszerezhető alkatrészt ki kell választani"
-#: templates/js/translated/purchase_order.js:642
+#: templates/js/translated/purchase_order.js:653
msgid "Quantity to order"
msgstr "Rendelendő mennyiség"
-#: templates/js/translated/purchase_order.js:651
+#: templates/js/translated/purchase_order.js:662
msgid "New supplier part"
msgstr "Új beszállítói alkatrész"
-#: templates/js/translated/purchase_order.js:669
+#: templates/js/translated/purchase_order.js:680
msgid "New purchase order"
msgstr "Új beszerzési rendelés"
-#: templates/js/translated/purchase_order.js:701
+#: templates/js/translated/purchase_order.js:712
msgid "Add to purchase order"
msgstr "Hozzáadás beszerzési rendeléshez"
-#: templates/js/translated/purchase_order.js:845
+#: templates/js/translated/purchase_order.js:860
msgid "No matching supplier parts"
msgstr "Nincsenek egyező beszállítói alkatrészek"
-#: templates/js/translated/purchase_order.js:864
+#: templates/js/translated/purchase_order.js:879
msgid "No matching purchase orders"
msgstr "Nincsenek egyező beszerzési rendelések"
-#: templates/js/translated/purchase_order.js:1043
+#: templates/js/translated/purchase_order.js:1058
msgid "Select Line Items"
msgstr "Sortételek kiválasztása"
-#: templates/js/translated/purchase_order.js:1044
-#: templates/js/translated/return_order.js:480
+#: templates/js/translated/purchase_order.js:1059
+#: templates/js/translated/return_order.js:492
msgid "At least one line item must be selected"
msgstr "Legalább egy sortételt ki kell választani"
-#: templates/js/translated/purchase_order.js:1074
+#: templates/js/translated/purchase_order.js:1089
msgid "Received Quantity"
msgstr "Beérkezett mennyiség"
-#: templates/js/translated/purchase_order.js:1085
+#: templates/js/translated/purchase_order.js:1100
msgid "Quantity to receive"
msgstr "Érkező mennyiség"
-#: templates/js/translated/purchase_order.js:1161
+#: templates/js/translated/purchase_order.js:1176
msgid "Stock Status"
msgstr "Készlet állapota"
-#: templates/js/translated/purchase_order.js:1175
+#: templates/js/translated/purchase_order.js:1190
msgid "Add barcode"
msgstr "Vonalkód hozzáadása"
-#: templates/js/translated/purchase_order.js:1176
+#: templates/js/translated/purchase_order.js:1191
msgid "Remove barcode"
msgstr "Vonalkód eltávolítása"
-#: templates/js/translated/purchase_order.js:1179
+#: templates/js/translated/purchase_order.js:1194
msgid "Specify location"
msgstr "Add meg a helyet"
-#: templates/js/translated/purchase_order.js:1187
+#: templates/js/translated/purchase_order.js:1202
msgid "Add batch code"
msgstr "Batch kód hozzáadása"
-#: templates/js/translated/purchase_order.js:1198
+#: templates/js/translated/purchase_order.js:1213
msgid "Add serial numbers"
msgstr "Sorozatszám hozzáadása"
-#: templates/js/translated/purchase_order.js:1250
+#: templates/js/translated/purchase_order.js:1265
msgid "Serials"
msgstr "Sorozatszámok"
-#: templates/js/translated/purchase_order.js:1275
+#: templates/js/translated/purchase_order.js:1290
msgid "Order Code"
msgstr "Rendelési kód"
-#: templates/js/translated/purchase_order.js:1277
+#: templates/js/translated/purchase_order.js:1292
msgid "Quantity to Receive"
msgstr "Érkező mennyiség"
-#: templates/js/translated/purchase_order.js:1299
-#: templates/js/translated/return_order.js:545
+#: templates/js/translated/purchase_order.js:1314
+#: templates/js/translated/return_order.js:557
msgid "Confirm receipt of items"
msgstr "Bevételezés megerősítése"
-#: templates/js/translated/purchase_order.js:1300
+#: templates/js/translated/purchase_order.js:1315
msgid "Receive Purchase Order Items"
msgstr "Beszerzési rendelés tételeinek bevételezése"
-#: templates/js/translated/purchase_order.js:1368
+#: templates/js/translated/purchase_order.js:1383
msgid "Scan Item Barcode"
msgstr "Tétel vonalkód beolvasása"
-#: templates/js/translated/purchase_order.js:1369
+#: templates/js/translated/purchase_order.js:1384
msgid "Scan barcode on incoming item (must not match any existing stock items)"
msgstr "Beérkezett tétel vonalkódjának leolvasása (egyik meglévő készlet tétellel sem egyezhet)"
-#: templates/js/translated/purchase_order.js:1383
+#: templates/js/translated/purchase_order.js:1398
msgid "Invalid barcode data"
msgstr "Érvénytelen vonalkód adat"
-#: templates/js/translated/purchase_order.js:1645
-#: templates/js/translated/return_order.js:274
-#: templates/js/translated/sales_order.js:762
-#: templates/js/translated/sales_order.js:986
+#: templates/js/translated/purchase_order.js:1660
+#: templates/js/translated/return_order.js:286
+#: templates/js/translated/sales_order.js:774
+#: templates/js/translated/sales_order.js:998
msgid "Order is overdue"
msgstr "Rendelés késésben"
-#: templates/js/translated/purchase_order.js:1707
-#: templates/js/translated/return_order.js:342
-#: templates/js/translated/sales_order.js:839
-#: templates/js/translated/sales_order.js:999
+#: templates/js/translated/purchase_order.js:1722
+#: templates/js/translated/return_order.js:354
+#: templates/js/translated/sales_order.js:851
+#: templates/js/translated/sales_order.js:1011
msgid "Items"
msgstr "Tételek"
-#: templates/js/translated/purchase_order.js:1806
+#: templates/js/translated/purchase_order.js:1821
msgid "All selected Line items will be deleted"
msgstr "Az összes kijelölt sortétel törlésre kerül"
-#: templates/js/translated/purchase_order.js:1824
+#: templates/js/translated/purchase_order.js:1839
msgid "Delete selected Line items?"
msgstr "Töröljük a kiválasztott sortételeket?"
-#: templates/js/translated/purchase_order.js:1884
-#: templates/js/translated/sales_order.js:2047
+#: templates/js/translated/purchase_order.js:1894
+#: templates/js/translated/sales_order.js:2059
msgid "Duplicate Line Item"
msgstr "Sortétel másolása"
-#: templates/js/translated/purchase_order.js:1899
-#: templates/js/translated/return_order.js:464
-#: templates/js/translated/return_order.js:653
-#: templates/js/translated/sales_order.js:2060
+#: templates/js/translated/purchase_order.js:1909
+#: templates/js/translated/return_order.js:476
+#: templates/js/translated/return_order.js:665
+#: templates/js/translated/sales_order.js:2072
msgid "Edit Line Item"
msgstr "Sortétel szerkesztése"
-#: templates/js/translated/purchase_order.js:1910
-#: templates/js/translated/return_order.js:666
-#: templates/js/translated/sales_order.js:2071
+#: templates/js/translated/purchase_order.js:1920
+#: templates/js/translated/return_order.js:678
+#: templates/js/translated/sales_order.js:2083
msgid "Delete Line Item"
msgstr "Sortétel törlése"
-#: templates/js/translated/purchase_order.js:2192
-#: templates/js/translated/sales_order.js:2001
+#: templates/js/translated/purchase_order.js:2202
+#: templates/js/translated/sales_order.js:2013
msgid "Duplicate line item"
msgstr "Sortétel másolása"
-#: templates/js/translated/purchase_order.js:2193
-#: templates/js/translated/return_order.js:785
-#: templates/js/translated/sales_order.js:2002
+#: templates/js/translated/purchase_order.js:2203
+#: templates/js/translated/return_order.js:797
+#: templates/js/translated/sales_order.js:2014
msgid "Edit line item"
msgstr "Sortétel szerkesztése"
-#: templates/js/translated/purchase_order.js:2194
-#: templates/js/translated/return_order.js:789
-#: templates/js/translated/sales_order.js:2008
+#: templates/js/translated/purchase_order.js:2204
+#: templates/js/translated/return_order.js:801
+#: templates/js/translated/sales_order.js:2020
msgid "Delete line item"
msgstr "Sortétel törlése"
@@ -11425,941 +11554,973 @@ msgstr "Nem található riport sablon a kiválasztott tételekhez"
msgid "Add Customer"
msgstr "Vevő hozzáadása"
-#: templates/js/translated/return_order.js:119
+#: templates/js/translated/return_order.js:131
msgid "Create Return Order"
msgstr "Visszavételi utasítás létrehozása"
-#: templates/js/translated/return_order.js:134
+#: templates/js/translated/return_order.js:146
msgid "Edit Return Order"
msgstr "Visszavételi utasítás szerkesztése"
-#: templates/js/translated/return_order.js:154
+#: templates/js/translated/return_order.js:166
msgid "Issue Return Order"
msgstr "Visszavételi utasítás kiadása"
-#: templates/js/translated/return_order.js:171
+#: templates/js/translated/return_order.js:183
msgid "Are you sure you wish to cancel this Return Order?"
msgstr "Biztosan törölni szeretnéd ezt a visszavételi utasítást?"
-#: templates/js/translated/return_order.js:178
+#: templates/js/translated/return_order.js:190
msgid "Cancel Return Order"
msgstr "Visszavételi utasítás törlése"
-#: templates/js/translated/return_order.js:203
+#: templates/js/translated/return_order.js:215
msgid "Complete Return Order"
msgstr "Visszavételi utasítás befejezése"
-#: templates/js/translated/return_order.js:251
+#: templates/js/translated/return_order.js:263
msgid "No return orders found"
msgstr "Nem található visszavételi utasítás"
-#: templates/js/translated/return_order.js:288
-#: templates/js/translated/sales_order.js:776
+#: templates/js/translated/return_order.js:300
+#: templates/js/translated/sales_order.js:788
msgid "Invalid Customer"
msgstr "Érvénytelen vevő"
-#: templates/js/translated/return_order.js:546
+#: templates/js/translated/return_order.js:558
msgid "Receive Return Order Items"
msgstr "Visszavételi utasítás tételeinek bevételezése"
-#: templates/js/translated/return_order.js:677
-#: templates/js/translated/sales_order.js:2207
+#: templates/js/translated/return_order.js:689
+#: templates/js/translated/sales_order.js:2219
msgid "No matching line items"
msgstr "Nincs egyező sortétel"
-#: templates/js/translated/return_order.js:782
+#: templates/js/translated/return_order.js:794
msgid "Mark item as received"
msgstr "Tétel bevételezve"
-#: templates/js/translated/sales_order.js:146
+#: templates/js/translated/sales_order.js:158
msgid "Create Sales Order"
msgstr "Vevői rendelés létrehozása"
-#: templates/js/translated/sales_order.js:161
+#: templates/js/translated/sales_order.js:173
msgid "Edit Sales Order"
msgstr "Vevői rendelés szerkesztése"
-#: templates/js/translated/sales_order.js:276
+#: templates/js/translated/sales_order.js:288
msgid "No stock items have been allocated to this shipment"
msgstr "Ehhez a szállítmányhoz nincs készlet hozzárendelve"
-#: templates/js/translated/sales_order.js:281
+#: templates/js/translated/sales_order.js:293
msgid "The following stock items will be shipped"
msgstr "A következő készlet tételek ki lesznek szállítva"
-#: templates/js/translated/sales_order.js:321
+#: templates/js/translated/sales_order.js:333
msgid "Complete Shipment"
msgstr "Függő szállítmányok kiszállítása"
-#: templates/js/translated/sales_order.js:345
+#: templates/js/translated/sales_order.js:357
msgid "Confirm Shipment"
msgstr "Szállítmány megerősítése"
-#: templates/js/translated/sales_order.js:401
+#: templates/js/translated/sales_order.js:413
msgid "No pending shipments found"
msgstr "Nincs függő szállítmány"
-#: templates/js/translated/sales_order.js:405
+#: templates/js/translated/sales_order.js:417
msgid "No stock items have been allocated to pending shipments"
msgstr "A függő a szállítmányokhoz nincs készlet hozzárendelve"
-#: templates/js/translated/sales_order.js:415
+#: templates/js/translated/sales_order.js:427
msgid "Complete Shipments"
msgstr "Függő szállítmányok kiszállítása"
-#: templates/js/translated/sales_order.js:437
+#: templates/js/translated/sales_order.js:449
msgid "Skip"
msgstr "Kihagyás"
-#: templates/js/translated/sales_order.js:498
+#: templates/js/translated/sales_order.js:510
msgid "This order has line items which have not been completed."
msgstr "Ez a rendelés olyan sortételeket tartalmaz amik még nem teljesítettek."
-#: templates/js/translated/sales_order.js:520
+#: templates/js/translated/sales_order.js:532
msgid "Issue this Sales Order?"
msgstr "Vissza lett igazolva ez a vevői rendelés?"
-#: templates/js/translated/sales_order.js:525
+#: templates/js/translated/sales_order.js:537
msgid "Issue Sales Order"
msgstr "Vevői rendelés visszaigazolása"
-#: templates/js/translated/sales_order.js:544
+#: templates/js/translated/sales_order.js:556
msgid "Cancel Sales Order"
msgstr "Vevő rendelés törlése"
-#: templates/js/translated/sales_order.js:549
+#: templates/js/translated/sales_order.js:561
msgid "Cancelling this order means that the order will no longer be editable."
msgstr "A rendelés törlésével annak adatai a továbbiakban már nem lesznek szerkeszthetők."
-#: templates/js/translated/sales_order.js:603
+#: templates/js/translated/sales_order.js:615
msgid "Create New Shipment"
msgstr "Szállítmány létrehozása"
-#: templates/js/translated/sales_order.js:713
+#: templates/js/translated/sales_order.js:725
msgid "No sales orders found"
msgstr "Nem található vevői rendelés"
-#: templates/js/translated/sales_order.js:896
+#: templates/js/translated/sales_order.js:908
msgid "Edit shipment"
msgstr "Szállítmány szerkesztése"
-#: templates/js/translated/sales_order.js:899
+#: templates/js/translated/sales_order.js:911
msgid "Complete shipment"
msgstr "Szállítmány kiszállítása"
-#: templates/js/translated/sales_order.js:904
+#: templates/js/translated/sales_order.js:916
msgid "Delete shipment"
msgstr "Szállítmány törlése"
-#: templates/js/translated/sales_order.js:921
+#: templates/js/translated/sales_order.js:933
msgid "Edit Shipment"
msgstr "Szállítmány szerkesztése"
-#: templates/js/translated/sales_order.js:936
+#: templates/js/translated/sales_order.js:948
msgid "Delete Shipment"
msgstr "Szállítmány törlése"
-#: templates/js/translated/sales_order.js:969
+#: templates/js/translated/sales_order.js:981
msgid "No matching shipments found"
msgstr "Nincs egyező szállímány"
-#: templates/js/translated/sales_order.js:994
+#: templates/js/translated/sales_order.js:1006
msgid "Shipment Reference"
msgstr "Szállítmány azonosító"
-#: templates/js/translated/sales_order.js:1018
-#: templates/js/translated/sales_order.js:1515
+#: templates/js/translated/sales_order.js:1030
+#: templates/js/translated/sales_order.js:1527
msgid "Not shipped"
msgstr "Nincs kiszállítva"
-#: templates/js/translated/sales_order.js:1036
+#: templates/js/translated/sales_order.js:1048
msgid "Tracking"
msgstr "Nyomkövetés"
-#: templates/js/translated/sales_order.js:1040
+#: templates/js/translated/sales_order.js:1052
msgid "Invoice"
msgstr "Számla"
-#: templates/js/translated/sales_order.js:1207
+#: templates/js/translated/sales_order.js:1219
msgid "Add Shipment"
msgstr "Szállítmány hozzáadása"
-#: templates/js/translated/sales_order.js:1258
+#: templates/js/translated/sales_order.js:1270
msgid "Confirm stock allocation"
msgstr "Készlet foglalás megerősítése"
-#: templates/js/translated/sales_order.js:1259
+#: templates/js/translated/sales_order.js:1271
msgid "Allocate Stock Items to Sales Order"
msgstr "Készlet foglalása a vevői rendeléshez"
-#: templates/js/translated/sales_order.js:1463
+#: templates/js/translated/sales_order.js:1475
msgid "No sales order allocations found"
msgstr "Nincs vevői rendeléshez történő foglalás"
-#: templates/js/translated/sales_order.js:1555
+#: templates/js/translated/sales_order.js:1567
msgid "Edit Stock Allocation"
msgstr "Készlet foglalások szerkesztése"
-#: templates/js/translated/sales_order.js:1569
+#: templates/js/translated/sales_order.js:1581
msgid "Confirm Delete Operation"
msgstr "Törlési művelet megerősítése"
-#: templates/js/translated/sales_order.js:1570
+#: templates/js/translated/sales_order.js:1582
msgid "Delete Stock Allocation"
msgstr "Készlet foglalások törlése"
-#: templates/js/translated/sales_order.js:1609
-#: templates/js/translated/sales_order.js:1696
-#: templates/js/translated/stock.js:1688
+#: templates/js/translated/sales_order.js:1621
+#: templates/js/translated/sales_order.js:1708
+#: templates/js/translated/stock.js:1687
msgid "Shipped to customer"
msgstr "Vevőnek kiszállítva"
-#: templates/js/translated/sales_order.js:1617
-#: templates/js/translated/sales_order.js:1705
+#: templates/js/translated/sales_order.js:1629
+#: templates/js/translated/sales_order.js:1717
msgid "Stock location not specified"
msgstr "Készlethely nincs megadva"
-#: templates/js/translated/sales_order.js:1985
+#: templates/js/translated/sales_order.js:1997
msgid "Allocate serial numbers"
msgstr "Sorozatszámok kiosztása"
-#: templates/js/translated/sales_order.js:1989
+#: templates/js/translated/sales_order.js:2001
msgid "Purchase stock"
msgstr "Készletrendelés"
-#: templates/js/translated/sales_order.js:1998
-#: templates/js/translated/sales_order.js:2185
+#: templates/js/translated/sales_order.js:2010
+#: templates/js/translated/sales_order.js:2197
msgid "Calculate price"
msgstr "Árszámítás"
-#: templates/js/translated/sales_order.js:2012
+#: templates/js/translated/sales_order.js:2024
msgid "Cannot be deleted as items have been shipped"
msgstr "Nem törölhető mivel a tételek ki lettek szállítva"
-#: templates/js/translated/sales_order.js:2015
+#: templates/js/translated/sales_order.js:2027
msgid "Cannot be deleted as items have been allocated"
msgstr "Nem törölhető mivel tételek vannak lefoglalva"
-#: templates/js/translated/sales_order.js:2086
+#: templates/js/translated/sales_order.js:2098
msgid "Allocate Serial Numbers"
msgstr "Sorozatszámok kiosztása"
-#: templates/js/translated/sales_order.js:2193
+#: templates/js/translated/sales_order.js:2205
msgid "Update Unit Price"
msgstr "Egységár módosítása"
-#: templates/js/translated/search.js:312
+#: templates/js/translated/search.js:270
msgid "No results"
msgstr "Nincs találat"
-#: templates/js/translated/search.js:334 templates/search.html:25
+#: templates/js/translated/search.js:292 templates/search.html:25
msgid "Enter search query"
msgstr "Add meg a keresési lekérdezést"
-#: templates/js/translated/search.js:384
+#: templates/js/translated/search.js:342
msgid "result"
msgstr "eredmény"
-#: templates/js/translated/search.js:384
+#: templates/js/translated/search.js:342
msgid "results"
msgstr "találat"
-#: templates/js/translated/search.js:394
+#: templates/js/translated/search.js:352
msgid "Minimize results"
msgstr "Eredmények összezárása"
-#: templates/js/translated/search.js:397
+#: templates/js/translated/search.js:355
msgid "Remove results"
msgstr "Eredmények eltávolítása"
-#: templates/js/translated/stock.js:98
+#: templates/js/translated/stock.js:97
msgid "Serialize Stock Item"
msgstr "Készlet tétel sorszámozása"
-#: templates/js/translated/stock.js:129
+#: templates/js/translated/stock.js:128
msgid "Confirm Stock Serialization"
msgstr "Készlet sorozatszámozás megerősítése"
-#: templates/js/translated/stock.js:138
+#: templates/js/translated/stock.js:137
msgid "Parent stock location"
msgstr "Felsőbb szintű készlet hely"
-#: templates/js/translated/stock.js:173
+#: templates/js/translated/stock.js:172
msgid "Edit Stock Location"
msgstr "Készlet hely szerkesztése"
-#: templates/js/translated/stock.js:188
+#: templates/js/translated/stock.js:187
msgid "New Stock Location"
msgstr "Új készlet hely"
-#: templates/js/translated/stock.js:190
+#: templates/js/translated/stock.js:189
msgid "Create another location after this one"
msgstr "Új készlethely létrehozása ez után"
-#: templates/js/translated/stock.js:191
+#: templates/js/translated/stock.js:190
msgid "Stock location created"
msgstr "Készlet hely létrehozva"
-#: templates/js/translated/stock.js:205
+#: templates/js/translated/stock.js:204
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:212
+#: templates/js/translated/stock.js:211
msgid "Move to parent stock location"
msgstr "Szülő készlet helyre mozgatás"
-#: templates/js/translated/stock.js:221
+#: templates/js/translated/stock.js:220
msgid "Delete Stock Location"
msgstr "Készlethely törlése"
-#: templates/js/translated/stock.js:225
+#: templates/js/translated/stock.js:224
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:230
+#: templates/js/translated/stock.js:229
msgid "Action for sub-locations"
msgstr "Műveletek az al-helyekhez"
-#: templates/js/translated/stock.js:284
+#: templates/js/translated/stock.js:283
msgid "This part cannot be serialized"
msgstr "Ezt az alkatrészt nem lehet sorozatszámozni"
-#: templates/js/translated/stock.js:320
+#: templates/js/translated/stock.js:319
msgid "Add given quantity as packs instead of individual items"
msgstr ""
-#: templates/js/translated/stock.js:329
+#: templates/js/translated/stock.js:328
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:335
+#: templates/js/translated/stock.js:334
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:406
+#: templates/js/translated/stock.js:405
msgid "Stock item duplicated"
msgstr "Készlet tétel lemásolva"
-#: templates/js/translated/stock.js:426
+#: templates/js/translated/stock.js:425
msgid "Duplicate Stock Item"
msgstr "Készlet tétel másolása"
-#: templates/js/translated/stock.js:442
+#: templates/js/translated/stock.js:441
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:447
+#: templates/js/translated/stock.js:446
msgid "Delete Stock Item"
msgstr "Készlet tétel törlése"
-#: templates/js/translated/stock.js:468
+#: templates/js/translated/stock.js:467
msgid "Edit Stock Item"
msgstr "Készlet tétel szerkesztése"
-#: templates/js/translated/stock.js:510
+#: templates/js/translated/stock.js:509
msgid "Create another item after this one"
msgstr "Új tétel létrehozása ez után"
-#: templates/js/translated/stock.js:522
+#: templates/js/translated/stock.js:521
msgid "Created new stock item"
msgstr "Készlet tétel létrehozva"
-#: templates/js/translated/stock.js:535
+#: templates/js/translated/stock.js:534
msgid "Created multiple stock items"
msgstr "Több készlet tétel létre lett hozva"
-#: templates/js/translated/stock.js:560
+#: templates/js/translated/stock.js:559
msgid "Find Serial Number"
msgstr "Sorozatszám keresése"
-#: templates/js/translated/stock.js:564 templates/js/translated/stock.js:565
+#: templates/js/translated/stock.js:563 templates/js/translated/stock.js:564
msgid "Enter serial number"
msgstr "Sorozatszám megadása"
-#: templates/js/translated/stock.js:581
+#: templates/js/translated/stock.js:580
msgid "Enter a serial number"
msgstr "Adj meg egy sorozatszámot"
-#: templates/js/translated/stock.js:601
+#: templates/js/translated/stock.js:600
msgid "No matching serial number"
msgstr "Nincs egyező sorozatszám"
-#: templates/js/translated/stock.js:610
+#: templates/js/translated/stock.js:609
msgid "More than one matching result found"
msgstr "Több egyező eredmény is van"
-#: templates/js/translated/stock.js:718
+#: templates/js/translated/stock.js:717
msgid "Confirm stock assignment"
msgstr "Készlet hozzárendelés jóváhagyása"
-#: templates/js/translated/stock.js:719
+#: templates/js/translated/stock.js:718
msgid "Assign Stock to Customer"
msgstr "Készlet vevőhöz rendelése"
-#: templates/js/translated/stock.js:796
+#: templates/js/translated/stock.js:795
msgid "Warning: Merge operation cannot be reversed"
msgstr "Figyelem: az összevonási művelet nem vonható vissza"
-#: templates/js/translated/stock.js:797
+#: templates/js/translated/stock.js:796
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:799
+#: templates/js/translated/stock.js:798
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:800
+#: templates/js/translated/stock.js:799
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:891
+#: templates/js/translated/stock.js:890
msgid "Confirm stock item merge"
msgstr "Készlet összevonás megerősítése"
-#: templates/js/translated/stock.js:892
+#: templates/js/translated/stock.js:891
msgid "Merge Stock Items"
msgstr "Készlet tételek összevonása"
-#: templates/js/translated/stock.js:987
+#: templates/js/translated/stock.js:986
msgid "Transfer Stock"
msgstr "Készlet áthelyezése"
-#: templates/js/translated/stock.js:988
+#: templates/js/translated/stock.js:987
msgid "Move"
msgstr "Áthelyezés"
-#: templates/js/translated/stock.js:994
+#: templates/js/translated/stock.js:993
msgid "Count Stock"
msgstr "Leltározás"
-#: templates/js/translated/stock.js:995
+#: templates/js/translated/stock.js:994
msgid "Count"
msgstr "Mennyiség"
-#: templates/js/translated/stock.js:999
+#: templates/js/translated/stock.js:998
msgid "Remove Stock"
msgstr "Készlet csökkentése"
-#: templates/js/translated/stock.js:1000
+#: templates/js/translated/stock.js:999
msgid "Take"
msgstr "Kivesz"
-#: templates/js/translated/stock.js:1004
+#: templates/js/translated/stock.js:1003
msgid "Add Stock"
msgstr "Készlet növelése"
-#: templates/js/translated/stock.js:1005 users/models.py:243
+#: templates/js/translated/stock.js:1004 users/models.py:249
msgid "Add"
msgstr "Hozzáad"
-#: templates/js/translated/stock.js:1009
+#: templates/js/translated/stock.js:1008
msgid "Delete Stock"
msgstr "Készlet törlése"
-#: templates/js/translated/stock.js:1106
+#: templates/js/translated/stock.js:1105
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:1106
+#: templates/js/translated/stock.js:1105
msgid "Specify stock quantity"
msgstr "Készlet mennyiség megadása"
-#: templates/js/translated/stock.js:1140
+#: templates/js/translated/stock.js:1139 templates/js/translated/stock.js:3151
msgid "Select Stock Items"
msgstr "Készlet tételek kiválasztása"
-#: templates/js/translated/stock.js:1141
-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:1140
+msgid "Select at least one available stock item"
+msgstr ""
-#: templates/js/translated/stock.js:1168
+#: templates/js/translated/stock.js:1167
msgid "Confirm stock adjustment"
msgstr "Készlet módosítás jóváhagyása"
-#: templates/js/translated/stock.js:1304
+#: templates/js/translated/stock.js:1303
msgid "PASS"
msgstr "SIKER"
-#: templates/js/translated/stock.js:1306
+#: templates/js/translated/stock.js:1305
msgid "FAIL"
msgstr "SIKERTELEN"
-#: templates/js/translated/stock.js:1311
+#: templates/js/translated/stock.js:1310
msgid "NO RESULT"
msgstr "NINCS EREDMÉNY"
-#: templates/js/translated/stock.js:1373
+#: templates/js/translated/stock.js:1372
msgid "Pass test"
msgstr "Teszt sikeres"
-#: templates/js/translated/stock.js:1376
+#: templates/js/translated/stock.js:1375
msgid "Add test result"
msgstr "Teszt eredmény hozzáadása"
-#: templates/js/translated/stock.js:1400
+#: templates/js/translated/stock.js:1399
msgid "No test results found"
msgstr "Nincs teszt eredmény"
-#: templates/js/translated/stock.js:1464
+#: templates/js/translated/stock.js:1463
msgid "Test Date"
msgstr "Teszt dátuma"
-#: templates/js/translated/stock.js:1626
+#: templates/js/translated/stock.js:1625
msgid "Edit Test Result"
msgstr "Teszt eredmény szerkesztése"
-#: templates/js/translated/stock.js:1648
+#: templates/js/translated/stock.js:1647
msgid "Delete Test Result"
msgstr "Teszt eredmény törlése"
-#: templates/js/translated/stock.js:1680
+#: templates/js/translated/stock.js:1679
msgid "In production"
msgstr "Gyártásban"
-#: templates/js/translated/stock.js:1684
+#: templates/js/translated/stock.js:1683
msgid "Installed in Stock Item"
msgstr "Beépítve készlet tételbe"
-#: templates/js/translated/stock.js:1692
+#: templates/js/translated/stock.js:1691
msgid "Assigned to Sales Order"
msgstr "Vevő rendeléshez hozzárendelve"
-#: templates/js/translated/stock.js:1698
+#: templates/js/translated/stock.js:1697
msgid "No stock location set"
msgstr "Nincs hely megadva"
-#: templates/js/translated/stock.js:1746
+#: templates/js/translated/stock.js:1753
+msgid "Change stock status"
+msgstr ""
+
+#: templates/js/translated/stock.js:1762
+msgid "Merge stock"
+msgstr "Készlet összevonása"
+
+#: templates/js/translated/stock.js:1811
+msgid "Delete stock"
+msgstr "Készlet törlése"
+
+#: templates/js/translated/stock.js:1866
msgid "stock items"
msgstr "készlet tételek"
-#: templates/js/translated/stock.js:1850
+#: templates/js/translated/stock.js:1871
+msgid "Scan to location"
+msgstr ""
+
+#: templates/js/translated/stock.js:1882
+msgid "Stock Actions"
+msgstr ""
+
+#: templates/js/translated/stock.js:1929
+msgid "Load installed items"
+msgstr ""
+
+#: templates/js/translated/stock.js:2007
msgid "Stock item is in production"
msgstr "Készlet tétel gyártás alatt"
-#: templates/js/translated/stock.js:1855
+#: templates/js/translated/stock.js:2012
msgid "Stock item assigned to sales order"
msgstr "Készlet tétel hozzárendelve egy vevői rendeléshez"
-#: templates/js/translated/stock.js:1858
+#: templates/js/translated/stock.js:2015
msgid "Stock item assigned to customer"
msgstr "Készlet tétel hozzárendelve egy vevőhöz"
-#: templates/js/translated/stock.js:1861
+#: templates/js/translated/stock.js:2018
msgid "Serialized stock item has been allocated"
msgstr "Egyedi követésre kötelezett készlet tétel lefoglalva"
-#: templates/js/translated/stock.js:1863
+#: templates/js/translated/stock.js:2020
msgid "Stock item has been fully allocated"
msgstr "Készlet tétel teljes egészében lefoglalva"
-#: templates/js/translated/stock.js:1865
+#: templates/js/translated/stock.js:2022
msgid "Stock item has been partially allocated"
msgstr "Készlet tétel részben lefoglalva"
-#: templates/js/translated/stock.js:1868
+#: templates/js/translated/stock.js:2025
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:1870
+#: templates/js/translated/stock.js:2027
msgid "Stock item has been consumed by a build order"
msgstr ""
-#: templates/js/translated/stock.js:1874
+#: templates/js/translated/stock.js:2031
msgid "Stock item has expired"
msgstr "Készlet tétel lejárt"
-#: templates/js/translated/stock.js:1876
+#: templates/js/translated/stock.js:2033
msgid "Stock item will expire soon"
msgstr "Készlet tétel hamarosan lejár"
-#: templates/js/translated/stock.js:1881
+#: templates/js/translated/stock.js:2038
msgid "Stock item has been rejected"
msgstr "Készlet tétel elutasítva"
-#: templates/js/translated/stock.js:1883
+#: templates/js/translated/stock.js:2040
msgid "Stock item is lost"
msgstr "Készlet tétel elveszett"
-#: templates/js/translated/stock.js:1885
+#: templates/js/translated/stock.js:2042
msgid "Stock item is destroyed"
msgstr "Készlet tétel megsemmisült"
-#: templates/js/translated/stock.js:1889
-#: templates/js/translated/table_filters.js:296
+#: templates/js/translated/stock.js:2046
+#: templates/js/translated/table_filters.js:302
msgid "Depleted"
msgstr "Kimerült"
-#: templates/js/translated/stock.js:2031
+#: templates/js/translated/stock.js:2188
msgid "Supplier part not specified"
msgstr "Beszállítói alkatrész nincs megadva"
-#: templates/js/translated/stock.js:2078
+#: templates/js/translated/stock.js:2235
msgid "Stock Value"
msgstr "Készletérték"
-#: templates/js/translated/stock.js:2170
+#: templates/js/translated/stock.js:2358
msgid "No stock items matching query"
msgstr "Nincs a lekérdezésnek megfelelő készlet tétel"
-#: templates/js/translated/stock.js:2319
+#: templates/js/translated/stock.js:2450
msgid "stock locations"
msgstr "készlethelyek"
-#: templates/js/translated/stock.js:2476
+#: templates/js/translated/stock.js:2607
msgid "Load Subloactions"
msgstr "Alhelyek betöltése"
-#: templates/js/translated/stock.js:2583
+#: templates/js/translated/stock.js:2714
msgid "Details"
msgstr "Részletek"
-#: templates/js/translated/stock.js:2587
+#: templates/js/translated/stock.js:2718
msgid "No changes"
msgstr "Nem változott"
-#: templates/js/translated/stock.js:2599
+#: templates/js/translated/stock.js:2730
msgid "Part information unavailable"
msgstr "Alkatrész információ nem áll rendelkezésre"
-#: templates/js/translated/stock.js:2621
+#: templates/js/translated/stock.js:2752
msgid "Location no longer exists"
msgstr "A hely már nem létezik"
-#: templates/js/translated/stock.js:2638
+#: templates/js/translated/stock.js:2769
msgid "Build order no longer exists"
msgstr "A gyártási utasítás már nem létezik"
-#: templates/js/translated/stock.js:2653
+#: templates/js/translated/stock.js:2784
msgid "Purchase order no longer exists"
msgstr "Beszerzési megrendelés már nem létezik"
-#: templates/js/translated/stock.js:2670
+#: templates/js/translated/stock.js:2801
msgid "Sales Order no longer exists"
msgstr "Vevői megrendelés már nem létezik"
-#: templates/js/translated/stock.js:2687
+#: templates/js/translated/stock.js:2818
msgid "Return Order no longer exists"
msgstr "Visszavételi utasítás már nem létezik"
-#: templates/js/translated/stock.js:2706
+#: templates/js/translated/stock.js:2837
msgid "Customer no longer exists"
msgstr "Vevő már nem létezik"
-#: templates/js/translated/stock.js:2724
+#: templates/js/translated/stock.js:2855
msgid "Stock item no longer exists"
msgstr "A készlet tétel már nem létezik"
-#: templates/js/translated/stock.js:2742
+#: templates/js/translated/stock.js:2873
msgid "Added"
msgstr "Hozzáadva"
-#: templates/js/translated/stock.js:2750
+#: templates/js/translated/stock.js:2881
msgid "Removed"
msgstr "Eltávolítva"
-#: templates/js/translated/stock.js:2826
+#: templates/js/translated/stock.js:2953
msgid "No installed items"
msgstr "Nincsenek beépített tételek"
-#: templates/js/translated/stock.js:2876 templates/js/translated/stock.js:2911
+#: templates/js/translated/stock.js:3003 templates/js/translated/stock.js:3038
msgid "Uninstall Stock Item"
msgstr "Készlet tétel kiszedése"
-#: templates/js/translated/stock.js:2929
+#: templates/js/translated/stock.js:3056
msgid "Select stock item to uninstall"
msgstr "Válaszd ki a kiszedni való készlet tételt"
-#: templates/js/translated/stock.js:2950
+#: templates/js/translated/stock.js:3077
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:2951
+#: templates/js/translated/stock.js:3078
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:2953
+#: templates/js/translated/stock.js:3080
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:2954
+#: templates/js/translated/stock.js:3081
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:2955
+#: templates/js/translated/stock.js:3082
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:2956
+#: templates/js/translated/stock.js:3083
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:2969
+#: templates/js/translated/stock.js:3096
msgid "Select part to install"
msgstr "Válaszd ki a beépítendő alkatrészt"
+#: templates/js/translated/stock.js:3152
+msgid "Select one or more stock items"
+msgstr ""
+
+#: templates/js/translated/stock.js:3165
+msgid "Selected stock items"
+msgstr ""
+
+#: templates/js/translated/stock.js:3169
+msgid "Change Stock Status"
+msgstr ""
+
#: templates/js/translated/table_filters.js:50
msgid "Has project code"
msgstr "Van projektszáma"
-#: templates/js/translated/table_filters.js:59
-#: templates/js/translated/table_filters.js:518
-#: templates/js/translated/table_filters.js:530
-#: templates/js/translated/table_filters.js:571
+#: templates/js/translated/table_filters.js:65
+#: templates/js/translated/table_filters.js:540
+#: templates/js/translated/table_filters.js:552
+#: templates/js/translated/table_filters.js:593
msgid "Order status"
msgstr "Rendelés állapota"
-#: templates/js/translated/table_filters.js:64
-#: templates/js/translated/table_filters.js:535
-#: templates/js/translated/table_filters.js:561
-#: templates/js/translated/table_filters.js:576
+#: templates/js/translated/table_filters.js:70
+#: templates/js/translated/table_filters.js:557
+#: templates/js/translated/table_filters.js:583
+#: templates/js/translated/table_filters.js:598
msgid "Outstanding"
msgstr "Kintlévő"
-#: templates/js/translated/table_filters.js:72
-#: templates/js/translated/table_filters.js:458
-#: templates/js/translated/table_filters.js:543
-#: templates/js/translated/table_filters.js:584
+#: templates/js/translated/table_filters.js:78
+#: templates/js/translated/table_filters.js:464
+#: templates/js/translated/table_filters.js:565
+#: templates/js/translated/table_filters.js:606
msgid "Assigned to me"
msgstr "Hozzám rendelt"
-#: templates/js/translated/table_filters.js:128
+#: templates/js/translated/table_filters.js:134
msgid "Trackable Part"
msgstr "Követésre kötelezett"
-#: templates/js/translated/table_filters.js:132
+#: templates/js/translated/table_filters.js:138
msgid "Assembled Part"
msgstr "Gyártmány alkatrész"
-#: templates/js/translated/table_filters.js:136
+#: templates/js/translated/table_filters.js:142
msgid "Has Available Stock"
msgstr "Van elérhető készlete"
-#: templates/js/translated/table_filters.js:152
+#: templates/js/translated/table_filters.js:158
msgid "Allow Variant Stock"
msgstr "Készlet változatok engedélyezése"
-#: templates/js/translated/table_filters.js:164
-#: templates/js/translated/table_filters.js:692
+#: templates/js/translated/table_filters.js:170
+#: templates/js/translated/table_filters.js:714
msgid "Has Pricing"
msgstr "Van árazás"
-#: templates/js/translated/table_filters.js:204
-#: templates/js/translated/table_filters.js:291
+#: templates/js/translated/table_filters.js:210
+#: templates/js/translated/table_filters.js:297
msgid "Include sublocations"
msgstr "Alhelyekkel együtt"
-#: templates/js/translated/table_filters.js:205
+#: templates/js/translated/table_filters.js:211
msgid "Include locations"
msgstr "Helyekkel együtt"
-#: templates/js/translated/table_filters.js:224
-#: templates/js/translated/table_filters.js:225
-#: templates/js/translated/table_filters.js:624
+#: templates/js/translated/table_filters.js:230
+#: templates/js/translated/table_filters.js:231
+#: templates/js/translated/table_filters.js:646
msgid "Include subcategories"
msgstr "Alkategóriákkal együtt"
-#: templates/js/translated/table_filters.js:233
-#: templates/js/translated/table_filters.js:672
+#: templates/js/translated/table_filters.js:239
+#: templates/js/translated/table_filters.js:694
msgid "Subscribed"
msgstr "Értesítés beállítva"
-#: templates/js/translated/table_filters.js:244
-#: templates/js/translated/table_filters.js:326
+#: templates/js/translated/table_filters.js:250
+#: templates/js/translated/table_filters.js:332
msgid "Is Serialized"
msgstr "Sorozatszámos"
-#: templates/js/translated/table_filters.js:247
-#: templates/js/translated/table_filters.js:333
+#: templates/js/translated/table_filters.js:253
+#: templates/js/translated/table_filters.js:339
msgid "Serial number GTE"
msgstr "Sorozatszám >="
-#: templates/js/translated/table_filters.js:248
-#: templates/js/translated/table_filters.js:334
+#: templates/js/translated/table_filters.js:254
+#: templates/js/translated/table_filters.js:340
msgid "Serial number greater than or equal to"
msgstr "Sorozatszám nagyobb vagy egyenlő mint"
-#: templates/js/translated/table_filters.js:251
-#: templates/js/translated/table_filters.js:337
+#: templates/js/translated/table_filters.js:257
+#: templates/js/translated/table_filters.js:343
msgid "Serial number LTE"
msgstr "Sorozatszám <="
-#: templates/js/translated/table_filters.js:252
-#: templates/js/translated/table_filters.js:338
+#: templates/js/translated/table_filters.js:258
+#: templates/js/translated/table_filters.js:344
msgid "Serial number less than or equal to"
msgstr "Sorozatszám kisebb vagy egyenlő mint"
-#: templates/js/translated/table_filters.js:255
-#: templates/js/translated/table_filters.js:256
-#: templates/js/translated/table_filters.js:329
-#: templates/js/translated/table_filters.js:330
+#: templates/js/translated/table_filters.js:261
+#: templates/js/translated/table_filters.js:262
+#: templates/js/translated/table_filters.js:335
+#: templates/js/translated/table_filters.js:336
msgid "Serial number"
msgstr "Sorozatszám"
-#: templates/js/translated/table_filters.js:260
-#: templates/js/translated/table_filters.js:351
+#: templates/js/translated/table_filters.js:266
+#: templates/js/translated/table_filters.js:357
msgid "Batch code"
msgstr "Batch kód"
-#: templates/js/translated/table_filters.js:271
-#: templates/js/translated/table_filters.js:613
+#: templates/js/translated/table_filters.js:277
+#: templates/js/translated/table_filters.js:635
msgid "Active parts"
msgstr "Aktív alkatrész"
-#: templates/js/translated/table_filters.js:272
+#: templates/js/translated/table_filters.js:278
msgid "Show stock for active parts"
msgstr "Aktív alkatrészek készletének megjelenítése"
-#: templates/js/translated/table_filters.js:277
+#: templates/js/translated/table_filters.js:283
msgid "Part is an assembly"
msgstr "Az alkatrész egy gyártmány"
-#: templates/js/translated/table_filters.js:281
+#: templates/js/translated/table_filters.js:287
msgid "Is allocated"
msgstr "Lefoglalt"
-#: templates/js/translated/table_filters.js:282
+#: templates/js/translated/table_filters.js:288
msgid "Item has been allocated"
msgstr "Az tétel lefoglalásra került"
-#: templates/js/translated/table_filters.js:287
+#: templates/js/translated/table_filters.js:293
msgid "Stock is available for use"
msgstr "Felhasználható készlet"
-#: templates/js/translated/table_filters.js:292
+#: templates/js/translated/table_filters.js:298
msgid "Include stock in sublocations"
msgstr "Alhelyeken lévő készlettel együtt"
-#: templates/js/translated/table_filters.js:297
+#: templates/js/translated/table_filters.js:303
msgid "Show stock items which are depleted"
msgstr "Kimerült készlet tételek megjelenítése"
-#: templates/js/translated/table_filters.js:302
+#: templates/js/translated/table_filters.js:308
msgid "Show items which are in stock"
msgstr "Készleten lévő tételek megjelenítése"
-#: templates/js/translated/table_filters.js:306
+#: templates/js/translated/table_filters.js:312
msgid "In Production"
msgstr "Gyártásban"
-#: templates/js/translated/table_filters.js:307
+#: templates/js/translated/table_filters.js:313
msgid "Show items which are in production"
msgstr "Gyártásban lévő tételek megjelenítése"
-#: templates/js/translated/table_filters.js:311
+#: templates/js/translated/table_filters.js:317
msgid "Include Variants"
msgstr "Változatokkal együtt"
-#: templates/js/translated/table_filters.js:312
+#: templates/js/translated/table_filters.js:318
msgid "Include stock items for variant parts"
msgstr "Alkatrészváltozatok készletével együtt"
-#: templates/js/translated/table_filters.js:316
+#: templates/js/translated/table_filters.js:322
msgid "Installed"
msgstr "Beépítve"
-#: templates/js/translated/table_filters.js:317
+#: templates/js/translated/table_filters.js:323
msgid "Show stock items which are installed in another item"
msgstr "Másik tételbe beépült tételek mutatása"
-#: templates/js/translated/table_filters.js:322
+#: templates/js/translated/table_filters.js:328
msgid "Show items which have been assigned to a customer"
msgstr "Készlet tételek melyek hozzá vannak rendelve egy vevőhöz"
-#: templates/js/translated/table_filters.js:342
-#: templates/js/translated/table_filters.js:343
+#: templates/js/translated/table_filters.js:348
+#: templates/js/translated/table_filters.js:349
msgid "Stock status"
msgstr "Készlet állapota"
-#: templates/js/translated/table_filters.js:346
+#: templates/js/translated/table_filters.js:352
msgid "Has batch code"
msgstr "Van batch kódja"
-#: templates/js/translated/table_filters.js:354
-msgid "Tracked"
-msgstr "Követett"
-
-#: templates/js/translated/table_filters.js:355
+#: templates/js/translated/table_filters.js:361
msgid "Stock item is tracked by either batch code or serial number"
msgstr "Követett készlet tétel sorozatszámmal vagy batch kóddal"
-#: templates/js/translated/table_filters.js:360
+#: templates/js/translated/table_filters.js:366
msgid "Has purchase price"
msgstr "Van beszerzési ára"
-#: templates/js/translated/table_filters.js:361
+#: templates/js/translated/table_filters.js:367
msgid "Show stock items which have a purchase price set"
msgstr "Beszerzési árral rendelkező készlet tételek megjelenítése"
-#: templates/js/translated/table_filters.js:365
+#: templates/js/translated/table_filters.js:371
msgid "Expiry Date before"
msgstr "Lejárat előtt"
-#: templates/js/translated/table_filters.js:369
+#: templates/js/translated/table_filters.js:375
msgid "Expiry Date after"
msgstr "Lejárat után"
-#: templates/js/translated/table_filters.js:382
+#: templates/js/translated/table_filters.js:388
msgid "Show stock items which have expired"
msgstr "Lejárt készlet tételek megjelenítése"
-#: templates/js/translated/table_filters.js:388
+#: templates/js/translated/table_filters.js:394
msgid "Show stock which is close to expiring"
msgstr "Hamarosan lejáró készlet tételek megjelenítése"
-#: templates/js/translated/table_filters.js:402
+#: templates/js/translated/table_filters.js:408
msgid "Test Passed"
msgstr "Teszten megfelelt"
-#: templates/js/translated/table_filters.js:406
+#: templates/js/translated/table_filters.js:412
msgid "Include Installed Items"
msgstr "Beépített tételekkel együtt"
-#: templates/js/translated/table_filters.js:445
+#: templates/js/translated/table_filters.js:451
msgid "Build status"
msgstr "Gyártási állapot"
-#: templates/js/translated/table_filters.js:625
+#: templates/js/translated/table_filters.js:647
msgid "Include parts in subcategories"
msgstr "Alkategóriákkal együtt"
-#: templates/js/translated/table_filters.js:630
+#: templates/js/translated/table_filters.js:652
msgid "Show active parts"
msgstr "Aktív alkatrészek megjelenítése"
-#: templates/js/translated/table_filters.js:638
+#: templates/js/translated/table_filters.js:660
msgid "Available stock"
msgstr "Elérhető"
-#: templates/js/translated/table_filters.js:646
-#: templates/js/translated/table_filters.js:742
+#: templates/js/translated/table_filters.js:668
+#: templates/js/translated/table_filters.js:764
msgid "Has Units"
msgstr ""
-#: templates/js/translated/table_filters.js:647
+#: templates/js/translated/table_filters.js:669
msgid "Part has defined units"
msgstr ""
-#: templates/js/translated/table_filters.js:651
+#: templates/js/translated/table_filters.js:673
msgid "Has IPN"
msgstr "Van IPN-je"
-#: templates/js/translated/table_filters.js:652
+#: templates/js/translated/table_filters.js:674
msgid "Part has internal part number"
msgstr "Van belső cikkszáma"
-#: templates/js/translated/table_filters.js:656
+#: templates/js/translated/table_filters.js:678
msgid "In stock"
msgstr "Készleten"
-#: templates/js/translated/table_filters.js:664
+#: templates/js/translated/table_filters.js:686
msgid "Purchasable"
msgstr "Beszerezhető"
-#: templates/js/translated/table_filters.js:676
+#: templates/js/translated/table_filters.js:698
msgid "Has stocktake entries"
msgstr "Volt leltár"
-#: templates/js/translated/table_filters.js:738
+#: templates/js/translated/table_filters.js:760
msgid "Has Choices"
msgstr ""
@@ -12391,51 +12552,51 @@ msgstr "Táblázat exportálása"
msgid "Select File Format"
msgstr "Fájlfomátum kiválasztása"
-#: templates/js/translated/tables.js:561
+#: templates/js/translated/tables.js:537
msgid "Loading data"
msgstr "Adatok betöltése"
-#: templates/js/translated/tables.js:564
+#: templates/js/translated/tables.js:540
msgid "rows per page"
msgstr "sor oldalanként"
-#: templates/js/translated/tables.js:569
+#: templates/js/translated/tables.js:545
msgid "Showing all rows"
msgstr "Összes sor mutatása"
-#: templates/js/translated/tables.js:571
+#: templates/js/translated/tables.js:547
msgid "Showing"
msgstr "Látható"
-#: templates/js/translated/tables.js:571
+#: templates/js/translated/tables.js:547
msgid "to"
msgstr "-"
-#: templates/js/translated/tables.js:571
+#: templates/js/translated/tables.js:547
msgid "of"
msgstr "a"
-#: templates/js/translated/tables.js:571
+#: templates/js/translated/tables.js:547
msgid "rows"
msgstr "sorból,"
-#: templates/js/translated/tables.js:578
+#: templates/js/translated/tables.js:554
msgid "No matching results"
msgstr "Nincs egyező eredmény"
-#: templates/js/translated/tables.js:581
+#: templates/js/translated/tables.js:557
msgid "Hide/Show pagination"
msgstr "Lapozó elrejtése/megjelenítése"
-#: templates/js/translated/tables.js:587
+#: templates/js/translated/tables.js:563
msgid "Toggle"
msgstr "Átváltás"
-#: templates/js/translated/tables.js:590
+#: templates/js/translated/tables.js:566
msgid "Columns"
msgstr "Oszlopok"
-#: templates/js/translated/tables.js:593
+#: templates/js/translated/tables.js:569
msgid "All"
msgstr "Összes"
@@ -12617,50 +12778,6 @@ msgstr "Email beállítások"
msgid "Email settings not configured"
msgstr "Email beállítások hiányoznak"
-#: templates/stock_table.html:17
-msgid "Barcode Actions"
-msgstr "Vonalkód műveletek"
-
-#: templates/stock_table.html:28
-msgid "Stock Options"
-msgstr "Készlet opciók"
-
-#: templates/stock_table.html:33
-msgid "Add to selected stock items"
-msgstr "Kiválasztott tételek mennyiségének növelése"
-
-#: templates/stock_table.html:34
-msgid "Remove from selected stock items"
-msgstr "Kiválasztott tételek mennyiségének csökkentése"
-
-#: templates/stock_table.html:35
-msgid "Stocktake selected stock items"
-msgstr "Kiválasztott készlet tételek leltározása"
-
-#: templates/stock_table.html:36
-msgid "Move selected stock items"
-msgstr "Kiválasztott tételek áthelyezése"
-
-#: templates/stock_table.html:37
-msgid "Merge selected stock items"
-msgstr "Kiválasztott tételek összevonása"
-
-#: templates/stock_table.html:37
-msgid "Merge stock"
-msgstr "Készlet összevonása"
-
-#: templates/stock_table.html:38
-msgid "Order selected items"
-msgstr "Kiválasztott tételek megrendelése"
-
-#: templates/stock_table.html:42
-msgid "Delete selected items"
-msgstr "Kiválasztott tételek törlése"
-
-#: templates/stock_table.html:42
-msgid "Delete stock"
-msgstr "Készlet törlése"
-
#: templates/yesnolabel.html:4
msgid "Yes"
msgstr "Igen"
@@ -12693,35 +12810,35 @@ msgstr "Jogosultságok"
msgid "Important dates"
msgstr "Fontos dátumok"
-#: users/models.py:230
+#: users/models.py:236
msgid "Permission set"
msgstr "Jogosultságok"
-#: users/models.py:238
+#: users/models.py:244
msgid "Group"
msgstr "Csoport"
-#: users/models.py:241
+#: users/models.py:247
msgid "View"
msgstr "Nézet"
-#: users/models.py:241
+#: users/models.py:247
msgid "Permission to view items"
msgstr "Jogosultság tételek megtekintéséhez"
-#: users/models.py:243
+#: users/models.py:249
msgid "Permission to add items"
msgstr "Jogosultság tételek hozzáadásához"
-#: users/models.py:245
+#: users/models.py:251
msgid "Change"
msgstr "Módosítás"
-#: users/models.py:245
+#: users/models.py:251
msgid "Permissions to edit items"
msgstr "Jogosultság tételek szerkesztéséhez"
-#: users/models.py:247
+#: users/models.py:253
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 dafd1939a1..e18384a974 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: 2023-06-09 00:32+0000\n"
-"PO-Revision-Date: 2023-06-09 10:27\n"
+"POT-Creation-Date: 2023-06-20 07:01+0000\n"
+"PO-Revision-Date: 2023-06-20 07:06\n"
"Last-Translator: \n"
"Language-Team: Indonesian\n"
"Language: id_ID\n"
@@ -23,52 +23,52 @@ msgstr "API endpoint tidak ditemukan"
#: InvenTree/api.py:299
msgid "User does not have permission to view this model"
-msgstr ""
+msgstr "Pengguna tidak memiliki izin untuk melihat model ini"
#: InvenTree/conversion.py:62
msgid "No value provided"
-msgstr ""
+msgstr "Nilai tidak tersedia"
#: InvenTree/conversion.py:84
msgid "Provided value is not a valid number"
-msgstr ""
+msgstr "Nilai yang diberikan bukan angka yang valid"
#: InvenTree/conversion.py:86
msgid "Provided value has an invalid unit"
-msgstr ""
+msgstr "Nilai yang diberikan mengandung satuan yang tidak valid"
#: InvenTree/conversion.py:88
msgid "Provided value could not be converted to the specified unit"
-msgstr ""
+msgstr "Nilai yang diberikan tidak dapat dikonversi ke satuan yang dipilih"
#: InvenTree/exceptions.py:90
msgid "Error details can be found in the admin panel"
-msgstr ""
+msgstr "Detail terkait galat dapat dilihat di panel admin"
#: InvenTree/fields.py:131
msgid "Enter date"
msgstr "Masukkan tanggal"
-#: InvenTree/fields.py:206 InvenTree/models.py:766 build/serializers.py:427
-#: build/serializers.py:506 build/templates/build/sidebar.html:23
-#: company/models.py:597 company/templates/company/sidebar.html:35
-#: order/models.py:1089 order/templates/order/po_sidebar.html:11
+#: InvenTree/fields.py:206 InvenTree/models.py:766 build/serializers.py:435
+#: build/serializers.py:514 build/templates/build/sidebar.html:21
+#: company/models.py:746 company/templates/company/sidebar.html:37
+#: order/models.py:1102 order/templates/order/po_sidebar.html:11
#: order/templates/order/return_order_sidebar.html:9
#: order/templates/order/so_sidebar.html:17 part/admin.py:41
-#: part/models.py:3005 part/templates/part/part_sidebar.html:63
+#: part/models.py:3039 part/templates/part/part_sidebar.html:63
#: report/templates/report/inventree_build_order_base.html:172
#: stock/admin.py:121 stock/models.py:2160 stock/models.py:2268
-#: stock/serializers.py:342 stock/serializers.py:475 stock/serializers.py:556
-#: stock/serializers.py:839 stock/serializers.py:938 stock/serializers.py:1070
-#: stock/templates/stock/stock_sidebar.html:25
-#: templates/js/translated/barcode.js:143 templates/js/translated/bom.js:1224
-#: templates/js/translated/company.js:1294 templates/js/translated/order.js:347
-#: templates/js/translated/part.js:1054
-#: templates/js/translated/purchase_order.js:2168
-#: templates/js/translated/return_order.js:760
-#: templates/js/translated/sales_order.js:1055
-#: templates/js/translated/sales_order.js:1959
-#: templates/js/translated/stock.js:1460 templates/js/translated/stock.js:2164
+#: stock/serializers.py:408 stock/serializers.py:542 stock/serializers.py:623
+#: stock/serializers.py:681 stock/serializers.py:956 stock/serializers.py:1055
+#: stock/serializers.py:1187 stock/templates/stock/stock_sidebar.html:25
+#: templates/js/translated/barcode.js:143 templates/js/translated/bom.js:1244
+#: templates/js/translated/company.js:1715 templates/js/translated/order.js:347
+#: templates/js/translated/part.js:1053
+#: templates/js/translated/purchase_order.js:2178
+#: templates/js/translated/return_order.js:772
+#: templates/js/translated/sales_order.js:1067
+#: templates/js/translated/sales_order.js:1971
+#: templates/js/translated/stock.js:1459 templates/js/translated/stock.js:2321
msgid "Notes"
msgstr "Catatan"
@@ -79,49 +79,53 @@ msgstr ""
#: InvenTree/format.py:162
msgid "Provided value does not match required pattern: "
-msgstr ""
+msgstr "Nilai yang diberikan tidak sesuai dengan pola yang ditentukan: "
-#: InvenTree/forms.py:145
+#: InvenTree/forms.py:147
msgid "Enter password"
msgstr "Masukkan sandi"
-#: InvenTree/forms.py:146
+#: InvenTree/forms.py:148
msgid "Enter new password"
msgstr "Masukkan kata sandi baru"
-#: InvenTree/forms.py:155
+#: InvenTree/forms.py:157
msgid "Confirm password"
msgstr "Konfirmasikan kata sandi"
-#: InvenTree/forms.py:156
+#: InvenTree/forms.py:158
msgid "Confirm new password"
msgstr "Konfirmasi sandi baru"
-#: InvenTree/forms.py:160
+#: InvenTree/forms.py:162
msgid "Old password"
msgstr "Kata sandi lama"
-#: InvenTree/forms.py:179
+#: InvenTree/forms.py:181
msgid "Email (again)"
msgstr "Email (ulang)"
-#: InvenTree/forms.py:183
+#: InvenTree/forms.py:185
msgid "Email address confirmation"
msgstr "Konfirmasi alamat email"
-#: InvenTree/forms.py:204
+#: InvenTree/forms.py:206
msgid "You must type the same email each time."
msgstr "Masukkan email yang sama."
-#: InvenTree/forms.py:230 InvenTree/forms.py:236
+#: InvenTree/forms.py:237 InvenTree/forms.py:243
msgid "The provided primary email address is not valid."
-msgstr ""
+msgstr "Alamat surel utama yang diberikan tidak valid."
-#: InvenTree/forms.py:242
+#: InvenTree/forms.py:249
msgid "The provided email domain is not approved."
+msgstr "Domain surel yang diberikan tidak perbolehkan."
+
+#: InvenTree/forms.py:345
+msgid "Registration is disabled."
msgstr ""
-#: InvenTree/helpers.py:462 order/models.py:442 order/models.py:611
+#: InvenTree/helpers.py:462 order/models.py:455 order/models.py:624
msgid "Invalid quantity provided"
msgstr "Jumlah yang diberikan tidak valid"
@@ -159,7 +163,7 @@ msgstr ""
#: InvenTree/helpers.py:751
msgid "Remove HTML tags from this value"
-msgstr ""
+msgstr "Hapus tag-tag HTML dari nilai ini"
#: InvenTree/helpers_model.py:133
msgid "Connection error"
@@ -239,7 +243,7 @@ msgstr "Tautan eksternal tidak ditemukan"
#: InvenTree/models.py:486 stock/models.py:2262
#: templates/js/translated/attachment.js:119
-#: templates/js/translated/attachment.js:306
+#: templates/js/translated/attachment.js:316
msgid "Attachment"
msgstr "Lampiran"
@@ -247,29 +251,30 @@ msgstr "Lampiran"
msgid "Select file to attach"
msgstr "Pilih file untuk dilampirkan"
-#: InvenTree/models.py:493 common/models.py:2695 company/models.py:132
-#: company/models.py:306 company/models.py:584 order/models.py:236
-#: order/models.py:1093 order/models.py:1453 part/admin.py:39
-#: part/models.py:901 part/templates/part/part_scheduling.html:11
+#: InvenTree/models.py:493 common/models.py:2681 company/models.py:128
+#: company/models.py:381 company/models.py:455 company/models.py:733
+#: order/models.py:240 order/models.py:1106 order/models.py:1466
+#: part/admin.py:39 part/models.py:902
+#: part/templates/part/part_scheduling.html:11
#: report/templates/report/inventree_build_order_base.html:164
-#: stock/admin.py:120 templates/js/translated/company.js:977
-#: templates/js/translated/company.js:1283 templates/js/translated/order.js:351
-#: templates/js/translated/part.js:2316
-#: templates/js/translated/purchase_order.js:2008
-#: templates/js/translated/purchase_order.js:2172
-#: templates/js/translated/return_order.js:764
-#: templates/js/translated/sales_order.js:1044
-#: templates/js/translated/sales_order.js:1964
+#: stock/admin.py:120 templates/js/translated/company.js:1350
+#: templates/js/translated/company.js:1704 templates/js/translated/order.js:351
+#: templates/js/translated/part.js:2392
+#: templates/js/translated/purchase_order.js:2018
+#: templates/js/translated/purchase_order.js:2182
+#: templates/js/translated/return_order.js:776
+#: templates/js/translated/sales_order.js:1056
+#: templates/js/translated/sales_order.js:1976
msgid "Link"
msgstr "Tautan"
-#: InvenTree/models.py:494 build/models.py:291 part/models.py:902
+#: InvenTree/models.py:494 build/models.py:295 part/models.py:903
#: stock/models.py:735
msgid "Link to external URL"
msgstr "Tautan menuju URL eksternal"
#: InvenTree/models.py:497 templates/js/translated/attachment.js:120
-#: templates/js/translated/attachment.js:321
+#: templates/js/translated/attachment.js:331
msgid "Comment"
msgstr "Komentar"
@@ -277,13 +282,13 @@ msgstr "Komentar"
msgid "File comment"
msgstr "Komentar file"
-#: InvenTree/models.py:503 InvenTree/models.py:504 common/models.py:2154
-#: common/models.py:2155 common/models.py:2368 common/models.py:2369
-#: common/models.py:2625 common/models.py:2626 part/models.py:3013
-#: part/models.py:3101 part/models.py:3180 part/models.py:3200
-#: plugin/models.py:217 plugin/models.py:218
+#: InvenTree/models.py:503 InvenTree/models.py:504 common/models.py:2140
+#: common/models.py:2141 common/models.py:2354 common/models.py:2355
+#: common/models.py:2611 common/models.py:2612 part/models.py:3047
+#: part/models.py:3135 part/models.py:3214 part/models.py:3234
+#: plugin/models.py:218 plugin/models.py:219
#: report/templates/report/inventree_test_report_base.html:105
-#: templates/js/translated/stock.js:2773
+#: templates/js/translated/stock.js:2904
msgid "User"
msgstr "Pengguna"
@@ -324,53 +329,54 @@ msgstr ""
msgid "Invalid choice"
msgstr "Pilihan tidak valid"
-#: InvenTree/models.py:648 InvenTree/models.py:649 common/models.py:2354
-#: company/models.py:390 label/models.py:103 part/models.py:847
-#: part/models.py:3400 plugin/models.py:41 report/models.py:160
+#: InvenTree/models.py:648 InvenTree/models.py:649 common/models.py:2340
+#: company/models.py:539 label/models.py:111 part/models.py:848
+#: part/models.py:3434 plugin/models.py:42 report/models.py:160
#: templates/InvenTree/settings/mixins/urls.html:13
#: templates/InvenTree/settings/notifications.html:17
-#: templates/InvenTree/settings/plugin.html:80
+#: templates/InvenTree/settings/plugin.html:74
#: templates/InvenTree/settings/plugin_settings.html:22
-#: templates/js/translated/company.js:658
-#: templates/js/translated/company.js:706
-#: templates/js/translated/company.js:871
-#: templates/js/translated/company.js:1071 templates/js/translated/part.js:1160
-#: templates/js/translated/part.js:1447 templates/js/translated/part.js:1583
-#: templates/js/translated/part.js:2699 templates/js/translated/stock.js:2464
+#: templates/js/translated/company.js:665
+#: templates/js/translated/company.js:713
+#: templates/js/translated/company.js:940
+#: templates/js/translated/company.js:1196
+#: templates/js/translated/company.js:1444 templates/js/translated/part.js:1159
+#: templates/js/translated/part.js:1446 templates/js/translated/part.js:1582
+#: templates/js/translated/part.js:2684 templates/js/translated/stock.js:2595
msgid "Name"
msgstr "Nama"
-#: InvenTree/models.py:655 build/models.py:164
+#: InvenTree/models.py:655 build/models.py:168
#: build/templates/build/detail.html:24 common/models.py:111
-#: company/models.py:312 company/models.py:590
+#: company/models.py:461 company/models.py:739
#: company/templates/company/company_base.html:72
#: company/templates/company/manufacturer_part.html:75
-#: company/templates/company/supplier_part.html:108 label/models.py:110
-#: order/models.py:232 order/models.py:1117 part/admin.py:194 part/admin.py:276
-#: part/models.py:869 part/models.py:3416 part/templates/part/category.html:81
+#: company/templates/company/supplier_part.html:108 label/models.py:118
+#: order/models.py:232 order/models.py:1130 part/admin.py:194 part/admin.py:276
+#: part/models.py:870 part/models.py:3450 part/templates/part/category.html:81
#: part/templates/part/part_base.html:172
#: part/templates/part/part_scheduling.html:12 report/models.py:173
-#: report/models.py:587 report/models.py:631
+#: report/models.py:589 report/models.py:633
#: report/templates/report/inventree_build_order_base.html:117
#: stock/admin.py:41 stock/templates/stock/location.html:123
#: templates/InvenTree/settings/notifications.html:19
#: templates/InvenTree/settings/plugin_settings.html:27
#: templates/InvenTree/settings/settings_staff_js.html:75
-#: templates/js/translated/bom.js:632 templates/js/translated/bom.js:933
-#: templates/js/translated/build.js:2857 templates/js/translated/company.js:510
-#: templates/js/translated/company.js:988
-#: templates/js/translated/company.js:1251 templates/js/translated/order.js:298
-#: templates/js/translated/part.js:1212 templates/js/translated/part.js:1456
-#: templates/js/translated/part.js:1594 templates/js/translated/part.js:1933
-#: templates/js/translated/part.js:2247 templates/js/translated/part.js:2735
-#: templates/js/translated/part.js:2826
-#: templates/js/translated/purchase_order.js:1666
-#: templates/js/translated/purchase_order.js:1812
-#: templates/js/translated/purchase_order.js:1990
-#: templates/js/translated/return_order.js:302
-#: templates/js/translated/sales_order.js:790
-#: templates/js/translated/stock.js:1439 templates/js/translated/stock.js:1817
-#: templates/js/translated/stock.js:2496 templates/js/translated/stock.js:2568
+#: templates/js/translated/bom.js:633 templates/js/translated/bom.js:951
+#: templates/js/translated/build.js:2062 templates/js/translated/company.js:517
+#: templates/js/translated/company.js:1361
+#: templates/js/translated/company.js:1672 templates/js/translated/index.js:114
+#: templates/js/translated/order.js:298 templates/js/translated/part.js:1211
+#: templates/js/translated/part.js:1455 templates/js/translated/part.js:1593
+#: templates/js/translated/part.js:1932 templates/js/translated/part.js:2323
+#: templates/js/translated/part.js:2720 templates/js/translated/part.js:2811
+#: templates/js/translated/purchase_order.js:1681
+#: templates/js/translated/purchase_order.js:1827
+#: templates/js/translated/purchase_order.js:2000
+#: templates/js/translated/return_order.js:314
+#: templates/js/translated/sales_order.js:802
+#: templates/js/translated/stock.js:1438 templates/js/translated/stock.js:1974
+#: templates/js/translated/stock.js:2627 templates/js/translated/stock.js:2699
msgid "Description"
msgstr "Keterangan"
@@ -383,7 +389,7 @@ msgid "parent"
msgstr "induk"
#: InvenTree/models.py:671 InvenTree/models.py:672
-#: templates/js/translated/part.js:2744 templates/js/translated/stock.js:2505
+#: templates/js/translated/part.js:2729 templates/js/translated/stock.js:2636
msgid "Path"
msgstr "Direktori"
@@ -419,16 +425,16 @@ msgstr "Terjadi Kesalahan Server"
msgid "An error has been logged by the server."
msgstr "Sebuah kesalahan telah dicatat oleh server."
-#: InvenTree/serializers.py:60 part/models.py:3897
+#: InvenTree/serializers.py:60 part/models.py:3941
msgid "Must be a valid number"
msgstr "Harus berupa angka yang valid"
-#: InvenTree/serializers.py:90 company/models.py:154
-#: company/templates/company/company_base.html:107 part/models.py:2852
+#: InvenTree/serializers.py:90 company/models.py:150
+#: company/templates/company/company_base.html:107 part/models.py:2886
#: templates/InvenTree/settings/settings_staff_js.html:44
#: templates/currency_data.html:5
msgid "Currency"
-msgstr ""
+msgstr "Mata Uang"
#: InvenTree/serializers.py:93
msgid "Select currency from available options"
@@ -497,130 +503,130 @@ 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:714
+#: InvenTree/settings.py:741
msgid "Czech"
msgstr "Ceko"
-#: InvenTree/settings.py:715
+#: InvenTree/settings.py:742
msgid "Danish"
msgstr "Denmark"
-#: InvenTree/settings.py:716
+#: InvenTree/settings.py:743
msgid "German"
msgstr "Jerman"
-#: InvenTree/settings.py:717
+#: InvenTree/settings.py:744
msgid "Greek"
msgstr "Yunani"
-#: InvenTree/settings.py:718
+#: InvenTree/settings.py:745
msgid "English"
msgstr "Inggris"
-#: InvenTree/settings.py:719
+#: InvenTree/settings.py:746
msgid "Spanish"
msgstr "Spanyol"
-#: InvenTree/settings.py:720
+#: InvenTree/settings.py:747
msgid "Spanish (Mexican)"
msgstr "Spanyol (Meksiko)"
-#: InvenTree/settings.py:721
+#: InvenTree/settings.py:748
msgid "Farsi / Persian"
msgstr "Farsi / Persia"
-#: InvenTree/settings.py:722
+#: InvenTree/settings.py:749
msgid "Finnish"
msgstr ""
-#: InvenTree/settings.py:723
+#: InvenTree/settings.py:750
msgid "French"
msgstr "Perancis"
-#: InvenTree/settings.py:724
+#: InvenTree/settings.py:751
msgid "Hebrew"
msgstr "Ibrani"
-#: InvenTree/settings.py:725
+#: InvenTree/settings.py:752
msgid "Hungarian"
msgstr "Hungaria"
-#: InvenTree/settings.py:726
+#: InvenTree/settings.py:753
msgid "Italian"
msgstr "Itali"
-#: InvenTree/settings.py:727
+#: InvenTree/settings.py:754
msgid "Japanese"
msgstr "Jepang"
-#: InvenTree/settings.py:728
+#: InvenTree/settings.py:755
msgid "Korean"
msgstr "Korea"
-#: InvenTree/settings.py:729
+#: InvenTree/settings.py:756
msgid "Dutch"
msgstr "Belanda"
-#: InvenTree/settings.py:730
+#: InvenTree/settings.py:757
msgid "Norwegian"
msgstr "Norwegia"
-#: InvenTree/settings.py:731
+#: InvenTree/settings.py:758
msgid "Polish"
msgstr "Polandia"
-#: InvenTree/settings.py:732
+#: InvenTree/settings.py:759
msgid "Portuguese"
msgstr "Portugis"
-#: InvenTree/settings.py:733
+#: InvenTree/settings.py:760
msgid "Portuguese (Brazilian)"
msgstr "Portugis (Brasil)"
-#: InvenTree/settings.py:734
+#: InvenTree/settings.py:761
msgid "Russian"
msgstr "Rusia"
-#: InvenTree/settings.py:735
+#: InvenTree/settings.py:762
msgid "Slovenian"
msgstr ""
-#: InvenTree/settings.py:736
+#: InvenTree/settings.py:763
msgid "Swedish"
msgstr "Swedia"
-#: InvenTree/settings.py:737
+#: InvenTree/settings.py:764
msgid "Thai"
msgstr "Thai"
-#: InvenTree/settings.py:738
+#: InvenTree/settings.py:765
msgid "Turkish"
msgstr "Turki"
-#: InvenTree/settings.py:739
+#: InvenTree/settings.py:766
msgid "Vietnamese"
msgstr "Vietnam"
-#: InvenTree/settings.py:740
+#: InvenTree/settings.py:767
msgid "Chinese"
msgstr "Cina"
-#: InvenTree/status.py:61 part/serializers.py:878
+#: InvenTree/status.py:68 part/serializers.py:940
msgid "Background worker check failed"
msgstr ""
-#: InvenTree/status.py:65
+#: InvenTree/status.py:72
msgid "Email backend not configured"
msgstr ""
-#: InvenTree/status.py:68
+#: InvenTree/status.py:75
msgid "InvenTree system health checks failed"
-msgstr ""
+msgstr "Pengecekan kesehatan sistem InvenTree gagal"
#: InvenTree/status_codes.py:12 InvenTree/status_codes.py:40
#: InvenTree/status_codes.py:148 InvenTree/status_codes.py:167
#: InvenTree/status_codes.py:188 generic/states/tests.py:16
-#: templates/js/translated/table_filters.js:511
+#: templates/js/translated/table_filters.js:533
msgid "Pending"
msgstr ""
@@ -630,7 +636,7 @@ msgstr "Diletakkan"
#: InvenTree/status_codes.py:14 InvenTree/status_codes.py:151
#: InvenTree/status_codes.py:172 generic/states/tests.py:18
-#: order/templates/order/order_base.html:162
+#: order/templates/order/order_base.html:158
#: order/templates/order/sales_order_base.html:162
msgid "Complete"
msgstr "Selesai"
@@ -654,10 +660,10 @@ msgstr "Dikembalikan"
msgid "In Progress"
msgstr ""
-#: InvenTree/status_codes.py:42 order/models.py:1332
-#: templates/js/translated/sales_order.js:1509
-#: templates/js/translated/sales_order.js:1630
-#: templates/js/translated/sales_order.js:1934
+#: InvenTree/status_codes.py:42 order/models.py:1345
+#: templates/js/translated/sales_order.js:1521
+#: templates/js/translated/sales_order.js:1642
+#: templates/js/translated/sales_order.js:1946
msgid "Shipped"
msgstr "Dikirim"
@@ -689,7 +695,7 @@ msgstr ""
msgid "Legacy stock tracking entry"
msgstr ""
-#: InvenTree/status_codes.py:93 templates/js/translated/stock.js:511
+#: InvenTree/status_codes.py:93 templates/js/translated/stock.js:510
msgid "Stock item created"
msgstr "Item stok dibuat"
@@ -745,7 +751,7 @@ msgstr "Dipisah dari item induk"
msgid "Split child item"
msgstr "Pisah item dari barang induk"
-#: InvenTree/status_codes.py:120 templates/js/translated/stock.js:2243
+#: InvenTree/status_codes.py:120 templates/js/translated/stock.js:1769
msgid "Merged stock items"
msgstr "Stok item digabungkan"
@@ -765,7 +771,7 @@ msgstr "Order output produksi selesai"
msgid "Build order output rejected"
msgstr ""
-#: InvenTree/status_codes.py:129 templates/js/translated/stock.js:1676
+#: InvenTree/status_codes.py:129 templates/js/translated/stock.js:1675
msgid "Consumed by build order"
msgstr "Terpakai oleh order produksi"
@@ -781,7 +787,7 @@ msgstr ""
msgid "Returned against Return Order"
msgstr ""
-#: InvenTree/status_codes.py:141 templates/js/translated/table_filters.js:321
+#: InvenTree/status_codes.py:141 templates/js/translated/table_filters.js:327
msgid "Sent to customer"
msgstr "Terkirim ke pelanggan"
@@ -849,83 +855,111 @@ msgstr "Bidang kata sandi tidak cocok"
msgid "Wrong password provided"
msgstr "Kata sandi yang salah"
-#: InvenTree/views.py:651 templates/navbar.html:157
+#: InvenTree/views.py:653 templates/navbar.html:157
msgid "System Information"
msgstr "Informasi Sistem"
-#: InvenTree/views.py:658 templates/navbar.html:168
+#: InvenTree/views.py:660 templates/navbar.html:168
msgid "About InvenTree"
msgstr "Tentang InvenTree"
-#: build/api.py:222
+#: build/api.py:242
msgid "Build must be cancelled before it can be deleted"
msgstr "Pesanan harus dibatalkan sebelum dapat dihapus"
-#: build/models.py:69 build/templates/build/build_base.html:9
+#: build/api.py:286 part/models.py:3833 templates/js/translated/bom.js:985
+#: templates/js/translated/bom.js:1025 templates/js/translated/build.js:2449
+#: templates/js/translated/table_filters.js:166
+#: templates/js/translated/table_filters.js:518
+msgid "Consumable"
+msgstr ""
+
+#: build/api.py:287 part/models.py:3827 part/templates/part/upload_bom.html:58
+#: templates/js/translated/bom.js:989 templates/js/translated/bom.js:1016
+#: templates/js/translated/build.js:2458
+#: templates/js/translated/table_filters.js:162
+#: templates/js/translated/table_filters.js:191
+#: templates/js/translated/table_filters.js:522
+msgid "Optional"
+msgstr ""
+
+#: build/api.py:288 templates/js/translated/table_filters.js:360
+#: templates/js/translated/table_filters.js:514
+msgid "Tracked"
+msgstr ""
+
+#: build/api.py:290 part/admin.py:64 templates/js/translated/build.js:1670
+#: templates/js/translated/build.js:2549
+#: templates/js/translated/sales_order.js:1918
+#: templates/js/translated/table_filters.js:506
+msgid "Allocated"
+msgstr ""
+
+#: build/models.py:73 build/templates/build/build_base.html:9
#: build/templates/build/build_base.html:27
#: report/templates/report/inventree_build_order_base.html:105
#: templates/email/build_order_completed.html:16
#: templates/email/overdue_build_order.html:15
-#: templates/js/translated/build.js:945 templates/js/translated/stock.js:2629
+#: templates/js/translated/build.js:953 templates/js/translated/stock.js:2760
msgid "Build Order"
msgstr "Order Produksi"
-#: build/models.py:70 build/templates/build/build_base.html:13
+#: build/models.py:74 build/templates/build/build_base.html:13
#: build/templates/build/index.html:8 build/templates/build/index.html:12
-#: order/templates/order/sales_order_detail.html:119
+#: order/templates/order/sales_order_detail.html:111
#: order/templates/order/so_sidebar.html:13
-#: part/templates/part/part_sidebar.html:22 templates/InvenTree/index.html:244
+#: part/templates/part/part_sidebar.html:22 templates/InvenTree/index.html:196
#: templates/InvenTree/search.html:141
#: templates/InvenTree/settings/sidebar.html:53
-#: templates/js/translated/search.js:228 users/models.py:42
+#: templates/js/translated/search.js:186 users/models.py:42
msgid "Build Orders"
msgstr "Order Produksi"
-#: build/models.py:111
+#: build/models.py:115
msgid "Invalid choice for parent build"
msgstr "Pilihan produksi induk tidak valid"
-#: build/models.py:155
+#: build/models.py:159
msgid "Build Order Reference"
msgstr "Referensi Order Produksi"
-#: build/models.py:156 order/models.py:359 order/models.py:765
-#: order/models.py:1087 order/models.py:1724 part/admin.py:278
-#: part/models.py:3798 part/templates/part/upload_bom.html:54
+#: build/models.py:160 order/models.py:372 order/models.py:778
+#: order/models.py:1100 order/models.py:1737 part/admin.py:278
+#: part/models.py:3842 part/templates/part/upload_bom.html:54
#: report/templates/report/inventree_bill_of_materials_report.html:139
#: report/templates/report/inventree_po_report_base.html:28
#: report/templates/report/inventree_return_order_report_base.html:26
#: report/templates/report/inventree_so_report_base.html:28
-#: templates/js/translated/bom.js:769 templates/js/translated/bom.js:943
-#: templates/js/translated/build.js:2098 templates/js/translated/order.js:291
+#: templates/js/translated/bom.js:770 templates/js/translated/bom.js:961
+#: templates/js/translated/build.js:2441 templates/js/translated/order.js:291
#: templates/js/translated/pricing.js:386
-#: templates/js/translated/purchase_order.js:2033
-#: templates/js/translated/return_order.js:713
-#: templates/js/translated/sales_order.js:1798
+#: templates/js/translated/purchase_order.js:2043
+#: templates/js/translated/return_order.js:725
+#: templates/js/translated/sales_order.js:1810
msgid "Reference"
msgstr "Referensi"
-#: build/models.py:167
+#: build/models.py:171
msgid "Brief description of the build (optional)"
msgstr ""
-#: build/models.py:175 build/templates/build/build_base.html:183
+#: build/models.py:179 build/templates/build/build_base.html:184
#: build/templates/build/detail.html:87
msgid "Parent Build"
msgstr "Produksi Induk"
-#: build/models.py:176
+#: build/models.py:180
msgid "BuildOrder to which this build is allocated"
msgstr "Produksi induk dari produksi ini"
-#: build/models.py:181 build/templates/build/build_base.html:98
-#: build/templates/build/detail.html:29 company/models.py:775
-#: order/models.py:1195 order/models.py:1311 order/models.py:1312
-#: part/models.py:391 part/models.py:2865 part/models.py:2979
-#: part/models.py:3119 part/models.py:3138 part/models.py:3157
-#: part/models.py:3178 part/models.py:3270 part/models.py:3555
-#: part/models.py:3663 part/models.py:3763 part/models.py:4077
-#: part/serializers.py:842 part/serializers.py:1245
+#: build/models.py:185 build/templates/build/build_base.html:98
+#: build/templates/build/detail.html:29 company/models.py:924
+#: order/models.py:1208 order/models.py:1324 order/models.py:1325
+#: part/models.py:392 part/models.py:2899 part/models.py:3013
+#: part/models.py:3153 part/models.py:3172 part/models.py:3191
+#: part/models.py:3212 part/models.py:3304 part/models.py:3589
+#: part/models.py:3712 part/models.py:3807 part/models.py:4121
+#: part/serializers.py:904 part/serializers.py:1307
#: part/templates/part/part_app_base.html:8
#: part/templates/part/part_pricing.html:12
#: part/templates/part/upload_bom.html:52
@@ -935,266 +969,229 @@ msgstr "Produksi induk dari produksi ini"
#: report/templates/report/inventree_po_report_base.html:27
#: report/templates/report/inventree_return_order_report_base.html:24
#: report/templates/report/inventree_so_report_base.html:27
-#: stock/serializers.py:156 stock/serializers.py:509
+#: stock/serializers.py:205 stock/serializers.py:576
#: templates/InvenTree/search.html:82
#: templates/email/build_order_completed.html:17
#: templates/email/build_order_required_stock.html:17
#: templates/email/low_stock_notification.html:15
#: templates/email/overdue_build_order.html:16
-#: templates/js/translated/barcode.js:529 templates/js/translated/bom.js:631
-#: templates/js/translated/bom.js:768 templates/js/translated/bom.js:887
-#: templates/js/translated/build.js:1403 templates/js/translated/build.js:1965
-#: templates/js/translated/build.js:2464 templates/js/translated/build.js:2868
-#: templates/js/translated/company.js:337
-#: templates/js/translated/company.js:822
-#: templates/js/translated/company.js:929
-#: templates/js/translated/company.js:1169 templates/js/translated/part.js:1918
-#: templates/js/translated/part.js:1990 templates/js/translated/part.js:2216
-#: templates/js/translated/pricing.js:369
-#: templates/js/translated/purchase_order.js:746
-#: templates/js/translated/purchase_order.js:1274
-#: templates/js/translated/purchase_order.js:1811
-#: templates/js/translated/purchase_order.js:1975
-#: templates/js/translated/return_order.js:527
-#: templates/js/translated/return_order.js:694
-#: templates/js/translated/sales_order.js:285
-#: templates/js/translated/sales_order.js:1185
-#: templates/js/translated/sales_order.js:1584
-#: templates/js/translated/sales_order.js:1782
-#: templates/js/translated/stock.js:643 templates/js/translated/stock.js:809
-#: templates/js/translated/stock.js:1021 templates/js/translated/stock.js:1773
-#: templates/js/translated/stock.js:2594 templates/js/translated/stock.js:2831
-#: templates/js/translated/stock.js:2968
+#: templates/js/translated/barcode.js:529 templates/js/translated/bom.js:632
+#: templates/js/translated/bom.js:769 templates/js/translated/bom.js:905
+#: templates/js/translated/build.js:1289 templates/js/translated/build.js:1669
+#: templates/js/translated/build.js:2085 templates/js/translated/build.js:2261
+#: templates/js/translated/company.js:347
+#: templates/js/translated/company.js:1147
+#: templates/js/translated/company.js:1302
+#: templates/js/translated/company.js:1590 templates/js/translated/index.js:104
+#: templates/js/translated/part.js:1917 templates/js/translated/part.js:1989
+#: templates/js/translated/part.js:2292 templates/js/translated/pricing.js:369
+#: templates/js/translated/purchase_order.js:757
+#: templates/js/translated/purchase_order.js:1289
+#: templates/js/translated/purchase_order.js:1826
+#: templates/js/translated/purchase_order.js:1985
+#: templates/js/translated/return_order.js:539
+#: templates/js/translated/return_order.js:706
+#: templates/js/translated/sales_order.js:297
+#: templates/js/translated/sales_order.js:1197
+#: templates/js/translated/sales_order.js:1596
+#: templates/js/translated/sales_order.js:1794
+#: templates/js/translated/stock.js:642 templates/js/translated/stock.js:808
+#: templates/js/translated/stock.js:1020 templates/js/translated/stock.js:1913
+#: templates/js/translated/stock.js:2725 templates/js/translated/stock.js:2958
+#: templates/js/translated/stock.js:3095
msgid "Part"
msgstr "Bagian"
-#: build/models.py:189
+#: build/models.py:193
msgid "Select part to build"
msgstr "Pilih bagian untuk diproduksi"
-#: build/models.py:194
+#: build/models.py:198
msgid "Sales Order Reference"
msgstr "Referensi Order Penjualan"
-#: build/models.py:198
+#: build/models.py:202
msgid "SalesOrder to which this build is allocated"
msgstr "Order penjualan yang teralokasikan ke pesanan ini"
-#: build/models.py:203 build/serializers.py:942
-#: templates/js/translated/build.js:2452
-#: templates/js/translated/sales_order.js:1173
+#: build/models.py:207 build/serializers.py:946
+#: templates/js/translated/build.js:1657
+#: templates/js/translated/sales_order.js:1185
msgid "Source Location"
msgstr "Lokasi Sumber"
-#: build/models.py:207
+#: build/models.py:211
msgid "Select location to take stock from for this build (leave blank to take from any stock location)"
msgstr "Pilih dari lokasi mana stok akan diambil untuk produksi ini (kosongkan untuk mengambil stok dari mana pun)"
-#: build/models.py:212
+#: build/models.py:216
msgid "Destination Location"
msgstr "Lokasi Tujuan"
-#: build/models.py:216
+#: build/models.py:220
msgid "Select location where the completed items will be stored"
msgstr "Pilih lokasi di mana item selesai akan disimpan"
-#: build/models.py:220
+#: build/models.py:224
msgid "Build Quantity"
msgstr "Jumlah Produksi"
-#: build/models.py:223
+#: build/models.py:227
msgid "Number of stock items to build"
msgstr "Jumlah item stok yang akan dibuat"
-#: build/models.py:227
+#: build/models.py:231
msgid "Completed items"
msgstr "Item selesai"
-#: build/models.py:229
+#: build/models.py:233
msgid "Number of stock items which have been completed"
msgstr "Jumlah stok item yang telah diselesaikan"
-#: build/models.py:233
+#: build/models.py:237
msgid "Build Status"
msgstr "Status pembuatan"
-#: build/models.py:237
+#: build/models.py:241
msgid "Build status code"
msgstr "Kode status pembuatan"
-#: build/models.py:246 build/serializers.py:269 order/serializers.py:506
-#: stock/models.py:739 templates/js/translated/purchase_order.js:1099
+#: build/models.py:250 build/serializers.py:277 order/serializers.py:512
+#: stock/models.py:739 templates/js/translated/purchase_order.js:1114
msgid "Batch Code"
msgstr "Kode Kelompok"
-#: build/models.py:250 build/serializers.py:270
+#: build/models.py:254 build/serializers.py:278
msgid "Batch code for this build output"
msgstr "Kode kelompok untuk hasil produksi ini"
-#: build/models.py:253 order/models.py:244 part/models.py:1038
+#: build/models.py:257 order/models.py:248 part/models.py:1039
#: part/templates/part/part_base.html:312
-#: templates/js/translated/return_order.js:327
-#: templates/js/translated/sales_order.js:815
+#: templates/js/translated/return_order.js:339
+#: templates/js/translated/sales_order.js:827
msgid "Creation Date"
msgstr "Tanggal Pembuatan"
-#: build/models.py:257
+#: build/models.py:261
msgid "Target completion date"
msgstr "Target tanggal selesai"
-#: build/models.py:258
+#: build/models.py:262
msgid "Target date for build completion. Build will be overdue after this date."
msgstr "Target tanggal selesai produksi. Produksi akan menjadi terlambat setelah tanggal ini."
-#: build/models.py:261 order/models.py:409 order/models.py:1767
-#: templates/js/translated/build.js:2953
+#: build/models.py:265 order/models.py:422 order/models.py:1780
+#: templates/js/translated/build.js:2170
msgid "Completion Date"
msgstr "Tanggal selesai"
-#: build/models.py:267
+#: build/models.py:271
msgid "completed by"
msgstr "diselesaikan oleh"
-#: build/models.py:275 templates/js/translated/build.js:2913
+#: build/models.py:279 templates/js/translated/build.js:2130
msgid "Issued by"
msgstr "Diserahkan oleh"
-#: build/models.py:276
+#: build/models.py:280
msgid "User who issued this build order"
msgstr "Pengguna yang menyerahkan order ini"
-#: build/models.py:284 build/templates/build/build_base.html:204
-#: build/templates/build/detail.html:122 order/models.py:258
-#: order/templates/order/order_base.html:214
-#: order/templates/order/return_order_base.html:182
-#: order/templates/order/sales_order_base.html:222 part/models.py:1042
+#: build/models.py:288 build/templates/build/build_base.html:205
+#: build/templates/build/detail.html:122 order/models.py:262
+#: order/templates/order/order_base.html:217
+#: order/templates/order/return_order_base.html:189
+#: order/templates/order/sales_order_base.html:229 part/models.py:1043
#: part/templates/part/part_base.html:392
#: report/templates/report/inventree_build_order_base.html:158
-#: templates/js/translated/build.js:2925
-#: templates/js/translated/purchase_order.js:1723
-#: templates/js/translated/return_order.js:347
-#: templates/js/translated/table_filters.js:461
+#: templates/js/translated/build.js:2142
+#: templates/js/translated/purchase_order.js:1738
+#: templates/js/translated/return_order.js:359
+#: templates/js/translated/table_filters.js:467
msgid "Responsible"
msgstr "Penanggung Jawab"
-#: build/models.py:285
+#: build/models.py:289
msgid "User or group responsible for this build order"
msgstr ""
-#: build/models.py:290 build/templates/build/detail.html:108
+#: build/models.py:294 build/templates/build/detail.html:108
#: company/templates/company/manufacturer_part.html:107
#: company/templates/company/supplier_part.html:195
-#: order/templates/order/order_base.html:171
+#: order/templates/order/order_base.html:167
#: order/templates/order/return_order_base.html:146
#: order/templates/order/sales_order_base.html:181
#: part/templates/part/part_base.html:385 stock/models.py:733
#: stock/templates/stock/item_base.html:201
+#: templates/js/translated/company.js:1050
msgid "External Link"
msgstr "Tautan eksternal"
-#: build/models.py:295
+#: build/models.py:299
msgid "Build Priority"
msgstr ""
-#: build/models.py:298
+#: build/models.py:302
msgid "Priority of this build order"
msgstr ""
-#: build/models.py:536
+#: build/models.py:309 common/models.py:104 order/admin.py:17
+#: order/models.py:237 templates/InvenTree/settings/settings_staff_js.html:70
+#: templates/js/translated/build.js:2067
+#: templates/js/translated/purchase_order.js:1685
+#: templates/js/translated/return_order.js:318
+#: templates/js/translated/sales_order.js:806
+#: templates/js/translated/table_filters.js:24
+#: templates/project_code_data.html:6
+msgid "Project Code"
+msgstr ""
+
+#: build/models.py:310
+msgid "Project code for this build order"
+msgstr ""
+
+#: build/models.py:545
#, python-brace-format
msgid "Build order {build} has been completed"
msgstr ""
-#: build/models.py:542
+#: build/models.py:551
msgid "A build order has been completed"
msgstr ""
-#: build/models.py:744 build/models.py:811
+#: build/models.py:753 build/models.py:831
msgid "No build output specified"
msgstr "Tidak ada hasil produksi yang ditentukan"
-#: build/models.py:747
+#: build/models.py:756
msgid "Build output is already completed"
msgstr "Hasil produksi sudah selesai"
-#: build/models.py:750
+#: build/models.py:759
msgid "Build output does not match Build Order"
msgstr "Hasil produksi tidak sesuai dengan order produksi"
-#: build/models.py:815 build/serializers.py:212 build/serializers.py:251
-#: build/serializers.py:811 order/models.py:440 order/serializers.py:379
-#: order/serializers.py:501 part/serializers.py:1087 part/serializers.py:1408
-#: stock/models.py:593 stock/models.py:1387 stock/serializers.py:315
+#: build/models.py:835 build/serializers.py:220 build/serializers.py:259
+#: build/serializers.py:819 order/models.py:453 order/serializers.py:385
+#: order/serializers.py:507 part/serializers.py:1149 part/serializers.py:1470
+#: stock/models.py:593 stock/models.py:1387 stock/serializers.py:381
msgid "Quantity must be greater than zero"
msgstr "Jumlah harus lebih besar daripada nol"
-#: build/models.py:820 build/serializers.py:217
+#: build/models.py:840 build/serializers.py:225
msgid "Quantity cannot be greater than the output quantity"
msgstr ""
-#: build/models.py:1272
-msgid "Build item must specify a build output, as master part is marked as trackable"
-msgstr "Item produksi harus menentukan hasil produksi karena bagian utama telah ditandai sebagai dapat dilacak"
-
-#: build/models.py:1281
-#, python-brace-format
-msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})"
+#: build/models.py:1260
+msgid "Build object"
msgstr ""
-#: build/models.py:1291 order/models.py:1601
-msgid "Stock item is over-allocated"
-msgstr "Item stok teralokasikan terlalu banyak"
-
-#: build/models.py:1297 order/models.py:1604
-msgid "Allocation quantity must be greater than zero"
-msgstr "Jumlah yang dialokasikan harus lebih dari nol"
-
-#: build/models.py:1303
-msgid "Quantity must be 1 for serialized stock"
-msgstr "Jumlah harus 1 untuk stok dengan nomor seri"
-
-#: build/models.py:1360
-msgid "Selected stock item not found in BOM"
-msgstr "Item stok yang dipilih tidak ditemukan dalam daftar barang order"
-
-#: build/models.py:1438 stock/templates/stock/item_base.html:170
-#: templates/InvenTree/search.html:139 templates/js/translated/build.js:2841
-#: templates/navbar.html:38
-msgid "Build"
-msgstr "Produksi"
-
-#: build/models.py:1439
-msgid "Build to allocate parts"
-msgstr ""
-
-#: build/models.py:1455 build/serializers.py:791 order/serializers.py:1059
-#: order/serializers.py:1080 stock/serializers.py:413 stock/serializers.py:770
-#: stock/serializers.py:896 stock/templates/stock/item_base.html:10
-#: stock/templates/stock/item_base.html:23
-#: stock/templates/stock/item_base.html:195
-#: templates/js/translated/build.js:955 templates/js/translated/build.js:960
-#: templates/js/translated/build.js:2466 templates/js/translated/build.js:3038
-#: templates/js/translated/sales_order.js:286
-#: templates/js/translated/sales_order.js:1186
-#: templates/js/translated/sales_order.js:1485
-#: templates/js/translated/sales_order.js:1490
-#: templates/js/translated/sales_order.js:1591
-#: templates/js/translated/sales_order.js:1678
-#: templates/js/translated/stock.js:644 templates/js/translated/stock.js:810
-#: templates/js/translated/stock.js:2714
-msgid "Stock Item"
-msgstr "Stok Item"
-
-#: build/models.py:1456
-msgid "Source stock item"
-msgstr "Sumber stok item"
-
-#: build/models.py:1468 build/serializers.py:198 build/serializers.py:236
-#: build/templates/build/build_base.html:103
-#: build/templates/build/detail.html:34 common/models.py:2176
-#: order/models.py:1073 order/models.py:1645 order/serializers.py:1233
+#: build/models.py:1274 build/models.py:1556 build/serializers.py:206
+#: build/serializers.py:244 build/templates/build/build_base.html:103
+#: build/templates/build/detail.html:34 common/models.py:2162
+#: order/models.py:1086 order/models.py:1658 order/serializers.py:1239
#: order/templates/order/order_wizard/match_parts.html:30 part/admin.py:277
-#: part/forms.py:47 part/models.py:2992 part/models.py:3779
+#: part/forms.py:47 part/models.py:3026 part/models.py:3823
#: part/templates/part/part_pricing.html:16
#: part/templates/part/upload_bom.html:53
#: report/templates/report/inventree_bill_of_materials_report.html:138
@@ -1203,315 +1200,367 @@ msgstr "Sumber stok item"
#: report/templates/report/inventree_so_report_base.html:29
#: report/templates/report/inventree_test_report_base.html:90
#: report/templates/report/inventree_test_report_base.html:170
-#: stock/admin.py:103 stock/serializers.py:306
+#: stock/admin.py:103 stock/serializers.py:372
#: stock/templates/stock/item_base.html:288
#: stock/templates/stock/item_base.html:296
#: stock/templates/stock/item_base.html:343
#: templates/email/build_order_completed.html:18
-#: templates/js/translated/barcode.js:531 templates/js/translated/bom.js:770
-#: templates/js/translated/bom.js:951 templates/js/translated/build.js:504
-#: templates/js/translated/build.js:716 templates/js/translated/build.js:982
-#: templates/js/translated/build.js:1425 templates/js/translated/build.js:1991
-#: templates/js/translated/build.js:2467
-#: templates/js/translated/company.js:1428
-#: templates/js/translated/model_renderers.js:207
-#: templates/js/translated/order.js:304 templates/js/translated/part.js:935
-#: templates/js/translated/part.js:1784 templates/js/translated/part.js:3263
+#: templates/js/translated/barcode.js:531 templates/js/translated/bom.js:771
+#: templates/js/translated/bom.js:969 templates/js/translated/build.js:510
+#: templates/js/translated/build.js:722 templates/js/translated/build.js:1308
+#: templates/js/translated/build.js:1672 templates/js/translated/build.js:2283
+#: templates/js/translated/company.js:1849
+#: templates/js/translated/model_renderers.js:221
+#: templates/js/translated/order.js:304 templates/js/translated/part.js:934
+#: templates/js/translated/part.js:1783 templates/js/translated/part.js:3248
#: templates/js/translated/pricing.js:381
#: templates/js/translated/pricing.js:474
#: templates/js/translated/pricing.js:522
#: templates/js/translated/pricing.js:616
-#: templates/js/translated/purchase_order.js:749
-#: templates/js/translated/purchase_order.js:1815
-#: templates/js/translated/purchase_order.js:2039
-#: templates/js/translated/sales_order.js:302
-#: templates/js/translated/sales_order.js:1187
-#: templates/js/translated/sales_order.js:1504
-#: templates/js/translated/sales_order.js:1594
-#: templates/js/translated/sales_order.js:1684
-#: templates/js/translated/sales_order.js:1804
-#: templates/js/translated/stock.js:531 templates/js/translated/stock.js:669
-#: templates/js/translated/stock.js:840 templates/js/translated/stock.js:2758
-#: templates/js/translated/stock.js:2843
+#: templates/js/translated/purchase_order.js:760
+#: templates/js/translated/purchase_order.js:1830
+#: templates/js/translated/purchase_order.js:2049
+#: templates/js/translated/sales_order.js:314
+#: templates/js/translated/sales_order.js:1199
+#: templates/js/translated/sales_order.js:1516
+#: templates/js/translated/sales_order.js:1606
+#: templates/js/translated/sales_order.js:1696
+#: templates/js/translated/sales_order.js:1816
+#: templates/js/translated/stock.js:530 templates/js/translated/stock.js:668
+#: templates/js/translated/stock.js:839 templates/js/translated/stock.js:2889
+#: templates/js/translated/stock.js:2970
msgid "Quantity"
msgstr "Jumlah"
-#: build/models.py:1469
+#: build/models.py:1275
+msgid "Required quantity for build order"
+msgstr ""
+
+#: build/models.py:1357
+msgid "Build item must specify a build output, as master part is marked as trackable"
+msgstr "Item produksi harus menentukan hasil produksi karena bagian utama telah ditandai sebagai dapat dilacak"
+
+#: build/models.py:1366
+#, python-brace-format
+msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})"
+msgstr ""
+
+#: build/models.py:1376 order/models.py:1614
+msgid "Stock item is over-allocated"
+msgstr "Item stok teralokasikan terlalu banyak"
+
+#: build/models.py:1382 order/models.py:1617
+msgid "Allocation quantity must be greater than zero"
+msgstr "Jumlah yang dialokasikan harus lebih dari nol"
+
+#: build/models.py:1388
+msgid "Quantity must be 1 for serialized stock"
+msgstr "Jumlah harus 1 untuk stok dengan nomor seri"
+
+#: build/models.py:1449
+msgid "Selected stock item does not match BOM line"
+msgstr ""
+
+#: build/models.py:1543 build/serializers.py:799 order/serializers.py:1065
+#: order/serializers.py:1086 stock/serializers.py:479 stock/serializers.py:887
+#: stock/serializers.py:1013 stock/templates/stock/item_base.html:10
+#: stock/templates/stock/item_base.html:23
+#: stock/templates/stock/item_base.html:195
+#: templates/js/translated/build.js:1671
+#: templates/js/translated/sales_order.js:298
+#: templates/js/translated/sales_order.js:1198
+#: templates/js/translated/sales_order.js:1497
+#: templates/js/translated/sales_order.js:1502
+#: templates/js/translated/sales_order.js:1603
+#: templates/js/translated/sales_order.js:1690
+#: templates/js/translated/stock.js:643 templates/js/translated/stock.js:809
+#: templates/js/translated/stock.js:2845
+msgid "Stock Item"
+msgstr "Stok Item"
+
+#: build/models.py:1544
+msgid "Source stock item"
+msgstr "Sumber stok item"
+
+#: build/models.py:1557
msgid "Stock quantity to allocate to build"
msgstr "Jumlah stok yang dialokasikan ke produksi"
-#: build/models.py:1477
+#: build/models.py:1565
msgid "Install into"
msgstr "Pasang ke"
-#: build/models.py:1478
+#: build/models.py:1566
msgid "Destination stock item"
msgstr "Tujuan stok item"
-#: build/serializers.py:148 build/serializers.py:820
-#: templates/js/translated/build.js:1413
+#: build/serializers.py:156 build/serializers.py:828
+#: templates/js/translated/build.js:1299
msgid "Build Output"
msgstr "Hasil Produksi"
-#: build/serializers.py:160
+#: build/serializers.py:168
msgid "Build output does not match the parent build"
msgstr "Hasil produksi tidak sesuai dengan produksi induk"
-#: build/serializers.py:164
+#: build/serializers.py:172
msgid "Output part does not match BuildOrder part"
msgstr "Hasil bagian tidak sesuai dengan bagian dalam order produksi"
-#: build/serializers.py:168
+#: build/serializers.py:176
msgid "This build output has already been completed"
msgstr "Hasil produksi ini sudah diselesaikan"
-#: build/serializers.py:179
+#: build/serializers.py:187
msgid "This build output is not fully allocated"
msgstr "Hasil produksi tidak dialokasikan sepenuhnya"
-#: build/serializers.py:199 build/serializers.py:237
+#: build/serializers.py:207 build/serializers.py:245
msgid "Enter quantity for build output"
msgstr "Masukkan jumlah hasil pesanan"
-#: build/serializers.py:258
+#: build/serializers.py:266
msgid "Integer quantity required for trackable parts"
msgstr "Jumlah bagian yang dapat dilacak harus berupa angka bulat"
-#: build/serializers.py:261
+#: build/serializers.py:269
msgid "Integer quantity required, as the bill of materials contains trackable parts"
msgstr "Jumlah harus angka bulat karena terdapat bagian yang dapat dilacak dalam daftar barang"
-#: build/serializers.py:276 order/serializers.py:514 order/serializers.py:1237
-#: stock/serializers.py:324 templates/js/translated/purchase_order.js:1123
-#: templates/js/translated/stock.js:334 templates/js/translated/stock.js:532
+#: build/serializers.py:284 order/serializers.py:520 order/serializers.py:1243
+#: stock/serializers.py:390 templates/js/translated/purchase_order.js:1138
+#: templates/js/translated/stock.js:333 templates/js/translated/stock.js:531
msgid "Serial Numbers"
msgstr "Nomor Seri"
-#: build/serializers.py:277
+#: build/serializers.py:285
msgid "Enter serial numbers for build outputs"
msgstr "Masukkan nomor seri untuk hasil pesanan"
-#: build/serializers.py:290
+#: build/serializers.py:298
msgid "Auto Allocate Serial Numbers"
msgstr "Alokasikan nomor seri secara otomatis"
-#: build/serializers.py:291
+#: build/serializers.py:299
msgid "Automatically allocate required items with matching serial numbers"
msgstr "Alokasikan item yang diperlukan dengan nomor seri yang sesuai secara otomatis"
-#: build/serializers.py:326 stock/api.py:670
+#: build/serializers.py:334 stock/api.py:707
msgid "The following serial numbers already exist or are invalid"
-msgstr ""
+msgstr "Nomor-nomor seri berikut sudah ada atau tidak valid"
-#: build/serializers.py:377 build/serializers.py:439 build/serializers.py:518
+#: build/serializers.py:385 build/serializers.py:447 build/serializers.py:526
msgid "A list of build outputs must be provided"
msgstr "Daftar hasil pesanan harus disediakan"
-#: build/serializers.py:415 build/serializers.py:488 order/serializers.py:487
-#: order/serializers.py:606 order/serializers.py:1588 part/serializers.py:854
-#: stock/serializers.py:335 stock/serializers.py:470 stock/serializers.py:551
-#: stock/serializers.py:931 stock/serializers.py:1173
+#: build/serializers.py:423 build/serializers.py:496 order/serializers.py:493
+#: order/serializers.py:612 order/serializers.py:1594 part/serializers.py:916
+#: stock/serializers.py:401 stock/serializers.py:537 stock/serializers.py:618
+#: stock/serializers.py:1048 stock/serializers.py:1290
#: stock/templates/stock/item_base.html:390
#: templates/js/translated/barcode.js:530
-#: templates/js/translated/barcode.js:778 templates/js/translated/build.js:967
-#: templates/js/translated/build.js:2006
-#: templates/js/translated/purchase_order.js:1148
-#: templates/js/translated/purchase_order.js:1238
-#: templates/js/translated/sales_order.js:1497
-#: templates/js/translated/sales_order.js:1605
-#: templates/js/translated/sales_order.js:1613
-#: templates/js/translated/sales_order.js:1692
-#: templates/js/translated/stock.js:645 templates/js/translated/stock.js:811
-#: templates/js/translated/stock.js:1023 templates/js/translated/stock.js:1937
-#: templates/js/translated/stock.js:2608
+#: templates/js/translated/barcode.js:778 templates/js/translated/build.js:980
+#: templates/js/translated/build.js:2298
+#: templates/js/translated/purchase_order.js:1163
+#: templates/js/translated/purchase_order.js:1253
+#: templates/js/translated/sales_order.js:1509
+#: templates/js/translated/sales_order.js:1617
+#: templates/js/translated/sales_order.js:1625
+#: templates/js/translated/sales_order.js:1704
+#: templates/js/translated/stock.js:644 templates/js/translated/stock.js:810
+#: templates/js/translated/stock.js:1022 templates/js/translated/stock.js:2094
+#: templates/js/translated/stock.js:2739
msgid "Location"
msgstr "Lokasi"
-#: build/serializers.py:416
+#: build/serializers.py:424
msgid "Stock location for scrapped outputs"
msgstr ""
-#: build/serializers.py:422
+#: build/serializers.py:430
msgid "Discard Allocations"
msgstr ""
-#: build/serializers.py:423
+#: build/serializers.py:431
msgid "Discard any stock allocations for scrapped outputs"
msgstr ""
-#: build/serializers.py:428
+#: build/serializers.py:436
msgid "Reason for scrapping build output(s)"
msgstr ""
-#: build/serializers.py:489
+#: build/serializers.py:497
msgid "Location for completed build outputs"
msgstr "Lokasi hasil pesanan yang selesai"
-#: build/serializers.py:495 build/templates/build/build_base.html:151
-#: build/templates/build/detail.html:62 order/models.py:791
-#: order/models.py:1750 order/serializers.py:524 stock/admin.py:106
-#: stock/templates/stock/item_base.html:423
-#: templates/js/translated/barcode.js:252 templates/js/translated/build.js:2897
-#: templates/js/translated/purchase_order.js:1278
-#: templates/js/translated/purchase_order.js:1682
-#: templates/js/translated/return_order.js:319
-#: templates/js/translated/sales_order.js:807
-#: templates/js/translated/stock.js:1912 templates/js/translated/stock.js:2732
-#: templates/js/translated/stock.js:2859
+#: build/serializers.py:503 build/templates/build/build_base.html:152
+#: build/templates/build/detail.html:62 order/models.py:804
+#: order/models.py:1763 order/serializers.py:530 stock/admin.py:106
+#: stock/serializers.py:677 stock/templates/stock/item_base.html:423
+#: templates/js/translated/barcode.js:252 templates/js/translated/build.js:2114
+#: templates/js/translated/purchase_order.js:1293
+#: templates/js/translated/purchase_order.js:1697
+#: templates/js/translated/return_order.js:331
+#: templates/js/translated/sales_order.js:819
+#: templates/js/translated/stock.js:2069 templates/js/translated/stock.js:2863
+#: templates/js/translated/stock.js:2986
msgid "Status"
msgstr "Status"
-#: build/serializers.py:501
+#: build/serializers.py:509
msgid "Accept Incomplete Allocation"
msgstr "Terima Alokasi Tidak Lengkap"
-#: build/serializers.py:502
+#: build/serializers.py:510
msgid "Complete outputs if stock has not been fully allocated"
msgstr ""
-#: build/serializers.py:571
+#: build/serializers.py:579
msgid "Remove Allocated Stock"
msgstr ""
-#: build/serializers.py:572
+#: build/serializers.py:580
msgid "Subtract any stock which has already been allocated to this build"
msgstr ""
-#: build/serializers.py:578
+#: build/serializers.py:586
msgid "Remove Incomplete Outputs"
msgstr ""
-#: build/serializers.py:579
+#: build/serializers.py:587
msgid "Delete any build outputs which have not been completed"
msgstr ""
-#: build/serializers.py:606
+#: build/serializers.py:614
msgid "Not permitted"
msgstr ""
-#: build/serializers.py:607
+#: build/serializers.py:615
msgid "Accept as consumed by this build order"
msgstr ""
-#: build/serializers.py:608
+#: build/serializers.py:616
msgid "Deallocate before completing this build order"
msgstr ""
-#: build/serializers.py:631
+#: build/serializers.py:639
msgid "Overallocated Stock"
msgstr ""
-#: build/serializers.py:633
+#: build/serializers.py:641
msgid "How do you want to handle extra stock items assigned to the build order"
msgstr ""
-#: build/serializers.py:643
+#: build/serializers.py:651
msgid "Some stock items have been overallocated"
msgstr ""
-#: build/serializers.py:648
+#: build/serializers.py:656
msgid "Accept Unallocated"
msgstr "Terima Tidak Teralokasikan"
-#: build/serializers.py:649
+#: build/serializers.py:657
msgid "Accept that stock items have not been fully allocated to this build order"
msgstr "Terima bahwa stok item tidak teralokasikan sepenuhnya ke pesanan ini"
-#: build/serializers.py:659 templates/js/translated/build.js:295
+#: build/serializers.py:667 templates/js/translated/build.js:304
msgid "Required stock has not been fully allocated"
msgstr "Stok yang diperlukan belum teralokasikan sepenuhnya"
-#: build/serializers.py:664 order/serializers.py:261 order/serializers.py:1127
+#: build/serializers.py:672 order/serializers.py:267 order/serializers.py:1133
msgid "Accept Incomplete"
msgstr "Terima Tidak Selesai"
-#: build/serializers.py:665
+#: build/serializers.py:673
msgid "Accept that the required number of build outputs have not been completed"
msgstr "Terima bahwa jumlah hasil produksi yang diperlukan belum selesai"
-#: build/serializers.py:675 templates/js/translated/build.js:299
+#: build/serializers.py:683 templates/js/translated/build.js:308
msgid "Required build quantity has not been completed"
msgstr "Jumlah produksi yang diperlukan masih belum cukup"
-#: build/serializers.py:684 templates/js/translated/build.js:283
+#: build/serializers.py:692 templates/js/translated/build.js:292
msgid "Build order has incomplete outputs"
msgstr "Order memiliki hasil produksi yang belum dilengkapi"
-#: build/serializers.py:714 build/serializers.py:768 part/models.py:3686
-#: part/models.py:4069
-msgid "BOM Item"
-msgstr "Item tagihan material"
+#: build/serializers.py:722
+msgid "Build Line"
+msgstr ""
-#: build/serializers.py:724
+#: build/serializers.py:732
msgid "Build output"
msgstr "Hasil produksi"
-#: build/serializers.py:732
+#: build/serializers.py:740
msgid "Build output must point to the same build"
msgstr "Hasil pesanan harus mengarah ke pesanan yang sama"
-#: build/serializers.py:782
+#: build/serializers.py:776
+msgid "Build Line Item"
+msgstr ""
+
+#: build/serializers.py:790
msgid "bom_item.part must point to the same part as the build order"
msgstr "bom_item.part harus mengarah ke bagian yang sesuai dengan order produksi"
-#: build/serializers.py:797 stock/serializers.py:783
+#: build/serializers.py:805 stock/serializers.py:900
msgid "Item must be in stock"
msgstr "Item harus tersedia dalam stok"
-#: build/serializers.py:846 order/serializers.py:1117
+#: build/serializers.py:853 order/serializers.py:1123
#, python-brace-format
msgid "Available quantity ({q}) exceeded"
msgstr "Jumlah tersedia ({q}) terlampaui"
-#: build/serializers.py:852
+#: build/serializers.py:859
msgid "Build output must be specified for allocation of tracked parts"
msgstr "Hasil produksi harus ditentukan untuk mengalokasikan bagian yang terlacak"
-#: build/serializers.py:859
+#: build/serializers.py:866
msgid "Build output cannot be specified for allocation of untracked parts"
msgstr "Hasil produksi tidak dapat ditentukan untuk alokasi barang yang tidak terlacak"
-#: build/serializers.py:864
+#: build/serializers.py:871
msgid "This stock item has already been allocated to this build output"
msgstr "Stok item ini telah dialokasikan ke hasil produksi ini"
-#: build/serializers.py:887 order/serializers.py:1401
+#: build/serializers.py:894 order/serializers.py:1407
msgid "Allocation items must be provided"
msgstr "Item yang dialokasikan harus disediakan"
-#: build/serializers.py:943
+#: build/serializers.py:947
msgid "Stock location where parts are to be sourced (leave blank to take from any location)"
msgstr "Lokasi stok, dari mana bahan/bagian akan diambilkan (kosongkan untuk mengambil dari lokasi mana pun)"
-#: build/serializers.py:951
+#: build/serializers.py:955
msgid "Exclude Location"
msgstr "Lokasi tidak termasuk"
-#: build/serializers.py:952
+#: build/serializers.py:956
msgid "Exclude stock items from this selected location"
msgstr "Jangan ambil stok item dari lokasi yang dipilih"
-#: build/serializers.py:957
+#: build/serializers.py:961
msgid "Interchangeable Stock"
msgstr "Stok bergantian"
-#: build/serializers.py:958
+#: build/serializers.py:962
msgid "Stock items in multiple locations can be used interchangeably"
msgstr "Item stok di beberapa lokasi dapat digunakan secara bergantian"
-#: build/serializers.py:963
+#: build/serializers.py:967
msgid "Substitute Stock"
msgstr "Stok pengganti"
-#: build/serializers.py:964
+#: build/serializers.py:968
msgid "Allow allocation of substitute parts"
msgstr "Izinkan alokasi bagian pengganti"
-#: build/serializers.py:969
+#: build/serializers.py:973
msgid "Optional Items"
msgstr ""
-#: build/serializers.py:970
+#: build/serializers.py:974
msgid "Allocate optional BOM items to build order"
msgstr ""
@@ -1540,6 +1589,7 @@ msgstr ""
#: part/templates/part/part_base.html:43
#: stock/templates/stock/item_base.html:41
#: stock/templates/stock/location.html:54
+#: templates/js/translated/filters.js:336
msgid "Barcode actions"
msgstr ""
@@ -1552,7 +1602,7 @@ msgstr ""
#: stock/templates/stock/item_base.html:45
#: stock/templates/stock/location.html:56 templates/qr_button.html:1
msgid "Show QR Code"
-msgstr ""
+msgstr "Tampilkan kode QR"
#: build/templates/build/build_base.html:46
#: company/templates/company/supplier_part.html:42
@@ -1618,69 +1668,67 @@ msgstr "Selesaikan Produksi"
msgid "Build Description"
msgstr "Deskripsi Produksi"
-#: build/templates/build/build_base.html:117
+#: build/templates/build/build_base.html:118
msgid "No build outputs have been created for this build order"
msgstr "Tidak ada hasil pesanan yang dibuat oleh pesanan ini"
-#: build/templates/build/build_base.html:124
+#: build/templates/build/build_base.html:125
msgid "Build Order is ready to mark as completed"
msgstr ""
-#: build/templates/build/build_base.html:129
+#: build/templates/build/build_base.html:130
msgid "Build Order cannot be completed as outstanding outputs remain"
msgstr ""
-#: build/templates/build/build_base.html:134
+#: build/templates/build/build_base.html:135
msgid "Required build quantity has not yet been completed"
msgstr ""
-#: build/templates/build/build_base.html:139
+#: build/templates/build/build_base.html:140
msgid "Stock has not been fully allocated to this Build Order"
msgstr ""
-#: build/templates/build/build_base.html:160
-#: build/templates/build/detail.html:138 order/models.py:240
-#: order/models.py:1099 order/templates/order/order_base.html:190
+#: build/templates/build/build_base.html:161
+#: build/templates/build/detail.html:138 order/models.py:244
+#: order/models.py:1112 order/templates/order/order_base.html:186
#: order/templates/order/return_order_base.html:165
#: order/templates/order/sales_order_base.html:193
#: report/templates/report/inventree_build_order_base.html:125
-#: templates/js/translated/build.js:2945 templates/js/translated/part.js:1802
-#: templates/js/translated/purchase_order.js:1699
-#: templates/js/translated/purchase_order.js:2115
-#: templates/js/translated/return_order.js:335
-#: templates/js/translated/return_order.js:735
-#: templates/js/translated/sales_order.js:823
-#: templates/js/translated/sales_order.js:1847
+#: templates/js/translated/build.js:2162 templates/js/translated/part.js:1801
+#: templates/js/translated/purchase_order.js:1714
+#: templates/js/translated/purchase_order.js:2125
+#: templates/js/translated/return_order.js:347
+#: templates/js/translated/return_order.js:747
+#: templates/js/translated/sales_order.js:835
+#: templates/js/translated/sales_order.js:1859
msgid "Target Date"
msgstr ""
-#: build/templates/build/build_base.html:165
+#: build/templates/build/build_base.html:166
#, python-format
msgid "This build was due on %(target)s"
msgstr ""
-#: build/templates/build/build_base.html:165
-#: build/templates/build/build_base.html:222
-#: order/templates/order/order_base.html:126
+#: build/templates/build/build_base.html:166
+#: build/templates/build/build_base.html:223
+#: order/templates/order/order_base.html:122
#: order/templates/order/return_order_base.html:118
#: order/templates/order/sales_order_base.html:123
-#: templates/js/translated/table_filters.js:68
-#: templates/js/translated/table_filters.js:454
-#: templates/js/translated/table_filters.js:539
-#: templates/js/translated/table_filters.js:580
+#: templates/js/translated/table_filters.js:74
+#: templates/js/translated/table_filters.js:460
+#: templates/js/translated/table_filters.js:561
+#: templates/js/translated/table_filters.js:602
msgid "Overdue"
msgstr ""
-#: build/templates/build/build_base.html:177
-#: build/templates/build/detail.html:67 build/templates/build/detail.html:149
-#: order/templates/order/sales_order_base.html:203
-#: templates/js/translated/table_filters.js:602
-msgid "Completed"
+#: build/templates/build/build_base.html:178
+#: build/templates/build/detail.html:67 build/templates/build/sidebar.html:13
+msgid "Completed Outputs"
msgstr ""
-#: build/templates/build/build_base.html:190
-#: build/templates/build/detail.html:101 order/api.py:1454 order/models.py:1304
-#: order/models.py:1403 order/models.py:1551
+#: build/templates/build/build_base.html:191
+#: build/templates/build/detail.html:101 order/api.py:1454 order/models.py:1317
+#: order/models.py:1416 order/models.py:1564
#: order/templates/order/sales_order_base.html:9
#: order/templates/order/sales_order_base.html:28
#: report/templates/report/inventree_build_order_base.html:135
@@ -1688,32 +1736,32 @@ msgstr ""
#: stock/templates/stock/item_base.html:370
#: templates/email/overdue_sales_order.html:15
#: templates/js/translated/pricing.js:915
-#: templates/js/translated/sales_order.js:757
-#: templates/js/translated/sales_order.js:980
-#: templates/js/translated/stock.js:2661
+#: templates/js/translated/sales_order.js:769
+#: templates/js/translated/sales_order.js:992
+#: templates/js/translated/stock.js:2792
msgid "Sales Order"
msgstr ""
-#: build/templates/build/build_base.html:197
+#: build/templates/build/build_base.html:198
#: build/templates/build/detail.html:115
#: report/templates/report/inventree_build_order_base.html:152
msgid "Issued By"
msgstr ""
-#: build/templates/build/build_base.html:211
-#: build/templates/build/detail.html:94 templates/js/translated/build.js:2862
+#: build/templates/build/build_base.html:212
+#: build/templates/build/detail.html:94 templates/js/translated/build.js:2079
msgid "Priority"
msgstr ""
-#: build/templates/build/build_base.html:273
+#: build/templates/build/build_base.html:274
msgid "Delete Build Order"
msgstr ""
-#: build/templates/build/build_base.html:283
+#: build/templates/build/build_base.html:284
msgid "Build Order QR Code"
msgstr ""
-#: build/templates/build/build_base.html:295
+#: build/templates/build/build_base.html:296
msgid "Link Barcode to Build Order"
msgstr ""
@@ -1729,8 +1777,8 @@ msgstr ""
msgid "Stock can be taken from any available location."
msgstr ""
-#: build/templates/build/detail.html:49 order/models.py:1222
-#: templates/js/translated/purchase_order.js:2157
+#: build/templates/build/detail.html:49 order/models.py:1235
+#: templates/js/translated/purchase_order.js:2167
msgid "Destination"
msgstr ""
@@ -1744,21 +1792,21 @@ msgstr ""
#: build/templates/build/detail.html:80 stock/admin.py:105
#: stock/templates/stock/item_base.html:163
-#: templates/js/translated/build.js:1432
-#: templates/js/translated/model_renderers.js:212
-#: templates/js/translated/purchase_order.js:1244
-#: templates/js/translated/stock.js:1093 templates/js/translated/stock.js:1926
-#: templates/js/translated/stock.js:2866
-#: templates/js/translated/table_filters.js:259
-#: templates/js/translated/table_filters.js:350
+#: templates/js/translated/build.js:1319
+#: templates/js/translated/model_renderers.js:226
+#: templates/js/translated/purchase_order.js:1259
+#: templates/js/translated/stock.js:1092 templates/js/translated/stock.js:2083
+#: templates/js/translated/stock.js:2993
+#: templates/js/translated/table_filters.js:265
+#: templates/js/translated/table_filters.js:356
msgid "Batch"
msgstr ""
#: build/templates/build/detail.html:133
-#: order/templates/order/order_base.html:177
+#: order/templates/order/order_base.html:173
#: order/templates/order/return_order_base.html:152
#: order/templates/order/sales_order_base.html:187
-#: templates/js/translated/build.js:2905
+#: templates/js/translated/build.js:2122
msgid "Created"
msgstr ""
@@ -1766,147 +1814,106 @@ msgstr ""
msgid "No target date set"
msgstr ""
+#: build/templates/build/detail.html:149
+#: order/templates/order/sales_order_base.html:203
+#: templates/js/translated/table_filters.js:624
+msgid "Completed"
+msgstr ""
+
#: build/templates/build/detail.html:153
msgid "Build not complete"
msgstr ""
-#: build/templates/build/detail.html:164 build/templates/build/sidebar.html:19
+#: build/templates/build/detail.html:164 build/templates/build/sidebar.html:17
msgid "Child Build Orders"
msgstr ""
-#: build/templates/build/detail.html:179
+#: build/templates/build/detail.html:177
msgid "Allocate Stock to Build"
msgstr ""
-#: build/templates/build/detail.html:183 templates/js/translated/build.js:2276
-msgid "Unallocate stock"
+#: build/templates/build/detail.html:181
+msgid "Deallocate stock"
+msgstr ""
+
+#: build/templates/build/detail.html:182
+msgid "Deallocate Stock"
msgstr ""
#: build/templates/build/detail.html:184
-msgid "Unallocate Stock"
-msgstr ""
-
-#: build/templates/build/detail.html:186
msgid "Automatically allocate stock to build"
msgstr ""
-#: build/templates/build/detail.html:187
+#: build/templates/build/detail.html:185
msgid "Auto Allocate"
msgstr ""
-#: build/templates/build/detail.html:189
+#: build/templates/build/detail.html:187
msgid "Manually allocate stock to build"
msgstr ""
-#: build/templates/build/detail.html:190 build/templates/build/sidebar.html:8
+#: build/templates/build/detail.html:188 build/templates/build/sidebar.html:8
msgid "Allocate Stock"
msgstr ""
-#: build/templates/build/detail.html:193
+#: build/templates/build/detail.html:191
msgid "Order required parts"
msgstr ""
-#: build/templates/build/detail.html:194
-#: company/templates/company/detail.html:38
-#: company/templates/company/detail.html:86
-#: part/templates/part/category.html:184
-#: templates/js/translated/purchase_order.js:789
+#: build/templates/build/detail.html:192
+#: templates/js/translated/purchase_order.js:800
msgid "Order Parts"
msgstr ""
-#: build/templates/build/detail.html:206
-msgid "Untracked stock has been fully allocated for this Build Order"
-msgstr ""
-
#: build/templates/build/detail.html:210
-msgid "Untracked stock has not been fully allocated for this Build Order"
-msgstr ""
-
-#: build/templates/build/detail.html:217
-msgid "Allocate selected items"
-msgstr ""
-
-#: build/templates/build/detail.html:227
-msgid "This Build Order does not have any associated untracked BOM items"
-msgstr ""
-
-#: build/templates/build/detail.html:236
msgid "Incomplete Build Outputs"
msgstr ""
-#: build/templates/build/detail.html:240
+#: build/templates/build/detail.html:214
msgid "Create new build output"
msgstr ""
-#: build/templates/build/detail.html:241
+#: build/templates/build/detail.html:215
msgid "New Build Output"
msgstr ""
-#: build/templates/build/detail.html:255
-msgid "Output Actions"
-msgstr ""
-
-#: build/templates/build/detail.html:260
-msgid "Complete selected build outputs"
-msgstr ""
-
-#: build/templates/build/detail.html:261
-msgid "Complete outputs"
-msgstr ""
-
-#: build/templates/build/detail.html:265
-msgid "Scrap selected build outputs"
-msgstr ""
-
-#: build/templates/build/detail.html:266
-msgid "Scrap outputs"
-msgstr ""
-
-#: build/templates/build/detail.html:270
-msgid "Delete selected build outputs"
-msgstr ""
-
-#: build/templates/build/detail.html:271
-msgid "Delete outputs"
-msgstr ""
-
-#: build/templates/build/detail.html:288 build/templates/build/sidebar.html:11
+#: build/templates/build/detail.html:232 build/templates/build/sidebar.html:15
msgid "Consumed Stock"
msgstr ""
-#: build/templates/build/detail.html:300
+#: build/templates/build/detail.html:244
msgid "Completed Build Outputs"
msgstr ""
-#: build/templates/build/detail.html:312 build/templates/build/sidebar.html:21
-#: company/templates/company/detail.html:261
-#: company/templates/company/manufacturer_part.html:151
+#: build/templates/build/detail.html:256 build/templates/build/sidebar.html:19
+#: company/templates/company/detail.html:229
+#: company/templates/company/manufacturer_part.html:141
#: company/templates/company/manufacturer_part_sidebar.html:9
-#: company/templates/company/sidebar.html:37
+#: company/templates/company/sidebar.html:39
#: order/templates/order/po_sidebar.html:9
-#: order/templates/order/purchase_order_detail.html:102
-#: order/templates/order/return_order_detail.html:74
+#: order/templates/order/purchase_order_detail.html:84
+#: order/templates/order/return_order_detail.html:70
#: order/templates/order/return_order_sidebar.html:7
-#: order/templates/order/sales_order_detail.html:134
-#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:234
-#: part/templates/part/part_sidebar.html:61 stock/templates/stock/item.html:117
+#: order/templates/order/sales_order_detail.html:124
+#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:217
+#: part/templates/part/part_sidebar.html:61 stock/templates/stock/item.html:109
#: stock/templates/stock/stock_sidebar.html:23
msgid "Attachments"
msgstr ""
-#: build/templates/build/detail.html:327
+#: build/templates/build/detail.html:271
msgid "Build Notes"
msgstr ""
-#: build/templates/build/detail.html:502
+#: build/templates/build/detail.html:425
msgid "Allocation Complete"
msgstr ""
-#: build/templates/build/detail.html:503
-msgid "All untracked stock items have been allocated"
+#: build/templates/build/detail.html:426
+msgid "All lines have been fully allocated"
msgstr ""
-#: build/templates/build/index.html:18 part/templates/part/detail.html:340
+#: build/templates/build/index.html:18 part/templates/part/detail.html:319
msgid "New Build Order"
msgstr ""
@@ -1914,14 +1921,10 @@ msgstr ""
msgid "Build Order Details"
msgstr ""
-#: build/templates/build/sidebar.html:14
+#: build/templates/build/sidebar.html:10
msgid "Incomplete Outputs"
msgstr ""
-#: build/templates/build/sidebar.html:17
-msgid "Completed Outputs"
-msgstr ""
-
#: common/files.py:63
#, python-brace-format
msgid "Unsupported file format: {fmt}"
@@ -1968,16 +1971,6 @@ msgstr ""
msgid "Timestamp of last update"
msgstr ""
-#: common/models.py:104 order/admin.py:17 order/models.py:234
-#: templates/InvenTree/settings/settings_staff_js.html:70
-#: templates/js/translated/purchase_order.js:1670
-#: templates/js/translated/return_order.js:306
-#: templates/js/translated/sales_order.js:794
-#: templates/js/translated/table_filters.js:24
-#: templates/project_code_data.html:6
-msgid "Project Code"
-msgstr ""
-
#: common/models.py:105
msgid "Unique project code"
msgstr ""
@@ -2261,9 +2254,9 @@ msgstr ""
msgid "Copy category parameter templates when creating a part"
msgstr ""
-#: common/models.py:1162 part/admin.py:55 part/models.py:3560
-#: report/models.py:166 templates/js/translated/table_filters.js:109
-#: templates/js/translated/table_filters.js:680
+#: common/models.py:1162 part/admin.py:55 part/models.py:3594
+#: report/models.py:166 templates/js/translated/table_filters.js:115
+#: templates/js/translated/table_filters.js:702
msgid "Template"
msgstr ""
@@ -2271,10 +2264,10 @@ msgstr ""
msgid "Parts are templates by default"
msgstr ""
-#: common/models.py:1169 part/admin.py:51 part/admin.py:283 part/models.py:996
-#: templates/js/translated/bom.js:1598
-#: templates/js/translated/table_filters.js:276
-#: templates/js/translated/table_filters.js:634
+#: common/models.py:1169 part/admin.py:51 part/admin.py:283 part/models.py:997
+#: templates/js/translated/bom.js:1618
+#: templates/js/translated/table_filters.js:282
+#: templates/js/translated/table_filters.js:656
msgid "Assembly"
msgstr ""
@@ -2282,8 +2275,8 @@ msgstr ""
msgid "Parts can be assembled from other components by default"
msgstr ""
-#: common/models.py:1176 part/admin.py:52 part/models.py:1002
-#: templates/js/translated/table_filters.js:642
+#: common/models.py:1176 part/admin.py:52 part/models.py:1003
+#: templates/js/translated/table_filters.js:664
msgid "Component"
msgstr ""
@@ -2291,7 +2284,7 @@ msgstr ""
msgid "Parts can be used as sub-components by default"
msgstr ""
-#: common/models.py:1183 part/admin.py:53 part/models.py:1013
+#: common/models.py:1183 part/admin.py:53 part/models.py:1014
msgid "Purchaseable"
msgstr ""
@@ -2299,8 +2292,8 @@ msgstr ""
msgid "Parts are purchaseable by default"
msgstr ""
-#: common/models.py:1190 part/admin.py:54 part/models.py:1018
-#: templates/js/translated/table_filters.js:668
+#: common/models.py:1190 part/admin.py:54 part/models.py:1019
+#: templates/js/translated/table_filters.js:690
msgid "Salable"
msgstr ""
@@ -2308,10 +2301,10 @@ msgstr ""
msgid "Parts are salable by default"
msgstr ""
-#: common/models.py:1197 part/admin.py:56 part/models.py:1008
-#: templates/js/translated/table_filters.js:117
-#: templates/js/translated/table_filters.js:193
-#: templates/js/translated/table_filters.js:684
+#: common/models.py:1197 part/admin.py:56 part/models.py:1009
+#: templates/js/translated/table_filters.js:123
+#: templates/js/translated/table_filters.js:199
+#: templates/js/translated/table_filters.js:706
msgid "Trackable"
msgstr ""
@@ -2319,10 +2312,10 @@ msgstr ""
msgid "Parts are trackable by default"
msgstr ""
-#: common/models.py:1204 part/admin.py:57 part/models.py:1028
+#: common/models.py:1204 part/admin.py:57 part/models.py:1029
#: part/templates/part/part_base.html:156
-#: templates/js/translated/table_filters.js:113
-#: templates/js/translated/table_filters.js:688
+#: templates/js/translated/table_filters.js:119
+#: templates/js/translated/table_filters.js:710
msgid "Virtual"
msgstr ""
@@ -2354,7 +2347,7 @@ msgstr ""
msgid "Allow creation of initial stock when adding a new part"
msgstr ""
-#: common/models.py:1232 templates/js/translated/part.js:108
+#: common/models.py:1232 templates/js/translated/part.js:107
msgid "Initial Supplier Data"
msgstr ""
@@ -2603,179 +2596,179 @@ msgid "Stock location default icon (empty means no icon)"
msgstr ""
#: common/models.py:1471
-msgid "Build Order Reference Pattern"
+msgid "Show Installed Stock Items"
msgstr ""
#: common/models.py:1472
-msgid "Required pattern for generating Build Order reference field"
+msgid "Display installed stock items in stock tables"
msgstr ""
#: common/models.py:1478
-msgid "Enable Return Orders"
+msgid "Build Order Reference Pattern"
msgstr ""
#: common/models.py:1479
-msgid "Enable return order functionality in the user interface"
+msgid "Required pattern for generating Build Order reference field"
msgstr ""
#: common/models.py:1485
-msgid "Return Order Reference Pattern"
+msgid "Enable Return Orders"
msgstr ""
#: common/models.py:1486
-msgid "Required pattern for generating Return Order reference field"
+msgid "Enable return order functionality in the user interface"
msgstr ""
#: common/models.py:1492
-msgid "Edit Completed Return Orders"
+msgid "Return Order Reference Pattern"
msgstr ""
#: common/models.py:1493
-msgid "Allow editing of return orders after they have been completed"
+msgid "Required pattern for generating Return Order reference field"
msgstr ""
#: common/models.py:1499
-msgid "Sales Order Reference Pattern"
+msgid "Edit Completed Return Orders"
msgstr ""
#: common/models.py:1500
-msgid "Required pattern for generating Sales Order reference field"
+msgid "Allow editing of return orders after they have been completed"
msgstr ""
#: common/models.py:1506
-msgid "Sales Order Default Shipment"
+msgid "Sales Order Reference Pattern"
msgstr ""
#: common/models.py:1507
-msgid "Enable creation of default shipment with sales orders"
+msgid "Required pattern for generating Sales Order reference field"
msgstr ""
#: common/models.py:1513
-msgid "Edit Completed Sales Orders"
+msgid "Sales Order Default Shipment"
msgstr ""
#: common/models.py:1514
-msgid "Allow editing of sales orders after they have been shipped or completed"
+msgid "Enable creation of default shipment with sales orders"
msgstr ""
#: common/models.py:1520
-msgid "Purchase Order Reference Pattern"
+msgid "Edit Completed Sales Orders"
msgstr ""
#: common/models.py:1521
-msgid "Required pattern for generating Purchase Order reference field"
+msgid "Allow editing of sales orders after they have been shipped or completed"
msgstr ""
#: common/models.py:1527
-msgid "Edit Completed Purchase Orders"
+msgid "Purchase Order Reference Pattern"
msgstr ""
#: common/models.py:1528
-msgid "Allow editing of purchase orders after they have been shipped or completed"
+msgid "Required pattern for generating Purchase Order reference field"
+msgstr ""
+
+#: common/models.py:1534
+msgid "Edit Completed Purchase Orders"
msgstr ""
#: common/models.py:1535
-msgid "Enable password forgot"
-msgstr ""
-
-#: common/models.py:1536
-msgid "Enable password forgot function on the login pages"
+msgid "Allow editing of purchase orders after they have been shipped or completed"
msgstr ""
#: common/models.py:1542
-msgid "Enable registration"
+msgid "Enable password forgot"
msgstr ""
#: common/models.py:1543
-msgid "Enable self-registration for users on the login pages"
+msgid "Enable password forgot function on the login pages"
msgstr ""
#: common/models.py:1549
-msgid "Enable SSO"
+msgid "Enable registration"
msgstr ""
#: common/models.py:1550
-msgid "Enable SSO on the login pages"
+msgid "Enable self-registration for users on the login pages"
msgstr ""
#: common/models.py:1556
-msgid "Enable SSO registration"
+msgid "Enable SSO"
msgstr ""
#: common/models.py:1557
-msgid "Enable self-registration via SSO for users on the login pages"
+msgid "Enable SSO on the login pages"
msgstr ""
#: common/models.py:1563
-msgid "Email required"
+msgid "Enable SSO registration"
msgstr ""
#: common/models.py:1564
-msgid "Require user to supply mail on signup"
+msgid "Enable self-registration via SSO for users on the login pages"
msgstr ""
#: common/models.py:1570
-msgid "Auto-fill SSO users"
-msgstr ""
+msgid "Email required"
+msgstr "Surel diperlukan"
#: common/models.py:1571
-msgid "Automatically fill out user-details from SSO account-data"
+msgid "Require user to supply mail on signup"
msgstr ""
#: common/models.py:1577
-msgid "Mail twice"
+msgid "Auto-fill SSO users"
msgstr ""
#: common/models.py:1578
-msgid "On signup ask users twice for their mail"
+msgid "Automatically fill out user-details from SSO account-data"
msgstr ""
#: common/models.py:1584
-msgid "Password twice"
+msgid "Mail twice"
msgstr ""
#: common/models.py:1585
-msgid "On signup ask users twice for their password"
+msgid "On signup ask users twice for their mail"
msgstr ""
#: common/models.py:1591
-msgid "Allowed domains"
+msgid "Password twice"
msgstr ""
#: common/models.py:1592
-msgid "Restrict signup to certain domains (comma-separated, starting with @)"
+msgid "On signup ask users twice for their password"
msgstr ""
#: common/models.py:1598
-msgid "Group on signup"
+msgid "Allowed domains"
msgstr ""
#: common/models.py:1599
-msgid "Group to which new users are assigned on registration"
+msgid "Restrict signup to certain domains (comma-separated, starting with @)"
msgstr ""
#: common/models.py:1605
-msgid "Enforce MFA"
+msgid "Group on signup"
msgstr ""
#: common/models.py:1606
-msgid "Users must use multifactor security."
+msgid "Group to which new users are assigned on registration"
msgstr ""
#: common/models.py:1612
-msgid "Check plugins on startup"
+msgid "Enforce MFA"
msgstr ""
#: common/models.py:1613
-msgid "Check that all plugins are installed on startup - enable in container environments"
+msgid "Users must use multifactor security."
+msgstr ""
+
+#: common/models.py:1619
+msgid "Check plugins on startup"
msgstr ""
#: common/models.py:1620
-msgid "Check plugin signatures"
-msgstr ""
-
-#: common/models.py:1621
-msgid "Check and show signatures for plugins"
+msgid "Check that all plugins are installed on startup - enable in container environments"
msgstr ""
#: common/models.py:1628
@@ -2850,7 +2843,7 @@ msgstr ""
msgid "Stocktake reports will be deleted after specified number of days"
msgstr ""
-#: common/models.py:1710 common/models.py:2147
+#: common/models.py:1710 common/models.py:2133
msgid "Settings key (must be unique - case insensitive"
msgstr ""
@@ -2891,528 +2884,513 @@ msgid "Show latest parts on the homepage"
msgstr ""
#: common/models.py:1779
-msgid "Recent Part Count"
-msgstr ""
-
-#: common/models.py:1780
-msgid "Number of recent parts to display on index page"
-msgstr ""
-
-#: common/models.py:1786
msgid "Show unvalidated BOMs"
msgstr ""
-#: common/models.py:1787
+#: common/models.py:1780
msgid "Show BOMs that await validation on the homepage"
msgstr ""
-#: common/models.py:1793
+#: common/models.py:1786
msgid "Show recent stock changes"
msgstr ""
-#: common/models.py:1794
+#: common/models.py:1787
msgid "Show recently changed stock items on the homepage"
msgstr ""
-#: common/models.py:1800
-msgid "Recent Stock Count"
-msgstr ""
-
-#: common/models.py:1801
-msgid "Number of recent stock items to display on index page"
-msgstr ""
-
-#: common/models.py:1807
+#: common/models.py:1793
msgid "Show low stock"
msgstr ""
-#: common/models.py:1808
+#: common/models.py:1794
msgid "Show low stock items on the homepage"
msgstr ""
-#: common/models.py:1814
+#: common/models.py:1800
msgid "Show depleted stock"
msgstr ""
-#: common/models.py:1815
+#: common/models.py:1801
msgid "Show depleted stock items on the homepage"
msgstr ""
-#: common/models.py:1821
+#: common/models.py:1807
msgid "Show needed stock"
msgstr ""
-#: common/models.py:1822
+#: common/models.py:1808
msgid "Show stock items needed for builds on the homepage"
msgstr ""
-#: common/models.py:1828
+#: common/models.py:1814
msgid "Show expired stock"
msgstr ""
-#: common/models.py:1829
+#: common/models.py:1815
msgid "Show expired stock items on the homepage"
msgstr ""
-#: common/models.py:1835
+#: common/models.py:1821
msgid "Show stale stock"
msgstr ""
-#: common/models.py:1836
+#: common/models.py:1822
msgid "Show stale stock items on the homepage"
msgstr ""
-#: common/models.py:1842
+#: common/models.py:1828
msgid "Show pending builds"
msgstr ""
-#: common/models.py:1843
+#: common/models.py:1829
msgid "Show pending builds on the homepage"
msgstr ""
-#: common/models.py:1849
+#: common/models.py:1835
msgid "Show overdue builds"
msgstr ""
-#: common/models.py:1850
+#: common/models.py:1836
msgid "Show overdue builds on the homepage"
msgstr ""
-#: common/models.py:1856
+#: common/models.py:1842
msgid "Show outstanding POs"
msgstr ""
-#: common/models.py:1857
+#: common/models.py:1843
msgid "Show outstanding POs on the homepage"
msgstr ""
-#: common/models.py:1863
+#: common/models.py:1849
msgid "Show overdue POs"
msgstr ""
-#: common/models.py:1864
+#: common/models.py:1850
msgid "Show overdue POs on the homepage"
msgstr ""
-#: common/models.py:1870
+#: common/models.py:1856
msgid "Show outstanding SOs"
msgstr ""
-#: common/models.py:1871
+#: common/models.py:1857
msgid "Show outstanding SOs on the homepage"
msgstr ""
-#: common/models.py:1877
+#: common/models.py:1863
msgid "Show overdue SOs"
msgstr ""
-#: common/models.py:1878
+#: common/models.py:1864
msgid "Show overdue SOs on the homepage"
msgstr ""
-#: common/models.py:1884
+#: common/models.py:1870
msgid "Show pending SO shipments"
msgstr ""
-#: common/models.py:1885
+#: common/models.py:1871
msgid "Show pending SO shipments on the homepage"
msgstr ""
-#: common/models.py:1891
+#: common/models.py:1877
msgid "Show News"
msgstr ""
-#: common/models.py:1892
+#: common/models.py:1878
msgid "Show news on the homepage"
msgstr ""
-#: common/models.py:1898
+#: common/models.py:1884
msgid "Inline label display"
msgstr ""
-#: common/models.py:1899
+#: common/models.py:1885
msgid "Display PDF labels in the browser, instead of downloading as a file"
msgstr ""
-#: common/models.py:1905
+#: common/models.py:1891
msgid "Default label printer"
msgstr ""
-#: common/models.py:1906
+#: common/models.py:1892
msgid "Configure which label printer should be selected by default"
msgstr ""
-#: common/models.py:1912
+#: common/models.py:1898
msgid "Inline report display"
msgstr ""
-#: common/models.py:1913
+#: common/models.py:1899
msgid "Display PDF reports in the browser, instead of downloading as a file"
msgstr ""
-#: common/models.py:1919
+#: common/models.py:1905
msgid "Search Parts"
msgstr ""
-#: common/models.py:1920
+#: common/models.py:1906
msgid "Display parts in search preview window"
msgstr ""
-#: common/models.py:1926
+#: common/models.py:1912
msgid "Search Supplier Parts"
msgstr ""
-#: common/models.py:1927
+#: common/models.py:1913
msgid "Display supplier parts in search preview window"
msgstr ""
-#: common/models.py:1933
+#: common/models.py:1919
msgid "Search Manufacturer Parts"
msgstr ""
-#: common/models.py:1934
+#: common/models.py:1920
msgid "Display manufacturer parts in search preview window"
msgstr ""
-#: common/models.py:1940
+#: common/models.py:1926
msgid "Hide Inactive Parts"
msgstr ""
-#: common/models.py:1941
+#: common/models.py:1927
msgid "Excluded inactive parts from search preview window"
msgstr ""
-#: common/models.py:1947
+#: common/models.py:1933
msgid "Search Categories"
msgstr ""
-#: common/models.py:1948
+#: common/models.py:1934
msgid "Display part categories in search preview window"
msgstr ""
-#: common/models.py:1954
+#: common/models.py:1940
msgid "Search Stock"
msgstr ""
-#: common/models.py:1955
+#: common/models.py:1941
msgid "Display stock items in search preview window"
msgstr ""
-#: common/models.py:1961
+#: common/models.py:1947
msgid "Hide Unavailable Stock Items"
msgstr ""
-#: common/models.py:1962
+#: common/models.py:1948
msgid "Exclude stock items which are not available from the search preview window"
msgstr ""
-#: common/models.py:1968
+#: common/models.py:1954
msgid "Search Locations"
msgstr ""
-#: common/models.py:1969
+#: common/models.py:1955
msgid "Display stock locations in search preview window"
msgstr ""
-#: common/models.py:1975
+#: common/models.py:1961
msgid "Search Companies"
msgstr ""
-#: common/models.py:1976
+#: common/models.py:1962
msgid "Display companies in search preview window"
msgstr ""
-#: common/models.py:1982
+#: common/models.py:1968
msgid "Search Build Orders"
msgstr ""
-#: common/models.py:1983
+#: common/models.py:1969
msgid "Display build orders in search preview window"
msgstr ""
-#: common/models.py:1989
+#: common/models.py:1975
msgid "Search Purchase Orders"
msgstr ""
-#: common/models.py:1990
+#: common/models.py:1976
msgid "Display purchase orders in search preview window"
msgstr ""
-#: common/models.py:1996
+#: common/models.py:1982
msgid "Exclude Inactive Purchase Orders"
msgstr ""
-#: common/models.py:1997
+#: common/models.py:1983
msgid "Exclude inactive purchase orders from search preview window"
msgstr ""
-#: common/models.py:2003
+#: common/models.py:1989
msgid "Search Sales Orders"
msgstr ""
-#: common/models.py:2004
+#: common/models.py:1990
msgid "Display sales orders in search preview window"
msgstr ""
-#: common/models.py:2010
+#: common/models.py:1996
msgid "Exclude Inactive Sales Orders"
msgstr ""
-#: common/models.py:2011
+#: common/models.py:1997
msgid "Exclude inactive sales orders from search preview window"
msgstr ""
-#: common/models.py:2017
+#: common/models.py:2003
msgid "Search Return Orders"
msgstr ""
-#: common/models.py:2018
+#: common/models.py:2004
msgid "Display return orders in search preview window"
msgstr ""
-#: common/models.py:2024
+#: common/models.py:2010
msgid "Exclude Inactive Return Orders"
msgstr ""
-#: common/models.py:2025
+#: common/models.py:2011
msgid "Exclude inactive return orders from search preview window"
msgstr ""
-#: common/models.py:2031
+#: common/models.py:2017
msgid "Search Preview Results"
msgstr ""
-#: common/models.py:2032
+#: common/models.py:2018
msgid "Number of results to show in each section of the search preview window"
msgstr ""
-#: common/models.py:2038
+#: common/models.py:2024
msgid "Regex Search"
msgstr ""
-#: common/models.py:2039
+#: common/models.py:2025
msgid "Enable regular expressions in search queries"
msgstr ""
-#: common/models.py:2045
+#: common/models.py:2031
msgid "Whole Word Search"
msgstr ""
-#: common/models.py:2046
+#: common/models.py:2032
msgid "Search queries return results for whole word matches"
msgstr ""
-#: common/models.py:2052
+#: common/models.py:2038
msgid "Show Quantity in Forms"
msgstr ""
-#: common/models.py:2053
+#: common/models.py:2039
msgid "Display available part quantity in some forms"
msgstr ""
-#: common/models.py:2059
+#: common/models.py:2045
msgid "Escape Key Closes Forms"
msgstr ""
-#: common/models.py:2060
+#: common/models.py:2046
msgid "Use the escape key to close modal forms"
msgstr ""
-#: common/models.py:2066
+#: common/models.py:2052
msgid "Fixed Navbar"
msgstr ""
-#: common/models.py:2067
+#: common/models.py:2053
msgid "The navbar position is fixed to the top of the screen"
msgstr ""
-#: common/models.py:2073
+#: common/models.py:2059
msgid "Date Format"
msgstr ""
-#: common/models.py:2074
+#: common/models.py:2060
msgid "Preferred format for displaying dates"
msgstr ""
-#: common/models.py:2088 part/templates/part/detail.html:41
+#: common/models.py:2074 part/templates/part/detail.html:41
msgid "Part Scheduling"
msgstr ""
-#: common/models.py:2089
+#: common/models.py:2075
msgid "Display part scheduling information"
msgstr ""
-#: common/models.py:2095 part/templates/part/detail.html:62
+#: common/models.py:2081 part/templates/part/detail.html:62
msgid "Part Stocktake"
msgstr ""
-#: common/models.py:2096
+#: common/models.py:2082
msgid "Display part stocktake information (if stocktake functionality is enabled)"
msgstr ""
-#: common/models.py:2102
+#: common/models.py:2088
msgid "Table String Length"
msgstr ""
-#: common/models.py:2103
+#: common/models.py:2089
msgid "Maximimum length limit for strings displayed in table views"
msgstr ""
-#: common/models.py:2112
+#: common/models.py:2098
msgid "Default part label template"
msgstr ""
-#: common/models.py:2113
+#: common/models.py:2099
msgid "The part label template to be automatically selected"
msgstr ""
-#: common/models.py:2121
+#: common/models.py:2107
msgid "Default stock item template"
msgstr ""
-#: common/models.py:2122
+#: common/models.py:2108
msgid "The stock item label template to be automatically selected"
msgstr ""
-#: common/models.py:2130
+#: common/models.py:2116
msgid "Default stock location label template"
msgstr ""
-#: common/models.py:2131
+#: common/models.py:2117
msgid "The stock location label template to be automatically selected"
msgstr ""
-#: common/models.py:2177
+#: common/models.py:2163
msgid "Price break quantity"
msgstr ""
-#: common/models.py:2184 company/serializers.py:434 order/admin.py:43
-#: order/models.py:1132 order/models.py:1939
-#: templates/js/translated/company.js:1433 templates/js/translated/part.js:1856
+#: common/models.py:2170 company/serializers.py:491 order/admin.py:43
+#: order/models.py:1145 order/models.py:1952
+#: templates/js/translated/company.js:1854 templates/js/translated/part.js:1855
#: templates/js/translated/pricing.js:621
-#: templates/js/translated/return_order.js:725
+#: templates/js/translated/return_order.js:737
msgid "Price"
msgstr ""
-#: common/models.py:2185
+#: common/models.py:2171
msgid "Unit price at specified quantity"
msgstr ""
-#: common/models.py:2345 common/models.py:2523
+#: common/models.py:2331 common/models.py:2509
msgid "Endpoint"
msgstr ""
-#: common/models.py:2346
+#: common/models.py:2332
msgid "Endpoint at which this webhook is received"
msgstr ""
-#: common/models.py:2355
+#: common/models.py:2341
msgid "Name for this webhook"
msgstr ""
-#: common/models.py:2360 part/admin.py:50 part/models.py:1023
-#: plugin/models.py:47 templates/js/translated/table_filters.js:105
-#: templates/js/translated/table_filters.js:189
-#: templates/js/translated/table_filters.js:434
-#: templates/js/translated/table_filters.js:450
-#: templates/js/translated/table_filters.js:629
+#: common/models.py:2346 part/admin.py:50 part/models.py:1024
+#: plugin/models.py:48 templates/js/translated/table_filters.js:111
+#: templates/js/translated/table_filters.js:195
+#: templates/js/translated/table_filters.js:440
+#: templates/js/translated/table_filters.js:456
+#: templates/js/translated/table_filters.js:651
msgid "Active"
msgstr ""
-#: common/models.py:2361
+#: common/models.py:2347
msgid "Is this webhook active"
msgstr ""
-#: common/models.py:2375
+#: common/models.py:2361
msgid "Token"
msgstr ""
-#: common/models.py:2376
+#: common/models.py:2362
msgid "Token for access"
msgstr ""
-#: common/models.py:2383
+#: common/models.py:2369
msgid "Secret"
msgstr ""
-#: common/models.py:2384
+#: common/models.py:2370
msgid "Shared secret for HMAC"
msgstr ""
-#: common/models.py:2490
+#: common/models.py:2476
msgid "Message ID"
msgstr ""
-#: common/models.py:2491
+#: common/models.py:2477
msgid "Unique identifier for this message"
msgstr ""
-#: common/models.py:2499
+#: common/models.py:2485
msgid "Host"
msgstr ""
-#: common/models.py:2500
+#: common/models.py:2486
msgid "Host from which this message was received"
msgstr ""
-#: common/models.py:2507
+#: common/models.py:2493
msgid "Header"
msgstr ""
-#: common/models.py:2508
+#: common/models.py:2494
msgid "Header of this message"
msgstr ""
-#: common/models.py:2514
+#: common/models.py:2500
msgid "Body"
msgstr ""
-#: common/models.py:2515
+#: common/models.py:2501
msgid "Body of this message"
msgstr ""
-#: common/models.py:2524
+#: common/models.py:2510
msgid "Endpoint on which this message was received"
msgstr ""
-#: common/models.py:2529
+#: common/models.py:2515
msgid "Worked on"
msgstr ""
-#: common/models.py:2530
+#: common/models.py:2516
msgid "Was the work on this message finished?"
msgstr ""
-#: common/models.py:2684
+#: common/models.py:2670
msgid "Id"
msgstr ""
-#: common/models.py:2690 templates/js/translated/news.js:44
+#: common/models.py:2676 templates/js/translated/company.js:996
+#: templates/js/translated/news.js:44
msgid "Title"
msgstr ""
-#: common/models.py:2700 templates/js/translated/news.js:60
+#: common/models.py:2686 templates/js/translated/news.js:60
msgid "Published"
msgstr ""
-#: common/models.py:2705 templates/InvenTree/settings/plugin_settings.html:32
+#: common/models.py:2691 templates/InvenTree/settings/plugin_settings.html:32
#: templates/js/translated/news.js:56 templates/js/translated/plugin.js:106
msgid "Author"
msgstr ""
-#: common/models.py:2710 templates/js/translated/news.js:52
+#: common/models.py:2696 templates/js/translated/news.js:52
msgid "Summary"
msgstr ""
-#: common/models.py:2715
+#: common/models.py:2701
msgid "Read"
msgstr ""
-#: common/models.py:2716
+#: common/models.py:2702
msgid "Was this news item read?"
msgstr ""
-#: common/models.py:2736 company/models.py:143 part/models.py:914
+#: common/models.py:2722 company/models.py:139 part/models.py:915
#: report/templates/report/inventree_bill_of_materials_report.html:126
#: report/templates/report/inventree_bill_of_materials_report.html:148
#: report/templates/report/inventree_return_order_report_base.html:35
@@ -3422,7 +3400,7 @@ msgstr ""
msgid "Image"
msgstr ""
-#: common/models.py:2737
+#: common/models.py:2723
msgid "Image file"
msgstr ""
@@ -3499,7 +3477,7 @@ msgstr ""
#: company/models.py:113 company/templates/company/company_base.html:101
#: templates/InvenTree/settings/plugin_settings.html:54
-#: templates/js/translated/company.js:514
+#: templates/js/translated/company.js:521
msgid "Website"
msgstr ""
@@ -3507,303 +3485,387 @@ msgstr ""
msgid "Company website URL"
msgstr ""
-#: company/models.py:118 company/templates/company/company_base.html:119
-msgid "Address"
-msgstr ""
-
-#: company/models.py:119
-msgid "Company address"
-msgstr ""
-
-#: company/models.py:122
+#: company/models.py:118
msgid "Phone number"
msgstr ""
-#: company/models.py:123
+#: company/models.py:119
msgid "Contact phone number"
msgstr ""
-#: company/models.py:126 company/templates/company/company_base.html:133
+#: company/models.py:122 company/templates/company/company_base.html:133
#: templates/InvenTree/settings/user.html:49
-#: templates/js/translated/company.js:659
+#: templates/js/translated/company.js:666
msgid "Email"
-msgstr ""
+msgstr "Surel"
-#: company/models.py:126
+#: company/models.py:122
msgid "Contact email address"
msgstr ""
-#: company/models.py:129 company/templates/company/company_base.html:140
-#: order/models.py:266 order/templates/order/order_base.html:207
+#: company/models.py:125 company/templates/company/company_base.html:140
+#: order/models.py:270 order/templates/order/order_base.html:203
#: order/templates/order/return_order_base.html:175
#: order/templates/order/sales_order_base.html:215
msgid "Contact"
msgstr ""
-#: company/models.py:130
+#: company/models.py:126
msgid "Point of contact"
msgstr ""
-#: company/models.py:132
+#: company/models.py:128
msgid "Link to external company information"
msgstr ""
-#: company/models.py:146
+#: company/models.py:142
msgid "is customer"
msgstr ""
-#: company/models.py:146
+#: company/models.py:142
msgid "Do you sell items to this company?"
msgstr ""
-#: company/models.py:148
+#: company/models.py:144
msgid "is supplier"
msgstr ""
-#: company/models.py:148
+#: company/models.py:144
msgid "Do you purchase items from this company?"
msgstr ""
-#: company/models.py:150
+#: company/models.py:146
msgid "is manufacturer"
msgstr ""
-#: company/models.py:150
+#: company/models.py:146
msgid "Does this company manufacture parts?"
msgstr ""
-#: company/models.py:157
+#: company/models.py:153
msgid "Default currency used for this company"
msgstr ""
-#: company/models.py:223 company/templates/company/company_base.html:8
+#: company/models.py:235 company/models.py:328
+#: company/templates/company/company_base.html:8
#: company/templates/company/company_base.html:12
-#: templates/InvenTree/search.html:178 templates/js/translated/company.js:487
+#: templates/InvenTree/search.html:178 templates/js/translated/company.js:494
msgid "Company"
msgstr ""
-#: company/models.py:278 company/models.py:553 stock/models.py:675
-#: stock/serializers.py:155 stock/templates/stock/item_base.html:143
-#: templates/js/translated/bom.js:621
+#: company/models.py:324
+msgid "Company already has a primary address"
+msgstr ""
+
+#: company/models.py:329
+msgid "Select company"
+msgstr ""
+
+#: company/models.py:332
+msgid "Address title"
+msgstr ""
+
+#: company/models.py:333
+msgid "Title describing the address entry"
+msgstr ""
+
+#: company/models.py:337
+msgid "Primary address"
+msgstr ""
+
+#: company/models.py:338
+msgid "Set as primary address"
+msgstr ""
+
+#: company/models.py:341 templates/js/translated/company.js:941
+#: templates/js/translated/company.js:1002
+msgid "Line 1"
+msgstr ""
+
+#: company/models.py:342
+msgid "Address line 1"
+msgstr ""
+
+#: company/models.py:346 templates/js/translated/company.js:942
+#: templates/js/translated/company.js:1008
+msgid "Line 2"
+msgstr ""
+
+#: company/models.py:347
+msgid "Address line 2"
+msgstr ""
+
+#: company/models.py:351 company/models.py:352
+#: templates/js/translated/company.js:1014
+msgid "Postal code"
+msgstr ""
+
+#: company/models.py:356
+msgid "City/Region"
+msgstr ""
+
+#: company/models.py:357
+msgid "Postal code city/region"
+msgstr ""
+
+#: company/models.py:361
+msgid "State/Province"
+msgstr ""
+
+#: company/models.py:362
+msgid "State or province"
+msgstr ""
+
+#: company/models.py:366 templates/js/translated/company.js:1032
+msgid "Country"
+msgstr ""
+
+#: company/models.py:367
+msgid "Address country"
+msgstr ""
+
+#: company/models.py:371
+msgid "Courier shipping notes"
+msgstr ""
+
+#: company/models.py:372
+msgid "Notes for shipping courier"
+msgstr ""
+
+#: company/models.py:376
+msgid "Internal shipping notes"
+msgstr ""
+
+#: company/models.py:377
+msgid "Shipping notes for internal use"
+msgstr ""
+
+#: company/models.py:382
+msgid "Link to address information (external)"
+msgstr ""
+
+#: company/models.py:427 company/models.py:702 stock/models.py:675
+#: stock/serializers.py:204 stock/templates/stock/item_base.html:143
+#: templates/js/translated/bom.js:622
msgid "Base Part"
msgstr ""
-#: company/models.py:282 company/models.py:557
+#: company/models.py:431 company/models.py:706
msgid "Select part"
msgstr ""
-#: company/models.py:293 company/templates/company/company_base.html:77
+#: company/models.py:442 company/templates/company/company_base.html:77
#: company/templates/company/manufacturer_part.html:90
-#: company/templates/company/supplier_part.html:146 part/serializers.py:354
+#: company/templates/company/supplier_part.html:146 part/serializers.py:404
#: stock/templates/stock/item_base.html:208
-#: templates/js/translated/company.js:498
-#: templates/js/translated/company.js:824
-#: templates/js/translated/company.js:954
-#: templates/js/translated/company.js:1221
-#: templates/js/translated/table_filters.js:709
+#: templates/js/translated/company.js:505
+#: templates/js/translated/company.js:1149
+#: templates/js/translated/company.js:1327
+#: templates/js/translated/company.js:1642
+#: templates/js/translated/table_filters.js:731
msgid "Manufacturer"
msgstr ""
-#: company/models.py:294
+#: company/models.py:443
msgid "Select manufacturer"
msgstr ""
-#: company/models.py:300 company/templates/company/manufacturer_part.html:101
-#: company/templates/company/supplier_part.html:154 part/serializers.py:360
-#: templates/js/translated/company.js:340
-#: templates/js/translated/company.js:823
-#: templates/js/translated/company.js:970
-#: templates/js/translated/company.js:1240 templates/js/translated/part.js:1773
-#: templates/js/translated/purchase_order.js:1814
-#: templates/js/translated/purchase_order.js:2021
+#: company/models.py:449 company/templates/company/manufacturer_part.html:101
+#: company/templates/company/supplier_part.html:154 part/serializers.py:410
+#: templates/js/translated/company.js:350
+#: templates/js/translated/company.js:1148
+#: templates/js/translated/company.js:1343
+#: templates/js/translated/company.js:1661 templates/js/translated/part.js:1772
+#: templates/js/translated/purchase_order.js:1829
+#: templates/js/translated/purchase_order.js:2031
msgid "MPN"
msgstr ""
-#: company/models.py:301
+#: company/models.py:450
msgid "Manufacturer Part Number"
msgstr ""
-#: company/models.py:307
+#: company/models.py:456
msgid "URL for external manufacturer part link"
msgstr ""
-#: company/models.py:313
+#: company/models.py:462
msgid "Manufacturer part description"
msgstr ""
-#: company/models.py:360 company/models.py:384 company/models.py:578
+#: company/models.py:509 company/models.py:533 company/models.py:727
#: company/templates/company/manufacturer_part.html:7
#: company/templates/company/manufacturer_part.html:24
#: stock/templates/stock/item_base.html:218
msgid "Manufacturer Part"
msgstr ""
-#: company/models.py:391
+#: company/models.py:540
msgid "Parameter name"
msgstr ""
-#: company/models.py:397
+#: company/models.py:546
#: report/templates/report/inventree_test_report_base.html:104
-#: stock/models.py:2255 templates/js/translated/company.js:872
-#: templates/js/translated/company.js:1077 templates/js/translated/part.js:1465
-#: templates/js/translated/stock.js:1446
+#: stock/models.py:2255 templates/js/translated/company.js:1197
+#: templates/js/translated/company.js:1450 templates/js/translated/part.js:1464
+#: templates/js/translated/stock.js:1445
msgid "Value"
msgstr ""
-#: company/models.py:398
+#: company/models.py:547
msgid "Parameter value"
msgstr ""
-#: company/models.py:404 company/templates/company/supplier_part.html:169
-#: part/admin.py:40 part/models.py:987 part/models.py:3407
+#: company/models.py:553 company/templates/company/supplier_part.html:169
+#: part/admin.py:40 part/models.py:988 part/models.py:3441
#: part/templates/part/part_base.html:286
-#: templates/js/translated/company.js:1083 templates/js/translated/part.js:1484
-#: templates/js/translated/part.js:1588 templates/js/translated/part.js:2262
+#: templates/js/translated/company.js:1456 templates/js/translated/part.js:1483
+#: templates/js/translated/part.js:1587 templates/js/translated/part.js:2338
msgid "Units"
msgstr ""
-#: company/models.py:405
+#: company/models.py:554
msgid "Parameter units"
msgstr ""
-#: company/models.py:498
+#: company/models.py:647
msgid "Pack units must be compatible with the base part units"
msgstr ""
-#: company/models.py:504
+#: company/models.py:653
msgid "Pack units must be greater than zero"
msgstr ""
-#: company/models.py:520
+#: company/models.py:669
msgid "Linked manufacturer part must reference the same base part"
msgstr ""
-#: company/models.py:564 company/templates/company/company_base.html:82
-#: company/templates/company/supplier_part.html:130 order/models.py:382
-#: order/templates/order/order_base.html:140 part/bom.py:285 part/bom.py:313
-#: part/serializers.py:343 stock/templates/stock/item_base.html:225
+#: company/models.py:713 company/templates/company/company_base.html:82
+#: company/templates/company/supplier_part.html:130 order/models.py:395
+#: order/templates/order/order_base.html:136 part/bom.py:285 part/bom.py:313
+#: part/serializers.py:393 stock/templates/stock/item_base.html:225
#: templates/email/overdue_purchase_order.html:16
-#: templates/js/translated/company.js:339
-#: templates/js/translated/company.js:502
-#: templates/js/translated/company.js:1194 templates/js/translated/part.js:1741
+#: templates/js/translated/company.js:349
+#: templates/js/translated/company.js:509
+#: templates/js/translated/company.js:1615 templates/js/translated/part.js:1740
#: templates/js/translated/pricing.js:498
-#: templates/js/translated/purchase_order.js:1653
-#: templates/js/translated/table_filters.js:713
+#: templates/js/translated/purchase_order.js:1668
+#: templates/js/translated/table_filters.js:735
msgid "Supplier"
msgstr ""
-#: company/models.py:565
+#: company/models.py:714
msgid "Select supplier"
msgstr ""
-#: company/models.py:570 company/templates/company/supplier_part.html:140
-#: part/bom.py:286 part/bom.py:314 part/serializers.py:349
-#: templates/js/translated/company.js:338 templates/js/translated/part.js:1759
+#: company/models.py:719 company/templates/company/supplier_part.html:140
+#: part/bom.py:286 part/bom.py:314 part/serializers.py:399
+#: templates/js/translated/company.js:348 templates/js/translated/part.js:1758
#: templates/js/translated/pricing.js:510
-#: templates/js/translated/purchase_order.js:1813
-#: templates/js/translated/purchase_order.js:1996
+#: templates/js/translated/purchase_order.js:1828
+#: templates/js/translated/purchase_order.js:2006
msgid "SKU"
msgstr ""
-#: company/models.py:571 part/serializers.py:349
+#: company/models.py:720 part/serializers.py:399
msgid "Supplier stock keeping unit"
msgstr ""
-#: company/models.py:579
+#: company/models.py:728
msgid "Select manufacturer part"
msgstr ""
-#: company/models.py:585
+#: company/models.py:734
msgid "URL for external supplier part link"
msgstr ""
-#: company/models.py:591
+#: company/models.py:740
msgid "Supplier part description"
msgstr ""
-#: company/models.py:596 company/templates/company/supplier_part.html:188
-#: part/admin.py:279 part/models.py:3801 part/templates/part/upload_bom.html:59
+#: company/models.py:745 company/templates/company/supplier_part.html:188
+#: part/admin.py:279 part/models.py:3845 part/templates/part/upload_bom.html:59
#: report/templates/report/inventree_bill_of_materials_report.html:140
#: report/templates/report/inventree_po_report_base.html:32
#: report/templates/report/inventree_return_order_report_base.html:27
#: report/templates/report/inventree_so_report_base.html:32
-#: stock/serializers.py:418
+#: stock/serializers.py:484
msgid "Note"
msgstr ""
-#: company/models.py:600 part/models.py:1919
+#: company/models.py:749 part/models.py:1921
msgid "base cost"
msgstr ""
-#: company/models.py:600 part/models.py:1919
+#: company/models.py:749 part/models.py:1921
msgid "Minimum charge (e.g. stocking fee)"
msgstr ""
-#: company/models.py:602 company/templates/company/supplier_part.html:161
+#: company/models.py:751 company/templates/company/supplier_part.html:161
#: stock/admin.py:119 stock/models.py:701
#: stock/templates/stock/item_base.html:241
-#: templates/js/translated/company.js:1256
-#: templates/js/translated/stock.js:2160
+#: templates/js/translated/company.js:1677
+#: templates/js/translated/stock.js:2317
msgid "Packaging"
msgstr ""
-#: company/models.py:602
+#: company/models.py:751
msgid "Part packaging"
msgstr ""
-#: company/models.py:606 templates/js/translated/company.js:1261
-#: templates/js/translated/part.js:1793 templates/js/translated/part.js:1848
-#: templates/js/translated/purchase_order.js:300
-#: templates/js/translated/purchase_order.js:827
-#: templates/js/translated/purchase_order.js:1073
-#: templates/js/translated/purchase_order.js:2052
-#: templates/js/translated/purchase_order.js:2069
+#: company/models.py:755 templates/js/translated/company.js:1682
+#: templates/js/translated/part.js:1792 templates/js/translated/part.js:1847
+#: templates/js/translated/purchase_order.js:311
+#: templates/js/translated/purchase_order.js:842
+#: templates/js/translated/purchase_order.js:1088
+#: templates/js/translated/purchase_order.js:2062
+#: templates/js/translated/purchase_order.js:2079
msgid "Pack Quantity"
msgstr ""
-#: company/models.py:607
+#: company/models.py:756
msgid "Total quantity supplied in a single pack. Leave empty for single items."
msgstr ""
-#: company/models.py:624 part/models.py:1921
+#: company/models.py:773 part/models.py:1923
msgid "multiple"
msgstr ""
-#: company/models.py:624
+#: company/models.py:773
msgid "Order multiple"
msgstr ""
-#: company/models.py:632 company/templates/company/supplier_part.html:115
+#: company/models.py:781 company/templates/company/supplier_part.html:115
#: templates/email/build_order_required_stock.html:19
#: templates/email/low_stock_notification.html:17
-#: templates/js/translated/bom.js:1127 templates/js/translated/build.js:2136
-#: templates/js/translated/build.js:3045
-#: templates/js/translated/model_renderers.js:205
-#: templates/js/translated/part.js:670 templates/js/translated/part.js:672
-#: templates/js/translated/part.js:677
-#: templates/js/translated/table_filters.js:286
-#: templates/js/translated/table_filters.js:492
+#: templates/js/translated/bom.js:1145 templates/js/translated/build.js:2490
+#: templates/js/translated/index.js:118
+#: templates/js/translated/model_renderers.js:219
+#: templates/js/translated/part.js:669 templates/js/translated/part.js:671
+#: templates/js/translated/part.js:676
+#: templates/js/translated/table_filters.js:292
+#: templates/js/translated/table_filters.js:510
msgid "Available"
msgstr ""
-#: company/models.py:633
+#: company/models.py:782
msgid "Quantity available from supplier"
msgstr ""
-#: company/models.py:637
+#: company/models.py:786
msgid "Availability Updated"
msgstr ""
-#: company/models.py:638
+#: company/models.py:787
msgid "Date of last update of availability data"
msgstr ""
-#: company/serializers.py:99
+#: company/serializers.py:156
msgid "Default currency used for this supplier"
msgstr ""
#: company/templates/company/company_base.html:22
-#: templates/js/translated/purchase_order.js:228
+#: templates/js/translated/purchase_order.js:239
msgid "Create Purchase Order"
msgstr ""
@@ -3816,7 +3878,7 @@ msgid "Edit company information"
msgstr ""
#: company/templates/company/company_base.html:34
-#: templates/js/translated/company.js:436
+#: templates/js/translated/company.js:443
msgid "Edit Company"
msgstr ""
@@ -3856,17 +3918,17 @@ msgstr ""
msgid "Delete image"
msgstr ""
-#: company/templates/company/company_base.html:87 order/models.py:779
-#: order/models.py:1738 order/templates/order/return_order_base.html:132
+#: company/templates/company/company_base.html:87 order/models.py:792
+#: order/models.py:1751 order/templates/order/return_order_base.html:132
#: order/templates/order/sales_order_base.html:145 stock/models.py:720
-#: stock/models.py:721 stock/serializers.py:825
+#: stock/models.py:721 stock/serializers.py:942
#: stock/templates/stock/item_base.html:401
#: templates/email/overdue_sales_order.html:16
-#: templates/js/translated/company.js:494
-#: templates/js/translated/return_order.js:284
-#: templates/js/translated/sales_order.js:772
-#: templates/js/translated/stock.js:2696
-#: templates/js/translated/table_filters.js:717
+#: templates/js/translated/company.js:501
+#: templates/js/translated/return_order.js:296
+#: templates/js/translated/sales_order.js:784
+#: templates/js/translated/stock.js:2827
+#: templates/js/translated/table_filters.js:739
msgid "Customer"
msgstr ""
@@ -3874,6 +3936,13 @@ msgstr ""
msgid "Uses default currency"
msgstr ""
+#: company/templates/company/company_base.html:119 order/models.py:279
+#: order/templates/order/order_base.html:210
+#: order/templates/order/return_order_base.html:182
+#: order/templates/order/sales_order_base.html:222
+msgid "Address"
+msgstr ""
+
#: company/templates/company/company_base.html:126
msgid "Phone"
msgstr ""
@@ -3906,7 +3975,7 @@ msgstr ""
#: company/templates/company/detail.html:15
#: company/templates/company/manufacturer_part_sidebar.html:7
-#: templates/InvenTree/search.html:120 templates/js/translated/search.js:189
+#: templates/InvenTree/search.html:120 templates/js/translated/search.js:147
msgid "Supplier Parts"
msgstr ""
@@ -3916,129 +3985,121 @@ msgstr ""
#: company/templates/company/detail.html:20
#: company/templates/company/manufacturer_part.html:123
-#: part/templates/part/detail.html:381
+#: part/templates/part/detail.html:356
msgid "New Supplier Part"
msgstr ""
-#: company/templates/company/detail.html:37
-#: company/templates/company/detail.html:85
-#: part/templates/part/category.html:183
-msgid "Order parts"
-msgstr ""
-
-#: company/templates/company/detail.html:42
-#: company/templates/company/detail.html:90
-msgid "Delete parts"
-msgstr ""
-
-#: company/templates/company/detail.html:43
-#: company/templates/company/detail.html:91
-msgid "Delete Parts"
-msgstr ""
-
-#: company/templates/company/detail.html:62 templates/InvenTree/search.html:105
-#: templates/js/translated/search.js:193
+#: company/templates/company/detail.html:41 templates/InvenTree/search.html:105
+#: templates/js/translated/search.js:151
msgid "Manufacturer Parts"
msgstr ""
-#: company/templates/company/detail.html:66
+#: company/templates/company/detail.html:45
msgid "Create new manufacturer part"
msgstr ""
-#: company/templates/company/detail.html:67 part/templates/part/detail.html:411
+#: company/templates/company/detail.html:46 part/templates/part/detail.html:376
msgid "New Manufacturer Part"
msgstr ""
-#: company/templates/company/detail.html:108
+#: company/templates/company/detail.html:65
msgid "Supplier Stock"
msgstr ""
-#: company/templates/company/detail.html:118
+#: company/templates/company/detail.html:75
#: company/templates/company/sidebar.html:12
#: company/templates/company/supplier_part_sidebar.html:7
#: 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:108 part/templates/part/part_sidebar.html:35
-#: templates/InvenTree/index.html:275 templates/InvenTree/search.html:199
+#: part/templates/part/detail.html:106 part/templates/part/part_sidebar.html:35
+#: templates/InvenTree/index.html:227 templates/InvenTree/search.html:199
#: templates/InvenTree/settings/sidebar.html:55
-#: templates/js/translated/search.js:247 templates/navbar.html:50
+#: templates/js/translated/search.js:205 templates/navbar.html:50
#: users/models.py:43
msgid "Purchase Orders"
msgstr ""
-#: company/templates/company/detail.html:122
+#: company/templates/company/detail.html:79
#: order/templates/order/purchase_orders.html:17
msgid "Create new purchase order"
msgstr ""
-#: company/templates/company/detail.html:123
+#: company/templates/company/detail.html:80
#: order/templates/order/purchase_orders.html:18
msgid "New Purchase Order"
msgstr ""
-#: company/templates/company/detail.html:146
+#: company/templates/company/detail.html:101
#: company/templates/company/sidebar.html:21
#: 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:131 part/templates/part/part_sidebar.html:39
-#: templates/InvenTree/index.html:307 templates/InvenTree/search.html:219
+#: part/templates/part/detail.html:127 part/templates/part/part_sidebar.html:39
+#: templates/InvenTree/index.html:259 templates/InvenTree/search.html:219
#: templates/InvenTree/settings/sidebar.html:57
-#: templates/js/translated/search.js:261 templates/navbar.html:62
+#: templates/js/translated/search.js:219 templates/navbar.html:62
#: users/models.py:44
msgid "Sales Orders"
msgstr ""
-#: company/templates/company/detail.html:150
+#: company/templates/company/detail.html:105
#: order/templates/order/sales_orders.html:20
msgid "Create new sales order"
msgstr ""
-#: company/templates/company/detail.html:151
+#: company/templates/company/detail.html:106
#: order/templates/order/sales_orders.html:21
msgid "New Sales Order"
msgstr ""
-#: company/templates/company/detail.html:173
-#: templates/js/translated/build.js:1976
+#: company/templates/company/detail.html:126
msgid "Assigned Stock"
msgstr ""
-#: company/templates/company/detail.html:191
+#: company/templates/company/detail.html:142
#: company/templates/company/sidebar.html:29
#: order/templates/order/return_order_base.html:13
#: order/templates/order/return_orders.html:8
#: order/templates/order/return_orders.html:15
#: templates/InvenTree/settings/sidebar.html:59
-#: templates/js/translated/search.js:274 templates/navbar.html:65
+#: templates/js/translated/search.js:232 templates/navbar.html:65
#: users/models.py:45
msgid "Return Orders"
msgstr ""
-#: company/templates/company/detail.html:195
+#: company/templates/company/detail.html:146
#: order/templates/order/return_orders.html:20
msgid "Create new return order"
msgstr ""
-#: company/templates/company/detail.html:196
+#: company/templates/company/detail.html:147
#: order/templates/order/return_orders.html:21
msgid "New Return Order"
msgstr ""
-#: company/templates/company/detail.html:221
+#: company/templates/company/detail.html:168
msgid "Company Notes"
msgstr ""
-#: company/templates/company/detail.html:236
+#: company/templates/company/detail.html:183
msgid "Company Contacts"
msgstr ""
-#: company/templates/company/detail.html:240
-#: company/templates/company/detail.html:241
+#: company/templates/company/detail.html:187
+#: company/templates/company/detail.html:188
msgid "Add Contact"
msgstr ""
+#: company/templates/company/detail.html:206
+msgid "Company addresses"
+msgstr ""
+
+#: company/templates/company/detail.html:210
+#: company/templates/company/detail.html:211
+msgid "Add Address"
+msgstr ""
+
#: company/templates/company/index.html:8
msgid "Supplier List"
msgstr ""
@@ -4050,17 +4111,17 @@ msgstr ""
#: company/templates/company/manufacturer_part.html:35
#: company/templates/company/supplier_part.html:228
-#: part/templates/part/detail.html:111 part/templates/part/part_base.html:85
+#: part/templates/part/detail.html:109 part/templates/part/part_base.html:85
msgid "Order part"
msgstr ""
#: company/templates/company/manufacturer_part.html:39
-#: templates/js/translated/company.js:1001
+#: templates/js/translated/company.js:1374
msgid "Edit manufacturer part"
msgstr ""
#: company/templates/company/manufacturer_part.html:43
-#: templates/js/translated/company.js:1002
+#: templates/js/translated/company.js:1375
msgid "Delete manufacturer part"
msgstr ""
@@ -4080,40 +4141,22 @@ msgstr ""
msgid "Suppliers"
msgstr ""
-#: company/templates/company/manufacturer_part.html:136
-#: part/templates/part/detail.html:392
-msgid "Delete supplier parts"
-msgstr ""
-
-#: company/templates/company/manufacturer_part.html:136
-#: company/templates/company/manufacturer_part.html:183
-#: part/templates/part/detail.html:393 part/templates/part/detail.html:423
-#: templates/js/translated/forms.js:506 templates/js/translated/helpers.js:105
-#: templates/js/translated/part.js:370 templates/js/translated/pricing.js:629
-#: templates/js/translated/stock.js:216 users/models.py:247
-msgid "Delete"
-msgstr ""
-
-#: company/templates/company/manufacturer_part.html:166
+#: company/templates/company/manufacturer_part.html:156
#: company/templates/company/manufacturer_part_sidebar.html:5
#: part/templates/part/category_sidebar.html:20
-#: part/templates/part/detail.html:208 part/templates/part/part_sidebar.html:8
+#: part/templates/part/detail.html:195 part/templates/part/part_sidebar.html:8
msgid "Parameters"
msgstr ""
-#: company/templates/company/manufacturer_part.html:170
-#: part/templates/part/detail.html:213
+#: company/templates/company/manufacturer_part.html:160
+#: part/templates/part/detail.html:200
#: templates/InvenTree/settings/category.html:12
#: templates/InvenTree/settings/part_parameters.html:12
msgid "New Parameter"
msgstr ""
-#: company/templates/company/manufacturer_part.html:183
-msgid "Delete parameters"
-msgstr ""
-
-#: company/templates/company/manufacturer_part.html:226
-#: templates/js/translated/part.js:1396
+#: company/templates/company/manufacturer_part.html:206
+#: templates/js/translated/part.js:1395
msgid "Add Parameter"
msgstr ""
@@ -4137,23 +4180,28 @@ msgstr ""
msgid "Contacts"
msgstr ""
+#: company/templates/company/sidebar.html:35
+msgid "Addresses"
+msgstr ""
+
#: company/templates/company/supplier_part.html:7
#: company/templates/company/supplier_part.html:24 stock/models.py:684
#: stock/templates/stock/item_base.html:234
-#: templates/js/translated/company.js:1210
-#: templates/js/translated/purchase_order.js:747
-#: templates/js/translated/stock.js:2016
+#: templates/js/translated/company.js:1631
+#: templates/js/translated/purchase_order.js:758
+#: templates/js/translated/stock.js:2173
msgid "Supplier Part"
msgstr ""
#: company/templates/company/supplier_part.html:51
+#: templates/js/translated/company.js:1557
msgid "Supplier part actions"
msgstr ""
#: company/templates/company/supplier_part.html:56
#: company/templates/company/supplier_part.html:57
#: company/templates/company/supplier_part.html:229
-#: part/templates/part/detail.html:112
+#: part/templates/part/detail.html:110
msgid "Order Part"
msgstr ""
@@ -4164,13 +4212,13 @@ msgstr ""
#: company/templates/company/supplier_part.html:64
#: company/templates/company/supplier_part.html:65
-#: templates/js/translated/company.js:283
+#: templates/js/translated/company.js:293
msgid "Edit Supplier Part"
msgstr ""
#: company/templates/company/supplier_part.html:69
#: company/templates/company/supplier_part.html:70
-#: templates/js/translated/company.js:258
+#: templates/js/translated/company.js:268
msgid "Duplicate Supplier Part"
msgstr ""
@@ -4197,7 +4245,7 @@ msgstr ""
#: company/templates/company/supplier_part.html:211
#: part/templates/part/detail.html:25 stock/templates/stock/location.html:198
-#: templates/js/translated/stock.js:504
+#: templates/js/translated/stock.js:503
msgid "New Stock Item"
msgstr ""
@@ -4205,37 +4253,37 @@ msgstr ""
msgid "Supplier Part Orders"
msgstr ""
-#: company/templates/company/supplier_part.html:249
+#: company/templates/company/supplier_part.html:247
msgid "Pricing Information"
msgstr ""
-#: company/templates/company/supplier_part.html:254
-#: templates/js/translated/company.js:387
+#: company/templates/company/supplier_part.html:252
+#: templates/js/translated/company.js:397
#: templates/js/translated/pricing.js:684
msgid "Add Price Break"
msgstr ""
-#: company/templates/company/supplier_part.html:281
+#: company/templates/company/supplier_part.html:277
msgid "Supplier Part QR Code"
msgstr ""
-#: company/templates/company/supplier_part.html:292
+#: company/templates/company/supplier_part.html:288
msgid "Link Barcode to Supplier Part"
msgstr ""
-#: company/templates/company/supplier_part.html:365
+#: company/templates/company/supplier_part.html:361
msgid "Update Part Availability"
msgstr ""
#: company/templates/company/supplier_part_sidebar.html:5 part/tasks.py:293
-#: part/templates/part/category.html:199
+#: part/templates/part/category.html:182
#: part/templates/part/category_sidebar.html:17 stock/admin.py:47
-#: stock/templates/stock/location.html:168
+#: stock/serializers.py:662 stock/templates/stock/location.html:168
#: stock/templates/stock/location.html:182
#: stock/templates/stock/location.html:194
#: stock/templates/stock/location_sidebar.html:7
-#: templates/InvenTree/search.html:155 templates/js/translated/part.js:1034
-#: templates/js/translated/search.js:214 templates/js/translated/stock.js:2514
+#: templates/InvenTree/search.html:155 templates/js/translated/part.js:1033
+#: templates/js/translated/search.js:172 templates/js/translated/stock.js:2645
#: users/models.py:41
msgid "Stock Items"
msgstr ""
@@ -4261,7 +4309,7 @@ msgstr ""
msgid "New Customer"
msgstr ""
-#: company/views.py:52 templates/js/translated/search.js:234
+#: company/views.py:52 templates/js/translated/search.js:192
msgid "Companies"
msgstr ""
@@ -4269,72 +4317,76 @@ msgstr ""
msgid "New Company"
msgstr ""
-#: label/models.py:104
+#: label/models.py:112
msgid "Label name"
msgstr ""
-#: label/models.py:111
+#: label/models.py:119
msgid "Label description"
msgstr ""
-#: label/models.py:118
+#: label/models.py:126
msgid "Label"
msgstr ""
-#: label/models.py:119
+#: label/models.py:127
msgid "Label template file"
msgstr ""
-#: label/models.py:125 report/models.py:273
+#: label/models.py:133 report/models.py:273
msgid "Enabled"
msgstr ""
-#: label/models.py:126
+#: label/models.py:134
msgid "Label template is enabled"
msgstr ""
-#: label/models.py:131
+#: label/models.py:139
msgid "Width [mm]"
msgstr ""
-#: label/models.py:132
+#: label/models.py:140
msgid "Label width, specified in mm"
msgstr ""
-#: label/models.py:138
+#: label/models.py:146
msgid "Height [mm]"
msgstr ""
-#: label/models.py:139
+#: label/models.py:147
msgid "Label height, specified in mm"
msgstr ""
-#: label/models.py:145 report/models.py:266
+#: label/models.py:153 report/models.py:266
msgid "Filename Pattern"
msgstr ""
-#: label/models.py:146
+#: label/models.py:154
msgid "Pattern for generating label filenames"
msgstr ""
-#: label/models.py:242
+#: label/models.py:250
msgid "Query filters (comma-separated list of key=value pairs),"
msgstr ""
-#: label/models.py:243 label/models.py:284 label/models.py:312
-#: report/models.py:294 report/models.py:452 report/models.py:490
-#: report/models.py:528
+#: label/models.py:251 label/models.py:292 label/models.py:320
+#: label/models.py:356 report/models.py:294 report/models.py:454
+#: report/models.py:492 report/models.py:530
msgid "Filters"
msgstr ""
-#: label/models.py:283
+#: label/models.py:291
msgid "Query filters (comma-separated list of key=value pairs"
msgstr ""
-#: label/models.py:311
+#: label/models.py:319
msgid "Part query filters (comma-separated value of key=value pairs)"
msgstr ""
+#: label/models.py:355
+msgid "Query filters (comma-separated list of key=value pairs)"
+msgstr ""
+
#: label/templates/label/part/part_label.html:31
#: label/templates/label/stockitem/qr.html:21
#: label/templates/label/stocklocation/qr.html:21
@@ -4352,8 +4404,8 @@ msgstr ""
#: report/templates/report/inventree_po_report_base.html:31
#: report/templates/report/inventree_so_report_base.html:31
#: templates/js/translated/order.js:327
-#: templates/js/translated/purchase_order.js:2093
-#: templates/js/translated/sales_order.js:1827
+#: templates/js/translated/purchase_order.js:2103
+#: templates/js/translated/sales_order.js:1839
msgid "Total Price"
msgstr ""
@@ -4361,30 +4413,30 @@ msgstr ""
msgid "No matching purchase order found"
msgstr ""
-#: order/api.py:1452 order/models.py:1178 order/models.py:1262
+#: order/api.py:1452 order/models.py:1191 order/models.py:1275
#: order/templates/order/order_base.html:9
#: order/templates/order/order_base.html:18
#: report/templates/report/inventree_po_report_base.html:14
#: stock/templates/stock/item_base.html:177
#: templates/email/overdue_purchase_order.html:15
-#: templates/js/translated/part.js:1718 templates/js/translated/pricing.js:790
-#: templates/js/translated/purchase_order.js:154
-#: templates/js/translated/purchase_order.js:748
-#: templates/js/translated/purchase_order.js:1637
-#: templates/js/translated/stock.js:1996 templates/js/translated/stock.js:2644
+#: templates/js/translated/part.js:1717 templates/js/translated/pricing.js:790
+#: templates/js/translated/purchase_order.js:165
+#: templates/js/translated/purchase_order.js:759
+#: templates/js/translated/purchase_order.js:1652
+#: templates/js/translated/stock.js:2153 templates/js/translated/stock.js:2775
msgid "Purchase Order"
msgstr ""
-#: order/api.py:1456 order/models.py:1909 order/models.py:1955
+#: order/api.py:1456 order/models.py:1922 order/models.py:1968
#: order/templates/order/return_order_base.html:9
#: order/templates/order/return_order_base.html:28
#: report/templates/report/inventree_return_order_report_base.html:13
-#: templates/js/translated/return_order.js:269
-#: templates/js/translated/stock.js:2678
+#: templates/js/translated/return_order.js:281
+#: templates/js/translated/stock.js:2809
msgid "Return Order"
msgstr ""
-#: order/api.py:1458 templates/js/translated/sales_order.js:1030
+#: order/api.py:1458 templates/js/translated/sales_order.js:1042
msgid "Unknown"
msgstr ""
@@ -4392,11 +4444,11 @@ msgstr ""
msgid "Total price for this order"
msgstr ""
-#: order/models.py:79 order/serializers.py:49
+#: order/models.py:79 order/serializers.py:50
msgid "Order Currency"
msgstr ""
-#: order/models.py:81 order/serializers.py:50
+#: order/models.py:81 order/serializers.py:51
msgid "Currency for this order (leave blank to use company default)"
msgstr ""
@@ -4408,492 +4460,496 @@ msgstr ""
msgid "Order description (optional)"
msgstr ""
-#: order/models.py:234
+#: order/models.py:237
msgid "Select project code for this order"
msgstr ""
-#: order/models.py:236 order/models.py:1094 order/models.py:1454
+#: order/models.py:240 order/models.py:1107 order/models.py:1467
msgid "Link to external page"
msgstr ""
-#: order/models.py:241
+#: order/models.py:245
msgid "Expected date for order delivery. Order will be overdue after this date."
msgstr ""
-#: order/models.py:250
+#: order/models.py:254
msgid "Created By"
msgstr ""
-#: order/models.py:257
+#: order/models.py:261
msgid "User or group responsible for this order"
msgstr ""
-#: order/models.py:267
+#: order/models.py:271
msgid "Point of contact for this order"
msgstr ""
-#: order/models.py:360 order/models.py:766
+#: order/models.py:280
+msgid "Company address for this order"
+msgstr ""
+
+#: order/models.py:373 order/models.py:779
msgid "Order reference"
msgstr ""
-#: order/models.py:368 order/models.py:791
+#: order/models.py:381 order/models.py:804
msgid "Purchase order status"
msgstr ""
-#: order/models.py:383
+#: order/models.py:396
msgid "Company from which the items are being ordered"
msgstr ""
-#: order/models.py:391 order/templates/order/order_base.html:152
-#: templates/js/translated/purchase_order.js:1662
+#: order/models.py:404 order/templates/order/order_base.html:148
+#: templates/js/translated/purchase_order.js:1677
msgid "Supplier Reference"
msgstr ""
-#: order/models.py:391
+#: order/models.py:404
msgid "Supplier order reference code"
msgstr ""
-#: order/models.py:398
+#: order/models.py:411
msgid "received by"
msgstr ""
-#: order/models.py:403 order/models.py:1761
+#: order/models.py:416 order/models.py:1774
msgid "Issue Date"
msgstr ""
-#: order/models.py:404 order/models.py:1762
+#: order/models.py:417 order/models.py:1775
msgid "Date order was issued"
msgstr ""
-#: order/models.py:410 order/models.py:1768
+#: order/models.py:423 order/models.py:1781
msgid "Date order was completed"
msgstr ""
-#: order/models.py:445
+#: order/models.py:458
msgid "Part supplier must match PO supplier"
msgstr ""
-#: order/models.py:606
+#: order/models.py:619
msgid "Quantity must be a positive number"
msgstr ""
-#: order/models.py:780
+#: order/models.py:793
msgid "Company to which the items are being sold"
msgstr ""
-#: order/models.py:799 order/models.py:1755
+#: order/models.py:812 order/models.py:1768
msgid "Customer Reference "
msgstr ""
-#: order/models.py:799 order/models.py:1756
+#: order/models.py:812 order/models.py:1769
msgid "Customer order reference code"
msgstr ""
-#: order/models.py:801 order/models.py:1408
-#: templates/js/translated/sales_order.js:831
-#: templates/js/translated/sales_order.js:1012
+#: order/models.py:814 order/models.py:1421
+#: templates/js/translated/sales_order.js:843
+#: templates/js/translated/sales_order.js:1024
msgid "Shipment Date"
msgstr ""
-#: order/models.py:808
+#: order/models.py:821
msgid "shipped by"
msgstr ""
-#: order/models.py:857
+#: order/models.py:870
msgid "Order cannot be completed as no parts have been assigned"
msgstr ""
-#: order/models.py:861
+#: order/models.py:874
msgid "Only an open order can be marked as complete"
msgstr ""
-#: order/models.py:864 templates/js/translated/sales_order.js:491
+#: order/models.py:877 templates/js/translated/sales_order.js:503
msgid "Order cannot be completed as there are incomplete shipments"
msgstr ""
-#: order/models.py:867
+#: order/models.py:880
msgid "Order cannot be completed as there are incomplete line items"
msgstr ""
-#: order/models.py:1074
+#: order/models.py:1087
msgid "Item quantity"
msgstr ""
-#: order/models.py:1087
+#: order/models.py:1100
msgid "Line item reference"
msgstr ""
-#: order/models.py:1089
+#: order/models.py:1102
msgid "Line item notes"
msgstr ""
-#: order/models.py:1100
+#: order/models.py:1113
msgid "Target date for this line item (leave blank to use the target date from the order)"
msgstr ""
-#: order/models.py:1118
+#: order/models.py:1131
msgid "Line item description (optional)"
msgstr ""
-#: order/models.py:1123
+#: order/models.py:1136
msgid "Context"
msgstr ""
-#: order/models.py:1124
+#: order/models.py:1137
msgid "Additional context for this line"
msgstr ""
-#: order/models.py:1133
+#: order/models.py:1146
msgid "Unit price"
msgstr ""
-#: order/models.py:1163
+#: order/models.py:1176
msgid "Supplier part must match supplier"
msgstr ""
-#: order/models.py:1171
+#: order/models.py:1184
msgid "deleted"
msgstr ""
-#: order/models.py:1177 order/models.py:1262 order/models.py:1303
-#: order/models.py:1402 order/models.py:1551 order/models.py:1908
-#: order/models.py:1955 templates/js/translated/sales_order.js:1474
+#: order/models.py:1190 order/models.py:1275 order/models.py:1316
+#: order/models.py:1415 order/models.py:1564 order/models.py:1921
+#: order/models.py:1968 templates/js/translated/sales_order.js:1486
msgid "Order"
msgstr ""
-#: order/models.py:1196
+#: order/models.py:1209
msgid "Supplier part"
msgstr ""
-#: order/models.py:1203 order/templates/order/order_base.html:200
-#: templates/js/translated/part.js:1841 templates/js/translated/part.js:1872
-#: templates/js/translated/purchase_order.js:1276
-#: templates/js/translated/purchase_order.js:2137
-#: templates/js/translated/return_order.js:748
-#: templates/js/translated/table_filters.js:90
-#: templates/js/translated/table_filters.js:515
+#: order/models.py:1216 order/templates/order/order_base.html:196
+#: templates/js/translated/part.js:1840 templates/js/translated/part.js:1871
+#: templates/js/translated/purchase_order.js:1291
+#: templates/js/translated/purchase_order.js:2147
+#: templates/js/translated/return_order.js:760
+#: templates/js/translated/table_filters.js:96
+#: templates/js/translated/table_filters.js:537
msgid "Received"
msgstr ""
-#: order/models.py:1204
+#: order/models.py:1217
msgid "Number of items received"
msgstr ""
-#: order/models.py:1211 stock/models.py:823 stock/serializers.py:252
+#: order/models.py:1224 stock/models.py:823 stock/serializers.py:314
#: stock/templates/stock/item_base.html:184
-#: templates/js/translated/stock.js:2047
+#: templates/js/translated/stock.js:2204
msgid "Purchase Price"
msgstr ""
-#: order/models.py:1212
+#: order/models.py:1225
msgid "Unit purchase price"
msgstr ""
-#: order/models.py:1225
+#: order/models.py:1238
msgid "Where does the Purchaser want this item to be stored?"
msgstr ""
-#: order/models.py:1291
+#: order/models.py:1304
msgid "Virtual part cannot be assigned to a sales order"
msgstr ""
-#: order/models.py:1296
+#: order/models.py:1309
msgid "Only salable parts can be assigned to a sales order"
msgstr ""
-#: order/models.py:1322 part/templates/part/part_pricing.html:107
+#: order/models.py:1335 part/templates/part/part_pricing.html:107
#: part/templates/part/prices.html:128 templates/js/translated/pricing.js:943
msgid "Sale Price"
msgstr ""
-#: order/models.py:1323
+#: order/models.py:1336
msgid "Unit sale price"
msgstr ""
-#: order/models.py:1333
+#: order/models.py:1346
msgid "Shipped quantity"
msgstr ""
-#: order/models.py:1409
+#: order/models.py:1422
msgid "Date of shipment"
msgstr ""
-#: order/models.py:1414 templates/js/translated/sales_order.js:1024
+#: order/models.py:1427 templates/js/translated/sales_order.js:1036
msgid "Delivery Date"
msgstr ""
-#: order/models.py:1415
+#: order/models.py:1428
msgid "Date of delivery of shipment"
msgstr ""
-#: order/models.py:1422
+#: order/models.py:1435
msgid "Checked By"
msgstr ""
-#: order/models.py:1423
+#: order/models.py:1436
msgid "User who checked this shipment"
msgstr ""
-#: order/models.py:1430 order/models.py:1627 order/serializers.py:1248
-#: order/serializers.py:1376 templates/js/translated/model_renderers.js:415
+#: order/models.py:1443 order/models.py:1640 order/serializers.py:1254
+#: order/serializers.py:1382 templates/js/translated/model_renderers.js:429
msgid "Shipment"
msgstr ""
-#: order/models.py:1431
+#: order/models.py:1444
msgid "Shipment number"
msgstr ""
-#: order/models.py:1439
+#: order/models.py:1452
msgid "Tracking Number"
msgstr ""
-#: order/models.py:1440
+#: order/models.py:1453
msgid "Shipment tracking information"
msgstr ""
-#: order/models.py:1447
+#: order/models.py:1460
msgid "Invoice Number"
msgstr ""
-#: order/models.py:1448
+#: order/models.py:1461
msgid "Reference number for associated invoice"
msgstr ""
-#: order/models.py:1470
+#: order/models.py:1483
msgid "Shipment has already been sent"
msgstr ""
-#: order/models.py:1473
+#: order/models.py:1486
msgid "Shipment has no allocated stock items"
msgstr ""
-#: order/models.py:1586 order/models.py:1588
+#: order/models.py:1599 order/models.py:1601
msgid "Stock item has not been assigned"
msgstr ""
-#: order/models.py:1592
+#: order/models.py:1605
msgid "Cannot allocate stock item to a line with a different part"
msgstr ""
-#: order/models.py:1594
+#: order/models.py:1607
msgid "Cannot allocate stock to a line without a part"
msgstr ""
-#: order/models.py:1597
+#: order/models.py:1610
msgid "Allocation quantity cannot exceed stock quantity"
msgstr ""
-#: order/models.py:1607 order/serializers.py:1110
+#: order/models.py:1620 order/serializers.py:1116
msgid "Quantity must be 1 for serialized stock item"
msgstr ""
-#: order/models.py:1610
+#: order/models.py:1623
msgid "Sales order does not match shipment"
msgstr ""
-#: order/models.py:1611
+#: order/models.py:1624
msgid "Shipment does not match sales order"
msgstr ""
-#: order/models.py:1619
+#: order/models.py:1632
msgid "Line"
msgstr ""
-#: order/models.py:1628
+#: order/models.py:1641
msgid "Sales order shipment reference"
msgstr ""
-#: order/models.py:1641 order/models.py:1916
-#: templates/js/translated/return_order.js:706
+#: order/models.py:1654 order/models.py:1929
+#: templates/js/translated/return_order.js:718
msgid "Item"
msgstr ""
-#: order/models.py:1642
+#: order/models.py:1655
msgid "Select stock item to allocate"
msgstr ""
-#: order/models.py:1645
+#: order/models.py:1658
msgid "Enter stock allocation quantity"
msgstr ""
-#: order/models.py:1725
+#: order/models.py:1738
msgid "Return Order reference"
msgstr ""
-#: order/models.py:1739
+#: order/models.py:1752
msgid "Company from which items are being returned"
msgstr ""
-#: order/models.py:1750
+#: order/models.py:1763
msgid "Return order status"
msgstr ""
-#: order/models.py:1901
+#: order/models.py:1914
msgid "Only serialized items can be assigned to a Return Order"
msgstr ""
-#: order/models.py:1917
+#: order/models.py:1930
msgid "Select item to return from customer"
msgstr ""
-#: order/models.py:1922
+#: order/models.py:1935
msgid "Received Date"
msgstr ""
-#: order/models.py:1923
+#: order/models.py:1936
msgid "The date this this return item was received"
msgstr ""
-#: order/models.py:1934 templates/js/translated/return_order.js:717
-#: templates/js/translated/table_filters.js:93
+#: order/models.py:1947 templates/js/translated/return_order.js:729
+#: templates/js/translated/table_filters.js:99
msgid "Outcome"
msgstr ""
-#: order/models.py:1934
+#: order/models.py:1947
msgid "Outcome for this line item"
msgstr ""
-#: order/models.py:1940
+#: order/models.py:1953
msgid "Cost associated with return or repair for this line item"
msgstr ""
-#: order/serializers.py:247
+#: order/serializers.py:253
msgid "Order cannot be cancelled"
msgstr ""
-#: order/serializers.py:262 order/serializers.py:1128
+#: order/serializers.py:268 order/serializers.py:1134
msgid "Allow order to be closed with incomplete line items"
msgstr ""
-#: order/serializers.py:273 order/serializers.py:1139
+#: order/serializers.py:279 order/serializers.py:1145
msgid "Order has incomplete line items"
msgstr ""
-#: order/serializers.py:386
+#: order/serializers.py:392
msgid "Order is not open"
msgstr ""
-#: order/serializers.py:404
+#: order/serializers.py:410
msgid "Purchase price currency"
msgstr ""
-#: order/serializers.py:422
+#: order/serializers.py:428
msgid "Supplier part must be specified"
msgstr ""
-#: order/serializers.py:427
+#: order/serializers.py:433
msgid "Purchase order must be specified"
msgstr ""
-#: order/serializers.py:433
+#: order/serializers.py:439
msgid "Supplier must match purchase order"
msgstr ""
-#: order/serializers.py:434
+#: order/serializers.py:440
msgid "Purchase order must match supplier"
msgstr ""
-#: order/serializers.py:472 order/serializers.py:1216
+#: order/serializers.py:478 order/serializers.py:1222
msgid "Line Item"
msgstr ""
-#: order/serializers.py:478
+#: order/serializers.py:484
msgid "Line item does not match purchase order"
msgstr ""
-#: order/serializers.py:488 order/serializers.py:607 order/serializers.py:1589
+#: order/serializers.py:494 order/serializers.py:613 order/serializers.py:1595
msgid "Select destination location for received items"
msgstr ""
-#: order/serializers.py:507 templates/js/translated/purchase_order.js:1100
+#: order/serializers.py:513 templates/js/translated/purchase_order.js:1115
msgid "Enter batch code for incoming stock items"
msgstr ""
-#: order/serializers.py:515 templates/js/translated/purchase_order.js:1124
+#: order/serializers.py:521 templates/js/translated/purchase_order.js:1139
msgid "Enter serial numbers for incoming stock items"
msgstr ""
-#: order/serializers.py:528 templates/js/translated/barcode.js:52
+#: order/serializers.py:534 templates/js/translated/barcode.js:52
msgid "Barcode"
msgstr ""
-#: order/serializers.py:529
+#: order/serializers.py:535
msgid "Scanned barcode"
msgstr ""
-#: order/serializers.py:545
+#: order/serializers.py:551
msgid "Barcode is already in use"
msgstr ""
-#: order/serializers.py:569
+#: order/serializers.py:575
msgid "An integer quantity must be provided for trackable parts"
msgstr ""
-#: order/serializers.py:623 order/serializers.py:1604
+#: order/serializers.py:629 order/serializers.py:1610
msgid "Line items must be provided"
msgstr ""
-#: order/serializers.py:640
+#: order/serializers.py:646
msgid "Destination location must be specified"
msgstr ""
-#: order/serializers.py:651
+#: order/serializers.py:657
msgid "Supplied barcode values must be unique"
msgstr ""
-#: order/serializers.py:950
+#: order/serializers.py:956
msgid "Sale price currency"
msgstr ""
-#: order/serializers.py:1007
+#: order/serializers.py:1013
msgid "No shipment details provided"
msgstr ""
-#: order/serializers.py:1071 order/serializers.py:1225
+#: order/serializers.py:1077 order/serializers.py:1231
msgid "Line item is not associated with this order"
msgstr ""
-#: order/serializers.py:1093
+#: order/serializers.py:1099
msgid "Quantity must be positive"
msgstr ""
-#: order/serializers.py:1238
+#: order/serializers.py:1244
msgid "Enter serial numbers to allocate"
msgstr ""
-#: order/serializers.py:1260 order/serializers.py:1384
+#: order/serializers.py:1266 order/serializers.py:1390
msgid "Shipment has already been shipped"
msgstr ""
-#: order/serializers.py:1263 order/serializers.py:1387
+#: order/serializers.py:1269 order/serializers.py:1393
msgid "Shipment is not associated with this order"
msgstr ""
-#: order/serializers.py:1317
+#: order/serializers.py:1323
msgid "No match found for the following serial numbers"
msgstr ""
-#: order/serializers.py:1327
+#: order/serializers.py:1333
msgid "The following serial numbers are already allocated"
msgstr ""
-#: order/serializers.py:1555
+#: order/serializers.py:1561
msgid "Return order line item"
msgstr ""
-#: order/serializers.py:1562
+#: order/serializers.py:1568
msgid "Line item does not match return order"
msgstr ""
-#: order/serializers.py:1565
+#: order/serializers.py:1571
msgid "Line item has already been received"
msgstr ""
-#: order/serializers.py:1597
+#: order/serializers.py:1603
msgid "Items can only be received against orders which are in progress"
msgstr ""
-#: order/serializers.py:1678
+#: order/serializers.py:1684
msgid "Line price currency"
msgstr ""
@@ -4957,82 +5013,74 @@ msgid "Issue Order"
msgstr ""
#: order/templates/order/order_base.html:83
-msgid "Receive items"
-msgstr ""
-
-#: order/templates/order/order_base.html:85
-msgid "Receive Items"
-msgstr ""
-
-#: order/templates/order/order_base.html:87
#: order/templates/order/return_order_base.html:87
msgid "Mark order as complete"
msgstr ""
-#: order/templates/order/order_base.html:88
+#: order/templates/order/order_base.html:84
#: order/templates/order/return_order_base.html:88
#: order/templates/order/sales_order_base.html:94
msgid "Complete Order"
msgstr ""
-#: order/templates/order/order_base.html:95
+#: order/templates/order/order_base.html:91
msgid "Supplier part thumbnail"
msgstr ""
-#: order/templates/order/order_base.html:110
+#: order/templates/order/order_base.html:106
#: order/templates/order/return_order_base.html:102
#: order/templates/order/sales_order_base.html:107
msgid "Order Reference"
msgstr ""
-#: order/templates/order/order_base.html:115
+#: order/templates/order/order_base.html:111
#: order/templates/order/return_order_base.html:107
#: order/templates/order/sales_order_base.html:112
msgid "Order Description"
msgstr ""
-#: order/templates/order/order_base.html:122
+#: order/templates/order/order_base.html:118
#: order/templates/order/return_order_base.html:114
#: order/templates/order/sales_order_base.html:119
msgid "Order Status"
msgstr ""
-#: order/templates/order/order_base.html:145
+#: order/templates/order/order_base.html:141
msgid "No suppplier information available"
msgstr ""
-#: order/templates/order/order_base.html:158
+#: order/templates/order/order_base.html:154
#: order/templates/order/sales_order_base.html:158
msgid "Completed Line Items"
msgstr ""
-#: order/templates/order/order_base.html:164
+#: order/templates/order/order_base.html:160
#: order/templates/order/sales_order_base.html:164
#: order/templates/order/sales_order_base.html:174
msgid "Incomplete"
msgstr ""
-#: order/templates/order/order_base.html:183
+#: order/templates/order/order_base.html:179
#: order/templates/order/return_order_base.html:158
#: report/templates/report/inventree_build_order_base.html:121
msgid "Issued"
msgstr ""
-#: order/templates/order/order_base.html:221
+#: order/templates/order/order_base.html:224
msgid "Total cost"
msgstr ""
-#: order/templates/order/order_base.html:225
-#: order/templates/order/return_order_base.html:193
-#: order/templates/order/sales_order_base.html:233
+#: order/templates/order/order_base.html:228
+#: order/templates/order/return_order_base.html:200
+#: order/templates/order/sales_order_base.html:240
msgid "Total cost could not be calculated"
msgstr ""
-#: order/templates/order/order_base.html:331
+#: order/templates/order/order_base.html:318
msgid "Purchase Order QR Code"
msgstr ""
-#: order/templates/order/order_base.html:343
+#: order/templates/order/order_base.html:330
msgid "Link Barcode to Purchase Order"
msgstr ""
@@ -5085,13 +5133,13 @@ msgstr ""
#: part/templates/part/import_wizard/ajax_match_references.html:42
#: part/templates/part/import_wizard/match_fields.html:71
#: part/templates/part/import_wizard/match_references.html:49
-#: templates/js/translated/bom.js:132 templates/js/translated/build.js:512
-#: templates/js/translated/build.js:2348
-#: templates/js/translated/purchase_order.js:692
-#: templates/js/translated/purchase_order.js:1206
-#: templates/js/translated/return_order.js:494
-#: templates/js/translated/sales_order.js:1097
-#: templates/js/translated/stock.js:681 templates/js/translated/stock.js:850
+#: templates/js/translated/bom.js:133 templates/js/translated/build.js:518
+#: templates/js/translated/build.js:1555
+#: templates/js/translated/purchase_order.js:703
+#: templates/js/translated/purchase_order.js:1221
+#: templates/js/translated/return_order.js:506
+#: templates/js/translated/sales_order.js:1109
+#: templates/js/translated/stock.js:680 templates/js/translated/stock.js:849
#: templates/patterns/wizard/match_fields.html:70
msgid "Remove row"
msgstr ""
@@ -5152,9 +5200,9 @@ msgstr ""
#: order/templates/order/purchase_order_detail.html:27
#: order/templates/order/return_order_detail.html:24
#: order/templates/order/sales_order_detail.html:24
-#: templates/js/translated/purchase_order.js:419
-#: templates/js/translated/return_order.js:447
-#: templates/js/translated/sales_order.js:222
+#: templates/js/translated/purchase_order.js:430
+#: templates/js/translated/return_order.js:459
+#: templates/js/translated/sales_order.js:234
msgid "Add Line Item"
msgstr ""
@@ -5165,30 +5213,25 @@ msgstr ""
msgid "Receive Line Items"
msgstr ""
-#: order/templates/order/purchase_order_detail.html:49
#: order/templates/order/purchase_order_detail.html:50
-msgid "Delete Line Items"
-msgstr ""
-
-#: order/templates/order/purchase_order_detail.html:66
-#: order/templates/order/return_order_detail.html:47
-#: order/templates/order/sales_order_detail.html:43
+#: order/templates/order/return_order_detail.html:45
+#: order/templates/order/sales_order_detail.html:41
msgid "Extra Lines"
msgstr ""
-#: order/templates/order/purchase_order_detail.html:72
-#: order/templates/order/return_order_detail.html:53
-#: order/templates/order/sales_order_detail.html:49
+#: order/templates/order/purchase_order_detail.html:56
+#: order/templates/order/return_order_detail.html:51
+#: order/templates/order/sales_order_detail.html:47
msgid "Add Extra Line"
msgstr ""
-#: order/templates/order/purchase_order_detail.html:92
+#: order/templates/order/purchase_order_detail.html:74
msgid "Received Items"
msgstr ""
-#: order/templates/order/purchase_order_detail.html:117
-#: order/templates/order/return_order_detail.html:89
-#: order/templates/order/sales_order_detail.html:149
+#: order/templates/order/purchase_order_detail.html:99
+#: order/templates/order/return_order_detail.html:85
+#: order/templates/order/sales_order_detail.html:139
msgid "Order Notes"
msgstr ""
@@ -5208,29 +5251,29 @@ msgstr ""
#: order/templates/order/return_order_base.html:139
#: order/templates/order/sales_order_base.html:152
-#: templates/js/translated/return_order.js:297
-#: templates/js/translated/sales_order.js:785
+#: templates/js/translated/return_order.js:309
+#: templates/js/translated/sales_order.js:797
msgid "Customer Reference"
msgstr ""
-#: order/templates/order/return_order_base.html:189
-#: order/templates/order/sales_order_base.html:229
+#: order/templates/order/return_order_base.html:196
+#: order/templates/order/sales_order_base.html:236
#: part/templates/part/part_pricing.html:32
#: part/templates/part/part_pricing.html:58
#: part/templates/part/part_pricing.html:99
#: part/templates/part/part_pricing.html:114
-#: templates/js/translated/part.js:1046
-#: templates/js/translated/purchase_order.js:1712
-#: templates/js/translated/return_order.js:369
-#: templates/js/translated/sales_order.js:843
+#: templates/js/translated/part.js:1045
+#: templates/js/translated/purchase_order.js:1727
+#: templates/js/translated/return_order.js:381
+#: templates/js/translated/sales_order.js:855
msgid "Total Cost"
msgstr ""
-#: order/templates/order/return_order_base.html:257
+#: order/templates/order/return_order_base.html:264
msgid "Return Order QR Code"
msgstr ""
-#: order/templates/order/return_order_base.html:269
+#: order/templates/order/return_order_base.html:276
msgid "Link Barcode to Return Order"
msgstr ""
@@ -5248,7 +5291,7 @@ msgid "Ship Items"
msgstr ""
#: order/templates/order/sales_order_base.html:93
-#: templates/js/translated/sales_order.js:469
+#: templates/js/translated/sales_order.js:481
msgid "Complete Sales Order"
msgstr ""
@@ -5257,16 +5300,16 @@ msgid "This Sales Order has not been fully allocated"
msgstr ""
#: order/templates/order/sales_order_base.html:170
-#: order/templates/order/sales_order_detail.html:105
+#: order/templates/order/sales_order_detail.html:99
#: order/templates/order/so_sidebar.html:11
msgid "Completed Shipments"
msgstr ""
-#: order/templates/order/sales_order_base.html:306
+#: order/templates/order/sales_order_base.html:313
msgid "Sales Order QR Code"
msgstr ""
-#: order/templates/order/sales_order_base.html:318
+#: order/templates/order/sales_order_base.html:325
msgid "Link Barcode to Sales Order"
msgstr ""
@@ -5274,18 +5317,17 @@ msgstr ""
msgid "Sales Order Items"
msgstr ""
-#: order/templates/order/sales_order_detail.html:71
-#: order/templates/order/so_sidebar.html:8 templates/InvenTree/index.html:332
+#: order/templates/order/sales_order_detail.html:67
+#: order/templates/order/so_sidebar.html:8 templates/InvenTree/index.html:284
msgid "Pending Shipments"
msgstr ""
-#: order/templates/order/sales_order_detail.html:75
-#: templates/attachment_table.html:6 templates/js/translated/bom.js:1236
-#: templates/js/translated/build.js:2249
+#: order/templates/order/sales_order_detail.html:71
+#: templates/js/translated/bom.js:1256 templates/js/translated/filters.js:297
msgid "Actions"
msgstr ""
-#: order/templates/order/sales_order_detail.html:84
+#: order/templates/order/sales_order_detail.html:80
msgid "New Shipment"
msgstr ""
@@ -5311,12 +5353,12 @@ msgstr ""
msgid "Updated {part} unit-price to {price} and quantity to {qty}"
msgstr ""
-#: part/admin.py:33 part/admin.py:273 part/models.py:3667 part/tasks.py:288
+#: part/admin.py:33 part/admin.py:273 part/models.py:3716 part/tasks.py:288
#: stock/admin.py:101
msgid "Part ID"
msgstr ""
-#: part/admin.py:34 part/admin.py:275 part/models.py:3671 part/tasks.py:289
+#: part/admin.py:34 part/admin.py:275 part/models.py:3720 part/tasks.py:289
#: stock/admin.py:102
msgid "Part Name"
msgstr ""
@@ -5325,19 +5367,19 @@ msgstr ""
msgid "Part Description"
msgstr ""
-#: part/admin.py:36 part/models.py:889 part/templates/part/part_base.html:271
-#: templates/js/translated/part.js:1200 templates/js/translated/part.js:2233
-#: templates/js/translated/stock.js:1795
+#: part/admin.py:36 part/models.py:890 part/templates/part/part_base.html:271
+#: templates/js/translated/part.js:1199 templates/js/translated/part.js:2309
+#: templates/js/translated/stock.js:1952
msgid "IPN"
msgstr ""
-#: part/admin.py:37 part/models.py:896 part/templates/part/part_base.html:279
-#: report/models.py:179 templates/js/translated/part.js:1205
-#: templates/js/translated/part.js:2239
+#: part/admin.py:37 part/models.py:897 part/templates/part/part_base.html:279
+#: report/models.py:179 templates/js/translated/part.js:1204
+#: templates/js/translated/part.js:2315
msgid "Revision"
msgstr ""
-#: part/admin.py:38 part/admin.py:198 part/models.py:875
+#: part/admin.py:38 part/admin.py:198 part/models.py:876
#: part/templates/part/category.html:93 part/templates/part/part_base.html:300
msgid "Keywords"
msgstr ""
@@ -5358,24 +5400,24 @@ msgstr ""
msgid "Default Supplier ID"
msgstr ""
-#: part/admin.py:46 part/models.py:864 part/templates/part/part_base.html:179
+#: part/admin.py:46 part/models.py:865 part/templates/part/part_base.html:179
msgid "Variant Of"
msgstr ""
-#: part/admin.py:47 part/models.py:980 part/templates/part/part_base.html:205
+#: part/admin.py:47 part/models.py:981 part/templates/part/part_base.html:205
msgid "Minimum Stock"
msgstr ""
#: part/admin.py:61 part/templates/part/part_base.html:199
-#: templates/js/translated/company.js:1299
-#: templates/js/translated/table_filters.js:301
+#: templates/js/translated/company.js:1720
+#: templates/js/translated/table_filters.js:307
msgid "In Stock"
msgstr ""
#: part/admin.py:62 part/bom.py:178 part/templates/part/part_base.html:212
-#: templates/js/translated/bom.js:1167 templates/js/translated/build.js:2191
-#: templates/js/translated/part.js:687 templates/js/translated/part.js:2123
-#: templates/js/translated/table_filters.js:140
+#: templates/js/translated/bom.js:1187 templates/js/translated/build.js:2541
+#: templates/js/translated/part.js:686 templates/js/translated/part.js:2122
+#: templates/js/translated/table_filters.js:146
msgid "On Order"
msgstr ""
@@ -5383,23 +5425,16 @@ msgstr ""
msgid "Used In"
msgstr ""
-#: part/admin.py:64 templates/js/translated/build.js:2203
-#: templates/js/translated/build.js:2465 templates/js/translated/build.js:3052
-#: templates/js/translated/sales_order.js:1906
-#: templates/js/translated/table_filters.js:488
-msgid "Allocated"
-msgstr ""
-
#: part/admin.py:65 part/templates/part/part_base.html:243 stock/admin.py:124
-#: templates/js/translated/part.js:692 templates/js/translated/part.js:2127
+#: templates/js/translated/part.js:691 templates/js/translated/part.js:2126
msgid "Building"
msgstr ""
-#: part/admin.py:66 part/models.py:2930 templates/js/translated/part.js:943
+#: part/admin.py:66 part/models.py:2964 templates/js/translated/part.js:942
msgid "Minimum Cost"
msgstr ""
-#: part/admin.py:67 part/models.py:2936 templates/js/translated/part.js:953
+#: part/admin.py:67 part/models.py:2970 templates/js/translated/part.js:952
msgid "Maximum Cost"
msgstr ""
@@ -5416,13 +5451,13 @@ msgstr ""
msgid "Category Path"
msgstr ""
-#: part/admin.py:202 part/models.py:392 part/templates/part/cat_link.html:3
-#: part/templates/part/category.html:23 part/templates/part/category.html:140
-#: part/templates/part/category.html:160
+#: part/admin.py:202 part/models.py:393 part/serializers.py:307
+#: part/templates/part/cat_link.html:3 part/templates/part/category.html:23
+#: part/templates/part/category.html:140 part/templates/part/category.html:160
#: part/templates/part/category_sidebar.html:9
-#: templates/InvenTree/index.html:86 templates/InvenTree/search.html:84
+#: templates/InvenTree/index.html:36 templates/InvenTree/search.html:84
#: templates/InvenTree/settings/sidebar.html:45
-#: templates/js/translated/part.js:2754 templates/js/translated/search.js:172
+#: templates/js/translated/part.js:2739 templates/js/translated/search.js:130
#: templates/navbar.html:24 users/models.py:38
msgid "Parts"
msgstr ""
@@ -5439,7 +5474,7 @@ msgstr ""
msgid "Parent IPN"
msgstr ""
-#: part/admin.py:274 part/models.py:3675
+#: part/admin.py:274 part/models.py:3724
msgid "Part IPN"
msgstr ""
@@ -5453,35 +5488,35 @@ msgstr ""
msgid "Maximum Price"
msgstr ""
-#: part/api.py:498
+#: part/api.py:501
msgid "Incoming Purchase Order"
msgstr ""
-#: part/api.py:518
+#: part/api.py:521
msgid "Outgoing Sales Order"
msgstr ""
-#: part/api.py:536
+#: part/api.py:539
msgid "Stock produced by Build Order"
msgstr ""
-#: part/api.py:622
+#: part/api.py:625
msgid "Stock required for Build Order"
msgstr ""
-#: part/api.py:770
+#: part/api.py:773
msgid "Valid"
msgstr ""
-#: part/api.py:771
+#: part/api.py:774
msgid "Validate entire Bill of Materials"
msgstr ""
-#: part/api.py:777
+#: part/api.py:780
msgid "This option must be selected"
msgstr ""
-#: part/bom.py:175 part/models.py:127 part/models.py:923
+#: part/bom.py:175 part/models.py:128 part/models.py:924
#: part/templates/part/category.html:115 part/templates/part/part_base.html:369
msgid "Default Location"
msgstr ""
@@ -5491,7 +5526,7 @@ msgid "Total Stock"
msgstr ""
#: part/bom.py:177 part/templates/part/part_base.html:194
-#: templates/js/translated/sales_order.js:1873
+#: templates/js/translated/sales_order.js:1885
msgid "Available Stock"
msgstr ""
@@ -5499,916 +5534,913 @@ msgstr ""
msgid "Input quantity for price calculation"
msgstr ""
-#: part/models.py:75 part/models.py:3616 part/templates/part/category.html:16
+#: part/models.py:76 part/models.py:3665 part/templates/part/category.html:16
#: part/templates/part/part_app_base.html:10
msgid "Part Category"
msgstr ""
-#: part/models.py:76 part/templates/part/category.html:135
-#: templates/InvenTree/search.html:97 templates/js/translated/search.js:200
+#: part/models.py:77 part/templates/part/category.html:135
+#: templates/InvenTree/search.html:97 templates/js/translated/search.js:158
#: users/models.py:37
msgid "Part Categories"
msgstr ""
-#: part/models.py:128
+#: part/models.py:129
msgid "Default location for parts in this category"
msgstr ""
-#: part/models.py:133 stock/models.py:124 templates/js/translated/stock.js:2520
-#: templates/js/translated/table_filters.js:209
-#: templates/js/translated/table_filters.js:229
+#: part/models.py:134 stock/models.py:124 templates/js/translated/stock.js:2651
+#: templates/js/translated/table_filters.js:215
+#: templates/js/translated/table_filters.js:235
msgid "Structural"
msgstr ""
-#: part/models.py:135
+#: part/models.py:136
msgid "Parts may not be directly assigned to a structural category, but may be assigned to child categories."
msgstr ""
-#: part/models.py:139
+#: part/models.py:140
msgid "Default keywords"
msgstr ""
-#: part/models.py:139
+#: part/models.py:140
msgid "Default keywords for parts in this category"
msgstr ""
-#: part/models.py:144 stock/models.py:113
+#: part/models.py:145 stock/models.py:113
msgid "Icon"
msgstr ""
-#: part/models.py:145 stock/models.py:114
+#: part/models.py:146 stock/models.py:114
msgid "Icon (optional)"
msgstr ""
-#: part/models.py:164
+#: part/models.py:165
msgid "You cannot make this part category structural because some parts are already assigned to it!"
msgstr ""
-#: part/models.py:475
+#: part/models.py:476
msgid "Invalid choice for parent part"
msgstr ""
-#: part/models.py:517 part/models.py:529
+#: part/models.py:518 part/models.py:530
#, python-brace-format
msgid "Part '{p1}' is used in BOM for '{p2}' (recursive)"
msgstr ""
-#: part/models.py:601
+#: part/models.py:602
#, python-brace-format
msgid "IPN must match regex pattern {pat}"
msgstr "IPN harus sesuai dengan pola regex {pat}"
-#: part/models.py:672
+#: part/models.py:673
msgid "Stock item with this serial number already exists"
msgstr ""
-#: part/models.py:803
+#: part/models.py:804
msgid "Duplicate IPN not allowed in part settings"
msgstr ""
-#: part/models.py:808
+#: part/models.py:809
msgid "Part with this Name, IPN and Revision already exists."
msgstr ""
-#: part/models.py:822
+#: part/models.py:823
msgid "Parts cannot be assigned to structural part categories!"
msgstr ""
-#: part/models.py:846 part/models.py:3672
+#: part/models.py:847 part/models.py:3721
msgid "Part name"
msgstr ""
-#: part/models.py:852
+#: part/models.py:853
msgid "Is Template"
msgstr ""
-#: part/models.py:853
+#: part/models.py:854
msgid "Is this part a template part?"
msgstr ""
-#: part/models.py:863
+#: part/models.py:864
msgid "Is this part a variant of another part?"
msgstr ""
-#: part/models.py:870
+#: part/models.py:871
msgid "Part description (optional)"
msgstr ""
-#: part/models.py:876
+#: part/models.py:877
msgid "Part keywords to improve visibility in search results"
msgstr ""
-#: part/models.py:883 part/models.py:3198 part/models.py:3615
-#: part/serializers.py:848 part/templates/part/part_base.html:262
+#: part/models.py:884 part/models.py:3232 part/models.py:3664
+#: part/serializers.py:320 part/serializers.py:910
+#: part/templates/part/part_base.html:262
#: templates/InvenTree/settings/settings_staff_js.html:204
#: templates/js/translated/notification.js:59
-#: templates/js/translated/part.js:2269 templates/js/translated/part.js:2481
+#: templates/js/translated/part.js:2345
msgid "Category"
msgstr ""
-#: part/models.py:884
+#: part/models.py:885
msgid "Part category"
msgstr ""
-#: part/models.py:890
+#: part/models.py:891
msgid "Internal Part Number"
msgstr ""
-#: part/models.py:895
+#: part/models.py:896
msgid "Part revision or version number"
msgstr ""
-#: part/models.py:921
+#: part/models.py:922
msgid "Where is this item normally stored?"
msgstr ""
-#: part/models.py:966 part/templates/part/part_base.html:378
+#: part/models.py:967 part/templates/part/part_base.html:378
msgid "Default Supplier"
msgstr ""
-#: part/models.py:967
+#: part/models.py:968
msgid "Default supplier part"
msgstr ""
-#: part/models.py:974
+#: part/models.py:975
msgid "Default Expiry"
msgstr ""
-#: part/models.py:975
+#: part/models.py:976
msgid "Expiry time (in days) for stock items of this part"
msgstr ""
-#: part/models.py:981
+#: part/models.py:982
msgid "Minimum allowed stock level"
msgstr ""
-#: part/models.py:988
+#: part/models.py:989
msgid "Units of measure for this part"
msgstr ""
-#: part/models.py:997
+#: part/models.py:998
msgid "Can this part be built from other parts?"
msgstr ""
-#: part/models.py:1003
+#: part/models.py:1004
msgid "Can this part be used to build other parts?"
msgstr ""
-#: part/models.py:1009
+#: part/models.py:1010
msgid "Does this part have tracking for unique items?"
msgstr ""
-#: part/models.py:1014
+#: part/models.py:1015
msgid "Can this part be purchased from external suppliers?"
msgstr ""
-#: part/models.py:1019
+#: part/models.py:1020
msgid "Can this part be sold to customers?"
msgstr ""
-#: part/models.py:1024
+#: part/models.py:1025
msgid "Is this part active?"
msgstr ""
-#: part/models.py:1029
+#: part/models.py:1030
msgid "Is this a virtual part, such as a software product or license?"
msgstr ""
-#: part/models.py:1031
+#: part/models.py:1032
msgid "BOM checksum"
msgstr ""
-#: part/models.py:1031
+#: part/models.py:1032
msgid "Stored BOM checksum"
msgstr ""
-#: part/models.py:1034
+#: part/models.py:1035
msgid "BOM checked by"
msgstr ""
-#: part/models.py:1036
+#: part/models.py:1037
msgid "BOM checked date"
msgstr ""
-#: part/models.py:1040
+#: part/models.py:1041
msgid "Creation User"
msgstr ""
-#: part/models.py:1042
+#: part/models.py:1043
msgid "User responsible for this part"
msgstr ""
-#: part/models.py:1046 part/templates/part/part_base.html:341
+#: part/models.py:1047 part/templates/part/part_base.html:341
#: stock/templates/stock/item_base.html:447
-#: templates/js/translated/part.js:2331
+#: templates/js/translated/part.js:2407
msgid "Last Stocktake"
msgstr ""
-#: part/models.py:1921
+#: part/models.py:1923
msgid "Sell multiple"
msgstr ""
-#: part/models.py:2853
+#: part/models.py:2887
msgid "Currency used to cache pricing calculations"
msgstr ""
-#: part/models.py:2870
+#: part/models.py:2904
msgid "Minimum BOM Cost"
msgstr ""
-#: part/models.py:2871
+#: part/models.py:2905
msgid "Minimum cost of component parts"
msgstr ""
-#: part/models.py:2876
+#: part/models.py:2910
msgid "Maximum BOM Cost"
msgstr ""
-#: part/models.py:2877
+#: part/models.py:2911
msgid "Maximum cost of component parts"
msgstr ""
-#: part/models.py:2882
+#: part/models.py:2916
msgid "Minimum Purchase Cost"
msgstr ""
-#: part/models.py:2883
+#: part/models.py:2917
msgid "Minimum historical purchase cost"
msgstr ""
-#: part/models.py:2888
+#: part/models.py:2922
msgid "Maximum Purchase Cost"
msgstr ""
-#: part/models.py:2889
+#: part/models.py:2923
msgid "Maximum historical purchase cost"
msgstr ""
-#: part/models.py:2894
+#: part/models.py:2928
msgid "Minimum Internal Price"
msgstr ""
-#: part/models.py:2895
+#: part/models.py:2929
msgid "Minimum cost based on internal price breaks"
msgstr ""
-#: part/models.py:2900
+#: part/models.py:2934
msgid "Maximum Internal Price"
msgstr ""
-#: part/models.py:2901
+#: part/models.py:2935
msgid "Maximum cost based on internal price breaks"
msgstr ""
-#: part/models.py:2906
+#: part/models.py:2940
msgid "Minimum Supplier Price"
msgstr ""
-#: part/models.py:2907
+#: part/models.py:2941
msgid "Minimum price of part from external suppliers"
msgstr ""
-#: part/models.py:2912
+#: part/models.py:2946
msgid "Maximum Supplier Price"
msgstr ""
-#: part/models.py:2913
+#: part/models.py:2947
msgid "Maximum price of part from external suppliers"
msgstr ""
-#: part/models.py:2918
+#: part/models.py:2952
msgid "Minimum Variant Cost"
msgstr ""
-#: part/models.py:2919
+#: part/models.py:2953
msgid "Calculated minimum cost of variant parts"
msgstr ""
-#: part/models.py:2924
+#: part/models.py:2958
msgid "Maximum Variant Cost"
msgstr ""
-#: part/models.py:2925
+#: part/models.py:2959
msgid "Calculated maximum cost of variant parts"
msgstr ""
-#: part/models.py:2931
+#: part/models.py:2965
msgid "Calculated overall minimum cost"
msgstr ""
-#: part/models.py:2937
+#: part/models.py:2971
msgid "Calculated overall maximum cost"
msgstr ""
-#: part/models.py:2942
+#: part/models.py:2976
msgid "Minimum Sale Price"
msgstr ""
-#: part/models.py:2943
+#: part/models.py:2977
msgid "Minimum sale price based on price breaks"
msgstr ""
-#: part/models.py:2948
+#: part/models.py:2982
msgid "Maximum Sale Price"
msgstr ""
-#: part/models.py:2949
+#: part/models.py:2983
msgid "Maximum sale price based on price breaks"
msgstr ""
-#: part/models.py:2954
+#: part/models.py:2988
msgid "Minimum Sale Cost"
msgstr ""
-#: part/models.py:2955
+#: part/models.py:2989
msgid "Minimum historical sale price"
msgstr ""
-#: part/models.py:2960
+#: part/models.py:2994
msgid "Maximum Sale Cost"
msgstr ""
-#: part/models.py:2961
+#: part/models.py:2995
msgid "Maximum historical sale price"
msgstr ""
-#: part/models.py:2980
+#: part/models.py:3014
msgid "Part for stocktake"
msgstr ""
-#: part/models.py:2985
+#: part/models.py:3019
msgid "Item Count"
msgstr ""
-#: part/models.py:2986
+#: part/models.py:3020
msgid "Number of individual stock entries at time of stocktake"
msgstr ""
-#: part/models.py:2993
+#: part/models.py:3027
msgid "Total available stock at time of stocktake"
msgstr ""
-#: part/models.py:2997 part/models.py:3080
+#: part/models.py:3031 part/models.py:3114
#: part/templates/part/part_scheduling.html:13
#: report/templates/report/inventree_test_report_base.html:106
#: templates/InvenTree/settings/plugin_settings.html:37
#: templates/InvenTree/settings/settings_staff_js.html:360
-#: templates/js/translated/part.js:1059 templates/js/translated/pricing.js:812
+#: templates/js/translated/part.js:1058 templates/js/translated/pricing.js:812
#: templates/js/translated/pricing.js:936
-#: templates/js/translated/purchase_order.js:1691
-#: templates/js/translated/stock.js:2558
+#: templates/js/translated/purchase_order.js:1706
+#: templates/js/translated/stock.js:2689
msgid "Date"
msgstr ""
-#: part/models.py:2998
+#: part/models.py:3032
msgid "Date stocktake was performed"
msgstr ""
-#: part/models.py:3006
+#: part/models.py:3040
msgid "Additional notes"
msgstr ""
-#: part/models.py:3014
+#: part/models.py:3048
msgid "User who performed this stocktake"
msgstr ""
-#: part/models.py:3019
+#: part/models.py:3053
msgid "Minimum Stock Cost"
msgstr ""
-#: part/models.py:3020
+#: part/models.py:3054
msgid "Estimated minimum cost of stock on hand"
msgstr ""
-#: part/models.py:3025
+#: part/models.py:3059
msgid "Maximum Stock Cost"
msgstr ""
-#: part/models.py:3026
+#: part/models.py:3060
msgid "Estimated maximum cost of stock on hand"
msgstr ""
-#: part/models.py:3087 templates/InvenTree/settings/settings_staff_js.html:349
+#: part/models.py:3121 templates/InvenTree/settings/settings_staff_js.html:349
msgid "Report"
msgstr ""
-#: part/models.py:3088
+#: part/models.py:3122
msgid "Stocktake report file (generated internally)"
msgstr ""
-#: part/models.py:3093 templates/InvenTree/settings/settings_staff_js.html:356
+#: part/models.py:3127 templates/InvenTree/settings/settings_staff_js.html:356
msgid "Part Count"
msgstr ""
-#: part/models.py:3094
+#: part/models.py:3128
msgid "Number of parts covered by stocktake"
msgstr ""
-#: part/models.py:3102
+#: part/models.py:3136
msgid "User who requested this stocktake report"
msgstr ""
-#: part/models.py:3238
+#: part/models.py:3272
msgid "Test templates can only be created for trackable parts"
msgstr ""
-#: part/models.py:3255
+#: part/models.py:3289
msgid "Test with this name already exists for this part"
msgstr ""
-#: part/models.py:3275 templates/js/translated/part.js:2821
+#: part/models.py:3309 templates/js/translated/part.js:2806
msgid "Test Name"
msgstr ""
-#: part/models.py:3276
+#: part/models.py:3310
msgid "Enter a name for the test"
msgstr ""
-#: part/models.py:3281
+#: part/models.py:3315
msgid "Test Description"
msgstr ""
-#: part/models.py:3282
+#: part/models.py:3316
msgid "Enter description for this test"
msgstr ""
-#: part/models.py:3287 templates/js/translated/part.js:2830
-#: templates/js/translated/table_filters.js:423
+#: part/models.py:3321 templates/js/translated/part.js:2815
+#: templates/js/translated/table_filters.js:429
msgid "Required"
msgstr ""
-#: part/models.py:3288
+#: part/models.py:3322
msgid "Is this test required to pass?"
msgstr ""
-#: part/models.py:3293 templates/js/translated/part.js:2838
+#: part/models.py:3327 templates/js/translated/part.js:2823
msgid "Requires Value"
msgstr ""
-#: part/models.py:3294
+#: part/models.py:3328
msgid "Does this test require a value when adding a test result?"
msgstr ""
-#: part/models.py:3299 templates/js/translated/part.js:2845
+#: part/models.py:3333 templates/js/translated/part.js:2830
msgid "Requires Attachment"
msgstr ""
-#: part/models.py:3300
+#: part/models.py:3334
msgid "Does this test require a file attachment when adding a test result?"
msgstr ""
-#: part/models.py:3346
+#: part/models.py:3380
msgid "Checkbox parameters cannot have units"
msgstr ""
-#: part/models.py:3351
+#: part/models.py:3385
msgid "Checkbox parameters cannot have choices"
msgstr ""
-#: part/models.py:3369
+#: part/models.py:3403
msgid "Choices must be unique"
msgstr ""
-#: part/models.py:3385
+#: part/models.py:3419
msgid "Parameter template name must be unique"
msgstr ""
-#: part/models.py:3401
+#: part/models.py:3435
msgid "Parameter Name"
msgstr ""
-#: part/models.py:3407
+#: part/models.py:3441
msgid "Physical units for this parameter"
msgstr ""
-#: part/models.py:3417
+#: part/models.py:3451
msgid "Parameter description"
msgstr ""
-#: part/models.py:3423 templates/js/translated/part.js:1600
-#: templates/js/translated/table_filters.js:734
+#: part/models.py:3457 templates/js/translated/part.js:1599
+#: templates/js/translated/table_filters.js:756
msgid "Checkbox"
msgstr ""
-#: part/models.py:3424
+#: part/models.py:3458
msgid "Is this parameter a checkbox?"
msgstr ""
-#: part/models.py:3429 templates/js/translated/part.js:1609
+#: part/models.py:3463 templates/js/translated/part.js:1608
msgid "Choices"
msgstr ""
-#: part/models.py:3430
+#: part/models.py:3464
msgid "Valid choices for this parameter (comma-separated)"
msgstr ""
-#: part/models.py:3511
+#: part/models.py:3545
msgid "Invalid choice for parameter value"
msgstr ""
-#: part/models.py:3555
+#: part/models.py:3589
msgid "Parent Part"
msgstr ""
-#: part/models.py:3560 part/models.py:3621 part/models.py:3622
+#: part/models.py:3594 part/models.py:3670 part/models.py:3671
#: templates/InvenTree/settings/settings_staff_js.html:199
msgid "Parameter Template"
msgstr ""
-#: part/models.py:3565
+#: part/models.py:3599
msgid "Data"
msgstr ""
-#: part/models.py:3565
+#: part/models.py:3599
msgid "Parameter Value"
msgstr ""
-#: part/models.py:3626 templates/InvenTree/settings/settings_staff_js.html:208
+#: part/models.py:3675 templates/InvenTree/settings/settings_staff_js.html:208
msgid "Default Value"
msgstr ""
-#: part/models.py:3627
+#: part/models.py:3676
msgid "Default Parameter Value"
msgstr ""
-#: part/models.py:3664
+#: part/models.py:3713
msgid "Part ID or part name"
msgstr ""
-#: part/models.py:3668
+#: part/models.py:3717
msgid "Unique part ID value"
msgstr ""
-#: part/models.py:3676
+#: part/models.py:3725
msgid "Part IPN value"
msgstr ""
-#: part/models.py:3679
+#: part/models.py:3728
msgid "Level"
msgstr ""
-#: part/models.py:3680
+#: part/models.py:3729
msgid "BOM level"
msgstr ""
-#: part/models.py:3764
+#: part/models.py:3735 part/models.py:4113
+msgid "BOM Item"
+msgstr "Item tagihan material"
+
+#: part/models.py:3808
msgid "Select parent part"
msgstr ""
-#: part/models.py:3772
+#: part/models.py:3816
msgid "Sub part"
msgstr ""
-#: part/models.py:3773
+#: part/models.py:3817
msgid "Select part to be used in BOM"
msgstr ""
-#: part/models.py:3779
+#: part/models.py:3823
msgid "BOM quantity for this BOM item"
msgstr ""
-#: part/models.py:3783 part/templates/part/upload_bom.html:58
-#: templates/js/translated/bom.js:971 templates/js/translated/bom.js:998
-#: templates/js/translated/build.js:2113
-#: templates/js/translated/table_filters.js:156
-#: templates/js/translated/table_filters.js:185
-#: templates/js/translated/table_filters.js:500
-msgid "Optional"
-msgstr ""
-
-#: part/models.py:3784
+#: part/models.py:3828
msgid "This BOM item is optional"
msgstr ""
-#: part/models.py:3789 templates/js/translated/bom.js:967
-#: templates/js/translated/bom.js:1007 templates/js/translated/build.js:2104
-#: templates/js/translated/table_filters.js:160
-#: templates/js/translated/table_filters.js:496
-msgid "Consumable"
-msgstr ""
-
-#: part/models.py:3790
+#: part/models.py:3834
msgid "This BOM item is consumable (it is not tracked in build orders)"
msgstr ""
-#: part/models.py:3794 part/templates/part/upload_bom.html:55
+#: part/models.py:3838 part/templates/part/upload_bom.html:55
msgid "Overage"
msgstr ""
-#: part/models.py:3795
+#: part/models.py:3839
msgid "Estimated build wastage quantity (absolute or percentage)"
msgstr ""
-#: part/models.py:3798
+#: part/models.py:3842
msgid "BOM item reference"
msgstr ""
-#: part/models.py:3801
+#: part/models.py:3845
msgid "BOM item notes"
msgstr ""
-#: part/models.py:3805
+#: part/models.py:3849
msgid "Checksum"
msgstr ""
-#: part/models.py:3805
+#: part/models.py:3849
msgid "BOM line checksum"
msgstr ""
-#: part/models.py:3810 templates/js/translated/table_filters.js:144
+#: part/models.py:3854 templates/js/translated/table_filters.js:150
msgid "Validated"
msgstr ""
-#: part/models.py:3811
+#: part/models.py:3855
msgid "This BOM item has been validated"
msgstr ""
-#: part/models.py:3816 part/templates/part/upload_bom.html:57
-#: templates/js/translated/bom.js:1024
-#: templates/js/translated/table_filters.js:148
-#: templates/js/translated/table_filters.js:181
+#: part/models.py:3860 part/templates/part/upload_bom.html:57
+#: templates/js/translated/bom.js:1042
+#: templates/js/translated/table_filters.js:154
+#: templates/js/translated/table_filters.js:187
msgid "Gets inherited"
msgstr ""
-#: part/models.py:3817
+#: part/models.py:3861
msgid "This BOM item is inherited by BOMs for variant parts"
msgstr ""
-#: part/models.py:3822 part/templates/part/upload_bom.html:56
-#: templates/js/translated/bom.js:1016
+#: part/models.py:3866 part/templates/part/upload_bom.html:56
+#: templates/js/translated/bom.js:1034
msgid "Allow Variants"
msgstr ""
-#: part/models.py:3823
+#: part/models.py:3867
msgid "Stock items for variant parts can be used for this BOM item"
msgstr ""
-#: part/models.py:3909 stock/models.py:577
+#: part/models.py:3953 stock/models.py:577
msgid "Quantity must be integer value for trackable parts"
msgstr ""
-#: part/models.py:3918 part/models.py:3920
+#: part/models.py:3962 part/models.py:3964
msgid "Sub part must be specified"
msgstr ""
-#: part/models.py:4036
+#: part/models.py:4080
msgid "BOM Item Substitute"
msgstr ""
-#: part/models.py:4057
+#: part/models.py:4101
msgid "Substitute part cannot be the same as the master part"
msgstr ""
-#: part/models.py:4070
+#: part/models.py:4114
msgid "Parent BOM item"
msgstr ""
-#: part/models.py:4078
+#: part/models.py:4122
msgid "Substitute part"
msgstr ""
-#: part/models.py:4093
+#: part/models.py:4137
msgid "Part 1"
msgstr ""
-#: part/models.py:4097
+#: part/models.py:4141
msgid "Part 2"
msgstr ""
-#: part/models.py:4097
+#: part/models.py:4141
msgid "Select Related Part"
msgstr ""
-#: part/models.py:4115
+#: part/models.py:4159
msgid "Part relationship cannot be created between a part and itself"
msgstr ""
-#: part/models.py:4119
+#: part/models.py:4163
msgid "Duplicate relationship already exists"
msgstr ""
-#: part/serializers.py:152 part/serializers.py:175 stock/serializers.py:257
+#: part/serializers.py:152 part/serializers.py:175 stock/serializers.py:319
msgid "Purchase currency of this stock item"
msgstr ""
-#: part/serializers.py:302
+#: part/serializers.py:313
+msgid "No parts selected"
+msgstr ""
+
+#: part/serializers.py:321
+msgid "Select category"
+msgstr ""
+
+#: part/serializers.py:352
msgid "Original Part"
msgstr ""
-#: part/serializers.py:302
+#: part/serializers.py:352
msgid "Select original part to duplicate"
msgstr ""
-#: part/serializers.py:307
+#: part/serializers.py:357
msgid "Copy Image"
msgstr ""
-#: part/serializers.py:307
+#: part/serializers.py:357
msgid "Copy image from original part"
msgstr ""
-#: part/serializers.py:312 part/templates/part/detail.html:296
+#: part/serializers.py:362 part/templates/part/detail.html:277
msgid "Copy BOM"
msgstr ""
-#: part/serializers.py:312
+#: part/serializers.py:362
msgid "Copy bill of materials from original part"
msgstr ""
-#: part/serializers.py:317
+#: part/serializers.py:367
msgid "Copy Parameters"
msgstr ""
-#: part/serializers.py:317
+#: part/serializers.py:367
msgid "Copy parameter data from original part"
msgstr ""
-#: part/serializers.py:327
+#: part/serializers.py:377
msgid "Initial Stock Quantity"
msgstr ""
-#: part/serializers.py:327
+#: part/serializers.py:377
msgid "Specify initial stock quantity for this Part. If quantity is zero, no stock is added."
msgstr ""
-#: part/serializers.py:333
+#: part/serializers.py:383
msgid "Initial Stock Location"
msgstr ""
-#: part/serializers.py:333
+#: part/serializers.py:383
msgid "Specify initial stock location for this Part"
msgstr ""
-#: part/serializers.py:343
+#: part/serializers.py:393
msgid "Select supplier (or leave blank to skip)"
msgstr ""
-#: part/serializers.py:354
+#: part/serializers.py:404
msgid "Select manufacturer (or leave blank to skip)"
msgstr ""
-#: part/serializers.py:360
+#: part/serializers.py:410
msgid "Manufacturer part number"
msgstr ""
-#: part/serializers.py:367
+#: part/serializers.py:417
msgid "Selected company is not a valid supplier"
msgstr ""
-#: part/serializers.py:375
+#: part/serializers.py:425
msgid "Selected company is not a valid manufacturer"
msgstr ""
-#: part/serializers.py:387
+#: part/serializers.py:437
msgid "Manufacturer part matching this MPN already exists"
msgstr ""
-#: part/serializers.py:395
+#: part/serializers.py:445
msgid "Supplier part matching this SKU already exists"
msgstr ""
-#: part/serializers.py:620 part/templates/part/copy_part.html:9
-#: templates/js/translated/part.js:449
+#: part/serializers.py:682 part/templates/part/copy_part.html:9
+#: templates/js/translated/part.js:448
msgid "Duplicate Part"
msgstr ""
-#: part/serializers.py:620
+#: part/serializers.py:682
msgid "Copy initial data from another Part"
msgstr ""
-#: part/serializers.py:625 templates/js/translated/part.js:103
+#: part/serializers.py:687 templates/js/translated/part.js:102
msgid "Initial Stock"
msgstr ""
-#: part/serializers.py:625
+#: part/serializers.py:687
msgid "Create Part with initial stock quantity"
msgstr ""
-#: part/serializers.py:630
+#: part/serializers.py:692
msgid "Supplier Information"
msgstr ""
-#: part/serializers.py:630
+#: part/serializers.py:692
msgid "Add initial supplier information for this part"
msgstr ""
-#: part/serializers.py:636
+#: part/serializers.py:698
msgid "Copy Category Parameters"
msgstr ""
-#: part/serializers.py:637
+#: part/serializers.py:699
msgid "Copy parameter templates from selected part category"
msgstr ""
-#: part/serializers.py:842
+#: part/serializers.py:904
msgid "Limit stocktake report to a particular part, and any variant parts"
msgstr ""
-#: part/serializers.py:848
+#: part/serializers.py:910
msgid "Limit stocktake report to a particular part category, and any child categories"
msgstr ""
-#: part/serializers.py:854
+#: part/serializers.py:916
msgid "Limit stocktake report to a particular stock location, and any child locations"
msgstr ""
-#: part/serializers.py:859
+#: part/serializers.py:921
msgid "Generate Report"
msgstr ""
-#: part/serializers.py:860
+#: part/serializers.py:922
msgid "Generate report file containing calculated stocktake data"
msgstr ""
-#: part/serializers.py:865
+#: part/serializers.py:927
msgid "Update Parts"
msgstr ""
-#: part/serializers.py:866
+#: part/serializers.py:928
msgid "Update specified parts with calculated stocktake data"
msgstr ""
-#: part/serializers.py:874
+#: part/serializers.py:936
msgid "Stocktake functionality is not enabled"
msgstr ""
-#: part/serializers.py:963
+#: part/serializers.py:1025
msgid "Update"
msgstr ""
-#: part/serializers.py:964
+#: part/serializers.py:1026
msgid "Update pricing for this part"
msgstr ""
-#: part/serializers.py:1246
+#: part/serializers.py:1308
msgid "Select part to copy BOM from"
msgstr ""
-#: part/serializers.py:1254
+#: part/serializers.py:1316
msgid "Remove Existing Data"
msgstr ""
-#: part/serializers.py:1255
+#: part/serializers.py:1317
msgid "Remove existing BOM items before copying"
msgstr ""
-#: part/serializers.py:1260
+#: part/serializers.py:1322
msgid "Include Inherited"
msgstr ""
-#: part/serializers.py:1261
+#: part/serializers.py:1323
msgid "Include BOM items which are inherited from templated parts"
msgstr ""
-#: part/serializers.py:1266
+#: part/serializers.py:1328
msgid "Skip Invalid Rows"
msgstr ""
-#: part/serializers.py:1267
+#: part/serializers.py:1329
msgid "Enable this option to skip invalid rows"
msgstr ""
-#: part/serializers.py:1272
+#: part/serializers.py:1334
msgid "Copy Substitute Parts"
msgstr ""
-#: part/serializers.py:1273
+#: part/serializers.py:1335
msgid "Copy substitute parts when duplicate BOM items"
msgstr ""
-#: part/serializers.py:1313
+#: part/serializers.py:1375
msgid "Clear Existing BOM"
msgstr ""
-#: part/serializers.py:1314
+#: part/serializers.py:1376
msgid "Delete existing BOM items before uploading"
msgstr ""
-#: part/serializers.py:1344
+#: part/serializers.py:1406
msgid "No part column specified"
msgstr ""
-#: part/serializers.py:1387
+#: part/serializers.py:1449
msgid "Multiple matching parts found"
msgstr ""
-#: part/serializers.py:1390
+#: part/serializers.py:1452
msgid "No matching part found"
msgstr ""
-#: part/serializers.py:1393
+#: part/serializers.py:1455
msgid "Part is not designated as a component"
msgstr ""
-#: part/serializers.py:1402
+#: part/serializers.py:1464
msgid "Quantity not provided"
msgstr ""
-#: part/serializers.py:1410
+#: part/serializers.py:1472
msgid "Invalid quantity"
msgstr ""
-#: part/serializers.py:1431
+#: part/serializers.py:1493
msgid "At least one BOM item is required"
msgstr ""
@@ -6421,9 +6453,9 @@ msgstr ""
msgid "The available stock for {part.name} has fallen below the configured minimum level"
msgstr ""
-#: part/tasks.py:294 templates/js/translated/part.js:1040
-#: templates/js/translated/part.js:1793 templates/js/translated/part.js:1848
-#: templates/js/translated/purchase_order.js:2052
+#: part/tasks.py:294 templates/js/translated/part.js:1039
+#: templates/js/translated/part.js:1792 templates/js/translated/part.js:1847
+#: templates/js/translated/purchase_order.js:2062
msgid "Total Quantity"
msgstr ""
@@ -6461,14 +6493,6 @@ msgstr ""
msgid "The BOM for %(part)s has not been validated."
msgstr ""
-#: part/templates/part/bom.html:30 part/templates/part/detail.html:291
-msgid "BOM actions"
-msgstr ""
-
-#: part/templates/part/bom.html:34
-msgid "Delete Items"
-msgstr ""
-
#: part/templates/part/category.html:34
msgid "Perform stocktake for this part category"
msgstr ""
@@ -6505,7 +6529,7 @@ msgstr ""
msgid "Top level part category"
msgstr ""
-#: part/templates/part/category.html:121 part/templates/part/category.html:225
+#: part/templates/part/category.html:121 part/templates/part/category.html:206
#: part/templates/part/category_sidebar.html:7
msgid "Subcategories"
msgstr ""
@@ -6518,33 +6542,20 @@ msgstr ""
msgid "Create new part"
msgstr ""
-#: part/templates/part/category.html:165 templates/js/translated/bom.js:443
+#: part/templates/part/category.html:165 templates/js/translated/bom.js:444
msgid "New Part"
msgstr ""
-#: part/templates/part/category.html:175 part/templates/part/detail.html:390
-#: part/templates/part/detail.html:421
-msgid "Options"
-msgstr ""
-
-#: part/templates/part/category.html:179
-msgid "Set category"
-msgstr ""
-
-#: part/templates/part/category.html:180
-msgid "Set Category"
-msgstr ""
-
-#: part/templates/part/category.html:208
+#: part/templates/part/category.html:191
#: templates/InvenTree/settings/sidebar.html:47
msgid "Part Parameters"
msgstr ""
-#: part/templates/part/category.html:229
+#: part/templates/part/category.html:210
msgid "Create new part category"
msgstr ""
-#: part/templates/part/category.html:230
+#: part/templates/part/category.html:211
msgid "New Category"
msgstr ""
@@ -6581,7 +6592,7 @@ msgid "Refresh scheduling data"
msgstr ""
#: part/templates/part/detail.html:45 part/templates/part/prices.html:15
-#: templates/js/translated/tables.js:584
+#: templates/js/translated/tables.js:560
msgid "Refresh"
msgstr ""
@@ -6592,7 +6603,7 @@ msgstr ""
#: part/templates/part/detail.html:67 part/templates/part/part_sidebar.html:50
#: stock/admin.py:130 templates/InvenTree/settings/part_stocktake.html:29
#: templates/InvenTree/settings/sidebar.html:51
-#: templates/js/translated/stock.js:1952 users/models.py:39
+#: templates/js/translated/stock.js:2109 users/models.py:39
msgid "Stocktake"
msgstr ""
@@ -6604,101 +6615,101 @@ msgstr ""
msgid "Add Test Template"
msgstr ""
-#: part/templates/part/detail.html:145 stock/templates/stock/item.html:53
+#: part/templates/part/detail.html:139 stock/templates/stock/item.html:49
msgid "Sales Order Allocations"
msgstr ""
-#: part/templates/part/detail.html:165
+#: part/templates/part/detail.html:156
msgid "Part Notes"
msgstr ""
-#: part/templates/part/detail.html:180
+#: part/templates/part/detail.html:171
msgid "Part Variants"
msgstr ""
-#: part/templates/part/detail.html:184
+#: part/templates/part/detail.html:175
msgid "Create new variant"
msgstr ""
-#: part/templates/part/detail.html:185
+#: part/templates/part/detail.html:176
msgid "New Variant"
msgstr ""
-#: part/templates/part/detail.html:212
+#: part/templates/part/detail.html:199
msgid "Add new parameter"
msgstr ""
-#: part/templates/part/detail.html:249 part/templates/part/part_sidebar.html:58
+#: part/templates/part/detail.html:232 part/templates/part/part_sidebar.html:58
msgid "Related Parts"
msgstr ""
-#: part/templates/part/detail.html:253 part/templates/part/detail.html:254
+#: part/templates/part/detail.html:236 part/templates/part/detail.html:237
msgid "Add Related"
msgstr ""
-#: part/templates/part/detail.html:274 part/templates/part/part_sidebar.html:17
+#: part/templates/part/detail.html:255 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:279
+#: part/templates/part/detail.html:260
msgid "Export actions"
msgstr ""
-#: part/templates/part/detail.html:283 templates/js/translated/bom.js:339
+#: part/templates/part/detail.html:264 templates/js/translated/bom.js:340
msgid "Export BOM"
msgstr ""
-#: part/templates/part/detail.html:285
+#: part/templates/part/detail.html:266
msgid "Print BOM Report"
msgstr ""
-#: part/templates/part/detail.html:295
+#: part/templates/part/detail.html:272
+msgid "BOM actions"
+msgstr ""
+
+#: part/templates/part/detail.html:276
msgid "Upload BOM"
msgstr ""
-#: part/templates/part/detail.html:297
+#: part/templates/part/detail.html:278
msgid "Validate BOM"
msgstr ""
-#: part/templates/part/detail.html:302 part/templates/part/detail.html:303
-#: templates/js/translated/bom.js:1279 templates/js/translated/bom.js:1280
+#: part/templates/part/detail.html:283 part/templates/part/detail.html:284
+#: templates/js/translated/bom.js:1299 templates/js/translated/bom.js:1300
msgid "Add BOM Item"
msgstr ""
-#: part/templates/part/detail.html:316
+#: part/templates/part/detail.html:297
msgid "Assemblies"
msgstr ""
-#: part/templates/part/detail.html:334
+#: part/templates/part/detail.html:313
msgid "Part Builds"
msgstr ""
-#: part/templates/part/detail.html:361 stock/templates/stock/item.html:38
+#: part/templates/part/detail.html:338 stock/templates/stock/item.html:36
msgid "Build Order Allocations"
msgstr ""
-#: part/templates/part/detail.html:377
+#: part/templates/part/detail.html:352
msgid "Part Suppliers"
msgstr ""
-#: part/templates/part/detail.html:407
+#: part/templates/part/detail.html:372
msgid "Part Manufacturers"
msgstr ""
-#: part/templates/part/detail.html:423
-msgid "Delete manufacturer parts"
-msgstr ""
-
-#: part/templates/part/detail.html:707
+#: part/templates/part/detail.html:654
msgid "Related Part"
msgstr ""
-#: part/templates/part/detail.html:715
+#: part/templates/part/detail.html:662
msgid "Add Related Part"
msgstr ""
-#: part/templates/part/detail.html:800
+#: part/templates/part/detail.html:747
msgid "Add Test Result Template"
msgstr ""
@@ -6732,13 +6743,13 @@ msgid "Download Part Import Template"
msgstr ""
#: part/templates/part/import_wizard/part_upload.html:92
-#: templates/js/translated/bom.js:308 templates/js/translated/bom.js:342
+#: templates/js/translated/bom.js:309 templates/js/translated/bom.js:343
#: templates/js/translated/order.js:129 templates/js/translated/tables.js:189
msgid "Format"
msgstr ""
#: part/templates/part/import_wizard/part_upload.html:93
-#: templates/js/translated/bom.js:309 templates/js/translated/bom.js:343
+#: templates/js/translated/bom.js:310 templates/js/translated/bom.js:344
#: templates/js/translated/order.js:130
msgid "Select file format"
msgstr ""
@@ -6779,7 +6790,7 @@ msgstr ""
msgid "Transfer part stock"
msgstr ""
-#: part/templates/part/part_base.html:93
+#: part/templates/part/part_base.html:93 templates/js/translated/part.js:2264
msgid "Part actions"
msgstr ""
@@ -6824,10 +6835,10 @@ msgid "Part is not active"
msgstr ""
#: part/templates/part/part_base.html:148
-#: templates/js/translated/company.js:945
-#: templates/js/translated/company.js:1185
-#: templates/js/translated/model_renderers.js:273
-#: templates/js/translated/part.js:792 templates/js/translated/part.js:1192
+#: templates/js/translated/company.js:1318
+#: templates/js/translated/company.js:1606
+#: templates/js/translated/model_renderers.js:287
+#: templates/js/translated/part.js:791 templates/js/translated/part.js:1191
msgid "Inactive"
msgstr ""
@@ -6850,7 +6861,7 @@ msgstr ""
msgid "Allocated to Sales Orders"
msgstr ""
-#: part/templates/part/part_base.html:237 templates/js/translated/bom.js:1178
+#: part/templates/part/part_base.html:237 templates/js/translated/bom.js:1198
msgid "Can Build"
msgstr ""
@@ -6858,8 +6869,8 @@ msgstr ""
msgid "Minimum stock level"
msgstr ""
-#: part/templates/part/part_base.html:324 templates/js/translated/bom.js:1041
-#: templates/js/translated/part.js:1238 templates/js/translated/part.js:2304
+#: part/templates/part/part_base.html:324 templates/js/translated/bom.js:1059
+#: templates/js/translated/part.js:1237 templates/js/translated/part.js:2380
#: templates/js/translated/pricing.js:391
#: templates/js/translated/pricing.js:1040
msgid "Price Range"
@@ -6882,7 +6893,7 @@ msgstr ""
msgid "Link Barcode to Part"
msgstr ""
-#: part/templates/part/part_base.html:474 templates/js/translated/part.js:2191
+#: part/templates/part/part_base.html:474 templates/js/translated/part.js:2258
msgid "part"
msgstr ""
@@ -6956,9 +6967,9 @@ msgstr ""
#: stock/templates/stock/stock_app_base.html:10
#: templates/InvenTree/search.html:153
#: templates/InvenTree/settings/sidebar.html:49
-#: templates/js/translated/part.js:1216 templates/js/translated/part.js:2120
-#: templates/js/translated/part.js:2284 templates/js/translated/stock.js:1022
-#: templates/js/translated/stock.js:1829 templates/navbar.html:31
+#: templates/js/translated/part.js:1215 templates/js/translated/part.js:2119
+#: templates/js/translated/part.js:2360 templates/js/translated/stock.js:1021
+#: templates/js/translated/stock.js:1986 templates/navbar.html:31
msgid "Stock"
msgstr ""
@@ -6989,9 +7000,9 @@ msgstr ""
#: part/templates/part/prices.html:25 stock/admin.py:129
#: stock/templates/stock/item_base.html:442
-#: templates/js/translated/company.js:1313
-#: templates/js/translated/company.js:1323
-#: templates/js/translated/stock.js:1982
+#: templates/js/translated/company.js:1734
+#: templates/js/translated/company.js:1744
+#: templates/js/translated/stock.js:2139
msgid "Last Updated"
msgstr ""
@@ -7054,12 +7065,12 @@ msgstr ""
msgid "Add Sell Price Break"
msgstr ""
-#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:682
-#: templates/js/translated/part.js:2115 templates/js/translated/part.js:2117
+#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:681
+#: templates/js/translated/part.js:2114 templates/js/translated/part.js:2116
msgid "No Stock"
msgstr ""
-#: part/templates/part/stock_count.html:9 templates/InvenTree/index.html:167
+#: part/templates/part/stock_count.html:9 templates/InvenTree/index.html:120
msgid "Low Stock"
msgstr ""
@@ -7163,7 +7174,7 @@ msgid "Match found for barcode data"
msgstr ""
#: plugin/base/barcodes/api.py:120
-#: templates/js/translated/purchase_order.js:1372
+#: templates/js/translated/purchase_order.js:1387
msgid "Barcode matches existing item"
msgstr ""
@@ -7199,7 +7210,7 @@ msgstr ""
#: plugin/builtin/integration/core_notifications.py:40
#: plugin/builtin/integration/core_notifications.py:81
msgid "Enable email notifications"
-msgstr ""
+msgstr "Aktifkan surel pemberitahuan"
#: plugin/builtin/integration/core_notifications.py:41
#: plugin/builtin/integration/core_notifications.py:82
@@ -7226,43 +7237,43 @@ msgstr ""
msgid "Open link"
msgstr ""
-#: plugin/models.py:27
+#: plugin/models.py:28
msgid "Plugin Configuration"
msgstr ""
-#: plugin/models.py:28
+#: plugin/models.py:29
msgid "Plugin Configurations"
msgstr ""
-#: plugin/models.py:33
+#: plugin/models.py:34
msgid "Key"
msgstr ""
-#: plugin/models.py:34
+#: plugin/models.py:35
msgid "Key of plugin"
msgstr ""
-#: plugin/models.py:42
+#: plugin/models.py:43
msgid "PluginName of the plugin"
msgstr ""
-#: plugin/models.py:48
+#: plugin/models.py:49
msgid "Is the plugin active"
msgstr ""
-#: plugin/models.py:124
+#: plugin/models.py:125
msgid "Sample plugin"
msgstr ""
-#: plugin/models.py:133
+#: plugin/models.py:134
msgid "Builtin Plugin"
msgstr ""
-#: plugin/models.py:159 templates/InvenTree/settings/plugin_settings.html:9
+#: plugin/models.py:160 templates/InvenTree/settings/plugin_settings.html:9
msgid "Plugin"
msgstr ""
-#: plugin/models.py:210
+#: plugin/models.py:211
msgid "Method"
msgstr ""
@@ -7414,47 +7425,47 @@ msgstr ""
msgid "Build query filters (comma-separated list of key=value pairs"
msgstr ""
-#: report/models.py:418
+#: report/models.py:420
msgid "Part Filters"
msgstr ""
-#: report/models.py:419
+#: report/models.py:421
msgid "Part query filters (comma-separated list of key=value pairs"
msgstr ""
-#: report/models.py:453
+#: report/models.py:455
msgid "Purchase order query filters"
msgstr ""
-#: report/models.py:491
+#: report/models.py:493
msgid "Sales order query filters"
msgstr ""
-#: report/models.py:529
+#: report/models.py:531
msgid "Return order query filters"
msgstr ""
-#: report/models.py:582
+#: report/models.py:584
msgid "Snippet"
msgstr ""
-#: report/models.py:583
+#: report/models.py:585
msgid "Report snippet file"
msgstr ""
-#: report/models.py:587
+#: report/models.py:589
msgid "Snippet file description"
msgstr ""
-#: report/models.py:624
+#: report/models.py:626
msgid "Asset"
msgstr ""
-#: report/models.py:625
+#: report/models.py:627
msgid "Report asset file"
msgstr ""
-#: report/models.py:632
+#: report/models.py:634
msgid "Asset file description"
msgstr ""
@@ -7475,8 +7486,8 @@ msgstr ""
#: templates/js/translated/order.js:316 templates/js/translated/pricing.js:527
#: templates/js/translated/pricing.js:596
#: templates/js/translated/pricing.js:820
-#: templates/js/translated/purchase_order.js:2083
-#: templates/js/translated/sales_order.js:1817
+#: templates/js/translated/purchase_order.js:2093
+#: templates/js/translated/sales_order.js:1829
msgid "Unit Price"
msgstr ""
@@ -7488,23 +7499,23 @@ msgstr ""
#: report/templates/report/inventree_po_report_base.html:72
#: report/templates/report/inventree_so_report_base.html:72
-#: templates/js/translated/purchase_order.js:1985
-#: templates/js/translated/sales_order.js:1792
+#: templates/js/translated/purchase_order.js:1995
+#: templates/js/translated/sales_order.js:1804
msgid "Total"
msgstr ""
#: report/templates/report/inventree_return_order_report_base.html:25
#: report/templates/report/inventree_test_report_base.html:88
#: stock/models.py:725 stock/templates/stock/item_base.html:312
-#: templates/js/translated/build.js:502 templates/js/translated/build.js:1423
-#: templates/js/translated/build.js:1989
-#: templates/js/translated/model_renderers.js:201
-#: templates/js/translated/return_order.js:528
-#: templates/js/translated/return_order.js:708
-#: templates/js/translated/sales_order.js:300
-#: templates/js/translated/sales_order.js:1597
-#: templates/js/translated/sales_order.js:1682
-#: templates/js/translated/stock.js:563
+#: templates/js/translated/build.js:508 templates/js/translated/build.js:1306
+#: templates/js/translated/build.js:2281
+#: templates/js/translated/model_renderers.js:215
+#: templates/js/translated/return_order.js:540
+#: templates/js/translated/return_order.js:720
+#: templates/js/translated/sales_order.js:312
+#: templates/js/translated/sales_order.js:1609
+#: templates/js/translated/sales_order.js:1694
+#: templates/js/translated/stock.js:562
msgid "Serial Number"
msgstr ""
@@ -7517,7 +7528,7 @@ msgid "Test Results"
msgstr ""
#: report/templates/report/inventree_test_report_base.html:102
-#: stock/models.py:2243 templates/js/translated/stock.js:1419
+#: stock/models.py:2243 templates/js/translated/stock.js:1418
msgid "Test"
msgstr ""
@@ -7548,8 +7559,8 @@ msgid "Installed Items"
msgstr ""
#: report/templates/report/inventree_test_report_base.html:168
-#: stock/admin.py:104 templates/js/translated/stock.js:667
-#: templates/js/translated/stock.js:838 templates/js/translated/stock.js:2849
+#: stock/admin.py:104 templates/js/translated/stock.js:666
+#: templates/js/translated/stock.js:837 templates/js/translated/stock.js:2976
msgid "Serial"
msgstr ""
@@ -7617,31 +7628,31 @@ msgstr ""
#: stock/admin.py:131 stock/models.py:789
#: stock/templates/stock/item_base.html:429
-#: templates/js/translated/stock.js:1966
+#: templates/js/translated/stock.js:2123
msgid "Expiry Date"
msgstr ""
-#: stock/api.py:420 templates/js/translated/table_filters.js:373
+#: stock/api.py:426 templates/js/translated/table_filters.js:379
msgid "External Location"
msgstr ""
-#: stock/api.py:582
+#: stock/api.py:619
msgid "Quantity is required"
msgstr ""
-#: stock/api.py:589
+#: stock/api.py:626
msgid "Valid part must be supplied"
msgstr ""
-#: stock/api.py:615
+#: stock/api.py:652
msgid "The given supplier part does not exist"
msgstr ""
-#: stock/api.py:624
+#: stock/api.py:661
msgid "The supplier part has a pack size defined, but flag use_pack_size not set"
msgstr ""
-#: stock/api.py:642
+#: stock/api.py:679
msgid "Serial numbers cannot be supplied for a non-trackable part"
msgstr ""
@@ -7652,7 +7663,7 @@ msgid "Stock Location"
msgstr ""
#: stock/models.py:55 stock/templates/stock/location.html:177
-#: templates/InvenTree/search.html:166 templates/js/translated/search.js:220
+#: templates/InvenTree/search.html:166 templates/js/translated/search.js:178
#: users/models.py:40
msgid "Stock Locations"
msgstr ""
@@ -7670,8 +7681,8 @@ msgstr ""
msgid "Stock items may not be directly located into a structural stock locations, but may be located to child locations."
msgstr ""
-#: stock/models.py:132 templates/js/translated/stock.js:2529
-#: templates/js/translated/table_filters.js:213
+#: stock/models.py:132 templates/js/translated/stock.js:2660
+#: templates/js/translated/table_filters.js:219
msgid "External"
msgstr ""
@@ -7687,7 +7698,7 @@ msgstr ""
msgid "Stock items cannot be located into structural stock locations!"
msgstr ""
-#: stock/models.py:583 stock/serializers.py:174
+#: stock/models.py:583 stock/serializers.py:223
msgid "Stock item cannot be created for virtual parts"
msgstr ""
@@ -7821,7 +7832,7 @@ msgstr ""
msgid "Quantity does not match serial numbers"
msgstr ""
-#: stock/models.py:1403 stock/serializers.py:374
+#: stock/models.py:1403 stock/serializers.py:440
msgid "Serial numbers already exist"
msgstr ""
@@ -7849,7 +7860,7 @@ msgstr ""
msgid "Serialized stock cannot be merged"
msgstr ""
-#: stock/models.py:1496 stock/serializers.py:975
+#: stock/models.py:1496 stock/serializers.py:1092
msgid "Duplicate stock items"
msgstr ""
@@ -7879,7 +7890,7 @@ msgstr ""
#: stock/models.py:2225
msgid "Attachment must be uploaded for this test"
-msgstr ""
+msgstr "Lampiran perlu diunggah untuk tes ini"
#: stock/models.py:2244
msgid "Test name"
@@ -7901,132 +7912,141 @@ msgstr ""
msgid "Test notes"
msgstr ""
-#: stock/serializers.py:76
+#: stock/serializers.py:121
msgid "Serial number is too large"
msgstr ""
-#: stock/serializers.py:166
+#: stock/serializers.py:215
msgid "Use pack size when adding: the quantity defined is the number of packs"
msgstr ""
-#: stock/serializers.py:254
+#: stock/serializers.py:316
msgid "Purchase price of this stock item, per unit or pack"
msgstr ""
-#: stock/serializers.py:307
+#: stock/serializers.py:373
msgid "Enter number of stock items to serialize"
msgstr ""
-#: stock/serializers.py:319
+#: stock/serializers.py:385
#, python-brace-format
msgid "Quantity must not exceed available stock quantity ({q})"
msgstr ""
-#: stock/serializers.py:325
+#: stock/serializers.py:391
msgid "Enter serial numbers for new items"
msgstr ""
-#: stock/serializers.py:336 stock/serializers.py:932 stock/serializers.py:1174
+#: stock/serializers.py:402 stock/serializers.py:1049 stock/serializers.py:1291
msgid "Destination stock location"
msgstr ""
-#: stock/serializers.py:343
+#: stock/serializers.py:409
msgid "Optional note field"
msgstr ""
-#: stock/serializers.py:353
+#: stock/serializers.py:419
msgid "Serial numbers cannot be assigned to this part"
msgstr ""
-#: stock/serializers.py:414
+#: stock/serializers.py:480
msgid "Select stock item to install"
msgstr ""
-#: stock/serializers.py:427
-msgid "Stock item is unavailable"
-msgstr ""
-
-#: stock/serializers.py:434
-msgid "Selected part is not in the Bill of Materials"
-msgstr ""
-
-#: stock/serializers.py:471
-msgid "Destination location for uninstalled item"
-msgstr ""
-
-#: stock/serializers.py:476 stock/serializers.py:557
+#: stock/serializers.py:485 stock/serializers.py:543 stock/serializers.py:624
+#: stock/serializers.py:682
msgid "Add transaction note (optional)"
msgstr ""
-#: stock/serializers.py:510
+#: stock/serializers.py:494
+msgid "Stock item is unavailable"
+msgstr ""
+
+#: stock/serializers.py:501
+msgid "Selected part is not in the Bill of Materials"
+msgstr ""
+
+#: stock/serializers.py:538
+msgid "Destination location for uninstalled item"
+msgstr ""
+
+#: stock/serializers.py:577
msgid "Select part to convert stock item into"
msgstr ""
-#: stock/serializers.py:521
+#: stock/serializers.py:588
msgid "Selected part is not a valid option for conversion"
msgstr ""
-#: stock/serializers.py:552
+#: stock/serializers.py:619
msgid "Destination location for returned item"
msgstr ""
-#: stock/serializers.py:787
+#: stock/serializers.py:663
+msgid "Select stock items to change status"
+msgstr ""
+
+#: stock/serializers.py:670
+msgid "No stock items selected"
+msgstr ""
+
+#: stock/serializers.py:904
msgid "Part must be salable"
msgstr ""
-#: stock/serializers.py:791
+#: stock/serializers.py:908
msgid "Item is allocated to a sales order"
msgstr ""
-#: stock/serializers.py:795
+#: stock/serializers.py:912
msgid "Item is allocated to a build order"
msgstr ""
-#: stock/serializers.py:826
+#: stock/serializers.py:943
msgid "Customer to assign stock items"
msgstr ""
-#: stock/serializers.py:832
+#: stock/serializers.py:949
msgid "Selected company is not a customer"
msgstr ""
-#: stock/serializers.py:840
+#: stock/serializers.py:957
msgid "Stock assignment notes"
msgstr ""
-#: stock/serializers.py:850 stock/serializers.py:1081
+#: stock/serializers.py:967 stock/serializers.py:1198
msgid "A list of stock items must be provided"
msgstr ""
-#: stock/serializers.py:939
+#: stock/serializers.py:1056
msgid "Stock merging notes"
msgstr ""
-#: stock/serializers.py:944
+#: stock/serializers.py:1061
msgid "Allow mismatched suppliers"
msgstr ""
-#: stock/serializers.py:945
+#: stock/serializers.py:1062
msgid "Allow stock items with different supplier parts to be merged"
msgstr ""
-#: stock/serializers.py:950
+#: stock/serializers.py:1067
msgid "Allow mismatched status"
msgstr ""
-#: stock/serializers.py:951
+#: stock/serializers.py:1068
msgid "Allow stock items with different status codes to be merged"
msgstr ""
-#: stock/serializers.py:961
+#: stock/serializers.py:1078
msgid "At least two stock items must be provided"
msgstr ""
-#: stock/serializers.py:1043
+#: stock/serializers.py:1160
msgid "StockItem primary key value"
msgstr ""
-#: stock/serializers.py:1071
+#: stock/serializers.py:1188
msgid "Stock transaction notes"
msgstr ""
@@ -8034,48 +8054,48 @@ msgstr ""
msgid "Stock Tracking Information"
msgstr ""
-#: stock/templates/stock/item.html:69
+#: stock/templates/stock/item.html:63
msgid "Child Stock Items"
msgstr ""
-#: stock/templates/stock/item.html:77
+#: stock/templates/stock/item.html:71
msgid "This stock item does not have any child items"
msgstr ""
-#: stock/templates/stock/item.html:86
+#: stock/templates/stock/item.html:80
#: stock/templates/stock/stock_sidebar.html:12
msgid "Test Data"
msgstr ""
-#: stock/templates/stock/item.html:90 stock/templates/stock/item_base.html:66
+#: stock/templates/stock/item.html:84 stock/templates/stock/item_base.html:66
msgid "Test Report"
msgstr ""
-#: stock/templates/stock/item.html:94 stock/templates/stock/item.html:288
+#: stock/templates/stock/item.html:88 stock/templates/stock/item.html:278
msgid "Delete Test Data"
msgstr ""
-#: stock/templates/stock/item.html:98
+#: stock/templates/stock/item.html:92
msgid "Add Test Data"
msgstr ""
-#: stock/templates/stock/item.html:132
+#: stock/templates/stock/item.html:124
msgid "Stock Item Notes"
msgstr ""
-#: stock/templates/stock/item.html:147
+#: stock/templates/stock/item.html:139
msgid "Installed Stock Items"
msgstr ""
-#: stock/templates/stock/item.html:152 templates/js/translated/stock.js:2996
+#: stock/templates/stock/item.html:144 templates/js/translated/stock.js:3123
msgid "Install Stock Item"
msgstr ""
-#: stock/templates/stock/item.html:276
+#: stock/templates/stock/item.html:266
msgid "Delete all test results for this stock item"
msgstr ""
-#: stock/templates/stock/item.html:305 templates/js/translated/stock.js:1611
+#: stock/templates/stock/item.html:295 templates/js/translated/stock.js:1610
msgid "Add Test Result"
msgstr ""
@@ -8083,13 +8103,13 @@ msgstr ""
msgid "Locate stock item"
msgstr ""
-#: stock/templates/stock/item_base.html:52 templates/stock_table.html:21
+#: stock/templates/stock/item_base.html:52
msgid "Scan to Location"
msgstr ""
#: stock/templates/stock/item_base.html:60
#: stock/templates/stock/location.html:69
-#: templates/js/translated/filters.js:322
+#: templates/js/translated/filters.js:432
msgid "Printing actions"
msgstr ""
@@ -8098,15 +8118,17 @@ msgid "Stock adjustment actions"
msgstr ""
#: stock/templates/stock/item_base.html:80
-#: stock/templates/stock/location.html:88 templates/stock_table.html:35
+#: stock/templates/stock/location.html:88 templates/js/translated/stock.js:1735
msgid "Count stock"
msgstr ""
-#: stock/templates/stock/item_base.html:82 templates/stock_table.html:33
+#: stock/templates/stock/item_base.html:82
+#: templates/js/translated/stock.js:1717
msgid "Add stock"
msgstr ""
-#: stock/templates/stock/item_base.html:83 templates/stock_table.html:34
+#: stock/templates/stock/item_base.html:83
+#: templates/js/translated/stock.js:1726
msgid "Remove stock"
msgstr ""
@@ -8115,11 +8137,12 @@ msgid "Serialize stock"
msgstr ""
#: stock/templates/stock/item_base.html:89
-#: stock/templates/stock/location.html:94 templates/stock_table.html:36
+#: stock/templates/stock/location.html:94 templates/js/translated/stock.js:1744
msgid "Transfer stock"
msgstr ""
-#: stock/templates/stock/item_base.html:92 templates/stock_table.html:39
+#: stock/templates/stock/item_base.html:92
+#: templates/js/translated/stock.js:1798
msgid "Assign to customer"
msgstr ""
@@ -8159,6 +8182,11 @@ msgstr ""
msgid "Delete stock item"
msgstr ""
+#: stock/templates/stock/item_base.html:170 templates/InvenTree/search.html:139
+#: templates/js/translated/build.js:2046 templates/navbar.html:38
+msgid "Build"
+msgstr "Produksi"
+
#: stock/templates/stock/item_base.html:194
msgid "Parent Item"
msgstr ""
@@ -8221,7 +8249,7 @@ msgid "Available Quantity"
msgstr ""
#: stock/templates/stock/item_base.html:394
-#: templates/js/translated/build.js:2015
+#: templates/js/translated/build.js:2306
msgid "No location set"
msgstr ""
@@ -8239,7 +8267,7 @@ msgid "This StockItem expired on %(item.expiry_date)s"
msgstr ""
#: stock/templates/stock/item_base.html:433
-#: templates/js/translated/table_filters.js:381
+#: templates/js/translated/table_filters.js:387
msgid "Expired"
msgstr ""
@@ -8249,7 +8277,7 @@ msgid "This StockItem expires on %(item.expiry_date)s"
msgstr ""
#: stock/templates/stock/item_base.html:435
-#: templates/js/translated/table_filters.js:387
+#: templates/js/translated/table_filters.js:393
msgid "Stale"
msgstr ""
@@ -8258,7 +8286,7 @@ msgid "No stocktake performed"
msgstr ""
#: stock/templates/stock/item_base.html:503
-#: templates/js/translated/stock.js:1745
+#: templates/js/translated/stock.js:1865
msgid "stock item"
msgstr ""
@@ -8364,20 +8392,20 @@ msgstr ""
msgid "New Location"
msgstr ""
-#: stock/templates/stock/location.html:287
-#: templates/js/translated/stock.js:2318
+#: stock/templates/stock/location.html:278
+#: templates/js/translated/stock.js:2449
msgid "stock location"
msgstr ""
-#: stock/templates/stock/location.html:304
+#: stock/templates/stock/location.html:295
msgid "Scanned stock container into this location"
msgstr ""
-#: stock/templates/stock/location.html:377
+#: stock/templates/stock/location.html:368
msgid "Stock Location QR Code"
msgstr ""
-#: stock/templates/stock/location.html:388
+#: stock/templates/stock/location.html:379
msgid "Link Barcode to Stock Location"
msgstr ""
@@ -8451,71 +8479,71 @@ msgstr ""
msgid "Index"
msgstr ""
-#: templates/InvenTree/index.html:89
+#: templates/InvenTree/index.html:39
msgid "Subscribed Parts"
msgstr ""
-#: templates/InvenTree/index.html:102
+#: templates/InvenTree/index.html:53
msgid "Subscribed Categories"
msgstr ""
-#: templates/InvenTree/index.html:112
+#: templates/InvenTree/index.html:63
msgid "Latest Parts"
msgstr ""
-#: templates/InvenTree/index.html:126
+#: templates/InvenTree/index.html:78
msgid "BOM Waiting Validation"
msgstr ""
-#: templates/InvenTree/index.html:155
+#: templates/InvenTree/index.html:107
msgid "Recently Updated"
msgstr ""
-#: templates/InvenTree/index.html:180
+#: templates/InvenTree/index.html:134
msgid "Depleted Stock"
msgstr ""
-#: templates/InvenTree/index.html:193
+#: templates/InvenTree/index.html:148
msgid "Required for Build Orders"
msgstr ""
-#: templates/InvenTree/index.html:208
+#: templates/InvenTree/index.html:156
msgid "Expired Stock"
msgstr ""
-#: templates/InvenTree/index.html:222
+#: templates/InvenTree/index.html:172
msgid "Stale Stock"
msgstr ""
-#: templates/InvenTree/index.html:247
+#: templates/InvenTree/index.html:199
msgid "Build Orders In Progress"
msgstr ""
-#: templates/InvenTree/index.html:258
+#: templates/InvenTree/index.html:210
msgid "Overdue Build Orders"
msgstr ""
-#: templates/InvenTree/index.html:278
+#: templates/InvenTree/index.html:230
msgid "Outstanding Purchase Orders"
msgstr ""
-#: templates/InvenTree/index.html:289
+#: templates/InvenTree/index.html:241
msgid "Overdue Purchase Orders"
msgstr ""
-#: templates/InvenTree/index.html:310
+#: templates/InvenTree/index.html:262
msgid "Outstanding Sales Orders"
msgstr ""
-#: templates/InvenTree/index.html:321
+#: templates/InvenTree/index.html:273
msgid "Overdue Sales Orders"
msgstr ""
-#: templates/InvenTree/index.html:347
+#: templates/InvenTree/index.html:299
msgid "InvenTree News"
msgstr ""
-#: templates/InvenTree/index.html:349
+#: templates/InvenTree/index.html:301
msgid "Current News"
msgstr ""
@@ -8672,29 +8700,29 @@ msgstr ""
msgid "Changing the settings below require you to immediately restart the server. Do not change this while under active usage."
msgstr ""
-#: templates/InvenTree/settings/plugin.html:37
+#: templates/InvenTree/settings/plugin.html:35
#: templates/InvenTree/settings/sidebar.html:64
msgid "Plugins"
msgstr ""
-#: templates/InvenTree/settings/plugin.html:43
+#: templates/InvenTree/settings/plugin.html:41
#: templates/js/translated/plugin.js:151
msgid "Install Plugin"
msgstr ""
-#: templates/InvenTree/settings/plugin.html:51
+#: templates/InvenTree/settings/plugin.html:49
msgid "External plugins are not enabled for this InvenTree installation"
msgstr ""
-#: templates/InvenTree/settings/plugin.html:70
+#: templates/InvenTree/settings/plugin.html:64
msgid "Plugin Error Stack"
msgstr ""
-#: templates/InvenTree/settings/plugin.html:79
+#: templates/InvenTree/settings/plugin.html:73
msgid "Stage"
msgstr ""
-#: templates/InvenTree/settings/plugin.html:81
+#: templates/InvenTree/settings/plugin.html:75
#: templates/js/translated/notification.js:75
msgid "Message"
msgstr ""
@@ -8767,14 +8795,6 @@ msgstr ""
msgid "Commit Message"
msgstr ""
-#: templates/InvenTree/settings/plugin_settings.html:126
-msgid "Sign Status"
-msgstr ""
-
-#: templates/InvenTree/settings/plugin_settings.html:131
-msgid "Sign Key"
-msgstr ""
-
#: templates/InvenTree/settings/po.html:7
msgid "Purchase Order Settings"
msgstr ""
@@ -8870,12 +8890,12 @@ msgid "No category parameter templates found"
msgstr ""
#: templates/InvenTree/settings/settings_staff_js.html:212
-#: templates/js/translated/part.js:1618
+#: templates/js/translated/part.js:1617
msgid "Edit Template"
msgstr ""
#: templates/InvenTree/settings/settings_staff_js.html:213
-#: templates/js/translated/part.js:1619
+#: templates/js/translated/part.js:1618
msgid "Delete Template"
msgstr ""
@@ -8913,7 +8933,7 @@ msgid "Home Page"
msgstr ""
#: templates/InvenTree/settings/sidebar.html:15
-#: templates/js/translated/tables.js:575 templates/navbar.html:107
+#: templates/js/translated/tables.js:551 templates/navbar.html:107
#: templates/search.html:8 templates/search_form.html:6
#: templates/search_form.html:7
msgid "Search"
@@ -8979,17 +8999,18 @@ msgstr ""
#: templates/InvenTree/settings/user.html:55
msgid "The following email addresses are associated with your account:"
-msgstr ""
+msgstr "Alamat surel berikut dikaitkan dengan akun Anda:"
#: templates/InvenTree/settings/user.html:76
msgid "Verified"
-msgstr ""
+msgstr "Terverifikasi"
#: templates/InvenTree/settings/user.html:78
msgid "Unverified"
-msgstr ""
+msgstr "Tidak terverifikasi"
#: templates/InvenTree/settings/user.html:80
+#: templates/js/translated/company.js:984
msgid "Primary"
msgstr ""
@@ -9011,15 +9032,15 @@ msgstr ""
#: templates/InvenTree/settings/user.html:105
msgid "Add Email Address"
-msgstr ""
+msgstr "Tambah Alamat Surel"
#: templates/InvenTree/settings/user.html:110
msgid "Add Email"
-msgstr ""
+msgstr "Tambah Surel"
#: templates/InvenTree/settings/user.html:120
msgid "Multifactor"
-msgstr ""
+msgstr "Multifaktor"
#: templates/InvenTree/settings/user.html:125
msgid "You have these factors available:"
@@ -9027,7 +9048,7 @@ msgstr ""
#: templates/InvenTree/settings/user.html:135
msgid "TOTP"
-msgstr ""
+msgstr "TOTP"
#: templates/InvenTree/settings/user.html:141
msgid "Static"
@@ -9071,15 +9092,15 @@ msgstr ""
#: templates/InvenTree/settings/user.html:189
msgid "IP Address"
-msgstr ""
+msgstr "Alamat IP"
#: templates/InvenTree/settings/user.html:190
msgid "Device"
-msgstr ""
+msgstr "Perangkat"
#: templates/InvenTree/settings/user.html:191
msgid "Last Activity"
-msgstr ""
+msgstr "Aktivitas Terakhir"
#: templates/InvenTree/settings/user.html:204
#, python-format
@@ -9093,7 +9114,7 @@ msgstr ""
#: templates/InvenTree/settings/user.html:218
msgid "Do you really want to remove the selected email address?"
-msgstr ""
+msgstr "Apakah Anda benar-benar ingin menghapus alamat surel yang dipilih?"
#: templates/InvenTree/settings/user_display.html:9
msgid "Display Settings"
@@ -9113,7 +9134,7 @@ msgstr ""
#: templates/InvenTree/settings/user_display.html:58
msgid "Language Settings"
-msgstr ""
+msgstr "Pengaturan Bahasa"
#: templates/InvenTree/settings/user_display.html:67
msgid "Select language"
@@ -9166,7 +9187,7 @@ msgstr ""
#: templates/InvenTree/settings/user_search.html:9
msgid "Search Settings"
-msgstr ""
+msgstr "Pengaturan Pencarian"
#: templates/InvenTree/settings/user_sso.html:9
msgid "Single Sign On Accounts"
@@ -9204,44 +9225,48 @@ msgstr ""
msgid "Update Available"
msgstr ""
-#: templates/about.html:42
+#: templates/about.html:43
+msgid "Commit Branch"
+msgstr ""
+
+#: templates/about.html:49
msgid "InvenTree Documentation"
msgstr ""
-#: templates/about.html:47
+#: templates/about.html:54
msgid "API Version"
msgstr ""
-#: templates/about.html:52
+#: templates/about.html:59
msgid "Python Version"
msgstr ""
-#: templates/about.html:57
+#: templates/about.html:64
msgid "Django Version"
msgstr ""
-#: templates/about.html:62
+#: templates/about.html:69
msgid "View Code on GitHub"
msgstr ""
-#: templates/about.html:67
+#: templates/about.html:74
msgid "Credits"
msgstr ""
-#: templates/about.html:72
+#: templates/about.html:79
msgid "Mobile App"
msgstr ""
-#: templates/about.html:77
+#: templates/about.html:84
msgid "Submit Bug Report"
msgstr ""
-#: templates/about.html:84 templates/clip.html:4
+#: templates/about.html:91 templates/clip.html:4
#: templates/js/translated/helpers.js:585
msgid "copy to clipboard"
msgstr ""
-#: templates/about.html:84
+#: templates/about.html:91
msgid "copy version information"
msgstr ""
@@ -9252,12 +9277,12 @@ msgstr ""
#: templates/account/email_confirm.html:6
#: templates/account/email_confirm.html:9
msgid "Confirm Email Address"
-msgstr ""
+msgstr "Konfirmasi alamat surel"
#: templates/account/email_confirm.html:15
#, python-format
msgid "Please confirm that %(email)s is an email address for user %(user_display)s."
-msgstr ""
+msgstr "Harap konfirmasikan bahwa %(email)s adalah alamat surel untuk pengguna %(user_display)s."
#: templates/account/email_confirm.html:21 templates/js/translated/forms.js:726
msgid "Confirm"
@@ -9312,7 +9337,7 @@ msgstr ""
#: templates/account/password_reset.html:18
msgid "Forgotten your password? Enter your email address below, and we'll send you an email allowing you to reset it."
-msgstr ""
+msgstr "Lupa kata sandi? Masukkan alamat surel Anda di bawah ini, dan kami akan mengirimkan surel yang memungkinkan Anda untuk mengatur ulangnya."
#: templates/account/password_reset.html:23
msgid "Reset My Password"
@@ -9369,7 +9394,7 @@ msgstr ""
#: templates/allauth_2fa/authenticate.html:5
msgid "Two-Factor Authentication"
-msgstr ""
+msgstr "Autentikasi Dua-Faktor"
#: templates/allauth_2fa/authenticate.html:13
msgid "Authenticate"
@@ -9377,7 +9402,7 @@ msgstr ""
#: templates/allauth_2fa/backup_tokens.html:6
msgid "Two-Factor Authentication Backup Tokens"
-msgstr ""
+msgstr "Token Cadangan untuk Autentikasi Dua-Faktor"
#: templates/allauth_2fa/backup_tokens.html:17
msgid "Backup tokens have been generated, but are not revealed here for security reasons. Press the button below to generate new ones."
@@ -9435,14 +9460,6 @@ msgstr ""
msgid "Add Attachment"
msgstr ""
-#: templates/attachment_table.html:11
-msgid "Delete selected attachments"
-msgstr ""
-
-#: templates/attachment_table.html:12 templates/js/translated/attachment.js:129
-msgid "Delete Attachments"
-msgstr ""
-
#: templates/barcode_data.html:5
msgid "Barcode Identifier"
msgstr ""
@@ -9487,21 +9504,21 @@ msgid "The following parts are low on required stock"
msgstr ""
#: templates/email/build_order_required_stock.html:18
-#: templates/js/translated/bom.js:1633
+#: templates/js/translated/bom.js:1653 templates/js/translated/build.js:2485
msgid "Required Quantity"
msgstr ""
#: templates/email/build_order_required_stock.html:38
#: templates/email/low_stock_notification.html:30
msgid "You are receiving this email because you are subscribed to notifications for this part "
-msgstr ""
+msgstr "Anda menerima surel ini karena Anda berlangganan pemberitahuan untuk bagian ini "
#: templates/email/low_stock_notification.html:9
msgid "Click on the following link to view this part"
msgstr ""
#: templates/email/low_stock_notification.html:18
-#: templates/js/translated/part.js:3140
+#: templates/js/translated/part.js:3125
msgid "Minimum Quantity"
msgstr ""
@@ -9573,23 +9590,35 @@ msgstr ""
msgid "All selected attachments will be deleted"
msgstr ""
-#: templates/js/translated/attachment.js:255
+#: templates/js/translated/attachment.js:129
+msgid "Delete Attachments"
+msgstr ""
+
+#: templates/js/translated/attachment.js:205
+msgid "Delete attachments"
+msgstr ""
+
+#: templates/js/translated/attachment.js:253
+msgid "Attachment actions"
+msgstr ""
+
+#: templates/js/translated/attachment.js:275
msgid "No attachments found"
msgstr ""
-#: templates/js/translated/attachment.js:285
+#: templates/js/translated/attachment.js:305
msgid "Edit Attachment"
msgstr ""
-#: templates/js/translated/attachment.js:326
+#: templates/js/translated/attachment.js:336
msgid "Upload Date"
msgstr ""
-#: templates/js/translated/attachment.js:346
+#: templates/js/translated/attachment.js:356
msgid "Edit attachment"
msgstr ""
-#: templates/js/translated/attachment.js:354
+#: templates/js/translated/attachment.js:364
msgid "Delete attachment"
msgstr ""
@@ -9646,7 +9675,7 @@ msgstr ""
msgid "Unlink"
msgstr ""
-#: templates/js/translated/barcode.js:550 templates/js/translated/stock.js:1118
+#: templates/js/translated/barcode.js:550 templates/js/translated/stock.js:1117
msgid "Remove stock item"
msgstr ""
@@ -9704,775 +9733,869 @@ msgstr ""
msgid "Barcode does not match a valid location"
msgstr ""
-#: templates/js/translated/bom.js:77
+#: templates/js/translated/bom.js:78
msgid "Create BOM Item"
msgstr ""
-#: templates/js/translated/bom.js:131
+#: templates/js/translated/bom.js:132
msgid "Display row data"
msgstr ""
-#: templates/js/translated/bom.js:187
+#: templates/js/translated/bom.js:188
msgid "Row Data"
msgstr ""
-#: templates/js/translated/bom.js:188 templates/js/translated/bom.js:699
+#: templates/js/translated/bom.js:189 templates/js/translated/bom.js:700
#: templates/js/translated/modals.js:71 templates/js/translated/modals.js:622
#: templates/js/translated/modals.js:746 templates/js/translated/modals.js:1054
-#: templates/js/translated/purchase_order.js:791 templates/modals.html:15
+#: templates/js/translated/purchase_order.js:802 templates/modals.html:15
#: templates/modals.html:27 templates/modals.html:39 templates/modals.html:50
msgid "Close"
msgstr ""
-#: templates/js/translated/bom.js:305
+#: templates/js/translated/bom.js:306
msgid "Download BOM Template"
msgstr ""
-#: templates/js/translated/bom.js:350
+#: templates/js/translated/bom.js:351
msgid "Multi Level BOM"
msgstr ""
-#: templates/js/translated/bom.js:351
+#: templates/js/translated/bom.js:352
msgid "Include BOM data for subassemblies"
msgstr ""
-#: templates/js/translated/bom.js:356
+#: templates/js/translated/bom.js:357
msgid "Levels"
msgstr ""
-#: templates/js/translated/bom.js:357
+#: templates/js/translated/bom.js:358
msgid "Select maximum number of BOM levels to export (0 = all levels)"
msgstr ""
-#: templates/js/translated/bom.js:364
+#: templates/js/translated/bom.js:365
msgid "Include Alternative Parts"
msgstr ""
-#: templates/js/translated/bom.js:365
+#: templates/js/translated/bom.js:366
msgid "Include alternative parts in exported BOM"
msgstr ""
-#: templates/js/translated/bom.js:370
+#: templates/js/translated/bom.js:371
msgid "Include Parameter Data"
msgstr ""
-#: templates/js/translated/bom.js:371
+#: templates/js/translated/bom.js:372
msgid "Include part parameter data in exported BOM"
msgstr ""
-#: templates/js/translated/bom.js:376
+#: templates/js/translated/bom.js:377
msgid "Include Stock Data"
msgstr ""
-#: templates/js/translated/bom.js:377
+#: templates/js/translated/bom.js:378
msgid "Include part stock data in exported BOM"
msgstr ""
-#: templates/js/translated/bom.js:382
+#: templates/js/translated/bom.js:383
msgid "Include Manufacturer Data"
msgstr ""
-#: templates/js/translated/bom.js:383
+#: templates/js/translated/bom.js:384
msgid "Include part manufacturer data in exported BOM"
msgstr ""
-#: templates/js/translated/bom.js:388
+#: templates/js/translated/bom.js:389
msgid "Include Supplier Data"
msgstr ""
-#: templates/js/translated/bom.js:389
+#: templates/js/translated/bom.js:390
msgid "Include part supplier data in exported BOM"
msgstr ""
-#: templates/js/translated/bom.js:394
+#: templates/js/translated/bom.js:395
msgid "Include Pricing Data"
msgstr ""
-#: templates/js/translated/bom.js:395
+#: templates/js/translated/bom.js:396
msgid "Include part pricing data in exported BOM"
msgstr ""
-#: templates/js/translated/bom.js:590
+#: templates/js/translated/bom.js:591
msgid "Remove substitute part"
msgstr ""
-#: templates/js/translated/bom.js:644
+#: templates/js/translated/bom.js:645
msgid "Select and add a new substitute part using the input below"
msgstr ""
-#: templates/js/translated/bom.js:655
+#: templates/js/translated/bom.js:656
msgid "Are you sure you wish to remove this substitute part link?"
msgstr ""
-#: templates/js/translated/bom.js:661
+#: templates/js/translated/bom.js:662
msgid "Remove Substitute Part"
msgstr ""
-#: templates/js/translated/bom.js:700
+#: templates/js/translated/bom.js:701
msgid "Add Substitute"
msgstr ""
-#: templates/js/translated/bom.js:701
+#: templates/js/translated/bom.js:702
msgid "Edit BOM Item Substitutes"
msgstr ""
-#: templates/js/translated/bom.js:763
+#: templates/js/translated/bom.js:764
msgid "All selected BOM items will be deleted"
msgstr ""
-#: templates/js/translated/bom.js:779
+#: templates/js/translated/bom.js:780
msgid "Delete selected BOM items?"
msgstr ""
-#: templates/js/translated/bom.js:906
+#: templates/js/translated/bom.js:826
+msgid "Delete items"
+msgstr ""
+
+#: templates/js/translated/bom.js:924
msgid "Load BOM for subassembly"
msgstr ""
-#: templates/js/translated/bom.js:916
+#: templates/js/translated/bom.js:934
msgid "Substitutes Available"
msgstr ""
-#: templates/js/translated/bom.js:920 templates/js/translated/build.js:2090
+#: templates/js/translated/bom.js:938 templates/js/translated/build.js:2429
msgid "Variant stock allowed"
msgstr ""
-#: templates/js/translated/bom.js:984
+#: templates/js/translated/bom.js:1002
msgid "Substitutes"
msgstr ""
-#: templates/js/translated/bom.js:1104
+#: templates/js/translated/bom.js:1122
msgid "BOM pricing is complete"
msgstr ""
-#: templates/js/translated/bom.js:1109
+#: templates/js/translated/bom.js:1127
msgid "BOM pricing is incomplete"
msgstr ""
-#: templates/js/translated/bom.js:1116
+#: templates/js/translated/bom.js:1134
msgid "No pricing available"
msgstr ""
-#: templates/js/translated/bom.js:1147 templates/js/translated/build.js:2173
-#: templates/js/translated/sales_order.js:1887
+#: templates/js/translated/bom.js:1165 templates/js/translated/build.js:2523
+#: templates/js/translated/sales_order.js:1899
msgid "No Stock Available"
msgstr ""
-#: templates/js/translated/bom.js:1152 templates/js/translated/build.js:2177
+#: templates/js/translated/bom.js:1170 templates/js/translated/build.js:2527
msgid "Includes variant and substitute stock"
msgstr ""
-#: templates/js/translated/bom.js:1154 templates/js/translated/build.js:2179
-#: templates/js/translated/part.js:1230
+#: templates/js/translated/bom.js:1172 templates/js/translated/build.js:2529
+#: templates/js/translated/part.js:1229
msgid "Includes variant stock"
msgstr ""
-#: templates/js/translated/bom.js:1156 templates/js/translated/build.js:2181
+#: templates/js/translated/bom.js:1174 templates/js/translated/build.js:2531
msgid "Includes substitute stock"
msgstr ""
-#: templates/js/translated/bom.js:1184 templates/js/translated/build.js:2164
-#: templates/js/translated/build.js:2255
+#: templates/js/translated/bom.js:1204 templates/js/translated/build.js:2514
msgid "Consumable item"
msgstr ""
-#: templates/js/translated/bom.js:1244
+#: templates/js/translated/bom.js:1264
msgid "Validate BOM Item"
msgstr ""
-#: templates/js/translated/bom.js:1246
+#: templates/js/translated/bom.js:1266
msgid "This line has been validated"
msgstr ""
-#: templates/js/translated/bom.js:1248
+#: templates/js/translated/bom.js:1268
msgid "Edit substitute parts"
msgstr ""
-#: templates/js/translated/bom.js:1250 templates/js/translated/bom.js:1445
+#: templates/js/translated/bom.js:1270 templates/js/translated/bom.js:1465
msgid "Edit BOM Item"
msgstr ""
-#: templates/js/translated/bom.js:1252
+#: templates/js/translated/bom.js:1272
msgid "Delete BOM Item"
msgstr ""
-#: templates/js/translated/bom.js:1272
+#: templates/js/translated/bom.js:1292
msgid "View BOM"
msgstr ""
-#: templates/js/translated/bom.js:1356 templates/js/translated/build.js:1927
+#: templates/js/translated/bom.js:1376
msgid "No BOM items found"
msgstr ""
-#: templates/js/translated/bom.js:1616 templates/js/translated/build.js:2073
+#: templates/js/translated/bom.js:1636 templates/js/translated/build.js:2414
msgid "Required Part"
msgstr ""
-#: templates/js/translated/bom.js:1642
+#: templates/js/translated/bom.js:1662
msgid "Inherited from parent BOM"
msgstr ""
-#: templates/js/translated/build.js:126
+#: templates/js/translated/build.js:136
msgid "Edit Build Order"
msgstr ""
-#: templates/js/translated/build.js:169
+#: templates/js/translated/build.js:179
msgid "Create Build Order"
msgstr ""
-#: templates/js/translated/build.js:202
+#: templates/js/translated/build.js:211
msgid "Cancel Build Order"
msgstr ""
-#: templates/js/translated/build.js:211
+#: templates/js/translated/build.js:220
msgid "Are you sure you wish to cancel this build?"
msgstr ""
-#: templates/js/translated/build.js:217
+#: templates/js/translated/build.js:226
msgid "Stock items have been allocated to this build order"
msgstr ""
-#: templates/js/translated/build.js:224
+#: templates/js/translated/build.js:233
msgid "There are incomplete outputs remaining for this build order"
msgstr ""
-#: templates/js/translated/build.js:276
+#: templates/js/translated/build.js:285
msgid "Build order is ready to be completed"
msgstr ""
-#: templates/js/translated/build.js:284
+#: templates/js/translated/build.js:293
msgid "This build order cannot be completed as there are incomplete outputs"
msgstr ""
-#: templates/js/translated/build.js:289
+#: templates/js/translated/build.js:298
msgid "Build Order is incomplete"
msgstr ""
-#: templates/js/translated/build.js:307
+#: templates/js/translated/build.js:316
msgid "Complete Build Order"
msgstr ""
-#: templates/js/translated/build.js:348 templates/js/translated/stock.js:119
-#: templates/js/translated/stock.js:265
+#: templates/js/translated/build.js:357 templates/js/translated/stock.js:118
+#: templates/js/translated/stock.js:264
msgid "Next available serial number"
msgstr ""
-#: templates/js/translated/build.js:350 templates/js/translated/stock.js:121
-#: templates/js/translated/stock.js:267
+#: templates/js/translated/build.js:359 templates/js/translated/stock.js:120
+#: templates/js/translated/stock.js:266
msgid "Latest serial number"
msgstr ""
-#: templates/js/translated/build.js:359
+#: templates/js/translated/build.js:368
msgid "The Bill of Materials contains trackable parts"
msgstr ""
-#: templates/js/translated/build.js:360
+#: templates/js/translated/build.js:369
msgid "Build outputs must be generated individually"
msgstr ""
-#: templates/js/translated/build.js:368
+#: templates/js/translated/build.js:377
msgid "Trackable parts can have serial numbers specified"
msgstr ""
-#: templates/js/translated/build.js:369
+#: templates/js/translated/build.js:378
msgid "Enter serial numbers to generate multiple single build outputs"
msgstr ""
-#: templates/js/translated/build.js:376
+#: templates/js/translated/build.js:385
msgid "Create Build Output"
msgstr ""
-#: templates/js/translated/build.js:407
+#: templates/js/translated/build.js:416
msgid "Allocate stock items to this build output"
msgstr ""
-#: templates/js/translated/build.js:418
-msgid "Unallocate stock from build output"
+#: templates/js/translated/build.js:424
+msgid "Deallocate stock from build output"
msgstr ""
-#: templates/js/translated/build.js:427
+#: templates/js/translated/build.js:433
msgid "Complete build output"
msgstr ""
-#: templates/js/translated/build.js:435
+#: templates/js/translated/build.js:441
msgid "Scrap build output"
msgstr ""
-#: templates/js/translated/build.js:442
+#: templates/js/translated/build.js:448
msgid "Delete build output"
msgstr ""
-#: templates/js/translated/build.js:462
-msgid "Are you sure you wish to unallocate stock items from this build?"
+#: templates/js/translated/build.js:468
+msgid "Are you sure you wish to deallocate the selected stock items from this build?"
msgstr ""
-#: templates/js/translated/build.js:480
-msgid "Unallocate Stock Items"
+#: templates/js/translated/build.js:486
+msgid "Deallocate Stock Items"
msgstr ""
-#: templates/js/translated/build.js:566 templates/js/translated/build.js:690
-#: templates/js/translated/build.js:812
+#: templates/js/translated/build.js:572 templates/js/translated/build.js:696
+#: templates/js/translated/build.js:818
msgid "Select Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:567 templates/js/translated/build.js:691
-#: templates/js/translated/build.js:813
+#: templates/js/translated/build.js:573 templates/js/translated/build.js:697
+#: templates/js/translated/build.js:819
msgid "At least one build output must be selected"
msgstr ""
-#: templates/js/translated/build.js:581
+#: templates/js/translated/build.js:587
msgid "Selected build outputs will be marked as complete"
msgstr ""
-#: templates/js/translated/build.js:585 templates/js/translated/build.js:715
-#: templates/js/translated/build.js:835
+#: templates/js/translated/build.js:591 templates/js/translated/build.js:721
+#: templates/js/translated/build.js:841
msgid "Output"
msgstr ""
-#: templates/js/translated/build.js:609
+#: templates/js/translated/build.js:615
msgid "Complete Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:706
+#: templates/js/translated/build.js:712
msgid "Selected build outputs will be marked as scrapped"
msgstr ""
-#: templates/js/translated/build.js:708
+#: templates/js/translated/build.js:714
msgid "Scrapped output are marked as rejected"
msgstr ""
-#: templates/js/translated/build.js:709
+#: templates/js/translated/build.js:715
msgid "Allocated stock items will no longer be available"
msgstr ""
-#: templates/js/translated/build.js:710
+#: templates/js/translated/build.js:716
msgid "The completion status of the build order will not be adjusted"
msgstr ""
-#: templates/js/translated/build.js:737
+#: templates/js/translated/build.js:743
msgid "Scrap Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:827
+#: templates/js/translated/build.js:833
msgid "Selected build outputs will be deleted"
msgstr ""
-#: templates/js/translated/build.js:829
+#: templates/js/translated/build.js:835
msgid "Build output data will be permanently deleted"
msgstr ""
-#: templates/js/translated/build.js:830
+#: templates/js/translated/build.js:836
msgid "Allocated stock items will be returned to stock"
msgstr ""
-#: templates/js/translated/build.js:848
+#: templates/js/translated/build.js:854
msgid "Delete Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:934
+#: templates/js/translated/build.js:941
msgid "No build order allocations found"
msgstr ""
-#: templates/js/translated/build.js:971
+#: templates/js/translated/build.js:970 templates/js/translated/build.js:2270
+msgid "Allocated Quantity"
+msgstr ""
+
+#: templates/js/translated/build.js:984
msgid "Location not specified"
msgstr ""
-#: templates/js/translated/build.js:1047
+#: templates/js/translated/build.js:1006
+msgid "Complete outputs"
+msgstr ""
+
+#: templates/js/translated/build.js:1024
+msgid "Scrap outputs"
+msgstr ""
+
+#: templates/js/translated/build.js:1042
+msgid "Delete outputs"
+msgstr ""
+
+#: templates/js/translated/build.js:1100
msgid "build output"
msgstr ""
-#: templates/js/translated/build.js:1048
+#: templates/js/translated/build.js:1101
msgid "build outputs"
msgstr ""
-#: templates/js/translated/build.js:1383
+#: templates/js/translated/build.js:1105
+msgid "Build output actions"
+msgstr ""
+
+#: templates/js/translated/build.js:1274
msgid "No active build outputs found"
msgstr ""
-#: templates/js/translated/build.js:1457
-msgid "Allocated Stock"
+#: templates/js/translated/build.js:1329
+msgid "Allocated Lines"
msgstr ""
-#: templates/js/translated/build.js:1464
-msgid "No tracked BOM items for this build"
+#: templates/js/translated/build.js:1343
+msgid "Required Tests"
msgstr ""
-#: templates/js/translated/build.js:1486
-msgid "Completed Tests"
-msgstr ""
-
-#: templates/js/translated/build.js:1491
-msgid "No required tests for this build"
-msgstr ""
-
-#: templates/js/translated/build.js:2032 templates/js/translated/build.js:3056
-#: templates/js/translated/sales_order.js:1632
-msgid "Edit stock allocation"
-msgstr ""
-
-#: templates/js/translated/build.js:2034 templates/js/translated/build.js:3057
-#: templates/js/translated/sales_order.js:1633
-msgid "Delete stock allocation"
-msgstr ""
-
-#: templates/js/translated/build.js:2050
-msgid "Edit Allocation"
-msgstr ""
-
-#: templates/js/translated/build.js:2060
-msgid "Remove Allocation"
-msgstr ""
-
-#: templates/js/translated/build.js:2086
-msgid "Substitute parts available"
-msgstr ""
-
-#: templates/js/translated/build.js:2122
-msgid "Quantity Per"
-msgstr ""
-
-#: templates/js/translated/build.js:2167
-#: templates/js/translated/sales_order.js:1894
-msgid "Insufficient stock available"
-msgstr ""
-
-#: templates/js/translated/build.js:2169
-#: templates/js/translated/sales_order.js:1892
-msgid "Sufficient stock available"
-msgstr ""
-
-#: templates/js/translated/build.js:2263
-#: templates/js/translated/sales_order.js:1993
-msgid "Build stock"
-msgstr ""
-
-#: templates/js/translated/build.js:2267 templates/stock_table.html:38
-msgid "Order stock"
-msgstr ""
-
-#: templates/js/translated/build.js:2270
-#: templates/js/translated/sales_order.js:1987
-msgid "Allocate stock"
-msgstr ""
-
-#: templates/js/translated/build.js:2310
-#: templates/js/translated/purchase_order.js:616
-#: templates/js/translated/sales_order.js:1159
+#: templates/js/translated/build.js:1502
+#: templates/js/translated/purchase_order.js:627
+#: templates/js/translated/sales_order.js:1171
msgid "Select Parts"
msgstr ""
-#: templates/js/translated/build.js:2311
-#: templates/js/translated/sales_order.js:1160
+#: templates/js/translated/build.js:1503
+#: templates/js/translated/sales_order.js:1172
msgid "You must select at least one part to allocate"
msgstr ""
-#: templates/js/translated/build.js:2359
-#: templates/js/translated/sales_order.js:1109
+#: templates/js/translated/build.js:1566
+#: templates/js/translated/sales_order.js:1121
msgid "Specify stock allocation quantity"
msgstr ""
-#: templates/js/translated/build.js:2438
+#: templates/js/translated/build.js:1643
msgid "All Parts Allocated"
msgstr ""
-#: templates/js/translated/build.js:2439
+#: templates/js/translated/build.js:1644
msgid "All selected parts have been fully allocated"
msgstr ""
-#: templates/js/translated/build.js:2453
-#: templates/js/translated/sales_order.js:1174
+#: templates/js/translated/build.js:1658
+#: templates/js/translated/sales_order.js:1186
msgid "Select source location (leave blank to take from all locations)"
msgstr ""
-#: templates/js/translated/build.js:2481
+#: templates/js/translated/build.js:1686
msgid "Allocate Stock Items to Build Order"
msgstr ""
-#: templates/js/translated/build.js:2492
-#: templates/js/translated/sales_order.js:1271
+#: templates/js/translated/build.js:1697
+#: templates/js/translated/sales_order.js:1283
msgid "No matching stock locations"
msgstr ""
-#: templates/js/translated/build.js:2565
-#: templates/js/translated/sales_order.js:1348
+#: templates/js/translated/build.js:1770
+#: templates/js/translated/sales_order.js:1360
msgid "No matching stock items"
msgstr ""
-#: templates/js/translated/build.js:2662
+#: templates/js/translated/build.js:1867
msgid "Automatic Stock Allocation"
msgstr ""
-#: templates/js/translated/build.js:2663
+#: templates/js/translated/build.js:1868
msgid "Stock items will be automatically allocated to this build order, according to the provided guidelines"
msgstr ""
-#: templates/js/translated/build.js:2665
+#: templates/js/translated/build.js:1870
msgid "If a location is specified, stock will only be allocated from that location"
msgstr ""
-#: templates/js/translated/build.js:2666
+#: templates/js/translated/build.js:1871
msgid "If stock is considered interchangeable, it will be allocated from the first location it is found"
msgstr ""
-#: templates/js/translated/build.js:2667
+#: templates/js/translated/build.js:1872
msgid "If substitute stock is allowed, it will be used where stock of the primary part cannot be found"
msgstr ""
-#: templates/js/translated/build.js:2694
+#: templates/js/translated/build.js:1899
msgid "Allocate Stock Items"
msgstr ""
-#: templates/js/translated/build.js:2800
+#: templates/js/translated/build.js:2005
msgid "No builds matching query"
msgstr ""
-#: templates/js/translated/build.js:2835 templates/js/translated/part.js:2208
-#: templates/js/translated/part.js:2692 templates/js/translated/stock.js:1759
-#: templates/js/translated/stock.js:2458
+#: templates/js/translated/build.js:2040 templates/js/translated/build.js:2408
+#: templates/js/translated/part.js:2284 templates/js/translated/part.js:2677
+#: templates/js/translated/stock.js:1899 templates/js/translated/stock.js:2589
msgid "Select"
msgstr ""
-#: templates/js/translated/build.js:2849
+#: templates/js/translated/build.js:2054
msgid "Build order is overdue"
msgstr ""
-#: templates/js/translated/build.js:2883
+#: templates/js/translated/build.js:2100
msgid "Progress"
msgstr ""
-#: templates/js/translated/build.js:2919 templates/js/translated/stock.js:2779
+#: templates/js/translated/build.js:2136 templates/js/translated/stock.js:2910
msgid "No user information"
msgstr ""
-#: templates/js/translated/build.js:2934
+#: templates/js/translated/build.js:2151
msgid "group"
msgstr ""
-#: templates/js/translated/build.js:3033
-msgid "No parts allocated for"
+#: templates/js/translated/build.js:2315
+#: templates/js/translated/sales_order.js:1644
+msgid "Edit stock allocation"
msgstr ""
-#: templates/js/translated/company.js:87
+#: templates/js/translated/build.js:2316
+#: templates/js/translated/sales_order.js:1645
+msgid "Delete stock allocation"
+msgstr ""
+
+#: templates/js/translated/build.js:2331
+msgid "Edit Allocation"
+msgstr ""
+
+#: templates/js/translated/build.js:2343
+msgid "Remove Allocation"
+msgstr ""
+
+#: templates/js/translated/build.js:2384
+msgid "build line"
+msgstr ""
+
+#: templates/js/translated/build.js:2385
+msgid "build lines"
+msgstr ""
+
+#: templates/js/translated/build.js:2403
+msgid "No build lines found"
+msgstr ""
+
+#: templates/js/translated/build.js:2433 templates/js/translated/part.js:767
+#: templates/js/translated/part.js:1175
+msgid "Trackable part"
+msgstr ""
+
+#: templates/js/translated/build.js:2468
+msgid "Unit Quantity"
+msgstr ""
+
+#: templates/js/translated/build.js:2517
+#: templates/js/translated/sales_order.js:1906
+msgid "Insufficient stock available"
+msgstr ""
+
+#: templates/js/translated/build.js:2519
+#: templates/js/translated/sales_order.js:1904
+msgid "Sufficient stock available"
+msgstr ""
+
+#: templates/js/translated/build.js:2566
+msgid "Consumable Item"
+msgstr ""
+
+#: templates/js/translated/build.js:2571
+msgid "Tracked item"
+msgstr ""
+
+#: templates/js/translated/build.js:2578
+#: templates/js/translated/sales_order.js:2005
+msgid "Build stock"
+msgstr ""
+
+#: templates/js/translated/build.js:2583 templates/js/translated/stock.js:1779
+msgid "Order stock"
+msgstr ""
+
+#: templates/js/translated/build.js:2587
+#: templates/js/translated/sales_order.js:1999
+msgid "Allocate stock"
+msgstr ""
+
+#: templates/js/translated/build.js:2591
+msgid "Remove stock allocation"
+msgstr ""
+
+#: templates/js/translated/company.js:97
msgid "Add Manufacturer"
msgstr ""
-#: templates/js/translated/company.js:100
-#: templates/js/translated/company.js:202
+#: templates/js/translated/company.js:110
+#: templates/js/translated/company.js:212
msgid "Add Manufacturer Part"
msgstr ""
-#: templates/js/translated/company.js:121
+#: templates/js/translated/company.js:131
msgid "Edit Manufacturer Part"
msgstr ""
-#: templates/js/translated/company.js:190
-#: templates/js/translated/purchase_order.js:94
+#: templates/js/translated/company.js:200
+#: templates/js/translated/purchase_order.js:93
msgid "Add Supplier"
msgstr ""
-#: templates/js/translated/company.js:232
-#: templates/js/translated/purchase_order.js:338
+#: templates/js/translated/company.js:242
+#: templates/js/translated/purchase_order.js:349
msgid "Add Supplier Part"
msgstr ""
-#: templates/js/translated/company.js:333
+#: templates/js/translated/company.js:343
msgid "All selected supplier parts will be deleted"
msgstr ""
-#: templates/js/translated/company.js:349
+#: templates/js/translated/company.js:359
msgid "Delete Supplier Parts"
msgstr ""
-#: templates/js/translated/company.js:457
+#: templates/js/translated/company.js:464
msgid "Add new Company"
msgstr ""
-#: templates/js/translated/company.js:528
+#: templates/js/translated/company.js:535
msgid "Parts Supplied"
msgstr ""
-#: templates/js/translated/company.js:537
+#: templates/js/translated/company.js:544
msgid "Parts Manufactured"
msgstr ""
-#: templates/js/translated/company.js:552
+#: templates/js/translated/company.js:559
msgid "No company information found"
msgstr ""
-#: templates/js/translated/company.js:601
+#: templates/js/translated/company.js:608
msgid "Create New Contact"
msgstr ""
-#: templates/js/translated/company.js:617
-#: templates/js/translated/company.js:740
+#: templates/js/translated/company.js:624
+#: templates/js/translated/company.js:747
msgid "Edit Contact"
msgstr ""
-#: templates/js/translated/company.js:654
+#: templates/js/translated/company.js:661
msgid "All selected contacts will be deleted"
msgstr ""
-#: templates/js/translated/company.js:660
-#: templates/js/translated/company.js:724
+#: templates/js/translated/company.js:667
+#: templates/js/translated/company.js:731
msgid "Role"
msgstr ""
-#: templates/js/translated/company.js:668
+#: templates/js/translated/company.js:675
msgid "Delete Contacts"
msgstr ""
-#: templates/js/translated/company.js:699
+#: templates/js/translated/company.js:706
msgid "No contacts found"
msgstr ""
-#: templates/js/translated/company.js:712
+#: templates/js/translated/company.js:719
msgid "Phone Number"
msgstr ""
-#: templates/js/translated/company.js:718
+#: templates/js/translated/company.js:725
msgid "Email Address"
-msgstr ""
+msgstr "Alamat Surel"
-#: templates/js/translated/company.js:744
+#: templates/js/translated/company.js:751
msgid "Delete Contact"
msgstr ""
-#: templates/js/translated/company.js:818
+#: templates/js/translated/company.js:886
+msgid "Create New Address"
+msgstr ""
+
+#: templates/js/translated/company.js:901
+#: templates/js/translated/company.js:1066
+msgid "Edit Address"
+msgstr ""
+
+#: templates/js/translated/company.js:936
+msgid "All selected addresses will be deleted"
+msgstr ""
+
+#: templates/js/translated/company.js:950
+msgid "Delete Addresses"
+msgstr ""
+
+#: templates/js/translated/company.js:977
+msgid "No addresses found"
+msgstr ""
+
+#: templates/js/translated/company.js:1020
+msgid "Postal city"
+msgstr ""
+
+#: templates/js/translated/company.js:1026
+msgid "State/province"
+msgstr ""
+
+#: templates/js/translated/company.js:1038
+msgid "Courier notes"
+msgstr ""
+
+#: templates/js/translated/company.js:1044
+msgid "Internal notes"
+msgstr ""
+
+#: templates/js/translated/company.js:1070
+msgid "Delete Address"
+msgstr ""
+
+#: templates/js/translated/company.js:1143
msgid "All selected manufacturer parts will be deleted"
msgstr ""
-#: templates/js/translated/company.js:833
+#: templates/js/translated/company.js:1158
msgid "Delete Manufacturer Parts"
msgstr ""
-#: templates/js/translated/company.js:867
+#: templates/js/translated/company.js:1192
msgid "All selected parameters will be deleted"
msgstr ""
-#: templates/js/translated/company.js:881
+#: templates/js/translated/company.js:1206
msgid "Delete Parameters"
msgstr ""
-#: templates/js/translated/company.js:917
+#: templates/js/translated/company.js:1222
+#: templates/js/translated/company.js:1510 templates/js/translated/part.js:2213
+msgid "Order parts"
+msgstr ""
+
+#: templates/js/translated/company.js:1239
+msgid "Delete manufacturer parts"
+msgstr ""
+
+#: templates/js/translated/company.js:1271
+msgid "Manufacturer part actions"
+msgstr ""
+
+#: templates/js/translated/company.js:1290
msgid "No manufacturer parts found"
msgstr ""
-#: templates/js/translated/company.js:937
-#: templates/js/translated/company.js:1177 templates/js/translated/part.js:776
-#: templates/js/translated/part.js:1184
+#: templates/js/translated/company.js:1310
+#: templates/js/translated/company.js:1598 templates/js/translated/part.js:775
+#: templates/js/translated/part.js:1183
msgid "Template part"
msgstr ""
-#: templates/js/translated/company.js:941
-#: templates/js/translated/company.js:1181 templates/js/translated/part.js:780
-#: templates/js/translated/part.js:1188
+#: templates/js/translated/company.js:1314
+#: templates/js/translated/company.js:1602 templates/js/translated/part.js:779
+#: templates/js/translated/part.js:1187
msgid "Assembled part"
msgstr ""
-#: templates/js/translated/company.js:1061 templates/js/translated/part.js:1437
+#: templates/js/translated/company.js:1434 templates/js/translated/part.js:1436
msgid "No parameters found"
msgstr ""
-#: templates/js/translated/company.js:1096 templates/js/translated/part.js:1500
+#: templates/js/translated/company.js:1469 templates/js/translated/part.js:1499
msgid "Edit parameter"
msgstr ""
-#: templates/js/translated/company.js:1097 templates/js/translated/part.js:1501
+#: templates/js/translated/company.js:1470 templates/js/translated/part.js:1500
msgid "Delete parameter"
msgstr ""
-#: templates/js/translated/company.js:1114 templates/js/translated/part.js:1407
+#: templates/js/translated/company.js:1487 templates/js/translated/part.js:1406
msgid "Edit Parameter"
msgstr ""
-#: templates/js/translated/company.js:1123 templates/js/translated/part.js:1522
+#: templates/js/translated/company.js:1496 templates/js/translated/part.js:1521
msgid "Delete Parameter"
msgstr ""
-#: templates/js/translated/company.js:1156
+#: templates/js/translated/company.js:1527
+msgid "Delete supplier parts"
+msgstr ""
+
+#: templates/js/translated/company.js:1577
msgid "No supplier parts found"
msgstr ""
-#: templates/js/translated/company.js:1274
+#: templates/js/translated/company.js:1695
msgid "Base Units"
msgstr ""
-#: templates/js/translated/company.js:1304
+#: templates/js/translated/company.js:1725
msgid "Availability"
msgstr ""
-#: templates/js/translated/company.js:1335
+#: templates/js/translated/company.js:1756
msgid "Edit supplier part"
msgstr ""
-#: templates/js/translated/company.js:1336
+#: templates/js/translated/company.js:1757
msgid "Delete supplier part"
msgstr ""
-#: templates/js/translated/company.js:1389
+#: templates/js/translated/company.js:1810
#: templates/js/translated/pricing.js:694
msgid "Delete Price Break"
msgstr ""
-#: templates/js/translated/company.js:1399
+#: templates/js/translated/company.js:1820
#: templates/js/translated/pricing.js:712
msgid "Edit Price Break"
msgstr ""
-#: templates/js/translated/company.js:1414
+#: templates/js/translated/company.js:1835
msgid "No price break information found"
msgstr ""
-#: templates/js/translated/company.js:1443
+#: templates/js/translated/company.js:1864
msgid "Last updated"
msgstr ""
-#: templates/js/translated/company.js:1450
+#: templates/js/translated/company.js:1871
msgid "Edit price break"
msgstr ""
-#: templates/js/translated/company.js:1451
+#: templates/js/translated/company.js:1872
msgid "Delete price break"
msgstr ""
-#: templates/js/translated/filters.js:186
-#: templates/js/translated/filters.js:550
+#: templates/js/translated/filters.js:187
+#: templates/js/translated/filters.js:673
msgid "true"
msgstr ""
-#: templates/js/translated/filters.js:190
-#: templates/js/translated/filters.js:551
+#: templates/js/translated/filters.js:191
+#: templates/js/translated/filters.js:674
msgid "false"
msgstr ""
-#: templates/js/translated/filters.js:214
+#: templates/js/translated/filters.js:215
msgid "Select filter"
msgstr ""
-#: templates/js/translated/filters.js:328
+#: templates/js/translated/filters.js:438
msgid "Print Labels"
msgstr ""
-#: templates/js/translated/filters.js:332
+#: templates/js/translated/filters.js:442
msgid "Print Reports"
msgstr ""
-#: templates/js/translated/filters.js:344
+#: templates/js/translated/filters.js:454
msgid "Download table data"
msgstr ""
-#: templates/js/translated/filters.js:351
+#: templates/js/translated/filters.js:461
msgid "Reload table data"
msgstr ""
-#: templates/js/translated/filters.js:360
+#: templates/js/translated/filters.js:470
msgid "Add new filter"
msgstr ""
-#: templates/js/translated/filters.js:368
+#: templates/js/translated/filters.js:478
msgid "Clear all filters"
msgstr ""
-#: templates/js/translated/filters.js:460
+#: templates/js/translated/filters.js:583
msgid "Create filter"
msgstr ""
@@ -10497,6 +10620,12 @@ msgstr ""
msgid "View operation not allowed"
msgstr ""
+#: templates/js/translated/forms.js:506 templates/js/translated/helpers.js:105
+#: templates/js/translated/part.js:369 templates/js/translated/pricing.js:629
+#: templates/js/translated/stock.js:215 users/models.py:253
+msgid "Delete"
+msgstr ""
+
#: templates/js/translated/forms.js:752
msgid "Keep this form open"
msgstr ""
@@ -10514,23 +10643,23 @@ msgstr ""
msgid "No results found"
msgstr ""
-#: templates/js/translated/forms.js:2071 templates/js/translated/search.js:281
+#: templates/js/translated/forms.js:2071 templates/js/translated/search.js:239
msgid "Searching"
msgstr ""
-#: templates/js/translated/forms.js:2276
+#: templates/js/translated/forms.js:2285
msgid "Clear input"
msgstr ""
-#: templates/js/translated/forms.js:2733
+#: templates/js/translated/forms.js:2742
msgid "File Column"
msgstr ""
-#: templates/js/translated/forms.js:2733
+#: templates/js/translated/forms.js:2742
msgid "Field Name"
msgstr ""
-#: templates/js/translated/forms.js:2745
+#: templates/js/translated/forms.js:2754
msgid "Select Columns"
msgstr ""
@@ -10550,6 +10679,14 @@ msgstr ""
msgid "False"
msgstr ""
+#: templates/js/translated/index.js:99
+msgid "No parts required for builds"
+msgstr ""
+
+#: templates/js/translated/index.js:125
+msgid "Allocated Stock"
+msgstr ""
+
#: templates/js/translated/label.js:58
msgid "Select Printer"
msgstr ""
@@ -10651,7 +10788,7 @@ msgstr ""
#: templates/js/translated/news.js:38
#: templates/js/translated/notification.js:45
-#: templates/js/translated/part.js:1577
+#: templates/js/translated/part.js:1576
msgid "ID"
msgstr ""
@@ -10700,7 +10837,7 @@ msgid "Delete Line"
msgstr ""
#: templates/js/translated/order.js:281
-#: templates/js/translated/purchase_order.js:1958
+#: templates/js/translated/purchase_order.js:1968
msgid "No line items found"
msgstr ""
@@ -10716,363 +10853,355 @@ msgstr ""
msgid "Delete line"
msgstr ""
-#: templates/js/translated/part.js:91
+#: templates/js/translated/part.js:90
msgid "Part Attributes"
msgstr ""
-#: templates/js/translated/part.js:95
+#: templates/js/translated/part.js:94
msgid "Part Creation Options"
msgstr ""
-#: templates/js/translated/part.js:99
+#: templates/js/translated/part.js:98
msgid "Part Duplication Options"
msgstr ""
-#: templates/js/translated/part.js:122
+#: templates/js/translated/part.js:121
msgid "Add Part Category"
msgstr ""
-#: templates/js/translated/part.js:294
+#: templates/js/translated/part.js:293
msgid "Parent part category"
msgstr ""
-#: templates/js/translated/part.js:310 templates/js/translated/stock.js:147
+#: templates/js/translated/part.js:309 templates/js/translated/stock.js:146
msgid "Icon (optional) - Explore all available icons on"
msgstr ""
-#: templates/js/translated/part.js:330
+#: templates/js/translated/part.js:329
msgid "Create Part Category"
msgstr ""
-#: templates/js/translated/part.js:333
+#: templates/js/translated/part.js:332
msgid "Create new category after this one"
msgstr ""
-#: templates/js/translated/part.js:334
+#: templates/js/translated/part.js:333
msgid "Part category created"
msgstr ""
-#: templates/js/translated/part.js:348
+#: templates/js/translated/part.js:347
msgid "Edit Part Category"
msgstr ""
-#: templates/js/translated/part.js:361
+#: templates/js/translated/part.js:360
msgid "Are you sure you want to delete this part category?"
msgstr ""
-#: templates/js/translated/part.js:366
+#: templates/js/translated/part.js:365
msgid "Move to parent category"
msgstr ""
-#: templates/js/translated/part.js:375
+#: templates/js/translated/part.js:374
msgid "Delete Part Category"
msgstr ""
-#: templates/js/translated/part.js:379
+#: templates/js/translated/part.js:378
msgid "Action for parts in this category"
msgstr ""
-#: templates/js/translated/part.js:384
+#: templates/js/translated/part.js:383
msgid "Action for child categories"
msgstr ""
-#: templates/js/translated/part.js:408
+#: templates/js/translated/part.js:407
msgid "Create Part"
msgstr ""
-#: templates/js/translated/part.js:410
+#: templates/js/translated/part.js:409
msgid "Create another part after this one"
msgstr ""
-#: templates/js/translated/part.js:411
+#: templates/js/translated/part.js:410
msgid "Part created successfully"
msgstr ""
-#: templates/js/translated/part.js:439
+#: templates/js/translated/part.js:438
msgid "Edit Part"
msgstr ""
-#: templates/js/translated/part.js:441
+#: templates/js/translated/part.js:440
msgid "Part edited"
msgstr ""
-#: templates/js/translated/part.js:452
+#: templates/js/translated/part.js:451
msgid "Create Part Variant"
msgstr ""
-#: templates/js/translated/part.js:509
+#: templates/js/translated/part.js:508
msgid "Active Part"
msgstr ""
-#: templates/js/translated/part.js:510
+#: templates/js/translated/part.js:509
msgid "Part cannot be deleted as it is currently active"
msgstr ""
-#: templates/js/translated/part.js:524
+#: templates/js/translated/part.js:523
msgid "Deleting this part cannot be reversed"
msgstr ""
-#: templates/js/translated/part.js:526
+#: templates/js/translated/part.js:525
msgid "Any stock items for this part will be deleted"
msgstr ""
-#: templates/js/translated/part.js:527
+#: templates/js/translated/part.js:526
msgid "This part will be removed from any Bills of Material"
msgstr ""
-#: templates/js/translated/part.js:528
+#: templates/js/translated/part.js:527
msgid "All manufacturer and supplier information for this part will be deleted"
msgstr ""
-#: templates/js/translated/part.js:535
+#: templates/js/translated/part.js:534
msgid "Delete Part"
msgstr ""
-#: templates/js/translated/part.js:571
+#: templates/js/translated/part.js:570
msgid "You are subscribed to notifications for this item"
msgstr ""
-#: templates/js/translated/part.js:573
+#: templates/js/translated/part.js:572
msgid "You have subscribed to notifications for this item"
msgstr ""
-#: templates/js/translated/part.js:578
+#: templates/js/translated/part.js:577
msgid "Subscribe to notifications for this item"
msgstr ""
-#: templates/js/translated/part.js:580
+#: templates/js/translated/part.js:579
msgid "You have unsubscribed to notifications for this item"
msgstr ""
-#: templates/js/translated/part.js:597
+#: templates/js/translated/part.js:596
msgid "Validating the BOM will mark each line item as valid"
msgstr ""
-#: templates/js/translated/part.js:607
+#: templates/js/translated/part.js:606
msgid "Validate Bill of Materials"
msgstr ""
-#: templates/js/translated/part.js:610
+#: templates/js/translated/part.js:609
msgid "Validated Bill of Materials"
msgstr ""
-#: templates/js/translated/part.js:635
+#: templates/js/translated/part.js:634
msgid "Copy Bill of Materials"
msgstr ""
-#: templates/js/translated/part.js:663
-#: templates/js/translated/table_filters.js:660
+#: templates/js/translated/part.js:662
+#: templates/js/translated/table_filters.js:682
msgid "Low stock"
msgstr ""
-#: templates/js/translated/part.js:666
+#: templates/js/translated/part.js:665
msgid "No stock available"
msgstr ""
-#: templates/js/translated/part.js:726
+#: templates/js/translated/part.js:725
msgid "Demand"
msgstr ""
-#: templates/js/translated/part.js:749
+#: templates/js/translated/part.js:748
msgid "Unit"
msgstr ""
-#: templates/js/translated/part.js:768 templates/js/translated/part.js:1176
-msgid "Trackable part"
-msgstr ""
-
-#: templates/js/translated/part.js:772 templates/js/translated/part.js:1180
+#: templates/js/translated/part.js:771 templates/js/translated/part.js:1179
msgid "Virtual part"
msgstr ""
-#: templates/js/translated/part.js:784
+#: templates/js/translated/part.js:783
msgid "Subscribed part"
msgstr ""
-#: templates/js/translated/part.js:788
+#: templates/js/translated/part.js:787
msgid "Salable part"
msgstr ""
-#: templates/js/translated/part.js:863
+#: templates/js/translated/part.js:862
msgid "Schedule generation of a new stocktake report."
msgstr ""
-#: templates/js/translated/part.js:863
+#: templates/js/translated/part.js:862
msgid "Once complete, the stocktake report will be available for download."
msgstr ""
-#: templates/js/translated/part.js:871
+#: templates/js/translated/part.js:870
msgid "Generate Stocktake Report"
msgstr ""
-#: templates/js/translated/part.js:875
+#: templates/js/translated/part.js:874
msgid "Stocktake report scheduled"
msgstr ""
-#: templates/js/translated/part.js:1024
+#: templates/js/translated/part.js:1023
msgid "No stocktake information available"
msgstr ""
-#: templates/js/translated/part.js:1082 templates/js/translated/part.js:1118
+#: templates/js/translated/part.js:1081 templates/js/translated/part.js:1117
msgid "Edit Stocktake Entry"
msgstr ""
-#: templates/js/translated/part.js:1086 templates/js/translated/part.js:1128
+#: templates/js/translated/part.js:1085 templates/js/translated/part.js:1127
msgid "Delete Stocktake Entry"
msgstr ""
-#: templates/js/translated/part.js:1255
+#: templates/js/translated/part.js:1254
msgid "No variants found"
msgstr ""
-#: templates/js/translated/part.js:1572
+#: templates/js/translated/part.js:1571
msgid "No part parameter templates found"
msgstr ""
-#: templates/js/translated/part.js:1635
+#: templates/js/translated/part.js:1634
msgid "Edit Part Parameter Template"
msgstr ""
-#: templates/js/translated/part.js:1647
+#: templates/js/translated/part.js:1646
msgid "Any parameters which reference this template will also be deleted"
msgstr ""
-#: templates/js/translated/part.js:1655
+#: templates/js/translated/part.js:1654
msgid "Delete Part Parameter Template"
msgstr ""
-#: templates/js/translated/part.js:1689
-#: templates/js/translated/purchase_order.js:1618
+#: templates/js/translated/part.js:1688
+#: templates/js/translated/purchase_order.js:1633
msgid "No purchase orders found"
msgstr ""
-#: templates/js/translated/part.js:1832
-#: templates/js/translated/purchase_order.js:2121
-#: templates/js/translated/return_order.js:740
-#: templates/js/translated/sales_order.js:1855
+#: templates/js/translated/part.js:1831
+#: templates/js/translated/purchase_order.js:2131
+#: templates/js/translated/return_order.js:752
+#: templates/js/translated/sales_order.js:1867
msgid "This line item is overdue"
msgstr ""
-#: templates/js/translated/part.js:1877
-#: templates/js/translated/purchase_order.js:2188
+#: templates/js/translated/part.js:1876
+#: templates/js/translated/purchase_order.js:2198
msgid "Receive line item"
msgstr ""
-#: templates/js/translated/part.js:1944
+#: templates/js/translated/part.js:1943
msgid "Delete part relationship"
msgstr ""
-#: templates/js/translated/part.js:1966
+#: templates/js/translated/part.js:1965
msgid "Delete Part Relationship"
msgstr ""
-#: templates/js/translated/part.js:2054 templates/js/translated/part.js:2366
+#: templates/js/translated/part.js:2053 templates/js/translated/part.js:2442
msgid "No parts found"
msgstr ""
-#: templates/js/translated/part.js:2192
-msgid "parts"
-msgstr ""
-
-#: templates/js/translated/part.js:2276
-msgid "No category"
-msgstr ""
-
-#: templates/js/translated/part.js:2390 templates/js/translated/part.js:2611
-#: templates/js/translated/stock.js:2417
-msgid "Display as list"
-msgstr ""
-
-#: templates/js/translated/part.js:2406
-msgid "Display as grid"
-msgstr ""
-
-#: templates/js/translated/part.js:2472
+#: templates/js/translated/part.js:2174
msgid "Set the part category for the selected parts"
msgstr ""
-#: templates/js/translated/part.js:2477
+#: templates/js/translated/part.js:2179
msgid "Set Part Category"
msgstr ""
+#: templates/js/translated/part.js:2204
+msgid "Set category"
+msgstr ""
+
+#: templates/js/translated/part.js:2259
+msgid "parts"
+msgstr ""
+
+#: templates/js/translated/part.js:2352
+msgid "No category"
+msgstr ""
+
+#: templates/js/translated/part.js:2466 templates/js/translated/part.js:2596
+#: templates/js/translated/stock.js:2548
+msgid "Display as list"
+msgstr ""
+
#: templates/js/translated/part.js:2482
-msgid "Select Part Category"
+msgid "Display as grid"
msgstr ""
-#: templates/js/translated/part.js:2495
-msgid "Category is required"
-msgstr ""
-
-#: templates/js/translated/part.js:2595
+#: templates/js/translated/part.js:2580
msgid "No subcategories found"
msgstr ""
-#: templates/js/translated/part.js:2631 templates/js/translated/stock.js:2437
+#: templates/js/translated/part.js:2616 templates/js/translated/stock.js:2568
msgid "Display as tree"
msgstr ""
-#: templates/js/translated/part.js:2711
+#: templates/js/translated/part.js:2696
msgid "Load Subcategories"
msgstr ""
-#: templates/js/translated/part.js:2727
+#: templates/js/translated/part.js:2712
msgid "Subscribed category"
msgstr ""
-#: templates/js/translated/part.js:2807
+#: templates/js/translated/part.js:2792
msgid "No test templates matching query"
msgstr ""
-#: templates/js/translated/part.js:2858 templates/js/translated/stock.js:1380
+#: templates/js/translated/part.js:2843 templates/js/translated/stock.js:1379
msgid "Edit test result"
msgstr ""
-#: templates/js/translated/part.js:2859 templates/js/translated/stock.js:1381
-#: templates/js/translated/stock.js:1643
+#: templates/js/translated/part.js:2844 templates/js/translated/stock.js:1380
+#: templates/js/translated/stock.js:1642
msgid "Delete test result"
msgstr ""
-#: templates/js/translated/part.js:2863
+#: templates/js/translated/part.js:2848
msgid "This test is defined for a parent part"
msgstr ""
-#: templates/js/translated/part.js:2879
+#: templates/js/translated/part.js:2864
msgid "Edit Test Result Template"
msgstr ""
-#: templates/js/translated/part.js:2893
+#: templates/js/translated/part.js:2878
msgid "Delete Test Result Template"
msgstr ""
-#: templates/js/translated/part.js:2972 templates/js/translated/part.js:2973
+#: templates/js/translated/part.js:2957 templates/js/translated/part.js:2958
msgid "No date specified"
msgstr ""
-#: templates/js/translated/part.js:2975
+#: templates/js/translated/part.js:2960
msgid "Specified date is in the past"
msgstr ""
-#: templates/js/translated/part.js:2981
+#: templates/js/translated/part.js:2966
msgid "Speculative"
msgstr ""
-#: templates/js/translated/part.js:3031
+#: templates/js/translated/part.js:3016
msgid "No scheduling information available for this part"
msgstr ""
-#: templates/js/translated/part.js:3037
+#: templates/js/translated/part.js:3022
msgid "Error fetching scheduling information for this part"
msgstr ""
-#: templates/js/translated/part.js:3133
+#: templates/js/translated/part.js:3118
msgid "Scheduled Stock Quantities"
msgstr ""
-#: templates/js/translated/part.js:3149
+#: templates/js/translated/part.js:3134
msgid "Maximum Quantity"
msgstr ""
-#: templates/js/translated/part.js:3194
+#: templates/js/translated/part.js:3179
msgid "Minimum Stock Level"
msgstr ""
@@ -11168,234 +11297,234 @@ msgstr ""
msgid "Variant Part"
msgstr ""
-#: templates/js/translated/purchase_order.js:155
+#: templates/js/translated/purchase_order.js:166
msgid "Select purchase order to duplicate"
msgstr ""
-#: templates/js/translated/purchase_order.js:162
+#: templates/js/translated/purchase_order.js:173
msgid "Duplicate Line Items"
msgstr ""
-#: templates/js/translated/purchase_order.js:163
+#: templates/js/translated/purchase_order.js:174
msgid "Duplicate all line items from the selected order"
msgstr ""
-#: templates/js/translated/purchase_order.js:170
+#: templates/js/translated/purchase_order.js:181
msgid "Duplicate Extra Lines"
msgstr ""
-#: templates/js/translated/purchase_order.js:171
+#: templates/js/translated/purchase_order.js:182
msgid "Duplicate extra line items from the selected order"
msgstr ""
-#: templates/js/translated/purchase_order.js:192
+#: templates/js/translated/purchase_order.js:203
msgid "Edit Purchase Order"
msgstr ""
-#: templates/js/translated/purchase_order.js:209
+#: templates/js/translated/purchase_order.js:220
msgid "Duplication Options"
msgstr ""
-#: templates/js/translated/purchase_order.js:436
+#: templates/js/translated/purchase_order.js:447
msgid "Complete Purchase Order"
msgstr ""
-#: templates/js/translated/purchase_order.js:453
-#: templates/js/translated/return_order.js:195
-#: templates/js/translated/sales_order.js:485
+#: templates/js/translated/purchase_order.js:464
+#: templates/js/translated/return_order.js:207
+#: templates/js/translated/sales_order.js:497
msgid "Mark this order as complete?"
msgstr ""
-#: templates/js/translated/purchase_order.js:459
+#: templates/js/translated/purchase_order.js:470
msgid "All line items have been received"
msgstr ""
-#: templates/js/translated/purchase_order.js:464
+#: templates/js/translated/purchase_order.js:475
msgid "This order has line items which have not been marked as received."
msgstr ""
-#: templates/js/translated/purchase_order.js:465
-#: templates/js/translated/sales_order.js:499
+#: templates/js/translated/purchase_order.js:476
+#: templates/js/translated/sales_order.js:511
msgid "Completing this order means that the order and line items will no longer be editable."
msgstr ""
-#: templates/js/translated/purchase_order.js:488
+#: templates/js/translated/purchase_order.js:499
msgid "Cancel Purchase Order"
msgstr ""
-#: templates/js/translated/purchase_order.js:493
+#: templates/js/translated/purchase_order.js:504
msgid "Are you sure you wish to cancel this purchase order?"
msgstr ""
-#: templates/js/translated/purchase_order.js:499
+#: templates/js/translated/purchase_order.js:510
msgid "This purchase order can not be cancelled"
msgstr ""
-#: templates/js/translated/purchase_order.js:520
-#: templates/js/translated/return_order.js:149
+#: templates/js/translated/purchase_order.js:531
+#: templates/js/translated/return_order.js:161
msgid "After placing this order, line items will no longer be editable."
msgstr ""
-#: templates/js/translated/purchase_order.js:525
+#: templates/js/translated/purchase_order.js:536
msgid "Issue Purchase Order"
msgstr ""
-#: templates/js/translated/purchase_order.js:617
+#: templates/js/translated/purchase_order.js:628
msgid "At least one purchaseable part must be selected"
msgstr ""
-#: templates/js/translated/purchase_order.js:642
+#: templates/js/translated/purchase_order.js:653
msgid "Quantity to order"
msgstr ""
-#: templates/js/translated/purchase_order.js:651
+#: templates/js/translated/purchase_order.js:662
msgid "New supplier part"
msgstr ""
-#: templates/js/translated/purchase_order.js:669
+#: templates/js/translated/purchase_order.js:680
msgid "New purchase order"
msgstr ""
-#: templates/js/translated/purchase_order.js:701
+#: templates/js/translated/purchase_order.js:712
msgid "Add to purchase order"
msgstr ""
-#: templates/js/translated/purchase_order.js:845
+#: templates/js/translated/purchase_order.js:860
msgid "No matching supplier parts"
msgstr ""
-#: templates/js/translated/purchase_order.js:864
+#: templates/js/translated/purchase_order.js:879
msgid "No matching purchase orders"
msgstr ""
-#: templates/js/translated/purchase_order.js:1043
+#: templates/js/translated/purchase_order.js:1058
msgid "Select Line Items"
msgstr ""
-#: templates/js/translated/purchase_order.js:1044
-#: templates/js/translated/return_order.js:480
+#: templates/js/translated/purchase_order.js:1059
+#: templates/js/translated/return_order.js:492
msgid "At least one line item must be selected"
msgstr ""
-#: templates/js/translated/purchase_order.js:1074
+#: templates/js/translated/purchase_order.js:1089
msgid "Received Quantity"
msgstr ""
-#: templates/js/translated/purchase_order.js:1085
+#: templates/js/translated/purchase_order.js:1100
msgid "Quantity to receive"
msgstr ""
-#: templates/js/translated/purchase_order.js:1161
+#: templates/js/translated/purchase_order.js:1176
msgid "Stock Status"
msgstr ""
-#: templates/js/translated/purchase_order.js:1175
+#: templates/js/translated/purchase_order.js:1190
msgid "Add barcode"
msgstr ""
-#: templates/js/translated/purchase_order.js:1176
+#: templates/js/translated/purchase_order.js:1191
msgid "Remove barcode"
msgstr ""
-#: templates/js/translated/purchase_order.js:1179
+#: templates/js/translated/purchase_order.js:1194
msgid "Specify location"
msgstr ""
-#: templates/js/translated/purchase_order.js:1187
+#: templates/js/translated/purchase_order.js:1202
msgid "Add batch code"
msgstr ""
-#: templates/js/translated/purchase_order.js:1198
+#: templates/js/translated/purchase_order.js:1213
msgid "Add serial numbers"
msgstr ""
-#: templates/js/translated/purchase_order.js:1250
+#: templates/js/translated/purchase_order.js:1265
msgid "Serials"
msgstr ""
-#: templates/js/translated/purchase_order.js:1275
+#: templates/js/translated/purchase_order.js:1290
msgid "Order Code"
msgstr ""
-#: templates/js/translated/purchase_order.js:1277
+#: templates/js/translated/purchase_order.js:1292
msgid "Quantity to Receive"
msgstr ""
-#: templates/js/translated/purchase_order.js:1299
-#: templates/js/translated/return_order.js:545
+#: templates/js/translated/purchase_order.js:1314
+#: templates/js/translated/return_order.js:557
msgid "Confirm receipt of items"
msgstr ""
-#: templates/js/translated/purchase_order.js:1300
+#: templates/js/translated/purchase_order.js:1315
msgid "Receive Purchase Order Items"
msgstr ""
-#: templates/js/translated/purchase_order.js:1368
+#: templates/js/translated/purchase_order.js:1383
msgid "Scan Item Barcode"
msgstr ""
-#: templates/js/translated/purchase_order.js:1369
+#: templates/js/translated/purchase_order.js:1384
msgid "Scan barcode on incoming item (must not match any existing stock items)"
msgstr ""
-#: templates/js/translated/purchase_order.js:1383
+#: templates/js/translated/purchase_order.js:1398
msgid "Invalid barcode data"
msgstr ""
-#: templates/js/translated/purchase_order.js:1645
-#: templates/js/translated/return_order.js:274
-#: templates/js/translated/sales_order.js:762
-#: templates/js/translated/sales_order.js:986
+#: templates/js/translated/purchase_order.js:1660
+#: templates/js/translated/return_order.js:286
+#: templates/js/translated/sales_order.js:774
+#: templates/js/translated/sales_order.js:998
msgid "Order is overdue"
msgstr ""
-#: templates/js/translated/purchase_order.js:1707
-#: templates/js/translated/return_order.js:342
-#: templates/js/translated/sales_order.js:839
-#: templates/js/translated/sales_order.js:999
+#: templates/js/translated/purchase_order.js:1722
+#: templates/js/translated/return_order.js:354
+#: templates/js/translated/sales_order.js:851
+#: templates/js/translated/sales_order.js:1011
msgid "Items"
msgstr ""
-#: templates/js/translated/purchase_order.js:1806
+#: templates/js/translated/purchase_order.js:1821
msgid "All selected Line items will be deleted"
msgstr ""
-#: templates/js/translated/purchase_order.js:1824
+#: templates/js/translated/purchase_order.js:1839
msgid "Delete selected Line items?"
msgstr ""
-#: templates/js/translated/purchase_order.js:1884
-#: templates/js/translated/sales_order.js:2047
+#: templates/js/translated/purchase_order.js:1894
+#: templates/js/translated/sales_order.js:2059
msgid "Duplicate Line Item"
msgstr ""
-#: templates/js/translated/purchase_order.js:1899
-#: templates/js/translated/return_order.js:464
-#: templates/js/translated/return_order.js:653
-#: templates/js/translated/sales_order.js:2060
+#: templates/js/translated/purchase_order.js:1909
+#: templates/js/translated/return_order.js:476
+#: templates/js/translated/return_order.js:665
+#: templates/js/translated/sales_order.js:2072
msgid "Edit Line Item"
msgstr ""
-#: templates/js/translated/purchase_order.js:1910
-#: templates/js/translated/return_order.js:666
-#: templates/js/translated/sales_order.js:2071
+#: templates/js/translated/purchase_order.js:1920
+#: templates/js/translated/return_order.js:678
+#: templates/js/translated/sales_order.js:2083
msgid "Delete Line Item"
msgstr ""
-#: templates/js/translated/purchase_order.js:2192
-#: templates/js/translated/sales_order.js:2001
+#: templates/js/translated/purchase_order.js:2202
+#: templates/js/translated/sales_order.js:2013
msgid "Duplicate line item"
msgstr ""
-#: templates/js/translated/purchase_order.js:2193
-#: templates/js/translated/return_order.js:785
-#: templates/js/translated/sales_order.js:2002
+#: templates/js/translated/purchase_order.js:2203
+#: templates/js/translated/return_order.js:797
+#: templates/js/translated/sales_order.js:2014
msgid "Edit line item"
msgstr ""
-#: templates/js/translated/purchase_order.js:2194
-#: templates/js/translated/return_order.js:789
-#: templates/js/translated/sales_order.js:2008
+#: templates/js/translated/purchase_order.js:2204
+#: templates/js/translated/return_order.js:801
+#: templates/js/translated/sales_order.js:2020
msgid "Delete line item"
msgstr ""
@@ -11424,941 +11553,973 @@ msgstr ""
msgid "Add Customer"
msgstr ""
-#: templates/js/translated/return_order.js:119
+#: templates/js/translated/return_order.js:131
msgid "Create Return Order"
msgstr ""
-#: templates/js/translated/return_order.js:134
+#: templates/js/translated/return_order.js:146
msgid "Edit Return Order"
msgstr ""
-#: templates/js/translated/return_order.js:154
+#: templates/js/translated/return_order.js:166
msgid "Issue Return Order"
msgstr ""
-#: templates/js/translated/return_order.js:171
+#: templates/js/translated/return_order.js:183
msgid "Are you sure you wish to cancel this Return Order?"
msgstr ""
-#: templates/js/translated/return_order.js:178
+#: templates/js/translated/return_order.js:190
msgid "Cancel Return Order"
msgstr ""
-#: templates/js/translated/return_order.js:203
+#: templates/js/translated/return_order.js:215
msgid "Complete Return Order"
msgstr ""
-#: templates/js/translated/return_order.js:251
+#: templates/js/translated/return_order.js:263
msgid "No return orders found"
msgstr ""
-#: templates/js/translated/return_order.js:288
-#: templates/js/translated/sales_order.js:776
+#: templates/js/translated/return_order.js:300
+#: templates/js/translated/sales_order.js:788
msgid "Invalid Customer"
msgstr ""
-#: templates/js/translated/return_order.js:546
+#: templates/js/translated/return_order.js:558
msgid "Receive Return Order Items"
msgstr ""
-#: templates/js/translated/return_order.js:677
-#: templates/js/translated/sales_order.js:2207
+#: templates/js/translated/return_order.js:689
+#: templates/js/translated/sales_order.js:2219
msgid "No matching line items"
msgstr ""
-#: templates/js/translated/return_order.js:782
+#: templates/js/translated/return_order.js:794
msgid "Mark item as received"
msgstr ""
-#: templates/js/translated/sales_order.js:146
+#: templates/js/translated/sales_order.js:158
msgid "Create Sales Order"
msgstr ""
-#: templates/js/translated/sales_order.js:161
+#: templates/js/translated/sales_order.js:173
msgid "Edit Sales Order"
msgstr ""
-#: templates/js/translated/sales_order.js:276
+#: templates/js/translated/sales_order.js:288
msgid "No stock items have been allocated to this shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:281
+#: templates/js/translated/sales_order.js:293
msgid "The following stock items will be shipped"
msgstr ""
-#: templates/js/translated/sales_order.js:321
+#: templates/js/translated/sales_order.js:333
msgid "Complete Shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:345
+#: templates/js/translated/sales_order.js:357
msgid "Confirm Shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:401
+#: templates/js/translated/sales_order.js:413
msgid "No pending shipments found"
msgstr ""
-#: templates/js/translated/sales_order.js:405
+#: templates/js/translated/sales_order.js:417
msgid "No stock items have been allocated to pending shipments"
msgstr ""
-#: templates/js/translated/sales_order.js:415
+#: templates/js/translated/sales_order.js:427
msgid "Complete Shipments"
msgstr ""
-#: templates/js/translated/sales_order.js:437
+#: templates/js/translated/sales_order.js:449
msgid "Skip"
msgstr ""
-#: templates/js/translated/sales_order.js:498
+#: templates/js/translated/sales_order.js:510
msgid "This order has line items which have not been completed."
msgstr ""
-#: templates/js/translated/sales_order.js:520
+#: templates/js/translated/sales_order.js:532
msgid "Issue this Sales Order?"
msgstr ""
-#: templates/js/translated/sales_order.js:525
+#: templates/js/translated/sales_order.js:537
msgid "Issue Sales Order"
msgstr ""
-#: templates/js/translated/sales_order.js:544
+#: templates/js/translated/sales_order.js:556
msgid "Cancel Sales Order"
msgstr ""
-#: templates/js/translated/sales_order.js:549
+#: templates/js/translated/sales_order.js:561
msgid "Cancelling this order means that the order will no longer be editable."
msgstr ""
-#: templates/js/translated/sales_order.js:603
+#: templates/js/translated/sales_order.js:615
msgid "Create New Shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:713
+#: templates/js/translated/sales_order.js:725
msgid "No sales orders found"
msgstr ""
-#: templates/js/translated/sales_order.js:896
+#: templates/js/translated/sales_order.js:908
msgid "Edit shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:899
+#: templates/js/translated/sales_order.js:911
msgid "Complete shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:904
+#: templates/js/translated/sales_order.js:916
msgid "Delete shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:921
+#: templates/js/translated/sales_order.js:933
msgid "Edit Shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:936
+#: templates/js/translated/sales_order.js:948
msgid "Delete Shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:969
+#: templates/js/translated/sales_order.js:981
msgid "No matching shipments found"
msgstr ""
-#: templates/js/translated/sales_order.js:994
+#: templates/js/translated/sales_order.js:1006
msgid "Shipment Reference"
msgstr ""
-#: templates/js/translated/sales_order.js:1018
-#: templates/js/translated/sales_order.js:1515
+#: templates/js/translated/sales_order.js:1030
+#: templates/js/translated/sales_order.js:1527
msgid "Not shipped"
msgstr ""
-#: templates/js/translated/sales_order.js:1036
+#: templates/js/translated/sales_order.js:1048
msgid "Tracking"
msgstr ""
-#: templates/js/translated/sales_order.js:1040
+#: templates/js/translated/sales_order.js:1052
msgid "Invoice"
msgstr ""
-#: templates/js/translated/sales_order.js:1207
+#: templates/js/translated/sales_order.js:1219
msgid "Add Shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:1258
+#: templates/js/translated/sales_order.js:1270
msgid "Confirm stock allocation"
msgstr ""
-#: templates/js/translated/sales_order.js:1259
+#: templates/js/translated/sales_order.js:1271
msgid "Allocate Stock Items to Sales Order"
msgstr ""
-#: templates/js/translated/sales_order.js:1463
+#: templates/js/translated/sales_order.js:1475
msgid "No sales order allocations found"
msgstr ""
-#: templates/js/translated/sales_order.js:1555
+#: templates/js/translated/sales_order.js:1567
msgid "Edit Stock Allocation"
msgstr ""
-#: templates/js/translated/sales_order.js:1569
+#: templates/js/translated/sales_order.js:1581
msgid "Confirm Delete Operation"
msgstr ""
-#: templates/js/translated/sales_order.js:1570
+#: templates/js/translated/sales_order.js:1582
msgid "Delete Stock Allocation"
msgstr ""
-#: templates/js/translated/sales_order.js:1609
-#: templates/js/translated/sales_order.js:1696
-#: templates/js/translated/stock.js:1688
+#: templates/js/translated/sales_order.js:1621
+#: templates/js/translated/sales_order.js:1708
+#: templates/js/translated/stock.js:1687
msgid "Shipped to customer"
msgstr ""
-#: templates/js/translated/sales_order.js:1617
-#: templates/js/translated/sales_order.js:1705
+#: templates/js/translated/sales_order.js:1629
+#: templates/js/translated/sales_order.js:1717
msgid "Stock location not specified"
msgstr ""
-#: templates/js/translated/sales_order.js:1985
+#: templates/js/translated/sales_order.js:1997
msgid "Allocate serial numbers"
msgstr ""
-#: templates/js/translated/sales_order.js:1989
+#: templates/js/translated/sales_order.js:2001
msgid "Purchase stock"
msgstr ""
-#: templates/js/translated/sales_order.js:1998
-#: templates/js/translated/sales_order.js:2185
+#: templates/js/translated/sales_order.js:2010
+#: templates/js/translated/sales_order.js:2197
msgid "Calculate price"
msgstr ""
-#: templates/js/translated/sales_order.js:2012
+#: templates/js/translated/sales_order.js:2024
msgid "Cannot be deleted as items have been shipped"
msgstr ""
-#: templates/js/translated/sales_order.js:2015
+#: templates/js/translated/sales_order.js:2027
msgid "Cannot be deleted as items have been allocated"
msgstr ""
-#: templates/js/translated/sales_order.js:2086
+#: templates/js/translated/sales_order.js:2098
msgid "Allocate Serial Numbers"
msgstr ""
-#: templates/js/translated/sales_order.js:2193
+#: templates/js/translated/sales_order.js:2205
msgid "Update Unit Price"
msgstr ""
-#: templates/js/translated/search.js:312
+#: templates/js/translated/search.js:270
msgid "No results"
msgstr ""
-#: templates/js/translated/search.js:334 templates/search.html:25
+#: templates/js/translated/search.js:292 templates/search.html:25
msgid "Enter search query"
msgstr ""
-#: templates/js/translated/search.js:384
+#: templates/js/translated/search.js:342
msgid "result"
msgstr ""
-#: templates/js/translated/search.js:384
+#: templates/js/translated/search.js:342
msgid "results"
msgstr ""
-#: templates/js/translated/search.js:394
+#: templates/js/translated/search.js:352
msgid "Minimize results"
msgstr ""
-#: templates/js/translated/search.js:397
+#: templates/js/translated/search.js:355
msgid "Remove results"
msgstr ""
-#: templates/js/translated/stock.js:98
+#: templates/js/translated/stock.js:97
msgid "Serialize Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:129
+#: templates/js/translated/stock.js:128
msgid "Confirm Stock Serialization"
msgstr ""
-#: templates/js/translated/stock.js:138
+#: templates/js/translated/stock.js:137
msgid "Parent stock location"
msgstr ""
-#: templates/js/translated/stock.js:173
+#: templates/js/translated/stock.js:172
msgid "Edit Stock Location"
msgstr ""
-#: templates/js/translated/stock.js:188
+#: templates/js/translated/stock.js:187
msgid "New Stock Location"
msgstr ""
-#: templates/js/translated/stock.js:190
+#: templates/js/translated/stock.js:189
msgid "Create another location after this one"
msgstr ""
-#: templates/js/translated/stock.js:191
+#: templates/js/translated/stock.js:190
msgid "Stock location created"
msgstr ""
-#: templates/js/translated/stock.js:205
+#: templates/js/translated/stock.js:204
msgid "Are you sure you want to delete this stock location?"
msgstr ""
-#: templates/js/translated/stock.js:212
+#: templates/js/translated/stock.js:211
msgid "Move to parent stock location"
msgstr ""
-#: templates/js/translated/stock.js:221
+#: templates/js/translated/stock.js:220
msgid "Delete Stock Location"
msgstr ""
-#: templates/js/translated/stock.js:225
+#: templates/js/translated/stock.js:224
msgid "Action for stock items in this stock location"
msgstr ""
-#: templates/js/translated/stock.js:230
+#: templates/js/translated/stock.js:229
msgid "Action for sub-locations"
msgstr ""
-#: templates/js/translated/stock.js:284
+#: templates/js/translated/stock.js:283
msgid "This part cannot be serialized"
msgstr ""
-#: templates/js/translated/stock.js:320
+#: templates/js/translated/stock.js:319
msgid "Add given quantity as packs instead of individual items"
msgstr ""
-#: templates/js/translated/stock.js:329
+#: templates/js/translated/stock.js:328
msgid "Enter initial quantity for this stock item"
msgstr ""
-#: templates/js/translated/stock.js:335
+#: templates/js/translated/stock.js:334
msgid "Enter serial numbers for new stock (or leave blank)"
msgstr ""
-#: templates/js/translated/stock.js:406
+#: templates/js/translated/stock.js:405
msgid "Stock item duplicated"
msgstr ""
-#: templates/js/translated/stock.js:426
+#: templates/js/translated/stock.js:425
msgid "Duplicate Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:442
+#: templates/js/translated/stock.js:441
msgid "Are you sure you want to delete this stock item?"
msgstr ""
-#: templates/js/translated/stock.js:447
+#: templates/js/translated/stock.js:446
msgid "Delete Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:468
+#: templates/js/translated/stock.js:467
msgid "Edit Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:510
+#: templates/js/translated/stock.js:509
msgid "Create another item after this one"
msgstr ""
-#: templates/js/translated/stock.js:522
+#: templates/js/translated/stock.js:521
msgid "Created new stock item"
msgstr ""
-#: templates/js/translated/stock.js:535
+#: templates/js/translated/stock.js:534
msgid "Created multiple stock items"
msgstr ""
-#: templates/js/translated/stock.js:560
+#: templates/js/translated/stock.js:559
msgid "Find Serial Number"
msgstr ""
-#: templates/js/translated/stock.js:564 templates/js/translated/stock.js:565
+#: templates/js/translated/stock.js:563 templates/js/translated/stock.js:564
msgid "Enter serial number"
msgstr ""
-#: templates/js/translated/stock.js:581
+#: templates/js/translated/stock.js:580
msgid "Enter a serial number"
msgstr ""
-#: templates/js/translated/stock.js:601
+#: templates/js/translated/stock.js:600
msgid "No matching serial number"
msgstr ""
-#: templates/js/translated/stock.js:610
+#: templates/js/translated/stock.js:609
msgid "More than one matching result found"
msgstr ""
-#: templates/js/translated/stock.js:718
+#: templates/js/translated/stock.js:717
msgid "Confirm stock assignment"
msgstr ""
-#: templates/js/translated/stock.js:719
+#: templates/js/translated/stock.js:718
msgid "Assign Stock to Customer"
msgstr ""
-#: templates/js/translated/stock.js:796
+#: templates/js/translated/stock.js:795
msgid "Warning: Merge operation cannot be reversed"
msgstr ""
-#: templates/js/translated/stock.js:797
+#: templates/js/translated/stock.js:796
msgid "Some information will be lost when merging stock items"
msgstr ""
-#: templates/js/translated/stock.js:799
+#: templates/js/translated/stock.js:798
msgid "Stock transaction history will be deleted for merged items"
msgstr ""
-#: templates/js/translated/stock.js:800
+#: templates/js/translated/stock.js:799
msgid "Supplier part information will be deleted for merged items"
msgstr ""
-#: templates/js/translated/stock.js:891
+#: templates/js/translated/stock.js:890
msgid "Confirm stock item merge"
msgstr ""
-#: templates/js/translated/stock.js:892
+#: templates/js/translated/stock.js:891
msgid "Merge Stock Items"
msgstr ""
-#: templates/js/translated/stock.js:987
+#: templates/js/translated/stock.js:986
msgid "Transfer Stock"
msgstr ""
-#: templates/js/translated/stock.js:988
+#: templates/js/translated/stock.js:987
msgid "Move"
msgstr ""
-#: templates/js/translated/stock.js:994
+#: templates/js/translated/stock.js:993
msgid "Count Stock"
msgstr ""
-#: templates/js/translated/stock.js:995
+#: templates/js/translated/stock.js:994
msgid "Count"
msgstr ""
-#: templates/js/translated/stock.js:999
+#: templates/js/translated/stock.js:998
msgid "Remove Stock"
msgstr ""
-#: templates/js/translated/stock.js:1000
+#: templates/js/translated/stock.js:999
msgid "Take"
msgstr ""
-#: templates/js/translated/stock.js:1004
+#: templates/js/translated/stock.js:1003
msgid "Add Stock"
msgstr ""
-#: templates/js/translated/stock.js:1005 users/models.py:243
+#: templates/js/translated/stock.js:1004 users/models.py:249
msgid "Add"
msgstr ""
-#: templates/js/translated/stock.js:1009
+#: templates/js/translated/stock.js:1008
msgid "Delete Stock"
msgstr ""
-#: templates/js/translated/stock.js:1106
+#: templates/js/translated/stock.js:1105
msgid "Quantity cannot be adjusted for serialized stock"
msgstr ""
-#: templates/js/translated/stock.js:1106
+#: templates/js/translated/stock.js:1105
msgid "Specify stock quantity"
msgstr ""
-#: templates/js/translated/stock.js:1140
+#: templates/js/translated/stock.js:1139 templates/js/translated/stock.js:3151
msgid "Select Stock Items"
msgstr ""
-#: templates/js/translated/stock.js:1141
-msgid "You must select at least one available stock item"
+#: templates/js/translated/stock.js:1140
+msgid "Select at least one available stock item"
msgstr ""
-#: templates/js/translated/stock.js:1168
+#: templates/js/translated/stock.js:1167
msgid "Confirm stock adjustment"
msgstr ""
-#: templates/js/translated/stock.js:1304
+#: templates/js/translated/stock.js:1303
msgid "PASS"
msgstr ""
-#: templates/js/translated/stock.js:1306
+#: templates/js/translated/stock.js:1305
msgid "FAIL"
msgstr ""
-#: templates/js/translated/stock.js:1311
+#: templates/js/translated/stock.js:1310
msgid "NO RESULT"
msgstr ""
-#: templates/js/translated/stock.js:1373
+#: templates/js/translated/stock.js:1372
msgid "Pass test"
msgstr ""
-#: templates/js/translated/stock.js:1376
+#: templates/js/translated/stock.js:1375
msgid "Add test result"
msgstr ""
-#: templates/js/translated/stock.js:1400
+#: templates/js/translated/stock.js:1399
msgid "No test results found"
msgstr ""
-#: templates/js/translated/stock.js:1464
+#: templates/js/translated/stock.js:1463
msgid "Test Date"
msgstr ""
-#: templates/js/translated/stock.js:1626
+#: templates/js/translated/stock.js:1625
msgid "Edit Test Result"
msgstr ""
-#: templates/js/translated/stock.js:1648
+#: templates/js/translated/stock.js:1647
msgid "Delete Test Result"
msgstr ""
-#: templates/js/translated/stock.js:1680
+#: templates/js/translated/stock.js:1679
msgid "In production"
msgstr ""
-#: templates/js/translated/stock.js:1684
+#: templates/js/translated/stock.js:1683
msgid "Installed in Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:1692
+#: templates/js/translated/stock.js:1691
msgid "Assigned to Sales Order"
msgstr ""
-#: templates/js/translated/stock.js:1698
+#: templates/js/translated/stock.js:1697
msgid "No stock location set"
msgstr ""
-#: templates/js/translated/stock.js:1746
+#: templates/js/translated/stock.js:1753
+msgid "Change stock status"
+msgstr ""
+
+#: templates/js/translated/stock.js:1762
+msgid "Merge stock"
+msgstr ""
+
+#: templates/js/translated/stock.js:1811
+msgid "Delete stock"
+msgstr ""
+
+#: templates/js/translated/stock.js:1866
msgid "stock items"
msgstr ""
-#: templates/js/translated/stock.js:1850
+#: templates/js/translated/stock.js:1871
+msgid "Scan to location"
+msgstr ""
+
+#: templates/js/translated/stock.js:1882
+msgid "Stock Actions"
+msgstr ""
+
+#: templates/js/translated/stock.js:1929
+msgid "Load installed items"
+msgstr ""
+
+#: templates/js/translated/stock.js:2007
msgid "Stock item is in production"
msgstr ""
-#: templates/js/translated/stock.js:1855
+#: templates/js/translated/stock.js:2012
msgid "Stock item assigned to sales order"
msgstr ""
-#: templates/js/translated/stock.js:1858
+#: templates/js/translated/stock.js:2015
msgid "Stock item assigned to customer"
msgstr ""
-#: templates/js/translated/stock.js:1861
+#: templates/js/translated/stock.js:2018
msgid "Serialized stock item has been allocated"
msgstr ""
-#: templates/js/translated/stock.js:1863
+#: templates/js/translated/stock.js:2020
msgid "Stock item has been fully allocated"
msgstr ""
-#: templates/js/translated/stock.js:1865
+#: templates/js/translated/stock.js:2022
msgid "Stock item has been partially allocated"
msgstr ""
-#: templates/js/translated/stock.js:1868
+#: templates/js/translated/stock.js:2025
msgid "Stock item has been installed in another item"
msgstr ""
-#: templates/js/translated/stock.js:1870
+#: templates/js/translated/stock.js:2027
msgid "Stock item has been consumed by a build order"
msgstr ""
-#: templates/js/translated/stock.js:1874
+#: templates/js/translated/stock.js:2031
msgid "Stock item has expired"
msgstr ""
-#: templates/js/translated/stock.js:1876
+#: templates/js/translated/stock.js:2033
msgid "Stock item will expire soon"
msgstr ""
-#: templates/js/translated/stock.js:1881
+#: templates/js/translated/stock.js:2038
msgid "Stock item has been rejected"
msgstr ""
-#: templates/js/translated/stock.js:1883
+#: templates/js/translated/stock.js:2040
msgid "Stock item is lost"
msgstr ""
-#: templates/js/translated/stock.js:1885
+#: templates/js/translated/stock.js:2042
msgid "Stock item is destroyed"
msgstr ""
-#: templates/js/translated/stock.js:1889
-#: templates/js/translated/table_filters.js:296
+#: templates/js/translated/stock.js:2046
+#: templates/js/translated/table_filters.js:302
msgid "Depleted"
msgstr ""
-#: templates/js/translated/stock.js:2031
+#: templates/js/translated/stock.js:2188
msgid "Supplier part not specified"
msgstr ""
-#: templates/js/translated/stock.js:2078
+#: templates/js/translated/stock.js:2235
msgid "Stock Value"
msgstr ""
-#: templates/js/translated/stock.js:2170
+#: templates/js/translated/stock.js:2358
msgid "No stock items matching query"
msgstr ""
-#: templates/js/translated/stock.js:2319
+#: templates/js/translated/stock.js:2450
msgid "stock locations"
msgstr ""
-#: templates/js/translated/stock.js:2476
+#: templates/js/translated/stock.js:2607
msgid "Load Subloactions"
msgstr ""
-#: templates/js/translated/stock.js:2583
+#: templates/js/translated/stock.js:2714
msgid "Details"
msgstr ""
-#: templates/js/translated/stock.js:2587
+#: templates/js/translated/stock.js:2718
msgid "No changes"
msgstr ""
-#: templates/js/translated/stock.js:2599
+#: templates/js/translated/stock.js:2730
msgid "Part information unavailable"
msgstr ""
-#: templates/js/translated/stock.js:2621
+#: templates/js/translated/stock.js:2752
msgid "Location no longer exists"
msgstr ""
-#: templates/js/translated/stock.js:2638
+#: templates/js/translated/stock.js:2769
msgid "Build order no longer exists"
msgstr ""
-#: templates/js/translated/stock.js:2653
+#: templates/js/translated/stock.js:2784
msgid "Purchase order no longer exists"
msgstr ""
-#: templates/js/translated/stock.js:2670
+#: templates/js/translated/stock.js:2801
msgid "Sales Order no longer exists"
msgstr ""
-#: templates/js/translated/stock.js:2687
+#: templates/js/translated/stock.js:2818
msgid "Return Order no longer exists"
msgstr ""
-#: templates/js/translated/stock.js:2706
+#: templates/js/translated/stock.js:2837
msgid "Customer no longer exists"
msgstr ""
-#: templates/js/translated/stock.js:2724
+#: templates/js/translated/stock.js:2855
msgid "Stock item no longer exists"
msgstr ""
-#: templates/js/translated/stock.js:2742
+#: templates/js/translated/stock.js:2873
msgid "Added"
msgstr ""
-#: templates/js/translated/stock.js:2750
+#: templates/js/translated/stock.js:2881
msgid "Removed"
msgstr ""
-#: templates/js/translated/stock.js:2826
+#: templates/js/translated/stock.js:2953
msgid "No installed items"
msgstr ""
-#: templates/js/translated/stock.js:2876 templates/js/translated/stock.js:2911
+#: templates/js/translated/stock.js:3003 templates/js/translated/stock.js:3038
msgid "Uninstall Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:2929
+#: templates/js/translated/stock.js:3056
msgid "Select stock item to uninstall"
msgstr ""
-#: templates/js/translated/stock.js:2950
+#: templates/js/translated/stock.js:3077
msgid "Install another stock item into this item"
msgstr ""
-#: templates/js/translated/stock.js:2951
+#: templates/js/translated/stock.js:3078
msgid "Stock items can only be installed if they meet the following criteria"
msgstr ""
-#: templates/js/translated/stock.js:2953
+#: templates/js/translated/stock.js:3080
msgid "The Stock Item links to a Part which is the BOM for this Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:2954
+#: templates/js/translated/stock.js:3081
msgid "The Stock Item is currently available in stock"
msgstr ""
-#: templates/js/translated/stock.js:2955
+#: templates/js/translated/stock.js:3082
msgid "The Stock Item is not already installed in another item"
msgstr ""
-#: templates/js/translated/stock.js:2956
+#: templates/js/translated/stock.js:3083
msgid "The Stock Item is tracked by either a batch code or serial number"
msgstr ""
-#: templates/js/translated/stock.js:2969
+#: templates/js/translated/stock.js:3096
msgid "Select part to install"
msgstr ""
+#: templates/js/translated/stock.js:3152
+msgid "Select one or more stock items"
+msgstr ""
+
+#: templates/js/translated/stock.js:3165
+msgid "Selected stock items"
+msgstr ""
+
+#: templates/js/translated/stock.js:3169
+msgid "Change Stock Status"
+msgstr ""
+
#: templates/js/translated/table_filters.js:50
msgid "Has project code"
msgstr ""
-#: templates/js/translated/table_filters.js:59
-#: templates/js/translated/table_filters.js:518
-#: templates/js/translated/table_filters.js:530
-#: templates/js/translated/table_filters.js:571
+#: templates/js/translated/table_filters.js:65
+#: templates/js/translated/table_filters.js:540
+#: templates/js/translated/table_filters.js:552
+#: templates/js/translated/table_filters.js:593
msgid "Order status"
msgstr ""
-#: templates/js/translated/table_filters.js:64
-#: templates/js/translated/table_filters.js:535
-#: templates/js/translated/table_filters.js:561
-#: templates/js/translated/table_filters.js:576
+#: templates/js/translated/table_filters.js:70
+#: templates/js/translated/table_filters.js:557
+#: templates/js/translated/table_filters.js:583
+#: templates/js/translated/table_filters.js:598
msgid "Outstanding"
msgstr ""
-#: templates/js/translated/table_filters.js:72
-#: templates/js/translated/table_filters.js:458
-#: templates/js/translated/table_filters.js:543
-#: templates/js/translated/table_filters.js:584
+#: templates/js/translated/table_filters.js:78
+#: templates/js/translated/table_filters.js:464
+#: templates/js/translated/table_filters.js:565
+#: templates/js/translated/table_filters.js:606
msgid "Assigned to me"
msgstr ""
-#: templates/js/translated/table_filters.js:128
+#: templates/js/translated/table_filters.js:134
msgid "Trackable Part"
msgstr ""
-#: templates/js/translated/table_filters.js:132
+#: templates/js/translated/table_filters.js:138
msgid "Assembled Part"
msgstr ""
-#: templates/js/translated/table_filters.js:136
+#: templates/js/translated/table_filters.js:142
msgid "Has Available Stock"
msgstr ""
-#: templates/js/translated/table_filters.js:152
+#: templates/js/translated/table_filters.js:158
msgid "Allow Variant Stock"
msgstr ""
-#: templates/js/translated/table_filters.js:164
-#: templates/js/translated/table_filters.js:692
+#: templates/js/translated/table_filters.js:170
+#: templates/js/translated/table_filters.js:714
msgid "Has Pricing"
msgstr ""
-#: templates/js/translated/table_filters.js:204
-#: templates/js/translated/table_filters.js:291
+#: templates/js/translated/table_filters.js:210
+#: templates/js/translated/table_filters.js:297
msgid "Include sublocations"
msgstr ""
-#: templates/js/translated/table_filters.js:205
+#: templates/js/translated/table_filters.js:211
msgid "Include locations"
msgstr ""
-#: templates/js/translated/table_filters.js:224
-#: templates/js/translated/table_filters.js:225
-#: templates/js/translated/table_filters.js:624
+#: templates/js/translated/table_filters.js:230
+#: templates/js/translated/table_filters.js:231
+#: templates/js/translated/table_filters.js:646
msgid "Include subcategories"
msgstr ""
-#: templates/js/translated/table_filters.js:233
-#: templates/js/translated/table_filters.js:672
+#: templates/js/translated/table_filters.js:239
+#: templates/js/translated/table_filters.js:694
msgid "Subscribed"
msgstr ""
-#: templates/js/translated/table_filters.js:244
-#: templates/js/translated/table_filters.js:326
+#: templates/js/translated/table_filters.js:250
+#: templates/js/translated/table_filters.js:332
msgid "Is Serialized"
msgstr ""
-#: templates/js/translated/table_filters.js:247
-#: templates/js/translated/table_filters.js:333
+#: templates/js/translated/table_filters.js:253
+#: templates/js/translated/table_filters.js:339
msgid "Serial number GTE"
msgstr ""
-#: templates/js/translated/table_filters.js:248
-#: templates/js/translated/table_filters.js:334
+#: templates/js/translated/table_filters.js:254
+#: templates/js/translated/table_filters.js:340
msgid "Serial number greater than or equal to"
msgstr ""
-#: templates/js/translated/table_filters.js:251
-#: templates/js/translated/table_filters.js:337
+#: templates/js/translated/table_filters.js:257
+#: templates/js/translated/table_filters.js:343
msgid "Serial number LTE"
msgstr ""
-#: templates/js/translated/table_filters.js:252
-#: templates/js/translated/table_filters.js:338
+#: templates/js/translated/table_filters.js:258
+#: templates/js/translated/table_filters.js:344
msgid "Serial number less than or equal to"
msgstr ""
-#: templates/js/translated/table_filters.js:255
-#: templates/js/translated/table_filters.js:256
-#: templates/js/translated/table_filters.js:329
-#: templates/js/translated/table_filters.js:330
+#: templates/js/translated/table_filters.js:261
+#: templates/js/translated/table_filters.js:262
+#: templates/js/translated/table_filters.js:335
+#: templates/js/translated/table_filters.js:336
msgid "Serial number"
msgstr ""
-#: templates/js/translated/table_filters.js:260
-#: templates/js/translated/table_filters.js:351
+#: templates/js/translated/table_filters.js:266
+#: templates/js/translated/table_filters.js:357
msgid "Batch code"
msgstr ""
-#: templates/js/translated/table_filters.js:271
-#: templates/js/translated/table_filters.js:613
+#: templates/js/translated/table_filters.js:277
+#: templates/js/translated/table_filters.js:635
msgid "Active parts"
msgstr ""
-#: templates/js/translated/table_filters.js:272
+#: templates/js/translated/table_filters.js:278
msgid "Show stock for active parts"
msgstr ""
-#: templates/js/translated/table_filters.js:277
+#: templates/js/translated/table_filters.js:283
msgid "Part is an assembly"
msgstr ""
-#: templates/js/translated/table_filters.js:281
+#: templates/js/translated/table_filters.js:287
msgid "Is allocated"
msgstr ""
-#: templates/js/translated/table_filters.js:282
+#: templates/js/translated/table_filters.js:288
msgid "Item has been allocated"
msgstr ""
-#: templates/js/translated/table_filters.js:287
+#: templates/js/translated/table_filters.js:293
msgid "Stock is available for use"
msgstr ""
-#: templates/js/translated/table_filters.js:292
+#: templates/js/translated/table_filters.js:298
msgid "Include stock in sublocations"
msgstr ""
-#: templates/js/translated/table_filters.js:297
+#: templates/js/translated/table_filters.js:303
msgid "Show stock items which are depleted"
msgstr ""
-#: templates/js/translated/table_filters.js:302
+#: templates/js/translated/table_filters.js:308
msgid "Show items which are in stock"
msgstr ""
-#: templates/js/translated/table_filters.js:306
+#: templates/js/translated/table_filters.js:312
msgid "In Production"
msgstr ""
-#: templates/js/translated/table_filters.js:307
+#: templates/js/translated/table_filters.js:313
msgid "Show items which are in production"
msgstr ""
-#: templates/js/translated/table_filters.js:311
+#: templates/js/translated/table_filters.js:317
msgid "Include Variants"
msgstr ""
-#: templates/js/translated/table_filters.js:312
+#: templates/js/translated/table_filters.js:318
msgid "Include stock items for variant parts"
msgstr ""
-#: templates/js/translated/table_filters.js:316
+#: templates/js/translated/table_filters.js:322
msgid "Installed"
msgstr ""
-#: templates/js/translated/table_filters.js:317
+#: templates/js/translated/table_filters.js:323
msgid "Show stock items which are installed in another item"
msgstr ""
-#: templates/js/translated/table_filters.js:322
+#: templates/js/translated/table_filters.js:328
msgid "Show items which have been assigned to a customer"
msgstr ""
-#: templates/js/translated/table_filters.js:342
-#: templates/js/translated/table_filters.js:343
+#: templates/js/translated/table_filters.js:348
+#: templates/js/translated/table_filters.js:349
msgid "Stock status"
msgstr ""
-#: templates/js/translated/table_filters.js:346
+#: templates/js/translated/table_filters.js:352
msgid "Has batch code"
msgstr ""
-#: templates/js/translated/table_filters.js:354
-msgid "Tracked"
-msgstr ""
-
-#: templates/js/translated/table_filters.js:355
+#: templates/js/translated/table_filters.js:361
msgid "Stock item is tracked by either batch code or serial number"
msgstr ""
-#: templates/js/translated/table_filters.js:360
+#: templates/js/translated/table_filters.js:366
msgid "Has purchase price"
msgstr ""
-#: templates/js/translated/table_filters.js:361
+#: templates/js/translated/table_filters.js:367
msgid "Show stock items which have a purchase price set"
msgstr ""
-#: templates/js/translated/table_filters.js:365
+#: templates/js/translated/table_filters.js:371
msgid "Expiry Date before"
msgstr ""
-#: templates/js/translated/table_filters.js:369
+#: templates/js/translated/table_filters.js:375
msgid "Expiry Date after"
msgstr ""
-#: templates/js/translated/table_filters.js:382
+#: templates/js/translated/table_filters.js:388
msgid "Show stock items which have expired"
msgstr ""
-#: templates/js/translated/table_filters.js:388
+#: templates/js/translated/table_filters.js:394
msgid "Show stock which is close to expiring"
msgstr ""
-#: templates/js/translated/table_filters.js:402
+#: templates/js/translated/table_filters.js:408
msgid "Test Passed"
msgstr ""
-#: templates/js/translated/table_filters.js:406
+#: templates/js/translated/table_filters.js:412
msgid "Include Installed Items"
msgstr ""
-#: templates/js/translated/table_filters.js:445
+#: templates/js/translated/table_filters.js:451
msgid "Build status"
msgstr ""
-#: templates/js/translated/table_filters.js:625
+#: templates/js/translated/table_filters.js:647
msgid "Include parts in subcategories"
msgstr ""
-#: templates/js/translated/table_filters.js:630
+#: templates/js/translated/table_filters.js:652
msgid "Show active parts"
msgstr ""
-#: templates/js/translated/table_filters.js:638
+#: templates/js/translated/table_filters.js:660
msgid "Available stock"
msgstr ""
-#: templates/js/translated/table_filters.js:646
-#: templates/js/translated/table_filters.js:742
+#: templates/js/translated/table_filters.js:668
+#: templates/js/translated/table_filters.js:764
msgid "Has Units"
msgstr ""
-#: templates/js/translated/table_filters.js:647
+#: templates/js/translated/table_filters.js:669
msgid "Part has defined units"
msgstr ""
-#: templates/js/translated/table_filters.js:651
+#: templates/js/translated/table_filters.js:673
msgid "Has IPN"
msgstr ""
-#: templates/js/translated/table_filters.js:652
+#: templates/js/translated/table_filters.js:674
msgid "Part has internal part number"
msgstr ""
-#: templates/js/translated/table_filters.js:656
+#: templates/js/translated/table_filters.js:678
msgid "In stock"
msgstr ""
-#: templates/js/translated/table_filters.js:664
+#: templates/js/translated/table_filters.js:686
msgid "Purchasable"
msgstr ""
-#: templates/js/translated/table_filters.js:676
+#: templates/js/translated/table_filters.js:698
msgid "Has stocktake entries"
msgstr ""
-#: templates/js/translated/table_filters.js:738
+#: templates/js/translated/table_filters.js:760
msgid "Has Choices"
msgstr ""
@@ -12390,51 +12551,51 @@ msgstr ""
msgid "Select File Format"
msgstr ""
-#: templates/js/translated/tables.js:561
+#: templates/js/translated/tables.js:537
msgid "Loading data"
msgstr ""
-#: templates/js/translated/tables.js:564
+#: templates/js/translated/tables.js:540
msgid "rows per page"
msgstr ""
-#: templates/js/translated/tables.js:569
+#: templates/js/translated/tables.js:545
msgid "Showing all rows"
msgstr ""
-#: templates/js/translated/tables.js:571
+#: templates/js/translated/tables.js:547
msgid "Showing"
msgstr ""
-#: templates/js/translated/tables.js:571
+#: templates/js/translated/tables.js:547
msgid "to"
msgstr ""
-#: templates/js/translated/tables.js:571
+#: templates/js/translated/tables.js:547
msgid "of"
msgstr ""
-#: templates/js/translated/tables.js:571
+#: templates/js/translated/tables.js:547
msgid "rows"
msgstr ""
-#: templates/js/translated/tables.js:578
+#: templates/js/translated/tables.js:554
msgid "No matching results"
msgstr ""
-#: templates/js/translated/tables.js:581
+#: templates/js/translated/tables.js:557
msgid "Hide/Show pagination"
msgstr ""
-#: templates/js/translated/tables.js:587
+#: templates/js/translated/tables.js:563
msgid "Toggle"
msgstr ""
-#: templates/js/translated/tables.js:590
+#: templates/js/translated/tables.js:566
msgid "Columns"
msgstr ""
-#: templates/js/translated/tables.js:593
+#: templates/js/translated/tables.js:569
msgid "All"
msgstr ""
@@ -12464,7 +12625,7 @@ msgstr ""
#: templates/notes_buttons.html:6 templates/notes_buttons.html:7
msgid "Save"
-msgstr ""
+msgstr "Simpan"
#: templates/notifications.html:9
msgid "Show all notifications and history"
@@ -12536,7 +12697,7 @@ msgstr ""
#: templates/socialaccount/login.html:29
msgid "Invalid SSO Provider"
-msgstr ""
+msgstr "Penyedia SSO tidak valid"
#: templates/socialaccount/login.html:31
msgid "The selected SSO provider is invalid, or has not been correctly configured"
@@ -12610,56 +12771,12 @@ msgstr ""
#: templates/stats.html:75
msgid "Email Settings"
-msgstr ""
+msgstr "Pengaturan Surel"
#: templates/stats.html:78
msgid "Email settings not configured"
msgstr ""
-#: templates/stock_table.html:17
-msgid "Barcode Actions"
-msgstr ""
-
-#: templates/stock_table.html:28
-msgid "Stock Options"
-msgstr ""
-
-#: templates/stock_table.html:33
-msgid "Add to selected stock items"
-msgstr ""
-
-#: templates/stock_table.html:34
-msgid "Remove from selected stock items"
-msgstr ""
-
-#: templates/stock_table.html:35
-msgid "Stocktake selected stock items"
-msgstr ""
-
-#: templates/stock_table.html:36
-msgid "Move selected stock items"
-msgstr ""
-
-#: templates/stock_table.html:37
-msgid "Merge selected stock items"
-msgstr ""
-
-#: templates/stock_table.html:37
-msgid "Merge stock"
-msgstr ""
-
-#: templates/stock_table.html:38
-msgid "Order selected items"
-msgstr ""
-
-#: templates/stock_table.html:42
-msgid "Delete selected items"
-msgstr ""
-
-#: templates/stock_table.html:42
-msgid "Delete stock"
-msgstr ""
-
#: templates/yesnolabel.html:4
msgid "Yes"
msgstr ""
@@ -12682,7 +12799,7 @@ msgstr ""
#: users/admin.py:222
msgid "Personal info"
-msgstr ""
+msgstr "Data pribadi"
#: users/admin.py:223
msgid "Permissions"
@@ -12692,35 +12809,35 @@ msgstr ""
msgid "Important dates"
msgstr ""
-#: users/models.py:230
+#: users/models.py:236
msgid "Permission set"
msgstr ""
-#: users/models.py:238
+#: users/models.py:244
msgid "Group"
msgstr ""
-#: users/models.py:241
+#: users/models.py:247
msgid "View"
msgstr ""
-#: users/models.py:241
+#: users/models.py:247
msgid "Permission to view items"
msgstr ""
-#: users/models.py:243
+#: users/models.py:249
msgid "Permission to add items"
msgstr ""
-#: users/models.py:245
+#: users/models.py:251
msgid "Change"
msgstr ""
-#: users/models.py:245
+#: users/models.py:251
msgid "Permissions to edit items"
msgstr ""
-#: users/models.py:247
+#: users/models.py:253
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 e92fdf5506..b21cbb78a3 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: 2023-06-09 00:32+0000\n"
-"PO-Revision-Date: 2023-06-09 10:27\n"
+"POT-Creation-Date: 2023-06-20 07:01+0000\n"
+"PO-Revision-Date: 2023-06-20 07:06\n"
"Last-Translator: \n"
"Language-Team: Italian\n"
"Language: it_IT\n"
@@ -49,26 +49,26 @@ msgstr "I dettagli dell'errore possono essere trovati nel pannello di amministra
msgid "Enter date"
msgstr "Inserisci la data"
-#: InvenTree/fields.py:206 InvenTree/models.py:766 build/serializers.py:427
-#: build/serializers.py:506 build/templates/build/sidebar.html:23
-#: company/models.py:597 company/templates/company/sidebar.html:35
-#: order/models.py:1089 order/templates/order/po_sidebar.html:11
+#: InvenTree/fields.py:206 InvenTree/models.py:766 build/serializers.py:435
+#: build/serializers.py:514 build/templates/build/sidebar.html:21
+#: company/models.py:746 company/templates/company/sidebar.html:37
+#: order/models.py:1102 order/templates/order/po_sidebar.html:11
#: order/templates/order/return_order_sidebar.html:9
#: order/templates/order/so_sidebar.html:17 part/admin.py:41
-#: part/models.py:3005 part/templates/part/part_sidebar.html:63
+#: part/models.py:3039 part/templates/part/part_sidebar.html:63
#: report/templates/report/inventree_build_order_base.html:172
#: stock/admin.py:121 stock/models.py:2160 stock/models.py:2268
-#: stock/serializers.py:342 stock/serializers.py:475 stock/serializers.py:556
-#: stock/serializers.py:839 stock/serializers.py:938 stock/serializers.py:1070
-#: stock/templates/stock/stock_sidebar.html:25
-#: templates/js/translated/barcode.js:143 templates/js/translated/bom.js:1224
-#: templates/js/translated/company.js:1294 templates/js/translated/order.js:347
-#: templates/js/translated/part.js:1054
-#: templates/js/translated/purchase_order.js:2168
-#: templates/js/translated/return_order.js:760
-#: templates/js/translated/sales_order.js:1055
-#: templates/js/translated/sales_order.js:1959
-#: templates/js/translated/stock.js:1460 templates/js/translated/stock.js:2164
+#: stock/serializers.py:408 stock/serializers.py:542 stock/serializers.py:623
+#: stock/serializers.py:681 stock/serializers.py:956 stock/serializers.py:1055
+#: stock/serializers.py:1187 stock/templates/stock/stock_sidebar.html:25
+#: templates/js/translated/barcode.js:143 templates/js/translated/bom.js:1244
+#: templates/js/translated/company.js:1715 templates/js/translated/order.js:347
+#: templates/js/translated/part.js:1053
+#: templates/js/translated/purchase_order.js:2178
+#: templates/js/translated/return_order.js:772
+#: templates/js/translated/sales_order.js:1067
+#: templates/js/translated/sales_order.js:1971
+#: templates/js/translated/stock.js:1459 templates/js/translated/stock.js:2321
msgid "Notes"
msgstr "Note"
@@ -81,47 +81,51 @@ msgstr "Il valore '{name}' non è nel formato del pattern"
msgid "Provided value does not match required pattern: "
msgstr "Il valore fornito non corrisponde al modello richiesto: "
-#: InvenTree/forms.py:145
+#: InvenTree/forms.py:147
msgid "Enter password"
msgstr "Inserire la password"
-#: InvenTree/forms.py:146
+#: InvenTree/forms.py:148
msgid "Enter new password"
msgstr "Inserire una nuova password"
-#: InvenTree/forms.py:155
+#: InvenTree/forms.py:157
msgid "Confirm password"
msgstr "Conferma la password"
-#: InvenTree/forms.py:156
+#: InvenTree/forms.py:158
msgid "Confirm new password"
msgstr "Conferma la nuova password"
-#: InvenTree/forms.py:160
+#: InvenTree/forms.py:162
msgid "Old password"
msgstr "Vecchia password"
-#: InvenTree/forms.py:179
+#: InvenTree/forms.py:181
msgid "Email (again)"
msgstr "Email (ancora)"
-#: InvenTree/forms.py:183
+#: InvenTree/forms.py:185
msgid "Email address confirmation"
msgstr "Conferma indirizzo email"
-#: InvenTree/forms.py:204
+#: InvenTree/forms.py:206
msgid "You must type the same email each time."
msgstr "È necessario digitare la stessa e-mail ogni volta."
-#: InvenTree/forms.py:230 InvenTree/forms.py:236
+#: InvenTree/forms.py:237 InvenTree/forms.py:243
msgid "The provided primary email address is not valid."
msgstr "L'indirizzo email principale fornito non è valido."
-#: InvenTree/forms.py:242
+#: InvenTree/forms.py:249
msgid "The provided email domain is not approved."
msgstr "L'indirizzo di posta elettronica fornito non è approvato."
-#: InvenTree/helpers.py:462 order/models.py:442 order/models.py:611
+#: InvenTree/forms.py:345
+msgid "Registration is disabled."
+msgstr ""
+
+#: InvenTree/helpers.py:462 order/models.py:455 order/models.py:624
msgid "Invalid quantity provided"
msgstr "Quantità inserita non valida"
@@ -239,7 +243,7 @@ msgstr "Link esterno mancante"
#: InvenTree/models.py:486 stock/models.py:2262
#: templates/js/translated/attachment.js:119
-#: templates/js/translated/attachment.js:306
+#: templates/js/translated/attachment.js:316
msgid "Attachment"
msgstr "Allegato"
@@ -247,29 +251,30 @@ msgstr "Allegato"
msgid "Select file to attach"
msgstr "Seleziona file da allegare"
-#: InvenTree/models.py:493 common/models.py:2695 company/models.py:132
-#: company/models.py:306 company/models.py:584 order/models.py:236
-#: order/models.py:1093 order/models.py:1453 part/admin.py:39
-#: part/models.py:901 part/templates/part/part_scheduling.html:11
+#: InvenTree/models.py:493 common/models.py:2681 company/models.py:128
+#: company/models.py:381 company/models.py:455 company/models.py:733
+#: order/models.py:240 order/models.py:1106 order/models.py:1466
+#: part/admin.py:39 part/models.py:902
+#: part/templates/part/part_scheduling.html:11
#: report/templates/report/inventree_build_order_base.html:164
-#: stock/admin.py:120 templates/js/translated/company.js:977
-#: templates/js/translated/company.js:1283 templates/js/translated/order.js:351
-#: templates/js/translated/part.js:2316
-#: templates/js/translated/purchase_order.js:2008
-#: templates/js/translated/purchase_order.js:2172
-#: templates/js/translated/return_order.js:764
-#: templates/js/translated/sales_order.js:1044
-#: templates/js/translated/sales_order.js:1964
+#: stock/admin.py:120 templates/js/translated/company.js:1350
+#: templates/js/translated/company.js:1704 templates/js/translated/order.js:351
+#: templates/js/translated/part.js:2392
+#: templates/js/translated/purchase_order.js:2018
+#: templates/js/translated/purchase_order.js:2182
+#: templates/js/translated/return_order.js:776
+#: templates/js/translated/sales_order.js:1056
+#: templates/js/translated/sales_order.js:1976
msgid "Link"
msgstr "Collegamento"
-#: InvenTree/models.py:494 build/models.py:291 part/models.py:902
+#: InvenTree/models.py:494 build/models.py:295 part/models.py:903
#: stock/models.py:735
msgid "Link to external URL"
msgstr "Link a URL esterno"
#: InvenTree/models.py:497 templates/js/translated/attachment.js:120
-#: templates/js/translated/attachment.js:321
+#: templates/js/translated/attachment.js:331
msgid "Comment"
msgstr "Commento"
@@ -277,13 +282,13 @@ msgstr "Commento"
msgid "File comment"
msgstr "Commento del file"
-#: InvenTree/models.py:503 InvenTree/models.py:504 common/models.py:2154
-#: common/models.py:2155 common/models.py:2368 common/models.py:2369
-#: common/models.py:2625 common/models.py:2626 part/models.py:3013
-#: part/models.py:3101 part/models.py:3180 part/models.py:3200
-#: plugin/models.py:217 plugin/models.py:218
+#: InvenTree/models.py:503 InvenTree/models.py:504 common/models.py:2140
+#: common/models.py:2141 common/models.py:2354 common/models.py:2355
+#: common/models.py:2611 common/models.py:2612 part/models.py:3047
+#: part/models.py:3135 part/models.py:3214 part/models.py:3234
+#: plugin/models.py:218 plugin/models.py:219
#: report/templates/report/inventree_test_report_base.html:105
-#: templates/js/translated/stock.js:2773
+#: templates/js/translated/stock.js:2904
msgid "User"
msgstr "Utente"
@@ -324,53 +329,54 @@ msgstr "Nomi duplicati non possono esistere sotto lo stesso genitore"
msgid "Invalid choice"
msgstr "Scelta non valida"
-#: InvenTree/models.py:648 InvenTree/models.py:649 common/models.py:2354
-#: company/models.py:390 label/models.py:103 part/models.py:847
-#: part/models.py:3400 plugin/models.py:41 report/models.py:160
+#: InvenTree/models.py:648 InvenTree/models.py:649 common/models.py:2340
+#: company/models.py:539 label/models.py:111 part/models.py:848
+#: part/models.py:3434 plugin/models.py:42 report/models.py:160
#: templates/InvenTree/settings/mixins/urls.html:13
#: templates/InvenTree/settings/notifications.html:17
-#: templates/InvenTree/settings/plugin.html:80
+#: templates/InvenTree/settings/plugin.html:74
#: templates/InvenTree/settings/plugin_settings.html:22
-#: templates/js/translated/company.js:658
-#: templates/js/translated/company.js:706
-#: templates/js/translated/company.js:871
-#: templates/js/translated/company.js:1071 templates/js/translated/part.js:1160
-#: templates/js/translated/part.js:1447 templates/js/translated/part.js:1583
-#: templates/js/translated/part.js:2699 templates/js/translated/stock.js:2464
+#: templates/js/translated/company.js:665
+#: templates/js/translated/company.js:713
+#: templates/js/translated/company.js:940
+#: templates/js/translated/company.js:1196
+#: templates/js/translated/company.js:1444 templates/js/translated/part.js:1159
+#: templates/js/translated/part.js:1446 templates/js/translated/part.js:1582
+#: templates/js/translated/part.js:2684 templates/js/translated/stock.js:2595
msgid "Name"
msgstr "Nome"
-#: InvenTree/models.py:655 build/models.py:164
+#: InvenTree/models.py:655 build/models.py:168
#: build/templates/build/detail.html:24 common/models.py:111
-#: company/models.py:312 company/models.py:590
+#: company/models.py:461 company/models.py:739
#: company/templates/company/company_base.html:72
#: company/templates/company/manufacturer_part.html:75
-#: company/templates/company/supplier_part.html:108 label/models.py:110
-#: order/models.py:232 order/models.py:1117 part/admin.py:194 part/admin.py:276
-#: part/models.py:869 part/models.py:3416 part/templates/part/category.html:81
+#: company/templates/company/supplier_part.html:108 label/models.py:118
+#: order/models.py:232 order/models.py:1130 part/admin.py:194 part/admin.py:276
+#: part/models.py:870 part/models.py:3450 part/templates/part/category.html:81
#: part/templates/part/part_base.html:172
#: part/templates/part/part_scheduling.html:12 report/models.py:173
-#: report/models.py:587 report/models.py:631
+#: report/models.py:589 report/models.py:633
#: report/templates/report/inventree_build_order_base.html:117
#: stock/admin.py:41 stock/templates/stock/location.html:123
#: templates/InvenTree/settings/notifications.html:19
#: templates/InvenTree/settings/plugin_settings.html:27
#: templates/InvenTree/settings/settings_staff_js.html:75
-#: templates/js/translated/bom.js:632 templates/js/translated/bom.js:933
-#: templates/js/translated/build.js:2857 templates/js/translated/company.js:510
-#: templates/js/translated/company.js:988
-#: templates/js/translated/company.js:1251 templates/js/translated/order.js:298
-#: templates/js/translated/part.js:1212 templates/js/translated/part.js:1456
-#: templates/js/translated/part.js:1594 templates/js/translated/part.js:1933
-#: templates/js/translated/part.js:2247 templates/js/translated/part.js:2735
-#: templates/js/translated/part.js:2826
-#: templates/js/translated/purchase_order.js:1666
-#: templates/js/translated/purchase_order.js:1812
-#: templates/js/translated/purchase_order.js:1990
-#: templates/js/translated/return_order.js:302
-#: templates/js/translated/sales_order.js:790
-#: templates/js/translated/stock.js:1439 templates/js/translated/stock.js:1817
-#: templates/js/translated/stock.js:2496 templates/js/translated/stock.js:2568
+#: templates/js/translated/bom.js:633 templates/js/translated/bom.js:951
+#: templates/js/translated/build.js:2062 templates/js/translated/company.js:517
+#: templates/js/translated/company.js:1361
+#: templates/js/translated/company.js:1672 templates/js/translated/index.js:114
+#: templates/js/translated/order.js:298 templates/js/translated/part.js:1211
+#: templates/js/translated/part.js:1455 templates/js/translated/part.js:1593
+#: templates/js/translated/part.js:1932 templates/js/translated/part.js:2323
+#: templates/js/translated/part.js:2720 templates/js/translated/part.js:2811
+#: templates/js/translated/purchase_order.js:1681
+#: templates/js/translated/purchase_order.js:1827
+#: templates/js/translated/purchase_order.js:2000
+#: templates/js/translated/return_order.js:314
+#: templates/js/translated/sales_order.js:802
+#: templates/js/translated/stock.js:1438 templates/js/translated/stock.js:1974
+#: templates/js/translated/stock.js:2627 templates/js/translated/stock.js:2699
msgid "Description"
msgstr "Descrizione"
@@ -383,7 +389,7 @@ msgid "parent"
msgstr "genitore"
#: InvenTree/models.py:671 InvenTree/models.py:672
-#: templates/js/translated/part.js:2744 templates/js/translated/stock.js:2505
+#: templates/js/translated/part.js:2729 templates/js/translated/stock.js:2636
msgid "Path"
msgstr "Percorso"
@@ -419,12 +425,12 @@ msgstr "Errore del server"
msgid "An error has been logged by the server."
msgstr "Un errore è stato loggato dal server."
-#: InvenTree/serializers.py:60 part/models.py:3897
+#: InvenTree/serializers.py:60 part/models.py:3941
msgid "Must be a valid number"
msgstr "Deve essere un numero valido"
-#: InvenTree/serializers.py:90 company/models.py:154
-#: company/templates/company/company_base.html:107 part/models.py:2852
+#: InvenTree/serializers.py:90 company/models.py:150
+#: company/templates/company/company_base.html:107 part/models.py:2886
#: templates/InvenTree/settings/settings_staff_js.html:44
#: templates/currency_data.html:5
msgid "Currency"
@@ -497,130 +503,130 @@ msgstr "URL del file immagine remota"
msgid "Downloading images from remote URL is not enabled"
msgstr "Il download delle immagini da URL remoto non è abilitato"
-#: InvenTree/settings.py:714
+#: InvenTree/settings.py:741
msgid "Czech"
msgstr "Ceco"
-#: InvenTree/settings.py:715
+#: InvenTree/settings.py:742
msgid "Danish"
msgstr "Danese"
-#: InvenTree/settings.py:716
+#: InvenTree/settings.py:743
msgid "German"
msgstr "Tedesco"
-#: InvenTree/settings.py:717
+#: InvenTree/settings.py:744
msgid "Greek"
msgstr "Greco"
-#: InvenTree/settings.py:718
+#: InvenTree/settings.py:745
msgid "English"
msgstr "Inglese"
-#: InvenTree/settings.py:719
+#: InvenTree/settings.py:746
msgid "Spanish"
msgstr "Spagnolo"
-#: InvenTree/settings.py:720
+#: InvenTree/settings.py:747
msgid "Spanish (Mexican)"
msgstr "Spagnolo (Messicano)"
-#: InvenTree/settings.py:721
+#: InvenTree/settings.py:748
msgid "Farsi / Persian"
msgstr "Farsi / Persiano"
-#: InvenTree/settings.py:722
+#: InvenTree/settings.py:749
msgid "Finnish"
msgstr ""
-#: InvenTree/settings.py:723
+#: InvenTree/settings.py:750
msgid "French"
msgstr "Francese"
-#: InvenTree/settings.py:724
+#: InvenTree/settings.py:751
msgid "Hebrew"
msgstr "Ebraico"
-#: InvenTree/settings.py:725
+#: InvenTree/settings.py:752
msgid "Hungarian"
msgstr "Ungherese"
-#: InvenTree/settings.py:726
+#: InvenTree/settings.py:753
msgid "Italian"
msgstr "Italiano"
-#: InvenTree/settings.py:727
+#: InvenTree/settings.py:754
msgid "Japanese"
msgstr "Giapponese"
-#: InvenTree/settings.py:728
+#: InvenTree/settings.py:755
msgid "Korean"
msgstr "Coreano"
-#: InvenTree/settings.py:729
+#: InvenTree/settings.py:756
msgid "Dutch"
msgstr "Olandese"
-#: InvenTree/settings.py:730
+#: InvenTree/settings.py:757
msgid "Norwegian"
msgstr "Norvegese"
-#: InvenTree/settings.py:731
+#: InvenTree/settings.py:758
msgid "Polish"
msgstr "Polacco"
-#: InvenTree/settings.py:732
+#: InvenTree/settings.py:759
msgid "Portuguese"
msgstr "Portoghese"
-#: InvenTree/settings.py:733
+#: InvenTree/settings.py:760
msgid "Portuguese (Brazilian)"
msgstr "Portoghese (Brasile)"
-#: InvenTree/settings.py:734
+#: InvenTree/settings.py:761
msgid "Russian"
msgstr "Russo"
-#: InvenTree/settings.py:735
+#: InvenTree/settings.py:762
msgid "Slovenian"
msgstr "Sloveno"
-#: InvenTree/settings.py:736
+#: InvenTree/settings.py:763
msgid "Swedish"
msgstr "Svedese"
-#: InvenTree/settings.py:737
+#: InvenTree/settings.py:764
msgid "Thai"
msgstr "Thailandese"
-#: InvenTree/settings.py:738
+#: InvenTree/settings.py:765
msgid "Turkish"
msgstr "Turco"
-#: InvenTree/settings.py:739
+#: InvenTree/settings.py:766
msgid "Vietnamese"
msgstr "Vietnamita"
-#: InvenTree/settings.py:740
+#: InvenTree/settings.py:767
msgid "Chinese"
msgstr "Cinese"
-#: InvenTree/status.py:61 part/serializers.py:878
+#: InvenTree/status.py:68 part/serializers.py:940
msgid "Background worker check failed"
msgstr "Controllo in background non riuscito"
-#: InvenTree/status.py:65
+#: InvenTree/status.py:72
msgid "Email backend not configured"
msgstr "Server di posta non configurato"
-#: InvenTree/status.py:68
+#: InvenTree/status.py:75
msgid "InvenTree system health checks failed"
msgstr "Controlli di sistema InvenTree falliti"
#: InvenTree/status_codes.py:12 InvenTree/status_codes.py:40
#: InvenTree/status_codes.py:148 InvenTree/status_codes.py:167
#: InvenTree/status_codes.py:188 generic/states/tests.py:16
-#: templates/js/translated/table_filters.js:511
+#: templates/js/translated/table_filters.js:533
msgid "Pending"
msgstr "In attesa"
@@ -630,7 +636,7 @@ msgstr "Inviato"
#: InvenTree/status_codes.py:14 InvenTree/status_codes.py:151
#: InvenTree/status_codes.py:172 generic/states/tests.py:18
-#: order/templates/order/order_base.html:162
+#: order/templates/order/order_base.html:158
#: order/templates/order/sales_order_base.html:162
msgid "Complete"
msgstr "Completo"
@@ -654,10 +660,10 @@ msgstr "Reso"
msgid "In Progress"
msgstr "In corso"
-#: InvenTree/status_codes.py:42 order/models.py:1332
-#: templates/js/translated/sales_order.js:1509
-#: templates/js/translated/sales_order.js:1630
-#: templates/js/translated/sales_order.js:1934
+#: InvenTree/status_codes.py:42 order/models.py:1345
+#: templates/js/translated/sales_order.js:1521
+#: templates/js/translated/sales_order.js:1642
+#: templates/js/translated/sales_order.js:1946
msgid "Shipped"
msgstr "Spedito"
@@ -689,7 +695,7 @@ msgstr "In quarantena"
msgid "Legacy stock tracking entry"
msgstr "Voce di tracciamento stock preesistente"
-#: InvenTree/status_codes.py:93 templates/js/translated/stock.js:511
+#: InvenTree/status_codes.py:93 templates/js/translated/stock.js:510
msgid "Stock item created"
msgstr "Elemento stock creato"
@@ -745,7 +751,7 @@ msgstr "Diviso dall'elemento genitore"
msgid "Split child item"
msgstr "Dividi elemento figlio"
-#: InvenTree/status_codes.py:120 templates/js/translated/stock.js:2243
+#: InvenTree/status_codes.py:120 templates/js/translated/stock.js:1769
msgid "Merged stock items"
msgstr "Elemento stock raggruppato"
@@ -765,7 +771,7 @@ msgstr "Build order output completato"
msgid "Build order output rejected"
msgstr ""
-#: InvenTree/status_codes.py:129 templates/js/translated/stock.js:1676
+#: InvenTree/status_codes.py:129 templates/js/translated/stock.js:1675
msgid "Consumed by build order"
msgstr "Impegnato dall'ordine di costruzione"
@@ -781,7 +787,7 @@ msgstr "Ricevuto contro l'ordine di acquisto"
msgid "Returned against Return Order"
msgstr "Restituito contro l'ordine di ritorno"
-#: InvenTree/status_codes.py:141 templates/js/translated/table_filters.js:321
+#: InvenTree/status_codes.py:141 templates/js/translated/table_filters.js:327
msgid "Sent to customer"
msgstr "Inviato al cliente"
@@ -849,83 +855,111 @@ msgstr "Le password devono coincidere"
msgid "Wrong password provided"
msgstr "Password inserita non corretta"
-#: InvenTree/views.py:651 templates/navbar.html:157
+#: InvenTree/views.py:653 templates/navbar.html:157
msgid "System Information"
msgstr "Informazioni sistema"
-#: InvenTree/views.py:658 templates/navbar.html:168
+#: InvenTree/views.py:660 templates/navbar.html:168
msgid "About InvenTree"
msgstr "Informazioni Su InvenTree"
-#: build/api.py:222
+#: build/api.py:242
msgid "Build must be cancelled before it can be deleted"
msgstr "La produzione deve essere annullata prima di poter essere eliminata"
-#: build/models.py:69 build/templates/build/build_base.html:9
+#: build/api.py:286 part/models.py:3833 templates/js/translated/bom.js:985
+#: templates/js/translated/bom.js:1025 templates/js/translated/build.js:2449
+#: templates/js/translated/table_filters.js:166
+#: templates/js/translated/table_filters.js:518
+msgid "Consumable"
+msgstr "Consumabile"
+
+#: build/api.py:287 part/models.py:3827 part/templates/part/upload_bom.html:58
+#: templates/js/translated/bom.js:989 templates/js/translated/bom.js:1016
+#: templates/js/translated/build.js:2458
+#: templates/js/translated/table_filters.js:162
+#: templates/js/translated/table_filters.js:191
+#: templates/js/translated/table_filters.js:522
+msgid "Optional"
+msgstr "Opzionale"
+
+#: build/api.py:288 templates/js/translated/table_filters.js:360
+#: templates/js/translated/table_filters.js:514
+msgid "Tracked"
+msgstr "Monitorato"
+
+#: build/api.py:290 part/admin.py:64 templates/js/translated/build.js:1670
+#: templates/js/translated/build.js:2549
+#: templates/js/translated/sales_order.js:1918
+#: templates/js/translated/table_filters.js:506
+msgid "Allocated"
+msgstr "Allocato"
+
+#: build/models.py:73 build/templates/build/build_base.html:9
#: build/templates/build/build_base.html:27
#: report/templates/report/inventree_build_order_base.html:105
#: templates/email/build_order_completed.html:16
#: templates/email/overdue_build_order.html:15
-#: templates/js/translated/build.js:945 templates/js/translated/stock.js:2629
+#: templates/js/translated/build.js:953 templates/js/translated/stock.js:2760
msgid "Build Order"
msgstr "Ordine di Produzione"
-#: build/models.py:70 build/templates/build/build_base.html:13
+#: build/models.py:74 build/templates/build/build_base.html:13
#: build/templates/build/index.html:8 build/templates/build/index.html:12
-#: order/templates/order/sales_order_detail.html:119
+#: order/templates/order/sales_order_detail.html:111
#: order/templates/order/so_sidebar.html:13
-#: part/templates/part/part_sidebar.html:22 templates/InvenTree/index.html:244
+#: part/templates/part/part_sidebar.html:22 templates/InvenTree/index.html:196
#: templates/InvenTree/search.html:141
#: templates/InvenTree/settings/sidebar.html:53
-#: templates/js/translated/search.js:228 users/models.py:42
+#: templates/js/translated/search.js:186 users/models.py:42
msgid "Build Orders"
msgstr "Ordini di Produzione"
-#: build/models.py:111
+#: build/models.py:115
msgid "Invalid choice for parent build"
msgstr "Scelta non valida per la produzione genitore"
-#: build/models.py:155
+#: build/models.py:159
msgid "Build Order Reference"
msgstr "Riferimento Ordine Di Produzione"
-#: build/models.py:156 order/models.py:359 order/models.py:765
-#: order/models.py:1087 order/models.py:1724 part/admin.py:278
-#: part/models.py:3798 part/templates/part/upload_bom.html:54
+#: build/models.py:160 order/models.py:372 order/models.py:778
+#: order/models.py:1100 order/models.py:1737 part/admin.py:278
+#: part/models.py:3842 part/templates/part/upload_bom.html:54
#: report/templates/report/inventree_bill_of_materials_report.html:139
#: report/templates/report/inventree_po_report_base.html:28
#: report/templates/report/inventree_return_order_report_base.html:26
#: report/templates/report/inventree_so_report_base.html:28
-#: templates/js/translated/bom.js:769 templates/js/translated/bom.js:943
-#: templates/js/translated/build.js:2098 templates/js/translated/order.js:291
+#: templates/js/translated/bom.js:770 templates/js/translated/bom.js:961
+#: templates/js/translated/build.js:2441 templates/js/translated/order.js:291
#: templates/js/translated/pricing.js:386
-#: templates/js/translated/purchase_order.js:2033
-#: templates/js/translated/return_order.js:713
-#: templates/js/translated/sales_order.js:1798
+#: templates/js/translated/purchase_order.js:2043
+#: templates/js/translated/return_order.js:725
+#: templates/js/translated/sales_order.js:1810
msgid "Reference"
msgstr "Riferimento"
-#: build/models.py:167
+#: build/models.py:171
msgid "Brief description of the build (optional)"
msgstr "Breve descrizione della build (facoltativo)"
-#: build/models.py:175 build/templates/build/build_base.html:183
+#: build/models.py:179 build/templates/build/build_base.html:184
#: build/templates/build/detail.html:87
msgid "Parent Build"
msgstr "Produzione Genitore"
-#: build/models.py:176
+#: build/models.py:180
msgid "BuildOrder to which this build is allocated"
msgstr "Ordine di produzione a cui questa produzione viene assegnata"
-#: build/models.py:181 build/templates/build/build_base.html:98
-#: build/templates/build/detail.html:29 company/models.py:775
-#: order/models.py:1195 order/models.py:1311 order/models.py:1312
-#: part/models.py:391 part/models.py:2865 part/models.py:2979
-#: part/models.py:3119 part/models.py:3138 part/models.py:3157
-#: part/models.py:3178 part/models.py:3270 part/models.py:3555
-#: part/models.py:3663 part/models.py:3763 part/models.py:4077
-#: part/serializers.py:842 part/serializers.py:1245
+#: build/models.py:185 build/templates/build/build_base.html:98
+#: build/templates/build/detail.html:29 company/models.py:924
+#: order/models.py:1208 order/models.py:1324 order/models.py:1325
+#: part/models.py:392 part/models.py:2899 part/models.py:3013
+#: part/models.py:3153 part/models.py:3172 part/models.py:3191
+#: part/models.py:3212 part/models.py:3304 part/models.py:3589
+#: part/models.py:3712 part/models.py:3807 part/models.py:4121
+#: part/serializers.py:904 part/serializers.py:1307
#: part/templates/part/part_app_base.html:8
#: part/templates/part/part_pricing.html:12
#: part/templates/part/upload_bom.html:52
@@ -935,266 +969,229 @@ msgstr "Ordine di produzione a cui questa produzione viene assegnata"
#: report/templates/report/inventree_po_report_base.html:27
#: report/templates/report/inventree_return_order_report_base.html:24
#: report/templates/report/inventree_so_report_base.html:27
-#: stock/serializers.py:156 stock/serializers.py:509
+#: stock/serializers.py:205 stock/serializers.py:576
#: templates/InvenTree/search.html:82
#: templates/email/build_order_completed.html:17
#: templates/email/build_order_required_stock.html:17
#: templates/email/low_stock_notification.html:15
#: templates/email/overdue_build_order.html:16
-#: templates/js/translated/barcode.js:529 templates/js/translated/bom.js:631
-#: templates/js/translated/bom.js:768 templates/js/translated/bom.js:887
-#: templates/js/translated/build.js:1403 templates/js/translated/build.js:1965
-#: templates/js/translated/build.js:2464 templates/js/translated/build.js:2868
-#: templates/js/translated/company.js:337
-#: templates/js/translated/company.js:822
-#: templates/js/translated/company.js:929
-#: templates/js/translated/company.js:1169 templates/js/translated/part.js:1918
-#: templates/js/translated/part.js:1990 templates/js/translated/part.js:2216
-#: templates/js/translated/pricing.js:369
-#: templates/js/translated/purchase_order.js:746
-#: templates/js/translated/purchase_order.js:1274
-#: templates/js/translated/purchase_order.js:1811
-#: templates/js/translated/purchase_order.js:1975
-#: templates/js/translated/return_order.js:527
-#: templates/js/translated/return_order.js:694
-#: templates/js/translated/sales_order.js:285
-#: templates/js/translated/sales_order.js:1185
-#: templates/js/translated/sales_order.js:1584
-#: templates/js/translated/sales_order.js:1782
-#: templates/js/translated/stock.js:643 templates/js/translated/stock.js:809
-#: templates/js/translated/stock.js:1021 templates/js/translated/stock.js:1773
-#: templates/js/translated/stock.js:2594 templates/js/translated/stock.js:2831
-#: templates/js/translated/stock.js:2968
+#: templates/js/translated/barcode.js:529 templates/js/translated/bom.js:632
+#: templates/js/translated/bom.js:769 templates/js/translated/bom.js:905
+#: templates/js/translated/build.js:1289 templates/js/translated/build.js:1669
+#: templates/js/translated/build.js:2085 templates/js/translated/build.js:2261
+#: templates/js/translated/company.js:347
+#: templates/js/translated/company.js:1147
+#: templates/js/translated/company.js:1302
+#: templates/js/translated/company.js:1590 templates/js/translated/index.js:104
+#: templates/js/translated/part.js:1917 templates/js/translated/part.js:1989
+#: templates/js/translated/part.js:2292 templates/js/translated/pricing.js:369
+#: templates/js/translated/purchase_order.js:757
+#: templates/js/translated/purchase_order.js:1289
+#: templates/js/translated/purchase_order.js:1826
+#: templates/js/translated/purchase_order.js:1985
+#: templates/js/translated/return_order.js:539
+#: templates/js/translated/return_order.js:706
+#: templates/js/translated/sales_order.js:297
+#: templates/js/translated/sales_order.js:1197
+#: templates/js/translated/sales_order.js:1596
+#: templates/js/translated/sales_order.js:1794
+#: templates/js/translated/stock.js:642 templates/js/translated/stock.js:808
+#: templates/js/translated/stock.js:1020 templates/js/translated/stock.js:1913
+#: templates/js/translated/stock.js:2725 templates/js/translated/stock.js:2958
+#: templates/js/translated/stock.js:3095
msgid "Part"
msgstr "Articolo"
-#: build/models.py:189
+#: build/models.py:193
msgid "Select part to build"
msgstr "Selezionare parte da produrre"
-#: build/models.py:194
+#: build/models.py:198
msgid "Sales Order Reference"
msgstr "Numero di riferimento ordine di vendita"
-#: build/models.py:198
+#: build/models.py:202
msgid "SalesOrder to which this build is allocated"
msgstr "Ordine di vendita a cui questa produzione viene assegnata"
-#: build/models.py:203 build/serializers.py:942
-#: templates/js/translated/build.js:2452
-#: templates/js/translated/sales_order.js:1173
+#: build/models.py:207 build/serializers.py:946
+#: templates/js/translated/build.js:1657
+#: templates/js/translated/sales_order.js:1185
msgid "Source Location"
msgstr "Posizione Di Origine"
-#: build/models.py:207
+#: build/models.py:211
msgid "Select location to take stock from for this build (leave blank to take from any stock location)"
msgstr "Seleziona la posizione da cui prelevare la giacenza (lasciare vuoto per prelevare da qualsiasi posizione di magazzino)"
-#: build/models.py:212
+#: build/models.py:216
msgid "Destination Location"
msgstr "Posizione Della Destinazione"
-#: build/models.py:216
+#: build/models.py:220
msgid "Select location where the completed items will be stored"
msgstr "Seleziona il luogo in cui gli articoli completati saranno immagazzinati"
-#: build/models.py:220
+#: build/models.py:224
msgid "Build Quantity"
msgstr "Quantità Produzione"
-#: build/models.py:223
+#: build/models.py:227
msgid "Number of stock items to build"
msgstr "Numero di articoli da costruire"
-#: build/models.py:227
+#: build/models.py:231
msgid "Completed items"
msgstr "Articoli completati"
-#: build/models.py:229
+#: build/models.py:233
msgid "Number of stock items which have been completed"
msgstr "Numero di articoli di magazzino che sono stati completati"
-#: build/models.py:233
+#: build/models.py:237
msgid "Build Status"
msgstr "Stato Produzione"
-#: build/models.py:237
+#: build/models.py:241
msgid "Build status code"
msgstr "Codice stato di produzione"
-#: build/models.py:246 build/serializers.py:269 order/serializers.py:506
-#: stock/models.py:739 templates/js/translated/purchase_order.js:1099
+#: build/models.py:250 build/serializers.py:277 order/serializers.py:512
+#: stock/models.py:739 templates/js/translated/purchase_order.js:1114
msgid "Batch Code"
msgstr "Codice Lotto"
-#: build/models.py:250 build/serializers.py:270
+#: build/models.py:254 build/serializers.py:278
msgid "Batch code for this build output"
msgstr "Codice del lotto per questa produzione"
-#: build/models.py:253 order/models.py:244 part/models.py:1038
+#: build/models.py:257 order/models.py:248 part/models.py:1039
#: part/templates/part/part_base.html:312
-#: templates/js/translated/return_order.js:327
-#: templates/js/translated/sales_order.js:815
+#: templates/js/translated/return_order.js:339
+#: templates/js/translated/sales_order.js:827
msgid "Creation Date"
msgstr "Data di creazione"
-#: build/models.py:257
+#: build/models.py:261
msgid "Target completion date"
msgstr "Data completamento obiettivo"
-#: build/models.py:258
+#: build/models.py:262
msgid "Target date for build completion. Build will be overdue after this date."
msgstr "Data di completamento della produzione. Dopo tale data la produzione sarà in ritardo."
-#: build/models.py:261 order/models.py:409 order/models.py:1767
-#: templates/js/translated/build.js:2953
+#: build/models.py:265 order/models.py:422 order/models.py:1780
+#: templates/js/translated/build.js:2170
msgid "Completion Date"
msgstr "Data di completamento"
-#: build/models.py:267
+#: build/models.py:271
msgid "completed by"
msgstr "Completato da"
-#: build/models.py:275 templates/js/translated/build.js:2913
+#: build/models.py:279 templates/js/translated/build.js:2130
msgid "Issued by"
msgstr "Rilasciato da"
-#: build/models.py:276
+#: build/models.py:280
msgid "User who issued this build order"
msgstr "Utente che ha emesso questo ordine di costruzione"
-#: build/models.py:284 build/templates/build/build_base.html:204
-#: build/templates/build/detail.html:122 order/models.py:258
-#: order/templates/order/order_base.html:214
-#: order/templates/order/return_order_base.html:182
-#: order/templates/order/sales_order_base.html:222 part/models.py:1042
+#: build/models.py:288 build/templates/build/build_base.html:205
+#: build/templates/build/detail.html:122 order/models.py:262
+#: order/templates/order/order_base.html:217
+#: order/templates/order/return_order_base.html:189
+#: order/templates/order/sales_order_base.html:229 part/models.py:1043
#: part/templates/part/part_base.html:392
#: report/templates/report/inventree_build_order_base.html:158
-#: templates/js/translated/build.js:2925
-#: templates/js/translated/purchase_order.js:1723
-#: templates/js/translated/return_order.js:347
-#: templates/js/translated/table_filters.js:461
+#: templates/js/translated/build.js:2142
+#: templates/js/translated/purchase_order.js:1738
+#: templates/js/translated/return_order.js:359
+#: templates/js/translated/table_filters.js:467
msgid "Responsible"
msgstr "Responsabile"
-#: build/models.py:285
+#: build/models.py:289
msgid "User or group responsible for this build order"
msgstr "Utente o gruppo responsabile di questo ordine di produzione"
-#: build/models.py:290 build/templates/build/detail.html:108
+#: build/models.py:294 build/templates/build/detail.html:108
#: company/templates/company/manufacturer_part.html:107
#: company/templates/company/supplier_part.html:195
-#: order/templates/order/order_base.html:171
+#: order/templates/order/order_base.html:167
#: order/templates/order/return_order_base.html:146
#: order/templates/order/sales_order_base.html:181
#: part/templates/part/part_base.html:385 stock/models.py:733
#: stock/templates/stock/item_base.html:201
+#: templates/js/translated/company.js:1050
msgid "External Link"
msgstr "Collegamento esterno"
-#: build/models.py:295
+#: build/models.py:299
msgid "Build Priority"
msgstr "Priorità di produzione"
-#: build/models.py:298
+#: build/models.py:302
msgid "Priority of this build order"
msgstr "Priorità di questo ordine di produzione"
-#: build/models.py:536
+#: build/models.py:309 common/models.py:104 order/admin.py:17
+#: order/models.py:237 templates/InvenTree/settings/settings_staff_js.html:70
+#: templates/js/translated/build.js:2067
+#: templates/js/translated/purchase_order.js:1685
+#: templates/js/translated/return_order.js:318
+#: templates/js/translated/sales_order.js:806
+#: templates/js/translated/table_filters.js:24
+#: templates/project_code_data.html:6
+msgid "Project Code"
+msgstr "Codice del progetto"
+
+#: build/models.py:310
+msgid "Project code for this build order"
+msgstr ""
+
+#: build/models.py:545
#, python-brace-format
msgid "Build order {build} has been completed"
msgstr "L'ordine di produzione {build} è stato completato"
-#: build/models.py:542
+#: build/models.py:551
msgid "A build order has been completed"
msgstr "L'ordine di produzione è stato completato"
-#: build/models.py:744 build/models.py:811
+#: build/models.py:753 build/models.py:831
msgid "No build output specified"
msgstr "Nessun output di produzione specificato"
-#: build/models.py:747
+#: build/models.py:756
msgid "Build output is already completed"
msgstr "La produzione è stata completata"
-#: build/models.py:750
+#: build/models.py:759
msgid "Build output does not match Build Order"
msgstr "L'output della produzione non corrisponde all'ordine di compilazione"
-#: build/models.py:815 build/serializers.py:212 build/serializers.py:251
-#: build/serializers.py:811 order/models.py:440 order/serializers.py:379
-#: order/serializers.py:501 part/serializers.py:1087 part/serializers.py:1408
-#: stock/models.py:593 stock/models.py:1387 stock/serializers.py:315
+#: build/models.py:835 build/serializers.py:220 build/serializers.py:259
+#: build/serializers.py:819 order/models.py:453 order/serializers.py:385
+#: order/serializers.py:507 part/serializers.py:1149 part/serializers.py:1470
+#: stock/models.py:593 stock/models.py:1387 stock/serializers.py:381
msgid "Quantity must be greater than zero"
msgstr "La quantità deve essere maggiore di zero"
-#: build/models.py:820 build/serializers.py:217
+#: build/models.py:840 build/serializers.py:225
msgid "Quantity cannot be greater than the output quantity"
msgstr ""
-#: build/models.py:1272
-msgid "Build item must specify a build output, as master part is marked as trackable"
-msgstr "L'elemento di compilazione deve specificare un output poiché la parte principale è contrassegnata come rintracciabile"
+#: build/models.py:1260
+msgid "Build object"
+msgstr ""
-#: build/models.py:1281
-#, python-brace-format
-msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})"
-msgstr "La quantità assegnata ({q}) non deve essere maggiore della quantità disponibile ({a})"
-
-#: build/models.py:1291 order/models.py:1601
-msgid "Stock item is over-allocated"
-msgstr "L'articolo in giacenza è sovrallocato"
-
-#: build/models.py:1297 order/models.py:1604
-msgid "Allocation quantity must be greater than zero"
-msgstr "La quantità di assegnazione deve essere maggiore di zero"
-
-#: build/models.py:1303
-msgid "Quantity must be 1 for serialized stock"
-msgstr "La quantità deve essere 1 per lo stock serializzato"
-
-#: build/models.py:1360
-msgid "Selected stock item not found in BOM"
-msgstr "Articolo in giacenza selezionato non trovato nel BOM"
-
-#: build/models.py:1438 stock/templates/stock/item_base.html:170
-#: templates/InvenTree/search.html:139 templates/js/translated/build.js:2841
-#: templates/navbar.html:38
-msgid "Build"
-msgstr "Produzione"
-
-#: build/models.py:1439
-msgid "Build to allocate parts"
-msgstr "Costruisci per allocare gli articoli"
-
-#: build/models.py:1455 build/serializers.py:791 order/serializers.py:1059
-#: order/serializers.py:1080 stock/serializers.py:413 stock/serializers.py:770
-#: stock/serializers.py:896 stock/templates/stock/item_base.html:10
-#: stock/templates/stock/item_base.html:23
-#: stock/templates/stock/item_base.html:195
-#: templates/js/translated/build.js:955 templates/js/translated/build.js:960
-#: templates/js/translated/build.js:2466 templates/js/translated/build.js:3038
-#: templates/js/translated/sales_order.js:286
-#: templates/js/translated/sales_order.js:1186
-#: templates/js/translated/sales_order.js:1485
-#: templates/js/translated/sales_order.js:1490
-#: templates/js/translated/sales_order.js:1591
-#: templates/js/translated/sales_order.js:1678
-#: templates/js/translated/stock.js:644 templates/js/translated/stock.js:810
-#: templates/js/translated/stock.js:2714
-msgid "Stock Item"
-msgstr "Articoli in magazzino"
-
-#: build/models.py:1456
-msgid "Source stock item"
-msgstr "Origine giacenza articolo"
-
-#: build/models.py:1468 build/serializers.py:198 build/serializers.py:236
-#: build/templates/build/build_base.html:103
-#: build/templates/build/detail.html:34 common/models.py:2176
-#: order/models.py:1073 order/models.py:1645 order/serializers.py:1233
+#: build/models.py:1274 build/models.py:1556 build/serializers.py:206
+#: build/serializers.py:244 build/templates/build/build_base.html:103
+#: build/templates/build/detail.html:34 common/models.py:2162
+#: order/models.py:1086 order/models.py:1658 order/serializers.py:1239
#: order/templates/order/order_wizard/match_parts.html:30 part/admin.py:277
-#: part/forms.py:47 part/models.py:2992 part/models.py:3779
+#: part/forms.py:47 part/models.py:3026 part/models.py:3823
#: part/templates/part/part_pricing.html:16
#: part/templates/part/upload_bom.html:53
#: report/templates/report/inventree_bill_of_materials_report.html:138
@@ -1203,315 +1200,367 @@ msgstr "Origine giacenza articolo"
#: report/templates/report/inventree_so_report_base.html:29
#: report/templates/report/inventree_test_report_base.html:90
#: report/templates/report/inventree_test_report_base.html:170
-#: stock/admin.py:103 stock/serializers.py:306
+#: stock/admin.py:103 stock/serializers.py:372
#: stock/templates/stock/item_base.html:288
#: stock/templates/stock/item_base.html:296
#: stock/templates/stock/item_base.html:343
#: templates/email/build_order_completed.html:18
-#: templates/js/translated/barcode.js:531 templates/js/translated/bom.js:770
-#: templates/js/translated/bom.js:951 templates/js/translated/build.js:504
-#: templates/js/translated/build.js:716 templates/js/translated/build.js:982
-#: templates/js/translated/build.js:1425 templates/js/translated/build.js:1991
-#: templates/js/translated/build.js:2467
-#: templates/js/translated/company.js:1428
-#: templates/js/translated/model_renderers.js:207
-#: templates/js/translated/order.js:304 templates/js/translated/part.js:935
-#: templates/js/translated/part.js:1784 templates/js/translated/part.js:3263
+#: templates/js/translated/barcode.js:531 templates/js/translated/bom.js:771
+#: templates/js/translated/bom.js:969 templates/js/translated/build.js:510
+#: templates/js/translated/build.js:722 templates/js/translated/build.js:1308
+#: templates/js/translated/build.js:1672 templates/js/translated/build.js:2283
+#: templates/js/translated/company.js:1849
+#: templates/js/translated/model_renderers.js:221
+#: templates/js/translated/order.js:304 templates/js/translated/part.js:934
+#: templates/js/translated/part.js:1783 templates/js/translated/part.js:3248
#: templates/js/translated/pricing.js:381
#: templates/js/translated/pricing.js:474
#: templates/js/translated/pricing.js:522
#: templates/js/translated/pricing.js:616
-#: templates/js/translated/purchase_order.js:749
-#: templates/js/translated/purchase_order.js:1815
-#: templates/js/translated/purchase_order.js:2039
-#: templates/js/translated/sales_order.js:302
-#: templates/js/translated/sales_order.js:1187
-#: templates/js/translated/sales_order.js:1504
-#: templates/js/translated/sales_order.js:1594
-#: templates/js/translated/sales_order.js:1684
-#: templates/js/translated/sales_order.js:1804
-#: templates/js/translated/stock.js:531 templates/js/translated/stock.js:669
-#: templates/js/translated/stock.js:840 templates/js/translated/stock.js:2758
-#: templates/js/translated/stock.js:2843
+#: templates/js/translated/purchase_order.js:760
+#: templates/js/translated/purchase_order.js:1830
+#: templates/js/translated/purchase_order.js:2049
+#: templates/js/translated/sales_order.js:314
+#: templates/js/translated/sales_order.js:1199
+#: templates/js/translated/sales_order.js:1516
+#: templates/js/translated/sales_order.js:1606
+#: templates/js/translated/sales_order.js:1696
+#: templates/js/translated/sales_order.js:1816
+#: templates/js/translated/stock.js:530 templates/js/translated/stock.js:668
+#: templates/js/translated/stock.js:839 templates/js/translated/stock.js:2889
+#: templates/js/translated/stock.js:2970
msgid "Quantity"
msgstr "Quantità"
-#: build/models.py:1469
+#: build/models.py:1275
+msgid "Required quantity for build order"
+msgstr ""
+
+#: build/models.py:1357
+msgid "Build item must specify a build output, as master part is marked as trackable"
+msgstr "L'elemento di compilazione deve specificare un output poiché la parte principale è contrassegnata come rintracciabile"
+
+#: build/models.py:1366
+#, python-brace-format
+msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})"
+msgstr "La quantità assegnata ({q}) non deve essere maggiore della quantità disponibile ({a})"
+
+#: build/models.py:1376 order/models.py:1614
+msgid "Stock item is over-allocated"
+msgstr "L'articolo in giacenza è sovrallocato"
+
+#: build/models.py:1382 order/models.py:1617
+msgid "Allocation quantity must be greater than zero"
+msgstr "La quantità di assegnazione deve essere maggiore di zero"
+
+#: build/models.py:1388
+msgid "Quantity must be 1 for serialized stock"
+msgstr "La quantità deve essere 1 per lo stock serializzato"
+
+#: build/models.py:1449
+msgid "Selected stock item does not match BOM line"
+msgstr ""
+
+#: build/models.py:1543 build/serializers.py:799 order/serializers.py:1065
+#: order/serializers.py:1086 stock/serializers.py:479 stock/serializers.py:887
+#: stock/serializers.py:1013 stock/templates/stock/item_base.html:10
+#: stock/templates/stock/item_base.html:23
+#: stock/templates/stock/item_base.html:195
+#: templates/js/translated/build.js:1671
+#: templates/js/translated/sales_order.js:298
+#: templates/js/translated/sales_order.js:1198
+#: templates/js/translated/sales_order.js:1497
+#: templates/js/translated/sales_order.js:1502
+#: templates/js/translated/sales_order.js:1603
+#: templates/js/translated/sales_order.js:1690
+#: templates/js/translated/stock.js:643 templates/js/translated/stock.js:809
+#: templates/js/translated/stock.js:2845
+msgid "Stock Item"
+msgstr "Articoli in magazzino"
+
+#: build/models.py:1544
+msgid "Source stock item"
+msgstr "Origine giacenza articolo"
+
+#: build/models.py:1557
msgid "Stock quantity to allocate to build"
msgstr "Quantità di magazzino da assegnare per la produzione"
-#: build/models.py:1477
+#: build/models.py:1565
msgid "Install into"
msgstr "Installa in"
-#: build/models.py:1478
+#: build/models.py:1566
msgid "Destination stock item"
msgstr "Destinazione articolo in giacenza"
-#: build/serializers.py:148 build/serializers.py:820
-#: templates/js/translated/build.js:1413
+#: build/serializers.py:156 build/serializers.py:828
+#: templates/js/translated/build.js:1299
msgid "Build Output"
msgstr "Genera Output"
-#: build/serializers.py:160
+#: build/serializers.py:168
msgid "Build output does not match the parent build"
msgstr "L'output generato non corrisponde alla produzione principale"
-#: build/serializers.py:164
+#: build/serializers.py:172
msgid "Output part does not match BuildOrder part"
msgstr "L'output non corrisponde alle parti dell'ordine di produzione"
-#: build/serializers.py:168
+#: build/serializers.py:176
msgid "This build output has already been completed"
msgstr "Questa produzione è stata già completata"
-#: build/serializers.py:179
+#: build/serializers.py:187
msgid "This build output is not fully allocated"
msgstr "Questo output non è stato completamente assegnato"
-#: build/serializers.py:199 build/serializers.py:237
+#: build/serializers.py:207 build/serializers.py:245
msgid "Enter quantity for build output"
msgstr "Inserisci la quantità per l'output di compilazione"
-#: build/serializers.py:258
+#: build/serializers.py:266
msgid "Integer quantity required for trackable parts"
msgstr "Quantità totale richiesta per articoli rintracciabili"
-#: build/serializers.py:261
+#: build/serializers.py:269
msgid "Integer quantity required, as the bill of materials contains trackable parts"
msgstr "Quantità totale richiesta, poiché la fattura dei materiali contiene articoli rintracciabili"
-#: build/serializers.py:276 order/serializers.py:514 order/serializers.py:1237
-#: stock/serializers.py:324 templates/js/translated/purchase_order.js:1123
-#: templates/js/translated/stock.js:334 templates/js/translated/stock.js:532
+#: build/serializers.py:284 order/serializers.py:520 order/serializers.py:1243
+#: stock/serializers.py:390 templates/js/translated/purchase_order.js:1138
+#: templates/js/translated/stock.js:333 templates/js/translated/stock.js:531
msgid "Serial Numbers"
msgstr "Codice Seriale"
-#: build/serializers.py:277
+#: build/serializers.py:285
msgid "Enter serial numbers for build outputs"
msgstr "Inserisci i numeri di serie per gli output di compilazione (build option)"
-#: build/serializers.py:290
+#: build/serializers.py:298
msgid "Auto Allocate Serial Numbers"
msgstr "Numeri di Serie Assegnazione automatica"
-#: build/serializers.py:291
+#: build/serializers.py:299
msgid "Automatically allocate required items with matching serial numbers"
msgstr "Assegna automaticamente gli articoli richiesti con i numeri di serie corrispondenti"
-#: build/serializers.py:326 stock/api.py:670
+#: build/serializers.py:334 stock/api.py:707
msgid "The following serial numbers already exist or are invalid"
msgstr "I seguenti numeri di serie sono già esistenti o non sono validi"
-#: build/serializers.py:377 build/serializers.py:439 build/serializers.py:518
+#: build/serializers.py:385 build/serializers.py:447 build/serializers.py:526
msgid "A list of build outputs must be provided"
msgstr "Deve essere fornito un elenco dei risultati di produzione"
-#: build/serializers.py:415 build/serializers.py:488 order/serializers.py:487
-#: order/serializers.py:606 order/serializers.py:1588 part/serializers.py:854
-#: stock/serializers.py:335 stock/serializers.py:470 stock/serializers.py:551
-#: stock/serializers.py:931 stock/serializers.py:1173
+#: build/serializers.py:423 build/serializers.py:496 order/serializers.py:493
+#: order/serializers.py:612 order/serializers.py:1594 part/serializers.py:916
+#: stock/serializers.py:401 stock/serializers.py:537 stock/serializers.py:618
+#: stock/serializers.py:1048 stock/serializers.py:1290
#: stock/templates/stock/item_base.html:390
#: templates/js/translated/barcode.js:530
-#: templates/js/translated/barcode.js:778 templates/js/translated/build.js:967
-#: templates/js/translated/build.js:2006
-#: templates/js/translated/purchase_order.js:1148
-#: templates/js/translated/purchase_order.js:1238
-#: templates/js/translated/sales_order.js:1497
-#: templates/js/translated/sales_order.js:1605
-#: templates/js/translated/sales_order.js:1613
-#: templates/js/translated/sales_order.js:1692
-#: templates/js/translated/stock.js:645 templates/js/translated/stock.js:811
-#: templates/js/translated/stock.js:1023 templates/js/translated/stock.js:1937
-#: templates/js/translated/stock.js:2608
+#: templates/js/translated/barcode.js:778 templates/js/translated/build.js:980
+#: templates/js/translated/build.js:2298
+#: templates/js/translated/purchase_order.js:1163
+#: templates/js/translated/purchase_order.js:1253
+#: templates/js/translated/sales_order.js:1509
+#: templates/js/translated/sales_order.js:1617
+#: templates/js/translated/sales_order.js:1625
+#: templates/js/translated/sales_order.js:1704
+#: templates/js/translated/stock.js:644 templates/js/translated/stock.js:810
+#: templates/js/translated/stock.js:1022 templates/js/translated/stock.js:2094
+#: templates/js/translated/stock.js:2739
msgid "Location"
msgstr "Posizione"
-#: build/serializers.py:416
+#: build/serializers.py:424
msgid "Stock location for scrapped outputs"
msgstr ""
-#: build/serializers.py:422
+#: build/serializers.py:430
msgid "Discard Allocations"
msgstr ""
-#: build/serializers.py:423
+#: build/serializers.py:431
msgid "Discard any stock allocations for scrapped outputs"
msgstr ""
-#: build/serializers.py:428
+#: build/serializers.py:436
msgid "Reason for scrapping build output(s)"
msgstr ""
-#: build/serializers.py:489
+#: build/serializers.py:497
msgid "Location for completed build outputs"
msgstr "Posizione per gli output di build completati"
-#: build/serializers.py:495 build/templates/build/build_base.html:151
-#: build/templates/build/detail.html:62 order/models.py:791
-#: order/models.py:1750 order/serializers.py:524 stock/admin.py:106
-#: stock/templates/stock/item_base.html:423
-#: templates/js/translated/barcode.js:252 templates/js/translated/build.js:2897
-#: templates/js/translated/purchase_order.js:1278
-#: templates/js/translated/purchase_order.js:1682
-#: templates/js/translated/return_order.js:319
-#: templates/js/translated/sales_order.js:807
-#: templates/js/translated/stock.js:1912 templates/js/translated/stock.js:2732
-#: templates/js/translated/stock.js:2859
+#: build/serializers.py:503 build/templates/build/build_base.html:152
+#: build/templates/build/detail.html:62 order/models.py:804
+#: order/models.py:1763 order/serializers.py:530 stock/admin.py:106
+#: stock/serializers.py:677 stock/templates/stock/item_base.html:423
+#: templates/js/translated/barcode.js:252 templates/js/translated/build.js:2114
+#: templates/js/translated/purchase_order.js:1293
+#: templates/js/translated/purchase_order.js:1697
+#: templates/js/translated/return_order.js:331
+#: templates/js/translated/sales_order.js:819
+#: templates/js/translated/stock.js:2069 templates/js/translated/stock.js:2863
+#: templates/js/translated/stock.js:2986
msgid "Status"
msgstr "Stato"
-#: build/serializers.py:501
+#: build/serializers.py:509
msgid "Accept Incomplete Allocation"
msgstr "Accetta Assegnazione Incompleta"
-#: build/serializers.py:502
+#: build/serializers.py:510
msgid "Complete outputs if stock has not been fully allocated"
msgstr "Completa l'output se le scorte non sono state interamente assegnate"
-#: build/serializers.py:571
+#: build/serializers.py:579
msgid "Remove Allocated Stock"
msgstr "Rimuovi Giacenze Allocate"
-#: build/serializers.py:572
+#: build/serializers.py:580
msgid "Subtract any stock which has already been allocated to this build"
msgstr "Detrai qualsiasi scorta che è stata già assegnata a questa produzione"
-#: build/serializers.py:578
+#: build/serializers.py:586
msgid "Remove Incomplete Outputs"
msgstr "Rimuovi Output Incompleti"
-#: build/serializers.py:579
+#: build/serializers.py:587
msgid "Delete any build outputs which have not been completed"
msgstr "Elimina gli output di produzione che non sono stati completati"
-#: build/serializers.py:606
+#: build/serializers.py:614
msgid "Not permitted"
msgstr ""
-#: build/serializers.py:607
+#: build/serializers.py:615
msgid "Accept as consumed by this build order"
msgstr "Accetta come consumato da questo ordine di produzione"
-#: build/serializers.py:608
+#: build/serializers.py:616
msgid "Deallocate before completing this build order"
msgstr "Non assegnare prima di aver completato questo ordine di produzione"
-#: build/serializers.py:631
+#: build/serializers.py:639
msgid "Overallocated Stock"
msgstr "Giacenza in eccesso assegnata"
-#: build/serializers.py:633
+#: build/serializers.py:641
msgid "How do you want to handle extra stock items assigned to the build order"
msgstr "Come si desidera gestire gli elementi extra giacenza assegnati all'ordine di produzione"
-#: build/serializers.py:643
+#: build/serializers.py:651
msgid "Some stock items have been overallocated"
msgstr "Alcuni articoli di magazzino sono stati assegnati in eccedenza"
-#: build/serializers.py:648
+#: build/serializers.py:656
msgid "Accept Unallocated"
msgstr "Accetta Non Assegnato"
-#: build/serializers.py:649
+#: build/serializers.py:657
msgid "Accept that stock items have not been fully allocated to this build order"
msgstr "Accetta che gli elementi in giacenza non sono stati completamente assegnati a questo ordine di produzione"
-#: build/serializers.py:659 templates/js/translated/build.js:295
+#: build/serializers.py:667 templates/js/translated/build.js:304
msgid "Required stock has not been fully allocated"
msgstr "La giacenza richiesta non è stata completamente assegnata"
-#: build/serializers.py:664 order/serializers.py:261 order/serializers.py:1127
+#: build/serializers.py:672 order/serializers.py:267 order/serializers.py:1133
msgid "Accept Incomplete"
msgstr "Accetta Incompleta"
-#: build/serializers.py:665
+#: build/serializers.py:673
msgid "Accept that the required number of build outputs have not been completed"
msgstr "Accetta che il numero richiesto di output di produzione non sia stato completato"
-#: build/serializers.py:675 templates/js/translated/build.js:299
+#: build/serializers.py:683 templates/js/translated/build.js:308
msgid "Required build quantity has not been completed"
msgstr "La quantità di produzione richiesta non è stata completata"
-#: build/serializers.py:684 templates/js/translated/build.js:283
+#: build/serializers.py:692 templates/js/translated/build.js:292
msgid "Build order has incomplete outputs"
msgstr "L'ordine di produzione ha output incompleti"
-#: build/serializers.py:714 build/serializers.py:768 part/models.py:3686
-#: part/models.py:4069
-msgid "BOM Item"
-msgstr "Distinta base (Bom)"
+#: build/serializers.py:722
+msgid "Build Line"
+msgstr ""
-#: build/serializers.py:724
+#: build/serializers.py:732
msgid "Build output"
msgstr "Genera Output"
-#: build/serializers.py:732
+#: build/serializers.py:740
msgid "Build output must point to the same build"
msgstr "L'output di produzione deve puntare alla stessa produzione"
-#: build/serializers.py:782
+#: build/serializers.py:776
+msgid "Build Line Item"
+msgstr ""
+
+#: build/serializers.py:790
msgid "bom_item.part must point to the same part as the build order"
msgstr "gli elementi degli articoli della distinta base devono puntare alla stessa parte dell'ordine di produzione"
-#: build/serializers.py:797 stock/serializers.py:783
+#: build/serializers.py:805 stock/serializers.py:900
msgid "Item must be in stock"
msgstr "L'articolo deve essere disponibile"
-#: build/serializers.py:846 order/serializers.py:1117
+#: build/serializers.py:853 order/serializers.py:1123
#, python-brace-format
msgid "Available quantity ({q}) exceeded"
msgstr "Quantità disponibile ({q}) superata"
-#: build/serializers.py:852
+#: build/serializers.py:859
msgid "Build output must be specified for allocation of tracked parts"
msgstr "L'output di produzione deve essere specificato per l'ubicazione delle parti tracciate"
-#: build/serializers.py:859
+#: build/serializers.py:866
msgid "Build output cannot be specified for allocation of untracked parts"
msgstr "L'output di produzione non deve essere specificato per l'ubicazione delle parti non tracciate"
-#: build/serializers.py:864
+#: build/serializers.py:871
msgid "This stock item has already been allocated to this build output"
msgstr "Questa giacenza di magazzino è già stato assegnato a questa produzione"
-#: build/serializers.py:887 order/serializers.py:1401
+#: build/serializers.py:894 order/serializers.py:1407
msgid "Allocation items must be provided"
msgstr "Deve essere indicata l'allocazione dell'articolo"
-#: build/serializers.py:943
+#: build/serializers.py:947
msgid "Stock location where parts are to be sourced (leave blank to take from any location)"
msgstr "Posizione dello stock in cui le parti devono prelevate (lasciare vuoto per prelevare da qualsiasi luogo)"
-#: build/serializers.py:951
+#: build/serializers.py:955
msgid "Exclude Location"
msgstr "Escludi Ubicazione"
-#: build/serializers.py:952
+#: build/serializers.py:956
msgid "Exclude stock items from this selected location"
msgstr "Escludi gli elementi stock da questa ubicazione selezionata"
-#: build/serializers.py:957
+#: build/serializers.py:961
msgid "Interchangeable Stock"
msgstr "Scorte Intercambiabili"
-#: build/serializers.py:958
+#: build/serializers.py:962
msgid "Stock items in multiple locations can be used interchangeably"
msgstr "Gli elementi in magazzino in più sedi possono essere utilizzati in modo intercambiabile"
-#: build/serializers.py:963
+#: build/serializers.py:967
msgid "Substitute Stock"
msgstr "Sostituisci Giacenze"
-#: build/serializers.py:964
+#: build/serializers.py:968
msgid "Allow allocation of substitute parts"
msgstr "Consenti l'allocazione delle parti sostitutive"
-#: build/serializers.py:969
+#: build/serializers.py:973
msgid "Optional Items"
msgstr "Articoli Opzionali"
-#: build/serializers.py:970
+#: build/serializers.py:974
msgid "Allocate optional BOM items to build order"
msgstr "Assegna gli elementi opzionali della distinta base all'ordine di produzione"
@@ -1540,6 +1589,7 @@ msgstr ""
#: part/templates/part/part_base.html:43
#: stock/templates/stock/item_base.html:41
#: stock/templates/stock/location.html:54
+#: templates/js/translated/filters.js:336
msgid "Barcode actions"
msgstr "Azioni Barcode"
@@ -1618,69 +1668,67 @@ msgstr "Completa Produzione"
msgid "Build Description"
msgstr "Descrizione Produzione"
-#: build/templates/build/build_base.html:117
+#: build/templates/build/build_base.html:118
msgid "No build outputs have been created for this build order"
msgstr "Nessun output di produzione è stato creato per questo ordine di produzione"
-#: build/templates/build/build_base.html:124
+#: build/templates/build/build_base.html:125
msgid "Build Order is ready to mark as completed"
msgstr "L'ordine di produzione è pronto per essere contrassegnato come completato"
-#: build/templates/build/build_base.html:129
+#: build/templates/build/build_base.html:130
msgid "Build Order cannot be completed as outstanding outputs remain"
msgstr "L'ordine di produzione non può essere completato poiché gli output rimangono in sospeso"
-#: build/templates/build/build_base.html:134
+#: build/templates/build/build_base.html:135
msgid "Required build quantity has not yet been completed"
msgstr "La quantità di produzione richiesta non è stata completata"
-#: build/templates/build/build_base.html:139
+#: build/templates/build/build_base.html:140
msgid "Stock has not been fully allocated to this Build Order"
msgstr "Lo stock non è stato completamente assegnato a questo ordine di produzione"
-#: build/templates/build/build_base.html:160
-#: build/templates/build/detail.html:138 order/models.py:240
-#: order/models.py:1099 order/templates/order/order_base.html:190
+#: build/templates/build/build_base.html:161
+#: build/templates/build/detail.html:138 order/models.py:244
+#: order/models.py:1112 order/templates/order/order_base.html:186
#: order/templates/order/return_order_base.html:165
#: order/templates/order/sales_order_base.html:193
#: report/templates/report/inventree_build_order_base.html:125
-#: templates/js/translated/build.js:2945 templates/js/translated/part.js:1802
-#: templates/js/translated/purchase_order.js:1699
-#: templates/js/translated/purchase_order.js:2115
-#: templates/js/translated/return_order.js:335
-#: templates/js/translated/return_order.js:735
-#: templates/js/translated/sales_order.js:823
-#: templates/js/translated/sales_order.js:1847
+#: templates/js/translated/build.js:2162 templates/js/translated/part.js:1801
+#: templates/js/translated/purchase_order.js:1714
+#: templates/js/translated/purchase_order.js:2125
+#: templates/js/translated/return_order.js:347
+#: templates/js/translated/return_order.js:747
+#: templates/js/translated/sales_order.js:835
+#: templates/js/translated/sales_order.js:1859
msgid "Target Date"
msgstr "Data scadenza"
-#: build/templates/build/build_base.html:165
+#: build/templates/build/build_base.html:166
#, python-format
msgid "This build was due on %(target)s"
msgstr "Questa produzione era in scadenza il %(target)s"
-#: build/templates/build/build_base.html:165
-#: build/templates/build/build_base.html:222
-#: order/templates/order/order_base.html:126
+#: build/templates/build/build_base.html:166
+#: build/templates/build/build_base.html:223
+#: order/templates/order/order_base.html:122
#: order/templates/order/return_order_base.html:118
#: order/templates/order/sales_order_base.html:123
-#: templates/js/translated/table_filters.js:68
-#: templates/js/translated/table_filters.js:454
-#: templates/js/translated/table_filters.js:539
-#: templates/js/translated/table_filters.js:580
+#: templates/js/translated/table_filters.js:74
+#: templates/js/translated/table_filters.js:460
+#: templates/js/translated/table_filters.js:561
+#: templates/js/translated/table_filters.js:602
msgid "Overdue"
msgstr "In ritardo"
-#: build/templates/build/build_base.html:177
-#: build/templates/build/detail.html:67 build/templates/build/detail.html:149
-#: order/templates/order/sales_order_base.html:203
-#: templates/js/translated/table_filters.js:602
-msgid "Completed"
-msgstr "Completato"
+#: build/templates/build/build_base.html:178
+#: build/templates/build/detail.html:67 build/templates/build/sidebar.html:13
+msgid "Completed Outputs"
+msgstr "Outputs Completati"
-#: build/templates/build/build_base.html:190
-#: build/templates/build/detail.html:101 order/api.py:1454 order/models.py:1304
-#: order/models.py:1403 order/models.py:1551
+#: build/templates/build/build_base.html:191
+#: build/templates/build/detail.html:101 order/api.py:1454 order/models.py:1317
+#: order/models.py:1416 order/models.py:1564
#: order/templates/order/sales_order_base.html:9
#: order/templates/order/sales_order_base.html:28
#: report/templates/report/inventree_build_order_base.html:135
@@ -1688,32 +1736,32 @@ msgstr "Completato"
#: stock/templates/stock/item_base.html:370
#: templates/email/overdue_sales_order.html:15
#: templates/js/translated/pricing.js:915
-#: templates/js/translated/sales_order.js:757
-#: templates/js/translated/sales_order.js:980
-#: templates/js/translated/stock.js:2661
+#: templates/js/translated/sales_order.js:769
+#: templates/js/translated/sales_order.js:992
+#: templates/js/translated/stock.js:2792
msgid "Sales Order"
msgstr "Ordini di Vendita"
-#: build/templates/build/build_base.html:197
+#: build/templates/build/build_base.html:198
#: build/templates/build/detail.html:115
#: report/templates/report/inventree_build_order_base.html:152
msgid "Issued By"
msgstr "Inviato da"
-#: build/templates/build/build_base.html:211
-#: build/templates/build/detail.html:94 templates/js/translated/build.js:2862
+#: build/templates/build/build_base.html:212
+#: build/templates/build/detail.html:94 templates/js/translated/build.js:2079
msgid "Priority"
msgstr "Priorità"
-#: build/templates/build/build_base.html:273
+#: build/templates/build/build_base.html:274
msgid "Delete Build Order"
msgstr "Elimina Ordine Build"
-#: build/templates/build/build_base.html:283
+#: build/templates/build/build_base.html:284
msgid "Build Order QR Code"
msgstr "Genera Codice QR Ordine"
-#: build/templates/build/build_base.html:295
+#: build/templates/build/build_base.html:296
msgid "Link Barcode to Build Order"
msgstr "Collega il codice a barre all'ordine di build"
@@ -1729,8 +1777,8 @@ msgstr "Risorse di magazzino"
msgid "Stock can be taken from any available location."
msgstr "Lo stock può essere prelevato da qualsiasi posizione disponibile."
-#: build/templates/build/detail.html:49 order/models.py:1222
-#: templates/js/translated/purchase_order.js:2157
+#: build/templates/build/detail.html:49 order/models.py:1235
+#: templates/js/translated/purchase_order.js:2167
msgid "Destination"
msgstr "Destinazione"
@@ -1744,21 +1792,21 @@ msgstr "Articoli Assegnati"
#: build/templates/build/detail.html:80 stock/admin.py:105
#: stock/templates/stock/item_base.html:163
-#: templates/js/translated/build.js:1432
-#: templates/js/translated/model_renderers.js:212
-#: templates/js/translated/purchase_order.js:1244
-#: templates/js/translated/stock.js:1093 templates/js/translated/stock.js:1926
-#: templates/js/translated/stock.js:2866
-#: templates/js/translated/table_filters.js:259
-#: templates/js/translated/table_filters.js:350
+#: templates/js/translated/build.js:1319
+#: templates/js/translated/model_renderers.js:226
+#: templates/js/translated/purchase_order.js:1259
+#: templates/js/translated/stock.js:1092 templates/js/translated/stock.js:2083
+#: templates/js/translated/stock.js:2993
+#: templates/js/translated/table_filters.js:265
+#: templates/js/translated/table_filters.js:356
msgid "Batch"
msgstr "Lotto"
#: build/templates/build/detail.html:133
-#: order/templates/order/order_base.html:177
+#: order/templates/order/order_base.html:173
#: order/templates/order/return_order_base.html:152
#: order/templates/order/sales_order_base.html:187
-#: templates/js/translated/build.js:2905
+#: templates/js/translated/build.js:2122
msgid "Created"
msgstr "Creato"
@@ -1766,147 +1814,106 @@ msgstr "Creato"
msgid "No target date set"
msgstr "Nessuna data di destinazione impostata"
+#: build/templates/build/detail.html:149
+#: order/templates/order/sales_order_base.html:203
+#: templates/js/translated/table_filters.js:624
+msgid "Completed"
+msgstr "Completato"
+
#: build/templates/build/detail.html:153
msgid "Build not complete"
msgstr "Build Completata"
-#: build/templates/build/detail.html:164 build/templates/build/sidebar.html:19
+#: build/templates/build/detail.html:164 build/templates/build/sidebar.html:17
msgid "Child Build Orders"
msgstr "Ordine di Produzione Subordinato"
-#: build/templates/build/detail.html:179
+#: build/templates/build/detail.html:177
msgid "Allocate Stock to Build"
msgstr "Assegna Scorte alla Produzione"
-#: build/templates/build/detail.html:183 templates/js/translated/build.js:2276
-msgid "Unallocate stock"
-msgstr "Scorte Non Assegnate"
+#: build/templates/build/detail.html:181
+msgid "Deallocate stock"
+msgstr ""
+
+#: build/templates/build/detail.html:182
+msgid "Deallocate Stock"
+msgstr ""
#: build/templates/build/detail.html:184
-msgid "Unallocate Stock"
-msgstr "Scorte Non Assegnate"
-
-#: build/templates/build/detail.html:186
msgid "Automatically allocate stock to build"
msgstr "Assegna automaticamente le scorte per la produzione"
-#: build/templates/build/detail.html:187
+#: build/templates/build/detail.html:185
msgid "Auto Allocate"
msgstr "Assegnazione Automatica"
-#: build/templates/build/detail.html:189
+#: build/templates/build/detail.html:187
msgid "Manually allocate stock to build"
msgstr "Assegna manualmente le scorte per la produzione"
-#: build/templates/build/detail.html:190 build/templates/build/sidebar.html:8
+#: build/templates/build/detail.html:188 build/templates/build/sidebar.html:8
msgid "Allocate Stock"
msgstr "Assegna Scorte"
-#: build/templates/build/detail.html:193
+#: build/templates/build/detail.html:191
msgid "Order required parts"
msgstr "Ordina articoli richiesti"
-#: build/templates/build/detail.html:194
-#: company/templates/company/detail.html:38
-#: company/templates/company/detail.html:86
-#: part/templates/part/category.html:184
-#: templates/js/translated/purchase_order.js:789
+#: build/templates/build/detail.html:192
+#: templates/js/translated/purchase_order.js:800
msgid "Order Parts"
msgstr "Ordine Articoli"
-#: build/templates/build/detail.html:206
-msgid "Untracked stock has been fully allocated for this Build Order"
-msgstr "Le scorte non rintracciabili sono state completamente assegnate per questo ordine di produzione"
-
#: build/templates/build/detail.html:210
-msgid "Untracked stock has not been fully allocated for this Build Order"
-msgstr "Le scorte non rintracciabili non sono state completamente assegnate per questo ordine di produzione"
-
-#: build/templates/build/detail.html:217
-msgid "Allocate selected items"
-msgstr "Assegna i prodotti selezionati"
-
-#: build/templates/build/detail.html:227
-msgid "This Build Order does not have any associated untracked BOM items"
-msgstr "Questo ordine di produzione non ha alcun articolo rintracciabile nella distinta base"
-
-#: build/templates/build/detail.html:236
msgid "Incomplete Build Outputs"
msgstr "Produzione Incompleta"
-#: build/templates/build/detail.html:240
+#: build/templates/build/detail.html:214
msgid "Create new build output"
msgstr "Crea nuova produzione"
-#: build/templates/build/detail.html:241
+#: build/templates/build/detail.html:215
msgid "New Build Output"
msgstr "Nuova Produzione"
-#: build/templates/build/detail.html:255
-msgid "Output Actions"
-msgstr "Azioni di output"
-
-#: build/templates/build/detail.html:260
-msgid "Complete selected build outputs"
-msgstr "Completa la produzione selezionata"
-
-#: build/templates/build/detail.html:261
-msgid "Complete outputs"
-msgstr "Completa gli outputs"
-
-#: build/templates/build/detail.html:265
-msgid "Scrap selected build outputs"
-msgstr ""
-
-#: build/templates/build/detail.html:266
-msgid "Scrap outputs"
-msgstr ""
-
-#: build/templates/build/detail.html:270
-msgid "Delete selected build outputs"
-msgstr "Cancella la produzione selezionata"
-
-#: build/templates/build/detail.html:271
-msgid "Delete outputs"
-msgstr "Cancella l'output"
-
-#: build/templates/build/detail.html:288 build/templates/build/sidebar.html:11
+#: build/templates/build/detail.html:232 build/templates/build/sidebar.html:15
msgid "Consumed Stock"
msgstr ""
-#: build/templates/build/detail.html:300
+#: build/templates/build/detail.html:244
msgid "Completed Build Outputs"
msgstr "Produzioni Completate"
-#: build/templates/build/detail.html:312 build/templates/build/sidebar.html:21
-#: company/templates/company/detail.html:261
-#: company/templates/company/manufacturer_part.html:151
+#: build/templates/build/detail.html:256 build/templates/build/sidebar.html:19
+#: company/templates/company/detail.html:229
+#: company/templates/company/manufacturer_part.html:141
#: company/templates/company/manufacturer_part_sidebar.html:9
-#: company/templates/company/sidebar.html:37
+#: company/templates/company/sidebar.html:39
#: order/templates/order/po_sidebar.html:9
-#: order/templates/order/purchase_order_detail.html:102
-#: order/templates/order/return_order_detail.html:74
+#: order/templates/order/purchase_order_detail.html:84
+#: order/templates/order/return_order_detail.html:70
#: order/templates/order/return_order_sidebar.html:7
-#: order/templates/order/sales_order_detail.html:134
-#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:234
-#: part/templates/part/part_sidebar.html:61 stock/templates/stock/item.html:117
+#: order/templates/order/sales_order_detail.html:124
+#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:217
+#: part/templates/part/part_sidebar.html:61 stock/templates/stock/item.html:109
#: stock/templates/stock/stock_sidebar.html:23
msgid "Attachments"
msgstr "Allegati"
-#: build/templates/build/detail.html:327
+#: build/templates/build/detail.html:271
msgid "Build Notes"
msgstr "Genera Note"
-#: build/templates/build/detail.html:502
+#: build/templates/build/detail.html:425
msgid "Allocation Complete"
msgstr "Assegnazione Completa"
-#: build/templates/build/detail.html:503
-msgid "All untracked stock items have been allocated"
-msgstr "Tutte le giacenze non tracciate sono state assegnate"
+#: build/templates/build/detail.html:426
+msgid "All lines have been fully allocated"
+msgstr ""
-#: build/templates/build/index.html:18 part/templates/part/detail.html:340
+#: build/templates/build/index.html:18 part/templates/part/detail.html:319
msgid "New Build Order"
msgstr "Nuovo Ordine di Produzione"
@@ -1914,14 +1921,10 @@ msgstr "Nuovo Ordine di Produzione"
msgid "Build Order Details"
msgstr "Dettagli Ordine di Produzione"
-#: build/templates/build/sidebar.html:14
+#: build/templates/build/sidebar.html:10
msgid "Incomplete Outputs"
msgstr "Output Incompleti"
-#: build/templates/build/sidebar.html:17
-msgid "Completed Outputs"
-msgstr "Outputs Completati"
-
#: common/files.py:63
#, python-brace-format
msgid "Unsupported file format: {fmt}"
@@ -1968,16 +1971,6 @@ msgstr "Aggiornato"
msgid "Timestamp of last update"
msgstr "Orario dell'ultimo aggiornamento"
-#: common/models.py:104 order/admin.py:17 order/models.py:234
-#: templates/InvenTree/settings/settings_staff_js.html:70
-#: templates/js/translated/purchase_order.js:1670
-#: templates/js/translated/return_order.js:306
-#: templates/js/translated/sales_order.js:794
-#: templates/js/translated/table_filters.js:24
-#: templates/project_code_data.html:6
-msgid "Project Code"
-msgstr "Codice del progetto"
-
#: common/models.py:105
msgid "Unique project code"
msgstr "Codice unico del progetto"
@@ -2261,9 +2254,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:1162 part/admin.py:55 part/models.py:3560
-#: report/models.py:166 templates/js/translated/table_filters.js:109
-#: templates/js/translated/table_filters.js:680
+#: common/models.py:1162 part/admin.py:55 part/models.py:3594
+#: report/models.py:166 templates/js/translated/table_filters.js:115
+#: templates/js/translated/table_filters.js:702
msgid "Template"
msgstr "Modello"
@@ -2271,10 +2264,10 @@ msgstr "Modello"
msgid "Parts are templates by default"
msgstr "Gli articoli sono modelli per impostazione predefinita"
-#: common/models.py:1169 part/admin.py:51 part/admin.py:283 part/models.py:996
-#: templates/js/translated/bom.js:1598
-#: templates/js/translated/table_filters.js:276
-#: templates/js/translated/table_filters.js:634
+#: common/models.py:1169 part/admin.py:51 part/admin.py:283 part/models.py:997
+#: templates/js/translated/bom.js:1618
+#: templates/js/translated/table_filters.js:282
+#: templates/js/translated/table_filters.js:656
msgid "Assembly"
msgstr "Assemblaggio"
@@ -2282,8 +2275,8 @@ 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:1176 part/admin.py:52 part/models.py:1002
-#: templates/js/translated/table_filters.js:642
+#: common/models.py:1176 part/admin.py:52 part/models.py:1003
+#: templates/js/translated/table_filters.js:664
msgid "Component"
msgstr "Componente"
@@ -2291,7 +2284,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:1183 part/admin.py:53 part/models.py:1013
+#: common/models.py:1183 part/admin.py:53 part/models.py:1014
msgid "Purchaseable"
msgstr "Acquistabile"
@@ -2299,8 +2292,8 @@ msgstr "Acquistabile"
msgid "Parts are purchaseable by default"
msgstr "Gli articoli sono acquistabili per impostazione predefinita"
-#: common/models.py:1190 part/admin.py:54 part/models.py:1018
-#: templates/js/translated/table_filters.js:668
+#: common/models.py:1190 part/admin.py:54 part/models.py:1019
+#: templates/js/translated/table_filters.js:690
msgid "Salable"
msgstr "Vendibile"
@@ -2308,10 +2301,10 @@ msgstr "Vendibile"
msgid "Parts are salable by default"
msgstr "Gli articoli sono acquistabili per impostazione predefinita"
-#: common/models.py:1197 part/admin.py:56 part/models.py:1008
-#: templates/js/translated/table_filters.js:117
-#: templates/js/translated/table_filters.js:193
-#: templates/js/translated/table_filters.js:684
+#: common/models.py:1197 part/admin.py:56 part/models.py:1009
+#: templates/js/translated/table_filters.js:123
+#: templates/js/translated/table_filters.js:199
+#: templates/js/translated/table_filters.js:706
msgid "Trackable"
msgstr "Tracciabile"
@@ -2319,10 +2312,10 @@ msgstr "Tracciabile"
msgid "Parts are trackable by default"
msgstr "Gli articoli sono tracciabili per impostazione predefinita"
-#: common/models.py:1204 part/admin.py:57 part/models.py:1028
+#: common/models.py:1204 part/admin.py:57 part/models.py:1029
#: part/templates/part/part_base.html:156
-#: templates/js/translated/table_filters.js:113
-#: templates/js/translated/table_filters.js:688
+#: templates/js/translated/table_filters.js:119
+#: templates/js/translated/table_filters.js:710
msgid "Virtual"
msgstr "Virtuale"
@@ -2354,7 +2347,7 @@ msgstr "Dati iniziali dello stock"
msgid "Allow creation of initial stock when adding a new part"
msgstr "Consentire la creazione di uno stock iniziale quando si aggiunge una nuova parte"
-#: common/models.py:1232 templates/js/translated/part.js:108
+#: common/models.py:1232 templates/js/translated/part.js:107
msgid "Initial Supplier Data"
msgstr "Dati iniziali del fornitore"
@@ -2603,181 +2596,181 @@ msgid "Stock location default icon (empty means no icon)"
msgstr "Icona Predefinita Ubicazione di Magazzino (vuoto significa nessuna icona)"
#: common/models.py:1471
+msgid "Show Installed Stock Items"
+msgstr ""
+
+#: common/models.py:1472
+msgid "Display installed stock items in stock tables"
+msgstr ""
+
+#: common/models.py:1478
msgid "Build Order Reference Pattern"
msgstr "Modello Di Riferimento Ordine Di Produzione"
-#: common/models.py:1472
+#: common/models.py:1479
msgid "Required pattern for generating Build Order reference field"
msgstr "Modello richiesto per generare il campo di riferimento ordine di produzione"
-#: common/models.py:1478
+#: common/models.py:1485
msgid "Enable Return Orders"
msgstr ""
-#: common/models.py:1479
+#: common/models.py:1486
msgid "Enable return order functionality in the user interface"
msgstr ""
-#: common/models.py:1485
+#: common/models.py:1492
msgid "Return Order Reference Pattern"
msgstr ""
-#: common/models.py:1486
+#: common/models.py:1493
msgid "Required pattern for generating Return Order reference field"
msgstr ""
-#: common/models.py:1492
+#: common/models.py:1499
msgid "Edit Completed Return Orders"
msgstr ""
-#: common/models.py:1493
+#: common/models.py:1500
msgid "Allow editing of return orders after they have been completed"
msgstr ""
-#: common/models.py:1499
+#: common/models.py:1506
msgid "Sales Order Reference Pattern"
msgstr "Modello Di Riferimento Ordine Di Vendita"
-#: common/models.py:1500
+#: common/models.py:1507
msgid "Required pattern for generating Sales Order reference field"
msgstr "Modello richiesto per generare il campo di riferimento ordine di vendita"
-#: common/models.py:1506
+#: common/models.py:1513
msgid "Sales Order Default Shipment"
msgstr "Spedizione Predefinita Ordine Di Vendita"
-#: common/models.py:1507
+#: common/models.py:1514
msgid "Enable creation of default shipment with sales orders"
msgstr "Abilita la creazione di spedizioni predefinite con ordini di vendita"
-#: common/models.py:1513
+#: common/models.py:1520
msgid "Edit Completed Sales Orders"
msgstr "Modifica Ordini Di Vendita Completati"
-#: common/models.py:1514
+#: common/models.py:1521
msgid "Allow editing of sales orders after they have been shipped or completed"
msgstr "Consenti la modifica degli ordini di vendita dopo che sono stati spediti o completati"
-#: common/models.py:1520
+#: common/models.py:1527
msgid "Purchase Order Reference Pattern"
msgstr "Modello di Riferimento Ordine D'Acquisto"
-#: common/models.py:1521
+#: common/models.py:1528
msgid "Required pattern for generating Purchase Order reference field"
msgstr "Modello richiesto per generare il campo di riferimento ordine di acquisto"
-#: common/models.py:1527
+#: common/models.py:1534
msgid "Edit Completed Purchase Orders"
msgstr "Modifica Ordini Di Acquisto Completati"
-#: common/models.py:1528
+#: common/models.py:1535
msgid "Allow editing of purchase orders after they have been shipped or completed"
msgstr "Consenti la modifica degli ordini di acquisto dopo che sono stati spediti o completati"
-#: common/models.py:1535
+#: common/models.py:1542
msgid "Enable password forgot"
msgstr "Abilita password dimenticata"
-#: common/models.py:1536
+#: common/models.py:1543
msgid "Enable password forgot function on the login pages"
msgstr "Abilita la funzione password dimenticata nelle pagine di accesso"
-#: common/models.py:1542
+#: common/models.py:1549
msgid "Enable registration"
msgstr "Abilita registrazione"
-#: common/models.py:1543
+#: common/models.py:1550
msgid "Enable self-registration for users on the login pages"
msgstr "Abilita auto-registrazione per gli utenti nelle pagine di accesso"
-#: common/models.py:1549
+#: common/models.py:1556
msgid "Enable SSO"
msgstr "SSO abilitato"
-#: common/models.py:1550
+#: common/models.py:1557
msgid "Enable SSO on the login pages"
msgstr "Abilita SSO nelle pagine di accesso"
-#: common/models.py:1556
+#: common/models.py:1563
msgid "Enable SSO registration"
msgstr "Abilita registrazione SSO"
-#: common/models.py:1557
+#: common/models.py:1564
msgid "Enable self-registration via SSO for users on the login pages"
msgstr "Abilita l'auto-registrazione tramite SSO per gli utenti nelle pagine di accesso"
-#: common/models.py:1563
+#: common/models.py:1570
msgid "Email required"
msgstr "Email richiesta"
-#: common/models.py:1564
+#: common/models.py:1571
msgid "Require user to supply mail on signup"
msgstr "Richiedi all'utente di fornire una email al momento dell'iscrizione"
-#: common/models.py:1570
+#: common/models.py:1577
msgid "Auto-fill SSO users"
msgstr "Riempimento automatico degli utenti SSO"
-#: common/models.py:1571
+#: common/models.py:1578
msgid "Automatically fill out user-details from SSO account-data"
msgstr "Compila automaticamente i dettagli dell'utente dai dati dell'account SSO"
-#: common/models.py:1577
+#: common/models.py:1584
msgid "Mail twice"
msgstr "Posta due volte"
-#: common/models.py:1578
+#: common/models.py:1585
msgid "On signup ask users twice for their mail"
msgstr "Al momento della registrazione chiedere due volte all'utente l'indirizzo di posta elettronica"
-#: common/models.py:1584
+#: common/models.py:1591
msgid "Password twice"
msgstr "Password due volte"
-#: common/models.py:1585
+#: common/models.py:1592
msgid "On signup ask users twice for their password"
msgstr "Al momento della registrazione chiedere agli utenti due volte l'inserimento della password"
-#: common/models.py:1591
+#: common/models.py:1598
msgid "Allowed domains"
msgstr "Domini consentiti"
-#: common/models.py:1592
+#: common/models.py:1599
msgid "Restrict signup to certain domains (comma-separated, starting with @)"
msgstr ""
-#: common/models.py:1598
+#: common/models.py:1605
msgid "Group on signup"
msgstr "Gruppo iscrizione"
-#: common/models.py:1599
+#: common/models.py:1606
msgid "Group to which new users are assigned on registration"
msgstr "Gruppo a cui i nuovi utenti vengono assegnati al momento della registrazione"
-#: common/models.py:1605
+#: common/models.py:1612
msgid "Enforce MFA"
msgstr "Applica MFA"
-#: common/models.py:1606
+#: common/models.py:1613
msgid "Users must use multifactor security."
msgstr "Gli utenti devono utilizzare la sicurezza a due fattori."
-#: common/models.py:1612
+#: common/models.py:1619
msgid "Check plugins on startup"
msgstr "Controlla i plugin all'avvio"
-#: common/models.py:1613
+#: common/models.py:1620
msgid "Check that all plugins are installed on startup - enable in container environments"
msgstr "Controlla che tutti i plugin siano installati all'avvio - abilita in ambienti contenitore"
-#: common/models.py:1620
-msgid "Check plugin signatures"
-msgstr "Controlla le firme del plugin"
-
-#: common/models.py:1621
-msgid "Check and show signatures for plugins"
-msgstr "Controlla e mostra le firme per i plugin"
-
#: common/models.py:1628
msgid "Enable URL integration"
msgstr "Abilita l'integrazione URL"
@@ -2850,7 +2843,7 @@ msgstr ""
msgid "Stocktake reports will be deleted after specified number of days"
msgstr "I rapporti d'inventario verranno eliminati dopo il numero specificato di giorni"
-#: common/models.py:1710 common/models.py:2147
+#: common/models.py:1710 common/models.py:2133
msgid "Settings key (must be unique - case insensitive"
msgstr "Tasto impostazioni (deve essere univoco - maiuscole e minuscole"
@@ -2891,528 +2884,513 @@ msgid "Show latest parts on the homepage"
msgstr "Mostra gli ultimi articoli sulla homepage"
#: common/models.py:1779
-msgid "Recent Part Count"
-msgstr "Conteggio Ultimi Articoli"
-
-#: common/models.py:1780
-msgid "Number of recent parts to display on index page"
-msgstr "Numero di articoli da visualizzare sulla pagina indice"
-
-#: common/models.py:1786
msgid "Show unvalidated BOMs"
msgstr "Mostra distinta base non convalidata"
-#: common/models.py:1787
+#: common/models.py:1780
msgid "Show BOMs that await validation on the homepage"
msgstr "Mostra le distinte base che attendono la convalida sulla homepage"
-#: common/models.py:1793
+#: common/models.py:1786
msgid "Show recent stock changes"
msgstr "Mostra le modifiche recenti alle giacenze"
-#: common/models.py:1794
+#: common/models.py:1787
msgid "Show recently changed stock items on the homepage"
msgstr "Mostra le giacenze modificate di recente nella homepage"
-#: common/models.py:1800
-msgid "Recent Stock Count"
-msgstr "Recente Conteggio Giacenze"
-
-#: common/models.py:1801
-msgid "Number of recent stock items to display on index page"
-msgstr "Numero di giacenze recenti da visualizzare sulla pagina indice"
-
-#: common/models.py:1807
+#: common/models.py:1793
msgid "Show low stock"
msgstr "Mostra disponibilità scarsa delle giacenze"
-#: common/models.py:1808
+#: common/models.py:1794
msgid "Show low stock items on the homepage"
msgstr "Mostra disponibilità scarsa degli articoli sulla homepage"
-#: common/models.py:1814
+#: common/models.py:1800
msgid "Show depleted stock"
msgstr "Mostra scorte esaurite"
-#: common/models.py:1815
+#: common/models.py:1801
msgid "Show depleted stock items on the homepage"
msgstr "Mostra disponibilità scarsa delle scorte degli articoli sulla homepage"
-#: common/models.py:1821
+#: common/models.py:1807
msgid "Show needed stock"
msgstr "Mostra scorte necessarie"
-#: common/models.py:1822
+#: common/models.py:1808
msgid "Show stock items needed for builds on the homepage"
msgstr "Mostra le scorte degli articoli necessari per la produzione sulla homepage"
-#: common/models.py:1828
+#: common/models.py:1814
msgid "Show expired stock"
msgstr "Mostra scorte esaurite"
-#: common/models.py:1829
+#: common/models.py:1815
msgid "Show expired stock items on the homepage"
msgstr "Mostra gli articoli stock scaduti nella home page"
-#: common/models.py:1835
+#: common/models.py:1821
msgid "Show stale stock"
msgstr "Mostra scorte obsolete"
-#: common/models.py:1836
+#: common/models.py:1822
msgid "Show stale stock items on the homepage"
msgstr "Mostra gli elementi obsoleti esistenti sulla home page"
-#: common/models.py:1842
+#: common/models.py:1828
msgid "Show pending builds"
msgstr "Mostra produzioni in attesa"
-#: common/models.py:1843
+#: common/models.py:1829
msgid "Show pending builds on the homepage"
msgstr "Mostra produzioni in attesa sulla homepage"
-#: common/models.py:1849
+#: common/models.py:1835
msgid "Show overdue builds"
msgstr "Mostra produzioni in ritardo"
-#: common/models.py:1850
+#: common/models.py:1836
msgid "Show overdue builds on the homepage"
msgstr "Mostra produzioni in ritardo sulla home page"
-#: common/models.py:1856
+#: common/models.py:1842
msgid "Show outstanding POs"
msgstr "Mostra ordini di produzione inevasi"
-#: common/models.py:1857
+#: common/models.py:1843
msgid "Show outstanding POs on the homepage"
msgstr "Mostra ordini di produzione inevasi sulla home page"
-#: common/models.py:1863
+#: common/models.py:1849
msgid "Show overdue POs"
msgstr "Mostra Ordini di Produzione in ritardo"
-#: common/models.py:1864
+#: common/models.py:1850
msgid "Show overdue POs on the homepage"
msgstr "Mostra Ordini di Produzione in ritardo sulla home page"
-#: common/models.py:1870
+#: common/models.py:1856
msgid "Show outstanding SOs"
msgstr "Mostra Ordini di Vendita inevasi"
-#: common/models.py:1871
+#: common/models.py:1857
msgid "Show outstanding SOs on the homepage"
msgstr "Mostra Ordini di Vendita inevasi sulla home page"
-#: common/models.py:1877
+#: common/models.py:1863
msgid "Show overdue SOs"
msgstr "Mostra Ordini di Vendita in ritardo"
-#: common/models.py:1878
+#: common/models.py:1864
msgid "Show overdue SOs on the homepage"
msgstr "Mostra Ordini di Vendita in ritardo sulla home page"
-#: common/models.py:1884
+#: common/models.py:1870
msgid "Show pending SO shipments"
msgstr ""
-#: common/models.py:1885
+#: common/models.py:1871
msgid "Show pending SO shipments on the homepage"
msgstr ""
-#: common/models.py:1891
+#: common/models.py:1877
msgid "Show News"
msgstr "Mostra Notizie"
-#: common/models.py:1892
+#: common/models.py:1878
msgid "Show news on the homepage"
msgstr "Mostra notizie sulla home page"
-#: common/models.py:1898
+#: common/models.py:1884
msgid "Inline label display"
msgstr "Visualizzazione dell'etichetta in linea"
-#: common/models.py:1899
+#: common/models.py:1885
msgid "Display PDF labels in the browser, instead of downloading as a file"
msgstr "Visualizza le etichette PDF nel browser, invece di scaricare come file"
-#: common/models.py:1905
+#: common/models.py:1891
msgid "Default label printer"
msgstr "Stampante per etichette predefinita"
-#: common/models.py:1906
+#: common/models.py:1892
msgid "Configure which label printer should be selected by default"
msgstr "Configura quale stampante di etichette deve essere selezionata per impostazione predefinita"
-#: common/models.py:1912
+#: common/models.py:1898
msgid "Inline report display"
msgstr "Visualizzazione dell'etichetta in linea"
-#: common/models.py:1913
+#: common/models.py:1899
msgid "Display PDF reports in the browser, instead of downloading as a file"
msgstr "Visualizza le etichette PDF nel browser, invece di scaricare come file"
-#: common/models.py:1919
+#: common/models.py:1905
msgid "Search Parts"
msgstr "Cerca Articoli"
-#: common/models.py:1920
+#: common/models.py:1906
msgid "Display parts in search preview window"
msgstr "Mostra articoli della ricerca nella finestra di anteprima"
-#: common/models.py:1926
+#: common/models.py:1912
msgid "Search Supplier Parts"
msgstr ""
-#: common/models.py:1927
+#: common/models.py:1913
msgid "Display supplier parts in search preview window"
msgstr "Mostra articoli del fornitore nella finestra di anteprima"
-#: common/models.py:1933
+#: common/models.py:1919
msgid "Search Manufacturer Parts"
msgstr "Cerca Articoli Produttore"
-#: common/models.py:1934
+#: common/models.py:1920
msgid "Display manufacturer parts in search preview window"
msgstr "Mostra articoli del produttore nella finestra di anteprima"
-#: common/models.py:1940
+#: common/models.py:1926
msgid "Hide Inactive Parts"
msgstr "Nascondi Articoli Inattivi"
-#: common/models.py:1941
+#: common/models.py:1927
msgid "Excluded inactive parts from search preview window"
msgstr "Escludi articoli inattivi dalla finestra di anteprima della ricerca"
-#: common/models.py:1947
+#: common/models.py:1933
msgid "Search Categories"
msgstr "Cerca Categorie"
-#: common/models.py:1948
+#: common/models.py:1934
msgid "Display part categories in search preview window"
msgstr "Mostra categorie articolo nella finestra di anteprima di ricerca"
-#: common/models.py:1954
+#: common/models.py:1940
msgid "Search Stock"
msgstr "Cerca Giacenze"
-#: common/models.py:1955
+#: common/models.py:1941
msgid "Display stock items in search preview window"
msgstr "Mostra articoli in giacenza nella finestra di anteprima della ricerca"
-#: common/models.py:1961
+#: common/models.py:1947
msgid "Hide Unavailable Stock Items"
msgstr "Nascondi elementi non disponibili"
-#: common/models.py:1962
+#: common/models.py:1948
msgid "Exclude stock items which are not available from the search preview window"
msgstr "Escludi gli elementi stock che non sono disponibili dalla finestra di anteprima di ricerca"
-#: common/models.py:1968
+#: common/models.py:1954
msgid "Search Locations"
msgstr "Cerca Ubicazioni"
-#: common/models.py:1969
+#: common/models.py:1955
msgid "Display stock locations in search preview window"
msgstr "Mostra ubicazioni delle giacenze nella finestra di anteprima di ricerca"
-#: common/models.py:1975
+#: common/models.py:1961
msgid "Search Companies"
msgstr "Cerca Aziende"
-#: common/models.py:1976
+#: common/models.py:1962
msgid "Display companies in search preview window"
msgstr "Mostra le aziende nella finestra di anteprima di ricerca"
-#: common/models.py:1982
+#: common/models.py:1968
msgid "Search Build Orders"
msgstr "Cerca Ordini Di Produzione"
-#: common/models.py:1983
+#: common/models.py:1969
msgid "Display build orders in search preview window"
msgstr "Mostra gli ordini di produzione nella finestra di anteprima di ricerca"
-#: common/models.py:1989
+#: common/models.py:1975
msgid "Search Purchase Orders"
msgstr "Cerca Ordini di Acquisto"
-#: common/models.py:1990
+#: common/models.py:1976
msgid "Display purchase orders in search preview window"
msgstr "Mostra gli ordini di acquisto nella finestra di anteprima di ricerca"
-#: common/models.py:1996
+#: common/models.py:1982
msgid "Exclude Inactive Purchase Orders"
msgstr "Escludi Ordini D'Acquisto Inattivi"
-#: common/models.py:1997
+#: common/models.py:1983
msgid "Exclude inactive purchase orders from search preview window"
msgstr "Escludi ordini di acquisto inattivi dalla finestra di anteprima di ricerca"
-#: common/models.py:2003
+#: common/models.py:1989
msgid "Search Sales Orders"
msgstr "Cerca Ordini Di Vendita"
-#: common/models.py:2004
+#: common/models.py:1990
msgid "Display sales orders in search preview window"
msgstr "Visualizzazione degli ordini di vendita nella finestra di anteprima della ricerca"
-#: common/models.py:2010
+#: common/models.py:1996
msgid "Exclude Inactive Sales Orders"
msgstr "Escludi Ordini Di Vendita Inattivi"
-#: common/models.py:2011
+#: common/models.py:1997
msgid "Exclude inactive sales orders from search preview window"
msgstr "Escludi ordini di vendita inattivi dalla finestra di anteprima di ricerca"
-#: common/models.py:2017
+#: common/models.py:2003
msgid "Search Return Orders"
msgstr "Cerca Ordini Di Reso"
-#: common/models.py:2018
+#: common/models.py:2004
msgid "Display return orders in search preview window"
msgstr ""
-#: common/models.py:2024
+#: common/models.py:2010
msgid "Exclude Inactive Return Orders"
msgstr ""
-#: common/models.py:2025
+#: common/models.py:2011
msgid "Exclude inactive return orders from search preview window"
msgstr ""
-#: common/models.py:2031
+#: common/models.py:2017
msgid "Search Preview Results"
msgstr "Risultati Dell'Anteprima Di Ricerca"
-#: common/models.py:2032
+#: common/models.py:2018
msgid "Number of results to show in each section of the search preview window"
msgstr "Numero di risultati da visualizzare in ciascuna sezione della finestra di anteprima della ricerca"
-#: common/models.py:2038
+#: common/models.py:2024
msgid "Regex Search"
msgstr "Ricerca con regex"
-#: common/models.py:2039
+#: common/models.py:2025
msgid "Enable regular expressions in search queries"
msgstr ""
-#: common/models.py:2045
+#: common/models.py:2031
msgid "Whole Word Search"
msgstr ""
-#: common/models.py:2046
+#: common/models.py:2032
msgid "Search queries return results for whole word matches"
msgstr ""
-#: common/models.py:2052
+#: common/models.py:2038
msgid "Show Quantity in Forms"
msgstr "Mostra quantità nei moduli"
-#: common/models.py:2053
+#: common/models.py:2039
msgid "Display available part quantity in some forms"
msgstr "Visualizzare la quantità di pezzi disponibili in alcuni moduli"
-#: common/models.py:2059
+#: common/models.py:2045
msgid "Escape Key Closes Forms"
msgstr "Il tasto Esc chiude i moduli"
-#: common/models.py:2060
+#: common/models.py:2046
msgid "Use the escape key to close modal forms"
msgstr "Utilizzare il tasto Esc per chiudere i moduli modali"
-#: common/models.py:2066
+#: common/models.py:2052
msgid "Fixed Navbar"
msgstr "Barra di navigazione fissa"
-#: common/models.py:2067
+#: common/models.py:2053
msgid "The navbar position is fixed to the top of the screen"
msgstr "La posizione della barra di navigazione è fissata nella parte superiore dello schermo"
-#: common/models.py:2073
+#: common/models.py:2059
msgid "Date Format"
msgstr "Formato Data"
-#: common/models.py:2074
+#: common/models.py:2060
msgid "Preferred format for displaying dates"
msgstr "Formato predefinito per visualizzare le date"
-#: common/models.py:2088 part/templates/part/detail.html:41
+#: common/models.py:2074 part/templates/part/detail.html:41
msgid "Part Scheduling"
msgstr "Programmazione Prodotto"
-#: common/models.py:2089
+#: common/models.py:2075
msgid "Display part scheduling information"
msgstr "Mostra informazioni sulla pianificazione del prodotto"
-#: common/models.py:2095 part/templates/part/detail.html:62
+#: common/models.py:2081 part/templates/part/detail.html:62
msgid "Part Stocktake"
msgstr "Inventario Prodotto"
-#: common/models.py:2096
+#: common/models.py:2082
msgid "Display part stocktake information (if stocktake functionality is enabled)"
msgstr "Visualizza le informazioni d'inventario dell'articolo (se la funzionalità d'inventario è abilitata)"
-#: common/models.py:2102
+#: common/models.py:2088
msgid "Table String Length"
msgstr "Lunghezza Stringa Tabella"
-#: common/models.py:2103
+#: common/models.py:2089
msgid "Maximimum length limit for strings displayed in table views"
msgstr "Limite massimo di lunghezza per le stringhe visualizzate nelle viste della tabella"
-#: common/models.py:2112
+#: common/models.py:2098
msgid "Default part label template"
msgstr ""
-#: common/models.py:2113
+#: common/models.py:2099
msgid "The part label template to be automatically selected"
msgstr ""
-#: common/models.py:2121
+#: common/models.py:2107
msgid "Default stock item template"
msgstr ""
-#: common/models.py:2122
+#: common/models.py:2108
msgid "The stock item label template to be automatically selected"
msgstr ""
-#: common/models.py:2130
+#: common/models.py:2116
msgid "Default stock location label template"
msgstr ""
-#: common/models.py:2131
+#: common/models.py:2117
msgid "The stock location label template to be automatically selected"
msgstr ""
-#: common/models.py:2177
+#: common/models.py:2163
msgid "Price break quantity"
msgstr "Quantità prezzo limite"
-#: common/models.py:2184 company/serializers.py:434 order/admin.py:43
-#: order/models.py:1132 order/models.py:1939
-#: templates/js/translated/company.js:1433 templates/js/translated/part.js:1856
+#: common/models.py:2170 company/serializers.py:491 order/admin.py:43
+#: order/models.py:1145 order/models.py:1952
+#: templates/js/translated/company.js:1854 templates/js/translated/part.js:1855
#: templates/js/translated/pricing.js:621
-#: templates/js/translated/return_order.js:725
+#: templates/js/translated/return_order.js:737
msgid "Price"
msgstr "Prezzo"
-#: common/models.py:2185
+#: common/models.py:2171
msgid "Unit price at specified quantity"
msgstr "Prezzo unitario in quantità specificata"
-#: common/models.py:2345 common/models.py:2523
+#: common/models.py:2331 common/models.py:2509
msgid "Endpoint"
msgstr "Scadenza"
-#: common/models.py:2346
+#: common/models.py:2332
msgid "Endpoint at which this webhook is received"
msgstr "Scadenza in cui questa notifica viene ricevuta"
-#: common/models.py:2355
+#: common/models.py:2341
msgid "Name for this webhook"
msgstr "Nome per questa notifica"
-#: common/models.py:2360 part/admin.py:50 part/models.py:1023
-#: plugin/models.py:47 templates/js/translated/table_filters.js:105
-#: templates/js/translated/table_filters.js:189
-#: templates/js/translated/table_filters.js:434
-#: templates/js/translated/table_filters.js:450
-#: templates/js/translated/table_filters.js:629
+#: common/models.py:2346 part/admin.py:50 part/models.py:1024
+#: plugin/models.py:48 templates/js/translated/table_filters.js:111
+#: templates/js/translated/table_filters.js:195
+#: templates/js/translated/table_filters.js:440
+#: templates/js/translated/table_filters.js:456
+#: templates/js/translated/table_filters.js:651
msgid "Active"
msgstr "Attivo"
-#: common/models.py:2361
+#: common/models.py:2347
msgid "Is this webhook active"
msgstr "È questa notifica attiva"
-#: common/models.py:2375
+#: common/models.py:2361
msgid "Token"
msgstr "Token"
-#: common/models.py:2376
+#: common/models.py:2362
msgid "Token for access"
msgstr "Token per l'accesso"
-#: common/models.py:2383
+#: common/models.py:2369
msgid "Secret"
msgstr "Segreto"
-#: common/models.py:2384
+#: common/models.py:2370
msgid "Shared secret for HMAC"
msgstr "Segreto condiviso per HMAC"
-#: common/models.py:2490
+#: common/models.py:2476
msgid "Message ID"
msgstr "ID Messaggio"
-#: common/models.py:2491
+#: common/models.py:2477
msgid "Unique identifier for this message"
msgstr "Identificatore unico per questo messaggio"
-#: common/models.py:2499
+#: common/models.py:2485
msgid "Host"
msgstr "Host"
-#: common/models.py:2500
+#: common/models.py:2486
msgid "Host from which this message was received"
msgstr "Host da cui questo messaggio è stato ricevuto"
-#: common/models.py:2507
+#: common/models.py:2493
msgid "Header"
msgstr "Intestazione"
-#: common/models.py:2508
+#: common/models.py:2494
msgid "Header of this message"
msgstr "Intestazione di questo messaggio"
-#: common/models.py:2514
+#: common/models.py:2500
msgid "Body"
msgstr "Contenuto"
-#: common/models.py:2515
+#: common/models.py:2501
msgid "Body of this message"
msgstr "Contenuto di questo messaggio"
-#: common/models.py:2524
+#: common/models.py:2510
msgid "Endpoint on which this message was received"
msgstr "Scadenza in cui questo messaggio è stato ricevuto"
-#: common/models.py:2529
+#: common/models.py:2515
msgid "Worked on"
msgstr "Lavorato il"
-#: common/models.py:2530
+#: common/models.py:2516
msgid "Was the work on this message finished?"
msgstr "Il lavoro su questo messaggio è terminato?"
-#: common/models.py:2684
+#: common/models.py:2670
msgid "Id"
msgstr "Id"
-#: common/models.py:2690 templates/js/translated/news.js:44
+#: common/models.py:2676 templates/js/translated/company.js:996
+#: templates/js/translated/news.js:44
msgid "Title"
msgstr "Titolo"
-#: common/models.py:2700 templates/js/translated/news.js:60
+#: common/models.py:2686 templates/js/translated/news.js:60
msgid "Published"
msgstr "Pubblicato"
-#: common/models.py:2705 templates/InvenTree/settings/plugin_settings.html:32
+#: common/models.py:2691 templates/InvenTree/settings/plugin_settings.html:32
#: templates/js/translated/news.js:56 templates/js/translated/plugin.js:106
msgid "Author"
msgstr "Autore"
-#: common/models.py:2710 templates/js/translated/news.js:52
+#: common/models.py:2696 templates/js/translated/news.js:52
msgid "Summary"
msgstr "Riepilogo"
-#: common/models.py:2715
+#: common/models.py:2701
msgid "Read"
msgstr "Letto"
-#: common/models.py:2716
+#: common/models.py:2702
msgid "Was this news item read?"
msgstr "Queste notizie sull'elemento sono state lette?"
-#: common/models.py:2736 company/models.py:143 part/models.py:914
+#: common/models.py:2722 company/models.py:139 part/models.py:915
#: report/templates/report/inventree_bill_of_materials_report.html:126
#: report/templates/report/inventree_bill_of_materials_report.html:148
#: report/templates/report/inventree_return_order_report_base.html:35
@@ -3422,7 +3400,7 @@ msgstr "Queste notizie sull'elemento sono state lette?"
msgid "Image"
msgstr "Immagine"
-#: common/models.py:2737
+#: common/models.py:2723
msgid "Image file"
msgstr "File immagine"
@@ -3499,7 +3477,7 @@ msgstr "Descrizione dell'azienda"
#: company/models.py:113 company/templates/company/company_base.html:101
#: templates/InvenTree/settings/plugin_settings.html:54
-#: templates/js/translated/company.js:514
+#: templates/js/translated/company.js:521
msgid "Website"
msgstr "Sito Web"
@@ -3507,303 +3485,387 @@ msgstr "Sito Web"
msgid "Company website URL"
msgstr "Sito web aziendale"
-#: company/models.py:118 company/templates/company/company_base.html:119
-msgid "Address"
-msgstr "Indirizzo"
-
-#: company/models.py:119
-msgid "Company address"
-msgstr "Indirizzo dell'azienda"
-
-#: company/models.py:122
+#: company/models.py:118
msgid "Phone number"
msgstr "Telefono"
-#: company/models.py:123
+#: company/models.py:119
msgid "Contact phone number"
msgstr "Numero di telefono di contatto"
-#: company/models.py:126 company/templates/company/company_base.html:133
+#: company/models.py:122 company/templates/company/company_base.html:133
#: templates/InvenTree/settings/user.html:49
-#: templates/js/translated/company.js:659
+#: templates/js/translated/company.js:666
msgid "Email"
msgstr "Email"
-#: company/models.py:126
+#: company/models.py:122
msgid "Contact email address"
msgstr "Indirizzo email"
-#: company/models.py:129 company/templates/company/company_base.html:140
-#: order/models.py:266 order/templates/order/order_base.html:207
+#: company/models.py:125 company/templates/company/company_base.html:140
+#: order/models.py:270 order/templates/order/order_base.html:203
#: order/templates/order/return_order_base.html:175
#: order/templates/order/sales_order_base.html:215
msgid "Contact"
msgstr "Contatto"
-#: company/models.py:130
+#: company/models.py:126
msgid "Point of contact"
msgstr "Punto di contatto"
-#: company/models.py:132
+#: company/models.py:128
msgid "Link to external company information"
msgstr "Collegamento alle informazioni aziendali esterne"
-#: company/models.py:146
+#: company/models.py:142
msgid "is customer"
msgstr "è un cliente"
-#: company/models.py:146
+#: company/models.py:142
msgid "Do you sell items to this company?"
msgstr "Vendi oggetti a questa azienda?"
-#: company/models.py:148
+#: company/models.py:144
msgid "is supplier"
msgstr "è un fornitore"
-#: company/models.py:148
+#: company/models.py:144
msgid "Do you purchase items from this company?"
msgstr "Acquistate articoli da questa azienda?"
-#: company/models.py:150
+#: company/models.py:146
msgid "is manufacturer"
msgstr "è un produttore"
-#: company/models.py:150
+#: company/models.py:146
msgid "Does this company manufacture parts?"
msgstr "Questa azienda produce articoli?"
-#: company/models.py:157
+#: company/models.py:153
msgid "Default currency used for this company"
msgstr "Valuta predefinita utilizzata per questa azienda"
-#: company/models.py:223 company/templates/company/company_base.html:8
+#: company/models.py:235 company/models.py:328
+#: company/templates/company/company_base.html:8
#: company/templates/company/company_base.html:12
-#: templates/InvenTree/search.html:178 templates/js/translated/company.js:487
+#: templates/InvenTree/search.html:178 templates/js/translated/company.js:494
msgid "Company"
msgstr "Azienda"
-#: company/models.py:278 company/models.py:553 stock/models.py:675
-#: stock/serializers.py:155 stock/templates/stock/item_base.html:143
-#: templates/js/translated/bom.js:621
+#: company/models.py:324
+msgid "Company already has a primary address"
+msgstr ""
+
+#: company/models.py:329
+msgid "Select company"
+msgstr ""
+
+#: company/models.py:332
+msgid "Address title"
+msgstr ""
+
+#: company/models.py:333
+msgid "Title describing the address entry"
+msgstr ""
+
+#: company/models.py:337
+msgid "Primary address"
+msgstr ""
+
+#: company/models.py:338
+msgid "Set as primary address"
+msgstr ""
+
+#: company/models.py:341 templates/js/translated/company.js:941
+#: templates/js/translated/company.js:1002
+msgid "Line 1"
+msgstr ""
+
+#: company/models.py:342
+msgid "Address line 1"
+msgstr ""
+
+#: company/models.py:346 templates/js/translated/company.js:942
+#: templates/js/translated/company.js:1008
+msgid "Line 2"
+msgstr ""
+
+#: company/models.py:347
+msgid "Address line 2"
+msgstr ""
+
+#: company/models.py:351 company/models.py:352
+#: templates/js/translated/company.js:1014
+msgid "Postal code"
+msgstr ""
+
+#: company/models.py:356
+msgid "City/Region"
+msgstr ""
+
+#: company/models.py:357
+msgid "Postal code city/region"
+msgstr ""
+
+#: company/models.py:361
+msgid "State/Province"
+msgstr ""
+
+#: company/models.py:362
+msgid "State or province"
+msgstr ""
+
+#: company/models.py:366 templates/js/translated/company.js:1032
+msgid "Country"
+msgstr ""
+
+#: company/models.py:367
+msgid "Address country"
+msgstr ""
+
+#: company/models.py:371
+msgid "Courier shipping notes"
+msgstr ""
+
+#: company/models.py:372
+msgid "Notes for shipping courier"
+msgstr ""
+
+#: company/models.py:376
+msgid "Internal shipping notes"
+msgstr ""
+
+#: company/models.py:377
+msgid "Shipping notes for internal use"
+msgstr ""
+
+#: company/models.py:382
+msgid "Link to address information (external)"
+msgstr ""
+
+#: company/models.py:427 company/models.py:702 stock/models.py:675
+#: stock/serializers.py:204 stock/templates/stock/item_base.html:143
+#: templates/js/translated/bom.js:622
msgid "Base Part"
msgstr "Articolo di base"
-#: company/models.py:282 company/models.py:557
+#: company/models.py:431 company/models.py:706
msgid "Select part"
msgstr "Seleziona articolo"
-#: company/models.py:293 company/templates/company/company_base.html:77
+#: company/models.py:442 company/templates/company/company_base.html:77
#: company/templates/company/manufacturer_part.html:90
-#: company/templates/company/supplier_part.html:146 part/serializers.py:354
+#: company/templates/company/supplier_part.html:146 part/serializers.py:404
#: stock/templates/stock/item_base.html:208
-#: templates/js/translated/company.js:498
-#: templates/js/translated/company.js:824
-#: templates/js/translated/company.js:954
-#: templates/js/translated/company.js:1221
-#: templates/js/translated/table_filters.js:709
+#: templates/js/translated/company.js:505
+#: templates/js/translated/company.js:1149
+#: templates/js/translated/company.js:1327
+#: templates/js/translated/company.js:1642
+#: templates/js/translated/table_filters.js:731
msgid "Manufacturer"
msgstr "Produttore"
-#: company/models.py:294
+#: company/models.py:443
msgid "Select manufacturer"
msgstr "Seleziona Produttore"
-#: company/models.py:300 company/templates/company/manufacturer_part.html:101
-#: company/templates/company/supplier_part.html:154 part/serializers.py:360
-#: templates/js/translated/company.js:340
-#: templates/js/translated/company.js:823
-#: templates/js/translated/company.js:970
-#: templates/js/translated/company.js:1240 templates/js/translated/part.js:1773
-#: templates/js/translated/purchase_order.js:1814
-#: templates/js/translated/purchase_order.js:2021
+#: company/models.py:449 company/templates/company/manufacturer_part.html:101
+#: company/templates/company/supplier_part.html:154 part/serializers.py:410
+#: templates/js/translated/company.js:350
+#: templates/js/translated/company.js:1148
+#: templates/js/translated/company.js:1343
+#: templates/js/translated/company.js:1661 templates/js/translated/part.js:1772
+#: templates/js/translated/purchase_order.js:1829
+#: templates/js/translated/purchase_order.js:2031
msgid "MPN"
msgstr "Codice articolo produttore (MPN)"
-#: company/models.py:301
+#: company/models.py:450
msgid "Manufacturer Part Number"
msgstr "Codice articolo produttore"
-#: company/models.py:307
+#: company/models.py:456
msgid "URL for external manufacturer part link"
msgstr "URL dell'articolo del fornitore"
-#: company/models.py:313
+#: company/models.py:462
msgid "Manufacturer part description"
msgstr "Descrizione articolo costruttore"
-#: company/models.py:360 company/models.py:384 company/models.py:578
+#: company/models.py:509 company/models.py:533 company/models.py:727
#: company/templates/company/manufacturer_part.html:7
#: company/templates/company/manufacturer_part.html:24
#: stock/templates/stock/item_base.html:218
msgid "Manufacturer Part"
msgstr "Codice articolo produttore"
-#: company/models.py:391
+#: company/models.py:540
msgid "Parameter name"
msgstr "Nome parametro"
-#: company/models.py:397
+#: company/models.py:546
#: report/templates/report/inventree_test_report_base.html:104
-#: stock/models.py:2255 templates/js/translated/company.js:872
-#: templates/js/translated/company.js:1077 templates/js/translated/part.js:1465
-#: templates/js/translated/stock.js:1446
+#: stock/models.py:2255 templates/js/translated/company.js:1197
+#: templates/js/translated/company.js:1450 templates/js/translated/part.js:1464
+#: templates/js/translated/stock.js:1445
msgid "Value"
msgstr "Valore"
-#: company/models.py:398
+#: company/models.py:547
msgid "Parameter value"
msgstr "Valore del parametro"
-#: company/models.py:404 company/templates/company/supplier_part.html:169
-#: part/admin.py:40 part/models.py:987 part/models.py:3407
+#: company/models.py:553 company/templates/company/supplier_part.html:169
+#: part/admin.py:40 part/models.py:988 part/models.py:3441
#: part/templates/part/part_base.html:286
-#: templates/js/translated/company.js:1083 templates/js/translated/part.js:1484
-#: templates/js/translated/part.js:1588 templates/js/translated/part.js:2262
+#: templates/js/translated/company.js:1456 templates/js/translated/part.js:1483
+#: templates/js/translated/part.js:1587 templates/js/translated/part.js:2338
msgid "Units"
msgstr "Unità"
-#: company/models.py:405
+#: company/models.py:554
msgid "Parameter units"
msgstr "Unità parametri"
-#: company/models.py:498
+#: company/models.py:647
msgid "Pack units must be compatible with the base part units"
msgstr ""
-#: company/models.py:504
+#: company/models.py:653
msgid "Pack units must be greater than zero"
msgstr ""
-#: company/models.py:520
+#: company/models.py:669
msgid "Linked manufacturer part must reference the same base part"
msgstr "L'articolo del costruttore collegato deve riferirsi alla stesso articolo"
-#: company/models.py:564 company/templates/company/company_base.html:82
-#: company/templates/company/supplier_part.html:130 order/models.py:382
-#: order/templates/order/order_base.html:140 part/bom.py:285 part/bom.py:313
-#: part/serializers.py:343 stock/templates/stock/item_base.html:225
+#: company/models.py:713 company/templates/company/company_base.html:82
+#: company/templates/company/supplier_part.html:130 order/models.py:395
+#: order/templates/order/order_base.html:136 part/bom.py:285 part/bom.py:313
+#: part/serializers.py:393 stock/templates/stock/item_base.html:225
#: templates/email/overdue_purchase_order.html:16
-#: templates/js/translated/company.js:339
-#: templates/js/translated/company.js:502
-#: templates/js/translated/company.js:1194 templates/js/translated/part.js:1741
+#: templates/js/translated/company.js:349
+#: templates/js/translated/company.js:509
+#: templates/js/translated/company.js:1615 templates/js/translated/part.js:1740
#: templates/js/translated/pricing.js:498
-#: templates/js/translated/purchase_order.js:1653
-#: templates/js/translated/table_filters.js:713
+#: templates/js/translated/purchase_order.js:1668
+#: templates/js/translated/table_filters.js:735
msgid "Supplier"
msgstr "Fornitore"
-#: company/models.py:565
+#: company/models.py:714
msgid "Select supplier"
msgstr "Seleziona fornitore"
-#: company/models.py:570 company/templates/company/supplier_part.html:140
-#: part/bom.py:286 part/bom.py:314 part/serializers.py:349
-#: templates/js/translated/company.js:338 templates/js/translated/part.js:1759
+#: company/models.py:719 company/templates/company/supplier_part.html:140
+#: part/bom.py:286 part/bom.py:314 part/serializers.py:399
+#: templates/js/translated/company.js:348 templates/js/translated/part.js:1758
#: templates/js/translated/pricing.js:510
-#: templates/js/translated/purchase_order.js:1813
-#: templates/js/translated/purchase_order.js:1996
+#: templates/js/translated/purchase_order.js:1828
+#: templates/js/translated/purchase_order.js:2006
msgid "SKU"
msgstr "SKU"
-#: company/models.py:571 part/serializers.py:349
+#: company/models.py:720 part/serializers.py:399
msgid "Supplier stock keeping unit"
msgstr "Unità di giacenza magazzino fornitore"
-#: company/models.py:579
+#: company/models.py:728
msgid "Select manufacturer part"
msgstr "Selezionare un produttore"
-#: company/models.py:585
+#: company/models.py:734
msgid "URL for external supplier part link"
msgstr "URL dell'articolo del fornitore"
-#: company/models.py:591
+#: company/models.py:740
msgid "Supplier part description"
msgstr "Descrizione articolo fornitore"
-#: company/models.py:596 company/templates/company/supplier_part.html:188
-#: part/admin.py:279 part/models.py:3801 part/templates/part/upload_bom.html:59
+#: company/models.py:745 company/templates/company/supplier_part.html:188
+#: part/admin.py:279 part/models.py:3845 part/templates/part/upload_bom.html:59
#: report/templates/report/inventree_bill_of_materials_report.html:140
#: report/templates/report/inventree_po_report_base.html:32
#: report/templates/report/inventree_return_order_report_base.html:27
#: report/templates/report/inventree_so_report_base.html:32
-#: stock/serializers.py:418
+#: stock/serializers.py:484
msgid "Note"
msgstr "Nota"
-#: company/models.py:600 part/models.py:1919
+#: company/models.py:749 part/models.py:1921
msgid "base cost"
msgstr "costo base"
-#: company/models.py:600 part/models.py:1919
+#: company/models.py:749 part/models.py:1921
msgid "Minimum charge (e.g. stocking fee)"
msgstr "Onere minimo (ad esempio tassa di stoccaggio)"
-#: company/models.py:602 company/templates/company/supplier_part.html:161
+#: company/models.py:751 company/templates/company/supplier_part.html:161
#: stock/admin.py:119 stock/models.py:701
#: stock/templates/stock/item_base.html:241
-#: templates/js/translated/company.js:1256
-#: templates/js/translated/stock.js:2160
+#: templates/js/translated/company.js:1677
+#: templates/js/translated/stock.js:2317
msgid "Packaging"
msgstr "Confezionamento"
-#: company/models.py:602
+#: company/models.py:751
msgid "Part packaging"
msgstr "Imballaggio del pezzo"
-#: company/models.py:606 templates/js/translated/company.js:1261
-#: templates/js/translated/part.js:1793 templates/js/translated/part.js:1848
-#: templates/js/translated/purchase_order.js:300
-#: templates/js/translated/purchase_order.js:827
-#: templates/js/translated/purchase_order.js:1073
-#: templates/js/translated/purchase_order.js:2052
-#: templates/js/translated/purchase_order.js:2069
+#: company/models.py:755 templates/js/translated/company.js:1682
+#: templates/js/translated/part.js:1792 templates/js/translated/part.js:1847
+#: templates/js/translated/purchase_order.js:311
+#: templates/js/translated/purchase_order.js:842
+#: templates/js/translated/purchase_order.js:1088
+#: templates/js/translated/purchase_order.js:2062
+#: templates/js/translated/purchase_order.js:2079
msgid "Pack Quantity"
msgstr "Quantità Confezione"
-#: company/models.py:607
+#: company/models.py:756
msgid "Total quantity supplied in a single pack. Leave empty for single items."
msgstr ""
-#: company/models.py:624 part/models.py:1921
+#: company/models.py:773 part/models.py:1923
msgid "multiple"
msgstr "multiplo"
-#: company/models.py:624
+#: company/models.py:773
msgid "Order multiple"
msgstr "Ordine multiplo"
-#: company/models.py:632 company/templates/company/supplier_part.html:115
+#: company/models.py:781 company/templates/company/supplier_part.html:115
#: templates/email/build_order_required_stock.html:19
#: templates/email/low_stock_notification.html:17
-#: templates/js/translated/bom.js:1127 templates/js/translated/build.js:2136
-#: templates/js/translated/build.js:3045
-#: templates/js/translated/model_renderers.js:205
-#: templates/js/translated/part.js:670 templates/js/translated/part.js:672
-#: templates/js/translated/part.js:677
-#: templates/js/translated/table_filters.js:286
-#: templates/js/translated/table_filters.js:492
+#: templates/js/translated/bom.js:1145 templates/js/translated/build.js:2490
+#: templates/js/translated/index.js:118
+#: templates/js/translated/model_renderers.js:219
+#: templates/js/translated/part.js:669 templates/js/translated/part.js:671
+#: templates/js/translated/part.js:676
+#: templates/js/translated/table_filters.js:292
+#: templates/js/translated/table_filters.js:510
msgid "Available"
msgstr "Disponibile"
-#: company/models.py:633
+#: company/models.py:782
msgid "Quantity available from supplier"
msgstr "Quantità disponibile dal fornitore"
-#: company/models.py:637
+#: company/models.py:786
msgid "Availability Updated"
msgstr "Disponibilità Aggiornata"
-#: company/models.py:638
+#: company/models.py:787
msgid "Date of last update of availability data"
msgstr "Data dell’ultimo aggiornamento dei dati sulla disponibilità"
-#: company/serializers.py:99
+#: company/serializers.py:156
msgid "Default currency used for this supplier"
msgstr "Valuta predefinita utilizzata per questo fornitore"
#: company/templates/company/company_base.html:22
-#: templates/js/translated/purchase_order.js:228
+#: templates/js/translated/purchase_order.js:239
msgid "Create Purchase Order"
msgstr "Crea ordine d'acquisto"
@@ -3816,7 +3878,7 @@ msgid "Edit company information"
msgstr "Modifica le informazioni dell'azienda"
#: company/templates/company/company_base.html:34
-#: templates/js/translated/company.js:436
+#: templates/js/translated/company.js:443
msgid "Edit Company"
msgstr "Modifica azienda"
@@ -3856,17 +3918,17 @@ msgstr "Scarica immagine dall'URL"
msgid "Delete image"
msgstr "Elimina immagine"
-#: company/templates/company/company_base.html:87 order/models.py:779
-#: order/models.py:1738 order/templates/order/return_order_base.html:132
+#: company/templates/company/company_base.html:87 order/models.py:792
+#: order/models.py:1751 order/templates/order/return_order_base.html:132
#: order/templates/order/sales_order_base.html:145 stock/models.py:720
-#: stock/models.py:721 stock/serializers.py:825
+#: stock/models.py:721 stock/serializers.py:942
#: stock/templates/stock/item_base.html:401
#: templates/email/overdue_sales_order.html:16
-#: templates/js/translated/company.js:494
-#: templates/js/translated/return_order.js:284
-#: templates/js/translated/sales_order.js:772
-#: templates/js/translated/stock.js:2696
-#: templates/js/translated/table_filters.js:717
+#: templates/js/translated/company.js:501
+#: templates/js/translated/return_order.js:296
+#: templates/js/translated/sales_order.js:784
+#: templates/js/translated/stock.js:2827
+#: templates/js/translated/table_filters.js:739
msgid "Customer"
msgstr "Cliente"
@@ -3874,6 +3936,13 @@ msgstr "Cliente"
msgid "Uses default currency"
msgstr "Valuta predefinita"
+#: company/templates/company/company_base.html:119 order/models.py:279
+#: order/templates/order/order_base.html:210
+#: order/templates/order/return_order_base.html:182
+#: order/templates/order/sales_order_base.html:222
+msgid "Address"
+msgstr "Indirizzo"
+
#: company/templates/company/company_base.html:126
msgid "Phone"
msgstr "Telefono"
@@ -3906,7 +3975,7 @@ msgstr "Download Immagine"
#: company/templates/company/detail.html:15
#: company/templates/company/manufacturer_part_sidebar.html:7
-#: templates/InvenTree/search.html:120 templates/js/translated/search.js:189
+#: templates/InvenTree/search.html:120 templates/js/translated/search.js:147
msgid "Supplier Parts"
msgstr "Articoli fornitore"
@@ -3916,129 +3985,121 @@ msgstr "Crea nuovo fornitore"
#: company/templates/company/detail.html:20
#: company/templates/company/manufacturer_part.html:123
-#: part/templates/part/detail.html:381
+#: part/templates/part/detail.html:356
msgid "New Supplier Part"
msgstr "Nuovo fornitore articolo"
-#: company/templates/company/detail.html:37
-#: company/templates/company/detail.html:85
-#: part/templates/part/category.html:183
-msgid "Order parts"
-msgstr "Articoli ordinati"
-
-#: company/templates/company/detail.html:42
-#: company/templates/company/detail.html:90
-msgid "Delete parts"
-msgstr "Cancella articoli"
-
-#: company/templates/company/detail.html:43
-#: company/templates/company/detail.html:91
-msgid "Delete Parts"
-msgstr "Cancella articoli"
-
-#: company/templates/company/detail.html:62 templates/InvenTree/search.html:105
-#: templates/js/translated/search.js:193
+#: company/templates/company/detail.html:41 templates/InvenTree/search.html:105
+#: templates/js/translated/search.js:151
msgid "Manufacturer Parts"
msgstr "Articoli Produttore"
-#: company/templates/company/detail.html:66
+#: company/templates/company/detail.html:45
msgid "Create new manufacturer part"
msgstr "Crea nuovo articolo produttore"
-#: company/templates/company/detail.html:67 part/templates/part/detail.html:411
+#: company/templates/company/detail.html:46 part/templates/part/detail.html:376
msgid "New Manufacturer Part"
msgstr "Nuovo Produttore Articoli"
-#: company/templates/company/detail.html:108
+#: company/templates/company/detail.html:65
msgid "Supplier Stock"
msgstr "Giacenza Fornitore"
-#: company/templates/company/detail.html:118
+#: company/templates/company/detail.html:75
#: company/templates/company/sidebar.html:12
#: company/templates/company/supplier_part_sidebar.html:7
#: 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:108 part/templates/part/part_sidebar.html:35
-#: templates/InvenTree/index.html:275 templates/InvenTree/search.html:199
+#: part/templates/part/detail.html:106 part/templates/part/part_sidebar.html:35
+#: templates/InvenTree/index.html:227 templates/InvenTree/search.html:199
#: templates/InvenTree/settings/sidebar.html:55
-#: templates/js/translated/search.js:247 templates/navbar.html:50
+#: templates/js/translated/search.js:205 templates/navbar.html:50
#: users/models.py:43
msgid "Purchase Orders"
msgstr "Ordine di acquisto"
-#: company/templates/company/detail.html:122
+#: company/templates/company/detail.html:79
#: order/templates/order/purchase_orders.html:17
msgid "Create new purchase order"
msgstr "Crea nuovo ordine di acquisto"
-#: company/templates/company/detail.html:123
+#: company/templates/company/detail.html:80
#: order/templates/order/purchase_orders.html:18
msgid "New Purchase Order"
msgstr "Nuovo Ordine di Acquisto"
-#: company/templates/company/detail.html:146
+#: company/templates/company/detail.html:101
#: company/templates/company/sidebar.html:21
#: 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:131 part/templates/part/part_sidebar.html:39
-#: templates/InvenTree/index.html:307 templates/InvenTree/search.html:219
+#: part/templates/part/detail.html:127 part/templates/part/part_sidebar.html:39
+#: templates/InvenTree/index.html:259 templates/InvenTree/search.html:219
#: templates/InvenTree/settings/sidebar.html:57
-#: templates/js/translated/search.js:261 templates/navbar.html:62
+#: templates/js/translated/search.js:219 templates/navbar.html:62
#: users/models.py:44
msgid "Sales Orders"
msgstr "Ordini di Vendita"
-#: company/templates/company/detail.html:150
+#: company/templates/company/detail.html:105
#: order/templates/order/sales_orders.html:20
msgid "Create new sales order"
msgstr "Crea nuovo ordine di vendita"
-#: company/templates/company/detail.html:151
+#: company/templates/company/detail.html:106
#: order/templates/order/sales_orders.html:21
msgid "New Sales Order"
msgstr "Nuovo Ordine di Vendita"
-#: company/templates/company/detail.html:173
-#: templates/js/translated/build.js:1976
+#: company/templates/company/detail.html:126
msgid "Assigned Stock"
msgstr "Assegna Giacenza"
-#: company/templates/company/detail.html:191
+#: company/templates/company/detail.html:142
#: company/templates/company/sidebar.html:29
#: order/templates/order/return_order_base.html:13
#: order/templates/order/return_orders.html:8
#: order/templates/order/return_orders.html:15
#: templates/InvenTree/settings/sidebar.html:59
-#: templates/js/translated/search.js:274 templates/navbar.html:65
+#: templates/js/translated/search.js:232 templates/navbar.html:65
#: users/models.py:45
msgid "Return Orders"
msgstr "Ordini di reso"
-#: company/templates/company/detail.html:195
+#: company/templates/company/detail.html:146
#: order/templates/order/return_orders.html:20
msgid "Create new return order"
msgstr "Crea nuovo ordine di reso"
-#: company/templates/company/detail.html:196
+#: company/templates/company/detail.html:147
#: order/templates/order/return_orders.html:21
msgid "New Return Order"
msgstr "Nuovo Ordine Di Reso"
-#: company/templates/company/detail.html:221
+#: company/templates/company/detail.html:168
msgid "Company Notes"
msgstr "Note Dell'Azienda"
-#: company/templates/company/detail.html:236
+#: company/templates/company/detail.html:183
msgid "Company Contacts"
msgstr "Contatti Azienda"
-#: company/templates/company/detail.html:240
-#: company/templates/company/detail.html:241
+#: company/templates/company/detail.html:187
+#: company/templates/company/detail.html:188
msgid "Add Contact"
msgstr "Aggiungi contatti"
+#: company/templates/company/detail.html:206
+msgid "Company addresses"
+msgstr ""
+
+#: company/templates/company/detail.html:210
+#: company/templates/company/detail.html:211
+msgid "Add Address"
+msgstr ""
+
#: company/templates/company/index.html:8
msgid "Supplier List"
msgstr "Elenco dei fornitori"
@@ -4050,17 +4111,17 @@ msgstr "Produttori"
#: company/templates/company/manufacturer_part.html:35
#: company/templates/company/supplier_part.html:228
-#: part/templates/part/detail.html:111 part/templates/part/part_base.html:85
+#: part/templates/part/detail.html:109 part/templates/part/part_base.html:85
msgid "Order part"
msgstr "Articoli ordinati"
#: company/templates/company/manufacturer_part.html:39
-#: templates/js/translated/company.js:1001
+#: templates/js/translated/company.js:1374
msgid "Edit manufacturer part"
msgstr "Modifica articolo produttore"
#: company/templates/company/manufacturer_part.html:43
-#: templates/js/translated/company.js:1002
+#: templates/js/translated/company.js:1375
msgid "Delete manufacturer part"
msgstr "Cancella articolo produttore"
@@ -4080,40 +4141,22 @@ msgstr "Nessuna informazione sul produttore disponibile"
msgid "Suppliers"
msgstr "Fornitori"
-#: company/templates/company/manufacturer_part.html:136
-#: part/templates/part/detail.html:392
-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:393 part/templates/part/detail.html:423
-#: templates/js/translated/forms.js:506 templates/js/translated/helpers.js:105
-#: templates/js/translated/part.js:370 templates/js/translated/pricing.js:629
-#: templates/js/translated/stock.js:216 users/models.py:247
-msgid "Delete"
-msgstr "Elimina"
-
-#: company/templates/company/manufacturer_part.html:166
+#: company/templates/company/manufacturer_part.html:156
#: company/templates/company/manufacturer_part_sidebar.html:5
#: part/templates/part/category_sidebar.html:20
-#: part/templates/part/detail.html:208 part/templates/part/part_sidebar.html:8
+#: part/templates/part/detail.html:195 part/templates/part/part_sidebar.html:8
msgid "Parameters"
msgstr "Parametri"
-#: company/templates/company/manufacturer_part.html:170
-#: part/templates/part/detail.html:213
+#: company/templates/company/manufacturer_part.html:160
+#: part/templates/part/detail.html:200
#: templates/InvenTree/settings/category.html:12
#: templates/InvenTree/settings/part_parameters.html:12
msgid "New Parameter"
msgstr "Nuovo Parametro"
-#: company/templates/company/manufacturer_part.html:183
-msgid "Delete parameters"
-msgstr "Elimina il parametro"
-
-#: company/templates/company/manufacturer_part.html:226
-#: templates/js/translated/part.js:1396
+#: company/templates/company/manufacturer_part.html:206
+#: templates/js/translated/part.js:1395
msgid "Add Parameter"
msgstr "Aggiungi parametro"
@@ -4137,23 +4180,28 @@ msgstr "Elementi in Giacenza Impegnati"
msgid "Contacts"
msgstr "Contatti"
+#: company/templates/company/sidebar.html:35
+msgid "Addresses"
+msgstr ""
+
#: company/templates/company/supplier_part.html:7
#: company/templates/company/supplier_part.html:24 stock/models.py:684
#: stock/templates/stock/item_base.html:234
-#: templates/js/translated/company.js:1210
-#: templates/js/translated/purchase_order.js:747
-#: templates/js/translated/stock.js:2016
+#: templates/js/translated/company.js:1631
+#: templates/js/translated/purchase_order.js:758
+#: templates/js/translated/stock.js:2173
msgid "Supplier Part"
msgstr "Articolo Fornitore"
#: company/templates/company/supplier_part.html:51
+#: templates/js/translated/company.js:1557
msgid "Supplier part actions"
msgstr "Azioni Articolo Fornitore"
#: company/templates/company/supplier_part.html:56
#: company/templates/company/supplier_part.html:57
#: company/templates/company/supplier_part.html:229
-#: part/templates/part/detail.html:112
+#: part/templates/part/detail.html:110
msgid "Order Part"
msgstr "Ordine Articolo"
@@ -4164,13 +4212,13 @@ msgstr "Aggiorna Disponibilità"
#: company/templates/company/supplier_part.html:64
#: company/templates/company/supplier_part.html:65
-#: templates/js/translated/company.js:283
+#: templates/js/translated/company.js:293
msgid "Edit Supplier Part"
msgstr "Modifica fornitore articolo"
#: company/templates/company/supplier_part.html:69
#: company/templates/company/supplier_part.html:70
-#: templates/js/translated/company.js:258
+#: templates/js/translated/company.js:268
msgid "Duplicate Supplier Part"
msgstr "Duplica Articoli Fornitore"
@@ -4197,7 +4245,7 @@ msgstr "Crea nuova allocazione magazzino"
#: company/templates/company/supplier_part.html:211
#: part/templates/part/detail.html:25 stock/templates/stock/location.html:198
-#: templates/js/translated/stock.js:504
+#: templates/js/translated/stock.js:503
msgid "New Stock Item"
msgstr "Nuovo Elemento in giacenza"
@@ -4205,37 +4253,37 @@ msgstr "Nuovo Elemento in giacenza"
msgid "Supplier Part Orders"
msgstr "Ordini articoli fornitore"
-#: company/templates/company/supplier_part.html:249
+#: company/templates/company/supplier_part.html:247
msgid "Pricing Information"
msgstr "Informazioni Prezzi"
-#: company/templates/company/supplier_part.html:254
-#: templates/js/translated/company.js:387
+#: company/templates/company/supplier_part.html:252
+#: templates/js/translated/company.js:397
#: templates/js/translated/pricing.js:684
msgid "Add Price Break"
msgstr "Aggiungi riduzione prezzo"
-#: company/templates/company/supplier_part.html:281
+#: company/templates/company/supplier_part.html:277
msgid "Supplier Part QR Code"
msgstr "Codice Articolo Fornitore QR"
-#: company/templates/company/supplier_part.html:292
+#: company/templates/company/supplier_part.html:288
msgid "Link Barcode to Supplier Part"
msgstr "Collega Codice a Barre con l'Articolo Fornitore"
-#: company/templates/company/supplier_part.html:365
+#: company/templates/company/supplier_part.html:361
msgid "Update Part Availability"
msgstr "Aggiorna Disponibilità Articolo"
#: company/templates/company/supplier_part_sidebar.html:5 part/tasks.py:293
-#: part/templates/part/category.html:199
+#: part/templates/part/category.html:182
#: part/templates/part/category_sidebar.html:17 stock/admin.py:47
-#: stock/templates/stock/location.html:168
+#: stock/serializers.py:662 stock/templates/stock/location.html:168
#: stock/templates/stock/location.html:182
#: stock/templates/stock/location.html:194
#: stock/templates/stock/location_sidebar.html:7
-#: templates/InvenTree/search.html:155 templates/js/translated/part.js:1034
-#: templates/js/translated/search.js:214 templates/js/translated/stock.js:2514
+#: templates/InvenTree/search.html:155 templates/js/translated/part.js:1033
+#: templates/js/translated/search.js:172 templates/js/translated/stock.js:2645
#: users/models.py:41
msgid "Stock Items"
msgstr "Articoli in magazzino"
@@ -4261,7 +4309,7 @@ msgstr "Clienti"
msgid "New Customer"
msgstr "Nuovo cliente"
-#: company/views.py:52 templates/js/translated/search.js:234
+#: company/views.py:52 templates/js/translated/search.js:192
msgid "Companies"
msgstr "Aziende"
@@ -4269,72 +4317,76 @@ msgstr "Aziende"
msgid "New Company"
msgstr "Nuova Azienda"
-#: label/models.py:104
+#: label/models.py:112
msgid "Label name"
msgstr "Nome etichetta"
-#: label/models.py:111
+#: label/models.py:119
msgid "Label description"
msgstr "Descrizione etichetta"
-#: label/models.py:118
+#: label/models.py:126
msgid "Label"
msgstr "Etichetta"
-#: label/models.py:119
+#: label/models.py:127
msgid "Label template file"
msgstr "File modello etichetta"
-#: label/models.py:125 report/models.py:273
+#: label/models.py:133 report/models.py:273
msgid "Enabled"
msgstr "Abilitato"
-#: label/models.py:126
+#: label/models.py:134
msgid "Label template is enabled"
msgstr "Modello di etichetta abilitato"
-#: label/models.py:131
+#: label/models.py:139
msgid "Width [mm]"
msgstr "Larghezza [mm]"
-#: label/models.py:132
+#: label/models.py:140
msgid "Label width, specified in mm"
msgstr "Larghezza dell'etichetta, specificata in mm"
-#: label/models.py:138
+#: label/models.py:146
msgid "Height [mm]"
msgstr "Altezza [mm]"
-#: label/models.py:139
+#: label/models.py:147
msgid "Label height, specified in mm"
msgstr "Larghezza dell'etichetta, specificata in mm"
-#: label/models.py:145 report/models.py:266
+#: label/models.py:153 report/models.py:266
msgid "Filename Pattern"
msgstr "Formato del nome file"
-#: label/models.py:146
+#: label/models.py:154
msgid "Pattern for generating label filenames"
msgstr "Formato del nome file per la generazione etichetta"
-#: label/models.py:242
+#: label/models.py:250
msgid "Query filters (comma-separated list of key=value pairs),"
msgstr "Filtri di ricerca (elenco separato da virgole key=coppia di valori),"
-#: label/models.py:243 label/models.py:284 label/models.py:312
-#: report/models.py:294 report/models.py:452 report/models.py:490
-#: report/models.py:528
+#: label/models.py:251 label/models.py:292 label/models.py:320
+#: label/models.py:356 report/models.py:294 report/models.py:454
+#: report/models.py:492 report/models.py:530
msgid "Filters"
msgstr "Filtri"
-#: label/models.py:283
+#: label/models.py:291
msgid "Query filters (comma-separated list of key=value pairs"
msgstr "Filtri di ricerca (elenco separato da virgole key=coppia di valori"
-#: label/models.py:311
+#: label/models.py:319
msgid "Part query filters (comma-separated value of key=value pairs)"
msgstr "Articolo Filtri di ricerca (elenco separato da virgole key=coppia di valori)"
+#: label/models.py:355
+msgid "Query filters (comma-separated list of key=value pairs)"
+msgstr ""
+
#: label/templates/label/part/part_label.html:31
#: label/templates/label/stockitem/qr.html:21
#: label/templates/label/stocklocation/qr.html:21
@@ -4352,8 +4404,8 @@ msgstr ""
#: report/templates/report/inventree_po_report_base.html:31
#: report/templates/report/inventree_so_report_base.html:31
#: templates/js/translated/order.js:327
-#: templates/js/translated/purchase_order.js:2093
-#: templates/js/translated/sales_order.js:1827
+#: templates/js/translated/purchase_order.js:2103
+#: templates/js/translated/sales_order.js:1839
msgid "Total Price"
msgstr "Prezzo Totale"
@@ -4361,30 +4413,30 @@ msgstr "Prezzo Totale"
msgid "No matching purchase order found"
msgstr "Nessun ordine di acquisto corrispondente trovato"
-#: order/api.py:1452 order/models.py:1178 order/models.py:1262
+#: order/api.py:1452 order/models.py:1191 order/models.py:1275
#: order/templates/order/order_base.html:9
#: order/templates/order/order_base.html:18
#: report/templates/report/inventree_po_report_base.html:14
#: stock/templates/stock/item_base.html:177
#: templates/email/overdue_purchase_order.html:15
-#: templates/js/translated/part.js:1718 templates/js/translated/pricing.js:790
-#: templates/js/translated/purchase_order.js:154
-#: templates/js/translated/purchase_order.js:748
-#: templates/js/translated/purchase_order.js:1637
-#: templates/js/translated/stock.js:1996 templates/js/translated/stock.js:2644
+#: templates/js/translated/part.js:1717 templates/js/translated/pricing.js:790
+#: templates/js/translated/purchase_order.js:165
+#: templates/js/translated/purchase_order.js:759
+#: templates/js/translated/purchase_order.js:1652
+#: templates/js/translated/stock.js:2153 templates/js/translated/stock.js:2775
msgid "Purchase Order"
msgstr "Ordine D'Acquisto"
-#: order/api.py:1456 order/models.py:1909 order/models.py:1955
+#: order/api.py:1456 order/models.py:1922 order/models.py:1968
#: order/templates/order/return_order_base.html:9
#: order/templates/order/return_order_base.html:28
#: report/templates/report/inventree_return_order_report_base.html:13
-#: templates/js/translated/return_order.js:269
-#: templates/js/translated/stock.js:2678
+#: templates/js/translated/return_order.js:281
+#: templates/js/translated/stock.js:2809
msgid "Return Order"
msgstr "Restituisci ordine"
-#: order/api.py:1458 templates/js/translated/sales_order.js:1030
+#: order/api.py:1458 templates/js/translated/sales_order.js:1042
msgid "Unknown"
msgstr "Sconosciuto"
@@ -4392,11 +4444,11 @@ msgstr "Sconosciuto"
msgid "Total price for this order"
msgstr "Prezzo totale dell'ordine"
-#: order/models.py:79 order/serializers.py:49
+#: order/models.py:79 order/serializers.py:50
msgid "Order Currency"
msgstr ""
-#: order/models.py:81 order/serializers.py:50
+#: order/models.py:81 order/serializers.py:51
msgid "Currency for this order (leave blank to use company default)"
msgstr ""
@@ -4408,492 +4460,496 @@ msgstr "Il contatto non corrisponde all'azienda selezionata"
msgid "Order description (optional)"
msgstr "Descrizione dell'ordine (opzionale)"
-#: order/models.py:234
+#: order/models.py:237
msgid "Select project code for this order"
msgstr "Seleziona il codice del progetto per questo ordine"
-#: order/models.py:236 order/models.py:1094 order/models.py:1454
+#: order/models.py:240 order/models.py:1107 order/models.py:1467
msgid "Link to external page"
msgstr "Collegamento a un sito web esterno"
-#: order/models.py:241
+#: order/models.py:245
msgid "Expected date for order delivery. Order will be overdue after this date."
msgstr "Data prevista per la consegna dell'ordine. L'ordine scadrà dopo questa data."
-#: order/models.py:250
+#: order/models.py:254
msgid "Created By"
msgstr "Creato Da"
-#: order/models.py:257
+#: order/models.py:261
msgid "User or group responsible for this order"
msgstr "Utente o gruppo responsabile di questo ordine"
-#: order/models.py:267
+#: order/models.py:271
msgid "Point of contact for this order"
msgstr "Punto di contatto per questo ordine"
-#: order/models.py:360 order/models.py:766
+#: order/models.py:280
+msgid "Company address for this order"
+msgstr ""
+
+#: order/models.py:373 order/models.py:779
msgid "Order reference"
msgstr "Riferimento ordine"
-#: order/models.py:368 order/models.py:791
+#: order/models.py:381 order/models.py:804
msgid "Purchase order status"
msgstr "Stato ordine d'acquisto"
-#: order/models.py:383
+#: order/models.py:396
msgid "Company from which the items are being ordered"
msgstr "Azienda da cui sono stati ordinati gli articoli"
-#: order/models.py:391 order/templates/order/order_base.html:152
-#: templates/js/translated/purchase_order.js:1662
+#: order/models.py:404 order/templates/order/order_base.html:148
+#: templates/js/translated/purchase_order.js:1677
msgid "Supplier Reference"
msgstr "Riferimento fornitore"
-#: order/models.py:391
+#: order/models.py:404
msgid "Supplier order reference code"
msgstr "Codice di riferimento ordine fornitore"
-#: order/models.py:398
+#: order/models.py:411
msgid "received by"
msgstr "ricevuto da"
-#: order/models.py:403 order/models.py:1761
+#: order/models.py:416 order/models.py:1774
msgid "Issue Date"
msgstr "Data di emissione"
-#: order/models.py:404 order/models.py:1762
+#: order/models.py:417 order/models.py:1775
msgid "Date order was issued"
msgstr "Data di emissione ordine"
-#: order/models.py:410 order/models.py:1768
+#: order/models.py:423 order/models.py:1781
msgid "Date order was completed"
msgstr "Data ordine completato"
-#: order/models.py:445
+#: order/models.py:458
msgid "Part supplier must match PO supplier"
msgstr "Il fornitore dell'articolo deve corrispondere al fornitore dell'ordine di produzione"
-#: order/models.py:606
+#: order/models.py:619
msgid "Quantity must be a positive number"
msgstr "La quantità deve essere un numero positivo"
-#: order/models.py:780
+#: order/models.py:793
msgid "Company to which the items are being sold"
msgstr "Azienda da cui sono stati ordinati gli elementi"
-#: order/models.py:799 order/models.py:1755
+#: order/models.py:812 order/models.py:1768
msgid "Customer Reference "
msgstr "Riferimento Cliente "
-#: order/models.py:799 order/models.py:1756
+#: order/models.py:812 order/models.py:1769
msgid "Customer order reference code"
msgstr "Codice di riferimento Ordine del Cliente"
-#: order/models.py:801 order/models.py:1408
-#: templates/js/translated/sales_order.js:831
-#: templates/js/translated/sales_order.js:1012
+#: order/models.py:814 order/models.py:1421
+#: templates/js/translated/sales_order.js:843
+#: templates/js/translated/sales_order.js:1024
msgid "Shipment Date"
msgstr "Data di spedizione"
-#: order/models.py:808
+#: order/models.py:821
msgid "shipped by"
msgstr "spedito da"
-#: order/models.py:857
+#: order/models.py:870
msgid "Order cannot be completed as no parts have been assigned"
msgstr "L'ordine non può essere completato perché nessun articolo è stato assegnato"
-#: order/models.py:861
+#: order/models.py:874
msgid "Only an open order can be marked as complete"
msgstr "Solo un ordine aperto può essere contrassegnato come completo"
-#: order/models.py:864 templates/js/translated/sales_order.js:491
+#: order/models.py:877 templates/js/translated/sales_order.js:503
msgid "Order cannot be completed as there are incomplete shipments"
msgstr "L'ordine non può essere completato in quanto ci sono spedizioni incomplete"
-#: order/models.py:867
+#: order/models.py:880
msgid "Order cannot be completed as there are incomplete line items"
msgstr "L'ordine non può essere completato perché ci sono elementi di riga incompleti"
-#: order/models.py:1074
+#: order/models.py:1087
msgid "Item quantity"
msgstr "Quantità Elementi"
-#: order/models.py:1087
+#: order/models.py:1100
msgid "Line item reference"
msgstr "Riferimento Linea Elemento"
-#: order/models.py:1089
+#: order/models.py:1102
msgid "Line item notes"
msgstr "Note linea elemento"
-#: order/models.py:1100
+#: order/models.py:1113
msgid "Target date for this line item (leave blank to use the target date from the order)"
msgstr "Data di destinazione per questa voce di riga (lasciare vuoto per utilizzare la data di destinazione dall'ordine)"
-#: order/models.py:1118
+#: order/models.py:1131
msgid "Line item description (optional)"
msgstr ""
-#: order/models.py:1123
+#: order/models.py:1136
msgid "Context"
msgstr "Contesto"
-#: order/models.py:1124
+#: order/models.py:1137
msgid "Additional context for this line"
msgstr "Contesto aggiuntivo per questa voce"
-#: order/models.py:1133
+#: order/models.py:1146
msgid "Unit price"
msgstr "Prezzo unitario"
-#: order/models.py:1163
+#: order/models.py:1176
msgid "Supplier part must match supplier"
msgstr "L'articolo del fornitore deve corrispondere al fornitore"
-#: order/models.py:1171
+#: order/models.py:1184
msgid "deleted"
msgstr "eliminato"
-#: order/models.py:1177 order/models.py:1262 order/models.py:1303
-#: order/models.py:1402 order/models.py:1551 order/models.py:1908
-#: order/models.py:1955 templates/js/translated/sales_order.js:1474
+#: order/models.py:1190 order/models.py:1275 order/models.py:1316
+#: order/models.py:1415 order/models.py:1564 order/models.py:1921
+#: order/models.py:1968 templates/js/translated/sales_order.js:1486
msgid "Order"
msgstr "Ordine"
-#: order/models.py:1196
+#: order/models.py:1209
msgid "Supplier part"
msgstr "Articolo Fornitore"
-#: order/models.py:1203 order/templates/order/order_base.html:200
-#: templates/js/translated/part.js:1841 templates/js/translated/part.js:1872
-#: templates/js/translated/purchase_order.js:1276
-#: templates/js/translated/purchase_order.js:2137
-#: templates/js/translated/return_order.js:748
-#: templates/js/translated/table_filters.js:90
-#: templates/js/translated/table_filters.js:515
+#: order/models.py:1216 order/templates/order/order_base.html:196
+#: templates/js/translated/part.js:1840 templates/js/translated/part.js:1871
+#: templates/js/translated/purchase_order.js:1291
+#: templates/js/translated/purchase_order.js:2147
+#: templates/js/translated/return_order.js:760
+#: templates/js/translated/table_filters.js:96
+#: templates/js/translated/table_filters.js:537
msgid "Received"
msgstr "Ricevuto"
-#: order/models.py:1204
+#: order/models.py:1217
msgid "Number of items received"
msgstr "Numero di elementi ricevuti"
-#: order/models.py:1211 stock/models.py:823 stock/serializers.py:252
+#: order/models.py:1224 stock/models.py:823 stock/serializers.py:314
#: stock/templates/stock/item_base.html:184
-#: templates/js/translated/stock.js:2047
+#: templates/js/translated/stock.js:2204
msgid "Purchase Price"
msgstr "Prezzo di Acquisto"
-#: order/models.py:1212
+#: order/models.py:1225
msgid "Unit purchase price"
msgstr "Prezzo di acquisto unitario"
-#: order/models.py:1225
+#: order/models.py:1238
msgid "Where does the Purchaser want this item to be stored?"
msgstr "Dove l'Acquirente desidera che questo elemento venga immagazzinato?"
-#: order/models.py:1291
+#: order/models.py:1304
msgid "Virtual part cannot be assigned to a sales order"
msgstr "Un articolo virtuale non può essere assegnato ad un ordine di vendita"
-#: order/models.py:1296
+#: order/models.py:1309
msgid "Only salable parts can be assigned to a sales order"
msgstr "Solo gli articoli vendibili possono essere assegnati a un ordine di vendita"
-#: order/models.py:1322 part/templates/part/part_pricing.html:107
+#: order/models.py:1335 part/templates/part/part_pricing.html:107
#: part/templates/part/prices.html:128 templates/js/translated/pricing.js:943
msgid "Sale Price"
msgstr "Prezzo di Vendita"
-#: order/models.py:1323
+#: order/models.py:1336
msgid "Unit sale price"
msgstr "Prezzo unitario di vendita"
-#: order/models.py:1333
+#: order/models.py:1346
msgid "Shipped quantity"
msgstr "Quantità spedita"
-#: order/models.py:1409
+#: order/models.py:1422
msgid "Date of shipment"
msgstr "Data di spedizione"
-#: order/models.py:1414 templates/js/translated/sales_order.js:1024
+#: order/models.py:1427 templates/js/translated/sales_order.js:1036
msgid "Delivery Date"
msgstr ""
-#: order/models.py:1415
+#: order/models.py:1428
msgid "Date of delivery of shipment"
msgstr ""
-#: order/models.py:1422
+#: order/models.py:1435
msgid "Checked By"
msgstr "Verificato Da"
-#: order/models.py:1423
+#: order/models.py:1436
msgid "User who checked this shipment"
msgstr "Utente che ha controllato questa spedizione"
-#: order/models.py:1430 order/models.py:1627 order/serializers.py:1248
-#: order/serializers.py:1376 templates/js/translated/model_renderers.js:415
+#: order/models.py:1443 order/models.py:1640 order/serializers.py:1254
+#: order/serializers.py:1382 templates/js/translated/model_renderers.js:429
msgid "Shipment"
msgstr "Spedizione"
-#: order/models.py:1431
+#: order/models.py:1444
msgid "Shipment number"
msgstr "Numero di spedizione"
-#: order/models.py:1439
+#: order/models.py:1452
msgid "Tracking Number"
msgstr "Numero di monitoraggio"
-#: order/models.py:1440
+#: order/models.py:1453
msgid "Shipment tracking information"
msgstr "Informazioni di monitoraggio della spedizione"
-#: order/models.py:1447
+#: order/models.py:1460
msgid "Invoice Number"
msgstr "Numero Fattura"
-#: order/models.py:1448
+#: order/models.py:1461
msgid "Reference number for associated invoice"
msgstr "Numero di riferimento per la fattura associata"
-#: order/models.py:1470
+#: order/models.py:1483
msgid "Shipment has already been sent"
msgstr "La spedizione è già stata spedita"
-#: order/models.py:1473
+#: order/models.py:1486
msgid "Shipment has no allocated stock items"
msgstr "La spedizione non ha articoli di stock assegnati"
-#: order/models.py:1586 order/models.py:1588
+#: order/models.py:1599 order/models.py:1601
msgid "Stock item has not been assigned"
msgstr "L'elemento di magazzino non è stato assegnato"
-#: order/models.py:1592
+#: order/models.py:1605
msgid "Cannot allocate stock item to a line with a different part"
msgstr "Impossibile allocare l'elemento stock a una linea con un articolo diverso"
-#: order/models.py:1594
+#: order/models.py:1607
msgid "Cannot allocate stock to a line without a part"
msgstr "Impossibile allocare stock a una riga senza un articolo"
-#: order/models.py:1597
+#: order/models.py:1610
msgid "Allocation quantity cannot exceed stock quantity"
msgstr "La quantità di ripartizione non puo' superare la disponibilità della giacenza"
-#: order/models.py:1607 order/serializers.py:1110
+#: order/models.py:1620 order/serializers.py:1116
msgid "Quantity must be 1 for serialized stock item"
msgstr "La quantità deve essere 1 per l'elemento serializzato"
-#: order/models.py:1610
+#: order/models.py:1623
msgid "Sales order does not match shipment"
msgstr "L'ordine di vendita non corrisponde alla spedizione"
-#: order/models.py:1611
+#: order/models.py:1624
msgid "Shipment does not match sales order"
msgstr "La spedizione non corrisponde all'ordine di vendita"
-#: order/models.py:1619
+#: order/models.py:1632
msgid "Line"
msgstr "Linea"
-#: order/models.py:1628
+#: order/models.py:1641
msgid "Sales order shipment reference"
msgstr "Riferimento della spedizione ordine di vendita"
-#: order/models.py:1641 order/models.py:1916
-#: templates/js/translated/return_order.js:706
+#: order/models.py:1654 order/models.py:1929
+#: templates/js/translated/return_order.js:718
msgid "Item"
msgstr "Elemento"
-#: order/models.py:1642
+#: order/models.py:1655
msgid "Select stock item to allocate"
msgstr "Seleziona elemento stock da allocare"
-#: order/models.py:1645
+#: order/models.py:1658
msgid "Enter stock allocation quantity"
msgstr "Inserisci la quantità assegnata alla giacenza"
-#: order/models.py:1725
+#: order/models.py:1738
msgid "Return Order reference"
msgstr ""
-#: order/models.py:1739
+#: order/models.py:1752
msgid "Company from which items are being returned"
msgstr ""
-#: order/models.py:1750
+#: order/models.py:1763
msgid "Return order status"
msgstr ""
-#: order/models.py:1901
+#: order/models.py:1914
msgid "Only serialized items can be assigned to a Return Order"
msgstr ""
-#: order/models.py:1917
+#: order/models.py:1930
msgid "Select item to return from customer"
msgstr "Seleziona l'elemento da restituire dal cliente"
-#: order/models.py:1922
+#: order/models.py:1935
msgid "Received Date"
msgstr "Data di ricezione"
-#: order/models.py:1923
+#: order/models.py:1936
msgid "The date this this return item was received"
msgstr ""
-#: order/models.py:1934 templates/js/translated/return_order.js:717
-#: templates/js/translated/table_filters.js:93
+#: order/models.py:1947 templates/js/translated/return_order.js:729
+#: templates/js/translated/table_filters.js:99
msgid "Outcome"
msgstr "Risultati"
-#: order/models.py:1934
+#: order/models.py:1947
msgid "Outcome for this line item"
msgstr ""
-#: order/models.py:1940
+#: order/models.py:1953
msgid "Cost associated with return or repair for this line item"
msgstr ""
-#: order/serializers.py:247
+#: order/serializers.py:253
msgid "Order cannot be cancelled"
msgstr "L'ordine non può essere cancellato"
-#: order/serializers.py:262 order/serializers.py:1128
+#: order/serializers.py:268 order/serializers.py:1134
msgid "Allow order to be closed with incomplete line items"
msgstr "Consenti di chiudere l'ordine con elementi di riga incompleti"
-#: order/serializers.py:273 order/serializers.py:1139
+#: order/serializers.py:279 order/serializers.py:1145
msgid "Order has incomplete line items"
msgstr "L'ordine ha elementi di riga incompleti"
-#: order/serializers.py:386
+#: order/serializers.py:392
msgid "Order is not open"
msgstr "L'ordine non è aperto"
-#: order/serializers.py:404
+#: order/serializers.py:410
msgid "Purchase price currency"
msgstr "Valuta prezzo d'acquisto"
-#: order/serializers.py:422
+#: order/serializers.py:428
msgid "Supplier part must be specified"
msgstr "L'articolo del fornitore deve essere specificato"
-#: order/serializers.py:427
+#: order/serializers.py:433
msgid "Purchase order must be specified"
msgstr "L'ordine di acquisto deve essere specificato"
-#: order/serializers.py:433
+#: order/serializers.py:439
msgid "Supplier must match purchase order"
msgstr "Il fornitore deve essere abbinato all'ordine d'acquisto"
-#: order/serializers.py:434
+#: order/serializers.py:440
msgid "Purchase order must match supplier"
msgstr "L'ordine di acquisto deve essere abbinato al fornitore"
-#: order/serializers.py:472 order/serializers.py:1216
+#: order/serializers.py:478 order/serializers.py:1222
msgid "Line Item"
msgstr "Elemento Riga"
-#: order/serializers.py:478
+#: order/serializers.py:484
msgid "Line item does not match purchase order"
msgstr "L'elemento di riga non corrisponde all'ordine di acquisto"
-#: order/serializers.py:488 order/serializers.py:607 order/serializers.py:1589
+#: order/serializers.py:494 order/serializers.py:613 order/serializers.py:1595
msgid "Select destination location for received items"
msgstr "Seleziona la posizione di destinazione per gli elementi ricevuti"
-#: order/serializers.py:507 templates/js/translated/purchase_order.js:1100
+#: order/serializers.py:513 templates/js/translated/purchase_order.js:1115
msgid "Enter batch code for incoming stock items"
msgstr "Inserisci il codice univoco per gli articoli in arrivo"
-#: order/serializers.py:515 templates/js/translated/purchase_order.js:1124
+#: order/serializers.py:521 templates/js/translated/purchase_order.js:1139
msgid "Enter serial numbers for incoming stock items"
msgstr "Inserisci i numeri di serie per gli articoli stock in arrivo"
-#: order/serializers.py:528 templates/js/translated/barcode.js:52
+#: order/serializers.py:534 templates/js/translated/barcode.js:52
msgid "Barcode"
msgstr "Codice a Barre"
-#: order/serializers.py:529
+#: order/serializers.py:535
msgid "Scanned barcode"
msgstr "Codice a barre scansionato"
-#: order/serializers.py:545
+#: order/serializers.py:551
msgid "Barcode is already in use"
msgstr "Il codice a barre è già in uso"
-#: order/serializers.py:569
+#: order/serializers.py:575
msgid "An integer quantity must be provided for trackable parts"
msgstr "Deve essere fornita una quantità intera per gli articoli rintracciabili"
-#: order/serializers.py:623 order/serializers.py:1604
+#: order/serializers.py:629 order/serializers.py:1610
msgid "Line items must be provided"
msgstr "Gli elementi di linea devono essere forniti"
-#: order/serializers.py:640
+#: order/serializers.py:646
msgid "Destination location must be specified"
msgstr "La destinazione deve essere specificata"
-#: order/serializers.py:651
+#: order/serializers.py:657
msgid "Supplied barcode values must be unique"
msgstr "I valori dei codici a barre forniti devono essere univoci"
-#: order/serializers.py:950
+#: order/serializers.py:956
msgid "Sale price currency"
msgstr "Valuta prezzo di vendita"
-#: order/serializers.py:1007
+#: order/serializers.py:1013
msgid "No shipment details provided"
msgstr "Nessun dettaglio di spedizione fornito"
-#: order/serializers.py:1071 order/serializers.py:1225
+#: order/serializers.py:1077 order/serializers.py:1231
msgid "Line item is not associated with this order"
msgstr "L'elemento di riga non è associato a questo ordine"
-#: order/serializers.py:1093
+#: order/serializers.py:1099
msgid "Quantity must be positive"
msgstr "La quantità deve essere positiva"
-#: order/serializers.py:1238
+#: order/serializers.py:1244
msgid "Enter serial numbers to allocate"
msgstr "Inserisci i numeri di serie da assegnare"
-#: order/serializers.py:1260 order/serializers.py:1384
+#: order/serializers.py:1266 order/serializers.py:1390
msgid "Shipment has already been shipped"
msgstr "La spedizione è già stata spedita"
-#: order/serializers.py:1263 order/serializers.py:1387
+#: order/serializers.py:1269 order/serializers.py:1393
msgid "Shipment is not associated with this order"
msgstr "La spedizione non è associata con questo ordine"
-#: order/serializers.py:1317
+#: order/serializers.py:1323
msgid "No match found for the following serial numbers"
msgstr "Nessuna corrispondenza trovata per i seguenti numeri di serie"
-#: order/serializers.py:1327
+#: order/serializers.py:1333
msgid "The following serial numbers are already allocated"
msgstr "I seguenti numeri di serie sono già assegnati"
-#: order/serializers.py:1555
+#: order/serializers.py:1561
msgid "Return order line item"
msgstr ""
-#: order/serializers.py:1562
+#: order/serializers.py:1568
msgid "Line item does not match return order"
msgstr ""
-#: order/serializers.py:1565
+#: order/serializers.py:1571
msgid "Line item has already been received"
msgstr ""
-#: order/serializers.py:1597
+#: order/serializers.py:1603
msgid "Items can only be received against orders which are in progress"
msgstr ""
-#: order/serializers.py:1678
+#: order/serializers.py:1684
msgid "Line price currency"
msgstr ""
@@ -4957,82 +5013,74 @@ msgid "Issue Order"
msgstr ""
#: order/templates/order/order_base.html:83
-msgid "Receive items"
-msgstr "Ricevere articoli"
-
-#: order/templates/order/order_base.html:85
-msgid "Receive Items"
-msgstr "Ricevi elementi"
-
-#: order/templates/order/order_base.html:87
#: order/templates/order/return_order_base.html:87
msgid "Mark order as complete"
msgstr "Contrassegna ordine come completato"
-#: order/templates/order/order_base.html:88
+#: order/templates/order/order_base.html:84
#: order/templates/order/return_order_base.html:88
#: order/templates/order/sales_order_base.html:94
msgid "Complete Order"
msgstr "Completa l'ordine"
-#: order/templates/order/order_base.html:95
+#: order/templates/order/order_base.html:91
msgid "Supplier part thumbnail"
msgstr ""
-#: order/templates/order/order_base.html:110
+#: order/templates/order/order_base.html:106
#: order/templates/order/return_order_base.html:102
#: order/templates/order/sales_order_base.html:107
msgid "Order Reference"
msgstr "Riferimento ordine"
-#: order/templates/order/order_base.html:115
+#: order/templates/order/order_base.html:111
#: order/templates/order/return_order_base.html:107
#: order/templates/order/sales_order_base.html:112
msgid "Order Description"
msgstr "Descrizione Dell'Ordine"
-#: order/templates/order/order_base.html:122
+#: order/templates/order/order_base.html:118
#: order/templates/order/return_order_base.html:114
#: order/templates/order/sales_order_base.html:119
msgid "Order Status"
msgstr "Stato dell'ordine"
-#: order/templates/order/order_base.html:145
+#: order/templates/order/order_base.html:141
msgid "No suppplier information available"
msgstr "Nessuna informazione sul fornitore disponibile"
-#: order/templates/order/order_base.html:158
+#: order/templates/order/order_base.html:154
#: order/templates/order/sales_order_base.html:158
msgid "Completed Line Items"
msgstr "Elementi della linea completati"
-#: order/templates/order/order_base.html:164
+#: order/templates/order/order_base.html:160
#: order/templates/order/sales_order_base.html:164
#: order/templates/order/sales_order_base.html:174
msgid "Incomplete"
msgstr "Incompleto"
-#: order/templates/order/order_base.html:183
+#: order/templates/order/order_base.html:179
#: order/templates/order/return_order_base.html:158
#: report/templates/report/inventree_build_order_base.html:121
msgid "Issued"
msgstr "Emesso"
-#: order/templates/order/order_base.html:221
+#: order/templates/order/order_base.html:224
msgid "Total cost"
msgstr "Costo totale"
-#: order/templates/order/order_base.html:225
-#: order/templates/order/return_order_base.html:193
-#: order/templates/order/sales_order_base.html:233
+#: order/templates/order/order_base.html:228
+#: order/templates/order/return_order_base.html:200
+#: order/templates/order/sales_order_base.html:240
msgid "Total cost could not be calculated"
msgstr "Il costo totale non può essere calcolato"
-#: order/templates/order/order_base.html:331
+#: order/templates/order/order_base.html:318
msgid "Purchase Order QR Code"
msgstr ""
-#: order/templates/order/order_base.html:343
+#: order/templates/order/order_base.html:330
msgid "Link Barcode to Purchase Order"
msgstr "Collega il codice a barre all'ordine d'acquisto"
@@ -5085,13 +5133,13 @@ msgstr "Duplica selezionati"
#: part/templates/part/import_wizard/ajax_match_references.html:42
#: part/templates/part/import_wizard/match_fields.html:71
#: part/templates/part/import_wizard/match_references.html:49
-#: templates/js/translated/bom.js:132 templates/js/translated/build.js:512
-#: templates/js/translated/build.js:2348
-#: templates/js/translated/purchase_order.js:692
-#: templates/js/translated/purchase_order.js:1206
-#: templates/js/translated/return_order.js:494
-#: templates/js/translated/sales_order.js:1097
-#: templates/js/translated/stock.js:681 templates/js/translated/stock.js:850
+#: templates/js/translated/bom.js:133 templates/js/translated/build.js:518
+#: templates/js/translated/build.js:1555
+#: templates/js/translated/purchase_order.js:703
+#: templates/js/translated/purchase_order.js:1221
+#: templates/js/translated/return_order.js:506
+#: templates/js/translated/sales_order.js:1109
+#: templates/js/translated/stock.js:680 templates/js/translated/stock.js:849
#: templates/patterns/wizard/match_fields.html:70
msgid "Remove row"
msgstr "Elimina riga"
@@ -5152,9 +5200,9 @@ msgstr "Elementi D'Ordine D'Acquisto"
#: order/templates/order/purchase_order_detail.html:27
#: order/templates/order/return_order_detail.html:24
#: order/templates/order/sales_order_detail.html:24
-#: templates/js/translated/purchase_order.js:419
-#: templates/js/translated/return_order.js:447
-#: templates/js/translated/sales_order.js:222
+#: templates/js/translated/purchase_order.js:430
+#: templates/js/translated/return_order.js:459
+#: templates/js/translated/sales_order.js:234
msgid "Add Line Item"
msgstr "Aggiungi Elemento Riga"
@@ -5165,30 +5213,25 @@ msgstr "Aggiungi Elemento Riga"
msgid "Receive Line Items"
msgstr "Ricevi Oggetti Riga"
-#: order/templates/order/purchase_order_detail.html:49
#: order/templates/order/purchase_order_detail.html:50
-msgid "Delete Line Items"
-msgstr "Elimina Elementi Riga"
-
-#: order/templates/order/purchase_order_detail.html:66
-#: order/templates/order/return_order_detail.html:47
-#: order/templates/order/sales_order_detail.html:43
+#: order/templates/order/return_order_detail.html:45
+#: order/templates/order/sales_order_detail.html:41
msgid "Extra Lines"
msgstr "Linee Extra"
-#: order/templates/order/purchase_order_detail.html:72
-#: order/templates/order/return_order_detail.html:53
-#: order/templates/order/sales_order_detail.html:49
+#: order/templates/order/purchase_order_detail.html:56
+#: order/templates/order/return_order_detail.html:51
+#: order/templates/order/sales_order_detail.html:47
msgid "Add Extra Line"
msgstr "Aggiungi Linea Extra"
-#: order/templates/order/purchase_order_detail.html:92
+#: order/templates/order/purchase_order_detail.html:74
msgid "Received Items"
msgstr "Elementi Ricevuti"
-#: order/templates/order/purchase_order_detail.html:117
-#: order/templates/order/return_order_detail.html:89
-#: order/templates/order/sales_order_detail.html:149
+#: order/templates/order/purchase_order_detail.html:99
+#: order/templates/order/return_order_detail.html:85
+#: order/templates/order/sales_order_detail.html:139
msgid "Order Notes"
msgstr "Note dell'Ordine"
@@ -5208,29 +5251,29 @@ msgstr "Stampa lista d'imballaggio"
#: order/templates/order/return_order_base.html:139
#: order/templates/order/sales_order_base.html:152
-#: templates/js/translated/return_order.js:297
-#: templates/js/translated/sales_order.js:785
+#: templates/js/translated/return_order.js:309
+#: templates/js/translated/sales_order.js:797
msgid "Customer Reference"
msgstr "Riferimento Cliente"
-#: order/templates/order/return_order_base.html:189
-#: order/templates/order/sales_order_base.html:229
+#: order/templates/order/return_order_base.html:196
+#: order/templates/order/sales_order_base.html:236
#: part/templates/part/part_pricing.html:32
#: part/templates/part/part_pricing.html:58
#: part/templates/part/part_pricing.html:99
#: part/templates/part/part_pricing.html:114
-#: templates/js/translated/part.js:1046
-#: templates/js/translated/purchase_order.js:1712
-#: templates/js/translated/return_order.js:369
-#: templates/js/translated/sales_order.js:843
+#: templates/js/translated/part.js:1045
+#: templates/js/translated/purchase_order.js:1727
+#: templates/js/translated/return_order.js:381
+#: templates/js/translated/sales_order.js:855
msgid "Total Cost"
msgstr "Costo Totale"
-#: order/templates/order/return_order_base.html:257
+#: order/templates/order/return_order_base.html:264
msgid "Return Order QR Code"
msgstr ""
-#: order/templates/order/return_order_base.html:269
+#: order/templates/order/return_order_base.html:276
msgid "Link Barcode to Return Order"
msgstr ""
@@ -5248,7 +5291,7 @@ msgid "Ship Items"
msgstr "Spedisci oggetti"
#: order/templates/order/sales_order_base.html:93
-#: templates/js/translated/sales_order.js:469
+#: templates/js/translated/sales_order.js:481
msgid "Complete Sales Order"
msgstr "Completa Ordine Di Vendita"
@@ -5257,16 +5300,16 @@ msgid "This Sales Order has not been fully allocated"
msgstr "Questo Ordine di Vendita non è stato assegnato completamente"
#: order/templates/order/sales_order_base.html:170
-#: order/templates/order/sales_order_detail.html:105
+#: order/templates/order/sales_order_detail.html:99
#: order/templates/order/so_sidebar.html:11
msgid "Completed Shipments"
msgstr "Spedizioni Completate"
-#: order/templates/order/sales_order_base.html:306
+#: order/templates/order/sales_order_base.html:313
msgid "Sales Order QR Code"
msgstr ""
-#: order/templates/order/sales_order_base.html:318
+#: order/templates/order/sales_order_base.html:325
msgid "Link Barcode to Sales Order"
msgstr ""
@@ -5274,18 +5317,17 @@ msgstr ""
msgid "Sales Order Items"
msgstr "Elementi Ordine di Vendita"
-#: order/templates/order/sales_order_detail.html:71
-#: order/templates/order/so_sidebar.html:8 templates/InvenTree/index.html:332
+#: order/templates/order/sales_order_detail.html:67
+#: order/templates/order/so_sidebar.html:8 templates/InvenTree/index.html:284
msgid "Pending Shipments"
msgstr "Spedizione in sospeso"
-#: order/templates/order/sales_order_detail.html:75
-#: templates/attachment_table.html:6 templates/js/translated/bom.js:1236
-#: templates/js/translated/build.js:2249
+#: order/templates/order/sales_order_detail.html:71
+#: templates/js/translated/bom.js:1256 templates/js/translated/filters.js:297
msgid "Actions"
msgstr "Azioni"
-#: order/templates/order/sales_order_detail.html:84
+#: order/templates/order/sales_order_detail.html:80
msgid "New Shipment"
msgstr "Nuova spedizione"
@@ -5311,12 +5353,12 @@ msgstr "Aggiornato {part} prezzo unitario a {price}"
msgid "Updated {part} unit-price to {price} and quantity to {qty}"
msgstr "Aggiornato {part} unità prezzo a {price} e quantità a {qty}"
-#: part/admin.py:33 part/admin.py:273 part/models.py:3667 part/tasks.py:288
+#: part/admin.py:33 part/admin.py:273 part/models.py:3716 part/tasks.py:288
#: stock/admin.py:101
msgid "Part ID"
msgstr "Codice Articolo"
-#: part/admin.py:34 part/admin.py:275 part/models.py:3671 part/tasks.py:289
+#: part/admin.py:34 part/admin.py:275 part/models.py:3720 part/tasks.py:289
#: stock/admin.py:102
msgid "Part Name"
msgstr "Nome Articolo"
@@ -5325,19 +5367,19 @@ msgstr "Nome Articolo"
msgid "Part Description"
msgstr "Descrizione Articolo"
-#: part/admin.py:36 part/models.py:889 part/templates/part/part_base.html:271
-#: templates/js/translated/part.js:1200 templates/js/translated/part.js:2233
-#: templates/js/translated/stock.js:1795
+#: part/admin.py:36 part/models.py:890 part/templates/part/part_base.html:271
+#: templates/js/translated/part.js:1199 templates/js/translated/part.js:2309
+#: templates/js/translated/stock.js:1952
msgid "IPN"
msgstr "IPN - Numero di riferimento interno"
-#: part/admin.py:37 part/models.py:896 part/templates/part/part_base.html:279
-#: report/models.py:179 templates/js/translated/part.js:1205
-#: templates/js/translated/part.js:2239
+#: part/admin.py:37 part/models.py:897 part/templates/part/part_base.html:279
+#: report/models.py:179 templates/js/translated/part.js:1204
+#: templates/js/translated/part.js:2315
msgid "Revision"
msgstr "Revisione"
-#: part/admin.py:38 part/admin.py:198 part/models.py:875
+#: part/admin.py:38 part/admin.py:198 part/models.py:876
#: part/templates/part/category.html:93 part/templates/part/part_base.html:300
msgid "Keywords"
msgstr "Parole Chiave"
@@ -5358,24 +5400,24 @@ msgstr "Posizione Predefinita ID"
msgid "Default Supplier ID"
msgstr "ID Fornitore Predefinito"
-#: part/admin.py:46 part/models.py:864 part/templates/part/part_base.html:179
+#: part/admin.py:46 part/models.py:865 part/templates/part/part_base.html:179
msgid "Variant Of"
msgstr "Variante Di"
-#: part/admin.py:47 part/models.py:980 part/templates/part/part_base.html:205
+#: part/admin.py:47 part/models.py:981 part/templates/part/part_base.html:205
msgid "Minimum Stock"
msgstr "Scorta Minima"
#: part/admin.py:61 part/templates/part/part_base.html:199
-#: templates/js/translated/company.js:1299
-#: templates/js/translated/table_filters.js:301
+#: templates/js/translated/company.js:1720
+#: templates/js/translated/table_filters.js:307
msgid "In Stock"
msgstr "In magazzino"
#: part/admin.py:62 part/bom.py:178 part/templates/part/part_base.html:212
-#: templates/js/translated/bom.js:1167 templates/js/translated/build.js:2191
-#: templates/js/translated/part.js:687 templates/js/translated/part.js:2123
-#: templates/js/translated/table_filters.js:140
+#: templates/js/translated/bom.js:1187 templates/js/translated/build.js:2541
+#: templates/js/translated/part.js:686 templates/js/translated/part.js:2122
+#: templates/js/translated/table_filters.js:146
msgid "On Order"
msgstr "Ordinato"
@@ -5383,23 +5425,16 @@ msgstr "Ordinato"
msgid "Used In"
msgstr "Utilizzato In"
-#: part/admin.py:64 templates/js/translated/build.js:2203
-#: templates/js/translated/build.js:2465 templates/js/translated/build.js:3052
-#: templates/js/translated/sales_order.js:1906
-#: templates/js/translated/table_filters.js:488
-msgid "Allocated"
-msgstr "Allocato"
-
#: part/admin.py:65 part/templates/part/part_base.html:243 stock/admin.py:124
-#: templates/js/translated/part.js:692 templates/js/translated/part.js:2127
+#: templates/js/translated/part.js:691 templates/js/translated/part.js:2126
msgid "Building"
msgstr "In Costruzione"
-#: part/admin.py:66 part/models.py:2930 templates/js/translated/part.js:943
+#: part/admin.py:66 part/models.py:2964 templates/js/translated/part.js:942
msgid "Minimum Cost"
msgstr "Costo Minimo"
-#: part/admin.py:67 part/models.py:2936 templates/js/translated/part.js:953
+#: part/admin.py:67 part/models.py:2970 templates/js/translated/part.js:952
msgid "Maximum Cost"
msgstr "Costo Massimo"
@@ -5416,13 +5451,13 @@ msgstr "Nome Principale"
msgid "Category Path"
msgstr "Percorso Categoria"
-#: part/admin.py:202 part/models.py:392 part/templates/part/cat_link.html:3
-#: part/templates/part/category.html:23 part/templates/part/category.html:140
-#: part/templates/part/category.html:160
+#: part/admin.py:202 part/models.py:393 part/serializers.py:307
+#: part/templates/part/cat_link.html:3 part/templates/part/category.html:23
+#: part/templates/part/category.html:140 part/templates/part/category.html:160
#: part/templates/part/category_sidebar.html:9
-#: templates/InvenTree/index.html:86 templates/InvenTree/search.html:84
+#: templates/InvenTree/index.html:36 templates/InvenTree/search.html:84
#: templates/InvenTree/settings/sidebar.html:45
-#: templates/js/translated/part.js:2754 templates/js/translated/search.js:172
+#: templates/js/translated/part.js:2739 templates/js/translated/search.js:130
#: templates/navbar.html:24 users/models.py:38
msgid "Parts"
msgstr "Articoli"
@@ -5439,7 +5474,7 @@ msgstr "ID Elemento Distinta Base"
msgid "Parent IPN"
msgstr "IPN Principale"
-#: part/admin.py:274 part/models.py:3675
+#: part/admin.py:274 part/models.py:3724
msgid "Part IPN"
msgstr "IPN Articolo"
@@ -5453,35 +5488,35 @@ msgstr "Prezzo Minimo"
msgid "Maximum Price"
msgstr "Prezzo Massimo"
-#: part/api.py:498
+#: part/api.py:501
msgid "Incoming Purchase Order"
msgstr "Ordine D'Acquisto In Arrivo"
-#: part/api.py:518
+#: part/api.py:521
msgid "Outgoing Sales Order"
msgstr "Ordine di Vendita in Uscita"
-#: part/api.py:536
+#: part/api.py:539
msgid "Stock produced by Build Order"
msgstr "Giacenza prodotta dall'Ordine di Costruzione"
-#: part/api.py:622
+#: part/api.py:625
msgid "Stock required for Build Order"
msgstr "Giacenza richiesta per l'Ordine di Produzione"
-#: part/api.py:770
+#: part/api.py:773
msgid "Valid"
msgstr "Valido"
-#: part/api.py:771
+#: part/api.py:774
msgid "Validate entire Bill of Materials"
msgstr "Convalida l'intera Fattura dei Materiali"
-#: part/api.py:777
+#: part/api.py:780
msgid "This option must be selected"
msgstr "Questa opzione deve essere selezionata"
-#: part/bom.py:175 part/models.py:127 part/models.py:923
+#: part/bom.py:175 part/models.py:128 part/models.py:924
#: part/templates/part/category.html:115 part/templates/part/part_base.html:369
msgid "Default Location"
msgstr "Posizione Predefinita"
@@ -5491,7 +5526,7 @@ msgid "Total Stock"
msgstr "Giacenze Totali"
#: part/bom.py:177 part/templates/part/part_base.html:194
-#: templates/js/translated/sales_order.js:1873
+#: templates/js/translated/sales_order.js:1885
msgid "Available Stock"
msgstr "Disponibilità in magazzino"
@@ -5499,916 +5534,913 @@ msgstr "Disponibilità in magazzino"
msgid "Input quantity for price calculation"
msgstr "Digita la quantità per il calcolo del prezzo"
-#: part/models.py:75 part/models.py:3616 part/templates/part/category.html:16
+#: part/models.py:76 part/models.py:3665 part/templates/part/category.html:16
#: part/templates/part/part_app_base.html:10
msgid "Part Category"
msgstr "Categoria Articoli"
-#: part/models.py:76 part/templates/part/category.html:135
-#: templates/InvenTree/search.html:97 templates/js/translated/search.js:200
+#: part/models.py:77 part/templates/part/category.html:135
+#: templates/InvenTree/search.html:97 templates/js/translated/search.js:158
#: users/models.py:37
msgid "Part Categories"
msgstr "Categorie Articolo"
-#: part/models.py:128
+#: part/models.py:129
msgid "Default location for parts in this category"
msgstr "Posizione predefinita per gli articoli di questa categoria"
-#: part/models.py:133 stock/models.py:124 templates/js/translated/stock.js:2520
-#: templates/js/translated/table_filters.js:209
-#: templates/js/translated/table_filters.js:229
+#: part/models.py:134 stock/models.py:124 templates/js/translated/stock.js:2651
+#: templates/js/translated/table_filters.js:215
+#: templates/js/translated/table_filters.js:235
msgid "Structural"
msgstr "Strutturale"
-#: part/models.py:135
+#: part/models.py:136
msgid "Parts may not be directly assigned to a structural category, but may be assigned to child categories."
msgstr "Le parti non possono essere assegnate direttamente a una categoria strutturale, ma possono essere assegnate a categorie subordinate."
-#: part/models.py:139
+#: part/models.py:140
msgid "Default keywords"
msgstr "Keywords predefinite"
-#: part/models.py:139
+#: part/models.py:140
msgid "Default keywords for parts in this category"
msgstr "Parole chiave predefinite per gli articoli in questa categoria"
-#: part/models.py:144 stock/models.py:113
+#: part/models.py:145 stock/models.py:113
msgid "Icon"
msgstr "Icona"
-#: part/models.py:145 stock/models.py:114
+#: part/models.py:146 stock/models.py:114
msgid "Icon (optional)"
msgstr "Icona (facoltativa)"
-#: part/models.py:164
+#: part/models.py:165
msgid "You cannot make this part category structural because some parts are already assigned to it!"
msgstr "Non puoi rendere principale questa categoria di articoli perché alcuni articoli sono già assegnati!"
-#: part/models.py:475
+#: part/models.py:476
msgid "Invalid choice for parent part"
msgstr "Scelta non valida per l'articolo principale"
-#: part/models.py:517 part/models.py:529
+#: part/models.py:518 part/models.py:530
#, python-brace-format
msgid "Part '{p1}' is used in BOM for '{p2}' (recursive)"
msgstr "L'articolo '{p1}' è usato nella Distinta Base per '{p2}' (ricorsivo)"
-#: part/models.py:601
+#: part/models.py:602
#, python-brace-format
msgid "IPN must match regex pattern {pat}"
msgstr "IPN deve corrispondere al modello regex {pat}"
-#: part/models.py:672
+#: part/models.py:673
msgid "Stock item with this serial number already exists"
msgstr "Esiste già un elemento stock con questo numero seriale"
-#: part/models.py:803
+#: part/models.py:804
msgid "Duplicate IPN not allowed in part settings"
msgstr "Non è consentito duplicare IPN nelle impostazioni dell'articolo"
-#: part/models.py:808
+#: part/models.py:809
msgid "Part with this Name, IPN and Revision already exists."
msgstr "Un articolo con questo Nome, IPN e Revisione esiste già."
-#: part/models.py:822
+#: part/models.py:823
msgid "Parts cannot be assigned to structural part categories!"
msgstr "Gli articoli non possono essere assegnati a categorie articolo principali!"
-#: part/models.py:846 part/models.py:3672
+#: part/models.py:847 part/models.py:3721
msgid "Part name"
msgstr "Nome articolo"
-#: part/models.py:852
+#: part/models.py:853
msgid "Is Template"
msgstr "È Template"
-#: part/models.py:853
+#: part/models.py:854
msgid "Is this part a template part?"
msgstr "Quest'articolo è un articolo di template?"
-#: part/models.py:863
+#: part/models.py:864
msgid "Is this part a variant of another part?"
msgstr "Questa parte è una variante di un altro articolo?"
-#: part/models.py:870
+#: part/models.py:871
msgid "Part description (optional)"
msgstr ""
-#: part/models.py:876
+#: part/models.py:877
msgid "Part keywords to improve visibility in search results"
msgstr "Parole chiave per migliorare la visibilità nei risultati di ricerca"
-#: part/models.py:883 part/models.py:3198 part/models.py:3615
-#: part/serializers.py:848 part/templates/part/part_base.html:262
+#: part/models.py:884 part/models.py:3232 part/models.py:3664
+#: part/serializers.py:320 part/serializers.py:910
+#: part/templates/part/part_base.html:262
#: templates/InvenTree/settings/settings_staff_js.html:204
#: templates/js/translated/notification.js:59
-#: templates/js/translated/part.js:2269 templates/js/translated/part.js:2481
+#: templates/js/translated/part.js:2345
msgid "Category"
msgstr "Categoria"
-#: part/models.py:884
+#: part/models.py:885
msgid "Part category"
msgstr "Categoria articolo"
-#: part/models.py:890
+#: part/models.py:891
msgid "Internal Part Number"
msgstr "Numero Dell'articolo Interno"
-#: part/models.py:895
+#: part/models.py:896
msgid "Part revision or version number"
msgstr "Numero di revisione o di versione"
-#: part/models.py:921
+#: part/models.py:922
msgid "Where is this item normally stored?"
msgstr "Dove viene normalmente immagazzinato questo articolo?"
-#: part/models.py:966 part/templates/part/part_base.html:378
+#: part/models.py:967 part/templates/part/part_base.html:378
msgid "Default Supplier"
msgstr "Fornitore predefinito"
-#: part/models.py:967
+#: part/models.py:968
msgid "Default supplier part"
msgstr "Articolo fornitore predefinito"
-#: part/models.py:974
+#: part/models.py:975
msgid "Default Expiry"
msgstr "Scadenza Predefinita"
-#: part/models.py:975
+#: part/models.py:976
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:981
+#: part/models.py:982
msgid "Minimum allowed stock level"
msgstr "Livello minimo di giacenza consentito"
-#: part/models.py:988
+#: part/models.py:989
msgid "Units of measure for this part"
msgstr "Unita di misura per questo articolo"
-#: part/models.py:997
+#: part/models.py:998
msgid "Can this part be built from other parts?"
msgstr "Questo articolo può essere costruito da altri articoli?"
-#: part/models.py:1003
+#: part/models.py:1004
msgid "Can this part be used to build other parts?"
msgstr "Questo articolo può essere utilizzato per costruire altri articoli?"
-#: part/models.py:1009
+#: part/models.py:1010
msgid "Does this part have tracking for unique items?"
msgstr "Questo articolo ha il tracciamento per gli elementi unici?"
-#: part/models.py:1014
+#: part/models.py:1015
msgid "Can this part be purchased from external suppliers?"
msgstr "Quest'articolo può essere acquistato da fornitori esterni?"
-#: part/models.py:1019
+#: part/models.py:1020
msgid "Can this part be sold to customers?"
msgstr "Questo pezzo può essere venduto ai clienti?"
-#: part/models.py:1024
+#: part/models.py:1025
msgid "Is this part active?"
msgstr "Quest'articolo è attivo?"
-#: part/models.py:1029
+#: part/models.py:1030
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:1031
+#: part/models.py:1032
msgid "BOM checksum"
msgstr "Somma di controllo Distinta Base"
-#: part/models.py:1031
+#: part/models.py:1032
msgid "Stored BOM checksum"
msgstr "Somma di controllo immagazzinata Distinta Base"
-#: part/models.py:1034
+#: part/models.py:1035
msgid "BOM checked by"
msgstr "Distinta Base controllata da"
-#: part/models.py:1036
+#: part/models.py:1037
msgid "BOM checked date"
msgstr "Data di verifica Distinta Base"
-#: part/models.py:1040
+#: part/models.py:1041
msgid "Creation User"
msgstr "Creazione Utente"
-#: part/models.py:1042
+#: part/models.py:1043
msgid "User responsible for this part"
msgstr "Utente responsabile di questo articolo"
-#: part/models.py:1046 part/templates/part/part_base.html:341
+#: part/models.py:1047 part/templates/part/part_base.html:341
#: stock/templates/stock/item_base.html:447
-#: templates/js/translated/part.js:2331
+#: templates/js/translated/part.js:2407
msgid "Last Stocktake"
msgstr "Ultimo Inventario"
-#: part/models.py:1921
+#: part/models.py:1923
msgid "Sell multiple"
msgstr "Vendita multipla"
-#: part/models.py:2853
+#: part/models.py:2887
msgid "Currency used to cache pricing calculations"
msgstr "Valuta utilizzata per calcolare i prezzi"
-#: part/models.py:2870
+#: part/models.py:2904
msgid "Minimum BOM Cost"
msgstr "Costo Minimo Distinta Base"
-#: part/models.py:2871
+#: part/models.py:2905
msgid "Minimum cost of component parts"
msgstr "Costo minimo dei componenti dell'articolo"
-#: part/models.py:2876
+#: part/models.py:2910
msgid "Maximum BOM Cost"
msgstr "Costo Massimo Distinta Base"
-#: part/models.py:2877
+#: part/models.py:2911
msgid "Maximum cost of component parts"
msgstr "Costo massimo dei componenti dell'articolo"
-#: part/models.py:2882
+#: part/models.py:2916
msgid "Minimum Purchase Cost"
msgstr "Importo Acquisto Minimo"
-#: part/models.py:2883
+#: part/models.py:2917
msgid "Minimum historical purchase cost"
msgstr "Costo minimo di acquisto storico"
-#: part/models.py:2888
+#: part/models.py:2922
msgid "Maximum Purchase Cost"
msgstr "Importo massimo acquisto"
-#: part/models.py:2889
+#: part/models.py:2923
msgid "Maximum historical purchase cost"
msgstr "Costo massimo di acquisto storico"
-#: part/models.py:2894
+#: part/models.py:2928
msgid "Minimum Internal Price"
msgstr "Prezzo Interno Minimo"
-#: part/models.py:2895
+#: part/models.py:2929
msgid "Minimum cost based on internal price breaks"
msgstr "Costo minimo basato su interruzioni di prezzo interne"
-#: part/models.py:2900
+#: part/models.py:2934
msgid "Maximum Internal Price"
msgstr "Prezzo Interno Massimo"
-#: part/models.py:2901
+#: part/models.py:2935
msgid "Maximum cost based on internal price breaks"
msgstr "Costo massimo basato su interruzioni di prezzo interne"
-#: part/models.py:2906
+#: part/models.py:2940
msgid "Minimum Supplier Price"
msgstr "Prezzo Minimo Fornitore"
-#: part/models.py:2907
+#: part/models.py:2941
msgid "Minimum price of part from external suppliers"
msgstr "Prezzo minimo articolo da fornitori esterni"
-#: part/models.py:2912
+#: part/models.py:2946
msgid "Maximum Supplier Price"
msgstr "Prezzo Massimo Fornitore"
-#: part/models.py:2913
+#: part/models.py:2947
msgid "Maximum price of part from external suppliers"
msgstr "Prezzo massimo dell'articolo proveniente da fornitori esterni"
-#: part/models.py:2918
+#: part/models.py:2952
msgid "Minimum Variant Cost"
msgstr "Variazione di costo minimo"
-#: part/models.py:2919
+#: part/models.py:2953
msgid "Calculated minimum cost of variant parts"
msgstr "Costo minimo calcolato di variazione dell'articolo"
-#: part/models.py:2924
+#: part/models.py:2958
msgid "Maximum Variant Cost"
msgstr "Massima variazione di costo"
-#: part/models.py:2925
+#: part/models.py:2959
msgid "Calculated maximum cost of variant parts"
msgstr "Costo massimo calcolato di variazione dell'articolo"
-#: part/models.py:2931
+#: part/models.py:2965
msgid "Calculated overall minimum cost"
msgstr "Costo minimo totale calcolato"
-#: part/models.py:2937
+#: part/models.py:2971
msgid "Calculated overall maximum cost"
msgstr "Costo massimo totale calcolato"
-#: part/models.py:2942
+#: part/models.py:2976
msgid "Minimum Sale Price"
msgstr "Prezzo Di Vendita Minimo"
-#: part/models.py:2943
+#: part/models.py:2977
msgid "Minimum sale price based on price breaks"
msgstr "Prezzo minimo di vendita basato sulle interruzioni di prezzo"
-#: part/models.py:2948
+#: part/models.py:2982
msgid "Maximum Sale Price"
msgstr "Prezzo Di Vendita Massimo"
-#: part/models.py:2949
+#: part/models.py:2983
msgid "Maximum sale price based on price breaks"
msgstr "Prezzo massimo di vendita basato sulle interruzioni di prezzo"
-#: part/models.py:2954
+#: part/models.py:2988
msgid "Minimum Sale Cost"
msgstr "Costo Di Vendita Minimo"
-#: part/models.py:2955
+#: part/models.py:2989
msgid "Minimum historical sale price"
msgstr "Prezzo storico minimo di vendita"
-#: part/models.py:2960
+#: part/models.py:2994
msgid "Maximum Sale Cost"
msgstr "Costo Di Vendita Minimo"
-#: part/models.py:2961
+#: part/models.py:2995
msgid "Maximum historical sale price"
msgstr "Prezzo storico massimo di vendita"
-#: part/models.py:2980
+#: part/models.py:3014
msgid "Part for stocktake"
msgstr "Articolo per l'inventario"
-#: part/models.py:2985
+#: part/models.py:3019
msgid "Item Count"
msgstr "Contatore Elemento"
-#: part/models.py:2986
+#: part/models.py:3020
msgid "Number of individual stock entries at time of stocktake"
msgstr "Numero di scorte individuali al momento dell'inventario"
-#: part/models.py:2993
+#: part/models.py:3027
msgid "Total available stock at time of stocktake"
msgstr "Totale delle scorte disponibili al momento dell'inventario"
-#: part/models.py:2997 part/models.py:3080
+#: part/models.py:3031 part/models.py:3114
#: part/templates/part/part_scheduling.html:13
#: report/templates/report/inventree_test_report_base.html:106
#: templates/InvenTree/settings/plugin_settings.html:37
#: templates/InvenTree/settings/settings_staff_js.html:360
-#: templates/js/translated/part.js:1059 templates/js/translated/pricing.js:812
+#: templates/js/translated/part.js:1058 templates/js/translated/pricing.js:812
#: templates/js/translated/pricing.js:936
-#: templates/js/translated/purchase_order.js:1691
-#: templates/js/translated/stock.js:2558
+#: templates/js/translated/purchase_order.js:1706
+#: templates/js/translated/stock.js:2689
msgid "Date"
msgstr "Data"
-#: part/models.py:2998
+#: part/models.py:3032
msgid "Date stocktake was performed"
msgstr "Data in cui è stato effettuato l'inventario"
-#: part/models.py:3006
+#: part/models.py:3040
msgid "Additional notes"
msgstr "Note aggiuntive"
-#: part/models.py:3014
+#: part/models.py:3048
msgid "User who performed this stocktake"
msgstr "Utente che ha eseguito questo inventario"
-#: part/models.py:3019
+#: part/models.py:3053
msgid "Minimum Stock Cost"
msgstr "Costo Minimo Scorta"
-#: part/models.py:3020
+#: part/models.py:3054
msgid "Estimated minimum cost of stock on hand"
msgstr "Costo minimo stimato di magazzino a disposizione"
-#: part/models.py:3025
+#: part/models.py:3059
msgid "Maximum Stock Cost"
msgstr "Costo Massimo Scorte"
-#: part/models.py:3026
+#: part/models.py:3060
msgid "Estimated maximum cost of stock on hand"
msgstr "Costo massimo stimato di magazzino a disposizione"
-#: part/models.py:3087 templates/InvenTree/settings/settings_staff_js.html:349
+#: part/models.py:3121 templates/InvenTree/settings/settings_staff_js.html:349
msgid "Report"
msgstr "Report"
-#: part/models.py:3088
+#: part/models.py:3122
msgid "Stocktake report file (generated internally)"
msgstr "File Report Inventario (generato internamente)"
-#: part/models.py:3093 templates/InvenTree/settings/settings_staff_js.html:356
+#: part/models.py:3127 templates/InvenTree/settings/settings_staff_js.html:356
msgid "Part Count"
msgstr "Conteggio Articolo"
-#: part/models.py:3094
+#: part/models.py:3128
msgid "Number of parts covered by stocktake"
msgstr "Numero di articoli oggetto d'inventario"
-#: part/models.py:3102
+#: part/models.py:3136
msgid "User who requested this stocktake report"
msgstr "Utente che ha richiesto questo report inventario"
-#: part/models.py:3238
+#: part/models.py:3272
msgid "Test templates can only be created for trackable parts"
msgstr "Il modello di prova può essere creato solo per gli articoli rintracciabili"
-#: part/models.py:3255
+#: part/models.py:3289
msgid "Test with this name already exists for this part"
msgstr "Una prova con questo nome esiste già per questo articolo"
-#: part/models.py:3275 templates/js/translated/part.js:2821
+#: part/models.py:3309 templates/js/translated/part.js:2806
msgid "Test Name"
msgstr "Nome Test"
-#: part/models.py:3276
+#: part/models.py:3310
msgid "Enter a name for the test"
msgstr "Inserisci un nome per la prova"
-#: part/models.py:3281
+#: part/models.py:3315
msgid "Test Description"
msgstr "Descrizione Di Prova"
-#: part/models.py:3282
+#: part/models.py:3316
msgid "Enter description for this test"
msgstr "Inserisci descrizione per questa prova"
-#: part/models.py:3287 templates/js/translated/part.js:2830
-#: templates/js/translated/table_filters.js:423
+#: part/models.py:3321 templates/js/translated/part.js:2815
+#: templates/js/translated/table_filters.js:429
msgid "Required"
msgstr "Richiesto"
-#: part/models.py:3288
+#: part/models.py:3322
msgid "Is this test required to pass?"
msgstr "Questa prova è necessaria per passare?"
-#: part/models.py:3293 templates/js/translated/part.js:2838
+#: part/models.py:3327 templates/js/translated/part.js:2823
msgid "Requires Value"
msgstr "Valore richiesto"
-#: part/models.py:3294
+#: part/models.py:3328
msgid "Does this test require a value when adding a test result?"
msgstr "Questa prova richiede un valore quando si aggiunge un risultato di prova?"
-#: part/models.py:3299 templates/js/translated/part.js:2845
+#: part/models.py:3333 templates/js/translated/part.js:2830
msgid "Requires Attachment"
msgstr "Allegato Richiesto"
-#: part/models.py:3300
+#: part/models.py:3334
msgid "Does this test require a file attachment when adding a test result?"
msgstr "Questa prova richiede un file allegato quando si aggiunge un risultato di prova?"
-#: part/models.py:3346
+#: part/models.py:3380
msgid "Checkbox parameters cannot have units"
msgstr ""
-#: part/models.py:3351
+#: part/models.py:3385
msgid "Checkbox parameters cannot have choices"
msgstr ""
-#: part/models.py:3369
+#: part/models.py:3403
msgid "Choices must be unique"
msgstr ""
-#: part/models.py:3385
+#: part/models.py:3419
msgid "Parameter template name must be unique"
msgstr "Il nome del modello del parametro deve essere univoco"
-#: part/models.py:3401
+#: part/models.py:3435
msgid "Parameter Name"
msgstr "Nome Parametro"
-#: part/models.py:3407
+#: part/models.py:3441
msgid "Physical units for this parameter"
msgstr ""
-#: part/models.py:3417
+#: part/models.py:3451
msgid "Parameter description"
msgstr "Descrizione del parametro"
-#: part/models.py:3423 templates/js/translated/part.js:1600
-#: templates/js/translated/table_filters.js:734
+#: part/models.py:3457 templates/js/translated/part.js:1599
+#: templates/js/translated/table_filters.js:756
msgid "Checkbox"
msgstr ""
-#: part/models.py:3424
+#: part/models.py:3458
msgid "Is this parameter a checkbox?"
msgstr ""
-#: part/models.py:3429 templates/js/translated/part.js:1609
+#: part/models.py:3463 templates/js/translated/part.js:1608
msgid "Choices"
msgstr ""
-#: part/models.py:3430
+#: part/models.py:3464
msgid "Valid choices for this parameter (comma-separated)"
msgstr ""
-#: part/models.py:3511
+#: part/models.py:3545
msgid "Invalid choice for parameter value"
msgstr ""
-#: part/models.py:3555
+#: part/models.py:3589
msgid "Parent Part"
msgstr "Articolo principale"
-#: part/models.py:3560 part/models.py:3621 part/models.py:3622
+#: part/models.py:3594 part/models.py:3670 part/models.py:3671
#: templates/InvenTree/settings/settings_staff_js.html:199
msgid "Parameter Template"
msgstr "Modello Parametro"
-#: part/models.py:3565
+#: part/models.py:3599
msgid "Data"
msgstr "Dati"
-#: part/models.py:3565
+#: part/models.py:3599
msgid "Parameter Value"
msgstr "Valore del Parametro"
-#: part/models.py:3626 templates/InvenTree/settings/settings_staff_js.html:208
+#: part/models.py:3675 templates/InvenTree/settings/settings_staff_js.html:208
msgid "Default Value"
msgstr "Valore Predefinito"
-#: part/models.py:3627
+#: part/models.py:3676
msgid "Default Parameter Value"
msgstr "Valore Parametro Predefinito"
-#: part/models.py:3664
+#: part/models.py:3713
msgid "Part ID or part name"
msgstr "ID articolo o nome articolo"
-#: part/models.py:3668
+#: part/models.py:3717
msgid "Unique part ID value"
msgstr "Valore ID articolo univoco"
-#: part/models.py:3676
+#: part/models.py:3725
msgid "Part IPN value"
msgstr "Valore IPN articolo"
-#: part/models.py:3679
+#: part/models.py:3728
msgid "Level"
msgstr "Livello"
-#: part/models.py:3680
+#: part/models.py:3729
msgid "BOM level"
msgstr "Livello distinta base"
-#: part/models.py:3764
+#: part/models.py:3735 part/models.py:4113
+msgid "BOM Item"
+msgstr "Distinta base (Bom)"
+
+#: part/models.py:3808
msgid "Select parent part"
msgstr "Seleziona articolo principale"
-#: part/models.py:3772
+#: part/models.py:3816
msgid "Sub part"
msgstr "Articolo subordinato"
-#: part/models.py:3773
+#: part/models.py:3817
msgid "Select part to be used in BOM"
msgstr "Seleziona l'articolo da utilizzare nella Distinta Base"
-#: part/models.py:3779
+#: part/models.py:3823
msgid "BOM quantity for this BOM item"
msgstr "Quantità Distinta Base per questo elemento Distinta Base"
-#: part/models.py:3783 part/templates/part/upload_bom.html:58
-#: templates/js/translated/bom.js:971 templates/js/translated/bom.js:998
-#: templates/js/translated/build.js:2113
-#: templates/js/translated/table_filters.js:156
-#: templates/js/translated/table_filters.js:185
-#: templates/js/translated/table_filters.js:500
-msgid "Optional"
-msgstr "Opzionale"
-
-#: part/models.py:3784
+#: part/models.py:3828
msgid "This BOM item is optional"
msgstr "Questo elemento della Distinta Base è opzionale"
-#: part/models.py:3789 templates/js/translated/bom.js:967
-#: templates/js/translated/bom.js:1007 templates/js/translated/build.js:2104
-#: templates/js/translated/table_filters.js:160
-#: templates/js/translated/table_filters.js:496
-msgid "Consumable"
-msgstr "Consumabile"
-
-#: part/models.py:3790
+#: part/models.py:3834
msgid "This BOM item is consumable (it is not tracked in build orders)"
msgstr "Questo elemento della Distinta Base è consumabile (non è tracciato negli ordini di produzione)"
-#: part/models.py:3794 part/templates/part/upload_bom.html:55
+#: part/models.py:3838 part/templates/part/upload_bom.html:55
msgid "Overage"
msgstr "Eccedenza"
-#: part/models.py:3795
+#: part/models.py:3839
msgid "Estimated build wastage quantity (absolute or percentage)"
msgstr "Quantità stimata scarti di produzione (assoluta o percentuale)"
-#: part/models.py:3798
+#: part/models.py:3842
msgid "BOM item reference"
msgstr "Riferimento Elemento Distinta Base"
-#: part/models.py:3801
+#: part/models.py:3845
msgid "BOM item notes"
msgstr "Note Elemento Distinta Base"
-#: part/models.py:3805
+#: part/models.py:3849
msgid "Checksum"
msgstr "Codice di controllo"
-#: part/models.py:3805
+#: part/models.py:3849
msgid "BOM line checksum"
msgstr "Codice di controllo Distinta Base"
-#: part/models.py:3810 templates/js/translated/table_filters.js:144
+#: part/models.py:3854 templates/js/translated/table_filters.js:150
msgid "Validated"
msgstr "Convalidato"
-#: part/models.py:3811
+#: part/models.py:3855
msgid "This BOM item has been validated"
msgstr ""
-#: part/models.py:3816 part/templates/part/upload_bom.html:57
-#: templates/js/translated/bom.js:1024
-#: templates/js/translated/table_filters.js:148
-#: templates/js/translated/table_filters.js:181
+#: part/models.py:3860 part/templates/part/upload_bom.html:57
+#: templates/js/translated/bom.js:1042
+#: templates/js/translated/table_filters.js:154
+#: templates/js/translated/table_filters.js:187
msgid "Gets inherited"
msgstr ""
-#: part/models.py:3817
+#: part/models.py:3861
msgid "This BOM item is inherited by BOMs for variant parts"
msgstr "Questo elemento della Distinta Base viene ereditato dalle Distinte Base per gli articoli varianti"
-#: part/models.py:3822 part/templates/part/upload_bom.html:56
-#: templates/js/translated/bom.js:1016
+#: part/models.py:3866 part/templates/part/upload_bom.html:56
+#: templates/js/translated/bom.js:1034
msgid "Allow Variants"
msgstr "Consenti Le Varianti"
-#: part/models.py:3823
+#: part/models.py:3867
msgid "Stock items for variant parts can be used for this BOM item"
msgstr "Gli elementi in giacenza per gli articoli varianti possono essere utilizzati per questo elemento Distinta Base"
-#: part/models.py:3909 stock/models.py:577
+#: part/models.py:3953 stock/models.py:577
msgid "Quantity must be integer value for trackable parts"
msgstr "La quantità deve essere un valore intero per gli articoli rintracciabili"
-#: part/models.py:3918 part/models.py:3920
+#: part/models.py:3962 part/models.py:3964
msgid "Sub part must be specified"
msgstr "L'articolo subordinato deve essere specificato"
-#: part/models.py:4036
+#: part/models.py:4080
msgid "BOM Item Substitute"
msgstr "Elemento Distinta Base Sostituito"
-#: part/models.py:4057
+#: part/models.py:4101
msgid "Substitute part cannot be the same as the master part"
msgstr "La parte sostituita non può essere la stessa dell'articolo principale"
-#: part/models.py:4070
+#: part/models.py:4114
msgid "Parent BOM item"
msgstr "Elemento principale Distinta Base"
-#: part/models.py:4078
+#: part/models.py:4122
msgid "Substitute part"
msgstr "Sostituisci l'Articolo"
-#: part/models.py:4093
+#: part/models.py:4137
msgid "Part 1"
msgstr "Articolo 1"
-#: part/models.py:4097
+#: part/models.py:4141
msgid "Part 2"
msgstr "Articolo 2"
-#: part/models.py:4097
+#: part/models.py:4141
msgid "Select Related Part"
msgstr "Seleziona Prodotto Relativo"
-#: part/models.py:4115
+#: part/models.py:4159
msgid "Part relationship cannot be created between a part and itself"
msgstr "Non si può creare una relazione tra l'articolo e sé stesso"
-#: part/models.py:4119
+#: part/models.py:4163
msgid "Duplicate relationship already exists"
msgstr "La relazione duplicata esiste già"
-#: part/serializers.py:152 part/serializers.py:175 stock/serializers.py:257
+#: part/serializers.py:152 part/serializers.py:175 stock/serializers.py:319
msgid "Purchase currency of this stock item"
msgstr "Valuta di acquisto di questo articolo in stock"
-#: part/serializers.py:302
+#: part/serializers.py:313
+msgid "No parts selected"
+msgstr ""
+
+#: part/serializers.py:321
+msgid "Select category"
+msgstr ""
+
+#: part/serializers.py:352
msgid "Original Part"
msgstr "Articolo Originale"
-#: part/serializers.py:302
+#: part/serializers.py:352
msgid "Select original part to duplicate"
msgstr "Seleziona l'articolo originale da duplicare"
-#: part/serializers.py:307
+#: part/serializers.py:357
msgid "Copy Image"
msgstr "Copia immagine"
-#: part/serializers.py:307
+#: part/serializers.py:357
msgid "Copy image from original part"
msgstr "Copia immagine dall'articolo originale"
-#: part/serializers.py:312 part/templates/part/detail.html:296
+#: part/serializers.py:362 part/templates/part/detail.html:277
msgid "Copy BOM"
msgstr "Copia Distinta Base"
-#: part/serializers.py:312
+#: part/serializers.py:362
msgid "Copy bill of materials from original part"
msgstr "Copia fattura dei materiali dall'articolo originale"
-#: part/serializers.py:317
+#: part/serializers.py:367
msgid "Copy Parameters"
msgstr "Copia parametri"
-#: part/serializers.py:317
+#: part/serializers.py:367
msgid "Copy parameter data from original part"
msgstr "Copia i dati dei parametri dall'articolo originale"
-#: part/serializers.py:327
+#: part/serializers.py:377
msgid "Initial Stock Quantity"
msgstr "Quantità iniziale"
-#: part/serializers.py:327
+#: part/serializers.py:377
msgid "Specify initial stock quantity for this Part. If quantity is zero, no stock is added."
msgstr "Specificare la quantità iniziale disponibile per questo Articolo. Se la quantità è zero, non viene aggiunta alcuna quantità."
-#: part/serializers.py:333
+#: part/serializers.py:383
msgid "Initial Stock Location"
msgstr "Ubicazione Iniziale Magazzino"
-#: part/serializers.py:333
+#: part/serializers.py:383
msgid "Specify initial stock location for this Part"
msgstr "Specificare l'ubicazione iniziale del magazzino per questo Articolo"
-#: part/serializers.py:343
+#: part/serializers.py:393
msgid "Select supplier (or leave blank to skip)"
msgstr "Seleziona il fornitore (o lascia vuoto per saltare)"
-#: part/serializers.py:354
+#: part/serializers.py:404
msgid "Select manufacturer (or leave blank to skip)"
msgstr "Seleziona il produttore (o lascia vuoto per saltare)"
-#: part/serializers.py:360
+#: part/serializers.py:410
msgid "Manufacturer part number"
msgstr "Codice articolo Produttore"
-#: part/serializers.py:367
+#: part/serializers.py:417
msgid "Selected company is not a valid supplier"
msgstr "L'azienda selezionata non è un fornitore valido"
-#: part/serializers.py:375
+#: part/serializers.py:425
msgid "Selected company is not a valid manufacturer"
msgstr "L'azienda selezionata non è un produttore valido"
-#: part/serializers.py:387
+#: part/serializers.py:437
msgid "Manufacturer part matching this MPN already exists"
msgstr "L'articolo del produttore che corrisponde a questo MPN esiste già"
-#: part/serializers.py:395
+#: part/serializers.py:445
msgid "Supplier part matching this SKU already exists"
msgstr "L'articolo del fornitore che corrisponde a questo SKU esiste già"
-#: part/serializers.py:620 part/templates/part/copy_part.html:9
-#: templates/js/translated/part.js:449
+#: part/serializers.py:682 part/templates/part/copy_part.html:9
+#: templates/js/translated/part.js:448
msgid "Duplicate Part"
msgstr "Duplica articolo"
-#: part/serializers.py:620
+#: part/serializers.py:682
msgid "Copy initial data from another Part"
msgstr "Copia i dati iniziali da un altro Articolo"
-#: part/serializers.py:625 templates/js/translated/part.js:103
+#: part/serializers.py:687 templates/js/translated/part.js:102
msgid "Initial Stock"
msgstr "Stock iniziale"
-#: part/serializers.py:625
+#: part/serializers.py:687
msgid "Create Part with initial stock quantity"
msgstr "Crea Articolo con quantità di scorta iniziale"
-#: part/serializers.py:630
+#: part/serializers.py:692
msgid "Supplier Information"
msgstr "Informazioni Fornitore"
-#: part/serializers.py:630
+#: part/serializers.py:692
msgid "Add initial supplier information for this part"
msgstr "Aggiungi le informazioni iniziali del fornitore per questo articolo"
-#: part/serializers.py:636
+#: part/serializers.py:698
msgid "Copy Category Parameters"
msgstr "Copia Parametri Categoria"
-#: part/serializers.py:637
+#: part/serializers.py:699
msgid "Copy parameter templates from selected part category"
msgstr "Copia i parametri dai modelli della categoria articolo selezionata"
-#: part/serializers.py:842
+#: part/serializers.py:904
msgid "Limit stocktake report to a particular part, and any variant parts"
msgstr "Limitare il report d'inventario ad un articolo particolare e a eventuali articoli varianti"
-#: part/serializers.py:848
+#: part/serializers.py:910
msgid "Limit stocktake report to a particular part category, and any child categories"
msgstr "Limita il report d'inventario ad una particolare categoria articolo, e a eventuali categorie secondarie"
-#: part/serializers.py:854
+#: part/serializers.py:916
msgid "Limit stocktake report to a particular stock location, and any child locations"
msgstr "Limita il report d'inventario ad una particolare ubicazione di magazzino, e a eventuali ubicazioni secondarie"
-#: part/serializers.py:859
+#: part/serializers.py:921
msgid "Generate Report"
msgstr "Genera Report"
-#: part/serializers.py:860
+#: part/serializers.py:922
msgid "Generate report file containing calculated stocktake data"
msgstr "Genera file di report contenente dati di inventario calcolati"
-#: part/serializers.py:865
+#: part/serializers.py:927
msgid "Update Parts"
msgstr "Aggiorna Articoli"
-#: part/serializers.py:866
+#: part/serializers.py:928
msgid "Update specified parts with calculated stocktake data"
msgstr "Aggiorna gli articoli specificati con i dati calcolati di inventario"
-#: part/serializers.py:874
+#: part/serializers.py:936
msgid "Stocktake functionality is not enabled"
msgstr "La funzione Inventario non è abilitata"
-#: part/serializers.py:963
+#: part/serializers.py:1025
msgid "Update"
msgstr "Aggiorna"
-#: part/serializers.py:964
+#: part/serializers.py:1026
msgid "Update pricing for this part"
msgstr "Aggiorna i prezzi per questo articolo"
-#: part/serializers.py:1246
+#: part/serializers.py:1308
msgid "Select part to copy BOM from"
msgstr "Seleziona l'articolo da cui copiare la distinta base"
-#: part/serializers.py:1254
+#: part/serializers.py:1316
msgid "Remove Existing Data"
msgstr "Rimuovi Dati Esistenti"
-#: part/serializers.py:1255
+#: part/serializers.py:1317
msgid "Remove existing BOM items before copying"
msgstr "Rimuovi elementi distinta base esistenti prima di copiare"
-#: part/serializers.py:1260
+#: part/serializers.py:1322
msgid "Include Inherited"
msgstr "Includi Ereditato"
-#: part/serializers.py:1261
+#: part/serializers.py:1323
msgid "Include BOM items which are inherited from templated parts"
msgstr "Includi gli elementi Distinta Base ereditati da prodotti template"
-#: part/serializers.py:1266
+#: part/serializers.py:1328
msgid "Skip Invalid Rows"
msgstr "Salta Righe Non Valide"
-#: part/serializers.py:1267
+#: part/serializers.py:1329
msgid "Enable this option to skip invalid rows"
msgstr "Abilita questa opzione per saltare le righe non valide"
-#: part/serializers.py:1272
+#: part/serializers.py:1334
msgid "Copy Substitute Parts"
msgstr "Copia Articoli sostitutivi"
-#: part/serializers.py:1273
+#: part/serializers.py:1335
msgid "Copy substitute parts when duplicate BOM items"
msgstr "Copia articoli sostitutivi quando duplichi gli elementi distinta base"
-#: part/serializers.py:1313
+#: part/serializers.py:1375
msgid "Clear Existing BOM"
msgstr "Cancella Distinta Base esistente"
-#: part/serializers.py:1314
+#: part/serializers.py:1376
msgid "Delete existing BOM items before uploading"
msgstr "Rimuovi elementi distinta base esistenti prima del caricamento"
-#: part/serializers.py:1344
+#: part/serializers.py:1406
msgid "No part column specified"
msgstr "Nessuna colonna articolo specificata"
-#: part/serializers.py:1387
+#: part/serializers.py:1449
msgid "Multiple matching parts found"
msgstr "Trovati più articoli corrispondenti"
-#: part/serializers.py:1390
+#: part/serializers.py:1452
msgid "No matching part found"
msgstr "Nessun articolo corrispondente trovato"
-#: part/serializers.py:1393
+#: part/serializers.py:1455
msgid "Part is not designated as a component"
msgstr "L'articolo non è indicato come componente"
-#: part/serializers.py:1402
+#: part/serializers.py:1464
msgid "Quantity not provided"
msgstr "Quantità non fornita"
-#: part/serializers.py:1410
+#: part/serializers.py:1472
msgid "Invalid quantity"
msgstr "Quantità non valida"
-#: part/serializers.py:1431
+#: part/serializers.py:1493
msgid "At least one BOM item is required"
msgstr "Almeno un elemento della distinta base è richiesto"
@@ -6421,9 +6453,9 @@ msgstr "Notifica di magazzino bassa"
msgid "The available stock for {part.name} has fallen below the configured minimum level"
msgstr "Lo stock disponibile per {part.name} è sceso sotto il livello minimo configurato"
-#: part/tasks.py:294 templates/js/translated/part.js:1040
-#: templates/js/translated/part.js:1793 templates/js/translated/part.js:1848
-#: templates/js/translated/purchase_order.js:2052
+#: part/tasks.py:294 templates/js/translated/part.js:1039
+#: templates/js/translated/part.js:1792 templates/js/translated/part.js:1847
+#: templates/js/translated/purchase_order.js:2062
msgid "Total Quantity"
msgstr "Quantità Totale"
@@ -6461,14 +6493,6 @@ msgstr "La distinta base per %(part)s è stato controllato da %(checker
msgid "The BOM for %(part)s has not been validated."
msgstr "La distinta base per %(part)s non è stata convalidata."
-#: part/templates/part/bom.html:30 part/templates/part/detail.html:291
-msgid "BOM actions"
-msgstr "Azioni Distinta Base"
-
-#: part/templates/part/bom.html:34
-msgid "Delete Items"
-msgstr "Elimina Elementi"
-
#: part/templates/part/category.html:34
msgid "Perform stocktake for this part category"
msgstr "Esegui inventario per questa categoria articolo"
@@ -6505,7 +6529,7 @@ msgstr "Cancella categoria"
msgid "Top level part category"
msgstr "Categoria articolo di livello superiore"
-#: part/templates/part/category.html:121 part/templates/part/category.html:225
+#: part/templates/part/category.html:121 part/templates/part/category.html:206
#: part/templates/part/category_sidebar.html:7
msgid "Subcategories"
msgstr "Sottocategorie"
@@ -6518,33 +6542,20 @@ msgstr "Articoli (incluse le sottocategorie)"
msgid "Create new part"
msgstr "Crea nuovo articolo"
-#: part/templates/part/category.html:165 templates/js/translated/bom.js:443
+#: part/templates/part/category.html:165 templates/js/translated/bom.js:444
msgid "New Part"
msgstr "Nuovo articolo"
-#: part/templates/part/category.html:175 part/templates/part/detail.html:390
-#: part/templates/part/detail.html:421
-msgid "Options"
-msgstr "Opzioni"
-
-#: part/templates/part/category.html:179
-msgid "Set category"
-msgstr "Imposta categoria"
-
-#: part/templates/part/category.html:180
-msgid "Set Category"
-msgstr "Imposta Categoria"
-
-#: part/templates/part/category.html:208
+#: part/templates/part/category.html:191
#: templates/InvenTree/settings/sidebar.html:47
msgid "Part Parameters"
msgstr "Parametri articolo"
-#: part/templates/part/category.html:229
+#: part/templates/part/category.html:210
msgid "Create new part category"
msgstr "Crea nuova categoria articoli"
-#: part/templates/part/category.html:230
+#: part/templates/part/category.html:211
msgid "New Category"
msgstr "Nuova categoria"
@@ -6581,7 +6592,7 @@ msgid "Refresh scheduling data"
msgstr "Aggiorna i dati di pianificazione"
#: part/templates/part/detail.html:45 part/templates/part/prices.html:15
-#: templates/js/translated/tables.js:584
+#: templates/js/translated/tables.js:560
msgid "Refresh"
msgstr "Aggiorna"
@@ -6592,7 +6603,7 @@ msgstr "Aggiungi informazioni inventario"
#: part/templates/part/detail.html:67 part/templates/part/part_sidebar.html:50
#: stock/admin.py:130 templates/InvenTree/settings/part_stocktake.html:29
#: templates/InvenTree/settings/sidebar.html:51
-#: templates/js/translated/stock.js:1952 users/models.py:39
+#: templates/js/translated/stock.js:2109 users/models.py:39
msgid "Stocktake"
msgstr "Inventario"
@@ -6604,101 +6615,101 @@ msgstr "Modelli Articoli Test"
msgid "Add Test Template"
msgstr "Aggiungi Modelli Test"
-#: part/templates/part/detail.html:145 stock/templates/stock/item.html:53
+#: part/templates/part/detail.html:139 stock/templates/stock/item.html:49
msgid "Sales Order Allocations"
msgstr "Assegnazione Ordine Di Vendita"
-#: part/templates/part/detail.html:165
+#: part/templates/part/detail.html:156
msgid "Part Notes"
msgstr "Note Articolo"
-#: part/templates/part/detail.html:180
+#: part/templates/part/detail.html:171
msgid "Part Variants"
msgstr "Varianti articolo"
-#: part/templates/part/detail.html:184
+#: part/templates/part/detail.html:175
msgid "Create new variant"
msgstr "Crea nuova variante"
-#: part/templates/part/detail.html:185
+#: part/templates/part/detail.html:176
msgid "New Variant"
msgstr "Nuova variante"
-#: part/templates/part/detail.html:212
+#: part/templates/part/detail.html:199
msgid "Add new parameter"
msgstr "Aggiungi un nuovo parametro"
-#: part/templates/part/detail.html:249 part/templates/part/part_sidebar.html:58
+#: part/templates/part/detail.html:232 part/templates/part/part_sidebar.html:58
msgid "Related Parts"
msgstr "Articoli correlati"
-#: part/templates/part/detail.html:253 part/templates/part/detail.html:254
+#: part/templates/part/detail.html:236 part/templates/part/detail.html:237
msgid "Add Related"
msgstr "Aggiungi Correlato"
-#: part/templates/part/detail.html:274 part/templates/part/part_sidebar.html:17
+#: part/templates/part/detail.html:255 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:279
+#: part/templates/part/detail.html:260
msgid "Export actions"
msgstr "Esporta azioni"
-#: part/templates/part/detail.html:283 templates/js/translated/bom.js:339
+#: part/templates/part/detail.html:264 templates/js/translated/bom.js:340
msgid "Export BOM"
msgstr "Esporta Distinta Base"
-#: part/templates/part/detail.html:285
+#: part/templates/part/detail.html:266
msgid "Print BOM Report"
msgstr "Stampa il report Distinta Base"
-#: part/templates/part/detail.html:295
+#: part/templates/part/detail.html:272
+msgid "BOM actions"
+msgstr "Azioni Distinta Base"
+
+#: part/templates/part/detail.html:276
msgid "Upload BOM"
msgstr "Carica Distinta Base"
-#: part/templates/part/detail.html:297
+#: part/templates/part/detail.html:278
msgid "Validate BOM"
msgstr "Valida Distinta Base"
-#: part/templates/part/detail.html:302 part/templates/part/detail.html:303
-#: templates/js/translated/bom.js:1279 templates/js/translated/bom.js:1280
+#: part/templates/part/detail.html:283 part/templates/part/detail.html:284
+#: templates/js/translated/bom.js:1299 templates/js/translated/bom.js:1300
msgid "Add BOM Item"
msgstr "Aggiungi elemento Distinta Base"
-#: part/templates/part/detail.html:316
+#: part/templates/part/detail.html:297
msgid "Assemblies"
msgstr "Assembla"
-#: part/templates/part/detail.html:334
+#: part/templates/part/detail.html:313
msgid "Part Builds"
msgstr "Articoli prodotti"
-#: part/templates/part/detail.html:361 stock/templates/stock/item.html:38
+#: part/templates/part/detail.html:338 stock/templates/stock/item.html:36
msgid "Build Order Allocations"
msgstr "Costruisci le ubicazioni degli ordini"
-#: part/templates/part/detail.html:377
+#: part/templates/part/detail.html:352
msgid "Part Suppliers"
msgstr "Fornitori articoli"
-#: part/templates/part/detail.html:407
+#: part/templates/part/detail.html:372
msgid "Part Manufacturers"
msgstr "Componenti Produttori"
-#: part/templates/part/detail.html:423
-msgid "Delete manufacturer parts"
-msgstr "Elimina articoli produttore"
-
-#: part/templates/part/detail.html:707
+#: part/templates/part/detail.html:654
msgid "Related Part"
msgstr "Articoli correlati"
-#: part/templates/part/detail.html:715
+#: part/templates/part/detail.html:662
msgid "Add Related Part"
msgstr "Aggiungi articolo correlato"
-#: part/templates/part/detail.html:800
+#: part/templates/part/detail.html:747
msgid "Add Test Result Template"
msgstr "Aggiungi risultato modello test"
@@ -6732,13 +6743,13 @@ msgid "Download Part Import Template"
msgstr "Scarica il Modello Articolo Importato"
#: part/templates/part/import_wizard/part_upload.html:92
-#: templates/js/translated/bom.js:308 templates/js/translated/bom.js:342
+#: templates/js/translated/bom.js:309 templates/js/translated/bom.js:343
#: templates/js/translated/order.js:129 templates/js/translated/tables.js:189
msgid "Format"
msgstr "Formato"
#: part/templates/part/import_wizard/part_upload.html:93
-#: templates/js/translated/bom.js:309 templates/js/translated/bom.js:343
+#: templates/js/translated/bom.js:310 templates/js/translated/bom.js:344
#: templates/js/translated/order.js:130
msgid "Select file format"
msgstr "Seleziona il formato del file"
@@ -6779,7 +6790,7 @@ msgstr "Conta articoli magazzino"
msgid "Transfer part stock"
msgstr "Trasferisci giacenza"
-#: part/templates/part/part_base.html:93
+#: part/templates/part/part_base.html:93 templates/js/translated/part.js:2264
msgid "Part actions"
msgstr "Azioni articolo"
@@ -6824,10 +6835,10 @@ msgid "Part is not active"
msgstr "L'articolo non è attivo"
#: part/templates/part/part_base.html:148
-#: templates/js/translated/company.js:945
-#: templates/js/translated/company.js:1185
-#: templates/js/translated/model_renderers.js:273
-#: templates/js/translated/part.js:792 templates/js/translated/part.js:1192
+#: templates/js/translated/company.js:1318
+#: templates/js/translated/company.js:1606
+#: templates/js/translated/model_renderers.js:287
+#: templates/js/translated/part.js:791 templates/js/translated/part.js:1191
msgid "Inactive"
msgstr "Inattivo"
@@ -6850,7 +6861,7 @@ msgstr "Assegnato agli Ordini di Produzione"
msgid "Allocated to Sales Orders"
msgstr "Assegnato agli Ordini di Vendita"
-#: part/templates/part/part_base.html:237 templates/js/translated/bom.js:1178
+#: part/templates/part/part_base.html:237 templates/js/translated/bom.js:1198
msgid "Can Build"
msgstr "Puoi produrre"
@@ -6858,8 +6869,8 @@ msgstr "Puoi produrre"
msgid "Minimum stock level"
msgstr "Livello minimo di giacenza"
-#: part/templates/part/part_base.html:324 templates/js/translated/bom.js:1041
-#: templates/js/translated/part.js:1238 templates/js/translated/part.js:2304
+#: part/templates/part/part_base.html:324 templates/js/translated/bom.js:1059
+#: templates/js/translated/part.js:1237 templates/js/translated/part.js:2380
#: templates/js/translated/pricing.js:391
#: templates/js/translated/pricing.js:1040
msgid "Price Range"
@@ -6882,7 +6893,7 @@ msgstr "QR Code Articolo"
msgid "Link Barcode to Part"
msgstr "Collega il codice a barre all'Articolo"
-#: part/templates/part/part_base.html:474 templates/js/translated/part.js:2191
+#: part/templates/part/part_base.html:474 templates/js/translated/part.js:2258
msgid "part"
msgstr ""
@@ -6956,9 +6967,9 @@ msgstr "Varianti"
#: stock/templates/stock/stock_app_base.html:10
#: templates/InvenTree/search.html:153
#: templates/InvenTree/settings/sidebar.html:49
-#: templates/js/translated/part.js:1216 templates/js/translated/part.js:2120
-#: templates/js/translated/part.js:2284 templates/js/translated/stock.js:1022
-#: templates/js/translated/stock.js:1829 templates/navbar.html:31
+#: templates/js/translated/part.js:1215 templates/js/translated/part.js:2119
+#: templates/js/translated/part.js:2360 templates/js/translated/stock.js:1021
+#: templates/js/translated/stock.js:1986 templates/navbar.html:31
msgid "Stock"
msgstr "Magazzino"
@@ -6989,9 +7000,9 @@ msgstr "Aggiorna prezzo articolo"
#: part/templates/part/prices.html:25 stock/admin.py:129
#: stock/templates/stock/item_base.html:442
-#: templates/js/translated/company.js:1313
-#: templates/js/translated/company.js:1323
-#: templates/js/translated/stock.js:1982
+#: templates/js/translated/company.js:1734
+#: templates/js/translated/company.js:1744
+#: templates/js/translated/stock.js:2139
msgid "Last Updated"
msgstr "Ultimo aggiornamento"
@@ -7054,12 +7065,12 @@ msgstr "Prezzo di Vendita"
msgid "Add Sell Price Break"
msgstr "Aggiungi Prezzo Ribassato di Vendita"
-#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:682
-#: templates/js/translated/part.js:2115 templates/js/translated/part.js:2117
+#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:681
+#: templates/js/translated/part.js:2114 templates/js/translated/part.js:2116
msgid "No Stock"
msgstr "Nessuna giacenza"
-#: part/templates/part/stock_count.html:9 templates/InvenTree/index.html:167
+#: part/templates/part/stock_count.html:9 templates/InvenTree/index.html:120
msgid "Low Stock"
msgstr "Disponibilità scarsa"
@@ -7163,7 +7174,7 @@ msgid "Match found for barcode data"
msgstr "Corrispondenza trovata per i dati del codice a barre"
#: plugin/base/barcodes/api.py:120
-#: templates/js/translated/purchase_order.js:1372
+#: templates/js/translated/purchase_order.js:1387
msgid "Barcode matches existing item"
msgstr "Il codice a barre corrisponde a un elemento esistente"
@@ -7226,43 +7237,43 @@ msgstr "Questo URL è stato utilizzato per inviare messaggi a un canale rallenta
msgid "Open link"
msgstr "Apri collegamento"
-#: plugin/models.py:27
+#: plugin/models.py:28
msgid "Plugin Configuration"
msgstr "Configurazione Plugin"
-#: plugin/models.py:28
+#: plugin/models.py:29
msgid "Plugin Configurations"
msgstr "Configurazioni Plugin"
-#: plugin/models.py:33
+#: plugin/models.py:34
msgid "Key"
msgstr "Key"
-#: plugin/models.py:34
+#: plugin/models.py:35
msgid "Key of plugin"
msgstr "Key dei plugin"
-#: plugin/models.py:42
+#: plugin/models.py:43
msgid "PluginName of the plugin"
msgstr "PluginName del plugin"
-#: plugin/models.py:48
+#: plugin/models.py:49
msgid "Is the plugin active"
msgstr "Il plugin è attivo"
-#: plugin/models.py:124
+#: plugin/models.py:125
msgid "Sample plugin"
msgstr "Plugin di esempio"
-#: plugin/models.py:133
+#: plugin/models.py:134
msgid "Builtin Plugin"
msgstr "Plugin Integrato"
-#: plugin/models.py:159 templates/InvenTree/settings/plugin_settings.html:9
+#: plugin/models.py:160 templates/InvenTree/settings/plugin_settings.html:9
msgid "Plugin"
msgstr "Plugin"
-#: plugin/models.py:210
+#: plugin/models.py:211
msgid "Method"
msgstr "Metodo"
@@ -7414,47 +7425,47 @@ msgstr "Filtri di produzione"
msgid "Build query filters (comma-separated list of key=value pairs"
msgstr "Filtri di ricerca produzione (elenco separato da virgole key=coppia di valori"
-#: report/models.py:418
+#: report/models.py:420
msgid "Part Filters"
msgstr "Filtri Articolo"
-#: report/models.py:419
+#: report/models.py:421
msgid "Part query filters (comma-separated list of key=value pairs"
msgstr "Filtri di ricerca articolo (elenco separato da virgole key=coppia di valori"
-#: report/models.py:453
+#: report/models.py:455
msgid "Purchase order query filters"
msgstr "Ordine di Acquisto filtra la ricerca"
-#: report/models.py:491
+#: report/models.py:493
msgid "Sales order query filters"
msgstr "Ordine di Vendita filtra la ricerca"
-#: report/models.py:529
+#: report/models.py:531
msgid "Return order query filters"
msgstr ""
-#: report/models.py:582
+#: report/models.py:584
msgid "Snippet"
msgstr "Snippet"
-#: report/models.py:583
+#: report/models.py:585
msgid "Report snippet file"
msgstr "Report file snippet"
-#: report/models.py:587
+#: report/models.py:589
msgid "Snippet file description"
msgstr "Descrizione file snippet"
-#: report/models.py:624
+#: report/models.py:626
msgid "Asset"
msgstr "Risorsa"
-#: report/models.py:625
+#: report/models.py:627
msgid "Report asset file"
msgstr "Report file risorsa"
-#: report/models.py:632
+#: report/models.py:634
msgid "Asset file description"
msgstr "File risorsa descrizione"
@@ -7475,8 +7486,8 @@ msgstr "Il fornitore è stato eliminato"
#: templates/js/translated/order.js:316 templates/js/translated/pricing.js:527
#: templates/js/translated/pricing.js:596
#: templates/js/translated/pricing.js:820
-#: templates/js/translated/purchase_order.js:2083
-#: templates/js/translated/sales_order.js:1817
+#: templates/js/translated/purchase_order.js:2093
+#: templates/js/translated/sales_order.js:1829
msgid "Unit Price"
msgstr "Prezzo Unitario"
@@ -7488,23 +7499,23 @@ msgstr ""
#: report/templates/report/inventree_po_report_base.html:72
#: report/templates/report/inventree_so_report_base.html:72
-#: templates/js/translated/purchase_order.js:1985
-#: templates/js/translated/sales_order.js:1792
+#: templates/js/translated/purchase_order.js:1995
+#: templates/js/translated/sales_order.js:1804
msgid "Total"
msgstr "Totale"
#: report/templates/report/inventree_return_order_report_base.html:25
#: report/templates/report/inventree_test_report_base.html:88
#: stock/models.py:725 stock/templates/stock/item_base.html:312
-#: templates/js/translated/build.js:502 templates/js/translated/build.js:1423
-#: templates/js/translated/build.js:1989
-#: templates/js/translated/model_renderers.js:201
-#: templates/js/translated/return_order.js:528
-#: templates/js/translated/return_order.js:708
-#: templates/js/translated/sales_order.js:300
-#: templates/js/translated/sales_order.js:1597
-#: templates/js/translated/sales_order.js:1682
-#: templates/js/translated/stock.js:563
+#: templates/js/translated/build.js:508 templates/js/translated/build.js:1306
+#: templates/js/translated/build.js:2281
+#: templates/js/translated/model_renderers.js:215
+#: templates/js/translated/return_order.js:540
+#: templates/js/translated/return_order.js:720
+#: templates/js/translated/sales_order.js:312
+#: templates/js/translated/sales_order.js:1609
+#: templates/js/translated/sales_order.js:1694
+#: templates/js/translated/stock.js:562
msgid "Serial Number"
msgstr "Numero Seriale"
@@ -7517,7 +7528,7 @@ msgid "Test Results"
msgstr "Risultati Test"
#: report/templates/report/inventree_test_report_base.html:102
-#: stock/models.py:2243 templates/js/translated/stock.js:1419
+#: stock/models.py:2243 templates/js/translated/stock.js:1418
msgid "Test"
msgstr "Test"
@@ -7548,8 +7559,8 @@ msgid "Installed Items"
msgstr "Elementi installati"
#: report/templates/report/inventree_test_report_base.html:168
-#: stock/admin.py:104 templates/js/translated/stock.js:667
-#: templates/js/translated/stock.js:838 templates/js/translated/stock.js:2849
+#: stock/admin.py:104 templates/js/translated/stock.js:666
+#: templates/js/translated/stock.js:837 templates/js/translated/stock.js:2976
msgid "Serial"
msgstr "Seriale"
@@ -7617,31 +7628,31 @@ msgstr "Elimina al esaurimento"
#: stock/admin.py:131 stock/models.py:789
#: stock/templates/stock/item_base.html:429
-#: templates/js/translated/stock.js:1966
+#: templates/js/translated/stock.js:2123
msgid "Expiry Date"
msgstr "Data di Scadenza"
-#: stock/api.py:420 templates/js/translated/table_filters.js:373
+#: stock/api.py:426 templates/js/translated/table_filters.js:379
msgid "External Location"
msgstr "Ubicazione Esterna"
-#: stock/api.py:582
+#: stock/api.py:619
msgid "Quantity is required"
msgstr "La quantità è richiesta"
-#: stock/api.py:589
+#: stock/api.py:626
msgid "Valid part must be supplied"
msgstr "Deve essere fornita un articolo valido"
-#: stock/api.py:615
+#: stock/api.py:652
msgid "The given supplier part does not exist"
msgstr ""
-#: stock/api.py:624
+#: stock/api.py:661
msgid "The supplier part has a pack size defined, but flag use_pack_size not set"
msgstr ""
-#: stock/api.py:642
+#: stock/api.py:679
msgid "Serial numbers cannot be supplied for a non-trackable part"
msgstr "I numeri di serie non possono essere forniti per un articolo non tracciabile"
@@ -7652,7 +7663,7 @@ msgid "Stock Location"
msgstr "Ubicazione magazzino"
#: stock/models.py:55 stock/templates/stock/location.html:177
-#: templates/InvenTree/search.html:166 templates/js/translated/search.js:220
+#: templates/InvenTree/search.html:166 templates/js/translated/search.js:178
#: users/models.py:40
msgid "Stock Locations"
msgstr "Posizioni magazzino"
@@ -7670,8 +7681,8 @@ msgstr "Seleziona Owner"
msgid "Stock items may not be directly located into a structural stock locations, but may be located to child locations."
msgstr "Gli elementi di magazzino non possono essere direttamente situati in un magazzino strutturale, ma possono essere situati in ubicazioni secondarie."
-#: stock/models.py:132 templates/js/translated/stock.js:2529
-#: templates/js/translated/table_filters.js:213
+#: stock/models.py:132 templates/js/translated/stock.js:2660
+#: templates/js/translated/table_filters.js:219
msgid "External"
msgstr "Esterno"
@@ -7687,7 +7698,7 @@ msgstr "Non puoi rendere strutturale questa posizione di magazzino perché alcun
msgid "Stock items cannot be located into structural stock locations!"
msgstr "Gli articoli di magazzino non possono essere ubicati in posizioni di magazzino strutturali!"
-#: stock/models.py:583 stock/serializers.py:174
+#: stock/models.py:583 stock/serializers.py:223
msgid "Stock item cannot be created for virtual parts"
msgstr "Non è possibile creare un elemento di magazzino per articoli virtuali"
@@ -7821,7 +7832,7 @@ msgstr "I numeri di serie devono essere numeri interi"
msgid "Quantity does not match serial numbers"
msgstr "La quantità non corrisponde ai numeri di serie"
-#: stock/models.py:1403 stock/serializers.py:374
+#: stock/models.py:1403 stock/serializers.py:440
msgid "Serial numbers already exist"
msgstr "Numeri di serie già esistenti"
@@ -7849,7 +7860,7 @@ msgstr "L'elemento di magazzino è attualmente in produzione"
msgid "Serialized stock cannot be merged"
msgstr "Il magazzino serializzato non può essere unito"
-#: stock/models.py:1496 stock/serializers.py:975
+#: stock/models.py:1496 stock/serializers.py:1092
msgid "Duplicate stock items"
msgstr "Duplica elementi di magazzino"
@@ -7901,132 +7912,141 @@ msgstr "Risultato della prova allegato"
msgid "Test notes"
msgstr "Note del test"
-#: stock/serializers.py:76
+#: stock/serializers.py:121
msgid "Serial number is too large"
msgstr "Il numero di serie è troppo grande"
-#: stock/serializers.py:166
+#: stock/serializers.py:215
msgid "Use pack size when adding: the quantity defined is the number of packs"
msgstr ""
-#: stock/serializers.py:254
+#: stock/serializers.py:316
msgid "Purchase price of this stock item, per unit or pack"
msgstr ""
-#: stock/serializers.py:307
+#: stock/serializers.py:373
msgid "Enter number of stock items to serialize"
msgstr "Inserisci il numero di elementi di magazzino da serializzare"
-#: stock/serializers.py:319
+#: stock/serializers.py:385
#, python-brace-format
msgid "Quantity must not exceed available stock quantity ({q})"
msgstr "La quantità non deve superare la quantità disponibile ({q})"
-#: stock/serializers.py:325
+#: stock/serializers.py:391
msgid "Enter serial numbers for new items"
msgstr "Inserisci i numeri di serie per i nuovi elementi"
-#: stock/serializers.py:336 stock/serializers.py:932 stock/serializers.py:1174
+#: stock/serializers.py:402 stock/serializers.py:1049 stock/serializers.py:1291
msgid "Destination stock location"
msgstr "Posizione magazzino di destinazione"
-#: stock/serializers.py:343
+#: stock/serializers.py:409
msgid "Optional note field"
msgstr "Note opzionali elemento"
-#: stock/serializers.py:353
+#: stock/serializers.py:419
msgid "Serial numbers cannot be assigned to this part"
msgstr "Numeri di serie non possono essere assegnati a questo articolo"
-#: stock/serializers.py:414
+#: stock/serializers.py:480
msgid "Select stock item to install"
msgstr "Seleziona elementi di magazzino da installare"
-#: stock/serializers.py:427
-msgid "Stock item is unavailable"
-msgstr "Elemento di magazzino non disponibile"
-
-#: stock/serializers.py:434
-msgid "Selected part is not in the Bill of Materials"
-msgstr "L'articolo selezionato non è nella Fattura dei Materiali"
-
-#: stock/serializers.py:471
-msgid "Destination location for uninstalled item"
-msgstr "Posizione di destinazione per gli elementi disinstallati"
-
-#: stock/serializers.py:476 stock/serializers.py:557
+#: stock/serializers.py:485 stock/serializers.py:543 stock/serializers.py:624
+#: stock/serializers.py:682
msgid "Add transaction note (optional)"
msgstr "Aggiungi nota di transazione (opzionale)"
-#: stock/serializers.py:510
+#: stock/serializers.py:494
+msgid "Stock item is unavailable"
+msgstr "Elemento di magazzino non disponibile"
+
+#: stock/serializers.py:501
+msgid "Selected part is not in the Bill of Materials"
+msgstr "L'articolo selezionato non è nella Fattura dei Materiali"
+
+#: stock/serializers.py:538
+msgid "Destination location for uninstalled item"
+msgstr "Posizione di destinazione per gli elementi disinstallati"
+
+#: stock/serializers.py:577
msgid "Select part to convert stock item into"
msgstr "Seleziona l'articolo in cui convertire l'elemento di magazzino"
-#: stock/serializers.py:521
+#: stock/serializers.py:588
msgid "Selected part is not a valid option for conversion"
msgstr "L'articolo selezionato non è una valida opzione per la conversione"
-#: stock/serializers.py:552
+#: stock/serializers.py:619
msgid "Destination location for returned item"
msgstr "Posizione di destinazione per l'elemento restituito"
-#: stock/serializers.py:787
+#: stock/serializers.py:663
+msgid "Select stock items to change status"
+msgstr ""
+
+#: stock/serializers.py:670
+msgid "No stock items selected"
+msgstr ""
+
+#: stock/serializers.py:904
msgid "Part must be salable"
msgstr "L'articolo deve essere vendibile"
-#: stock/serializers.py:791
+#: stock/serializers.py:908
msgid "Item is allocated to a sales order"
msgstr "L'elemento è assegnato a un ordine di vendita"
-#: stock/serializers.py:795
+#: stock/serializers.py:912
msgid "Item is allocated to a build order"
msgstr "Elemento assegnato a un ordine di costruzione"
-#: stock/serializers.py:826
+#: stock/serializers.py:943
msgid "Customer to assign stock items"
msgstr "Cliente a cui assegnare elementi di magazzino"
-#: stock/serializers.py:832
+#: stock/serializers.py:949
msgid "Selected company is not a customer"
msgstr "L'azienda selezionata non è un cliente"
-#: stock/serializers.py:840
+#: stock/serializers.py:957
msgid "Stock assignment notes"
msgstr "Note sull'assegnazione delle scorte"
-#: stock/serializers.py:850 stock/serializers.py:1081
+#: stock/serializers.py:967 stock/serializers.py:1198
msgid "A list of stock items must be provided"
msgstr "Deve essere fornito un elenco degli elementi di magazzino"
-#: stock/serializers.py:939
+#: stock/serializers.py:1056
msgid "Stock merging notes"
msgstr "Note di fusione di magazzino"
-#: stock/serializers.py:944
+#: stock/serializers.py:1061
msgid "Allow mismatched suppliers"
msgstr "Consenti fornitori non corrispondenti"
-#: stock/serializers.py:945
+#: stock/serializers.py:1062
msgid "Allow stock items with different supplier parts to be merged"
msgstr "Consenti di unire gli elementi di magazzino che hanno fornitori diversi"
-#: stock/serializers.py:950
+#: stock/serializers.py:1067
msgid "Allow mismatched status"
msgstr "Consenti stato non corrispondente"
-#: stock/serializers.py:951
+#: stock/serializers.py:1068
msgid "Allow stock items with different status codes to be merged"
msgstr "Consenti di unire gli elementi di magazzino con diversi codici di stato"
-#: stock/serializers.py:961
+#: stock/serializers.py:1078
msgid "At least two stock items must be provided"
msgstr "Devono essere riforniti almeno due elementi in magazzino"
-#: stock/serializers.py:1043
+#: stock/serializers.py:1160
msgid "StockItem primary key value"
msgstr "Valore di chiave primaria StockItem"
-#: stock/serializers.py:1071
+#: stock/serializers.py:1188
msgid "Stock transaction notes"
msgstr "Note sugli spostamenti di magazzino"
@@ -8034,48 +8054,48 @@ msgstr "Note sugli spostamenti di magazzino"
msgid "Stock Tracking Information"
msgstr "Informazioni di Tracciamento Magazzino"
-#: stock/templates/stock/item.html:69
+#: stock/templates/stock/item.html:63
msgid "Child Stock Items"
msgstr "Elementi Secondari Magazzino"
-#: stock/templates/stock/item.html:77
+#: stock/templates/stock/item.html:71
msgid "This stock item does not have any child items"
msgstr "Questo elemento di magazzino non ha nessun elemento secondario"
-#: stock/templates/stock/item.html:86
+#: stock/templates/stock/item.html:80
#: stock/templates/stock/stock_sidebar.html:12
msgid "Test Data"
msgstr "Dati di Test"
-#: stock/templates/stock/item.html:90 stock/templates/stock/item_base.html:66
+#: stock/templates/stock/item.html:84 stock/templates/stock/item_base.html:66
msgid "Test Report"
msgstr "Rapporto del Test"
-#: stock/templates/stock/item.html:94 stock/templates/stock/item.html:288
+#: stock/templates/stock/item.html:88 stock/templates/stock/item.html:278
msgid "Delete Test Data"
msgstr "Elimina Dati di Test"
-#: stock/templates/stock/item.html:98
+#: stock/templates/stock/item.html:92
msgid "Add Test Data"
msgstr "Aggiungi Dati Di Test"
-#: stock/templates/stock/item.html:132
+#: stock/templates/stock/item.html:124
msgid "Stock Item Notes"
msgstr "Note Elemento di magazzino"
-#: stock/templates/stock/item.html:147
+#: stock/templates/stock/item.html:139
msgid "Installed Stock Items"
msgstr "Elementi di magazzino installati"
-#: stock/templates/stock/item.html:152 templates/js/translated/stock.js:2996
+#: stock/templates/stock/item.html:144 templates/js/translated/stock.js:3123
msgid "Install Stock Item"
msgstr "Installa Elemento Magazzino"
-#: stock/templates/stock/item.html:276
+#: stock/templates/stock/item.html:266
msgid "Delete all test results for this stock item"
msgstr "Elimina tutti i risultati del test per questo elemento di magazzino"
-#: stock/templates/stock/item.html:305 templates/js/translated/stock.js:1611
+#: stock/templates/stock/item.html:295 templates/js/translated/stock.js:1610
msgid "Add Test Result"
msgstr "Aggiungi Risultato Test"
@@ -8083,13 +8103,13 @@ msgstr "Aggiungi Risultato Test"
msgid "Locate stock item"
msgstr "Individua elemento di magazzino"
-#: stock/templates/stock/item_base.html:52 templates/stock_table.html:21
+#: stock/templates/stock/item_base.html:52
msgid "Scan to Location"
msgstr "Scansiona nella posizione"
#: stock/templates/stock/item_base.html:60
#: stock/templates/stock/location.html:69
-#: templates/js/translated/filters.js:322
+#: templates/js/translated/filters.js:432
msgid "Printing actions"
msgstr "Impostazioni di stampa"
@@ -8098,15 +8118,17 @@ msgid "Stock adjustment actions"
msgstr "Azioni adeguamento giacenza"
#: stock/templates/stock/item_base.html:80
-#: stock/templates/stock/location.html:88 templates/stock_table.html:35
+#: stock/templates/stock/location.html:88 templates/js/translated/stock.js:1735
msgid "Count stock"
msgstr "Conta giacenza"
-#: stock/templates/stock/item_base.html:82 templates/stock_table.html:33
+#: stock/templates/stock/item_base.html:82
+#: templates/js/translated/stock.js:1717
msgid "Add stock"
msgstr "Aggiungi giacenza"
-#: stock/templates/stock/item_base.html:83 templates/stock_table.html:34
+#: stock/templates/stock/item_base.html:83
+#: templates/js/translated/stock.js:1726
msgid "Remove stock"
msgstr "Rimuovi giacenza"
@@ -8115,11 +8137,12 @@ msgid "Serialize stock"
msgstr "Serializza magazzino"
#: stock/templates/stock/item_base.html:89
-#: stock/templates/stock/location.html:94 templates/stock_table.html:36
+#: stock/templates/stock/location.html:94 templates/js/translated/stock.js:1744
msgid "Transfer stock"
msgstr "Trasferisci giacenza"
-#: stock/templates/stock/item_base.html:92 templates/stock_table.html:39
+#: stock/templates/stock/item_base.html:92
+#: templates/js/translated/stock.js:1798
msgid "Assign to customer"
msgstr "Assegna al cliente"
@@ -8159,6 +8182,11 @@ msgstr "Modifica elemento di magazzino"
msgid "Delete stock item"
msgstr "Cancella elemento di magazzino"
+#: stock/templates/stock/item_base.html:170 templates/InvenTree/search.html:139
+#: templates/js/translated/build.js:2046 templates/navbar.html:38
+msgid "Build"
+msgstr "Produzione"
+
#: stock/templates/stock/item_base.html:194
msgid "Parent Item"
msgstr "Elemento principale"
@@ -8221,7 +8249,7 @@ msgid "Available Quantity"
msgstr "Quantità Disponibile"
#: stock/templates/stock/item_base.html:394
-#: templates/js/translated/build.js:2015
+#: templates/js/translated/build.js:2306
msgid "No location set"
msgstr "Nessuna posizione impostata"
@@ -8239,7 +8267,7 @@ msgid "This StockItem expired on %(item.expiry_date)s"
msgstr "Questo Elemento Stock è scaduto il %(item.expiry_date)s"
#: stock/templates/stock/item_base.html:433
-#: templates/js/translated/table_filters.js:381
+#: templates/js/translated/table_filters.js:387
msgid "Expired"
msgstr "Scaduto"
@@ -8249,7 +8277,7 @@ msgid "This StockItem expires on %(item.expiry_date)s"
msgstr "Questo Elemento Stock scade il %(item.expiry_date)s"
#: stock/templates/stock/item_base.html:435
-#: templates/js/translated/table_filters.js:387
+#: templates/js/translated/table_filters.js:393
msgid "Stale"
msgstr "Obsoleto"
@@ -8258,7 +8286,7 @@ msgid "No stocktake performed"
msgstr "Nessun inventario eseguito"
#: stock/templates/stock/item_base.html:503
-#: templates/js/translated/stock.js:1745
+#: templates/js/translated/stock.js:1865
msgid "stock item"
msgstr ""
@@ -8364,20 +8392,20 @@ msgstr "Crea nuova posizione di magazzino"
msgid "New Location"
msgstr "Nuova Posizione"
-#: stock/templates/stock/location.html:287
-#: templates/js/translated/stock.js:2318
+#: stock/templates/stock/location.html:278
+#: templates/js/translated/stock.js:2449
msgid "stock location"
msgstr ""
-#: stock/templates/stock/location.html:304
+#: stock/templates/stock/location.html:295
msgid "Scanned stock container into this location"
msgstr "Container magazzino scansionato in questa posizione"
-#: stock/templates/stock/location.html:377
+#: stock/templates/stock/location.html:368
msgid "Stock Location QR Code"
msgstr "Codice QR Ubicazione Magazzino"
-#: stock/templates/stock/location.html:388
+#: stock/templates/stock/location.html:379
msgid "Link Barcode to Stock Location"
msgstr "Collega il Codice a Barre alla Posizione Magazzino"
@@ -8451,71 +8479,71 @@ msgstr "Il sito è attualmente in manutenzione e dovrebbe essere online presto!"
msgid "Index"
msgstr "Indice"
-#: templates/InvenTree/index.html:89
+#: templates/InvenTree/index.html:39
msgid "Subscribed Parts"
msgstr "Articoli Sottoscritti"
-#: templates/InvenTree/index.html:102
+#: templates/InvenTree/index.html:53
msgid "Subscribed Categories"
msgstr "Categoria sottoscritta"
-#: templates/InvenTree/index.html:112
+#: templates/InvenTree/index.html:63
msgid "Latest Parts"
msgstr "Articoli Recenti"
-#: templates/InvenTree/index.html:126
+#: templates/InvenTree/index.html:78
msgid "BOM Waiting Validation"
msgstr "Distinta base In Attesa Di Convalida"
-#: templates/InvenTree/index.html:155
+#: templates/InvenTree/index.html:107
msgid "Recently Updated"
msgstr "Aggiornamento Recente"
-#: templates/InvenTree/index.html:180
+#: templates/InvenTree/index.html:134
msgid "Depleted Stock"
msgstr "Stock esaurito"
-#: templates/InvenTree/index.html:193
+#: templates/InvenTree/index.html:148
msgid "Required for Build Orders"
msgstr "Richiesto per gli Ordini di Produzione"
-#: templates/InvenTree/index.html:208
+#: templates/InvenTree/index.html:156
msgid "Expired Stock"
msgstr "Stock Scaduto"
-#: templates/InvenTree/index.html:222
+#: templates/InvenTree/index.html:172
msgid "Stale Stock"
msgstr "Stock obsoleto"
-#: templates/InvenTree/index.html:247
+#: templates/InvenTree/index.html:199
msgid "Build Orders In Progress"
msgstr "Ordini di Produzione Attivi"
-#: templates/InvenTree/index.html:258
+#: templates/InvenTree/index.html:210
msgid "Overdue Build Orders"
msgstr "Ordini Di Produzione Scaduti"
-#: templates/InvenTree/index.html:278
+#: templates/InvenTree/index.html:230
msgid "Outstanding Purchase Orders"
msgstr "Ordini Di Acquisto In Corso"
-#: templates/InvenTree/index.html:289
+#: templates/InvenTree/index.html:241
msgid "Overdue Purchase Orders"
msgstr "Ordini Di Acquisto In Ritardo"
-#: templates/InvenTree/index.html:310
+#: templates/InvenTree/index.html:262
msgid "Outstanding Sales Orders"
msgstr "Ordini Di Vendita In Corso"
-#: templates/InvenTree/index.html:321
+#: templates/InvenTree/index.html:273
msgid "Overdue Sales Orders"
msgstr "Ordini Di Vendita in ritardo"
-#: templates/InvenTree/index.html:347
+#: templates/InvenTree/index.html:299
msgid "InvenTree News"
msgstr "Novità InvenTree"
-#: templates/InvenTree/index.html:349
+#: templates/InvenTree/index.html:301
msgid "Current News"
msgstr "Notizie Attuali"
@@ -8672,29 +8700,29 @@ msgstr "Impostazioni Plugin"
msgid "Changing the settings below require you to immediately restart the server. Do not change this while under active usage."
msgstr "Cambiando le impostazioni qui sotto, si richiede di riavviare immediatamente il server. Non cambiare le impostazioni durante l'utilizzo."
-#: templates/InvenTree/settings/plugin.html:37
+#: templates/InvenTree/settings/plugin.html:35
#: templates/InvenTree/settings/sidebar.html:64
msgid "Plugins"
msgstr "Plugin"
-#: templates/InvenTree/settings/plugin.html:43
+#: templates/InvenTree/settings/plugin.html:41
#: templates/js/translated/plugin.js:151
msgid "Install Plugin"
msgstr "Installa Plugin"
-#: templates/InvenTree/settings/plugin.html:51
+#: templates/InvenTree/settings/plugin.html:49
msgid "External plugins are not enabled for this InvenTree installation"
msgstr "I plugin esterni non sono abilitati per questa installazione InvenTree"
-#: templates/InvenTree/settings/plugin.html:70
+#: templates/InvenTree/settings/plugin.html:64
msgid "Plugin Error Stack"
msgstr "Plugin Errore Stack"
-#: templates/InvenTree/settings/plugin.html:79
+#: templates/InvenTree/settings/plugin.html:73
msgid "Stage"
msgstr "Stage"
-#: templates/InvenTree/settings/plugin.html:81
+#: templates/InvenTree/settings/plugin.html:75
#: templates/js/translated/notification.js:75
msgid "Message"
msgstr "Messaggio"
@@ -8767,14 +8795,6 @@ msgstr "Commit Hash"
msgid "Commit Message"
msgstr "Commit Messaggio"
-#: templates/InvenTree/settings/plugin_settings.html:126
-msgid "Sign Status"
-msgstr "Stato Firma"
-
-#: templates/InvenTree/settings/plugin_settings.html:131
-msgid "Sign Key"
-msgstr "Chiave Di Firma"
-
#: templates/InvenTree/settings/po.html:7
msgid "Purchase Order Settings"
msgstr "Impostazioni Ordine di Acquisto"
@@ -8870,12 +8890,12 @@ msgid "No category parameter templates found"
msgstr "Nessun parametro di categoria trovato"
#: templates/InvenTree/settings/settings_staff_js.html:212
-#: templates/js/translated/part.js:1618
+#: templates/js/translated/part.js:1617
msgid "Edit Template"
msgstr "Modifica Template"
#: templates/InvenTree/settings/settings_staff_js.html:213
-#: templates/js/translated/part.js:1619
+#: templates/js/translated/part.js:1618
msgid "Delete Template"
msgstr "Elimina Template"
@@ -8913,7 +8933,7 @@ msgid "Home Page"
msgstr "Home Page"
#: templates/InvenTree/settings/sidebar.html:15
-#: templates/js/translated/tables.js:575 templates/navbar.html:107
+#: templates/js/translated/tables.js:551 templates/navbar.html:107
#: templates/search.html:8 templates/search_form.html:6
#: templates/search_form.html:7
msgid "Search"
@@ -8990,6 +9010,7 @@ msgid "Unverified"
msgstr "Non verificato"
#: templates/InvenTree/settings/user.html:80
+#: templates/js/translated/company.js:984
msgid "Primary"
msgstr "Principale"
@@ -9204,44 +9225,48 @@ msgstr "Aggiornato"
msgid "Update Available"
msgstr "Aggiornamento Disponibile"
-#: templates/about.html:42
+#: templates/about.html:43
+msgid "Commit Branch"
+msgstr ""
+
+#: templates/about.html:49
msgid "InvenTree Documentation"
msgstr "Documentazione InvenTree"
-#: templates/about.html:47
+#: templates/about.html:54
msgid "API Version"
msgstr "Versione API"
-#: templates/about.html:52
+#: templates/about.html:59
msgid "Python Version"
msgstr "Versione di Python"
-#: templates/about.html:57
+#: templates/about.html:64
msgid "Django Version"
msgstr "Versione Django"
-#: templates/about.html:62
+#: templates/about.html:69
msgid "View Code on GitHub"
msgstr "Visualizza codice sorgente su GitHub"
-#: templates/about.html:67
+#: templates/about.html:74
msgid "Credits"
msgstr "Crediti"
-#: templates/about.html:72
+#: templates/about.html:79
msgid "Mobile App"
msgstr "App Mobile"
-#: templates/about.html:77
+#: templates/about.html:84
msgid "Submit Bug Report"
msgstr "Invia Segnalazione Bug"
-#: templates/about.html:84 templates/clip.html:4
+#: templates/about.html:91 templates/clip.html:4
#: templates/js/translated/helpers.js:585
msgid "copy to clipboard"
msgstr "copia negli appunti"
-#: templates/about.html:84
+#: templates/about.html:91
msgid "copy version information"
msgstr "copia informazioni versione"
@@ -9435,14 +9460,6 @@ msgstr "Aggiungi Collegamento"
msgid "Add Attachment"
msgstr "Aggiungi allegato"
-#: templates/attachment_table.html:11
-msgid "Delete selected attachments"
-msgstr "Elimina allegati selezionati"
-
-#: templates/attachment_table.html:12 templates/js/translated/attachment.js:129
-msgid "Delete Attachments"
-msgstr "Elimina Allegati"
-
#: templates/barcode_data.html:5
msgid "Barcode Identifier"
msgstr "Codice a Barre Identificativo"
@@ -9487,7 +9504,7 @@ msgid "The following parts are low on required stock"
msgstr "I seguenti articoli sono pochi nel magazzino richiesto"
#: templates/email/build_order_required_stock.html:18
-#: templates/js/translated/bom.js:1633
+#: templates/js/translated/bom.js:1653 templates/js/translated/build.js:2485
msgid "Required Quantity"
msgstr "Quantità richiesta"
@@ -9501,7 +9518,7 @@ msgid "Click on the following link to view this part"
msgstr "Clicca il seguente link per visualizzare questo articolo"
#: templates/email/low_stock_notification.html:18
-#: templates/js/translated/part.js:3140
+#: templates/js/translated/part.js:3125
msgid "Minimum Quantity"
msgstr "Quantità minima"
@@ -9573,23 +9590,35 @@ msgstr "Codice errore"
msgid "All selected attachments will be deleted"
msgstr "Tutti gli allegati selezionati saranno eliminati"
-#: templates/js/translated/attachment.js:255
+#: templates/js/translated/attachment.js:129
+msgid "Delete Attachments"
+msgstr "Elimina Allegati"
+
+#: templates/js/translated/attachment.js:205
+msgid "Delete attachments"
+msgstr ""
+
+#: templates/js/translated/attachment.js:253
+msgid "Attachment actions"
+msgstr ""
+
+#: templates/js/translated/attachment.js:275
msgid "No attachments found"
msgstr "Allegati non trovati"
-#: templates/js/translated/attachment.js:285
+#: templates/js/translated/attachment.js:305
msgid "Edit Attachment"
msgstr "Modifica allegato"
-#: templates/js/translated/attachment.js:326
+#: templates/js/translated/attachment.js:336
msgid "Upload Date"
msgstr "Data di Upload"
-#: templates/js/translated/attachment.js:346
+#: templates/js/translated/attachment.js:356
msgid "Edit attachment"
msgstr "Modifica allegato"
-#: templates/js/translated/attachment.js:354
+#: templates/js/translated/attachment.js:364
msgid "Delete attachment"
msgstr "Cancella allegato"
@@ -9646,7 +9675,7 @@ msgstr "Questo rimuoverà il collegamento al codice a barre associato"
msgid "Unlink"
msgstr "Scollega"
-#: templates/js/translated/barcode.js:550 templates/js/translated/stock.js:1118
+#: templates/js/translated/barcode.js:550 templates/js/translated/stock.js:1117
msgid "Remove stock item"
msgstr "Rimuovere l'articolo in magazzino"
@@ -9704,775 +9733,869 @@ msgstr "Controlla Nella Posizione"
msgid "Barcode does not match a valid location"
msgstr "Il codice a barre non corrisponde a una posizione valida"
-#: templates/js/translated/bom.js:77
+#: templates/js/translated/bom.js:78
msgid "Create BOM Item"
msgstr "Creare un elemento della distinta base"
-#: templates/js/translated/bom.js:131
+#: templates/js/translated/bom.js:132
msgid "Display row data"
msgstr "Visualizzare i dati"
-#: templates/js/translated/bom.js:187
+#: templates/js/translated/bom.js:188
msgid "Row Data"
msgstr "Dati"
-#: templates/js/translated/bom.js:188 templates/js/translated/bom.js:699
+#: templates/js/translated/bom.js:189 templates/js/translated/bom.js:700
#: templates/js/translated/modals.js:71 templates/js/translated/modals.js:622
#: templates/js/translated/modals.js:746 templates/js/translated/modals.js:1054
-#: templates/js/translated/purchase_order.js:791 templates/modals.html:15
+#: templates/js/translated/purchase_order.js:802 templates/modals.html:15
#: templates/modals.html:27 templates/modals.html:39 templates/modals.html:50
msgid "Close"
msgstr "Chiudi"
-#: templates/js/translated/bom.js:305
+#: templates/js/translated/bom.js:306
msgid "Download BOM Template"
msgstr "Scarica il modello di distinta base"
-#: templates/js/translated/bom.js:350
+#: templates/js/translated/bom.js:351
msgid "Multi Level BOM"
msgstr "Distinta base multilivello"
-#: templates/js/translated/bom.js:351
+#: templates/js/translated/bom.js:352
msgid "Include BOM data for subassemblies"
msgstr "Includere i dati della distinta base per i sottoassiemi"
-#: templates/js/translated/bom.js:356
+#: templates/js/translated/bom.js:357
msgid "Levels"
msgstr "Livelli"
-#: templates/js/translated/bom.js:357
+#: templates/js/translated/bom.js:358
msgid "Select maximum number of BOM levels to export (0 = all levels)"
msgstr "Selezionare il numero massimo di livelli di distinta base da esportare (0 = tutti i livelli)"
-#: templates/js/translated/bom.js:364
+#: templates/js/translated/bom.js:365
msgid "Include Alternative Parts"
msgstr "Includere Articoli Alternativi"
-#: templates/js/translated/bom.js:365
+#: templates/js/translated/bom.js:366
msgid "Include alternative parts in exported BOM"
msgstr "Includere articoli alternativi nella distinta base esportata"
-#: templates/js/translated/bom.js:370
+#: templates/js/translated/bom.js:371
msgid "Include Parameter Data"
msgstr "Includere i dati dei parametri"
-#: templates/js/translated/bom.js:371
+#: templates/js/translated/bom.js:372
msgid "Include part parameter data in exported BOM"
msgstr "Includere i dati dei parametri degli articoli nella distinta base esportata"
-#: templates/js/translated/bom.js:376
+#: templates/js/translated/bom.js:377
msgid "Include Stock Data"
msgstr "Includere i dati delle scorte"
-#: templates/js/translated/bom.js:377
+#: templates/js/translated/bom.js:378
msgid "Include part stock data in exported BOM"
msgstr "Includere i dati delle scorte dei pezzi nella distinta base esportata"
-#: templates/js/translated/bom.js:382
+#: templates/js/translated/bom.js:383
msgid "Include Manufacturer Data"
msgstr "Includere i dati del produttore"
-#: templates/js/translated/bom.js:383
+#: templates/js/translated/bom.js:384
msgid "Include part manufacturer data in exported BOM"
msgstr "Includere i dati del produttore delle parti nella distinta base esportata"
-#: templates/js/translated/bom.js:388
+#: templates/js/translated/bom.js:389
msgid "Include Supplier Data"
msgstr "Includere i dati dei fornitori"
-#: templates/js/translated/bom.js:389
+#: templates/js/translated/bom.js:390
msgid "Include part supplier data in exported BOM"
msgstr "Includere i dati del fornitore di parti nella distinta base esportata"
-#: templates/js/translated/bom.js:394
+#: templates/js/translated/bom.js:395
msgid "Include Pricing Data"
msgstr "Includere i prezzi"
-#: templates/js/translated/bom.js:395
+#: templates/js/translated/bom.js:396
msgid "Include part pricing data in exported BOM"
msgstr "Includere i prezzi delle parti nella distinta base esportata"
-#: templates/js/translated/bom.js:590
+#: templates/js/translated/bom.js:591
msgid "Remove substitute part"
msgstr "Rimuovi articolo sostitutivo"
-#: templates/js/translated/bom.js:644
+#: templates/js/translated/bom.js:645
msgid "Select and add a new substitute part using the input below"
msgstr "Seleziona e aggiungi un nuovo articolo sostitutivo utilizzando l'input qui sotto"
-#: templates/js/translated/bom.js:655
+#: templates/js/translated/bom.js:656
msgid "Are you sure you wish to remove this substitute part link?"
msgstr "Sei sicuro di voler rimuovere questo collegamento all' articolo sostitutivo?"
-#: templates/js/translated/bom.js:661
+#: templates/js/translated/bom.js:662
msgid "Remove Substitute Part"
msgstr "Rimuovi Articolo Sostitutivo"
-#: templates/js/translated/bom.js:700
+#: templates/js/translated/bom.js:701
msgid "Add Substitute"
msgstr "Aggiungi Sostitutivo"
-#: templates/js/translated/bom.js:701
+#: templates/js/translated/bom.js:702
msgid "Edit BOM Item Substitutes"
msgstr "Modifica Elementi Sostitutivi Distinta Base"
-#: templates/js/translated/bom.js:763
+#: templates/js/translated/bom.js:764
msgid "All selected BOM items will be deleted"
msgstr "Tutti gli elementi selezionati della Distinta Base saranno eliminati"
-#: templates/js/translated/bom.js:779
+#: templates/js/translated/bom.js:780
msgid "Delete selected BOM items?"
msgstr "Elimina gli Elementi selezionati della Distinta Base?"
-#: templates/js/translated/bom.js:906
+#: templates/js/translated/bom.js:826
+msgid "Delete items"
+msgstr ""
+
+#: templates/js/translated/bom.js:924
msgid "Load BOM for subassembly"
msgstr "Carica la Distinta Base per il sotto assemblaggio"
-#: templates/js/translated/bom.js:916
+#: templates/js/translated/bom.js:934
msgid "Substitutes Available"
msgstr "Sostituti Disponibili"
-#: templates/js/translated/bom.js:920 templates/js/translated/build.js:2090
+#: templates/js/translated/bom.js:938 templates/js/translated/build.js:2429
msgid "Variant stock allowed"
msgstr "Variante stock consentita"
-#: templates/js/translated/bom.js:984
+#: templates/js/translated/bom.js:1002
msgid "Substitutes"
msgstr "Sostituti"
-#: templates/js/translated/bom.js:1104
+#: templates/js/translated/bom.js:1122
msgid "BOM pricing is complete"
msgstr "I prezzi Distinta Base sono completi"
-#: templates/js/translated/bom.js:1109
+#: templates/js/translated/bom.js:1127
msgid "BOM pricing is incomplete"
msgstr "I prezzi Distinta Base sono incompleti"
-#: templates/js/translated/bom.js:1116
+#: templates/js/translated/bom.js:1134
msgid "No pricing available"
msgstr "Nessun prezzo disponibile"
-#: templates/js/translated/bom.js:1147 templates/js/translated/build.js:2173
-#: templates/js/translated/sales_order.js:1887
+#: templates/js/translated/bom.js:1165 templates/js/translated/build.js:2523
+#: templates/js/translated/sales_order.js:1899
msgid "No Stock Available"
msgstr "Nessuna Scorta Disponibile"
-#: templates/js/translated/bom.js:1152 templates/js/translated/build.js:2177
+#: templates/js/translated/bom.js:1170 templates/js/translated/build.js:2527
msgid "Includes variant and substitute stock"
msgstr "Include variante e scorte sostitutive"
-#: templates/js/translated/bom.js:1154 templates/js/translated/build.js:2179
-#: templates/js/translated/part.js:1230
+#: templates/js/translated/bom.js:1172 templates/js/translated/build.js:2529
+#: templates/js/translated/part.js:1229
msgid "Includes variant stock"
msgstr "Comprende varianti magazzino"
-#: templates/js/translated/bom.js:1156 templates/js/translated/build.js:2181
+#: templates/js/translated/bom.js:1174 templates/js/translated/build.js:2531
msgid "Includes substitute stock"
msgstr "Comprende le scorte sostitutive"
-#: templates/js/translated/bom.js:1184 templates/js/translated/build.js:2164
-#: templates/js/translated/build.js:2255
+#: templates/js/translated/bom.js:1204 templates/js/translated/build.js:2514
msgid "Consumable item"
msgstr "Elementi consumabili"
-#: templates/js/translated/bom.js:1244
+#: templates/js/translated/bom.js:1264
msgid "Validate BOM Item"
msgstr "Convalida elemento Distinta Base"
-#: templates/js/translated/bom.js:1246
+#: templates/js/translated/bom.js:1266
msgid "This line has been validated"
msgstr "Questa linea è stata convalidata"
-#: templates/js/translated/bom.js:1248
+#: templates/js/translated/bom.js:1268
msgid "Edit substitute parts"
msgstr "Modifica articoli sostitutivi"
-#: templates/js/translated/bom.js:1250 templates/js/translated/bom.js:1445
+#: templates/js/translated/bom.js:1270 templates/js/translated/bom.js:1465
msgid "Edit BOM Item"
msgstr "Modifica elemento Distinta Base"
-#: templates/js/translated/bom.js:1252
+#: templates/js/translated/bom.js:1272
msgid "Delete BOM Item"
msgstr "Cancella elemento Distinta Base"
-#: templates/js/translated/bom.js:1272
+#: templates/js/translated/bom.js:1292
msgid "View BOM"
msgstr "Visualizza Distinta Base"
-#: templates/js/translated/bom.js:1356 templates/js/translated/build.js:1927
+#: templates/js/translated/bom.js:1376
msgid "No BOM items found"
msgstr "Nessun elemento trovato in Distinta Base"
-#: templates/js/translated/bom.js:1616 templates/js/translated/build.js:2073
+#: templates/js/translated/bom.js:1636 templates/js/translated/build.js:2414
msgid "Required Part"
msgstr "Articolo richiesto"
-#: templates/js/translated/bom.js:1642
+#: templates/js/translated/bom.js:1662
msgid "Inherited from parent BOM"
msgstr "Ereditato dalla Distinta Base principale"
-#: templates/js/translated/build.js:126
+#: templates/js/translated/build.js:136
msgid "Edit Build Order"
msgstr "Modifica Ordine di produzione"
-#: templates/js/translated/build.js:169
+#: templates/js/translated/build.js:179
msgid "Create Build Order"
msgstr "Crea Ordine di Produzione"
-#: templates/js/translated/build.js:202
+#: templates/js/translated/build.js:211
msgid "Cancel Build Order"
msgstr "Annulla Ordine Di Produzione"
-#: templates/js/translated/build.js:211
+#: templates/js/translated/build.js:220
msgid "Are you sure you wish to cancel this build?"
msgstr "Sei sicuro di voler annullare questa produzione?"
-#: templates/js/translated/build.js:217
+#: templates/js/translated/build.js:226
msgid "Stock items have been allocated to this build order"
msgstr "Gli elementi di magazzino è stata assegnata a questo ordine di produzione"
-#: templates/js/translated/build.js:224
+#: templates/js/translated/build.js:233
msgid "There are incomplete outputs remaining for this build order"
msgstr "Ci sono output incompleti rimanenti per questo ordine di produzione"
-#: templates/js/translated/build.js:276
+#: templates/js/translated/build.js:285
msgid "Build order is ready to be completed"
msgstr "L'ordine di produzione è pronto per essere completato"
-#: templates/js/translated/build.js:284
+#: templates/js/translated/build.js:293
msgid "This build order cannot be completed as there are incomplete outputs"
msgstr "Questo ordine di produzione non può essere completato in quanto ci sono output incompleti"
-#: templates/js/translated/build.js:289
+#: templates/js/translated/build.js:298
msgid "Build Order is incomplete"
msgstr "L'Ordine di Produzione è incompleto"
-#: templates/js/translated/build.js:307
+#: templates/js/translated/build.js:316
msgid "Complete Build Order"
msgstr "Completa l'Ordine di Produzione"
-#: templates/js/translated/build.js:348 templates/js/translated/stock.js:119
-#: templates/js/translated/stock.js:265
+#: templates/js/translated/build.js:357 templates/js/translated/stock.js:118
+#: templates/js/translated/stock.js:264
msgid "Next available serial number"
msgstr "Il prossimo numero di serie disponibile è"
-#: templates/js/translated/build.js:350 templates/js/translated/stock.js:121
-#: templates/js/translated/stock.js:267
+#: templates/js/translated/build.js:359 templates/js/translated/stock.js:120
+#: templates/js/translated/stock.js:266
msgid "Latest serial number"
msgstr "Ultimo Numero Di Serie"
-#: templates/js/translated/build.js:359
+#: templates/js/translated/build.js:368
msgid "The Bill of Materials contains trackable parts"
msgstr "La distinta base contiene articoli tracciabili"
-#: templates/js/translated/build.js:360
+#: templates/js/translated/build.js:369
msgid "Build outputs must be generated individually"
msgstr "Gli outputs della produzione devono essere generati singolarmente"
-#: templates/js/translated/build.js:368
+#: templates/js/translated/build.js:377
msgid "Trackable parts can have serial numbers specified"
msgstr "Gli articoli tracciabili possono avere numeri di serie specificati"
-#: templates/js/translated/build.js:369
+#: templates/js/translated/build.js:378
msgid "Enter serial numbers to generate multiple single build outputs"
msgstr "Inserisci i numeri seriali per generare più output di produzione"
-#: templates/js/translated/build.js:376
+#: templates/js/translated/build.js:385
msgid "Create Build Output"
msgstr "Crea Output di Produzione"
-#: templates/js/translated/build.js:407
+#: templates/js/translated/build.js:416
msgid "Allocate stock items to this build output"
msgstr "Assegna gli elementi di magazzino a questo output di produzione"
-#: templates/js/translated/build.js:418
-msgid "Unallocate stock from build output"
-msgstr "Non assegnare stock all'output di produzione"
+#: templates/js/translated/build.js:424
+msgid "Deallocate stock from build output"
+msgstr ""
-#: templates/js/translated/build.js:427
+#: templates/js/translated/build.js:433
msgid "Complete build output"
msgstr "Completa output di produzione"
-#: templates/js/translated/build.js:435
+#: templates/js/translated/build.js:441
msgid "Scrap build output"
msgstr ""
-#: templates/js/translated/build.js:442
+#: templates/js/translated/build.js:448
msgid "Delete build output"
msgstr "Cancella output di produzione"
-#: templates/js/translated/build.js:462
-msgid "Are you sure you wish to unallocate stock items from this build?"
-msgstr "Sei sicuro di voler annullare l'allocazione degli elementi stock da questa produzione?"
+#: templates/js/translated/build.js:468
+msgid "Are you sure you wish to deallocate the selected stock items from this build?"
+msgstr ""
-#: templates/js/translated/build.js:480
-msgid "Unallocate Stock Items"
-msgstr "Non assegnare Elementi Stock"
+#: templates/js/translated/build.js:486
+msgid "Deallocate Stock Items"
+msgstr ""
-#: templates/js/translated/build.js:566 templates/js/translated/build.js:690
-#: templates/js/translated/build.js:812
+#: templates/js/translated/build.js:572 templates/js/translated/build.js:696
+#: templates/js/translated/build.js:818
msgid "Select Build Outputs"
msgstr "Seleziona Output di produzione"
-#: templates/js/translated/build.js:567 templates/js/translated/build.js:691
-#: templates/js/translated/build.js:813
+#: templates/js/translated/build.js:573 templates/js/translated/build.js:697
+#: templates/js/translated/build.js:819
msgid "At least one build output must be selected"
msgstr "Almeno un output di produzione deve essere selezionato"
-#: templates/js/translated/build.js:581
+#: templates/js/translated/build.js:587
msgid "Selected build outputs will be marked as complete"
msgstr ""
-#: templates/js/translated/build.js:585 templates/js/translated/build.js:715
-#: templates/js/translated/build.js:835
+#: templates/js/translated/build.js:591 templates/js/translated/build.js:721
+#: templates/js/translated/build.js:841
msgid "Output"
msgstr "Output"
-#: templates/js/translated/build.js:609
+#: templates/js/translated/build.js:615
msgid "Complete Build Outputs"
msgstr "Completa l'output di produzione"
-#: templates/js/translated/build.js:706
+#: templates/js/translated/build.js:712
msgid "Selected build outputs will be marked as scrapped"
msgstr ""
-#: templates/js/translated/build.js:708
+#: templates/js/translated/build.js:714
msgid "Scrapped output are marked as rejected"
msgstr ""
-#: templates/js/translated/build.js:709
+#: templates/js/translated/build.js:715
msgid "Allocated stock items will no longer be available"
msgstr ""
-#: templates/js/translated/build.js:710
+#: templates/js/translated/build.js:716
msgid "The completion status of the build order will not be adjusted"
msgstr ""
-#: templates/js/translated/build.js:737
+#: templates/js/translated/build.js:743
msgid "Scrap Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:827
+#: templates/js/translated/build.js:833
msgid "Selected build outputs will be deleted"
msgstr ""
-#: templates/js/translated/build.js:829
+#: templates/js/translated/build.js:835
msgid "Build output data will be permanently deleted"
msgstr ""
-#: templates/js/translated/build.js:830
+#: templates/js/translated/build.js:836
msgid "Allocated stock items will be returned to stock"
msgstr ""
-#: templates/js/translated/build.js:848
+#: templates/js/translated/build.js:854
msgid "Delete Build Outputs"
msgstr "Cancella l'output di produzione"
-#: templates/js/translated/build.js:934
+#: templates/js/translated/build.js:941
msgid "No build order allocations found"
msgstr "Nessuna allocazione per l'ordine di produzione trovato"
-#: templates/js/translated/build.js:971
+#: templates/js/translated/build.js:970 templates/js/translated/build.js:2270
+msgid "Allocated Quantity"
+msgstr ""
+
+#: templates/js/translated/build.js:984
msgid "Location not specified"
msgstr "Posizione non specificata"
-#: templates/js/translated/build.js:1047
+#: templates/js/translated/build.js:1006
+msgid "Complete outputs"
+msgstr "Completa gli outputs"
+
+#: templates/js/translated/build.js:1024
+msgid "Scrap outputs"
+msgstr ""
+
+#: templates/js/translated/build.js:1042
+msgid "Delete outputs"
+msgstr "Cancella l'output"
+
+#: templates/js/translated/build.js:1100
msgid "build output"
msgstr ""
-#: templates/js/translated/build.js:1048
+#: templates/js/translated/build.js:1101
msgid "build outputs"
msgstr ""
-#: templates/js/translated/build.js:1383
+#: templates/js/translated/build.js:1105
+msgid "Build output actions"
+msgstr ""
+
+#: templates/js/translated/build.js:1274
msgid "No active build outputs found"
msgstr "Nessun output di produzione attivo trovato"
-#: templates/js/translated/build.js:1457
-msgid "Allocated Stock"
-msgstr "Scorte Assegnate"
+#: templates/js/translated/build.js:1329
+msgid "Allocated Lines"
+msgstr ""
-#: templates/js/translated/build.js:1464
-msgid "No tracked BOM items for this build"
-msgstr "Nessun elemento Distinta Base tracciato per questa produzione"
+#: templates/js/translated/build.js:1343
+msgid "Required Tests"
+msgstr ""
-#: templates/js/translated/build.js:1486
-msgid "Completed Tests"
-msgstr "Test Completati"
-
-#: templates/js/translated/build.js:1491
-msgid "No required tests for this build"
-msgstr "Nessun test richiesto per questa produzione"
-
-#: templates/js/translated/build.js:2032 templates/js/translated/build.js:3056
-#: templates/js/translated/sales_order.js:1632
-msgid "Edit stock allocation"
-msgstr "Modifica allocazione magazzino"
-
-#: templates/js/translated/build.js:2034 templates/js/translated/build.js:3057
-#: templates/js/translated/sales_order.js:1633
-msgid "Delete stock allocation"
-msgstr "Elimina posizione giacenza"
-
-#: templates/js/translated/build.js:2050
-msgid "Edit Allocation"
-msgstr "Modifica Posizione"
-
-#: templates/js/translated/build.js:2060
-msgid "Remove Allocation"
-msgstr "Rimuovi Posizione"
-
-#: templates/js/translated/build.js:2086
-msgid "Substitute parts available"
-msgstr "Articoli sostitutivi disponibili"
-
-#: templates/js/translated/build.js:2122
-msgid "Quantity Per"
-msgstr "Quantità Per"
-
-#: templates/js/translated/build.js:2167
-#: templates/js/translated/sales_order.js:1894
-msgid "Insufficient stock available"
-msgstr "Scorte insufficienti disponibili"
-
-#: templates/js/translated/build.js:2169
-#: templates/js/translated/sales_order.js:1892
-msgid "Sufficient stock available"
-msgstr "Scorte sufficienti disponibili"
-
-#: templates/js/translated/build.js:2263
-#: templates/js/translated/sales_order.js:1993
-msgid "Build stock"
-msgstr "Produci scorta"
-
-#: templates/js/translated/build.js:2267 templates/stock_table.html:38
-msgid "Order stock"
-msgstr "Ordina scorta"
-
-#: templates/js/translated/build.js:2270
-#: templates/js/translated/sales_order.js:1987
-msgid "Allocate stock"
-msgstr "Assegna scorta"
-
-#: templates/js/translated/build.js:2310
-#: templates/js/translated/purchase_order.js:616
-#: templates/js/translated/sales_order.js:1159
+#: templates/js/translated/build.js:1502
+#: templates/js/translated/purchase_order.js:627
+#: templates/js/translated/sales_order.js:1171
msgid "Select Parts"
msgstr "Seleziona Articoli"
-#: templates/js/translated/build.js:2311
-#: templates/js/translated/sales_order.js:1160
+#: templates/js/translated/build.js:1503
+#: templates/js/translated/sales_order.js:1172
msgid "You must select at least one part to allocate"
msgstr "È necessario selezionare almeno un articolo da assegnare"
-#: templates/js/translated/build.js:2359
-#: templates/js/translated/sales_order.js:1109
+#: templates/js/translated/build.js:1566
+#: templates/js/translated/sales_order.js:1121
msgid "Specify stock allocation quantity"
msgstr "Specificare il quantitativo assegnato allo stock"
-#: templates/js/translated/build.js:2438
+#: templates/js/translated/build.js:1643
msgid "All Parts Allocated"
msgstr "Tutti gli articoli assegnati"
-#: templates/js/translated/build.js:2439
+#: templates/js/translated/build.js:1644
msgid "All selected parts have been fully allocated"
msgstr "Tutti gli articoli selezionati sono stati completamente assegnati"
-#: templates/js/translated/build.js:2453
-#: templates/js/translated/sales_order.js:1174
+#: templates/js/translated/build.js:1658
+#: templates/js/translated/sales_order.js:1186
msgid "Select source location (leave blank to take from all locations)"
msgstr "Seleziona la posizione di origine (lascia vuoto per prendere da tutte le posizioni)"
-#: templates/js/translated/build.js:2481
+#: templates/js/translated/build.js:1686
msgid "Allocate Stock Items to Build Order"
msgstr "Assegna gli Elementi Stock all'Ordine di Produzione"
-#: templates/js/translated/build.js:2492
-#: templates/js/translated/sales_order.js:1271
+#: templates/js/translated/build.js:1697
+#: templates/js/translated/sales_order.js:1283
msgid "No matching stock locations"
msgstr "Nessuna posizione di magazzino corrispondente"
-#: templates/js/translated/build.js:2565
-#: templates/js/translated/sales_order.js:1348
+#: templates/js/translated/build.js:1770
+#: templates/js/translated/sales_order.js:1360
msgid "No matching stock items"
msgstr "Nessun elemento corrispondente trovato"
-#: templates/js/translated/build.js:2662
+#: templates/js/translated/build.js:1867
msgid "Automatic Stock Allocation"
msgstr "Assegna Automaticamente Scorte"
-#: templates/js/translated/build.js:2663
+#: templates/js/translated/build.js:1868
msgid "Stock items will be automatically allocated to this build order, according to the provided guidelines"
msgstr "Gli elementi in magazzino saranno automaticamente assegnati a questo ordine di produzione, secondo le linee guida fornite"
-#: templates/js/translated/build.js:2665
+#: templates/js/translated/build.js:1870
msgid "If a location is specified, stock will only be allocated from that location"
msgstr "Se viene specificata una posizione, le scorte saranno assegnate solo da quella ubicazione"
-#: templates/js/translated/build.js:2666
+#: templates/js/translated/build.js:1871
msgid "If stock is considered interchangeable, it will be allocated from the first location it is found"
msgstr "Se lo stock è considerato intercambiabile, sarà assegnato dal primo luogo in cui viene trovato"
-#: templates/js/translated/build.js:2667
+#: templates/js/translated/build.js:1872
msgid "If substitute stock is allowed, it will be used where stock of the primary part cannot be found"
msgstr "Se lo stock sostitutivo è ammesso, sarà utilizzato nel caso in cui lo stock dell'articolo primario non possa essere trovato"
-#: templates/js/translated/build.js:2694
+#: templates/js/translated/build.js:1899
msgid "Allocate Stock Items"
msgstr "Assegna Elementi di Magazzino"
-#: templates/js/translated/build.js:2800
+#: templates/js/translated/build.js:2005
msgid "No builds matching query"
msgstr "Nessuna produzione corrispondente alla ricerca"
-#: templates/js/translated/build.js:2835 templates/js/translated/part.js:2208
-#: templates/js/translated/part.js:2692 templates/js/translated/stock.js:1759
-#: templates/js/translated/stock.js:2458
+#: templates/js/translated/build.js:2040 templates/js/translated/build.js:2408
+#: templates/js/translated/part.js:2284 templates/js/translated/part.js:2677
+#: templates/js/translated/stock.js:1899 templates/js/translated/stock.js:2589
msgid "Select"
msgstr "Seleziona"
-#: templates/js/translated/build.js:2849
+#: templates/js/translated/build.js:2054
msgid "Build order is overdue"
msgstr "L'ordine di produzione è in ritardo"
-#: templates/js/translated/build.js:2883
+#: templates/js/translated/build.js:2100
msgid "Progress"
msgstr "Avanzamento"
-#: templates/js/translated/build.js:2919 templates/js/translated/stock.js:2779
+#: templates/js/translated/build.js:2136 templates/js/translated/stock.js:2910
msgid "No user information"
msgstr "Nessuna informazione utente"
-#: templates/js/translated/build.js:2934
+#: templates/js/translated/build.js:2151
msgid "group"
msgstr "gruppo"
-#: templates/js/translated/build.js:3033
-msgid "No parts allocated for"
-msgstr "Nessun articolo assegnato per"
+#: templates/js/translated/build.js:2315
+#: templates/js/translated/sales_order.js:1644
+msgid "Edit stock allocation"
+msgstr "Modifica allocazione magazzino"
-#: templates/js/translated/company.js:87
+#: templates/js/translated/build.js:2316
+#: templates/js/translated/sales_order.js:1645
+msgid "Delete stock allocation"
+msgstr "Elimina posizione giacenza"
+
+#: templates/js/translated/build.js:2331
+msgid "Edit Allocation"
+msgstr "Modifica Posizione"
+
+#: templates/js/translated/build.js:2343
+msgid "Remove Allocation"
+msgstr "Rimuovi Posizione"
+
+#: templates/js/translated/build.js:2384
+msgid "build line"
+msgstr ""
+
+#: templates/js/translated/build.js:2385
+msgid "build lines"
+msgstr ""
+
+#: templates/js/translated/build.js:2403
+msgid "No build lines found"
+msgstr ""
+
+#: templates/js/translated/build.js:2433 templates/js/translated/part.js:767
+#: templates/js/translated/part.js:1175
+msgid "Trackable part"
+msgstr "Parte tracciabile"
+
+#: templates/js/translated/build.js:2468
+msgid "Unit Quantity"
+msgstr ""
+
+#: templates/js/translated/build.js:2517
+#: templates/js/translated/sales_order.js:1906
+msgid "Insufficient stock available"
+msgstr "Scorte insufficienti disponibili"
+
+#: templates/js/translated/build.js:2519
+#: templates/js/translated/sales_order.js:1904
+msgid "Sufficient stock available"
+msgstr "Scorte sufficienti disponibili"
+
+#: templates/js/translated/build.js:2566
+msgid "Consumable Item"
+msgstr ""
+
+#: templates/js/translated/build.js:2571
+msgid "Tracked item"
+msgstr ""
+
+#: templates/js/translated/build.js:2578
+#: templates/js/translated/sales_order.js:2005
+msgid "Build stock"
+msgstr "Produci scorta"
+
+#: templates/js/translated/build.js:2583 templates/js/translated/stock.js:1779
+msgid "Order stock"
+msgstr "Ordina scorta"
+
+#: templates/js/translated/build.js:2587
+#: templates/js/translated/sales_order.js:1999
+msgid "Allocate stock"
+msgstr "Assegna scorta"
+
+#: templates/js/translated/build.js:2591
+msgid "Remove stock allocation"
+msgstr ""
+
+#: templates/js/translated/company.js:97
msgid "Add Manufacturer"
msgstr "Aggiungi Produttore"
-#: templates/js/translated/company.js:100
-#: templates/js/translated/company.js:202
+#: templates/js/translated/company.js:110
+#: templates/js/translated/company.js:212
msgid "Add Manufacturer Part"
msgstr "Aggiungi Articolo Produttore"
-#: templates/js/translated/company.js:121
+#: templates/js/translated/company.js:131
msgid "Edit Manufacturer Part"
msgstr "Modifica Articolo Produttore"
-#: templates/js/translated/company.js:190
-#: templates/js/translated/purchase_order.js:94
+#: templates/js/translated/company.js:200
+#: templates/js/translated/purchase_order.js:93
msgid "Add Supplier"
msgstr "Aggiungi fornitore"
-#: templates/js/translated/company.js:232
-#: templates/js/translated/purchase_order.js:338
+#: templates/js/translated/company.js:242
+#: templates/js/translated/purchase_order.js:349
msgid "Add Supplier Part"
msgstr "Aggiungi fornitore articolo"
-#: templates/js/translated/company.js:333
+#: templates/js/translated/company.js:343
msgid "All selected supplier parts will be deleted"
msgstr "Tutte gli articoli del fornitore selezionati saranno eliminati"
-#: templates/js/translated/company.js:349
+#: templates/js/translated/company.js:359
msgid "Delete Supplier Parts"
msgstr "Cancella Articoli Fornitore"
-#: templates/js/translated/company.js:457
+#: templates/js/translated/company.js:464
msgid "Add new Company"
msgstr "Aggiungi nuova Azienda"
-#: templates/js/translated/company.js:528
+#: templates/js/translated/company.js:535
msgid "Parts Supplied"
msgstr "Fornitori articoli"
-#: templates/js/translated/company.js:537
+#: templates/js/translated/company.js:544
msgid "Parts Manufactured"
msgstr "Articoli prodotti"
-#: templates/js/translated/company.js:552
+#: templates/js/translated/company.js:559
msgid "No company information found"
msgstr "Nessuna informazione azienda trovata"
-#: templates/js/translated/company.js:601
+#: templates/js/translated/company.js:608
msgid "Create New Contact"
msgstr "Crea nuovo contatto"
-#: templates/js/translated/company.js:617
-#: templates/js/translated/company.js:740
+#: templates/js/translated/company.js:624
+#: templates/js/translated/company.js:747
msgid "Edit Contact"
msgstr "Modifica contatto"
-#: templates/js/translated/company.js:654
+#: templates/js/translated/company.js:661
msgid "All selected contacts will be deleted"
msgstr ""
-#: templates/js/translated/company.js:660
-#: templates/js/translated/company.js:724
+#: templates/js/translated/company.js:667
+#: templates/js/translated/company.js:731
msgid "Role"
msgstr "Ruolo"
-#: templates/js/translated/company.js:668
+#: templates/js/translated/company.js:675
msgid "Delete Contacts"
msgstr ""
-#: templates/js/translated/company.js:699
+#: templates/js/translated/company.js:706
msgid "No contacts found"
msgstr "Nessun contatto trovato"
-#: templates/js/translated/company.js:712
+#: templates/js/translated/company.js:719
msgid "Phone Number"
msgstr "Numero di telefono"
-#: templates/js/translated/company.js:718
+#: templates/js/translated/company.js:725
msgid "Email Address"
msgstr "Indirizzo email"
-#: templates/js/translated/company.js:744
+#: templates/js/translated/company.js:751
msgid "Delete Contact"
msgstr "Elimina contatto"
-#: templates/js/translated/company.js:818
+#: templates/js/translated/company.js:886
+msgid "Create New Address"
+msgstr ""
+
+#: templates/js/translated/company.js:901
+#: templates/js/translated/company.js:1066
+msgid "Edit Address"
+msgstr ""
+
+#: templates/js/translated/company.js:936
+msgid "All selected addresses will be deleted"
+msgstr ""
+
+#: templates/js/translated/company.js:950
+msgid "Delete Addresses"
+msgstr ""
+
+#: templates/js/translated/company.js:977
+msgid "No addresses found"
+msgstr ""
+
+#: templates/js/translated/company.js:1020
+msgid "Postal city"
+msgstr ""
+
+#: templates/js/translated/company.js:1026
+msgid "State/province"
+msgstr ""
+
+#: templates/js/translated/company.js:1038
+msgid "Courier notes"
+msgstr ""
+
+#: templates/js/translated/company.js:1044
+msgid "Internal notes"
+msgstr ""
+
+#: templates/js/translated/company.js:1070
+msgid "Delete Address"
+msgstr ""
+
+#: templates/js/translated/company.js:1143
msgid "All selected manufacturer parts will be deleted"
msgstr "Tutti gli articoli del produttore selezionati saranno eliminati"
-#: templates/js/translated/company.js:833
+#: templates/js/translated/company.js:1158
msgid "Delete Manufacturer Parts"
msgstr "Elimina Articoli Produttore"
-#: templates/js/translated/company.js:867
+#: templates/js/translated/company.js:1192
msgid "All selected parameters will be deleted"
msgstr "Tutti i parametri selezionati saranno cancellati"
-#: templates/js/translated/company.js:881
+#: templates/js/translated/company.js:1206
msgid "Delete Parameters"
msgstr "Elimina Parametri"
-#: templates/js/translated/company.js:917
+#: templates/js/translated/company.js:1222
+#: templates/js/translated/company.js:1510 templates/js/translated/part.js:2213
+msgid "Order parts"
+msgstr "Articoli ordinati"
+
+#: templates/js/translated/company.js:1239
+msgid "Delete manufacturer parts"
+msgstr "Elimina articoli produttore"
+
+#: templates/js/translated/company.js:1271
+msgid "Manufacturer part actions"
+msgstr ""
+
+#: templates/js/translated/company.js:1290
msgid "No manufacturer parts found"
msgstr "Nessun articolo produttore trovato"
-#: templates/js/translated/company.js:937
-#: templates/js/translated/company.js:1177 templates/js/translated/part.js:776
-#: templates/js/translated/part.js:1184
+#: templates/js/translated/company.js:1310
+#: templates/js/translated/company.js:1598 templates/js/translated/part.js:775
+#: templates/js/translated/part.js:1183
msgid "Template part"
msgstr "Modello Articolo"
-#: templates/js/translated/company.js:941
-#: templates/js/translated/company.js:1181 templates/js/translated/part.js:780
-#: templates/js/translated/part.js:1188
+#: templates/js/translated/company.js:1314
+#: templates/js/translated/company.js:1602 templates/js/translated/part.js:779
+#: templates/js/translated/part.js:1187
msgid "Assembled part"
msgstr "Articolo assemblato"
-#: templates/js/translated/company.js:1061 templates/js/translated/part.js:1437
+#: templates/js/translated/company.js:1434 templates/js/translated/part.js:1436
msgid "No parameters found"
msgstr "Nessun parametro trovato"
-#: templates/js/translated/company.js:1096 templates/js/translated/part.js:1500
+#: templates/js/translated/company.js:1469 templates/js/translated/part.js:1499
msgid "Edit parameter"
msgstr "Modifica parametro"
-#: templates/js/translated/company.js:1097 templates/js/translated/part.js:1501
+#: templates/js/translated/company.js:1470 templates/js/translated/part.js:1500
msgid "Delete parameter"
msgstr "Elimina il parametro"
-#: templates/js/translated/company.js:1114 templates/js/translated/part.js:1407
+#: templates/js/translated/company.js:1487 templates/js/translated/part.js:1406
msgid "Edit Parameter"
msgstr "Modifica parametro"
-#: templates/js/translated/company.js:1123 templates/js/translated/part.js:1522
+#: templates/js/translated/company.js:1496 templates/js/translated/part.js:1521
msgid "Delete Parameter"
msgstr "Elimina Parametri"
-#: templates/js/translated/company.js:1156
+#: templates/js/translated/company.js:1527
+msgid "Delete supplier parts"
+msgstr "Elimina articolo fornitore"
+
+#: templates/js/translated/company.js:1577
msgid "No supplier parts found"
msgstr "Nessun fornitore trovato"
-#: templates/js/translated/company.js:1274
+#: templates/js/translated/company.js:1695
msgid "Base Units"
msgstr ""
-#: templates/js/translated/company.js:1304
+#: templates/js/translated/company.js:1725
msgid "Availability"
msgstr "Disponibilità"
-#: templates/js/translated/company.js:1335
+#: templates/js/translated/company.js:1756
msgid "Edit supplier part"
msgstr "Modifica articolo fornitore"
-#: templates/js/translated/company.js:1336
+#: templates/js/translated/company.js:1757
msgid "Delete supplier part"
msgstr "Elimina articolo fornitore"
-#: templates/js/translated/company.js:1389
+#: templates/js/translated/company.js:1810
#: templates/js/translated/pricing.js:694
msgid "Delete Price Break"
msgstr "Elimina riduzione di prezzo"
-#: templates/js/translated/company.js:1399
+#: templates/js/translated/company.js:1820
#: templates/js/translated/pricing.js:712
msgid "Edit Price Break"
msgstr "Modifica Prezzo Limite"
-#: templates/js/translated/company.js:1414
+#: templates/js/translated/company.js:1835
msgid "No price break information found"
msgstr "Nessuna informazione di riduzione di prezzo trovata"
-#: templates/js/translated/company.js:1443
+#: templates/js/translated/company.js:1864
msgid "Last updated"
msgstr "Ultimo aggiornamento"
-#: templates/js/translated/company.js:1450
+#: templates/js/translated/company.js:1871
msgid "Edit price break"
msgstr "Modifica riduzione di prezzo"
-#: templates/js/translated/company.js:1451
+#: templates/js/translated/company.js:1872
msgid "Delete price break"
msgstr "Cancella riduzione di prezzo"
-#: templates/js/translated/filters.js:186
-#: templates/js/translated/filters.js:550
+#: templates/js/translated/filters.js:187
+#: templates/js/translated/filters.js:673
msgid "true"
msgstr "vero"
-#: templates/js/translated/filters.js:190
-#: templates/js/translated/filters.js:551
+#: templates/js/translated/filters.js:191
+#: templates/js/translated/filters.js:674
msgid "false"
msgstr "falso"
-#: templates/js/translated/filters.js:214
+#: templates/js/translated/filters.js:215
msgid "Select filter"
msgstr "Seleziona filtro"
-#: templates/js/translated/filters.js:328
+#: templates/js/translated/filters.js:438
msgid "Print Labels"
msgstr "Stampa Etichette"
-#: templates/js/translated/filters.js:332
+#: templates/js/translated/filters.js:442
msgid "Print Reports"
msgstr "Stampa report"
-#: templates/js/translated/filters.js:344
+#: templates/js/translated/filters.js:454
msgid "Download table data"
msgstr ""
-#: templates/js/translated/filters.js:351
+#: templates/js/translated/filters.js:461
msgid "Reload table data"
msgstr ""
-#: templates/js/translated/filters.js:360
+#: templates/js/translated/filters.js:470
msgid "Add new filter"
msgstr "Aggiungi nuovo filtro"
-#: templates/js/translated/filters.js:368
+#: templates/js/translated/filters.js:478
msgid "Clear all filters"
msgstr "Cancella tutti i filtri"
-#: templates/js/translated/filters.js:460
+#: templates/js/translated/filters.js:583
msgid "Create filter"
msgstr "Crea filtro"
@@ -10497,6 +10620,12 @@ msgstr "Operazione di eliminazione non consentita"
msgid "View operation not allowed"
msgstr "Mostra operazione non consentita"
+#: templates/js/translated/forms.js:506 templates/js/translated/helpers.js:105
+#: templates/js/translated/part.js:369 templates/js/translated/pricing.js:629
+#: templates/js/translated/stock.js:215 users/models.py:253
+msgid "Delete"
+msgstr "Elimina"
+
#: templates/js/translated/forms.js:752
msgid "Keep this form open"
msgstr "Mantieni aperto questo modulo"
@@ -10514,23 +10643,23 @@ msgstr "Esistono errori nel modulo"
msgid "No results found"
msgstr "Nessun risultato trovato"
-#: templates/js/translated/forms.js:2071 templates/js/translated/search.js:281
+#: templates/js/translated/forms.js:2071 templates/js/translated/search.js:239
msgid "Searching"
msgstr "Ricerca"
-#: templates/js/translated/forms.js:2276
+#: templates/js/translated/forms.js:2285
msgid "Clear input"
msgstr "Cancella input"
-#: templates/js/translated/forms.js:2733
+#: templates/js/translated/forms.js:2742
msgid "File Column"
msgstr "Colonna File"
-#: templates/js/translated/forms.js:2733
+#: templates/js/translated/forms.js:2742
msgid "Field Name"
msgstr "Nome del campo"
-#: templates/js/translated/forms.js:2745
+#: templates/js/translated/forms.js:2754
msgid "Select Columns"
msgstr "Seleziona Colonne"
@@ -10550,6 +10679,14 @@ msgstr ""
msgid "False"
msgstr ""
+#: templates/js/translated/index.js:99
+msgid "No parts required for builds"
+msgstr ""
+
+#: templates/js/translated/index.js:125
+msgid "Allocated Stock"
+msgstr ""
+
#: templates/js/translated/label.js:58
msgid "Select Printer"
msgstr "Seleziona Stampante"
@@ -10651,7 +10788,7 @@ msgstr "Nessuna notizia trovata"
#: templates/js/translated/news.js:38
#: templates/js/translated/notification.js:45
-#: templates/js/translated/part.js:1577
+#: templates/js/translated/part.js:1576
msgid "ID"
msgstr "ID"
@@ -10700,7 +10837,7 @@ msgid "Delete Line"
msgstr "Cancella Linea"
#: templates/js/translated/order.js:281
-#: templates/js/translated/purchase_order.js:1958
+#: templates/js/translated/purchase_order.js:1968
msgid "No line items found"
msgstr "Nessuna linea elementi trovata"
@@ -10716,363 +10853,355 @@ msgstr "Modifica linea"
msgid "Delete line"
msgstr "Cancella linea"
-#: templates/js/translated/part.js:91
+#: templates/js/translated/part.js:90
msgid "Part Attributes"
msgstr "Attributi Articolo"
-#: templates/js/translated/part.js:95
+#: templates/js/translated/part.js:94
msgid "Part Creation Options"
msgstr "Opzioni Creazione Articolo"
-#: templates/js/translated/part.js:99
+#: templates/js/translated/part.js:98
msgid "Part Duplication Options"
msgstr "Opzioni Duplicazione Articolo"
-#: templates/js/translated/part.js:122
+#: templates/js/translated/part.js:121
msgid "Add Part Category"
msgstr "Aggiungi Categoria Articolo"
-#: templates/js/translated/part.js:294
+#: templates/js/translated/part.js:293
msgid "Parent part category"
msgstr "Categoria articolo principale"
-#: templates/js/translated/part.js:310 templates/js/translated/stock.js:147
+#: templates/js/translated/part.js:309 templates/js/translated/stock.js:146
msgid "Icon (optional) - Explore all available icons on"
msgstr "Icona (opzionale) - Esplora tutte le icone disponibili su"
-#: templates/js/translated/part.js:330
+#: templates/js/translated/part.js:329
msgid "Create Part Category"
msgstr "Crea Categoria Articolo"
-#: templates/js/translated/part.js:333
+#: templates/js/translated/part.js:332
msgid "Create new category after this one"
msgstr "Crea una nuvoa categoria dopo questa"
-#: templates/js/translated/part.js:334
+#: templates/js/translated/part.js:333
msgid "Part category created"
msgstr ""
-#: templates/js/translated/part.js:348
+#: templates/js/translated/part.js:347
msgid "Edit Part Category"
msgstr "Modifica Categoria Articoli"
-#: templates/js/translated/part.js:361
+#: templates/js/translated/part.js:360
msgid "Are you sure you want to delete this part category?"
msgstr "Sei sicuro di voler eliminare questa categoria articolo?"
-#: templates/js/translated/part.js:366
+#: templates/js/translated/part.js:365
msgid "Move to parent category"
msgstr "Sposta nella categoria superiore"
-#: templates/js/translated/part.js:375
+#: templates/js/translated/part.js:374
msgid "Delete Part Category"
msgstr "Elimina categoria"
-#: templates/js/translated/part.js:379
+#: templates/js/translated/part.js:378
msgid "Action for parts in this category"
msgstr "Azione articoli in questa categoria"
-#: templates/js/translated/part.js:384
+#: templates/js/translated/part.js:383
msgid "Action for child categories"
msgstr "Azione per categorie secondarie"
-#: templates/js/translated/part.js:408
+#: templates/js/translated/part.js:407
msgid "Create Part"
msgstr "Crea Articolo"
-#: templates/js/translated/part.js:410
+#: templates/js/translated/part.js:409
msgid "Create another part after this one"
msgstr "Crea un altro articolo dopo questo"
-#: templates/js/translated/part.js:411
+#: templates/js/translated/part.js:410
msgid "Part created successfully"
msgstr "Articolo creato con successo"
-#: templates/js/translated/part.js:439
+#: templates/js/translated/part.js:438
msgid "Edit Part"
msgstr "Modifica l'articolo"
-#: templates/js/translated/part.js:441
+#: templates/js/translated/part.js:440
msgid "Part edited"
msgstr "Articolo modificato"
-#: templates/js/translated/part.js:452
+#: templates/js/translated/part.js:451
msgid "Create Part Variant"
msgstr "Crea Varianti Articolo"
-#: templates/js/translated/part.js:509
+#: templates/js/translated/part.js:508
msgid "Active Part"
msgstr "Articolo Attivo"
-#: templates/js/translated/part.js:510
+#: templates/js/translated/part.js:509
msgid "Part cannot be deleted as it is currently active"
msgstr "L'articolo non può essere eliminato poiché è attualmente attivo"
-#: templates/js/translated/part.js:524
+#: templates/js/translated/part.js:523
msgid "Deleting this part cannot be reversed"
msgstr "L'eliminazione di questo articolo non è reversibile"
-#: templates/js/translated/part.js:526
+#: templates/js/translated/part.js:525
msgid "Any stock items for this part will be deleted"
msgstr "Tutte le giacenze per questo articolo verranno eliminate"
-#: templates/js/translated/part.js:527
+#: templates/js/translated/part.js:526
msgid "This part will be removed from any Bills of Material"
msgstr "Questo articolo verrà eliminato da qualsiasi Fattura dei Materiali"
-#: templates/js/translated/part.js:528
+#: templates/js/translated/part.js:527
msgid "All manufacturer and supplier information for this part will be deleted"
msgstr "Tutte le informazioni del produttore e del fornitore per questo articolo verranno eliminate"
-#: templates/js/translated/part.js:535
+#: templates/js/translated/part.js:534
msgid "Delete Part"
msgstr "Cancella Articolo"
-#: templates/js/translated/part.js:571
+#: templates/js/translated/part.js:570
msgid "You are subscribed to notifications for this item"
msgstr "Sei iscritto alle notifiche per questo elemento"
-#: templates/js/translated/part.js:573
+#: templates/js/translated/part.js:572
msgid "You have subscribed to notifications for this item"
msgstr "Hai sottoscritto le notifiche per questo elemento"
-#: templates/js/translated/part.js:578
+#: templates/js/translated/part.js:577
msgid "Subscribe to notifications for this item"
msgstr "Sottoscrivi le notifiche per questo elemento"
-#: templates/js/translated/part.js:580
+#: templates/js/translated/part.js:579
msgid "You have unsubscribed to notifications for this item"
msgstr "Hai annullato l'iscrizione alle notifiche per questo elemento"
-#: templates/js/translated/part.js:597
+#: templates/js/translated/part.js:596
msgid "Validating the BOM will mark each line item as valid"
msgstr "La convalida della Distinta Base segnerà ogni voce di riga come valida"
-#: templates/js/translated/part.js:607
+#: templates/js/translated/part.js:606
msgid "Validate Bill of Materials"
msgstr "Convalida la distinta dei materiali"
-#: templates/js/translated/part.js:610
+#: templates/js/translated/part.js:609
msgid "Validated Bill of Materials"
msgstr "Valida Fattura dei Materiali"
-#: templates/js/translated/part.js:635
+#: templates/js/translated/part.js:634
msgid "Copy Bill of Materials"
msgstr "Copia Fattura dei Materiali"
-#: templates/js/translated/part.js:663
-#: templates/js/translated/table_filters.js:660
+#: templates/js/translated/part.js:662
+#: templates/js/translated/table_filters.js:682
msgid "Low stock"
msgstr "In esaurimento"
-#: templates/js/translated/part.js:666
+#: templates/js/translated/part.js:665
msgid "No stock available"
msgstr "Nessuno stock disponibile"
-#: templates/js/translated/part.js:726
+#: templates/js/translated/part.js:725
msgid "Demand"
msgstr "Richieste"
-#: templates/js/translated/part.js:749
+#: templates/js/translated/part.js:748
msgid "Unit"
msgstr "Unità"
-#: templates/js/translated/part.js:768 templates/js/translated/part.js:1176
-msgid "Trackable part"
-msgstr "Parte tracciabile"
-
-#: templates/js/translated/part.js:772 templates/js/translated/part.js:1180
+#: templates/js/translated/part.js:771 templates/js/translated/part.js:1179
msgid "Virtual part"
msgstr "Parte virtuale"
-#: templates/js/translated/part.js:784
+#: templates/js/translated/part.js:783
msgid "Subscribed part"
msgstr "Parte sottoscritta"
-#: templates/js/translated/part.js:788
+#: templates/js/translated/part.js:787
msgid "Salable part"
msgstr "Parte vendibile"
-#: templates/js/translated/part.js:863
+#: templates/js/translated/part.js:862
msgid "Schedule generation of a new stocktake report."
msgstr "Programmare la generazione di un nuovo report inventario."
-#: templates/js/translated/part.js:863
+#: templates/js/translated/part.js:862
msgid "Once complete, the stocktake report will be available for download."
msgstr "Una volta completato, il report inventario sarà disponibile per il download."
-#: templates/js/translated/part.js:871
+#: templates/js/translated/part.js:870
msgid "Generate Stocktake Report"
msgstr "Genera Report Inventario"
-#: templates/js/translated/part.js:875
+#: templates/js/translated/part.js:874
msgid "Stocktake report scheduled"
msgstr "Programma report inventario"
-#: templates/js/translated/part.js:1024
+#: templates/js/translated/part.js:1023
msgid "No stocktake information available"
msgstr "Nessuna informazione sull'inventario disponibile"
-#: templates/js/translated/part.js:1082 templates/js/translated/part.js:1118
+#: templates/js/translated/part.js:1081 templates/js/translated/part.js:1117
msgid "Edit Stocktake Entry"
msgstr "Modifica Voce Inventario"
-#: templates/js/translated/part.js:1086 templates/js/translated/part.js:1128
+#: templates/js/translated/part.js:1085 templates/js/translated/part.js:1127
msgid "Delete Stocktake Entry"
msgstr "Elimina Voce Inventario"
-#: templates/js/translated/part.js:1255
+#: templates/js/translated/part.js:1254
msgid "No variants found"
msgstr "Nessuna variante trovata"
-#: templates/js/translated/part.js:1572
+#: templates/js/translated/part.js:1571
msgid "No part parameter templates found"
msgstr "Nessun parametro dell'articolo templates trovato"
-#: templates/js/translated/part.js:1635
+#: templates/js/translated/part.js:1634
msgid "Edit Part Parameter Template"
msgstr "Modifica Parametro Articolo Template"
-#: templates/js/translated/part.js:1647
+#: templates/js/translated/part.js:1646
msgid "Any parameters which reference this template will also be deleted"
msgstr "Ogni parametro che fa riferimento a questo modello verrà eliminato"
-#: templates/js/translated/part.js:1655
+#: templates/js/translated/part.js:1654
msgid "Delete Part Parameter Template"
msgstr "Elimina Parametro Articolo Template"
-#: templates/js/translated/part.js:1689
-#: templates/js/translated/purchase_order.js:1618
+#: templates/js/translated/part.js:1688
+#: templates/js/translated/purchase_order.js:1633
msgid "No purchase orders found"
msgstr "Nessun ordine d'acquisto trovato"
-#: templates/js/translated/part.js:1832
-#: templates/js/translated/purchase_order.js:2121
-#: templates/js/translated/return_order.js:740
-#: templates/js/translated/sales_order.js:1855
+#: templates/js/translated/part.js:1831
+#: templates/js/translated/purchase_order.js:2131
+#: templates/js/translated/return_order.js:752
+#: templates/js/translated/sales_order.js:1867
msgid "This line item is overdue"
msgstr "Questo elemento è in ritardo"
-#: templates/js/translated/part.js:1877
-#: templates/js/translated/purchase_order.js:2188
+#: templates/js/translated/part.js:1876
+#: templates/js/translated/purchase_order.js:2198
msgid "Receive line item"
msgstr "Ricevi linea elemento"
-#: templates/js/translated/part.js:1944
+#: templates/js/translated/part.js:1943
msgid "Delete part relationship"
msgstr "Elimina relazione tra i componenti"
-#: templates/js/translated/part.js:1966
+#: templates/js/translated/part.js:1965
msgid "Delete Part Relationship"
msgstr "Elimina Relazione Articolo"
-#: templates/js/translated/part.js:2054 templates/js/translated/part.js:2366
+#: templates/js/translated/part.js:2053 templates/js/translated/part.js:2442
msgid "No parts found"
msgstr "Nessun articolo trovato"
-#: templates/js/translated/part.js:2192
-msgid "parts"
-msgstr ""
-
-#: templates/js/translated/part.js:2276
-msgid "No category"
-msgstr "Nessuna categoria"
-
-#: templates/js/translated/part.js:2390 templates/js/translated/part.js:2611
-#: templates/js/translated/stock.js:2417
-msgid "Display as list"
-msgstr "Visualizza come elenco"
-
-#: templates/js/translated/part.js:2406
-msgid "Display as grid"
-msgstr "Visualizza come griglia"
-
-#: templates/js/translated/part.js:2472
+#: templates/js/translated/part.js:2174
msgid "Set the part category for the selected parts"
msgstr "Imposta la categoria prodotto per i prodotti selezionati"
-#: templates/js/translated/part.js:2477
+#: templates/js/translated/part.js:2179
msgid "Set Part Category"
msgstr "Imposta categoria articolo"
+#: templates/js/translated/part.js:2204
+msgid "Set category"
+msgstr "Imposta categoria"
+
+#: templates/js/translated/part.js:2259
+msgid "parts"
+msgstr ""
+
+#: templates/js/translated/part.js:2352
+msgid "No category"
+msgstr "Nessuna categoria"
+
+#: templates/js/translated/part.js:2466 templates/js/translated/part.js:2596
+#: templates/js/translated/stock.js:2548
+msgid "Display as list"
+msgstr "Visualizza come elenco"
+
#: templates/js/translated/part.js:2482
-msgid "Select Part Category"
-msgstr "Seleziona Categoria Articolo"
+msgid "Display as grid"
+msgstr "Visualizza come griglia"
-#: templates/js/translated/part.js:2495
-msgid "Category is required"
-msgstr "Carica Sotto Categorie"
-
-#: templates/js/translated/part.js:2595
+#: templates/js/translated/part.js:2580
msgid "No subcategories found"
msgstr ""
-#: templates/js/translated/part.js:2631 templates/js/translated/stock.js:2437
+#: templates/js/translated/part.js:2616 templates/js/translated/stock.js:2568
msgid "Display as tree"
msgstr "Visualizza come struttura ad albero"
-#: templates/js/translated/part.js:2711
+#: templates/js/translated/part.js:2696
msgid "Load Subcategories"
msgstr "Carica Sotto Categorie"
-#: templates/js/translated/part.js:2727
+#: templates/js/translated/part.js:2712
msgid "Subscribed category"
msgstr "Categoria sottoscritta"
-#: templates/js/translated/part.js:2807
+#: templates/js/translated/part.js:2792
msgid "No test templates matching query"
msgstr "Nessun modello di test corrispondente"
-#: templates/js/translated/part.js:2858 templates/js/translated/stock.js:1380
+#: templates/js/translated/part.js:2843 templates/js/translated/stock.js:1379
msgid "Edit test result"
msgstr "Modificare il risultato del test"
-#: templates/js/translated/part.js:2859 templates/js/translated/stock.js:1381
-#: templates/js/translated/stock.js:1643
+#: templates/js/translated/part.js:2844 templates/js/translated/stock.js:1380
+#: templates/js/translated/stock.js:1642
msgid "Delete test result"
msgstr "Cancellare il risultato del test"
-#: templates/js/translated/part.js:2863
+#: templates/js/translated/part.js:2848
msgid "This test is defined for a parent part"
msgstr "Questo test è definito per un articolo principale"
-#: templates/js/translated/part.js:2879
+#: templates/js/translated/part.js:2864
msgid "Edit Test Result Template"
msgstr "Modifica Modello Risultato Test"
-#: templates/js/translated/part.js:2893
+#: templates/js/translated/part.js:2878
msgid "Delete Test Result Template"
msgstr "Elimina Modello Risultato Test"
-#: templates/js/translated/part.js:2972 templates/js/translated/part.js:2973
+#: templates/js/translated/part.js:2957 templates/js/translated/part.js:2958
msgid "No date specified"
msgstr "Nessuna data specificata"
-#: templates/js/translated/part.js:2975
+#: templates/js/translated/part.js:2960
msgid "Specified date is in the past"
msgstr "La data specificata è nel passato"
-#: templates/js/translated/part.js:2981
+#: templates/js/translated/part.js:2966
msgid "Speculative"
msgstr "Speculativo"
-#: templates/js/translated/part.js:3031
+#: templates/js/translated/part.js:3016
msgid "No scheduling information available for this part"
msgstr "Nessuna informazione di pianificazione disponibile per questo prodotto"
-#: templates/js/translated/part.js:3037
+#: templates/js/translated/part.js:3022
msgid "Error fetching scheduling information for this part"
msgstr "Errore nel recupero delle informazioni di programmazione per questo articolo"
-#: templates/js/translated/part.js:3133
+#: templates/js/translated/part.js:3118
msgid "Scheduled Stock Quantities"
msgstr "Quantità Di Scorte Programmate"
-#: templates/js/translated/part.js:3149
+#: templates/js/translated/part.js:3134
msgid "Maximum Quantity"
msgstr "Quantità Massima"
-#: templates/js/translated/part.js:3194
+#: templates/js/translated/part.js:3179
msgid "Minimum Stock Level"
msgstr "Livello Minimo Stock"
@@ -11168,234 +11297,234 @@ msgstr "Non sono disponibili dati varianti"
msgid "Variant Part"
msgstr "Variante Articolo"
-#: templates/js/translated/purchase_order.js:155
+#: templates/js/translated/purchase_order.js:166
msgid "Select purchase order to duplicate"
msgstr "Selezione l'ordine di acquisto da duplicare"
-#: templates/js/translated/purchase_order.js:162
+#: templates/js/translated/purchase_order.js:173
msgid "Duplicate Line Items"
msgstr "Duplica linee degli elementi"
-#: templates/js/translated/purchase_order.js:163
+#: templates/js/translated/purchase_order.js:174
msgid "Duplicate all line items from the selected order"
msgstr "Duplica tutte le linee elementi dall'ordine selezionato"
-#: templates/js/translated/purchase_order.js:170
+#: templates/js/translated/purchase_order.js:181
msgid "Duplicate Extra Lines"
msgstr "Duplica Linee Extra"
-#: templates/js/translated/purchase_order.js:171
+#: templates/js/translated/purchase_order.js:182
msgid "Duplicate extra line items from the selected order"
msgstr "Duplica elementi linee extra dall'ordine selezionato"
-#: templates/js/translated/purchase_order.js:192
+#: templates/js/translated/purchase_order.js:203
msgid "Edit Purchase Order"
msgstr "Modifica ordine d'acquisto"
-#: templates/js/translated/purchase_order.js:209
+#: templates/js/translated/purchase_order.js:220
msgid "Duplication Options"
msgstr "Opzioni Duplicazione"
-#: templates/js/translated/purchase_order.js:436
+#: templates/js/translated/purchase_order.js:447
msgid "Complete Purchase Order"
msgstr "Completa Ordine D'Acquisto"
-#: templates/js/translated/purchase_order.js:453
-#: templates/js/translated/return_order.js:195
-#: templates/js/translated/sales_order.js:485
+#: templates/js/translated/purchase_order.js:464
+#: templates/js/translated/return_order.js:207
+#: templates/js/translated/sales_order.js:497
msgid "Mark this order as complete?"
msgstr "Contrassegnare questo ordine come completato?"
-#: templates/js/translated/purchase_order.js:459
+#: templates/js/translated/purchase_order.js:470
msgid "All line items have been received"
msgstr "Tutti gli elementi della riga sono stati ricevuti"
-#: templates/js/translated/purchase_order.js:464
+#: templates/js/translated/purchase_order.js:475
msgid "This order has line items which have not been marked as received."
msgstr "Questo ordine ha elementi di riga che non sono stati contrassegnati come ricevuti."
-#: templates/js/translated/purchase_order.js:465
-#: templates/js/translated/sales_order.js:499
+#: templates/js/translated/purchase_order.js:476
+#: templates/js/translated/sales_order.js:511
msgid "Completing this order means that the order and line items will no longer be editable."
msgstr "Completare questo ordine significa che l'ordine e gli elementi della riga non saranno più modificabili."
-#: templates/js/translated/purchase_order.js:488
+#: templates/js/translated/purchase_order.js:499
msgid "Cancel Purchase Order"
msgstr "Annulla Ordine di Acquisto"
-#: templates/js/translated/purchase_order.js:493
+#: templates/js/translated/purchase_order.js:504
msgid "Are you sure you wish to cancel this purchase order?"
msgstr "Sei sicuro di voler annullare questo ordine di acquisto?"
-#: templates/js/translated/purchase_order.js:499
+#: templates/js/translated/purchase_order.js:510
msgid "This purchase order can not be cancelled"
msgstr "Questo ordine d'acquisto non può essere cancellato"
-#: templates/js/translated/purchase_order.js:520
-#: templates/js/translated/return_order.js:149
+#: templates/js/translated/purchase_order.js:531
+#: templates/js/translated/return_order.js:161
msgid "After placing this order, line items will no longer be editable."
msgstr "Dopo aver effettuato questo ordine, gli elementi della riga non saranno più modificabili."
-#: templates/js/translated/purchase_order.js:525
+#: templates/js/translated/purchase_order.js:536
msgid "Issue Purchase Order"
msgstr "Problema Ordine di Acquisto"
-#: templates/js/translated/purchase_order.js:617
+#: templates/js/translated/purchase_order.js:628
msgid "At least one purchaseable part must be selected"
msgstr "Deve essere selezionata almeno un articolo acquistabile"
-#: templates/js/translated/purchase_order.js:642
+#: templates/js/translated/purchase_order.js:653
msgid "Quantity to order"
msgstr "Quantità da ordinare"
-#: templates/js/translated/purchase_order.js:651
+#: templates/js/translated/purchase_order.js:662
msgid "New supplier part"
msgstr "Nuovo articolo fornitore"
-#: templates/js/translated/purchase_order.js:669
+#: templates/js/translated/purchase_order.js:680
msgid "New purchase order"
msgstr "Nuovo ordine d'acquisto"
-#: templates/js/translated/purchase_order.js:701
+#: templates/js/translated/purchase_order.js:712
msgid "Add to purchase order"
msgstr "Aggiungi ordine d'acquisto"
-#: templates/js/translated/purchase_order.js:845
+#: templates/js/translated/purchase_order.js:860
msgid "No matching supplier parts"
msgstr "Nessun fornitore articolo corrispondente"
-#: templates/js/translated/purchase_order.js:864
+#: templates/js/translated/purchase_order.js:879
msgid "No matching purchase orders"
msgstr "Nessun ordine di acquisto corrispondente trovato"
-#: templates/js/translated/purchase_order.js:1043
+#: templates/js/translated/purchase_order.js:1058
msgid "Select Line Items"
msgstr "Seleziona Linee Elementi"
-#: templates/js/translated/purchase_order.js:1044
-#: templates/js/translated/return_order.js:480
+#: templates/js/translated/purchase_order.js:1059
+#: templates/js/translated/return_order.js:492
msgid "At least one line item must be selected"
msgstr "È necessario selezionare almeno una linea elemento"
-#: templates/js/translated/purchase_order.js:1074
+#: templates/js/translated/purchase_order.js:1089
msgid "Received Quantity"
msgstr "Quantità Ricevuta"
-#: templates/js/translated/purchase_order.js:1085
+#: templates/js/translated/purchase_order.js:1100
msgid "Quantity to receive"
msgstr "Quantità da ricevere"
-#: templates/js/translated/purchase_order.js:1161
+#: templates/js/translated/purchase_order.js:1176
msgid "Stock Status"
msgstr "Stato giacenza"
-#: templates/js/translated/purchase_order.js:1175
+#: templates/js/translated/purchase_order.js:1190
msgid "Add barcode"
msgstr "Aggiungi codice a barre"
-#: templates/js/translated/purchase_order.js:1176
+#: templates/js/translated/purchase_order.js:1191
msgid "Remove barcode"
msgstr "Rimuovi il codice a barre"
-#: templates/js/translated/purchase_order.js:1179
+#: templates/js/translated/purchase_order.js:1194
msgid "Specify location"
msgstr "Specifica la posizione"
-#: templates/js/translated/purchase_order.js:1187
+#: templates/js/translated/purchase_order.js:1202
msgid "Add batch code"
msgstr "Aggiungi codice lotto"
-#: templates/js/translated/purchase_order.js:1198
+#: templates/js/translated/purchase_order.js:1213
msgid "Add serial numbers"
msgstr "Aggiungi numeri seriali"
-#: templates/js/translated/purchase_order.js:1250
+#: templates/js/translated/purchase_order.js:1265
msgid "Serials"
msgstr "Seriale"
-#: templates/js/translated/purchase_order.js:1275
+#: templates/js/translated/purchase_order.js:1290
msgid "Order Code"
msgstr "Codice ordine"
-#: templates/js/translated/purchase_order.js:1277
+#: templates/js/translated/purchase_order.js:1292
msgid "Quantity to Receive"
msgstr "Quantità da Ricevere"
-#: templates/js/translated/purchase_order.js:1299
-#: templates/js/translated/return_order.js:545
+#: templates/js/translated/purchase_order.js:1314
+#: templates/js/translated/return_order.js:557
msgid "Confirm receipt of items"
msgstr "Conferma la ricezione degli elementi"
-#: templates/js/translated/purchase_order.js:1300
+#: templates/js/translated/purchase_order.js:1315
msgid "Receive Purchase Order Items"
msgstr "Ricevi Elementi Ordine D'Acquisto"
-#: templates/js/translated/purchase_order.js:1368
+#: templates/js/translated/purchase_order.js:1383
msgid "Scan Item Barcode"
msgstr "Scansiona codice a barre"
-#: templates/js/translated/purchase_order.js:1369
+#: templates/js/translated/purchase_order.js:1384
msgid "Scan barcode on incoming item (must not match any existing stock items)"
msgstr "Scansiona il codice a barre sull'elemento in arrivo (non deve corrispondere a nessun articolo disponibile esistente)"
-#: templates/js/translated/purchase_order.js:1383
+#: templates/js/translated/purchase_order.js:1398
msgid "Invalid barcode data"
msgstr "Dati codice a barre non validi"
-#: templates/js/translated/purchase_order.js:1645
-#: templates/js/translated/return_order.js:274
-#: templates/js/translated/sales_order.js:762
-#: templates/js/translated/sales_order.js:986
+#: templates/js/translated/purchase_order.js:1660
+#: templates/js/translated/return_order.js:286
+#: templates/js/translated/sales_order.js:774
+#: templates/js/translated/sales_order.js:998
msgid "Order is overdue"
msgstr "L'Ordine è in ritardo"
-#: templates/js/translated/purchase_order.js:1707
-#: templates/js/translated/return_order.js:342
-#: templates/js/translated/sales_order.js:839
-#: templates/js/translated/sales_order.js:999
+#: templates/js/translated/purchase_order.js:1722
+#: templates/js/translated/return_order.js:354
+#: templates/js/translated/sales_order.js:851
+#: templates/js/translated/sales_order.js:1011
msgid "Items"
msgstr "Elementi"
-#: templates/js/translated/purchase_order.js:1806
+#: templates/js/translated/purchase_order.js:1821
msgid "All selected Line items will be deleted"
msgstr ""
-#: templates/js/translated/purchase_order.js:1824
+#: templates/js/translated/purchase_order.js:1839
msgid "Delete selected Line items?"
msgstr ""
-#: templates/js/translated/purchase_order.js:1884
-#: templates/js/translated/sales_order.js:2047
+#: templates/js/translated/purchase_order.js:1894
+#: templates/js/translated/sales_order.js:2059
msgid "Duplicate Line Item"
msgstr "Duplica Linee Elementi"
-#: templates/js/translated/purchase_order.js:1899
-#: templates/js/translated/return_order.js:464
-#: templates/js/translated/return_order.js:653
-#: templates/js/translated/sales_order.js:2060
+#: templates/js/translated/purchase_order.js:1909
+#: templates/js/translated/return_order.js:476
+#: templates/js/translated/return_order.js:665
+#: templates/js/translated/sales_order.js:2072
msgid "Edit Line Item"
msgstr "Modifica Linee Elementi"
-#: templates/js/translated/purchase_order.js:1910
-#: templates/js/translated/return_order.js:666
-#: templates/js/translated/sales_order.js:2071
+#: templates/js/translated/purchase_order.js:1920
+#: templates/js/translated/return_order.js:678
+#: templates/js/translated/sales_order.js:2083
msgid "Delete Line Item"
msgstr "Cancella Linea Elemento"
-#: templates/js/translated/purchase_order.js:2192
-#: templates/js/translated/sales_order.js:2001
+#: templates/js/translated/purchase_order.js:2202
+#: templates/js/translated/sales_order.js:2013
msgid "Duplicate line item"
msgstr "Duplica linea elemento"
-#: templates/js/translated/purchase_order.js:2193
-#: templates/js/translated/return_order.js:785
-#: templates/js/translated/sales_order.js:2002
+#: templates/js/translated/purchase_order.js:2203
+#: templates/js/translated/return_order.js:797
+#: templates/js/translated/sales_order.js:2014
msgid "Edit line item"
msgstr "Modifica linea elemento"
-#: templates/js/translated/purchase_order.js:2194
-#: templates/js/translated/return_order.js:789
-#: templates/js/translated/sales_order.js:2008
+#: templates/js/translated/purchase_order.js:2204
+#: templates/js/translated/return_order.js:801
+#: templates/js/translated/sales_order.js:2020
msgid "Delete line item"
msgstr "Cancella linea elemento"
@@ -11424,941 +11553,973 @@ msgstr ""
msgid "Add Customer"
msgstr "Aggiungi cliente"
-#: templates/js/translated/return_order.js:119
+#: templates/js/translated/return_order.js:131
msgid "Create Return Order"
msgstr "Crea Ordine Di Reso"
-#: templates/js/translated/return_order.js:134
+#: templates/js/translated/return_order.js:146
msgid "Edit Return Order"
msgstr "Modifica Ordine Di Reso"
-#: templates/js/translated/return_order.js:154
+#: templates/js/translated/return_order.js:166
msgid "Issue Return Order"
msgstr ""
-#: templates/js/translated/return_order.js:171
+#: templates/js/translated/return_order.js:183
msgid "Are you sure you wish to cancel this Return Order?"
msgstr ""
-#: templates/js/translated/return_order.js:178
+#: templates/js/translated/return_order.js:190
msgid "Cancel Return Order"
msgstr ""
-#: templates/js/translated/return_order.js:203
+#: templates/js/translated/return_order.js:215
msgid "Complete Return Order"
msgstr ""
-#: templates/js/translated/return_order.js:251
+#: templates/js/translated/return_order.js:263
msgid "No return orders found"
msgstr ""
-#: templates/js/translated/return_order.js:288
-#: templates/js/translated/sales_order.js:776
+#: templates/js/translated/return_order.js:300
+#: templates/js/translated/sales_order.js:788
msgid "Invalid Customer"
msgstr "Cliente non valido"
-#: templates/js/translated/return_order.js:546
+#: templates/js/translated/return_order.js:558
msgid "Receive Return Order Items"
msgstr ""
-#: templates/js/translated/return_order.js:677
-#: templates/js/translated/sales_order.js:2207
+#: templates/js/translated/return_order.js:689
+#: templates/js/translated/sales_order.js:2219
msgid "No matching line items"
msgstr "Nessun elemento di riga corrispondente"
-#: templates/js/translated/return_order.js:782
+#: templates/js/translated/return_order.js:794
msgid "Mark item as received"
msgstr ""
-#: templates/js/translated/sales_order.js:146
+#: templates/js/translated/sales_order.js:158
msgid "Create Sales Order"
msgstr "Crea Ordine di Vendita"
-#: templates/js/translated/sales_order.js:161
+#: templates/js/translated/sales_order.js:173
msgid "Edit Sales Order"
msgstr "Modifica Ordine di Vendita"
-#: templates/js/translated/sales_order.js:276
+#: templates/js/translated/sales_order.js:288
msgid "No stock items have been allocated to this shipment"
msgstr "Nessun elemento di magazzino disponibile è stato assegnato a questa spedizione"
-#: templates/js/translated/sales_order.js:281
+#: templates/js/translated/sales_order.js:293
msgid "The following stock items will be shipped"
msgstr "I seguenti elementi in magazzino saranno spediti"
-#: templates/js/translated/sales_order.js:321
+#: templates/js/translated/sales_order.js:333
msgid "Complete Shipment"
msgstr "Completa Spedizione"
-#: templates/js/translated/sales_order.js:345
+#: templates/js/translated/sales_order.js:357
msgid "Confirm Shipment"
msgstr "Conferma Spedizione"
-#: templates/js/translated/sales_order.js:401
+#: templates/js/translated/sales_order.js:413
msgid "No pending shipments found"
msgstr "Nessuna spedizione in sospeso trovata"
-#: templates/js/translated/sales_order.js:405
+#: templates/js/translated/sales_order.js:417
msgid "No stock items have been allocated to pending shipments"
msgstr "Nessun elemento di magazzino disponibile è stato assegnato a questa spedizione"
-#: templates/js/translated/sales_order.js:415
+#: templates/js/translated/sales_order.js:427
msgid "Complete Shipments"
msgstr "Spedizioni Completate"
-#: templates/js/translated/sales_order.js:437
+#: templates/js/translated/sales_order.js:449
msgid "Skip"
msgstr "Salta"
-#: templates/js/translated/sales_order.js:498
+#: templates/js/translated/sales_order.js:510
msgid "This order has line items which have not been completed."
msgstr "Questo ordine ha elementi di riga che non sono stati completati."
-#: templates/js/translated/sales_order.js:520
+#: templates/js/translated/sales_order.js:532
msgid "Issue this Sales Order?"
msgstr ""
-#: templates/js/translated/sales_order.js:525
+#: templates/js/translated/sales_order.js:537
msgid "Issue Sales Order"
msgstr ""
-#: templates/js/translated/sales_order.js:544
+#: templates/js/translated/sales_order.js:556
msgid "Cancel Sales Order"
msgstr "Annulla Ordine di Vendita"
-#: templates/js/translated/sales_order.js:549
+#: templates/js/translated/sales_order.js:561
msgid "Cancelling this order means that the order will no longer be editable."
msgstr "Cancellando questo ordine, l'ordine non sarà più modificabile."
-#: templates/js/translated/sales_order.js:603
+#: templates/js/translated/sales_order.js:615
msgid "Create New Shipment"
msgstr "Crea Nuova Spedizione"
-#: templates/js/translated/sales_order.js:713
+#: templates/js/translated/sales_order.js:725
msgid "No sales orders found"
msgstr "Non sono state trovati ordini di vendita"
-#: templates/js/translated/sales_order.js:896
+#: templates/js/translated/sales_order.js:908
msgid "Edit shipment"
msgstr "Modifica spedizione"
-#: templates/js/translated/sales_order.js:899
+#: templates/js/translated/sales_order.js:911
msgid "Complete shipment"
msgstr "Completa spedizione"
-#: templates/js/translated/sales_order.js:904
+#: templates/js/translated/sales_order.js:916
msgid "Delete shipment"
msgstr "Elimina spedizione"
-#: templates/js/translated/sales_order.js:921
+#: templates/js/translated/sales_order.js:933
msgid "Edit Shipment"
msgstr "Modifica spedizione"
-#: templates/js/translated/sales_order.js:936
+#: templates/js/translated/sales_order.js:948
msgid "Delete Shipment"
msgstr "Elimina Spedizione"
-#: templates/js/translated/sales_order.js:969
+#: templates/js/translated/sales_order.js:981
msgid "No matching shipments found"
msgstr "Nessuna spedizione corrispondente trovata"
-#: templates/js/translated/sales_order.js:994
+#: templates/js/translated/sales_order.js:1006
msgid "Shipment Reference"
msgstr "Riferimento della spedizione"
-#: templates/js/translated/sales_order.js:1018
-#: templates/js/translated/sales_order.js:1515
+#: templates/js/translated/sales_order.js:1030
+#: templates/js/translated/sales_order.js:1527
msgid "Not shipped"
msgstr "Non spedito"
-#: templates/js/translated/sales_order.js:1036
+#: templates/js/translated/sales_order.js:1048
msgid "Tracking"
msgstr "Tracciamento"
-#: templates/js/translated/sales_order.js:1040
+#: templates/js/translated/sales_order.js:1052
msgid "Invoice"
msgstr "Fattura"
-#: templates/js/translated/sales_order.js:1207
+#: templates/js/translated/sales_order.js:1219
msgid "Add Shipment"
msgstr "Aggiungi Spedizione"
-#: templates/js/translated/sales_order.js:1258
+#: templates/js/translated/sales_order.js:1270
msgid "Confirm stock allocation"
msgstr "Conferma l'assegnazione della giacenza"
-#: templates/js/translated/sales_order.js:1259
+#: templates/js/translated/sales_order.js:1271
msgid "Allocate Stock Items to Sales Order"
msgstr "Assegna Elementi di Magazzino all'Ordine di Vendita"
-#: templates/js/translated/sales_order.js:1463
+#: templates/js/translated/sales_order.js:1475
msgid "No sales order allocations found"
msgstr "Nessun ordine di vendita trovato"
-#: templates/js/translated/sales_order.js:1555
+#: templates/js/translated/sales_order.js:1567
msgid "Edit Stock Allocation"
msgstr "Modifica posizione giacenza"
-#: templates/js/translated/sales_order.js:1569
+#: templates/js/translated/sales_order.js:1581
msgid "Confirm Delete Operation"
msgstr "Conferma Operazione Eliminazione"
-#: templates/js/translated/sales_order.js:1570
+#: templates/js/translated/sales_order.js:1582
msgid "Delete Stock Allocation"
msgstr "Elimina posizione giacenza"
-#: templates/js/translated/sales_order.js:1609
-#: templates/js/translated/sales_order.js:1696
-#: templates/js/translated/stock.js:1688
+#: templates/js/translated/sales_order.js:1621
+#: templates/js/translated/sales_order.js:1708
+#: templates/js/translated/stock.js:1687
msgid "Shipped to customer"
msgstr "Spedito al cliente"
-#: templates/js/translated/sales_order.js:1617
-#: templates/js/translated/sales_order.js:1705
+#: templates/js/translated/sales_order.js:1629
+#: templates/js/translated/sales_order.js:1717
msgid "Stock location not specified"
msgstr "Nessun posizione specificata"
-#: templates/js/translated/sales_order.js:1985
+#: templates/js/translated/sales_order.js:1997
msgid "Allocate serial numbers"
msgstr "Assegna Numeri di Serie"
-#: templates/js/translated/sales_order.js:1989
+#: templates/js/translated/sales_order.js:2001
msgid "Purchase stock"
msgstr "Prezzo d'acquisto"
-#: templates/js/translated/sales_order.js:1998
-#: templates/js/translated/sales_order.js:2185
+#: templates/js/translated/sales_order.js:2010
+#: templates/js/translated/sales_order.js:2197
msgid "Calculate price"
msgstr "Calcola il prezzo"
-#: templates/js/translated/sales_order.js:2012
+#: templates/js/translated/sales_order.js:2024
msgid "Cannot be deleted as items have been shipped"
msgstr "Non può essere eliminato perché gli elementi sono stati spediti"
-#: templates/js/translated/sales_order.js:2015
+#: templates/js/translated/sales_order.js:2027
msgid "Cannot be deleted as items have been allocated"
msgstr "Non può essere eliminato perché gli elementi sono stati assegnati"
-#: templates/js/translated/sales_order.js:2086
+#: templates/js/translated/sales_order.js:2098
msgid "Allocate Serial Numbers"
msgstr "Assegna Numeri di Serie"
-#: templates/js/translated/sales_order.js:2193
+#: templates/js/translated/sales_order.js:2205
msgid "Update Unit Price"
msgstr "Aggiorna Prezzo Unitario"
-#: templates/js/translated/search.js:312
+#: templates/js/translated/search.js:270
msgid "No results"
msgstr "Nessun risultato"
-#: templates/js/translated/search.js:334 templates/search.html:25
+#: templates/js/translated/search.js:292 templates/search.html:25
msgid "Enter search query"
msgstr ""
-#: templates/js/translated/search.js:384
+#: templates/js/translated/search.js:342
msgid "result"
msgstr "risultato"
-#: templates/js/translated/search.js:384
+#: templates/js/translated/search.js:342
msgid "results"
msgstr "risultati"
-#: templates/js/translated/search.js:394
+#: templates/js/translated/search.js:352
msgid "Minimize results"
msgstr "Minimizza risultati"
-#: templates/js/translated/search.js:397
+#: templates/js/translated/search.js:355
msgid "Remove results"
msgstr "Rimuovi risultati"
-#: templates/js/translated/stock.js:98
+#: templates/js/translated/stock.js:97
msgid "Serialize Stock Item"
msgstr "Serializza Elementi di Magazzino"
-#: templates/js/translated/stock.js:129
+#: templates/js/translated/stock.js:128
msgid "Confirm Stock Serialization"
msgstr "Conferma Serializzazione Magazzino"
-#: templates/js/translated/stock.js:138
+#: templates/js/translated/stock.js:137
msgid "Parent stock location"
msgstr "Posizione giacenza principale"
-#: templates/js/translated/stock.js:173
+#: templates/js/translated/stock.js:172
msgid "Edit Stock Location"
msgstr "Modifica Posizione Giacenza"
-#: templates/js/translated/stock.js:188
+#: templates/js/translated/stock.js:187
msgid "New Stock Location"
msgstr "Nuova posizione giacenza"
-#: templates/js/translated/stock.js:190
+#: templates/js/translated/stock.js:189
msgid "Create another location after this one"
msgstr "Crea un'altra posizione dopo questa"
-#: templates/js/translated/stock.js:191
+#: templates/js/translated/stock.js:190
msgid "Stock location created"
msgstr "Posizione magazzino creata"
-#: templates/js/translated/stock.js:205
+#: templates/js/translated/stock.js:204
msgid "Are you sure you want to delete this stock location?"
msgstr "Sei sicuro di voler eliminare questa posizione?"
-#: templates/js/translated/stock.js:212
+#: templates/js/translated/stock.js:211
msgid "Move to parent stock location"
msgstr "Sposta nella posizione principale magazzino"
-#: templates/js/translated/stock.js:221
+#: templates/js/translated/stock.js:220
msgid "Delete Stock Location"
msgstr "Elimina Posizione di Giacenza"
-#: templates/js/translated/stock.js:225
+#: templates/js/translated/stock.js:224
msgid "Action for stock items in this stock location"
msgstr "Azione per gli elementi stock in questa posizione magazzino"
-#: templates/js/translated/stock.js:230
+#: templates/js/translated/stock.js:229
msgid "Action for sub-locations"
msgstr "Azione per sotto-ubicazioni"
-#: templates/js/translated/stock.js:284
+#: templates/js/translated/stock.js:283
msgid "This part cannot be serialized"
msgstr "Questo articolo non può essere serializzato"
-#: templates/js/translated/stock.js:320
+#: templates/js/translated/stock.js:319
msgid "Add given quantity as packs instead of individual items"
msgstr ""
-#: templates/js/translated/stock.js:329
+#: templates/js/translated/stock.js:328
msgid "Enter initial quantity for this stock item"
msgstr "Inserisci quantità iniziale per questo articolo in giacenza"
-#: templates/js/translated/stock.js:335
+#: templates/js/translated/stock.js:334
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:406
+#: templates/js/translated/stock.js:405
msgid "Stock item duplicated"
msgstr "Elemento di magazzino duplicato"
-#: templates/js/translated/stock.js:426
+#: templates/js/translated/stock.js:425
msgid "Duplicate Stock Item"
msgstr "Duplica elemento di magazzino"
-#: templates/js/translated/stock.js:442
+#: templates/js/translated/stock.js:441
msgid "Are you sure you want to delete this stock item?"
msgstr "Sei sicuro di voler rimuovere questo elemento di magazzino?"
-#: templates/js/translated/stock.js:447
+#: templates/js/translated/stock.js:446
msgid "Delete Stock Item"
msgstr "Cancella Elemento di Magazzino"
-#: templates/js/translated/stock.js:468
+#: templates/js/translated/stock.js:467
msgid "Edit Stock Item"
msgstr "Modifica elemento magazzino"
-#: templates/js/translated/stock.js:510
+#: templates/js/translated/stock.js:509
msgid "Create another item after this one"
msgstr "Crea un altro oggetto dopo questo"
-#: templates/js/translated/stock.js:522
+#: templates/js/translated/stock.js:521
msgid "Created new stock item"
msgstr "Crea nuova allocazione magazzino"
-#: templates/js/translated/stock.js:535
+#: templates/js/translated/stock.js:534
msgid "Created multiple stock items"
msgstr "Creato più elementi stock"
-#: templates/js/translated/stock.js:560
+#: templates/js/translated/stock.js:559
msgid "Find Serial Number"
msgstr "Trova Numero Di Serie"
-#: templates/js/translated/stock.js:564 templates/js/translated/stock.js:565
+#: templates/js/translated/stock.js:563 templates/js/translated/stock.js:564
msgid "Enter serial number"
msgstr "Inserisci numero di serie"
-#: templates/js/translated/stock.js:581
+#: templates/js/translated/stock.js:580
msgid "Enter a serial number"
msgstr "Inserisci un numero di serie"
-#: templates/js/translated/stock.js:601
+#: templates/js/translated/stock.js:600
msgid "No matching serial number"
msgstr "Nessun numero di serie corrispondente"
-#: templates/js/translated/stock.js:610
+#: templates/js/translated/stock.js:609
msgid "More than one matching result found"
msgstr "Trovati più di un risultato corrispondente"
-#: templates/js/translated/stock.js:718
+#: templates/js/translated/stock.js:717
msgid "Confirm stock assignment"
msgstr "Conferma l'assegnazione delle scorte"
-#: templates/js/translated/stock.js:719
+#: templates/js/translated/stock.js:718
msgid "Assign Stock to Customer"
msgstr "Assegnare la scorta al cliente"
-#: templates/js/translated/stock.js:796
+#: templates/js/translated/stock.js:795
msgid "Warning: Merge operation cannot be reversed"
msgstr "Attenzione: L'operazione di unione non può essere annullata"
-#: templates/js/translated/stock.js:797
+#: templates/js/translated/stock.js:796
msgid "Some information will be lost when merging stock items"
msgstr "Alcune informazioni andranno perse durante la fusione degli articoli di magazzino"
-#: templates/js/translated/stock.js:799
+#: templates/js/translated/stock.js:798
msgid "Stock transaction history will be deleted for merged items"
msgstr "La cronologia delle transazioni di magazzino verrà eliminata per gli articoli uniti"
-#: templates/js/translated/stock.js:800
+#: templates/js/translated/stock.js:799
msgid "Supplier part information will be deleted for merged items"
msgstr "Le informazioni sulle parti del fornitore verranno eliminate per gli articoli uniti"
-#: templates/js/translated/stock.js:891
+#: templates/js/translated/stock.js:890
msgid "Confirm stock item merge"
msgstr "Confermare l'unione degli articoli di magazzino"
-#: templates/js/translated/stock.js:892
+#: templates/js/translated/stock.js:891
msgid "Merge Stock Items"
msgstr "Unire gli articoli di magazzino"
-#: templates/js/translated/stock.js:987
+#: templates/js/translated/stock.js:986
msgid "Transfer Stock"
msgstr "Trasferisci giacenza"
-#: templates/js/translated/stock.js:988
+#: templates/js/translated/stock.js:987
msgid "Move"
msgstr "Sposta"
-#: templates/js/translated/stock.js:994
+#: templates/js/translated/stock.js:993
msgid "Count Stock"
msgstr "Conta giacenza"
-#: templates/js/translated/stock.js:995
+#: templates/js/translated/stock.js:994
msgid "Count"
msgstr "Conta"
-#: templates/js/translated/stock.js:999
+#: templates/js/translated/stock.js:998
msgid "Remove Stock"
msgstr "Rimuovi giacenza"
-#: templates/js/translated/stock.js:1000
+#: templates/js/translated/stock.js:999
msgid "Take"
msgstr "Prendi"
-#: templates/js/translated/stock.js:1004
+#: templates/js/translated/stock.js:1003
msgid "Add Stock"
msgstr "Aggiungi giacenza"
-#: templates/js/translated/stock.js:1005 users/models.py:243
+#: templates/js/translated/stock.js:1004 users/models.py:249
msgid "Add"
msgstr "Aggiungi"
-#: templates/js/translated/stock.js:1009
+#: templates/js/translated/stock.js:1008
msgid "Delete Stock"
msgstr "Elimina Stock"
-#: templates/js/translated/stock.js:1106
+#: templates/js/translated/stock.js:1105
msgid "Quantity cannot be adjusted for serialized stock"
msgstr "La quantità non può essere regolata per le scorte serializzate"
-#: templates/js/translated/stock.js:1106
+#: templates/js/translated/stock.js:1105
msgid "Specify stock quantity"
msgstr "Specificare la quantità di magazzino"
-#: templates/js/translated/stock.js:1140
+#: templates/js/translated/stock.js:1139 templates/js/translated/stock.js:3151
msgid "Select Stock Items"
msgstr "Seleziona Elementi Magazzino"
-#: templates/js/translated/stock.js:1141
-msgid "You must select at least one available stock item"
-msgstr "Devi selezionare almeno un articolo disponibile"
+#: templates/js/translated/stock.js:1140
+msgid "Select at least one available stock item"
+msgstr ""
-#: templates/js/translated/stock.js:1168
+#: templates/js/translated/stock.js:1167
msgid "Confirm stock adjustment"
msgstr "Confermare l'adeguamento delle scorte"
-#: templates/js/translated/stock.js:1304
+#: templates/js/translated/stock.js:1303
msgid "PASS"
msgstr "OK"
-#: templates/js/translated/stock.js:1306
+#: templates/js/translated/stock.js:1305
msgid "FAIL"
msgstr "FALLITO"
-#: templates/js/translated/stock.js:1311
+#: templates/js/translated/stock.js:1310
msgid "NO RESULT"
msgstr "NESSUN RISULTATO"
-#: templates/js/translated/stock.js:1373
+#: templates/js/translated/stock.js:1372
msgid "Pass test"
msgstr "Test OK"
-#: templates/js/translated/stock.js:1376
+#: templates/js/translated/stock.js:1375
msgid "Add test result"
msgstr "Aggiungi risultato test"
-#: templates/js/translated/stock.js:1400
+#: templates/js/translated/stock.js:1399
msgid "No test results found"
msgstr "Nessun risultato di prova trovato"
-#: templates/js/translated/stock.js:1464
+#: templates/js/translated/stock.js:1463
msgid "Test Date"
msgstr "Data del test"
-#: templates/js/translated/stock.js:1626
+#: templates/js/translated/stock.js:1625
msgid "Edit Test Result"
msgstr "Modifica del risultato del test"
-#: templates/js/translated/stock.js:1648
+#: templates/js/translated/stock.js:1647
msgid "Delete Test Result"
msgstr "Cancellare il risultato del test"
-#: templates/js/translated/stock.js:1680
+#: templates/js/translated/stock.js:1679
msgid "In production"
msgstr "In produzione"
-#: templates/js/translated/stock.js:1684
+#: templates/js/translated/stock.js:1683
msgid "Installed in Stock Item"
msgstr "Installato nell'elemento stock"
-#: templates/js/translated/stock.js:1692
+#: templates/js/translated/stock.js:1691
msgid "Assigned to Sales Order"
msgstr "Assegnato all'ordine di vendita"
-#: templates/js/translated/stock.js:1698
+#: templates/js/translated/stock.js:1697
msgid "No stock location set"
msgstr "Nessuna giacenza impostata"
-#: templates/js/translated/stock.js:1746
+#: templates/js/translated/stock.js:1753
+msgid "Change stock status"
+msgstr ""
+
+#: templates/js/translated/stock.js:1762
+msgid "Merge stock"
+msgstr "Unisce la giacenza"
+
+#: templates/js/translated/stock.js:1811
+msgid "Delete stock"
+msgstr "Elimina Stock"
+
+#: templates/js/translated/stock.js:1866
msgid "stock items"
msgstr ""
-#: templates/js/translated/stock.js:1850
+#: templates/js/translated/stock.js:1871
+msgid "Scan to location"
+msgstr ""
+
+#: templates/js/translated/stock.js:1882
+msgid "Stock Actions"
+msgstr ""
+
+#: templates/js/translated/stock.js:1929
+msgid "Load installed items"
+msgstr ""
+
+#: templates/js/translated/stock.js:2007
msgid "Stock item is in production"
msgstr "L'articolo di magazzino è in produzione"
-#: templates/js/translated/stock.js:1855
+#: templates/js/translated/stock.js:2012
msgid "Stock item assigned to sales order"
msgstr "Articolo di magazzino assegnato all'ordine di vendita"
-#: templates/js/translated/stock.js:1858
+#: templates/js/translated/stock.js:2015
msgid "Stock item assigned to customer"
msgstr "Articolo stock assegnato al cliente"
-#: templates/js/translated/stock.js:1861
+#: templates/js/translated/stock.js:2018
msgid "Serialized stock item has been allocated"
msgstr "L'articolo di magazzino serializzato è stato assegnato"
-#: templates/js/translated/stock.js:1863
+#: templates/js/translated/stock.js:2020
msgid "Stock item has been fully allocated"
msgstr "La voce di magazzino è stata completamente assegnata"
-#: templates/js/translated/stock.js:1865
+#: templates/js/translated/stock.js:2022
msgid "Stock item has been partially allocated"
msgstr "La voce di magazzino è stata parzialmente allocata"
-#: templates/js/translated/stock.js:1868
+#: templates/js/translated/stock.js:2025
msgid "Stock item has been installed in another item"
msgstr "L'elemento stock è stato installato in un altro articolo"
-#: templates/js/translated/stock.js:1870
+#: templates/js/translated/stock.js:2027
msgid "Stock item has been consumed by a build order"
msgstr ""
-#: templates/js/translated/stock.js:1874
+#: templates/js/translated/stock.js:2031
msgid "Stock item has expired"
msgstr "L'articolo stock è scaduto"
-#: templates/js/translated/stock.js:1876
+#: templates/js/translated/stock.js:2033
msgid "Stock item will expire soon"
msgstr "Articolo in giacenza prossimo alla scadenza"
-#: templates/js/translated/stock.js:1881
+#: templates/js/translated/stock.js:2038
msgid "Stock item has been rejected"
msgstr "L'articolo stock è stato rifiutato"
-#: templates/js/translated/stock.js:1883
+#: templates/js/translated/stock.js:2040
msgid "Stock item is lost"
msgstr "L'articolo di magazzino è andato perso"
-#: templates/js/translated/stock.js:1885
+#: templates/js/translated/stock.js:2042
msgid "Stock item is destroyed"
msgstr "Articolo di magazzino distrutto"
-#: templates/js/translated/stock.js:1889
-#: templates/js/translated/table_filters.js:296
+#: templates/js/translated/stock.js:2046
+#: templates/js/translated/table_filters.js:302
msgid "Depleted"
msgstr "Esaurito"
-#: templates/js/translated/stock.js:2031
+#: templates/js/translated/stock.js:2188
msgid "Supplier part not specified"
msgstr "Fornitore dell'articolo non specificato"
-#: templates/js/translated/stock.js:2078
+#: templates/js/translated/stock.js:2235
msgid "Stock Value"
msgstr "Valore Scorte"
-#: templates/js/translated/stock.js:2170
+#: templates/js/translated/stock.js:2358
msgid "No stock items matching query"
msgstr "Nessun articolo in magazzino corrispondente alla richiesta"
-#: templates/js/translated/stock.js:2319
+#: templates/js/translated/stock.js:2450
msgid "stock locations"
msgstr ""
-#: templates/js/translated/stock.js:2476
+#: templates/js/translated/stock.js:2607
msgid "Load Subloactions"
msgstr "Caricare sublocazioni"
-#: templates/js/translated/stock.js:2583
+#: templates/js/translated/stock.js:2714
msgid "Details"
msgstr "Dettagli"
-#: templates/js/translated/stock.js:2587
+#: templates/js/translated/stock.js:2718
msgid "No changes"
msgstr ""
-#: templates/js/translated/stock.js:2599
+#: templates/js/translated/stock.js:2730
msgid "Part information unavailable"
msgstr "Informazioni sull'articolo non disponibili"
-#: templates/js/translated/stock.js:2621
+#: templates/js/translated/stock.js:2752
msgid "Location no longer exists"
msgstr "La posizione non esiste più"
-#: templates/js/translated/stock.js:2638
+#: templates/js/translated/stock.js:2769
msgid "Build order no longer exists"
msgstr ""
-#: templates/js/translated/stock.js:2653
+#: templates/js/translated/stock.js:2784
msgid "Purchase order no longer exists"
msgstr "L'ordine di acquisto non esiste più"
-#: templates/js/translated/stock.js:2670
+#: templates/js/translated/stock.js:2801
msgid "Sales Order no longer exists"
msgstr "L'ordine di vendita non esiste più"
-#: templates/js/translated/stock.js:2687
+#: templates/js/translated/stock.js:2818
msgid "Return Order no longer exists"
msgstr "L'ordine di ritorno non esiste più"
-#: templates/js/translated/stock.js:2706
+#: templates/js/translated/stock.js:2837
msgid "Customer no longer exists"
msgstr "Il cliente non esiste più"
-#: templates/js/translated/stock.js:2724
+#: templates/js/translated/stock.js:2855
msgid "Stock item no longer exists"
msgstr "L'articolo in magazzino non esiste più"
-#: templates/js/translated/stock.js:2742
+#: templates/js/translated/stock.js:2873
msgid "Added"
msgstr "Aggiunto"
-#: templates/js/translated/stock.js:2750
+#: templates/js/translated/stock.js:2881
msgid "Removed"
msgstr "Rimosso"
-#: templates/js/translated/stock.js:2826
+#: templates/js/translated/stock.js:2953
msgid "No installed items"
msgstr "Nessun elemento installato"
-#: templates/js/translated/stock.js:2876 templates/js/translated/stock.js:2911
+#: templates/js/translated/stock.js:3003 templates/js/translated/stock.js:3038
msgid "Uninstall Stock Item"
msgstr "Disinstallare l'articolo di magazzino"
-#: templates/js/translated/stock.js:2929
+#: templates/js/translated/stock.js:3056
msgid "Select stock item to uninstall"
msgstr "Selezionare l'articolo di magazzino da disinstallare"
-#: templates/js/translated/stock.js:2950
+#: templates/js/translated/stock.js:3077
msgid "Install another stock item into this item"
msgstr "Installare un altro articolo di magazzino in questo articolo"
-#: templates/js/translated/stock.js:2951
+#: templates/js/translated/stock.js:3078
msgid "Stock items can only be installed if they meet the following criteria"
msgstr "Gli articoli in magazzino possono essere installati solo se soddisfano i seguenti criteri"
-#: templates/js/translated/stock.js:2953
+#: templates/js/translated/stock.js:3080
msgid "The Stock Item links to a Part which is the BOM for this Stock Item"
msgstr "L'articolo di magazzino si collega a un'articolo che è la distinta base di questo articolo di magazzino"
-#: templates/js/translated/stock.js:2954
+#: templates/js/translated/stock.js:3081
msgid "The Stock Item is currently available in stock"
msgstr "L'articolo in stock è attualmente disponibile in magazzino"
-#: templates/js/translated/stock.js:2955
+#: templates/js/translated/stock.js:3082
msgid "The Stock Item is not already installed in another item"
msgstr "L'articolo di magazzino non è già installato in un altro articolo"
-#: templates/js/translated/stock.js:2956
+#: templates/js/translated/stock.js:3083
msgid "The Stock Item is tracked by either a batch code or serial number"
msgstr "L'articolo di magazzino è tracciato da un codice di lotto o da un numero di serie"
-#: templates/js/translated/stock.js:2969
+#: templates/js/translated/stock.js:3096
msgid "Select part to install"
msgstr "Selezionare la parte da installare"
+#: templates/js/translated/stock.js:3152
+msgid "Select one or more stock items"
+msgstr ""
+
+#: templates/js/translated/stock.js:3165
+msgid "Selected stock items"
+msgstr ""
+
+#: templates/js/translated/stock.js:3169
+msgid "Change Stock Status"
+msgstr ""
+
#: templates/js/translated/table_filters.js:50
msgid "Has project code"
msgstr "Ha il codice del progetto"
-#: templates/js/translated/table_filters.js:59
-#: templates/js/translated/table_filters.js:518
-#: templates/js/translated/table_filters.js:530
-#: templates/js/translated/table_filters.js:571
+#: templates/js/translated/table_filters.js:65
+#: templates/js/translated/table_filters.js:540
+#: templates/js/translated/table_filters.js:552
+#: templates/js/translated/table_filters.js:593
msgid "Order status"
msgstr "Stato dell'ordine"
-#: templates/js/translated/table_filters.js:64
-#: templates/js/translated/table_filters.js:535
-#: templates/js/translated/table_filters.js:561
-#: templates/js/translated/table_filters.js:576
+#: templates/js/translated/table_filters.js:70
+#: templates/js/translated/table_filters.js:557
+#: templates/js/translated/table_filters.js:583
+#: templates/js/translated/table_filters.js:598
msgid "Outstanding"
msgstr "In Sospeso"
-#: templates/js/translated/table_filters.js:72
-#: templates/js/translated/table_filters.js:458
-#: templates/js/translated/table_filters.js:543
-#: templates/js/translated/table_filters.js:584
+#: templates/js/translated/table_filters.js:78
+#: templates/js/translated/table_filters.js:464
+#: templates/js/translated/table_filters.js:565
+#: templates/js/translated/table_filters.js:606
msgid "Assigned to me"
msgstr "Assegnato a me"
-#: templates/js/translated/table_filters.js:128
+#: templates/js/translated/table_filters.js:134
msgid "Trackable Part"
msgstr "Articolo tracciabile"
-#: templates/js/translated/table_filters.js:132
+#: templates/js/translated/table_filters.js:138
msgid "Assembled Part"
msgstr "Articolo assemblato"
-#: templates/js/translated/table_filters.js:136
+#: templates/js/translated/table_filters.js:142
msgid "Has Available Stock"
msgstr "Ha scorte disponibili"
-#: templates/js/translated/table_filters.js:152
+#: templates/js/translated/table_filters.js:158
msgid "Allow Variant Stock"
msgstr "Varianti consentite"
-#: templates/js/translated/table_filters.js:164
-#: templates/js/translated/table_filters.js:692
+#: templates/js/translated/table_filters.js:170
+#: templates/js/translated/table_filters.js:714
msgid "Has Pricing"
msgstr "Prezzo"
-#: templates/js/translated/table_filters.js:204
-#: templates/js/translated/table_filters.js:291
+#: templates/js/translated/table_filters.js:210
+#: templates/js/translated/table_filters.js:297
msgid "Include sublocations"
msgstr "Includi sottoallocazioni/posizioni"
-#: templates/js/translated/table_filters.js:205
+#: templates/js/translated/table_filters.js:211
msgid "Include locations"
msgstr "Includi posizioni"
-#: templates/js/translated/table_filters.js:224
-#: templates/js/translated/table_filters.js:225
-#: templates/js/translated/table_filters.js:624
+#: templates/js/translated/table_filters.js:230
+#: templates/js/translated/table_filters.js:231
+#: templates/js/translated/table_filters.js:646
msgid "Include subcategories"
msgstr "Includi sottocategorie"
-#: templates/js/translated/table_filters.js:233
-#: templates/js/translated/table_filters.js:672
+#: templates/js/translated/table_filters.js:239
+#: templates/js/translated/table_filters.js:694
msgid "Subscribed"
msgstr "Sottoscritto"
-#: templates/js/translated/table_filters.js:244
-#: templates/js/translated/table_filters.js:326
+#: templates/js/translated/table_filters.js:250
+#: templates/js/translated/table_filters.js:332
msgid "Is Serialized"
msgstr "E' Serializzato"
-#: templates/js/translated/table_filters.js:247
-#: templates/js/translated/table_filters.js:333
+#: templates/js/translated/table_filters.js:253
+#: templates/js/translated/table_filters.js:339
msgid "Serial number GTE"
msgstr "Numero di serie GTE"
-#: templates/js/translated/table_filters.js:248
-#: templates/js/translated/table_filters.js:334
+#: templates/js/translated/table_filters.js:254
+#: templates/js/translated/table_filters.js:340
msgid "Serial number greater than or equal to"
msgstr "Numero di serie maggiore di o uguale a"
-#: templates/js/translated/table_filters.js:251
-#: templates/js/translated/table_filters.js:337
+#: templates/js/translated/table_filters.js:257
+#: templates/js/translated/table_filters.js:343
msgid "Serial number LTE"
msgstr "Numero di serie LTE"
-#: templates/js/translated/table_filters.js:252
-#: templates/js/translated/table_filters.js:338
+#: templates/js/translated/table_filters.js:258
+#: templates/js/translated/table_filters.js:344
msgid "Serial number less than or equal to"
msgstr "Numero di serie inferiore di o uguale a"
-#: templates/js/translated/table_filters.js:255
-#: templates/js/translated/table_filters.js:256
-#: templates/js/translated/table_filters.js:329
-#: templates/js/translated/table_filters.js:330
+#: templates/js/translated/table_filters.js:261
+#: templates/js/translated/table_filters.js:262
+#: templates/js/translated/table_filters.js:335
+#: templates/js/translated/table_filters.js:336
msgid "Serial number"
msgstr "Numero di serie"
-#: templates/js/translated/table_filters.js:260
-#: templates/js/translated/table_filters.js:351
+#: templates/js/translated/table_filters.js:266
+#: templates/js/translated/table_filters.js:357
msgid "Batch code"
msgstr "Codice Lotto"
-#: templates/js/translated/table_filters.js:271
-#: templates/js/translated/table_filters.js:613
+#: templates/js/translated/table_filters.js:277
+#: templates/js/translated/table_filters.js:635
msgid "Active parts"
msgstr "Elementi attivi"
-#: templates/js/translated/table_filters.js:272
+#: templates/js/translated/table_filters.js:278
msgid "Show stock for active parts"
msgstr "Mostra stock per gli articoli attivi"
-#: templates/js/translated/table_filters.js:277
+#: templates/js/translated/table_filters.js:283
msgid "Part is an assembly"
msgstr "L'articolo è un assemblato"
-#: templates/js/translated/table_filters.js:281
+#: templates/js/translated/table_filters.js:287
msgid "Is allocated"
msgstr "È assegnato"
-#: templates/js/translated/table_filters.js:282
+#: templates/js/translated/table_filters.js:288
msgid "Item has been allocated"
msgstr "L'elemento è stato posizionato"
-#: templates/js/translated/table_filters.js:287
+#: templates/js/translated/table_filters.js:293
msgid "Stock is available for use"
msgstr "Stock disponibile per l'utilizzo"
-#: templates/js/translated/table_filters.js:292
+#: templates/js/translated/table_filters.js:298
msgid "Include stock in sublocations"
msgstr "Includi elementi in giacenza nelle sottoallocazioni"
-#: templates/js/translated/table_filters.js:297
+#: templates/js/translated/table_filters.js:303
msgid "Show stock items which are depleted"
msgstr "Mostra gli elementi di magazzino che sono esauriti"
-#: templates/js/translated/table_filters.js:302
+#: templates/js/translated/table_filters.js:308
msgid "Show items which are in stock"
msgstr "Mostra gli elementi che sono in giacenza"
-#: templates/js/translated/table_filters.js:306
+#: templates/js/translated/table_filters.js:312
msgid "In Production"
msgstr "In Produzione"
-#: templates/js/translated/table_filters.js:307
+#: templates/js/translated/table_filters.js:313
msgid "Show items which are in production"
msgstr "Mostra gli elementi in produzione"
-#: templates/js/translated/table_filters.js:311
+#: templates/js/translated/table_filters.js:317
msgid "Include Variants"
msgstr "Includi Varianti"
-#: templates/js/translated/table_filters.js:312
+#: templates/js/translated/table_filters.js:318
msgid "Include stock items for variant parts"
msgstr "Includi gli articoli stock per le varianti degli articoli"
-#: templates/js/translated/table_filters.js:316
+#: templates/js/translated/table_filters.js:322
msgid "Installed"
msgstr "Installato"
-#: templates/js/translated/table_filters.js:317
+#: templates/js/translated/table_filters.js:323
msgid "Show stock items which are installed in another item"
msgstr "Mostra gli elementi stock che sono installati in un altro elemento"
-#: templates/js/translated/table_filters.js:322
+#: templates/js/translated/table_filters.js:328
msgid "Show items which have been assigned to a customer"
msgstr "Mostra elementi che sono stati assegnati a un cliente"
-#: templates/js/translated/table_filters.js:342
-#: templates/js/translated/table_filters.js:343
+#: templates/js/translated/table_filters.js:348
+#: templates/js/translated/table_filters.js:349
msgid "Stock status"
msgstr "Stato magazzino"
-#: templates/js/translated/table_filters.js:346
+#: templates/js/translated/table_filters.js:352
msgid "Has batch code"
msgstr "Ha codice lotto"
-#: templates/js/translated/table_filters.js:354
-msgid "Tracked"
-msgstr "Monitorato"
-
-#: templates/js/translated/table_filters.js:355
+#: templates/js/translated/table_filters.js:361
msgid "Stock item is tracked by either batch code or serial number"
msgstr "L'articolo stock è monitorato dal codice lotto o dal numero di serie"
-#: templates/js/translated/table_filters.js:360
+#: templates/js/translated/table_filters.js:366
msgid "Has purchase price"
msgstr "Ha il prezzo d'acquisto"
-#: templates/js/translated/table_filters.js:361
+#: templates/js/translated/table_filters.js:367
msgid "Show stock items which have a purchase price set"
msgstr "Mostra gli articoli di magazzino che hanno un prezzo di acquisto impostato"
-#: templates/js/translated/table_filters.js:365
+#: templates/js/translated/table_filters.js:371
msgid "Expiry Date before"
msgstr "Data di scadenza precedente"
-#: templates/js/translated/table_filters.js:369
+#: templates/js/translated/table_filters.js:375
msgid "Expiry Date after"
msgstr "Data di scadenza successiva"
-#: templates/js/translated/table_filters.js:382
+#: templates/js/translated/table_filters.js:388
msgid "Show stock items which have expired"
msgstr "Mostra gli elementi in giacenza scaduti"
-#: templates/js/translated/table_filters.js:388
+#: templates/js/translated/table_filters.js:394
msgid "Show stock which is close to expiring"
msgstr "Mostra giacenza prossima alla scadenza"
-#: templates/js/translated/table_filters.js:402
+#: templates/js/translated/table_filters.js:408
msgid "Test Passed"
msgstr "Test superato"
-#: templates/js/translated/table_filters.js:406
+#: templates/js/translated/table_filters.js:412
msgid "Include Installed Items"
msgstr "Includi Elementi Installati"
-#: templates/js/translated/table_filters.js:445
+#: templates/js/translated/table_filters.js:451
msgid "Build status"
msgstr "Stato Build"
-#: templates/js/translated/table_filters.js:625
+#: templates/js/translated/table_filters.js:647
msgid "Include parts in subcategories"
msgstr "Includi articoli nelle sottocategorie"
-#: templates/js/translated/table_filters.js:630
+#: templates/js/translated/table_filters.js:652
msgid "Show active parts"
msgstr "Visualizza articoli attivi"
-#: templates/js/translated/table_filters.js:638
+#: templates/js/translated/table_filters.js:660
msgid "Available stock"
msgstr "Stock disponibile"
-#: templates/js/translated/table_filters.js:646
-#: templates/js/translated/table_filters.js:742
+#: templates/js/translated/table_filters.js:668
+#: templates/js/translated/table_filters.js:764
msgid "Has Units"
msgstr ""
-#: templates/js/translated/table_filters.js:647
+#: templates/js/translated/table_filters.js:669
msgid "Part has defined units"
msgstr ""
-#: templates/js/translated/table_filters.js:651
+#: templates/js/translated/table_filters.js:673
msgid "Has IPN"
msgstr "Ha IPN"
-#: templates/js/translated/table_filters.js:652
+#: templates/js/translated/table_filters.js:674
msgid "Part has internal part number"
msgstr "L'articolo possiede un part number interno"
-#: templates/js/translated/table_filters.js:656
+#: templates/js/translated/table_filters.js:678
msgid "In stock"
msgstr "In giacenza"
-#: templates/js/translated/table_filters.js:664
+#: templates/js/translated/table_filters.js:686
msgid "Purchasable"
msgstr "Acquistabile"
-#: templates/js/translated/table_filters.js:676
+#: templates/js/translated/table_filters.js:698
msgid "Has stocktake entries"
msgstr "Ha voci d'inventario"
-#: templates/js/translated/table_filters.js:738
+#: templates/js/translated/table_filters.js:760
msgid "Has Choices"
msgstr ""
@@ -12390,51 +12551,51 @@ msgstr "Esporta Dati Tabella"
msgid "Select File Format"
msgstr "Seleziona Formato File"
-#: templates/js/translated/tables.js:561
+#: templates/js/translated/tables.js:537
msgid "Loading data"
msgstr "Caricamento dati"
-#: templates/js/translated/tables.js:564
+#: templates/js/translated/tables.js:540
msgid "rows per page"
msgstr "righe per pagina"
-#: templates/js/translated/tables.js:569
+#: templates/js/translated/tables.js:545
msgid "Showing all rows"
msgstr "Mostra tutte le righe"
-#: templates/js/translated/tables.js:571
+#: templates/js/translated/tables.js:547
msgid "Showing"
msgstr "Visualizzo"
-#: templates/js/translated/tables.js:571
+#: templates/js/translated/tables.js:547
msgid "to"
msgstr "a"
-#: templates/js/translated/tables.js:571
+#: templates/js/translated/tables.js:547
msgid "of"
msgstr "di"
-#: templates/js/translated/tables.js:571
+#: templates/js/translated/tables.js:547
msgid "rows"
msgstr "righe"
-#: templates/js/translated/tables.js:578
+#: templates/js/translated/tables.js:554
msgid "No matching results"
msgstr "Nessun risultato corrispondente"
-#: templates/js/translated/tables.js:581
+#: templates/js/translated/tables.js:557
msgid "Hide/Show pagination"
msgstr "Mostra/nascondi la paginazione"
-#: templates/js/translated/tables.js:587
+#: templates/js/translated/tables.js:563
msgid "Toggle"
msgstr "Attiva/disattiva"
-#: templates/js/translated/tables.js:590
+#: templates/js/translated/tables.js:566
msgid "Columns"
msgstr "Colonne"
-#: templates/js/translated/tables.js:593
+#: templates/js/translated/tables.js:569
msgid "All"
msgstr "Tutti"
@@ -12617,50 +12778,6 @@ msgstr "Impostazioni e-mail"
msgid "Email settings not configured"
msgstr "Impostazioni dell'email non configurate"
-#: templates/stock_table.html:17
-msgid "Barcode Actions"
-msgstr "Azioni Barcode"
-
-#: templates/stock_table.html:28
-msgid "Stock Options"
-msgstr "Opzioni Magazzino"
-
-#: templates/stock_table.html:33
-msgid "Add to selected stock items"
-msgstr "Aggiungi alle voci stock selezionate"
-
-#: templates/stock_table.html:34
-msgid "Remove from selected stock items"
-msgstr "Rimuovi dagli elementi stock selezionati"
-
-#: templates/stock_table.html:35
-msgid "Stocktake selected stock items"
-msgstr "Inventario articoli di magazzino selezionati"
-
-#: templates/stock_table.html:36
-msgid "Move selected stock items"
-msgstr "Sposta gli elementi stock selezionati"
-
-#: templates/stock_table.html:37
-msgid "Merge selected stock items"
-msgstr "Unisce gli articoli di magazzino selezionati"
-
-#: templates/stock_table.html:37
-msgid "Merge stock"
-msgstr "Unisce la giacenza"
-
-#: templates/stock_table.html:38
-msgid "Order selected items"
-msgstr "Ordina articolo selezionato"
-
-#: templates/stock_table.html:42
-msgid "Delete selected items"
-msgstr "Elimina articoli selezionati"
-
-#: templates/stock_table.html:42
-msgid "Delete stock"
-msgstr "Elimina Stock"
-
#: templates/yesnolabel.html:4
msgid "Yes"
msgstr "Si"
@@ -12693,35 +12810,35 @@ msgstr "Permessi"
msgid "Important dates"
msgstr "Date Importanti"
-#: users/models.py:230
+#: users/models.py:236
msgid "Permission set"
msgstr "Impostazione autorizzazioni"
-#: users/models.py:238
+#: users/models.py:244
msgid "Group"
msgstr "Gruppo"
-#: users/models.py:241
+#: users/models.py:247
msgid "View"
msgstr "Visualizza"
-#: users/models.py:241
+#: users/models.py:247
msgid "Permission to view items"
msgstr "Autorizzazione a visualizzare gli articoli"
-#: users/models.py:243
+#: users/models.py:249
msgid "Permission to add items"
msgstr "Autorizzazione ad aggiungere elementi"
-#: users/models.py:245
+#: users/models.py:251
msgid "Change"
msgstr "Modificare"
-#: users/models.py:245
+#: users/models.py:251
msgid "Permissions to edit items"
msgstr "Permessi per modificare gli elementi"
-#: users/models.py:247
+#: users/models.py:253
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 880aabe65c..04d9628f31 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: 2023-06-09 00:32+0000\n"
-"PO-Revision-Date: 2023-06-09 10:27\n"
+"POT-Creation-Date: 2023-06-20 07:01+0000\n"
+"PO-Revision-Date: 2023-06-20 07:06\n"
"Last-Translator: \n"
"Language-Team: Japanese\n"
"Language: ja_JP\n"
@@ -49,26 +49,26 @@ msgstr "エラーの詳細は管理者パネルで確認できます"
msgid "Enter date"
msgstr "日付を入力する"
-#: InvenTree/fields.py:206 InvenTree/models.py:766 build/serializers.py:427
-#: build/serializers.py:506 build/templates/build/sidebar.html:23
-#: company/models.py:597 company/templates/company/sidebar.html:35
-#: order/models.py:1089 order/templates/order/po_sidebar.html:11
+#: InvenTree/fields.py:206 InvenTree/models.py:766 build/serializers.py:435
+#: build/serializers.py:514 build/templates/build/sidebar.html:21
+#: company/models.py:746 company/templates/company/sidebar.html:37
+#: order/models.py:1102 order/templates/order/po_sidebar.html:11
#: order/templates/order/return_order_sidebar.html:9
#: order/templates/order/so_sidebar.html:17 part/admin.py:41
-#: part/models.py:3005 part/templates/part/part_sidebar.html:63
+#: part/models.py:3039 part/templates/part/part_sidebar.html:63
#: report/templates/report/inventree_build_order_base.html:172
#: stock/admin.py:121 stock/models.py:2160 stock/models.py:2268
-#: stock/serializers.py:342 stock/serializers.py:475 stock/serializers.py:556
-#: stock/serializers.py:839 stock/serializers.py:938 stock/serializers.py:1070
-#: stock/templates/stock/stock_sidebar.html:25
-#: templates/js/translated/barcode.js:143 templates/js/translated/bom.js:1224
-#: templates/js/translated/company.js:1294 templates/js/translated/order.js:347
-#: templates/js/translated/part.js:1054
-#: templates/js/translated/purchase_order.js:2168
-#: templates/js/translated/return_order.js:760
-#: templates/js/translated/sales_order.js:1055
-#: templates/js/translated/sales_order.js:1959
-#: templates/js/translated/stock.js:1460 templates/js/translated/stock.js:2164
+#: stock/serializers.py:408 stock/serializers.py:542 stock/serializers.py:623
+#: stock/serializers.py:681 stock/serializers.py:956 stock/serializers.py:1055
+#: stock/serializers.py:1187 stock/templates/stock/stock_sidebar.html:25
+#: templates/js/translated/barcode.js:143 templates/js/translated/bom.js:1244
+#: templates/js/translated/company.js:1715 templates/js/translated/order.js:347
+#: templates/js/translated/part.js:1053
+#: templates/js/translated/purchase_order.js:2178
+#: templates/js/translated/return_order.js:772
+#: templates/js/translated/sales_order.js:1067
+#: templates/js/translated/sales_order.js:1971
+#: templates/js/translated/stock.js:1459 templates/js/translated/stock.js:2321
msgid "Notes"
msgstr "メモ"
@@ -81,47 +81,51 @@ msgstr "値 '{name}' はパターン形式で表示されません"
msgid "Provided value does not match required pattern: "
msgstr "指定された値が必要なパターンと一致しません: "
-#: InvenTree/forms.py:145
+#: InvenTree/forms.py:147
msgid "Enter password"
msgstr "パスワードを入力してください"
-#: InvenTree/forms.py:146
+#: InvenTree/forms.py:148
msgid "Enter new password"
msgstr "新しいパスワードを入力してください。"
-#: InvenTree/forms.py:155
+#: InvenTree/forms.py:157
msgid "Confirm password"
msgstr "パスワードの確認"
-#: InvenTree/forms.py:156
+#: InvenTree/forms.py:158
msgid "Confirm new password"
msgstr "新しいパスワードの確認"
-#: InvenTree/forms.py:160
+#: InvenTree/forms.py:162
msgid "Old password"
msgstr "古いパスワード"
-#: InvenTree/forms.py:179
+#: InvenTree/forms.py:181
msgid "Email (again)"
msgstr "メールアドレス(確認用)"
-#: InvenTree/forms.py:183
+#: InvenTree/forms.py:185
msgid "Email address confirmation"
msgstr "メールアドレスの確認"
-#: InvenTree/forms.py:204
+#: InvenTree/forms.py:206
msgid "You must type the same email each time."
msgstr "毎回同じメールアドレスを入力する必要があります。"
-#: InvenTree/forms.py:230 InvenTree/forms.py:236
+#: InvenTree/forms.py:237 InvenTree/forms.py:243
msgid "The provided primary email address is not valid."
msgstr "指定されたプライマリEメールアドレスは無効です。"
-#: InvenTree/forms.py:242
+#: InvenTree/forms.py:249
msgid "The provided email domain is not approved."
msgstr "指定されたメールドメインは承認されていません。"
-#: InvenTree/helpers.py:462 order/models.py:442 order/models.py:611
+#: InvenTree/forms.py:345
+msgid "Registration is disabled."
+msgstr ""
+
+#: InvenTree/helpers.py:462 order/models.py:455 order/models.py:624
msgid "Invalid quantity provided"
msgstr "数量コードが無効です"
@@ -239,7 +243,7 @@ msgstr "外部リンクが見つかりません。"
#: InvenTree/models.py:486 stock/models.py:2262
#: templates/js/translated/attachment.js:119
-#: templates/js/translated/attachment.js:306
+#: templates/js/translated/attachment.js:316
msgid "Attachment"
msgstr "添付ファイル"
@@ -247,29 +251,30 @@ msgstr "添付ファイル"
msgid "Select file to attach"
msgstr "添付ファイルを選択"
-#: InvenTree/models.py:493 common/models.py:2695 company/models.py:132
-#: company/models.py:306 company/models.py:584 order/models.py:236
-#: order/models.py:1093 order/models.py:1453 part/admin.py:39
-#: part/models.py:901 part/templates/part/part_scheduling.html:11
+#: InvenTree/models.py:493 common/models.py:2681 company/models.py:128
+#: company/models.py:381 company/models.py:455 company/models.py:733
+#: order/models.py:240 order/models.py:1106 order/models.py:1466
+#: part/admin.py:39 part/models.py:902
+#: part/templates/part/part_scheduling.html:11
#: report/templates/report/inventree_build_order_base.html:164
-#: stock/admin.py:120 templates/js/translated/company.js:977
-#: templates/js/translated/company.js:1283 templates/js/translated/order.js:351
-#: templates/js/translated/part.js:2316
-#: templates/js/translated/purchase_order.js:2008
-#: templates/js/translated/purchase_order.js:2172
-#: templates/js/translated/return_order.js:764
-#: templates/js/translated/sales_order.js:1044
-#: templates/js/translated/sales_order.js:1964
+#: stock/admin.py:120 templates/js/translated/company.js:1350
+#: templates/js/translated/company.js:1704 templates/js/translated/order.js:351
+#: templates/js/translated/part.js:2392
+#: templates/js/translated/purchase_order.js:2018
+#: templates/js/translated/purchase_order.js:2182
+#: templates/js/translated/return_order.js:776
+#: templates/js/translated/sales_order.js:1056
+#: templates/js/translated/sales_order.js:1976
msgid "Link"
msgstr "リンク"
-#: InvenTree/models.py:494 build/models.py:291 part/models.py:902
+#: InvenTree/models.py:494 build/models.py:295 part/models.py:903
#: stock/models.py:735
msgid "Link to external URL"
msgstr "外部 サイト へのリンク"
#: InvenTree/models.py:497 templates/js/translated/attachment.js:120
-#: templates/js/translated/attachment.js:321
+#: templates/js/translated/attachment.js:331
msgid "Comment"
msgstr "コメント:"
@@ -277,13 +282,13 @@ msgstr "コメント:"
msgid "File comment"
msgstr "ファイルコメント"
-#: InvenTree/models.py:503 InvenTree/models.py:504 common/models.py:2154
-#: common/models.py:2155 common/models.py:2368 common/models.py:2369
-#: common/models.py:2625 common/models.py:2626 part/models.py:3013
-#: part/models.py:3101 part/models.py:3180 part/models.py:3200
-#: plugin/models.py:217 plugin/models.py:218
+#: InvenTree/models.py:503 InvenTree/models.py:504 common/models.py:2140
+#: common/models.py:2141 common/models.py:2354 common/models.py:2355
+#: common/models.py:2611 common/models.py:2612 part/models.py:3047
+#: part/models.py:3135 part/models.py:3214 part/models.py:3234
+#: plugin/models.py:218 plugin/models.py:219
#: report/templates/report/inventree_test_report_base.html:105
-#: templates/js/translated/stock.js:2773
+#: templates/js/translated/stock.js:2904
msgid "User"
msgstr "ユーザー"
@@ -324,53 +329,54 @@ msgstr ""
msgid "Invalid choice"
msgstr "無効な選択です"
-#: InvenTree/models.py:648 InvenTree/models.py:649 common/models.py:2354
-#: company/models.py:390 label/models.py:103 part/models.py:847
-#: part/models.py:3400 plugin/models.py:41 report/models.py:160
+#: InvenTree/models.py:648 InvenTree/models.py:649 common/models.py:2340
+#: company/models.py:539 label/models.py:111 part/models.py:848
+#: part/models.py:3434 plugin/models.py:42 report/models.py:160
#: templates/InvenTree/settings/mixins/urls.html:13
#: templates/InvenTree/settings/notifications.html:17
-#: templates/InvenTree/settings/plugin.html:80
+#: templates/InvenTree/settings/plugin.html:74
#: templates/InvenTree/settings/plugin_settings.html:22
-#: templates/js/translated/company.js:658
-#: templates/js/translated/company.js:706
-#: templates/js/translated/company.js:871
-#: templates/js/translated/company.js:1071 templates/js/translated/part.js:1160
-#: templates/js/translated/part.js:1447 templates/js/translated/part.js:1583
-#: templates/js/translated/part.js:2699 templates/js/translated/stock.js:2464
+#: templates/js/translated/company.js:665
+#: templates/js/translated/company.js:713
+#: templates/js/translated/company.js:940
+#: templates/js/translated/company.js:1196
+#: templates/js/translated/company.js:1444 templates/js/translated/part.js:1159
+#: templates/js/translated/part.js:1446 templates/js/translated/part.js:1582
+#: templates/js/translated/part.js:2684 templates/js/translated/stock.js:2595
msgid "Name"
msgstr "お名前"
-#: InvenTree/models.py:655 build/models.py:164
+#: InvenTree/models.py:655 build/models.py:168
#: build/templates/build/detail.html:24 common/models.py:111
-#: company/models.py:312 company/models.py:590
+#: company/models.py:461 company/models.py:739
#: company/templates/company/company_base.html:72
#: company/templates/company/manufacturer_part.html:75
-#: company/templates/company/supplier_part.html:108 label/models.py:110
-#: order/models.py:232 order/models.py:1117 part/admin.py:194 part/admin.py:276
-#: part/models.py:869 part/models.py:3416 part/templates/part/category.html:81
+#: company/templates/company/supplier_part.html:108 label/models.py:118
+#: order/models.py:232 order/models.py:1130 part/admin.py:194 part/admin.py:276
+#: part/models.py:870 part/models.py:3450 part/templates/part/category.html:81
#: part/templates/part/part_base.html:172
#: part/templates/part/part_scheduling.html:12 report/models.py:173
-#: report/models.py:587 report/models.py:631
+#: report/models.py:589 report/models.py:633
#: report/templates/report/inventree_build_order_base.html:117
#: stock/admin.py:41 stock/templates/stock/location.html:123
#: templates/InvenTree/settings/notifications.html:19
#: templates/InvenTree/settings/plugin_settings.html:27
#: templates/InvenTree/settings/settings_staff_js.html:75
-#: templates/js/translated/bom.js:632 templates/js/translated/bom.js:933
-#: templates/js/translated/build.js:2857 templates/js/translated/company.js:510
-#: templates/js/translated/company.js:988
-#: templates/js/translated/company.js:1251 templates/js/translated/order.js:298
-#: templates/js/translated/part.js:1212 templates/js/translated/part.js:1456
-#: templates/js/translated/part.js:1594 templates/js/translated/part.js:1933
-#: templates/js/translated/part.js:2247 templates/js/translated/part.js:2735
-#: templates/js/translated/part.js:2826
-#: templates/js/translated/purchase_order.js:1666
-#: templates/js/translated/purchase_order.js:1812
-#: templates/js/translated/purchase_order.js:1990
-#: templates/js/translated/return_order.js:302
-#: templates/js/translated/sales_order.js:790
-#: templates/js/translated/stock.js:1439 templates/js/translated/stock.js:1817
-#: templates/js/translated/stock.js:2496 templates/js/translated/stock.js:2568
+#: templates/js/translated/bom.js:633 templates/js/translated/bom.js:951
+#: templates/js/translated/build.js:2062 templates/js/translated/company.js:517
+#: templates/js/translated/company.js:1361
+#: templates/js/translated/company.js:1672 templates/js/translated/index.js:114
+#: templates/js/translated/order.js:298 templates/js/translated/part.js:1211
+#: templates/js/translated/part.js:1455 templates/js/translated/part.js:1593
+#: templates/js/translated/part.js:1932 templates/js/translated/part.js:2323
+#: templates/js/translated/part.js:2720 templates/js/translated/part.js:2811
+#: templates/js/translated/purchase_order.js:1681
+#: templates/js/translated/purchase_order.js:1827
+#: templates/js/translated/purchase_order.js:2000
+#: templates/js/translated/return_order.js:314
+#: templates/js/translated/sales_order.js:802
+#: templates/js/translated/stock.js:1438 templates/js/translated/stock.js:1974
+#: templates/js/translated/stock.js:2627 templates/js/translated/stock.js:2699
msgid "Description"
msgstr "説明"
@@ -383,7 +389,7 @@ msgid "parent"
msgstr "親"
#: InvenTree/models.py:671 InvenTree/models.py:672
-#: templates/js/translated/part.js:2744 templates/js/translated/stock.js:2505
+#: templates/js/translated/part.js:2729 templates/js/translated/stock.js:2636
msgid "Path"
msgstr ""
@@ -419,12 +425,12 @@ msgstr ""
msgid "An error has been logged by the server."
msgstr ""
-#: InvenTree/serializers.py:60 part/models.py:3897
+#: InvenTree/serializers.py:60 part/models.py:3941
msgid "Must be a valid number"
msgstr "有効な数字でなければなりません"
-#: InvenTree/serializers.py:90 company/models.py:154
-#: company/templates/company/company_base.html:107 part/models.py:2852
+#: InvenTree/serializers.py:90 company/models.py:150
+#: company/templates/company/company_base.html:107 part/models.py:2886
#: templates/InvenTree/settings/settings_staff_js.html:44
#: templates/currency_data.html:5
msgid "Currency"
@@ -497,130 +503,130 @@ msgstr ""
msgid "Downloading images from remote URL is not enabled"
msgstr ""
-#: InvenTree/settings.py:714
+#: InvenTree/settings.py:741
msgid "Czech"
msgstr ""
-#: InvenTree/settings.py:715
+#: InvenTree/settings.py:742
msgid "Danish"
msgstr ""
-#: InvenTree/settings.py:716
+#: InvenTree/settings.py:743
msgid "German"
msgstr "ドイツ語"
-#: InvenTree/settings.py:717
+#: InvenTree/settings.py:744
msgid "Greek"
msgstr "ギリシャ語"
-#: InvenTree/settings.py:718
+#: InvenTree/settings.py:745
msgid "English"
msgstr "英語"
-#: InvenTree/settings.py:719
+#: InvenTree/settings.py:746
msgid "Spanish"
msgstr "スペイン語"
-#: InvenTree/settings.py:720
+#: InvenTree/settings.py:747
msgid "Spanish (Mexican)"
msgstr "スペイン語(メキシコ)"
-#: InvenTree/settings.py:721
+#: InvenTree/settings.py:748
msgid "Farsi / Persian"
msgstr ""
-#: InvenTree/settings.py:722
+#: InvenTree/settings.py:749
msgid "Finnish"
msgstr ""
-#: InvenTree/settings.py:723
+#: InvenTree/settings.py:750
msgid "French"
msgstr "フランス語"
-#: InvenTree/settings.py:724
+#: InvenTree/settings.py:751
msgid "Hebrew"
msgstr "ヘブライ語"
-#: InvenTree/settings.py:725
+#: InvenTree/settings.py:752
msgid "Hungarian"
msgstr "ハンガリー語"
-#: InvenTree/settings.py:726
+#: InvenTree/settings.py:753
msgid "Italian"
msgstr "イタリア語"
-#: InvenTree/settings.py:727
+#: InvenTree/settings.py:754
msgid "Japanese"
msgstr "日本語"
-#: InvenTree/settings.py:728
+#: InvenTree/settings.py:755
msgid "Korean"
msgstr "韓国語"
-#: InvenTree/settings.py:729
+#: InvenTree/settings.py:756
msgid "Dutch"
msgstr "オランダ語"
-#: InvenTree/settings.py:730
+#: InvenTree/settings.py:757
msgid "Norwegian"
msgstr "ノルウェー語"
-#: InvenTree/settings.py:731
+#: InvenTree/settings.py:758
msgid "Polish"
msgstr "ポーランド語"
-#: InvenTree/settings.py:732
+#: InvenTree/settings.py:759
msgid "Portuguese"
msgstr "ポルトガル語"
-#: InvenTree/settings.py:733
+#: InvenTree/settings.py:760
msgid "Portuguese (Brazilian)"
msgstr "ポルトガル語 (ブラジル)"
-#: InvenTree/settings.py:734
+#: InvenTree/settings.py:761
msgid "Russian"
msgstr "ロシア語"
-#: InvenTree/settings.py:735
+#: InvenTree/settings.py:762
msgid "Slovenian"
msgstr "スロベニア語"
-#: InvenTree/settings.py:736
+#: InvenTree/settings.py:763
msgid "Swedish"
msgstr "スウェーデン語"
-#: InvenTree/settings.py:737
+#: InvenTree/settings.py:764
msgid "Thai"
msgstr "タイ語"
-#: InvenTree/settings.py:738
+#: InvenTree/settings.py:765
msgid "Turkish"
msgstr "トルコ語"
-#: InvenTree/settings.py:739
+#: InvenTree/settings.py:766
msgid "Vietnamese"
msgstr "ベトナム語"
-#: InvenTree/settings.py:740
+#: InvenTree/settings.py:767
msgid "Chinese"
msgstr "中国語"
-#: InvenTree/status.py:61 part/serializers.py:878
+#: InvenTree/status.py:68 part/serializers.py:940
msgid "Background worker check failed"
msgstr "バックグラウンドワーカーのチェックに失敗しました"
-#: InvenTree/status.py:65
+#: InvenTree/status.py:72
msgid "Email backend not configured"
msgstr "メールアドレスが未設定です"
-#: InvenTree/status.py:68
+#: InvenTree/status.py:75
msgid "InvenTree system health checks failed"
msgstr "InvenTree システムのヘルスチェックに失敗しました"
#: InvenTree/status_codes.py:12 InvenTree/status_codes.py:40
#: InvenTree/status_codes.py:148 InvenTree/status_codes.py:167
#: InvenTree/status_codes.py:188 generic/states/tests.py:16
-#: templates/js/translated/table_filters.js:511
+#: templates/js/translated/table_filters.js:533
msgid "Pending"
msgstr "処理待ち"
@@ -630,7 +636,7 @@ msgstr "設置済"
#: InvenTree/status_codes.py:14 InvenTree/status_codes.py:151
#: InvenTree/status_codes.py:172 generic/states/tests.py:18
-#: order/templates/order/order_base.html:162
+#: order/templates/order/order_base.html:158
#: order/templates/order/sales_order_base.html:162
msgid "Complete"
msgstr "完了"
@@ -654,10 +660,10 @@ msgstr "返品済"
msgid "In Progress"
msgstr "処理中"
-#: InvenTree/status_codes.py:42 order/models.py:1332
-#: templates/js/translated/sales_order.js:1509
-#: templates/js/translated/sales_order.js:1630
-#: templates/js/translated/sales_order.js:1934
+#: InvenTree/status_codes.py:42 order/models.py:1345
+#: templates/js/translated/sales_order.js:1521
+#: templates/js/translated/sales_order.js:1642
+#: templates/js/translated/sales_order.js:1946
msgid "Shipped"
msgstr "発送済み"
@@ -689,7 +695,7 @@ msgstr ""
msgid "Legacy stock tracking entry"
msgstr ""
-#: InvenTree/status_codes.py:93 templates/js/translated/stock.js:511
+#: InvenTree/status_codes.py:93 templates/js/translated/stock.js:510
msgid "Stock item created"
msgstr "在庫商品を作成しました"
@@ -745,7 +751,7 @@ msgstr "親アイテムから分割する"
msgid "Split child item"
msgstr "子項目を分割"
-#: InvenTree/status_codes.py:120 templates/js/translated/stock.js:2243
+#: InvenTree/status_codes.py:120 templates/js/translated/stock.js:1769
msgid "Merged stock items"
msgstr "商品在庫をマージしました"
@@ -765,7 +771,7 @@ msgstr "組立注文の出力が完了しました"
msgid "Build order output rejected"
msgstr ""
-#: InvenTree/status_codes.py:129 templates/js/translated/stock.js:1676
+#: InvenTree/status_codes.py:129 templates/js/translated/stock.js:1675
msgid "Consumed by build order"
msgstr ""
@@ -781,7 +787,7 @@ msgstr ""
msgid "Returned against Return Order"
msgstr ""
-#: InvenTree/status_codes.py:141 templates/js/translated/table_filters.js:321
+#: InvenTree/status_codes.py:141 templates/js/translated/table_filters.js:327
msgid "Sent to customer"
msgstr "顧客に送信されました"
@@ -849,83 +855,111 @@ msgstr ""
msgid "Wrong password provided"
msgstr ""
-#: InvenTree/views.py:651 templates/navbar.html:157
+#: InvenTree/views.py:653 templates/navbar.html:157
msgid "System Information"
msgstr "システム情報"
-#: InvenTree/views.py:658 templates/navbar.html:168
+#: InvenTree/views.py:660 templates/navbar.html:168
msgid "About InvenTree"
msgstr "InvenTree について"
-#: build/api.py:222
+#: build/api.py:242
msgid "Build must be cancelled before it can be deleted"
msgstr ""
-#: build/models.py:69 build/templates/build/build_base.html:9
+#: build/api.py:286 part/models.py:3833 templates/js/translated/bom.js:985
+#: templates/js/translated/bom.js:1025 templates/js/translated/build.js:2449
+#: templates/js/translated/table_filters.js:166
+#: templates/js/translated/table_filters.js:518
+msgid "Consumable"
+msgstr ""
+
+#: build/api.py:287 part/models.py:3827 part/templates/part/upload_bom.html:58
+#: templates/js/translated/bom.js:989 templates/js/translated/bom.js:1016
+#: templates/js/translated/build.js:2458
+#: templates/js/translated/table_filters.js:162
+#: templates/js/translated/table_filters.js:191
+#: templates/js/translated/table_filters.js:522
+msgid "Optional"
+msgstr ""
+
+#: build/api.py:288 templates/js/translated/table_filters.js:360
+#: templates/js/translated/table_filters.js:514
+msgid "Tracked"
+msgstr ""
+
+#: build/api.py:290 part/admin.py:64 templates/js/translated/build.js:1670
+#: templates/js/translated/build.js:2549
+#: templates/js/translated/sales_order.js:1918
+#: templates/js/translated/table_filters.js:506
+msgid "Allocated"
+msgstr ""
+
+#: build/models.py:73 build/templates/build/build_base.html:9
#: build/templates/build/build_base.html:27
#: report/templates/report/inventree_build_order_base.html:105
#: templates/email/build_order_completed.html:16
#: templates/email/overdue_build_order.html:15
-#: templates/js/translated/build.js:945 templates/js/translated/stock.js:2629
+#: templates/js/translated/build.js:953 templates/js/translated/stock.js:2760
msgid "Build Order"
msgstr ""
-#: build/models.py:70 build/templates/build/build_base.html:13
+#: build/models.py:74 build/templates/build/build_base.html:13
#: build/templates/build/index.html:8 build/templates/build/index.html:12
-#: order/templates/order/sales_order_detail.html:119
+#: order/templates/order/sales_order_detail.html:111
#: order/templates/order/so_sidebar.html:13
-#: part/templates/part/part_sidebar.html:22 templates/InvenTree/index.html:244
+#: part/templates/part/part_sidebar.html:22 templates/InvenTree/index.html:196
#: templates/InvenTree/search.html:141
#: templates/InvenTree/settings/sidebar.html:53
-#: templates/js/translated/search.js:228 users/models.py:42
+#: templates/js/translated/search.js:186 users/models.py:42
msgid "Build Orders"
msgstr ""
-#: build/models.py:111
+#: build/models.py:115
msgid "Invalid choice for parent build"
msgstr ""
-#: build/models.py:155
+#: build/models.py:159
msgid "Build Order Reference"
msgstr ""
-#: build/models.py:156 order/models.py:359 order/models.py:765
-#: order/models.py:1087 order/models.py:1724 part/admin.py:278
-#: part/models.py:3798 part/templates/part/upload_bom.html:54
+#: build/models.py:160 order/models.py:372 order/models.py:778
+#: order/models.py:1100 order/models.py:1737 part/admin.py:278
+#: part/models.py:3842 part/templates/part/upload_bom.html:54
#: report/templates/report/inventree_bill_of_materials_report.html:139
#: report/templates/report/inventree_po_report_base.html:28
#: report/templates/report/inventree_return_order_report_base.html:26
#: report/templates/report/inventree_so_report_base.html:28
-#: templates/js/translated/bom.js:769 templates/js/translated/bom.js:943
-#: templates/js/translated/build.js:2098 templates/js/translated/order.js:291
+#: templates/js/translated/bom.js:770 templates/js/translated/bom.js:961
+#: templates/js/translated/build.js:2441 templates/js/translated/order.js:291
#: templates/js/translated/pricing.js:386
-#: templates/js/translated/purchase_order.js:2033
-#: templates/js/translated/return_order.js:713
-#: templates/js/translated/sales_order.js:1798
+#: templates/js/translated/purchase_order.js:2043
+#: templates/js/translated/return_order.js:725
+#: templates/js/translated/sales_order.js:1810
msgid "Reference"
msgstr ""
-#: build/models.py:167
+#: build/models.py:171
msgid "Brief description of the build (optional)"
msgstr ""
-#: build/models.py:175 build/templates/build/build_base.html:183
+#: build/models.py:179 build/templates/build/build_base.html:184
#: build/templates/build/detail.html:87
msgid "Parent Build"
msgstr ""
-#: build/models.py:176
+#: build/models.py:180
msgid "BuildOrder to which this build is allocated"
msgstr ""
-#: build/models.py:181 build/templates/build/build_base.html:98
-#: build/templates/build/detail.html:29 company/models.py:775
-#: order/models.py:1195 order/models.py:1311 order/models.py:1312
-#: part/models.py:391 part/models.py:2865 part/models.py:2979
-#: part/models.py:3119 part/models.py:3138 part/models.py:3157
-#: part/models.py:3178 part/models.py:3270 part/models.py:3555
-#: part/models.py:3663 part/models.py:3763 part/models.py:4077
-#: part/serializers.py:842 part/serializers.py:1245
+#: build/models.py:185 build/templates/build/build_base.html:98
+#: build/templates/build/detail.html:29 company/models.py:924
+#: order/models.py:1208 order/models.py:1324 order/models.py:1325
+#: part/models.py:392 part/models.py:2899 part/models.py:3013
+#: part/models.py:3153 part/models.py:3172 part/models.py:3191
+#: part/models.py:3212 part/models.py:3304 part/models.py:3589
+#: part/models.py:3712 part/models.py:3807 part/models.py:4121
+#: part/serializers.py:904 part/serializers.py:1307
#: part/templates/part/part_app_base.html:8
#: part/templates/part/part_pricing.html:12
#: part/templates/part/upload_bom.html:52
@@ -935,266 +969,229 @@ msgstr ""
#: report/templates/report/inventree_po_report_base.html:27
#: report/templates/report/inventree_return_order_report_base.html:24
#: report/templates/report/inventree_so_report_base.html:27
-#: stock/serializers.py:156 stock/serializers.py:509
+#: stock/serializers.py:205 stock/serializers.py:576
#: templates/InvenTree/search.html:82
#: templates/email/build_order_completed.html:17
#: templates/email/build_order_required_stock.html:17
#: templates/email/low_stock_notification.html:15
#: templates/email/overdue_build_order.html:16
-#: templates/js/translated/barcode.js:529 templates/js/translated/bom.js:631
-#: templates/js/translated/bom.js:768 templates/js/translated/bom.js:887
-#: templates/js/translated/build.js:1403 templates/js/translated/build.js:1965
-#: templates/js/translated/build.js:2464 templates/js/translated/build.js:2868
-#: templates/js/translated/company.js:337
-#: templates/js/translated/company.js:822
-#: templates/js/translated/company.js:929
-#: templates/js/translated/company.js:1169 templates/js/translated/part.js:1918
-#: templates/js/translated/part.js:1990 templates/js/translated/part.js:2216
-#: templates/js/translated/pricing.js:369
-#: templates/js/translated/purchase_order.js:746
-#: templates/js/translated/purchase_order.js:1274
-#: templates/js/translated/purchase_order.js:1811
-#: templates/js/translated/purchase_order.js:1975
-#: templates/js/translated/return_order.js:527
-#: templates/js/translated/return_order.js:694
-#: templates/js/translated/sales_order.js:285
-#: templates/js/translated/sales_order.js:1185
-#: templates/js/translated/sales_order.js:1584
-#: templates/js/translated/sales_order.js:1782
-#: templates/js/translated/stock.js:643 templates/js/translated/stock.js:809
-#: templates/js/translated/stock.js:1021 templates/js/translated/stock.js:1773
-#: templates/js/translated/stock.js:2594 templates/js/translated/stock.js:2831
-#: templates/js/translated/stock.js:2968
+#: templates/js/translated/barcode.js:529 templates/js/translated/bom.js:632
+#: templates/js/translated/bom.js:769 templates/js/translated/bom.js:905
+#: templates/js/translated/build.js:1289 templates/js/translated/build.js:1669
+#: templates/js/translated/build.js:2085 templates/js/translated/build.js:2261
+#: templates/js/translated/company.js:347
+#: templates/js/translated/company.js:1147
+#: templates/js/translated/company.js:1302
+#: templates/js/translated/company.js:1590 templates/js/translated/index.js:104
+#: templates/js/translated/part.js:1917 templates/js/translated/part.js:1989
+#: templates/js/translated/part.js:2292 templates/js/translated/pricing.js:369
+#: templates/js/translated/purchase_order.js:757
+#: templates/js/translated/purchase_order.js:1289
+#: templates/js/translated/purchase_order.js:1826
+#: templates/js/translated/purchase_order.js:1985
+#: templates/js/translated/return_order.js:539
+#: templates/js/translated/return_order.js:706
+#: templates/js/translated/sales_order.js:297
+#: templates/js/translated/sales_order.js:1197
+#: templates/js/translated/sales_order.js:1596
+#: templates/js/translated/sales_order.js:1794
+#: templates/js/translated/stock.js:642 templates/js/translated/stock.js:808
+#: templates/js/translated/stock.js:1020 templates/js/translated/stock.js:1913
+#: templates/js/translated/stock.js:2725 templates/js/translated/stock.js:2958
+#: templates/js/translated/stock.js:3095
msgid "Part"
msgstr "パーツ"
-#: build/models.py:189
+#: build/models.py:193
msgid "Select part to build"
msgstr ""
-#: build/models.py:194
+#: build/models.py:198
msgid "Sales Order Reference"
msgstr ""
-#: build/models.py:198
+#: build/models.py:202
msgid "SalesOrder to which this build is allocated"
msgstr ""
-#: build/models.py:203 build/serializers.py:942
-#: templates/js/translated/build.js:2452
-#: templates/js/translated/sales_order.js:1173
+#: build/models.py:207 build/serializers.py:946
+#: templates/js/translated/build.js:1657
+#: templates/js/translated/sales_order.js:1185
msgid "Source Location"
msgstr ""
-#: build/models.py:207
+#: build/models.py:211
msgid "Select location to take stock from for this build (leave blank to take from any stock location)"
msgstr ""
-#: build/models.py:212
+#: build/models.py:216
msgid "Destination Location"
msgstr ""
-#: build/models.py:216
+#: build/models.py:220
msgid "Select location where the completed items will be stored"
msgstr ""
-#: build/models.py:220
+#: build/models.py:224
msgid "Build Quantity"
msgstr ""
-#: build/models.py:223
+#: build/models.py:227
msgid "Number of stock items to build"
msgstr ""
-#: build/models.py:227
+#: build/models.py:231
msgid "Completed items"
msgstr ""
-#: build/models.py:229
+#: build/models.py:233
msgid "Number of stock items which have been completed"
msgstr ""
-#: build/models.py:233
+#: build/models.py:237
msgid "Build Status"
msgstr ""
-#: build/models.py:237
+#: build/models.py:241
msgid "Build status code"
msgstr ""
-#: build/models.py:246 build/serializers.py:269 order/serializers.py:506
-#: stock/models.py:739 templates/js/translated/purchase_order.js:1099
+#: build/models.py:250 build/serializers.py:277 order/serializers.py:512
+#: stock/models.py:739 templates/js/translated/purchase_order.js:1114
msgid "Batch Code"
msgstr ""
-#: build/models.py:250 build/serializers.py:270
+#: build/models.py:254 build/serializers.py:278
msgid "Batch code for this build output"
msgstr ""
-#: build/models.py:253 order/models.py:244 part/models.py:1038
+#: build/models.py:257 order/models.py:248 part/models.py:1039
#: part/templates/part/part_base.html:312
-#: templates/js/translated/return_order.js:327
-#: templates/js/translated/sales_order.js:815
+#: templates/js/translated/return_order.js:339
+#: templates/js/translated/sales_order.js:827
msgid "Creation Date"
msgstr "作成日時"
-#: build/models.py:257
+#: build/models.py:261
msgid "Target completion date"
msgstr ""
-#: build/models.py:258
+#: build/models.py:262
msgid "Target date for build completion. Build will be overdue after this date."
msgstr ""
-#: build/models.py:261 order/models.py:409 order/models.py:1767
-#: templates/js/translated/build.js:2953
+#: build/models.py:265 order/models.py:422 order/models.py:1780
+#: templates/js/translated/build.js:2170
msgid "Completion Date"
msgstr ""
-#: build/models.py:267
+#: build/models.py:271
msgid "completed by"
msgstr ""
-#: build/models.py:275 templates/js/translated/build.js:2913
+#: build/models.py:279 templates/js/translated/build.js:2130
msgid "Issued by"
msgstr ""
-#: build/models.py:276
+#: build/models.py:280
msgid "User who issued this build order"
msgstr ""
-#: build/models.py:284 build/templates/build/build_base.html:204
-#: build/templates/build/detail.html:122 order/models.py:258
-#: order/templates/order/order_base.html:214
-#: order/templates/order/return_order_base.html:182
-#: order/templates/order/sales_order_base.html:222 part/models.py:1042
+#: build/models.py:288 build/templates/build/build_base.html:205
+#: build/templates/build/detail.html:122 order/models.py:262
+#: order/templates/order/order_base.html:217
+#: order/templates/order/return_order_base.html:189
+#: order/templates/order/sales_order_base.html:229 part/models.py:1043
#: part/templates/part/part_base.html:392
#: report/templates/report/inventree_build_order_base.html:158
-#: templates/js/translated/build.js:2925
-#: templates/js/translated/purchase_order.js:1723
-#: templates/js/translated/return_order.js:347
-#: templates/js/translated/table_filters.js:461
+#: templates/js/translated/build.js:2142
+#: templates/js/translated/purchase_order.js:1738
+#: templates/js/translated/return_order.js:359
+#: templates/js/translated/table_filters.js:467
msgid "Responsible"
msgstr ""
-#: build/models.py:285
+#: build/models.py:289
msgid "User or group responsible for this build order"
msgstr ""
-#: build/models.py:290 build/templates/build/detail.html:108
+#: build/models.py:294 build/templates/build/detail.html:108
#: company/templates/company/manufacturer_part.html:107
#: company/templates/company/supplier_part.html:195
-#: order/templates/order/order_base.html:171
+#: order/templates/order/order_base.html:167
#: order/templates/order/return_order_base.html:146
#: order/templates/order/sales_order_base.html:181
#: part/templates/part/part_base.html:385 stock/models.py:733
#: stock/templates/stock/item_base.html:201
+#: templates/js/translated/company.js:1050
msgid "External Link"
msgstr ""
-#: build/models.py:295
+#: build/models.py:299
msgid "Build Priority"
msgstr ""
-#: build/models.py:298
+#: build/models.py:302
msgid "Priority of this build order"
msgstr ""
-#: build/models.py:536
+#: build/models.py:309 common/models.py:104 order/admin.py:17
+#: order/models.py:237 templates/InvenTree/settings/settings_staff_js.html:70
+#: templates/js/translated/build.js:2067
+#: templates/js/translated/purchase_order.js:1685
+#: templates/js/translated/return_order.js:318
+#: templates/js/translated/sales_order.js:806
+#: templates/js/translated/table_filters.js:24
+#: templates/project_code_data.html:6
+msgid "Project Code"
+msgstr ""
+
+#: build/models.py:310
+msgid "Project code for this build order"
+msgstr ""
+
+#: build/models.py:545
#, python-brace-format
msgid "Build order {build} has been completed"
msgstr ""
-#: build/models.py:542
+#: build/models.py:551
msgid "A build order has been completed"
msgstr ""
-#: build/models.py:744 build/models.py:811
+#: build/models.py:753 build/models.py:831
msgid "No build output specified"
msgstr ""
-#: build/models.py:747
+#: build/models.py:756
msgid "Build output is already completed"
msgstr ""
-#: build/models.py:750
+#: build/models.py:759
msgid "Build output does not match Build Order"
msgstr ""
-#: build/models.py:815 build/serializers.py:212 build/serializers.py:251
-#: build/serializers.py:811 order/models.py:440 order/serializers.py:379
-#: order/serializers.py:501 part/serializers.py:1087 part/serializers.py:1408
-#: stock/models.py:593 stock/models.py:1387 stock/serializers.py:315
+#: build/models.py:835 build/serializers.py:220 build/serializers.py:259
+#: build/serializers.py:819 order/models.py:453 order/serializers.py:385
+#: order/serializers.py:507 part/serializers.py:1149 part/serializers.py:1470
+#: stock/models.py:593 stock/models.py:1387 stock/serializers.py:381
msgid "Quantity must be greater than zero"
msgstr ""
-#: build/models.py:820 build/serializers.py:217
+#: build/models.py:840 build/serializers.py:225
msgid "Quantity cannot be greater than the output quantity"
msgstr ""
-#: build/models.py:1272
-msgid "Build item must specify a build output, as master part is marked as trackable"
+#: build/models.py:1260
+msgid "Build object"
msgstr ""
-#: build/models.py:1281
-#, python-brace-format
-msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})"
-msgstr ""
-
-#: build/models.py:1291 order/models.py:1601
-msgid "Stock item is over-allocated"
-msgstr ""
-
-#: build/models.py:1297 order/models.py:1604
-msgid "Allocation quantity must be greater than zero"
-msgstr ""
-
-#: build/models.py:1303
-msgid "Quantity must be 1 for serialized stock"
-msgstr ""
-
-#: build/models.py:1360
-msgid "Selected stock item not found in BOM"
-msgstr ""
-
-#: build/models.py:1438 stock/templates/stock/item_base.html:170
-#: templates/InvenTree/search.html:139 templates/js/translated/build.js:2841
-#: templates/navbar.html:38
-msgid "Build"
-msgstr "組立"
-
-#: build/models.py:1439
-msgid "Build to allocate parts"
-msgstr "パーツを割り当てるためにビルドする"
-
-#: build/models.py:1455 build/serializers.py:791 order/serializers.py:1059
-#: order/serializers.py:1080 stock/serializers.py:413 stock/serializers.py:770
-#: stock/serializers.py:896 stock/templates/stock/item_base.html:10
-#: stock/templates/stock/item_base.html:23
-#: stock/templates/stock/item_base.html:195
-#: templates/js/translated/build.js:955 templates/js/translated/build.js:960
-#: templates/js/translated/build.js:2466 templates/js/translated/build.js:3038
-#: templates/js/translated/sales_order.js:286
-#: templates/js/translated/sales_order.js:1186
-#: templates/js/translated/sales_order.js:1485
-#: templates/js/translated/sales_order.js:1490
-#: templates/js/translated/sales_order.js:1591
-#: templates/js/translated/sales_order.js:1678
-#: templates/js/translated/stock.js:644 templates/js/translated/stock.js:810
-#: templates/js/translated/stock.js:2714
-msgid "Stock Item"
-msgstr "在庫商品"
-
-#: build/models.py:1456
-msgid "Source stock item"
-msgstr ""
-
-#: build/models.py:1468 build/serializers.py:198 build/serializers.py:236
-#: build/templates/build/build_base.html:103
-#: build/templates/build/detail.html:34 common/models.py:2176
-#: order/models.py:1073 order/models.py:1645 order/serializers.py:1233
+#: build/models.py:1274 build/models.py:1556 build/serializers.py:206
+#: build/serializers.py:244 build/templates/build/build_base.html:103
+#: build/templates/build/detail.html:34 common/models.py:2162
+#: order/models.py:1086 order/models.py:1658 order/serializers.py:1239
#: order/templates/order/order_wizard/match_parts.html:30 part/admin.py:277
-#: part/forms.py:47 part/models.py:2992 part/models.py:3779
+#: part/forms.py:47 part/models.py:3026 part/models.py:3823
#: part/templates/part/part_pricing.html:16
#: part/templates/part/upload_bom.html:53
#: report/templates/report/inventree_bill_of_materials_report.html:138
@@ -1203,315 +1200,367 @@ msgstr ""
#: report/templates/report/inventree_so_report_base.html:29
#: report/templates/report/inventree_test_report_base.html:90
#: report/templates/report/inventree_test_report_base.html:170
-#: stock/admin.py:103 stock/serializers.py:306
+#: stock/admin.py:103 stock/serializers.py:372
#: stock/templates/stock/item_base.html:288
#: stock/templates/stock/item_base.html:296
#: stock/templates/stock/item_base.html:343
#: templates/email/build_order_completed.html:18
-#: templates/js/translated/barcode.js:531 templates/js/translated/bom.js:770
-#: templates/js/translated/bom.js:951 templates/js/translated/build.js:504
-#: templates/js/translated/build.js:716 templates/js/translated/build.js:982
-#: templates/js/translated/build.js:1425 templates/js/translated/build.js:1991
-#: templates/js/translated/build.js:2467
-#: templates/js/translated/company.js:1428
-#: templates/js/translated/model_renderers.js:207
-#: templates/js/translated/order.js:304 templates/js/translated/part.js:935
-#: templates/js/translated/part.js:1784 templates/js/translated/part.js:3263
+#: templates/js/translated/barcode.js:531 templates/js/translated/bom.js:771
+#: templates/js/translated/bom.js:969 templates/js/translated/build.js:510
+#: templates/js/translated/build.js:722 templates/js/translated/build.js:1308
+#: templates/js/translated/build.js:1672 templates/js/translated/build.js:2283
+#: templates/js/translated/company.js:1849
+#: templates/js/translated/model_renderers.js:221
+#: templates/js/translated/order.js:304 templates/js/translated/part.js:934
+#: templates/js/translated/part.js:1783 templates/js/translated/part.js:3248
#: templates/js/translated/pricing.js:381
#: templates/js/translated/pricing.js:474
#: templates/js/translated/pricing.js:522
#: templates/js/translated/pricing.js:616
-#: templates/js/translated/purchase_order.js:749
-#: templates/js/translated/purchase_order.js:1815
-#: templates/js/translated/purchase_order.js:2039
-#: templates/js/translated/sales_order.js:302
-#: templates/js/translated/sales_order.js:1187
-#: templates/js/translated/sales_order.js:1504
-#: templates/js/translated/sales_order.js:1594
-#: templates/js/translated/sales_order.js:1684
-#: templates/js/translated/sales_order.js:1804
-#: templates/js/translated/stock.js:531 templates/js/translated/stock.js:669
-#: templates/js/translated/stock.js:840 templates/js/translated/stock.js:2758
-#: templates/js/translated/stock.js:2843
+#: templates/js/translated/purchase_order.js:760
+#: templates/js/translated/purchase_order.js:1830
+#: templates/js/translated/purchase_order.js:2049
+#: templates/js/translated/sales_order.js:314
+#: templates/js/translated/sales_order.js:1199
+#: templates/js/translated/sales_order.js:1516
+#: templates/js/translated/sales_order.js:1606
+#: templates/js/translated/sales_order.js:1696
+#: templates/js/translated/sales_order.js:1816
+#: templates/js/translated/stock.js:530 templates/js/translated/stock.js:668
+#: templates/js/translated/stock.js:839 templates/js/translated/stock.js:2889
+#: templates/js/translated/stock.js:2970
msgid "Quantity"
msgstr "数量"
-#: build/models.py:1469
+#: build/models.py:1275
+msgid "Required quantity for build order"
+msgstr ""
+
+#: build/models.py:1357
+msgid "Build item must specify a build output, as master part is marked as trackable"
+msgstr ""
+
+#: build/models.py:1366
+#, python-brace-format
+msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})"
+msgstr ""
+
+#: build/models.py:1376 order/models.py:1614
+msgid "Stock item is over-allocated"
+msgstr ""
+
+#: build/models.py:1382 order/models.py:1617
+msgid "Allocation quantity must be greater than zero"
+msgstr ""
+
+#: build/models.py:1388
+msgid "Quantity must be 1 for serialized stock"
+msgstr ""
+
+#: build/models.py:1449
+msgid "Selected stock item does not match BOM line"
+msgstr ""
+
+#: build/models.py:1543 build/serializers.py:799 order/serializers.py:1065
+#: order/serializers.py:1086 stock/serializers.py:479 stock/serializers.py:887
+#: stock/serializers.py:1013 stock/templates/stock/item_base.html:10
+#: stock/templates/stock/item_base.html:23
+#: stock/templates/stock/item_base.html:195
+#: templates/js/translated/build.js:1671
+#: templates/js/translated/sales_order.js:298
+#: templates/js/translated/sales_order.js:1198
+#: templates/js/translated/sales_order.js:1497
+#: templates/js/translated/sales_order.js:1502
+#: templates/js/translated/sales_order.js:1603
+#: templates/js/translated/sales_order.js:1690
+#: templates/js/translated/stock.js:643 templates/js/translated/stock.js:809
+#: templates/js/translated/stock.js:2845
+msgid "Stock Item"
+msgstr "在庫商品"
+
+#: build/models.py:1544
+msgid "Source stock item"
+msgstr ""
+
+#: build/models.py:1557
msgid "Stock quantity to allocate to build"
msgstr ""
-#: build/models.py:1477
+#: build/models.py:1565
msgid "Install into"
msgstr ""
-#: build/models.py:1478
+#: build/models.py:1566
msgid "Destination stock item"
msgstr ""
-#: build/serializers.py:148 build/serializers.py:820
-#: templates/js/translated/build.js:1413
+#: build/serializers.py:156 build/serializers.py:828
+#: templates/js/translated/build.js:1299
msgid "Build Output"
msgstr ""
-#: build/serializers.py:160
+#: build/serializers.py:168
msgid "Build output does not match the parent build"
msgstr ""
-#: build/serializers.py:164
+#: build/serializers.py:172
msgid "Output part does not match BuildOrder part"
msgstr ""
-#: build/serializers.py:168
+#: build/serializers.py:176
msgid "This build output has already been completed"
msgstr ""
-#: build/serializers.py:179
+#: build/serializers.py:187
msgid "This build output is not fully allocated"
msgstr ""
-#: build/serializers.py:199 build/serializers.py:237
+#: build/serializers.py:207 build/serializers.py:245
msgid "Enter quantity for build output"
msgstr ""
-#: build/serializers.py:258
+#: build/serializers.py:266
msgid "Integer quantity required for trackable parts"
msgstr ""
-#: build/serializers.py:261
+#: build/serializers.py:269
msgid "Integer quantity required, as the bill of materials contains trackable parts"
msgstr ""
-#: build/serializers.py:276 order/serializers.py:514 order/serializers.py:1237
-#: stock/serializers.py:324 templates/js/translated/purchase_order.js:1123
-#: templates/js/translated/stock.js:334 templates/js/translated/stock.js:532
+#: build/serializers.py:284 order/serializers.py:520 order/serializers.py:1243
+#: stock/serializers.py:390 templates/js/translated/purchase_order.js:1138
+#: templates/js/translated/stock.js:333 templates/js/translated/stock.js:531
msgid "Serial Numbers"
msgstr ""
-#: build/serializers.py:277
+#: build/serializers.py:285
msgid "Enter serial numbers for build outputs"
msgstr ""
-#: build/serializers.py:290
+#: build/serializers.py:298
msgid "Auto Allocate Serial Numbers"
msgstr ""
-#: build/serializers.py:291
+#: build/serializers.py:299
msgid "Automatically allocate required items with matching serial numbers"
msgstr ""
-#: build/serializers.py:326 stock/api.py:670
+#: build/serializers.py:334 stock/api.py:707
msgid "The following serial numbers already exist or are invalid"
msgstr ""
-#: build/serializers.py:377 build/serializers.py:439 build/serializers.py:518
+#: build/serializers.py:385 build/serializers.py:447 build/serializers.py:526
msgid "A list of build outputs must be provided"
msgstr ""
-#: build/serializers.py:415 build/serializers.py:488 order/serializers.py:487
-#: order/serializers.py:606 order/serializers.py:1588 part/serializers.py:854
-#: stock/serializers.py:335 stock/serializers.py:470 stock/serializers.py:551
-#: stock/serializers.py:931 stock/serializers.py:1173
+#: build/serializers.py:423 build/serializers.py:496 order/serializers.py:493
+#: order/serializers.py:612 order/serializers.py:1594 part/serializers.py:916
+#: stock/serializers.py:401 stock/serializers.py:537 stock/serializers.py:618
+#: stock/serializers.py:1048 stock/serializers.py:1290
#: stock/templates/stock/item_base.html:390
#: templates/js/translated/barcode.js:530
-#: templates/js/translated/barcode.js:778 templates/js/translated/build.js:967
-#: templates/js/translated/build.js:2006
-#: templates/js/translated/purchase_order.js:1148
-#: templates/js/translated/purchase_order.js:1238
-#: templates/js/translated/sales_order.js:1497
-#: templates/js/translated/sales_order.js:1605
-#: templates/js/translated/sales_order.js:1613
-#: templates/js/translated/sales_order.js:1692
-#: templates/js/translated/stock.js:645 templates/js/translated/stock.js:811
-#: templates/js/translated/stock.js:1023 templates/js/translated/stock.js:1937
-#: templates/js/translated/stock.js:2608
+#: templates/js/translated/barcode.js:778 templates/js/translated/build.js:980
+#: templates/js/translated/build.js:2298
+#: templates/js/translated/purchase_order.js:1163
+#: templates/js/translated/purchase_order.js:1253
+#: templates/js/translated/sales_order.js:1509
+#: templates/js/translated/sales_order.js:1617
+#: templates/js/translated/sales_order.js:1625
+#: templates/js/translated/sales_order.js:1704
+#: templates/js/translated/stock.js:644 templates/js/translated/stock.js:810
+#: templates/js/translated/stock.js:1022 templates/js/translated/stock.js:2094
+#: templates/js/translated/stock.js:2739
msgid "Location"
msgstr ""
-#: build/serializers.py:416
+#: build/serializers.py:424
msgid "Stock location for scrapped outputs"
msgstr ""
-#: build/serializers.py:422
+#: build/serializers.py:430
msgid "Discard Allocations"
msgstr ""
-#: build/serializers.py:423
+#: build/serializers.py:431
msgid "Discard any stock allocations for scrapped outputs"
msgstr ""
-#: build/serializers.py:428
+#: build/serializers.py:436
msgid "Reason for scrapping build output(s)"
msgstr ""
-#: build/serializers.py:489
+#: build/serializers.py:497
msgid "Location for completed build outputs"
msgstr ""
-#: build/serializers.py:495 build/templates/build/build_base.html:151
-#: build/templates/build/detail.html:62 order/models.py:791
-#: order/models.py:1750 order/serializers.py:524 stock/admin.py:106
-#: stock/templates/stock/item_base.html:423
-#: templates/js/translated/barcode.js:252 templates/js/translated/build.js:2897
-#: templates/js/translated/purchase_order.js:1278
-#: templates/js/translated/purchase_order.js:1682
-#: templates/js/translated/return_order.js:319
-#: templates/js/translated/sales_order.js:807
-#: templates/js/translated/stock.js:1912 templates/js/translated/stock.js:2732
-#: templates/js/translated/stock.js:2859
+#: build/serializers.py:503 build/templates/build/build_base.html:152
+#: build/templates/build/detail.html:62 order/models.py:804
+#: order/models.py:1763 order/serializers.py:530 stock/admin.py:106
+#: stock/serializers.py:677 stock/templates/stock/item_base.html:423
+#: templates/js/translated/barcode.js:252 templates/js/translated/build.js:2114
+#: templates/js/translated/purchase_order.js:1293
+#: templates/js/translated/purchase_order.js:1697
+#: templates/js/translated/return_order.js:331
+#: templates/js/translated/sales_order.js:819
+#: templates/js/translated/stock.js:2069 templates/js/translated/stock.js:2863
+#: templates/js/translated/stock.js:2986
msgid "Status"
msgstr "ステータス"
-#: build/serializers.py:501
+#: build/serializers.py:509
msgid "Accept Incomplete Allocation"
msgstr ""
-#: build/serializers.py:502
+#: build/serializers.py:510
msgid "Complete outputs if stock has not been fully allocated"
msgstr ""
-#: build/serializers.py:571
+#: build/serializers.py:579
msgid "Remove Allocated Stock"
msgstr ""
-#: build/serializers.py:572
+#: build/serializers.py:580
msgid "Subtract any stock which has already been allocated to this build"
msgstr ""
-#: build/serializers.py:578
+#: build/serializers.py:586
msgid "Remove Incomplete Outputs"
msgstr ""
-#: build/serializers.py:579
+#: build/serializers.py:587
msgid "Delete any build outputs which have not been completed"
msgstr ""
-#: build/serializers.py:606
+#: build/serializers.py:614
msgid "Not permitted"
msgstr ""
-#: build/serializers.py:607
+#: build/serializers.py:615
msgid "Accept as consumed by this build order"
msgstr ""
-#: build/serializers.py:608
+#: build/serializers.py:616
msgid "Deallocate before completing this build order"
msgstr ""
-#: build/serializers.py:631
+#: build/serializers.py:639
msgid "Overallocated Stock"
msgstr ""
-#: build/serializers.py:633
+#: build/serializers.py:641
msgid "How do you want to handle extra stock items assigned to the build order"
msgstr ""
-#: build/serializers.py:643
+#: build/serializers.py:651
msgid "Some stock items have been overallocated"
msgstr ""
-#: build/serializers.py:648
+#: build/serializers.py:656
msgid "Accept Unallocated"
msgstr ""
-#: build/serializers.py:649
+#: build/serializers.py:657
msgid "Accept that stock items have not been fully allocated to this build order"
msgstr ""
-#: build/serializers.py:659 templates/js/translated/build.js:295
+#: build/serializers.py:667 templates/js/translated/build.js:304
msgid "Required stock has not been fully allocated"
msgstr ""
-#: build/serializers.py:664 order/serializers.py:261 order/serializers.py:1127
+#: build/serializers.py:672 order/serializers.py:267 order/serializers.py:1133
msgid "Accept Incomplete"
msgstr ""
-#: build/serializers.py:665
+#: build/serializers.py:673
msgid "Accept that the required number of build outputs have not been completed"
msgstr ""
-#: build/serializers.py:675 templates/js/translated/build.js:299
+#: build/serializers.py:683 templates/js/translated/build.js:308
msgid "Required build quantity has not been completed"
msgstr ""
-#: build/serializers.py:684 templates/js/translated/build.js:283
+#: build/serializers.py:692 templates/js/translated/build.js:292
msgid "Build order has incomplete outputs"
msgstr ""
-#: build/serializers.py:714 build/serializers.py:768 part/models.py:3686
-#: part/models.py:4069
-msgid "BOM Item"
-msgstr ""
-
-#: build/serializers.py:724
-msgid "Build output"
+#: build/serializers.py:722
+msgid "Build Line"
msgstr ""
#: build/serializers.py:732
+msgid "Build output"
+msgstr ""
+
+#: build/serializers.py:740
msgid "Build output must point to the same build"
msgstr ""
-#: build/serializers.py:782
+#: build/serializers.py:776
+msgid "Build Line Item"
+msgstr ""
+
+#: build/serializers.py:790
msgid "bom_item.part must point to the same part as the build order"
msgstr ""
-#: build/serializers.py:797 stock/serializers.py:783
+#: build/serializers.py:805 stock/serializers.py:900
msgid "Item must be in stock"
msgstr ""
-#: build/serializers.py:846 order/serializers.py:1117
+#: build/serializers.py:853 order/serializers.py:1123
#, python-brace-format
msgid "Available quantity ({q}) exceeded"
msgstr ""
-#: build/serializers.py:852
+#: build/serializers.py:859
msgid "Build output must be specified for allocation of tracked parts"
msgstr ""
-#: build/serializers.py:859
+#: build/serializers.py:866
msgid "Build output cannot be specified for allocation of untracked parts"
msgstr ""
-#: build/serializers.py:864
+#: build/serializers.py:871
msgid "This stock item has already been allocated to this build output"
msgstr ""
-#: build/serializers.py:887 order/serializers.py:1401
+#: build/serializers.py:894 order/serializers.py:1407
msgid "Allocation items must be provided"
msgstr ""
-#: build/serializers.py:943
+#: build/serializers.py:947
msgid "Stock location where parts are to be sourced (leave blank to take from any location)"
msgstr ""
-#: build/serializers.py:951
+#: build/serializers.py:955
msgid "Exclude Location"
msgstr ""
-#: build/serializers.py:952
+#: build/serializers.py:956
msgid "Exclude stock items from this selected location"
msgstr ""
-#: build/serializers.py:957
+#: build/serializers.py:961
msgid "Interchangeable Stock"
msgstr ""
-#: build/serializers.py:958
+#: build/serializers.py:962
msgid "Stock items in multiple locations can be used interchangeably"
msgstr ""
-#: build/serializers.py:963
+#: build/serializers.py:967
msgid "Substitute Stock"
msgstr ""
-#: build/serializers.py:964
+#: build/serializers.py:968
msgid "Allow allocation of substitute parts"
msgstr ""
-#: build/serializers.py:969
+#: build/serializers.py:973
msgid "Optional Items"
msgstr ""
-#: build/serializers.py:970
+#: build/serializers.py:974
msgid "Allocate optional BOM items to build order"
msgstr ""
@@ -1540,6 +1589,7 @@ msgstr ""
#: part/templates/part/part_base.html:43
#: stock/templates/stock/item_base.html:41
#: stock/templates/stock/location.html:54
+#: templates/js/translated/filters.js:336
msgid "Barcode actions"
msgstr ""
@@ -1618,69 +1668,67 @@ msgstr ""
msgid "Build Description"
msgstr ""
-#: build/templates/build/build_base.html:117
+#: build/templates/build/build_base.html:118
msgid "No build outputs have been created for this build order"
msgstr ""
-#: build/templates/build/build_base.html:124
+#: build/templates/build/build_base.html:125
msgid "Build Order is ready to mark as completed"
msgstr ""
-#: build/templates/build/build_base.html:129
+#: build/templates/build/build_base.html:130
msgid "Build Order cannot be completed as outstanding outputs remain"
msgstr ""
-#: build/templates/build/build_base.html:134
+#: build/templates/build/build_base.html:135
msgid "Required build quantity has not yet been completed"
msgstr ""
-#: build/templates/build/build_base.html:139
+#: build/templates/build/build_base.html:140
msgid "Stock has not been fully allocated to this Build Order"
msgstr ""
-#: build/templates/build/build_base.html:160
-#: build/templates/build/detail.html:138 order/models.py:240
-#: order/models.py:1099 order/templates/order/order_base.html:190
+#: build/templates/build/build_base.html:161
+#: build/templates/build/detail.html:138 order/models.py:244
+#: order/models.py:1112 order/templates/order/order_base.html:186
#: order/templates/order/return_order_base.html:165
#: order/templates/order/sales_order_base.html:193
#: report/templates/report/inventree_build_order_base.html:125
-#: templates/js/translated/build.js:2945 templates/js/translated/part.js:1802
-#: templates/js/translated/purchase_order.js:1699
-#: templates/js/translated/purchase_order.js:2115
-#: templates/js/translated/return_order.js:335
-#: templates/js/translated/return_order.js:735
-#: templates/js/translated/sales_order.js:823
-#: templates/js/translated/sales_order.js:1847
+#: templates/js/translated/build.js:2162 templates/js/translated/part.js:1801
+#: templates/js/translated/purchase_order.js:1714
+#: templates/js/translated/purchase_order.js:2125
+#: templates/js/translated/return_order.js:347
+#: templates/js/translated/return_order.js:747
+#: templates/js/translated/sales_order.js:835
+#: templates/js/translated/sales_order.js:1859
msgid "Target Date"
msgstr ""
-#: build/templates/build/build_base.html:165
+#: build/templates/build/build_base.html:166
#, python-format
msgid "This build was due on %(target)s"
msgstr ""
-#: build/templates/build/build_base.html:165
-#: build/templates/build/build_base.html:222
-#: order/templates/order/order_base.html:126
+#: build/templates/build/build_base.html:166
+#: build/templates/build/build_base.html:223
+#: order/templates/order/order_base.html:122
#: order/templates/order/return_order_base.html:118
#: order/templates/order/sales_order_base.html:123
-#: templates/js/translated/table_filters.js:68
-#: templates/js/translated/table_filters.js:454
-#: templates/js/translated/table_filters.js:539
-#: templates/js/translated/table_filters.js:580
+#: templates/js/translated/table_filters.js:74
+#: templates/js/translated/table_filters.js:460
+#: templates/js/translated/table_filters.js:561
+#: templates/js/translated/table_filters.js:602
msgid "Overdue"
msgstr ""
-#: build/templates/build/build_base.html:177
-#: build/templates/build/detail.html:67 build/templates/build/detail.html:149
-#: order/templates/order/sales_order_base.html:203
-#: templates/js/translated/table_filters.js:602
-msgid "Completed"
+#: build/templates/build/build_base.html:178
+#: build/templates/build/detail.html:67 build/templates/build/sidebar.html:13
+msgid "Completed Outputs"
msgstr ""
-#: build/templates/build/build_base.html:190
-#: build/templates/build/detail.html:101 order/api.py:1454 order/models.py:1304
-#: order/models.py:1403 order/models.py:1551
+#: build/templates/build/build_base.html:191
+#: build/templates/build/detail.html:101 order/api.py:1454 order/models.py:1317
+#: order/models.py:1416 order/models.py:1564
#: order/templates/order/sales_order_base.html:9
#: order/templates/order/sales_order_base.html:28
#: report/templates/report/inventree_build_order_base.html:135
@@ -1688,32 +1736,32 @@ msgstr ""
#: stock/templates/stock/item_base.html:370
#: templates/email/overdue_sales_order.html:15
#: templates/js/translated/pricing.js:915
-#: templates/js/translated/sales_order.js:757
-#: templates/js/translated/sales_order.js:980
-#: templates/js/translated/stock.js:2661
+#: templates/js/translated/sales_order.js:769
+#: templates/js/translated/sales_order.js:992
+#: templates/js/translated/stock.js:2792
msgid "Sales Order"
msgstr ""
-#: build/templates/build/build_base.html:197
+#: build/templates/build/build_base.html:198
#: build/templates/build/detail.html:115
#: report/templates/report/inventree_build_order_base.html:152
msgid "Issued By"
msgstr ""
-#: build/templates/build/build_base.html:211
-#: build/templates/build/detail.html:94 templates/js/translated/build.js:2862
+#: build/templates/build/build_base.html:212
+#: build/templates/build/detail.html:94 templates/js/translated/build.js:2079
msgid "Priority"
msgstr ""
-#: build/templates/build/build_base.html:273
+#: build/templates/build/build_base.html:274
msgid "Delete Build Order"
msgstr ""
-#: build/templates/build/build_base.html:283
+#: build/templates/build/build_base.html:284
msgid "Build Order QR Code"
msgstr ""
-#: build/templates/build/build_base.html:295
+#: build/templates/build/build_base.html:296
msgid "Link Barcode to Build Order"
msgstr ""
@@ -1729,8 +1777,8 @@ msgstr ""
msgid "Stock can be taken from any available location."
msgstr ""
-#: build/templates/build/detail.html:49 order/models.py:1222
-#: templates/js/translated/purchase_order.js:2157
+#: build/templates/build/detail.html:49 order/models.py:1235
+#: templates/js/translated/purchase_order.js:2167
msgid "Destination"
msgstr ""
@@ -1744,21 +1792,21 @@ msgstr ""
#: build/templates/build/detail.html:80 stock/admin.py:105
#: stock/templates/stock/item_base.html:163
-#: templates/js/translated/build.js:1432
-#: templates/js/translated/model_renderers.js:212
-#: templates/js/translated/purchase_order.js:1244
-#: templates/js/translated/stock.js:1093 templates/js/translated/stock.js:1926
-#: templates/js/translated/stock.js:2866
-#: templates/js/translated/table_filters.js:259
-#: templates/js/translated/table_filters.js:350
+#: templates/js/translated/build.js:1319
+#: templates/js/translated/model_renderers.js:226
+#: templates/js/translated/purchase_order.js:1259
+#: templates/js/translated/stock.js:1092 templates/js/translated/stock.js:2083
+#: templates/js/translated/stock.js:2993
+#: templates/js/translated/table_filters.js:265
+#: templates/js/translated/table_filters.js:356
msgid "Batch"
msgstr ""
#: build/templates/build/detail.html:133
-#: order/templates/order/order_base.html:177
+#: order/templates/order/order_base.html:173
#: order/templates/order/return_order_base.html:152
#: order/templates/order/sales_order_base.html:187
-#: templates/js/translated/build.js:2905
+#: templates/js/translated/build.js:2122
msgid "Created"
msgstr ""
@@ -1766,147 +1814,106 @@ msgstr ""
msgid "No target date set"
msgstr ""
+#: build/templates/build/detail.html:149
+#: order/templates/order/sales_order_base.html:203
+#: templates/js/translated/table_filters.js:624
+msgid "Completed"
+msgstr ""
+
#: build/templates/build/detail.html:153
msgid "Build not complete"
msgstr ""
-#: build/templates/build/detail.html:164 build/templates/build/sidebar.html:19
+#: build/templates/build/detail.html:164 build/templates/build/sidebar.html:17
msgid "Child Build Orders"
msgstr ""
-#: build/templates/build/detail.html:179
+#: build/templates/build/detail.html:177
msgid "Allocate Stock to Build"
msgstr ""
-#: build/templates/build/detail.html:183 templates/js/translated/build.js:2276
-msgid "Unallocate stock"
+#: build/templates/build/detail.html:181
+msgid "Deallocate stock"
+msgstr ""
+
+#: build/templates/build/detail.html:182
+msgid "Deallocate Stock"
msgstr ""
#: build/templates/build/detail.html:184
-msgid "Unallocate Stock"
-msgstr ""
-
-#: build/templates/build/detail.html:186
msgid "Automatically allocate stock to build"
msgstr ""
-#: build/templates/build/detail.html:187
+#: build/templates/build/detail.html:185
msgid "Auto Allocate"
msgstr ""
-#: build/templates/build/detail.html:189
+#: build/templates/build/detail.html:187
msgid "Manually allocate stock to build"
msgstr ""
-#: build/templates/build/detail.html:190 build/templates/build/sidebar.html:8
+#: build/templates/build/detail.html:188 build/templates/build/sidebar.html:8
msgid "Allocate Stock"
msgstr ""
-#: build/templates/build/detail.html:193
+#: build/templates/build/detail.html:191
msgid "Order required parts"
msgstr "注文必須パーツ"
-#: build/templates/build/detail.html:194
-#: company/templates/company/detail.html:38
-#: company/templates/company/detail.html:86
-#: part/templates/part/category.html:184
-#: templates/js/translated/purchase_order.js:789
+#: build/templates/build/detail.html:192
+#: templates/js/translated/purchase_order.js:800
msgid "Order Parts"
msgstr "パーツの注文"
-#: build/templates/build/detail.html:206
-msgid "Untracked stock has been fully allocated for this Build Order"
-msgstr ""
-
#: build/templates/build/detail.html:210
-msgid "Untracked stock has not been fully allocated for this Build Order"
-msgstr ""
-
-#: build/templates/build/detail.html:217
-msgid "Allocate selected items"
-msgstr ""
-
-#: build/templates/build/detail.html:227
-msgid "This Build Order does not have any associated untracked BOM items"
-msgstr ""
-
-#: build/templates/build/detail.html:236
msgid "Incomplete Build Outputs"
msgstr ""
-#: build/templates/build/detail.html:240
+#: build/templates/build/detail.html:214
msgid "Create new build output"
msgstr ""
-#: build/templates/build/detail.html:241
+#: build/templates/build/detail.html:215
msgid "New Build Output"
msgstr ""
-#: build/templates/build/detail.html:255
-msgid "Output Actions"
-msgstr ""
-
-#: build/templates/build/detail.html:260
-msgid "Complete selected build outputs"
-msgstr ""
-
-#: build/templates/build/detail.html:261
-msgid "Complete outputs"
-msgstr ""
-
-#: build/templates/build/detail.html:265
-msgid "Scrap selected build outputs"
-msgstr ""
-
-#: build/templates/build/detail.html:266
-msgid "Scrap outputs"
-msgstr ""
-
-#: build/templates/build/detail.html:270
-msgid "Delete selected build outputs"
-msgstr ""
-
-#: build/templates/build/detail.html:271
-msgid "Delete outputs"
-msgstr ""
-
-#: build/templates/build/detail.html:288 build/templates/build/sidebar.html:11
+#: build/templates/build/detail.html:232 build/templates/build/sidebar.html:15
msgid "Consumed Stock"
msgstr ""
-#: build/templates/build/detail.html:300
+#: build/templates/build/detail.html:244
msgid "Completed Build Outputs"
msgstr ""
-#: build/templates/build/detail.html:312 build/templates/build/sidebar.html:21
-#: company/templates/company/detail.html:261
-#: company/templates/company/manufacturer_part.html:151
+#: build/templates/build/detail.html:256 build/templates/build/sidebar.html:19
+#: company/templates/company/detail.html:229
+#: company/templates/company/manufacturer_part.html:141
#: company/templates/company/manufacturer_part_sidebar.html:9
-#: company/templates/company/sidebar.html:37
+#: company/templates/company/sidebar.html:39
#: order/templates/order/po_sidebar.html:9
-#: order/templates/order/purchase_order_detail.html:102
-#: order/templates/order/return_order_detail.html:74
+#: order/templates/order/purchase_order_detail.html:84
+#: order/templates/order/return_order_detail.html:70
#: order/templates/order/return_order_sidebar.html:7
-#: order/templates/order/sales_order_detail.html:134
-#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:234
-#: part/templates/part/part_sidebar.html:61 stock/templates/stock/item.html:117
+#: order/templates/order/sales_order_detail.html:124
+#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:217
+#: part/templates/part/part_sidebar.html:61 stock/templates/stock/item.html:109
#: stock/templates/stock/stock_sidebar.html:23
msgid "Attachments"
msgstr ""
-#: build/templates/build/detail.html:327
+#: build/templates/build/detail.html:271
msgid "Build Notes"
msgstr ""
-#: build/templates/build/detail.html:502
+#: build/templates/build/detail.html:425
msgid "Allocation Complete"
msgstr ""
-#: build/templates/build/detail.html:503
-msgid "All untracked stock items have been allocated"
+#: build/templates/build/detail.html:426
+msgid "All lines have been fully allocated"
msgstr ""
-#: build/templates/build/index.html:18 part/templates/part/detail.html:340
+#: build/templates/build/index.html:18 part/templates/part/detail.html:319
msgid "New Build Order"
msgstr ""
@@ -1914,14 +1921,10 @@ msgstr ""
msgid "Build Order Details"
msgstr ""
-#: build/templates/build/sidebar.html:14
+#: build/templates/build/sidebar.html:10
msgid "Incomplete Outputs"
msgstr ""
-#: build/templates/build/sidebar.html:17
-msgid "Completed Outputs"
-msgstr ""
-
#: common/files.py:63
#, python-brace-format
msgid "Unsupported file format: {fmt}"
@@ -1968,16 +1971,6 @@ msgstr ""
msgid "Timestamp of last update"
msgstr ""
-#: common/models.py:104 order/admin.py:17 order/models.py:234
-#: templates/InvenTree/settings/settings_staff_js.html:70
-#: templates/js/translated/purchase_order.js:1670
-#: templates/js/translated/return_order.js:306
-#: templates/js/translated/sales_order.js:794
-#: templates/js/translated/table_filters.js:24
-#: templates/project_code_data.html:6
-msgid "Project Code"
-msgstr ""
-
#: common/models.py:105
msgid "Unique project code"
msgstr ""
@@ -2261,9 +2254,9 @@ msgstr ""
msgid "Copy category parameter templates when creating a part"
msgstr ""
-#: common/models.py:1162 part/admin.py:55 part/models.py:3560
-#: report/models.py:166 templates/js/translated/table_filters.js:109
-#: templates/js/translated/table_filters.js:680
+#: common/models.py:1162 part/admin.py:55 part/models.py:3594
+#: report/models.py:166 templates/js/translated/table_filters.js:115
+#: templates/js/translated/table_filters.js:702
msgid "Template"
msgstr "テンプレート"
@@ -2271,10 +2264,10 @@ msgstr "テンプレート"
msgid "Parts are templates by default"
msgstr "パーツはデフォルトのテンプレートです"
-#: common/models.py:1169 part/admin.py:51 part/admin.py:283 part/models.py:996
-#: templates/js/translated/bom.js:1598
-#: templates/js/translated/table_filters.js:276
-#: templates/js/translated/table_filters.js:634
+#: common/models.py:1169 part/admin.py:51 part/admin.py:283 part/models.py:997
+#: templates/js/translated/bom.js:1618
+#: templates/js/translated/table_filters.js:282
+#: templates/js/translated/table_filters.js:656
msgid "Assembly"
msgstr "アセンブリ"
@@ -2282,8 +2275,8 @@ msgstr "アセンブリ"
msgid "Parts can be assembled from other components by default"
msgstr "パーツはデフォルトで他のコンポーネントから組み立てることができます"
-#: common/models.py:1176 part/admin.py:52 part/models.py:1002
-#: templates/js/translated/table_filters.js:642
+#: common/models.py:1176 part/admin.py:52 part/models.py:1003
+#: templates/js/translated/table_filters.js:664
msgid "Component"
msgstr "コンポーネント"
@@ -2291,7 +2284,7 @@ msgstr "コンポーネント"
msgid "Parts can be used as sub-components by default"
msgstr "パーツはデフォルトでサブコンポーネントとして使用できます"
-#: common/models.py:1183 part/admin.py:53 part/models.py:1013
+#: common/models.py:1183 part/admin.py:53 part/models.py:1014
msgid "Purchaseable"
msgstr "購入可能"
@@ -2299,8 +2292,8 @@ msgstr "購入可能"
msgid "Parts are purchaseable by default"
msgstr "パーツはデフォルトで購入可能です"
-#: common/models.py:1190 part/admin.py:54 part/models.py:1018
-#: templates/js/translated/table_filters.js:668
+#: common/models.py:1190 part/admin.py:54 part/models.py:1019
+#: templates/js/translated/table_filters.js:690
msgid "Salable"
msgstr ""
@@ -2308,10 +2301,10 @@ msgstr ""
msgid "Parts are salable by default"
msgstr "パーツはデフォルトで販売可能です"
-#: common/models.py:1197 part/admin.py:56 part/models.py:1008
-#: templates/js/translated/table_filters.js:117
-#: templates/js/translated/table_filters.js:193
-#: templates/js/translated/table_filters.js:684
+#: common/models.py:1197 part/admin.py:56 part/models.py:1009
+#: templates/js/translated/table_filters.js:123
+#: templates/js/translated/table_filters.js:199
+#: templates/js/translated/table_filters.js:706
msgid "Trackable"
msgstr "追跡可能"
@@ -2319,10 +2312,10 @@ msgstr "追跡可能"
msgid "Parts are trackable by default"
msgstr "パーツはデフォルトで追跡可能です"
-#: common/models.py:1204 part/admin.py:57 part/models.py:1028
+#: common/models.py:1204 part/admin.py:57 part/models.py:1029
#: part/templates/part/part_base.html:156
-#: templates/js/translated/table_filters.js:113
-#: templates/js/translated/table_filters.js:688
+#: templates/js/translated/table_filters.js:119
+#: templates/js/translated/table_filters.js:710
msgid "Virtual"
msgstr ""
@@ -2354,7 +2347,7 @@ msgstr ""
msgid "Allow creation of initial stock when adding a new part"
msgstr ""
-#: common/models.py:1232 templates/js/translated/part.js:108
+#: common/models.py:1232 templates/js/translated/part.js:107
msgid "Initial Supplier Data"
msgstr ""
@@ -2603,179 +2596,179 @@ msgid "Stock location default icon (empty means no icon)"
msgstr ""
#: common/models.py:1471
-msgid "Build Order Reference Pattern"
+msgid "Show Installed Stock Items"
msgstr ""
#: common/models.py:1472
-msgid "Required pattern for generating Build Order reference field"
+msgid "Display installed stock items in stock tables"
msgstr ""
#: common/models.py:1478
-msgid "Enable Return Orders"
+msgid "Build Order Reference Pattern"
msgstr ""
#: common/models.py:1479
-msgid "Enable return order functionality in the user interface"
+msgid "Required pattern for generating Build Order reference field"
msgstr ""
#: common/models.py:1485
-msgid "Return Order Reference Pattern"
+msgid "Enable Return Orders"
msgstr ""
#: common/models.py:1486
-msgid "Required pattern for generating Return Order reference field"
+msgid "Enable return order functionality in the user interface"
msgstr ""
#: common/models.py:1492
-msgid "Edit Completed Return Orders"
+msgid "Return Order Reference Pattern"
msgstr ""
#: common/models.py:1493
-msgid "Allow editing of return orders after they have been completed"
+msgid "Required pattern for generating Return Order reference field"
msgstr ""
#: common/models.py:1499
-msgid "Sales Order Reference Pattern"
+msgid "Edit Completed Return Orders"
msgstr ""
#: common/models.py:1500
-msgid "Required pattern for generating Sales Order reference field"
+msgid "Allow editing of return orders after they have been completed"
msgstr ""
#: common/models.py:1506
-msgid "Sales Order Default Shipment"
+msgid "Sales Order Reference Pattern"
msgstr ""
#: common/models.py:1507
-msgid "Enable creation of default shipment with sales orders"
+msgid "Required pattern for generating Sales Order reference field"
msgstr ""
#: common/models.py:1513
-msgid "Edit Completed Sales Orders"
+msgid "Sales Order Default Shipment"
msgstr ""
#: common/models.py:1514
-msgid "Allow editing of sales orders after they have been shipped or completed"
+msgid "Enable creation of default shipment with sales orders"
msgstr ""
#: common/models.py:1520
-msgid "Purchase Order Reference Pattern"
+msgid "Edit Completed Sales Orders"
msgstr ""
#: common/models.py:1521
-msgid "Required pattern for generating Purchase Order reference field"
+msgid "Allow editing of sales orders after they have been shipped or completed"
msgstr ""
#: common/models.py:1527
-msgid "Edit Completed Purchase Orders"
+msgid "Purchase Order Reference Pattern"
msgstr ""
#: common/models.py:1528
-msgid "Allow editing of purchase orders after they have been shipped or completed"
+msgid "Required pattern for generating Purchase Order reference field"
+msgstr ""
+
+#: common/models.py:1534
+msgid "Edit Completed Purchase Orders"
msgstr ""
#: common/models.py:1535
-msgid "Enable password forgot"
-msgstr ""
-
-#: common/models.py:1536
-msgid "Enable password forgot function on the login pages"
+msgid "Allow editing of purchase orders after they have been shipped or completed"
msgstr ""
#: common/models.py:1542
-msgid "Enable registration"
+msgid "Enable password forgot"
msgstr ""
#: common/models.py:1543
-msgid "Enable self-registration for users on the login pages"
+msgid "Enable password forgot function on the login pages"
msgstr ""
#: common/models.py:1549
-msgid "Enable SSO"
+msgid "Enable registration"
msgstr ""
#: common/models.py:1550
-msgid "Enable SSO on the login pages"
+msgid "Enable self-registration for users on the login pages"
msgstr ""
#: common/models.py:1556
-msgid "Enable SSO registration"
+msgid "Enable SSO"
msgstr ""
#: common/models.py:1557
-msgid "Enable self-registration via SSO for users on the login pages"
+msgid "Enable SSO on the login pages"
msgstr ""
#: common/models.py:1563
-msgid "Email required"
+msgid "Enable SSO registration"
msgstr ""
#: common/models.py:1564
-msgid "Require user to supply mail on signup"
+msgid "Enable self-registration via SSO for users on the login pages"
msgstr ""
#: common/models.py:1570
-msgid "Auto-fill SSO users"
+msgid "Email required"
msgstr ""
#: common/models.py:1571
-msgid "Automatically fill out user-details from SSO account-data"
+msgid "Require user to supply mail on signup"
msgstr ""
#: common/models.py:1577
-msgid "Mail twice"
+msgid "Auto-fill SSO users"
msgstr ""
#: common/models.py:1578
-msgid "On signup ask users twice for their mail"
+msgid "Automatically fill out user-details from SSO account-data"
msgstr ""
#: common/models.py:1584
-msgid "Password twice"
+msgid "Mail twice"
msgstr ""
#: common/models.py:1585
-msgid "On signup ask users twice for their password"
+msgid "On signup ask users twice for their mail"
msgstr ""
#: common/models.py:1591
-msgid "Allowed domains"
+msgid "Password twice"
msgstr ""
#: common/models.py:1592
-msgid "Restrict signup to certain domains (comma-separated, starting with @)"
+msgid "On signup ask users twice for their password"
msgstr ""
#: common/models.py:1598
-msgid "Group on signup"
+msgid "Allowed domains"
msgstr ""
#: common/models.py:1599
-msgid "Group to which new users are assigned on registration"
+msgid "Restrict signup to certain domains (comma-separated, starting with @)"
msgstr ""
#: common/models.py:1605
-msgid "Enforce MFA"
+msgid "Group on signup"
msgstr ""
#: common/models.py:1606
-msgid "Users must use multifactor security."
+msgid "Group to which new users are assigned on registration"
msgstr ""
#: common/models.py:1612
-msgid "Check plugins on startup"
+msgid "Enforce MFA"
msgstr ""
#: common/models.py:1613
-msgid "Check that all plugins are installed on startup - enable in container environments"
+msgid "Users must use multifactor security."
+msgstr ""
+
+#: common/models.py:1619
+msgid "Check plugins on startup"
msgstr ""
#: common/models.py:1620
-msgid "Check plugin signatures"
-msgstr ""
-
-#: common/models.py:1621
-msgid "Check and show signatures for plugins"
+msgid "Check that all plugins are installed on startup - enable in container environments"
msgstr ""
#: common/models.py:1628
@@ -2850,7 +2843,7 @@ msgstr ""
msgid "Stocktake reports will be deleted after specified number of days"
msgstr ""
-#: common/models.py:1710 common/models.py:2147
+#: common/models.py:1710 common/models.py:2133
msgid "Settings key (must be unique - case insensitive"
msgstr ""
@@ -2891,528 +2884,513 @@ msgid "Show latest parts on the homepage"
msgstr ""
#: common/models.py:1779
-msgid "Recent Part Count"
-msgstr ""
-
-#: common/models.py:1780
-msgid "Number of recent parts to display on index page"
-msgstr ""
-
-#: common/models.py:1786
msgid "Show unvalidated BOMs"
msgstr ""
-#: common/models.py:1787
+#: common/models.py:1780
msgid "Show BOMs that await validation on the homepage"
msgstr ""
-#: common/models.py:1793
+#: common/models.py:1786
msgid "Show recent stock changes"
msgstr ""
-#: common/models.py:1794
+#: common/models.py:1787
msgid "Show recently changed stock items on the homepage"
msgstr ""
-#: common/models.py:1800
-msgid "Recent Stock Count"
-msgstr ""
-
-#: common/models.py:1801
-msgid "Number of recent stock items to display on index page"
-msgstr ""
-
-#: common/models.py:1807
+#: common/models.py:1793
msgid "Show low stock"
msgstr ""
-#: common/models.py:1808
+#: common/models.py:1794
msgid "Show low stock items on the homepage"
msgstr ""
-#: common/models.py:1814
+#: common/models.py:1800
msgid "Show depleted stock"
msgstr ""
-#: common/models.py:1815
+#: common/models.py:1801
msgid "Show depleted stock items on the homepage"
msgstr ""
-#: common/models.py:1821
+#: common/models.py:1807
msgid "Show needed stock"
msgstr ""
-#: common/models.py:1822
+#: common/models.py:1808
msgid "Show stock items needed for builds on the homepage"
msgstr ""
-#: common/models.py:1828
+#: common/models.py:1814
msgid "Show expired stock"
msgstr ""
-#: common/models.py:1829
+#: common/models.py:1815
msgid "Show expired stock items on the homepage"
msgstr ""
-#: common/models.py:1835
+#: common/models.py:1821
msgid "Show stale stock"
msgstr ""
-#: common/models.py:1836
+#: common/models.py:1822
msgid "Show stale stock items on the homepage"
msgstr ""
-#: common/models.py:1842
+#: common/models.py:1828
msgid "Show pending builds"
msgstr ""
-#: common/models.py:1843
+#: common/models.py:1829
msgid "Show pending builds on the homepage"
msgstr ""
-#: common/models.py:1849
+#: common/models.py:1835
msgid "Show overdue builds"
msgstr ""
-#: common/models.py:1850
+#: common/models.py:1836
msgid "Show overdue builds on the homepage"
msgstr ""
-#: common/models.py:1856
+#: common/models.py:1842
msgid "Show outstanding POs"
msgstr ""
-#: common/models.py:1857
+#: common/models.py:1843
msgid "Show outstanding POs on the homepage"
msgstr ""
-#: common/models.py:1863
+#: common/models.py:1849
msgid "Show overdue POs"
msgstr ""
-#: common/models.py:1864
+#: common/models.py:1850
msgid "Show overdue POs on the homepage"
msgstr ""
-#: common/models.py:1870
+#: common/models.py:1856
msgid "Show outstanding SOs"
msgstr ""
-#: common/models.py:1871
+#: common/models.py:1857
msgid "Show outstanding SOs on the homepage"
msgstr ""
-#: common/models.py:1877
+#: common/models.py:1863
msgid "Show overdue SOs"
msgstr ""
-#: common/models.py:1878
+#: common/models.py:1864
msgid "Show overdue SOs on the homepage"
msgstr ""
-#: common/models.py:1884
+#: common/models.py:1870
msgid "Show pending SO shipments"
msgstr ""
-#: common/models.py:1885
+#: common/models.py:1871
msgid "Show pending SO shipments on the homepage"
msgstr ""
-#: common/models.py:1891
+#: common/models.py:1877
msgid "Show News"
msgstr ""
-#: common/models.py:1892
+#: common/models.py:1878
msgid "Show news on the homepage"
msgstr ""
-#: common/models.py:1898
+#: common/models.py:1884
msgid "Inline label display"
msgstr ""
-#: common/models.py:1899
+#: common/models.py:1885
msgid "Display PDF labels in the browser, instead of downloading as a file"
msgstr ""
-#: common/models.py:1905
+#: common/models.py:1891
msgid "Default label printer"
msgstr ""
-#: common/models.py:1906
+#: common/models.py:1892
msgid "Configure which label printer should be selected by default"
msgstr ""
-#: common/models.py:1912
+#: common/models.py:1898
msgid "Inline report display"
msgstr ""
-#: common/models.py:1913
+#: common/models.py:1899
msgid "Display PDF reports in the browser, instead of downloading as a file"
msgstr ""
-#: common/models.py:1919
+#: common/models.py:1905
msgid "Search Parts"
msgstr ""
-#: common/models.py:1920
+#: common/models.py:1906
msgid "Display parts in search preview window"
msgstr ""
-#: common/models.py:1926
+#: common/models.py:1912
msgid "Search Supplier Parts"
msgstr ""
-#: common/models.py:1927
+#: common/models.py:1913
msgid "Display supplier parts in search preview window"
msgstr ""
-#: common/models.py:1933
+#: common/models.py:1919
msgid "Search Manufacturer Parts"
msgstr ""
-#: common/models.py:1934
+#: common/models.py:1920
msgid "Display manufacturer parts in search preview window"
msgstr ""
-#: common/models.py:1940
+#: common/models.py:1926
msgid "Hide Inactive Parts"
msgstr ""
-#: common/models.py:1941
+#: common/models.py:1927
msgid "Excluded inactive parts from search preview window"
msgstr ""
-#: common/models.py:1947
+#: common/models.py:1933
msgid "Search Categories"
msgstr ""
-#: common/models.py:1948
+#: common/models.py:1934
msgid "Display part categories in search preview window"
msgstr ""
-#: common/models.py:1954
+#: common/models.py:1940
msgid "Search Stock"
msgstr ""
-#: common/models.py:1955
+#: common/models.py:1941
msgid "Display stock items in search preview window"
msgstr ""
-#: common/models.py:1961
+#: common/models.py:1947
msgid "Hide Unavailable Stock Items"
msgstr ""
-#: common/models.py:1962
+#: common/models.py:1948
msgid "Exclude stock items which are not available from the search preview window"
msgstr ""
-#: common/models.py:1968
+#: common/models.py:1954
msgid "Search Locations"
msgstr ""
-#: common/models.py:1969
+#: common/models.py:1955
msgid "Display stock locations in search preview window"
msgstr ""
-#: common/models.py:1975
+#: common/models.py:1961
msgid "Search Companies"
msgstr ""
-#: common/models.py:1976
+#: common/models.py:1962
msgid "Display companies in search preview window"
msgstr ""
-#: common/models.py:1982
+#: common/models.py:1968
msgid "Search Build Orders"
msgstr ""
-#: common/models.py:1983
+#: common/models.py:1969
msgid "Display build orders in search preview window"
msgstr ""
-#: common/models.py:1989
+#: common/models.py:1975
msgid "Search Purchase Orders"
msgstr ""
-#: common/models.py:1990
+#: common/models.py:1976
msgid "Display purchase orders in search preview window"
msgstr ""
-#: common/models.py:1996
+#: common/models.py:1982
msgid "Exclude Inactive Purchase Orders"
msgstr ""
-#: common/models.py:1997
+#: common/models.py:1983
msgid "Exclude inactive purchase orders from search preview window"
msgstr ""
-#: common/models.py:2003
+#: common/models.py:1989
msgid "Search Sales Orders"
msgstr ""
-#: common/models.py:2004
+#: common/models.py:1990
msgid "Display sales orders in search preview window"
msgstr ""
-#: common/models.py:2010
+#: common/models.py:1996
msgid "Exclude Inactive Sales Orders"
msgstr ""
-#: common/models.py:2011
+#: common/models.py:1997
msgid "Exclude inactive sales orders from search preview window"
msgstr ""
-#: common/models.py:2017
+#: common/models.py:2003
msgid "Search Return Orders"
msgstr ""
-#: common/models.py:2018
+#: common/models.py:2004
msgid "Display return orders in search preview window"
msgstr ""
-#: common/models.py:2024
+#: common/models.py:2010
msgid "Exclude Inactive Return Orders"
msgstr ""
-#: common/models.py:2025
+#: common/models.py:2011
msgid "Exclude inactive return orders from search preview window"
msgstr ""
-#: common/models.py:2031
+#: common/models.py:2017
msgid "Search Preview Results"
msgstr ""
-#: common/models.py:2032
+#: common/models.py:2018
msgid "Number of results to show in each section of the search preview window"
msgstr ""
-#: common/models.py:2038
+#: common/models.py:2024
msgid "Regex Search"
msgstr ""
-#: common/models.py:2039
+#: common/models.py:2025
msgid "Enable regular expressions in search queries"
msgstr ""
-#: common/models.py:2045
+#: common/models.py:2031
msgid "Whole Word Search"
msgstr ""
-#: common/models.py:2046
+#: common/models.py:2032
msgid "Search queries return results for whole word matches"
msgstr ""
-#: common/models.py:2052
+#: common/models.py:2038
msgid "Show Quantity in Forms"
msgstr ""
-#: common/models.py:2053
+#: common/models.py:2039
msgid "Display available part quantity in some forms"
msgstr ""
-#: common/models.py:2059
+#: common/models.py:2045
msgid "Escape Key Closes Forms"
msgstr ""
-#: common/models.py:2060
+#: common/models.py:2046
msgid "Use the escape key to close modal forms"
msgstr ""
-#: common/models.py:2066
+#: common/models.py:2052
msgid "Fixed Navbar"
msgstr ""
-#: common/models.py:2067
+#: common/models.py:2053
msgid "The navbar position is fixed to the top of the screen"
msgstr ""
-#: common/models.py:2073
+#: common/models.py:2059
msgid "Date Format"
msgstr ""
-#: common/models.py:2074
+#: common/models.py:2060
msgid "Preferred format for displaying dates"
msgstr ""
-#: common/models.py:2088 part/templates/part/detail.html:41
+#: common/models.py:2074 part/templates/part/detail.html:41
msgid "Part Scheduling"
msgstr ""
-#: common/models.py:2089
+#: common/models.py:2075
msgid "Display part scheduling information"
msgstr ""
-#: common/models.py:2095 part/templates/part/detail.html:62
+#: common/models.py:2081 part/templates/part/detail.html:62
msgid "Part Stocktake"
msgstr ""
-#: common/models.py:2096
+#: common/models.py:2082
msgid "Display part stocktake information (if stocktake functionality is enabled)"
msgstr ""
-#: common/models.py:2102
+#: common/models.py:2088
msgid "Table String Length"
msgstr ""
-#: common/models.py:2103
+#: common/models.py:2089
msgid "Maximimum length limit for strings displayed in table views"
msgstr ""
-#: common/models.py:2112
+#: common/models.py:2098
msgid "Default part label template"
msgstr ""
-#: common/models.py:2113
+#: common/models.py:2099
msgid "The part label template to be automatically selected"
msgstr ""
-#: common/models.py:2121
+#: common/models.py:2107
msgid "Default stock item template"
msgstr ""
-#: common/models.py:2122
+#: common/models.py:2108
msgid "The stock item label template to be automatically selected"
msgstr ""
-#: common/models.py:2130
+#: common/models.py:2116
msgid "Default stock location label template"
msgstr ""
-#: common/models.py:2131
+#: common/models.py:2117
msgid "The stock location label template to be automatically selected"
msgstr ""
-#: common/models.py:2177
+#: common/models.py:2163
msgid "Price break quantity"
msgstr ""
-#: common/models.py:2184 company/serializers.py:434 order/admin.py:43
-#: order/models.py:1132 order/models.py:1939
-#: templates/js/translated/company.js:1433 templates/js/translated/part.js:1856
+#: common/models.py:2170 company/serializers.py:491 order/admin.py:43
+#: order/models.py:1145 order/models.py:1952
+#: templates/js/translated/company.js:1854 templates/js/translated/part.js:1855
#: templates/js/translated/pricing.js:621
-#: templates/js/translated/return_order.js:725
+#: templates/js/translated/return_order.js:737
msgid "Price"
msgstr ""
-#: common/models.py:2185
+#: common/models.py:2171
msgid "Unit price at specified quantity"
msgstr ""
-#: common/models.py:2345 common/models.py:2523
+#: common/models.py:2331 common/models.py:2509
msgid "Endpoint"
msgstr ""
-#: common/models.py:2346
+#: common/models.py:2332
msgid "Endpoint at which this webhook is received"
msgstr ""
-#: common/models.py:2355
+#: common/models.py:2341
msgid "Name for this webhook"
msgstr ""
-#: common/models.py:2360 part/admin.py:50 part/models.py:1023
-#: plugin/models.py:47 templates/js/translated/table_filters.js:105
-#: templates/js/translated/table_filters.js:189
-#: templates/js/translated/table_filters.js:434
-#: templates/js/translated/table_filters.js:450
-#: templates/js/translated/table_filters.js:629
+#: common/models.py:2346 part/admin.py:50 part/models.py:1024
+#: plugin/models.py:48 templates/js/translated/table_filters.js:111
+#: templates/js/translated/table_filters.js:195
+#: templates/js/translated/table_filters.js:440
+#: templates/js/translated/table_filters.js:456
+#: templates/js/translated/table_filters.js:651
msgid "Active"
msgstr ""
-#: common/models.py:2361
+#: common/models.py:2347
msgid "Is this webhook active"
msgstr ""
-#: common/models.py:2375
+#: common/models.py:2361
msgid "Token"
msgstr ""
-#: common/models.py:2376
+#: common/models.py:2362
msgid "Token for access"
msgstr ""
-#: common/models.py:2383
+#: common/models.py:2369
msgid "Secret"
msgstr ""
-#: common/models.py:2384
+#: common/models.py:2370
msgid "Shared secret for HMAC"
msgstr ""
-#: common/models.py:2490
+#: common/models.py:2476
msgid "Message ID"
msgstr "メッセージ ID:"
-#: common/models.py:2491
+#: common/models.py:2477
msgid "Unique identifier for this message"
msgstr ""
-#: common/models.py:2499
+#: common/models.py:2485
msgid "Host"
msgstr ""
-#: common/models.py:2500
+#: common/models.py:2486
msgid "Host from which this message was received"
msgstr ""
-#: common/models.py:2507
+#: common/models.py:2493
msgid "Header"
msgstr ""
-#: common/models.py:2508
+#: common/models.py:2494
msgid "Header of this message"
msgstr ""
-#: common/models.py:2514
+#: common/models.py:2500
msgid "Body"
msgstr ""
-#: common/models.py:2515
+#: common/models.py:2501
msgid "Body of this message"
msgstr ""
-#: common/models.py:2524
+#: common/models.py:2510
msgid "Endpoint on which this message was received"
msgstr ""
-#: common/models.py:2529
+#: common/models.py:2515
msgid "Worked on"
msgstr ""
-#: common/models.py:2530
+#: common/models.py:2516
msgid "Was the work on this message finished?"
msgstr ""
-#: common/models.py:2684
+#: common/models.py:2670
msgid "Id"
msgstr ""
-#: common/models.py:2690 templates/js/translated/news.js:44
+#: common/models.py:2676 templates/js/translated/company.js:996
+#: templates/js/translated/news.js:44
msgid "Title"
msgstr ""
-#: common/models.py:2700 templates/js/translated/news.js:60
+#: common/models.py:2686 templates/js/translated/news.js:60
msgid "Published"
msgstr ""
-#: common/models.py:2705 templates/InvenTree/settings/plugin_settings.html:32
+#: common/models.py:2691 templates/InvenTree/settings/plugin_settings.html:32
#: templates/js/translated/news.js:56 templates/js/translated/plugin.js:106
msgid "Author"
msgstr ""
-#: common/models.py:2710 templates/js/translated/news.js:52
+#: common/models.py:2696 templates/js/translated/news.js:52
msgid "Summary"
msgstr ""
-#: common/models.py:2715
+#: common/models.py:2701
msgid "Read"
msgstr ""
-#: common/models.py:2716
+#: common/models.py:2702
msgid "Was this news item read?"
msgstr ""
-#: common/models.py:2736 company/models.py:143 part/models.py:914
+#: common/models.py:2722 company/models.py:139 part/models.py:915
#: report/templates/report/inventree_bill_of_materials_report.html:126
#: report/templates/report/inventree_bill_of_materials_report.html:148
#: report/templates/report/inventree_return_order_report_base.html:35
@@ -3422,7 +3400,7 @@ msgstr ""
msgid "Image"
msgstr ""
-#: common/models.py:2737
+#: common/models.py:2723
msgid "Image file"
msgstr ""
@@ -3499,7 +3477,7 @@ msgstr ""
#: company/models.py:113 company/templates/company/company_base.html:101
#: templates/InvenTree/settings/plugin_settings.html:54
-#: templates/js/translated/company.js:514
+#: templates/js/translated/company.js:521
msgid "Website"
msgstr ""
@@ -3507,303 +3485,387 @@ msgstr ""
msgid "Company website URL"
msgstr ""
-#: company/models.py:118 company/templates/company/company_base.html:119
-msgid "Address"
-msgstr ""
-
-#: company/models.py:119
-msgid "Company address"
-msgstr ""
-
-#: company/models.py:122
+#: company/models.py:118
msgid "Phone number"
msgstr ""
-#: company/models.py:123
+#: company/models.py:119
msgid "Contact phone number"
msgstr ""
-#: company/models.py:126 company/templates/company/company_base.html:133
+#: company/models.py:122 company/templates/company/company_base.html:133
#: templates/InvenTree/settings/user.html:49
-#: templates/js/translated/company.js:659
+#: templates/js/translated/company.js:666
msgid "Email"
msgstr ""
-#: company/models.py:126
+#: company/models.py:122
msgid "Contact email address"
msgstr ""
-#: company/models.py:129 company/templates/company/company_base.html:140
-#: order/models.py:266 order/templates/order/order_base.html:207
+#: company/models.py:125 company/templates/company/company_base.html:140
+#: order/models.py:270 order/templates/order/order_base.html:203
#: order/templates/order/return_order_base.html:175
#: order/templates/order/sales_order_base.html:215
msgid "Contact"
msgstr ""
-#: company/models.py:130
+#: company/models.py:126
msgid "Point of contact"
msgstr ""
-#: company/models.py:132
+#: company/models.py:128
msgid "Link to external company information"
msgstr ""
-#: company/models.py:146
+#: company/models.py:142
msgid "is customer"
msgstr ""
-#: company/models.py:146
+#: company/models.py:142
msgid "Do you sell items to this company?"
msgstr ""
-#: company/models.py:148
+#: company/models.py:144
msgid "is supplier"
msgstr ""
-#: company/models.py:148
+#: company/models.py:144
msgid "Do you purchase items from this company?"
msgstr ""
-#: company/models.py:150
+#: company/models.py:146
msgid "is manufacturer"
msgstr ""
-#: company/models.py:150
+#: company/models.py:146
msgid "Does this company manufacture parts?"
msgstr ""
-#: company/models.py:157
+#: company/models.py:153
msgid "Default currency used for this company"
msgstr ""
-#: company/models.py:223 company/templates/company/company_base.html:8
+#: company/models.py:235 company/models.py:328
+#: company/templates/company/company_base.html:8
#: company/templates/company/company_base.html:12
-#: templates/InvenTree/search.html:178 templates/js/translated/company.js:487
+#: templates/InvenTree/search.html:178 templates/js/translated/company.js:494
msgid "Company"
msgstr ""
-#: company/models.py:278 company/models.py:553 stock/models.py:675
-#: stock/serializers.py:155 stock/templates/stock/item_base.html:143
-#: templates/js/translated/bom.js:621
+#: company/models.py:324
+msgid "Company already has a primary address"
+msgstr ""
+
+#: company/models.py:329
+msgid "Select company"
+msgstr ""
+
+#: company/models.py:332
+msgid "Address title"
+msgstr ""
+
+#: company/models.py:333
+msgid "Title describing the address entry"
+msgstr ""
+
+#: company/models.py:337
+msgid "Primary address"
+msgstr ""
+
+#: company/models.py:338
+msgid "Set as primary address"
+msgstr ""
+
+#: company/models.py:341 templates/js/translated/company.js:941
+#: templates/js/translated/company.js:1002
+msgid "Line 1"
+msgstr ""
+
+#: company/models.py:342
+msgid "Address line 1"
+msgstr ""
+
+#: company/models.py:346 templates/js/translated/company.js:942
+#: templates/js/translated/company.js:1008
+msgid "Line 2"
+msgstr ""
+
+#: company/models.py:347
+msgid "Address line 2"
+msgstr ""
+
+#: company/models.py:351 company/models.py:352
+#: templates/js/translated/company.js:1014
+msgid "Postal code"
+msgstr ""
+
+#: company/models.py:356
+msgid "City/Region"
+msgstr ""
+
+#: company/models.py:357
+msgid "Postal code city/region"
+msgstr ""
+
+#: company/models.py:361
+msgid "State/Province"
+msgstr ""
+
+#: company/models.py:362
+msgid "State or province"
+msgstr ""
+
+#: company/models.py:366 templates/js/translated/company.js:1032
+msgid "Country"
+msgstr ""
+
+#: company/models.py:367
+msgid "Address country"
+msgstr ""
+
+#: company/models.py:371
+msgid "Courier shipping notes"
+msgstr ""
+
+#: company/models.py:372
+msgid "Notes for shipping courier"
+msgstr ""
+
+#: company/models.py:376
+msgid "Internal shipping notes"
+msgstr ""
+
+#: company/models.py:377
+msgid "Shipping notes for internal use"
+msgstr ""
+
+#: company/models.py:382
+msgid "Link to address information (external)"
+msgstr ""
+
+#: company/models.py:427 company/models.py:702 stock/models.py:675
+#: stock/serializers.py:204 stock/templates/stock/item_base.html:143
+#: templates/js/translated/bom.js:622
msgid "Base Part"
msgstr ""
-#: company/models.py:282 company/models.py:557
+#: company/models.py:431 company/models.py:706
msgid "Select part"
msgstr ""
-#: company/models.py:293 company/templates/company/company_base.html:77
+#: company/models.py:442 company/templates/company/company_base.html:77
#: company/templates/company/manufacturer_part.html:90
-#: company/templates/company/supplier_part.html:146 part/serializers.py:354
+#: company/templates/company/supplier_part.html:146 part/serializers.py:404
#: stock/templates/stock/item_base.html:208
-#: templates/js/translated/company.js:498
-#: templates/js/translated/company.js:824
-#: templates/js/translated/company.js:954
-#: templates/js/translated/company.js:1221
-#: templates/js/translated/table_filters.js:709
+#: templates/js/translated/company.js:505
+#: templates/js/translated/company.js:1149
+#: templates/js/translated/company.js:1327
+#: templates/js/translated/company.js:1642
+#: templates/js/translated/table_filters.js:731
msgid "Manufacturer"
msgstr "製造元"
-#: company/models.py:294
+#: company/models.py:443
msgid "Select manufacturer"
msgstr ""
-#: company/models.py:300 company/templates/company/manufacturer_part.html:101
-#: company/templates/company/supplier_part.html:154 part/serializers.py:360
-#: templates/js/translated/company.js:340
-#: templates/js/translated/company.js:823
-#: templates/js/translated/company.js:970
-#: templates/js/translated/company.js:1240 templates/js/translated/part.js:1773
-#: templates/js/translated/purchase_order.js:1814
-#: templates/js/translated/purchase_order.js:2021
+#: company/models.py:449 company/templates/company/manufacturer_part.html:101
+#: company/templates/company/supplier_part.html:154 part/serializers.py:410
+#: templates/js/translated/company.js:350
+#: templates/js/translated/company.js:1148
+#: templates/js/translated/company.js:1343
+#: templates/js/translated/company.js:1661 templates/js/translated/part.js:1772
+#: templates/js/translated/purchase_order.js:1829
+#: templates/js/translated/purchase_order.js:2031
msgid "MPN"
msgstr ""
-#: company/models.py:301
+#: company/models.py:450
msgid "Manufacturer Part Number"
msgstr ""
-#: company/models.py:307
+#: company/models.py:456
msgid "URL for external manufacturer part link"
msgstr ""
-#: company/models.py:313
+#: company/models.py:462
msgid "Manufacturer part description"
msgstr ""
-#: company/models.py:360 company/models.py:384 company/models.py:578
+#: company/models.py:509 company/models.py:533 company/models.py:727
#: company/templates/company/manufacturer_part.html:7
#: company/templates/company/manufacturer_part.html:24
#: stock/templates/stock/item_base.html:218
msgid "Manufacturer Part"
msgstr "メーカー・パーツ"
-#: company/models.py:391
+#: company/models.py:540
msgid "Parameter name"
msgstr ""
-#: company/models.py:397
+#: company/models.py:546
#: report/templates/report/inventree_test_report_base.html:104
-#: stock/models.py:2255 templates/js/translated/company.js:872
-#: templates/js/translated/company.js:1077 templates/js/translated/part.js:1465
-#: templates/js/translated/stock.js:1446
+#: stock/models.py:2255 templates/js/translated/company.js:1197
+#: templates/js/translated/company.js:1450 templates/js/translated/part.js:1464
+#: templates/js/translated/stock.js:1445
msgid "Value"
msgstr ""
-#: company/models.py:398
+#: company/models.py:547
msgid "Parameter value"
msgstr ""
-#: company/models.py:404 company/templates/company/supplier_part.html:169
-#: part/admin.py:40 part/models.py:987 part/models.py:3407
+#: company/models.py:553 company/templates/company/supplier_part.html:169
+#: part/admin.py:40 part/models.py:988 part/models.py:3441
#: part/templates/part/part_base.html:286
-#: templates/js/translated/company.js:1083 templates/js/translated/part.js:1484
-#: templates/js/translated/part.js:1588 templates/js/translated/part.js:2262
+#: templates/js/translated/company.js:1456 templates/js/translated/part.js:1483
+#: templates/js/translated/part.js:1587 templates/js/translated/part.js:2338
msgid "Units"
msgstr ""
-#: company/models.py:405
+#: company/models.py:554
msgid "Parameter units"
msgstr ""
-#: company/models.py:498
+#: company/models.py:647
msgid "Pack units must be compatible with the base part units"
msgstr ""
-#: company/models.py:504
+#: company/models.py:653
msgid "Pack units must be greater than zero"
msgstr ""
-#: company/models.py:520
+#: company/models.py:669
msgid "Linked manufacturer part must reference the same base part"
msgstr ""
-#: company/models.py:564 company/templates/company/company_base.html:82
-#: company/templates/company/supplier_part.html:130 order/models.py:382
-#: order/templates/order/order_base.html:140 part/bom.py:285 part/bom.py:313
-#: part/serializers.py:343 stock/templates/stock/item_base.html:225
+#: company/models.py:713 company/templates/company/company_base.html:82
+#: company/templates/company/supplier_part.html:130 order/models.py:395
+#: order/templates/order/order_base.html:136 part/bom.py:285 part/bom.py:313
+#: part/serializers.py:393 stock/templates/stock/item_base.html:225
#: templates/email/overdue_purchase_order.html:16
-#: templates/js/translated/company.js:339
-#: templates/js/translated/company.js:502
-#: templates/js/translated/company.js:1194 templates/js/translated/part.js:1741
+#: templates/js/translated/company.js:349
+#: templates/js/translated/company.js:509
+#: templates/js/translated/company.js:1615 templates/js/translated/part.js:1740
#: templates/js/translated/pricing.js:498
-#: templates/js/translated/purchase_order.js:1653
-#: templates/js/translated/table_filters.js:713
+#: templates/js/translated/purchase_order.js:1668
+#: templates/js/translated/table_filters.js:735
msgid "Supplier"
msgstr "仕入先"
-#: company/models.py:565
+#: company/models.py:714
msgid "Select supplier"
msgstr ""
-#: company/models.py:570 company/templates/company/supplier_part.html:140
-#: part/bom.py:286 part/bom.py:314 part/serializers.py:349
-#: templates/js/translated/company.js:338 templates/js/translated/part.js:1759
+#: company/models.py:719 company/templates/company/supplier_part.html:140
+#: part/bom.py:286 part/bom.py:314 part/serializers.py:399
+#: templates/js/translated/company.js:348 templates/js/translated/part.js:1758
#: templates/js/translated/pricing.js:510
-#: templates/js/translated/purchase_order.js:1813
-#: templates/js/translated/purchase_order.js:1996
+#: templates/js/translated/purchase_order.js:1828
+#: templates/js/translated/purchase_order.js:2006
msgid "SKU"
msgstr ""
-#: company/models.py:571 part/serializers.py:349
+#: company/models.py:720 part/serializers.py:399
msgid "Supplier stock keeping unit"
msgstr ""
-#: company/models.py:579
+#: company/models.py:728
msgid "Select manufacturer part"
msgstr ""
-#: company/models.py:585
+#: company/models.py:734
msgid "URL for external supplier part link"
msgstr ""
-#: company/models.py:591
+#: company/models.py:740
msgid "Supplier part description"
msgstr ""
-#: company/models.py:596 company/templates/company/supplier_part.html:188
-#: part/admin.py:279 part/models.py:3801 part/templates/part/upload_bom.html:59
+#: company/models.py:745 company/templates/company/supplier_part.html:188
+#: part/admin.py:279 part/models.py:3845 part/templates/part/upload_bom.html:59
#: report/templates/report/inventree_bill_of_materials_report.html:140
#: report/templates/report/inventree_po_report_base.html:32
#: report/templates/report/inventree_return_order_report_base.html:27
#: report/templates/report/inventree_so_report_base.html:32
-#: stock/serializers.py:418
+#: stock/serializers.py:484
msgid "Note"
msgstr ""
-#: company/models.py:600 part/models.py:1919
+#: company/models.py:749 part/models.py:1921
msgid "base cost"
msgstr ""
-#: company/models.py:600 part/models.py:1919
+#: company/models.py:749 part/models.py:1921
msgid "Minimum charge (e.g. stocking fee)"
msgstr ""
-#: company/models.py:602 company/templates/company/supplier_part.html:161
+#: company/models.py:751 company/templates/company/supplier_part.html:161
#: stock/admin.py:119 stock/models.py:701
#: stock/templates/stock/item_base.html:241
-#: templates/js/translated/company.js:1256
-#: templates/js/translated/stock.js:2160
+#: templates/js/translated/company.js:1677
+#: templates/js/translated/stock.js:2317
msgid "Packaging"
msgstr ""
-#: company/models.py:602
+#: company/models.py:751
msgid "Part packaging"
msgstr ""
-#: company/models.py:606 templates/js/translated/company.js:1261
-#: templates/js/translated/part.js:1793 templates/js/translated/part.js:1848
-#: templates/js/translated/purchase_order.js:300
-#: templates/js/translated/purchase_order.js:827
-#: templates/js/translated/purchase_order.js:1073
-#: templates/js/translated/purchase_order.js:2052
-#: templates/js/translated/purchase_order.js:2069
+#: company/models.py:755 templates/js/translated/company.js:1682
+#: templates/js/translated/part.js:1792 templates/js/translated/part.js:1847
+#: templates/js/translated/purchase_order.js:311
+#: templates/js/translated/purchase_order.js:842
+#: templates/js/translated/purchase_order.js:1088
+#: templates/js/translated/purchase_order.js:2062
+#: templates/js/translated/purchase_order.js:2079
msgid "Pack Quantity"
msgstr ""
-#: company/models.py:607
+#: company/models.py:756
msgid "Total quantity supplied in a single pack. Leave empty for single items."
msgstr ""
-#: company/models.py:624 part/models.py:1921
+#: company/models.py:773 part/models.py:1923
msgid "multiple"
msgstr ""
-#: company/models.py:624
+#: company/models.py:773
msgid "Order multiple"
msgstr ""
-#: company/models.py:632 company/templates/company/supplier_part.html:115
+#: company/models.py:781 company/templates/company/supplier_part.html:115
#: templates/email/build_order_required_stock.html:19
#: templates/email/low_stock_notification.html:17
-#: templates/js/translated/bom.js:1127 templates/js/translated/build.js:2136
-#: templates/js/translated/build.js:3045
-#: templates/js/translated/model_renderers.js:205
-#: templates/js/translated/part.js:670 templates/js/translated/part.js:672
-#: templates/js/translated/part.js:677
-#: templates/js/translated/table_filters.js:286
-#: templates/js/translated/table_filters.js:492
+#: templates/js/translated/bom.js:1145 templates/js/translated/build.js:2490
+#: templates/js/translated/index.js:118
+#: templates/js/translated/model_renderers.js:219
+#: templates/js/translated/part.js:669 templates/js/translated/part.js:671
+#: templates/js/translated/part.js:676
+#: templates/js/translated/table_filters.js:292
+#: templates/js/translated/table_filters.js:510
msgid "Available"
msgstr ""
-#: company/models.py:633
+#: company/models.py:782
msgid "Quantity available from supplier"
msgstr ""
-#: company/models.py:637
+#: company/models.py:786
msgid "Availability Updated"
msgstr ""
-#: company/models.py:638
+#: company/models.py:787
msgid "Date of last update of availability data"
msgstr ""
-#: company/serializers.py:99
+#: company/serializers.py:156
msgid "Default currency used for this supplier"
msgstr ""
#: company/templates/company/company_base.html:22
-#: templates/js/translated/purchase_order.js:228
+#: templates/js/translated/purchase_order.js:239
msgid "Create Purchase Order"
msgstr ""
@@ -3816,7 +3878,7 @@ msgid "Edit company information"
msgstr ""
#: company/templates/company/company_base.html:34
-#: templates/js/translated/company.js:436
+#: templates/js/translated/company.js:443
msgid "Edit Company"
msgstr ""
@@ -3856,17 +3918,17 @@ msgstr ""
msgid "Delete image"
msgstr ""
-#: company/templates/company/company_base.html:87 order/models.py:779
-#: order/models.py:1738 order/templates/order/return_order_base.html:132
+#: company/templates/company/company_base.html:87 order/models.py:792
+#: order/models.py:1751 order/templates/order/return_order_base.html:132
#: order/templates/order/sales_order_base.html:145 stock/models.py:720
-#: stock/models.py:721 stock/serializers.py:825
+#: stock/models.py:721 stock/serializers.py:942
#: stock/templates/stock/item_base.html:401
#: templates/email/overdue_sales_order.html:16
-#: templates/js/translated/company.js:494
-#: templates/js/translated/return_order.js:284
-#: templates/js/translated/sales_order.js:772
-#: templates/js/translated/stock.js:2696
-#: templates/js/translated/table_filters.js:717
+#: templates/js/translated/company.js:501
+#: templates/js/translated/return_order.js:296
+#: templates/js/translated/sales_order.js:784
+#: templates/js/translated/stock.js:2827
+#: templates/js/translated/table_filters.js:739
msgid "Customer"
msgstr ""
@@ -3874,6 +3936,13 @@ msgstr ""
msgid "Uses default currency"
msgstr ""
+#: company/templates/company/company_base.html:119 order/models.py:279
+#: order/templates/order/order_base.html:210
+#: order/templates/order/return_order_base.html:182
+#: order/templates/order/sales_order_base.html:222
+msgid "Address"
+msgstr ""
+
#: company/templates/company/company_base.html:126
msgid "Phone"
msgstr ""
@@ -3906,7 +3975,7 @@ msgstr ""
#: company/templates/company/detail.html:15
#: company/templates/company/manufacturer_part_sidebar.html:7
-#: templates/InvenTree/search.html:120 templates/js/translated/search.js:189
+#: templates/InvenTree/search.html:120 templates/js/translated/search.js:147
msgid "Supplier Parts"
msgstr "サプライヤー・パーツ"
@@ -3916,129 +3985,121 @@ msgstr "新しいサプライヤー・パーツを作成"
#: company/templates/company/detail.html:20
#: company/templates/company/manufacturer_part.html:123
-#: part/templates/part/detail.html:381
+#: part/templates/part/detail.html:356
msgid "New Supplier Part"
msgstr "新しいサプライヤー・パーツ"
-#: company/templates/company/detail.html:37
-#: company/templates/company/detail.html:85
-#: part/templates/part/category.html:183
-msgid "Order parts"
-msgstr "パーツの注文"
-
-#: company/templates/company/detail.html:42
-#: company/templates/company/detail.html:90
-msgid "Delete parts"
-msgstr "パーツを削除"
-
-#: company/templates/company/detail.html:43
-#: company/templates/company/detail.html:91
-msgid "Delete Parts"
-msgstr "パーツを削除"
-
-#: company/templates/company/detail.html:62 templates/InvenTree/search.html:105
-#: templates/js/translated/search.js:193
+#: company/templates/company/detail.html:41 templates/InvenTree/search.html:105
+#: templates/js/translated/search.js:151
msgid "Manufacturer Parts"
msgstr "メーカー・パーツ"
-#: company/templates/company/detail.html:66
+#: company/templates/company/detail.html:45
msgid "Create new manufacturer part"
msgstr "新しいメーカー・パーツを作成"
-#: company/templates/company/detail.html:67 part/templates/part/detail.html:411
+#: company/templates/company/detail.html:46 part/templates/part/detail.html:376
msgid "New Manufacturer Part"
msgstr "新しいメーカ―・パーツ"
-#: company/templates/company/detail.html:108
+#: company/templates/company/detail.html:65
msgid "Supplier Stock"
msgstr ""
-#: company/templates/company/detail.html:118
+#: company/templates/company/detail.html:75
#: company/templates/company/sidebar.html:12
#: company/templates/company/supplier_part_sidebar.html:7
#: 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:108 part/templates/part/part_sidebar.html:35
-#: templates/InvenTree/index.html:275 templates/InvenTree/search.html:199
+#: part/templates/part/detail.html:106 part/templates/part/part_sidebar.html:35
+#: templates/InvenTree/index.html:227 templates/InvenTree/search.html:199
#: templates/InvenTree/settings/sidebar.html:55
-#: templates/js/translated/search.js:247 templates/navbar.html:50
+#: templates/js/translated/search.js:205 templates/navbar.html:50
#: users/models.py:43
msgid "Purchase Orders"
msgstr ""
-#: company/templates/company/detail.html:122
+#: company/templates/company/detail.html:79
#: order/templates/order/purchase_orders.html:17
msgid "Create new purchase order"
msgstr ""
-#: company/templates/company/detail.html:123
+#: company/templates/company/detail.html:80
#: order/templates/order/purchase_orders.html:18
msgid "New Purchase Order"
msgstr ""
-#: company/templates/company/detail.html:146
+#: company/templates/company/detail.html:101
#: company/templates/company/sidebar.html:21
#: 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:131 part/templates/part/part_sidebar.html:39
-#: templates/InvenTree/index.html:307 templates/InvenTree/search.html:219
+#: part/templates/part/detail.html:127 part/templates/part/part_sidebar.html:39
+#: templates/InvenTree/index.html:259 templates/InvenTree/search.html:219
#: templates/InvenTree/settings/sidebar.html:57
-#: templates/js/translated/search.js:261 templates/navbar.html:62
+#: templates/js/translated/search.js:219 templates/navbar.html:62
#: users/models.py:44
msgid "Sales Orders"
msgstr ""
-#: company/templates/company/detail.html:150
+#: company/templates/company/detail.html:105
#: order/templates/order/sales_orders.html:20
msgid "Create new sales order"
msgstr ""
-#: company/templates/company/detail.html:151
+#: company/templates/company/detail.html:106
#: order/templates/order/sales_orders.html:21
msgid "New Sales Order"
msgstr ""
-#: company/templates/company/detail.html:173
-#: templates/js/translated/build.js:1976
+#: company/templates/company/detail.html:126
msgid "Assigned Stock"
msgstr ""
-#: company/templates/company/detail.html:191
+#: company/templates/company/detail.html:142
#: company/templates/company/sidebar.html:29
#: order/templates/order/return_order_base.html:13
#: order/templates/order/return_orders.html:8
#: order/templates/order/return_orders.html:15
#: templates/InvenTree/settings/sidebar.html:59
-#: templates/js/translated/search.js:274 templates/navbar.html:65
+#: templates/js/translated/search.js:232 templates/navbar.html:65
#: users/models.py:45
msgid "Return Orders"
msgstr ""
-#: company/templates/company/detail.html:195
+#: company/templates/company/detail.html:146
#: order/templates/order/return_orders.html:20
msgid "Create new return order"
msgstr ""
-#: company/templates/company/detail.html:196
+#: company/templates/company/detail.html:147
#: order/templates/order/return_orders.html:21
msgid "New Return Order"
msgstr ""
-#: company/templates/company/detail.html:221
+#: company/templates/company/detail.html:168
msgid "Company Notes"
msgstr ""
-#: company/templates/company/detail.html:236
+#: company/templates/company/detail.html:183
msgid "Company Contacts"
msgstr ""
-#: company/templates/company/detail.html:240
-#: company/templates/company/detail.html:241
+#: company/templates/company/detail.html:187
+#: company/templates/company/detail.html:188
msgid "Add Contact"
msgstr ""
+#: company/templates/company/detail.html:206
+msgid "Company addresses"
+msgstr ""
+
+#: company/templates/company/detail.html:210
+#: company/templates/company/detail.html:211
+msgid "Add Address"
+msgstr ""
+
#: company/templates/company/index.html:8
msgid "Supplier List"
msgstr ""
@@ -4050,17 +4111,17 @@ msgstr ""
#: company/templates/company/manufacturer_part.html:35
#: company/templates/company/supplier_part.html:228
-#: part/templates/part/detail.html:111 part/templates/part/part_base.html:85
+#: part/templates/part/detail.html:109 part/templates/part/part_base.html:85
msgid "Order part"
msgstr "パーツの注文"
#: company/templates/company/manufacturer_part.html:39
-#: templates/js/translated/company.js:1001
+#: templates/js/translated/company.js:1374
msgid "Edit manufacturer part"
msgstr "メーカー・パーツの編集"
#: company/templates/company/manufacturer_part.html:43
-#: templates/js/translated/company.js:1002
+#: templates/js/translated/company.js:1375
msgid "Delete manufacturer part"
msgstr "メーカー・パーツを削除"
@@ -4080,40 +4141,22 @@ msgstr ""
msgid "Suppliers"
msgstr "仕入先"
-#: company/templates/company/manufacturer_part.html:136
-#: part/templates/part/detail.html:392
-msgid "Delete supplier parts"
-msgstr ""
-
-#: company/templates/company/manufacturer_part.html:136
-#: company/templates/company/manufacturer_part.html:183
-#: part/templates/part/detail.html:393 part/templates/part/detail.html:423
-#: templates/js/translated/forms.js:506 templates/js/translated/helpers.js:105
-#: templates/js/translated/part.js:370 templates/js/translated/pricing.js:629
-#: templates/js/translated/stock.js:216 users/models.py:247
-msgid "Delete"
-msgstr ""
-
-#: company/templates/company/manufacturer_part.html:166
+#: company/templates/company/manufacturer_part.html:156
#: company/templates/company/manufacturer_part_sidebar.html:5
#: part/templates/part/category_sidebar.html:20
-#: part/templates/part/detail.html:208 part/templates/part/part_sidebar.html:8
+#: part/templates/part/detail.html:195 part/templates/part/part_sidebar.html:8
msgid "Parameters"
msgstr ""
-#: company/templates/company/manufacturer_part.html:170
-#: part/templates/part/detail.html:213
+#: company/templates/company/manufacturer_part.html:160
+#: part/templates/part/detail.html:200
#: templates/InvenTree/settings/category.html:12
#: templates/InvenTree/settings/part_parameters.html:12
msgid "New Parameter"
msgstr ""
-#: company/templates/company/manufacturer_part.html:183
-msgid "Delete parameters"
-msgstr ""
-
-#: company/templates/company/manufacturer_part.html:226
-#: templates/js/translated/part.js:1396
+#: company/templates/company/manufacturer_part.html:206
+#: templates/js/translated/part.js:1395
msgid "Add Parameter"
msgstr ""
@@ -4137,23 +4180,28 @@ msgstr ""
msgid "Contacts"
msgstr ""
+#: company/templates/company/sidebar.html:35
+msgid "Addresses"
+msgstr ""
+
#: company/templates/company/supplier_part.html:7
#: company/templates/company/supplier_part.html:24 stock/models.py:684
#: stock/templates/stock/item_base.html:234
-#: templates/js/translated/company.js:1210
-#: templates/js/translated/purchase_order.js:747
-#: templates/js/translated/stock.js:2016
+#: templates/js/translated/company.js:1631
+#: templates/js/translated/purchase_order.js:758
+#: templates/js/translated/stock.js:2173
msgid "Supplier Part"
msgstr ""
#: company/templates/company/supplier_part.html:51
+#: templates/js/translated/company.js:1557
msgid "Supplier part actions"
msgstr ""
#: company/templates/company/supplier_part.html:56
#: company/templates/company/supplier_part.html:57
#: company/templates/company/supplier_part.html:229
-#: part/templates/part/detail.html:112
+#: part/templates/part/detail.html:110
msgid "Order Part"
msgstr ""
@@ -4164,13 +4212,13 @@ msgstr ""
#: company/templates/company/supplier_part.html:64
#: company/templates/company/supplier_part.html:65
-#: templates/js/translated/company.js:283
+#: templates/js/translated/company.js:293
msgid "Edit Supplier Part"
msgstr ""
#: company/templates/company/supplier_part.html:69
#: company/templates/company/supplier_part.html:70
-#: templates/js/translated/company.js:258
+#: templates/js/translated/company.js:268
msgid "Duplicate Supplier Part"
msgstr ""
@@ -4197,7 +4245,7 @@ msgstr ""
#: company/templates/company/supplier_part.html:211
#: part/templates/part/detail.html:25 stock/templates/stock/location.html:198
-#: templates/js/translated/stock.js:504
+#: templates/js/translated/stock.js:503
msgid "New Stock Item"
msgstr ""
@@ -4205,37 +4253,37 @@ msgstr ""
msgid "Supplier Part Orders"
msgstr ""
-#: company/templates/company/supplier_part.html:249
+#: company/templates/company/supplier_part.html:247
msgid "Pricing Information"
msgstr ""
-#: company/templates/company/supplier_part.html:254
-#: templates/js/translated/company.js:387
+#: company/templates/company/supplier_part.html:252
+#: templates/js/translated/company.js:397
#: templates/js/translated/pricing.js:684
msgid "Add Price Break"
msgstr ""
-#: company/templates/company/supplier_part.html:281
+#: company/templates/company/supplier_part.html:277
msgid "Supplier Part QR Code"
msgstr ""
-#: company/templates/company/supplier_part.html:292
+#: company/templates/company/supplier_part.html:288
msgid "Link Barcode to Supplier Part"
msgstr ""
-#: company/templates/company/supplier_part.html:365
+#: company/templates/company/supplier_part.html:361
msgid "Update Part Availability"
msgstr ""
#: company/templates/company/supplier_part_sidebar.html:5 part/tasks.py:293
-#: part/templates/part/category.html:199
+#: part/templates/part/category.html:182
#: part/templates/part/category_sidebar.html:17 stock/admin.py:47
-#: stock/templates/stock/location.html:168
+#: stock/serializers.py:662 stock/templates/stock/location.html:168
#: stock/templates/stock/location.html:182
#: stock/templates/stock/location.html:194
#: stock/templates/stock/location_sidebar.html:7
-#: templates/InvenTree/search.html:155 templates/js/translated/part.js:1034
-#: templates/js/translated/search.js:214 templates/js/translated/stock.js:2514
+#: templates/InvenTree/search.html:155 templates/js/translated/part.js:1033
+#: templates/js/translated/search.js:172 templates/js/translated/stock.js:2645
#: users/models.py:41
msgid "Stock Items"
msgstr ""
@@ -4261,7 +4309,7 @@ msgstr ""
msgid "New Customer"
msgstr ""
-#: company/views.py:52 templates/js/translated/search.js:234
+#: company/views.py:52 templates/js/translated/search.js:192
msgid "Companies"
msgstr ""
@@ -4269,72 +4317,76 @@ msgstr ""
msgid "New Company"
msgstr ""
-#: label/models.py:104
+#: label/models.py:112
msgid "Label name"
msgstr ""
-#: label/models.py:111
+#: label/models.py:119
msgid "Label description"
msgstr ""
-#: label/models.py:118
+#: label/models.py:126
msgid "Label"
msgstr ""
-#: label/models.py:119
+#: label/models.py:127
msgid "Label template file"
msgstr ""
-#: label/models.py:125 report/models.py:273
+#: label/models.py:133 report/models.py:273
msgid "Enabled"
msgstr ""
-#: label/models.py:126
+#: label/models.py:134
msgid "Label template is enabled"
msgstr ""
-#: label/models.py:131
+#: label/models.py:139
msgid "Width [mm]"
msgstr ""
-#: label/models.py:132
+#: label/models.py:140
msgid "Label width, specified in mm"
msgstr ""
-#: label/models.py:138
+#: label/models.py:146
msgid "Height [mm]"
msgstr ""
-#: label/models.py:139
+#: label/models.py:147
msgid "Label height, specified in mm"
msgstr ""
-#: label/models.py:145 report/models.py:266
+#: label/models.py:153 report/models.py:266
msgid "Filename Pattern"
msgstr ""
-#: label/models.py:146
+#: label/models.py:154
msgid "Pattern for generating label filenames"
msgstr ""
-#: label/models.py:242
+#: label/models.py:250
msgid "Query filters (comma-separated list of key=value pairs),"
msgstr ""
-#: label/models.py:243 label/models.py:284 label/models.py:312
-#: report/models.py:294 report/models.py:452 report/models.py:490
-#: report/models.py:528
+#: label/models.py:251 label/models.py:292 label/models.py:320
+#: label/models.py:356 report/models.py:294 report/models.py:454
+#: report/models.py:492 report/models.py:530
msgid "Filters"
msgstr ""
-#: label/models.py:283
+#: label/models.py:291
msgid "Query filters (comma-separated list of key=value pairs"
msgstr ""
-#: label/models.py:311
+#: label/models.py:319
msgid "Part query filters (comma-separated value of key=value pairs)"
msgstr ""
+#: label/models.py:355
+msgid "Query filters (comma-separated list of key=value pairs)"
+msgstr ""
+
#: label/templates/label/part/part_label.html:31
#: label/templates/label/stockitem/qr.html:21
#: label/templates/label/stocklocation/qr.html:21
@@ -4352,8 +4404,8 @@ msgstr ""
#: report/templates/report/inventree_po_report_base.html:31
#: report/templates/report/inventree_so_report_base.html:31
#: templates/js/translated/order.js:327
-#: templates/js/translated/purchase_order.js:2093
-#: templates/js/translated/sales_order.js:1827
+#: templates/js/translated/purchase_order.js:2103
+#: templates/js/translated/sales_order.js:1839
msgid "Total Price"
msgstr ""
@@ -4361,30 +4413,30 @@ msgstr ""
msgid "No matching purchase order found"
msgstr ""
-#: order/api.py:1452 order/models.py:1178 order/models.py:1262
+#: order/api.py:1452 order/models.py:1191 order/models.py:1275
#: order/templates/order/order_base.html:9
#: order/templates/order/order_base.html:18
#: report/templates/report/inventree_po_report_base.html:14
#: stock/templates/stock/item_base.html:177
#: templates/email/overdue_purchase_order.html:15
-#: templates/js/translated/part.js:1718 templates/js/translated/pricing.js:790
-#: templates/js/translated/purchase_order.js:154
-#: templates/js/translated/purchase_order.js:748
-#: templates/js/translated/purchase_order.js:1637
-#: templates/js/translated/stock.js:1996 templates/js/translated/stock.js:2644
+#: templates/js/translated/part.js:1717 templates/js/translated/pricing.js:790
+#: templates/js/translated/purchase_order.js:165
+#: templates/js/translated/purchase_order.js:759
+#: templates/js/translated/purchase_order.js:1652
+#: templates/js/translated/stock.js:2153 templates/js/translated/stock.js:2775
msgid "Purchase Order"
msgstr ""
-#: order/api.py:1456 order/models.py:1909 order/models.py:1955
+#: order/api.py:1456 order/models.py:1922 order/models.py:1968
#: order/templates/order/return_order_base.html:9
#: order/templates/order/return_order_base.html:28
#: report/templates/report/inventree_return_order_report_base.html:13
-#: templates/js/translated/return_order.js:269
-#: templates/js/translated/stock.js:2678
+#: templates/js/translated/return_order.js:281
+#: templates/js/translated/stock.js:2809
msgid "Return Order"
msgstr ""
-#: order/api.py:1458 templates/js/translated/sales_order.js:1030
+#: order/api.py:1458 templates/js/translated/sales_order.js:1042
msgid "Unknown"
msgstr ""
@@ -4392,11 +4444,11 @@ msgstr ""
msgid "Total price for this order"
msgstr ""
-#: order/models.py:79 order/serializers.py:49
+#: order/models.py:79 order/serializers.py:50
msgid "Order Currency"
msgstr ""
-#: order/models.py:81 order/serializers.py:50
+#: order/models.py:81 order/serializers.py:51
msgid "Currency for this order (leave blank to use company default)"
msgstr ""
@@ -4408,492 +4460,496 @@ msgstr ""
msgid "Order description (optional)"
msgstr ""
-#: order/models.py:234
+#: order/models.py:237
msgid "Select project code for this order"
msgstr ""
-#: order/models.py:236 order/models.py:1094 order/models.py:1454
+#: order/models.py:240 order/models.py:1107 order/models.py:1467
msgid "Link to external page"
msgstr ""
-#: order/models.py:241
+#: order/models.py:245
msgid "Expected date for order delivery. Order will be overdue after this date."
msgstr ""
-#: order/models.py:250
+#: order/models.py:254
msgid "Created By"
msgstr ""
-#: order/models.py:257
+#: order/models.py:261
msgid "User or group responsible for this order"
msgstr ""
-#: order/models.py:267
+#: order/models.py:271
msgid "Point of contact for this order"
msgstr ""
-#: order/models.py:360 order/models.py:766
+#: order/models.py:280
+msgid "Company address for this order"
+msgstr ""
+
+#: order/models.py:373 order/models.py:779
msgid "Order reference"
msgstr ""
-#: order/models.py:368 order/models.py:791
+#: order/models.py:381 order/models.py:804
msgid "Purchase order status"
msgstr ""
-#: order/models.py:383
+#: order/models.py:396
msgid "Company from which the items are being ordered"
msgstr ""
-#: order/models.py:391 order/templates/order/order_base.html:152
-#: templates/js/translated/purchase_order.js:1662
+#: order/models.py:404 order/templates/order/order_base.html:148
+#: templates/js/translated/purchase_order.js:1677
msgid "Supplier Reference"
msgstr ""
-#: order/models.py:391
+#: order/models.py:404
msgid "Supplier order reference code"
msgstr ""
-#: order/models.py:398
+#: order/models.py:411
msgid "received by"
msgstr ""
-#: order/models.py:403 order/models.py:1761
+#: order/models.py:416 order/models.py:1774
msgid "Issue Date"
msgstr ""
-#: order/models.py:404 order/models.py:1762
+#: order/models.py:417 order/models.py:1775
msgid "Date order was issued"
msgstr ""
-#: order/models.py:410 order/models.py:1768
+#: order/models.py:423 order/models.py:1781
msgid "Date order was completed"
msgstr ""
-#: order/models.py:445
+#: order/models.py:458
msgid "Part supplier must match PO supplier"
msgstr ""
-#: order/models.py:606
+#: order/models.py:619
msgid "Quantity must be a positive number"
msgstr ""
-#: order/models.py:780
+#: order/models.py:793
msgid "Company to which the items are being sold"
msgstr ""
-#: order/models.py:799 order/models.py:1755
+#: order/models.py:812 order/models.py:1768
msgid "Customer Reference "
msgstr ""
-#: order/models.py:799 order/models.py:1756
+#: order/models.py:812 order/models.py:1769
msgid "Customer order reference code"
msgstr ""
-#: order/models.py:801 order/models.py:1408
-#: templates/js/translated/sales_order.js:831
-#: templates/js/translated/sales_order.js:1012
+#: order/models.py:814 order/models.py:1421
+#: templates/js/translated/sales_order.js:843
+#: templates/js/translated/sales_order.js:1024
msgid "Shipment Date"
msgstr ""
-#: order/models.py:808
+#: order/models.py:821
msgid "shipped by"
msgstr ""
-#: order/models.py:857
+#: order/models.py:870
msgid "Order cannot be completed as no parts have been assigned"
msgstr ""
-#: order/models.py:861
+#: order/models.py:874
msgid "Only an open order can be marked as complete"
msgstr ""
-#: order/models.py:864 templates/js/translated/sales_order.js:491
+#: order/models.py:877 templates/js/translated/sales_order.js:503
msgid "Order cannot be completed as there are incomplete shipments"
msgstr ""
-#: order/models.py:867
+#: order/models.py:880
msgid "Order cannot be completed as there are incomplete line items"
msgstr ""
-#: order/models.py:1074
+#: order/models.py:1087
msgid "Item quantity"
msgstr ""
-#: order/models.py:1087
+#: order/models.py:1100
msgid "Line item reference"
msgstr ""
-#: order/models.py:1089
+#: order/models.py:1102
msgid "Line item notes"
msgstr ""
-#: order/models.py:1100
+#: order/models.py:1113
msgid "Target date for this line item (leave blank to use the target date from the order)"
msgstr ""
-#: order/models.py:1118
+#: order/models.py:1131
msgid "Line item description (optional)"
msgstr ""
-#: order/models.py:1123
+#: order/models.py:1136
msgid "Context"
msgstr ""
-#: order/models.py:1124
+#: order/models.py:1137
msgid "Additional context for this line"
msgstr ""
-#: order/models.py:1133
+#: order/models.py:1146
msgid "Unit price"
msgstr ""
-#: order/models.py:1163
+#: order/models.py:1176
msgid "Supplier part must match supplier"
msgstr ""
-#: order/models.py:1171
+#: order/models.py:1184
msgid "deleted"
msgstr ""
-#: order/models.py:1177 order/models.py:1262 order/models.py:1303
-#: order/models.py:1402 order/models.py:1551 order/models.py:1908
-#: order/models.py:1955 templates/js/translated/sales_order.js:1474
+#: order/models.py:1190 order/models.py:1275 order/models.py:1316
+#: order/models.py:1415 order/models.py:1564 order/models.py:1921
+#: order/models.py:1968 templates/js/translated/sales_order.js:1486
msgid "Order"
msgstr ""
-#: order/models.py:1196
+#: order/models.py:1209
msgid "Supplier part"
msgstr ""
-#: order/models.py:1203 order/templates/order/order_base.html:200
-#: templates/js/translated/part.js:1841 templates/js/translated/part.js:1872
-#: templates/js/translated/purchase_order.js:1276
-#: templates/js/translated/purchase_order.js:2137
-#: templates/js/translated/return_order.js:748
-#: templates/js/translated/table_filters.js:90
-#: templates/js/translated/table_filters.js:515
+#: order/models.py:1216 order/templates/order/order_base.html:196
+#: templates/js/translated/part.js:1840 templates/js/translated/part.js:1871
+#: templates/js/translated/purchase_order.js:1291
+#: templates/js/translated/purchase_order.js:2147
+#: templates/js/translated/return_order.js:760
+#: templates/js/translated/table_filters.js:96
+#: templates/js/translated/table_filters.js:537
msgid "Received"
msgstr ""
-#: order/models.py:1204
+#: order/models.py:1217
msgid "Number of items received"
msgstr ""
-#: order/models.py:1211 stock/models.py:823 stock/serializers.py:252
+#: order/models.py:1224 stock/models.py:823 stock/serializers.py:314
#: stock/templates/stock/item_base.html:184
-#: templates/js/translated/stock.js:2047
+#: templates/js/translated/stock.js:2204
msgid "Purchase Price"
msgstr "購入金額"
-#: order/models.py:1212
+#: order/models.py:1225
msgid "Unit purchase price"
msgstr ""
-#: order/models.py:1225
+#: order/models.py:1238
msgid "Where does the Purchaser want this item to be stored?"
msgstr ""
-#: order/models.py:1291
+#: order/models.py:1304
msgid "Virtual part cannot be assigned to a sales order"
msgstr ""
-#: order/models.py:1296
+#: order/models.py:1309
msgid "Only salable parts can be assigned to a sales order"
msgstr ""
-#: order/models.py:1322 part/templates/part/part_pricing.html:107
+#: order/models.py:1335 part/templates/part/part_pricing.html:107
#: part/templates/part/prices.html:128 templates/js/translated/pricing.js:943
msgid "Sale Price"
msgstr ""
-#: order/models.py:1323
+#: order/models.py:1336
msgid "Unit sale price"
msgstr ""
-#: order/models.py:1333
+#: order/models.py:1346
msgid "Shipped quantity"
msgstr ""
-#: order/models.py:1409
+#: order/models.py:1422
msgid "Date of shipment"
msgstr ""
-#: order/models.py:1414 templates/js/translated/sales_order.js:1024
+#: order/models.py:1427 templates/js/translated/sales_order.js:1036
msgid "Delivery Date"
msgstr ""
-#: order/models.py:1415
+#: order/models.py:1428
msgid "Date of delivery of shipment"
msgstr ""
-#: order/models.py:1422
+#: order/models.py:1435
msgid "Checked By"
msgstr ""
-#: order/models.py:1423
+#: order/models.py:1436
msgid "User who checked this shipment"
msgstr ""
-#: order/models.py:1430 order/models.py:1627 order/serializers.py:1248
-#: order/serializers.py:1376 templates/js/translated/model_renderers.js:415
+#: order/models.py:1443 order/models.py:1640 order/serializers.py:1254
+#: order/serializers.py:1382 templates/js/translated/model_renderers.js:429
msgid "Shipment"
msgstr ""
-#: order/models.py:1431
+#: order/models.py:1444
msgid "Shipment number"
msgstr ""
-#: order/models.py:1439
+#: order/models.py:1452
msgid "Tracking Number"
msgstr ""
-#: order/models.py:1440
+#: order/models.py:1453
msgid "Shipment tracking information"
msgstr ""
-#: order/models.py:1447
+#: order/models.py:1460
msgid "Invoice Number"
msgstr ""
-#: order/models.py:1448
+#: order/models.py:1461
msgid "Reference number for associated invoice"
msgstr ""
-#: order/models.py:1470
+#: order/models.py:1483
msgid "Shipment has already been sent"
msgstr ""
-#: order/models.py:1473
+#: order/models.py:1486
msgid "Shipment has no allocated stock items"
msgstr ""
-#: order/models.py:1586 order/models.py:1588
+#: order/models.py:1599 order/models.py:1601
msgid "Stock item has not been assigned"
msgstr ""
-#: order/models.py:1592
+#: order/models.py:1605
msgid "Cannot allocate stock item to a line with a different part"
msgstr ""
-#: order/models.py:1594
+#: order/models.py:1607
msgid "Cannot allocate stock to a line without a part"
msgstr ""
-#: order/models.py:1597
+#: order/models.py:1610
msgid "Allocation quantity cannot exceed stock quantity"
msgstr ""
-#: order/models.py:1607 order/serializers.py:1110
+#: order/models.py:1620 order/serializers.py:1116
msgid "Quantity must be 1 for serialized stock item"
msgstr ""
-#: order/models.py:1610
+#: order/models.py:1623
msgid "Sales order does not match shipment"
msgstr ""
-#: order/models.py:1611
+#: order/models.py:1624
msgid "Shipment does not match sales order"
msgstr ""
-#: order/models.py:1619
+#: order/models.py:1632
msgid "Line"
msgstr ""
-#: order/models.py:1628
+#: order/models.py:1641
msgid "Sales order shipment reference"
msgstr ""
-#: order/models.py:1641 order/models.py:1916
-#: templates/js/translated/return_order.js:706
+#: order/models.py:1654 order/models.py:1929
+#: templates/js/translated/return_order.js:718
msgid "Item"
msgstr ""
-#: order/models.py:1642
+#: order/models.py:1655
msgid "Select stock item to allocate"
msgstr ""
-#: order/models.py:1645
+#: order/models.py:1658
msgid "Enter stock allocation quantity"
msgstr ""
-#: order/models.py:1725
+#: order/models.py:1738
msgid "Return Order reference"
msgstr ""
-#: order/models.py:1739
+#: order/models.py:1752
msgid "Company from which items are being returned"
msgstr ""
-#: order/models.py:1750
+#: order/models.py:1763
msgid "Return order status"
msgstr ""
-#: order/models.py:1901
+#: order/models.py:1914
msgid "Only serialized items can be assigned to a Return Order"
msgstr ""
-#: order/models.py:1917
+#: order/models.py:1930
msgid "Select item to return from customer"
msgstr ""
-#: order/models.py:1922
+#: order/models.py:1935
msgid "Received Date"
msgstr ""
-#: order/models.py:1923
+#: order/models.py:1936
msgid "The date this this return item was received"
msgstr ""
-#: order/models.py:1934 templates/js/translated/return_order.js:717
-#: templates/js/translated/table_filters.js:93
+#: order/models.py:1947 templates/js/translated/return_order.js:729
+#: templates/js/translated/table_filters.js:99
msgid "Outcome"
msgstr ""
-#: order/models.py:1934
+#: order/models.py:1947
msgid "Outcome for this line item"
msgstr ""
-#: order/models.py:1940
+#: order/models.py:1953
msgid "Cost associated with return or repair for this line item"
msgstr ""
-#: order/serializers.py:247
+#: order/serializers.py:253
msgid "Order cannot be cancelled"
msgstr ""
-#: order/serializers.py:262 order/serializers.py:1128
+#: order/serializers.py:268 order/serializers.py:1134
msgid "Allow order to be closed with incomplete line items"
msgstr ""
-#: order/serializers.py:273 order/serializers.py:1139
+#: order/serializers.py:279 order/serializers.py:1145
msgid "Order has incomplete line items"
msgstr ""
-#: order/serializers.py:386
+#: order/serializers.py:392
msgid "Order is not open"
msgstr ""
-#: order/serializers.py:404
+#: order/serializers.py:410
msgid "Purchase price currency"
msgstr ""
-#: order/serializers.py:422
+#: order/serializers.py:428
msgid "Supplier part must be specified"
msgstr ""
-#: order/serializers.py:427
+#: order/serializers.py:433
msgid "Purchase order must be specified"
msgstr ""
-#: order/serializers.py:433
+#: order/serializers.py:439
msgid "Supplier must match purchase order"
msgstr ""
-#: order/serializers.py:434
+#: order/serializers.py:440
msgid "Purchase order must match supplier"
msgstr ""
-#: order/serializers.py:472 order/serializers.py:1216
+#: order/serializers.py:478 order/serializers.py:1222
msgid "Line Item"
msgstr ""
-#: order/serializers.py:478
+#: order/serializers.py:484
msgid "Line item does not match purchase order"
msgstr ""
-#: order/serializers.py:488 order/serializers.py:607 order/serializers.py:1589
+#: order/serializers.py:494 order/serializers.py:613 order/serializers.py:1595
msgid "Select destination location for received items"
msgstr ""
-#: order/serializers.py:507 templates/js/translated/purchase_order.js:1100
+#: order/serializers.py:513 templates/js/translated/purchase_order.js:1115
msgid "Enter batch code for incoming stock items"
msgstr ""
-#: order/serializers.py:515 templates/js/translated/purchase_order.js:1124
+#: order/serializers.py:521 templates/js/translated/purchase_order.js:1139
msgid "Enter serial numbers for incoming stock items"
msgstr ""
-#: order/serializers.py:528 templates/js/translated/barcode.js:52
+#: order/serializers.py:534 templates/js/translated/barcode.js:52
msgid "Barcode"
msgstr ""
-#: order/serializers.py:529
+#: order/serializers.py:535
msgid "Scanned barcode"
msgstr ""
-#: order/serializers.py:545
+#: order/serializers.py:551
msgid "Barcode is already in use"
msgstr ""
-#: order/serializers.py:569
+#: order/serializers.py:575
msgid "An integer quantity must be provided for trackable parts"
msgstr ""
-#: order/serializers.py:623 order/serializers.py:1604
+#: order/serializers.py:629 order/serializers.py:1610
msgid "Line items must be provided"
msgstr ""
-#: order/serializers.py:640
+#: order/serializers.py:646
msgid "Destination location must be specified"
msgstr ""
-#: order/serializers.py:651
+#: order/serializers.py:657
msgid "Supplied barcode values must be unique"
msgstr ""
-#: order/serializers.py:950
+#: order/serializers.py:956
msgid "Sale price currency"
msgstr ""
-#: order/serializers.py:1007
+#: order/serializers.py:1013
msgid "No shipment details provided"
msgstr ""
-#: order/serializers.py:1071 order/serializers.py:1225
+#: order/serializers.py:1077 order/serializers.py:1231
msgid "Line item is not associated with this order"
msgstr ""
-#: order/serializers.py:1093
+#: order/serializers.py:1099
msgid "Quantity must be positive"
msgstr ""
-#: order/serializers.py:1238
+#: order/serializers.py:1244
msgid "Enter serial numbers to allocate"
msgstr ""
-#: order/serializers.py:1260 order/serializers.py:1384
+#: order/serializers.py:1266 order/serializers.py:1390
msgid "Shipment has already been shipped"
msgstr ""
-#: order/serializers.py:1263 order/serializers.py:1387
+#: order/serializers.py:1269 order/serializers.py:1393
msgid "Shipment is not associated with this order"
msgstr ""
-#: order/serializers.py:1317
+#: order/serializers.py:1323
msgid "No match found for the following serial numbers"
msgstr ""
-#: order/serializers.py:1327
+#: order/serializers.py:1333
msgid "The following serial numbers are already allocated"
msgstr ""
-#: order/serializers.py:1555
+#: order/serializers.py:1561
msgid "Return order line item"
msgstr ""
-#: order/serializers.py:1562
+#: order/serializers.py:1568
msgid "Line item does not match return order"
msgstr ""
-#: order/serializers.py:1565
+#: order/serializers.py:1571
msgid "Line item has already been received"
msgstr ""
-#: order/serializers.py:1597
+#: order/serializers.py:1603
msgid "Items can only be received against orders which are in progress"
msgstr ""
-#: order/serializers.py:1678
+#: order/serializers.py:1684
msgid "Line price currency"
msgstr ""
@@ -4957,82 +5013,74 @@ msgid "Issue Order"
msgstr ""
#: order/templates/order/order_base.html:83
-msgid "Receive items"
-msgstr ""
-
-#: order/templates/order/order_base.html:85
-msgid "Receive Items"
-msgstr ""
-
-#: order/templates/order/order_base.html:87
#: order/templates/order/return_order_base.html:87
msgid "Mark order as complete"
msgstr ""
-#: order/templates/order/order_base.html:88
+#: order/templates/order/order_base.html:84
#: order/templates/order/return_order_base.html:88
#: order/templates/order/sales_order_base.html:94
msgid "Complete Order"
msgstr ""
-#: order/templates/order/order_base.html:95
+#: order/templates/order/order_base.html:91
msgid "Supplier part thumbnail"
msgstr ""
-#: order/templates/order/order_base.html:110
+#: order/templates/order/order_base.html:106
#: order/templates/order/return_order_base.html:102
#: order/templates/order/sales_order_base.html:107
msgid "Order Reference"
msgstr ""
-#: order/templates/order/order_base.html:115
+#: order/templates/order/order_base.html:111
#: order/templates/order/return_order_base.html:107
#: order/templates/order/sales_order_base.html:112
msgid "Order Description"
msgstr ""
-#: order/templates/order/order_base.html:122
+#: order/templates/order/order_base.html:118
#: order/templates/order/return_order_base.html:114
#: order/templates/order/sales_order_base.html:119
msgid "Order Status"
msgstr ""
-#: order/templates/order/order_base.html:145
+#: order/templates/order/order_base.html:141
msgid "No suppplier information available"
msgstr ""
-#: order/templates/order/order_base.html:158
+#: order/templates/order/order_base.html:154
#: order/templates/order/sales_order_base.html:158
msgid "Completed Line Items"
msgstr ""
-#: order/templates/order/order_base.html:164
+#: order/templates/order/order_base.html:160
#: order/templates/order/sales_order_base.html:164
#: order/templates/order/sales_order_base.html:174
msgid "Incomplete"
msgstr ""
-#: order/templates/order/order_base.html:183
+#: order/templates/order/order_base.html:179
#: order/templates/order/return_order_base.html:158
#: report/templates/report/inventree_build_order_base.html:121
msgid "Issued"
msgstr ""
-#: order/templates/order/order_base.html:221
+#: order/templates/order/order_base.html:224
msgid "Total cost"
msgstr ""
-#: order/templates/order/order_base.html:225
-#: order/templates/order/return_order_base.html:193
-#: order/templates/order/sales_order_base.html:233
+#: order/templates/order/order_base.html:228
+#: order/templates/order/return_order_base.html:200
+#: order/templates/order/sales_order_base.html:240
msgid "Total cost could not be calculated"
msgstr ""
-#: order/templates/order/order_base.html:331
+#: order/templates/order/order_base.html:318
msgid "Purchase Order QR Code"
msgstr ""
-#: order/templates/order/order_base.html:343
+#: order/templates/order/order_base.html:330
msgid "Link Barcode to Purchase Order"
msgstr ""
@@ -5085,13 +5133,13 @@ msgstr ""
#: part/templates/part/import_wizard/ajax_match_references.html:42
#: part/templates/part/import_wizard/match_fields.html:71
#: part/templates/part/import_wizard/match_references.html:49
-#: templates/js/translated/bom.js:132 templates/js/translated/build.js:512
-#: templates/js/translated/build.js:2348
-#: templates/js/translated/purchase_order.js:692
-#: templates/js/translated/purchase_order.js:1206
-#: templates/js/translated/return_order.js:494
-#: templates/js/translated/sales_order.js:1097
-#: templates/js/translated/stock.js:681 templates/js/translated/stock.js:850
+#: templates/js/translated/bom.js:133 templates/js/translated/build.js:518
+#: templates/js/translated/build.js:1555
+#: templates/js/translated/purchase_order.js:703
+#: templates/js/translated/purchase_order.js:1221
+#: templates/js/translated/return_order.js:506
+#: templates/js/translated/sales_order.js:1109
+#: templates/js/translated/stock.js:680 templates/js/translated/stock.js:849
#: templates/patterns/wizard/match_fields.html:70
msgid "Remove row"
msgstr ""
@@ -5152,9 +5200,9 @@ msgstr ""
#: order/templates/order/purchase_order_detail.html:27
#: order/templates/order/return_order_detail.html:24
#: order/templates/order/sales_order_detail.html:24
-#: templates/js/translated/purchase_order.js:419
-#: templates/js/translated/return_order.js:447
-#: templates/js/translated/sales_order.js:222
+#: templates/js/translated/purchase_order.js:430
+#: templates/js/translated/return_order.js:459
+#: templates/js/translated/sales_order.js:234
msgid "Add Line Item"
msgstr ""
@@ -5165,30 +5213,25 @@ msgstr ""
msgid "Receive Line Items"
msgstr ""
-#: order/templates/order/purchase_order_detail.html:49
#: order/templates/order/purchase_order_detail.html:50
-msgid "Delete Line Items"
-msgstr ""
-
-#: order/templates/order/purchase_order_detail.html:66
-#: order/templates/order/return_order_detail.html:47
-#: order/templates/order/sales_order_detail.html:43
+#: order/templates/order/return_order_detail.html:45
+#: order/templates/order/sales_order_detail.html:41
msgid "Extra Lines"
msgstr ""
-#: order/templates/order/purchase_order_detail.html:72
-#: order/templates/order/return_order_detail.html:53
-#: order/templates/order/sales_order_detail.html:49
+#: order/templates/order/purchase_order_detail.html:56
+#: order/templates/order/return_order_detail.html:51
+#: order/templates/order/sales_order_detail.html:47
msgid "Add Extra Line"
msgstr ""
-#: order/templates/order/purchase_order_detail.html:92
+#: order/templates/order/purchase_order_detail.html:74
msgid "Received Items"
msgstr ""
-#: order/templates/order/purchase_order_detail.html:117
-#: order/templates/order/return_order_detail.html:89
-#: order/templates/order/sales_order_detail.html:149
+#: order/templates/order/purchase_order_detail.html:99
+#: order/templates/order/return_order_detail.html:85
+#: order/templates/order/sales_order_detail.html:139
msgid "Order Notes"
msgstr ""
@@ -5208,29 +5251,29 @@ msgstr ""
#: order/templates/order/return_order_base.html:139
#: order/templates/order/sales_order_base.html:152
-#: templates/js/translated/return_order.js:297
-#: templates/js/translated/sales_order.js:785
+#: templates/js/translated/return_order.js:309
+#: templates/js/translated/sales_order.js:797
msgid "Customer Reference"
msgstr ""
-#: order/templates/order/return_order_base.html:189
-#: order/templates/order/sales_order_base.html:229
+#: order/templates/order/return_order_base.html:196
+#: order/templates/order/sales_order_base.html:236
#: part/templates/part/part_pricing.html:32
#: part/templates/part/part_pricing.html:58
#: part/templates/part/part_pricing.html:99
#: part/templates/part/part_pricing.html:114
-#: templates/js/translated/part.js:1046
-#: templates/js/translated/purchase_order.js:1712
-#: templates/js/translated/return_order.js:369
-#: templates/js/translated/sales_order.js:843
+#: templates/js/translated/part.js:1045
+#: templates/js/translated/purchase_order.js:1727
+#: templates/js/translated/return_order.js:381
+#: templates/js/translated/sales_order.js:855
msgid "Total Cost"
msgstr ""
-#: order/templates/order/return_order_base.html:257
+#: order/templates/order/return_order_base.html:264
msgid "Return Order QR Code"
msgstr ""
-#: order/templates/order/return_order_base.html:269
+#: order/templates/order/return_order_base.html:276
msgid "Link Barcode to Return Order"
msgstr ""
@@ -5248,7 +5291,7 @@ msgid "Ship Items"
msgstr ""
#: order/templates/order/sales_order_base.html:93
-#: templates/js/translated/sales_order.js:469
+#: templates/js/translated/sales_order.js:481
msgid "Complete Sales Order"
msgstr ""
@@ -5257,16 +5300,16 @@ msgid "This Sales Order has not been fully allocated"
msgstr ""
#: order/templates/order/sales_order_base.html:170
-#: order/templates/order/sales_order_detail.html:105
+#: order/templates/order/sales_order_detail.html:99
#: order/templates/order/so_sidebar.html:11
msgid "Completed Shipments"
msgstr ""
-#: order/templates/order/sales_order_base.html:306
+#: order/templates/order/sales_order_base.html:313
msgid "Sales Order QR Code"
msgstr ""
-#: order/templates/order/sales_order_base.html:318
+#: order/templates/order/sales_order_base.html:325
msgid "Link Barcode to Sales Order"
msgstr ""
@@ -5274,18 +5317,17 @@ msgstr ""
msgid "Sales Order Items"
msgstr ""
-#: order/templates/order/sales_order_detail.html:71
-#: order/templates/order/so_sidebar.html:8 templates/InvenTree/index.html:332
+#: order/templates/order/sales_order_detail.html:67
+#: order/templates/order/so_sidebar.html:8 templates/InvenTree/index.html:284
msgid "Pending Shipments"
msgstr ""
-#: order/templates/order/sales_order_detail.html:75
-#: templates/attachment_table.html:6 templates/js/translated/bom.js:1236
-#: templates/js/translated/build.js:2249
+#: order/templates/order/sales_order_detail.html:71
+#: templates/js/translated/bom.js:1256 templates/js/translated/filters.js:297
msgid "Actions"
msgstr ""
-#: order/templates/order/sales_order_detail.html:84
+#: order/templates/order/sales_order_detail.html:80
msgid "New Shipment"
msgstr ""
@@ -5311,12 +5353,12 @@ msgstr ""
msgid "Updated {part} unit-price to {price} and quantity to {qty}"
msgstr ""
-#: part/admin.py:33 part/admin.py:273 part/models.py:3667 part/tasks.py:288
+#: part/admin.py:33 part/admin.py:273 part/models.py:3716 part/tasks.py:288
#: stock/admin.py:101
msgid "Part ID"
msgstr ""
-#: part/admin.py:34 part/admin.py:275 part/models.py:3671 part/tasks.py:289
+#: part/admin.py:34 part/admin.py:275 part/models.py:3720 part/tasks.py:289
#: stock/admin.py:102
msgid "Part Name"
msgstr ""
@@ -5325,19 +5367,19 @@ msgstr ""
msgid "Part Description"
msgstr ""
-#: part/admin.py:36 part/models.py:889 part/templates/part/part_base.html:271
-#: templates/js/translated/part.js:1200 templates/js/translated/part.js:2233
-#: templates/js/translated/stock.js:1795
+#: part/admin.py:36 part/models.py:890 part/templates/part/part_base.html:271
+#: templates/js/translated/part.js:1199 templates/js/translated/part.js:2309
+#: templates/js/translated/stock.js:1952
msgid "IPN"
msgstr ""
-#: part/admin.py:37 part/models.py:896 part/templates/part/part_base.html:279
-#: report/models.py:179 templates/js/translated/part.js:1205
-#: templates/js/translated/part.js:2239
+#: part/admin.py:37 part/models.py:897 part/templates/part/part_base.html:279
+#: report/models.py:179 templates/js/translated/part.js:1204
+#: templates/js/translated/part.js:2315
msgid "Revision"
msgstr ""
-#: part/admin.py:38 part/admin.py:198 part/models.py:875
+#: part/admin.py:38 part/admin.py:198 part/models.py:876
#: part/templates/part/category.html:93 part/templates/part/part_base.html:300
msgid "Keywords"
msgstr ""
@@ -5358,24 +5400,24 @@ msgstr ""
msgid "Default Supplier ID"
msgstr ""
-#: part/admin.py:46 part/models.py:864 part/templates/part/part_base.html:179
+#: part/admin.py:46 part/models.py:865 part/templates/part/part_base.html:179
msgid "Variant Of"
msgstr ""
-#: part/admin.py:47 part/models.py:980 part/templates/part/part_base.html:205
+#: part/admin.py:47 part/models.py:981 part/templates/part/part_base.html:205
msgid "Minimum Stock"
msgstr ""
#: part/admin.py:61 part/templates/part/part_base.html:199
-#: templates/js/translated/company.js:1299
-#: templates/js/translated/table_filters.js:301
+#: templates/js/translated/company.js:1720
+#: templates/js/translated/table_filters.js:307
msgid "In Stock"
msgstr ""
#: part/admin.py:62 part/bom.py:178 part/templates/part/part_base.html:212
-#: templates/js/translated/bom.js:1167 templates/js/translated/build.js:2191
-#: templates/js/translated/part.js:687 templates/js/translated/part.js:2123
-#: templates/js/translated/table_filters.js:140
+#: templates/js/translated/bom.js:1187 templates/js/translated/build.js:2541
+#: templates/js/translated/part.js:686 templates/js/translated/part.js:2122
+#: templates/js/translated/table_filters.js:146
msgid "On Order"
msgstr ""
@@ -5383,23 +5425,16 @@ msgstr ""
msgid "Used In"
msgstr ""
-#: part/admin.py:64 templates/js/translated/build.js:2203
-#: templates/js/translated/build.js:2465 templates/js/translated/build.js:3052
-#: templates/js/translated/sales_order.js:1906
-#: templates/js/translated/table_filters.js:488
-msgid "Allocated"
-msgstr ""
-
#: part/admin.py:65 part/templates/part/part_base.html:243 stock/admin.py:124
-#: templates/js/translated/part.js:692 templates/js/translated/part.js:2127
+#: templates/js/translated/part.js:691 templates/js/translated/part.js:2126
msgid "Building"
msgstr ""
-#: part/admin.py:66 part/models.py:2930 templates/js/translated/part.js:943
+#: part/admin.py:66 part/models.py:2964 templates/js/translated/part.js:942
msgid "Minimum Cost"
msgstr ""
-#: part/admin.py:67 part/models.py:2936 templates/js/translated/part.js:953
+#: part/admin.py:67 part/models.py:2970 templates/js/translated/part.js:952
msgid "Maximum Cost"
msgstr ""
@@ -5416,13 +5451,13 @@ msgstr ""
msgid "Category Path"
msgstr ""
-#: part/admin.py:202 part/models.py:392 part/templates/part/cat_link.html:3
-#: part/templates/part/category.html:23 part/templates/part/category.html:140
-#: part/templates/part/category.html:160
+#: part/admin.py:202 part/models.py:393 part/serializers.py:307
+#: part/templates/part/cat_link.html:3 part/templates/part/category.html:23
+#: part/templates/part/category.html:140 part/templates/part/category.html:160
#: part/templates/part/category_sidebar.html:9
-#: templates/InvenTree/index.html:86 templates/InvenTree/search.html:84
+#: templates/InvenTree/index.html:36 templates/InvenTree/search.html:84
#: templates/InvenTree/settings/sidebar.html:45
-#: templates/js/translated/part.js:2754 templates/js/translated/search.js:172
+#: templates/js/translated/part.js:2739 templates/js/translated/search.js:130
#: templates/navbar.html:24 users/models.py:38
msgid "Parts"
msgstr "パーツ"
@@ -5439,7 +5474,7 @@ msgstr ""
msgid "Parent IPN"
msgstr ""
-#: part/admin.py:274 part/models.py:3675
+#: part/admin.py:274 part/models.py:3724
msgid "Part IPN"
msgstr ""
@@ -5453,35 +5488,35 @@ msgstr ""
msgid "Maximum Price"
msgstr ""
-#: part/api.py:498
+#: part/api.py:501
msgid "Incoming Purchase Order"
msgstr ""
-#: part/api.py:518
+#: part/api.py:521
msgid "Outgoing Sales Order"
msgstr ""
-#: part/api.py:536
+#: part/api.py:539
msgid "Stock produced by Build Order"
msgstr ""
-#: part/api.py:622
+#: part/api.py:625
msgid "Stock required for Build Order"
msgstr ""
-#: part/api.py:770
+#: part/api.py:773
msgid "Valid"
msgstr ""
-#: part/api.py:771
+#: part/api.py:774
msgid "Validate entire Bill of Materials"
msgstr ""
-#: part/api.py:777
+#: part/api.py:780
msgid "This option must be selected"
msgstr ""
-#: part/bom.py:175 part/models.py:127 part/models.py:923
+#: part/bom.py:175 part/models.py:128 part/models.py:924
#: part/templates/part/category.html:115 part/templates/part/part_base.html:369
msgid "Default Location"
msgstr ""
@@ -5491,7 +5526,7 @@ msgid "Total Stock"
msgstr ""
#: part/bom.py:177 part/templates/part/part_base.html:194
-#: templates/js/translated/sales_order.js:1873
+#: templates/js/translated/sales_order.js:1885
msgid "Available Stock"
msgstr ""
@@ -5499,916 +5534,913 @@ msgstr ""
msgid "Input quantity for price calculation"
msgstr ""
-#: part/models.py:75 part/models.py:3616 part/templates/part/category.html:16
+#: part/models.py:76 part/models.py:3665 part/templates/part/category.html:16
#: part/templates/part/part_app_base.html:10
msgid "Part Category"
msgstr ""
-#: part/models.py:76 part/templates/part/category.html:135
-#: templates/InvenTree/search.html:97 templates/js/translated/search.js:200
+#: part/models.py:77 part/templates/part/category.html:135
+#: templates/InvenTree/search.html:97 templates/js/translated/search.js:158
#: users/models.py:37
msgid "Part Categories"
msgstr ""
-#: part/models.py:128
+#: part/models.py:129
msgid "Default location for parts in this category"
msgstr ""
-#: part/models.py:133 stock/models.py:124 templates/js/translated/stock.js:2520
-#: templates/js/translated/table_filters.js:209
-#: templates/js/translated/table_filters.js:229
+#: part/models.py:134 stock/models.py:124 templates/js/translated/stock.js:2651
+#: templates/js/translated/table_filters.js:215
+#: templates/js/translated/table_filters.js:235
msgid "Structural"
msgstr ""
-#: part/models.py:135
+#: part/models.py:136
msgid "Parts may not be directly assigned to a structural category, but may be assigned to child categories."
msgstr ""
-#: part/models.py:139
+#: part/models.py:140
msgid "Default keywords"
msgstr ""
-#: part/models.py:139
+#: part/models.py:140
msgid "Default keywords for parts in this category"
msgstr ""
-#: part/models.py:144 stock/models.py:113
+#: part/models.py:145 stock/models.py:113
msgid "Icon"
msgstr ""
-#: part/models.py:145 stock/models.py:114
+#: part/models.py:146 stock/models.py:114
msgid "Icon (optional)"
msgstr ""
-#: part/models.py:164
+#: part/models.py:165
msgid "You cannot make this part category structural because some parts are already assigned to it!"
msgstr ""
-#: part/models.py:475
+#: part/models.py:476
msgid "Invalid choice for parent part"
msgstr ""
-#: part/models.py:517 part/models.py:529
+#: part/models.py:518 part/models.py:530
#, python-brace-format
msgid "Part '{p1}' is used in BOM for '{p2}' (recursive)"
msgstr ""
-#: part/models.py:601
+#: part/models.py:602
#, python-brace-format
msgid "IPN must match regex pattern {pat}"
msgstr ""
-#: part/models.py:672
+#: part/models.py:673
msgid "Stock item with this serial number already exists"
msgstr ""
-#: part/models.py:803
+#: part/models.py:804
msgid "Duplicate IPN not allowed in part settings"
msgstr ""
-#: part/models.py:808
+#: part/models.py:809
msgid "Part with this Name, IPN and Revision already exists."
msgstr ""
-#: part/models.py:822
+#: part/models.py:823
msgid "Parts cannot be assigned to structural part categories!"
msgstr ""
-#: part/models.py:846 part/models.py:3672
+#: part/models.py:847 part/models.py:3721
msgid "Part name"
msgstr ""
-#: part/models.py:852
+#: part/models.py:853
msgid "Is Template"
msgstr ""
-#: part/models.py:853
+#: part/models.py:854
msgid "Is this part a template part?"
msgstr ""
-#: part/models.py:863
+#: part/models.py:864
msgid "Is this part a variant of another part?"
msgstr ""
-#: part/models.py:870
+#: part/models.py:871
msgid "Part description (optional)"
msgstr ""
-#: part/models.py:876
+#: part/models.py:877
msgid "Part keywords to improve visibility in search results"
msgstr ""
-#: part/models.py:883 part/models.py:3198 part/models.py:3615
-#: part/serializers.py:848 part/templates/part/part_base.html:262
+#: part/models.py:884 part/models.py:3232 part/models.py:3664
+#: part/serializers.py:320 part/serializers.py:910
+#: part/templates/part/part_base.html:262
#: templates/InvenTree/settings/settings_staff_js.html:204
#: templates/js/translated/notification.js:59
-#: templates/js/translated/part.js:2269 templates/js/translated/part.js:2481
+#: templates/js/translated/part.js:2345
msgid "Category"
msgstr "カテゴリ"
-#: part/models.py:884
+#: part/models.py:885
msgid "Part category"
msgstr ""
-#: part/models.py:890
+#: part/models.py:891
msgid "Internal Part Number"
msgstr ""
-#: part/models.py:895
+#: part/models.py:896
msgid "Part revision or version number"
msgstr ""
-#: part/models.py:921
+#: part/models.py:922
msgid "Where is this item normally stored?"
msgstr ""
-#: part/models.py:966 part/templates/part/part_base.html:378
+#: part/models.py:967 part/templates/part/part_base.html:378
msgid "Default Supplier"
msgstr ""
-#: part/models.py:967
+#: part/models.py:968
msgid "Default supplier part"
msgstr ""
-#: part/models.py:974
+#: part/models.py:975
msgid "Default Expiry"
msgstr ""
-#: part/models.py:975
+#: part/models.py:976
msgid "Expiry time (in days) for stock items of this part"
msgstr ""
-#: part/models.py:981
+#: part/models.py:982
msgid "Minimum allowed stock level"
msgstr ""
-#: part/models.py:988
+#: part/models.py:989
msgid "Units of measure for this part"
msgstr ""
-#: part/models.py:997
+#: part/models.py:998
msgid "Can this part be built from other parts?"
msgstr ""
-#: part/models.py:1003
+#: part/models.py:1004
msgid "Can this part be used to build other parts?"
msgstr ""
-#: part/models.py:1009
+#: part/models.py:1010
msgid "Does this part have tracking for unique items?"
msgstr ""
-#: part/models.py:1014
+#: part/models.py:1015
msgid "Can this part be purchased from external suppliers?"
msgstr ""
-#: part/models.py:1019
+#: part/models.py:1020
msgid "Can this part be sold to customers?"
msgstr ""
-#: part/models.py:1024
+#: part/models.py:1025
msgid "Is this part active?"
msgstr ""
-#: part/models.py:1029
+#: part/models.py:1030
msgid "Is this a virtual part, such as a software product or license?"
msgstr ""
-#: part/models.py:1031
+#: part/models.py:1032
msgid "BOM checksum"
msgstr ""
-#: part/models.py:1031
+#: part/models.py:1032
msgid "Stored BOM checksum"
msgstr ""
-#: part/models.py:1034
+#: part/models.py:1035
msgid "BOM checked by"
msgstr ""
-#: part/models.py:1036
+#: part/models.py:1037
msgid "BOM checked date"
msgstr ""
-#: part/models.py:1040
+#: part/models.py:1041
msgid "Creation User"
msgstr ""
-#: part/models.py:1042
+#: part/models.py:1043
msgid "User responsible for this part"
msgstr ""
-#: part/models.py:1046 part/templates/part/part_base.html:341
+#: part/models.py:1047 part/templates/part/part_base.html:341
#: stock/templates/stock/item_base.html:447
-#: templates/js/translated/part.js:2331
+#: templates/js/translated/part.js:2407
msgid "Last Stocktake"
msgstr ""
-#: part/models.py:1921
+#: part/models.py:1923
msgid "Sell multiple"
msgstr ""
-#: part/models.py:2853
+#: part/models.py:2887
msgid "Currency used to cache pricing calculations"
msgstr ""
-#: part/models.py:2870
+#: part/models.py:2904
msgid "Minimum BOM Cost"
msgstr ""
-#: part/models.py:2871
+#: part/models.py:2905
msgid "Minimum cost of component parts"
msgstr ""
-#: part/models.py:2876
+#: part/models.py:2910
msgid "Maximum BOM Cost"
msgstr ""
-#: part/models.py:2877
+#: part/models.py:2911
msgid "Maximum cost of component parts"
msgstr ""
-#: part/models.py:2882
+#: part/models.py:2916
msgid "Minimum Purchase Cost"
msgstr ""
-#: part/models.py:2883
+#: part/models.py:2917
msgid "Minimum historical purchase cost"
msgstr ""
-#: part/models.py:2888
+#: part/models.py:2922
msgid "Maximum Purchase Cost"
msgstr ""
-#: part/models.py:2889
+#: part/models.py:2923
msgid "Maximum historical purchase cost"
msgstr ""
-#: part/models.py:2894
+#: part/models.py:2928
msgid "Minimum Internal Price"
msgstr ""
-#: part/models.py:2895
+#: part/models.py:2929
msgid "Minimum cost based on internal price breaks"
msgstr ""
-#: part/models.py:2900
+#: part/models.py:2934
msgid "Maximum Internal Price"
msgstr ""
-#: part/models.py:2901
+#: part/models.py:2935
msgid "Maximum cost based on internal price breaks"
msgstr ""
-#: part/models.py:2906
+#: part/models.py:2940
msgid "Minimum Supplier Price"
msgstr ""
-#: part/models.py:2907
+#: part/models.py:2941
msgid "Minimum price of part from external suppliers"
msgstr ""
-#: part/models.py:2912
+#: part/models.py:2946
msgid "Maximum Supplier Price"
msgstr ""
-#: part/models.py:2913
+#: part/models.py:2947
msgid "Maximum price of part from external suppliers"
msgstr ""
-#: part/models.py:2918
+#: part/models.py:2952
msgid "Minimum Variant Cost"
msgstr ""
-#: part/models.py:2919
+#: part/models.py:2953
msgid "Calculated minimum cost of variant parts"
msgstr ""
-#: part/models.py:2924
+#: part/models.py:2958
msgid "Maximum Variant Cost"
msgstr ""
-#: part/models.py:2925
+#: part/models.py:2959
msgid "Calculated maximum cost of variant parts"
msgstr ""
-#: part/models.py:2931
+#: part/models.py:2965
msgid "Calculated overall minimum cost"
msgstr ""
-#: part/models.py:2937
+#: part/models.py:2971
msgid "Calculated overall maximum cost"
msgstr ""
-#: part/models.py:2942
+#: part/models.py:2976
msgid "Minimum Sale Price"
msgstr ""
-#: part/models.py:2943
+#: part/models.py:2977
msgid "Minimum sale price based on price breaks"
msgstr ""
-#: part/models.py:2948
+#: part/models.py:2982
msgid "Maximum Sale Price"
msgstr ""
-#: part/models.py:2949
+#: part/models.py:2983
msgid "Maximum sale price based on price breaks"
msgstr ""
-#: part/models.py:2954
+#: part/models.py:2988
msgid "Minimum Sale Cost"
msgstr ""
-#: part/models.py:2955
+#: part/models.py:2989
msgid "Minimum historical sale price"
msgstr ""
-#: part/models.py:2960
+#: part/models.py:2994
msgid "Maximum Sale Cost"
msgstr ""
-#: part/models.py:2961
+#: part/models.py:2995
msgid "Maximum historical sale price"
msgstr ""
-#: part/models.py:2980
+#: part/models.py:3014
msgid "Part for stocktake"
msgstr ""
-#: part/models.py:2985
+#: part/models.py:3019
msgid "Item Count"
msgstr ""
-#: part/models.py:2986
+#: part/models.py:3020
msgid "Number of individual stock entries at time of stocktake"
msgstr ""
-#: part/models.py:2993
+#: part/models.py:3027
msgid "Total available stock at time of stocktake"
msgstr ""
-#: part/models.py:2997 part/models.py:3080
+#: part/models.py:3031 part/models.py:3114
#: part/templates/part/part_scheduling.html:13
#: report/templates/report/inventree_test_report_base.html:106
#: templates/InvenTree/settings/plugin_settings.html:37
#: templates/InvenTree/settings/settings_staff_js.html:360
-#: templates/js/translated/part.js:1059 templates/js/translated/pricing.js:812
+#: templates/js/translated/part.js:1058 templates/js/translated/pricing.js:812
#: templates/js/translated/pricing.js:936
-#: templates/js/translated/purchase_order.js:1691
-#: templates/js/translated/stock.js:2558
+#: templates/js/translated/purchase_order.js:1706
+#: templates/js/translated/stock.js:2689
msgid "Date"
msgstr ""
-#: part/models.py:2998
+#: part/models.py:3032
msgid "Date stocktake was performed"
msgstr ""
-#: part/models.py:3006
+#: part/models.py:3040
msgid "Additional notes"
msgstr ""
-#: part/models.py:3014
+#: part/models.py:3048
msgid "User who performed this stocktake"
msgstr ""
-#: part/models.py:3019
+#: part/models.py:3053
msgid "Minimum Stock Cost"
msgstr ""
-#: part/models.py:3020
+#: part/models.py:3054
msgid "Estimated minimum cost of stock on hand"
msgstr ""
-#: part/models.py:3025
+#: part/models.py:3059
msgid "Maximum Stock Cost"
msgstr ""
-#: part/models.py:3026
+#: part/models.py:3060
msgid "Estimated maximum cost of stock on hand"
msgstr ""
-#: part/models.py:3087 templates/InvenTree/settings/settings_staff_js.html:349
+#: part/models.py:3121 templates/InvenTree/settings/settings_staff_js.html:349
msgid "Report"
msgstr ""
-#: part/models.py:3088
+#: part/models.py:3122
msgid "Stocktake report file (generated internally)"
msgstr ""
-#: part/models.py:3093 templates/InvenTree/settings/settings_staff_js.html:356
+#: part/models.py:3127 templates/InvenTree/settings/settings_staff_js.html:356
msgid "Part Count"
msgstr ""
-#: part/models.py:3094
+#: part/models.py:3128
msgid "Number of parts covered by stocktake"
msgstr ""
-#: part/models.py:3102
+#: part/models.py:3136
msgid "User who requested this stocktake report"
msgstr ""
-#: part/models.py:3238
+#: part/models.py:3272
msgid "Test templates can only be created for trackable parts"
msgstr ""
-#: part/models.py:3255
+#: part/models.py:3289
msgid "Test with this name already exists for this part"
msgstr ""
-#: part/models.py:3275 templates/js/translated/part.js:2821
+#: part/models.py:3309 templates/js/translated/part.js:2806
msgid "Test Name"
msgstr ""
-#: part/models.py:3276
+#: part/models.py:3310
msgid "Enter a name for the test"
msgstr ""
-#: part/models.py:3281
+#: part/models.py:3315
msgid "Test Description"
msgstr ""
-#: part/models.py:3282
+#: part/models.py:3316
msgid "Enter description for this test"
msgstr ""
-#: part/models.py:3287 templates/js/translated/part.js:2830
-#: templates/js/translated/table_filters.js:423
+#: part/models.py:3321 templates/js/translated/part.js:2815
+#: templates/js/translated/table_filters.js:429
msgid "Required"
msgstr ""
-#: part/models.py:3288
+#: part/models.py:3322
msgid "Is this test required to pass?"
msgstr ""
-#: part/models.py:3293 templates/js/translated/part.js:2838
+#: part/models.py:3327 templates/js/translated/part.js:2823
msgid "Requires Value"
msgstr ""
-#: part/models.py:3294
+#: part/models.py:3328
msgid "Does this test require a value when adding a test result?"
msgstr ""
-#: part/models.py:3299 templates/js/translated/part.js:2845
+#: part/models.py:3333 templates/js/translated/part.js:2830
msgid "Requires Attachment"
msgstr ""
-#: part/models.py:3300
+#: part/models.py:3334
msgid "Does this test require a file attachment when adding a test result?"
msgstr ""
-#: part/models.py:3346
+#: part/models.py:3380
msgid "Checkbox parameters cannot have units"
msgstr ""
-#: part/models.py:3351
+#: part/models.py:3385
msgid "Checkbox parameters cannot have choices"
msgstr ""
-#: part/models.py:3369
+#: part/models.py:3403
msgid "Choices must be unique"
msgstr ""
-#: part/models.py:3385
+#: part/models.py:3419
msgid "Parameter template name must be unique"
msgstr ""
-#: part/models.py:3401
+#: part/models.py:3435
msgid "Parameter Name"
msgstr ""
-#: part/models.py:3407
+#: part/models.py:3441
msgid "Physical units for this parameter"
msgstr ""
-#: part/models.py:3417
+#: part/models.py:3451
msgid "Parameter description"
msgstr ""
-#: part/models.py:3423 templates/js/translated/part.js:1600
-#: templates/js/translated/table_filters.js:734
+#: part/models.py:3457 templates/js/translated/part.js:1599
+#: templates/js/translated/table_filters.js:756
msgid "Checkbox"
msgstr ""
-#: part/models.py:3424
+#: part/models.py:3458
msgid "Is this parameter a checkbox?"
msgstr ""
-#: part/models.py:3429 templates/js/translated/part.js:1609
+#: part/models.py:3463 templates/js/translated/part.js:1608
msgid "Choices"
msgstr ""
-#: part/models.py:3430
+#: part/models.py:3464
msgid "Valid choices for this parameter (comma-separated)"
msgstr ""
-#: part/models.py:3511
+#: part/models.py:3545
msgid "Invalid choice for parameter value"
msgstr ""
-#: part/models.py:3555
+#: part/models.py:3589
msgid "Parent Part"
msgstr ""
-#: part/models.py:3560 part/models.py:3621 part/models.py:3622
+#: part/models.py:3594 part/models.py:3670 part/models.py:3671
#: templates/InvenTree/settings/settings_staff_js.html:199
msgid "Parameter Template"
msgstr ""
-#: part/models.py:3565
+#: part/models.py:3599
msgid "Data"
msgstr ""
-#: part/models.py:3565
+#: part/models.py:3599
msgid "Parameter Value"
msgstr ""
-#: part/models.py:3626 templates/InvenTree/settings/settings_staff_js.html:208
+#: part/models.py:3675 templates/InvenTree/settings/settings_staff_js.html:208
msgid "Default Value"
msgstr ""
-#: part/models.py:3627
+#: part/models.py:3676
msgid "Default Parameter Value"
msgstr ""
-#: part/models.py:3664
+#: part/models.py:3713
msgid "Part ID or part name"
msgstr ""
-#: part/models.py:3668
+#: part/models.py:3717
msgid "Unique part ID value"
msgstr ""
-#: part/models.py:3676
+#: part/models.py:3725
msgid "Part IPN value"
msgstr ""
-#: part/models.py:3679
+#: part/models.py:3728
msgid "Level"
msgstr ""
-#: part/models.py:3680
+#: part/models.py:3729
msgid "BOM level"
msgstr ""
-#: part/models.py:3764
+#: part/models.py:3735 part/models.py:4113
+msgid "BOM Item"
+msgstr ""
+
+#: part/models.py:3808
msgid "Select parent part"
msgstr ""
-#: part/models.py:3772
+#: part/models.py:3816
msgid "Sub part"
msgstr ""
-#: part/models.py:3773
+#: part/models.py:3817
msgid "Select part to be used in BOM"
msgstr ""
-#: part/models.py:3779
+#: part/models.py:3823
msgid "BOM quantity for this BOM item"
msgstr ""
-#: part/models.py:3783 part/templates/part/upload_bom.html:58
-#: templates/js/translated/bom.js:971 templates/js/translated/bom.js:998
-#: templates/js/translated/build.js:2113
-#: templates/js/translated/table_filters.js:156
-#: templates/js/translated/table_filters.js:185
-#: templates/js/translated/table_filters.js:500
-msgid "Optional"
-msgstr ""
-
-#: part/models.py:3784
+#: part/models.py:3828
msgid "This BOM item is optional"
msgstr ""
-#: part/models.py:3789 templates/js/translated/bom.js:967
-#: templates/js/translated/bom.js:1007 templates/js/translated/build.js:2104
-#: templates/js/translated/table_filters.js:160
-#: templates/js/translated/table_filters.js:496
-msgid "Consumable"
-msgstr ""
-
-#: part/models.py:3790
+#: part/models.py:3834
msgid "This BOM item is consumable (it is not tracked in build orders)"
msgstr ""
-#: part/models.py:3794 part/templates/part/upload_bom.html:55
+#: part/models.py:3838 part/templates/part/upload_bom.html:55
msgid "Overage"
msgstr ""
-#: part/models.py:3795
+#: part/models.py:3839
msgid "Estimated build wastage quantity (absolute or percentage)"
msgstr ""
-#: part/models.py:3798
+#: part/models.py:3842
msgid "BOM item reference"
msgstr ""
-#: part/models.py:3801
+#: part/models.py:3845
msgid "BOM item notes"
msgstr ""
-#: part/models.py:3805
+#: part/models.py:3849
msgid "Checksum"
msgstr ""
-#: part/models.py:3805
+#: part/models.py:3849
msgid "BOM line checksum"
msgstr ""
-#: part/models.py:3810 templates/js/translated/table_filters.js:144
+#: part/models.py:3854 templates/js/translated/table_filters.js:150
msgid "Validated"
msgstr ""
-#: part/models.py:3811
+#: part/models.py:3855
msgid "This BOM item has been validated"
msgstr ""
-#: part/models.py:3816 part/templates/part/upload_bom.html:57
-#: templates/js/translated/bom.js:1024
-#: templates/js/translated/table_filters.js:148
-#: templates/js/translated/table_filters.js:181
+#: part/models.py:3860 part/templates/part/upload_bom.html:57
+#: templates/js/translated/bom.js:1042
+#: templates/js/translated/table_filters.js:154
+#: templates/js/translated/table_filters.js:187
msgid "Gets inherited"
msgstr ""
-#: part/models.py:3817
+#: part/models.py:3861
msgid "This BOM item is inherited by BOMs for variant parts"
msgstr ""
-#: part/models.py:3822 part/templates/part/upload_bom.html:56
-#: templates/js/translated/bom.js:1016
+#: part/models.py:3866 part/templates/part/upload_bom.html:56
+#: templates/js/translated/bom.js:1034
msgid "Allow Variants"
msgstr ""
-#: part/models.py:3823
+#: part/models.py:3867
msgid "Stock items for variant parts can be used for this BOM item"
msgstr ""
-#: part/models.py:3909 stock/models.py:577
+#: part/models.py:3953 stock/models.py:577
msgid "Quantity must be integer value for trackable parts"
msgstr ""
-#: part/models.py:3918 part/models.py:3920
+#: part/models.py:3962 part/models.py:3964
msgid "Sub part must be specified"
msgstr ""
-#: part/models.py:4036
+#: part/models.py:4080
msgid "BOM Item Substitute"
msgstr ""
-#: part/models.py:4057
+#: part/models.py:4101
msgid "Substitute part cannot be the same as the master part"
msgstr ""
-#: part/models.py:4070
+#: part/models.py:4114
msgid "Parent BOM item"
msgstr ""
-#: part/models.py:4078
+#: part/models.py:4122
msgid "Substitute part"
msgstr ""
-#: part/models.py:4093
+#: part/models.py:4137
msgid "Part 1"
msgstr ""
-#: part/models.py:4097
+#: part/models.py:4141
msgid "Part 2"
msgstr ""
-#: part/models.py:4097
+#: part/models.py:4141
msgid "Select Related Part"
msgstr ""
-#: part/models.py:4115
+#: part/models.py:4159
msgid "Part relationship cannot be created between a part and itself"
msgstr ""
-#: part/models.py:4119
+#: part/models.py:4163
msgid "Duplicate relationship already exists"
msgstr ""
-#: part/serializers.py:152 part/serializers.py:175 stock/serializers.py:257
+#: part/serializers.py:152 part/serializers.py:175 stock/serializers.py:319
msgid "Purchase currency of this stock item"
msgstr ""
-#: part/serializers.py:302
+#: part/serializers.py:313
+msgid "No parts selected"
+msgstr ""
+
+#: part/serializers.py:321
+msgid "Select category"
+msgstr ""
+
+#: part/serializers.py:352
msgid "Original Part"
msgstr ""
-#: part/serializers.py:302
+#: part/serializers.py:352
msgid "Select original part to duplicate"
msgstr ""
-#: part/serializers.py:307
+#: part/serializers.py:357
msgid "Copy Image"
msgstr ""
-#: part/serializers.py:307
+#: part/serializers.py:357
msgid "Copy image from original part"
msgstr ""
-#: part/serializers.py:312 part/templates/part/detail.html:296
+#: part/serializers.py:362 part/templates/part/detail.html:277
msgid "Copy BOM"
msgstr ""
-#: part/serializers.py:312
+#: part/serializers.py:362
msgid "Copy bill of materials from original part"
msgstr ""
-#: part/serializers.py:317
+#: part/serializers.py:367
msgid "Copy Parameters"
msgstr ""
-#: part/serializers.py:317
+#: part/serializers.py:367
msgid "Copy parameter data from original part"
msgstr ""
-#: part/serializers.py:327
+#: part/serializers.py:377
msgid "Initial Stock Quantity"
msgstr ""
-#: part/serializers.py:327
+#: part/serializers.py:377
msgid "Specify initial stock quantity for this Part. If quantity is zero, no stock is added."
msgstr ""
-#: part/serializers.py:333
+#: part/serializers.py:383
msgid "Initial Stock Location"
msgstr ""
-#: part/serializers.py:333
+#: part/serializers.py:383
msgid "Specify initial stock location for this Part"
msgstr ""
-#: part/serializers.py:343
+#: part/serializers.py:393
msgid "Select supplier (or leave blank to skip)"
msgstr ""
-#: part/serializers.py:354
+#: part/serializers.py:404
msgid "Select manufacturer (or leave blank to skip)"
msgstr ""
-#: part/serializers.py:360
+#: part/serializers.py:410
msgid "Manufacturer part number"
msgstr ""
-#: part/serializers.py:367
+#: part/serializers.py:417
msgid "Selected company is not a valid supplier"
msgstr ""
-#: part/serializers.py:375
+#: part/serializers.py:425
msgid "Selected company is not a valid manufacturer"
msgstr ""
-#: part/serializers.py:387
+#: part/serializers.py:437
msgid "Manufacturer part matching this MPN already exists"
msgstr ""
-#: part/serializers.py:395
+#: part/serializers.py:445
msgid "Supplier part matching this SKU already exists"
msgstr ""
-#: part/serializers.py:620 part/templates/part/copy_part.html:9
-#: templates/js/translated/part.js:449
+#: part/serializers.py:682 part/templates/part/copy_part.html:9
+#: templates/js/translated/part.js:448
msgid "Duplicate Part"
msgstr ""
-#: part/serializers.py:620
+#: part/serializers.py:682
msgid "Copy initial data from another Part"
msgstr ""
-#: part/serializers.py:625 templates/js/translated/part.js:103
+#: part/serializers.py:687 templates/js/translated/part.js:102
msgid "Initial Stock"
msgstr ""
-#: part/serializers.py:625
+#: part/serializers.py:687
msgid "Create Part with initial stock quantity"
msgstr ""
-#: part/serializers.py:630
+#: part/serializers.py:692
msgid "Supplier Information"
msgstr ""
-#: part/serializers.py:630
+#: part/serializers.py:692
msgid "Add initial supplier information for this part"
msgstr ""
-#: part/serializers.py:636
+#: part/serializers.py:698
msgid "Copy Category Parameters"
msgstr ""
-#: part/serializers.py:637
+#: part/serializers.py:699
msgid "Copy parameter templates from selected part category"
msgstr ""
-#: part/serializers.py:842
+#: part/serializers.py:904
msgid "Limit stocktake report to a particular part, and any variant parts"
msgstr ""
-#: part/serializers.py:848
+#: part/serializers.py:910
msgid "Limit stocktake report to a particular part category, and any child categories"
msgstr ""
-#: part/serializers.py:854
+#: part/serializers.py:916
msgid "Limit stocktake report to a particular stock location, and any child locations"
msgstr ""
-#: part/serializers.py:859
+#: part/serializers.py:921
msgid "Generate Report"
msgstr ""
-#: part/serializers.py:860
+#: part/serializers.py:922
msgid "Generate report file containing calculated stocktake data"
msgstr ""
-#: part/serializers.py:865
+#: part/serializers.py:927
msgid "Update Parts"
msgstr ""
-#: part/serializers.py:866
+#: part/serializers.py:928
msgid "Update specified parts with calculated stocktake data"
msgstr ""
-#: part/serializers.py:874
+#: part/serializers.py:936
msgid "Stocktake functionality is not enabled"
msgstr ""
-#: part/serializers.py:963
+#: part/serializers.py:1025
msgid "Update"
msgstr ""
-#: part/serializers.py:964
+#: part/serializers.py:1026
msgid "Update pricing for this part"
msgstr ""
-#: part/serializers.py:1246
+#: part/serializers.py:1308
msgid "Select part to copy BOM from"
msgstr ""
-#: part/serializers.py:1254
+#: part/serializers.py:1316
msgid "Remove Existing Data"
msgstr ""
-#: part/serializers.py:1255
+#: part/serializers.py:1317
msgid "Remove existing BOM items before copying"
msgstr ""
-#: part/serializers.py:1260
+#: part/serializers.py:1322
msgid "Include Inherited"
msgstr ""
-#: part/serializers.py:1261
+#: part/serializers.py:1323
msgid "Include BOM items which are inherited from templated parts"
msgstr ""
-#: part/serializers.py:1266
+#: part/serializers.py:1328
msgid "Skip Invalid Rows"
msgstr ""
-#: part/serializers.py:1267
+#: part/serializers.py:1329
msgid "Enable this option to skip invalid rows"
msgstr ""
-#: part/serializers.py:1272
+#: part/serializers.py:1334
msgid "Copy Substitute Parts"
msgstr ""
-#: part/serializers.py:1273
+#: part/serializers.py:1335
msgid "Copy substitute parts when duplicate BOM items"
msgstr ""
-#: part/serializers.py:1313
+#: part/serializers.py:1375
msgid "Clear Existing BOM"
msgstr ""
-#: part/serializers.py:1314
+#: part/serializers.py:1376
msgid "Delete existing BOM items before uploading"
msgstr ""
-#: part/serializers.py:1344
+#: part/serializers.py:1406
msgid "No part column specified"
msgstr ""
-#: part/serializers.py:1387
+#: part/serializers.py:1449
msgid "Multiple matching parts found"
msgstr ""
-#: part/serializers.py:1390
+#: part/serializers.py:1452
msgid "No matching part found"
msgstr ""
-#: part/serializers.py:1393
+#: part/serializers.py:1455
msgid "Part is not designated as a component"
msgstr ""
-#: part/serializers.py:1402
+#: part/serializers.py:1464
msgid "Quantity not provided"
msgstr ""
-#: part/serializers.py:1410
+#: part/serializers.py:1472
msgid "Invalid quantity"
msgstr ""
-#: part/serializers.py:1431
+#: part/serializers.py:1493
msgid "At least one BOM item is required"
msgstr ""
@@ -6421,9 +6453,9 @@ msgstr ""
msgid "The available stock for {part.name} has fallen below the configured minimum level"
msgstr ""
-#: part/tasks.py:294 templates/js/translated/part.js:1040
-#: templates/js/translated/part.js:1793 templates/js/translated/part.js:1848
-#: templates/js/translated/purchase_order.js:2052
+#: part/tasks.py:294 templates/js/translated/part.js:1039
+#: templates/js/translated/part.js:1792 templates/js/translated/part.js:1847
+#: templates/js/translated/purchase_order.js:2062
msgid "Total Quantity"
msgstr ""
@@ -6461,14 +6493,6 @@ msgstr ""
msgid "The BOM for %(part)s has not been validated."
msgstr ""
-#: part/templates/part/bom.html:30 part/templates/part/detail.html:291
-msgid "BOM actions"
-msgstr ""
-
-#: part/templates/part/bom.html:34
-msgid "Delete Items"
-msgstr ""
-
#: part/templates/part/category.html:34
msgid "Perform stocktake for this part category"
msgstr ""
@@ -6505,7 +6529,7 @@ msgstr ""
msgid "Top level part category"
msgstr ""
-#: part/templates/part/category.html:121 part/templates/part/category.html:225
+#: part/templates/part/category.html:121 part/templates/part/category.html:206
#: part/templates/part/category_sidebar.html:7
msgid "Subcategories"
msgstr ""
@@ -6518,33 +6542,20 @@ msgstr ""
msgid "Create new part"
msgstr ""
-#: part/templates/part/category.html:165 templates/js/translated/bom.js:443
+#: part/templates/part/category.html:165 templates/js/translated/bom.js:444
msgid "New Part"
msgstr "新規パーツ"
-#: part/templates/part/category.html:175 part/templates/part/detail.html:390
-#: part/templates/part/detail.html:421
-msgid "Options"
-msgstr ""
-
-#: part/templates/part/category.html:179
-msgid "Set category"
-msgstr ""
-
-#: part/templates/part/category.html:180
-msgid "Set Category"
-msgstr ""
-
-#: part/templates/part/category.html:208
+#: part/templates/part/category.html:191
#: templates/InvenTree/settings/sidebar.html:47
msgid "Part Parameters"
msgstr ""
-#: part/templates/part/category.html:229
+#: part/templates/part/category.html:210
msgid "Create new part category"
msgstr ""
-#: part/templates/part/category.html:230
+#: part/templates/part/category.html:211
msgid "New Category"
msgstr "新規カテゴリ"
@@ -6581,7 +6592,7 @@ msgid "Refresh scheduling data"
msgstr ""
#: part/templates/part/detail.html:45 part/templates/part/prices.html:15
-#: templates/js/translated/tables.js:584
+#: templates/js/translated/tables.js:560
msgid "Refresh"
msgstr ""
@@ -6592,7 +6603,7 @@ msgstr ""
#: part/templates/part/detail.html:67 part/templates/part/part_sidebar.html:50
#: stock/admin.py:130 templates/InvenTree/settings/part_stocktake.html:29
#: templates/InvenTree/settings/sidebar.html:51
-#: templates/js/translated/stock.js:1952 users/models.py:39
+#: templates/js/translated/stock.js:2109 users/models.py:39
msgid "Stocktake"
msgstr ""
@@ -6604,101 +6615,101 @@ msgstr ""
msgid "Add Test Template"
msgstr ""
-#: part/templates/part/detail.html:145 stock/templates/stock/item.html:53
+#: part/templates/part/detail.html:139 stock/templates/stock/item.html:49
msgid "Sales Order Allocations"
msgstr ""
-#: part/templates/part/detail.html:165
+#: part/templates/part/detail.html:156
msgid "Part Notes"
msgstr ""
-#: part/templates/part/detail.html:180
+#: part/templates/part/detail.html:171
msgid "Part Variants"
msgstr ""
-#: part/templates/part/detail.html:184
+#: part/templates/part/detail.html:175
msgid "Create new variant"
msgstr ""
-#: part/templates/part/detail.html:185
+#: part/templates/part/detail.html:176
msgid "New Variant"
msgstr ""
-#: part/templates/part/detail.html:212
+#: part/templates/part/detail.html:199
msgid "Add new parameter"
msgstr ""
-#: part/templates/part/detail.html:249 part/templates/part/part_sidebar.html:58
+#: part/templates/part/detail.html:232 part/templates/part/part_sidebar.html:58
msgid "Related Parts"
msgstr ""
-#: part/templates/part/detail.html:253 part/templates/part/detail.html:254
+#: part/templates/part/detail.html:236 part/templates/part/detail.html:237
msgid "Add Related"
msgstr ""
-#: part/templates/part/detail.html:274 part/templates/part/part_sidebar.html:17
+#: part/templates/part/detail.html:255 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:279
+#: part/templates/part/detail.html:260
msgid "Export actions"
msgstr ""
-#: part/templates/part/detail.html:283 templates/js/translated/bom.js:339
+#: part/templates/part/detail.html:264 templates/js/translated/bom.js:340
msgid "Export BOM"
msgstr ""
-#: part/templates/part/detail.html:285
+#: part/templates/part/detail.html:266
msgid "Print BOM Report"
msgstr ""
-#: part/templates/part/detail.html:295
+#: part/templates/part/detail.html:272
+msgid "BOM actions"
+msgstr ""
+
+#: part/templates/part/detail.html:276
msgid "Upload BOM"
msgstr ""
-#: part/templates/part/detail.html:297
+#: part/templates/part/detail.html:278
msgid "Validate BOM"
msgstr ""
-#: part/templates/part/detail.html:302 part/templates/part/detail.html:303
-#: templates/js/translated/bom.js:1279 templates/js/translated/bom.js:1280
+#: part/templates/part/detail.html:283 part/templates/part/detail.html:284
+#: templates/js/translated/bom.js:1299 templates/js/translated/bom.js:1300
msgid "Add BOM Item"
msgstr ""
-#: part/templates/part/detail.html:316
+#: part/templates/part/detail.html:297
msgid "Assemblies"
msgstr ""
-#: part/templates/part/detail.html:334
+#: part/templates/part/detail.html:313
msgid "Part Builds"
msgstr ""
-#: part/templates/part/detail.html:361 stock/templates/stock/item.html:38
+#: part/templates/part/detail.html:338 stock/templates/stock/item.html:36
msgid "Build Order Allocations"
msgstr ""
-#: part/templates/part/detail.html:377
+#: part/templates/part/detail.html:352
msgid "Part Suppliers"
msgstr ""
-#: part/templates/part/detail.html:407
+#: part/templates/part/detail.html:372
msgid "Part Manufacturers"
msgstr ""
-#: part/templates/part/detail.html:423
-msgid "Delete manufacturer parts"
-msgstr ""
-
-#: part/templates/part/detail.html:707
+#: part/templates/part/detail.html:654
msgid "Related Part"
msgstr ""
-#: part/templates/part/detail.html:715
+#: part/templates/part/detail.html:662
msgid "Add Related Part"
msgstr ""
-#: part/templates/part/detail.html:800
+#: part/templates/part/detail.html:747
msgid "Add Test Result Template"
msgstr ""
@@ -6732,13 +6743,13 @@ msgid "Download Part Import Template"
msgstr ""
#: part/templates/part/import_wizard/part_upload.html:92
-#: templates/js/translated/bom.js:308 templates/js/translated/bom.js:342
+#: templates/js/translated/bom.js:309 templates/js/translated/bom.js:343
#: templates/js/translated/order.js:129 templates/js/translated/tables.js:189
msgid "Format"
msgstr ""
#: part/templates/part/import_wizard/part_upload.html:93
-#: templates/js/translated/bom.js:309 templates/js/translated/bom.js:343
+#: templates/js/translated/bom.js:310 templates/js/translated/bom.js:344
#: templates/js/translated/order.js:130
msgid "Select file format"
msgstr ""
@@ -6779,7 +6790,7 @@ msgstr ""
msgid "Transfer part stock"
msgstr ""
-#: part/templates/part/part_base.html:93
+#: part/templates/part/part_base.html:93 templates/js/translated/part.js:2264
msgid "Part actions"
msgstr ""
@@ -6824,10 +6835,10 @@ msgid "Part is not active"
msgstr ""
#: part/templates/part/part_base.html:148
-#: templates/js/translated/company.js:945
-#: templates/js/translated/company.js:1185
-#: templates/js/translated/model_renderers.js:273
-#: templates/js/translated/part.js:792 templates/js/translated/part.js:1192
+#: templates/js/translated/company.js:1318
+#: templates/js/translated/company.js:1606
+#: templates/js/translated/model_renderers.js:287
+#: templates/js/translated/part.js:791 templates/js/translated/part.js:1191
msgid "Inactive"
msgstr ""
@@ -6850,7 +6861,7 @@ msgstr ""
msgid "Allocated to Sales Orders"
msgstr ""
-#: part/templates/part/part_base.html:237 templates/js/translated/bom.js:1178
+#: part/templates/part/part_base.html:237 templates/js/translated/bom.js:1198
msgid "Can Build"
msgstr ""
@@ -6858,8 +6869,8 @@ msgstr ""
msgid "Minimum stock level"
msgstr ""
-#: part/templates/part/part_base.html:324 templates/js/translated/bom.js:1041
-#: templates/js/translated/part.js:1238 templates/js/translated/part.js:2304
+#: part/templates/part/part_base.html:324 templates/js/translated/bom.js:1059
+#: templates/js/translated/part.js:1237 templates/js/translated/part.js:2380
#: templates/js/translated/pricing.js:391
#: templates/js/translated/pricing.js:1040
msgid "Price Range"
@@ -6882,7 +6893,7 @@ msgstr ""
msgid "Link Barcode to Part"
msgstr ""
-#: part/templates/part/part_base.html:474 templates/js/translated/part.js:2191
+#: part/templates/part/part_base.html:474 templates/js/translated/part.js:2258
msgid "part"
msgstr ""
@@ -6956,9 +6967,9 @@ msgstr ""
#: stock/templates/stock/stock_app_base.html:10
#: templates/InvenTree/search.html:153
#: templates/InvenTree/settings/sidebar.html:49
-#: templates/js/translated/part.js:1216 templates/js/translated/part.js:2120
-#: templates/js/translated/part.js:2284 templates/js/translated/stock.js:1022
-#: templates/js/translated/stock.js:1829 templates/navbar.html:31
+#: templates/js/translated/part.js:1215 templates/js/translated/part.js:2119
+#: templates/js/translated/part.js:2360 templates/js/translated/stock.js:1021
+#: templates/js/translated/stock.js:1986 templates/navbar.html:31
msgid "Stock"
msgstr "在庫"
@@ -6989,9 +7000,9 @@ msgstr ""
#: part/templates/part/prices.html:25 stock/admin.py:129
#: stock/templates/stock/item_base.html:442
-#: templates/js/translated/company.js:1313
-#: templates/js/translated/company.js:1323
-#: templates/js/translated/stock.js:1982
+#: templates/js/translated/company.js:1734
+#: templates/js/translated/company.js:1744
+#: templates/js/translated/stock.js:2139
msgid "Last Updated"
msgstr ""
@@ -7054,12 +7065,12 @@ msgstr ""
msgid "Add Sell Price Break"
msgstr ""
-#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:682
-#: templates/js/translated/part.js:2115 templates/js/translated/part.js:2117
+#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:681
+#: templates/js/translated/part.js:2114 templates/js/translated/part.js:2116
msgid "No Stock"
msgstr "在庫切れ"
-#: part/templates/part/stock_count.html:9 templates/InvenTree/index.html:167
+#: part/templates/part/stock_count.html:9 templates/InvenTree/index.html:120
msgid "Low Stock"
msgstr ""
@@ -7163,7 +7174,7 @@ msgid "Match found for barcode data"
msgstr ""
#: plugin/base/barcodes/api.py:120
-#: templates/js/translated/purchase_order.js:1372
+#: templates/js/translated/purchase_order.js:1387
msgid "Barcode matches existing item"
msgstr ""
@@ -7226,43 +7237,43 @@ msgstr ""
msgid "Open link"
msgstr ""
-#: plugin/models.py:27
+#: plugin/models.py:28
msgid "Plugin Configuration"
msgstr ""
-#: plugin/models.py:28
+#: plugin/models.py:29
msgid "Plugin Configurations"
msgstr ""
-#: plugin/models.py:33
+#: plugin/models.py:34
msgid "Key"
msgstr ""
-#: plugin/models.py:34
+#: plugin/models.py:35
msgid "Key of plugin"
msgstr ""
-#: plugin/models.py:42
+#: plugin/models.py:43
msgid "PluginName of the plugin"
msgstr ""
-#: plugin/models.py:48
+#: plugin/models.py:49
msgid "Is the plugin active"
msgstr ""
-#: plugin/models.py:124
+#: plugin/models.py:125
msgid "Sample plugin"
msgstr ""
-#: plugin/models.py:133
+#: plugin/models.py:134
msgid "Builtin Plugin"
msgstr ""
-#: plugin/models.py:159 templates/InvenTree/settings/plugin_settings.html:9
+#: plugin/models.py:160 templates/InvenTree/settings/plugin_settings.html:9
msgid "Plugin"
msgstr ""
-#: plugin/models.py:210
+#: plugin/models.py:211
msgid "Method"
msgstr ""
@@ -7414,47 +7425,47 @@ msgstr ""
msgid "Build query filters (comma-separated list of key=value pairs"
msgstr ""
-#: report/models.py:418
+#: report/models.py:420
msgid "Part Filters"
msgstr ""
-#: report/models.py:419
+#: report/models.py:421
msgid "Part query filters (comma-separated list of key=value pairs"
msgstr ""
-#: report/models.py:453
+#: report/models.py:455
msgid "Purchase order query filters"
msgstr ""
-#: report/models.py:491
+#: report/models.py:493
msgid "Sales order query filters"
msgstr ""
-#: report/models.py:529
+#: report/models.py:531
msgid "Return order query filters"
msgstr ""
-#: report/models.py:582
+#: report/models.py:584
msgid "Snippet"
msgstr ""
-#: report/models.py:583
+#: report/models.py:585
msgid "Report snippet file"
msgstr ""
-#: report/models.py:587
+#: report/models.py:589
msgid "Snippet file description"
msgstr ""
-#: report/models.py:624
+#: report/models.py:626
msgid "Asset"
msgstr ""
-#: report/models.py:625
+#: report/models.py:627
msgid "Report asset file"
msgstr ""
-#: report/models.py:632
+#: report/models.py:634
msgid "Asset file description"
msgstr ""
@@ -7475,8 +7486,8 @@ msgstr ""
#: templates/js/translated/order.js:316 templates/js/translated/pricing.js:527
#: templates/js/translated/pricing.js:596
#: templates/js/translated/pricing.js:820
-#: templates/js/translated/purchase_order.js:2083
-#: templates/js/translated/sales_order.js:1817
+#: templates/js/translated/purchase_order.js:2093
+#: templates/js/translated/sales_order.js:1829
msgid "Unit Price"
msgstr ""
@@ -7488,23 +7499,23 @@ msgstr ""
#: report/templates/report/inventree_po_report_base.html:72
#: report/templates/report/inventree_so_report_base.html:72
-#: templates/js/translated/purchase_order.js:1985
-#: templates/js/translated/sales_order.js:1792
+#: templates/js/translated/purchase_order.js:1995
+#: templates/js/translated/sales_order.js:1804
msgid "Total"
msgstr ""
#: report/templates/report/inventree_return_order_report_base.html:25
#: report/templates/report/inventree_test_report_base.html:88
#: stock/models.py:725 stock/templates/stock/item_base.html:312
-#: templates/js/translated/build.js:502 templates/js/translated/build.js:1423
-#: templates/js/translated/build.js:1989
-#: templates/js/translated/model_renderers.js:201
-#: templates/js/translated/return_order.js:528
-#: templates/js/translated/return_order.js:708
-#: templates/js/translated/sales_order.js:300
-#: templates/js/translated/sales_order.js:1597
-#: templates/js/translated/sales_order.js:1682
-#: templates/js/translated/stock.js:563
+#: templates/js/translated/build.js:508 templates/js/translated/build.js:1306
+#: templates/js/translated/build.js:2281
+#: templates/js/translated/model_renderers.js:215
+#: templates/js/translated/return_order.js:540
+#: templates/js/translated/return_order.js:720
+#: templates/js/translated/sales_order.js:312
+#: templates/js/translated/sales_order.js:1609
+#: templates/js/translated/sales_order.js:1694
+#: templates/js/translated/stock.js:562
msgid "Serial Number"
msgstr ""
@@ -7517,7 +7528,7 @@ msgid "Test Results"
msgstr ""
#: report/templates/report/inventree_test_report_base.html:102
-#: stock/models.py:2243 templates/js/translated/stock.js:1419
+#: stock/models.py:2243 templates/js/translated/stock.js:1418
msgid "Test"
msgstr ""
@@ -7548,8 +7559,8 @@ msgid "Installed Items"
msgstr ""
#: report/templates/report/inventree_test_report_base.html:168
-#: stock/admin.py:104 templates/js/translated/stock.js:667
-#: templates/js/translated/stock.js:838 templates/js/translated/stock.js:2849
+#: stock/admin.py:104 templates/js/translated/stock.js:666
+#: templates/js/translated/stock.js:837 templates/js/translated/stock.js:2976
msgid "Serial"
msgstr ""
@@ -7617,31 +7628,31 @@ msgstr ""
#: stock/admin.py:131 stock/models.py:789
#: stock/templates/stock/item_base.html:429
-#: templates/js/translated/stock.js:1966
+#: templates/js/translated/stock.js:2123
msgid "Expiry Date"
msgstr ""
-#: stock/api.py:420 templates/js/translated/table_filters.js:373
+#: stock/api.py:426 templates/js/translated/table_filters.js:379
msgid "External Location"
msgstr ""
-#: stock/api.py:582
+#: stock/api.py:619
msgid "Quantity is required"
msgstr ""
-#: stock/api.py:589
+#: stock/api.py:626
msgid "Valid part must be supplied"
msgstr ""
-#: stock/api.py:615
+#: stock/api.py:652
msgid "The given supplier part does not exist"
msgstr ""
-#: stock/api.py:624
+#: stock/api.py:661
msgid "The supplier part has a pack size defined, but flag use_pack_size not set"
msgstr ""
-#: stock/api.py:642
+#: stock/api.py:679
msgid "Serial numbers cannot be supplied for a non-trackable part"
msgstr ""
@@ -7652,7 +7663,7 @@ msgid "Stock Location"
msgstr ""
#: stock/models.py:55 stock/templates/stock/location.html:177
-#: templates/InvenTree/search.html:166 templates/js/translated/search.js:220
+#: templates/InvenTree/search.html:166 templates/js/translated/search.js:178
#: users/models.py:40
msgid "Stock Locations"
msgstr ""
@@ -7670,8 +7681,8 @@ msgstr ""
msgid "Stock items may not be directly located into a structural stock locations, but may be located to child locations."
msgstr ""
-#: stock/models.py:132 templates/js/translated/stock.js:2529
-#: templates/js/translated/table_filters.js:213
+#: stock/models.py:132 templates/js/translated/stock.js:2660
+#: templates/js/translated/table_filters.js:219
msgid "External"
msgstr ""
@@ -7687,7 +7698,7 @@ msgstr ""
msgid "Stock items cannot be located into structural stock locations!"
msgstr ""
-#: stock/models.py:583 stock/serializers.py:174
+#: stock/models.py:583 stock/serializers.py:223
msgid "Stock item cannot be created for virtual parts"
msgstr ""
@@ -7821,7 +7832,7 @@ msgstr ""
msgid "Quantity does not match serial numbers"
msgstr ""
-#: stock/models.py:1403 stock/serializers.py:374
+#: stock/models.py:1403 stock/serializers.py:440
msgid "Serial numbers already exist"
msgstr ""
@@ -7849,7 +7860,7 @@ msgstr ""
msgid "Serialized stock cannot be merged"
msgstr ""
-#: stock/models.py:1496 stock/serializers.py:975
+#: stock/models.py:1496 stock/serializers.py:1092
msgid "Duplicate stock items"
msgstr ""
@@ -7901,132 +7912,141 @@ msgstr ""
msgid "Test notes"
msgstr ""
-#: stock/serializers.py:76
+#: stock/serializers.py:121
msgid "Serial number is too large"
msgstr ""
-#: stock/serializers.py:166
+#: stock/serializers.py:215
msgid "Use pack size when adding: the quantity defined is the number of packs"
msgstr ""
-#: stock/serializers.py:254
+#: stock/serializers.py:316
msgid "Purchase price of this stock item, per unit or pack"
msgstr ""
-#: stock/serializers.py:307
+#: stock/serializers.py:373
msgid "Enter number of stock items to serialize"
msgstr ""
-#: stock/serializers.py:319
+#: stock/serializers.py:385
#, python-brace-format
msgid "Quantity must not exceed available stock quantity ({q})"
msgstr ""
-#: stock/serializers.py:325
+#: stock/serializers.py:391
msgid "Enter serial numbers for new items"
msgstr ""
-#: stock/serializers.py:336 stock/serializers.py:932 stock/serializers.py:1174
+#: stock/serializers.py:402 stock/serializers.py:1049 stock/serializers.py:1291
msgid "Destination stock location"
msgstr ""
-#: stock/serializers.py:343
+#: stock/serializers.py:409
msgid "Optional note field"
msgstr ""
-#: stock/serializers.py:353
+#: stock/serializers.py:419
msgid "Serial numbers cannot be assigned to this part"
msgstr ""
-#: stock/serializers.py:414
+#: stock/serializers.py:480
msgid "Select stock item to install"
msgstr ""
-#: stock/serializers.py:427
-msgid "Stock item is unavailable"
-msgstr ""
-
-#: stock/serializers.py:434
-msgid "Selected part is not in the Bill of Materials"
-msgstr ""
-
-#: stock/serializers.py:471
-msgid "Destination location for uninstalled item"
-msgstr ""
-
-#: stock/serializers.py:476 stock/serializers.py:557
+#: stock/serializers.py:485 stock/serializers.py:543 stock/serializers.py:624
+#: stock/serializers.py:682
msgid "Add transaction note (optional)"
msgstr ""
-#: stock/serializers.py:510
+#: stock/serializers.py:494
+msgid "Stock item is unavailable"
+msgstr ""
+
+#: stock/serializers.py:501
+msgid "Selected part is not in the Bill of Materials"
+msgstr ""
+
+#: stock/serializers.py:538
+msgid "Destination location for uninstalled item"
+msgstr ""
+
+#: stock/serializers.py:577
msgid "Select part to convert stock item into"
msgstr ""
-#: stock/serializers.py:521
+#: stock/serializers.py:588
msgid "Selected part is not a valid option for conversion"
msgstr ""
-#: stock/serializers.py:552
+#: stock/serializers.py:619
msgid "Destination location for returned item"
msgstr ""
-#: stock/serializers.py:787
+#: stock/serializers.py:663
+msgid "Select stock items to change status"
+msgstr ""
+
+#: stock/serializers.py:670
+msgid "No stock items selected"
+msgstr ""
+
+#: stock/serializers.py:904
msgid "Part must be salable"
msgstr ""
-#: stock/serializers.py:791
+#: stock/serializers.py:908
msgid "Item is allocated to a sales order"
msgstr ""
-#: stock/serializers.py:795
+#: stock/serializers.py:912
msgid "Item is allocated to a build order"
msgstr ""
-#: stock/serializers.py:826
+#: stock/serializers.py:943
msgid "Customer to assign stock items"
msgstr ""
-#: stock/serializers.py:832
+#: stock/serializers.py:949
msgid "Selected company is not a customer"
msgstr ""
-#: stock/serializers.py:840
+#: stock/serializers.py:957
msgid "Stock assignment notes"
msgstr ""
-#: stock/serializers.py:850 stock/serializers.py:1081
+#: stock/serializers.py:967 stock/serializers.py:1198
msgid "A list of stock items must be provided"
msgstr ""
-#: stock/serializers.py:939
+#: stock/serializers.py:1056
msgid "Stock merging notes"
msgstr ""
-#: stock/serializers.py:944
+#: stock/serializers.py:1061
msgid "Allow mismatched suppliers"
msgstr ""
-#: stock/serializers.py:945
+#: stock/serializers.py:1062
msgid "Allow stock items with different supplier parts to be merged"
msgstr ""
-#: stock/serializers.py:950
+#: stock/serializers.py:1067
msgid "Allow mismatched status"
msgstr ""
-#: stock/serializers.py:951
+#: stock/serializers.py:1068
msgid "Allow stock items with different status codes to be merged"
msgstr ""
-#: stock/serializers.py:961
+#: stock/serializers.py:1078
msgid "At least two stock items must be provided"
msgstr ""
-#: stock/serializers.py:1043
+#: stock/serializers.py:1160
msgid "StockItem primary key value"
msgstr ""
-#: stock/serializers.py:1071
+#: stock/serializers.py:1188
msgid "Stock transaction notes"
msgstr ""
@@ -8034,48 +8054,48 @@ msgstr ""
msgid "Stock Tracking Information"
msgstr ""
-#: stock/templates/stock/item.html:69
+#: stock/templates/stock/item.html:63
msgid "Child Stock Items"
msgstr ""
-#: stock/templates/stock/item.html:77
+#: stock/templates/stock/item.html:71
msgid "This stock item does not have any child items"
msgstr ""
-#: stock/templates/stock/item.html:86
+#: stock/templates/stock/item.html:80
#: stock/templates/stock/stock_sidebar.html:12
msgid "Test Data"
msgstr ""
-#: stock/templates/stock/item.html:90 stock/templates/stock/item_base.html:66
+#: stock/templates/stock/item.html:84 stock/templates/stock/item_base.html:66
msgid "Test Report"
msgstr ""
-#: stock/templates/stock/item.html:94 stock/templates/stock/item.html:288
+#: stock/templates/stock/item.html:88 stock/templates/stock/item.html:278
msgid "Delete Test Data"
msgstr ""
-#: stock/templates/stock/item.html:98
+#: stock/templates/stock/item.html:92
msgid "Add Test Data"
msgstr ""
-#: stock/templates/stock/item.html:132
+#: stock/templates/stock/item.html:124
msgid "Stock Item Notes"
msgstr ""
-#: stock/templates/stock/item.html:147
+#: stock/templates/stock/item.html:139
msgid "Installed Stock Items"
msgstr ""
-#: stock/templates/stock/item.html:152 templates/js/translated/stock.js:2996
+#: stock/templates/stock/item.html:144 templates/js/translated/stock.js:3123
msgid "Install Stock Item"
msgstr ""
-#: stock/templates/stock/item.html:276
+#: stock/templates/stock/item.html:266
msgid "Delete all test results for this stock item"
msgstr ""
-#: stock/templates/stock/item.html:305 templates/js/translated/stock.js:1611
+#: stock/templates/stock/item.html:295 templates/js/translated/stock.js:1610
msgid "Add Test Result"
msgstr ""
@@ -8083,13 +8103,13 @@ msgstr ""
msgid "Locate stock item"
msgstr ""
-#: stock/templates/stock/item_base.html:52 templates/stock_table.html:21
+#: stock/templates/stock/item_base.html:52
msgid "Scan to Location"
msgstr ""
#: stock/templates/stock/item_base.html:60
#: stock/templates/stock/location.html:69
-#: templates/js/translated/filters.js:322
+#: templates/js/translated/filters.js:432
msgid "Printing actions"
msgstr ""
@@ -8098,15 +8118,17 @@ msgid "Stock adjustment actions"
msgstr ""
#: stock/templates/stock/item_base.html:80
-#: stock/templates/stock/location.html:88 templates/stock_table.html:35
+#: stock/templates/stock/location.html:88 templates/js/translated/stock.js:1735
msgid "Count stock"
msgstr ""
-#: stock/templates/stock/item_base.html:82 templates/stock_table.html:33
+#: stock/templates/stock/item_base.html:82
+#: templates/js/translated/stock.js:1717
msgid "Add stock"
msgstr ""
-#: stock/templates/stock/item_base.html:83 templates/stock_table.html:34
+#: stock/templates/stock/item_base.html:83
+#: templates/js/translated/stock.js:1726
msgid "Remove stock"
msgstr ""
@@ -8115,11 +8137,12 @@ msgid "Serialize stock"
msgstr ""
#: stock/templates/stock/item_base.html:89
-#: stock/templates/stock/location.html:94 templates/stock_table.html:36
+#: stock/templates/stock/location.html:94 templates/js/translated/stock.js:1744
msgid "Transfer stock"
msgstr ""
-#: stock/templates/stock/item_base.html:92 templates/stock_table.html:39
+#: stock/templates/stock/item_base.html:92
+#: templates/js/translated/stock.js:1798
msgid "Assign to customer"
msgstr ""
@@ -8159,6 +8182,11 @@ msgstr ""
msgid "Delete stock item"
msgstr ""
+#: stock/templates/stock/item_base.html:170 templates/InvenTree/search.html:139
+#: templates/js/translated/build.js:2046 templates/navbar.html:38
+msgid "Build"
+msgstr "組立"
+
#: stock/templates/stock/item_base.html:194
msgid "Parent Item"
msgstr ""
@@ -8221,7 +8249,7 @@ msgid "Available Quantity"
msgstr ""
#: stock/templates/stock/item_base.html:394
-#: templates/js/translated/build.js:2015
+#: templates/js/translated/build.js:2306
msgid "No location set"
msgstr ""
@@ -8239,7 +8267,7 @@ msgid "This StockItem expired on %(item.expiry_date)s"
msgstr ""
#: stock/templates/stock/item_base.html:433
-#: templates/js/translated/table_filters.js:381
+#: templates/js/translated/table_filters.js:387
msgid "Expired"
msgstr "期限切れ"
@@ -8249,7 +8277,7 @@ msgid "This StockItem expires on %(item.expiry_date)s"
msgstr ""
#: stock/templates/stock/item_base.html:435
-#: templates/js/translated/table_filters.js:387
+#: templates/js/translated/table_filters.js:393
msgid "Stale"
msgstr ""
@@ -8258,7 +8286,7 @@ msgid "No stocktake performed"
msgstr ""
#: stock/templates/stock/item_base.html:503
-#: templates/js/translated/stock.js:1745
+#: templates/js/translated/stock.js:1865
msgid "stock item"
msgstr ""
@@ -8364,20 +8392,20 @@ msgstr ""
msgid "New Location"
msgstr ""
-#: stock/templates/stock/location.html:287
-#: templates/js/translated/stock.js:2318
+#: stock/templates/stock/location.html:278
+#: templates/js/translated/stock.js:2449
msgid "stock location"
msgstr ""
-#: stock/templates/stock/location.html:304
+#: stock/templates/stock/location.html:295
msgid "Scanned stock container into this location"
msgstr ""
-#: stock/templates/stock/location.html:377
+#: stock/templates/stock/location.html:368
msgid "Stock Location QR Code"
msgstr ""
-#: stock/templates/stock/location.html:388
+#: stock/templates/stock/location.html:379
msgid "Link Barcode to Stock Location"
msgstr ""
@@ -8451,71 +8479,71 @@ msgstr ""
msgid "Index"
msgstr ""
-#: templates/InvenTree/index.html:89
+#: templates/InvenTree/index.html:39
msgid "Subscribed Parts"
msgstr ""
-#: templates/InvenTree/index.html:102
+#: templates/InvenTree/index.html:53
msgid "Subscribed Categories"
msgstr ""
-#: templates/InvenTree/index.html:112
+#: templates/InvenTree/index.html:63
msgid "Latest Parts"
msgstr ""
-#: templates/InvenTree/index.html:126
+#: templates/InvenTree/index.html:78
msgid "BOM Waiting Validation"
msgstr ""
-#: templates/InvenTree/index.html:155
+#: templates/InvenTree/index.html:107
msgid "Recently Updated"
msgstr ""
-#: templates/InvenTree/index.html:180
+#: templates/InvenTree/index.html:134
msgid "Depleted Stock"
msgstr ""
-#: templates/InvenTree/index.html:193
+#: templates/InvenTree/index.html:148
msgid "Required for Build Orders"
msgstr ""
-#: templates/InvenTree/index.html:208
+#: templates/InvenTree/index.html:156
msgid "Expired Stock"
msgstr "期限切れ在庫"
-#: templates/InvenTree/index.html:222
+#: templates/InvenTree/index.html:172
msgid "Stale Stock"
msgstr ""
-#: templates/InvenTree/index.html:247
+#: templates/InvenTree/index.html:199
msgid "Build Orders In Progress"
msgstr ""
-#: templates/InvenTree/index.html:258
+#: templates/InvenTree/index.html:210
msgid "Overdue Build Orders"
msgstr ""
-#: templates/InvenTree/index.html:278
+#: templates/InvenTree/index.html:230
msgid "Outstanding Purchase Orders"
msgstr ""
-#: templates/InvenTree/index.html:289
+#: templates/InvenTree/index.html:241
msgid "Overdue Purchase Orders"
msgstr ""
-#: templates/InvenTree/index.html:310
+#: templates/InvenTree/index.html:262
msgid "Outstanding Sales Orders"
msgstr ""
-#: templates/InvenTree/index.html:321
+#: templates/InvenTree/index.html:273
msgid "Overdue Sales Orders"
msgstr ""
-#: templates/InvenTree/index.html:347
+#: templates/InvenTree/index.html:299
msgid "InvenTree News"
msgstr ""
-#: templates/InvenTree/index.html:349
+#: templates/InvenTree/index.html:301
msgid "Current News"
msgstr ""
@@ -8672,29 +8700,29 @@ msgstr ""
msgid "Changing the settings below require you to immediately restart the server. Do not change this while under active usage."
msgstr ""
-#: templates/InvenTree/settings/plugin.html:37
+#: templates/InvenTree/settings/plugin.html:35
#: templates/InvenTree/settings/sidebar.html:64
msgid "Plugins"
msgstr ""
-#: templates/InvenTree/settings/plugin.html:43
+#: templates/InvenTree/settings/plugin.html:41
#: templates/js/translated/plugin.js:151
msgid "Install Plugin"
msgstr ""
-#: templates/InvenTree/settings/plugin.html:51
+#: templates/InvenTree/settings/plugin.html:49
msgid "External plugins are not enabled for this InvenTree installation"
msgstr ""
-#: templates/InvenTree/settings/plugin.html:70
+#: templates/InvenTree/settings/plugin.html:64
msgid "Plugin Error Stack"
msgstr ""
-#: templates/InvenTree/settings/plugin.html:79
+#: templates/InvenTree/settings/plugin.html:73
msgid "Stage"
msgstr ""
-#: templates/InvenTree/settings/plugin.html:81
+#: templates/InvenTree/settings/plugin.html:75
#: templates/js/translated/notification.js:75
msgid "Message"
msgstr ""
@@ -8767,14 +8795,6 @@ msgstr ""
msgid "Commit Message"
msgstr ""
-#: templates/InvenTree/settings/plugin_settings.html:126
-msgid "Sign Status"
-msgstr ""
-
-#: templates/InvenTree/settings/plugin_settings.html:131
-msgid "Sign Key"
-msgstr ""
-
#: templates/InvenTree/settings/po.html:7
msgid "Purchase Order Settings"
msgstr ""
@@ -8870,12 +8890,12 @@ msgid "No category parameter templates found"
msgstr ""
#: templates/InvenTree/settings/settings_staff_js.html:212
-#: templates/js/translated/part.js:1618
+#: templates/js/translated/part.js:1617
msgid "Edit Template"
msgstr ""
#: templates/InvenTree/settings/settings_staff_js.html:213
-#: templates/js/translated/part.js:1619
+#: templates/js/translated/part.js:1618
msgid "Delete Template"
msgstr ""
@@ -8913,7 +8933,7 @@ msgid "Home Page"
msgstr ""
#: templates/InvenTree/settings/sidebar.html:15
-#: templates/js/translated/tables.js:575 templates/navbar.html:107
+#: templates/js/translated/tables.js:551 templates/navbar.html:107
#: templates/search.html:8 templates/search_form.html:6
#: templates/search_form.html:7
msgid "Search"
@@ -8990,6 +9010,7 @@ msgid "Unverified"
msgstr ""
#: templates/InvenTree/settings/user.html:80
+#: templates/js/translated/company.js:984
msgid "Primary"
msgstr ""
@@ -9204,44 +9225,48 @@ msgstr ""
msgid "Update Available"
msgstr ""
-#: templates/about.html:42
+#: templates/about.html:43
+msgid "Commit Branch"
+msgstr ""
+
+#: templates/about.html:49
msgid "InvenTree Documentation"
msgstr ""
-#: templates/about.html:47
+#: templates/about.html:54
msgid "API Version"
msgstr ""
-#: templates/about.html:52
+#: templates/about.html:59
msgid "Python Version"
msgstr ""
-#: templates/about.html:57
+#: templates/about.html:64
msgid "Django Version"
msgstr ""
-#: templates/about.html:62
+#: templates/about.html:69
msgid "View Code on GitHub"
msgstr ""
-#: templates/about.html:67
+#: templates/about.html:74
msgid "Credits"
msgstr ""
-#: templates/about.html:72
+#: templates/about.html:79
msgid "Mobile App"
msgstr ""
-#: templates/about.html:77
+#: templates/about.html:84
msgid "Submit Bug Report"
msgstr ""
-#: templates/about.html:84 templates/clip.html:4
+#: templates/about.html:91 templates/clip.html:4
#: templates/js/translated/helpers.js:585
msgid "copy to clipboard"
msgstr ""
-#: templates/about.html:84
+#: templates/about.html:91
msgid "copy version information"
msgstr ""
@@ -9435,14 +9460,6 @@ msgstr ""
msgid "Add Attachment"
msgstr ""
-#: templates/attachment_table.html:11
-msgid "Delete selected attachments"
-msgstr ""
-
-#: templates/attachment_table.html:12 templates/js/translated/attachment.js:129
-msgid "Delete Attachments"
-msgstr ""
-
#: templates/barcode_data.html:5
msgid "Barcode Identifier"
msgstr ""
@@ -9487,7 +9504,7 @@ msgid "The following parts are low on required stock"
msgstr ""
#: templates/email/build_order_required_stock.html:18
-#: templates/js/translated/bom.js:1633
+#: templates/js/translated/bom.js:1653 templates/js/translated/build.js:2485
msgid "Required Quantity"
msgstr ""
@@ -9501,7 +9518,7 @@ msgid "Click on the following link to view this part"
msgstr ""
#: templates/email/low_stock_notification.html:18
-#: templates/js/translated/part.js:3140
+#: templates/js/translated/part.js:3125
msgid "Minimum Quantity"
msgstr ""
@@ -9573,23 +9590,35 @@ msgstr ""
msgid "All selected attachments will be deleted"
msgstr ""
-#: templates/js/translated/attachment.js:255
+#: templates/js/translated/attachment.js:129
+msgid "Delete Attachments"
+msgstr ""
+
+#: templates/js/translated/attachment.js:205
+msgid "Delete attachments"
+msgstr ""
+
+#: templates/js/translated/attachment.js:253
+msgid "Attachment actions"
+msgstr ""
+
+#: templates/js/translated/attachment.js:275
msgid "No attachments found"
msgstr ""
-#: templates/js/translated/attachment.js:285
+#: templates/js/translated/attachment.js:305
msgid "Edit Attachment"
msgstr ""
-#: templates/js/translated/attachment.js:326
+#: templates/js/translated/attachment.js:336
msgid "Upload Date"
msgstr ""
-#: templates/js/translated/attachment.js:346
+#: templates/js/translated/attachment.js:356
msgid "Edit attachment"
msgstr ""
-#: templates/js/translated/attachment.js:354
+#: templates/js/translated/attachment.js:364
msgid "Delete attachment"
msgstr ""
@@ -9646,7 +9675,7 @@ msgstr ""
msgid "Unlink"
msgstr ""
-#: templates/js/translated/barcode.js:550 templates/js/translated/stock.js:1118
+#: templates/js/translated/barcode.js:550 templates/js/translated/stock.js:1117
msgid "Remove stock item"
msgstr ""
@@ -9704,775 +9733,869 @@ msgstr ""
msgid "Barcode does not match a valid location"
msgstr ""
-#: templates/js/translated/bom.js:77
+#: templates/js/translated/bom.js:78
msgid "Create BOM Item"
msgstr ""
-#: templates/js/translated/bom.js:131
+#: templates/js/translated/bom.js:132
msgid "Display row data"
msgstr ""
-#: templates/js/translated/bom.js:187
+#: templates/js/translated/bom.js:188
msgid "Row Data"
msgstr ""
-#: templates/js/translated/bom.js:188 templates/js/translated/bom.js:699
+#: templates/js/translated/bom.js:189 templates/js/translated/bom.js:700
#: templates/js/translated/modals.js:71 templates/js/translated/modals.js:622
#: templates/js/translated/modals.js:746 templates/js/translated/modals.js:1054
-#: templates/js/translated/purchase_order.js:791 templates/modals.html:15
+#: templates/js/translated/purchase_order.js:802 templates/modals.html:15
#: templates/modals.html:27 templates/modals.html:39 templates/modals.html:50
msgid "Close"
msgstr ""
-#: templates/js/translated/bom.js:305
+#: templates/js/translated/bom.js:306
msgid "Download BOM Template"
msgstr ""
-#: templates/js/translated/bom.js:350
+#: templates/js/translated/bom.js:351
msgid "Multi Level BOM"
msgstr ""
-#: templates/js/translated/bom.js:351
+#: templates/js/translated/bom.js:352
msgid "Include BOM data for subassemblies"
msgstr ""
-#: templates/js/translated/bom.js:356
+#: templates/js/translated/bom.js:357
msgid "Levels"
msgstr ""
-#: templates/js/translated/bom.js:357
+#: templates/js/translated/bom.js:358
msgid "Select maximum number of BOM levels to export (0 = all levels)"
msgstr ""
-#: templates/js/translated/bom.js:364
+#: templates/js/translated/bom.js:365
msgid "Include Alternative Parts"
msgstr ""
-#: templates/js/translated/bom.js:365
+#: templates/js/translated/bom.js:366
msgid "Include alternative parts in exported BOM"
msgstr ""
-#: templates/js/translated/bom.js:370
+#: templates/js/translated/bom.js:371
msgid "Include Parameter Data"
msgstr ""
-#: templates/js/translated/bom.js:371
+#: templates/js/translated/bom.js:372
msgid "Include part parameter data in exported BOM"
msgstr ""
-#: templates/js/translated/bom.js:376
+#: templates/js/translated/bom.js:377
msgid "Include Stock Data"
msgstr ""
-#: templates/js/translated/bom.js:377
+#: templates/js/translated/bom.js:378
msgid "Include part stock data in exported BOM"
msgstr ""
-#: templates/js/translated/bom.js:382
+#: templates/js/translated/bom.js:383
msgid "Include Manufacturer Data"
msgstr ""
-#: templates/js/translated/bom.js:383
+#: templates/js/translated/bom.js:384
msgid "Include part manufacturer data in exported BOM"
msgstr ""
-#: templates/js/translated/bom.js:388
+#: templates/js/translated/bom.js:389
msgid "Include Supplier Data"
msgstr ""
-#: templates/js/translated/bom.js:389
+#: templates/js/translated/bom.js:390
msgid "Include part supplier data in exported BOM"
msgstr ""
-#: templates/js/translated/bom.js:394
+#: templates/js/translated/bom.js:395
msgid "Include Pricing Data"
msgstr ""
-#: templates/js/translated/bom.js:395
+#: templates/js/translated/bom.js:396
msgid "Include part pricing data in exported BOM"
msgstr ""
-#: templates/js/translated/bom.js:590
+#: templates/js/translated/bom.js:591
msgid "Remove substitute part"
msgstr ""
-#: templates/js/translated/bom.js:644
+#: templates/js/translated/bom.js:645
msgid "Select and add a new substitute part using the input below"
msgstr ""
-#: templates/js/translated/bom.js:655
+#: templates/js/translated/bom.js:656
msgid "Are you sure you wish to remove this substitute part link?"
msgstr ""
-#: templates/js/translated/bom.js:661
+#: templates/js/translated/bom.js:662
msgid "Remove Substitute Part"
msgstr ""
-#: templates/js/translated/bom.js:700
+#: templates/js/translated/bom.js:701
msgid "Add Substitute"
msgstr ""
-#: templates/js/translated/bom.js:701
+#: templates/js/translated/bom.js:702
msgid "Edit BOM Item Substitutes"
msgstr ""
-#: templates/js/translated/bom.js:763
+#: templates/js/translated/bom.js:764
msgid "All selected BOM items will be deleted"
msgstr ""
-#: templates/js/translated/bom.js:779
+#: templates/js/translated/bom.js:780
msgid "Delete selected BOM items?"
msgstr ""
-#: templates/js/translated/bom.js:906
+#: templates/js/translated/bom.js:826
+msgid "Delete items"
+msgstr ""
+
+#: templates/js/translated/bom.js:924
msgid "Load BOM for subassembly"
msgstr ""
-#: templates/js/translated/bom.js:916
+#: templates/js/translated/bom.js:934
msgid "Substitutes Available"
msgstr ""
-#: templates/js/translated/bom.js:920 templates/js/translated/build.js:2090
+#: templates/js/translated/bom.js:938 templates/js/translated/build.js:2429
msgid "Variant stock allowed"
msgstr ""
-#: templates/js/translated/bom.js:984
+#: templates/js/translated/bom.js:1002
msgid "Substitutes"
msgstr ""
-#: templates/js/translated/bom.js:1104
+#: templates/js/translated/bom.js:1122
msgid "BOM pricing is complete"
msgstr ""
-#: templates/js/translated/bom.js:1109
+#: templates/js/translated/bom.js:1127
msgid "BOM pricing is incomplete"
msgstr ""
-#: templates/js/translated/bom.js:1116
+#: templates/js/translated/bom.js:1134
msgid "No pricing available"
msgstr ""
-#: templates/js/translated/bom.js:1147 templates/js/translated/build.js:2173
-#: templates/js/translated/sales_order.js:1887
+#: templates/js/translated/bom.js:1165 templates/js/translated/build.js:2523
+#: templates/js/translated/sales_order.js:1899
msgid "No Stock Available"
msgstr ""
-#: templates/js/translated/bom.js:1152 templates/js/translated/build.js:2177
+#: templates/js/translated/bom.js:1170 templates/js/translated/build.js:2527
msgid "Includes variant and substitute stock"
msgstr ""
-#: templates/js/translated/bom.js:1154 templates/js/translated/build.js:2179
-#: templates/js/translated/part.js:1230
+#: templates/js/translated/bom.js:1172 templates/js/translated/build.js:2529
+#: templates/js/translated/part.js:1229
msgid "Includes variant stock"
msgstr ""
-#: templates/js/translated/bom.js:1156 templates/js/translated/build.js:2181
+#: templates/js/translated/bom.js:1174 templates/js/translated/build.js:2531
msgid "Includes substitute stock"
msgstr ""
-#: templates/js/translated/bom.js:1184 templates/js/translated/build.js:2164
-#: templates/js/translated/build.js:2255
+#: templates/js/translated/bom.js:1204 templates/js/translated/build.js:2514
msgid "Consumable item"
msgstr ""
-#: templates/js/translated/bom.js:1244
+#: templates/js/translated/bom.js:1264
msgid "Validate BOM Item"
msgstr ""
-#: templates/js/translated/bom.js:1246
+#: templates/js/translated/bom.js:1266
msgid "This line has been validated"
msgstr ""
-#: templates/js/translated/bom.js:1248
+#: templates/js/translated/bom.js:1268
msgid "Edit substitute parts"
msgstr ""
-#: templates/js/translated/bom.js:1250 templates/js/translated/bom.js:1445
+#: templates/js/translated/bom.js:1270 templates/js/translated/bom.js:1465
msgid "Edit BOM Item"
msgstr ""
-#: templates/js/translated/bom.js:1252
+#: templates/js/translated/bom.js:1272
msgid "Delete BOM Item"
msgstr ""
-#: templates/js/translated/bom.js:1272
+#: templates/js/translated/bom.js:1292
msgid "View BOM"
msgstr ""
-#: templates/js/translated/bom.js:1356 templates/js/translated/build.js:1927
+#: templates/js/translated/bom.js:1376
msgid "No BOM items found"
msgstr ""
-#: templates/js/translated/bom.js:1616 templates/js/translated/build.js:2073
+#: templates/js/translated/bom.js:1636 templates/js/translated/build.js:2414
msgid "Required Part"
msgstr ""
-#: templates/js/translated/bom.js:1642
+#: templates/js/translated/bom.js:1662
msgid "Inherited from parent BOM"
msgstr ""
-#: templates/js/translated/build.js:126
+#: templates/js/translated/build.js:136
msgid "Edit Build Order"
msgstr ""
-#: templates/js/translated/build.js:169
+#: templates/js/translated/build.js:179
msgid "Create Build Order"
msgstr ""
-#: templates/js/translated/build.js:202
+#: templates/js/translated/build.js:211
msgid "Cancel Build Order"
msgstr ""
-#: templates/js/translated/build.js:211
+#: templates/js/translated/build.js:220
msgid "Are you sure you wish to cancel this build?"
msgstr ""
-#: templates/js/translated/build.js:217
+#: templates/js/translated/build.js:226
msgid "Stock items have been allocated to this build order"
msgstr ""
-#: templates/js/translated/build.js:224
+#: templates/js/translated/build.js:233
msgid "There are incomplete outputs remaining for this build order"
msgstr ""
-#: templates/js/translated/build.js:276
+#: templates/js/translated/build.js:285
msgid "Build order is ready to be completed"
msgstr ""
-#: templates/js/translated/build.js:284
+#: templates/js/translated/build.js:293
msgid "This build order cannot be completed as there are incomplete outputs"
msgstr ""
-#: templates/js/translated/build.js:289
+#: templates/js/translated/build.js:298
msgid "Build Order is incomplete"
msgstr ""
-#: templates/js/translated/build.js:307
+#: templates/js/translated/build.js:316
msgid "Complete Build Order"
msgstr ""
-#: templates/js/translated/build.js:348 templates/js/translated/stock.js:119
-#: templates/js/translated/stock.js:265
+#: templates/js/translated/build.js:357 templates/js/translated/stock.js:118
+#: templates/js/translated/stock.js:264
msgid "Next available serial number"
msgstr ""
-#: templates/js/translated/build.js:350 templates/js/translated/stock.js:121
-#: templates/js/translated/stock.js:267
+#: templates/js/translated/build.js:359 templates/js/translated/stock.js:120
+#: templates/js/translated/stock.js:266
msgid "Latest serial number"
msgstr ""
-#: templates/js/translated/build.js:359
+#: templates/js/translated/build.js:368
msgid "The Bill of Materials contains trackable parts"
msgstr ""
-#: templates/js/translated/build.js:360
+#: templates/js/translated/build.js:369
msgid "Build outputs must be generated individually"
msgstr ""
-#: templates/js/translated/build.js:368
+#: templates/js/translated/build.js:377
msgid "Trackable parts can have serial numbers specified"
msgstr ""
-#: templates/js/translated/build.js:369
+#: templates/js/translated/build.js:378
msgid "Enter serial numbers to generate multiple single build outputs"
msgstr ""
-#: templates/js/translated/build.js:376
+#: templates/js/translated/build.js:385
msgid "Create Build Output"
msgstr ""
-#: templates/js/translated/build.js:407
+#: templates/js/translated/build.js:416
msgid "Allocate stock items to this build output"
msgstr ""
-#: templates/js/translated/build.js:418
-msgid "Unallocate stock from build output"
+#: templates/js/translated/build.js:424
+msgid "Deallocate stock from build output"
msgstr ""
-#: templates/js/translated/build.js:427
+#: templates/js/translated/build.js:433
msgid "Complete build output"
msgstr ""
-#: templates/js/translated/build.js:435
+#: templates/js/translated/build.js:441
msgid "Scrap build output"
msgstr ""
-#: templates/js/translated/build.js:442
+#: templates/js/translated/build.js:448
msgid "Delete build output"
msgstr ""
-#: templates/js/translated/build.js:462
-msgid "Are you sure you wish to unallocate stock items from this build?"
+#: templates/js/translated/build.js:468
+msgid "Are you sure you wish to deallocate the selected stock items from this build?"
msgstr ""
-#: templates/js/translated/build.js:480
-msgid "Unallocate Stock Items"
+#: templates/js/translated/build.js:486
+msgid "Deallocate Stock Items"
msgstr ""
-#: templates/js/translated/build.js:566 templates/js/translated/build.js:690
-#: templates/js/translated/build.js:812
+#: templates/js/translated/build.js:572 templates/js/translated/build.js:696
+#: templates/js/translated/build.js:818
msgid "Select Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:567 templates/js/translated/build.js:691
-#: templates/js/translated/build.js:813
+#: templates/js/translated/build.js:573 templates/js/translated/build.js:697
+#: templates/js/translated/build.js:819
msgid "At least one build output must be selected"
msgstr ""
-#: templates/js/translated/build.js:581
+#: templates/js/translated/build.js:587
msgid "Selected build outputs will be marked as complete"
msgstr ""
-#: templates/js/translated/build.js:585 templates/js/translated/build.js:715
-#: templates/js/translated/build.js:835
+#: templates/js/translated/build.js:591 templates/js/translated/build.js:721
+#: templates/js/translated/build.js:841
msgid "Output"
msgstr ""
-#: templates/js/translated/build.js:609
+#: templates/js/translated/build.js:615
msgid "Complete Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:706
+#: templates/js/translated/build.js:712
msgid "Selected build outputs will be marked as scrapped"
msgstr ""
-#: templates/js/translated/build.js:708
+#: templates/js/translated/build.js:714
msgid "Scrapped output are marked as rejected"
msgstr ""
-#: templates/js/translated/build.js:709
+#: templates/js/translated/build.js:715
msgid "Allocated stock items will no longer be available"
msgstr ""
-#: templates/js/translated/build.js:710
+#: templates/js/translated/build.js:716
msgid "The completion status of the build order will not be adjusted"
msgstr ""
-#: templates/js/translated/build.js:737
+#: templates/js/translated/build.js:743
msgid "Scrap Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:827
+#: templates/js/translated/build.js:833
msgid "Selected build outputs will be deleted"
msgstr ""
-#: templates/js/translated/build.js:829
+#: templates/js/translated/build.js:835
msgid "Build output data will be permanently deleted"
msgstr ""
-#: templates/js/translated/build.js:830
+#: templates/js/translated/build.js:836
msgid "Allocated stock items will be returned to stock"
msgstr ""
-#: templates/js/translated/build.js:848
+#: templates/js/translated/build.js:854
msgid "Delete Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:934
+#: templates/js/translated/build.js:941
msgid "No build order allocations found"
msgstr ""
-#: templates/js/translated/build.js:971
+#: templates/js/translated/build.js:970 templates/js/translated/build.js:2270
+msgid "Allocated Quantity"
+msgstr ""
+
+#: templates/js/translated/build.js:984
msgid "Location not specified"
msgstr ""
-#: templates/js/translated/build.js:1047
+#: templates/js/translated/build.js:1006
+msgid "Complete outputs"
+msgstr ""
+
+#: templates/js/translated/build.js:1024
+msgid "Scrap outputs"
+msgstr ""
+
+#: templates/js/translated/build.js:1042
+msgid "Delete outputs"
+msgstr ""
+
+#: templates/js/translated/build.js:1100
msgid "build output"
msgstr ""
-#: templates/js/translated/build.js:1048
+#: templates/js/translated/build.js:1101
msgid "build outputs"
msgstr ""
-#: templates/js/translated/build.js:1383
+#: templates/js/translated/build.js:1105
+msgid "Build output actions"
+msgstr ""
+
+#: templates/js/translated/build.js:1274
msgid "No active build outputs found"
msgstr ""
-#: templates/js/translated/build.js:1457
-msgid "Allocated Stock"
+#: templates/js/translated/build.js:1329
+msgid "Allocated Lines"
msgstr ""
-#: templates/js/translated/build.js:1464
-msgid "No tracked BOM items for this build"
+#: templates/js/translated/build.js:1343
+msgid "Required Tests"
msgstr ""
-#: templates/js/translated/build.js:1486
-msgid "Completed Tests"
-msgstr ""
-
-#: templates/js/translated/build.js:1491
-msgid "No required tests for this build"
-msgstr ""
-
-#: templates/js/translated/build.js:2032 templates/js/translated/build.js:3056
-#: templates/js/translated/sales_order.js:1632
-msgid "Edit stock allocation"
-msgstr ""
-
-#: templates/js/translated/build.js:2034 templates/js/translated/build.js:3057
-#: templates/js/translated/sales_order.js:1633
-msgid "Delete stock allocation"
-msgstr ""
-
-#: templates/js/translated/build.js:2050
-msgid "Edit Allocation"
-msgstr ""
-
-#: templates/js/translated/build.js:2060
-msgid "Remove Allocation"
-msgstr ""
-
-#: templates/js/translated/build.js:2086
-msgid "Substitute parts available"
-msgstr ""
-
-#: templates/js/translated/build.js:2122
-msgid "Quantity Per"
-msgstr ""
-
-#: templates/js/translated/build.js:2167
-#: templates/js/translated/sales_order.js:1894
-msgid "Insufficient stock available"
-msgstr ""
-
-#: templates/js/translated/build.js:2169
-#: templates/js/translated/sales_order.js:1892
-msgid "Sufficient stock available"
-msgstr ""
-
-#: templates/js/translated/build.js:2263
-#: templates/js/translated/sales_order.js:1993
-msgid "Build stock"
-msgstr ""
-
-#: templates/js/translated/build.js:2267 templates/stock_table.html:38
-msgid "Order stock"
-msgstr ""
-
-#: templates/js/translated/build.js:2270
-#: templates/js/translated/sales_order.js:1987
-msgid "Allocate stock"
-msgstr ""
-
-#: templates/js/translated/build.js:2310
-#: templates/js/translated/purchase_order.js:616
-#: templates/js/translated/sales_order.js:1159
+#: templates/js/translated/build.js:1502
+#: templates/js/translated/purchase_order.js:627
+#: templates/js/translated/sales_order.js:1171
msgid "Select Parts"
msgstr ""
-#: templates/js/translated/build.js:2311
-#: templates/js/translated/sales_order.js:1160
+#: templates/js/translated/build.js:1503
+#: templates/js/translated/sales_order.js:1172
msgid "You must select at least one part to allocate"
msgstr ""
-#: templates/js/translated/build.js:2359
-#: templates/js/translated/sales_order.js:1109
+#: templates/js/translated/build.js:1566
+#: templates/js/translated/sales_order.js:1121
msgid "Specify stock allocation quantity"
msgstr ""
-#: templates/js/translated/build.js:2438
+#: templates/js/translated/build.js:1643
msgid "All Parts Allocated"
msgstr ""
-#: templates/js/translated/build.js:2439
+#: templates/js/translated/build.js:1644
msgid "All selected parts have been fully allocated"
msgstr ""
-#: templates/js/translated/build.js:2453
-#: templates/js/translated/sales_order.js:1174
+#: templates/js/translated/build.js:1658
+#: templates/js/translated/sales_order.js:1186
msgid "Select source location (leave blank to take from all locations)"
msgstr ""
-#: templates/js/translated/build.js:2481
+#: templates/js/translated/build.js:1686
msgid "Allocate Stock Items to Build Order"
msgstr ""
-#: templates/js/translated/build.js:2492
-#: templates/js/translated/sales_order.js:1271
+#: templates/js/translated/build.js:1697
+#: templates/js/translated/sales_order.js:1283
msgid "No matching stock locations"
msgstr ""
-#: templates/js/translated/build.js:2565
-#: templates/js/translated/sales_order.js:1348
+#: templates/js/translated/build.js:1770
+#: templates/js/translated/sales_order.js:1360
msgid "No matching stock items"
msgstr ""
-#: templates/js/translated/build.js:2662
+#: templates/js/translated/build.js:1867
msgid "Automatic Stock Allocation"
msgstr ""
-#: templates/js/translated/build.js:2663
+#: templates/js/translated/build.js:1868
msgid "Stock items will be automatically allocated to this build order, according to the provided guidelines"
msgstr ""
-#: templates/js/translated/build.js:2665
+#: templates/js/translated/build.js:1870
msgid "If a location is specified, stock will only be allocated from that location"
msgstr ""
-#: templates/js/translated/build.js:2666
+#: templates/js/translated/build.js:1871
msgid "If stock is considered interchangeable, it will be allocated from the first location it is found"
msgstr ""
-#: templates/js/translated/build.js:2667
+#: templates/js/translated/build.js:1872
msgid "If substitute stock is allowed, it will be used where stock of the primary part cannot be found"
msgstr ""
-#: templates/js/translated/build.js:2694
+#: templates/js/translated/build.js:1899
msgid "Allocate Stock Items"
msgstr ""
-#: templates/js/translated/build.js:2800
+#: templates/js/translated/build.js:2005
msgid "No builds matching query"
msgstr ""
-#: templates/js/translated/build.js:2835 templates/js/translated/part.js:2208
-#: templates/js/translated/part.js:2692 templates/js/translated/stock.js:1759
-#: templates/js/translated/stock.js:2458
+#: templates/js/translated/build.js:2040 templates/js/translated/build.js:2408
+#: templates/js/translated/part.js:2284 templates/js/translated/part.js:2677
+#: templates/js/translated/stock.js:1899 templates/js/translated/stock.js:2589
msgid "Select"
msgstr ""
-#: templates/js/translated/build.js:2849
+#: templates/js/translated/build.js:2054
msgid "Build order is overdue"
msgstr ""
-#: templates/js/translated/build.js:2883
+#: templates/js/translated/build.js:2100
msgid "Progress"
msgstr ""
-#: templates/js/translated/build.js:2919 templates/js/translated/stock.js:2779
+#: templates/js/translated/build.js:2136 templates/js/translated/stock.js:2910
msgid "No user information"
msgstr ""
-#: templates/js/translated/build.js:2934
+#: templates/js/translated/build.js:2151
msgid "group"
msgstr ""
-#: templates/js/translated/build.js:3033
-msgid "No parts allocated for"
+#: templates/js/translated/build.js:2315
+#: templates/js/translated/sales_order.js:1644
+msgid "Edit stock allocation"
msgstr ""
-#: templates/js/translated/company.js:87
+#: templates/js/translated/build.js:2316
+#: templates/js/translated/sales_order.js:1645
+msgid "Delete stock allocation"
+msgstr ""
+
+#: templates/js/translated/build.js:2331
+msgid "Edit Allocation"
+msgstr ""
+
+#: templates/js/translated/build.js:2343
+msgid "Remove Allocation"
+msgstr ""
+
+#: templates/js/translated/build.js:2384
+msgid "build line"
+msgstr ""
+
+#: templates/js/translated/build.js:2385
+msgid "build lines"
+msgstr ""
+
+#: templates/js/translated/build.js:2403
+msgid "No build lines found"
+msgstr ""
+
+#: templates/js/translated/build.js:2433 templates/js/translated/part.js:767
+#: templates/js/translated/part.js:1175
+msgid "Trackable part"
+msgstr ""
+
+#: templates/js/translated/build.js:2468
+msgid "Unit Quantity"
+msgstr ""
+
+#: templates/js/translated/build.js:2517
+#: templates/js/translated/sales_order.js:1906
+msgid "Insufficient stock available"
+msgstr ""
+
+#: templates/js/translated/build.js:2519
+#: templates/js/translated/sales_order.js:1904
+msgid "Sufficient stock available"
+msgstr ""
+
+#: templates/js/translated/build.js:2566
+msgid "Consumable Item"
+msgstr ""
+
+#: templates/js/translated/build.js:2571
+msgid "Tracked item"
+msgstr ""
+
+#: templates/js/translated/build.js:2578
+#: templates/js/translated/sales_order.js:2005
+msgid "Build stock"
+msgstr ""
+
+#: templates/js/translated/build.js:2583 templates/js/translated/stock.js:1779
+msgid "Order stock"
+msgstr ""
+
+#: templates/js/translated/build.js:2587
+#: templates/js/translated/sales_order.js:1999
+msgid "Allocate stock"
+msgstr ""
+
+#: templates/js/translated/build.js:2591
+msgid "Remove stock allocation"
+msgstr ""
+
+#: templates/js/translated/company.js:97
msgid "Add Manufacturer"
msgstr ""
-#: templates/js/translated/company.js:100
-#: templates/js/translated/company.js:202
+#: templates/js/translated/company.js:110
+#: templates/js/translated/company.js:212
msgid "Add Manufacturer Part"
msgstr ""
-#: templates/js/translated/company.js:121
+#: templates/js/translated/company.js:131
msgid "Edit Manufacturer Part"
msgstr "メーカー・パーツの編集"
-#: templates/js/translated/company.js:190
-#: templates/js/translated/purchase_order.js:94
+#: templates/js/translated/company.js:200
+#: templates/js/translated/purchase_order.js:93
msgid "Add Supplier"
msgstr ""
-#: templates/js/translated/company.js:232
-#: templates/js/translated/purchase_order.js:338
+#: templates/js/translated/company.js:242
+#: templates/js/translated/purchase_order.js:349
msgid "Add Supplier Part"
msgstr ""
-#: templates/js/translated/company.js:333
+#: templates/js/translated/company.js:343
msgid "All selected supplier parts will be deleted"
msgstr ""
-#: templates/js/translated/company.js:349
+#: templates/js/translated/company.js:359
msgid "Delete Supplier Parts"
msgstr ""
-#: templates/js/translated/company.js:457
+#: templates/js/translated/company.js:464
msgid "Add new Company"
msgstr ""
-#: templates/js/translated/company.js:528
+#: templates/js/translated/company.js:535
msgid "Parts Supplied"
msgstr ""
-#: templates/js/translated/company.js:537
+#: templates/js/translated/company.js:544
msgid "Parts Manufactured"
msgstr ""
-#: templates/js/translated/company.js:552
+#: templates/js/translated/company.js:559
msgid "No company information found"
msgstr ""
-#: templates/js/translated/company.js:601
+#: templates/js/translated/company.js:608
msgid "Create New Contact"
msgstr ""
-#: templates/js/translated/company.js:617
-#: templates/js/translated/company.js:740
+#: templates/js/translated/company.js:624
+#: templates/js/translated/company.js:747
msgid "Edit Contact"
msgstr ""
-#: templates/js/translated/company.js:654
+#: templates/js/translated/company.js:661
msgid "All selected contacts will be deleted"
msgstr ""
-#: templates/js/translated/company.js:660
-#: templates/js/translated/company.js:724
+#: templates/js/translated/company.js:667
+#: templates/js/translated/company.js:731
msgid "Role"
msgstr ""
-#: templates/js/translated/company.js:668
+#: templates/js/translated/company.js:675
msgid "Delete Contacts"
msgstr ""
-#: templates/js/translated/company.js:699
+#: templates/js/translated/company.js:706
msgid "No contacts found"
msgstr ""
-#: templates/js/translated/company.js:712
+#: templates/js/translated/company.js:719
msgid "Phone Number"
msgstr ""
-#: templates/js/translated/company.js:718
+#: templates/js/translated/company.js:725
msgid "Email Address"
msgstr ""
-#: templates/js/translated/company.js:744
+#: templates/js/translated/company.js:751
msgid "Delete Contact"
msgstr ""
-#: templates/js/translated/company.js:818
+#: templates/js/translated/company.js:886
+msgid "Create New Address"
+msgstr ""
+
+#: templates/js/translated/company.js:901
+#: templates/js/translated/company.js:1066
+msgid "Edit Address"
+msgstr ""
+
+#: templates/js/translated/company.js:936
+msgid "All selected addresses will be deleted"
+msgstr ""
+
+#: templates/js/translated/company.js:950
+msgid "Delete Addresses"
+msgstr ""
+
+#: templates/js/translated/company.js:977
+msgid "No addresses found"
+msgstr ""
+
+#: templates/js/translated/company.js:1020
+msgid "Postal city"
+msgstr ""
+
+#: templates/js/translated/company.js:1026
+msgid "State/province"
+msgstr ""
+
+#: templates/js/translated/company.js:1038
+msgid "Courier notes"
+msgstr ""
+
+#: templates/js/translated/company.js:1044
+msgid "Internal notes"
+msgstr ""
+
+#: templates/js/translated/company.js:1070
+msgid "Delete Address"
+msgstr ""
+
+#: templates/js/translated/company.js:1143
msgid "All selected manufacturer parts will be deleted"
msgstr ""
-#: templates/js/translated/company.js:833
+#: templates/js/translated/company.js:1158
msgid "Delete Manufacturer Parts"
msgstr ""
-#: templates/js/translated/company.js:867
+#: templates/js/translated/company.js:1192
msgid "All selected parameters will be deleted"
msgstr ""
-#: templates/js/translated/company.js:881
+#: templates/js/translated/company.js:1206
msgid "Delete Parameters"
msgstr ""
-#: templates/js/translated/company.js:917
+#: templates/js/translated/company.js:1222
+#: templates/js/translated/company.js:1510 templates/js/translated/part.js:2213
+msgid "Order parts"
+msgstr "パーツの注文"
+
+#: templates/js/translated/company.js:1239
+msgid "Delete manufacturer parts"
+msgstr ""
+
+#: templates/js/translated/company.js:1271
+msgid "Manufacturer part actions"
+msgstr ""
+
+#: templates/js/translated/company.js:1290
msgid "No manufacturer parts found"
msgstr ""
-#: templates/js/translated/company.js:937
-#: templates/js/translated/company.js:1177 templates/js/translated/part.js:776
-#: templates/js/translated/part.js:1184
+#: templates/js/translated/company.js:1310
+#: templates/js/translated/company.js:1598 templates/js/translated/part.js:775
+#: templates/js/translated/part.js:1183
msgid "Template part"
msgstr ""
-#: templates/js/translated/company.js:941
-#: templates/js/translated/company.js:1181 templates/js/translated/part.js:780
-#: templates/js/translated/part.js:1188
+#: templates/js/translated/company.js:1314
+#: templates/js/translated/company.js:1602 templates/js/translated/part.js:779
+#: templates/js/translated/part.js:1187
msgid "Assembled part"
msgstr ""
-#: templates/js/translated/company.js:1061 templates/js/translated/part.js:1437
+#: templates/js/translated/company.js:1434 templates/js/translated/part.js:1436
msgid "No parameters found"
msgstr ""
-#: templates/js/translated/company.js:1096 templates/js/translated/part.js:1500
+#: templates/js/translated/company.js:1469 templates/js/translated/part.js:1499
msgid "Edit parameter"
msgstr ""
-#: templates/js/translated/company.js:1097 templates/js/translated/part.js:1501
+#: templates/js/translated/company.js:1470 templates/js/translated/part.js:1500
msgid "Delete parameter"
msgstr ""
-#: templates/js/translated/company.js:1114 templates/js/translated/part.js:1407
+#: templates/js/translated/company.js:1487 templates/js/translated/part.js:1406
msgid "Edit Parameter"
msgstr ""
-#: templates/js/translated/company.js:1123 templates/js/translated/part.js:1522
+#: templates/js/translated/company.js:1496 templates/js/translated/part.js:1521
msgid "Delete Parameter"
msgstr ""
-#: templates/js/translated/company.js:1156
+#: templates/js/translated/company.js:1527
+msgid "Delete supplier parts"
+msgstr ""
+
+#: templates/js/translated/company.js:1577
msgid "No supplier parts found"
msgstr ""
-#: templates/js/translated/company.js:1274
+#: templates/js/translated/company.js:1695
msgid "Base Units"
msgstr ""
-#: templates/js/translated/company.js:1304
+#: templates/js/translated/company.js:1725
msgid "Availability"
msgstr ""
-#: templates/js/translated/company.js:1335
+#: templates/js/translated/company.js:1756
msgid "Edit supplier part"
msgstr ""
-#: templates/js/translated/company.js:1336
+#: templates/js/translated/company.js:1757
msgid "Delete supplier part"
msgstr ""
-#: templates/js/translated/company.js:1389
+#: templates/js/translated/company.js:1810
#: templates/js/translated/pricing.js:694
msgid "Delete Price Break"
msgstr ""
-#: templates/js/translated/company.js:1399
+#: templates/js/translated/company.js:1820
#: templates/js/translated/pricing.js:712
msgid "Edit Price Break"
msgstr ""
-#: templates/js/translated/company.js:1414
+#: templates/js/translated/company.js:1835
msgid "No price break information found"
msgstr ""
-#: templates/js/translated/company.js:1443
+#: templates/js/translated/company.js:1864
msgid "Last updated"
msgstr ""
-#: templates/js/translated/company.js:1450
+#: templates/js/translated/company.js:1871
msgid "Edit price break"
msgstr ""
-#: templates/js/translated/company.js:1451
+#: templates/js/translated/company.js:1872
msgid "Delete price break"
msgstr ""
-#: templates/js/translated/filters.js:186
-#: templates/js/translated/filters.js:550
+#: templates/js/translated/filters.js:187
+#: templates/js/translated/filters.js:673
msgid "true"
msgstr ""
-#: templates/js/translated/filters.js:190
-#: templates/js/translated/filters.js:551
+#: templates/js/translated/filters.js:191
+#: templates/js/translated/filters.js:674
msgid "false"
msgstr ""
-#: templates/js/translated/filters.js:214
+#: templates/js/translated/filters.js:215
msgid "Select filter"
msgstr ""
-#: templates/js/translated/filters.js:328
+#: templates/js/translated/filters.js:438
msgid "Print Labels"
msgstr ""
-#: templates/js/translated/filters.js:332
+#: templates/js/translated/filters.js:442
msgid "Print Reports"
msgstr ""
-#: templates/js/translated/filters.js:344
+#: templates/js/translated/filters.js:454
msgid "Download table data"
msgstr ""
-#: templates/js/translated/filters.js:351
+#: templates/js/translated/filters.js:461
msgid "Reload table data"
msgstr ""
-#: templates/js/translated/filters.js:360
+#: templates/js/translated/filters.js:470
msgid "Add new filter"
msgstr ""
-#: templates/js/translated/filters.js:368
+#: templates/js/translated/filters.js:478
msgid "Clear all filters"
msgstr ""
-#: templates/js/translated/filters.js:460
+#: templates/js/translated/filters.js:583
msgid "Create filter"
msgstr ""
@@ -10497,6 +10620,12 @@ msgstr ""
msgid "View operation not allowed"
msgstr ""
+#: templates/js/translated/forms.js:506 templates/js/translated/helpers.js:105
+#: templates/js/translated/part.js:369 templates/js/translated/pricing.js:629
+#: templates/js/translated/stock.js:215 users/models.py:253
+msgid "Delete"
+msgstr ""
+
#: templates/js/translated/forms.js:752
msgid "Keep this form open"
msgstr ""
@@ -10514,23 +10643,23 @@ msgstr ""
msgid "No results found"
msgstr ""
-#: templates/js/translated/forms.js:2071 templates/js/translated/search.js:281
+#: templates/js/translated/forms.js:2071 templates/js/translated/search.js:239
msgid "Searching"
msgstr ""
-#: templates/js/translated/forms.js:2276
+#: templates/js/translated/forms.js:2285
msgid "Clear input"
msgstr ""
-#: templates/js/translated/forms.js:2733
+#: templates/js/translated/forms.js:2742
msgid "File Column"
msgstr ""
-#: templates/js/translated/forms.js:2733
+#: templates/js/translated/forms.js:2742
msgid "Field Name"
msgstr ""
-#: templates/js/translated/forms.js:2745
+#: templates/js/translated/forms.js:2754
msgid "Select Columns"
msgstr ""
@@ -10550,6 +10679,14 @@ msgstr ""
msgid "False"
msgstr ""
+#: templates/js/translated/index.js:99
+msgid "No parts required for builds"
+msgstr ""
+
+#: templates/js/translated/index.js:125
+msgid "Allocated Stock"
+msgstr ""
+
#: templates/js/translated/label.js:58
msgid "Select Printer"
msgstr ""
@@ -10651,7 +10788,7 @@ msgstr ""
#: templates/js/translated/news.js:38
#: templates/js/translated/notification.js:45
-#: templates/js/translated/part.js:1577
+#: templates/js/translated/part.js:1576
msgid "ID"
msgstr ""
@@ -10700,7 +10837,7 @@ msgid "Delete Line"
msgstr ""
#: templates/js/translated/order.js:281
-#: templates/js/translated/purchase_order.js:1958
+#: templates/js/translated/purchase_order.js:1968
msgid "No line items found"
msgstr ""
@@ -10716,363 +10853,355 @@ msgstr ""
msgid "Delete line"
msgstr ""
-#: templates/js/translated/part.js:91
+#: templates/js/translated/part.js:90
msgid "Part Attributes"
msgstr ""
-#: templates/js/translated/part.js:95
+#: templates/js/translated/part.js:94
msgid "Part Creation Options"
msgstr ""
-#: templates/js/translated/part.js:99
+#: templates/js/translated/part.js:98
msgid "Part Duplication Options"
msgstr ""
-#: templates/js/translated/part.js:122
+#: templates/js/translated/part.js:121
msgid "Add Part Category"
msgstr ""
-#: templates/js/translated/part.js:294
+#: templates/js/translated/part.js:293
msgid "Parent part category"
msgstr ""
-#: templates/js/translated/part.js:310 templates/js/translated/stock.js:147
+#: templates/js/translated/part.js:309 templates/js/translated/stock.js:146
msgid "Icon (optional) - Explore all available icons on"
msgstr ""
-#: templates/js/translated/part.js:330
+#: templates/js/translated/part.js:329
msgid "Create Part Category"
msgstr ""
-#: templates/js/translated/part.js:333
+#: templates/js/translated/part.js:332
msgid "Create new category after this one"
msgstr ""
-#: templates/js/translated/part.js:334
+#: templates/js/translated/part.js:333
msgid "Part category created"
msgstr ""
-#: templates/js/translated/part.js:348
+#: templates/js/translated/part.js:347
msgid "Edit Part Category"
msgstr ""
-#: templates/js/translated/part.js:361
+#: templates/js/translated/part.js:360
msgid "Are you sure you want to delete this part category?"
msgstr ""
-#: templates/js/translated/part.js:366
+#: templates/js/translated/part.js:365
msgid "Move to parent category"
msgstr ""
-#: templates/js/translated/part.js:375
+#: templates/js/translated/part.js:374
msgid "Delete Part Category"
msgstr ""
-#: templates/js/translated/part.js:379
+#: templates/js/translated/part.js:378
msgid "Action for parts in this category"
msgstr ""
-#: templates/js/translated/part.js:384
+#: templates/js/translated/part.js:383
msgid "Action for child categories"
msgstr ""
-#: templates/js/translated/part.js:408
+#: templates/js/translated/part.js:407
msgid "Create Part"
msgstr ""
-#: templates/js/translated/part.js:410
+#: templates/js/translated/part.js:409
msgid "Create another part after this one"
msgstr "続けて別のパーツを作る"
-#: templates/js/translated/part.js:411
+#: templates/js/translated/part.js:410
msgid "Part created successfully"
msgstr ""
-#: templates/js/translated/part.js:439
+#: templates/js/translated/part.js:438
msgid "Edit Part"
msgstr ""
-#: templates/js/translated/part.js:441
+#: templates/js/translated/part.js:440
msgid "Part edited"
msgstr ""
-#: templates/js/translated/part.js:452
+#: templates/js/translated/part.js:451
msgid "Create Part Variant"
msgstr ""
-#: templates/js/translated/part.js:509
+#: templates/js/translated/part.js:508
msgid "Active Part"
msgstr ""
-#: templates/js/translated/part.js:510
+#: templates/js/translated/part.js:509
msgid "Part cannot be deleted as it is currently active"
msgstr ""
-#: templates/js/translated/part.js:524
+#: templates/js/translated/part.js:523
msgid "Deleting this part cannot be reversed"
msgstr ""
-#: templates/js/translated/part.js:526
+#: templates/js/translated/part.js:525
msgid "Any stock items for this part will be deleted"
msgstr ""
-#: templates/js/translated/part.js:527
+#: templates/js/translated/part.js:526
msgid "This part will be removed from any Bills of Material"
msgstr ""
-#: templates/js/translated/part.js:528
+#: templates/js/translated/part.js:527
msgid "All manufacturer and supplier information for this part will be deleted"
msgstr ""
-#: templates/js/translated/part.js:535
+#: templates/js/translated/part.js:534
msgid "Delete Part"
msgstr ""
-#: templates/js/translated/part.js:571
+#: templates/js/translated/part.js:570
msgid "You are subscribed to notifications for this item"
msgstr ""
-#: templates/js/translated/part.js:573
+#: templates/js/translated/part.js:572
msgid "You have subscribed to notifications for this item"
msgstr ""
-#: templates/js/translated/part.js:578
+#: templates/js/translated/part.js:577
msgid "Subscribe to notifications for this item"
msgstr ""
-#: templates/js/translated/part.js:580
+#: templates/js/translated/part.js:579
msgid "You have unsubscribed to notifications for this item"
msgstr ""
-#: templates/js/translated/part.js:597
+#: templates/js/translated/part.js:596
msgid "Validating the BOM will mark each line item as valid"
msgstr ""
-#: templates/js/translated/part.js:607
+#: templates/js/translated/part.js:606
msgid "Validate Bill of Materials"
msgstr ""
-#: templates/js/translated/part.js:610
+#: templates/js/translated/part.js:609
msgid "Validated Bill of Materials"
msgstr ""
-#: templates/js/translated/part.js:635
+#: templates/js/translated/part.js:634
msgid "Copy Bill of Materials"
msgstr ""
-#: templates/js/translated/part.js:663
-#: templates/js/translated/table_filters.js:660
+#: templates/js/translated/part.js:662
+#: templates/js/translated/table_filters.js:682
msgid "Low stock"
msgstr ""
-#: templates/js/translated/part.js:666
+#: templates/js/translated/part.js:665
msgid "No stock available"
msgstr ""
-#: templates/js/translated/part.js:726
+#: templates/js/translated/part.js:725
msgid "Demand"
msgstr ""
-#: templates/js/translated/part.js:749
+#: templates/js/translated/part.js:748
msgid "Unit"
msgstr ""
-#: templates/js/translated/part.js:768 templates/js/translated/part.js:1176
-msgid "Trackable part"
-msgstr ""
-
-#: templates/js/translated/part.js:772 templates/js/translated/part.js:1180
+#: templates/js/translated/part.js:771 templates/js/translated/part.js:1179
msgid "Virtual part"
msgstr ""
-#: templates/js/translated/part.js:784
+#: templates/js/translated/part.js:783
msgid "Subscribed part"
msgstr ""
-#: templates/js/translated/part.js:788
+#: templates/js/translated/part.js:787
msgid "Salable part"
msgstr ""
-#: templates/js/translated/part.js:863
+#: templates/js/translated/part.js:862
msgid "Schedule generation of a new stocktake report."
msgstr ""
-#: templates/js/translated/part.js:863
+#: templates/js/translated/part.js:862
msgid "Once complete, the stocktake report will be available for download."
msgstr ""
-#: templates/js/translated/part.js:871
+#: templates/js/translated/part.js:870
msgid "Generate Stocktake Report"
msgstr ""
-#: templates/js/translated/part.js:875
+#: templates/js/translated/part.js:874
msgid "Stocktake report scheduled"
msgstr ""
-#: templates/js/translated/part.js:1024
+#: templates/js/translated/part.js:1023
msgid "No stocktake information available"
msgstr ""
-#: templates/js/translated/part.js:1082 templates/js/translated/part.js:1118
+#: templates/js/translated/part.js:1081 templates/js/translated/part.js:1117
msgid "Edit Stocktake Entry"
msgstr ""
-#: templates/js/translated/part.js:1086 templates/js/translated/part.js:1128
+#: templates/js/translated/part.js:1085 templates/js/translated/part.js:1127
msgid "Delete Stocktake Entry"
msgstr ""
-#: templates/js/translated/part.js:1255
+#: templates/js/translated/part.js:1254
msgid "No variants found"
msgstr ""
-#: templates/js/translated/part.js:1572
+#: templates/js/translated/part.js:1571
msgid "No part parameter templates found"
msgstr ""
-#: templates/js/translated/part.js:1635
+#: templates/js/translated/part.js:1634
msgid "Edit Part Parameter Template"
msgstr ""
-#: templates/js/translated/part.js:1647
+#: templates/js/translated/part.js:1646
msgid "Any parameters which reference this template will also be deleted"
msgstr ""
-#: templates/js/translated/part.js:1655
+#: templates/js/translated/part.js:1654
msgid "Delete Part Parameter Template"
msgstr ""
-#: templates/js/translated/part.js:1689
-#: templates/js/translated/purchase_order.js:1618
+#: templates/js/translated/part.js:1688
+#: templates/js/translated/purchase_order.js:1633
msgid "No purchase orders found"
msgstr ""
-#: templates/js/translated/part.js:1832
-#: templates/js/translated/purchase_order.js:2121
-#: templates/js/translated/return_order.js:740
-#: templates/js/translated/sales_order.js:1855
+#: templates/js/translated/part.js:1831
+#: templates/js/translated/purchase_order.js:2131
+#: templates/js/translated/return_order.js:752
+#: templates/js/translated/sales_order.js:1867
msgid "This line item is overdue"
msgstr ""
-#: templates/js/translated/part.js:1877
-#: templates/js/translated/purchase_order.js:2188
+#: templates/js/translated/part.js:1876
+#: templates/js/translated/purchase_order.js:2198
msgid "Receive line item"
msgstr ""
-#: templates/js/translated/part.js:1944
+#: templates/js/translated/part.js:1943
msgid "Delete part relationship"
msgstr ""
-#: templates/js/translated/part.js:1966
+#: templates/js/translated/part.js:1965
msgid "Delete Part Relationship"
msgstr ""
-#: templates/js/translated/part.js:2054 templates/js/translated/part.js:2366
+#: templates/js/translated/part.js:2053 templates/js/translated/part.js:2442
msgid "No parts found"
msgstr ""
-#: templates/js/translated/part.js:2192
-msgid "parts"
-msgstr ""
-
-#: templates/js/translated/part.js:2276
-msgid "No category"
-msgstr ""
-
-#: templates/js/translated/part.js:2390 templates/js/translated/part.js:2611
-#: templates/js/translated/stock.js:2417
-msgid "Display as list"
-msgstr ""
-
-#: templates/js/translated/part.js:2406
-msgid "Display as grid"
-msgstr ""
-
-#: templates/js/translated/part.js:2472
+#: templates/js/translated/part.js:2174
msgid "Set the part category for the selected parts"
msgstr ""
-#: templates/js/translated/part.js:2477
+#: templates/js/translated/part.js:2179
msgid "Set Part Category"
msgstr ""
+#: templates/js/translated/part.js:2204
+msgid "Set category"
+msgstr ""
+
+#: templates/js/translated/part.js:2259
+msgid "parts"
+msgstr ""
+
+#: templates/js/translated/part.js:2352
+msgid "No category"
+msgstr ""
+
+#: templates/js/translated/part.js:2466 templates/js/translated/part.js:2596
+#: templates/js/translated/stock.js:2548
+msgid "Display as list"
+msgstr ""
+
#: templates/js/translated/part.js:2482
-msgid "Select Part Category"
+msgid "Display as grid"
msgstr ""
-#: templates/js/translated/part.js:2495
-msgid "Category is required"
-msgstr ""
-
-#: templates/js/translated/part.js:2595
+#: templates/js/translated/part.js:2580
msgid "No subcategories found"
msgstr ""
-#: templates/js/translated/part.js:2631 templates/js/translated/stock.js:2437
+#: templates/js/translated/part.js:2616 templates/js/translated/stock.js:2568
msgid "Display as tree"
msgstr ""
-#: templates/js/translated/part.js:2711
+#: templates/js/translated/part.js:2696
msgid "Load Subcategories"
msgstr ""
-#: templates/js/translated/part.js:2727
+#: templates/js/translated/part.js:2712
msgid "Subscribed category"
msgstr ""
-#: templates/js/translated/part.js:2807
+#: templates/js/translated/part.js:2792
msgid "No test templates matching query"
msgstr ""
-#: templates/js/translated/part.js:2858 templates/js/translated/stock.js:1380
+#: templates/js/translated/part.js:2843 templates/js/translated/stock.js:1379
msgid "Edit test result"
msgstr ""
-#: templates/js/translated/part.js:2859 templates/js/translated/stock.js:1381
-#: templates/js/translated/stock.js:1643
+#: templates/js/translated/part.js:2844 templates/js/translated/stock.js:1380
+#: templates/js/translated/stock.js:1642
msgid "Delete test result"
msgstr ""
-#: templates/js/translated/part.js:2863
+#: templates/js/translated/part.js:2848
msgid "This test is defined for a parent part"
msgstr ""
-#: templates/js/translated/part.js:2879
+#: templates/js/translated/part.js:2864
msgid "Edit Test Result Template"
msgstr ""
-#: templates/js/translated/part.js:2893
+#: templates/js/translated/part.js:2878
msgid "Delete Test Result Template"
msgstr ""
-#: templates/js/translated/part.js:2972 templates/js/translated/part.js:2973
+#: templates/js/translated/part.js:2957 templates/js/translated/part.js:2958
msgid "No date specified"
msgstr ""
-#: templates/js/translated/part.js:2975
+#: templates/js/translated/part.js:2960
msgid "Specified date is in the past"
msgstr ""
-#: templates/js/translated/part.js:2981
+#: templates/js/translated/part.js:2966
msgid "Speculative"
msgstr ""
-#: templates/js/translated/part.js:3031
+#: templates/js/translated/part.js:3016
msgid "No scheduling information available for this part"
msgstr ""
-#: templates/js/translated/part.js:3037
+#: templates/js/translated/part.js:3022
msgid "Error fetching scheduling information for this part"
msgstr ""
-#: templates/js/translated/part.js:3133
+#: templates/js/translated/part.js:3118
msgid "Scheduled Stock Quantities"
msgstr ""
-#: templates/js/translated/part.js:3149
+#: templates/js/translated/part.js:3134
msgid "Maximum Quantity"
msgstr ""
-#: templates/js/translated/part.js:3194
+#: templates/js/translated/part.js:3179
msgid "Minimum Stock Level"
msgstr ""
@@ -11168,234 +11297,234 @@ msgstr ""
msgid "Variant Part"
msgstr ""
-#: templates/js/translated/purchase_order.js:155
+#: templates/js/translated/purchase_order.js:166
msgid "Select purchase order to duplicate"
msgstr ""
-#: templates/js/translated/purchase_order.js:162
+#: templates/js/translated/purchase_order.js:173
msgid "Duplicate Line Items"
msgstr ""
-#: templates/js/translated/purchase_order.js:163
+#: templates/js/translated/purchase_order.js:174
msgid "Duplicate all line items from the selected order"
msgstr ""
-#: templates/js/translated/purchase_order.js:170
+#: templates/js/translated/purchase_order.js:181
msgid "Duplicate Extra Lines"
msgstr ""
-#: templates/js/translated/purchase_order.js:171
+#: templates/js/translated/purchase_order.js:182
msgid "Duplicate extra line items from the selected order"
msgstr ""
-#: templates/js/translated/purchase_order.js:192
+#: templates/js/translated/purchase_order.js:203
msgid "Edit Purchase Order"
msgstr ""
-#: templates/js/translated/purchase_order.js:209
+#: templates/js/translated/purchase_order.js:220
msgid "Duplication Options"
msgstr ""
-#: templates/js/translated/purchase_order.js:436
+#: templates/js/translated/purchase_order.js:447
msgid "Complete Purchase Order"
msgstr ""
-#: templates/js/translated/purchase_order.js:453
-#: templates/js/translated/return_order.js:195
-#: templates/js/translated/sales_order.js:485
+#: templates/js/translated/purchase_order.js:464
+#: templates/js/translated/return_order.js:207
+#: templates/js/translated/sales_order.js:497
msgid "Mark this order as complete?"
msgstr ""
-#: templates/js/translated/purchase_order.js:459
+#: templates/js/translated/purchase_order.js:470
msgid "All line items have been received"
msgstr ""
-#: templates/js/translated/purchase_order.js:464
+#: templates/js/translated/purchase_order.js:475
msgid "This order has line items which have not been marked as received."
msgstr ""
-#: templates/js/translated/purchase_order.js:465
-#: templates/js/translated/sales_order.js:499
+#: templates/js/translated/purchase_order.js:476
+#: templates/js/translated/sales_order.js:511
msgid "Completing this order means that the order and line items will no longer be editable."
msgstr ""
-#: templates/js/translated/purchase_order.js:488
+#: templates/js/translated/purchase_order.js:499
msgid "Cancel Purchase Order"
msgstr ""
-#: templates/js/translated/purchase_order.js:493
+#: templates/js/translated/purchase_order.js:504
msgid "Are you sure you wish to cancel this purchase order?"
msgstr ""
-#: templates/js/translated/purchase_order.js:499
+#: templates/js/translated/purchase_order.js:510
msgid "This purchase order can not be cancelled"
msgstr ""
-#: templates/js/translated/purchase_order.js:520
-#: templates/js/translated/return_order.js:149
+#: templates/js/translated/purchase_order.js:531
+#: templates/js/translated/return_order.js:161
msgid "After placing this order, line items will no longer be editable."
msgstr ""
-#: templates/js/translated/purchase_order.js:525
+#: templates/js/translated/purchase_order.js:536
msgid "Issue Purchase Order"
msgstr ""
-#: templates/js/translated/purchase_order.js:617
+#: templates/js/translated/purchase_order.js:628
msgid "At least one purchaseable part must be selected"
msgstr ""
-#: templates/js/translated/purchase_order.js:642
+#: templates/js/translated/purchase_order.js:653
msgid "Quantity to order"
msgstr ""
-#: templates/js/translated/purchase_order.js:651
+#: templates/js/translated/purchase_order.js:662
msgid "New supplier part"
msgstr ""
-#: templates/js/translated/purchase_order.js:669
+#: templates/js/translated/purchase_order.js:680
msgid "New purchase order"
msgstr ""
-#: templates/js/translated/purchase_order.js:701
+#: templates/js/translated/purchase_order.js:712
msgid "Add to purchase order"
msgstr ""
-#: templates/js/translated/purchase_order.js:845
+#: templates/js/translated/purchase_order.js:860
msgid "No matching supplier parts"
msgstr ""
-#: templates/js/translated/purchase_order.js:864
+#: templates/js/translated/purchase_order.js:879
msgid "No matching purchase orders"
msgstr ""
-#: templates/js/translated/purchase_order.js:1043
+#: templates/js/translated/purchase_order.js:1058
msgid "Select Line Items"
msgstr ""
-#: templates/js/translated/purchase_order.js:1044
-#: templates/js/translated/return_order.js:480
+#: templates/js/translated/purchase_order.js:1059
+#: templates/js/translated/return_order.js:492
msgid "At least one line item must be selected"
msgstr ""
-#: templates/js/translated/purchase_order.js:1074
+#: templates/js/translated/purchase_order.js:1089
msgid "Received Quantity"
msgstr ""
-#: templates/js/translated/purchase_order.js:1085
+#: templates/js/translated/purchase_order.js:1100
msgid "Quantity to receive"
msgstr ""
-#: templates/js/translated/purchase_order.js:1161
+#: templates/js/translated/purchase_order.js:1176
msgid "Stock Status"
msgstr ""
-#: templates/js/translated/purchase_order.js:1175
+#: templates/js/translated/purchase_order.js:1190
msgid "Add barcode"
msgstr ""
-#: templates/js/translated/purchase_order.js:1176
+#: templates/js/translated/purchase_order.js:1191
msgid "Remove barcode"
msgstr ""
-#: templates/js/translated/purchase_order.js:1179
+#: templates/js/translated/purchase_order.js:1194
msgid "Specify location"
msgstr ""
-#: templates/js/translated/purchase_order.js:1187
+#: templates/js/translated/purchase_order.js:1202
msgid "Add batch code"
msgstr ""
-#: templates/js/translated/purchase_order.js:1198
+#: templates/js/translated/purchase_order.js:1213
msgid "Add serial numbers"
msgstr ""
-#: templates/js/translated/purchase_order.js:1250
+#: templates/js/translated/purchase_order.js:1265
msgid "Serials"
msgstr ""
-#: templates/js/translated/purchase_order.js:1275
+#: templates/js/translated/purchase_order.js:1290
msgid "Order Code"
msgstr ""
-#: templates/js/translated/purchase_order.js:1277
+#: templates/js/translated/purchase_order.js:1292
msgid "Quantity to Receive"
msgstr ""
-#: templates/js/translated/purchase_order.js:1299
-#: templates/js/translated/return_order.js:545
+#: templates/js/translated/purchase_order.js:1314
+#: templates/js/translated/return_order.js:557
msgid "Confirm receipt of items"
msgstr ""
-#: templates/js/translated/purchase_order.js:1300
+#: templates/js/translated/purchase_order.js:1315
msgid "Receive Purchase Order Items"
msgstr ""
-#: templates/js/translated/purchase_order.js:1368
+#: templates/js/translated/purchase_order.js:1383
msgid "Scan Item Barcode"
msgstr ""
-#: templates/js/translated/purchase_order.js:1369
+#: templates/js/translated/purchase_order.js:1384
msgid "Scan barcode on incoming item (must not match any existing stock items)"
msgstr ""
-#: templates/js/translated/purchase_order.js:1383
+#: templates/js/translated/purchase_order.js:1398
msgid "Invalid barcode data"
msgstr ""
-#: templates/js/translated/purchase_order.js:1645
-#: templates/js/translated/return_order.js:274
-#: templates/js/translated/sales_order.js:762
-#: templates/js/translated/sales_order.js:986
+#: templates/js/translated/purchase_order.js:1660
+#: templates/js/translated/return_order.js:286
+#: templates/js/translated/sales_order.js:774
+#: templates/js/translated/sales_order.js:998
msgid "Order is overdue"
msgstr ""
-#: templates/js/translated/purchase_order.js:1707
-#: templates/js/translated/return_order.js:342
-#: templates/js/translated/sales_order.js:839
-#: templates/js/translated/sales_order.js:999
+#: templates/js/translated/purchase_order.js:1722
+#: templates/js/translated/return_order.js:354
+#: templates/js/translated/sales_order.js:851
+#: templates/js/translated/sales_order.js:1011
msgid "Items"
msgstr ""
-#: templates/js/translated/purchase_order.js:1806
+#: templates/js/translated/purchase_order.js:1821
msgid "All selected Line items will be deleted"
msgstr ""
-#: templates/js/translated/purchase_order.js:1824
+#: templates/js/translated/purchase_order.js:1839
msgid "Delete selected Line items?"
msgstr ""
-#: templates/js/translated/purchase_order.js:1884
-#: templates/js/translated/sales_order.js:2047
+#: templates/js/translated/purchase_order.js:1894
+#: templates/js/translated/sales_order.js:2059
msgid "Duplicate Line Item"
msgstr ""
-#: templates/js/translated/purchase_order.js:1899
-#: templates/js/translated/return_order.js:464
-#: templates/js/translated/return_order.js:653
-#: templates/js/translated/sales_order.js:2060
+#: templates/js/translated/purchase_order.js:1909
+#: templates/js/translated/return_order.js:476
+#: templates/js/translated/return_order.js:665
+#: templates/js/translated/sales_order.js:2072
msgid "Edit Line Item"
msgstr ""
-#: templates/js/translated/purchase_order.js:1910
-#: templates/js/translated/return_order.js:666
-#: templates/js/translated/sales_order.js:2071
+#: templates/js/translated/purchase_order.js:1920
+#: templates/js/translated/return_order.js:678
+#: templates/js/translated/sales_order.js:2083
msgid "Delete Line Item"
msgstr ""
-#: templates/js/translated/purchase_order.js:2192
-#: templates/js/translated/sales_order.js:2001
+#: templates/js/translated/purchase_order.js:2202
+#: templates/js/translated/sales_order.js:2013
msgid "Duplicate line item"
msgstr ""
-#: templates/js/translated/purchase_order.js:2193
-#: templates/js/translated/return_order.js:785
-#: templates/js/translated/sales_order.js:2002
+#: templates/js/translated/purchase_order.js:2203
+#: templates/js/translated/return_order.js:797
+#: templates/js/translated/sales_order.js:2014
msgid "Edit line item"
msgstr ""
-#: templates/js/translated/purchase_order.js:2194
-#: templates/js/translated/return_order.js:789
-#: templates/js/translated/sales_order.js:2008
+#: templates/js/translated/purchase_order.js:2204
+#: templates/js/translated/return_order.js:801
+#: templates/js/translated/sales_order.js:2020
msgid "Delete line item"
msgstr ""
@@ -11424,941 +11553,973 @@ msgstr ""
msgid "Add Customer"
msgstr ""
-#: templates/js/translated/return_order.js:119
+#: templates/js/translated/return_order.js:131
msgid "Create Return Order"
msgstr ""
-#: templates/js/translated/return_order.js:134
+#: templates/js/translated/return_order.js:146
msgid "Edit Return Order"
msgstr ""
-#: templates/js/translated/return_order.js:154
+#: templates/js/translated/return_order.js:166
msgid "Issue Return Order"
msgstr ""
-#: templates/js/translated/return_order.js:171
+#: templates/js/translated/return_order.js:183
msgid "Are you sure you wish to cancel this Return Order?"
msgstr ""
-#: templates/js/translated/return_order.js:178
+#: templates/js/translated/return_order.js:190
msgid "Cancel Return Order"
msgstr ""
-#: templates/js/translated/return_order.js:203
+#: templates/js/translated/return_order.js:215
msgid "Complete Return Order"
msgstr ""
-#: templates/js/translated/return_order.js:251
+#: templates/js/translated/return_order.js:263
msgid "No return orders found"
msgstr ""
-#: templates/js/translated/return_order.js:288
-#: templates/js/translated/sales_order.js:776
+#: templates/js/translated/return_order.js:300
+#: templates/js/translated/sales_order.js:788
msgid "Invalid Customer"
msgstr ""
-#: templates/js/translated/return_order.js:546
+#: templates/js/translated/return_order.js:558
msgid "Receive Return Order Items"
msgstr ""
-#: templates/js/translated/return_order.js:677
-#: templates/js/translated/sales_order.js:2207
+#: templates/js/translated/return_order.js:689
+#: templates/js/translated/sales_order.js:2219
msgid "No matching line items"
msgstr ""
-#: templates/js/translated/return_order.js:782
+#: templates/js/translated/return_order.js:794
msgid "Mark item as received"
msgstr ""
-#: templates/js/translated/sales_order.js:146
+#: templates/js/translated/sales_order.js:158
msgid "Create Sales Order"
msgstr ""
-#: templates/js/translated/sales_order.js:161
+#: templates/js/translated/sales_order.js:173
msgid "Edit Sales Order"
msgstr ""
-#: templates/js/translated/sales_order.js:276
+#: templates/js/translated/sales_order.js:288
msgid "No stock items have been allocated to this shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:281
+#: templates/js/translated/sales_order.js:293
msgid "The following stock items will be shipped"
msgstr ""
-#: templates/js/translated/sales_order.js:321
+#: templates/js/translated/sales_order.js:333
msgid "Complete Shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:345
+#: templates/js/translated/sales_order.js:357
msgid "Confirm Shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:401
+#: templates/js/translated/sales_order.js:413
msgid "No pending shipments found"
msgstr ""
-#: templates/js/translated/sales_order.js:405
+#: templates/js/translated/sales_order.js:417
msgid "No stock items have been allocated to pending shipments"
msgstr ""
-#: templates/js/translated/sales_order.js:415
+#: templates/js/translated/sales_order.js:427
msgid "Complete Shipments"
msgstr ""
-#: templates/js/translated/sales_order.js:437
+#: templates/js/translated/sales_order.js:449
msgid "Skip"
msgstr ""
-#: templates/js/translated/sales_order.js:498
+#: templates/js/translated/sales_order.js:510
msgid "This order has line items which have not been completed."
msgstr ""
-#: templates/js/translated/sales_order.js:520
+#: templates/js/translated/sales_order.js:532
msgid "Issue this Sales Order?"
msgstr ""
-#: templates/js/translated/sales_order.js:525
+#: templates/js/translated/sales_order.js:537
msgid "Issue Sales Order"
msgstr ""
-#: templates/js/translated/sales_order.js:544
+#: templates/js/translated/sales_order.js:556
msgid "Cancel Sales Order"
msgstr ""
-#: templates/js/translated/sales_order.js:549
+#: templates/js/translated/sales_order.js:561
msgid "Cancelling this order means that the order will no longer be editable."
msgstr ""
-#: templates/js/translated/sales_order.js:603
+#: templates/js/translated/sales_order.js:615
msgid "Create New Shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:713
+#: templates/js/translated/sales_order.js:725
msgid "No sales orders found"
msgstr ""
-#: templates/js/translated/sales_order.js:896
+#: templates/js/translated/sales_order.js:908
msgid "Edit shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:899
+#: templates/js/translated/sales_order.js:911
msgid "Complete shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:904
+#: templates/js/translated/sales_order.js:916
msgid "Delete shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:921
+#: templates/js/translated/sales_order.js:933
msgid "Edit Shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:936
+#: templates/js/translated/sales_order.js:948
msgid "Delete Shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:969
+#: templates/js/translated/sales_order.js:981
msgid "No matching shipments found"
msgstr ""
-#: templates/js/translated/sales_order.js:994
+#: templates/js/translated/sales_order.js:1006
msgid "Shipment Reference"
msgstr ""
-#: templates/js/translated/sales_order.js:1018
-#: templates/js/translated/sales_order.js:1515
+#: templates/js/translated/sales_order.js:1030
+#: templates/js/translated/sales_order.js:1527
msgid "Not shipped"
msgstr ""
-#: templates/js/translated/sales_order.js:1036
+#: templates/js/translated/sales_order.js:1048
msgid "Tracking"
msgstr ""
-#: templates/js/translated/sales_order.js:1040
+#: templates/js/translated/sales_order.js:1052
msgid "Invoice"
msgstr ""
-#: templates/js/translated/sales_order.js:1207
+#: templates/js/translated/sales_order.js:1219
msgid "Add Shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:1258
+#: templates/js/translated/sales_order.js:1270
msgid "Confirm stock allocation"
msgstr ""
-#: templates/js/translated/sales_order.js:1259
+#: templates/js/translated/sales_order.js:1271
msgid "Allocate Stock Items to Sales Order"
msgstr ""
-#: templates/js/translated/sales_order.js:1463
+#: templates/js/translated/sales_order.js:1475
msgid "No sales order allocations found"
msgstr ""
-#: templates/js/translated/sales_order.js:1555
+#: templates/js/translated/sales_order.js:1567
msgid "Edit Stock Allocation"
msgstr ""
-#: templates/js/translated/sales_order.js:1569
+#: templates/js/translated/sales_order.js:1581
msgid "Confirm Delete Operation"
msgstr ""
-#: templates/js/translated/sales_order.js:1570
+#: templates/js/translated/sales_order.js:1582
msgid "Delete Stock Allocation"
msgstr ""
-#: templates/js/translated/sales_order.js:1609
-#: templates/js/translated/sales_order.js:1696
-#: templates/js/translated/stock.js:1688
+#: templates/js/translated/sales_order.js:1621
+#: templates/js/translated/sales_order.js:1708
+#: templates/js/translated/stock.js:1687
msgid "Shipped to customer"
msgstr ""
-#: templates/js/translated/sales_order.js:1617
-#: templates/js/translated/sales_order.js:1705
+#: templates/js/translated/sales_order.js:1629
+#: templates/js/translated/sales_order.js:1717
msgid "Stock location not specified"
msgstr ""
-#: templates/js/translated/sales_order.js:1985
+#: templates/js/translated/sales_order.js:1997
msgid "Allocate serial numbers"
msgstr ""
-#: templates/js/translated/sales_order.js:1989
+#: templates/js/translated/sales_order.js:2001
msgid "Purchase stock"
msgstr ""
-#: templates/js/translated/sales_order.js:1998
-#: templates/js/translated/sales_order.js:2185
+#: templates/js/translated/sales_order.js:2010
+#: templates/js/translated/sales_order.js:2197
msgid "Calculate price"
msgstr ""
-#: templates/js/translated/sales_order.js:2012
+#: templates/js/translated/sales_order.js:2024
msgid "Cannot be deleted as items have been shipped"
msgstr ""
-#: templates/js/translated/sales_order.js:2015
+#: templates/js/translated/sales_order.js:2027
msgid "Cannot be deleted as items have been allocated"
msgstr ""
-#: templates/js/translated/sales_order.js:2086
+#: templates/js/translated/sales_order.js:2098
msgid "Allocate Serial Numbers"
msgstr ""
-#: templates/js/translated/sales_order.js:2193
+#: templates/js/translated/sales_order.js:2205
msgid "Update Unit Price"
msgstr ""
-#: templates/js/translated/search.js:312
+#: templates/js/translated/search.js:270
msgid "No results"
msgstr ""
-#: templates/js/translated/search.js:334 templates/search.html:25
+#: templates/js/translated/search.js:292 templates/search.html:25
msgid "Enter search query"
msgstr ""
-#: templates/js/translated/search.js:384
+#: templates/js/translated/search.js:342
msgid "result"
msgstr ""
-#: templates/js/translated/search.js:384
+#: templates/js/translated/search.js:342
msgid "results"
msgstr ""
-#: templates/js/translated/search.js:394
+#: templates/js/translated/search.js:352
msgid "Minimize results"
msgstr ""
-#: templates/js/translated/search.js:397
+#: templates/js/translated/search.js:355
msgid "Remove results"
msgstr ""
-#: templates/js/translated/stock.js:98
+#: templates/js/translated/stock.js:97
msgid "Serialize Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:129
+#: templates/js/translated/stock.js:128
msgid "Confirm Stock Serialization"
msgstr ""
-#: templates/js/translated/stock.js:138
+#: templates/js/translated/stock.js:137
msgid "Parent stock location"
msgstr ""
-#: templates/js/translated/stock.js:173
+#: templates/js/translated/stock.js:172
msgid "Edit Stock Location"
msgstr ""
-#: templates/js/translated/stock.js:188
+#: templates/js/translated/stock.js:187
msgid "New Stock Location"
msgstr ""
-#: templates/js/translated/stock.js:190
+#: templates/js/translated/stock.js:189
msgid "Create another location after this one"
msgstr ""
-#: templates/js/translated/stock.js:191
+#: templates/js/translated/stock.js:190
msgid "Stock location created"
msgstr ""
-#: templates/js/translated/stock.js:205
+#: templates/js/translated/stock.js:204
msgid "Are you sure you want to delete this stock location?"
msgstr ""
-#: templates/js/translated/stock.js:212
+#: templates/js/translated/stock.js:211
msgid "Move to parent stock location"
msgstr ""
-#: templates/js/translated/stock.js:221
+#: templates/js/translated/stock.js:220
msgid "Delete Stock Location"
msgstr ""
-#: templates/js/translated/stock.js:225
+#: templates/js/translated/stock.js:224
msgid "Action for stock items in this stock location"
msgstr ""
-#: templates/js/translated/stock.js:230
+#: templates/js/translated/stock.js:229
msgid "Action for sub-locations"
msgstr ""
-#: templates/js/translated/stock.js:284
+#: templates/js/translated/stock.js:283
msgid "This part cannot be serialized"
msgstr ""
-#: templates/js/translated/stock.js:320
+#: templates/js/translated/stock.js:319
msgid "Add given quantity as packs instead of individual items"
msgstr ""
-#: templates/js/translated/stock.js:329
+#: templates/js/translated/stock.js:328
msgid "Enter initial quantity for this stock item"
msgstr ""
-#: templates/js/translated/stock.js:335
+#: templates/js/translated/stock.js:334
msgid "Enter serial numbers for new stock (or leave blank)"
msgstr ""
-#: templates/js/translated/stock.js:406
+#: templates/js/translated/stock.js:405
msgid "Stock item duplicated"
msgstr ""
-#: templates/js/translated/stock.js:426
+#: templates/js/translated/stock.js:425
msgid "Duplicate Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:442
+#: templates/js/translated/stock.js:441
msgid "Are you sure you want to delete this stock item?"
msgstr ""
-#: templates/js/translated/stock.js:447
+#: templates/js/translated/stock.js:446
msgid "Delete Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:468
+#: templates/js/translated/stock.js:467
msgid "Edit Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:510
+#: templates/js/translated/stock.js:509
msgid "Create another item after this one"
msgstr ""
-#: templates/js/translated/stock.js:522
+#: templates/js/translated/stock.js:521
msgid "Created new stock item"
msgstr ""
-#: templates/js/translated/stock.js:535
+#: templates/js/translated/stock.js:534
msgid "Created multiple stock items"
msgstr ""
-#: templates/js/translated/stock.js:560
+#: templates/js/translated/stock.js:559
msgid "Find Serial Number"
msgstr ""
-#: templates/js/translated/stock.js:564 templates/js/translated/stock.js:565
+#: templates/js/translated/stock.js:563 templates/js/translated/stock.js:564
msgid "Enter serial number"
msgstr ""
-#: templates/js/translated/stock.js:581
+#: templates/js/translated/stock.js:580
msgid "Enter a serial number"
msgstr ""
-#: templates/js/translated/stock.js:601
+#: templates/js/translated/stock.js:600
msgid "No matching serial number"
msgstr ""
-#: templates/js/translated/stock.js:610
+#: templates/js/translated/stock.js:609
msgid "More than one matching result found"
msgstr ""
-#: templates/js/translated/stock.js:718
+#: templates/js/translated/stock.js:717
msgid "Confirm stock assignment"
msgstr ""
-#: templates/js/translated/stock.js:719
+#: templates/js/translated/stock.js:718
msgid "Assign Stock to Customer"
msgstr ""
-#: templates/js/translated/stock.js:796
+#: templates/js/translated/stock.js:795
msgid "Warning: Merge operation cannot be reversed"
msgstr ""
-#: templates/js/translated/stock.js:797
+#: templates/js/translated/stock.js:796
msgid "Some information will be lost when merging stock items"
msgstr ""
-#: templates/js/translated/stock.js:799
+#: templates/js/translated/stock.js:798
msgid "Stock transaction history will be deleted for merged items"
msgstr ""
-#: templates/js/translated/stock.js:800
+#: templates/js/translated/stock.js:799
msgid "Supplier part information will be deleted for merged items"
msgstr ""
-#: templates/js/translated/stock.js:891
+#: templates/js/translated/stock.js:890
msgid "Confirm stock item merge"
msgstr ""
-#: templates/js/translated/stock.js:892
+#: templates/js/translated/stock.js:891
msgid "Merge Stock Items"
msgstr ""
-#: templates/js/translated/stock.js:987
+#: templates/js/translated/stock.js:986
msgid "Transfer Stock"
msgstr ""
-#: templates/js/translated/stock.js:988
+#: templates/js/translated/stock.js:987
msgid "Move"
msgstr ""
-#: templates/js/translated/stock.js:994
+#: templates/js/translated/stock.js:993
msgid "Count Stock"
msgstr ""
-#: templates/js/translated/stock.js:995
+#: templates/js/translated/stock.js:994
msgid "Count"
msgstr ""
-#: templates/js/translated/stock.js:999
+#: templates/js/translated/stock.js:998
msgid "Remove Stock"
msgstr ""
-#: templates/js/translated/stock.js:1000
+#: templates/js/translated/stock.js:999
msgid "Take"
msgstr ""
-#: templates/js/translated/stock.js:1004
+#: templates/js/translated/stock.js:1003
msgid "Add Stock"
msgstr ""
-#: templates/js/translated/stock.js:1005 users/models.py:243
+#: templates/js/translated/stock.js:1004 users/models.py:249
msgid "Add"
msgstr ""
-#: templates/js/translated/stock.js:1009
+#: templates/js/translated/stock.js:1008
msgid "Delete Stock"
msgstr ""
-#: templates/js/translated/stock.js:1106
+#: templates/js/translated/stock.js:1105
msgid "Quantity cannot be adjusted for serialized stock"
msgstr ""
-#: templates/js/translated/stock.js:1106
+#: templates/js/translated/stock.js:1105
msgid "Specify stock quantity"
msgstr ""
-#: templates/js/translated/stock.js:1140
+#: templates/js/translated/stock.js:1139 templates/js/translated/stock.js:3151
msgid "Select Stock Items"
msgstr ""
-#: templates/js/translated/stock.js:1141
-msgid "You must select at least one available stock item"
+#: templates/js/translated/stock.js:1140
+msgid "Select at least one available stock item"
msgstr ""
-#: templates/js/translated/stock.js:1168
+#: templates/js/translated/stock.js:1167
msgid "Confirm stock adjustment"
msgstr ""
-#: templates/js/translated/stock.js:1304
+#: templates/js/translated/stock.js:1303
msgid "PASS"
msgstr ""
-#: templates/js/translated/stock.js:1306
+#: templates/js/translated/stock.js:1305
msgid "FAIL"
msgstr ""
-#: templates/js/translated/stock.js:1311
+#: templates/js/translated/stock.js:1310
msgid "NO RESULT"
msgstr ""
-#: templates/js/translated/stock.js:1373
+#: templates/js/translated/stock.js:1372
msgid "Pass test"
msgstr ""
-#: templates/js/translated/stock.js:1376
+#: templates/js/translated/stock.js:1375
msgid "Add test result"
msgstr ""
-#: templates/js/translated/stock.js:1400
+#: templates/js/translated/stock.js:1399
msgid "No test results found"
msgstr ""
-#: templates/js/translated/stock.js:1464
+#: templates/js/translated/stock.js:1463
msgid "Test Date"
msgstr ""
-#: templates/js/translated/stock.js:1626
+#: templates/js/translated/stock.js:1625
msgid "Edit Test Result"
msgstr ""
-#: templates/js/translated/stock.js:1648
+#: templates/js/translated/stock.js:1647
msgid "Delete Test Result"
msgstr ""
-#: templates/js/translated/stock.js:1680
+#: templates/js/translated/stock.js:1679
msgid "In production"
msgstr ""
-#: templates/js/translated/stock.js:1684
+#: templates/js/translated/stock.js:1683
msgid "Installed in Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:1692
+#: templates/js/translated/stock.js:1691
msgid "Assigned to Sales Order"
msgstr ""
-#: templates/js/translated/stock.js:1698
+#: templates/js/translated/stock.js:1697
msgid "No stock location set"
msgstr ""
-#: templates/js/translated/stock.js:1746
+#: templates/js/translated/stock.js:1753
+msgid "Change stock status"
+msgstr ""
+
+#: templates/js/translated/stock.js:1762
+msgid "Merge stock"
+msgstr ""
+
+#: templates/js/translated/stock.js:1811
+msgid "Delete stock"
+msgstr ""
+
+#: templates/js/translated/stock.js:1866
msgid "stock items"
msgstr ""
-#: templates/js/translated/stock.js:1850
+#: templates/js/translated/stock.js:1871
+msgid "Scan to location"
+msgstr ""
+
+#: templates/js/translated/stock.js:1882
+msgid "Stock Actions"
+msgstr ""
+
+#: templates/js/translated/stock.js:1929
+msgid "Load installed items"
+msgstr ""
+
+#: templates/js/translated/stock.js:2007
msgid "Stock item is in production"
msgstr ""
-#: templates/js/translated/stock.js:1855
+#: templates/js/translated/stock.js:2012
msgid "Stock item assigned to sales order"
msgstr ""
-#: templates/js/translated/stock.js:1858
+#: templates/js/translated/stock.js:2015
msgid "Stock item assigned to customer"
msgstr ""
-#: templates/js/translated/stock.js:1861
+#: templates/js/translated/stock.js:2018
msgid "Serialized stock item has been allocated"
msgstr ""
-#: templates/js/translated/stock.js:1863
+#: templates/js/translated/stock.js:2020
msgid "Stock item has been fully allocated"
msgstr ""
-#: templates/js/translated/stock.js:1865
+#: templates/js/translated/stock.js:2022
msgid "Stock item has been partially allocated"
msgstr ""
-#: templates/js/translated/stock.js:1868
+#: templates/js/translated/stock.js:2025
msgid "Stock item has been installed in another item"
msgstr ""
-#: templates/js/translated/stock.js:1870
+#: templates/js/translated/stock.js:2027
msgid "Stock item has been consumed by a build order"
msgstr ""
-#: templates/js/translated/stock.js:1874
+#: templates/js/translated/stock.js:2031
msgid "Stock item has expired"
msgstr ""
-#: templates/js/translated/stock.js:1876
+#: templates/js/translated/stock.js:2033
msgid "Stock item will expire soon"
msgstr ""
-#: templates/js/translated/stock.js:1881
+#: templates/js/translated/stock.js:2038
msgid "Stock item has been rejected"
msgstr ""
-#: templates/js/translated/stock.js:1883
+#: templates/js/translated/stock.js:2040
msgid "Stock item is lost"
msgstr ""
-#: templates/js/translated/stock.js:1885
+#: templates/js/translated/stock.js:2042
msgid "Stock item is destroyed"
msgstr ""
-#: templates/js/translated/stock.js:1889
-#: templates/js/translated/table_filters.js:296
+#: templates/js/translated/stock.js:2046
+#: templates/js/translated/table_filters.js:302
msgid "Depleted"
msgstr ""
-#: templates/js/translated/stock.js:2031
+#: templates/js/translated/stock.js:2188
msgid "Supplier part not specified"
msgstr ""
-#: templates/js/translated/stock.js:2078
+#: templates/js/translated/stock.js:2235
msgid "Stock Value"
msgstr ""
-#: templates/js/translated/stock.js:2170
+#: templates/js/translated/stock.js:2358
msgid "No stock items matching query"
msgstr ""
-#: templates/js/translated/stock.js:2319
+#: templates/js/translated/stock.js:2450
msgid "stock locations"
msgstr ""
-#: templates/js/translated/stock.js:2476
+#: templates/js/translated/stock.js:2607
msgid "Load Subloactions"
msgstr ""
-#: templates/js/translated/stock.js:2583
+#: templates/js/translated/stock.js:2714
msgid "Details"
msgstr ""
-#: templates/js/translated/stock.js:2587
+#: templates/js/translated/stock.js:2718
msgid "No changes"
msgstr ""
-#: templates/js/translated/stock.js:2599
+#: templates/js/translated/stock.js:2730
msgid "Part information unavailable"
msgstr ""
-#: templates/js/translated/stock.js:2621
+#: templates/js/translated/stock.js:2752
msgid "Location no longer exists"
msgstr ""
-#: templates/js/translated/stock.js:2638
+#: templates/js/translated/stock.js:2769
msgid "Build order no longer exists"
msgstr ""
-#: templates/js/translated/stock.js:2653
+#: templates/js/translated/stock.js:2784
msgid "Purchase order no longer exists"
msgstr ""
-#: templates/js/translated/stock.js:2670
+#: templates/js/translated/stock.js:2801
msgid "Sales Order no longer exists"
msgstr ""
-#: templates/js/translated/stock.js:2687
+#: templates/js/translated/stock.js:2818
msgid "Return Order no longer exists"
msgstr ""
-#: templates/js/translated/stock.js:2706
+#: templates/js/translated/stock.js:2837
msgid "Customer no longer exists"
msgstr ""
-#: templates/js/translated/stock.js:2724
+#: templates/js/translated/stock.js:2855
msgid "Stock item no longer exists"
msgstr ""
-#: templates/js/translated/stock.js:2742
+#: templates/js/translated/stock.js:2873
msgid "Added"
msgstr ""
-#: templates/js/translated/stock.js:2750
+#: templates/js/translated/stock.js:2881
msgid "Removed"
msgstr ""
-#: templates/js/translated/stock.js:2826
+#: templates/js/translated/stock.js:2953
msgid "No installed items"
msgstr ""
-#: templates/js/translated/stock.js:2876 templates/js/translated/stock.js:2911
+#: templates/js/translated/stock.js:3003 templates/js/translated/stock.js:3038
msgid "Uninstall Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:2929
+#: templates/js/translated/stock.js:3056
msgid "Select stock item to uninstall"
msgstr ""
-#: templates/js/translated/stock.js:2950
+#: templates/js/translated/stock.js:3077
msgid "Install another stock item into this item"
msgstr ""
-#: templates/js/translated/stock.js:2951
+#: templates/js/translated/stock.js:3078
msgid "Stock items can only be installed if they meet the following criteria"
msgstr ""
-#: templates/js/translated/stock.js:2953
+#: templates/js/translated/stock.js:3080
msgid "The Stock Item links to a Part which is the BOM for this Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:2954
+#: templates/js/translated/stock.js:3081
msgid "The Stock Item is currently available in stock"
msgstr ""
-#: templates/js/translated/stock.js:2955
+#: templates/js/translated/stock.js:3082
msgid "The Stock Item is not already installed in another item"
msgstr ""
-#: templates/js/translated/stock.js:2956
+#: templates/js/translated/stock.js:3083
msgid "The Stock Item is tracked by either a batch code or serial number"
msgstr ""
-#: templates/js/translated/stock.js:2969
+#: templates/js/translated/stock.js:3096
msgid "Select part to install"
msgstr ""
+#: templates/js/translated/stock.js:3152
+msgid "Select one or more stock items"
+msgstr ""
+
+#: templates/js/translated/stock.js:3165
+msgid "Selected stock items"
+msgstr ""
+
+#: templates/js/translated/stock.js:3169
+msgid "Change Stock Status"
+msgstr ""
+
#: templates/js/translated/table_filters.js:50
msgid "Has project code"
msgstr ""
-#: templates/js/translated/table_filters.js:59
-#: templates/js/translated/table_filters.js:518
-#: templates/js/translated/table_filters.js:530
-#: templates/js/translated/table_filters.js:571
+#: templates/js/translated/table_filters.js:65
+#: templates/js/translated/table_filters.js:540
+#: templates/js/translated/table_filters.js:552
+#: templates/js/translated/table_filters.js:593
msgid "Order status"
msgstr ""
-#: templates/js/translated/table_filters.js:64
-#: templates/js/translated/table_filters.js:535
-#: templates/js/translated/table_filters.js:561
-#: templates/js/translated/table_filters.js:576
+#: templates/js/translated/table_filters.js:70
+#: templates/js/translated/table_filters.js:557
+#: templates/js/translated/table_filters.js:583
+#: templates/js/translated/table_filters.js:598
msgid "Outstanding"
msgstr ""
-#: templates/js/translated/table_filters.js:72
-#: templates/js/translated/table_filters.js:458
-#: templates/js/translated/table_filters.js:543
-#: templates/js/translated/table_filters.js:584
+#: templates/js/translated/table_filters.js:78
+#: templates/js/translated/table_filters.js:464
+#: templates/js/translated/table_filters.js:565
+#: templates/js/translated/table_filters.js:606
msgid "Assigned to me"
msgstr ""
-#: templates/js/translated/table_filters.js:128
+#: templates/js/translated/table_filters.js:134
msgid "Trackable Part"
msgstr ""
-#: templates/js/translated/table_filters.js:132
+#: templates/js/translated/table_filters.js:138
msgid "Assembled Part"
msgstr ""
-#: templates/js/translated/table_filters.js:136
+#: templates/js/translated/table_filters.js:142
msgid "Has Available Stock"
msgstr ""
-#: templates/js/translated/table_filters.js:152
+#: templates/js/translated/table_filters.js:158
msgid "Allow Variant Stock"
msgstr ""
-#: templates/js/translated/table_filters.js:164
-#: templates/js/translated/table_filters.js:692
+#: templates/js/translated/table_filters.js:170
+#: templates/js/translated/table_filters.js:714
msgid "Has Pricing"
msgstr ""
-#: templates/js/translated/table_filters.js:204
-#: templates/js/translated/table_filters.js:291
+#: templates/js/translated/table_filters.js:210
+#: templates/js/translated/table_filters.js:297
msgid "Include sublocations"
msgstr ""
-#: templates/js/translated/table_filters.js:205
+#: templates/js/translated/table_filters.js:211
msgid "Include locations"
msgstr ""
-#: templates/js/translated/table_filters.js:224
-#: templates/js/translated/table_filters.js:225
-#: templates/js/translated/table_filters.js:624
+#: templates/js/translated/table_filters.js:230
+#: templates/js/translated/table_filters.js:231
+#: templates/js/translated/table_filters.js:646
msgid "Include subcategories"
msgstr ""
-#: templates/js/translated/table_filters.js:233
-#: templates/js/translated/table_filters.js:672
+#: templates/js/translated/table_filters.js:239
+#: templates/js/translated/table_filters.js:694
msgid "Subscribed"
msgstr ""
-#: templates/js/translated/table_filters.js:244
-#: templates/js/translated/table_filters.js:326
+#: templates/js/translated/table_filters.js:250
+#: templates/js/translated/table_filters.js:332
msgid "Is Serialized"
msgstr ""
-#: templates/js/translated/table_filters.js:247
-#: templates/js/translated/table_filters.js:333
+#: templates/js/translated/table_filters.js:253
+#: templates/js/translated/table_filters.js:339
msgid "Serial number GTE"
msgstr ""
-#: templates/js/translated/table_filters.js:248
-#: templates/js/translated/table_filters.js:334
+#: templates/js/translated/table_filters.js:254
+#: templates/js/translated/table_filters.js:340
msgid "Serial number greater than or equal to"
msgstr ""
-#: templates/js/translated/table_filters.js:251
-#: templates/js/translated/table_filters.js:337
+#: templates/js/translated/table_filters.js:257
+#: templates/js/translated/table_filters.js:343
msgid "Serial number LTE"
msgstr ""
-#: templates/js/translated/table_filters.js:252
-#: templates/js/translated/table_filters.js:338
+#: templates/js/translated/table_filters.js:258
+#: templates/js/translated/table_filters.js:344
msgid "Serial number less than or equal to"
msgstr ""
-#: templates/js/translated/table_filters.js:255
-#: templates/js/translated/table_filters.js:256
-#: templates/js/translated/table_filters.js:329
-#: templates/js/translated/table_filters.js:330
+#: templates/js/translated/table_filters.js:261
+#: templates/js/translated/table_filters.js:262
+#: templates/js/translated/table_filters.js:335
+#: templates/js/translated/table_filters.js:336
msgid "Serial number"
msgstr ""
-#: templates/js/translated/table_filters.js:260
-#: templates/js/translated/table_filters.js:351
+#: templates/js/translated/table_filters.js:266
+#: templates/js/translated/table_filters.js:357
msgid "Batch code"
msgstr ""
-#: templates/js/translated/table_filters.js:271
-#: templates/js/translated/table_filters.js:613
+#: templates/js/translated/table_filters.js:277
+#: templates/js/translated/table_filters.js:635
msgid "Active parts"
msgstr ""
-#: templates/js/translated/table_filters.js:272
+#: templates/js/translated/table_filters.js:278
msgid "Show stock for active parts"
msgstr ""
-#: templates/js/translated/table_filters.js:277
+#: templates/js/translated/table_filters.js:283
msgid "Part is an assembly"
msgstr ""
-#: templates/js/translated/table_filters.js:281
+#: templates/js/translated/table_filters.js:287
msgid "Is allocated"
msgstr ""
-#: templates/js/translated/table_filters.js:282
+#: templates/js/translated/table_filters.js:288
msgid "Item has been allocated"
msgstr ""
-#: templates/js/translated/table_filters.js:287
+#: templates/js/translated/table_filters.js:293
msgid "Stock is available for use"
msgstr ""
-#: templates/js/translated/table_filters.js:292
+#: templates/js/translated/table_filters.js:298
msgid "Include stock in sublocations"
msgstr ""
-#: templates/js/translated/table_filters.js:297
+#: templates/js/translated/table_filters.js:303
msgid "Show stock items which are depleted"
msgstr ""
-#: templates/js/translated/table_filters.js:302
+#: templates/js/translated/table_filters.js:308
msgid "Show items which are in stock"
msgstr ""
-#: templates/js/translated/table_filters.js:306
+#: templates/js/translated/table_filters.js:312
msgid "In Production"
msgstr ""
-#: templates/js/translated/table_filters.js:307
+#: templates/js/translated/table_filters.js:313
msgid "Show items which are in production"
msgstr ""
-#: templates/js/translated/table_filters.js:311
+#: templates/js/translated/table_filters.js:317
msgid "Include Variants"
msgstr ""
-#: templates/js/translated/table_filters.js:312
+#: templates/js/translated/table_filters.js:318
msgid "Include stock items for variant parts"
msgstr ""
-#: templates/js/translated/table_filters.js:316
+#: templates/js/translated/table_filters.js:322
msgid "Installed"
msgstr ""
-#: templates/js/translated/table_filters.js:317
+#: templates/js/translated/table_filters.js:323
msgid "Show stock items which are installed in another item"
msgstr ""
-#: templates/js/translated/table_filters.js:322
+#: templates/js/translated/table_filters.js:328
msgid "Show items which have been assigned to a customer"
msgstr ""
-#: templates/js/translated/table_filters.js:342
-#: templates/js/translated/table_filters.js:343
+#: templates/js/translated/table_filters.js:348
+#: templates/js/translated/table_filters.js:349
msgid "Stock status"
msgstr ""
-#: templates/js/translated/table_filters.js:346
+#: templates/js/translated/table_filters.js:352
msgid "Has batch code"
msgstr ""
-#: templates/js/translated/table_filters.js:354
-msgid "Tracked"
-msgstr ""
-
-#: templates/js/translated/table_filters.js:355
+#: templates/js/translated/table_filters.js:361
msgid "Stock item is tracked by either batch code or serial number"
msgstr ""
-#: templates/js/translated/table_filters.js:360
+#: templates/js/translated/table_filters.js:366
msgid "Has purchase price"
msgstr ""
-#: templates/js/translated/table_filters.js:361
+#: templates/js/translated/table_filters.js:367
msgid "Show stock items which have a purchase price set"
msgstr ""
-#: templates/js/translated/table_filters.js:365
+#: templates/js/translated/table_filters.js:371
msgid "Expiry Date before"
msgstr ""
-#: templates/js/translated/table_filters.js:369
+#: templates/js/translated/table_filters.js:375
msgid "Expiry Date after"
msgstr ""
-#: templates/js/translated/table_filters.js:382
+#: templates/js/translated/table_filters.js:388
msgid "Show stock items which have expired"
msgstr ""
-#: templates/js/translated/table_filters.js:388
+#: templates/js/translated/table_filters.js:394
msgid "Show stock which is close to expiring"
msgstr ""
-#: templates/js/translated/table_filters.js:402
+#: templates/js/translated/table_filters.js:408
msgid "Test Passed"
msgstr ""
-#: templates/js/translated/table_filters.js:406
+#: templates/js/translated/table_filters.js:412
msgid "Include Installed Items"
msgstr ""
-#: templates/js/translated/table_filters.js:445
+#: templates/js/translated/table_filters.js:451
msgid "Build status"
msgstr ""
-#: templates/js/translated/table_filters.js:625
+#: templates/js/translated/table_filters.js:647
msgid "Include parts in subcategories"
msgstr ""
-#: templates/js/translated/table_filters.js:630
+#: templates/js/translated/table_filters.js:652
msgid "Show active parts"
msgstr ""
-#: templates/js/translated/table_filters.js:638
+#: templates/js/translated/table_filters.js:660
msgid "Available stock"
msgstr ""
-#: templates/js/translated/table_filters.js:646
-#: templates/js/translated/table_filters.js:742
+#: templates/js/translated/table_filters.js:668
+#: templates/js/translated/table_filters.js:764
msgid "Has Units"
msgstr ""
-#: templates/js/translated/table_filters.js:647
+#: templates/js/translated/table_filters.js:669
msgid "Part has defined units"
msgstr ""
-#: templates/js/translated/table_filters.js:651
+#: templates/js/translated/table_filters.js:673
msgid "Has IPN"
msgstr ""
-#: templates/js/translated/table_filters.js:652
+#: templates/js/translated/table_filters.js:674
msgid "Part has internal part number"
msgstr ""
-#: templates/js/translated/table_filters.js:656
+#: templates/js/translated/table_filters.js:678
msgid "In stock"
msgstr ""
-#: templates/js/translated/table_filters.js:664
+#: templates/js/translated/table_filters.js:686
msgid "Purchasable"
msgstr ""
-#: templates/js/translated/table_filters.js:676
+#: templates/js/translated/table_filters.js:698
msgid "Has stocktake entries"
msgstr ""
-#: templates/js/translated/table_filters.js:738
+#: templates/js/translated/table_filters.js:760
msgid "Has Choices"
msgstr ""
@@ -12390,51 +12551,51 @@ msgstr ""
msgid "Select File Format"
msgstr ""
-#: templates/js/translated/tables.js:561
+#: templates/js/translated/tables.js:537
msgid "Loading data"
msgstr ""
-#: templates/js/translated/tables.js:564
+#: templates/js/translated/tables.js:540
msgid "rows per page"
msgstr ""
-#: templates/js/translated/tables.js:569
+#: templates/js/translated/tables.js:545
msgid "Showing all rows"
msgstr ""
-#: templates/js/translated/tables.js:571
+#: templates/js/translated/tables.js:547
msgid "Showing"
msgstr ""
-#: templates/js/translated/tables.js:571
+#: templates/js/translated/tables.js:547
msgid "to"
msgstr ""
-#: templates/js/translated/tables.js:571
+#: templates/js/translated/tables.js:547
msgid "of"
msgstr ""
-#: templates/js/translated/tables.js:571
+#: templates/js/translated/tables.js:547
msgid "rows"
msgstr ""
-#: templates/js/translated/tables.js:578
+#: templates/js/translated/tables.js:554
msgid "No matching results"
msgstr ""
-#: templates/js/translated/tables.js:581
+#: templates/js/translated/tables.js:557
msgid "Hide/Show pagination"
msgstr ""
-#: templates/js/translated/tables.js:587
+#: templates/js/translated/tables.js:563
msgid "Toggle"
msgstr ""
-#: templates/js/translated/tables.js:590
+#: templates/js/translated/tables.js:566
msgid "Columns"
msgstr ""
-#: templates/js/translated/tables.js:593
+#: templates/js/translated/tables.js:569
msgid "All"
msgstr ""
@@ -12616,50 +12777,6 @@ msgstr ""
msgid "Email settings not configured"
msgstr ""
-#: templates/stock_table.html:17
-msgid "Barcode Actions"
-msgstr ""
-
-#: templates/stock_table.html:28
-msgid "Stock Options"
-msgstr ""
-
-#: templates/stock_table.html:33
-msgid "Add to selected stock items"
-msgstr ""
-
-#: templates/stock_table.html:34
-msgid "Remove from selected stock items"
-msgstr ""
-
-#: templates/stock_table.html:35
-msgid "Stocktake selected stock items"
-msgstr ""
-
-#: templates/stock_table.html:36
-msgid "Move selected stock items"
-msgstr ""
-
-#: templates/stock_table.html:37
-msgid "Merge selected stock items"
-msgstr ""
-
-#: templates/stock_table.html:37
-msgid "Merge stock"
-msgstr ""
-
-#: templates/stock_table.html:38
-msgid "Order selected items"
-msgstr ""
-
-#: templates/stock_table.html:42
-msgid "Delete selected items"
-msgstr ""
-
-#: templates/stock_table.html:42
-msgid "Delete stock"
-msgstr ""
-
#: templates/yesnolabel.html:4
msgid "Yes"
msgstr ""
@@ -12692,35 +12809,35 @@ msgstr "許可"
msgid "Important dates"
msgstr "重要な日付"
-#: users/models.py:230
+#: users/models.py:236
msgid "Permission set"
msgstr "パーミッション設定"
-#: users/models.py:238
+#: users/models.py:244
msgid "Group"
msgstr "グループ"
-#: users/models.py:241
+#: users/models.py:247
msgid "View"
msgstr "表示"
-#: users/models.py:241
+#: users/models.py:247
msgid "Permission to view items"
msgstr "項目を表示する権限"
-#: users/models.py:243
+#: users/models.py:249
msgid "Permission to add items"
msgstr "項目を追加する権限"
-#: users/models.py:245
+#: users/models.py:251
msgid "Change"
msgstr "変更"
-#: users/models.py:245
+#: users/models.py:251
msgid "Permissions to edit items"
msgstr "項目を編集する権限"
-#: users/models.py:247
+#: users/models.py:253
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 f4ff874d4c..cbc11f5e6c 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: 2023-06-09 00:32+0000\n"
-"PO-Revision-Date: 2023-06-09 10:27\n"
+"POT-Creation-Date: 2023-06-20 07:01+0000\n"
+"PO-Revision-Date: 2023-06-20 07:06\n"
"Last-Translator: \n"
"Language-Team: Korean\n"
"Language: ko_KR\n"
@@ -49,26 +49,26 @@ msgstr "오류 세부 정보는 관리자 패널에서 찾을 수 있습니다."
msgid "Enter date"
msgstr "날짜 입력"
-#: InvenTree/fields.py:206 InvenTree/models.py:766 build/serializers.py:427
-#: build/serializers.py:506 build/templates/build/sidebar.html:23
-#: company/models.py:597 company/templates/company/sidebar.html:35
-#: order/models.py:1089 order/templates/order/po_sidebar.html:11
+#: InvenTree/fields.py:206 InvenTree/models.py:766 build/serializers.py:435
+#: build/serializers.py:514 build/templates/build/sidebar.html:21
+#: company/models.py:746 company/templates/company/sidebar.html:37
+#: order/models.py:1102 order/templates/order/po_sidebar.html:11
#: order/templates/order/return_order_sidebar.html:9
#: order/templates/order/so_sidebar.html:17 part/admin.py:41
-#: part/models.py:3005 part/templates/part/part_sidebar.html:63
+#: part/models.py:3039 part/templates/part/part_sidebar.html:63
#: report/templates/report/inventree_build_order_base.html:172
#: stock/admin.py:121 stock/models.py:2160 stock/models.py:2268
-#: stock/serializers.py:342 stock/serializers.py:475 stock/serializers.py:556
-#: stock/serializers.py:839 stock/serializers.py:938 stock/serializers.py:1070
-#: stock/templates/stock/stock_sidebar.html:25
-#: templates/js/translated/barcode.js:143 templates/js/translated/bom.js:1224
-#: templates/js/translated/company.js:1294 templates/js/translated/order.js:347
-#: templates/js/translated/part.js:1054
-#: templates/js/translated/purchase_order.js:2168
-#: templates/js/translated/return_order.js:760
-#: templates/js/translated/sales_order.js:1055
-#: templates/js/translated/sales_order.js:1959
-#: templates/js/translated/stock.js:1460 templates/js/translated/stock.js:2164
+#: stock/serializers.py:408 stock/serializers.py:542 stock/serializers.py:623
+#: stock/serializers.py:681 stock/serializers.py:956 stock/serializers.py:1055
+#: stock/serializers.py:1187 stock/templates/stock/stock_sidebar.html:25
+#: templates/js/translated/barcode.js:143 templates/js/translated/bom.js:1244
+#: templates/js/translated/company.js:1715 templates/js/translated/order.js:347
+#: templates/js/translated/part.js:1053
+#: templates/js/translated/purchase_order.js:2178
+#: templates/js/translated/return_order.js:772
+#: templates/js/translated/sales_order.js:1067
+#: templates/js/translated/sales_order.js:1971
+#: templates/js/translated/stock.js:1459 templates/js/translated/stock.js:2321
msgid "Notes"
msgstr "메모"
@@ -81,47 +81,51 @@ msgstr ""
msgid "Provided value does not match required pattern: "
msgstr ""
-#: InvenTree/forms.py:145
+#: InvenTree/forms.py:147
msgid "Enter password"
msgstr "비밀번호를 입력하세요"
-#: InvenTree/forms.py:146
+#: InvenTree/forms.py:148
msgid "Enter new password"
msgstr "새로운 비밀번호를 입력하세요"
-#: InvenTree/forms.py:155
+#: InvenTree/forms.py:157
msgid "Confirm password"
msgstr "비밀번호 확인"
-#: InvenTree/forms.py:156
+#: InvenTree/forms.py:158
msgid "Confirm new password"
msgstr "새 비밀번호 확인"
-#: InvenTree/forms.py:160
+#: InvenTree/forms.py:162
msgid "Old password"
msgstr "이전 암호"
-#: InvenTree/forms.py:179
+#: InvenTree/forms.py:181
msgid "Email (again)"
msgstr "이메일 (다시 입력)"
-#: InvenTree/forms.py:183
+#: InvenTree/forms.py:185
msgid "Email address confirmation"
msgstr "이메일 주소 확인"
-#: InvenTree/forms.py:204
+#: InvenTree/forms.py:206
msgid "You must type the same email each time."
msgstr ""
-#: InvenTree/forms.py:230 InvenTree/forms.py:236
+#: InvenTree/forms.py:237 InvenTree/forms.py:243
msgid "The provided primary email address is not valid."
msgstr ""
-#: InvenTree/forms.py:242
+#: InvenTree/forms.py:249
msgid "The provided email domain is not approved."
msgstr ""
-#: InvenTree/helpers.py:462 order/models.py:442 order/models.py:611
+#: InvenTree/forms.py:345
+msgid "Registration is disabled."
+msgstr ""
+
+#: InvenTree/helpers.py:462 order/models.py:455 order/models.py:624
msgid "Invalid quantity provided"
msgstr ""
@@ -239,7 +243,7 @@ msgstr ""
#: InvenTree/models.py:486 stock/models.py:2262
#: templates/js/translated/attachment.js:119
-#: templates/js/translated/attachment.js:306
+#: templates/js/translated/attachment.js:316
msgid "Attachment"
msgstr "첨부파일"
@@ -247,29 +251,30 @@ msgstr "첨부파일"
msgid "Select file to attach"
msgstr "첨부할 파일을 선택하세요"
-#: InvenTree/models.py:493 common/models.py:2695 company/models.py:132
-#: company/models.py:306 company/models.py:584 order/models.py:236
-#: order/models.py:1093 order/models.py:1453 part/admin.py:39
-#: part/models.py:901 part/templates/part/part_scheduling.html:11
+#: InvenTree/models.py:493 common/models.py:2681 company/models.py:128
+#: company/models.py:381 company/models.py:455 company/models.py:733
+#: order/models.py:240 order/models.py:1106 order/models.py:1466
+#: part/admin.py:39 part/models.py:902
+#: part/templates/part/part_scheduling.html:11
#: report/templates/report/inventree_build_order_base.html:164
-#: stock/admin.py:120 templates/js/translated/company.js:977
-#: templates/js/translated/company.js:1283 templates/js/translated/order.js:351
-#: templates/js/translated/part.js:2316
-#: templates/js/translated/purchase_order.js:2008
-#: templates/js/translated/purchase_order.js:2172
-#: templates/js/translated/return_order.js:764
-#: templates/js/translated/sales_order.js:1044
-#: templates/js/translated/sales_order.js:1964
+#: stock/admin.py:120 templates/js/translated/company.js:1350
+#: templates/js/translated/company.js:1704 templates/js/translated/order.js:351
+#: templates/js/translated/part.js:2392
+#: templates/js/translated/purchase_order.js:2018
+#: templates/js/translated/purchase_order.js:2182
+#: templates/js/translated/return_order.js:776
+#: templates/js/translated/sales_order.js:1056
+#: templates/js/translated/sales_order.js:1976
msgid "Link"
msgstr "링크"
-#: InvenTree/models.py:494 build/models.py:291 part/models.py:902
+#: InvenTree/models.py:494 build/models.py:295 part/models.py:903
#: stock/models.py:735
msgid "Link to external URL"
msgstr "외부 URL로 링크"
#: InvenTree/models.py:497 templates/js/translated/attachment.js:120
-#: templates/js/translated/attachment.js:321
+#: templates/js/translated/attachment.js:331
msgid "Comment"
msgstr ""
@@ -277,13 +282,13 @@ msgstr ""
msgid "File comment"
msgstr ""
-#: InvenTree/models.py:503 InvenTree/models.py:504 common/models.py:2154
-#: common/models.py:2155 common/models.py:2368 common/models.py:2369
-#: common/models.py:2625 common/models.py:2626 part/models.py:3013
-#: part/models.py:3101 part/models.py:3180 part/models.py:3200
-#: plugin/models.py:217 plugin/models.py:218
+#: InvenTree/models.py:503 InvenTree/models.py:504 common/models.py:2140
+#: common/models.py:2141 common/models.py:2354 common/models.py:2355
+#: common/models.py:2611 common/models.py:2612 part/models.py:3047
+#: part/models.py:3135 part/models.py:3214 part/models.py:3234
+#: plugin/models.py:218 plugin/models.py:219
#: report/templates/report/inventree_test_report_base.html:105
-#: templates/js/translated/stock.js:2773
+#: templates/js/translated/stock.js:2904
msgid "User"
msgstr "사용자"
@@ -324,53 +329,54 @@ msgstr ""
msgid "Invalid choice"
msgstr ""
-#: InvenTree/models.py:648 InvenTree/models.py:649 common/models.py:2354
-#: company/models.py:390 label/models.py:103 part/models.py:847
-#: part/models.py:3400 plugin/models.py:41 report/models.py:160
+#: InvenTree/models.py:648 InvenTree/models.py:649 common/models.py:2340
+#: company/models.py:539 label/models.py:111 part/models.py:848
+#: part/models.py:3434 plugin/models.py:42 report/models.py:160
#: templates/InvenTree/settings/mixins/urls.html:13
#: templates/InvenTree/settings/notifications.html:17
-#: templates/InvenTree/settings/plugin.html:80
+#: templates/InvenTree/settings/plugin.html:74
#: templates/InvenTree/settings/plugin_settings.html:22
-#: templates/js/translated/company.js:658
-#: templates/js/translated/company.js:706
-#: templates/js/translated/company.js:871
-#: templates/js/translated/company.js:1071 templates/js/translated/part.js:1160
-#: templates/js/translated/part.js:1447 templates/js/translated/part.js:1583
-#: templates/js/translated/part.js:2699 templates/js/translated/stock.js:2464
+#: templates/js/translated/company.js:665
+#: templates/js/translated/company.js:713
+#: templates/js/translated/company.js:940
+#: templates/js/translated/company.js:1196
+#: templates/js/translated/company.js:1444 templates/js/translated/part.js:1159
+#: templates/js/translated/part.js:1446 templates/js/translated/part.js:1582
+#: templates/js/translated/part.js:2684 templates/js/translated/stock.js:2595
msgid "Name"
msgstr "이름"
-#: InvenTree/models.py:655 build/models.py:164
+#: InvenTree/models.py:655 build/models.py:168
#: build/templates/build/detail.html:24 common/models.py:111
-#: company/models.py:312 company/models.py:590
+#: company/models.py:461 company/models.py:739
#: company/templates/company/company_base.html:72
#: company/templates/company/manufacturer_part.html:75
-#: company/templates/company/supplier_part.html:108 label/models.py:110
-#: order/models.py:232 order/models.py:1117 part/admin.py:194 part/admin.py:276
-#: part/models.py:869 part/models.py:3416 part/templates/part/category.html:81
+#: company/templates/company/supplier_part.html:108 label/models.py:118
+#: order/models.py:232 order/models.py:1130 part/admin.py:194 part/admin.py:276
+#: part/models.py:870 part/models.py:3450 part/templates/part/category.html:81
#: part/templates/part/part_base.html:172
#: part/templates/part/part_scheduling.html:12 report/models.py:173
-#: report/models.py:587 report/models.py:631
+#: report/models.py:589 report/models.py:633
#: report/templates/report/inventree_build_order_base.html:117
#: stock/admin.py:41 stock/templates/stock/location.html:123
#: templates/InvenTree/settings/notifications.html:19
#: templates/InvenTree/settings/plugin_settings.html:27
#: templates/InvenTree/settings/settings_staff_js.html:75
-#: templates/js/translated/bom.js:632 templates/js/translated/bom.js:933
-#: templates/js/translated/build.js:2857 templates/js/translated/company.js:510
-#: templates/js/translated/company.js:988
-#: templates/js/translated/company.js:1251 templates/js/translated/order.js:298
-#: templates/js/translated/part.js:1212 templates/js/translated/part.js:1456
-#: templates/js/translated/part.js:1594 templates/js/translated/part.js:1933
-#: templates/js/translated/part.js:2247 templates/js/translated/part.js:2735
-#: templates/js/translated/part.js:2826
-#: templates/js/translated/purchase_order.js:1666
-#: templates/js/translated/purchase_order.js:1812
-#: templates/js/translated/purchase_order.js:1990
-#: templates/js/translated/return_order.js:302
-#: templates/js/translated/sales_order.js:790
-#: templates/js/translated/stock.js:1439 templates/js/translated/stock.js:1817
-#: templates/js/translated/stock.js:2496 templates/js/translated/stock.js:2568
+#: templates/js/translated/bom.js:633 templates/js/translated/bom.js:951
+#: templates/js/translated/build.js:2062 templates/js/translated/company.js:517
+#: templates/js/translated/company.js:1361
+#: templates/js/translated/company.js:1672 templates/js/translated/index.js:114
+#: templates/js/translated/order.js:298 templates/js/translated/part.js:1211
+#: templates/js/translated/part.js:1455 templates/js/translated/part.js:1593
+#: templates/js/translated/part.js:1932 templates/js/translated/part.js:2323
+#: templates/js/translated/part.js:2720 templates/js/translated/part.js:2811
+#: templates/js/translated/purchase_order.js:1681
+#: templates/js/translated/purchase_order.js:1827
+#: templates/js/translated/purchase_order.js:2000
+#: templates/js/translated/return_order.js:314
+#: templates/js/translated/sales_order.js:802
+#: templates/js/translated/stock.js:1438 templates/js/translated/stock.js:1974
+#: templates/js/translated/stock.js:2627 templates/js/translated/stock.js:2699
msgid "Description"
msgstr "설명"
@@ -383,7 +389,7 @@ msgid "parent"
msgstr ""
#: InvenTree/models.py:671 InvenTree/models.py:672
-#: templates/js/translated/part.js:2744 templates/js/translated/stock.js:2505
+#: templates/js/translated/part.js:2729 templates/js/translated/stock.js:2636
msgid "Path"
msgstr ""
@@ -419,12 +425,12 @@ msgstr ""
msgid "An error has been logged by the server."
msgstr ""
-#: InvenTree/serializers.py:60 part/models.py:3897
+#: InvenTree/serializers.py:60 part/models.py:3941
msgid "Must be a valid number"
msgstr "유효한 숫자여야 합니다"
-#: InvenTree/serializers.py:90 company/models.py:154
-#: company/templates/company/company_base.html:107 part/models.py:2852
+#: InvenTree/serializers.py:90 company/models.py:150
+#: company/templates/company/company_base.html:107 part/models.py:2886
#: templates/InvenTree/settings/settings_staff_js.html:44
#: templates/currency_data.html:5
msgid "Currency"
@@ -497,130 +503,130 @@ msgstr ""
msgid "Downloading images from remote URL is not enabled"
msgstr ""
-#: InvenTree/settings.py:714
+#: InvenTree/settings.py:741
msgid "Czech"
msgstr "체코어"
-#: InvenTree/settings.py:715
+#: InvenTree/settings.py:742
msgid "Danish"
msgstr ""
-#: InvenTree/settings.py:716
+#: InvenTree/settings.py:743
msgid "German"
msgstr "독일어"
-#: InvenTree/settings.py:717
+#: InvenTree/settings.py:744
msgid "Greek"
msgstr "그리스어"
-#: InvenTree/settings.py:718
+#: InvenTree/settings.py:745
msgid "English"
msgstr "영어"
-#: InvenTree/settings.py:719
+#: InvenTree/settings.py:746
msgid "Spanish"
msgstr "스페인어"
-#: InvenTree/settings.py:720
+#: InvenTree/settings.py:747
msgid "Spanish (Mexican)"
msgstr "스페인어 (멕시코)"
-#: InvenTree/settings.py:721
+#: InvenTree/settings.py:748
msgid "Farsi / Persian"
msgstr "파르시어/페르시아어"
-#: InvenTree/settings.py:722
+#: InvenTree/settings.py:749
msgid "Finnish"
msgstr ""
-#: InvenTree/settings.py:723
+#: InvenTree/settings.py:750
msgid "French"
msgstr "프랑스어"
-#: InvenTree/settings.py:724
+#: InvenTree/settings.py:751
msgid "Hebrew"
msgstr "히브리어"
-#: InvenTree/settings.py:725
+#: InvenTree/settings.py:752
msgid "Hungarian"
msgstr "헝가리어"
-#: InvenTree/settings.py:726
+#: InvenTree/settings.py:753
msgid "Italian"
msgstr "이탈리아어"
-#: InvenTree/settings.py:727
+#: InvenTree/settings.py:754
msgid "Japanese"
msgstr "일본어"
-#: InvenTree/settings.py:728
+#: InvenTree/settings.py:755
msgid "Korean"
msgstr "한국어"
-#: InvenTree/settings.py:729
+#: InvenTree/settings.py:756
msgid "Dutch"
msgstr "네덜란드어"
-#: InvenTree/settings.py:730
+#: InvenTree/settings.py:757
msgid "Norwegian"
msgstr "노르웨이어"
-#: InvenTree/settings.py:731
+#: InvenTree/settings.py:758
msgid "Polish"
msgstr "폴란드어"
-#: InvenTree/settings.py:732
+#: InvenTree/settings.py:759
msgid "Portuguese"
msgstr ""
-#: InvenTree/settings.py:733
+#: InvenTree/settings.py:760
msgid "Portuguese (Brazilian)"
msgstr ""
-#: InvenTree/settings.py:734
+#: InvenTree/settings.py:761
msgid "Russian"
msgstr "러시아어"
-#: InvenTree/settings.py:735
+#: InvenTree/settings.py:762
msgid "Slovenian"
msgstr ""
-#: InvenTree/settings.py:736
+#: InvenTree/settings.py:763
msgid "Swedish"
msgstr "스웨덴어"
-#: InvenTree/settings.py:737
+#: InvenTree/settings.py:764
msgid "Thai"
msgstr "태국어"
-#: InvenTree/settings.py:738
+#: InvenTree/settings.py:765
msgid "Turkish"
msgstr "터키어"
-#: InvenTree/settings.py:739
+#: InvenTree/settings.py:766
msgid "Vietnamese"
msgstr "베트남어"
-#: InvenTree/settings.py:740
+#: InvenTree/settings.py:767
msgid "Chinese"
msgstr "중국어"
-#: InvenTree/status.py:61 part/serializers.py:878
+#: InvenTree/status.py:68 part/serializers.py:940
msgid "Background worker check failed"
msgstr ""
-#: InvenTree/status.py:65
+#: InvenTree/status.py:72
msgid "Email backend not configured"
msgstr ""
-#: InvenTree/status.py:68
+#: InvenTree/status.py:75
msgid "InvenTree system health checks failed"
msgstr ""
#: InvenTree/status_codes.py:12 InvenTree/status_codes.py:40
#: InvenTree/status_codes.py:148 InvenTree/status_codes.py:167
#: InvenTree/status_codes.py:188 generic/states/tests.py:16
-#: templates/js/translated/table_filters.js:511
+#: templates/js/translated/table_filters.js:533
msgid "Pending"
msgstr ""
@@ -630,7 +636,7 @@ msgstr ""
#: InvenTree/status_codes.py:14 InvenTree/status_codes.py:151
#: InvenTree/status_codes.py:172 generic/states/tests.py:18
-#: order/templates/order/order_base.html:162
+#: order/templates/order/order_base.html:158
#: order/templates/order/sales_order_base.html:162
msgid "Complete"
msgstr ""
@@ -654,10 +660,10 @@ msgstr ""
msgid "In Progress"
msgstr ""
-#: InvenTree/status_codes.py:42 order/models.py:1332
-#: templates/js/translated/sales_order.js:1509
-#: templates/js/translated/sales_order.js:1630
-#: templates/js/translated/sales_order.js:1934
+#: InvenTree/status_codes.py:42 order/models.py:1345
+#: templates/js/translated/sales_order.js:1521
+#: templates/js/translated/sales_order.js:1642
+#: templates/js/translated/sales_order.js:1946
msgid "Shipped"
msgstr ""
@@ -689,7 +695,7 @@ msgstr ""
msgid "Legacy stock tracking entry"
msgstr ""
-#: InvenTree/status_codes.py:93 templates/js/translated/stock.js:511
+#: InvenTree/status_codes.py:93 templates/js/translated/stock.js:510
msgid "Stock item created"
msgstr ""
@@ -745,7 +751,7 @@ msgstr ""
msgid "Split child item"
msgstr ""
-#: InvenTree/status_codes.py:120 templates/js/translated/stock.js:2243
+#: InvenTree/status_codes.py:120 templates/js/translated/stock.js:1769
msgid "Merged stock items"
msgstr ""
@@ -765,7 +771,7 @@ msgstr ""
msgid "Build order output rejected"
msgstr ""
-#: InvenTree/status_codes.py:129 templates/js/translated/stock.js:1676
+#: InvenTree/status_codes.py:129 templates/js/translated/stock.js:1675
msgid "Consumed by build order"
msgstr ""
@@ -781,7 +787,7 @@ msgstr ""
msgid "Returned against Return Order"
msgstr ""
-#: InvenTree/status_codes.py:141 templates/js/translated/table_filters.js:321
+#: InvenTree/status_codes.py:141 templates/js/translated/table_filters.js:327
msgid "Sent to customer"
msgstr ""
@@ -849,83 +855,111 @@ msgstr "비밀번호가 일치해야 합니다"
msgid "Wrong password provided"
msgstr ""
-#: InvenTree/views.py:651 templates/navbar.html:157
+#: InvenTree/views.py:653 templates/navbar.html:157
msgid "System Information"
msgstr "시스템 정보"
-#: InvenTree/views.py:658 templates/navbar.html:168
+#: InvenTree/views.py:660 templates/navbar.html:168
msgid "About InvenTree"
msgstr ""
-#: build/api.py:222
+#: build/api.py:242
msgid "Build must be cancelled before it can be deleted"
msgstr ""
-#: build/models.py:69 build/templates/build/build_base.html:9
+#: build/api.py:286 part/models.py:3833 templates/js/translated/bom.js:985
+#: templates/js/translated/bom.js:1025 templates/js/translated/build.js:2449
+#: templates/js/translated/table_filters.js:166
+#: templates/js/translated/table_filters.js:518
+msgid "Consumable"
+msgstr ""
+
+#: build/api.py:287 part/models.py:3827 part/templates/part/upload_bom.html:58
+#: templates/js/translated/bom.js:989 templates/js/translated/bom.js:1016
+#: templates/js/translated/build.js:2458
+#: templates/js/translated/table_filters.js:162
+#: templates/js/translated/table_filters.js:191
+#: templates/js/translated/table_filters.js:522
+msgid "Optional"
+msgstr ""
+
+#: build/api.py:288 templates/js/translated/table_filters.js:360
+#: templates/js/translated/table_filters.js:514
+msgid "Tracked"
+msgstr ""
+
+#: build/api.py:290 part/admin.py:64 templates/js/translated/build.js:1670
+#: templates/js/translated/build.js:2549
+#: templates/js/translated/sales_order.js:1918
+#: templates/js/translated/table_filters.js:506
+msgid "Allocated"
+msgstr ""
+
+#: build/models.py:73 build/templates/build/build_base.html:9
#: build/templates/build/build_base.html:27
#: report/templates/report/inventree_build_order_base.html:105
#: templates/email/build_order_completed.html:16
#: templates/email/overdue_build_order.html:15
-#: templates/js/translated/build.js:945 templates/js/translated/stock.js:2629
+#: templates/js/translated/build.js:953 templates/js/translated/stock.js:2760
msgid "Build Order"
msgstr ""
-#: build/models.py:70 build/templates/build/build_base.html:13
+#: build/models.py:74 build/templates/build/build_base.html:13
#: build/templates/build/index.html:8 build/templates/build/index.html:12
-#: order/templates/order/sales_order_detail.html:119
+#: order/templates/order/sales_order_detail.html:111
#: order/templates/order/so_sidebar.html:13
-#: part/templates/part/part_sidebar.html:22 templates/InvenTree/index.html:244
+#: part/templates/part/part_sidebar.html:22 templates/InvenTree/index.html:196
#: templates/InvenTree/search.html:141
#: templates/InvenTree/settings/sidebar.html:53
-#: templates/js/translated/search.js:228 users/models.py:42
+#: templates/js/translated/search.js:186 users/models.py:42
msgid "Build Orders"
msgstr ""
-#: build/models.py:111
+#: build/models.py:115
msgid "Invalid choice for parent build"
msgstr ""
-#: build/models.py:155
+#: build/models.py:159
msgid "Build Order Reference"
msgstr ""
-#: build/models.py:156 order/models.py:359 order/models.py:765
-#: order/models.py:1087 order/models.py:1724 part/admin.py:278
-#: part/models.py:3798 part/templates/part/upload_bom.html:54
+#: build/models.py:160 order/models.py:372 order/models.py:778
+#: order/models.py:1100 order/models.py:1737 part/admin.py:278
+#: part/models.py:3842 part/templates/part/upload_bom.html:54
#: report/templates/report/inventree_bill_of_materials_report.html:139
#: report/templates/report/inventree_po_report_base.html:28
#: report/templates/report/inventree_return_order_report_base.html:26
#: report/templates/report/inventree_so_report_base.html:28
-#: templates/js/translated/bom.js:769 templates/js/translated/bom.js:943
-#: templates/js/translated/build.js:2098 templates/js/translated/order.js:291
+#: templates/js/translated/bom.js:770 templates/js/translated/bom.js:961
+#: templates/js/translated/build.js:2441 templates/js/translated/order.js:291
#: templates/js/translated/pricing.js:386
-#: templates/js/translated/purchase_order.js:2033
-#: templates/js/translated/return_order.js:713
-#: templates/js/translated/sales_order.js:1798
+#: templates/js/translated/purchase_order.js:2043
+#: templates/js/translated/return_order.js:725
+#: templates/js/translated/sales_order.js:1810
msgid "Reference"
msgstr ""
-#: build/models.py:167
+#: build/models.py:171
msgid "Brief description of the build (optional)"
msgstr ""
-#: build/models.py:175 build/templates/build/build_base.html:183
+#: build/models.py:179 build/templates/build/build_base.html:184
#: build/templates/build/detail.html:87
msgid "Parent Build"
msgstr ""
-#: build/models.py:176
+#: build/models.py:180
msgid "BuildOrder to which this build is allocated"
msgstr ""
-#: build/models.py:181 build/templates/build/build_base.html:98
-#: build/templates/build/detail.html:29 company/models.py:775
-#: order/models.py:1195 order/models.py:1311 order/models.py:1312
-#: part/models.py:391 part/models.py:2865 part/models.py:2979
-#: part/models.py:3119 part/models.py:3138 part/models.py:3157
-#: part/models.py:3178 part/models.py:3270 part/models.py:3555
-#: part/models.py:3663 part/models.py:3763 part/models.py:4077
-#: part/serializers.py:842 part/serializers.py:1245
+#: build/models.py:185 build/templates/build/build_base.html:98
+#: build/templates/build/detail.html:29 company/models.py:924
+#: order/models.py:1208 order/models.py:1324 order/models.py:1325
+#: part/models.py:392 part/models.py:2899 part/models.py:3013
+#: part/models.py:3153 part/models.py:3172 part/models.py:3191
+#: part/models.py:3212 part/models.py:3304 part/models.py:3589
+#: part/models.py:3712 part/models.py:3807 part/models.py:4121
+#: part/serializers.py:904 part/serializers.py:1307
#: part/templates/part/part_app_base.html:8
#: part/templates/part/part_pricing.html:12
#: part/templates/part/upload_bom.html:52
@@ -935,266 +969,229 @@ msgstr ""
#: report/templates/report/inventree_po_report_base.html:27
#: report/templates/report/inventree_return_order_report_base.html:24
#: report/templates/report/inventree_so_report_base.html:27
-#: stock/serializers.py:156 stock/serializers.py:509
+#: stock/serializers.py:205 stock/serializers.py:576
#: templates/InvenTree/search.html:82
#: templates/email/build_order_completed.html:17
#: templates/email/build_order_required_stock.html:17
#: templates/email/low_stock_notification.html:15
#: templates/email/overdue_build_order.html:16
-#: templates/js/translated/barcode.js:529 templates/js/translated/bom.js:631
-#: templates/js/translated/bom.js:768 templates/js/translated/bom.js:887
-#: templates/js/translated/build.js:1403 templates/js/translated/build.js:1965
-#: templates/js/translated/build.js:2464 templates/js/translated/build.js:2868
-#: templates/js/translated/company.js:337
-#: templates/js/translated/company.js:822
-#: templates/js/translated/company.js:929
-#: templates/js/translated/company.js:1169 templates/js/translated/part.js:1918
-#: templates/js/translated/part.js:1990 templates/js/translated/part.js:2216
-#: templates/js/translated/pricing.js:369
-#: templates/js/translated/purchase_order.js:746
-#: templates/js/translated/purchase_order.js:1274
-#: templates/js/translated/purchase_order.js:1811
-#: templates/js/translated/purchase_order.js:1975
-#: templates/js/translated/return_order.js:527
-#: templates/js/translated/return_order.js:694
-#: templates/js/translated/sales_order.js:285
-#: templates/js/translated/sales_order.js:1185
-#: templates/js/translated/sales_order.js:1584
-#: templates/js/translated/sales_order.js:1782
-#: templates/js/translated/stock.js:643 templates/js/translated/stock.js:809
-#: templates/js/translated/stock.js:1021 templates/js/translated/stock.js:1773
-#: templates/js/translated/stock.js:2594 templates/js/translated/stock.js:2831
-#: templates/js/translated/stock.js:2968
+#: templates/js/translated/barcode.js:529 templates/js/translated/bom.js:632
+#: templates/js/translated/bom.js:769 templates/js/translated/bom.js:905
+#: templates/js/translated/build.js:1289 templates/js/translated/build.js:1669
+#: templates/js/translated/build.js:2085 templates/js/translated/build.js:2261
+#: templates/js/translated/company.js:347
+#: templates/js/translated/company.js:1147
+#: templates/js/translated/company.js:1302
+#: templates/js/translated/company.js:1590 templates/js/translated/index.js:104
+#: templates/js/translated/part.js:1917 templates/js/translated/part.js:1989
+#: templates/js/translated/part.js:2292 templates/js/translated/pricing.js:369
+#: templates/js/translated/purchase_order.js:757
+#: templates/js/translated/purchase_order.js:1289
+#: templates/js/translated/purchase_order.js:1826
+#: templates/js/translated/purchase_order.js:1985
+#: templates/js/translated/return_order.js:539
+#: templates/js/translated/return_order.js:706
+#: templates/js/translated/sales_order.js:297
+#: templates/js/translated/sales_order.js:1197
+#: templates/js/translated/sales_order.js:1596
+#: templates/js/translated/sales_order.js:1794
+#: templates/js/translated/stock.js:642 templates/js/translated/stock.js:808
+#: templates/js/translated/stock.js:1020 templates/js/translated/stock.js:1913
+#: templates/js/translated/stock.js:2725 templates/js/translated/stock.js:2958
+#: templates/js/translated/stock.js:3095
msgid "Part"
msgstr ""
-#: build/models.py:189
+#: build/models.py:193
msgid "Select part to build"
msgstr ""
-#: build/models.py:194
+#: build/models.py:198
msgid "Sales Order Reference"
msgstr ""
-#: build/models.py:198
+#: build/models.py:202
msgid "SalesOrder to which this build is allocated"
msgstr ""
-#: build/models.py:203 build/serializers.py:942
-#: templates/js/translated/build.js:2452
-#: templates/js/translated/sales_order.js:1173
+#: build/models.py:207 build/serializers.py:946
+#: templates/js/translated/build.js:1657
+#: templates/js/translated/sales_order.js:1185
msgid "Source Location"
msgstr ""
-#: build/models.py:207
+#: build/models.py:211
msgid "Select location to take stock from for this build (leave blank to take from any stock location)"
msgstr ""
-#: build/models.py:212
+#: build/models.py:216
msgid "Destination Location"
msgstr ""
-#: build/models.py:216
+#: build/models.py:220
msgid "Select location where the completed items will be stored"
msgstr ""
-#: build/models.py:220
+#: build/models.py:224
msgid "Build Quantity"
msgstr ""
-#: build/models.py:223
+#: build/models.py:227
msgid "Number of stock items to build"
msgstr ""
-#: build/models.py:227
+#: build/models.py:231
msgid "Completed items"
msgstr ""
-#: build/models.py:229
+#: build/models.py:233
msgid "Number of stock items which have been completed"
msgstr ""
-#: build/models.py:233
+#: build/models.py:237
msgid "Build Status"
msgstr ""
-#: build/models.py:237
+#: build/models.py:241
msgid "Build status code"
msgstr ""
-#: build/models.py:246 build/serializers.py:269 order/serializers.py:506
-#: stock/models.py:739 templates/js/translated/purchase_order.js:1099
+#: build/models.py:250 build/serializers.py:277 order/serializers.py:512
+#: stock/models.py:739 templates/js/translated/purchase_order.js:1114
msgid "Batch Code"
msgstr ""
-#: build/models.py:250 build/serializers.py:270
+#: build/models.py:254 build/serializers.py:278
msgid "Batch code for this build output"
msgstr ""
-#: build/models.py:253 order/models.py:244 part/models.py:1038
+#: build/models.py:257 order/models.py:248 part/models.py:1039
#: part/templates/part/part_base.html:312
-#: templates/js/translated/return_order.js:327
-#: templates/js/translated/sales_order.js:815
+#: templates/js/translated/return_order.js:339
+#: templates/js/translated/sales_order.js:827
msgid "Creation Date"
msgstr ""
-#: build/models.py:257
+#: build/models.py:261
msgid "Target completion date"
msgstr ""
-#: build/models.py:258
+#: build/models.py:262
msgid "Target date for build completion. Build will be overdue after this date."
msgstr ""
-#: build/models.py:261 order/models.py:409 order/models.py:1767
-#: templates/js/translated/build.js:2953
+#: build/models.py:265 order/models.py:422 order/models.py:1780
+#: templates/js/translated/build.js:2170
msgid "Completion Date"
msgstr ""
-#: build/models.py:267
+#: build/models.py:271
msgid "completed by"
msgstr ""
-#: build/models.py:275 templates/js/translated/build.js:2913
+#: build/models.py:279 templates/js/translated/build.js:2130
msgid "Issued by"
msgstr ""
-#: build/models.py:276
+#: build/models.py:280
msgid "User who issued this build order"
msgstr ""
-#: build/models.py:284 build/templates/build/build_base.html:204
-#: build/templates/build/detail.html:122 order/models.py:258
-#: order/templates/order/order_base.html:214
-#: order/templates/order/return_order_base.html:182
-#: order/templates/order/sales_order_base.html:222 part/models.py:1042
+#: build/models.py:288 build/templates/build/build_base.html:205
+#: build/templates/build/detail.html:122 order/models.py:262
+#: order/templates/order/order_base.html:217
+#: order/templates/order/return_order_base.html:189
+#: order/templates/order/sales_order_base.html:229 part/models.py:1043
#: part/templates/part/part_base.html:392
#: report/templates/report/inventree_build_order_base.html:158
-#: templates/js/translated/build.js:2925
-#: templates/js/translated/purchase_order.js:1723
-#: templates/js/translated/return_order.js:347
-#: templates/js/translated/table_filters.js:461
+#: templates/js/translated/build.js:2142
+#: templates/js/translated/purchase_order.js:1738
+#: templates/js/translated/return_order.js:359
+#: templates/js/translated/table_filters.js:467
msgid "Responsible"
msgstr ""
-#: build/models.py:285
+#: build/models.py:289
msgid "User or group responsible for this build order"
msgstr ""
-#: build/models.py:290 build/templates/build/detail.html:108
+#: build/models.py:294 build/templates/build/detail.html:108
#: company/templates/company/manufacturer_part.html:107
#: company/templates/company/supplier_part.html:195
-#: order/templates/order/order_base.html:171
+#: order/templates/order/order_base.html:167
#: order/templates/order/return_order_base.html:146
#: order/templates/order/sales_order_base.html:181
#: part/templates/part/part_base.html:385 stock/models.py:733
#: stock/templates/stock/item_base.html:201
+#: templates/js/translated/company.js:1050
msgid "External Link"
msgstr "외부 링크"
-#: build/models.py:295
+#: build/models.py:299
msgid "Build Priority"
msgstr ""
-#: build/models.py:298
+#: build/models.py:302
msgid "Priority of this build order"
msgstr ""
-#: build/models.py:536
+#: build/models.py:309 common/models.py:104 order/admin.py:17
+#: order/models.py:237 templates/InvenTree/settings/settings_staff_js.html:70
+#: templates/js/translated/build.js:2067
+#: templates/js/translated/purchase_order.js:1685
+#: templates/js/translated/return_order.js:318
+#: templates/js/translated/sales_order.js:806
+#: templates/js/translated/table_filters.js:24
+#: templates/project_code_data.html:6
+msgid "Project Code"
+msgstr ""
+
+#: build/models.py:310
+msgid "Project code for this build order"
+msgstr ""
+
+#: build/models.py:545
#, python-brace-format
msgid "Build order {build} has been completed"
msgstr ""
-#: build/models.py:542
+#: build/models.py:551
msgid "A build order has been completed"
msgstr ""
-#: build/models.py:744 build/models.py:811
+#: build/models.py:753 build/models.py:831
msgid "No build output specified"
msgstr ""
-#: build/models.py:747
+#: build/models.py:756
msgid "Build output is already completed"
msgstr ""
-#: build/models.py:750
+#: build/models.py:759
msgid "Build output does not match Build Order"
msgstr ""
-#: build/models.py:815 build/serializers.py:212 build/serializers.py:251
-#: build/serializers.py:811 order/models.py:440 order/serializers.py:379
-#: order/serializers.py:501 part/serializers.py:1087 part/serializers.py:1408
-#: stock/models.py:593 stock/models.py:1387 stock/serializers.py:315
+#: build/models.py:835 build/serializers.py:220 build/serializers.py:259
+#: build/serializers.py:819 order/models.py:453 order/serializers.py:385
+#: order/serializers.py:507 part/serializers.py:1149 part/serializers.py:1470
+#: stock/models.py:593 stock/models.py:1387 stock/serializers.py:381
msgid "Quantity must be greater than zero"
msgstr "수량 값은 0보다 커야 합니다"
-#: build/models.py:820 build/serializers.py:217
+#: build/models.py:840 build/serializers.py:225
msgid "Quantity cannot be greater than the output quantity"
msgstr ""
-#: build/models.py:1272
-msgid "Build item must specify a build output, as master part is marked as trackable"
+#: build/models.py:1260
+msgid "Build object"
msgstr ""
-#: build/models.py:1281
-#, python-brace-format
-msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})"
-msgstr ""
-
-#: build/models.py:1291 order/models.py:1601
-msgid "Stock item is over-allocated"
-msgstr ""
-
-#: build/models.py:1297 order/models.py:1604
-msgid "Allocation quantity must be greater than zero"
-msgstr ""
-
-#: build/models.py:1303
-msgid "Quantity must be 1 for serialized stock"
-msgstr ""
-
-#: build/models.py:1360
-msgid "Selected stock item not found in BOM"
-msgstr ""
-
-#: build/models.py:1438 stock/templates/stock/item_base.html:170
-#: templates/InvenTree/search.html:139 templates/js/translated/build.js:2841
-#: templates/navbar.html:38
-msgid "Build"
-msgstr ""
-
-#: build/models.py:1439
-msgid "Build to allocate parts"
-msgstr ""
-
-#: build/models.py:1455 build/serializers.py:791 order/serializers.py:1059
-#: order/serializers.py:1080 stock/serializers.py:413 stock/serializers.py:770
-#: stock/serializers.py:896 stock/templates/stock/item_base.html:10
-#: stock/templates/stock/item_base.html:23
-#: stock/templates/stock/item_base.html:195
-#: templates/js/translated/build.js:955 templates/js/translated/build.js:960
-#: templates/js/translated/build.js:2466 templates/js/translated/build.js:3038
-#: templates/js/translated/sales_order.js:286
-#: templates/js/translated/sales_order.js:1186
-#: templates/js/translated/sales_order.js:1485
-#: templates/js/translated/sales_order.js:1490
-#: templates/js/translated/sales_order.js:1591
-#: templates/js/translated/sales_order.js:1678
-#: templates/js/translated/stock.js:644 templates/js/translated/stock.js:810
-#: templates/js/translated/stock.js:2714
-msgid "Stock Item"
-msgstr ""
-
-#: build/models.py:1456
-msgid "Source stock item"
-msgstr ""
-
-#: build/models.py:1468 build/serializers.py:198 build/serializers.py:236
-#: build/templates/build/build_base.html:103
-#: build/templates/build/detail.html:34 common/models.py:2176
-#: order/models.py:1073 order/models.py:1645 order/serializers.py:1233
+#: build/models.py:1274 build/models.py:1556 build/serializers.py:206
+#: build/serializers.py:244 build/templates/build/build_base.html:103
+#: build/templates/build/detail.html:34 common/models.py:2162
+#: order/models.py:1086 order/models.py:1658 order/serializers.py:1239
#: order/templates/order/order_wizard/match_parts.html:30 part/admin.py:277
-#: part/forms.py:47 part/models.py:2992 part/models.py:3779
+#: part/forms.py:47 part/models.py:3026 part/models.py:3823
#: part/templates/part/part_pricing.html:16
#: part/templates/part/upload_bom.html:53
#: report/templates/report/inventree_bill_of_materials_report.html:138
@@ -1203,315 +1200,367 @@ msgstr ""
#: report/templates/report/inventree_so_report_base.html:29
#: report/templates/report/inventree_test_report_base.html:90
#: report/templates/report/inventree_test_report_base.html:170
-#: stock/admin.py:103 stock/serializers.py:306
+#: stock/admin.py:103 stock/serializers.py:372
#: stock/templates/stock/item_base.html:288
#: stock/templates/stock/item_base.html:296
#: stock/templates/stock/item_base.html:343
#: templates/email/build_order_completed.html:18
-#: templates/js/translated/barcode.js:531 templates/js/translated/bom.js:770
-#: templates/js/translated/bom.js:951 templates/js/translated/build.js:504
-#: templates/js/translated/build.js:716 templates/js/translated/build.js:982
-#: templates/js/translated/build.js:1425 templates/js/translated/build.js:1991
-#: templates/js/translated/build.js:2467
-#: templates/js/translated/company.js:1428
-#: templates/js/translated/model_renderers.js:207
-#: templates/js/translated/order.js:304 templates/js/translated/part.js:935
-#: templates/js/translated/part.js:1784 templates/js/translated/part.js:3263
+#: templates/js/translated/barcode.js:531 templates/js/translated/bom.js:771
+#: templates/js/translated/bom.js:969 templates/js/translated/build.js:510
+#: templates/js/translated/build.js:722 templates/js/translated/build.js:1308
+#: templates/js/translated/build.js:1672 templates/js/translated/build.js:2283
+#: templates/js/translated/company.js:1849
+#: templates/js/translated/model_renderers.js:221
+#: templates/js/translated/order.js:304 templates/js/translated/part.js:934
+#: templates/js/translated/part.js:1783 templates/js/translated/part.js:3248
#: templates/js/translated/pricing.js:381
#: templates/js/translated/pricing.js:474
#: templates/js/translated/pricing.js:522
#: templates/js/translated/pricing.js:616
-#: templates/js/translated/purchase_order.js:749
-#: templates/js/translated/purchase_order.js:1815
-#: templates/js/translated/purchase_order.js:2039
-#: templates/js/translated/sales_order.js:302
-#: templates/js/translated/sales_order.js:1187
-#: templates/js/translated/sales_order.js:1504
-#: templates/js/translated/sales_order.js:1594
-#: templates/js/translated/sales_order.js:1684
-#: templates/js/translated/sales_order.js:1804
-#: templates/js/translated/stock.js:531 templates/js/translated/stock.js:669
-#: templates/js/translated/stock.js:840 templates/js/translated/stock.js:2758
-#: templates/js/translated/stock.js:2843
+#: templates/js/translated/purchase_order.js:760
+#: templates/js/translated/purchase_order.js:1830
+#: templates/js/translated/purchase_order.js:2049
+#: templates/js/translated/sales_order.js:314
+#: templates/js/translated/sales_order.js:1199
+#: templates/js/translated/sales_order.js:1516
+#: templates/js/translated/sales_order.js:1606
+#: templates/js/translated/sales_order.js:1696
+#: templates/js/translated/sales_order.js:1816
+#: templates/js/translated/stock.js:530 templates/js/translated/stock.js:668
+#: templates/js/translated/stock.js:839 templates/js/translated/stock.js:2889
+#: templates/js/translated/stock.js:2970
msgid "Quantity"
msgstr "수량"
-#: build/models.py:1469
+#: build/models.py:1275
+msgid "Required quantity for build order"
+msgstr ""
+
+#: build/models.py:1357
+msgid "Build item must specify a build output, as master part is marked as trackable"
+msgstr ""
+
+#: build/models.py:1366
+#, python-brace-format
+msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})"
+msgstr ""
+
+#: build/models.py:1376 order/models.py:1614
+msgid "Stock item is over-allocated"
+msgstr ""
+
+#: build/models.py:1382 order/models.py:1617
+msgid "Allocation quantity must be greater than zero"
+msgstr ""
+
+#: build/models.py:1388
+msgid "Quantity must be 1 for serialized stock"
+msgstr ""
+
+#: build/models.py:1449
+msgid "Selected stock item does not match BOM line"
+msgstr ""
+
+#: build/models.py:1543 build/serializers.py:799 order/serializers.py:1065
+#: order/serializers.py:1086 stock/serializers.py:479 stock/serializers.py:887
+#: stock/serializers.py:1013 stock/templates/stock/item_base.html:10
+#: stock/templates/stock/item_base.html:23
+#: stock/templates/stock/item_base.html:195
+#: templates/js/translated/build.js:1671
+#: templates/js/translated/sales_order.js:298
+#: templates/js/translated/sales_order.js:1198
+#: templates/js/translated/sales_order.js:1497
+#: templates/js/translated/sales_order.js:1502
+#: templates/js/translated/sales_order.js:1603
+#: templates/js/translated/sales_order.js:1690
+#: templates/js/translated/stock.js:643 templates/js/translated/stock.js:809
+#: templates/js/translated/stock.js:2845
+msgid "Stock Item"
+msgstr ""
+
+#: build/models.py:1544
+msgid "Source stock item"
+msgstr ""
+
+#: build/models.py:1557
msgid "Stock quantity to allocate to build"
msgstr ""
-#: build/models.py:1477
+#: build/models.py:1565
msgid "Install into"
msgstr ""
-#: build/models.py:1478
+#: build/models.py:1566
msgid "Destination stock item"
msgstr ""
-#: build/serializers.py:148 build/serializers.py:820
-#: templates/js/translated/build.js:1413
+#: build/serializers.py:156 build/serializers.py:828
+#: templates/js/translated/build.js:1299
msgid "Build Output"
msgstr ""
-#: build/serializers.py:160
+#: build/serializers.py:168
msgid "Build output does not match the parent build"
msgstr ""
-#: build/serializers.py:164
+#: build/serializers.py:172
msgid "Output part does not match BuildOrder part"
msgstr ""
-#: build/serializers.py:168
+#: build/serializers.py:176
msgid "This build output has already been completed"
msgstr ""
-#: build/serializers.py:179
+#: build/serializers.py:187
msgid "This build output is not fully allocated"
msgstr ""
-#: build/serializers.py:199 build/serializers.py:237
+#: build/serializers.py:207 build/serializers.py:245
msgid "Enter quantity for build output"
msgstr ""
-#: build/serializers.py:258
+#: build/serializers.py:266
msgid "Integer quantity required for trackable parts"
msgstr ""
-#: build/serializers.py:261
+#: build/serializers.py:269
msgid "Integer quantity required, as the bill of materials contains trackable parts"
msgstr ""
-#: build/serializers.py:276 order/serializers.py:514 order/serializers.py:1237
-#: stock/serializers.py:324 templates/js/translated/purchase_order.js:1123
-#: templates/js/translated/stock.js:334 templates/js/translated/stock.js:532
+#: build/serializers.py:284 order/serializers.py:520 order/serializers.py:1243
+#: stock/serializers.py:390 templates/js/translated/purchase_order.js:1138
+#: templates/js/translated/stock.js:333 templates/js/translated/stock.js:531
msgid "Serial Numbers"
msgstr "일련번호"
-#: build/serializers.py:277
+#: build/serializers.py:285
msgid "Enter serial numbers for build outputs"
msgstr ""
-#: build/serializers.py:290
+#: build/serializers.py:298
msgid "Auto Allocate Serial Numbers"
msgstr ""
-#: build/serializers.py:291
+#: build/serializers.py:299
msgid "Automatically allocate required items with matching serial numbers"
msgstr ""
-#: build/serializers.py:326 stock/api.py:670
+#: build/serializers.py:334 stock/api.py:707
msgid "The following serial numbers already exist or are invalid"
msgstr ""
-#: build/serializers.py:377 build/serializers.py:439 build/serializers.py:518
+#: build/serializers.py:385 build/serializers.py:447 build/serializers.py:526
msgid "A list of build outputs must be provided"
msgstr ""
-#: build/serializers.py:415 build/serializers.py:488 order/serializers.py:487
-#: order/serializers.py:606 order/serializers.py:1588 part/serializers.py:854
-#: stock/serializers.py:335 stock/serializers.py:470 stock/serializers.py:551
-#: stock/serializers.py:931 stock/serializers.py:1173
+#: build/serializers.py:423 build/serializers.py:496 order/serializers.py:493
+#: order/serializers.py:612 order/serializers.py:1594 part/serializers.py:916
+#: stock/serializers.py:401 stock/serializers.py:537 stock/serializers.py:618
+#: stock/serializers.py:1048 stock/serializers.py:1290
#: stock/templates/stock/item_base.html:390
#: templates/js/translated/barcode.js:530
-#: templates/js/translated/barcode.js:778 templates/js/translated/build.js:967
-#: templates/js/translated/build.js:2006
-#: templates/js/translated/purchase_order.js:1148
-#: templates/js/translated/purchase_order.js:1238
-#: templates/js/translated/sales_order.js:1497
-#: templates/js/translated/sales_order.js:1605
-#: templates/js/translated/sales_order.js:1613
-#: templates/js/translated/sales_order.js:1692
-#: templates/js/translated/stock.js:645 templates/js/translated/stock.js:811
-#: templates/js/translated/stock.js:1023 templates/js/translated/stock.js:1937
-#: templates/js/translated/stock.js:2608
+#: templates/js/translated/barcode.js:778 templates/js/translated/build.js:980
+#: templates/js/translated/build.js:2298
+#: templates/js/translated/purchase_order.js:1163
+#: templates/js/translated/purchase_order.js:1253
+#: templates/js/translated/sales_order.js:1509
+#: templates/js/translated/sales_order.js:1617
+#: templates/js/translated/sales_order.js:1625
+#: templates/js/translated/sales_order.js:1704
+#: templates/js/translated/stock.js:644 templates/js/translated/stock.js:810
+#: templates/js/translated/stock.js:1022 templates/js/translated/stock.js:2094
+#: templates/js/translated/stock.js:2739
msgid "Location"
msgstr "위치"
-#: build/serializers.py:416
+#: build/serializers.py:424
msgid "Stock location for scrapped outputs"
msgstr ""
-#: build/serializers.py:422
+#: build/serializers.py:430
msgid "Discard Allocations"
msgstr ""
-#: build/serializers.py:423
+#: build/serializers.py:431
msgid "Discard any stock allocations for scrapped outputs"
msgstr ""
-#: build/serializers.py:428
+#: build/serializers.py:436
msgid "Reason for scrapping build output(s)"
msgstr ""
-#: build/serializers.py:489
+#: build/serializers.py:497
msgid "Location for completed build outputs"
msgstr ""
-#: build/serializers.py:495 build/templates/build/build_base.html:151
-#: build/templates/build/detail.html:62 order/models.py:791
-#: order/models.py:1750 order/serializers.py:524 stock/admin.py:106
-#: stock/templates/stock/item_base.html:423
-#: templates/js/translated/barcode.js:252 templates/js/translated/build.js:2897
-#: templates/js/translated/purchase_order.js:1278
-#: templates/js/translated/purchase_order.js:1682
-#: templates/js/translated/return_order.js:319
-#: templates/js/translated/sales_order.js:807
-#: templates/js/translated/stock.js:1912 templates/js/translated/stock.js:2732
-#: templates/js/translated/stock.js:2859
+#: build/serializers.py:503 build/templates/build/build_base.html:152
+#: build/templates/build/detail.html:62 order/models.py:804
+#: order/models.py:1763 order/serializers.py:530 stock/admin.py:106
+#: stock/serializers.py:677 stock/templates/stock/item_base.html:423
+#: templates/js/translated/barcode.js:252 templates/js/translated/build.js:2114
+#: templates/js/translated/purchase_order.js:1293
+#: templates/js/translated/purchase_order.js:1697
+#: templates/js/translated/return_order.js:331
+#: templates/js/translated/sales_order.js:819
+#: templates/js/translated/stock.js:2069 templates/js/translated/stock.js:2863
+#: templates/js/translated/stock.js:2986
msgid "Status"
msgstr "상태"
-#: build/serializers.py:501
+#: build/serializers.py:509
msgid "Accept Incomplete Allocation"
msgstr ""
-#: build/serializers.py:502
+#: build/serializers.py:510
msgid "Complete outputs if stock has not been fully allocated"
msgstr ""
-#: build/serializers.py:571
+#: build/serializers.py:579
msgid "Remove Allocated Stock"
msgstr ""
-#: build/serializers.py:572
+#: build/serializers.py:580
msgid "Subtract any stock which has already been allocated to this build"
msgstr ""
-#: build/serializers.py:578
+#: build/serializers.py:586
msgid "Remove Incomplete Outputs"
msgstr ""
-#: build/serializers.py:579
+#: build/serializers.py:587
msgid "Delete any build outputs which have not been completed"
msgstr ""
-#: build/serializers.py:606
+#: build/serializers.py:614
msgid "Not permitted"
msgstr ""
-#: build/serializers.py:607
+#: build/serializers.py:615
msgid "Accept as consumed by this build order"
msgstr ""
-#: build/serializers.py:608
+#: build/serializers.py:616
msgid "Deallocate before completing this build order"
msgstr ""
-#: build/serializers.py:631
+#: build/serializers.py:639
msgid "Overallocated Stock"
msgstr ""
-#: build/serializers.py:633
+#: build/serializers.py:641
msgid "How do you want to handle extra stock items assigned to the build order"
msgstr ""
-#: build/serializers.py:643
+#: build/serializers.py:651
msgid "Some stock items have been overallocated"
msgstr ""
-#: build/serializers.py:648
+#: build/serializers.py:656
msgid "Accept Unallocated"
msgstr ""
-#: build/serializers.py:649
+#: build/serializers.py:657
msgid "Accept that stock items have not been fully allocated to this build order"
msgstr ""
-#: build/serializers.py:659 templates/js/translated/build.js:295
+#: build/serializers.py:667 templates/js/translated/build.js:304
msgid "Required stock has not been fully allocated"
msgstr ""
-#: build/serializers.py:664 order/serializers.py:261 order/serializers.py:1127
+#: build/serializers.py:672 order/serializers.py:267 order/serializers.py:1133
msgid "Accept Incomplete"
msgstr ""
-#: build/serializers.py:665
+#: build/serializers.py:673
msgid "Accept that the required number of build outputs have not been completed"
msgstr ""
-#: build/serializers.py:675 templates/js/translated/build.js:299
+#: build/serializers.py:683 templates/js/translated/build.js:308
msgid "Required build quantity has not been completed"
msgstr ""
-#: build/serializers.py:684 templates/js/translated/build.js:283
+#: build/serializers.py:692 templates/js/translated/build.js:292
msgid "Build order has incomplete outputs"
msgstr ""
-#: build/serializers.py:714 build/serializers.py:768 part/models.py:3686
-#: part/models.py:4069
-msgid "BOM Item"
-msgstr ""
-
-#: build/serializers.py:724
-msgid "Build output"
+#: build/serializers.py:722
+msgid "Build Line"
msgstr ""
#: build/serializers.py:732
+msgid "Build output"
+msgstr ""
+
+#: build/serializers.py:740
msgid "Build output must point to the same build"
msgstr ""
-#: build/serializers.py:782
+#: build/serializers.py:776
+msgid "Build Line Item"
+msgstr ""
+
+#: build/serializers.py:790
msgid "bom_item.part must point to the same part as the build order"
msgstr ""
-#: build/serializers.py:797 stock/serializers.py:783
+#: build/serializers.py:805 stock/serializers.py:900
msgid "Item must be in stock"
msgstr ""
-#: build/serializers.py:846 order/serializers.py:1117
+#: build/serializers.py:853 order/serializers.py:1123
#, python-brace-format
msgid "Available quantity ({q}) exceeded"
msgstr ""
-#: build/serializers.py:852
+#: build/serializers.py:859
msgid "Build output must be specified for allocation of tracked parts"
msgstr ""
-#: build/serializers.py:859
+#: build/serializers.py:866
msgid "Build output cannot be specified for allocation of untracked parts"
msgstr ""
-#: build/serializers.py:864
+#: build/serializers.py:871
msgid "This stock item has already been allocated to this build output"
msgstr ""
-#: build/serializers.py:887 order/serializers.py:1401
+#: build/serializers.py:894 order/serializers.py:1407
msgid "Allocation items must be provided"
msgstr ""
-#: build/serializers.py:943
+#: build/serializers.py:947
msgid "Stock location where parts are to be sourced (leave blank to take from any location)"
msgstr ""
-#: build/serializers.py:951
+#: build/serializers.py:955
msgid "Exclude Location"
msgstr ""
-#: build/serializers.py:952
+#: build/serializers.py:956
msgid "Exclude stock items from this selected location"
msgstr ""
-#: build/serializers.py:957
+#: build/serializers.py:961
msgid "Interchangeable Stock"
msgstr ""
-#: build/serializers.py:958
+#: build/serializers.py:962
msgid "Stock items in multiple locations can be used interchangeably"
msgstr ""
-#: build/serializers.py:963
+#: build/serializers.py:967
msgid "Substitute Stock"
msgstr ""
-#: build/serializers.py:964
+#: build/serializers.py:968
msgid "Allow allocation of substitute parts"
msgstr ""
-#: build/serializers.py:969
+#: build/serializers.py:973
msgid "Optional Items"
msgstr ""
-#: build/serializers.py:970
+#: build/serializers.py:974
msgid "Allocate optional BOM items to build order"
msgstr ""
@@ -1540,6 +1589,7 @@ msgstr ""
#: part/templates/part/part_base.html:43
#: stock/templates/stock/item_base.html:41
#: stock/templates/stock/location.html:54
+#: templates/js/translated/filters.js:336
msgid "Barcode actions"
msgstr ""
@@ -1618,69 +1668,67 @@ msgstr ""
msgid "Build Description"
msgstr ""
-#: build/templates/build/build_base.html:117
+#: build/templates/build/build_base.html:118
msgid "No build outputs have been created for this build order"
msgstr ""
-#: build/templates/build/build_base.html:124
+#: build/templates/build/build_base.html:125
msgid "Build Order is ready to mark as completed"
msgstr ""
-#: build/templates/build/build_base.html:129
+#: build/templates/build/build_base.html:130
msgid "Build Order cannot be completed as outstanding outputs remain"
msgstr ""
-#: build/templates/build/build_base.html:134
+#: build/templates/build/build_base.html:135
msgid "Required build quantity has not yet been completed"
msgstr ""
-#: build/templates/build/build_base.html:139
+#: build/templates/build/build_base.html:140
msgid "Stock has not been fully allocated to this Build Order"
msgstr ""
-#: build/templates/build/build_base.html:160
-#: build/templates/build/detail.html:138 order/models.py:240
-#: order/models.py:1099 order/templates/order/order_base.html:190
+#: build/templates/build/build_base.html:161
+#: build/templates/build/detail.html:138 order/models.py:244
+#: order/models.py:1112 order/templates/order/order_base.html:186
#: order/templates/order/return_order_base.html:165
#: order/templates/order/sales_order_base.html:193
#: report/templates/report/inventree_build_order_base.html:125
-#: templates/js/translated/build.js:2945 templates/js/translated/part.js:1802
-#: templates/js/translated/purchase_order.js:1699
-#: templates/js/translated/purchase_order.js:2115
-#: templates/js/translated/return_order.js:335
-#: templates/js/translated/return_order.js:735
-#: templates/js/translated/sales_order.js:823
-#: templates/js/translated/sales_order.js:1847
+#: templates/js/translated/build.js:2162 templates/js/translated/part.js:1801
+#: templates/js/translated/purchase_order.js:1714
+#: templates/js/translated/purchase_order.js:2125
+#: templates/js/translated/return_order.js:347
+#: templates/js/translated/return_order.js:747
+#: templates/js/translated/sales_order.js:835
+#: templates/js/translated/sales_order.js:1859
msgid "Target Date"
msgstr ""
-#: build/templates/build/build_base.html:165
+#: build/templates/build/build_base.html:166
#, python-format
msgid "This build was due on %(target)s"
msgstr ""
-#: build/templates/build/build_base.html:165
-#: build/templates/build/build_base.html:222
-#: order/templates/order/order_base.html:126
+#: build/templates/build/build_base.html:166
+#: build/templates/build/build_base.html:223
+#: order/templates/order/order_base.html:122
#: order/templates/order/return_order_base.html:118
#: order/templates/order/sales_order_base.html:123
-#: templates/js/translated/table_filters.js:68
-#: templates/js/translated/table_filters.js:454
-#: templates/js/translated/table_filters.js:539
-#: templates/js/translated/table_filters.js:580
+#: templates/js/translated/table_filters.js:74
+#: templates/js/translated/table_filters.js:460
+#: templates/js/translated/table_filters.js:561
+#: templates/js/translated/table_filters.js:602
msgid "Overdue"
msgstr ""
-#: build/templates/build/build_base.html:177
-#: build/templates/build/detail.html:67 build/templates/build/detail.html:149
-#: order/templates/order/sales_order_base.html:203
-#: templates/js/translated/table_filters.js:602
-msgid "Completed"
+#: build/templates/build/build_base.html:178
+#: build/templates/build/detail.html:67 build/templates/build/sidebar.html:13
+msgid "Completed Outputs"
msgstr ""
-#: build/templates/build/build_base.html:190
-#: build/templates/build/detail.html:101 order/api.py:1454 order/models.py:1304
-#: order/models.py:1403 order/models.py:1551
+#: build/templates/build/build_base.html:191
+#: build/templates/build/detail.html:101 order/api.py:1454 order/models.py:1317
+#: order/models.py:1416 order/models.py:1564
#: order/templates/order/sales_order_base.html:9
#: order/templates/order/sales_order_base.html:28
#: report/templates/report/inventree_build_order_base.html:135
@@ -1688,32 +1736,32 @@ msgstr ""
#: stock/templates/stock/item_base.html:370
#: templates/email/overdue_sales_order.html:15
#: templates/js/translated/pricing.js:915
-#: templates/js/translated/sales_order.js:757
-#: templates/js/translated/sales_order.js:980
-#: templates/js/translated/stock.js:2661
+#: templates/js/translated/sales_order.js:769
+#: templates/js/translated/sales_order.js:992
+#: templates/js/translated/stock.js:2792
msgid "Sales Order"
msgstr ""
-#: build/templates/build/build_base.html:197
+#: build/templates/build/build_base.html:198
#: build/templates/build/detail.html:115
#: report/templates/report/inventree_build_order_base.html:152
msgid "Issued By"
msgstr ""
-#: build/templates/build/build_base.html:211
-#: build/templates/build/detail.html:94 templates/js/translated/build.js:2862
+#: build/templates/build/build_base.html:212
+#: build/templates/build/detail.html:94 templates/js/translated/build.js:2079
msgid "Priority"
msgstr ""
-#: build/templates/build/build_base.html:273
+#: build/templates/build/build_base.html:274
msgid "Delete Build Order"
msgstr ""
-#: build/templates/build/build_base.html:283
+#: build/templates/build/build_base.html:284
msgid "Build Order QR Code"
msgstr ""
-#: build/templates/build/build_base.html:295
+#: build/templates/build/build_base.html:296
msgid "Link Barcode to Build Order"
msgstr ""
@@ -1729,8 +1777,8 @@ msgstr ""
msgid "Stock can be taken from any available location."
msgstr ""
-#: build/templates/build/detail.html:49 order/models.py:1222
-#: templates/js/translated/purchase_order.js:2157
+#: build/templates/build/detail.html:49 order/models.py:1235
+#: templates/js/translated/purchase_order.js:2167
msgid "Destination"
msgstr ""
@@ -1744,21 +1792,21 @@ msgstr ""
#: build/templates/build/detail.html:80 stock/admin.py:105
#: stock/templates/stock/item_base.html:163
-#: templates/js/translated/build.js:1432
-#: templates/js/translated/model_renderers.js:212
-#: templates/js/translated/purchase_order.js:1244
-#: templates/js/translated/stock.js:1093 templates/js/translated/stock.js:1926
-#: templates/js/translated/stock.js:2866
-#: templates/js/translated/table_filters.js:259
-#: templates/js/translated/table_filters.js:350
+#: templates/js/translated/build.js:1319
+#: templates/js/translated/model_renderers.js:226
+#: templates/js/translated/purchase_order.js:1259
+#: templates/js/translated/stock.js:1092 templates/js/translated/stock.js:2083
+#: templates/js/translated/stock.js:2993
+#: templates/js/translated/table_filters.js:265
+#: templates/js/translated/table_filters.js:356
msgid "Batch"
msgstr ""
#: build/templates/build/detail.html:133
-#: order/templates/order/order_base.html:177
+#: order/templates/order/order_base.html:173
#: order/templates/order/return_order_base.html:152
#: order/templates/order/sales_order_base.html:187
-#: templates/js/translated/build.js:2905
+#: templates/js/translated/build.js:2122
msgid "Created"
msgstr ""
@@ -1766,147 +1814,106 @@ msgstr ""
msgid "No target date set"
msgstr ""
+#: build/templates/build/detail.html:149
+#: order/templates/order/sales_order_base.html:203
+#: templates/js/translated/table_filters.js:624
+msgid "Completed"
+msgstr ""
+
#: build/templates/build/detail.html:153
msgid "Build not complete"
msgstr ""
-#: build/templates/build/detail.html:164 build/templates/build/sidebar.html:19
+#: build/templates/build/detail.html:164 build/templates/build/sidebar.html:17
msgid "Child Build Orders"
msgstr ""
-#: build/templates/build/detail.html:179
+#: build/templates/build/detail.html:177
msgid "Allocate Stock to Build"
msgstr ""
-#: build/templates/build/detail.html:183 templates/js/translated/build.js:2276
-msgid "Unallocate stock"
+#: build/templates/build/detail.html:181
+msgid "Deallocate stock"
+msgstr ""
+
+#: build/templates/build/detail.html:182
+msgid "Deallocate Stock"
msgstr ""
#: build/templates/build/detail.html:184
-msgid "Unallocate Stock"
-msgstr ""
-
-#: build/templates/build/detail.html:186
msgid "Automatically allocate stock to build"
msgstr ""
-#: build/templates/build/detail.html:187
+#: build/templates/build/detail.html:185
msgid "Auto Allocate"
msgstr ""
-#: build/templates/build/detail.html:189
+#: build/templates/build/detail.html:187
msgid "Manually allocate stock to build"
msgstr ""
-#: build/templates/build/detail.html:190 build/templates/build/sidebar.html:8
+#: build/templates/build/detail.html:188 build/templates/build/sidebar.html:8
msgid "Allocate Stock"
msgstr ""
-#: build/templates/build/detail.html:193
+#: build/templates/build/detail.html:191
msgid "Order required parts"
msgstr ""
-#: build/templates/build/detail.html:194
-#: company/templates/company/detail.html:38
-#: company/templates/company/detail.html:86
-#: part/templates/part/category.html:184
-#: templates/js/translated/purchase_order.js:789
+#: build/templates/build/detail.html:192
+#: templates/js/translated/purchase_order.js:800
msgid "Order Parts"
msgstr ""
-#: build/templates/build/detail.html:206
-msgid "Untracked stock has been fully allocated for this Build Order"
-msgstr ""
-
#: build/templates/build/detail.html:210
-msgid "Untracked stock has not been fully allocated for this Build Order"
-msgstr ""
-
-#: build/templates/build/detail.html:217
-msgid "Allocate selected items"
-msgstr ""
-
-#: build/templates/build/detail.html:227
-msgid "This Build Order does not have any associated untracked BOM items"
-msgstr ""
-
-#: build/templates/build/detail.html:236
msgid "Incomplete Build Outputs"
msgstr ""
-#: build/templates/build/detail.html:240
+#: build/templates/build/detail.html:214
msgid "Create new build output"
msgstr ""
-#: build/templates/build/detail.html:241
+#: build/templates/build/detail.html:215
msgid "New Build Output"
msgstr ""
-#: build/templates/build/detail.html:255
-msgid "Output Actions"
-msgstr ""
-
-#: build/templates/build/detail.html:260
-msgid "Complete selected build outputs"
-msgstr ""
-
-#: build/templates/build/detail.html:261
-msgid "Complete outputs"
-msgstr ""
-
-#: build/templates/build/detail.html:265
-msgid "Scrap selected build outputs"
-msgstr ""
-
-#: build/templates/build/detail.html:266
-msgid "Scrap outputs"
-msgstr ""
-
-#: build/templates/build/detail.html:270
-msgid "Delete selected build outputs"
-msgstr ""
-
-#: build/templates/build/detail.html:271
-msgid "Delete outputs"
-msgstr ""
-
-#: build/templates/build/detail.html:288 build/templates/build/sidebar.html:11
+#: build/templates/build/detail.html:232 build/templates/build/sidebar.html:15
msgid "Consumed Stock"
msgstr ""
-#: build/templates/build/detail.html:300
+#: build/templates/build/detail.html:244
msgid "Completed Build Outputs"
msgstr ""
-#: build/templates/build/detail.html:312 build/templates/build/sidebar.html:21
-#: company/templates/company/detail.html:261
-#: company/templates/company/manufacturer_part.html:151
+#: build/templates/build/detail.html:256 build/templates/build/sidebar.html:19
+#: company/templates/company/detail.html:229
+#: company/templates/company/manufacturer_part.html:141
#: company/templates/company/manufacturer_part_sidebar.html:9
-#: company/templates/company/sidebar.html:37
+#: company/templates/company/sidebar.html:39
#: order/templates/order/po_sidebar.html:9
-#: order/templates/order/purchase_order_detail.html:102
-#: order/templates/order/return_order_detail.html:74
+#: order/templates/order/purchase_order_detail.html:84
+#: order/templates/order/return_order_detail.html:70
#: order/templates/order/return_order_sidebar.html:7
-#: order/templates/order/sales_order_detail.html:134
-#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:234
-#: part/templates/part/part_sidebar.html:61 stock/templates/stock/item.html:117
+#: order/templates/order/sales_order_detail.html:124
+#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:217
+#: part/templates/part/part_sidebar.html:61 stock/templates/stock/item.html:109
#: stock/templates/stock/stock_sidebar.html:23
msgid "Attachments"
msgstr ""
-#: build/templates/build/detail.html:327
+#: build/templates/build/detail.html:271
msgid "Build Notes"
msgstr ""
-#: build/templates/build/detail.html:502
+#: build/templates/build/detail.html:425
msgid "Allocation Complete"
msgstr ""
-#: build/templates/build/detail.html:503
-msgid "All untracked stock items have been allocated"
+#: build/templates/build/detail.html:426
+msgid "All lines have been fully allocated"
msgstr ""
-#: build/templates/build/index.html:18 part/templates/part/detail.html:340
+#: build/templates/build/index.html:18 part/templates/part/detail.html:319
msgid "New Build Order"
msgstr ""
@@ -1914,14 +1921,10 @@ msgstr ""
msgid "Build Order Details"
msgstr ""
-#: build/templates/build/sidebar.html:14
+#: build/templates/build/sidebar.html:10
msgid "Incomplete Outputs"
msgstr ""
-#: build/templates/build/sidebar.html:17
-msgid "Completed Outputs"
-msgstr ""
-
#: common/files.py:63
#, python-brace-format
msgid "Unsupported file format: {fmt}"
@@ -1968,16 +1971,6 @@ msgstr ""
msgid "Timestamp of last update"
msgstr ""
-#: common/models.py:104 order/admin.py:17 order/models.py:234
-#: templates/InvenTree/settings/settings_staff_js.html:70
-#: templates/js/translated/purchase_order.js:1670
-#: templates/js/translated/return_order.js:306
-#: templates/js/translated/sales_order.js:794
-#: templates/js/translated/table_filters.js:24
-#: templates/project_code_data.html:6
-msgid "Project Code"
-msgstr ""
-
#: common/models.py:105
msgid "Unique project code"
msgstr ""
@@ -2261,9 +2254,9 @@ msgstr ""
msgid "Copy category parameter templates when creating a part"
msgstr ""
-#: common/models.py:1162 part/admin.py:55 part/models.py:3560
-#: report/models.py:166 templates/js/translated/table_filters.js:109
-#: templates/js/translated/table_filters.js:680
+#: common/models.py:1162 part/admin.py:55 part/models.py:3594
+#: report/models.py:166 templates/js/translated/table_filters.js:115
+#: templates/js/translated/table_filters.js:702
msgid "Template"
msgstr ""
@@ -2271,10 +2264,10 @@ msgstr ""
msgid "Parts are templates by default"
msgstr ""
-#: common/models.py:1169 part/admin.py:51 part/admin.py:283 part/models.py:996
-#: templates/js/translated/bom.js:1598
-#: templates/js/translated/table_filters.js:276
-#: templates/js/translated/table_filters.js:634
+#: common/models.py:1169 part/admin.py:51 part/admin.py:283 part/models.py:997
+#: templates/js/translated/bom.js:1618
+#: templates/js/translated/table_filters.js:282
+#: templates/js/translated/table_filters.js:656
msgid "Assembly"
msgstr ""
@@ -2282,8 +2275,8 @@ msgstr ""
msgid "Parts can be assembled from other components by default"
msgstr ""
-#: common/models.py:1176 part/admin.py:52 part/models.py:1002
-#: templates/js/translated/table_filters.js:642
+#: common/models.py:1176 part/admin.py:52 part/models.py:1003
+#: templates/js/translated/table_filters.js:664
msgid "Component"
msgstr ""
@@ -2291,7 +2284,7 @@ msgstr ""
msgid "Parts can be used as sub-components by default"
msgstr ""
-#: common/models.py:1183 part/admin.py:53 part/models.py:1013
+#: common/models.py:1183 part/admin.py:53 part/models.py:1014
msgid "Purchaseable"
msgstr "구입 가능"
@@ -2299,8 +2292,8 @@ msgstr "구입 가능"
msgid "Parts are purchaseable by default"
msgstr ""
-#: common/models.py:1190 part/admin.py:54 part/models.py:1018
-#: templates/js/translated/table_filters.js:668
+#: common/models.py:1190 part/admin.py:54 part/models.py:1019
+#: templates/js/translated/table_filters.js:690
msgid "Salable"
msgstr "판매 가능"
@@ -2308,10 +2301,10 @@ msgstr "판매 가능"
msgid "Parts are salable by default"
msgstr ""
-#: common/models.py:1197 part/admin.py:56 part/models.py:1008
-#: templates/js/translated/table_filters.js:117
-#: templates/js/translated/table_filters.js:193
-#: templates/js/translated/table_filters.js:684
+#: common/models.py:1197 part/admin.py:56 part/models.py:1009
+#: templates/js/translated/table_filters.js:123
+#: templates/js/translated/table_filters.js:199
+#: templates/js/translated/table_filters.js:706
msgid "Trackable"
msgstr ""
@@ -2319,10 +2312,10 @@ msgstr ""
msgid "Parts are trackable by default"
msgstr ""
-#: common/models.py:1204 part/admin.py:57 part/models.py:1028
+#: common/models.py:1204 part/admin.py:57 part/models.py:1029
#: part/templates/part/part_base.html:156
-#: templates/js/translated/table_filters.js:113
-#: templates/js/translated/table_filters.js:688
+#: templates/js/translated/table_filters.js:119
+#: templates/js/translated/table_filters.js:710
msgid "Virtual"
msgstr ""
@@ -2354,7 +2347,7 @@ msgstr ""
msgid "Allow creation of initial stock when adding a new part"
msgstr ""
-#: common/models.py:1232 templates/js/translated/part.js:108
+#: common/models.py:1232 templates/js/translated/part.js:107
msgid "Initial Supplier Data"
msgstr ""
@@ -2603,179 +2596,179 @@ msgid "Stock location default icon (empty means no icon)"
msgstr ""
#: common/models.py:1471
-msgid "Build Order Reference Pattern"
+msgid "Show Installed Stock Items"
msgstr ""
#: common/models.py:1472
-msgid "Required pattern for generating Build Order reference field"
+msgid "Display installed stock items in stock tables"
msgstr ""
#: common/models.py:1478
-msgid "Enable Return Orders"
+msgid "Build Order Reference Pattern"
msgstr ""
#: common/models.py:1479
-msgid "Enable return order functionality in the user interface"
+msgid "Required pattern for generating Build Order reference field"
msgstr ""
#: common/models.py:1485
-msgid "Return Order Reference Pattern"
+msgid "Enable Return Orders"
msgstr ""
#: common/models.py:1486
-msgid "Required pattern for generating Return Order reference field"
+msgid "Enable return order functionality in the user interface"
msgstr ""
#: common/models.py:1492
-msgid "Edit Completed Return Orders"
+msgid "Return Order Reference Pattern"
msgstr ""
#: common/models.py:1493
-msgid "Allow editing of return orders after they have been completed"
+msgid "Required pattern for generating Return Order reference field"
msgstr ""
#: common/models.py:1499
-msgid "Sales Order Reference Pattern"
+msgid "Edit Completed Return Orders"
msgstr ""
#: common/models.py:1500
-msgid "Required pattern for generating Sales Order reference field"
+msgid "Allow editing of return orders after they have been completed"
msgstr ""
#: common/models.py:1506
-msgid "Sales Order Default Shipment"
+msgid "Sales Order Reference Pattern"
msgstr ""
#: common/models.py:1507
-msgid "Enable creation of default shipment with sales orders"
+msgid "Required pattern for generating Sales Order reference field"
msgstr ""
#: common/models.py:1513
-msgid "Edit Completed Sales Orders"
+msgid "Sales Order Default Shipment"
msgstr ""
#: common/models.py:1514
-msgid "Allow editing of sales orders after they have been shipped or completed"
+msgid "Enable creation of default shipment with sales orders"
msgstr ""
#: common/models.py:1520
-msgid "Purchase Order Reference Pattern"
+msgid "Edit Completed Sales Orders"
msgstr ""
#: common/models.py:1521
-msgid "Required pattern for generating Purchase Order reference field"
+msgid "Allow editing of sales orders after they have been shipped or completed"
msgstr ""
#: common/models.py:1527
-msgid "Edit Completed Purchase Orders"
+msgid "Purchase Order Reference Pattern"
msgstr ""
#: common/models.py:1528
-msgid "Allow editing of purchase orders after they have been shipped or completed"
+msgid "Required pattern for generating Purchase Order reference field"
+msgstr ""
+
+#: common/models.py:1534
+msgid "Edit Completed Purchase Orders"
msgstr ""
#: common/models.py:1535
-msgid "Enable password forgot"
-msgstr ""
-
-#: common/models.py:1536
-msgid "Enable password forgot function on the login pages"
+msgid "Allow editing of purchase orders after they have been shipped or completed"
msgstr ""
#: common/models.py:1542
-msgid "Enable registration"
+msgid "Enable password forgot"
msgstr ""
#: common/models.py:1543
-msgid "Enable self-registration for users on the login pages"
+msgid "Enable password forgot function on the login pages"
msgstr ""
#: common/models.py:1549
+msgid "Enable registration"
+msgstr ""
+
+#: common/models.py:1550
+msgid "Enable self-registration for users on the login pages"
+msgstr ""
+
+#: common/models.py:1556
msgid "Enable SSO"
msgstr "SSO 활성화"
-#: common/models.py:1550
+#: common/models.py:1557
msgid "Enable SSO on the login pages"
msgstr "로그인 페이지에서 SSO 활성화"
-#: common/models.py:1556
+#: common/models.py:1563
msgid "Enable SSO registration"
msgstr ""
-#: common/models.py:1557
+#: common/models.py:1564
msgid "Enable self-registration via SSO for users on the login pages"
msgstr ""
-#: common/models.py:1563
+#: common/models.py:1570
msgid "Email required"
msgstr "이메일 필요"
-#: common/models.py:1564
+#: common/models.py:1571
msgid "Require user to supply mail on signup"
msgstr ""
-#: common/models.py:1570
+#: common/models.py:1577
msgid "Auto-fill SSO users"
msgstr ""
-#: common/models.py:1571
+#: common/models.py:1578
msgid "Automatically fill out user-details from SSO account-data"
msgstr ""
-#: common/models.py:1577
+#: common/models.py:1584
msgid "Mail twice"
msgstr "두 번 보내기"
-#: common/models.py:1578
+#: common/models.py:1585
msgid "On signup ask users twice for their mail"
msgstr ""
-#: common/models.py:1584
+#: common/models.py:1591
msgid "Password twice"
msgstr ""
-#: common/models.py:1585
+#: common/models.py:1592
msgid "On signup ask users twice for their password"
msgstr ""
-#: common/models.py:1591
+#: common/models.py:1598
msgid "Allowed domains"
msgstr ""
-#: common/models.py:1592
+#: common/models.py:1599
msgid "Restrict signup to certain domains (comma-separated, starting with @)"
msgstr ""
-#: common/models.py:1598
+#: common/models.py:1605
msgid "Group on signup"
msgstr ""
-#: common/models.py:1599
+#: common/models.py:1606
msgid "Group to which new users are assigned on registration"
msgstr ""
-#: common/models.py:1605
+#: common/models.py:1612
msgid "Enforce MFA"
msgstr ""
-#: common/models.py:1606
+#: common/models.py:1613
msgid "Users must use multifactor security."
msgstr ""
-#: common/models.py:1612
+#: common/models.py:1619
msgid "Check plugins on startup"
msgstr ""
-#: common/models.py:1613
-msgid "Check that all plugins are installed on startup - enable in container environments"
-msgstr ""
-
#: common/models.py:1620
-msgid "Check plugin signatures"
-msgstr ""
-
-#: common/models.py:1621
-msgid "Check and show signatures for plugins"
+msgid "Check that all plugins are installed on startup - enable in container environments"
msgstr ""
#: common/models.py:1628
@@ -2850,7 +2843,7 @@ msgstr ""
msgid "Stocktake reports will be deleted after specified number of days"
msgstr ""
-#: common/models.py:1710 common/models.py:2147
+#: common/models.py:1710 common/models.py:2133
msgid "Settings key (must be unique - case insensitive"
msgstr ""
@@ -2891,528 +2884,513 @@ msgid "Show latest parts on the homepage"
msgstr ""
#: common/models.py:1779
-msgid "Recent Part Count"
-msgstr ""
-
-#: common/models.py:1780
-msgid "Number of recent parts to display on index page"
-msgstr ""
-
-#: common/models.py:1786
msgid "Show unvalidated BOMs"
msgstr ""
-#: common/models.py:1787
+#: common/models.py:1780
msgid "Show BOMs that await validation on the homepage"
msgstr ""
-#: common/models.py:1793
+#: common/models.py:1786
msgid "Show recent stock changes"
msgstr ""
-#: common/models.py:1794
+#: common/models.py:1787
msgid "Show recently changed stock items on the homepage"
msgstr ""
-#: common/models.py:1800
-msgid "Recent Stock Count"
-msgstr ""
-
-#: common/models.py:1801
-msgid "Number of recent stock items to display on index page"
-msgstr ""
-
-#: common/models.py:1807
+#: common/models.py:1793
msgid "Show low stock"
msgstr ""
-#: common/models.py:1808
+#: common/models.py:1794
msgid "Show low stock items on the homepage"
msgstr ""
-#: common/models.py:1814
+#: common/models.py:1800
msgid "Show depleted stock"
msgstr ""
-#: common/models.py:1815
+#: common/models.py:1801
msgid "Show depleted stock items on the homepage"
msgstr ""
-#: common/models.py:1821
+#: common/models.py:1807
msgid "Show needed stock"
msgstr ""
-#: common/models.py:1822
+#: common/models.py:1808
msgid "Show stock items needed for builds on the homepage"
msgstr ""
-#: common/models.py:1828
+#: common/models.py:1814
msgid "Show expired stock"
msgstr ""
-#: common/models.py:1829
+#: common/models.py:1815
msgid "Show expired stock items on the homepage"
msgstr ""
-#: common/models.py:1835
+#: common/models.py:1821
msgid "Show stale stock"
msgstr ""
-#: common/models.py:1836
+#: common/models.py:1822
msgid "Show stale stock items on the homepage"
msgstr ""
-#: common/models.py:1842
+#: common/models.py:1828
msgid "Show pending builds"
msgstr ""
-#: common/models.py:1843
+#: common/models.py:1829
msgid "Show pending builds on the homepage"
msgstr ""
-#: common/models.py:1849
+#: common/models.py:1835
msgid "Show overdue builds"
msgstr ""
-#: common/models.py:1850
+#: common/models.py:1836
msgid "Show overdue builds on the homepage"
msgstr ""
-#: common/models.py:1856
+#: common/models.py:1842
msgid "Show outstanding POs"
msgstr ""
-#: common/models.py:1857
+#: common/models.py:1843
msgid "Show outstanding POs on the homepage"
msgstr ""
-#: common/models.py:1863
+#: common/models.py:1849
msgid "Show overdue POs"
msgstr ""
-#: common/models.py:1864
+#: common/models.py:1850
msgid "Show overdue POs on the homepage"
msgstr ""
-#: common/models.py:1870
+#: common/models.py:1856
msgid "Show outstanding SOs"
msgstr ""
-#: common/models.py:1871
+#: common/models.py:1857
msgid "Show outstanding SOs on the homepage"
msgstr ""
-#: common/models.py:1877
+#: common/models.py:1863
msgid "Show overdue SOs"
msgstr ""
-#: common/models.py:1878
+#: common/models.py:1864
msgid "Show overdue SOs on the homepage"
msgstr ""
-#: common/models.py:1884
+#: common/models.py:1870
msgid "Show pending SO shipments"
msgstr ""
-#: common/models.py:1885
+#: common/models.py:1871
msgid "Show pending SO shipments on the homepage"
msgstr ""
-#: common/models.py:1891
+#: common/models.py:1877
msgid "Show News"
msgstr ""
-#: common/models.py:1892
+#: common/models.py:1878
msgid "Show news on the homepage"
msgstr ""
-#: common/models.py:1898
+#: common/models.py:1884
msgid "Inline label display"
msgstr ""
-#: common/models.py:1899
+#: common/models.py:1885
msgid "Display PDF labels in the browser, instead of downloading as a file"
msgstr ""
-#: common/models.py:1905
+#: common/models.py:1891
msgid "Default label printer"
msgstr ""
-#: common/models.py:1906
+#: common/models.py:1892
msgid "Configure which label printer should be selected by default"
msgstr ""
-#: common/models.py:1912
+#: common/models.py:1898
msgid "Inline report display"
msgstr ""
-#: common/models.py:1913
+#: common/models.py:1899
msgid "Display PDF reports in the browser, instead of downloading as a file"
msgstr ""
-#: common/models.py:1919
+#: common/models.py:1905
msgid "Search Parts"
msgstr ""
-#: common/models.py:1920
+#: common/models.py:1906
msgid "Display parts in search preview window"
msgstr ""
-#: common/models.py:1926
+#: common/models.py:1912
msgid "Search Supplier Parts"
msgstr ""
-#: common/models.py:1927
+#: common/models.py:1913
msgid "Display supplier parts in search preview window"
msgstr ""
-#: common/models.py:1933
+#: common/models.py:1919
msgid "Search Manufacturer Parts"
msgstr ""
-#: common/models.py:1934
+#: common/models.py:1920
msgid "Display manufacturer parts in search preview window"
msgstr ""
-#: common/models.py:1940
+#: common/models.py:1926
msgid "Hide Inactive Parts"
msgstr ""
-#: common/models.py:1941
+#: common/models.py:1927
msgid "Excluded inactive parts from search preview window"
msgstr ""
-#: common/models.py:1947
+#: common/models.py:1933
msgid "Search Categories"
msgstr ""
-#: common/models.py:1948
+#: common/models.py:1934
msgid "Display part categories in search preview window"
msgstr ""
-#: common/models.py:1954
+#: common/models.py:1940
msgid "Search Stock"
msgstr ""
-#: common/models.py:1955
+#: common/models.py:1941
msgid "Display stock items in search preview window"
msgstr ""
-#: common/models.py:1961
+#: common/models.py:1947
msgid "Hide Unavailable Stock Items"
msgstr ""
-#: common/models.py:1962
+#: common/models.py:1948
msgid "Exclude stock items which are not available from the search preview window"
msgstr ""
-#: common/models.py:1968
+#: common/models.py:1954
msgid "Search Locations"
msgstr ""
-#: common/models.py:1969
+#: common/models.py:1955
msgid "Display stock locations in search preview window"
msgstr ""
-#: common/models.py:1975
+#: common/models.py:1961
msgid "Search Companies"
msgstr ""
-#: common/models.py:1976
+#: common/models.py:1962
msgid "Display companies in search preview window"
msgstr ""
-#: common/models.py:1982
+#: common/models.py:1968
msgid "Search Build Orders"
msgstr ""
-#: common/models.py:1983
+#: common/models.py:1969
msgid "Display build orders in search preview window"
msgstr ""
-#: common/models.py:1989
+#: common/models.py:1975
msgid "Search Purchase Orders"
msgstr ""
-#: common/models.py:1990
+#: common/models.py:1976
msgid "Display purchase orders in search preview window"
msgstr ""
-#: common/models.py:1996
+#: common/models.py:1982
msgid "Exclude Inactive Purchase Orders"
msgstr ""
-#: common/models.py:1997
+#: common/models.py:1983
msgid "Exclude inactive purchase orders from search preview window"
msgstr ""
-#: common/models.py:2003
+#: common/models.py:1989
msgid "Search Sales Orders"
msgstr ""
-#: common/models.py:2004
+#: common/models.py:1990
msgid "Display sales orders in search preview window"
msgstr ""
-#: common/models.py:2010
+#: common/models.py:1996
msgid "Exclude Inactive Sales Orders"
msgstr ""
-#: common/models.py:2011
+#: common/models.py:1997
msgid "Exclude inactive sales orders from search preview window"
msgstr ""
-#: common/models.py:2017
+#: common/models.py:2003
msgid "Search Return Orders"
msgstr ""
-#: common/models.py:2018
+#: common/models.py:2004
msgid "Display return orders in search preview window"
msgstr ""
-#: common/models.py:2024
+#: common/models.py:2010
msgid "Exclude Inactive Return Orders"
msgstr ""
-#: common/models.py:2025
+#: common/models.py:2011
msgid "Exclude inactive return orders from search preview window"
msgstr ""
-#: common/models.py:2031
+#: common/models.py:2017
msgid "Search Preview Results"
msgstr ""
-#: common/models.py:2032
+#: common/models.py:2018
msgid "Number of results to show in each section of the search preview window"
msgstr ""
-#: common/models.py:2038
+#: common/models.py:2024
msgid "Regex Search"
msgstr ""
-#: common/models.py:2039
+#: common/models.py:2025
msgid "Enable regular expressions in search queries"
msgstr ""
-#: common/models.py:2045
+#: common/models.py:2031
msgid "Whole Word Search"
msgstr ""
-#: common/models.py:2046
+#: common/models.py:2032
msgid "Search queries return results for whole word matches"
msgstr ""
-#: common/models.py:2052
+#: common/models.py:2038
msgid "Show Quantity in Forms"
msgstr ""
-#: common/models.py:2053
+#: common/models.py:2039
msgid "Display available part quantity in some forms"
msgstr ""
-#: common/models.py:2059
+#: common/models.py:2045
msgid "Escape Key Closes Forms"
msgstr ""
-#: common/models.py:2060
+#: common/models.py:2046
msgid "Use the escape key to close modal forms"
msgstr ""
-#: common/models.py:2066
+#: common/models.py:2052
msgid "Fixed Navbar"
msgstr ""
-#: common/models.py:2067
+#: common/models.py:2053
msgid "The navbar position is fixed to the top of the screen"
msgstr ""
-#: common/models.py:2073
+#: common/models.py:2059
msgid "Date Format"
msgstr ""
-#: common/models.py:2074
+#: common/models.py:2060
msgid "Preferred format for displaying dates"
msgstr ""
-#: common/models.py:2088 part/templates/part/detail.html:41
+#: common/models.py:2074 part/templates/part/detail.html:41
msgid "Part Scheduling"
msgstr ""
-#: common/models.py:2089
+#: common/models.py:2075
msgid "Display part scheduling information"
msgstr ""
-#: common/models.py:2095 part/templates/part/detail.html:62
+#: common/models.py:2081 part/templates/part/detail.html:62
msgid "Part Stocktake"
msgstr ""
-#: common/models.py:2096
+#: common/models.py:2082
msgid "Display part stocktake information (if stocktake functionality is enabled)"
msgstr ""
-#: common/models.py:2102
+#: common/models.py:2088
msgid "Table String Length"
msgstr ""
-#: common/models.py:2103
+#: common/models.py:2089
msgid "Maximimum length limit for strings displayed in table views"
msgstr ""
-#: common/models.py:2112
+#: common/models.py:2098
msgid "Default part label template"
msgstr ""
-#: common/models.py:2113
+#: common/models.py:2099
msgid "The part label template to be automatically selected"
msgstr ""
-#: common/models.py:2121
+#: common/models.py:2107
msgid "Default stock item template"
msgstr ""
-#: common/models.py:2122
+#: common/models.py:2108
msgid "The stock item label template to be automatically selected"
msgstr ""
-#: common/models.py:2130
+#: common/models.py:2116
msgid "Default stock location label template"
msgstr ""
-#: common/models.py:2131
+#: common/models.py:2117
msgid "The stock location label template to be automatically selected"
msgstr ""
-#: common/models.py:2177
+#: common/models.py:2163
msgid "Price break quantity"
msgstr ""
-#: common/models.py:2184 company/serializers.py:434 order/admin.py:43
-#: order/models.py:1132 order/models.py:1939
-#: templates/js/translated/company.js:1433 templates/js/translated/part.js:1856
+#: common/models.py:2170 company/serializers.py:491 order/admin.py:43
+#: order/models.py:1145 order/models.py:1952
+#: templates/js/translated/company.js:1854 templates/js/translated/part.js:1855
#: templates/js/translated/pricing.js:621
-#: templates/js/translated/return_order.js:725
+#: templates/js/translated/return_order.js:737
msgid "Price"
msgstr ""
-#: common/models.py:2185
+#: common/models.py:2171
msgid "Unit price at specified quantity"
msgstr ""
-#: common/models.py:2345 common/models.py:2523
+#: common/models.py:2331 common/models.py:2509
msgid "Endpoint"
msgstr ""
-#: common/models.py:2346
+#: common/models.py:2332
msgid "Endpoint at which this webhook is received"
msgstr ""
-#: common/models.py:2355
+#: common/models.py:2341
msgid "Name for this webhook"
msgstr ""
-#: common/models.py:2360 part/admin.py:50 part/models.py:1023
-#: plugin/models.py:47 templates/js/translated/table_filters.js:105
-#: templates/js/translated/table_filters.js:189
-#: templates/js/translated/table_filters.js:434
-#: templates/js/translated/table_filters.js:450
-#: templates/js/translated/table_filters.js:629
+#: common/models.py:2346 part/admin.py:50 part/models.py:1024
+#: plugin/models.py:48 templates/js/translated/table_filters.js:111
+#: templates/js/translated/table_filters.js:195
+#: templates/js/translated/table_filters.js:440
+#: templates/js/translated/table_filters.js:456
+#: templates/js/translated/table_filters.js:651
msgid "Active"
msgstr ""
-#: common/models.py:2361
+#: common/models.py:2347
msgid "Is this webhook active"
msgstr ""
-#: common/models.py:2375
+#: common/models.py:2361
msgid "Token"
msgstr ""
-#: common/models.py:2376
+#: common/models.py:2362
msgid "Token for access"
msgstr ""
-#: common/models.py:2383
+#: common/models.py:2369
msgid "Secret"
msgstr ""
-#: common/models.py:2384
+#: common/models.py:2370
msgid "Shared secret for HMAC"
msgstr ""
-#: common/models.py:2490
+#: common/models.py:2476
msgid "Message ID"
msgstr ""
-#: common/models.py:2491
+#: common/models.py:2477
msgid "Unique identifier for this message"
msgstr ""
-#: common/models.py:2499
+#: common/models.py:2485
msgid "Host"
msgstr ""
-#: common/models.py:2500
+#: common/models.py:2486
msgid "Host from which this message was received"
msgstr ""
-#: common/models.py:2507
+#: common/models.py:2493
msgid "Header"
msgstr ""
-#: common/models.py:2508
+#: common/models.py:2494
msgid "Header of this message"
msgstr ""
-#: common/models.py:2514
+#: common/models.py:2500
msgid "Body"
msgstr ""
-#: common/models.py:2515
+#: common/models.py:2501
msgid "Body of this message"
msgstr ""
-#: common/models.py:2524
+#: common/models.py:2510
msgid "Endpoint on which this message was received"
msgstr ""
-#: common/models.py:2529
+#: common/models.py:2515
msgid "Worked on"
msgstr ""
-#: common/models.py:2530
+#: common/models.py:2516
msgid "Was the work on this message finished?"
msgstr ""
-#: common/models.py:2684
+#: common/models.py:2670
msgid "Id"
msgstr ""
-#: common/models.py:2690 templates/js/translated/news.js:44
+#: common/models.py:2676 templates/js/translated/company.js:996
+#: templates/js/translated/news.js:44
msgid "Title"
msgstr ""
-#: common/models.py:2700 templates/js/translated/news.js:60
+#: common/models.py:2686 templates/js/translated/news.js:60
msgid "Published"
msgstr ""
-#: common/models.py:2705 templates/InvenTree/settings/plugin_settings.html:32
+#: common/models.py:2691 templates/InvenTree/settings/plugin_settings.html:32
#: templates/js/translated/news.js:56 templates/js/translated/plugin.js:106
msgid "Author"
msgstr "작성자"
-#: common/models.py:2710 templates/js/translated/news.js:52
+#: common/models.py:2696 templates/js/translated/news.js:52
msgid "Summary"
msgstr ""
-#: common/models.py:2715
+#: common/models.py:2701
msgid "Read"
msgstr ""
-#: common/models.py:2716
+#: common/models.py:2702
msgid "Was this news item read?"
msgstr ""
-#: common/models.py:2736 company/models.py:143 part/models.py:914
+#: common/models.py:2722 company/models.py:139 part/models.py:915
#: report/templates/report/inventree_bill_of_materials_report.html:126
#: report/templates/report/inventree_bill_of_materials_report.html:148
#: report/templates/report/inventree_return_order_report_base.html:35
@@ -3422,7 +3400,7 @@ msgstr ""
msgid "Image"
msgstr "이미지"
-#: common/models.py:2737
+#: common/models.py:2723
msgid "Image file"
msgstr ""
@@ -3499,7 +3477,7 @@ msgstr ""
#: company/models.py:113 company/templates/company/company_base.html:101
#: templates/InvenTree/settings/plugin_settings.html:54
-#: templates/js/translated/company.js:514
+#: templates/js/translated/company.js:521
msgid "Website"
msgstr "웹사이트"
@@ -3507,303 +3485,387 @@ msgstr "웹사이트"
msgid "Company website URL"
msgstr "회사 웹사이트 URL"
-#: company/models.py:118 company/templates/company/company_base.html:119
-msgid "Address"
-msgstr "주소"
-
-#: company/models.py:119
-msgid "Company address"
-msgstr "회사 주소"
-
-#: company/models.py:122
+#: company/models.py:118
msgid "Phone number"
msgstr "전화번호"
-#: company/models.py:123
+#: company/models.py:119
msgid "Contact phone number"
msgstr ""
-#: company/models.py:126 company/templates/company/company_base.html:133
+#: company/models.py:122 company/templates/company/company_base.html:133
#: templates/InvenTree/settings/user.html:49
-#: templates/js/translated/company.js:659
+#: templates/js/translated/company.js:666
msgid "Email"
msgstr "이메일"
-#: company/models.py:126
+#: company/models.py:122
msgid "Contact email address"
msgstr ""
-#: company/models.py:129 company/templates/company/company_base.html:140
-#: order/models.py:266 order/templates/order/order_base.html:207
+#: company/models.py:125 company/templates/company/company_base.html:140
+#: order/models.py:270 order/templates/order/order_base.html:203
#: order/templates/order/return_order_base.html:175
#: order/templates/order/sales_order_base.html:215
msgid "Contact"
msgstr ""
-#: company/models.py:130
+#: company/models.py:126
msgid "Point of contact"
msgstr ""
-#: company/models.py:132
+#: company/models.py:128
msgid "Link to external company information"
msgstr ""
-#: company/models.py:146
+#: company/models.py:142
msgid "is customer"
msgstr ""
-#: company/models.py:146
+#: company/models.py:142
msgid "Do you sell items to this company?"
msgstr ""
-#: company/models.py:148
+#: company/models.py:144
msgid "is supplier"
msgstr ""
-#: company/models.py:148
+#: company/models.py:144
msgid "Do you purchase items from this company?"
msgstr ""
-#: company/models.py:150
+#: company/models.py:146
msgid "is manufacturer"
msgstr ""
-#: company/models.py:150
+#: company/models.py:146
msgid "Does this company manufacture parts?"
msgstr ""
-#: company/models.py:157
+#: company/models.py:153
msgid "Default currency used for this company"
msgstr ""
-#: company/models.py:223 company/templates/company/company_base.html:8
+#: company/models.py:235 company/models.py:328
+#: company/templates/company/company_base.html:8
#: company/templates/company/company_base.html:12
-#: templates/InvenTree/search.html:178 templates/js/translated/company.js:487
+#: templates/InvenTree/search.html:178 templates/js/translated/company.js:494
msgid "Company"
msgstr "회사"
-#: company/models.py:278 company/models.py:553 stock/models.py:675
-#: stock/serializers.py:155 stock/templates/stock/item_base.html:143
-#: templates/js/translated/bom.js:621
+#: company/models.py:324
+msgid "Company already has a primary address"
+msgstr ""
+
+#: company/models.py:329
+msgid "Select company"
+msgstr ""
+
+#: company/models.py:332
+msgid "Address title"
+msgstr ""
+
+#: company/models.py:333
+msgid "Title describing the address entry"
+msgstr ""
+
+#: company/models.py:337
+msgid "Primary address"
+msgstr ""
+
+#: company/models.py:338
+msgid "Set as primary address"
+msgstr ""
+
+#: company/models.py:341 templates/js/translated/company.js:941
+#: templates/js/translated/company.js:1002
+msgid "Line 1"
+msgstr ""
+
+#: company/models.py:342
+msgid "Address line 1"
+msgstr ""
+
+#: company/models.py:346 templates/js/translated/company.js:942
+#: templates/js/translated/company.js:1008
+msgid "Line 2"
+msgstr ""
+
+#: company/models.py:347
+msgid "Address line 2"
+msgstr ""
+
+#: company/models.py:351 company/models.py:352
+#: templates/js/translated/company.js:1014
+msgid "Postal code"
+msgstr ""
+
+#: company/models.py:356
+msgid "City/Region"
+msgstr ""
+
+#: company/models.py:357
+msgid "Postal code city/region"
+msgstr ""
+
+#: company/models.py:361
+msgid "State/Province"
+msgstr ""
+
+#: company/models.py:362
+msgid "State or province"
+msgstr ""
+
+#: company/models.py:366 templates/js/translated/company.js:1032
+msgid "Country"
+msgstr ""
+
+#: company/models.py:367
+msgid "Address country"
+msgstr ""
+
+#: company/models.py:371
+msgid "Courier shipping notes"
+msgstr ""
+
+#: company/models.py:372
+msgid "Notes for shipping courier"
+msgstr ""
+
+#: company/models.py:376
+msgid "Internal shipping notes"
+msgstr ""
+
+#: company/models.py:377
+msgid "Shipping notes for internal use"
+msgstr ""
+
+#: company/models.py:382
+msgid "Link to address information (external)"
+msgstr ""
+
+#: company/models.py:427 company/models.py:702 stock/models.py:675
+#: stock/serializers.py:204 stock/templates/stock/item_base.html:143
+#: templates/js/translated/bom.js:622
msgid "Base Part"
msgstr ""
-#: company/models.py:282 company/models.py:557
+#: company/models.py:431 company/models.py:706
msgid "Select part"
msgstr ""
-#: company/models.py:293 company/templates/company/company_base.html:77
+#: company/models.py:442 company/templates/company/company_base.html:77
#: company/templates/company/manufacturer_part.html:90
-#: company/templates/company/supplier_part.html:146 part/serializers.py:354
+#: company/templates/company/supplier_part.html:146 part/serializers.py:404
#: stock/templates/stock/item_base.html:208
-#: templates/js/translated/company.js:498
-#: templates/js/translated/company.js:824
-#: templates/js/translated/company.js:954
-#: templates/js/translated/company.js:1221
-#: templates/js/translated/table_filters.js:709
+#: templates/js/translated/company.js:505
+#: templates/js/translated/company.js:1149
+#: templates/js/translated/company.js:1327
+#: templates/js/translated/company.js:1642
+#: templates/js/translated/table_filters.js:731
msgid "Manufacturer"
msgstr ""
-#: company/models.py:294
+#: company/models.py:443
msgid "Select manufacturer"
msgstr ""
-#: company/models.py:300 company/templates/company/manufacturer_part.html:101
-#: company/templates/company/supplier_part.html:154 part/serializers.py:360
-#: templates/js/translated/company.js:340
-#: templates/js/translated/company.js:823
-#: templates/js/translated/company.js:970
-#: templates/js/translated/company.js:1240 templates/js/translated/part.js:1773
-#: templates/js/translated/purchase_order.js:1814
-#: templates/js/translated/purchase_order.js:2021
+#: company/models.py:449 company/templates/company/manufacturer_part.html:101
+#: company/templates/company/supplier_part.html:154 part/serializers.py:410
+#: templates/js/translated/company.js:350
+#: templates/js/translated/company.js:1148
+#: templates/js/translated/company.js:1343
+#: templates/js/translated/company.js:1661 templates/js/translated/part.js:1772
+#: templates/js/translated/purchase_order.js:1829
+#: templates/js/translated/purchase_order.js:2031
msgid "MPN"
msgstr ""
-#: company/models.py:301
+#: company/models.py:450
msgid "Manufacturer Part Number"
msgstr ""
-#: company/models.py:307
+#: company/models.py:456
msgid "URL for external manufacturer part link"
msgstr ""
-#: company/models.py:313
+#: company/models.py:462
msgid "Manufacturer part description"
msgstr ""
-#: company/models.py:360 company/models.py:384 company/models.py:578
+#: company/models.py:509 company/models.py:533 company/models.py:727
#: company/templates/company/manufacturer_part.html:7
#: company/templates/company/manufacturer_part.html:24
#: stock/templates/stock/item_base.html:218
msgid "Manufacturer Part"
msgstr ""
-#: company/models.py:391
+#: company/models.py:540
msgid "Parameter name"
msgstr ""
-#: company/models.py:397
+#: company/models.py:546
#: report/templates/report/inventree_test_report_base.html:104
-#: stock/models.py:2255 templates/js/translated/company.js:872
-#: templates/js/translated/company.js:1077 templates/js/translated/part.js:1465
-#: templates/js/translated/stock.js:1446
+#: stock/models.py:2255 templates/js/translated/company.js:1197
+#: templates/js/translated/company.js:1450 templates/js/translated/part.js:1464
+#: templates/js/translated/stock.js:1445
msgid "Value"
msgstr ""
-#: company/models.py:398
+#: company/models.py:547
msgid "Parameter value"
msgstr ""
-#: company/models.py:404 company/templates/company/supplier_part.html:169
-#: part/admin.py:40 part/models.py:987 part/models.py:3407
+#: company/models.py:553 company/templates/company/supplier_part.html:169
+#: part/admin.py:40 part/models.py:988 part/models.py:3441
#: part/templates/part/part_base.html:286
-#: templates/js/translated/company.js:1083 templates/js/translated/part.js:1484
-#: templates/js/translated/part.js:1588 templates/js/translated/part.js:2262
+#: templates/js/translated/company.js:1456 templates/js/translated/part.js:1483
+#: templates/js/translated/part.js:1587 templates/js/translated/part.js:2338
msgid "Units"
msgstr ""
-#: company/models.py:405
+#: company/models.py:554
msgid "Parameter units"
msgstr ""
-#: company/models.py:498
+#: company/models.py:647
msgid "Pack units must be compatible with the base part units"
msgstr ""
-#: company/models.py:504
+#: company/models.py:653
msgid "Pack units must be greater than zero"
msgstr ""
-#: company/models.py:520
+#: company/models.py:669
msgid "Linked manufacturer part must reference the same base part"
msgstr ""
-#: company/models.py:564 company/templates/company/company_base.html:82
-#: company/templates/company/supplier_part.html:130 order/models.py:382
-#: order/templates/order/order_base.html:140 part/bom.py:285 part/bom.py:313
-#: part/serializers.py:343 stock/templates/stock/item_base.html:225
+#: company/models.py:713 company/templates/company/company_base.html:82
+#: company/templates/company/supplier_part.html:130 order/models.py:395
+#: order/templates/order/order_base.html:136 part/bom.py:285 part/bom.py:313
+#: part/serializers.py:393 stock/templates/stock/item_base.html:225
#: templates/email/overdue_purchase_order.html:16
-#: templates/js/translated/company.js:339
-#: templates/js/translated/company.js:502
-#: templates/js/translated/company.js:1194 templates/js/translated/part.js:1741
+#: templates/js/translated/company.js:349
+#: templates/js/translated/company.js:509
+#: templates/js/translated/company.js:1615 templates/js/translated/part.js:1740
#: templates/js/translated/pricing.js:498
-#: templates/js/translated/purchase_order.js:1653
-#: templates/js/translated/table_filters.js:713
+#: templates/js/translated/purchase_order.js:1668
+#: templates/js/translated/table_filters.js:735
msgid "Supplier"
msgstr ""
-#: company/models.py:565
+#: company/models.py:714
msgid "Select supplier"
msgstr ""
-#: company/models.py:570 company/templates/company/supplier_part.html:140
-#: part/bom.py:286 part/bom.py:314 part/serializers.py:349
-#: templates/js/translated/company.js:338 templates/js/translated/part.js:1759
+#: company/models.py:719 company/templates/company/supplier_part.html:140
+#: part/bom.py:286 part/bom.py:314 part/serializers.py:399
+#: templates/js/translated/company.js:348 templates/js/translated/part.js:1758
#: templates/js/translated/pricing.js:510
-#: templates/js/translated/purchase_order.js:1813
-#: templates/js/translated/purchase_order.js:1996
+#: templates/js/translated/purchase_order.js:1828
+#: templates/js/translated/purchase_order.js:2006
msgid "SKU"
msgstr ""
-#: company/models.py:571 part/serializers.py:349
+#: company/models.py:720 part/serializers.py:399
msgid "Supplier stock keeping unit"
msgstr ""
-#: company/models.py:579
+#: company/models.py:728
msgid "Select manufacturer part"
msgstr ""
-#: company/models.py:585
+#: company/models.py:734
msgid "URL for external supplier part link"
msgstr ""
-#: company/models.py:591
+#: company/models.py:740
msgid "Supplier part description"
msgstr ""
-#: company/models.py:596 company/templates/company/supplier_part.html:188
-#: part/admin.py:279 part/models.py:3801 part/templates/part/upload_bom.html:59
+#: company/models.py:745 company/templates/company/supplier_part.html:188
+#: part/admin.py:279 part/models.py:3845 part/templates/part/upload_bom.html:59
#: report/templates/report/inventree_bill_of_materials_report.html:140
#: report/templates/report/inventree_po_report_base.html:32
#: report/templates/report/inventree_return_order_report_base.html:27
#: report/templates/report/inventree_so_report_base.html:32
-#: stock/serializers.py:418
+#: stock/serializers.py:484
msgid "Note"
msgstr ""
-#: company/models.py:600 part/models.py:1919
+#: company/models.py:749 part/models.py:1921
msgid "base cost"
msgstr ""
-#: company/models.py:600 part/models.py:1919
+#: company/models.py:749 part/models.py:1921
msgid "Minimum charge (e.g. stocking fee)"
msgstr ""
-#: company/models.py:602 company/templates/company/supplier_part.html:161
+#: company/models.py:751 company/templates/company/supplier_part.html:161
#: stock/admin.py:119 stock/models.py:701
#: stock/templates/stock/item_base.html:241
-#: templates/js/translated/company.js:1256
-#: templates/js/translated/stock.js:2160
+#: templates/js/translated/company.js:1677
+#: templates/js/translated/stock.js:2317
msgid "Packaging"
msgstr ""
-#: company/models.py:602
+#: company/models.py:751
msgid "Part packaging"
msgstr ""
-#: company/models.py:606 templates/js/translated/company.js:1261
-#: templates/js/translated/part.js:1793 templates/js/translated/part.js:1848
-#: templates/js/translated/purchase_order.js:300
-#: templates/js/translated/purchase_order.js:827
-#: templates/js/translated/purchase_order.js:1073
-#: templates/js/translated/purchase_order.js:2052
-#: templates/js/translated/purchase_order.js:2069
+#: company/models.py:755 templates/js/translated/company.js:1682
+#: templates/js/translated/part.js:1792 templates/js/translated/part.js:1847
+#: templates/js/translated/purchase_order.js:311
+#: templates/js/translated/purchase_order.js:842
+#: templates/js/translated/purchase_order.js:1088
+#: templates/js/translated/purchase_order.js:2062
+#: templates/js/translated/purchase_order.js:2079
msgid "Pack Quantity"
msgstr ""
-#: company/models.py:607
+#: company/models.py:756
msgid "Total quantity supplied in a single pack. Leave empty for single items."
msgstr ""
-#: company/models.py:624 part/models.py:1921
+#: company/models.py:773 part/models.py:1923
msgid "multiple"
msgstr ""
-#: company/models.py:624
+#: company/models.py:773
msgid "Order multiple"
msgstr ""
-#: company/models.py:632 company/templates/company/supplier_part.html:115
+#: company/models.py:781 company/templates/company/supplier_part.html:115
#: templates/email/build_order_required_stock.html:19
#: templates/email/low_stock_notification.html:17
-#: templates/js/translated/bom.js:1127 templates/js/translated/build.js:2136
-#: templates/js/translated/build.js:3045
-#: templates/js/translated/model_renderers.js:205
-#: templates/js/translated/part.js:670 templates/js/translated/part.js:672
-#: templates/js/translated/part.js:677
-#: templates/js/translated/table_filters.js:286
-#: templates/js/translated/table_filters.js:492
+#: templates/js/translated/bom.js:1145 templates/js/translated/build.js:2490
+#: templates/js/translated/index.js:118
+#: templates/js/translated/model_renderers.js:219
+#: templates/js/translated/part.js:669 templates/js/translated/part.js:671
+#: templates/js/translated/part.js:676
+#: templates/js/translated/table_filters.js:292
+#: templates/js/translated/table_filters.js:510
msgid "Available"
msgstr ""
-#: company/models.py:633
+#: company/models.py:782
msgid "Quantity available from supplier"
msgstr ""
-#: company/models.py:637
+#: company/models.py:786
msgid "Availability Updated"
msgstr ""
-#: company/models.py:638
+#: company/models.py:787
msgid "Date of last update of availability data"
msgstr ""
-#: company/serializers.py:99
+#: company/serializers.py:156
msgid "Default currency used for this supplier"
msgstr ""
#: company/templates/company/company_base.html:22
-#: templates/js/translated/purchase_order.js:228
+#: templates/js/translated/purchase_order.js:239
msgid "Create Purchase Order"
msgstr ""
@@ -3816,7 +3878,7 @@ msgid "Edit company information"
msgstr "회사 정보 수정"
#: company/templates/company/company_base.html:34
-#: templates/js/translated/company.js:436
+#: templates/js/translated/company.js:443
msgid "Edit Company"
msgstr "회사 수정"
@@ -3856,17 +3918,17 @@ msgstr "URL에서 이미지 다운로드"
msgid "Delete image"
msgstr ""
-#: company/templates/company/company_base.html:87 order/models.py:779
-#: order/models.py:1738 order/templates/order/return_order_base.html:132
+#: company/templates/company/company_base.html:87 order/models.py:792
+#: order/models.py:1751 order/templates/order/return_order_base.html:132
#: order/templates/order/sales_order_base.html:145 stock/models.py:720
-#: stock/models.py:721 stock/serializers.py:825
+#: stock/models.py:721 stock/serializers.py:942
#: stock/templates/stock/item_base.html:401
#: templates/email/overdue_sales_order.html:16
-#: templates/js/translated/company.js:494
-#: templates/js/translated/return_order.js:284
-#: templates/js/translated/sales_order.js:772
-#: templates/js/translated/stock.js:2696
-#: templates/js/translated/table_filters.js:717
+#: templates/js/translated/company.js:501
+#: templates/js/translated/return_order.js:296
+#: templates/js/translated/sales_order.js:784
+#: templates/js/translated/stock.js:2827
+#: templates/js/translated/table_filters.js:739
msgid "Customer"
msgstr "고객"
@@ -3874,6 +3936,13 @@ msgstr "고객"
msgid "Uses default currency"
msgstr ""
+#: company/templates/company/company_base.html:119 order/models.py:279
+#: order/templates/order/order_base.html:210
+#: order/templates/order/return_order_base.html:182
+#: order/templates/order/sales_order_base.html:222
+msgid "Address"
+msgstr "주소"
+
#: company/templates/company/company_base.html:126
msgid "Phone"
msgstr "전화번호"
@@ -3906,7 +3975,7 @@ msgstr "이미지 다운로드"
#: company/templates/company/detail.html:15
#: company/templates/company/manufacturer_part_sidebar.html:7
-#: templates/InvenTree/search.html:120 templates/js/translated/search.js:189
+#: templates/InvenTree/search.html:120 templates/js/translated/search.js:147
msgid "Supplier Parts"
msgstr ""
@@ -3916,129 +3985,121 @@ msgstr ""
#: company/templates/company/detail.html:20
#: company/templates/company/manufacturer_part.html:123
-#: part/templates/part/detail.html:381
+#: part/templates/part/detail.html:356
msgid "New Supplier Part"
msgstr ""
-#: company/templates/company/detail.html:37
-#: company/templates/company/detail.html:85
-#: part/templates/part/category.html:183
-msgid "Order parts"
-msgstr ""
-
-#: company/templates/company/detail.html:42
-#: company/templates/company/detail.html:90
-msgid "Delete parts"
-msgstr ""
-
-#: company/templates/company/detail.html:43
-#: company/templates/company/detail.html:91
-msgid "Delete Parts"
-msgstr ""
-
-#: company/templates/company/detail.html:62 templates/InvenTree/search.html:105
-#: templates/js/translated/search.js:193
+#: company/templates/company/detail.html:41 templates/InvenTree/search.html:105
+#: templates/js/translated/search.js:151
msgid "Manufacturer Parts"
msgstr ""
-#: company/templates/company/detail.html:66
+#: company/templates/company/detail.html:45
msgid "Create new manufacturer part"
msgstr ""
-#: company/templates/company/detail.html:67 part/templates/part/detail.html:411
+#: company/templates/company/detail.html:46 part/templates/part/detail.html:376
msgid "New Manufacturer Part"
msgstr ""
-#: company/templates/company/detail.html:108
+#: company/templates/company/detail.html:65
msgid "Supplier Stock"
msgstr ""
-#: company/templates/company/detail.html:118
+#: company/templates/company/detail.html:75
#: company/templates/company/sidebar.html:12
#: company/templates/company/supplier_part_sidebar.html:7
#: 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:108 part/templates/part/part_sidebar.html:35
-#: templates/InvenTree/index.html:275 templates/InvenTree/search.html:199
+#: part/templates/part/detail.html:106 part/templates/part/part_sidebar.html:35
+#: templates/InvenTree/index.html:227 templates/InvenTree/search.html:199
#: templates/InvenTree/settings/sidebar.html:55
-#: templates/js/translated/search.js:247 templates/navbar.html:50
+#: templates/js/translated/search.js:205 templates/navbar.html:50
#: users/models.py:43
msgid "Purchase Orders"
msgstr ""
-#: company/templates/company/detail.html:122
+#: company/templates/company/detail.html:79
#: order/templates/order/purchase_orders.html:17
msgid "Create new purchase order"
msgstr ""
-#: company/templates/company/detail.html:123
+#: company/templates/company/detail.html:80
#: order/templates/order/purchase_orders.html:18
msgid "New Purchase Order"
msgstr ""
-#: company/templates/company/detail.html:146
+#: company/templates/company/detail.html:101
#: company/templates/company/sidebar.html:21
#: 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:131 part/templates/part/part_sidebar.html:39
-#: templates/InvenTree/index.html:307 templates/InvenTree/search.html:219
+#: part/templates/part/detail.html:127 part/templates/part/part_sidebar.html:39
+#: templates/InvenTree/index.html:259 templates/InvenTree/search.html:219
#: templates/InvenTree/settings/sidebar.html:57
-#: templates/js/translated/search.js:261 templates/navbar.html:62
+#: templates/js/translated/search.js:219 templates/navbar.html:62
#: users/models.py:44
msgid "Sales Orders"
msgstr ""
-#: company/templates/company/detail.html:150
+#: company/templates/company/detail.html:105
#: order/templates/order/sales_orders.html:20
msgid "Create new sales order"
msgstr ""
-#: company/templates/company/detail.html:151
+#: company/templates/company/detail.html:106
#: order/templates/order/sales_orders.html:21
msgid "New Sales Order"
msgstr ""
-#: company/templates/company/detail.html:173
-#: templates/js/translated/build.js:1976
+#: company/templates/company/detail.html:126
msgid "Assigned Stock"
msgstr ""
-#: company/templates/company/detail.html:191
+#: company/templates/company/detail.html:142
#: company/templates/company/sidebar.html:29
#: order/templates/order/return_order_base.html:13
#: order/templates/order/return_orders.html:8
#: order/templates/order/return_orders.html:15
#: templates/InvenTree/settings/sidebar.html:59
-#: templates/js/translated/search.js:274 templates/navbar.html:65
+#: templates/js/translated/search.js:232 templates/navbar.html:65
#: users/models.py:45
msgid "Return Orders"
msgstr ""
-#: company/templates/company/detail.html:195
+#: company/templates/company/detail.html:146
#: order/templates/order/return_orders.html:20
msgid "Create new return order"
msgstr ""
-#: company/templates/company/detail.html:196
+#: company/templates/company/detail.html:147
#: order/templates/order/return_orders.html:21
msgid "New Return Order"
msgstr ""
-#: company/templates/company/detail.html:221
+#: company/templates/company/detail.html:168
msgid "Company Notes"
msgstr ""
-#: company/templates/company/detail.html:236
+#: company/templates/company/detail.html:183
msgid "Company Contacts"
msgstr ""
-#: company/templates/company/detail.html:240
-#: company/templates/company/detail.html:241
+#: company/templates/company/detail.html:187
+#: company/templates/company/detail.html:188
msgid "Add Contact"
msgstr ""
+#: company/templates/company/detail.html:206
+msgid "Company addresses"
+msgstr ""
+
+#: company/templates/company/detail.html:210
+#: company/templates/company/detail.html:211
+msgid "Add Address"
+msgstr ""
+
#: company/templates/company/index.html:8
msgid "Supplier List"
msgstr ""
@@ -4050,17 +4111,17 @@ msgstr ""
#: company/templates/company/manufacturer_part.html:35
#: company/templates/company/supplier_part.html:228
-#: part/templates/part/detail.html:111 part/templates/part/part_base.html:85
+#: part/templates/part/detail.html:109 part/templates/part/part_base.html:85
msgid "Order part"
msgstr ""
#: company/templates/company/manufacturer_part.html:39
-#: templates/js/translated/company.js:1001
+#: templates/js/translated/company.js:1374
msgid "Edit manufacturer part"
msgstr ""
#: company/templates/company/manufacturer_part.html:43
-#: templates/js/translated/company.js:1002
+#: templates/js/translated/company.js:1375
msgid "Delete manufacturer part"
msgstr ""
@@ -4080,40 +4141,22 @@ msgstr ""
msgid "Suppliers"
msgstr ""
-#: company/templates/company/manufacturer_part.html:136
-#: part/templates/part/detail.html:392
-msgid "Delete supplier parts"
-msgstr ""
-
-#: company/templates/company/manufacturer_part.html:136
-#: company/templates/company/manufacturer_part.html:183
-#: part/templates/part/detail.html:393 part/templates/part/detail.html:423
-#: templates/js/translated/forms.js:506 templates/js/translated/helpers.js:105
-#: templates/js/translated/part.js:370 templates/js/translated/pricing.js:629
-#: templates/js/translated/stock.js:216 users/models.py:247
-msgid "Delete"
-msgstr "삭제"
-
-#: company/templates/company/manufacturer_part.html:166
+#: company/templates/company/manufacturer_part.html:156
#: company/templates/company/manufacturer_part_sidebar.html:5
#: part/templates/part/category_sidebar.html:20
-#: part/templates/part/detail.html:208 part/templates/part/part_sidebar.html:8
+#: part/templates/part/detail.html:195 part/templates/part/part_sidebar.html:8
msgid "Parameters"
msgstr ""
-#: company/templates/company/manufacturer_part.html:170
-#: part/templates/part/detail.html:213
+#: company/templates/company/manufacturer_part.html:160
+#: part/templates/part/detail.html:200
#: templates/InvenTree/settings/category.html:12
#: templates/InvenTree/settings/part_parameters.html:12
msgid "New Parameter"
msgstr ""
-#: company/templates/company/manufacturer_part.html:183
-msgid "Delete parameters"
-msgstr ""
-
-#: company/templates/company/manufacturer_part.html:226
-#: templates/js/translated/part.js:1396
+#: company/templates/company/manufacturer_part.html:206
+#: templates/js/translated/part.js:1395
msgid "Add Parameter"
msgstr ""
@@ -4137,23 +4180,28 @@ msgstr ""
msgid "Contacts"
msgstr ""
+#: company/templates/company/sidebar.html:35
+msgid "Addresses"
+msgstr ""
+
#: company/templates/company/supplier_part.html:7
#: company/templates/company/supplier_part.html:24 stock/models.py:684
#: stock/templates/stock/item_base.html:234
-#: templates/js/translated/company.js:1210
-#: templates/js/translated/purchase_order.js:747
-#: templates/js/translated/stock.js:2016
+#: templates/js/translated/company.js:1631
+#: templates/js/translated/purchase_order.js:758
+#: templates/js/translated/stock.js:2173
msgid "Supplier Part"
msgstr ""
#: company/templates/company/supplier_part.html:51
+#: templates/js/translated/company.js:1557
msgid "Supplier part actions"
msgstr ""
#: company/templates/company/supplier_part.html:56
#: company/templates/company/supplier_part.html:57
#: company/templates/company/supplier_part.html:229
-#: part/templates/part/detail.html:112
+#: part/templates/part/detail.html:110
msgid "Order Part"
msgstr ""
@@ -4164,13 +4212,13 @@ msgstr ""
#: company/templates/company/supplier_part.html:64
#: company/templates/company/supplier_part.html:65
-#: templates/js/translated/company.js:283
+#: templates/js/translated/company.js:293
msgid "Edit Supplier Part"
msgstr ""
#: company/templates/company/supplier_part.html:69
#: company/templates/company/supplier_part.html:70
-#: templates/js/translated/company.js:258
+#: templates/js/translated/company.js:268
msgid "Duplicate Supplier Part"
msgstr ""
@@ -4197,7 +4245,7 @@ msgstr ""
#: company/templates/company/supplier_part.html:211
#: part/templates/part/detail.html:25 stock/templates/stock/location.html:198
-#: templates/js/translated/stock.js:504
+#: templates/js/translated/stock.js:503
msgid "New Stock Item"
msgstr ""
@@ -4205,37 +4253,37 @@ msgstr ""
msgid "Supplier Part Orders"
msgstr ""
-#: company/templates/company/supplier_part.html:249
+#: company/templates/company/supplier_part.html:247
msgid "Pricing Information"
msgstr ""
-#: company/templates/company/supplier_part.html:254
-#: templates/js/translated/company.js:387
+#: company/templates/company/supplier_part.html:252
+#: templates/js/translated/company.js:397
#: templates/js/translated/pricing.js:684
msgid "Add Price Break"
msgstr ""
-#: company/templates/company/supplier_part.html:281
+#: company/templates/company/supplier_part.html:277
msgid "Supplier Part QR Code"
msgstr ""
-#: company/templates/company/supplier_part.html:292
+#: company/templates/company/supplier_part.html:288
msgid "Link Barcode to Supplier Part"
msgstr ""
-#: company/templates/company/supplier_part.html:365
+#: company/templates/company/supplier_part.html:361
msgid "Update Part Availability"
msgstr ""
#: company/templates/company/supplier_part_sidebar.html:5 part/tasks.py:293
-#: part/templates/part/category.html:199
+#: part/templates/part/category.html:182
#: part/templates/part/category_sidebar.html:17 stock/admin.py:47
-#: stock/templates/stock/location.html:168
+#: stock/serializers.py:662 stock/templates/stock/location.html:168
#: stock/templates/stock/location.html:182
#: stock/templates/stock/location.html:194
#: stock/templates/stock/location_sidebar.html:7
-#: templates/InvenTree/search.html:155 templates/js/translated/part.js:1034
-#: templates/js/translated/search.js:214 templates/js/translated/stock.js:2514
+#: templates/InvenTree/search.html:155 templates/js/translated/part.js:1033
+#: templates/js/translated/search.js:172 templates/js/translated/stock.js:2645
#: users/models.py:41
msgid "Stock Items"
msgstr ""
@@ -4261,7 +4309,7 @@ msgstr ""
msgid "New Customer"
msgstr "신규 고객"
-#: company/views.py:52 templates/js/translated/search.js:234
+#: company/views.py:52 templates/js/translated/search.js:192
msgid "Companies"
msgstr ""
@@ -4269,72 +4317,76 @@ msgstr ""
msgid "New Company"
msgstr "새 회사"
-#: label/models.py:104
+#: label/models.py:112
msgid "Label name"
msgstr ""
-#: label/models.py:111
+#: label/models.py:119
msgid "Label description"
msgstr ""
-#: label/models.py:118
+#: label/models.py:126
msgid "Label"
msgstr ""
-#: label/models.py:119
+#: label/models.py:127
msgid "Label template file"
msgstr ""
-#: label/models.py:125 report/models.py:273
+#: label/models.py:133 report/models.py:273
msgid "Enabled"
msgstr ""
-#: label/models.py:126
+#: label/models.py:134
msgid "Label template is enabled"
msgstr ""
-#: label/models.py:131
+#: label/models.py:139
msgid "Width [mm]"
msgstr "너비 [mm]"
-#: label/models.py:132
+#: label/models.py:140
msgid "Label width, specified in mm"
msgstr ""
-#: label/models.py:138
+#: label/models.py:146
msgid "Height [mm]"
msgstr "높이 [mm]"
-#: label/models.py:139
+#: label/models.py:147
msgid "Label height, specified in mm"
msgstr ""
-#: label/models.py:145 report/models.py:266
+#: label/models.py:153 report/models.py:266
msgid "Filename Pattern"
msgstr ""
-#: label/models.py:146
+#: label/models.py:154
msgid "Pattern for generating label filenames"
msgstr ""
-#: label/models.py:242
+#: label/models.py:250
msgid "Query filters (comma-separated list of key=value pairs),"
msgstr ""
-#: label/models.py:243 label/models.py:284 label/models.py:312
-#: report/models.py:294 report/models.py:452 report/models.py:490
-#: report/models.py:528
+#: label/models.py:251 label/models.py:292 label/models.py:320
+#: label/models.py:356 report/models.py:294 report/models.py:454
+#: report/models.py:492 report/models.py:530
msgid "Filters"
msgstr ""
-#: label/models.py:283
+#: label/models.py:291
msgid "Query filters (comma-separated list of key=value pairs"
msgstr ""
-#: label/models.py:311
+#: label/models.py:319
msgid "Part query filters (comma-separated value of key=value pairs)"
msgstr ""
+#: label/models.py:355
+msgid "Query filters (comma-separated list of key=value pairs)"
+msgstr ""
+
#: label/templates/label/part/part_label.html:31
#: label/templates/label/stockitem/qr.html:21
#: label/templates/label/stocklocation/qr.html:21
@@ -4352,8 +4404,8 @@ msgstr ""
#: report/templates/report/inventree_po_report_base.html:31
#: report/templates/report/inventree_so_report_base.html:31
#: templates/js/translated/order.js:327
-#: templates/js/translated/purchase_order.js:2093
-#: templates/js/translated/sales_order.js:1827
+#: templates/js/translated/purchase_order.js:2103
+#: templates/js/translated/sales_order.js:1839
msgid "Total Price"
msgstr ""
@@ -4361,30 +4413,30 @@ msgstr ""
msgid "No matching purchase order found"
msgstr ""
-#: order/api.py:1452 order/models.py:1178 order/models.py:1262
+#: order/api.py:1452 order/models.py:1191 order/models.py:1275
#: order/templates/order/order_base.html:9
#: order/templates/order/order_base.html:18
#: report/templates/report/inventree_po_report_base.html:14
#: stock/templates/stock/item_base.html:177
#: templates/email/overdue_purchase_order.html:15
-#: templates/js/translated/part.js:1718 templates/js/translated/pricing.js:790
-#: templates/js/translated/purchase_order.js:154
-#: templates/js/translated/purchase_order.js:748
-#: templates/js/translated/purchase_order.js:1637
-#: templates/js/translated/stock.js:1996 templates/js/translated/stock.js:2644
+#: templates/js/translated/part.js:1717 templates/js/translated/pricing.js:790
+#: templates/js/translated/purchase_order.js:165
+#: templates/js/translated/purchase_order.js:759
+#: templates/js/translated/purchase_order.js:1652
+#: templates/js/translated/stock.js:2153 templates/js/translated/stock.js:2775
msgid "Purchase Order"
msgstr ""
-#: order/api.py:1456 order/models.py:1909 order/models.py:1955
+#: order/api.py:1456 order/models.py:1922 order/models.py:1968
#: order/templates/order/return_order_base.html:9
#: order/templates/order/return_order_base.html:28
#: report/templates/report/inventree_return_order_report_base.html:13
-#: templates/js/translated/return_order.js:269
-#: templates/js/translated/stock.js:2678
+#: templates/js/translated/return_order.js:281
+#: templates/js/translated/stock.js:2809
msgid "Return Order"
msgstr ""
-#: order/api.py:1458 templates/js/translated/sales_order.js:1030
+#: order/api.py:1458 templates/js/translated/sales_order.js:1042
msgid "Unknown"
msgstr ""
@@ -4392,11 +4444,11 @@ msgstr ""
msgid "Total price for this order"
msgstr ""
-#: order/models.py:79 order/serializers.py:49
+#: order/models.py:79 order/serializers.py:50
msgid "Order Currency"
msgstr ""
-#: order/models.py:81 order/serializers.py:50
+#: order/models.py:81 order/serializers.py:51
msgid "Currency for this order (leave blank to use company default)"
msgstr ""
@@ -4408,492 +4460,496 @@ msgstr ""
msgid "Order description (optional)"
msgstr ""
-#: order/models.py:234
+#: order/models.py:237
msgid "Select project code for this order"
msgstr ""
-#: order/models.py:236 order/models.py:1094 order/models.py:1454
+#: order/models.py:240 order/models.py:1107 order/models.py:1467
msgid "Link to external page"
msgstr ""
-#: order/models.py:241
+#: order/models.py:245
msgid "Expected date for order delivery. Order will be overdue after this date."
msgstr ""
-#: order/models.py:250
+#: order/models.py:254
msgid "Created By"
msgstr ""
-#: order/models.py:257
+#: order/models.py:261
msgid "User or group responsible for this order"
msgstr ""
-#: order/models.py:267
+#: order/models.py:271
msgid "Point of contact for this order"
msgstr ""
-#: order/models.py:360 order/models.py:766
+#: order/models.py:280
+msgid "Company address for this order"
+msgstr ""
+
+#: order/models.py:373 order/models.py:779
msgid "Order reference"
msgstr ""
-#: order/models.py:368 order/models.py:791
+#: order/models.py:381 order/models.py:804
msgid "Purchase order status"
msgstr ""
-#: order/models.py:383
+#: order/models.py:396
msgid "Company from which the items are being ordered"
msgstr ""
-#: order/models.py:391 order/templates/order/order_base.html:152
-#: templates/js/translated/purchase_order.js:1662
+#: order/models.py:404 order/templates/order/order_base.html:148
+#: templates/js/translated/purchase_order.js:1677
msgid "Supplier Reference"
msgstr ""
-#: order/models.py:391
+#: order/models.py:404
msgid "Supplier order reference code"
msgstr ""
-#: order/models.py:398
+#: order/models.py:411
msgid "received by"
msgstr ""
-#: order/models.py:403 order/models.py:1761
+#: order/models.py:416 order/models.py:1774
msgid "Issue Date"
msgstr ""
-#: order/models.py:404 order/models.py:1762
+#: order/models.py:417 order/models.py:1775
msgid "Date order was issued"
msgstr ""
-#: order/models.py:410 order/models.py:1768
+#: order/models.py:423 order/models.py:1781
msgid "Date order was completed"
msgstr ""
-#: order/models.py:445
+#: order/models.py:458
msgid "Part supplier must match PO supplier"
msgstr ""
-#: order/models.py:606
+#: order/models.py:619
msgid "Quantity must be a positive number"
msgstr ""
-#: order/models.py:780
+#: order/models.py:793
msgid "Company to which the items are being sold"
msgstr ""
-#: order/models.py:799 order/models.py:1755
+#: order/models.py:812 order/models.py:1768
msgid "Customer Reference "
msgstr ""
-#: order/models.py:799 order/models.py:1756
+#: order/models.py:812 order/models.py:1769
msgid "Customer order reference code"
msgstr ""
-#: order/models.py:801 order/models.py:1408
-#: templates/js/translated/sales_order.js:831
-#: templates/js/translated/sales_order.js:1012
+#: order/models.py:814 order/models.py:1421
+#: templates/js/translated/sales_order.js:843
+#: templates/js/translated/sales_order.js:1024
msgid "Shipment Date"
msgstr ""
-#: order/models.py:808
+#: order/models.py:821
msgid "shipped by"
msgstr ""
-#: order/models.py:857
+#: order/models.py:870
msgid "Order cannot be completed as no parts have been assigned"
msgstr ""
-#: order/models.py:861
+#: order/models.py:874
msgid "Only an open order can be marked as complete"
msgstr ""
-#: order/models.py:864 templates/js/translated/sales_order.js:491
+#: order/models.py:877 templates/js/translated/sales_order.js:503
msgid "Order cannot be completed as there are incomplete shipments"
msgstr ""
-#: order/models.py:867
+#: order/models.py:880
msgid "Order cannot be completed as there are incomplete line items"
msgstr ""
-#: order/models.py:1074
+#: order/models.py:1087
msgid "Item quantity"
msgstr ""
-#: order/models.py:1087
+#: order/models.py:1100
msgid "Line item reference"
msgstr ""
-#: order/models.py:1089
+#: order/models.py:1102
msgid "Line item notes"
msgstr ""
-#: order/models.py:1100
+#: order/models.py:1113
msgid "Target date for this line item (leave blank to use the target date from the order)"
msgstr ""
-#: order/models.py:1118
+#: order/models.py:1131
msgid "Line item description (optional)"
msgstr ""
-#: order/models.py:1123
+#: order/models.py:1136
msgid "Context"
msgstr ""
-#: order/models.py:1124
+#: order/models.py:1137
msgid "Additional context for this line"
msgstr ""
-#: order/models.py:1133
+#: order/models.py:1146
msgid "Unit price"
msgstr ""
-#: order/models.py:1163
+#: order/models.py:1176
msgid "Supplier part must match supplier"
msgstr ""
-#: order/models.py:1171
+#: order/models.py:1184
msgid "deleted"
msgstr ""
-#: order/models.py:1177 order/models.py:1262 order/models.py:1303
-#: order/models.py:1402 order/models.py:1551 order/models.py:1908
-#: order/models.py:1955 templates/js/translated/sales_order.js:1474
+#: order/models.py:1190 order/models.py:1275 order/models.py:1316
+#: order/models.py:1415 order/models.py:1564 order/models.py:1921
+#: order/models.py:1968 templates/js/translated/sales_order.js:1486
msgid "Order"
msgstr ""
-#: order/models.py:1196
+#: order/models.py:1209
msgid "Supplier part"
msgstr ""
-#: order/models.py:1203 order/templates/order/order_base.html:200
-#: templates/js/translated/part.js:1841 templates/js/translated/part.js:1872
-#: templates/js/translated/purchase_order.js:1276
-#: templates/js/translated/purchase_order.js:2137
-#: templates/js/translated/return_order.js:748
-#: templates/js/translated/table_filters.js:90
-#: templates/js/translated/table_filters.js:515
+#: order/models.py:1216 order/templates/order/order_base.html:196
+#: templates/js/translated/part.js:1840 templates/js/translated/part.js:1871
+#: templates/js/translated/purchase_order.js:1291
+#: templates/js/translated/purchase_order.js:2147
+#: templates/js/translated/return_order.js:760
+#: templates/js/translated/table_filters.js:96
+#: templates/js/translated/table_filters.js:537
msgid "Received"
msgstr ""
-#: order/models.py:1204
+#: order/models.py:1217
msgid "Number of items received"
msgstr ""
-#: order/models.py:1211 stock/models.py:823 stock/serializers.py:252
+#: order/models.py:1224 stock/models.py:823 stock/serializers.py:314
#: stock/templates/stock/item_base.html:184
-#: templates/js/translated/stock.js:2047
+#: templates/js/translated/stock.js:2204
msgid "Purchase Price"
msgstr ""
-#: order/models.py:1212
+#: order/models.py:1225
msgid "Unit purchase price"
msgstr ""
-#: order/models.py:1225
+#: order/models.py:1238
msgid "Where does the Purchaser want this item to be stored?"
msgstr ""
-#: order/models.py:1291
+#: order/models.py:1304
msgid "Virtual part cannot be assigned to a sales order"
msgstr ""
-#: order/models.py:1296
+#: order/models.py:1309
msgid "Only salable parts can be assigned to a sales order"
msgstr ""
-#: order/models.py:1322 part/templates/part/part_pricing.html:107
+#: order/models.py:1335 part/templates/part/part_pricing.html:107
#: part/templates/part/prices.html:128 templates/js/translated/pricing.js:943
msgid "Sale Price"
msgstr ""
-#: order/models.py:1323
+#: order/models.py:1336
msgid "Unit sale price"
msgstr ""
-#: order/models.py:1333
+#: order/models.py:1346
msgid "Shipped quantity"
msgstr ""
-#: order/models.py:1409
+#: order/models.py:1422
msgid "Date of shipment"
msgstr ""
-#: order/models.py:1414 templates/js/translated/sales_order.js:1024
+#: order/models.py:1427 templates/js/translated/sales_order.js:1036
msgid "Delivery Date"
msgstr ""
-#: order/models.py:1415
+#: order/models.py:1428
msgid "Date of delivery of shipment"
msgstr ""
-#: order/models.py:1422
+#: order/models.py:1435
msgid "Checked By"
msgstr ""
-#: order/models.py:1423
+#: order/models.py:1436
msgid "User who checked this shipment"
msgstr ""
-#: order/models.py:1430 order/models.py:1627 order/serializers.py:1248
-#: order/serializers.py:1376 templates/js/translated/model_renderers.js:415
+#: order/models.py:1443 order/models.py:1640 order/serializers.py:1254
+#: order/serializers.py:1382 templates/js/translated/model_renderers.js:429
msgid "Shipment"
msgstr ""
-#: order/models.py:1431
+#: order/models.py:1444
msgid "Shipment number"
msgstr ""
-#: order/models.py:1439
+#: order/models.py:1452
msgid "Tracking Number"
msgstr ""
-#: order/models.py:1440
+#: order/models.py:1453
msgid "Shipment tracking information"
msgstr ""
-#: order/models.py:1447
+#: order/models.py:1460
msgid "Invoice Number"
msgstr ""
-#: order/models.py:1448
+#: order/models.py:1461
msgid "Reference number for associated invoice"
msgstr ""
-#: order/models.py:1470
+#: order/models.py:1483
msgid "Shipment has already been sent"
msgstr ""
-#: order/models.py:1473
+#: order/models.py:1486
msgid "Shipment has no allocated stock items"
msgstr ""
-#: order/models.py:1586 order/models.py:1588
+#: order/models.py:1599 order/models.py:1601
msgid "Stock item has not been assigned"
msgstr ""
-#: order/models.py:1592
+#: order/models.py:1605
msgid "Cannot allocate stock item to a line with a different part"
msgstr ""
-#: order/models.py:1594
+#: order/models.py:1607
msgid "Cannot allocate stock to a line without a part"
msgstr ""
-#: order/models.py:1597
+#: order/models.py:1610
msgid "Allocation quantity cannot exceed stock quantity"
msgstr ""
-#: order/models.py:1607 order/serializers.py:1110
+#: order/models.py:1620 order/serializers.py:1116
msgid "Quantity must be 1 for serialized stock item"
msgstr ""
-#: order/models.py:1610
+#: order/models.py:1623
msgid "Sales order does not match shipment"
msgstr ""
-#: order/models.py:1611
+#: order/models.py:1624
msgid "Shipment does not match sales order"
msgstr ""
-#: order/models.py:1619
+#: order/models.py:1632
msgid "Line"
msgstr ""
-#: order/models.py:1628
+#: order/models.py:1641
msgid "Sales order shipment reference"
msgstr ""
-#: order/models.py:1641 order/models.py:1916
-#: templates/js/translated/return_order.js:706
+#: order/models.py:1654 order/models.py:1929
+#: templates/js/translated/return_order.js:718
msgid "Item"
msgstr ""
-#: order/models.py:1642
+#: order/models.py:1655
msgid "Select stock item to allocate"
msgstr ""
-#: order/models.py:1645
+#: order/models.py:1658
msgid "Enter stock allocation quantity"
msgstr ""
-#: order/models.py:1725
+#: order/models.py:1738
msgid "Return Order reference"
msgstr ""
-#: order/models.py:1739
+#: order/models.py:1752
msgid "Company from which items are being returned"
msgstr ""
-#: order/models.py:1750
+#: order/models.py:1763
msgid "Return order status"
msgstr ""
-#: order/models.py:1901
+#: order/models.py:1914
msgid "Only serialized items can be assigned to a Return Order"
msgstr ""
-#: order/models.py:1917
+#: order/models.py:1930
msgid "Select item to return from customer"
msgstr ""
-#: order/models.py:1922
+#: order/models.py:1935
msgid "Received Date"
msgstr ""
-#: order/models.py:1923
+#: order/models.py:1936
msgid "The date this this return item was received"
msgstr ""
-#: order/models.py:1934 templates/js/translated/return_order.js:717
-#: templates/js/translated/table_filters.js:93
+#: order/models.py:1947 templates/js/translated/return_order.js:729
+#: templates/js/translated/table_filters.js:99
msgid "Outcome"
msgstr ""
-#: order/models.py:1934
+#: order/models.py:1947
msgid "Outcome for this line item"
msgstr ""
-#: order/models.py:1940
+#: order/models.py:1953
msgid "Cost associated with return or repair for this line item"
msgstr ""
-#: order/serializers.py:247
+#: order/serializers.py:253
msgid "Order cannot be cancelled"
msgstr ""
-#: order/serializers.py:262 order/serializers.py:1128
+#: order/serializers.py:268 order/serializers.py:1134
msgid "Allow order to be closed with incomplete line items"
msgstr ""
-#: order/serializers.py:273 order/serializers.py:1139
+#: order/serializers.py:279 order/serializers.py:1145
msgid "Order has incomplete line items"
msgstr ""
-#: order/serializers.py:386
+#: order/serializers.py:392
msgid "Order is not open"
msgstr ""
-#: order/serializers.py:404
+#: order/serializers.py:410
msgid "Purchase price currency"
msgstr ""
-#: order/serializers.py:422
+#: order/serializers.py:428
msgid "Supplier part must be specified"
msgstr ""
-#: order/serializers.py:427
+#: order/serializers.py:433
msgid "Purchase order must be specified"
msgstr ""
-#: order/serializers.py:433
+#: order/serializers.py:439
msgid "Supplier must match purchase order"
msgstr ""
-#: order/serializers.py:434
+#: order/serializers.py:440
msgid "Purchase order must match supplier"
msgstr ""
-#: order/serializers.py:472 order/serializers.py:1216
+#: order/serializers.py:478 order/serializers.py:1222
msgid "Line Item"
msgstr ""
-#: order/serializers.py:478
+#: order/serializers.py:484
msgid "Line item does not match purchase order"
msgstr ""
-#: order/serializers.py:488 order/serializers.py:607 order/serializers.py:1589
+#: order/serializers.py:494 order/serializers.py:613 order/serializers.py:1595
msgid "Select destination location for received items"
msgstr ""
-#: order/serializers.py:507 templates/js/translated/purchase_order.js:1100
+#: order/serializers.py:513 templates/js/translated/purchase_order.js:1115
msgid "Enter batch code for incoming stock items"
msgstr ""
-#: order/serializers.py:515 templates/js/translated/purchase_order.js:1124
+#: order/serializers.py:521 templates/js/translated/purchase_order.js:1139
msgid "Enter serial numbers for incoming stock items"
msgstr ""
-#: order/serializers.py:528 templates/js/translated/barcode.js:52
+#: order/serializers.py:534 templates/js/translated/barcode.js:52
msgid "Barcode"
msgstr "바코드"
-#: order/serializers.py:529
+#: order/serializers.py:535
msgid "Scanned barcode"
msgstr ""
-#: order/serializers.py:545
+#: order/serializers.py:551
msgid "Barcode is already in use"
msgstr "이미 사용 중인 바코드입니다"
-#: order/serializers.py:569
+#: order/serializers.py:575
msgid "An integer quantity must be provided for trackable parts"
msgstr ""
-#: order/serializers.py:623 order/serializers.py:1604
+#: order/serializers.py:629 order/serializers.py:1610
msgid "Line items must be provided"
msgstr ""
-#: order/serializers.py:640
+#: order/serializers.py:646
msgid "Destination location must be specified"
msgstr ""
-#: order/serializers.py:651
+#: order/serializers.py:657
msgid "Supplied barcode values must be unique"
msgstr ""
-#: order/serializers.py:950
+#: order/serializers.py:956
msgid "Sale price currency"
msgstr ""
-#: order/serializers.py:1007
+#: order/serializers.py:1013
msgid "No shipment details provided"
msgstr ""
-#: order/serializers.py:1071 order/serializers.py:1225
+#: order/serializers.py:1077 order/serializers.py:1231
msgid "Line item is not associated with this order"
msgstr ""
-#: order/serializers.py:1093
+#: order/serializers.py:1099
msgid "Quantity must be positive"
msgstr ""
-#: order/serializers.py:1238
+#: order/serializers.py:1244
msgid "Enter serial numbers to allocate"
msgstr ""
-#: order/serializers.py:1260 order/serializers.py:1384
+#: order/serializers.py:1266 order/serializers.py:1390
msgid "Shipment has already been shipped"
msgstr ""
-#: order/serializers.py:1263 order/serializers.py:1387
+#: order/serializers.py:1269 order/serializers.py:1393
msgid "Shipment is not associated with this order"
msgstr ""
-#: order/serializers.py:1317
+#: order/serializers.py:1323
msgid "No match found for the following serial numbers"
msgstr ""
-#: order/serializers.py:1327
+#: order/serializers.py:1333
msgid "The following serial numbers are already allocated"
msgstr ""
-#: order/serializers.py:1555
+#: order/serializers.py:1561
msgid "Return order line item"
msgstr ""
-#: order/serializers.py:1562
+#: order/serializers.py:1568
msgid "Line item does not match return order"
msgstr ""
-#: order/serializers.py:1565
+#: order/serializers.py:1571
msgid "Line item has already been received"
msgstr ""
-#: order/serializers.py:1597
+#: order/serializers.py:1603
msgid "Items can only be received against orders which are in progress"
msgstr ""
-#: order/serializers.py:1678
+#: order/serializers.py:1684
msgid "Line price currency"
msgstr ""
@@ -4957,82 +5013,74 @@ msgid "Issue Order"
msgstr ""
#: order/templates/order/order_base.html:83
-msgid "Receive items"
-msgstr ""
-
-#: order/templates/order/order_base.html:85
-msgid "Receive Items"
-msgstr ""
-
-#: order/templates/order/order_base.html:87
#: order/templates/order/return_order_base.html:87
msgid "Mark order as complete"
msgstr ""
-#: order/templates/order/order_base.html:88
+#: order/templates/order/order_base.html:84
#: order/templates/order/return_order_base.html:88
#: order/templates/order/sales_order_base.html:94
msgid "Complete Order"
msgstr ""
-#: order/templates/order/order_base.html:95
+#: order/templates/order/order_base.html:91
msgid "Supplier part thumbnail"
msgstr ""
-#: order/templates/order/order_base.html:110
+#: order/templates/order/order_base.html:106
#: order/templates/order/return_order_base.html:102
#: order/templates/order/sales_order_base.html:107
msgid "Order Reference"
msgstr ""
-#: order/templates/order/order_base.html:115
+#: order/templates/order/order_base.html:111
#: order/templates/order/return_order_base.html:107
#: order/templates/order/sales_order_base.html:112
msgid "Order Description"
msgstr ""
-#: order/templates/order/order_base.html:122
+#: order/templates/order/order_base.html:118
#: order/templates/order/return_order_base.html:114
#: order/templates/order/sales_order_base.html:119
msgid "Order Status"
msgstr ""
-#: order/templates/order/order_base.html:145
+#: order/templates/order/order_base.html:141
msgid "No suppplier information available"
msgstr ""
-#: order/templates/order/order_base.html:158
+#: order/templates/order/order_base.html:154
#: order/templates/order/sales_order_base.html:158
msgid "Completed Line Items"
msgstr ""
-#: order/templates/order/order_base.html:164
+#: order/templates/order/order_base.html:160
#: order/templates/order/sales_order_base.html:164
#: order/templates/order/sales_order_base.html:174
msgid "Incomplete"
msgstr ""
-#: order/templates/order/order_base.html:183
+#: order/templates/order/order_base.html:179
#: order/templates/order/return_order_base.html:158
#: report/templates/report/inventree_build_order_base.html:121
msgid "Issued"
msgstr ""
-#: order/templates/order/order_base.html:221
+#: order/templates/order/order_base.html:224
msgid "Total cost"
msgstr ""
-#: order/templates/order/order_base.html:225
-#: order/templates/order/return_order_base.html:193
-#: order/templates/order/sales_order_base.html:233
+#: order/templates/order/order_base.html:228
+#: order/templates/order/return_order_base.html:200
+#: order/templates/order/sales_order_base.html:240
msgid "Total cost could not be calculated"
msgstr ""
-#: order/templates/order/order_base.html:331
+#: order/templates/order/order_base.html:318
msgid "Purchase Order QR Code"
msgstr ""
-#: order/templates/order/order_base.html:343
+#: order/templates/order/order_base.html:330
msgid "Link Barcode to Purchase Order"
msgstr ""
@@ -5085,13 +5133,13 @@ msgstr ""
#: part/templates/part/import_wizard/ajax_match_references.html:42
#: part/templates/part/import_wizard/match_fields.html:71
#: part/templates/part/import_wizard/match_references.html:49
-#: templates/js/translated/bom.js:132 templates/js/translated/build.js:512
-#: templates/js/translated/build.js:2348
-#: templates/js/translated/purchase_order.js:692
-#: templates/js/translated/purchase_order.js:1206
-#: templates/js/translated/return_order.js:494
-#: templates/js/translated/sales_order.js:1097
-#: templates/js/translated/stock.js:681 templates/js/translated/stock.js:850
+#: templates/js/translated/bom.js:133 templates/js/translated/build.js:518
+#: templates/js/translated/build.js:1555
+#: templates/js/translated/purchase_order.js:703
+#: templates/js/translated/purchase_order.js:1221
+#: templates/js/translated/return_order.js:506
+#: templates/js/translated/sales_order.js:1109
+#: templates/js/translated/stock.js:680 templates/js/translated/stock.js:849
#: templates/patterns/wizard/match_fields.html:70
msgid "Remove row"
msgstr ""
@@ -5152,9 +5200,9 @@ msgstr ""
#: order/templates/order/purchase_order_detail.html:27
#: order/templates/order/return_order_detail.html:24
#: order/templates/order/sales_order_detail.html:24
-#: templates/js/translated/purchase_order.js:419
-#: templates/js/translated/return_order.js:447
-#: templates/js/translated/sales_order.js:222
+#: templates/js/translated/purchase_order.js:430
+#: templates/js/translated/return_order.js:459
+#: templates/js/translated/sales_order.js:234
msgid "Add Line Item"
msgstr ""
@@ -5165,30 +5213,25 @@ msgstr ""
msgid "Receive Line Items"
msgstr ""
-#: order/templates/order/purchase_order_detail.html:49
#: order/templates/order/purchase_order_detail.html:50
-msgid "Delete Line Items"
-msgstr ""
-
-#: order/templates/order/purchase_order_detail.html:66
-#: order/templates/order/return_order_detail.html:47
-#: order/templates/order/sales_order_detail.html:43
+#: order/templates/order/return_order_detail.html:45
+#: order/templates/order/sales_order_detail.html:41
msgid "Extra Lines"
msgstr ""
-#: order/templates/order/purchase_order_detail.html:72
-#: order/templates/order/return_order_detail.html:53
-#: order/templates/order/sales_order_detail.html:49
+#: order/templates/order/purchase_order_detail.html:56
+#: order/templates/order/return_order_detail.html:51
+#: order/templates/order/sales_order_detail.html:47
msgid "Add Extra Line"
msgstr ""
-#: order/templates/order/purchase_order_detail.html:92
+#: order/templates/order/purchase_order_detail.html:74
msgid "Received Items"
msgstr ""
-#: order/templates/order/purchase_order_detail.html:117
-#: order/templates/order/return_order_detail.html:89
-#: order/templates/order/sales_order_detail.html:149
+#: order/templates/order/purchase_order_detail.html:99
+#: order/templates/order/return_order_detail.html:85
+#: order/templates/order/sales_order_detail.html:139
msgid "Order Notes"
msgstr ""
@@ -5208,29 +5251,29 @@ msgstr ""
#: order/templates/order/return_order_base.html:139
#: order/templates/order/sales_order_base.html:152
-#: templates/js/translated/return_order.js:297
-#: templates/js/translated/sales_order.js:785
+#: templates/js/translated/return_order.js:309
+#: templates/js/translated/sales_order.js:797
msgid "Customer Reference"
msgstr ""
-#: order/templates/order/return_order_base.html:189
-#: order/templates/order/sales_order_base.html:229
+#: order/templates/order/return_order_base.html:196
+#: order/templates/order/sales_order_base.html:236
#: part/templates/part/part_pricing.html:32
#: part/templates/part/part_pricing.html:58
#: part/templates/part/part_pricing.html:99
#: part/templates/part/part_pricing.html:114
-#: templates/js/translated/part.js:1046
-#: templates/js/translated/purchase_order.js:1712
-#: templates/js/translated/return_order.js:369
-#: templates/js/translated/sales_order.js:843
+#: templates/js/translated/part.js:1045
+#: templates/js/translated/purchase_order.js:1727
+#: templates/js/translated/return_order.js:381
+#: templates/js/translated/sales_order.js:855
msgid "Total Cost"
msgstr ""
-#: order/templates/order/return_order_base.html:257
+#: order/templates/order/return_order_base.html:264
msgid "Return Order QR Code"
msgstr ""
-#: order/templates/order/return_order_base.html:269
+#: order/templates/order/return_order_base.html:276
msgid "Link Barcode to Return Order"
msgstr ""
@@ -5248,7 +5291,7 @@ msgid "Ship Items"
msgstr ""
#: order/templates/order/sales_order_base.html:93
-#: templates/js/translated/sales_order.js:469
+#: templates/js/translated/sales_order.js:481
msgid "Complete Sales Order"
msgstr ""
@@ -5257,16 +5300,16 @@ msgid "This Sales Order has not been fully allocated"
msgstr ""
#: order/templates/order/sales_order_base.html:170
-#: order/templates/order/sales_order_detail.html:105
+#: order/templates/order/sales_order_detail.html:99
#: order/templates/order/so_sidebar.html:11
msgid "Completed Shipments"
msgstr ""
-#: order/templates/order/sales_order_base.html:306
+#: order/templates/order/sales_order_base.html:313
msgid "Sales Order QR Code"
msgstr ""
-#: order/templates/order/sales_order_base.html:318
+#: order/templates/order/sales_order_base.html:325
msgid "Link Barcode to Sales Order"
msgstr ""
@@ -5274,18 +5317,17 @@ msgstr ""
msgid "Sales Order Items"
msgstr ""
-#: order/templates/order/sales_order_detail.html:71
-#: order/templates/order/so_sidebar.html:8 templates/InvenTree/index.html:332
+#: order/templates/order/sales_order_detail.html:67
+#: order/templates/order/so_sidebar.html:8 templates/InvenTree/index.html:284
msgid "Pending Shipments"
msgstr ""
-#: order/templates/order/sales_order_detail.html:75
-#: templates/attachment_table.html:6 templates/js/translated/bom.js:1236
-#: templates/js/translated/build.js:2249
+#: order/templates/order/sales_order_detail.html:71
+#: templates/js/translated/bom.js:1256 templates/js/translated/filters.js:297
msgid "Actions"
msgstr ""
-#: order/templates/order/sales_order_detail.html:84
+#: order/templates/order/sales_order_detail.html:80
msgid "New Shipment"
msgstr ""
@@ -5311,12 +5353,12 @@ msgstr ""
msgid "Updated {part} unit-price to {price} and quantity to {qty}"
msgstr ""
-#: part/admin.py:33 part/admin.py:273 part/models.py:3667 part/tasks.py:288
+#: part/admin.py:33 part/admin.py:273 part/models.py:3716 part/tasks.py:288
#: stock/admin.py:101
msgid "Part ID"
msgstr ""
-#: part/admin.py:34 part/admin.py:275 part/models.py:3671 part/tasks.py:289
+#: part/admin.py:34 part/admin.py:275 part/models.py:3720 part/tasks.py:289
#: stock/admin.py:102
msgid "Part Name"
msgstr ""
@@ -5325,19 +5367,19 @@ msgstr ""
msgid "Part Description"
msgstr ""
-#: part/admin.py:36 part/models.py:889 part/templates/part/part_base.html:271
-#: templates/js/translated/part.js:1200 templates/js/translated/part.js:2233
-#: templates/js/translated/stock.js:1795
+#: part/admin.py:36 part/models.py:890 part/templates/part/part_base.html:271
+#: templates/js/translated/part.js:1199 templates/js/translated/part.js:2309
+#: templates/js/translated/stock.js:1952
msgid "IPN"
msgstr ""
-#: part/admin.py:37 part/models.py:896 part/templates/part/part_base.html:279
-#: report/models.py:179 templates/js/translated/part.js:1205
-#: templates/js/translated/part.js:2239
+#: part/admin.py:37 part/models.py:897 part/templates/part/part_base.html:279
+#: report/models.py:179 templates/js/translated/part.js:1204
+#: templates/js/translated/part.js:2315
msgid "Revision"
msgstr ""
-#: part/admin.py:38 part/admin.py:198 part/models.py:875
+#: part/admin.py:38 part/admin.py:198 part/models.py:876
#: part/templates/part/category.html:93 part/templates/part/part_base.html:300
msgid "Keywords"
msgstr ""
@@ -5358,24 +5400,24 @@ msgstr ""
msgid "Default Supplier ID"
msgstr ""
-#: part/admin.py:46 part/models.py:864 part/templates/part/part_base.html:179
+#: part/admin.py:46 part/models.py:865 part/templates/part/part_base.html:179
msgid "Variant Of"
msgstr ""
-#: part/admin.py:47 part/models.py:980 part/templates/part/part_base.html:205
+#: part/admin.py:47 part/models.py:981 part/templates/part/part_base.html:205
msgid "Minimum Stock"
msgstr ""
#: part/admin.py:61 part/templates/part/part_base.html:199
-#: templates/js/translated/company.js:1299
-#: templates/js/translated/table_filters.js:301
+#: templates/js/translated/company.js:1720
+#: templates/js/translated/table_filters.js:307
msgid "In Stock"
msgstr ""
#: part/admin.py:62 part/bom.py:178 part/templates/part/part_base.html:212
-#: templates/js/translated/bom.js:1167 templates/js/translated/build.js:2191
-#: templates/js/translated/part.js:687 templates/js/translated/part.js:2123
-#: templates/js/translated/table_filters.js:140
+#: templates/js/translated/bom.js:1187 templates/js/translated/build.js:2541
+#: templates/js/translated/part.js:686 templates/js/translated/part.js:2122
+#: templates/js/translated/table_filters.js:146
msgid "On Order"
msgstr ""
@@ -5383,23 +5425,16 @@ msgstr ""
msgid "Used In"
msgstr ""
-#: part/admin.py:64 templates/js/translated/build.js:2203
-#: templates/js/translated/build.js:2465 templates/js/translated/build.js:3052
-#: templates/js/translated/sales_order.js:1906
-#: templates/js/translated/table_filters.js:488
-msgid "Allocated"
-msgstr ""
-
#: part/admin.py:65 part/templates/part/part_base.html:243 stock/admin.py:124
-#: templates/js/translated/part.js:692 templates/js/translated/part.js:2127
+#: templates/js/translated/part.js:691 templates/js/translated/part.js:2126
msgid "Building"
msgstr ""
-#: part/admin.py:66 part/models.py:2930 templates/js/translated/part.js:943
+#: part/admin.py:66 part/models.py:2964 templates/js/translated/part.js:942
msgid "Minimum Cost"
msgstr ""
-#: part/admin.py:67 part/models.py:2936 templates/js/translated/part.js:953
+#: part/admin.py:67 part/models.py:2970 templates/js/translated/part.js:952
msgid "Maximum Cost"
msgstr ""
@@ -5416,13 +5451,13 @@ msgstr ""
msgid "Category Path"
msgstr ""
-#: part/admin.py:202 part/models.py:392 part/templates/part/cat_link.html:3
-#: part/templates/part/category.html:23 part/templates/part/category.html:140
-#: part/templates/part/category.html:160
+#: part/admin.py:202 part/models.py:393 part/serializers.py:307
+#: part/templates/part/cat_link.html:3 part/templates/part/category.html:23
+#: part/templates/part/category.html:140 part/templates/part/category.html:160
#: part/templates/part/category_sidebar.html:9
-#: templates/InvenTree/index.html:86 templates/InvenTree/search.html:84
+#: templates/InvenTree/index.html:36 templates/InvenTree/search.html:84
#: templates/InvenTree/settings/sidebar.html:45
-#: templates/js/translated/part.js:2754 templates/js/translated/search.js:172
+#: templates/js/translated/part.js:2739 templates/js/translated/search.js:130
#: templates/navbar.html:24 users/models.py:38
msgid "Parts"
msgstr ""
@@ -5439,7 +5474,7 @@ msgstr ""
msgid "Parent IPN"
msgstr ""
-#: part/admin.py:274 part/models.py:3675
+#: part/admin.py:274 part/models.py:3724
msgid "Part IPN"
msgstr ""
@@ -5453,35 +5488,35 @@ msgstr ""
msgid "Maximum Price"
msgstr ""
-#: part/api.py:498
+#: part/api.py:501
msgid "Incoming Purchase Order"
msgstr ""
-#: part/api.py:518
+#: part/api.py:521
msgid "Outgoing Sales Order"
msgstr ""
-#: part/api.py:536
+#: part/api.py:539
msgid "Stock produced by Build Order"
msgstr ""
-#: part/api.py:622
+#: part/api.py:625
msgid "Stock required for Build Order"
msgstr ""
-#: part/api.py:770
+#: part/api.py:773
msgid "Valid"
msgstr ""
-#: part/api.py:771
+#: part/api.py:774
msgid "Validate entire Bill of Materials"
msgstr ""
-#: part/api.py:777
+#: part/api.py:780
msgid "This option must be selected"
msgstr ""
-#: part/bom.py:175 part/models.py:127 part/models.py:923
+#: part/bom.py:175 part/models.py:128 part/models.py:924
#: part/templates/part/category.html:115 part/templates/part/part_base.html:369
msgid "Default Location"
msgstr ""
@@ -5491,7 +5526,7 @@ msgid "Total Stock"
msgstr ""
#: part/bom.py:177 part/templates/part/part_base.html:194
-#: templates/js/translated/sales_order.js:1873
+#: templates/js/translated/sales_order.js:1885
msgid "Available Stock"
msgstr ""
@@ -5499,916 +5534,913 @@ msgstr ""
msgid "Input quantity for price calculation"
msgstr ""
-#: part/models.py:75 part/models.py:3616 part/templates/part/category.html:16
+#: part/models.py:76 part/models.py:3665 part/templates/part/category.html:16
#: part/templates/part/part_app_base.html:10
msgid "Part Category"
msgstr ""
-#: part/models.py:76 part/templates/part/category.html:135
-#: templates/InvenTree/search.html:97 templates/js/translated/search.js:200
+#: part/models.py:77 part/templates/part/category.html:135
+#: templates/InvenTree/search.html:97 templates/js/translated/search.js:158
#: users/models.py:37
msgid "Part Categories"
msgstr ""
-#: part/models.py:128
+#: part/models.py:129
msgid "Default location for parts in this category"
msgstr ""
-#: part/models.py:133 stock/models.py:124 templates/js/translated/stock.js:2520
-#: templates/js/translated/table_filters.js:209
-#: templates/js/translated/table_filters.js:229
+#: part/models.py:134 stock/models.py:124 templates/js/translated/stock.js:2651
+#: templates/js/translated/table_filters.js:215
+#: templates/js/translated/table_filters.js:235
msgid "Structural"
msgstr ""
-#: part/models.py:135
+#: part/models.py:136
msgid "Parts may not be directly assigned to a structural category, but may be assigned to child categories."
msgstr ""
-#: part/models.py:139
+#: part/models.py:140
msgid "Default keywords"
msgstr ""
-#: part/models.py:139
+#: part/models.py:140
msgid "Default keywords for parts in this category"
msgstr ""
-#: part/models.py:144 stock/models.py:113
+#: part/models.py:145 stock/models.py:113
msgid "Icon"
msgstr ""
-#: part/models.py:145 stock/models.py:114
+#: part/models.py:146 stock/models.py:114
msgid "Icon (optional)"
msgstr ""
-#: part/models.py:164
+#: part/models.py:165
msgid "You cannot make this part category structural because some parts are already assigned to it!"
msgstr ""
-#: part/models.py:475
+#: part/models.py:476
msgid "Invalid choice for parent part"
msgstr ""
-#: part/models.py:517 part/models.py:529
+#: part/models.py:518 part/models.py:530
#, python-brace-format
msgid "Part '{p1}' is used in BOM for '{p2}' (recursive)"
msgstr ""
-#: part/models.py:601
+#: part/models.py:602
#, python-brace-format
msgid "IPN must match regex pattern {pat}"
msgstr ""
-#: part/models.py:672
+#: part/models.py:673
msgid "Stock item with this serial number already exists"
msgstr ""
-#: part/models.py:803
+#: part/models.py:804
msgid "Duplicate IPN not allowed in part settings"
msgstr ""
-#: part/models.py:808
+#: part/models.py:809
msgid "Part with this Name, IPN and Revision already exists."
msgstr ""
-#: part/models.py:822
+#: part/models.py:823
msgid "Parts cannot be assigned to structural part categories!"
msgstr ""
-#: part/models.py:846 part/models.py:3672
+#: part/models.py:847 part/models.py:3721
msgid "Part name"
msgstr ""
-#: part/models.py:852
+#: part/models.py:853
msgid "Is Template"
msgstr ""
-#: part/models.py:853
+#: part/models.py:854
msgid "Is this part a template part?"
msgstr ""
-#: part/models.py:863
+#: part/models.py:864
msgid "Is this part a variant of another part?"
msgstr ""
-#: part/models.py:870
+#: part/models.py:871
msgid "Part description (optional)"
msgstr ""
-#: part/models.py:876
+#: part/models.py:877
msgid "Part keywords to improve visibility in search results"
msgstr ""
-#: part/models.py:883 part/models.py:3198 part/models.py:3615
-#: part/serializers.py:848 part/templates/part/part_base.html:262
+#: part/models.py:884 part/models.py:3232 part/models.py:3664
+#: part/serializers.py:320 part/serializers.py:910
+#: part/templates/part/part_base.html:262
#: templates/InvenTree/settings/settings_staff_js.html:204
#: templates/js/translated/notification.js:59
-#: templates/js/translated/part.js:2269 templates/js/translated/part.js:2481
+#: templates/js/translated/part.js:2345
msgid "Category"
msgstr ""
-#: part/models.py:884
+#: part/models.py:885
msgid "Part category"
msgstr ""
-#: part/models.py:890
+#: part/models.py:891
msgid "Internal Part Number"
msgstr ""
-#: part/models.py:895
+#: part/models.py:896
msgid "Part revision or version number"
msgstr ""
-#: part/models.py:921
+#: part/models.py:922
msgid "Where is this item normally stored?"
msgstr ""
-#: part/models.py:966 part/templates/part/part_base.html:378
+#: part/models.py:967 part/templates/part/part_base.html:378
msgid "Default Supplier"
msgstr ""
-#: part/models.py:967
+#: part/models.py:968
msgid "Default supplier part"
msgstr ""
-#: part/models.py:974
+#: part/models.py:975
msgid "Default Expiry"
msgstr ""
-#: part/models.py:975
+#: part/models.py:976
msgid "Expiry time (in days) for stock items of this part"
msgstr ""
-#: part/models.py:981
+#: part/models.py:982
msgid "Minimum allowed stock level"
msgstr ""
-#: part/models.py:988
+#: part/models.py:989
msgid "Units of measure for this part"
msgstr ""
-#: part/models.py:997
+#: part/models.py:998
msgid "Can this part be built from other parts?"
msgstr ""
-#: part/models.py:1003
+#: part/models.py:1004
msgid "Can this part be used to build other parts?"
msgstr ""
-#: part/models.py:1009
+#: part/models.py:1010
msgid "Does this part have tracking for unique items?"
msgstr ""
-#: part/models.py:1014
+#: part/models.py:1015
msgid "Can this part be purchased from external suppliers?"
msgstr ""
-#: part/models.py:1019
+#: part/models.py:1020
msgid "Can this part be sold to customers?"
msgstr ""
-#: part/models.py:1024
+#: part/models.py:1025
msgid "Is this part active?"
msgstr ""
-#: part/models.py:1029
+#: part/models.py:1030
msgid "Is this a virtual part, such as a software product or license?"
msgstr ""
-#: part/models.py:1031
+#: part/models.py:1032
msgid "BOM checksum"
msgstr ""
-#: part/models.py:1031
+#: part/models.py:1032
msgid "Stored BOM checksum"
msgstr ""
-#: part/models.py:1034
+#: part/models.py:1035
msgid "BOM checked by"
msgstr ""
-#: part/models.py:1036
+#: part/models.py:1037
msgid "BOM checked date"
msgstr ""
-#: part/models.py:1040
+#: part/models.py:1041
msgid "Creation User"
msgstr ""
-#: part/models.py:1042
+#: part/models.py:1043
msgid "User responsible for this part"
msgstr ""
-#: part/models.py:1046 part/templates/part/part_base.html:341
+#: part/models.py:1047 part/templates/part/part_base.html:341
#: stock/templates/stock/item_base.html:447
-#: templates/js/translated/part.js:2331
+#: templates/js/translated/part.js:2407
msgid "Last Stocktake"
msgstr ""
-#: part/models.py:1921
+#: part/models.py:1923
msgid "Sell multiple"
msgstr ""
-#: part/models.py:2853
+#: part/models.py:2887
msgid "Currency used to cache pricing calculations"
msgstr ""
-#: part/models.py:2870
+#: part/models.py:2904
msgid "Minimum BOM Cost"
msgstr ""
-#: part/models.py:2871
+#: part/models.py:2905
msgid "Minimum cost of component parts"
msgstr ""
-#: part/models.py:2876
+#: part/models.py:2910
msgid "Maximum BOM Cost"
msgstr ""
-#: part/models.py:2877
+#: part/models.py:2911
msgid "Maximum cost of component parts"
msgstr ""
-#: part/models.py:2882
+#: part/models.py:2916
msgid "Minimum Purchase Cost"
msgstr ""
-#: part/models.py:2883
+#: part/models.py:2917
msgid "Minimum historical purchase cost"
msgstr ""
-#: part/models.py:2888
+#: part/models.py:2922
msgid "Maximum Purchase Cost"
msgstr ""
-#: part/models.py:2889
+#: part/models.py:2923
msgid "Maximum historical purchase cost"
msgstr ""
-#: part/models.py:2894
+#: part/models.py:2928
msgid "Minimum Internal Price"
msgstr ""
-#: part/models.py:2895
+#: part/models.py:2929
msgid "Minimum cost based on internal price breaks"
msgstr ""
-#: part/models.py:2900
+#: part/models.py:2934
msgid "Maximum Internal Price"
msgstr ""
-#: part/models.py:2901
+#: part/models.py:2935
msgid "Maximum cost based on internal price breaks"
msgstr ""
-#: part/models.py:2906
+#: part/models.py:2940
msgid "Minimum Supplier Price"
msgstr ""
-#: part/models.py:2907
+#: part/models.py:2941
msgid "Minimum price of part from external suppliers"
msgstr ""
-#: part/models.py:2912
+#: part/models.py:2946
msgid "Maximum Supplier Price"
msgstr ""
-#: part/models.py:2913
+#: part/models.py:2947
msgid "Maximum price of part from external suppliers"
msgstr ""
-#: part/models.py:2918
+#: part/models.py:2952
msgid "Minimum Variant Cost"
msgstr ""
-#: part/models.py:2919
+#: part/models.py:2953
msgid "Calculated minimum cost of variant parts"
msgstr ""
-#: part/models.py:2924
+#: part/models.py:2958
msgid "Maximum Variant Cost"
msgstr ""
-#: part/models.py:2925
+#: part/models.py:2959
msgid "Calculated maximum cost of variant parts"
msgstr ""
-#: part/models.py:2931
+#: part/models.py:2965
msgid "Calculated overall minimum cost"
msgstr ""
-#: part/models.py:2937
+#: part/models.py:2971
msgid "Calculated overall maximum cost"
msgstr ""
-#: part/models.py:2942
+#: part/models.py:2976
msgid "Minimum Sale Price"
msgstr ""
-#: part/models.py:2943
+#: part/models.py:2977
msgid "Minimum sale price based on price breaks"
msgstr ""
-#: part/models.py:2948
+#: part/models.py:2982
msgid "Maximum Sale Price"
msgstr ""
-#: part/models.py:2949
+#: part/models.py:2983
msgid "Maximum sale price based on price breaks"
msgstr ""
-#: part/models.py:2954
+#: part/models.py:2988
msgid "Minimum Sale Cost"
msgstr ""
-#: part/models.py:2955
+#: part/models.py:2989
msgid "Minimum historical sale price"
msgstr ""
-#: part/models.py:2960
+#: part/models.py:2994
msgid "Maximum Sale Cost"
msgstr ""
-#: part/models.py:2961
+#: part/models.py:2995
msgid "Maximum historical sale price"
msgstr ""
-#: part/models.py:2980
+#: part/models.py:3014
msgid "Part for stocktake"
msgstr ""
-#: part/models.py:2985
+#: part/models.py:3019
msgid "Item Count"
msgstr ""
-#: part/models.py:2986
+#: part/models.py:3020
msgid "Number of individual stock entries at time of stocktake"
msgstr ""
-#: part/models.py:2993
+#: part/models.py:3027
msgid "Total available stock at time of stocktake"
msgstr ""
-#: part/models.py:2997 part/models.py:3080
+#: part/models.py:3031 part/models.py:3114
#: part/templates/part/part_scheduling.html:13
#: report/templates/report/inventree_test_report_base.html:106
#: templates/InvenTree/settings/plugin_settings.html:37
#: templates/InvenTree/settings/settings_staff_js.html:360
-#: templates/js/translated/part.js:1059 templates/js/translated/pricing.js:812
+#: templates/js/translated/part.js:1058 templates/js/translated/pricing.js:812
#: templates/js/translated/pricing.js:936
-#: templates/js/translated/purchase_order.js:1691
-#: templates/js/translated/stock.js:2558
+#: templates/js/translated/purchase_order.js:1706
+#: templates/js/translated/stock.js:2689
msgid "Date"
msgstr ""
-#: part/models.py:2998
+#: part/models.py:3032
msgid "Date stocktake was performed"
msgstr ""
-#: part/models.py:3006
+#: part/models.py:3040
msgid "Additional notes"
msgstr ""
-#: part/models.py:3014
+#: part/models.py:3048
msgid "User who performed this stocktake"
msgstr ""
-#: part/models.py:3019
+#: part/models.py:3053
msgid "Minimum Stock Cost"
msgstr ""
-#: part/models.py:3020
+#: part/models.py:3054
msgid "Estimated minimum cost of stock on hand"
msgstr ""
-#: part/models.py:3025
+#: part/models.py:3059
msgid "Maximum Stock Cost"
msgstr ""
-#: part/models.py:3026
+#: part/models.py:3060
msgid "Estimated maximum cost of stock on hand"
msgstr ""
-#: part/models.py:3087 templates/InvenTree/settings/settings_staff_js.html:349
+#: part/models.py:3121 templates/InvenTree/settings/settings_staff_js.html:349
msgid "Report"
msgstr ""
-#: part/models.py:3088
+#: part/models.py:3122
msgid "Stocktake report file (generated internally)"
msgstr ""
-#: part/models.py:3093 templates/InvenTree/settings/settings_staff_js.html:356
+#: part/models.py:3127 templates/InvenTree/settings/settings_staff_js.html:356
msgid "Part Count"
msgstr ""
-#: part/models.py:3094
+#: part/models.py:3128
msgid "Number of parts covered by stocktake"
msgstr ""
-#: part/models.py:3102
+#: part/models.py:3136
msgid "User who requested this stocktake report"
msgstr ""
-#: part/models.py:3238
+#: part/models.py:3272
msgid "Test templates can only be created for trackable parts"
msgstr ""
-#: part/models.py:3255
+#: part/models.py:3289
msgid "Test with this name already exists for this part"
msgstr ""
-#: part/models.py:3275 templates/js/translated/part.js:2821
+#: part/models.py:3309 templates/js/translated/part.js:2806
msgid "Test Name"
msgstr ""
-#: part/models.py:3276
+#: part/models.py:3310
msgid "Enter a name for the test"
msgstr ""
-#: part/models.py:3281
+#: part/models.py:3315
msgid "Test Description"
msgstr ""
-#: part/models.py:3282
+#: part/models.py:3316
msgid "Enter description for this test"
msgstr ""
-#: part/models.py:3287 templates/js/translated/part.js:2830
-#: templates/js/translated/table_filters.js:423
+#: part/models.py:3321 templates/js/translated/part.js:2815
+#: templates/js/translated/table_filters.js:429
msgid "Required"
msgstr ""
-#: part/models.py:3288
+#: part/models.py:3322
msgid "Is this test required to pass?"
msgstr ""
-#: part/models.py:3293 templates/js/translated/part.js:2838
+#: part/models.py:3327 templates/js/translated/part.js:2823
msgid "Requires Value"
msgstr ""
-#: part/models.py:3294
+#: part/models.py:3328
msgid "Does this test require a value when adding a test result?"
msgstr ""
-#: part/models.py:3299 templates/js/translated/part.js:2845
+#: part/models.py:3333 templates/js/translated/part.js:2830
msgid "Requires Attachment"
msgstr ""
-#: part/models.py:3300
+#: part/models.py:3334
msgid "Does this test require a file attachment when adding a test result?"
msgstr ""
-#: part/models.py:3346
+#: part/models.py:3380
msgid "Checkbox parameters cannot have units"
msgstr ""
-#: part/models.py:3351
+#: part/models.py:3385
msgid "Checkbox parameters cannot have choices"
msgstr ""
-#: part/models.py:3369
+#: part/models.py:3403
msgid "Choices must be unique"
msgstr ""
-#: part/models.py:3385
+#: part/models.py:3419
msgid "Parameter template name must be unique"
msgstr ""
-#: part/models.py:3401
+#: part/models.py:3435
msgid "Parameter Name"
msgstr ""
-#: part/models.py:3407
+#: part/models.py:3441
msgid "Physical units for this parameter"
msgstr ""
-#: part/models.py:3417
+#: part/models.py:3451
msgid "Parameter description"
msgstr ""
-#: part/models.py:3423 templates/js/translated/part.js:1600
-#: templates/js/translated/table_filters.js:734
+#: part/models.py:3457 templates/js/translated/part.js:1599
+#: templates/js/translated/table_filters.js:756
msgid "Checkbox"
msgstr ""
-#: part/models.py:3424
+#: part/models.py:3458
msgid "Is this parameter a checkbox?"
msgstr ""
-#: part/models.py:3429 templates/js/translated/part.js:1609
+#: part/models.py:3463 templates/js/translated/part.js:1608
msgid "Choices"
msgstr ""
-#: part/models.py:3430
+#: part/models.py:3464
msgid "Valid choices for this parameter (comma-separated)"
msgstr ""
-#: part/models.py:3511
+#: part/models.py:3545
msgid "Invalid choice for parameter value"
msgstr ""
-#: part/models.py:3555
+#: part/models.py:3589
msgid "Parent Part"
msgstr ""
-#: part/models.py:3560 part/models.py:3621 part/models.py:3622
+#: part/models.py:3594 part/models.py:3670 part/models.py:3671
#: templates/InvenTree/settings/settings_staff_js.html:199
msgid "Parameter Template"
msgstr ""
-#: part/models.py:3565
+#: part/models.py:3599
msgid "Data"
msgstr "데이터"
-#: part/models.py:3565
+#: part/models.py:3599
msgid "Parameter Value"
msgstr ""
-#: part/models.py:3626 templates/InvenTree/settings/settings_staff_js.html:208
+#: part/models.py:3675 templates/InvenTree/settings/settings_staff_js.html:208
msgid "Default Value"
msgstr ""
-#: part/models.py:3627
+#: part/models.py:3676
msgid "Default Parameter Value"
msgstr ""
-#: part/models.py:3664
+#: part/models.py:3713
msgid "Part ID or part name"
msgstr ""
-#: part/models.py:3668
+#: part/models.py:3717
msgid "Unique part ID value"
msgstr ""
-#: part/models.py:3676
+#: part/models.py:3725
msgid "Part IPN value"
msgstr ""
-#: part/models.py:3679
+#: part/models.py:3728
msgid "Level"
msgstr ""
-#: part/models.py:3680
+#: part/models.py:3729
msgid "BOM level"
msgstr ""
-#: part/models.py:3764
+#: part/models.py:3735 part/models.py:4113
+msgid "BOM Item"
+msgstr ""
+
+#: part/models.py:3808
msgid "Select parent part"
msgstr ""
-#: part/models.py:3772
+#: part/models.py:3816
msgid "Sub part"
msgstr ""
-#: part/models.py:3773
+#: part/models.py:3817
msgid "Select part to be used in BOM"
msgstr ""
-#: part/models.py:3779
+#: part/models.py:3823
msgid "BOM quantity for this BOM item"
msgstr ""
-#: part/models.py:3783 part/templates/part/upload_bom.html:58
-#: templates/js/translated/bom.js:971 templates/js/translated/bom.js:998
-#: templates/js/translated/build.js:2113
-#: templates/js/translated/table_filters.js:156
-#: templates/js/translated/table_filters.js:185
-#: templates/js/translated/table_filters.js:500
-msgid "Optional"
-msgstr ""
-
-#: part/models.py:3784
+#: part/models.py:3828
msgid "This BOM item is optional"
msgstr ""
-#: part/models.py:3789 templates/js/translated/bom.js:967
-#: templates/js/translated/bom.js:1007 templates/js/translated/build.js:2104
-#: templates/js/translated/table_filters.js:160
-#: templates/js/translated/table_filters.js:496
-msgid "Consumable"
-msgstr ""
-
-#: part/models.py:3790
+#: part/models.py:3834
msgid "This BOM item is consumable (it is not tracked in build orders)"
msgstr ""
-#: part/models.py:3794 part/templates/part/upload_bom.html:55
+#: part/models.py:3838 part/templates/part/upload_bom.html:55
msgid "Overage"
msgstr ""
-#: part/models.py:3795
+#: part/models.py:3839
msgid "Estimated build wastage quantity (absolute or percentage)"
msgstr ""
-#: part/models.py:3798
+#: part/models.py:3842
msgid "BOM item reference"
msgstr ""
-#: part/models.py:3801
+#: part/models.py:3845
msgid "BOM item notes"
msgstr ""
-#: part/models.py:3805
+#: part/models.py:3849
msgid "Checksum"
msgstr ""
-#: part/models.py:3805
+#: part/models.py:3849
msgid "BOM line checksum"
msgstr ""
-#: part/models.py:3810 templates/js/translated/table_filters.js:144
+#: part/models.py:3854 templates/js/translated/table_filters.js:150
msgid "Validated"
msgstr ""
-#: part/models.py:3811
+#: part/models.py:3855
msgid "This BOM item has been validated"
msgstr ""
-#: part/models.py:3816 part/templates/part/upload_bom.html:57
-#: templates/js/translated/bom.js:1024
-#: templates/js/translated/table_filters.js:148
-#: templates/js/translated/table_filters.js:181
+#: part/models.py:3860 part/templates/part/upload_bom.html:57
+#: templates/js/translated/bom.js:1042
+#: templates/js/translated/table_filters.js:154
+#: templates/js/translated/table_filters.js:187
msgid "Gets inherited"
msgstr ""
-#: part/models.py:3817
+#: part/models.py:3861
msgid "This BOM item is inherited by BOMs for variant parts"
msgstr ""
-#: part/models.py:3822 part/templates/part/upload_bom.html:56
-#: templates/js/translated/bom.js:1016
+#: part/models.py:3866 part/templates/part/upload_bom.html:56
+#: templates/js/translated/bom.js:1034
msgid "Allow Variants"
msgstr ""
-#: part/models.py:3823
+#: part/models.py:3867
msgid "Stock items for variant parts can be used for this BOM item"
msgstr ""
-#: part/models.py:3909 stock/models.py:577
+#: part/models.py:3953 stock/models.py:577
msgid "Quantity must be integer value for trackable parts"
msgstr ""
-#: part/models.py:3918 part/models.py:3920
+#: part/models.py:3962 part/models.py:3964
msgid "Sub part must be specified"
msgstr ""
-#: part/models.py:4036
+#: part/models.py:4080
msgid "BOM Item Substitute"
msgstr ""
-#: part/models.py:4057
+#: part/models.py:4101
msgid "Substitute part cannot be the same as the master part"
msgstr ""
-#: part/models.py:4070
+#: part/models.py:4114
msgid "Parent BOM item"
msgstr ""
-#: part/models.py:4078
+#: part/models.py:4122
msgid "Substitute part"
msgstr ""
-#: part/models.py:4093
+#: part/models.py:4137
msgid "Part 1"
msgstr ""
-#: part/models.py:4097
+#: part/models.py:4141
msgid "Part 2"
msgstr ""
-#: part/models.py:4097
+#: part/models.py:4141
msgid "Select Related Part"
msgstr ""
-#: part/models.py:4115
+#: part/models.py:4159
msgid "Part relationship cannot be created between a part and itself"
msgstr ""
-#: part/models.py:4119
+#: part/models.py:4163
msgid "Duplicate relationship already exists"
msgstr ""
-#: part/serializers.py:152 part/serializers.py:175 stock/serializers.py:257
+#: part/serializers.py:152 part/serializers.py:175 stock/serializers.py:319
msgid "Purchase currency of this stock item"
msgstr ""
-#: part/serializers.py:302
+#: part/serializers.py:313
+msgid "No parts selected"
+msgstr ""
+
+#: part/serializers.py:321
+msgid "Select category"
+msgstr ""
+
+#: part/serializers.py:352
msgid "Original Part"
msgstr ""
-#: part/serializers.py:302
+#: part/serializers.py:352
msgid "Select original part to duplicate"
msgstr ""
-#: part/serializers.py:307
+#: part/serializers.py:357
msgid "Copy Image"
msgstr "이미지 복사"
-#: part/serializers.py:307
+#: part/serializers.py:357
msgid "Copy image from original part"
msgstr ""
-#: part/serializers.py:312 part/templates/part/detail.html:296
+#: part/serializers.py:362 part/templates/part/detail.html:277
msgid "Copy BOM"
msgstr ""
-#: part/serializers.py:312
+#: part/serializers.py:362
msgid "Copy bill of materials from original part"
msgstr ""
-#: part/serializers.py:317
+#: part/serializers.py:367
msgid "Copy Parameters"
msgstr ""
-#: part/serializers.py:317
+#: part/serializers.py:367
msgid "Copy parameter data from original part"
msgstr ""
-#: part/serializers.py:327
+#: part/serializers.py:377
msgid "Initial Stock Quantity"
msgstr ""
-#: part/serializers.py:327
+#: part/serializers.py:377
msgid "Specify initial stock quantity for this Part. If quantity is zero, no stock is added."
msgstr ""
-#: part/serializers.py:333
+#: part/serializers.py:383
msgid "Initial Stock Location"
msgstr ""
-#: part/serializers.py:333
+#: part/serializers.py:383
msgid "Specify initial stock location for this Part"
msgstr ""
-#: part/serializers.py:343
+#: part/serializers.py:393
msgid "Select supplier (or leave blank to skip)"
msgstr ""
-#: part/serializers.py:354
+#: part/serializers.py:404
msgid "Select manufacturer (or leave blank to skip)"
msgstr ""
-#: part/serializers.py:360
+#: part/serializers.py:410
msgid "Manufacturer part number"
msgstr ""
-#: part/serializers.py:367
+#: part/serializers.py:417
msgid "Selected company is not a valid supplier"
msgstr ""
-#: part/serializers.py:375
+#: part/serializers.py:425
msgid "Selected company is not a valid manufacturer"
msgstr ""
-#: part/serializers.py:387
+#: part/serializers.py:437
msgid "Manufacturer part matching this MPN already exists"
msgstr ""
-#: part/serializers.py:395
+#: part/serializers.py:445
msgid "Supplier part matching this SKU already exists"
msgstr ""
-#: part/serializers.py:620 part/templates/part/copy_part.html:9
-#: templates/js/translated/part.js:449
+#: part/serializers.py:682 part/templates/part/copy_part.html:9
+#: templates/js/translated/part.js:448
msgid "Duplicate Part"
msgstr ""
-#: part/serializers.py:620
+#: part/serializers.py:682
msgid "Copy initial data from another Part"
msgstr ""
-#: part/serializers.py:625 templates/js/translated/part.js:103
+#: part/serializers.py:687 templates/js/translated/part.js:102
msgid "Initial Stock"
msgstr ""
-#: part/serializers.py:625
+#: part/serializers.py:687
msgid "Create Part with initial stock quantity"
msgstr ""
-#: part/serializers.py:630
+#: part/serializers.py:692
msgid "Supplier Information"
msgstr ""
-#: part/serializers.py:630
+#: part/serializers.py:692
msgid "Add initial supplier information for this part"
msgstr ""
-#: part/serializers.py:636
+#: part/serializers.py:698
msgid "Copy Category Parameters"
msgstr ""
-#: part/serializers.py:637
+#: part/serializers.py:699
msgid "Copy parameter templates from selected part category"
msgstr ""
-#: part/serializers.py:842
+#: part/serializers.py:904
msgid "Limit stocktake report to a particular part, and any variant parts"
msgstr ""
-#: part/serializers.py:848
+#: part/serializers.py:910
msgid "Limit stocktake report to a particular part category, and any child categories"
msgstr ""
-#: part/serializers.py:854
+#: part/serializers.py:916
msgid "Limit stocktake report to a particular stock location, and any child locations"
msgstr ""
-#: part/serializers.py:859
+#: part/serializers.py:921
msgid "Generate Report"
msgstr ""
-#: part/serializers.py:860
+#: part/serializers.py:922
msgid "Generate report file containing calculated stocktake data"
msgstr ""
-#: part/serializers.py:865
+#: part/serializers.py:927
msgid "Update Parts"
msgstr ""
-#: part/serializers.py:866
+#: part/serializers.py:928
msgid "Update specified parts with calculated stocktake data"
msgstr ""
-#: part/serializers.py:874
+#: part/serializers.py:936
msgid "Stocktake functionality is not enabled"
msgstr ""
-#: part/serializers.py:963
+#: part/serializers.py:1025
msgid "Update"
msgstr ""
-#: part/serializers.py:964
+#: part/serializers.py:1026
msgid "Update pricing for this part"
msgstr ""
-#: part/serializers.py:1246
+#: part/serializers.py:1308
msgid "Select part to copy BOM from"
msgstr ""
-#: part/serializers.py:1254
+#: part/serializers.py:1316
msgid "Remove Existing Data"
msgstr ""
-#: part/serializers.py:1255
+#: part/serializers.py:1317
msgid "Remove existing BOM items before copying"
msgstr ""
-#: part/serializers.py:1260
+#: part/serializers.py:1322
msgid "Include Inherited"
msgstr ""
-#: part/serializers.py:1261
+#: part/serializers.py:1323
msgid "Include BOM items which are inherited from templated parts"
msgstr ""
-#: part/serializers.py:1266
+#: part/serializers.py:1328
msgid "Skip Invalid Rows"
msgstr ""
-#: part/serializers.py:1267
+#: part/serializers.py:1329
msgid "Enable this option to skip invalid rows"
msgstr ""
-#: part/serializers.py:1272
+#: part/serializers.py:1334
msgid "Copy Substitute Parts"
msgstr ""
-#: part/serializers.py:1273
+#: part/serializers.py:1335
msgid "Copy substitute parts when duplicate BOM items"
msgstr ""
-#: part/serializers.py:1313
+#: part/serializers.py:1375
msgid "Clear Existing BOM"
msgstr ""
-#: part/serializers.py:1314
+#: part/serializers.py:1376
msgid "Delete existing BOM items before uploading"
msgstr ""
-#: part/serializers.py:1344
+#: part/serializers.py:1406
msgid "No part column specified"
msgstr ""
-#: part/serializers.py:1387
+#: part/serializers.py:1449
msgid "Multiple matching parts found"
msgstr ""
-#: part/serializers.py:1390
+#: part/serializers.py:1452
msgid "No matching part found"
msgstr ""
-#: part/serializers.py:1393
+#: part/serializers.py:1455
msgid "Part is not designated as a component"
msgstr ""
-#: part/serializers.py:1402
+#: part/serializers.py:1464
msgid "Quantity not provided"
msgstr ""
-#: part/serializers.py:1410
+#: part/serializers.py:1472
msgid "Invalid quantity"
msgstr ""
-#: part/serializers.py:1431
+#: part/serializers.py:1493
msgid "At least one BOM item is required"
msgstr ""
@@ -6421,9 +6453,9 @@ msgstr ""
msgid "The available stock for {part.name} has fallen below the configured minimum level"
msgstr ""
-#: part/tasks.py:294 templates/js/translated/part.js:1040
-#: templates/js/translated/part.js:1793 templates/js/translated/part.js:1848
-#: templates/js/translated/purchase_order.js:2052
+#: part/tasks.py:294 templates/js/translated/part.js:1039
+#: templates/js/translated/part.js:1792 templates/js/translated/part.js:1847
+#: templates/js/translated/purchase_order.js:2062
msgid "Total Quantity"
msgstr ""
@@ -6461,14 +6493,6 @@ msgstr ""
msgid "The BOM for %(part)s has not been validated."
msgstr ""
-#: part/templates/part/bom.html:30 part/templates/part/detail.html:291
-msgid "BOM actions"
-msgstr ""
-
-#: part/templates/part/bom.html:34
-msgid "Delete Items"
-msgstr ""
-
#: part/templates/part/category.html:34
msgid "Perform stocktake for this part category"
msgstr ""
@@ -6505,7 +6529,7 @@ msgstr ""
msgid "Top level part category"
msgstr ""
-#: part/templates/part/category.html:121 part/templates/part/category.html:225
+#: part/templates/part/category.html:121 part/templates/part/category.html:206
#: part/templates/part/category_sidebar.html:7
msgid "Subcategories"
msgstr ""
@@ -6518,33 +6542,20 @@ msgstr ""
msgid "Create new part"
msgstr ""
-#: part/templates/part/category.html:165 templates/js/translated/bom.js:443
+#: part/templates/part/category.html:165 templates/js/translated/bom.js:444
msgid "New Part"
msgstr ""
-#: part/templates/part/category.html:175 part/templates/part/detail.html:390
-#: part/templates/part/detail.html:421
-msgid "Options"
-msgstr ""
-
-#: part/templates/part/category.html:179
-msgid "Set category"
-msgstr ""
-
-#: part/templates/part/category.html:180
-msgid "Set Category"
-msgstr ""
-
-#: part/templates/part/category.html:208
+#: part/templates/part/category.html:191
#: templates/InvenTree/settings/sidebar.html:47
msgid "Part Parameters"
msgstr ""
-#: part/templates/part/category.html:229
+#: part/templates/part/category.html:210
msgid "Create new part category"
msgstr ""
-#: part/templates/part/category.html:230
+#: part/templates/part/category.html:211
msgid "New Category"
msgstr ""
@@ -6581,7 +6592,7 @@ msgid "Refresh scheduling data"
msgstr ""
#: part/templates/part/detail.html:45 part/templates/part/prices.html:15
-#: templates/js/translated/tables.js:584
+#: templates/js/translated/tables.js:560
msgid "Refresh"
msgstr ""
@@ -6592,7 +6603,7 @@ msgstr ""
#: part/templates/part/detail.html:67 part/templates/part/part_sidebar.html:50
#: stock/admin.py:130 templates/InvenTree/settings/part_stocktake.html:29
#: templates/InvenTree/settings/sidebar.html:51
-#: templates/js/translated/stock.js:1952 users/models.py:39
+#: templates/js/translated/stock.js:2109 users/models.py:39
msgid "Stocktake"
msgstr ""
@@ -6604,101 +6615,101 @@ msgstr ""
msgid "Add Test Template"
msgstr ""
-#: part/templates/part/detail.html:145 stock/templates/stock/item.html:53
+#: part/templates/part/detail.html:139 stock/templates/stock/item.html:49
msgid "Sales Order Allocations"
msgstr ""
-#: part/templates/part/detail.html:165
+#: part/templates/part/detail.html:156
msgid "Part Notes"
msgstr ""
-#: part/templates/part/detail.html:180
+#: part/templates/part/detail.html:171
msgid "Part Variants"
msgstr ""
-#: part/templates/part/detail.html:184
+#: part/templates/part/detail.html:175
msgid "Create new variant"
msgstr ""
-#: part/templates/part/detail.html:185
+#: part/templates/part/detail.html:176
msgid "New Variant"
msgstr ""
-#: part/templates/part/detail.html:212
+#: part/templates/part/detail.html:199
msgid "Add new parameter"
msgstr ""
-#: part/templates/part/detail.html:249 part/templates/part/part_sidebar.html:58
+#: part/templates/part/detail.html:232 part/templates/part/part_sidebar.html:58
msgid "Related Parts"
msgstr ""
-#: part/templates/part/detail.html:253 part/templates/part/detail.html:254
+#: part/templates/part/detail.html:236 part/templates/part/detail.html:237
msgid "Add Related"
msgstr ""
-#: part/templates/part/detail.html:274 part/templates/part/part_sidebar.html:17
+#: part/templates/part/detail.html:255 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:279
+#: part/templates/part/detail.html:260
msgid "Export actions"
msgstr ""
-#: part/templates/part/detail.html:283 templates/js/translated/bom.js:339
+#: part/templates/part/detail.html:264 templates/js/translated/bom.js:340
msgid "Export BOM"
msgstr ""
-#: part/templates/part/detail.html:285
+#: part/templates/part/detail.html:266
msgid "Print BOM Report"
msgstr ""
-#: part/templates/part/detail.html:295
+#: part/templates/part/detail.html:272
+msgid "BOM actions"
+msgstr ""
+
+#: part/templates/part/detail.html:276
msgid "Upload BOM"
msgstr ""
-#: part/templates/part/detail.html:297
+#: part/templates/part/detail.html:278
msgid "Validate BOM"
msgstr ""
-#: part/templates/part/detail.html:302 part/templates/part/detail.html:303
-#: templates/js/translated/bom.js:1279 templates/js/translated/bom.js:1280
+#: part/templates/part/detail.html:283 part/templates/part/detail.html:284
+#: templates/js/translated/bom.js:1299 templates/js/translated/bom.js:1300
msgid "Add BOM Item"
msgstr ""
-#: part/templates/part/detail.html:316
+#: part/templates/part/detail.html:297
msgid "Assemblies"
msgstr ""
-#: part/templates/part/detail.html:334
+#: part/templates/part/detail.html:313
msgid "Part Builds"
msgstr ""
-#: part/templates/part/detail.html:361 stock/templates/stock/item.html:38
+#: part/templates/part/detail.html:338 stock/templates/stock/item.html:36
msgid "Build Order Allocations"
msgstr ""
-#: part/templates/part/detail.html:377
+#: part/templates/part/detail.html:352
msgid "Part Suppliers"
msgstr ""
-#: part/templates/part/detail.html:407
+#: part/templates/part/detail.html:372
msgid "Part Manufacturers"
msgstr ""
-#: part/templates/part/detail.html:423
-msgid "Delete manufacturer parts"
-msgstr ""
-
-#: part/templates/part/detail.html:707
+#: part/templates/part/detail.html:654
msgid "Related Part"
msgstr ""
-#: part/templates/part/detail.html:715
+#: part/templates/part/detail.html:662
msgid "Add Related Part"
msgstr ""
-#: part/templates/part/detail.html:800
+#: part/templates/part/detail.html:747
msgid "Add Test Result Template"
msgstr ""
@@ -6732,13 +6743,13 @@ msgid "Download Part Import Template"
msgstr ""
#: part/templates/part/import_wizard/part_upload.html:92
-#: templates/js/translated/bom.js:308 templates/js/translated/bom.js:342
+#: templates/js/translated/bom.js:309 templates/js/translated/bom.js:343
#: templates/js/translated/order.js:129 templates/js/translated/tables.js:189
msgid "Format"
msgstr ""
#: part/templates/part/import_wizard/part_upload.html:93
-#: templates/js/translated/bom.js:309 templates/js/translated/bom.js:343
+#: templates/js/translated/bom.js:310 templates/js/translated/bom.js:344
#: templates/js/translated/order.js:130
msgid "Select file format"
msgstr ""
@@ -6779,7 +6790,7 @@ msgstr ""
msgid "Transfer part stock"
msgstr ""
-#: part/templates/part/part_base.html:93
+#: part/templates/part/part_base.html:93 templates/js/translated/part.js:2264
msgid "Part actions"
msgstr ""
@@ -6824,10 +6835,10 @@ msgid "Part is not active"
msgstr ""
#: part/templates/part/part_base.html:148
-#: templates/js/translated/company.js:945
-#: templates/js/translated/company.js:1185
-#: templates/js/translated/model_renderers.js:273
-#: templates/js/translated/part.js:792 templates/js/translated/part.js:1192
+#: templates/js/translated/company.js:1318
+#: templates/js/translated/company.js:1606
+#: templates/js/translated/model_renderers.js:287
+#: templates/js/translated/part.js:791 templates/js/translated/part.js:1191
msgid "Inactive"
msgstr ""
@@ -6850,7 +6861,7 @@ msgstr ""
msgid "Allocated to Sales Orders"
msgstr ""
-#: part/templates/part/part_base.html:237 templates/js/translated/bom.js:1178
+#: part/templates/part/part_base.html:237 templates/js/translated/bom.js:1198
msgid "Can Build"
msgstr ""
@@ -6858,8 +6869,8 @@ msgstr ""
msgid "Minimum stock level"
msgstr ""
-#: part/templates/part/part_base.html:324 templates/js/translated/bom.js:1041
-#: templates/js/translated/part.js:1238 templates/js/translated/part.js:2304
+#: part/templates/part/part_base.html:324 templates/js/translated/bom.js:1059
+#: templates/js/translated/part.js:1237 templates/js/translated/part.js:2380
#: templates/js/translated/pricing.js:391
#: templates/js/translated/pricing.js:1040
msgid "Price Range"
@@ -6882,7 +6893,7 @@ msgstr ""
msgid "Link Barcode to Part"
msgstr ""
-#: part/templates/part/part_base.html:474 templates/js/translated/part.js:2191
+#: part/templates/part/part_base.html:474 templates/js/translated/part.js:2258
msgid "part"
msgstr ""
@@ -6956,9 +6967,9 @@ msgstr ""
#: stock/templates/stock/stock_app_base.html:10
#: templates/InvenTree/search.html:153
#: templates/InvenTree/settings/sidebar.html:49
-#: templates/js/translated/part.js:1216 templates/js/translated/part.js:2120
-#: templates/js/translated/part.js:2284 templates/js/translated/stock.js:1022
-#: templates/js/translated/stock.js:1829 templates/navbar.html:31
+#: templates/js/translated/part.js:1215 templates/js/translated/part.js:2119
+#: templates/js/translated/part.js:2360 templates/js/translated/stock.js:1021
+#: templates/js/translated/stock.js:1986 templates/navbar.html:31
msgid "Stock"
msgstr ""
@@ -6989,9 +7000,9 @@ msgstr ""
#: part/templates/part/prices.html:25 stock/admin.py:129
#: stock/templates/stock/item_base.html:442
-#: templates/js/translated/company.js:1313
-#: templates/js/translated/company.js:1323
-#: templates/js/translated/stock.js:1982
+#: templates/js/translated/company.js:1734
+#: templates/js/translated/company.js:1744
+#: templates/js/translated/stock.js:2139
msgid "Last Updated"
msgstr ""
@@ -7054,12 +7065,12 @@ msgstr ""
msgid "Add Sell Price Break"
msgstr ""
-#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:682
-#: templates/js/translated/part.js:2115 templates/js/translated/part.js:2117
+#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:681
+#: templates/js/translated/part.js:2114 templates/js/translated/part.js:2116
msgid "No Stock"
msgstr ""
-#: part/templates/part/stock_count.html:9 templates/InvenTree/index.html:167
+#: part/templates/part/stock_count.html:9 templates/InvenTree/index.html:120
msgid "Low Stock"
msgstr ""
@@ -7163,7 +7174,7 @@ msgid "Match found for barcode data"
msgstr ""
#: plugin/base/barcodes/api.py:120
-#: templates/js/translated/purchase_order.js:1372
+#: templates/js/translated/purchase_order.js:1387
msgid "Barcode matches existing item"
msgstr ""
@@ -7226,43 +7237,43 @@ msgstr ""
msgid "Open link"
msgstr ""
-#: plugin/models.py:27
+#: plugin/models.py:28
msgid "Plugin Configuration"
msgstr ""
-#: plugin/models.py:28
+#: plugin/models.py:29
msgid "Plugin Configurations"
msgstr ""
-#: plugin/models.py:33
+#: plugin/models.py:34
msgid "Key"
msgstr "키"
-#: plugin/models.py:34
+#: plugin/models.py:35
msgid "Key of plugin"
msgstr ""
-#: plugin/models.py:42
+#: plugin/models.py:43
msgid "PluginName of the plugin"
msgstr ""
-#: plugin/models.py:48
+#: plugin/models.py:49
msgid "Is the plugin active"
msgstr ""
-#: plugin/models.py:124
+#: plugin/models.py:125
msgid "Sample plugin"
msgstr ""
-#: plugin/models.py:133
+#: plugin/models.py:134
msgid "Builtin Plugin"
msgstr ""
-#: plugin/models.py:159 templates/InvenTree/settings/plugin_settings.html:9
+#: plugin/models.py:160 templates/InvenTree/settings/plugin_settings.html:9
msgid "Plugin"
msgstr ""
-#: plugin/models.py:210
+#: plugin/models.py:211
msgid "Method"
msgstr ""
@@ -7414,47 +7425,47 @@ msgstr ""
msgid "Build query filters (comma-separated list of key=value pairs"
msgstr ""
-#: report/models.py:418
+#: report/models.py:420
msgid "Part Filters"
msgstr ""
-#: report/models.py:419
+#: report/models.py:421
msgid "Part query filters (comma-separated list of key=value pairs"
msgstr ""
-#: report/models.py:453
+#: report/models.py:455
msgid "Purchase order query filters"
msgstr ""
-#: report/models.py:491
+#: report/models.py:493
msgid "Sales order query filters"
msgstr ""
-#: report/models.py:529
+#: report/models.py:531
msgid "Return order query filters"
msgstr ""
-#: report/models.py:582
+#: report/models.py:584
msgid "Snippet"
msgstr ""
-#: report/models.py:583
+#: report/models.py:585
msgid "Report snippet file"
msgstr ""
-#: report/models.py:587
+#: report/models.py:589
msgid "Snippet file description"
msgstr ""
-#: report/models.py:624
+#: report/models.py:626
msgid "Asset"
msgstr ""
-#: report/models.py:625
+#: report/models.py:627
msgid "Report asset file"
msgstr ""
-#: report/models.py:632
+#: report/models.py:634
msgid "Asset file description"
msgstr ""
@@ -7475,8 +7486,8 @@ msgstr ""
#: templates/js/translated/order.js:316 templates/js/translated/pricing.js:527
#: templates/js/translated/pricing.js:596
#: templates/js/translated/pricing.js:820
-#: templates/js/translated/purchase_order.js:2083
-#: templates/js/translated/sales_order.js:1817
+#: templates/js/translated/purchase_order.js:2093
+#: templates/js/translated/sales_order.js:1829
msgid "Unit Price"
msgstr "단가"
@@ -7488,23 +7499,23 @@ msgstr ""
#: report/templates/report/inventree_po_report_base.html:72
#: report/templates/report/inventree_so_report_base.html:72
-#: templates/js/translated/purchase_order.js:1985
-#: templates/js/translated/sales_order.js:1792
+#: templates/js/translated/purchase_order.js:1995
+#: templates/js/translated/sales_order.js:1804
msgid "Total"
msgstr ""
#: report/templates/report/inventree_return_order_report_base.html:25
#: report/templates/report/inventree_test_report_base.html:88
#: stock/models.py:725 stock/templates/stock/item_base.html:312
-#: templates/js/translated/build.js:502 templates/js/translated/build.js:1423
-#: templates/js/translated/build.js:1989
-#: templates/js/translated/model_renderers.js:201
-#: templates/js/translated/return_order.js:528
-#: templates/js/translated/return_order.js:708
-#: templates/js/translated/sales_order.js:300
-#: templates/js/translated/sales_order.js:1597
-#: templates/js/translated/sales_order.js:1682
-#: templates/js/translated/stock.js:563
+#: templates/js/translated/build.js:508 templates/js/translated/build.js:1306
+#: templates/js/translated/build.js:2281
+#: templates/js/translated/model_renderers.js:215
+#: templates/js/translated/return_order.js:540
+#: templates/js/translated/return_order.js:720
+#: templates/js/translated/sales_order.js:312
+#: templates/js/translated/sales_order.js:1609
+#: templates/js/translated/sales_order.js:1694
+#: templates/js/translated/stock.js:562
msgid "Serial Number"
msgstr "일련번호"
@@ -7517,7 +7528,7 @@ msgid "Test Results"
msgstr ""
#: report/templates/report/inventree_test_report_base.html:102
-#: stock/models.py:2243 templates/js/translated/stock.js:1419
+#: stock/models.py:2243 templates/js/translated/stock.js:1418
msgid "Test"
msgstr ""
@@ -7548,8 +7559,8 @@ msgid "Installed Items"
msgstr ""
#: report/templates/report/inventree_test_report_base.html:168
-#: stock/admin.py:104 templates/js/translated/stock.js:667
-#: templates/js/translated/stock.js:838 templates/js/translated/stock.js:2849
+#: stock/admin.py:104 templates/js/translated/stock.js:666
+#: templates/js/translated/stock.js:837 templates/js/translated/stock.js:2976
msgid "Serial"
msgstr ""
@@ -7617,31 +7628,31 @@ msgstr ""
#: stock/admin.py:131 stock/models.py:789
#: stock/templates/stock/item_base.html:429
-#: templates/js/translated/stock.js:1966
+#: templates/js/translated/stock.js:2123
msgid "Expiry Date"
msgstr ""
-#: stock/api.py:420 templates/js/translated/table_filters.js:373
+#: stock/api.py:426 templates/js/translated/table_filters.js:379
msgid "External Location"
msgstr ""
-#: stock/api.py:582
+#: stock/api.py:619
msgid "Quantity is required"
msgstr ""
-#: stock/api.py:589
+#: stock/api.py:626
msgid "Valid part must be supplied"
msgstr ""
-#: stock/api.py:615
+#: stock/api.py:652
msgid "The given supplier part does not exist"
msgstr ""
-#: stock/api.py:624
+#: stock/api.py:661
msgid "The supplier part has a pack size defined, but flag use_pack_size not set"
msgstr ""
-#: stock/api.py:642
+#: stock/api.py:679
msgid "Serial numbers cannot be supplied for a non-trackable part"
msgstr ""
@@ -7652,7 +7663,7 @@ msgid "Stock Location"
msgstr ""
#: stock/models.py:55 stock/templates/stock/location.html:177
-#: templates/InvenTree/search.html:166 templates/js/translated/search.js:220
+#: templates/InvenTree/search.html:166 templates/js/translated/search.js:178
#: users/models.py:40
msgid "Stock Locations"
msgstr ""
@@ -7670,8 +7681,8 @@ msgstr ""
msgid "Stock items may not be directly located into a structural stock locations, but may be located to child locations."
msgstr ""
-#: stock/models.py:132 templates/js/translated/stock.js:2529
-#: templates/js/translated/table_filters.js:213
+#: stock/models.py:132 templates/js/translated/stock.js:2660
+#: templates/js/translated/table_filters.js:219
msgid "External"
msgstr ""
@@ -7687,7 +7698,7 @@ msgstr ""
msgid "Stock items cannot be located into structural stock locations!"
msgstr ""
-#: stock/models.py:583 stock/serializers.py:174
+#: stock/models.py:583 stock/serializers.py:223
msgid "Stock item cannot be created for virtual parts"
msgstr ""
@@ -7821,7 +7832,7 @@ msgstr ""
msgid "Quantity does not match serial numbers"
msgstr ""
-#: stock/models.py:1403 stock/serializers.py:374
+#: stock/models.py:1403 stock/serializers.py:440
msgid "Serial numbers already exist"
msgstr "일련번호가 이미 존재합니다"
@@ -7849,7 +7860,7 @@ msgstr ""
msgid "Serialized stock cannot be merged"
msgstr ""
-#: stock/models.py:1496 stock/serializers.py:975
+#: stock/models.py:1496 stock/serializers.py:1092
msgid "Duplicate stock items"
msgstr ""
@@ -7901,132 +7912,141 @@ msgstr ""
msgid "Test notes"
msgstr ""
-#: stock/serializers.py:76
+#: stock/serializers.py:121
msgid "Serial number is too large"
msgstr ""
-#: stock/serializers.py:166
+#: stock/serializers.py:215
msgid "Use pack size when adding: the quantity defined is the number of packs"
msgstr ""
-#: stock/serializers.py:254
+#: stock/serializers.py:316
msgid "Purchase price of this stock item, per unit or pack"
msgstr ""
-#: stock/serializers.py:307
+#: stock/serializers.py:373
msgid "Enter number of stock items to serialize"
msgstr ""
-#: stock/serializers.py:319
+#: stock/serializers.py:385
#, python-brace-format
msgid "Quantity must not exceed available stock quantity ({q})"
msgstr ""
-#: stock/serializers.py:325
+#: stock/serializers.py:391
msgid "Enter serial numbers for new items"
msgstr ""
-#: stock/serializers.py:336 stock/serializers.py:932 stock/serializers.py:1174
+#: stock/serializers.py:402 stock/serializers.py:1049 stock/serializers.py:1291
msgid "Destination stock location"
msgstr ""
-#: stock/serializers.py:343
+#: stock/serializers.py:409
msgid "Optional note field"
msgstr ""
-#: stock/serializers.py:353
+#: stock/serializers.py:419
msgid "Serial numbers cannot be assigned to this part"
msgstr ""
-#: stock/serializers.py:414
+#: stock/serializers.py:480
msgid "Select stock item to install"
msgstr ""
-#: stock/serializers.py:427
-msgid "Stock item is unavailable"
-msgstr ""
-
-#: stock/serializers.py:434
-msgid "Selected part is not in the Bill of Materials"
-msgstr ""
-
-#: stock/serializers.py:471
-msgid "Destination location for uninstalled item"
-msgstr ""
-
-#: stock/serializers.py:476 stock/serializers.py:557
+#: stock/serializers.py:485 stock/serializers.py:543 stock/serializers.py:624
+#: stock/serializers.py:682
msgid "Add transaction note (optional)"
msgstr ""
-#: stock/serializers.py:510
+#: stock/serializers.py:494
+msgid "Stock item is unavailable"
+msgstr ""
+
+#: stock/serializers.py:501
+msgid "Selected part is not in the Bill of Materials"
+msgstr ""
+
+#: stock/serializers.py:538
+msgid "Destination location for uninstalled item"
+msgstr ""
+
+#: stock/serializers.py:577
msgid "Select part to convert stock item into"
msgstr ""
-#: stock/serializers.py:521
+#: stock/serializers.py:588
msgid "Selected part is not a valid option for conversion"
msgstr ""
-#: stock/serializers.py:552
+#: stock/serializers.py:619
msgid "Destination location for returned item"
msgstr ""
-#: stock/serializers.py:787
+#: stock/serializers.py:663
+msgid "Select stock items to change status"
+msgstr ""
+
+#: stock/serializers.py:670
+msgid "No stock items selected"
+msgstr ""
+
+#: stock/serializers.py:904
msgid "Part must be salable"
msgstr ""
-#: stock/serializers.py:791
+#: stock/serializers.py:908
msgid "Item is allocated to a sales order"
msgstr ""
-#: stock/serializers.py:795
+#: stock/serializers.py:912
msgid "Item is allocated to a build order"
msgstr ""
-#: stock/serializers.py:826
+#: stock/serializers.py:943
msgid "Customer to assign stock items"
msgstr ""
-#: stock/serializers.py:832
+#: stock/serializers.py:949
msgid "Selected company is not a customer"
msgstr ""
-#: stock/serializers.py:840
+#: stock/serializers.py:957
msgid "Stock assignment notes"
msgstr ""
-#: stock/serializers.py:850 stock/serializers.py:1081
+#: stock/serializers.py:967 stock/serializers.py:1198
msgid "A list of stock items must be provided"
msgstr ""
-#: stock/serializers.py:939
+#: stock/serializers.py:1056
msgid "Stock merging notes"
msgstr ""
-#: stock/serializers.py:944
+#: stock/serializers.py:1061
msgid "Allow mismatched suppliers"
msgstr ""
-#: stock/serializers.py:945
+#: stock/serializers.py:1062
msgid "Allow stock items with different supplier parts to be merged"
msgstr ""
-#: stock/serializers.py:950
+#: stock/serializers.py:1067
msgid "Allow mismatched status"
msgstr ""
-#: stock/serializers.py:951
+#: stock/serializers.py:1068
msgid "Allow stock items with different status codes to be merged"
msgstr ""
-#: stock/serializers.py:961
+#: stock/serializers.py:1078
msgid "At least two stock items must be provided"
msgstr ""
-#: stock/serializers.py:1043
+#: stock/serializers.py:1160
msgid "StockItem primary key value"
msgstr ""
-#: stock/serializers.py:1071
+#: stock/serializers.py:1188
msgid "Stock transaction notes"
msgstr ""
@@ -8034,48 +8054,48 @@ msgstr ""
msgid "Stock Tracking Information"
msgstr ""
-#: stock/templates/stock/item.html:69
+#: stock/templates/stock/item.html:63
msgid "Child Stock Items"
msgstr ""
-#: stock/templates/stock/item.html:77
+#: stock/templates/stock/item.html:71
msgid "This stock item does not have any child items"
msgstr ""
-#: stock/templates/stock/item.html:86
+#: stock/templates/stock/item.html:80
#: stock/templates/stock/stock_sidebar.html:12
msgid "Test Data"
msgstr ""
-#: stock/templates/stock/item.html:90 stock/templates/stock/item_base.html:66
+#: stock/templates/stock/item.html:84 stock/templates/stock/item_base.html:66
msgid "Test Report"
msgstr ""
-#: stock/templates/stock/item.html:94 stock/templates/stock/item.html:288
+#: stock/templates/stock/item.html:88 stock/templates/stock/item.html:278
msgid "Delete Test Data"
msgstr ""
-#: stock/templates/stock/item.html:98
+#: stock/templates/stock/item.html:92
msgid "Add Test Data"
msgstr ""
-#: stock/templates/stock/item.html:132
+#: stock/templates/stock/item.html:124
msgid "Stock Item Notes"
msgstr ""
-#: stock/templates/stock/item.html:147
+#: stock/templates/stock/item.html:139
msgid "Installed Stock Items"
msgstr ""
-#: stock/templates/stock/item.html:152 templates/js/translated/stock.js:2996
+#: stock/templates/stock/item.html:144 templates/js/translated/stock.js:3123
msgid "Install Stock Item"
msgstr ""
-#: stock/templates/stock/item.html:276
+#: stock/templates/stock/item.html:266
msgid "Delete all test results for this stock item"
msgstr ""
-#: stock/templates/stock/item.html:305 templates/js/translated/stock.js:1611
+#: stock/templates/stock/item.html:295 templates/js/translated/stock.js:1610
msgid "Add Test Result"
msgstr ""
@@ -8083,13 +8103,13 @@ msgstr ""
msgid "Locate stock item"
msgstr ""
-#: stock/templates/stock/item_base.html:52 templates/stock_table.html:21
+#: stock/templates/stock/item_base.html:52
msgid "Scan to Location"
msgstr ""
#: stock/templates/stock/item_base.html:60
#: stock/templates/stock/location.html:69
-#: templates/js/translated/filters.js:322
+#: templates/js/translated/filters.js:432
msgid "Printing actions"
msgstr ""
@@ -8098,15 +8118,17 @@ msgid "Stock adjustment actions"
msgstr ""
#: stock/templates/stock/item_base.html:80
-#: stock/templates/stock/location.html:88 templates/stock_table.html:35
+#: stock/templates/stock/location.html:88 templates/js/translated/stock.js:1735
msgid "Count stock"
msgstr ""
-#: stock/templates/stock/item_base.html:82 templates/stock_table.html:33
+#: stock/templates/stock/item_base.html:82
+#: templates/js/translated/stock.js:1717
msgid "Add stock"
msgstr ""
-#: stock/templates/stock/item_base.html:83 templates/stock_table.html:34
+#: stock/templates/stock/item_base.html:83
+#: templates/js/translated/stock.js:1726
msgid "Remove stock"
msgstr ""
@@ -8115,11 +8137,12 @@ msgid "Serialize stock"
msgstr ""
#: stock/templates/stock/item_base.html:89
-#: stock/templates/stock/location.html:94 templates/stock_table.html:36
+#: stock/templates/stock/location.html:94 templates/js/translated/stock.js:1744
msgid "Transfer stock"
msgstr ""
-#: stock/templates/stock/item_base.html:92 templates/stock_table.html:39
+#: stock/templates/stock/item_base.html:92
+#: templates/js/translated/stock.js:1798
msgid "Assign to customer"
msgstr ""
@@ -8159,6 +8182,11 @@ msgstr ""
msgid "Delete stock item"
msgstr ""
+#: stock/templates/stock/item_base.html:170 templates/InvenTree/search.html:139
+#: templates/js/translated/build.js:2046 templates/navbar.html:38
+msgid "Build"
+msgstr ""
+
#: stock/templates/stock/item_base.html:194
msgid "Parent Item"
msgstr ""
@@ -8221,7 +8249,7 @@ msgid "Available Quantity"
msgstr ""
#: stock/templates/stock/item_base.html:394
-#: templates/js/translated/build.js:2015
+#: templates/js/translated/build.js:2306
msgid "No location set"
msgstr ""
@@ -8239,7 +8267,7 @@ msgid "This StockItem expired on %(item.expiry_date)s"
msgstr ""
#: stock/templates/stock/item_base.html:433
-#: templates/js/translated/table_filters.js:381
+#: templates/js/translated/table_filters.js:387
msgid "Expired"
msgstr ""
@@ -8249,7 +8277,7 @@ msgid "This StockItem expires on %(item.expiry_date)s"
msgstr ""
#: stock/templates/stock/item_base.html:435
-#: templates/js/translated/table_filters.js:387
+#: templates/js/translated/table_filters.js:393
msgid "Stale"
msgstr ""
@@ -8258,7 +8286,7 @@ msgid "No stocktake performed"
msgstr ""
#: stock/templates/stock/item_base.html:503
-#: templates/js/translated/stock.js:1745
+#: templates/js/translated/stock.js:1865
msgid "stock item"
msgstr ""
@@ -8364,20 +8392,20 @@ msgstr ""
msgid "New Location"
msgstr ""
-#: stock/templates/stock/location.html:287
-#: templates/js/translated/stock.js:2318
+#: stock/templates/stock/location.html:278
+#: templates/js/translated/stock.js:2449
msgid "stock location"
msgstr ""
-#: stock/templates/stock/location.html:304
+#: stock/templates/stock/location.html:295
msgid "Scanned stock container into this location"
msgstr ""
-#: stock/templates/stock/location.html:377
+#: stock/templates/stock/location.html:368
msgid "Stock Location QR Code"
msgstr ""
-#: stock/templates/stock/location.html:388
+#: stock/templates/stock/location.html:379
msgid "Link Barcode to Stock Location"
msgstr ""
@@ -8451,71 +8479,71 @@ msgstr ""
msgid "Index"
msgstr ""
-#: templates/InvenTree/index.html:89
+#: templates/InvenTree/index.html:39
msgid "Subscribed Parts"
msgstr ""
-#: templates/InvenTree/index.html:102
+#: templates/InvenTree/index.html:53
msgid "Subscribed Categories"
msgstr ""
-#: templates/InvenTree/index.html:112
+#: templates/InvenTree/index.html:63
msgid "Latest Parts"
msgstr ""
-#: templates/InvenTree/index.html:126
+#: templates/InvenTree/index.html:78
msgid "BOM Waiting Validation"
msgstr ""
-#: templates/InvenTree/index.html:155
+#: templates/InvenTree/index.html:107
msgid "Recently Updated"
msgstr ""
-#: templates/InvenTree/index.html:180
+#: templates/InvenTree/index.html:134
msgid "Depleted Stock"
msgstr ""
-#: templates/InvenTree/index.html:193
+#: templates/InvenTree/index.html:148
msgid "Required for Build Orders"
msgstr ""
-#: templates/InvenTree/index.html:208
+#: templates/InvenTree/index.html:156
msgid "Expired Stock"
msgstr ""
-#: templates/InvenTree/index.html:222
+#: templates/InvenTree/index.html:172
msgid "Stale Stock"
msgstr ""
-#: templates/InvenTree/index.html:247
+#: templates/InvenTree/index.html:199
msgid "Build Orders In Progress"
msgstr ""
-#: templates/InvenTree/index.html:258
+#: templates/InvenTree/index.html:210
msgid "Overdue Build Orders"
msgstr ""
-#: templates/InvenTree/index.html:278
+#: templates/InvenTree/index.html:230
msgid "Outstanding Purchase Orders"
msgstr ""
-#: templates/InvenTree/index.html:289
+#: templates/InvenTree/index.html:241
msgid "Overdue Purchase Orders"
msgstr ""
-#: templates/InvenTree/index.html:310
+#: templates/InvenTree/index.html:262
msgid "Outstanding Sales Orders"
msgstr ""
-#: templates/InvenTree/index.html:321
+#: templates/InvenTree/index.html:273
msgid "Overdue Sales Orders"
msgstr ""
-#: templates/InvenTree/index.html:347
+#: templates/InvenTree/index.html:299
msgid "InvenTree News"
msgstr ""
-#: templates/InvenTree/index.html:349
+#: templates/InvenTree/index.html:301
msgid "Current News"
msgstr ""
@@ -8672,29 +8700,29 @@ msgstr ""
msgid "Changing the settings below require you to immediately restart the server. Do not change this while under active usage."
msgstr ""
-#: templates/InvenTree/settings/plugin.html:37
+#: templates/InvenTree/settings/plugin.html:35
#: templates/InvenTree/settings/sidebar.html:64
msgid "Plugins"
msgstr ""
-#: templates/InvenTree/settings/plugin.html:43
+#: templates/InvenTree/settings/plugin.html:41
#: templates/js/translated/plugin.js:151
msgid "Install Plugin"
msgstr ""
-#: templates/InvenTree/settings/plugin.html:51
+#: templates/InvenTree/settings/plugin.html:49
msgid "External plugins are not enabled for this InvenTree installation"
msgstr ""
-#: templates/InvenTree/settings/plugin.html:70
+#: templates/InvenTree/settings/plugin.html:64
msgid "Plugin Error Stack"
msgstr ""
-#: templates/InvenTree/settings/plugin.html:79
+#: templates/InvenTree/settings/plugin.html:73
msgid "Stage"
msgstr ""
-#: templates/InvenTree/settings/plugin.html:81
+#: templates/InvenTree/settings/plugin.html:75
#: templates/js/translated/notification.js:75
msgid "Message"
msgstr "메시지"
@@ -8767,14 +8795,6 @@ msgstr ""
msgid "Commit Message"
msgstr ""
-#: templates/InvenTree/settings/plugin_settings.html:126
-msgid "Sign Status"
-msgstr ""
-
-#: templates/InvenTree/settings/plugin_settings.html:131
-msgid "Sign Key"
-msgstr ""
-
#: templates/InvenTree/settings/po.html:7
msgid "Purchase Order Settings"
msgstr ""
@@ -8870,12 +8890,12 @@ msgid "No category parameter templates found"
msgstr ""
#: templates/InvenTree/settings/settings_staff_js.html:212
-#: templates/js/translated/part.js:1618
+#: templates/js/translated/part.js:1617
msgid "Edit Template"
msgstr ""
#: templates/InvenTree/settings/settings_staff_js.html:213
-#: templates/js/translated/part.js:1619
+#: templates/js/translated/part.js:1618
msgid "Delete Template"
msgstr ""
@@ -8913,7 +8933,7 @@ msgid "Home Page"
msgstr "홈페이지"
#: templates/InvenTree/settings/sidebar.html:15
-#: templates/js/translated/tables.js:575 templates/navbar.html:107
+#: templates/js/translated/tables.js:551 templates/navbar.html:107
#: templates/search.html:8 templates/search_form.html:6
#: templates/search_form.html:7
msgid "Search"
@@ -8990,6 +9010,7 @@ msgid "Unverified"
msgstr ""
#: templates/InvenTree/settings/user.html:80
+#: templates/js/translated/company.js:984
msgid "Primary"
msgstr ""
@@ -9204,44 +9225,48 @@ msgstr ""
msgid "Update Available"
msgstr ""
-#: templates/about.html:42
+#: templates/about.html:43
+msgid "Commit Branch"
+msgstr ""
+
+#: templates/about.html:49
msgid "InvenTree Documentation"
msgstr "InvenTree 문서"
-#: templates/about.html:47
+#: templates/about.html:54
msgid "API Version"
msgstr "API 버전"
-#: templates/about.html:52
+#: templates/about.html:59
msgid "Python Version"
msgstr "Python 버전"
-#: templates/about.html:57
+#: templates/about.html:64
msgid "Django Version"
msgstr "Django 버전"
-#: templates/about.html:62
+#: templates/about.html:69
msgid "View Code on GitHub"
msgstr "GitHub에서 코드 보기"
-#: templates/about.html:67
+#: templates/about.html:74
msgid "Credits"
msgstr ""
-#: templates/about.html:72
+#: templates/about.html:79
msgid "Mobile App"
msgstr "모바일 앱"
-#: templates/about.html:77
+#: templates/about.html:84
msgid "Submit Bug Report"
msgstr ""
-#: templates/about.html:84 templates/clip.html:4
+#: templates/about.html:91 templates/clip.html:4
#: templates/js/translated/helpers.js:585
msgid "copy to clipboard"
msgstr ""
-#: templates/about.html:84
+#: templates/about.html:91
msgid "copy version information"
msgstr "버전 정보 복사"
@@ -9435,14 +9460,6 @@ msgstr "링크 추가"
msgid "Add Attachment"
msgstr "첨부파일 추가"
-#: templates/attachment_table.html:11
-msgid "Delete selected attachments"
-msgstr ""
-
-#: templates/attachment_table.html:12 templates/js/translated/attachment.js:129
-msgid "Delete Attachments"
-msgstr ""
-
#: templates/barcode_data.html:5
msgid "Barcode Identifier"
msgstr ""
@@ -9487,7 +9504,7 @@ msgid "The following parts are low on required stock"
msgstr ""
#: templates/email/build_order_required_stock.html:18
-#: templates/js/translated/bom.js:1633
+#: templates/js/translated/bom.js:1653 templates/js/translated/build.js:2485
msgid "Required Quantity"
msgstr ""
@@ -9501,7 +9518,7 @@ msgid "Click on the following link to view this part"
msgstr ""
#: templates/email/low_stock_notification.html:18
-#: templates/js/translated/part.js:3140
+#: templates/js/translated/part.js:3125
msgid "Minimum Quantity"
msgstr ""
@@ -9573,23 +9590,35 @@ msgstr ""
msgid "All selected attachments will be deleted"
msgstr ""
-#: templates/js/translated/attachment.js:255
+#: templates/js/translated/attachment.js:129
+msgid "Delete Attachments"
+msgstr ""
+
+#: templates/js/translated/attachment.js:205
+msgid "Delete attachments"
+msgstr ""
+
+#: templates/js/translated/attachment.js:253
+msgid "Attachment actions"
+msgstr ""
+
+#: templates/js/translated/attachment.js:275
msgid "No attachments found"
msgstr ""
-#: templates/js/translated/attachment.js:285
+#: templates/js/translated/attachment.js:305
msgid "Edit Attachment"
msgstr ""
-#: templates/js/translated/attachment.js:326
+#: templates/js/translated/attachment.js:336
msgid "Upload Date"
msgstr ""
-#: templates/js/translated/attachment.js:346
+#: templates/js/translated/attachment.js:356
msgid "Edit attachment"
msgstr ""
-#: templates/js/translated/attachment.js:354
+#: templates/js/translated/attachment.js:364
msgid "Delete attachment"
msgstr ""
@@ -9646,7 +9675,7 @@ msgstr ""
msgid "Unlink"
msgstr ""
-#: templates/js/translated/barcode.js:550 templates/js/translated/stock.js:1118
+#: templates/js/translated/barcode.js:550 templates/js/translated/stock.js:1117
msgid "Remove stock item"
msgstr ""
@@ -9704,775 +9733,869 @@ msgstr ""
msgid "Barcode does not match a valid location"
msgstr ""
-#: templates/js/translated/bom.js:77
+#: templates/js/translated/bom.js:78
msgid "Create BOM Item"
msgstr ""
-#: templates/js/translated/bom.js:131
+#: templates/js/translated/bom.js:132
msgid "Display row data"
msgstr ""
-#: templates/js/translated/bom.js:187
+#: templates/js/translated/bom.js:188
msgid "Row Data"
msgstr ""
-#: templates/js/translated/bom.js:188 templates/js/translated/bom.js:699
+#: templates/js/translated/bom.js:189 templates/js/translated/bom.js:700
#: templates/js/translated/modals.js:71 templates/js/translated/modals.js:622
#: templates/js/translated/modals.js:746 templates/js/translated/modals.js:1054
-#: templates/js/translated/purchase_order.js:791 templates/modals.html:15
+#: templates/js/translated/purchase_order.js:802 templates/modals.html:15
#: templates/modals.html:27 templates/modals.html:39 templates/modals.html:50
msgid "Close"
msgstr ""
-#: templates/js/translated/bom.js:305
+#: templates/js/translated/bom.js:306
msgid "Download BOM Template"
msgstr ""
-#: templates/js/translated/bom.js:350
+#: templates/js/translated/bom.js:351
msgid "Multi Level BOM"
msgstr ""
-#: templates/js/translated/bom.js:351
+#: templates/js/translated/bom.js:352
msgid "Include BOM data for subassemblies"
msgstr ""
-#: templates/js/translated/bom.js:356
+#: templates/js/translated/bom.js:357
msgid "Levels"
msgstr ""
-#: templates/js/translated/bom.js:357
+#: templates/js/translated/bom.js:358
msgid "Select maximum number of BOM levels to export (0 = all levels)"
msgstr ""
-#: templates/js/translated/bom.js:364
+#: templates/js/translated/bom.js:365
msgid "Include Alternative Parts"
msgstr ""
-#: templates/js/translated/bom.js:365
+#: templates/js/translated/bom.js:366
msgid "Include alternative parts in exported BOM"
msgstr ""
-#: templates/js/translated/bom.js:370
+#: templates/js/translated/bom.js:371
msgid "Include Parameter Data"
msgstr ""
-#: templates/js/translated/bom.js:371
+#: templates/js/translated/bom.js:372
msgid "Include part parameter data in exported BOM"
msgstr ""
-#: templates/js/translated/bom.js:376
+#: templates/js/translated/bom.js:377
msgid "Include Stock Data"
msgstr ""
-#: templates/js/translated/bom.js:377
+#: templates/js/translated/bom.js:378
msgid "Include part stock data in exported BOM"
msgstr ""
-#: templates/js/translated/bom.js:382
+#: templates/js/translated/bom.js:383
msgid "Include Manufacturer Data"
msgstr ""
-#: templates/js/translated/bom.js:383
+#: templates/js/translated/bom.js:384
msgid "Include part manufacturer data in exported BOM"
msgstr ""
-#: templates/js/translated/bom.js:388
+#: templates/js/translated/bom.js:389
msgid "Include Supplier Data"
msgstr ""
-#: templates/js/translated/bom.js:389
+#: templates/js/translated/bom.js:390
msgid "Include part supplier data in exported BOM"
msgstr ""
-#: templates/js/translated/bom.js:394
+#: templates/js/translated/bom.js:395
msgid "Include Pricing Data"
msgstr ""
-#: templates/js/translated/bom.js:395
+#: templates/js/translated/bom.js:396
msgid "Include part pricing data in exported BOM"
msgstr ""
-#: templates/js/translated/bom.js:590
+#: templates/js/translated/bom.js:591
msgid "Remove substitute part"
msgstr ""
-#: templates/js/translated/bom.js:644
+#: templates/js/translated/bom.js:645
msgid "Select and add a new substitute part using the input below"
msgstr ""
-#: templates/js/translated/bom.js:655
+#: templates/js/translated/bom.js:656
msgid "Are you sure you wish to remove this substitute part link?"
msgstr ""
-#: templates/js/translated/bom.js:661
+#: templates/js/translated/bom.js:662
msgid "Remove Substitute Part"
msgstr ""
-#: templates/js/translated/bom.js:700
+#: templates/js/translated/bom.js:701
msgid "Add Substitute"
msgstr ""
-#: templates/js/translated/bom.js:701
+#: templates/js/translated/bom.js:702
msgid "Edit BOM Item Substitutes"
msgstr ""
-#: templates/js/translated/bom.js:763
+#: templates/js/translated/bom.js:764
msgid "All selected BOM items will be deleted"
msgstr ""
-#: templates/js/translated/bom.js:779
+#: templates/js/translated/bom.js:780
msgid "Delete selected BOM items?"
msgstr ""
-#: templates/js/translated/bom.js:906
+#: templates/js/translated/bom.js:826
+msgid "Delete items"
+msgstr ""
+
+#: templates/js/translated/bom.js:924
msgid "Load BOM for subassembly"
msgstr ""
-#: templates/js/translated/bom.js:916
+#: templates/js/translated/bom.js:934
msgid "Substitutes Available"
msgstr ""
-#: templates/js/translated/bom.js:920 templates/js/translated/build.js:2090
+#: templates/js/translated/bom.js:938 templates/js/translated/build.js:2429
msgid "Variant stock allowed"
msgstr ""
-#: templates/js/translated/bom.js:984
+#: templates/js/translated/bom.js:1002
msgid "Substitutes"
msgstr ""
-#: templates/js/translated/bom.js:1104
+#: templates/js/translated/bom.js:1122
msgid "BOM pricing is complete"
msgstr ""
-#: templates/js/translated/bom.js:1109
+#: templates/js/translated/bom.js:1127
msgid "BOM pricing is incomplete"
msgstr ""
-#: templates/js/translated/bom.js:1116
+#: templates/js/translated/bom.js:1134
msgid "No pricing available"
msgstr ""
-#: templates/js/translated/bom.js:1147 templates/js/translated/build.js:2173
-#: templates/js/translated/sales_order.js:1887
+#: templates/js/translated/bom.js:1165 templates/js/translated/build.js:2523
+#: templates/js/translated/sales_order.js:1899
msgid "No Stock Available"
msgstr ""
-#: templates/js/translated/bom.js:1152 templates/js/translated/build.js:2177
+#: templates/js/translated/bom.js:1170 templates/js/translated/build.js:2527
msgid "Includes variant and substitute stock"
msgstr ""
-#: templates/js/translated/bom.js:1154 templates/js/translated/build.js:2179
-#: templates/js/translated/part.js:1230
+#: templates/js/translated/bom.js:1172 templates/js/translated/build.js:2529
+#: templates/js/translated/part.js:1229
msgid "Includes variant stock"
msgstr ""
-#: templates/js/translated/bom.js:1156 templates/js/translated/build.js:2181
+#: templates/js/translated/bom.js:1174 templates/js/translated/build.js:2531
msgid "Includes substitute stock"
msgstr ""
-#: templates/js/translated/bom.js:1184 templates/js/translated/build.js:2164
-#: templates/js/translated/build.js:2255
+#: templates/js/translated/bom.js:1204 templates/js/translated/build.js:2514
msgid "Consumable item"
msgstr ""
-#: templates/js/translated/bom.js:1244
+#: templates/js/translated/bom.js:1264
msgid "Validate BOM Item"
msgstr ""
-#: templates/js/translated/bom.js:1246
+#: templates/js/translated/bom.js:1266
msgid "This line has been validated"
msgstr ""
-#: templates/js/translated/bom.js:1248
+#: templates/js/translated/bom.js:1268
msgid "Edit substitute parts"
msgstr ""
-#: templates/js/translated/bom.js:1250 templates/js/translated/bom.js:1445
+#: templates/js/translated/bom.js:1270 templates/js/translated/bom.js:1465
msgid "Edit BOM Item"
msgstr ""
-#: templates/js/translated/bom.js:1252
+#: templates/js/translated/bom.js:1272
msgid "Delete BOM Item"
msgstr ""
-#: templates/js/translated/bom.js:1272
+#: templates/js/translated/bom.js:1292
msgid "View BOM"
msgstr ""
-#: templates/js/translated/bom.js:1356 templates/js/translated/build.js:1927
+#: templates/js/translated/bom.js:1376
msgid "No BOM items found"
msgstr ""
-#: templates/js/translated/bom.js:1616 templates/js/translated/build.js:2073
+#: templates/js/translated/bom.js:1636 templates/js/translated/build.js:2414
msgid "Required Part"
msgstr ""
-#: templates/js/translated/bom.js:1642
+#: templates/js/translated/bom.js:1662
msgid "Inherited from parent BOM"
msgstr ""
-#: templates/js/translated/build.js:126
+#: templates/js/translated/build.js:136
msgid "Edit Build Order"
msgstr ""
-#: templates/js/translated/build.js:169
+#: templates/js/translated/build.js:179
msgid "Create Build Order"
msgstr ""
-#: templates/js/translated/build.js:202
+#: templates/js/translated/build.js:211
msgid "Cancel Build Order"
msgstr ""
-#: templates/js/translated/build.js:211
+#: templates/js/translated/build.js:220
msgid "Are you sure you wish to cancel this build?"
msgstr ""
-#: templates/js/translated/build.js:217
+#: templates/js/translated/build.js:226
msgid "Stock items have been allocated to this build order"
msgstr ""
-#: templates/js/translated/build.js:224
+#: templates/js/translated/build.js:233
msgid "There are incomplete outputs remaining for this build order"
msgstr ""
-#: templates/js/translated/build.js:276
+#: templates/js/translated/build.js:285
msgid "Build order is ready to be completed"
msgstr ""
-#: templates/js/translated/build.js:284
+#: templates/js/translated/build.js:293
msgid "This build order cannot be completed as there are incomplete outputs"
msgstr ""
-#: templates/js/translated/build.js:289
+#: templates/js/translated/build.js:298
msgid "Build Order is incomplete"
msgstr ""
-#: templates/js/translated/build.js:307
+#: templates/js/translated/build.js:316
msgid "Complete Build Order"
msgstr ""
-#: templates/js/translated/build.js:348 templates/js/translated/stock.js:119
-#: templates/js/translated/stock.js:265
+#: templates/js/translated/build.js:357 templates/js/translated/stock.js:118
+#: templates/js/translated/stock.js:264
msgid "Next available serial number"
msgstr ""
-#: templates/js/translated/build.js:350 templates/js/translated/stock.js:121
-#: templates/js/translated/stock.js:267
+#: templates/js/translated/build.js:359 templates/js/translated/stock.js:120
+#: templates/js/translated/stock.js:266
msgid "Latest serial number"
msgstr ""
-#: templates/js/translated/build.js:359
+#: templates/js/translated/build.js:368
msgid "The Bill of Materials contains trackable parts"
msgstr ""
-#: templates/js/translated/build.js:360
+#: templates/js/translated/build.js:369
msgid "Build outputs must be generated individually"
msgstr ""
-#: templates/js/translated/build.js:368
+#: templates/js/translated/build.js:377
msgid "Trackable parts can have serial numbers specified"
msgstr ""
-#: templates/js/translated/build.js:369
+#: templates/js/translated/build.js:378
msgid "Enter serial numbers to generate multiple single build outputs"
msgstr ""
-#: templates/js/translated/build.js:376
+#: templates/js/translated/build.js:385
msgid "Create Build Output"
msgstr ""
-#: templates/js/translated/build.js:407
+#: templates/js/translated/build.js:416
msgid "Allocate stock items to this build output"
msgstr ""
-#: templates/js/translated/build.js:418
-msgid "Unallocate stock from build output"
+#: templates/js/translated/build.js:424
+msgid "Deallocate stock from build output"
msgstr ""
-#: templates/js/translated/build.js:427
+#: templates/js/translated/build.js:433
msgid "Complete build output"
msgstr ""
-#: templates/js/translated/build.js:435
+#: templates/js/translated/build.js:441
msgid "Scrap build output"
msgstr ""
-#: templates/js/translated/build.js:442
+#: templates/js/translated/build.js:448
msgid "Delete build output"
msgstr ""
-#: templates/js/translated/build.js:462
-msgid "Are you sure you wish to unallocate stock items from this build?"
+#: templates/js/translated/build.js:468
+msgid "Are you sure you wish to deallocate the selected stock items from this build?"
msgstr ""
-#: templates/js/translated/build.js:480
-msgid "Unallocate Stock Items"
+#: templates/js/translated/build.js:486
+msgid "Deallocate Stock Items"
msgstr ""
-#: templates/js/translated/build.js:566 templates/js/translated/build.js:690
-#: templates/js/translated/build.js:812
+#: templates/js/translated/build.js:572 templates/js/translated/build.js:696
+#: templates/js/translated/build.js:818
msgid "Select Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:567 templates/js/translated/build.js:691
-#: templates/js/translated/build.js:813
+#: templates/js/translated/build.js:573 templates/js/translated/build.js:697
+#: templates/js/translated/build.js:819
msgid "At least one build output must be selected"
msgstr ""
-#: templates/js/translated/build.js:581
+#: templates/js/translated/build.js:587
msgid "Selected build outputs will be marked as complete"
msgstr ""
-#: templates/js/translated/build.js:585 templates/js/translated/build.js:715
-#: templates/js/translated/build.js:835
+#: templates/js/translated/build.js:591 templates/js/translated/build.js:721
+#: templates/js/translated/build.js:841
msgid "Output"
msgstr ""
-#: templates/js/translated/build.js:609
+#: templates/js/translated/build.js:615
msgid "Complete Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:706
+#: templates/js/translated/build.js:712
msgid "Selected build outputs will be marked as scrapped"
msgstr ""
-#: templates/js/translated/build.js:708
+#: templates/js/translated/build.js:714
msgid "Scrapped output are marked as rejected"
msgstr ""
-#: templates/js/translated/build.js:709
+#: templates/js/translated/build.js:715
msgid "Allocated stock items will no longer be available"
msgstr ""
-#: templates/js/translated/build.js:710
+#: templates/js/translated/build.js:716
msgid "The completion status of the build order will not be adjusted"
msgstr ""
-#: templates/js/translated/build.js:737
+#: templates/js/translated/build.js:743
msgid "Scrap Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:827
+#: templates/js/translated/build.js:833
msgid "Selected build outputs will be deleted"
msgstr ""
-#: templates/js/translated/build.js:829
+#: templates/js/translated/build.js:835
msgid "Build output data will be permanently deleted"
msgstr ""
-#: templates/js/translated/build.js:830
+#: templates/js/translated/build.js:836
msgid "Allocated stock items will be returned to stock"
msgstr ""
-#: templates/js/translated/build.js:848
+#: templates/js/translated/build.js:854
msgid "Delete Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:934
+#: templates/js/translated/build.js:941
msgid "No build order allocations found"
msgstr ""
-#: templates/js/translated/build.js:971
+#: templates/js/translated/build.js:970 templates/js/translated/build.js:2270
+msgid "Allocated Quantity"
+msgstr ""
+
+#: templates/js/translated/build.js:984
msgid "Location not specified"
msgstr ""
-#: templates/js/translated/build.js:1047
+#: templates/js/translated/build.js:1006
+msgid "Complete outputs"
+msgstr ""
+
+#: templates/js/translated/build.js:1024
+msgid "Scrap outputs"
+msgstr ""
+
+#: templates/js/translated/build.js:1042
+msgid "Delete outputs"
+msgstr ""
+
+#: templates/js/translated/build.js:1100
msgid "build output"
msgstr ""
-#: templates/js/translated/build.js:1048
+#: templates/js/translated/build.js:1101
msgid "build outputs"
msgstr ""
-#: templates/js/translated/build.js:1383
+#: templates/js/translated/build.js:1105
+msgid "Build output actions"
+msgstr ""
+
+#: templates/js/translated/build.js:1274
msgid "No active build outputs found"
msgstr ""
-#: templates/js/translated/build.js:1457
-msgid "Allocated Stock"
+#: templates/js/translated/build.js:1329
+msgid "Allocated Lines"
msgstr ""
-#: templates/js/translated/build.js:1464
-msgid "No tracked BOM items for this build"
+#: templates/js/translated/build.js:1343
+msgid "Required Tests"
msgstr ""
-#: templates/js/translated/build.js:1486
-msgid "Completed Tests"
-msgstr ""
-
-#: templates/js/translated/build.js:1491
-msgid "No required tests for this build"
-msgstr ""
-
-#: templates/js/translated/build.js:2032 templates/js/translated/build.js:3056
-#: templates/js/translated/sales_order.js:1632
-msgid "Edit stock allocation"
-msgstr ""
-
-#: templates/js/translated/build.js:2034 templates/js/translated/build.js:3057
-#: templates/js/translated/sales_order.js:1633
-msgid "Delete stock allocation"
-msgstr ""
-
-#: templates/js/translated/build.js:2050
-msgid "Edit Allocation"
-msgstr ""
-
-#: templates/js/translated/build.js:2060
-msgid "Remove Allocation"
-msgstr ""
-
-#: templates/js/translated/build.js:2086
-msgid "Substitute parts available"
-msgstr ""
-
-#: templates/js/translated/build.js:2122
-msgid "Quantity Per"
-msgstr ""
-
-#: templates/js/translated/build.js:2167
-#: templates/js/translated/sales_order.js:1894
-msgid "Insufficient stock available"
-msgstr ""
-
-#: templates/js/translated/build.js:2169
-#: templates/js/translated/sales_order.js:1892
-msgid "Sufficient stock available"
-msgstr ""
-
-#: templates/js/translated/build.js:2263
-#: templates/js/translated/sales_order.js:1993
-msgid "Build stock"
-msgstr ""
-
-#: templates/js/translated/build.js:2267 templates/stock_table.html:38
-msgid "Order stock"
-msgstr ""
-
-#: templates/js/translated/build.js:2270
-#: templates/js/translated/sales_order.js:1987
-msgid "Allocate stock"
-msgstr ""
-
-#: templates/js/translated/build.js:2310
-#: templates/js/translated/purchase_order.js:616
-#: templates/js/translated/sales_order.js:1159
+#: templates/js/translated/build.js:1502
+#: templates/js/translated/purchase_order.js:627
+#: templates/js/translated/sales_order.js:1171
msgid "Select Parts"
msgstr ""
-#: templates/js/translated/build.js:2311
-#: templates/js/translated/sales_order.js:1160
+#: templates/js/translated/build.js:1503
+#: templates/js/translated/sales_order.js:1172
msgid "You must select at least one part to allocate"
msgstr ""
-#: templates/js/translated/build.js:2359
-#: templates/js/translated/sales_order.js:1109
+#: templates/js/translated/build.js:1566
+#: templates/js/translated/sales_order.js:1121
msgid "Specify stock allocation quantity"
msgstr ""
-#: templates/js/translated/build.js:2438
+#: templates/js/translated/build.js:1643
msgid "All Parts Allocated"
msgstr ""
-#: templates/js/translated/build.js:2439
+#: templates/js/translated/build.js:1644
msgid "All selected parts have been fully allocated"
msgstr ""
-#: templates/js/translated/build.js:2453
-#: templates/js/translated/sales_order.js:1174
+#: templates/js/translated/build.js:1658
+#: templates/js/translated/sales_order.js:1186
msgid "Select source location (leave blank to take from all locations)"
msgstr ""
-#: templates/js/translated/build.js:2481
+#: templates/js/translated/build.js:1686
msgid "Allocate Stock Items to Build Order"
msgstr ""
-#: templates/js/translated/build.js:2492
-#: templates/js/translated/sales_order.js:1271
+#: templates/js/translated/build.js:1697
+#: templates/js/translated/sales_order.js:1283
msgid "No matching stock locations"
msgstr ""
-#: templates/js/translated/build.js:2565
-#: templates/js/translated/sales_order.js:1348
+#: templates/js/translated/build.js:1770
+#: templates/js/translated/sales_order.js:1360
msgid "No matching stock items"
msgstr ""
-#: templates/js/translated/build.js:2662
+#: templates/js/translated/build.js:1867
msgid "Automatic Stock Allocation"
msgstr ""
-#: templates/js/translated/build.js:2663
+#: templates/js/translated/build.js:1868
msgid "Stock items will be automatically allocated to this build order, according to the provided guidelines"
msgstr ""
-#: templates/js/translated/build.js:2665
+#: templates/js/translated/build.js:1870
msgid "If a location is specified, stock will only be allocated from that location"
msgstr ""
-#: templates/js/translated/build.js:2666
+#: templates/js/translated/build.js:1871
msgid "If stock is considered interchangeable, it will be allocated from the first location it is found"
msgstr ""
-#: templates/js/translated/build.js:2667
+#: templates/js/translated/build.js:1872
msgid "If substitute stock is allowed, it will be used where stock of the primary part cannot be found"
msgstr ""
-#: templates/js/translated/build.js:2694
+#: templates/js/translated/build.js:1899
msgid "Allocate Stock Items"
msgstr ""
-#: templates/js/translated/build.js:2800
+#: templates/js/translated/build.js:2005
msgid "No builds matching query"
msgstr ""
-#: templates/js/translated/build.js:2835 templates/js/translated/part.js:2208
-#: templates/js/translated/part.js:2692 templates/js/translated/stock.js:1759
-#: templates/js/translated/stock.js:2458
+#: templates/js/translated/build.js:2040 templates/js/translated/build.js:2408
+#: templates/js/translated/part.js:2284 templates/js/translated/part.js:2677
+#: templates/js/translated/stock.js:1899 templates/js/translated/stock.js:2589
msgid "Select"
msgstr "선택"
-#: templates/js/translated/build.js:2849
+#: templates/js/translated/build.js:2054
msgid "Build order is overdue"
msgstr ""
-#: templates/js/translated/build.js:2883
+#: templates/js/translated/build.js:2100
msgid "Progress"
msgstr ""
-#: templates/js/translated/build.js:2919 templates/js/translated/stock.js:2779
+#: templates/js/translated/build.js:2136 templates/js/translated/stock.js:2910
msgid "No user information"
msgstr ""
-#: templates/js/translated/build.js:2934
+#: templates/js/translated/build.js:2151
msgid "group"
msgstr ""
-#: templates/js/translated/build.js:3033
-msgid "No parts allocated for"
+#: templates/js/translated/build.js:2315
+#: templates/js/translated/sales_order.js:1644
+msgid "Edit stock allocation"
msgstr ""
-#: templates/js/translated/company.js:87
+#: templates/js/translated/build.js:2316
+#: templates/js/translated/sales_order.js:1645
+msgid "Delete stock allocation"
+msgstr ""
+
+#: templates/js/translated/build.js:2331
+msgid "Edit Allocation"
+msgstr ""
+
+#: templates/js/translated/build.js:2343
+msgid "Remove Allocation"
+msgstr ""
+
+#: templates/js/translated/build.js:2384
+msgid "build line"
+msgstr ""
+
+#: templates/js/translated/build.js:2385
+msgid "build lines"
+msgstr ""
+
+#: templates/js/translated/build.js:2403
+msgid "No build lines found"
+msgstr ""
+
+#: templates/js/translated/build.js:2433 templates/js/translated/part.js:767
+#: templates/js/translated/part.js:1175
+msgid "Trackable part"
+msgstr ""
+
+#: templates/js/translated/build.js:2468
+msgid "Unit Quantity"
+msgstr ""
+
+#: templates/js/translated/build.js:2517
+#: templates/js/translated/sales_order.js:1906
+msgid "Insufficient stock available"
+msgstr ""
+
+#: templates/js/translated/build.js:2519
+#: templates/js/translated/sales_order.js:1904
+msgid "Sufficient stock available"
+msgstr ""
+
+#: templates/js/translated/build.js:2566
+msgid "Consumable Item"
+msgstr ""
+
+#: templates/js/translated/build.js:2571
+msgid "Tracked item"
+msgstr ""
+
+#: templates/js/translated/build.js:2578
+#: templates/js/translated/sales_order.js:2005
+msgid "Build stock"
+msgstr ""
+
+#: templates/js/translated/build.js:2583 templates/js/translated/stock.js:1779
+msgid "Order stock"
+msgstr ""
+
+#: templates/js/translated/build.js:2587
+#: templates/js/translated/sales_order.js:1999
+msgid "Allocate stock"
+msgstr ""
+
+#: templates/js/translated/build.js:2591
+msgid "Remove stock allocation"
+msgstr ""
+
+#: templates/js/translated/company.js:97
msgid "Add Manufacturer"
msgstr ""
-#: templates/js/translated/company.js:100
-#: templates/js/translated/company.js:202
+#: templates/js/translated/company.js:110
+#: templates/js/translated/company.js:212
msgid "Add Manufacturer Part"
msgstr ""
-#: templates/js/translated/company.js:121
+#: templates/js/translated/company.js:131
msgid "Edit Manufacturer Part"
msgstr ""
-#: templates/js/translated/company.js:190
-#: templates/js/translated/purchase_order.js:94
+#: templates/js/translated/company.js:200
+#: templates/js/translated/purchase_order.js:93
msgid "Add Supplier"
msgstr ""
-#: templates/js/translated/company.js:232
-#: templates/js/translated/purchase_order.js:338
+#: templates/js/translated/company.js:242
+#: templates/js/translated/purchase_order.js:349
msgid "Add Supplier Part"
msgstr ""
-#: templates/js/translated/company.js:333
+#: templates/js/translated/company.js:343
msgid "All selected supplier parts will be deleted"
msgstr ""
-#: templates/js/translated/company.js:349
+#: templates/js/translated/company.js:359
msgid "Delete Supplier Parts"
msgstr ""
-#: templates/js/translated/company.js:457
+#: templates/js/translated/company.js:464
msgid "Add new Company"
msgstr ""
-#: templates/js/translated/company.js:528
+#: templates/js/translated/company.js:535
msgid "Parts Supplied"
msgstr ""
-#: templates/js/translated/company.js:537
+#: templates/js/translated/company.js:544
msgid "Parts Manufactured"
msgstr ""
-#: templates/js/translated/company.js:552
+#: templates/js/translated/company.js:559
msgid "No company information found"
msgstr ""
-#: templates/js/translated/company.js:601
+#: templates/js/translated/company.js:608
msgid "Create New Contact"
msgstr ""
-#: templates/js/translated/company.js:617
-#: templates/js/translated/company.js:740
+#: templates/js/translated/company.js:624
+#: templates/js/translated/company.js:747
msgid "Edit Contact"
msgstr ""
-#: templates/js/translated/company.js:654
+#: templates/js/translated/company.js:661
msgid "All selected contacts will be deleted"
msgstr ""
-#: templates/js/translated/company.js:660
-#: templates/js/translated/company.js:724
+#: templates/js/translated/company.js:667
+#: templates/js/translated/company.js:731
msgid "Role"
msgstr ""
-#: templates/js/translated/company.js:668
+#: templates/js/translated/company.js:675
msgid "Delete Contacts"
msgstr ""
-#: templates/js/translated/company.js:699
+#: templates/js/translated/company.js:706
msgid "No contacts found"
msgstr ""
-#: templates/js/translated/company.js:712
+#: templates/js/translated/company.js:719
msgid "Phone Number"
msgstr ""
-#: templates/js/translated/company.js:718
+#: templates/js/translated/company.js:725
msgid "Email Address"
msgstr ""
-#: templates/js/translated/company.js:744
+#: templates/js/translated/company.js:751
msgid "Delete Contact"
msgstr ""
-#: templates/js/translated/company.js:818
+#: templates/js/translated/company.js:886
+msgid "Create New Address"
+msgstr ""
+
+#: templates/js/translated/company.js:901
+#: templates/js/translated/company.js:1066
+msgid "Edit Address"
+msgstr ""
+
+#: templates/js/translated/company.js:936
+msgid "All selected addresses will be deleted"
+msgstr ""
+
+#: templates/js/translated/company.js:950
+msgid "Delete Addresses"
+msgstr ""
+
+#: templates/js/translated/company.js:977
+msgid "No addresses found"
+msgstr ""
+
+#: templates/js/translated/company.js:1020
+msgid "Postal city"
+msgstr ""
+
+#: templates/js/translated/company.js:1026
+msgid "State/province"
+msgstr ""
+
+#: templates/js/translated/company.js:1038
+msgid "Courier notes"
+msgstr ""
+
+#: templates/js/translated/company.js:1044
+msgid "Internal notes"
+msgstr ""
+
+#: templates/js/translated/company.js:1070
+msgid "Delete Address"
+msgstr ""
+
+#: templates/js/translated/company.js:1143
msgid "All selected manufacturer parts will be deleted"
msgstr ""
-#: templates/js/translated/company.js:833
+#: templates/js/translated/company.js:1158
msgid "Delete Manufacturer Parts"
msgstr ""
-#: templates/js/translated/company.js:867
+#: templates/js/translated/company.js:1192
msgid "All selected parameters will be deleted"
msgstr ""
-#: templates/js/translated/company.js:881
+#: templates/js/translated/company.js:1206
msgid "Delete Parameters"
msgstr ""
-#: templates/js/translated/company.js:917
+#: templates/js/translated/company.js:1222
+#: templates/js/translated/company.js:1510 templates/js/translated/part.js:2213
+msgid "Order parts"
+msgstr ""
+
+#: templates/js/translated/company.js:1239
+msgid "Delete manufacturer parts"
+msgstr ""
+
+#: templates/js/translated/company.js:1271
+msgid "Manufacturer part actions"
+msgstr ""
+
+#: templates/js/translated/company.js:1290
msgid "No manufacturer parts found"
msgstr ""
-#: templates/js/translated/company.js:937
-#: templates/js/translated/company.js:1177 templates/js/translated/part.js:776
-#: templates/js/translated/part.js:1184
+#: templates/js/translated/company.js:1310
+#: templates/js/translated/company.js:1598 templates/js/translated/part.js:775
+#: templates/js/translated/part.js:1183
msgid "Template part"
msgstr ""
-#: templates/js/translated/company.js:941
-#: templates/js/translated/company.js:1181 templates/js/translated/part.js:780
-#: templates/js/translated/part.js:1188
+#: templates/js/translated/company.js:1314
+#: templates/js/translated/company.js:1602 templates/js/translated/part.js:779
+#: templates/js/translated/part.js:1187
msgid "Assembled part"
msgstr ""
-#: templates/js/translated/company.js:1061 templates/js/translated/part.js:1437
+#: templates/js/translated/company.js:1434 templates/js/translated/part.js:1436
msgid "No parameters found"
msgstr ""
-#: templates/js/translated/company.js:1096 templates/js/translated/part.js:1500
+#: templates/js/translated/company.js:1469 templates/js/translated/part.js:1499
msgid "Edit parameter"
msgstr ""
-#: templates/js/translated/company.js:1097 templates/js/translated/part.js:1501
+#: templates/js/translated/company.js:1470 templates/js/translated/part.js:1500
msgid "Delete parameter"
msgstr ""
-#: templates/js/translated/company.js:1114 templates/js/translated/part.js:1407
+#: templates/js/translated/company.js:1487 templates/js/translated/part.js:1406
msgid "Edit Parameter"
msgstr ""
-#: templates/js/translated/company.js:1123 templates/js/translated/part.js:1522
+#: templates/js/translated/company.js:1496 templates/js/translated/part.js:1521
msgid "Delete Parameter"
msgstr ""
-#: templates/js/translated/company.js:1156
+#: templates/js/translated/company.js:1527
+msgid "Delete supplier parts"
+msgstr ""
+
+#: templates/js/translated/company.js:1577
msgid "No supplier parts found"
msgstr ""
-#: templates/js/translated/company.js:1274
+#: templates/js/translated/company.js:1695
msgid "Base Units"
msgstr ""
-#: templates/js/translated/company.js:1304
+#: templates/js/translated/company.js:1725
msgid "Availability"
msgstr ""
-#: templates/js/translated/company.js:1335
+#: templates/js/translated/company.js:1756
msgid "Edit supplier part"
msgstr ""
-#: templates/js/translated/company.js:1336
+#: templates/js/translated/company.js:1757
msgid "Delete supplier part"
msgstr ""
-#: templates/js/translated/company.js:1389
+#: templates/js/translated/company.js:1810
#: templates/js/translated/pricing.js:694
msgid "Delete Price Break"
msgstr ""
-#: templates/js/translated/company.js:1399
+#: templates/js/translated/company.js:1820
#: templates/js/translated/pricing.js:712
msgid "Edit Price Break"
msgstr ""
-#: templates/js/translated/company.js:1414
+#: templates/js/translated/company.js:1835
msgid "No price break information found"
msgstr ""
-#: templates/js/translated/company.js:1443
+#: templates/js/translated/company.js:1864
msgid "Last updated"
msgstr ""
-#: templates/js/translated/company.js:1450
+#: templates/js/translated/company.js:1871
msgid "Edit price break"
msgstr ""
-#: templates/js/translated/company.js:1451
+#: templates/js/translated/company.js:1872
msgid "Delete price break"
msgstr ""
-#: templates/js/translated/filters.js:186
-#: templates/js/translated/filters.js:550
+#: templates/js/translated/filters.js:187
+#: templates/js/translated/filters.js:673
msgid "true"
msgstr ""
-#: templates/js/translated/filters.js:190
-#: templates/js/translated/filters.js:551
+#: templates/js/translated/filters.js:191
+#: templates/js/translated/filters.js:674
msgid "false"
msgstr ""
-#: templates/js/translated/filters.js:214
+#: templates/js/translated/filters.js:215
msgid "Select filter"
msgstr ""
-#: templates/js/translated/filters.js:328
+#: templates/js/translated/filters.js:438
msgid "Print Labels"
msgstr ""
-#: templates/js/translated/filters.js:332
+#: templates/js/translated/filters.js:442
msgid "Print Reports"
msgstr ""
-#: templates/js/translated/filters.js:344
+#: templates/js/translated/filters.js:454
msgid "Download table data"
msgstr ""
-#: templates/js/translated/filters.js:351
+#: templates/js/translated/filters.js:461
msgid "Reload table data"
msgstr ""
-#: templates/js/translated/filters.js:360
+#: templates/js/translated/filters.js:470
msgid "Add new filter"
msgstr ""
-#: templates/js/translated/filters.js:368
+#: templates/js/translated/filters.js:478
msgid "Clear all filters"
msgstr ""
-#: templates/js/translated/filters.js:460
+#: templates/js/translated/filters.js:583
msgid "Create filter"
msgstr ""
@@ -10497,6 +10620,12 @@ msgstr ""
msgid "View operation not allowed"
msgstr ""
+#: templates/js/translated/forms.js:506 templates/js/translated/helpers.js:105
+#: templates/js/translated/part.js:369 templates/js/translated/pricing.js:629
+#: templates/js/translated/stock.js:215 users/models.py:253
+msgid "Delete"
+msgstr "삭제"
+
#: templates/js/translated/forms.js:752
msgid "Keep this form open"
msgstr ""
@@ -10514,23 +10643,23 @@ msgstr ""
msgid "No results found"
msgstr ""
-#: templates/js/translated/forms.js:2071 templates/js/translated/search.js:281
+#: templates/js/translated/forms.js:2071 templates/js/translated/search.js:239
msgid "Searching"
msgstr ""
-#: templates/js/translated/forms.js:2276
+#: templates/js/translated/forms.js:2285
msgid "Clear input"
msgstr ""
-#: templates/js/translated/forms.js:2733
+#: templates/js/translated/forms.js:2742
msgid "File Column"
msgstr ""
-#: templates/js/translated/forms.js:2733
+#: templates/js/translated/forms.js:2742
msgid "Field Name"
msgstr ""
-#: templates/js/translated/forms.js:2745
+#: templates/js/translated/forms.js:2754
msgid "Select Columns"
msgstr ""
@@ -10550,6 +10679,14 @@ msgstr ""
msgid "False"
msgstr ""
+#: templates/js/translated/index.js:99
+msgid "No parts required for builds"
+msgstr ""
+
+#: templates/js/translated/index.js:125
+msgid "Allocated Stock"
+msgstr ""
+
#: templates/js/translated/label.js:58
msgid "Select Printer"
msgstr ""
@@ -10651,7 +10788,7 @@ msgstr ""
#: templates/js/translated/news.js:38
#: templates/js/translated/notification.js:45
-#: templates/js/translated/part.js:1577
+#: templates/js/translated/part.js:1576
msgid "ID"
msgstr ""
@@ -10700,7 +10837,7 @@ msgid "Delete Line"
msgstr ""
#: templates/js/translated/order.js:281
-#: templates/js/translated/purchase_order.js:1958
+#: templates/js/translated/purchase_order.js:1968
msgid "No line items found"
msgstr ""
@@ -10716,363 +10853,355 @@ msgstr ""
msgid "Delete line"
msgstr ""
-#: templates/js/translated/part.js:91
+#: templates/js/translated/part.js:90
msgid "Part Attributes"
msgstr ""
-#: templates/js/translated/part.js:95
+#: templates/js/translated/part.js:94
msgid "Part Creation Options"
msgstr ""
-#: templates/js/translated/part.js:99
+#: templates/js/translated/part.js:98
msgid "Part Duplication Options"
msgstr ""
-#: templates/js/translated/part.js:122
+#: templates/js/translated/part.js:121
msgid "Add Part Category"
msgstr ""
-#: templates/js/translated/part.js:294
+#: templates/js/translated/part.js:293
msgid "Parent part category"
msgstr ""
-#: templates/js/translated/part.js:310 templates/js/translated/stock.js:147
+#: templates/js/translated/part.js:309 templates/js/translated/stock.js:146
msgid "Icon (optional) - Explore all available icons on"
msgstr ""
-#: templates/js/translated/part.js:330
+#: templates/js/translated/part.js:329
msgid "Create Part Category"
msgstr ""
-#: templates/js/translated/part.js:333
+#: templates/js/translated/part.js:332
msgid "Create new category after this one"
msgstr ""
-#: templates/js/translated/part.js:334
+#: templates/js/translated/part.js:333
msgid "Part category created"
msgstr ""
-#: templates/js/translated/part.js:348
+#: templates/js/translated/part.js:347
msgid "Edit Part Category"
msgstr ""
-#: templates/js/translated/part.js:361
+#: templates/js/translated/part.js:360
msgid "Are you sure you want to delete this part category?"
msgstr ""
-#: templates/js/translated/part.js:366
+#: templates/js/translated/part.js:365
msgid "Move to parent category"
msgstr ""
-#: templates/js/translated/part.js:375
+#: templates/js/translated/part.js:374
msgid "Delete Part Category"
msgstr ""
-#: templates/js/translated/part.js:379
+#: templates/js/translated/part.js:378
msgid "Action for parts in this category"
msgstr ""
-#: templates/js/translated/part.js:384
+#: templates/js/translated/part.js:383
msgid "Action for child categories"
msgstr ""
-#: templates/js/translated/part.js:408
+#: templates/js/translated/part.js:407
msgid "Create Part"
msgstr ""
-#: templates/js/translated/part.js:410
+#: templates/js/translated/part.js:409
msgid "Create another part after this one"
msgstr ""
-#: templates/js/translated/part.js:411
+#: templates/js/translated/part.js:410
msgid "Part created successfully"
msgstr ""
-#: templates/js/translated/part.js:439
+#: templates/js/translated/part.js:438
msgid "Edit Part"
msgstr ""
-#: templates/js/translated/part.js:441
+#: templates/js/translated/part.js:440
msgid "Part edited"
msgstr ""
-#: templates/js/translated/part.js:452
+#: templates/js/translated/part.js:451
msgid "Create Part Variant"
msgstr ""
-#: templates/js/translated/part.js:509
+#: templates/js/translated/part.js:508
msgid "Active Part"
msgstr ""
-#: templates/js/translated/part.js:510
+#: templates/js/translated/part.js:509
msgid "Part cannot be deleted as it is currently active"
msgstr ""
-#: templates/js/translated/part.js:524
+#: templates/js/translated/part.js:523
msgid "Deleting this part cannot be reversed"
msgstr ""
-#: templates/js/translated/part.js:526
+#: templates/js/translated/part.js:525
msgid "Any stock items for this part will be deleted"
msgstr ""
-#: templates/js/translated/part.js:527
+#: templates/js/translated/part.js:526
msgid "This part will be removed from any Bills of Material"
msgstr ""
-#: templates/js/translated/part.js:528
+#: templates/js/translated/part.js:527
msgid "All manufacturer and supplier information for this part will be deleted"
msgstr ""
-#: templates/js/translated/part.js:535
+#: templates/js/translated/part.js:534
msgid "Delete Part"
msgstr ""
-#: templates/js/translated/part.js:571
+#: templates/js/translated/part.js:570
msgid "You are subscribed to notifications for this item"
msgstr ""
-#: templates/js/translated/part.js:573
+#: templates/js/translated/part.js:572
msgid "You have subscribed to notifications for this item"
msgstr ""
-#: templates/js/translated/part.js:578
+#: templates/js/translated/part.js:577
msgid "Subscribe to notifications for this item"
msgstr ""
-#: templates/js/translated/part.js:580
+#: templates/js/translated/part.js:579
msgid "You have unsubscribed to notifications for this item"
msgstr ""
-#: templates/js/translated/part.js:597
+#: templates/js/translated/part.js:596
msgid "Validating the BOM will mark each line item as valid"
msgstr ""
-#: templates/js/translated/part.js:607
+#: templates/js/translated/part.js:606
msgid "Validate Bill of Materials"
msgstr ""
-#: templates/js/translated/part.js:610
+#: templates/js/translated/part.js:609
msgid "Validated Bill of Materials"
msgstr ""
-#: templates/js/translated/part.js:635
+#: templates/js/translated/part.js:634
msgid "Copy Bill of Materials"
msgstr "부품 명세서 복사"
-#: templates/js/translated/part.js:663
-#: templates/js/translated/table_filters.js:660
+#: templates/js/translated/part.js:662
+#: templates/js/translated/table_filters.js:682
msgid "Low stock"
msgstr ""
-#: templates/js/translated/part.js:666
+#: templates/js/translated/part.js:665
msgid "No stock available"
msgstr ""
-#: templates/js/translated/part.js:726
+#: templates/js/translated/part.js:725
msgid "Demand"
msgstr ""
-#: templates/js/translated/part.js:749
+#: templates/js/translated/part.js:748
msgid "Unit"
msgstr ""
-#: templates/js/translated/part.js:768 templates/js/translated/part.js:1176
-msgid "Trackable part"
-msgstr ""
-
-#: templates/js/translated/part.js:772 templates/js/translated/part.js:1180
+#: templates/js/translated/part.js:771 templates/js/translated/part.js:1179
msgid "Virtual part"
msgstr ""
-#: templates/js/translated/part.js:784
+#: templates/js/translated/part.js:783
msgid "Subscribed part"
msgstr ""
-#: templates/js/translated/part.js:788
+#: templates/js/translated/part.js:787
msgid "Salable part"
msgstr ""
-#: templates/js/translated/part.js:863
+#: templates/js/translated/part.js:862
msgid "Schedule generation of a new stocktake report."
msgstr ""
-#: templates/js/translated/part.js:863
+#: templates/js/translated/part.js:862
msgid "Once complete, the stocktake report will be available for download."
msgstr ""
-#: templates/js/translated/part.js:871
+#: templates/js/translated/part.js:870
msgid "Generate Stocktake Report"
msgstr ""
-#: templates/js/translated/part.js:875
+#: templates/js/translated/part.js:874
msgid "Stocktake report scheduled"
msgstr ""
-#: templates/js/translated/part.js:1024
+#: templates/js/translated/part.js:1023
msgid "No stocktake information available"
msgstr ""
-#: templates/js/translated/part.js:1082 templates/js/translated/part.js:1118
+#: templates/js/translated/part.js:1081 templates/js/translated/part.js:1117
msgid "Edit Stocktake Entry"
msgstr ""
-#: templates/js/translated/part.js:1086 templates/js/translated/part.js:1128
+#: templates/js/translated/part.js:1085 templates/js/translated/part.js:1127
msgid "Delete Stocktake Entry"
msgstr ""
-#: templates/js/translated/part.js:1255
+#: templates/js/translated/part.js:1254
msgid "No variants found"
msgstr ""
-#: templates/js/translated/part.js:1572
+#: templates/js/translated/part.js:1571
msgid "No part parameter templates found"
msgstr ""
-#: templates/js/translated/part.js:1635
+#: templates/js/translated/part.js:1634
msgid "Edit Part Parameter Template"
msgstr ""
-#: templates/js/translated/part.js:1647
+#: templates/js/translated/part.js:1646
msgid "Any parameters which reference this template will also be deleted"
msgstr ""
-#: templates/js/translated/part.js:1655
+#: templates/js/translated/part.js:1654
msgid "Delete Part Parameter Template"
msgstr ""
-#: templates/js/translated/part.js:1689
-#: templates/js/translated/purchase_order.js:1618
+#: templates/js/translated/part.js:1688
+#: templates/js/translated/purchase_order.js:1633
msgid "No purchase orders found"
msgstr ""
-#: templates/js/translated/part.js:1832
-#: templates/js/translated/purchase_order.js:2121
-#: templates/js/translated/return_order.js:740
-#: templates/js/translated/sales_order.js:1855
+#: templates/js/translated/part.js:1831
+#: templates/js/translated/purchase_order.js:2131
+#: templates/js/translated/return_order.js:752
+#: templates/js/translated/sales_order.js:1867
msgid "This line item is overdue"
msgstr ""
-#: templates/js/translated/part.js:1877
-#: templates/js/translated/purchase_order.js:2188
+#: templates/js/translated/part.js:1876
+#: templates/js/translated/purchase_order.js:2198
msgid "Receive line item"
msgstr ""
-#: templates/js/translated/part.js:1944
+#: templates/js/translated/part.js:1943
msgid "Delete part relationship"
msgstr ""
-#: templates/js/translated/part.js:1966
+#: templates/js/translated/part.js:1965
msgid "Delete Part Relationship"
msgstr ""
-#: templates/js/translated/part.js:2054 templates/js/translated/part.js:2366
+#: templates/js/translated/part.js:2053 templates/js/translated/part.js:2442
msgid "No parts found"
msgstr ""
-#: templates/js/translated/part.js:2192
-msgid "parts"
-msgstr ""
-
-#: templates/js/translated/part.js:2276
-msgid "No category"
-msgstr ""
-
-#: templates/js/translated/part.js:2390 templates/js/translated/part.js:2611
-#: templates/js/translated/stock.js:2417
-msgid "Display as list"
-msgstr ""
-
-#: templates/js/translated/part.js:2406
-msgid "Display as grid"
-msgstr ""
-
-#: templates/js/translated/part.js:2472
+#: templates/js/translated/part.js:2174
msgid "Set the part category for the selected parts"
msgstr ""
-#: templates/js/translated/part.js:2477
+#: templates/js/translated/part.js:2179
msgid "Set Part Category"
msgstr ""
+#: templates/js/translated/part.js:2204
+msgid "Set category"
+msgstr ""
+
+#: templates/js/translated/part.js:2259
+msgid "parts"
+msgstr ""
+
+#: templates/js/translated/part.js:2352
+msgid "No category"
+msgstr ""
+
+#: templates/js/translated/part.js:2466 templates/js/translated/part.js:2596
+#: templates/js/translated/stock.js:2548
+msgid "Display as list"
+msgstr ""
+
#: templates/js/translated/part.js:2482
-msgid "Select Part Category"
+msgid "Display as grid"
msgstr ""
-#: templates/js/translated/part.js:2495
-msgid "Category is required"
-msgstr ""
-
-#: templates/js/translated/part.js:2595
+#: templates/js/translated/part.js:2580
msgid "No subcategories found"
msgstr ""
-#: templates/js/translated/part.js:2631 templates/js/translated/stock.js:2437
+#: templates/js/translated/part.js:2616 templates/js/translated/stock.js:2568
msgid "Display as tree"
msgstr ""
-#: templates/js/translated/part.js:2711
+#: templates/js/translated/part.js:2696
msgid "Load Subcategories"
msgstr ""
-#: templates/js/translated/part.js:2727
+#: templates/js/translated/part.js:2712
msgid "Subscribed category"
msgstr ""
-#: templates/js/translated/part.js:2807
+#: templates/js/translated/part.js:2792
msgid "No test templates matching query"
msgstr ""
-#: templates/js/translated/part.js:2858 templates/js/translated/stock.js:1380
+#: templates/js/translated/part.js:2843 templates/js/translated/stock.js:1379
msgid "Edit test result"
msgstr ""
-#: templates/js/translated/part.js:2859 templates/js/translated/stock.js:1381
-#: templates/js/translated/stock.js:1643
+#: templates/js/translated/part.js:2844 templates/js/translated/stock.js:1380
+#: templates/js/translated/stock.js:1642
msgid "Delete test result"
msgstr ""
-#: templates/js/translated/part.js:2863
+#: templates/js/translated/part.js:2848
msgid "This test is defined for a parent part"
msgstr ""
-#: templates/js/translated/part.js:2879
+#: templates/js/translated/part.js:2864
msgid "Edit Test Result Template"
msgstr ""
-#: templates/js/translated/part.js:2893
+#: templates/js/translated/part.js:2878
msgid "Delete Test Result Template"
msgstr ""
-#: templates/js/translated/part.js:2972 templates/js/translated/part.js:2973
+#: templates/js/translated/part.js:2957 templates/js/translated/part.js:2958
msgid "No date specified"
msgstr ""
-#: templates/js/translated/part.js:2975
+#: templates/js/translated/part.js:2960
msgid "Specified date is in the past"
msgstr ""
-#: templates/js/translated/part.js:2981
+#: templates/js/translated/part.js:2966
msgid "Speculative"
msgstr ""
-#: templates/js/translated/part.js:3031
+#: templates/js/translated/part.js:3016
msgid "No scheduling information available for this part"
msgstr ""
-#: templates/js/translated/part.js:3037
+#: templates/js/translated/part.js:3022
msgid "Error fetching scheduling information for this part"
msgstr ""
-#: templates/js/translated/part.js:3133
+#: templates/js/translated/part.js:3118
msgid "Scheduled Stock Quantities"
msgstr ""
-#: templates/js/translated/part.js:3149
+#: templates/js/translated/part.js:3134
msgid "Maximum Quantity"
msgstr ""
-#: templates/js/translated/part.js:3194
+#: templates/js/translated/part.js:3179
msgid "Minimum Stock Level"
msgstr ""
@@ -11168,234 +11297,234 @@ msgstr ""
msgid "Variant Part"
msgstr ""
-#: templates/js/translated/purchase_order.js:155
+#: templates/js/translated/purchase_order.js:166
msgid "Select purchase order to duplicate"
msgstr ""
-#: templates/js/translated/purchase_order.js:162
+#: templates/js/translated/purchase_order.js:173
msgid "Duplicate Line Items"
msgstr ""
-#: templates/js/translated/purchase_order.js:163
+#: templates/js/translated/purchase_order.js:174
msgid "Duplicate all line items from the selected order"
msgstr ""
-#: templates/js/translated/purchase_order.js:170
+#: templates/js/translated/purchase_order.js:181
msgid "Duplicate Extra Lines"
msgstr ""
-#: templates/js/translated/purchase_order.js:171
+#: templates/js/translated/purchase_order.js:182
msgid "Duplicate extra line items from the selected order"
msgstr ""
-#: templates/js/translated/purchase_order.js:192
+#: templates/js/translated/purchase_order.js:203
msgid "Edit Purchase Order"
msgstr ""
-#: templates/js/translated/purchase_order.js:209
+#: templates/js/translated/purchase_order.js:220
msgid "Duplication Options"
msgstr ""
-#: templates/js/translated/purchase_order.js:436
+#: templates/js/translated/purchase_order.js:447
msgid "Complete Purchase Order"
msgstr ""
-#: templates/js/translated/purchase_order.js:453
-#: templates/js/translated/return_order.js:195
-#: templates/js/translated/sales_order.js:485
+#: templates/js/translated/purchase_order.js:464
+#: templates/js/translated/return_order.js:207
+#: templates/js/translated/sales_order.js:497
msgid "Mark this order as complete?"
msgstr ""
-#: templates/js/translated/purchase_order.js:459
+#: templates/js/translated/purchase_order.js:470
msgid "All line items have been received"
msgstr ""
-#: templates/js/translated/purchase_order.js:464
+#: templates/js/translated/purchase_order.js:475
msgid "This order has line items which have not been marked as received."
msgstr ""
-#: templates/js/translated/purchase_order.js:465
-#: templates/js/translated/sales_order.js:499
+#: templates/js/translated/purchase_order.js:476
+#: templates/js/translated/sales_order.js:511
msgid "Completing this order means that the order and line items will no longer be editable."
msgstr ""
-#: templates/js/translated/purchase_order.js:488
+#: templates/js/translated/purchase_order.js:499
msgid "Cancel Purchase Order"
msgstr ""
-#: templates/js/translated/purchase_order.js:493
+#: templates/js/translated/purchase_order.js:504
msgid "Are you sure you wish to cancel this purchase order?"
msgstr ""
-#: templates/js/translated/purchase_order.js:499
+#: templates/js/translated/purchase_order.js:510
msgid "This purchase order can not be cancelled"
msgstr ""
-#: templates/js/translated/purchase_order.js:520
-#: templates/js/translated/return_order.js:149
+#: templates/js/translated/purchase_order.js:531
+#: templates/js/translated/return_order.js:161
msgid "After placing this order, line items will no longer be editable."
msgstr ""
-#: templates/js/translated/purchase_order.js:525
+#: templates/js/translated/purchase_order.js:536
msgid "Issue Purchase Order"
msgstr ""
-#: templates/js/translated/purchase_order.js:617
+#: templates/js/translated/purchase_order.js:628
msgid "At least one purchaseable part must be selected"
msgstr ""
-#: templates/js/translated/purchase_order.js:642
+#: templates/js/translated/purchase_order.js:653
msgid "Quantity to order"
msgstr ""
-#: templates/js/translated/purchase_order.js:651
+#: templates/js/translated/purchase_order.js:662
msgid "New supplier part"
msgstr ""
-#: templates/js/translated/purchase_order.js:669
+#: templates/js/translated/purchase_order.js:680
msgid "New purchase order"
msgstr ""
-#: templates/js/translated/purchase_order.js:701
+#: templates/js/translated/purchase_order.js:712
msgid "Add to purchase order"
msgstr ""
-#: templates/js/translated/purchase_order.js:845
+#: templates/js/translated/purchase_order.js:860
msgid "No matching supplier parts"
msgstr ""
-#: templates/js/translated/purchase_order.js:864
+#: templates/js/translated/purchase_order.js:879
msgid "No matching purchase orders"
msgstr ""
-#: templates/js/translated/purchase_order.js:1043
+#: templates/js/translated/purchase_order.js:1058
msgid "Select Line Items"
msgstr ""
-#: templates/js/translated/purchase_order.js:1044
-#: templates/js/translated/return_order.js:480
+#: templates/js/translated/purchase_order.js:1059
+#: templates/js/translated/return_order.js:492
msgid "At least one line item must be selected"
msgstr ""
-#: templates/js/translated/purchase_order.js:1074
+#: templates/js/translated/purchase_order.js:1089
msgid "Received Quantity"
msgstr ""
-#: templates/js/translated/purchase_order.js:1085
+#: templates/js/translated/purchase_order.js:1100
msgid "Quantity to receive"
msgstr ""
-#: templates/js/translated/purchase_order.js:1161
+#: templates/js/translated/purchase_order.js:1176
msgid "Stock Status"
msgstr ""
-#: templates/js/translated/purchase_order.js:1175
+#: templates/js/translated/purchase_order.js:1190
msgid "Add barcode"
msgstr ""
-#: templates/js/translated/purchase_order.js:1176
+#: templates/js/translated/purchase_order.js:1191
msgid "Remove barcode"
msgstr ""
-#: templates/js/translated/purchase_order.js:1179
+#: templates/js/translated/purchase_order.js:1194
msgid "Specify location"
msgstr ""
-#: templates/js/translated/purchase_order.js:1187
+#: templates/js/translated/purchase_order.js:1202
msgid "Add batch code"
msgstr ""
-#: templates/js/translated/purchase_order.js:1198
+#: templates/js/translated/purchase_order.js:1213
msgid "Add serial numbers"
msgstr ""
-#: templates/js/translated/purchase_order.js:1250
+#: templates/js/translated/purchase_order.js:1265
msgid "Serials"
msgstr ""
-#: templates/js/translated/purchase_order.js:1275
+#: templates/js/translated/purchase_order.js:1290
msgid "Order Code"
msgstr ""
-#: templates/js/translated/purchase_order.js:1277
+#: templates/js/translated/purchase_order.js:1292
msgid "Quantity to Receive"
msgstr ""
-#: templates/js/translated/purchase_order.js:1299
-#: templates/js/translated/return_order.js:545
+#: templates/js/translated/purchase_order.js:1314
+#: templates/js/translated/return_order.js:557
msgid "Confirm receipt of items"
msgstr ""
-#: templates/js/translated/purchase_order.js:1300
+#: templates/js/translated/purchase_order.js:1315
msgid "Receive Purchase Order Items"
msgstr ""
-#: templates/js/translated/purchase_order.js:1368
+#: templates/js/translated/purchase_order.js:1383
msgid "Scan Item Barcode"
msgstr ""
-#: templates/js/translated/purchase_order.js:1369
+#: templates/js/translated/purchase_order.js:1384
msgid "Scan barcode on incoming item (must not match any existing stock items)"
msgstr ""
-#: templates/js/translated/purchase_order.js:1383
+#: templates/js/translated/purchase_order.js:1398
msgid "Invalid barcode data"
msgstr ""
-#: templates/js/translated/purchase_order.js:1645
-#: templates/js/translated/return_order.js:274
-#: templates/js/translated/sales_order.js:762
-#: templates/js/translated/sales_order.js:986
+#: templates/js/translated/purchase_order.js:1660
+#: templates/js/translated/return_order.js:286
+#: templates/js/translated/sales_order.js:774
+#: templates/js/translated/sales_order.js:998
msgid "Order is overdue"
msgstr ""
-#: templates/js/translated/purchase_order.js:1707
-#: templates/js/translated/return_order.js:342
-#: templates/js/translated/sales_order.js:839
-#: templates/js/translated/sales_order.js:999
+#: templates/js/translated/purchase_order.js:1722
+#: templates/js/translated/return_order.js:354
+#: templates/js/translated/sales_order.js:851
+#: templates/js/translated/sales_order.js:1011
msgid "Items"
msgstr ""
-#: templates/js/translated/purchase_order.js:1806
+#: templates/js/translated/purchase_order.js:1821
msgid "All selected Line items will be deleted"
msgstr ""
-#: templates/js/translated/purchase_order.js:1824
+#: templates/js/translated/purchase_order.js:1839
msgid "Delete selected Line items?"
msgstr ""
-#: templates/js/translated/purchase_order.js:1884
-#: templates/js/translated/sales_order.js:2047
+#: templates/js/translated/purchase_order.js:1894
+#: templates/js/translated/sales_order.js:2059
msgid "Duplicate Line Item"
msgstr ""
-#: templates/js/translated/purchase_order.js:1899
-#: templates/js/translated/return_order.js:464
-#: templates/js/translated/return_order.js:653
-#: templates/js/translated/sales_order.js:2060
+#: templates/js/translated/purchase_order.js:1909
+#: templates/js/translated/return_order.js:476
+#: templates/js/translated/return_order.js:665
+#: templates/js/translated/sales_order.js:2072
msgid "Edit Line Item"
msgstr ""
-#: templates/js/translated/purchase_order.js:1910
-#: templates/js/translated/return_order.js:666
-#: templates/js/translated/sales_order.js:2071
+#: templates/js/translated/purchase_order.js:1920
+#: templates/js/translated/return_order.js:678
+#: templates/js/translated/sales_order.js:2083
msgid "Delete Line Item"
msgstr ""
-#: templates/js/translated/purchase_order.js:2192
-#: templates/js/translated/sales_order.js:2001
+#: templates/js/translated/purchase_order.js:2202
+#: templates/js/translated/sales_order.js:2013
msgid "Duplicate line item"
msgstr ""
-#: templates/js/translated/purchase_order.js:2193
-#: templates/js/translated/return_order.js:785
-#: templates/js/translated/sales_order.js:2002
+#: templates/js/translated/purchase_order.js:2203
+#: templates/js/translated/return_order.js:797
+#: templates/js/translated/sales_order.js:2014
msgid "Edit line item"
msgstr ""
-#: templates/js/translated/purchase_order.js:2194
-#: templates/js/translated/return_order.js:789
-#: templates/js/translated/sales_order.js:2008
+#: templates/js/translated/purchase_order.js:2204
+#: templates/js/translated/return_order.js:801
+#: templates/js/translated/sales_order.js:2020
msgid "Delete line item"
msgstr ""
@@ -11424,941 +11553,973 @@ msgstr ""
msgid "Add Customer"
msgstr ""
-#: templates/js/translated/return_order.js:119
+#: templates/js/translated/return_order.js:131
msgid "Create Return Order"
msgstr ""
-#: templates/js/translated/return_order.js:134
+#: templates/js/translated/return_order.js:146
msgid "Edit Return Order"
msgstr ""
-#: templates/js/translated/return_order.js:154
+#: templates/js/translated/return_order.js:166
msgid "Issue Return Order"
msgstr ""
-#: templates/js/translated/return_order.js:171
+#: templates/js/translated/return_order.js:183
msgid "Are you sure you wish to cancel this Return Order?"
msgstr ""
-#: templates/js/translated/return_order.js:178
+#: templates/js/translated/return_order.js:190
msgid "Cancel Return Order"
msgstr ""
-#: templates/js/translated/return_order.js:203
+#: templates/js/translated/return_order.js:215
msgid "Complete Return Order"
msgstr ""
-#: templates/js/translated/return_order.js:251
+#: templates/js/translated/return_order.js:263
msgid "No return orders found"
msgstr ""
-#: templates/js/translated/return_order.js:288
-#: templates/js/translated/sales_order.js:776
+#: templates/js/translated/return_order.js:300
+#: templates/js/translated/sales_order.js:788
msgid "Invalid Customer"
msgstr ""
-#: templates/js/translated/return_order.js:546
+#: templates/js/translated/return_order.js:558
msgid "Receive Return Order Items"
msgstr ""
-#: templates/js/translated/return_order.js:677
-#: templates/js/translated/sales_order.js:2207
+#: templates/js/translated/return_order.js:689
+#: templates/js/translated/sales_order.js:2219
msgid "No matching line items"
msgstr ""
-#: templates/js/translated/return_order.js:782
+#: templates/js/translated/return_order.js:794
msgid "Mark item as received"
msgstr ""
-#: templates/js/translated/sales_order.js:146
+#: templates/js/translated/sales_order.js:158
msgid "Create Sales Order"
msgstr ""
-#: templates/js/translated/sales_order.js:161
+#: templates/js/translated/sales_order.js:173
msgid "Edit Sales Order"
msgstr ""
-#: templates/js/translated/sales_order.js:276
+#: templates/js/translated/sales_order.js:288
msgid "No stock items have been allocated to this shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:281
+#: templates/js/translated/sales_order.js:293
msgid "The following stock items will be shipped"
msgstr ""
-#: templates/js/translated/sales_order.js:321
+#: templates/js/translated/sales_order.js:333
msgid "Complete Shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:345
+#: templates/js/translated/sales_order.js:357
msgid "Confirm Shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:401
+#: templates/js/translated/sales_order.js:413
msgid "No pending shipments found"
msgstr ""
-#: templates/js/translated/sales_order.js:405
+#: templates/js/translated/sales_order.js:417
msgid "No stock items have been allocated to pending shipments"
msgstr ""
-#: templates/js/translated/sales_order.js:415
+#: templates/js/translated/sales_order.js:427
msgid "Complete Shipments"
msgstr ""
-#: templates/js/translated/sales_order.js:437
+#: templates/js/translated/sales_order.js:449
msgid "Skip"
msgstr ""
-#: templates/js/translated/sales_order.js:498
+#: templates/js/translated/sales_order.js:510
msgid "This order has line items which have not been completed."
msgstr ""
-#: templates/js/translated/sales_order.js:520
+#: templates/js/translated/sales_order.js:532
msgid "Issue this Sales Order?"
msgstr ""
-#: templates/js/translated/sales_order.js:525
+#: templates/js/translated/sales_order.js:537
msgid "Issue Sales Order"
msgstr ""
-#: templates/js/translated/sales_order.js:544
+#: templates/js/translated/sales_order.js:556
msgid "Cancel Sales Order"
msgstr ""
-#: templates/js/translated/sales_order.js:549
+#: templates/js/translated/sales_order.js:561
msgid "Cancelling this order means that the order will no longer be editable."
msgstr ""
-#: templates/js/translated/sales_order.js:603
+#: templates/js/translated/sales_order.js:615
msgid "Create New Shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:713
+#: templates/js/translated/sales_order.js:725
msgid "No sales orders found"
msgstr ""
-#: templates/js/translated/sales_order.js:896
+#: templates/js/translated/sales_order.js:908
msgid "Edit shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:899
+#: templates/js/translated/sales_order.js:911
msgid "Complete shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:904
+#: templates/js/translated/sales_order.js:916
msgid "Delete shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:921
+#: templates/js/translated/sales_order.js:933
msgid "Edit Shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:936
+#: templates/js/translated/sales_order.js:948
msgid "Delete Shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:969
+#: templates/js/translated/sales_order.js:981
msgid "No matching shipments found"
msgstr ""
-#: templates/js/translated/sales_order.js:994
+#: templates/js/translated/sales_order.js:1006
msgid "Shipment Reference"
msgstr ""
-#: templates/js/translated/sales_order.js:1018
-#: templates/js/translated/sales_order.js:1515
+#: templates/js/translated/sales_order.js:1030
+#: templates/js/translated/sales_order.js:1527
msgid "Not shipped"
msgstr ""
-#: templates/js/translated/sales_order.js:1036
+#: templates/js/translated/sales_order.js:1048
msgid "Tracking"
msgstr ""
-#: templates/js/translated/sales_order.js:1040
+#: templates/js/translated/sales_order.js:1052
msgid "Invoice"
msgstr ""
-#: templates/js/translated/sales_order.js:1207
+#: templates/js/translated/sales_order.js:1219
msgid "Add Shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:1258
+#: templates/js/translated/sales_order.js:1270
msgid "Confirm stock allocation"
msgstr ""
-#: templates/js/translated/sales_order.js:1259
+#: templates/js/translated/sales_order.js:1271
msgid "Allocate Stock Items to Sales Order"
msgstr ""
-#: templates/js/translated/sales_order.js:1463
+#: templates/js/translated/sales_order.js:1475
msgid "No sales order allocations found"
msgstr ""
-#: templates/js/translated/sales_order.js:1555
+#: templates/js/translated/sales_order.js:1567
msgid "Edit Stock Allocation"
msgstr ""
-#: templates/js/translated/sales_order.js:1569
+#: templates/js/translated/sales_order.js:1581
msgid "Confirm Delete Operation"
msgstr ""
-#: templates/js/translated/sales_order.js:1570
+#: templates/js/translated/sales_order.js:1582
msgid "Delete Stock Allocation"
msgstr ""
-#: templates/js/translated/sales_order.js:1609
-#: templates/js/translated/sales_order.js:1696
-#: templates/js/translated/stock.js:1688
+#: templates/js/translated/sales_order.js:1621
+#: templates/js/translated/sales_order.js:1708
+#: templates/js/translated/stock.js:1687
msgid "Shipped to customer"
msgstr ""
-#: templates/js/translated/sales_order.js:1617
-#: templates/js/translated/sales_order.js:1705
+#: templates/js/translated/sales_order.js:1629
+#: templates/js/translated/sales_order.js:1717
msgid "Stock location not specified"
msgstr ""
-#: templates/js/translated/sales_order.js:1985
+#: templates/js/translated/sales_order.js:1997
msgid "Allocate serial numbers"
msgstr ""
-#: templates/js/translated/sales_order.js:1989
+#: templates/js/translated/sales_order.js:2001
msgid "Purchase stock"
msgstr ""
-#: templates/js/translated/sales_order.js:1998
-#: templates/js/translated/sales_order.js:2185
+#: templates/js/translated/sales_order.js:2010
+#: templates/js/translated/sales_order.js:2197
msgid "Calculate price"
msgstr ""
-#: templates/js/translated/sales_order.js:2012
+#: templates/js/translated/sales_order.js:2024
msgid "Cannot be deleted as items have been shipped"
msgstr ""
-#: templates/js/translated/sales_order.js:2015
+#: templates/js/translated/sales_order.js:2027
msgid "Cannot be deleted as items have been allocated"
msgstr ""
-#: templates/js/translated/sales_order.js:2086
+#: templates/js/translated/sales_order.js:2098
msgid "Allocate Serial Numbers"
msgstr ""
-#: templates/js/translated/sales_order.js:2193
+#: templates/js/translated/sales_order.js:2205
msgid "Update Unit Price"
msgstr ""
-#: templates/js/translated/search.js:312
+#: templates/js/translated/search.js:270
msgid "No results"
msgstr ""
-#: templates/js/translated/search.js:334 templates/search.html:25
+#: templates/js/translated/search.js:292 templates/search.html:25
msgid "Enter search query"
msgstr ""
-#: templates/js/translated/search.js:384
+#: templates/js/translated/search.js:342
msgid "result"
msgstr ""
-#: templates/js/translated/search.js:384
+#: templates/js/translated/search.js:342
msgid "results"
msgstr ""
-#: templates/js/translated/search.js:394
+#: templates/js/translated/search.js:352
msgid "Minimize results"
msgstr ""
-#: templates/js/translated/search.js:397
+#: templates/js/translated/search.js:355
msgid "Remove results"
msgstr ""
-#: templates/js/translated/stock.js:98
+#: templates/js/translated/stock.js:97
msgid "Serialize Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:129
+#: templates/js/translated/stock.js:128
msgid "Confirm Stock Serialization"
msgstr ""
-#: templates/js/translated/stock.js:138
+#: templates/js/translated/stock.js:137
msgid "Parent stock location"
msgstr ""
-#: templates/js/translated/stock.js:173
+#: templates/js/translated/stock.js:172
msgid "Edit Stock Location"
msgstr ""
-#: templates/js/translated/stock.js:188
+#: templates/js/translated/stock.js:187
msgid "New Stock Location"
msgstr ""
-#: templates/js/translated/stock.js:190
+#: templates/js/translated/stock.js:189
msgid "Create another location after this one"
msgstr ""
-#: templates/js/translated/stock.js:191
+#: templates/js/translated/stock.js:190
msgid "Stock location created"
msgstr ""
-#: templates/js/translated/stock.js:205
+#: templates/js/translated/stock.js:204
msgid "Are you sure you want to delete this stock location?"
msgstr ""
-#: templates/js/translated/stock.js:212
+#: templates/js/translated/stock.js:211
msgid "Move to parent stock location"
msgstr ""
-#: templates/js/translated/stock.js:221
+#: templates/js/translated/stock.js:220
msgid "Delete Stock Location"
msgstr ""
-#: templates/js/translated/stock.js:225
+#: templates/js/translated/stock.js:224
msgid "Action for stock items in this stock location"
msgstr ""
-#: templates/js/translated/stock.js:230
+#: templates/js/translated/stock.js:229
msgid "Action for sub-locations"
msgstr ""
-#: templates/js/translated/stock.js:284
+#: templates/js/translated/stock.js:283
msgid "This part cannot be serialized"
msgstr ""
-#: templates/js/translated/stock.js:320
+#: templates/js/translated/stock.js:319
msgid "Add given quantity as packs instead of individual items"
msgstr ""
-#: templates/js/translated/stock.js:329
+#: templates/js/translated/stock.js:328
msgid "Enter initial quantity for this stock item"
msgstr ""
-#: templates/js/translated/stock.js:335
+#: templates/js/translated/stock.js:334
msgid "Enter serial numbers for new stock (or leave blank)"
msgstr ""
-#: templates/js/translated/stock.js:406
+#: templates/js/translated/stock.js:405
msgid "Stock item duplicated"
msgstr ""
-#: templates/js/translated/stock.js:426
+#: templates/js/translated/stock.js:425
msgid "Duplicate Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:442
+#: templates/js/translated/stock.js:441
msgid "Are you sure you want to delete this stock item?"
msgstr ""
-#: templates/js/translated/stock.js:447
+#: templates/js/translated/stock.js:446
msgid "Delete Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:468
+#: templates/js/translated/stock.js:467
msgid "Edit Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:510
+#: templates/js/translated/stock.js:509
msgid "Create another item after this one"
msgstr ""
-#: templates/js/translated/stock.js:522
+#: templates/js/translated/stock.js:521
msgid "Created new stock item"
msgstr ""
-#: templates/js/translated/stock.js:535
+#: templates/js/translated/stock.js:534
msgid "Created multiple stock items"
msgstr ""
-#: templates/js/translated/stock.js:560
+#: templates/js/translated/stock.js:559
msgid "Find Serial Number"
msgstr "일련번호 찾기"
-#: templates/js/translated/stock.js:564 templates/js/translated/stock.js:565
+#: templates/js/translated/stock.js:563 templates/js/translated/stock.js:564
msgid "Enter serial number"
msgstr "일련번호를 입력하세요"
-#: templates/js/translated/stock.js:581
+#: templates/js/translated/stock.js:580
msgid "Enter a serial number"
msgstr "일련번호를 입력하세요"
-#: templates/js/translated/stock.js:601
+#: templates/js/translated/stock.js:600
msgid "No matching serial number"
msgstr "일치하는 일련번호가 없습니다"
-#: templates/js/translated/stock.js:610
+#: templates/js/translated/stock.js:609
msgid "More than one matching result found"
msgstr ""
-#: templates/js/translated/stock.js:718
+#: templates/js/translated/stock.js:717
msgid "Confirm stock assignment"
msgstr ""
-#: templates/js/translated/stock.js:719
+#: templates/js/translated/stock.js:718
msgid "Assign Stock to Customer"
msgstr ""
-#: templates/js/translated/stock.js:796
+#: templates/js/translated/stock.js:795
msgid "Warning: Merge operation cannot be reversed"
msgstr ""
-#: templates/js/translated/stock.js:797
+#: templates/js/translated/stock.js:796
msgid "Some information will be lost when merging stock items"
msgstr ""
-#: templates/js/translated/stock.js:799
+#: templates/js/translated/stock.js:798
msgid "Stock transaction history will be deleted for merged items"
msgstr ""
-#: templates/js/translated/stock.js:800
+#: templates/js/translated/stock.js:799
msgid "Supplier part information will be deleted for merged items"
msgstr ""
-#: templates/js/translated/stock.js:891
+#: templates/js/translated/stock.js:890
msgid "Confirm stock item merge"
msgstr ""
-#: templates/js/translated/stock.js:892
+#: templates/js/translated/stock.js:891
msgid "Merge Stock Items"
msgstr ""
-#: templates/js/translated/stock.js:987
+#: templates/js/translated/stock.js:986
msgid "Transfer Stock"
msgstr ""
-#: templates/js/translated/stock.js:988
+#: templates/js/translated/stock.js:987
msgid "Move"
msgstr ""
-#: templates/js/translated/stock.js:994
+#: templates/js/translated/stock.js:993
msgid "Count Stock"
msgstr ""
-#: templates/js/translated/stock.js:995
+#: templates/js/translated/stock.js:994
msgid "Count"
msgstr ""
-#: templates/js/translated/stock.js:999
+#: templates/js/translated/stock.js:998
msgid "Remove Stock"
msgstr ""
-#: templates/js/translated/stock.js:1000
+#: templates/js/translated/stock.js:999
msgid "Take"
msgstr ""
-#: templates/js/translated/stock.js:1004
+#: templates/js/translated/stock.js:1003
msgid "Add Stock"
msgstr ""
-#: templates/js/translated/stock.js:1005 users/models.py:243
+#: templates/js/translated/stock.js:1004 users/models.py:249
msgid "Add"
msgstr ""
-#: templates/js/translated/stock.js:1009
+#: templates/js/translated/stock.js:1008
msgid "Delete Stock"
msgstr ""
-#: templates/js/translated/stock.js:1106
+#: templates/js/translated/stock.js:1105
msgid "Quantity cannot be adjusted for serialized stock"
msgstr ""
-#: templates/js/translated/stock.js:1106
+#: templates/js/translated/stock.js:1105
msgid "Specify stock quantity"
msgstr ""
-#: templates/js/translated/stock.js:1140
+#: templates/js/translated/stock.js:1139 templates/js/translated/stock.js:3151
msgid "Select Stock Items"
msgstr ""
-#: templates/js/translated/stock.js:1141
-msgid "You must select at least one available stock item"
+#: templates/js/translated/stock.js:1140
+msgid "Select at least one available stock item"
msgstr ""
-#: templates/js/translated/stock.js:1168
+#: templates/js/translated/stock.js:1167
msgid "Confirm stock adjustment"
msgstr ""
-#: templates/js/translated/stock.js:1304
+#: templates/js/translated/stock.js:1303
msgid "PASS"
msgstr ""
-#: templates/js/translated/stock.js:1306
+#: templates/js/translated/stock.js:1305
msgid "FAIL"
msgstr ""
-#: templates/js/translated/stock.js:1311
+#: templates/js/translated/stock.js:1310
msgid "NO RESULT"
msgstr ""
-#: templates/js/translated/stock.js:1373
+#: templates/js/translated/stock.js:1372
msgid "Pass test"
msgstr ""
-#: templates/js/translated/stock.js:1376
+#: templates/js/translated/stock.js:1375
msgid "Add test result"
msgstr ""
-#: templates/js/translated/stock.js:1400
+#: templates/js/translated/stock.js:1399
msgid "No test results found"
msgstr ""
-#: templates/js/translated/stock.js:1464
+#: templates/js/translated/stock.js:1463
msgid "Test Date"
msgstr ""
-#: templates/js/translated/stock.js:1626
+#: templates/js/translated/stock.js:1625
msgid "Edit Test Result"
msgstr ""
-#: templates/js/translated/stock.js:1648
+#: templates/js/translated/stock.js:1647
msgid "Delete Test Result"
msgstr ""
-#: templates/js/translated/stock.js:1680
+#: templates/js/translated/stock.js:1679
msgid "In production"
msgstr ""
-#: templates/js/translated/stock.js:1684
+#: templates/js/translated/stock.js:1683
msgid "Installed in Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:1692
+#: templates/js/translated/stock.js:1691
msgid "Assigned to Sales Order"
msgstr ""
-#: templates/js/translated/stock.js:1698
+#: templates/js/translated/stock.js:1697
msgid "No stock location set"
msgstr ""
-#: templates/js/translated/stock.js:1746
+#: templates/js/translated/stock.js:1753
+msgid "Change stock status"
+msgstr ""
+
+#: templates/js/translated/stock.js:1762
+msgid "Merge stock"
+msgstr ""
+
+#: templates/js/translated/stock.js:1811
+msgid "Delete stock"
+msgstr ""
+
+#: templates/js/translated/stock.js:1866
msgid "stock items"
msgstr ""
-#: templates/js/translated/stock.js:1850
+#: templates/js/translated/stock.js:1871
+msgid "Scan to location"
+msgstr ""
+
+#: templates/js/translated/stock.js:1882
+msgid "Stock Actions"
+msgstr ""
+
+#: templates/js/translated/stock.js:1929
+msgid "Load installed items"
+msgstr ""
+
+#: templates/js/translated/stock.js:2007
msgid "Stock item is in production"
msgstr ""
-#: templates/js/translated/stock.js:1855
+#: templates/js/translated/stock.js:2012
msgid "Stock item assigned to sales order"
msgstr ""
-#: templates/js/translated/stock.js:1858
+#: templates/js/translated/stock.js:2015
msgid "Stock item assigned to customer"
msgstr ""
-#: templates/js/translated/stock.js:1861
+#: templates/js/translated/stock.js:2018
msgid "Serialized stock item has been allocated"
msgstr ""
-#: templates/js/translated/stock.js:1863
+#: templates/js/translated/stock.js:2020
msgid "Stock item has been fully allocated"
msgstr ""
-#: templates/js/translated/stock.js:1865
+#: templates/js/translated/stock.js:2022
msgid "Stock item has been partially allocated"
msgstr ""
-#: templates/js/translated/stock.js:1868
+#: templates/js/translated/stock.js:2025
msgid "Stock item has been installed in another item"
msgstr ""
-#: templates/js/translated/stock.js:1870
+#: templates/js/translated/stock.js:2027
msgid "Stock item has been consumed by a build order"
msgstr ""
-#: templates/js/translated/stock.js:1874
+#: templates/js/translated/stock.js:2031
msgid "Stock item has expired"
msgstr ""
-#: templates/js/translated/stock.js:1876
+#: templates/js/translated/stock.js:2033
msgid "Stock item will expire soon"
msgstr ""
-#: templates/js/translated/stock.js:1881
+#: templates/js/translated/stock.js:2038
msgid "Stock item has been rejected"
msgstr ""
-#: templates/js/translated/stock.js:1883
+#: templates/js/translated/stock.js:2040
msgid "Stock item is lost"
msgstr ""
-#: templates/js/translated/stock.js:1885
+#: templates/js/translated/stock.js:2042
msgid "Stock item is destroyed"
msgstr ""
-#: templates/js/translated/stock.js:1889
-#: templates/js/translated/table_filters.js:296
+#: templates/js/translated/stock.js:2046
+#: templates/js/translated/table_filters.js:302
msgid "Depleted"
msgstr ""
-#: templates/js/translated/stock.js:2031
+#: templates/js/translated/stock.js:2188
msgid "Supplier part not specified"
msgstr ""
-#: templates/js/translated/stock.js:2078
+#: templates/js/translated/stock.js:2235
msgid "Stock Value"
msgstr ""
-#: templates/js/translated/stock.js:2170
+#: templates/js/translated/stock.js:2358
msgid "No stock items matching query"
msgstr ""
-#: templates/js/translated/stock.js:2319
+#: templates/js/translated/stock.js:2450
msgid "stock locations"
msgstr ""
-#: templates/js/translated/stock.js:2476
+#: templates/js/translated/stock.js:2607
msgid "Load Subloactions"
msgstr ""
-#: templates/js/translated/stock.js:2583
+#: templates/js/translated/stock.js:2714
msgid "Details"
msgstr ""
-#: templates/js/translated/stock.js:2587
+#: templates/js/translated/stock.js:2718
msgid "No changes"
msgstr ""
-#: templates/js/translated/stock.js:2599
+#: templates/js/translated/stock.js:2730
msgid "Part information unavailable"
msgstr ""
-#: templates/js/translated/stock.js:2621
+#: templates/js/translated/stock.js:2752
msgid "Location no longer exists"
msgstr ""
-#: templates/js/translated/stock.js:2638
+#: templates/js/translated/stock.js:2769
msgid "Build order no longer exists"
msgstr ""
-#: templates/js/translated/stock.js:2653
+#: templates/js/translated/stock.js:2784
msgid "Purchase order no longer exists"
msgstr ""
-#: templates/js/translated/stock.js:2670
+#: templates/js/translated/stock.js:2801
msgid "Sales Order no longer exists"
msgstr ""
-#: templates/js/translated/stock.js:2687
+#: templates/js/translated/stock.js:2818
msgid "Return Order no longer exists"
msgstr ""
-#: templates/js/translated/stock.js:2706
+#: templates/js/translated/stock.js:2837
msgid "Customer no longer exists"
msgstr ""
-#: templates/js/translated/stock.js:2724
+#: templates/js/translated/stock.js:2855
msgid "Stock item no longer exists"
msgstr ""
-#: templates/js/translated/stock.js:2742
+#: templates/js/translated/stock.js:2873
msgid "Added"
msgstr ""
-#: templates/js/translated/stock.js:2750
+#: templates/js/translated/stock.js:2881
msgid "Removed"
msgstr ""
-#: templates/js/translated/stock.js:2826
+#: templates/js/translated/stock.js:2953
msgid "No installed items"
msgstr ""
-#: templates/js/translated/stock.js:2876 templates/js/translated/stock.js:2911
+#: templates/js/translated/stock.js:3003 templates/js/translated/stock.js:3038
msgid "Uninstall Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:2929
+#: templates/js/translated/stock.js:3056
msgid "Select stock item to uninstall"
msgstr ""
-#: templates/js/translated/stock.js:2950
+#: templates/js/translated/stock.js:3077
msgid "Install another stock item into this item"
msgstr ""
-#: templates/js/translated/stock.js:2951
+#: templates/js/translated/stock.js:3078
msgid "Stock items can only be installed if they meet the following criteria"
msgstr ""
-#: templates/js/translated/stock.js:2953
+#: templates/js/translated/stock.js:3080
msgid "The Stock Item links to a Part which is the BOM for this Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:2954
+#: templates/js/translated/stock.js:3081
msgid "The Stock Item is currently available in stock"
msgstr ""
-#: templates/js/translated/stock.js:2955
+#: templates/js/translated/stock.js:3082
msgid "The Stock Item is not already installed in another item"
msgstr ""
-#: templates/js/translated/stock.js:2956
+#: templates/js/translated/stock.js:3083
msgid "The Stock Item is tracked by either a batch code or serial number"
msgstr ""
-#: templates/js/translated/stock.js:2969
+#: templates/js/translated/stock.js:3096
msgid "Select part to install"
msgstr ""
+#: templates/js/translated/stock.js:3152
+msgid "Select one or more stock items"
+msgstr ""
+
+#: templates/js/translated/stock.js:3165
+msgid "Selected stock items"
+msgstr ""
+
+#: templates/js/translated/stock.js:3169
+msgid "Change Stock Status"
+msgstr ""
+
#: templates/js/translated/table_filters.js:50
msgid "Has project code"
msgstr ""
-#: templates/js/translated/table_filters.js:59
-#: templates/js/translated/table_filters.js:518
-#: templates/js/translated/table_filters.js:530
-#: templates/js/translated/table_filters.js:571
+#: templates/js/translated/table_filters.js:65
+#: templates/js/translated/table_filters.js:540
+#: templates/js/translated/table_filters.js:552
+#: templates/js/translated/table_filters.js:593
msgid "Order status"
msgstr ""
-#: templates/js/translated/table_filters.js:64
-#: templates/js/translated/table_filters.js:535
-#: templates/js/translated/table_filters.js:561
-#: templates/js/translated/table_filters.js:576
+#: templates/js/translated/table_filters.js:70
+#: templates/js/translated/table_filters.js:557
+#: templates/js/translated/table_filters.js:583
+#: templates/js/translated/table_filters.js:598
msgid "Outstanding"
msgstr ""
-#: templates/js/translated/table_filters.js:72
-#: templates/js/translated/table_filters.js:458
-#: templates/js/translated/table_filters.js:543
-#: templates/js/translated/table_filters.js:584
+#: templates/js/translated/table_filters.js:78
+#: templates/js/translated/table_filters.js:464
+#: templates/js/translated/table_filters.js:565
+#: templates/js/translated/table_filters.js:606
msgid "Assigned to me"
msgstr ""
-#: templates/js/translated/table_filters.js:128
+#: templates/js/translated/table_filters.js:134
msgid "Trackable Part"
msgstr ""
-#: templates/js/translated/table_filters.js:132
+#: templates/js/translated/table_filters.js:138
msgid "Assembled Part"
msgstr ""
-#: templates/js/translated/table_filters.js:136
+#: templates/js/translated/table_filters.js:142
msgid "Has Available Stock"
msgstr ""
-#: templates/js/translated/table_filters.js:152
+#: templates/js/translated/table_filters.js:158
msgid "Allow Variant Stock"
msgstr ""
-#: templates/js/translated/table_filters.js:164
-#: templates/js/translated/table_filters.js:692
+#: templates/js/translated/table_filters.js:170
+#: templates/js/translated/table_filters.js:714
msgid "Has Pricing"
msgstr ""
-#: templates/js/translated/table_filters.js:204
-#: templates/js/translated/table_filters.js:291
+#: templates/js/translated/table_filters.js:210
+#: templates/js/translated/table_filters.js:297
msgid "Include sublocations"
msgstr ""
-#: templates/js/translated/table_filters.js:205
+#: templates/js/translated/table_filters.js:211
msgid "Include locations"
msgstr ""
-#: templates/js/translated/table_filters.js:224
-#: templates/js/translated/table_filters.js:225
-#: templates/js/translated/table_filters.js:624
+#: templates/js/translated/table_filters.js:230
+#: templates/js/translated/table_filters.js:231
+#: templates/js/translated/table_filters.js:646
msgid "Include subcategories"
msgstr ""
-#: templates/js/translated/table_filters.js:233
-#: templates/js/translated/table_filters.js:672
+#: templates/js/translated/table_filters.js:239
+#: templates/js/translated/table_filters.js:694
msgid "Subscribed"
msgstr ""
-#: templates/js/translated/table_filters.js:244
-#: templates/js/translated/table_filters.js:326
+#: templates/js/translated/table_filters.js:250
+#: templates/js/translated/table_filters.js:332
msgid "Is Serialized"
msgstr ""
-#: templates/js/translated/table_filters.js:247
-#: templates/js/translated/table_filters.js:333
+#: templates/js/translated/table_filters.js:253
+#: templates/js/translated/table_filters.js:339
msgid "Serial number GTE"
msgstr ""
-#: templates/js/translated/table_filters.js:248
-#: templates/js/translated/table_filters.js:334
+#: templates/js/translated/table_filters.js:254
+#: templates/js/translated/table_filters.js:340
msgid "Serial number greater than or equal to"
msgstr ""
-#: templates/js/translated/table_filters.js:251
-#: templates/js/translated/table_filters.js:337
+#: templates/js/translated/table_filters.js:257
+#: templates/js/translated/table_filters.js:343
msgid "Serial number LTE"
msgstr ""
-#: templates/js/translated/table_filters.js:252
-#: templates/js/translated/table_filters.js:338
+#: templates/js/translated/table_filters.js:258
+#: templates/js/translated/table_filters.js:344
msgid "Serial number less than or equal to"
msgstr ""
-#: templates/js/translated/table_filters.js:255
-#: templates/js/translated/table_filters.js:256
-#: templates/js/translated/table_filters.js:329
-#: templates/js/translated/table_filters.js:330
+#: templates/js/translated/table_filters.js:261
+#: templates/js/translated/table_filters.js:262
+#: templates/js/translated/table_filters.js:335
+#: templates/js/translated/table_filters.js:336
msgid "Serial number"
msgstr "일련번호"
-#: templates/js/translated/table_filters.js:260
-#: templates/js/translated/table_filters.js:351
+#: templates/js/translated/table_filters.js:266
+#: templates/js/translated/table_filters.js:357
msgid "Batch code"
msgstr ""
-#: templates/js/translated/table_filters.js:271
-#: templates/js/translated/table_filters.js:613
+#: templates/js/translated/table_filters.js:277
+#: templates/js/translated/table_filters.js:635
msgid "Active parts"
msgstr ""
-#: templates/js/translated/table_filters.js:272
+#: templates/js/translated/table_filters.js:278
msgid "Show stock for active parts"
msgstr ""
-#: templates/js/translated/table_filters.js:277
+#: templates/js/translated/table_filters.js:283
msgid "Part is an assembly"
msgstr ""
-#: templates/js/translated/table_filters.js:281
+#: templates/js/translated/table_filters.js:287
msgid "Is allocated"
msgstr ""
-#: templates/js/translated/table_filters.js:282
+#: templates/js/translated/table_filters.js:288
msgid "Item has been allocated"
msgstr ""
-#: templates/js/translated/table_filters.js:287
+#: templates/js/translated/table_filters.js:293
msgid "Stock is available for use"
msgstr ""
-#: templates/js/translated/table_filters.js:292
+#: templates/js/translated/table_filters.js:298
msgid "Include stock in sublocations"
msgstr ""
-#: templates/js/translated/table_filters.js:297
+#: templates/js/translated/table_filters.js:303
msgid "Show stock items which are depleted"
msgstr ""
-#: templates/js/translated/table_filters.js:302
+#: templates/js/translated/table_filters.js:308
msgid "Show items which are in stock"
msgstr ""
-#: templates/js/translated/table_filters.js:306
+#: templates/js/translated/table_filters.js:312
msgid "In Production"
msgstr ""
-#: templates/js/translated/table_filters.js:307
+#: templates/js/translated/table_filters.js:313
msgid "Show items which are in production"
msgstr ""
-#: templates/js/translated/table_filters.js:311
+#: templates/js/translated/table_filters.js:317
msgid "Include Variants"
msgstr ""
-#: templates/js/translated/table_filters.js:312
+#: templates/js/translated/table_filters.js:318
msgid "Include stock items for variant parts"
msgstr ""
-#: templates/js/translated/table_filters.js:316
+#: templates/js/translated/table_filters.js:322
msgid "Installed"
msgstr ""
-#: templates/js/translated/table_filters.js:317
+#: templates/js/translated/table_filters.js:323
msgid "Show stock items which are installed in another item"
msgstr ""
-#: templates/js/translated/table_filters.js:322
+#: templates/js/translated/table_filters.js:328
msgid "Show items which have been assigned to a customer"
msgstr ""
-#: templates/js/translated/table_filters.js:342
-#: templates/js/translated/table_filters.js:343
+#: templates/js/translated/table_filters.js:348
+#: templates/js/translated/table_filters.js:349
msgid "Stock status"
msgstr ""
-#: templates/js/translated/table_filters.js:346
+#: templates/js/translated/table_filters.js:352
msgid "Has batch code"
msgstr ""
-#: templates/js/translated/table_filters.js:354
-msgid "Tracked"
-msgstr ""
-
-#: templates/js/translated/table_filters.js:355
+#: templates/js/translated/table_filters.js:361
msgid "Stock item is tracked by either batch code or serial number"
msgstr ""
-#: templates/js/translated/table_filters.js:360
+#: templates/js/translated/table_filters.js:366
msgid "Has purchase price"
msgstr ""
-#: templates/js/translated/table_filters.js:361
+#: templates/js/translated/table_filters.js:367
msgid "Show stock items which have a purchase price set"
msgstr ""
-#: templates/js/translated/table_filters.js:365
+#: templates/js/translated/table_filters.js:371
msgid "Expiry Date before"
msgstr ""
-#: templates/js/translated/table_filters.js:369
+#: templates/js/translated/table_filters.js:375
msgid "Expiry Date after"
msgstr ""
-#: templates/js/translated/table_filters.js:382
+#: templates/js/translated/table_filters.js:388
msgid "Show stock items which have expired"
msgstr ""
-#: templates/js/translated/table_filters.js:388
+#: templates/js/translated/table_filters.js:394
msgid "Show stock which is close to expiring"
msgstr ""
-#: templates/js/translated/table_filters.js:402
+#: templates/js/translated/table_filters.js:408
msgid "Test Passed"
msgstr ""
-#: templates/js/translated/table_filters.js:406
+#: templates/js/translated/table_filters.js:412
msgid "Include Installed Items"
msgstr ""
-#: templates/js/translated/table_filters.js:445
+#: templates/js/translated/table_filters.js:451
msgid "Build status"
msgstr ""
-#: templates/js/translated/table_filters.js:625
+#: templates/js/translated/table_filters.js:647
msgid "Include parts in subcategories"
msgstr ""
-#: templates/js/translated/table_filters.js:630
+#: templates/js/translated/table_filters.js:652
msgid "Show active parts"
msgstr ""
-#: templates/js/translated/table_filters.js:638
+#: templates/js/translated/table_filters.js:660
msgid "Available stock"
msgstr ""
-#: templates/js/translated/table_filters.js:646
-#: templates/js/translated/table_filters.js:742
+#: templates/js/translated/table_filters.js:668
+#: templates/js/translated/table_filters.js:764
msgid "Has Units"
msgstr ""
-#: templates/js/translated/table_filters.js:647
+#: templates/js/translated/table_filters.js:669
msgid "Part has defined units"
msgstr ""
-#: templates/js/translated/table_filters.js:651
+#: templates/js/translated/table_filters.js:673
msgid "Has IPN"
msgstr ""
-#: templates/js/translated/table_filters.js:652
+#: templates/js/translated/table_filters.js:674
msgid "Part has internal part number"
msgstr ""
-#: templates/js/translated/table_filters.js:656
+#: templates/js/translated/table_filters.js:678
msgid "In stock"
msgstr ""
-#: templates/js/translated/table_filters.js:664
+#: templates/js/translated/table_filters.js:686
msgid "Purchasable"
msgstr ""
-#: templates/js/translated/table_filters.js:676
+#: templates/js/translated/table_filters.js:698
msgid "Has stocktake entries"
msgstr ""
-#: templates/js/translated/table_filters.js:738
+#: templates/js/translated/table_filters.js:760
msgid "Has Choices"
msgstr ""
@@ -12390,51 +12551,51 @@ msgstr ""
msgid "Select File Format"
msgstr ""
-#: templates/js/translated/tables.js:561
+#: templates/js/translated/tables.js:537
msgid "Loading data"
msgstr ""
-#: templates/js/translated/tables.js:564
+#: templates/js/translated/tables.js:540
msgid "rows per page"
msgstr ""
-#: templates/js/translated/tables.js:569
+#: templates/js/translated/tables.js:545
msgid "Showing all rows"
msgstr ""
-#: templates/js/translated/tables.js:571
+#: templates/js/translated/tables.js:547
msgid "Showing"
msgstr ""
-#: templates/js/translated/tables.js:571
+#: templates/js/translated/tables.js:547
msgid "to"
msgstr ""
-#: templates/js/translated/tables.js:571
+#: templates/js/translated/tables.js:547
msgid "of"
msgstr ""
-#: templates/js/translated/tables.js:571
+#: templates/js/translated/tables.js:547
msgid "rows"
msgstr ""
-#: templates/js/translated/tables.js:578
+#: templates/js/translated/tables.js:554
msgid "No matching results"
msgstr ""
-#: templates/js/translated/tables.js:581
+#: templates/js/translated/tables.js:557
msgid "Hide/Show pagination"
msgstr ""
-#: templates/js/translated/tables.js:587
+#: templates/js/translated/tables.js:563
msgid "Toggle"
msgstr ""
-#: templates/js/translated/tables.js:590
+#: templates/js/translated/tables.js:566
msgid "Columns"
msgstr ""
-#: templates/js/translated/tables.js:593
+#: templates/js/translated/tables.js:569
msgid "All"
msgstr ""
@@ -12616,50 +12777,6 @@ msgstr ""
msgid "Email settings not configured"
msgstr ""
-#: templates/stock_table.html:17
-msgid "Barcode Actions"
-msgstr ""
-
-#: templates/stock_table.html:28
-msgid "Stock Options"
-msgstr ""
-
-#: templates/stock_table.html:33
-msgid "Add to selected stock items"
-msgstr ""
-
-#: templates/stock_table.html:34
-msgid "Remove from selected stock items"
-msgstr ""
-
-#: templates/stock_table.html:35
-msgid "Stocktake selected stock items"
-msgstr ""
-
-#: templates/stock_table.html:36
-msgid "Move selected stock items"
-msgstr ""
-
-#: templates/stock_table.html:37
-msgid "Merge selected stock items"
-msgstr ""
-
-#: templates/stock_table.html:37
-msgid "Merge stock"
-msgstr ""
-
-#: templates/stock_table.html:38
-msgid "Order selected items"
-msgstr ""
-
-#: templates/stock_table.html:42
-msgid "Delete selected items"
-msgstr ""
-
-#: templates/stock_table.html:42
-msgid "Delete stock"
-msgstr ""
-
#: templates/yesnolabel.html:4
msgid "Yes"
msgstr ""
@@ -12692,35 +12809,35 @@ msgstr ""
msgid "Important dates"
msgstr ""
-#: users/models.py:230
+#: users/models.py:236
msgid "Permission set"
msgstr ""
-#: users/models.py:238
+#: users/models.py:244
msgid "Group"
msgstr ""
-#: users/models.py:241
+#: users/models.py:247
msgid "View"
msgstr ""
-#: users/models.py:241
+#: users/models.py:247
msgid "Permission to view items"
msgstr ""
-#: users/models.py:243
+#: users/models.py:249
msgid "Permission to add items"
msgstr ""
-#: users/models.py:245
+#: users/models.py:251
msgid "Change"
msgstr ""
-#: users/models.py:245
+#: users/models.py:251
msgid "Permissions to edit items"
msgstr ""
-#: users/models.py:247
+#: users/models.py:253
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 0af7efebbb..daeb6fce30 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: 2023-06-09 00:32+0000\n"
-"PO-Revision-Date: 2023-06-09 10:27\n"
+"POT-Creation-Date: 2023-06-20 07:01+0000\n"
+"PO-Revision-Date: 2023-06-20 07:06\n"
"Last-Translator: \n"
"Language-Team: Dutch\n"
"Language: nl_NL\n"
@@ -49,26 +49,26 @@ msgstr "Error details kunnen worden gevonden in het admin scherm"
msgid "Enter date"
msgstr "Voer datum in"
-#: InvenTree/fields.py:206 InvenTree/models.py:766 build/serializers.py:427
-#: build/serializers.py:506 build/templates/build/sidebar.html:23
-#: company/models.py:597 company/templates/company/sidebar.html:35
-#: order/models.py:1089 order/templates/order/po_sidebar.html:11
+#: InvenTree/fields.py:206 InvenTree/models.py:766 build/serializers.py:435
+#: build/serializers.py:514 build/templates/build/sidebar.html:21
+#: company/models.py:746 company/templates/company/sidebar.html:37
+#: order/models.py:1102 order/templates/order/po_sidebar.html:11
#: order/templates/order/return_order_sidebar.html:9
#: order/templates/order/so_sidebar.html:17 part/admin.py:41
-#: part/models.py:3005 part/templates/part/part_sidebar.html:63
+#: part/models.py:3039 part/templates/part/part_sidebar.html:63
#: report/templates/report/inventree_build_order_base.html:172
#: stock/admin.py:121 stock/models.py:2160 stock/models.py:2268
-#: stock/serializers.py:342 stock/serializers.py:475 stock/serializers.py:556
-#: stock/serializers.py:839 stock/serializers.py:938 stock/serializers.py:1070
-#: stock/templates/stock/stock_sidebar.html:25
-#: templates/js/translated/barcode.js:143 templates/js/translated/bom.js:1224
-#: templates/js/translated/company.js:1294 templates/js/translated/order.js:347
-#: templates/js/translated/part.js:1054
-#: templates/js/translated/purchase_order.js:2168
-#: templates/js/translated/return_order.js:760
-#: templates/js/translated/sales_order.js:1055
-#: templates/js/translated/sales_order.js:1959
-#: templates/js/translated/stock.js:1460 templates/js/translated/stock.js:2164
+#: stock/serializers.py:408 stock/serializers.py:542 stock/serializers.py:623
+#: stock/serializers.py:681 stock/serializers.py:956 stock/serializers.py:1055
+#: stock/serializers.py:1187 stock/templates/stock/stock_sidebar.html:25
+#: templates/js/translated/barcode.js:143 templates/js/translated/bom.js:1244
+#: templates/js/translated/company.js:1715 templates/js/translated/order.js:347
+#: templates/js/translated/part.js:1053
+#: templates/js/translated/purchase_order.js:2178
+#: templates/js/translated/return_order.js:772
+#: templates/js/translated/sales_order.js:1067
+#: templates/js/translated/sales_order.js:1971
+#: templates/js/translated/stock.js:1459 templates/js/translated/stock.js:2321
msgid "Notes"
msgstr "Opmerkingen"
@@ -81,47 +81,51 @@ msgstr "Waarde '{name}' verschijnt niet in patroonformaat"
msgid "Provided value does not match required pattern: "
msgstr "Opgegeven waarde komt niet overeen met vereist patroon: "
-#: InvenTree/forms.py:145
+#: InvenTree/forms.py:147
msgid "Enter password"
msgstr "Voer wachtwoord in"
-#: InvenTree/forms.py:146
+#: InvenTree/forms.py:148
msgid "Enter new password"
msgstr "Voer een nieuw wachtwoord in"
-#: InvenTree/forms.py:155
+#: InvenTree/forms.py:157
msgid "Confirm password"
msgstr "Wachtwoord bevestigen"
-#: InvenTree/forms.py:156
+#: InvenTree/forms.py:158
msgid "Confirm new password"
msgstr "Nieuw wachtwoord bevestigen"
-#: InvenTree/forms.py:160
+#: InvenTree/forms.py:162
msgid "Old password"
msgstr "Oude wachtwoord"
-#: InvenTree/forms.py:179
+#: InvenTree/forms.py:181
msgid "Email (again)"
msgstr "E-mailadres (opnieuw)"
-#: InvenTree/forms.py:183
+#: InvenTree/forms.py:185
msgid "Email address confirmation"
msgstr "E-mailadres bevestiging"
-#: InvenTree/forms.py:204
+#: InvenTree/forms.py:206
msgid "You must type the same email each time."
msgstr "Er moet hetzelfde e-mailadres ingevoerd worden."
-#: InvenTree/forms.py:230 InvenTree/forms.py:236
+#: InvenTree/forms.py:237 InvenTree/forms.py:243
msgid "The provided primary email address is not valid."
msgstr "Het opgegeven primaire e-mailadres is ongeldig."
-#: InvenTree/forms.py:242
+#: InvenTree/forms.py:249
msgid "The provided email domain is not approved."
msgstr "Het ingevoerde e-maildomein is niet goedgekeurd."
-#: InvenTree/helpers.py:462 order/models.py:442 order/models.py:611
+#: InvenTree/forms.py:345
+msgid "Registration is disabled."
+msgstr ""
+
+#: InvenTree/helpers.py:462 order/models.py:455 order/models.py:624
msgid "Invalid quantity provided"
msgstr "Ongeldige hoeveelheid ingevoerd"
@@ -239,7 +243,7 @@ msgstr "Externe link ontbreekt"
#: InvenTree/models.py:486 stock/models.py:2262
#: templates/js/translated/attachment.js:119
-#: templates/js/translated/attachment.js:306
+#: templates/js/translated/attachment.js:316
msgid "Attachment"
msgstr "Bijlage"
@@ -247,29 +251,30 @@ msgstr "Bijlage"
msgid "Select file to attach"
msgstr "Bestand als bijlage selecteren"
-#: InvenTree/models.py:493 common/models.py:2695 company/models.py:132
-#: company/models.py:306 company/models.py:584 order/models.py:236
-#: order/models.py:1093 order/models.py:1453 part/admin.py:39
-#: part/models.py:901 part/templates/part/part_scheduling.html:11
+#: InvenTree/models.py:493 common/models.py:2681 company/models.py:128
+#: company/models.py:381 company/models.py:455 company/models.py:733
+#: order/models.py:240 order/models.py:1106 order/models.py:1466
+#: part/admin.py:39 part/models.py:902
+#: part/templates/part/part_scheduling.html:11
#: report/templates/report/inventree_build_order_base.html:164
-#: stock/admin.py:120 templates/js/translated/company.js:977
-#: templates/js/translated/company.js:1283 templates/js/translated/order.js:351
-#: templates/js/translated/part.js:2316
-#: templates/js/translated/purchase_order.js:2008
-#: templates/js/translated/purchase_order.js:2172
-#: templates/js/translated/return_order.js:764
-#: templates/js/translated/sales_order.js:1044
-#: templates/js/translated/sales_order.js:1964
+#: stock/admin.py:120 templates/js/translated/company.js:1350
+#: templates/js/translated/company.js:1704 templates/js/translated/order.js:351
+#: templates/js/translated/part.js:2392
+#: templates/js/translated/purchase_order.js:2018
+#: templates/js/translated/purchase_order.js:2182
+#: templates/js/translated/return_order.js:776
+#: templates/js/translated/sales_order.js:1056
+#: templates/js/translated/sales_order.js:1976
msgid "Link"
msgstr "Link"
-#: InvenTree/models.py:494 build/models.py:291 part/models.py:902
+#: InvenTree/models.py:494 build/models.py:295 part/models.py:903
#: stock/models.py:735
msgid "Link to external URL"
msgstr "Link naar externe URL"
#: InvenTree/models.py:497 templates/js/translated/attachment.js:120
-#: templates/js/translated/attachment.js:321
+#: templates/js/translated/attachment.js:331
msgid "Comment"
msgstr "Opmerking"
@@ -277,13 +282,13 @@ msgstr "Opmerking"
msgid "File comment"
msgstr "Bestand opmerking"
-#: InvenTree/models.py:503 InvenTree/models.py:504 common/models.py:2154
-#: common/models.py:2155 common/models.py:2368 common/models.py:2369
-#: common/models.py:2625 common/models.py:2626 part/models.py:3013
-#: part/models.py:3101 part/models.py:3180 part/models.py:3200
-#: plugin/models.py:217 plugin/models.py:218
+#: InvenTree/models.py:503 InvenTree/models.py:504 common/models.py:2140
+#: common/models.py:2141 common/models.py:2354 common/models.py:2355
+#: common/models.py:2611 common/models.py:2612 part/models.py:3047
+#: part/models.py:3135 part/models.py:3214 part/models.py:3234
+#: plugin/models.py:218 plugin/models.py:219
#: report/templates/report/inventree_test_report_base.html:105
-#: templates/js/translated/stock.js:2773
+#: templates/js/translated/stock.js:2904
msgid "User"
msgstr "Gebruiker"
@@ -324,53 +329,54 @@ msgstr "Dubbele namen kunnen niet bestaan onder hetzelfde bovenliggende object"
msgid "Invalid choice"
msgstr "Ongeldige keuze"
-#: InvenTree/models.py:648 InvenTree/models.py:649 common/models.py:2354
-#: company/models.py:390 label/models.py:103 part/models.py:847
-#: part/models.py:3400 plugin/models.py:41 report/models.py:160
+#: InvenTree/models.py:648 InvenTree/models.py:649 common/models.py:2340
+#: company/models.py:539 label/models.py:111 part/models.py:848
+#: part/models.py:3434 plugin/models.py:42 report/models.py:160
#: templates/InvenTree/settings/mixins/urls.html:13
#: templates/InvenTree/settings/notifications.html:17
-#: templates/InvenTree/settings/plugin.html:80
+#: templates/InvenTree/settings/plugin.html:74
#: templates/InvenTree/settings/plugin_settings.html:22
-#: templates/js/translated/company.js:658
-#: templates/js/translated/company.js:706
-#: templates/js/translated/company.js:871
-#: templates/js/translated/company.js:1071 templates/js/translated/part.js:1160
-#: templates/js/translated/part.js:1447 templates/js/translated/part.js:1583
-#: templates/js/translated/part.js:2699 templates/js/translated/stock.js:2464
+#: templates/js/translated/company.js:665
+#: templates/js/translated/company.js:713
+#: templates/js/translated/company.js:940
+#: templates/js/translated/company.js:1196
+#: templates/js/translated/company.js:1444 templates/js/translated/part.js:1159
+#: templates/js/translated/part.js:1446 templates/js/translated/part.js:1582
+#: templates/js/translated/part.js:2684 templates/js/translated/stock.js:2595
msgid "Name"
msgstr "Naam"
-#: InvenTree/models.py:655 build/models.py:164
+#: InvenTree/models.py:655 build/models.py:168
#: build/templates/build/detail.html:24 common/models.py:111
-#: company/models.py:312 company/models.py:590
+#: company/models.py:461 company/models.py:739
#: company/templates/company/company_base.html:72
#: company/templates/company/manufacturer_part.html:75
-#: company/templates/company/supplier_part.html:108 label/models.py:110
-#: order/models.py:232 order/models.py:1117 part/admin.py:194 part/admin.py:276
-#: part/models.py:869 part/models.py:3416 part/templates/part/category.html:81
+#: company/templates/company/supplier_part.html:108 label/models.py:118
+#: order/models.py:232 order/models.py:1130 part/admin.py:194 part/admin.py:276
+#: part/models.py:870 part/models.py:3450 part/templates/part/category.html:81
#: part/templates/part/part_base.html:172
#: part/templates/part/part_scheduling.html:12 report/models.py:173
-#: report/models.py:587 report/models.py:631
+#: report/models.py:589 report/models.py:633
#: report/templates/report/inventree_build_order_base.html:117
#: stock/admin.py:41 stock/templates/stock/location.html:123
#: templates/InvenTree/settings/notifications.html:19
#: templates/InvenTree/settings/plugin_settings.html:27
#: templates/InvenTree/settings/settings_staff_js.html:75
-#: templates/js/translated/bom.js:632 templates/js/translated/bom.js:933
-#: templates/js/translated/build.js:2857 templates/js/translated/company.js:510
-#: templates/js/translated/company.js:988
-#: templates/js/translated/company.js:1251 templates/js/translated/order.js:298
-#: templates/js/translated/part.js:1212 templates/js/translated/part.js:1456
-#: templates/js/translated/part.js:1594 templates/js/translated/part.js:1933
-#: templates/js/translated/part.js:2247 templates/js/translated/part.js:2735
-#: templates/js/translated/part.js:2826
-#: templates/js/translated/purchase_order.js:1666
-#: templates/js/translated/purchase_order.js:1812
-#: templates/js/translated/purchase_order.js:1990
-#: templates/js/translated/return_order.js:302
-#: templates/js/translated/sales_order.js:790
-#: templates/js/translated/stock.js:1439 templates/js/translated/stock.js:1817
-#: templates/js/translated/stock.js:2496 templates/js/translated/stock.js:2568
+#: templates/js/translated/bom.js:633 templates/js/translated/bom.js:951
+#: templates/js/translated/build.js:2062 templates/js/translated/company.js:517
+#: templates/js/translated/company.js:1361
+#: templates/js/translated/company.js:1672 templates/js/translated/index.js:114
+#: templates/js/translated/order.js:298 templates/js/translated/part.js:1211
+#: templates/js/translated/part.js:1455 templates/js/translated/part.js:1593
+#: templates/js/translated/part.js:1932 templates/js/translated/part.js:2323
+#: templates/js/translated/part.js:2720 templates/js/translated/part.js:2811
+#: templates/js/translated/purchase_order.js:1681
+#: templates/js/translated/purchase_order.js:1827
+#: templates/js/translated/purchase_order.js:2000
+#: templates/js/translated/return_order.js:314
+#: templates/js/translated/sales_order.js:802
+#: templates/js/translated/stock.js:1438 templates/js/translated/stock.js:1974
+#: templates/js/translated/stock.js:2627 templates/js/translated/stock.js:2699
msgid "Description"
msgstr "Omschrijving"
@@ -383,7 +389,7 @@ msgid "parent"
msgstr "bovenliggende"
#: InvenTree/models.py:671 InvenTree/models.py:672
-#: templates/js/translated/part.js:2744 templates/js/translated/stock.js:2505
+#: templates/js/translated/part.js:2729 templates/js/translated/stock.js:2636
msgid "Path"
msgstr "Pad"
@@ -419,12 +425,12 @@ msgstr "Serverfout"
msgid "An error has been logged by the server."
msgstr "Er is een fout gelogd door de server."
-#: InvenTree/serializers.py:60 part/models.py:3897
+#: InvenTree/serializers.py:60 part/models.py:3941
msgid "Must be a valid number"
msgstr "Moet een geldig nummer zijn"
-#: InvenTree/serializers.py:90 company/models.py:154
-#: company/templates/company/company_base.html:107 part/models.py:2852
+#: InvenTree/serializers.py:90 company/models.py:150
+#: company/templates/company/company_base.html:107 part/models.py:2886
#: templates/InvenTree/settings/settings_staff_js.html:44
#: templates/currency_data.html:5
msgid "Currency"
@@ -497,130 +503,130 @@ 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:714
+#: InvenTree/settings.py:741
msgid "Czech"
msgstr "Tsjechisch"
-#: InvenTree/settings.py:715
+#: InvenTree/settings.py:742
msgid "Danish"
msgstr "Deens"
-#: InvenTree/settings.py:716
+#: InvenTree/settings.py:743
msgid "German"
msgstr "Duits"
-#: InvenTree/settings.py:717
+#: InvenTree/settings.py:744
msgid "Greek"
msgstr "Grieks"
-#: InvenTree/settings.py:718
+#: InvenTree/settings.py:745
msgid "English"
msgstr "Engels"
-#: InvenTree/settings.py:719
+#: InvenTree/settings.py:746
msgid "Spanish"
msgstr "Spaans"
-#: InvenTree/settings.py:720
+#: InvenTree/settings.py:747
msgid "Spanish (Mexican)"
msgstr "Spaans (Mexicaans)"
-#: InvenTree/settings.py:721
+#: InvenTree/settings.py:748
msgid "Farsi / Persian"
msgstr "Farsi / Perzisch"
-#: InvenTree/settings.py:722
+#: InvenTree/settings.py:749
msgid "Finnish"
msgstr ""
-#: InvenTree/settings.py:723
+#: InvenTree/settings.py:750
msgid "French"
msgstr "Frans"
-#: InvenTree/settings.py:724
+#: InvenTree/settings.py:751
msgid "Hebrew"
msgstr "Hebreeuws"
-#: InvenTree/settings.py:725
+#: InvenTree/settings.py:752
msgid "Hungarian"
msgstr "Hongaars"
-#: InvenTree/settings.py:726
+#: InvenTree/settings.py:753
msgid "Italian"
msgstr "Italiaans"
-#: InvenTree/settings.py:727
+#: InvenTree/settings.py:754
msgid "Japanese"
msgstr "Japans"
-#: InvenTree/settings.py:728
+#: InvenTree/settings.py:755
msgid "Korean"
msgstr "Koreaans"
-#: InvenTree/settings.py:729
+#: InvenTree/settings.py:756
msgid "Dutch"
msgstr "Nederlands"
-#: InvenTree/settings.py:730
+#: InvenTree/settings.py:757
msgid "Norwegian"
msgstr "Noors"
-#: InvenTree/settings.py:731
+#: InvenTree/settings.py:758
msgid "Polish"
msgstr "Pools"
-#: InvenTree/settings.py:732
+#: InvenTree/settings.py:759
msgid "Portuguese"
msgstr "Portugees"
-#: InvenTree/settings.py:733
+#: InvenTree/settings.py:760
msgid "Portuguese (Brazilian)"
msgstr "Portugees (Braziliaans)"
-#: InvenTree/settings.py:734
+#: InvenTree/settings.py:761
msgid "Russian"
msgstr "Russisch"
-#: InvenTree/settings.py:735
+#: InvenTree/settings.py:762
msgid "Slovenian"
msgstr "Sloveens"
-#: InvenTree/settings.py:736
+#: InvenTree/settings.py:763
msgid "Swedish"
msgstr "Zweeds"
-#: InvenTree/settings.py:737
+#: InvenTree/settings.py:764
msgid "Thai"
msgstr "Thais"
-#: InvenTree/settings.py:738
+#: InvenTree/settings.py:765
msgid "Turkish"
msgstr "Turks"
-#: InvenTree/settings.py:739
+#: InvenTree/settings.py:766
msgid "Vietnamese"
msgstr "Vietnamees"
-#: InvenTree/settings.py:740
+#: InvenTree/settings.py:767
msgid "Chinese"
msgstr "Chinees"
-#: InvenTree/status.py:61 part/serializers.py:878
+#: InvenTree/status.py:68 part/serializers.py:940
msgid "Background worker check failed"
msgstr "Achtergrondwerker check is gefaald"
-#: InvenTree/status.py:65
+#: InvenTree/status.py:72
msgid "Email backend not configured"
msgstr "E-mailbackend niet geconfigureerd"
-#: InvenTree/status.py:68
+#: InvenTree/status.py:75
msgid "InvenTree system health checks failed"
msgstr "InvenTree gezondsheidschecks mislukt"
#: InvenTree/status_codes.py:12 InvenTree/status_codes.py:40
#: InvenTree/status_codes.py:148 InvenTree/status_codes.py:167
#: InvenTree/status_codes.py:188 generic/states/tests.py:16
-#: templates/js/translated/table_filters.js:511
+#: templates/js/translated/table_filters.js:533
msgid "Pending"
msgstr "Bezig"
@@ -630,7 +636,7 @@ msgstr "Geplaatst"
#: InvenTree/status_codes.py:14 InvenTree/status_codes.py:151
#: InvenTree/status_codes.py:172 generic/states/tests.py:18
-#: order/templates/order/order_base.html:162
+#: order/templates/order/order_base.html:158
#: order/templates/order/sales_order_base.html:162
msgid "Complete"
msgstr "Voltooid"
@@ -654,10 +660,10 @@ msgstr "Retour"
msgid "In Progress"
msgstr "In Behandeling"
-#: InvenTree/status_codes.py:42 order/models.py:1332
-#: templates/js/translated/sales_order.js:1509
-#: templates/js/translated/sales_order.js:1630
-#: templates/js/translated/sales_order.js:1934
+#: InvenTree/status_codes.py:42 order/models.py:1345
+#: templates/js/translated/sales_order.js:1521
+#: templates/js/translated/sales_order.js:1642
+#: templates/js/translated/sales_order.js:1946
msgid "Shipped"
msgstr "Verzonden"
@@ -689,7 +695,7 @@ msgstr "In quarantaine geplaatst"
msgid "Legacy stock tracking entry"
msgstr "Verouderde volgcode"
-#: InvenTree/status_codes.py:93 templates/js/translated/stock.js:511
+#: InvenTree/status_codes.py:93 templates/js/translated/stock.js:510
msgid "Stock item created"
msgstr "Voorraaditem gemaakt"
@@ -745,7 +751,7 @@ msgstr "Splits van bovenliggend item"
msgid "Split child item"
msgstr "Splits onderliggende item"
-#: InvenTree/status_codes.py:120 templates/js/translated/stock.js:2243
+#: InvenTree/status_codes.py:120 templates/js/translated/stock.js:1769
msgid "Merged stock items"
msgstr "Samengevoegde voorraadartikelen"
@@ -765,7 +771,7 @@ msgstr "Product voltooid"
msgid "Build order output rejected"
msgstr ""
-#: InvenTree/status_codes.py:129 templates/js/translated/stock.js:1676
+#: InvenTree/status_codes.py:129 templates/js/translated/stock.js:1675
msgid "Consumed by build order"
msgstr "Verbruikt door productieorder"
@@ -781,7 +787,7 @@ msgstr "Ontvangen onder verkooporder"
msgid "Returned against Return Order"
msgstr "Geretourneerd onder retourorder"
-#: InvenTree/status_codes.py:141 templates/js/translated/table_filters.js:321
+#: InvenTree/status_codes.py:141 templates/js/translated/table_filters.js:327
msgid "Sent to customer"
msgstr "Naar klant verzonden"
@@ -849,83 +855,111 @@ msgstr "Wachtwoordvelden komen niet overeen"
msgid "Wrong password provided"
msgstr "Onjuist wachtwoord opgegeven"
-#: InvenTree/views.py:651 templates/navbar.html:157
+#: InvenTree/views.py:653 templates/navbar.html:157
msgid "System Information"
msgstr "Systeeminformatie"
-#: InvenTree/views.py:658 templates/navbar.html:168
+#: InvenTree/views.py:660 templates/navbar.html:168
msgid "About InvenTree"
msgstr "Over InvenTree"
-#: build/api.py:222
+#: build/api.py:242
msgid "Build must be cancelled before it can be deleted"
msgstr "Productie moet geannuleerd worden voordat het kan worden verwijderd"
-#: build/models.py:69 build/templates/build/build_base.html:9
+#: build/api.py:286 part/models.py:3833 templates/js/translated/bom.js:985
+#: templates/js/translated/bom.js:1025 templates/js/translated/build.js:2449
+#: templates/js/translated/table_filters.js:166
+#: templates/js/translated/table_filters.js:518
+msgid "Consumable"
+msgstr ""
+
+#: build/api.py:287 part/models.py:3827 part/templates/part/upload_bom.html:58
+#: templates/js/translated/bom.js:989 templates/js/translated/bom.js:1016
+#: templates/js/translated/build.js:2458
+#: templates/js/translated/table_filters.js:162
+#: templates/js/translated/table_filters.js:191
+#: templates/js/translated/table_filters.js:522
+msgid "Optional"
+msgstr ""
+
+#: build/api.py:288 templates/js/translated/table_filters.js:360
+#: templates/js/translated/table_filters.js:514
+msgid "Tracked"
+msgstr ""
+
+#: build/api.py:290 part/admin.py:64 templates/js/translated/build.js:1670
+#: templates/js/translated/build.js:2549
+#: templates/js/translated/sales_order.js:1918
+#: templates/js/translated/table_filters.js:506
+msgid "Allocated"
+msgstr "Toegewezen"
+
+#: build/models.py:73 build/templates/build/build_base.html:9
#: build/templates/build/build_base.html:27
#: report/templates/report/inventree_build_order_base.html:105
#: templates/email/build_order_completed.html:16
#: templates/email/overdue_build_order.html:15
-#: templates/js/translated/build.js:945 templates/js/translated/stock.js:2629
+#: templates/js/translated/build.js:953 templates/js/translated/stock.js:2760
msgid "Build Order"
msgstr "Productieorder"
-#: build/models.py:70 build/templates/build/build_base.html:13
+#: build/models.py:74 build/templates/build/build_base.html:13
#: build/templates/build/index.html:8 build/templates/build/index.html:12
-#: order/templates/order/sales_order_detail.html:119
+#: order/templates/order/sales_order_detail.html:111
#: order/templates/order/so_sidebar.html:13
-#: part/templates/part/part_sidebar.html:22 templates/InvenTree/index.html:244
+#: part/templates/part/part_sidebar.html:22 templates/InvenTree/index.html:196
#: templates/InvenTree/search.html:141
#: templates/InvenTree/settings/sidebar.html:53
-#: templates/js/translated/search.js:228 users/models.py:42
+#: templates/js/translated/search.js:186 users/models.py:42
msgid "Build Orders"
msgstr "Productieorders"
-#: build/models.py:111
+#: build/models.py:115
msgid "Invalid choice for parent build"
msgstr "Ongeldige keuze voor bovenliggende productie"
-#: build/models.py:155
+#: build/models.py:159
msgid "Build Order Reference"
msgstr "Productieorderreferentie"
-#: build/models.py:156 order/models.py:359 order/models.py:765
-#: order/models.py:1087 order/models.py:1724 part/admin.py:278
-#: part/models.py:3798 part/templates/part/upload_bom.html:54
+#: build/models.py:160 order/models.py:372 order/models.py:778
+#: order/models.py:1100 order/models.py:1737 part/admin.py:278
+#: part/models.py:3842 part/templates/part/upload_bom.html:54
#: report/templates/report/inventree_bill_of_materials_report.html:139
#: report/templates/report/inventree_po_report_base.html:28
#: report/templates/report/inventree_return_order_report_base.html:26
#: report/templates/report/inventree_so_report_base.html:28
-#: templates/js/translated/bom.js:769 templates/js/translated/bom.js:943
-#: templates/js/translated/build.js:2098 templates/js/translated/order.js:291
+#: templates/js/translated/bom.js:770 templates/js/translated/bom.js:961
+#: templates/js/translated/build.js:2441 templates/js/translated/order.js:291
#: templates/js/translated/pricing.js:386
-#: templates/js/translated/purchase_order.js:2033
-#: templates/js/translated/return_order.js:713
-#: templates/js/translated/sales_order.js:1798
+#: templates/js/translated/purchase_order.js:2043
+#: templates/js/translated/return_order.js:725
+#: templates/js/translated/sales_order.js:1810
msgid "Reference"
msgstr "Referentie"
-#: build/models.py:167
+#: build/models.py:171
msgid "Brief description of the build (optional)"
msgstr ""
-#: build/models.py:175 build/templates/build/build_base.html:183
+#: build/models.py:179 build/templates/build/build_base.html:184
#: build/templates/build/detail.html:87
msgid "Parent Build"
msgstr "Bovenliggende Productie"
-#: build/models.py:176
+#: build/models.py:180
msgid "BuildOrder to which this build is allocated"
msgstr "Productieorder waar deze productie aan is toegewezen"
-#: build/models.py:181 build/templates/build/build_base.html:98
-#: build/templates/build/detail.html:29 company/models.py:775
-#: order/models.py:1195 order/models.py:1311 order/models.py:1312
-#: part/models.py:391 part/models.py:2865 part/models.py:2979
-#: part/models.py:3119 part/models.py:3138 part/models.py:3157
-#: part/models.py:3178 part/models.py:3270 part/models.py:3555
-#: part/models.py:3663 part/models.py:3763 part/models.py:4077
-#: part/serializers.py:842 part/serializers.py:1245
+#: build/models.py:185 build/templates/build/build_base.html:98
+#: build/templates/build/detail.html:29 company/models.py:924
+#: order/models.py:1208 order/models.py:1324 order/models.py:1325
+#: part/models.py:392 part/models.py:2899 part/models.py:3013
+#: part/models.py:3153 part/models.py:3172 part/models.py:3191
+#: part/models.py:3212 part/models.py:3304 part/models.py:3589
+#: part/models.py:3712 part/models.py:3807 part/models.py:4121
+#: part/serializers.py:904 part/serializers.py:1307
#: part/templates/part/part_app_base.html:8
#: part/templates/part/part_pricing.html:12
#: part/templates/part/upload_bom.html:52
@@ -935,266 +969,229 @@ msgstr "Productieorder waar deze productie aan is toegewezen"
#: report/templates/report/inventree_po_report_base.html:27
#: report/templates/report/inventree_return_order_report_base.html:24
#: report/templates/report/inventree_so_report_base.html:27
-#: stock/serializers.py:156 stock/serializers.py:509
+#: stock/serializers.py:205 stock/serializers.py:576
#: templates/InvenTree/search.html:82
#: templates/email/build_order_completed.html:17
#: templates/email/build_order_required_stock.html:17
#: templates/email/low_stock_notification.html:15
#: templates/email/overdue_build_order.html:16
-#: templates/js/translated/barcode.js:529 templates/js/translated/bom.js:631
-#: templates/js/translated/bom.js:768 templates/js/translated/bom.js:887
-#: templates/js/translated/build.js:1403 templates/js/translated/build.js:1965
-#: templates/js/translated/build.js:2464 templates/js/translated/build.js:2868
-#: templates/js/translated/company.js:337
-#: templates/js/translated/company.js:822
-#: templates/js/translated/company.js:929
-#: templates/js/translated/company.js:1169 templates/js/translated/part.js:1918
-#: templates/js/translated/part.js:1990 templates/js/translated/part.js:2216
-#: templates/js/translated/pricing.js:369
-#: templates/js/translated/purchase_order.js:746
-#: templates/js/translated/purchase_order.js:1274
-#: templates/js/translated/purchase_order.js:1811
-#: templates/js/translated/purchase_order.js:1975
-#: templates/js/translated/return_order.js:527
-#: templates/js/translated/return_order.js:694
-#: templates/js/translated/sales_order.js:285
-#: templates/js/translated/sales_order.js:1185
-#: templates/js/translated/sales_order.js:1584
-#: templates/js/translated/sales_order.js:1782
-#: templates/js/translated/stock.js:643 templates/js/translated/stock.js:809
-#: templates/js/translated/stock.js:1021 templates/js/translated/stock.js:1773
-#: templates/js/translated/stock.js:2594 templates/js/translated/stock.js:2831
-#: templates/js/translated/stock.js:2968
+#: templates/js/translated/barcode.js:529 templates/js/translated/bom.js:632
+#: templates/js/translated/bom.js:769 templates/js/translated/bom.js:905
+#: templates/js/translated/build.js:1289 templates/js/translated/build.js:1669
+#: templates/js/translated/build.js:2085 templates/js/translated/build.js:2261
+#: templates/js/translated/company.js:347
+#: templates/js/translated/company.js:1147
+#: templates/js/translated/company.js:1302
+#: templates/js/translated/company.js:1590 templates/js/translated/index.js:104
+#: templates/js/translated/part.js:1917 templates/js/translated/part.js:1989
+#: templates/js/translated/part.js:2292 templates/js/translated/pricing.js:369
+#: templates/js/translated/purchase_order.js:757
+#: templates/js/translated/purchase_order.js:1289
+#: templates/js/translated/purchase_order.js:1826
+#: templates/js/translated/purchase_order.js:1985
+#: templates/js/translated/return_order.js:539
+#: templates/js/translated/return_order.js:706
+#: templates/js/translated/sales_order.js:297
+#: templates/js/translated/sales_order.js:1197
+#: templates/js/translated/sales_order.js:1596
+#: templates/js/translated/sales_order.js:1794
+#: templates/js/translated/stock.js:642 templates/js/translated/stock.js:808
+#: templates/js/translated/stock.js:1020 templates/js/translated/stock.js:1913
+#: templates/js/translated/stock.js:2725 templates/js/translated/stock.js:2958
+#: templates/js/translated/stock.js:3095
msgid "Part"
msgstr "Onderdeel"
-#: build/models.py:189
+#: build/models.py:193
msgid "Select part to build"
msgstr "Selecteer onderdeel om te produceren"
-#: build/models.py:194
+#: build/models.py:198
msgid "Sales Order Reference"
msgstr "Verkooporder Referentie"
-#: build/models.py:198
+#: build/models.py:202
msgid "SalesOrder to which this build is allocated"
msgstr "Verkooporder waar deze productie aan is toegewezen"
-#: build/models.py:203 build/serializers.py:942
-#: templates/js/translated/build.js:2452
-#: templates/js/translated/sales_order.js:1173
+#: build/models.py:207 build/serializers.py:946
+#: templates/js/translated/build.js:1657
+#: templates/js/translated/sales_order.js:1185
msgid "Source Location"
msgstr "Bronlocatie"
-#: build/models.py:207
+#: build/models.py:211
msgid "Select location to take stock from for this build (leave blank to take from any stock location)"
msgstr "Selecteer de locatie waar de voorraad van de productie vandaan moet komen (laat leeg om vanaf elke standaard locatie te nemen)"
-#: build/models.py:212
+#: build/models.py:216
msgid "Destination Location"
msgstr "Bestemmings Locatie"
-#: build/models.py:216
+#: build/models.py:220
msgid "Select location where the completed items will be stored"
msgstr "Selecteer locatie waar de voltooide items zullen worden opgeslagen"
-#: build/models.py:220
+#: build/models.py:224
msgid "Build Quantity"
msgstr "Productiehoeveelheid"
-#: build/models.py:223
+#: build/models.py:227
msgid "Number of stock items to build"
msgstr "Aantal voorraaditems om te produceren"
-#: build/models.py:227
+#: build/models.py:231
msgid "Completed items"
msgstr "Voltooide voorraadartikelen"
-#: build/models.py:229
+#: build/models.py:233
msgid "Number of stock items which have been completed"
msgstr "Aantal voorraadartikelen die zijn voltooid"
-#: build/models.py:233
+#: build/models.py:237
msgid "Build Status"
msgstr "Productiestatus"
-#: build/models.py:237
+#: build/models.py:241
msgid "Build status code"
msgstr "Productiestatuscode"
-#: build/models.py:246 build/serializers.py:269 order/serializers.py:506
-#: stock/models.py:739 templates/js/translated/purchase_order.js:1099
+#: build/models.py:250 build/serializers.py:277 order/serializers.py:512
+#: stock/models.py:739 templates/js/translated/purchase_order.js:1114
msgid "Batch Code"
msgstr "Batchcode"
-#: build/models.py:250 build/serializers.py:270
+#: build/models.py:254 build/serializers.py:278
msgid "Batch code for this build output"
msgstr "Batchcode voor deze productieuitvoer"
-#: build/models.py:253 order/models.py:244 part/models.py:1038
+#: build/models.py:257 order/models.py:248 part/models.py:1039
#: part/templates/part/part_base.html:312
-#: templates/js/translated/return_order.js:327
-#: templates/js/translated/sales_order.js:815
+#: templates/js/translated/return_order.js:339
+#: templates/js/translated/sales_order.js:827
msgid "Creation Date"
msgstr "Aanmaakdatum"
-#: build/models.py:257
+#: build/models.py:261
msgid "Target completion date"
msgstr "Verwachte opleveringsdatum"
-#: build/models.py:258
+#: build/models.py:262
msgid "Target date for build completion. Build will be overdue after this date."
msgstr "Doeldatum voor productie voltooiing. Productie zal achterstallig zijn na deze datum."
-#: build/models.py:261 order/models.py:409 order/models.py:1767
-#: templates/js/translated/build.js:2953
+#: build/models.py:265 order/models.py:422 order/models.py:1780
+#: templates/js/translated/build.js:2170
msgid "Completion Date"
msgstr "Opleveringsdatum"
-#: build/models.py:267
+#: build/models.py:271
msgid "completed by"
msgstr "voltooid door"
-#: build/models.py:275 templates/js/translated/build.js:2913
+#: build/models.py:279 templates/js/translated/build.js:2130
msgid "Issued by"
msgstr "Uitgegeven door"
-#: build/models.py:276
+#: build/models.py:280
msgid "User who issued this build order"
msgstr "Gebruiker die de productieorder heeft gegeven"
-#: build/models.py:284 build/templates/build/build_base.html:204
-#: build/templates/build/detail.html:122 order/models.py:258
-#: order/templates/order/order_base.html:214
-#: order/templates/order/return_order_base.html:182
-#: order/templates/order/sales_order_base.html:222 part/models.py:1042
+#: build/models.py:288 build/templates/build/build_base.html:205
+#: build/templates/build/detail.html:122 order/models.py:262
+#: order/templates/order/order_base.html:217
+#: order/templates/order/return_order_base.html:189
+#: order/templates/order/sales_order_base.html:229 part/models.py:1043
#: part/templates/part/part_base.html:392
#: report/templates/report/inventree_build_order_base.html:158
-#: templates/js/translated/build.js:2925
-#: templates/js/translated/purchase_order.js:1723
-#: templates/js/translated/return_order.js:347
-#: templates/js/translated/table_filters.js:461
+#: templates/js/translated/build.js:2142
+#: templates/js/translated/purchase_order.js:1738
+#: templates/js/translated/return_order.js:359
+#: templates/js/translated/table_filters.js:467
msgid "Responsible"
msgstr "Verantwoordelijke"
-#: build/models.py:285
+#: build/models.py:289
msgid "User or group responsible for this build order"
msgstr "Gebruiker of groep verantwoordelijk voor deze bouwopdracht"
-#: build/models.py:290 build/templates/build/detail.html:108
+#: build/models.py:294 build/templates/build/detail.html:108
#: company/templates/company/manufacturer_part.html:107
#: company/templates/company/supplier_part.html:195
-#: order/templates/order/order_base.html:171
+#: order/templates/order/order_base.html:167
#: order/templates/order/return_order_base.html:146
#: order/templates/order/sales_order_base.html:181
#: part/templates/part/part_base.html:385 stock/models.py:733
#: stock/templates/stock/item_base.html:201
+#: templates/js/translated/company.js:1050
msgid "External Link"
msgstr "Externe Link"
-#: build/models.py:295
+#: build/models.py:299
msgid "Build Priority"
msgstr "Bouw prioriteit"
-#: build/models.py:298
+#: build/models.py:302
msgid "Priority of this build order"
msgstr "Prioriteit van deze bouwopdracht"
-#: build/models.py:536
+#: build/models.py:309 common/models.py:104 order/admin.py:17
+#: order/models.py:237 templates/InvenTree/settings/settings_staff_js.html:70
+#: templates/js/translated/build.js:2067
+#: templates/js/translated/purchase_order.js:1685
+#: templates/js/translated/return_order.js:318
+#: templates/js/translated/sales_order.js:806
+#: templates/js/translated/table_filters.js:24
+#: templates/project_code_data.html:6
+msgid "Project Code"
+msgstr ""
+
+#: build/models.py:310
+msgid "Project code for this build order"
+msgstr ""
+
+#: build/models.py:545
#, python-brace-format
msgid "Build order {build} has been completed"
msgstr "Productieorder {build} is voltooid"
-#: build/models.py:542
+#: build/models.py:551
msgid "A build order has been completed"
msgstr "Een productieorder is voltooid"
-#: build/models.py:744 build/models.py:811
+#: build/models.py:753 build/models.py:831
msgid "No build output specified"
msgstr "Geen productie uitvoer opgegeven"
-#: build/models.py:747
+#: build/models.py:756
msgid "Build output is already completed"
msgstr "Productie uitvoer is al voltooid"
-#: build/models.py:750
+#: build/models.py:759
msgid "Build output does not match Build Order"
msgstr "Productuitvoer komt niet overeen met de Productieorder"
-#: build/models.py:815 build/serializers.py:212 build/serializers.py:251
-#: build/serializers.py:811 order/models.py:440 order/serializers.py:379
-#: order/serializers.py:501 part/serializers.py:1087 part/serializers.py:1408
-#: stock/models.py:593 stock/models.py:1387 stock/serializers.py:315
+#: build/models.py:835 build/serializers.py:220 build/serializers.py:259
+#: build/serializers.py:819 order/models.py:453 order/serializers.py:385
+#: order/serializers.py:507 part/serializers.py:1149 part/serializers.py:1470
+#: stock/models.py:593 stock/models.py:1387 stock/serializers.py:381
msgid "Quantity must be greater than zero"
msgstr "Hoeveelheid moet groter zijn dan nul"
-#: build/models.py:820 build/serializers.py:217
+#: build/models.py:840 build/serializers.py:225
msgid "Quantity cannot be greater than the output quantity"
msgstr ""
-#: build/models.py:1272
-msgid "Build item must specify a build output, as master part is marked as trackable"
-msgstr "Productieartikel moet een productieuitvoer specificeren, omdat het hoofdonderdeel gemarkeerd is als traceerbaar"
+#: build/models.py:1260
+msgid "Build object"
+msgstr ""
-#: build/models.py:1281
-#, python-brace-format
-msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})"
-msgstr "Toegewezen hoeveelheid ({q}) mag de beschikbare voorraad ({a}) niet overschrijden"
-
-#: build/models.py:1291 order/models.py:1601
-msgid "Stock item is over-allocated"
-msgstr "Voorraad item is te veel toegewezen"
-
-#: build/models.py:1297 order/models.py:1604
-msgid "Allocation quantity must be greater than zero"
-msgstr "Toewijzing hoeveelheid moet groter zijn dan nul"
-
-#: build/models.py:1303
-msgid "Quantity must be 1 for serialized stock"
-msgstr "Hoeveelheid moet 1 zijn voor geserialiseerde voorraad"
-
-#: build/models.py:1360
-msgid "Selected stock item not found in BOM"
-msgstr "Geselecteerd voorraadartikel niet gevonden in stuklijst"
-
-#: build/models.py:1438 stock/templates/stock/item_base.html:170
-#: templates/InvenTree/search.html:139 templates/js/translated/build.js:2841
-#: templates/navbar.html:38
-msgid "Build"
-msgstr "Product"
-
-#: build/models.py:1439
-msgid "Build to allocate parts"
-msgstr "Product om onderdelen toe te wijzen"
-
-#: build/models.py:1455 build/serializers.py:791 order/serializers.py:1059
-#: order/serializers.py:1080 stock/serializers.py:413 stock/serializers.py:770
-#: stock/serializers.py:896 stock/templates/stock/item_base.html:10
-#: stock/templates/stock/item_base.html:23
-#: stock/templates/stock/item_base.html:195
-#: templates/js/translated/build.js:955 templates/js/translated/build.js:960
-#: templates/js/translated/build.js:2466 templates/js/translated/build.js:3038
-#: templates/js/translated/sales_order.js:286
-#: templates/js/translated/sales_order.js:1186
-#: templates/js/translated/sales_order.js:1485
-#: templates/js/translated/sales_order.js:1490
-#: templates/js/translated/sales_order.js:1591
-#: templates/js/translated/sales_order.js:1678
-#: templates/js/translated/stock.js:644 templates/js/translated/stock.js:810
-#: templates/js/translated/stock.js:2714
-msgid "Stock Item"
-msgstr "Voorraadartikel"
-
-#: build/models.py:1456
-msgid "Source stock item"
-msgstr "Bron voorraadartikel"
-
-#: build/models.py:1468 build/serializers.py:198 build/serializers.py:236
-#: build/templates/build/build_base.html:103
-#: build/templates/build/detail.html:34 common/models.py:2176
-#: order/models.py:1073 order/models.py:1645 order/serializers.py:1233
+#: build/models.py:1274 build/models.py:1556 build/serializers.py:206
+#: build/serializers.py:244 build/templates/build/build_base.html:103
+#: build/templates/build/detail.html:34 common/models.py:2162
+#: order/models.py:1086 order/models.py:1658 order/serializers.py:1239
#: order/templates/order/order_wizard/match_parts.html:30 part/admin.py:277
-#: part/forms.py:47 part/models.py:2992 part/models.py:3779
+#: part/forms.py:47 part/models.py:3026 part/models.py:3823
#: part/templates/part/part_pricing.html:16
#: part/templates/part/upload_bom.html:53
#: report/templates/report/inventree_bill_of_materials_report.html:138
@@ -1203,315 +1200,367 @@ msgstr "Bron voorraadartikel"
#: report/templates/report/inventree_so_report_base.html:29
#: report/templates/report/inventree_test_report_base.html:90
#: report/templates/report/inventree_test_report_base.html:170
-#: stock/admin.py:103 stock/serializers.py:306
+#: stock/admin.py:103 stock/serializers.py:372
#: stock/templates/stock/item_base.html:288
#: stock/templates/stock/item_base.html:296
#: stock/templates/stock/item_base.html:343
#: templates/email/build_order_completed.html:18
-#: templates/js/translated/barcode.js:531 templates/js/translated/bom.js:770
-#: templates/js/translated/bom.js:951 templates/js/translated/build.js:504
-#: templates/js/translated/build.js:716 templates/js/translated/build.js:982
-#: templates/js/translated/build.js:1425 templates/js/translated/build.js:1991
-#: templates/js/translated/build.js:2467
-#: templates/js/translated/company.js:1428
-#: templates/js/translated/model_renderers.js:207
-#: templates/js/translated/order.js:304 templates/js/translated/part.js:935
-#: templates/js/translated/part.js:1784 templates/js/translated/part.js:3263
+#: templates/js/translated/barcode.js:531 templates/js/translated/bom.js:771
+#: templates/js/translated/bom.js:969 templates/js/translated/build.js:510
+#: templates/js/translated/build.js:722 templates/js/translated/build.js:1308
+#: templates/js/translated/build.js:1672 templates/js/translated/build.js:2283
+#: templates/js/translated/company.js:1849
+#: templates/js/translated/model_renderers.js:221
+#: templates/js/translated/order.js:304 templates/js/translated/part.js:934
+#: templates/js/translated/part.js:1783 templates/js/translated/part.js:3248
#: templates/js/translated/pricing.js:381
#: templates/js/translated/pricing.js:474
#: templates/js/translated/pricing.js:522
#: templates/js/translated/pricing.js:616
-#: templates/js/translated/purchase_order.js:749
-#: templates/js/translated/purchase_order.js:1815
-#: templates/js/translated/purchase_order.js:2039
-#: templates/js/translated/sales_order.js:302
-#: templates/js/translated/sales_order.js:1187
-#: templates/js/translated/sales_order.js:1504
-#: templates/js/translated/sales_order.js:1594
-#: templates/js/translated/sales_order.js:1684
-#: templates/js/translated/sales_order.js:1804
-#: templates/js/translated/stock.js:531 templates/js/translated/stock.js:669
-#: templates/js/translated/stock.js:840 templates/js/translated/stock.js:2758
-#: templates/js/translated/stock.js:2843
+#: templates/js/translated/purchase_order.js:760
+#: templates/js/translated/purchase_order.js:1830
+#: templates/js/translated/purchase_order.js:2049
+#: templates/js/translated/sales_order.js:314
+#: templates/js/translated/sales_order.js:1199
+#: templates/js/translated/sales_order.js:1516
+#: templates/js/translated/sales_order.js:1606
+#: templates/js/translated/sales_order.js:1696
+#: templates/js/translated/sales_order.js:1816
+#: templates/js/translated/stock.js:530 templates/js/translated/stock.js:668
+#: templates/js/translated/stock.js:839 templates/js/translated/stock.js:2889
+#: templates/js/translated/stock.js:2970
msgid "Quantity"
msgstr "Hoeveelheid"
-#: build/models.py:1469
+#: build/models.py:1275
+msgid "Required quantity for build order"
+msgstr ""
+
+#: build/models.py:1357
+msgid "Build item must specify a build output, as master part is marked as trackable"
+msgstr "Productieartikel moet een productieuitvoer specificeren, omdat het hoofdonderdeel gemarkeerd is als traceerbaar"
+
+#: build/models.py:1366
+#, python-brace-format
+msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})"
+msgstr "Toegewezen hoeveelheid ({q}) mag de beschikbare voorraad ({a}) niet overschrijden"
+
+#: build/models.py:1376 order/models.py:1614
+msgid "Stock item is over-allocated"
+msgstr "Voorraad item is te veel toegewezen"
+
+#: build/models.py:1382 order/models.py:1617
+msgid "Allocation quantity must be greater than zero"
+msgstr "Toewijzing hoeveelheid moet groter zijn dan nul"
+
+#: build/models.py:1388
+msgid "Quantity must be 1 for serialized stock"
+msgstr "Hoeveelheid moet 1 zijn voor geserialiseerde voorraad"
+
+#: build/models.py:1449
+msgid "Selected stock item does not match BOM line"
+msgstr ""
+
+#: build/models.py:1543 build/serializers.py:799 order/serializers.py:1065
+#: order/serializers.py:1086 stock/serializers.py:479 stock/serializers.py:887
+#: stock/serializers.py:1013 stock/templates/stock/item_base.html:10
+#: stock/templates/stock/item_base.html:23
+#: stock/templates/stock/item_base.html:195
+#: templates/js/translated/build.js:1671
+#: templates/js/translated/sales_order.js:298
+#: templates/js/translated/sales_order.js:1198
+#: templates/js/translated/sales_order.js:1497
+#: templates/js/translated/sales_order.js:1502
+#: templates/js/translated/sales_order.js:1603
+#: templates/js/translated/sales_order.js:1690
+#: templates/js/translated/stock.js:643 templates/js/translated/stock.js:809
+#: templates/js/translated/stock.js:2845
+msgid "Stock Item"
+msgstr "Voorraadartikel"
+
+#: build/models.py:1544
+msgid "Source stock item"
+msgstr "Bron voorraadartikel"
+
+#: build/models.py:1557
msgid "Stock quantity to allocate to build"
msgstr "Voorraad hoeveelheid toe te wijzen aan productie"
-#: build/models.py:1477
+#: build/models.py:1565
msgid "Install into"
msgstr "Installeren in"
-#: build/models.py:1478
+#: build/models.py:1566
msgid "Destination stock item"
msgstr "Bestemming voorraadartikel"
-#: build/serializers.py:148 build/serializers.py:820
-#: templates/js/translated/build.js:1413
+#: build/serializers.py:156 build/serializers.py:828
+#: templates/js/translated/build.js:1299
msgid "Build Output"
msgstr "Productieuitvoer"
-#: build/serializers.py:160
+#: build/serializers.py:168
msgid "Build output does not match the parent build"
msgstr "Productieuitvoer komt niet overeen met de bovenliggende productie"
-#: build/serializers.py:164
+#: build/serializers.py:172
msgid "Output part does not match BuildOrder part"
msgstr "Uitvoeronderdeel komt niet overeen met productieorderonderdeel"
-#: build/serializers.py:168
+#: build/serializers.py:176
msgid "This build output has already been completed"
msgstr "Deze productieuitvoer is al voltooid"
-#: build/serializers.py:179
+#: build/serializers.py:187
msgid "This build output is not fully allocated"
msgstr "Deze productieuitvoer is niet volledig toegewezen"
-#: build/serializers.py:199 build/serializers.py:237
+#: build/serializers.py:207 build/serializers.py:245
msgid "Enter quantity for build output"
msgstr "Voer hoeveelheid in voor productie uitvoer"
-#: build/serializers.py:258
+#: build/serializers.py:266
msgid "Integer quantity required for trackable parts"
msgstr "Hoeveelheid als geheel getal vereist voor traceerbare onderdelen"
-#: build/serializers.py:261
+#: build/serializers.py:269
msgid "Integer quantity required, as the bill of materials contains trackable parts"
msgstr "Geheel getal vereist omdat de stuklijst traceerbare onderdelen bevat"
-#: build/serializers.py:276 order/serializers.py:514 order/serializers.py:1237
-#: stock/serializers.py:324 templates/js/translated/purchase_order.js:1123
-#: templates/js/translated/stock.js:334 templates/js/translated/stock.js:532
+#: build/serializers.py:284 order/serializers.py:520 order/serializers.py:1243
+#: stock/serializers.py:390 templates/js/translated/purchase_order.js:1138
+#: templates/js/translated/stock.js:333 templates/js/translated/stock.js:531
msgid "Serial Numbers"
msgstr "Serienummers"
-#: build/serializers.py:277
+#: build/serializers.py:285
msgid "Enter serial numbers for build outputs"
msgstr "Voer serienummers in voor productieuitvoeren"
-#: build/serializers.py:290
+#: build/serializers.py:298
msgid "Auto Allocate Serial Numbers"
msgstr "Serienummers automatisch toewijzen"
-#: build/serializers.py:291
+#: build/serializers.py:299
msgid "Automatically allocate required items with matching serial numbers"
msgstr "Vereiste artikelen automatisch toewijzen met overeenkomende serienummers"
-#: build/serializers.py:326 stock/api.py:670
+#: build/serializers.py:334 stock/api.py:707
msgid "The following serial numbers already exist or are invalid"
msgstr "De volgende serienummers bestaan al of zijn ongeldig"
-#: build/serializers.py:377 build/serializers.py:439 build/serializers.py:518
+#: build/serializers.py:385 build/serializers.py:447 build/serializers.py:526
msgid "A list of build outputs must be provided"
msgstr "Een lijst van productieuitvoeren moet worden verstrekt"
-#: build/serializers.py:415 build/serializers.py:488 order/serializers.py:487
-#: order/serializers.py:606 order/serializers.py:1588 part/serializers.py:854
-#: stock/serializers.py:335 stock/serializers.py:470 stock/serializers.py:551
-#: stock/serializers.py:931 stock/serializers.py:1173
+#: build/serializers.py:423 build/serializers.py:496 order/serializers.py:493
+#: order/serializers.py:612 order/serializers.py:1594 part/serializers.py:916
+#: stock/serializers.py:401 stock/serializers.py:537 stock/serializers.py:618
+#: stock/serializers.py:1048 stock/serializers.py:1290
#: stock/templates/stock/item_base.html:390
#: templates/js/translated/barcode.js:530
-#: templates/js/translated/barcode.js:778 templates/js/translated/build.js:967
-#: templates/js/translated/build.js:2006
-#: templates/js/translated/purchase_order.js:1148
-#: templates/js/translated/purchase_order.js:1238
-#: templates/js/translated/sales_order.js:1497
-#: templates/js/translated/sales_order.js:1605
-#: templates/js/translated/sales_order.js:1613
-#: templates/js/translated/sales_order.js:1692
-#: templates/js/translated/stock.js:645 templates/js/translated/stock.js:811
-#: templates/js/translated/stock.js:1023 templates/js/translated/stock.js:1937
-#: templates/js/translated/stock.js:2608
+#: templates/js/translated/barcode.js:778 templates/js/translated/build.js:980
+#: templates/js/translated/build.js:2298
+#: templates/js/translated/purchase_order.js:1163
+#: templates/js/translated/purchase_order.js:1253
+#: templates/js/translated/sales_order.js:1509
+#: templates/js/translated/sales_order.js:1617
+#: templates/js/translated/sales_order.js:1625
+#: templates/js/translated/sales_order.js:1704
+#: templates/js/translated/stock.js:644 templates/js/translated/stock.js:810
+#: templates/js/translated/stock.js:1022 templates/js/translated/stock.js:2094
+#: templates/js/translated/stock.js:2739
msgid "Location"
msgstr "Locatie"
-#: build/serializers.py:416
+#: build/serializers.py:424
msgid "Stock location for scrapped outputs"
msgstr ""
-#: build/serializers.py:422
+#: build/serializers.py:430
msgid "Discard Allocations"
msgstr ""
-#: build/serializers.py:423
+#: build/serializers.py:431
msgid "Discard any stock allocations for scrapped outputs"
msgstr ""
-#: build/serializers.py:428
+#: build/serializers.py:436
msgid "Reason for scrapping build output(s)"
msgstr ""
-#: build/serializers.py:489
+#: build/serializers.py:497
msgid "Location for completed build outputs"
msgstr "Locatie van voltooide productieuitvoeren"
-#: build/serializers.py:495 build/templates/build/build_base.html:151
-#: build/templates/build/detail.html:62 order/models.py:791
-#: order/models.py:1750 order/serializers.py:524 stock/admin.py:106
-#: stock/templates/stock/item_base.html:423
-#: templates/js/translated/barcode.js:252 templates/js/translated/build.js:2897
-#: templates/js/translated/purchase_order.js:1278
-#: templates/js/translated/purchase_order.js:1682
-#: templates/js/translated/return_order.js:319
-#: templates/js/translated/sales_order.js:807
-#: templates/js/translated/stock.js:1912 templates/js/translated/stock.js:2732
-#: templates/js/translated/stock.js:2859
+#: build/serializers.py:503 build/templates/build/build_base.html:152
+#: build/templates/build/detail.html:62 order/models.py:804
+#: order/models.py:1763 order/serializers.py:530 stock/admin.py:106
+#: stock/serializers.py:677 stock/templates/stock/item_base.html:423
+#: templates/js/translated/barcode.js:252 templates/js/translated/build.js:2114
+#: templates/js/translated/purchase_order.js:1293
+#: templates/js/translated/purchase_order.js:1697
+#: templates/js/translated/return_order.js:331
+#: templates/js/translated/sales_order.js:819
+#: templates/js/translated/stock.js:2069 templates/js/translated/stock.js:2863
+#: templates/js/translated/stock.js:2986
msgid "Status"
msgstr "Status"
-#: build/serializers.py:501
+#: build/serializers.py:509
msgid "Accept Incomplete Allocation"
msgstr "Incomplete Toewijzing Accepteren"
-#: build/serializers.py:502
+#: build/serializers.py:510
msgid "Complete outputs if stock has not been fully allocated"
msgstr "Voltooi de uitvoer als de voorraad niet volledig is toegewezen"
-#: build/serializers.py:571
+#: build/serializers.py:579
msgid "Remove Allocated Stock"
msgstr "Toegewezen Voorraad Verwijderen"
-#: build/serializers.py:572
+#: build/serializers.py:580
msgid "Subtract any stock which has already been allocated to this build"
msgstr "Verminder alle voorraad die al is toegewezen aan deze productie"
-#: build/serializers.py:578
+#: build/serializers.py:586
msgid "Remove Incomplete Outputs"
msgstr "Verwijder Incomplete Uitvoeren"
-#: build/serializers.py:579
+#: build/serializers.py:587
msgid "Delete any build outputs which have not been completed"
msgstr "Verwijder alle productieuitvoeren die niet zijn voltooid"
-#: build/serializers.py:606
+#: build/serializers.py:614
msgid "Not permitted"
msgstr ""
-#: build/serializers.py:607
+#: build/serializers.py:615
msgid "Accept as consumed by this build order"
msgstr "Accepteer zoals geconsumeerd onder deze bouwopdracht"
-#: build/serializers.py:608
+#: build/serializers.py:616
msgid "Deallocate before completing this build order"
msgstr "De-alloceren voordat deze bouwopdracht voltooid wordt"
-#: build/serializers.py:631
+#: build/serializers.py:639
msgid "Overallocated Stock"
msgstr "Overgealloceerde voorraad"
-#: build/serializers.py:633
+#: build/serializers.py:641
msgid "How do you want to handle extra stock items assigned to the build order"
msgstr "Hoe wilt u omgaan met extra voorraaditems toegewezen aan de bouworder"
-#: build/serializers.py:643
+#: build/serializers.py:651
msgid "Some stock items have been overallocated"
msgstr "Sommige voorraadartikelen zijn overalloceerd"
-#: build/serializers.py:648
+#: build/serializers.py:656
msgid "Accept Unallocated"
msgstr "Accepteer Niet-toegewezen"
-#: build/serializers.py:649
+#: build/serializers.py:657
msgid "Accept that stock items have not been fully allocated to this build order"
msgstr "Accepteer dat voorraadartikelen niet volledig zijn toegewezen aan deze productieorder"
-#: build/serializers.py:659 templates/js/translated/build.js:295
+#: build/serializers.py:667 templates/js/translated/build.js:304
msgid "Required stock has not been fully allocated"
msgstr "Vereiste voorraad is niet volledig toegewezen"
-#: build/serializers.py:664 order/serializers.py:261 order/serializers.py:1127
+#: build/serializers.py:672 order/serializers.py:267 order/serializers.py:1133
msgid "Accept Incomplete"
msgstr "Accepteer Onvolledig"
-#: build/serializers.py:665
+#: build/serializers.py:673
msgid "Accept that the required number of build outputs have not been completed"
msgstr "Accepteer dat het vereist aantal productieuitvoeren niet is voltooid"
-#: build/serializers.py:675 templates/js/translated/build.js:299
+#: build/serializers.py:683 templates/js/translated/build.js:308
msgid "Required build quantity has not been completed"
msgstr "Vereiste productiehoeveelheid is voltooid"
-#: build/serializers.py:684 templates/js/translated/build.js:283
+#: build/serializers.py:692 templates/js/translated/build.js:292
msgid "Build order has incomplete outputs"
msgstr "Productieorder heeft onvolledige uitvoeren"
-#: build/serializers.py:714 build/serializers.py:768 part/models.py:3686
-#: part/models.py:4069
-msgid "BOM Item"
-msgstr "Stuklijstartikel"
+#: build/serializers.py:722
+msgid "Build Line"
+msgstr ""
-#: build/serializers.py:724
+#: build/serializers.py:732
msgid "Build output"
msgstr "Productieuitvoer"
-#: build/serializers.py:732
+#: build/serializers.py:740
msgid "Build output must point to the same build"
msgstr "Productieuitvoer moet naar dezelfde productie wijzen"
-#: build/serializers.py:782
+#: build/serializers.py:776
+msgid "Build Line Item"
+msgstr ""
+
+#: build/serializers.py:790
msgid "bom_item.part must point to the same part as the build order"
msgstr "bom_item.part moet naar hetzelfde onderdeel wijzen als de productieorder"
-#: build/serializers.py:797 stock/serializers.py:783
+#: build/serializers.py:805 stock/serializers.py:900
msgid "Item must be in stock"
msgstr "Artikel moet op voorraad zijn"
-#: build/serializers.py:846 order/serializers.py:1117
+#: build/serializers.py:853 order/serializers.py:1123
#, python-brace-format
msgid "Available quantity ({q}) exceeded"
msgstr "Beschikbare hoeveelheid ({q}) overschreden"
-#: build/serializers.py:852
+#: build/serializers.py:859
msgid "Build output must be specified for allocation of tracked parts"
msgstr "Productieuitvoer moet worden opgegeven voor de toewijzing van gevolgde onderdelen"
-#: build/serializers.py:859
+#: build/serializers.py:866
msgid "Build output cannot be specified for allocation of untracked parts"
msgstr "Productieuitvoer kan niet worden gespecificeerd voor de toewijzing van niet gevolgde onderdelen"
-#: build/serializers.py:864
+#: build/serializers.py:871
msgid "This stock item has already been allocated to this build output"
msgstr "Dit voorraadartikel is al toegewezen aan deze productieoutput"
-#: build/serializers.py:887 order/serializers.py:1401
+#: build/serializers.py:894 order/serializers.py:1407
msgid "Allocation items must be provided"
msgstr "Allocaties voor artikelen moeten worden opgegeven"
-#: build/serializers.py:943
+#: build/serializers.py:947
msgid "Stock location where parts are to be sourced (leave blank to take from any location)"
msgstr "Voorraadlocatie waar onderdelen afkomstig zijn (laat leeg om van elke locatie te nemen)"
-#: build/serializers.py:951
+#: build/serializers.py:955
msgid "Exclude Location"
msgstr "Locatie uitsluiten"
-#: build/serializers.py:952
+#: build/serializers.py:956
msgid "Exclude stock items from this selected location"
msgstr "Voorraadartikelen van deze geselecteerde locatie uitsluiten"
-#: build/serializers.py:957
+#: build/serializers.py:961
msgid "Interchangeable Stock"
msgstr "Uitwisselbare voorraad"
-#: build/serializers.py:958
+#: build/serializers.py:962
msgid "Stock items in multiple locations can be used interchangeably"
msgstr "Voorraadartikelen op meerdere locaties kunnen uitwisselbaar worden gebruikt"
-#: build/serializers.py:963
+#: build/serializers.py:967
msgid "Substitute Stock"
msgstr "Vervangende Voorraad"
-#: build/serializers.py:964
+#: build/serializers.py:968
msgid "Allow allocation of substitute parts"
msgstr "Toewijzing van vervangende onderdelen toestaan"
-#: build/serializers.py:969
+#: build/serializers.py:973
msgid "Optional Items"
msgstr "Optionele Items"
-#: build/serializers.py:970
+#: build/serializers.py:974
msgid "Allocate optional BOM items to build order"
msgstr "Alloceer optionele BOM items om bestelling te bouwen"
@@ -1540,6 +1589,7 @@ msgstr ""
#: part/templates/part/part_base.html:43
#: stock/templates/stock/item_base.html:41
#: stock/templates/stock/location.html:54
+#: templates/js/translated/filters.js:336
msgid "Barcode actions"
msgstr "Barcode acties"
@@ -1618,69 +1668,67 @@ msgstr "Voltooi Productie"
msgid "Build Description"
msgstr "Productiebeschrijving"
-#: build/templates/build/build_base.html:117
+#: build/templates/build/build_base.html:118
msgid "No build outputs have been created for this build order"
msgstr "Er zijn geen productuitvoeren aangemaakt voor deze productieorder"
-#: build/templates/build/build_base.html:124
+#: build/templates/build/build_base.html:125
msgid "Build Order is ready to mark as completed"
msgstr "Productieorder is gereed om te markeren als voltooid"
-#: build/templates/build/build_base.html:129
+#: build/templates/build/build_base.html:130
msgid "Build Order cannot be completed as outstanding outputs remain"
msgstr "Productieorder kan niet worden voltooid omdat er nog producties openstaan"
-#: build/templates/build/build_base.html:134
+#: build/templates/build/build_base.html:135
msgid "Required build quantity has not yet been completed"
msgstr "Vereiste Producthoeveelheid is nog niet bereikt"
-#: build/templates/build/build_base.html:139
+#: build/templates/build/build_base.html:140
msgid "Stock has not been fully allocated to this Build Order"
msgstr "Voorraad is niet volledig toegewezen aan deze productieorder"
-#: build/templates/build/build_base.html:160
-#: build/templates/build/detail.html:138 order/models.py:240
-#: order/models.py:1099 order/templates/order/order_base.html:190
+#: build/templates/build/build_base.html:161
+#: build/templates/build/detail.html:138 order/models.py:244
+#: order/models.py:1112 order/templates/order/order_base.html:186
#: order/templates/order/return_order_base.html:165
#: order/templates/order/sales_order_base.html:193
#: report/templates/report/inventree_build_order_base.html:125
-#: templates/js/translated/build.js:2945 templates/js/translated/part.js:1802
-#: templates/js/translated/purchase_order.js:1699
-#: templates/js/translated/purchase_order.js:2115
-#: templates/js/translated/return_order.js:335
-#: templates/js/translated/return_order.js:735
-#: templates/js/translated/sales_order.js:823
-#: templates/js/translated/sales_order.js:1847
+#: templates/js/translated/build.js:2162 templates/js/translated/part.js:1801
+#: templates/js/translated/purchase_order.js:1714
+#: templates/js/translated/purchase_order.js:2125
+#: templates/js/translated/return_order.js:347
+#: templates/js/translated/return_order.js:747
+#: templates/js/translated/sales_order.js:835
+#: templates/js/translated/sales_order.js:1859
msgid "Target Date"
msgstr "Streefdatum"
-#: build/templates/build/build_base.html:165
+#: build/templates/build/build_base.html:166
#, python-format
msgid "This build was due on %(target)s"
msgstr "Deze productie was verwacht op %(target)s"
-#: build/templates/build/build_base.html:165
-#: build/templates/build/build_base.html:222
-#: order/templates/order/order_base.html:126
+#: build/templates/build/build_base.html:166
+#: build/templates/build/build_base.html:223
+#: order/templates/order/order_base.html:122
#: order/templates/order/return_order_base.html:118
#: order/templates/order/sales_order_base.html:123
-#: templates/js/translated/table_filters.js:68
-#: templates/js/translated/table_filters.js:454
-#: templates/js/translated/table_filters.js:539
-#: templates/js/translated/table_filters.js:580
+#: templates/js/translated/table_filters.js:74
+#: templates/js/translated/table_filters.js:460
+#: templates/js/translated/table_filters.js:561
+#: templates/js/translated/table_filters.js:602
msgid "Overdue"
msgstr "Achterstallig"
-#: build/templates/build/build_base.html:177
-#: build/templates/build/detail.html:67 build/templates/build/detail.html:149
-#: order/templates/order/sales_order_base.html:203
-#: templates/js/translated/table_filters.js:602
-msgid "Completed"
-msgstr "Voltooid"
+#: build/templates/build/build_base.html:178
+#: build/templates/build/detail.html:67 build/templates/build/sidebar.html:13
+msgid "Completed Outputs"
+msgstr "Voltooide Uitvoeren"
-#: build/templates/build/build_base.html:190
-#: build/templates/build/detail.html:101 order/api.py:1454 order/models.py:1304
-#: order/models.py:1403 order/models.py:1551
+#: build/templates/build/build_base.html:191
+#: build/templates/build/detail.html:101 order/api.py:1454 order/models.py:1317
+#: order/models.py:1416 order/models.py:1564
#: order/templates/order/sales_order_base.html:9
#: order/templates/order/sales_order_base.html:28
#: report/templates/report/inventree_build_order_base.html:135
@@ -1688,32 +1736,32 @@ msgstr "Voltooid"
#: stock/templates/stock/item_base.html:370
#: templates/email/overdue_sales_order.html:15
#: templates/js/translated/pricing.js:915
-#: templates/js/translated/sales_order.js:757
-#: templates/js/translated/sales_order.js:980
-#: templates/js/translated/stock.js:2661
+#: templates/js/translated/sales_order.js:769
+#: templates/js/translated/sales_order.js:992
+#: templates/js/translated/stock.js:2792
msgid "Sales Order"
msgstr "Verkooporder"
-#: build/templates/build/build_base.html:197
+#: build/templates/build/build_base.html:198
#: build/templates/build/detail.html:115
#: report/templates/report/inventree_build_order_base.html:152
msgid "Issued By"
msgstr "Uitgegeven door"
-#: build/templates/build/build_base.html:211
-#: build/templates/build/detail.html:94 templates/js/translated/build.js:2862
+#: build/templates/build/build_base.html:212
+#: build/templates/build/detail.html:94 templates/js/translated/build.js:2079
msgid "Priority"
msgstr "Prioriteit"
-#: build/templates/build/build_base.html:273
+#: build/templates/build/build_base.html:274
msgid "Delete Build Order"
msgstr "Verwijder Productieorder"
-#: build/templates/build/build_base.html:283
+#: build/templates/build/build_base.html:284
msgid "Build Order QR Code"
msgstr "Bouworder QR Code"
-#: build/templates/build/build_base.html:295
+#: build/templates/build/build_base.html:296
msgid "Link Barcode to Build Order"
msgstr "Link Barcode aan bouwopdracht"
@@ -1729,8 +1777,8 @@ msgstr "Voorraadbron"
msgid "Stock can be taken from any available location."
msgstr "Voorraad kan worden genomen van elke beschikbare locatie."
-#: build/templates/build/detail.html:49 order/models.py:1222
-#: templates/js/translated/purchase_order.js:2157
+#: build/templates/build/detail.html:49 order/models.py:1235
+#: templates/js/translated/purchase_order.js:2167
msgid "Destination"
msgstr "Bestemming"
@@ -1744,21 +1792,21 @@ msgstr "Toegewezen Onderdelen"
#: build/templates/build/detail.html:80 stock/admin.py:105
#: stock/templates/stock/item_base.html:163
-#: templates/js/translated/build.js:1432
-#: templates/js/translated/model_renderers.js:212
-#: templates/js/translated/purchase_order.js:1244
-#: templates/js/translated/stock.js:1093 templates/js/translated/stock.js:1926
-#: templates/js/translated/stock.js:2866
-#: templates/js/translated/table_filters.js:259
-#: templates/js/translated/table_filters.js:350
+#: templates/js/translated/build.js:1319
+#: templates/js/translated/model_renderers.js:226
+#: templates/js/translated/purchase_order.js:1259
+#: templates/js/translated/stock.js:1092 templates/js/translated/stock.js:2083
+#: templates/js/translated/stock.js:2993
+#: templates/js/translated/table_filters.js:265
+#: templates/js/translated/table_filters.js:356
msgid "Batch"
msgstr "Batch"
#: build/templates/build/detail.html:133
-#: order/templates/order/order_base.html:177
+#: order/templates/order/order_base.html:173
#: order/templates/order/return_order_base.html:152
#: order/templates/order/sales_order_base.html:187
-#: templates/js/translated/build.js:2905
+#: templates/js/translated/build.js:2122
msgid "Created"
msgstr "Gecreëerd"
@@ -1766,147 +1814,106 @@ msgstr "Gecreëerd"
msgid "No target date set"
msgstr "Geen doeldatum ingesteld"
+#: build/templates/build/detail.html:149
+#: order/templates/order/sales_order_base.html:203
+#: templates/js/translated/table_filters.js:624
+msgid "Completed"
+msgstr "Voltooid"
+
#: build/templates/build/detail.html:153
msgid "Build not complete"
msgstr "Productie niet compleet"
-#: build/templates/build/detail.html:164 build/templates/build/sidebar.html:19
+#: build/templates/build/detail.html:164 build/templates/build/sidebar.html:17
msgid "Child Build Orders"
msgstr "Onderliggende Productieorders"
-#: build/templates/build/detail.html:179
+#: build/templates/build/detail.html:177
msgid "Allocate Stock to Build"
msgstr "Voorraad toewijzen aan Product"
-#: build/templates/build/detail.html:183 templates/js/translated/build.js:2276
-msgid "Unallocate stock"
-msgstr "Voorraadtoewijzing ongedaan maken"
+#: build/templates/build/detail.html:181
+msgid "Deallocate stock"
+msgstr ""
+
+#: build/templates/build/detail.html:182
+msgid "Deallocate Stock"
+msgstr ""
#: build/templates/build/detail.html:184
-msgid "Unallocate Stock"
-msgstr "Voorraadtoewijzing ongedaan maken"
-
-#: build/templates/build/detail.html:186
msgid "Automatically allocate stock to build"
msgstr "Automatisch voorraad toewijzen aan productie"
-#: build/templates/build/detail.html:187
+#: build/templates/build/detail.html:185
msgid "Auto Allocate"
msgstr "Automatisch Toewijzen"
-#: build/templates/build/detail.html:189
+#: build/templates/build/detail.html:187
msgid "Manually allocate stock to build"
msgstr "Handmatig voorraad toewijzen aan productie"
-#: build/templates/build/detail.html:190 build/templates/build/sidebar.html:8
+#: build/templates/build/detail.html:188 build/templates/build/sidebar.html:8
msgid "Allocate Stock"
msgstr "Voorraad Toewijzen"
-#: build/templates/build/detail.html:193
+#: build/templates/build/detail.html:191
msgid "Order required parts"
msgstr "Vereiste onderdelen bestellen"
-#: build/templates/build/detail.html:194
-#: company/templates/company/detail.html:38
-#: company/templates/company/detail.html:86
-#: part/templates/part/category.html:184
-#: templates/js/translated/purchase_order.js:789
+#: build/templates/build/detail.html:192
+#: templates/js/translated/purchase_order.js:800
msgid "Order Parts"
msgstr "Onderdelen bestellen"
-#: build/templates/build/detail.html:206
-msgid "Untracked stock has been fully allocated for this Build Order"
-msgstr "Niet-gevolgde voorraad is volledig toegewezen aan deze Productieorder"
-
#: build/templates/build/detail.html:210
-msgid "Untracked stock has not been fully allocated for this Build Order"
-msgstr "Niet-gevolgde voorraad is niet volledig toegewezen aan deze Productieorder"
-
-#: build/templates/build/detail.html:217
-msgid "Allocate selected items"
-msgstr "Geselecteerde items toewijzen"
-
-#: build/templates/build/detail.html:227
-msgid "This Build Order does not have any associated untracked BOM items"
-msgstr "Deze Productieorder heeft geen bijbehorende niet-gevolgde BOM-artikelen"
-
-#: build/templates/build/detail.html:236
msgid "Incomplete Build Outputs"
msgstr "Onvolledige Productieuitvoeren"
-#: build/templates/build/detail.html:240
+#: build/templates/build/detail.html:214
msgid "Create new build output"
msgstr "Nieuwe productieuitvoer aanmaken"
-#: build/templates/build/detail.html:241
+#: build/templates/build/detail.html:215
msgid "New Build Output"
msgstr "Nieuwe Productieuitvoer"
-#: build/templates/build/detail.html:255
-msgid "Output Actions"
-msgstr "Uitvoer Acties"
-
-#: build/templates/build/detail.html:260
-msgid "Complete selected build outputs"
-msgstr "Voltooi geselecteerde productieuitvoeren"
-
-#: build/templates/build/detail.html:261
-msgid "Complete outputs"
-msgstr "Voltooi uitvoeren"
-
-#: build/templates/build/detail.html:265
-msgid "Scrap selected build outputs"
-msgstr ""
-
-#: build/templates/build/detail.html:266
-msgid "Scrap outputs"
-msgstr ""
-
-#: build/templates/build/detail.html:270
-msgid "Delete selected build outputs"
-msgstr "Voltooi geselecteerde productieuitvoeren"
-
-#: build/templates/build/detail.html:271
-msgid "Delete outputs"
-msgstr "Verwijder uitvoeren"
-
-#: build/templates/build/detail.html:288 build/templates/build/sidebar.html:11
+#: build/templates/build/detail.html:232 build/templates/build/sidebar.html:15
msgid "Consumed Stock"
msgstr ""
-#: build/templates/build/detail.html:300
+#: build/templates/build/detail.html:244
msgid "Completed Build Outputs"
msgstr "Voltooide Productieuitvoeren"
-#: build/templates/build/detail.html:312 build/templates/build/sidebar.html:21
-#: company/templates/company/detail.html:261
-#: company/templates/company/manufacturer_part.html:151
+#: build/templates/build/detail.html:256 build/templates/build/sidebar.html:19
+#: company/templates/company/detail.html:229
+#: company/templates/company/manufacturer_part.html:141
#: company/templates/company/manufacturer_part_sidebar.html:9
-#: company/templates/company/sidebar.html:37
+#: company/templates/company/sidebar.html:39
#: order/templates/order/po_sidebar.html:9
-#: order/templates/order/purchase_order_detail.html:102
-#: order/templates/order/return_order_detail.html:74
+#: order/templates/order/purchase_order_detail.html:84
+#: order/templates/order/return_order_detail.html:70
#: order/templates/order/return_order_sidebar.html:7
-#: order/templates/order/sales_order_detail.html:134
-#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:234
-#: part/templates/part/part_sidebar.html:61 stock/templates/stock/item.html:117
+#: order/templates/order/sales_order_detail.html:124
+#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:217
+#: part/templates/part/part_sidebar.html:61 stock/templates/stock/item.html:109
#: stock/templates/stock/stock_sidebar.html:23
msgid "Attachments"
msgstr "Bijlagen"
-#: build/templates/build/detail.html:327
+#: build/templates/build/detail.html:271
msgid "Build Notes"
msgstr "Productie notities"
-#: build/templates/build/detail.html:502
+#: build/templates/build/detail.html:425
msgid "Allocation Complete"
msgstr "Toewijzing Voltooid"
-#: build/templates/build/detail.html:503
-msgid "All untracked stock items have been allocated"
-msgstr "Alle niet gevolgde voorraadartikelen zijn toegewezen"
+#: build/templates/build/detail.html:426
+msgid "All lines have been fully allocated"
+msgstr ""
-#: build/templates/build/index.html:18 part/templates/part/detail.html:340
+#: build/templates/build/index.html:18 part/templates/part/detail.html:319
msgid "New Build Order"
msgstr "Nieuwe Productieorder"
@@ -1914,14 +1921,10 @@ msgstr "Nieuwe Productieorder"
msgid "Build Order Details"
msgstr "Productieorderdetails"
-#: build/templates/build/sidebar.html:14
+#: build/templates/build/sidebar.html:10
msgid "Incomplete Outputs"
msgstr "Onvolledige Productieuitvoeren"
-#: build/templates/build/sidebar.html:17
-msgid "Completed Outputs"
-msgstr "Voltooide Uitvoeren"
-
#: common/files.py:63
#, python-brace-format
msgid "Unsupported file format: {fmt}"
@@ -1968,16 +1971,6 @@ msgstr "Bijgewerkt"
msgid "Timestamp of last update"
msgstr ""
-#: common/models.py:104 order/admin.py:17 order/models.py:234
-#: templates/InvenTree/settings/settings_staff_js.html:70
-#: templates/js/translated/purchase_order.js:1670
-#: templates/js/translated/return_order.js:306
-#: templates/js/translated/sales_order.js:794
-#: templates/js/translated/table_filters.js:24
-#: templates/project_code_data.html:6
-msgid "Project Code"
-msgstr ""
-
#: common/models.py:105
msgid "Unique project code"
msgstr ""
@@ -2261,9 +2254,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:1162 part/admin.py:55 part/models.py:3560
-#: report/models.py:166 templates/js/translated/table_filters.js:109
-#: templates/js/translated/table_filters.js:680
+#: common/models.py:1162 part/admin.py:55 part/models.py:3594
+#: report/models.py:166 templates/js/translated/table_filters.js:115
+#: templates/js/translated/table_filters.js:702
msgid "Template"
msgstr "Sjabloon"
@@ -2271,10 +2264,10 @@ msgstr "Sjabloon"
msgid "Parts are templates by default"
msgstr "Onderdelen zijn standaard sjablonen"
-#: common/models.py:1169 part/admin.py:51 part/admin.py:283 part/models.py:996
-#: templates/js/translated/bom.js:1598
-#: templates/js/translated/table_filters.js:276
-#: templates/js/translated/table_filters.js:634
+#: common/models.py:1169 part/admin.py:51 part/admin.py:283 part/models.py:997
+#: templates/js/translated/bom.js:1618
+#: templates/js/translated/table_filters.js:282
+#: templates/js/translated/table_filters.js:656
msgid "Assembly"
msgstr "Samenstelling"
@@ -2282,8 +2275,8 @@ msgstr "Samenstelling"
msgid "Parts can be assembled from other components by default"
msgstr "Onderdelen kunnen standaard vanuit andere componenten worden samengesteld"
-#: common/models.py:1176 part/admin.py:52 part/models.py:1002
-#: templates/js/translated/table_filters.js:642
+#: common/models.py:1176 part/admin.py:52 part/models.py:1003
+#: templates/js/translated/table_filters.js:664
msgid "Component"
msgstr "Component"
@@ -2291,7 +2284,7 @@ msgstr "Component"
msgid "Parts can be used as sub-components by default"
msgstr "Onderdelen kunnen standaard worden gebruikt als subcomponenten"
-#: common/models.py:1183 part/admin.py:53 part/models.py:1013
+#: common/models.py:1183 part/admin.py:53 part/models.py:1014
msgid "Purchaseable"
msgstr "Koopbaar"
@@ -2299,8 +2292,8 @@ msgstr "Koopbaar"
msgid "Parts are purchaseable by default"
msgstr "Onderdelen kunnen standaard gekocht worden"
-#: common/models.py:1190 part/admin.py:54 part/models.py:1018
-#: templates/js/translated/table_filters.js:668
+#: common/models.py:1190 part/admin.py:54 part/models.py:1019
+#: templates/js/translated/table_filters.js:690
msgid "Salable"
msgstr "Verkoopbaar"
@@ -2308,10 +2301,10 @@ msgstr "Verkoopbaar"
msgid "Parts are salable by default"
msgstr "Onderdelen kunnen standaard verkocht worden"
-#: common/models.py:1197 part/admin.py:56 part/models.py:1008
-#: templates/js/translated/table_filters.js:117
-#: templates/js/translated/table_filters.js:193
-#: templates/js/translated/table_filters.js:684
+#: common/models.py:1197 part/admin.py:56 part/models.py:1009
+#: templates/js/translated/table_filters.js:123
+#: templates/js/translated/table_filters.js:199
+#: templates/js/translated/table_filters.js:706
msgid "Trackable"
msgstr "Volgbaar"
@@ -2319,10 +2312,10 @@ msgstr "Volgbaar"
msgid "Parts are trackable by default"
msgstr "Onderdelen kunnen standaard gevolgd worden"
-#: common/models.py:1204 part/admin.py:57 part/models.py:1028
+#: common/models.py:1204 part/admin.py:57 part/models.py:1029
#: part/templates/part/part_base.html:156
-#: templates/js/translated/table_filters.js:113
-#: templates/js/translated/table_filters.js:688
+#: templates/js/translated/table_filters.js:119
+#: templates/js/translated/table_filters.js:710
msgid "Virtual"
msgstr "Virtueel"
@@ -2354,7 +2347,7 @@ msgstr ""
msgid "Allow creation of initial stock when adding a new part"
msgstr ""
-#: common/models.py:1232 templates/js/translated/part.js:108
+#: common/models.py:1232 templates/js/translated/part.js:107
msgid "Initial Supplier Data"
msgstr ""
@@ -2603,179 +2596,179 @@ msgid "Stock location default icon (empty means no icon)"
msgstr ""
#: common/models.py:1471
+msgid "Show Installed Stock Items"
+msgstr ""
+
+#: common/models.py:1472
+msgid "Display installed stock items in stock tables"
+msgstr ""
+
+#: common/models.py:1478
msgid "Build Order Reference Pattern"
msgstr "Productieorderreferentiepatroon"
-#: common/models.py:1472
+#: common/models.py:1479
msgid "Required pattern for generating Build Order reference field"
msgstr "Vereist patroon voor het genereren van het Bouworderreferentieveld"
-#: common/models.py:1478
+#: common/models.py:1485
msgid "Enable Return Orders"
msgstr ""
-#: common/models.py:1479
+#: common/models.py:1486
msgid "Enable return order functionality in the user interface"
msgstr ""
-#: common/models.py:1485
+#: common/models.py:1492
msgid "Return Order Reference Pattern"
msgstr ""
-#: common/models.py:1486
+#: common/models.py:1493
msgid "Required pattern for generating Return Order reference field"
msgstr ""
-#: common/models.py:1492
+#: common/models.py:1499
msgid "Edit Completed Return Orders"
msgstr ""
-#: common/models.py:1493
+#: common/models.py:1500
msgid "Allow editing of return orders after they have been completed"
msgstr ""
-#: common/models.py:1499
+#: common/models.py:1506
msgid "Sales Order Reference Pattern"
msgstr "Verkooporderreferentiepatroon"
-#: common/models.py:1500
+#: common/models.py:1507
msgid "Required pattern for generating Sales Order reference field"
msgstr "Vereist patroon voor het genereren van het Verkooporderreferentieveld"
-#: common/models.py:1506
+#: common/models.py:1513
msgid "Sales Order Default Shipment"
msgstr "Standaard Verzending Verkooporder"
-#: common/models.py:1507
+#: common/models.py:1514
msgid "Enable creation of default shipment with sales orders"
msgstr "Aanmaken standaard verzending bij verkooporders inschakelen"
-#: common/models.py:1513
+#: common/models.py:1520
msgid "Edit Completed Sales Orders"
msgstr ""
-#: common/models.py:1514
+#: common/models.py:1521
msgid "Allow editing of sales orders after they have been shipped or completed"
msgstr ""
-#: common/models.py:1520
+#: common/models.py:1527
msgid "Purchase Order Reference Pattern"
msgstr "Inkooporderreferentiepatroon"
-#: common/models.py:1521
+#: common/models.py:1528
msgid "Required pattern for generating Purchase Order reference field"
msgstr "Vereist patroon voor het genereren van het Inkooporderreferentieveld"
-#: common/models.py:1527
+#: common/models.py:1534
msgid "Edit Completed Purchase Orders"
msgstr ""
-#: common/models.py:1528
+#: common/models.py:1535
msgid "Allow editing of purchase orders after they have been shipped or completed"
msgstr ""
-#: common/models.py:1535
+#: common/models.py:1542
msgid "Enable password forgot"
msgstr "Wachtwoord vergeten functie inschakelen"
-#: common/models.py:1536
+#: common/models.py:1543
msgid "Enable password forgot function on the login pages"
msgstr "Wachtwoord vergeten functie inschakelen op de inlogpagina's"
-#: common/models.py:1542
+#: common/models.py:1549
msgid "Enable registration"
msgstr "Registratie inschakelen"
-#: common/models.py:1543
+#: common/models.py:1550
msgid "Enable self-registration for users on the login pages"
msgstr "Zelfregistratie voor gebruikers op de inlogpagina's inschakelen"
-#: common/models.py:1549
+#: common/models.py:1556
msgid "Enable SSO"
msgstr "SSO inschakelen"
-#: common/models.py:1550
+#: common/models.py:1557
msgid "Enable SSO on the login pages"
msgstr "SSO inschakelen op de inlogpagina's"
-#: common/models.py:1556
+#: common/models.py:1563
msgid "Enable SSO registration"
msgstr ""
-#: common/models.py:1557
+#: common/models.py:1564
msgid "Enable self-registration via SSO for users on the login pages"
msgstr ""
-#: common/models.py:1563
+#: common/models.py:1570
msgid "Email required"
msgstr "E-mailadres verplicht"
-#: common/models.py:1564
+#: common/models.py:1571
msgid "Require user to supply mail on signup"
msgstr "Vereis gebruiker om e-mailadres te registreren bij aanmelding"
-#: common/models.py:1570
+#: common/models.py:1577
msgid "Auto-fill SSO users"
msgstr ""
-#: common/models.py:1571
+#: common/models.py:1578
msgid "Automatically fill out user-details from SSO account-data"
msgstr ""
-#: common/models.py:1577
+#: common/models.py:1584
msgid "Mail twice"
msgstr "E-mail twee keer"
-#: common/models.py:1578
+#: common/models.py:1585
msgid "On signup ask users twice for their mail"
msgstr ""
-#: common/models.py:1584
+#: common/models.py:1591
msgid "Password twice"
msgstr ""
-#: common/models.py:1585
+#: common/models.py:1592
msgid "On signup ask users twice for their password"
msgstr "Laat gebruikers twee keer om hun wachtwoord vragen tijdens het aanmelden"
-#: common/models.py:1591
+#: common/models.py:1598
msgid "Allowed domains"
msgstr ""
-#: common/models.py:1592
+#: common/models.py:1599
msgid "Restrict signup to certain domains (comma-separated, starting with @)"
msgstr ""
-#: common/models.py:1598
+#: common/models.py:1605
msgid "Group on signup"
msgstr "Groep bij aanmelding"
-#: common/models.py:1599
+#: common/models.py:1606
msgid "Group to which new users are assigned on registration"
msgstr "Groep waaraan nieuwe gebruikers worden toegewezen bij registratie"
-#: common/models.py:1605
+#: common/models.py:1612
msgid "Enforce MFA"
msgstr "MFA afdwingen"
-#: common/models.py:1606
+#: common/models.py:1613
msgid "Users must use multifactor security."
msgstr "Gebruikers moeten multifactor-beveiliging gebruiken."
-#: common/models.py:1612
+#: common/models.py:1619
msgid "Check plugins on startup"
msgstr "Controleer plugins bij het opstarten"
-#: common/models.py:1613
-msgid "Check that all plugins are installed on startup - enable in container environments"
-msgstr ""
-
#: common/models.py:1620
-msgid "Check plugin signatures"
-msgstr ""
-
-#: common/models.py:1621
-msgid "Check and show signatures for plugins"
+msgid "Check that all plugins are installed on startup - enable in container environments"
msgstr ""
#: common/models.py:1628
@@ -2850,7 +2843,7 @@ msgstr ""
msgid "Stocktake reports will be deleted after specified number of days"
msgstr ""
-#: common/models.py:1710 common/models.py:2147
+#: common/models.py:1710 common/models.py:2133
msgid "Settings key (must be unique - case insensitive"
msgstr "Instellingssleutel (moet uniek zijn - hoofdletter ongevoelig"
@@ -2891,528 +2884,513 @@ msgid "Show latest parts on the homepage"
msgstr "Toon laatste onderdelen op de startpagina"
#: common/models.py:1779
-msgid "Recent Part Count"
-msgstr "Recente Voorraadtelling"
-
-#: common/models.py:1780
-msgid "Number of recent parts to display on index page"
-msgstr ""
-
-#: common/models.py:1786
msgid "Show unvalidated BOMs"
msgstr ""
-#: common/models.py:1787
+#: common/models.py:1780
msgid "Show BOMs that await validation on the homepage"
msgstr ""
-#: common/models.py:1793
+#: common/models.py:1786
msgid "Show recent stock changes"
msgstr "Toon recente voorraadwijzigingen"
-#: common/models.py:1794
+#: common/models.py:1787
msgid "Show recently changed stock items on the homepage"
msgstr "Toon recent aangepaste voorraadartikelen op de startpagina"
-#: common/models.py:1800
-msgid "Recent Stock Count"
-msgstr "Recente Voorraadtelling"
-
-#: common/models.py:1801
-msgid "Number of recent stock items to display on index page"
-msgstr ""
-
-#: common/models.py:1807
+#: common/models.py:1793
msgid "Show low stock"
msgstr "Toon lage voorraad"
-#: common/models.py:1808
+#: common/models.py:1794
msgid "Show low stock items on the homepage"
msgstr "Toon lage voorraad van artikelen op de startpagina"
-#: common/models.py:1814
+#: common/models.py:1800
msgid "Show depleted stock"
msgstr "Toon lege voorraad"
-#: common/models.py:1815
+#: common/models.py:1801
msgid "Show depleted stock items on the homepage"
msgstr "Toon lege voorraad van artikelen op de startpagina"
-#: common/models.py:1821
+#: common/models.py:1807
msgid "Show needed stock"
msgstr "Toon benodigde voorraad"
-#: common/models.py:1822
+#: common/models.py:1808
msgid "Show stock items needed for builds on the homepage"
msgstr "Toon benodigde voorraad van artikelen voor productie op de startpagina"
-#: common/models.py:1828
+#: common/models.py:1814
msgid "Show expired stock"
msgstr "Toon verlopen voorraad"
-#: common/models.py:1829
+#: common/models.py:1815
msgid "Show expired stock items on the homepage"
msgstr "Toon verlopen voorraad van artikelen op de startpagina"
-#: common/models.py:1835
+#: common/models.py:1821
msgid "Show stale stock"
msgstr "Toon verouderde voorraad"
-#: common/models.py:1836
+#: common/models.py:1822
msgid "Show stale stock items on the homepage"
msgstr "Toon verouderde voorraad van artikelen op de startpagina"
-#: common/models.py:1842
+#: common/models.py:1828
msgid "Show pending builds"
msgstr "Toon openstaande producties"
-#: common/models.py:1843
+#: common/models.py:1829
msgid "Show pending builds on the homepage"
msgstr "Toon openstaande producties op de startpagina"
-#: common/models.py:1849
+#: common/models.py:1835
msgid "Show overdue builds"
msgstr "Toon achterstallige productie"
-#: common/models.py:1850
+#: common/models.py:1836
msgid "Show overdue builds on the homepage"
msgstr "Toon achterstallige producties op de startpagina"
-#: common/models.py:1856
+#: common/models.py:1842
msgid "Show outstanding POs"
msgstr "Toon uitstaande PO's"
-#: common/models.py:1857
+#: common/models.py:1843
msgid "Show outstanding POs on the homepage"
msgstr "Toon uitstaande PO's op de startpagina"
-#: common/models.py:1863
+#: common/models.py:1849
msgid "Show overdue POs"
msgstr "Toon achterstallige PO's"
-#: common/models.py:1864
+#: common/models.py:1850
msgid "Show overdue POs on the homepage"
msgstr "Toon achterstallige PO's op de startpagina"
-#: common/models.py:1870
+#: common/models.py:1856
msgid "Show outstanding SOs"
msgstr "Toon uitstaande SO's"
-#: common/models.py:1871
+#: common/models.py:1857
msgid "Show outstanding SOs on the homepage"
msgstr "Toon uitstaande SO's op de startpagina"
-#: common/models.py:1877
+#: common/models.py:1863
msgid "Show overdue SOs"
msgstr "Toon achterstallige SO's"
-#: common/models.py:1878
+#: common/models.py:1864
msgid "Show overdue SOs on the homepage"
msgstr "Toon achterstallige SO's op de startpagina"
-#: common/models.py:1884
+#: common/models.py:1870
msgid "Show pending SO shipments"
msgstr ""
-#: common/models.py:1885
+#: common/models.py:1871
msgid "Show pending SO shipments on the homepage"
msgstr ""
-#: common/models.py:1891
+#: common/models.py:1877
msgid "Show News"
msgstr ""
-#: common/models.py:1892
+#: common/models.py:1878
msgid "Show news on the homepage"
msgstr ""
-#: common/models.py:1898
+#: common/models.py:1884
msgid "Inline label display"
msgstr ""
-#: common/models.py:1899
+#: common/models.py:1885
msgid "Display PDF labels in the browser, instead of downloading as a file"
msgstr ""
-#: common/models.py:1905
+#: common/models.py:1891
msgid "Default label printer"
msgstr ""
-#: common/models.py:1906
+#: common/models.py:1892
msgid "Configure which label printer should be selected by default"
msgstr ""
-#: common/models.py:1912
+#: common/models.py:1898
msgid "Inline report display"
msgstr ""
-#: common/models.py:1913
+#: common/models.py:1899
msgid "Display PDF reports in the browser, instead of downloading as a file"
msgstr ""
-#: common/models.py:1919
+#: common/models.py:1905
msgid "Search Parts"
msgstr "Zoek Onderdelen"
-#: common/models.py:1920
+#: common/models.py:1906
msgid "Display parts in search preview window"
msgstr ""
-#: common/models.py:1926
+#: common/models.py:1912
msgid "Search Supplier Parts"
msgstr ""
-#: common/models.py:1927
+#: common/models.py:1913
msgid "Display supplier parts in search preview window"
msgstr ""
-#: common/models.py:1933
+#: common/models.py:1919
msgid "Search Manufacturer Parts"
msgstr ""
-#: common/models.py:1934
+#: common/models.py:1920
msgid "Display manufacturer parts in search preview window"
msgstr ""
-#: common/models.py:1940
+#: common/models.py:1926
msgid "Hide Inactive Parts"
msgstr "Inactieve Onderdelen Verbergen"
-#: common/models.py:1941
+#: common/models.py:1927
msgid "Excluded inactive parts from search preview window"
msgstr ""
-#: common/models.py:1947
+#: common/models.py:1933
msgid "Search Categories"
msgstr ""
-#: common/models.py:1948
+#: common/models.py:1934
msgid "Display part categories in search preview window"
msgstr ""
-#: common/models.py:1954
+#: common/models.py:1940
msgid "Search Stock"
msgstr "Zoek in Voorraad"
-#: common/models.py:1955
+#: common/models.py:1941
msgid "Display stock items in search preview window"
msgstr ""
-#: common/models.py:1961
+#: common/models.py:1947
msgid "Hide Unavailable Stock Items"
msgstr ""
-#: common/models.py:1962
+#: common/models.py:1948
msgid "Exclude stock items which are not available from the search preview window"
msgstr ""
-#: common/models.py:1968
+#: common/models.py:1954
msgid "Search Locations"
msgstr ""
-#: common/models.py:1969
+#: common/models.py:1955
msgid "Display stock locations in search preview window"
msgstr ""
-#: common/models.py:1975
+#: common/models.py:1961
msgid "Search Companies"
msgstr ""
-#: common/models.py:1976
+#: common/models.py:1962
msgid "Display companies in search preview window"
msgstr ""
-#: common/models.py:1982
+#: common/models.py:1968
msgid "Search Build Orders"
msgstr ""
-#: common/models.py:1983
+#: common/models.py:1969
msgid "Display build orders in search preview window"
msgstr ""
-#: common/models.py:1989
+#: common/models.py:1975
msgid "Search Purchase Orders"
msgstr "Inkooporders Zoeken"
-#: common/models.py:1990
+#: common/models.py:1976
msgid "Display purchase orders in search preview window"
msgstr "Toon inkooporders in het zoekvenster"
-#: common/models.py:1996
+#: common/models.py:1982
msgid "Exclude Inactive Purchase Orders"
msgstr "Inactieve Inkooporders Weglaten"
-#: common/models.py:1997
+#: common/models.py:1983
msgid "Exclude inactive purchase orders from search preview window"
msgstr "Inactieve inkooporders weglaten in het zoekvenster"
-#: common/models.py:2003
+#: common/models.py:1989
msgid "Search Sales Orders"
msgstr "Verkooporders zoeken"
-#: common/models.py:2004
+#: common/models.py:1990
msgid "Display sales orders in search preview window"
msgstr "Toon verkooporders in het zoekvenster"
-#: common/models.py:2010
+#: common/models.py:1996
msgid "Exclude Inactive Sales Orders"
msgstr "Inactieve Verkooporders Weglaten"
-#: common/models.py:2011
+#: common/models.py:1997
msgid "Exclude inactive sales orders from search preview window"
msgstr "Inactieve verkooporders weglaten in het zoekvenster"
-#: common/models.py:2017
+#: common/models.py:2003
msgid "Search Return Orders"
msgstr ""
-#: common/models.py:2018
+#: common/models.py:2004
msgid "Display return orders in search preview window"
msgstr ""
-#: common/models.py:2024
+#: common/models.py:2010
msgid "Exclude Inactive Return Orders"
msgstr ""
-#: common/models.py:2025
+#: common/models.py:2011
msgid "Exclude inactive return orders from search preview window"
msgstr ""
-#: common/models.py:2031
+#: common/models.py:2017
msgid "Search Preview Results"
msgstr ""
-#: common/models.py:2032
+#: common/models.py:2018
msgid "Number of results to show in each section of the search preview window"
msgstr ""
-#: common/models.py:2038
+#: common/models.py:2024
msgid "Regex Search"
msgstr ""
-#: common/models.py:2039
+#: common/models.py:2025
msgid "Enable regular expressions in search queries"
msgstr ""
-#: common/models.py:2045
+#: common/models.py:2031
msgid "Whole Word Search"
msgstr ""
-#: common/models.py:2046
+#: common/models.py:2032
msgid "Search queries return results for whole word matches"
msgstr ""
-#: common/models.py:2052
+#: common/models.py:2038
msgid "Show Quantity in Forms"
msgstr ""
-#: common/models.py:2053
+#: common/models.py:2039
msgid "Display available part quantity in some forms"
msgstr ""
-#: common/models.py:2059
+#: common/models.py:2045
msgid "Escape Key Closes Forms"
msgstr ""
-#: common/models.py:2060
+#: common/models.py:2046
msgid "Use the escape key to close modal forms"
msgstr ""
-#: common/models.py:2066
+#: common/models.py:2052
msgid "Fixed Navbar"
msgstr ""
-#: common/models.py:2067
+#: common/models.py:2053
msgid "The navbar position is fixed to the top of the screen"
msgstr ""
-#: common/models.py:2073
+#: common/models.py:2059
msgid "Date Format"
msgstr ""
-#: common/models.py:2074
+#: common/models.py:2060
msgid "Preferred format for displaying dates"
msgstr ""
-#: common/models.py:2088 part/templates/part/detail.html:41
+#: common/models.py:2074 part/templates/part/detail.html:41
msgid "Part Scheduling"
msgstr ""
-#: common/models.py:2089
+#: common/models.py:2075
msgid "Display part scheduling information"
msgstr ""
-#: common/models.py:2095 part/templates/part/detail.html:62
+#: common/models.py:2081 part/templates/part/detail.html:62
msgid "Part Stocktake"
msgstr ""
-#: common/models.py:2096
+#: common/models.py:2082
msgid "Display part stocktake information (if stocktake functionality is enabled)"
msgstr ""
-#: common/models.py:2102
+#: common/models.py:2088
msgid "Table String Length"
msgstr ""
-#: common/models.py:2103
+#: common/models.py:2089
msgid "Maximimum length limit for strings displayed in table views"
msgstr ""
-#: common/models.py:2112
+#: common/models.py:2098
msgid "Default part label template"
msgstr ""
-#: common/models.py:2113
+#: common/models.py:2099
msgid "The part label template to be automatically selected"
msgstr ""
-#: common/models.py:2121
+#: common/models.py:2107
msgid "Default stock item template"
msgstr ""
-#: common/models.py:2122
+#: common/models.py:2108
msgid "The stock item label template to be automatically selected"
msgstr ""
-#: common/models.py:2130
+#: common/models.py:2116
msgid "Default stock location label template"
msgstr ""
-#: common/models.py:2131
+#: common/models.py:2117
msgid "The stock location label template to be automatically selected"
msgstr ""
-#: common/models.py:2177
+#: common/models.py:2163
msgid "Price break quantity"
msgstr ""
-#: common/models.py:2184 company/serializers.py:434 order/admin.py:43
-#: order/models.py:1132 order/models.py:1939
-#: templates/js/translated/company.js:1433 templates/js/translated/part.js:1856
+#: common/models.py:2170 company/serializers.py:491 order/admin.py:43
+#: order/models.py:1145 order/models.py:1952
+#: templates/js/translated/company.js:1854 templates/js/translated/part.js:1855
#: templates/js/translated/pricing.js:621
-#: templates/js/translated/return_order.js:725
+#: templates/js/translated/return_order.js:737
msgid "Price"
msgstr "Prijs"
-#: common/models.py:2185
+#: common/models.py:2171
msgid "Unit price at specified quantity"
msgstr ""
-#: common/models.py:2345 common/models.py:2523
+#: common/models.py:2331 common/models.py:2509
msgid "Endpoint"
msgstr ""
-#: common/models.py:2346
+#: common/models.py:2332
msgid "Endpoint at which this webhook is received"
msgstr ""
-#: common/models.py:2355
+#: common/models.py:2341
msgid "Name for this webhook"
msgstr ""
-#: common/models.py:2360 part/admin.py:50 part/models.py:1023
-#: plugin/models.py:47 templates/js/translated/table_filters.js:105
-#: templates/js/translated/table_filters.js:189
-#: templates/js/translated/table_filters.js:434
-#: templates/js/translated/table_filters.js:450
-#: templates/js/translated/table_filters.js:629
+#: common/models.py:2346 part/admin.py:50 part/models.py:1024
+#: plugin/models.py:48 templates/js/translated/table_filters.js:111
+#: templates/js/translated/table_filters.js:195
+#: templates/js/translated/table_filters.js:440
+#: templates/js/translated/table_filters.js:456
+#: templates/js/translated/table_filters.js:651
msgid "Active"
msgstr "Actief"
-#: common/models.py:2361
+#: common/models.py:2347
msgid "Is this webhook active"
msgstr ""
-#: common/models.py:2375
+#: common/models.py:2361
msgid "Token"
msgstr "Token"
-#: common/models.py:2376
+#: common/models.py:2362
msgid "Token for access"
msgstr "Token voor toegang"
-#: common/models.py:2383
+#: common/models.py:2369
msgid "Secret"
msgstr "Geheim"
-#: common/models.py:2384
+#: common/models.py:2370
msgid "Shared secret for HMAC"
msgstr ""
-#: common/models.py:2490
+#: common/models.py:2476
msgid "Message ID"
msgstr "Bericht ID"
-#: common/models.py:2491
+#: common/models.py:2477
msgid "Unique identifier for this message"
msgstr ""
-#: common/models.py:2499
+#: common/models.py:2485
msgid "Host"
msgstr "Host"
-#: common/models.py:2500
+#: common/models.py:2486
msgid "Host from which this message was received"
msgstr ""
-#: common/models.py:2507
+#: common/models.py:2493
msgid "Header"
msgstr "Koptekst"
-#: common/models.py:2508
+#: common/models.py:2494
msgid "Header of this message"
msgstr "Koptekst van dit bericht"
-#: common/models.py:2514
+#: common/models.py:2500
msgid "Body"
msgstr "Berichtinhoud"
-#: common/models.py:2515
+#: common/models.py:2501
msgid "Body of this message"
msgstr "Inhoud van dit bericht"
-#: common/models.py:2524
+#: common/models.py:2510
msgid "Endpoint on which this message was received"
msgstr ""
-#: common/models.py:2529
+#: common/models.py:2515
msgid "Worked on"
msgstr ""
-#: common/models.py:2530
+#: common/models.py:2516
msgid "Was the work on this message finished?"
msgstr ""
-#: common/models.py:2684
+#: common/models.py:2670
msgid "Id"
msgstr ""
-#: common/models.py:2690 templates/js/translated/news.js:44
+#: common/models.py:2676 templates/js/translated/company.js:996
+#: templates/js/translated/news.js:44
msgid "Title"
msgstr ""
-#: common/models.py:2700 templates/js/translated/news.js:60
+#: common/models.py:2686 templates/js/translated/news.js:60
msgid "Published"
msgstr ""
-#: common/models.py:2705 templates/InvenTree/settings/plugin_settings.html:32
+#: common/models.py:2691 templates/InvenTree/settings/plugin_settings.html:32
#: templates/js/translated/news.js:56 templates/js/translated/plugin.js:106
msgid "Author"
msgstr ""
-#: common/models.py:2710 templates/js/translated/news.js:52
+#: common/models.py:2696 templates/js/translated/news.js:52
msgid "Summary"
msgstr ""
-#: common/models.py:2715
+#: common/models.py:2701
msgid "Read"
msgstr ""
-#: common/models.py:2716
+#: common/models.py:2702
msgid "Was this news item read?"
msgstr ""
-#: common/models.py:2736 company/models.py:143 part/models.py:914
+#: common/models.py:2722 company/models.py:139 part/models.py:915
#: report/templates/report/inventree_bill_of_materials_report.html:126
#: report/templates/report/inventree_bill_of_materials_report.html:148
#: report/templates/report/inventree_return_order_report_base.html:35
@@ -3422,7 +3400,7 @@ msgstr ""
msgid "Image"
msgstr "Afbeelding"
-#: common/models.py:2737
+#: common/models.py:2723
msgid "Image file"
msgstr ""
@@ -3499,7 +3477,7 @@ msgstr ""
#: company/models.py:113 company/templates/company/company_base.html:101
#: templates/InvenTree/settings/plugin_settings.html:54
-#: templates/js/translated/company.js:514
+#: templates/js/translated/company.js:521
msgid "Website"
msgstr "Website"
@@ -3507,303 +3485,387 @@ msgstr "Website"
msgid "Company website URL"
msgstr "URL bedrijfswebsite"
-#: company/models.py:118 company/templates/company/company_base.html:119
-msgid "Address"
-msgstr "Adres"
-
-#: company/models.py:119
-msgid "Company address"
-msgstr "Bedrijfsadres"
-
-#: company/models.py:122
+#: company/models.py:118
msgid "Phone number"
msgstr "Telefoonnummer"
-#: company/models.py:123
+#: company/models.py:119
msgid "Contact phone number"
msgstr "Telefoonnummer voor contact"
-#: company/models.py:126 company/templates/company/company_base.html:133
+#: company/models.py:122 company/templates/company/company_base.html:133
#: templates/InvenTree/settings/user.html:49
-#: templates/js/translated/company.js:659
+#: templates/js/translated/company.js:666
msgid "Email"
msgstr "Email"
-#: company/models.py:126
+#: company/models.py:122
msgid "Contact email address"
msgstr "Contact e-mailadres"
-#: company/models.py:129 company/templates/company/company_base.html:140
-#: order/models.py:266 order/templates/order/order_base.html:207
+#: company/models.py:125 company/templates/company/company_base.html:140
+#: order/models.py:270 order/templates/order/order_base.html:203
#: order/templates/order/return_order_base.html:175
#: order/templates/order/sales_order_base.html:215
msgid "Contact"
msgstr "Contact"
-#: company/models.py:130
+#: company/models.py:126
msgid "Point of contact"
msgstr "Contactpunt"
-#: company/models.py:132
+#: company/models.py:128
msgid "Link to external company information"
msgstr "Link naar externe bedrijfsinformatie"
-#: company/models.py:146
+#: company/models.py:142
msgid "is customer"
msgstr "is klant"
-#: company/models.py:146
+#: company/models.py:142
msgid "Do you sell items to this company?"
msgstr ""
-#: company/models.py:148
+#: company/models.py:144
msgid "is supplier"
msgstr "is leverancier"
-#: company/models.py:148
+#: company/models.py:144
msgid "Do you purchase items from this company?"
msgstr ""
-#: company/models.py:150
+#: company/models.py:146
msgid "is manufacturer"
msgstr "is fabrikant"
-#: company/models.py:150
+#: company/models.py:146
msgid "Does this company manufacture parts?"
msgstr "Fabriceert dit bedrijf onderdelen?"
-#: company/models.py:157
+#: company/models.py:153
msgid "Default currency used for this company"
msgstr "Standaardvaluta die gebruikt wordt voor dit bedrijf"
-#: company/models.py:223 company/templates/company/company_base.html:8
+#: company/models.py:235 company/models.py:328
+#: company/templates/company/company_base.html:8
#: company/templates/company/company_base.html:12
-#: templates/InvenTree/search.html:178 templates/js/translated/company.js:487
+#: templates/InvenTree/search.html:178 templates/js/translated/company.js:494
msgid "Company"
msgstr "Bedrijf"
-#: company/models.py:278 company/models.py:553 stock/models.py:675
-#: stock/serializers.py:155 stock/templates/stock/item_base.html:143
-#: templates/js/translated/bom.js:621
+#: company/models.py:324
+msgid "Company already has a primary address"
+msgstr ""
+
+#: company/models.py:329
+msgid "Select company"
+msgstr ""
+
+#: company/models.py:332
+msgid "Address title"
+msgstr ""
+
+#: company/models.py:333
+msgid "Title describing the address entry"
+msgstr ""
+
+#: company/models.py:337
+msgid "Primary address"
+msgstr ""
+
+#: company/models.py:338
+msgid "Set as primary address"
+msgstr ""
+
+#: company/models.py:341 templates/js/translated/company.js:941
+#: templates/js/translated/company.js:1002
+msgid "Line 1"
+msgstr ""
+
+#: company/models.py:342
+msgid "Address line 1"
+msgstr ""
+
+#: company/models.py:346 templates/js/translated/company.js:942
+#: templates/js/translated/company.js:1008
+msgid "Line 2"
+msgstr ""
+
+#: company/models.py:347
+msgid "Address line 2"
+msgstr ""
+
+#: company/models.py:351 company/models.py:352
+#: templates/js/translated/company.js:1014
+msgid "Postal code"
+msgstr ""
+
+#: company/models.py:356
+msgid "City/Region"
+msgstr ""
+
+#: company/models.py:357
+msgid "Postal code city/region"
+msgstr ""
+
+#: company/models.py:361
+msgid "State/Province"
+msgstr ""
+
+#: company/models.py:362
+msgid "State or province"
+msgstr ""
+
+#: company/models.py:366 templates/js/translated/company.js:1032
+msgid "Country"
+msgstr ""
+
+#: company/models.py:367
+msgid "Address country"
+msgstr ""
+
+#: company/models.py:371
+msgid "Courier shipping notes"
+msgstr ""
+
+#: company/models.py:372
+msgid "Notes for shipping courier"
+msgstr ""
+
+#: company/models.py:376
+msgid "Internal shipping notes"
+msgstr ""
+
+#: company/models.py:377
+msgid "Shipping notes for internal use"
+msgstr ""
+
+#: company/models.py:382
+msgid "Link to address information (external)"
+msgstr ""
+
+#: company/models.py:427 company/models.py:702 stock/models.py:675
+#: stock/serializers.py:204 stock/templates/stock/item_base.html:143
+#: templates/js/translated/bom.js:622
msgid "Base Part"
msgstr "Basis onderdeel"
-#: company/models.py:282 company/models.py:557
+#: company/models.py:431 company/models.py:706
msgid "Select part"
msgstr "Onderdeel selecteren"
-#: company/models.py:293 company/templates/company/company_base.html:77
+#: company/models.py:442 company/templates/company/company_base.html:77
#: company/templates/company/manufacturer_part.html:90
-#: company/templates/company/supplier_part.html:146 part/serializers.py:354
+#: company/templates/company/supplier_part.html:146 part/serializers.py:404
#: stock/templates/stock/item_base.html:208
-#: templates/js/translated/company.js:498
-#: templates/js/translated/company.js:824
-#: templates/js/translated/company.js:954
-#: templates/js/translated/company.js:1221
-#: templates/js/translated/table_filters.js:709
+#: templates/js/translated/company.js:505
+#: templates/js/translated/company.js:1149
+#: templates/js/translated/company.js:1327
+#: templates/js/translated/company.js:1642
+#: templates/js/translated/table_filters.js:731
msgid "Manufacturer"
msgstr "Fabrikant"
-#: company/models.py:294
+#: company/models.py:443
msgid "Select manufacturer"
msgstr "Fabrikant selecteren"
-#: company/models.py:300 company/templates/company/manufacturer_part.html:101
-#: company/templates/company/supplier_part.html:154 part/serializers.py:360
-#: templates/js/translated/company.js:340
-#: templates/js/translated/company.js:823
-#: templates/js/translated/company.js:970
-#: templates/js/translated/company.js:1240 templates/js/translated/part.js:1773
-#: templates/js/translated/purchase_order.js:1814
-#: templates/js/translated/purchase_order.js:2021
+#: company/models.py:449 company/templates/company/manufacturer_part.html:101
+#: company/templates/company/supplier_part.html:154 part/serializers.py:410
+#: templates/js/translated/company.js:350
+#: templates/js/translated/company.js:1148
+#: templates/js/translated/company.js:1343
+#: templates/js/translated/company.js:1661 templates/js/translated/part.js:1772
+#: templates/js/translated/purchase_order.js:1829
+#: templates/js/translated/purchase_order.js:2031
msgid "MPN"
msgstr "MPN"
-#: company/models.py:301
+#: company/models.py:450
msgid "Manufacturer Part Number"
msgstr "Fabrikant artikel nummer (MPN)"
-#: company/models.py:307
+#: company/models.py:456
msgid "URL for external manufacturer part link"
msgstr "URL voor externe link van het fabrikant onderdeel"
-#: company/models.py:313
+#: company/models.py:462
msgid "Manufacturer part description"
msgstr "Omschrijving onderdeel fabrikant"
-#: company/models.py:360 company/models.py:384 company/models.py:578
+#: company/models.py:509 company/models.py:533 company/models.py:727
#: company/templates/company/manufacturer_part.html:7
#: company/templates/company/manufacturer_part.html:24
#: stock/templates/stock/item_base.html:218
msgid "Manufacturer Part"
msgstr "Fabrikant onderdeel"
-#: company/models.py:391
+#: company/models.py:540
msgid "Parameter name"
msgstr "Parameternaam"
-#: company/models.py:397
+#: company/models.py:546
#: report/templates/report/inventree_test_report_base.html:104
-#: stock/models.py:2255 templates/js/translated/company.js:872
-#: templates/js/translated/company.js:1077 templates/js/translated/part.js:1465
-#: templates/js/translated/stock.js:1446
+#: stock/models.py:2255 templates/js/translated/company.js:1197
+#: templates/js/translated/company.js:1450 templates/js/translated/part.js:1464
+#: templates/js/translated/stock.js:1445
msgid "Value"
msgstr "Waarde"
-#: company/models.py:398
+#: company/models.py:547
msgid "Parameter value"
msgstr "Parameterwaarde"
-#: company/models.py:404 company/templates/company/supplier_part.html:169
-#: part/admin.py:40 part/models.py:987 part/models.py:3407
+#: company/models.py:553 company/templates/company/supplier_part.html:169
+#: part/admin.py:40 part/models.py:988 part/models.py:3441
#: part/templates/part/part_base.html:286
-#: templates/js/translated/company.js:1083 templates/js/translated/part.js:1484
-#: templates/js/translated/part.js:1588 templates/js/translated/part.js:2262
+#: templates/js/translated/company.js:1456 templates/js/translated/part.js:1483
+#: templates/js/translated/part.js:1587 templates/js/translated/part.js:2338
msgid "Units"
msgstr "Eenheden"
-#: company/models.py:405
+#: company/models.py:554
msgid "Parameter units"
msgstr "Parameter eenheden"
-#: company/models.py:498
+#: company/models.py:647
msgid "Pack units must be compatible with the base part units"
msgstr ""
-#: company/models.py:504
+#: company/models.py:653
msgid "Pack units must be greater than zero"
msgstr ""
-#: company/models.py:520
+#: company/models.py:669
msgid "Linked manufacturer part must reference the same base part"
msgstr "Gekoppeld fabrikant onderdeel moet verwijzen naar hetzelfde basis onderdeel"
-#: company/models.py:564 company/templates/company/company_base.html:82
-#: company/templates/company/supplier_part.html:130 order/models.py:382
-#: order/templates/order/order_base.html:140 part/bom.py:285 part/bom.py:313
-#: part/serializers.py:343 stock/templates/stock/item_base.html:225
+#: company/models.py:713 company/templates/company/company_base.html:82
+#: company/templates/company/supplier_part.html:130 order/models.py:395
+#: order/templates/order/order_base.html:136 part/bom.py:285 part/bom.py:313
+#: part/serializers.py:393 stock/templates/stock/item_base.html:225
#: templates/email/overdue_purchase_order.html:16
-#: templates/js/translated/company.js:339
-#: templates/js/translated/company.js:502
-#: templates/js/translated/company.js:1194 templates/js/translated/part.js:1741
+#: templates/js/translated/company.js:349
+#: templates/js/translated/company.js:509
+#: templates/js/translated/company.js:1615 templates/js/translated/part.js:1740
#: templates/js/translated/pricing.js:498
-#: templates/js/translated/purchase_order.js:1653
-#: templates/js/translated/table_filters.js:713
+#: templates/js/translated/purchase_order.js:1668
+#: templates/js/translated/table_filters.js:735
msgid "Supplier"
msgstr "Leverancier"
-#: company/models.py:565
+#: company/models.py:714
msgid "Select supplier"
msgstr "Leverancier selecteren"
-#: company/models.py:570 company/templates/company/supplier_part.html:140
-#: part/bom.py:286 part/bom.py:314 part/serializers.py:349
-#: templates/js/translated/company.js:338 templates/js/translated/part.js:1759
+#: company/models.py:719 company/templates/company/supplier_part.html:140
+#: part/bom.py:286 part/bom.py:314 part/serializers.py:399
+#: templates/js/translated/company.js:348 templates/js/translated/part.js:1758
#: templates/js/translated/pricing.js:510
-#: templates/js/translated/purchase_order.js:1813
-#: templates/js/translated/purchase_order.js:1996
+#: templates/js/translated/purchase_order.js:1828
+#: templates/js/translated/purchase_order.js:2006
msgid "SKU"
msgstr "SKU"
-#: company/models.py:571 part/serializers.py:349
+#: company/models.py:720 part/serializers.py:399
msgid "Supplier stock keeping unit"
msgstr ""
-#: company/models.py:579
+#: company/models.py:728
msgid "Select manufacturer part"
msgstr "Selecteer fabrikant onderdeel"
-#: company/models.py:585
+#: company/models.py:734
msgid "URL for external supplier part link"
msgstr ""
-#: company/models.py:591
+#: company/models.py:740
msgid "Supplier part description"
msgstr ""
-#: company/models.py:596 company/templates/company/supplier_part.html:188
-#: part/admin.py:279 part/models.py:3801 part/templates/part/upload_bom.html:59
+#: company/models.py:745 company/templates/company/supplier_part.html:188
+#: part/admin.py:279 part/models.py:3845 part/templates/part/upload_bom.html:59
#: report/templates/report/inventree_bill_of_materials_report.html:140
#: report/templates/report/inventree_po_report_base.html:32
#: report/templates/report/inventree_return_order_report_base.html:27
#: report/templates/report/inventree_so_report_base.html:32
-#: stock/serializers.py:418
+#: stock/serializers.py:484
msgid "Note"
msgstr "Opmerking"
-#: company/models.py:600 part/models.py:1919
+#: company/models.py:749 part/models.py:1921
msgid "base cost"
msgstr "basisprijs"
-#: company/models.py:600 part/models.py:1919
+#: company/models.py:749 part/models.py:1921
msgid "Minimum charge (e.g. stocking fee)"
msgstr "Minimale kosten (bijv. voorraadkosten)"
-#: company/models.py:602 company/templates/company/supplier_part.html:161
+#: company/models.py:751 company/templates/company/supplier_part.html:161
#: stock/admin.py:119 stock/models.py:701
#: stock/templates/stock/item_base.html:241
-#: templates/js/translated/company.js:1256
-#: templates/js/translated/stock.js:2160
+#: templates/js/translated/company.js:1677
+#: templates/js/translated/stock.js:2317
msgid "Packaging"
msgstr ""
-#: company/models.py:602
+#: company/models.py:751
msgid "Part packaging"
msgstr ""
-#: company/models.py:606 templates/js/translated/company.js:1261
-#: templates/js/translated/part.js:1793 templates/js/translated/part.js:1848
-#: templates/js/translated/purchase_order.js:300
-#: templates/js/translated/purchase_order.js:827
-#: templates/js/translated/purchase_order.js:1073
-#: templates/js/translated/purchase_order.js:2052
-#: templates/js/translated/purchase_order.js:2069
+#: company/models.py:755 templates/js/translated/company.js:1682
+#: templates/js/translated/part.js:1792 templates/js/translated/part.js:1847
+#: templates/js/translated/purchase_order.js:311
+#: templates/js/translated/purchase_order.js:842
+#: templates/js/translated/purchase_order.js:1088
+#: templates/js/translated/purchase_order.js:2062
+#: templates/js/translated/purchase_order.js:2079
msgid "Pack Quantity"
msgstr ""
-#: company/models.py:607
+#: company/models.py:756
msgid "Total quantity supplied in a single pack. Leave empty for single items."
msgstr ""
-#: company/models.py:624 part/models.py:1921
+#: company/models.py:773 part/models.py:1923
msgid "multiple"
msgstr "meerdere"
-#: company/models.py:624
+#: company/models.py:773
msgid "Order multiple"
msgstr "Order meerdere"
-#: company/models.py:632 company/templates/company/supplier_part.html:115
+#: company/models.py:781 company/templates/company/supplier_part.html:115
#: templates/email/build_order_required_stock.html:19
#: templates/email/low_stock_notification.html:17
-#: templates/js/translated/bom.js:1127 templates/js/translated/build.js:2136
-#: templates/js/translated/build.js:3045
-#: templates/js/translated/model_renderers.js:205
-#: templates/js/translated/part.js:670 templates/js/translated/part.js:672
-#: templates/js/translated/part.js:677
-#: templates/js/translated/table_filters.js:286
-#: templates/js/translated/table_filters.js:492
+#: templates/js/translated/bom.js:1145 templates/js/translated/build.js:2490
+#: templates/js/translated/index.js:118
+#: templates/js/translated/model_renderers.js:219
+#: templates/js/translated/part.js:669 templates/js/translated/part.js:671
+#: templates/js/translated/part.js:676
+#: templates/js/translated/table_filters.js:292
+#: templates/js/translated/table_filters.js:510
msgid "Available"
msgstr "Beschikbaar"
-#: company/models.py:633
+#: company/models.py:782
msgid "Quantity available from supplier"
msgstr ""
-#: company/models.py:637
+#: company/models.py:786
msgid "Availability Updated"
msgstr ""
-#: company/models.py:638
+#: company/models.py:787
msgid "Date of last update of availability data"
msgstr ""
-#: company/serializers.py:99
+#: company/serializers.py:156
msgid "Default currency used for this supplier"
msgstr ""
#: company/templates/company/company_base.html:22
-#: templates/js/translated/purchase_order.js:228
+#: templates/js/translated/purchase_order.js:239
msgid "Create Purchase Order"
msgstr "Inkooporder aanmaken"
@@ -3816,7 +3878,7 @@ msgid "Edit company information"
msgstr "Bedrijfsinformatie bewerken"
#: company/templates/company/company_base.html:34
-#: templates/js/translated/company.js:436
+#: templates/js/translated/company.js:443
msgid "Edit Company"
msgstr "Bedrijf bewerken"
@@ -3856,17 +3918,17 @@ msgstr "Afbeelding downloaden van URL"
msgid "Delete image"
msgstr ""
-#: company/templates/company/company_base.html:87 order/models.py:779
-#: order/models.py:1738 order/templates/order/return_order_base.html:132
+#: company/templates/company/company_base.html:87 order/models.py:792
+#: order/models.py:1751 order/templates/order/return_order_base.html:132
#: order/templates/order/sales_order_base.html:145 stock/models.py:720
-#: stock/models.py:721 stock/serializers.py:825
+#: stock/models.py:721 stock/serializers.py:942
#: stock/templates/stock/item_base.html:401
#: templates/email/overdue_sales_order.html:16
-#: templates/js/translated/company.js:494
-#: templates/js/translated/return_order.js:284
-#: templates/js/translated/sales_order.js:772
-#: templates/js/translated/stock.js:2696
-#: templates/js/translated/table_filters.js:717
+#: templates/js/translated/company.js:501
+#: templates/js/translated/return_order.js:296
+#: templates/js/translated/sales_order.js:784
+#: templates/js/translated/stock.js:2827
+#: templates/js/translated/table_filters.js:739
msgid "Customer"
msgstr "Klant"
@@ -3874,6 +3936,13 @@ msgstr "Klant"
msgid "Uses default currency"
msgstr "Gebruik standaard valuta"
+#: company/templates/company/company_base.html:119 order/models.py:279
+#: order/templates/order/order_base.html:210
+#: order/templates/order/return_order_base.html:182
+#: order/templates/order/sales_order_base.html:222
+msgid "Address"
+msgstr "Adres"
+
#: company/templates/company/company_base.html:126
msgid "Phone"
msgstr "Telefoon"
@@ -3906,7 +3975,7 @@ msgstr "Afbeelding Downloaden"
#: company/templates/company/detail.html:15
#: company/templates/company/manufacturer_part_sidebar.html:7
-#: templates/InvenTree/search.html:120 templates/js/translated/search.js:189
+#: templates/InvenTree/search.html:120 templates/js/translated/search.js:147
msgid "Supplier Parts"
msgstr ""
@@ -3916,129 +3985,121 @@ msgstr ""
#: company/templates/company/detail.html:20
#: company/templates/company/manufacturer_part.html:123
-#: part/templates/part/detail.html:381
+#: part/templates/part/detail.html:356
msgid "New Supplier Part"
msgstr ""
-#: company/templates/company/detail.html:37
-#: company/templates/company/detail.html:85
-#: part/templates/part/category.html:183
-msgid "Order parts"
-msgstr "Bestel onderdelen"
-
-#: company/templates/company/detail.html:42
-#: company/templates/company/detail.html:90
-msgid "Delete parts"
-msgstr "Verwijder onderdelen"
-
-#: company/templates/company/detail.html:43
-#: company/templates/company/detail.html:91
-msgid "Delete Parts"
-msgstr "Verwijder Onderdelen"
-
-#: company/templates/company/detail.html:62 templates/InvenTree/search.html:105
-#: templates/js/translated/search.js:193
+#: company/templates/company/detail.html:41 templates/InvenTree/search.html:105
+#: templates/js/translated/search.js:151
msgid "Manufacturer Parts"
msgstr "Fabrikant onderdelen"
-#: company/templates/company/detail.html:66
+#: company/templates/company/detail.html:45
msgid "Create new manufacturer part"
msgstr "Maak nieuw fabrikant onderdeel"
-#: company/templates/company/detail.html:67 part/templates/part/detail.html:411
+#: company/templates/company/detail.html:46 part/templates/part/detail.html:376
msgid "New Manufacturer Part"
msgstr "Nieuw fabrikant onderdeel"
-#: company/templates/company/detail.html:108
+#: company/templates/company/detail.html:65
msgid "Supplier Stock"
msgstr ""
-#: company/templates/company/detail.html:118
+#: company/templates/company/detail.html:75
#: company/templates/company/sidebar.html:12
#: company/templates/company/supplier_part_sidebar.html:7
#: 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:108 part/templates/part/part_sidebar.html:35
-#: templates/InvenTree/index.html:275 templates/InvenTree/search.html:199
+#: part/templates/part/detail.html:106 part/templates/part/part_sidebar.html:35
+#: templates/InvenTree/index.html:227 templates/InvenTree/search.html:199
#: templates/InvenTree/settings/sidebar.html:55
-#: templates/js/translated/search.js:247 templates/navbar.html:50
+#: templates/js/translated/search.js:205 templates/navbar.html:50
#: users/models.py:43
msgid "Purchase Orders"
msgstr "Inkooporders"
-#: company/templates/company/detail.html:122
+#: company/templates/company/detail.html:79
#: order/templates/order/purchase_orders.html:17
msgid "Create new purchase order"
msgstr "Nieuwe inkooporder aanmaken"
-#: company/templates/company/detail.html:123
+#: company/templates/company/detail.html:80
#: order/templates/order/purchase_orders.html:18
msgid "New Purchase Order"
msgstr "Nieuwe Inkooporder"
-#: company/templates/company/detail.html:146
+#: company/templates/company/detail.html:101
#: company/templates/company/sidebar.html:21
#: 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:131 part/templates/part/part_sidebar.html:39
-#: templates/InvenTree/index.html:307 templates/InvenTree/search.html:219
+#: part/templates/part/detail.html:127 part/templates/part/part_sidebar.html:39
+#: templates/InvenTree/index.html:259 templates/InvenTree/search.html:219
#: templates/InvenTree/settings/sidebar.html:57
-#: templates/js/translated/search.js:261 templates/navbar.html:62
+#: templates/js/translated/search.js:219 templates/navbar.html:62
#: users/models.py:44
msgid "Sales Orders"
msgstr "Verkooporders"
-#: company/templates/company/detail.html:150
+#: company/templates/company/detail.html:105
#: order/templates/order/sales_orders.html:20
msgid "Create new sales order"
msgstr "Nieuwe inkooporder aanmaken"
-#: company/templates/company/detail.html:151
+#: company/templates/company/detail.html:106
#: order/templates/order/sales_orders.html:21
msgid "New Sales Order"
msgstr "Nieuwe Verkooporder"
-#: company/templates/company/detail.html:173
-#: templates/js/translated/build.js:1976
+#: company/templates/company/detail.html:126
msgid "Assigned Stock"
msgstr ""
-#: company/templates/company/detail.html:191
+#: company/templates/company/detail.html:142
#: company/templates/company/sidebar.html:29
#: order/templates/order/return_order_base.html:13
#: order/templates/order/return_orders.html:8
#: order/templates/order/return_orders.html:15
#: templates/InvenTree/settings/sidebar.html:59
-#: templates/js/translated/search.js:274 templates/navbar.html:65
+#: templates/js/translated/search.js:232 templates/navbar.html:65
#: users/models.py:45
msgid "Return Orders"
msgstr ""
-#: company/templates/company/detail.html:195
+#: company/templates/company/detail.html:146
#: order/templates/order/return_orders.html:20
msgid "Create new return order"
msgstr ""
-#: company/templates/company/detail.html:196
+#: company/templates/company/detail.html:147
#: order/templates/order/return_orders.html:21
msgid "New Return Order"
msgstr ""
-#: company/templates/company/detail.html:221
+#: company/templates/company/detail.html:168
msgid "Company Notes"
msgstr "Opmerkingen Bedrijf"
-#: company/templates/company/detail.html:236
+#: company/templates/company/detail.html:183
msgid "Company Contacts"
msgstr ""
-#: company/templates/company/detail.html:240
-#: company/templates/company/detail.html:241
+#: company/templates/company/detail.html:187
+#: company/templates/company/detail.html:188
msgid "Add Contact"
msgstr ""
+#: company/templates/company/detail.html:206
+msgid "Company addresses"
+msgstr ""
+
+#: company/templates/company/detail.html:210
+#: company/templates/company/detail.html:211
+msgid "Add Address"
+msgstr ""
+
#: company/templates/company/index.html:8
msgid "Supplier List"
msgstr "Leverancierslijst"
@@ -4050,17 +4111,17 @@ msgstr "Fabrikanten"
#: company/templates/company/manufacturer_part.html:35
#: company/templates/company/supplier_part.html:228
-#: part/templates/part/detail.html:111 part/templates/part/part_base.html:85
+#: part/templates/part/detail.html:109 part/templates/part/part_base.html:85
msgid "Order part"
msgstr "Order onderdeel"
#: company/templates/company/manufacturer_part.html:39
-#: templates/js/translated/company.js:1001
+#: templates/js/translated/company.js:1374
msgid "Edit manufacturer part"
msgstr "Fabrikant onderdeel bewerken"
#: company/templates/company/manufacturer_part.html:43
-#: templates/js/translated/company.js:1002
+#: templates/js/translated/company.js:1375
msgid "Delete manufacturer part"
msgstr "Fabrikant onderdeel verwijderen"
@@ -4080,40 +4141,22 @@ msgstr "Geen fabrikanten informatie beschikbaar"
msgid "Suppliers"
msgstr "Leveranciers"
-#: company/templates/company/manufacturer_part.html:136
-#: part/templates/part/detail.html:392
-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:393 part/templates/part/detail.html:423
-#: templates/js/translated/forms.js:506 templates/js/translated/helpers.js:105
-#: templates/js/translated/part.js:370 templates/js/translated/pricing.js:629
-#: templates/js/translated/stock.js:216 users/models.py:247
-msgid "Delete"
-msgstr "Verwijderen"
-
-#: company/templates/company/manufacturer_part.html:166
+#: company/templates/company/manufacturer_part.html:156
#: company/templates/company/manufacturer_part_sidebar.html:5
#: part/templates/part/category_sidebar.html:20
-#: part/templates/part/detail.html:208 part/templates/part/part_sidebar.html:8
+#: part/templates/part/detail.html:195 part/templates/part/part_sidebar.html:8
msgid "Parameters"
msgstr "Parameters"
-#: company/templates/company/manufacturer_part.html:170
-#: part/templates/part/detail.html:213
+#: company/templates/company/manufacturer_part.html:160
+#: part/templates/part/detail.html:200
#: templates/InvenTree/settings/category.html:12
#: templates/InvenTree/settings/part_parameters.html:12
msgid "New Parameter"
msgstr "Nieuwe Parameter"
-#: company/templates/company/manufacturer_part.html:183
-msgid "Delete parameters"
-msgstr "Parameter verwijderen"
-
-#: company/templates/company/manufacturer_part.html:226
-#: templates/js/translated/part.js:1396
+#: company/templates/company/manufacturer_part.html:206
+#: templates/js/translated/part.js:1395
msgid "Add Parameter"
msgstr "Parameter toevoegen"
@@ -4137,23 +4180,28 @@ msgstr "Toegewezen Voorraadartikelen"
msgid "Contacts"
msgstr ""
+#: company/templates/company/sidebar.html:35
+msgid "Addresses"
+msgstr ""
+
#: company/templates/company/supplier_part.html:7
#: company/templates/company/supplier_part.html:24 stock/models.py:684
#: stock/templates/stock/item_base.html:234
-#: templates/js/translated/company.js:1210
-#: templates/js/translated/purchase_order.js:747
-#: templates/js/translated/stock.js:2016
+#: templates/js/translated/company.js:1631
+#: templates/js/translated/purchase_order.js:758
+#: templates/js/translated/stock.js:2173
msgid "Supplier Part"
msgstr "Leveranciersonderdeel"
#: company/templates/company/supplier_part.html:51
+#: templates/js/translated/company.js:1557
msgid "Supplier part actions"
msgstr ""
#: company/templates/company/supplier_part.html:56
#: company/templates/company/supplier_part.html:57
#: company/templates/company/supplier_part.html:229
-#: part/templates/part/detail.html:112
+#: part/templates/part/detail.html:110
msgid "Order Part"
msgstr "Order Onderdeel"
@@ -4164,13 +4212,13 @@ msgstr ""
#: company/templates/company/supplier_part.html:64
#: company/templates/company/supplier_part.html:65
-#: templates/js/translated/company.js:283
+#: templates/js/translated/company.js:293
msgid "Edit Supplier Part"
msgstr ""
#: company/templates/company/supplier_part.html:69
#: company/templates/company/supplier_part.html:70
-#: templates/js/translated/company.js:258
+#: templates/js/translated/company.js:268
msgid "Duplicate Supplier Part"
msgstr ""
@@ -4197,7 +4245,7 @@ msgstr "Nieuw voorraadartikel aanmaken"
#: company/templates/company/supplier_part.html:211
#: part/templates/part/detail.html:25 stock/templates/stock/location.html:198
-#: templates/js/translated/stock.js:504
+#: templates/js/translated/stock.js:503
msgid "New Stock Item"
msgstr "Nieuw Voorraadartikel"
@@ -4205,37 +4253,37 @@ msgstr "Nieuw Voorraadartikel"
msgid "Supplier Part Orders"
msgstr "Leverancier Onderdelenorders"
-#: company/templates/company/supplier_part.html:249
+#: company/templates/company/supplier_part.html:247
msgid "Pricing Information"
msgstr "Prijsinformatie"
-#: company/templates/company/supplier_part.html:254
-#: templates/js/translated/company.js:387
+#: company/templates/company/supplier_part.html:252
+#: templates/js/translated/company.js:397
#: templates/js/translated/pricing.js:684
msgid "Add Price Break"
msgstr ""
-#: company/templates/company/supplier_part.html:281
+#: company/templates/company/supplier_part.html:277
msgid "Supplier Part QR Code"
msgstr ""
-#: company/templates/company/supplier_part.html:292
+#: company/templates/company/supplier_part.html:288
msgid "Link Barcode to Supplier Part"
msgstr ""
-#: company/templates/company/supplier_part.html:365
+#: company/templates/company/supplier_part.html:361
msgid "Update Part Availability"
msgstr ""
#: company/templates/company/supplier_part_sidebar.html:5 part/tasks.py:293
-#: part/templates/part/category.html:199
+#: part/templates/part/category.html:182
#: part/templates/part/category_sidebar.html:17 stock/admin.py:47
-#: stock/templates/stock/location.html:168
+#: stock/serializers.py:662 stock/templates/stock/location.html:168
#: stock/templates/stock/location.html:182
#: stock/templates/stock/location.html:194
#: stock/templates/stock/location_sidebar.html:7
-#: templates/InvenTree/search.html:155 templates/js/translated/part.js:1034
-#: templates/js/translated/search.js:214 templates/js/translated/stock.js:2514
+#: templates/InvenTree/search.html:155 templates/js/translated/part.js:1033
+#: templates/js/translated/search.js:172 templates/js/translated/stock.js:2645
#: users/models.py:41
msgid "Stock Items"
msgstr "Voorraadartikelen"
@@ -4261,7 +4309,7 @@ msgstr "Klanten"
msgid "New Customer"
msgstr "Nieuwe Klant"
-#: company/views.py:52 templates/js/translated/search.js:234
+#: company/views.py:52 templates/js/translated/search.js:192
msgid "Companies"
msgstr "Bedrijven"
@@ -4269,72 +4317,76 @@ msgstr "Bedrijven"
msgid "New Company"
msgstr "Nieuw Bedrijf"
-#: label/models.py:104
+#: label/models.py:112
msgid "Label name"
msgstr "Labelnaam"
-#: label/models.py:111
+#: label/models.py:119
msgid "Label description"
msgstr "Label beschrijving"
-#: label/models.py:118
+#: label/models.py:126
msgid "Label"
msgstr "Label"
-#: label/models.py:119
+#: label/models.py:127
msgid "Label template file"
msgstr "Label template bestand"
-#: label/models.py:125 report/models.py:273
+#: label/models.py:133 report/models.py:273
msgid "Enabled"
msgstr "Ingeschakeld"
-#: label/models.py:126
+#: label/models.py:134
msgid "Label template is enabled"
msgstr "Label template is ingeschakeld"
-#: label/models.py:131
+#: label/models.py:139
msgid "Width [mm]"
msgstr "Breedte [mm]"
-#: label/models.py:132
+#: label/models.py:140
msgid "Label width, specified in mm"
msgstr "Label breedte, gespecificeerd in mm"
-#: label/models.py:138
+#: label/models.py:146
msgid "Height [mm]"
msgstr "Hoogte [mm]"
-#: label/models.py:139
+#: label/models.py:147
msgid "Label height, specified in mm"
msgstr "Label hoogte, gespecificeerd in mm"
-#: label/models.py:145 report/models.py:266
+#: label/models.py:153 report/models.py:266
msgid "Filename Pattern"
msgstr "Bestandsnaam Patroon"
-#: label/models.py:146
+#: label/models.py:154
msgid "Pattern for generating label filenames"
msgstr ""
-#: label/models.py:242
+#: label/models.py:250
msgid "Query filters (comma-separated list of key=value pairs),"
msgstr ""
-#: label/models.py:243 label/models.py:284 label/models.py:312
-#: report/models.py:294 report/models.py:452 report/models.py:490
-#: report/models.py:528
+#: label/models.py:251 label/models.py:292 label/models.py:320
+#: label/models.py:356 report/models.py:294 report/models.py:454
+#: report/models.py:492 report/models.py:530
msgid "Filters"
msgstr "Filters"
-#: label/models.py:283
+#: label/models.py:291
msgid "Query filters (comma-separated list of key=value pairs"
msgstr ""
-#: label/models.py:311
+#: label/models.py:319
msgid "Part query filters (comma-separated value of key=value pairs)"
msgstr ""
+#: label/models.py:355
+msgid "Query filters (comma-separated list of key=value pairs)"
+msgstr ""
+
#: label/templates/label/part/part_label.html:31
#: label/templates/label/stockitem/qr.html:21
#: label/templates/label/stocklocation/qr.html:21
@@ -4352,8 +4404,8 @@ msgstr ""
#: report/templates/report/inventree_po_report_base.html:31
#: report/templates/report/inventree_so_report_base.html:31
#: templates/js/translated/order.js:327
-#: templates/js/translated/purchase_order.js:2093
-#: templates/js/translated/sales_order.js:1827
+#: templates/js/translated/purchase_order.js:2103
+#: templates/js/translated/sales_order.js:1839
msgid "Total Price"
msgstr "Totaalprijs"
@@ -4361,30 +4413,30 @@ msgstr "Totaalprijs"
msgid "No matching purchase order found"
msgstr ""
-#: order/api.py:1452 order/models.py:1178 order/models.py:1262
+#: order/api.py:1452 order/models.py:1191 order/models.py:1275
#: order/templates/order/order_base.html:9
#: order/templates/order/order_base.html:18
#: report/templates/report/inventree_po_report_base.html:14
#: stock/templates/stock/item_base.html:177
#: templates/email/overdue_purchase_order.html:15
-#: templates/js/translated/part.js:1718 templates/js/translated/pricing.js:790
-#: templates/js/translated/purchase_order.js:154
-#: templates/js/translated/purchase_order.js:748
-#: templates/js/translated/purchase_order.js:1637
-#: templates/js/translated/stock.js:1996 templates/js/translated/stock.js:2644
+#: templates/js/translated/part.js:1717 templates/js/translated/pricing.js:790
+#: templates/js/translated/purchase_order.js:165
+#: templates/js/translated/purchase_order.js:759
+#: templates/js/translated/purchase_order.js:1652
+#: templates/js/translated/stock.js:2153 templates/js/translated/stock.js:2775
msgid "Purchase Order"
msgstr "Inkooporder"
-#: order/api.py:1456 order/models.py:1909 order/models.py:1955
+#: order/api.py:1456 order/models.py:1922 order/models.py:1968
#: order/templates/order/return_order_base.html:9
#: order/templates/order/return_order_base.html:28
#: report/templates/report/inventree_return_order_report_base.html:13
-#: templates/js/translated/return_order.js:269
-#: templates/js/translated/stock.js:2678
+#: templates/js/translated/return_order.js:281
+#: templates/js/translated/stock.js:2809
msgid "Return Order"
msgstr ""
-#: order/api.py:1458 templates/js/translated/sales_order.js:1030
+#: order/api.py:1458 templates/js/translated/sales_order.js:1042
msgid "Unknown"
msgstr ""
@@ -4392,11 +4444,11 @@ msgstr ""
msgid "Total price for this order"
msgstr ""
-#: order/models.py:79 order/serializers.py:49
+#: order/models.py:79 order/serializers.py:50
msgid "Order Currency"
msgstr ""
-#: order/models.py:81 order/serializers.py:50
+#: order/models.py:81 order/serializers.py:51
msgid "Currency for this order (leave blank to use company default)"
msgstr ""
@@ -4408,492 +4460,496 @@ msgstr ""
msgid "Order description (optional)"
msgstr ""
-#: order/models.py:234
+#: order/models.py:237
msgid "Select project code for this order"
msgstr ""
-#: order/models.py:236 order/models.py:1094 order/models.py:1454
+#: order/models.py:240 order/models.py:1107 order/models.py:1467
msgid "Link to external page"
msgstr "Link naar externe pagina"
-#: order/models.py:241
+#: order/models.py:245
msgid "Expected date for order delivery. Order will be overdue after this date."
msgstr "Verwachte datum voor levering van de bestelling. De bestelling wordt achterstallig na deze datum."
-#: order/models.py:250
+#: order/models.py:254
msgid "Created By"
msgstr "Aangemaakt Door"
-#: order/models.py:257
+#: order/models.py:261
msgid "User or group responsible for this order"
msgstr "Gebruiker of groep verantwoordelijk voor deze order"
-#: order/models.py:267
+#: order/models.py:271
msgid "Point of contact for this order"
msgstr ""
-#: order/models.py:360 order/models.py:766
+#: order/models.py:280
+msgid "Company address for this order"
+msgstr ""
+
+#: order/models.py:373 order/models.py:779
msgid "Order reference"
msgstr "Orderreferentie"
-#: order/models.py:368 order/models.py:791
+#: order/models.py:381 order/models.py:804
msgid "Purchase order status"
msgstr "Inkooporder status"
-#: order/models.py:383
+#: order/models.py:396
msgid "Company from which the items are being ordered"
msgstr "Bedrijf waar de artikelen van worden besteld"
-#: order/models.py:391 order/templates/order/order_base.html:152
-#: templates/js/translated/purchase_order.js:1662
+#: order/models.py:404 order/templates/order/order_base.html:148
+#: templates/js/translated/purchase_order.js:1677
msgid "Supplier Reference"
msgstr "Leveranciersreferentie"
-#: order/models.py:391
+#: order/models.py:404
msgid "Supplier order reference code"
msgstr "Order referentiecode van leverancier"
-#: order/models.py:398
+#: order/models.py:411
msgid "received by"
msgstr "ontvangen door"
-#: order/models.py:403 order/models.py:1761
+#: order/models.py:416 order/models.py:1774
msgid "Issue Date"
msgstr "Datum van uitgifte"
-#: order/models.py:404 order/models.py:1762
+#: order/models.py:417 order/models.py:1775
msgid "Date order was issued"
msgstr "Order uitgegeven op datum"
-#: order/models.py:410 order/models.py:1768
+#: order/models.py:423 order/models.py:1781
msgid "Date order was completed"
msgstr "Order voltooid op datum"
-#: order/models.py:445
+#: order/models.py:458
msgid "Part supplier must match PO supplier"
msgstr "Onderdeelleverancier moet overeenkomen met de Inkooporderleverancier"
-#: order/models.py:606
+#: order/models.py:619
msgid "Quantity must be a positive number"
msgstr "Hoeveelheid moet een positief getal zijn"
-#: order/models.py:780
+#: order/models.py:793
msgid "Company to which the items are being sold"
msgstr "Bedrijf waaraan de artikelen worden verkocht"
-#: order/models.py:799 order/models.py:1755
+#: order/models.py:812 order/models.py:1768
msgid "Customer Reference "
msgstr "Klantreferentie "
-#: order/models.py:799 order/models.py:1756
+#: order/models.py:812 order/models.py:1769
msgid "Customer order reference code"
msgstr "Klant order referentiecode"
-#: order/models.py:801 order/models.py:1408
-#: templates/js/translated/sales_order.js:831
-#: templates/js/translated/sales_order.js:1012
+#: order/models.py:814 order/models.py:1421
+#: templates/js/translated/sales_order.js:843
+#: templates/js/translated/sales_order.js:1024
msgid "Shipment Date"
msgstr "Verzenddatum"
-#: order/models.py:808
+#: order/models.py:821
msgid "shipped by"
msgstr "verzonden door"
-#: order/models.py:857
+#: order/models.py:870
msgid "Order cannot be completed as no parts have been assigned"
msgstr "Order kan niet worden voltooid omdat er geen onderdelen aangewezen zijn"
-#: order/models.py:861
+#: order/models.py:874
msgid "Only an open order can be marked as complete"
msgstr ""
-#: order/models.py:864 templates/js/translated/sales_order.js:491
+#: order/models.py:877 templates/js/translated/sales_order.js:503
msgid "Order cannot be completed as there are incomplete shipments"
msgstr "Bestelling kan niet worden voltooid omdat er onvolledige verzendingen aanwezig zijn"
-#: order/models.py:867
+#: order/models.py:880
msgid "Order cannot be completed as there are incomplete line items"
msgstr "Order kan niet worden voltooid omdat er onvolledige artikelen aanwezig zijn"
-#: order/models.py:1074
+#: order/models.py:1087
msgid "Item quantity"
msgstr "Hoeveelheid artikelen"
-#: order/models.py:1087
+#: order/models.py:1100
msgid "Line item reference"
msgstr "Artikelregel referentie"
-#: order/models.py:1089
+#: order/models.py:1102
msgid "Line item notes"
msgstr "Artikel notities"
-#: order/models.py:1100
+#: order/models.py:1113
msgid "Target date for this line item (leave blank to use the target date from the order)"
msgstr ""
-#: order/models.py:1118
+#: order/models.py:1131
msgid "Line item description (optional)"
msgstr ""
-#: order/models.py:1123
+#: order/models.py:1136
msgid "Context"
msgstr "Context"
-#: order/models.py:1124
+#: order/models.py:1137
msgid "Additional context for this line"
msgstr "Additionele context voor deze regel"
-#: order/models.py:1133
+#: order/models.py:1146
msgid "Unit price"
msgstr "Stukprijs"
-#: order/models.py:1163
+#: order/models.py:1176
msgid "Supplier part must match supplier"
msgstr "Leveranciersonderdeel moet overeenkomen met leverancier"
-#: order/models.py:1171
+#: order/models.py:1184
msgid "deleted"
msgstr "verwijderd"
-#: order/models.py:1177 order/models.py:1262 order/models.py:1303
-#: order/models.py:1402 order/models.py:1551 order/models.py:1908
-#: order/models.py:1955 templates/js/translated/sales_order.js:1474
+#: order/models.py:1190 order/models.py:1275 order/models.py:1316
+#: order/models.py:1415 order/models.py:1564 order/models.py:1921
+#: order/models.py:1968 templates/js/translated/sales_order.js:1486
msgid "Order"
msgstr "Order"
-#: order/models.py:1196
+#: order/models.py:1209
msgid "Supplier part"
msgstr "Leveranciersonderdeel"
-#: order/models.py:1203 order/templates/order/order_base.html:200
-#: templates/js/translated/part.js:1841 templates/js/translated/part.js:1872
-#: templates/js/translated/purchase_order.js:1276
-#: templates/js/translated/purchase_order.js:2137
-#: templates/js/translated/return_order.js:748
-#: templates/js/translated/table_filters.js:90
-#: templates/js/translated/table_filters.js:515
+#: order/models.py:1216 order/templates/order/order_base.html:196
+#: templates/js/translated/part.js:1840 templates/js/translated/part.js:1871
+#: templates/js/translated/purchase_order.js:1291
+#: templates/js/translated/purchase_order.js:2147
+#: templates/js/translated/return_order.js:760
+#: templates/js/translated/table_filters.js:96
+#: templates/js/translated/table_filters.js:537
msgid "Received"
msgstr "Ontvangen"
-#: order/models.py:1204
+#: order/models.py:1217
msgid "Number of items received"
msgstr "Aantal ontvangen artikelen"
-#: order/models.py:1211 stock/models.py:823 stock/serializers.py:252
+#: order/models.py:1224 stock/models.py:823 stock/serializers.py:314
#: stock/templates/stock/item_base.html:184
-#: templates/js/translated/stock.js:2047
+#: templates/js/translated/stock.js:2204
msgid "Purchase Price"
msgstr "Inkoopprijs"
-#: order/models.py:1212
+#: order/models.py:1225
msgid "Unit purchase price"
msgstr "Aankoopprijs per stuk"
-#: order/models.py:1225
+#: order/models.py:1238
msgid "Where does the Purchaser want this item to be stored?"
msgstr "Waar wil de inkoper dat dit artikel opgeslagen wordt?"
-#: order/models.py:1291
+#: order/models.py:1304
msgid "Virtual part cannot be assigned to a sales order"
msgstr "Virtueel onderdeel kan niet worden toegewezen aan een verkooporder"
-#: order/models.py:1296
+#: order/models.py:1309
msgid "Only salable parts can be assigned to a sales order"
msgstr "Alleen verkoopbare onderdelen kunnen aan een verkooporder worden toegewezen"
-#: order/models.py:1322 part/templates/part/part_pricing.html:107
+#: order/models.py:1335 part/templates/part/part_pricing.html:107
#: part/templates/part/prices.html:128 templates/js/translated/pricing.js:943
msgid "Sale Price"
msgstr "Verkoopprijs"
-#: order/models.py:1323
+#: order/models.py:1336
msgid "Unit sale price"
msgstr "Prijs per stuk"
-#: order/models.py:1333
+#: order/models.py:1346
msgid "Shipped quantity"
msgstr "Verzonden hoeveelheid"
-#: order/models.py:1409
+#: order/models.py:1422
msgid "Date of shipment"
msgstr "Datum van verzending"
-#: order/models.py:1414 templates/js/translated/sales_order.js:1024
+#: order/models.py:1427 templates/js/translated/sales_order.js:1036
msgid "Delivery Date"
msgstr ""
-#: order/models.py:1415
+#: order/models.py:1428
msgid "Date of delivery of shipment"
msgstr ""
-#: order/models.py:1422
+#: order/models.py:1435
msgid "Checked By"
msgstr "Gecontroleerd door"
-#: order/models.py:1423
+#: order/models.py:1436
msgid "User who checked this shipment"
msgstr "Gebruiker die deze zending gecontroleerd heeft"
-#: order/models.py:1430 order/models.py:1627 order/serializers.py:1248
-#: order/serializers.py:1376 templates/js/translated/model_renderers.js:415
+#: order/models.py:1443 order/models.py:1640 order/serializers.py:1254
+#: order/serializers.py:1382 templates/js/translated/model_renderers.js:429
msgid "Shipment"
msgstr "Zending"
-#: order/models.py:1431
+#: order/models.py:1444
msgid "Shipment number"
msgstr "Zendingsnummer"
-#: order/models.py:1439
+#: order/models.py:1452
msgid "Tracking Number"
msgstr "Volgnummer"
-#: order/models.py:1440
+#: order/models.py:1453
msgid "Shipment tracking information"
msgstr "Zending volginformatie"
-#: order/models.py:1447
+#: order/models.py:1460
msgid "Invoice Number"
msgstr "Factuurnummer"
-#: order/models.py:1448
+#: order/models.py:1461
msgid "Reference number for associated invoice"
msgstr "Referentienummer voor bijbehorende factuur"
-#: order/models.py:1470
+#: order/models.py:1483
msgid "Shipment has already been sent"
msgstr "Verzending is al verzonden"
-#: order/models.py:1473
+#: order/models.py:1486
msgid "Shipment has no allocated stock items"
msgstr "Zending heeft geen toegewezen voorraadartikelen"
-#: order/models.py:1586 order/models.py:1588
+#: order/models.py:1599 order/models.py:1601
msgid "Stock item has not been assigned"
msgstr "Voorraadartikel is niet toegewezen"
-#: order/models.py:1592
+#: order/models.py:1605
msgid "Cannot allocate stock item to a line with a different part"
msgstr "Kan het voorraadartikel niet toewijzen aan een regel met een ander onderdeel"
-#: order/models.py:1594
+#: order/models.py:1607
msgid "Cannot allocate stock to a line without a part"
msgstr "Kan voorraad niet toewijzen aan een regel zonder onderdeel"
-#: order/models.py:1597
+#: order/models.py:1610
msgid "Allocation quantity cannot exceed stock quantity"
msgstr "Toewijzingshoeveelheid kan niet hoger zijn dan de voorraadhoeveelheid"
-#: order/models.py:1607 order/serializers.py:1110
+#: order/models.py:1620 order/serializers.py:1116
msgid "Quantity must be 1 for serialized stock item"
msgstr "Hoeveelheid moet 1 zijn voor geserialiseerd voorraadartikel"
-#: order/models.py:1610
+#: order/models.py:1623
msgid "Sales order does not match shipment"
msgstr "Verkooporder komt niet overeen met zending"
-#: order/models.py:1611
+#: order/models.py:1624
msgid "Shipment does not match sales order"
msgstr "Verzending komt niet overeen met verkooporder"
-#: order/models.py:1619
+#: order/models.py:1632
msgid "Line"
msgstr "Regel"
-#: order/models.py:1628
+#: order/models.py:1641
msgid "Sales order shipment reference"
msgstr "Verzendreferentie verkooporder"
-#: order/models.py:1641 order/models.py:1916
-#: templates/js/translated/return_order.js:706
+#: order/models.py:1654 order/models.py:1929
+#: templates/js/translated/return_order.js:718
msgid "Item"
msgstr "Artikel"
-#: order/models.py:1642
+#: order/models.py:1655
msgid "Select stock item to allocate"
msgstr "Selecteer voorraadartikel om toe te wijzen"
-#: order/models.py:1645
+#: order/models.py:1658
msgid "Enter stock allocation quantity"
msgstr "Voer voorraadtoewijzingshoeveelheid in"
-#: order/models.py:1725
+#: order/models.py:1738
msgid "Return Order reference"
msgstr ""
-#: order/models.py:1739
+#: order/models.py:1752
msgid "Company from which items are being returned"
msgstr ""
-#: order/models.py:1750
+#: order/models.py:1763
msgid "Return order status"
msgstr ""
-#: order/models.py:1901
+#: order/models.py:1914
msgid "Only serialized items can be assigned to a Return Order"
msgstr ""
-#: order/models.py:1917
+#: order/models.py:1930
msgid "Select item to return from customer"
msgstr ""
-#: order/models.py:1922
+#: order/models.py:1935
msgid "Received Date"
msgstr ""
-#: order/models.py:1923
+#: order/models.py:1936
msgid "The date this this return item was received"
msgstr ""
-#: order/models.py:1934 templates/js/translated/return_order.js:717
-#: templates/js/translated/table_filters.js:93
+#: order/models.py:1947 templates/js/translated/return_order.js:729
+#: templates/js/translated/table_filters.js:99
msgid "Outcome"
msgstr ""
-#: order/models.py:1934
+#: order/models.py:1947
msgid "Outcome for this line item"
msgstr ""
-#: order/models.py:1940
+#: order/models.py:1953
msgid "Cost associated with return or repair for this line item"
msgstr ""
-#: order/serializers.py:247
+#: order/serializers.py:253
msgid "Order cannot be cancelled"
msgstr "Order kan niet worden geannuleerd"
-#: order/serializers.py:262 order/serializers.py:1128
+#: order/serializers.py:268 order/serializers.py:1134
msgid "Allow order to be closed with incomplete line items"
msgstr ""
-#: order/serializers.py:273 order/serializers.py:1139
+#: order/serializers.py:279 order/serializers.py:1145
msgid "Order has incomplete line items"
msgstr ""
-#: order/serializers.py:386
+#: order/serializers.py:392
msgid "Order is not open"
msgstr "Order is niet open"
-#: order/serializers.py:404
+#: order/serializers.py:410
msgid "Purchase price currency"
msgstr "Valuta Inkoopprijs"
-#: order/serializers.py:422
+#: order/serializers.py:428
msgid "Supplier part must be specified"
msgstr "Leveranciersonderdeel moet worden gespecificeerd"
-#: order/serializers.py:427
+#: order/serializers.py:433
msgid "Purchase order must be specified"
msgstr "Inkooporder moet worden gespecificeerd"
-#: order/serializers.py:433
+#: order/serializers.py:439
msgid "Supplier must match purchase order"
msgstr "De leverancier moet overeenkomen met de inkooporder"
-#: order/serializers.py:434
+#: order/serializers.py:440
msgid "Purchase order must match supplier"
msgstr "Inkooporder moet overeenkomen met de leverancier"
-#: order/serializers.py:472 order/serializers.py:1216
+#: order/serializers.py:478 order/serializers.py:1222
msgid "Line Item"
msgstr "Artikel"
-#: order/serializers.py:478
+#: order/serializers.py:484
msgid "Line item does not match purchase order"
msgstr "Artikelregel komt niet overeen met inkooporder"
-#: order/serializers.py:488 order/serializers.py:607 order/serializers.py:1589
+#: order/serializers.py:494 order/serializers.py:613 order/serializers.py:1595
msgid "Select destination location for received items"
msgstr "Selecteer bestemmingslocatie voor ontvangen artikelen"
-#: order/serializers.py:507 templates/js/translated/purchase_order.js:1100
+#: order/serializers.py:513 templates/js/translated/purchase_order.js:1115
msgid "Enter batch code for incoming stock items"
msgstr ""
-#: order/serializers.py:515 templates/js/translated/purchase_order.js:1124
+#: order/serializers.py:521 templates/js/translated/purchase_order.js:1139
msgid "Enter serial numbers for incoming stock items"
msgstr "Voer serienummers in voor inkomende voorraadartikelen"
-#: order/serializers.py:528 templates/js/translated/barcode.js:52
+#: order/serializers.py:534 templates/js/translated/barcode.js:52
msgid "Barcode"
msgstr ""
-#: order/serializers.py:529
+#: order/serializers.py:535
msgid "Scanned barcode"
msgstr ""
-#: order/serializers.py:545
+#: order/serializers.py:551
msgid "Barcode is already in use"
msgstr "Streepjescode is al in gebruik"
-#: order/serializers.py:569
+#: order/serializers.py:575
msgid "An integer quantity must be provided for trackable parts"
msgstr "Hoeveelheid als geheel getal vereist voor traceerbare onderdelen"
-#: order/serializers.py:623 order/serializers.py:1604
+#: order/serializers.py:629 order/serializers.py:1610
msgid "Line items must be provided"
msgstr "Artikelen moeten worden opgegeven"
-#: order/serializers.py:640
+#: order/serializers.py:646
msgid "Destination location must be specified"
msgstr "Bestemmingslocatie moet worden opgegeven"
-#: order/serializers.py:651
+#: order/serializers.py:657
msgid "Supplied barcode values must be unique"
msgstr "Geleverde streepjescodewaarden moeten uniek zijn"
-#: order/serializers.py:950
+#: order/serializers.py:956
msgid "Sale price currency"
msgstr "Valuta verkoopprijs"
-#: order/serializers.py:1007
+#: order/serializers.py:1013
msgid "No shipment details provided"
msgstr "Geen verzenddetails opgegeven"
-#: order/serializers.py:1071 order/serializers.py:1225
+#: order/serializers.py:1077 order/serializers.py:1231
msgid "Line item is not associated with this order"
msgstr "Artikelregel is niet gekoppeld aan deze bestelling"
-#: order/serializers.py:1093
+#: order/serializers.py:1099
msgid "Quantity must be positive"
msgstr "Hoeveelheid moet positief zijn"
-#: order/serializers.py:1238
+#: order/serializers.py:1244
msgid "Enter serial numbers to allocate"
msgstr "Voer serienummers in om toe te wijzen"
-#: order/serializers.py:1260 order/serializers.py:1384
+#: order/serializers.py:1266 order/serializers.py:1390
msgid "Shipment has already been shipped"
msgstr "Verzending is al verzonden"
-#: order/serializers.py:1263 order/serializers.py:1387
+#: order/serializers.py:1269 order/serializers.py:1393
msgid "Shipment is not associated with this order"
msgstr "Zending is niet gekoppeld aan deze bestelling"
-#: order/serializers.py:1317
+#: order/serializers.py:1323
msgid "No match found for the following serial numbers"
msgstr "Geen overeenkomst gevonden voor de volgende serienummers"
-#: order/serializers.py:1327
+#: order/serializers.py:1333
msgid "The following serial numbers are already allocated"
msgstr "De volgende serienummers zijn al toegewezen"
-#: order/serializers.py:1555
+#: order/serializers.py:1561
msgid "Return order line item"
msgstr ""
-#: order/serializers.py:1562
+#: order/serializers.py:1568
msgid "Line item does not match return order"
msgstr ""
-#: order/serializers.py:1565
+#: order/serializers.py:1571
msgid "Line item has already been received"
msgstr ""
-#: order/serializers.py:1597
+#: order/serializers.py:1603
msgid "Items can only be received against orders which are in progress"
msgstr ""
-#: order/serializers.py:1678
+#: order/serializers.py:1684
msgid "Line price currency"
msgstr ""
@@ -4957,82 +5013,74 @@ msgid "Issue Order"
msgstr ""
#: order/templates/order/order_base.html:83
-msgid "Receive items"
-msgstr "Ontvang artikelen"
-
-#: order/templates/order/order_base.html:85
-msgid "Receive Items"
-msgstr "Ontvang Artikelen"
-
-#: order/templates/order/order_base.html:87
#: order/templates/order/return_order_base.html:87
msgid "Mark order as complete"
msgstr "Order markeren als voltooid"
-#: order/templates/order/order_base.html:88
+#: order/templates/order/order_base.html:84
#: order/templates/order/return_order_base.html:88
#: order/templates/order/sales_order_base.html:94
msgid "Complete Order"
msgstr "Order Voltooien"
-#: order/templates/order/order_base.html:95
+#: order/templates/order/order_base.html:91
msgid "Supplier part thumbnail"
msgstr ""
-#: order/templates/order/order_base.html:110
+#: order/templates/order/order_base.html:106
#: order/templates/order/return_order_base.html:102
#: order/templates/order/sales_order_base.html:107
msgid "Order Reference"
msgstr "Order Referentie"
-#: order/templates/order/order_base.html:115
+#: order/templates/order/order_base.html:111
#: order/templates/order/return_order_base.html:107
#: order/templates/order/sales_order_base.html:112
msgid "Order Description"
msgstr "Order Beschrijving"
-#: order/templates/order/order_base.html:122
+#: order/templates/order/order_base.html:118
#: order/templates/order/return_order_base.html:114
#: order/templates/order/sales_order_base.html:119
msgid "Order Status"
msgstr "Order Status"
-#: order/templates/order/order_base.html:145
+#: order/templates/order/order_base.html:141
msgid "No suppplier information available"
msgstr "Geen leveranciersinformatie beschikbaar"
-#: order/templates/order/order_base.html:158
+#: order/templates/order/order_base.html:154
#: order/templates/order/sales_order_base.html:158
msgid "Completed Line Items"
msgstr "Afgeronde artikelen"
-#: order/templates/order/order_base.html:164
+#: order/templates/order/order_base.html:160
#: order/templates/order/sales_order_base.html:164
#: order/templates/order/sales_order_base.html:174
msgid "Incomplete"
msgstr "Incompleet"
-#: order/templates/order/order_base.html:183
+#: order/templates/order/order_base.html:179
#: order/templates/order/return_order_base.html:158
#: report/templates/report/inventree_build_order_base.html:121
msgid "Issued"
msgstr "Uitgegeven"
-#: order/templates/order/order_base.html:221
+#: order/templates/order/order_base.html:224
msgid "Total cost"
msgstr "Totale kosten"
-#: order/templates/order/order_base.html:225
-#: order/templates/order/return_order_base.html:193
-#: order/templates/order/sales_order_base.html:233
+#: order/templates/order/order_base.html:228
+#: order/templates/order/return_order_base.html:200
+#: order/templates/order/sales_order_base.html:240
msgid "Total cost could not be calculated"
msgstr "Totale kosten konden niet worden berekend"
-#: order/templates/order/order_base.html:331
+#: order/templates/order/order_base.html:318
msgid "Purchase Order QR Code"
msgstr ""
-#: order/templates/order/order_base.html:343
+#: order/templates/order/order_base.html:330
msgid "Link Barcode to Purchase Order"
msgstr ""
@@ -5085,13 +5133,13 @@ msgstr ""
#: part/templates/part/import_wizard/ajax_match_references.html:42
#: part/templates/part/import_wizard/match_fields.html:71
#: part/templates/part/import_wizard/match_references.html:49
-#: templates/js/translated/bom.js:132 templates/js/translated/build.js:512
-#: templates/js/translated/build.js:2348
-#: templates/js/translated/purchase_order.js:692
-#: templates/js/translated/purchase_order.js:1206
-#: templates/js/translated/return_order.js:494
-#: templates/js/translated/sales_order.js:1097
-#: templates/js/translated/stock.js:681 templates/js/translated/stock.js:850
+#: templates/js/translated/bom.js:133 templates/js/translated/build.js:518
+#: templates/js/translated/build.js:1555
+#: templates/js/translated/purchase_order.js:703
+#: templates/js/translated/purchase_order.js:1221
+#: templates/js/translated/return_order.js:506
+#: templates/js/translated/sales_order.js:1109
+#: templates/js/translated/stock.js:680 templates/js/translated/stock.js:849
#: templates/patterns/wizard/match_fields.html:70
msgid "Remove row"
msgstr "Rij verwijderen"
@@ -5152,9 +5200,9 @@ msgstr "Inkooporder Artikelen"
#: order/templates/order/purchase_order_detail.html:27
#: order/templates/order/return_order_detail.html:24
#: order/templates/order/sales_order_detail.html:24
-#: templates/js/translated/purchase_order.js:419
-#: templates/js/translated/return_order.js:447
-#: templates/js/translated/sales_order.js:222
+#: templates/js/translated/purchase_order.js:430
+#: templates/js/translated/return_order.js:459
+#: templates/js/translated/sales_order.js:234
msgid "Add Line Item"
msgstr "Artikel toevoegen"
@@ -5165,30 +5213,25 @@ msgstr "Artikel toevoegen"
msgid "Receive Line Items"
msgstr ""
-#: order/templates/order/purchase_order_detail.html:49
#: order/templates/order/purchase_order_detail.html:50
-msgid "Delete Line Items"
-msgstr ""
-
-#: order/templates/order/purchase_order_detail.html:66
-#: order/templates/order/return_order_detail.html:47
-#: order/templates/order/sales_order_detail.html:43
+#: order/templates/order/return_order_detail.html:45
+#: order/templates/order/sales_order_detail.html:41
msgid "Extra Lines"
msgstr "Extra Regels"
-#: order/templates/order/purchase_order_detail.html:72
-#: order/templates/order/return_order_detail.html:53
-#: order/templates/order/sales_order_detail.html:49
+#: order/templates/order/purchase_order_detail.html:56
+#: order/templates/order/return_order_detail.html:51
+#: order/templates/order/sales_order_detail.html:47
msgid "Add Extra Line"
msgstr "Extra Regel Toevoegen"
-#: order/templates/order/purchase_order_detail.html:92
+#: order/templates/order/purchase_order_detail.html:74
msgid "Received Items"
msgstr "Ontvangen Artikelen"
-#: order/templates/order/purchase_order_detail.html:117
-#: order/templates/order/return_order_detail.html:89
-#: order/templates/order/sales_order_detail.html:149
+#: order/templates/order/purchase_order_detail.html:99
+#: order/templates/order/return_order_detail.html:85
+#: order/templates/order/sales_order_detail.html:139
msgid "Order Notes"
msgstr "Ordernotities"
@@ -5208,29 +5251,29 @@ msgstr "Pakbon afdrukken"
#: order/templates/order/return_order_base.html:139
#: order/templates/order/sales_order_base.html:152
-#: templates/js/translated/return_order.js:297
-#: templates/js/translated/sales_order.js:785
+#: templates/js/translated/return_order.js:309
+#: templates/js/translated/sales_order.js:797
msgid "Customer Reference"
msgstr "Klantreferentie"
-#: order/templates/order/return_order_base.html:189
-#: order/templates/order/sales_order_base.html:229
+#: order/templates/order/return_order_base.html:196
+#: order/templates/order/sales_order_base.html:236
#: part/templates/part/part_pricing.html:32
#: part/templates/part/part_pricing.html:58
#: part/templates/part/part_pricing.html:99
#: part/templates/part/part_pricing.html:114
-#: templates/js/translated/part.js:1046
-#: templates/js/translated/purchase_order.js:1712
-#: templates/js/translated/return_order.js:369
-#: templates/js/translated/sales_order.js:843
+#: templates/js/translated/part.js:1045
+#: templates/js/translated/purchase_order.js:1727
+#: templates/js/translated/return_order.js:381
+#: templates/js/translated/sales_order.js:855
msgid "Total Cost"
msgstr ""
-#: order/templates/order/return_order_base.html:257
+#: order/templates/order/return_order_base.html:264
msgid "Return Order QR Code"
msgstr ""
-#: order/templates/order/return_order_base.html:269
+#: order/templates/order/return_order_base.html:276
msgid "Link Barcode to Return Order"
msgstr ""
@@ -5248,7 +5291,7 @@ msgid "Ship Items"
msgstr ""
#: order/templates/order/sales_order_base.html:93
-#: templates/js/translated/sales_order.js:469
+#: templates/js/translated/sales_order.js:481
msgid "Complete Sales Order"
msgstr "Voltooi Verkooporder"
@@ -5257,16 +5300,16 @@ msgid "This Sales Order has not been fully allocated"
msgstr "Deze Verkooporder is niet volledig toegewezen"
#: order/templates/order/sales_order_base.html:170
-#: order/templates/order/sales_order_detail.html:105
+#: order/templates/order/sales_order_detail.html:99
#: order/templates/order/so_sidebar.html:11
msgid "Completed Shipments"
msgstr "Voltooide Verzendingen"
-#: order/templates/order/sales_order_base.html:306
+#: order/templates/order/sales_order_base.html:313
msgid "Sales Order QR Code"
msgstr ""
-#: order/templates/order/sales_order_base.html:318
+#: order/templates/order/sales_order_base.html:325
msgid "Link Barcode to Sales Order"
msgstr ""
@@ -5274,18 +5317,17 @@ msgstr ""
msgid "Sales Order Items"
msgstr "Verkoooporder Artikelen"
-#: order/templates/order/sales_order_detail.html:71
-#: order/templates/order/so_sidebar.html:8 templates/InvenTree/index.html:332
+#: order/templates/order/sales_order_detail.html:67
+#: order/templates/order/so_sidebar.html:8 templates/InvenTree/index.html:284
msgid "Pending Shipments"
msgstr "Verzendingen in behandeling"
-#: order/templates/order/sales_order_detail.html:75
-#: templates/attachment_table.html:6 templates/js/translated/bom.js:1236
-#: templates/js/translated/build.js:2249
+#: order/templates/order/sales_order_detail.html:71
+#: templates/js/translated/bom.js:1256 templates/js/translated/filters.js:297
msgid "Actions"
msgstr "Acties"
-#: order/templates/order/sales_order_detail.html:84
+#: order/templates/order/sales_order_detail.html:80
msgid "New Shipment"
msgstr "Nieuwe Verzending"
@@ -5311,12 +5353,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:33 part/admin.py:273 part/models.py:3667 part/tasks.py:288
+#: part/admin.py:33 part/admin.py:273 part/models.py:3716 part/tasks.py:288
#: stock/admin.py:101
msgid "Part ID"
msgstr ""
-#: part/admin.py:34 part/admin.py:275 part/models.py:3671 part/tasks.py:289
+#: part/admin.py:34 part/admin.py:275 part/models.py:3720 part/tasks.py:289
#: stock/admin.py:102
msgid "Part Name"
msgstr ""
@@ -5325,19 +5367,19 @@ msgstr ""
msgid "Part Description"
msgstr ""
-#: part/admin.py:36 part/models.py:889 part/templates/part/part_base.html:271
-#: templates/js/translated/part.js:1200 templates/js/translated/part.js:2233
-#: templates/js/translated/stock.js:1795
+#: part/admin.py:36 part/models.py:890 part/templates/part/part_base.html:271
+#: templates/js/translated/part.js:1199 templates/js/translated/part.js:2309
+#: templates/js/translated/stock.js:1952
msgid "IPN"
msgstr ""
-#: part/admin.py:37 part/models.py:896 part/templates/part/part_base.html:279
-#: report/models.py:179 templates/js/translated/part.js:1205
-#: templates/js/translated/part.js:2239
+#: part/admin.py:37 part/models.py:897 part/templates/part/part_base.html:279
+#: report/models.py:179 templates/js/translated/part.js:1204
+#: templates/js/translated/part.js:2315
msgid "Revision"
msgstr ""
-#: part/admin.py:38 part/admin.py:198 part/models.py:875
+#: part/admin.py:38 part/admin.py:198 part/models.py:876
#: part/templates/part/category.html:93 part/templates/part/part_base.html:300
msgid "Keywords"
msgstr ""
@@ -5358,24 +5400,24 @@ msgstr ""
msgid "Default Supplier ID"
msgstr ""
-#: part/admin.py:46 part/models.py:864 part/templates/part/part_base.html:179
+#: part/admin.py:46 part/models.py:865 part/templates/part/part_base.html:179
msgid "Variant Of"
msgstr ""
-#: part/admin.py:47 part/models.py:980 part/templates/part/part_base.html:205
+#: part/admin.py:47 part/models.py:981 part/templates/part/part_base.html:205
msgid "Minimum Stock"
msgstr ""
#: part/admin.py:61 part/templates/part/part_base.html:199
-#: templates/js/translated/company.js:1299
-#: templates/js/translated/table_filters.js:301
+#: templates/js/translated/company.js:1720
+#: templates/js/translated/table_filters.js:307
msgid "In Stock"
msgstr ""
#: part/admin.py:62 part/bom.py:178 part/templates/part/part_base.html:212
-#: templates/js/translated/bom.js:1167 templates/js/translated/build.js:2191
-#: templates/js/translated/part.js:687 templates/js/translated/part.js:2123
-#: templates/js/translated/table_filters.js:140
+#: templates/js/translated/bom.js:1187 templates/js/translated/build.js:2541
+#: templates/js/translated/part.js:686 templates/js/translated/part.js:2122
+#: templates/js/translated/table_filters.js:146
msgid "On Order"
msgstr "In bestelling"
@@ -5383,23 +5425,16 @@ msgstr "In bestelling"
msgid "Used In"
msgstr ""
-#: part/admin.py:64 templates/js/translated/build.js:2203
-#: templates/js/translated/build.js:2465 templates/js/translated/build.js:3052
-#: templates/js/translated/sales_order.js:1906
-#: templates/js/translated/table_filters.js:488
-msgid "Allocated"
-msgstr "Toegewezen"
-
#: part/admin.py:65 part/templates/part/part_base.html:243 stock/admin.py:124
-#: templates/js/translated/part.js:692 templates/js/translated/part.js:2127
+#: templates/js/translated/part.js:691 templates/js/translated/part.js:2126
msgid "Building"
msgstr ""
-#: part/admin.py:66 part/models.py:2930 templates/js/translated/part.js:943
+#: part/admin.py:66 part/models.py:2964 templates/js/translated/part.js:942
msgid "Minimum Cost"
msgstr ""
-#: part/admin.py:67 part/models.py:2936 templates/js/translated/part.js:953
+#: part/admin.py:67 part/models.py:2970 templates/js/translated/part.js:952
msgid "Maximum Cost"
msgstr ""
@@ -5416,13 +5451,13 @@ msgstr ""
msgid "Category Path"
msgstr ""
-#: part/admin.py:202 part/models.py:392 part/templates/part/cat_link.html:3
-#: part/templates/part/category.html:23 part/templates/part/category.html:140
-#: part/templates/part/category.html:160
+#: part/admin.py:202 part/models.py:393 part/serializers.py:307
+#: part/templates/part/cat_link.html:3 part/templates/part/category.html:23
+#: part/templates/part/category.html:140 part/templates/part/category.html:160
#: part/templates/part/category_sidebar.html:9
-#: templates/InvenTree/index.html:86 templates/InvenTree/search.html:84
+#: templates/InvenTree/index.html:36 templates/InvenTree/search.html:84
#: templates/InvenTree/settings/sidebar.html:45
-#: templates/js/translated/part.js:2754 templates/js/translated/search.js:172
+#: templates/js/translated/part.js:2739 templates/js/translated/search.js:130
#: templates/navbar.html:24 users/models.py:38
msgid "Parts"
msgstr ""
@@ -5439,7 +5474,7 @@ msgstr ""
msgid "Parent IPN"
msgstr ""
-#: part/admin.py:274 part/models.py:3675
+#: part/admin.py:274 part/models.py:3724
msgid "Part IPN"
msgstr ""
@@ -5453,35 +5488,35 @@ msgstr ""
msgid "Maximum Price"
msgstr ""
-#: part/api.py:498
+#: part/api.py:501
msgid "Incoming Purchase Order"
msgstr "Binnenkomende Inkooporder"
-#: part/api.py:518
+#: part/api.py:521
msgid "Outgoing Sales Order"
msgstr "Uitgaande Verkooporder"
-#: part/api.py:536
+#: part/api.py:539
msgid "Stock produced by Build Order"
msgstr "Geproduceerde voorraad door Productieorder"
-#: part/api.py:622
+#: part/api.py:625
msgid "Stock required for Build Order"
msgstr "Voorraad vereist voor Productieorder"
-#: part/api.py:770
+#: part/api.py:773
msgid "Valid"
msgstr ""
-#: part/api.py:771
+#: part/api.py:774
msgid "Validate entire Bill of Materials"
msgstr ""
-#: part/api.py:777
+#: part/api.py:780
msgid "This option must be selected"
msgstr ""
-#: part/bom.py:175 part/models.py:127 part/models.py:923
+#: part/bom.py:175 part/models.py:128 part/models.py:924
#: part/templates/part/category.html:115 part/templates/part/part_base.html:369
msgid "Default Location"
msgstr "Standaard locatie"
@@ -5491,7 +5526,7 @@ msgid "Total Stock"
msgstr "Totale Voorraad"
#: part/bom.py:177 part/templates/part/part_base.html:194
-#: templates/js/translated/sales_order.js:1873
+#: templates/js/translated/sales_order.js:1885
msgid "Available Stock"
msgstr "Beschikbare Voorraad"
@@ -5499,916 +5534,913 @@ msgstr "Beschikbare Voorraad"
msgid "Input quantity for price calculation"
msgstr ""
-#: part/models.py:75 part/models.py:3616 part/templates/part/category.html:16
+#: part/models.py:76 part/models.py:3665 part/templates/part/category.html:16
#: part/templates/part/part_app_base.html:10
msgid "Part Category"
msgstr ""
-#: part/models.py:76 part/templates/part/category.html:135
-#: templates/InvenTree/search.html:97 templates/js/translated/search.js:200
+#: part/models.py:77 part/templates/part/category.html:135
+#: templates/InvenTree/search.html:97 templates/js/translated/search.js:158
#: users/models.py:37
msgid "Part Categories"
msgstr ""
-#: part/models.py:128
+#: part/models.py:129
msgid "Default location for parts in this category"
msgstr "Standaard locatie voor onderdelen in deze categorie"
-#: part/models.py:133 stock/models.py:124 templates/js/translated/stock.js:2520
-#: templates/js/translated/table_filters.js:209
-#: templates/js/translated/table_filters.js:229
+#: part/models.py:134 stock/models.py:124 templates/js/translated/stock.js:2651
+#: templates/js/translated/table_filters.js:215
+#: templates/js/translated/table_filters.js:235
msgid "Structural"
msgstr ""
-#: part/models.py:135
+#: part/models.py:136
msgid "Parts may not be directly assigned to a structural category, but may be assigned to child categories."
msgstr ""
-#: part/models.py:139
+#: part/models.py:140
msgid "Default keywords"
msgstr ""
-#: part/models.py:139
+#: part/models.py:140
msgid "Default keywords for parts in this category"
msgstr ""
-#: part/models.py:144 stock/models.py:113
+#: part/models.py:145 stock/models.py:113
msgid "Icon"
msgstr ""
-#: part/models.py:145 stock/models.py:114
+#: part/models.py:146 stock/models.py:114
msgid "Icon (optional)"
msgstr ""
-#: part/models.py:164
+#: part/models.py:165
msgid "You cannot make this part category structural because some parts are already assigned to it!"
msgstr ""
-#: part/models.py:475
+#: part/models.py:476
msgid "Invalid choice for parent part"
msgstr ""
-#: part/models.py:517 part/models.py:529
+#: part/models.py:518 part/models.py:530
#, python-brace-format
msgid "Part '{p1}' is used in BOM for '{p2}' (recursive)"
msgstr ""
-#: part/models.py:601
+#: part/models.py:602
#, python-brace-format
msgid "IPN must match regex pattern {pat}"
msgstr "IPN moet overeenkomen met regex-patroon {pat}"
-#: part/models.py:672
+#: part/models.py:673
msgid "Stock item with this serial number already exists"
msgstr ""
-#: part/models.py:803
+#: part/models.py:804
msgid "Duplicate IPN not allowed in part settings"
msgstr ""
-#: part/models.py:808
+#: part/models.py:809
msgid "Part with this Name, IPN and Revision already exists."
msgstr ""
-#: part/models.py:822
+#: part/models.py:823
msgid "Parts cannot be assigned to structural part categories!"
msgstr ""
-#: part/models.py:846 part/models.py:3672
+#: part/models.py:847 part/models.py:3721
msgid "Part name"
msgstr ""
-#: part/models.py:852
+#: part/models.py:853
msgid "Is Template"
msgstr ""
-#: part/models.py:853
+#: part/models.py:854
msgid "Is this part a template part?"
msgstr ""
-#: part/models.py:863
+#: part/models.py:864
msgid "Is this part a variant of another part?"
msgstr ""
-#: part/models.py:870
+#: part/models.py:871
msgid "Part description (optional)"
msgstr ""
-#: part/models.py:876
+#: part/models.py:877
msgid "Part keywords to improve visibility in search results"
msgstr ""
-#: part/models.py:883 part/models.py:3198 part/models.py:3615
-#: part/serializers.py:848 part/templates/part/part_base.html:262
+#: part/models.py:884 part/models.py:3232 part/models.py:3664
+#: part/serializers.py:320 part/serializers.py:910
+#: part/templates/part/part_base.html:262
#: templates/InvenTree/settings/settings_staff_js.html:204
#: templates/js/translated/notification.js:59
-#: templates/js/translated/part.js:2269 templates/js/translated/part.js:2481
+#: templates/js/translated/part.js:2345
msgid "Category"
msgstr ""
-#: part/models.py:884
+#: part/models.py:885
msgid "Part category"
msgstr ""
-#: part/models.py:890
+#: part/models.py:891
msgid "Internal Part Number"
msgstr ""
-#: part/models.py:895
+#: part/models.py:896
msgid "Part revision or version number"
msgstr ""
-#: part/models.py:921
+#: part/models.py:922
msgid "Where is this item normally stored?"
msgstr ""
-#: part/models.py:966 part/templates/part/part_base.html:378
+#: part/models.py:967 part/templates/part/part_base.html:378
msgid "Default Supplier"
msgstr ""
-#: part/models.py:967
+#: part/models.py:968
msgid "Default supplier part"
msgstr ""
-#: part/models.py:974
+#: part/models.py:975
msgid "Default Expiry"
msgstr ""
-#: part/models.py:975
+#: part/models.py:976
msgid "Expiry time (in days) for stock items of this part"
msgstr ""
-#: part/models.py:981
+#: part/models.py:982
msgid "Minimum allowed stock level"
msgstr ""
-#: part/models.py:988
+#: part/models.py:989
msgid "Units of measure for this part"
msgstr ""
-#: part/models.py:997
+#: part/models.py:998
msgid "Can this part be built from other parts?"
msgstr ""
-#: part/models.py:1003
+#: part/models.py:1004
msgid "Can this part be used to build other parts?"
msgstr ""
-#: part/models.py:1009
+#: part/models.py:1010
msgid "Does this part have tracking for unique items?"
msgstr ""
-#: part/models.py:1014
+#: part/models.py:1015
msgid "Can this part be purchased from external suppliers?"
msgstr ""
-#: part/models.py:1019
+#: part/models.py:1020
msgid "Can this part be sold to customers?"
msgstr ""
-#: part/models.py:1024
+#: part/models.py:1025
msgid "Is this part active?"
msgstr ""
-#: part/models.py:1029
+#: part/models.py:1030
msgid "Is this a virtual part, such as a software product or license?"
msgstr ""
-#: part/models.py:1031
+#: part/models.py:1032
msgid "BOM checksum"
msgstr ""
-#: part/models.py:1031
+#: part/models.py:1032
msgid "Stored BOM checksum"
msgstr ""
-#: part/models.py:1034
+#: part/models.py:1035
msgid "BOM checked by"
msgstr ""
-#: part/models.py:1036
+#: part/models.py:1037
msgid "BOM checked date"
msgstr ""
-#: part/models.py:1040
+#: part/models.py:1041
msgid "Creation User"
msgstr ""
-#: part/models.py:1042
+#: part/models.py:1043
msgid "User responsible for this part"
msgstr ""
-#: part/models.py:1046 part/templates/part/part_base.html:341
+#: part/models.py:1047 part/templates/part/part_base.html:341
#: stock/templates/stock/item_base.html:447
-#: templates/js/translated/part.js:2331
+#: templates/js/translated/part.js:2407
msgid "Last Stocktake"
msgstr ""
-#: part/models.py:1921
+#: part/models.py:1923
msgid "Sell multiple"
msgstr ""
-#: part/models.py:2853
+#: part/models.py:2887
msgid "Currency used to cache pricing calculations"
msgstr ""
-#: part/models.py:2870
+#: part/models.py:2904
msgid "Minimum BOM Cost"
msgstr ""
-#: part/models.py:2871
+#: part/models.py:2905
msgid "Minimum cost of component parts"
msgstr ""
-#: part/models.py:2876
+#: part/models.py:2910
msgid "Maximum BOM Cost"
msgstr ""
-#: part/models.py:2877
+#: part/models.py:2911
msgid "Maximum cost of component parts"
msgstr ""
-#: part/models.py:2882
+#: part/models.py:2916
msgid "Minimum Purchase Cost"
msgstr ""
-#: part/models.py:2883
+#: part/models.py:2917
msgid "Minimum historical purchase cost"
msgstr ""
-#: part/models.py:2888
+#: part/models.py:2922
msgid "Maximum Purchase Cost"
msgstr ""
-#: part/models.py:2889
+#: part/models.py:2923
msgid "Maximum historical purchase cost"
msgstr ""
-#: part/models.py:2894
+#: part/models.py:2928
msgid "Minimum Internal Price"
msgstr ""
-#: part/models.py:2895
+#: part/models.py:2929
msgid "Minimum cost based on internal price breaks"
msgstr ""
-#: part/models.py:2900
+#: part/models.py:2934
msgid "Maximum Internal Price"
msgstr ""
-#: part/models.py:2901
+#: part/models.py:2935
msgid "Maximum cost based on internal price breaks"
msgstr ""
-#: part/models.py:2906
+#: part/models.py:2940
msgid "Minimum Supplier Price"
msgstr ""
-#: part/models.py:2907
+#: part/models.py:2941
msgid "Minimum price of part from external suppliers"
msgstr ""
-#: part/models.py:2912
+#: part/models.py:2946
msgid "Maximum Supplier Price"
msgstr ""
-#: part/models.py:2913
+#: part/models.py:2947
msgid "Maximum price of part from external suppliers"
msgstr ""
-#: part/models.py:2918
+#: part/models.py:2952
msgid "Minimum Variant Cost"
msgstr ""
-#: part/models.py:2919
+#: part/models.py:2953
msgid "Calculated minimum cost of variant parts"
msgstr ""
-#: part/models.py:2924
+#: part/models.py:2958
msgid "Maximum Variant Cost"
msgstr ""
-#: part/models.py:2925
+#: part/models.py:2959
msgid "Calculated maximum cost of variant parts"
msgstr ""
-#: part/models.py:2931
+#: part/models.py:2965
msgid "Calculated overall minimum cost"
msgstr ""
-#: part/models.py:2937
+#: part/models.py:2971
msgid "Calculated overall maximum cost"
msgstr ""
-#: part/models.py:2942
+#: part/models.py:2976
msgid "Minimum Sale Price"
msgstr ""
-#: part/models.py:2943
+#: part/models.py:2977
msgid "Minimum sale price based on price breaks"
msgstr ""
-#: part/models.py:2948
+#: part/models.py:2982
msgid "Maximum Sale Price"
msgstr ""
-#: part/models.py:2949
+#: part/models.py:2983
msgid "Maximum sale price based on price breaks"
msgstr ""
-#: part/models.py:2954
+#: part/models.py:2988
msgid "Minimum Sale Cost"
msgstr ""
-#: part/models.py:2955
+#: part/models.py:2989
msgid "Minimum historical sale price"
msgstr ""
-#: part/models.py:2960
+#: part/models.py:2994
msgid "Maximum Sale Cost"
msgstr ""
-#: part/models.py:2961
+#: part/models.py:2995
msgid "Maximum historical sale price"
msgstr ""
-#: part/models.py:2980
+#: part/models.py:3014
msgid "Part for stocktake"
msgstr ""
-#: part/models.py:2985
+#: part/models.py:3019
msgid "Item Count"
msgstr ""
-#: part/models.py:2986
+#: part/models.py:3020
msgid "Number of individual stock entries at time of stocktake"
msgstr ""
-#: part/models.py:2993
+#: part/models.py:3027
msgid "Total available stock at time of stocktake"
msgstr ""
-#: part/models.py:2997 part/models.py:3080
+#: part/models.py:3031 part/models.py:3114
#: part/templates/part/part_scheduling.html:13
#: report/templates/report/inventree_test_report_base.html:106
#: templates/InvenTree/settings/plugin_settings.html:37
#: templates/InvenTree/settings/settings_staff_js.html:360
-#: templates/js/translated/part.js:1059 templates/js/translated/pricing.js:812
+#: templates/js/translated/part.js:1058 templates/js/translated/pricing.js:812
#: templates/js/translated/pricing.js:936
-#: templates/js/translated/purchase_order.js:1691
-#: templates/js/translated/stock.js:2558
+#: templates/js/translated/purchase_order.js:1706
+#: templates/js/translated/stock.js:2689
msgid "Date"
msgstr "Datum"
-#: part/models.py:2998
+#: part/models.py:3032
msgid "Date stocktake was performed"
msgstr ""
-#: part/models.py:3006
+#: part/models.py:3040
msgid "Additional notes"
msgstr ""
-#: part/models.py:3014
+#: part/models.py:3048
msgid "User who performed this stocktake"
msgstr ""
-#: part/models.py:3019
+#: part/models.py:3053
msgid "Minimum Stock Cost"
msgstr ""
-#: part/models.py:3020
+#: part/models.py:3054
msgid "Estimated minimum cost of stock on hand"
msgstr ""
-#: part/models.py:3025
+#: part/models.py:3059
msgid "Maximum Stock Cost"
msgstr ""
-#: part/models.py:3026
+#: part/models.py:3060
msgid "Estimated maximum cost of stock on hand"
msgstr ""
-#: part/models.py:3087 templates/InvenTree/settings/settings_staff_js.html:349
+#: part/models.py:3121 templates/InvenTree/settings/settings_staff_js.html:349
msgid "Report"
msgstr ""
-#: part/models.py:3088
+#: part/models.py:3122
msgid "Stocktake report file (generated internally)"
msgstr ""
-#: part/models.py:3093 templates/InvenTree/settings/settings_staff_js.html:356
+#: part/models.py:3127 templates/InvenTree/settings/settings_staff_js.html:356
msgid "Part Count"
msgstr ""
-#: part/models.py:3094
+#: part/models.py:3128
msgid "Number of parts covered by stocktake"
msgstr ""
-#: part/models.py:3102
+#: part/models.py:3136
msgid "User who requested this stocktake report"
msgstr ""
-#: part/models.py:3238
+#: part/models.py:3272
msgid "Test templates can only be created for trackable parts"
msgstr ""
-#: part/models.py:3255
+#: part/models.py:3289
msgid "Test with this name already exists for this part"
msgstr ""
-#: part/models.py:3275 templates/js/translated/part.js:2821
+#: part/models.py:3309 templates/js/translated/part.js:2806
msgid "Test Name"
msgstr ""
-#: part/models.py:3276
+#: part/models.py:3310
msgid "Enter a name for the test"
msgstr ""
-#: part/models.py:3281
+#: part/models.py:3315
msgid "Test Description"
msgstr ""
-#: part/models.py:3282
+#: part/models.py:3316
msgid "Enter description for this test"
msgstr ""
-#: part/models.py:3287 templates/js/translated/part.js:2830
-#: templates/js/translated/table_filters.js:423
+#: part/models.py:3321 templates/js/translated/part.js:2815
+#: templates/js/translated/table_filters.js:429
msgid "Required"
msgstr ""
-#: part/models.py:3288
+#: part/models.py:3322
msgid "Is this test required to pass?"
msgstr ""
-#: part/models.py:3293 templates/js/translated/part.js:2838
+#: part/models.py:3327 templates/js/translated/part.js:2823
msgid "Requires Value"
msgstr ""
-#: part/models.py:3294
+#: part/models.py:3328
msgid "Does this test require a value when adding a test result?"
msgstr ""
-#: part/models.py:3299 templates/js/translated/part.js:2845
+#: part/models.py:3333 templates/js/translated/part.js:2830
msgid "Requires Attachment"
msgstr ""
-#: part/models.py:3300
+#: part/models.py:3334
msgid "Does this test require a file attachment when adding a test result?"
msgstr ""
-#: part/models.py:3346
+#: part/models.py:3380
msgid "Checkbox parameters cannot have units"
msgstr ""
-#: part/models.py:3351
+#: part/models.py:3385
msgid "Checkbox parameters cannot have choices"
msgstr ""
-#: part/models.py:3369
+#: part/models.py:3403
msgid "Choices must be unique"
msgstr ""
-#: part/models.py:3385
+#: part/models.py:3419
msgid "Parameter template name must be unique"
msgstr "De template van de parameter moet uniek zijn"
-#: part/models.py:3401
+#: part/models.py:3435
msgid "Parameter Name"
msgstr "Parameternaam"
-#: part/models.py:3407
+#: part/models.py:3441
msgid "Physical units for this parameter"
msgstr ""
-#: part/models.py:3417
+#: part/models.py:3451
msgid "Parameter description"
msgstr ""
-#: part/models.py:3423 templates/js/translated/part.js:1600
-#: templates/js/translated/table_filters.js:734
+#: part/models.py:3457 templates/js/translated/part.js:1599
+#: templates/js/translated/table_filters.js:756
msgid "Checkbox"
msgstr ""
-#: part/models.py:3424
+#: part/models.py:3458
msgid "Is this parameter a checkbox?"
msgstr ""
-#: part/models.py:3429 templates/js/translated/part.js:1609
+#: part/models.py:3463 templates/js/translated/part.js:1608
msgid "Choices"
msgstr ""
-#: part/models.py:3430
+#: part/models.py:3464
msgid "Valid choices for this parameter (comma-separated)"
msgstr ""
-#: part/models.py:3511
+#: part/models.py:3545
msgid "Invalid choice for parameter value"
msgstr ""
-#: part/models.py:3555
+#: part/models.py:3589
msgid "Parent Part"
msgstr ""
-#: part/models.py:3560 part/models.py:3621 part/models.py:3622
+#: part/models.py:3594 part/models.py:3670 part/models.py:3671
#: templates/InvenTree/settings/settings_staff_js.html:199
msgid "Parameter Template"
msgstr "Parameter Template"
-#: part/models.py:3565
+#: part/models.py:3599
msgid "Data"
msgstr ""
-#: part/models.py:3565
+#: part/models.py:3599
msgid "Parameter Value"
msgstr "Parameterwaarde"
-#: part/models.py:3626 templates/InvenTree/settings/settings_staff_js.html:208
+#: part/models.py:3675 templates/InvenTree/settings/settings_staff_js.html:208
msgid "Default Value"
msgstr ""
-#: part/models.py:3627
+#: part/models.py:3676
msgid "Default Parameter Value"
msgstr "Standaard Parameter Waarde"
-#: part/models.py:3664
+#: part/models.py:3713
msgid "Part ID or part name"
msgstr ""
-#: part/models.py:3668
+#: part/models.py:3717
msgid "Unique part ID value"
msgstr ""
-#: part/models.py:3676
+#: part/models.py:3725
msgid "Part IPN value"
msgstr ""
-#: part/models.py:3679
+#: part/models.py:3728
msgid "Level"
msgstr ""
-#: part/models.py:3680
+#: part/models.py:3729
msgid "BOM level"
msgstr ""
-#: part/models.py:3764
+#: part/models.py:3735 part/models.py:4113
+msgid "BOM Item"
+msgstr "Stuklijstartikel"
+
+#: part/models.py:3808
msgid "Select parent part"
msgstr ""
-#: part/models.py:3772
+#: part/models.py:3816
msgid "Sub part"
msgstr ""
-#: part/models.py:3773
+#: part/models.py:3817
msgid "Select part to be used in BOM"
msgstr ""
-#: part/models.py:3779
+#: part/models.py:3823
msgid "BOM quantity for this BOM item"
msgstr ""
-#: part/models.py:3783 part/templates/part/upload_bom.html:58
-#: templates/js/translated/bom.js:971 templates/js/translated/bom.js:998
-#: templates/js/translated/build.js:2113
-#: templates/js/translated/table_filters.js:156
-#: templates/js/translated/table_filters.js:185
-#: templates/js/translated/table_filters.js:500
-msgid "Optional"
-msgstr ""
-
-#: part/models.py:3784
+#: part/models.py:3828
msgid "This BOM item is optional"
msgstr ""
-#: part/models.py:3789 templates/js/translated/bom.js:967
-#: templates/js/translated/bom.js:1007 templates/js/translated/build.js:2104
-#: templates/js/translated/table_filters.js:160
-#: templates/js/translated/table_filters.js:496
-msgid "Consumable"
-msgstr ""
-
-#: part/models.py:3790
+#: part/models.py:3834
msgid "This BOM item is consumable (it is not tracked in build orders)"
msgstr ""
-#: part/models.py:3794 part/templates/part/upload_bom.html:55
+#: part/models.py:3838 part/templates/part/upload_bom.html:55
msgid "Overage"
msgstr ""
-#: part/models.py:3795
+#: part/models.py:3839
msgid "Estimated build wastage quantity (absolute or percentage)"
msgstr ""
-#: part/models.py:3798
+#: part/models.py:3842
msgid "BOM item reference"
msgstr ""
-#: part/models.py:3801
+#: part/models.py:3845
msgid "BOM item notes"
msgstr ""
-#: part/models.py:3805
+#: part/models.py:3849
msgid "Checksum"
msgstr ""
-#: part/models.py:3805
+#: part/models.py:3849
msgid "BOM line checksum"
msgstr ""
-#: part/models.py:3810 templates/js/translated/table_filters.js:144
+#: part/models.py:3854 templates/js/translated/table_filters.js:150
msgid "Validated"
msgstr ""
-#: part/models.py:3811
+#: part/models.py:3855
msgid "This BOM item has been validated"
msgstr ""
-#: part/models.py:3816 part/templates/part/upload_bom.html:57
-#: templates/js/translated/bom.js:1024
-#: templates/js/translated/table_filters.js:148
-#: templates/js/translated/table_filters.js:181
+#: part/models.py:3860 part/templates/part/upload_bom.html:57
+#: templates/js/translated/bom.js:1042
+#: templates/js/translated/table_filters.js:154
+#: templates/js/translated/table_filters.js:187
msgid "Gets inherited"
msgstr ""
-#: part/models.py:3817
+#: part/models.py:3861
msgid "This BOM item is inherited by BOMs for variant parts"
msgstr ""
-#: part/models.py:3822 part/templates/part/upload_bom.html:56
-#: templates/js/translated/bom.js:1016
+#: part/models.py:3866 part/templates/part/upload_bom.html:56
+#: templates/js/translated/bom.js:1034
msgid "Allow Variants"
msgstr ""
-#: part/models.py:3823
+#: part/models.py:3867
msgid "Stock items for variant parts can be used for this BOM item"
msgstr ""
-#: part/models.py:3909 stock/models.py:577
+#: part/models.py:3953 stock/models.py:577
msgid "Quantity must be integer value for trackable parts"
msgstr ""
-#: part/models.py:3918 part/models.py:3920
+#: part/models.py:3962 part/models.py:3964
msgid "Sub part must be specified"
msgstr ""
-#: part/models.py:4036
+#: part/models.py:4080
msgid "BOM Item Substitute"
msgstr ""
-#: part/models.py:4057
+#: part/models.py:4101
msgid "Substitute part cannot be the same as the master part"
msgstr ""
-#: part/models.py:4070
+#: part/models.py:4114
msgid "Parent BOM item"
msgstr ""
-#: part/models.py:4078
+#: part/models.py:4122
msgid "Substitute part"
msgstr ""
-#: part/models.py:4093
+#: part/models.py:4137
msgid "Part 1"
msgstr ""
-#: part/models.py:4097
+#: part/models.py:4141
msgid "Part 2"
msgstr ""
-#: part/models.py:4097
+#: part/models.py:4141
msgid "Select Related Part"
msgstr ""
-#: part/models.py:4115
+#: part/models.py:4159
msgid "Part relationship cannot be created between a part and itself"
msgstr ""
-#: part/models.py:4119
+#: part/models.py:4163
msgid "Duplicate relationship already exists"
msgstr ""
-#: part/serializers.py:152 part/serializers.py:175 stock/serializers.py:257
+#: part/serializers.py:152 part/serializers.py:175 stock/serializers.py:319
msgid "Purchase currency of this stock item"
msgstr ""
-#: part/serializers.py:302
+#: part/serializers.py:313
+msgid "No parts selected"
+msgstr ""
+
+#: part/serializers.py:321
+msgid "Select category"
+msgstr ""
+
+#: part/serializers.py:352
msgid "Original Part"
msgstr ""
-#: part/serializers.py:302
+#: part/serializers.py:352
msgid "Select original part to duplicate"
msgstr ""
-#: part/serializers.py:307
+#: part/serializers.py:357
msgid "Copy Image"
msgstr "Afbeelding kopiëren"
-#: part/serializers.py:307
+#: part/serializers.py:357
msgid "Copy image from original part"
msgstr "Afbeelding kopiëren van het oorspronkelijke onderdeel"
-#: part/serializers.py:312 part/templates/part/detail.html:296
+#: part/serializers.py:362 part/templates/part/detail.html:277
msgid "Copy BOM"
msgstr ""
-#: part/serializers.py:312
+#: part/serializers.py:362
msgid "Copy bill of materials from original part"
msgstr ""
-#: part/serializers.py:317
+#: part/serializers.py:367
msgid "Copy Parameters"
msgstr "Parameters kopiëren"
-#: part/serializers.py:317
+#: part/serializers.py:367
msgid "Copy parameter data from original part"
msgstr "Parameter data kopiëren van het originele onderdeel"
-#: part/serializers.py:327
+#: part/serializers.py:377
msgid "Initial Stock Quantity"
msgstr ""
-#: part/serializers.py:327
+#: part/serializers.py:377
msgid "Specify initial stock quantity for this Part. If quantity is zero, no stock is added."
msgstr ""
-#: part/serializers.py:333
+#: part/serializers.py:383
msgid "Initial Stock Location"
msgstr ""
-#: part/serializers.py:333
+#: part/serializers.py:383
msgid "Specify initial stock location for this Part"
msgstr ""
-#: part/serializers.py:343
+#: part/serializers.py:393
msgid "Select supplier (or leave blank to skip)"
msgstr ""
-#: part/serializers.py:354
+#: part/serializers.py:404
msgid "Select manufacturer (or leave blank to skip)"
msgstr ""
-#: part/serializers.py:360
+#: part/serializers.py:410
msgid "Manufacturer part number"
msgstr ""
-#: part/serializers.py:367
+#: part/serializers.py:417
msgid "Selected company is not a valid supplier"
msgstr ""
-#: part/serializers.py:375
+#: part/serializers.py:425
msgid "Selected company is not a valid manufacturer"
msgstr ""
-#: part/serializers.py:387
+#: part/serializers.py:437
msgid "Manufacturer part matching this MPN already exists"
msgstr ""
-#: part/serializers.py:395
+#: part/serializers.py:445
msgid "Supplier part matching this SKU already exists"
msgstr ""
-#: part/serializers.py:620 part/templates/part/copy_part.html:9
-#: templates/js/translated/part.js:449
+#: part/serializers.py:682 part/templates/part/copy_part.html:9
+#: templates/js/translated/part.js:448
msgid "Duplicate Part"
msgstr ""
-#: part/serializers.py:620
+#: part/serializers.py:682
msgid "Copy initial data from another Part"
msgstr ""
-#: part/serializers.py:625 templates/js/translated/part.js:103
+#: part/serializers.py:687 templates/js/translated/part.js:102
msgid "Initial Stock"
msgstr ""
-#: part/serializers.py:625
+#: part/serializers.py:687
msgid "Create Part with initial stock quantity"
msgstr ""
-#: part/serializers.py:630
+#: part/serializers.py:692
msgid "Supplier Information"
msgstr ""
-#: part/serializers.py:630
+#: part/serializers.py:692
msgid "Add initial supplier information for this part"
msgstr ""
-#: part/serializers.py:636
+#: part/serializers.py:698
msgid "Copy Category Parameters"
msgstr ""
-#: part/serializers.py:637
+#: part/serializers.py:699
msgid "Copy parameter templates from selected part category"
msgstr ""
-#: part/serializers.py:842
+#: part/serializers.py:904
msgid "Limit stocktake report to a particular part, and any variant parts"
msgstr ""
-#: part/serializers.py:848
+#: part/serializers.py:910
msgid "Limit stocktake report to a particular part category, and any child categories"
msgstr ""
-#: part/serializers.py:854
+#: part/serializers.py:916
msgid "Limit stocktake report to a particular stock location, and any child locations"
msgstr ""
-#: part/serializers.py:859
+#: part/serializers.py:921
msgid "Generate Report"
msgstr ""
-#: part/serializers.py:860
+#: part/serializers.py:922
msgid "Generate report file containing calculated stocktake data"
msgstr ""
-#: part/serializers.py:865
+#: part/serializers.py:927
msgid "Update Parts"
msgstr ""
-#: part/serializers.py:866
+#: part/serializers.py:928
msgid "Update specified parts with calculated stocktake data"
msgstr ""
-#: part/serializers.py:874
+#: part/serializers.py:936
msgid "Stocktake functionality is not enabled"
msgstr ""
-#: part/serializers.py:963
+#: part/serializers.py:1025
msgid "Update"
msgstr ""
-#: part/serializers.py:964
+#: part/serializers.py:1026
msgid "Update pricing for this part"
msgstr ""
-#: part/serializers.py:1246
+#: part/serializers.py:1308
msgid "Select part to copy BOM from"
msgstr ""
-#: part/serializers.py:1254
+#: part/serializers.py:1316
msgid "Remove Existing Data"
msgstr ""
-#: part/serializers.py:1255
+#: part/serializers.py:1317
msgid "Remove existing BOM items before copying"
msgstr ""
-#: part/serializers.py:1260
+#: part/serializers.py:1322
msgid "Include Inherited"
msgstr ""
-#: part/serializers.py:1261
+#: part/serializers.py:1323
msgid "Include BOM items which are inherited from templated parts"
msgstr ""
-#: part/serializers.py:1266
+#: part/serializers.py:1328
msgid "Skip Invalid Rows"
msgstr ""
-#: part/serializers.py:1267
+#: part/serializers.py:1329
msgid "Enable this option to skip invalid rows"
msgstr ""
-#: part/serializers.py:1272
+#: part/serializers.py:1334
msgid "Copy Substitute Parts"
msgstr ""
-#: part/serializers.py:1273
+#: part/serializers.py:1335
msgid "Copy substitute parts when duplicate BOM items"
msgstr ""
-#: part/serializers.py:1313
+#: part/serializers.py:1375
msgid "Clear Existing BOM"
msgstr ""
-#: part/serializers.py:1314
+#: part/serializers.py:1376
msgid "Delete existing BOM items before uploading"
msgstr ""
-#: part/serializers.py:1344
+#: part/serializers.py:1406
msgid "No part column specified"
msgstr ""
-#: part/serializers.py:1387
+#: part/serializers.py:1449
msgid "Multiple matching parts found"
msgstr ""
-#: part/serializers.py:1390
+#: part/serializers.py:1452
msgid "No matching part found"
msgstr ""
-#: part/serializers.py:1393
+#: part/serializers.py:1455
msgid "Part is not designated as a component"
msgstr ""
-#: part/serializers.py:1402
+#: part/serializers.py:1464
msgid "Quantity not provided"
msgstr ""
-#: part/serializers.py:1410
+#: part/serializers.py:1472
msgid "Invalid quantity"
msgstr "Ongeldige hoeveelheid"
-#: part/serializers.py:1431
+#: part/serializers.py:1493
msgid "At least one BOM item is required"
msgstr ""
@@ -6421,9 +6453,9 @@ msgstr ""
msgid "The available stock for {part.name} has fallen below the configured minimum level"
msgstr ""
-#: part/tasks.py:294 templates/js/translated/part.js:1040
-#: templates/js/translated/part.js:1793 templates/js/translated/part.js:1848
-#: templates/js/translated/purchase_order.js:2052
+#: part/tasks.py:294 templates/js/translated/part.js:1039
+#: templates/js/translated/part.js:1792 templates/js/translated/part.js:1847
+#: templates/js/translated/purchase_order.js:2062
msgid "Total Quantity"
msgstr ""
@@ -6461,14 +6493,6 @@ msgstr ""
msgid "The BOM for %(part)s has not been validated."
msgstr ""
-#: part/templates/part/bom.html:30 part/templates/part/detail.html:291
-msgid "BOM actions"
-msgstr ""
-
-#: part/templates/part/bom.html:34
-msgid "Delete Items"
-msgstr ""
-
#: part/templates/part/category.html:34
msgid "Perform stocktake for this part category"
msgstr ""
@@ -6505,7 +6529,7 @@ msgstr "Categorie verwijderen"
msgid "Top level part category"
msgstr ""
-#: part/templates/part/category.html:121 part/templates/part/category.html:225
+#: part/templates/part/category.html:121 part/templates/part/category.html:206
#: part/templates/part/category_sidebar.html:7
msgid "Subcategories"
msgstr ""
@@ -6518,33 +6542,20 @@ msgstr ""
msgid "Create new part"
msgstr ""
-#: part/templates/part/category.html:165 templates/js/translated/bom.js:443
+#: part/templates/part/category.html:165 templates/js/translated/bom.js:444
msgid "New Part"
msgstr ""
-#: part/templates/part/category.html:175 part/templates/part/detail.html:390
-#: part/templates/part/detail.html:421
-msgid "Options"
-msgstr ""
-
-#: part/templates/part/category.html:179
-msgid "Set category"
-msgstr ""
-
-#: part/templates/part/category.html:180
-msgid "Set Category"
-msgstr ""
-
-#: part/templates/part/category.html:208
+#: part/templates/part/category.html:191
#: templates/InvenTree/settings/sidebar.html:47
msgid "Part Parameters"
msgstr "Onderdeel Parameters"
-#: part/templates/part/category.html:229
+#: part/templates/part/category.html:210
msgid "Create new part category"
msgstr ""
-#: part/templates/part/category.html:230
+#: part/templates/part/category.html:211
msgid "New Category"
msgstr "Nieuwe Categorie"
@@ -6581,7 +6592,7 @@ msgid "Refresh scheduling data"
msgstr ""
#: part/templates/part/detail.html:45 part/templates/part/prices.html:15
-#: templates/js/translated/tables.js:584
+#: templates/js/translated/tables.js:560
msgid "Refresh"
msgstr ""
@@ -6592,7 +6603,7 @@ msgstr ""
#: part/templates/part/detail.html:67 part/templates/part/part_sidebar.html:50
#: stock/admin.py:130 templates/InvenTree/settings/part_stocktake.html:29
#: templates/InvenTree/settings/sidebar.html:51
-#: templates/js/translated/stock.js:1952 users/models.py:39
+#: templates/js/translated/stock.js:2109 users/models.py:39
msgid "Stocktake"
msgstr ""
@@ -6604,101 +6615,101 @@ msgstr ""
msgid "Add Test Template"
msgstr ""
-#: part/templates/part/detail.html:145 stock/templates/stock/item.html:53
+#: part/templates/part/detail.html:139 stock/templates/stock/item.html:49
msgid "Sales Order Allocations"
msgstr "Verkoopordertoewijzingen"
-#: part/templates/part/detail.html:165
+#: part/templates/part/detail.html:156
msgid "Part Notes"
msgstr ""
-#: part/templates/part/detail.html:180
+#: part/templates/part/detail.html:171
msgid "Part Variants"
msgstr ""
-#: part/templates/part/detail.html:184
+#: part/templates/part/detail.html:175
msgid "Create new variant"
msgstr ""
-#: part/templates/part/detail.html:185
+#: part/templates/part/detail.html:176
msgid "New Variant"
msgstr ""
-#: part/templates/part/detail.html:212
+#: part/templates/part/detail.html:199
msgid "Add new parameter"
msgstr "Een parameter toevoegen"
-#: part/templates/part/detail.html:249 part/templates/part/part_sidebar.html:58
+#: part/templates/part/detail.html:232 part/templates/part/part_sidebar.html:58
msgid "Related Parts"
msgstr ""
-#: part/templates/part/detail.html:253 part/templates/part/detail.html:254
+#: part/templates/part/detail.html:236 part/templates/part/detail.html:237
msgid "Add Related"
msgstr ""
-#: part/templates/part/detail.html:274 part/templates/part/part_sidebar.html:17
+#: part/templates/part/detail.html:255 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:279
+#: part/templates/part/detail.html:260
msgid "Export actions"
msgstr ""
-#: part/templates/part/detail.html:283 templates/js/translated/bom.js:339
+#: part/templates/part/detail.html:264 templates/js/translated/bom.js:340
msgid "Export BOM"
msgstr ""
-#: part/templates/part/detail.html:285
+#: part/templates/part/detail.html:266
msgid "Print BOM Report"
msgstr ""
-#: part/templates/part/detail.html:295
+#: part/templates/part/detail.html:272
+msgid "BOM actions"
+msgstr ""
+
+#: part/templates/part/detail.html:276
msgid "Upload BOM"
msgstr ""
-#: part/templates/part/detail.html:297
+#: part/templates/part/detail.html:278
msgid "Validate BOM"
msgstr ""
-#: part/templates/part/detail.html:302 part/templates/part/detail.html:303
-#: templates/js/translated/bom.js:1279 templates/js/translated/bom.js:1280
+#: part/templates/part/detail.html:283 part/templates/part/detail.html:284
+#: templates/js/translated/bom.js:1299 templates/js/translated/bom.js:1300
msgid "Add BOM Item"
msgstr ""
-#: part/templates/part/detail.html:316
+#: part/templates/part/detail.html:297
msgid "Assemblies"
msgstr "Assemblages"
-#: part/templates/part/detail.html:334
+#: part/templates/part/detail.html:313
msgid "Part Builds"
msgstr ""
-#: part/templates/part/detail.html:361 stock/templates/stock/item.html:38
+#: part/templates/part/detail.html:338 stock/templates/stock/item.html:36
msgid "Build Order Allocations"
msgstr "Productieordertoewijzingen"
-#: part/templates/part/detail.html:377
+#: part/templates/part/detail.html:352
msgid "Part Suppliers"
msgstr ""
-#: part/templates/part/detail.html:407
+#: part/templates/part/detail.html:372
msgid "Part Manufacturers"
msgstr "Onderdeelfabrikanten"
-#: part/templates/part/detail.html:423
-msgid "Delete manufacturer parts"
-msgstr "Fabrikantonderdeel verwijderen"
-
-#: part/templates/part/detail.html:707
+#: part/templates/part/detail.html:654
msgid "Related Part"
msgstr ""
-#: part/templates/part/detail.html:715
+#: part/templates/part/detail.html:662
msgid "Add Related Part"
msgstr ""
-#: part/templates/part/detail.html:800
+#: part/templates/part/detail.html:747
msgid "Add Test Result Template"
msgstr ""
@@ -6732,13 +6743,13 @@ msgid "Download Part Import Template"
msgstr ""
#: part/templates/part/import_wizard/part_upload.html:92
-#: templates/js/translated/bom.js:308 templates/js/translated/bom.js:342
+#: templates/js/translated/bom.js:309 templates/js/translated/bom.js:343
#: templates/js/translated/order.js:129 templates/js/translated/tables.js:189
msgid "Format"
msgstr "Formaat"
#: part/templates/part/import_wizard/part_upload.html:93
-#: templates/js/translated/bom.js:309 templates/js/translated/bom.js:343
+#: templates/js/translated/bom.js:310 templates/js/translated/bom.js:344
#: templates/js/translated/order.js:130
msgid "Select file format"
msgstr "Selecteer bestandsindeling"
@@ -6779,7 +6790,7 @@ msgstr ""
msgid "Transfer part stock"
msgstr ""
-#: part/templates/part/part_base.html:93
+#: part/templates/part/part_base.html:93 templates/js/translated/part.js:2264
msgid "Part actions"
msgstr ""
@@ -6824,10 +6835,10 @@ msgid "Part is not active"
msgstr ""
#: part/templates/part/part_base.html:148
-#: templates/js/translated/company.js:945
-#: templates/js/translated/company.js:1185
-#: templates/js/translated/model_renderers.js:273
-#: templates/js/translated/part.js:792 templates/js/translated/part.js:1192
+#: templates/js/translated/company.js:1318
+#: templates/js/translated/company.js:1606
+#: templates/js/translated/model_renderers.js:287
+#: templates/js/translated/part.js:791 templates/js/translated/part.js:1191
msgid "Inactive"
msgstr ""
@@ -6850,7 +6861,7 @@ msgstr "Toegewezen aan Productieorder"
msgid "Allocated to Sales Orders"
msgstr "Toegewezen aan verkooporders"
-#: part/templates/part/part_base.html:237 templates/js/translated/bom.js:1178
+#: part/templates/part/part_base.html:237 templates/js/translated/bom.js:1198
msgid "Can Build"
msgstr ""
@@ -6858,8 +6869,8 @@ msgstr ""
msgid "Minimum stock level"
msgstr ""
-#: part/templates/part/part_base.html:324 templates/js/translated/bom.js:1041
-#: templates/js/translated/part.js:1238 templates/js/translated/part.js:2304
+#: part/templates/part/part_base.html:324 templates/js/translated/bom.js:1059
+#: templates/js/translated/part.js:1237 templates/js/translated/part.js:2380
#: templates/js/translated/pricing.js:391
#: templates/js/translated/pricing.js:1040
msgid "Price Range"
@@ -6882,7 +6893,7 @@ msgstr ""
msgid "Link Barcode to Part"
msgstr ""
-#: part/templates/part/part_base.html:474 templates/js/translated/part.js:2191
+#: part/templates/part/part_base.html:474 templates/js/translated/part.js:2258
msgid "part"
msgstr ""
@@ -6956,9 +6967,9 @@ msgstr ""
#: stock/templates/stock/stock_app_base.html:10
#: templates/InvenTree/search.html:153
#: templates/InvenTree/settings/sidebar.html:49
-#: templates/js/translated/part.js:1216 templates/js/translated/part.js:2120
-#: templates/js/translated/part.js:2284 templates/js/translated/stock.js:1022
-#: templates/js/translated/stock.js:1829 templates/navbar.html:31
+#: templates/js/translated/part.js:1215 templates/js/translated/part.js:2119
+#: templates/js/translated/part.js:2360 templates/js/translated/stock.js:1021
+#: templates/js/translated/stock.js:1986 templates/navbar.html:31
msgid "Stock"
msgstr "Voorraad"
@@ -6989,9 +7000,9 @@ msgstr ""
#: part/templates/part/prices.html:25 stock/admin.py:129
#: stock/templates/stock/item_base.html:442
-#: templates/js/translated/company.js:1313
-#: templates/js/translated/company.js:1323
-#: templates/js/translated/stock.js:1982
+#: templates/js/translated/company.js:1734
+#: templates/js/translated/company.js:1744
+#: templates/js/translated/stock.js:2139
msgid "Last Updated"
msgstr ""
@@ -7054,12 +7065,12 @@ msgstr ""
msgid "Add Sell Price Break"
msgstr ""
-#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:682
-#: templates/js/translated/part.js:2115 templates/js/translated/part.js:2117
+#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:681
+#: templates/js/translated/part.js:2114 templates/js/translated/part.js:2116
msgid "No Stock"
msgstr ""
-#: part/templates/part/stock_count.html:9 templates/InvenTree/index.html:167
+#: part/templates/part/stock_count.html:9 templates/InvenTree/index.html:120
msgid "Low Stock"
msgstr ""
@@ -7163,7 +7174,7 @@ msgid "Match found for barcode data"
msgstr "Overeenkomst gevonden voor streepjescodegegevens"
#: plugin/base/barcodes/api.py:120
-#: templates/js/translated/purchase_order.js:1372
+#: templates/js/translated/purchase_order.js:1387
msgid "Barcode matches existing item"
msgstr ""
@@ -7226,43 +7237,43 @@ msgstr ""
msgid "Open link"
msgstr ""
-#: plugin/models.py:27
+#: plugin/models.py:28
msgid "Plugin Configuration"
msgstr ""
-#: plugin/models.py:28
+#: plugin/models.py:29
msgid "Plugin Configurations"
msgstr ""
-#: plugin/models.py:33
+#: plugin/models.py:34
msgid "Key"
msgstr ""
-#: plugin/models.py:34
+#: plugin/models.py:35
msgid "Key of plugin"
msgstr ""
-#: plugin/models.py:42
+#: plugin/models.py:43
msgid "PluginName of the plugin"
msgstr ""
-#: plugin/models.py:48
+#: plugin/models.py:49
msgid "Is the plugin active"
msgstr ""
-#: plugin/models.py:124
+#: plugin/models.py:125
msgid "Sample plugin"
msgstr ""
-#: plugin/models.py:133
+#: plugin/models.py:134
msgid "Builtin Plugin"
msgstr ""
-#: plugin/models.py:159 templates/InvenTree/settings/plugin_settings.html:9
+#: plugin/models.py:160 templates/InvenTree/settings/plugin_settings.html:9
msgid "Plugin"
msgstr ""
-#: plugin/models.py:210
+#: plugin/models.py:211
msgid "Method"
msgstr ""
@@ -7414,47 +7425,47 @@ msgstr ""
msgid "Build query filters (comma-separated list of key=value pairs"
msgstr ""
-#: report/models.py:418
+#: report/models.py:420
msgid "Part Filters"
msgstr ""
-#: report/models.py:419
+#: report/models.py:421
msgid "Part query filters (comma-separated list of key=value pairs"
msgstr ""
-#: report/models.py:453
+#: report/models.py:455
msgid "Purchase order query filters"
msgstr "Filters inkooporder"
-#: report/models.py:491
+#: report/models.py:493
msgid "Sales order query filters"
msgstr "Verkooporder zoekopdracht filters"
-#: report/models.py:529
+#: report/models.py:531
msgid "Return order query filters"
msgstr ""
-#: report/models.py:582
+#: report/models.py:584
msgid "Snippet"
msgstr ""
-#: report/models.py:583
+#: report/models.py:585
msgid "Report snippet file"
msgstr ""
-#: report/models.py:587
+#: report/models.py:589
msgid "Snippet file description"
msgstr ""
-#: report/models.py:624
+#: report/models.py:626
msgid "Asset"
msgstr ""
-#: report/models.py:625
+#: report/models.py:627
msgid "Report asset file"
msgstr ""
-#: report/models.py:632
+#: report/models.py:634
msgid "Asset file description"
msgstr ""
@@ -7475,8 +7486,8 @@ msgstr ""
#: templates/js/translated/order.js:316 templates/js/translated/pricing.js:527
#: templates/js/translated/pricing.js:596
#: templates/js/translated/pricing.js:820
-#: templates/js/translated/purchase_order.js:2083
-#: templates/js/translated/sales_order.js:1817
+#: templates/js/translated/purchase_order.js:2093
+#: templates/js/translated/sales_order.js:1829
msgid "Unit Price"
msgstr "Stukprijs"
@@ -7488,23 +7499,23 @@ msgstr ""
#: report/templates/report/inventree_po_report_base.html:72
#: report/templates/report/inventree_so_report_base.html:72
-#: templates/js/translated/purchase_order.js:1985
-#: templates/js/translated/sales_order.js:1792
+#: templates/js/translated/purchase_order.js:1995
+#: templates/js/translated/sales_order.js:1804
msgid "Total"
msgstr "Totaal"
#: report/templates/report/inventree_return_order_report_base.html:25
#: report/templates/report/inventree_test_report_base.html:88
#: stock/models.py:725 stock/templates/stock/item_base.html:312
-#: templates/js/translated/build.js:502 templates/js/translated/build.js:1423
-#: templates/js/translated/build.js:1989
-#: templates/js/translated/model_renderers.js:201
-#: templates/js/translated/return_order.js:528
-#: templates/js/translated/return_order.js:708
-#: templates/js/translated/sales_order.js:300
-#: templates/js/translated/sales_order.js:1597
-#: templates/js/translated/sales_order.js:1682
-#: templates/js/translated/stock.js:563
+#: templates/js/translated/build.js:508 templates/js/translated/build.js:1306
+#: templates/js/translated/build.js:2281
+#: templates/js/translated/model_renderers.js:215
+#: templates/js/translated/return_order.js:540
+#: templates/js/translated/return_order.js:720
+#: templates/js/translated/sales_order.js:312
+#: templates/js/translated/sales_order.js:1609
+#: templates/js/translated/sales_order.js:1694
+#: templates/js/translated/stock.js:562
msgid "Serial Number"
msgstr "Serienummer"
@@ -7517,7 +7528,7 @@ msgid "Test Results"
msgstr ""
#: report/templates/report/inventree_test_report_base.html:102
-#: stock/models.py:2243 templates/js/translated/stock.js:1419
+#: stock/models.py:2243 templates/js/translated/stock.js:1418
msgid "Test"
msgstr ""
@@ -7548,8 +7559,8 @@ msgid "Installed Items"
msgstr ""
#: report/templates/report/inventree_test_report_base.html:168
-#: stock/admin.py:104 templates/js/translated/stock.js:667
-#: templates/js/translated/stock.js:838 templates/js/translated/stock.js:2849
+#: stock/admin.py:104 templates/js/translated/stock.js:666
+#: templates/js/translated/stock.js:837 templates/js/translated/stock.js:2976
msgid "Serial"
msgstr ""
@@ -7617,31 +7628,31 @@ msgstr ""
#: stock/admin.py:131 stock/models.py:789
#: stock/templates/stock/item_base.html:429
-#: templates/js/translated/stock.js:1966
+#: templates/js/translated/stock.js:2123
msgid "Expiry Date"
msgstr ""
-#: stock/api.py:420 templates/js/translated/table_filters.js:373
+#: stock/api.py:426 templates/js/translated/table_filters.js:379
msgid "External Location"
msgstr ""
-#: stock/api.py:582
+#: stock/api.py:619
msgid "Quantity is required"
msgstr ""
-#: stock/api.py:589
+#: stock/api.py:626
msgid "Valid part must be supplied"
msgstr ""
-#: stock/api.py:615
+#: stock/api.py:652
msgid "The given supplier part does not exist"
msgstr ""
-#: stock/api.py:624
+#: stock/api.py:661
msgid "The supplier part has a pack size defined, but flag use_pack_size not set"
msgstr ""
-#: stock/api.py:642
+#: stock/api.py:679
msgid "Serial numbers cannot be supplied for a non-trackable part"
msgstr ""
@@ -7652,7 +7663,7 @@ msgid "Stock Location"
msgstr "Voorraadlocatie"
#: stock/models.py:55 stock/templates/stock/location.html:177
-#: templates/InvenTree/search.html:166 templates/js/translated/search.js:220
+#: templates/InvenTree/search.html:166 templates/js/translated/search.js:178
#: users/models.py:40
msgid "Stock Locations"
msgstr "Voorraadlocaties"
@@ -7670,8 +7681,8 @@ msgstr ""
msgid "Stock items may not be directly located into a structural stock locations, but may be located to child locations."
msgstr ""
-#: stock/models.py:132 templates/js/translated/stock.js:2529
-#: templates/js/translated/table_filters.js:213
+#: stock/models.py:132 templates/js/translated/stock.js:2660
+#: templates/js/translated/table_filters.js:219
msgid "External"
msgstr ""
@@ -7687,7 +7698,7 @@ msgstr ""
msgid "Stock items cannot be located into structural stock locations!"
msgstr ""
-#: stock/models.py:583 stock/serializers.py:174
+#: stock/models.py:583 stock/serializers.py:223
msgid "Stock item cannot be created for virtual parts"
msgstr ""
@@ -7821,7 +7832,7 @@ msgstr ""
msgid "Quantity does not match serial numbers"
msgstr ""
-#: stock/models.py:1403 stock/serializers.py:374
+#: stock/models.py:1403 stock/serializers.py:440
msgid "Serial numbers already exist"
msgstr ""
@@ -7849,7 +7860,7 @@ msgstr ""
msgid "Serialized stock cannot be merged"
msgstr ""
-#: stock/models.py:1496 stock/serializers.py:975
+#: stock/models.py:1496 stock/serializers.py:1092
msgid "Duplicate stock items"
msgstr ""
@@ -7901,132 +7912,141 @@ msgstr ""
msgid "Test notes"
msgstr ""
-#: stock/serializers.py:76
+#: stock/serializers.py:121
msgid "Serial number is too large"
msgstr ""
-#: stock/serializers.py:166
+#: stock/serializers.py:215
msgid "Use pack size when adding: the quantity defined is the number of packs"
msgstr ""
-#: stock/serializers.py:254
+#: stock/serializers.py:316
msgid "Purchase price of this stock item, per unit or pack"
msgstr ""
-#: stock/serializers.py:307
+#: stock/serializers.py:373
msgid "Enter number of stock items to serialize"
msgstr ""
-#: stock/serializers.py:319
+#: stock/serializers.py:385
#, python-brace-format
msgid "Quantity must not exceed available stock quantity ({q})"
msgstr ""
-#: stock/serializers.py:325
+#: stock/serializers.py:391
msgid "Enter serial numbers for new items"
msgstr ""
-#: stock/serializers.py:336 stock/serializers.py:932 stock/serializers.py:1174
+#: stock/serializers.py:402 stock/serializers.py:1049 stock/serializers.py:1291
msgid "Destination stock location"
msgstr ""
-#: stock/serializers.py:343
+#: stock/serializers.py:409
msgid "Optional note field"
msgstr ""
-#: stock/serializers.py:353
+#: stock/serializers.py:419
msgid "Serial numbers cannot be assigned to this part"
msgstr ""
-#: stock/serializers.py:414
+#: stock/serializers.py:480
msgid "Select stock item to install"
msgstr ""
-#: stock/serializers.py:427
-msgid "Stock item is unavailable"
-msgstr ""
-
-#: stock/serializers.py:434
-msgid "Selected part is not in the Bill of Materials"
-msgstr ""
-
-#: stock/serializers.py:471
-msgid "Destination location for uninstalled item"
-msgstr ""
-
-#: stock/serializers.py:476 stock/serializers.py:557
+#: stock/serializers.py:485 stock/serializers.py:543 stock/serializers.py:624
+#: stock/serializers.py:682
msgid "Add transaction note (optional)"
msgstr ""
-#: stock/serializers.py:510
+#: stock/serializers.py:494
+msgid "Stock item is unavailable"
+msgstr ""
+
+#: stock/serializers.py:501
+msgid "Selected part is not in the Bill of Materials"
+msgstr ""
+
+#: stock/serializers.py:538
+msgid "Destination location for uninstalled item"
+msgstr ""
+
+#: stock/serializers.py:577
msgid "Select part to convert stock item into"
msgstr ""
-#: stock/serializers.py:521
+#: stock/serializers.py:588
msgid "Selected part is not a valid option for conversion"
msgstr ""
-#: stock/serializers.py:552
+#: stock/serializers.py:619
msgid "Destination location for returned item"
msgstr ""
-#: stock/serializers.py:787
+#: stock/serializers.py:663
+msgid "Select stock items to change status"
+msgstr ""
+
+#: stock/serializers.py:670
+msgid "No stock items selected"
+msgstr ""
+
+#: stock/serializers.py:904
msgid "Part must be salable"
msgstr ""
-#: stock/serializers.py:791
+#: stock/serializers.py:908
msgid "Item is allocated to a sales order"
msgstr "Artikel is toegewezen aan een verkooporder"
-#: stock/serializers.py:795
+#: stock/serializers.py:912
msgid "Item is allocated to a build order"
msgstr "Artikel is toegewezen aan een productieorder"
-#: stock/serializers.py:826
+#: stock/serializers.py:943
msgid "Customer to assign stock items"
msgstr ""
-#: stock/serializers.py:832
+#: stock/serializers.py:949
msgid "Selected company is not a customer"
msgstr ""
-#: stock/serializers.py:840
+#: stock/serializers.py:957
msgid "Stock assignment notes"
msgstr ""
-#: stock/serializers.py:850 stock/serializers.py:1081
+#: stock/serializers.py:967 stock/serializers.py:1198
msgid "A list of stock items must be provided"
msgstr ""
-#: stock/serializers.py:939
+#: stock/serializers.py:1056
msgid "Stock merging notes"
msgstr ""
-#: stock/serializers.py:944
+#: stock/serializers.py:1061
msgid "Allow mismatched suppliers"
msgstr ""
-#: stock/serializers.py:945
+#: stock/serializers.py:1062
msgid "Allow stock items with different supplier parts to be merged"
msgstr ""
-#: stock/serializers.py:950
+#: stock/serializers.py:1067
msgid "Allow mismatched status"
msgstr ""
-#: stock/serializers.py:951
+#: stock/serializers.py:1068
msgid "Allow stock items with different status codes to be merged"
msgstr ""
-#: stock/serializers.py:961
+#: stock/serializers.py:1078
msgid "At least two stock items must be provided"
msgstr ""
-#: stock/serializers.py:1043
+#: stock/serializers.py:1160
msgid "StockItem primary key value"
msgstr ""
-#: stock/serializers.py:1071
+#: stock/serializers.py:1188
msgid "Stock transaction notes"
msgstr ""
@@ -8034,48 +8054,48 @@ msgstr ""
msgid "Stock Tracking Information"
msgstr ""
-#: stock/templates/stock/item.html:69
+#: stock/templates/stock/item.html:63
msgid "Child Stock Items"
msgstr ""
-#: stock/templates/stock/item.html:77
+#: stock/templates/stock/item.html:71
msgid "This stock item does not have any child items"
msgstr ""
-#: stock/templates/stock/item.html:86
+#: stock/templates/stock/item.html:80
#: stock/templates/stock/stock_sidebar.html:12
msgid "Test Data"
msgstr ""
-#: stock/templates/stock/item.html:90 stock/templates/stock/item_base.html:66
+#: stock/templates/stock/item.html:84 stock/templates/stock/item_base.html:66
msgid "Test Report"
msgstr ""
-#: stock/templates/stock/item.html:94 stock/templates/stock/item.html:288
+#: stock/templates/stock/item.html:88 stock/templates/stock/item.html:278
msgid "Delete Test Data"
msgstr ""
-#: stock/templates/stock/item.html:98
+#: stock/templates/stock/item.html:92
msgid "Add Test Data"
msgstr ""
-#: stock/templates/stock/item.html:132
+#: stock/templates/stock/item.html:124
msgid "Stock Item Notes"
msgstr ""
-#: stock/templates/stock/item.html:147
+#: stock/templates/stock/item.html:139
msgid "Installed Stock Items"
msgstr ""
-#: stock/templates/stock/item.html:152 templates/js/translated/stock.js:2996
+#: stock/templates/stock/item.html:144 templates/js/translated/stock.js:3123
msgid "Install Stock Item"
msgstr ""
-#: stock/templates/stock/item.html:276
+#: stock/templates/stock/item.html:266
msgid "Delete all test results for this stock item"
msgstr ""
-#: stock/templates/stock/item.html:305 templates/js/translated/stock.js:1611
+#: stock/templates/stock/item.html:295 templates/js/translated/stock.js:1610
msgid "Add Test Result"
msgstr ""
@@ -8083,13 +8103,13 @@ msgstr ""
msgid "Locate stock item"
msgstr ""
-#: stock/templates/stock/item_base.html:52 templates/stock_table.html:21
+#: stock/templates/stock/item_base.html:52
msgid "Scan to Location"
msgstr "Scan naar Locatie"
#: stock/templates/stock/item_base.html:60
#: stock/templates/stock/location.html:69
-#: templates/js/translated/filters.js:322
+#: templates/js/translated/filters.js:432
msgid "Printing actions"
msgstr ""
@@ -8098,15 +8118,17 @@ msgid "Stock adjustment actions"
msgstr ""
#: stock/templates/stock/item_base.html:80
-#: stock/templates/stock/location.html:88 templates/stock_table.html:35
+#: stock/templates/stock/location.html:88 templates/js/translated/stock.js:1735
msgid "Count stock"
msgstr "Voorraad tellen"
-#: stock/templates/stock/item_base.html:82 templates/stock_table.html:33
+#: stock/templates/stock/item_base.html:82
+#: templates/js/translated/stock.js:1717
msgid "Add stock"
msgstr ""
-#: stock/templates/stock/item_base.html:83 templates/stock_table.html:34
+#: stock/templates/stock/item_base.html:83
+#: templates/js/translated/stock.js:1726
msgid "Remove stock"
msgstr ""
@@ -8115,11 +8137,12 @@ msgid "Serialize stock"
msgstr ""
#: stock/templates/stock/item_base.html:89
-#: stock/templates/stock/location.html:94 templates/stock_table.html:36
+#: stock/templates/stock/location.html:94 templates/js/translated/stock.js:1744
msgid "Transfer stock"
msgstr "Voorraad overzetten"
-#: stock/templates/stock/item_base.html:92 templates/stock_table.html:39
+#: stock/templates/stock/item_base.html:92
+#: templates/js/translated/stock.js:1798
msgid "Assign to customer"
msgstr ""
@@ -8159,6 +8182,11 @@ msgstr ""
msgid "Delete stock item"
msgstr ""
+#: stock/templates/stock/item_base.html:170 templates/InvenTree/search.html:139
+#: templates/js/translated/build.js:2046 templates/navbar.html:38
+msgid "Build"
+msgstr "Product"
+
#: stock/templates/stock/item_base.html:194
msgid "Parent Item"
msgstr ""
@@ -8221,7 +8249,7 @@ msgid "Available Quantity"
msgstr ""
#: stock/templates/stock/item_base.html:394
-#: templates/js/translated/build.js:2015
+#: templates/js/translated/build.js:2306
msgid "No location set"
msgstr "Geen locatie ingesteld"
@@ -8239,7 +8267,7 @@ msgid "This StockItem expired on %(item.expiry_date)s"
msgstr ""
#: stock/templates/stock/item_base.html:433
-#: templates/js/translated/table_filters.js:381
+#: templates/js/translated/table_filters.js:387
msgid "Expired"
msgstr ""
@@ -8249,7 +8277,7 @@ msgid "This StockItem expires on %(item.expiry_date)s"
msgstr ""
#: stock/templates/stock/item_base.html:435
-#: templates/js/translated/table_filters.js:387
+#: templates/js/translated/table_filters.js:393
msgid "Stale"
msgstr ""
@@ -8258,7 +8286,7 @@ msgid "No stocktake performed"
msgstr ""
#: stock/templates/stock/item_base.html:503
-#: templates/js/translated/stock.js:1745
+#: templates/js/translated/stock.js:1865
msgid "stock item"
msgstr ""
@@ -8364,20 +8392,20 @@ msgstr "Maak nieuwe voorraadlocatie"
msgid "New Location"
msgstr "Nieuwe Locatie"
-#: stock/templates/stock/location.html:287
-#: templates/js/translated/stock.js:2318
+#: stock/templates/stock/location.html:278
+#: templates/js/translated/stock.js:2449
msgid "stock location"
msgstr ""
-#: stock/templates/stock/location.html:304
+#: stock/templates/stock/location.html:295
msgid "Scanned stock container into this location"
msgstr ""
-#: stock/templates/stock/location.html:377
+#: stock/templates/stock/location.html:368
msgid "Stock Location QR Code"
msgstr ""
-#: stock/templates/stock/location.html:388
+#: stock/templates/stock/location.html:379
msgid "Link Barcode to Stock Location"
msgstr ""
@@ -8451,71 +8479,71 @@ msgstr ""
msgid "Index"
msgstr ""
-#: templates/InvenTree/index.html:89
+#: templates/InvenTree/index.html:39
msgid "Subscribed Parts"
msgstr ""
-#: templates/InvenTree/index.html:102
+#: templates/InvenTree/index.html:53
msgid "Subscribed Categories"
msgstr ""
-#: templates/InvenTree/index.html:112
+#: templates/InvenTree/index.html:63
msgid "Latest Parts"
msgstr ""
-#: templates/InvenTree/index.html:126
+#: templates/InvenTree/index.html:78
msgid "BOM Waiting Validation"
msgstr ""
-#: templates/InvenTree/index.html:155
+#: templates/InvenTree/index.html:107
msgid "Recently Updated"
msgstr ""
-#: templates/InvenTree/index.html:180
+#: templates/InvenTree/index.html:134
msgid "Depleted Stock"
msgstr ""
-#: templates/InvenTree/index.html:193
+#: templates/InvenTree/index.html:148
msgid "Required for Build Orders"
msgstr "Vereist voor Productieorder"
-#: templates/InvenTree/index.html:208
+#: templates/InvenTree/index.html:156
msgid "Expired Stock"
msgstr ""
-#: templates/InvenTree/index.html:222
+#: templates/InvenTree/index.html:172
msgid "Stale Stock"
msgstr ""
-#: templates/InvenTree/index.html:247
+#: templates/InvenTree/index.html:199
msgid "Build Orders In Progress"
msgstr "Productieorders in Uitvoering"
-#: templates/InvenTree/index.html:258
+#: templates/InvenTree/index.html:210
msgid "Overdue Build Orders"
msgstr "Achterstallige Productieorders"
-#: templates/InvenTree/index.html:278
+#: templates/InvenTree/index.html:230
msgid "Outstanding Purchase Orders"
msgstr "Openstaande Inkooporders"
-#: templates/InvenTree/index.html:289
+#: templates/InvenTree/index.html:241
msgid "Overdue Purchase Orders"
msgstr "Achterstallige Inkooporders"
-#: templates/InvenTree/index.html:310
+#: templates/InvenTree/index.html:262
msgid "Outstanding Sales Orders"
msgstr "Openstaande Verkooporders"
-#: templates/InvenTree/index.html:321
+#: templates/InvenTree/index.html:273
msgid "Overdue Sales Orders"
msgstr "Achterstallige Verkooporders"
-#: templates/InvenTree/index.html:347
+#: templates/InvenTree/index.html:299
msgid "InvenTree News"
msgstr ""
-#: templates/InvenTree/index.html:349
+#: templates/InvenTree/index.html:301
msgid "Current News"
msgstr ""
@@ -8672,29 +8700,29 @@ msgstr ""
msgid "Changing the settings below require you to immediately restart the server. Do not change this while under active usage."
msgstr ""
-#: templates/InvenTree/settings/plugin.html:37
+#: templates/InvenTree/settings/plugin.html:35
#: templates/InvenTree/settings/sidebar.html:64
msgid "Plugins"
msgstr ""
-#: templates/InvenTree/settings/plugin.html:43
+#: templates/InvenTree/settings/plugin.html:41
#: templates/js/translated/plugin.js:151
msgid "Install Plugin"
msgstr ""
-#: templates/InvenTree/settings/plugin.html:51
+#: templates/InvenTree/settings/plugin.html:49
msgid "External plugins are not enabled for this InvenTree installation"
msgstr ""
-#: templates/InvenTree/settings/plugin.html:70
+#: templates/InvenTree/settings/plugin.html:64
msgid "Plugin Error Stack"
msgstr ""
-#: templates/InvenTree/settings/plugin.html:79
+#: templates/InvenTree/settings/plugin.html:73
msgid "Stage"
msgstr ""
-#: templates/InvenTree/settings/plugin.html:81
+#: templates/InvenTree/settings/plugin.html:75
#: templates/js/translated/notification.js:75
msgid "Message"
msgstr "Bericht"
@@ -8767,14 +8795,6 @@ msgstr ""
msgid "Commit Message"
msgstr "Bericht indienen"
-#: templates/InvenTree/settings/plugin_settings.html:126
-msgid "Sign Status"
-msgstr ""
-
-#: templates/InvenTree/settings/plugin_settings.html:131
-msgid "Sign Key"
-msgstr ""
-
#: templates/InvenTree/settings/po.html:7
msgid "Purchase Order Settings"
msgstr "Inkooporder Instellingen"
@@ -8870,12 +8890,12 @@ msgid "No category parameter templates found"
msgstr ""
#: templates/InvenTree/settings/settings_staff_js.html:212
-#: templates/js/translated/part.js:1618
+#: templates/js/translated/part.js:1617
msgid "Edit Template"
msgstr ""
#: templates/InvenTree/settings/settings_staff_js.html:213
-#: templates/js/translated/part.js:1619
+#: templates/js/translated/part.js:1618
msgid "Delete Template"
msgstr ""
@@ -8913,7 +8933,7 @@ msgid "Home Page"
msgstr "Startpagina"
#: templates/InvenTree/settings/sidebar.html:15
-#: templates/js/translated/tables.js:575 templates/navbar.html:107
+#: templates/js/translated/tables.js:551 templates/navbar.html:107
#: templates/search.html:8 templates/search_form.html:6
#: templates/search_form.html:7
msgid "Search"
@@ -8990,6 +9010,7 @@ msgid "Unverified"
msgstr ""
#: templates/InvenTree/settings/user.html:80
+#: templates/js/translated/company.js:984
msgid "Primary"
msgstr ""
@@ -9204,44 +9225,48 @@ msgstr ""
msgid "Update Available"
msgstr ""
-#: templates/about.html:42
+#: templates/about.html:43
+msgid "Commit Branch"
+msgstr ""
+
+#: templates/about.html:49
msgid "InvenTree Documentation"
msgstr ""
-#: templates/about.html:47
+#: templates/about.html:54
msgid "API Version"
msgstr ""
-#: templates/about.html:52
+#: templates/about.html:59
msgid "Python Version"
msgstr ""
-#: templates/about.html:57
+#: templates/about.html:64
msgid "Django Version"
msgstr ""
-#: templates/about.html:62
+#: templates/about.html:69
msgid "View Code on GitHub"
msgstr ""
-#: templates/about.html:67
+#: templates/about.html:74
msgid "Credits"
msgstr ""
-#: templates/about.html:72
+#: templates/about.html:79
msgid "Mobile App"
msgstr ""
-#: templates/about.html:77
+#: templates/about.html:84
msgid "Submit Bug Report"
msgstr ""
-#: templates/about.html:84 templates/clip.html:4
+#: templates/about.html:91 templates/clip.html:4
#: templates/js/translated/helpers.js:585
msgid "copy to clipboard"
msgstr ""
-#: templates/about.html:84
+#: templates/about.html:91
msgid "copy version information"
msgstr ""
@@ -9435,14 +9460,6 @@ msgstr ""
msgid "Add Attachment"
msgstr ""
-#: templates/attachment_table.html:11
-msgid "Delete selected attachments"
-msgstr ""
-
-#: templates/attachment_table.html:12 templates/js/translated/attachment.js:129
-msgid "Delete Attachments"
-msgstr ""
-
#: templates/barcode_data.html:5
msgid "Barcode Identifier"
msgstr ""
@@ -9487,7 +9504,7 @@ msgid "The following parts are low on required stock"
msgstr "De volgende onderdelen hebben een lage vereiste voorraad"
#: templates/email/build_order_required_stock.html:18
-#: templates/js/translated/bom.js:1633
+#: templates/js/translated/bom.js:1653 templates/js/translated/build.js:2485
msgid "Required Quantity"
msgstr "Vereiste Hoeveelheid"
@@ -9501,7 +9518,7 @@ msgid "Click on the following link to view this part"
msgstr ""
#: templates/email/low_stock_notification.html:18
-#: templates/js/translated/part.js:3140
+#: templates/js/translated/part.js:3125
msgid "Minimum Quantity"
msgstr ""
@@ -9573,23 +9590,35 @@ msgstr ""
msgid "All selected attachments will be deleted"
msgstr ""
-#: templates/js/translated/attachment.js:255
+#: templates/js/translated/attachment.js:129
+msgid "Delete Attachments"
+msgstr ""
+
+#: templates/js/translated/attachment.js:205
+msgid "Delete attachments"
+msgstr ""
+
+#: templates/js/translated/attachment.js:253
+msgid "Attachment actions"
+msgstr ""
+
+#: templates/js/translated/attachment.js:275
msgid "No attachments found"
msgstr ""
-#: templates/js/translated/attachment.js:285
+#: templates/js/translated/attachment.js:305
msgid "Edit Attachment"
msgstr ""
-#: templates/js/translated/attachment.js:326
+#: templates/js/translated/attachment.js:336
msgid "Upload Date"
msgstr ""
-#: templates/js/translated/attachment.js:346
+#: templates/js/translated/attachment.js:356
msgid "Edit attachment"
msgstr ""
-#: templates/js/translated/attachment.js:354
+#: templates/js/translated/attachment.js:364
msgid "Delete attachment"
msgstr ""
@@ -9646,7 +9675,7 @@ msgstr ""
msgid "Unlink"
msgstr ""
-#: templates/js/translated/barcode.js:550 templates/js/translated/stock.js:1118
+#: templates/js/translated/barcode.js:550 templates/js/translated/stock.js:1117
msgid "Remove stock item"
msgstr ""
@@ -9704,775 +9733,869 @@ msgstr ""
msgid "Barcode does not match a valid location"
msgstr ""
-#: templates/js/translated/bom.js:77
+#: templates/js/translated/bom.js:78
msgid "Create BOM Item"
msgstr ""
-#: templates/js/translated/bom.js:131
+#: templates/js/translated/bom.js:132
msgid "Display row data"
msgstr ""
-#: templates/js/translated/bom.js:187
+#: templates/js/translated/bom.js:188
msgid "Row Data"
msgstr ""
-#: templates/js/translated/bom.js:188 templates/js/translated/bom.js:699
+#: templates/js/translated/bom.js:189 templates/js/translated/bom.js:700
#: templates/js/translated/modals.js:71 templates/js/translated/modals.js:622
#: templates/js/translated/modals.js:746 templates/js/translated/modals.js:1054
-#: templates/js/translated/purchase_order.js:791 templates/modals.html:15
+#: templates/js/translated/purchase_order.js:802 templates/modals.html:15
#: templates/modals.html:27 templates/modals.html:39 templates/modals.html:50
msgid "Close"
msgstr "Sluit"
-#: templates/js/translated/bom.js:305
+#: templates/js/translated/bom.js:306
msgid "Download BOM Template"
msgstr ""
-#: templates/js/translated/bom.js:350
+#: templates/js/translated/bom.js:351
msgid "Multi Level BOM"
msgstr ""
-#: templates/js/translated/bom.js:351
+#: templates/js/translated/bom.js:352
msgid "Include BOM data for subassemblies"
msgstr ""
-#: templates/js/translated/bom.js:356
+#: templates/js/translated/bom.js:357
msgid "Levels"
msgstr ""
-#: templates/js/translated/bom.js:357
+#: templates/js/translated/bom.js:358
msgid "Select maximum number of BOM levels to export (0 = all levels)"
msgstr ""
-#: templates/js/translated/bom.js:364
+#: templates/js/translated/bom.js:365
msgid "Include Alternative Parts"
msgstr ""
-#: templates/js/translated/bom.js:365
+#: templates/js/translated/bom.js:366
msgid "Include alternative parts in exported BOM"
msgstr ""
-#: templates/js/translated/bom.js:370
+#: templates/js/translated/bom.js:371
msgid "Include Parameter Data"
msgstr ""
-#: templates/js/translated/bom.js:371
+#: templates/js/translated/bom.js:372
msgid "Include part parameter data in exported BOM"
msgstr ""
-#: templates/js/translated/bom.js:376
+#: templates/js/translated/bom.js:377
msgid "Include Stock Data"
msgstr ""
-#: templates/js/translated/bom.js:377
+#: templates/js/translated/bom.js:378
msgid "Include part stock data in exported BOM"
msgstr ""
-#: templates/js/translated/bom.js:382
+#: templates/js/translated/bom.js:383
msgid "Include Manufacturer Data"
msgstr "Voeg Fabrikantgegevens toe"
-#: templates/js/translated/bom.js:383
+#: templates/js/translated/bom.js:384
msgid "Include part manufacturer data in exported BOM"
msgstr "Voeg onderdeelfabrikantgegevens toe aan geëxporteerde stuklijst"
-#: templates/js/translated/bom.js:388
+#: templates/js/translated/bom.js:389
msgid "Include Supplier Data"
msgstr ""
-#: templates/js/translated/bom.js:389
+#: templates/js/translated/bom.js:390
msgid "Include part supplier data in exported BOM"
msgstr ""
-#: templates/js/translated/bom.js:394
+#: templates/js/translated/bom.js:395
msgid "Include Pricing Data"
msgstr ""
-#: templates/js/translated/bom.js:395
+#: templates/js/translated/bom.js:396
msgid "Include part pricing data in exported BOM"
msgstr ""
-#: templates/js/translated/bom.js:590
+#: templates/js/translated/bom.js:591
msgid "Remove substitute part"
msgstr ""
-#: templates/js/translated/bom.js:644
+#: templates/js/translated/bom.js:645
msgid "Select and add a new substitute part using the input below"
msgstr ""
-#: templates/js/translated/bom.js:655
+#: templates/js/translated/bom.js:656
msgid "Are you sure you wish to remove this substitute part link?"
msgstr ""
-#: templates/js/translated/bom.js:661
+#: templates/js/translated/bom.js:662
msgid "Remove Substitute Part"
msgstr ""
-#: templates/js/translated/bom.js:700
+#: templates/js/translated/bom.js:701
msgid "Add Substitute"
msgstr ""
-#: templates/js/translated/bom.js:701
+#: templates/js/translated/bom.js:702
msgid "Edit BOM Item Substitutes"
msgstr ""
-#: templates/js/translated/bom.js:763
+#: templates/js/translated/bom.js:764
msgid "All selected BOM items will be deleted"
msgstr ""
-#: templates/js/translated/bom.js:779
+#: templates/js/translated/bom.js:780
msgid "Delete selected BOM items?"
msgstr ""
-#: templates/js/translated/bom.js:906
+#: templates/js/translated/bom.js:826
+msgid "Delete items"
+msgstr ""
+
+#: templates/js/translated/bom.js:924
msgid "Load BOM for subassembly"
msgstr ""
-#: templates/js/translated/bom.js:916
+#: templates/js/translated/bom.js:934
msgid "Substitutes Available"
msgstr ""
-#: templates/js/translated/bom.js:920 templates/js/translated/build.js:2090
+#: templates/js/translated/bom.js:938 templates/js/translated/build.js:2429
msgid "Variant stock allowed"
msgstr ""
-#: templates/js/translated/bom.js:984
+#: templates/js/translated/bom.js:1002
msgid "Substitutes"
msgstr ""
-#: templates/js/translated/bom.js:1104
+#: templates/js/translated/bom.js:1122
msgid "BOM pricing is complete"
msgstr ""
-#: templates/js/translated/bom.js:1109
+#: templates/js/translated/bom.js:1127
msgid "BOM pricing is incomplete"
msgstr ""
-#: templates/js/translated/bom.js:1116
+#: templates/js/translated/bom.js:1134
msgid "No pricing available"
msgstr ""
-#: templates/js/translated/bom.js:1147 templates/js/translated/build.js:2173
-#: templates/js/translated/sales_order.js:1887
+#: templates/js/translated/bom.js:1165 templates/js/translated/build.js:2523
+#: templates/js/translated/sales_order.js:1899
msgid "No Stock Available"
msgstr "Geen Voorraad Aanwezig"
-#: templates/js/translated/bom.js:1152 templates/js/translated/build.js:2177
+#: templates/js/translated/bom.js:1170 templates/js/translated/build.js:2527
msgid "Includes variant and substitute stock"
msgstr ""
-#: templates/js/translated/bom.js:1154 templates/js/translated/build.js:2179
-#: templates/js/translated/part.js:1230
+#: templates/js/translated/bom.js:1172 templates/js/translated/build.js:2529
+#: templates/js/translated/part.js:1229
msgid "Includes variant stock"
msgstr ""
-#: templates/js/translated/bom.js:1156 templates/js/translated/build.js:2181
+#: templates/js/translated/bom.js:1174 templates/js/translated/build.js:2531
msgid "Includes substitute stock"
msgstr ""
-#: templates/js/translated/bom.js:1184 templates/js/translated/build.js:2164
-#: templates/js/translated/build.js:2255
+#: templates/js/translated/bom.js:1204 templates/js/translated/build.js:2514
msgid "Consumable item"
msgstr ""
-#: templates/js/translated/bom.js:1244
+#: templates/js/translated/bom.js:1264
msgid "Validate BOM Item"
msgstr ""
-#: templates/js/translated/bom.js:1246
+#: templates/js/translated/bom.js:1266
msgid "This line has been validated"
msgstr ""
-#: templates/js/translated/bom.js:1248
+#: templates/js/translated/bom.js:1268
msgid "Edit substitute parts"
msgstr ""
-#: templates/js/translated/bom.js:1250 templates/js/translated/bom.js:1445
+#: templates/js/translated/bom.js:1270 templates/js/translated/bom.js:1465
msgid "Edit BOM Item"
msgstr ""
-#: templates/js/translated/bom.js:1252
+#: templates/js/translated/bom.js:1272
msgid "Delete BOM Item"
msgstr ""
-#: templates/js/translated/bom.js:1272
+#: templates/js/translated/bom.js:1292
msgid "View BOM"
msgstr ""
-#: templates/js/translated/bom.js:1356 templates/js/translated/build.js:1927
+#: templates/js/translated/bom.js:1376
msgid "No BOM items found"
msgstr ""
-#: templates/js/translated/bom.js:1616 templates/js/translated/build.js:2073
+#: templates/js/translated/bom.js:1636 templates/js/translated/build.js:2414
msgid "Required Part"
msgstr ""
-#: templates/js/translated/bom.js:1642
+#: templates/js/translated/bom.js:1662
msgid "Inherited from parent BOM"
msgstr ""
-#: templates/js/translated/build.js:126
+#: templates/js/translated/build.js:136
msgid "Edit Build Order"
msgstr "Bewerk Productieorder"
-#: templates/js/translated/build.js:169
+#: templates/js/translated/build.js:179
msgid "Create Build Order"
msgstr "Maak Productieorder"
-#: templates/js/translated/build.js:202
+#: templates/js/translated/build.js:211
msgid "Cancel Build Order"
msgstr "Annuleer Productieorder"
-#: templates/js/translated/build.js:211
+#: templates/js/translated/build.js:220
msgid "Are you sure you wish to cancel this build?"
msgstr "Weet je zeker dat je de productie wilt annuleren?"
-#: templates/js/translated/build.js:217
+#: templates/js/translated/build.js:226
msgid "Stock items have been allocated to this build order"
msgstr "Voorraadartikelen zijn toegewezen aan deze productieorder"
-#: templates/js/translated/build.js:224
+#: templates/js/translated/build.js:233
msgid "There are incomplete outputs remaining for this build order"
msgstr "Er staat incomplete productie open voor deze productieorder"
-#: templates/js/translated/build.js:276
+#: templates/js/translated/build.js:285
msgid "Build order is ready to be completed"
msgstr "Productieorder is gereed om als voltooid te markeren"
-#: templates/js/translated/build.js:284
+#: templates/js/translated/build.js:293
msgid "This build order cannot be completed as there are incomplete outputs"
msgstr ""
-#: templates/js/translated/build.js:289
+#: templates/js/translated/build.js:298
msgid "Build Order is incomplete"
msgstr "Productieorder is onvolledig"
-#: templates/js/translated/build.js:307
+#: templates/js/translated/build.js:316
msgid "Complete Build Order"
msgstr "Voltooi Productieoorder"
-#: templates/js/translated/build.js:348 templates/js/translated/stock.js:119
-#: templates/js/translated/stock.js:265
+#: templates/js/translated/build.js:357 templates/js/translated/stock.js:118
+#: templates/js/translated/stock.js:264
msgid "Next available serial number"
msgstr ""
-#: templates/js/translated/build.js:350 templates/js/translated/stock.js:121
-#: templates/js/translated/stock.js:267
+#: templates/js/translated/build.js:359 templates/js/translated/stock.js:120
+#: templates/js/translated/stock.js:266
msgid "Latest serial number"
msgstr ""
-#: templates/js/translated/build.js:359
+#: templates/js/translated/build.js:368
msgid "The Bill of Materials contains trackable parts"
msgstr "De stuklijst bevat traceerbare onderdelen"
-#: templates/js/translated/build.js:360
+#: templates/js/translated/build.js:369
msgid "Build outputs must be generated individually"
msgstr "Productieuitvoeren moeten individueel worden gegenereerd"
-#: templates/js/translated/build.js:368
+#: templates/js/translated/build.js:377
msgid "Trackable parts can have serial numbers specified"
msgstr "Traceerbare onderdelen kunnen een serienummer hebben"
-#: templates/js/translated/build.js:369
+#: templates/js/translated/build.js:378
msgid "Enter serial numbers to generate multiple single build outputs"
msgstr "Voer serienummers in om meerdere enkelvoudige productuitvoeren te genereren"
-#: templates/js/translated/build.js:376
+#: templates/js/translated/build.js:385
msgid "Create Build Output"
msgstr ""
-#: templates/js/translated/build.js:407
+#: templates/js/translated/build.js:416
msgid "Allocate stock items to this build output"
msgstr ""
-#: templates/js/translated/build.js:418
-msgid "Unallocate stock from build output"
+#: templates/js/translated/build.js:424
+msgid "Deallocate stock from build output"
msgstr ""
-#: templates/js/translated/build.js:427
+#: templates/js/translated/build.js:433
msgid "Complete build output"
msgstr ""
-#: templates/js/translated/build.js:435
+#: templates/js/translated/build.js:441
msgid "Scrap build output"
msgstr ""
-#: templates/js/translated/build.js:442
+#: templates/js/translated/build.js:448
msgid "Delete build output"
msgstr ""
-#: templates/js/translated/build.js:462
-msgid "Are you sure you wish to unallocate stock items from this build?"
+#: templates/js/translated/build.js:468
+msgid "Are you sure you wish to deallocate the selected stock items from this build?"
msgstr ""
-#: templates/js/translated/build.js:480
-msgid "Unallocate Stock Items"
+#: templates/js/translated/build.js:486
+msgid "Deallocate Stock Items"
msgstr ""
-#: templates/js/translated/build.js:566 templates/js/translated/build.js:690
-#: templates/js/translated/build.js:812
+#: templates/js/translated/build.js:572 templates/js/translated/build.js:696
+#: templates/js/translated/build.js:818
msgid "Select Build Outputs"
msgstr "Selecteer Productieuitvoeren"
-#: templates/js/translated/build.js:567 templates/js/translated/build.js:691
-#: templates/js/translated/build.js:813
+#: templates/js/translated/build.js:573 templates/js/translated/build.js:697
+#: templates/js/translated/build.js:819
msgid "At least one build output must be selected"
msgstr ""
-#: templates/js/translated/build.js:581
+#: templates/js/translated/build.js:587
msgid "Selected build outputs will be marked as complete"
msgstr ""
-#: templates/js/translated/build.js:585 templates/js/translated/build.js:715
-#: templates/js/translated/build.js:835
+#: templates/js/translated/build.js:591 templates/js/translated/build.js:721
+#: templates/js/translated/build.js:841
msgid "Output"
msgstr ""
-#: templates/js/translated/build.js:609
+#: templates/js/translated/build.js:615
msgid "Complete Build Outputs"
msgstr "Voltooi Productieuitvoeren"
-#: templates/js/translated/build.js:706
+#: templates/js/translated/build.js:712
msgid "Selected build outputs will be marked as scrapped"
msgstr ""
-#: templates/js/translated/build.js:708
+#: templates/js/translated/build.js:714
msgid "Scrapped output are marked as rejected"
msgstr ""
-#: templates/js/translated/build.js:709
+#: templates/js/translated/build.js:715
msgid "Allocated stock items will no longer be available"
msgstr ""
-#: templates/js/translated/build.js:710
+#: templates/js/translated/build.js:716
msgid "The completion status of the build order will not be adjusted"
msgstr ""
-#: templates/js/translated/build.js:737
+#: templates/js/translated/build.js:743
msgid "Scrap Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:827
+#: templates/js/translated/build.js:833
msgid "Selected build outputs will be deleted"
msgstr ""
-#: templates/js/translated/build.js:829
+#: templates/js/translated/build.js:835
msgid "Build output data will be permanently deleted"
msgstr ""
-#: templates/js/translated/build.js:830
+#: templates/js/translated/build.js:836
msgid "Allocated stock items will be returned to stock"
msgstr ""
-#: templates/js/translated/build.js:848
+#: templates/js/translated/build.js:854
msgid "Delete Build Outputs"
msgstr "Verwijder Productieuitvoeren"
-#: templates/js/translated/build.js:934
+#: templates/js/translated/build.js:941
msgid "No build order allocations found"
msgstr "Geen productieordertoewijzingen gevonden"
-#: templates/js/translated/build.js:971
+#: templates/js/translated/build.js:970 templates/js/translated/build.js:2270
+msgid "Allocated Quantity"
+msgstr ""
+
+#: templates/js/translated/build.js:984
msgid "Location not specified"
msgstr "Locatie is niet opgegeven"
-#: templates/js/translated/build.js:1047
+#: templates/js/translated/build.js:1006
+msgid "Complete outputs"
+msgstr "Voltooi uitvoeren"
+
+#: templates/js/translated/build.js:1024
+msgid "Scrap outputs"
+msgstr ""
+
+#: templates/js/translated/build.js:1042
+msgid "Delete outputs"
+msgstr "Verwijder uitvoeren"
+
+#: templates/js/translated/build.js:1100
msgid "build output"
msgstr ""
-#: templates/js/translated/build.js:1048
+#: templates/js/translated/build.js:1101
msgid "build outputs"
msgstr ""
-#: templates/js/translated/build.js:1383
+#: templates/js/translated/build.js:1105
+msgid "Build output actions"
+msgstr ""
+
+#: templates/js/translated/build.js:1274
msgid "No active build outputs found"
msgstr "Geen actieve productieuitvoeren gevonden"
-#: templates/js/translated/build.js:1457
-msgid "Allocated Stock"
+#: templates/js/translated/build.js:1329
+msgid "Allocated Lines"
msgstr ""
-#: templates/js/translated/build.js:1464
-msgid "No tracked BOM items for this build"
+#: templates/js/translated/build.js:1343
+msgid "Required Tests"
msgstr ""
-#: templates/js/translated/build.js:1486
-msgid "Completed Tests"
-msgstr ""
-
-#: templates/js/translated/build.js:1491
-msgid "No required tests for this build"
-msgstr ""
-
-#: templates/js/translated/build.js:2032 templates/js/translated/build.js:3056
-#: templates/js/translated/sales_order.js:1632
-msgid "Edit stock allocation"
-msgstr "Voorraadtoewijzing bewerken"
-
-#: templates/js/translated/build.js:2034 templates/js/translated/build.js:3057
-#: templates/js/translated/sales_order.js:1633
-msgid "Delete stock allocation"
-msgstr "Voorraadtoewijzing verwijderen"
-
-#: templates/js/translated/build.js:2050
-msgid "Edit Allocation"
-msgstr ""
-
-#: templates/js/translated/build.js:2060
-msgid "Remove Allocation"
-msgstr ""
-
-#: templates/js/translated/build.js:2086
-msgid "Substitute parts available"
-msgstr ""
-
-#: templates/js/translated/build.js:2122
-msgid "Quantity Per"
-msgstr ""
-
-#: templates/js/translated/build.js:2167
-#: templates/js/translated/sales_order.js:1894
-msgid "Insufficient stock available"
-msgstr "Onvoldoende voorraad beschikbaar"
-
-#: templates/js/translated/build.js:2169
-#: templates/js/translated/sales_order.js:1892
-msgid "Sufficient stock available"
-msgstr "Genoeg voorraad beschikbaar"
-
-#: templates/js/translated/build.js:2263
-#: templates/js/translated/sales_order.js:1993
-msgid "Build stock"
-msgstr "Productie voorraad"
-
-#: templates/js/translated/build.js:2267 templates/stock_table.html:38
-msgid "Order stock"
-msgstr "Voorraad order"
-
-#: templates/js/translated/build.js:2270
-#: templates/js/translated/sales_order.js:1987
-msgid "Allocate stock"
-msgstr "Voorraad toewijzen"
-
-#: templates/js/translated/build.js:2310
-#: templates/js/translated/purchase_order.js:616
-#: templates/js/translated/sales_order.js:1159
+#: templates/js/translated/build.js:1502
+#: templates/js/translated/purchase_order.js:627
+#: templates/js/translated/sales_order.js:1171
msgid "Select Parts"
msgstr "Onderdelen selecteren"
-#: templates/js/translated/build.js:2311
-#: templates/js/translated/sales_order.js:1160
+#: templates/js/translated/build.js:1503
+#: templates/js/translated/sales_order.js:1172
msgid "You must select at least one part to allocate"
msgstr "Er moet op zijn minst één onderdeel toegewezen worden"
-#: templates/js/translated/build.js:2359
-#: templates/js/translated/sales_order.js:1109
+#: templates/js/translated/build.js:1566
+#: templates/js/translated/sales_order.js:1121
msgid "Specify stock allocation quantity"
msgstr "Specificeer voorraadtoewijzingshoeveelheid"
-#: templates/js/translated/build.js:2438
+#: templates/js/translated/build.js:1643
msgid "All Parts Allocated"
msgstr ""
-#: templates/js/translated/build.js:2439
+#: templates/js/translated/build.js:1644
msgid "All selected parts have been fully allocated"
msgstr ""
-#: templates/js/translated/build.js:2453
-#: templates/js/translated/sales_order.js:1174
+#: templates/js/translated/build.js:1658
+#: templates/js/translated/sales_order.js:1186
msgid "Select source location (leave blank to take from all locations)"
msgstr "Selecteer bron locatie (laat het veld leeg om iedere locatie te gebruiken)"
-#: templates/js/translated/build.js:2481
+#: templates/js/translated/build.js:1686
msgid "Allocate Stock Items to Build Order"
msgstr "Voorraadartikelen toewijzen aan Productieorder"
-#: templates/js/translated/build.js:2492
-#: templates/js/translated/sales_order.js:1271
+#: templates/js/translated/build.js:1697
+#: templates/js/translated/sales_order.js:1283
msgid "No matching stock locations"
msgstr "Geen overeenkomende voorraadlocaties"
-#: templates/js/translated/build.js:2565
-#: templates/js/translated/sales_order.js:1348
+#: templates/js/translated/build.js:1770
+#: templates/js/translated/sales_order.js:1360
msgid "No matching stock items"
msgstr "Geen overeenkomende voorraadartikelen"
-#: templates/js/translated/build.js:2662
+#: templates/js/translated/build.js:1867
msgid "Automatic Stock Allocation"
msgstr ""
-#: templates/js/translated/build.js:2663
+#: templates/js/translated/build.js:1868
msgid "Stock items will be automatically allocated to this build order, according to the provided guidelines"
msgstr "Voorraadartikelen zullen automatisch worden toegewezen aan de productieorder volgens de aangegeven richtlijnen"
-#: templates/js/translated/build.js:2665
+#: templates/js/translated/build.js:1870
msgid "If a location is specified, stock will only be allocated from that location"
msgstr ""
-#: templates/js/translated/build.js:2666
+#: templates/js/translated/build.js:1871
msgid "If stock is considered interchangeable, it will be allocated from the first location it is found"
msgstr ""
-#: templates/js/translated/build.js:2667
+#: templates/js/translated/build.js:1872
msgid "If substitute stock is allowed, it will be used where stock of the primary part cannot be found"
msgstr ""
-#: templates/js/translated/build.js:2694
+#: templates/js/translated/build.js:1899
msgid "Allocate Stock Items"
msgstr ""
-#: templates/js/translated/build.js:2800
+#: templates/js/translated/build.js:2005
msgid "No builds matching query"
msgstr ""
-#: templates/js/translated/build.js:2835 templates/js/translated/part.js:2208
-#: templates/js/translated/part.js:2692 templates/js/translated/stock.js:1759
-#: templates/js/translated/stock.js:2458
+#: templates/js/translated/build.js:2040 templates/js/translated/build.js:2408
+#: templates/js/translated/part.js:2284 templates/js/translated/part.js:2677
+#: templates/js/translated/stock.js:1899 templates/js/translated/stock.js:2589
msgid "Select"
msgstr ""
-#: templates/js/translated/build.js:2849
+#: templates/js/translated/build.js:2054
msgid "Build order is overdue"
msgstr "Productieorder is achterstallig"
-#: templates/js/translated/build.js:2883
+#: templates/js/translated/build.js:2100
msgid "Progress"
msgstr ""
-#: templates/js/translated/build.js:2919 templates/js/translated/stock.js:2779
+#: templates/js/translated/build.js:2136 templates/js/translated/stock.js:2910
msgid "No user information"
msgstr ""
-#: templates/js/translated/build.js:2934
+#: templates/js/translated/build.js:2151
msgid "group"
msgstr ""
-#: templates/js/translated/build.js:3033
-msgid "No parts allocated for"
+#: templates/js/translated/build.js:2315
+#: templates/js/translated/sales_order.js:1644
+msgid "Edit stock allocation"
+msgstr "Voorraadtoewijzing bewerken"
+
+#: templates/js/translated/build.js:2316
+#: templates/js/translated/sales_order.js:1645
+msgid "Delete stock allocation"
+msgstr "Voorraadtoewijzing verwijderen"
+
+#: templates/js/translated/build.js:2331
+msgid "Edit Allocation"
msgstr ""
-#: templates/js/translated/company.js:87
+#: templates/js/translated/build.js:2343
+msgid "Remove Allocation"
+msgstr ""
+
+#: templates/js/translated/build.js:2384
+msgid "build line"
+msgstr ""
+
+#: templates/js/translated/build.js:2385
+msgid "build lines"
+msgstr ""
+
+#: templates/js/translated/build.js:2403
+msgid "No build lines found"
+msgstr ""
+
+#: templates/js/translated/build.js:2433 templates/js/translated/part.js:767
+#: templates/js/translated/part.js:1175
+msgid "Trackable part"
+msgstr ""
+
+#: templates/js/translated/build.js:2468
+msgid "Unit Quantity"
+msgstr ""
+
+#: templates/js/translated/build.js:2517
+#: templates/js/translated/sales_order.js:1906
+msgid "Insufficient stock available"
+msgstr "Onvoldoende voorraad beschikbaar"
+
+#: templates/js/translated/build.js:2519
+#: templates/js/translated/sales_order.js:1904
+msgid "Sufficient stock available"
+msgstr "Genoeg voorraad beschikbaar"
+
+#: templates/js/translated/build.js:2566
+msgid "Consumable Item"
+msgstr ""
+
+#: templates/js/translated/build.js:2571
+msgid "Tracked item"
+msgstr ""
+
+#: templates/js/translated/build.js:2578
+#: templates/js/translated/sales_order.js:2005
+msgid "Build stock"
+msgstr "Productie voorraad"
+
+#: templates/js/translated/build.js:2583 templates/js/translated/stock.js:1779
+msgid "Order stock"
+msgstr "Voorraad order"
+
+#: templates/js/translated/build.js:2587
+#: templates/js/translated/sales_order.js:1999
+msgid "Allocate stock"
+msgstr "Voorraad toewijzen"
+
+#: templates/js/translated/build.js:2591
+msgid "Remove stock allocation"
+msgstr ""
+
+#: templates/js/translated/company.js:97
msgid "Add Manufacturer"
msgstr "Fabrikant toevoegen"
-#: templates/js/translated/company.js:100
-#: templates/js/translated/company.js:202
+#: templates/js/translated/company.js:110
+#: templates/js/translated/company.js:212
msgid "Add Manufacturer Part"
msgstr "Fabrikantonderdeel toevoegen"
-#: templates/js/translated/company.js:121
+#: templates/js/translated/company.js:131
msgid "Edit Manufacturer Part"
msgstr "Fabrikantonderdeel bewerken"
-#: templates/js/translated/company.js:190
-#: templates/js/translated/purchase_order.js:94
+#: templates/js/translated/company.js:200
+#: templates/js/translated/purchase_order.js:93
msgid "Add Supplier"
msgstr "Leverancier Toevoegen"
-#: templates/js/translated/company.js:232
-#: templates/js/translated/purchase_order.js:338
+#: templates/js/translated/company.js:242
+#: templates/js/translated/purchase_order.js:349
msgid "Add Supplier Part"
msgstr "Leveranciersonderdeel Toevoegen"
-#: templates/js/translated/company.js:333
+#: templates/js/translated/company.js:343
msgid "All selected supplier parts will be deleted"
msgstr ""
-#: templates/js/translated/company.js:349
+#: templates/js/translated/company.js:359
msgid "Delete Supplier Parts"
msgstr ""
-#: templates/js/translated/company.js:457
+#: templates/js/translated/company.js:464
msgid "Add new Company"
msgstr ""
-#: templates/js/translated/company.js:528
+#: templates/js/translated/company.js:535
msgid "Parts Supplied"
msgstr ""
-#: templates/js/translated/company.js:537
+#: templates/js/translated/company.js:544
msgid "Parts Manufactured"
msgstr "Gefabriceerde Onderdelen"
-#: templates/js/translated/company.js:552
+#: templates/js/translated/company.js:559
msgid "No company information found"
msgstr ""
-#: templates/js/translated/company.js:601
+#: templates/js/translated/company.js:608
msgid "Create New Contact"
msgstr ""
-#: templates/js/translated/company.js:617
-#: templates/js/translated/company.js:740
+#: templates/js/translated/company.js:624
+#: templates/js/translated/company.js:747
msgid "Edit Contact"
msgstr ""
-#: templates/js/translated/company.js:654
+#: templates/js/translated/company.js:661
msgid "All selected contacts will be deleted"
msgstr ""
-#: templates/js/translated/company.js:660
-#: templates/js/translated/company.js:724
+#: templates/js/translated/company.js:667
+#: templates/js/translated/company.js:731
msgid "Role"
msgstr ""
-#: templates/js/translated/company.js:668
+#: templates/js/translated/company.js:675
msgid "Delete Contacts"
msgstr ""
-#: templates/js/translated/company.js:699
+#: templates/js/translated/company.js:706
msgid "No contacts found"
msgstr ""
-#: templates/js/translated/company.js:712
+#: templates/js/translated/company.js:719
msgid "Phone Number"
msgstr ""
-#: templates/js/translated/company.js:718
+#: templates/js/translated/company.js:725
msgid "Email Address"
msgstr ""
-#: templates/js/translated/company.js:744
+#: templates/js/translated/company.js:751
msgid "Delete Contact"
msgstr ""
-#: templates/js/translated/company.js:818
+#: templates/js/translated/company.js:886
+msgid "Create New Address"
+msgstr ""
+
+#: templates/js/translated/company.js:901
+#: templates/js/translated/company.js:1066
+msgid "Edit Address"
+msgstr ""
+
+#: templates/js/translated/company.js:936
+msgid "All selected addresses will be deleted"
+msgstr ""
+
+#: templates/js/translated/company.js:950
+msgid "Delete Addresses"
+msgstr ""
+
+#: templates/js/translated/company.js:977
+msgid "No addresses found"
+msgstr ""
+
+#: templates/js/translated/company.js:1020
+msgid "Postal city"
+msgstr ""
+
+#: templates/js/translated/company.js:1026
+msgid "State/province"
+msgstr ""
+
+#: templates/js/translated/company.js:1038
+msgid "Courier notes"
+msgstr ""
+
+#: templates/js/translated/company.js:1044
+msgid "Internal notes"
+msgstr ""
+
+#: templates/js/translated/company.js:1070
+msgid "Delete Address"
+msgstr ""
+
+#: templates/js/translated/company.js:1143
msgid "All selected manufacturer parts will be deleted"
msgstr ""
-#: templates/js/translated/company.js:833
+#: templates/js/translated/company.js:1158
msgid "Delete Manufacturer Parts"
msgstr "Verwijder Fabrikantenonderdelen"
-#: templates/js/translated/company.js:867
+#: templates/js/translated/company.js:1192
msgid "All selected parameters will be deleted"
msgstr ""
-#: templates/js/translated/company.js:881
+#: templates/js/translated/company.js:1206
msgid "Delete Parameters"
msgstr "Parameter verwijderen"
-#: templates/js/translated/company.js:917
+#: templates/js/translated/company.js:1222
+#: templates/js/translated/company.js:1510 templates/js/translated/part.js:2213
+msgid "Order parts"
+msgstr "Bestel onderdelen"
+
+#: templates/js/translated/company.js:1239
+msgid "Delete manufacturer parts"
+msgstr "Fabrikantonderdeel verwijderen"
+
+#: templates/js/translated/company.js:1271
+msgid "Manufacturer part actions"
+msgstr ""
+
+#: templates/js/translated/company.js:1290
msgid "No manufacturer parts found"
msgstr "Geen fabrikantenonderdelen gevonden"
-#: templates/js/translated/company.js:937
-#: templates/js/translated/company.js:1177 templates/js/translated/part.js:776
-#: templates/js/translated/part.js:1184
+#: templates/js/translated/company.js:1310
+#: templates/js/translated/company.js:1598 templates/js/translated/part.js:775
+#: templates/js/translated/part.js:1183
msgid "Template part"
msgstr ""
-#: templates/js/translated/company.js:941
-#: templates/js/translated/company.js:1181 templates/js/translated/part.js:780
-#: templates/js/translated/part.js:1188
+#: templates/js/translated/company.js:1314
+#: templates/js/translated/company.js:1602 templates/js/translated/part.js:779
+#: templates/js/translated/part.js:1187
msgid "Assembled part"
msgstr "Samengesteld onderdeel"
-#: templates/js/translated/company.js:1061 templates/js/translated/part.js:1437
+#: templates/js/translated/company.js:1434 templates/js/translated/part.js:1436
msgid "No parameters found"
msgstr "Geen parameters gevonden"
-#: templates/js/translated/company.js:1096 templates/js/translated/part.js:1500
+#: templates/js/translated/company.js:1469 templates/js/translated/part.js:1499
msgid "Edit parameter"
msgstr "Parameter bewerken"
-#: templates/js/translated/company.js:1097 templates/js/translated/part.js:1501
+#: templates/js/translated/company.js:1470 templates/js/translated/part.js:1500
msgid "Delete parameter"
msgstr "Parameter verwijderen"
-#: templates/js/translated/company.js:1114 templates/js/translated/part.js:1407
+#: templates/js/translated/company.js:1487 templates/js/translated/part.js:1406
msgid "Edit Parameter"
msgstr "Parameter bewerken"
-#: templates/js/translated/company.js:1123 templates/js/translated/part.js:1522
+#: templates/js/translated/company.js:1496 templates/js/translated/part.js:1521
msgid "Delete Parameter"
msgstr "Parameter verwijderen"
-#: templates/js/translated/company.js:1156
+#: templates/js/translated/company.js:1527
+msgid "Delete supplier parts"
+msgstr "Verwijder leveranciersonderdelen"
+
+#: templates/js/translated/company.js:1577
msgid "No supplier parts found"
msgstr ""
-#: templates/js/translated/company.js:1274
+#: templates/js/translated/company.js:1695
msgid "Base Units"
msgstr ""
-#: templates/js/translated/company.js:1304
+#: templates/js/translated/company.js:1725
msgid "Availability"
msgstr ""
-#: templates/js/translated/company.js:1335
+#: templates/js/translated/company.js:1756
msgid "Edit supplier part"
msgstr ""
-#: templates/js/translated/company.js:1336
+#: templates/js/translated/company.js:1757
msgid "Delete supplier part"
msgstr ""
-#: templates/js/translated/company.js:1389
+#: templates/js/translated/company.js:1810
#: templates/js/translated/pricing.js:694
msgid "Delete Price Break"
msgstr ""
-#: templates/js/translated/company.js:1399
+#: templates/js/translated/company.js:1820
#: templates/js/translated/pricing.js:712
msgid "Edit Price Break"
msgstr ""
-#: templates/js/translated/company.js:1414
+#: templates/js/translated/company.js:1835
msgid "No price break information found"
msgstr ""
-#: templates/js/translated/company.js:1443
+#: templates/js/translated/company.js:1864
msgid "Last updated"
msgstr "Laatst bijgewerkt"
-#: templates/js/translated/company.js:1450
+#: templates/js/translated/company.js:1871
msgid "Edit price break"
msgstr ""
-#: templates/js/translated/company.js:1451
+#: templates/js/translated/company.js:1872
msgid "Delete price break"
msgstr ""
-#: templates/js/translated/filters.js:186
-#: templates/js/translated/filters.js:550
+#: templates/js/translated/filters.js:187
+#: templates/js/translated/filters.js:673
msgid "true"
msgstr ""
-#: templates/js/translated/filters.js:190
-#: templates/js/translated/filters.js:551
+#: templates/js/translated/filters.js:191
+#: templates/js/translated/filters.js:674
msgid "false"
msgstr ""
-#: templates/js/translated/filters.js:214
+#: templates/js/translated/filters.js:215
msgid "Select filter"
msgstr ""
-#: templates/js/translated/filters.js:328
+#: templates/js/translated/filters.js:438
msgid "Print Labels"
msgstr ""
-#: templates/js/translated/filters.js:332
+#: templates/js/translated/filters.js:442
msgid "Print Reports"
msgstr ""
-#: templates/js/translated/filters.js:344
+#: templates/js/translated/filters.js:454
msgid "Download table data"
msgstr ""
-#: templates/js/translated/filters.js:351
+#: templates/js/translated/filters.js:461
msgid "Reload table data"
msgstr ""
-#: templates/js/translated/filters.js:360
+#: templates/js/translated/filters.js:470
msgid "Add new filter"
msgstr ""
-#: templates/js/translated/filters.js:368
+#: templates/js/translated/filters.js:478
msgid "Clear all filters"
msgstr ""
-#: templates/js/translated/filters.js:460
+#: templates/js/translated/filters.js:583
msgid "Create filter"
msgstr ""
@@ -10497,6 +10620,12 @@ msgstr ""
msgid "View operation not allowed"
msgstr ""
+#: templates/js/translated/forms.js:506 templates/js/translated/helpers.js:105
+#: templates/js/translated/part.js:369 templates/js/translated/pricing.js:629
+#: templates/js/translated/stock.js:215 users/models.py:253
+msgid "Delete"
+msgstr "Verwijderen"
+
#: templates/js/translated/forms.js:752
msgid "Keep this form open"
msgstr ""
@@ -10514,23 +10643,23 @@ msgstr ""
msgid "No results found"
msgstr ""
-#: templates/js/translated/forms.js:2071 templates/js/translated/search.js:281
+#: templates/js/translated/forms.js:2071 templates/js/translated/search.js:239
msgid "Searching"
msgstr ""
-#: templates/js/translated/forms.js:2276
+#: templates/js/translated/forms.js:2285
msgid "Clear input"
msgstr ""
-#: templates/js/translated/forms.js:2733
+#: templates/js/translated/forms.js:2742
msgid "File Column"
msgstr ""
-#: templates/js/translated/forms.js:2733
+#: templates/js/translated/forms.js:2742
msgid "Field Name"
msgstr ""
-#: templates/js/translated/forms.js:2745
+#: templates/js/translated/forms.js:2754
msgid "Select Columns"
msgstr ""
@@ -10550,6 +10679,14 @@ msgstr ""
msgid "False"
msgstr ""
+#: templates/js/translated/index.js:99
+msgid "No parts required for builds"
+msgstr ""
+
+#: templates/js/translated/index.js:125
+msgid "Allocated Stock"
+msgstr ""
+
#: templates/js/translated/label.js:58
msgid "Select Printer"
msgstr ""
@@ -10651,7 +10788,7 @@ msgstr ""
#: templates/js/translated/news.js:38
#: templates/js/translated/notification.js:45
-#: templates/js/translated/part.js:1577
+#: templates/js/translated/part.js:1576
msgid "ID"
msgstr ""
@@ -10700,7 +10837,7 @@ msgid "Delete Line"
msgstr "Verwijder Regel"
#: templates/js/translated/order.js:281
-#: templates/js/translated/purchase_order.js:1958
+#: templates/js/translated/purchase_order.js:1968
msgid "No line items found"
msgstr "Geen artikelen gevonden"
@@ -10716,363 +10853,355 @@ msgstr "Bewerk regel"
msgid "Delete line"
msgstr "Verwijder regel"
-#: templates/js/translated/part.js:91
+#: templates/js/translated/part.js:90
msgid "Part Attributes"
msgstr ""
-#: templates/js/translated/part.js:95
+#: templates/js/translated/part.js:94
msgid "Part Creation Options"
msgstr ""
-#: templates/js/translated/part.js:99
+#: templates/js/translated/part.js:98
msgid "Part Duplication Options"
msgstr ""
-#: templates/js/translated/part.js:122
+#: templates/js/translated/part.js:121
msgid "Add Part Category"
msgstr ""
-#: templates/js/translated/part.js:294
+#: templates/js/translated/part.js:293
msgid "Parent part category"
msgstr ""
-#: templates/js/translated/part.js:310 templates/js/translated/stock.js:147
+#: templates/js/translated/part.js:309 templates/js/translated/stock.js:146
msgid "Icon (optional) - Explore all available icons on"
msgstr ""
-#: templates/js/translated/part.js:330
+#: templates/js/translated/part.js:329
msgid "Create Part Category"
msgstr ""
-#: templates/js/translated/part.js:333
+#: templates/js/translated/part.js:332
msgid "Create new category after this one"
msgstr ""
-#: templates/js/translated/part.js:334
+#: templates/js/translated/part.js:333
msgid "Part category created"
msgstr ""
-#: templates/js/translated/part.js:348
+#: templates/js/translated/part.js:347
msgid "Edit Part Category"
msgstr ""
-#: templates/js/translated/part.js:361
+#: templates/js/translated/part.js:360
msgid "Are you sure you want to delete this part category?"
msgstr ""
-#: templates/js/translated/part.js:366
+#: templates/js/translated/part.js:365
msgid "Move to parent category"
msgstr ""
-#: templates/js/translated/part.js:375
+#: templates/js/translated/part.js:374
msgid "Delete Part Category"
msgstr ""
-#: templates/js/translated/part.js:379
+#: templates/js/translated/part.js:378
msgid "Action for parts in this category"
msgstr ""
-#: templates/js/translated/part.js:384
+#: templates/js/translated/part.js:383
msgid "Action for child categories"
msgstr ""
-#: templates/js/translated/part.js:408
+#: templates/js/translated/part.js:407
msgid "Create Part"
msgstr ""
-#: templates/js/translated/part.js:410
+#: templates/js/translated/part.js:409
msgid "Create another part after this one"
msgstr ""
-#: templates/js/translated/part.js:411
+#: templates/js/translated/part.js:410
msgid "Part created successfully"
msgstr ""
-#: templates/js/translated/part.js:439
+#: templates/js/translated/part.js:438
msgid "Edit Part"
msgstr ""
-#: templates/js/translated/part.js:441
+#: templates/js/translated/part.js:440
msgid "Part edited"
msgstr ""
-#: templates/js/translated/part.js:452
+#: templates/js/translated/part.js:451
msgid "Create Part Variant"
msgstr ""
-#: templates/js/translated/part.js:509
+#: templates/js/translated/part.js:508
msgid "Active Part"
msgstr ""
-#: templates/js/translated/part.js:510
+#: templates/js/translated/part.js:509
msgid "Part cannot be deleted as it is currently active"
msgstr ""
-#: templates/js/translated/part.js:524
+#: templates/js/translated/part.js:523
msgid "Deleting this part cannot be reversed"
msgstr ""
-#: templates/js/translated/part.js:526
+#: templates/js/translated/part.js:525
msgid "Any stock items for this part will be deleted"
msgstr ""
-#: templates/js/translated/part.js:527
+#: templates/js/translated/part.js:526
msgid "This part will be removed from any Bills of Material"
msgstr ""
-#: templates/js/translated/part.js:528
+#: templates/js/translated/part.js:527
msgid "All manufacturer and supplier information for this part will be deleted"
msgstr ""
-#: templates/js/translated/part.js:535
+#: templates/js/translated/part.js:534
msgid "Delete Part"
msgstr ""
-#: templates/js/translated/part.js:571
+#: templates/js/translated/part.js:570
msgid "You are subscribed to notifications for this item"
msgstr ""
-#: templates/js/translated/part.js:573
+#: templates/js/translated/part.js:572
msgid "You have subscribed to notifications for this item"
msgstr ""
-#: templates/js/translated/part.js:578
+#: templates/js/translated/part.js:577
msgid "Subscribe to notifications for this item"
msgstr ""
-#: templates/js/translated/part.js:580
+#: templates/js/translated/part.js:579
msgid "You have unsubscribed to notifications for this item"
msgstr ""
-#: templates/js/translated/part.js:597
+#: templates/js/translated/part.js:596
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:607
+#: templates/js/translated/part.js:606
msgid "Validate Bill of Materials"
msgstr ""
-#: templates/js/translated/part.js:610
+#: templates/js/translated/part.js:609
msgid "Validated Bill of Materials"
msgstr ""
-#: templates/js/translated/part.js:635
+#: templates/js/translated/part.js:634
msgid "Copy Bill of Materials"
msgstr ""
-#: templates/js/translated/part.js:663
-#: templates/js/translated/table_filters.js:660
+#: templates/js/translated/part.js:662
+#: templates/js/translated/table_filters.js:682
msgid "Low stock"
msgstr ""
-#: templates/js/translated/part.js:666
+#: templates/js/translated/part.js:665
msgid "No stock available"
msgstr ""
-#: templates/js/translated/part.js:726
+#: templates/js/translated/part.js:725
msgid "Demand"
msgstr ""
-#: templates/js/translated/part.js:749
+#: templates/js/translated/part.js:748
msgid "Unit"
msgstr ""
-#: templates/js/translated/part.js:768 templates/js/translated/part.js:1176
-msgid "Trackable part"
-msgstr ""
-
-#: templates/js/translated/part.js:772 templates/js/translated/part.js:1180
+#: templates/js/translated/part.js:771 templates/js/translated/part.js:1179
msgid "Virtual part"
msgstr ""
-#: templates/js/translated/part.js:784
+#: templates/js/translated/part.js:783
msgid "Subscribed part"
msgstr ""
-#: templates/js/translated/part.js:788
+#: templates/js/translated/part.js:787
msgid "Salable part"
msgstr ""
-#: templates/js/translated/part.js:863
+#: templates/js/translated/part.js:862
msgid "Schedule generation of a new stocktake report."
msgstr ""
-#: templates/js/translated/part.js:863
+#: templates/js/translated/part.js:862
msgid "Once complete, the stocktake report will be available for download."
msgstr ""
-#: templates/js/translated/part.js:871
+#: templates/js/translated/part.js:870
msgid "Generate Stocktake Report"
msgstr ""
-#: templates/js/translated/part.js:875
+#: templates/js/translated/part.js:874
msgid "Stocktake report scheduled"
msgstr ""
-#: templates/js/translated/part.js:1024
+#: templates/js/translated/part.js:1023
msgid "No stocktake information available"
msgstr ""
-#: templates/js/translated/part.js:1082 templates/js/translated/part.js:1118
+#: templates/js/translated/part.js:1081 templates/js/translated/part.js:1117
msgid "Edit Stocktake Entry"
msgstr ""
-#: templates/js/translated/part.js:1086 templates/js/translated/part.js:1128
+#: templates/js/translated/part.js:1085 templates/js/translated/part.js:1127
msgid "Delete Stocktake Entry"
msgstr ""
-#: templates/js/translated/part.js:1255
+#: templates/js/translated/part.js:1254
msgid "No variants found"
msgstr ""
-#: templates/js/translated/part.js:1572
+#: templates/js/translated/part.js:1571
msgid "No part parameter templates found"
msgstr ""
-#: templates/js/translated/part.js:1635
+#: templates/js/translated/part.js:1634
msgid "Edit Part Parameter Template"
msgstr ""
-#: templates/js/translated/part.js:1647
+#: templates/js/translated/part.js:1646
msgid "Any parameters which reference this template will also be deleted"
msgstr ""
-#: templates/js/translated/part.js:1655
+#: templates/js/translated/part.js:1654
msgid "Delete Part Parameter Template"
msgstr ""
-#: templates/js/translated/part.js:1689
-#: templates/js/translated/purchase_order.js:1618
+#: templates/js/translated/part.js:1688
+#: templates/js/translated/purchase_order.js:1633
msgid "No purchase orders found"
msgstr "Geen inkooporder gevonden"
-#: templates/js/translated/part.js:1832
-#: templates/js/translated/purchase_order.js:2121
-#: templates/js/translated/return_order.js:740
-#: templates/js/translated/sales_order.js:1855
+#: templates/js/translated/part.js:1831
+#: templates/js/translated/purchase_order.js:2131
+#: templates/js/translated/return_order.js:752
+#: templates/js/translated/sales_order.js:1867
msgid "This line item is overdue"
msgstr "Dit artikel is achterstallig"
-#: templates/js/translated/part.js:1877
-#: templates/js/translated/purchase_order.js:2188
+#: templates/js/translated/part.js:1876
+#: templates/js/translated/purchase_order.js:2198
msgid "Receive line item"
msgstr "Artikel ontvangen"
-#: templates/js/translated/part.js:1944
+#: templates/js/translated/part.js:1943
msgid "Delete part relationship"
msgstr ""
-#: templates/js/translated/part.js:1966
+#: templates/js/translated/part.js:1965
msgid "Delete Part Relationship"
msgstr ""
-#: templates/js/translated/part.js:2054 templates/js/translated/part.js:2366
+#: templates/js/translated/part.js:2053 templates/js/translated/part.js:2442
msgid "No parts found"
msgstr ""
-#: templates/js/translated/part.js:2192
-msgid "parts"
-msgstr ""
-
-#: templates/js/translated/part.js:2276
-msgid "No category"
-msgstr ""
-
-#: templates/js/translated/part.js:2390 templates/js/translated/part.js:2611
-#: templates/js/translated/stock.js:2417
-msgid "Display as list"
-msgstr ""
-
-#: templates/js/translated/part.js:2406
-msgid "Display as grid"
-msgstr ""
-
-#: templates/js/translated/part.js:2472
+#: templates/js/translated/part.js:2174
msgid "Set the part category for the selected parts"
msgstr ""
-#: templates/js/translated/part.js:2477
+#: templates/js/translated/part.js:2179
msgid "Set Part Category"
msgstr ""
+#: templates/js/translated/part.js:2204
+msgid "Set category"
+msgstr ""
+
+#: templates/js/translated/part.js:2259
+msgid "parts"
+msgstr ""
+
+#: templates/js/translated/part.js:2352
+msgid "No category"
+msgstr ""
+
+#: templates/js/translated/part.js:2466 templates/js/translated/part.js:2596
+#: templates/js/translated/stock.js:2548
+msgid "Display as list"
+msgstr ""
+
#: templates/js/translated/part.js:2482
-msgid "Select Part Category"
+msgid "Display as grid"
msgstr ""
-#: templates/js/translated/part.js:2495
-msgid "Category is required"
-msgstr ""
-
-#: templates/js/translated/part.js:2595
+#: templates/js/translated/part.js:2580
msgid "No subcategories found"
msgstr ""
-#: templates/js/translated/part.js:2631 templates/js/translated/stock.js:2437
+#: templates/js/translated/part.js:2616 templates/js/translated/stock.js:2568
msgid "Display as tree"
msgstr ""
-#: templates/js/translated/part.js:2711
+#: templates/js/translated/part.js:2696
msgid "Load Subcategories"
msgstr ""
-#: templates/js/translated/part.js:2727
+#: templates/js/translated/part.js:2712
msgid "Subscribed category"
msgstr ""
-#: templates/js/translated/part.js:2807
+#: templates/js/translated/part.js:2792
msgid "No test templates matching query"
msgstr ""
-#: templates/js/translated/part.js:2858 templates/js/translated/stock.js:1380
+#: templates/js/translated/part.js:2843 templates/js/translated/stock.js:1379
msgid "Edit test result"
msgstr ""
-#: templates/js/translated/part.js:2859 templates/js/translated/stock.js:1381
-#: templates/js/translated/stock.js:1643
+#: templates/js/translated/part.js:2844 templates/js/translated/stock.js:1380
+#: templates/js/translated/stock.js:1642
msgid "Delete test result"
msgstr ""
-#: templates/js/translated/part.js:2863
+#: templates/js/translated/part.js:2848
msgid "This test is defined for a parent part"
msgstr ""
-#: templates/js/translated/part.js:2879
+#: templates/js/translated/part.js:2864
msgid "Edit Test Result Template"
msgstr ""
-#: templates/js/translated/part.js:2893
+#: templates/js/translated/part.js:2878
msgid "Delete Test Result Template"
msgstr ""
-#: templates/js/translated/part.js:2972 templates/js/translated/part.js:2973
+#: templates/js/translated/part.js:2957 templates/js/translated/part.js:2958
msgid "No date specified"
msgstr ""
-#: templates/js/translated/part.js:2975
+#: templates/js/translated/part.js:2960
msgid "Specified date is in the past"
msgstr ""
-#: templates/js/translated/part.js:2981
+#: templates/js/translated/part.js:2966
msgid "Speculative"
msgstr ""
-#: templates/js/translated/part.js:3031
+#: templates/js/translated/part.js:3016
msgid "No scheduling information available for this part"
msgstr ""
-#: templates/js/translated/part.js:3037
+#: templates/js/translated/part.js:3022
msgid "Error fetching scheduling information for this part"
msgstr ""
-#: templates/js/translated/part.js:3133
+#: templates/js/translated/part.js:3118
msgid "Scheduled Stock Quantities"
msgstr ""
-#: templates/js/translated/part.js:3149
+#: templates/js/translated/part.js:3134
msgid "Maximum Quantity"
msgstr ""
-#: templates/js/translated/part.js:3194
+#: templates/js/translated/part.js:3179
msgid "Minimum Stock Level"
msgstr ""
@@ -11168,234 +11297,234 @@ msgstr ""
msgid "Variant Part"
msgstr ""
-#: templates/js/translated/purchase_order.js:155
+#: templates/js/translated/purchase_order.js:166
msgid "Select purchase order to duplicate"
msgstr ""
-#: templates/js/translated/purchase_order.js:162
+#: templates/js/translated/purchase_order.js:173
msgid "Duplicate Line Items"
msgstr ""
-#: templates/js/translated/purchase_order.js:163
+#: templates/js/translated/purchase_order.js:174
msgid "Duplicate all line items from the selected order"
msgstr ""
-#: templates/js/translated/purchase_order.js:170
+#: templates/js/translated/purchase_order.js:181
msgid "Duplicate Extra Lines"
msgstr ""
-#: templates/js/translated/purchase_order.js:171
+#: templates/js/translated/purchase_order.js:182
msgid "Duplicate extra line items from the selected order"
msgstr ""
-#: templates/js/translated/purchase_order.js:192
+#: templates/js/translated/purchase_order.js:203
msgid "Edit Purchase Order"
msgstr "Bewerk Inkooporder"
-#: templates/js/translated/purchase_order.js:209
+#: templates/js/translated/purchase_order.js:220
msgid "Duplication Options"
msgstr ""
-#: templates/js/translated/purchase_order.js:436
+#: templates/js/translated/purchase_order.js:447
msgid "Complete Purchase Order"
msgstr "Voltooi Inkooporder"
-#: templates/js/translated/purchase_order.js:453
-#: templates/js/translated/return_order.js:195
-#: templates/js/translated/sales_order.js:485
+#: templates/js/translated/purchase_order.js:464
+#: templates/js/translated/return_order.js:207
+#: templates/js/translated/sales_order.js:497
msgid "Mark this order as complete?"
msgstr "Order markeren als voltooid?"
-#: templates/js/translated/purchase_order.js:459
+#: templates/js/translated/purchase_order.js:470
msgid "All line items have been received"
msgstr "Alle artikelen zijn ontvangen"
-#: templates/js/translated/purchase_order.js:464
+#: templates/js/translated/purchase_order.js:475
msgid "This order has line items which have not been marked as received."
msgstr "Deze order heeft artikelen die niet zijn gemarkeerd als ontvangen."
-#: templates/js/translated/purchase_order.js:465
-#: templates/js/translated/sales_order.js:499
+#: templates/js/translated/purchase_order.js:476
+#: templates/js/translated/sales_order.js:511
msgid "Completing this order means that the order and line items will no longer be editable."
msgstr "Na het voltooien van de order zijn de order en de artikelen langer bewerkbaar."
-#: templates/js/translated/purchase_order.js:488
+#: templates/js/translated/purchase_order.js:499
msgid "Cancel Purchase Order"
msgstr "Inkooporder annuleren"
-#: templates/js/translated/purchase_order.js:493
+#: templates/js/translated/purchase_order.js:504
msgid "Are you sure you wish to cancel this purchase order?"
msgstr "Weet u zeker dat u deze inkooporder wilt annuleren?"
-#: templates/js/translated/purchase_order.js:499
+#: templates/js/translated/purchase_order.js:510
msgid "This purchase order can not be cancelled"
msgstr "Deze inkooporder kan niet geannuleerd worden"
-#: templates/js/translated/purchase_order.js:520
-#: templates/js/translated/return_order.js:149
+#: templates/js/translated/purchase_order.js:531
+#: templates/js/translated/return_order.js:161
msgid "After placing this order, line items will no longer be editable."
msgstr ""
-#: templates/js/translated/purchase_order.js:525
+#: templates/js/translated/purchase_order.js:536
msgid "Issue Purchase Order"
msgstr "Geef inkooporder uit"
-#: templates/js/translated/purchase_order.js:617
+#: templates/js/translated/purchase_order.js:628
msgid "At least one purchaseable part must be selected"
msgstr ""
-#: templates/js/translated/purchase_order.js:642
+#: templates/js/translated/purchase_order.js:653
msgid "Quantity to order"
msgstr "Te bestellen aantal"
-#: templates/js/translated/purchase_order.js:651
+#: templates/js/translated/purchase_order.js:662
msgid "New supplier part"
msgstr ""
-#: templates/js/translated/purchase_order.js:669
+#: templates/js/translated/purchase_order.js:680
msgid "New purchase order"
msgstr "Nieuwe inkooporder"
-#: templates/js/translated/purchase_order.js:701
+#: templates/js/translated/purchase_order.js:712
msgid "Add to purchase order"
msgstr "Toevoegen aan inkooporder"
-#: templates/js/translated/purchase_order.js:845
+#: templates/js/translated/purchase_order.js:860
msgid "No matching supplier parts"
msgstr ""
-#: templates/js/translated/purchase_order.js:864
+#: templates/js/translated/purchase_order.js:879
msgid "No matching purchase orders"
msgstr "Geen overeenkomende inkooporders"
-#: templates/js/translated/purchase_order.js:1043
+#: templates/js/translated/purchase_order.js:1058
msgid "Select Line Items"
msgstr "Selecteer artikelen"
-#: templates/js/translated/purchase_order.js:1044
-#: templates/js/translated/return_order.js:480
+#: templates/js/translated/purchase_order.js:1059
+#: templates/js/translated/return_order.js:492
msgid "At least one line item must be selected"
msgstr "Ten minste één artikel moet worden geselecteerd"
-#: templates/js/translated/purchase_order.js:1074
+#: templates/js/translated/purchase_order.js:1089
msgid "Received Quantity"
msgstr ""
-#: templates/js/translated/purchase_order.js:1085
+#: templates/js/translated/purchase_order.js:1100
msgid "Quantity to receive"
msgstr ""
-#: templates/js/translated/purchase_order.js:1161
+#: templates/js/translated/purchase_order.js:1176
msgid "Stock Status"
msgstr ""
-#: templates/js/translated/purchase_order.js:1175
+#: templates/js/translated/purchase_order.js:1190
msgid "Add barcode"
msgstr ""
-#: templates/js/translated/purchase_order.js:1176
+#: templates/js/translated/purchase_order.js:1191
msgid "Remove barcode"
msgstr ""
-#: templates/js/translated/purchase_order.js:1179
+#: templates/js/translated/purchase_order.js:1194
msgid "Specify location"
msgstr ""
-#: templates/js/translated/purchase_order.js:1187
+#: templates/js/translated/purchase_order.js:1202
msgid "Add batch code"
msgstr ""
-#: templates/js/translated/purchase_order.js:1198
+#: templates/js/translated/purchase_order.js:1213
msgid "Add serial numbers"
msgstr ""
-#: templates/js/translated/purchase_order.js:1250
+#: templates/js/translated/purchase_order.js:1265
msgid "Serials"
msgstr ""
-#: templates/js/translated/purchase_order.js:1275
+#: templates/js/translated/purchase_order.js:1290
msgid "Order Code"
msgstr "Order Code"
-#: templates/js/translated/purchase_order.js:1277
+#: templates/js/translated/purchase_order.js:1292
msgid "Quantity to Receive"
msgstr ""
-#: templates/js/translated/purchase_order.js:1299
-#: templates/js/translated/return_order.js:545
+#: templates/js/translated/purchase_order.js:1314
+#: templates/js/translated/return_order.js:557
msgid "Confirm receipt of items"
msgstr ""
-#: templates/js/translated/purchase_order.js:1300
+#: templates/js/translated/purchase_order.js:1315
msgid "Receive Purchase Order Items"
msgstr "Ontvang Artikelen Inkooporder"
-#: templates/js/translated/purchase_order.js:1368
+#: templates/js/translated/purchase_order.js:1383
msgid "Scan Item Barcode"
msgstr ""
-#: templates/js/translated/purchase_order.js:1369
+#: templates/js/translated/purchase_order.js:1384
msgid "Scan barcode on incoming item (must not match any existing stock items)"
msgstr ""
-#: templates/js/translated/purchase_order.js:1383
+#: templates/js/translated/purchase_order.js:1398
msgid "Invalid barcode data"
msgstr ""
-#: templates/js/translated/purchase_order.js:1645
-#: templates/js/translated/return_order.js:274
-#: templates/js/translated/sales_order.js:762
-#: templates/js/translated/sales_order.js:986
+#: templates/js/translated/purchase_order.js:1660
+#: templates/js/translated/return_order.js:286
+#: templates/js/translated/sales_order.js:774
+#: templates/js/translated/sales_order.js:998
msgid "Order is overdue"
msgstr "Order is achterstallig"
-#: templates/js/translated/purchase_order.js:1707
-#: templates/js/translated/return_order.js:342
-#: templates/js/translated/sales_order.js:839
-#: templates/js/translated/sales_order.js:999
+#: templates/js/translated/purchase_order.js:1722
+#: templates/js/translated/return_order.js:354
+#: templates/js/translated/sales_order.js:851
+#: templates/js/translated/sales_order.js:1011
msgid "Items"
msgstr "Artikelen"
-#: templates/js/translated/purchase_order.js:1806
+#: templates/js/translated/purchase_order.js:1821
msgid "All selected Line items will be deleted"
msgstr ""
-#: templates/js/translated/purchase_order.js:1824
+#: templates/js/translated/purchase_order.js:1839
msgid "Delete selected Line items?"
msgstr ""
-#: templates/js/translated/purchase_order.js:1884
-#: templates/js/translated/sales_order.js:2047
+#: templates/js/translated/purchase_order.js:1894
+#: templates/js/translated/sales_order.js:2059
msgid "Duplicate Line Item"
msgstr "Artikel dupliceren"
-#: templates/js/translated/purchase_order.js:1899
-#: templates/js/translated/return_order.js:464
-#: templates/js/translated/return_order.js:653
-#: templates/js/translated/sales_order.js:2060
+#: templates/js/translated/purchase_order.js:1909
+#: templates/js/translated/return_order.js:476
+#: templates/js/translated/return_order.js:665
+#: templates/js/translated/sales_order.js:2072
msgid "Edit Line Item"
msgstr "Artikel wijzigen"
-#: templates/js/translated/purchase_order.js:1910
-#: templates/js/translated/return_order.js:666
-#: templates/js/translated/sales_order.js:2071
+#: templates/js/translated/purchase_order.js:1920
+#: templates/js/translated/return_order.js:678
+#: templates/js/translated/sales_order.js:2083
msgid "Delete Line Item"
msgstr "Artikel verwijderen"
-#: templates/js/translated/purchase_order.js:2192
-#: templates/js/translated/sales_order.js:2001
+#: templates/js/translated/purchase_order.js:2202
+#: templates/js/translated/sales_order.js:2013
msgid "Duplicate line item"
msgstr "Artikel dupliceren"
-#: templates/js/translated/purchase_order.js:2193
-#: templates/js/translated/return_order.js:785
-#: templates/js/translated/sales_order.js:2002
+#: templates/js/translated/purchase_order.js:2203
+#: templates/js/translated/return_order.js:797
+#: templates/js/translated/sales_order.js:2014
msgid "Edit line item"
msgstr "Artikel bewerken"
-#: templates/js/translated/purchase_order.js:2194
-#: templates/js/translated/return_order.js:789
-#: templates/js/translated/sales_order.js:2008
+#: templates/js/translated/purchase_order.js:2204
+#: templates/js/translated/return_order.js:801
+#: templates/js/translated/sales_order.js:2020
msgid "Delete line item"
msgstr "Artikel verwijderen"
@@ -11424,941 +11553,973 @@ msgstr ""
msgid "Add Customer"
msgstr ""
-#: templates/js/translated/return_order.js:119
+#: templates/js/translated/return_order.js:131
msgid "Create Return Order"
msgstr ""
-#: templates/js/translated/return_order.js:134
+#: templates/js/translated/return_order.js:146
msgid "Edit Return Order"
msgstr ""
-#: templates/js/translated/return_order.js:154
+#: templates/js/translated/return_order.js:166
msgid "Issue Return Order"
msgstr ""
-#: templates/js/translated/return_order.js:171
+#: templates/js/translated/return_order.js:183
msgid "Are you sure you wish to cancel this Return Order?"
msgstr ""
-#: templates/js/translated/return_order.js:178
+#: templates/js/translated/return_order.js:190
msgid "Cancel Return Order"
msgstr ""
-#: templates/js/translated/return_order.js:203
+#: templates/js/translated/return_order.js:215
msgid "Complete Return Order"
msgstr ""
-#: templates/js/translated/return_order.js:251
+#: templates/js/translated/return_order.js:263
msgid "No return orders found"
msgstr ""
-#: templates/js/translated/return_order.js:288
-#: templates/js/translated/sales_order.js:776
+#: templates/js/translated/return_order.js:300
+#: templates/js/translated/sales_order.js:788
msgid "Invalid Customer"
msgstr "Ongeldige Klant"
-#: templates/js/translated/return_order.js:546
+#: templates/js/translated/return_order.js:558
msgid "Receive Return Order Items"
msgstr ""
-#: templates/js/translated/return_order.js:677
-#: templates/js/translated/sales_order.js:2207
+#: templates/js/translated/return_order.js:689
+#: templates/js/translated/sales_order.js:2219
msgid "No matching line items"
msgstr "Geen overeenkomende artikelen"
-#: templates/js/translated/return_order.js:782
+#: templates/js/translated/return_order.js:794
msgid "Mark item as received"
msgstr ""
-#: templates/js/translated/sales_order.js:146
+#: templates/js/translated/sales_order.js:158
msgid "Create Sales Order"
msgstr "Verkooporder aanmaken"
-#: templates/js/translated/sales_order.js:161
+#: templates/js/translated/sales_order.js:173
msgid "Edit Sales Order"
msgstr "Verkooporder bewerken"
-#: templates/js/translated/sales_order.js:276
+#: templates/js/translated/sales_order.js:288
msgid "No stock items have been allocated to this shipment"
msgstr "Geen voorraadartikelen toegewezen aan deze zending"
-#: templates/js/translated/sales_order.js:281
+#: templates/js/translated/sales_order.js:293
msgid "The following stock items will be shipped"
msgstr "De volgende voorraadartikelen worden verzonden"
-#: templates/js/translated/sales_order.js:321
+#: templates/js/translated/sales_order.js:333
msgid "Complete Shipment"
msgstr "Verzending Voltooien"
-#: templates/js/translated/sales_order.js:345
+#: templates/js/translated/sales_order.js:357
msgid "Confirm Shipment"
msgstr "Verzending Bevestigen"
-#: templates/js/translated/sales_order.js:401
+#: templates/js/translated/sales_order.js:413
msgid "No pending shipments found"
msgstr "Geen verzendingen in behandeling gevonden"
-#: templates/js/translated/sales_order.js:405
+#: templates/js/translated/sales_order.js:417
msgid "No stock items have been allocated to pending shipments"
msgstr ""
-#: templates/js/translated/sales_order.js:415
+#: templates/js/translated/sales_order.js:427
msgid "Complete Shipments"
msgstr "Verzendingen Voltooien"
-#: templates/js/translated/sales_order.js:437
+#: templates/js/translated/sales_order.js:449
msgid "Skip"
msgstr ""
-#: templates/js/translated/sales_order.js:498
+#: templates/js/translated/sales_order.js:510
msgid "This order has line items which have not been completed."
msgstr ""
-#: templates/js/translated/sales_order.js:520
+#: templates/js/translated/sales_order.js:532
msgid "Issue this Sales Order?"
msgstr ""
-#: templates/js/translated/sales_order.js:525
+#: templates/js/translated/sales_order.js:537
msgid "Issue Sales Order"
msgstr ""
-#: templates/js/translated/sales_order.js:544
+#: templates/js/translated/sales_order.js:556
msgid "Cancel Sales Order"
msgstr "Verkooporder annuleren"
-#: templates/js/translated/sales_order.js:549
+#: templates/js/translated/sales_order.js:561
msgid "Cancelling this order means that the order will no longer be editable."
msgstr "Na annulering van de order kan de order niet meer bewerkt worden."
-#: templates/js/translated/sales_order.js:603
+#: templates/js/translated/sales_order.js:615
msgid "Create New Shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:713
+#: templates/js/translated/sales_order.js:725
msgid "No sales orders found"
msgstr "Geen verkooporder gevonden"
-#: templates/js/translated/sales_order.js:896
+#: templates/js/translated/sales_order.js:908
msgid "Edit shipment"
msgstr "Verzending bewerken"
-#: templates/js/translated/sales_order.js:899
+#: templates/js/translated/sales_order.js:911
msgid "Complete shipment"
msgstr "Verzending Voltooien"
-#: templates/js/translated/sales_order.js:904
+#: templates/js/translated/sales_order.js:916
msgid "Delete shipment"
msgstr "Verzending verwijderen"
-#: templates/js/translated/sales_order.js:921
+#: templates/js/translated/sales_order.js:933
msgid "Edit Shipment"
msgstr "Verzending bewerken"
-#: templates/js/translated/sales_order.js:936
+#: templates/js/translated/sales_order.js:948
msgid "Delete Shipment"
msgstr "Verzending verwijderen"
-#: templates/js/translated/sales_order.js:969
+#: templates/js/translated/sales_order.js:981
msgid "No matching shipments found"
msgstr "Geen overeenkomende verzending gevonden"
-#: templates/js/translated/sales_order.js:994
+#: templates/js/translated/sales_order.js:1006
msgid "Shipment Reference"
msgstr "Verzendingsreferentie"
-#: templates/js/translated/sales_order.js:1018
-#: templates/js/translated/sales_order.js:1515
+#: templates/js/translated/sales_order.js:1030
+#: templates/js/translated/sales_order.js:1527
msgid "Not shipped"
msgstr "Niet verzonden"
-#: templates/js/translated/sales_order.js:1036
+#: templates/js/translated/sales_order.js:1048
msgid "Tracking"
msgstr "Volgen"
-#: templates/js/translated/sales_order.js:1040
+#: templates/js/translated/sales_order.js:1052
msgid "Invoice"
msgstr "Factuur"
-#: templates/js/translated/sales_order.js:1207
+#: templates/js/translated/sales_order.js:1219
msgid "Add Shipment"
msgstr "Voeg Verzending toe"
-#: templates/js/translated/sales_order.js:1258
+#: templates/js/translated/sales_order.js:1270
msgid "Confirm stock allocation"
msgstr "Bevestig de voorraadtoewijzing"
-#: templates/js/translated/sales_order.js:1259
+#: templates/js/translated/sales_order.js:1271
msgid "Allocate Stock Items to Sales Order"
msgstr "Voorraadartikel toewijzen aan Verkooporder"
-#: templates/js/translated/sales_order.js:1463
+#: templates/js/translated/sales_order.js:1475
msgid "No sales order allocations found"
msgstr "Geen verkooporder toewijzingen gevonden"
-#: templates/js/translated/sales_order.js:1555
+#: templates/js/translated/sales_order.js:1567
msgid "Edit Stock Allocation"
msgstr "Bewerk Voorraadtoewijzing"
-#: templates/js/translated/sales_order.js:1569
+#: templates/js/translated/sales_order.js:1581
msgid "Confirm Delete Operation"
msgstr "Bevestig Verwijderen"
-#: templates/js/translated/sales_order.js:1570
+#: templates/js/translated/sales_order.js:1582
msgid "Delete Stock Allocation"
msgstr "Verwijder Voorraadtoewijzing"
-#: templates/js/translated/sales_order.js:1609
-#: templates/js/translated/sales_order.js:1696
-#: templates/js/translated/stock.js:1688
+#: templates/js/translated/sales_order.js:1621
+#: templates/js/translated/sales_order.js:1708
+#: templates/js/translated/stock.js:1687
msgid "Shipped to customer"
msgstr "Verzonden aan klant"
-#: templates/js/translated/sales_order.js:1617
-#: templates/js/translated/sales_order.js:1705
+#: templates/js/translated/sales_order.js:1629
+#: templates/js/translated/sales_order.js:1717
msgid "Stock location not specified"
msgstr "Voorraadlocatie niet gespecificeerd"
-#: templates/js/translated/sales_order.js:1985
+#: templates/js/translated/sales_order.js:1997
msgid "Allocate serial numbers"
msgstr "Wijs serienummers toe"
-#: templates/js/translated/sales_order.js:1989
+#: templates/js/translated/sales_order.js:2001
msgid "Purchase stock"
msgstr "Koop voorraad"
-#: templates/js/translated/sales_order.js:1998
-#: templates/js/translated/sales_order.js:2185
+#: templates/js/translated/sales_order.js:2010
+#: templates/js/translated/sales_order.js:2197
msgid "Calculate price"
msgstr "Bereken prijs"
-#: templates/js/translated/sales_order.js:2012
+#: templates/js/translated/sales_order.js:2024
msgid "Cannot be deleted as items have been shipped"
msgstr "Kan niet worden verwijderd omdat artikelen verzonden zijn"
-#: templates/js/translated/sales_order.js:2015
+#: templates/js/translated/sales_order.js:2027
msgid "Cannot be deleted as items have been allocated"
msgstr "Kan niet worden verwijderd omdat artikelen toegewezen zijn"
-#: templates/js/translated/sales_order.js:2086
+#: templates/js/translated/sales_order.js:2098
msgid "Allocate Serial Numbers"
msgstr "Wijs Serienummers Toe"
-#: templates/js/translated/sales_order.js:2193
+#: templates/js/translated/sales_order.js:2205
msgid "Update Unit Price"
msgstr "Werk Stukprijs Bij"
-#: templates/js/translated/search.js:312
+#: templates/js/translated/search.js:270
msgid "No results"
msgstr ""
-#: templates/js/translated/search.js:334 templates/search.html:25
+#: templates/js/translated/search.js:292 templates/search.html:25
msgid "Enter search query"
msgstr ""
-#: templates/js/translated/search.js:384
+#: templates/js/translated/search.js:342
msgid "result"
msgstr ""
-#: templates/js/translated/search.js:384
+#: templates/js/translated/search.js:342
msgid "results"
msgstr ""
-#: templates/js/translated/search.js:394
+#: templates/js/translated/search.js:352
msgid "Minimize results"
msgstr ""
-#: templates/js/translated/search.js:397
+#: templates/js/translated/search.js:355
msgid "Remove results"
msgstr ""
-#: templates/js/translated/stock.js:98
+#: templates/js/translated/stock.js:97
msgid "Serialize Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:129
+#: templates/js/translated/stock.js:128
msgid "Confirm Stock Serialization"
msgstr ""
-#: templates/js/translated/stock.js:138
+#: templates/js/translated/stock.js:137
msgid "Parent stock location"
msgstr ""
-#: templates/js/translated/stock.js:173
+#: templates/js/translated/stock.js:172
msgid "Edit Stock Location"
msgstr "Bewerk Voorraadlocatie"
-#: templates/js/translated/stock.js:188
+#: templates/js/translated/stock.js:187
msgid "New Stock Location"
msgstr ""
-#: templates/js/translated/stock.js:190
+#: templates/js/translated/stock.js:189
msgid "Create another location after this one"
msgstr ""
-#: templates/js/translated/stock.js:191
+#: templates/js/translated/stock.js:190
msgid "Stock location created"
msgstr ""
-#: templates/js/translated/stock.js:205
+#: templates/js/translated/stock.js:204
msgid "Are you sure you want to delete this stock location?"
msgstr ""
-#: templates/js/translated/stock.js:212
+#: templates/js/translated/stock.js:211
msgid "Move to parent stock location"
msgstr ""
-#: templates/js/translated/stock.js:221
+#: templates/js/translated/stock.js:220
msgid "Delete Stock Location"
msgstr "Verwijder Voorraadlocatie"
-#: templates/js/translated/stock.js:225
+#: templates/js/translated/stock.js:224
msgid "Action for stock items in this stock location"
msgstr ""
-#: templates/js/translated/stock.js:230
+#: templates/js/translated/stock.js:229
msgid "Action for sub-locations"
msgstr ""
-#: templates/js/translated/stock.js:284
+#: templates/js/translated/stock.js:283
msgid "This part cannot be serialized"
msgstr ""
-#: templates/js/translated/stock.js:320
+#: templates/js/translated/stock.js:319
msgid "Add given quantity as packs instead of individual items"
msgstr ""
-#: templates/js/translated/stock.js:329
+#: templates/js/translated/stock.js:328
msgid "Enter initial quantity for this stock item"
msgstr ""
-#: templates/js/translated/stock.js:335
+#: templates/js/translated/stock.js:334
msgid "Enter serial numbers for new stock (or leave blank)"
msgstr ""
-#: templates/js/translated/stock.js:406
+#: templates/js/translated/stock.js:405
msgid "Stock item duplicated"
msgstr ""
-#: templates/js/translated/stock.js:426
+#: templates/js/translated/stock.js:425
msgid "Duplicate Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:442
+#: templates/js/translated/stock.js:441
msgid "Are you sure you want to delete this stock item?"
msgstr ""
-#: templates/js/translated/stock.js:447
+#: templates/js/translated/stock.js:446
msgid "Delete Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:468
+#: templates/js/translated/stock.js:467
msgid "Edit Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:510
+#: templates/js/translated/stock.js:509
msgid "Create another item after this one"
msgstr ""
-#: templates/js/translated/stock.js:522
+#: templates/js/translated/stock.js:521
msgid "Created new stock item"
msgstr ""
-#: templates/js/translated/stock.js:535
+#: templates/js/translated/stock.js:534
msgid "Created multiple stock items"
msgstr ""
-#: templates/js/translated/stock.js:560
+#: templates/js/translated/stock.js:559
msgid "Find Serial Number"
msgstr ""
-#: templates/js/translated/stock.js:564 templates/js/translated/stock.js:565
+#: templates/js/translated/stock.js:563 templates/js/translated/stock.js:564
msgid "Enter serial number"
msgstr ""
-#: templates/js/translated/stock.js:581
+#: templates/js/translated/stock.js:580
msgid "Enter a serial number"
msgstr ""
-#: templates/js/translated/stock.js:601
+#: templates/js/translated/stock.js:600
msgid "No matching serial number"
msgstr ""
-#: templates/js/translated/stock.js:610
+#: templates/js/translated/stock.js:609
msgid "More than one matching result found"
msgstr ""
-#: templates/js/translated/stock.js:718
+#: templates/js/translated/stock.js:717
msgid "Confirm stock assignment"
msgstr ""
-#: templates/js/translated/stock.js:719
+#: templates/js/translated/stock.js:718
msgid "Assign Stock to Customer"
msgstr ""
-#: templates/js/translated/stock.js:796
+#: templates/js/translated/stock.js:795
msgid "Warning: Merge operation cannot be reversed"
msgstr ""
-#: templates/js/translated/stock.js:797
+#: templates/js/translated/stock.js:796
msgid "Some information will be lost when merging stock items"
msgstr ""
-#: templates/js/translated/stock.js:799
+#: templates/js/translated/stock.js:798
msgid "Stock transaction history will be deleted for merged items"
msgstr ""
-#: templates/js/translated/stock.js:800
+#: templates/js/translated/stock.js:799
msgid "Supplier part information will be deleted for merged items"
msgstr ""
-#: templates/js/translated/stock.js:891
+#: templates/js/translated/stock.js:890
msgid "Confirm stock item merge"
msgstr ""
-#: templates/js/translated/stock.js:892
+#: templates/js/translated/stock.js:891
msgid "Merge Stock Items"
msgstr ""
-#: templates/js/translated/stock.js:987
+#: templates/js/translated/stock.js:986
msgid "Transfer Stock"
msgstr ""
-#: templates/js/translated/stock.js:988
+#: templates/js/translated/stock.js:987
msgid "Move"
msgstr ""
-#: templates/js/translated/stock.js:994
+#: templates/js/translated/stock.js:993
msgid "Count Stock"
msgstr ""
-#: templates/js/translated/stock.js:995
+#: templates/js/translated/stock.js:994
msgid "Count"
msgstr ""
-#: templates/js/translated/stock.js:999
+#: templates/js/translated/stock.js:998
msgid "Remove Stock"
msgstr ""
-#: templates/js/translated/stock.js:1000
+#: templates/js/translated/stock.js:999
msgid "Take"
msgstr ""
-#: templates/js/translated/stock.js:1004
+#: templates/js/translated/stock.js:1003
msgid "Add Stock"
msgstr ""
-#: templates/js/translated/stock.js:1005 users/models.py:243
+#: templates/js/translated/stock.js:1004 users/models.py:249
msgid "Add"
msgstr ""
-#: templates/js/translated/stock.js:1009
+#: templates/js/translated/stock.js:1008
msgid "Delete Stock"
msgstr ""
-#: templates/js/translated/stock.js:1106
+#: templates/js/translated/stock.js:1105
msgid "Quantity cannot be adjusted for serialized stock"
msgstr ""
-#: templates/js/translated/stock.js:1106
+#: templates/js/translated/stock.js:1105
msgid "Specify stock quantity"
msgstr ""
-#: templates/js/translated/stock.js:1140
+#: templates/js/translated/stock.js:1139 templates/js/translated/stock.js:3151
msgid "Select Stock Items"
msgstr ""
-#: templates/js/translated/stock.js:1141
-msgid "You must select at least one available stock item"
+#: templates/js/translated/stock.js:1140
+msgid "Select at least one available stock item"
msgstr ""
-#: templates/js/translated/stock.js:1168
+#: templates/js/translated/stock.js:1167
msgid "Confirm stock adjustment"
msgstr ""
-#: templates/js/translated/stock.js:1304
+#: templates/js/translated/stock.js:1303
msgid "PASS"
msgstr ""
-#: templates/js/translated/stock.js:1306
+#: templates/js/translated/stock.js:1305
msgid "FAIL"
msgstr ""
-#: templates/js/translated/stock.js:1311
+#: templates/js/translated/stock.js:1310
msgid "NO RESULT"
msgstr ""
-#: templates/js/translated/stock.js:1373
+#: templates/js/translated/stock.js:1372
msgid "Pass test"
msgstr ""
-#: templates/js/translated/stock.js:1376
+#: templates/js/translated/stock.js:1375
msgid "Add test result"
msgstr ""
-#: templates/js/translated/stock.js:1400
+#: templates/js/translated/stock.js:1399
msgid "No test results found"
msgstr ""
-#: templates/js/translated/stock.js:1464
+#: templates/js/translated/stock.js:1463
msgid "Test Date"
msgstr ""
-#: templates/js/translated/stock.js:1626
+#: templates/js/translated/stock.js:1625
msgid "Edit Test Result"
msgstr ""
-#: templates/js/translated/stock.js:1648
+#: templates/js/translated/stock.js:1647
msgid "Delete Test Result"
msgstr ""
-#: templates/js/translated/stock.js:1680
+#: templates/js/translated/stock.js:1679
msgid "In production"
msgstr ""
-#: templates/js/translated/stock.js:1684
+#: templates/js/translated/stock.js:1683
msgid "Installed in Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:1692
+#: templates/js/translated/stock.js:1691
msgid "Assigned to Sales Order"
msgstr "Toegewezen aan Verkooporder"
-#: templates/js/translated/stock.js:1698
+#: templates/js/translated/stock.js:1697
msgid "No stock location set"
msgstr "Geen voorraadlocatie ingesteld"
-#: templates/js/translated/stock.js:1746
+#: templates/js/translated/stock.js:1753
+msgid "Change stock status"
+msgstr ""
+
+#: templates/js/translated/stock.js:1762
+msgid "Merge stock"
+msgstr ""
+
+#: templates/js/translated/stock.js:1811
+msgid "Delete stock"
+msgstr ""
+
+#: templates/js/translated/stock.js:1866
msgid "stock items"
msgstr ""
-#: templates/js/translated/stock.js:1850
+#: templates/js/translated/stock.js:1871
+msgid "Scan to location"
+msgstr ""
+
+#: templates/js/translated/stock.js:1882
+msgid "Stock Actions"
+msgstr ""
+
+#: templates/js/translated/stock.js:1929
+msgid "Load installed items"
+msgstr ""
+
+#: templates/js/translated/stock.js:2007
msgid "Stock item is in production"
msgstr ""
-#: templates/js/translated/stock.js:1855
+#: templates/js/translated/stock.js:2012
msgid "Stock item assigned to sales order"
msgstr "Voorraadartikel toegewezen aan verkooporder"
-#: templates/js/translated/stock.js:1858
+#: templates/js/translated/stock.js:2015
msgid "Stock item assigned to customer"
msgstr ""
-#: templates/js/translated/stock.js:1861
+#: templates/js/translated/stock.js:2018
msgid "Serialized stock item has been allocated"
msgstr ""
-#: templates/js/translated/stock.js:1863
+#: templates/js/translated/stock.js:2020
msgid "Stock item has been fully allocated"
msgstr ""
-#: templates/js/translated/stock.js:1865
+#: templates/js/translated/stock.js:2022
msgid "Stock item has been partially allocated"
msgstr ""
-#: templates/js/translated/stock.js:1868
+#: templates/js/translated/stock.js:2025
msgid "Stock item has been installed in another item"
msgstr ""
-#: templates/js/translated/stock.js:1870
+#: templates/js/translated/stock.js:2027
msgid "Stock item has been consumed by a build order"
msgstr ""
-#: templates/js/translated/stock.js:1874
+#: templates/js/translated/stock.js:2031
msgid "Stock item has expired"
msgstr ""
-#: templates/js/translated/stock.js:1876
+#: templates/js/translated/stock.js:2033
msgid "Stock item will expire soon"
msgstr ""
-#: templates/js/translated/stock.js:1881
+#: templates/js/translated/stock.js:2038
msgid "Stock item has been rejected"
msgstr ""
-#: templates/js/translated/stock.js:1883
+#: templates/js/translated/stock.js:2040
msgid "Stock item is lost"
msgstr ""
-#: templates/js/translated/stock.js:1885
+#: templates/js/translated/stock.js:2042
msgid "Stock item is destroyed"
msgstr ""
-#: templates/js/translated/stock.js:1889
-#: templates/js/translated/table_filters.js:296
+#: templates/js/translated/stock.js:2046
+#: templates/js/translated/table_filters.js:302
msgid "Depleted"
msgstr ""
-#: templates/js/translated/stock.js:2031
+#: templates/js/translated/stock.js:2188
msgid "Supplier part not specified"
msgstr ""
-#: templates/js/translated/stock.js:2078
+#: templates/js/translated/stock.js:2235
msgid "Stock Value"
msgstr ""
-#: templates/js/translated/stock.js:2170
+#: templates/js/translated/stock.js:2358
msgid "No stock items matching query"
msgstr ""
-#: templates/js/translated/stock.js:2319
+#: templates/js/translated/stock.js:2450
msgid "stock locations"
msgstr ""
-#: templates/js/translated/stock.js:2476
+#: templates/js/translated/stock.js:2607
msgid "Load Subloactions"
msgstr ""
-#: templates/js/translated/stock.js:2583
+#: templates/js/translated/stock.js:2714
msgid "Details"
msgstr ""
-#: templates/js/translated/stock.js:2587
+#: templates/js/translated/stock.js:2718
msgid "No changes"
msgstr ""
-#: templates/js/translated/stock.js:2599
+#: templates/js/translated/stock.js:2730
msgid "Part information unavailable"
msgstr ""
-#: templates/js/translated/stock.js:2621
+#: templates/js/translated/stock.js:2752
msgid "Location no longer exists"
msgstr ""
-#: templates/js/translated/stock.js:2638
+#: templates/js/translated/stock.js:2769
msgid "Build order no longer exists"
msgstr ""
-#: templates/js/translated/stock.js:2653
+#: templates/js/translated/stock.js:2784
msgid "Purchase order no longer exists"
msgstr "Inkooporder bestaat niet meer"
-#: templates/js/translated/stock.js:2670
+#: templates/js/translated/stock.js:2801
msgid "Sales Order no longer exists"
msgstr ""
-#: templates/js/translated/stock.js:2687
+#: templates/js/translated/stock.js:2818
msgid "Return Order no longer exists"
msgstr ""
-#: templates/js/translated/stock.js:2706
+#: templates/js/translated/stock.js:2837
msgid "Customer no longer exists"
msgstr ""
-#: templates/js/translated/stock.js:2724
+#: templates/js/translated/stock.js:2855
msgid "Stock item no longer exists"
msgstr ""
-#: templates/js/translated/stock.js:2742
+#: templates/js/translated/stock.js:2873
msgid "Added"
msgstr ""
-#: templates/js/translated/stock.js:2750
+#: templates/js/translated/stock.js:2881
msgid "Removed"
msgstr ""
-#: templates/js/translated/stock.js:2826
+#: templates/js/translated/stock.js:2953
msgid "No installed items"
msgstr ""
-#: templates/js/translated/stock.js:2876 templates/js/translated/stock.js:2911
+#: templates/js/translated/stock.js:3003 templates/js/translated/stock.js:3038
msgid "Uninstall Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:2929
+#: templates/js/translated/stock.js:3056
msgid "Select stock item to uninstall"
msgstr ""
-#: templates/js/translated/stock.js:2950
+#: templates/js/translated/stock.js:3077
msgid "Install another stock item into this item"
msgstr ""
-#: templates/js/translated/stock.js:2951
+#: templates/js/translated/stock.js:3078
msgid "Stock items can only be installed if they meet the following criteria"
msgstr ""
-#: templates/js/translated/stock.js:2953
+#: templates/js/translated/stock.js:3080
msgid "The Stock Item links to a Part which is the BOM for this Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:2954
+#: templates/js/translated/stock.js:3081
msgid "The Stock Item is currently available in stock"
msgstr ""
-#: templates/js/translated/stock.js:2955
+#: templates/js/translated/stock.js:3082
msgid "The Stock Item is not already installed in another item"
msgstr ""
-#: templates/js/translated/stock.js:2956
+#: templates/js/translated/stock.js:3083
msgid "The Stock Item is tracked by either a batch code or serial number"
msgstr ""
-#: templates/js/translated/stock.js:2969
+#: templates/js/translated/stock.js:3096
msgid "Select part to install"
msgstr ""
+#: templates/js/translated/stock.js:3152
+msgid "Select one or more stock items"
+msgstr ""
+
+#: templates/js/translated/stock.js:3165
+msgid "Selected stock items"
+msgstr ""
+
+#: templates/js/translated/stock.js:3169
+msgid "Change Stock Status"
+msgstr ""
+
#: templates/js/translated/table_filters.js:50
msgid "Has project code"
msgstr ""
-#: templates/js/translated/table_filters.js:59
-#: templates/js/translated/table_filters.js:518
-#: templates/js/translated/table_filters.js:530
-#: templates/js/translated/table_filters.js:571
+#: templates/js/translated/table_filters.js:65
+#: templates/js/translated/table_filters.js:540
+#: templates/js/translated/table_filters.js:552
+#: templates/js/translated/table_filters.js:593
msgid "Order status"
msgstr "Order status"
-#: templates/js/translated/table_filters.js:64
-#: templates/js/translated/table_filters.js:535
-#: templates/js/translated/table_filters.js:561
-#: templates/js/translated/table_filters.js:576
+#: templates/js/translated/table_filters.js:70
+#: templates/js/translated/table_filters.js:557
+#: templates/js/translated/table_filters.js:583
+#: templates/js/translated/table_filters.js:598
msgid "Outstanding"
msgstr ""
-#: templates/js/translated/table_filters.js:72
-#: templates/js/translated/table_filters.js:458
-#: templates/js/translated/table_filters.js:543
-#: templates/js/translated/table_filters.js:584
+#: templates/js/translated/table_filters.js:78
+#: templates/js/translated/table_filters.js:464
+#: templates/js/translated/table_filters.js:565
+#: templates/js/translated/table_filters.js:606
msgid "Assigned to me"
msgstr ""
-#: templates/js/translated/table_filters.js:128
+#: templates/js/translated/table_filters.js:134
msgid "Trackable Part"
msgstr ""
-#: templates/js/translated/table_filters.js:132
+#: templates/js/translated/table_filters.js:138
msgid "Assembled Part"
msgstr "Samengesteld onderdeel"
-#: templates/js/translated/table_filters.js:136
+#: templates/js/translated/table_filters.js:142
msgid "Has Available Stock"
msgstr ""
-#: templates/js/translated/table_filters.js:152
+#: templates/js/translated/table_filters.js:158
msgid "Allow Variant Stock"
msgstr ""
-#: templates/js/translated/table_filters.js:164
-#: templates/js/translated/table_filters.js:692
+#: templates/js/translated/table_filters.js:170
+#: templates/js/translated/table_filters.js:714
msgid "Has Pricing"
msgstr ""
-#: templates/js/translated/table_filters.js:204
-#: templates/js/translated/table_filters.js:291
+#: templates/js/translated/table_filters.js:210
+#: templates/js/translated/table_filters.js:297
msgid "Include sublocations"
msgstr ""
-#: templates/js/translated/table_filters.js:205
+#: templates/js/translated/table_filters.js:211
msgid "Include locations"
msgstr ""
-#: templates/js/translated/table_filters.js:224
-#: templates/js/translated/table_filters.js:225
-#: templates/js/translated/table_filters.js:624
+#: templates/js/translated/table_filters.js:230
+#: templates/js/translated/table_filters.js:231
+#: templates/js/translated/table_filters.js:646
msgid "Include subcategories"
msgstr ""
-#: templates/js/translated/table_filters.js:233
-#: templates/js/translated/table_filters.js:672
+#: templates/js/translated/table_filters.js:239
+#: templates/js/translated/table_filters.js:694
msgid "Subscribed"
msgstr ""
-#: templates/js/translated/table_filters.js:244
-#: templates/js/translated/table_filters.js:326
+#: templates/js/translated/table_filters.js:250
+#: templates/js/translated/table_filters.js:332
msgid "Is Serialized"
msgstr ""
-#: templates/js/translated/table_filters.js:247
-#: templates/js/translated/table_filters.js:333
+#: templates/js/translated/table_filters.js:253
+#: templates/js/translated/table_filters.js:339
msgid "Serial number GTE"
msgstr ""
-#: templates/js/translated/table_filters.js:248
-#: templates/js/translated/table_filters.js:334
+#: templates/js/translated/table_filters.js:254
+#: templates/js/translated/table_filters.js:340
msgid "Serial number greater than or equal to"
msgstr ""
-#: templates/js/translated/table_filters.js:251
-#: templates/js/translated/table_filters.js:337
+#: templates/js/translated/table_filters.js:257
+#: templates/js/translated/table_filters.js:343
msgid "Serial number LTE"
msgstr ""
-#: templates/js/translated/table_filters.js:252
-#: templates/js/translated/table_filters.js:338
+#: templates/js/translated/table_filters.js:258
+#: templates/js/translated/table_filters.js:344
msgid "Serial number less than or equal to"
msgstr ""
-#: templates/js/translated/table_filters.js:255
-#: templates/js/translated/table_filters.js:256
-#: templates/js/translated/table_filters.js:329
-#: templates/js/translated/table_filters.js:330
+#: templates/js/translated/table_filters.js:261
+#: templates/js/translated/table_filters.js:262
+#: templates/js/translated/table_filters.js:335
+#: templates/js/translated/table_filters.js:336
msgid "Serial number"
msgstr ""
-#: templates/js/translated/table_filters.js:260
-#: templates/js/translated/table_filters.js:351
+#: templates/js/translated/table_filters.js:266
+#: templates/js/translated/table_filters.js:357
msgid "Batch code"
msgstr ""
-#: templates/js/translated/table_filters.js:271
-#: templates/js/translated/table_filters.js:613
+#: templates/js/translated/table_filters.js:277
+#: templates/js/translated/table_filters.js:635
msgid "Active parts"
msgstr ""
-#: templates/js/translated/table_filters.js:272
+#: templates/js/translated/table_filters.js:278
msgid "Show stock for active parts"
msgstr ""
-#: templates/js/translated/table_filters.js:277
+#: templates/js/translated/table_filters.js:283
msgid "Part is an assembly"
msgstr "Onderdeel is een assemblage"
-#: templates/js/translated/table_filters.js:281
+#: templates/js/translated/table_filters.js:287
msgid "Is allocated"
msgstr ""
-#: templates/js/translated/table_filters.js:282
+#: templates/js/translated/table_filters.js:288
msgid "Item has been allocated"
msgstr ""
-#: templates/js/translated/table_filters.js:287
+#: templates/js/translated/table_filters.js:293
msgid "Stock is available for use"
msgstr ""
-#: templates/js/translated/table_filters.js:292
+#: templates/js/translated/table_filters.js:298
msgid "Include stock in sublocations"
msgstr ""
-#: templates/js/translated/table_filters.js:297
+#: templates/js/translated/table_filters.js:303
msgid "Show stock items which are depleted"
msgstr ""
-#: templates/js/translated/table_filters.js:302
+#: templates/js/translated/table_filters.js:308
msgid "Show items which are in stock"
msgstr ""
-#: templates/js/translated/table_filters.js:306
+#: templates/js/translated/table_filters.js:312
msgid "In Production"
msgstr ""
-#: templates/js/translated/table_filters.js:307
+#: templates/js/translated/table_filters.js:313
msgid "Show items which are in production"
msgstr ""
-#: templates/js/translated/table_filters.js:311
+#: templates/js/translated/table_filters.js:317
msgid "Include Variants"
msgstr ""
-#: templates/js/translated/table_filters.js:312
+#: templates/js/translated/table_filters.js:318
msgid "Include stock items for variant parts"
msgstr ""
-#: templates/js/translated/table_filters.js:316
+#: templates/js/translated/table_filters.js:322
msgid "Installed"
msgstr ""
-#: templates/js/translated/table_filters.js:317
+#: templates/js/translated/table_filters.js:323
msgid "Show stock items which are installed in another item"
msgstr ""
-#: templates/js/translated/table_filters.js:322
+#: templates/js/translated/table_filters.js:328
msgid "Show items which have been assigned to a customer"
msgstr ""
-#: templates/js/translated/table_filters.js:342
-#: templates/js/translated/table_filters.js:343
+#: templates/js/translated/table_filters.js:348
+#: templates/js/translated/table_filters.js:349
msgid "Stock status"
msgstr ""
-#: templates/js/translated/table_filters.js:346
+#: templates/js/translated/table_filters.js:352
msgid "Has batch code"
msgstr ""
-#: templates/js/translated/table_filters.js:354
-msgid "Tracked"
-msgstr ""
-
-#: templates/js/translated/table_filters.js:355
+#: templates/js/translated/table_filters.js:361
msgid "Stock item is tracked by either batch code or serial number"
msgstr ""
-#: templates/js/translated/table_filters.js:360
+#: templates/js/translated/table_filters.js:366
msgid "Has purchase price"
msgstr ""
-#: templates/js/translated/table_filters.js:361
+#: templates/js/translated/table_filters.js:367
msgid "Show stock items which have a purchase price set"
msgstr ""
-#: templates/js/translated/table_filters.js:365
+#: templates/js/translated/table_filters.js:371
msgid "Expiry Date before"
msgstr ""
-#: templates/js/translated/table_filters.js:369
+#: templates/js/translated/table_filters.js:375
msgid "Expiry Date after"
msgstr ""
-#: templates/js/translated/table_filters.js:382
+#: templates/js/translated/table_filters.js:388
msgid "Show stock items which have expired"
msgstr ""
-#: templates/js/translated/table_filters.js:388
+#: templates/js/translated/table_filters.js:394
msgid "Show stock which is close to expiring"
msgstr ""
-#: templates/js/translated/table_filters.js:402
+#: templates/js/translated/table_filters.js:408
msgid "Test Passed"
msgstr ""
-#: templates/js/translated/table_filters.js:406
+#: templates/js/translated/table_filters.js:412
msgid "Include Installed Items"
msgstr ""
-#: templates/js/translated/table_filters.js:445
+#: templates/js/translated/table_filters.js:451
msgid "Build status"
msgstr ""
-#: templates/js/translated/table_filters.js:625
+#: templates/js/translated/table_filters.js:647
msgid "Include parts in subcategories"
msgstr ""
-#: templates/js/translated/table_filters.js:630
+#: templates/js/translated/table_filters.js:652
msgid "Show active parts"
msgstr ""
-#: templates/js/translated/table_filters.js:638
+#: templates/js/translated/table_filters.js:660
msgid "Available stock"
msgstr ""
-#: templates/js/translated/table_filters.js:646
-#: templates/js/translated/table_filters.js:742
+#: templates/js/translated/table_filters.js:668
+#: templates/js/translated/table_filters.js:764
msgid "Has Units"
msgstr ""
-#: templates/js/translated/table_filters.js:647
+#: templates/js/translated/table_filters.js:669
msgid "Part has defined units"
msgstr ""
-#: templates/js/translated/table_filters.js:651
+#: templates/js/translated/table_filters.js:673
msgid "Has IPN"
msgstr ""
-#: templates/js/translated/table_filters.js:652
+#: templates/js/translated/table_filters.js:674
msgid "Part has internal part number"
msgstr ""
-#: templates/js/translated/table_filters.js:656
+#: templates/js/translated/table_filters.js:678
msgid "In stock"
msgstr ""
-#: templates/js/translated/table_filters.js:664
+#: templates/js/translated/table_filters.js:686
msgid "Purchasable"
msgstr ""
-#: templates/js/translated/table_filters.js:676
+#: templates/js/translated/table_filters.js:698
msgid "Has stocktake entries"
msgstr ""
-#: templates/js/translated/table_filters.js:738
+#: templates/js/translated/table_filters.js:760
msgid "Has Choices"
msgstr ""
@@ -12390,51 +12551,51 @@ msgstr ""
msgid "Select File Format"
msgstr ""
-#: templates/js/translated/tables.js:561
+#: templates/js/translated/tables.js:537
msgid "Loading data"
msgstr ""
-#: templates/js/translated/tables.js:564
+#: templates/js/translated/tables.js:540
msgid "rows per page"
msgstr "rijen per pagina"
-#: templates/js/translated/tables.js:569
+#: templates/js/translated/tables.js:545
msgid "Showing all rows"
msgstr ""
-#: templates/js/translated/tables.js:571
+#: templates/js/translated/tables.js:547
msgid "Showing"
msgstr ""
-#: templates/js/translated/tables.js:571
+#: templates/js/translated/tables.js:547
msgid "to"
msgstr ""
-#: templates/js/translated/tables.js:571
+#: templates/js/translated/tables.js:547
msgid "of"
msgstr ""
-#: templates/js/translated/tables.js:571
+#: templates/js/translated/tables.js:547
msgid "rows"
msgstr ""
-#: templates/js/translated/tables.js:578
+#: templates/js/translated/tables.js:554
msgid "No matching results"
msgstr ""
-#: templates/js/translated/tables.js:581
+#: templates/js/translated/tables.js:557
msgid "Hide/Show pagination"
msgstr ""
-#: templates/js/translated/tables.js:587
+#: templates/js/translated/tables.js:563
msgid "Toggle"
msgstr ""
-#: templates/js/translated/tables.js:590
+#: templates/js/translated/tables.js:566
msgid "Columns"
msgstr ""
-#: templates/js/translated/tables.js:593
+#: templates/js/translated/tables.js:569
msgid "All"
msgstr ""
@@ -12616,50 +12777,6 @@ msgstr ""
msgid "Email settings not configured"
msgstr ""
-#: templates/stock_table.html:17
-msgid "Barcode Actions"
-msgstr ""
-
-#: templates/stock_table.html:28
-msgid "Stock Options"
-msgstr ""
-
-#: templates/stock_table.html:33
-msgid "Add to selected stock items"
-msgstr ""
-
-#: templates/stock_table.html:34
-msgid "Remove from selected stock items"
-msgstr ""
-
-#: templates/stock_table.html:35
-msgid "Stocktake selected stock items"
-msgstr ""
-
-#: templates/stock_table.html:36
-msgid "Move selected stock items"
-msgstr ""
-
-#: templates/stock_table.html:37
-msgid "Merge selected stock items"
-msgstr ""
-
-#: templates/stock_table.html:37
-msgid "Merge stock"
-msgstr ""
-
-#: templates/stock_table.html:38
-msgid "Order selected items"
-msgstr "Geselecteerde artikelen bestellen"
-
-#: templates/stock_table.html:42
-msgid "Delete selected items"
-msgstr ""
-
-#: templates/stock_table.html:42
-msgid "Delete stock"
-msgstr ""
-
#: templates/yesnolabel.html:4
msgid "Yes"
msgstr ""
@@ -12692,35 +12809,35 @@ msgstr ""
msgid "Important dates"
msgstr ""
-#: users/models.py:230
+#: users/models.py:236
msgid "Permission set"
msgstr ""
-#: users/models.py:238
+#: users/models.py:244
msgid "Group"
msgstr ""
-#: users/models.py:241
+#: users/models.py:247
msgid "View"
msgstr ""
-#: users/models.py:241
+#: users/models.py:247
msgid "Permission to view items"
msgstr ""
-#: users/models.py:243
+#: users/models.py:249
msgid "Permission to add items"
msgstr ""
-#: users/models.py:245
+#: users/models.py:251
msgid "Change"
msgstr ""
-#: users/models.py:245
+#: users/models.py:251
msgid "Permissions to edit items"
msgstr ""
-#: users/models.py:247
+#: users/models.py:253
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 fe0f15a916..30241e2d05 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: 2023-06-09 00:32+0000\n"
-"PO-Revision-Date: 2023-06-09 10:27\n"
+"POT-Creation-Date: 2023-06-20 07:01+0000\n"
+"PO-Revision-Date: 2023-06-20 07:06\n"
"Last-Translator: \n"
"Language-Team: Norwegian\n"
"Language: no_NO\n"
@@ -27,15 +27,15 @@ msgstr "Brukeren har ikke rettigheter til å se denne modellen"
#: InvenTree/conversion.py:62
msgid "No value provided"
-msgstr ""
+msgstr "Ingen verdi angitt"
#: InvenTree/conversion.py:84
msgid "Provided value is not a valid number"
-msgstr ""
+msgstr "Angitt verdi er ikke et gyldig tall"
#: InvenTree/conversion.py:86
msgid "Provided value has an invalid unit"
-msgstr ""
+msgstr "Angitt verdi har en ugyldig enhet"
#: InvenTree/conversion.py:88
msgid "Provided value could not be converted to the specified unit"
@@ -49,26 +49,26 @@ msgstr "Feildetaljer kan finnes i admin-panelet"
msgid "Enter date"
msgstr "Oppgi dato"
-#: InvenTree/fields.py:206 InvenTree/models.py:766 build/serializers.py:427
-#: build/serializers.py:506 build/templates/build/sidebar.html:23
-#: company/models.py:597 company/templates/company/sidebar.html:35
-#: order/models.py:1089 order/templates/order/po_sidebar.html:11
+#: InvenTree/fields.py:206 InvenTree/models.py:766 build/serializers.py:435
+#: build/serializers.py:514 build/templates/build/sidebar.html:21
+#: company/models.py:746 company/templates/company/sidebar.html:37
+#: order/models.py:1102 order/templates/order/po_sidebar.html:11
#: order/templates/order/return_order_sidebar.html:9
#: order/templates/order/so_sidebar.html:17 part/admin.py:41
-#: part/models.py:3005 part/templates/part/part_sidebar.html:63
+#: part/models.py:3039 part/templates/part/part_sidebar.html:63
#: report/templates/report/inventree_build_order_base.html:172
#: stock/admin.py:121 stock/models.py:2160 stock/models.py:2268
-#: stock/serializers.py:342 stock/serializers.py:475 stock/serializers.py:556
-#: stock/serializers.py:839 stock/serializers.py:938 stock/serializers.py:1070
-#: stock/templates/stock/stock_sidebar.html:25
-#: templates/js/translated/barcode.js:143 templates/js/translated/bom.js:1224
-#: templates/js/translated/company.js:1294 templates/js/translated/order.js:347
-#: templates/js/translated/part.js:1054
-#: templates/js/translated/purchase_order.js:2168
-#: templates/js/translated/return_order.js:760
-#: templates/js/translated/sales_order.js:1055
-#: templates/js/translated/sales_order.js:1959
-#: templates/js/translated/stock.js:1460 templates/js/translated/stock.js:2164
+#: stock/serializers.py:408 stock/serializers.py:542 stock/serializers.py:623
+#: stock/serializers.py:681 stock/serializers.py:956 stock/serializers.py:1055
+#: stock/serializers.py:1187 stock/templates/stock/stock_sidebar.html:25
+#: templates/js/translated/barcode.js:143 templates/js/translated/bom.js:1244
+#: templates/js/translated/company.js:1715 templates/js/translated/order.js:347
+#: templates/js/translated/part.js:1053
+#: templates/js/translated/purchase_order.js:2178
+#: templates/js/translated/return_order.js:772
+#: templates/js/translated/sales_order.js:1067
+#: templates/js/translated/sales_order.js:1971
+#: templates/js/translated/stock.js:1459 templates/js/translated/stock.js:2321
msgid "Notes"
msgstr "Notater"
@@ -81,47 +81,51 @@ msgstr "Verdi '{name}' vises ikke i mønsterformat"
msgid "Provided value does not match required pattern: "
msgstr "Angitt verdi samsvarer ikke med påkrevd mønster: "
-#: InvenTree/forms.py:145
+#: InvenTree/forms.py:147
msgid "Enter password"
msgstr "Oppgi passord"
-#: InvenTree/forms.py:146
+#: InvenTree/forms.py:148
msgid "Enter new password"
msgstr "Oppgi nytt passord"
-#: InvenTree/forms.py:155
+#: InvenTree/forms.py:157
msgid "Confirm password"
msgstr "Bekreft passord"
-#: InvenTree/forms.py:156
+#: InvenTree/forms.py:158
msgid "Confirm new password"
msgstr "Bekreft nytt passord"
-#: InvenTree/forms.py:160
+#: InvenTree/forms.py:162
msgid "Old password"
msgstr "Gammelt passord"
-#: InvenTree/forms.py:179
+#: InvenTree/forms.py:181
msgid "Email (again)"
msgstr "E-post (gjenta)"
-#: InvenTree/forms.py:183
+#: InvenTree/forms.py:185
msgid "Email address confirmation"
msgstr "Bekreft e-postaddresse"
-#: InvenTree/forms.py:204
+#: InvenTree/forms.py:206
msgid "You must type the same email each time."
msgstr "Du må angi samme e-post hver gang."
-#: InvenTree/forms.py:230 InvenTree/forms.py:236
+#: InvenTree/forms.py:237 InvenTree/forms.py:243
msgid "The provided primary email address is not valid."
msgstr "Den oppgitte primære e-postadressen er ikke gyldig."
-#: InvenTree/forms.py:242
+#: InvenTree/forms.py:249
msgid "The provided email domain is not approved."
msgstr "Det oppgitte e-postdomenet er ikke godkjent."
-#: InvenTree/helpers.py:462 order/models.py:442 order/models.py:611
+#: InvenTree/forms.py:345
+msgid "Registration is disabled."
+msgstr ""
+
+#: InvenTree/helpers.py:462 order/models.py:455 order/models.py:624
msgid "Invalid quantity provided"
msgstr "Ugyldig mengde oppgitt"
@@ -239,7 +243,7 @@ msgstr "Mangler eksternlenke"
#: InvenTree/models.py:486 stock/models.py:2262
#: templates/js/translated/attachment.js:119
-#: templates/js/translated/attachment.js:306
+#: templates/js/translated/attachment.js:316
msgid "Attachment"
msgstr "Vedlegg"
@@ -247,29 +251,30 @@ msgstr "Vedlegg"
msgid "Select file to attach"
msgstr "Velg fil å legge ved"
-#: InvenTree/models.py:493 common/models.py:2695 company/models.py:132
-#: company/models.py:306 company/models.py:584 order/models.py:236
-#: order/models.py:1093 order/models.py:1453 part/admin.py:39
-#: part/models.py:901 part/templates/part/part_scheduling.html:11
+#: InvenTree/models.py:493 common/models.py:2681 company/models.py:128
+#: company/models.py:381 company/models.py:455 company/models.py:733
+#: order/models.py:240 order/models.py:1106 order/models.py:1466
+#: part/admin.py:39 part/models.py:902
+#: part/templates/part/part_scheduling.html:11
#: report/templates/report/inventree_build_order_base.html:164
-#: stock/admin.py:120 templates/js/translated/company.js:977
-#: templates/js/translated/company.js:1283 templates/js/translated/order.js:351
-#: templates/js/translated/part.js:2316
-#: templates/js/translated/purchase_order.js:2008
-#: templates/js/translated/purchase_order.js:2172
-#: templates/js/translated/return_order.js:764
-#: templates/js/translated/sales_order.js:1044
-#: templates/js/translated/sales_order.js:1964
+#: stock/admin.py:120 templates/js/translated/company.js:1350
+#: templates/js/translated/company.js:1704 templates/js/translated/order.js:351
+#: templates/js/translated/part.js:2392
+#: templates/js/translated/purchase_order.js:2018
+#: templates/js/translated/purchase_order.js:2182
+#: templates/js/translated/return_order.js:776
+#: templates/js/translated/sales_order.js:1056
+#: templates/js/translated/sales_order.js:1976
msgid "Link"
msgstr "Lenke"
-#: InvenTree/models.py:494 build/models.py:291 part/models.py:902
+#: InvenTree/models.py:494 build/models.py:295 part/models.py:903
#: stock/models.py:735
msgid "Link to external URL"
msgstr "Lenke til ekstern URL"
#: InvenTree/models.py:497 templates/js/translated/attachment.js:120
-#: templates/js/translated/attachment.js:321
+#: templates/js/translated/attachment.js:331
msgid "Comment"
msgstr "Kommentar"
@@ -277,13 +282,13 @@ msgstr "Kommentar"
msgid "File comment"
msgstr "Kommentar til fil"
-#: InvenTree/models.py:503 InvenTree/models.py:504 common/models.py:2154
-#: common/models.py:2155 common/models.py:2368 common/models.py:2369
-#: common/models.py:2625 common/models.py:2626 part/models.py:3013
-#: part/models.py:3101 part/models.py:3180 part/models.py:3200
-#: plugin/models.py:217 plugin/models.py:218
+#: InvenTree/models.py:503 InvenTree/models.py:504 common/models.py:2140
+#: common/models.py:2141 common/models.py:2354 common/models.py:2355
+#: common/models.py:2611 common/models.py:2612 part/models.py:3047
+#: part/models.py:3135 part/models.py:3214 part/models.py:3234
+#: plugin/models.py:218 plugin/models.py:219
#: report/templates/report/inventree_test_report_base.html:105
-#: templates/js/translated/stock.js:2773
+#: templates/js/translated/stock.js:2904
msgid "User"
msgstr "Bruker"
@@ -324,53 +329,54 @@ msgstr "Duplikatnavn kan ikke eksistere under samme overordnede"
msgid "Invalid choice"
msgstr "Ugyldig valg"
-#: InvenTree/models.py:648 InvenTree/models.py:649 common/models.py:2354
-#: company/models.py:390 label/models.py:103 part/models.py:847
-#: part/models.py:3400 plugin/models.py:41 report/models.py:160
+#: InvenTree/models.py:648 InvenTree/models.py:649 common/models.py:2340
+#: company/models.py:539 label/models.py:111 part/models.py:848
+#: part/models.py:3434 plugin/models.py:42 report/models.py:160
#: templates/InvenTree/settings/mixins/urls.html:13
#: templates/InvenTree/settings/notifications.html:17
-#: templates/InvenTree/settings/plugin.html:80
+#: templates/InvenTree/settings/plugin.html:74
#: templates/InvenTree/settings/plugin_settings.html:22
-#: templates/js/translated/company.js:658
-#: templates/js/translated/company.js:706
-#: templates/js/translated/company.js:871
-#: templates/js/translated/company.js:1071 templates/js/translated/part.js:1160
-#: templates/js/translated/part.js:1447 templates/js/translated/part.js:1583
-#: templates/js/translated/part.js:2699 templates/js/translated/stock.js:2464
+#: templates/js/translated/company.js:665
+#: templates/js/translated/company.js:713
+#: templates/js/translated/company.js:940
+#: templates/js/translated/company.js:1196
+#: templates/js/translated/company.js:1444 templates/js/translated/part.js:1159
+#: templates/js/translated/part.js:1446 templates/js/translated/part.js:1582
+#: templates/js/translated/part.js:2684 templates/js/translated/stock.js:2595
msgid "Name"
msgstr "Navn"
-#: InvenTree/models.py:655 build/models.py:164
+#: InvenTree/models.py:655 build/models.py:168
#: build/templates/build/detail.html:24 common/models.py:111
-#: company/models.py:312 company/models.py:590
+#: company/models.py:461 company/models.py:739
#: company/templates/company/company_base.html:72
#: company/templates/company/manufacturer_part.html:75
-#: company/templates/company/supplier_part.html:108 label/models.py:110
-#: order/models.py:232 order/models.py:1117 part/admin.py:194 part/admin.py:276
-#: part/models.py:869 part/models.py:3416 part/templates/part/category.html:81
+#: company/templates/company/supplier_part.html:108 label/models.py:118
+#: order/models.py:232 order/models.py:1130 part/admin.py:194 part/admin.py:276
+#: part/models.py:870 part/models.py:3450 part/templates/part/category.html:81
#: part/templates/part/part_base.html:172
#: part/templates/part/part_scheduling.html:12 report/models.py:173
-#: report/models.py:587 report/models.py:631
+#: report/models.py:589 report/models.py:633
#: report/templates/report/inventree_build_order_base.html:117
#: stock/admin.py:41 stock/templates/stock/location.html:123
#: templates/InvenTree/settings/notifications.html:19
#: templates/InvenTree/settings/plugin_settings.html:27
#: templates/InvenTree/settings/settings_staff_js.html:75
-#: templates/js/translated/bom.js:632 templates/js/translated/bom.js:933
-#: templates/js/translated/build.js:2857 templates/js/translated/company.js:510
-#: templates/js/translated/company.js:988
-#: templates/js/translated/company.js:1251 templates/js/translated/order.js:298
-#: templates/js/translated/part.js:1212 templates/js/translated/part.js:1456
-#: templates/js/translated/part.js:1594 templates/js/translated/part.js:1933
-#: templates/js/translated/part.js:2247 templates/js/translated/part.js:2735
-#: templates/js/translated/part.js:2826
-#: templates/js/translated/purchase_order.js:1666
-#: templates/js/translated/purchase_order.js:1812
-#: templates/js/translated/purchase_order.js:1990
-#: templates/js/translated/return_order.js:302
-#: templates/js/translated/sales_order.js:790
-#: templates/js/translated/stock.js:1439 templates/js/translated/stock.js:1817
-#: templates/js/translated/stock.js:2496 templates/js/translated/stock.js:2568
+#: templates/js/translated/bom.js:633 templates/js/translated/bom.js:951
+#: templates/js/translated/build.js:2062 templates/js/translated/company.js:517
+#: templates/js/translated/company.js:1361
+#: templates/js/translated/company.js:1672 templates/js/translated/index.js:114
+#: templates/js/translated/order.js:298 templates/js/translated/part.js:1211
+#: templates/js/translated/part.js:1455 templates/js/translated/part.js:1593
+#: templates/js/translated/part.js:1932 templates/js/translated/part.js:2323
+#: templates/js/translated/part.js:2720 templates/js/translated/part.js:2811
+#: templates/js/translated/purchase_order.js:1681
+#: templates/js/translated/purchase_order.js:1827
+#: templates/js/translated/purchase_order.js:2000
+#: templates/js/translated/return_order.js:314
+#: templates/js/translated/sales_order.js:802
+#: templates/js/translated/stock.js:1438 templates/js/translated/stock.js:1974
+#: templates/js/translated/stock.js:2627 templates/js/translated/stock.js:2699
msgid "Description"
msgstr "Beskrivelse"
@@ -383,7 +389,7 @@ msgid "parent"
msgstr "overkategori"
#: InvenTree/models.py:671 InvenTree/models.py:672
-#: templates/js/translated/part.js:2744 templates/js/translated/stock.js:2505
+#: templates/js/translated/part.js:2729 templates/js/translated/stock.js:2636
msgid "Path"
msgstr "Sti"
@@ -419,12 +425,12 @@ msgstr "Serverfeil"
msgid "An error has been logged by the server."
msgstr "En feil har blitt logget av serveren."
-#: InvenTree/serializers.py:60 part/models.py:3897
+#: InvenTree/serializers.py:60 part/models.py:3941
msgid "Must be a valid number"
msgstr "Må være et gyldig tall"
-#: InvenTree/serializers.py:90 company/models.py:154
-#: company/templates/company/company_base.html:107 part/models.py:2852
+#: InvenTree/serializers.py:90 company/models.py:150
+#: company/templates/company/company_base.html:107 part/models.py:2886
#: templates/InvenTree/settings/settings_staff_js.html:44
#: templates/currency_data.html:5
msgid "Currency"
@@ -497,130 +503,130 @@ msgstr "URLtil ekstern bildefil"
msgid "Downloading images from remote URL is not enabled"
msgstr "Nedlasting av bilder fra ekstern URL er ikke aktivert"
-#: InvenTree/settings.py:714
+#: InvenTree/settings.py:741
msgid "Czech"
msgstr "Tsjekkisk"
-#: InvenTree/settings.py:715
+#: InvenTree/settings.py:742
msgid "Danish"
msgstr "Dansk"
-#: InvenTree/settings.py:716
+#: InvenTree/settings.py:743
msgid "German"
msgstr "Tysk"
-#: InvenTree/settings.py:717
+#: InvenTree/settings.py:744
msgid "Greek"
msgstr "Gresk"
-#: InvenTree/settings.py:718
+#: InvenTree/settings.py:745
msgid "English"
msgstr "Engelsk"
-#: InvenTree/settings.py:719
+#: InvenTree/settings.py:746
msgid "Spanish"
msgstr "Spansk"
-#: InvenTree/settings.py:720
+#: InvenTree/settings.py:747
msgid "Spanish (Mexican)"
msgstr "Spansk (Meksikansk)"
-#: InvenTree/settings.py:721
+#: InvenTree/settings.py:748
msgid "Farsi / Persian"
msgstr "Farsi / Persisk"
-#: InvenTree/settings.py:722
+#: InvenTree/settings.py:749
msgid "Finnish"
msgstr ""
-#: InvenTree/settings.py:723
+#: InvenTree/settings.py:750
msgid "French"
msgstr "Fransk"
-#: InvenTree/settings.py:724
+#: InvenTree/settings.py:751
msgid "Hebrew"
msgstr "Hebraisk"
-#: InvenTree/settings.py:725
+#: InvenTree/settings.py:752
msgid "Hungarian"
msgstr "Ungarsk"
-#: InvenTree/settings.py:726
+#: InvenTree/settings.py:753
msgid "Italian"
msgstr "Italiensk"
-#: InvenTree/settings.py:727
+#: InvenTree/settings.py:754
msgid "Japanese"
msgstr "Japansk"
-#: InvenTree/settings.py:728
+#: InvenTree/settings.py:755
msgid "Korean"
msgstr "Koreansk"
-#: InvenTree/settings.py:729
+#: InvenTree/settings.py:756
msgid "Dutch"
msgstr "Nederlandsk"
-#: InvenTree/settings.py:730
+#: InvenTree/settings.py:757
msgid "Norwegian"
msgstr "Norsk"
-#: InvenTree/settings.py:731
+#: InvenTree/settings.py:758
msgid "Polish"
msgstr "Polsk"
-#: InvenTree/settings.py:732
+#: InvenTree/settings.py:759
msgid "Portuguese"
msgstr "Portugisisk"
-#: InvenTree/settings.py:733
+#: InvenTree/settings.py:760
msgid "Portuguese (Brazilian)"
msgstr "Portugisisk (Brasil)"
-#: InvenTree/settings.py:734
+#: InvenTree/settings.py:761
msgid "Russian"
msgstr "Russisk"
-#: InvenTree/settings.py:735
+#: InvenTree/settings.py:762
msgid "Slovenian"
msgstr "Slovensk"
-#: InvenTree/settings.py:736
+#: InvenTree/settings.py:763
msgid "Swedish"
msgstr "Svensk"
-#: InvenTree/settings.py:737
+#: InvenTree/settings.py:764
msgid "Thai"
msgstr "Thailandsk"
-#: InvenTree/settings.py:738
+#: InvenTree/settings.py:765
msgid "Turkish"
msgstr "Tyrkisk"
-#: InvenTree/settings.py:739
+#: InvenTree/settings.py:766
msgid "Vietnamese"
msgstr "Vietnamesisk"
-#: InvenTree/settings.py:740
+#: InvenTree/settings.py:767
msgid "Chinese"
msgstr "Kinesisk"
-#: InvenTree/status.py:61 part/serializers.py:878
+#: InvenTree/status.py:68 part/serializers.py:940
msgid "Background worker check failed"
msgstr "Sjekk av bakgrunnsarbeider mislyktes"
-#: InvenTree/status.py:65
+#: InvenTree/status.py:72
msgid "Email backend not configured"
msgstr "E-post backend ikke konfigurert"
-#: InvenTree/status.py:68
+#: InvenTree/status.py:75
msgid "InvenTree system health checks failed"
msgstr "InvenTree's-systemets helsesjekker mislyktes"
#: InvenTree/status_codes.py:12 InvenTree/status_codes.py:40
#: InvenTree/status_codes.py:148 InvenTree/status_codes.py:167
#: InvenTree/status_codes.py:188 generic/states/tests.py:16
-#: templates/js/translated/table_filters.js:511
+#: templates/js/translated/table_filters.js:533
msgid "Pending"
msgstr "Ventende"
@@ -630,7 +636,7 @@ msgstr "Plassert"
#: InvenTree/status_codes.py:14 InvenTree/status_codes.py:151
#: InvenTree/status_codes.py:172 generic/states/tests.py:18
-#: order/templates/order/order_base.html:162
+#: order/templates/order/order_base.html:158
#: order/templates/order/sales_order_base.html:162
msgid "Complete"
msgstr "Fullført"
@@ -654,10 +660,10 @@ msgstr "Returnert"
msgid "In Progress"
msgstr "Pågående"
-#: InvenTree/status_codes.py:42 order/models.py:1332
-#: templates/js/translated/sales_order.js:1509
-#: templates/js/translated/sales_order.js:1630
-#: templates/js/translated/sales_order.js:1934
+#: InvenTree/status_codes.py:42 order/models.py:1345
+#: templates/js/translated/sales_order.js:1521
+#: templates/js/translated/sales_order.js:1642
+#: templates/js/translated/sales_order.js:1946
msgid "Shipped"
msgstr "Sendt"
@@ -689,7 +695,7 @@ msgstr "I Karantene"
msgid "Legacy stock tracking entry"
msgstr "Gammel lagervare sporingsoppføring"
-#: InvenTree/status_codes.py:93 templates/js/translated/stock.js:511
+#: InvenTree/status_codes.py:93 templates/js/translated/stock.js:510
msgid "Stock item created"
msgstr "Lagevare opprettet"
@@ -745,7 +751,7 @@ msgstr "Skill ut fra overordnet artikkel"
msgid "Split child item"
msgstr "Skill ut fra underartikkel"
-#: InvenTree/status_codes.py:120 templates/js/translated/stock.js:2243
+#: InvenTree/status_codes.py:120 templates/js/translated/stock.js:1769
msgid "Merged stock items"
msgstr "Sammenslåtte lagervarer"
@@ -765,7 +771,7 @@ msgstr "Build ordreutg fullført"
msgid "Build order output rejected"
msgstr ""
-#: InvenTree/status_codes.py:129 templates/js/translated/stock.js:1676
+#: InvenTree/status_codes.py:129 templates/js/translated/stock.js:1675
msgid "Consumed by build order"
msgstr "Antatt som byggeordre"
@@ -781,7 +787,7 @@ msgstr "Mottatt mot innkjøpsordre"
msgid "Returned against Return Order"
msgstr "Returnert mot returordre"
-#: InvenTree/status_codes.py:141 templates/js/translated/table_filters.js:321
+#: InvenTree/status_codes.py:141 templates/js/translated/table_filters.js:327
msgid "Sent to customer"
msgstr "Sendt til kunde"
@@ -849,83 +855,111 @@ msgstr "Passordfeltene må samsvare"
msgid "Wrong password provided"
msgstr "Feil passord angitt"
-#: InvenTree/views.py:651 templates/navbar.html:157
+#: InvenTree/views.py:653 templates/navbar.html:157
msgid "System Information"
msgstr "Systeminformasjon"
-#: InvenTree/views.py:658 templates/navbar.html:168
+#: InvenTree/views.py:660 templates/navbar.html:168
msgid "About InvenTree"
msgstr "Om InvenTree"
-#: build/api.py:222
+#: build/api.py:242
msgid "Build must be cancelled before it can be deleted"
msgstr "Bygningen må avbrytes før den kan slettes"
-#: build/models.py:69 build/templates/build/build_base.html:9
+#: build/api.py:286 part/models.py:3833 templates/js/translated/bom.js:985
+#: templates/js/translated/bom.js:1025 templates/js/translated/build.js:2449
+#: templates/js/translated/table_filters.js:166
+#: templates/js/translated/table_filters.js:518
+msgid "Consumable"
+msgstr "Forbruksvare"
+
+#: build/api.py:287 part/models.py:3827 part/templates/part/upload_bom.html:58
+#: templates/js/translated/bom.js:989 templates/js/translated/bom.js:1016
+#: templates/js/translated/build.js:2458
+#: templates/js/translated/table_filters.js:162
+#: templates/js/translated/table_filters.js:191
+#: templates/js/translated/table_filters.js:522
+msgid "Optional"
+msgstr "Valgfritt"
+
+#: build/api.py:288 templates/js/translated/table_filters.js:360
+#: templates/js/translated/table_filters.js:514
+msgid "Tracked"
+msgstr ""
+
+#: build/api.py:290 part/admin.py:64 templates/js/translated/build.js:1670
+#: templates/js/translated/build.js:2549
+#: templates/js/translated/sales_order.js:1918
+#: templates/js/translated/table_filters.js:506
+msgid "Allocated"
+msgstr ""
+
+#: build/models.py:73 build/templates/build/build_base.html:9
#: build/templates/build/build_base.html:27
#: report/templates/report/inventree_build_order_base.html:105
#: templates/email/build_order_completed.html:16
#: templates/email/overdue_build_order.html:15
-#: templates/js/translated/build.js:945 templates/js/translated/stock.js:2629
+#: templates/js/translated/build.js:953 templates/js/translated/stock.js:2760
msgid "Build Order"
msgstr "Build ordre"
-#: build/models.py:70 build/templates/build/build_base.html:13
+#: build/models.py:74 build/templates/build/build_base.html:13
#: build/templates/build/index.html:8 build/templates/build/index.html:12
-#: order/templates/order/sales_order_detail.html:119
+#: order/templates/order/sales_order_detail.html:111
#: order/templates/order/so_sidebar.html:13
-#: part/templates/part/part_sidebar.html:22 templates/InvenTree/index.html:244
+#: part/templates/part/part_sidebar.html:22 templates/InvenTree/index.html:196
#: templates/InvenTree/search.html:141
#: templates/InvenTree/settings/sidebar.html:53
-#: templates/js/translated/search.js:228 users/models.py:42
+#: templates/js/translated/search.js:186 users/models.py:42
msgid "Build Orders"
msgstr "Build Ordre"
-#: build/models.py:111
+#: build/models.py:115
msgid "Invalid choice for parent build"
msgstr "Ugylding valg for overordnet build"
-#: build/models.py:155
+#: build/models.py:159
msgid "Build Order Reference"
msgstr "Bygg ordrereferanse"
-#: build/models.py:156 order/models.py:359 order/models.py:765
-#: order/models.py:1087 order/models.py:1724 part/admin.py:278
-#: part/models.py:3798 part/templates/part/upload_bom.html:54
+#: build/models.py:160 order/models.py:372 order/models.py:778
+#: order/models.py:1100 order/models.py:1737 part/admin.py:278
+#: part/models.py:3842 part/templates/part/upload_bom.html:54
#: report/templates/report/inventree_bill_of_materials_report.html:139
#: report/templates/report/inventree_po_report_base.html:28
#: report/templates/report/inventree_return_order_report_base.html:26
#: report/templates/report/inventree_so_report_base.html:28
-#: templates/js/translated/bom.js:769 templates/js/translated/bom.js:943
-#: templates/js/translated/build.js:2098 templates/js/translated/order.js:291
+#: templates/js/translated/bom.js:770 templates/js/translated/bom.js:961
+#: templates/js/translated/build.js:2441 templates/js/translated/order.js:291
#: templates/js/translated/pricing.js:386
-#: templates/js/translated/purchase_order.js:2033
-#: templates/js/translated/return_order.js:713
-#: templates/js/translated/sales_order.js:1798
+#: templates/js/translated/purchase_order.js:2043
+#: templates/js/translated/return_order.js:725
+#: templates/js/translated/sales_order.js:1810
msgid "Reference"
msgstr "Referanse"
-#: build/models.py:167
+#: build/models.py:171
msgid "Brief description of the build (optional)"
msgstr "Kort beskrivelse av produksjonen (valgfritt)"
-#: build/models.py:175 build/templates/build/build_base.html:183
+#: build/models.py:179 build/templates/build/build_base.html:184
#: build/templates/build/detail.html:87
msgid "Parent Build"
msgstr "Overordnet build"
-#: build/models.py:176
+#: build/models.py:180
msgid "BuildOrder to which this build is allocated"
msgstr "Build order som denne build er tildelt til"
-#: build/models.py:181 build/templates/build/build_base.html:98
-#: build/templates/build/detail.html:29 company/models.py:775
-#: order/models.py:1195 order/models.py:1311 order/models.py:1312
-#: part/models.py:391 part/models.py:2865 part/models.py:2979
-#: part/models.py:3119 part/models.py:3138 part/models.py:3157
-#: part/models.py:3178 part/models.py:3270 part/models.py:3555
-#: part/models.py:3663 part/models.py:3763 part/models.py:4077
-#: part/serializers.py:842 part/serializers.py:1245
+#: build/models.py:185 build/templates/build/build_base.html:98
+#: build/templates/build/detail.html:29 company/models.py:924
+#: order/models.py:1208 order/models.py:1324 order/models.py:1325
+#: part/models.py:392 part/models.py:2899 part/models.py:3013
+#: part/models.py:3153 part/models.py:3172 part/models.py:3191
+#: part/models.py:3212 part/models.py:3304 part/models.py:3589
+#: part/models.py:3712 part/models.py:3807 part/models.py:4121
+#: part/serializers.py:904 part/serializers.py:1307
#: part/templates/part/part_app_base.html:8
#: part/templates/part/part_pricing.html:12
#: part/templates/part/upload_bom.html:52
@@ -935,266 +969,229 @@ msgstr "Build order som denne build er tildelt til"
#: report/templates/report/inventree_po_report_base.html:27
#: report/templates/report/inventree_return_order_report_base.html:24
#: report/templates/report/inventree_so_report_base.html:27
-#: stock/serializers.py:156 stock/serializers.py:509
+#: stock/serializers.py:205 stock/serializers.py:576
#: templates/InvenTree/search.html:82
#: templates/email/build_order_completed.html:17
#: templates/email/build_order_required_stock.html:17
#: templates/email/low_stock_notification.html:15
#: templates/email/overdue_build_order.html:16
-#: templates/js/translated/barcode.js:529 templates/js/translated/bom.js:631
-#: templates/js/translated/bom.js:768 templates/js/translated/bom.js:887
-#: templates/js/translated/build.js:1403 templates/js/translated/build.js:1965
-#: templates/js/translated/build.js:2464 templates/js/translated/build.js:2868
-#: templates/js/translated/company.js:337
-#: templates/js/translated/company.js:822
-#: templates/js/translated/company.js:929
-#: templates/js/translated/company.js:1169 templates/js/translated/part.js:1918
-#: templates/js/translated/part.js:1990 templates/js/translated/part.js:2216
-#: templates/js/translated/pricing.js:369
-#: templates/js/translated/purchase_order.js:746
-#: templates/js/translated/purchase_order.js:1274
-#: templates/js/translated/purchase_order.js:1811
-#: templates/js/translated/purchase_order.js:1975
-#: templates/js/translated/return_order.js:527
-#: templates/js/translated/return_order.js:694
-#: templates/js/translated/sales_order.js:285
-#: templates/js/translated/sales_order.js:1185
-#: templates/js/translated/sales_order.js:1584
-#: templates/js/translated/sales_order.js:1782
-#: templates/js/translated/stock.js:643 templates/js/translated/stock.js:809
-#: templates/js/translated/stock.js:1021 templates/js/translated/stock.js:1773
-#: templates/js/translated/stock.js:2594 templates/js/translated/stock.js:2831
-#: templates/js/translated/stock.js:2968
+#: templates/js/translated/barcode.js:529 templates/js/translated/bom.js:632
+#: templates/js/translated/bom.js:769 templates/js/translated/bom.js:905
+#: templates/js/translated/build.js:1289 templates/js/translated/build.js:1669
+#: templates/js/translated/build.js:2085 templates/js/translated/build.js:2261
+#: templates/js/translated/company.js:347
+#: templates/js/translated/company.js:1147
+#: templates/js/translated/company.js:1302
+#: templates/js/translated/company.js:1590 templates/js/translated/index.js:104
+#: templates/js/translated/part.js:1917 templates/js/translated/part.js:1989
+#: templates/js/translated/part.js:2292 templates/js/translated/pricing.js:369
+#: templates/js/translated/purchase_order.js:757
+#: templates/js/translated/purchase_order.js:1289
+#: templates/js/translated/purchase_order.js:1826
+#: templates/js/translated/purchase_order.js:1985
+#: templates/js/translated/return_order.js:539
+#: templates/js/translated/return_order.js:706
+#: templates/js/translated/sales_order.js:297
+#: templates/js/translated/sales_order.js:1197
+#: templates/js/translated/sales_order.js:1596
+#: templates/js/translated/sales_order.js:1794
+#: templates/js/translated/stock.js:642 templates/js/translated/stock.js:808
+#: templates/js/translated/stock.js:1020 templates/js/translated/stock.js:1913
+#: templates/js/translated/stock.js:2725 templates/js/translated/stock.js:2958
+#: templates/js/translated/stock.js:3095
msgid "Part"
msgstr "Del"
-#: build/models.py:189
+#: build/models.py:193
msgid "Select part to build"
msgstr "Velg del å produsere"
-#: build/models.py:194
+#: build/models.py:198
msgid "Sales Order Reference"
msgstr "Salgsordrereferanse"
-#: build/models.py:198
+#: build/models.py:202
msgid "SalesOrder to which this build is allocated"
msgstr "Salgsordren denne produksjonen er tildelt til"
-#: build/models.py:203 build/serializers.py:942
-#: templates/js/translated/build.js:2452
-#: templates/js/translated/sales_order.js:1173
+#: build/models.py:207 build/serializers.py:946
+#: templates/js/translated/build.js:1657
+#: templates/js/translated/sales_order.js:1185
msgid "Source Location"
msgstr "Kildeplassering"
-#: build/models.py:207
+#: build/models.py:211
msgid "Select location to take stock from for this build (leave blank to take from any stock location)"
msgstr "Velg plassering å ta lagerbeholdning fra for denne produksjonen (la stå tomt for a ta fra alle lagerplasseringer)"
-#: build/models.py:212
+#: build/models.py:216
msgid "Destination Location"
msgstr "Fullført plassering"
-#: build/models.py:216
+#: build/models.py:220
msgid "Select location where the completed items will be stored"
msgstr "Velg plassering der fullførte artikler vil bli lagret"
-#: build/models.py:220
+#: build/models.py:224
msgid "Build Quantity"
msgstr "Produksjonsmengde"
-#: build/models.py:223
+#: build/models.py:227
msgid "Number of stock items to build"
msgstr "Antall lagervarer å produsere"
-#: build/models.py:227
+#: build/models.py:231
msgid "Completed items"
msgstr "Fullførte artikler"
-#: build/models.py:229
+#: build/models.py:233
msgid "Number of stock items which have been completed"
msgstr "Antall lagervarer som er fullført"
-#: build/models.py:233
+#: build/models.py:237
msgid "Build Status"
msgstr "Produksjonsstatus"
-#: build/models.py:237
+#: build/models.py:241
msgid "Build status code"
msgstr "Produksjonsstatuskode"
-#: build/models.py:246 build/serializers.py:269 order/serializers.py:506
-#: stock/models.py:739 templates/js/translated/purchase_order.js:1099
+#: build/models.py:250 build/serializers.py:277 order/serializers.py:512
+#: stock/models.py:739 templates/js/translated/purchase_order.js:1114
msgid "Batch Code"
msgstr "Batchkode"
-#: build/models.py:250 build/serializers.py:270
+#: build/models.py:254 build/serializers.py:278
msgid "Batch code for this build output"
msgstr "Batchkode for denne produksjonsartikkelen"
-#: build/models.py:253 order/models.py:244 part/models.py:1038
+#: build/models.py:257 order/models.py:248 part/models.py:1039
#: part/templates/part/part_base.html:312
-#: templates/js/translated/return_order.js:327
-#: templates/js/translated/sales_order.js:815
+#: templates/js/translated/return_order.js:339
+#: templates/js/translated/sales_order.js:827
msgid "Creation Date"
msgstr "Opprettelsesdato"
-#: build/models.py:257
+#: build/models.py:261
msgid "Target completion date"
msgstr "Forventet sluttdato"
-#: build/models.py:258
+#: build/models.py:262
msgid "Target date for build completion. Build will be overdue after this date."
msgstr "Forventet dato for ferdigstillelse. Build er forvalt etter denne datoen."
-#: build/models.py:261 order/models.py:409 order/models.py:1767
-#: templates/js/translated/build.js:2953
+#: build/models.py:265 order/models.py:422 order/models.py:1780
+#: templates/js/translated/build.js:2170
msgid "Completion Date"
msgstr "Fullført dato"
-#: build/models.py:267
+#: build/models.py:271
msgid "completed by"
msgstr "fullført av"
-#: build/models.py:275 templates/js/translated/build.js:2913
+#: build/models.py:279 templates/js/translated/build.js:2130
msgid "Issued by"
msgstr "Utstedt av"
-#: build/models.py:276
+#: build/models.py:280
msgid "User who issued this build order"
msgstr "Brukeren som utstede denne prosjekt order"
-#: build/models.py:284 build/templates/build/build_base.html:204
-#: build/templates/build/detail.html:122 order/models.py:258
-#: order/templates/order/order_base.html:214
-#: order/templates/order/return_order_base.html:182
-#: order/templates/order/sales_order_base.html:222 part/models.py:1042
+#: build/models.py:288 build/templates/build/build_base.html:205
+#: build/templates/build/detail.html:122 order/models.py:262
+#: order/templates/order/order_base.html:217
+#: order/templates/order/return_order_base.html:189
+#: order/templates/order/sales_order_base.html:229 part/models.py:1043
#: part/templates/part/part_base.html:392
#: report/templates/report/inventree_build_order_base.html:158
-#: templates/js/translated/build.js:2925
-#: templates/js/translated/purchase_order.js:1723
-#: templates/js/translated/return_order.js:347
-#: templates/js/translated/table_filters.js:461
+#: templates/js/translated/build.js:2142
+#: templates/js/translated/purchase_order.js:1738
+#: templates/js/translated/return_order.js:359
+#: templates/js/translated/table_filters.js:467
msgid "Responsible"
msgstr "Ansvarlig"
-#: build/models.py:285
+#: build/models.py:289
msgid "User or group responsible for this build order"
msgstr "Bruker eller gruppe ansvarlig for produksjonsordren"
-#: build/models.py:290 build/templates/build/detail.html:108
+#: build/models.py:294 build/templates/build/detail.html:108
#: company/templates/company/manufacturer_part.html:107
#: company/templates/company/supplier_part.html:195
-#: order/templates/order/order_base.html:171
+#: order/templates/order/order_base.html:167
#: order/templates/order/return_order_base.html:146
#: order/templates/order/sales_order_base.html:181
#: part/templates/part/part_base.html:385 stock/models.py:733
#: stock/templates/stock/item_base.html:201
+#: templates/js/translated/company.js:1050
msgid "External Link"
msgstr "Ekstern lenke"
-#: build/models.py:295
+#: build/models.py:299
msgid "Build Priority"
msgstr "Produksjonsprioritet"
-#: build/models.py:298
+#: build/models.py:302
msgid "Priority of this build order"
msgstr "Produksjonsordrens prioritet"
-#: build/models.py:536
+#: build/models.py:309 common/models.py:104 order/admin.py:17
+#: order/models.py:237 templates/InvenTree/settings/settings_staff_js.html:70
+#: templates/js/translated/build.js:2067
+#: templates/js/translated/purchase_order.js:1685
+#: templates/js/translated/return_order.js:318
+#: templates/js/translated/sales_order.js:806
+#: templates/js/translated/table_filters.js:24
+#: templates/project_code_data.html:6
+msgid "Project Code"
+msgstr "Prosjektkode"
+
+#: build/models.py:310
+msgid "Project code for this build order"
+msgstr ""
+
+#: build/models.py:545
#, python-brace-format
msgid "Build order {build} has been completed"
msgstr "Byggeordre {build} er fullført"
-#: build/models.py:542
+#: build/models.py:551
msgid "A build order has been completed"
msgstr "Byggeordre er fullført"
-#: build/models.py:744 build/models.py:811
+#: build/models.py:753 build/models.py:831
msgid "No build output specified"
msgstr "Ingen prosjekt utgang"
-#: build/models.py:747
+#: build/models.py:756
msgid "Build output is already completed"
msgstr "Prosjekt utdata er allerede utfylt"
-#: build/models.py:750
+#: build/models.py:759
msgid "Build output does not match Build Order"
msgstr "Prosjekt utdata samsvarer ikke Prosjekt Order"
-#: build/models.py:815 build/serializers.py:212 build/serializers.py:251
-#: build/serializers.py:811 order/models.py:440 order/serializers.py:379
-#: order/serializers.py:501 part/serializers.py:1087 part/serializers.py:1408
-#: stock/models.py:593 stock/models.py:1387 stock/serializers.py:315
+#: build/models.py:835 build/serializers.py:220 build/serializers.py:259
+#: build/serializers.py:819 order/models.py:453 order/serializers.py:385
+#: order/serializers.py:507 part/serializers.py:1149 part/serializers.py:1470
+#: stock/models.py:593 stock/models.py:1387 stock/serializers.py:381
msgid "Quantity must be greater than zero"
msgstr "Mengden må være større enn null"
-#: build/models.py:820 build/serializers.py:217
+#: build/models.py:840 build/serializers.py:225
msgid "Quantity cannot be greater than the output quantity"
msgstr ""
-#: build/models.py:1272
-msgid "Build item must specify a build output, as master part is marked as trackable"
-msgstr "Prosjektvare må spesifisere en prosjekt utdata, siden hovedvaren er markert som sporbar"
+#: build/models.py:1260
+msgid "Build object"
+msgstr ""
-#: build/models.py:1281
-#, python-brace-format
-msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})"
-msgstr "Tildelt antall ({q}) kan ikke overstige tilgjengelig lagerbeholdning ({a})"
-
-#: build/models.py:1291 order/models.py:1601
-msgid "Stock item is over-allocated"
-msgstr "Lagervaren er overtildelt"
-
-#: build/models.py:1297 order/models.py:1604
-msgid "Allocation quantity must be greater than zero"
-msgstr "Tildelingsantall må være større enn null"
-
-#: build/models.py:1303
-msgid "Quantity must be 1 for serialized stock"
-msgstr "Mengden må være 1 for serialisert lagervare"
-
-#: build/models.py:1360
-msgid "Selected stock item not found in BOM"
-msgstr "Valgt lagevare ikke funnet i BOM"
-
-#: build/models.py:1438 stock/templates/stock/item_base.html:170
-#: templates/InvenTree/search.html:139 templates/js/translated/build.js:2841
-#: templates/navbar.html:38
-msgid "Build"
-msgstr "Produksjon"
-
-#: build/models.py:1439
-msgid "Build to allocate parts"
-msgstr "Bygge for å tildele deler"
-
-#: build/models.py:1455 build/serializers.py:791 order/serializers.py:1059
-#: order/serializers.py:1080 stock/serializers.py:413 stock/serializers.py:770
-#: stock/serializers.py:896 stock/templates/stock/item_base.html:10
-#: stock/templates/stock/item_base.html:23
-#: stock/templates/stock/item_base.html:195
-#: templates/js/translated/build.js:955 templates/js/translated/build.js:960
-#: templates/js/translated/build.js:2466 templates/js/translated/build.js:3038
-#: templates/js/translated/sales_order.js:286
-#: templates/js/translated/sales_order.js:1186
-#: templates/js/translated/sales_order.js:1485
-#: templates/js/translated/sales_order.js:1490
-#: templates/js/translated/sales_order.js:1591
-#: templates/js/translated/sales_order.js:1678
-#: templates/js/translated/stock.js:644 templates/js/translated/stock.js:810
-#: templates/js/translated/stock.js:2714
-msgid "Stock Item"
-msgstr "Lagervare"
-
-#: build/models.py:1456
-msgid "Source stock item"
-msgstr "Kildelagervare"
-
-#: build/models.py:1468 build/serializers.py:198 build/serializers.py:236
-#: build/templates/build/build_base.html:103
-#: build/templates/build/detail.html:34 common/models.py:2176
-#: order/models.py:1073 order/models.py:1645 order/serializers.py:1233
+#: build/models.py:1274 build/models.py:1556 build/serializers.py:206
+#: build/serializers.py:244 build/templates/build/build_base.html:103
+#: build/templates/build/detail.html:34 common/models.py:2162
+#: order/models.py:1086 order/models.py:1658 order/serializers.py:1239
#: order/templates/order/order_wizard/match_parts.html:30 part/admin.py:277
-#: part/forms.py:47 part/models.py:2992 part/models.py:3779
+#: part/forms.py:47 part/models.py:3026 part/models.py:3823
#: part/templates/part/part_pricing.html:16
#: part/templates/part/upload_bom.html:53
#: report/templates/report/inventree_bill_of_materials_report.html:138
@@ -1203,315 +1200,367 @@ msgstr "Kildelagervare"
#: report/templates/report/inventree_so_report_base.html:29
#: report/templates/report/inventree_test_report_base.html:90
#: report/templates/report/inventree_test_report_base.html:170
-#: stock/admin.py:103 stock/serializers.py:306
+#: stock/admin.py:103 stock/serializers.py:372
#: stock/templates/stock/item_base.html:288
#: stock/templates/stock/item_base.html:296
#: stock/templates/stock/item_base.html:343
#: templates/email/build_order_completed.html:18
-#: templates/js/translated/barcode.js:531 templates/js/translated/bom.js:770
-#: templates/js/translated/bom.js:951 templates/js/translated/build.js:504
-#: templates/js/translated/build.js:716 templates/js/translated/build.js:982
-#: templates/js/translated/build.js:1425 templates/js/translated/build.js:1991
-#: templates/js/translated/build.js:2467
-#: templates/js/translated/company.js:1428
-#: templates/js/translated/model_renderers.js:207
-#: templates/js/translated/order.js:304 templates/js/translated/part.js:935
-#: templates/js/translated/part.js:1784 templates/js/translated/part.js:3263
+#: templates/js/translated/barcode.js:531 templates/js/translated/bom.js:771
+#: templates/js/translated/bom.js:969 templates/js/translated/build.js:510
+#: templates/js/translated/build.js:722 templates/js/translated/build.js:1308
+#: templates/js/translated/build.js:1672 templates/js/translated/build.js:2283
+#: templates/js/translated/company.js:1849
+#: templates/js/translated/model_renderers.js:221
+#: templates/js/translated/order.js:304 templates/js/translated/part.js:934
+#: templates/js/translated/part.js:1783 templates/js/translated/part.js:3248
#: templates/js/translated/pricing.js:381
#: templates/js/translated/pricing.js:474
#: templates/js/translated/pricing.js:522
#: templates/js/translated/pricing.js:616
-#: templates/js/translated/purchase_order.js:749
-#: templates/js/translated/purchase_order.js:1815
-#: templates/js/translated/purchase_order.js:2039
-#: templates/js/translated/sales_order.js:302
-#: templates/js/translated/sales_order.js:1187
-#: templates/js/translated/sales_order.js:1504
-#: templates/js/translated/sales_order.js:1594
-#: templates/js/translated/sales_order.js:1684
-#: templates/js/translated/sales_order.js:1804
-#: templates/js/translated/stock.js:531 templates/js/translated/stock.js:669
-#: templates/js/translated/stock.js:840 templates/js/translated/stock.js:2758
-#: templates/js/translated/stock.js:2843
+#: templates/js/translated/purchase_order.js:760
+#: templates/js/translated/purchase_order.js:1830
+#: templates/js/translated/purchase_order.js:2049
+#: templates/js/translated/sales_order.js:314
+#: templates/js/translated/sales_order.js:1199
+#: templates/js/translated/sales_order.js:1516
+#: templates/js/translated/sales_order.js:1606
+#: templates/js/translated/sales_order.js:1696
+#: templates/js/translated/sales_order.js:1816
+#: templates/js/translated/stock.js:530 templates/js/translated/stock.js:668
+#: templates/js/translated/stock.js:839 templates/js/translated/stock.js:2889
+#: templates/js/translated/stock.js:2970
msgid "Quantity"
msgstr "Antall"
-#: build/models.py:1469
+#: build/models.py:1275
+msgid "Required quantity for build order"
+msgstr ""
+
+#: build/models.py:1357
+msgid "Build item must specify a build output, as master part is marked as trackable"
+msgstr "Prosjektvare må spesifisere en prosjekt utdata, siden hovedvaren er markert som sporbar"
+
+#: build/models.py:1366
+#, python-brace-format
+msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})"
+msgstr "Tildelt antall ({q}) kan ikke overstige tilgjengelig lagerbeholdning ({a})"
+
+#: build/models.py:1376 order/models.py:1614
+msgid "Stock item is over-allocated"
+msgstr "Lagervaren er overtildelt"
+
+#: build/models.py:1382 order/models.py:1617
+msgid "Allocation quantity must be greater than zero"
+msgstr "Tildelingsantall må være større enn null"
+
+#: build/models.py:1388
+msgid "Quantity must be 1 for serialized stock"
+msgstr "Mengden må være 1 for serialisert lagervare"
+
+#: build/models.py:1449
+msgid "Selected stock item does not match BOM line"
+msgstr ""
+
+#: build/models.py:1543 build/serializers.py:799 order/serializers.py:1065
+#: order/serializers.py:1086 stock/serializers.py:479 stock/serializers.py:887
+#: stock/serializers.py:1013 stock/templates/stock/item_base.html:10
+#: stock/templates/stock/item_base.html:23
+#: stock/templates/stock/item_base.html:195
+#: templates/js/translated/build.js:1671
+#: templates/js/translated/sales_order.js:298
+#: templates/js/translated/sales_order.js:1198
+#: templates/js/translated/sales_order.js:1497
+#: templates/js/translated/sales_order.js:1502
+#: templates/js/translated/sales_order.js:1603
+#: templates/js/translated/sales_order.js:1690
+#: templates/js/translated/stock.js:643 templates/js/translated/stock.js:809
+#: templates/js/translated/stock.js:2845
+msgid "Stock Item"
+msgstr "Lagervare"
+
+#: build/models.py:1544
+msgid "Source stock item"
+msgstr "Kildelagervare"
+
+#: build/models.py:1557
msgid "Stock quantity to allocate to build"
msgstr "Lagerantall å tildele til produksjonen"
-#: build/models.py:1477
+#: build/models.py:1565
msgid "Install into"
msgstr "Monteres i"
-#: build/models.py:1478
+#: build/models.py:1566
msgid "Destination stock item"
msgstr "Lagervare for montering"
-#: build/serializers.py:148 build/serializers.py:820
-#: templates/js/translated/build.js:1413
+#: build/serializers.py:156 build/serializers.py:828
+#: templates/js/translated/build.js:1299
msgid "Build Output"
msgstr "Produksjonsartikkel"
-#: build/serializers.py:160
+#: build/serializers.py:168
msgid "Build output does not match the parent build"
msgstr "Produksjonsartikkel samsvarer ikke med overordnet produksjon"
-#: build/serializers.py:164
+#: build/serializers.py:172
msgid "Output part does not match BuildOrder part"
msgstr "Resultatdel samsvarer ikke med produksjonsordredel"
-#: build/serializers.py:168
+#: build/serializers.py:176
msgid "This build output has already been completed"
msgstr "Denne produksjonsartikkelen er allerede fullført"
-#: build/serializers.py:179
+#: build/serializers.py:187
msgid "This build output is not fully allocated"
msgstr "Denne produksjonsartikkelen er ikke fullt tildelt"
-#: build/serializers.py:199 build/serializers.py:237
+#: build/serializers.py:207 build/serializers.py:245
msgid "Enter quantity for build output"
msgstr "Angi antall for produksjonsartikkel"
-#: build/serializers.py:258
+#: build/serializers.py:266
msgid "Integer quantity required for trackable parts"
msgstr "Heltallsverdi kreves for sporbare deler"
-#: build/serializers.py:261
+#: build/serializers.py:269
msgid "Integer quantity required, as the bill of materials contains trackable parts"
msgstr "Heltallsverdi kreves, da stykklisten inneholder sporbare deler"
-#: build/serializers.py:276 order/serializers.py:514 order/serializers.py:1237
-#: stock/serializers.py:324 templates/js/translated/purchase_order.js:1123
-#: templates/js/translated/stock.js:334 templates/js/translated/stock.js:532
+#: build/serializers.py:284 order/serializers.py:520 order/serializers.py:1243
+#: stock/serializers.py:390 templates/js/translated/purchase_order.js:1138
+#: templates/js/translated/stock.js:333 templates/js/translated/stock.js:531
msgid "Serial Numbers"
msgstr "Serienummer"
-#: build/serializers.py:277
+#: build/serializers.py:285
msgid "Enter serial numbers for build outputs"
msgstr "Angi serienummer for produksjonsartikler"
-#: build/serializers.py:290
+#: build/serializers.py:298
msgid "Auto Allocate Serial Numbers"
msgstr "Automatisk tildeling av serienummer"
-#: build/serializers.py:291
+#: build/serializers.py:299
msgid "Automatically allocate required items with matching serial numbers"
msgstr "Automatisk tildeling av nødvendige artikler med tilsvarende serienummer"
-#: build/serializers.py:326 stock/api.py:670
+#: build/serializers.py:334 stock/api.py:707
msgid "The following serial numbers already exist or are invalid"
msgstr "Følgende serienummer finnes allerede eller er ugyldige"
-#: build/serializers.py:377 build/serializers.py:439 build/serializers.py:518
+#: build/serializers.py:385 build/serializers.py:447 build/serializers.py:526
msgid "A list of build outputs must be provided"
msgstr "En liste over produksjonsartikler må oppgis"
-#: build/serializers.py:415 build/serializers.py:488 order/serializers.py:487
-#: order/serializers.py:606 order/serializers.py:1588 part/serializers.py:854
-#: stock/serializers.py:335 stock/serializers.py:470 stock/serializers.py:551
-#: stock/serializers.py:931 stock/serializers.py:1173
+#: build/serializers.py:423 build/serializers.py:496 order/serializers.py:493
+#: order/serializers.py:612 order/serializers.py:1594 part/serializers.py:916
+#: stock/serializers.py:401 stock/serializers.py:537 stock/serializers.py:618
+#: stock/serializers.py:1048 stock/serializers.py:1290
#: stock/templates/stock/item_base.html:390
#: templates/js/translated/barcode.js:530
-#: templates/js/translated/barcode.js:778 templates/js/translated/build.js:967
-#: templates/js/translated/build.js:2006
-#: templates/js/translated/purchase_order.js:1148
-#: templates/js/translated/purchase_order.js:1238
-#: templates/js/translated/sales_order.js:1497
-#: templates/js/translated/sales_order.js:1605
-#: templates/js/translated/sales_order.js:1613
-#: templates/js/translated/sales_order.js:1692
-#: templates/js/translated/stock.js:645 templates/js/translated/stock.js:811
-#: templates/js/translated/stock.js:1023 templates/js/translated/stock.js:1937
-#: templates/js/translated/stock.js:2608
+#: templates/js/translated/barcode.js:778 templates/js/translated/build.js:980
+#: templates/js/translated/build.js:2298
+#: templates/js/translated/purchase_order.js:1163
+#: templates/js/translated/purchase_order.js:1253
+#: templates/js/translated/sales_order.js:1509
+#: templates/js/translated/sales_order.js:1617
+#: templates/js/translated/sales_order.js:1625
+#: templates/js/translated/sales_order.js:1704
+#: templates/js/translated/stock.js:644 templates/js/translated/stock.js:810
+#: templates/js/translated/stock.js:1022 templates/js/translated/stock.js:2094
+#: templates/js/translated/stock.js:2739
msgid "Location"
msgstr "Plassering"
-#: build/serializers.py:416
+#: build/serializers.py:424
msgid "Stock location for scrapped outputs"
msgstr ""
-#: build/serializers.py:422
+#: build/serializers.py:430
msgid "Discard Allocations"
msgstr ""
-#: build/serializers.py:423
+#: build/serializers.py:431
msgid "Discard any stock allocations for scrapped outputs"
msgstr ""
-#: build/serializers.py:428
+#: build/serializers.py:436
msgid "Reason for scrapping build output(s)"
msgstr ""
-#: build/serializers.py:489
+#: build/serializers.py:497
msgid "Location for completed build outputs"
msgstr "Plassering for ferdige produksjonsartikler"
-#: build/serializers.py:495 build/templates/build/build_base.html:151
-#: build/templates/build/detail.html:62 order/models.py:791
-#: order/models.py:1750 order/serializers.py:524 stock/admin.py:106
-#: stock/templates/stock/item_base.html:423
-#: templates/js/translated/barcode.js:252 templates/js/translated/build.js:2897
-#: templates/js/translated/purchase_order.js:1278
-#: templates/js/translated/purchase_order.js:1682
-#: templates/js/translated/return_order.js:319
-#: templates/js/translated/sales_order.js:807
-#: templates/js/translated/stock.js:1912 templates/js/translated/stock.js:2732
-#: templates/js/translated/stock.js:2859
+#: build/serializers.py:503 build/templates/build/build_base.html:152
+#: build/templates/build/detail.html:62 order/models.py:804
+#: order/models.py:1763 order/serializers.py:530 stock/admin.py:106
+#: stock/serializers.py:677 stock/templates/stock/item_base.html:423
+#: templates/js/translated/barcode.js:252 templates/js/translated/build.js:2114
+#: templates/js/translated/purchase_order.js:1293
+#: templates/js/translated/purchase_order.js:1697
+#: templates/js/translated/return_order.js:331
+#: templates/js/translated/sales_order.js:819
+#: templates/js/translated/stock.js:2069 templates/js/translated/stock.js:2863
+#: templates/js/translated/stock.js:2986
msgid "Status"
msgstr "Status"
-#: build/serializers.py:501
+#: build/serializers.py:509
msgid "Accept Incomplete Allocation"
msgstr "Godta ufullstendig tildeling"
-#: build/serializers.py:502
+#: build/serializers.py:510
msgid "Complete outputs if stock has not been fully allocated"
msgstr "Fullfør artikler dersom lagerbeholdning ikke er fullt tildelt"
-#: build/serializers.py:571
+#: build/serializers.py:579
msgid "Remove Allocated Stock"
msgstr "Fjern tildelt lagerbeholdning"
-#: build/serializers.py:572
+#: build/serializers.py:580
msgid "Subtract any stock which has already been allocated to this build"
msgstr "Trekk fra all lagerbeholdning som allerede er tildelt denne produksjonen"
-#: build/serializers.py:578
+#: build/serializers.py:586
msgid "Remove Incomplete Outputs"
msgstr "Fjern ufullstendige artikler"
-#: build/serializers.py:579
+#: build/serializers.py:587
msgid "Delete any build outputs which have not been completed"
msgstr "Slett alle produksjonsartikler som ikke er fullført"
-#: build/serializers.py:606
+#: build/serializers.py:614
msgid "Not permitted"
msgstr "Ikke tillatt"
-#: build/serializers.py:607
+#: build/serializers.py:615
msgid "Accept as consumed by this build order"
msgstr "Godta som brukt av denne produksjonsordren"
-#: build/serializers.py:608
+#: build/serializers.py:616
msgid "Deallocate before completing this build order"
msgstr "Fjern tildeling før produksjonsordren fullføres"
-#: build/serializers.py:631
+#: build/serializers.py:639
msgid "Overallocated Stock"
msgstr "Overtildelt lagerbeholdning"
-#: build/serializers.py:633
+#: build/serializers.py:641
msgid "How do you want to handle extra stock items assigned to the build order"
msgstr "Hvordan vil du håndtere ekstra lagervarer tildelt produksjonsordren"
-#: build/serializers.py:643
+#: build/serializers.py:651
msgid "Some stock items have been overallocated"
msgstr "Noen lagervarer har blitt overtildelt"
-#: build/serializers.py:648
+#: build/serializers.py:656
msgid "Accept Unallocated"
msgstr "Godta ikke tildelt"
-#: build/serializers.py:649
+#: build/serializers.py:657
msgid "Accept that stock items have not been fully allocated to this build order"
msgstr "Godta at lagervarer ikke er fullt tildelt til denne produksjonsordren"
-#: build/serializers.py:659 templates/js/translated/build.js:295
+#: build/serializers.py:667 templates/js/translated/build.js:304
msgid "Required stock has not been fully allocated"
msgstr "Nøvendig lagerbeholdning er ikke fullt tildelt"
-#: build/serializers.py:664 order/serializers.py:261 order/serializers.py:1127
+#: build/serializers.py:672 order/serializers.py:267 order/serializers.py:1133
msgid "Accept Incomplete"
msgstr "Godta uferdig"
-#: build/serializers.py:665
+#: build/serializers.py:673
msgid "Accept that the required number of build outputs have not been completed"
msgstr "Godta at nødvendig antall fullførte produksjonsartikler ikke er nådd"
-#: build/serializers.py:675 templates/js/translated/build.js:299
+#: build/serializers.py:683 templates/js/translated/build.js:308
msgid "Required build quantity has not been completed"
msgstr "Nødvendig produksjonsmengde er ikke nådd"
-#: build/serializers.py:684 templates/js/translated/build.js:283
+#: build/serializers.py:692 templates/js/translated/build.js:292
msgid "Build order has incomplete outputs"
msgstr "Produksjonsordren har uferdige artikler"
-#: build/serializers.py:714 build/serializers.py:768 part/models.py:3686
-#: part/models.py:4069
-msgid "BOM Item"
-msgstr "Stykklisteartikkel"
+#: build/serializers.py:722
+msgid "Build Line"
+msgstr ""
-#: build/serializers.py:724
+#: build/serializers.py:732
msgid "Build output"
msgstr "Produksjonsartikkel"
-#: build/serializers.py:732
+#: build/serializers.py:740
msgid "Build output must point to the same build"
msgstr "Produksjonsartikkel må peke til samme produksjon"
-#: build/serializers.py:782
+#: build/serializers.py:776
+msgid "Build Line Item"
+msgstr ""
+
+#: build/serializers.py:790
msgid "bom_item.part must point to the same part as the build order"
msgstr "bom_item.part må peke på den samme delen som produksjonsordren"
-#: build/serializers.py:797 stock/serializers.py:783
+#: build/serializers.py:805 stock/serializers.py:900
msgid "Item must be in stock"
msgstr "Artikkelen må være på lager"
-#: build/serializers.py:846 order/serializers.py:1117
+#: build/serializers.py:853 order/serializers.py:1123
#, python-brace-format
msgid "Available quantity ({q}) exceeded"
msgstr "Tilgjengelig antall ({q}) overskredet"
-#: build/serializers.py:852
+#: build/serializers.py:859
msgid "Build output must be specified for allocation of tracked parts"
msgstr "Produksjonsartikkel må spesifiseres for tildeling av sporede deler"
-#: build/serializers.py:859
+#: build/serializers.py:866
msgid "Build output cannot be specified for allocation of untracked parts"
msgstr "Produksjonsartikkel kan ikke spesifiseres for tildeling av usporede deler"
-#: build/serializers.py:864
+#: build/serializers.py:871
msgid "This stock item has already been allocated to this build output"
msgstr "Denne lagervaren er allerede tildelt til denne produksjonsartikkelen"
-#: build/serializers.py:887 order/serializers.py:1401
+#: build/serializers.py:894 order/serializers.py:1407
msgid "Allocation items must be provided"
msgstr "Tildelingsartikler må oppgis"
-#: build/serializers.py:943
+#: build/serializers.py:947
msgid "Stock location where parts are to be sourced (leave blank to take from any location)"
msgstr "Lagerplassering hvor deler skal hentes (la stå tomt for å ta fra alle plasseringer)"
-#: build/serializers.py:951
+#: build/serializers.py:955
msgid "Exclude Location"
msgstr "Eksluderer plassering"
-#: build/serializers.py:952
+#: build/serializers.py:956
msgid "Exclude stock items from this selected location"
msgstr "Ekskluder lagervarer fra denne valgte plasseringen"
-#: build/serializers.py:957
+#: build/serializers.py:961
msgid "Interchangeable Stock"
msgstr "Utskiftbar lagerbeholdning"
-#: build/serializers.py:958
+#: build/serializers.py:962
msgid "Stock items in multiple locations can be used interchangeably"
msgstr "Lagervarer ved flere plasseringer kan brukes om hverandre"
-#: build/serializers.py:963
+#: build/serializers.py:967
msgid "Substitute Stock"
msgstr "Erstatning av lagerbeholdning"
-#: build/serializers.py:964
+#: build/serializers.py:968
msgid "Allow allocation of substitute parts"
msgstr "Tilatt tildelling av erstatningsdeler"
-#: build/serializers.py:969
+#: build/serializers.py:973
msgid "Optional Items"
msgstr "Valgfrie artikler"
-#: build/serializers.py:970
+#: build/serializers.py:974
msgid "Allocate optional BOM items to build order"
msgstr "Tildel valgfrie stykklistevarer til produksjonsordre"
@@ -1540,6 +1589,7 @@ msgstr ""
#: part/templates/part/part_base.html:43
#: stock/templates/stock/item_base.html:41
#: stock/templates/stock/location.html:54
+#: templates/js/translated/filters.js:336
msgid "Barcode actions"
msgstr "Strekkodehandlinger"
@@ -1618,69 +1668,67 @@ msgstr "Fullfør Produksjon"
msgid "Build Description"
msgstr "Produksjonsbeskrivelse"
-#: build/templates/build/build_base.html:117
+#: build/templates/build/build_base.html:118
msgid "No build outputs have been created for this build order"
msgstr "Ingen produksjonsartikler har blitt opprettet for produksjonsordren"
-#: build/templates/build/build_base.html:124
+#: build/templates/build/build_base.html:125
msgid "Build Order is ready to mark as completed"
msgstr "Produksjonsordren er klar til å merkes som fullført"
-#: build/templates/build/build_base.html:129
+#: build/templates/build/build_base.html:130
msgid "Build Order cannot be completed as outstanding outputs remain"
msgstr "Produksjonsordren kan ikke fullføres på grunn av utestående artikler"
-#: build/templates/build/build_base.html:134
+#: build/templates/build/build_base.html:135
msgid "Required build quantity has not yet been completed"
msgstr "Nødvendig produksjonsantall er ikke oppnådd enda"
-#: build/templates/build/build_base.html:139
+#: build/templates/build/build_base.html:140
msgid "Stock has not been fully allocated to this Build Order"
msgstr "Lagerbeholdning er ikke fullt tildelt til denne Produksjonsordren"
-#: build/templates/build/build_base.html:160
-#: build/templates/build/detail.html:138 order/models.py:240
-#: order/models.py:1099 order/templates/order/order_base.html:190
+#: build/templates/build/build_base.html:161
+#: build/templates/build/detail.html:138 order/models.py:244
+#: order/models.py:1112 order/templates/order/order_base.html:186
#: order/templates/order/return_order_base.html:165
#: order/templates/order/sales_order_base.html:193
#: report/templates/report/inventree_build_order_base.html:125
-#: templates/js/translated/build.js:2945 templates/js/translated/part.js:1802
-#: templates/js/translated/purchase_order.js:1699
-#: templates/js/translated/purchase_order.js:2115
-#: templates/js/translated/return_order.js:335
-#: templates/js/translated/return_order.js:735
-#: templates/js/translated/sales_order.js:823
-#: templates/js/translated/sales_order.js:1847
+#: templates/js/translated/build.js:2162 templates/js/translated/part.js:1801
+#: templates/js/translated/purchase_order.js:1714
+#: templates/js/translated/purchase_order.js:2125
+#: templates/js/translated/return_order.js:347
+#: templates/js/translated/return_order.js:747
+#: templates/js/translated/sales_order.js:835
+#: templates/js/translated/sales_order.js:1859
msgid "Target Date"
msgstr "Måldato"
-#: build/templates/build/build_base.html:165
+#: build/templates/build/build_base.html:166
#, python-format
msgid "This build was due on %(target)s"
msgstr "Denne produksjonsordren forfalt %(target)s"
-#: build/templates/build/build_base.html:165
-#: build/templates/build/build_base.html:222
-#: order/templates/order/order_base.html:126
+#: build/templates/build/build_base.html:166
+#: build/templates/build/build_base.html:223
+#: order/templates/order/order_base.html:122
#: order/templates/order/return_order_base.html:118
#: order/templates/order/sales_order_base.html:123
-#: templates/js/translated/table_filters.js:68
-#: templates/js/translated/table_filters.js:454
-#: templates/js/translated/table_filters.js:539
-#: templates/js/translated/table_filters.js:580
+#: templates/js/translated/table_filters.js:74
+#: templates/js/translated/table_filters.js:460
+#: templates/js/translated/table_filters.js:561
+#: templates/js/translated/table_filters.js:602
msgid "Overdue"
msgstr "Forfalt"
-#: build/templates/build/build_base.html:177
-#: build/templates/build/detail.html:67 build/templates/build/detail.html:149
-#: order/templates/order/sales_order_base.html:203
-#: templates/js/translated/table_filters.js:602
-msgid "Completed"
-msgstr "Fullført"
+#: build/templates/build/build_base.html:178
+#: build/templates/build/detail.html:67 build/templates/build/sidebar.html:13
+msgid "Completed Outputs"
+msgstr "Fullførte byggeresultater"
-#: build/templates/build/build_base.html:190
-#: build/templates/build/detail.html:101 order/api.py:1454 order/models.py:1304
-#: order/models.py:1403 order/models.py:1551
+#: build/templates/build/build_base.html:191
+#: build/templates/build/detail.html:101 order/api.py:1454 order/models.py:1317
+#: order/models.py:1416 order/models.py:1564
#: order/templates/order/sales_order_base.html:9
#: order/templates/order/sales_order_base.html:28
#: report/templates/report/inventree_build_order_base.html:135
@@ -1688,32 +1736,32 @@ msgstr "Fullført"
#: stock/templates/stock/item_base.html:370
#: templates/email/overdue_sales_order.html:15
#: templates/js/translated/pricing.js:915
-#: templates/js/translated/sales_order.js:757
-#: templates/js/translated/sales_order.js:980
-#: templates/js/translated/stock.js:2661
+#: templates/js/translated/sales_order.js:769
+#: templates/js/translated/sales_order.js:992
+#: templates/js/translated/stock.js:2792
msgid "Sales Order"
msgstr "Salgsordre"
-#: build/templates/build/build_base.html:197
+#: build/templates/build/build_base.html:198
#: build/templates/build/detail.html:115
#: report/templates/report/inventree_build_order_base.html:152
msgid "Issued By"
msgstr "Utstedt av"
-#: build/templates/build/build_base.html:211
-#: build/templates/build/detail.html:94 templates/js/translated/build.js:2862
+#: build/templates/build/build_base.html:212
+#: build/templates/build/detail.html:94 templates/js/translated/build.js:2079
msgid "Priority"
msgstr "Prioritet"
-#: build/templates/build/build_base.html:273
+#: build/templates/build/build_base.html:274
msgid "Delete Build Order"
msgstr "Slett Produksjonsordre"
-#: build/templates/build/build_base.html:283
+#: build/templates/build/build_base.html:284
msgid "Build Order QR Code"
msgstr "Produksjonsordrens QR-kode"
-#: build/templates/build/build_base.html:295
+#: build/templates/build/build_base.html:296
msgid "Link Barcode to Build Order"
msgstr "Koble Strekkode til Produksjonsordre"
@@ -1729,8 +1777,8 @@ msgstr "Lagerkilde"
msgid "Stock can be taken from any available location."
msgstr "Lagervare kan hentes fra alle tilgengelige steder."
-#: build/templates/build/detail.html:49 order/models.py:1222
-#: templates/js/translated/purchase_order.js:2157
+#: build/templates/build/detail.html:49 order/models.py:1235
+#: templates/js/translated/purchase_order.js:2167
msgid "Destination"
msgstr "Destinasjon"
@@ -1744,21 +1792,21 @@ msgstr "Tildelte deler"
#: build/templates/build/detail.html:80 stock/admin.py:105
#: stock/templates/stock/item_base.html:163
-#: templates/js/translated/build.js:1432
-#: templates/js/translated/model_renderers.js:212
-#: templates/js/translated/purchase_order.js:1244
-#: templates/js/translated/stock.js:1093 templates/js/translated/stock.js:1926
-#: templates/js/translated/stock.js:2866
-#: templates/js/translated/table_filters.js:259
-#: templates/js/translated/table_filters.js:350
+#: templates/js/translated/build.js:1319
+#: templates/js/translated/model_renderers.js:226
+#: templates/js/translated/purchase_order.js:1259
+#: templates/js/translated/stock.js:1092 templates/js/translated/stock.js:2083
+#: templates/js/translated/stock.js:2993
+#: templates/js/translated/table_filters.js:265
+#: templates/js/translated/table_filters.js:356
msgid "Batch"
msgstr "Parti"
#: build/templates/build/detail.html:133
-#: order/templates/order/order_base.html:177
+#: order/templates/order/order_base.html:173
#: order/templates/order/return_order_base.html:152
#: order/templates/order/sales_order_base.html:187
-#: templates/js/translated/build.js:2905
+#: templates/js/translated/build.js:2122
msgid "Created"
msgstr "Opprettet"
@@ -1766,147 +1814,106 @@ msgstr "Opprettet"
msgid "No target date set"
msgstr "Ingen måldato satt"
+#: build/templates/build/detail.html:149
+#: order/templates/order/sales_order_base.html:203
+#: templates/js/translated/table_filters.js:624
+msgid "Completed"
+msgstr "Fullført"
+
#: build/templates/build/detail.html:153
msgid "Build not complete"
msgstr "Produksjon ikke fullført"
-#: build/templates/build/detail.html:164 build/templates/build/sidebar.html:19
+#: build/templates/build/detail.html:164 build/templates/build/sidebar.html:17
msgid "Child Build Orders"
msgstr "Underordnede Produksjonsordrer"
-#: build/templates/build/detail.html:179
+#: build/templates/build/detail.html:177
msgid "Allocate Stock to Build"
msgstr "Tildel Lagerbeholdning til Produksjon"
-#: build/templates/build/detail.html:183 templates/js/translated/build.js:2276
-msgid "Unallocate stock"
-msgstr "Fjern lager allokering"
+#: build/templates/build/detail.html:181
+msgid "Deallocate stock"
+msgstr ""
+
+#: build/templates/build/detail.html:182
+msgid "Deallocate Stock"
+msgstr ""
#: build/templates/build/detail.html:184
-msgid "Unallocate Stock"
-msgstr "Fjern lager allokering"
-
-#: build/templates/build/detail.html:186
msgid "Automatically allocate stock to build"
msgstr "Automatisk tildel lagerbeholdning til produksjon"
-#: build/templates/build/detail.html:187
+#: build/templates/build/detail.html:185
msgid "Auto Allocate"
msgstr "Automatisk tildeling"
-#: build/templates/build/detail.html:189
+#: build/templates/build/detail.html:187
msgid "Manually allocate stock to build"
msgstr "Manuelt tildel lagerbeholdning til produksjon"
-#: build/templates/build/detail.html:190 build/templates/build/sidebar.html:8
+#: build/templates/build/detail.html:188 build/templates/build/sidebar.html:8
msgid "Allocate Stock"
msgstr "Tildele lager"
-#: build/templates/build/detail.html:193
+#: build/templates/build/detail.html:191
msgid "Order required parts"
msgstr "Bestill nødvendige deler"
-#: build/templates/build/detail.html:194
-#: company/templates/company/detail.html:38
-#: company/templates/company/detail.html:86
-#: part/templates/part/category.html:184
-#: templates/js/translated/purchase_order.js:789
+#: build/templates/build/detail.html:192
+#: templates/js/translated/purchase_order.js:800
msgid "Order Parts"
msgstr "Bestill deler"
-#: build/templates/build/detail.html:206
-msgid "Untracked stock has been fully allocated for this Build Order"
-msgstr "Usporet lagerbeholdning er fullt tildelt for Produksjonsordren"
-
#: build/templates/build/detail.html:210
-msgid "Untracked stock has not been fully allocated for this Build Order"
-msgstr "Usporet lagerbeholdning er ikke fullt tildelt for Produksjonsordren"
-
-#: build/templates/build/detail.html:217
-msgid "Allocate selected items"
-msgstr "Tildel valgte varer"
-
-#: build/templates/build/detail.html:227
-msgid "This Build Order does not have any associated untracked BOM items"
-msgstr "Produksjonsordren har ingen tilknyttede usporede stykklisteartikler"
-
-#: build/templates/build/detail.html:236
msgid "Incomplete Build Outputs"
msgstr "Ufullstendige Produksjonsartikler"
-#: build/templates/build/detail.html:240
+#: build/templates/build/detail.html:214
msgid "Create new build output"
msgstr "Opprett ny produksjonsartikkel"
-#: build/templates/build/detail.html:241
+#: build/templates/build/detail.html:215
msgid "New Build Output"
msgstr "Ny Produksjonsartikkel"
-#: build/templates/build/detail.html:255
-msgid "Output Actions"
-msgstr "Artikkelhandlinger"
-
-#: build/templates/build/detail.html:260
-msgid "Complete selected build outputs"
-msgstr "Fullfør valgte produksjonsartikler"
-
-#: build/templates/build/detail.html:261
-msgid "Complete outputs"
-msgstr "Fullfør artikler"
-
-#: build/templates/build/detail.html:265
-msgid "Scrap selected build outputs"
-msgstr ""
-
-#: build/templates/build/detail.html:266
-msgid "Scrap outputs"
-msgstr ""
-
-#: build/templates/build/detail.html:270
-msgid "Delete selected build outputs"
-msgstr "Slett valgte produksjonsartikler"
-
-#: build/templates/build/detail.html:271
-msgid "Delete outputs"
-msgstr "Slett resultat"
-
-#: build/templates/build/detail.html:288 build/templates/build/sidebar.html:11
+#: build/templates/build/detail.html:232 build/templates/build/sidebar.html:15
msgid "Consumed Stock"
msgstr ""
-#: build/templates/build/detail.html:300
+#: build/templates/build/detail.html:244
msgid "Completed Build Outputs"
msgstr "Fullførte byggeresultater"
-#: build/templates/build/detail.html:312 build/templates/build/sidebar.html:21
-#: company/templates/company/detail.html:261
-#: company/templates/company/manufacturer_part.html:151
+#: build/templates/build/detail.html:256 build/templates/build/sidebar.html:19
+#: company/templates/company/detail.html:229
+#: company/templates/company/manufacturer_part.html:141
#: company/templates/company/manufacturer_part_sidebar.html:9
-#: company/templates/company/sidebar.html:37
+#: company/templates/company/sidebar.html:39
#: order/templates/order/po_sidebar.html:9
-#: order/templates/order/purchase_order_detail.html:102
-#: order/templates/order/return_order_detail.html:74
+#: order/templates/order/purchase_order_detail.html:84
+#: order/templates/order/return_order_detail.html:70
#: order/templates/order/return_order_sidebar.html:7
-#: order/templates/order/sales_order_detail.html:134
-#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:234
-#: part/templates/part/part_sidebar.html:61 stock/templates/stock/item.html:117
+#: order/templates/order/sales_order_detail.html:124
+#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:217
+#: part/templates/part/part_sidebar.html:61 stock/templates/stock/item.html:109
#: stock/templates/stock/stock_sidebar.html:23
msgid "Attachments"
msgstr "Vedlegg"
-#: build/templates/build/detail.html:327
+#: build/templates/build/detail.html:271
msgid "Build Notes"
msgstr "Bygg notater"
-#: build/templates/build/detail.html:502
+#: build/templates/build/detail.html:425
msgid "Allocation Complete"
msgstr "Tildeling fullført"
-#: build/templates/build/detail.html:503
-msgid "All untracked stock items have been allocated"
-msgstr "Alle usporbar lagervarer har tildelt"
+#: build/templates/build/detail.html:426
+msgid "All lines have been fully allocated"
+msgstr ""
-#: build/templates/build/index.html:18 part/templates/part/detail.html:340
+#: build/templates/build/index.html:18 part/templates/part/detail.html:319
msgid "New Build Order"
msgstr "Ny byggeordre"
@@ -1914,14 +1921,10 @@ msgstr "Ny byggeordre"
msgid "Build Order Details"
msgstr "Byggordre detaljer"
-#: build/templates/build/sidebar.html:14
+#: build/templates/build/sidebar.html:10
msgid "Incomplete Outputs"
msgstr "Ufullstendige resultater"
-#: build/templates/build/sidebar.html:17
-msgid "Completed Outputs"
-msgstr "Fullførte byggeresultater"
-
#: common/files.py:63
#, python-brace-format
msgid "Unsupported file format: {fmt}"
@@ -1968,16 +1971,6 @@ msgstr "Oppdatert"
msgid "Timestamp of last update"
msgstr "Tidsstempel for forrige oppdatering"
-#: common/models.py:104 order/admin.py:17 order/models.py:234
-#: templates/InvenTree/settings/settings_staff_js.html:70
-#: templates/js/translated/purchase_order.js:1670
-#: templates/js/translated/return_order.js:306
-#: templates/js/translated/sales_order.js:794
-#: templates/js/translated/table_filters.js:24
-#: templates/project_code_data.html:6
-msgid "Project Code"
-msgstr "Prosjektkode"
-
#: common/models.py:105
msgid "Unique project code"
msgstr "Unik prosjektkode"
@@ -2261,9 +2254,9 @@ msgstr "Kopier designmaler for kategoriparametere"
msgid "Copy category parameter templates when creating a part"
msgstr "Kopier parametermaler for kategori ved oppretting av en del"
-#: common/models.py:1162 part/admin.py:55 part/models.py:3560
-#: report/models.py:166 templates/js/translated/table_filters.js:109
-#: templates/js/translated/table_filters.js:680
+#: common/models.py:1162 part/admin.py:55 part/models.py:3594
+#: report/models.py:166 templates/js/translated/table_filters.js:115
+#: templates/js/translated/table_filters.js:702
msgid "Template"
msgstr "Mal"
@@ -2271,10 +2264,10 @@ msgstr "Mal"
msgid "Parts are templates by default"
msgstr "Deler er maler som standard"
-#: common/models.py:1169 part/admin.py:51 part/admin.py:283 part/models.py:996
-#: templates/js/translated/bom.js:1598
-#: templates/js/translated/table_filters.js:276
-#: templates/js/translated/table_filters.js:634
+#: common/models.py:1169 part/admin.py:51 part/admin.py:283 part/models.py:997
+#: templates/js/translated/bom.js:1618
+#: templates/js/translated/table_filters.js:282
+#: templates/js/translated/table_filters.js:656
msgid "Assembly"
msgstr "Sammenstilling"
@@ -2282,8 +2275,8 @@ msgstr "Sammenstilling"
msgid "Parts can be assembled from other components by default"
msgstr "Deler kan settes sammen fra andre komponenter som standard"
-#: common/models.py:1176 part/admin.py:52 part/models.py:1002
-#: templates/js/translated/table_filters.js:642
+#: common/models.py:1176 part/admin.py:52 part/models.py:1003
+#: templates/js/translated/table_filters.js:664
msgid "Component"
msgstr "Komponent"
@@ -2291,7 +2284,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:1183 part/admin.py:53 part/models.py:1013
+#: common/models.py:1183 part/admin.py:53 part/models.py:1014
msgid "Purchaseable"
msgstr "Kjøpbar"
@@ -2299,8 +2292,8 @@ msgstr "Kjøpbar"
msgid "Parts are purchaseable by default"
msgstr "Deler er kjøpbare som standard"
-#: common/models.py:1190 part/admin.py:54 part/models.py:1018
-#: templates/js/translated/table_filters.js:668
+#: common/models.py:1190 part/admin.py:54 part/models.py:1019
+#: templates/js/translated/table_filters.js:690
msgid "Salable"
msgstr "Salgbar"
@@ -2308,10 +2301,10 @@ msgstr "Salgbar"
msgid "Parts are salable by default"
msgstr "Deler er salgbare som standard"
-#: common/models.py:1197 part/admin.py:56 part/models.py:1008
-#: templates/js/translated/table_filters.js:117
-#: templates/js/translated/table_filters.js:193
-#: templates/js/translated/table_filters.js:684
+#: common/models.py:1197 part/admin.py:56 part/models.py:1009
+#: templates/js/translated/table_filters.js:123
+#: templates/js/translated/table_filters.js:199
+#: templates/js/translated/table_filters.js:706
msgid "Trackable"
msgstr "Sporbar"
@@ -2319,10 +2312,10 @@ msgstr "Sporbar"
msgid "Parts are trackable by default"
msgstr "Deler er sporbare som standard"
-#: common/models.py:1204 part/admin.py:57 part/models.py:1028
+#: common/models.py:1204 part/admin.py:57 part/models.py:1029
#: part/templates/part/part_base.html:156
-#: templates/js/translated/table_filters.js:113
-#: templates/js/translated/table_filters.js:688
+#: templates/js/translated/table_filters.js:119
+#: templates/js/translated/table_filters.js:710
msgid "Virtual"
msgstr "Virtuelle"
@@ -2354,7 +2347,7 @@ msgstr "Innledende lagerbeholdningsdata"
msgid "Allow creation of initial stock when adding a new part"
msgstr "Tillat oppretting av innledende lagerbeholdning når en ny del opprettes"
-#: common/models.py:1232 templates/js/translated/part.js:108
+#: common/models.py:1232 templates/js/translated/part.js:107
msgid "Initial Supplier Data"
msgstr "Innledende leverandørdata"
@@ -2603,181 +2596,181 @@ msgid "Stock location default icon (empty means no icon)"
msgstr "Lagerplassering standard ikon (tomt betyr ingen ikon)"
#: common/models.py:1471
+msgid "Show Installed Stock Items"
+msgstr ""
+
+#: common/models.py:1472
+msgid "Display installed stock items in stock tables"
+msgstr ""
+
+#: common/models.py:1478
msgid "Build Order Reference Pattern"
msgstr "Produksjonsordre-referansemønster"
-#: common/models.py:1472
+#: common/models.py:1479
msgid "Required pattern for generating Build Order reference field"
msgstr "Nødvendig mønster for å generere Produksjonsordre-referansefeltet"
-#: common/models.py:1478
+#: common/models.py:1485
msgid "Enable Return Orders"
msgstr "Aktiver returordrer"
-#: common/models.py:1479
+#: common/models.py:1486
msgid "Enable return order functionality in the user interface"
msgstr "Aktiver returordrefunksjonalitet i brukergrensesnittet"
-#: common/models.py:1485
+#: common/models.py:1492
msgid "Return Order Reference Pattern"
msgstr "Returordre-referansemønster"
-#: common/models.py:1486
+#: common/models.py:1493
msgid "Required pattern for generating Return Order reference field"
msgstr "Påkrevd mønster for å generere returordrereferansefelt"
-#: common/models.py:1492
+#: common/models.py:1499
msgid "Edit Completed Return Orders"
msgstr "Rediger fullførte returordrer"
-#: common/models.py:1493
+#: common/models.py:1500
msgid "Allow editing of return orders after they have been completed"
msgstr "Tillat redigering av returordrer etter de er fullført"
-#: common/models.py:1499
+#: common/models.py:1506
msgid "Sales Order Reference Pattern"
msgstr "Salgsordre-referansemønster"
-#: common/models.py:1500
+#: common/models.py:1507
msgid "Required pattern for generating Sales Order reference field"
msgstr "Påkrevd mønster for å generere salgsordrereferansefelt"
-#: common/models.py:1506
+#: common/models.py:1513
msgid "Sales Order Default Shipment"
msgstr "Salgsordre standard fraktmetode"
-#: common/models.py:1507
+#: common/models.py:1514
msgid "Enable creation of default shipment with sales orders"
msgstr "Aktiver opprettelse av standard forsendelse med salgsordrer"
-#: common/models.py:1513
+#: common/models.py:1520
msgid "Edit Completed Sales Orders"
msgstr "Rediger fullførte salgsordrer"
-#: common/models.py:1514
+#: common/models.py:1521
msgid "Allow editing of sales orders after they have been shipped or completed"
msgstr "Tillat redigering av salgsordrer etter de har blitt sendt eller fullført"
-#: common/models.py:1520
+#: common/models.py:1527
msgid "Purchase Order Reference Pattern"
msgstr "Referansemønster for innkjøpsordre"
-#: common/models.py:1521
+#: common/models.py:1528
msgid "Required pattern for generating Purchase Order reference field"
msgstr "Obligatorisk mønster for generering av referansefelt for innkjøpsordre"
-#: common/models.py:1527
+#: common/models.py:1534
msgid "Edit Completed Purchase Orders"
msgstr "Rediger fullførte innkjøpsordre"
-#: common/models.py:1528
+#: common/models.py:1535
msgid "Allow editing of purchase orders after they have been shipped or completed"
msgstr "Tillat redigering av innkjøpsordre etter at de har blitt sendt eller fullført"
-#: common/models.py:1535
+#: common/models.py:1542
msgid "Enable password forgot"
msgstr "Aktiver passord glemt"
-#: common/models.py:1536
+#: common/models.py:1543
msgid "Enable password forgot function on the login pages"
msgstr "Ativer funskjon for glemt passord på innloggingssidene"
-#: common/models.py:1542
+#: common/models.py:1549
msgid "Enable registration"
msgstr "Aktiver registrering"
-#: common/models.py:1543
+#: common/models.py:1550
msgid "Enable self-registration for users on the login pages"
msgstr "Aktiver egenregistrerting for brukerer på påloggingssidene"
-#: common/models.py:1549
+#: common/models.py:1556
msgid "Enable SSO"
msgstr "Aktiver SSO"
-#: common/models.py:1550
+#: common/models.py:1557
msgid "Enable SSO on the login pages"
msgstr "Aktiver SSO på innloggingssidene"
-#: common/models.py:1556
+#: common/models.py:1563
msgid "Enable SSO registration"
msgstr "Aktiver SSO-registrering"
-#: common/models.py:1557
+#: common/models.py:1564
msgid "Enable self-registration via SSO for users on the login pages"
msgstr "Aktiver selvregistrering via SSO for brukere på innloggingssiden"
-#: common/models.py:1563
+#: common/models.py:1570
msgid "Email required"
msgstr "E-postadresse kreves"
-#: common/models.py:1564
+#: common/models.py:1571
msgid "Require user to supply mail on signup"
msgstr "Krevt at brukere angir e-post ved registrering"
-#: common/models.py:1570
+#: common/models.py:1577
msgid "Auto-fill SSO users"
msgstr "Auto-utfyll SSO-brukere"
-#: common/models.py:1571
+#: common/models.py:1578
msgid "Automatically fill out user-details from SSO account-data"
msgstr "Fyll automatisk ut brukeropplysninger fra SSO-kontodata"
-#: common/models.py:1577
+#: common/models.py:1584
msgid "Mail twice"
msgstr "E-post to ganger"
-#: common/models.py:1578
+#: common/models.py:1585
msgid "On signup ask users twice for their mail"
msgstr "Spør brukeren om e-post to ganger ved registrering"
-#: common/models.py:1584
+#: common/models.py:1591
msgid "Password twice"
msgstr "Passord to ganger"
-#: common/models.py:1585
+#: common/models.py:1592
msgid "On signup ask users twice for their password"
msgstr "Spør brukeren om passord to ganger ved registrering"
-#: common/models.py:1591
+#: common/models.py:1598
msgid "Allowed domains"
msgstr "Tillatte domener"
-#: common/models.py:1592
+#: common/models.py:1599
msgid "Restrict signup to certain domains (comma-separated, starting with @)"
msgstr "Begrens registrering til bestemte domener (kommaseparert, begynner med @)"
-#: common/models.py:1598
+#: common/models.py:1605
msgid "Group on signup"
msgstr "Gruppe ved registrering"
-#: common/models.py:1599
+#: common/models.py:1606
msgid "Group to which new users are assigned on registration"
msgstr "Gruppe nye brukere blir tilknyttet ved registrering"
-#: common/models.py:1605
+#: common/models.py:1612
msgid "Enforce MFA"
msgstr "Krev MFA"
-#: common/models.py:1606
+#: common/models.py:1613
msgid "Users must use multifactor security."
msgstr "Brukere må bruke flerfaktorsikkerhet."
-#: common/models.py:1612
+#: common/models.py:1619
msgid "Check plugins on startup"
msgstr "Sjekk utvidelser ved oppstart"
-#: common/models.py:1613
+#: common/models.py:1620
msgid "Check that all plugins are installed on startup - enable in container environments"
msgstr "Sjekk at alle utvidelser er installert ved oppstart - aktiver i containermiljøer"
-#: common/models.py:1620
-msgid "Check plugin signatures"
-msgstr "Sjekk utvidelsessignaturer"
-
-#: common/models.py:1621
-msgid "Check and show signatures for plugins"
-msgstr "Kontroller og vis signaturer for utvidelser"
-
#: common/models.py:1628
msgid "Enable URL integration"
msgstr "Aktiver URL-integrasjon"
@@ -2850,7 +2843,7 @@ msgstr "Rapportslettingsintervall"
msgid "Stocktake reports will be deleted after specified number of days"
msgstr "Varetellingsrapporter vil slettes etter angitt antall dager"
-#: common/models.py:1710 common/models.py:2147
+#: common/models.py:1710 common/models.py:2133
msgid "Settings key (must be unique - case insensitive"
msgstr "Innstillingsnøkkel (må være unik - ufølsom for store og små bokstaver"
@@ -2891,528 +2884,513 @@ msgid "Show latest parts on the homepage"
msgstr "Vis nyeste deler på startsiden"
#: common/models.py:1779
-msgid "Recent Part Count"
-msgstr "Antall nye deler"
-
-#: common/models.py:1780
-msgid "Number of recent parts to display on index page"
-msgstr "Antall nye deler som skal vises på startsiden"
-
-#: common/models.py:1786
msgid "Show unvalidated BOMs"
msgstr "Vis uvaliderte stykklister"
-#: common/models.py:1787
+#: common/models.py:1780
msgid "Show BOMs that await validation on the homepage"
msgstr "Vis stykklister som venter på validering på startsiden"
-#: common/models.py:1793
+#: common/models.py:1786
msgid "Show recent stock changes"
msgstr "Vis nylige lagerendringer"
-#: common/models.py:1794
+#: common/models.py:1787
msgid "Show recently changed stock items on the homepage"
msgstr "Vis nylig endrede lagervarer på startsiden"
-#: common/models.py:1800
-msgid "Recent Stock Count"
-msgstr "Antall nylig lagerbeholdning"
-
-#: common/models.py:1801
-msgid "Number of recent stock items to display on index page"
-msgstr "Antall nylige lagervarer som skal vises på startsiden"
-
-#: common/models.py:1807
+#: common/models.py:1793
msgid "Show low stock"
msgstr "Vis lav lagerbeholdning"
-#: common/models.py:1808
+#: common/models.py:1794
msgid "Show low stock items on the homepage"
msgstr "Vis lave lagervarer på startsiden"
-#: common/models.py:1814
+#: common/models.py:1800
msgid "Show depleted stock"
msgstr "Vis tomme lagervarer"
-#: common/models.py:1815
+#: common/models.py:1801
msgid "Show depleted stock items on the homepage"
msgstr "Vis tom lagerbeholdning på startsiden"
-#: common/models.py:1821
+#: common/models.py:1807
msgid "Show needed stock"
msgstr "Vis nødvendig lagerbeholdning"
-#: common/models.py:1822
+#: common/models.py:1808
msgid "Show stock items needed for builds on the homepage"
msgstr "Vis lagervarer som trengs for produksjon på startsiden"
-#: common/models.py:1828
+#: common/models.py:1814
msgid "Show expired stock"
msgstr "Vis utløpt lagerbeholdning"
-#: common/models.py:1829
+#: common/models.py:1815
msgid "Show expired stock items on the homepage"
msgstr "Vis utløpte lagervarer på startsiden"
-#: common/models.py:1835
+#: common/models.py:1821
msgid "Show stale stock"
msgstr "Vis foreldet lagerbeholdning"
-#: common/models.py:1836
+#: common/models.py:1822
msgid "Show stale stock items on the homepage"
msgstr "Vis foreldet lagerbeholdning på startsiden"
-#: common/models.py:1842
+#: common/models.py:1828
msgid "Show pending builds"
msgstr "Vis ventende produksjoner"
-#: common/models.py:1843
+#: common/models.py:1829
msgid "Show pending builds on the homepage"
msgstr "Vi ventende produksjoner på startsiden"
-#: common/models.py:1849
+#: common/models.py:1835
msgid "Show overdue builds"
msgstr "Vis forfalte produksjoner"
-#: common/models.py:1850
+#: common/models.py:1836
msgid "Show overdue builds on the homepage"
msgstr "Vis forfalte produksjoner på startsiden"
-#: common/models.py:1856
+#: common/models.py:1842
msgid "Show outstanding POs"
msgstr "Vis utestående Innkjøpsordrer"
-#: common/models.py:1857
+#: common/models.py:1843
msgid "Show outstanding POs on the homepage"
msgstr "Vis utestående Innkjøpsordrer på startsiden"
-#: common/models.py:1863
+#: common/models.py:1849
msgid "Show overdue POs"
msgstr "Vis forfalte Innkjøpsordrer"
-#: common/models.py:1864
+#: common/models.py:1850
msgid "Show overdue POs on the homepage"
msgstr "Vis forfalte Innkjøpsordrer på startsiden"
-#: common/models.py:1870
+#: common/models.py:1856
msgid "Show outstanding SOs"
msgstr "Vis utestående Salgsordrer"
-#: common/models.py:1871
+#: common/models.py:1857
msgid "Show outstanding SOs on the homepage"
msgstr "Vis utestående Salgsordrer på startsiden"
-#: common/models.py:1877
+#: common/models.py:1863
msgid "Show overdue SOs"
msgstr "Vis forfalte SOer"
-#: common/models.py:1878
+#: common/models.py:1864
msgid "Show overdue SOs on the homepage"
msgstr "Vis forfalte SOer på startsiden"
-#: common/models.py:1884
+#: common/models.py:1870
msgid "Show pending SO shipments"
msgstr "Vis ventende SO-forsendelser"
-#: common/models.py:1885
+#: common/models.py:1871
msgid "Show pending SO shipments on the homepage"
msgstr "Vis ventende SO forsendelser på startsiden"
-#: common/models.py:1891
+#: common/models.py:1877
msgid "Show News"
msgstr "Vis Nyheter"
-#: common/models.py:1892
+#: common/models.py:1878
msgid "Show news on the homepage"
msgstr "Vis nyheter på startsiden"
-#: common/models.py:1898
+#: common/models.py:1884
msgid "Inline label display"
msgstr "Innebygd etikettvisning"
-#: common/models.py:1899
+#: common/models.py:1885
msgid "Display PDF labels in the browser, instead of downloading as a file"
msgstr "Vis PDF-etiketter i nettleseren fremfor å lastes ned som en fil"
-#: common/models.py:1905
+#: common/models.py:1891
msgid "Default label printer"
msgstr "Standard etikettskriver"
-#: common/models.py:1906
+#: common/models.py:1892
msgid "Configure which label printer should be selected by default"
msgstr "Konfigurer hvilken etikettskriver som skal være valgt som standard"
-#: common/models.py:1912
+#: common/models.py:1898
msgid "Inline report display"
msgstr "Innebygd rapportvisning"
-#: common/models.py:1913
+#: common/models.py:1899
msgid "Display PDF reports in the browser, instead of downloading as a file"
msgstr "Vis PDF-rapporter i nettleseren fremfor å lastes ned som en fil"
-#: common/models.py:1919
+#: common/models.py:1905
msgid "Search Parts"
msgstr "Søk i Deler"
-#: common/models.py:1920
+#: common/models.py:1906
msgid "Display parts in search preview window"
msgstr "Vis deler i forhåndsvsningsvinduet for søk"
-#: common/models.py:1926
+#: common/models.py:1912
msgid "Search Supplier Parts"
msgstr "Søk i Leverandørdeler"
-#: common/models.py:1927
+#: common/models.py:1913
msgid "Display supplier parts in search preview window"
msgstr "Vis leverandørdeler i forhåndsvisningsvinduet for søk"
-#: common/models.py:1933
+#: common/models.py:1919
msgid "Search Manufacturer Parts"
msgstr "Søk i Produsentdeler"
-#: common/models.py:1934
+#: common/models.py:1920
msgid "Display manufacturer parts in search preview window"
msgstr "Vis produsentdeler i forhåndsvisningsvinduet for søk"
-#: common/models.py:1940
+#: common/models.py:1926
msgid "Hide Inactive Parts"
msgstr "Skjul Inaktive Deler"
-#: common/models.py:1941
+#: common/models.py:1927
msgid "Excluded inactive parts from search preview window"
msgstr "Ekskluder inaktive deler fra forhåndsvisningsvinduet for søk"
-#: common/models.py:1947
+#: common/models.py:1933
msgid "Search Categories"
msgstr "Søk i kategorier"
-#: common/models.py:1948
+#: common/models.py:1934
msgid "Display part categories in search preview window"
msgstr "Vis delkategorier i forhåndsvisningsvinduet for søk"
-#: common/models.py:1954
+#: common/models.py:1940
msgid "Search Stock"
msgstr "Søk i lagerbeholdning"
-#: common/models.py:1955
+#: common/models.py:1941
msgid "Display stock items in search preview window"
msgstr "Vis lagervarer i forhåndsvisningsvinduet for søk"
-#: common/models.py:1961
+#: common/models.py:1947
msgid "Hide Unavailable Stock Items"
msgstr "Skjul utilgjengelige Lagervarer"
-#: common/models.py:1962
+#: common/models.py:1948
msgid "Exclude stock items which are not available from the search preview window"
msgstr "Ekskluder lagervarer som ikke er tilgjengelige fra forhåndsvisningsvinduet for søk"
-#: common/models.py:1968
+#: common/models.py:1954
msgid "Search Locations"
msgstr "Søk i Plasseringer"
-#: common/models.py:1969
+#: common/models.py:1955
msgid "Display stock locations in search preview window"
msgstr "Vis lagerplasseringer i forhåndsvisningsvinduet for søk"
-#: common/models.py:1975
+#: common/models.py:1961
msgid "Search Companies"
msgstr "Søk i Firma"
-#: common/models.py:1976
+#: common/models.py:1962
msgid "Display companies in search preview window"
msgstr "Vis firma i forhåndsvsningsvinduet for søk"
-#: common/models.py:1982
+#: common/models.py:1968
msgid "Search Build Orders"
msgstr "Søk i Produksjonsordrer"
-#: common/models.py:1983
+#: common/models.py:1969
msgid "Display build orders in search preview window"
msgstr "Vis produksjonsordrer i forhåndsvisningsvinduet for søk"
-#: common/models.py:1989
+#: common/models.py:1975
msgid "Search Purchase Orders"
msgstr "Søk i Innkjøpsordrer"
-#: common/models.py:1990
+#: common/models.py:1976
msgid "Display purchase orders in search preview window"
msgstr "Vis innkjøpsordrer i forhåndsvisningsvinduet for søk"
-#: common/models.py:1996
+#: common/models.py:1982
msgid "Exclude Inactive Purchase Orders"
msgstr "Ekskluder inaktive Innkjøpsordrer"
-#: common/models.py:1997
+#: common/models.py:1983
msgid "Exclude inactive purchase orders from search preview window"
msgstr "Ekskluder inaktive innkjøpsordrer fra forhåndsvisningsvinduet for søk"
-#: common/models.py:2003
+#: common/models.py:1989
msgid "Search Sales Orders"
msgstr "Søk i Salgsordrer"
-#: common/models.py:2004
+#: common/models.py:1990
msgid "Display sales orders in search preview window"
msgstr "Vis salgsordrer i forhåndsvisningsvinduet for søk"
-#: common/models.py:2010
+#: common/models.py:1996
msgid "Exclude Inactive Sales Orders"
msgstr "Ekskluder Inaktive Salgsordrer"
-#: common/models.py:2011
+#: common/models.py:1997
msgid "Exclude inactive sales orders from search preview window"
msgstr "Ekskluder inaktive salgsordrer fra forhåndsvisningsvinduet for søk"
-#: common/models.py:2017
+#: common/models.py:2003
msgid "Search Return Orders"
msgstr "Søk i Returordrer"
-#: common/models.py:2018
+#: common/models.py:2004
msgid "Display return orders in search preview window"
msgstr "Vis returordrer i forhåndsvisningsvinduet for søk"
-#: common/models.py:2024
+#: common/models.py:2010
msgid "Exclude Inactive Return Orders"
msgstr "Ekskluder Inaktive Returordrer"
-#: common/models.py:2025
+#: common/models.py:2011
msgid "Exclude inactive return orders from search preview window"
msgstr "Ekskluder inaktive returordrer fra forhåndsvisningsvinduet for søk"
-#: common/models.py:2031
+#: common/models.py:2017
msgid "Search Preview Results"
msgstr "Forhåndsvisning av søkeresultater"
-#: common/models.py:2032
+#: common/models.py:2018
msgid "Number of results to show in each section of the search preview window"
msgstr "Antall resultater å vise i hver seksjon av søkeresultatsforhåndsvisningen"
-#: common/models.py:2038
+#: common/models.py:2024
msgid "Regex Search"
msgstr "Regex-søk"
-#: common/models.py:2039
+#: common/models.py:2025
msgid "Enable regular expressions in search queries"
msgstr "Aktiver regulære uttrykk i søkeord"
-#: common/models.py:2045
+#: common/models.py:2031
msgid "Whole Word Search"
msgstr "Helordsøk"
-#: common/models.py:2046
+#: common/models.py:2032
msgid "Search queries return results for whole word matches"
msgstr "Søk returnerer resultater for treff med hele ord"
-#: common/models.py:2052
+#: common/models.py:2038
msgid "Show Quantity in Forms"
msgstr "Vis antall i skjemaer"
-#: common/models.py:2053
+#: common/models.py:2039
msgid "Display available part quantity in some forms"
msgstr "Vis antall tilgjengelige deler i noen skjemaer"
-#: common/models.py:2059
+#: common/models.py:2045
msgid "Escape Key Closes Forms"
msgstr "Escape-knappen lukker skjemaer"
-#: common/models.py:2060
+#: common/models.py:2046
msgid "Use the escape key to close modal forms"
msgstr "Bruk Escape-knappen for å lukke modal-skjemaer"
-#: common/models.py:2066
+#: common/models.py:2052
msgid "Fixed Navbar"
msgstr "Fast navigasjonsbar"
-#: common/models.py:2067
+#: common/models.py:2053
msgid "The navbar position is fixed to the top of the screen"
msgstr "Navigasjonsbarens posisjon er fast på toppen av skjermen"
-#: common/models.py:2073
+#: common/models.py:2059
msgid "Date Format"
msgstr "Datoformat"
-#: common/models.py:2074
+#: common/models.py:2060
msgid "Preferred format for displaying dates"
msgstr "Foretrukket format for å vise datoer"
-#: common/models.py:2088 part/templates/part/detail.html:41
+#: common/models.py:2074 part/templates/part/detail.html:41
msgid "Part Scheduling"
msgstr "Delplanlegging"
-#: common/models.py:2089
+#: common/models.py:2075
msgid "Display part scheduling information"
msgstr "Vis delplanleggingsinformasjon"
-#: common/models.py:2095 part/templates/part/detail.html:62
+#: common/models.py:2081 part/templates/part/detail.html:62
msgid "Part Stocktake"
msgstr "Lagertelling for Del"
-#: common/models.py:2096
+#: common/models.py:2082
msgid "Display part stocktake information (if stocktake functionality is enabled)"
msgstr "Vis lagertellingsinformasjon for del (om lagertellingsfunksjonalitet er aktivert)"
-#: common/models.py:2102
+#: common/models.py:2088
msgid "Table String Length"
msgstr "Tabellstrenglengde"
-#: common/models.py:2103
+#: common/models.py:2089
msgid "Maximimum length limit for strings displayed in table views"
msgstr "Maksimal lengdegrense for strenger vist i tabeller"
-#: common/models.py:2112
+#: common/models.py:2098
msgid "Default part label template"
msgstr ""
-#: common/models.py:2113
+#: common/models.py:2099
msgid "The part label template to be automatically selected"
msgstr ""
-#: common/models.py:2121
+#: common/models.py:2107
msgid "Default stock item template"
msgstr ""
-#: common/models.py:2122
+#: common/models.py:2108
msgid "The stock item label template to be automatically selected"
msgstr ""
-#: common/models.py:2130
+#: common/models.py:2116
msgid "Default stock location label template"
msgstr ""
-#: common/models.py:2131
+#: common/models.py:2117
msgid "The stock location label template to be automatically selected"
msgstr ""
-#: common/models.py:2177
+#: common/models.py:2163
msgid "Price break quantity"
msgstr "Antall for prisbrudd"
-#: common/models.py:2184 company/serializers.py:434 order/admin.py:43
-#: order/models.py:1132 order/models.py:1939
-#: templates/js/translated/company.js:1433 templates/js/translated/part.js:1856
+#: common/models.py:2170 company/serializers.py:491 order/admin.py:43
+#: order/models.py:1145 order/models.py:1952
+#: templates/js/translated/company.js:1854 templates/js/translated/part.js:1855
#: templates/js/translated/pricing.js:621
-#: templates/js/translated/return_order.js:725
+#: templates/js/translated/return_order.js:737
msgid "Price"
msgstr "Pris"
-#: common/models.py:2185
+#: common/models.py:2171
msgid "Unit price at specified quantity"
msgstr "Enhetspris på spesifisert antall"
-#: common/models.py:2345 common/models.py:2523
+#: common/models.py:2331 common/models.py:2509
msgid "Endpoint"
msgstr "Endepunkt"
-#: common/models.py:2346
+#: common/models.py:2332
msgid "Endpoint at which this webhook is received"
msgstr "Endepunktet hvor denne webhooken er mottatt"
-#: common/models.py:2355
+#: common/models.py:2341
msgid "Name for this webhook"
msgstr "Navn for webhooken"
-#: common/models.py:2360 part/admin.py:50 part/models.py:1023
-#: plugin/models.py:47 templates/js/translated/table_filters.js:105
-#: templates/js/translated/table_filters.js:189
-#: templates/js/translated/table_filters.js:434
-#: templates/js/translated/table_filters.js:450
-#: templates/js/translated/table_filters.js:629
+#: common/models.py:2346 part/admin.py:50 part/models.py:1024
+#: plugin/models.py:48 templates/js/translated/table_filters.js:111
+#: templates/js/translated/table_filters.js:195
+#: templates/js/translated/table_filters.js:440
+#: templates/js/translated/table_filters.js:456
+#: templates/js/translated/table_filters.js:651
msgid "Active"
msgstr "Aktiv"
-#: common/models.py:2361
+#: common/models.py:2347
msgid "Is this webhook active"
msgstr "Er webhooken aktiv"
-#: common/models.py:2375
+#: common/models.py:2361
msgid "Token"
msgstr "Sjetong"
-#: common/models.py:2376
+#: common/models.py:2362
msgid "Token for access"
msgstr "Nøkkel for tilgang"
-#: common/models.py:2383
+#: common/models.py:2369
msgid "Secret"
msgstr "Hemmelig"
-#: common/models.py:2384
+#: common/models.py:2370
msgid "Shared secret for HMAC"
msgstr "Delt hemmlighet for HMAC"
-#: common/models.py:2490
+#: common/models.py:2476
msgid "Message ID"
msgstr "Melding ID"
-#: common/models.py:2491
+#: common/models.py:2477
msgid "Unique identifier for this message"
msgstr "Unik Id for denne meldingen"
-#: common/models.py:2499
+#: common/models.py:2485
msgid "Host"
msgstr "Vert"
-#: common/models.py:2500
+#: common/models.py:2486
msgid "Host from which this message was received"
msgstr "Verten denne meldingen ble mottatt fra"
-#: common/models.py:2507
+#: common/models.py:2493
msgid "Header"
msgstr "Tittel"
-#: common/models.py:2508
+#: common/models.py:2494
msgid "Header of this message"
msgstr "Overskrift for denne meldingen"
-#: common/models.py:2514
+#: common/models.py:2500
msgid "Body"
msgstr "Brødtekst"
-#: common/models.py:2515
+#: common/models.py:2501
msgid "Body of this message"
msgstr "Innholdet i meldingen"
-#: common/models.py:2524
+#: common/models.py:2510
msgid "Endpoint on which this message was received"
msgstr "Endepunktet meldingen ble mottatt fra"
-#: common/models.py:2529
+#: common/models.py:2515
msgid "Worked on"
msgstr "Arbeidet med"
-#: common/models.py:2530
+#: common/models.py:2516
msgid "Was the work on this message finished?"
msgstr "Var arbeidet med denne meldingen ferdig?"
-#: common/models.py:2684
+#: common/models.py:2670
msgid "Id"
msgstr "Id"
-#: common/models.py:2690 templates/js/translated/news.js:44
+#: common/models.py:2676 templates/js/translated/company.js:996
+#: templates/js/translated/news.js:44
msgid "Title"
msgstr "Tittel"
-#: common/models.py:2700 templates/js/translated/news.js:60
+#: common/models.py:2686 templates/js/translated/news.js:60
msgid "Published"
msgstr "Publisert"
-#: common/models.py:2705 templates/InvenTree/settings/plugin_settings.html:32
+#: common/models.py:2691 templates/InvenTree/settings/plugin_settings.html:32
#: templates/js/translated/news.js:56 templates/js/translated/plugin.js:106
msgid "Author"
msgstr "Forfatter"
-#: common/models.py:2710 templates/js/translated/news.js:52
+#: common/models.py:2696 templates/js/translated/news.js:52
msgid "Summary"
msgstr "Sammendrag"
-#: common/models.py:2715
+#: common/models.py:2701
msgid "Read"
msgstr "Les"
-#: common/models.py:2716
+#: common/models.py:2702
msgid "Was this news item read?"
msgstr "Er dette nyhetselementet lest?"
-#: common/models.py:2736 company/models.py:143 part/models.py:914
+#: common/models.py:2722 company/models.py:139 part/models.py:915
#: report/templates/report/inventree_bill_of_materials_report.html:126
#: report/templates/report/inventree_bill_of_materials_report.html:148
#: report/templates/report/inventree_return_order_report_base.html:35
@@ -3422,7 +3400,7 @@ msgstr "Er dette nyhetselementet lest?"
msgid "Image"
msgstr "Bilde"
-#: common/models.py:2737
+#: common/models.py:2723
msgid "Image file"
msgstr "Bildefil"
@@ -3499,7 +3477,7 @@ msgstr "Beskrivelse av firmaet"
#: company/models.py:113 company/templates/company/company_base.html:101
#: templates/InvenTree/settings/plugin_settings.html:54
-#: templates/js/translated/company.js:514
+#: templates/js/translated/company.js:521
msgid "Website"
msgstr "Nettside"
@@ -3507,303 +3485,387 @@ msgstr "Nettside"
msgid "Company website URL"
msgstr "Bedriftens nettside URL"
-#: company/models.py:118 company/templates/company/company_base.html:119
-msgid "Address"
-msgstr "Adresse"
-
-#: company/models.py:119
-msgid "Company address"
-msgstr "Firmaet adresse"
-
-#: company/models.py:122
+#: company/models.py:118
msgid "Phone number"
msgstr "Telefonnummer"
-#: company/models.py:123
+#: company/models.py:119
msgid "Contact phone number"
msgstr "Kontakt-telefonnummer"
-#: company/models.py:126 company/templates/company/company_base.html:133
+#: company/models.py:122 company/templates/company/company_base.html:133
#: templates/InvenTree/settings/user.html:49
-#: templates/js/translated/company.js:659
+#: templates/js/translated/company.js:666
msgid "Email"
msgstr "E-post"
-#: company/models.py:126
+#: company/models.py:122
msgid "Contact email address"
msgstr "Kontakt e-post"
-#: company/models.py:129 company/templates/company/company_base.html:140
-#: order/models.py:266 order/templates/order/order_base.html:207
+#: company/models.py:125 company/templates/company/company_base.html:140
+#: order/models.py:270 order/templates/order/order_base.html:203
#: order/templates/order/return_order_base.html:175
#: order/templates/order/sales_order_base.html:215
msgid "Contact"
msgstr "Kontakt"
-#: company/models.py:130
+#: company/models.py:126
msgid "Point of contact"
msgstr "Kontaktpunkt"
-#: company/models.py:132
+#: company/models.py:128
msgid "Link to external company information"
msgstr "Link til ekstern bedriftsinformasjon"
-#: company/models.py:146
+#: company/models.py:142
msgid "is customer"
msgstr "er kunde"
-#: company/models.py:146
+#: company/models.py:142
msgid "Do you sell items to this company?"
msgstr "Selger du varer til dette firmaet?"
-#: company/models.py:148
+#: company/models.py:144
msgid "is supplier"
msgstr "er leverandør"
-#: company/models.py:148
+#: company/models.py:144
msgid "Do you purchase items from this company?"
msgstr "Kjøper du varer fra dette firmaet?"
-#: company/models.py:150
+#: company/models.py:146
msgid "is manufacturer"
msgstr "er produsent"
-#: company/models.py:150
+#: company/models.py:146
msgid "Does this company manufacture parts?"
msgstr "Produserer dette firmaet deler?"
-#: company/models.py:157
+#: company/models.py:153
msgid "Default currency used for this company"
msgstr "Standardvaluta brukt for dette firmaet"
-#: company/models.py:223 company/templates/company/company_base.html:8
+#: company/models.py:235 company/models.py:328
+#: company/templates/company/company_base.html:8
#: company/templates/company/company_base.html:12
-#: templates/InvenTree/search.html:178 templates/js/translated/company.js:487
+#: templates/InvenTree/search.html:178 templates/js/translated/company.js:494
msgid "Company"
msgstr "Firma"
-#: company/models.py:278 company/models.py:553 stock/models.py:675
-#: stock/serializers.py:155 stock/templates/stock/item_base.html:143
-#: templates/js/translated/bom.js:621
+#: company/models.py:324
+msgid "Company already has a primary address"
+msgstr ""
+
+#: company/models.py:329
+msgid "Select company"
+msgstr ""
+
+#: company/models.py:332
+msgid "Address title"
+msgstr ""
+
+#: company/models.py:333
+msgid "Title describing the address entry"
+msgstr ""
+
+#: company/models.py:337
+msgid "Primary address"
+msgstr ""
+
+#: company/models.py:338
+msgid "Set as primary address"
+msgstr ""
+
+#: company/models.py:341 templates/js/translated/company.js:941
+#: templates/js/translated/company.js:1002
+msgid "Line 1"
+msgstr ""
+
+#: company/models.py:342
+msgid "Address line 1"
+msgstr ""
+
+#: company/models.py:346 templates/js/translated/company.js:942
+#: templates/js/translated/company.js:1008
+msgid "Line 2"
+msgstr ""
+
+#: company/models.py:347
+msgid "Address line 2"
+msgstr ""
+
+#: company/models.py:351 company/models.py:352
+#: templates/js/translated/company.js:1014
+msgid "Postal code"
+msgstr ""
+
+#: company/models.py:356
+msgid "City/Region"
+msgstr ""
+
+#: company/models.py:357
+msgid "Postal code city/region"
+msgstr ""
+
+#: company/models.py:361
+msgid "State/Province"
+msgstr ""
+
+#: company/models.py:362
+msgid "State or province"
+msgstr ""
+
+#: company/models.py:366 templates/js/translated/company.js:1032
+msgid "Country"
+msgstr ""
+
+#: company/models.py:367
+msgid "Address country"
+msgstr ""
+
+#: company/models.py:371
+msgid "Courier shipping notes"
+msgstr ""
+
+#: company/models.py:372
+msgid "Notes for shipping courier"
+msgstr ""
+
+#: company/models.py:376
+msgid "Internal shipping notes"
+msgstr ""
+
+#: company/models.py:377
+msgid "Shipping notes for internal use"
+msgstr ""
+
+#: company/models.py:382
+msgid "Link to address information (external)"
+msgstr ""
+
+#: company/models.py:427 company/models.py:702 stock/models.py:675
+#: stock/serializers.py:204 stock/templates/stock/item_base.html:143
+#: templates/js/translated/bom.js:622
msgid "Base Part"
msgstr "Basisdel"
-#: company/models.py:282 company/models.py:557
+#: company/models.py:431 company/models.py:706
msgid "Select part"
msgstr "Velg del"
-#: company/models.py:293 company/templates/company/company_base.html:77
+#: company/models.py:442 company/templates/company/company_base.html:77
#: company/templates/company/manufacturer_part.html:90
-#: company/templates/company/supplier_part.html:146 part/serializers.py:354
+#: company/templates/company/supplier_part.html:146 part/serializers.py:404
#: stock/templates/stock/item_base.html:208
-#: templates/js/translated/company.js:498
-#: templates/js/translated/company.js:824
-#: templates/js/translated/company.js:954
-#: templates/js/translated/company.js:1221
-#: templates/js/translated/table_filters.js:709
+#: templates/js/translated/company.js:505
+#: templates/js/translated/company.js:1149
+#: templates/js/translated/company.js:1327
+#: templates/js/translated/company.js:1642
+#: templates/js/translated/table_filters.js:731
msgid "Manufacturer"
msgstr "Produsent"
-#: company/models.py:294
+#: company/models.py:443
msgid "Select manufacturer"
msgstr "Velg produsent"
-#: company/models.py:300 company/templates/company/manufacturer_part.html:101
-#: company/templates/company/supplier_part.html:154 part/serializers.py:360
-#: templates/js/translated/company.js:340
-#: templates/js/translated/company.js:823
-#: templates/js/translated/company.js:970
-#: templates/js/translated/company.js:1240 templates/js/translated/part.js:1773
-#: templates/js/translated/purchase_order.js:1814
-#: templates/js/translated/purchase_order.js:2021
+#: company/models.py:449 company/templates/company/manufacturer_part.html:101
+#: company/templates/company/supplier_part.html:154 part/serializers.py:410
+#: templates/js/translated/company.js:350
+#: templates/js/translated/company.js:1148
+#: templates/js/translated/company.js:1343
+#: templates/js/translated/company.js:1661 templates/js/translated/part.js:1772
+#: templates/js/translated/purchase_order.js:1829
+#: templates/js/translated/purchase_order.js:2031
msgid "MPN"
msgstr "MPN"
-#: company/models.py:301
+#: company/models.py:450
msgid "Manufacturer Part Number"
msgstr "Produsentens varenummer"
-#: company/models.py:307
+#: company/models.py:456
msgid "URL for external manufacturer part link"
msgstr "URL for ekstern produsentdel-lenke"
-#: company/models.py:313
+#: company/models.py:462
msgid "Manufacturer part description"
msgstr "Produsentens delbeskrivelse"
-#: company/models.py:360 company/models.py:384 company/models.py:578
+#: company/models.py:509 company/models.py:533 company/models.py:727
#: company/templates/company/manufacturer_part.html:7
#: company/templates/company/manufacturer_part.html:24
#: stock/templates/stock/item_base.html:218
msgid "Manufacturer Part"
msgstr "Produsentdeler"
-#: company/models.py:391
+#: company/models.py:540
msgid "Parameter name"
msgstr "Parameternavn"
-#: company/models.py:397
+#: company/models.py:546
#: report/templates/report/inventree_test_report_base.html:104
-#: stock/models.py:2255 templates/js/translated/company.js:872
-#: templates/js/translated/company.js:1077 templates/js/translated/part.js:1465
-#: templates/js/translated/stock.js:1446
+#: stock/models.py:2255 templates/js/translated/company.js:1197
+#: templates/js/translated/company.js:1450 templates/js/translated/part.js:1464
+#: templates/js/translated/stock.js:1445
msgid "Value"
msgstr "Verdi"
-#: company/models.py:398
+#: company/models.py:547
msgid "Parameter value"
msgstr "Parameterverdi"
-#: company/models.py:404 company/templates/company/supplier_part.html:169
-#: part/admin.py:40 part/models.py:987 part/models.py:3407
+#: company/models.py:553 company/templates/company/supplier_part.html:169
+#: part/admin.py:40 part/models.py:988 part/models.py:3441
#: part/templates/part/part_base.html:286
-#: templates/js/translated/company.js:1083 templates/js/translated/part.js:1484
-#: templates/js/translated/part.js:1588 templates/js/translated/part.js:2262
+#: templates/js/translated/company.js:1456 templates/js/translated/part.js:1483
+#: templates/js/translated/part.js:1587 templates/js/translated/part.js:2338
msgid "Units"
msgstr "Enheter"
-#: company/models.py:405
+#: company/models.py:554
msgid "Parameter units"
msgstr "Parameterenheter"
-#: company/models.py:498
+#: company/models.py:647
msgid "Pack units must be compatible with the base part units"
msgstr ""
-#: company/models.py:504
+#: company/models.py:653
msgid "Pack units must be greater than zero"
msgstr ""
-#: company/models.py:520
+#: company/models.py:669
msgid "Linked manufacturer part must reference the same base part"
msgstr "Den sammenkoblede produsentdelen må referere til samme basisdel"
-#: company/models.py:564 company/templates/company/company_base.html:82
-#: company/templates/company/supplier_part.html:130 order/models.py:382
-#: order/templates/order/order_base.html:140 part/bom.py:285 part/bom.py:313
-#: part/serializers.py:343 stock/templates/stock/item_base.html:225
+#: company/models.py:713 company/templates/company/company_base.html:82
+#: company/templates/company/supplier_part.html:130 order/models.py:395
+#: order/templates/order/order_base.html:136 part/bom.py:285 part/bom.py:313
+#: part/serializers.py:393 stock/templates/stock/item_base.html:225
#: templates/email/overdue_purchase_order.html:16
-#: templates/js/translated/company.js:339
-#: templates/js/translated/company.js:502
-#: templates/js/translated/company.js:1194 templates/js/translated/part.js:1741
+#: templates/js/translated/company.js:349
+#: templates/js/translated/company.js:509
+#: templates/js/translated/company.js:1615 templates/js/translated/part.js:1740
#: templates/js/translated/pricing.js:498
-#: templates/js/translated/purchase_order.js:1653
-#: templates/js/translated/table_filters.js:713
+#: templates/js/translated/purchase_order.js:1668
+#: templates/js/translated/table_filters.js:735
msgid "Supplier"
msgstr "Leverandør"
-#: company/models.py:565
+#: company/models.py:714
msgid "Select supplier"
msgstr "Velg leverandør"
-#: company/models.py:570 company/templates/company/supplier_part.html:140
-#: part/bom.py:286 part/bom.py:314 part/serializers.py:349
-#: templates/js/translated/company.js:338 templates/js/translated/part.js:1759
+#: company/models.py:719 company/templates/company/supplier_part.html:140
+#: part/bom.py:286 part/bom.py:314 part/serializers.py:399
+#: templates/js/translated/company.js:348 templates/js/translated/part.js:1758
#: templates/js/translated/pricing.js:510
-#: templates/js/translated/purchase_order.js:1813
-#: templates/js/translated/purchase_order.js:1996
+#: templates/js/translated/purchase_order.js:1828
+#: templates/js/translated/purchase_order.js:2006
msgid "SKU"
msgstr "SKU-kode"
-#: company/models.py:571 part/serializers.py:349
+#: company/models.py:720 part/serializers.py:399
msgid "Supplier stock keeping unit"
msgstr "Leverandørens lagerbeholdningsenhet"
-#: company/models.py:579
+#: company/models.py:728
msgid "Select manufacturer part"
msgstr "Velg produsentdel"
-#: company/models.py:585
+#: company/models.py:734
msgid "URL for external supplier part link"
msgstr "URL for ekstern leverandørdel-lenke"
-#: company/models.py:591
+#: company/models.py:740
msgid "Supplier part description"
msgstr "Leverandørens delbeskrivelse"
-#: company/models.py:596 company/templates/company/supplier_part.html:188
-#: part/admin.py:279 part/models.py:3801 part/templates/part/upload_bom.html:59
+#: company/models.py:745 company/templates/company/supplier_part.html:188
+#: part/admin.py:279 part/models.py:3845 part/templates/part/upload_bom.html:59
#: report/templates/report/inventree_bill_of_materials_report.html:140
#: report/templates/report/inventree_po_report_base.html:32
#: report/templates/report/inventree_return_order_report_base.html:27
#: report/templates/report/inventree_so_report_base.html:32
-#: stock/serializers.py:418
+#: stock/serializers.py:484
msgid "Note"
msgstr "Notat"
-#: company/models.py:600 part/models.py:1919
+#: company/models.py:749 part/models.py:1921
msgid "base cost"
msgstr "grunnkostnad"
-#: company/models.py:600 part/models.py:1919
+#: company/models.py:749 part/models.py:1921
msgid "Minimum charge (e.g. stocking fee)"
msgstr "Minimum betaling (f.eks. lageravgift på lager)"
-#: company/models.py:602 company/templates/company/supplier_part.html:161
+#: company/models.py:751 company/templates/company/supplier_part.html:161
#: stock/admin.py:119 stock/models.py:701
#: stock/templates/stock/item_base.html:241
-#: templates/js/translated/company.js:1256
-#: templates/js/translated/stock.js:2160
+#: templates/js/translated/company.js:1677
+#: templates/js/translated/stock.js:2317
msgid "Packaging"
msgstr "Emballasje"
-#: company/models.py:602
+#: company/models.py:751
msgid "Part packaging"
msgstr "Delemballasje"
-#: company/models.py:606 templates/js/translated/company.js:1261
-#: templates/js/translated/part.js:1793 templates/js/translated/part.js:1848
-#: templates/js/translated/purchase_order.js:300
-#: templates/js/translated/purchase_order.js:827
-#: templates/js/translated/purchase_order.js:1073
-#: templates/js/translated/purchase_order.js:2052
-#: templates/js/translated/purchase_order.js:2069
+#: company/models.py:755 templates/js/translated/company.js:1682
+#: templates/js/translated/part.js:1792 templates/js/translated/part.js:1847
+#: templates/js/translated/purchase_order.js:311
+#: templates/js/translated/purchase_order.js:842
+#: templates/js/translated/purchase_order.js:1088
+#: templates/js/translated/purchase_order.js:2062
+#: templates/js/translated/purchase_order.js:2079
msgid "Pack Quantity"
msgstr "Pakkeantall"
-#: company/models.py:607
+#: company/models.py:756
msgid "Total quantity supplied in a single pack. Leave empty for single items."
msgstr ""
-#: company/models.py:624 part/models.py:1921
+#: company/models.py:773 part/models.py:1923
msgid "multiple"
msgstr "flere"
-#: company/models.py:624
+#: company/models.py:773
msgid "Order multiple"
msgstr "Bestill flere"
-#: company/models.py:632 company/templates/company/supplier_part.html:115
+#: company/models.py:781 company/templates/company/supplier_part.html:115
#: templates/email/build_order_required_stock.html:19
#: templates/email/low_stock_notification.html:17
-#: templates/js/translated/bom.js:1127 templates/js/translated/build.js:2136
-#: templates/js/translated/build.js:3045
-#: templates/js/translated/model_renderers.js:205
-#: templates/js/translated/part.js:670 templates/js/translated/part.js:672
-#: templates/js/translated/part.js:677
-#: templates/js/translated/table_filters.js:286
-#: templates/js/translated/table_filters.js:492
+#: templates/js/translated/bom.js:1145 templates/js/translated/build.js:2490
+#: templates/js/translated/index.js:118
+#: templates/js/translated/model_renderers.js:219
+#: templates/js/translated/part.js:669 templates/js/translated/part.js:671
+#: templates/js/translated/part.js:676
+#: templates/js/translated/table_filters.js:292
+#: templates/js/translated/table_filters.js:510
msgid "Available"
msgstr "Tilgjengelig"
-#: company/models.py:633
+#: company/models.py:782
msgid "Quantity available from supplier"
msgstr "Antall tilgjengelig fra leverandør"
-#: company/models.py:637
+#: company/models.py:786
msgid "Availability Updated"
msgstr "Tilgjengelighet oppdatert"
-#: company/models.py:638
+#: company/models.py:787
msgid "Date of last update of availability data"
msgstr "Dato for siste oppdatering av tilgjengelighetsdata"
-#: company/serializers.py:99
+#: company/serializers.py:156
msgid "Default currency used for this supplier"
msgstr "Standardvaluta brukt for denne leverandøren"
#: company/templates/company/company_base.html:22
-#: templates/js/translated/purchase_order.js:228
+#: templates/js/translated/purchase_order.js:239
msgid "Create Purchase Order"
msgstr "Opprett Innkjøpsordre"
@@ -3816,7 +3878,7 @@ msgid "Edit company information"
msgstr "Rediger firmainformasjon"
#: company/templates/company/company_base.html:34
-#: templates/js/translated/company.js:436
+#: templates/js/translated/company.js:443
msgid "Edit Company"
msgstr "Rediger Firma"
@@ -3856,17 +3918,17 @@ msgstr "Last ned bilde fra URL"
msgid "Delete image"
msgstr "Slett bilde"
-#: company/templates/company/company_base.html:87 order/models.py:779
-#: order/models.py:1738 order/templates/order/return_order_base.html:132
+#: company/templates/company/company_base.html:87 order/models.py:792
+#: order/models.py:1751 order/templates/order/return_order_base.html:132
#: order/templates/order/sales_order_base.html:145 stock/models.py:720
-#: stock/models.py:721 stock/serializers.py:825
+#: stock/models.py:721 stock/serializers.py:942
#: stock/templates/stock/item_base.html:401
#: templates/email/overdue_sales_order.html:16
-#: templates/js/translated/company.js:494
-#: templates/js/translated/return_order.js:284
-#: templates/js/translated/sales_order.js:772
-#: templates/js/translated/stock.js:2696
-#: templates/js/translated/table_filters.js:717
+#: templates/js/translated/company.js:501
+#: templates/js/translated/return_order.js:296
+#: templates/js/translated/sales_order.js:784
+#: templates/js/translated/stock.js:2827
+#: templates/js/translated/table_filters.js:739
msgid "Customer"
msgstr "Kunde"
@@ -3874,6 +3936,13 @@ msgstr "Kunde"
msgid "Uses default currency"
msgstr "Bruker standardvaluta"
+#: company/templates/company/company_base.html:119 order/models.py:279
+#: order/templates/order/order_base.html:210
+#: order/templates/order/return_order_base.html:182
+#: order/templates/order/sales_order_base.html:222
+msgid "Address"
+msgstr "Adresse"
+
#: company/templates/company/company_base.html:126
msgid "Phone"
msgstr "Telefon"
@@ -3906,7 +3975,7 @@ msgstr "Last ned Bilde"
#: company/templates/company/detail.html:15
#: company/templates/company/manufacturer_part_sidebar.html:7
-#: templates/InvenTree/search.html:120 templates/js/translated/search.js:189
+#: templates/InvenTree/search.html:120 templates/js/translated/search.js:147
msgid "Supplier Parts"
msgstr "Leverandørdeler"
@@ -3916,129 +3985,121 @@ msgstr "Opprett ny leverandørdel"
#: company/templates/company/detail.html:20
#: company/templates/company/manufacturer_part.html:123
-#: part/templates/part/detail.html:381
+#: part/templates/part/detail.html:356
msgid "New Supplier Part"
msgstr "Ny leverandørdel"
-#: company/templates/company/detail.html:37
-#: company/templates/company/detail.html:85
-#: part/templates/part/category.html:183
-msgid "Order parts"
-msgstr "Bestill deler"
-
-#: company/templates/company/detail.html:42
-#: company/templates/company/detail.html:90
-msgid "Delete parts"
-msgstr "Slett deler"
-
-#: company/templates/company/detail.html:43
-#: company/templates/company/detail.html:91
-msgid "Delete Parts"
-msgstr "Slett deler"
-
-#: company/templates/company/detail.html:62 templates/InvenTree/search.html:105
-#: templates/js/translated/search.js:193
+#: company/templates/company/detail.html:41 templates/InvenTree/search.html:105
+#: templates/js/translated/search.js:151
msgid "Manufacturer Parts"
msgstr "Produsentdeler"
-#: company/templates/company/detail.html:66
+#: company/templates/company/detail.html:45
msgid "Create new manufacturer part"
msgstr "Opprett ny produsentdel"
-#: company/templates/company/detail.html:67 part/templates/part/detail.html:411
+#: company/templates/company/detail.html:46 part/templates/part/detail.html:376
msgid "New Manufacturer Part"
msgstr "Ny Produsentdel"
-#: company/templates/company/detail.html:108
+#: company/templates/company/detail.html:65
msgid "Supplier Stock"
msgstr "Leverandørs lagerbeholdning"
-#: company/templates/company/detail.html:118
+#: company/templates/company/detail.html:75
#: company/templates/company/sidebar.html:12
#: company/templates/company/supplier_part_sidebar.html:7
#: 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:108 part/templates/part/part_sidebar.html:35
-#: templates/InvenTree/index.html:275 templates/InvenTree/search.html:199
+#: part/templates/part/detail.html:106 part/templates/part/part_sidebar.html:35
+#: templates/InvenTree/index.html:227 templates/InvenTree/search.html:199
#: templates/InvenTree/settings/sidebar.html:55
-#: templates/js/translated/search.js:247 templates/navbar.html:50
+#: templates/js/translated/search.js:205 templates/navbar.html:50
#: users/models.py:43
msgid "Purchase Orders"
msgstr "Innkjøpsordrer"
-#: company/templates/company/detail.html:122
+#: company/templates/company/detail.html:79
#: order/templates/order/purchase_orders.html:17
msgid "Create new purchase order"
msgstr "Opprett ny innkjøpsordre"
-#: company/templates/company/detail.html:123
+#: company/templates/company/detail.html:80
#: order/templates/order/purchase_orders.html:18
msgid "New Purchase Order"
msgstr "Ny innkjøpsordre"
-#: company/templates/company/detail.html:146
+#: company/templates/company/detail.html:101
#: company/templates/company/sidebar.html:21
#: 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:131 part/templates/part/part_sidebar.html:39
-#: templates/InvenTree/index.html:307 templates/InvenTree/search.html:219
+#: part/templates/part/detail.html:127 part/templates/part/part_sidebar.html:39
+#: templates/InvenTree/index.html:259 templates/InvenTree/search.html:219
#: templates/InvenTree/settings/sidebar.html:57
-#: templates/js/translated/search.js:261 templates/navbar.html:62
+#: templates/js/translated/search.js:219 templates/navbar.html:62
#: users/models.py:44
msgid "Sales Orders"
msgstr "Salgsordre"
-#: company/templates/company/detail.html:150
+#: company/templates/company/detail.html:105
#: order/templates/order/sales_orders.html:20
msgid "Create new sales order"
msgstr "Opprett ny salgsordre"
-#: company/templates/company/detail.html:151
+#: company/templates/company/detail.html:106
#: order/templates/order/sales_orders.html:21
msgid "New Sales Order"
msgstr "Ny salgsordre"
-#: company/templates/company/detail.html:173
-#: templates/js/translated/build.js:1976
+#: company/templates/company/detail.html:126
msgid "Assigned Stock"
msgstr "Tildelt lagerbeholdning"
-#: company/templates/company/detail.html:191
+#: company/templates/company/detail.html:142
#: company/templates/company/sidebar.html:29
#: order/templates/order/return_order_base.html:13
#: order/templates/order/return_orders.html:8
#: order/templates/order/return_orders.html:15
#: templates/InvenTree/settings/sidebar.html:59
-#: templates/js/translated/search.js:274 templates/navbar.html:65
+#: templates/js/translated/search.js:232 templates/navbar.html:65
#: users/models.py:45
msgid "Return Orders"
msgstr "Returordrer"
-#: company/templates/company/detail.html:195
+#: company/templates/company/detail.html:146
#: order/templates/order/return_orders.html:20
msgid "Create new return order"
msgstr "Opprett ny returordre"
-#: company/templates/company/detail.html:196
+#: company/templates/company/detail.html:147
#: order/templates/order/return_orders.html:21
msgid "New Return Order"
msgstr "Ny Returordre"
-#: company/templates/company/detail.html:221
+#: company/templates/company/detail.html:168
msgid "Company Notes"
msgstr "Notater til firma"
-#: company/templates/company/detail.html:236
+#: company/templates/company/detail.html:183
msgid "Company Contacts"
msgstr "Firmakontakter"
-#: company/templates/company/detail.html:240
-#: company/templates/company/detail.html:241
+#: company/templates/company/detail.html:187
+#: company/templates/company/detail.html:188
msgid "Add Contact"
msgstr "Legg til Kontakt"
+#: company/templates/company/detail.html:206
+msgid "Company addresses"
+msgstr ""
+
+#: company/templates/company/detail.html:210
+#: company/templates/company/detail.html:211
+msgid "Add Address"
+msgstr ""
+
#: company/templates/company/index.html:8
msgid "Supplier List"
msgstr "Leverandørliste"
@@ -4050,17 +4111,17 @@ msgstr "Produsenter"
#: company/templates/company/manufacturer_part.html:35
#: company/templates/company/supplier_part.html:228
-#: part/templates/part/detail.html:111 part/templates/part/part_base.html:85
+#: part/templates/part/detail.html:109 part/templates/part/part_base.html:85
msgid "Order part"
msgstr "Bestill del"
#: company/templates/company/manufacturer_part.html:39
-#: templates/js/translated/company.js:1001
+#: templates/js/translated/company.js:1374
msgid "Edit manufacturer part"
msgstr "Endre produsentdel"
#: company/templates/company/manufacturer_part.html:43
-#: templates/js/translated/company.js:1002
+#: templates/js/translated/company.js:1375
msgid "Delete manufacturer part"
msgstr "Slett produsentdel"
@@ -4080,40 +4141,22 @@ msgstr "Ingen produsentinformasjon tilgjengelig"
msgid "Suppliers"
msgstr "Leverandører"
-#: company/templates/company/manufacturer_part.html:136
-#: part/templates/part/detail.html:392
-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:393 part/templates/part/detail.html:423
-#: templates/js/translated/forms.js:506 templates/js/translated/helpers.js:105
-#: templates/js/translated/part.js:370 templates/js/translated/pricing.js:629
-#: templates/js/translated/stock.js:216 users/models.py:247
-msgid "Delete"
-msgstr "Slett"
-
-#: company/templates/company/manufacturer_part.html:166
+#: company/templates/company/manufacturer_part.html:156
#: company/templates/company/manufacturer_part_sidebar.html:5
#: part/templates/part/category_sidebar.html:20
-#: part/templates/part/detail.html:208 part/templates/part/part_sidebar.html:8
+#: part/templates/part/detail.html:195 part/templates/part/part_sidebar.html:8
msgid "Parameters"
msgstr "Parametere"
-#: company/templates/company/manufacturer_part.html:170
-#: part/templates/part/detail.html:213
+#: company/templates/company/manufacturer_part.html:160
+#: part/templates/part/detail.html:200
#: templates/InvenTree/settings/category.html:12
#: templates/InvenTree/settings/part_parameters.html:12
msgid "New Parameter"
msgstr "Nytt Parameter"
-#: company/templates/company/manufacturer_part.html:183
-msgid "Delete parameters"
-msgstr "Slett parametere"
-
-#: company/templates/company/manufacturer_part.html:226
-#: templates/js/translated/part.js:1396
+#: company/templates/company/manufacturer_part.html:206
+#: templates/js/translated/part.js:1395
msgid "Add Parameter"
msgstr "Legg til Parameter"
@@ -4137,23 +4180,28 @@ msgstr "Tildelte lagervarer"
msgid "Contacts"
msgstr "Kontakter"
+#: company/templates/company/sidebar.html:35
+msgid "Addresses"
+msgstr ""
+
#: company/templates/company/supplier_part.html:7
#: company/templates/company/supplier_part.html:24 stock/models.py:684
#: stock/templates/stock/item_base.html:234
-#: templates/js/translated/company.js:1210
-#: templates/js/translated/purchase_order.js:747
-#: templates/js/translated/stock.js:2016
+#: templates/js/translated/company.js:1631
+#: templates/js/translated/purchase_order.js:758
+#: templates/js/translated/stock.js:2173
msgid "Supplier Part"
msgstr "Leverandørdel"
#: company/templates/company/supplier_part.html:51
+#: templates/js/translated/company.js:1557
msgid "Supplier part actions"
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:229
-#: part/templates/part/detail.html:112
+#: part/templates/part/detail.html:110
msgid "Order Part"
msgstr "Bestill del"
@@ -4164,13 +4212,13 @@ msgstr "Oppdater Tilgjengelighet"
#: company/templates/company/supplier_part.html:64
#: company/templates/company/supplier_part.html:65
-#: templates/js/translated/company.js:283
+#: templates/js/translated/company.js:293
msgid "Edit Supplier Part"
msgstr "Rediger Leverandørdel"
#: company/templates/company/supplier_part.html:69
#: company/templates/company/supplier_part.html:70
-#: templates/js/translated/company.js:258
+#: templates/js/translated/company.js:268
msgid "Duplicate Supplier Part"
msgstr "Dupliser Leverandørdel"
@@ -4197,7 +4245,7 @@ msgstr "Opprett ny lagervare"
#: company/templates/company/supplier_part.html:211
#: part/templates/part/detail.html:25 stock/templates/stock/location.html:198
-#: templates/js/translated/stock.js:504
+#: templates/js/translated/stock.js:503
msgid "New Stock Item"
msgstr "Ny Lagervare"
@@ -4205,37 +4253,37 @@ msgstr "Ny Lagervare"
msgid "Supplier Part Orders"
msgstr "Leverandørdelordre"
-#: company/templates/company/supplier_part.html:249
+#: company/templates/company/supplier_part.html:247
msgid "Pricing Information"
msgstr "Prisinformasjon"
-#: company/templates/company/supplier_part.html:254
-#: templates/js/translated/company.js:387
+#: company/templates/company/supplier_part.html:252
+#: templates/js/translated/company.js:397
#: templates/js/translated/pricing.js:684
msgid "Add Price Break"
msgstr "Legg til Prisbrudd"
-#: company/templates/company/supplier_part.html:281
+#: company/templates/company/supplier_part.html:277
msgid "Supplier Part QR Code"
msgstr "Leverandørdel-QR-kode"
-#: company/templates/company/supplier_part.html:292
+#: company/templates/company/supplier_part.html:288
msgid "Link Barcode to Supplier Part"
msgstr "Koble strekkode til Leverandørdel"
-#: company/templates/company/supplier_part.html:365
+#: company/templates/company/supplier_part.html:361
msgid "Update Part Availability"
msgstr "Oppdater Delens Tilgjengelighet"
#: company/templates/company/supplier_part_sidebar.html:5 part/tasks.py:293
-#: part/templates/part/category.html:199
+#: part/templates/part/category.html:182
#: part/templates/part/category_sidebar.html:17 stock/admin.py:47
-#: stock/templates/stock/location.html:168
+#: stock/serializers.py:662 stock/templates/stock/location.html:168
#: stock/templates/stock/location.html:182
#: stock/templates/stock/location.html:194
#: stock/templates/stock/location_sidebar.html:7
-#: templates/InvenTree/search.html:155 templates/js/translated/part.js:1034
-#: templates/js/translated/search.js:214 templates/js/translated/stock.js:2514
+#: templates/InvenTree/search.html:155 templates/js/translated/part.js:1033
+#: templates/js/translated/search.js:172 templates/js/translated/stock.js:2645
#: users/models.py:41
msgid "Stock Items"
msgstr "Lagervarer"
@@ -4261,7 +4309,7 @@ msgstr "Kunder"
msgid "New Customer"
msgstr "Ny Kunde"
-#: company/views.py:52 templates/js/translated/search.js:234
+#: company/views.py:52 templates/js/translated/search.js:192
msgid "Companies"
msgstr "Firmaer"
@@ -4269,72 +4317,76 @@ msgstr "Firmaer"
msgid "New Company"
msgstr "Nytt Firma"
-#: label/models.py:104
+#: label/models.py:112
msgid "Label name"
msgstr "Etikettnavn"
-#: label/models.py:111
+#: label/models.py:119
msgid "Label description"
msgstr "Etikettbeskrivelse"
-#: label/models.py:118
+#: label/models.py:126
msgid "Label"
msgstr "Etikett"
-#: label/models.py:119
+#: label/models.py:127
msgid "Label template file"
msgstr "Etikett-malfil"
-#: label/models.py:125 report/models.py:273
+#: label/models.py:133 report/models.py:273
msgid "Enabled"
msgstr "Aktivert"
-#: label/models.py:126
+#: label/models.py:134
msgid "Label template is enabled"
msgstr "Etikettmal er aktiver"
-#: label/models.py:131
+#: label/models.py:139
msgid "Width [mm]"
msgstr "Bredde [mm]"
-#: label/models.py:132
+#: label/models.py:140
msgid "Label width, specified in mm"
msgstr "Etikettbredde, spesifisert i mm"
-#: label/models.py:138
+#: label/models.py:146
msgid "Height [mm]"
msgstr "Høyde [mm]"
-#: label/models.py:139
+#: label/models.py:147
msgid "Label height, specified in mm"
msgstr "Etiketthøyde, spesifisert i mm"
-#: label/models.py:145 report/models.py:266
+#: label/models.py:153 report/models.py:266
msgid "Filename Pattern"
msgstr "Filnavnmønster"
-#: label/models.py:146
+#: label/models.py:154
msgid "Pattern for generating label filenames"
msgstr "Mønster for å generere etikettens filnavn"
-#: label/models.py:242
+#: label/models.py:250
msgid "Query filters (comma-separated list of key=value pairs),"
msgstr "Søkefilter (kommaseparert liste over nøkkel=verdi-par),"
-#: label/models.py:243 label/models.py:284 label/models.py:312
-#: report/models.py:294 report/models.py:452 report/models.py:490
-#: report/models.py:528
+#: label/models.py:251 label/models.py:292 label/models.py:320
+#: label/models.py:356 report/models.py:294 report/models.py:454
+#: report/models.py:492 report/models.py:530
msgid "Filters"
msgstr "Filtre"
-#: label/models.py:283
+#: label/models.py:291
msgid "Query filters (comma-separated list of key=value pairs"
msgstr "Spørringsfiltre (kommaseparert liste over nøkkel=verdi-par"
-#: label/models.py:311
+#: label/models.py:319
msgid "Part query filters (comma-separated value of key=value pairs)"
msgstr "Spørringsfilter deler (kommaseparert liste over nøkkel=verdi-par)"
+#: label/models.py:355
+msgid "Query filters (comma-separated list of key=value pairs)"
+msgstr ""
+
#: label/templates/label/part/part_label.html:31
#: label/templates/label/stockitem/qr.html:21
#: label/templates/label/stocklocation/qr.html:21
@@ -4352,8 +4404,8 @@ msgstr "QR-kode"
#: report/templates/report/inventree_po_report_base.html:31
#: report/templates/report/inventree_so_report_base.html:31
#: templates/js/translated/order.js:327
-#: templates/js/translated/purchase_order.js:2093
-#: templates/js/translated/sales_order.js:1827
+#: templates/js/translated/purchase_order.js:2103
+#: templates/js/translated/sales_order.js:1839
msgid "Total Price"
msgstr "Total pris"
@@ -4361,30 +4413,30 @@ msgstr "Total pris"
msgid "No matching purchase order found"
msgstr "Ingen samsvarende innkjøpsordre funnet"
-#: order/api.py:1452 order/models.py:1178 order/models.py:1262
+#: order/api.py:1452 order/models.py:1191 order/models.py:1275
#: order/templates/order/order_base.html:9
#: order/templates/order/order_base.html:18
#: report/templates/report/inventree_po_report_base.html:14
#: stock/templates/stock/item_base.html:177
#: templates/email/overdue_purchase_order.html:15
-#: templates/js/translated/part.js:1718 templates/js/translated/pricing.js:790
-#: templates/js/translated/purchase_order.js:154
-#: templates/js/translated/purchase_order.js:748
-#: templates/js/translated/purchase_order.js:1637
-#: templates/js/translated/stock.js:1996 templates/js/translated/stock.js:2644
+#: templates/js/translated/part.js:1717 templates/js/translated/pricing.js:790
+#: templates/js/translated/purchase_order.js:165
+#: templates/js/translated/purchase_order.js:759
+#: templates/js/translated/purchase_order.js:1652
+#: templates/js/translated/stock.js:2153 templates/js/translated/stock.js:2775
msgid "Purchase Order"
msgstr "Innkjøpsordre"
-#: order/api.py:1456 order/models.py:1909 order/models.py:1955
+#: order/api.py:1456 order/models.py:1922 order/models.py:1968
#: order/templates/order/return_order_base.html:9
#: order/templates/order/return_order_base.html:28
#: report/templates/report/inventree_return_order_report_base.html:13
-#: templates/js/translated/return_order.js:269
-#: templates/js/translated/stock.js:2678
+#: templates/js/translated/return_order.js:281
+#: templates/js/translated/stock.js:2809
msgid "Return Order"
msgstr "Returordre"
-#: order/api.py:1458 templates/js/translated/sales_order.js:1030
+#: order/api.py:1458 templates/js/translated/sales_order.js:1042
msgid "Unknown"
msgstr "Ukjent"
@@ -4392,11 +4444,11 @@ msgstr "Ukjent"
msgid "Total price for this order"
msgstr "Total pris for denne ordren"
-#: order/models.py:79 order/serializers.py:49
+#: order/models.py:79 order/serializers.py:50
msgid "Order Currency"
msgstr "Ordre valuta"
-#: order/models.py:81 order/serializers.py:50
+#: order/models.py:81 order/serializers.py:51
msgid "Currency for this order (leave blank to use company default)"
msgstr "Valuta for denne ordren (la stå tom for å bruke firmastandard)"
@@ -4408,492 +4460,496 @@ msgstr "Kontakten samsvarer ikke med valgt firma"
msgid "Order description (optional)"
msgstr "Ordrebeskrivelse (valgfritt)"
-#: order/models.py:234
+#: order/models.py:237
msgid "Select project code for this order"
msgstr "Velg prosjektkode for denne ordren"
-#: order/models.py:236 order/models.py:1094 order/models.py:1454
+#: order/models.py:240 order/models.py:1107 order/models.py:1467
msgid "Link to external page"
msgstr "Lenke til ekstern side"
-#: order/models.py:241
+#: order/models.py:245
msgid "Expected date for order delivery. Order will be overdue after this date."
msgstr "Forventet dato for levering av ordre. Bestillingen vil være forfalt etter denne datoen."
-#: order/models.py:250
+#: order/models.py:254
msgid "Created By"
msgstr "Opprettet av"
-#: order/models.py:257
+#: order/models.py:261
msgid "User or group responsible for this order"
msgstr "Bruker eller gruppe ansvarlig for ordren"
-#: order/models.py:267
+#: order/models.py:271
msgid "Point of contact for this order"
msgstr "Kontaktpunkt for denne ordren"
-#: order/models.py:360 order/models.py:766
+#: order/models.py:280
+msgid "Company address for this order"
+msgstr ""
+
+#: order/models.py:373 order/models.py:779
msgid "Order reference"
msgstr "Ordrereferanse"
-#: order/models.py:368 order/models.py:791
+#: order/models.py:381 order/models.py:804
msgid "Purchase order status"
msgstr "Status for innkjøpsordre"
-#: order/models.py:383
+#: order/models.py:396
msgid "Company from which the items are being ordered"
msgstr "Firma som varene blir bestilt fra"
-#: order/models.py:391 order/templates/order/order_base.html:152
-#: templates/js/translated/purchase_order.js:1662
+#: order/models.py:404 order/templates/order/order_base.html:148
+#: templates/js/translated/purchase_order.js:1677
msgid "Supplier Reference"
msgstr "Leverandørreferanse"
-#: order/models.py:391
+#: order/models.py:404
msgid "Supplier order reference code"
msgstr "Leverandør ordrereferanse"
-#: order/models.py:398
+#: order/models.py:411
msgid "received by"
msgstr "mottatt av"
-#: order/models.py:403 order/models.py:1761
+#: order/models.py:416 order/models.py:1774
msgid "Issue Date"
msgstr "Utgivelsesdato"
-#: order/models.py:404 order/models.py:1762
+#: order/models.py:417 order/models.py:1775
msgid "Date order was issued"
msgstr "Dato bestilling ble sendt"
-#: order/models.py:410 order/models.py:1768
+#: order/models.py:423 order/models.py:1781
msgid "Date order was completed"
msgstr "Dato ordre ble fullført"
-#: order/models.py:445
+#: order/models.py:458
msgid "Part supplier must match PO supplier"
msgstr "Delleverandør må matche PO-leverandør"
-#: order/models.py:606
+#: order/models.py:619
msgid "Quantity must be a positive number"
msgstr "Mengde må være positiv"
-#: order/models.py:780
+#: order/models.py:793
msgid "Company to which the items are being sold"
msgstr "Firma som varene selges til"
-#: order/models.py:799 order/models.py:1755
+#: order/models.py:812 order/models.py:1768
msgid "Customer Reference "
msgstr "Kundereferanse "
-#: order/models.py:799 order/models.py:1756
+#: order/models.py:812 order/models.py:1769
msgid "Customer order reference code"
msgstr "Kundens ordrereferanse"
-#: order/models.py:801 order/models.py:1408
-#: templates/js/translated/sales_order.js:831
-#: templates/js/translated/sales_order.js:1012
+#: order/models.py:814 order/models.py:1421
+#: templates/js/translated/sales_order.js:843
+#: templates/js/translated/sales_order.js:1024
msgid "Shipment Date"
msgstr "Leveringsdato"
-#: order/models.py:808
+#: order/models.py:821
msgid "shipped by"
msgstr "sendt av"
-#: order/models.py:857
+#: order/models.py:870
msgid "Order cannot be completed as no parts have been assigned"
msgstr "Bestillingen kan ikke fullføres da ingen deler er tilordnet"
-#: order/models.py:861
+#: order/models.py:874
msgid "Only an open order can be marked as complete"
msgstr "Kun en åpen ordre kan merkes som fullført"
-#: order/models.py:864 templates/js/translated/sales_order.js:491
+#: order/models.py:877 templates/js/translated/sales_order.js:503
msgid "Order cannot be completed as there are incomplete shipments"
msgstr "Bestillingen kan ikke fullføres da det finnes ufullstendige varepartier"
-#: order/models.py:867
+#: order/models.py:880
msgid "Order cannot be completed as there are incomplete line items"
msgstr "Denne ordren kan ikke fullføres da det fortsatt er ufullstendige artikler"
-#: order/models.py:1074
+#: order/models.py:1087
msgid "Item quantity"
msgstr "Antall"
-#: order/models.py:1087
+#: order/models.py:1100
msgid "Line item reference"
msgstr "Linje referanse"
-#: order/models.py:1089
+#: order/models.py:1102
msgid "Line item notes"
msgstr "Linje notat"
-#: order/models.py:1100
+#: order/models.py:1113
msgid "Target date for this line item (leave blank to use the target date from the order)"
msgstr "Måldato for denne linjen (la stå tomt for å bruke måldatoen fra ordren)"
-#: order/models.py:1118
+#: order/models.py:1131
msgid "Line item description (optional)"
msgstr ""
-#: order/models.py:1123
+#: order/models.py:1136
msgid "Context"
msgstr "Kontekst"
-#: order/models.py:1124
+#: order/models.py:1137
msgid "Additional context for this line"
msgstr "Ytterligere kontekst for denne linjen"
-#: order/models.py:1133
+#: order/models.py:1146
msgid "Unit price"
msgstr "Enhetspris"
-#: order/models.py:1163
+#: order/models.py:1176
msgid "Supplier part must match supplier"
msgstr "Delens leverandør må samsvare med leverandør"
-#: order/models.py:1171
+#: order/models.py:1184
msgid "deleted"
msgstr "slettet"
-#: order/models.py:1177 order/models.py:1262 order/models.py:1303
-#: order/models.py:1402 order/models.py:1551 order/models.py:1908
-#: order/models.py:1955 templates/js/translated/sales_order.js:1474
+#: order/models.py:1190 order/models.py:1275 order/models.py:1316
+#: order/models.py:1415 order/models.py:1564 order/models.py:1921
+#: order/models.py:1968 templates/js/translated/sales_order.js:1486
msgid "Order"
msgstr "Ordre"
-#: order/models.py:1196
+#: order/models.py:1209
msgid "Supplier part"
msgstr "Leverandørdel"
-#: order/models.py:1203 order/templates/order/order_base.html:200
-#: templates/js/translated/part.js:1841 templates/js/translated/part.js:1872
-#: templates/js/translated/purchase_order.js:1276
-#: templates/js/translated/purchase_order.js:2137
-#: templates/js/translated/return_order.js:748
-#: templates/js/translated/table_filters.js:90
-#: templates/js/translated/table_filters.js:515
+#: order/models.py:1216 order/templates/order/order_base.html:196
+#: templates/js/translated/part.js:1840 templates/js/translated/part.js:1871
+#: templates/js/translated/purchase_order.js:1291
+#: templates/js/translated/purchase_order.js:2147
+#: templates/js/translated/return_order.js:760
+#: templates/js/translated/table_filters.js:96
+#: templates/js/translated/table_filters.js:537
msgid "Received"
msgstr "Mottatt"
-#: order/models.py:1204
+#: order/models.py:1217
msgid "Number of items received"
msgstr "Antall enheter mottatt"
-#: order/models.py:1211 stock/models.py:823 stock/serializers.py:252
+#: order/models.py:1224 stock/models.py:823 stock/serializers.py:314
#: stock/templates/stock/item_base.html:184
-#: templates/js/translated/stock.js:2047
+#: templates/js/translated/stock.js:2204
msgid "Purchase Price"
msgstr "Innkjøpspris"
-#: order/models.py:1212
+#: order/models.py:1225
msgid "Unit purchase price"
msgstr "Enhet-innkjøpspris"
-#: order/models.py:1225
+#: order/models.py:1238
msgid "Where does the Purchaser want this item to be stored?"
msgstr "Hvor vil innkjøper at artikkelen skal lagres?"
-#: order/models.py:1291
+#: order/models.py:1304
msgid "Virtual part cannot be assigned to a sales order"
msgstr "Virtuell del kan ikke tildeles salgsordre"
-#: order/models.py:1296
+#: order/models.py:1309
msgid "Only salable parts can be assigned to a sales order"
msgstr "Kun salgbare deler kan tildeles en salgsordre"
-#: order/models.py:1322 part/templates/part/part_pricing.html:107
+#: order/models.py:1335 part/templates/part/part_pricing.html:107
#: part/templates/part/prices.html:128 templates/js/translated/pricing.js:943
msgid "Sale Price"
msgstr "Salgspris"
-#: order/models.py:1323
+#: order/models.py:1336
msgid "Unit sale price"
msgstr "Enhets-salgspris"
-#: order/models.py:1333
+#: order/models.py:1346
msgid "Shipped quantity"
msgstr "Sendt antall"
-#: order/models.py:1409
+#: order/models.py:1422
msgid "Date of shipment"
msgstr "Dato for forsendelse"
-#: order/models.py:1414 templates/js/translated/sales_order.js:1024
+#: order/models.py:1427 templates/js/translated/sales_order.js:1036
msgid "Delivery Date"
msgstr ""
-#: order/models.py:1415
+#: order/models.py:1428
msgid "Date of delivery of shipment"
msgstr ""
-#: order/models.py:1422
+#: order/models.py:1435
msgid "Checked By"
msgstr "Sjekket Av"
-#: order/models.py:1423
+#: order/models.py:1436
msgid "User who checked this shipment"
msgstr "Brukeren som sjekket forsendelsen"
-#: order/models.py:1430 order/models.py:1627 order/serializers.py:1248
-#: order/serializers.py:1376 templates/js/translated/model_renderers.js:415
+#: order/models.py:1443 order/models.py:1640 order/serializers.py:1254
+#: order/serializers.py:1382 templates/js/translated/model_renderers.js:429
msgid "Shipment"
msgstr "Forsendelse"
-#: order/models.py:1431
+#: order/models.py:1444
msgid "Shipment number"
msgstr "Forsendelsesnummer"
-#: order/models.py:1439
+#: order/models.py:1452
msgid "Tracking Number"
msgstr "Sporingsnummer"
-#: order/models.py:1440
+#: order/models.py:1453
msgid "Shipment tracking information"
msgstr "Sporingsinformasjon for forsendelse"
-#: order/models.py:1447
+#: order/models.py:1460
msgid "Invoice Number"
msgstr "Fakturanummer"
-#: order/models.py:1448
+#: order/models.py:1461
msgid "Reference number for associated invoice"
msgstr "Referansenummer for tilknyttet faktura"
-#: order/models.py:1470
+#: order/models.py:1483
msgid "Shipment has already been sent"
msgstr "Forsendelsen er allerede sendt"
-#: order/models.py:1473
+#: order/models.py:1486
msgid "Shipment has no allocated stock items"
msgstr "Forsendelsen har ingen tildelte lagervarer"
-#: order/models.py:1586 order/models.py:1588
+#: order/models.py:1599 order/models.py:1601
msgid "Stock item has not been assigned"
msgstr "Lagervarer er ikke blitt tildelt"
-#: order/models.py:1592
+#: order/models.py:1605
msgid "Cannot allocate stock item to a line with a different part"
msgstr "Kan ikke tildele lagervare til en linje med annen del"
-#: order/models.py:1594
+#: order/models.py:1607
msgid "Cannot allocate stock to a line without a part"
msgstr "Kan ikke tildele lagerbeholdning til en linje uten en del"
-#: order/models.py:1597
+#: order/models.py:1610
msgid "Allocation quantity cannot exceed stock quantity"
msgstr "Tildelingsantall kan ikke overstige tilgjengelig lagerbeholdning"
-#: order/models.py:1607 order/serializers.py:1110
+#: order/models.py:1620 order/serializers.py:1116
msgid "Quantity must be 1 for serialized stock item"
msgstr "Antall må være 1 for serialisert lagervare"
-#: order/models.py:1610
+#: order/models.py:1623
msgid "Sales order does not match shipment"
msgstr "Salgsordre samsvarer ikke med forsendelse"
-#: order/models.py:1611
+#: order/models.py:1624
msgid "Shipment does not match sales order"
msgstr "Forsendelsen samsvarer ikke med salgsordre"
-#: order/models.py:1619
+#: order/models.py:1632
msgid "Line"
msgstr "Linje"
-#: order/models.py:1628
+#: order/models.py:1641
msgid "Sales order shipment reference"
msgstr "Forsendelsesreferanse for salgsordre"
-#: order/models.py:1641 order/models.py:1916
-#: templates/js/translated/return_order.js:706
+#: order/models.py:1654 order/models.py:1929
+#: templates/js/translated/return_order.js:718
msgid "Item"
msgstr "Artikkel"
-#: order/models.py:1642
+#: order/models.py:1655
msgid "Select stock item to allocate"
msgstr "Velg lagervare å tildele"
-#: order/models.py:1645
+#: order/models.py:1658
msgid "Enter stock allocation quantity"
msgstr "Angi lagertildelingsmengde"
-#: order/models.py:1725
+#: order/models.py:1738
msgid "Return Order reference"
msgstr "Returordre-referanse"
-#: order/models.py:1739
+#: order/models.py:1752
msgid "Company from which items are being returned"
msgstr "Firmaet delen skal returneres fra"
-#: order/models.py:1750
+#: order/models.py:1763
msgid "Return order status"
msgstr "Returordrestatus"
-#: order/models.py:1901
+#: order/models.py:1914
msgid "Only serialized items can be assigned to a Return Order"
msgstr "Kun serialiserte artikler kan tilordnes en Returordre"
-#: order/models.py:1917
+#: order/models.py:1930
msgid "Select item to return from customer"
msgstr "Velg artikkel som skal returneres fra kunde"
-#: order/models.py:1922
+#: order/models.py:1935
msgid "Received Date"
msgstr "Mottatt Dato"
-#: order/models.py:1923
+#: order/models.py:1936
msgid "The date this this return item was received"
msgstr "Datoen denne returartikkelen ble mottatt"
-#: order/models.py:1934 templates/js/translated/return_order.js:717
-#: templates/js/translated/table_filters.js:93
+#: order/models.py:1947 templates/js/translated/return_order.js:729
+#: templates/js/translated/table_filters.js:99
msgid "Outcome"
msgstr "Utfall"
-#: order/models.py:1934
+#: order/models.py:1947
msgid "Outcome for this line item"
msgstr "Utfall for dette linjeelementet"
-#: order/models.py:1940
+#: order/models.py:1953
msgid "Cost associated with return or repair for this line item"
msgstr "Kostnad forbundet med retur eller reparasjon for dette linjeelementet"
-#: order/serializers.py:247
+#: order/serializers.py:253
msgid "Order cannot be cancelled"
msgstr "Ordren kan ikke kanselleres"
-#: order/serializers.py:262 order/serializers.py:1128
+#: order/serializers.py:268 order/serializers.py:1134
msgid "Allow order to be closed with incomplete line items"
msgstr "Tillat ordre å lukkes med ufullstendige linjeelementer"
-#: order/serializers.py:273 order/serializers.py:1139
+#: order/serializers.py:279 order/serializers.py:1145
msgid "Order has incomplete line items"
msgstr "Ordren har ufullstendige linjeelementer"
-#: order/serializers.py:386
+#: order/serializers.py:392
msgid "Order is not open"
msgstr "Ordren er ikke åpen"
-#: order/serializers.py:404
+#: order/serializers.py:410
msgid "Purchase price currency"
msgstr "Innkjøpsvaluta"
-#: order/serializers.py:422
+#: order/serializers.py:428
msgid "Supplier part must be specified"
msgstr "Leverandørdel må angis"
-#: order/serializers.py:427
+#: order/serializers.py:433
msgid "Purchase order must be specified"
msgstr "Innkjøpsordre må angis"
-#: order/serializers.py:433
+#: order/serializers.py:439
msgid "Supplier must match purchase order"
msgstr "Leverandør må samsvare med innkjøpsordre"
-#: order/serializers.py:434
+#: order/serializers.py:440
msgid "Purchase order must match supplier"
msgstr "Innkjøpsordre må samsvare med leverandør"
-#: order/serializers.py:472 order/serializers.py:1216
+#: order/serializers.py:478 order/serializers.py:1222
msgid "Line Item"
msgstr "Ordrelinje"
-#: order/serializers.py:478
+#: order/serializers.py:484
msgid "Line item does not match purchase order"
msgstr "Linjeelementet samsvarer ikke med innkjøpsordre"
-#: order/serializers.py:488 order/serializers.py:607 order/serializers.py:1589
+#: order/serializers.py:494 order/serializers.py:613 order/serializers.py:1595
msgid "Select destination location for received items"
msgstr "Velg lagerplassering for mottatte enheter"
-#: order/serializers.py:507 templates/js/translated/purchase_order.js:1100
+#: order/serializers.py:513 templates/js/translated/purchase_order.js:1115
msgid "Enter batch code for incoming stock items"
msgstr "Angi batchkode for innkommende lagervarer"
-#: order/serializers.py:515 templates/js/translated/purchase_order.js:1124
+#: order/serializers.py:521 templates/js/translated/purchase_order.js:1139
msgid "Enter serial numbers for incoming stock items"
msgstr "Angi serienummer for innkommende lagervarer"
-#: order/serializers.py:528 templates/js/translated/barcode.js:52
+#: order/serializers.py:534 templates/js/translated/barcode.js:52
msgid "Barcode"
msgstr "Strekkode"
-#: order/serializers.py:529
+#: order/serializers.py:535
msgid "Scanned barcode"
msgstr "Skannet strekkode"
-#: order/serializers.py:545
+#: order/serializers.py:551
msgid "Barcode is already in use"
msgstr "Strekkode allerede i bruk"
-#: order/serializers.py:569
+#: order/serializers.py:575
msgid "An integer quantity must be provided for trackable parts"
msgstr "Heltallsverdi må angis for sporbare deler"
-#: order/serializers.py:623 order/serializers.py:1604
+#: order/serializers.py:629 order/serializers.py:1610
msgid "Line items must be provided"
msgstr "Linjeelementer må være oppgitt"
-#: order/serializers.py:640
+#: order/serializers.py:646
msgid "Destination location must be specified"
msgstr "Målplassering må angis"
-#: order/serializers.py:651
+#: order/serializers.py:657
msgid "Supplied barcode values must be unique"
msgstr "Angitte strekkodeverdier må være unike"
-#: order/serializers.py:950
+#: order/serializers.py:956
msgid "Sale price currency"
msgstr "Valuta for salgspris"
-#: order/serializers.py:1007
+#: order/serializers.py:1013
msgid "No shipment details provided"
msgstr "Ingen forsendelsesopplysninger oppgitt"
-#: order/serializers.py:1071 order/serializers.py:1225
+#: order/serializers.py:1077 order/serializers.py:1231
msgid "Line item is not associated with this order"
msgstr "Linjeelement er ikke knyttet til denne ordren"
-#: order/serializers.py:1093
+#: order/serializers.py:1099
msgid "Quantity must be positive"
msgstr "Mengden må være positiv"
-#: order/serializers.py:1238
+#: order/serializers.py:1244
msgid "Enter serial numbers to allocate"
msgstr "Skriv inn serienummer for å tildele"
-#: order/serializers.py:1260 order/serializers.py:1384
+#: order/serializers.py:1266 order/serializers.py:1390
msgid "Shipment has already been shipped"
msgstr "Forsendelsen er allerede sendt"
-#: order/serializers.py:1263 order/serializers.py:1387
+#: order/serializers.py:1269 order/serializers.py:1393
msgid "Shipment is not associated with this order"
msgstr "Forsendelsen er ikke knyttet til denne ordren"
-#: order/serializers.py:1317
+#: order/serializers.py:1323
msgid "No match found for the following serial numbers"
msgstr "Ingen treff funnet for følgende serienummer"
-#: order/serializers.py:1327
+#: order/serializers.py:1333
msgid "The following serial numbers are already allocated"
msgstr "Følgende serienummer er allerede tildelt"
-#: order/serializers.py:1555
+#: order/serializers.py:1561
msgid "Return order line item"
msgstr "Returordrelinje"
-#: order/serializers.py:1562
+#: order/serializers.py:1568
msgid "Line item does not match return order"
msgstr "Linjeelementet samsvarer ikke med returordre"
-#: order/serializers.py:1565
+#: order/serializers.py:1571
msgid "Line item has already been received"
msgstr "Linjeelementet er allerede mottatt"
-#: order/serializers.py:1597
+#: order/serializers.py:1603
msgid "Items can only be received against orders which are in progress"
msgstr "Artikler kan bare mottas mot ordrer som pågår"
-#: order/serializers.py:1678
+#: order/serializers.py:1684
msgid "Line price currency"
msgstr "Valuta for linje"
@@ -4957,82 +5013,74 @@ msgid "Issue Order"
msgstr "Send ordre"
#: order/templates/order/order_base.html:83
-msgid "Receive items"
-msgstr "Motta artikler"
-
-#: order/templates/order/order_base.html:85
-msgid "Receive Items"
-msgstr "Motta Artikler"
-
-#: order/templates/order/order_base.html:87
#: order/templates/order/return_order_base.html:87
msgid "Mark order as complete"
msgstr "Merk ordren som fullført"
-#: order/templates/order/order_base.html:88
+#: order/templates/order/order_base.html:84
#: order/templates/order/return_order_base.html:88
#: order/templates/order/sales_order_base.html:94
msgid "Complete Order"
msgstr "Fullfør ordre"
-#: order/templates/order/order_base.html:95
+#: order/templates/order/order_base.html:91
msgid "Supplier part thumbnail"
msgstr ""
-#: order/templates/order/order_base.html:110
+#: order/templates/order/order_base.html:106
#: order/templates/order/return_order_base.html:102
#: order/templates/order/sales_order_base.html:107
msgid "Order Reference"
msgstr "Ordrereferanse"
-#: order/templates/order/order_base.html:115
+#: order/templates/order/order_base.html:111
#: order/templates/order/return_order_base.html:107
#: order/templates/order/sales_order_base.html:112
msgid "Order Description"
msgstr "Ordrebeskrivelse"
-#: order/templates/order/order_base.html:122
+#: order/templates/order/order_base.html:118
#: order/templates/order/return_order_base.html:114
#: order/templates/order/sales_order_base.html:119
msgid "Order Status"
msgstr "Ordrestatus"
-#: order/templates/order/order_base.html:145
+#: order/templates/order/order_base.html:141
msgid "No suppplier information available"
msgstr "Ingen leverandørinformasjon tilgjengelig"
-#: order/templates/order/order_base.html:158
+#: order/templates/order/order_base.html:154
#: order/templates/order/sales_order_base.html:158
msgid "Completed Line Items"
msgstr "Fullførte elementer"
-#: order/templates/order/order_base.html:164
+#: order/templates/order/order_base.html:160
#: order/templates/order/sales_order_base.html:164
#: order/templates/order/sales_order_base.html:174
msgid "Incomplete"
msgstr "Ufullstendig"
-#: order/templates/order/order_base.html:183
+#: order/templates/order/order_base.html:179
#: order/templates/order/return_order_base.html:158
#: report/templates/report/inventree_build_order_base.html:121
msgid "Issued"
msgstr ""
-#: order/templates/order/order_base.html:221
+#: order/templates/order/order_base.html:224
msgid "Total cost"
msgstr ""
-#: order/templates/order/order_base.html:225
-#: order/templates/order/return_order_base.html:193
-#: order/templates/order/sales_order_base.html:233
+#: order/templates/order/order_base.html:228
+#: order/templates/order/return_order_base.html:200
+#: order/templates/order/sales_order_base.html:240
msgid "Total cost could not be calculated"
msgstr "Total kostnad kunne ikke beregnes"
-#: order/templates/order/order_base.html:331
+#: order/templates/order/order_base.html:318
msgid "Purchase Order QR Code"
msgstr "Innkjøpsordre-QR-kode"
-#: order/templates/order/order_base.html:343
+#: order/templates/order/order_base.html:330
msgid "Link Barcode to Purchase Order"
msgstr "Koble strekkode til Innkjøpsordre"
@@ -5085,13 +5133,13 @@ msgstr "Duplikatvalg"
#: part/templates/part/import_wizard/ajax_match_references.html:42
#: part/templates/part/import_wizard/match_fields.html:71
#: part/templates/part/import_wizard/match_references.html:49
-#: templates/js/translated/bom.js:132 templates/js/translated/build.js:512
-#: templates/js/translated/build.js:2348
-#: templates/js/translated/purchase_order.js:692
-#: templates/js/translated/purchase_order.js:1206
-#: templates/js/translated/return_order.js:494
-#: templates/js/translated/sales_order.js:1097
-#: templates/js/translated/stock.js:681 templates/js/translated/stock.js:850
+#: templates/js/translated/bom.js:133 templates/js/translated/build.js:518
+#: templates/js/translated/build.js:1555
+#: templates/js/translated/purchase_order.js:703
+#: templates/js/translated/purchase_order.js:1221
+#: templates/js/translated/return_order.js:506
+#: templates/js/translated/sales_order.js:1109
+#: templates/js/translated/stock.js:680 templates/js/translated/stock.js:849
#: templates/patterns/wizard/match_fields.html:70
msgid "Remove row"
msgstr "Fjern rad"
@@ -5152,9 +5200,9 @@ msgstr "Innkjøpsordreartikler"
#: order/templates/order/purchase_order_detail.html:27
#: order/templates/order/return_order_detail.html:24
#: order/templates/order/sales_order_detail.html:24
-#: templates/js/translated/purchase_order.js:419
-#: templates/js/translated/return_order.js:447
-#: templates/js/translated/sales_order.js:222
+#: templates/js/translated/purchase_order.js:430
+#: templates/js/translated/return_order.js:459
+#: templates/js/translated/sales_order.js:234
msgid "Add Line Item"
msgstr "Legg til linjeelement"
@@ -5165,30 +5213,25 @@ msgstr "Legg til linjeelement"
msgid "Receive Line Items"
msgstr "Motta linjeelementer"
-#: order/templates/order/purchase_order_detail.html:49
#: order/templates/order/purchase_order_detail.html:50
-msgid "Delete Line Items"
-msgstr "Slett linjeelementer"
-
-#: order/templates/order/purchase_order_detail.html:66
-#: order/templates/order/return_order_detail.html:47
-#: order/templates/order/sales_order_detail.html:43
+#: order/templates/order/return_order_detail.html:45
+#: order/templates/order/sales_order_detail.html:41
msgid "Extra Lines"
msgstr "Ekstralinjer"
-#: order/templates/order/purchase_order_detail.html:72
-#: order/templates/order/return_order_detail.html:53
-#: order/templates/order/sales_order_detail.html:49
+#: order/templates/order/purchase_order_detail.html:56
+#: order/templates/order/return_order_detail.html:51
+#: order/templates/order/sales_order_detail.html:47
msgid "Add Extra Line"
msgstr "Legg til Ekstralinje"
-#: order/templates/order/purchase_order_detail.html:92
+#: order/templates/order/purchase_order_detail.html:74
msgid "Received Items"
msgstr "Mottatte artikler"
-#: order/templates/order/purchase_order_detail.html:117
-#: order/templates/order/return_order_detail.html:89
-#: order/templates/order/sales_order_detail.html:149
+#: order/templates/order/purchase_order_detail.html:99
+#: order/templates/order/return_order_detail.html:85
+#: order/templates/order/sales_order_detail.html:139
msgid "Order Notes"
msgstr "Ordrenotater"
@@ -5208,29 +5251,29 @@ msgstr "Skriv ut pakkeliste"
#: order/templates/order/return_order_base.html:139
#: order/templates/order/sales_order_base.html:152
-#: templates/js/translated/return_order.js:297
-#: templates/js/translated/sales_order.js:785
+#: templates/js/translated/return_order.js:309
+#: templates/js/translated/sales_order.js:797
msgid "Customer Reference"
msgstr "Kundereferanse"
-#: order/templates/order/return_order_base.html:189
-#: order/templates/order/sales_order_base.html:229
+#: order/templates/order/return_order_base.html:196
+#: order/templates/order/sales_order_base.html:236
#: part/templates/part/part_pricing.html:32
#: part/templates/part/part_pricing.html:58
#: part/templates/part/part_pricing.html:99
#: part/templates/part/part_pricing.html:114
-#: templates/js/translated/part.js:1046
-#: templates/js/translated/purchase_order.js:1712
-#: templates/js/translated/return_order.js:369
-#: templates/js/translated/sales_order.js:843
+#: templates/js/translated/part.js:1045
+#: templates/js/translated/purchase_order.js:1727
+#: templates/js/translated/return_order.js:381
+#: templates/js/translated/sales_order.js:855
msgid "Total Cost"
msgstr "Total kostnad"
-#: order/templates/order/return_order_base.html:257
+#: order/templates/order/return_order_base.html:264
msgid "Return Order QR Code"
msgstr "Returordre-QR-kode"
-#: order/templates/order/return_order_base.html:269
+#: order/templates/order/return_order_base.html:276
msgid "Link Barcode to Return Order"
msgstr "Koble strekkode til Returordre"
@@ -5248,7 +5291,7 @@ msgid "Ship Items"
msgstr "Send artikler"
#: order/templates/order/sales_order_base.html:93
-#: templates/js/translated/sales_order.js:469
+#: templates/js/translated/sales_order.js:481
msgid "Complete Sales Order"
msgstr "Fullfør Salgsordre"
@@ -5257,16 +5300,16 @@ msgid "This Sales Order has not been fully allocated"
msgstr "Salgsordren er ikke fullstendig tildelt"
#: order/templates/order/sales_order_base.html:170
-#: order/templates/order/sales_order_detail.html:105
+#: order/templates/order/sales_order_detail.html:99
#: order/templates/order/so_sidebar.html:11
msgid "Completed Shipments"
msgstr "Fullførte forsendelser"
-#: order/templates/order/sales_order_base.html:306
+#: order/templates/order/sales_order_base.html:313
msgid "Sales Order QR Code"
msgstr "Salgsordre-QR-kode"
-#: order/templates/order/sales_order_base.html:318
+#: order/templates/order/sales_order_base.html:325
msgid "Link Barcode to Sales Order"
msgstr "Koble strekkode til Salgsordre"
@@ -5274,18 +5317,17 @@ msgstr "Koble strekkode til Salgsordre"
msgid "Sales Order Items"
msgstr "Salgsordreartikler"
-#: order/templates/order/sales_order_detail.html:71
-#: order/templates/order/so_sidebar.html:8 templates/InvenTree/index.html:332
+#: order/templates/order/sales_order_detail.html:67
+#: order/templates/order/so_sidebar.html:8 templates/InvenTree/index.html:284
msgid "Pending Shipments"
msgstr "Ventende forsendelser"
-#: order/templates/order/sales_order_detail.html:75
-#: templates/attachment_table.html:6 templates/js/translated/bom.js:1236
-#: templates/js/translated/build.js:2249
+#: order/templates/order/sales_order_detail.html:71
+#: templates/js/translated/bom.js:1256 templates/js/translated/filters.js:297
msgid "Actions"
msgstr "Handlinger"
-#: order/templates/order/sales_order_detail.html:84
+#: order/templates/order/sales_order_detail.html:80
msgid "New Shipment"
msgstr "Ny forsendelse"
@@ -5311,12 +5353,12 @@ msgstr "Oppdaterte {part} enhetspris to {price}"
msgid "Updated {part} unit-price to {price} and quantity to {qty}"
msgstr "Oppdaterte {part} enhetspris til {price} og antall til {qty}"
-#: part/admin.py:33 part/admin.py:273 part/models.py:3667 part/tasks.py:288
+#: part/admin.py:33 part/admin.py:273 part/models.py:3716 part/tasks.py:288
#: stock/admin.py:101
msgid "Part ID"
msgstr ""
-#: part/admin.py:34 part/admin.py:275 part/models.py:3671 part/tasks.py:289
+#: part/admin.py:34 part/admin.py:275 part/models.py:3720 part/tasks.py:289
#: stock/admin.py:102
msgid "Part Name"
msgstr ""
@@ -5325,19 +5367,19 @@ msgstr ""
msgid "Part Description"
msgstr ""
-#: part/admin.py:36 part/models.py:889 part/templates/part/part_base.html:271
-#: templates/js/translated/part.js:1200 templates/js/translated/part.js:2233
-#: templates/js/translated/stock.js:1795
+#: part/admin.py:36 part/models.py:890 part/templates/part/part_base.html:271
+#: templates/js/translated/part.js:1199 templates/js/translated/part.js:2309
+#: templates/js/translated/stock.js:1952
msgid "IPN"
msgstr ""
-#: part/admin.py:37 part/models.py:896 part/templates/part/part_base.html:279
-#: report/models.py:179 templates/js/translated/part.js:1205
-#: templates/js/translated/part.js:2239
+#: part/admin.py:37 part/models.py:897 part/templates/part/part_base.html:279
+#: report/models.py:179 templates/js/translated/part.js:1204
+#: templates/js/translated/part.js:2315
msgid "Revision"
msgstr ""
-#: part/admin.py:38 part/admin.py:198 part/models.py:875
+#: part/admin.py:38 part/admin.py:198 part/models.py:876
#: part/templates/part/category.html:93 part/templates/part/part_base.html:300
msgid "Keywords"
msgstr ""
@@ -5358,24 +5400,24 @@ msgstr ""
msgid "Default Supplier ID"
msgstr ""
-#: part/admin.py:46 part/models.py:864 part/templates/part/part_base.html:179
+#: part/admin.py:46 part/models.py:865 part/templates/part/part_base.html:179
msgid "Variant Of"
msgstr "Variant av"
-#: part/admin.py:47 part/models.py:980 part/templates/part/part_base.html:205
+#: part/admin.py:47 part/models.py:981 part/templates/part/part_base.html:205
msgid "Minimum Stock"
msgstr ""
#: part/admin.py:61 part/templates/part/part_base.html:199
-#: templates/js/translated/company.js:1299
-#: templates/js/translated/table_filters.js:301
+#: templates/js/translated/company.js:1720
+#: templates/js/translated/table_filters.js:307
msgid "In Stock"
msgstr ""
#: part/admin.py:62 part/bom.py:178 part/templates/part/part_base.html:212
-#: templates/js/translated/bom.js:1167 templates/js/translated/build.js:2191
-#: templates/js/translated/part.js:687 templates/js/translated/part.js:2123
-#: templates/js/translated/table_filters.js:140
+#: templates/js/translated/bom.js:1187 templates/js/translated/build.js:2541
+#: templates/js/translated/part.js:686 templates/js/translated/part.js:2122
+#: templates/js/translated/table_filters.js:146
msgid "On Order"
msgstr ""
@@ -5383,23 +5425,16 @@ msgstr ""
msgid "Used In"
msgstr ""
-#: part/admin.py:64 templates/js/translated/build.js:2203
-#: templates/js/translated/build.js:2465 templates/js/translated/build.js:3052
-#: templates/js/translated/sales_order.js:1906
-#: templates/js/translated/table_filters.js:488
-msgid "Allocated"
-msgstr ""
-
#: part/admin.py:65 part/templates/part/part_base.html:243 stock/admin.py:124
-#: templates/js/translated/part.js:692 templates/js/translated/part.js:2127
+#: templates/js/translated/part.js:691 templates/js/translated/part.js:2126
msgid "Building"
msgstr ""
-#: part/admin.py:66 part/models.py:2930 templates/js/translated/part.js:943
+#: part/admin.py:66 part/models.py:2964 templates/js/translated/part.js:942
msgid "Minimum Cost"
msgstr ""
-#: part/admin.py:67 part/models.py:2936 templates/js/translated/part.js:953
+#: part/admin.py:67 part/models.py:2970 templates/js/translated/part.js:952
msgid "Maximum Cost"
msgstr ""
@@ -5416,13 +5451,13 @@ msgstr ""
msgid "Category Path"
msgstr ""
-#: part/admin.py:202 part/models.py:392 part/templates/part/cat_link.html:3
-#: part/templates/part/category.html:23 part/templates/part/category.html:140
-#: part/templates/part/category.html:160
+#: part/admin.py:202 part/models.py:393 part/serializers.py:307
+#: part/templates/part/cat_link.html:3 part/templates/part/category.html:23
+#: part/templates/part/category.html:140 part/templates/part/category.html:160
#: part/templates/part/category_sidebar.html:9
-#: templates/InvenTree/index.html:86 templates/InvenTree/search.html:84
+#: templates/InvenTree/index.html:36 templates/InvenTree/search.html:84
#: templates/InvenTree/settings/sidebar.html:45
-#: templates/js/translated/part.js:2754 templates/js/translated/search.js:172
+#: templates/js/translated/part.js:2739 templates/js/translated/search.js:130
#: templates/navbar.html:24 users/models.py:38
msgid "Parts"
msgstr "Deler"
@@ -5439,7 +5474,7 @@ msgstr ""
msgid "Parent IPN"
msgstr ""
-#: part/admin.py:274 part/models.py:3675
+#: part/admin.py:274 part/models.py:3724
msgid "Part IPN"
msgstr ""
@@ -5453,35 +5488,35 @@ msgstr ""
msgid "Maximum Price"
msgstr ""
-#: part/api.py:498
+#: part/api.py:501
msgid "Incoming Purchase Order"
msgstr ""
-#: part/api.py:518
+#: part/api.py:521
msgid "Outgoing Sales Order"
msgstr ""
-#: part/api.py:536
+#: part/api.py:539
msgid "Stock produced by Build Order"
msgstr ""
-#: part/api.py:622
+#: part/api.py:625
msgid "Stock required for Build Order"
msgstr ""
-#: part/api.py:770
+#: part/api.py:773
msgid "Valid"
msgstr ""
-#: part/api.py:771
+#: part/api.py:774
msgid "Validate entire Bill of Materials"
msgstr ""
-#: part/api.py:777
+#: part/api.py:780
msgid "This option must be selected"
msgstr ""
-#: part/bom.py:175 part/models.py:127 part/models.py:923
+#: part/bom.py:175 part/models.py:128 part/models.py:924
#: part/templates/part/category.html:115 part/templates/part/part_base.html:369
msgid "Default Location"
msgstr ""
@@ -5491,7 +5526,7 @@ msgid "Total Stock"
msgstr ""
#: part/bom.py:177 part/templates/part/part_base.html:194
-#: templates/js/translated/sales_order.js:1873
+#: templates/js/translated/sales_order.js:1885
msgid "Available Stock"
msgstr ""
@@ -5499,916 +5534,913 @@ msgstr ""
msgid "Input quantity for price calculation"
msgstr ""
-#: part/models.py:75 part/models.py:3616 part/templates/part/category.html:16
+#: part/models.py:76 part/models.py:3665 part/templates/part/category.html:16
#: part/templates/part/part_app_base.html:10
msgid "Part Category"
msgstr ""
-#: part/models.py:76 part/templates/part/category.html:135
-#: templates/InvenTree/search.html:97 templates/js/translated/search.js:200
+#: part/models.py:77 part/templates/part/category.html:135
+#: templates/InvenTree/search.html:97 templates/js/translated/search.js:158
#: users/models.py:37
msgid "Part Categories"
msgstr ""
-#: part/models.py:128
+#: part/models.py:129
msgid "Default location for parts in this category"
msgstr ""
-#: part/models.py:133 stock/models.py:124 templates/js/translated/stock.js:2520
-#: templates/js/translated/table_filters.js:209
-#: templates/js/translated/table_filters.js:229
+#: part/models.py:134 stock/models.py:124 templates/js/translated/stock.js:2651
+#: templates/js/translated/table_filters.js:215
+#: templates/js/translated/table_filters.js:235
msgid "Structural"
msgstr ""
-#: part/models.py:135
+#: part/models.py:136
msgid "Parts may not be directly assigned to a structural category, but may be assigned to child categories."
msgstr ""
-#: part/models.py:139
+#: part/models.py:140
msgid "Default keywords"
msgstr ""
-#: part/models.py:139
+#: part/models.py:140
msgid "Default keywords for parts in this category"
msgstr "Standard nøkkelord for deler i denne kategorien"
-#: part/models.py:144 stock/models.py:113
+#: part/models.py:145 stock/models.py:113
msgid "Icon"
msgstr "Ikon"
-#: part/models.py:145 stock/models.py:114
+#: part/models.py:146 stock/models.py:114
msgid "Icon (optional)"
msgstr "Ikon (valgfritt)"
-#: part/models.py:164
+#: part/models.py:165
msgid "You cannot make this part category structural because some parts are already assigned to it!"
msgstr "Du kan ikke gjøre denne delkategorien strukturell fordi noen deler allerede er tilordnet den!"
-#: part/models.py:475
+#: part/models.py:476
msgid "Invalid choice for parent part"
msgstr "Ugyldig valg for overordnet del"
-#: part/models.py:517 part/models.py:529
+#: part/models.py:518 part/models.py:530
#, python-brace-format
msgid "Part '{p1}' is used in BOM for '{p2}' (recursive)"
msgstr "Del '{p1}' er brukt i stykklisten til '{p2}' (rekursivt)"
-#: part/models.py:601
+#: part/models.py:602
#, python-brace-format
msgid "IPN must match regex pattern {pat}"
msgstr "Internt delnummer må matche regex-mønster {pat}"
-#: part/models.py:672
+#: part/models.py:673
msgid "Stock item with this serial number already exists"
msgstr "Lagervare med dette serienummeret eksisterer allerede"
-#: part/models.py:803
+#: part/models.py:804
msgid "Duplicate IPN not allowed in part settings"
msgstr "Duplikat av internt delnummer er ikke tillatt i delinnstillinger"
-#: part/models.py:808
+#: part/models.py:809
msgid "Part with this Name, IPN and Revision already exists."
msgstr "Del med dette Navnet, internt delnummer og Revisjon eksisterer allerede."
-#: part/models.py:822
+#: part/models.py:823
msgid "Parts cannot be assigned to structural part categories!"
msgstr "Deler kan ikke tilordnes strukturelle delkategorier!"
-#: part/models.py:846 part/models.py:3672
+#: part/models.py:847 part/models.py:3721
msgid "Part name"
msgstr "Delnavn"
-#: part/models.py:852
+#: part/models.py:853
msgid "Is Template"
msgstr "Er Mal"
-#: part/models.py:853
+#: part/models.py:854
msgid "Is this part a template part?"
msgstr "Er delen en maldel?"
-#: part/models.py:863
+#: part/models.py:864
msgid "Is this part a variant of another part?"
msgstr "Er delen en variant av en annen del?"
-#: part/models.py:870
+#: part/models.py:871
msgid "Part description (optional)"
msgstr "Delbeskrivelse (valgfritt)"
-#: part/models.py:876
+#: part/models.py:877
msgid "Part keywords to improve visibility in search results"
msgstr "Del-nøkkelord for å øke synligheten i søkeresultater"
-#: part/models.py:883 part/models.py:3198 part/models.py:3615
-#: part/serializers.py:848 part/templates/part/part_base.html:262
+#: part/models.py:884 part/models.py:3232 part/models.py:3664
+#: part/serializers.py:320 part/serializers.py:910
+#: part/templates/part/part_base.html:262
#: templates/InvenTree/settings/settings_staff_js.html:204
#: templates/js/translated/notification.js:59
-#: templates/js/translated/part.js:2269 templates/js/translated/part.js:2481
+#: templates/js/translated/part.js:2345
msgid "Category"
msgstr "Kategori"
-#: part/models.py:884
+#: part/models.py:885
msgid "Part category"
msgstr "Delkategori"
-#: part/models.py:890
+#: part/models.py:891
msgid "Internal Part Number"
msgstr "Internt delnummer"
-#: part/models.py:895
+#: part/models.py:896
msgid "Part revision or version number"
msgstr "Delrevisjon eller versjonsnummer"
-#: part/models.py:921
+#: part/models.py:922
msgid "Where is this item normally stored?"
msgstr "Hvor er denne artikkelen vanligvis lagret?"
-#: part/models.py:966 part/templates/part/part_base.html:378
+#: part/models.py:967 part/templates/part/part_base.html:378
msgid "Default Supplier"
msgstr "Standard leverandør"
-#: part/models.py:967
+#: part/models.py:968
msgid "Default supplier part"
msgstr "Standard leverandørdel"
-#: part/models.py:974
+#: part/models.py:975
msgid "Default Expiry"
msgstr "Standard utløp"
-#: part/models.py:975
+#: part/models.py:976
msgid "Expiry time (in days) for stock items of this part"
msgstr "Utløpstid (i dager) for lagervarer av denne delen"
-#: part/models.py:981
+#: part/models.py:982
msgid "Minimum allowed stock level"
msgstr "Minimum tillatt lagernivå"
-#: part/models.py:988
+#: part/models.py:989
msgid "Units of measure for this part"
msgstr "Måleenheter for denne delen"
-#: part/models.py:997
+#: part/models.py:998
msgid "Can this part be built from other parts?"
msgstr "Kan denne delen bygges fra andre deler?"
-#: part/models.py:1003
+#: part/models.py:1004
msgid "Can this part be used to build other parts?"
msgstr "Kan denne delen brukes til å bygge andre deler?"
-#: part/models.py:1009
+#: part/models.py:1010
msgid "Does this part have tracking for unique items?"
msgstr "Har denne delen sporing av unike artikler?"
-#: part/models.py:1014
+#: part/models.py:1015
msgid "Can this part be purchased from external suppliers?"
msgstr "Kan denne delen kjøpes inn fra eksterne leverandører?"
-#: part/models.py:1019
+#: part/models.py:1020
msgid "Can this part be sold to customers?"
msgstr "Kan denne delen selges til kunder?"
-#: part/models.py:1024
+#: part/models.py:1025
msgid "Is this part active?"
msgstr "Er denne delen aktiv?"
-#: part/models.py:1029
+#: part/models.py:1030
msgid "Is this a virtual part, such as a software product or license?"
msgstr "Er dette en virtuell del, som et softwareprodukt eller en lisens?"
-#: part/models.py:1031
+#: part/models.py:1032
msgid "BOM checksum"
msgstr "Kontrollsum for stykkliste"
-#: part/models.py:1031
+#: part/models.py:1032
msgid "Stored BOM checksum"
msgstr "Lagret sjekkliste-kontrollsum"
-#: part/models.py:1034
+#: part/models.py:1035
msgid "BOM checked by"
msgstr "Stykkliste sjekket av"
-#: part/models.py:1036
+#: part/models.py:1037
msgid "BOM checked date"
msgstr "Stykkliste sjekket dato"
-#: part/models.py:1040
+#: part/models.py:1041
msgid "Creation User"
msgstr "Opprettingsbruker"
-#: part/models.py:1042
+#: part/models.py:1043
msgid "User responsible for this part"
msgstr "Bruker ansvarlig for denne delen"
-#: part/models.py:1046 part/templates/part/part_base.html:341
+#: part/models.py:1047 part/templates/part/part_base.html:341
#: stock/templates/stock/item_base.html:447
-#: templates/js/translated/part.js:2331
+#: templates/js/translated/part.js:2407
msgid "Last Stocktake"
msgstr "Siste lagertelling"
-#: part/models.py:1921
+#: part/models.py:1923
msgid "Sell multiple"
msgstr "Selg flere"
-#: part/models.py:2853
+#: part/models.py:2887
msgid "Currency used to cache pricing calculations"
msgstr "Valuta som brukes til å bufre prisberegninger"
-#: part/models.py:2870
+#: part/models.py:2904
msgid "Minimum BOM Cost"
msgstr "Minimal stykklistekostnad"
-#: part/models.py:2871
+#: part/models.py:2905
msgid "Minimum cost of component parts"
msgstr "Minste kostnad for komponentdeler"
-#: part/models.py:2876
+#: part/models.py:2910
msgid "Maximum BOM Cost"
msgstr "Maksimal stykklistekostnad"
-#: part/models.py:2877
+#: part/models.py:2911
msgid "Maximum cost of component parts"
msgstr "Maksimal kostnad for komponentdeler"
-#: part/models.py:2882
+#: part/models.py:2916
msgid "Minimum Purchase Cost"
msgstr "Minimal innkjøpskostnad"
-#: part/models.py:2883
+#: part/models.py:2917
msgid "Minimum historical purchase cost"
msgstr "Minimal historisk innkjøpskostnad"
-#: part/models.py:2888
+#: part/models.py:2922
msgid "Maximum Purchase Cost"
msgstr "Maksimal innkjøpskostnad"
-#: part/models.py:2889
+#: part/models.py:2923
msgid "Maximum historical purchase cost"
msgstr "Maksimal historisk innkjøpskostnad"
-#: part/models.py:2894
+#: part/models.py:2928
msgid "Minimum Internal Price"
msgstr "Minimal intern pris"
-#: part/models.py:2895
+#: part/models.py:2929
msgid "Minimum cost based on internal price breaks"
msgstr "Minimal kostnad basert på interne prisbrudd"
-#: part/models.py:2900
+#: part/models.py:2934
msgid "Maximum Internal Price"
msgstr "Maksimal intern pris"
-#: part/models.py:2901
+#: part/models.py:2935
msgid "Maximum cost based on internal price breaks"
msgstr "Maksimal kostnad basert på interne prisbrudd"
-#: part/models.py:2906
+#: part/models.py:2940
msgid "Minimum Supplier Price"
msgstr "Minimal leverandørpris"
-#: part/models.py:2907
+#: part/models.py:2941
msgid "Minimum price of part from external suppliers"
msgstr "Minimumspris for del fra eksterne leverandører"
-#: part/models.py:2912
+#: part/models.py:2946
msgid "Maximum Supplier Price"
msgstr "Maksimal leverandørpris"
-#: part/models.py:2913
+#: part/models.py:2947
msgid "Maximum price of part from external suppliers"
msgstr "Maksimalpris for del fra eksterne leverandører"
-#: part/models.py:2918
+#: part/models.py:2952
msgid "Minimum Variant Cost"
msgstr "Minimal Variantkostnad"
-#: part/models.py:2919
+#: part/models.py:2953
msgid "Calculated minimum cost of variant parts"
msgstr "Beregnet minimal kostnad for variantdeler"
-#: part/models.py:2924
+#: part/models.py:2958
msgid "Maximum Variant Cost"
msgstr "Maksimal Variantkostnad"
-#: part/models.py:2925
+#: part/models.py:2959
msgid "Calculated maximum cost of variant parts"
msgstr "Beregnet maksimal kostnad for variantdeler"
-#: part/models.py:2931
+#: part/models.py:2965
msgid "Calculated overall minimum cost"
msgstr "Beregnet samlet minimal kostnad"
-#: part/models.py:2937
+#: part/models.py:2971
msgid "Calculated overall maximum cost"
msgstr "Beregnet samlet maksimal kostnad"
-#: part/models.py:2942
+#: part/models.py:2976
msgid "Minimum Sale Price"
msgstr "Minimal salgspris"
-#: part/models.py:2943
+#: part/models.py:2977
msgid "Minimum sale price based on price breaks"
msgstr "Minimal salgspris basert på prisbrudd"
-#: part/models.py:2948
+#: part/models.py:2982
msgid "Maximum Sale Price"
msgstr "Maksimal Salgspris"
-#: part/models.py:2949
+#: part/models.py:2983
msgid "Maximum sale price based on price breaks"
msgstr "Maksimal salgspris basert på prisbrudd"
-#: part/models.py:2954
+#: part/models.py:2988
msgid "Minimum Sale Cost"
msgstr "Minimal Salgskostnad"
-#: part/models.py:2955
+#: part/models.py:2989
msgid "Minimum historical sale price"
msgstr "Minimal historisk salgspris"
-#: part/models.py:2960
+#: part/models.py:2994
msgid "Maximum Sale Cost"
msgstr "Maksimal Salgskostnad"
-#: part/models.py:2961
+#: part/models.py:2995
msgid "Maximum historical sale price"
msgstr "Maksimal historisk salgspris"
-#: part/models.py:2980
+#: part/models.py:3014
msgid "Part for stocktake"
msgstr "Del for varetelling"
-#: part/models.py:2985
+#: part/models.py:3019
msgid "Item Count"
msgstr "Antall"
-#: part/models.py:2986
+#: part/models.py:3020
msgid "Number of individual stock entries at time of stocktake"
msgstr "Antall individuelle lagerenheter på tidspunkt for varetelling"
-#: part/models.py:2993
+#: part/models.py:3027
msgid "Total available stock at time of stocktake"
msgstr "Total tilgjengelig lagerbeholdning på tidspunkt for varetelling"
-#: part/models.py:2997 part/models.py:3080
+#: part/models.py:3031 part/models.py:3114
#: part/templates/part/part_scheduling.html:13
#: report/templates/report/inventree_test_report_base.html:106
#: templates/InvenTree/settings/plugin_settings.html:37
#: templates/InvenTree/settings/settings_staff_js.html:360
-#: templates/js/translated/part.js:1059 templates/js/translated/pricing.js:812
+#: templates/js/translated/part.js:1058 templates/js/translated/pricing.js:812
#: templates/js/translated/pricing.js:936
-#: templates/js/translated/purchase_order.js:1691
-#: templates/js/translated/stock.js:2558
+#: templates/js/translated/purchase_order.js:1706
+#: templates/js/translated/stock.js:2689
msgid "Date"
msgstr "Dato"
-#: part/models.py:2998
+#: part/models.py:3032
msgid "Date stocktake was performed"
msgstr "Dato for utført lagertelling"
-#: part/models.py:3006
+#: part/models.py:3040
msgid "Additional notes"
msgstr "Flere notater"
-#: part/models.py:3014
+#: part/models.py:3048
msgid "User who performed this stocktake"
msgstr "Bruker som utførte denne lagertellingen"
-#: part/models.py:3019
+#: part/models.py:3053
msgid "Minimum Stock Cost"
msgstr "Minimal lagerkostnad"
-#: part/models.py:3020
+#: part/models.py:3054
msgid "Estimated minimum cost of stock on hand"
msgstr "Estimert minimal kostnad for lagerbeholdning"
-#: part/models.py:3025
+#: part/models.py:3059
msgid "Maximum Stock Cost"
msgstr "Maksimal lagerkostnad"
-#: part/models.py:3026
+#: part/models.py:3060
msgid "Estimated maximum cost of stock on hand"
msgstr "Estimert maksimal kostnad for lagerbeholdning"
-#: part/models.py:3087 templates/InvenTree/settings/settings_staff_js.html:349
+#: part/models.py:3121 templates/InvenTree/settings/settings_staff_js.html:349
msgid "Report"
msgstr "Rapport"
-#: part/models.py:3088
+#: part/models.py:3122
msgid "Stocktake report file (generated internally)"
msgstr "Lagertellingsrapportfil (generert internt)"
-#: part/models.py:3093 templates/InvenTree/settings/settings_staff_js.html:356
+#: part/models.py:3127 templates/InvenTree/settings/settings_staff_js.html:356
msgid "Part Count"
msgstr "Antall deler"
-#: part/models.py:3094
+#: part/models.py:3128
msgid "Number of parts covered by stocktake"
msgstr "Antall deler dekket av varetellingen"
-#: part/models.py:3102
+#: part/models.py:3136
msgid "User who requested this stocktake report"
msgstr "Bruker som forespurte varetellingsrapporten"
-#: part/models.py:3238
+#: part/models.py:3272
msgid "Test templates can only be created for trackable parts"
msgstr "Testmaler kan bare bli opprettet for sporbare deler"
-#: part/models.py:3255
+#: part/models.py:3289
msgid "Test with this name already exists for this part"
msgstr "Test med dette navnet finnes allerede for denne delen"
-#: part/models.py:3275 templates/js/translated/part.js:2821
+#: part/models.py:3309 templates/js/translated/part.js:2806
msgid "Test Name"
msgstr "Testnavn"
-#: part/models.py:3276
+#: part/models.py:3310
msgid "Enter a name for the test"
msgstr "Angi et navn for testen"
-#: part/models.py:3281
+#: part/models.py:3315
msgid "Test Description"
msgstr "Testbeskrivelse"
-#: part/models.py:3282
+#: part/models.py:3316
msgid "Enter description for this test"
msgstr "Legg inn beskrivelse for denne testen"
-#: part/models.py:3287 templates/js/translated/part.js:2830
-#: templates/js/translated/table_filters.js:423
+#: part/models.py:3321 templates/js/translated/part.js:2815
+#: templates/js/translated/table_filters.js:429
msgid "Required"
msgstr "Påkrevd"
-#: part/models.py:3288
+#: part/models.py:3322
msgid "Is this test required to pass?"
msgstr "Er det påkrevd at denne testen bestås?"
-#: part/models.py:3293 templates/js/translated/part.js:2838
+#: part/models.py:3327 templates/js/translated/part.js:2823
msgid "Requires Value"
msgstr "Krever verdi"
-#: part/models.py:3294
+#: part/models.py:3328
msgid "Does this test require a value when adding a test result?"
msgstr "Krever denne testen en verdi når det legges til et testresultat?"
-#: part/models.py:3299 templates/js/translated/part.js:2845
+#: part/models.py:3333 templates/js/translated/part.js:2830
msgid "Requires Attachment"
msgstr "Krever vedlegg"
-#: part/models.py:3300
+#: part/models.py:3334
msgid "Does this test require a file attachment when adding a test result?"
msgstr "Krever denne testen et filvedlegg når du legger inn et testresultat?"
-#: part/models.py:3346
+#: part/models.py:3380
msgid "Checkbox parameters cannot have units"
msgstr ""
-#: part/models.py:3351
+#: part/models.py:3385
msgid "Checkbox parameters cannot have choices"
msgstr ""
-#: part/models.py:3369
+#: part/models.py:3403
msgid "Choices must be unique"
msgstr ""
-#: part/models.py:3385
+#: part/models.py:3419
msgid "Parameter template name must be unique"
msgstr "Navn på parametermal må være unikt"
-#: part/models.py:3401
+#: part/models.py:3435
msgid "Parameter Name"
msgstr "Parameternavn"
-#: part/models.py:3407
+#: part/models.py:3441
msgid "Physical units for this parameter"
msgstr ""
-#: part/models.py:3417
+#: part/models.py:3451
msgid "Parameter description"
msgstr "Parameterbeskrivelse"
-#: part/models.py:3423 templates/js/translated/part.js:1600
-#: templates/js/translated/table_filters.js:734
+#: part/models.py:3457 templates/js/translated/part.js:1599
+#: templates/js/translated/table_filters.js:756
msgid "Checkbox"
msgstr ""
-#: part/models.py:3424
+#: part/models.py:3458
msgid "Is this parameter a checkbox?"
msgstr ""
-#: part/models.py:3429 templates/js/translated/part.js:1609
+#: part/models.py:3463 templates/js/translated/part.js:1608
msgid "Choices"
msgstr ""
-#: part/models.py:3430
+#: part/models.py:3464
msgid "Valid choices for this parameter (comma-separated)"
msgstr ""
-#: part/models.py:3511
+#: part/models.py:3545
msgid "Invalid choice for parameter value"
msgstr ""
-#: part/models.py:3555
+#: part/models.py:3589
msgid "Parent Part"
msgstr "Overordnet del"
-#: part/models.py:3560 part/models.py:3621 part/models.py:3622
+#: part/models.py:3594 part/models.py:3670 part/models.py:3671
#: templates/InvenTree/settings/settings_staff_js.html:199
msgid "Parameter Template"
msgstr "Parametermal"
-#: part/models.py:3565
+#: part/models.py:3599
msgid "Data"
msgstr "Data"
-#: part/models.py:3565
+#: part/models.py:3599
msgid "Parameter Value"
msgstr "Parameterverdi"
-#: part/models.py:3626 templates/InvenTree/settings/settings_staff_js.html:208
+#: part/models.py:3675 templates/InvenTree/settings/settings_staff_js.html:208
msgid "Default Value"
msgstr "Standardverdi"
-#: part/models.py:3627
+#: part/models.py:3676
msgid "Default Parameter Value"
msgstr "Standard Parameterverdi"
-#: part/models.py:3664
+#: part/models.py:3713
msgid "Part ID or part name"
msgstr "Del-ID eller delnavn"
-#: part/models.py:3668
+#: part/models.py:3717
msgid "Unique part ID value"
msgstr "Unik del-ID-verdi"
-#: part/models.py:3676
+#: part/models.py:3725
msgid "Part IPN value"
msgstr "Delens interne delnummerverdi"
-#: part/models.py:3679
+#: part/models.py:3728
msgid "Level"
msgstr "Nivå"
-#: part/models.py:3680
+#: part/models.py:3729
msgid "BOM level"
msgstr "Stykklistenivå"
-#: part/models.py:3764
+#: part/models.py:3735 part/models.py:4113
+msgid "BOM Item"
+msgstr "Stykklisteartikkel"
+
+#: part/models.py:3808
msgid "Select parent part"
msgstr "Velg overordnet del"
-#: part/models.py:3772
+#: part/models.py:3816
msgid "Sub part"
msgstr "Underordnet del"
-#: part/models.py:3773
+#: part/models.py:3817
msgid "Select part to be used in BOM"
msgstr "Velg del som skal brukes i stykkliste"
-#: part/models.py:3779
+#: part/models.py:3823
msgid "BOM quantity for this BOM item"
msgstr "Stykklisteantall for denne stykklisteartikkelen"
-#: part/models.py:3783 part/templates/part/upload_bom.html:58
-#: templates/js/translated/bom.js:971 templates/js/translated/bom.js:998
-#: templates/js/translated/build.js:2113
-#: templates/js/translated/table_filters.js:156
-#: templates/js/translated/table_filters.js:185
-#: templates/js/translated/table_filters.js:500
-msgid "Optional"
-msgstr "Valgfritt"
-
-#: part/models.py:3784
+#: part/models.py:3828
msgid "This BOM item is optional"
msgstr "Denne stykklisteartikkelen er valgfri"
-#: part/models.py:3789 templates/js/translated/bom.js:967
-#: templates/js/translated/bom.js:1007 templates/js/translated/build.js:2104
-#: templates/js/translated/table_filters.js:160
-#: templates/js/translated/table_filters.js:496
-msgid "Consumable"
-msgstr "Forbruksvare"
-
-#: part/models.py:3790
+#: part/models.py:3834
msgid "This BOM item is consumable (it is not tracked in build orders)"
msgstr "Denne sykklisteartikkelen er forbruksvare (den spores ikke i produksjonsordrer)"
-#: part/models.py:3794 part/templates/part/upload_bom.html:55
+#: part/models.py:3838 part/templates/part/upload_bom.html:55
msgid "Overage"
msgstr "Svinn"
-#: part/models.py:3795
+#: part/models.py:3839
msgid "Estimated build wastage quantity (absolute or percentage)"
msgstr "Forventet produksjonssvinn (absolutt eller prosent)"
-#: part/models.py:3798
+#: part/models.py:3842
msgid "BOM item reference"
msgstr "Stykklisteartikkel-referanse"
-#: part/models.py:3801
+#: part/models.py:3845
msgid "BOM item notes"
msgstr "Stykklisteartikkel-notater"
-#: part/models.py:3805
+#: part/models.py:3849
msgid "Checksum"
msgstr "Kontrollsum"
-#: part/models.py:3805
+#: part/models.py:3849
msgid "BOM line checksum"
msgstr "Stykklistelinje kontrollsum"
-#: part/models.py:3810 templates/js/translated/table_filters.js:144
+#: part/models.py:3854 templates/js/translated/table_filters.js:150
msgid "Validated"
msgstr "Godkjent"
-#: part/models.py:3811
+#: part/models.py:3855
msgid "This BOM item has been validated"
msgstr "Denne stykklisteartikkelen er godkjent"
-#: part/models.py:3816 part/templates/part/upload_bom.html:57
-#: templates/js/translated/bom.js:1024
-#: templates/js/translated/table_filters.js:148
-#: templates/js/translated/table_filters.js:181
+#: part/models.py:3860 part/templates/part/upload_bom.html:57
+#: templates/js/translated/bom.js:1042
+#: templates/js/translated/table_filters.js:154
+#: templates/js/translated/table_filters.js:187
msgid "Gets inherited"
msgstr "Arves"
-#: part/models.py:3817
+#: part/models.py:3861
msgid "This BOM item is inherited by BOMs for variant parts"
msgstr "Denne stykklisteartikkelen er arvet fra stykkliste for variantdeler"
-#: part/models.py:3822 part/templates/part/upload_bom.html:56
-#: templates/js/translated/bom.js:1016
+#: part/models.py:3866 part/templates/part/upload_bom.html:56
+#: templates/js/translated/bom.js:1034
msgid "Allow Variants"
msgstr "Tillat Varianter"
-#: part/models.py:3823
+#: part/models.py:3867
msgid "Stock items for variant parts can be used for this BOM item"
msgstr "Lagervarer for variantdeler kan brukes for denne stykklisteartikkelen"
-#: part/models.py:3909 stock/models.py:577
+#: part/models.py:3953 stock/models.py:577
msgid "Quantity must be integer value for trackable parts"
msgstr "Antall må være heltallsverdi for sporbare deler"
-#: part/models.py:3918 part/models.py:3920
+#: part/models.py:3962 part/models.py:3964
msgid "Sub part must be specified"
msgstr "Underordnet del må angis"
-#: part/models.py:4036
+#: part/models.py:4080
msgid "BOM Item Substitute"
msgstr "Stykklisteartikkel-erstatning"
-#: part/models.py:4057
+#: part/models.py:4101
msgid "Substitute part cannot be the same as the master part"
msgstr "Erstatningsdel kan ikke være samme som hoveddelen"
-#: part/models.py:4070
+#: part/models.py:4114
msgid "Parent BOM item"
msgstr "Overordnet stykklisteartikkel"
-#: part/models.py:4078
+#: part/models.py:4122
msgid "Substitute part"
msgstr "Erstatningsdel"
-#: part/models.py:4093
+#: part/models.py:4137
msgid "Part 1"
msgstr "Del 1"
-#: part/models.py:4097
+#: part/models.py:4141
msgid "Part 2"
msgstr "Del 2"
-#: part/models.py:4097
+#: part/models.py:4141
msgid "Select Related Part"
msgstr "Velg relatert del"
-#: part/models.py:4115
+#: part/models.py:4159
msgid "Part relationship cannot be created between a part and itself"
msgstr "Del-forhold kan ikke opprettes mellom en del og seg selv"
-#: part/models.py:4119
+#: part/models.py:4163
msgid "Duplicate relationship already exists"
msgstr "Duplikatforhold eksisterer allerede"
-#: part/serializers.py:152 part/serializers.py:175 stock/serializers.py:257
+#: part/serializers.py:152 part/serializers.py:175 stock/serializers.py:319
msgid "Purchase currency of this stock item"
msgstr "Innkjøpsvaluta for lagervaren"
-#: part/serializers.py:302
+#: part/serializers.py:313
+msgid "No parts selected"
+msgstr ""
+
+#: part/serializers.py:321
+msgid "Select category"
+msgstr ""
+
+#: part/serializers.py:352
msgid "Original Part"
msgstr "Original Del"
-#: part/serializers.py:302
+#: part/serializers.py:352
msgid "Select original part to duplicate"
msgstr "Velg original del å duplisere"
-#: part/serializers.py:307
+#: part/serializers.py:357
msgid "Copy Image"
msgstr "Kopier Bilde"
-#: part/serializers.py:307
+#: part/serializers.py:357
msgid "Copy image from original part"
msgstr "Kopier bilde fra originaldel"
-#: part/serializers.py:312 part/templates/part/detail.html:296
+#: part/serializers.py:362 part/templates/part/detail.html:277
msgid "Copy BOM"
msgstr "Kopier Stykkliste"
-#: part/serializers.py:312
+#: part/serializers.py:362
msgid "Copy bill of materials from original part"
msgstr "Kopier stykkliste fra original del"
-#: part/serializers.py:317
+#: part/serializers.py:367
msgid "Copy Parameters"
msgstr "Kopier parametere"
-#: part/serializers.py:317
+#: part/serializers.py:367
msgid "Copy parameter data from original part"
msgstr "Kopier parameterdata fra originaldel"
-#: part/serializers.py:327
+#: part/serializers.py:377
msgid "Initial Stock Quantity"
msgstr "Innledende lagerbeholdning"
-#: part/serializers.py:327
+#: part/serializers.py:377
msgid "Specify initial stock quantity for this Part. If quantity is zero, no stock is added."
msgstr "Angi initiell lagermengde for denne delen. Hvis antall er null, er ingen lagerbeholdning lagt til."
-#: part/serializers.py:333
+#: part/serializers.py:383
msgid "Initial Stock Location"
msgstr "Innledende lagerplassering"
-#: part/serializers.py:333
+#: part/serializers.py:383
msgid "Specify initial stock location for this Part"
msgstr "Angi initiell lagerplasering for denne delen"
-#: part/serializers.py:343
+#: part/serializers.py:393
msgid "Select supplier (or leave blank to skip)"
msgstr "Velg leverandør (eller la stå tom for å hoppe over)"
-#: part/serializers.py:354
+#: part/serializers.py:404
msgid "Select manufacturer (or leave blank to skip)"
msgstr "Velg produsent (eller la stå tom for å hoppe over)"
-#: part/serializers.py:360
+#: part/serializers.py:410
msgid "Manufacturer part number"
msgstr "Produsentens delenummer"
-#: part/serializers.py:367
+#: part/serializers.py:417
msgid "Selected company is not a valid supplier"
msgstr "Valgt firma er ikke en gyldig leverandør"
-#: part/serializers.py:375
+#: part/serializers.py:425
msgid "Selected company is not a valid manufacturer"
msgstr "Valgt firma er ikke en gyldig produsent"
-#: part/serializers.py:387
+#: part/serializers.py:437
msgid "Manufacturer part matching this MPN already exists"
msgstr "Produsentdel som matcher dette MPN-et, finnes allerede"
-#: part/serializers.py:395
+#: part/serializers.py:445
msgid "Supplier part matching this SKU already exists"
msgstr "Leverandørdel som matcher denne SKU-en, finnes allerede"
-#: part/serializers.py:620 part/templates/part/copy_part.html:9
-#: templates/js/translated/part.js:449
+#: part/serializers.py:682 part/templates/part/copy_part.html:9
+#: templates/js/translated/part.js:448
msgid "Duplicate Part"
msgstr "Dupliser del"
-#: part/serializers.py:620
+#: part/serializers.py:682
msgid "Copy initial data from another Part"
msgstr "Kopier innledende data fra en annen del"
-#: part/serializers.py:625 templates/js/translated/part.js:103
+#: part/serializers.py:687 templates/js/translated/part.js:102
msgid "Initial Stock"
msgstr "Innledende lagerbeholdning"
-#: part/serializers.py:625
+#: part/serializers.py:687
msgid "Create Part with initial stock quantity"
msgstr ""
-#: part/serializers.py:630
+#: part/serializers.py:692
msgid "Supplier Information"
msgstr ""
-#: part/serializers.py:630
+#: part/serializers.py:692
msgid "Add initial supplier information for this part"
msgstr ""
-#: part/serializers.py:636
+#: part/serializers.py:698
msgid "Copy Category Parameters"
msgstr "Kopier kategoriparametre"
-#: part/serializers.py:637
+#: part/serializers.py:699
msgid "Copy parameter templates from selected part category"
msgstr "Kopier parametermaler fra valgt delkategori"
-#: part/serializers.py:842
+#: part/serializers.py:904
msgid "Limit stocktake report to a particular part, and any variant parts"
msgstr "Begrens lagerbeholdningsrapport til en bestemt del og enhver variant av delen"
-#: part/serializers.py:848
+#: part/serializers.py:910
msgid "Limit stocktake report to a particular part category, and any child categories"
msgstr "Begrens lagerbeholdningsrapport til en bestemt delkategori og alle underkategorier"
-#: part/serializers.py:854
+#: part/serializers.py:916
msgid "Limit stocktake report to a particular stock location, and any child locations"
msgstr "Begrens lagerbeholdningsrapport til en bestemt plasering og eventuelle underplasseringer"
-#: part/serializers.py:859
+#: part/serializers.py:921
msgid "Generate Report"
msgstr "Generer rapport"
-#: part/serializers.py:860
+#: part/serializers.py:922
msgid "Generate report file containing calculated stocktake data"
msgstr "Genererer rapport som inneholder beregnede lagerdata"
-#: part/serializers.py:865
+#: part/serializers.py:927
msgid "Update Parts"
msgstr "Oppdater deler"
-#: part/serializers.py:866
+#: part/serializers.py:928
msgid "Update specified parts with calculated stocktake data"
msgstr "Oppdater spesifiserte deler med beregnede lagerbeholdningsdata"
-#: part/serializers.py:874
+#: part/serializers.py:936
msgid "Stocktake functionality is not enabled"
msgstr "Lagerbeholdningsfunksjonalitet er ikke aktivert"
-#: part/serializers.py:963
+#: part/serializers.py:1025
msgid "Update"
msgstr "Oppdater"
-#: part/serializers.py:964
+#: part/serializers.py:1026
msgid "Update pricing for this part"
msgstr "Oppdater priser for denne delen"
-#: part/serializers.py:1246
+#: part/serializers.py:1308
msgid "Select part to copy BOM from"
msgstr "Velg del å kopiere BOM fra"
-#: part/serializers.py:1254
+#: part/serializers.py:1316
msgid "Remove Existing Data"
msgstr "Fjern eksisterende data"
-#: part/serializers.py:1255
+#: part/serializers.py:1317
msgid "Remove existing BOM items before copying"
msgstr "Fjern eksisterende BOM produkter før kopiering"
-#: part/serializers.py:1260
+#: part/serializers.py:1322
msgid "Include Inherited"
msgstr "Inkluder arvet"
-#: part/serializers.py:1261
+#: part/serializers.py:1323
msgid "Include BOM items which are inherited from templated parts"
msgstr "Inkluder BOM elementer som er arvet fra mal-deler"
-#: part/serializers.py:1266
+#: part/serializers.py:1328
msgid "Skip Invalid Rows"
msgstr "Hopp over ugyldige rader"
-#: part/serializers.py:1267
+#: part/serializers.py:1329
msgid "Enable this option to skip invalid rows"
msgstr "Aktiver dette alternativet for å hoppe over ugyldige rader"
-#: part/serializers.py:1272
+#: part/serializers.py:1334
msgid "Copy Substitute Parts"
msgstr "Kopier erstatningsdeler"
-#: part/serializers.py:1273
+#: part/serializers.py:1335
msgid "Copy substitute parts when duplicate BOM items"
msgstr "Kopier erstatningsdeler når BOM elementer dupliseres"
-#: part/serializers.py:1313
+#: part/serializers.py:1375
msgid "Clear Existing BOM"
msgstr ""
-#: part/serializers.py:1314
+#: part/serializers.py:1376
msgid "Delete existing BOM items before uploading"
msgstr ""
-#: part/serializers.py:1344
+#: part/serializers.py:1406
msgid "No part column specified"
msgstr ""
-#: part/serializers.py:1387
+#: part/serializers.py:1449
msgid "Multiple matching parts found"
msgstr ""
-#: part/serializers.py:1390
+#: part/serializers.py:1452
msgid "No matching part found"
msgstr ""
-#: part/serializers.py:1393
+#: part/serializers.py:1455
msgid "Part is not designated as a component"
msgstr ""
-#: part/serializers.py:1402
+#: part/serializers.py:1464
msgid "Quantity not provided"
msgstr ""
-#: part/serializers.py:1410
+#: part/serializers.py:1472
msgid "Invalid quantity"
msgstr ""
-#: part/serializers.py:1431
+#: part/serializers.py:1493
msgid "At least one BOM item is required"
msgstr ""
@@ -6421,9 +6453,9 @@ msgstr "Varsel om lav lagerbeholdning"
msgid "The available stock for {part.name} has fallen below the configured minimum level"
msgstr "Tilgjengelig lagerbeholdning for {part.name} har falt under det konfigurerte minimumsnivået"
-#: part/tasks.py:294 templates/js/translated/part.js:1040
-#: templates/js/translated/part.js:1793 templates/js/translated/part.js:1848
-#: templates/js/translated/purchase_order.js:2052
+#: part/tasks.py:294 templates/js/translated/part.js:1039
+#: templates/js/translated/part.js:1792 templates/js/translated/part.js:1847
+#: templates/js/translated/purchase_order.js:2062
msgid "Total Quantity"
msgstr "Totalt Antall"
@@ -6461,14 +6493,6 @@ msgstr "Stykklisten for %(part)s ble sist sjekket av %(checker)s den %(
msgid "The BOM for %(part)s has not been validated."
msgstr "Stykklisten for %(part)s er ikke godkjent."
-#: part/templates/part/bom.html:30 part/templates/part/detail.html:291
-msgid "BOM actions"
-msgstr "Stykklistehandlinger"
-
-#: part/templates/part/bom.html:34
-msgid "Delete Items"
-msgstr "Slett Artikler"
-
#: part/templates/part/category.html:34
msgid "Perform stocktake for this part category"
msgstr "Utfør lagertelling for denne delkategorien"
@@ -6505,7 +6529,7 @@ msgstr "Slett Kategori"
msgid "Top level part category"
msgstr "Toppnivå delkategori"
-#: part/templates/part/category.html:121 part/templates/part/category.html:225
+#: part/templates/part/category.html:121 part/templates/part/category.html:206
#: part/templates/part/category_sidebar.html:7
msgid "Subcategories"
msgstr "Underkategorier"
@@ -6518,33 +6542,20 @@ msgstr "Deler (inkludert underkategorier)"
msgid "Create new part"
msgstr "Opprett ny del"
-#: part/templates/part/category.html:165 templates/js/translated/bom.js:443
+#: part/templates/part/category.html:165 templates/js/translated/bom.js:444
msgid "New Part"
msgstr "Ny Del"
-#: part/templates/part/category.html:175 part/templates/part/detail.html:390
-#: part/templates/part/detail.html:421
-msgid "Options"
-msgstr "Valg"
-
-#: part/templates/part/category.html:179
-msgid "Set category"
-msgstr "Sett kategori"
-
-#: part/templates/part/category.html:180
-msgid "Set Category"
-msgstr "Sett Kategori"
-
-#: part/templates/part/category.html:208
+#: part/templates/part/category.html:191
#: templates/InvenTree/settings/sidebar.html:47
msgid "Part Parameters"
msgstr "Delparametere"
-#: part/templates/part/category.html:229
+#: part/templates/part/category.html:210
msgid "Create new part category"
msgstr "Opprett ny delkategori"
-#: part/templates/part/category.html:230
+#: part/templates/part/category.html:211
msgid "New Category"
msgstr "Ny Kategori"
@@ -6581,7 +6592,7 @@ msgid "Refresh scheduling data"
msgstr "Oppdater planleggingsdata"
#: part/templates/part/detail.html:45 part/templates/part/prices.html:15
-#: templates/js/translated/tables.js:584
+#: templates/js/translated/tables.js:560
msgid "Refresh"
msgstr "Oppdater"
@@ -6592,7 +6603,7 @@ msgstr "Legg til lagertellingsinformasjon"
#: part/templates/part/detail.html:67 part/templates/part/part_sidebar.html:50
#: stock/admin.py:130 templates/InvenTree/settings/part_stocktake.html:29
#: templates/InvenTree/settings/sidebar.html:51
-#: templates/js/translated/stock.js:1952 users/models.py:39
+#: templates/js/translated/stock.js:2109 users/models.py:39
msgid "Stocktake"
msgstr "Lagertelling"
@@ -6604,101 +6615,101 @@ msgstr "Deltestmaler"
msgid "Add Test Template"
msgstr "Legg til Testmal"
-#: part/templates/part/detail.html:145 stock/templates/stock/item.html:53
+#: part/templates/part/detail.html:139 stock/templates/stock/item.html:49
msgid "Sales Order Allocations"
msgstr "Salgsordretildelinger"
-#: part/templates/part/detail.html:165
+#: part/templates/part/detail.html:156
msgid "Part Notes"
msgstr "Delnotater"
-#: part/templates/part/detail.html:180
+#: part/templates/part/detail.html:171
msgid "Part Variants"
msgstr "Delvarianter"
-#: part/templates/part/detail.html:184
+#: part/templates/part/detail.html:175
msgid "Create new variant"
msgstr "Opprett ny variant"
-#: part/templates/part/detail.html:185
+#: part/templates/part/detail.html:176
msgid "New Variant"
msgstr "Ny Variant"
-#: part/templates/part/detail.html:212
+#: part/templates/part/detail.html:199
msgid "Add new parameter"
msgstr "Legg til ny parameter"
-#: part/templates/part/detail.html:249 part/templates/part/part_sidebar.html:58
+#: part/templates/part/detail.html:232 part/templates/part/part_sidebar.html:58
msgid "Related Parts"
msgstr "Relaterte Deler"
-#: part/templates/part/detail.html:253 part/templates/part/detail.html:254
+#: part/templates/part/detail.html:236 part/templates/part/detail.html:237
msgid "Add Related"
msgstr ""
-#: part/templates/part/detail.html:274 part/templates/part/part_sidebar.html:17
+#: part/templates/part/detail.html:255 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:279
+#: part/templates/part/detail.html:260
msgid "Export actions"
msgstr ""
-#: part/templates/part/detail.html:283 templates/js/translated/bom.js:339
+#: part/templates/part/detail.html:264 templates/js/translated/bom.js:340
msgid "Export BOM"
msgstr ""
-#: part/templates/part/detail.html:285
+#: part/templates/part/detail.html:266
msgid "Print BOM Report"
msgstr ""
-#: part/templates/part/detail.html:295
+#: part/templates/part/detail.html:272
+msgid "BOM actions"
+msgstr "Stykklistehandlinger"
+
+#: part/templates/part/detail.html:276
msgid "Upload BOM"
msgstr ""
-#: part/templates/part/detail.html:297
+#: part/templates/part/detail.html:278
msgid "Validate BOM"
msgstr ""
-#: part/templates/part/detail.html:302 part/templates/part/detail.html:303
-#: templates/js/translated/bom.js:1279 templates/js/translated/bom.js:1280
+#: part/templates/part/detail.html:283 part/templates/part/detail.html:284
+#: templates/js/translated/bom.js:1299 templates/js/translated/bom.js:1300
msgid "Add BOM Item"
msgstr ""
-#: part/templates/part/detail.html:316
+#: part/templates/part/detail.html:297
msgid "Assemblies"
msgstr ""
-#: part/templates/part/detail.html:334
+#: part/templates/part/detail.html:313
msgid "Part Builds"
msgstr ""
-#: part/templates/part/detail.html:361 stock/templates/stock/item.html:38
+#: part/templates/part/detail.html:338 stock/templates/stock/item.html:36
msgid "Build Order Allocations"
msgstr ""
-#: part/templates/part/detail.html:377
+#: part/templates/part/detail.html:352
msgid "Part Suppliers"
msgstr ""
-#: part/templates/part/detail.html:407
+#: part/templates/part/detail.html:372
msgid "Part Manufacturers"
msgstr ""
-#: part/templates/part/detail.html:423
-msgid "Delete manufacturer parts"
-msgstr ""
-
-#: part/templates/part/detail.html:707
+#: part/templates/part/detail.html:654
msgid "Related Part"
msgstr ""
-#: part/templates/part/detail.html:715
+#: part/templates/part/detail.html:662
msgid "Add Related Part"
msgstr ""
-#: part/templates/part/detail.html:800
+#: part/templates/part/detail.html:747
msgid "Add Test Result Template"
msgstr ""
@@ -6732,13 +6743,13 @@ msgid "Download Part Import Template"
msgstr ""
#: part/templates/part/import_wizard/part_upload.html:92
-#: templates/js/translated/bom.js:308 templates/js/translated/bom.js:342
+#: templates/js/translated/bom.js:309 templates/js/translated/bom.js:343
#: templates/js/translated/order.js:129 templates/js/translated/tables.js:189
msgid "Format"
msgstr ""
#: part/templates/part/import_wizard/part_upload.html:93
-#: templates/js/translated/bom.js:309 templates/js/translated/bom.js:343
+#: templates/js/translated/bom.js:310 templates/js/translated/bom.js:344
#: templates/js/translated/order.js:130
msgid "Select file format"
msgstr ""
@@ -6779,7 +6790,7 @@ msgstr ""
msgid "Transfer part stock"
msgstr ""
-#: part/templates/part/part_base.html:93
+#: part/templates/part/part_base.html:93 templates/js/translated/part.js:2264
msgid "Part actions"
msgstr ""
@@ -6824,10 +6835,10 @@ msgid "Part is not active"
msgstr ""
#: part/templates/part/part_base.html:148
-#: templates/js/translated/company.js:945
-#: templates/js/translated/company.js:1185
-#: templates/js/translated/model_renderers.js:273
-#: templates/js/translated/part.js:792 templates/js/translated/part.js:1192
+#: templates/js/translated/company.js:1318
+#: templates/js/translated/company.js:1606
+#: templates/js/translated/model_renderers.js:287
+#: templates/js/translated/part.js:791 templates/js/translated/part.js:1191
msgid "Inactive"
msgstr ""
@@ -6850,7 +6861,7 @@ msgstr ""
msgid "Allocated to Sales Orders"
msgstr "Tildelt til Salgsordrer"
-#: part/templates/part/part_base.html:237 templates/js/translated/bom.js:1178
+#: part/templates/part/part_base.html:237 templates/js/translated/bom.js:1198
msgid "Can Build"
msgstr "Kan Produsere"
@@ -6858,8 +6869,8 @@ msgstr "Kan Produsere"
msgid "Minimum stock level"
msgstr "Minimalt lagerbeholdningsnivå"
-#: part/templates/part/part_base.html:324 templates/js/translated/bom.js:1041
-#: templates/js/translated/part.js:1238 templates/js/translated/part.js:2304
+#: part/templates/part/part_base.html:324 templates/js/translated/bom.js:1059
+#: templates/js/translated/part.js:1237 templates/js/translated/part.js:2380
#: templates/js/translated/pricing.js:391
#: templates/js/translated/pricing.js:1040
msgid "Price Range"
@@ -6882,7 +6893,7 @@ msgstr "Del-QR-kode"
msgid "Link Barcode to Part"
msgstr "Koble strekkode til Del"
-#: part/templates/part/part_base.html:474 templates/js/translated/part.js:2191
+#: part/templates/part/part_base.html:474 templates/js/translated/part.js:2258
msgid "part"
msgstr ""
@@ -6956,9 +6967,9 @@ msgstr "Varianter"
#: stock/templates/stock/stock_app_base.html:10
#: templates/InvenTree/search.html:153
#: templates/InvenTree/settings/sidebar.html:49
-#: templates/js/translated/part.js:1216 templates/js/translated/part.js:2120
-#: templates/js/translated/part.js:2284 templates/js/translated/stock.js:1022
-#: templates/js/translated/stock.js:1829 templates/navbar.html:31
+#: templates/js/translated/part.js:1215 templates/js/translated/part.js:2119
+#: templates/js/translated/part.js:2360 templates/js/translated/stock.js:1021
+#: templates/js/translated/stock.js:1986 templates/navbar.html:31
msgid "Stock"
msgstr "Lagerbeholdning"
@@ -6989,9 +7000,9 @@ msgstr "Oppdater delprising"
#: part/templates/part/prices.html:25 stock/admin.py:129
#: stock/templates/stock/item_base.html:442
-#: templates/js/translated/company.js:1313
-#: templates/js/translated/company.js:1323
-#: templates/js/translated/stock.js:1982
+#: templates/js/translated/company.js:1734
+#: templates/js/translated/company.js:1744
+#: templates/js/translated/stock.js:2139
msgid "Last Updated"
msgstr "Sist oppdatert"
@@ -7054,12 +7065,12 @@ msgstr "Salgsprising"
msgid "Add Sell Price Break"
msgstr "Legg til salgsprisbrudd"
-#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:682
-#: templates/js/translated/part.js:2115 templates/js/translated/part.js:2117
+#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:681
+#: templates/js/translated/part.js:2114 templates/js/translated/part.js:2116
msgid "No Stock"
msgstr "Ingen lagerbeholdning"
-#: part/templates/part/stock_count.html:9 templates/InvenTree/index.html:167
+#: part/templates/part/stock_count.html:9 templates/InvenTree/index.html:120
msgid "Low Stock"
msgstr "Lav lagerbeholdning"
@@ -7163,7 +7174,7 @@ msgid "Match found for barcode data"
msgstr "Treff funnet for strekkodedata"
#: plugin/base/barcodes/api.py:120
-#: templates/js/translated/purchase_order.js:1372
+#: templates/js/translated/purchase_order.js:1387
msgid "Barcode matches existing item"
msgstr ""
@@ -7226,43 +7237,43 @@ msgstr ""
msgid "Open link"
msgstr ""
-#: plugin/models.py:27
+#: plugin/models.py:28
msgid "Plugin Configuration"
msgstr ""
-#: plugin/models.py:28
+#: plugin/models.py:29
msgid "Plugin Configurations"
msgstr ""
-#: plugin/models.py:33
+#: plugin/models.py:34
msgid "Key"
msgstr ""
-#: plugin/models.py:34
+#: plugin/models.py:35
msgid "Key of plugin"
msgstr ""
-#: plugin/models.py:42
+#: plugin/models.py:43
msgid "PluginName of the plugin"
msgstr ""
-#: plugin/models.py:48
+#: plugin/models.py:49
msgid "Is the plugin active"
msgstr ""
-#: plugin/models.py:124
+#: plugin/models.py:125
msgid "Sample plugin"
msgstr ""
-#: plugin/models.py:133
+#: plugin/models.py:134
msgid "Builtin Plugin"
msgstr ""
-#: plugin/models.py:159 templates/InvenTree/settings/plugin_settings.html:9
+#: plugin/models.py:160 templates/InvenTree/settings/plugin_settings.html:9
msgid "Plugin"
msgstr ""
-#: plugin/models.py:210
+#: plugin/models.py:211
msgid "Method"
msgstr ""
@@ -7414,47 +7425,47 @@ msgstr "Produksjonsfiltre"
msgid "Build query filters (comma-separated list of key=value pairs"
msgstr "Produksjons-søkefilter (kommaseparert liste over nøkkel=verdi-par"
-#: report/models.py:418
+#: report/models.py:420
msgid "Part Filters"
msgstr "Delfiltre"
-#: report/models.py:419
+#: report/models.py:421
msgid "Part query filters (comma-separated list of key=value pairs"
msgstr "Del-søkefilter (kommaseparert liste over nøkkel=verdi-par"
-#: report/models.py:453
+#: report/models.py:455
msgid "Purchase order query filters"
msgstr "Innkjøpsordre-søkefilter"
-#: report/models.py:491
+#: report/models.py:493
msgid "Sales order query filters"
msgstr "Salgsordre-søkefilter"
-#: report/models.py:529
+#: report/models.py:531
msgid "Return order query filters"
msgstr "Returordre-søkefilter"
-#: report/models.py:582
+#: report/models.py:584
msgid "Snippet"
msgstr "Snutt"
-#: report/models.py:583
+#: report/models.py:585
msgid "Report snippet file"
msgstr "Rapportsnuttfil"
-#: report/models.py:587
+#: report/models.py:589
msgid "Snippet file description"
msgstr "Filbeskrivelse for snutt"
-#: report/models.py:624
+#: report/models.py:626
msgid "Asset"
msgstr "Ressurs"
-#: report/models.py:625
+#: report/models.py:627
msgid "Report asset file"
msgstr "Rapportressursfil"
-#: report/models.py:632
+#: report/models.py:634
msgid "Asset file description"
msgstr "Ressursfilbeskrivelse"
@@ -7475,8 +7486,8 @@ msgstr "Leverandør ble slettet"
#: templates/js/translated/order.js:316 templates/js/translated/pricing.js:527
#: templates/js/translated/pricing.js:596
#: templates/js/translated/pricing.js:820
-#: templates/js/translated/purchase_order.js:2083
-#: templates/js/translated/sales_order.js:1817
+#: templates/js/translated/purchase_order.js:2093
+#: templates/js/translated/sales_order.js:1829
msgid "Unit Price"
msgstr "Enhetspris"
@@ -7488,23 +7499,23 @@ msgstr "Ekstra linjeelementer"
#: report/templates/report/inventree_po_report_base.html:72
#: report/templates/report/inventree_so_report_base.html:72
-#: templates/js/translated/purchase_order.js:1985
-#: templates/js/translated/sales_order.js:1792
+#: templates/js/translated/purchase_order.js:1995
+#: templates/js/translated/sales_order.js:1804
msgid "Total"
msgstr "Total"
#: report/templates/report/inventree_return_order_report_base.html:25
#: report/templates/report/inventree_test_report_base.html:88
#: stock/models.py:725 stock/templates/stock/item_base.html:312
-#: templates/js/translated/build.js:502 templates/js/translated/build.js:1423
-#: templates/js/translated/build.js:1989
-#: templates/js/translated/model_renderers.js:201
-#: templates/js/translated/return_order.js:528
-#: templates/js/translated/return_order.js:708
-#: templates/js/translated/sales_order.js:300
-#: templates/js/translated/sales_order.js:1597
-#: templates/js/translated/sales_order.js:1682
-#: templates/js/translated/stock.js:563
+#: templates/js/translated/build.js:508 templates/js/translated/build.js:1306
+#: templates/js/translated/build.js:2281
+#: templates/js/translated/model_renderers.js:215
+#: templates/js/translated/return_order.js:540
+#: templates/js/translated/return_order.js:720
+#: templates/js/translated/sales_order.js:312
+#: templates/js/translated/sales_order.js:1609
+#: templates/js/translated/sales_order.js:1694
+#: templates/js/translated/stock.js:562
msgid "Serial Number"
msgstr "Serienummer"
@@ -7517,7 +7528,7 @@ msgid "Test Results"
msgstr "Testresultater"
#: report/templates/report/inventree_test_report_base.html:102
-#: stock/models.py:2243 templates/js/translated/stock.js:1419
+#: stock/models.py:2243 templates/js/translated/stock.js:1418
msgid "Test"
msgstr "Test"
@@ -7548,8 +7559,8 @@ msgid "Installed Items"
msgstr ""
#: report/templates/report/inventree_test_report_base.html:168
-#: stock/admin.py:104 templates/js/translated/stock.js:667
-#: templates/js/translated/stock.js:838 templates/js/translated/stock.js:2849
+#: stock/admin.py:104 templates/js/translated/stock.js:666
+#: templates/js/translated/stock.js:837 templates/js/translated/stock.js:2976
msgid "Serial"
msgstr ""
@@ -7617,31 +7628,31 @@ msgstr ""
#: stock/admin.py:131 stock/models.py:789
#: stock/templates/stock/item_base.html:429
-#: templates/js/translated/stock.js:1966
+#: templates/js/translated/stock.js:2123
msgid "Expiry Date"
msgstr ""
-#: stock/api.py:420 templates/js/translated/table_filters.js:373
+#: stock/api.py:426 templates/js/translated/table_filters.js:379
msgid "External Location"
msgstr ""
-#: stock/api.py:582
+#: stock/api.py:619
msgid "Quantity is required"
msgstr ""
-#: stock/api.py:589
+#: stock/api.py:626
msgid "Valid part must be supplied"
msgstr ""
-#: stock/api.py:615
+#: stock/api.py:652
msgid "The given supplier part does not exist"
msgstr ""
-#: stock/api.py:624
+#: stock/api.py:661
msgid "The supplier part has a pack size defined, but flag use_pack_size not set"
msgstr ""
-#: stock/api.py:642
+#: stock/api.py:679
msgid "Serial numbers cannot be supplied for a non-trackable part"
msgstr ""
@@ -7652,7 +7663,7 @@ msgid "Stock Location"
msgstr ""
#: stock/models.py:55 stock/templates/stock/location.html:177
-#: templates/InvenTree/search.html:166 templates/js/translated/search.js:220
+#: templates/InvenTree/search.html:166 templates/js/translated/search.js:178
#: users/models.py:40
msgid "Stock Locations"
msgstr ""
@@ -7670,8 +7681,8 @@ msgstr ""
msgid "Stock items may not be directly located into a structural stock locations, but may be located to child locations."
msgstr ""
-#: stock/models.py:132 templates/js/translated/stock.js:2529
-#: templates/js/translated/table_filters.js:213
+#: stock/models.py:132 templates/js/translated/stock.js:2660
+#: templates/js/translated/table_filters.js:219
msgid "External"
msgstr ""
@@ -7687,7 +7698,7 @@ msgstr ""
msgid "Stock items cannot be located into structural stock locations!"
msgstr ""
-#: stock/models.py:583 stock/serializers.py:174
+#: stock/models.py:583 stock/serializers.py:223
msgid "Stock item cannot be created for virtual parts"
msgstr ""
@@ -7821,7 +7832,7 @@ msgstr "Serienumre må være en liste over tall"
msgid "Quantity does not match serial numbers"
msgstr "Antallet stemmer ikke overens med serienumrene"
-#: stock/models.py:1403 stock/serializers.py:374
+#: stock/models.py:1403 stock/serializers.py:440
msgid "Serial numbers already exist"
msgstr "Seriernummer eksisterer allerede"
@@ -7849,7 +7860,7 @@ msgstr "Lagervare er for tiden i produksjon"
msgid "Serialized stock cannot be merged"
msgstr "Serialisert lagerbeholdning kan ikke slås sammen"
-#: stock/models.py:1496 stock/serializers.py:975
+#: stock/models.py:1496 stock/serializers.py:1092
msgid "Duplicate stock items"
msgstr "Duplisert lagervare"
@@ -7901,132 +7912,141 @@ msgstr "Vedlegg til testresultat"
msgid "Test notes"
msgstr "Testnotater"
-#: stock/serializers.py:76
+#: stock/serializers.py:121
msgid "Serial number is too large"
msgstr "Serienummeret er for høyt"
-#: stock/serializers.py:166
+#: stock/serializers.py:215
msgid "Use pack size when adding: the quantity defined is the number of packs"
msgstr ""
-#: stock/serializers.py:254
+#: stock/serializers.py:316
msgid "Purchase price of this stock item, per unit or pack"
msgstr ""
-#: stock/serializers.py:307
+#: stock/serializers.py:373
msgid "Enter number of stock items to serialize"
msgstr "Angi antall lagervarer som skal serialiseres"
-#: stock/serializers.py:319
+#: stock/serializers.py:385
#, python-brace-format
msgid "Quantity must not exceed available stock quantity ({q})"
msgstr "Antall kan ikke overstige tilgjengelig lagerbeholdning ({q})"
-#: stock/serializers.py:325
+#: stock/serializers.py:391
msgid "Enter serial numbers for new items"
msgstr "Angi serienummer for nye artikler"
-#: stock/serializers.py:336 stock/serializers.py:932 stock/serializers.py:1174
+#: stock/serializers.py:402 stock/serializers.py:1049 stock/serializers.py:1291
msgid "Destination stock location"
msgstr "Til Lagerplassering"
-#: stock/serializers.py:343
+#: stock/serializers.py:409
msgid "Optional note field"
msgstr "Valgfritt notatfelt"
-#: stock/serializers.py:353
+#: stock/serializers.py:419
msgid "Serial numbers cannot be assigned to this part"
msgstr "Serienummer kan ikke tilordnes denne delen"
-#: stock/serializers.py:414
+#: stock/serializers.py:480
msgid "Select stock item to install"
msgstr "Velg lagervare å montere"
-#: stock/serializers.py:427
-msgid "Stock item is unavailable"
-msgstr "Lagervaren er utilgjengelig"
-
-#: stock/serializers.py:434
-msgid "Selected part is not in the Bill of Materials"
-msgstr "Valgt del er ikke i stykklisten"
-
-#: stock/serializers.py:471
-msgid "Destination location for uninstalled item"
-msgstr "Lagerplassering for den avinstallerte artikkelen"
-
-#: stock/serializers.py:476 stock/serializers.py:557
+#: stock/serializers.py:485 stock/serializers.py:543 stock/serializers.py:624
+#: stock/serializers.py:682
msgid "Add transaction note (optional)"
msgstr "Legg til transaksjonsnotat (valgfritt)"
-#: stock/serializers.py:510
+#: stock/serializers.py:494
+msgid "Stock item is unavailable"
+msgstr "Lagervaren er utilgjengelig"
+
+#: stock/serializers.py:501
+msgid "Selected part is not in the Bill of Materials"
+msgstr "Valgt del er ikke i stykklisten"
+
+#: stock/serializers.py:538
+msgid "Destination location for uninstalled item"
+msgstr "Lagerplassering for den avinstallerte artikkelen"
+
+#: stock/serializers.py:577
msgid "Select part to convert stock item into"
msgstr "Velg del å konvertere lagervare til"
-#: stock/serializers.py:521
+#: stock/serializers.py:588
msgid "Selected part is not a valid option for conversion"
msgstr "Valgt del er ikke et gyldig alternativ for konvertering"
-#: stock/serializers.py:552
+#: stock/serializers.py:619
msgid "Destination location for returned item"
msgstr "Lagerplassering for returnert artikkel"
-#: stock/serializers.py:787
+#: stock/serializers.py:663
+msgid "Select stock items to change status"
+msgstr ""
+
+#: stock/serializers.py:670
+msgid "No stock items selected"
+msgstr ""
+
+#: stock/serializers.py:904
msgid "Part must be salable"
msgstr "Delen må være salgbar"
-#: stock/serializers.py:791
+#: stock/serializers.py:908
msgid "Item is allocated to a sales order"
msgstr "Artikkelen er tildelt en salgsordre"
-#: stock/serializers.py:795
+#: stock/serializers.py:912
msgid "Item is allocated to a build order"
msgstr "Artikkelen er tildelt en produksjonsordre"
-#: stock/serializers.py:826
+#: stock/serializers.py:943
msgid "Customer to assign stock items"
msgstr "Kunde å tilordne lagervarer"
-#: stock/serializers.py:832
+#: stock/serializers.py:949
msgid "Selected company is not a customer"
msgstr ""
-#: stock/serializers.py:840
+#: stock/serializers.py:957
msgid "Stock assignment notes"
msgstr ""
-#: stock/serializers.py:850 stock/serializers.py:1081
+#: stock/serializers.py:967 stock/serializers.py:1198
msgid "A list of stock items must be provided"
msgstr ""
-#: stock/serializers.py:939
+#: stock/serializers.py:1056
msgid "Stock merging notes"
msgstr ""
-#: stock/serializers.py:944
+#: stock/serializers.py:1061
msgid "Allow mismatched suppliers"
msgstr ""
-#: stock/serializers.py:945
+#: stock/serializers.py:1062
msgid "Allow stock items with different supplier parts to be merged"
msgstr ""
-#: stock/serializers.py:950
+#: stock/serializers.py:1067
msgid "Allow mismatched status"
msgstr ""
-#: stock/serializers.py:951
+#: stock/serializers.py:1068
msgid "Allow stock items with different status codes to be merged"
msgstr ""
-#: stock/serializers.py:961
+#: stock/serializers.py:1078
msgid "At least two stock items must be provided"
msgstr ""
-#: stock/serializers.py:1043
+#: stock/serializers.py:1160
msgid "StockItem primary key value"
msgstr ""
-#: stock/serializers.py:1071
+#: stock/serializers.py:1188
msgid "Stock transaction notes"
msgstr ""
@@ -8034,48 +8054,48 @@ msgstr ""
msgid "Stock Tracking Information"
msgstr ""
-#: stock/templates/stock/item.html:69
+#: stock/templates/stock/item.html:63
msgid "Child Stock Items"
msgstr ""
-#: stock/templates/stock/item.html:77
+#: stock/templates/stock/item.html:71
msgid "This stock item does not have any child items"
msgstr ""
-#: stock/templates/stock/item.html:86
+#: stock/templates/stock/item.html:80
#: stock/templates/stock/stock_sidebar.html:12
msgid "Test Data"
msgstr ""
-#: stock/templates/stock/item.html:90 stock/templates/stock/item_base.html:66
+#: stock/templates/stock/item.html:84 stock/templates/stock/item_base.html:66
msgid "Test Report"
msgstr ""
-#: stock/templates/stock/item.html:94 stock/templates/stock/item.html:288
+#: stock/templates/stock/item.html:88 stock/templates/stock/item.html:278
msgid "Delete Test Data"
msgstr ""
-#: stock/templates/stock/item.html:98
+#: stock/templates/stock/item.html:92
msgid "Add Test Data"
msgstr ""
-#: stock/templates/stock/item.html:132
+#: stock/templates/stock/item.html:124
msgid "Stock Item Notes"
msgstr ""
-#: stock/templates/stock/item.html:147
+#: stock/templates/stock/item.html:139
msgid "Installed Stock Items"
msgstr ""
-#: stock/templates/stock/item.html:152 templates/js/translated/stock.js:2996
+#: stock/templates/stock/item.html:144 templates/js/translated/stock.js:3123
msgid "Install Stock Item"
msgstr ""
-#: stock/templates/stock/item.html:276
+#: stock/templates/stock/item.html:266
msgid "Delete all test results for this stock item"
msgstr ""
-#: stock/templates/stock/item.html:305 templates/js/translated/stock.js:1611
+#: stock/templates/stock/item.html:295 templates/js/translated/stock.js:1610
msgid "Add Test Result"
msgstr ""
@@ -8083,13 +8103,13 @@ msgstr ""
msgid "Locate stock item"
msgstr ""
-#: stock/templates/stock/item_base.html:52 templates/stock_table.html:21
+#: stock/templates/stock/item_base.html:52
msgid "Scan to Location"
msgstr ""
#: stock/templates/stock/item_base.html:60
#: stock/templates/stock/location.html:69
-#: templates/js/translated/filters.js:322
+#: templates/js/translated/filters.js:432
msgid "Printing actions"
msgstr ""
@@ -8098,15 +8118,17 @@ msgid "Stock adjustment actions"
msgstr ""
#: stock/templates/stock/item_base.html:80
-#: stock/templates/stock/location.html:88 templates/stock_table.html:35
+#: stock/templates/stock/location.html:88 templates/js/translated/stock.js:1735
msgid "Count stock"
msgstr ""
-#: stock/templates/stock/item_base.html:82 templates/stock_table.html:33
+#: stock/templates/stock/item_base.html:82
+#: templates/js/translated/stock.js:1717
msgid "Add stock"
msgstr ""
-#: stock/templates/stock/item_base.html:83 templates/stock_table.html:34
+#: stock/templates/stock/item_base.html:83
+#: templates/js/translated/stock.js:1726
msgid "Remove stock"
msgstr ""
@@ -8115,11 +8137,12 @@ msgid "Serialize stock"
msgstr ""
#: stock/templates/stock/item_base.html:89
-#: stock/templates/stock/location.html:94 templates/stock_table.html:36
+#: stock/templates/stock/location.html:94 templates/js/translated/stock.js:1744
msgid "Transfer stock"
msgstr ""
-#: stock/templates/stock/item_base.html:92 templates/stock_table.html:39
+#: stock/templates/stock/item_base.html:92
+#: templates/js/translated/stock.js:1798
msgid "Assign to customer"
msgstr ""
@@ -8159,6 +8182,11 @@ msgstr ""
msgid "Delete stock item"
msgstr ""
+#: stock/templates/stock/item_base.html:170 templates/InvenTree/search.html:139
+#: templates/js/translated/build.js:2046 templates/navbar.html:38
+msgid "Build"
+msgstr "Produksjon"
+
#: stock/templates/stock/item_base.html:194
msgid "Parent Item"
msgstr ""
@@ -8221,7 +8249,7 @@ msgid "Available Quantity"
msgstr "Tilgjengelig antall"
#: stock/templates/stock/item_base.html:394
-#: templates/js/translated/build.js:2015
+#: templates/js/translated/build.js:2306
msgid "No location set"
msgstr "Ingen plassering satt"
@@ -8239,7 +8267,7 @@ msgid "This StockItem expired on %(item.expiry_date)s"
msgstr "Denne lagervaren utløp %(item.expiry_date)s"
#: stock/templates/stock/item_base.html:433
-#: templates/js/translated/table_filters.js:381
+#: templates/js/translated/table_filters.js:387
msgid "Expired"
msgstr "Utløpt"
@@ -8249,7 +8277,7 @@ msgid "This StockItem expires on %(item.expiry_date)s"
msgstr "Denne lagervaren utløper %(item.expiry_date)s"
#: stock/templates/stock/item_base.html:435
-#: templates/js/translated/table_filters.js:387
+#: templates/js/translated/table_filters.js:393
msgid "Stale"
msgstr "Foreldet"
@@ -8258,7 +8286,7 @@ msgid "No stocktake performed"
msgstr "Ingen lagertelling utført"
#: stock/templates/stock/item_base.html:503
-#: templates/js/translated/stock.js:1745
+#: templates/js/translated/stock.js:1865
msgid "stock item"
msgstr ""
@@ -8364,20 +8392,20 @@ msgstr "Opprett ny lagerplassering"
msgid "New Location"
msgstr "Ny plassering"
-#: stock/templates/stock/location.html:287
-#: templates/js/translated/stock.js:2318
+#: stock/templates/stock/location.html:278
+#: templates/js/translated/stock.js:2449
msgid "stock location"
msgstr ""
-#: stock/templates/stock/location.html:304
+#: stock/templates/stock/location.html:295
msgid "Scanned stock container into this location"
msgstr "Skannet lagerbeholder til denne plasseringen"
-#: stock/templates/stock/location.html:377
+#: stock/templates/stock/location.html:368
msgid "Stock Location QR Code"
msgstr "Lagerplassering-QR-kode"
-#: stock/templates/stock/location.html:388
+#: stock/templates/stock/location.html:379
msgid "Link Barcode to Stock Location"
msgstr "Koble strekkode til Lagerplassering"
@@ -8451,71 +8479,71 @@ msgstr ""
msgid "Index"
msgstr ""
-#: templates/InvenTree/index.html:89
+#: templates/InvenTree/index.html:39
msgid "Subscribed Parts"
msgstr ""
-#: templates/InvenTree/index.html:102
+#: templates/InvenTree/index.html:53
msgid "Subscribed Categories"
msgstr ""
-#: templates/InvenTree/index.html:112
+#: templates/InvenTree/index.html:63
msgid "Latest Parts"
msgstr ""
-#: templates/InvenTree/index.html:126
+#: templates/InvenTree/index.html:78
msgid "BOM Waiting Validation"
msgstr ""
-#: templates/InvenTree/index.html:155
+#: templates/InvenTree/index.html:107
msgid "Recently Updated"
msgstr ""
-#: templates/InvenTree/index.html:180
+#: templates/InvenTree/index.html:134
msgid "Depleted Stock"
msgstr ""
-#: templates/InvenTree/index.html:193
+#: templates/InvenTree/index.html:148
msgid "Required for Build Orders"
msgstr ""
-#: templates/InvenTree/index.html:208
+#: templates/InvenTree/index.html:156
msgid "Expired Stock"
msgstr ""
-#: templates/InvenTree/index.html:222
+#: templates/InvenTree/index.html:172
msgid "Stale Stock"
msgstr ""
-#: templates/InvenTree/index.html:247
+#: templates/InvenTree/index.html:199
msgid "Build Orders In Progress"
msgstr ""
-#: templates/InvenTree/index.html:258
+#: templates/InvenTree/index.html:210
msgid "Overdue Build Orders"
msgstr ""
-#: templates/InvenTree/index.html:278
+#: templates/InvenTree/index.html:230
msgid "Outstanding Purchase Orders"
msgstr ""
-#: templates/InvenTree/index.html:289
+#: templates/InvenTree/index.html:241
msgid "Overdue Purchase Orders"
msgstr ""
-#: templates/InvenTree/index.html:310
+#: templates/InvenTree/index.html:262
msgid "Outstanding Sales Orders"
msgstr ""
-#: templates/InvenTree/index.html:321
+#: templates/InvenTree/index.html:273
msgid "Overdue Sales Orders"
msgstr ""
-#: templates/InvenTree/index.html:347
+#: templates/InvenTree/index.html:299
msgid "InvenTree News"
msgstr ""
-#: templates/InvenTree/index.html:349
+#: templates/InvenTree/index.html:301
msgid "Current News"
msgstr ""
@@ -8672,29 +8700,29 @@ msgstr "Innstillinger for Utvidelser"
msgid "Changing the settings below require you to immediately restart the server. Do not change this while under active usage."
msgstr "Endring av innstillingene nedenfor krever at du umiddelbart starter serveren på nytt. Ikke endre under aktiv bruk."
-#: templates/InvenTree/settings/plugin.html:37
+#: templates/InvenTree/settings/plugin.html:35
#: templates/InvenTree/settings/sidebar.html:64
msgid "Plugins"
msgstr "Utvidelser"
-#: templates/InvenTree/settings/plugin.html:43
+#: templates/InvenTree/settings/plugin.html:41
#: templates/js/translated/plugin.js:151
msgid "Install Plugin"
msgstr "Installer Utvidelse"
-#: templates/InvenTree/settings/plugin.html:51
+#: templates/InvenTree/settings/plugin.html:49
msgid "External plugins are not enabled for this InvenTree installation"
msgstr "Eksterne utvidelser er ikke aktivert for denne InvenTree-installasjonen"
-#: templates/InvenTree/settings/plugin.html:70
+#: templates/InvenTree/settings/plugin.html:64
msgid "Plugin Error Stack"
msgstr "Utvidelse feilstack"
-#: templates/InvenTree/settings/plugin.html:79
+#: templates/InvenTree/settings/plugin.html:73
msgid "Stage"
msgstr "Stadium"
-#: templates/InvenTree/settings/plugin.html:81
+#: templates/InvenTree/settings/plugin.html:75
#: templates/js/translated/notification.js:75
msgid "Message"
msgstr "Melding"
@@ -8767,14 +8795,6 @@ msgstr "Commit-hash"
msgid "Commit Message"
msgstr "Commit-melding"
-#: templates/InvenTree/settings/plugin_settings.html:126
-msgid "Sign Status"
-msgstr "Signaturstatus"
-
-#: templates/InvenTree/settings/plugin_settings.html:131
-msgid "Sign Key"
-msgstr "Signaturnøkkel"
-
#: templates/InvenTree/settings/po.html:7
msgid "Purchase Order Settings"
msgstr "Innstillinger for Innkjøpsordre"
@@ -8870,12 +8890,12 @@ msgid "No category parameter templates found"
msgstr ""
#: templates/InvenTree/settings/settings_staff_js.html:212
-#: templates/js/translated/part.js:1618
+#: templates/js/translated/part.js:1617
msgid "Edit Template"
msgstr ""
#: templates/InvenTree/settings/settings_staff_js.html:213
-#: templates/js/translated/part.js:1619
+#: templates/js/translated/part.js:1618
msgid "Delete Template"
msgstr ""
@@ -8913,7 +8933,7 @@ msgid "Home Page"
msgstr ""
#: templates/InvenTree/settings/sidebar.html:15
-#: templates/js/translated/tables.js:575 templates/navbar.html:107
+#: templates/js/translated/tables.js:551 templates/navbar.html:107
#: templates/search.html:8 templates/search_form.html:6
#: templates/search_form.html:7
msgid "Search"
@@ -8990,6 +9010,7 @@ msgid "Unverified"
msgstr ""
#: templates/InvenTree/settings/user.html:80
+#: templates/js/translated/company.js:984
msgid "Primary"
msgstr ""
@@ -9204,44 +9225,48 @@ msgstr "Oppdatert"
msgid "Update Available"
msgstr "Oppdatering er tilgjengelig"
-#: templates/about.html:42
+#: templates/about.html:43
+msgid "Commit Branch"
+msgstr ""
+
+#: templates/about.html:49
msgid "InvenTree Documentation"
msgstr "InvenTree-dokumentasjon"
-#: templates/about.html:47
+#: templates/about.html:54
msgid "API Version"
msgstr "API-versjon"
-#: templates/about.html:52
+#: templates/about.html:59
msgid "Python Version"
msgstr "Python-versjon"
-#: templates/about.html:57
+#: templates/about.html:64
msgid "Django Version"
msgstr "Django-versjon"
-#: templates/about.html:62
+#: templates/about.html:69
msgid "View Code on GitHub"
msgstr "Vis koden på GitHub"
-#: templates/about.html:67
+#: templates/about.html:74
msgid "Credits"
msgstr ""
-#: templates/about.html:72
+#: templates/about.html:79
msgid "Mobile App"
msgstr ""
-#: templates/about.html:77
+#: templates/about.html:84
msgid "Submit Bug Report"
msgstr ""
-#: templates/about.html:84 templates/clip.html:4
+#: templates/about.html:91 templates/clip.html:4
#: templates/js/translated/helpers.js:585
msgid "copy to clipboard"
msgstr ""
-#: templates/about.html:84
+#: templates/about.html:91
msgid "copy version information"
msgstr ""
@@ -9435,14 +9460,6 @@ msgstr ""
msgid "Add Attachment"
msgstr ""
-#: templates/attachment_table.html:11
-msgid "Delete selected attachments"
-msgstr ""
-
-#: templates/attachment_table.html:12 templates/js/translated/attachment.js:129
-msgid "Delete Attachments"
-msgstr ""
-
#: templates/barcode_data.html:5
msgid "Barcode Identifier"
msgstr ""
@@ -9487,7 +9504,7 @@ msgid "The following parts are low on required stock"
msgstr "Følgende deler har for lav lagerbeholdning"
#: templates/email/build_order_required_stock.html:18
-#: templates/js/translated/bom.js:1633
+#: templates/js/translated/bom.js:1653 templates/js/translated/build.js:2485
msgid "Required Quantity"
msgstr "Antall som kreves"
@@ -9501,7 +9518,7 @@ msgid "Click on the following link to view this part"
msgstr "Klikk på følgende lenke for å se denne delen"
#: templates/email/low_stock_notification.html:18
-#: templates/js/translated/part.js:3140
+#: templates/js/translated/part.js:3125
msgid "Minimum Quantity"
msgstr "Minimum antall"
@@ -9573,23 +9590,35 @@ msgstr "Feilkode"
msgid "All selected attachments will be deleted"
msgstr "Alle valgte vedlegg vil bli slettet"
-#: templates/js/translated/attachment.js:255
+#: templates/js/translated/attachment.js:129
+msgid "Delete Attachments"
+msgstr ""
+
+#: templates/js/translated/attachment.js:205
+msgid "Delete attachments"
+msgstr ""
+
+#: templates/js/translated/attachment.js:253
+msgid "Attachment actions"
+msgstr ""
+
+#: templates/js/translated/attachment.js:275
msgid "No attachments found"
msgstr "Ingen vedlegg funnet"
-#: templates/js/translated/attachment.js:285
+#: templates/js/translated/attachment.js:305
msgid "Edit Attachment"
msgstr "Rediger vedlegg"
-#: templates/js/translated/attachment.js:326
+#: templates/js/translated/attachment.js:336
msgid "Upload Date"
msgstr "Opplastet dato"
-#: templates/js/translated/attachment.js:346
+#: templates/js/translated/attachment.js:356
msgid "Edit attachment"
msgstr "Rediger vedlegg"
-#: templates/js/translated/attachment.js:354
+#: templates/js/translated/attachment.js:364
msgid "Delete attachment"
msgstr "Slett vedlegg"
@@ -9646,7 +9675,7 @@ msgstr "Dette vil fjerne lenken til den tilknyttede strekkoden"
msgid "Unlink"
msgstr "Koble fra"
-#: templates/js/translated/barcode.js:550 templates/js/translated/stock.js:1118
+#: templates/js/translated/barcode.js:550 templates/js/translated/stock.js:1117
msgid "Remove stock item"
msgstr "Fjern lagervare"
@@ -9704,775 +9733,869 @@ msgstr ""
msgid "Barcode does not match a valid location"
msgstr ""
-#: templates/js/translated/bom.js:77
+#: templates/js/translated/bom.js:78
msgid "Create BOM Item"
msgstr ""
-#: templates/js/translated/bom.js:131
+#: templates/js/translated/bom.js:132
msgid "Display row data"
msgstr ""
-#: templates/js/translated/bom.js:187
+#: templates/js/translated/bom.js:188
msgid "Row Data"
msgstr ""
-#: templates/js/translated/bom.js:188 templates/js/translated/bom.js:699
+#: templates/js/translated/bom.js:189 templates/js/translated/bom.js:700
#: templates/js/translated/modals.js:71 templates/js/translated/modals.js:622
#: templates/js/translated/modals.js:746 templates/js/translated/modals.js:1054
-#: templates/js/translated/purchase_order.js:791 templates/modals.html:15
+#: templates/js/translated/purchase_order.js:802 templates/modals.html:15
#: templates/modals.html:27 templates/modals.html:39 templates/modals.html:50
msgid "Close"
msgstr ""
-#: templates/js/translated/bom.js:305
+#: templates/js/translated/bom.js:306
msgid "Download BOM Template"
msgstr ""
-#: templates/js/translated/bom.js:350
+#: templates/js/translated/bom.js:351
msgid "Multi Level BOM"
msgstr ""
-#: templates/js/translated/bom.js:351
+#: templates/js/translated/bom.js:352
msgid "Include BOM data for subassemblies"
msgstr ""
-#: templates/js/translated/bom.js:356
+#: templates/js/translated/bom.js:357
msgid "Levels"
msgstr ""
-#: templates/js/translated/bom.js:357
+#: templates/js/translated/bom.js:358
msgid "Select maximum number of BOM levels to export (0 = all levels)"
msgstr ""
-#: templates/js/translated/bom.js:364
+#: templates/js/translated/bom.js:365
msgid "Include Alternative Parts"
msgstr ""
-#: templates/js/translated/bom.js:365
+#: templates/js/translated/bom.js:366
msgid "Include alternative parts in exported BOM"
msgstr ""
-#: templates/js/translated/bom.js:370
+#: templates/js/translated/bom.js:371
msgid "Include Parameter Data"
msgstr ""
-#: templates/js/translated/bom.js:371
+#: templates/js/translated/bom.js:372
msgid "Include part parameter data in exported BOM"
msgstr ""
-#: templates/js/translated/bom.js:376
+#: templates/js/translated/bom.js:377
msgid "Include Stock Data"
msgstr ""
-#: templates/js/translated/bom.js:377
+#: templates/js/translated/bom.js:378
msgid "Include part stock data in exported BOM"
msgstr ""
-#: templates/js/translated/bom.js:382
+#: templates/js/translated/bom.js:383
msgid "Include Manufacturer Data"
msgstr ""
-#: templates/js/translated/bom.js:383
+#: templates/js/translated/bom.js:384
msgid "Include part manufacturer data in exported BOM"
msgstr ""
-#: templates/js/translated/bom.js:388
+#: templates/js/translated/bom.js:389
msgid "Include Supplier Data"
msgstr ""
-#: templates/js/translated/bom.js:389
+#: templates/js/translated/bom.js:390
msgid "Include part supplier data in exported BOM"
msgstr ""
-#: templates/js/translated/bom.js:394
+#: templates/js/translated/bom.js:395
msgid "Include Pricing Data"
msgstr ""
-#: templates/js/translated/bom.js:395
+#: templates/js/translated/bom.js:396
msgid "Include part pricing data in exported BOM"
msgstr ""
-#: templates/js/translated/bom.js:590
+#: templates/js/translated/bom.js:591
msgid "Remove substitute part"
msgstr ""
-#: templates/js/translated/bom.js:644
+#: templates/js/translated/bom.js:645
msgid "Select and add a new substitute part using the input below"
msgstr ""
-#: templates/js/translated/bom.js:655
+#: templates/js/translated/bom.js:656
msgid "Are you sure you wish to remove this substitute part link?"
msgstr ""
-#: templates/js/translated/bom.js:661
+#: templates/js/translated/bom.js:662
msgid "Remove Substitute Part"
msgstr ""
-#: templates/js/translated/bom.js:700
+#: templates/js/translated/bom.js:701
msgid "Add Substitute"
msgstr ""
-#: templates/js/translated/bom.js:701
+#: templates/js/translated/bom.js:702
msgid "Edit BOM Item Substitutes"
msgstr ""
-#: templates/js/translated/bom.js:763
+#: templates/js/translated/bom.js:764
msgid "All selected BOM items will be deleted"
msgstr ""
-#: templates/js/translated/bom.js:779
+#: templates/js/translated/bom.js:780
msgid "Delete selected BOM items?"
msgstr ""
-#: templates/js/translated/bom.js:906
+#: templates/js/translated/bom.js:826
+msgid "Delete items"
+msgstr ""
+
+#: templates/js/translated/bom.js:924
msgid "Load BOM for subassembly"
msgstr ""
-#: templates/js/translated/bom.js:916
+#: templates/js/translated/bom.js:934
msgid "Substitutes Available"
msgstr ""
-#: templates/js/translated/bom.js:920 templates/js/translated/build.js:2090
+#: templates/js/translated/bom.js:938 templates/js/translated/build.js:2429
msgid "Variant stock allowed"
msgstr ""
-#: templates/js/translated/bom.js:984
+#: templates/js/translated/bom.js:1002
msgid "Substitutes"
msgstr ""
-#: templates/js/translated/bom.js:1104
+#: templates/js/translated/bom.js:1122
msgid "BOM pricing is complete"
msgstr ""
-#: templates/js/translated/bom.js:1109
+#: templates/js/translated/bom.js:1127
msgid "BOM pricing is incomplete"
msgstr ""
-#: templates/js/translated/bom.js:1116
+#: templates/js/translated/bom.js:1134
msgid "No pricing available"
msgstr ""
-#: templates/js/translated/bom.js:1147 templates/js/translated/build.js:2173
-#: templates/js/translated/sales_order.js:1887
+#: templates/js/translated/bom.js:1165 templates/js/translated/build.js:2523
+#: templates/js/translated/sales_order.js:1899
msgid "No Stock Available"
msgstr ""
-#: templates/js/translated/bom.js:1152 templates/js/translated/build.js:2177
+#: templates/js/translated/bom.js:1170 templates/js/translated/build.js:2527
msgid "Includes variant and substitute stock"
msgstr ""
-#: templates/js/translated/bom.js:1154 templates/js/translated/build.js:2179
-#: templates/js/translated/part.js:1230
+#: templates/js/translated/bom.js:1172 templates/js/translated/build.js:2529
+#: templates/js/translated/part.js:1229
msgid "Includes variant stock"
msgstr ""
-#: templates/js/translated/bom.js:1156 templates/js/translated/build.js:2181
+#: templates/js/translated/bom.js:1174 templates/js/translated/build.js:2531
msgid "Includes substitute stock"
msgstr "Inkluderer erstatningsbeholdning"
-#: templates/js/translated/bom.js:1184 templates/js/translated/build.js:2164
-#: templates/js/translated/build.js:2255
+#: templates/js/translated/bom.js:1204 templates/js/translated/build.js:2514
msgid "Consumable item"
msgstr "Forbruksvare"
-#: templates/js/translated/bom.js:1244
+#: templates/js/translated/bom.js:1264
msgid "Validate BOM Item"
msgstr "Godkjenn stykklisteartikkel"
-#: templates/js/translated/bom.js:1246
+#: templates/js/translated/bom.js:1266
msgid "This line has been validated"
msgstr "Denne linjen er godkjent"
-#: templates/js/translated/bom.js:1248
+#: templates/js/translated/bom.js:1268
msgid "Edit substitute parts"
msgstr "Rediger erstatningsdeler"
-#: templates/js/translated/bom.js:1250 templates/js/translated/bom.js:1445
+#: templates/js/translated/bom.js:1270 templates/js/translated/bom.js:1465
msgid "Edit BOM Item"
msgstr "Rediger stykklisteartikkel"
-#: templates/js/translated/bom.js:1252
+#: templates/js/translated/bom.js:1272
msgid "Delete BOM Item"
msgstr "Slett stykklisteartikkel"
-#: templates/js/translated/bom.js:1272
+#: templates/js/translated/bom.js:1292
msgid "View BOM"
msgstr "Vis stykkliste"
-#: templates/js/translated/bom.js:1356 templates/js/translated/build.js:1927
+#: templates/js/translated/bom.js:1376
msgid "No BOM items found"
msgstr "Ingen stykklisteartikler funnet"
-#: templates/js/translated/bom.js:1616 templates/js/translated/build.js:2073
+#: templates/js/translated/bom.js:1636 templates/js/translated/build.js:2414
msgid "Required Part"
msgstr "Påkrevd del"
-#: templates/js/translated/bom.js:1642
+#: templates/js/translated/bom.js:1662
msgid "Inherited from parent BOM"
msgstr "Arvet fra overordnet stykkliste"
-#: templates/js/translated/build.js:126
+#: templates/js/translated/build.js:136
msgid "Edit Build Order"
msgstr "Rediger produksjonsordre"
-#: templates/js/translated/build.js:169
+#: templates/js/translated/build.js:179
msgid "Create Build Order"
msgstr "Opprett Produksjonsordre"
-#: templates/js/translated/build.js:202
+#: templates/js/translated/build.js:211
msgid "Cancel Build Order"
msgstr "Kanseller Produksjonsordre"
-#: templates/js/translated/build.js:211
+#: templates/js/translated/build.js:220
msgid "Are you sure you wish to cancel this build?"
msgstr "Er du sikker du vil kansellere produksjonen?"
-#: templates/js/translated/build.js:217
+#: templates/js/translated/build.js:226
msgid "Stock items have been allocated to this build order"
msgstr "Lagervarer har blitt tildelt til denne Produksjonsordren"
-#: templates/js/translated/build.js:224
+#: templates/js/translated/build.js:233
msgid "There are incomplete outputs remaining for this build order"
msgstr "Det er fortsatt ufullstendige artikler i denne produksjonsordren"
-#: templates/js/translated/build.js:276
+#: templates/js/translated/build.js:285
msgid "Build order is ready to be completed"
msgstr "Produksjonsordren er klar til å fullføres"
-#: templates/js/translated/build.js:284
+#: templates/js/translated/build.js:293
msgid "This build order cannot be completed as there are incomplete outputs"
msgstr "Denne produksjonsordren kan ikke fullføres da det fortsatt er ufullstendige artikler"
-#: templates/js/translated/build.js:289
+#: templates/js/translated/build.js:298
msgid "Build Order is incomplete"
msgstr "Produksjonsordren er ufullstendig"
-#: templates/js/translated/build.js:307
+#: templates/js/translated/build.js:316
msgid "Complete Build Order"
msgstr "Fullføre Produksjonsordre"
-#: templates/js/translated/build.js:348 templates/js/translated/stock.js:119
-#: templates/js/translated/stock.js:265
+#: templates/js/translated/build.js:357 templates/js/translated/stock.js:118
+#: templates/js/translated/stock.js:264
msgid "Next available serial number"
msgstr "Neste tilgjengelige serienummer"
-#: templates/js/translated/build.js:350 templates/js/translated/stock.js:121
-#: templates/js/translated/stock.js:267
+#: templates/js/translated/build.js:359 templates/js/translated/stock.js:120
+#: templates/js/translated/stock.js:266
msgid "Latest serial number"
msgstr "Siste serienummer"
-#: templates/js/translated/build.js:359
+#: templates/js/translated/build.js:368
msgid "The Bill of Materials contains trackable parts"
msgstr "Stykklisten inneholder sporbare deler"
-#: templates/js/translated/build.js:360
+#: templates/js/translated/build.js:369
msgid "Build outputs must be generated individually"
msgstr "Produksjonsartikler må genereres individuelt"
-#: templates/js/translated/build.js:368
+#: templates/js/translated/build.js:377
msgid "Trackable parts can have serial numbers specified"
msgstr "Sporbare varer kan ha serienummer angitt"
-#: templates/js/translated/build.js:369
+#: templates/js/translated/build.js:378
msgid "Enter serial numbers to generate multiple single build outputs"
msgstr "Angi serienumre for å generere flere single produksjonsartikler"
-#: templates/js/translated/build.js:376
+#: templates/js/translated/build.js:385
msgid "Create Build Output"
msgstr "Opprett Produksjonsartikkel"
-#: templates/js/translated/build.js:407
+#: templates/js/translated/build.js:416
msgid "Allocate stock items to this build output"
msgstr "Tildel lagervarer til denne produksjonsartikkelen"
-#: templates/js/translated/build.js:418
-msgid "Unallocate stock from build output"
-msgstr "Fjern tildelt lagerbeholdning fra produksjonsartikkel"
+#: templates/js/translated/build.js:424
+msgid "Deallocate stock from build output"
+msgstr ""
-#: templates/js/translated/build.js:427
+#: templates/js/translated/build.js:433
msgid "Complete build output"
msgstr "Fullfør Produksjonsartikkel"
-#: templates/js/translated/build.js:435
+#: templates/js/translated/build.js:441
msgid "Scrap build output"
msgstr ""
-#: templates/js/translated/build.js:442
+#: templates/js/translated/build.js:448
msgid "Delete build output"
msgstr "Slett Produksjonsartikkel"
-#: templates/js/translated/build.js:462
-msgid "Are you sure you wish to unallocate stock items from this build?"
-msgstr "Er du sikker på at du ønsker å fjerne tildelte lagervarer fra denne produksjonen?"
+#: templates/js/translated/build.js:468
+msgid "Are you sure you wish to deallocate the selected stock items from this build?"
+msgstr ""
-#: templates/js/translated/build.js:480
-msgid "Unallocate Stock Items"
-msgstr "Fjern tildelte lagervarer"
+#: templates/js/translated/build.js:486
+msgid "Deallocate Stock Items"
+msgstr ""
-#: templates/js/translated/build.js:566 templates/js/translated/build.js:690
-#: templates/js/translated/build.js:812
+#: templates/js/translated/build.js:572 templates/js/translated/build.js:696
+#: templates/js/translated/build.js:818
msgid "Select Build Outputs"
msgstr "Velg Produksjonsartikler"
-#: templates/js/translated/build.js:567 templates/js/translated/build.js:691
-#: templates/js/translated/build.js:813
+#: templates/js/translated/build.js:573 templates/js/translated/build.js:697
+#: templates/js/translated/build.js:819
msgid "At least one build output must be selected"
msgstr "Minst en produksjonsartikkel må velges"
-#: templates/js/translated/build.js:581
+#: templates/js/translated/build.js:587
msgid "Selected build outputs will be marked as complete"
msgstr ""
-#: templates/js/translated/build.js:585 templates/js/translated/build.js:715
-#: templates/js/translated/build.js:835
+#: templates/js/translated/build.js:591 templates/js/translated/build.js:721
+#: templates/js/translated/build.js:841
msgid "Output"
msgstr "Artikkel"
-#: templates/js/translated/build.js:609
+#: templates/js/translated/build.js:615
msgid "Complete Build Outputs"
msgstr "Fullfør Produksjonsartikler"
-#: templates/js/translated/build.js:706
+#: templates/js/translated/build.js:712
msgid "Selected build outputs will be marked as scrapped"
msgstr ""
-#: templates/js/translated/build.js:708
+#: templates/js/translated/build.js:714
msgid "Scrapped output are marked as rejected"
msgstr ""
-#: templates/js/translated/build.js:709
+#: templates/js/translated/build.js:715
msgid "Allocated stock items will no longer be available"
msgstr ""
-#: templates/js/translated/build.js:710
+#: templates/js/translated/build.js:716
msgid "The completion status of the build order will not be adjusted"
msgstr ""
-#: templates/js/translated/build.js:737
+#: templates/js/translated/build.js:743
msgid "Scrap Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:827
+#: templates/js/translated/build.js:833
msgid "Selected build outputs will be deleted"
msgstr ""
-#: templates/js/translated/build.js:829
+#: templates/js/translated/build.js:835
msgid "Build output data will be permanently deleted"
msgstr ""
-#: templates/js/translated/build.js:830
+#: templates/js/translated/build.js:836
msgid "Allocated stock items will be returned to stock"
msgstr ""
-#: templates/js/translated/build.js:848
+#: templates/js/translated/build.js:854
msgid "Delete Build Outputs"
msgstr "Slett Produksjonsartikler"
-#: templates/js/translated/build.js:934
+#: templates/js/translated/build.js:941
msgid "No build order allocations found"
msgstr "Ingen tildelinger til produksjonsordre funnet"
-#: templates/js/translated/build.js:971
+#: templates/js/translated/build.js:970 templates/js/translated/build.js:2270
+msgid "Allocated Quantity"
+msgstr ""
+
+#: templates/js/translated/build.js:984
msgid "Location not specified"
msgstr "Plassering ikke angitt"
-#: templates/js/translated/build.js:1047
+#: templates/js/translated/build.js:1006
+msgid "Complete outputs"
+msgstr "Fullfør artikler"
+
+#: templates/js/translated/build.js:1024
+msgid "Scrap outputs"
+msgstr ""
+
+#: templates/js/translated/build.js:1042
+msgid "Delete outputs"
+msgstr "Slett resultat"
+
+#: templates/js/translated/build.js:1100
msgid "build output"
msgstr ""
-#: templates/js/translated/build.js:1048
+#: templates/js/translated/build.js:1101
msgid "build outputs"
msgstr ""
-#: templates/js/translated/build.js:1383
+#: templates/js/translated/build.js:1105
+msgid "Build output actions"
+msgstr ""
+
+#: templates/js/translated/build.js:1274
msgid "No active build outputs found"
msgstr "Ingen aktive produksjonsartikler funnet"
-#: templates/js/translated/build.js:1457
-msgid "Allocated Stock"
-msgstr "Tildelt lagerbeholdning"
-
-#: templates/js/translated/build.js:1464
-msgid "No tracked BOM items for this build"
-msgstr "Ingen sporede stykklisteartikler for denne produksjonen"
-
-#: templates/js/translated/build.js:1486
-msgid "Completed Tests"
-msgstr "Fullførte Tester"
-
-#: templates/js/translated/build.js:1491
-msgid "No required tests for this build"
-msgstr "Ingen påkrevde tester for denne produksjonen"
-
-#: templates/js/translated/build.js:2032 templates/js/translated/build.js:3056
-#: templates/js/translated/sales_order.js:1632
-msgid "Edit stock allocation"
-msgstr "Rediger lagertildeling"
-
-#: templates/js/translated/build.js:2034 templates/js/translated/build.js:3057
-#: templates/js/translated/sales_order.js:1633
-msgid "Delete stock allocation"
-msgstr "Slett lagertildeling"
-
-#: templates/js/translated/build.js:2050
-msgid "Edit Allocation"
-msgstr "Rediger tildeling"
-
-#: templates/js/translated/build.js:2060
-msgid "Remove Allocation"
-msgstr "Slett tildeling"
-
-#: templates/js/translated/build.js:2086
-msgid "Substitute parts available"
-msgstr "Erstatningsdeler tilgjengelig"
-
-#: templates/js/translated/build.js:2122
-msgid "Quantity Per"
-msgstr "Antall per"
-
-#: templates/js/translated/build.js:2167
-#: templates/js/translated/sales_order.js:1894
-msgid "Insufficient stock available"
+#: templates/js/translated/build.js:1329
+msgid "Allocated Lines"
msgstr ""
-#: templates/js/translated/build.js:2169
-#: templates/js/translated/sales_order.js:1892
-msgid "Sufficient stock available"
+#: templates/js/translated/build.js:1343
+msgid "Required Tests"
msgstr ""
-#: templates/js/translated/build.js:2263
-#: templates/js/translated/sales_order.js:1993
-msgid "Build stock"
-msgstr ""
-
-#: templates/js/translated/build.js:2267 templates/stock_table.html:38
-msgid "Order stock"
-msgstr ""
-
-#: templates/js/translated/build.js:2270
-#: templates/js/translated/sales_order.js:1987
-msgid "Allocate stock"
-msgstr ""
-
-#: templates/js/translated/build.js:2310
-#: templates/js/translated/purchase_order.js:616
-#: templates/js/translated/sales_order.js:1159
+#: templates/js/translated/build.js:1502
+#: templates/js/translated/purchase_order.js:627
+#: templates/js/translated/sales_order.js:1171
msgid "Select Parts"
msgstr ""
-#: templates/js/translated/build.js:2311
-#: templates/js/translated/sales_order.js:1160
+#: templates/js/translated/build.js:1503
+#: templates/js/translated/sales_order.js:1172
msgid "You must select at least one part to allocate"
msgstr ""
-#: templates/js/translated/build.js:2359
-#: templates/js/translated/sales_order.js:1109
+#: templates/js/translated/build.js:1566
+#: templates/js/translated/sales_order.js:1121
msgid "Specify stock allocation quantity"
msgstr ""
-#: templates/js/translated/build.js:2438
+#: templates/js/translated/build.js:1643
msgid "All Parts Allocated"
msgstr ""
-#: templates/js/translated/build.js:2439
+#: templates/js/translated/build.js:1644
msgid "All selected parts have been fully allocated"
msgstr ""
-#: templates/js/translated/build.js:2453
-#: templates/js/translated/sales_order.js:1174
+#: templates/js/translated/build.js:1658
+#: templates/js/translated/sales_order.js:1186
msgid "Select source location (leave blank to take from all locations)"
msgstr ""
-#: templates/js/translated/build.js:2481
+#: templates/js/translated/build.js:1686
msgid "Allocate Stock Items to Build Order"
msgstr ""
-#: templates/js/translated/build.js:2492
-#: templates/js/translated/sales_order.js:1271
+#: templates/js/translated/build.js:1697
+#: templates/js/translated/sales_order.js:1283
msgid "No matching stock locations"
msgstr ""
-#: templates/js/translated/build.js:2565
-#: templates/js/translated/sales_order.js:1348
+#: templates/js/translated/build.js:1770
+#: templates/js/translated/sales_order.js:1360
msgid "No matching stock items"
msgstr ""
-#: templates/js/translated/build.js:2662
+#: templates/js/translated/build.js:1867
msgid "Automatic Stock Allocation"
msgstr ""
-#: templates/js/translated/build.js:2663
+#: templates/js/translated/build.js:1868
msgid "Stock items will be automatically allocated to this build order, according to the provided guidelines"
msgstr ""
-#: templates/js/translated/build.js:2665
+#: templates/js/translated/build.js:1870
msgid "If a location is specified, stock will only be allocated from that location"
msgstr ""
-#: templates/js/translated/build.js:2666
+#: templates/js/translated/build.js:1871
msgid "If stock is considered interchangeable, it will be allocated from the first location it is found"
msgstr ""
-#: templates/js/translated/build.js:2667
+#: templates/js/translated/build.js:1872
msgid "If substitute stock is allowed, it will be used where stock of the primary part cannot be found"
msgstr ""
-#: templates/js/translated/build.js:2694
+#: templates/js/translated/build.js:1899
msgid "Allocate Stock Items"
msgstr ""
-#: templates/js/translated/build.js:2800
+#: templates/js/translated/build.js:2005
msgid "No builds matching query"
msgstr ""
-#: templates/js/translated/build.js:2835 templates/js/translated/part.js:2208
-#: templates/js/translated/part.js:2692 templates/js/translated/stock.js:1759
-#: templates/js/translated/stock.js:2458
+#: templates/js/translated/build.js:2040 templates/js/translated/build.js:2408
+#: templates/js/translated/part.js:2284 templates/js/translated/part.js:2677
+#: templates/js/translated/stock.js:1899 templates/js/translated/stock.js:2589
msgid "Select"
msgstr ""
-#: templates/js/translated/build.js:2849
+#: templates/js/translated/build.js:2054
msgid "Build order is overdue"
msgstr ""
-#: templates/js/translated/build.js:2883
+#: templates/js/translated/build.js:2100
msgid "Progress"
msgstr ""
-#: templates/js/translated/build.js:2919 templates/js/translated/stock.js:2779
+#: templates/js/translated/build.js:2136 templates/js/translated/stock.js:2910
msgid "No user information"
msgstr ""
-#: templates/js/translated/build.js:2934
+#: templates/js/translated/build.js:2151
msgid "group"
msgstr ""
-#: templates/js/translated/build.js:3033
-msgid "No parts allocated for"
+#: templates/js/translated/build.js:2315
+#: templates/js/translated/sales_order.js:1644
+msgid "Edit stock allocation"
+msgstr "Rediger lagertildeling"
+
+#: templates/js/translated/build.js:2316
+#: templates/js/translated/sales_order.js:1645
+msgid "Delete stock allocation"
+msgstr "Slett lagertildeling"
+
+#: templates/js/translated/build.js:2331
+msgid "Edit Allocation"
+msgstr "Rediger tildeling"
+
+#: templates/js/translated/build.js:2343
+msgid "Remove Allocation"
+msgstr "Slett tildeling"
+
+#: templates/js/translated/build.js:2384
+msgid "build line"
msgstr ""
-#: templates/js/translated/company.js:87
+#: templates/js/translated/build.js:2385
+msgid "build lines"
+msgstr ""
+
+#: templates/js/translated/build.js:2403
+msgid "No build lines found"
+msgstr ""
+
+#: templates/js/translated/build.js:2433 templates/js/translated/part.js:767
+#: templates/js/translated/part.js:1175
+msgid "Trackable part"
+msgstr "Sporbar del"
+
+#: templates/js/translated/build.js:2468
+msgid "Unit Quantity"
+msgstr ""
+
+#: templates/js/translated/build.js:2517
+#: templates/js/translated/sales_order.js:1906
+msgid "Insufficient stock available"
+msgstr ""
+
+#: templates/js/translated/build.js:2519
+#: templates/js/translated/sales_order.js:1904
+msgid "Sufficient stock available"
+msgstr ""
+
+#: templates/js/translated/build.js:2566
+msgid "Consumable Item"
+msgstr ""
+
+#: templates/js/translated/build.js:2571
+msgid "Tracked item"
+msgstr ""
+
+#: templates/js/translated/build.js:2578
+#: templates/js/translated/sales_order.js:2005
+msgid "Build stock"
+msgstr ""
+
+#: templates/js/translated/build.js:2583 templates/js/translated/stock.js:1779
+msgid "Order stock"
+msgstr ""
+
+#: templates/js/translated/build.js:2587
+#: templates/js/translated/sales_order.js:1999
+msgid "Allocate stock"
+msgstr ""
+
+#: templates/js/translated/build.js:2591
+msgid "Remove stock allocation"
+msgstr ""
+
+#: templates/js/translated/company.js:97
msgid "Add Manufacturer"
msgstr ""
-#: templates/js/translated/company.js:100
-#: templates/js/translated/company.js:202
+#: templates/js/translated/company.js:110
+#: templates/js/translated/company.js:212
msgid "Add Manufacturer Part"
msgstr ""
-#: templates/js/translated/company.js:121
+#: templates/js/translated/company.js:131
msgid "Edit Manufacturer Part"
msgstr ""
-#: templates/js/translated/company.js:190
-#: templates/js/translated/purchase_order.js:94
+#: templates/js/translated/company.js:200
+#: templates/js/translated/purchase_order.js:93
msgid "Add Supplier"
msgstr ""
-#: templates/js/translated/company.js:232
-#: templates/js/translated/purchase_order.js:338
+#: templates/js/translated/company.js:242
+#: templates/js/translated/purchase_order.js:349
msgid "Add Supplier Part"
msgstr ""
-#: templates/js/translated/company.js:333
+#: templates/js/translated/company.js:343
msgid "All selected supplier parts will be deleted"
msgstr "Alle valgte leverandørdeler vil slettes"
-#: templates/js/translated/company.js:349
+#: templates/js/translated/company.js:359
msgid "Delete Supplier Parts"
msgstr ""
-#: templates/js/translated/company.js:457
+#: templates/js/translated/company.js:464
msgid "Add new Company"
msgstr ""
-#: templates/js/translated/company.js:528
+#: templates/js/translated/company.js:535
msgid "Parts Supplied"
msgstr ""
-#: templates/js/translated/company.js:537
+#: templates/js/translated/company.js:544
msgid "Parts Manufactured"
msgstr ""
-#: templates/js/translated/company.js:552
+#: templates/js/translated/company.js:559
msgid "No company information found"
msgstr ""
-#: templates/js/translated/company.js:601
+#: templates/js/translated/company.js:608
msgid "Create New Contact"
msgstr ""
-#: templates/js/translated/company.js:617
-#: templates/js/translated/company.js:740
+#: templates/js/translated/company.js:624
+#: templates/js/translated/company.js:747
msgid "Edit Contact"
msgstr ""
-#: templates/js/translated/company.js:654
+#: templates/js/translated/company.js:661
msgid "All selected contacts will be deleted"
msgstr ""
-#: templates/js/translated/company.js:660
-#: templates/js/translated/company.js:724
+#: templates/js/translated/company.js:667
+#: templates/js/translated/company.js:731
msgid "Role"
msgstr ""
-#: templates/js/translated/company.js:668
+#: templates/js/translated/company.js:675
msgid "Delete Contacts"
msgstr ""
-#: templates/js/translated/company.js:699
+#: templates/js/translated/company.js:706
msgid "No contacts found"
msgstr ""
-#: templates/js/translated/company.js:712
+#: templates/js/translated/company.js:719
msgid "Phone Number"
msgstr ""
-#: templates/js/translated/company.js:718
+#: templates/js/translated/company.js:725
msgid "Email Address"
msgstr ""
-#: templates/js/translated/company.js:744
+#: templates/js/translated/company.js:751
msgid "Delete Contact"
msgstr ""
-#: templates/js/translated/company.js:818
+#: templates/js/translated/company.js:886
+msgid "Create New Address"
+msgstr ""
+
+#: templates/js/translated/company.js:901
+#: templates/js/translated/company.js:1066
+msgid "Edit Address"
+msgstr ""
+
+#: templates/js/translated/company.js:936
+msgid "All selected addresses will be deleted"
+msgstr ""
+
+#: templates/js/translated/company.js:950
+msgid "Delete Addresses"
+msgstr ""
+
+#: templates/js/translated/company.js:977
+msgid "No addresses found"
+msgstr ""
+
+#: templates/js/translated/company.js:1020
+msgid "Postal city"
+msgstr ""
+
+#: templates/js/translated/company.js:1026
+msgid "State/province"
+msgstr ""
+
+#: templates/js/translated/company.js:1038
+msgid "Courier notes"
+msgstr ""
+
+#: templates/js/translated/company.js:1044
+msgid "Internal notes"
+msgstr ""
+
+#: templates/js/translated/company.js:1070
+msgid "Delete Address"
+msgstr ""
+
+#: templates/js/translated/company.js:1143
msgid "All selected manufacturer parts will be deleted"
msgstr ""
-#: templates/js/translated/company.js:833
+#: templates/js/translated/company.js:1158
msgid "Delete Manufacturer Parts"
msgstr ""
-#: templates/js/translated/company.js:867
+#: templates/js/translated/company.js:1192
msgid "All selected parameters will be deleted"
msgstr ""
-#: templates/js/translated/company.js:881
+#: templates/js/translated/company.js:1206
msgid "Delete Parameters"
msgstr ""
-#: templates/js/translated/company.js:917
+#: templates/js/translated/company.js:1222
+#: templates/js/translated/company.js:1510 templates/js/translated/part.js:2213
+msgid "Order parts"
+msgstr "Bestill deler"
+
+#: templates/js/translated/company.js:1239
+msgid "Delete manufacturer parts"
+msgstr ""
+
+#: templates/js/translated/company.js:1271
+msgid "Manufacturer part actions"
+msgstr ""
+
+#: templates/js/translated/company.js:1290
msgid "No manufacturer parts found"
msgstr "Ingen produsentdeler funnet"
-#: templates/js/translated/company.js:937
-#: templates/js/translated/company.js:1177 templates/js/translated/part.js:776
-#: templates/js/translated/part.js:1184
+#: templates/js/translated/company.js:1310
+#: templates/js/translated/company.js:1598 templates/js/translated/part.js:775
+#: templates/js/translated/part.js:1183
msgid "Template part"
msgstr "Maldel"
-#: templates/js/translated/company.js:941
-#: templates/js/translated/company.js:1181 templates/js/translated/part.js:780
-#: templates/js/translated/part.js:1188
+#: templates/js/translated/company.js:1314
+#: templates/js/translated/company.js:1602 templates/js/translated/part.js:779
+#: templates/js/translated/part.js:1187
msgid "Assembled part"
msgstr "Sammenstilt del"
-#: templates/js/translated/company.js:1061 templates/js/translated/part.js:1437
+#: templates/js/translated/company.js:1434 templates/js/translated/part.js:1436
msgid "No parameters found"
msgstr "Ingen parametere funnet"
-#: templates/js/translated/company.js:1096 templates/js/translated/part.js:1500
+#: templates/js/translated/company.js:1469 templates/js/translated/part.js:1499
msgid "Edit parameter"
msgstr "Rediger parameter"
-#: templates/js/translated/company.js:1097 templates/js/translated/part.js:1501
+#: templates/js/translated/company.js:1470 templates/js/translated/part.js:1500
msgid "Delete parameter"
msgstr "Slett parameter"
-#: templates/js/translated/company.js:1114 templates/js/translated/part.js:1407
+#: templates/js/translated/company.js:1487 templates/js/translated/part.js:1406
msgid "Edit Parameter"
msgstr "Rediger Parameter"
-#: templates/js/translated/company.js:1123 templates/js/translated/part.js:1522
+#: templates/js/translated/company.js:1496 templates/js/translated/part.js:1521
msgid "Delete Parameter"
msgstr "Slett Parameter"
-#: templates/js/translated/company.js:1156
+#: templates/js/translated/company.js:1527
+msgid "Delete supplier parts"
+msgstr "Slett leverandørdeler"
+
+#: templates/js/translated/company.js:1577
msgid "No supplier parts found"
msgstr "Ingen leverandørdeler funnet"
-#: templates/js/translated/company.js:1274
+#: templates/js/translated/company.js:1695
msgid "Base Units"
msgstr ""
-#: templates/js/translated/company.js:1304
+#: templates/js/translated/company.js:1725
msgid "Availability"
msgstr "Tilgjengelighet"
-#: templates/js/translated/company.js:1335
+#: templates/js/translated/company.js:1756
msgid "Edit supplier part"
msgstr "Rediger leverandørdel"
-#: templates/js/translated/company.js:1336
+#: templates/js/translated/company.js:1757
msgid "Delete supplier part"
msgstr "Slett leverandørdel"
-#: templates/js/translated/company.js:1389
+#: templates/js/translated/company.js:1810
#: templates/js/translated/pricing.js:694
msgid "Delete Price Break"
msgstr "Slett Prisbrudd"
-#: templates/js/translated/company.js:1399
+#: templates/js/translated/company.js:1820
#: templates/js/translated/pricing.js:712
msgid "Edit Price Break"
msgstr "Rediger Prisbrudd"
-#: templates/js/translated/company.js:1414
+#: templates/js/translated/company.js:1835
msgid "No price break information found"
msgstr "Ingen informasjon om prisbrudd funnet"
-#: templates/js/translated/company.js:1443
+#: templates/js/translated/company.js:1864
msgid "Last updated"
msgstr "Sist oppdatert"
-#: templates/js/translated/company.js:1450
+#: templates/js/translated/company.js:1871
msgid "Edit price break"
msgstr "Rediger prisbrudd"
-#: templates/js/translated/company.js:1451
+#: templates/js/translated/company.js:1872
msgid "Delete price break"
msgstr "Slett prisbrudd"
-#: templates/js/translated/filters.js:186
-#: templates/js/translated/filters.js:550
+#: templates/js/translated/filters.js:187
+#: templates/js/translated/filters.js:673
msgid "true"
msgstr "sant"
-#: templates/js/translated/filters.js:190
-#: templates/js/translated/filters.js:551
+#: templates/js/translated/filters.js:191
+#: templates/js/translated/filters.js:674
msgid "false"
msgstr "usant"
-#: templates/js/translated/filters.js:214
+#: templates/js/translated/filters.js:215
msgid "Select filter"
msgstr "Velg filter"
-#: templates/js/translated/filters.js:328
+#: templates/js/translated/filters.js:438
msgid "Print Labels"
msgstr "Skriv ut etiketter"
-#: templates/js/translated/filters.js:332
+#: templates/js/translated/filters.js:442
msgid "Print Reports"
msgstr "Skriv ut rapporter"
-#: templates/js/translated/filters.js:344
+#: templates/js/translated/filters.js:454
msgid "Download table data"
msgstr "Last ned tabelldata"
-#: templates/js/translated/filters.js:351
+#: templates/js/translated/filters.js:461
msgid "Reload table data"
msgstr "Last tabelldata på nytt"
-#: templates/js/translated/filters.js:360
+#: templates/js/translated/filters.js:470
msgid "Add new filter"
msgstr "Legg til nytt filter"
-#: templates/js/translated/filters.js:368
+#: templates/js/translated/filters.js:478
msgid "Clear all filters"
msgstr "Fjern alle filtre"
-#: templates/js/translated/filters.js:460
+#: templates/js/translated/filters.js:583
msgid "Create filter"
msgstr "Opprett filter"
@@ -10497,6 +10620,12 @@ msgstr "Slett-operasjon ikke tillatt"
msgid "View operation not allowed"
msgstr "Vis-operasjon ikke tillatt"
+#: templates/js/translated/forms.js:506 templates/js/translated/helpers.js:105
+#: templates/js/translated/part.js:369 templates/js/translated/pricing.js:629
+#: templates/js/translated/stock.js:215 users/models.py:253
+msgid "Delete"
+msgstr "Slett"
+
#: templates/js/translated/forms.js:752
msgid "Keep this form open"
msgstr "Holde dette skjemaet åpent"
@@ -10514,23 +10643,23 @@ msgstr "Skjemafeil eksisterer"
msgid "No results found"
msgstr "Ingen resultater funnet"
-#: templates/js/translated/forms.js:2071 templates/js/translated/search.js:281
+#: templates/js/translated/forms.js:2071 templates/js/translated/search.js:239
msgid "Searching"
msgstr "Søker"
-#: templates/js/translated/forms.js:2276
+#: templates/js/translated/forms.js:2285
msgid "Clear input"
msgstr "Tøm inndata"
-#: templates/js/translated/forms.js:2733
+#: templates/js/translated/forms.js:2742
msgid "File Column"
msgstr "Filkolonne"
-#: templates/js/translated/forms.js:2733
+#: templates/js/translated/forms.js:2742
msgid "Field Name"
msgstr "Feltnavn"
-#: templates/js/translated/forms.js:2745
+#: templates/js/translated/forms.js:2754
msgid "Select Columns"
msgstr "Velg Kolonner"
@@ -10550,6 +10679,14 @@ msgstr ""
msgid "False"
msgstr ""
+#: templates/js/translated/index.js:99
+msgid "No parts required for builds"
+msgstr ""
+
+#: templates/js/translated/index.js:125
+msgid "Allocated Stock"
+msgstr ""
+
#: templates/js/translated/label.js:58
msgid "Select Printer"
msgstr "Velg skriver"
@@ -10651,7 +10788,7 @@ msgstr ""
#: templates/js/translated/news.js:38
#: templates/js/translated/notification.js:45
-#: templates/js/translated/part.js:1577
+#: templates/js/translated/part.js:1576
msgid "ID"
msgstr ""
@@ -10700,7 +10837,7 @@ msgid "Delete Line"
msgstr ""
#: templates/js/translated/order.js:281
-#: templates/js/translated/purchase_order.js:1958
+#: templates/js/translated/purchase_order.js:1968
msgid "No line items found"
msgstr ""
@@ -10716,363 +10853,355 @@ msgstr ""
msgid "Delete line"
msgstr ""
-#: templates/js/translated/part.js:91
+#: templates/js/translated/part.js:90
msgid "Part Attributes"
msgstr ""
-#: templates/js/translated/part.js:95
+#: templates/js/translated/part.js:94
msgid "Part Creation Options"
msgstr ""
-#: templates/js/translated/part.js:99
+#: templates/js/translated/part.js:98
msgid "Part Duplication Options"
msgstr ""
-#: templates/js/translated/part.js:122
+#: templates/js/translated/part.js:121
msgid "Add Part Category"
msgstr ""
-#: templates/js/translated/part.js:294
+#: templates/js/translated/part.js:293
msgid "Parent part category"
msgstr ""
-#: templates/js/translated/part.js:310 templates/js/translated/stock.js:147
+#: templates/js/translated/part.js:309 templates/js/translated/stock.js:146
msgid "Icon (optional) - Explore all available icons on"
msgstr ""
-#: templates/js/translated/part.js:330
+#: templates/js/translated/part.js:329
msgid "Create Part Category"
msgstr ""
-#: templates/js/translated/part.js:333
+#: templates/js/translated/part.js:332
msgid "Create new category after this one"
msgstr ""
-#: templates/js/translated/part.js:334
+#: templates/js/translated/part.js:333
msgid "Part category created"
msgstr ""
-#: templates/js/translated/part.js:348
+#: templates/js/translated/part.js:347
msgid "Edit Part Category"
msgstr ""
-#: templates/js/translated/part.js:361
+#: templates/js/translated/part.js:360
msgid "Are you sure you want to delete this part category?"
msgstr ""
-#: templates/js/translated/part.js:366
+#: templates/js/translated/part.js:365
msgid "Move to parent category"
msgstr ""
-#: templates/js/translated/part.js:375
+#: templates/js/translated/part.js:374
msgid "Delete Part Category"
msgstr ""
-#: templates/js/translated/part.js:379
+#: templates/js/translated/part.js:378
msgid "Action for parts in this category"
msgstr ""
-#: templates/js/translated/part.js:384
+#: templates/js/translated/part.js:383
msgid "Action for child categories"
msgstr ""
-#: templates/js/translated/part.js:408
+#: templates/js/translated/part.js:407
msgid "Create Part"
msgstr ""
-#: templates/js/translated/part.js:410
+#: templates/js/translated/part.js:409
msgid "Create another part after this one"
msgstr ""
-#: templates/js/translated/part.js:411
+#: templates/js/translated/part.js:410
msgid "Part created successfully"
msgstr "Del opprettet"
-#: templates/js/translated/part.js:439
+#: templates/js/translated/part.js:438
msgid "Edit Part"
msgstr "Rediger del"
-#: templates/js/translated/part.js:441
+#: templates/js/translated/part.js:440
msgid "Part edited"
msgstr "Del redigert"
-#: templates/js/translated/part.js:452
+#: templates/js/translated/part.js:451
msgid "Create Part Variant"
msgstr "Opprett delvariant"
-#: templates/js/translated/part.js:509
+#: templates/js/translated/part.js:508
msgid "Active Part"
msgstr "Aktiv del"
-#: templates/js/translated/part.js:510
+#: templates/js/translated/part.js:509
msgid "Part cannot be deleted as it is currently active"
msgstr "Delen kan ikke slettes ettersom den er aktiv"
-#: templates/js/translated/part.js:524
+#: templates/js/translated/part.js:523
msgid "Deleting this part cannot be reversed"
msgstr "Sletting av denne delen kan ikke angres"
-#: templates/js/translated/part.js:526
+#: templates/js/translated/part.js:525
msgid "Any stock items for this part will be deleted"
msgstr "Eventuelle lagervarer for denne delen vil bli slettet"
-#: templates/js/translated/part.js:527
+#: templates/js/translated/part.js:526
msgid "This part will be removed from any Bills of Material"
msgstr "Denne delen vil bli fjernet fra eventuelle stykklister"
-#: templates/js/translated/part.js:528
+#: templates/js/translated/part.js:527
msgid "All manufacturer and supplier information for this part will be deleted"
msgstr "All produsent- og leverandørinformasjon for denne delen vil bli slettet"
-#: templates/js/translated/part.js:535
+#: templates/js/translated/part.js:534
msgid "Delete Part"
msgstr "Slett del"
-#: templates/js/translated/part.js:571
+#: templates/js/translated/part.js:570
msgid "You are subscribed to notifications for this item"
msgstr "Du abonnerer på varsler for denne artikkelen"
-#: templates/js/translated/part.js:573
+#: templates/js/translated/part.js:572
msgid "You have subscribed to notifications for this item"
msgstr "Du abonnerer nå på varsler for denne artikkelen"
-#: templates/js/translated/part.js:578
+#: templates/js/translated/part.js:577
msgid "Subscribe to notifications for this item"
msgstr "Abonner på varsler for denne artikkelen"
-#: templates/js/translated/part.js:580
+#: templates/js/translated/part.js:579
msgid "You have unsubscribed to notifications for this item"
msgstr "Du har avsluttet abonnementet på varsler for denne artikkelen"
-#: templates/js/translated/part.js:597
+#: templates/js/translated/part.js:596
msgid "Validating the BOM will mark each line item as valid"
msgstr "Godkjenning av stykkliste vil merke hvert linjeelement som godkjent"
-#: templates/js/translated/part.js:607
+#: templates/js/translated/part.js:606
msgid "Validate Bill of Materials"
msgstr "Godkjenn Stykkliste"
-#: templates/js/translated/part.js:610
+#: templates/js/translated/part.js:609
msgid "Validated Bill of Materials"
msgstr "Godkjente Stykkliste"
-#: templates/js/translated/part.js:635
+#: templates/js/translated/part.js:634
msgid "Copy Bill of Materials"
msgstr "Kopier Stykkliste"
-#: templates/js/translated/part.js:663
-#: templates/js/translated/table_filters.js:660
+#: templates/js/translated/part.js:662
+#: templates/js/translated/table_filters.js:682
msgid "Low stock"
msgstr "Lite lager"
-#: templates/js/translated/part.js:666
+#: templates/js/translated/part.js:665
msgid "No stock available"
msgstr "Ingen varer på lager"
-#: templates/js/translated/part.js:726
+#: templates/js/translated/part.js:725
msgid "Demand"
msgstr "Etterspørsel"
-#: templates/js/translated/part.js:749
+#: templates/js/translated/part.js:748
msgid "Unit"
msgstr "Enhet"
-#: templates/js/translated/part.js:768 templates/js/translated/part.js:1176
-msgid "Trackable part"
-msgstr "Sporbar del"
-
-#: templates/js/translated/part.js:772 templates/js/translated/part.js:1180
+#: templates/js/translated/part.js:771 templates/js/translated/part.js:1179
msgid "Virtual part"
msgstr "Virtuell del"
-#: templates/js/translated/part.js:784
+#: templates/js/translated/part.js:783
msgid "Subscribed part"
msgstr "Abonnert del"
-#: templates/js/translated/part.js:788
+#: templates/js/translated/part.js:787
msgid "Salable part"
msgstr "Salgbar del"
-#: templates/js/translated/part.js:863
+#: templates/js/translated/part.js:862
msgid "Schedule generation of a new stocktake report."
msgstr ""
-#: templates/js/translated/part.js:863
+#: templates/js/translated/part.js:862
msgid "Once complete, the stocktake report will be available for download."
msgstr ""
-#: templates/js/translated/part.js:871
+#: templates/js/translated/part.js:870
msgid "Generate Stocktake Report"
msgstr ""
-#: templates/js/translated/part.js:875
+#: templates/js/translated/part.js:874
msgid "Stocktake report scheduled"
msgstr ""
-#: templates/js/translated/part.js:1024
+#: templates/js/translated/part.js:1023
msgid "No stocktake information available"
msgstr ""
-#: templates/js/translated/part.js:1082 templates/js/translated/part.js:1118
+#: templates/js/translated/part.js:1081 templates/js/translated/part.js:1117
msgid "Edit Stocktake Entry"
msgstr ""
-#: templates/js/translated/part.js:1086 templates/js/translated/part.js:1128
+#: templates/js/translated/part.js:1085 templates/js/translated/part.js:1127
msgid "Delete Stocktake Entry"
msgstr ""
-#: templates/js/translated/part.js:1255
+#: templates/js/translated/part.js:1254
msgid "No variants found"
msgstr ""
-#: templates/js/translated/part.js:1572
+#: templates/js/translated/part.js:1571
msgid "No part parameter templates found"
msgstr ""
-#: templates/js/translated/part.js:1635
+#: templates/js/translated/part.js:1634
msgid "Edit Part Parameter Template"
msgstr ""
-#: templates/js/translated/part.js:1647
+#: templates/js/translated/part.js:1646
msgid "Any parameters which reference this template will also be deleted"
msgstr ""
-#: templates/js/translated/part.js:1655
+#: templates/js/translated/part.js:1654
msgid "Delete Part Parameter Template"
msgstr ""
-#: templates/js/translated/part.js:1689
-#: templates/js/translated/purchase_order.js:1618
+#: templates/js/translated/part.js:1688
+#: templates/js/translated/purchase_order.js:1633
msgid "No purchase orders found"
msgstr ""
-#: templates/js/translated/part.js:1832
-#: templates/js/translated/purchase_order.js:2121
-#: templates/js/translated/return_order.js:740
-#: templates/js/translated/sales_order.js:1855
+#: templates/js/translated/part.js:1831
+#: templates/js/translated/purchase_order.js:2131
+#: templates/js/translated/return_order.js:752
+#: templates/js/translated/sales_order.js:1867
msgid "This line item is overdue"
msgstr ""
-#: templates/js/translated/part.js:1877
-#: templates/js/translated/purchase_order.js:2188
+#: templates/js/translated/part.js:1876
+#: templates/js/translated/purchase_order.js:2198
msgid "Receive line item"
msgstr ""
-#: templates/js/translated/part.js:1944
+#: templates/js/translated/part.js:1943
msgid "Delete part relationship"
msgstr ""
-#: templates/js/translated/part.js:1966
+#: templates/js/translated/part.js:1965
msgid "Delete Part Relationship"
msgstr ""
-#: templates/js/translated/part.js:2054 templates/js/translated/part.js:2366
+#: templates/js/translated/part.js:2053 templates/js/translated/part.js:2442
msgid "No parts found"
msgstr ""
-#: templates/js/translated/part.js:2192
-msgid "parts"
-msgstr ""
-
-#: templates/js/translated/part.js:2276
-msgid "No category"
-msgstr ""
-
-#: templates/js/translated/part.js:2390 templates/js/translated/part.js:2611
-#: templates/js/translated/stock.js:2417
-msgid "Display as list"
-msgstr ""
-
-#: templates/js/translated/part.js:2406
-msgid "Display as grid"
-msgstr ""
-
-#: templates/js/translated/part.js:2472
+#: templates/js/translated/part.js:2174
msgid "Set the part category for the selected parts"
msgstr ""
-#: templates/js/translated/part.js:2477
+#: templates/js/translated/part.js:2179
msgid "Set Part Category"
msgstr ""
+#: templates/js/translated/part.js:2204
+msgid "Set category"
+msgstr "Sett kategori"
+
+#: templates/js/translated/part.js:2259
+msgid "parts"
+msgstr ""
+
+#: templates/js/translated/part.js:2352
+msgid "No category"
+msgstr ""
+
+#: templates/js/translated/part.js:2466 templates/js/translated/part.js:2596
+#: templates/js/translated/stock.js:2548
+msgid "Display as list"
+msgstr ""
+
#: templates/js/translated/part.js:2482
-msgid "Select Part Category"
+msgid "Display as grid"
msgstr ""
-#: templates/js/translated/part.js:2495
-msgid "Category is required"
-msgstr ""
-
-#: templates/js/translated/part.js:2595
+#: templates/js/translated/part.js:2580
msgid "No subcategories found"
msgstr ""
-#: templates/js/translated/part.js:2631 templates/js/translated/stock.js:2437
+#: templates/js/translated/part.js:2616 templates/js/translated/stock.js:2568
msgid "Display as tree"
msgstr ""
-#: templates/js/translated/part.js:2711
+#: templates/js/translated/part.js:2696
msgid "Load Subcategories"
msgstr ""
-#: templates/js/translated/part.js:2727
+#: templates/js/translated/part.js:2712
msgid "Subscribed category"
msgstr ""
-#: templates/js/translated/part.js:2807
+#: templates/js/translated/part.js:2792
msgid "No test templates matching query"
msgstr ""
-#: templates/js/translated/part.js:2858 templates/js/translated/stock.js:1380
+#: templates/js/translated/part.js:2843 templates/js/translated/stock.js:1379
msgid "Edit test result"
msgstr ""
-#: templates/js/translated/part.js:2859 templates/js/translated/stock.js:1381
-#: templates/js/translated/stock.js:1643
+#: templates/js/translated/part.js:2844 templates/js/translated/stock.js:1380
+#: templates/js/translated/stock.js:1642
msgid "Delete test result"
msgstr ""
-#: templates/js/translated/part.js:2863
+#: templates/js/translated/part.js:2848
msgid "This test is defined for a parent part"
msgstr ""
-#: templates/js/translated/part.js:2879
+#: templates/js/translated/part.js:2864
msgid "Edit Test Result Template"
msgstr ""
-#: templates/js/translated/part.js:2893
+#: templates/js/translated/part.js:2878
msgid "Delete Test Result Template"
msgstr ""
-#: templates/js/translated/part.js:2972 templates/js/translated/part.js:2973
+#: templates/js/translated/part.js:2957 templates/js/translated/part.js:2958
msgid "No date specified"
msgstr ""
-#: templates/js/translated/part.js:2975
+#: templates/js/translated/part.js:2960
msgid "Specified date is in the past"
msgstr ""
-#: templates/js/translated/part.js:2981
+#: templates/js/translated/part.js:2966
msgid "Speculative"
msgstr ""
-#: templates/js/translated/part.js:3031
+#: templates/js/translated/part.js:3016
msgid "No scheduling information available for this part"
msgstr ""
-#: templates/js/translated/part.js:3037
+#: templates/js/translated/part.js:3022
msgid "Error fetching scheduling information for this part"
msgstr ""
-#: templates/js/translated/part.js:3133
+#: templates/js/translated/part.js:3118
msgid "Scheduled Stock Quantities"
msgstr ""
-#: templates/js/translated/part.js:3149
+#: templates/js/translated/part.js:3134
msgid "Maximum Quantity"
msgstr ""
-#: templates/js/translated/part.js:3194
+#: templates/js/translated/part.js:3179
msgid "Minimum Stock Level"
msgstr ""
@@ -11168,234 +11297,234 @@ msgstr ""
msgid "Variant Part"
msgstr ""
-#: templates/js/translated/purchase_order.js:155
+#: templates/js/translated/purchase_order.js:166
msgid "Select purchase order to duplicate"
msgstr ""
-#: templates/js/translated/purchase_order.js:162
+#: templates/js/translated/purchase_order.js:173
msgid "Duplicate Line Items"
msgstr ""
-#: templates/js/translated/purchase_order.js:163
+#: templates/js/translated/purchase_order.js:174
msgid "Duplicate all line items from the selected order"
msgstr ""
-#: templates/js/translated/purchase_order.js:170
+#: templates/js/translated/purchase_order.js:181
msgid "Duplicate Extra Lines"
msgstr ""
-#: templates/js/translated/purchase_order.js:171
+#: templates/js/translated/purchase_order.js:182
msgid "Duplicate extra line items from the selected order"
msgstr ""
-#: templates/js/translated/purchase_order.js:192
+#: templates/js/translated/purchase_order.js:203
msgid "Edit Purchase Order"
msgstr ""
-#: templates/js/translated/purchase_order.js:209
+#: templates/js/translated/purchase_order.js:220
msgid "Duplication Options"
msgstr ""
-#: templates/js/translated/purchase_order.js:436
+#: templates/js/translated/purchase_order.js:447
msgid "Complete Purchase Order"
msgstr ""
-#: templates/js/translated/purchase_order.js:453
-#: templates/js/translated/return_order.js:195
-#: templates/js/translated/sales_order.js:485
+#: templates/js/translated/purchase_order.js:464
+#: templates/js/translated/return_order.js:207
+#: templates/js/translated/sales_order.js:497
msgid "Mark this order as complete?"
msgstr ""
-#: templates/js/translated/purchase_order.js:459
+#: templates/js/translated/purchase_order.js:470
msgid "All line items have been received"
msgstr ""
-#: templates/js/translated/purchase_order.js:464
+#: templates/js/translated/purchase_order.js:475
msgid "This order has line items which have not been marked as received."
msgstr ""
-#: templates/js/translated/purchase_order.js:465
-#: templates/js/translated/sales_order.js:499
+#: templates/js/translated/purchase_order.js:476
+#: templates/js/translated/sales_order.js:511
msgid "Completing this order means that the order and line items will no longer be editable."
msgstr ""
-#: templates/js/translated/purchase_order.js:488
+#: templates/js/translated/purchase_order.js:499
msgid "Cancel Purchase Order"
msgstr ""
-#: templates/js/translated/purchase_order.js:493
+#: templates/js/translated/purchase_order.js:504
msgid "Are you sure you wish to cancel this purchase order?"
msgstr ""
-#: templates/js/translated/purchase_order.js:499
+#: templates/js/translated/purchase_order.js:510
msgid "This purchase order can not be cancelled"
msgstr ""
-#: templates/js/translated/purchase_order.js:520
-#: templates/js/translated/return_order.js:149
+#: templates/js/translated/purchase_order.js:531
+#: templates/js/translated/return_order.js:161
msgid "After placing this order, line items will no longer be editable."
msgstr ""
-#: templates/js/translated/purchase_order.js:525
+#: templates/js/translated/purchase_order.js:536
msgid "Issue Purchase Order"
msgstr ""
-#: templates/js/translated/purchase_order.js:617
+#: templates/js/translated/purchase_order.js:628
msgid "At least one purchaseable part must be selected"
msgstr ""
-#: templates/js/translated/purchase_order.js:642
+#: templates/js/translated/purchase_order.js:653
msgid "Quantity to order"
msgstr ""
-#: templates/js/translated/purchase_order.js:651
+#: templates/js/translated/purchase_order.js:662
msgid "New supplier part"
msgstr ""
-#: templates/js/translated/purchase_order.js:669
+#: templates/js/translated/purchase_order.js:680
msgid "New purchase order"
msgstr ""
-#: templates/js/translated/purchase_order.js:701
+#: templates/js/translated/purchase_order.js:712
msgid "Add to purchase order"
msgstr ""
-#: templates/js/translated/purchase_order.js:845
+#: templates/js/translated/purchase_order.js:860
msgid "No matching supplier parts"
msgstr ""
-#: templates/js/translated/purchase_order.js:864
+#: templates/js/translated/purchase_order.js:879
msgid "No matching purchase orders"
msgstr ""
-#: templates/js/translated/purchase_order.js:1043
+#: templates/js/translated/purchase_order.js:1058
msgid "Select Line Items"
msgstr ""
-#: templates/js/translated/purchase_order.js:1044
-#: templates/js/translated/return_order.js:480
+#: templates/js/translated/purchase_order.js:1059
+#: templates/js/translated/return_order.js:492
msgid "At least one line item must be selected"
msgstr ""
-#: templates/js/translated/purchase_order.js:1074
+#: templates/js/translated/purchase_order.js:1089
msgid "Received Quantity"
msgstr ""
-#: templates/js/translated/purchase_order.js:1085
+#: templates/js/translated/purchase_order.js:1100
msgid "Quantity to receive"
msgstr ""
-#: templates/js/translated/purchase_order.js:1161
+#: templates/js/translated/purchase_order.js:1176
msgid "Stock Status"
msgstr ""
-#: templates/js/translated/purchase_order.js:1175
+#: templates/js/translated/purchase_order.js:1190
msgid "Add barcode"
msgstr ""
-#: templates/js/translated/purchase_order.js:1176
+#: templates/js/translated/purchase_order.js:1191
msgid "Remove barcode"
msgstr ""
-#: templates/js/translated/purchase_order.js:1179
+#: templates/js/translated/purchase_order.js:1194
msgid "Specify location"
msgstr ""
-#: templates/js/translated/purchase_order.js:1187
+#: templates/js/translated/purchase_order.js:1202
msgid "Add batch code"
msgstr ""
-#: templates/js/translated/purchase_order.js:1198
+#: templates/js/translated/purchase_order.js:1213
msgid "Add serial numbers"
msgstr ""
-#: templates/js/translated/purchase_order.js:1250
+#: templates/js/translated/purchase_order.js:1265
msgid "Serials"
msgstr ""
-#: templates/js/translated/purchase_order.js:1275
+#: templates/js/translated/purchase_order.js:1290
msgid "Order Code"
msgstr ""
-#: templates/js/translated/purchase_order.js:1277
+#: templates/js/translated/purchase_order.js:1292
msgid "Quantity to Receive"
msgstr ""
-#: templates/js/translated/purchase_order.js:1299
-#: templates/js/translated/return_order.js:545
+#: templates/js/translated/purchase_order.js:1314
+#: templates/js/translated/return_order.js:557
msgid "Confirm receipt of items"
msgstr ""
-#: templates/js/translated/purchase_order.js:1300
+#: templates/js/translated/purchase_order.js:1315
msgid "Receive Purchase Order Items"
msgstr ""
-#: templates/js/translated/purchase_order.js:1368
+#: templates/js/translated/purchase_order.js:1383
msgid "Scan Item Barcode"
msgstr ""
-#: templates/js/translated/purchase_order.js:1369
+#: templates/js/translated/purchase_order.js:1384
msgid "Scan barcode on incoming item (must not match any existing stock items)"
msgstr ""
-#: templates/js/translated/purchase_order.js:1383
+#: templates/js/translated/purchase_order.js:1398
msgid "Invalid barcode data"
msgstr ""
-#: templates/js/translated/purchase_order.js:1645
-#: templates/js/translated/return_order.js:274
-#: templates/js/translated/sales_order.js:762
-#: templates/js/translated/sales_order.js:986
+#: templates/js/translated/purchase_order.js:1660
+#: templates/js/translated/return_order.js:286
+#: templates/js/translated/sales_order.js:774
+#: templates/js/translated/sales_order.js:998
msgid "Order is overdue"
msgstr ""
-#: templates/js/translated/purchase_order.js:1707
-#: templates/js/translated/return_order.js:342
-#: templates/js/translated/sales_order.js:839
-#: templates/js/translated/sales_order.js:999
+#: templates/js/translated/purchase_order.js:1722
+#: templates/js/translated/return_order.js:354
+#: templates/js/translated/sales_order.js:851
+#: templates/js/translated/sales_order.js:1011
msgid "Items"
msgstr ""
-#: templates/js/translated/purchase_order.js:1806
+#: templates/js/translated/purchase_order.js:1821
msgid "All selected Line items will be deleted"
msgstr ""
-#: templates/js/translated/purchase_order.js:1824
+#: templates/js/translated/purchase_order.js:1839
msgid "Delete selected Line items?"
msgstr ""
-#: templates/js/translated/purchase_order.js:1884
-#: templates/js/translated/sales_order.js:2047
+#: templates/js/translated/purchase_order.js:1894
+#: templates/js/translated/sales_order.js:2059
msgid "Duplicate Line Item"
msgstr ""
-#: templates/js/translated/purchase_order.js:1899
-#: templates/js/translated/return_order.js:464
-#: templates/js/translated/return_order.js:653
-#: templates/js/translated/sales_order.js:2060
+#: templates/js/translated/purchase_order.js:1909
+#: templates/js/translated/return_order.js:476
+#: templates/js/translated/return_order.js:665
+#: templates/js/translated/sales_order.js:2072
msgid "Edit Line Item"
msgstr ""
-#: templates/js/translated/purchase_order.js:1910
-#: templates/js/translated/return_order.js:666
-#: templates/js/translated/sales_order.js:2071
+#: templates/js/translated/purchase_order.js:1920
+#: templates/js/translated/return_order.js:678
+#: templates/js/translated/sales_order.js:2083
msgid "Delete Line Item"
msgstr ""
-#: templates/js/translated/purchase_order.js:2192
-#: templates/js/translated/sales_order.js:2001
+#: templates/js/translated/purchase_order.js:2202
+#: templates/js/translated/sales_order.js:2013
msgid "Duplicate line item"
msgstr ""
-#: templates/js/translated/purchase_order.js:2193
-#: templates/js/translated/return_order.js:785
-#: templates/js/translated/sales_order.js:2002
+#: templates/js/translated/purchase_order.js:2203
+#: templates/js/translated/return_order.js:797
+#: templates/js/translated/sales_order.js:2014
msgid "Edit line item"
msgstr ""
-#: templates/js/translated/purchase_order.js:2194
-#: templates/js/translated/return_order.js:789
-#: templates/js/translated/sales_order.js:2008
+#: templates/js/translated/purchase_order.js:2204
+#: templates/js/translated/return_order.js:801
+#: templates/js/translated/sales_order.js:2020
msgid "Delete line item"
msgstr ""
@@ -11424,941 +11553,973 @@ msgstr ""
msgid "Add Customer"
msgstr ""
-#: templates/js/translated/return_order.js:119
+#: templates/js/translated/return_order.js:131
msgid "Create Return Order"
msgstr ""
-#: templates/js/translated/return_order.js:134
+#: templates/js/translated/return_order.js:146
msgid "Edit Return Order"
msgstr ""
-#: templates/js/translated/return_order.js:154
+#: templates/js/translated/return_order.js:166
msgid "Issue Return Order"
msgstr ""
-#: templates/js/translated/return_order.js:171
+#: templates/js/translated/return_order.js:183
msgid "Are you sure you wish to cancel this Return Order?"
msgstr ""
-#: templates/js/translated/return_order.js:178
+#: templates/js/translated/return_order.js:190
msgid "Cancel Return Order"
msgstr ""
-#: templates/js/translated/return_order.js:203
+#: templates/js/translated/return_order.js:215
msgid "Complete Return Order"
msgstr ""
-#: templates/js/translated/return_order.js:251
+#: templates/js/translated/return_order.js:263
msgid "No return orders found"
msgstr ""
-#: templates/js/translated/return_order.js:288
-#: templates/js/translated/sales_order.js:776
+#: templates/js/translated/return_order.js:300
+#: templates/js/translated/sales_order.js:788
msgid "Invalid Customer"
msgstr ""
-#: templates/js/translated/return_order.js:546
+#: templates/js/translated/return_order.js:558
msgid "Receive Return Order Items"
msgstr ""
-#: templates/js/translated/return_order.js:677
-#: templates/js/translated/sales_order.js:2207
+#: templates/js/translated/return_order.js:689
+#: templates/js/translated/sales_order.js:2219
msgid "No matching line items"
msgstr ""
-#: templates/js/translated/return_order.js:782
+#: templates/js/translated/return_order.js:794
msgid "Mark item as received"
msgstr ""
-#: templates/js/translated/sales_order.js:146
+#: templates/js/translated/sales_order.js:158
msgid "Create Sales Order"
msgstr ""
-#: templates/js/translated/sales_order.js:161
+#: templates/js/translated/sales_order.js:173
msgid "Edit Sales Order"
msgstr ""
-#: templates/js/translated/sales_order.js:276
+#: templates/js/translated/sales_order.js:288
msgid "No stock items have been allocated to this shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:281
+#: templates/js/translated/sales_order.js:293
msgid "The following stock items will be shipped"
msgstr ""
-#: templates/js/translated/sales_order.js:321
+#: templates/js/translated/sales_order.js:333
msgid "Complete Shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:345
+#: templates/js/translated/sales_order.js:357
msgid "Confirm Shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:401
+#: templates/js/translated/sales_order.js:413
msgid "No pending shipments found"
msgstr ""
-#: templates/js/translated/sales_order.js:405
+#: templates/js/translated/sales_order.js:417
msgid "No stock items have been allocated to pending shipments"
msgstr ""
-#: templates/js/translated/sales_order.js:415
+#: templates/js/translated/sales_order.js:427
msgid "Complete Shipments"
msgstr ""
-#: templates/js/translated/sales_order.js:437
+#: templates/js/translated/sales_order.js:449
msgid "Skip"
msgstr ""
-#: templates/js/translated/sales_order.js:498
+#: templates/js/translated/sales_order.js:510
msgid "This order has line items which have not been completed."
msgstr ""
-#: templates/js/translated/sales_order.js:520
+#: templates/js/translated/sales_order.js:532
msgid "Issue this Sales Order?"
msgstr ""
-#: templates/js/translated/sales_order.js:525
+#: templates/js/translated/sales_order.js:537
msgid "Issue Sales Order"
msgstr ""
-#: templates/js/translated/sales_order.js:544
+#: templates/js/translated/sales_order.js:556
msgid "Cancel Sales Order"
msgstr ""
-#: templates/js/translated/sales_order.js:549
+#: templates/js/translated/sales_order.js:561
msgid "Cancelling this order means that the order will no longer be editable."
msgstr ""
-#: templates/js/translated/sales_order.js:603
+#: templates/js/translated/sales_order.js:615
msgid "Create New Shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:713
+#: templates/js/translated/sales_order.js:725
msgid "No sales orders found"
msgstr ""
-#: templates/js/translated/sales_order.js:896
+#: templates/js/translated/sales_order.js:908
msgid "Edit shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:899
+#: templates/js/translated/sales_order.js:911
msgid "Complete shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:904
+#: templates/js/translated/sales_order.js:916
msgid "Delete shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:921
+#: templates/js/translated/sales_order.js:933
msgid "Edit Shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:936
+#: templates/js/translated/sales_order.js:948
msgid "Delete Shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:969
+#: templates/js/translated/sales_order.js:981
msgid "No matching shipments found"
msgstr ""
-#: templates/js/translated/sales_order.js:994
+#: templates/js/translated/sales_order.js:1006
msgid "Shipment Reference"
msgstr ""
-#: templates/js/translated/sales_order.js:1018
-#: templates/js/translated/sales_order.js:1515
+#: templates/js/translated/sales_order.js:1030
+#: templates/js/translated/sales_order.js:1527
msgid "Not shipped"
msgstr ""
-#: templates/js/translated/sales_order.js:1036
+#: templates/js/translated/sales_order.js:1048
msgid "Tracking"
msgstr ""
-#: templates/js/translated/sales_order.js:1040
+#: templates/js/translated/sales_order.js:1052
msgid "Invoice"
msgstr ""
-#: templates/js/translated/sales_order.js:1207
+#: templates/js/translated/sales_order.js:1219
msgid "Add Shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:1258
+#: templates/js/translated/sales_order.js:1270
msgid "Confirm stock allocation"
msgstr ""
-#: templates/js/translated/sales_order.js:1259
+#: templates/js/translated/sales_order.js:1271
msgid "Allocate Stock Items to Sales Order"
msgstr ""
-#: templates/js/translated/sales_order.js:1463
+#: templates/js/translated/sales_order.js:1475
msgid "No sales order allocations found"
msgstr ""
-#: templates/js/translated/sales_order.js:1555
+#: templates/js/translated/sales_order.js:1567
msgid "Edit Stock Allocation"
msgstr ""
-#: templates/js/translated/sales_order.js:1569
+#: templates/js/translated/sales_order.js:1581
msgid "Confirm Delete Operation"
msgstr ""
-#: templates/js/translated/sales_order.js:1570
+#: templates/js/translated/sales_order.js:1582
msgid "Delete Stock Allocation"
msgstr ""
-#: templates/js/translated/sales_order.js:1609
-#: templates/js/translated/sales_order.js:1696
-#: templates/js/translated/stock.js:1688
+#: templates/js/translated/sales_order.js:1621
+#: templates/js/translated/sales_order.js:1708
+#: templates/js/translated/stock.js:1687
msgid "Shipped to customer"
msgstr ""
-#: templates/js/translated/sales_order.js:1617
-#: templates/js/translated/sales_order.js:1705
+#: templates/js/translated/sales_order.js:1629
+#: templates/js/translated/sales_order.js:1717
msgid "Stock location not specified"
msgstr ""
-#: templates/js/translated/sales_order.js:1985
+#: templates/js/translated/sales_order.js:1997
msgid "Allocate serial numbers"
msgstr ""
-#: templates/js/translated/sales_order.js:1989
+#: templates/js/translated/sales_order.js:2001
msgid "Purchase stock"
msgstr ""
-#: templates/js/translated/sales_order.js:1998
-#: templates/js/translated/sales_order.js:2185
+#: templates/js/translated/sales_order.js:2010
+#: templates/js/translated/sales_order.js:2197
msgid "Calculate price"
msgstr ""
-#: templates/js/translated/sales_order.js:2012
+#: templates/js/translated/sales_order.js:2024
msgid "Cannot be deleted as items have been shipped"
msgstr ""
-#: templates/js/translated/sales_order.js:2015
+#: templates/js/translated/sales_order.js:2027
msgid "Cannot be deleted as items have been allocated"
msgstr ""
-#: templates/js/translated/sales_order.js:2086
+#: templates/js/translated/sales_order.js:2098
msgid "Allocate Serial Numbers"
msgstr ""
-#: templates/js/translated/sales_order.js:2193
+#: templates/js/translated/sales_order.js:2205
msgid "Update Unit Price"
msgstr ""
-#: templates/js/translated/search.js:312
+#: templates/js/translated/search.js:270
msgid "No results"
msgstr ""
-#: templates/js/translated/search.js:334 templates/search.html:25
+#: templates/js/translated/search.js:292 templates/search.html:25
msgid "Enter search query"
msgstr ""
-#: templates/js/translated/search.js:384
+#: templates/js/translated/search.js:342
msgid "result"
msgstr ""
-#: templates/js/translated/search.js:384
+#: templates/js/translated/search.js:342
msgid "results"
msgstr ""
-#: templates/js/translated/search.js:394
+#: templates/js/translated/search.js:352
msgid "Minimize results"
msgstr ""
-#: templates/js/translated/search.js:397
+#: templates/js/translated/search.js:355
msgid "Remove results"
msgstr ""
-#: templates/js/translated/stock.js:98
+#: templates/js/translated/stock.js:97
msgid "Serialize Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:129
+#: templates/js/translated/stock.js:128
msgid "Confirm Stock Serialization"
msgstr ""
-#: templates/js/translated/stock.js:138
+#: templates/js/translated/stock.js:137
msgid "Parent stock location"
msgstr ""
-#: templates/js/translated/stock.js:173
+#: templates/js/translated/stock.js:172
msgid "Edit Stock Location"
msgstr ""
-#: templates/js/translated/stock.js:188
+#: templates/js/translated/stock.js:187
msgid "New Stock Location"
msgstr ""
-#: templates/js/translated/stock.js:190
+#: templates/js/translated/stock.js:189
msgid "Create another location after this one"
msgstr ""
-#: templates/js/translated/stock.js:191
+#: templates/js/translated/stock.js:190
msgid "Stock location created"
msgstr ""
-#: templates/js/translated/stock.js:205
+#: templates/js/translated/stock.js:204
msgid "Are you sure you want to delete this stock location?"
msgstr ""
-#: templates/js/translated/stock.js:212
+#: templates/js/translated/stock.js:211
msgid "Move to parent stock location"
msgstr ""
-#: templates/js/translated/stock.js:221
+#: templates/js/translated/stock.js:220
msgid "Delete Stock Location"
msgstr ""
-#: templates/js/translated/stock.js:225
+#: templates/js/translated/stock.js:224
msgid "Action for stock items in this stock location"
msgstr ""
-#: templates/js/translated/stock.js:230
+#: templates/js/translated/stock.js:229
msgid "Action for sub-locations"
msgstr ""
-#: templates/js/translated/stock.js:284
+#: templates/js/translated/stock.js:283
msgid "This part cannot be serialized"
msgstr ""
-#: templates/js/translated/stock.js:320
+#: templates/js/translated/stock.js:319
msgid "Add given quantity as packs instead of individual items"
msgstr ""
-#: templates/js/translated/stock.js:329
+#: templates/js/translated/stock.js:328
msgid "Enter initial quantity for this stock item"
msgstr ""
-#: templates/js/translated/stock.js:335
+#: templates/js/translated/stock.js:334
msgid "Enter serial numbers for new stock (or leave blank)"
msgstr ""
-#: templates/js/translated/stock.js:406
+#: templates/js/translated/stock.js:405
msgid "Stock item duplicated"
msgstr ""
-#: templates/js/translated/stock.js:426
+#: templates/js/translated/stock.js:425
msgid "Duplicate Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:442
+#: templates/js/translated/stock.js:441
msgid "Are you sure you want to delete this stock item?"
msgstr ""
-#: templates/js/translated/stock.js:447
+#: templates/js/translated/stock.js:446
msgid "Delete Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:468
+#: templates/js/translated/stock.js:467
msgid "Edit Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:510
+#: templates/js/translated/stock.js:509
msgid "Create another item after this one"
msgstr ""
-#: templates/js/translated/stock.js:522
+#: templates/js/translated/stock.js:521
msgid "Created new stock item"
msgstr ""
-#: templates/js/translated/stock.js:535
+#: templates/js/translated/stock.js:534
msgid "Created multiple stock items"
msgstr ""
-#: templates/js/translated/stock.js:560
+#: templates/js/translated/stock.js:559
msgid "Find Serial Number"
msgstr ""
-#: templates/js/translated/stock.js:564 templates/js/translated/stock.js:565
+#: templates/js/translated/stock.js:563 templates/js/translated/stock.js:564
msgid "Enter serial number"
msgstr ""
-#: templates/js/translated/stock.js:581
+#: templates/js/translated/stock.js:580
msgid "Enter a serial number"
msgstr ""
-#: templates/js/translated/stock.js:601
+#: templates/js/translated/stock.js:600
msgid "No matching serial number"
msgstr ""
-#: templates/js/translated/stock.js:610
+#: templates/js/translated/stock.js:609
msgid "More than one matching result found"
msgstr ""
-#: templates/js/translated/stock.js:718
+#: templates/js/translated/stock.js:717
msgid "Confirm stock assignment"
msgstr ""
-#: templates/js/translated/stock.js:719
+#: templates/js/translated/stock.js:718
msgid "Assign Stock to Customer"
msgstr ""
-#: templates/js/translated/stock.js:796
+#: templates/js/translated/stock.js:795
msgid "Warning: Merge operation cannot be reversed"
msgstr ""
-#: templates/js/translated/stock.js:797
+#: templates/js/translated/stock.js:796
msgid "Some information will be lost when merging stock items"
msgstr ""
-#: templates/js/translated/stock.js:799
+#: templates/js/translated/stock.js:798
msgid "Stock transaction history will be deleted for merged items"
msgstr ""
-#: templates/js/translated/stock.js:800
+#: templates/js/translated/stock.js:799
msgid "Supplier part information will be deleted for merged items"
msgstr ""
-#: templates/js/translated/stock.js:891
+#: templates/js/translated/stock.js:890
msgid "Confirm stock item merge"
msgstr ""
-#: templates/js/translated/stock.js:892
+#: templates/js/translated/stock.js:891
msgid "Merge Stock Items"
msgstr ""
-#: templates/js/translated/stock.js:987
+#: templates/js/translated/stock.js:986
msgid "Transfer Stock"
msgstr ""
-#: templates/js/translated/stock.js:988
+#: templates/js/translated/stock.js:987
msgid "Move"
msgstr ""
-#: templates/js/translated/stock.js:994
+#: templates/js/translated/stock.js:993
msgid "Count Stock"
msgstr ""
-#: templates/js/translated/stock.js:995
+#: templates/js/translated/stock.js:994
msgid "Count"
msgstr ""
-#: templates/js/translated/stock.js:999
+#: templates/js/translated/stock.js:998
msgid "Remove Stock"
msgstr ""
-#: templates/js/translated/stock.js:1000
+#: templates/js/translated/stock.js:999
msgid "Take"
msgstr ""
-#: templates/js/translated/stock.js:1004
+#: templates/js/translated/stock.js:1003
msgid "Add Stock"
msgstr ""
-#: templates/js/translated/stock.js:1005 users/models.py:243
+#: templates/js/translated/stock.js:1004 users/models.py:249
msgid "Add"
msgstr ""
-#: templates/js/translated/stock.js:1009
+#: templates/js/translated/stock.js:1008
msgid "Delete Stock"
msgstr ""
-#: templates/js/translated/stock.js:1106
+#: templates/js/translated/stock.js:1105
msgid "Quantity cannot be adjusted for serialized stock"
msgstr ""
-#: templates/js/translated/stock.js:1106
+#: templates/js/translated/stock.js:1105
msgid "Specify stock quantity"
msgstr ""
-#: templates/js/translated/stock.js:1140
+#: templates/js/translated/stock.js:1139 templates/js/translated/stock.js:3151
msgid "Select Stock Items"
msgstr ""
-#: templates/js/translated/stock.js:1141
-msgid "You must select at least one available stock item"
+#: templates/js/translated/stock.js:1140
+msgid "Select at least one available stock item"
msgstr ""
-#: templates/js/translated/stock.js:1168
+#: templates/js/translated/stock.js:1167
msgid "Confirm stock adjustment"
msgstr ""
-#: templates/js/translated/stock.js:1304
+#: templates/js/translated/stock.js:1303
msgid "PASS"
msgstr ""
-#: templates/js/translated/stock.js:1306
+#: templates/js/translated/stock.js:1305
msgid "FAIL"
msgstr ""
-#: templates/js/translated/stock.js:1311
+#: templates/js/translated/stock.js:1310
msgid "NO RESULT"
msgstr ""
-#: templates/js/translated/stock.js:1373
+#: templates/js/translated/stock.js:1372
msgid "Pass test"
msgstr ""
-#: templates/js/translated/stock.js:1376
+#: templates/js/translated/stock.js:1375
msgid "Add test result"
msgstr ""
-#: templates/js/translated/stock.js:1400
+#: templates/js/translated/stock.js:1399
msgid "No test results found"
msgstr ""
-#: templates/js/translated/stock.js:1464
+#: templates/js/translated/stock.js:1463
msgid "Test Date"
msgstr ""
-#: templates/js/translated/stock.js:1626
+#: templates/js/translated/stock.js:1625
msgid "Edit Test Result"
msgstr ""
-#: templates/js/translated/stock.js:1648
+#: templates/js/translated/stock.js:1647
msgid "Delete Test Result"
msgstr ""
-#: templates/js/translated/stock.js:1680
+#: templates/js/translated/stock.js:1679
msgid "In production"
msgstr ""
-#: templates/js/translated/stock.js:1684
+#: templates/js/translated/stock.js:1683
msgid "Installed in Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:1692
+#: templates/js/translated/stock.js:1691
msgid "Assigned to Sales Order"
msgstr ""
-#: templates/js/translated/stock.js:1698
+#: templates/js/translated/stock.js:1697
msgid "No stock location set"
msgstr ""
-#: templates/js/translated/stock.js:1746
+#: templates/js/translated/stock.js:1753
+msgid "Change stock status"
+msgstr ""
+
+#: templates/js/translated/stock.js:1762
+msgid "Merge stock"
+msgstr ""
+
+#: templates/js/translated/stock.js:1811
+msgid "Delete stock"
+msgstr ""
+
+#: templates/js/translated/stock.js:1866
msgid "stock items"
msgstr ""
-#: templates/js/translated/stock.js:1850
+#: templates/js/translated/stock.js:1871
+msgid "Scan to location"
+msgstr ""
+
+#: templates/js/translated/stock.js:1882
+msgid "Stock Actions"
+msgstr ""
+
+#: templates/js/translated/stock.js:1929
+msgid "Load installed items"
+msgstr ""
+
+#: templates/js/translated/stock.js:2007
msgid "Stock item is in production"
msgstr ""
-#: templates/js/translated/stock.js:1855
+#: templates/js/translated/stock.js:2012
msgid "Stock item assigned to sales order"
msgstr ""
-#: templates/js/translated/stock.js:1858
+#: templates/js/translated/stock.js:2015
msgid "Stock item assigned to customer"
msgstr ""
-#: templates/js/translated/stock.js:1861
+#: templates/js/translated/stock.js:2018
msgid "Serialized stock item has been allocated"
msgstr ""
-#: templates/js/translated/stock.js:1863
+#: templates/js/translated/stock.js:2020
msgid "Stock item has been fully allocated"
msgstr ""
-#: templates/js/translated/stock.js:1865
+#: templates/js/translated/stock.js:2022
msgid "Stock item has been partially allocated"
msgstr ""
-#: templates/js/translated/stock.js:1868
+#: templates/js/translated/stock.js:2025
msgid "Stock item has been installed in another item"
msgstr ""
-#: templates/js/translated/stock.js:1870
+#: templates/js/translated/stock.js:2027
msgid "Stock item has been consumed by a build order"
msgstr ""
-#: templates/js/translated/stock.js:1874
+#: templates/js/translated/stock.js:2031
msgid "Stock item has expired"
msgstr ""
-#: templates/js/translated/stock.js:1876
+#: templates/js/translated/stock.js:2033
msgid "Stock item will expire soon"
msgstr ""
-#: templates/js/translated/stock.js:1881
+#: templates/js/translated/stock.js:2038
msgid "Stock item has been rejected"
msgstr ""
-#: templates/js/translated/stock.js:1883
+#: templates/js/translated/stock.js:2040
msgid "Stock item is lost"
msgstr ""
-#: templates/js/translated/stock.js:1885
+#: templates/js/translated/stock.js:2042
msgid "Stock item is destroyed"
msgstr ""
-#: templates/js/translated/stock.js:1889
-#: templates/js/translated/table_filters.js:296
+#: templates/js/translated/stock.js:2046
+#: templates/js/translated/table_filters.js:302
msgid "Depleted"
msgstr ""
-#: templates/js/translated/stock.js:2031
+#: templates/js/translated/stock.js:2188
msgid "Supplier part not specified"
msgstr ""
-#: templates/js/translated/stock.js:2078
+#: templates/js/translated/stock.js:2235
msgid "Stock Value"
msgstr ""
-#: templates/js/translated/stock.js:2170
+#: templates/js/translated/stock.js:2358
msgid "No stock items matching query"
msgstr ""
-#: templates/js/translated/stock.js:2319
+#: templates/js/translated/stock.js:2450
msgid "stock locations"
msgstr ""
-#: templates/js/translated/stock.js:2476
+#: templates/js/translated/stock.js:2607
msgid "Load Subloactions"
msgstr ""
-#: templates/js/translated/stock.js:2583
+#: templates/js/translated/stock.js:2714
msgid "Details"
msgstr ""
-#: templates/js/translated/stock.js:2587
+#: templates/js/translated/stock.js:2718
msgid "No changes"
msgstr ""
-#: templates/js/translated/stock.js:2599
+#: templates/js/translated/stock.js:2730
msgid "Part information unavailable"
msgstr ""
-#: templates/js/translated/stock.js:2621
+#: templates/js/translated/stock.js:2752
msgid "Location no longer exists"
msgstr ""
-#: templates/js/translated/stock.js:2638
+#: templates/js/translated/stock.js:2769
msgid "Build order no longer exists"
msgstr ""
-#: templates/js/translated/stock.js:2653
+#: templates/js/translated/stock.js:2784
msgid "Purchase order no longer exists"
msgstr ""
-#: templates/js/translated/stock.js:2670
+#: templates/js/translated/stock.js:2801
msgid "Sales Order no longer exists"
msgstr ""
-#: templates/js/translated/stock.js:2687
+#: templates/js/translated/stock.js:2818
msgid "Return Order no longer exists"
msgstr ""
-#: templates/js/translated/stock.js:2706
+#: templates/js/translated/stock.js:2837
msgid "Customer no longer exists"
msgstr ""
-#: templates/js/translated/stock.js:2724
+#: templates/js/translated/stock.js:2855
msgid "Stock item no longer exists"
msgstr ""
-#: templates/js/translated/stock.js:2742
+#: templates/js/translated/stock.js:2873
msgid "Added"
msgstr ""
-#: templates/js/translated/stock.js:2750
+#: templates/js/translated/stock.js:2881
msgid "Removed"
msgstr ""
-#: templates/js/translated/stock.js:2826
+#: templates/js/translated/stock.js:2953
msgid "No installed items"
msgstr ""
-#: templates/js/translated/stock.js:2876 templates/js/translated/stock.js:2911
+#: templates/js/translated/stock.js:3003 templates/js/translated/stock.js:3038
msgid "Uninstall Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:2929
+#: templates/js/translated/stock.js:3056
msgid "Select stock item to uninstall"
msgstr ""
-#: templates/js/translated/stock.js:2950
+#: templates/js/translated/stock.js:3077
msgid "Install another stock item into this item"
msgstr ""
-#: templates/js/translated/stock.js:2951
+#: templates/js/translated/stock.js:3078
msgid "Stock items can only be installed if they meet the following criteria"
msgstr ""
-#: templates/js/translated/stock.js:2953
+#: templates/js/translated/stock.js:3080
msgid "The Stock Item links to a Part which is the BOM for this Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:2954
+#: templates/js/translated/stock.js:3081
msgid "The Stock Item is currently available in stock"
msgstr ""
-#: templates/js/translated/stock.js:2955
+#: templates/js/translated/stock.js:3082
msgid "The Stock Item is not already installed in another item"
msgstr ""
-#: templates/js/translated/stock.js:2956
+#: templates/js/translated/stock.js:3083
msgid "The Stock Item is tracked by either a batch code or serial number"
msgstr ""
-#: templates/js/translated/stock.js:2969
+#: templates/js/translated/stock.js:3096
msgid "Select part to install"
msgstr ""
+#: templates/js/translated/stock.js:3152
+msgid "Select one or more stock items"
+msgstr ""
+
+#: templates/js/translated/stock.js:3165
+msgid "Selected stock items"
+msgstr ""
+
+#: templates/js/translated/stock.js:3169
+msgid "Change Stock Status"
+msgstr ""
+
#: templates/js/translated/table_filters.js:50
msgid "Has project code"
msgstr ""
-#: templates/js/translated/table_filters.js:59
-#: templates/js/translated/table_filters.js:518
-#: templates/js/translated/table_filters.js:530
-#: templates/js/translated/table_filters.js:571
+#: templates/js/translated/table_filters.js:65
+#: templates/js/translated/table_filters.js:540
+#: templates/js/translated/table_filters.js:552
+#: templates/js/translated/table_filters.js:593
msgid "Order status"
msgstr ""
-#: templates/js/translated/table_filters.js:64
-#: templates/js/translated/table_filters.js:535
-#: templates/js/translated/table_filters.js:561
-#: templates/js/translated/table_filters.js:576
+#: templates/js/translated/table_filters.js:70
+#: templates/js/translated/table_filters.js:557
+#: templates/js/translated/table_filters.js:583
+#: templates/js/translated/table_filters.js:598
msgid "Outstanding"
msgstr ""
-#: templates/js/translated/table_filters.js:72
-#: templates/js/translated/table_filters.js:458
-#: templates/js/translated/table_filters.js:543
-#: templates/js/translated/table_filters.js:584
+#: templates/js/translated/table_filters.js:78
+#: templates/js/translated/table_filters.js:464
+#: templates/js/translated/table_filters.js:565
+#: templates/js/translated/table_filters.js:606
msgid "Assigned to me"
msgstr ""
-#: templates/js/translated/table_filters.js:128
+#: templates/js/translated/table_filters.js:134
msgid "Trackable Part"
msgstr ""
-#: templates/js/translated/table_filters.js:132
+#: templates/js/translated/table_filters.js:138
msgid "Assembled Part"
msgstr ""
-#: templates/js/translated/table_filters.js:136
+#: templates/js/translated/table_filters.js:142
msgid "Has Available Stock"
msgstr ""
-#: templates/js/translated/table_filters.js:152
+#: templates/js/translated/table_filters.js:158
msgid "Allow Variant Stock"
msgstr ""
-#: templates/js/translated/table_filters.js:164
-#: templates/js/translated/table_filters.js:692
+#: templates/js/translated/table_filters.js:170
+#: templates/js/translated/table_filters.js:714
msgid "Has Pricing"
msgstr ""
-#: templates/js/translated/table_filters.js:204
-#: templates/js/translated/table_filters.js:291
+#: templates/js/translated/table_filters.js:210
+#: templates/js/translated/table_filters.js:297
msgid "Include sublocations"
msgstr ""
-#: templates/js/translated/table_filters.js:205
+#: templates/js/translated/table_filters.js:211
msgid "Include locations"
msgstr ""
-#: templates/js/translated/table_filters.js:224
-#: templates/js/translated/table_filters.js:225
-#: templates/js/translated/table_filters.js:624
+#: templates/js/translated/table_filters.js:230
+#: templates/js/translated/table_filters.js:231
+#: templates/js/translated/table_filters.js:646
msgid "Include subcategories"
msgstr ""
-#: templates/js/translated/table_filters.js:233
-#: templates/js/translated/table_filters.js:672
+#: templates/js/translated/table_filters.js:239
+#: templates/js/translated/table_filters.js:694
msgid "Subscribed"
msgstr ""
-#: templates/js/translated/table_filters.js:244
-#: templates/js/translated/table_filters.js:326
+#: templates/js/translated/table_filters.js:250
+#: templates/js/translated/table_filters.js:332
msgid "Is Serialized"
msgstr ""
-#: templates/js/translated/table_filters.js:247
-#: templates/js/translated/table_filters.js:333
+#: templates/js/translated/table_filters.js:253
+#: templates/js/translated/table_filters.js:339
msgid "Serial number GTE"
msgstr ""
-#: templates/js/translated/table_filters.js:248
-#: templates/js/translated/table_filters.js:334
+#: templates/js/translated/table_filters.js:254
+#: templates/js/translated/table_filters.js:340
msgid "Serial number greater than or equal to"
msgstr ""
-#: templates/js/translated/table_filters.js:251
-#: templates/js/translated/table_filters.js:337
+#: templates/js/translated/table_filters.js:257
+#: templates/js/translated/table_filters.js:343
msgid "Serial number LTE"
msgstr ""
-#: templates/js/translated/table_filters.js:252
-#: templates/js/translated/table_filters.js:338
+#: templates/js/translated/table_filters.js:258
+#: templates/js/translated/table_filters.js:344
msgid "Serial number less than or equal to"
msgstr ""
-#: templates/js/translated/table_filters.js:255
-#: templates/js/translated/table_filters.js:256
-#: templates/js/translated/table_filters.js:329
-#: templates/js/translated/table_filters.js:330
+#: templates/js/translated/table_filters.js:261
+#: templates/js/translated/table_filters.js:262
+#: templates/js/translated/table_filters.js:335
+#: templates/js/translated/table_filters.js:336
msgid "Serial number"
msgstr ""
-#: templates/js/translated/table_filters.js:260
-#: templates/js/translated/table_filters.js:351
+#: templates/js/translated/table_filters.js:266
+#: templates/js/translated/table_filters.js:357
msgid "Batch code"
msgstr ""
-#: templates/js/translated/table_filters.js:271
-#: templates/js/translated/table_filters.js:613
+#: templates/js/translated/table_filters.js:277
+#: templates/js/translated/table_filters.js:635
msgid "Active parts"
msgstr ""
-#: templates/js/translated/table_filters.js:272
+#: templates/js/translated/table_filters.js:278
msgid "Show stock for active parts"
msgstr ""
-#: templates/js/translated/table_filters.js:277
+#: templates/js/translated/table_filters.js:283
msgid "Part is an assembly"
msgstr ""
-#: templates/js/translated/table_filters.js:281
+#: templates/js/translated/table_filters.js:287
msgid "Is allocated"
msgstr ""
-#: templates/js/translated/table_filters.js:282
+#: templates/js/translated/table_filters.js:288
msgid "Item has been allocated"
msgstr ""
-#: templates/js/translated/table_filters.js:287
+#: templates/js/translated/table_filters.js:293
msgid "Stock is available for use"
msgstr ""
-#: templates/js/translated/table_filters.js:292
+#: templates/js/translated/table_filters.js:298
msgid "Include stock in sublocations"
msgstr ""
-#: templates/js/translated/table_filters.js:297
+#: templates/js/translated/table_filters.js:303
msgid "Show stock items which are depleted"
msgstr ""
-#: templates/js/translated/table_filters.js:302
+#: templates/js/translated/table_filters.js:308
msgid "Show items which are in stock"
msgstr ""
-#: templates/js/translated/table_filters.js:306
+#: templates/js/translated/table_filters.js:312
msgid "In Production"
msgstr ""
-#: templates/js/translated/table_filters.js:307
+#: templates/js/translated/table_filters.js:313
msgid "Show items which are in production"
msgstr ""
-#: templates/js/translated/table_filters.js:311
+#: templates/js/translated/table_filters.js:317
msgid "Include Variants"
msgstr ""
-#: templates/js/translated/table_filters.js:312
+#: templates/js/translated/table_filters.js:318
msgid "Include stock items for variant parts"
msgstr ""
-#: templates/js/translated/table_filters.js:316
+#: templates/js/translated/table_filters.js:322
msgid "Installed"
msgstr ""
-#: templates/js/translated/table_filters.js:317
+#: templates/js/translated/table_filters.js:323
msgid "Show stock items which are installed in another item"
msgstr ""
-#: templates/js/translated/table_filters.js:322
+#: templates/js/translated/table_filters.js:328
msgid "Show items which have been assigned to a customer"
msgstr ""
-#: templates/js/translated/table_filters.js:342
-#: templates/js/translated/table_filters.js:343
+#: templates/js/translated/table_filters.js:348
+#: templates/js/translated/table_filters.js:349
msgid "Stock status"
msgstr ""
-#: templates/js/translated/table_filters.js:346
+#: templates/js/translated/table_filters.js:352
msgid "Has batch code"
msgstr ""
-#: templates/js/translated/table_filters.js:354
-msgid "Tracked"
-msgstr ""
-
-#: templates/js/translated/table_filters.js:355
+#: templates/js/translated/table_filters.js:361
msgid "Stock item is tracked by either batch code or serial number"
msgstr ""
-#: templates/js/translated/table_filters.js:360
+#: templates/js/translated/table_filters.js:366
msgid "Has purchase price"
msgstr ""
-#: templates/js/translated/table_filters.js:361
+#: templates/js/translated/table_filters.js:367
msgid "Show stock items which have a purchase price set"
msgstr ""
-#: templates/js/translated/table_filters.js:365
+#: templates/js/translated/table_filters.js:371
msgid "Expiry Date before"
msgstr ""
-#: templates/js/translated/table_filters.js:369
+#: templates/js/translated/table_filters.js:375
msgid "Expiry Date after"
msgstr ""
-#: templates/js/translated/table_filters.js:382
+#: templates/js/translated/table_filters.js:388
msgid "Show stock items which have expired"
msgstr ""
-#: templates/js/translated/table_filters.js:388
+#: templates/js/translated/table_filters.js:394
msgid "Show stock which is close to expiring"
msgstr ""
-#: templates/js/translated/table_filters.js:402
+#: templates/js/translated/table_filters.js:408
msgid "Test Passed"
msgstr ""
-#: templates/js/translated/table_filters.js:406
+#: templates/js/translated/table_filters.js:412
msgid "Include Installed Items"
msgstr ""
-#: templates/js/translated/table_filters.js:445
+#: templates/js/translated/table_filters.js:451
msgid "Build status"
msgstr ""
-#: templates/js/translated/table_filters.js:625
+#: templates/js/translated/table_filters.js:647
msgid "Include parts in subcategories"
msgstr ""
-#: templates/js/translated/table_filters.js:630
+#: templates/js/translated/table_filters.js:652
msgid "Show active parts"
msgstr ""
-#: templates/js/translated/table_filters.js:638
+#: templates/js/translated/table_filters.js:660
msgid "Available stock"
msgstr ""
-#: templates/js/translated/table_filters.js:646
-#: templates/js/translated/table_filters.js:742
+#: templates/js/translated/table_filters.js:668
+#: templates/js/translated/table_filters.js:764
msgid "Has Units"
msgstr ""
-#: templates/js/translated/table_filters.js:647
+#: templates/js/translated/table_filters.js:669
msgid "Part has defined units"
msgstr ""
-#: templates/js/translated/table_filters.js:651
+#: templates/js/translated/table_filters.js:673
msgid "Has IPN"
msgstr ""
-#: templates/js/translated/table_filters.js:652
+#: templates/js/translated/table_filters.js:674
msgid "Part has internal part number"
msgstr ""
-#: templates/js/translated/table_filters.js:656
+#: templates/js/translated/table_filters.js:678
msgid "In stock"
msgstr ""
-#: templates/js/translated/table_filters.js:664
+#: templates/js/translated/table_filters.js:686
msgid "Purchasable"
msgstr ""
-#: templates/js/translated/table_filters.js:676
+#: templates/js/translated/table_filters.js:698
msgid "Has stocktake entries"
msgstr ""
-#: templates/js/translated/table_filters.js:738
+#: templates/js/translated/table_filters.js:760
msgid "Has Choices"
msgstr ""
@@ -12390,51 +12551,51 @@ msgstr ""
msgid "Select File Format"
msgstr ""
-#: templates/js/translated/tables.js:561
+#: templates/js/translated/tables.js:537
msgid "Loading data"
msgstr ""
-#: templates/js/translated/tables.js:564
+#: templates/js/translated/tables.js:540
msgid "rows per page"
msgstr ""
-#: templates/js/translated/tables.js:569
+#: templates/js/translated/tables.js:545
msgid "Showing all rows"
msgstr ""
-#: templates/js/translated/tables.js:571
+#: templates/js/translated/tables.js:547
msgid "Showing"
msgstr ""
-#: templates/js/translated/tables.js:571
+#: templates/js/translated/tables.js:547
msgid "to"
msgstr ""
-#: templates/js/translated/tables.js:571
+#: templates/js/translated/tables.js:547
msgid "of"
msgstr ""
-#: templates/js/translated/tables.js:571
+#: templates/js/translated/tables.js:547
msgid "rows"
msgstr ""
-#: templates/js/translated/tables.js:578
+#: templates/js/translated/tables.js:554
msgid "No matching results"
msgstr ""
-#: templates/js/translated/tables.js:581
+#: templates/js/translated/tables.js:557
msgid "Hide/Show pagination"
msgstr ""
-#: templates/js/translated/tables.js:587
+#: templates/js/translated/tables.js:563
msgid "Toggle"
msgstr ""
-#: templates/js/translated/tables.js:590
+#: templates/js/translated/tables.js:566
msgid "Columns"
msgstr ""
-#: templates/js/translated/tables.js:593
+#: templates/js/translated/tables.js:569
msgid "All"
msgstr ""
@@ -12616,50 +12777,6 @@ msgstr ""
msgid "Email settings not configured"
msgstr ""
-#: templates/stock_table.html:17
-msgid "Barcode Actions"
-msgstr ""
-
-#: templates/stock_table.html:28
-msgid "Stock Options"
-msgstr ""
-
-#: templates/stock_table.html:33
-msgid "Add to selected stock items"
-msgstr ""
-
-#: templates/stock_table.html:34
-msgid "Remove from selected stock items"
-msgstr ""
-
-#: templates/stock_table.html:35
-msgid "Stocktake selected stock items"
-msgstr ""
-
-#: templates/stock_table.html:36
-msgid "Move selected stock items"
-msgstr ""
-
-#: templates/stock_table.html:37
-msgid "Merge selected stock items"
-msgstr ""
-
-#: templates/stock_table.html:37
-msgid "Merge stock"
-msgstr ""
-
-#: templates/stock_table.html:38
-msgid "Order selected items"
-msgstr ""
-
-#: templates/stock_table.html:42
-msgid "Delete selected items"
-msgstr ""
-
-#: templates/stock_table.html:42
-msgid "Delete stock"
-msgstr ""
-
#: templates/yesnolabel.html:4
msgid "Yes"
msgstr ""
@@ -12692,35 +12809,35 @@ msgstr ""
msgid "Important dates"
msgstr ""
-#: users/models.py:230
+#: users/models.py:236
msgid "Permission set"
msgstr ""
-#: users/models.py:238
+#: users/models.py:244
msgid "Group"
msgstr ""
-#: users/models.py:241
+#: users/models.py:247
msgid "View"
msgstr ""
-#: users/models.py:241
+#: users/models.py:247
msgid "Permission to view items"
msgstr ""
-#: users/models.py:243
+#: users/models.py:249
msgid "Permission to add items"
msgstr ""
-#: users/models.py:245
+#: users/models.py:251
msgid "Change"
msgstr ""
-#: users/models.py:245
+#: users/models.py:251
msgid "Permissions to edit items"
msgstr ""
-#: users/models.py:247
+#: users/models.py:253
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 e8730fffa6..a5e76d9f48 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: 2023-06-09 00:32+0000\n"
-"PO-Revision-Date: 2023-06-09 10:27\n"
+"POT-Creation-Date: 2023-06-20 07:01+0000\n"
+"PO-Revision-Date: 2023-06-20 07:06\n"
"Last-Translator: \n"
"Language-Team: Polish\n"
"Language: pl_PL\n"
@@ -49,26 +49,26 @@ msgstr "Szczegóły błędu można znaleźć w panelu administracyjnym"
msgid "Enter date"
msgstr "Wprowadź dane"
-#: InvenTree/fields.py:206 InvenTree/models.py:766 build/serializers.py:427
-#: build/serializers.py:506 build/templates/build/sidebar.html:23
-#: company/models.py:597 company/templates/company/sidebar.html:35
-#: order/models.py:1089 order/templates/order/po_sidebar.html:11
+#: InvenTree/fields.py:206 InvenTree/models.py:766 build/serializers.py:435
+#: build/serializers.py:514 build/templates/build/sidebar.html:21
+#: company/models.py:746 company/templates/company/sidebar.html:37
+#: order/models.py:1102 order/templates/order/po_sidebar.html:11
#: order/templates/order/return_order_sidebar.html:9
#: order/templates/order/so_sidebar.html:17 part/admin.py:41
-#: part/models.py:3005 part/templates/part/part_sidebar.html:63
+#: part/models.py:3039 part/templates/part/part_sidebar.html:63
#: report/templates/report/inventree_build_order_base.html:172
#: stock/admin.py:121 stock/models.py:2160 stock/models.py:2268
-#: stock/serializers.py:342 stock/serializers.py:475 stock/serializers.py:556
-#: stock/serializers.py:839 stock/serializers.py:938 stock/serializers.py:1070
-#: stock/templates/stock/stock_sidebar.html:25
-#: templates/js/translated/barcode.js:143 templates/js/translated/bom.js:1224
-#: templates/js/translated/company.js:1294 templates/js/translated/order.js:347
-#: templates/js/translated/part.js:1054
-#: templates/js/translated/purchase_order.js:2168
-#: templates/js/translated/return_order.js:760
-#: templates/js/translated/sales_order.js:1055
-#: templates/js/translated/sales_order.js:1959
-#: templates/js/translated/stock.js:1460 templates/js/translated/stock.js:2164
+#: stock/serializers.py:408 stock/serializers.py:542 stock/serializers.py:623
+#: stock/serializers.py:681 stock/serializers.py:956 stock/serializers.py:1055
+#: stock/serializers.py:1187 stock/templates/stock/stock_sidebar.html:25
+#: templates/js/translated/barcode.js:143 templates/js/translated/bom.js:1244
+#: templates/js/translated/company.js:1715 templates/js/translated/order.js:347
+#: templates/js/translated/part.js:1053
+#: templates/js/translated/purchase_order.js:2178
+#: templates/js/translated/return_order.js:772
+#: templates/js/translated/sales_order.js:1067
+#: templates/js/translated/sales_order.js:1971
+#: templates/js/translated/stock.js:1459 templates/js/translated/stock.js:2321
msgid "Notes"
msgstr "Uwagi"
@@ -81,47 +81,51 @@ msgstr "Wartość '{name}' nie pojawia się w formacie wzoru"
msgid "Provided value does not match required pattern: "
msgstr "Podana wartość nie pasuje do wymaganego wzoru: "
-#: InvenTree/forms.py:145
+#: InvenTree/forms.py:147
msgid "Enter password"
msgstr "Wprowadź hasło"
-#: InvenTree/forms.py:146
+#: InvenTree/forms.py:148
msgid "Enter new password"
msgstr "Wprowadź nowe hasło"
-#: InvenTree/forms.py:155
+#: InvenTree/forms.py:157
msgid "Confirm password"
msgstr "Potwierdź hasło"
-#: InvenTree/forms.py:156
+#: InvenTree/forms.py:158
msgid "Confirm new password"
msgstr "Potwierdź nowe hasło"
-#: InvenTree/forms.py:160
+#: InvenTree/forms.py:162
msgid "Old password"
msgstr "Stare hasło"
-#: InvenTree/forms.py:179
+#: InvenTree/forms.py:181
msgid "Email (again)"
msgstr "Adres email (ponownie)"
-#: InvenTree/forms.py:183
+#: InvenTree/forms.py:185
msgid "Email address confirmation"
msgstr "Potwierdzenie adresu email"
-#: InvenTree/forms.py:204
+#: InvenTree/forms.py:206
msgid "You must type the same email each time."
msgstr "Należy ponownie wpisać ten sam adres e-mail."
-#: InvenTree/forms.py:230 InvenTree/forms.py:236
+#: InvenTree/forms.py:237 InvenTree/forms.py:243
msgid "The provided primary email address is not valid."
msgstr "Podany podstawowy adres e-mail jest nieprawidłowy."
-#: InvenTree/forms.py:242
+#: InvenTree/forms.py:249
msgid "The provided email domain is not approved."
msgstr "Podany e-mail domeny nie został zatwierdzony."
-#: InvenTree/helpers.py:462 order/models.py:442 order/models.py:611
+#: InvenTree/forms.py:345
+msgid "Registration is disabled."
+msgstr ""
+
+#: InvenTree/helpers.py:462 order/models.py:455 order/models.py:624
msgid "Invalid quantity provided"
msgstr "Podano nieprawidłową ilość"
@@ -239,7 +243,7 @@ msgstr "Brak zewnętrznego odnośnika"
#: InvenTree/models.py:486 stock/models.py:2262
#: templates/js/translated/attachment.js:119
-#: templates/js/translated/attachment.js:306
+#: templates/js/translated/attachment.js:316
msgid "Attachment"
msgstr "Załącznik"
@@ -247,29 +251,30 @@ msgstr "Załącznik"
msgid "Select file to attach"
msgstr "Wybierz plik do załączenia"
-#: InvenTree/models.py:493 common/models.py:2695 company/models.py:132
-#: company/models.py:306 company/models.py:584 order/models.py:236
-#: order/models.py:1093 order/models.py:1453 part/admin.py:39
-#: part/models.py:901 part/templates/part/part_scheduling.html:11
+#: InvenTree/models.py:493 common/models.py:2681 company/models.py:128
+#: company/models.py:381 company/models.py:455 company/models.py:733
+#: order/models.py:240 order/models.py:1106 order/models.py:1466
+#: part/admin.py:39 part/models.py:902
+#: part/templates/part/part_scheduling.html:11
#: report/templates/report/inventree_build_order_base.html:164
-#: stock/admin.py:120 templates/js/translated/company.js:977
-#: templates/js/translated/company.js:1283 templates/js/translated/order.js:351
-#: templates/js/translated/part.js:2316
-#: templates/js/translated/purchase_order.js:2008
-#: templates/js/translated/purchase_order.js:2172
-#: templates/js/translated/return_order.js:764
-#: templates/js/translated/sales_order.js:1044
-#: templates/js/translated/sales_order.js:1964
+#: stock/admin.py:120 templates/js/translated/company.js:1350
+#: templates/js/translated/company.js:1704 templates/js/translated/order.js:351
+#: templates/js/translated/part.js:2392
+#: templates/js/translated/purchase_order.js:2018
+#: templates/js/translated/purchase_order.js:2182
+#: templates/js/translated/return_order.js:776
+#: templates/js/translated/sales_order.js:1056
+#: templates/js/translated/sales_order.js:1976
msgid "Link"
msgstr "Łącze"
-#: InvenTree/models.py:494 build/models.py:291 part/models.py:902
+#: InvenTree/models.py:494 build/models.py:295 part/models.py:903
#: stock/models.py:735
msgid "Link to external URL"
msgstr "Link do zewnętrznego adresu URL"
#: InvenTree/models.py:497 templates/js/translated/attachment.js:120
-#: templates/js/translated/attachment.js:321
+#: templates/js/translated/attachment.js:331
msgid "Comment"
msgstr "Komentarz"
@@ -277,13 +282,13 @@ msgstr "Komentarz"
msgid "File comment"
msgstr "Komentarz pliku"
-#: InvenTree/models.py:503 InvenTree/models.py:504 common/models.py:2154
-#: common/models.py:2155 common/models.py:2368 common/models.py:2369
-#: common/models.py:2625 common/models.py:2626 part/models.py:3013
-#: part/models.py:3101 part/models.py:3180 part/models.py:3200
-#: plugin/models.py:217 plugin/models.py:218
+#: InvenTree/models.py:503 InvenTree/models.py:504 common/models.py:2140
+#: common/models.py:2141 common/models.py:2354 common/models.py:2355
+#: common/models.py:2611 common/models.py:2612 part/models.py:3047
+#: part/models.py:3135 part/models.py:3214 part/models.py:3234
+#: plugin/models.py:218 plugin/models.py:219
#: report/templates/report/inventree_test_report_base.html:105
-#: templates/js/translated/stock.js:2773
+#: templates/js/translated/stock.js:2904
msgid "User"
msgstr "Użytkownik"
@@ -324,53 +329,54 @@ msgstr ""
msgid "Invalid choice"
msgstr "Błędny wybór"
-#: InvenTree/models.py:648 InvenTree/models.py:649 common/models.py:2354
-#: company/models.py:390 label/models.py:103 part/models.py:847
-#: part/models.py:3400 plugin/models.py:41 report/models.py:160
+#: InvenTree/models.py:648 InvenTree/models.py:649 common/models.py:2340
+#: company/models.py:539 label/models.py:111 part/models.py:848
+#: part/models.py:3434 plugin/models.py:42 report/models.py:160
#: templates/InvenTree/settings/mixins/urls.html:13
#: templates/InvenTree/settings/notifications.html:17
-#: templates/InvenTree/settings/plugin.html:80
+#: templates/InvenTree/settings/plugin.html:74
#: templates/InvenTree/settings/plugin_settings.html:22
-#: templates/js/translated/company.js:658
-#: templates/js/translated/company.js:706
-#: templates/js/translated/company.js:871
-#: templates/js/translated/company.js:1071 templates/js/translated/part.js:1160
-#: templates/js/translated/part.js:1447 templates/js/translated/part.js:1583
-#: templates/js/translated/part.js:2699 templates/js/translated/stock.js:2464
+#: templates/js/translated/company.js:665
+#: templates/js/translated/company.js:713
+#: templates/js/translated/company.js:940
+#: templates/js/translated/company.js:1196
+#: templates/js/translated/company.js:1444 templates/js/translated/part.js:1159
+#: templates/js/translated/part.js:1446 templates/js/translated/part.js:1582
+#: templates/js/translated/part.js:2684 templates/js/translated/stock.js:2595
msgid "Name"
msgstr "Nazwa"
-#: InvenTree/models.py:655 build/models.py:164
+#: InvenTree/models.py:655 build/models.py:168
#: build/templates/build/detail.html:24 common/models.py:111
-#: company/models.py:312 company/models.py:590
+#: company/models.py:461 company/models.py:739
#: company/templates/company/company_base.html:72
#: company/templates/company/manufacturer_part.html:75
-#: company/templates/company/supplier_part.html:108 label/models.py:110
-#: order/models.py:232 order/models.py:1117 part/admin.py:194 part/admin.py:276
-#: part/models.py:869 part/models.py:3416 part/templates/part/category.html:81
+#: company/templates/company/supplier_part.html:108 label/models.py:118
+#: order/models.py:232 order/models.py:1130 part/admin.py:194 part/admin.py:276
+#: part/models.py:870 part/models.py:3450 part/templates/part/category.html:81
#: part/templates/part/part_base.html:172
#: part/templates/part/part_scheduling.html:12 report/models.py:173
-#: report/models.py:587 report/models.py:631
+#: report/models.py:589 report/models.py:633
#: report/templates/report/inventree_build_order_base.html:117
#: stock/admin.py:41 stock/templates/stock/location.html:123
#: templates/InvenTree/settings/notifications.html:19
#: templates/InvenTree/settings/plugin_settings.html:27
#: templates/InvenTree/settings/settings_staff_js.html:75
-#: templates/js/translated/bom.js:632 templates/js/translated/bom.js:933
-#: templates/js/translated/build.js:2857 templates/js/translated/company.js:510
-#: templates/js/translated/company.js:988
-#: templates/js/translated/company.js:1251 templates/js/translated/order.js:298
-#: templates/js/translated/part.js:1212 templates/js/translated/part.js:1456
-#: templates/js/translated/part.js:1594 templates/js/translated/part.js:1933
-#: templates/js/translated/part.js:2247 templates/js/translated/part.js:2735
-#: templates/js/translated/part.js:2826
-#: templates/js/translated/purchase_order.js:1666
-#: templates/js/translated/purchase_order.js:1812
-#: templates/js/translated/purchase_order.js:1990
-#: templates/js/translated/return_order.js:302
-#: templates/js/translated/sales_order.js:790
-#: templates/js/translated/stock.js:1439 templates/js/translated/stock.js:1817
-#: templates/js/translated/stock.js:2496 templates/js/translated/stock.js:2568
+#: templates/js/translated/bom.js:633 templates/js/translated/bom.js:951
+#: templates/js/translated/build.js:2062 templates/js/translated/company.js:517
+#: templates/js/translated/company.js:1361
+#: templates/js/translated/company.js:1672 templates/js/translated/index.js:114
+#: templates/js/translated/order.js:298 templates/js/translated/part.js:1211
+#: templates/js/translated/part.js:1455 templates/js/translated/part.js:1593
+#: templates/js/translated/part.js:1932 templates/js/translated/part.js:2323
+#: templates/js/translated/part.js:2720 templates/js/translated/part.js:2811
+#: templates/js/translated/purchase_order.js:1681
+#: templates/js/translated/purchase_order.js:1827
+#: templates/js/translated/purchase_order.js:2000
+#: templates/js/translated/return_order.js:314
+#: templates/js/translated/sales_order.js:802
+#: templates/js/translated/stock.js:1438 templates/js/translated/stock.js:1974
+#: templates/js/translated/stock.js:2627 templates/js/translated/stock.js:2699
msgid "Description"
msgstr "Opis"
@@ -383,7 +389,7 @@ msgid "parent"
msgstr "nadrzędny"
#: InvenTree/models.py:671 InvenTree/models.py:672
-#: templates/js/translated/part.js:2744 templates/js/translated/stock.js:2505
+#: templates/js/translated/part.js:2729 templates/js/translated/stock.js:2636
msgid "Path"
msgstr "Ścieżka"
@@ -419,12 +425,12 @@ msgstr "Błąd serwera"
msgid "An error has been logged by the server."
msgstr "Błąd został zapisany w logach serwera."
-#: InvenTree/serializers.py:60 part/models.py:3897
+#: InvenTree/serializers.py:60 part/models.py:3941
msgid "Must be a valid number"
msgstr "Numer musi być prawidłowy"
-#: InvenTree/serializers.py:90 company/models.py:154
-#: company/templates/company/company_base.html:107 part/models.py:2852
+#: InvenTree/serializers.py:90 company/models.py:150
+#: company/templates/company/company_base.html:107 part/models.py:2886
#: templates/InvenTree/settings/settings_staff_js.html:44
#: templates/currency_data.html:5
msgid "Currency"
@@ -497,130 +503,130 @@ msgstr "Adres URL zdalnego pliku obrazu"
msgid "Downloading images from remote URL is not enabled"
msgstr "Pobieranie obrazów ze zdalnego URL nie jest włączone"
-#: InvenTree/settings.py:714
+#: InvenTree/settings.py:741
msgid "Czech"
msgstr "Czeski"
-#: InvenTree/settings.py:715
+#: InvenTree/settings.py:742
msgid "Danish"
msgstr "Duński"
-#: InvenTree/settings.py:716
+#: InvenTree/settings.py:743
msgid "German"
msgstr "Niemiecki"
-#: InvenTree/settings.py:717
+#: InvenTree/settings.py:744
msgid "Greek"
msgstr "Grecki"
-#: InvenTree/settings.py:718
+#: InvenTree/settings.py:745
msgid "English"
msgstr "Angielski"
-#: InvenTree/settings.py:719
+#: InvenTree/settings.py:746
msgid "Spanish"
msgstr "Hiszpański"
-#: InvenTree/settings.py:720
+#: InvenTree/settings.py:747
msgid "Spanish (Mexican)"
msgstr "Hiszpański (Meksyk)"
-#: InvenTree/settings.py:721
+#: InvenTree/settings.py:748
msgid "Farsi / Persian"
msgstr "Perski"
-#: InvenTree/settings.py:722
+#: InvenTree/settings.py:749
msgid "Finnish"
msgstr ""
-#: InvenTree/settings.py:723
+#: InvenTree/settings.py:750
msgid "French"
msgstr "Francuski"
-#: InvenTree/settings.py:724
+#: InvenTree/settings.py:751
msgid "Hebrew"
msgstr "Hebrajski"
-#: InvenTree/settings.py:725
+#: InvenTree/settings.py:752
msgid "Hungarian"
msgstr "Węgierski"
-#: InvenTree/settings.py:726
+#: InvenTree/settings.py:753
msgid "Italian"
msgstr "Włoski"
-#: InvenTree/settings.py:727
+#: InvenTree/settings.py:754
msgid "Japanese"
msgstr "Japoński"
-#: InvenTree/settings.py:728
+#: InvenTree/settings.py:755
msgid "Korean"
msgstr "Koreański"
-#: InvenTree/settings.py:729
+#: InvenTree/settings.py:756
msgid "Dutch"
msgstr "Holenderski"
-#: InvenTree/settings.py:730
+#: InvenTree/settings.py:757
msgid "Norwegian"
msgstr "Norweski"
-#: InvenTree/settings.py:731
+#: InvenTree/settings.py:758
msgid "Polish"
msgstr "Polski"
-#: InvenTree/settings.py:732
+#: InvenTree/settings.py:759
msgid "Portuguese"
msgstr "Portugalski"
-#: InvenTree/settings.py:733
+#: InvenTree/settings.py:760
msgid "Portuguese (Brazilian)"
msgstr "Portugalski (Brazylijski)"
-#: InvenTree/settings.py:734
+#: InvenTree/settings.py:761
msgid "Russian"
msgstr "Rosyjski"
-#: InvenTree/settings.py:735
+#: InvenTree/settings.py:762
msgid "Slovenian"
msgstr "Słoweński"
-#: InvenTree/settings.py:736
+#: InvenTree/settings.py:763
msgid "Swedish"
msgstr "Szwedzki"
-#: InvenTree/settings.py:737
+#: InvenTree/settings.py:764
msgid "Thai"
msgstr "Tajski"
-#: InvenTree/settings.py:738
+#: InvenTree/settings.py:765
msgid "Turkish"
msgstr "Turecki"
-#: InvenTree/settings.py:739
+#: InvenTree/settings.py:766
msgid "Vietnamese"
msgstr "Wietnamski"
-#: InvenTree/settings.py:740
+#: InvenTree/settings.py:767
msgid "Chinese"
msgstr "Chiński"
-#: InvenTree/status.py:61 part/serializers.py:878
+#: InvenTree/status.py:68 part/serializers.py:940
msgid "Background worker check failed"
msgstr "Sprawdzenie robotnika w tle nie powiodło się"
-#: InvenTree/status.py:65
+#: InvenTree/status.py:72
msgid "Email backend not configured"
msgstr "Nie skonfigurowano backendu e-mail"
-#: InvenTree/status.py:68
+#: InvenTree/status.py:75
msgid "InvenTree system health checks failed"
msgstr "Sprawdzanie poziomu zdrowia InvenTree nie powiodło się"
#: InvenTree/status_codes.py:12 InvenTree/status_codes.py:40
#: InvenTree/status_codes.py:148 InvenTree/status_codes.py:167
#: InvenTree/status_codes.py:188 generic/states/tests.py:16
-#: templates/js/translated/table_filters.js:511
+#: templates/js/translated/table_filters.js:533
msgid "Pending"
msgstr "W toku"
@@ -630,7 +636,7 @@ msgstr "Umieszczony"
#: InvenTree/status_codes.py:14 InvenTree/status_codes.py:151
#: InvenTree/status_codes.py:172 generic/states/tests.py:18
-#: order/templates/order/order_base.html:162
+#: order/templates/order/order_base.html:158
#: order/templates/order/sales_order_base.html:162
msgid "Complete"
msgstr "Zakończono"
@@ -654,10 +660,10 @@ msgstr "Zwrócone"
msgid "In Progress"
msgstr ""
-#: InvenTree/status_codes.py:42 order/models.py:1332
-#: templates/js/translated/sales_order.js:1509
-#: templates/js/translated/sales_order.js:1630
-#: templates/js/translated/sales_order.js:1934
+#: InvenTree/status_codes.py:42 order/models.py:1345
+#: templates/js/translated/sales_order.js:1521
+#: templates/js/translated/sales_order.js:1642
+#: templates/js/translated/sales_order.js:1946
msgid "Shipped"
msgstr "Wysłane"
@@ -689,7 +695,7 @@ msgstr "Poddany kwarantannie"
msgid "Legacy stock tracking entry"
msgstr "Starsze śledzenie wpisów stanu magazynowego"
-#: InvenTree/status_codes.py:93 templates/js/translated/stock.js:511
+#: InvenTree/status_codes.py:93 templates/js/translated/stock.js:510
msgid "Stock item created"
msgstr "Utworzono element magazynowy"
@@ -745,7 +751,7 @@ msgstr "Podziel z pozycji nadrzędnej"
msgid "Split child item"
msgstr "Podziel element podrzędny"
-#: InvenTree/status_codes.py:120 templates/js/translated/stock.js:2243
+#: InvenTree/status_codes.py:120 templates/js/translated/stock.js:1769
msgid "Merged stock items"
msgstr "Scalone przedmioty magazynowe"
@@ -765,7 +771,7 @@ msgstr "Dane wyjściowe kolejności kompilacji ukończone"
msgid "Build order output rejected"
msgstr ""
-#: InvenTree/status_codes.py:129 templates/js/translated/stock.js:1676
+#: InvenTree/status_codes.py:129 templates/js/translated/stock.js:1675
msgid "Consumed by build order"
msgstr "Zużyte przez kolejność kompilacji"
@@ -781,7 +787,7 @@ msgstr ""
msgid "Returned against Return Order"
msgstr ""
-#: InvenTree/status_codes.py:141 templates/js/translated/table_filters.js:321
+#: InvenTree/status_codes.py:141 templates/js/translated/table_filters.js:327
msgid "Sent to customer"
msgstr "Wyślij do klienta"
@@ -849,83 +855,111 @@ msgstr "Hasła muszą być zgodne"
msgid "Wrong password provided"
msgstr "Podano nieprawidłowe hasło"
-#: InvenTree/views.py:651 templates/navbar.html:157
+#: InvenTree/views.py:653 templates/navbar.html:157
msgid "System Information"
msgstr "Informacja systemowa"
-#: InvenTree/views.py:658 templates/navbar.html:168
+#: InvenTree/views.py:660 templates/navbar.html:168
msgid "About InvenTree"
msgstr "O InvenTree"
-#: build/api.py:222
+#: build/api.py:242
msgid "Build must be cancelled before it can be deleted"
msgstr "Kompilacja musi zostać anulowana, zanim będzie mogła zostać usunięta"
-#: build/models.py:69 build/templates/build/build_base.html:9
+#: build/api.py:286 part/models.py:3833 templates/js/translated/bom.js:985
+#: templates/js/translated/bom.js:1025 templates/js/translated/build.js:2449
+#: templates/js/translated/table_filters.js:166
+#: templates/js/translated/table_filters.js:518
+msgid "Consumable"
+msgstr ""
+
+#: build/api.py:287 part/models.py:3827 part/templates/part/upload_bom.html:58
+#: templates/js/translated/bom.js:989 templates/js/translated/bom.js:1016
+#: templates/js/translated/build.js:2458
+#: templates/js/translated/table_filters.js:162
+#: templates/js/translated/table_filters.js:191
+#: templates/js/translated/table_filters.js:522
+msgid "Optional"
+msgstr "Opcjonalne"
+
+#: build/api.py:288 templates/js/translated/table_filters.js:360
+#: templates/js/translated/table_filters.js:514
+msgid "Tracked"
+msgstr ""
+
+#: build/api.py:290 part/admin.py:64 templates/js/translated/build.js:1670
+#: templates/js/translated/build.js:2549
+#: templates/js/translated/sales_order.js:1918
+#: templates/js/translated/table_filters.js:506
+msgid "Allocated"
+msgstr "Przydzielono"
+
+#: build/models.py:73 build/templates/build/build_base.html:9
#: build/templates/build/build_base.html:27
#: report/templates/report/inventree_build_order_base.html:105
#: templates/email/build_order_completed.html:16
#: templates/email/overdue_build_order.html:15
-#: templates/js/translated/build.js:945 templates/js/translated/stock.js:2629
+#: templates/js/translated/build.js:953 templates/js/translated/stock.js:2760
msgid "Build Order"
msgstr "Zlecenie Budowy"
-#: build/models.py:70 build/templates/build/build_base.html:13
+#: build/models.py:74 build/templates/build/build_base.html:13
#: build/templates/build/index.html:8 build/templates/build/index.html:12
-#: order/templates/order/sales_order_detail.html:119
+#: order/templates/order/sales_order_detail.html:111
#: order/templates/order/so_sidebar.html:13
-#: part/templates/part/part_sidebar.html:22 templates/InvenTree/index.html:244
+#: part/templates/part/part_sidebar.html:22 templates/InvenTree/index.html:196
#: templates/InvenTree/search.html:141
#: templates/InvenTree/settings/sidebar.html:53
-#: templates/js/translated/search.js:228 users/models.py:42
+#: templates/js/translated/search.js:186 users/models.py:42
msgid "Build Orders"
msgstr "Zlecenia budowy"
-#: build/models.py:111
+#: build/models.py:115
msgid "Invalid choice for parent build"
msgstr "Nieprawidłowy wybór kompilacji nadrzędnej"
-#: build/models.py:155
+#: build/models.py:159
msgid "Build Order Reference"
msgstr "Odwołanie do zamówienia wykonania"
-#: build/models.py:156 order/models.py:359 order/models.py:765
-#: order/models.py:1087 order/models.py:1724 part/admin.py:278
-#: part/models.py:3798 part/templates/part/upload_bom.html:54
+#: build/models.py:160 order/models.py:372 order/models.py:778
+#: order/models.py:1100 order/models.py:1737 part/admin.py:278
+#: part/models.py:3842 part/templates/part/upload_bom.html:54
#: report/templates/report/inventree_bill_of_materials_report.html:139
#: report/templates/report/inventree_po_report_base.html:28
#: report/templates/report/inventree_return_order_report_base.html:26
#: report/templates/report/inventree_so_report_base.html:28
-#: templates/js/translated/bom.js:769 templates/js/translated/bom.js:943
-#: templates/js/translated/build.js:2098 templates/js/translated/order.js:291
+#: templates/js/translated/bom.js:770 templates/js/translated/bom.js:961
+#: templates/js/translated/build.js:2441 templates/js/translated/order.js:291
#: templates/js/translated/pricing.js:386
-#: templates/js/translated/purchase_order.js:2033
-#: templates/js/translated/return_order.js:713
-#: templates/js/translated/sales_order.js:1798
+#: templates/js/translated/purchase_order.js:2043
+#: templates/js/translated/return_order.js:725
+#: templates/js/translated/sales_order.js:1810
msgid "Reference"
msgstr "Referencja"
-#: build/models.py:167
+#: build/models.py:171
msgid "Brief description of the build (optional)"
msgstr ""
-#: build/models.py:175 build/templates/build/build_base.html:183
+#: build/models.py:179 build/templates/build/build_base.html:184
#: build/templates/build/detail.html:87
msgid "Parent Build"
msgstr "Budowa nadrzędna"
-#: build/models.py:176
+#: build/models.py:180
msgid "BuildOrder to which this build is allocated"
msgstr "Zamówienie budowy, do którego budowa jest przypisana"
-#: build/models.py:181 build/templates/build/build_base.html:98
-#: build/templates/build/detail.html:29 company/models.py:775
-#: order/models.py:1195 order/models.py:1311 order/models.py:1312
-#: part/models.py:391 part/models.py:2865 part/models.py:2979
-#: part/models.py:3119 part/models.py:3138 part/models.py:3157
-#: part/models.py:3178 part/models.py:3270 part/models.py:3555
-#: part/models.py:3663 part/models.py:3763 part/models.py:4077
-#: part/serializers.py:842 part/serializers.py:1245
+#: build/models.py:185 build/templates/build/build_base.html:98
+#: build/templates/build/detail.html:29 company/models.py:924
+#: order/models.py:1208 order/models.py:1324 order/models.py:1325
+#: part/models.py:392 part/models.py:2899 part/models.py:3013
+#: part/models.py:3153 part/models.py:3172 part/models.py:3191
+#: part/models.py:3212 part/models.py:3304 part/models.py:3589
+#: part/models.py:3712 part/models.py:3807 part/models.py:4121
+#: part/serializers.py:904 part/serializers.py:1307
#: part/templates/part/part_app_base.html:8
#: part/templates/part/part_pricing.html:12
#: part/templates/part/upload_bom.html:52
@@ -935,266 +969,229 @@ msgstr "Zamówienie budowy, do którego budowa jest przypisana"
#: report/templates/report/inventree_po_report_base.html:27
#: report/templates/report/inventree_return_order_report_base.html:24
#: report/templates/report/inventree_so_report_base.html:27
-#: stock/serializers.py:156 stock/serializers.py:509
+#: stock/serializers.py:205 stock/serializers.py:576
#: templates/InvenTree/search.html:82
#: templates/email/build_order_completed.html:17
#: templates/email/build_order_required_stock.html:17
#: templates/email/low_stock_notification.html:15
#: templates/email/overdue_build_order.html:16
-#: templates/js/translated/barcode.js:529 templates/js/translated/bom.js:631
-#: templates/js/translated/bom.js:768 templates/js/translated/bom.js:887
-#: templates/js/translated/build.js:1403 templates/js/translated/build.js:1965
-#: templates/js/translated/build.js:2464 templates/js/translated/build.js:2868
-#: templates/js/translated/company.js:337
-#: templates/js/translated/company.js:822
-#: templates/js/translated/company.js:929
-#: templates/js/translated/company.js:1169 templates/js/translated/part.js:1918
-#: templates/js/translated/part.js:1990 templates/js/translated/part.js:2216
-#: templates/js/translated/pricing.js:369
-#: templates/js/translated/purchase_order.js:746
-#: templates/js/translated/purchase_order.js:1274
-#: templates/js/translated/purchase_order.js:1811
-#: templates/js/translated/purchase_order.js:1975
-#: templates/js/translated/return_order.js:527
-#: templates/js/translated/return_order.js:694
-#: templates/js/translated/sales_order.js:285
-#: templates/js/translated/sales_order.js:1185
-#: templates/js/translated/sales_order.js:1584
-#: templates/js/translated/sales_order.js:1782
-#: templates/js/translated/stock.js:643 templates/js/translated/stock.js:809
-#: templates/js/translated/stock.js:1021 templates/js/translated/stock.js:1773
-#: templates/js/translated/stock.js:2594 templates/js/translated/stock.js:2831
-#: templates/js/translated/stock.js:2968
+#: templates/js/translated/barcode.js:529 templates/js/translated/bom.js:632
+#: templates/js/translated/bom.js:769 templates/js/translated/bom.js:905
+#: templates/js/translated/build.js:1289 templates/js/translated/build.js:1669
+#: templates/js/translated/build.js:2085 templates/js/translated/build.js:2261
+#: templates/js/translated/company.js:347
+#: templates/js/translated/company.js:1147
+#: templates/js/translated/company.js:1302
+#: templates/js/translated/company.js:1590 templates/js/translated/index.js:104
+#: templates/js/translated/part.js:1917 templates/js/translated/part.js:1989
+#: templates/js/translated/part.js:2292 templates/js/translated/pricing.js:369
+#: templates/js/translated/purchase_order.js:757
+#: templates/js/translated/purchase_order.js:1289
+#: templates/js/translated/purchase_order.js:1826
+#: templates/js/translated/purchase_order.js:1985
+#: templates/js/translated/return_order.js:539
+#: templates/js/translated/return_order.js:706
+#: templates/js/translated/sales_order.js:297
+#: templates/js/translated/sales_order.js:1197
+#: templates/js/translated/sales_order.js:1596
+#: templates/js/translated/sales_order.js:1794
+#: templates/js/translated/stock.js:642 templates/js/translated/stock.js:808
+#: templates/js/translated/stock.js:1020 templates/js/translated/stock.js:1913
+#: templates/js/translated/stock.js:2725 templates/js/translated/stock.js:2958
+#: templates/js/translated/stock.js:3095
msgid "Part"
msgstr "Komponent"
-#: build/models.py:189
+#: build/models.py:193
msgid "Select part to build"
msgstr "Wybierz część do budowy"
-#: build/models.py:194
+#: build/models.py:198
msgid "Sales Order Reference"
msgstr "Odwołanie do zamówienia sprzedaży"
-#: build/models.py:198
+#: build/models.py:202
msgid "SalesOrder to which this build is allocated"
msgstr "Zamówienie sprzedaży, do którego budowa jest przypisana"
-#: build/models.py:203 build/serializers.py:942
-#: templates/js/translated/build.js:2452
-#: templates/js/translated/sales_order.js:1173
+#: build/models.py:207 build/serializers.py:946
+#: templates/js/translated/build.js:1657
+#: templates/js/translated/sales_order.js:1185
msgid "Source Location"
msgstr "Lokalizacja źródła"
-#: build/models.py:207
+#: build/models.py:211
msgid "Select location to take stock from for this build (leave blank to take from any stock location)"
msgstr "Wybierz lokalizację, z której pobrać element do budowy (pozostaw puste, aby wziąć z dowolnej lokalizacji)"
-#: build/models.py:212
+#: build/models.py:216
msgid "Destination Location"
msgstr "Lokalizacja docelowa"
-#: build/models.py:216
+#: build/models.py:220
msgid "Select location where the completed items will be stored"
msgstr "Wybierz lokalizację, w której będą przechowywane ukończone elementy"
-#: build/models.py:220
+#: build/models.py:224
msgid "Build Quantity"
msgstr "Ilość do stworzenia"
-#: build/models.py:223
+#: build/models.py:227
msgid "Number of stock items to build"
msgstr "Ilość przedmiotów do zbudowania"
-#: build/models.py:227
+#: build/models.py:231
msgid "Completed items"
msgstr "Ukończone elementy"
-#: build/models.py:229
+#: build/models.py:233
msgid "Number of stock items which have been completed"
msgstr "Ilość produktów magazynowych które zostały ukończone"
-#: build/models.py:233
+#: build/models.py:237
msgid "Build Status"
msgstr "Status budowania"
-#: build/models.py:237
+#: build/models.py:241
msgid "Build status code"
msgstr "Kod statusu budowania"
-#: build/models.py:246 build/serializers.py:269 order/serializers.py:506
-#: stock/models.py:739 templates/js/translated/purchase_order.js:1099
+#: build/models.py:250 build/serializers.py:277 order/serializers.py:512
+#: stock/models.py:739 templates/js/translated/purchase_order.js:1114
msgid "Batch Code"
msgstr "Kod partii"
-#: build/models.py:250 build/serializers.py:270
+#: build/models.py:254 build/serializers.py:278
msgid "Batch code for this build output"
msgstr "Kod partii dla wyjścia budowy"
-#: build/models.py:253 order/models.py:244 part/models.py:1038
+#: build/models.py:257 order/models.py:248 part/models.py:1039
#: part/templates/part/part_base.html:312
-#: templates/js/translated/return_order.js:327
-#: templates/js/translated/sales_order.js:815
+#: templates/js/translated/return_order.js:339
+#: templates/js/translated/sales_order.js:827
msgid "Creation Date"
msgstr "Data utworzenia"
-#: build/models.py:257
+#: build/models.py:261
msgid "Target completion date"
msgstr "Docelowy termin zakończenia"
-#: build/models.py:258
+#: build/models.py:262
msgid "Target date for build completion. Build will be overdue after this date."
msgstr "Docelowa data zakończenia kompilacji. Po tej dacie kompilacja będzie zaległa."
-#: build/models.py:261 order/models.py:409 order/models.py:1767
-#: templates/js/translated/build.js:2953
+#: build/models.py:265 order/models.py:422 order/models.py:1780
+#: templates/js/translated/build.js:2170
msgid "Completion Date"
msgstr "Data zakończenia"
-#: build/models.py:267
+#: build/models.py:271
msgid "completed by"
msgstr "zrealizowane przez"
-#: build/models.py:275 templates/js/translated/build.js:2913
+#: build/models.py:279 templates/js/translated/build.js:2130
msgid "Issued by"
msgstr "Wydany przez"
-#: build/models.py:276
+#: build/models.py:280
msgid "User who issued this build order"
msgstr "Użytkownik, który wydał to zamówienie"
-#: build/models.py:284 build/templates/build/build_base.html:204
-#: build/templates/build/detail.html:122 order/models.py:258
-#: order/templates/order/order_base.html:214
-#: order/templates/order/return_order_base.html:182
-#: order/templates/order/sales_order_base.html:222 part/models.py:1042
+#: build/models.py:288 build/templates/build/build_base.html:205
+#: build/templates/build/detail.html:122 order/models.py:262
+#: order/templates/order/order_base.html:217
+#: order/templates/order/return_order_base.html:189
+#: order/templates/order/sales_order_base.html:229 part/models.py:1043
#: part/templates/part/part_base.html:392
#: report/templates/report/inventree_build_order_base.html:158
-#: templates/js/translated/build.js:2925
-#: templates/js/translated/purchase_order.js:1723
-#: templates/js/translated/return_order.js:347
-#: templates/js/translated/table_filters.js:461
+#: templates/js/translated/build.js:2142
+#: templates/js/translated/purchase_order.js:1738
+#: templates/js/translated/return_order.js:359
+#: templates/js/translated/table_filters.js:467
msgid "Responsible"
msgstr "Odpowiedzialny"
-#: build/models.py:285
+#: build/models.py:289
msgid "User or group responsible for this build order"
msgstr ""
-#: build/models.py:290 build/templates/build/detail.html:108
+#: build/models.py:294 build/templates/build/detail.html:108
#: company/templates/company/manufacturer_part.html:107
#: company/templates/company/supplier_part.html:195
-#: order/templates/order/order_base.html:171
+#: order/templates/order/order_base.html:167
#: order/templates/order/return_order_base.html:146
#: order/templates/order/sales_order_base.html:181
#: part/templates/part/part_base.html:385 stock/models.py:733
#: stock/templates/stock/item_base.html:201
+#: templates/js/translated/company.js:1050
msgid "External Link"
msgstr "Link Zewnętrzny"
-#: build/models.py:295
+#: build/models.py:299
msgid "Build Priority"
msgstr ""
-#: build/models.py:298
+#: build/models.py:302
msgid "Priority of this build order"
msgstr ""
-#: build/models.py:536
+#: build/models.py:309 common/models.py:104 order/admin.py:17
+#: order/models.py:237 templates/InvenTree/settings/settings_staff_js.html:70
+#: templates/js/translated/build.js:2067
+#: templates/js/translated/purchase_order.js:1685
+#: templates/js/translated/return_order.js:318
+#: templates/js/translated/sales_order.js:806
+#: templates/js/translated/table_filters.js:24
+#: templates/project_code_data.html:6
+msgid "Project Code"
+msgstr ""
+
+#: build/models.py:310
+msgid "Project code for this build order"
+msgstr ""
+
+#: build/models.py:545
#, python-brace-format
msgid "Build order {build} has been completed"
msgstr "Kolejność kompilacji {build} została zakończona"
-#: build/models.py:542
+#: build/models.py:551
msgid "A build order has been completed"
msgstr "Kolejność kompilacji została zakończona"
-#: build/models.py:744 build/models.py:811
+#: build/models.py:753 build/models.py:831
msgid "No build output specified"
msgstr "Nie określono danych wyjściowych budowy"
-#: build/models.py:747
+#: build/models.py:756
msgid "Build output is already completed"
msgstr "Budowanie wyjścia jest już ukończone"
-#: build/models.py:750
+#: build/models.py:759
msgid "Build output does not match Build Order"
msgstr "Skompilowane dane wyjściowe nie pasują do kolejności kompilacji"
-#: build/models.py:815 build/serializers.py:212 build/serializers.py:251
-#: build/serializers.py:811 order/models.py:440 order/serializers.py:379
-#: order/serializers.py:501 part/serializers.py:1087 part/serializers.py:1408
-#: stock/models.py:593 stock/models.py:1387 stock/serializers.py:315
+#: build/models.py:835 build/serializers.py:220 build/serializers.py:259
+#: build/serializers.py:819 order/models.py:453 order/serializers.py:385
+#: order/serializers.py:507 part/serializers.py:1149 part/serializers.py:1470
+#: stock/models.py:593 stock/models.py:1387 stock/serializers.py:381
msgid "Quantity must be greater than zero"
msgstr "Ilość musi być większa niż zero"
-#: build/models.py:820 build/serializers.py:217
+#: build/models.py:840 build/serializers.py:225
msgid "Quantity cannot be greater than the output quantity"
msgstr ""
-#: build/models.py:1272
-msgid "Build item must specify a build output, as master part is marked as trackable"
+#: build/models.py:1260
+msgid "Build object"
msgstr ""
-#: build/models.py:1281
-#, python-brace-format
-msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})"
-msgstr ""
-
-#: build/models.py:1291 order/models.py:1601
-msgid "Stock item is over-allocated"
-msgstr ""
-
-#: build/models.py:1297 order/models.py:1604
-msgid "Allocation quantity must be greater than zero"
-msgstr "Alokowana ilość musi być większa niż zero"
-
-#: build/models.py:1303
-msgid "Quantity must be 1 for serialized stock"
-msgstr ""
-
-#: build/models.py:1360
-msgid "Selected stock item not found in BOM"
-msgstr "Nie znaleziono wybranego elementu magazynowego w BOM"
-
-#: build/models.py:1438 stock/templates/stock/item_base.html:170
-#: templates/InvenTree/search.html:139 templates/js/translated/build.js:2841
-#: templates/navbar.html:38
-msgid "Build"
-msgstr "Budowa"
-
-#: build/models.py:1439
-msgid "Build to allocate parts"
-msgstr ""
-
-#: build/models.py:1455 build/serializers.py:791 order/serializers.py:1059
-#: order/serializers.py:1080 stock/serializers.py:413 stock/serializers.py:770
-#: stock/serializers.py:896 stock/templates/stock/item_base.html:10
-#: stock/templates/stock/item_base.html:23
-#: stock/templates/stock/item_base.html:195
-#: templates/js/translated/build.js:955 templates/js/translated/build.js:960
-#: templates/js/translated/build.js:2466 templates/js/translated/build.js:3038
-#: templates/js/translated/sales_order.js:286
-#: templates/js/translated/sales_order.js:1186
-#: templates/js/translated/sales_order.js:1485
-#: templates/js/translated/sales_order.js:1490
-#: templates/js/translated/sales_order.js:1591
-#: templates/js/translated/sales_order.js:1678
-#: templates/js/translated/stock.js:644 templates/js/translated/stock.js:810
-#: templates/js/translated/stock.js:2714
-msgid "Stock Item"
-msgstr "Element magazynowy"
-
-#: build/models.py:1456
-msgid "Source stock item"
-msgstr "Lokalizacja magazynowania przedmiotu"
-
-#: build/models.py:1468 build/serializers.py:198 build/serializers.py:236
-#: build/templates/build/build_base.html:103
-#: build/templates/build/detail.html:34 common/models.py:2176
-#: order/models.py:1073 order/models.py:1645 order/serializers.py:1233
+#: build/models.py:1274 build/models.py:1556 build/serializers.py:206
+#: build/serializers.py:244 build/templates/build/build_base.html:103
+#: build/templates/build/detail.html:34 common/models.py:2162
+#: order/models.py:1086 order/models.py:1658 order/serializers.py:1239
#: order/templates/order/order_wizard/match_parts.html:30 part/admin.py:277
-#: part/forms.py:47 part/models.py:2992 part/models.py:3779
+#: part/forms.py:47 part/models.py:3026 part/models.py:3823
#: part/templates/part/part_pricing.html:16
#: part/templates/part/upload_bom.html:53
#: report/templates/report/inventree_bill_of_materials_report.html:138
@@ -1203,315 +1200,367 @@ msgstr "Lokalizacja magazynowania przedmiotu"
#: report/templates/report/inventree_so_report_base.html:29
#: report/templates/report/inventree_test_report_base.html:90
#: report/templates/report/inventree_test_report_base.html:170
-#: stock/admin.py:103 stock/serializers.py:306
+#: stock/admin.py:103 stock/serializers.py:372
#: stock/templates/stock/item_base.html:288
#: stock/templates/stock/item_base.html:296
#: stock/templates/stock/item_base.html:343
#: templates/email/build_order_completed.html:18
-#: templates/js/translated/barcode.js:531 templates/js/translated/bom.js:770
-#: templates/js/translated/bom.js:951 templates/js/translated/build.js:504
-#: templates/js/translated/build.js:716 templates/js/translated/build.js:982
-#: templates/js/translated/build.js:1425 templates/js/translated/build.js:1991
-#: templates/js/translated/build.js:2467
-#: templates/js/translated/company.js:1428
-#: templates/js/translated/model_renderers.js:207
-#: templates/js/translated/order.js:304 templates/js/translated/part.js:935
-#: templates/js/translated/part.js:1784 templates/js/translated/part.js:3263
+#: templates/js/translated/barcode.js:531 templates/js/translated/bom.js:771
+#: templates/js/translated/bom.js:969 templates/js/translated/build.js:510
+#: templates/js/translated/build.js:722 templates/js/translated/build.js:1308
+#: templates/js/translated/build.js:1672 templates/js/translated/build.js:2283
+#: templates/js/translated/company.js:1849
+#: templates/js/translated/model_renderers.js:221
+#: templates/js/translated/order.js:304 templates/js/translated/part.js:934
+#: templates/js/translated/part.js:1783 templates/js/translated/part.js:3248
#: templates/js/translated/pricing.js:381
#: templates/js/translated/pricing.js:474
#: templates/js/translated/pricing.js:522
#: templates/js/translated/pricing.js:616
-#: templates/js/translated/purchase_order.js:749
-#: templates/js/translated/purchase_order.js:1815
-#: templates/js/translated/purchase_order.js:2039
-#: templates/js/translated/sales_order.js:302
-#: templates/js/translated/sales_order.js:1187
-#: templates/js/translated/sales_order.js:1504
-#: templates/js/translated/sales_order.js:1594
-#: templates/js/translated/sales_order.js:1684
-#: templates/js/translated/sales_order.js:1804
-#: templates/js/translated/stock.js:531 templates/js/translated/stock.js:669
-#: templates/js/translated/stock.js:840 templates/js/translated/stock.js:2758
-#: templates/js/translated/stock.js:2843
+#: templates/js/translated/purchase_order.js:760
+#: templates/js/translated/purchase_order.js:1830
+#: templates/js/translated/purchase_order.js:2049
+#: templates/js/translated/sales_order.js:314
+#: templates/js/translated/sales_order.js:1199
+#: templates/js/translated/sales_order.js:1516
+#: templates/js/translated/sales_order.js:1606
+#: templates/js/translated/sales_order.js:1696
+#: templates/js/translated/sales_order.js:1816
+#: templates/js/translated/stock.js:530 templates/js/translated/stock.js:668
+#: templates/js/translated/stock.js:839 templates/js/translated/stock.js:2889
+#: templates/js/translated/stock.js:2970
msgid "Quantity"
msgstr "Ilość"
-#: build/models.py:1469
+#: build/models.py:1275
+msgid "Required quantity for build order"
+msgstr ""
+
+#: build/models.py:1357
+msgid "Build item must specify a build output, as master part is marked as trackable"
+msgstr ""
+
+#: build/models.py:1366
+#, python-brace-format
+msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})"
+msgstr ""
+
+#: build/models.py:1376 order/models.py:1614
+msgid "Stock item is over-allocated"
+msgstr ""
+
+#: build/models.py:1382 order/models.py:1617
+msgid "Allocation quantity must be greater than zero"
+msgstr "Alokowana ilość musi być większa niż zero"
+
+#: build/models.py:1388
+msgid "Quantity must be 1 for serialized stock"
+msgstr ""
+
+#: build/models.py:1449
+msgid "Selected stock item does not match BOM line"
+msgstr ""
+
+#: build/models.py:1543 build/serializers.py:799 order/serializers.py:1065
+#: order/serializers.py:1086 stock/serializers.py:479 stock/serializers.py:887
+#: stock/serializers.py:1013 stock/templates/stock/item_base.html:10
+#: stock/templates/stock/item_base.html:23
+#: stock/templates/stock/item_base.html:195
+#: templates/js/translated/build.js:1671
+#: templates/js/translated/sales_order.js:298
+#: templates/js/translated/sales_order.js:1198
+#: templates/js/translated/sales_order.js:1497
+#: templates/js/translated/sales_order.js:1502
+#: templates/js/translated/sales_order.js:1603
+#: templates/js/translated/sales_order.js:1690
+#: templates/js/translated/stock.js:643 templates/js/translated/stock.js:809
+#: templates/js/translated/stock.js:2845
+msgid "Stock Item"
+msgstr "Element magazynowy"
+
+#: build/models.py:1544
+msgid "Source stock item"
+msgstr "Lokalizacja magazynowania przedmiotu"
+
+#: build/models.py:1557
msgid "Stock quantity to allocate to build"
msgstr ""
-#: build/models.py:1477
+#: build/models.py:1565
msgid "Install into"
msgstr "Zainstaluj do"
-#: build/models.py:1478
+#: build/models.py:1566
msgid "Destination stock item"
msgstr "Docelowa lokalizacja magazynowa przedmiotu"
-#: build/serializers.py:148 build/serializers.py:820
-#: templates/js/translated/build.js:1413
+#: build/serializers.py:156 build/serializers.py:828
+#: templates/js/translated/build.js:1299
msgid "Build Output"
msgstr ""
-#: build/serializers.py:160
+#: build/serializers.py:168
msgid "Build output does not match the parent build"
msgstr ""
-#: build/serializers.py:164
+#: build/serializers.py:172
msgid "Output part does not match BuildOrder part"
msgstr ""
-#: build/serializers.py:168
+#: build/serializers.py:176
msgid "This build output has already been completed"
msgstr ""
-#: build/serializers.py:179
+#: build/serializers.py:187
msgid "This build output is not fully allocated"
msgstr ""
-#: build/serializers.py:199 build/serializers.py:237
+#: build/serializers.py:207 build/serializers.py:245
msgid "Enter quantity for build output"
msgstr ""
-#: build/serializers.py:258
+#: build/serializers.py:266
msgid "Integer quantity required for trackable parts"
msgstr ""
-#: build/serializers.py:261
+#: build/serializers.py:269
msgid "Integer quantity required, as the bill of materials contains trackable parts"
msgstr ""
-#: build/serializers.py:276 order/serializers.py:514 order/serializers.py:1237
-#: stock/serializers.py:324 templates/js/translated/purchase_order.js:1123
-#: templates/js/translated/stock.js:334 templates/js/translated/stock.js:532
+#: build/serializers.py:284 order/serializers.py:520 order/serializers.py:1243
+#: stock/serializers.py:390 templates/js/translated/purchase_order.js:1138
+#: templates/js/translated/stock.js:333 templates/js/translated/stock.js:531
msgid "Serial Numbers"
msgstr "Numer seryjny"
-#: build/serializers.py:277
+#: build/serializers.py:285
msgid "Enter serial numbers for build outputs"
msgstr ""
-#: build/serializers.py:290
+#: build/serializers.py:298
msgid "Auto Allocate Serial Numbers"
msgstr ""
-#: build/serializers.py:291
+#: build/serializers.py:299
msgid "Automatically allocate required items with matching serial numbers"
msgstr ""
-#: build/serializers.py:326 stock/api.py:670
+#: build/serializers.py:334 stock/api.py:707
msgid "The following serial numbers already exist or are invalid"
msgstr ""
-#: build/serializers.py:377 build/serializers.py:439 build/serializers.py:518
+#: build/serializers.py:385 build/serializers.py:447 build/serializers.py:526
msgid "A list of build outputs must be provided"
msgstr ""
-#: build/serializers.py:415 build/serializers.py:488 order/serializers.py:487
-#: order/serializers.py:606 order/serializers.py:1588 part/serializers.py:854
-#: stock/serializers.py:335 stock/serializers.py:470 stock/serializers.py:551
-#: stock/serializers.py:931 stock/serializers.py:1173
+#: build/serializers.py:423 build/serializers.py:496 order/serializers.py:493
+#: order/serializers.py:612 order/serializers.py:1594 part/serializers.py:916
+#: stock/serializers.py:401 stock/serializers.py:537 stock/serializers.py:618
+#: stock/serializers.py:1048 stock/serializers.py:1290
#: stock/templates/stock/item_base.html:390
#: templates/js/translated/barcode.js:530
-#: templates/js/translated/barcode.js:778 templates/js/translated/build.js:967
-#: templates/js/translated/build.js:2006
-#: templates/js/translated/purchase_order.js:1148
-#: templates/js/translated/purchase_order.js:1238
-#: templates/js/translated/sales_order.js:1497
-#: templates/js/translated/sales_order.js:1605
-#: templates/js/translated/sales_order.js:1613
-#: templates/js/translated/sales_order.js:1692
-#: templates/js/translated/stock.js:645 templates/js/translated/stock.js:811
-#: templates/js/translated/stock.js:1023 templates/js/translated/stock.js:1937
-#: templates/js/translated/stock.js:2608
+#: templates/js/translated/barcode.js:778 templates/js/translated/build.js:980
+#: templates/js/translated/build.js:2298
+#: templates/js/translated/purchase_order.js:1163
+#: templates/js/translated/purchase_order.js:1253
+#: templates/js/translated/sales_order.js:1509
+#: templates/js/translated/sales_order.js:1617
+#: templates/js/translated/sales_order.js:1625
+#: templates/js/translated/sales_order.js:1704
+#: templates/js/translated/stock.js:644 templates/js/translated/stock.js:810
+#: templates/js/translated/stock.js:1022 templates/js/translated/stock.js:2094
+#: templates/js/translated/stock.js:2739
msgid "Location"
msgstr "Lokalizacja"
-#: build/serializers.py:416
+#: build/serializers.py:424
msgid "Stock location for scrapped outputs"
msgstr ""
-#: build/serializers.py:422
+#: build/serializers.py:430
msgid "Discard Allocations"
msgstr ""
-#: build/serializers.py:423
+#: build/serializers.py:431
msgid "Discard any stock allocations for scrapped outputs"
msgstr ""
-#: build/serializers.py:428
+#: build/serializers.py:436
msgid "Reason for scrapping build output(s)"
msgstr ""
-#: build/serializers.py:489
+#: build/serializers.py:497
msgid "Location for completed build outputs"
msgstr ""
-#: build/serializers.py:495 build/templates/build/build_base.html:151
-#: build/templates/build/detail.html:62 order/models.py:791
-#: order/models.py:1750 order/serializers.py:524 stock/admin.py:106
-#: stock/templates/stock/item_base.html:423
-#: templates/js/translated/barcode.js:252 templates/js/translated/build.js:2897
-#: templates/js/translated/purchase_order.js:1278
-#: templates/js/translated/purchase_order.js:1682
-#: templates/js/translated/return_order.js:319
-#: templates/js/translated/sales_order.js:807
-#: templates/js/translated/stock.js:1912 templates/js/translated/stock.js:2732
-#: templates/js/translated/stock.js:2859
+#: build/serializers.py:503 build/templates/build/build_base.html:152
+#: build/templates/build/detail.html:62 order/models.py:804
+#: order/models.py:1763 order/serializers.py:530 stock/admin.py:106
+#: stock/serializers.py:677 stock/templates/stock/item_base.html:423
+#: templates/js/translated/barcode.js:252 templates/js/translated/build.js:2114
+#: templates/js/translated/purchase_order.js:1293
+#: templates/js/translated/purchase_order.js:1697
+#: templates/js/translated/return_order.js:331
+#: templates/js/translated/sales_order.js:819
+#: templates/js/translated/stock.js:2069 templates/js/translated/stock.js:2863
+#: templates/js/translated/stock.js:2986
msgid "Status"
msgstr "Status"
-#: build/serializers.py:501
+#: build/serializers.py:509
msgid "Accept Incomplete Allocation"
msgstr ""
-#: build/serializers.py:502
+#: build/serializers.py:510
msgid "Complete outputs if stock has not been fully allocated"
msgstr ""
-#: build/serializers.py:571
+#: build/serializers.py:579
msgid "Remove Allocated Stock"
msgstr ""
-#: build/serializers.py:572
+#: build/serializers.py:580
msgid "Subtract any stock which has already been allocated to this build"
msgstr ""
-#: build/serializers.py:578
+#: build/serializers.py:586
msgid "Remove Incomplete Outputs"
msgstr ""
-#: build/serializers.py:579
+#: build/serializers.py:587
msgid "Delete any build outputs which have not been completed"
msgstr ""
-#: build/serializers.py:606
+#: build/serializers.py:614
msgid "Not permitted"
msgstr ""
-#: build/serializers.py:607
+#: build/serializers.py:615
msgid "Accept as consumed by this build order"
msgstr ""
-#: build/serializers.py:608
+#: build/serializers.py:616
msgid "Deallocate before completing this build order"
msgstr ""
-#: build/serializers.py:631
+#: build/serializers.py:639
msgid "Overallocated Stock"
msgstr ""
-#: build/serializers.py:633
+#: build/serializers.py:641
msgid "How do you want to handle extra stock items assigned to the build order"
msgstr ""
-#: build/serializers.py:643
+#: build/serializers.py:651
msgid "Some stock items have been overallocated"
msgstr ""
-#: build/serializers.py:648
+#: build/serializers.py:656
msgid "Accept Unallocated"
msgstr ""
-#: build/serializers.py:649
+#: build/serializers.py:657
msgid "Accept that stock items have not been fully allocated to this build order"
msgstr ""
-#: build/serializers.py:659 templates/js/translated/build.js:295
+#: build/serializers.py:667 templates/js/translated/build.js:304
msgid "Required stock has not been fully allocated"
msgstr ""
-#: build/serializers.py:664 order/serializers.py:261 order/serializers.py:1127
+#: build/serializers.py:672 order/serializers.py:267 order/serializers.py:1133
msgid "Accept Incomplete"
msgstr "Akceptuj niekompletne"
-#: build/serializers.py:665
+#: build/serializers.py:673
msgid "Accept that the required number of build outputs have not been completed"
msgstr ""
-#: build/serializers.py:675 templates/js/translated/build.js:299
+#: build/serializers.py:683 templates/js/translated/build.js:308
msgid "Required build quantity has not been completed"
msgstr ""
-#: build/serializers.py:684 templates/js/translated/build.js:283
+#: build/serializers.py:692 templates/js/translated/build.js:292
msgid "Build order has incomplete outputs"
msgstr ""
-#: build/serializers.py:714 build/serializers.py:768 part/models.py:3686
-#: part/models.py:4069
-msgid "BOM Item"
-msgstr "Element BOM"
-
-#: build/serializers.py:724
-msgid "Build output"
+#: build/serializers.py:722
+msgid "Build Line"
msgstr ""
#: build/serializers.py:732
+msgid "Build output"
+msgstr ""
+
+#: build/serializers.py:740
msgid "Build output must point to the same build"
msgstr ""
-#: build/serializers.py:782
+#: build/serializers.py:776
+msgid "Build Line Item"
+msgstr ""
+
+#: build/serializers.py:790
msgid "bom_item.part must point to the same part as the build order"
msgstr ""
-#: build/serializers.py:797 stock/serializers.py:783
+#: build/serializers.py:805 stock/serializers.py:900
msgid "Item must be in stock"
msgstr "Towar musi znajdować się w magazynie"
-#: build/serializers.py:846 order/serializers.py:1117
+#: build/serializers.py:853 order/serializers.py:1123
#, python-brace-format
msgid "Available quantity ({q}) exceeded"
msgstr ""
-#: build/serializers.py:852
+#: build/serializers.py:859
msgid "Build output must be specified for allocation of tracked parts"
msgstr ""
-#: build/serializers.py:859
+#: build/serializers.py:866
msgid "Build output cannot be specified for allocation of untracked parts"
msgstr ""
-#: build/serializers.py:864
+#: build/serializers.py:871
msgid "This stock item has already been allocated to this build output"
msgstr ""
-#: build/serializers.py:887 order/serializers.py:1401
+#: build/serializers.py:894 order/serializers.py:1407
msgid "Allocation items must be provided"
msgstr ""
-#: build/serializers.py:943
+#: build/serializers.py:947
msgid "Stock location where parts are to be sourced (leave blank to take from any location)"
msgstr "Magazyn, z którego mają być pozyskane elementy (pozostaw puste, aby pobrać z dowolnej lokalizacji)"
-#: build/serializers.py:951
+#: build/serializers.py:955
msgid "Exclude Location"
msgstr "Wyklucz lokalizację"
-#: build/serializers.py:952
+#: build/serializers.py:956
msgid "Exclude stock items from this selected location"
msgstr "Wyklucz produkty magazynowe z wybranej lokalizacji"
-#: build/serializers.py:957
+#: build/serializers.py:961
msgid "Interchangeable Stock"
msgstr ""
-#: build/serializers.py:958
+#: build/serializers.py:962
msgid "Stock items in multiple locations can be used interchangeably"
msgstr "Towary magazynowe w wielu lokalizacjach mogą być stosowane zamiennie"
-#: build/serializers.py:963
+#: build/serializers.py:967
msgid "Substitute Stock"
msgstr "Zastępczy magazyn"
-#: build/serializers.py:964
+#: build/serializers.py:968
msgid "Allow allocation of substitute parts"
msgstr ""
-#: build/serializers.py:969
+#: build/serializers.py:973
msgid "Optional Items"
msgstr ""
-#: build/serializers.py:970
+#: build/serializers.py:974
msgid "Allocate optional BOM items to build order"
msgstr ""
@@ -1540,6 +1589,7 @@ msgstr ""
#: part/templates/part/part_base.html:43
#: stock/templates/stock/item_base.html:41
#: stock/templates/stock/location.html:54
+#: templates/js/translated/filters.js:336
msgid "Barcode actions"
msgstr "Akcje kodów kreskowych"
@@ -1618,69 +1668,67 @@ msgstr ""
msgid "Build Description"
msgstr ""
-#: build/templates/build/build_base.html:117
+#: build/templates/build/build_base.html:118
msgid "No build outputs have been created for this build order"
msgstr ""
-#: build/templates/build/build_base.html:124
+#: build/templates/build/build_base.html:125
msgid "Build Order is ready to mark as completed"
msgstr ""
-#: build/templates/build/build_base.html:129
+#: build/templates/build/build_base.html:130
msgid "Build Order cannot be completed as outstanding outputs remain"
msgstr ""
-#: build/templates/build/build_base.html:134
+#: build/templates/build/build_base.html:135
msgid "Required build quantity has not yet been completed"
msgstr ""
-#: build/templates/build/build_base.html:139
+#: build/templates/build/build_base.html:140
msgid "Stock has not been fully allocated to this Build Order"
msgstr ""
-#: build/templates/build/build_base.html:160
-#: build/templates/build/detail.html:138 order/models.py:240
-#: order/models.py:1099 order/templates/order/order_base.html:190
+#: build/templates/build/build_base.html:161
+#: build/templates/build/detail.html:138 order/models.py:244
+#: order/models.py:1112 order/templates/order/order_base.html:186
#: order/templates/order/return_order_base.html:165
#: order/templates/order/sales_order_base.html:193
#: report/templates/report/inventree_build_order_base.html:125
-#: templates/js/translated/build.js:2945 templates/js/translated/part.js:1802
-#: templates/js/translated/purchase_order.js:1699
-#: templates/js/translated/purchase_order.js:2115
-#: templates/js/translated/return_order.js:335
-#: templates/js/translated/return_order.js:735
-#: templates/js/translated/sales_order.js:823
-#: templates/js/translated/sales_order.js:1847
+#: templates/js/translated/build.js:2162 templates/js/translated/part.js:1801
+#: templates/js/translated/purchase_order.js:1714
+#: templates/js/translated/purchase_order.js:2125
+#: templates/js/translated/return_order.js:347
+#: templates/js/translated/return_order.js:747
+#: templates/js/translated/sales_order.js:835
+#: templates/js/translated/sales_order.js:1859
msgid "Target Date"
msgstr "Data docelowa"
-#: build/templates/build/build_base.html:165
+#: build/templates/build/build_base.html:166
#, python-format
msgid "This build was due on %(target)s"
msgstr ""
-#: build/templates/build/build_base.html:165
-#: build/templates/build/build_base.html:222
-#: order/templates/order/order_base.html:126
+#: build/templates/build/build_base.html:166
+#: build/templates/build/build_base.html:223
+#: order/templates/order/order_base.html:122
#: order/templates/order/return_order_base.html:118
#: order/templates/order/sales_order_base.html:123
-#: templates/js/translated/table_filters.js:68
-#: templates/js/translated/table_filters.js:454
-#: templates/js/translated/table_filters.js:539
-#: templates/js/translated/table_filters.js:580
+#: templates/js/translated/table_filters.js:74
+#: templates/js/translated/table_filters.js:460
+#: templates/js/translated/table_filters.js:561
+#: templates/js/translated/table_filters.js:602
msgid "Overdue"
msgstr "Zaległe"
-#: build/templates/build/build_base.html:177
-#: build/templates/build/detail.html:67 build/templates/build/detail.html:149
-#: order/templates/order/sales_order_base.html:203
-#: templates/js/translated/table_filters.js:602
-msgid "Completed"
-msgstr "Zakończone"
+#: build/templates/build/build_base.html:178
+#: build/templates/build/detail.html:67 build/templates/build/sidebar.html:13
+msgid "Completed Outputs"
+msgstr ""
-#: build/templates/build/build_base.html:190
-#: build/templates/build/detail.html:101 order/api.py:1454 order/models.py:1304
-#: order/models.py:1403 order/models.py:1551
+#: build/templates/build/build_base.html:191
+#: build/templates/build/detail.html:101 order/api.py:1454 order/models.py:1317
+#: order/models.py:1416 order/models.py:1564
#: order/templates/order/sales_order_base.html:9
#: order/templates/order/sales_order_base.html:28
#: report/templates/report/inventree_build_order_base.html:135
@@ -1688,32 +1736,32 @@ msgstr "Zakończone"
#: stock/templates/stock/item_base.html:370
#: templates/email/overdue_sales_order.html:15
#: templates/js/translated/pricing.js:915
-#: templates/js/translated/sales_order.js:757
-#: templates/js/translated/sales_order.js:980
-#: templates/js/translated/stock.js:2661
+#: templates/js/translated/sales_order.js:769
+#: templates/js/translated/sales_order.js:992
+#: templates/js/translated/stock.js:2792
msgid "Sales Order"
msgstr "Zamówienie zakupu"
-#: build/templates/build/build_base.html:197
+#: build/templates/build/build_base.html:198
#: build/templates/build/detail.html:115
#: report/templates/report/inventree_build_order_base.html:152
msgid "Issued By"
msgstr "Dodane przez"
-#: build/templates/build/build_base.html:211
-#: build/templates/build/detail.html:94 templates/js/translated/build.js:2862
+#: build/templates/build/build_base.html:212
+#: build/templates/build/detail.html:94 templates/js/translated/build.js:2079
msgid "Priority"
msgstr ""
-#: build/templates/build/build_base.html:273
+#: build/templates/build/build_base.html:274
msgid "Delete Build Order"
msgstr ""
-#: build/templates/build/build_base.html:283
+#: build/templates/build/build_base.html:284
msgid "Build Order QR Code"
msgstr ""
-#: build/templates/build/build_base.html:295
+#: build/templates/build/build_base.html:296
msgid "Link Barcode to Build Order"
msgstr ""
@@ -1729,8 +1777,8 @@ msgstr "Źródło magazynu"
msgid "Stock can be taken from any available location."
msgstr ""
-#: build/templates/build/detail.html:49 order/models.py:1222
-#: templates/js/translated/purchase_order.js:2157
+#: build/templates/build/detail.html:49 order/models.py:1235
+#: templates/js/translated/purchase_order.js:2167
msgid "Destination"
msgstr "Przeznaczenie"
@@ -1744,21 +1792,21 @@ msgstr ""
#: build/templates/build/detail.html:80 stock/admin.py:105
#: stock/templates/stock/item_base.html:163
-#: templates/js/translated/build.js:1432
-#: templates/js/translated/model_renderers.js:212
-#: templates/js/translated/purchase_order.js:1244
-#: templates/js/translated/stock.js:1093 templates/js/translated/stock.js:1926
-#: templates/js/translated/stock.js:2866
-#: templates/js/translated/table_filters.js:259
-#: templates/js/translated/table_filters.js:350
+#: templates/js/translated/build.js:1319
+#: templates/js/translated/model_renderers.js:226
+#: templates/js/translated/purchase_order.js:1259
+#: templates/js/translated/stock.js:1092 templates/js/translated/stock.js:2083
+#: templates/js/translated/stock.js:2993
+#: templates/js/translated/table_filters.js:265
+#: templates/js/translated/table_filters.js:356
msgid "Batch"
msgstr "Partia"
#: build/templates/build/detail.html:133
-#: order/templates/order/order_base.html:177
+#: order/templates/order/order_base.html:173
#: order/templates/order/return_order_base.html:152
#: order/templates/order/sales_order_base.html:187
-#: templates/js/translated/build.js:2905
+#: templates/js/translated/build.js:2122
msgid "Created"
msgstr "Utworzony"
@@ -1766,147 +1814,106 @@ msgstr "Utworzony"
msgid "No target date set"
msgstr ""
+#: build/templates/build/detail.html:149
+#: order/templates/order/sales_order_base.html:203
+#: templates/js/translated/table_filters.js:624
+msgid "Completed"
+msgstr "Zakończone"
+
#: build/templates/build/detail.html:153
msgid "Build not complete"
msgstr "Budowa niezakończona"
-#: build/templates/build/detail.html:164 build/templates/build/sidebar.html:19
+#: build/templates/build/detail.html:164 build/templates/build/sidebar.html:17
msgid "Child Build Orders"
msgstr ""
-#: build/templates/build/detail.html:179
+#: build/templates/build/detail.html:177
msgid "Allocate Stock to Build"
msgstr "Przydziel zapasy do budowy"
-#: build/templates/build/detail.html:183 templates/js/translated/build.js:2276
-msgid "Unallocate stock"
-msgstr "Cofnij przydział zapasów"
+#: build/templates/build/detail.html:181
+msgid "Deallocate stock"
+msgstr ""
+
+#: build/templates/build/detail.html:182
+msgid "Deallocate Stock"
+msgstr ""
#: build/templates/build/detail.html:184
-msgid "Unallocate Stock"
-msgstr "Cofnij przydział zapasów"
-
-#: build/templates/build/detail.html:186
msgid "Automatically allocate stock to build"
msgstr ""
-#: build/templates/build/detail.html:187
+#: build/templates/build/detail.html:185
msgid "Auto Allocate"
msgstr "Automatyczne przypisywanie"
-#: build/templates/build/detail.html:189
+#: build/templates/build/detail.html:187
msgid "Manually allocate stock to build"
msgstr ""
-#: build/templates/build/detail.html:190 build/templates/build/sidebar.html:8
+#: build/templates/build/detail.html:188 build/templates/build/sidebar.html:8
msgid "Allocate Stock"
msgstr "Przydziel zapasy"
-#: build/templates/build/detail.html:193
+#: build/templates/build/detail.html:191
msgid "Order required parts"
msgstr "Zamów wymagane komponenty"
-#: build/templates/build/detail.html:194
-#: company/templates/company/detail.html:38
-#: company/templates/company/detail.html:86
-#: part/templates/part/category.html:184
-#: templates/js/translated/purchase_order.js:789
+#: build/templates/build/detail.html:192
+#: templates/js/translated/purchase_order.js:800
msgid "Order Parts"
msgstr "Zamów komponent"
-#: build/templates/build/detail.html:206
-msgid "Untracked stock has been fully allocated for this Build Order"
-msgstr ""
-
#: build/templates/build/detail.html:210
-msgid "Untracked stock has not been fully allocated for this Build Order"
-msgstr ""
-
-#: build/templates/build/detail.html:217
-msgid "Allocate selected items"
-msgstr ""
-
-#: build/templates/build/detail.html:227
-msgid "This Build Order does not have any associated untracked BOM items"
-msgstr ""
-
-#: build/templates/build/detail.html:236
msgid "Incomplete Build Outputs"
msgstr ""
-#: build/templates/build/detail.html:240
+#: build/templates/build/detail.html:214
msgid "Create new build output"
msgstr ""
-#: build/templates/build/detail.html:241
+#: build/templates/build/detail.html:215
msgid "New Build Output"
msgstr ""
-#: build/templates/build/detail.html:255
-msgid "Output Actions"
-msgstr ""
-
-#: build/templates/build/detail.html:260
-msgid "Complete selected build outputs"
-msgstr ""
-
-#: build/templates/build/detail.html:261
-msgid "Complete outputs"
-msgstr ""
-
-#: build/templates/build/detail.html:265
-msgid "Scrap selected build outputs"
-msgstr ""
-
-#: build/templates/build/detail.html:266
-msgid "Scrap outputs"
-msgstr ""
-
-#: build/templates/build/detail.html:270
-msgid "Delete selected build outputs"
-msgstr ""
-
-#: build/templates/build/detail.html:271
-msgid "Delete outputs"
-msgstr ""
-
-#: build/templates/build/detail.html:288 build/templates/build/sidebar.html:11
+#: build/templates/build/detail.html:232 build/templates/build/sidebar.html:15
msgid "Consumed Stock"
msgstr ""
-#: build/templates/build/detail.html:300
+#: build/templates/build/detail.html:244
msgid "Completed Build Outputs"
msgstr ""
-#: build/templates/build/detail.html:312 build/templates/build/sidebar.html:21
-#: company/templates/company/detail.html:261
-#: company/templates/company/manufacturer_part.html:151
+#: build/templates/build/detail.html:256 build/templates/build/sidebar.html:19
+#: company/templates/company/detail.html:229
+#: company/templates/company/manufacturer_part.html:141
#: company/templates/company/manufacturer_part_sidebar.html:9
-#: company/templates/company/sidebar.html:37
+#: company/templates/company/sidebar.html:39
#: order/templates/order/po_sidebar.html:9
-#: order/templates/order/purchase_order_detail.html:102
-#: order/templates/order/return_order_detail.html:74
+#: order/templates/order/purchase_order_detail.html:84
+#: order/templates/order/return_order_detail.html:70
#: order/templates/order/return_order_sidebar.html:7
-#: order/templates/order/sales_order_detail.html:134
-#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:234
-#: part/templates/part/part_sidebar.html:61 stock/templates/stock/item.html:117
+#: order/templates/order/sales_order_detail.html:124
+#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:217
+#: part/templates/part/part_sidebar.html:61 stock/templates/stock/item.html:109
#: stock/templates/stock/stock_sidebar.html:23
msgid "Attachments"
msgstr "Załączniki"
-#: build/templates/build/detail.html:327
+#: build/templates/build/detail.html:271
msgid "Build Notes"
msgstr "Notatki tworzenia"
-#: build/templates/build/detail.html:502
+#: build/templates/build/detail.html:425
msgid "Allocation Complete"
msgstr ""
-#: build/templates/build/detail.html:503
-msgid "All untracked stock items have been allocated"
+#: build/templates/build/detail.html:426
+msgid "All lines have been fully allocated"
msgstr ""
-#: build/templates/build/index.html:18 part/templates/part/detail.html:340
+#: build/templates/build/index.html:18 part/templates/part/detail.html:319
msgid "New Build Order"
msgstr "Nowe zlecenie budowy"
@@ -1914,14 +1921,10 @@ msgstr "Nowe zlecenie budowy"
msgid "Build Order Details"
msgstr ""
-#: build/templates/build/sidebar.html:14
+#: build/templates/build/sidebar.html:10
msgid "Incomplete Outputs"
msgstr ""
-#: build/templates/build/sidebar.html:17
-msgid "Completed Outputs"
-msgstr ""
-
#: common/files.py:63
#, python-brace-format
msgid "Unsupported file format: {fmt}"
@@ -1968,16 +1971,6 @@ msgstr ""
msgid "Timestamp of last update"
msgstr ""
-#: common/models.py:104 order/admin.py:17 order/models.py:234
-#: templates/InvenTree/settings/settings_staff_js.html:70
-#: templates/js/translated/purchase_order.js:1670
-#: templates/js/translated/return_order.js:306
-#: templates/js/translated/sales_order.js:794
-#: templates/js/translated/table_filters.js:24
-#: templates/project_code_data.html:6
-msgid "Project Code"
-msgstr ""
-
#: common/models.py:105
msgid "Unique project code"
msgstr ""
@@ -2261,9 +2254,9 @@ msgstr ""
msgid "Copy category parameter templates when creating a part"
msgstr ""
-#: common/models.py:1162 part/admin.py:55 part/models.py:3560
-#: report/models.py:166 templates/js/translated/table_filters.js:109
-#: templates/js/translated/table_filters.js:680
+#: common/models.py:1162 part/admin.py:55 part/models.py:3594
+#: report/models.py:166 templates/js/translated/table_filters.js:115
+#: templates/js/translated/table_filters.js:702
msgid "Template"
msgstr "Szablon"
@@ -2271,10 +2264,10 @@ msgstr "Szablon"
msgid "Parts are templates by default"
msgstr ""
-#: common/models.py:1169 part/admin.py:51 part/admin.py:283 part/models.py:996
-#: templates/js/translated/bom.js:1598
-#: templates/js/translated/table_filters.js:276
-#: templates/js/translated/table_filters.js:634
+#: common/models.py:1169 part/admin.py:51 part/admin.py:283 part/models.py:997
+#: templates/js/translated/bom.js:1618
+#: templates/js/translated/table_filters.js:282
+#: templates/js/translated/table_filters.js:656
msgid "Assembly"
msgstr "Złożenie"
@@ -2282,8 +2275,8 @@ msgstr "Złożenie"
msgid "Parts can be assembled from other components by default"
msgstr ""
-#: common/models.py:1176 part/admin.py:52 part/models.py:1002
-#: templates/js/translated/table_filters.js:642
+#: common/models.py:1176 part/admin.py:52 part/models.py:1003
+#: templates/js/translated/table_filters.js:664
msgid "Component"
msgstr "Komponent"
@@ -2291,7 +2284,7 @@ msgstr "Komponent"
msgid "Parts can be used as sub-components by default"
msgstr ""
-#: common/models.py:1183 part/admin.py:53 part/models.py:1013
+#: common/models.py:1183 part/admin.py:53 part/models.py:1014
msgid "Purchaseable"
msgstr "Możliwość zakupu"
@@ -2299,8 +2292,8 @@ msgstr "Możliwość zakupu"
msgid "Parts are purchaseable by default"
msgstr "Części są domyślnie z możliwością zakupu"
-#: common/models.py:1190 part/admin.py:54 part/models.py:1018
-#: templates/js/translated/table_filters.js:668
+#: common/models.py:1190 part/admin.py:54 part/models.py:1019
+#: templates/js/translated/table_filters.js:690
msgid "Salable"
msgstr "Możliwość sprzedaży"
@@ -2308,10 +2301,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:1197 part/admin.py:56 part/models.py:1008
-#: templates/js/translated/table_filters.js:117
-#: templates/js/translated/table_filters.js:193
-#: templates/js/translated/table_filters.js:684
+#: common/models.py:1197 part/admin.py:56 part/models.py:1009
+#: templates/js/translated/table_filters.js:123
+#: templates/js/translated/table_filters.js:199
+#: templates/js/translated/table_filters.js:706
msgid "Trackable"
msgstr "Możliwość śledzenia"
@@ -2319,10 +2312,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:1204 part/admin.py:57 part/models.py:1028
+#: common/models.py:1204 part/admin.py:57 part/models.py:1029
#: part/templates/part/part_base.html:156
-#: templates/js/translated/table_filters.js:113
-#: templates/js/translated/table_filters.js:688
+#: templates/js/translated/table_filters.js:119
+#: templates/js/translated/table_filters.js:710
msgid "Virtual"
msgstr "Wirtualny"
@@ -2354,7 +2347,7 @@ msgstr ""
msgid "Allow creation of initial stock when adding a new part"
msgstr ""
-#: common/models.py:1232 templates/js/translated/part.js:108
+#: common/models.py:1232 templates/js/translated/part.js:107
msgid "Initial Supplier Data"
msgstr ""
@@ -2603,179 +2596,179 @@ msgid "Stock location default icon (empty means no icon)"
msgstr ""
#: common/models.py:1471
-msgid "Build Order Reference Pattern"
+msgid "Show Installed Stock Items"
msgstr ""
#: common/models.py:1472
-msgid "Required pattern for generating Build Order reference field"
+msgid "Display installed stock items in stock tables"
msgstr ""
#: common/models.py:1478
-msgid "Enable Return Orders"
+msgid "Build Order Reference Pattern"
msgstr ""
#: common/models.py:1479
-msgid "Enable return order functionality in the user interface"
+msgid "Required pattern for generating Build Order reference field"
msgstr ""
#: common/models.py:1485
-msgid "Return Order Reference Pattern"
+msgid "Enable Return Orders"
msgstr ""
#: common/models.py:1486
-msgid "Required pattern for generating Return Order reference field"
+msgid "Enable return order functionality in the user interface"
msgstr ""
#: common/models.py:1492
-msgid "Edit Completed Return Orders"
+msgid "Return Order Reference Pattern"
msgstr ""
#: common/models.py:1493
-msgid "Allow editing of return orders after they have been completed"
+msgid "Required pattern for generating Return Order reference field"
msgstr ""
#: common/models.py:1499
-msgid "Sales Order Reference Pattern"
+msgid "Edit Completed Return Orders"
msgstr ""
#: common/models.py:1500
-msgid "Required pattern for generating Sales Order reference field"
+msgid "Allow editing of return orders after they have been completed"
msgstr ""
#: common/models.py:1506
-msgid "Sales Order Default Shipment"
+msgid "Sales Order Reference Pattern"
msgstr ""
#: common/models.py:1507
-msgid "Enable creation of default shipment with sales orders"
+msgid "Required pattern for generating Sales Order reference field"
msgstr ""
#: common/models.py:1513
-msgid "Edit Completed Sales Orders"
+msgid "Sales Order Default Shipment"
msgstr ""
#: common/models.py:1514
-msgid "Allow editing of sales orders after they have been shipped or completed"
+msgid "Enable creation of default shipment with sales orders"
msgstr ""
#: common/models.py:1520
-msgid "Purchase Order Reference Pattern"
+msgid "Edit Completed Sales Orders"
msgstr ""
#: common/models.py:1521
-msgid "Required pattern for generating Purchase Order reference field"
+msgid "Allow editing of sales orders after they have been shipped or completed"
msgstr ""
#: common/models.py:1527
-msgid "Edit Completed Purchase Orders"
+msgid "Purchase Order Reference Pattern"
msgstr ""
#: common/models.py:1528
-msgid "Allow editing of purchase orders after they have been shipped or completed"
+msgid "Required pattern for generating Purchase Order reference field"
+msgstr ""
+
+#: common/models.py:1534
+msgid "Edit Completed Purchase Orders"
msgstr ""
#: common/models.py:1535
+msgid "Allow editing of purchase orders after they have been shipped or completed"
+msgstr ""
+
+#: common/models.py:1542
msgid "Enable password forgot"
msgstr "Włącz opcję zapomnianego hasła"
-#: common/models.py:1536
+#: common/models.py:1543
msgid "Enable password forgot function on the login pages"
msgstr "Włącz funkcję zapomnianego hasła na stronach logowania"
-#: common/models.py:1542
+#: common/models.py:1549
msgid "Enable registration"
msgstr "Włącz rejestrację"
-#: common/models.py:1543
+#: common/models.py:1550
msgid "Enable self-registration for users on the login pages"
msgstr "Włącz samodzielną rejestrację dla użytkowników na stronach logowania"
-#: common/models.py:1549
+#: common/models.py:1556
msgid "Enable SSO"
msgstr "Włącz SSO"
-#: common/models.py:1550
+#: common/models.py:1557
msgid "Enable SSO on the login pages"
msgstr "Włącz SSO na stronach logowania"
-#: common/models.py:1556
+#: common/models.py:1563
msgid "Enable SSO registration"
msgstr ""
-#: common/models.py:1557
+#: common/models.py:1564
msgid "Enable self-registration via SSO for users on the login pages"
msgstr ""
-#: common/models.py:1563
+#: common/models.py:1570
msgid "Email required"
msgstr "Adres e-mail jest wymagany"
-#: common/models.py:1564
+#: common/models.py:1571
msgid "Require user to supply mail on signup"
msgstr ""
-#: common/models.py:1570
+#: common/models.py:1577
msgid "Auto-fill SSO users"
msgstr "Autouzupełnianie użytkowników SSO"
-#: common/models.py:1571
+#: common/models.py:1578
msgid "Automatically fill out user-details from SSO account-data"
msgstr "Automatycznie wypełnij dane użytkownika z danych konta SSO"
-#: common/models.py:1577
+#: common/models.py:1584
msgid "Mail twice"
msgstr "E-mail dwa razy"
-#: common/models.py:1578
+#: common/models.py:1585
msgid "On signup ask users twice for their mail"
msgstr "Przy rejestracji dwukrotnie zapytaj użytkowników o ich adres e-mail"
-#: common/models.py:1584
+#: common/models.py:1591
msgid "Password twice"
msgstr "Hasło dwukrotnie"
-#: common/models.py:1585
+#: common/models.py:1592
msgid "On signup ask users twice for their password"
msgstr "Przy rejestracji dwukrotnie zapytaj użytkowników o ich hasło"
-#: common/models.py:1591
+#: common/models.py:1598
msgid "Allowed domains"
msgstr ""
-#: common/models.py:1592
+#: common/models.py:1599
msgid "Restrict signup to certain domains (comma-separated, starting with @)"
msgstr ""
-#: common/models.py:1598
+#: common/models.py:1605
msgid "Group on signup"
msgstr "Grupuj przy rejestracji"
-#: common/models.py:1599
+#: common/models.py:1606
msgid "Group to which new users are assigned on registration"
msgstr ""
-#: common/models.py:1605
+#: common/models.py:1612
msgid "Enforce MFA"
msgstr "Wymuś MFA"
-#: common/models.py:1606
+#: common/models.py:1613
msgid "Users must use multifactor security."
msgstr "Użytkownicy muszą używać zabezpieczeń wieloskładnikowych."
-#: common/models.py:1612
+#: common/models.py:1619
msgid "Check plugins on startup"
msgstr "Sprawdź wtyczki przy starcie"
-#: common/models.py:1613
-msgid "Check that all plugins are installed on startup - enable in container environments"
-msgstr ""
-
#: common/models.py:1620
-msgid "Check plugin signatures"
-msgstr ""
-
-#: common/models.py:1621
-msgid "Check and show signatures for plugins"
+msgid "Check that all plugins are installed on startup - enable in container environments"
msgstr ""
#: common/models.py:1628
@@ -2850,7 +2843,7 @@ msgstr ""
msgid "Stocktake reports will be deleted after specified number of days"
msgstr ""
-#: common/models.py:1710 common/models.py:2147
+#: common/models.py:1710 common/models.py:2133
msgid "Settings key (must be unique - case insensitive"
msgstr "Klucz ustawień (musi być unikalny - niewrażliwy na wielkość liter"
@@ -2891,528 +2884,513 @@ msgid "Show latest parts on the homepage"
msgstr "Pokaż najnowsze części na stronie głównej"
#: common/models.py:1779
-msgid "Recent Part Count"
-msgstr ""
-
-#: common/models.py:1780
-msgid "Number of recent parts to display on index page"
-msgstr ""
-
-#: common/models.py:1786
msgid "Show unvalidated BOMs"
msgstr ""
-#: common/models.py:1787
+#: common/models.py:1780
msgid "Show BOMs that await validation on the homepage"
msgstr ""
-#: common/models.py:1793
+#: common/models.py:1786
msgid "Show recent stock changes"
msgstr ""
-#: common/models.py:1794
+#: common/models.py:1787
msgid "Show recently changed stock items on the homepage"
msgstr ""
-#: common/models.py:1800
-msgid "Recent Stock Count"
-msgstr ""
-
-#: common/models.py:1801
-msgid "Number of recent stock items to display on index page"
-msgstr ""
-
-#: common/models.py:1807
+#: common/models.py:1793
msgid "Show low stock"
msgstr "Pokaż niski stan magazynowy"
-#: common/models.py:1808
+#: common/models.py:1794
msgid "Show low stock items on the homepage"
msgstr "Pokaż elementy o niskim stanie na stronie głównej"
-#: common/models.py:1814
+#: common/models.py:1800
msgid "Show depleted stock"
msgstr ""
-#: common/models.py:1815
+#: common/models.py:1801
msgid "Show depleted stock items on the homepage"
msgstr ""
-#: common/models.py:1821
+#: common/models.py:1807
msgid "Show needed stock"
msgstr "Pokaż wymagany stan zapasów"
-#: common/models.py:1822
+#: common/models.py:1808
msgid "Show stock items needed for builds on the homepage"
msgstr ""
-#: common/models.py:1828
+#: common/models.py:1814
msgid "Show expired stock"
msgstr ""
-#: common/models.py:1829
+#: common/models.py:1815
msgid "Show expired stock items on the homepage"
msgstr ""
-#: common/models.py:1835
+#: common/models.py:1821
msgid "Show stale stock"
msgstr ""
-#: common/models.py:1836
+#: common/models.py:1822
msgid "Show stale stock items on the homepage"
msgstr ""
-#: common/models.py:1842
+#: common/models.py:1828
msgid "Show pending builds"
msgstr ""
-#: common/models.py:1843
+#: common/models.py:1829
msgid "Show pending builds on the homepage"
msgstr ""
-#: common/models.py:1849
+#: common/models.py:1835
msgid "Show overdue builds"
msgstr ""
-#: common/models.py:1850
+#: common/models.py:1836
msgid "Show overdue builds on the homepage"
msgstr ""
-#: common/models.py:1856
+#: common/models.py:1842
msgid "Show outstanding POs"
msgstr ""
-#: common/models.py:1857
+#: common/models.py:1843
msgid "Show outstanding POs on the homepage"
msgstr ""
-#: common/models.py:1863
+#: common/models.py:1849
msgid "Show overdue POs"
msgstr ""
-#: common/models.py:1864
+#: common/models.py:1850
msgid "Show overdue POs on the homepage"
msgstr ""
-#: common/models.py:1870
+#: common/models.py:1856
msgid "Show outstanding SOs"
msgstr ""
-#: common/models.py:1871
+#: common/models.py:1857
msgid "Show outstanding SOs on the homepage"
msgstr ""
-#: common/models.py:1877
+#: common/models.py:1863
msgid "Show overdue SOs"
msgstr ""
-#: common/models.py:1878
+#: common/models.py:1864
msgid "Show overdue SOs on the homepage"
msgstr ""
-#: common/models.py:1884
+#: common/models.py:1870
msgid "Show pending SO shipments"
msgstr ""
-#: common/models.py:1885
+#: common/models.py:1871
msgid "Show pending SO shipments on the homepage"
msgstr ""
-#: common/models.py:1891
+#: common/models.py:1877
msgid "Show News"
msgstr ""
-#: common/models.py:1892
+#: common/models.py:1878
msgid "Show news on the homepage"
msgstr ""
-#: common/models.py:1898
+#: common/models.py:1884
msgid "Inline label display"
msgstr ""
-#: common/models.py:1899
+#: common/models.py:1885
msgid "Display PDF labels in the browser, instead of downloading as a file"
msgstr ""
-#: common/models.py:1905
+#: common/models.py:1891
msgid "Default label printer"
msgstr ""
-#: common/models.py:1906
+#: common/models.py:1892
msgid "Configure which label printer should be selected by default"
msgstr ""
-#: common/models.py:1912
+#: common/models.py:1898
msgid "Inline report display"
msgstr ""
-#: common/models.py:1913
+#: common/models.py:1899
msgid "Display PDF reports in the browser, instead of downloading as a file"
msgstr ""
-#: common/models.py:1919
+#: common/models.py:1905
msgid "Search Parts"
msgstr "Szukaj części"
-#: common/models.py:1920
+#: common/models.py:1906
msgid "Display parts in search preview window"
msgstr ""
-#: common/models.py:1926
+#: common/models.py:1912
msgid "Search Supplier Parts"
msgstr ""
-#: common/models.py:1927
+#: common/models.py:1913
msgid "Display supplier parts in search preview window"
msgstr ""
-#: common/models.py:1933
+#: common/models.py:1919
msgid "Search Manufacturer Parts"
msgstr ""
-#: common/models.py:1934
+#: common/models.py:1920
msgid "Display manufacturer parts in search preview window"
msgstr ""
-#: common/models.py:1940
+#: common/models.py:1926
msgid "Hide Inactive Parts"
msgstr "Ukryj nieaktywne części"
-#: common/models.py:1941
+#: common/models.py:1927
msgid "Excluded inactive parts from search preview window"
msgstr ""
-#: common/models.py:1947
+#: common/models.py:1933
msgid "Search Categories"
msgstr ""
-#: common/models.py:1948
+#: common/models.py:1934
msgid "Display part categories in search preview window"
msgstr ""
-#: common/models.py:1954
+#: common/models.py:1940
msgid "Search Stock"
msgstr ""
-#: common/models.py:1955
+#: common/models.py:1941
msgid "Display stock items in search preview window"
msgstr ""
-#: common/models.py:1961
+#: common/models.py:1947
msgid "Hide Unavailable Stock Items"
msgstr ""
-#: common/models.py:1962
+#: common/models.py:1948
msgid "Exclude stock items which are not available from the search preview window"
msgstr ""
-#: common/models.py:1968
+#: common/models.py:1954
msgid "Search Locations"
msgstr ""
-#: common/models.py:1969
+#: common/models.py:1955
msgid "Display stock locations in search preview window"
msgstr ""
-#: common/models.py:1975
+#: common/models.py:1961
msgid "Search Companies"
msgstr ""
-#: common/models.py:1976
+#: common/models.py:1962
msgid "Display companies in search preview window"
msgstr ""
-#: common/models.py:1982
+#: common/models.py:1968
msgid "Search Build Orders"
msgstr ""
-#: common/models.py:1983
+#: common/models.py:1969
msgid "Display build orders in search preview window"
msgstr ""
-#: common/models.py:1989
+#: common/models.py:1975
msgid "Search Purchase Orders"
msgstr ""
-#: common/models.py:1990
+#: common/models.py:1976
msgid "Display purchase orders in search preview window"
msgstr ""
-#: common/models.py:1996
+#: common/models.py:1982
msgid "Exclude Inactive Purchase Orders"
msgstr ""
-#: common/models.py:1997
+#: common/models.py:1983
msgid "Exclude inactive purchase orders from search preview window"
msgstr ""
-#: common/models.py:2003
+#: common/models.py:1989
msgid "Search Sales Orders"
msgstr ""
-#: common/models.py:2004
+#: common/models.py:1990
msgid "Display sales orders in search preview window"
msgstr ""
-#: common/models.py:2010
+#: common/models.py:1996
msgid "Exclude Inactive Sales Orders"
msgstr ""
-#: common/models.py:2011
+#: common/models.py:1997
msgid "Exclude inactive sales orders from search preview window"
msgstr ""
-#: common/models.py:2017
+#: common/models.py:2003
msgid "Search Return Orders"
msgstr ""
-#: common/models.py:2018
+#: common/models.py:2004
msgid "Display return orders in search preview window"
msgstr ""
-#: common/models.py:2024
+#: common/models.py:2010
msgid "Exclude Inactive Return Orders"
msgstr ""
-#: common/models.py:2025
+#: common/models.py:2011
msgid "Exclude inactive return orders from search preview window"
msgstr ""
-#: common/models.py:2031
+#: common/models.py:2017
msgid "Search Preview Results"
msgstr ""
-#: common/models.py:2032
+#: common/models.py:2018
msgid "Number of results to show in each section of the search preview window"
msgstr ""
-#: common/models.py:2038
+#: common/models.py:2024
msgid "Regex Search"
msgstr ""
-#: common/models.py:2039
+#: common/models.py:2025
msgid "Enable regular expressions in search queries"
msgstr ""
-#: common/models.py:2045
+#: common/models.py:2031
msgid "Whole Word Search"
msgstr ""
-#: common/models.py:2046
+#: common/models.py:2032
msgid "Search queries return results for whole word matches"
msgstr ""
-#: common/models.py:2052
+#: common/models.py:2038
msgid "Show Quantity in Forms"
msgstr "Pokaż ilość w formularzach"
-#: common/models.py:2053
+#: common/models.py:2039
msgid "Display available part quantity in some forms"
msgstr ""
-#: common/models.py:2059
+#: common/models.py:2045
msgid "Escape Key Closes Forms"
msgstr ""
-#: common/models.py:2060
+#: common/models.py:2046
msgid "Use the escape key to close modal forms"
msgstr ""
-#: common/models.py:2066
+#: common/models.py:2052
msgid "Fixed Navbar"
msgstr "Stały pasek nawigacyjny"
-#: common/models.py:2067
+#: common/models.py:2053
msgid "The navbar position is fixed to the top of the screen"
msgstr ""
-#: common/models.py:2073
+#: common/models.py:2059
msgid "Date Format"
msgstr "Format daty"
-#: common/models.py:2074
+#: common/models.py:2060
msgid "Preferred format for displaying dates"
msgstr "Preferowany format wyświetlania dat"
-#: common/models.py:2088 part/templates/part/detail.html:41
+#: common/models.py:2074 part/templates/part/detail.html:41
msgid "Part Scheduling"
msgstr "Planowanie komponentów"
-#: common/models.py:2089
+#: common/models.py:2075
msgid "Display part scheduling information"
msgstr ""
-#: common/models.py:2095 part/templates/part/detail.html:62
+#: common/models.py:2081 part/templates/part/detail.html:62
msgid "Part Stocktake"
msgstr ""
-#: common/models.py:2096
+#: common/models.py:2082
msgid "Display part stocktake information (if stocktake functionality is enabled)"
msgstr ""
-#: common/models.py:2102
+#: common/models.py:2088
msgid "Table String Length"
msgstr ""
-#: common/models.py:2103
+#: common/models.py:2089
msgid "Maximimum length limit for strings displayed in table views"
msgstr ""
-#: common/models.py:2112
+#: common/models.py:2098
msgid "Default part label template"
msgstr ""
-#: common/models.py:2113
+#: common/models.py:2099
msgid "The part label template to be automatically selected"
msgstr ""
-#: common/models.py:2121
+#: common/models.py:2107
msgid "Default stock item template"
msgstr ""
-#: common/models.py:2122
+#: common/models.py:2108
msgid "The stock item label template to be automatically selected"
msgstr ""
-#: common/models.py:2130
+#: common/models.py:2116
msgid "Default stock location label template"
msgstr ""
-#: common/models.py:2131
+#: common/models.py:2117
msgid "The stock location label template to be automatically selected"
msgstr ""
-#: common/models.py:2177
+#: common/models.py:2163
msgid "Price break quantity"
msgstr ""
-#: common/models.py:2184 company/serializers.py:434 order/admin.py:43
-#: order/models.py:1132 order/models.py:1939
-#: templates/js/translated/company.js:1433 templates/js/translated/part.js:1856
+#: common/models.py:2170 company/serializers.py:491 order/admin.py:43
+#: order/models.py:1145 order/models.py:1952
+#: templates/js/translated/company.js:1854 templates/js/translated/part.js:1855
#: templates/js/translated/pricing.js:621
-#: templates/js/translated/return_order.js:725
+#: templates/js/translated/return_order.js:737
msgid "Price"
msgstr "Cena"
-#: common/models.py:2185
+#: common/models.py:2171
msgid "Unit price at specified quantity"
msgstr ""
-#: common/models.py:2345 common/models.py:2523
+#: common/models.py:2331 common/models.py:2509
msgid "Endpoint"
msgstr "Punkt końcowy"
-#: common/models.py:2346
+#: common/models.py:2332
msgid "Endpoint at which this webhook is received"
msgstr ""
-#: common/models.py:2355
+#: common/models.py:2341
msgid "Name for this webhook"
msgstr ""
-#: common/models.py:2360 part/admin.py:50 part/models.py:1023
-#: plugin/models.py:47 templates/js/translated/table_filters.js:105
-#: templates/js/translated/table_filters.js:189
-#: templates/js/translated/table_filters.js:434
-#: templates/js/translated/table_filters.js:450
-#: templates/js/translated/table_filters.js:629
+#: common/models.py:2346 part/admin.py:50 part/models.py:1024
+#: plugin/models.py:48 templates/js/translated/table_filters.js:111
+#: templates/js/translated/table_filters.js:195
+#: templates/js/translated/table_filters.js:440
+#: templates/js/translated/table_filters.js:456
+#: templates/js/translated/table_filters.js:651
msgid "Active"
msgstr "Aktywny"
-#: common/models.py:2361
+#: common/models.py:2347
msgid "Is this webhook active"
msgstr ""
-#: common/models.py:2375
+#: common/models.py:2361
msgid "Token"
msgstr ""
-#: common/models.py:2376
+#: common/models.py:2362
msgid "Token for access"
msgstr ""
-#: common/models.py:2383
+#: common/models.py:2369
msgid "Secret"
msgstr "Sekret"
-#: common/models.py:2384
+#: common/models.py:2370
msgid "Shared secret for HMAC"
msgstr "Współdzielony sekret dla HMAC"
-#: common/models.py:2490
+#: common/models.py:2476
msgid "Message ID"
msgstr "Id wiadomości"
-#: common/models.py:2491
+#: common/models.py:2477
msgid "Unique identifier for this message"
msgstr "Unikalny identyfikator dla tej wiadomości"
-#: common/models.py:2499
+#: common/models.py:2485
msgid "Host"
msgstr ""
-#: common/models.py:2500
+#: common/models.py:2486
msgid "Host from which this message was received"
msgstr "Host, od którego otrzymano tę wiadomość"
-#: common/models.py:2507
+#: common/models.py:2493
msgid "Header"
msgstr "Nagłówek"
-#: common/models.py:2508
+#: common/models.py:2494
msgid "Header of this message"
msgstr "Nagłówek tej wiadomości"
-#: common/models.py:2514
+#: common/models.py:2500
msgid "Body"
msgstr "Zawartość"
-#: common/models.py:2515
+#: common/models.py:2501
msgid "Body of this message"
msgstr ""
-#: common/models.py:2524
+#: common/models.py:2510
msgid "Endpoint on which this message was received"
msgstr ""
-#: common/models.py:2529
+#: common/models.py:2515
msgid "Worked on"
msgstr ""
-#: common/models.py:2530
+#: common/models.py:2516
msgid "Was the work on this message finished?"
msgstr ""
-#: common/models.py:2684
+#: common/models.py:2670
msgid "Id"
msgstr ""
-#: common/models.py:2690 templates/js/translated/news.js:44
+#: common/models.py:2676 templates/js/translated/company.js:996
+#: templates/js/translated/news.js:44
msgid "Title"
msgstr ""
-#: common/models.py:2700 templates/js/translated/news.js:60
+#: common/models.py:2686 templates/js/translated/news.js:60
msgid "Published"
msgstr ""
-#: common/models.py:2705 templates/InvenTree/settings/plugin_settings.html:32
+#: common/models.py:2691 templates/InvenTree/settings/plugin_settings.html:32
#: templates/js/translated/news.js:56 templates/js/translated/plugin.js:106
msgid "Author"
msgstr "Autor"
-#: common/models.py:2710 templates/js/translated/news.js:52
+#: common/models.py:2696 templates/js/translated/news.js:52
msgid "Summary"
msgstr ""
-#: common/models.py:2715
+#: common/models.py:2701
msgid "Read"
msgstr ""
-#: common/models.py:2716
+#: common/models.py:2702
msgid "Was this news item read?"
msgstr ""
-#: common/models.py:2736 company/models.py:143 part/models.py:914
+#: common/models.py:2722 company/models.py:139 part/models.py:915
#: report/templates/report/inventree_bill_of_materials_report.html:126
#: report/templates/report/inventree_bill_of_materials_report.html:148
#: report/templates/report/inventree_return_order_report_base.html:35
@@ -3422,7 +3400,7 @@ msgstr ""
msgid "Image"
msgstr "Obraz"
-#: common/models.py:2737
+#: common/models.py:2723
msgid "Image file"
msgstr ""
@@ -3499,7 +3477,7 @@ msgstr "Opis firmy"
#: company/models.py:113 company/templates/company/company_base.html:101
#: templates/InvenTree/settings/plugin_settings.html:54
-#: templates/js/translated/company.js:514
+#: templates/js/translated/company.js:521
msgid "Website"
msgstr "Strona WWW"
@@ -3507,303 +3485,387 @@ msgstr "Strona WWW"
msgid "Company website URL"
msgstr "Witryna internetowa firmy"
-#: company/models.py:118 company/templates/company/company_base.html:119
-msgid "Address"
-msgstr "Adres"
-
-#: company/models.py:119
-msgid "Company address"
-msgstr "Adres firmy"
-
-#: company/models.py:122
+#: company/models.py:118
msgid "Phone number"
msgstr "Numer telefonu"
-#: company/models.py:123
+#: company/models.py:119
msgid "Contact phone number"
msgstr "Numer telefonu kontaktowego"
-#: company/models.py:126 company/templates/company/company_base.html:133
+#: company/models.py:122 company/templates/company/company_base.html:133
#: templates/InvenTree/settings/user.html:49
-#: templates/js/translated/company.js:659
+#: templates/js/translated/company.js:666
msgid "Email"
msgstr "Adres E-Mail"
-#: company/models.py:126
+#: company/models.py:122
msgid "Contact email address"
msgstr "Kontaktowy adres e-mail"
-#: company/models.py:129 company/templates/company/company_base.html:140
-#: order/models.py:266 order/templates/order/order_base.html:207
+#: company/models.py:125 company/templates/company/company_base.html:140
+#: order/models.py:270 order/templates/order/order_base.html:203
#: order/templates/order/return_order_base.html:175
#: order/templates/order/sales_order_base.html:215
msgid "Contact"
msgstr "Kontakt"
-#: company/models.py:130
+#: company/models.py:126
msgid "Point of contact"
msgstr "Punkt kontaktowy"
-#: company/models.py:132
+#: company/models.py:128
msgid "Link to external company information"
msgstr "Link do informacji o zewnętrznym przedsiębiorstwie"
-#: company/models.py:146
+#: company/models.py:142
msgid "is customer"
msgstr "jest klientem"
-#: company/models.py:146
+#: company/models.py:142
msgid "Do you sell items to this company?"
msgstr "Czy sprzedajesz produkty tej firmie?"
-#: company/models.py:148
+#: company/models.py:144
msgid "is supplier"
msgstr "jest dostawcą"
-#: company/models.py:148
+#: company/models.py:144
msgid "Do you purchase items from this company?"
msgstr "Czy kupujesz przedmioty od tej firmy?"
-#: company/models.py:150
+#: company/models.py:146
msgid "is manufacturer"
msgstr "jest producentem"
-#: company/models.py:150
+#: company/models.py:146
msgid "Does this company manufacture parts?"
msgstr "Czy to przedsiębiorstwo produkuje części?"
-#: company/models.py:157
+#: company/models.py:153
msgid "Default currency used for this company"
msgstr ""
-#: company/models.py:223 company/templates/company/company_base.html:8
+#: company/models.py:235 company/models.py:328
+#: company/templates/company/company_base.html:8
#: company/templates/company/company_base.html:12
-#: templates/InvenTree/search.html:178 templates/js/translated/company.js:487
+#: templates/InvenTree/search.html:178 templates/js/translated/company.js:494
msgid "Company"
msgstr "Firma"
-#: company/models.py:278 company/models.py:553 stock/models.py:675
-#: stock/serializers.py:155 stock/templates/stock/item_base.html:143
-#: templates/js/translated/bom.js:621
+#: company/models.py:324
+msgid "Company already has a primary address"
+msgstr ""
+
+#: company/models.py:329
+msgid "Select company"
+msgstr ""
+
+#: company/models.py:332
+msgid "Address title"
+msgstr ""
+
+#: company/models.py:333
+msgid "Title describing the address entry"
+msgstr ""
+
+#: company/models.py:337
+msgid "Primary address"
+msgstr ""
+
+#: company/models.py:338
+msgid "Set as primary address"
+msgstr ""
+
+#: company/models.py:341 templates/js/translated/company.js:941
+#: templates/js/translated/company.js:1002
+msgid "Line 1"
+msgstr ""
+
+#: company/models.py:342
+msgid "Address line 1"
+msgstr ""
+
+#: company/models.py:346 templates/js/translated/company.js:942
+#: templates/js/translated/company.js:1008
+msgid "Line 2"
+msgstr ""
+
+#: company/models.py:347
+msgid "Address line 2"
+msgstr ""
+
+#: company/models.py:351 company/models.py:352
+#: templates/js/translated/company.js:1014
+msgid "Postal code"
+msgstr ""
+
+#: company/models.py:356
+msgid "City/Region"
+msgstr ""
+
+#: company/models.py:357
+msgid "Postal code city/region"
+msgstr ""
+
+#: company/models.py:361
+msgid "State/Province"
+msgstr ""
+
+#: company/models.py:362
+msgid "State or province"
+msgstr ""
+
+#: company/models.py:366 templates/js/translated/company.js:1032
+msgid "Country"
+msgstr ""
+
+#: company/models.py:367
+msgid "Address country"
+msgstr ""
+
+#: company/models.py:371
+msgid "Courier shipping notes"
+msgstr ""
+
+#: company/models.py:372
+msgid "Notes for shipping courier"
+msgstr ""
+
+#: company/models.py:376
+msgid "Internal shipping notes"
+msgstr ""
+
+#: company/models.py:377
+msgid "Shipping notes for internal use"
+msgstr ""
+
+#: company/models.py:382
+msgid "Link to address information (external)"
+msgstr ""
+
+#: company/models.py:427 company/models.py:702 stock/models.py:675
+#: stock/serializers.py:204 stock/templates/stock/item_base.html:143
+#: templates/js/translated/bom.js:622
msgid "Base Part"
msgstr "Część bazowa"
-#: company/models.py:282 company/models.py:557
+#: company/models.py:431 company/models.py:706
msgid "Select part"
msgstr "Wybierz część"
-#: company/models.py:293 company/templates/company/company_base.html:77
+#: company/models.py:442 company/templates/company/company_base.html:77
#: company/templates/company/manufacturer_part.html:90
-#: company/templates/company/supplier_part.html:146 part/serializers.py:354
+#: company/templates/company/supplier_part.html:146 part/serializers.py:404
#: stock/templates/stock/item_base.html:208
-#: templates/js/translated/company.js:498
-#: templates/js/translated/company.js:824
-#: templates/js/translated/company.js:954
-#: templates/js/translated/company.js:1221
-#: templates/js/translated/table_filters.js:709
+#: templates/js/translated/company.js:505
+#: templates/js/translated/company.js:1149
+#: templates/js/translated/company.js:1327
+#: templates/js/translated/company.js:1642
+#: templates/js/translated/table_filters.js:731
msgid "Manufacturer"
msgstr "Producent"
-#: company/models.py:294
+#: company/models.py:443
msgid "Select manufacturer"
msgstr "Wybierz producenta"
-#: company/models.py:300 company/templates/company/manufacturer_part.html:101
-#: company/templates/company/supplier_part.html:154 part/serializers.py:360
-#: templates/js/translated/company.js:340
-#: templates/js/translated/company.js:823
-#: templates/js/translated/company.js:970
-#: templates/js/translated/company.js:1240 templates/js/translated/part.js:1773
-#: templates/js/translated/purchase_order.js:1814
-#: templates/js/translated/purchase_order.js:2021
+#: company/models.py:449 company/templates/company/manufacturer_part.html:101
+#: company/templates/company/supplier_part.html:154 part/serializers.py:410
+#: templates/js/translated/company.js:350
+#: templates/js/translated/company.js:1148
+#: templates/js/translated/company.js:1343
+#: templates/js/translated/company.js:1661 templates/js/translated/part.js:1772
+#: templates/js/translated/purchase_order.js:1829
+#: templates/js/translated/purchase_order.js:2031
msgid "MPN"
msgstr ""
-#: company/models.py:301
+#: company/models.py:450
msgid "Manufacturer Part Number"
msgstr "Numer producenta komponentu"
-#: company/models.py:307
+#: company/models.py:456
msgid "URL for external manufacturer part link"
msgstr ""
-#: company/models.py:313
+#: company/models.py:462
msgid "Manufacturer part description"
msgstr ""
-#: company/models.py:360 company/models.py:384 company/models.py:578
+#: company/models.py:509 company/models.py:533 company/models.py:727
#: company/templates/company/manufacturer_part.html:7
#: company/templates/company/manufacturer_part.html:24
#: stock/templates/stock/item_base.html:218
msgid "Manufacturer Part"
msgstr "Komponent producenta"
-#: company/models.py:391
+#: company/models.py:540
msgid "Parameter name"
msgstr ""
-#: company/models.py:397
+#: company/models.py:546
#: report/templates/report/inventree_test_report_base.html:104
-#: stock/models.py:2255 templates/js/translated/company.js:872
-#: templates/js/translated/company.js:1077 templates/js/translated/part.js:1465
-#: templates/js/translated/stock.js:1446
+#: stock/models.py:2255 templates/js/translated/company.js:1197
+#: templates/js/translated/company.js:1450 templates/js/translated/part.js:1464
+#: templates/js/translated/stock.js:1445
msgid "Value"
msgstr "Wartość"
-#: company/models.py:398
+#: company/models.py:547
msgid "Parameter value"
msgstr ""
-#: company/models.py:404 company/templates/company/supplier_part.html:169
-#: part/admin.py:40 part/models.py:987 part/models.py:3407
+#: company/models.py:553 company/templates/company/supplier_part.html:169
+#: part/admin.py:40 part/models.py:988 part/models.py:3441
#: part/templates/part/part_base.html:286
-#: templates/js/translated/company.js:1083 templates/js/translated/part.js:1484
-#: templates/js/translated/part.js:1588 templates/js/translated/part.js:2262
+#: templates/js/translated/company.js:1456 templates/js/translated/part.js:1483
+#: templates/js/translated/part.js:1587 templates/js/translated/part.js:2338
msgid "Units"
msgstr "Jednostki"
-#: company/models.py:405
+#: company/models.py:554
msgid "Parameter units"
msgstr "Jednostki parametru"
-#: company/models.py:498
+#: company/models.py:647
msgid "Pack units must be compatible with the base part units"
msgstr ""
-#: company/models.py:504
+#: company/models.py:653
msgid "Pack units must be greater than zero"
msgstr ""
-#: company/models.py:520
+#: company/models.py:669
msgid "Linked manufacturer part must reference the same base part"
msgstr ""
-#: company/models.py:564 company/templates/company/company_base.html:82
-#: company/templates/company/supplier_part.html:130 order/models.py:382
-#: order/templates/order/order_base.html:140 part/bom.py:285 part/bom.py:313
-#: part/serializers.py:343 stock/templates/stock/item_base.html:225
+#: company/models.py:713 company/templates/company/company_base.html:82
+#: company/templates/company/supplier_part.html:130 order/models.py:395
+#: order/templates/order/order_base.html:136 part/bom.py:285 part/bom.py:313
+#: part/serializers.py:393 stock/templates/stock/item_base.html:225
#: templates/email/overdue_purchase_order.html:16
-#: templates/js/translated/company.js:339
-#: templates/js/translated/company.js:502
-#: templates/js/translated/company.js:1194 templates/js/translated/part.js:1741
+#: templates/js/translated/company.js:349
+#: templates/js/translated/company.js:509
+#: templates/js/translated/company.js:1615 templates/js/translated/part.js:1740
#: templates/js/translated/pricing.js:498
-#: templates/js/translated/purchase_order.js:1653
-#: templates/js/translated/table_filters.js:713
+#: templates/js/translated/purchase_order.js:1668
+#: templates/js/translated/table_filters.js:735
msgid "Supplier"
msgstr "Dostawca"
-#: company/models.py:565
+#: company/models.py:714
msgid "Select supplier"
msgstr "Wybierz dostawcę"
-#: company/models.py:570 company/templates/company/supplier_part.html:140
-#: part/bom.py:286 part/bom.py:314 part/serializers.py:349
-#: templates/js/translated/company.js:338 templates/js/translated/part.js:1759
+#: company/models.py:719 company/templates/company/supplier_part.html:140
+#: part/bom.py:286 part/bom.py:314 part/serializers.py:399
+#: templates/js/translated/company.js:348 templates/js/translated/part.js:1758
#: templates/js/translated/pricing.js:510
-#: templates/js/translated/purchase_order.js:1813
-#: templates/js/translated/purchase_order.js:1996
+#: templates/js/translated/purchase_order.js:1828
+#: templates/js/translated/purchase_order.js:2006
msgid "SKU"
msgstr ""
-#: company/models.py:571 part/serializers.py:349
+#: company/models.py:720 part/serializers.py:399
msgid "Supplier stock keeping unit"
msgstr ""
-#: company/models.py:579
+#: company/models.py:728
msgid "Select manufacturer part"
msgstr ""
-#: company/models.py:585
+#: company/models.py:734
msgid "URL for external supplier part link"
msgstr ""
-#: company/models.py:591
+#: company/models.py:740
msgid "Supplier part description"
msgstr ""
-#: company/models.py:596 company/templates/company/supplier_part.html:188
-#: part/admin.py:279 part/models.py:3801 part/templates/part/upload_bom.html:59
+#: company/models.py:745 company/templates/company/supplier_part.html:188
+#: part/admin.py:279 part/models.py:3845 part/templates/part/upload_bom.html:59
#: report/templates/report/inventree_bill_of_materials_report.html:140
#: report/templates/report/inventree_po_report_base.html:32
#: report/templates/report/inventree_return_order_report_base.html:27
#: report/templates/report/inventree_so_report_base.html:32
-#: stock/serializers.py:418
+#: stock/serializers.py:484
msgid "Note"
msgstr "Uwaga"
-#: company/models.py:600 part/models.py:1919
+#: company/models.py:749 part/models.py:1921
msgid "base cost"
msgstr "koszt podstawowy"
-#: company/models.py:600 part/models.py:1919
+#: company/models.py:749 part/models.py:1921
msgid "Minimum charge (e.g. stocking fee)"
msgstr ""
-#: company/models.py:602 company/templates/company/supplier_part.html:161
+#: company/models.py:751 company/templates/company/supplier_part.html:161
#: stock/admin.py:119 stock/models.py:701
#: stock/templates/stock/item_base.html:241
-#: templates/js/translated/company.js:1256
-#: templates/js/translated/stock.js:2160
+#: templates/js/translated/company.js:1677
+#: templates/js/translated/stock.js:2317
msgid "Packaging"
msgstr "Opakowanie"
-#: company/models.py:602
+#: company/models.py:751
msgid "Part packaging"
msgstr "Opakowanie części"
-#: company/models.py:606 templates/js/translated/company.js:1261
-#: templates/js/translated/part.js:1793 templates/js/translated/part.js:1848
-#: templates/js/translated/purchase_order.js:300
-#: templates/js/translated/purchase_order.js:827
-#: templates/js/translated/purchase_order.js:1073
-#: templates/js/translated/purchase_order.js:2052
-#: templates/js/translated/purchase_order.js:2069
+#: company/models.py:755 templates/js/translated/company.js:1682
+#: templates/js/translated/part.js:1792 templates/js/translated/part.js:1847
+#: templates/js/translated/purchase_order.js:311
+#: templates/js/translated/purchase_order.js:842
+#: templates/js/translated/purchase_order.js:1088
+#: templates/js/translated/purchase_order.js:2062
+#: templates/js/translated/purchase_order.js:2079
msgid "Pack Quantity"
msgstr ""
-#: company/models.py:607
+#: company/models.py:756
msgid "Total quantity supplied in a single pack. Leave empty for single items."
msgstr ""
-#: company/models.py:624 part/models.py:1921
+#: company/models.py:773 part/models.py:1923
msgid "multiple"
msgstr "wielokrotność"
-#: company/models.py:624
+#: company/models.py:773
msgid "Order multiple"
msgstr ""
-#: company/models.py:632 company/templates/company/supplier_part.html:115
+#: company/models.py:781 company/templates/company/supplier_part.html:115
#: templates/email/build_order_required_stock.html:19
#: templates/email/low_stock_notification.html:17
-#: templates/js/translated/bom.js:1127 templates/js/translated/build.js:2136
-#: templates/js/translated/build.js:3045
-#: templates/js/translated/model_renderers.js:205
-#: templates/js/translated/part.js:670 templates/js/translated/part.js:672
-#: templates/js/translated/part.js:677
-#: templates/js/translated/table_filters.js:286
-#: templates/js/translated/table_filters.js:492
+#: templates/js/translated/bom.js:1145 templates/js/translated/build.js:2490
+#: templates/js/translated/index.js:118
+#: templates/js/translated/model_renderers.js:219
+#: templates/js/translated/part.js:669 templates/js/translated/part.js:671
+#: templates/js/translated/part.js:676
+#: templates/js/translated/table_filters.js:292
+#: templates/js/translated/table_filters.js:510
msgid "Available"
msgstr "Dostępne"
-#: company/models.py:633
+#: company/models.py:782
msgid "Quantity available from supplier"
msgstr ""
-#: company/models.py:637
+#: company/models.py:786
msgid "Availability Updated"
msgstr ""
-#: company/models.py:638
+#: company/models.py:787
msgid "Date of last update of availability data"
msgstr ""
-#: company/serializers.py:99
+#: company/serializers.py:156
msgid "Default currency used for this supplier"
msgstr "Domyślna waluta używana dla tego dostawcy"
#: company/templates/company/company_base.html:22
-#: templates/js/translated/purchase_order.js:228
+#: templates/js/translated/purchase_order.js:239
msgid "Create Purchase Order"
msgstr "Utwórz zamówienie zakupu"
@@ -3816,7 +3878,7 @@ msgid "Edit company information"
msgstr ""
#: company/templates/company/company_base.html:34
-#: templates/js/translated/company.js:436
+#: templates/js/translated/company.js:443
msgid "Edit Company"
msgstr "Edytuj firmę"
@@ -3856,17 +3918,17 @@ msgstr "Pobierz obraz z adresu URL"
msgid "Delete image"
msgstr ""
-#: company/templates/company/company_base.html:87 order/models.py:779
-#: order/models.py:1738 order/templates/order/return_order_base.html:132
+#: company/templates/company/company_base.html:87 order/models.py:792
+#: order/models.py:1751 order/templates/order/return_order_base.html:132
#: order/templates/order/sales_order_base.html:145 stock/models.py:720
-#: stock/models.py:721 stock/serializers.py:825
+#: stock/models.py:721 stock/serializers.py:942
#: stock/templates/stock/item_base.html:401
#: templates/email/overdue_sales_order.html:16
-#: templates/js/translated/company.js:494
-#: templates/js/translated/return_order.js:284
-#: templates/js/translated/sales_order.js:772
-#: templates/js/translated/stock.js:2696
-#: templates/js/translated/table_filters.js:717
+#: templates/js/translated/company.js:501
+#: templates/js/translated/return_order.js:296
+#: templates/js/translated/sales_order.js:784
+#: templates/js/translated/stock.js:2827
+#: templates/js/translated/table_filters.js:739
msgid "Customer"
msgstr "Klient"
@@ -3874,6 +3936,13 @@ msgstr "Klient"
msgid "Uses default currency"
msgstr "Używa domyślnej waluty"
+#: company/templates/company/company_base.html:119 order/models.py:279
+#: order/templates/order/order_base.html:210
+#: order/templates/order/return_order_base.html:182
+#: order/templates/order/sales_order_base.html:222
+msgid "Address"
+msgstr "Adres"
+
#: company/templates/company/company_base.html:126
msgid "Phone"
msgstr "Telefon"
@@ -3906,7 +3975,7 @@ msgstr "Pobierz obraz"
#: company/templates/company/detail.html:15
#: company/templates/company/manufacturer_part_sidebar.html:7
-#: templates/InvenTree/search.html:120 templates/js/translated/search.js:189
+#: templates/InvenTree/search.html:120 templates/js/translated/search.js:147
msgid "Supplier Parts"
msgstr "Komponenty dostawcy"
@@ -3916,129 +3985,121 @@ msgstr "Utwórz nowego dostawcę części"
#: company/templates/company/detail.html:20
#: company/templates/company/manufacturer_part.html:123
-#: part/templates/part/detail.html:381
+#: part/templates/part/detail.html:356
msgid "New Supplier Part"
msgstr "Nowy dostawca części"
-#: company/templates/company/detail.html:37
-#: company/templates/company/detail.html:85
-#: part/templates/part/category.html:183
-msgid "Order parts"
-msgstr "Zamów komponenty"
-
-#: company/templates/company/detail.html:42
-#: company/templates/company/detail.html:90
-msgid "Delete parts"
-msgstr "Usuń części"
-
-#: company/templates/company/detail.html:43
-#: company/templates/company/detail.html:91
-msgid "Delete Parts"
-msgstr "Usuń części"
-
-#: company/templates/company/detail.html:62 templates/InvenTree/search.html:105
-#: templates/js/translated/search.js:193
+#: company/templates/company/detail.html:41 templates/InvenTree/search.html:105
+#: templates/js/translated/search.js:151
msgid "Manufacturer Parts"
msgstr "Części producenta"
-#: company/templates/company/detail.html:66
+#: company/templates/company/detail.html:45
msgid "Create new manufacturer part"
msgstr "Utwórz nową część producenta"
-#: company/templates/company/detail.html:67 part/templates/part/detail.html:411
+#: company/templates/company/detail.html:46 part/templates/part/detail.html:376
msgid "New Manufacturer Part"
msgstr "Nowa część producenta"
-#: company/templates/company/detail.html:108
+#: company/templates/company/detail.html:65
msgid "Supplier Stock"
msgstr "Zapasy dostawcy"
-#: company/templates/company/detail.html:118
+#: company/templates/company/detail.html:75
#: company/templates/company/sidebar.html:12
#: company/templates/company/supplier_part_sidebar.html:7
#: 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:108 part/templates/part/part_sidebar.html:35
-#: templates/InvenTree/index.html:275 templates/InvenTree/search.html:199
+#: part/templates/part/detail.html:106 part/templates/part/part_sidebar.html:35
+#: templates/InvenTree/index.html:227 templates/InvenTree/search.html:199
#: templates/InvenTree/settings/sidebar.html:55
-#: templates/js/translated/search.js:247 templates/navbar.html:50
+#: templates/js/translated/search.js:205 templates/navbar.html:50
#: users/models.py:43
msgid "Purchase Orders"
msgstr "Zamówienia zakupu"
-#: company/templates/company/detail.html:122
+#: company/templates/company/detail.html:79
#: order/templates/order/purchase_orders.html:17
msgid "Create new purchase order"
msgstr "Utwórz nowe zamówienie zakupu"
-#: company/templates/company/detail.html:123
+#: company/templates/company/detail.html:80
#: order/templates/order/purchase_orders.html:18
msgid "New Purchase Order"
msgstr "Nowe zamówienie zakupu"
-#: company/templates/company/detail.html:146
+#: company/templates/company/detail.html:101
#: company/templates/company/sidebar.html:21
#: 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:131 part/templates/part/part_sidebar.html:39
-#: templates/InvenTree/index.html:307 templates/InvenTree/search.html:219
+#: part/templates/part/detail.html:127 part/templates/part/part_sidebar.html:39
+#: templates/InvenTree/index.html:259 templates/InvenTree/search.html:219
#: templates/InvenTree/settings/sidebar.html:57
-#: templates/js/translated/search.js:261 templates/navbar.html:62
+#: templates/js/translated/search.js:219 templates/navbar.html:62
#: users/models.py:44
msgid "Sales Orders"
msgstr ""
-#: company/templates/company/detail.html:150
+#: company/templates/company/detail.html:105
#: order/templates/order/sales_orders.html:20
msgid "Create new sales order"
msgstr "Utwórz nowe zlecenie sprzedaży"
-#: company/templates/company/detail.html:151
+#: company/templates/company/detail.html:106
#: order/templates/order/sales_orders.html:21
msgid "New Sales Order"
msgstr ""
-#: company/templates/company/detail.html:173
-#: templates/js/translated/build.js:1976
+#: company/templates/company/detail.html:126
msgid "Assigned Stock"
msgstr ""
-#: company/templates/company/detail.html:191
+#: company/templates/company/detail.html:142
#: company/templates/company/sidebar.html:29
#: order/templates/order/return_order_base.html:13
#: order/templates/order/return_orders.html:8
#: order/templates/order/return_orders.html:15
#: templates/InvenTree/settings/sidebar.html:59
-#: templates/js/translated/search.js:274 templates/navbar.html:65
+#: templates/js/translated/search.js:232 templates/navbar.html:65
#: users/models.py:45
msgid "Return Orders"
msgstr ""
-#: company/templates/company/detail.html:195
+#: company/templates/company/detail.html:146
#: order/templates/order/return_orders.html:20
msgid "Create new return order"
msgstr ""
-#: company/templates/company/detail.html:196
+#: company/templates/company/detail.html:147
#: order/templates/order/return_orders.html:21
msgid "New Return Order"
msgstr ""
-#: company/templates/company/detail.html:221
+#: company/templates/company/detail.html:168
msgid "Company Notes"
msgstr "Notatki firmy"
-#: company/templates/company/detail.html:236
+#: company/templates/company/detail.html:183
msgid "Company Contacts"
msgstr ""
-#: company/templates/company/detail.html:240
-#: company/templates/company/detail.html:241
+#: company/templates/company/detail.html:187
+#: company/templates/company/detail.html:188
msgid "Add Contact"
msgstr ""
+#: company/templates/company/detail.html:206
+msgid "Company addresses"
+msgstr ""
+
+#: company/templates/company/detail.html:210
+#: company/templates/company/detail.html:211
+msgid "Add Address"
+msgstr ""
+
#: company/templates/company/index.html:8
msgid "Supplier List"
msgstr "Lista dostawców"
@@ -4050,17 +4111,17 @@ msgstr "Producenci"
#: company/templates/company/manufacturer_part.html:35
#: company/templates/company/supplier_part.html:228
-#: part/templates/part/detail.html:111 part/templates/part/part_base.html:85
+#: part/templates/part/detail.html:109 part/templates/part/part_base.html:85
msgid "Order part"
msgstr "Zamów komponent"
#: company/templates/company/manufacturer_part.html:39
-#: templates/js/translated/company.js:1001
+#: templates/js/translated/company.js:1374
msgid "Edit manufacturer part"
msgstr "Edytuj komponent producenta"
#: company/templates/company/manufacturer_part.html:43
-#: templates/js/translated/company.js:1002
+#: templates/js/translated/company.js:1375
msgid "Delete manufacturer part"
msgstr "Usuń komponent producenta"
@@ -4080,40 +4141,22 @@ msgstr ""
msgid "Suppliers"
msgstr "Dostawcy"
-#: company/templates/company/manufacturer_part.html:136
-#: part/templates/part/detail.html:392
-msgid "Delete supplier parts"
-msgstr ""
-
-#: company/templates/company/manufacturer_part.html:136
-#: company/templates/company/manufacturer_part.html:183
-#: part/templates/part/detail.html:393 part/templates/part/detail.html:423
-#: templates/js/translated/forms.js:506 templates/js/translated/helpers.js:105
-#: templates/js/translated/part.js:370 templates/js/translated/pricing.js:629
-#: templates/js/translated/stock.js:216 users/models.py:247
-msgid "Delete"
-msgstr "Usuń"
-
-#: company/templates/company/manufacturer_part.html:166
+#: company/templates/company/manufacturer_part.html:156
#: company/templates/company/manufacturer_part_sidebar.html:5
#: part/templates/part/category_sidebar.html:20
-#: part/templates/part/detail.html:208 part/templates/part/part_sidebar.html:8
+#: part/templates/part/detail.html:195 part/templates/part/part_sidebar.html:8
msgid "Parameters"
msgstr "Parametry"
-#: company/templates/company/manufacturer_part.html:170
-#: part/templates/part/detail.html:213
+#: company/templates/company/manufacturer_part.html:160
+#: part/templates/part/detail.html:200
#: templates/InvenTree/settings/category.html:12
#: templates/InvenTree/settings/part_parameters.html:12
msgid "New Parameter"
msgstr "Nowy parametr"
-#: company/templates/company/manufacturer_part.html:183
-msgid "Delete parameters"
-msgstr "Usuń parametry"
-
-#: company/templates/company/manufacturer_part.html:226
-#: templates/js/translated/part.js:1396
+#: company/templates/company/manufacturer_part.html:206
+#: templates/js/translated/part.js:1395
msgid "Add Parameter"
msgstr "Dodaj parametr"
@@ -4137,23 +4180,28 @@ msgstr ""
msgid "Contacts"
msgstr ""
+#: company/templates/company/sidebar.html:35
+msgid "Addresses"
+msgstr ""
+
#: company/templates/company/supplier_part.html:7
#: company/templates/company/supplier_part.html:24 stock/models.py:684
#: stock/templates/stock/item_base.html:234
-#: templates/js/translated/company.js:1210
-#: templates/js/translated/purchase_order.js:747
-#: templates/js/translated/stock.js:2016
+#: templates/js/translated/company.js:1631
+#: templates/js/translated/purchase_order.js:758
+#: templates/js/translated/stock.js:2173
msgid "Supplier Part"
msgstr ""
#: company/templates/company/supplier_part.html:51
+#: templates/js/translated/company.js:1557
msgid "Supplier part actions"
msgstr ""
#: company/templates/company/supplier_part.html:56
#: company/templates/company/supplier_part.html:57
#: company/templates/company/supplier_part.html:229
-#: part/templates/part/detail.html:112
+#: part/templates/part/detail.html:110
msgid "Order Part"
msgstr "Zamów komponent"
@@ -4164,13 +4212,13 @@ msgstr ""
#: company/templates/company/supplier_part.html:64
#: company/templates/company/supplier_part.html:65
-#: templates/js/translated/company.js:283
+#: templates/js/translated/company.js:293
msgid "Edit Supplier Part"
msgstr ""
#: company/templates/company/supplier_part.html:69
#: company/templates/company/supplier_part.html:70
-#: templates/js/translated/company.js:258
+#: templates/js/translated/company.js:268
msgid "Duplicate Supplier Part"
msgstr ""
@@ -4197,7 +4245,7 @@ msgstr "Utwórz nowy towar"
#: company/templates/company/supplier_part.html:211
#: part/templates/part/detail.html:25 stock/templates/stock/location.html:198
-#: templates/js/translated/stock.js:504
+#: templates/js/translated/stock.js:503
msgid "New Stock Item"
msgstr "Nowy towar"
@@ -4205,37 +4253,37 @@ msgstr "Nowy towar"
msgid "Supplier Part Orders"
msgstr ""
-#: company/templates/company/supplier_part.html:249
+#: company/templates/company/supplier_part.html:247
msgid "Pricing Information"
msgstr "Informacja cenowa"
-#: company/templates/company/supplier_part.html:254
-#: templates/js/translated/company.js:387
+#: company/templates/company/supplier_part.html:252
+#: templates/js/translated/company.js:397
#: templates/js/translated/pricing.js:684
msgid "Add Price Break"
msgstr ""
-#: company/templates/company/supplier_part.html:281
+#: company/templates/company/supplier_part.html:277
msgid "Supplier Part QR Code"
msgstr ""
-#: company/templates/company/supplier_part.html:292
+#: company/templates/company/supplier_part.html:288
msgid "Link Barcode to Supplier Part"
msgstr ""
-#: company/templates/company/supplier_part.html:365
+#: company/templates/company/supplier_part.html:361
msgid "Update Part Availability"
msgstr ""
#: company/templates/company/supplier_part_sidebar.html:5 part/tasks.py:293
-#: part/templates/part/category.html:199
+#: part/templates/part/category.html:182
#: part/templates/part/category_sidebar.html:17 stock/admin.py:47
-#: stock/templates/stock/location.html:168
+#: stock/serializers.py:662 stock/templates/stock/location.html:168
#: stock/templates/stock/location.html:182
#: stock/templates/stock/location.html:194
#: stock/templates/stock/location_sidebar.html:7
-#: templates/InvenTree/search.html:155 templates/js/translated/part.js:1034
-#: templates/js/translated/search.js:214 templates/js/translated/stock.js:2514
+#: templates/InvenTree/search.html:155 templates/js/translated/part.js:1033
+#: templates/js/translated/search.js:172 templates/js/translated/stock.js:2645
#: users/models.py:41
msgid "Stock Items"
msgstr "Towary"
@@ -4261,7 +4309,7 @@ msgstr "Klienci"
msgid "New Customer"
msgstr "Nowy klient"
-#: company/views.py:52 templates/js/translated/search.js:234
+#: company/views.py:52 templates/js/translated/search.js:192
msgid "Companies"
msgstr "Firmy"
@@ -4269,72 +4317,76 @@ msgstr "Firmy"
msgid "New Company"
msgstr "Nowa firma"
-#: label/models.py:104
+#: label/models.py:112
msgid "Label name"
msgstr "Nazwa etykiety"
-#: label/models.py:111
+#: label/models.py:119
msgid "Label description"
msgstr "Opis etykiety"
-#: label/models.py:118
+#: label/models.py:126
msgid "Label"
msgstr "Etykieta"
-#: label/models.py:119
+#: label/models.py:127
msgid "Label template file"
msgstr ""
-#: label/models.py:125 report/models.py:273
+#: label/models.py:133 report/models.py:273
msgid "Enabled"
msgstr "Aktywne"
-#: label/models.py:126
+#: label/models.py:134
msgid "Label template is enabled"
msgstr ""
-#: label/models.py:131
+#: label/models.py:139
msgid "Width [mm]"
msgstr "Szerokość [mm]"
-#: label/models.py:132
+#: label/models.py:140
msgid "Label width, specified in mm"
msgstr ""
-#: label/models.py:138
+#: label/models.py:146
msgid "Height [mm]"
msgstr "Wysokość [mm]"
-#: label/models.py:139
+#: label/models.py:147
msgid "Label height, specified in mm"
msgstr ""
-#: label/models.py:145 report/models.py:266
+#: label/models.py:153 report/models.py:266
msgid "Filename Pattern"
msgstr "Wzór nazwy pliku"
-#: label/models.py:146
+#: label/models.py:154
msgid "Pattern for generating label filenames"
msgstr ""
-#: label/models.py:242
+#: label/models.py:250
msgid "Query filters (comma-separated list of key=value pairs),"
msgstr ""
-#: label/models.py:243 label/models.py:284 label/models.py:312
-#: report/models.py:294 report/models.py:452 report/models.py:490
-#: report/models.py:528
+#: label/models.py:251 label/models.py:292 label/models.py:320
+#: label/models.py:356 report/models.py:294 report/models.py:454
+#: report/models.py:492 report/models.py:530
msgid "Filters"
msgstr "Filtry"
-#: label/models.py:283
+#: label/models.py:291
msgid "Query filters (comma-separated list of key=value pairs"
msgstr ""
-#: label/models.py:311
+#: label/models.py:319
msgid "Part query filters (comma-separated value of key=value pairs)"
msgstr ""
+#: label/models.py:355
+msgid "Query filters (comma-separated list of key=value pairs)"
+msgstr ""
+
#: label/templates/label/part/part_label.html:31
#: label/templates/label/stockitem/qr.html:21
#: label/templates/label/stocklocation/qr.html:21
@@ -4352,8 +4404,8 @@ msgstr ""
#: report/templates/report/inventree_po_report_base.html:31
#: report/templates/report/inventree_so_report_base.html:31
#: templates/js/translated/order.js:327
-#: templates/js/translated/purchase_order.js:2093
-#: templates/js/translated/sales_order.js:1827
+#: templates/js/translated/purchase_order.js:2103
+#: templates/js/translated/sales_order.js:1839
msgid "Total Price"
msgstr "Cena całkowita"
@@ -4361,30 +4413,30 @@ msgstr "Cena całkowita"
msgid "No matching purchase order found"
msgstr ""
-#: order/api.py:1452 order/models.py:1178 order/models.py:1262
+#: order/api.py:1452 order/models.py:1191 order/models.py:1275
#: order/templates/order/order_base.html:9
#: order/templates/order/order_base.html:18
#: report/templates/report/inventree_po_report_base.html:14
#: stock/templates/stock/item_base.html:177
#: templates/email/overdue_purchase_order.html:15
-#: templates/js/translated/part.js:1718 templates/js/translated/pricing.js:790
-#: templates/js/translated/purchase_order.js:154
-#: templates/js/translated/purchase_order.js:748
-#: templates/js/translated/purchase_order.js:1637
-#: templates/js/translated/stock.js:1996 templates/js/translated/stock.js:2644
+#: templates/js/translated/part.js:1717 templates/js/translated/pricing.js:790
+#: templates/js/translated/purchase_order.js:165
+#: templates/js/translated/purchase_order.js:759
+#: templates/js/translated/purchase_order.js:1652
+#: templates/js/translated/stock.js:2153 templates/js/translated/stock.js:2775
msgid "Purchase Order"
msgstr "Zlecenie zakupu"
-#: order/api.py:1456 order/models.py:1909 order/models.py:1955
+#: order/api.py:1456 order/models.py:1922 order/models.py:1968
#: order/templates/order/return_order_base.html:9
#: order/templates/order/return_order_base.html:28
#: report/templates/report/inventree_return_order_report_base.html:13
-#: templates/js/translated/return_order.js:269
-#: templates/js/translated/stock.js:2678
+#: templates/js/translated/return_order.js:281
+#: templates/js/translated/stock.js:2809
msgid "Return Order"
msgstr ""
-#: order/api.py:1458 templates/js/translated/sales_order.js:1030
+#: order/api.py:1458 templates/js/translated/sales_order.js:1042
msgid "Unknown"
msgstr ""
@@ -4392,11 +4444,11 @@ msgstr ""
msgid "Total price for this order"
msgstr ""
-#: order/models.py:79 order/serializers.py:49
+#: order/models.py:79 order/serializers.py:50
msgid "Order Currency"
msgstr ""
-#: order/models.py:81 order/serializers.py:50
+#: order/models.py:81 order/serializers.py:51
msgid "Currency for this order (leave blank to use company default)"
msgstr ""
@@ -4408,492 +4460,496 @@ msgstr ""
msgid "Order description (optional)"
msgstr ""
-#: order/models.py:234
+#: order/models.py:237
msgid "Select project code for this order"
msgstr ""
-#: order/models.py:236 order/models.py:1094 order/models.py:1454
+#: order/models.py:240 order/models.py:1107 order/models.py:1467
msgid "Link to external page"
msgstr "Link do zewnętrznej witryny"
-#: order/models.py:241
+#: order/models.py:245
msgid "Expected date for order delivery. Order will be overdue after this date."
msgstr ""
-#: order/models.py:250
+#: order/models.py:254
msgid "Created By"
msgstr "Utworzony przez"
-#: order/models.py:257
+#: order/models.py:261
msgid "User or group responsible for this order"
msgstr "Użytkownik lub grupa odpowiedzialna za to zamówienie"
-#: order/models.py:267
+#: order/models.py:271
msgid "Point of contact for this order"
msgstr ""
-#: order/models.py:360 order/models.py:766
+#: order/models.py:280
+msgid "Company address for this order"
+msgstr ""
+
+#: order/models.py:373 order/models.py:779
msgid "Order reference"
msgstr "Odniesienie zamówienia"
-#: order/models.py:368 order/models.py:791
+#: order/models.py:381 order/models.py:804
msgid "Purchase order status"
msgstr "Status zamówienia zakupu"
-#: order/models.py:383
+#: order/models.py:396
msgid "Company from which the items are being ordered"
msgstr ""
-#: order/models.py:391 order/templates/order/order_base.html:152
-#: templates/js/translated/purchase_order.js:1662
+#: order/models.py:404 order/templates/order/order_base.html:148
+#: templates/js/translated/purchase_order.js:1677
msgid "Supplier Reference"
msgstr ""
-#: order/models.py:391
+#: order/models.py:404
msgid "Supplier order reference code"
msgstr ""
-#: order/models.py:398
+#: order/models.py:411
msgid "received by"
msgstr "odebrane przez"
-#: order/models.py:403 order/models.py:1761
+#: order/models.py:416 order/models.py:1774
msgid "Issue Date"
msgstr "Data wydania"
-#: order/models.py:404 order/models.py:1762
+#: order/models.py:417 order/models.py:1775
msgid "Date order was issued"
msgstr "Data wystawienia zamówienia"
-#: order/models.py:410 order/models.py:1768
+#: order/models.py:423 order/models.py:1781
msgid "Date order was completed"
msgstr ""
-#: order/models.py:445
+#: order/models.py:458
msgid "Part supplier must match PO supplier"
msgstr ""
-#: order/models.py:606
+#: order/models.py:619
msgid "Quantity must be a positive number"
msgstr "Wartość musi być liczbą dodatnią"
-#: order/models.py:780
+#: order/models.py:793
msgid "Company to which the items are being sold"
msgstr ""
-#: order/models.py:799 order/models.py:1755
+#: order/models.py:812 order/models.py:1768
msgid "Customer Reference "
msgstr ""
-#: order/models.py:799 order/models.py:1756
+#: order/models.py:812 order/models.py:1769
msgid "Customer order reference code"
msgstr ""
-#: order/models.py:801 order/models.py:1408
-#: templates/js/translated/sales_order.js:831
-#: templates/js/translated/sales_order.js:1012
+#: order/models.py:814 order/models.py:1421
+#: templates/js/translated/sales_order.js:843
+#: templates/js/translated/sales_order.js:1024
msgid "Shipment Date"
msgstr "Data wysyłki"
-#: order/models.py:808
+#: order/models.py:821
msgid "shipped by"
msgstr "wysłane przez"
-#: order/models.py:857
+#: order/models.py:870
msgid "Order cannot be completed as no parts have been assigned"
msgstr ""
-#: order/models.py:861
+#: order/models.py:874
msgid "Only an open order can be marked as complete"
msgstr ""
-#: order/models.py:864 templates/js/translated/sales_order.js:491
+#: order/models.py:877 templates/js/translated/sales_order.js:503
msgid "Order cannot be completed as there are incomplete shipments"
msgstr ""
-#: order/models.py:867
+#: order/models.py:880
msgid "Order cannot be completed as there are incomplete line items"
msgstr ""
-#: order/models.py:1074
+#: order/models.py:1087
msgid "Item quantity"
msgstr "Ilość elementów"
-#: order/models.py:1087
+#: order/models.py:1100
msgid "Line item reference"
msgstr ""
-#: order/models.py:1089
+#: order/models.py:1102
msgid "Line item notes"
msgstr ""
-#: order/models.py:1100
+#: order/models.py:1113
msgid "Target date for this line item (leave blank to use the target date from the order)"
msgstr ""
-#: order/models.py:1118
+#: order/models.py:1131
msgid "Line item description (optional)"
msgstr ""
-#: order/models.py:1123
+#: order/models.py:1136
msgid "Context"
msgstr ""
-#: order/models.py:1124
+#: order/models.py:1137
msgid "Additional context for this line"
msgstr ""
-#: order/models.py:1133
+#: order/models.py:1146
msgid "Unit price"
msgstr ""
-#: order/models.py:1163
+#: order/models.py:1176
msgid "Supplier part must match supplier"
msgstr ""
-#: order/models.py:1171
+#: order/models.py:1184
msgid "deleted"
msgstr ""
-#: order/models.py:1177 order/models.py:1262 order/models.py:1303
-#: order/models.py:1402 order/models.py:1551 order/models.py:1908
-#: order/models.py:1955 templates/js/translated/sales_order.js:1474
+#: order/models.py:1190 order/models.py:1275 order/models.py:1316
+#: order/models.py:1415 order/models.py:1564 order/models.py:1921
+#: order/models.py:1968 templates/js/translated/sales_order.js:1486
msgid "Order"
msgstr "Zamówienie"
-#: order/models.py:1196
+#: order/models.py:1209
msgid "Supplier part"
msgstr ""
-#: order/models.py:1203 order/templates/order/order_base.html:200
-#: templates/js/translated/part.js:1841 templates/js/translated/part.js:1872
-#: templates/js/translated/purchase_order.js:1276
-#: templates/js/translated/purchase_order.js:2137
-#: templates/js/translated/return_order.js:748
-#: templates/js/translated/table_filters.js:90
-#: templates/js/translated/table_filters.js:515
+#: order/models.py:1216 order/templates/order/order_base.html:196
+#: templates/js/translated/part.js:1840 templates/js/translated/part.js:1871
+#: templates/js/translated/purchase_order.js:1291
+#: templates/js/translated/purchase_order.js:2147
+#: templates/js/translated/return_order.js:760
+#: templates/js/translated/table_filters.js:96
+#: templates/js/translated/table_filters.js:537
msgid "Received"
msgstr "Odebrane"
-#: order/models.py:1204
+#: order/models.py:1217
msgid "Number of items received"
msgstr ""
-#: order/models.py:1211 stock/models.py:823 stock/serializers.py:252
+#: order/models.py:1224 stock/models.py:823 stock/serializers.py:314
#: stock/templates/stock/item_base.html:184
-#: templates/js/translated/stock.js:2047
+#: templates/js/translated/stock.js:2204
msgid "Purchase Price"
msgstr "Cena zakupu"
-#: order/models.py:1212
+#: order/models.py:1225
msgid "Unit purchase price"
msgstr "Cena zakupu jednostkowego"
-#: order/models.py:1225
+#: order/models.py:1238
msgid "Where does the Purchaser want this item to be stored?"
msgstr "Gdzie kupujący chce przechowywać ten przedmiot?"
-#: order/models.py:1291
+#: order/models.py:1304
msgid "Virtual part cannot be assigned to a sales order"
msgstr ""
-#: order/models.py:1296
+#: order/models.py:1309
msgid "Only salable parts can be assigned to a sales order"
msgstr ""
-#: order/models.py:1322 part/templates/part/part_pricing.html:107
+#: order/models.py:1335 part/templates/part/part_pricing.html:107
#: part/templates/part/prices.html:128 templates/js/translated/pricing.js:943
msgid "Sale Price"
msgstr "Cena sprzedaży"
-#: order/models.py:1323
+#: order/models.py:1336
msgid "Unit sale price"
msgstr "Jednostkowa cena sprzedaży"
-#: order/models.py:1333
+#: order/models.py:1346
msgid "Shipped quantity"
msgstr "Wysłana ilość"
-#: order/models.py:1409
+#: order/models.py:1422
msgid "Date of shipment"
msgstr "Data wysyłki"
-#: order/models.py:1414 templates/js/translated/sales_order.js:1024
+#: order/models.py:1427 templates/js/translated/sales_order.js:1036
msgid "Delivery Date"
msgstr ""
-#: order/models.py:1415
+#: order/models.py:1428
msgid "Date of delivery of shipment"
msgstr ""
-#: order/models.py:1422
+#: order/models.py:1435
msgid "Checked By"
msgstr "Sprawdzone przez"
-#: order/models.py:1423
+#: order/models.py:1436
msgid "User who checked this shipment"
msgstr "Użytkownik, który sprawdził tę wysyłkę"
-#: order/models.py:1430 order/models.py:1627 order/serializers.py:1248
-#: order/serializers.py:1376 templates/js/translated/model_renderers.js:415
+#: order/models.py:1443 order/models.py:1640 order/serializers.py:1254
+#: order/serializers.py:1382 templates/js/translated/model_renderers.js:429
msgid "Shipment"
msgstr "Przesyłka"
-#: order/models.py:1431
+#: order/models.py:1444
msgid "Shipment number"
msgstr "Numer przesyłki"
-#: order/models.py:1439
+#: order/models.py:1452
msgid "Tracking Number"
msgstr "Numer śledzenia"
-#: order/models.py:1440
+#: order/models.py:1453
msgid "Shipment tracking information"
msgstr "Informacje o śledzeniu przesyłki"
-#: order/models.py:1447
+#: order/models.py:1460
msgid "Invoice Number"
msgstr ""
-#: order/models.py:1448
+#: order/models.py:1461
msgid "Reference number for associated invoice"
msgstr ""
-#: order/models.py:1470
+#: order/models.py:1483
msgid "Shipment has already been sent"
msgstr "Przesyłka została już wysłana"
-#: order/models.py:1473
+#: order/models.py:1486
msgid "Shipment has no allocated stock items"
msgstr ""
-#: order/models.py:1586 order/models.py:1588
+#: order/models.py:1599 order/models.py:1601
msgid "Stock item has not been assigned"
msgstr ""
-#: order/models.py:1592
+#: order/models.py:1605
msgid "Cannot allocate stock item to a line with a different part"
msgstr ""
-#: order/models.py:1594
+#: order/models.py:1607
msgid "Cannot allocate stock to a line without a part"
msgstr ""
-#: order/models.py:1597
+#: order/models.py:1610
msgid "Allocation quantity cannot exceed stock quantity"
msgstr "Zarezerwowana ilość nie może przekraczać ilości na stanie"
-#: order/models.py:1607 order/serializers.py:1110
+#: order/models.py:1620 order/serializers.py:1116
msgid "Quantity must be 1 for serialized stock item"
msgstr ""
-#: order/models.py:1610
+#: order/models.py:1623
msgid "Sales order does not match shipment"
msgstr ""
-#: order/models.py:1611
+#: order/models.py:1624
msgid "Shipment does not match sales order"
msgstr ""
-#: order/models.py:1619
+#: order/models.py:1632
msgid "Line"
msgstr "Linia"
-#: order/models.py:1628
+#: order/models.py:1641
msgid "Sales order shipment reference"
msgstr ""
-#: order/models.py:1641 order/models.py:1916
-#: templates/js/translated/return_order.js:706
+#: order/models.py:1654 order/models.py:1929
+#: templates/js/translated/return_order.js:718
msgid "Item"
msgstr "Komponent"
-#: order/models.py:1642
+#: order/models.py:1655
msgid "Select stock item to allocate"
msgstr ""
-#: order/models.py:1645
+#: order/models.py:1658
msgid "Enter stock allocation quantity"
msgstr ""
-#: order/models.py:1725
+#: order/models.py:1738
msgid "Return Order reference"
msgstr ""
-#: order/models.py:1739
+#: order/models.py:1752
msgid "Company from which items are being returned"
msgstr ""
-#: order/models.py:1750
+#: order/models.py:1763
msgid "Return order status"
msgstr ""
-#: order/models.py:1901
+#: order/models.py:1914
msgid "Only serialized items can be assigned to a Return Order"
msgstr ""
-#: order/models.py:1917
+#: order/models.py:1930
msgid "Select item to return from customer"
msgstr ""
-#: order/models.py:1922
+#: order/models.py:1935
msgid "Received Date"
msgstr ""
-#: order/models.py:1923
+#: order/models.py:1936
msgid "The date this this return item was received"
msgstr ""
-#: order/models.py:1934 templates/js/translated/return_order.js:717
-#: templates/js/translated/table_filters.js:93
+#: order/models.py:1947 templates/js/translated/return_order.js:729
+#: templates/js/translated/table_filters.js:99
msgid "Outcome"
msgstr ""
-#: order/models.py:1934
+#: order/models.py:1947
msgid "Outcome for this line item"
msgstr ""
-#: order/models.py:1940
+#: order/models.py:1953
msgid "Cost associated with return or repair for this line item"
msgstr ""
-#: order/serializers.py:247
+#: order/serializers.py:253
msgid "Order cannot be cancelled"
msgstr "Zamówienie nie może zostać anulowane"
-#: order/serializers.py:262 order/serializers.py:1128
+#: order/serializers.py:268 order/serializers.py:1134
msgid "Allow order to be closed with incomplete line items"
msgstr ""
-#: order/serializers.py:273 order/serializers.py:1139
+#: order/serializers.py:279 order/serializers.py:1145
msgid "Order has incomplete line items"
msgstr ""
-#: order/serializers.py:386
+#: order/serializers.py:392
msgid "Order is not open"
msgstr ""
-#: order/serializers.py:404
+#: order/serializers.py:410
msgid "Purchase price currency"
msgstr ""
-#: order/serializers.py:422
+#: order/serializers.py:428
msgid "Supplier part must be specified"
msgstr ""
-#: order/serializers.py:427
+#: order/serializers.py:433
msgid "Purchase order must be specified"
msgstr ""
-#: order/serializers.py:433
+#: order/serializers.py:439
msgid "Supplier must match purchase order"
msgstr ""
-#: order/serializers.py:434
+#: order/serializers.py:440
msgid "Purchase order must match supplier"
msgstr ""
-#: order/serializers.py:472 order/serializers.py:1216
+#: order/serializers.py:478 order/serializers.py:1222
msgid "Line Item"
msgstr ""
-#: order/serializers.py:478
+#: order/serializers.py:484
msgid "Line item does not match purchase order"
msgstr ""
-#: order/serializers.py:488 order/serializers.py:607 order/serializers.py:1589
+#: order/serializers.py:494 order/serializers.py:613 order/serializers.py:1595
msgid "Select destination location for received items"
msgstr ""
-#: order/serializers.py:507 templates/js/translated/purchase_order.js:1100
+#: order/serializers.py:513 templates/js/translated/purchase_order.js:1115
msgid "Enter batch code for incoming stock items"
msgstr ""
-#: order/serializers.py:515 templates/js/translated/purchase_order.js:1124
+#: order/serializers.py:521 templates/js/translated/purchase_order.js:1139
msgid "Enter serial numbers for incoming stock items"
msgstr ""
-#: order/serializers.py:528 templates/js/translated/barcode.js:52
+#: order/serializers.py:534 templates/js/translated/barcode.js:52
msgid "Barcode"
msgstr "Kod kreskowy"
-#: order/serializers.py:529
+#: order/serializers.py:535
msgid "Scanned barcode"
msgstr ""
-#: order/serializers.py:545
+#: order/serializers.py:551
msgid "Barcode is already in use"
msgstr ""
-#: order/serializers.py:569
+#: order/serializers.py:575
msgid "An integer quantity must be provided for trackable parts"
msgstr ""
-#: order/serializers.py:623 order/serializers.py:1604
+#: order/serializers.py:629 order/serializers.py:1610
msgid "Line items must be provided"
msgstr ""
-#: order/serializers.py:640
+#: order/serializers.py:646
msgid "Destination location must be specified"
msgstr ""
-#: order/serializers.py:651
+#: order/serializers.py:657
msgid "Supplied barcode values must be unique"
msgstr ""
-#: order/serializers.py:950
+#: order/serializers.py:956
msgid "Sale price currency"
msgstr ""
-#: order/serializers.py:1007
+#: order/serializers.py:1013
msgid "No shipment details provided"
msgstr ""
-#: order/serializers.py:1071 order/serializers.py:1225
+#: order/serializers.py:1077 order/serializers.py:1231
msgid "Line item is not associated with this order"
msgstr ""
-#: order/serializers.py:1093
+#: order/serializers.py:1099
msgid "Quantity must be positive"
msgstr ""
-#: order/serializers.py:1238
+#: order/serializers.py:1244
msgid "Enter serial numbers to allocate"
msgstr ""
-#: order/serializers.py:1260 order/serializers.py:1384
+#: order/serializers.py:1266 order/serializers.py:1390
msgid "Shipment has already been shipped"
msgstr ""
-#: order/serializers.py:1263 order/serializers.py:1387
+#: order/serializers.py:1269 order/serializers.py:1393
msgid "Shipment is not associated with this order"
msgstr ""
-#: order/serializers.py:1317
+#: order/serializers.py:1323
msgid "No match found for the following serial numbers"
msgstr ""
-#: order/serializers.py:1327
+#: order/serializers.py:1333
msgid "The following serial numbers are already allocated"
msgstr ""
-#: order/serializers.py:1555
+#: order/serializers.py:1561
msgid "Return order line item"
msgstr ""
-#: order/serializers.py:1562
+#: order/serializers.py:1568
msgid "Line item does not match return order"
msgstr ""
-#: order/serializers.py:1565
+#: order/serializers.py:1571
msgid "Line item has already been received"
msgstr ""
-#: order/serializers.py:1597
+#: order/serializers.py:1603
msgid "Items can only be received against orders which are in progress"
msgstr ""
-#: order/serializers.py:1678
+#: order/serializers.py:1684
msgid "Line price currency"
msgstr ""
@@ -4957,82 +5013,74 @@ msgid "Issue Order"
msgstr ""
#: order/templates/order/order_base.html:83
-msgid "Receive items"
-msgstr ""
-
-#: order/templates/order/order_base.html:85
-msgid "Receive Items"
-msgstr ""
-
-#: order/templates/order/order_base.html:87
#: order/templates/order/return_order_base.html:87
msgid "Mark order as complete"
msgstr "Oznacz zamówienie jako zakończone"
-#: order/templates/order/order_base.html:88
+#: order/templates/order/order_base.html:84
#: order/templates/order/return_order_base.html:88
#: order/templates/order/sales_order_base.html:94
msgid "Complete Order"
msgstr "Kompletne zamówienie"
-#: order/templates/order/order_base.html:95
+#: order/templates/order/order_base.html:91
msgid "Supplier part thumbnail"
msgstr ""
-#: order/templates/order/order_base.html:110
+#: order/templates/order/order_base.html:106
#: order/templates/order/return_order_base.html:102
#: order/templates/order/sales_order_base.html:107
msgid "Order Reference"
msgstr "Numer zamówienia"
-#: order/templates/order/order_base.html:115
+#: order/templates/order/order_base.html:111
#: order/templates/order/return_order_base.html:107
#: order/templates/order/sales_order_base.html:112
msgid "Order Description"
msgstr "Opis zamówienia"
-#: order/templates/order/order_base.html:122
+#: order/templates/order/order_base.html:118
#: order/templates/order/return_order_base.html:114
#: order/templates/order/sales_order_base.html:119
msgid "Order Status"
msgstr "Status zamówienia"
-#: order/templates/order/order_base.html:145
+#: order/templates/order/order_base.html:141
msgid "No suppplier information available"
msgstr ""
-#: order/templates/order/order_base.html:158
+#: order/templates/order/order_base.html:154
#: order/templates/order/sales_order_base.html:158
msgid "Completed Line Items"
msgstr ""
-#: order/templates/order/order_base.html:164
+#: order/templates/order/order_base.html:160
#: order/templates/order/sales_order_base.html:164
#: order/templates/order/sales_order_base.html:174
msgid "Incomplete"
msgstr "Niekompletny"
-#: order/templates/order/order_base.html:183
+#: order/templates/order/order_base.html:179
#: order/templates/order/return_order_base.html:158
#: report/templates/report/inventree_build_order_base.html:121
msgid "Issued"
msgstr "Wydany"
-#: order/templates/order/order_base.html:221
+#: order/templates/order/order_base.html:224
msgid "Total cost"
msgstr ""
-#: order/templates/order/order_base.html:225
-#: order/templates/order/return_order_base.html:193
-#: order/templates/order/sales_order_base.html:233
+#: order/templates/order/order_base.html:228
+#: order/templates/order/return_order_base.html:200
+#: order/templates/order/sales_order_base.html:240
msgid "Total cost could not be calculated"
msgstr ""
-#: order/templates/order/order_base.html:331
+#: order/templates/order/order_base.html:318
msgid "Purchase Order QR Code"
msgstr ""
-#: order/templates/order/order_base.html:343
+#: order/templates/order/order_base.html:330
msgid "Link Barcode to Purchase Order"
msgstr ""
@@ -5085,13 +5133,13 @@ msgstr "Duplikuj wybrane"
#: part/templates/part/import_wizard/ajax_match_references.html:42
#: part/templates/part/import_wizard/match_fields.html:71
#: part/templates/part/import_wizard/match_references.html:49
-#: templates/js/translated/bom.js:132 templates/js/translated/build.js:512
-#: templates/js/translated/build.js:2348
-#: templates/js/translated/purchase_order.js:692
-#: templates/js/translated/purchase_order.js:1206
-#: templates/js/translated/return_order.js:494
-#: templates/js/translated/sales_order.js:1097
-#: templates/js/translated/stock.js:681 templates/js/translated/stock.js:850
+#: templates/js/translated/bom.js:133 templates/js/translated/build.js:518
+#: templates/js/translated/build.js:1555
+#: templates/js/translated/purchase_order.js:703
+#: templates/js/translated/purchase_order.js:1221
+#: templates/js/translated/return_order.js:506
+#: templates/js/translated/sales_order.js:1109
+#: templates/js/translated/stock.js:680 templates/js/translated/stock.js:849
#: templates/patterns/wizard/match_fields.html:70
msgid "Remove row"
msgstr "Usuń wiersz"
@@ -5152,9 +5200,9 @@ msgstr ""
#: order/templates/order/purchase_order_detail.html:27
#: order/templates/order/return_order_detail.html:24
#: order/templates/order/sales_order_detail.html:24
-#: templates/js/translated/purchase_order.js:419
-#: templates/js/translated/return_order.js:447
-#: templates/js/translated/sales_order.js:222
+#: templates/js/translated/purchase_order.js:430
+#: templates/js/translated/return_order.js:459
+#: templates/js/translated/sales_order.js:234
msgid "Add Line Item"
msgstr "Dodaj element zamówienia"
@@ -5165,30 +5213,25 @@ msgstr "Dodaj element zamówienia"
msgid "Receive Line Items"
msgstr ""
-#: order/templates/order/purchase_order_detail.html:49
#: order/templates/order/purchase_order_detail.html:50
-msgid "Delete Line Items"
-msgstr ""
-
-#: order/templates/order/purchase_order_detail.html:66
-#: order/templates/order/return_order_detail.html:47
-#: order/templates/order/sales_order_detail.html:43
+#: order/templates/order/return_order_detail.html:45
+#: order/templates/order/sales_order_detail.html:41
msgid "Extra Lines"
msgstr ""
-#: order/templates/order/purchase_order_detail.html:72
-#: order/templates/order/return_order_detail.html:53
-#: order/templates/order/sales_order_detail.html:49
+#: order/templates/order/purchase_order_detail.html:56
+#: order/templates/order/return_order_detail.html:51
+#: order/templates/order/sales_order_detail.html:47
msgid "Add Extra Line"
msgstr ""
-#: order/templates/order/purchase_order_detail.html:92
+#: order/templates/order/purchase_order_detail.html:74
msgid "Received Items"
msgstr "Otrzymane elementy"
-#: order/templates/order/purchase_order_detail.html:117
-#: order/templates/order/return_order_detail.html:89
-#: order/templates/order/sales_order_detail.html:149
+#: order/templates/order/purchase_order_detail.html:99
+#: order/templates/order/return_order_detail.html:85
+#: order/templates/order/sales_order_detail.html:139
msgid "Order Notes"
msgstr "Notatki zamówień"
@@ -5208,29 +5251,29 @@ msgstr ""
#: order/templates/order/return_order_base.html:139
#: order/templates/order/sales_order_base.html:152
-#: templates/js/translated/return_order.js:297
-#: templates/js/translated/sales_order.js:785
+#: templates/js/translated/return_order.js:309
+#: templates/js/translated/sales_order.js:797
msgid "Customer Reference"
msgstr ""
-#: order/templates/order/return_order_base.html:189
-#: order/templates/order/sales_order_base.html:229
+#: order/templates/order/return_order_base.html:196
+#: order/templates/order/sales_order_base.html:236
#: part/templates/part/part_pricing.html:32
#: part/templates/part/part_pricing.html:58
#: part/templates/part/part_pricing.html:99
#: part/templates/part/part_pricing.html:114
-#: templates/js/translated/part.js:1046
-#: templates/js/translated/purchase_order.js:1712
-#: templates/js/translated/return_order.js:369
-#: templates/js/translated/sales_order.js:843
+#: templates/js/translated/part.js:1045
+#: templates/js/translated/purchase_order.js:1727
+#: templates/js/translated/return_order.js:381
+#: templates/js/translated/sales_order.js:855
msgid "Total Cost"
msgstr "Całkowity Koszt"
-#: order/templates/order/return_order_base.html:257
+#: order/templates/order/return_order_base.html:264
msgid "Return Order QR Code"
msgstr ""
-#: order/templates/order/return_order_base.html:269
+#: order/templates/order/return_order_base.html:276
msgid "Link Barcode to Return Order"
msgstr ""
@@ -5248,7 +5291,7 @@ msgid "Ship Items"
msgstr ""
#: order/templates/order/sales_order_base.html:93
-#: templates/js/translated/sales_order.js:469
+#: templates/js/translated/sales_order.js:481
msgid "Complete Sales Order"
msgstr ""
@@ -5257,16 +5300,16 @@ msgid "This Sales Order has not been fully allocated"
msgstr ""
#: order/templates/order/sales_order_base.html:170
-#: order/templates/order/sales_order_detail.html:105
+#: order/templates/order/sales_order_detail.html:99
#: order/templates/order/so_sidebar.html:11
msgid "Completed Shipments"
msgstr ""
-#: order/templates/order/sales_order_base.html:306
+#: order/templates/order/sales_order_base.html:313
msgid "Sales Order QR Code"
msgstr ""
-#: order/templates/order/sales_order_base.html:318
+#: order/templates/order/sales_order_base.html:325
msgid "Link Barcode to Sales Order"
msgstr ""
@@ -5274,18 +5317,17 @@ msgstr ""
msgid "Sales Order Items"
msgstr ""
-#: order/templates/order/sales_order_detail.html:71
-#: order/templates/order/so_sidebar.html:8 templates/InvenTree/index.html:332
+#: order/templates/order/sales_order_detail.html:67
+#: order/templates/order/so_sidebar.html:8 templates/InvenTree/index.html:284
msgid "Pending Shipments"
msgstr "Oczekujące przesyłki"
-#: order/templates/order/sales_order_detail.html:75
-#: templates/attachment_table.html:6 templates/js/translated/bom.js:1236
-#: templates/js/translated/build.js:2249
+#: order/templates/order/sales_order_detail.html:71
+#: templates/js/translated/bom.js:1256 templates/js/translated/filters.js:297
msgid "Actions"
msgstr "Akcje"
-#: order/templates/order/sales_order_detail.html:84
+#: order/templates/order/sales_order_detail.html:80
msgid "New Shipment"
msgstr "Nowa wysyłka"
@@ -5311,12 +5353,12 @@ msgstr ""
msgid "Updated {part} unit-price to {price} and quantity to {qty}"
msgstr ""
-#: part/admin.py:33 part/admin.py:273 part/models.py:3667 part/tasks.py:288
+#: part/admin.py:33 part/admin.py:273 part/models.py:3716 part/tasks.py:288
#: stock/admin.py:101
msgid "Part ID"
msgstr "ID komponentu"
-#: part/admin.py:34 part/admin.py:275 part/models.py:3671 part/tasks.py:289
+#: part/admin.py:34 part/admin.py:275 part/models.py:3720 part/tasks.py:289
#: stock/admin.py:102
msgid "Part Name"
msgstr "Nazwa komponentu"
@@ -5325,19 +5367,19 @@ msgstr "Nazwa komponentu"
msgid "Part Description"
msgstr ""
-#: part/admin.py:36 part/models.py:889 part/templates/part/part_base.html:271
-#: templates/js/translated/part.js:1200 templates/js/translated/part.js:2233
-#: templates/js/translated/stock.js:1795
+#: part/admin.py:36 part/models.py:890 part/templates/part/part_base.html:271
+#: templates/js/translated/part.js:1199 templates/js/translated/part.js:2309
+#: templates/js/translated/stock.js:1952
msgid "IPN"
msgstr ""
-#: part/admin.py:37 part/models.py:896 part/templates/part/part_base.html:279
-#: report/models.py:179 templates/js/translated/part.js:1205
-#: templates/js/translated/part.js:2239
+#: part/admin.py:37 part/models.py:897 part/templates/part/part_base.html:279
+#: report/models.py:179 templates/js/translated/part.js:1204
+#: templates/js/translated/part.js:2315
msgid "Revision"
msgstr "Wersja"
-#: part/admin.py:38 part/admin.py:198 part/models.py:875
+#: part/admin.py:38 part/admin.py:198 part/models.py:876
#: part/templates/part/category.html:93 part/templates/part/part_base.html:300
msgid "Keywords"
msgstr "Słowa kluczowe"
@@ -5358,24 +5400,24 @@ msgstr ""
msgid "Default Supplier ID"
msgstr ""
-#: part/admin.py:46 part/models.py:864 part/templates/part/part_base.html:179
+#: part/admin.py:46 part/models.py:865 part/templates/part/part_base.html:179
msgid "Variant Of"
msgstr "Wariant"
-#: part/admin.py:47 part/models.py:980 part/templates/part/part_base.html:205
+#: part/admin.py:47 part/models.py:981 part/templates/part/part_base.html:205
msgid "Minimum Stock"
msgstr "Minimalny stan magazynowy"
#: part/admin.py:61 part/templates/part/part_base.html:199
-#: templates/js/translated/company.js:1299
-#: templates/js/translated/table_filters.js:301
+#: templates/js/translated/company.js:1720
+#: templates/js/translated/table_filters.js:307
msgid "In Stock"
msgstr "Na stanie"
#: part/admin.py:62 part/bom.py:178 part/templates/part/part_base.html:212
-#: templates/js/translated/bom.js:1167 templates/js/translated/build.js:2191
-#: templates/js/translated/part.js:687 templates/js/translated/part.js:2123
-#: templates/js/translated/table_filters.js:140
+#: templates/js/translated/bom.js:1187 templates/js/translated/build.js:2541
+#: templates/js/translated/part.js:686 templates/js/translated/part.js:2122
+#: templates/js/translated/table_filters.js:146
msgid "On Order"
msgstr "W Zamówieniu"
@@ -5383,23 +5425,16 @@ msgstr "W Zamówieniu"
msgid "Used In"
msgstr "Użyte w"
-#: part/admin.py:64 templates/js/translated/build.js:2203
-#: templates/js/translated/build.js:2465 templates/js/translated/build.js:3052
-#: templates/js/translated/sales_order.js:1906
-#: templates/js/translated/table_filters.js:488
-msgid "Allocated"
-msgstr "Przydzielono"
-
#: part/admin.py:65 part/templates/part/part_base.html:243 stock/admin.py:124
-#: templates/js/translated/part.js:692 templates/js/translated/part.js:2127
+#: templates/js/translated/part.js:691 templates/js/translated/part.js:2126
msgid "Building"
msgstr ""
-#: part/admin.py:66 part/models.py:2930 templates/js/translated/part.js:943
+#: part/admin.py:66 part/models.py:2964 templates/js/translated/part.js:942
msgid "Minimum Cost"
msgstr ""
-#: part/admin.py:67 part/models.py:2936 templates/js/translated/part.js:953
+#: part/admin.py:67 part/models.py:2970 templates/js/translated/part.js:952
msgid "Maximum Cost"
msgstr ""
@@ -5416,13 +5451,13 @@ msgstr ""
msgid "Category Path"
msgstr "Ścieżka kategorii"
-#: part/admin.py:202 part/models.py:392 part/templates/part/cat_link.html:3
-#: part/templates/part/category.html:23 part/templates/part/category.html:140
-#: part/templates/part/category.html:160
+#: part/admin.py:202 part/models.py:393 part/serializers.py:307
+#: part/templates/part/cat_link.html:3 part/templates/part/category.html:23
+#: part/templates/part/category.html:140 part/templates/part/category.html:160
#: part/templates/part/category_sidebar.html:9
-#: templates/InvenTree/index.html:86 templates/InvenTree/search.html:84
+#: templates/InvenTree/index.html:36 templates/InvenTree/search.html:84
#: templates/InvenTree/settings/sidebar.html:45
-#: templates/js/translated/part.js:2754 templates/js/translated/search.js:172
+#: templates/js/translated/part.js:2739 templates/js/translated/search.js:130
#: templates/navbar.html:24 users/models.py:38
msgid "Parts"
msgstr "Części"
@@ -5439,7 +5474,7 @@ msgstr ""
msgid "Parent IPN"
msgstr ""
-#: part/admin.py:274 part/models.py:3675
+#: part/admin.py:274 part/models.py:3724
msgid "Part IPN"
msgstr "IPN komponentu"
@@ -5453,35 +5488,35 @@ msgstr ""
msgid "Maximum Price"
msgstr ""
-#: part/api.py:498
+#: part/api.py:501
msgid "Incoming Purchase Order"
msgstr ""
-#: part/api.py:518
+#: part/api.py:521
msgid "Outgoing Sales Order"
msgstr ""
-#: part/api.py:536
+#: part/api.py:539
msgid "Stock produced by Build Order"
msgstr ""
-#: part/api.py:622
+#: part/api.py:625
msgid "Stock required for Build Order"
msgstr ""
-#: part/api.py:770
+#: part/api.py:773
msgid "Valid"
msgstr "Ważny"
-#: part/api.py:771
+#: part/api.py:774
msgid "Validate entire Bill of Materials"
msgstr ""
-#: part/api.py:777
+#: part/api.py:780
msgid "This option must be selected"
msgstr "Ta opcja musi być zaznaczona"
-#: part/bom.py:175 part/models.py:127 part/models.py:923
+#: part/bom.py:175 part/models.py:128 part/models.py:924
#: part/templates/part/category.html:115 part/templates/part/part_base.html:369
msgid "Default Location"
msgstr "Domyślna lokalizacja"
@@ -5491,7 +5526,7 @@ msgid "Total Stock"
msgstr ""
#: part/bom.py:177 part/templates/part/part_base.html:194
-#: templates/js/translated/sales_order.js:1873
+#: templates/js/translated/sales_order.js:1885
msgid "Available Stock"
msgstr "Dostępna ilość"
@@ -5499,916 +5534,913 @@ msgstr "Dostępna ilość"
msgid "Input quantity for price calculation"
msgstr ""
-#: part/models.py:75 part/models.py:3616 part/templates/part/category.html:16
+#: part/models.py:76 part/models.py:3665 part/templates/part/category.html:16
#: part/templates/part/part_app_base.html:10
msgid "Part Category"
msgstr "Kategoria komponentu"
-#: part/models.py:76 part/templates/part/category.html:135
-#: templates/InvenTree/search.html:97 templates/js/translated/search.js:200
+#: part/models.py:77 part/templates/part/category.html:135
+#: templates/InvenTree/search.html:97 templates/js/translated/search.js:158
#: users/models.py:37
msgid "Part Categories"
msgstr "Kategorie części"
-#: part/models.py:128
+#: part/models.py:129
msgid "Default location for parts in this category"
msgstr "Domyślna lokalizacja dla komponentów w tej kategorii"
-#: part/models.py:133 stock/models.py:124 templates/js/translated/stock.js:2520
-#: templates/js/translated/table_filters.js:209
-#: templates/js/translated/table_filters.js:229
+#: part/models.py:134 stock/models.py:124 templates/js/translated/stock.js:2651
+#: templates/js/translated/table_filters.js:215
+#: templates/js/translated/table_filters.js:235
msgid "Structural"
msgstr ""
-#: part/models.py:135
+#: part/models.py:136
msgid "Parts may not be directly assigned to a structural category, but may be assigned to child categories."
msgstr ""
-#: part/models.py:139
+#: part/models.py:140
msgid "Default keywords"
msgstr "Domyślne słowa kluczowe"
-#: part/models.py:139
+#: part/models.py:140
msgid "Default keywords for parts in this category"
msgstr ""
-#: part/models.py:144 stock/models.py:113
+#: part/models.py:145 stock/models.py:113
msgid "Icon"
msgstr ""
-#: part/models.py:145 stock/models.py:114
+#: part/models.py:146 stock/models.py:114
msgid "Icon (optional)"
msgstr ""
-#: part/models.py:164
+#: part/models.py:165
msgid "You cannot make this part category structural because some parts are already assigned to it!"
msgstr ""
-#: part/models.py:475
+#: part/models.py:476
msgid "Invalid choice for parent part"
msgstr "Nieprawidłowy wybór dla części nadrzędnej"
-#: part/models.py:517 part/models.py:529
+#: part/models.py:518 part/models.py:530
#, 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:601
+#: part/models.py:602
#, python-brace-format
msgid "IPN must match regex pattern {pat}"
msgstr "IPN musi być zgodny z wyrażeniem regularnym {pat}"
-#: part/models.py:672
+#: part/models.py:673
msgid "Stock item with this serial number already exists"
msgstr ""
-#: part/models.py:803
+#: part/models.py:804
msgid "Duplicate IPN not allowed in part settings"
msgstr ""
-#: part/models.py:808
+#: part/models.py:809
msgid "Part with this Name, IPN and Revision already exists."
msgstr ""
-#: part/models.py:822
+#: part/models.py:823
msgid "Parts cannot be assigned to structural part categories!"
msgstr ""
-#: part/models.py:846 part/models.py:3672
+#: part/models.py:847 part/models.py:3721
msgid "Part name"
msgstr "Nazwa komponentu"
-#: part/models.py:852
+#: part/models.py:853
msgid "Is Template"
msgstr "Czy szablon"
-#: part/models.py:853
+#: part/models.py:854
msgid "Is this part a template part?"
msgstr "Czy ta część stanowi szablon części?"
-#: part/models.py:863
+#: part/models.py:864
msgid "Is this part a variant of another part?"
msgstr "Czy ta część jest wariantem innej części?"
-#: part/models.py:870
+#: part/models.py:871
msgid "Part description (optional)"
msgstr ""
-#: part/models.py:876
+#: part/models.py:877
msgid "Part keywords to improve visibility in search results"
msgstr ""
-#: part/models.py:883 part/models.py:3198 part/models.py:3615
-#: part/serializers.py:848 part/templates/part/part_base.html:262
+#: part/models.py:884 part/models.py:3232 part/models.py:3664
+#: part/serializers.py:320 part/serializers.py:910
+#: part/templates/part/part_base.html:262
#: templates/InvenTree/settings/settings_staff_js.html:204
#: templates/js/translated/notification.js:59
-#: templates/js/translated/part.js:2269 templates/js/translated/part.js:2481
+#: templates/js/translated/part.js:2345
msgid "Category"
msgstr "Kategoria"
-#: part/models.py:884
+#: part/models.py:885
msgid "Part category"
msgstr ""
-#: part/models.py:890
+#: part/models.py:891
msgid "Internal Part Number"
msgstr ""
-#: part/models.py:895
+#: part/models.py:896
msgid "Part revision or version number"
msgstr ""
-#: part/models.py:921
+#: part/models.py:922
msgid "Where is this item normally stored?"
msgstr ""
-#: part/models.py:966 part/templates/part/part_base.html:378
+#: part/models.py:967 part/templates/part/part_base.html:378
msgid "Default Supplier"
msgstr ""
-#: part/models.py:967
+#: part/models.py:968
msgid "Default supplier part"
msgstr ""
-#: part/models.py:974
+#: part/models.py:975
msgid "Default Expiry"
msgstr "Domyślne wygasanie"
-#: part/models.py:975
+#: part/models.py:976
msgid "Expiry time (in days) for stock items of this part"
msgstr ""
-#: part/models.py:981
+#: part/models.py:982
msgid "Minimum allowed stock level"
msgstr ""
-#: part/models.py:988
+#: part/models.py:989
msgid "Units of measure for this part"
msgstr ""
-#: part/models.py:997
+#: part/models.py:998
msgid "Can this part be built from other parts?"
msgstr "Czy ten komponent może być zbudowany z innych komponentów?"
-#: part/models.py:1003
+#: part/models.py:1004
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:1009
+#: part/models.py:1010
msgid "Does this part have tracking for unique items?"
msgstr "Czy ta część wymaga śledzenia każdego towaru z osobna?"
-#: part/models.py:1014
+#: part/models.py:1015
msgid "Can this part be purchased from external suppliers?"
msgstr ""
-#: part/models.py:1019
+#: part/models.py:1020
msgid "Can this part be sold to customers?"
msgstr ""
-#: part/models.py:1024
+#: part/models.py:1025
msgid "Is this part active?"
msgstr "Czy ta część jest aktywna?"
-#: part/models.py:1029
+#: part/models.py:1030
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:1031
+#: part/models.py:1032
msgid "BOM checksum"
msgstr ""
-#: part/models.py:1031
+#: part/models.py:1032
msgid "Stored BOM checksum"
msgstr ""
-#: part/models.py:1034
+#: part/models.py:1035
msgid "BOM checked by"
msgstr ""
-#: part/models.py:1036
+#: part/models.py:1037
msgid "BOM checked date"
msgstr ""
-#: part/models.py:1040
+#: part/models.py:1041
msgid "Creation User"
msgstr "Tworzenie użytkownika"
-#: part/models.py:1042
+#: part/models.py:1043
msgid "User responsible for this part"
msgstr ""
-#: part/models.py:1046 part/templates/part/part_base.html:341
+#: part/models.py:1047 part/templates/part/part_base.html:341
#: stock/templates/stock/item_base.html:447
-#: templates/js/translated/part.js:2331
+#: templates/js/translated/part.js:2407
msgid "Last Stocktake"
msgstr "Ostatnia inwentaryzacja"
-#: part/models.py:1921
+#: part/models.py:1923
msgid "Sell multiple"
msgstr "Sprzedaj wiele"
-#: part/models.py:2853
+#: part/models.py:2887
msgid "Currency used to cache pricing calculations"
msgstr ""
-#: part/models.py:2870
+#: part/models.py:2904
msgid "Minimum BOM Cost"
msgstr ""
-#: part/models.py:2871
+#: part/models.py:2905
msgid "Minimum cost of component parts"
msgstr ""
-#: part/models.py:2876
+#: part/models.py:2910
msgid "Maximum BOM Cost"
msgstr ""
-#: part/models.py:2877
+#: part/models.py:2911
msgid "Maximum cost of component parts"
msgstr ""
-#: part/models.py:2882
+#: part/models.py:2916
msgid "Minimum Purchase Cost"
msgstr ""
-#: part/models.py:2883
+#: part/models.py:2917
msgid "Minimum historical purchase cost"
msgstr ""
-#: part/models.py:2888
+#: part/models.py:2922
msgid "Maximum Purchase Cost"
msgstr ""
-#: part/models.py:2889
+#: part/models.py:2923
msgid "Maximum historical purchase cost"
msgstr ""
-#: part/models.py:2894
+#: part/models.py:2928
msgid "Minimum Internal Price"
msgstr ""
-#: part/models.py:2895
+#: part/models.py:2929
msgid "Minimum cost based on internal price breaks"
msgstr ""
-#: part/models.py:2900
+#: part/models.py:2934
msgid "Maximum Internal Price"
msgstr ""
-#: part/models.py:2901
+#: part/models.py:2935
msgid "Maximum cost based on internal price breaks"
msgstr ""
-#: part/models.py:2906
+#: part/models.py:2940
msgid "Minimum Supplier Price"
msgstr ""
-#: part/models.py:2907
+#: part/models.py:2941
msgid "Minimum price of part from external suppliers"
msgstr ""
-#: part/models.py:2912
+#: part/models.py:2946
msgid "Maximum Supplier Price"
msgstr ""
-#: part/models.py:2913
+#: part/models.py:2947
msgid "Maximum price of part from external suppliers"
msgstr ""
-#: part/models.py:2918
+#: part/models.py:2952
msgid "Minimum Variant Cost"
msgstr ""
-#: part/models.py:2919
+#: part/models.py:2953
msgid "Calculated minimum cost of variant parts"
msgstr ""
-#: part/models.py:2924
+#: part/models.py:2958
msgid "Maximum Variant Cost"
msgstr ""
-#: part/models.py:2925
+#: part/models.py:2959
msgid "Calculated maximum cost of variant parts"
msgstr ""
-#: part/models.py:2931
+#: part/models.py:2965
msgid "Calculated overall minimum cost"
msgstr ""
-#: part/models.py:2937
+#: part/models.py:2971
msgid "Calculated overall maximum cost"
msgstr ""
-#: part/models.py:2942
+#: part/models.py:2976
msgid "Minimum Sale Price"
msgstr ""
-#: part/models.py:2943
+#: part/models.py:2977
msgid "Minimum sale price based on price breaks"
msgstr ""
-#: part/models.py:2948
+#: part/models.py:2982
msgid "Maximum Sale Price"
msgstr ""
-#: part/models.py:2949
+#: part/models.py:2983
msgid "Maximum sale price based on price breaks"
msgstr ""
-#: part/models.py:2954
+#: part/models.py:2988
msgid "Minimum Sale Cost"
msgstr ""
-#: part/models.py:2955
+#: part/models.py:2989
msgid "Minimum historical sale price"
msgstr ""
-#: part/models.py:2960
+#: part/models.py:2994
msgid "Maximum Sale Cost"
msgstr ""
-#: part/models.py:2961
+#: part/models.py:2995
msgid "Maximum historical sale price"
msgstr ""
-#: part/models.py:2980
+#: part/models.py:3014
msgid "Part for stocktake"
msgstr ""
-#: part/models.py:2985
+#: part/models.py:3019
msgid "Item Count"
msgstr ""
-#: part/models.py:2986
+#: part/models.py:3020
msgid "Number of individual stock entries at time of stocktake"
msgstr ""
-#: part/models.py:2993
+#: part/models.py:3027
msgid "Total available stock at time of stocktake"
msgstr ""
-#: part/models.py:2997 part/models.py:3080
+#: part/models.py:3031 part/models.py:3114
#: part/templates/part/part_scheduling.html:13
#: report/templates/report/inventree_test_report_base.html:106
#: templates/InvenTree/settings/plugin_settings.html:37
#: templates/InvenTree/settings/settings_staff_js.html:360
-#: templates/js/translated/part.js:1059 templates/js/translated/pricing.js:812
+#: templates/js/translated/part.js:1058 templates/js/translated/pricing.js:812
#: templates/js/translated/pricing.js:936
-#: templates/js/translated/purchase_order.js:1691
-#: templates/js/translated/stock.js:2558
+#: templates/js/translated/purchase_order.js:1706
+#: templates/js/translated/stock.js:2689
msgid "Date"
msgstr "Data"
-#: part/models.py:2998
+#: part/models.py:3032
msgid "Date stocktake was performed"
msgstr ""
-#: part/models.py:3006
+#: part/models.py:3040
msgid "Additional notes"
msgstr ""
-#: part/models.py:3014
+#: part/models.py:3048
msgid "User who performed this stocktake"
msgstr ""
-#: part/models.py:3019
+#: part/models.py:3053
msgid "Minimum Stock Cost"
msgstr ""
-#: part/models.py:3020
+#: part/models.py:3054
msgid "Estimated minimum cost of stock on hand"
msgstr ""
-#: part/models.py:3025
+#: part/models.py:3059
msgid "Maximum Stock Cost"
msgstr ""
-#: part/models.py:3026
+#: part/models.py:3060
msgid "Estimated maximum cost of stock on hand"
msgstr ""
-#: part/models.py:3087 templates/InvenTree/settings/settings_staff_js.html:349
+#: part/models.py:3121 templates/InvenTree/settings/settings_staff_js.html:349
msgid "Report"
msgstr ""
-#: part/models.py:3088
+#: part/models.py:3122
msgid "Stocktake report file (generated internally)"
msgstr ""
-#: part/models.py:3093 templates/InvenTree/settings/settings_staff_js.html:356
+#: part/models.py:3127 templates/InvenTree/settings/settings_staff_js.html:356
msgid "Part Count"
msgstr ""
-#: part/models.py:3094
+#: part/models.py:3128
msgid "Number of parts covered by stocktake"
msgstr ""
-#: part/models.py:3102
+#: part/models.py:3136
msgid "User who requested this stocktake report"
msgstr ""
-#: part/models.py:3238
+#: part/models.py:3272
msgid "Test templates can only be created for trackable parts"
msgstr ""
-#: part/models.py:3255
+#: part/models.py:3289
msgid "Test with this name already exists for this part"
msgstr ""
-#: part/models.py:3275 templates/js/translated/part.js:2821
+#: part/models.py:3309 templates/js/translated/part.js:2806
msgid "Test Name"
msgstr "Nazwa testu"
-#: part/models.py:3276
+#: part/models.py:3310
msgid "Enter a name for the test"
msgstr ""
-#: part/models.py:3281
+#: part/models.py:3315
msgid "Test Description"
msgstr "Testowy opis"
-#: part/models.py:3282
+#: part/models.py:3316
msgid "Enter description for this test"
msgstr "Wprowadź opis do tego testu"
-#: part/models.py:3287 templates/js/translated/part.js:2830
-#: templates/js/translated/table_filters.js:423
+#: part/models.py:3321 templates/js/translated/part.js:2815
+#: templates/js/translated/table_filters.js:429
msgid "Required"
msgstr "Wymagane"
-#: part/models.py:3288
+#: part/models.py:3322
msgid "Is this test required to pass?"
msgstr ""
-#: part/models.py:3293 templates/js/translated/part.js:2838
+#: part/models.py:3327 templates/js/translated/part.js:2823
msgid "Requires Value"
msgstr "Wymaga wartości"
-#: part/models.py:3294
+#: part/models.py:3328
msgid "Does this test require a value when adding a test result?"
msgstr ""
-#: part/models.py:3299 templates/js/translated/part.js:2845
+#: part/models.py:3333 templates/js/translated/part.js:2830
msgid "Requires Attachment"
msgstr "Wymaga załącznika"
-#: part/models.py:3300
+#: part/models.py:3334
msgid "Does this test require a file attachment when adding a test result?"
msgstr ""
-#: part/models.py:3346
+#: part/models.py:3380
msgid "Checkbox parameters cannot have units"
msgstr ""
-#: part/models.py:3351
+#: part/models.py:3385
msgid "Checkbox parameters cannot have choices"
msgstr ""
-#: part/models.py:3369
+#: part/models.py:3403
msgid "Choices must be unique"
msgstr ""
-#: part/models.py:3385
+#: part/models.py:3419
msgid "Parameter template name must be unique"
msgstr ""
-#: part/models.py:3401
+#: part/models.py:3435
msgid "Parameter Name"
msgstr ""
-#: part/models.py:3407
+#: part/models.py:3441
msgid "Physical units for this parameter"
msgstr ""
-#: part/models.py:3417
+#: part/models.py:3451
msgid "Parameter description"
msgstr ""
-#: part/models.py:3423 templates/js/translated/part.js:1600
-#: templates/js/translated/table_filters.js:734
+#: part/models.py:3457 templates/js/translated/part.js:1599
+#: templates/js/translated/table_filters.js:756
msgid "Checkbox"
msgstr ""
-#: part/models.py:3424
+#: part/models.py:3458
msgid "Is this parameter a checkbox?"
msgstr ""
-#: part/models.py:3429 templates/js/translated/part.js:1609
+#: part/models.py:3463 templates/js/translated/part.js:1608
msgid "Choices"
msgstr ""
-#: part/models.py:3430
+#: part/models.py:3464
msgid "Valid choices for this parameter (comma-separated)"
msgstr ""
-#: part/models.py:3511
+#: part/models.py:3545
msgid "Invalid choice for parameter value"
msgstr ""
-#: part/models.py:3555
+#: part/models.py:3589
msgid "Parent Part"
msgstr "Część nadrzędna"
-#: part/models.py:3560 part/models.py:3621 part/models.py:3622
+#: part/models.py:3594 part/models.py:3670 part/models.py:3671
#: templates/InvenTree/settings/settings_staff_js.html:199
msgid "Parameter Template"
msgstr ""
-#: part/models.py:3565
+#: part/models.py:3599
msgid "Data"
msgstr "Dane"
-#: part/models.py:3565
+#: part/models.py:3599
msgid "Parameter Value"
msgstr "Wartość parametru"
-#: part/models.py:3626 templates/InvenTree/settings/settings_staff_js.html:208
+#: part/models.py:3675 templates/InvenTree/settings/settings_staff_js.html:208
msgid "Default Value"
msgstr "Wartość domyślna"
-#: part/models.py:3627
+#: part/models.py:3676
msgid "Default Parameter Value"
msgstr ""
-#: part/models.py:3664
+#: part/models.py:3713
msgid "Part ID or part name"
msgstr ""
-#: part/models.py:3668
+#: part/models.py:3717
msgid "Unique part ID value"
msgstr "Unikalny wartość ID komponentu"
-#: part/models.py:3676
+#: part/models.py:3725
msgid "Part IPN value"
msgstr "Wartość IPN części"
-#: part/models.py:3679
+#: part/models.py:3728
msgid "Level"
msgstr "Poziom"
-#: part/models.py:3680
+#: part/models.py:3729
msgid "BOM level"
msgstr ""
-#: part/models.py:3764
+#: part/models.py:3735 part/models.py:4113
+msgid "BOM Item"
+msgstr "Element BOM"
+
+#: part/models.py:3808
msgid "Select parent part"
msgstr "Wybierz część nadrzędną"
-#: part/models.py:3772
+#: part/models.py:3816
msgid "Sub part"
msgstr "Podczęść"
-#: part/models.py:3773
+#: part/models.py:3817
msgid "Select part to be used in BOM"
msgstr ""
-#: part/models.py:3779
+#: part/models.py:3823
msgid "BOM quantity for this BOM item"
msgstr ""
-#: part/models.py:3783 part/templates/part/upload_bom.html:58
-#: templates/js/translated/bom.js:971 templates/js/translated/bom.js:998
-#: templates/js/translated/build.js:2113
-#: templates/js/translated/table_filters.js:156
-#: templates/js/translated/table_filters.js:185
-#: templates/js/translated/table_filters.js:500
-msgid "Optional"
-msgstr "Opcjonalne"
-
-#: part/models.py:3784
+#: part/models.py:3828
msgid "This BOM item is optional"
msgstr "Ten element BOM jest opcjonalny"
-#: part/models.py:3789 templates/js/translated/bom.js:967
-#: templates/js/translated/bom.js:1007 templates/js/translated/build.js:2104
-#: templates/js/translated/table_filters.js:160
-#: templates/js/translated/table_filters.js:496
-msgid "Consumable"
-msgstr ""
-
-#: part/models.py:3790
+#: part/models.py:3834
msgid "This BOM item is consumable (it is not tracked in build orders)"
msgstr ""
-#: part/models.py:3794 part/templates/part/upload_bom.html:55
+#: part/models.py:3838 part/templates/part/upload_bom.html:55
msgid "Overage"
msgstr ""
-#: part/models.py:3795
+#: part/models.py:3839
msgid "Estimated build wastage quantity (absolute or percentage)"
msgstr ""
-#: part/models.py:3798
+#: part/models.py:3842
msgid "BOM item reference"
msgstr ""
-#: part/models.py:3801
+#: part/models.py:3845
msgid "BOM item notes"
msgstr "Notatki pozycji BOM"
-#: part/models.py:3805
+#: part/models.py:3849
msgid "Checksum"
msgstr "Suma kontrolna"
-#: part/models.py:3805
+#: part/models.py:3849
msgid "BOM line checksum"
msgstr ""
-#: part/models.py:3810 templates/js/translated/table_filters.js:144
+#: part/models.py:3854 templates/js/translated/table_filters.js:150
msgid "Validated"
msgstr "Zatwierdzone"
-#: part/models.py:3811
+#: part/models.py:3855
msgid "This BOM item has been validated"
msgstr ""
-#: part/models.py:3816 part/templates/part/upload_bom.html:57
-#: templates/js/translated/bom.js:1024
-#: templates/js/translated/table_filters.js:148
-#: templates/js/translated/table_filters.js:181
+#: part/models.py:3860 part/templates/part/upload_bom.html:57
+#: templates/js/translated/bom.js:1042
+#: templates/js/translated/table_filters.js:154
+#: templates/js/translated/table_filters.js:187
msgid "Gets inherited"
msgstr ""
-#: part/models.py:3817
+#: part/models.py:3861
msgid "This BOM item is inherited by BOMs for variant parts"
msgstr ""
-#: part/models.py:3822 part/templates/part/upload_bom.html:56
-#: templates/js/translated/bom.js:1016
+#: part/models.py:3866 part/templates/part/upload_bom.html:56
+#: templates/js/translated/bom.js:1034
msgid "Allow Variants"
msgstr "Zezwalaj na warianty"
-#: part/models.py:3823
+#: part/models.py:3867
msgid "Stock items for variant parts can be used for this BOM item"
msgstr ""
-#: part/models.py:3909 stock/models.py:577
+#: part/models.py:3953 stock/models.py:577
msgid "Quantity must be integer value for trackable parts"
msgstr ""
-#: part/models.py:3918 part/models.py:3920
+#: part/models.py:3962 part/models.py:3964
msgid "Sub part must be specified"
msgstr ""
-#: part/models.py:4036
+#: part/models.py:4080
msgid "BOM Item Substitute"
msgstr ""
-#: part/models.py:4057
+#: part/models.py:4101
msgid "Substitute part cannot be the same as the master part"
msgstr ""
-#: part/models.py:4070
+#: part/models.py:4114
msgid "Parent BOM item"
msgstr ""
-#: part/models.py:4078
+#: part/models.py:4122
msgid "Substitute part"
msgstr "Część zastępcza"
-#: part/models.py:4093
+#: part/models.py:4137
msgid "Part 1"
msgstr "Część 1"
-#: part/models.py:4097
+#: part/models.py:4141
msgid "Part 2"
msgstr "Część 2"
-#: part/models.py:4097
+#: part/models.py:4141
msgid "Select Related Part"
msgstr "Wybierz powiązaną część"
-#: part/models.py:4115
+#: part/models.py:4159
msgid "Part relationship cannot be created between a part and itself"
msgstr ""
-#: part/models.py:4119
+#: part/models.py:4163
msgid "Duplicate relationship already exists"
msgstr ""
-#: part/serializers.py:152 part/serializers.py:175 stock/serializers.py:257
+#: part/serializers.py:152 part/serializers.py:175 stock/serializers.py:319
msgid "Purchase currency of this stock item"
msgstr "Waluta zakupu tego towaru"
-#: part/serializers.py:302
+#: part/serializers.py:313
+msgid "No parts selected"
+msgstr ""
+
+#: part/serializers.py:321
+msgid "Select category"
+msgstr ""
+
+#: part/serializers.py:352
msgid "Original Part"
msgstr ""
-#: part/serializers.py:302
+#: part/serializers.py:352
msgid "Select original part to duplicate"
msgstr ""
-#: part/serializers.py:307
+#: part/serializers.py:357
msgid "Copy Image"
msgstr "Kopiuj obraz"
-#: part/serializers.py:307
+#: part/serializers.py:357
msgid "Copy image from original part"
msgstr ""
-#: part/serializers.py:312 part/templates/part/detail.html:296
+#: part/serializers.py:362 part/templates/part/detail.html:277
msgid "Copy BOM"
msgstr "Kopiuj BOM"
-#: part/serializers.py:312
+#: part/serializers.py:362
msgid "Copy bill of materials from original part"
msgstr ""
-#: part/serializers.py:317
+#: part/serializers.py:367
msgid "Copy Parameters"
msgstr "Kopiuj parametry"
-#: part/serializers.py:317
+#: part/serializers.py:367
msgid "Copy parameter data from original part"
msgstr ""
-#: part/serializers.py:327
+#: part/serializers.py:377
msgid "Initial Stock Quantity"
msgstr ""
-#: part/serializers.py:327
+#: part/serializers.py:377
msgid "Specify initial stock quantity for this Part. If quantity is zero, no stock is added."
msgstr ""
-#: part/serializers.py:333
+#: part/serializers.py:383
msgid "Initial Stock Location"
msgstr ""
-#: part/serializers.py:333
+#: part/serializers.py:383
msgid "Specify initial stock location for this Part"
msgstr ""
-#: part/serializers.py:343
+#: part/serializers.py:393
msgid "Select supplier (or leave blank to skip)"
msgstr ""
-#: part/serializers.py:354
+#: part/serializers.py:404
msgid "Select manufacturer (or leave blank to skip)"
msgstr ""
-#: part/serializers.py:360
+#: part/serializers.py:410
msgid "Manufacturer part number"
msgstr ""
-#: part/serializers.py:367
+#: part/serializers.py:417
msgid "Selected company is not a valid supplier"
msgstr ""
-#: part/serializers.py:375
+#: part/serializers.py:425
msgid "Selected company is not a valid manufacturer"
msgstr ""
-#: part/serializers.py:387
+#: part/serializers.py:437
msgid "Manufacturer part matching this MPN already exists"
msgstr ""
-#: part/serializers.py:395
+#: part/serializers.py:445
msgid "Supplier part matching this SKU already exists"
msgstr ""
-#: part/serializers.py:620 part/templates/part/copy_part.html:9
-#: templates/js/translated/part.js:449
+#: part/serializers.py:682 part/templates/part/copy_part.html:9
+#: templates/js/translated/part.js:448
msgid "Duplicate Part"
msgstr "Duplikuj część"
-#: part/serializers.py:620
+#: part/serializers.py:682
msgid "Copy initial data from another Part"
msgstr ""
-#: part/serializers.py:625 templates/js/translated/part.js:103
+#: part/serializers.py:687 templates/js/translated/part.js:102
msgid "Initial Stock"
msgstr ""
-#: part/serializers.py:625
+#: part/serializers.py:687
msgid "Create Part with initial stock quantity"
msgstr ""
-#: part/serializers.py:630
+#: part/serializers.py:692
msgid "Supplier Information"
msgstr ""
-#: part/serializers.py:630
+#: part/serializers.py:692
msgid "Add initial supplier information for this part"
msgstr ""
-#: part/serializers.py:636
+#: part/serializers.py:698
msgid "Copy Category Parameters"
msgstr ""
-#: part/serializers.py:637
+#: part/serializers.py:699
msgid "Copy parameter templates from selected part category"
msgstr ""
-#: part/serializers.py:842
+#: part/serializers.py:904
msgid "Limit stocktake report to a particular part, and any variant parts"
msgstr ""
-#: part/serializers.py:848
+#: part/serializers.py:910
msgid "Limit stocktake report to a particular part category, and any child categories"
msgstr ""
-#: part/serializers.py:854
+#: part/serializers.py:916
msgid "Limit stocktake report to a particular stock location, and any child locations"
msgstr ""
-#: part/serializers.py:859
+#: part/serializers.py:921
msgid "Generate Report"
msgstr ""
-#: part/serializers.py:860
+#: part/serializers.py:922
msgid "Generate report file containing calculated stocktake data"
msgstr ""
-#: part/serializers.py:865
+#: part/serializers.py:927
msgid "Update Parts"
msgstr ""
-#: part/serializers.py:866
+#: part/serializers.py:928
msgid "Update specified parts with calculated stocktake data"
msgstr ""
-#: part/serializers.py:874
+#: part/serializers.py:936
msgid "Stocktake functionality is not enabled"
msgstr ""
-#: part/serializers.py:963
+#: part/serializers.py:1025
msgid "Update"
msgstr ""
-#: part/serializers.py:964
+#: part/serializers.py:1026
msgid "Update pricing for this part"
msgstr ""
-#: part/serializers.py:1246
+#: part/serializers.py:1308
msgid "Select part to copy BOM from"
msgstr ""
-#: part/serializers.py:1254
+#: part/serializers.py:1316
msgid "Remove Existing Data"
msgstr "Usuń istniejące dane"
-#: part/serializers.py:1255
+#: part/serializers.py:1317
msgid "Remove existing BOM items before copying"
msgstr ""
-#: part/serializers.py:1260
+#: part/serializers.py:1322
msgid "Include Inherited"
msgstr ""
-#: part/serializers.py:1261
+#: part/serializers.py:1323
msgid "Include BOM items which are inherited from templated parts"
msgstr ""
-#: part/serializers.py:1266
+#: part/serializers.py:1328
msgid "Skip Invalid Rows"
msgstr "Pomiń nieprawidłowe wiersze"
-#: part/serializers.py:1267
+#: part/serializers.py:1329
msgid "Enable this option to skip invalid rows"
msgstr "Włącz tę opcję, aby pominąć nieprawidłowe wiersze"
-#: part/serializers.py:1272
+#: part/serializers.py:1334
msgid "Copy Substitute Parts"
msgstr ""
-#: part/serializers.py:1273
+#: part/serializers.py:1335
msgid "Copy substitute parts when duplicate BOM items"
msgstr ""
-#: part/serializers.py:1313
+#: part/serializers.py:1375
msgid "Clear Existing BOM"
msgstr "Wyczyść istniejący BOM"
-#: part/serializers.py:1314
+#: part/serializers.py:1376
msgid "Delete existing BOM items before uploading"
msgstr ""
-#: part/serializers.py:1344
+#: part/serializers.py:1406
msgid "No part column specified"
msgstr ""
-#: part/serializers.py:1387
+#: part/serializers.py:1449
msgid "Multiple matching parts found"
msgstr ""
-#: part/serializers.py:1390
+#: part/serializers.py:1452
msgid "No matching part found"
msgstr ""
-#: part/serializers.py:1393
+#: part/serializers.py:1455
msgid "Part is not designated as a component"
msgstr ""
-#: part/serializers.py:1402
+#: part/serializers.py:1464
msgid "Quantity not provided"
msgstr "Nie podano ilości"
-#: part/serializers.py:1410
+#: part/serializers.py:1472
msgid "Invalid quantity"
msgstr "Nieprawidłowa ilość"
-#: part/serializers.py:1431
+#: part/serializers.py:1493
msgid "At least one BOM item is required"
msgstr ""
@@ -6421,9 +6453,9 @@ msgstr ""
msgid "The available stock for {part.name} has fallen below the configured minimum level"
msgstr ""
-#: part/tasks.py:294 templates/js/translated/part.js:1040
-#: templates/js/translated/part.js:1793 templates/js/translated/part.js:1848
-#: templates/js/translated/purchase_order.js:2052
+#: part/tasks.py:294 templates/js/translated/part.js:1039
+#: templates/js/translated/part.js:1792 templates/js/translated/part.js:1847
+#: templates/js/translated/purchase_order.js:2062
msgid "Total Quantity"
msgstr ""
@@ -6461,14 +6493,6 @@ msgstr ""
msgid "The BOM for %(part)s has not been validated."
msgstr ""
-#: part/templates/part/bom.html:30 part/templates/part/detail.html:291
-msgid "BOM actions"
-msgstr ""
-
-#: part/templates/part/bom.html:34
-msgid "Delete Items"
-msgstr "Usuń elementy"
-
#: part/templates/part/category.html:34
msgid "Perform stocktake for this part category"
msgstr ""
@@ -6505,7 +6529,7 @@ msgstr "Usuń kategorię"
msgid "Top level part category"
msgstr "Kategoria najwyższego poziomu"
-#: part/templates/part/category.html:121 part/templates/part/category.html:225
+#: part/templates/part/category.html:121 part/templates/part/category.html:206
#: part/templates/part/category_sidebar.html:7
msgid "Subcategories"
msgstr "Podkategorie"
@@ -6518,33 +6542,20 @@ msgstr "Części (w tym podkategorie)"
msgid "Create new part"
msgstr "Utwórz nową część"
-#: part/templates/part/category.html:165 templates/js/translated/bom.js:443
+#: part/templates/part/category.html:165 templates/js/translated/bom.js:444
msgid "New Part"
msgstr "Nowy komponent"
-#: part/templates/part/category.html:175 part/templates/part/detail.html:390
-#: part/templates/part/detail.html:421
-msgid "Options"
-msgstr "Opcje"
-
-#: part/templates/part/category.html:179
-msgid "Set category"
-msgstr "Ustaw kategorię"
-
-#: part/templates/part/category.html:180
-msgid "Set Category"
-msgstr "Ustaw kategorię"
-
-#: part/templates/part/category.html:208
+#: part/templates/part/category.html:191
#: templates/InvenTree/settings/sidebar.html:47
msgid "Part Parameters"
msgstr "Parametry części"
-#: part/templates/part/category.html:229
+#: part/templates/part/category.html:210
msgid "Create new part category"
msgstr "Stwórz nową kategorię komponentów"
-#: part/templates/part/category.html:230
+#: part/templates/part/category.html:211
msgid "New Category"
msgstr "Nowa kategoria"
@@ -6581,7 +6592,7 @@ msgid "Refresh scheduling data"
msgstr ""
#: part/templates/part/detail.html:45 part/templates/part/prices.html:15
-#: templates/js/translated/tables.js:584
+#: templates/js/translated/tables.js:560
msgid "Refresh"
msgstr "Odśwież"
@@ -6592,7 +6603,7 @@ msgstr ""
#: part/templates/part/detail.html:67 part/templates/part/part_sidebar.html:50
#: stock/admin.py:130 templates/InvenTree/settings/part_stocktake.html:29
#: templates/InvenTree/settings/sidebar.html:51
-#: templates/js/translated/stock.js:1952 users/models.py:39
+#: templates/js/translated/stock.js:2109 users/models.py:39
msgid "Stocktake"
msgstr ""
@@ -6604,101 +6615,101 @@ msgstr ""
msgid "Add Test Template"
msgstr ""
-#: part/templates/part/detail.html:145 stock/templates/stock/item.html:53
+#: part/templates/part/detail.html:139 stock/templates/stock/item.html:49
msgid "Sales Order Allocations"
msgstr ""
-#: part/templates/part/detail.html:165
+#: part/templates/part/detail.html:156
msgid "Part Notes"
msgstr ""
-#: part/templates/part/detail.html:180
+#: part/templates/part/detail.html:171
msgid "Part Variants"
msgstr "Warianty Części"
-#: part/templates/part/detail.html:184
+#: part/templates/part/detail.html:175
msgid "Create new variant"
msgstr "Utwórz nowy wariant"
-#: part/templates/part/detail.html:185
+#: part/templates/part/detail.html:176
msgid "New Variant"
msgstr "Nowy wariant"
-#: part/templates/part/detail.html:212
+#: part/templates/part/detail.html:199
msgid "Add new parameter"
msgstr ""
-#: part/templates/part/detail.html:249 part/templates/part/part_sidebar.html:58
+#: part/templates/part/detail.html:232 part/templates/part/part_sidebar.html:58
msgid "Related Parts"
msgstr "Powiązane części"
-#: part/templates/part/detail.html:253 part/templates/part/detail.html:254
+#: part/templates/part/detail.html:236 part/templates/part/detail.html:237
msgid "Add Related"
msgstr "Dodaj powiązane"
-#: part/templates/part/detail.html:274 part/templates/part/part_sidebar.html:17
+#: part/templates/part/detail.html:255 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:279
+#: part/templates/part/detail.html:260
msgid "Export actions"
msgstr "Akcje eksportu"
-#: part/templates/part/detail.html:283 templates/js/translated/bom.js:339
+#: part/templates/part/detail.html:264 templates/js/translated/bom.js:340
msgid "Export BOM"
msgstr "Eksportuj BOM"
-#: part/templates/part/detail.html:285
+#: part/templates/part/detail.html:266
msgid "Print BOM Report"
msgstr "Drukuj raport BOM"
-#: part/templates/part/detail.html:295
+#: part/templates/part/detail.html:272
+msgid "BOM actions"
+msgstr ""
+
+#: part/templates/part/detail.html:276
msgid "Upload BOM"
msgstr "Wgraj BOM"
-#: part/templates/part/detail.html:297
+#: part/templates/part/detail.html:278
msgid "Validate BOM"
msgstr "Weryfikuj BOM"
-#: part/templates/part/detail.html:302 part/templates/part/detail.html:303
-#: templates/js/translated/bom.js:1279 templates/js/translated/bom.js:1280
+#: part/templates/part/detail.html:283 part/templates/part/detail.html:284
+#: templates/js/translated/bom.js:1299 templates/js/translated/bom.js:1300
msgid "Add BOM Item"
msgstr "Dodaj część do BOM"
-#: part/templates/part/detail.html:316
+#: part/templates/part/detail.html:297
msgid "Assemblies"
msgstr "Złożenia"
-#: part/templates/part/detail.html:334
+#: part/templates/part/detail.html:313
msgid "Part Builds"
msgstr ""
-#: part/templates/part/detail.html:361 stock/templates/stock/item.html:38
+#: part/templates/part/detail.html:338 stock/templates/stock/item.html:36
msgid "Build Order Allocations"
msgstr ""
-#: part/templates/part/detail.html:377
+#: part/templates/part/detail.html:352
msgid "Part Suppliers"
msgstr "Dostawcy Części"
-#: part/templates/part/detail.html:407
+#: part/templates/part/detail.html:372
msgid "Part Manufacturers"
msgstr "Producenci części"
-#: part/templates/part/detail.html:423
-msgid "Delete manufacturer parts"
-msgstr ""
-
-#: part/templates/part/detail.html:707
+#: part/templates/part/detail.html:654
msgid "Related Part"
msgstr "Powiązane części"
-#: part/templates/part/detail.html:715
+#: part/templates/part/detail.html:662
msgid "Add Related Part"
msgstr "Dodaj powiązaną część"
-#: part/templates/part/detail.html:800
+#: part/templates/part/detail.html:747
msgid "Add Test Result Template"
msgstr ""
@@ -6732,13 +6743,13 @@ msgid "Download Part Import Template"
msgstr ""
#: part/templates/part/import_wizard/part_upload.html:92
-#: templates/js/translated/bom.js:308 templates/js/translated/bom.js:342
+#: templates/js/translated/bom.js:309 templates/js/translated/bom.js:343
#: templates/js/translated/order.js:129 templates/js/translated/tables.js:189
msgid "Format"
msgstr ""
#: part/templates/part/import_wizard/part_upload.html:93
-#: templates/js/translated/bom.js:309 templates/js/translated/bom.js:343
+#: templates/js/translated/bom.js:310 templates/js/translated/bom.js:344
#: templates/js/translated/order.js:130
msgid "Select file format"
msgstr "Wybierz format pliku"
@@ -6779,7 +6790,7 @@ msgstr ""
msgid "Transfer part stock"
msgstr ""
-#: part/templates/part/part_base.html:93
+#: part/templates/part/part_base.html:93 templates/js/translated/part.js:2264
msgid "Part actions"
msgstr ""
@@ -6824,10 +6835,10 @@ msgid "Part is not active"
msgstr ""
#: part/templates/part/part_base.html:148
-#: templates/js/translated/company.js:945
-#: templates/js/translated/company.js:1185
-#: templates/js/translated/model_renderers.js:273
-#: templates/js/translated/part.js:792 templates/js/translated/part.js:1192
+#: templates/js/translated/company.js:1318
+#: templates/js/translated/company.js:1606
+#: templates/js/translated/model_renderers.js:287
+#: templates/js/translated/part.js:791 templates/js/translated/part.js:1191
msgid "Inactive"
msgstr "Nieaktywny"
@@ -6850,7 +6861,7 @@ msgstr ""
msgid "Allocated to Sales Orders"
msgstr "Przypisane do zamówień sprzedaży"
-#: part/templates/part/part_base.html:237 templates/js/translated/bom.js:1178
+#: part/templates/part/part_base.html:237 templates/js/translated/bom.js:1198
msgid "Can Build"
msgstr ""
@@ -6858,8 +6869,8 @@ msgstr ""
msgid "Minimum stock level"
msgstr "Minimalny poziom stanu magazynowego"
-#: part/templates/part/part_base.html:324 templates/js/translated/bom.js:1041
-#: templates/js/translated/part.js:1238 templates/js/translated/part.js:2304
+#: part/templates/part/part_base.html:324 templates/js/translated/bom.js:1059
+#: templates/js/translated/part.js:1237 templates/js/translated/part.js:2380
#: templates/js/translated/pricing.js:391
#: templates/js/translated/pricing.js:1040
msgid "Price Range"
@@ -6882,7 +6893,7 @@ msgstr "Kod QR części"
msgid "Link Barcode to Part"
msgstr ""
-#: part/templates/part/part_base.html:474 templates/js/translated/part.js:2191
+#: part/templates/part/part_base.html:474 templates/js/translated/part.js:2258
msgid "part"
msgstr ""
@@ -6956,9 +6967,9 @@ msgstr "Warianty"
#: stock/templates/stock/stock_app_base.html:10
#: templates/InvenTree/search.html:153
#: templates/InvenTree/settings/sidebar.html:49
-#: templates/js/translated/part.js:1216 templates/js/translated/part.js:2120
-#: templates/js/translated/part.js:2284 templates/js/translated/stock.js:1022
-#: templates/js/translated/stock.js:1829 templates/navbar.html:31
+#: templates/js/translated/part.js:1215 templates/js/translated/part.js:2119
+#: templates/js/translated/part.js:2360 templates/js/translated/stock.js:1021
+#: templates/js/translated/stock.js:1986 templates/navbar.html:31
msgid "Stock"
msgstr "Stan"
@@ -6989,9 +7000,9 @@ msgstr ""
#: part/templates/part/prices.html:25 stock/admin.py:129
#: stock/templates/stock/item_base.html:442
-#: templates/js/translated/company.js:1313
-#: templates/js/translated/company.js:1323
-#: templates/js/translated/stock.js:1982
+#: templates/js/translated/company.js:1734
+#: templates/js/translated/company.js:1744
+#: templates/js/translated/stock.js:2139
msgid "Last Updated"
msgstr "Ostatnia aktualizacja"
@@ -7054,12 +7065,12 @@ msgstr ""
msgid "Add Sell Price Break"
msgstr ""
-#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:682
-#: templates/js/translated/part.js:2115 templates/js/translated/part.js:2117
+#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:681
+#: templates/js/translated/part.js:2114 templates/js/translated/part.js:2116
msgid "No Stock"
msgstr "Brak w magazynie"
-#: part/templates/part/stock_count.html:9 templates/InvenTree/index.html:167
+#: part/templates/part/stock_count.html:9 templates/InvenTree/index.html:120
msgid "Low Stock"
msgstr "Mała ilość w magazynie"
@@ -7163,7 +7174,7 @@ msgid "Match found for barcode data"
msgstr "Znaleziono wyniki dla danych kodu kreskowego"
#: plugin/base/barcodes/api.py:120
-#: templates/js/translated/purchase_order.js:1372
+#: templates/js/translated/purchase_order.js:1387
msgid "Barcode matches existing item"
msgstr ""
@@ -7226,43 +7237,43 @@ msgstr ""
msgid "Open link"
msgstr ""
-#: plugin/models.py:27
+#: plugin/models.py:28
msgid "Plugin Configuration"
msgstr "Konfiguracja wtyczki"
-#: plugin/models.py:28
+#: plugin/models.py:29
msgid "Plugin Configurations"
msgstr "Konfiguracja wtyczek"
-#: plugin/models.py:33
+#: plugin/models.py:34
msgid "Key"
msgstr "Klucz"
-#: plugin/models.py:34
+#: plugin/models.py:35
msgid "Key of plugin"
msgstr "Klucz wtyczki"
-#: plugin/models.py:42
+#: plugin/models.py:43
msgid "PluginName of the plugin"
msgstr "Nazwa wtyczki"
-#: plugin/models.py:48
+#: plugin/models.py:49
msgid "Is the plugin active"
msgstr "Czy wtyczka jest aktywna"
-#: plugin/models.py:124
+#: plugin/models.py:125
msgid "Sample plugin"
msgstr ""
-#: plugin/models.py:133
+#: plugin/models.py:134
msgid "Builtin Plugin"
msgstr ""
-#: plugin/models.py:159 templates/InvenTree/settings/plugin_settings.html:9
+#: plugin/models.py:160 templates/InvenTree/settings/plugin_settings.html:9
msgid "Plugin"
msgstr "Wtyczka"
-#: plugin/models.py:210
+#: plugin/models.py:211
msgid "Method"
msgstr ""
@@ -7414,47 +7425,47 @@ msgstr ""
msgid "Build query filters (comma-separated list of key=value pairs"
msgstr ""
-#: report/models.py:418
+#: report/models.py:420
msgid "Part Filters"
msgstr "Filtr części"
-#: report/models.py:419
+#: report/models.py:421
msgid "Part query filters (comma-separated list of key=value pairs"
msgstr ""
-#: report/models.py:453
+#: report/models.py:455
msgid "Purchase order query filters"
msgstr ""
-#: report/models.py:491
+#: report/models.py:493
msgid "Sales order query filters"
msgstr ""
-#: report/models.py:529
+#: report/models.py:531
msgid "Return order query filters"
msgstr ""
-#: report/models.py:582
+#: report/models.py:584
msgid "Snippet"
msgstr "Wycinek"
-#: report/models.py:583
+#: report/models.py:585
msgid "Report snippet file"
msgstr ""
-#: report/models.py:587
+#: report/models.py:589
msgid "Snippet file description"
msgstr ""
-#: report/models.py:624
+#: report/models.py:626
msgid "Asset"
msgstr ""
-#: report/models.py:625
+#: report/models.py:627
msgid "Report asset file"
msgstr ""
-#: report/models.py:632
+#: report/models.py:634
msgid "Asset file description"
msgstr ""
@@ -7475,8 +7486,8 @@ msgstr ""
#: templates/js/translated/order.js:316 templates/js/translated/pricing.js:527
#: templates/js/translated/pricing.js:596
#: templates/js/translated/pricing.js:820
-#: templates/js/translated/purchase_order.js:2083
-#: templates/js/translated/sales_order.js:1817
+#: templates/js/translated/purchase_order.js:2093
+#: templates/js/translated/sales_order.js:1829
msgid "Unit Price"
msgstr "Cena jednostkowa"
@@ -7488,23 +7499,23 @@ msgstr ""
#: report/templates/report/inventree_po_report_base.html:72
#: report/templates/report/inventree_so_report_base.html:72
-#: templates/js/translated/purchase_order.js:1985
-#: templates/js/translated/sales_order.js:1792
+#: templates/js/translated/purchase_order.js:1995
+#: templates/js/translated/sales_order.js:1804
msgid "Total"
msgstr "Razem"
#: report/templates/report/inventree_return_order_report_base.html:25
#: report/templates/report/inventree_test_report_base.html:88
#: stock/models.py:725 stock/templates/stock/item_base.html:312
-#: templates/js/translated/build.js:502 templates/js/translated/build.js:1423
-#: templates/js/translated/build.js:1989
-#: templates/js/translated/model_renderers.js:201
-#: templates/js/translated/return_order.js:528
-#: templates/js/translated/return_order.js:708
-#: templates/js/translated/sales_order.js:300
-#: templates/js/translated/sales_order.js:1597
-#: templates/js/translated/sales_order.js:1682
-#: templates/js/translated/stock.js:563
+#: templates/js/translated/build.js:508 templates/js/translated/build.js:1306
+#: templates/js/translated/build.js:2281
+#: templates/js/translated/model_renderers.js:215
+#: templates/js/translated/return_order.js:540
+#: templates/js/translated/return_order.js:720
+#: templates/js/translated/sales_order.js:312
+#: templates/js/translated/sales_order.js:1609
+#: templates/js/translated/sales_order.js:1694
+#: templates/js/translated/stock.js:562
msgid "Serial Number"
msgstr "Numer Seryjny"
@@ -7517,7 +7528,7 @@ msgid "Test Results"
msgstr ""
#: report/templates/report/inventree_test_report_base.html:102
-#: stock/models.py:2243 templates/js/translated/stock.js:1419
+#: stock/models.py:2243 templates/js/translated/stock.js:1418
msgid "Test"
msgstr ""
@@ -7548,8 +7559,8 @@ msgid "Installed Items"
msgstr "Zainstalowane elementy"
#: report/templates/report/inventree_test_report_base.html:168
-#: stock/admin.py:104 templates/js/translated/stock.js:667
-#: templates/js/translated/stock.js:838 templates/js/translated/stock.js:2849
+#: stock/admin.py:104 templates/js/translated/stock.js:666
+#: templates/js/translated/stock.js:837 templates/js/translated/stock.js:2976
msgid "Serial"
msgstr "Numer seryjny"
@@ -7617,31 +7628,31 @@ msgstr ""
#: stock/admin.py:131 stock/models.py:789
#: stock/templates/stock/item_base.html:429
-#: templates/js/translated/stock.js:1966
+#: templates/js/translated/stock.js:2123
msgid "Expiry Date"
msgstr "Data ważności"
-#: stock/api.py:420 templates/js/translated/table_filters.js:373
+#: stock/api.py:426 templates/js/translated/table_filters.js:379
msgid "External Location"
msgstr ""
-#: stock/api.py:582
+#: stock/api.py:619
msgid "Quantity is required"
msgstr ""
-#: stock/api.py:589
+#: stock/api.py:626
msgid "Valid part must be supplied"
msgstr ""
-#: stock/api.py:615
+#: stock/api.py:652
msgid "The given supplier part does not exist"
msgstr ""
-#: stock/api.py:624
+#: stock/api.py:661
msgid "The supplier part has a pack size defined, but flag use_pack_size not set"
msgstr ""
-#: stock/api.py:642
+#: stock/api.py:679
msgid "Serial numbers cannot be supplied for a non-trackable part"
msgstr ""
@@ -7652,7 +7663,7 @@ msgid "Stock Location"
msgstr ""
#: stock/models.py:55 stock/templates/stock/location.html:177
-#: templates/InvenTree/search.html:166 templates/js/translated/search.js:220
+#: templates/InvenTree/search.html:166 templates/js/translated/search.js:178
#: users/models.py:40
msgid "Stock Locations"
msgstr "Lokacje stanu magazynowego"
@@ -7670,8 +7681,8 @@ msgstr "Wybierz właściciela"
msgid "Stock items may not be directly located into a structural stock locations, but may be located to child locations."
msgstr ""
-#: stock/models.py:132 templates/js/translated/stock.js:2529
-#: templates/js/translated/table_filters.js:213
+#: stock/models.py:132 templates/js/translated/stock.js:2660
+#: templates/js/translated/table_filters.js:219
msgid "External"
msgstr ""
@@ -7687,7 +7698,7 @@ msgstr ""
msgid "Stock items cannot be located into structural stock locations!"
msgstr ""
-#: stock/models.py:583 stock/serializers.py:174
+#: stock/models.py:583 stock/serializers.py:223
msgid "Stock item cannot be created for virtual parts"
msgstr ""
@@ -7821,7 +7832,7 @@ msgstr ""
msgid "Quantity does not match serial numbers"
msgstr ""
-#: stock/models.py:1403 stock/serializers.py:374
+#: stock/models.py:1403 stock/serializers.py:440
msgid "Serial numbers already exist"
msgstr "Numer seryjny już istnieje"
@@ -7849,7 +7860,7 @@ msgstr ""
msgid "Serialized stock cannot be merged"
msgstr ""
-#: stock/models.py:1496 stock/serializers.py:975
+#: stock/models.py:1496 stock/serializers.py:1092
msgid "Duplicate stock items"
msgstr ""
@@ -7901,132 +7912,141 @@ msgstr ""
msgid "Test notes"
msgstr ""
-#: stock/serializers.py:76
+#: stock/serializers.py:121
msgid "Serial number is too large"
msgstr ""
-#: stock/serializers.py:166
+#: stock/serializers.py:215
msgid "Use pack size when adding: the quantity defined is the number of packs"
msgstr ""
-#: stock/serializers.py:254
+#: stock/serializers.py:316
msgid "Purchase price of this stock item, per unit or pack"
msgstr ""
-#: stock/serializers.py:307
+#: stock/serializers.py:373
msgid "Enter number of stock items to serialize"
msgstr ""
-#: stock/serializers.py:319
+#: stock/serializers.py:385
#, python-brace-format
msgid "Quantity must not exceed available stock quantity ({q})"
msgstr ""
-#: stock/serializers.py:325
+#: stock/serializers.py:391
msgid "Enter serial numbers for new items"
msgstr ""
-#: stock/serializers.py:336 stock/serializers.py:932 stock/serializers.py:1174
+#: stock/serializers.py:402 stock/serializers.py:1049 stock/serializers.py:1291
msgid "Destination stock location"
msgstr ""
-#: stock/serializers.py:343
+#: stock/serializers.py:409
msgid "Optional note field"
msgstr ""
-#: stock/serializers.py:353
+#: stock/serializers.py:419
msgid "Serial numbers cannot be assigned to this part"
msgstr ""
-#: stock/serializers.py:414
+#: stock/serializers.py:480
msgid "Select stock item to install"
msgstr ""
-#: stock/serializers.py:427
-msgid "Stock item is unavailable"
-msgstr ""
-
-#: stock/serializers.py:434
-msgid "Selected part is not in the Bill of Materials"
-msgstr ""
-
-#: stock/serializers.py:471
-msgid "Destination location for uninstalled item"
-msgstr ""
-
-#: stock/serializers.py:476 stock/serializers.py:557
+#: stock/serializers.py:485 stock/serializers.py:543 stock/serializers.py:624
+#: stock/serializers.py:682
msgid "Add transaction note (optional)"
msgstr ""
-#: stock/serializers.py:510
+#: stock/serializers.py:494
+msgid "Stock item is unavailable"
+msgstr ""
+
+#: stock/serializers.py:501
+msgid "Selected part is not in the Bill of Materials"
+msgstr ""
+
+#: stock/serializers.py:538
+msgid "Destination location for uninstalled item"
+msgstr ""
+
+#: stock/serializers.py:577
msgid "Select part to convert stock item into"
msgstr ""
-#: stock/serializers.py:521
+#: stock/serializers.py:588
msgid "Selected part is not a valid option for conversion"
msgstr ""
-#: stock/serializers.py:552
+#: stock/serializers.py:619
msgid "Destination location for returned item"
msgstr ""
-#: stock/serializers.py:787
+#: stock/serializers.py:663
+msgid "Select stock items to change status"
+msgstr ""
+
+#: stock/serializers.py:670
+msgid "No stock items selected"
+msgstr ""
+
+#: stock/serializers.py:904
msgid "Part must be salable"
msgstr "Część musi być dostępna do sprzedaży"
-#: stock/serializers.py:791
+#: stock/serializers.py:908
msgid "Item is allocated to a sales order"
msgstr ""
-#: stock/serializers.py:795
+#: stock/serializers.py:912
msgid "Item is allocated to a build order"
msgstr ""
-#: stock/serializers.py:826
+#: stock/serializers.py:943
msgid "Customer to assign stock items"
msgstr ""
-#: stock/serializers.py:832
+#: stock/serializers.py:949
msgid "Selected company is not a customer"
msgstr ""
-#: stock/serializers.py:840
+#: stock/serializers.py:957
msgid "Stock assignment notes"
msgstr ""
-#: stock/serializers.py:850 stock/serializers.py:1081
+#: stock/serializers.py:967 stock/serializers.py:1198
msgid "A list of stock items must be provided"
msgstr ""
-#: stock/serializers.py:939
+#: stock/serializers.py:1056
msgid "Stock merging notes"
msgstr ""
-#: stock/serializers.py:944
+#: stock/serializers.py:1061
msgid "Allow mismatched suppliers"
msgstr ""
-#: stock/serializers.py:945
+#: stock/serializers.py:1062
msgid "Allow stock items with different supplier parts to be merged"
msgstr ""
-#: stock/serializers.py:950
+#: stock/serializers.py:1067
msgid "Allow mismatched status"
msgstr ""
-#: stock/serializers.py:951
+#: stock/serializers.py:1068
msgid "Allow stock items with different status codes to be merged"
msgstr ""
-#: stock/serializers.py:961
+#: stock/serializers.py:1078
msgid "At least two stock items must be provided"
msgstr ""
-#: stock/serializers.py:1043
+#: stock/serializers.py:1160
msgid "StockItem primary key value"
msgstr ""
-#: stock/serializers.py:1071
+#: stock/serializers.py:1188
msgid "Stock transaction notes"
msgstr ""
@@ -8034,48 +8054,48 @@ msgstr ""
msgid "Stock Tracking Information"
msgstr ""
-#: stock/templates/stock/item.html:69
+#: stock/templates/stock/item.html:63
msgid "Child Stock Items"
msgstr ""
-#: stock/templates/stock/item.html:77
+#: stock/templates/stock/item.html:71
msgid "This stock item does not have any child items"
msgstr ""
-#: stock/templates/stock/item.html:86
+#: stock/templates/stock/item.html:80
#: stock/templates/stock/stock_sidebar.html:12
msgid "Test Data"
msgstr ""
-#: stock/templates/stock/item.html:90 stock/templates/stock/item_base.html:66
+#: stock/templates/stock/item.html:84 stock/templates/stock/item_base.html:66
msgid "Test Report"
msgstr ""
-#: stock/templates/stock/item.html:94 stock/templates/stock/item.html:288
+#: stock/templates/stock/item.html:88 stock/templates/stock/item.html:278
msgid "Delete Test Data"
msgstr ""
-#: stock/templates/stock/item.html:98
+#: stock/templates/stock/item.html:92
msgid "Add Test Data"
msgstr ""
-#: stock/templates/stock/item.html:132
+#: stock/templates/stock/item.html:124
msgid "Stock Item Notes"
msgstr ""
-#: stock/templates/stock/item.html:147
+#: stock/templates/stock/item.html:139
msgid "Installed Stock Items"
msgstr ""
-#: stock/templates/stock/item.html:152 templates/js/translated/stock.js:2996
+#: stock/templates/stock/item.html:144 templates/js/translated/stock.js:3123
msgid "Install Stock Item"
msgstr ""
-#: stock/templates/stock/item.html:276
+#: stock/templates/stock/item.html:266
msgid "Delete all test results for this stock item"
msgstr ""
-#: stock/templates/stock/item.html:305 templates/js/translated/stock.js:1611
+#: stock/templates/stock/item.html:295 templates/js/translated/stock.js:1610
msgid "Add Test Result"
msgstr ""
@@ -8083,13 +8103,13 @@ msgstr ""
msgid "Locate stock item"
msgstr ""
-#: stock/templates/stock/item_base.html:52 templates/stock_table.html:21
+#: stock/templates/stock/item_base.html:52
msgid "Scan to Location"
msgstr "Skanuj do lokacji"
#: stock/templates/stock/item_base.html:60
#: stock/templates/stock/location.html:69
-#: templates/js/translated/filters.js:322
+#: templates/js/translated/filters.js:432
msgid "Printing actions"
msgstr "Akcje druku"
@@ -8098,15 +8118,17 @@ msgid "Stock adjustment actions"
msgstr ""
#: stock/templates/stock/item_base.html:80
-#: stock/templates/stock/location.html:88 templates/stock_table.html:35
+#: stock/templates/stock/location.html:88 templates/js/translated/stock.js:1735
msgid "Count stock"
msgstr "Przelicz stan magazynowy"
-#: stock/templates/stock/item_base.html:82 templates/stock_table.html:33
+#: stock/templates/stock/item_base.html:82
+#: templates/js/translated/stock.js:1717
msgid "Add stock"
msgstr ""
-#: stock/templates/stock/item_base.html:83 templates/stock_table.html:34
+#: stock/templates/stock/item_base.html:83
+#: templates/js/translated/stock.js:1726
msgid "Remove stock"
msgstr "Usuń stan magazynowy"
@@ -8115,11 +8137,12 @@ msgid "Serialize stock"
msgstr ""
#: stock/templates/stock/item_base.html:89
-#: stock/templates/stock/location.html:94 templates/stock_table.html:36
+#: stock/templates/stock/location.html:94 templates/js/translated/stock.js:1744
msgid "Transfer stock"
msgstr "Przenieś stan magazynowy"
-#: stock/templates/stock/item_base.html:92 templates/stock_table.html:39
+#: stock/templates/stock/item_base.html:92
+#: templates/js/translated/stock.js:1798
msgid "Assign to customer"
msgstr ""
@@ -8159,6 +8182,11 @@ msgstr ""
msgid "Delete stock item"
msgstr ""
+#: stock/templates/stock/item_base.html:170 templates/InvenTree/search.html:139
+#: templates/js/translated/build.js:2046 templates/navbar.html:38
+msgid "Build"
+msgstr "Budowa"
+
#: stock/templates/stock/item_base.html:194
msgid "Parent Item"
msgstr "Element nadrzędny"
@@ -8221,7 +8249,7 @@ msgid "Available Quantity"
msgstr ""
#: stock/templates/stock/item_base.html:394
-#: templates/js/translated/build.js:2015
+#: templates/js/translated/build.js:2306
msgid "No location set"
msgstr "Lokacje nie są ustawione"
@@ -8239,7 +8267,7 @@ msgid "This StockItem expired on %(item.expiry_date)s"
msgstr ""
#: stock/templates/stock/item_base.html:433
-#: templates/js/translated/table_filters.js:381
+#: templates/js/translated/table_filters.js:387
msgid "Expired"
msgstr "Termin minął"
@@ -8249,7 +8277,7 @@ msgid "This StockItem expires on %(item.expiry_date)s"
msgstr ""
#: stock/templates/stock/item_base.html:435
-#: templates/js/translated/table_filters.js:387
+#: templates/js/translated/table_filters.js:393
msgid "Stale"
msgstr ""
@@ -8258,7 +8286,7 @@ msgid "No stocktake performed"
msgstr ""
#: stock/templates/stock/item_base.html:503
-#: templates/js/translated/stock.js:1745
+#: templates/js/translated/stock.js:1865
msgid "stock item"
msgstr ""
@@ -8364,20 +8392,20 @@ msgstr ""
msgid "New Location"
msgstr "Nowa lokalizacja"
-#: stock/templates/stock/location.html:287
-#: templates/js/translated/stock.js:2318
+#: stock/templates/stock/location.html:278
+#: templates/js/translated/stock.js:2449
msgid "stock location"
msgstr ""
-#: stock/templates/stock/location.html:304
+#: stock/templates/stock/location.html:295
msgid "Scanned stock container into this location"
msgstr ""
-#: stock/templates/stock/location.html:377
+#: stock/templates/stock/location.html:368
msgid "Stock Location QR Code"
msgstr ""
-#: stock/templates/stock/location.html:388
+#: stock/templates/stock/location.html:379
msgid "Link Barcode to Stock Location"
msgstr ""
@@ -8451,71 +8479,71 @@ msgstr ""
msgid "Index"
msgstr "Indeks"
-#: templates/InvenTree/index.html:89
+#: templates/InvenTree/index.html:39
msgid "Subscribed Parts"
msgstr "Obserwowane elementy"
-#: templates/InvenTree/index.html:102
+#: templates/InvenTree/index.html:53
msgid "Subscribed Categories"
msgstr "Obserwowane kategorie"
-#: templates/InvenTree/index.html:112
+#: templates/InvenTree/index.html:63
msgid "Latest Parts"
msgstr "Najnowsze części"
-#: templates/InvenTree/index.html:126
+#: templates/InvenTree/index.html:78
msgid "BOM Waiting Validation"
msgstr ""
-#: templates/InvenTree/index.html:155
+#: templates/InvenTree/index.html:107
msgid "Recently Updated"
msgstr ""
-#: templates/InvenTree/index.html:180
+#: templates/InvenTree/index.html:134
msgid "Depleted Stock"
msgstr "Wyczerpane stany magazynowe"
-#: templates/InvenTree/index.html:193
+#: templates/InvenTree/index.html:148
msgid "Required for Build Orders"
msgstr ""
-#: templates/InvenTree/index.html:208
+#: templates/InvenTree/index.html:156
msgid "Expired Stock"
msgstr ""
-#: templates/InvenTree/index.html:222
+#: templates/InvenTree/index.html:172
msgid "Stale Stock"
msgstr ""
-#: templates/InvenTree/index.html:247
+#: templates/InvenTree/index.html:199
msgid "Build Orders In Progress"
msgstr ""
-#: templates/InvenTree/index.html:258
+#: templates/InvenTree/index.html:210
msgid "Overdue Build Orders"
msgstr "Zaległe zlecenia budowy"
-#: templates/InvenTree/index.html:278
+#: templates/InvenTree/index.html:230
msgid "Outstanding Purchase Orders"
msgstr "Trwające zlecenia zakupu"
-#: templates/InvenTree/index.html:289
+#: templates/InvenTree/index.html:241
msgid "Overdue Purchase Orders"
msgstr "Zaległe zlecenia zakupu"
-#: templates/InvenTree/index.html:310
+#: templates/InvenTree/index.html:262
msgid "Outstanding Sales Orders"
msgstr "Trwające zlecenia sprzedaży"
-#: templates/InvenTree/index.html:321
+#: templates/InvenTree/index.html:273
msgid "Overdue Sales Orders"
msgstr "Zaległe zlecenia sprzedaży"
-#: templates/InvenTree/index.html:347
+#: templates/InvenTree/index.html:299
msgid "InvenTree News"
msgstr ""
-#: templates/InvenTree/index.html:349
+#: templates/InvenTree/index.html:301
msgid "Current News"
msgstr ""
@@ -8672,29 +8700,29 @@ msgstr ""
msgid "Changing the settings below require you to immediately restart the server. Do not change this while under active usage."
msgstr ""
-#: templates/InvenTree/settings/plugin.html:37
+#: templates/InvenTree/settings/plugin.html:35
#: templates/InvenTree/settings/sidebar.html:64
msgid "Plugins"
msgstr "Wtyczki"
-#: templates/InvenTree/settings/plugin.html:43
+#: templates/InvenTree/settings/plugin.html:41
#: templates/js/translated/plugin.js:151
msgid "Install Plugin"
msgstr "Instaluj wtyczkę"
-#: templates/InvenTree/settings/plugin.html:51
+#: templates/InvenTree/settings/plugin.html:49
msgid "External plugins are not enabled for this InvenTree installation"
msgstr ""
-#: templates/InvenTree/settings/plugin.html:70
+#: templates/InvenTree/settings/plugin.html:64
msgid "Plugin Error Stack"
msgstr "Błąd stosu wtyczki"
-#: templates/InvenTree/settings/plugin.html:79
+#: templates/InvenTree/settings/plugin.html:73
msgid "Stage"
msgstr "Etap"
-#: templates/InvenTree/settings/plugin.html:81
+#: templates/InvenTree/settings/plugin.html:75
#: templates/js/translated/notification.js:75
msgid "Message"
msgstr "Wiadomość"
@@ -8767,14 +8795,6 @@ msgstr "Hash commitu"
msgid "Commit Message"
msgstr "Wiadomość commitu"
-#: templates/InvenTree/settings/plugin_settings.html:126
-msgid "Sign Status"
-msgstr "Status podpisu"
-
-#: templates/InvenTree/settings/plugin_settings.html:131
-msgid "Sign Key"
-msgstr "Klucz podpisu"
-
#: templates/InvenTree/settings/po.html:7
msgid "Purchase Order Settings"
msgstr ""
@@ -8870,12 +8890,12 @@ msgid "No category parameter templates found"
msgstr "Nie znaleziono szablonów parametrów kategorii"
#: templates/InvenTree/settings/settings_staff_js.html:212
-#: templates/js/translated/part.js:1618
+#: templates/js/translated/part.js:1617
msgid "Edit Template"
msgstr "Edytuj szablon"
#: templates/InvenTree/settings/settings_staff_js.html:213
-#: templates/js/translated/part.js:1619
+#: templates/js/translated/part.js:1618
msgid "Delete Template"
msgstr "Usuń szablon"
@@ -8913,7 +8933,7 @@ msgid "Home Page"
msgstr "Strona główna"
#: templates/InvenTree/settings/sidebar.html:15
-#: templates/js/translated/tables.js:575 templates/navbar.html:107
+#: templates/js/translated/tables.js:551 templates/navbar.html:107
#: templates/search.html:8 templates/search_form.html:6
#: templates/search_form.html:7
msgid "Search"
@@ -8990,6 +9010,7 @@ msgid "Unverified"
msgstr ""
#: templates/InvenTree/settings/user.html:80
+#: templates/js/translated/company.js:984
msgid "Primary"
msgstr ""
@@ -9204,44 +9225,48 @@ msgstr "Aktualna"
msgid "Update Available"
msgstr "Dostępna aktualizacja"
-#: templates/about.html:42
+#: templates/about.html:43
+msgid "Commit Branch"
+msgstr ""
+
+#: templates/about.html:49
msgid "InvenTree Documentation"
msgstr "Dokumentacja InvenTree"
-#: templates/about.html:47
+#: templates/about.html:54
msgid "API Version"
msgstr "Wersja interfejsu API"
-#: templates/about.html:52
+#: templates/about.html:59
msgid "Python Version"
msgstr "Wersja Pythona"
-#: templates/about.html:57
+#: templates/about.html:64
msgid "Django Version"
msgstr "Wersja Django"
-#: templates/about.html:62
+#: templates/about.html:69
msgid "View Code on GitHub"
msgstr "Zobacz kod na GitHub"
-#: templates/about.html:67
+#: templates/about.html:74
msgid "Credits"
msgstr "Autorzy"
-#: templates/about.html:72
+#: templates/about.html:79
msgid "Mobile App"
msgstr "Aplikacja mobilna"
-#: templates/about.html:77
+#: templates/about.html:84
msgid "Submit Bug Report"
msgstr "Prześlij raport o błędzie"
-#: templates/about.html:84 templates/clip.html:4
+#: templates/about.html:91 templates/clip.html:4
#: templates/js/translated/helpers.js:585
msgid "copy to clipboard"
msgstr "skopiuj do schowka"
-#: templates/about.html:84
+#: templates/about.html:91
msgid "copy version information"
msgstr "kopiuj informacje o wersji"
@@ -9435,14 +9460,6 @@ msgstr "Dodaj link"
msgid "Add Attachment"
msgstr "Dodaj załącznik"
-#: templates/attachment_table.html:11
-msgid "Delete selected attachments"
-msgstr ""
-
-#: templates/attachment_table.html:12 templates/js/translated/attachment.js:129
-msgid "Delete Attachments"
-msgstr ""
-
#: templates/barcode_data.html:5
msgid "Barcode Identifier"
msgstr "Skaner kodów"
@@ -9487,7 +9504,7 @@ msgid "The following parts are low on required stock"
msgstr ""
#: templates/email/build_order_required_stock.html:18
-#: templates/js/translated/bom.js:1633
+#: templates/js/translated/bom.js:1653 templates/js/translated/build.js:2485
msgid "Required Quantity"
msgstr "Wymagana ilość"
@@ -9501,7 +9518,7 @@ msgid "Click on the following link to view this part"
msgstr ""
#: templates/email/low_stock_notification.html:18
-#: templates/js/translated/part.js:3140
+#: templates/js/translated/part.js:3125
msgid "Minimum Quantity"
msgstr "Minimalna ilość"
@@ -9573,23 +9590,35 @@ msgstr "Kod błędu"
msgid "All selected attachments will be deleted"
msgstr ""
-#: templates/js/translated/attachment.js:255
+#: templates/js/translated/attachment.js:129
+msgid "Delete Attachments"
+msgstr ""
+
+#: templates/js/translated/attachment.js:205
+msgid "Delete attachments"
+msgstr ""
+
+#: templates/js/translated/attachment.js:253
+msgid "Attachment actions"
+msgstr ""
+
+#: templates/js/translated/attachment.js:275
msgid "No attachments found"
msgstr "Nie znaleziono załączników"
-#: templates/js/translated/attachment.js:285
+#: templates/js/translated/attachment.js:305
msgid "Edit Attachment"
msgstr "Edytuj załącznik"
-#: templates/js/translated/attachment.js:326
+#: templates/js/translated/attachment.js:336
msgid "Upload Date"
msgstr "Data przesłania"
-#: templates/js/translated/attachment.js:346
+#: templates/js/translated/attachment.js:356
msgid "Edit attachment"
msgstr "Edytuj załącznik"
-#: templates/js/translated/attachment.js:354
+#: templates/js/translated/attachment.js:364
msgid "Delete attachment"
msgstr "Usuń załącznik"
@@ -9646,7 +9675,7 @@ msgstr ""
msgid "Unlink"
msgstr "Rozłącz"
-#: templates/js/translated/barcode.js:550 templates/js/translated/stock.js:1118
+#: templates/js/translated/barcode.js:550 templates/js/translated/stock.js:1117
msgid "Remove stock item"
msgstr ""
@@ -9704,775 +9733,869 @@ msgstr ""
msgid "Barcode does not match a valid location"
msgstr ""
-#: templates/js/translated/bom.js:77
+#: templates/js/translated/bom.js:78
msgid "Create BOM Item"
msgstr ""
-#: templates/js/translated/bom.js:131
+#: templates/js/translated/bom.js:132
msgid "Display row data"
msgstr "Wyświetl dane wiersza"
-#: templates/js/translated/bom.js:187
+#: templates/js/translated/bom.js:188
msgid "Row Data"
msgstr "Dane wiersza"
-#: templates/js/translated/bom.js:188 templates/js/translated/bom.js:699
+#: templates/js/translated/bom.js:189 templates/js/translated/bom.js:700
#: templates/js/translated/modals.js:71 templates/js/translated/modals.js:622
#: templates/js/translated/modals.js:746 templates/js/translated/modals.js:1054
-#: templates/js/translated/purchase_order.js:791 templates/modals.html:15
+#: templates/js/translated/purchase_order.js:802 templates/modals.html:15
#: templates/modals.html:27 templates/modals.html:39 templates/modals.html:50
msgid "Close"
msgstr "Zamknij"
-#: templates/js/translated/bom.js:305
+#: templates/js/translated/bom.js:306
msgid "Download BOM Template"
msgstr "Pobierz szablon BOM-u"
-#: templates/js/translated/bom.js:350
+#: templates/js/translated/bom.js:351
msgid "Multi Level BOM"
msgstr ""
-#: templates/js/translated/bom.js:351
+#: templates/js/translated/bom.js:352
msgid "Include BOM data for subassemblies"
msgstr ""
-#: templates/js/translated/bom.js:356
+#: templates/js/translated/bom.js:357
msgid "Levels"
msgstr "Poziomy"
-#: templates/js/translated/bom.js:357
+#: templates/js/translated/bom.js:358
msgid "Select maximum number of BOM levels to export (0 = all levels)"
msgstr ""
-#: templates/js/translated/bom.js:364
+#: templates/js/translated/bom.js:365
msgid "Include Alternative Parts"
msgstr ""
-#: templates/js/translated/bom.js:365
+#: templates/js/translated/bom.js:366
msgid "Include alternative parts in exported BOM"
msgstr ""
-#: templates/js/translated/bom.js:370
+#: templates/js/translated/bom.js:371
msgid "Include Parameter Data"
msgstr ""
-#: templates/js/translated/bom.js:371
+#: templates/js/translated/bom.js:372
msgid "Include part parameter data in exported BOM"
msgstr ""
-#: templates/js/translated/bom.js:376
+#: templates/js/translated/bom.js:377
msgid "Include Stock Data"
msgstr ""
-#: templates/js/translated/bom.js:377
+#: templates/js/translated/bom.js:378
msgid "Include part stock data in exported BOM"
msgstr ""
-#: templates/js/translated/bom.js:382
+#: templates/js/translated/bom.js:383
msgid "Include Manufacturer Data"
msgstr ""
-#: templates/js/translated/bom.js:383
+#: templates/js/translated/bom.js:384
msgid "Include part manufacturer data in exported BOM"
msgstr ""
-#: templates/js/translated/bom.js:388
+#: templates/js/translated/bom.js:389
msgid "Include Supplier Data"
msgstr ""
-#: templates/js/translated/bom.js:389
+#: templates/js/translated/bom.js:390
msgid "Include part supplier data in exported BOM"
msgstr ""
-#: templates/js/translated/bom.js:394
+#: templates/js/translated/bom.js:395
msgid "Include Pricing Data"
msgstr ""
-#: templates/js/translated/bom.js:395
+#: templates/js/translated/bom.js:396
msgid "Include part pricing data in exported BOM"
msgstr ""
-#: templates/js/translated/bom.js:590
+#: templates/js/translated/bom.js:591
msgid "Remove substitute part"
msgstr ""
-#: templates/js/translated/bom.js:644
+#: templates/js/translated/bom.js:645
msgid "Select and add a new substitute part using the input below"
msgstr ""
-#: templates/js/translated/bom.js:655
+#: templates/js/translated/bom.js:656
msgid "Are you sure you wish to remove this substitute part link?"
msgstr ""
-#: templates/js/translated/bom.js:661
+#: templates/js/translated/bom.js:662
msgid "Remove Substitute Part"
msgstr ""
-#: templates/js/translated/bom.js:700
+#: templates/js/translated/bom.js:701
msgid "Add Substitute"
msgstr "Dodaj zamiennik"
-#: templates/js/translated/bom.js:701
+#: templates/js/translated/bom.js:702
msgid "Edit BOM Item Substitutes"
msgstr ""
-#: templates/js/translated/bom.js:763
+#: templates/js/translated/bom.js:764
msgid "All selected BOM items will be deleted"
msgstr ""
-#: templates/js/translated/bom.js:779
+#: templates/js/translated/bom.js:780
msgid "Delete selected BOM items?"
msgstr ""
-#: templates/js/translated/bom.js:906
+#: templates/js/translated/bom.js:826
+msgid "Delete items"
+msgstr ""
+
+#: templates/js/translated/bom.js:924
msgid "Load BOM for subassembly"
msgstr ""
-#: templates/js/translated/bom.js:916
+#: templates/js/translated/bom.js:934
msgid "Substitutes Available"
msgstr ""
-#: templates/js/translated/bom.js:920 templates/js/translated/build.js:2090
+#: templates/js/translated/bom.js:938 templates/js/translated/build.js:2429
msgid "Variant stock allowed"
msgstr ""
-#: templates/js/translated/bom.js:984
+#: templates/js/translated/bom.js:1002
msgid "Substitutes"
msgstr ""
-#: templates/js/translated/bom.js:1104
+#: templates/js/translated/bom.js:1122
msgid "BOM pricing is complete"
msgstr ""
-#: templates/js/translated/bom.js:1109
+#: templates/js/translated/bom.js:1127
msgid "BOM pricing is incomplete"
msgstr ""
-#: templates/js/translated/bom.js:1116
+#: templates/js/translated/bom.js:1134
msgid "No pricing available"
msgstr ""
-#: templates/js/translated/bom.js:1147 templates/js/translated/build.js:2173
-#: templates/js/translated/sales_order.js:1887
+#: templates/js/translated/bom.js:1165 templates/js/translated/build.js:2523
+#: templates/js/translated/sales_order.js:1899
msgid "No Stock Available"
msgstr ""
-#: templates/js/translated/bom.js:1152 templates/js/translated/build.js:2177
+#: templates/js/translated/bom.js:1170 templates/js/translated/build.js:2527
msgid "Includes variant and substitute stock"
msgstr ""
-#: templates/js/translated/bom.js:1154 templates/js/translated/build.js:2179
-#: templates/js/translated/part.js:1230
+#: templates/js/translated/bom.js:1172 templates/js/translated/build.js:2529
+#: templates/js/translated/part.js:1229
msgid "Includes variant stock"
msgstr ""
-#: templates/js/translated/bom.js:1156 templates/js/translated/build.js:2181
+#: templates/js/translated/bom.js:1174 templates/js/translated/build.js:2531
msgid "Includes substitute stock"
msgstr ""
-#: templates/js/translated/bom.js:1184 templates/js/translated/build.js:2164
-#: templates/js/translated/build.js:2255
+#: templates/js/translated/bom.js:1204 templates/js/translated/build.js:2514
msgid "Consumable item"
msgstr ""
-#: templates/js/translated/bom.js:1244
+#: templates/js/translated/bom.js:1264
msgid "Validate BOM Item"
msgstr ""
-#: templates/js/translated/bom.js:1246
+#: templates/js/translated/bom.js:1266
msgid "This line has been validated"
msgstr ""
-#: templates/js/translated/bom.js:1248
+#: templates/js/translated/bom.js:1268
msgid "Edit substitute parts"
msgstr ""
-#: templates/js/translated/bom.js:1250 templates/js/translated/bom.js:1445
+#: templates/js/translated/bom.js:1270 templates/js/translated/bom.js:1465
msgid "Edit BOM Item"
msgstr ""
-#: templates/js/translated/bom.js:1252
+#: templates/js/translated/bom.js:1272
msgid "Delete BOM Item"
msgstr ""
-#: templates/js/translated/bom.js:1272
+#: templates/js/translated/bom.js:1292
msgid "View BOM"
msgstr "Zobacz BOM"
-#: templates/js/translated/bom.js:1356 templates/js/translated/build.js:1927
+#: templates/js/translated/bom.js:1376
msgid "No BOM items found"
msgstr ""
-#: templates/js/translated/bom.js:1616 templates/js/translated/build.js:2073
+#: templates/js/translated/bom.js:1636 templates/js/translated/build.js:2414
msgid "Required Part"
msgstr ""
-#: templates/js/translated/bom.js:1642
+#: templates/js/translated/bom.js:1662
msgid "Inherited from parent BOM"
msgstr ""
-#: templates/js/translated/build.js:126
+#: templates/js/translated/build.js:136
msgid "Edit Build Order"
msgstr ""
-#: templates/js/translated/build.js:169
+#: templates/js/translated/build.js:179
msgid "Create Build Order"
msgstr ""
-#: templates/js/translated/build.js:202
+#: templates/js/translated/build.js:211
msgid "Cancel Build Order"
msgstr ""
-#: templates/js/translated/build.js:211
+#: templates/js/translated/build.js:220
msgid "Are you sure you wish to cancel this build?"
msgstr "Czy na pewno przerwać tę budowę?"
-#: templates/js/translated/build.js:217
+#: templates/js/translated/build.js:226
msgid "Stock items have been allocated to this build order"
msgstr ""
-#: templates/js/translated/build.js:224
+#: templates/js/translated/build.js:233
msgid "There are incomplete outputs remaining for this build order"
msgstr ""
-#: templates/js/translated/build.js:276
+#: templates/js/translated/build.js:285
msgid "Build order is ready to be completed"
msgstr ""
-#: templates/js/translated/build.js:284
+#: templates/js/translated/build.js:293
msgid "This build order cannot be completed as there are incomplete outputs"
msgstr ""
-#: templates/js/translated/build.js:289
+#: templates/js/translated/build.js:298
msgid "Build Order is incomplete"
msgstr ""
-#: templates/js/translated/build.js:307
+#: templates/js/translated/build.js:316
msgid "Complete Build Order"
msgstr ""
-#: templates/js/translated/build.js:348 templates/js/translated/stock.js:119
-#: templates/js/translated/stock.js:265
+#: templates/js/translated/build.js:357 templates/js/translated/stock.js:118
+#: templates/js/translated/stock.js:264
msgid "Next available serial number"
msgstr ""
-#: templates/js/translated/build.js:350 templates/js/translated/stock.js:121
-#: templates/js/translated/stock.js:267
+#: templates/js/translated/build.js:359 templates/js/translated/stock.js:120
+#: templates/js/translated/stock.js:266
msgid "Latest serial number"
msgstr "Ostatni numer seryjny"
-#: templates/js/translated/build.js:359
+#: templates/js/translated/build.js:368
msgid "The Bill of Materials contains trackable parts"
msgstr ""
-#: templates/js/translated/build.js:360
+#: templates/js/translated/build.js:369
msgid "Build outputs must be generated individually"
msgstr ""
-#: templates/js/translated/build.js:368
+#: templates/js/translated/build.js:377
msgid "Trackable parts can have serial numbers specified"
msgstr ""
-#: templates/js/translated/build.js:369
+#: templates/js/translated/build.js:378
msgid "Enter serial numbers to generate multiple single build outputs"
msgstr ""
-#: templates/js/translated/build.js:376
+#: templates/js/translated/build.js:385
msgid "Create Build Output"
msgstr "Utwórz zlecenie budowy"
-#: templates/js/translated/build.js:407
+#: templates/js/translated/build.js:416
msgid "Allocate stock items to this build output"
msgstr ""
-#: templates/js/translated/build.js:418
-msgid "Unallocate stock from build output"
+#: templates/js/translated/build.js:424
+msgid "Deallocate stock from build output"
msgstr ""
-#: templates/js/translated/build.js:427
+#: templates/js/translated/build.js:433
msgid "Complete build output"
msgstr ""
-#: templates/js/translated/build.js:435
+#: templates/js/translated/build.js:441
msgid "Scrap build output"
msgstr ""
-#: templates/js/translated/build.js:442
+#: templates/js/translated/build.js:448
msgid "Delete build output"
msgstr ""
-#: templates/js/translated/build.js:462
-msgid "Are you sure you wish to unallocate stock items from this build?"
+#: templates/js/translated/build.js:468
+msgid "Are you sure you wish to deallocate the selected stock items from this build?"
msgstr ""
-#: templates/js/translated/build.js:480
-msgid "Unallocate Stock Items"
+#: templates/js/translated/build.js:486
+msgid "Deallocate Stock Items"
msgstr ""
-#: templates/js/translated/build.js:566 templates/js/translated/build.js:690
-#: templates/js/translated/build.js:812
+#: templates/js/translated/build.js:572 templates/js/translated/build.js:696
+#: templates/js/translated/build.js:818
msgid "Select Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:567 templates/js/translated/build.js:691
-#: templates/js/translated/build.js:813
+#: templates/js/translated/build.js:573 templates/js/translated/build.js:697
+#: templates/js/translated/build.js:819
msgid "At least one build output must be selected"
msgstr ""
-#: templates/js/translated/build.js:581
+#: templates/js/translated/build.js:587
msgid "Selected build outputs will be marked as complete"
msgstr ""
-#: templates/js/translated/build.js:585 templates/js/translated/build.js:715
-#: templates/js/translated/build.js:835
+#: templates/js/translated/build.js:591 templates/js/translated/build.js:721
+#: templates/js/translated/build.js:841
msgid "Output"
msgstr "Wyjście"
-#: templates/js/translated/build.js:609
+#: templates/js/translated/build.js:615
msgid "Complete Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:706
+#: templates/js/translated/build.js:712
msgid "Selected build outputs will be marked as scrapped"
msgstr ""
-#: templates/js/translated/build.js:708
+#: templates/js/translated/build.js:714
msgid "Scrapped output are marked as rejected"
msgstr ""
-#: templates/js/translated/build.js:709
+#: templates/js/translated/build.js:715
msgid "Allocated stock items will no longer be available"
msgstr ""
-#: templates/js/translated/build.js:710
+#: templates/js/translated/build.js:716
msgid "The completion status of the build order will not be adjusted"
msgstr ""
-#: templates/js/translated/build.js:737
+#: templates/js/translated/build.js:743
msgid "Scrap Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:827
+#: templates/js/translated/build.js:833
msgid "Selected build outputs will be deleted"
msgstr ""
-#: templates/js/translated/build.js:829
+#: templates/js/translated/build.js:835
msgid "Build output data will be permanently deleted"
msgstr ""
-#: templates/js/translated/build.js:830
+#: templates/js/translated/build.js:836
msgid "Allocated stock items will be returned to stock"
msgstr ""
-#: templates/js/translated/build.js:848
+#: templates/js/translated/build.js:854
msgid "Delete Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:934
+#: templates/js/translated/build.js:941
msgid "No build order allocations found"
msgstr ""
-#: templates/js/translated/build.js:971
+#: templates/js/translated/build.js:970 templates/js/translated/build.js:2270
+msgid "Allocated Quantity"
+msgstr ""
+
+#: templates/js/translated/build.js:984
msgid "Location not specified"
msgstr ""
-#: templates/js/translated/build.js:1047
+#: templates/js/translated/build.js:1006
+msgid "Complete outputs"
+msgstr ""
+
+#: templates/js/translated/build.js:1024
+msgid "Scrap outputs"
+msgstr ""
+
+#: templates/js/translated/build.js:1042
+msgid "Delete outputs"
+msgstr ""
+
+#: templates/js/translated/build.js:1100
msgid "build output"
msgstr ""
-#: templates/js/translated/build.js:1048
+#: templates/js/translated/build.js:1101
msgid "build outputs"
msgstr ""
-#: templates/js/translated/build.js:1383
+#: templates/js/translated/build.js:1105
+msgid "Build output actions"
+msgstr ""
+
+#: templates/js/translated/build.js:1274
msgid "No active build outputs found"
msgstr ""
-#: templates/js/translated/build.js:1457
-msgid "Allocated Stock"
+#: templates/js/translated/build.js:1329
+msgid "Allocated Lines"
msgstr ""
-#: templates/js/translated/build.js:1464
-msgid "No tracked BOM items for this build"
+#: templates/js/translated/build.js:1343
+msgid "Required Tests"
msgstr ""
-#: templates/js/translated/build.js:1486
-msgid "Completed Tests"
-msgstr ""
-
-#: templates/js/translated/build.js:1491
-msgid "No required tests for this build"
-msgstr ""
-
-#: templates/js/translated/build.js:2032 templates/js/translated/build.js:3056
-#: templates/js/translated/sales_order.js:1632
-msgid "Edit stock allocation"
-msgstr ""
-
-#: templates/js/translated/build.js:2034 templates/js/translated/build.js:3057
-#: templates/js/translated/sales_order.js:1633
-msgid "Delete stock allocation"
-msgstr ""
-
-#: templates/js/translated/build.js:2050
-msgid "Edit Allocation"
-msgstr ""
-
-#: templates/js/translated/build.js:2060
-msgid "Remove Allocation"
-msgstr ""
-
-#: templates/js/translated/build.js:2086
-msgid "Substitute parts available"
-msgstr ""
-
-#: templates/js/translated/build.js:2122
-msgid "Quantity Per"
-msgstr "Ilość za"
-
-#: templates/js/translated/build.js:2167
-#: templates/js/translated/sales_order.js:1894
-msgid "Insufficient stock available"
-msgstr ""
-
-#: templates/js/translated/build.js:2169
-#: templates/js/translated/sales_order.js:1892
-msgid "Sufficient stock available"
-msgstr ""
-
-#: templates/js/translated/build.js:2263
-#: templates/js/translated/sales_order.js:1993
-msgid "Build stock"
-msgstr ""
-
-#: templates/js/translated/build.js:2267 templates/stock_table.html:38
-msgid "Order stock"
-msgstr ""
-
-#: templates/js/translated/build.js:2270
-#: templates/js/translated/sales_order.js:1987
-msgid "Allocate stock"
-msgstr ""
-
-#: templates/js/translated/build.js:2310
-#: templates/js/translated/purchase_order.js:616
-#: templates/js/translated/sales_order.js:1159
+#: templates/js/translated/build.js:1502
+#: templates/js/translated/purchase_order.js:627
+#: templates/js/translated/sales_order.js:1171
msgid "Select Parts"
msgstr "Wybierz części"
-#: templates/js/translated/build.js:2311
-#: templates/js/translated/sales_order.js:1160
+#: templates/js/translated/build.js:1503
+#: templates/js/translated/sales_order.js:1172
msgid "You must select at least one part to allocate"
msgstr ""
-#: templates/js/translated/build.js:2359
-#: templates/js/translated/sales_order.js:1109
+#: templates/js/translated/build.js:1566
+#: templates/js/translated/sales_order.js:1121
msgid "Specify stock allocation quantity"
msgstr ""
-#: templates/js/translated/build.js:2438
+#: templates/js/translated/build.js:1643
msgid "All Parts Allocated"
msgstr ""
-#: templates/js/translated/build.js:2439
+#: templates/js/translated/build.js:1644
msgid "All selected parts have been fully allocated"
msgstr ""
-#: templates/js/translated/build.js:2453
-#: templates/js/translated/sales_order.js:1174
+#: templates/js/translated/build.js:1658
+#: templates/js/translated/sales_order.js:1186
msgid "Select source location (leave blank to take from all locations)"
msgstr ""
-#: templates/js/translated/build.js:2481
+#: templates/js/translated/build.js:1686
msgid "Allocate Stock Items to Build Order"
msgstr ""
-#: templates/js/translated/build.js:2492
-#: templates/js/translated/sales_order.js:1271
+#: templates/js/translated/build.js:1697
+#: templates/js/translated/sales_order.js:1283
msgid "No matching stock locations"
msgstr ""
-#: templates/js/translated/build.js:2565
-#: templates/js/translated/sales_order.js:1348
+#: templates/js/translated/build.js:1770
+#: templates/js/translated/sales_order.js:1360
msgid "No matching stock items"
msgstr ""
-#: templates/js/translated/build.js:2662
+#: templates/js/translated/build.js:1867
msgid "Automatic Stock Allocation"
msgstr ""
-#: templates/js/translated/build.js:2663
+#: templates/js/translated/build.js:1868
msgid "Stock items will be automatically allocated to this build order, according to the provided guidelines"
msgstr ""
-#: templates/js/translated/build.js:2665
+#: templates/js/translated/build.js:1870
msgid "If a location is specified, stock will only be allocated from that location"
msgstr ""
-#: templates/js/translated/build.js:2666
+#: templates/js/translated/build.js:1871
msgid "If stock is considered interchangeable, it will be allocated from the first location it is found"
msgstr ""
-#: templates/js/translated/build.js:2667
+#: templates/js/translated/build.js:1872
msgid "If substitute stock is allowed, it will be used where stock of the primary part cannot be found"
msgstr ""
-#: templates/js/translated/build.js:2694
+#: templates/js/translated/build.js:1899
msgid "Allocate Stock Items"
msgstr ""
-#: templates/js/translated/build.js:2800
+#: templates/js/translated/build.js:2005
msgid "No builds matching query"
msgstr ""
-#: templates/js/translated/build.js:2835 templates/js/translated/part.js:2208
-#: templates/js/translated/part.js:2692 templates/js/translated/stock.js:1759
-#: templates/js/translated/stock.js:2458
+#: templates/js/translated/build.js:2040 templates/js/translated/build.js:2408
+#: templates/js/translated/part.js:2284 templates/js/translated/part.js:2677
+#: templates/js/translated/stock.js:1899 templates/js/translated/stock.js:2589
msgid "Select"
msgstr "Wybierz"
-#: templates/js/translated/build.js:2849
+#: templates/js/translated/build.js:2054
msgid "Build order is overdue"
msgstr ""
-#: templates/js/translated/build.js:2883
+#: templates/js/translated/build.js:2100
msgid "Progress"
msgstr ""
-#: templates/js/translated/build.js:2919 templates/js/translated/stock.js:2779
+#: templates/js/translated/build.js:2136 templates/js/translated/stock.js:2910
msgid "No user information"
msgstr "Brak informacji o użytkowniku"
-#: templates/js/translated/build.js:2934
+#: templates/js/translated/build.js:2151
msgid "group"
msgstr ""
-#: templates/js/translated/build.js:3033
-msgid "No parts allocated for"
+#: templates/js/translated/build.js:2315
+#: templates/js/translated/sales_order.js:1644
+msgid "Edit stock allocation"
msgstr ""
-#: templates/js/translated/company.js:87
+#: templates/js/translated/build.js:2316
+#: templates/js/translated/sales_order.js:1645
+msgid "Delete stock allocation"
+msgstr ""
+
+#: templates/js/translated/build.js:2331
+msgid "Edit Allocation"
+msgstr ""
+
+#: templates/js/translated/build.js:2343
+msgid "Remove Allocation"
+msgstr ""
+
+#: templates/js/translated/build.js:2384
+msgid "build line"
+msgstr ""
+
+#: templates/js/translated/build.js:2385
+msgid "build lines"
+msgstr ""
+
+#: templates/js/translated/build.js:2403
+msgid "No build lines found"
+msgstr ""
+
+#: templates/js/translated/build.js:2433 templates/js/translated/part.js:767
+#: templates/js/translated/part.js:1175
+msgid "Trackable part"
+msgstr ""
+
+#: templates/js/translated/build.js:2468
+msgid "Unit Quantity"
+msgstr ""
+
+#: templates/js/translated/build.js:2517
+#: templates/js/translated/sales_order.js:1906
+msgid "Insufficient stock available"
+msgstr ""
+
+#: templates/js/translated/build.js:2519
+#: templates/js/translated/sales_order.js:1904
+msgid "Sufficient stock available"
+msgstr ""
+
+#: templates/js/translated/build.js:2566
+msgid "Consumable Item"
+msgstr ""
+
+#: templates/js/translated/build.js:2571
+msgid "Tracked item"
+msgstr ""
+
+#: templates/js/translated/build.js:2578
+#: templates/js/translated/sales_order.js:2005
+msgid "Build stock"
+msgstr ""
+
+#: templates/js/translated/build.js:2583 templates/js/translated/stock.js:1779
+msgid "Order stock"
+msgstr ""
+
+#: templates/js/translated/build.js:2587
+#: templates/js/translated/sales_order.js:1999
+msgid "Allocate stock"
+msgstr ""
+
+#: templates/js/translated/build.js:2591
+msgid "Remove stock allocation"
+msgstr ""
+
+#: templates/js/translated/company.js:97
msgid "Add Manufacturer"
msgstr "Dodaj producenta"
-#: templates/js/translated/company.js:100
-#: templates/js/translated/company.js:202
+#: templates/js/translated/company.js:110
+#: templates/js/translated/company.js:212
msgid "Add Manufacturer Part"
msgstr "Dodaj część producenta"
-#: templates/js/translated/company.js:121
+#: templates/js/translated/company.js:131
msgid "Edit Manufacturer Part"
msgstr ""
-#: templates/js/translated/company.js:190
-#: templates/js/translated/purchase_order.js:94
+#: templates/js/translated/company.js:200
+#: templates/js/translated/purchase_order.js:93
msgid "Add Supplier"
msgstr "Dodaj dostawcę"
-#: templates/js/translated/company.js:232
-#: templates/js/translated/purchase_order.js:338
+#: templates/js/translated/company.js:242
+#: templates/js/translated/purchase_order.js:349
msgid "Add Supplier Part"
msgstr ""
-#: templates/js/translated/company.js:333
+#: templates/js/translated/company.js:343
msgid "All selected supplier parts will be deleted"
msgstr "Wszystkie wybrane komponenty dostawcy zostaną usunięte"
-#: templates/js/translated/company.js:349
+#: templates/js/translated/company.js:359
msgid "Delete Supplier Parts"
msgstr ""
-#: templates/js/translated/company.js:457
+#: templates/js/translated/company.js:464
msgid "Add new Company"
msgstr "Dodaj nową firmę"
-#: templates/js/translated/company.js:528
+#: templates/js/translated/company.js:535
msgid "Parts Supplied"
msgstr ""
-#: templates/js/translated/company.js:537
+#: templates/js/translated/company.js:544
msgid "Parts Manufactured"
msgstr ""
-#: templates/js/translated/company.js:552
+#: templates/js/translated/company.js:559
msgid "No company information found"
msgstr ""
-#: templates/js/translated/company.js:601
+#: templates/js/translated/company.js:608
msgid "Create New Contact"
msgstr ""
-#: templates/js/translated/company.js:617
-#: templates/js/translated/company.js:740
+#: templates/js/translated/company.js:624
+#: templates/js/translated/company.js:747
msgid "Edit Contact"
msgstr ""
-#: templates/js/translated/company.js:654
+#: templates/js/translated/company.js:661
msgid "All selected contacts will be deleted"
msgstr ""
-#: templates/js/translated/company.js:660
-#: templates/js/translated/company.js:724
+#: templates/js/translated/company.js:667
+#: templates/js/translated/company.js:731
msgid "Role"
msgstr ""
-#: templates/js/translated/company.js:668
+#: templates/js/translated/company.js:675
msgid "Delete Contacts"
msgstr ""
-#: templates/js/translated/company.js:699
+#: templates/js/translated/company.js:706
msgid "No contacts found"
msgstr ""
-#: templates/js/translated/company.js:712
+#: templates/js/translated/company.js:719
msgid "Phone Number"
msgstr ""
-#: templates/js/translated/company.js:718
+#: templates/js/translated/company.js:725
msgid "Email Address"
msgstr ""
-#: templates/js/translated/company.js:744
+#: templates/js/translated/company.js:751
msgid "Delete Contact"
msgstr ""
-#: templates/js/translated/company.js:818
+#: templates/js/translated/company.js:886
+msgid "Create New Address"
+msgstr ""
+
+#: templates/js/translated/company.js:901
+#: templates/js/translated/company.js:1066
+msgid "Edit Address"
+msgstr ""
+
+#: templates/js/translated/company.js:936
+msgid "All selected addresses will be deleted"
+msgstr ""
+
+#: templates/js/translated/company.js:950
+msgid "Delete Addresses"
+msgstr ""
+
+#: templates/js/translated/company.js:977
+msgid "No addresses found"
+msgstr ""
+
+#: templates/js/translated/company.js:1020
+msgid "Postal city"
+msgstr ""
+
+#: templates/js/translated/company.js:1026
+msgid "State/province"
+msgstr ""
+
+#: templates/js/translated/company.js:1038
+msgid "Courier notes"
+msgstr ""
+
+#: templates/js/translated/company.js:1044
+msgid "Internal notes"
+msgstr ""
+
+#: templates/js/translated/company.js:1070
+msgid "Delete Address"
+msgstr ""
+
+#: templates/js/translated/company.js:1143
msgid "All selected manufacturer parts will be deleted"
msgstr ""
-#: templates/js/translated/company.js:833
+#: templates/js/translated/company.js:1158
msgid "Delete Manufacturer Parts"
msgstr ""
-#: templates/js/translated/company.js:867
+#: templates/js/translated/company.js:1192
msgid "All selected parameters will be deleted"
msgstr ""
-#: templates/js/translated/company.js:881
+#: templates/js/translated/company.js:1206
msgid "Delete Parameters"
msgstr "Usuń parametry"
-#: templates/js/translated/company.js:917
+#: templates/js/translated/company.js:1222
+#: templates/js/translated/company.js:1510 templates/js/translated/part.js:2213
+msgid "Order parts"
+msgstr "Zamów komponenty"
+
+#: templates/js/translated/company.js:1239
+msgid "Delete manufacturer parts"
+msgstr ""
+
+#: templates/js/translated/company.js:1271
+msgid "Manufacturer part actions"
+msgstr ""
+
+#: templates/js/translated/company.js:1290
msgid "No manufacturer parts found"
msgstr ""
-#: templates/js/translated/company.js:937
-#: templates/js/translated/company.js:1177 templates/js/translated/part.js:776
-#: templates/js/translated/part.js:1184
+#: templates/js/translated/company.js:1310
+#: templates/js/translated/company.js:1598 templates/js/translated/part.js:775
+#: templates/js/translated/part.js:1183
msgid "Template part"
msgstr ""
-#: templates/js/translated/company.js:941
-#: templates/js/translated/company.js:1181 templates/js/translated/part.js:780
-#: templates/js/translated/part.js:1188
+#: templates/js/translated/company.js:1314
+#: templates/js/translated/company.js:1602 templates/js/translated/part.js:779
+#: templates/js/translated/part.js:1187
msgid "Assembled part"
msgstr ""
-#: templates/js/translated/company.js:1061 templates/js/translated/part.js:1437
+#: templates/js/translated/company.js:1434 templates/js/translated/part.js:1436
msgid "No parameters found"
msgstr "Nie znaleziono parametrów"
-#: templates/js/translated/company.js:1096 templates/js/translated/part.js:1500
+#: templates/js/translated/company.js:1469 templates/js/translated/part.js:1499
msgid "Edit parameter"
msgstr "Edytuj Parametr"
-#: templates/js/translated/company.js:1097 templates/js/translated/part.js:1501
+#: templates/js/translated/company.js:1470 templates/js/translated/part.js:1500
msgid "Delete parameter"
msgstr "Usuń parametr"
-#: templates/js/translated/company.js:1114 templates/js/translated/part.js:1407
+#: templates/js/translated/company.js:1487 templates/js/translated/part.js:1406
msgid "Edit Parameter"
msgstr "Edytuj Parametr"
-#: templates/js/translated/company.js:1123 templates/js/translated/part.js:1522
+#: templates/js/translated/company.js:1496 templates/js/translated/part.js:1521
msgid "Delete Parameter"
msgstr "Usuń parametr"
-#: templates/js/translated/company.js:1156
+#: templates/js/translated/company.js:1527
+msgid "Delete supplier parts"
+msgstr ""
+
+#: templates/js/translated/company.js:1577
msgid "No supplier parts found"
msgstr ""
-#: templates/js/translated/company.js:1274
+#: templates/js/translated/company.js:1695
msgid "Base Units"
msgstr ""
-#: templates/js/translated/company.js:1304
+#: templates/js/translated/company.js:1725
msgid "Availability"
msgstr ""
-#: templates/js/translated/company.js:1335
+#: templates/js/translated/company.js:1756
msgid "Edit supplier part"
msgstr ""
-#: templates/js/translated/company.js:1336
+#: templates/js/translated/company.js:1757
msgid "Delete supplier part"
msgstr ""
-#: templates/js/translated/company.js:1389
+#: templates/js/translated/company.js:1810
#: templates/js/translated/pricing.js:694
msgid "Delete Price Break"
msgstr ""
-#: templates/js/translated/company.js:1399
+#: templates/js/translated/company.js:1820
#: templates/js/translated/pricing.js:712
msgid "Edit Price Break"
msgstr "Edytuj przedział cenowy"
-#: templates/js/translated/company.js:1414
+#: templates/js/translated/company.js:1835
msgid "No price break information found"
msgstr ""
-#: templates/js/translated/company.js:1443
+#: templates/js/translated/company.js:1864
msgid "Last updated"
msgstr "Ostatnio aktualizowane"
-#: templates/js/translated/company.js:1450
+#: templates/js/translated/company.js:1871
msgid "Edit price break"
msgstr "Edytuj przedział cenowy"
-#: templates/js/translated/company.js:1451
+#: templates/js/translated/company.js:1872
msgid "Delete price break"
msgstr ""
-#: templates/js/translated/filters.js:186
-#: templates/js/translated/filters.js:550
+#: templates/js/translated/filters.js:187
+#: templates/js/translated/filters.js:673
msgid "true"
msgstr "prawda"
-#: templates/js/translated/filters.js:190
-#: templates/js/translated/filters.js:551
+#: templates/js/translated/filters.js:191
+#: templates/js/translated/filters.js:674
msgid "false"
msgstr "fałsz"
-#: templates/js/translated/filters.js:214
+#: templates/js/translated/filters.js:215
msgid "Select filter"
msgstr "Wybierz filtr"
-#: templates/js/translated/filters.js:328
+#: templates/js/translated/filters.js:438
msgid "Print Labels"
msgstr ""
-#: templates/js/translated/filters.js:332
+#: templates/js/translated/filters.js:442
msgid "Print Reports"
msgstr ""
-#: templates/js/translated/filters.js:344
+#: templates/js/translated/filters.js:454
msgid "Download table data"
msgstr ""
-#: templates/js/translated/filters.js:351
+#: templates/js/translated/filters.js:461
msgid "Reload table data"
msgstr ""
-#: templates/js/translated/filters.js:360
+#: templates/js/translated/filters.js:470
msgid "Add new filter"
msgstr "Dodaj nowy filtr"
-#: templates/js/translated/filters.js:368
+#: templates/js/translated/filters.js:478
msgid "Clear all filters"
msgstr "Wyczyść wszystkie filtry"
-#: templates/js/translated/filters.js:460
+#: templates/js/translated/filters.js:583
msgid "Create filter"
msgstr "Utwórz filtr"
@@ -10497,6 +10620,12 @@ msgstr "Operacja usuwania nie jest dozwolona"
msgid "View operation not allowed"
msgstr "Operacja przeglądania nie jest dozwolona"
+#: templates/js/translated/forms.js:506 templates/js/translated/helpers.js:105
+#: templates/js/translated/part.js:369 templates/js/translated/pricing.js:629
+#: templates/js/translated/stock.js:215 users/models.py:253
+msgid "Delete"
+msgstr "Usuń"
+
#: templates/js/translated/forms.js:752
msgid "Keep this form open"
msgstr "Pozostaw ten formularz otwarty"
@@ -10514,23 +10643,23 @@ msgstr "Istnieją błędy formularza"
msgid "No results found"
msgstr "Nie znaleziono wyników"
-#: templates/js/translated/forms.js:2071 templates/js/translated/search.js:281
+#: templates/js/translated/forms.js:2071 templates/js/translated/search.js:239
msgid "Searching"
msgstr "Wyszukiwanie"
-#: templates/js/translated/forms.js:2276
+#: templates/js/translated/forms.js:2285
msgid "Clear input"
msgstr "Wyczyść wejście"
-#: templates/js/translated/forms.js:2733
+#: templates/js/translated/forms.js:2742
msgid "File Column"
msgstr "Kolumna pliku"
-#: templates/js/translated/forms.js:2733
+#: templates/js/translated/forms.js:2742
msgid "Field Name"
msgstr "Nazwa pola"
-#: templates/js/translated/forms.js:2745
+#: templates/js/translated/forms.js:2754
msgid "Select Columns"
msgstr "Wybór Kolumn"
@@ -10550,6 +10679,14 @@ msgstr ""
msgid "False"
msgstr ""
+#: templates/js/translated/index.js:99
+msgid "No parts required for builds"
+msgstr ""
+
+#: templates/js/translated/index.js:125
+msgid "Allocated Stock"
+msgstr ""
+
#: templates/js/translated/label.js:58
msgid "Select Printer"
msgstr ""
@@ -10651,7 +10788,7 @@ msgstr ""
#: templates/js/translated/news.js:38
#: templates/js/translated/notification.js:45
-#: templates/js/translated/part.js:1577
+#: templates/js/translated/part.js:1576
msgid "ID"
msgstr ""
@@ -10700,7 +10837,7 @@ msgid "Delete Line"
msgstr ""
#: templates/js/translated/order.js:281
-#: templates/js/translated/purchase_order.js:1958
+#: templates/js/translated/purchase_order.js:1968
msgid "No line items found"
msgstr ""
@@ -10716,363 +10853,355 @@ msgstr ""
msgid "Delete line"
msgstr ""
-#: templates/js/translated/part.js:91
+#: templates/js/translated/part.js:90
msgid "Part Attributes"
msgstr "Atrybuty części"
-#: templates/js/translated/part.js:95
+#: templates/js/translated/part.js:94
msgid "Part Creation Options"
msgstr ""
-#: templates/js/translated/part.js:99
+#: templates/js/translated/part.js:98
msgid "Part Duplication Options"
msgstr ""
-#: templates/js/translated/part.js:122
+#: templates/js/translated/part.js:121
msgid "Add Part Category"
msgstr ""
-#: templates/js/translated/part.js:294
+#: templates/js/translated/part.js:293
msgid "Parent part category"
msgstr ""
-#: templates/js/translated/part.js:310 templates/js/translated/stock.js:147
+#: templates/js/translated/part.js:309 templates/js/translated/stock.js:146
msgid "Icon (optional) - Explore all available icons on"
msgstr ""
-#: templates/js/translated/part.js:330
+#: templates/js/translated/part.js:329
msgid "Create Part Category"
msgstr "Utwórz nową kategorię części"
-#: templates/js/translated/part.js:333
+#: templates/js/translated/part.js:332
msgid "Create new category after this one"
msgstr ""
-#: templates/js/translated/part.js:334
+#: templates/js/translated/part.js:333
msgid "Part category created"
msgstr ""
-#: templates/js/translated/part.js:348
+#: templates/js/translated/part.js:347
msgid "Edit Part Category"
msgstr "Edytuj kategorię części"
-#: templates/js/translated/part.js:361
+#: templates/js/translated/part.js:360
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:366
+#: templates/js/translated/part.js:365
msgid "Move to parent category"
msgstr ""
-#: templates/js/translated/part.js:375
+#: templates/js/translated/part.js:374
msgid "Delete Part Category"
msgstr ""
-#: templates/js/translated/part.js:379
+#: templates/js/translated/part.js:378
msgid "Action for parts in this category"
msgstr ""
-#: templates/js/translated/part.js:384
+#: templates/js/translated/part.js:383
msgid "Action for child categories"
msgstr ""
-#: templates/js/translated/part.js:408
+#: templates/js/translated/part.js:407
msgid "Create Part"
msgstr "Utwórz część"
-#: templates/js/translated/part.js:410
+#: templates/js/translated/part.js:409
msgid "Create another part after this one"
msgstr "Utwórz kolejną część po tej"
-#: templates/js/translated/part.js:411
+#: templates/js/translated/part.js:410
msgid "Part created successfully"
msgstr "Część utworzona pomyślnie"
-#: templates/js/translated/part.js:439
+#: templates/js/translated/part.js:438
msgid "Edit Part"
msgstr "Edytuj część"
-#: templates/js/translated/part.js:441
+#: templates/js/translated/part.js:440
msgid "Part edited"
msgstr "Część zmodyfikowana"
-#: templates/js/translated/part.js:452
+#: templates/js/translated/part.js:451
msgid "Create Part Variant"
msgstr "Utwórz wariant części"
-#: templates/js/translated/part.js:509
+#: templates/js/translated/part.js:508
msgid "Active Part"
msgstr ""
-#: templates/js/translated/part.js:510
+#: templates/js/translated/part.js:509
msgid "Part cannot be deleted as it is currently active"
msgstr ""
-#: templates/js/translated/part.js:524
+#: templates/js/translated/part.js:523
msgid "Deleting this part cannot be reversed"
msgstr ""
-#: templates/js/translated/part.js:526
+#: templates/js/translated/part.js:525
msgid "Any stock items for this part will be deleted"
msgstr ""
-#: templates/js/translated/part.js:527
+#: templates/js/translated/part.js:526
msgid "This part will be removed from any Bills of Material"
msgstr ""
-#: templates/js/translated/part.js:528
+#: templates/js/translated/part.js:527
msgid "All manufacturer and supplier information for this part will be deleted"
msgstr ""
-#: templates/js/translated/part.js:535
+#: templates/js/translated/part.js:534
msgid "Delete Part"
msgstr ""
-#: templates/js/translated/part.js:571
+#: templates/js/translated/part.js:570
msgid "You are subscribed to notifications for this item"
msgstr "Masz włączone powiadomienia dla tej części"
-#: templates/js/translated/part.js:573
+#: templates/js/translated/part.js:572
msgid "You have subscribed to notifications for this item"
msgstr "Masz włączone powiadomienia dla tej części"
-#: templates/js/translated/part.js:578
+#: templates/js/translated/part.js:577
msgid "Subscribe to notifications for this item"
msgstr "Włącz powiadomienia dla tej części"
-#: templates/js/translated/part.js:580
+#: templates/js/translated/part.js:579
msgid "You have unsubscribed to notifications for this item"
msgstr "Zostałeś wypisany z powiadomień dla tej części"
-#: templates/js/translated/part.js:597
+#: templates/js/translated/part.js:596
msgid "Validating the BOM will mark each line item as valid"
msgstr ""
-#: templates/js/translated/part.js:607
+#: templates/js/translated/part.js:606
msgid "Validate Bill of Materials"
msgstr ""
-#: templates/js/translated/part.js:610
+#: templates/js/translated/part.js:609
msgid "Validated Bill of Materials"
msgstr ""
-#: templates/js/translated/part.js:635
+#: templates/js/translated/part.js:634
msgid "Copy Bill of Materials"
msgstr ""
-#: templates/js/translated/part.js:663
-#: templates/js/translated/table_filters.js:660
+#: templates/js/translated/part.js:662
+#: templates/js/translated/table_filters.js:682
msgid "Low stock"
msgstr ""
-#: templates/js/translated/part.js:666
+#: templates/js/translated/part.js:665
msgid "No stock available"
msgstr ""
-#: templates/js/translated/part.js:726
+#: templates/js/translated/part.js:725
msgid "Demand"
msgstr ""
-#: templates/js/translated/part.js:749
+#: templates/js/translated/part.js:748
msgid "Unit"
msgstr ""
-#: templates/js/translated/part.js:768 templates/js/translated/part.js:1176
-msgid "Trackable part"
-msgstr ""
-
-#: templates/js/translated/part.js:772 templates/js/translated/part.js:1180
+#: templates/js/translated/part.js:771 templates/js/translated/part.js:1179
msgid "Virtual part"
msgstr ""
-#: templates/js/translated/part.js:784
+#: templates/js/translated/part.js:783
msgid "Subscribed part"
msgstr "Obserwowane części"
-#: templates/js/translated/part.js:788
+#: templates/js/translated/part.js:787
msgid "Salable part"
msgstr ""
-#: templates/js/translated/part.js:863
+#: templates/js/translated/part.js:862
msgid "Schedule generation of a new stocktake report."
msgstr ""
-#: templates/js/translated/part.js:863
+#: templates/js/translated/part.js:862
msgid "Once complete, the stocktake report will be available for download."
msgstr ""
-#: templates/js/translated/part.js:871
+#: templates/js/translated/part.js:870
msgid "Generate Stocktake Report"
msgstr ""
-#: templates/js/translated/part.js:875
+#: templates/js/translated/part.js:874
msgid "Stocktake report scheduled"
msgstr ""
-#: templates/js/translated/part.js:1024
+#: templates/js/translated/part.js:1023
msgid "No stocktake information available"
msgstr ""
-#: templates/js/translated/part.js:1082 templates/js/translated/part.js:1118
+#: templates/js/translated/part.js:1081 templates/js/translated/part.js:1117
msgid "Edit Stocktake Entry"
msgstr ""
-#: templates/js/translated/part.js:1086 templates/js/translated/part.js:1128
+#: templates/js/translated/part.js:1085 templates/js/translated/part.js:1127
msgid "Delete Stocktake Entry"
msgstr ""
-#: templates/js/translated/part.js:1255
+#: templates/js/translated/part.js:1254
msgid "No variants found"
msgstr "Nie znaleziono wariantów"
-#: templates/js/translated/part.js:1572
+#: templates/js/translated/part.js:1571
msgid "No part parameter templates found"
msgstr "Nie znaleziono szablonów parametrów części"
-#: templates/js/translated/part.js:1635
+#: templates/js/translated/part.js:1634
msgid "Edit Part Parameter Template"
msgstr ""
-#: templates/js/translated/part.js:1647
+#: templates/js/translated/part.js:1646
msgid "Any parameters which reference this template will also be deleted"
msgstr ""
-#: templates/js/translated/part.js:1655
+#: templates/js/translated/part.js:1654
msgid "Delete Part Parameter Template"
msgstr ""
-#: templates/js/translated/part.js:1689
-#: templates/js/translated/purchase_order.js:1618
+#: templates/js/translated/part.js:1688
+#: templates/js/translated/purchase_order.js:1633
msgid "No purchase orders found"
msgstr ""
-#: templates/js/translated/part.js:1832
-#: templates/js/translated/purchase_order.js:2121
-#: templates/js/translated/return_order.js:740
-#: templates/js/translated/sales_order.js:1855
+#: templates/js/translated/part.js:1831
+#: templates/js/translated/purchase_order.js:2131
+#: templates/js/translated/return_order.js:752
+#: templates/js/translated/sales_order.js:1867
msgid "This line item is overdue"
msgstr ""
-#: templates/js/translated/part.js:1877
-#: templates/js/translated/purchase_order.js:2188
+#: templates/js/translated/part.js:1876
+#: templates/js/translated/purchase_order.js:2198
msgid "Receive line item"
msgstr ""
-#: templates/js/translated/part.js:1944
+#: templates/js/translated/part.js:1943
msgid "Delete part relationship"
msgstr ""
-#: templates/js/translated/part.js:1966
+#: templates/js/translated/part.js:1965
msgid "Delete Part Relationship"
msgstr ""
-#: templates/js/translated/part.js:2054 templates/js/translated/part.js:2366
+#: templates/js/translated/part.js:2053 templates/js/translated/part.js:2442
msgid "No parts found"
msgstr "Nie znaleziono części"
-#: templates/js/translated/part.js:2192
-msgid "parts"
-msgstr ""
-
-#: templates/js/translated/part.js:2276
-msgid "No category"
-msgstr "Brak kategorii"
-
-#: templates/js/translated/part.js:2390 templates/js/translated/part.js:2611
-#: templates/js/translated/stock.js:2417
-msgid "Display as list"
-msgstr "Wyświetl jako listę"
-
-#: templates/js/translated/part.js:2406
-msgid "Display as grid"
-msgstr "Wyświetl jako siatkę"
-
-#: templates/js/translated/part.js:2472
+#: templates/js/translated/part.js:2174
msgid "Set the part category for the selected parts"
msgstr ""
-#: templates/js/translated/part.js:2477
+#: templates/js/translated/part.js:2179
msgid "Set Part Category"
msgstr "Ustaw kategorię części"
+#: templates/js/translated/part.js:2204
+msgid "Set category"
+msgstr "Ustaw kategorię"
+
+#: templates/js/translated/part.js:2259
+msgid "parts"
+msgstr ""
+
+#: templates/js/translated/part.js:2352
+msgid "No category"
+msgstr "Brak kategorii"
+
+#: templates/js/translated/part.js:2466 templates/js/translated/part.js:2596
+#: templates/js/translated/stock.js:2548
+msgid "Display as list"
+msgstr "Wyświetl jako listę"
+
#: templates/js/translated/part.js:2482
-msgid "Select Part Category"
-msgstr ""
+msgid "Display as grid"
+msgstr "Wyświetl jako siatkę"
-#: templates/js/translated/part.js:2495
-msgid "Category is required"
-msgstr ""
-
-#: templates/js/translated/part.js:2595
+#: templates/js/translated/part.js:2580
msgid "No subcategories found"
msgstr ""
-#: templates/js/translated/part.js:2631 templates/js/translated/stock.js:2437
+#: templates/js/translated/part.js:2616 templates/js/translated/stock.js:2568
msgid "Display as tree"
msgstr "Wyświetl jako drzewo"
-#: templates/js/translated/part.js:2711
+#: templates/js/translated/part.js:2696
msgid "Load Subcategories"
msgstr ""
-#: templates/js/translated/part.js:2727
+#: templates/js/translated/part.js:2712
msgid "Subscribed category"
msgstr "Obserwowana kategoria"
-#: templates/js/translated/part.js:2807
+#: templates/js/translated/part.js:2792
msgid "No test templates matching query"
msgstr ""
-#: templates/js/translated/part.js:2858 templates/js/translated/stock.js:1380
+#: templates/js/translated/part.js:2843 templates/js/translated/stock.js:1379
msgid "Edit test result"
msgstr ""
-#: templates/js/translated/part.js:2859 templates/js/translated/stock.js:1381
-#: templates/js/translated/stock.js:1643
+#: templates/js/translated/part.js:2844 templates/js/translated/stock.js:1380
+#: templates/js/translated/stock.js:1642
msgid "Delete test result"
msgstr ""
-#: templates/js/translated/part.js:2863
+#: templates/js/translated/part.js:2848
msgid "This test is defined for a parent part"
msgstr ""
-#: templates/js/translated/part.js:2879
+#: templates/js/translated/part.js:2864
msgid "Edit Test Result Template"
msgstr ""
-#: templates/js/translated/part.js:2893
+#: templates/js/translated/part.js:2878
msgid "Delete Test Result Template"
msgstr ""
-#: templates/js/translated/part.js:2972 templates/js/translated/part.js:2973
+#: templates/js/translated/part.js:2957 templates/js/translated/part.js:2958
msgid "No date specified"
msgstr ""
-#: templates/js/translated/part.js:2975
+#: templates/js/translated/part.js:2960
msgid "Specified date is in the past"
msgstr ""
-#: templates/js/translated/part.js:2981
+#: templates/js/translated/part.js:2966
msgid "Speculative"
msgstr ""
-#: templates/js/translated/part.js:3031
+#: templates/js/translated/part.js:3016
msgid "No scheduling information available for this part"
msgstr ""
-#: templates/js/translated/part.js:3037
+#: templates/js/translated/part.js:3022
msgid "Error fetching scheduling information for this part"
msgstr ""
-#: templates/js/translated/part.js:3133
+#: templates/js/translated/part.js:3118
msgid "Scheduled Stock Quantities"
msgstr ""
-#: templates/js/translated/part.js:3149
+#: templates/js/translated/part.js:3134
msgid "Maximum Quantity"
msgstr ""
-#: templates/js/translated/part.js:3194
+#: templates/js/translated/part.js:3179
msgid "Minimum Stock Level"
msgstr ""
@@ -11168,234 +11297,234 @@ msgstr ""
msgid "Variant Part"
msgstr ""
-#: templates/js/translated/purchase_order.js:155
+#: templates/js/translated/purchase_order.js:166
msgid "Select purchase order to duplicate"
msgstr ""
-#: templates/js/translated/purchase_order.js:162
+#: templates/js/translated/purchase_order.js:173
msgid "Duplicate Line Items"
msgstr ""
-#: templates/js/translated/purchase_order.js:163
+#: templates/js/translated/purchase_order.js:174
msgid "Duplicate all line items from the selected order"
msgstr ""
-#: templates/js/translated/purchase_order.js:170
+#: templates/js/translated/purchase_order.js:181
msgid "Duplicate Extra Lines"
msgstr ""
-#: templates/js/translated/purchase_order.js:171
+#: templates/js/translated/purchase_order.js:182
msgid "Duplicate extra line items from the selected order"
msgstr ""
-#: templates/js/translated/purchase_order.js:192
+#: templates/js/translated/purchase_order.js:203
msgid "Edit Purchase Order"
msgstr "Edytuj zamówienie zakupu"
-#: templates/js/translated/purchase_order.js:209
+#: templates/js/translated/purchase_order.js:220
msgid "Duplication Options"
msgstr ""
-#: templates/js/translated/purchase_order.js:436
+#: templates/js/translated/purchase_order.js:447
msgid "Complete Purchase Order"
msgstr ""
-#: templates/js/translated/purchase_order.js:453
-#: templates/js/translated/return_order.js:195
-#: templates/js/translated/sales_order.js:485
+#: templates/js/translated/purchase_order.js:464
+#: templates/js/translated/return_order.js:207
+#: templates/js/translated/sales_order.js:497
msgid "Mark this order as complete?"
msgstr "Oznacz zamówienie jako zakończone?"
-#: templates/js/translated/purchase_order.js:459
+#: templates/js/translated/purchase_order.js:470
msgid "All line items have been received"
msgstr ""
-#: templates/js/translated/purchase_order.js:464
+#: templates/js/translated/purchase_order.js:475
msgid "This order has line items which have not been marked as received."
msgstr ""
-#: templates/js/translated/purchase_order.js:465
-#: templates/js/translated/sales_order.js:499
+#: templates/js/translated/purchase_order.js:476
+#: templates/js/translated/sales_order.js:511
msgid "Completing this order means that the order and line items will no longer be editable."
msgstr ""
-#: templates/js/translated/purchase_order.js:488
+#: templates/js/translated/purchase_order.js:499
msgid "Cancel Purchase Order"
msgstr ""
-#: templates/js/translated/purchase_order.js:493
+#: templates/js/translated/purchase_order.js:504
msgid "Are you sure you wish to cancel this purchase order?"
msgstr ""
-#: templates/js/translated/purchase_order.js:499
+#: templates/js/translated/purchase_order.js:510
msgid "This purchase order can not be cancelled"
msgstr ""
-#: templates/js/translated/purchase_order.js:520
-#: templates/js/translated/return_order.js:149
+#: templates/js/translated/purchase_order.js:531
+#: templates/js/translated/return_order.js:161
msgid "After placing this order, line items will no longer be editable."
msgstr ""
-#: templates/js/translated/purchase_order.js:525
+#: templates/js/translated/purchase_order.js:536
msgid "Issue Purchase Order"
msgstr ""
-#: templates/js/translated/purchase_order.js:617
+#: templates/js/translated/purchase_order.js:628
msgid "At least one purchaseable part must be selected"
msgstr ""
-#: templates/js/translated/purchase_order.js:642
+#: templates/js/translated/purchase_order.js:653
msgid "Quantity to order"
msgstr ""
-#: templates/js/translated/purchase_order.js:651
+#: templates/js/translated/purchase_order.js:662
msgid "New supplier part"
msgstr ""
-#: templates/js/translated/purchase_order.js:669
+#: templates/js/translated/purchase_order.js:680
msgid "New purchase order"
msgstr ""
-#: templates/js/translated/purchase_order.js:701
+#: templates/js/translated/purchase_order.js:712
msgid "Add to purchase order"
msgstr ""
-#: templates/js/translated/purchase_order.js:845
+#: templates/js/translated/purchase_order.js:860
msgid "No matching supplier parts"
msgstr ""
-#: templates/js/translated/purchase_order.js:864
+#: templates/js/translated/purchase_order.js:879
msgid "No matching purchase orders"
msgstr ""
-#: templates/js/translated/purchase_order.js:1043
+#: templates/js/translated/purchase_order.js:1058
msgid "Select Line Items"
msgstr ""
-#: templates/js/translated/purchase_order.js:1044
-#: templates/js/translated/return_order.js:480
+#: templates/js/translated/purchase_order.js:1059
+#: templates/js/translated/return_order.js:492
msgid "At least one line item must be selected"
msgstr ""
-#: templates/js/translated/purchase_order.js:1074
+#: templates/js/translated/purchase_order.js:1089
msgid "Received Quantity"
msgstr ""
-#: templates/js/translated/purchase_order.js:1085
+#: templates/js/translated/purchase_order.js:1100
msgid "Quantity to receive"
msgstr ""
-#: templates/js/translated/purchase_order.js:1161
+#: templates/js/translated/purchase_order.js:1176
msgid "Stock Status"
msgstr ""
-#: templates/js/translated/purchase_order.js:1175
+#: templates/js/translated/purchase_order.js:1190
msgid "Add barcode"
msgstr ""
-#: templates/js/translated/purchase_order.js:1176
+#: templates/js/translated/purchase_order.js:1191
msgid "Remove barcode"
msgstr ""
-#: templates/js/translated/purchase_order.js:1179
+#: templates/js/translated/purchase_order.js:1194
msgid "Specify location"
msgstr ""
-#: templates/js/translated/purchase_order.js:1187
+#: templates/js/translated/purchase_order.js:1202
msgid "Add batch code"
msgstr ""
-#: templates/js/translated/purchase_order.js:1198
+#: templates/js/translated/purchase_order.js:1213
msgid "Add serial numbers"
msgstr ""
-#: templates/js/translated/purchase_order.js:1250
+#: templates/js/translated/purchase_order.js:1265
msgid "Serials"
msgstr ""
-#: templates/js/translated/purchase_order.js:1275
+#: templates/js/translated/purchase_order.js:1290
msgid "Order Code"
msgstr "Kod zamówienia"
-#: templates/js/translated/purchase_order.js:1277
+#: templates/js/translated/purchase_order.js:1292
msgid "Quantity to Receive"
msgstr "Ilość do otrzymania"
-#: templates/js/translated/purchase_order.js:1299
-#: templates/js/translated/return_order.js:545
+#: templates/js/translated/purchase_order.js:1314
+#: templates/js/translated/return_order.js:557
msgid "Confirm receipt of items"
msgstr "Potwierdź odbiór elementów"
-#: templates/js/translated/purchase_order.js:1300
+#: templates/js/translated/purchase_order.js:1315
msgid "Receive Purchase Order Items"
msgstr ""
-#: templates/js/translated/purchase_order.js:1368
+#: templates/js/translated/purchase_order.js:1383
msgid "Scan Item Barcode"
msgstr ""
-#: templates/js/translated/purchase_order.js:1369
+#: templates/js/translated/purchase_order.js:1384
msgid "Scan barcode on incoming item (must not match any existing stock items)"
msgstr ""
-#: templates/js/translated/purchase_order.js:1383
+#: templates/js/translated/purchase_order.js:1398
msgid "Invalid barcode data"
msgstr ""
-#: templates/js/translated/purchase_order.js:1645
-#: templates/js/translated/return_order.js:274
-#: templates/js/translated/sales_order.js:762
-#: templates/js/translated/sales_order.js:986
+#: templates/js/translated/purchase_order.js:1660
+#: templates/js/translated/return_order.js:286
+#: templates/js/translated/sales_order.js:774
+#: templates/js/translated/sales_order.js:998
msgid "Order is overdue"
msgstr ""
-#: templates/js/translated/purchase_order.js:1707
-#: templates/js/translated/return_order.js:342
-#: templates/js/translated/sales_order.js:839
-#: templates/js/translated/sales_order.js:999
+#: templates/js/translated/purchase_order.js:1722
+#: templates/js/translated/return_order.js:354
+#: templates/js/translated/sales_order.js:851
+#: templates/js/translated/sales_order.js:1011
msgid "Items"
msgstr "Przedmioty"
-#: templates/js/translated/purchase_order.js:1806
+#: templates/js/translated/purchase_order.js:1821
msgid "All selected Line items will be deleted"
msgstr ""
-#: templates/js/translated/purchase_order.js:1824
+#: templates/js/translated/purchase_order.js:1839
msgid "Delete selected Line items?"
msgstr ""
-#: templates/js/translated/purchase_order.js:1884
-#: templates/js/translated/sales_order.js:2047
+#: templates/js/translated/purchase_order.js:1894
+#: templates/js/translated/sales_order.js:2059
msgid "Duplicate Line Item"
msgstr ""
-#: templates/js/translated/purchase_order.js:1899
-#: templates/js/translated/return_order.js:464
-#: templates/js/translated/return_order.js:653
-#: templates/js/translated/sales_order.js:2060
+#: templates/js/translated/purchase_order.js:1909
+#: templates/js/translated/return_order.js:476
+#: templates/js/translated/return_order.js:665
+#: templates/js/translated/sales_order.js:2072
msgid "Edit Line Item"
msgstr ""
-#: templates/js/translated/purchase_order.js:1910
-#: templates/js/translated/return_order.js:666
-#: templates/js/translated/sales_order.js:2071
+#: templates/js/translated/purchase_order.js:1920
+#: templates/js/translated/return_order.js:678
+#: templates/js/translated/sales_order.js:2083
msgid "Delete Line Item"
msgstr ""
-#: templates/js/translated/purchase_order.js:2192
-#: templates/js/translated/sales_order.js:2001
+#: templates/js/translated/purchase_order.js:2202
+#: templates/js/translated/sales_order.js:2013
msgid "Duplicate line item"
msgstr ""
-#: templates/js/translated/purchase_order.js:2193
-#: templates/js/translated/return_order.js:785
-#: templates/js/translated/sales_order.js:2002
+#: templates/js/translated/purchase_order.js:2203
+#: templates/js/translated/return_order.js:797
+#: templates/js/translated/sales_order.js:2014
msgid "Edit line item"
msgstr ""
-#: templates/js/translated/purchase_order.js:2194
-#: templates/js/translated/return_order.js:789
-#: templates/js/translated/sales_order.js:2008
+#: templates/js/translated/purchase_order.js:2204
+#: templates/js/translated/return_order.js:801
+#: templates/js/translated/sales_order.js:2020
msgid "Delete line item"
msgstr ""
@@ -11424,941 +11553,973 @@ msgstr ""
msgid "Add Customer"
msgstr ""
-#: templates/js/translated/return_order.js:119
+#: templates/js/translated/return_order.js:131
msgid "Create Return Order"
msgstr ""
-#: templates/js/translated/return_order.js:134
+#: templates/js/translated/return_order.js:146
msgid "Edit Return Order"
msgstr ""
-#: templates/js/translated/return_order.js:154
+#: templates/js/translated/return_order.js:166
msgid "Issue Return Order"
msgstr ""
-#: templates/js/translated/return_order.js:171
+#: templates/js/translated/return_order.js:183
msgid "Are you sure you wish to cancel this Return Order?"
msgstr ""
-#: templates/js/translated/return_order.js:178
+#: templates/js/translated/return_order.js:190
msgid "Cancel Return Order"
msgstr ""
-#: templates/js/translated/return_order.js:203
+#: templates/js/translated/return_order.js:215
msgid "Complete Return Order"
msgstr ""
-#: templates/js/translated/return_order.js:251
+#: templates/js/translated/return_order.js:263
msgid "No return orders found"
msgstr ""
-#: templates/js/translated/return_order.js:288
-#: templates/js/translated/sales_order.js:776
+#: templates/js/translated/return_order.js:300
+#: templates/js/translated/sales_order.js:788
msgid "Invalid Customer"
msgstr "Nieprawidłowy klient"
-#: templates/js/translated/return_order.js:546
+#: templates/js/translated/return_order.js:558
msgid "Receive Return Order Items"
msgstr ""
-#: templates/js/translated/return_order.js:677
-#: templates/js/translated/sales_order.js:2207
+#: templates/js/translated/return_order.js:689
+#: templates/js/translated/sales_order.js:2219
msgid "No matching line items"
msgstr ""
-#: templates/js/translated/return_order.js:782
+#: templates/js/translated/return_order.js:794
msgid "Mark item as received"
msgstr ""
-#: templates/js/translated/sales_order.js:146
+#: templates/js/translated/sales_order.js:158
msgid "Create Sales Order"
msgstr ""
-#: templates/js/translated/sales_order.js:161
+#: templates/js/translated/sales_order.js:173
msgid "Edit Sales Order"
msgstr ""
-#: templates/js/translated/sales_order.js:276
+#: templates/js/translated/sales_order.js:288
msgid "No stock items have been allocated to this shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:281
+#: templates/js/translated/sales_order.js:293
msgid "The following stock items will be shipped"
msgstr ""
-#: templates/js/translated/sales_order.js:321
+#: templates/js/translated/sales_order.js:333
msgid "Complete Shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:345
+#: templates/js/translated/sales_order.js:357
msgid "Confirm Shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:401
+#: templates/js/translated/sales_order.js:413
msgid "No pending shipments found"
msgstr ""
-#: templates/js/translated/sales_order.js:405
+#: templates/js/translated/sales_order.js:417
msgid "No stock items have been allocated to pending shipments"
msgstr ""
-#: templates/js/translated/sales_order.js:415
+#: templates/js/translated/sales_order.js:427
msgid "Complete Shipments"
msgstr ""
-#: templates/js/translated/sales_order.js:437
+#: templates/js/translated/sales_order.js:449
msgid "Skip"
msgstr ""
-#: templates/js/translated/sales_order.js:498
+#: templates/js/translated/sales_order.js:510
msgid "This order has line items which have not been completed."
msgstr ""
-#: templates/js/translated/sales_order.js:520
+#: templates/js/translated/sales_order.js:532
msgid "Issue this Sales Order?"
msgstr ""
-#: templates/js/translated/sales_order.js:525
+#: templates/js/translated/sales_order.js:537
msgid "Issue Sales Order"
msgstr ""
-#: templates/js/translated/sales_order.js:544
+#: templates/js/translated/sales_order.js:556
msgid "Cancel Sales Order"
msgstr ""
-#: templates/js/translated/sales_order.js:549
+#: templates/js/translated/sales_order.js:561
msgid "Cancelling this order means that the order will no longer be editable."
msgstr ""
-#: templates/js/translated/sales_order.js:603
+#: templates/js/translated/sales_order.js:615
msgid "Create New Shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:713
+#: templates/js/translated/sales_order.js:725
msgid "No sales orders found"
msgstr "Nie znaleziono zamówień sprzedaży"
-#: templates/js/translated/sales_order.js:896
+#: templates/js/translated/sales_order.js:908
msgid "Edit shipment"
msgstr "Edytuj wysyłkę"
-#: templates/js/translated/sales_order.js:899
+#: templates/js/translated/sales_order.js:911
msgid "Complete shipment"
msgstr "Kompletna wysyłka"
-#: templates/js/translated/sales_order.js:904
+#: templates/js/translated/sales_order.js:916
msgid "Delete shipment"
msgstr "Usuń wysyłkę"
-#: templates/js/translated/sales_order.js:921
+#: templates/js/translated/sales_order.js:933
msgid "Edit Shipment"
msgstr "Edytuj wysyłkę"
-#: templates/js/translated/sales_order.js:936
+#: templates/js/translated/sales_order.js:948
msgid "Delete Shipment"
msgstr "Usuń wysyłkę"
-#: templates/js/translated/sales_order.js:969
+#: templates/js/translated/sales_order.js:981
msgid "No matching shipments found"
msgstr "Nie odnaleziono pasujących przesyłek"
-#: templates/js/translated/sales_order.js:994
+#: templates/js/translated/sales_order.js:1006
msgid "Shipment Reference"
msgstr "Numer referencyjny przesyłki"
-#: templates/js/translated/sales_order.js:1018
-#: templates/js/translated/sales_order.js:1515
+#: templates/js/translated/sales_order.js:1030
+#: templates/js/translated/sales_order.js:1527
msgid "Not shipped"
msgstr "Nie wysłano"
-#: templates/js/translated/sales_order.js:1036
+#: templates/js/translated/sales_order.js:1048
msgid "Tracking"
msgstr "Śledzenie"
-#: templates/js/translated/sales_order.js:1040
+#: templates/js/translated/sales_order.js:1052
msgid "Invoice"
msgstr ""
-#: templates/js/translated/sales_order.js:1207
+#: templates/js/translated/sales_order.js:1219
msgid "Add Shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:1258
+#: templates/js/translated/sales_order.js:1270
msgid "Confirm stock allocation"
msgstr "Potwierdź przydział zapasów"
-#: templates/js/translated/sales_order.js:1259
+#: templates/js/translated/sales_order.js:1271
msgid "Allocate Stock Items to Sales Order"
msgstr ""
-#: templates/js/translated/sales_order.js:1463
+#: templates/js/translated/sales_order.js:1475
msgid "No sales order allocations found"
msgstr ""
-#: templates/js/translated/sales_order.js:1555
+#: templates/js/translated/sales_order.js:1567
msgid "Edit Stock Allocation"
msgstr ""
-#: templates/js/translated/sales_order.js:1569
+#: templates/js/translated/sales_order.js:1581
msgid "Confirm Delete Operation"
msgstr ""
-#: templates/js/translated/sales_order.js:1570
+#: templates/js/translated/sales_order.js:1582
msgid "Delete Stock Allocation"
msgstr ""
-#: templates/js/translated/sales_order.js:1609
-#: templates/js/translated/sales_order.js:1696
-#: templates/js/translated/stock.js:1688
+#: templates/js/translated/sales_order.js:1621
+#: templates/js/translated/sales_order.js:1708
+#: templates/js/translated/stock.js:1687
msgid "Shipped to customer"
msgstr ""
-#: templates/js/translated/sales_order.js:1617
-#: templates/js/translated/sales_order.js:1705
+#: templates/js/translated/sales_order.js:1629
+#: templates/js/translated/sales_order.js:1717
msgid "Stock location not specified"
msgstr ""
-#: templates/js/translated/sales_order.js:1985
+#: templates/js/translated/sales_order.js:1997
msgid "Allocate serial numbers"
msgstr ""
-#: templates/js/translated/sales_order.js:1989
+#: templates/js/translated/sales_order.js:2001
msgid "Purchase stock"
msgstr "Cena zakupu"
-#: templates/js/translated/sales_order.js:1998
-#: templates/js/translated/sales_order.js:2185
+#: templates/js/translated/sales_order.js:2010
+#: templates/js/translated/sales_order.js:2197
msgid "Calculate price"
msgstr "Oblicz cenę"
-#: templates/js/translated/sales_order.js:2012
+#: templates/js/translated/sales_order.js:2024
msgid "Cannot be deleted as items have been shipped"
msgstr ""
-#: templates/js/translated/sales_order.js:2015
+#: templates/js/translated/sales_order.js:2027
msgid "Cannot be deleted as items have been allocated"
msgstr ""
-#: templates/js/translated/sales_order.js:2086
+#: templates/js/translated/sales_order.js:2098
msgid "Allocate Serial Numbers"
msgstr ""
-#: templates/js/translated/sales_order.js:2193
+#: templates/js/translated/sales_order.js:2205
msgid "Update Unit Price"
msgstr "Zaktualizuj cenę jednostkową"
-#: templates/js/translated/search.js:312
+#: templates/js/translated/search.js:270
msgid "No results"
msgstr ""
-#: templates/js/translated/search.js:334 templates/search.html:25
+#: templates/js/translated/search.js:292 templates/search.html:25
msgid "Enter search query"
msgstr ""
-#: templates/js/translated/search.js:384
+#: templates/js/translated/search.js:342
msgid "result"
msgstr ""
-#: templates/js/translated/search.js:384
+#: templates/js/translated/search.js:342
msgid "results"
msgstr ""
-#: templates/js/translated/search.js:394
+#: templates/js/translated/search.js:352
msgid "Minimize results"
msgstr ""
-#: templates/js/translated/search.js:397
+#: templates/js/translated/search.js:355
msgid "Remove results"
msgstr ""
-#: templates/js/translated/stock.js:98
+#: templates/js/translated/stock.js:97
msgid "Serialize Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:129
+#: templates/js/translated/stock.js:128
msgid "Confirm Stock Serialization"
msgstr ""
-#: templates/js/translated/stock.js:138
+#: templates/js/translated/stock.js:137
msgid "Parent stock location"
msgstr ""
-#: templates/js/translated/stock.js:173
+#: templates/js/translated/stock.js:172
msgid "Edit Stock Location"
msgstr ""
-#: templates/js/translated/stock.js:188
+#: templates/js/translated/stock.js:187
msgid "New Stock Location"
msgstr ""
-#: templates/js/translated/stock.js:190
+#: templates/js/translated/stock.js:189
msgid "Create another location after this one"
msgstr ""
-#: templates/js/translated/stock.js:191
+#: templates/js/translated/stock.js:190
msgid "Stock location created"
msgstr ""
-#: templates/js/translated/stock.js:205
+#: templates/js/translated/stock.js:204
msgid "Are you sure you want to delete this stock location?"
msgstr "Czy na pewno chcesz skasować tą lokację?"
-#: templates/js/translated/stock.js:212
+#: templates/js/translated/stock.js:211
msgid "Move to parent stock location"
msgstr ""
-#: templates/js/translated/stock.js:221
+#: templates/js/translated/stock.js:220
msgid "Delete Stock Location"
msgstr ""
-#: templates/js/translated/stock.js:225
+#: templates/js/translated/stock.js:224
msgid "Action for stock items in this stock location"
msgstr ""
-#: templates/js/translated/stock.js:230
+#: templates/js/translated/stock.js:229
msgid "Action for sub-locations"
msgstr ""
-#: templates/js/translated/stock.js:284
+#: templates/js/translated/stock.js:283
msgid "This part cannot be serialized"
msgstr ""
-#: templates/js/translated/stock.js:320
+#: templates/js/translated/stock.js:319
msgid "Add given quantity as packs instead of individual items"
msgstr ""
-#: templates/js/translated/stock.js:329
+#: templates/js/translated/stock.js:328
msgid "Enter initial quantity for this stock item"
msgstr ""
-#: templates/js/translated/stock.js:335
+#: templates/js/translated/stock.js:334
msgid "Enter serial numbers for new stock (or leave blank)"
msgstr ""
-#: templates/js/translated/stock.js:406
+#: templates/js/translated/stock.js:405
msgid "Stock item duplicated"
msgstr ""
-#: templates/js/translated/stock.js:426
+#: templates/js/translated/stock.js:425
msgid "Duplicate Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:442
+#: templates/js/translated/stock.js:441
msgid "Are you sure you want to delete this stock item?"
msgstr "Czy na pewno chcesz usunąć tą część?"
-#: templates/js/translated/stock.js:447
+#: templates/js/translated/stock.js:446
msgid "Delete Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:468
+#: templates/js/translated/stock.js:467
msgid "Edit Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:510
+#: templates/js/translated/stock.js:509
msgid "Create another item after this one"
msgstr ""
-#: templates/js/translated/stock.js:522
+#: templates/js/translated/stock.js:521
msgid "Created new stock item"
msgstr ""
-#: templates/js/translated/stock.js:535
+#: templates/js/translated/stock.js:534
msgid "Created multiple stock items"
msgstr ""
-#: templates/js/translated/stock.js:560
+#: templates/js/translated/stock.js:559
msgid "Find Serial Number"
msgstr ""
-#: templates/js/translated/stock.js:564 templates/js/translated/stock.js:565
+#: templates/js/translated/stock.js:563 templates/js/translated/stock.js:564
msgid "Enter serial number"
msgstr ""
-#: templates/js/translated/stock.js:581
+#: templates/js/translated/stock.js:580
msgid "Enter a serial number"
msgstr ""
-#: templates/js/translated/stock.js:601
+#: templates/js/translated/stock.js:600
msgid "No matching serial number"
msgstr ""
-#: templates/js/translated/stock.js:610
+#: templates/js/translated/stock.js:609
msgid "More than one matching result found"
msgstr ""
-#: templates/js/translated/stock.js:718
+#: templates/js/translated/stock.js:717
msgid "Confirm stock assignment"
msgstr ""
-#: templates/js/translated/stock.js:719
+#: templates/js/translated/stock.js:718
msgid "Assign Stock to Customer"
msgstr ""
-#: templates/js/translated/stock.js:796
+#: templates/js/translated/stock.js:795
msgid "Warning: Merge operation cannot be reversed"
msgstr ""
-#: templates/js/translated/stock.js:797
+#: templates/js/translated/stock.js:796
msgid "Some information will be lost when merging stock items"
msgstr ""
-#: templates/js/translated/stock.js:799
+#: templates/js/translated/stock.js:798
msgid "Stock transaction history will be deleted for merged items"
msgstr ""
-#: templates/js/translated/stock.js:800
+#: templates/js/translated/stock.js:799
msgid "Supplier part information will be deleted for merged items"
msgstr ""
-#: templates/js/translated/stock.js:891
+#: templates/js/translated/stock.js:890
msgid "Confirm stock item merge"
msgstr ""
-#: templates/js/translated/stock.js:892
+#: templates/js/translated/stock.js:891
msgid "Merge Stock Items"
msgstr ""
-#: templates/js/translated/stock.js:987
+#: templates/js/translated/stock.js:986
msgid "Transfer Stock"
msgstr ""
-#: templates/js/translated/stock.js:988
+#: templates/js/translated/stock.js:987
msgid "Move"
msgstr "Przenieś"
-#: templates/js/translated/stock.js:994
+#: templates/js/translated/stock.js:993
msgid "Count Stock"
msgstr ""
-#: templates/js/translated/stock.js:995
+#: templates/js/translated/stock.js:994
msgid "Count"
msgstr ""
-#: templates/js/translated/stock.js:999
+#: templates/js/translated/stock.js:998
msgid "Remove Stock"
msgstr ""
-#: templates/js/translated/stock.js:1000
+#: templates/js/translated/stock.js:999
msgid "Take"
msgstr "Weź"
-#: templates/js/translated/stock.js:1004
+#: templates/js/translated/stock.js:1003
msgid "Add Stock"
msgstr "Dodaj stan"
-#: templates/js/translated/stock.js:1005 users/models.py:243
+#: templates/js/translated/stock.js:1004 users/models.py:249
msgid "Add"
msgstr "Dodaj"
-#: templates/js/translated/stock.js:1009
+#: templates/js/translated/stock.js:1008
msgid "Delete Stock"
msgstr "Usuń stan magazynowy"
-#: templates/js/translated/stock.js:1106
+#: templates/js/translated/stock.js:1105
msgid "Quantity cannot be adjusted for serialized stock"
msgstr ""
-#: templates/js/translated/stock.js:1106
+#: templates/js/translated/stock.js:1105
msgid "Specify stock quantity"
msgstr ""
-#: templates/js/translated/stock.js:1140
+#: templates/js/translated/stock.js:1139 templates/js/translated/stock.js:3151
msgid "Select Stock Items"
msgstr "Wybierz przedmioty magazynowe"
-#: templates/js/translated/stock.js:1141
-msgid "You must select at least one available stock item"
+#: templates/js/translated/stock.js:1140
+msgid "Select at least one available stock item"
msgstr ""
-#: templates/js/translated/stock.js:1168
+#: templates/js/translated/stock.js:1167
msgid "Confirm stock adjustment"
msgstr ""
-#: templates/js/translated/stock.js:1304
+#: templates/js/translated/stock.js:1303
msgid "PASS"
msgstr ""
-#: templates/js/translated/stock.js:1306
+#: templates/js/translated/stock.js:1305
msgid "FAIL"
msgstr ""
-#: templates/js/translated/stock.js:1311
+#: templates/js/translated/stock.js:1310
msgid "NO RESULT"
msgstr "BRAK WYNIKÓW"
-#: templates/js/translated/stock.js:1373
+#: templates/js/translated/stock.js:1372
msgid "Pass test"
msgstr ""
-#: templates/js/translated/stock.js:1376
+#: templates/js/translated/stock.js:1375
msgid "Add test result"
msgstr "Dodaj wynik testu"
-#: templates/js/translated/stock.js:1400
+#: templates/js/translated/stock.js:1399
msgid "No test results found"
msgstr ""
-#: templates/js/translated/stock.js:1464
+#: templates/js/translated/stock.js:1463
msgid "Test Date"
msgstr ""
-#: templates/js/translated/stock.js:1626
+#: templates/js/translated/stock.js:1625
msgid "Edit Test Result"
msgstr ""
-#: templates/js/translated/stock.js:1648
+#: templates/js/translated/stock.js:1647
msgid "Delete Test Result"
msgstr ""
-#: templates/js/translated/stock.js:1680
+#: templates/js/translated/stock.js:1679
msgid "In production"
msgstr "W produkcji"
-#: templates/js/translated/stock.js:1684
+#: templates/js/translated/stock.js:1683
msgid "Installed in Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:1692
+#: templates/js/translated/stock.js:1691
msgid "Assigned to Sales Order"
msgstr ""
-#: templates/js/translated/stock.js:1698
+#: templates/js/translated/stock.js:1697
msgid "No stock location set"
msgstr ""
-#: templates/js/translated/stock.js:1746
+#: templates/js/translated/stock.js:1753
+msgid "Change stock status"
+msgstr ""
+
+#: templates/js/translated/stock.js:1762
+msgid "Merge stock"
+msgstr "Scal stany magazynowe"
+
+#: templates/js/translated/stock.js:1811
+msgid "Delete stock"
+msgstr "Usuń stan magazynowy"
+
+#: templates/js/translated/stock.js:1866
msgid "stock items"
msgstr ""
-#: templates/js/translated/stock.js:1850
+#: templates/js/translated/stock.js:1871
+msgid "Scan to location"
+msgstr ""
+
+#: templates/js/translated/stock.js:1882
+msgid "Stock Actions"
+msgstr ""
+
+#: templates/js/translated/stock.js:1929
+msgid "Load installed items"
+msgstr ""
+
+#: templates/js/translated/stock.js:2007
msgid "Stock item is in production"
msgstr ""
-#: templates/js/translated/stock.js:1855
+#: templates/js/translated/stock.js:2012
msgid "Stock item assigned to sales order"
msgstr ""
-#: templates/js/translated/stock.js:1858
+#: templates/js/translated/stock.js:2015
msgid "Stock item assigned to customer"
msgstr ""
-#: templates/js/translated/stock.js:1861
+#: templates/js/translated/stock.js:2018
msgid "Serialized stock item has been allocated"
msgstr ""
-#: templates/js/translated/stock.js:1863
+#: templates/js/translated/stock.js:2020
msgid "Stock item has been fully allocated"
msgstr ""
-#: templates/js/translated/stock.js:1865
+#: templates/js/translated/stock.js:2022
msgid "Stock item has been partially allocated"
msgstr ""
-#: templates/js/translated/stock.js:1868
+#: templates/js/translated/stock.js:2025
msgid "Stock item has been installed in another item"
msgstr ""
-#: templates/js/translated/stock.js:1870
+#: templates/js/translated/stock.js:2027
msgid "Stock item has been consumed by a build order"
msgstr ""
-#: templates/js/translated/stock.js:1874
+#: templates/js/translated/stock.js:2031
msgid "Stock item has expired"
msgstr ""
-#: templates/js/translated/stock.js:1876
+#: templates/js/translated/stock.js:2033
msgid "Stock item will expire soon"
msgstr ""
-#: templates/js/translated/stock.js:1881
+#: templates/js/translated/stock.js:2038
msgid "Stock item has been rejected"
msgstr ""
-#: templates/js/translated/stock.js:1883
+#: templates/js/translated/stock.js:2040
msgid "Stock item is lost"
msgstr ""
-#: templates/js/translated/stock.js:1885
+#: templates/js/translated/stock.js:2042
msgid "Stock item is destroyed"
msgstr ""
-#: templates/js/translated/stock.js:1889
-#: templates/js/translated/table_filters.js:296
+#: templates/js/translated/stock.js:2046
+#: templates/js/translated/table_filters.js:302
msgid "Depleted"
msgstr ""
-#: templates/js/translated/stock.js:2031
+#: templates/js/translated/stock.js:2188
msgid "Supplier part not specified"
msgstr ""
-#: templates/js/translated/stock.js:2078
+#: templates/js/translated/stock.js:2235
msgid "Stock Value"
msgstr ""
-#: templates/js/translated/stock.js:2170
+#: templates/js/translated/stock.js:2358
msgid "No stock items matching query"
msgstr ""
-#: templates/js/translated/stock.js:2319
+#: templates/js/translated/stock.js:2450
msgid "stock locations"
msgstr ""
-#: templates/js/translated/stock.js:2476
+#: templates/js/translated/stock.js:2607
msgid "Load Subloactions"
msgstr ""
-#: templates/js/translated/stock.js:2583
+#: templates/js/translated/stock.js:2714
msgid "Details"
msgstr "Szczegóły"
-#: templates/js/translated/stock.js:2587
+#: templates/js/translated/stock.js:2718
msgid "No changes"
msgstr ""
-#: templates/js/translated/stock.js:2599
+#: templates/js/translated/stock.js:2730
msgid "Part information unavailable"
msgstr ""
-#: templates/js/translated/stock.js:2621
+#: templates/js/translated/stock.js:2752
msgid "Location no longer exists"
msgstr "Lokalizacja już nie istnieje"
-#: templates/js/translated/stock.js:2638
+#: templates/js/translated/stock.js:2769
msgid "Build order no longer exists"
msgstr ""
-#: templates/js/translated/stock.js:2653
+#: templates/js/translated/stock.js:2784
msgid "Purchase order no longer exists"
msgstr "Zamówienie zakupu już nie istnieje"
-#: templates/js/translated/stock.js:2670
+#: templates/js/translated/stock.js:2801
msgid "Sales Order no longer exists"
msgstr ""
-#: templates/js/translated/stock.js:2687
+#: templates/js/translated/stock.js:2818
msgid "Return Order no longer exists"
msgstr ""
-#: templates/js/translated/stock.js:2706
+#: templates/js/translated/stock.js:2837
msgid "Customer no longer exists"
msgstr "Klient już nie istnieje"
-#: templates/js/translated/stock.js:2724
+#: templates/js/translated/stock.js:2855
msgid "Stock item no longer exists"
msgstr "Element magazynowy już nie istnieje"
-#: templates/js/translated/stock.js:2742
+#: templates/js/translated/stock.js:2873
msgid "Added"
msgstr "Dodano"
-#: templates/js/translated/stock.js:2750
+#: templates/js/translated/stock.js:2881
msgid "Removed"
msgstr "Usunięto"
-#: templates/js/translated/stock.js:2826
+#: templates/js/translated/stock.js:2953
msgid "No installed items"
msgstr ""
-#: templates/js/translated/stock.js:2876 templates/js/translated/stock.js:2911
+#: templates/js/translated/stock.js:3003 templates/js/translated/stock.js:3038
msgid "Uninstall Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:2929
+#: templates/js/translated/stock.js:3056
msgid "Select stock item to uninstall"
msgstr ""
-#: templates/js/translated/stock.js:2950
+#: templates/js/translated/stock.js:3077
msgid "Install another stock item into this item"
msgstr ""
-#: templates/js/translated/stock.js:2951
+#: templates/js/translated/stock.js:3078
msgid "Stock items can only be installed if they meet the following criteria"
msgstr ""
-#: templates/js/translated/stock.js:2953
+#: templates/js/translated/stock.js:3080
msgid "The Stock Item links to a Part which is the BOM for this Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:2954
+#: templates/js/translated/stock.js:3081
msgid "The Stock Item is currently available in stock"
msgstr ""
-#: templates/js/translated/stock.js:2955
+#: templates/js/translated/stock.js:3082
msgid "The Stock Item is not already installed in another item"
msgstr ""
-#: templates/js/translated/stock.js:2956
+#: templates/js/translated/stock.js:3083
msgid "The Stock Item is tracked by either a batch code or serial number"
msgstr ""
-#: templates/js/translated/stock.js:2969
+#: templates/js/translated/stock.js:3096
msgid "Select part to install"
msgstr ""
+#: templates/js/translated/stock.js:3152
+msgid "Select one or more stock items"
+msgstr ""
+
+#: templates/js/translated/stock.js:3165
+msgid "Selected stock items"
+msgstr ""
+
+#: templates/js/translated/stock.js:3169
+msgid "Change Stock Status"
+msgstr ""
+
#: templates/js/translated/table_filters.js:50
msgid "Has project code"
msgstr ""
-#: templates/js/translated/table_filters.js:59
-#: templates/js/translated/table_filters.js:518
-#: templates/js/translated/table_filters.js:530
-#: templates/js/translated/table_filters.js:571
+#: templates/js/translated/table_filters.js:65
+#: templates/js/translated/table_filters.js:540
+#: templates/js/translated/table_filters.js:552
+#: templates/js/translated/table_filters.js:593
msgid "Order status"
msgstr "Status zamówienia"
-#: templates/js/translated/table_filters.js:64
-#: templates/js/translated/table_filters.js:535
-#: templates/js/translated/table_filters.js:561
-#: templates/js/translated/table_filters.js:576
+#: templates/js/translated/table_filters.js:70
+#: templates/js/translated/table_filters.js:557
+#: templates/js/translated/table_filters.js:583
+#: templates/js/translated/table_filters.js:598
msgid "Outstanding"
msgstr ""
-#: templates/js/translated/table_filters.js:72
-#: templates/js/translated/table_filters.js:458
-#: templates/js/translated/table_filters.js:543
-#: templates/js/translated/table_filters.js:584
+#: templates/js/translated/table_filters.js:78
+#: templates/js/translated/table_filters.js:464
+#: templates/js/translated/table_filters.js:565
+#: templates/js/translated/table_filters.js:606
msgid "Assigned to me"
msgstr "Przypisane do mnie"
-#: templates/js/translated/table_filters.js:128
+#: templates/js/translated/table_filters.js:134
msgid "Trackable Part"
msgstr ""
-#: templates/js/translated/table_filters.js:132
+#: templates/js/translated/table_filters.js:138
msgid "Assembled Part"
msgstr ""
-#: templates/js/translated/table_filters.js:136
+#: templates/js/translated/table_filters.js:142
msgid "Has Available Stock"
msgstr ""
-#: templates/js/translated/table_filters.js:152
+#: templates/js/translated/table_filters.js:158
msgid "Allow Variant Stock"
msgstr ""
-#: templates/js/translated/table_filters.js:164
-#: templates/js/translated/table_filters.js:692
+#: templates/js/translated/table_filters.js:170
+#: templates/js/translated/table_filters.js:714
msgid "Has Pricing"
msgstr ""
-#: templates/js/translated/table_filters.js:204
-#: templates/js/translated/table_filters.js:291
+#: templates/js/translated/table_filters.js:210
+#: templates/js/translated/table_filters.js:297
msgid "Include sublocations"
msgstr "Uwzględnij podlokalizacje"
-#: templates/js/translated/table_filters.js:205
+#: templates/js/translated/table_filters.js:211
msgid "Include locations"
msgstr ""
-#: templates/js/translated/table_filters.js:224
-#: templates/js/translated/table_filters.js:225
-#: templates/js/translated/table_filters.js:624
+#: templates/js/translated/table_filters.js:230
+#: templates/js/translated/table_filters.js:231
+#: templates/js/translated/table_filters.js:646
msgid "Include subcategories"
msgstr ""
-#: templates/js/translated/table_filters.js:233
-#: templates/js/translated/table_filters.js:672
+#: templates/js/translated/table_filters.js:239
+#: templates/js/translated/table_filters.js:694
msgid "Subscribed"
msgstr "Obesrwowane"
-#: templates/js/translated/table_filters.js:244
-#: templates/js/translated/table_filters.js:326
+#: templates/js/translated/table_filters.js:250
+#: templates/js/translated/table_filters.js:332
msgid "Is Serialized"
msgstr ""
-#: templates/js/translated/table_filters.js:247
-#: templates/js/translated/table_filters.js:333
+#: templates/js/translated/table_filters.js:253
+#: templates/js/translated/table_filters.js:339
msgid "Serial number GTE"
msgstr ""
-#: templates/js/translated/table_filters.js:248
-#: templates/js/translated/table_filters.js:334
+#: templates/js/translated/table_filters.js:254
+#: templates/js/translated/table_filters.js:340
msgid "Serial number greater than or equal to"
msgstr ""
-#: templates/js/translated/table_filters.js:251
-#: templates/js/translated/table_filters.js:337
+#: templates/js/translated/table_filters.js:257
+#: templates/js/translated/table_filters.js:343
msgid "Serial number LTE"
msgstr ""
-#: templates/js/translated/table_filters.js:252
-#: templates/js/translated/table_filters.js:338
+#: templates/js/translated/table_filters.js:258
+#: templates/js/translated/table_filters.js:344
msgid "Serial number less than or equal to"
msgstr ""
-#: templates/js/translated/table_filters.js:255
-#: templates/js/translated/table_filters.js:256
-#: templates/js/translated/table_filters.js:329
-#: templates/js/translated/table_filters.js:330
+#: templates/js/translated/table_filters.js:261
+#: templates/js/translated/table_filters.js:262
+#: templates/js/translated/table_filters.js:335
+#: templates/js/translated/table_filters.js:336
msgid "Serial number"
msgstr "Numer seryjny"
-#: templates/js/translated/table_filters.js:260
-#: templates/js/translated/table_filters.js:351
+#: templates/js/translated/table_filters.js:266
+#: templates/js/translated/table_filters.js:357
msgid "Batch code"
msgstr "Kod partii"
-#: templates/js/translated/table_filters.js:271
-#: templates/js/translated/table_filters.js:613
+#: templates/js/translated/table_filters.js:277
+#: templates/js/translated/table_filters.js:635
msgid "Active parts"
msgstr "Aktywne części"
-#: templates/js/translated/table_filters.js:272
+#: templates/js/translated/table_filters.js:278
msgid "Show stock for active parts"
msgstr ""
-#: templates/js/translated/table_filters.js:277
+#: templates/js/translated/table_filters.js:283
msgid "Part is an assembly"
msgstr "Część jest zespołem"
-#: templates/js/translated/table_filters.js:281
+#: templates/js/translated/table_filters.js:287
msgid "Is allocated"
msgstr "Jest przydzielony"
-#: templates/js/translated/table_filters.js:282
+#: templates/js/translated/table_filters.js:288
msgid "Item has been allocated"
msgstr "Przedmiot został przydzielony"
-#: templates/js/translated/table_filters.js:287
+#: templates/js/translated/table_filters.js:293
msgid "Stock is available for use"
msgstr ""
-#: templates/js/translated/table_filters.js:292
+#: templates/js/translated/table_filters.js:298
msgid "Include stock in sublocations"
msgstr ""
-#: templates/js/translated/table_filters.js:297
+#: templates/js/translated/table_filters.js:303
msgid "Show stock items which are depleted"
msgstr ""
-#: templates/js/translated/table_filters.js:302
+#: templates/js/translated/table_filters.js:308
msgid "Show items which are in stock"
msgstr ""
-#: templates/js/translated/table_filters.js:306
+#: templates/js/translated/table_filters.js:312
msgid "In Production"
msgstr "W produkcji"
-#: templates/js/translated/table_filters.js:307
+#: templates/js/translated/table_filters.js:313
msgid "Show items which are in production"
msgstr ""
-#: templates/js/translated/table_filters.js:311
+#: templates/js/translated/table_filters.js:317
msgid "Include Variants"
msgstr "Obejmuje warianty"
-#: templates/js/translated/table_filters.js:312
+#: templates/js/translated/table_filters.js:318
msgid "Include stock items for variant parts"
msgstr ""
-#: templates/js/translated/table_filters.js:316
+#: templates/js/translated/table_filters.js:322
msgid "Installed"
msgstr "Zainstalowane"
-#: templates/js/translated/table_filters.js:317
+#: templates/js/translated/table_filters.js:323
msgid "Show stock items which are installed in another item"
msgstr ""
-#: templates/js/translated/table_filters.js:322
+#: templates/js/translated/table_filters.js:328
msgid "Show items which have been assigned to a customer"
msgstr ""
-#: templates/js/translated/table_filters.js:342
-#: templates/js/translated/table_filters.js:343
+#: templates/js/translated/table_filters.js:348
+#: templates/js/translated/table_filters.js:349
msgid "Stock status"
msgstr ""
-#: templates/js/translated/table_filters.js:346
+#: templates/js/translated/table_filters.js:352
msgid "Has batch code"
msgstr ""
-#: templates/js/translated/table_filters.js:354
-msgid "Tracked"
-msgstr ""
-
-#: templates/js/translated/table_filters.js:355
+#: templates/js/translated/table_filters.js:361
msgid "Stock item is tracked by either batch code or serial number"
msgstr ""
-#: templates/js/translated/table_filters.js:360
+#: templates/js/translated/table_filters.js:366
msgid "Has purchase price"
msgstr "Posiada cenę zakupu"
-#: templates/js/translated/table_filters.js:361
+#: templates/js/translated/table_filters.js:367
msgid "Show stock items which have a purchase price set"
msgstr ""
-#: templates/js/translated/table_filters.js:365
+#: templates/js/translated/table_filters.js:371
msgid "Expiry Date before"
msgstr ""
-#: templates/js/translated/table_filters.js:369
+#: templates/js/translated/table_filters.js:375
msgid "Expiry Date after"
msgstr ""
-#: templates/js/translated/table_filters.js:382
+#: templates/js/translated/table_filters.js:388
msgid "Show stock items which have expired"
msgstr ""
-#: templates/js/translated/table_filters.js:388
+#: templates/js/translated/table_filters.js:394
msgid "Show stock which is close to expiring"
msgstr ""
-#: templates/js/translated/table_filters.js:402
+#: templates/js/translated/table_filters.js:408
msgid "Test Passed"
msgstr "Test pomyślny"
-#: templates/js/translated/table_filters.js:406
+#: templates/js/translated/table_filters.js:412
msgid "Include Installed Items"
msgstr ""
-#: templates/js/translated/table_filters.js:445
+#: templates/js/translated/table_filters.js:451
msgid "Build status"
msgstr ""
-#: templates/js/translated/table_filters.js:625
+#: templates/js/translated/table_filters.js:647
msgid "Include parts in subcategories"
msgstr ""
-#: templates/js/translated/table_filters.js:630
+#: templates/js/translated/table_filters.js:652
msgid "Show active parts"
msgstr "Pokaż aktywne części"
-#: templates/js/translated/table_filters.js:638
+#: templates/js/translated/table_filters.js:660
msgid "Available stock"
msgstr ""
-#: templates/js/translated/table_filters.js:646
-#: templates/js/translated/table_filters.js:742
+#: templates/js/translated/table_filters.js:668
+#: templates/js/translated/table_filters.js:764
msgid "Has Units"
msgstr ""
-#: templates/js/translated/table_filters.js:647
+#: templates/js/translated/table_filters.js:669
msgid "Part has defined units"
msgstr ""
-#: templates/js/translated/table_filters.js:651
+#: templates/js/translated/table_filters.js:673
msgid "Has IPN"
msgstr "Posiada IPN"
-#: templates/js/translated/table_filters.js:652
+#: templates/js/translated/table_filters.js:674
msgid "Part has internal part number"
msgstr "Część posiada wewnętrzny numer części"
-#: templates/js/translated/table_filters.js:656
+#: templates/js/translated/table_filters.js:678
msgid "In stock"
msgstr ""
-#: templates/js/translated/table_filters.js:664
+#: templates/js/translated/table_filters.js:686
msgid "Purchasable"
msgstr "Możliwość zakupu"
-#: templates/js/translated/table_filters.js:676
+#: templates/js/translated/table_filters.js:698
msgid "Has stocktake entries"
msgstr ""
-#: templates/js/translated/table_filters.js:738
+#: templates/js/translated/table_filters.js:760
msgid "Has Choices"
msgstr ""
@@ -12390,51 +12551,51 @@ msgstr "Eksportuj dane tabeli"
msgid "Select File Format"
msgstr "Wybierz format pliku"
-#: templates/js/translated/tables.js:561
+#: templates/js/translated/tables.js:537
msgid "Loading data"
msgstr "Wczytywanie danych"
-#: templates/js/translated/tables.js:564
+#: templates/js/translated/tables.js:540
msgid "rows per page"
msgstr "wierszy na stronę"
-#: templates/js/translated/tables.js:569
+#: templates/js/translated/tables.js:545
msgid "Showing all rows"
msgstr "Pokaż wszystkie wiersze"
-#: templates/js/translated/tables.js:571
+#: templates/js/translated/tables.js:547
msgid "Showing"
msgstr "Pokazywane"
-#: templates/js/translated/tables.js:571
+#: templates/js/translated/tables.js:547
msgid "to"
msgstr "do"
-#: templates/js/translated/tables.js:571
+#: templates/js/translated/tables.js:547
msgid "of"
msgstr "z"
-#: templates/js/translated/tables.js:571
+#: templates/js/translated/tables.js:547
msgid "rows"
msgstr "wierszy"
-#: templates/js/translated/tables.js:578
+#: templates/js/translated/tables.js:554
msgid "No matching results"
msgstr "Brak pasujących wyników"
-#: templates/js/translated/tables.js:581
+#: templates/js/translated/tables.js:557
msgid "Hide/Show pagination"
msgstr "Ukryj/Pokaż stronicowanie"
-#: templates/js/translated/tables.js:587
+#: templates/js/translated/tables.js:563
msgid "Toggle"
msgstr "Przełącz"
-#: templates/js/translated/tables.js:590
+#: templates/js/translated/tables.js:566
msgid "Columns"
msgstr "Kolumny"
-#: templates/js/translated/tables.js:593
+#: templates/js/translated/tables.js:569
msgid "All"
msgstr "Wszystkie"
@@ -12616,50 +12777,6 @@ msgstr "Ustawienia e-maila"
msgid "Email settings not configured"
msgstr "Ustawienia e-mail nie zostały skonfigurowane"
-#: templates/stock_table.html:17
-msgid "Barcode Actions"
-msgstr "Akcje kodów kreskowych"
-
-#: templates/stock_table.html:28
-msgid "Stock Options"
-msgstr "Opcje magazynowe"
-
-#: templates/stock_table.html:33
-msgid "Add to selected stock items"
-msgstr "Dodaj do wybranych produktów magazynowych"
-
-#: templates/stock_table.html:34
-msgid "Remove from selected stock items"
-msgstr "Usuń z wybranych przedmiotów magazynowych"
-
-#: templates/stock_table.html:35
-msgid "Stocktake selected stock items"
-msgstr ""
-
-#: templates/stock_table.html:36
-msgid "Move selected stock items"
-msgstr "Przenieś wybrane przedmioty magazynowe"
-
-#: templates/stock_table.html:37
-msgid "Merge selected stock items"
-msgstr "Połącz wybrane przedmioty magazynowe"
-
-#: templates/stock_table.html:37
-msgid "Merge stock"
-msgstr "Scal stany magazynowe"
-
-#: templates/stock_table.html:38
-msgid "Order selected items"
-msgstr "Zamów wybrane elementy"
-
-#: templates/stock_table.html:42
-msgid "Delete selected items"
-msgstr "Usuń zaznaczone elementy"
-
-#: templates/stock_table.html:42
-msgid "Delete stock"
-msgstr "Usuń stan magazynowy"
-
#: templates/yesnolabel.html:4
msgid "Yes"
msgstr "Tak"
@@ -12692,35 +12809,35 @@ msgstr "Uprawnienia"
msgid "Important dates"
msgstr "Ważne daty"
-#: users/models.py:230
+#: users/models.py:236
msgid "Permission set"
msgstr "Uprawnienia nadane"
-#: users/models.py:238
+#: users/models.py:244
msgid "Group"
msgstr "Grupa"
-#: users/models.py:241
+#: users/models.py:247
msgid "View"
msgstr "Widok"
-#: users/models.py:241
+#: users/models.py:247
msgid "Permission to view items"
msgstr "Uprawnienie do wyświetlania przedmiotów"
-#: users/models.py:243
+#: users/models.py:249
msgid "Permission to add items"
msgstr "Uprawnienie do dodawania przedmiotów"
-#: users/models.py:245
+#: users/models.py:251
msgid "Change"
msgstr "Zmień"
-#: users/models.py:245
+#: users/models.py:251
msgid "Permissions to edit items"
msgstr "Uprawnienie do edycji przedmiotów"
-#: users/models.py:247
+#: users/models.py:253
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 b2ef83de5b..db9c8fe888 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: 2023-06-09 00:32+0000\n"
-"PO-Revision-Date: 2023-06-09 10:27\n"
+"POT-Creation-Date: 2023-06-20 07:01+0000\n"
+"PO-Revision-Date: 2023-06-20 07:06\n"
"Last-Translator: \n"
"Language-Team: Portuguese, Brazilian\n"
"Language: pt_BR\n"
@@ -49,26 +49,26 @@ msgstr "Detalhes do erro podem ser encontrados no painel de administrador"
msgid "Enter date"
msgstr "Insira uma Data"
-#: InvenTree/fields.py:206 InvenTree/models.py:766 build/serializers.py:427
-#: build/serializers.py:506 build/templates/build/sidebar.html:23
-#: company/models.py:597 company/templates/company/sidebar.html:35
-#: order/models.py:1089 order/templates/order/po_sidebar.html:11
+#: InvenTree/fields.py:206 InvenTree/models.py:766 build/serializers.py:435
+#: build/serializers.py:514 build/templates/build/sidebar.html:21
+#: company/models.py:746 company/templates/company/sidebar.html:37
+#: order/models.py:1102 order/templates/order/po_sidebar.html:11
#: order/templates/order/return_order_sidebar.html:9
#: order/templates/order/so_sidebar.html:17 part/admin.py:41
-#: part/models.py:3005 part/templates/part/part_sidebar.html:63
+#: part/models.py:3039 part/templates/part/part_sidebar.html:63
#: report/templates/report/inventree_build_order_base.html:172
#: stock/admin.py:121 stock/models.py:2160 stock/models.py:2268
-#: stock/serializers.py:342 stock/serializers.py:475 stock/serializers.py:556
-#: stock/serializers.py:839 stock/serializers.py:938 stock/serializers.py:1070
-#: stock/templates/stock/stock_sidebar.html:25
-#: templates/js/translated/barcode.js:143 templates/js/translated/bom.js:1224
-#: templates/js/translated/company.js:1294 templates/js/translated/order.js:347
-#: templates/js/translated/part.js:1054
-#: templates/js/translated/purchase_order.js:2168
-#: templates/js/translated/return_order.js:760
-#: templates/js/translated/sales_order.js:1055
-#: templates/js/translated/sales_order.js:1959
-#: templates/js/translated/stock.js:1460 templates/js/translated/stock.js:2164
+#: stock/serializers.py:408 stock/serializers.py:542 stock/serializers.py:623
+#: stock/serializers.py:681 stock/serializers.py:956 stock/serializers.py:1055
+#: stock/serializers.py:1187 stock/templates/stock/stock_sidebar.html:25
+#: templates/js/translated/barcode.js:143 templates/js/translated/bom.js:1244
+#: templates/js/translated/company.js:1715 templates/js/translated/order.js:347
+#: templates/js/translated/part.js:1053
+#: templates/js/translated/purchase_order.js:2178
+#: templates/js/translated/return_order.js:772
+#: templates/js/translated/sales_order.js:1067
+#: templates/js/translated/sales_order.js:1971
+#: templates/js/translated/stock.js:1459 templates/js/translated/stock.js:2321
msgid "Notes"
msgstr "Anotações"
@@ -81,47 +81,51 @@ msgstr "Valor '{name}' não está no formato correto"
msgid "Provided value does not match required pattern: "
msgstr "O valor fornecido não corresponde ao padrão exigido: "
-#: InvenTree/forms.py:145
+#: InvenTree/forms.py:147
msgid "Enter password"
msgstr "Digite a senha"
-#: InvenTree/forms.py:146
+#: InvenTree/forms.py:148
msgid "Enter new password"
msgstr "Insira uma nova senha"
-#: InvenTree/forms.py:155
+#: InvenTree/forms.py:157
msgid "Confirm password"
msgstr "Confirmar senha"
-#: InvenTree/forms.py:156
+#: InvenTree/forms.py:158
msgid "Confirm new password"
msgstr "Confirmar nova senha"
-#: InvenTree/forms.py:160
+#: InvenTree/forms.py:162
msgid "Old password"
msgstr "Senha atual"
-#: InvenTree/forms.py:179
+#: InvenTree/forms.py:181
msgid "Email (again)"
msgstr "E-mail (novamente)"
-#: InvenTree/forms.py:183
+#: InvenTree/forms.py:185
msgid "Email address confirmation"
msgstr "Confirmação do endereço de email"
-#: InvenTree/forms.py:204
+#: InvenTree/forms.py:206
msgid "You must type the same email each time."
msgstr "Voce precisa digital o mesmo email."
-#: InvenTree/forms.py:230 InvenTree/forms.py:236
+#: InvenTree/forms.py:237 InvenTree/forms.py:243
msgid "The provided primary email address is not valid."
msgstr "O endereço primário de e-mail não é válido."
-#: InvenTree/forms.py:242
+#: InvenTree/forms.py:249
msgid "The provided email domain is not approved."
msgstr "O domínio de e-mail providenciado não foi aprovado."
-#: InvenTree/helpers.py:462 order/models.py:442 order/models.py:611
+#: InvenTree/forms.py:345
+msgid "Registration is disabled."
+msgstr ""
+
+#: InvenTree/helpers.py:462 order/models.py:455 order/models.py:624
msgid "Invalid quantity provided"
msgstr "Quantidade invalida"
@@ -239,7 +243,7 @@ msgstr "Link externo nao encontrado"
#: InvenTree/models.py:486 stock/models.py:2262
#: templates/js/translated/attachment.js:119
-#: templates/js/translated/attachment.js:306
+#: templates/js/translated/attachment.js:316
msgid "Attachment"
msgstr "Anexo"
@@ -247,29 +251,30 @@ msgstr "Anexo"
msgid "Select file to attach"
msgstr "Selecione arquivo para anexar"
-#: InvenTree/models.py:493 common/models.py:2695 company/models.py:132
-#: company/models.py:306 company/models.py:584 order/models.py:236
-#: order/models.py:1093 order/models.py:1453 part/admin.py:39
-#: part/models.py:901 part/templates/part/part_scheduling.html:11
+#: InvenTree/models.py:493 common/models.py:2681 company/models.py:128
+#: company/models.py:381 company/models.py:455 company/models.py:733
+#: order/models.py:240 order/models.py:1106 order/models.py:1466
+#: part/admin.py:39 part/models.py:902
+#: part/templates/part/part_scheduling.html:11
#: report/templates/report/inventree_build_order_base.html:164
-#: stock/admin.py:120 templates/js/translated/company.js:977
-#: templates/js/translated/company.js:1283 templates/js/translated/order.js:351
-#: templates/js/translated/part.js:2316
-#: templates/js/translated/purchase_order.js:2008
-#: templates/js/translated/purchase_order.js:2172
-#: templates/js/translated/return_order.js:764
-#: templates/js/translated/sales_order.js:1044
-#: templates/js/translated/sales_order.js:1964
+#: stock/admin.py:120 templates/js/translated/company.js:1350
+#: templates/js/translated/company.js:1704 templates/js/translated/order.js:351
+#: templates/js/translated/part.js:2392
+#: templates/js/translated/purchase_order.js:2018
+#: templates/js/translated/purchase_order.js:2182
+#: templates/js/translated/return_order.js:776
+#: templates/js/translated/sales_order.js:1056
+#: templates/js/translated/sales_order.js:1976
msgid "Link"
msgstr "Link"
-#: InvenTree/models.py:494 build/models.py:291 part/models.py:902
+#: InvenTree/models.py:494 build/models.py:295 part/models.py:903
#: stock/models.py:735
msgid "Link to external URL"
msgstr "Link para URL externa"
#: InvenTree/models.py:497 templates/js/translated/attachment.js:120
-#: templates/js/translated/attachment.js:321
+#: templates/js/translated/attachment.js:331
msgid "Comment"
msgstr "Comentario"
@@ -277,13 +282,13 @@ msgstr "Comentario"
msgid "File comment"
msgstr "Comentario sobre arquivo"
-#: InvenTree/models.py:503 InvenTree/models.py:504 common/models.py:2154
-#: common/models.py:2155 common/models.py:2368 common/models.py:2369
-#: common/models.py:2625 common/models.py:2626 part/models.py:3013
-#: part/models.py:3101 part/models.py:3180 part/models.py:3200
-#: plugin/models.py:217 plugin/models.py:218
+#: InvenTree/models.py:503 InvenTree/models.py:504 common/models.py:2140
+#: common/models.py:2141 common/models.py:2354 common/models.py:2355
+#: common/models.py:2611 common/models.py:2612 part/models.py:3047
+#: part/models.py:3135 part/models.py:3214 part/models.py:3234
+#: plugin/models.py:218 plugin/models.py:219
#: report/templates/report/inventree_test_report_base.html:105
-#: templates/js/translated/stock.js:2773
+#: templates/js/translated/stock.js:2904
msgid "User"
msgstr "Usuario"
@@ -324,53 +329,54 @@ msgstr "Nomes duplicados não podem existir sob o mesmo parental"
msgid "Invalid choice"
msgstr "Escolha inválida"
-#: InvenTree/models.py:648 InvenTree/models.py:649 common/models.py:2354
-#: company/models.py:390 label/models.py:103 part/models.py:847
-#: part/models.py:3400 plugin/models.py:41 report/models.py:160
+#: InvenTree/models.py:648 InvenTree/models.py:649 common/models.py:2340
+#: company/models.py:539 label/models.py:111 part/models.py:848
+#: part/models.py:3434 plugin/models.py:42 report/models.py:160
#: templates/InvenTree/settings/mixins/urls.html:13
#: templates/InvenTree/settings/notifications.html:17
-#: templates/InvenTree/settings/plugin.html:80
+#: templates/InvenTree/settings/plugin.html:74
#: templates/InvenTree/settings/plugin_settings.html:22
-#: templates/js/translated/company.js:658
-#: templates/js/translated/company.js:706
-#: templates/js/translated/company.js:871
-#: templates/js/translated/company.js:1071 templates/js/translated/part.js:1160
-#: templates/js/translated/part.js:1447 templates/js/translated/part.js:1583
-#: templates/js/translated/part.js:2699 templates/js/translated/stock.js:2464
+#: templates/js/translated/company.js:665
+#: templates/js/translated/company.js:713
+#: templates/js/translated/company.js:940
+#: templates/js/translated/company.js:1196
+#: templates/js/translated/company.js:1444 templates/js/translated/part.js:1159
+#: templates/js/translated/part.js:1446 templates/js/translated/part.js:1582
+#: templates/js/translated/part.js:2684 templates/js/translated/stock.js:2595
msgid "Name"
msgstr "Nome"
-#: InvenTree/models.py:655 build/models.py:164
+#: InvenTree/models.py:655 build/models.py:168
#: build/templates/build/detail.html:24 common/models.py:111
-#: company/models.py:312 company/models.py:590
+#: company/models.py:461 company/models.py:739
#: company/templates/company/company_base.html:72
#: company/templates/company/manufacturer_part.html:75
-#: company/templates/company/supplier_part.html:108 label/models.py:110
-#: order/models.py:232 order/models.py:1117 part/admin.py:194 part/admin.py:276
-#: part/models.py:869 part/models.py:3416 part/templates/part/category.html:81
+#: company/templates/company/supplier_part.html:108 label/models.py:118
+#: order/models.py:232 order/models.py:1130 part/admin.py:194 part/admin.py:276
+#: part/models.py:870 part/models.py:3450 part/templates/part/category.html:81
#: part/templates/part/part_base.html:172
#: part/templates/part/part_scheduling.html:12 report/models.py:173
-#: report/models.py:587 report/models.py:631
+#: report/models.py:589 report/models.py:633
#: report/templates/report/inventree_build_order_base.html:117
#: stock/admin.py:41 stock/templates/stock/location.html:123
#: templates/InvenTree/settings/notifications.html:19
#: templates/InvenTree/settings/plugin_settings.html:27
#: templates/InvenTree/settings/settings_staff_js.html:75
-#: templates/js/translated/bom.js:632 templates/js/translated/bom.js:933
-#: templates/js/translated/build.js:2857 templates/js/translated/company.js:510
-#: templates/js/translated/company.js:988
-#: templates/js/translated/company.js:1251 templates/js/translated/order.js:298
-#: templates/js/translated/part.js:1212 templates/js/translated/part.js:1456
-#: templates/js/translated/part.js:1594 templates/js/translated/part.js:1933
-#: templates/js/translated/part.js:2247 templates/js/translated/part.js:2735
-#: templates/js/translated/part.js:2826
-#: templates/js/translated/purchase_order.js:1666
-#: templates/js/translated/purchase_order.js:1812
-#: templates/js/translated/purchase_order.js:1990
-#: templates/js/translated/return_order.js:302
-#: templates/js/translated/sales_order.js:790
-#: templates/js/translated/stock.js:1439 templates/js/translated/stock.js:1817
-#: templates/js/translated/stock.js:2496 templates/js/translated/stock.js:2568
+#: templates/js/translated/bom.js:633 templates/js/translated/bom.js:951
+#: templates/js/translated/build.js:2062 templates/js/translated/company.js:517
+#: templates/js/translated/company.js:1361
+#: templates/js/translated/company.js:1672 templates/js/translated/index.js:114
+#: templates/js/translated/order.js:298 templates/js/translated/part.js:1211
+#: templates/js/translated/part.js:1455 templates/js/translated/part.js:1593
+#: templates/js/translated/part.js:1932 templates/js/translated/part.js:2323
+#: templates/js/translated/part.js:2720 templates/js/translated/part.js:2811
+#: templates/js/translated/purchase_order.js:1681
+#: templates/js/translated/purchase_order.js:1827
+#: templates/js/translated/purchase_order.js:2000
+#: templates/js/translated/return_order.js:314
+#: templates/js/translated/sales_order.js:802
+#: templates/js/translated/stock.js:1438 templates/js/translated/stock.js:1974
+#: templates/js/translated/stock.js:2627 templates/js/translated/stock.js:2699
msgid "Description"
msgstr "Descricao"
@@ -383,7 +389,7 @@ msgid "parent"
msgstr "parent"
#: InvenTree/models.py:671 InvenTree/models.py:672
-#: templates/js/translated/part.js:2744 templates/js/translated/stock.js:2505
+#: templates/js/translated/part.js:2729 templates/js/translated/stock.js:2636
msgid "Path"
msgstr "Caminho"
@@ -419,12 +425,12 @@ msgstr "Erro de servidor"
msgid "An error has been logged by the server."
msgstr "Log de erro salvo pelo servidor."
-#: InvenTree/serializers.py:60 part/models.py:3897
+#: InvenTree/serializers.py:60 part/models.py:3941
msgid "Must be a valid number"
msgstr "Preicsa ser um numero valido"
-#: InvenTree/serializers.py:90 company/models.py:154
-#: company/templates/company/company_base.html:107 part/models.py:2852
+#: InvenTree/serializers.py:90 company/models.py:150
+#: company/templates/company/company_base.html:107 part/models.py:2886
#: templates/InvenTree/settings/settings_staff_js.html:44
#: templates/currency_data.html:5
msgid "Currency"
@@ -497,130 +503,130 @@ 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:714
+#: InvenTree/settings.py:741
msgid "Czech"
msgstr "Tcheco"
-#: InvenTree/settings.py:715
+#: InvenTree/settings.py:742
msgid "Danish"
msgstr "Dinamarquês"
-#: InvenTree/settings.py:716
+#: InvenTree/settings.py:743
msgid "German"
msgstr "Alemão"
-#: InvenTree/settings.py:717
+#: InvenTree/settings.py:744
msgid "Greek"
msgstr "Grego"
-#: InvenTree/settings.py:718
+#: InvenTree/settings.py:745
msgid "English"
msgstr "Inglês"
-#: InvenTree/settings.py:719
+#: InvenTree/settings.py:746
msgid "Spanish"
msgstr "Espanhol"
-#: InvenTree/settings.py:720
+#: InvenTree/settings.py:747
msgid "Spanish (Mexican)"
msgstr "Espanhol (Mexicano)"
-#: InvenTree/settings.py:721
+#: InvenTree/settings.py:748
msgid "Farsi / Persian"
msgstr "Persa"
-#: InvenTree/settings.py:722
+#: InvenTree/settings.py:749
msgid "Finnish"
msgstr "Finlandês"
-#: InvenTree/settings.py:723
+#: InvenTree/settings.py:750
msgid "French"
msgstr "Francês"
-#: InvenTree/settings.py:724
+#: InvenTree/settings.py:751
msgid "Hebrew"
msgstr "Hebraico"
-#: InvenTree/settings.py:725
+#: InvenTree/settings.py:752
msgid "Hungarian"
msgstr "Húngaro"
-#: InvenTree/settings.py:726
+#: InvenTree/settings.py:753
msgid "Italian"
msgstr "Italiano"
-#: InvenTree/settings.py:727
+#: InvenTree/settings.py:754
msgid "Japanese"
msgstr "Japonês"
-#: InvenTree/settings.py:728
+#: InvenTree/settings.py:755
msgid "Korean"
msgstr "Coreano"
-#: InvenTree/settings.py:729
+#: InvenTree/settings.py:756
msgid "Dutch"
msgstr "Holandês"
-#: InvenTree/settings.py:730
+#: InvenTree/settings.py:757
msgid "Norwegian"
msgstr "Norueguês"
-#: InvenTree/settings.py:731
+#: InvenTree/settings.py:758
msgid "Polish"
msgstr "Polonês"
-#: InvenTree/settings.py:732
+#: InvenTree/settings.py:759
msgid "Portuguese"
msgstr "Português"
-#: InvenTree/settings.py:733
+#: InvenTree/settings.py:760
msgid "Portuguese (Brazilian)"
msgstr "Português (Brasileiro)"
-#: InvenTree/settings.py:734
+#: InvenTree/settings.py:761
msgid "Russian"
msgstr "Russo"
-#: InvenTree/settings.py:735
+#: InvenTree/settings.py:762
msgid "Slovenian"
msgstr "Esloveno"
-#: InvenTree/settings.py:736
+#: InvenTree/settings.py:763
msgid "Swedish"
msgstr "Sueco"
-#: InvenTree/settings.py:737
+#: InvenTree/settings.py:764
msgid "Thai"
msgstr "Tailandês"
-#: InvenTree/settings.py:738
+#: InvenTree/settings.py:765
msgid "Turkish"
msgstr "Turco"
-#: InvenTree/settings.py:739
+#: InvenTree/settings.py:766
msgid "Vietnamese"
msgstr "Vietnamita"
-#: InvenTree/settings.py:740
+#: InvenTree/settings.py:767
msgid "Chinese"
msgstr "Chinês"
-#: InvenTree/status.py:61 part/serializers.py:878
+#: InvenTree/status.py:68 part/serializers.py:940
msgid "Background worker check failed"
msgstr "Falha em verificar o histórico do trabalhador"
-#: InvenTree/status.py:65
+#: InvenTree/status.py:72
msgid "Email backend not configured"
msgstr "Serviço de fundo do e-mail não foi configurado"
-#: InvenTree/status.py:68
+#: InvenTree/status.py:75
msgid "InvenTree system health checks failed"
msgstr "Verificação de saúde do sistema InvenTree falhou"
#: InvenTree/status_codes.py:12 InvenTree/status_codes.py:40
#: InvenTree/status_codes.py:148 InvenTree/status_codes.py:167
#: InvenTree/status_codes.py:188 generic/states/tests.py:16
-#: templates/js/translated/table_filters.js:511
+#: templates/js/translated/table_filters.js:533
msgid "Pending"
msgstr "Pendente"
@@ -630,7 +636,7 @@ msgstr "Colocado"
#: InvenTree/status_codes.py:14 InvenTree/status_codes.py:151
#: InvenTree/status_codes.py:172 generic/states/tests.py:18
-#: order/templates/order/order_base.html:162
+#: order/templates/order/order_base.html:158
#: order/templates/order/sales_order_base.html:162
msgid "Complete"
msgstr "Completado"
@@ -654,10 +660,10 @@ msgstr "Retornado"
msgid "In Progress"
msgstr "Em Progresso"
-#: InvenTree/status_codes.py:42 order/models.py:1332
-#: templates/js/translated/sales_order.js:1509
-#: templates/js/translated/sales_order.js:1630
-#: templates/js/translated/sales_order.js:1934
+#: InvenTree/status_codes.py:42 order/models.py:1345
+#: templates/js/translated/sales_order.js:1521
+#: templates/js/translated/sales_order.js:1642
+#: templates/js/translated/sales_order.js:1946
msgid "Shipped"
msgstr "Enviado"
@@ -689,7 +695,7 @@ msgstr "Em quarentena"
msgid "Legacy stock tracking entry"
msgstr "Entrada de rastreamento de estoque antiga"
-#: InvenTree/status_codes.py:93 templates/js/translated/stock.js:511
+#: InvenTree/status_codes.py:93 templates/js/translated/stock.js:510
msgid "Stock item created"
msgstr "Item de estoque criado"
@@ -745,7 +751,7 @@ msgstr "Separado do Item Paternal"
msgid "Split child item"
msgstr "Separar o Item filho"
-#: InvenTree/status_codes.py:120 templates/js/translated/stock.js:2243
+#: InvenTree/status_codes.py:120 templates/js/translated/stock.js:1769
msgid "Merged stock items"
msgstr "Itens de estoque mesclados"
@@ -765,7 +771,7 @@ msgstr "Criação do pedido de produção completado"
msgid "Build order output rejected"
msgstr "Saída do pedido de produção rejeitada"
-#: InvenTree/status_codes.py:129 templates/js/translated/stock.js:1676
+#: InvenTree/status_codes.py:129 templates/js/translated/stock.js:1675
msgid "Consumed by build order"
msgstr "Usado na ordem de produção"
@@ -781,7 +787,7 @@ msgstr "Recebido referente ao Pedido de Compra"
msgid "Returned against Return Order"
msgstr "Devolvido contra Pedido de Retorno"
-#: InvenTree/status_codes.py:141 templates/js/translated/table_filters.js:321
+#: InvenTree/status_codes.py:141 templates/js/translated/table_filters.js:327
msgid "Sent to customer"
msgstr "Enviado ao cliente"
@@ -849,83 +855,111 @@ msgstr "Os campos de senha devem coincidir"
msgid "Wrong password provided"
msgstr "Senha incorreta fornecida"
-#: InvenTree/views.py:651 templates/navbar.html:157
+#: InvenTree/views.py:653 templates/navbar.html:157
msgid "System Information"
msgstr "Informação do Sistema"
-#: InvenTree/views.py:658 templates/navbar.html:168
+#: InvenTree/views.py:660 templates/navbar.html:168
msgid "About InvenTree"
msgstr "Sobre o InvenTree"
-#: build/api.py:222
+#: build/api.py:242
msgid "Build must be cancelled before it can be deleted"
msgstr "Produção deve ser cancelada antes de ser deletada"
-#: build/models.py:69 build/templates/build/build_base.html:9
+#: build/api.py:286 part/models.py:3833 templates/js/translated/bom.js:985
+#: templates/js/translated/bom.js:1025 templates/js/translated/build.js:2449
+#: templates/js/translated/table_filters.js:166
+#: templates/js/translated/table_filters.js:518
+msgid "Consumable"
+msgstr "Consumível"
+
+#: build/api.py:287 part/models.py:3827 part/templates/part/upload_bom.html:58
+#: templates/js/translated/bom.js:989 templates/js/translated/bom.js:1016
+#: templates/js/translated/build.js:2458
+#: templates/js/translated/table_filters.js:162
+#: templates/js/translated/table_filters.js:191
+#: templates/js/translated/table_filters.js:522
+msgid "Optional"
+msgstr "Opcional"
+
+#: build/api.py:288 templates/js/translated/table_filters.js:360
+#: templates/js/translated/table_filters.js:514
+msgid "Tracked"
+msgstr ""
+
+#: build/api.py:290 part/admin.py:64 templates/js/translated/build.js:1670
+#: templates/js/translated/build.js:2549
+#: templates/js/translated/sales_order.js:1918
+#: templates/js/translated/table_filters.js:506
+msgid "Allocated"
+msgstr "Alocado"
+
+#: build/models.py:73 build/templates/build/build_base.html:9
#: build/templates/build/build_base.html:27
#: report/templates/report/inventree_build_order_base.html:105
#: templates/email/build_order_completed.html:16
#: templates/email/overdue_build_order.html:15
-#: templates/js/translated/build.js:945 templates/js/translated/stock.js:2629
+#: templates/js/translated/build.js:953 templates/js/translated/stock.js:2760
msgid "Build Order"
msgstr "Ondem de Produção"
-#: build/models.py:70 build/templates/build/build_base.html:13
+#: build/models.py:74 build/templates/build/build_base.html:13
#: build/templates/build/index.html:8 build/templates/build/index.html:12
-#: order/templates/order/sales_order_detail.html:119
+#: order/templates/order/sales_order_detail.html:111
#: order/templates/order/so_sidebar.html:13
-#: part/templates/part/part_sidebar.html:22 templates/InvenTree/index.html:244
+#: part/templates/part/part_sidebar.html:22 templates/InvenTree/index.html:196
#: templates/InvenTree/search.html:141
#: templates/InvenTree/settings/sidebar.html:53
-#: templates/js/translated/search.js:228 users/models.py:42
+#: templates/js/translated/search.js:186 users/models.py:42
msgid "Build Orders"
msgstr "Ordens de Produções"
-#: build/models.py:111
+#: build/models.py:115
msgid "Invalid choice for parent build"
msgstr "Escolha de Produção parental inválida"
-#: build/models.py:155
+#: build/models.py:159
msgid "Build Order Reference"
msgstr "Referência do pedido de produção"
-#: build/models.py:156 order/models.py:359 order/models.py:765
-#: order/models.py:1087 order/models.py:1724 part/admin.py:278
-#: part/models.py:3798 part/templates/part/upload_bom.html:54
+#: build/models.py:160 order/models.py:372 order/models.py:778
+#: order/models.py:1100 order/models.py:1737 part/admin.py:278
+#: part/models.py:3842 part/templates/part/upload_bom.html:54
#: report/templates/report/inventree_bill_of_materials_report.html:139
#: report/templates/report/inventree_po_report_base.html:28
#: report/templates/report/inventree_return_order_report_base.html:26
#: report/templates/report/inventree_so_report_base.html:28
-#: templates/js/translated/bom.js:769 templates/js/translated/bom.js:943
-#: templates/js/translated/build.js:2098 templates/js/translated/order.js:291
+#: templates/js/translated/bom.js:770 templates/js/translated/bom.js:961
+#: templates/js/translated/build.js:2441 templates/js/translated/order.js:291
#: templates/js/translated/pricing.js:386
-#: templates/js/translated/purchase_order.js:2033
-#: templates/js/translated/return_order.js:713
-#: templates/js/translated/sales_order.js:1798
+#: templates/js/translated/purchase_order.js:2043
+#: templates/js/translated/return_order.js:725
+#: templates/js/translated/sales_order.js:1810
msgid "Reference"
msgstr "Referência"
-#: build/models.py:167
+#: build/models.py:171
msgid "Brief description of the build (optional)"
msgstr "Breve descrição da produção (opcional)"
-#: build/models.py:175 build/templates/build/build_base.html:183
+#: build/models.py:179 build/templates/build/build_base.html:184
#: build/templates/build/detail.html:87
msgid "Parent Build"
msgstr "Produção Progenitor"
-#: build/models.py:176
+#: build/models.py:180
msgid "BuildOrder to which this build is allocated"
msgstr "Ordem de produção para qual este serviço está alocado"
-#: build/models.py:181 build/templates/build/build_base.html:98
-#: build/templates/build/detail.html:29 company/models.py:775
-#: order/models.py:1195 order/models.py:1311 order/models.py:1312
-#: part/models.py:391 part/models.py:2865 part/models.py:2979
-#: part/models.py:3119 part/models.py:3138 part/models.py:3157
-#: part/models.py:3178 part/models.py:3270 part/models.py:3555
-#: part/models.py:3663 part/models.py:3763 part/models.py:4077
-#: part/serializers.py:842 part/serializers.py:1245
+#: build/models.py:185 build/templates/build/build_base.html:98
+#: build/templates/build/detail.html:29 company/models.py:924
+#: order/models.py:1208 order/models.py:1324 order/models.py:1325
+#: part/models.py:392 part/models.py:2899 part/models.py:3013
+#: part/models.py:3153 part/models.py:3172 part/models.py:3191
+#: part/models.py:3212 part/models.py:3304 part/models.py:3589
+#: part/models.py:3712 part/models.py:3807 part/models.py:4121
+#: part/serializers.py:904 part/serializers.py:1307
#: part/templates/part/part_app_base.html:8
#: part/templates/part/part_pricing.html:12
#: part/templates/part/upload_bom.html:52
@@ -935,266 +969,229 @@ msgstr "Ordem de produção para qual este serviço está alocado"
#: report/templates/report/inventree_po_report_base.html:27
#: report/templates/report/inventree_return_order_report_base.html:24
#: report/templates/report/inventree_so_report_base.html:27
-#: stock/serializers.py:156 stock/serializers.py:509
+#: stock/serializers.py:205 stock/serializers.py:576
#: templates/InvenTree/search.html:82
#: templates/email/build_order_completed.html:17
#: templates/email/build_order_required_stock.html:17
#: templates/email/low_stock_notification.html:15
#: templates/email/overdue_build_order.html:16
-#: templates/js/translated/barcode.js:529 templates/js/translated/bom.js:631
-#: templates/js/translated/bom.js:768 templates/js/translated/bom.js:887
-#: templates/js/translated/build.js:1403 templates/js/translated/build.js:1965
-#: templates/js/translated/build.js:2464 templates/js/translated/build.js:2868
-#: templates/js/translated/company.js:337
-#: templates/js/translated/company.js:822
-#: templates/js/translated/company.js:929
-#: templates/js/translated/company.js:1169 templates/js/translated/part.js:1918
-#: templates/js/translated/part.js:1990 templates/js/translated/part.js:2216
-#: templates/js/translated/pricing.js:369
-#: templates/js/translated/purchase_order.js:746
-#: templates/js/translated/purchase_order.js:1274
-#: templates/js/translated/purchase_order.js:1811
-#: templates/js/translated/purchase_order.js:1975
-#: templates/js/translated/return_order.js:527
-#: templates/js/translated/return_order.js:694
-#: templates/js/translated/sales_order.js:285
-#: templates/js/translated/sales_order.js:1185
-#: templates/js/translated/sales_order.js:1584
-#: templates/js/translated/sales_order.js:1782
-#: templates/js/translated/stock.js:643 templates/js/translated/stock.js:809
-#: templates/js/translated/stock.js:1021 templates/js/translated/stock.js:1773
-#: templates/js/translated/stock.js:2594 templates/js/translated/stock.js:2831
-#: templates/js/translated/stock.js:2968
+#: templates/js/translated/barcode.js:529 templates/js/translated/bom.js:632
+#: templates/js/translated/bom.js:769 templates/js/translated/bom.js:905
+#: templates/js/translated/build.js:1289 templates/js/translated/build.js:1669
+#: templates/js/translated/build.js:2085 templates/js/translated/build.js:2261
+#: templates/js/translated/company.js:347
+#: templates/js/translated/company.js:1147
+#: templates/js/translated/company.js:1302
+#: templates/js/translated/company.js:1590 templates/js/translated/index.js:104
+#: templates/js/translated/part.js:1917 templates/js/translated/part.js:1989
+#: templates/js/translated/part.js:2292 templates/js/translated/pricing.js:369
+#: templates/js/translated/purchase_order.js:757
+#: templates/js/translated/purchase_order.js:1289
+#: templates/js/translated/purchase_order.js:1826
+#: templates/js/translated/purchase_order.js:1985
+#: templates/js/translated/return_order.js:539
+#: templates/js/translated/return_order.js:706
+#: templates/js/translated/sales_order.js:297
+#: templates/js/translated/sales_order.js:1197
+#: templates/js/translated/sales_order.js:1596
+#: templates/js/translated/sales_order.js:1794
+#: templates/js/translated/stock.js:642 templates/js/translated/stock.js:808
+#: templates/js/translated/stock.js:1020 templates/js/translated/stock.js:1913
+#: templates/js/translated/stock.js:2725 templates/js/translated/stock.js:2958
+#: templates/js/translated/stock.js:3095
msgid "Part"
msgstr "Peça"
-#: build/models.py:189
+#: build/models.py:193
msgid "Select part to build"
msgstr "Selecionar peça para produção"
-#: build/models.py:194
+#: build/models.py:198
msgid "Sales Order Reference"
msgstr "Referência do pedido de venda"
-#: build/models.py:198
+#: build/models.py:202
msgid "SalesOrder to which this build is allocated"
msgstr "Ordem de Venda para qual esta produção está alocada"
-#: build/models.py:203 build/serializers.py:942
-#: templates/js/translated/build.js:2452
-#: templates/js/translated/sales_order.js:1173
+#: build/models.py:207 build/serializers.py:946
+#: templates/js/translated/build.js:1657
+#: templates/js/translated/sales_order.js:1185
msgid "Source Location"
msgstr "Local de Origem"
-#: build/models.py:207
+#: build/models.py:211
msgid "Select location to take stock from for this build (leave blank to take from any stock location)"
msgstr "Selecione a localização para pegar do estoque para esta produção (deixe em branco para tirar a partir de qualquer local de estoque)"
-#: build/models.py:212
+#: build/models.py:216
msgid "Destination Location"
msgstr "Local de Destino"
-#: build/models.py:216
+#: build/models.py:220
msgid "Select location where the completed items will be stored"
msgstr "Selecione o local onde os itens concluídos serão armazenados"
-#: build/models.py:220
+#: build/models.py:224
msgid "Build Quantity"
msgstr "Quantidade de Produção"
-#: build/models.py:223
+#: build/models.py:227
msgid "Number of stock items to build"
msgstr "Número de itens em estoque para produzir"
-#: build/models.py:227
+#: build/models.py:231
msgid "Completed items"
msgstr "Itens concluídos"
-#: build/models.py:229
+#: build/models.py:233
msgid "Number of stock items which have been completed"
msgstr "Número de itens em estoque concluídos"
-#: build/models.py:233
+#: build/models.py:237
msgid "Build Status"
msgstr "Progresso da produção"
-#: build/models.py:237
+#: build/models.py:241
msgid "Build status code"
msgstr "Código de situação da produção"
-#: build/models.py:246 build/serializers.py:269 order/serializers.py:506
-#: stock/models.py:739 templates/js/translated/purchase_order.js:1099
+#: build/models.py:250 build/serializers.py:277 order/serializers.py:512
+#: stock/models.py:739 templates/js/translated/purchase_order.js:1114
msgid "Batch Code"
msgstr "Código de Lote"
-#: build/models.py:250 build/serializers.py:270
+#: build/models.py:254 build/serializers.py:278
msgid "Batch code for this build output"
msgstr "Código do lote para esta saída de produção"
-#: build/models.py:253 order/models.py:244 part/models.py:1038
+#: build/models.py:257 order/models.py:248 part/models.py:1039
#: part/templates/part/part_base.html:312
-#: templates/js/translated/return_order.js:327
-#: templates/js/translated/sales_order.js:815
+#: templates/js/translated/return_order.js:339
+#: templates/js/translated/sales_order.js:827
msgid "Creation Date"
msgstr "Criado em"
-#: build/models.py:257
+#: build/models.py:261
msgid "Target completion date"
msgstr "Data alvo final"
-#: build/models.py:258
+#: build/models.py:262
msgid "Target date for build completion. Build will be overdue after this date."
msgstr "Data alvo para finalização de produção. Estará atrasado a partir deste dia."
-#: build/models.py:261 order/models.py:409 order/models.py:1767
-#: templates/js/translated/build.js:2953
+#: build/models.py:265 order/models.py:422 order/models.py:1780
+#: templates/js/translated/build.js:2170
msgid "Completion Date"
msgstr "Data de conclusão"
-#: build/models.py:267
+#: build/models.py:271
msgid "completed by"
msgstr "Concluído em"
-#: build/models.py:275 templates/js/translated/build.js:2913
+#: build/models.py:279 templates/js/translated/build.js:2130
msgid "Issued by"
msgstr "Emitido em"
-#: build/models.py:276
+#: build/models.py:280
msgid "User who issued this build order"
msgstr "Usuário que emitiu esta ordem de produção"
-#: build/models.py:284 build/templates/build/build_base.html:204
-#: build/templates/build/detail.html:122 order/models.py:258
-#: order/templates/order/order_base.html:214
-#: order/templates/order/return_order_base.html:182
-#: order/templates/order/sales_order_base.html:222 part/models.py:1042
+#: build/models.py:288 build/templates/build/build_base.html:205
+#: build/templates/build/detail.html:122 order/models.py:262
+#: order/templates/order/order_base.html:217
+#: order/templates/order/return_order_base.html:189
+#: order/templates/order/sales_order_base.html:229 part/models.py:1043
#: part/templates/part/part_base.html:392
#: report/templates/report/inventree_build_order_base.html:158
-#: templates/js/translated/build.js:2925
-#: templates/js/translated/purchase_order.js:1723
-#: templates/js/translated/return_order.js:347
-#: templates/js/translated/table_filters.js:461
+#: templates/js/translated/build.js:2142
+#: templates/js/translated/purchase_order.js:1738
+#: templates/js/translated/return_order.js:359
+#: templates/js/translated/table_filters.js:467
msgid "Responsible"
msgstr "Responsável"
-#: build/models.py:285
+#: build/models.py:289
msgid "User or group responsible for this build order"
msgstr "Usuário ou grupo responsável para esta ordem de produção"
-#: build/models.py:290 build/templates/build/detail.html:108
+#: build/models.py:294 build/templates/build/detail.html:108
#: company/templates/company/manufacturer_part.html:107
#: company/templates/company/supplier_part.html:195
-#: order/templates/order/order_base.html:171
+#: order/templates/order/order_base.html:167
#: order/templates/order/return_order_base.html:146
#: order/templates/order/sales_order_base.html:181
#: part/templates/part/part_base.html:385 stock/models.py:733
#: stock/templates/stock/item_base.html:201
+#: templates/js/translated/company.js:1050
msgid "External Link"
msgstr "Link Externo"
-#: build/models.py:295
+#: build/models.py:299
msgid "Build Priority"
msgstr "Prioridade de Produção"
-#: build/models.py:298
+#: build/models.py:302
msgid "Priority of this build order"
msgstr "Prioridade desta ordem de produção"
-#: build/models.py:536
+#: build/models.py:309 common/models.py:104 order/admin.py:17
+#: order/models.py:237 templates/InvenTree/settings/settings_staff_js.html:70
+#: templates/js/translated/build.js:2067
+#: templates/js/translated/purchase_order.js:1685
+#: templates/js/translated/return_order.js:318
+#: templates/js/translated/sales_order.js:806
+#: templates/js/translated/table_filters.js:24
+#: templates/project_code_data.html:6
+msgid "Project Code"
+msgstr "Código do projeto"
+
+#: build/models.py:310
+msgid "Project code for this build order"
+msgstr ""
+
+#: build/models.py:545
#, python-brace-format
msgid "Build order {build} has been completed"
msgstr "O Pedido de produção {build} foi concluído!"
-#: build/models.py:542
+#: build/models.py:551
msgid "A build order has been completed"
msgstr "Um pedido de produção foi concluído"
-#: build/models.py:744 build/models.py:811
+#: build/models.py:753 build/models.py:831
msgid "No build output specified"
msgstr "Nenhuma saída de produção especificada"
-#: build/models.py:747
+#: build/models.py:756
msgid "Build output is already completed"
msgstr "Saída de produção já completada"
-#: build/models.py:750
+#: build/models.py:759
msgid "Build output does not match Build Order"
msgstr "Saída da produção não corresponde à Ordem de Produção"
-#: build/models.py:815 build/serializers.py:212 build/serializers.py:251
-#: build/serializers.py:811 order/models.py:440 order/serializers.py:379
-#: order/serializers.py:501 part/serializers.py:1087 part/serializers.py:1408
-#: stock/models.py:593 stock/models.py:1387 stock/serializers.py:315
+#: build/models.py:835 build/serializers.py:220 build/serializers.py:259
+#: build/serializers.py:819 order/models.py:453 order/serializers.py:385
+#: order/serializers.py:507 part/serializers.py:1149 part/serializers.py:1470
+#: stock/models.py:593 stock/models.py:1387 stock/serializers.py:381
msgid "Quantity must be greater than zero"
msgstr "Quantidade deve ser maior que zero"
-#: build/models.py:820 build/serializers.py:217
+#: build/models.py:840 build/serializers.py:225
msgid "Quantity cannot be greater than the output quantity"
msgstr "Quantidade não pode ser maior do que a quantidade de saída"
-#: build/models.py:1272
-msgid "Build item must specify a build output, as master part is marked as trackable"
-msgstr "Item de produção deve especificar a saída, pois peças mestres estão marcadas como rastreáveis"
+#: build/models.py:1260
+msgid "Build object"
+msgstr ""
-#: build/models.py:1281
-#, python-brace-format
-msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})"
-msgstr "Quantidade alocada ({q}) não deve exceder a quantidade disponível em estoque ({a})"
-
-#: build/models.py:1291 order/models.py:1601
-msgid "Stock item is over-allocated"
-msgstr "O item do estoque está sobre-alocado"
-
-#: build/models.py:1297 order/models.py:1604
-msgid "Allocation quantity must be greater than zero"
-msgstr "Quantidade alocada deve ser maior que zero"
-
-#: build/models.py:1303
-msgid "Quantity must be 1 for serialized stock"
-msgstr "Quantidade deve ser 1 para estoque serializado"
-
-#: build/models.py:1360
-msgid "Selected stock item not found in BOM"
-msgstr "Item do estoque selecionado não encontrado na LDM"
-
-#: build/models.py:1438 stock/templates/stock/item_base.html:170
-#: templates/InvenTree/search.html:139 templates/js/translated/build.js:2841
-#: templates/navbar.html:38
-msgid "Build"
-msgstr "Produção"
-
-#: build/models.py:1439
-msgid "Build to allocate parts"
-msgstr "Faça uma Produção para atribuir peças"
-
-#: build/models.py:1455 build/serializers.py:791 order/serializers.py:1059
-#: order/serializers.py:1080 stock/serializers.py:413 stock/serializers.py:770
-#: stock/serializers.py:896 stock/templates/stock/item_base.html:10
-#: stock/templates/stock/item_base.html:23
-#: stock/templates/stock/item_base.html:195
-#: templates/js/translated/build.js:955 templates/js/translated/build.js:960
-#: templates/js/translated/build.js:2466 templates/js/translated/build.js:3038
-#: templates/js/translated/sales_order.js:286
-#: templates/js/translated/sales_order.js:1186
-#: templates/js/translated/sales_order.js:1485
-#: templates/js/translated/sales_order.js:1490
-#: templates/js/translated/sales_order.js:1591
-#: templates/js/translated/sales_order.js:1678
-#: templates/js/translated/stock.js:644 templates/js/translated/stock.js:810
-#: templates/js/translated/stock.js:2714
-msgid "Stock Item"
-msgstr "Item de estoque"
-
-#: build/models.py:1456
-msgid "Source stock item"
-msgstr "Origem do item em estoque"
-
-#: build/models.py:1468 build/serializers.py:198 build/serializers.py:236
-#: build/templates/build/build_base.html:103
-#: build/templates/build/detail.html:34 common/models.py:2176
-#: order/models.py:1073 order/models.py:1645 order/serializers.py:1233
+#: build/models.py:1274 build/models.py:1556 build/serializers.py:206
+#: build/serializers.py:244 build/templates/build/build_base.html:103
+#: build/templates/build/detail.html:34 common/models.py:2162
+#: order/models.py:1086 order/models.py:1658 order/serializers.py:1239
#: order/templates/order/order_wizard/match_parts.html:30 part/admin.py:277
-#: part/forms.py:47 part/models.py:2992 part/models.py:3779
+#: part/forms.py:47 part/models.py:3026 part/models.py:3823
#: part/templates/part/part_pricing.html:16
#: part/templates/part/upload_bom.html:53
#: report/templates/report/inventree_bill_of_materials_report.html:138
@@ -1203,315 +1200,367 @@ msgstr "Origem do item em estoque"
#: report/templates/report/inventree_so_report_base.html:29
#: report/templates/report/inventree_test_report_base.html:90
#: report/templates/report/inventree_test_report_base.html:170
-#: stock/admin.py:103 stock/serializers.py:306
+#: stock/admin.py:103 stock/serializers.py:372
#: stock/templates/stock/item_base.html:288
#: stock/templates/stock/item_base.html:296
#: stock/templates/stock/item_base.html:343
#: templates/email/build_order_completed.html:18
-#: templates/js/translated/barcode.js:531 templates/js/translated/bom.js:770
-#: templates/js/translated/bom.js:951 templates/js/translated/build.js:504
-#: templates/js/translated/build.js:716 templates/js/translated/build.js:982
-#: templates/js/translated/build.js:1425 templates/js/translated/build.js:1991
-#: templates/js/translated/build.js:2467
-#: templates/js/translated/company.js:1428
-#: templates/js/translated/model_renderers.js:207
-#: templates/js/translated/order.js:304 templates/js/translated/part.js:935
-#: templates/js/translated/part.js:1784 templates/js/translated/part.js:3263
+#: templates/js/translated/barcode.js:531 templates/js/translated/bom.js:771
+#: templates/js/translated/bom.js:969 templates/js/translated/build.js:510
+#: templates/js/translated/build.js:722 templates/js/translated/build.js:1308
+#: templates/js/translated/build.js:1672 templates/js/translated/build.js:2283
+#: templates/js/translated/company.js:1849
+#: templates/js/translated/model_renderers.js:221
+#: templates/js/translated/order.js:304 templates/js/translated/part.js:934
+#: templates/js/translated/part.js:1783 templates/js/translated/part.js:3248
#: templates/js/translated/pricing.js:381
#: templates/js/translated/pricing.js:474
#: templates/js/translated/pricing.js:522
#: templates/js/translated/pricing.js:616
-#: templates/js/translated/purchase_order.js:749
-#: templates/js/translated/purchase_order.js:1815
-#: templates/js/translated/purchase_order.js:2039
-#: templates/js/translated/sales_order.js:302
-#: templates/js/translated/sales_order.js:1187
-#: templates/js/translated/sales_order.js:1504
-#: templates/js/translated/sales_order.js:1594
-#: templates/js/translated/sales_order.js:1684
-#: templates/js/translated/sales_order.js:1804
-#: templates/js/translated/stock.js:531 templates/js/translated/stock.js:669
-#: templates/js/translated/stock.js:840 templates/js/translated/stock.js:2758
-#: templates/js/translated/stock.js:2843
+#: templates/js/translated/purchase_order.js:760
+#: templates/js/translated/purchase_order.js:1830
+#: templates/js/translated/purchase_order.js:2049
+#: templates/js/translated/sales_order.js:314
+#: templates/js/translated/sales_order.js:1199
+#: templates/js/translated/sales_order.js:1516
+#: templates/js/translated/sales_order.js:1606
+#: templates/js/translated/sales_order.js:1696
+#: templates/js/translated/sales_order.js:1816
+#: templates/js/translated/stock.js:530 templates/js/translated/stock.js:668
+#: templates/js/translated/stock.js:839 templates/js/translated/stock.js:2889
+#: templates/js/translated/stock.js:2970
msgid "Quantity"
msgstr "Quantidade"
-#: build/models.py:1469
+#: build/models.py:1275
+msgid "Required quantity for build order"
+msgstr ""
+
+#: build/models.py:1357
+msgid "Build item must specify a build output, as master part is marked as trackable"
+msgstr "Item de produção deve especificar a saída, pois peças mestres estão marcadas como rastreáveis"
+
+#: build/models.py:1366
+#, python-brace-format
+msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})"
+msgstr "Quantidade alocada ({q}) não deve exceder a quantidade disponível em estoque ({a})"
+
+#: build/models.py:1376 order/models.py:1614
+msgid "Stock item is over-allocated"
+msgstr "O item do estoque está sobre-alocado"
+
+#: build/models.py:1382 order/models.py:1617
+msgid "Allocation quantity must be greater than zero"
+msgstr "Quantidade alocada deve ser maior que zero"
+
+#: build/models.py:1388
+msgid "Quantity must be 1 for serialized stock"
+msgstr "Quantidade deve ser 1 para estoque serializado"
+
+#: build/models.py:1449
+msgid "Selected stock item does not match BOM line"
+msgstr ""
+
+#: build/models.py:1543 build/serializers.py:799 order/serializers.py:1065
+#: order/serializers.py:1086 stock/serializers.py:479 stock/serializers.py:887
+#: stock/serializers.py:1013 stock/templates/stock/item_base.html:10
+#: stock/templates/stock/item_base.html:23
+#: stock/templates/stock/item_base.html:195
+#: templates/js/translated/build.js:1671
+#: templates/js/translated/sales_order.js:298
+#: templates/js/translated/sales_order.js:1198
+#: templates/js/translated/sales_order.js:1497
+#: templates/js/translated/sales_order.js:1502
+#: templates/js/translated/sales_order.js:1603
+#: templates/js/translated/sales_order.js:1690
+#: templates/js/translated/stock.js:643 templates/js/translated/stock.js:809
+#: templates/js/translated/stock.js:2845
+msgid "Stock Item"
+msgstr "Item de estoque"
+
+#: build/models.py:1544
+msgid "Source stock item"
+msgstr "Origem do item em estoque"
+
+#: build/models.py:1557
msgid "Stock quantity to allocate to build"
msgstr "Quantidade do estoque para alocar à produção"
-#: build/models.py:1477
+#: build/models.py:1565
msgid "Install into"
msgstr "Instalar em"
-#: build/models.py:1478
+#: build/models.py:1566
msgid "Destination stock item"
msgstr "Destino do Item do Estoque"
-#: build/serializers.py:148 build/serializers.py:820
-#: templates/js/translated/build.js:1413
+#: build/serializers.py:156 build/serializers.py:828
+#: templates/js/translated/build.js:1299
msgid "Build Output"
msgstr "Saída da Produção"
-#: build/serializers.py:160
+#: build/serializers.py:168
msgid "Build output does not match the parent build"
msgstr "Saída de produção não coincide com a produção progenitora"
-#: build/serializers.py:164
+#: build/serializers.py:172
msgid "Output part does not match BuildOrder part"
msgstr "Peça de saída não coincide com a peça da ordem de produção"
-#: build/serializers.py:168
+#: build/serializers.py:176
msgid "This build output has already been completed"
msgstr "Esta saída de produção já foi concluída"
-#: build/serializers.py:179
+#: build/serializers.py:187
msgid "This build output is not fully allocated"
msgstr "A saída de produção não está completamente alocada"
-#: build/serializers.py:199 build/serializers.py:237
+#: build/serializers.py:207 build/serializers.py:245
msgid "Enter quantity for build output"
msgstr "Entre a quantidade da saída de produção"
-#: build/serializers.py:258
+#: build/serializers.py:266
msgid "Integer quantity required for trackable parts"
msgstr "Quantidade inteira necessária para peças rastreáveis"
-#: build/serializers.py:261
+#: build/serializers.py:269
msgid "Integer quantity required, as the bill of materials contains trackable parts"
msgstr "Quantidade inteira necessária, pois a lista de materiais contém peças rastreáveis"
-#: build/serializers.py:276 order/serializers.py:514 order/serializers.py:1237
-#: stock/serializers.py:324 templates/js/translated/purchase_order.js:1123
-#: templates/js/translated/stock.js:334 templates/js/translated/stock.js:532
+#: build/serializers.py:284 order/serializers.py:520 order/serializers.py:1243
+#: stock/serializers.py:390 templates/js/translated/purchase_order.js:1138
+#: templates/js/translated/stock.js:333 templates/js/translated/stock.js:531
msgid "Serial Numbers"
msgstr "Números de Série"
-#: build/serializers.py:277
+#: build/serializers.py:285
msgid "Enter serial numbers for build outputs"
msgstr "Digite os números de série para saídas de produção"
-#: build/serializers.py:290
+#: build/serializers.py:298
msgid "Auto Allocate Serial Numbers"
msgstr "Alocar Números de Série Automaticamente"
-#: build/serializers.py:291
+#: build/serializers.py:299
msgid "Automatically allocate required items with matching serial numbers"
msgstr "Alocar automaticamente os itens necessários com os números de série correspondentes"
-#: build/serializers.py:326 stock/api.py:670
+#: build/serializers.py:334 stock/api.py:707
msgid "The following serial numbers already exist or are invalid"
msgstr "Os seguintes números de série já existem ou são inválidos"
-#: build/serializers.py:377 build/serializers.py:439 build/serializers.py:518
+#: build/serializers.py:385 build/serializers.py:447 build/serializers.py:526
msgid "A list of build outputs must be provided"
msgstr "Uma lista de saídas de produção deve ser fornecida"
-#: build/serializers.py:415 build/serializers.py:488 order/serializers.py:487
-#: order/serializers.py:606 order/serializers.py:1588 part/serializers.py:854
-#: stock/serializers.py:335 stock/serializers.py:470 stock/serializers.py:551
-#: stock/serializers.py:931 stock/serializers.py:1173
+#: build/serializers.py:423 build/serializers.py:496 order/serializers.py:493
+#: order/serializers.py:612 order/serializers.py:1594 part/serializers.py:916
+#: stock/serializers.py:401 stock/serializers.py:537 stock/serializers.py:618
+#: stock/serializers.py:1048 stock/serializers.py:1290
#: stock/templates/stock/item_base.html:390
#: templates/js/translated/barcode.js:530
-#: templates/js/translated/barcode.js:778 templates/js/translated/build.js:967
-#: templates/js/translated/build.js:2006
-#: templates/js/translated/purchase_order.js:1148
-#: templates/js/translated/purchase_order.js:1238
-#: templates/js/translated/sales_order.js:1497
-#: templates/js/translated/sales_order.js:1605
-#: templates/js/translated/sales_order.js:1613
-#: templates/js/translated/sales_order.js:1692
-#: templates/js/translated/stock.js:645 templates/js/translated/stock.js:811
-#: templates/js/translated/stock.js:1023 templates/js/translated/stock.js:1937
-#: templates/js/translated/stock.js:2608
+#: templates/js/translated/barcode.js:778 templates/js/translated/build.js:980
+#: templates/js/translated/build.js:2298
+#: templates/js/translated/purchase_order.js:1163
+#: templates/js/translated/purchase_order.js:1253
+#: templates/js/translated/sales_order.js:1509
+#: templates/js/translated/sales_order.js:1617
+#: templates/js/translated/sales_order.js:1625
+#: templates/js/translated/sales_order.js:1704
+#: templates/js/translated/stock.js:644 templates/js/translated/stock.js:810
+#: templates/js/translated/stock.js:1022 templates/js/translated/stock.js:2094
+#: templates/js/translated/stock.js:2739
msgid "Location"
msgstr "Local"
-#: build/serializers.py:416
+#: build/serializers.py:424
msgid "Stock location for scrapped outputs"
msgstr "Local de estoque para saídas recicladas"
-#: build/serializers.py:422
+#: build/serializers.py:430
msgid "Discard Allocations"
msgstr "Descartar alocações"
-#: build/serializers.py:423
+#: build/serializers.py:431
msgid "Discard any stock allocations for scrapped outputs"
msgstr ""
-#: build/serializers.py:428
+#: build/serializers.py:436
msgid "Reason for scrapping build output(s)"
msgstr ""
-#: build/serializers.py:489
+#: build/serializers.py:497
msgid "Location for completed build outputs"
msgstr "Local para saídas de produção concluídas"
-#: build/serializers.py:495 build/templates/build/build_base.html:151
-#: build/templates/build/detail.html:62 order/models.py:791
-#: order/models.py:1750 order/serializers.py:524 stock/admin.py:106
-#: stock/templates/stock/item_base.html:423
-#: templates/js/translated/barcode.js:252 templates/js/translated/build.js:2897
-#: templates/js/translated/purchase_order.js:1278
-#: templates/js/translated/purchase_order.js:1682
-#: templates/js/translated/return_order.js:319
-#: templates/js/translated/sales_order.js:807
-#: templates/js/translated/stock.js:1912 templates/js/translated/stock.js:2732
-#: templates/js/translated/stock.js:2859
+#: build/serializers.py:503 build/templates/build/build_base.html:152
+#: build/templates/build/detail.html:62 order/models.py:804
+#: order/models.py:1763 order/serializers.py:530 stock/admin.py:106
+#: stock/serializers.py:677 stock/templates/stock/item_base.html:423
+#: templates/js/translated/barcode.js:252 templates/js/translated/build.js:2114
+#: templates/js/translated/purchase_order.js:1293
+#: templates/js/translated/purchase_order.js:1697
+#: templates/js/translated/return_order.js:331
+#: templates/js/translated/sales_order.js:819
+#: templates/js/translated/stock.js:2069 templates/js/translated/stock.js:2863
+#: templates/js/translated/stock.js:2986
msgid "Status"
msgstr "Situação"
-#: build/serializers.py:501
+#: build/serializers.py:509
msgid "Accept Incomplete Allocation"
msgstr "Aceitar Alocação Incompleta"
-#: build/serializers.py:502
+#: build/serializers.py:510
msgid "Complete outputs if stock has not been fully allocated"
msgstr "Concluir saídas se o estoque não tiver sido totalmente alocado"
-#: build/serializers.py:571
+#: build/serializers.py:579
msgid "Remove Allocated Stock"
msgstr "Remover Estoque Alocado"
-#: build/serializers.py:572
+#: build/serializers.py:580
msgid "Subtract any stock which has already been allocated to this build"
msgstr "Subtrair qualquer estoque que já tenha sido alocado para esta produção"
-#: build/serializers.py:578
+#: build/serializers.py:586
msgid "Remove Incomplete Outputs"
msgstr "Remover Saídas Incompletas"
-#: build/serializers.py:579
+#: build/serializers.py:587
msgid "Delete any build outputs which have not been completed"
msgstr "Excluir quaisquer saídas de produção que não tenham sido completadas"
-#: build/serializers.py:606
+#: build/serializers.py:614
msgid "Not permitted"
msgstr "Não permitido"
-#: build/serializers.py:607
+#: build/serializers.py:615
msgid "Accept as consumed by this build order"
msgstr "Aceitar conforme consumido por esta ordem de produção"
-#: build/serializers.py:608
+#: build/serializers.py:616
msgid "Deallocate before completing this build order"
msgstr "Desatribua antes de completar esta ordem de produção"
-#: build/serializers.py:631
+#: build/serializers.py:639
msgid "Overallocated Stock"
msgstr "Estoque sobrealocado"
-#: build/serializers.py:633
+#: build/serializers.py:641
msgid "How do you want to handle extra stock items assigned to the build order"
msgstr "Como deseja manejar itens de estoque extras atribuídos a ordem de produção"
-#: build/serializers.py:643
+#: build/serializers.py:651
msgid "Some stock items have been overallocated"
msgstr "Alguns itens de estoque foram sobrealocados"
-#: build/serializers.py:648
+#: build/serializers.py:656
msgid "Accept Unallocated"
msgstr "Aceitar não alocados"
-#: build/serializers.py:649
+#: build/serializers.py:657
msgid "Accept that stock items have not been fully allocated to this build order"
msgstr "Aceitar que os itens de estoque não foram totalmente alocados para esta produção"
-#: build/serializers.py:659 templates/js/translated/build.js:295
+#: build/serializers.py:667 templates/js/translated/build.js:304
msgid "Required stock has not been fully allocated"
msgstr "Estoque obrigatório não foi totalmente alocado"
-#: build/serializers.py:664 order/serializers.py:261 order/serializers.py:1127
+#: build/serializers.py:672 order/serializers.py:267 order/serializers.py:1133
msgid "Accept Incomplete"
msgstr "Aceitar Incompleto"
-#: build/serializers.py:665
+#: build/serializers.py:673
msgid "Accept that the required number of build outputs have not been completed"
msgstr "Aceitar que o número requerido de saídas de produção não foi concluído"
-#: build/serializers.py:675 templates/js/translated/build.js:299
+#: build/serializers.py:683 templates/js/translated/build.js:308
msgid "Required build quantity has not been completed"
msgstr "Quantidade de produção requerida não foi concluída"
-#: build/serializers.py:684 templates/js/translated/build.js:283
+#: build/serializers.py:692 templates/js/translated/build.js:292
msgid "Build order has incomplete outputs"
msgstr "Pedido de produção tem saídas incompletas"
-#: build/serializers.py:714 build/serializers.py:768 part/models.py:3686
-#: part/models.py:4069
-msgid "BOM Item"
-msgstr "Item LDM"
+#: build/serializers.py:722
+msgid "Build Line"
+msgstr ""
-#: build/serializers.py:724
+#: build/serializers.py:732
msgid "Build output"
msgstr "Saída da Produção"
-#: build/serializers.py:732
+#: build/serializers.py:740
msgid "Build output must point to the same build"
msgstr "Saída de produção deve indicar a mesma produção"
-#: build/serializers.py:782
+#: build/serializers.py:776
+msgid "Build Line Item"
+msgstr ""
+
+#: build/serializers.py:790
msgid "bom_item.part must point to the same part as the build order"
msgstr "bin_item.part deve indicar a mesma peça da ordem de produção"
-#: build/serializers.py:797 stock/serializers.py:783
+#: build/serializers.py:805 stock/serializers.py:900
msgid "Item must be in stock"
msgstr "Item deve estar em estoque"
-#: build/serializers.py:846 order/serializers.py:1117
+#: build/serializers.py:853 order/serializers.py:1123
#, python-brace-format
msgid "Available quantity ({q}) exceeded"
msgstr "Quantidade disponível ({q}) excedida"
-#: build/serializers.py:852
+#: build/serializers.py:859
msgid "Build output must be specified for allocation of tracked parts"
msgstr "Saída de produção deve ser definida para alocação de peças rastreadas"
-#: build/serializers.py:859
+#: build/serializers.py:866
msgid "Build output cannot be specified for allocation of untracked parts"
msgstr "Saída de produção deve ser definida para alocação de peças não rastreadas"
-#: build/serializers.py:864
+#: build/serializers.py:871
msgid "This stock item has already been allocated to this build output"
msgstr "O item em estoque já foi alocado para essa saída de produção"
-#: build/serializers.py:887 order/serializers.py:1401
+#: build/serializers.py:894 order/serializers.py:1407
msgid "Allocation items must be provided"
msgstr "Alocação do Item precisa ser fornecida"
-#: build/serializers.py:943
+#: build/serializers.py:947
msgid "Stock location where parts are to be sourced (leave blank to take from any location)"
msgstr "Local de estoque onde peças serão extraídas (deixar em branco para qualquer local)"
-#: build/serializers.py:951
+#: build/serializers.py:955
msgid "Exclude Location"
msgstr "Local não incluso"
-#: build/serializers.py:952
+#: build/serializers.py:956
msgid "Exclude stock items from this selected location"
msgstr "Não incluir itens de estoque deste local"
-#: build/serializers.py:957
+#: build/serializers.py:961
msgid "Interchangeable Stock"
msgstr "Estoque permutável"
-#: build/serializers.py:958
+#: build/serializers.py:962
msgid "Stock items in multiple locations can be used interchangeably"
msgstr "Itens de estoque em múltiplos locais pode ser permutável"
-#: build/serializers.py:963
+#: build/serializers.py:967
msgid "Substitute Stock"
msgstr "Substituir Estoque"
-#: build/serializers.py:964
+#: build/serializers.py:968
msgid "Allow allocation of substitute parts"
msgstr "Permitir alocação de peças substitutas"
-#: build/serializers.py:969
+#: build/serializers.py:973
msgid "Optional Items"
msgstr "Itens opcionais"
-#: build/serializers.py:970
+#: build/serializers.py:974
msgid "Allocate optional BOM items to build order"
msgstr "Alocar itens LDM opcionais para a ordem de produção"
@@ -1540,6 +1589,7 @@ msgstr ""
#: part/templates/part/part_base.html:43
#: stock/templates/stock/item_base.html:41
#: stock/templates/stock/location.html:54
+#: templates/js/translated/filters.js:336
msgid "Barcode actions"
msgstr "Ações de código de barras"
@@ -1618,69 +1668,67 @@ msgstr "Concluir produção"
msgid "Build Description"
msgstr "Descrição da produção"
-#: build/templates/build/build_base.html:117
+#: build/templates/build/build_base.html:118
msgid "No build outputs have been created for this build order"
msgstr "Nenhuma saída de produção foi criada para esta ordem de serviço"
-#: build/templates/build/build_base.html:124
+#: build/templates/build/build_base.html:125
msgid "Build Order is ready to mark as completed"
msgstr "Ordem de produção está pronta para ser marcada como concluída"
-#: build/templates/build/build_base.html:129
+#: build/templates/build/build_base.html:130
msgid "Build Order cannot be completed as outstanding outputs remain"
msgstr "Ordem de produção não pode ser concluída, os resultados pendentes permanecem"
-#: build/templates/build/build_base.html:134
+#: build/templates/build/build_base.html:135
msgid "Required build quantity has not yet been completed"
msgstr "A quantidade de produção necessária ainda não foi concluída"
-#: build/templates/build/build_base.html:139
+#: build/templates/build/build_base.html:140
msgid "Stock has not been fully allocated to this Build Order"
msgstr "Estoque não foi totalmente alocado para este Pedido de Produção"
-#: build/templates/build/build_base.html:160
-#: build/templates/build/detail.html:138 order/models.py:240
-#: order/models.py:1099 order/templates/order/order_base.html:190
+#: build/templates/build/build_base.html:161
+#: build/templates/build/detail.html:138 order/models.py:244
+#: order/models.py:1112 order/templates/order/order_base.html:186
#: order/templates/order/return_order_base.html:165
#: order/templates/order/sales_order_base.html:193
#: report/templates/report/inventree_build_order_base.html:125
-#: templates/js/translated/build.js:2945 templates/js/translated/part.js:1802
-#: templates/js/translated/purchase_order.js:1699
-#: templates/js/translated/purchase_order.js:2115
-#: templates/js/translated/return_order.js:335
-#: templates/js/translated/return_order.js:735
-#: templates/js/translated/sales_order.js:823
-#: templates/js/translated/sales_order.js:1847
+#: templates/js/translated/build.js:2162 templates/js/translated/part.js:1801
+#: templates/js/translated/purchase_order.js:1714
+#: templates/js/translated/purchase_order.js:2125
+#: templates/js/translated/return_order.js:347
+#: templates/js/translated/return_order.js:747
+#: templates/js/translated/sales_order.js:835
+#: templates/js/translated/sales_order.js:1859
msgid "Target Date"
msgstr "Data alvo"
-#: build/templates/build/build_base.html:165
+#: build/templates/build/build_base.html:166
#, python-format
msgid "This build was due on %(target)s"
msgstr "Essa produção expirou em %(target)s"
-#: build/templates/build/build_base.html:165
-#: build/templates/build/build_base.html:222
-#: order/templates/order/order_base.html:126
+#: build/templates/build/build_base.html:166
+#: build/templates/build/build_base.html:223
+#: order/templates/order/order_base.html:122
#: order/templates/order/return_order_base.html:118
#: order/templates/order/sales_order_base.html:123
-#: templates/js/translated/table_filters.js:68
-#: templates/js/translated/table_filters.js:454
-#: templates/js/translated/table_filters.js:539
-#: templates/js/translated/table_filters.js:580
+#: templates/js/translated/table_filters.js:74
+#: templates/js/translated/table_filters.js:460
+#: templates/js/translated/table_filters.js:561
+#: templates/js/translated/table_filters.js:602
msgid "Overdue"
msgstr "Expirou"
-#: build/templates/build/build_base.html:177
-#: build/templates/build/detail.html:67 build/templates/build/detail.html:149
-#: order/templates/order/sales_order_base.html:203
-#: templates/js/translated/table_filters.js:602
-msgid "Completed"
-msgstr "Concluído"
+#: build/templates/build/build_base.html:178
+#: build/templates/build/detail.html:67 build/templates/build/sidebar.html:13
+msgid "Completed Outputs"
+msgstr "Saídas Concluídas"
-#: build/templates/build/build_base.html:190
-#: build/templates/build/detail.html:101 order/api.py:1454 order/models.py:1304
-#: order/models.py:1403 order/models.py:1551
+#: build/templates/build/build_base.html:191
+#: build/templates/build/detail.html:101 order/api.py:1454 order/models.py:1317
+#: order/models.py:1416 order/models.py:1564
#: order/templates/order/sales_order_base.html:9
#: order/templates/order/sales_order_base.html:28
#: report/templates/report/inventree_build_order_base.html:135
@@ -1688,32 +1736,32 @@ msgstr "Concluído"
#: stock/templates/stock/item_base.html:370
#: templates/email/overdue_sales_order.html:15
#: templates/js/translated/pricing.js:915
-#: templates/js/translated/sales_order.js:757
-#: templates/js/translated/sales_order.js:980
-#: templates/js/translated/stock.js:2661
+#: templates/js/translated/sales_order.js:769
+#: templates/js/translated/sales_order.js:992
+#: templates/js/translated/stock.js:2792
msgid "Sales Order"
msgstr "Pedido de Venda"
-#: build/templates/build/build_base.html:197
+#: build/templates/build/build_base.html:198
#: build/templates/build/detail.html:115
#: report/templates/report/inventree_build_order_base.html:152
msgid "Issued By"
msgstr "Emitido por"
-#: build/templates/build/build_base.html:211
-#: build/templates/build/detail.html:94 templates/js/translated/build.js:2862
+#: build/templates/build/build_base.html:212
+#: build/templates/build/detail.html:94 templates/js/translated/build.js:2079
msgid "Priority"
msgstr "Prioridade"
-#: build/templates/build/build_base.html:273
+#: build/templates/build/build_base.html:274
msgid "Delete Build Order"
msgstr "Excluir Ordem de Produção"
-#: build/templates/build/build_base.html:283
+#: build/templates/build/build_base.html:284
msgid "Build Order QR Code"
msgstr "QR Code do Pedido de Produção"
-#: build/templates/build/build_base.html:295
+#: build/templates/build/build_base.html:296
msgid "Link Barcode to Build Order"
msgstr "Vincular código de barras ao Pedido de Produção"
@@ -1729,8 +1777,8 @@ msgstr "Origem do estoque"
msgid "Stock can be taken from any available location."
msgstr "O estoque pode ser tirado de qualquer local disponível."
-#: build/templates/build/detail.html:49 order/models.py:1222
-#: templates/js/translated/purchase_order.js:2157
+#: build/templates/build/detail.html:49 order/models.py:1235
+#: templates/js/translated/purchase_order.js:2167
msgid "Destination"
msgstr "Destino"
@@ -1744,21 +1792,21 @@ msgstr "Peças alocadas"
#: build/templates/build/detail.html:80 stock/admin.py:105
#: stock/templates/stock/item_base.html:163
-#: templates/js/translated/build.js:1432
-#: templates/js/translated/model_renderers.js:212
-#: templates/js/translated/purchase_order.js:1244
-#: templates/js/translated/stock.js:1093 templates/js/translated/stock.js:1926
-#: templates/js/translated/stock.js:2866
-#: templates/js/translated/table_filters.js:259
-#: templates/js/translated/table_filters.js:350
+#: templates/js/translated/build.js:1319
+#: templates/js/translated/model_renderers.js:226
+#: templates/js/translated/purchase_order.js:1259
+#: templates/js/translated/stock.js:1092 templates/js/translated/stock.js:2083
+#: templates/js/translated/stock.js:2993
+#: templates/js/translated/table_filters.js:265
+#: templates/js/translated/table_filters.js:356
msgid "Batch"
msgstr "Lote"
#: build/templates/build/detail.html:133
-#: order/templates/order/order_base.html:177
+#: order/templates/order/order_base.html:173
#: order/templates/order/return_order_base.html:152
#: order/templates/order/sales_order_base.html:187
-#: templates/js/translated/build.js:2905
+#: templates/js/translated/build.js:2122
msgid "Created"
msgstr "Criado"
@@ -1766,147 +1814,106 @@ msgstr "Criado"
msgid "No target date set"
msgstr "Sem data alvo definida"
+#: build/templates/build/detail.html:149
+#: order/templates/order/sales_order_base.html:203
+#: templates/js/translated/table_filters.js:624
+msgid "Completed"
+msgstr "Concluído"
+
#: build/templates/build/detail.html:153
msgid "Build not complete"
msgstr "Produção não concluída"
-#: build/templates/build/detail.html:164 build/templates/build/sidebar.html:19
+#: build/templates/build/detail.html:164 build/templates/build/sidebar.html:17
msgid "Child Build Orders"
msgstr "Pedido de Produção Filho"
-#: build/templates/build/detail.html:179
+#: build/templates/build/detail.html:177
msgid "Allocate Stock to Build"
msgstr "Alocar Estoque para Produção"
-#: build/templates/build/detail.html:183 templates/js/translated/build.js:2276
-msgid "Unallocate stock"
-msgstr "Estoque não alocado"
+#: build/templates/build/detail.html:181
+msgid "Deallocate stock"
+msgstr ""
+
+#: build/templates/build/detail.html:182
+msgid "Deallocate Stock"
+msgstr ""
#: build/templates/build/detail.html:184
-msgid "Unallocate Stock"
-msgstr "Estoque não Alocado"
-
-#: build/templates/build/detail.html:186
msgid "Automatically allocate stock to build"
msgstr "Alocar o estoque para produção automaticamente"
-#: build/templates/build/detail.html:187
+#: build/templates/build/detail.html:185
msgid "Auto Allocate"
msgstr "Alocar automaticamente"
-#: build/templates/build/detail.html:189
+#: build/templates/build/detail.html:187
msgid "Manually allocate stock to build"
msgstr "Alocar estoque para a produção manualmente"
-#: build/templates/build/detail.html:190 build/templates/build/sidebar.html:8
+#: build/templates/build/detail.html:188 build/templates/build/sidebar.html:8
msgid "Allocate Stock"
msgstr "Alocar estoque"
-#: build/templates/build/detail.html:193
+#: build/templates/build/detail.html:191
msgid "Order required parts"
msgstr "Pedir peças necessárias"
-#: build/templates/build/detail.html:194
-#: company/templates/company/detail.html:38
-#: company/templates/company/detail.html:86
-#: part/templates/part/category.html:184
-#: templates/js/translated/purchase_order.js:789
+#: build/templates/build/detail.html:192
+#: templates/js/translated/purchase_order.js:800
msgid "Order Parts"
msgstr "Pedir Peças"
-#: build/templates/build/detail.html:206
-msgid "Untracked stock has been fully allocated for this Build Order"
-msgstr "Estoque não rastreável foi totalmente alocado para este Pedido de Produção"
-
#: build/templates/build/detail.html:210
-msgid "Untracked stock has not been fully allocated for this Build Order"
-msgstr "Estoque não rastreável não foi totalmente alocado para este Pedido de Produção"
-
-#: build/templates/build/detail.html:217
-msgid "Allocate selected items"
-msgstr "Alocar itens selecionados"
-
-#: build/templates/build/detail.html:227
-msgid "This Build Order does not have any associated untracked BOM items"
-msgstr "Esse Pedido de Produção não possuí nenhum item não rastreável associado à LDM"
-
-#: build/templates/build/detail.html:236
msgid "Incomplete Build Outputs"
msgstr "Saída de Produção Incompletas"
-#: build/templates/build/detail.html:240
+#: build/templates/build/detail.html:214
msgid "Create new build output"
msgstr "Criar nova saída de produção"
-#: build/templates/build/detail.html:241
+#: build/templates/build/detail.html:215
msgid "New Build Output"
msgstr "Nova saída de produção"
-#: build/templates/build/detail.html:255
-msgid "Output Actions"
-msgstr "Ações de saídas"
-
-#: build/templates/build/detail.html:260
-msgid "Complete selected build outputs"
-msgstr "Concluir saídas de produções selecionados"
-
-#: build/templates/build/detail.html:261
-msgid "Complete outputs"
-msgstr "Saídas concluídas"
-
-#: build/templates/build/detail.html:265
-msgid "Scrap selected build outputs"
-msgstr ""
-
-#: build/templates/build/detail.html:266
-msgid "Scrap outputs"
-msgstr ""
-
-#: build/templates/build/detail.html:270
-msgid "Delete selected build outputs"
-msgstr "Excluir saídas de produções selecionados"
-
-#: build/templates/build/detail.html:271
-msgid "Delete outputs"
-msgstr "Exlcuir saídas"
-
-#: build/templates/build/detail.html:288 build/templates/build/sidebar.html:11
+#: build/templates/build/detail.html:232 build/templates/build/sidebar.html:15
msgid "Consumed Stock"
msgstr ""
-#: build/templates/build/detail.html:300
+#: build/templates/build/detail.html:244
msgid "Completed Build Outputs"
msgstr "Saídas de Produção concluídas"
-#: build/templates/build/detail.html:312 build/templates/build/sidebar.html:21
-#: company/templates/company/detail.html:261
-#: company/templates/company/manufacturer_part.html:151
+#: build/templates/build/detail.html:256 build/templates/build/sidebar.html:19
+#: company/templates/company/detail.html:229
+#: company/templates/company/manufacturer_part.html:141
#: company/templates/company/manufacturer_part_sidebar.html:9
-#: company/templates/company/sidebar.html:37
+#: company/templates/company/sidebar.html:39
#: order/templates/order/po_sidebar.html:9
-#: order/templates/order/purchase_order_detail.html:102
-#: order/templates/order/return_order_detail.html:74
+#: order/templates/order/purchase_order_detail.html:84
+#: order/templates/order/return_order_detail.html:70
#: order/templates/order/return_order_sidebar.html:7
-#: order/templates/order/sales_order_detail.html:134
-#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:234
-#: part/templates/part/part_sidebar.html:61 stock/templates/stock/item.html:117
+#: order/templates/order/sales_order_detail.html:124
+#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:217
+#: part/templates/part/part_sidebar.html:61 stock/templates/stock/item.html:109
#: stock/templates/stock/stock_sidebar.html:23
msgid "Attachments"
msgstr "Anexos"
-#: build/templates/build/detail.html:327
+#: build/templates/build/detail.html:271
msgid "Build Notes"
msgstr "Notas de produção"
-#: build/templates/build/detail.html:502
+#: build/templates/build/detail.html:425
msgid "Allocation Complete"
msgstr "Alocação Concluída"
-#: build/templates/build/detail.html:503
-msgid "All untracked stock items have been allocated"
-msgstr "Todos os itens não rastreáveis foram alocados"
+#: build/templates/build/detail.html:426
+msgid "All lines have been fully allocated"
+msgstr ""
-#: build/templates/build/index.html:18 part/templates/part/detail.html:340
+#: build/templates/build/index.html:18 part/templates/part/detail.html:319
msgid "New Build Order"
msgstr "Novo Pedido de Produção"
@@ -1914,14 +1921,10 @@ msgstr "Novo Pedido de Produção"
msgid "Build Order Details"
msgstr "Detalhes do Pedido de Produção"
-#: build/templates/build/sidebar.html:14
+#: build/templates/build/sidebar.html:10
msgid "Incomplete Outputs"
msgstr "Saídas Incompletas"
-#: build/templates/build/sidebar.html:17
-msgid "Completed Outputs"
-msgstr "Saídas Concluídas"
-
#: common/files.py:63
#, python-brace-format
msgid "Unsupported file format: {fmt}"
@@ -1968,16 +1971,6 @@ msgstr "Atualizado"
msgid "Timestamp of last update"
msgstr "Tempo da última atualização"
-#: common/models.py:104 order/admin.py:17 order/models.py:234
-#: templates/InvenTree/settings/settings_staff_js.html:70
-#: templates/js/translated/purchase_order.js:1670
-#: templates/js/translated/return_order.js:306
-#: templates/js/translated/sales_order.js:794
-#: templates/js/translated/table_filters.js:24
-#: templates/project_code_data.html:6
-msgid "Project Code"
-msgstr "Código do projeto"
-
#: common/models.py:105
msgid "Unique project code"
msgstr "Código único do projeto"
@@ -2261,9 +2254,9 @@ msgstr "Copiar Parâmetros dos Modelos de Categoria"
msgid "Copy category parameter templates when creating a part"
msgstr "Copiar parâmetros do modelo de categoria quando criar uma peça"
-#: common/models.py:1162 part/admin.py:55 part/models.py:3560
-#: report/models.py:166 templates/js/translated/table_filters.js:109
-#: templates/js/translated/table_filters.js:680
+#: common/models.py:1162 part/admin.py:55 part/models.py:3594
+#: report/models.py:166 templates/js/translated/table_filters.js:115
+#: templates/js/translated/table_filters.js:702
msgid "Template"
msgstr "Modelo"
@@ -2271,10 +2264,10 @@ msgstr "Modelo"
msgid "Parts are templates by default"
msgstr "Peças são modelos por padrão"
-#: common/models.py:1169 part/admin.py:51 part/admin.py:283 part/models.py:996
-#: templates/js/translated/bom.js:1598
-#: templates/js/translated/table_filters.js:276
-#: templates/js/translated/table_filters.js:634
+#: common/models.py:1169 part/admin.py:51 part/admin.py:283 part/models.py:997
+#: templates/js/translated/bom.js:1618
+#: templates/js/translated/table_filters.js:282
+#: templates/js/translated/table_filters.js:656
msgid "Assembly"
msgstr "Montagem"
@@ -2282,8 +2275,8 @@ msgstr "Montagem"
msgid "Parts can be assembled from other components by default"
msgstr "Peças podem ser montadas a partir de outros componentes por padrão"
-#: common/models.py:1176 part/admin.py:52 part/models.py:1002
-#: templates/js/translated/table_filters.js:642
+#: common/models.py:1176 part/admin.py:52 part/models.py:1003
+#: templates/js/translated/table_filters.js:664
msgid "Component"
msgstr "Componente"
@@ -2291,7 +2284,7 @@ msgstr "Componente"
msgid "Parts can be used as sub-components by default"
msgstr "Peças podem ser usadas como sub-componentes por padrão"
-#: common/models.py:1183 part/admin.py:53 part/models.py:1013
+#: common/models.py:1183 part/admin.py:53 part/models.py:1014
msgid "Purchaseable"
msgstr "Comprável"
@@ -2299,8 +2292,8 @@ msgstr "Comprável"
msgid "Parts are purchaseable by default"
msgstr "Peças são compráveis por padrão"
-#: common/models.py:1190 part/admin.py:54 part/models.py:1018
-#: templates/js/translated/table_filters.js:668
+#: common/models.py:1190 part/admin.py:54 part/models.py:1019
+#: templates/js/translated/table_filters.js:690
msgid "Salable"
msgstr "Vendível"
@@ -2308,10 +2301,10 @@ msgstr "Vendível"
msgid "Parts are salable by default"
msgstr "Peças vão vendíveis por padrão"
-#: common/models.py:1197 part/admin.py:56 part/models.py:1008
-#: templates/js/translated/table_filters.js:117
-#: templates/js/translated/table_filters.js:193
-#: templates/js/translated/table_filters.js:684
+#: common/models.py:1197 part/admin.py:56 part/models.py:1009
+#: templates/js/translated/table_filters.js:123
+#: templates/js/translated/table_filters.js:199
+#: templates/js/translated/table_filters.js:706
msgid "Trackable"
msgstr "Rastreável"
@@ -2319,10 +2312,10 @@ msgstr "Rastreável"
msgid "Parts are trackable by default"
msgstr "Peças vão rastreáveis por padrão"
-#: common/models.py:1204 part/admin.py:57 part/models.py:1028
+#: common/models.py:1204 part/admin.py:57 part/models.py:1029
#: part/templates/part/part_base.html:156
-#: templates/js/translated/table_filters.js:113
-#: templates/js/translated/table_filters.js:688
+#: templates/js/translated/table_filters.js:119
+#: templates/js/translated/table_filters.js:710
msgid "Virtual"
msgstr "Virtual"
@@ -2354,7 +2347,7 @@ msgstr "Dados Iniciais de Estoque"
msgid "Allow creation of initial stock when adding a new part"
msgstr "Permitir Criação de estoque inicial quando adicional uma nova peça"
-#: common/models.py:1232 templates/js/translated/part.js:108
+#: common/models.py:1232 templates/js/translated/part.js:107
msgid "Initial Supplier Data"
msgstr "Dados Iniciais de Fornecedor"
@@ -2603,181 +2596,181 @@ msgid "Stock location default icon (empty means no icon)"
msgstr "Ícone padrão de local de estoque (vazio significa sem ícone)"
#: common/models.py:1471
+msgid "Show Installed Stock Items"
+msgstr ""
+
+#: common/models.py:1472
+msgid "Display installed stock items in stock tables"
+msgstr ""
+
+#: common/models.py:1478
msgid "Build Order Reference Pattern"
msgstr "Modelo de Referência de Pedidos de Produção"
-#: common/models.py:1472
+#: common/models.py:1479
msgid "Required pattern for generating Build Order reference field"
msgstr "Modelo necessário para gerar campo de referência do Pedido de Produção"
-#: common/models.py:1478
+#: common/models.py:1485
msgid "Enable Return Orders"
msgstr "Ativar Pedidos de Devolução"
-#: common/models.py:1479
+#: common/models.py:1486
msgid "Enable return order functionality in the user interface"
msgstr "Ativar funcionalidade de pedido de retorno na interface do usuário"
-#: common/models.py:1485
+#: common/models.py:1492
msgid "Return Order Reference Pattern"
msgstr "Modelo de Referência de Pedidos de Devolução"
-#: common/models.py:1486
+#: common/models.py:1493
msgid "Required pattern for generating Return Order reference field"
msgstr "Modelo necessário para gerar campo de referência do Pedido de Devolução"
-#: common/models.py:1492
+#: common/models.py:1499
msgid "Edit Completed Return Orders"
msgstr "Editar os Pedidos de Devolução Concluídos"
-#: common/models.py:1493
+#: common/models.py:1500
msgid "Allow editing of return orders after they have been completed"
msgstr "Permitir a edição de pedidos de devolução após serem enviados ou concluídos"
-#: common/models.py:1499
+#: common/models.py:1506
msgid "Sales Order Reference Pattern"
msgstr "Modelo de Referência de Pedidos de Venda"
-#: common/models.py:1500
+#: common/models.py:1507
msgid "Required pattern for generating Sales Order reference field"
msgstr "Modelo necessário para gerar campo de referência do Pedido de Venda"
-#: common/models.py:1506
+#: common/models.py:1513
msgid "Sales Order Default Shipment"
msgstr "Envio Padrão de Pedidos de Venda"
-#: common/models.py:1507
+#: common/models.py:1514
msgid "Enable creation of default shipment with sales orders"
msgstr "Habilitar criação de envio padrão com Pedidos de Vendas"
-#: common/models.py:1513
+#: common/models.py:1520
msgid "Edit Completed Sales Orders"
msgstr "Editar os Pedidos de Vendas concluídos"
-#: common/models.py:1514
+#: common/models.py:1521
msgid "Allow editing of sales orders after they have been shipped or completed"
msgstr "Permitir a edição de pedidos de vendas após serem enviados ou concluídos"
-#: common/models.py:1520
+#: common/models.py:1527
msgid "Purchase Order Reference Pattern"
msgstr "Modelo de Referência de Pedidos de Compras"
-#: common/models.py:1521
+#: common/models.py:1528
msgid "Required pattern for generating Purchase Order reference field"
msgstr "Modelo necessário para gerar campo de referência do Pedido de Compra"
-#: common/models.py:1527
+#: common/models.py:1534
msgid "Edit Completed Purchase Orders"
msgstr "Editar Pedidos de Compra Concluídos"
-#: common/models.py:1528
+#: common/models.py:1535
msgid "Allow editing of purchase orders after they have been shipped or completed"
msgstr "Permitir a edição de pedidos de compras após serem enviados ou concluídos"
-#: common/models.py:1535
+#: common/models.py:1542
msgid "Enable password forgot"
msgstr "Habitar esquecer senha"
-#: common/models.py:1536
+#: common/models.py:1543
msgid "Enable password forgot function on the login pages"
msgstr "Habilitar a função \"Esqueci minha senha\" nas páginas de acesso"
-#: common/models.py:1542
+#: common/models.py:1549
msgid "Enable registration"
msgstr "Habilitar cadastro"
-#: common/models.py:1543
+#: common/models.py:1550
msgid "Enable self-registration for users on the login pages"
msgstr "Ativar auto-registro para usuários na página de entrada"
-#: common/models.py:1549
+#: common/models.py:1556
msgid "Enable SSO"
msgstr "Ativar SSO"
-#: common/models.py:1550
+#: common/models.py:1557
msgid "Enable SSO on the login pages"
msgstr "Ativar SSO na página de acesso"
-#: common/models.py:1556
+#: common/models.py:1563
msgid "Enable SSO registration"
msgstr "Ativar registro SSO"
-#: common/models.py:1557
+#: common/models.py:1564
msgid "Enable self-registration via SSO for users on the login pages"
msgstr "Ativar auto-registro por SSO para usuários na página de entrada"
-#: common/models.py:1563
+#: common/models.py:1570
msgid "Email required"
msgstr "Email obrigatório"
-#: common/models.py:1564
+#: common/models.py:1571
msgid "Require user to supply mail on signup"
msgstr "Exigir do usuário o e-mail no cadastro"
-#: common/models.py:1570
+#: common/models.py:1577
msgid "Auto-fill SSO users"
msgstr "Auto-preencher usuários SSO"
-#: common/models.py:1571
+#: common/models.py:1578
msgid "Automatically fill out user-details from SSO account-data"
msgstr "Preencher automaticamente os detalhes do usuário a partir de dados da conta SSO"
-#: common/models.py:1577
+#: common/models.py:1584
msgid "Mail twice"
msgstr "Enviar email duplo"
-#: common/models.py:1578
+#: common/models.py:1585
msgid "On signup ask users twice for their mail"
msgstr "No registro pedir aos usuários duas vezes pelo email"
-#: common/models.py:1584
+#: common/models.py:1591
msgid "Password twice"
msgstr "Senha duas vezes"
-#: common/models.py:1585
+#: common/models.py:1592
msgid "On signup ask users twice for their password"
msgstr "No registro pedir aos usuários duas vezes pela senha"
-#: common/models.py:1591
+#: common/models.py:1598
msgid "Allowed domains"
msgstr "Domínios permitidos"
-#: common/models.py:1592
+#: common/models.py:1599
msgid "Restrict signup to certain domains (comma-separated, starting with @)"
msgstr "Restringir registros a certos domínios (separados por vírgula, começando com @)"
-#: common/models.py:1598
+#: common/models.py:1605
msgid "Group on signup"
msgstr "Grupo no cadastro"
-#: common/models.py:1599
+#: common/models.py:1606
msgid "Group to which new users are assigned on registration"
msgstr "Grupo ao qual novos usuários são atribuídos no registro"
-#: common/models.py:1605
+#: common/models.py:1612
msgid "Enforce MFA"
msgstr "Forçar AMF"
-#: common/models.py:1606
+#: common/models.py:1613
msgid "Users must use multifactor security."
msgstr "Os usuários devem usar uma segurança multifator."
-#: common/models.py:1612
+#: common/models.py:1619
msgid "Check plugins on startup"
msgstr "Checar extensões no início"
-#: common/models.py:1613
+#: common/models.py:1620
msgid "Check that all plugins are installed on startup - enable in container environments"
msgstr "Checar que todas as extensões instaladas no início — ativar em ambientes de contêineres"
-#: common/models.py:1620
-msgid "Check plugin signatures"
-msgstr "Checar assinaturas de extensões"
-
-#: common/models.py:1621
-msgid "Check and show signatures for plugins"
-msgstr "Checar e mostrar assinaturas das extensões"
-
#: common/models.py:1628
msgid "Enable URL integration"
msgstr "Ativar integração URL"
@@ -2850,7 +2843,7 @@ msgstr "Intervalo para Excluir o Relatório"
msgid "Stocktake reports will be deleted after specified number of days"
msgstr "Relatórios de balanço serão apagados após um número de dias especificado"
-#: common/models.py:1710 common/models.py:2147
+#: common/models.py:1710 common/models.py:2133
msgid "Settings key (must be unique - case insensitive"
msgstr "Senha de configurações (deve ser única — diferencia maiúsculas de minúsculas"
@@ -2891,528 +2884,513 @@ msgid "Show latest parts on the homepage"
msgstr "Mostrar as peças mais recentes na página inicial"
#: common/models.py:1779
-msgid "Recent Part Count"
-msgstr "Contagem de peças recentes"
-
-#: common/models.py:1780
-msgid "Number of recent parts to display on index page"
-msgstr "Número de peças recentes para mostrar no índice"
-
-#: common/models.py:1786
msgid "Show unvalidated BOMs"
msgstr "Mostrar LDMs não validadas"
-#: common/models.py:1787
+#: common/models.py:1780
msgid "Show BOMs that await validation on the homepage"
msgstr "Mostrar LDMs que aguardam validação na página inicial"
-#: common/models.py:1793
+#: common/models.py:1786
msgid "Show recent stock changes"
msgstr "Mostrar alterações recentes de estoque"
-#: common/models.py:1794
+#: common/models.py:1787
msgid "Show recently changed stock items on the homepage"
msgstr "Mostrar itens de estoque alterados recentemente na página inicial"
-#: common/models.py:1800
-msgid "Recent Stock Count"
-msgstr "Contagem de Estoque Recente"
-
-#: common/models.py:1801
-msgid "Number of recent stock items to display on index page"
-msgstr "Número recentes itens do estoque para mostrar no índice"
-
-#: common/models.py:1807
+#: common/models.py:1793
msgid "Show low stock"
msgstr "Mostrar baixo estoque"
-#: common/models.py:1808
+#: common/models.py:1794
msgid "Show low stock items on the homepage"
msgstr "Mostrar itens de baixo estoque na página inicial"
-#: common/models.py:1814
+#: common/models.py:1800
msgid "Show depleted stock"
msgstr "Mostrar estoque esgotado"
-#: common/models.py:1815
+#: common/models.py:1801
msgid "Show depleted stock items on the homepage"
msgstr "Mostrar itens sem estoque na página inicial"
-#: common/models.py:1821
+#: common/models.py:1807
msgid "Show needed stock"
msgstr "Mostrar estoque necessário"
-#: common/models.py:1822
+#: common/models.py:1808
msgid "Show stock items needed for builds on the homepage"
msgstr "Mostrar itens de estoque necessários para produções na tela inicial"
-#: common/models.py:1828
+#: common/models.py:1814
msgid "Show expired stock"
msgstr "Mostrar estoque expirado"
-#: common/models.py:1829
+#: common/models.py:1815
msgid "Show expired stock items on the homepage"
msgstr "Mostrar expirados itens em estoque na tela inicial"
-#: common/models.py:1835
+#: common/models.py:1821
msgid "Show stale stock"
msgstr "Mostrar estoque inativo"
-#: common/models.py:1836
+#: common/models.py:1822
msgid "Show stale stock items on the homepage"
msgstr "Mostrar estoque inativo na tela inicial"
-#: common/models.py:1842
+#: common/models.py:1828
msgid "Show pending builds"
msgstr "Mostrar produções pendentes"
-#: common/models.py:1843
+#: common/models.py:1829
msgid "Show pending builds on the homepage"
msgstr "Mostrar produções pendentes na tela inicial"
-#: common/models.py:1849
+#: common/models.py:1835
msgid "Show overdue builds"
msgstr "Mostrar produções atrasadas"
-#: common/models.py:1850
+#: common/models.py:1836
msgid "Show overdue builds on the homepage"
msgstr "Mostrar produções atrasadas na tela inicial"
-#: common/models.py:1856
+#: common/models.py:1842
msgid "Show outstanding POs"
msgstr "Mostrar pedidos de compra pendentes"
-#: common/models.py:1857
+#: common/models.py:1843
msgid "Show outstanding POs on the homepage"
msgstr "Mostrar os Pedidos de Compras pendentes na página inicial"
-#: common/models.py:1863
+#: common/models.py:1849
msgid "Show overdue POs"
msgstr "Mostrar Pedidos de Compra atrasados"
-#: common/models.py:1864
+#: common/models.py:1850
msgid "Show overdue POs on the homepage"
msgstr "Mostrar os Pedidos de Compras atrasadas na tela inicial"
-#: common/models.py:1870
+#: common/models.py:1856
msgid "Show outstanding SOs"
msgstr "Mostrar pedidos de vendas pendentes"
-#: common/models.py:1871
+#: common/models.py:1857
msgid "Show outstanding SOs on the homepage"
msgstr "Mostrar os Pedidos de Vendas pendentes na página inicial"
-#: common/models.py:1877
+#: common/models.py:1863
msgid "Show overdue SOs"
msgstr "Mostrar Pedidos de Venda atrasados"
-#: common/models.py:1878
+#: common/models.py:1864
msgid "Show overdue SOs on the homepage"
msgstr "Mostrar os Pedidos de Vendas atrasadas na tela inicial"
-#: common/models.py:1884
+#: common/models.py:1870
msgid "Show pending SO shipments"
msgstr "Mostrar remessas de OV pendentes"
-#: common/models.py:1885
+#: common/models.py:1871
msgid "Show pending SO shipments on the homepage"
msgstr "Mostrar envios OV pendentes na tela inicial"
-#: common/models.py:1891
+#: common/models.py:1877
msgid "Show News"
msgstr "Mostrar notícias"
-#: common/models.py:1892
+#: common/models.py:1878
msgid "Show news on the homepage"
msgstr "Mostrar notícias na tela inicial"
-#: common/models.py:1898
+#: common/models.py:1884
msgid "Inline label display"
msgstr "Mostrar etiqueta em linha"
-#: common/models.py:1899
+#: common/models.py:1885
msgid "Display PDF labels in the browser, instead of downloading as a file"
msgstr "Mostrar etiquetas em PDF no navegador, ao invés de baixar o arquivo"
-#: common/models.py:1905
+#: common/models.py:1891
msgid "Default label printer"
msgstr "Impressora de etiquetas padrão"
-#: common/models.py:1906
+#: common/models.py:1892
msgid "Configure which label printer should be selected by default"
msgstr "Configurar qual impressora de etiqueta deve ser selecionada por padrão"
-#: common/models.py:1912
+#: common/models.py:1898
msgid "Inline report display"
msgstr "Mostrar relatório em linha"
-#: common/models.py:1913
+#: common/models.py:1899
msgid "Display PDF reports in the browser, instead of downloading as a file"
msgstr "Mostrar relatórios em PDF no navegador, ao invés de baixar o arquivo"
-#: common/models.py:1919
+#: common/models.py:1905
msgid "Search Parts"
msgstr "Procurar Peças"
-#: common/models.py:1920
+#: common/models.py:1906
msgid "Display parts in search preview window"
msgstr "Mostrar peças na janela de visualização de pesquisa"
-#: common/models.py:1926
+#: common/models.py:1912
msgid "Search Supplier Parts"
msgstr "Buscar Peças do Fornecedor"
-#: common/models.py:1927
+#: common/models.py:1913
msgid "Display supplier parts in search preview window"
msgstr "Mostrar fornecedor de peças na janela de visualização de pesquisa"
-#: common/models.py:1933
+#: common/models.py:1919
msgid "Search Manufacturer Parts"
msgstr "Buscar peças do fabricante"
-#: common/models.py:1934
+#: common/models.py:1920
msgid "Display manufacturer parts in search preview window"
msgstr "Mostrar fabricante de peças na janela de visualização de pesquisa"
-#: common/models.py:1940
+#: common/models.py:1926
msgid "Hide Inactive Parts"
msgstr "Ocultar peças inativas"
-#: common/models.py:1941
+#: common/models.py:1927
msgid "Excluded inactive parts from search preview window"
msgstr "Não incluir peças inativas na janela de visualização de pesquisa"
-#: common/models.py:1947
+#: common/models.py:1933
msgid "Search Categories"
msgstr "Pesquisar Categorias"
-#: common/models.py:1948
+#: common/models.py:1934
msgid "Display part categories in search preview window"
msgstr "Mostrar categoria das peças na janela de visualização de pesquisa"
-#: common/models.py:1954
+#: common/models.py:1940
msgid "Search Stock"
msgstr "Pesquisar Estoque"
-#: common/models.py:1955
+#: common/models.py:1941
msgid "Display stock items in search preview window"
msgstr "Mostrar itens do estoque na janela de visualização de pesquisa"
-#: common/models.py:1961
+#: common/models.py:1947
msgid "Hide Unavailable Stock Items"
msgstr "Ocultar itens do estoque indisponíveis"
-#: common/models.py:1962
+#: common/models.py:1948
msgid "Exclude stock items which are not available from the search preview window"
msgstr "Não incluir itens de estoque que não estão disponíveis na janela de visualização de pesquisa"
-#: common/models.py:1968
+#: common/models.py:1954
msgid "Search Locations"
msgstr "Procurar Locais"
-#: common/models.py:1969
+#: common/models.py:1955
msgid "Display stock locations in search preview window"
msgstr "Mostrar locais de estoque na janela de visualização de pesquisa"
-#: common/models.py:1975
+#: common/models.py:1961
msgid "Search Companies"
msgstr "Pesquisar empresas"
-#: common/models.py:1976
+#: common/models.py:1962
msgid "Display companies in search preview window"
msgstr "Mostrar empresas na janela de visualização de pesquisa"
-#: common/models.py:1982
+#: common/models.py:1968
msgid "Search Build Orders"
msgstr "Procurar Pedidos de Produção"
-#: common/models.py:1983
+#: common/models.py:1969
msgid "Display build orders in search preview window"
msgstr "Mostrar pedidos de produção na janela de visualização de pesquisa"
-#: common/models.py:1989
+#: common/models.py:1975
msgid "Search Purchase Orders"
msgstr "Mostrar Pedido de Compras"
-#: common/models.py:1990
+#: common/models.py:1976
msgid "Display purchase orders in search preview window"
msgstr "Mostrar pedidos de compra na janela de visualização de pesquisa"
-#: common/models.py:1996
+#: common/models.py:1982
msgid "Exclude Inactive Purchase Orders"
msgstr "Não incluir Pedidos de Compras Inativos"
-#: common/models.py:1997
+#: common/models.py:1983
msgid "Exclude inactive purchase orders from search preview window"
msgstr "Não incluir pedidos de compras inativos na janela de visualização de pesquisa"
-#: common/models.py:2003
+#: common/models.py:1989
msgid "Search Sales Orders"
msgstr "Procurar Pedidos de Vendas"
-#: common/models.py:2004
+#: common/models.py:1990
msgid "Display sales orders in search preview window"
msgstr "Mostrar pedidos de vendas na janela de visualização de pesquisa"
-#: common/models.py:2010
+#: common/models.py:1996
msgid "Exclude Inactive Sales Orders"
msgstr "Não Incluir Pedidos de Compras Inativas"
-#: common/models.py:2011
+#: common/models.py:1997
msgid "Exclude inactive sales orders from search preview window"
msgstr "Não incluir pedidos de vendas inativos na janela de visualização de pesquisa"
-#: common/models.py:2017
+#: common/models.py:2003
msgid "Search Return Orders"
msgstr "Procurar Pedidos de Devolução"
-#: common/models.py:2018
+#: common/models.py:2004
msgid "Display return orders in search preview window"
msgstr "Mostrar pedidos de devolução na janela de visualização de pesquisa"
-#: common/models.py:2024
+#: common/models.py:2010
msgid "Exclude Inactive Return Orders"
msgstr "Não Incluir Pedidos de Devolução Inativas"
-#: common/models.py:2025
+#: common/models.py:2011
msgid "Exclude inactive return orders from search preview window"
msgstr "Não incluir pedidos de devolução inativos na janela de visualização de pesquisa"
-#: common/models.py:2031
+#: common/models.py:2017
msgid "Search Preview Results"
msgstr "Mostrar Resultados Anteriores"
-#: common/models.py:2032
+#: common/models.py:2018
msgid "Number of results to show in each section of the search preview window"
msgstr "Número de resultados mostrados em cada seção da janela de visualização de pesquisa"
-#: common/models.py:2038
+#: common/models.py:2024
msgid "Regex Search"
msgstr "Pesquisa de Regex"
-#: common/models.py:2039
+#: common/models.py:2025
msgid "Enable regular expressions in search queries"
msgstr "Permitir expressôes comuns nas conultas de pesquisas"
-#: common/models.py:2045
+#: common/models.py:2031
msgid "Whole Word Search"
msgstr "Busca de Palavras Inteira"
-#: common/models.py:2046
+#: common/models.py:2032
msgid "Search queries return results for whole word matches"
msgstr "Pesquisa retorna que palavra inteira coincide"
-#: common/models.py:2052
+#: common/models.py:2038
msgid "Show Quantity in Forms"
msgstr "Mostrar Quantidade nos Formulários"
-#: common/models.py:2053
+#: common/models.py:2039
msgid "Display available part quantity in some forms"
msgstr "Mostrar a quantidade de peças disponíveis em alguns formulários"
-#: common/models.py:2059
+#: common/models.py:2045
msgid "Escape Key Closes Forms"
msgstr "Tecla Esc Fecha Formulários"
-#: common/models.py:2060
+#: common/models.py:2046
msgid "Use the escape key to close modal forms"
msgstr "Usar a tecla Esc para fechar fomulários modais"
-#: common/models.py:2066
+#: common/models.py:2052
msgid "Fixed Navbar"
msgstr "Fixar Navbar"
-#: common/models.py:2067
+#: common/models.py:2053
msgid "The navbar position is fixed to the top of the screen"
msgstr "A posição do Navbar é fixa no topo da tela"
-#: common/models.py:2073
+#: common/models.py:2059
msgid "Date Format"
msgstr "Formato da data"
-#: common/models.py:2074
+#: common/models.py:2060
msgid "Preferred format for displaying dates"
msgstr "Formato preferido para mostrar datas"
-#: common/models.py:2088 part/templates/part/detail.html:41
+#: common/models.py:2074 part/templates/part/detail.html:41
msgid "Part Scheduling"
msgstr "Agendamento de peças"
-#: common/models.py:2089
+#: common/models.py:2075
msgid "Display part scheduling information"
msgstr "Mostrar informações de agendamento de peças"
-#: common/models.py:2095 part/templates/part/detail.html:62
+#: common/models.py:2081 part/templates/part/detail.html:62
msgid "Part Stocktake"
msgstr "Balanço de Peça"
-#: common/models.py:2096
+#: common/models.py:2082
msgid "Display part stocktake information (if stocktake functionality is enabled)"
msgstr "Mostrar informação de balanço da peça (se a funcionalidade de balanço estiver habilitada)"
-#: common/models.py:2102
+#: common/models.py:2088
msgid "Table String Length"
msgstr "Comprimento da Tabela de Frases"
-#: common/models.py:2103
+#: common/models.py:2089
msgid "Maximimum length limit for strings displayed in table views"
msgstr "Limite máximo de comprimento para frases exibidas nas visualizações de tabela"
-#: common/models.py:2112
+#: common/models.py:2098
msgid "Default part label template"
msgstr ""
-#: common/models.py:2113
+#: common/models.py:2099
msgid "The part label template to be automatically selected"
msgstr ""
-#: common/models.py:2121
+#: common/models.py:2107
msgid "Default stock item template"
msgstr ""
-#: common/models.py:2122
+#: common/models.py:2108
msgid "The stock item label template to be automatically selected"
msgstr ""
-#: common/models.py:2130
+#: common/models.py:2116
msgid "Default stock location label template"
msgstr ""
-#: common/models.py:2131
+#: common/models.py:2117
msgid "The stock location label template to be automatically selected"
msgstr ""
-#: common/models.py:2177
+#: common/models.py:2163
msgid "Price break quantity"
msgstr "Quantidade de Parcelamentos"
-#: common/models.py:2184 company/serializers.py:434 order/admin.py:43
-#: order/models.py:1132 order/models.py:1939
-#: templates/js/translated/company.js:1433 templates/js/translated/part.js:1856
+#: common/models.py:2170 company/serializers.py:491 order/admin.py:43
+#: order/models.py:1145 order/models.py:1952
+#: templates/js/translated/company.js:1854 templates/js/translated/part.js:1855
#: templates/js/translated/pricing.js:621
-#: templates/js/translated/return_order.js:725
+#: templates/js/translated/return_order.js:737
msgid "Price"
msgstr "Preço"
-#: common/models.py:2185
+#: common/models.py:2171
msgid "Unit price at specified quantity"
msgstr "Preço unitário na quantidade especificada"
-#: common/models.py:2345 common/models.py:2523
+#: common/models.py:2331 common/models.py:2509
msgid "Endpoint"
msgstr "Ponto final"
-#: common/models.py:2346
+#: common/models.py:2332
msgid "Endpoint at which this webhook is received"
msgstr "Ponto final em qual o gancho web foi recebido"
-#: common/models.py:2355
+#: common/models.py:2341
msgid "Name for this webhook"
msgstr "Nome para este webhook"
-#: common/models.py:2360 part/admin.py:50 part/models.py:1023
-#: plugin/models.py:47 templates/js/translated/table_filters.js:105
-#: templates/js/translated/table_filters.js:189
-#: templates/js/translated/table_filters.js:434
-#: templates/js/translated/table_filters.js:450
-#: templates/js/translated/table_filters.js:629
+#: common/models.py:2346 part/admin.py:50 part/models.py:1024
+#: plugin/models.py:48 templates/js/translated/table_filters.js:111
+#: templates/js/translated/table_filters.js:195
+#: templates/js/translated/table_filters.js:440
+#: templates/js/translated/table_filters.js:456
+#: templates/js/translated/table_filters.js:651
msgid "Active"
msgstr "Ativo"
-#: common/models.py:2361
+#: common/models.py:2347
msgid "Is this webhook active"
msgstr "Este gancho web está ativo"
-#: common/models.py:2375
+#: common/models.py:2361
msgid "Token"
msgstr "Token"
-#: common/models.py:2376
+#: common/models.py:2362
msgid "Token for access"
msgstr "Token de acesso"
-#: common/models.py:2383
+#: common/models.py:2369
msgid "Secret"
msgstr "Segredo"
-#: common/models.py:2384
+#: common/models.py:2370
msgid "Shared secret for HMAC"
msgstr "Segredo compartilhado para HMAC"
-#: common/models.py:2490
+#: common/models.py:2476
msgid "Message ID"
msgstr "ID da Mensagem"
-#: common/models.py:2491
+#: common/models.py:2477
msgid "Unique identifier for this message"
msgstr "Identificador exclusivo desta mensagem"
-#: common/models.py:2499
+#: common/models.py:2485
msgid "Host"
msgstr "Servidor"
-#: common/models.py:2500
+#: common/models.py:2486
msgid "Host from which this message was received"
msgstr "Servidor do qual esta mensagem foi recebida"
-#: common/models.py:2507
+#: common/models.py:2493
msgid "Header"
msgstr "Cabeçalho"
-#: common/models.py:2508
+#: common/models.py:2494
msgid "Header of this message"
msgstr "Cabeçalho da mensagem"
-#: common/models.py:2514
+#: common/models.py:2500
msgid "Body"
msgstr "Corpo"
-#: common/models.py:2515
+#: common/models.py:2501
msgid "Body of this message"
msgstr "Corpo da mensagem"
-#: common/models.py:2524
+#: common/models.py:2510
msgid "Endpoint on which this message was received"
msgstr "Ponto do qual esta mensagem foi recebida"
-#: common/models.py:2529
+#: common/models.py:2515
msgid "Worked on"
msgstr "Trabalhado em"
-#: common/models.py:2530
+#: common/models.py:2516
msgid "Was the work on this message finished?"
msgstr "O trabalho desta mensagem foi concluído?"
-#: common/models.py:2684
+#: common/models.py:2670
msgid "Id"
msgstr "Id"
-#: common/models.py:2690 templates/js/translated/news.js:44
+#: common/models.py:2676 templates/js/translated/company.js:996
+#: templates/js/translated/news.js:44
msgid "Title"
msgstr "Título"
-#: common/models.py:2700 templates/js/translated/news.js:60
+#: common/models.py:2686 templates/js/translated/news.js:60
msgid "Published"
msgstr "Publicado"
-#: common/models.py:2705 templates/InvenTree/settings/plugin_settings.html:32
+#: common/models.py:2691 templates/InvenTree/settings/plugin_settings.html:32
#: templates/js/translated/news.js:56 templates/js/translated/plugin.js:106
msgid "Author"
msgstr "Autor"
-#: common/models.py:2710 templates/js/translated/news.js:52
+#: common/models.py:2696 templates/js/translated/news.js:52
msgid "Summary"
msgstr "Resumo"
-#: common/models.py:2715
+#: common/models.py:2701
msgid "Read"
msgstr "Lida"
-#: common/models.py:2716
+#: common/models.py:2702
msgid "Was this news item read?"
msgstr "Esta notícia do item foi lida?"
-#: common/models.py:2736 company/models.py:143 part/models.py:914
+#: common/models.py:2722 company/models.py:139 part/models.py:915
#: report/templates/report/inventree_bill_of_materials_report.html:126
#: report/templates/report/inventree_bill_of_materials_report.html:148
#: report/templates/report/inventree_return_order_report_base.html:35
@@ -3422,7 +3400,7 @@ msgstr "Esta notícia do item foi lida?"
msgid "Image"
msgstr "Imagem"
-#: common/models.py:2737
+#: common/models.py:2723
msgid "Image file"
msgstr "Arquivo de imagem"
@@ -3499,7 +3477,7 @@ msgstr "Descrição da empresa"
#: company/models.py:113 company/templates/company/company_base.html:101
#: templates/InvenTree/settings/plugin_settings.html:54
-#: templates/js/translated/company.js:514
+#: templates/js/translated/company.js:521
msgid "Website"
msgstr "Página Web"
@@ -3507,303 +3485,387 @@ msgstr "Página Web"
msgid "Company website URL"
msgstr "URL do Site da empresa"
-#: company/models.py:118 company/templates/company/company_base.html:119
-msgid "Address"
-msgstr "Endereço"
-
-#: company/models.py:119
-msgid "Company address"
-msgstr "Endereço da empresa"
-
-#: company/models.py:122
+#: company/models.py:118
msgid "Phone number"
msgstr "Número de telefone"
-#: company/models.py:123
+#: company/models.py:119
msgid "Contact phone number"
msgstr "Número de telefone do contato"
-#: company/models.py:126 company/templates/company/company_base.html:133
+#: company/models.py:122 company/templates/company/company_base.html:133
#: templates/InvenTree/settings/user.html:49
-#: templates/js/translated/company.js:659
+#: templates/js/translated/company.js:666
msgid "Email"
msgstr "Email"
-#: company/models.py:126
+#: company/models.py:122
msgid "Contact email address"
msgstr "Endereço de e-mail do contato"
-#: company/models.py:129 company/templates/company/company_base.html:140
-#: order/models.py:266 order/templates/order/order_base.html:207
+#: company/models.py:125 company/templates/company/company_base.html:140
+#: order/models.py:270 order/templates/order/order_base.html:203
#: order/templates/order/return_order_base.html:175
#: order/templates/order/sales_order_base.html:215
msgid "Contact"
msgstr "Contato"
-#: company/models.py:130
+#: company/models.py:126
msgid "Point of contact"
msgstr "Ponto de contato"
-#: company/models.py:132
+#: company/models.py:128
msgid "Link to external company information"
msgstr "Link para informações externas da empresa"
-#: company/models.py:146
+#: company/models.py:142
msgid "is customer"
msgstr "é cliente"
-#: company/models.py:146
+#: company/models.py:142
msgid "Do you sell items to this company?"
msgstr "Você vende itens para esta empresa?"
-#: company/models.py:148
+#: company/models.py:144
msgid "is supplier"
msgstr "é fornecedor"
-#: company/models.py:148
+#: company/models.py:144
msgid "Do you purchase items from this company?"
msgstr "Você compra itens desta empresa?"
-#: company/models.py:150
+#: company/models.py:146
msgid "is manufacturer"
msgstr "é fabricante"
-#: company/models.py:150
+#: company/models.py:146
msgid "Does this company manufacture parts?"
msgstr "Esta empresa fabrica peças?"
-#: company/models.py:157
+#: company/models.py:153
msgid "Default currency used for this company"
msgstr "Moeda padrão utilizada para esta empresa"
-#: company/models.py:223 company/templates/company/company_base.html:8
+#: company/models.py:235 company/models.py:328
+#: company/templates/company/company_base.html:8
#: company/templates/company/company_base.html:12
-#: templates/InvenTree/search.html:178 templates/js/translated/company.js:487
+#: templates/InvenTree/search.html:178 templates/js/translated/company.js:494
msgid "Company"
msgstr "Empresa"
-#: company/models.py:278 company/models.py:553 stock/models.py:675
-#: stock/serializers.py:155 stock/templates/stock/item_base.html:143
-#: templates/js/translated/bom.js:621
+#: company/models.py:324
+msgid "Company already has a primary address"
+msgstr ""
+
+#: company/models.py:329
+msgid "Select company"
+msgstr ""
+
+#: company/models.py:332
+msgid "Address title"
+msgstr ""
+
+#: company/models.py:333
+msgid "Title describing the address entry"
+msgstr ""
+
+#: company/models.py:337
+msgid "Primary address"
+msgstr ""
+
+#: company/models.py:338
+msgid "Set as primary address"
+msgstr ""
+
+#: company/models.py:341 templates/js/translated/company.js:941
+#: templates/js/translated/company.js:1002
+msgid "Line 1"
+msgstr ""
+
+#: company/models.py:342
+msgid "Address line 1"
+msgstr ""
+
+#: company/models.py:346 templates/js/translated/company.js:942
+#: templates/js/translated/company.js:1008
+msgid "Line 2"
+msgstr ""
+
+#: company/models.py:347
+msgid "Address line 2"
+msgstr ""
+
+#: company/models.py:351 company/models.py:352
+#: templates/js/translated/company.js:1014
+msgid "Postal code"
+msgstr ""
+
+#: company/models.py:356
+msgid "City/Region"
+msgstr ""
+
+#: company/models.py:357
+msgid "Postal code city/region"
+msgstr ""
+
+#: company/models.py:361
+msgid "State/Province"
+msgstr ""
+
+#: company/models.py:362
+msgid "State or province"
+msgstr ""
+
+#: company/models.py:366 templates/js/translated/company.js:1032
+msgid "Country"
+msgstr ""
+
+#: company/models.py:367
+msgid "Address country"
+msgstr ""
+
+#: company/models.py:371
+msgid "Courier shipping notes"
+msgstr ""
+
+#: company/models.py:372
+msgid "Notes for shipping courier"
+msgstr ""
+
+#: company/models.py:376
+msgid "Internal shipping notes"
+msgstr ""
+
+#: company/models.py:377
+msgid "Shipping notes for internal use"
+msgstr ""
+
+#: company/models.py:382
+msgid "Link to address information (external)"
+msgstr ""
+
+#: company/models.py:427 company/models.py:702 stock/models.py:675
+#: stock/serializers.py:204 stock/templates/stock/item_base.html:143
+#: templates/js/translated/bom.js:622
msgid "Base Part"
msgstr "Peça base"
-#: company/models.py:282 company/models.py:557
+#: company/models.py:431 company/models.py:706
msgid "Select part"
msgstr "Selecionar peça"
-#: company/models.py:293 company/templates/company/company_base.html:77
+#: company/models.py:442 company/templates/company/company_base.html:77
#: company/templates/company/manufacturer_part.html:90
-#: company/templates/company/supplier_part.html:146 part/serializers.py:354
+#: company/templates/company/supplier_part.html:146 part/serializers.py:404
#: stock/templates/stock/item_base.html:208
-#: templates/js/translated/company.js:498
-#: templates/js/translated/company.js:824
-#: templates/js/translated/company.js:954
-#: templates/js/translated/company.js:1221
-#: templates/js/translated/table_filters.js:709
+#: templates/js/translated/company.js:505
+#: templates/js/translated/company.js:1149
+#: templates/js/translated/company.js:1327
+#: templates/js/translated/company.js:1642
+#: templates/js/translated/table_filters.js:731
msgid "Manufacturer"
msgstr "Fabricante"
-#: company/models.py:294
+#: company/models.py:443
msgid "Select manufacturer"
msgstr "Selecionar fabricante"
-#: company/models.py:300 company/templates/company/manufacturer_part.html:101
-#: company/templates/company/supplier_part.html:154 part/serializers.py:360
-#: templates/js/translated/company.js:340
-#: templates/js/translated/company.js:823
-#: templates/js/translated/company.js:970
-#: templates/js/translated/company.js:1240 templates/js/translated/part.js:1773
-#: templates/js/translated/purchase_order.js:1814
-#: templates/js/translated/purchase_order.js:2021
+#: company/models.py:449 company/templates/company/manufacturer_part.html:101
+#: company/templates/company/supplier_part.html:154 part/serializers.py:410
+#: templates/js/translated/company.js:350
+#: templates/js/translated/company.js:1148
+#: templates/js/translated/company.js:1343
+#: templates/js/translated/company.js:1661 templates/js/translated/part.js:1772
+#: templates/js/translated/purchase_order.js:1829
+#: templates/js/translated/purchase_order.js:2031
msgid "MPN"
msgstr "NPF"
-#: company/models.py:301
+#: company/models.py:450
msgid "Manufacturer Part Number"
msgstr "Número de Peça do Fabricante"
-#: company/models.py:307
+#: company/models.py:456
msgid "URL for external manufacturer part link"
msgstr "URL do link externo da peça do fabricante"
-#: company/models.py:313
+#: company/models.py:462
msgid "Manufacturer part description"
msgstr "Descrição da peça do fabricante"
-#: company/models.py:360 company/models.py:384 company/models.py:578
+#: company/models.py:509 company/models.py:533 company/models.py:727
#: company/templates/company/manufacturer_part.html:7
#: company/templates/company/manufacturer_part.html:24
#: stock/templates/stock/item_base.html:218
msgid "Manufacturer Part"
msgstr "Peça do Fabricante"
-#: company/models.py:391
+#: company/models.py:540
msgid "Parameter name"
msgstr "Nome do parâmetro"
-#: company/models.py:397
+#: company/models.py:546
#: report/templates/report/inventree_test_report_base.html:104
-#: stock/models.py:2255 templates/js/translated/company.js:872
-#: templates/js/translated/company.js:1077 templates/js/translated/part.js:1465
-#: templates/js/translated/stock.js:1446
+#: stock/models.py:2255 templates/js/translated/company.js:1197
+#: templates/js/translated/company.js:1450 templates/js/translated/part.js:1464
+#: templates/js/translated/stock.js:1445
msgid "Value"
msgstr "Valor"
-#: company/models.py:398
+#: company/models.py:547
msgid "Parameter value"
msgstr "Valor do Parâmetro"
-#: company/models.py:404 company/templates/company/supplier_part.html:169
-#: part/admin.py:40 part/models.py:987 part/models.py:3407
+#: company/models.py:553 company/templates/company/supplier_part.html:169
+#: part/admin.py:40 part/models.py:988 part/models.py:3441
#: part/templates/part/part_base.html:286
-#: templates/js/translated/company.js:1083 templates/js/translated/part.js:1484
-#: templates/js/translated/part.js:1588 templates/js/translated/part.js:2262
+#: templates/js/translated/company.js:1456 templates/js/translated/part.js:1483
+#: templates/js/translated/part.js:1587 templates/js/translated/part.js:2338
msgid "Units"
msgstr "Unidades"
-#: company/models.py:405
+#: company/models.py:554
msgid "Parameter units"
msgstr "Unidades do parâmetro"
-#: company/models.py:498
+#: company/models.py:647
msgid "Pack units must be compatible with the base part units"
msgstr ""
-#: company/models.py:504
+#: company/models.py:653
msgid "Pack units must be greater than zero"
msgstr ""
-#: company/models.py:520
+#: company/models.py:669
msgid "Linked manufacturer part must reference the same base part"
msgstr "Parte do fabricante vinculado deve fazer referência à mesma peça base"
-#: company/models.py:564 company/templates/company/company_base.html:82
-#: company/templates/company/supplier_part.html:130 order/models.py:382
-#: order/templates/order/order_base.html:140 part/bom.py:285 part/bom.py:313
-#: part/serializers.py:343 stock/templates/stock/item_base.html:225
+#: company/models.py:713 company/templates/company/company_base.html:82
+#: company/templates/company/supplier_part.html:130 order/models.py:395
+#: order/templates/order/order_base.html:136 part/bom.py:285 part/bom.py:313
+#: part/serializers.py:393 stock/templates/stock/item_base.html:225
#: templates/email/overdue_purchase_order.html:16
-#: templates/js/translated/company.js:339
-#: templates/js/translated/company.js:502
-#: templates/js/translated/company.js:1194 templates/js/translated/part.js:1741
+#: templates/js/translated/company.js:349
+#: templates/js/translated/company.js:509
+#: templates/js/translated/company.js:1615 templates/js/translated/part.js:1740
#: templates/js/translated/pricing.js:498
-#: templates/js/translated/purchase_order.js:1653
-#: templates/js/translated/table_filters.js:713
+#: templates/js/translated/purchase_order.js:1668
+#: templates/js/translated/table_filters.js:735
msgid "Supplier"
msgstr "Fornecedor"
-#: company/models.py:565
+#: company/models.py:714
msgid "Select supplier"
msgstr "Selecione o fornecedor"
-#: company/models.py:570 company/templates/company/supplier_part.html:140
-#: part/bom.py:286 part/bom.py:314 part/serializers.py:349
-#: templates/js/translated/company.js:338 templates/js/translated/part.js:1759
+#: company/models.py:719 company/templates/company/supplier_part.html:140
+#: part/bom.py:286 part/bom.py:314 part/serializers.py:399
+#: templates/js/translated/company.js:348 templates/js/translated/part.js:1758
#: templates/js/translated/pricing.js:510
-#: templates/js/translated/purchase_order.js:1813
-#: templates/js/translated/purchase_order.js:1996
+#: templates/js/translated/purchase_order.js:1828
+#: templates/js/translated/purchase_order.js:2006
msgid "SKU"
msgstr "Código (SKU)"
-#: company/models.py:571 part/serializers.py:349
+#: company/models.py:720 part/serializers.py:399
msgid "Supplier stock keeping unit"
msgstr "Unidade de reserva de estoque fornecedor"
-#: company/models.py:579
+#: company/models.py:728
msgid "Select manufacturer part"
msgstr "Selecionar peça do fabricante"
-#: company/models.py:585
+#: company/models.py:734
msgid "URL for external supplier part link"
msgstr "URL do link externo da peça do fabricante"
-#: company/models.py:591
+#: company/models.py:740
msgid "Supplier part description"
msgstr "Descrição da peça fornecedor"
-#: company/models.py:596 company/templates/company/supplier_part.html:188
-#: part/admin.py:279 part/models.py:3801 part/templates/part/upload_bom.html:59
+#: company/models.py:745 company/templates/company/supplier_part.html:188
+#: part/admin.py:279 part/models.py:3845 part/templates/part/upload_bom.html:59
#: report/templates/report/inventree_bill_of_materials_report.html:140
#: report/templates/report/inventree_po_report_base.html:32
#: report/templates/report/inventree_return_order_report_base.html:27
#: report/templates/report/inventree_so_report_base.html:32
-#: stock/serializers.py:418
+#: stock/serializers.py:484
msgid "Note"
msgstr "Anotação"
-#: company/models.py:600 part/models.py:1919
+#: company/models.py:749 part/models.py:1921
msgid "base cost"
msgstr "preço base"
-#: company/models.py:600 part/models.py:1919
+#: company/models.py:749 part/models.py:1921
msgid "Minimum charge (e.g. stocking fee)"
msgstr "Taxa mínima (ex.: taxa de estoque)"
-#: company/models.py:602 company/templates/company/supplier_part.html:161
+#: company/models.py:751 company/templates/company/supplier_part.html:161
#: stock/admin.py:119 stock/models.py:701
#: stock/templates/stock/item_base.html:241
-#: templates/js/translated/company.js:1256
-#: templates/js/translated/stock.js:2160
+#: templates/js/translated/company.js:1677
+#: templates/js/translated/stock.js:2317
msgid "Packaging"
msgstr "Embalagem"
-#: company/models.py:602
+#: company/models.py:751
msgid "Part packaging"
msgstr "Embalagem de peças"
-#: company/models.py:606 templates/js/translated/company.js:1261
-#: templates/js/translated/part.js:1793 templates/js/translated/part.js:1848
-#: templates/js/translated/purchase_order.js:300
-#: templates/js/translated/purchase_order.js:827
-#: templates/js/translated/purchase_order.js:1073
-#: templates/js/translated/purchase_order.js:2052
-#: templates/js/translated/purchase_order.js:2069
+#: company/models.py:755 templates/js/translated/company.js:1682
+#: templates/js/translated/part.js:1792 templates/js/translated/part.js:1847
+#: templates/js/translated/purchase_order.js:311
+#: templates/js/translated/purchase_order.js:842
+#: templates/js/translated/purchase_order.js:1088
+#: templates/js/translated/purchase_order.js:2062
+#: templates/js/translated/purchase_order.js:2079
msgid "Pack Quantity"
msgstr "Quantidade de embalagens"
-#: company/models.py:607
+#: company/models.py:756
msgid "Total quantity supplied in a single pack. Leave empty for single items."
msgstr ""
-#: company/models.py:624 part/models.py:1921
+#: company/models.py:773 part/models.py:1923
msgid "multiple"
msgstr "múltiplo"
-#: company/models.py:624
+#: company/models.py:773
msgid "Order multiple"
msgstr "Pedir múltiplos"
-#: company/models.py:632 company/templates/company/supplier_part.html:115
+#: company/models.py:781 company/templates/company/supplier_part.html:115
#: templates/email/build_order_required_stock.html:19
#: templates/email/low_stock_notification.html:17
-#: templates/js/translated/bom.js:1127 templates/js/translated/build.js:2136
-#: templates/js/translated/build.js:3045
-#: templates/js/translated/model_renderers.js:205
-#: templates/js/translated/part.js:670 templates/js/translated/part.js:672
-#: templates/js/translated/part.js:677
-#: templates/js/translated/table_filters.js:286
-#: templates/js/translated/table_filters.js:492
+#: templates/js/translated/bom.js:1145 templates/js/translated/build.js:2490
+#: templates/js/translated/index.js:118
+#: templates/js/translated/model_renderers.js:219
+#: templates/js/translated/part.js:669 templates/js/translated/part.js:671
+#: templates/js/translated/part.js:676
+#: templates/js/translated/table_filters.js:292
+#: templates/js/translated/table_filters.js:510
msgid "Available"
msgstr "Disponível"
-#: company/models.py:633
+#: company/models.py:782
msgid "Quantity available from supplier"
msgstr "Quantidade disponível do fornecedor"
-#: company/models.py:637
+#: company/models.py:786
msgid "Availability Updated"
msgstr "Disponibilidade Atualizada"
-#: company/models.py:638
+#: company/models.py:787
msgid "Date of last update of availability data"
msgstr "Data da última atualização da disponibilidade dos dados"
-#: company/serializers.py:99
+#: company/serializers.py:156
msgid "Default currency used for this supplier"
msgstr "Moeda padrão utilizada para este fornecedor"
#: company/templates/company/company_base.html:22
-#: templates/js/translated/purchase_order.js:228
+#: templates/js/translated/purchase_order.js:239
msgid "Create Purchase Order"
msgstr "Criar Pedido de compra"
@@ -3816,7 +3878,7 @@ msgid "Edit company information"
msgstr "Editar Informações da Empresa"
#: company/templates/company/company_base.html:34
-#: templates/js/translated/company.js:436
+#: templates/js/translated/company.js:443
msgid "Edit Company"
msgstr "Editar Empresa"
@@ -3856,17 +3918,17 @@ msgstr "Baixar imagem do URL"
msgid "Delete image"
msgstr "Excluir imagem"
-#: company/templates/company/company_base.html:87 order/models.py:779
-#: order/models.py:1738 order/templates/order/return_order_base.html:132
+#: company/templates/company/company_base.html:87 order/models.py:792
+#: order/models.py:1751 order/templates/order/return_order_base.html:132
#: order/templates/order/sales_order_base.html:145 stock/models.py:720
-#: stock/models.py:721 stock/serializers.py:825
+#: stock/models.py:721 stock/serializers.py:942
#: stock/templates/stock/item_base.html:401
#: templates/email/overdue_sales_order.html:16
-#: templates/js/translated/company.js:494
-#: templates/js/translated/return_order.js:284
-#: templates/js/translated/sales_order.js:772
-#: templates/js/translated/stock.js:2696
-#: templates/js/translated/table_filters.js:717
+#: templates/js/translated/company.js:501
+#: templates/js/translated/return_order.js:296
+#: templates/js/translated/sales_order.js:784
+#: templates/js/translated/stock.js:2827
+#: templates/js/translated/table_filters.js:739
msgid "Customer"
msgstr "Cliente"
@@ -3874,6 +3936,13 @@ msgstr "Cliente"
msgid "Uses default currency"
msgstr "Usar moeda padrão"
+#: company/templates/company/company_base.html:119 order/models.py:279
+#: order/templates/order/order_base.html:210
+#: order/templates/order/return_order_base.html:182
+#: order/templates/order/sales_order_base.html:222
+msgid "Address"
+msgstr "Endereço"
+
#: company/templates/company/company_base.html:126
msgid "Phone"
msgstr "Telefone"
@@ -3906,7 +3975,7 @@ msgstr "Baixar Imagem"
#: company/templates/company/detail.html:15
#: company/templates/company/manufacturer_part_sidebar.html:7
-#: templates/InvenTree/search.html:120 templates/js/translated/search.js:189
+#: templates/InvenTree/search.html:120 templates/js/translated/search.js:147
msgid "Supplier Parts"
msgstr "Peças do Fornecedor"
@@ -3916,129 +3985,121 @@ msgstr "Criar nova peça do fornecedor"
#: company/templates/company/detail.html:20
#: company/templates/company/manufacturer_part.html:123
-#: part/templates/part/detail.html:381
+#: part/templates/part/detail.html:356
msgid "New Supplier Part"
msgstr "Nova peça do fornecedor"
-#: company/templates/company/detail.html:37
-#: company/templates/company/detail.html:85
-#: part/templates/part/category.html:183
-msgid "Order parts"
-msgstr "Pedir peças"
-
-#: company/templates/company/detail.html:42
-#: company/templates/company/detail.html:90
-msgid "Delete parts"
-msgstr "Excluir peças"
-
-#: company/templates/company/detail.html:43
-#: company/templates/company/detail.html:91
-msgid "Delete Parts"
-msgstr "Excluir Peças"
-
-#: company/templates/company/detail.html:62 templates/InvenTree/search.html:105
-#: templates/js/translated/search.js:193
+#: company/templates/company/detail.html:41 templates/InvenTree/search.html:105
+#: templates/js/translated/search.js:151
msgid "Manufacturer Parts"
msgstr "Fabricantes de peças"
-#: company/templates/company/detail.html:66
+#: company/templates/company/detail.html:45
msgid "Create new manufacturer part"
msgstr "Criar novo fabricante de peça"
-#: company/templates/company/detail.html:67 part/templates/part/detail.html:411
+#: company/templates/company/detail.html:46 part/templates/part/detail.html:376
msgid "New Manufacturer Part"
msgstr "Nova peça do fabricante"
-#: company/templates/company/detail.html:108
+#: company/templates/company/detail.html:65
msgid "Supplier Stock"
msgstr "Estoque do Fornecedor"
-#: company/templates/company/detail.html:118
+#: company/templates/company/detail.html:75
#: company/templates/company/sidebar.html:12
#: company/templates/company/supplier_part_sidebar.html:7
#: 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:108 part/templates/part/part_sidebar.html:35
-#: templates/InvenTree/index.html:275 templates/InvenTree/search.html:199
+#: part/templates/part/detail.html:106 part/templates/part/part_sidebar.html:35
+#: templates/InvenTree/index.html:227 templates/InvenTree/search.html:199
#: templates/InvenTree/settings/sidebar.html:55
-#: templates/js/translated/search.js:247 templates/navbar.html:50
+#: templates/js/translated/search.js:205 templates/navbar.html:50
#: users/models.py:43
msgid "Purchase Orders"
msgstr "Pedidos de compra"
-#: company/templates/company/detail.html:122
+#: company/templates/company/detail.html:79
#: order/templates/order/purchase_orders.html:17
msgid "Create new purchase order"
msgstr "Criar novo pedido de compra"
-#: company/templates/company/detail.html:123
+#: company/templates/company/detail.html:80
#: order/templates/order/purchase_orders.html:18
msgid "New Purchase Order"
msgstr "Novo Pedido de Compra"
-#: company/templates/company/detail.html:146
+#: company/templates/company/detail.html:101
#: company/templates/company/sidebar.html:21
#: 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:131 part/templates/part/part_sidebar.html:39
-#: templates/InvenTree/index.html:307 templates/InvenTree/search.html:219
+#: part/templates/part/detail.html:127 part/templates/part/part_sidebar.html:39
+#: templates/InvenTree/index.html:259 templates/InvenTree/search.html:219
#: templates/InvenTree/settings/sidebar.html:57
-#: templates/js/translated/search.js:261 templates/navbar.html:62
+#: templates/js/translated/search.js:219 templates/navbar.html:62
#: users/models.py:44
msgid "Sales Orders"
msgstr "Pedidos de vendas"
-#: company/templates/company/detail.html:150
+#: company/templates/company/detail.html:105
#: order/templates/order/sales_orders.html:20
msgid "Create new sales order"
msgstr "Criar novo pedido de venda"
-#: company/templates/company/detail.html:151
+#: company/templates/company/detail.html:106
#: order/templates/order/sales_orders.html:21
msgid "New Sales Order"
msgstr "Novo Pedido de Venda"
-#: company/templates/company/detail.html:173
-#: templates/js/translated/build.js:1976
+#: company/templates/company/detail.html:126
msgid "Assigned Stock"
msgstr "Estoque Atribuído"
-#: company/templates/company/detail.html:191
+#: company/templates/company/detail.html:142
#: company/templates/company/sidebar.html:29
#: order/templates/order/return_order_base.html:13
#: order/templates/order/return_orders.html:8
#: order/templates/order/return_orders.html:15
#: templates/InvenTree/settings/sidebar.html:59
-#: templates/js/translated/search.js:274 templates/navbar.html:65
+#: templates/js/translated/search.js:232 templates/navbar.html:65
#: users/models.py:45
msgid "Return Orders"
msgstr "Pedidos de Devolução"
-#: company/templates/company/detail.html:195
+#: company/templates/company/detail.html:146
#: order/templates/order/return_orders.html:20
msgid "Create new return order"
msgstr "Criar novo pedido de devolução"
-#: company/templates/company/detail.html:196
+#: company/templates/company/detail.html:147
#: order/templates/order/return_orders.html:21
msgid "New Return Order"
msgstr "Novo Pedido de Devolução"
-#: company/templates/company/detail.html:221
+#: company/templates/company/detail.html:168
msgid "Company Notes"
msgstr "Notas da Empresa"
-#: company/templates/company/detail.html:236
+#: company/templates/company/detail.html:183
msgid "Company Contacts"
msgstr "Contato da Empresa"
-#: company/templates/company/detail.html:240
-#: company/templates/company/detail.html:241
+#: company/templates/company/detail.html:187
+#: company/templates/company/detail.html:188
msgid "Add Contact"
msgstr "Adicionar Contato"
+#: company/templates/company/detail.html:206
+msgid "Company addresses"
+msgstr ""
+
+#: company/templates/company/detail.html:210
+#: company/templates/company/detail.html:211
+msgid "Add Address"
+msgstr ""
+
#: company/templates/company/index.html:8
msgid "Supplier List"
msgstr "Lista de fornecedores"
@@ -4050,17 +4111,17 @@ msgstr "Fabricantes"
#: company/templates/company/manufacturer_part.html:35
#: company/templates/company/supplier_part.html:228
-#: part/templates/part/detail.html:111 part/templates/part/part_base.html:85
+#: part/templates/part/detail.html:109 part/templates/part/part_base.html:85
msgid "Order part"
msgstr "Pedir peça"
#: company/templates/company/manufacturer_part.html:39
-#: templates/js/translated/company.js:1001
+#: templates/js/translated/company.js:1374
msgid "Edit manufacturer part"
msgstr "Editar peça do fabricante"
#: company/templates/company/manufacturer_part.html:43
-#: templates/js/translated/company.js:1002
+#: templates/js/translated/company.js:1375
msgid "Delete manufacturer part"
msgstr "Excluir peça do fabricante"
@@ -4080,40 +4141,22 @@ msgstr "Nenhuma informação do fabricante disponível"
msgid "Suppliers"
msgstr "Fornecedores"
-#: company/templates/company/manufacturer_part.html:136
-#: part/templates/part/detail.html:392
-msgid "Delete supplier parts"
-msgstr "Excluir peças do fornecedor"
-
-#: company/templates/company/manufacturer_part.html:136
-#: company/templates/company/manufacturer_part.html:183
-#: part/templates/part/detail.html:393 part/templates/part/detail.html:423
-#: templates/js/translated/forms.js:506 templates/js/translated/helpers.js:105
-#: templates/js/translated/part.js:370 templates/js/translated/pricing.js:629
-#: templates/js/translated/stock.js:216 users/models.py:247
-msgid "Delete"
-msgstr "Excluir"
-
-#: company/templates/company/manufacturer_part.html:166
+#: company/templates/company/manufacturer_part.html:156
#: company/templates/company/manufacturer_part_sidebar.html:5
#: part/templates/part/category_sidebar.html:20
-#: part/templates/part/detail.html:208 part/templates/part/part_sidebar.html:8
+#: part/templates/part/detail.html:195 part/templates/part/part_sidebar.html:8
msgid "Parameters"
msgstr "Parâmetros"
-#: company/templates/company/manufacturer_part.html:170
-#: part/templates/part/detail.html:213
+#: company/templates/company/manufacturer_part.html:160
+#: part/templates/part/detail.html:200
#: templates/InvenTree/settings/category.html:12
#: templates/InvenTree/settings/part_parameters.html:12
msgid "New Parameter"
msgstr "Novo parâmetro"
-#: company/templates/company/manufacturer_part.html:183
-msgid "Delete parameters"
-msgstr "Excluir parâmetros"
-
-#: company/templates/company/manufacturer_part.html:226
-#: templates/js/translated/part.js:1396
+#: company/templates/company/manufacturer_part.html:206
+#: templates/js/translated/part.js:1395
msgid "Add Parameter"
msgstr "Adicionar parâmetro"
@@ -4137,23 +4180,28 @@ msgstr "Itens de Estoque atribuídos"
msgid "Contacts"
msgstr "Contatos"
+#: company/templates/company/sidebar.html:35
+msgid "Addresses"
+msgstr ""
+
#: company/templates/company/supplier_part.html:7
#: company/templates/company/supplier_part.html:24 stock/models.py:684
#: stock/templates/stock/item_base.html:234
-#: templates/js/translated/company.js:1210
-#: templates/js/translated/purchase_order.js:747
-#: templates/js/translated/stock.js:2016
+#: templates/js/translated/company.js:1631
+#: templates/js/translated/purchase_order.js:758
+#: templates/js/translated/stock.js:2173
msgid "Supplier Part"
msgstr "Fornecedor da Peça"
#: company/templates/company/supplier_part.html:51
+#: templates/js/translated/company.js:1557
msgid "Supplier part actions"
msgstr "Ações de peças do fornecedor"
#: company/templates/company/supplier_part.html:56
#: company/templates/company/supplier_part.html:57
#: company/templates/company/supplier_part.html:229
-#: part/templates/part/detail.html:112
+#: part/templates/part/detail.html:110
msgid "Order Part"
msgstr "Pedir Peça"
@@ -4164,13 +4212,13 @@ msgstr "Atualizar disponibilidade"
#: company/templates/company/supplier_part.html:64
#: company/templates/company/supplier_part.html:65
-#: templates/js/translated/company.js:283
+#: templates/js/translated/company.js:293
msgid "Edit Supplier Part"
msgstr "Editar Fornecedor da Peça"
#: company/templates/company/supplier_part.html:69
#: company/templates/company/supplier_part.html:70
-#: templates/js/translated/company.js:258
+#: templates/js/translated/company.js:268
msgid "Duplicate Supplier Part"
msgstr "Duplicar Peça do Fornecedor"
@@ -4197,7 +4245,7 @@ msgstr "Criar novo item de estoque"
#: company/templates/company/supplier_part.html:211
#: part/templates/part/detail.html:25 stock/templates/stock/location.html:198
-#: templates/js/translated/stock.js:504
+#: templates/js/translated/stock.js:503
msgid "New Stock Item"
msgstr "Novo item de estoque"
@@ -4205,37 +4253,37 @@ msgstr "Novo item de estoque"
msgid "Supplier Part Orders"
msgstr "Pedidos de peças do fornecedor"
-#: company/templates/company/supplier_part.html:249
+#: company/templates/company/supplier_part.html:247
msgid "Pricing Information"
msgstr "Informações de Preço"
-#: company/templates/company/supplier_part.html:254
-#: templates/js/translated/company.js:387
+#: company/templates/company/supplier_part.html:252
+#: templates/js/translated/company.js:397
#: templates/js/translated/pricing.js:684
msgid "Add Price Break"
msgstr "Adicionar parcela de preço"
-#: company/templates/company/supplier_part.html:281
+#: company/templates/company/supplier_part.html:277
msgid "Supplier Part QR Code"
msgstr "QR Code da Peça do Fornecedor"
-#: company/templates/company/supplier_part.html:292
+#: company/templates/company/supplier_part.html:288
msgid "Link Barcode to Supplier Part"
msgstr "Vincular Código de Barras à Parte do Fornecedor"
-#: company/templates/company/supplier_part.html:365
+#: company/templates/company/supplier_part.html:361
msgid "Update Part Availability"
msgstr "Atualizar disponibilidade de peças"
#: company/templates/company/supplier_part_sidebar.html:5 part/tasks.py:293
-#: part/templates/part/category.html:199
+#: part/templates/part/category.html:182
#: part/templates/part/category_sidebar.html:17 stock/admin.py:47
-#: stock/templates/stock/location.html:168
+#: stock/serializers.py:662 stock/templates/stock/location.html:168
#: stock/templates/stock/location.html:182
#: stock/templates/stock/location.html:194
#: stock/templates/stock/location_sidebar.html:7
-#: templates/InvenTree/search.html:155 templates/js/translated/part.js:1034
-#: templates/js/translated/search.js:214 templates/js/translated/stock.js:2514
+#: templates/InvenTree/search.html:155 templates/js/translated/part.js:1033
+#: templates/js/translated/search.js:172 templates/js/translated/stock.js:2645
#: users/models.py:41
msgid "Stock Items"
msgstr "Itens de Estoque"
@@ -4261,7 +4309,7 @@ msgstr "Clientes"
msgid "New Customer"
msgstr "Novo Cliente"
-#: company/views.py:52 templates/js/translated/search.js:234
+#: company/views.py:52 templates/js/translated/search.js:192
msgid "Companies"
msgstr "Empresas"
@@ -4269,72 +4317,76 @@ msgstr "Empresas"
msgid "New Company"
msgstr "Nova Empresa"
-#: label/models.py:104
+#: label/models.py:112
msgid "Label name"
msgstr "Nome da etiqueta"
-#: label/models.py:111
+#: label/models.py:119
msgid "Label description"
msgstr "Descrição da etiqueta"
-#: label/models.py:118
+#: label/models.py:126
msgid "Label"
msgstr "Etiqueta"
-#: label/models.py:119
+#: label/models.py:127
msgid "Label template file"
msgstr "Arquivo de modelo de etiqueta"
-#: label/models.py:125 report/models.py:273
+#: label/models.py:133 report/models.py:273
msgid "Enabled"
msgstr "Habilitado"
-#: label/models.py:126
+#: label/models.py:134
msgid "Label template is enabled"
msgstr "Modelo de Etiqueta Habilitado"
-#: label/models.py:131
+#: label/models.py:139
msgid "Width [mm]"
msgstr "Largura [mm]"
-#: label/models.py:132
+#: label/models.py:140
msgid "Label width, specified in mm"
msgstr "Largura da etiqueta, em mm"
-#: label/models.py:138
+#: label/models.py:146
msgid "Height [mm]"
msgstr "Altura [mm]"
-#: label/models.py:139
+#: label/models.py:147
msgid "Label height, specified in mm"
msgstr "Altura da Etiqueta, em mm"
-#: label/models.py:145 report/models.py:266
+#: label/models.py:153 report/models.py:266
msgid "Filename Pattern"
msgstr "Padrão de Nome de Arquivo"
-#: label/models.py:146
+#: label/models.py:154
msgid "Pattern for generating label filenames"
msgstr "Padrão para gerar nomes do arquivo das etiquetas"
-#: label/models.py:242
+#: label/models.py:250
msgid "Query filters (comma-separated list of key=value pairs),"
msgstr "Filtros de consulta (lista de valores separados por vírgula),"
-#: label/models.py:243 label/models.py:284 label/models.py:312
-#: report/models.py:294 report/models.py:452 report/models.py:490
-#: report/models.py:528
+#: label/models.py:251 label/models.py:292 label/models.py:320
+#: label/models.py:356 report/models.py:294 report/models.py:454
+#: report/models.py:492 report/models.py:530
msgid "Filters"
msgstr "Filtros"
-#: label/models.py:283
+#: label/models.py:291
msgid "Query filters (comma-separated list of key=value pairs"
msgstr "Filtros de consulta (lista de valores separados por vírgula"
-#: label/models.py:311
+#: label/models.py:319
msgid "Part query filters (comma-separated value of key=value pairs)"
msgstr "Filtros de consulta de peça (lista de valores separados por vírgula)"
+#: label/models.py:355
+msgid "Query filters (comma-separated list of key=value pairs)"
+msgstr ""
+
#: label/templates/label/part/part_label.html:31
#: label/templates/label/stockitem/qr.html:21
#: label/templates/label/stocklocation/qr.html:21
@@ -4352,8 +4404,8 @@ msgstr "Código QR"
#: report/templates/report/inventree_po_report_base.html:31
#: report/templates/report/inventree_so_report_base.html:31
#: templates/js/translated/order.js:327
-#: templates/js/translated/purchase_order.js:2093
-#: templates/js/translated/sales_order.js:1827
+#: templates/js/translated/purchase_order.js:2103
+#: templates/js/translated/sales_order.js:1839
msgid "Total Price"
msgstr "Preço Total"
@@ -4361,30 +4413,30 @@ msgstr "Preço Total"
msgid "No matching purchase order found"
msgstr "Nenhum pedido de compra correspondente encontrado"
-#: order/api.py:1452 order/models.py:1178 order/models.py:1262
+#: order/api.py:1452 order/models.py:1191 order/models.py:1275
#: order/templates/order/order_base.html:9
#: order/templates/order/order_base.html:18
#: report/templates/report/inventree_po_report_base.html:14
#: stock/templates/stock/item_base.html:177
#: templates/email/overdue_purchase_order.html:15
-#: templates/js/translated/part.js:1718 templates/js/translated/pricing.js:790
-#: templates/js/translated/purchase_order.js:154
-#: templates/js/translated/purchase_order.js:748
-#: templates/js/translated/purchase_order.js:1637
-#: templates/js/translated/stock.js:1996 templates/js/translated/stock.js:2644
+#: templates/js/translated/part.js:1717 templates/js/translated/pricing.js:790
+#: templates/js/translated/purchase_order.js:165
+#: templates/js/translated/purchase_order.js:759
+#: templates/js/translated/purchase_order.js:1652
+#: templates/js/translated/stock.js:2153 templates/js/translated/stock.js:2775
msgid "Purchase Order"
msgstr "Pedido de Compra"
-#: order/api.py:1456 order/models.py:1909 order/models.py:1955
+#: order/api.py:1456 order/models.py:1922 order/models.py:1968
#: order/templates/order/return_order_base.html:9
#: order/templates/order/return_order_base.html:28
#: report/templates/report/inventree_return_order_report_base.html:13
-#: templates/js/translated/return_order.js:269
-#: templates/js/translated/stock.js:2678
+#: templates/js/translated/return_order.js:281
+#: templates/js/translated/stock.js:2809
msgid "Return Order"
msgstr "Devolver pedido"
-#: order/api.py:1458 templates/js/translated/sales_order.js:1030
+#: order/api.py:1458 templates/js/translated/sales_order.js:1042
msgid "Unknown"
msgstr "Desconhecido"
@@ -4392,11 +4444,11 @@ msgstr "Desconhecido"
msgid "Total price for this order"
msgstr "Preço total deste pedido"
-#: order/models.py:79 order/serializers.py:49
+#: order/models.py:79 order/serializers.py:50
msgid "Order Currency"
msgstr "Moeda do pedido"
-#: order/models.py:81 order/serializers.py:50
+#: order/models.py:81 order/serializers.py:51
msgid "Currency for this order (leave blank to use company default)"
msgstr "Moeda para este pedido (deixe em branco para usar o padrão da empresa)"
@@ -4408,492 +4460,496 @@ msgstr "O contato não corresponde à empresa selecionada"
msgid "Order description (optional)"
msgstr "Descrição do pedido (opcional)"
-#: order/models.py:234
+#: order/models.py:237
msgid "Select project code for this order"
msgstr "Selecione o código do projeto para este pedido"
-#: order/models.py:236 order/models.py:1094 order/models.py:1454
+#: order/models.py:240 order/models.py:1107 order/models.py:1467
msgid "Link to external page"
msgstr "Link para página externa"
-#: order/models.py:241
+#: order/models.py:245
msgid "Expected date for order delivery. Order will be overdue after this date."
msgstr "Data esperada para entrega do pedido. A ordem estará atrasada após esta data."
-#: order/models.py:250
+#: order/models.py:254
msgid "Created By"
msgstr "Criado por"
-#: order/models.py:257
+#: order/models.py:261
msgid "User or group responsible for this order"
msgstr "Usuário ou grupo responsável para este pedido"
-#: order/models.py:267
+#: order/models.py:271
msgid "Point of contact for this order"
msgstr "Ponto de contato para este pedido"
-#: order/models.py:360 order/models.py:766
+#: order/models.py:280
+msgid "Company address for this order"
+msgstr ""
+
+#: order/models.py:373 order/models.py:779
msgid "Order reference"
msgstr "Referência do pedido"
-#: order/models.py:368 order/models.py:791
+#: order/models.py:381 order/models.py:804
msgid "Purchase order status"
msgstr "Situação do pedido de compra"
-#: order/models.py:383
+#: order/models.py:396
msgid "Company from which the items are being ordered"
msgstr "Empresa da qual os itens estão sendo encomendados"
-#: order/models.py:391 order/templates/order/order_base.html:152
-#: templates/js/translated/purchase_order.js:1662
+#: order/models.py:404 order/templates/order/order_base.html:148
+#: templates/js/translated/purchase_order.js:1677
msgid "Supplier Reference"
msgstr "Referencia do fornecedor"
-#: order/models.py:391
+#: order/models.py:404
msgid "Supplier order reference code"
msgstr "Código de referência do pedido fornecedor"
-#: order/models.py:398
+#: order/models.py:411
msgid "received by"
msgstr "recebido por"
-#: order/models.py:403 order/models.py:1761
+#: order/models.py:416 order/models.py:1774
msgid "Issue Date"
msgstr "Data de emissão"
-#: order/models.py:404 order/models.py:1762
+#: order/models.py:417 order/models.py:1775
msgid "Date order was issued"
msgstr "Dia que o pedido foi feito"
-#: order/models.py:410 order/models.py:1768
+#: order/models.py:423 order/models.py:1781
msgid "Date order was completed"
msgstr "Dia que o pedido foi concluído"
-#: order/models.py:445
+#: order/models.py:458
msgid "Part supplier must match PO supplier"
msgstr "Fornecedor de peça deve corresponder a fornecedor da OC"
-#: order/models.py:606
+#: order/models.py:619
msgid "Quantity must be a positive number"
msgstr "Quantidade deve ser um número positivo"
-#: order/models.py:780
+#: order/models.py:793
msgid "Company to which the items are being sold"
msgstr "Empresa para qual os itens foi vendidos"
-#: order/models.py:799 order/models.py:1755
+#: order/models.py:812 order/models.py:1768
msgid "Customer Reference "
msgstr "Referência do Cliente "
-#: order/models.py:799 order/models.py:1756
+#: order/models.py:812 order/models.py:1769
msgid "Customer order reference code"
msgstr "Código de Referência do pedido do cliente"
-#: order/models.py:801 order/models.py:1408
-#: templates/js/translated/sales_order.js:831
-#: templates/js/translated/sales_order.js:1012
+#: order/models.py:814 order/models.py:1421
+#: templates/js/translated/sales_order.js:843
+#: templates/js/translated/sales_order.js:1024
msgid "Shipment Date"
msgstr "Data de Envio"
-#: order/models.py:808
+#: order/models.py:821
msgid "shipped by"
msgstr "enviado por"
-#: order/models.py:857
+#: order/models.py:870
msgid "Order cannot be completed as no parts have been assigned"
msgstr "O pedido não pode ser concluído, pois nenhuma parte foi atribuída"
-#: order/models.py:861
+#: order/models.py:874
msgid "Only an open order can be marked as complete"
msgstr "Apenas um pedido aberto pode ser marcado como completo"
-#: order/models.py:864 templates/js/translated/sales_order.js:491
+#: order/models.py:877 templates/js/translated/sales_order.js:503
msgid "Order cannot be completed as there are incomplete shipments"
msgstr "Pedido não pode ser concluído, pois, há envios incompletos"
-#: order/models.py:867
+#: order/models.py:880
msgid "Order cannot be completed as there are incomplete line items"
msgstr "Pedido não pode ser concluído, pois, há itens na linha incompletos"
-#: order/models.py:1074
+#: order/models.py:1087
msgid "Item quantity"
msgstr "Quantidade do item"
-#: order/models.py:1087
+#: order/models.py:1100
msgid "Line item reference"
msgstr "Referência do Item em Linha"
-#: order/models.py:1089
+#: order/models.py:1102
msgid "Line item notes"
msgstr "Observações do Item de Linha"
-#: order/models.py:1100
+#: order/models.py:1113
msgid "Target date for this line item (leave blank to use the target date from the order)"
msgstr "Data alvo para este item de linha (deixe em branco para usar a data alvo a partir da ordem)"
-#: order/models.py:1118
+#: order/models.py:1131
msgid "Line item description (optional)"
msgstr ""
-#: order/models.py:1123
+#: order/models.py:1136
msgid "Context"
msgstr "Contexto"
-#: order/models.py:1124
+#: order/models.py:1137
msgid "Additional context for this line"
msgstr "Contexto adicional para esta linha"
-#: order/models.py:1133
+#: order/models.py:1146
msgid "Unit price"
msgstr "Preço Unitário"
-#: order/models.py:1163
+#: order/models.py:1176
msgid "Supplier part must match supplier"
msgstr "A peça do fornecedor deve corresponder ao fornecedor"
-#: order/models.py:1171
+#: order/models.py:1184
msgid "deleted"
msgstr "excluído"
-#: order/models.py:1177 order/models.py:1262 order/models.py:1303
-#: order/models.py:1402 order/models.py:1551 order/models.py:1908
-#: order/models.py:1955 templates/js/translated/sales_order.js:1474
+#: order/models.py:1190 order/models.py:1275 order/models.py:1316
+#: order/models.py:1415 order/models.py:1564 order/models.py:1921
+#: order/models.py:1968 templates/js/translated/sales_order.js:1486
msgid "Order"
msgstr "Pedido"
-#: order/models.py:1196
+#: order/models.py:1209
msgid "Supplier part"
msgstr "Fornecedor da Peça"
-#: order/models.py:1203 order/templates/order/order_base.html:200
-#: templates/js/translated/part.js:1841 templates/js/translated/part.js:1872
-#: templates/js/translated/purchase_order.js:1276
-#: templates/js/translated/purchase_order.js:2137
-#: templates/js/translated/return_order.js:748
-#: templates/js/translated/table_filters.js:90
-#: templates/js/translated/table_filters.js:515
+#: order/models.py:1216 order/templates/order/order_base.html:196
+#: templates/js/translated/part.js:1840 templates/js/translated/part.js:1871
+#: templates/js/translated/purchase_order.js:1291
+#: templates/js/translated/purchase_order.js:2147
+#: templates/js/translated/return_order.js:760
+#: templates/js/translated/table_filters.js:96
+#: templates/js/translated/table_filters.js:537
msgid "Received"
msgstr "Recebido"
-#: order/models.py:1204
+#: order/models.py:1217
msgid "Number of items received"
msgstr "Número de itens recebidos"
-#: order/models.py:1211 stock/models.py:823 stock/serializers.py:252
+#: order/models.py:1224 stock/models.py:823 stock/serializers.py:314
#: stock/templates/stock/item_base.html:184
-#: templates/js/translated/stock.js:2047
+#: templates/js/translated/stock.js:2204
msgid "Purchase Price"
msgstr "Preço de Compra"
-#: order/models.py:1212
+#: order/models.py:1225
msgid "Unit purchase price"
msgstr "Preço unitário de compra"
-#: order/models.py:1225
+#: order/models.py:1238
msgid "Where does the Purchaser want this item to be stored?"
msgstr "Onde o Comprador quer que este item seja armazenado?"
-#: order/models.py:1291
+#: order/models.py:1304
msgid "Virtual part cannot be assigned to a sales order"
msgstr "Peça virtual não pode ser atribuída a um pedido de venda"
-#: order/models.py:1296
+#: order/models.py:1309
msgid "Only salable parts can be assigned to a sales order"
msgstr "Apenas peças vendáveis podem ser atribuídas a um pedido de venda"
-#: order/models.py:1322 part/templates/part/part_pricing.html:107
+#: order/models.py:1335 part/templates/part/part_pricing.html:107
#: part/templates/part/prices.html:128 templates/js/translated/pricing.js:943
msgid "Sale Price"
msgstr "Preço de Venda"
-#: order/models.py:1323
+#: order/models.py:1336
msgid "Unit sale price"
msgstr "Preço de venda unitário"
-#: order/models.py:1333
+#: order/models.py:1346
msgid "Shipped quantity"
msgstr "Quantidade enviada"
-#: order/models.py:1409
+#: order/models.py:1422
msgid "Date of shipment"
msgstr "Data do envio"
-#: order/models.py:1414 templates/js/translated/sales_order.js:1024
+#: order/models.py:1427 templates/js/translated/sales_order.js:1036
msgid "Delivery Date"
msgstr ""
-#: order/models.py:1415
+#: order/models.py:1428
msgid "Date of delivery of shipment"
msgstr ""
-#: order/models.py:1422
+#: order/models.py:1435
msgid "Checked By"
msgstr "Verificado por"
-#: order/models.py:1423
+#: order/models.py:1436
msgid "User who checked this shipment"
msgstr "Usuário que verificou esta remessa"
-#: order/models.py:1430 order/models.py:1627 order/serializers.py:1248
-#: order/serializers.py:1376 templates/js/translated/model_renderers.js:415
+#: order/models.py:1443 order/models.py:1640 order/serializers.py:1254
+#: order/serializers.py:1382 templates/js/translated/model_renderers.js:429
msgid "Shipment"
msgstr "Remessa"
-#: order/models.py:1431
+#: order/models.py:1444
msgid "Shipment number"
msgstr "Número do Envio"
-#: order/models.py:1439
+#: order/models.py:1452
msgid "Tracking Number"
msgstr "Número de Rastreamento"
-#: order/models.py:1440
+#: order/models.py:1453
msgid "Shipment tracking information"
msgstr "Informação de rastreamento da remessa"
-#: order/models.py:1447
+#: order/models.py:1460
msgid "Invoice Number"
msgstr "Número da Fatura"
-#: order/models.py:1448
+#: order/models.py:1461
msgid "Reference number for associated invoice"
msgstr "Número de referência para fatura associada"
-#: order/models.py:1470
+#: order/models.py:1483
msgid "Shipment has already been sent"
msgstr "O pedido já foi enviado"
-#: order/models.py:1473
+#: order/models.py:1486
msgid "Shipment has no allocated stock items"
msgstr "Remessa não foi alocada nos itens de estoque"
-#: order/models.py:1586 order/models.py:1588
+#: order/models.py:1599 order/models.py:1601
msgid "Stock item has not been assigned"
msgstr "O item do estoque não foi atribuído"
-#: order/models.py:1592
+#: order/models.py:1605
msgid "Cannot allocate stock item to a line with a different part"
msgstr "Não é possível alocar o item de estoque para uma linha de uma peça diferente"
-#: order/models.py:1594
+#: order/models.py:1607
msgid "Cannot allocate stock to a line without a part"
msgstr "Não é possível alocar uma linha sem uma peça"
-#: order/models.py:1597
+#: order/models.py:1610
msgid "Allocation quantity cannot exceed stock quantity"
msgstr "A quantidade de alocação não pode exceder a quantidade em estoque"
-#: order/models.py:1607 order/serializers.py:1110
+#: order/models.py:1620 order/serializers.py:1116
msgid "Quantity must be 1 for serialized stock item"
msgstr "Quantidade deve ser 1 para item de estoque serializado"
-#: order/models.py:1610
+#: order/models.py:1623
msgid "Sales order does not match shipment"
msgstr "Pedidos de venda não coincidem com a remessa"
-#: order/models.py:1611
+#: order/models.py:1624
msgid "Shipment does not match sales order"
msgstr "Remessa não coincide com pedido de venda"
-#: order/models.py:1619
+#: order/models.py:1632
msgid "Line"
msgstr "Linha"
-#: order/models.py:1628
+#: order/models.py:1641
msgid "Sales order shipment reference"
msgstr "Referência de remessa do pedido de venda"
-#: order/models.py:1641 order/models.py:1916
-#: templates/js/translated/return_order.js:706
+#: order/models.py:1654 order/models.py:1929
+#: templates/js/translated/return_order.js:718
msgid "Item"
msgstr "Item"
-#: order/models.py:1642
+#: order/models.py:1655
msgid "Select stock item to allocate"
msgstr "Selecione o item de estoque para alocar"
-#: order/models.py:1645
+#: order/models.py:1658
msgid "Enter stock allocation quantity"
msgstr "Insira a quantidade de atribuição de estoque"
-#: order/models.py:1725
+#: order/models.py:1738
msgid "Return Order reference"
msgstr "Referência de Pedidos de Devolução"
-#: order/models.py:1739
+#: order/models.py:1752
msgid "Company from which items are being returned"
msgstr "Empresa da qual os itens estão sendo retornados"
-#: order/models.py:1750
+#: order/models.py:1763
msgid "Return order status"
msgstr "Estado do pedido de retorno"
-#: order/models.py:1901
+#: order/models.py:1914
msgid "Only serialized items can be assigned to a Return Order"
msgstr "Somente itens da série podem ser devolvidos"
-#: order/models.py:1917
+#: order/models.py:1930
msgid "Select item to return from customer"
msgstr "Selecione o item a ser devolvido pelo cliente"
-#: order/models.py:1922
+#: order/models.py:1935
msgid "Received Date"
msgstr "Data de Recebimento"
-#: order/models.py:1923
+#: order/models.py:1936
msgid "The date this this return item was received"
msgstr "Data que o pedido a ser devolvido foi recebido"
-#: order/models.py:1934 templates/js/translated/return_order.js:717
-#: templates/js/translated/table_filters.js:93
+#: order/models.py:1947 templates/js/translated/return_order.js:729
+#: templates/js/translated/table_filters.js:99
msgid "Outcome"
msgstr "Despesa/gastos"
-#: order/models.py:1934
+#: order/models.py:1947
msgid "Outcome for this line item"
msgstr "Gastos com esta linha de itens"
-#: order/models.py:1940
+#: order/models.py:1953
msgid "Cost associated with return or repair for this line item"
msgstr "Gastos para reparar e/ou devolver esta linha de itens"
-#: order/serializers.py:247
+#: order/serializers.py:253
msgid "Order cannot be cancelled"
msgstr "Pedido não pode ser cancelado"
-#: order/serializers.py:262 order/serializers.py:1128
+#: order/serializers.py:268 order/serializers.py:1134
msgid "Allow order to be closed with incomplete line items"
msgstr "Permitir que o pedido seja fechado com itens de linha incompletos"
-#: order/serializers.py:273 order/serializers.py:1139
+#: order/serializers.py:279 order/serializers.py:1145
msgid "Order has incomplete line items"
msgstr "O pedido tem itens da linha incompletos"
-#: order/serializers.py:386
+#: order/serializers.py:392
msgid "Order is not open"
msgstr "O pedido não está aberto"
-#: order/serializers.py:404
+#: order/serializers.py:410
msgid "Purchase price currency"
msgstr "Moeda de preço de compra"
-#: order/serializers.py:422
+#: order/serializers.py:428
msgid "Supplier part must be specified"
msgstr "A peça do fornecedor deve ser especificada"
-#: order/serializers.py:427
+#: order/serializers.py:433
msgid "Purchase order must be specified"
msgstr "O pedido de compra deve ser especificado"
-#: order/serializers.py:433
+#: order/serializers.py:439
msgid "Supplier must match purchase order"
msgstr "O fornecedor deve corresponder o pedido de compra"
-#: order/serializers.py:434
+#: order/serializers.py:440
msgid "Purchase order must match supplier"
msgstr "Pedido de compra deve corresponder ao fornecedor"
-#: order/serializers.py:472 order/serializers.py:1216
+#: order/serializers.py:478 order/serializers.py:1222
msgid "Line Item"
msgstr "Itens de linha"
-#: order/serializers.py:478
+#: order/serializers.py:484
msgid "Line item does not match purchase order"
msgstr "O item de linha não corresponde ao pedido de compra"
-#: order/serializers.py:488 order/serializers.py:607 order/serializers.py:1589
+#: order/serializers.py:494 order/serializers.py:613 order/serializers.py:1595
msgid "Select destination location for received items"
msgstr "Selecione o local de destino para os itens recebidos"
-#: order/serializers.py:507 templates/js/translated/purchase_order.js:1100
+#: order/serializers.py:513 templates/js/translated/purchase_order.js:1115
msgid "Enter batch code for incoming stock items"
msgstr "Digite o código do lote para itens de estoque recebidos"
-#: order/serializers.py:515 templates/js/translated/purchase_order.js:1124
+#: order/serializers.py:521 templates/js/translated/purchase_order.js:1139
msgid "Enter serial numbers for incoming stock items"
msgstr "Digite o número de série para itens de estoque recebidos"
-#: order/serializers.py:528 templates/js/translated/barcode.js:52
+#: order/serializers.py:534 templates/js/translated/barcode.js:52
msgid "Barcode"
msgstr "Código de barras"
-#: order/serializers.py:529
+#: order/serializers.py:535
msgid "Scanned barcode"
msgstr "Código de barras lido"
-#: order/serializers.py:545
+#: order/serializers.py:551
msgid "Barcode is already in use"
msgstr "Código de barras já em uso"
-#: order/serializers.py:569
+#: order/serializers.py:575
msgid "An integer quantity must be provided for trackable parts"
msgstr "Quantidade inteira deve ser fornecida para peças rastreáveis"
-#: order/serializers.py:623 order/serializers.py:1604
+#: order/serializers.py:629 order/serializers.py:1610
msgid "Line items must be provided"
msgstr "Itens de linha deve ser providenciados"
-#: order/serializers.py:640
+#: order/serializers.py:646
msgid "Destination location must be specified"
msgstr "Loca de destino deve ser especificado"
-#: order/serializers.py:651
+#: order/serializers.py:657
msgid "Supplied barcode values must be unique"
msgstr "Código de barras fornecido deve ser único"
-#: order/serializers.py:950
+#: order/serializers.py:956
msgid "Sale price currency"
msgstr "Moeda de preço de venda"
-#: order/serializers.py:1007
+#: order/serializers.py:1013
msgid "No shipment details provided"
msgstr "Nenhum detalhe da remessa fornecido"
-#: order/serializers.py:1071 order/serializers.py:1225
+#: order/serializers.py:1077 order/serializers.py:1231
msgid "Line item is not associated with this order"
msgstr "Item de linha não está associado a este pedido"
-#: order/serializers.py:1093
+#: order/serializers.py:1099
msgid "Quantity must be positive"
msgstr "Quantidade deve ser positiva"
-#: order/serializers.py:1238
+#: order/serializers.py:1244
msgid "Enter serial numbers to allocate"
msgstr "Digite números de série para alocar"
-#: order/serializers.py:1260 order/serializers.py:1384
+#: order/serializers.py:1266 order/serializers.py:1390
msgid "Shipment has already been shipped"
msgstr "O pedido já foi enviado"
-#: order/serializers.py:1263 order/serializers.py:1387
+#: order/serializers.py:1269 order/serializers.py:1393
msgid "Shipment is not associated with this order"
msgstr "O envio não está associado a este pedido"
-#: order/serializers.py:1317
+#: order/serializers.py:1323
msgid "No match found for the following serial numbers"
msgstr "Nenhuma correspondência encontrada para os seguintes números de série"
-#: order/serializers.py:1327
+#: order/serializers.py:1333
msgid "The following serial numbers are already allocated"
msgstr "Os seguintes números de série já estão alocados"
-#: order/serializers.py:1555
+#: order/serializers.py:1561
msgid "Return order line item"
msgstr "Devolver item do pedido"
-#: order/serializers.py:1562
+#: order/serializers.py:1568
msgid "Line item does not match return order"
msgstr "Item do pedido não bate com a ordem de devolução"
-#: order/serializers.py:1565
+#: order/serializers.py:1571
msgid "Line item has already been received"
msgstr "Item do pedido já foi recebido"
-#: order/serializers.py:1597
+#: order/serializers.py:1603
msgid "Items can only be received against orders which are in progress"
msgstr "Itens só podem ser recebidos de pedidos em processamento"
-#: order/serializers.py:1678
+#: order/serializers.py:1684
msgid "Line price currency"
msgstr "Tipo de moeda para o item do pedido"
@@ -4957,82 +5013,74 @@ msgid "Issue Order"
msgstr "Emitir Pedido"
#: order/templates/order/order_base.html:83
-msgid "Receive items"
-msgstr "Receber itens"
-
-#: order/templates/order/order_base.html:85
-msgid "Receive Items"
-msgstr "Receber Itens"
-
-#: order/templates/order/order_base.html:87
#: order/templates/order/return_order_base.html:87
msgid "Mark order as complete"
msgstr "Marcar pedido como concluído"
-#: order/templates/order/order_base.html:88
+#: order/templates/order/order_base.html:84
#: order/templates/order/return_order_base.html:88
#: order/templates/order/sales_order_base.html:94
msgid "Complete Order"
msgstr "Completar Pedido"
-#: order/templates/order/order_base.html:95
+#: order/templates/order/order_base.html:91
msgid "Supplier part thumbnail"
msgstr ""
-#: order/templates/order/order_base.html:110
+#: order/templates/order/order_base.html:106
#: order/templates/order/return_order_base.html:102
#: order/templates/order/sales_order_base.html:107
msgid "Order Reference"
msgstr "Referência do Pedido"
-#: order/templates/order/order_base.html:115
+#: order/templates/order/order_base.html:111
#: order/templates/order/return_order_base.html:107
#: order/templates/order/sales_order_base.html:112
msgid "Order Description"
msgstr "Descrição do Pedido"
-#: order/templates/order/order_base.html:122
+#: order/templates/order/order_base.html:118
#: order/templates/order/return_order_base.html:114
#: order/templates/order/sales_order_base.html:119
msgid "Order Status"
msgstr "Situação do pedido"
-#: order/templates/order/order_base.html:145
+#: order/templates/order/order_base.html:141
msgid "No suppplier information available"
msgstr "Nenhuma informação do fornecedor disponível"
-#: order/templates/order/order_base.html:158
+#: order/templates/order/order_base.html:154
#: order/templates/order/sales_order_base.html:158
msgid "Completed Line Items"
msgstr "Itens de Linha Concluídos"
-#: order/templates/order/order_base.html:164
+#: order/templates/order/order_base.html:160
#: order/templates/order/sales_order_base.html:164
#: order/templates/order/sales_order_base.html:174
msgid "Incomplete"
msgstr "Incompleto"
-#: order/templates/order/order_base.html:183
+#: order/templates/order/order_base.html:179
#: order/templates/order/return_order_base.html:158
#: report/templates/report/inventree_build_order_base.html:121
msgid "Issued"
msgstr "Emitido"
-#: order/templates/order/order_base.html:221
+#: order/templates/order/order_base.html:224
msgid "Total cost"
msgstr "Custo total"
-#: order/templates/order/order_base.html:225
-#: order/templates/order/return_order_base.html:193
-#: order/templates/order/sales_order_base.html:233
+#: order/templates/order/order_base.html:228
+#: order/templates/order/return_order_base.html:200
+#: order/templates/order/sales_order_base.html:240
msgid "Total cost could not be calculated"
msgstr "O custo total não pôde ser calculado"
-#: order/templates/order/order_base.html:331
+#: order/templates/order/order_base.html:318
msgid "Purchase Order QR Code"
msgstr "Código QR do pedido"
-#: order/templates/order/order_base.html:343
+#: order/templates/order/order_base.html:330
msgid "Link Barcode to Purchase Order"
msgstr "Vincular o código de barras ao pedido"
@@ -5085,13 +5133,13 @@ msgstr "Duplicar seleção"
#: 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:132 templates/js/translated/build.js:512
-#: templates/js/translated/build.js:2348
-#: templates/js/translated/purchase_order.js:692
-#: templates/js/translated/purchase_order.js:1206
-#: templates/js/translated/return_order.js:494
-#: templates/js/translated/sales_order.js:1097
-#: templates/js/translated/stock.js:681 templates/js/translated/stock.js:850
+#: templates/js/translated/bom.js:133 templates/js/translated/build.js:518
+#: templates/js/translated/build.js:1555
+#: templates/js/translated/purchase_order.js:703
+#: templates/js/translated/purchase_order.js:1221
+#: templates/js/translated/return_order.js:506
+#: templates/js/translated/sales_order.js:1109
+#: templates/js/translated/stock.js:680 templates/js/translated/stock.js:849
#: templates/patterns/wizard/match_fields.html:70
msgid "Remove row"
msgstr "Remover linha"
@@ -5152,9 +5200,9 @@ msgstr "Itens do Pedido de Compra"
#: order/templates/order/purchase_order_detail.html:27
#: order/templates/order/return_order_detail.html:24
#: order/templates/order/sales_order_detail.html:24
-#: templates/js/translated/purchase_order.js:419
-#: templates/js/translated/return_order.js:447
-#: templates/js/translated/sales_order.js:222
+#: templates/js/translated/purchase_order.js:430
+#: templates/js/translated/return_order.js:459
+#: templates/js/translated/sales_order.js:234
msgid "Add Line Item"
msgstr "Adicionar item de linha"
@@ -5165,30 +5213,25 @@ msgstr "Adicionar item de linha"
msgid "Receive Line Items"
msgstr "Receber os itens do pedido"
-#: order/templates/order/purchase_order_detail.html:49
#: order/templates/order/purchase_order_detail.html:50
-msgid "Delete Line Items"
-msgstr "Excluir Itens de Linha"
-
-#: order/templates/order/purchase_order_detail.html:66
-#: order/templates/order/return_order_detail.html:47
-#: order/templates/order/sales_order_detail.html:43
+#: order/templates/order/return_order_detail.html:45
+#: order/templates/order/sales_order_detail.html:41
msgid "Extra Lines"
msgstr "Linhas Extra"
-#: order/templates/order/purchase_order_detail.html:72
-#: order/templates/order/return_order_detail.html:53
-#: order/templates/order/sales_order_detail.html:49
+#: order/templates/order/purchase_order_detail.html:56
+#: order/templates/order/return_order_detail.html:51
+#: order/templates/order/sales_order_detail.html:47
msgid "Add Extra Line"
msgstr "Adicionar Linha Extra"
-#: order/templates/order/purchase_order_detail.html:92
+#: order/templates/order/purchase_order_detail.html:74
msgid "Received Items"
msgstr "Itens Recebidos"
-#: order/templates/order/purchase_order_detail.html:117
-#: order/templates/order/return_order_detail.html:89
-#: order/templates/order/sales_order_detail.html:149
+#: order/templates/order/purchase_order_detail.html:99
+#: order/templates/order/return_order_detail.html:85
+#: order/templates/order/sales_order_detail.html:139
msgid "Order Notes"
msgstr "Notas do Pedido"
@@ -5208,29 +5251,29 @@ msgstr "Imprimir lista de pacotes"
#: order/templates/order/return_order_base.html:139
#: order/templates/order/sales_order_base.html:152
-#: templates/js/translated/return_order.js:297
-#: templates/js/translated/sales_order.js:785
+#: templates/js/translated/return_order.js:309
+#: templates/js/translated/sales_order.js:797
msgid "Customer Reference"
msgstr "Referência do Cliente"
-#: order/templates/order/return_order_base.html:189
-#: order/templates/order/sales_order_base.html:229
+#: order/templates/order/return_order_base.html:196
+#: order/templates/order/sales_order_base.html:236
#: part/templates/part/part_pricing.html:32
#: part/templates/part/part_pricing.html:58
#: part/templates/part/part_pricing.html:99
#: part/templates/part/part_pricing.html:114
-#: templates/js/translated/part.js:1046
-#: templates/js/translated/purchase_order.js:1712
-#: templates/js/translated/return_order.js:369
-#: templates/js/translated/sales_order.js:843
+#: templates/js/translated/part.js:1045
+#: templates/js/translated/purchase_order.js:1727
+#: templates/js/translated/return_order.js:381
+#: templates/js/translated/sales_order.js:855
msgid "Total Cost"
msgstr "Custo Total"
-#: order/templates/order/return_order_base.html:257
+#: order/templates/order/return_order_base.html:264
msgid "Return Order QR Code"
msgstr "Código QR da guia de devolução"
-#: order/templates/order/return_order_base.html:269
+#: order/templates/order/return_order_base.html:276
msgid "Link Barcode to Return Order"
msgstr "Vincular Código de Barras a Pedido de Devolução"
@@ -5248,7 +5291,7 @@ msgid "Ship Items"
msgstr "Enviar itens"
#: order/templates/order/sales_order_base.html:93
-#: templates/js/translated/sales_order.js:469
+#: templates/js/translated/sales_order.js:481
msgid "Complete Sales Order"
msgstr "Concluir Pedido de Venda"
@@ -5257,16 +5300,16 @@ msgid "This Sales Order has not been fully allocated"
msgstr "Este Pedido de Venda não foi totalmente alocado"
#: order/templates/order/sales_order_base.html:170
-#: order/templates/order/sales_order_detail.html:105
+#: order/templates/order/sales_order_detail.html:99
#: order/templates/order/so_sidebar.html:11
msgid "Completed Shipments"
msgstr "Envios concluídos"
-#: order/templates/order/sales_order_base.html:306
+#: order/templates/order/sales_order_base.html:313
msgid "Sales Order QR Code"
msgstr "Código QR da venda"
-#: order/templates/order/sales_order_base.html:318
+#: order/templates/order/sales_order_base.html:325
msgid "Link Barcode to Sales Order"
msgstr "Código de barras da venda"
@@ -5274,18 +5317,17 @@ msgstr "Código de barras da venda"
msgid "Sales Order Items"
msgstr "Itens do Pedido de Venda"
-#: order/templates/order/sales_order_detail.html:71
-#: order/templates/order/so_sidebar.html:8 templates/InvenTree/index.html:332
+#: order/templates/order/sales_order_detail.html:67
+#: order/templates/order/so_sidebar.html:8 templates/InvenTree/index.html:284
msgid "Pending Shipments"
msgstr "Envios Pendentes"
-#: order/templates/order/sales_order_detail.html:75
-#: templates/attachment_table.html:6 templates/js/translated/bom.js:1236
-#: templates/js/translated/build.js:2249
+#: order/templates/order/sales_order_detail.html:71
+#: templates/js/translated/bom.js:1256 templates/js/translated/filters.js:297
msgid "Actions"
msgstr "Ações"
-#: order/templates/order/sales_order_detail.html:84
+#: order/templates/order/sales_order_detail.html:80
msgid "New Shipment"
msgstr "Nova Remessa"
@@ -5311,12 +5353,12 @@ msgstr "Atualizado {part} unid.-preço para {price}"
msgid "Updated {part} unit-price to {price} and quantity to {qty}"
msgstr "Atualizado {part} unid.-preço para {price} e quantidade para {qty}"
-#: part/admin.py:33 part/admin.py:273 part/models.py:3667 part/tasks.py:288
+#: part/admin.py:33 part/admin.py:273 part/models.py:3716 part/tasks.py:288
#: stock/admin.py:101
msgid "Part ID"
msgstr "ID da Peça"
-#: part/admin.py:34 part/admin.py:275 part/models.py:3671 part/tasks.py:289
+#: part/admin.py:34 part/admin.py:275 part/models.py:3720 part/tasks.py:289
#: stock/admin.py:102
msgid "Part Name"
msgstr "Nome da Peça"
@@ -5325,19 +5367,19 @@ msgstr "Nome da Peça"
msgid "Part Description"
msgstr "Descrição da Peça"
-#: part/admin.py:36 part/models.py:889 part/templates/part/part_base.html:271
-#: templates/js/translated/part.js:1200 templates/js/translated/part.js:2233
-#: templates/js/translated/stock.js:1795
+#: part/admin.py:36 part/models.py:890 part/templates/part/part_base.html:271
+#: templates/js/translated/part.js:1199 templates/js/translated/part.js:2309
+#: templates/js/translated/stock.js:1952
msgid "IPN"
msgstr "IPN"
-#: part/admin.py:37 part/models.py:896 part/templates/part/part_base.html:279
-#: report/models.py:179 templates/js/translated/part.js:1205
-#: templates/js/translated/part.js:2239
+#: part/admin.py:37 part/models.py:897 part/templates/part/part_base.html:279
+#: report/models.py:179 templates/js/translated/part.js:1204
+#: templates/js/translated/part.js:2315
msgid "Revision"
msgstr "Revisão"
-#: part/admin.py:38 part/admin.py:198 part/models.py:875
+#: part/admin.py:38 part/admin.py:198 part/models.py:876
#: part/templates/part/category.html:93 part/templates/part/part_base.html:300
msgid "Keywords"
msgstr "Palavras chave"
@@ -5358,24 +5400,24 @@ msgstr "ID Local Padrão"
msgid "Default Supplier ID"
msgstr "ID de Fornecedor Padrão"
-#: part/admin.py:46 part/models.py:864 part/templates/part/part_base.html:179
+#: part/admin.py:46 part/models.py:865 part/templates/part/part_base.html:179
msgid "Variant Of"
msgstr "Variante de"
-#: part/admin.py:47 part/models.py:980 part/templates/part/part_base.html:205
+#: part/admin.py:47 part/models.py:981 part/templates/part/part_base.html:205
msgid "Minimum Stock"
msgstr "Estoque Mínimo"
#: part/admin.py:61 part/templates/part/part_base.html:199
-#: templates/js/translated/company.js:1299
-#: templates/js/translated/table_filters.js:301
+#: templates/js/translated/company.js:1720
+#: templates/js/translated/table_filters.js:307
msgid "In Stock"
msgstr "Em Estoque"
#: part/admin.py:62 part/bom.py:178 part/templates/part/part_base.html:212
-#: templates/js/translated/bom.js:1167 templates/js/translated/build.js:2191
-#: templates/js/translated/part.js:687 templates/js/translated/part.js:2123
-#: templates/js/translated/table_filters.js:140
+#: templates/js/translated/bom.js:1187 templates/js/translated/build.js:2541
+#: templates/js/translated/part.js:686 templates/js/translated/part.js:2122
+#: templates/js/translated/table_filters.js:146
msgid "On Order"
msgstr "No pedido"
@@ -5383,23 +5425,16 @@ msgstr "No pedido"
msgid "Used In"
msgstr "Usado em"
-#: part/admin.py:64 templates/js/translated/build.js:2203
-#: templates/js/translated/build.js:2465 templates/js/translated/build.js:3052
-#: templates/js/translated/sales_order.js:1906
-#: templates/js/translated/table_filters.js:488
-msgid "Allocated"
-msgstr "Alocado"
-
#: part/admin.py:65 part/templates/part/part_base.html:243 stock/admin.py:124
-#: templates/js/translated/part.js:692 templates/js/translated/part.js:2127
+#: templates/js/translated/part.js:691 templates/js/translated/part.js:2126
msgid "Building"
msgstr "Produzindo"
-#: part/admin.py:66 part/models.py:2930 templates/js/translated/part.js:943
+#: part/admin.py:66 part/models.py:2964 templates/js/translated/part.js:942
msgid "Minimum Cost"
msgstr "Custo Mínimo"
-#: part/admin.py:67 part/models.py:2936 templates/js/translated/part.js:953
+#: part/admin.py:67 part/models.py:2970 templates/js/translated/part.js:952
msgid "Maximum Cost"
msgstr "Custo Máximo"
@@ -5416,13 +5451,13 @@ msgstr "Nome Paternal"
msgid "Category Path"
msgstr "Caminho da Categoria"
-#: part/admin.py:202 part/models.py:392 part/templates/part/cat_link.html:3
-#: part/templates/part/category.html:23 part/templates/part/category.html:140
-#: part/templates/part/category.html:160
+#: part/admin.py:202 part/models.py:393 part/serializers.py:307
+#: part/templates/part/cat_link.html:3 part/templates/part/category.html:23
+#: part/templates/part/category.html:140 part/templates/part/category.html:160
#: part/templates/part/category_sidebar.html:9
-#: templates/InvenTree/index.html:86 templates/InvenTree/search.html:84
+#: templates/InvenTree/index.html:36 templates/InvenTree/search.html:84
#: templates/InvenTree/settings/sidebar.html:45
-#: templates/js/translated/part.js:2754 templates/js/translated/search.js:172
+#: templates/js/translated/part.js:2739 templates/js/translated/search.js:130
#: templates/navbar.html:24 users/models.py:38
msgid "Parts"
msgstr "Peças"
@@ -5439,7 +5474,7 @@ msgstr "ID Item LDM"
msgid "Parent IPN"
msgstr "IPN Paternal"
-#: part/admin.py:274 part/models.py:3675
+#: part/admin.py:274 part/models.py:3724
msgid "Part IPN"
msgstr "IPN da Peça"
@@ -5453,35 +5488,35 @@ msgstr "Preço Mínimo"
msgid "Maximum Price"
msgstr "Preço Máximo"
-#: part/api.py:498
+#: part/api.py:501
msgid "Incoming Purchase Order"
msgstr "Pedido de compra recebido"
-#: part/api.py:518
+#: part/api.py:521
msgid "Outgoing Sales Order"
msgstr "Pedidos de Venda Feitos"
-#: part/api.py:536
+#: part/api.py:539
msgid "Stock produced by Build Order"
msgstr "Estoque produzido por Ordem de Produção"
-#: part/api.py:622
+#: part/api.py:625
msgid "Stock required for Build Order"
msgstr "Estoque obrigatório para Pedido de Produção"
-#: part/api.py:770
+#: part/api.py:773
msgid "Valid"
msgstr "Válido"
-#: part/api.py:771
+#: part/api.py:774
msgid "Validate entire Bill of Materials"
msgstr "Validar a Lista de Materiais completa"
-#: part/api.py:777
+#: part/api.py:780
msgid "This option must be selected"
msgstr "Esta opção deve ser selecionada"
-#: part/bom.py:175 part/models.py:127 part/models.py:923
+#: part/bom.py:175 part/models.py:128 part/models.py:924
#: part/templates/part/category.html:115 part/templates/part/part_base.html:369
msgid "Default Location"
msgstr "Local Padrão"
@@ -5491,7 +5526,7 @@ msgid "Total Stock"
msgstr "Estoque Total"
#: part/bom.py:177 part/templates/part/part_base.html:194
-#: templates/js/translated/sales_order.js:1873
+#: templates/js/translated/sales_order.js:1885
msgid "Available Stock"
msgstr "Estoque Disponível"
@@ -5499,916 +5534,913 @@ msgstr "Estoque Disponível"
msgid "Input quantity for price calculation"
msgstr "Quantidade para o cálculo de preço"
-#: part/models.py:75 part/models.py:3616 part/templates/part/category.html:16
+#: part/models.py:76 part/models.py:3665 part/templates/part/category.html:16
#: part/templates/part/part_app_base.html:10
msgid "Part Category"
msgstr "Categoria da Peça"
-#: part/models.py:76 part/templates/part/category.html:135
-#: templates/InvenTree/search.html:97 templates/js/translated/search.js:200
+#: part/models.py:77 part/templates/part/category.html:135
+#: templates/InvenTree/search.html:97 templates/js/translated/search.js:158
#: users/models.py:37
msgid "Part Categories"
msgstr "Categorias de Peça"
-#: part/models.py:128
+#: part/models.py:129
msgid "Default location for parts in this category"
msgstr "Local padrão para peças desta categoria"
-#: part/models.py:133 stock/models.py:124 templates/js/translated/stock.js:2520
-#: templates/js/translated/table_filters.js:209
-#: templates/js/translated/table_filters.js:229
+#: part/models.py:134 stock/models.py:124 templates/js/translated/stock.js:2651
+#: templates/js/translated/table_filters.js:215
+#: templates/js/translated/table_filters.js:235
msgid "Structural"
msgstr "Estrutural"
-#: part/models.py:135
+#: part/models.py:136
msgid "Parts may not be directly assigned to a structural category, but may be assigned to child categories."
msgstr "Peças não podem ser diretamente atribuídas a uma categoria estrutural, mas podem ser atribuídas a categorias filhas."
-#: part/models.py:139
+#: part/models.py:140
msgid "Default keywords"
msgstr "Palavras-chave Padrão"
-#: part/models.py:139
+#: part/models.py:140
msgid "Default keywords for parts in this category"
msgstr "Palavras-chave padrão para peças nesta categoria"
-#: part/models.py:144 stock/models.py:113
+#: part/models.py:145 stock/models.py:113
msgid "Icon"
msgstr "Ícone"
-#: part/models.py:145 stock/models.py:114
+#: part/models.py:146 stock/models.py:114
msgid "Icon (optional)"
msgstr "Ícone (opcional)"
-#: part/models.py:164
+#: part/models.py:165
msgid "You cannot make this part category structural because some parts are already assigned to it!"
msgstr "Você não pode tornar esta categoria em estrutural, pois, algumas partes já estão alocadas!"
-#: part/models.py:475
+#: part/models.py:476
msgid "Invalid choice for parent part"
msgstr "Escolha inválida para peça parental"
-#: part/models.py:517 part/models.py:529
+#: part/models.py:518 part/models.py:530
#, python-brace-format
msgid "Part '{p1}' is used in BOM for '{p2}' (recursive)"
msgstr "Parte '{p1}' é usada na LDM para '{p2}' (recursiva)"
-#: part/models.py:601
+#: part/models.py:602
#, python-brace-format
msgid "IPN must match regex pattern {pat}"
msgstr "IPN deve corresponder ao padrão regex {pat}"
-#: part/models.py:672
+#: part/models.py:673
msgid "Stock item with this serial number already exists"
msgstr "Item em estoque com este número de série já existe"
-#: part/models.py:803
+#: part/models.py:804
msgid "Duplicate IPN not allowed in part settings"
msgstr "Não é permitido duplicar IPN em configurações de partes"
-#: part/models.py:808
+#: part/models.py:809
msgid "Part with this Name, IPN and Revision already exists."
msgstr "Uma parte com este Nome, IPN e Revisão já existe."
-#: part/models.py:822
+#: part/models.py:823
msgid "Parts cannot be assigned to structural part categories!"
msgstr "Peças não podem ser atribuídas a categorias estruturais!"
-#: part/models.py:846 part/models.py:3672
+#: part/models.py:847 part/models.py:3721
msgid "Part name"
msgstr "Nome da peça"
-#: part/models.py:852
+#: part/models.py:853
msgid "Is Template"
msgstr "É um modelo"
-#: part/models.py:853
+#: part/models.py:854
msgid "Is this part a template part?"
msgstr "Esta peça é uma peça modelo?"
-#: part/models.py:863
+#: part/models.py:864
msgid "Is this part a variant of another part?"
msgstr "Esta peça é variante de outra peça?"
-#: part/models.py:870
+#: part/models.py:871
msgid "Part description (optional)"
msgstr "Descrição da peça (opcional)"
-#: part/models.py:876
+#: part/models.py:877
msgid "Part keywords to improve visibility in search results"
msgstr "Palavras-chave para melhorar a visibilidade nos resultados da pesquisa"
-#: part/models.py:883 part/models.py:3198 part/models.py:3615
-#: part/serializers.py:848 part/templates/part/part_base.html:262
+#: part/models.py:884 part/models.py:3232 part/models.py:3664
+#: part/serializers.py:320 part/serializers.py:910
+#: part/templates/part/part_base.html:262
#: templates/InvenTree/settings/settings_staff_js.html:204
#: templates/js/translated/notification.js:59
-#: templates/js/translated/part.js:2269 templates/js/translated/part.js:2481
+#: templates/js/translated/part.js:2345
msgid "Category"
msgstr "Categoria"
-#: part/models.py:884
+#: part/models.py:885
msgid "Part category"
msgstr "Categoria da Peça"
-#: part/models.py:890
+#: part/models.py:891
msgid "Internal Part Number"
msgstr "Numero interno do produto"
-#: part/models.py:895
+#: part/models.py:896
msgid "Part revision or version number"
msgstr "Revisão de peça ou número de versão"
-#: part/models.py:921
+#: part/models.py:922
msgid "Where is this item normally stored?"
msgstr "Onde este item é armazenado normalmente?"
-#: part/models.py:966 part/templates/part/part_base.html:378
+#: part/models.py:967 part/templates/part/part_base.html:378
msgid "Default Supplier"
msgstr "Fornecedor Padrão"
-#: part/models.py:967
+#: part/models.py:968
msgid "Default supplier part"
msgstr "Fornecedor padrão da peça"
-#: part/models.py:974
+#: part/models.py:975
msgid "Default Expiry"
msgstr "Validade Padrão"
-#: part/models.py:975
+#: part/models.py:976
msgid "Expiry time (in days) for stock items of this part"
msgstr "Validade (em dias) para itens do estoque desta peça"
-#: part/models.py:981
+#: part/models.py:982
msgid "Minimum allowed stock level"
msgstr "Nível mínimo de estoque permitido"
-#: part/models.py:988
+#: part/models.py:989
msgid "Units of measure for this part"
msgstr "Unidade de medida para esta peça"
-#: part/models.py:997
+#: part/models.py:998
msgid "Can this part be built from other parts?"
msgstr "Essa peça pode ser construída a partir de outras peças?"
-#: part/models.py:1003
+#: part/models.py:1004
msgid "Can this part be used to build other parts?"
msgstr "Essa peça pode ser usada para construir outras peças?"
-#: part/models.py:1009
+#: part/models.py:1010
msgid "Does this part have tracking for unique items?"
msgstr "Esta parte tem rastreamento para itens únicos?"
-#: part/models.py:1014
+#: part/models.py:1015
msgid "Can this part be purchased from external suppliers?"
msgstr "Esta peça pode ser comprada de fornecedores externos?"
-#: part/models.py:1019
+#: part/models.py:1020
msgid "Can this part be sold to customers?"
msgstr "Esta peça pode ser vendida a clientes?"
-#: part/models.py:1024
+#: part/models.py:1025
msgid "Is this part active?"
msgstr "Esta parte está ativa?"
-#: part/models.py:1029
+#: part/models.py:1030
msgid "Is this a virtual part, such as a software product or license?"
msgstr "Esta é uma peça virtual, como um software de produto ou licença?"
-#: part/models.py:1031
+#: part/models.py:1032
msgid "BOM checksum"
msgstr "Soma de Verificação da LDM"
-#: part/models.py:1031
+#: part/models.py:1032
msgid "Stored BOM checksum"
msgstr "Soma de verificação da LDM armazenada"
-#: part/models.py:1034
+#: part/models.py:1035
msgid "BOM checked by"
msgstr "LDM conferida por"
-#: part/models.py:1036
+#: part/models.py:1037
msgid "BOM checked date"
msgstr "LDM verificada no dia"
-#: part/models.py:1040
+#: part/models.py:1041
msgid "Creation User"
msgstr "Criação de Usuário"
-#: part/models.py:1042
+#: part/models.py:1043
msgid "User responsible for this part"
msgstr "Usuário responsável por esta peça"
-#: part/models.py:1046 part/templates/part/part_base.html:341
+#: part/models.py:1047 part/templates/part/part_base.html:341
#: stock/templates/stock/item_base.html:447
-#: templates/js/translated/part.js:2331
+#: templates/js/translated/part.js:2407
msgid "Last Stocktake"
msgstr "Último Balanço"
-#: part/models.py:1921
+#: part/models.py:1923
msgid "Sell multiple"
msgstr "Venda múltipla"
-#: part/models.py:2853
+#: part/models.py:2887
msgid "Currency used to cache pricing calculations"
msgstr "Moeda usada para armazenar os cálculos de preços"
-#: part/models.py:2870
+#: part/models.py:2904
msgid "Minimum BOM Cost"
msgstr "Custo Mínimo da LDM"
-#: part/models.py:2871
+#: part/models.py:2905
msgid "Minimum cost of component parts"
msgstr "Custo mínimo das peças componentes"
-#: part/models.py:2876
+#: part/models.py:2910
msgid "Maximum BOM Cost"
msgstr "Custo Máximo da LDM"
-#: part/models.py:2877
+#: part/models.py:2911
msgid "Maximum cost of component parts"
msgstr "Custo máximo das peças componentes"
-#: part/models.py:2882
+#: part/models.py:2916
msgid "Minimum Purchase Cost"
msgstr "Custo Mínimo de Compra"
-#: part/models.py:2883
+#: part/models.py:2917
msgid "Minimum historical purchase cost"
msgstr "Custo mínimo histórico de compra"
-#: part/models.py:2888
+#: part/models.py:2922
msgid "Maximum Purchase Cost"
msgstr "Custo Máximo de Compra"
-#: part/models.py:2889
+#: part/models.py:2923
msgid "Maximum historical purchase cost"
msgstr "Custo máximo histórico de compra"
-#: part/models.py:2894
+#: part/models.py:2928
msgid "Minimum Internal Price"
msgstr "Preço Interno Mínimo"
-#: part/models.py:2895
+#: part/models.py:2929
msgid "Minimum cost based on internal price breaks"
msgstr "Custo mínimo baseado nos intervalos de preço internos"
-#: part/models.py:2900
+#: part/models.py:2934
msgid "Maximum Internal Price"
msgstr "Preço Interno Máximo"
-#: part/models.py:2901
+#: part/models.py:2935
msgid "Maximum cost based on internal price breaks"
msgstr "Custo máximo baseado nos intervalos de preço internos"
-#: part/models.py:2906
+#: part/models.py:2940
msgid "Minimum Supplier Price"
msgstr "Preço Mínimo do Fornecedor"
-#: part/models.py:2907
+#: part/models.py:2941
msgid "Minimum price of part from external suppliers"
msgstr "Preço mínimo da peça de fornecedores externos"
-#: part/models.py:2912
+#: part/models.py:2946
msgid "Maximum Supplier Price"
msgstr "Preço Máximo do Fornecedor"
-#: part/models.py:2913
+#: part/models.py:2947
msgid "Maximum price of part from external suppliers"
msgstr "Preço máximo da peça de fornecedores externos"
-#: part/models.py:2918
+#: part/models.py:2952
msgid "Minimum Variant Cost"
msgstr "Custo Mínimo variável"
-#: part/models.py:2919
+#: part/models.py:2953
msgid "Calculated minimum cost of variant parts"
msgstr "Custo mínimo calculado das peças variáveis"
-#: part/models.py:2924
+#: part/models.py:2958
msgid "Maximum Variant Cost"
msgstr "Custo Máximo Variável"
-#: part/models.py:2925
+#: part/models.py:2959
msgid "Calculated maximum cost of variant parts"
msgstr "Custo máximo calculado das peças variáveis"
-#: part/models.py:2931
+#: part/models.py:2965
msgid "Calculated overall minimum cost"
msgstr "Custo total mínimo calculado"
-#: part/models.py:2937
+#: part/models.py:2971
msgid "Calculated overall maximum cost"
msgstr "Custo total máximo calculado"
-#: part/models.py:2942
+#: part/models.py:2976
msgid "Minimum Sale Price"
msgstr "Preço Mínimo de Venda"
-#: part/models.py:2943
+#: part/models.py:2977
msgid "Minimum sale price based on price breaks"
msgstr "Preço mínimo de venda baseado nos intervalos de preço"
-#: part/models.py:2948
+#: part/models.py:2982
msgid "Maximum Sale Price"
msgstr "Preço Máximo de Venda"
-#: part/models.py:2949
+#: part/models.py:2983
msgid "Maximum sale price based on price breaks"
msgstr "Preço máximo de venda baseado nos intervalos de preço"
-#: part/models.py:2954
+#: part/models.py:2988
msgid "Minimum Sale Cost"
msgstr "Custo Mínimo de Venda"
-#: part/models.py:2955
+#: part/models.py:2989
msgid "Minimum historical sale price"
msgstr "Preço histórico mínimo de venda"
-#: part/models.py:2960
+#: part/models.py:2994
msgid "Maximum Sale Cost"
msgstr "Custo Máximo de Venda"
-#: part/models.py:2961
+#: part/models.py:2995
msgid "Maximum historical sale price"
msgstr "Preço histórico máximo de venda"
-#: part/models.py:2980
+#: part/models.py:3014
msgid "Part for stocktake"
msgstr "Peça para Balanço"
-#: part/models.py:2985
+#: part/models.py:3019
msgid "Item Count"
msgstr "Total de Itens"
-#: part/models.py:2986
+#: part/models.py:3020
msgid "Number of individual stock entries at time of stocktake"
msgstr "Número de entradas de estoques individuais no momento do balanço"
-#: part/models.py:2993
+#: part/models.py:3027
msgid "Total available stock at time of stocktake"
msgstr "Estoque total disponível no momento do balanço"
-#: part/models.py:2997 part/models.py:3080
+#: part/models.py:3031 part/models.py:3114
#: part/templates/part/part_scheduling.html:13
#: report/templates/report/inventree_test_report_base.html:106
#: templates/InvenTree/settings/plugin_settings.html:37
#: templates/InvenTree/settings/settings_staff_js.html:360
-#: templates/js/translated/part.js:1059 templates/js/translated/pricing.js:812
+#: templates/js/translated/part.js:1058 templates/js/translated/pricing.js:812
#: templates/js/translated/pricing.js:936
-#: templates/js/translated/purchase_order.js:1691
-#: templates/js/translated/stock.js:2558
+#: templates/js/translated/purchase_order.js:1706
+#: templates/js/translated/stock.js:2689
msgid "Date"
msgstr "Data"
-#: part/models.py:2998
+#: part/models.py:3032
msgid "Date stocktake was performed"
msgstr "Data de realização do balanço"
-#: part/models.py:3006
+#: part/models.py:3040
msgid "Additional notes"
msgstr "Notas adicionais"
-#: part/models.py:3014
+#: part/models.py:3048
msgid "User who performed this stocktake"
msgstr "Usuário que fez o balanço"
-#: part/models.py:3019
+#: part/models.py:3053
msgid "Minimum Stock Cost"
msgstr "Custo Mínimo de Estoque"
-#: part/models.py:3020
+#: part/models.py:3054
msgid "Estimated minimum cost of stock on hand"
msgstr "Custo mínimo estimado de estoque disponível"
-#: part/models.py:3025
+#: part/models.py:3059
msgid "Maximum Stock Cost"
msgstr "Custo Máximo de Estoque"
-#: part/models.py:3026
+#: part/models.py:3060
msgid "Estimated maximum cost of stock on hand"
msgstr "Custo máximo estimado de estoque disponível"
-#: part/models.py:3087 templates/InvenTree/settings/settings_staff_js.html:349
+#: part/models.py:3121 templates/InvenTree/settings/settings_staff_js.html:349
msgid "Report"
msgstr "Reportar"
-#: part/models.py:3088
+#: part/models.py:3122
msgid "Stocktake report file (generated internally)"
msgstr "Arquivo de Relatório de Balanço (gerado internamente)"
-#: part/models.py:3093 templates/InvenTree/settings/settings_staff_js.html:356
+#: part/models.py:3127 templates/InvenTree/settings/settings_staff_js.html:356
msgid "Part Count"
msgstr "Contagem de Peças"
-#: part/models.py:3094
+#: part/models.py:3128
msgid "Number of parts covered by stocktake"
msgstr "Número de peças cobertas pelo Balanço"
-#: part/models.py:3102
+#: part/models.py:3136
msgid "User who requested this stocktake report"
msgstr "Usuário que solicitou este relatório de balanço"
-#: part/models.py:3238
+#: part/models.py:3272
msgid "Test templates can only be created for trackable parts"
msgstr "Modelos de teste só podem ser criados para peças rastreáveis"
-#: part/models.py:3255
+#: part/models.py:3289
msgid "Test with this name already exists for this part"
msgstr "O teste com este nome já existe para esta peça"
-#: part/models.py:3275 templates/js/translated/part.js:2821
+#: part/models.py:3309 templates/js/translated/part.js:2806
msgid "Test Name"
msgstr "Nome de Teste"
-#: part/models.py:3276
+#: part/models.py:3310
msgid "Enter a name for the test"
msgstr "Insira um nome para o teste"
-#: part/models.py:3281
+#: part/models.py:3315
msgid "Test Description"
msgstr "Descrição do Teste"
-#: part/models.py:3282
+#: part/models.py:3316
msgid "Enter description for this test"
msgstr "Digite a descrição para este teste"
-#: part/models.py:3287 templates/js/translated/part.js:2830
-#: templates/js/translated/table_filters.js:423
+#: part/models.py:3321 templates/js/translated/part.js:2815
+#: templates/js/translated/table_filters.js:429
msgid "Required"
msgstr "Requerido"
-#: part/models.py:3288
+#: part/models.py:3322
msgid "Is this test required to pass?"
msgstr "Este teste é obrigatório passar?"
-#: part/models.py:3293 templates/js/translated/part.js:2838
+#: part/models.py:3327 templates/js/translated/part.js:2823
msgid "Requires Value"
msgstr "Requer Valor"
-#: part/models.py:3294
+#: part/models.py:3328
msgid "Does this test require a value when adding a test result?"
msgstr "Este teste requer um valor ao adicionar um resultado de teste?"
-#: part/models.py:3299 templates/js/translated/part.js:2845
+#: part/models.py:3333 templates/js/translated/part.js:2830
msgid "Requires Attachment"
msgstr "Anexo obrigatório"
-#: part/models.py:3300
+#: part/models.py:3334
msgid "Does this test require a file attachment when adding a test result?"
msgstr "Este teste requer um anexo ao adicionar um resultado de teste?"
-#: part/models.py:3346
+#: part/models.py:3380
msgid "Checkbox parameters cannot have units"
msgstr ""
-#: part/models.py:3351
+#: part/models.py:3385
msgid "Checkbox parameters cannot have choices"
msgstr ""
-#: part/models.py:3369
+#: part/models.py:3403
msgid "Choices must be unique"
msgstr ""
-#: part/models.py:3385
+#: part/models.py:3419
msgid "Parameter template name must be unique"
msgstr "Nome do modelo de parâmetro deve ser único"
-#: part/models.py:3401
+#: part/models.py:3435
msgid "Parameter Name"
msgstr "Nome do Parâmetro"
-#: part/models.py:3407
+#: part/models.py:3441
msgid "Physical units for this parameter"
msgstr ""
-#: part/models.py:3417
+#: part/models.py:3451
msgid "Parameter description"
msgstr "Descrição do Parâmetro"
-#: part/models.py:3423 templates/js/translated/part.js:1600
-#: templates/js/translated/table_filters.js:734
+#: part/models.py:3457 templates/js/translated/part.js:1599
+#: templates/js/translated/table_filters.js:756
msgid "Checkbox"
msgstr ""
-#: part/models.py:3424
+#: part/models.py:3458
msgid "Is this parameter a checkbox?"
msgstr ""
-#: part/models.py:3429 templates/js/translated/part.js:1609
+#: part/models.py:3463 templates/js/translated/part.js:1608
msgid "Choices"
msgstr ""
-#: part/models.py:3430
+#: part/models.py:3464
msgid "Valid choices for this parameter (comma-separated)"
msgstr ""
-#: part/models.py:3511
+#: part/models.py:3545
msgid "Invalid choice for parameter value"
msgstr ""
-#: part/models.py:3555
+#: part/models.py:3589
msgid "Parent Part"
msgstr "Peça Paternal"
-#: part/models.py:3560 part/models.py:3621 part/models.py:3622
+#: part/models.py:3594 part/models.py:3670 part/models.py:3671
#: templates/InvenTree/settings/settings_staff_js.html:199
msgid "Parameter Template"
msgstr "Modelo de parâmetro"
-#: part/models.py:3565
+#: part/models.py:3599
msgid "Data"
msgstr "Dados"
-#: part/models.py:3565
+#: part/models.py:3599
msgid "Parameter Value"
msgstr "Valor do Parâmetro"
-#: part/models.py:3626 templates/InvenTree/settings/settings_staff_js.html:208
+#: part/models.py:3675 templates/InvenTree/settings/settings_staff_js.html:208
msgid "Default Value"
msgstr "Valor Padrão"
-#: part/models.py:3627
+#: part/models.py:3676
msgid "Default Parameter Value"
msgstr "Valor Padrão do Parâmetro"
-#: part/models.py:3664
+#: part/models.py:3713
msgid "Part ID or part name"
msgstr "ID da peça ou nome da peça"
-#: part/models.py:3668
+#: part/models.py:3717
msgid "Unique part ID value"
msgstr "Valor exclusivo do ID de peça"
-#: part/models.py:3676
+#: part/models.py:3725
msgid "Part IPN value"
msgstr "Valor da parte IPN"
-#: part/models.py:3679
+#: part/models.py:3728
msgid "Level"
msgstr "Nível"
-#: part/models.py:3680
+#: part/models.py:3729
msgid "BOM level"
msgstr "Nível da LDM"
-#: part/models.py:3764
+#: part/models.py:3735 part/models.py:4113
+msgid "BOM Item"
+msgstr "Item LDM"
+
+#: part/models.py:3808
msgid "Select parent part"
msgstr "Selecione a Peça Parental"
-#: part/models.py:3772
+#: part/models.py:3816
msgid "Sub part"
msgstr "Sub peça"
-#: part/models.py:3773
+#: part/models.py:3817
msgid "Select part to be used in BOM"
msgstr "Selecionar peça a ser usada na LDM"
-#: part/models.py:3779
+#: part/models.py:3823
msgid "BOM quantity for this BOM item"
msgstr "Quantidade de LDM para este item LDM"
-#: part/models.py:3783 part/templates/part/upload_bom.html:58
-#: templates/js/translated/bom.js:971 templates/js/translated/bom.js:998
-#: templates/js/translated/build.js:2113
-#: templates/js/translated/table_filters.js:156
-#: templates/js/translated/table_filters.js:185
-#: templates/js/translated/table_filters.js:500
-msgid "Optional"
-msgstr "Opcional"
-
-#: part/models.py:3784
+#: part/models.py:3828
msgid "This BOM item is optional"
msgstr "Este item LDM é opcional"
-#: part/models.py:3789 templates/js/translated/bom.js:967
-#: templates/js/translated/bom.js:1007 templates/js/translated/build.js:2104
-#: templates/js/translated/table_filters.js:160
-#: templates/js/translated/table_filters.js:496
-msgid "Consumable"
-msgstr "Consumível"
-
-#: part/models.py:3790
+#: part/models.py:3834
msgid "This BOM item is consumable (it is not tracked in build orders)"
msgstr "Este item LDM é consumível (não é rastreado nos pedidos de construção)"
-#: part/models.py:3794 part/templates/part/upload_bom.html:55
+#: part/models.py:3838 part/templates/part/upload_bom.html:55
msgid "Overage"
msgstr "Excedente"
-#: part/models.py:3795
+#: part/models.py:3839
msgid "Estimated build wastage quantity (absolute or percentage)"
msgstr "Quantidade estimada de desperdício (absoluto ou porcentagem)"
-#: part/models.py:3798
+#: part/models.py:3842
msgid "BOM item reference"
msgstr "Referência do Item LDM"
-#: part/models.py:3801
+#: part/models.py:3845
msgid "BOM item notes"
msgstr "Notas do Item LDM"
-#: part/models.py:3805
+#: part/models.py:3849
msgid "Checksum"
msgstr "Soma de verificação"
-#: part/models.py:3805
+#: part/models.py:3849
msgid "BOM line checksum"
msgstr "Soma de Verificação da LDM da linha"
-#: part/models.py:3810 templates/js/translated/table_filters.js:144
+#: part/models.py:3854 templates/js/translated/table_filters.js:150
msgid "Validated"
msgstr "Validado"
-#: part/models.py:3811
+#: part/models.py:3855
msgid "This BOM item has been validated"
msgstr "O item da LDM foi calidado"
-#: part/models.py:3816 part/templates/part/upload_bom.html:57
-#: templates/js/translated/bom.js:1024
-#: templates/js/translated/table_filters.js:148
-#: templates/js/translated/table_filters.js:181
+#: part/models.py:3860 part/templates/part/upload_bom.html:57
+#: templates/js/translated/bom.js:1042
+#: templates/js/translated/table_filters.js:154
+#: templates/js/translated/table_filters.js:187
msgid "Gets inherited"
msgstr "Obtém herdados"
-#: part/models.py:3817
+#: part/models.py:3861
msgid "This BOM item is inherited by BOMs for variant parts"
msgstr "Este item da LDM é herdado por LDMs para peças variáveis"
-#: part/models.py:3822 part/templates/part/upload_bom.html:56
-#: templates/js/translated/bom.js:1016
+#: part/models.py:3866 part/templates/part/upload_bom.html:56
+#: templates/js/translated/bom.js:1034
msgid "Allow Variants"
msgstr "Permitir variações"
-#: part/models.py:3823
+#: part/models.py:3867
msgid "Stock items for variant parts can be used for this BOM item"
msgstr "Itens de estoque para as peças das variantes podem ser usados para este item LDM"
-#: part/models.py:3909 stock/models.py:577
+#: part/models.py:3953 stock/models.py:577
msgid "Quantity must be integer value for trackable parts"
msgstr "Quantidade deve ser valor inteiro para peças rastreáveis"
-#: part/models.py:3918 part/models.py:3920
+#: part/models.py:3962 part/models.py:3964
msgid "Sub part must be specified"
msgstr "Sub peça deve ser especificada"
-#: part/models.py:4036
+#: part/models.py:4080
msgid "BOM Item Substitute"
msgstr "Substituir Item da LDM"
-#: part/models.py:4057
+#: part/models.py:4101
msgid "Substitute part cannot be the same as the master part"
msgstr "A peça de substituição não pode ser a mesma que a peça mestre"
-#: part/models.py:4070
+#: part/models.py:4114
msgid "Parent BOM item"
msgstr "Item LDM Parental"
-#: part/models.py:4078
+#: part/models.py:4122
msgid "Substitute part"
msgstr "Substituir peça"
-#: part/models.py:4093
+#: part/models.py:4137
msgid "Part 1"
msgstr "Parte 1"
-#: part/models.py:4097
+#: part/models.py:4141
msgid "Part 2"
msgstr "Parte 2"
-#: part/models.py:4097
+#: part/models.py:4141
msgid "Select Related Part"
msgstr "Selecionar Peça Relacionada"
-#: part/models.py:4115
+#: part/models.py:4159
msgid "Part relationship cannot be created between a part and itself"
msgstr "Relacionamento da peça não pode ser criada com ela mesma"
-#: part/models.py:4119
+#: part/models.py:4163
msgid "Duplicate relationship already exists"
msgstr "Relação duplicada já existe"
-#: part/serializers.py:152 part/serializers.py:175 stock/serializers.py:257
+#: part/serializers.py:152 part/serializers.py:175 stock/serializers.py:319
msgid "Purchase currency of this stock item"
msgstr "Moeda de compra deste item de estoque"
-#: part/serializers.py:302
+#: part/serializers.py:313
+msgid "No parts selected"
+msgstr ""
+
+#: part/serializers.py:321
+msgid "Select category"
+msgstr ""
+
+#: part/serializers.py:352
msgid "Original Part"
msgstr "Peça Original"
-#: part/serializers.py:302
+#: part/serializers.py:352
msgid "Select original part to duplicate"
msgstr "Selecione a peça original para duplicar"
-#: part/serializers.py:307
+#: part/serializers.py:357
msgid "Copy Image"
msgstr "Copiar imagem"
-#: part/serializers.py:307
+#: part/serializers.py:357
msgid "Copy image from original part"
msgstr "Copiar imagem da peça original"
-#: part/serializers.py:312 part/templates/part/detail.html:296
+#: part/serializers.py:362 part/templates/part/detail.html:277
msgid "Copy BOM"
msgstr "Copiar LDM"
-#: part/serializers.py:312
+#: part/serializers.py:362
msgid "Copy bill of materials from original part"
msgstr "Copiar lista de materiais da peça original"
-#: part/serializers.py:317
+#: part/serializers.py:367
msgid "Copy Parameters"
msgstr "Copiar Parâmetros"
-#: part/serializers.py:317
+#: part/serializers.py:367
msgid "Copy parameter data from original part"
msgstr "Copiar dados do parâmetro da peça original"
-#: part/serializers.py:327
+#: part/serializers.py:377
msgid "Initial Stock Quantity"
msgstr "Quantidade Inicial de Estoque"
-#: part/serializers.py:327
+#: part/serializers.py:377
msgid "Specify initial stock quantity for this Part. If quantity is zero, no stock is added."
msgstr "Especificar a quantidade inicial de estoque para a peça. Se for zero, nenhum estoque é adicionado."
-#: part/serializers.py:333
+#: part/serializers.py:383
msgid "Initial Stock Location"
msgstr "Local Inicial do Estoque"
-#: part/serializers.py:333
+#: part/serializers.py:383
msgid "Specify initial stock location for this Part"
msgstr "Especifique o local do estoque inicial para esta Peça"
-#: part/serializers.py:343
+#: part/serializers.py:393
msgid "Select supplier (or leave blank to skip)"
msgstr "Selecione o fornecedor (ou deixe em branco para pular)"
-#: part/serializers.py:354
+#: part/serializers.py:404
msgid "Select manufacturer (or leave blank to skip)"
msgstr "Selecione fabricante (ou deixe em branco para pular)"
-#: part/serializers.py:360
+#: part/serializers.py:410
msgid "Manufacturer part number"
msgstr "Número de Peça do Fabricante"
-#: part/serializers.py:367
+#: part/serializers.py:417
msgid "Selected company is not a valid supplier"
msgstr "A empresa selecionada não é um fornecedor válido"
-#: part/serializers.py:375
+#: part/serializers.py:425
msgid "Selected company is not a valid manufacturer"
msgstr "A empresa selecionada não é um fabricante válido"
-#: part/serializers.py:387
+#: part/serializers.py:437
msgid "Manufacturer part matching this MPN already exists"
msgstr "A peça do fabricante que corresponde a essa MPN já existe"
-#: part/serializers.py:395
+#: part/serializers.py:445
msgid "Supplier part matching this SKU already exists"
msgstr "A peça do fornecedor que corresponde a essa SKU já existe"
-#: part/serializers.py:620 part/templates/part/copy_part.html:9
-#: templates/js/translated/part.js:449
+#: part/serializers.py:682 part/templates/part/copy_part.html:9
+#: templates/js/translated/part.js:448
msgid "Duplicate Part"
msgstr "Peça duplicada"
-#: part/serializers.py:620
+#: part/serializers.py:682
msgid "Copy initial data from another Part"
msgstr "Copiar dados iniciais de outra peça"
-#: part/serializers.py:625 templates/js/translated/part.js:103
+#: part/serializers.py:687 templates/js/translated/part.js:102
msgid "Initial Stock"
msgstr "Estoque inicial"
-#: part/serializers.py:625
+#: part/serializers.py:687
msgid "Create Part with initial stock quantity"
msgstr "Criar peça com a quantidade inicial de estoque"
-#: part/serializers.py:630
+#: part/serializers.py:692
msgid "Supplier Information"
msgstr "Informações do Fornecedor"
-#: part/serializers.py:630
+#: part/serializers.py:692
msgid "Add initial supplier information for this part"
msgstr "Adicionar informação inicial de fornecedor para esta peça"
-#: part/serializers.py:636
+#: part/serializers.py:698
msgid "Copy Category Parameters"
msgstr "Copiar Parâmetros da Categoria"
-#: part/serializers.py:637
+#: part/serializers.py:699
msgid "Copy parameter templates from selected part category"
msgstr "Copiar modelos de parâmetros a partir de categoria de peça selecionada"
-#: part/serializers.py:842
+#: part/serializers.py:904
msgid "Limit stocktake report to a particular part, and any variant parts"
msgstr "Limitar o relatório de balanço a uma determinada peça e quaisquer peças variantes"
-#: part/serializers.py:848
+#: part/serializers.py:910
msgid "Limit stocktake report to a particular part category, and any child categories"
msgstr "Limitar o relatório de balanço a uma determinada categoria, e qualquer peças filhas"
-#: part/serializers.py:854
+#: part/serializers.py:916
msgid "Limit stocktake report to a particular stock location, and any child locations"
msgstr "Limitar o relatório de balanço a um determinado local de estoque, e qualquer local filho"
-#: part/serializers.py:859
+#: part/serializers.py:921
msgid "Generate Report"
msgstr "Gerar relatório"
-#: part/serializers.py:860
+#: part/serializers.py:922
msgid "Generate report file containing calculated stocktake data"
msgstr "Gerar arquivo de relatório contendo dados de estoque calculados"
-#: part/serializers.py:865
+#: part/serializers.py:927
msgid "Update Parts"
msgstr "Atualizar Peças"
-#: part/serializers.py:866
+#: part/serializers.py:928
msgid "Update specified parts with calculated stocktake data"
msgstr "Atualizar peças especificadas com dados de estoque calculados"
-#: part/serializers.py:874
+#: part/serializers.py:936
msgid "Stocktake functionality is not enabled"
msgstr "Função de Balanço de Estoque não está ativada"
-#: part/serializers.py:963
+#: part/serializers.py:1025
msgid "Update"
msgstr "Atualizar"
-#: part/serializers.py:964
+#: part/serializers.py:1026
msgid "Update pricing for this part"
msgstr "Atualizar preços desta peça"
-#: part/serializers.py:1246
+#: part/serializers.py:1308
msgid "Select part to copy BOM from"
msgstr "Selecionar peça para copiar a LDM"
-#: part/serializers.py:1254
+#: part/serializers.py:1316
msgid "Remove Existing Data"
msgstr "Remover Dado Existente"
-#: part/serializers.py:1255
+#: part/serializers.py:1317
msgid "Remove existing BOM items before copying"
msgstr "Remova itens LDM existentes antes de copiar"
-#: part/serializers.py:1260
+#: part/serializers.py:1322
msgid "Include Inherited"
msgstr "Incluir Herdados"
-#: part/serializers.py:1261
+#: part/serializers.py:1323
msgid "Include BOM items which are inherited from templated parts"
msgstr "Incluir itens LDM que são herdados de peças modelo"
-#: part/serializers.py:1266
+#: part/serializers.py:1328
msgid "Skip Invalid Rows"
msgstr "Pular Linhas inválidas"
-#: part/serializers.py:1267
+#: part/serializers.py:1329
msgid "Enable this option to skip invalid rows"
msgstr "Habilitar esta opção para pular linhas inválidas"
-#: part/serializers.py:1272
+#: part/serializers.py:1334
msgid "Copy Substitute Parts"
msgstr "Copiar Peças Substitutas"
-#: part/serializers.py:1273
+#: part/serializers.py:1335
msgid "Copy substitute parts when duplicate BOM items"
msgstr "Copiar peças de substitutas quando duplicar itens de LDM"
-#: part/serializers.py:1313
+#: part/serializers.py:1375
msgid "Clear Existing BOM"
msgstr "Limpar LDM Existente"
-#: part/serializers.py:1314
+#: part/serializers.py:1376
msgid "Delete existing BOM items before uploading"
msgstr "Apagar itens LDM existentes antes de carregar"
-#: part/serializers.py:1344
+#: part/serializers.py:1406
msgid "No part column specified"
msgstr "Nenhuma coluna de peça especificada"
-#: part/serializers.py:1387
+#: part/serializers.py:1449
msgid "Multiple matching parts found"
msgstr "Múltiplas peças correspondentes encontradas"
-#: part/serializers.py:1390
+#: part/serializers.py:1452
msgid "No matching part found"
msgstr "Nenhuma peça correspondente encontrada"
-#: part/serializers.py:1393
+#: part/serializers.py:1455
msgid "Part is not designated as a component"
msgstr "Peça não está designada como componente"
-#: part/serializers.py:1402
+#: part/serializers.py:1464
msgid "Quantity not provided"
msgstr "Quantidade não foi fornecida"
-#: part/serializers.py:1410
+#: part/serializers.py:1472
msgid "Invalid quantity"
msgstr "Quantidade Inválida"
-#: part/serializers.py:1431
+#: part/serializers.py:1493
msgid "At least one BOM item is required"
msgstr "Pelo menos um item LDM é necessário"
@@ -6421,9 +6453,9 @@ msgstr "Notificação de estoque baixo"
msgid "The available stock for {part.name} has fallen below the configured minimum level"
msgstr "O estoque disponível para {part.name} caiu abaixo do nível mínimo definido"
-#: part/tasks.py:294 templates/js/translated/part.js:1040
-#: templates/js/translated/part.js:1793 templates/js/translated/part.js:1848
-#: templates/js/translated/purchase_order.js:2052
+#: part/tasks.py:294 templates/js/translated/part.js:1039
+#: templates/js/translated/part.js:1792 templates/js/translated/part.js:1847
+#: templates/js/translated/purchase_order.js:2062
msgid "Total Quantity"
msgstr "Quantidade Total"
@@ -6461,14 +6493,6 @@ msgstr "A LDM de %(part)s foi verificada pela última vez por %(checker
msgid "The BOM for %(part)s has not been validated."
msgstr "A LDM para %(part)s não foi validada."
-#: part/templates/part/bom.html:30 part/templates/part/detail.html:291
-msgid "BOM actions"
-msgstr "Ações da LDM"
-
-#: part/templates/part/bom.html:34
-msgid "Delete Items"
-msgstr "Excluir itens"
-
#: part/templates/part/category.html:34
msgid "Perform stocktake for this part category"
msgstr "Fazer balanço de estoque para esta categoria de peça"
@@ -6505,7 +6529,7 @@ msgstr "Excluir Categoria"
msgid "Top level part category"
msgstr "Categoria de peça de nível superior"
-#: part/templates/part/category.html:121 part/templates/part/category.html:225
+#: part/templates/part/category.html:121 part/templates/part/category.html:206
#: part/templates/part/category_sidebar.html:7
msgid "Subcategories"
msgstr "Sub-categorias"
@@ -6518,33 +6542,20 @@ msgstr "Peças (incluindo subcategorias)"
msgid "Create new part"
msgstr "Criar nova peça"
-#: part/templates/part/category.html:165 templates/js/translated/bom.js:443
+#: part/templates/part/category.html:165 templates/js/translated/bom.js:444
msgid "New Part"
msgstr "Nova Peça"
-#: part/templates/part/category.html:175 part/templates/part/detail.html:390
-#: part/templates/part/detail.html:421
-msgid "Options"
-msgstr "Opções"
-
-#: part/templates/part/category.html:179
-msgid "Set category"
-msgstr "Definir categoria"
-
-#: part/templates/part/category.html:180
-msgid "Set Category"
-msgstr "Definir Categoria"
-
-#: part/templates/part/category.html:208
+#: part/templates/part/category.html:191
#: templates/InvenTree/settings/sidebar.html:47
msgid "Part Parameters"
msgstr "Parâmetros da Peça"
-#: part/templates/part/category.html:229
+#: part/templates/part/category.html:210
msgid "Create new part category"
msgstr "Criar categoria de peça"
-#: part/templates/part/category.html:230
+#: part/templates/part/category.html:211
msgid "New Category"
msgstr "Nova Categoria"
@@ -6581,7 +6592,7 @@ msgid "Refresh scheduling data"
msgstr "Atualizar dados de agendamento"
#: part/templates/part/detail.html:45 part/templates/part/prices.html:15
-#: templates/js/translated/tables.js:584
+#: templates/js/translated/tables.js:560
msgid "Refresh"
msgstr "Recarregar"
@@ -6592,7 +6603,7 @@ msgstr "Adicionar informações de balanço de estoque"
#: part/templates/part/detail.html:67 part/templates/part/part_sidebar.html:50
#: stock/admin.py:130 templates/InvenTree/settings/part_stocktake.html:29
#: templates/InvenTree/settings/sidebar.html:51
-#: templates/js/translated/stock.js:1952 users/models.py:39
+#: templates/js/translated/stock.js:2109 users/models.py:39
msgid "Stocktake"
msgstr "Balanço"
@@ -6604,101 +6615,101 @@ msgstr "Modelos de Teste de Peça"
msgid "Add Test Template"
msgstr "Adicionar Modelo de Teste"
-#: part/templates/part/detail.html:145 stock/templates/stock/item.html:53
+#: part/templates/part/detail.html:139 stock/templates/stock/item.html:49
msgid "Sales Order Allocations"
msgstr "Alocações do Pedido de Vendas"
-#: part/templates/part/detail.html:165
+#: part/templates/part/detail.html:156
msgid "Part Notes"
msgstr "Notas de Peça"
-#: part/templates/part/detail.html:180
+#: part/templates/part/detail.html:171
msgid "Part Variants"
msgstr "Variantes de Peça"
-#: part/templates/part/detail.html:184
+#: part/templates/part/detail.html:175
msgid "Create new variant"
msgstr "Criar variante"
-#: part/templates/part/detail.html:185
+#: part/templates/part/detail.html:176
msgid "New Variant"
msgstr "Nova Variação"
-#: part/templates/part/detail.html:212
+#: part/templates/part/detail.html:199
msgid "Add new parameter"
msgstr "Adicionar um novo parâmetro"
-#: part/templates/part/detail.html:249 part/templates/part/part_sidebar.html:58
+#: part/templates/part/detail.html:232 part/templates/part/part_sidebar.html:58
msgid "Related Parts"
msgstr "Peças Relacionadas"
-#: part/templates/part/detail.html:253 part/templates/part/detail.html:254
+#: part/templates/part/detail.html:236 part/templates/part/detail.html:237
msgid "Add Related"
msgstr "Adicionar Relacionado"
-#: part/templates/part/detail.html:274 part/templates/part/part_sidebar.html:17
+#: part/templates/part/detail.html:255 part/templates/part/part_sidebar.html:17
#: report/templates/report/inventree_bill_of_materials_report.html:100
msgid "Bill of Materials"
msgstr "Lista de Materiais"
-#: part/templates/part/detail.html:279
+#: part/templates/part/detail.html:260
msgid "Export actions"
msgstr "Exportar Ações"
-#: part/templates/part/detail.html:283 templates/js/translated/bom.js:339
+#: part/templates/part/detail.html:264 templates/js/translated/bom.js:340
msgid "Export BOM"
msgstr "Exportar LDM"
-#: part/templates/part/detail.html:285
+#: part/templates/part/detail.html:266
msgid "Print BOM Report"
msgstr "Imprimir Relatório da LDM"
-#: part/templates/part/detail.html:295
+#: part/templates/part/detail.html:272
+msgid "BOM actions"
+msgstr "Ações da LDM"
+
+#: part/templates/part/detail.html:276
msgid "Upload BOM"
msgstr "Carregar LDM"
-#: part/templates/part/detail.html:297
+#: part/templates/part/detail.html:278
msgid "Validate BOM"
msgstr "Validar LDM"
-#: part/templates/part/detail.html:302 part/templates/part/detail.html:303
-#: templates/js/translated/bom.js:1279 templates/js/translated/bom.js:1280
+#: part/templates/part/detail.html:283 part/templates/part/detail.html:284
+#: templates/js/translated/bom.js:1299 templates/js/translated/bom.js:1300
msgid "Add BOM Item"
msgstr "Adicionar Item LDM"
-#: part/templates/part/detail.html:316
+#: part/templates/part/detail.html:297
msgid "Assemblies"
msgstr "Montagens"
-#: part/templates/part/detail.html:334
+#: part/templates/part/detail.html:313
msgid "Part Builds"
msgstr "Produções de peça"
-#: part/templates/part/detail.html:361 stock/templates/stock/item.html:38
+#: part/templates/part/detail.html:338 stock/templates/stock/item.html:36
msgid "Build Order Allocations"
msgstr "Alocações de Pedido de Produção"
-#: part/templates/part/detail.html:377
+#: part/templates/part/detail.html:352
msgid "Part Suppliers"
msgstr "Fornecedores da peça"
-#: part/templates/part/detail.html:407
+#: part/templates/part/detail.html:372
msgid "Part Manufacturers"
msgstr "Fabricantes da peça"
-#: part/templates/part/detail.html:423
-msgid "Delete manufacturer parts"
-msgstr "Apagar peças do fabricante"
-
-#: part/templates/part/detail.html:707
+#: part/templates/part/detail.html:654
msgid "Related Part"
msgstr "Peça Relacionada"
-#: part/templates/part/detail.html:715
+#: part/templates/part/detail.html:662
msgid "Add Related Part"
msgstr "Adicionar peça relacionada"
-#: part/templates/part/detail.html:800
+#: part/templates/part/detail.html:747
msgid "Add Test Result Template"
msgstr "Adicionar Modelo de Resultado de Teste"
@@ -6732,13 +6743,13 @@ msgid "Download Part Import Template"
msgstr "Baixar Modelo de Importação de Peça"
#: part/templates/part/import_wizard/part_upload.html:92
-#: templates/js/translated/bom.js:308 templates/js/translated/bom.js:342
+#: templates/js/translated/bom.js:309 templates/js/translated/bom.js:343
#: templates/js/translated/order.js:129 templates/js/translated/tables.js:189
msgid "Format"
msgstr "Formato"
#: part/templates/part/import_wizard/part_upload.html:93
-#: templates/js/translated/bom.js:309 templates/js/translated/bom.js:343
+#: templates/js/translated/bom.js:310 templates/js/translated/bom.js:344
#: templates/js/translated/order.js:130
msgid "Select file format"
msgstr "Selecione o formato de arquivo"
@@ -6779,7 +6790,7 @@ msgstr "Contagem peça em estoque"
msgid "Transfer part stock"
msgstr "Transferir estoque de peça"
-#: part/templates/part/part_base.html:93
+#: part/templates/part/part_base.html:93 templates/js/translated/part.js:2264
msgid "Part actions"
msgstr "Ações de peça"
@@ -6824,10 +6835,10 @@ msgid "Part is not active"
msgstr "Item bloqueado"
#: part/templates/part/part_base.html:148
-#: templates/js/translated/company.js:945
-#: templates/js/translated/company.js:1185
-#: templates/js/translated/model_renderers.js:273
-#: templates/js/translated/part.js:792 templates/js/translated/part.js:1192
+#: templates/js/translated/company.js:1318
+#: templates/js/translated/company.js:1606
+#: templates/js/translated/model_renderers.js:287
+#: templates/js/translated/part.js:791 templates/js/translated/part.js:1191
msgid "Inactive"
msgstr "Inativo"
@@ -6850,7 +6861,7 @@ msgstr "Alocado para Pedidos de Construção"
msgid "Allocated to Sales Orders"
msgstr "Alocado para Pedidos de Venda"
-#: part/templates/part/part_base.html:237 templates/js/translated/bom.js:1178
+#: part/templates/part/part_base.html:237 templates/js/translated/bom.js:1198
msgid "Can Build"
msgstr "Pode Produzir"
@@ -6858,8 +6869,8 @@ msgstr "Pode Produzir"
msgid "Minimum stock level"
msgstr "Nível mínimo de estoque"
-#: part/templates/part/part_base.html:324 templates/js/translated/bom.js:1041
-#: templates/js/translated/part.js:1238 templates/js/translated/part.js:2304
+#: part/templates/part/part_base.html:324 templates/js/translated/bom.js:1059
+#: templates/js/translated/part.js:1237 templates/js/translated/part.js:2380
#: templates/js/translated/pricing.js:391
#: templates/js/translated/pricing.js:1040
msgid "Price Range"
@@ -6882,7 +6893,7 @@ msgstr "QR Code da Peça"
msgid "Link Barcode to Part"
msgstr "Vincular Código de Barras à Peça"
-#: part/templates/part/part_base.html:474 templates/js/translated/part.js:2191
+#: part/templates/part/part_base.html:474 templates/js/translated/part.js:2258
msgid "part"
msgstr "peça"
@@ -6956,9 +6967,9 @@ msgstr "Variantes"
#: stock/templates/stock/stock_app_base.html:10
#: templates/InvenTree/search.html:153
#: templates/InvenTree/settings/sidebar.html:49
-#: templates/js/translated/part.js:1216 templates/js/translated/part.js:2120
-#: templates/js/translated/part.js:2284 templates/js/translated/stock.js:1022
-#: templates/js/translated/stock.js:1829 templates/navbar.html:31
+#: templates/js/translated/part.js:1215 templates/js/translated/part.js:2119
+#: templates/js/translated/part.js:2360 templates/js/translated/stock.js:1021
+#: templates/js/translated/stock.js:1986 templates/navbar.html:31
msgid "Stock"
msgstr "Estoque"
@@ -6989,9 +7000,9 @@ msgstr "Atualizar Preço da Peça"
#: part/templates/part/prices.html:25 stock/admin.py:129
#: stock/templates/stock/item_base.html:442
-#: templates/js/translated/company.js:1313
-#: templates/js/translated/company.js:1323
-#: templates/js/translated/stock.js:1982
+#: templates/js/translated/company.js:1734
+#: templates/js/translated/company.js:1744
+#: templates/js/translated/stock.js:2139
msgid "Last Updated"
msgstr "Última atualização"
@@ -7054,12 +7065,12 @@ msgstr "Preço de Venda"
msgid "Add Sell Price Break"
msgstr "Adicionar intervalo de preço de venda"
-#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:682
-#: templates/js/translated/part.js:2115 templates/js/translated/part.js:2117
+#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:681
+#: templates/js/translated/part.js:2114 templates/js/translated/part.js:2116
msgid "No Stock"
msgstr "Sem Estoque"
-#: part/templates/part/stock_count.html:9 templates/InvenTree/index.html:167
+#: part/templates/part/stock_count.html:9 templates/InvenTree/index.html:120
msgid "Low Stock"
msgstr "Estoque Baixo"
@@ -7163,7 +7174,7 @@ msgid "Match found for barcode data"
msgstr "Coincidência encontrada para dados de código de barras"
#: plugin/base/barcodes/api.py:120
-#: templates/js/translated/purchase_order.js:1372
+#: templates/js/translated/purchase_order.js:1387
msgid "Barcode matches existing item"
msgstr "Código de barras corresponde ao item existente"
@@ -7226,43 +7237,43 @@ msgstr "URL usada para enviar mensagens para um canal do Slack"
msgid "Open link"
msgstr "Abrir link"
-#: plugin/models.py:27
+#: plugin/models.py:28
msgid "Plugin Configuration"
msgstr "Configuração de Extensão"
-#: plugin/models.py:28
+#: plugin/models.py:29
msgid "Plugin Configurations"
msgstr "Configuração de Extensões"
-#: plugin/models.py:33
+#: plugin/models.py:34
msgid "Key"
msgstr "Chave"
-#: plugin/models.py:34
+#: plugin/models.py:35
msgid "Key of plugin"
msgstr "Chave da extensão"
-#: plugin/models.py:42
+#: plugin/models.py:43
msgid "PluginName of the plugin"
msgstr "Nome da Extensão"
-#: plugin/models.py:48
+#: plugin/models.py:49
msgid "Is the plugin active"
msgstr "O plug-in está ativo"
-#: plugin/models.py:124
+#: plugin/models.py:125
msgid "Sample plugin"
msgstr "Plug-in de exemplo"
-#: plugin/models.py:133
+#: plugin/models.py:134
msgid "Builtin Plugin"
msgstr "Plugin embutido"
-#: plugin/models.py:159 templates/InvenTree/settings/plugin_settings.html:9
+#: plugin/models.py:160 templates/InvenTree/settings/plugin_settings.html:9
msgid "Plugin"
msgstr "Extensões"
-#: plugin/models.py:210
+#: plugin/models.py:211
msgid "Method"
msgstr "Método"
@@ -7414,47 +7425,47 @@ msgstr "Filtros de Produção"
msgid "Build query filters (comma-separated list of key=value pairs"
msgstr "Filtros de consulta de produção (lista de valores separados por vírgula"
-#: report/models.py:418
+#: report/models.py:420
msgid "Part Filters"
msgstr "Filtros de Peças"
-#: report/models.py:419
+#: report/models.py:421
msgid "Part query filters (comma-separated list of key=value pairs"
msgstr "Filtros de consulta de peças (lista de valores separados por vírgula"
-#: report/models.py:453
+#: report/models.py:455
msgid "Purchase order query filters"
msgstr "Filtros de consultas de pedidos de compra"
-#: report/models.py:491
+#: report/models.py:493
msgid "Sales order query filters"
msgstr "Filtros de consultas de pedidos de venda"
-#: report/models.py:529
+#: report/models.py:531
msgid "Return order query filters"
msgstr "Filtrar pesquisa de itens devolvidos"
-#: report/models.py:582
+#: report/models.py:584
msgid "Snippet"
msgstr "Recorte"
-#: report/models.py:583
+#: report/models.py:585
msgid "Report snippet file"
msgstr "Relatar arquivo de recorte"
-#: report/models.py:587
+#: report/models.py:589
msgid "Snippet file description"
msgstr "Descrição do arquivo de recorte"
-#: report/models.py:624
+#: report/models.py:626
msgid "Asset"
msgstr "Ativos"
-#: report/models.py:625
+#: report/models.py:627
msgid "Report asset file"
msgstr "Reportar arquivo de ativos"
-#: report/models.py:632
+#: report/models.py:634
msgid "Asset file description"
msgstr "Descrição do arquivo de ativos"
@@ -7475,8 +7486,8 @@ msgstr "Fornecedor foi excluído"
#: templates/js/translated/order.js:316 templates/js/translated/pricing.js:527
#: templates/js/translated/pricing.js:596
#: templates/js/translated/pricing.js:820
-#: templates/js/translated/purchase_order.js:2083
-#: templates/js/translated/sales_order.js:1817
+#: templates/js/translated/purchase_order.js:2093
+#: templates/js/translated/sales_order.js:1829
msgid "Unit Price"
msgstr "Preço unitário"
@@ -7488,23 +7499,23 @@ msgstr "Extra Itens de Linha"
#: report/templates/report/inventree_po_report_base.html:72
#: report/templates/report/inventree_so_report_base.html:72
-#: templates/js/translated/purchase_order.js:1985
-#: templates/js/translated/sales_order.js:1792
+#: templates/js/translated/purchase_order.js:1995
+#: templates/js/translated/sales_order.js:1804
msgid "Total"
msgstr "Total"
#: report/templates/report/inventree_return_order_report_base.html:25
#: report/templates/report/inventree_test_report_base.html:88
#: stock/models.py:725 stock/templates/stock/item_base.html:312
-#: templates/js/translated/build.js:502 templates/js/translated/build.js:1423
-#: templates/js/translated/build.js:1989
-#: templates/js/translated/model_renderers.js:201
-#: templates/js/translated/return_order.js:528
-#: templates/js/translated/return_order.js:708
-#: templates/js/translated/sales_order.js:300
-#: templates/js/translated/sales_order.js:1597
-#: templates/js/translated/sales_order.js:1682
-#: templates/js/translated/stock.js:563
+#: templates/js/translated/build.js:508 templates/js/translated/build.js:1306
+#: templates/js/translated/build.js:2281
+#: templates/js/translated/model_renderers.js:215
+#: templates/js/translated/return_order.js:540
+#: templates/js/translated/return_order.js:720
+#: templates/js/translated/sales_order.js:312
+#: templates/js/translated/sales_order.js:1609
+#: templates/js/translated/sales_order.js:1694
+#: templates/js/translated/stock.js:562
msgid "Serial Number"
msgstr "Número de Sério"
@@ -7517,7 +7528,7 @@ msgid "Test Results"
msgstr "Resultados do teste"
#: report/templates/report/inventree_test_report_base.html:102
-#: stock/models.py:2243 templates/js/translated/stock.js:1419
+#: stock/models.py:2243 templates/js/translated/stock.js:1418
msgid "Test"
msgstr "Teste"
@@ -7548,8 +7559,8 @@ msgid "Installed Items"
msgstr "Itens instalados"
#: report/templates/report/inventree_test_report_base.html:168
-#: stock/admin.py:104 templates/js/translated/stock.js:667
-#: templates/js/translated/stock.js:838 templates/js/translated/stock.js:2849
+#: stock/admin.py:104 templates/js/translated/stock.js:666
+#: templates/js/translated/stock.js:837 templates/js/translated/stock.js:2976
msgid "Serial"
msgstr "Série"
@@ -7617,31 +7628,31 @@ msgstr "Excluir quando esgotado"
#: stock/admin.py:131 stock/models.py:789
#: stock/templates/stock/item_base.html:429
-#: templates/js/translated/stock.js:1966
+#: templates/js/translated/stock.js:2123
msgid "Expiry Date"
msgstr "Data de validade"
-#: stock/api.py:420 templates/js/translated/table_filters.js:373
+#: stock/api.py:426 templates/js/translated/table_filters.js:379
msgid "External Location"
msgstr "Localização externa"
-#: stock/api.py:582
+#: stock/api.py:619
msgid "Quantity is required"
msgstr "Quantidade obrigatória"
-#: stock/api.py:589
+#: stock/api.py:626
msgid "Valid part must be supplied"
msgstr "Uma peça válida deve ser fornecida"
-#: stock/api.py:615
+#: stock/api.py:652
msgid "The given supplier part does not exist"
msgstr ""
-#: stock/api.py:624
+#: stock/api.py:661
msgid "The supplier part has a pack size defined, but flag use_pack_size not set"
msgstr ""
-#: stock/api.py:642
+#: stock/api.py:679
msgid "Serial numbers cannot be supplied for a non-trackable part"
msgstr "Números de série não podem ser fornecidos para uma parte não rastreável"
@@ -7652,7 +7663,7 @@ msgid "Stock Location"
msgstr "Localizacao do estoque"
#: stock/models.py:55 stock/templates/stock/location.html:177
-#: templates/InvenTree/search.html:166 templates/js/translated/search.js:220
+#: templates/InvenTree/search.html:166 templates/js/translated/search.js:178
#: users/models.py:40
msgid "Stock Locations"
msgstr "Locais de estoque"
@@ -7670,8 +7681,8 @@ msgstr "Selecionar Responsável"
msgid "Stock items may not be directly located into a structural stock locations, but may be located to child locations."
msgstr "Os itens de estoque podem não estar diretamente localizados em um local de estoque estrutural, mas podem ser localizados em locais filhos."
-#: stock/models.py:132 templates/js/translated/stock.js:2529
-#: templates/js/translated/table_filters.js:213
+#: stock/models.py:132 templates/js/translated/stock.js:2660
+#: templates/js/translated/table_filters.js:219
msgid "External"
msgstr "Externo"
@@ -7687,7 +7698,7 @@ msgstr "Você não pode tornar este local do estoque estrutural, pois alguns ite
msgid "Stock items cannot be located into structural stock locations!"
msgstr "Os itens de estoque não podem estar localizados em locais de estoque estrutural!"
-#: stock/models.py:583 stock/serializers.py:174
+#: stock/models.py:583 stock/serializers.py:223
msgid "Stock item cannot be created for virtual parts"
msgstr "Item de estoque não pode ser criado para peças virtuais"
@@ -7821,7 +7832,7 @@ msgstr "Números de série devem ser uma lista de números inteiros"
msgid "Quantity does not match serial numbers"
msgstr "A quantidade não corresponde aos números de série"
-#: stock/models.py:1403 stock/serializers.py:374
+#: stock/models.py:1403 stock/serializers.py:440
msgid "Serial numbers already exist"
msgstr "Números de série já existem"
@@ -7849,7 +7860,7 @@ msgstr "Item no estoque está em produção no momento"
msgid "Serialized stock cannot be merged"
msgstr "Itens de série não podem ser mesclados"
-#: stock/models.py:1496 stock/serializers.py:975
+#: stock/models.py:1496 stock/serializers.py:1092
msgid "Duplicate stock items"
msgstr "Item de estoque duplicado"
@@ -7901,132 +7912,141 @@ msgstr "Anexo do resultado do teste"
msgid "Test notes"
msgstr "Notas do teste"
-#: stock/serializers.py:76
+#: stock/serializers.py:121
msgid "Serial number is too large"
msgstr "Número de série é muito grande"
-#: stock/serializers.py:166
+#: stock/serializers.py:215
msgid "Use pack size when adding: the quantity defined is the number of packs"
msgstr ""
-#: stock/serializers.py:254
+#: stock/serializers.py:316
msgid "Purchase price of this stock item, per unit or pack"
msgstr ""
-#: stock/serializers.py:307
+#: stock/serializers.py:373
msgid "Enter number of stock items to serialize"
msgstr "Insira o número de itens de estoque para serializar"
-#: stock/serializers.py:319
+#: stock/serializers.py:385
#, python-brace-format
msgid "Quantity must not exceed available stock quantity ({q})"
msgstr "Quantidade não deve exceder a quantidade disponível em estoque ({q})"
-#: stock/serializers.py:325
+#: stock/serializers.py:391
msgid "Enter serial numbers for new items"
msgstr "Inserir número de série para novos itens"
-#: stock/serializers.py:336 stock/serializers.py:932 stock/serializers.py:1174
+#: stock/serializers.py:402 stock/serializers.py:1049 stock/serializers.py:1291
msgid "Destination stock location"
msgstr "Local de destino do estoque"
-#: stock/serializers.py:343
+#: stock/serializers.py:409
msgid "Optional note field"
msgstr "Campo opcional de notas"
-#: stock/serializers.py:353
+#: stock/serializers.py:419
msgid "Serial numbers cannot be assigned to this part"
msgstr "Números de série não podem ser atribuídos a esta peça"
-#: stock/serializers.py:414
+#: stock/serializers.py:480
msgid "Select stock item to install"
msgstr "Selecione o item de estoque para instalar"
-#: stock/serializers.py:427
-msgid "Stock item is unavailable"
-msgstr "Item de estoque indisponível"
-
-#: stock/serializers.py:434
-msgid "Selected part is not in the Bill of Materials"
-msgstr "Peça selecionada não está na Lista de Materiais"
-
-#: stock/serializers.py:471
-msgid "Destination location for uninstalled item"
-msgstr "Local de destino para o item desinstalado"
-
-#: stock/serializers.py:476 stock/serializers.py:557
+#: stock/serializers.py:485 stock/serializers.py:543 stock/serializers.py:624
+#: stock/serializers.py:682
msgid "Add transaction note (optional)"
msgstr "Adicionar nota de transação (opcional)"
-#: stock/serializers.py:510
+#: stock/serializers.py:494
+msgid "Stock item is unavailable"
+msgstr "Item de estoque indisponível"
+
+#: stock/serializers.py:501
+msgid "Selected part is not in the Bill of Materials"
+msgstr "Peça selecionada não está na Lista de Materiais"
+
+#: stock/serializers.py:538
+msgid "Destination location for uninstalled item"
+msgstr "Local de destino para o item desinstalado"
+
+#: stock/serializers.py:577
msgid "Select part to convert stock item into"
msgstr "Selecione peça para converter o item de estoque em"
-#: stock/serializers.py:521
+#: stock/serializers.py:588
msgid "Selected part is not a valid option for conversion"
msgstr "Peça selecionada não é uma opção válida para conversão"
-#: stock/serializers.py:552
+#: stock/serializers.py:619
msgid "Destination location for returned item"
msgstr "Local de destino para item retornado"
-#: stock/serializers.py:787
+#: stock/serializers.py:663
+msgid "Select stock items to change status"
+msgstr ""
+
+#: stock/serializers.py:670
+msgid "No stock items selected"
+msgstr ""
+
+#: stock/serializers.py:904
msgid "Part must be salable"
msgstr "Parte deve ser comercializável"
-#: stock/serializers.py:791
+#: stock/serializers.py:908
msgid "Item is allocated to a sales order"
msgstr "Item é alocado para um pedido de venda"
-#: stock/serializers.py:795
+#: stock/serializers.py:912
msgid "Item is allocated to a build order"
msgstr "Item está alocado a um pedido de produção"
-#: stock/serializers.py:826
+#: stock/serializers.py:943
msgid "Customer to assign stock items"
msgstr "Cliente para atribuir itens de estoque"
-#: stock/serializers.py:832
+#: stock/serializers.py:949
msgid "Selected company is not a customer"
msgstr "A empresa selecionada não é um cliente"
-#: stock/serializers.py:840
+#: stock/serializers.py:957
msgid "Stock assignment notes"
msgstr ""
-#: stock/serializers.py:850 stock/serializers.py:1081
+#: stock/serializers.py:967 stock/serializers.py:1198
msgid "A list of stock items must be provided"
msgstr ""
-#: stock/serializers.py:939
+#: stock/serializers.py:1056
msgid "Stock merging notes"
msgstr ""
-#: stock/serializers.py:944
+#: stock/serializers.py:1061
msgid "Allow mismatched suppliers"
msgstr ""
-#: stock/serializers.py:945
+#: stock/serializers.py:1062
msgid "Allow stock items with different supplier parts to be merged"
msgstr ""
-#: stock/serializers.py:950
+#: stock/serializers.py:1067
msgid "Allow mismatched status"
msgstr "Permitir estado incompatível"
-#: stock/serializers.py:951
+#: stock/serializers.py:1068
msgid "Allow stock items with different status codes to be merged"
msgstr "Permitir a fusão de itens de estoque com estado diferentes"
-#: stock/serializers.py:961
+#: stock/serializers.py:1078
msgid "At least two stock items must be provided"
msgstr ""
-#: stock/serializers.py:1043
+#: stock/serializers.py:1160
msgid "StockItem primary key value"
msgstr ""
-#: stock/serializers.py:1071
+#: stock/serializers.py:1188
msgid "Stock transaction notes"
msgstr ""
@@ -8034,48 +8054,48 @@ msgstr ""
msgid "Stock Tracking Information"
msgstr ""
-#: stock/templates/stock/item.html:69
+#: stock/templates/stock/item.html:63
msgid "Child Stock Items"
msgstr ""
-#: stock/templates/stock/item.html:77
+#: stock/templates/stock/item.html:71
msgid "This stock item does not have any child items"
msgstr ""
-#: stock/templates/stock/item.html:86
+#: stock/templates/stock/item.html:80
#: stock/templates/stock/stock_sidebar.html:12
msgid "Test Data"
msgstr ""
-#: stock/templates/stock/item.html:90 stock/templates/stock/item_base.html:66
+#: stock/templates/stock/item.html:84 stock/templates/stock/item_base.html:66
msgid "Test Report"
msgstr ""
-#: stock/templates/stock/item.html:94 stock/templates/stock/item.html:288
+#: stock/templates/stock/item.html:88 stock/templates/stock/item.html:278
msgid "Delete Test Data"
msgstr ""
-#: stock/templates/stock/item.html:98
+#: stock/templates/stock/item.html:92
msgid "Add Test Data"
msgstr ""
-#: stock/templates/stock/item.html:132
+#: stock/templates/stock/item.html:124
msgid "Stock Item Notes"
msgstr "Notas de Item Estoque"
-#: stock/templates/stock/item.html:147
+#: stock/templates/stock/item.html:139
msgid "Installed Stock Items"
msgstr ""
-#: stock/templates/stock/item.html:152 templates/js/translated/stock.js:2996
+#: stock/templates/stock/item.html:144 templates/js/translated/stock.js:3123
msgid "Install Stock Item"
msgstr ""
-#: stock/templates/stock/item.html:276
+#: stock/templates/stock/item.html:266
msgid "Delete all test results for this stock item"
msgstr ""
-#: stock/templates/stock/item.html:305 templates/js/translated/stock.js:1611
+#: stock/templates/stock/item.html:295 templates/js/translated/stock.js:1610
msgid "Add Test Result"
msgstr ""
@@ -8083,13 +8103,13 @@ msgstr ""
msgid "Locate stock item"
msgstr ""
-#: stock/templates/stock/item_base.html:52 templates/stock_table.html:21
+#: stock/templates/stock/item_base.html:52
msgid "Scan to Location"
msgstr ""
#: stock/templates/stock/item_base.html:60
#: stock/templates/stock/location.html:69
-#: templates/js/translated/filters.js:322
+#: templates/js/translated/filters.js:432
msgid "Printing actions"
msgstr ""
@@ -8098,15 +8118,17 @@ msgid "Stock adjustment actions"
msgstr ""
#: stock/templates/stock/item_base.html:80
-#: stock/templates/stock/location.html:88 templates/stock_table.html:35
+#: stock/templates/stock/location.html:88 templates/js/translated/stock.js:1735
msgid "Count stock"
msgstr ""
-#: stock/templates/stock/item_base.html:82 templates/stock_table.html:33
+#: stock/templates/stock/item_base.html:82
+#: templates/js/translated/stock.js:1717
msgid "Add stock"
msgstr "Adicionar estoque"
-#: stock/templates/stock/item_base.html:83 templates/stock_table.html:34
+#: stock/templates/stock/item_base.html:83
+#: templates/js/translated/stock.js:1726
msgid "Remove stock"
msgstr "Remover estoque"
@@ -8115,11 +8137,12 @@ msgid "Serialize stock"
msgstr "Serializar estoque"
#: stock/templates/stock/item_base.html:89
-#: stock/templates/stock/location.html:94 templates/stock_table.html:36
+#: stock/templates/stock/location.html:94 templates/js/translated/stock.js:1744
msgid "Transfer stock"
msgstr "Transferir estoque"
-#: stock/templates/stock/item_base.html:92 templates/stock_table.html:39
+#: stock/templates/stock/item_base.html:92
+#: templates/js/translated/stock.js:1798
msgid "Assign to customer"
msgstr "Disponibilizar para o cliente"
@@ -8159,6 +8182,11 @@ msgstr "Editar item de estoque"
msgid "Delete stock item"
msgstr "Excluir item de estoque"
+#: stock/templates/stock/item_base.html:170 templates/InvenTree/search.html:139
+#: templates/js/translated/build.js:2046 templates/navbar.html:38
+msgid "Build"
+msgstr "Produção"
+
#: stock/templates/stock/item_base.html:194
msgid "Parent Item"
msgstr "Item Primário"
@@ -8221,7 +8249,7 @@ msgid "Available Quantity"
msgstr ""
#: stock/templates/stock/item_base.html:394
-#: templates/js/translated/build.js:2015
+#: templates/js/translated/build.js:2306
msgid "No location set"
msgstr ""
@@ -8239,7 +8267,7 @@ msgid "This StockItem expired on %(item.expiry_date)s"
msgstr ""
#: stock/templates/stock/item_base.html:433
-#: templates/js/translated/table_filters.js:381
+#: templates/js/translated/table_filters.js:387
msgid "Expired"
msgstr ""
@@ -8249,7 +8277,7 @@ msgid "This StockItem expires on %(item.expiry_date)s"
msgstr ""
#: stock/templates/stock/item_base.html:435
-#: templates/js/translated/table_filters.js:387
+#: templates/js/translated/table_filters.js:393
msgid "Stale"
msgstr "Inativo"
@@ -8258,7 +8286,7 @@ msgid "No stocktake performed"
msgstr "Nenhum balanço feito"
#: stock/templates/stock/item_base.html:503
-#: templates/js/translated/stock.js:1745
+#: templates/js/translated/stock.js:1865
msgid "stock item"
msgstr ""
@@ -8364,20 +8392,20 @@ msgstr ""
msgid "New Location"
msgstr ""
-#: stock/templates/stock/location.html:287
-#: templates/js/translated/stock.js:2318
+#: stock/templates/stock/location.html:278
+#: templates/js/translated/stock.js:2449
msgid "stock location"
msgstr ""
-#: stock/templates/stock/location.html:304
+#: stock/templates/stock/location.html:295
msgid "Scanned stock container into this location"
msgstr ""
-#: stock/templates/stock/location.html:377
+#: stock/templates/stock/location.html:368
msgid "Stock Location QR Code"
msgstr ""
-#: stock/templates/stock/location.html:388
+#: stock/templates/stock/location.html:379
msgid "Link Barcode to Stock Location"
msgstr ""
@@ -8451,71 +8479,71 @@ msgstr ""
msgid "Index"
msgstr ""
-#: templates/InvenTree/index.html:89
+#: templates/InvenTree/index.html:39
msgid "Subscribed Parts"
msgstr ""
-#: templates/InvenTree/index.html:102
+#: templates/InvenTree/index.html:53
msgid "Subscribed Categories"
msgstr ""
-#: templates/InvenTree/index.html:112
+#: templates/InvenTree/index.html:63
msgid "Latest Parts"
msgstr ""
-#: templates/InvenTree/index.html:126
+#: templates/InvenTree/index.html:78
msgid "BOM Waiting Validation"
msgstr ""
-#: templates/InvenTree/index.html:155
+#: templates/InvenTree/index.html:107
msgid "Recently Updated"
msgstr ""
-#: templates/InvenTree/index.html:180
+#: templates/InvenTree/index.html:134
msgid "Depleted Stock"
msgstr ""
-#: templates/InvenTree/index.html:193
+#: templates/InvenTree/index.html:148
msgid "Required for Build Orders"
msgstr ""
-#: templates/InvenTree/index.html:208
+#: templates/InvenTree/index.html:156
msgid "Expired Stock"
msgstr ""
-#: templates/InvenTree/index.html:222
+#: templates/InvenTree/index.html:172
msgid "Stale Stock"
msgstr "Estoque Inativo"
-#: templates/InvenTree/index.html:247
+#: templates/InvenTree/index.html:199
msgid "Build Orders In Progress"
msgstr ""
-#: templates/InvenTree/index.html:258
+#: templates/InvenTree/index.html:210
msgid "Overdue Build Orders"
msgstr ""
-#: templates/InvenTree/index.html:278
+#: templates/InvenTree/index.html:230
msgid "Outstanding Purchase Orders"
msgstr ""
-#: templates/InvenTree/index.html:289
+#: templates/InvenTree/index.html:241
msgid "Overdue Purchase Orders"
msgstr ""
-#: templates/InvenTree/index.html:310
+#: templates/InvenTree/index.html:262
msgid "Outstanding Sales Orders"
msgstr ""
-#: templates/InvenTree/index.html:321
+#: templates/InvenTree/index.html:273
msgid "Overdue Sales Orders"
msgstr ""
-#: templates/InvenTree/index.html:347
+#: templates/InvenTree/index.html:299
msgid "InvenTree News"
msgstr ""
-#: templates/InvenTree/index.html:349
+#: templates/InvenTree/index.html:301
msgid "Current News"
msgstr ""
@@ -8672,29 +8700,29 @@ msgstr ""
msgid "Changing the settings below require you to immediately restart the server. Do not change this while under active usage."
msgstr ""
-#: templates/InvenTree/settings/plugin.html:37
+#: templates/InvenTree/settings/plugin.html:35
#: templates/InvenTree/settings/sidebar.html:64
msgid "Plugins"
msgstr ""
-#: templates/InvenTree/settings/plugin.html:43
+#: templates/InvenTree/settings/plugin.html:41
#: templates/js/translated/plugin.js:151
msgid "Install Plugin"
msgstr ""
-#: templates/InvenTree/settings/plugin.html:51
+#: templates/InvenTree/settings/plugin.html:49
msgid "External plugins are not enabled for this InvenTree installation"
msgstr ""
-#: templates/InvenTree/settings/plugin.html:70
+#: templates/InvenTree/settings/plugin.html:64
msgid "Plugin Error Stack"
msgstr ""
-#: templates/InvenTree/settings/plugin.html:79
+#: templates/InvenTree/settings/plugin.html:73
msgid "Stage"
msgstr ""
-#: templates/InvenTree/settings/plugin.html:81
+#: templates/InvenTree/settings/plugin.html:75
#: templates/js/translated/notification.js:75
msgid "Message"
msgstr ""
@@ -8767,14 +8795,6 @@ msgstr ""
msgid "Commit Message"
msgstr ""
-#: templates/InvenTree/settings/plugin_settings.html:126
-msgid "Sign Status"
-msgstr "Placa da Situação"
-
-#: templates/InvenTree/settings/plugin_settings.html:131
-msgid "Sign Key"
-msgstr ""
-
#: templates/InvenTree/settings/po.html:7
msgid "Purchase Order Settings"
msgstr ""
@@ -8870,12 +8890,12 @@ msgid "No category parameter templates found"
msgstr ""
#: templates/InvenTree/settings/settings_staff_js.html:212
-#: templates/js/translated/part.js:1618
+#: templates/js/translated/part.js:1617
msgid "Edit Template"
msgstr ""
#: templates/InvenTree/settings/settings_staff_js.html:213
-#: templates/js/translated/part.js:1619
+#: templates/js/translated/part.js:1618
msgid "Delete Template"
msgstr ""
@@ -8913,7 +8933,7 @@ msgid "Home Page"
msgstr ""
#: templates/InvenTree/settings/sidebar.html:15
-#: templates/js/translated/tables.js:575 templates/navbar.html:107
+#: templates/js/translated/tables.js:551 templates/navbar.html:107
#: templates/search.html:8 templates/search_form.html:6
#: templates/search_form.html:7
msgid "Search"
@@ -8990,6 +9010,7 @@ msgid "Unverified"
msgstr ""
#: templates/InvenTree/settings/user.html:80
+#: templates/js/translated/company.js:984
msgid "Primary"
msgstr ""
@@ -9204,44 +9225,48 @@ msgstr ""
msgid "Update Available"
msgstr ""
-#: templates/about.html:42
+#: templates/about.html:43
+msgid "Commit Branch"
+msgstr ""
+
+#: templates/about.html:49
msgid "InvenTree Documentation"
msgstr ""
-#: templates/about.html:47
+#: templates/about.html:54
msgid "API Version"
msgstr ""
-#: templates/about.html:52
+#: templates/about.html:59
msgid "Python Version"
msgstr ""
-#: templates/about.html:57
+#: templates/about.html:64
msgid "Django Version"
msgstr ""
-#: templates/about.html:62
+#: templates/about.html:69
msgid "View Code on GitHub"
msgstr ""
-#: templates/about.html:67
+#: templates/about.html:74
msgid "Credits"
msgstr ""
-#: templates/about.html:72
+#: templates/about.html:79
msgid "Mobile App"
msgstr ""
-#: templates/about.html:77
+#: templates/about.html:84
msgid "Submit Bug Report"
msgstr ""
-#: templates/about.html:84 templates/clip.html:4
+#: templates/about.html:91 templates/clip.html:4
#: templates/js/translated/helpers.js:585
msgid "copy to clipboard"
msgstr ""
-#: templates/about.html:84
+#: templates/about.html:91
msgid "copy version information"
msgstr ""
@@ -9435,14 +9460,6 @@ msgstr ""
msgid "Add Attachment"
msgstr ""
-#: templates/attachment_table.html:11
-msgid "Delete selected attachments"
-msgstr ""
-
-#: templates/attachment_table.html:12 templates/js/translated/attachment.js:129
-msgid "Delete Attachments"
-msgstr ""
-
#: templates/barcode_data.html:5
msgid "Barcode Identifier"
msgstr "Identificador de Código de Barras"
@@ -9487,7 +9504,7 @@ msgid "The following parts are low on required stock"
msgstr ""
#: templates/email/build_order_required_stock.html:18
-#: templates/js/translated/bom.js:1633
+#: templates/js/translated/bom.js:1653 templates/js/translated/build.js:2485
msgid "Required Quantity"
msgstr ""
@@ -9501,7 +9518,7 @@ msgid "Click on the following link to view this part"
msgstr ""
#: templates/email/low_stock_notification.html:18
-#: templates/js/translated/part.js:3140
+#: templates/js/translated/part.js:3125
msgid "Minimum Quantity"
msgstr ""
@@ -9573,23 +9590,35 @@ msgstr ""
msgid "All selected attachments will be deleted"
msgstr ""
-#: templates/js/translated/attachment.js:255
+#: templates/js/translated/attachment.js:129
+msgid "Delete Attachments"
+msgstr ""
+
+#: templates/js/translated/attachment.js:205
+msgid "Delete attachments"
+msgstr ""
+
+#: templates/js/translated/attachment.js:253
+msgid "Attachment actions"
+msgstr ""
+
+#: templates/js/translated/attachment.js:275
msgid "No attachments found"
msgstr ""
-#: templates/js/translated/attachment.js:285
+#: templates/js/translated/attachment.js:305
msgid "Edit Attachment"
msgstr ""
-#: templates/js/translated/attachment.js:326
+#: templates/js/translated/attachment.js:336
msgid "Upload Date"
msgstr ""
-#: templates/js/translated/attachment.js:346
+#: templates/js/translated/attachment.js:356
msgid "Edit attachment"
msgstr ""
-#: templates/js/translated/attachment.js:354
+#: templates/js/translated/attachment.js:364
msgid "Delete attachment"
msgstr ""
@@ -9646,7 +9675,7 @@ msgstr ""
msgid "Unlink"
msgstr ""
-#: templates/js/translated/barcode.js:550 templates/js/translated/stock.js:1118
+#: templates/js/translated/barcode.js:550 templates/js/translated/stock.js:1117
msgid "Remove stock item"
msgstr ""
@@ -9704,775 +9733,869 @@ msgstr ""
msgid "Barcode does not match a valid location"
msgstr ""
-#: templates/js/translated/bom.js:77
+#: templates/js/translated/bom.js:78
msgid "Create BOM Item"
msgstr ""
-#: templates/js/translated/bom.js:131
+#: templates/js/translated/bom.js:132
msgid "Display row data"
msgstr ""
-#: templates/js/translated/bom.js:187
+#: templates/js/translated/bom.js:188
msgid "Row Data"
msgstr ""
-#: templates/js/translated/bom.js:188 templates/js/translated/bom.js:699
+#: templates/js/translated/bom.js:189 templates/js/translated/bom.js:700
#: templates/js/translated/modals.js:71 templates/js/translated/modals.js:622
#: templates/js/translated/modals.js:746 templates/js/translated/modals.js:1054
-#: templates/js/translated/purchase_order.js:791 templates/modals.html:15
+#: templates/js/translated/purchase_order.js:802 templates/modals.html:15
#: templates/modals.html:27 templates/modals.html:39 templates/modals.html:50
msgid "Close"
msgstr ""
-#: templates/js/translated/bom.js:305
+#: templates/js/translated/bom.js:306
msgid "Download BOM Template"
msgstr ""
-#: templates/js/translated/bom.js:350
+#: templates/js/translated/bom.js:351
msgid "Multi Level BOM"
msgstr ""
-#: templates/js/translated/bom.js:351
+#: templates/js/translated/bom.js:352
msgid "Include BOM data for subassemblies"
msgstr ""
-#: templates/js/translated/bom.js:356
+#: templates/js/translated/bom.js:357
msgid "Levels"
msgstr ""
-#: templates/js/translated/bom.js:357
+#: templates/js/translated/bom.js:358
msgid "Select maximum number of BOM levels to export (0 = all levels)"
msgstr ""
-#: templates/js/translated/bom.js:364
+#: templates/js/translated/bom.js:365
msgid "Include Alternative Parts"
msgstr ""
-#: templates/js/translated/bom.js:365
+#: templates/js/translated/bom.js:366
msgid "Include alternative parts in exported BOM"
msgstr ""
-#: templates/js/translated/bom.js:370
+#: templates/js/translated/bom.js:371
msgid "Include Parameter Data"
msgstr ""
-#: templates/js/translated/bom.js:371
+#: templates/js/translated/bom.js:372
msgid "Include part parameter data in exported BOM"
msgstr ""
-#: templates/js/translated/bom.js:376
+#: templates/js/translated/bom.js:377
msgid "Include Stock Data"
msgstr ""
-#: templates/js/translated/bom.js:377
+#: templates/js/translated/bom.js:378
msgid "Include part stock data in exported BOM"
msgstr ""
-#: templates/js/translated/bom.js:382
+#: templates/js/translated/bom.js:383
msgid "Include Manufacturer Data"
msgstr ""
-#: templates/js/translated/bom.js:383
+#: templates/js/translated/bom.js:384
msgid "Include part manufacturer data in exported BOM"
msgstr ""
-#: templates/js/translated/bom.js:388
+#: templates/js/translated/bom.js:389
msgid "Include Supplier Data"
msgstr ""
-#: templates/js/translated/bom.js:389
+#: templates/js/translated/bom.js:390
msgid "Include part supplier data in exported BOM"
msgstr ""
-#: templates/js/translated/bom.js:394
+#: templates/js/translated/bom.js:395
msgid "Include Pricing Data"
msgstr ""
-#: templates/js/translated/bom.js:395
+#: templates/js/translated/bom.js:396
msgid "Include part pricing data in exported BOM"
msgstr ""
-#: templates/js/translated/bom.js:590
+#: templates/js/translated/bom.js:591
msgid "Remove substitute part"
msgstr ""
-#: templates/js/translated/bom.js:644
+#: templates/js/translated/bom.js:645
msgid "Select and add a new substitute part using the input below"
msgstr ""
-#: templates/js/translated/bom.js:655
+#: templates/js/translated/bom.js:656
msgid "Are you sure you wish to remove this substitute part link?"
msgstr ""
-#: templates/js/translated/bom.js:661
+#: templates/js/translated/bom.js:662
msgid "Remove Substitute Part"
msgstr ""
-#: templates/js/translated/bom.js:700
+#: templates/js/translated/bom.js:701
msgid "Add Substitute"
msgstr ""
-#: templates/js/translated/bom.js:701
+#: templates/js/translated/bom.js:702
msgid "Edit BOM Item Substitutes"
msgstr ""
-#: templates/js/translated/bom.js:763
+#: templates/js/translated/bom.js:764
msgid "All selected BOM items will be deleted"
msgstr ""
-#: templates/js/translated/bom.js:779
+#: templates/js/translated/bom.js:780
msgid "Delete selected BOM items?"
msgstr ""
-#: templates/js/translated/bom.js:906
+#: templates/js/translated/bom.js:826
+msgid "Delete items"
+msgstr ""
+
+#: templates/js/translated/bom.js:924
msgid "Load BOM for subassembly"
msgstr ""
-#: templates/js/translated/bom.js:916
+#: templates/js/translated/bom.js:934
msgid "Substitutes Available"
msgstr ""
-#: templates/js/translated/bom.js:920 templates/js/translated/build.js:2090
+#: templates/js/translated/bom.js:938 templates/js/translated/build.js:2429
msgid "Variant stock allowed"
msgstr ""
-#: templates/js/translated/bom.js:984
+#: templates/js/translated/bom.js:1002
msgid "Substitutes"
msgstr ""
-#: templates/js/translated/bom.js:1104
+#: templates/js/translated/bom.js:1122
msgid "BOM pricing is complete"
msgstr ""
-#: templates/js/translated/bom.js:1109
+#: templates/js/translated/bom.js:1127
msgid "BOM pricing is incomplete"
msgstr ""
-#: templates/js/translated/bom.js:1116
+#: templates/js/translated/bom.js:1134
msgid "No pricing available"
msgstr ""
-#: templates/js/translated/bom.js:1147 templates/js/translated/build.js:2173
-#: templates/js/translated/sales_order.js:1887
+#: templates/js/translated/bom.js:1165 templates/js/translated/build.js:2523
+#: templates/js/translated/sales_order.js:1899
msgid "No Stock Available"
msgstr ""
-#: templates/js/translated/bom.js:1152 templates/js/translated/build.js:2177
+#: templates/js/translated/bom.js:1170 templates/js/translated/build.js:2527
msgid "Includes variant and substitute stock"
msgstr ""
-#: templates/js/translated/bom.js:1154 templates/js/translated/build.js:2179
-#: templates/js/translated/part.js:1230
+#: templates/js/translated/bom.js:1172 templates/js/translated/build.js:2529
+#: templates/js/translated/part.js:1229
msgid "Includes variant stock"
msgstr ""
-#: templates/js/translated/bom.js:1156 templates/js/translated/build.js:2181
+#: templates/js/translated/bom.js:1174 templates/js/translated/build.js:2531
msgid "Includes substitute stock"
msgstr ""
-#: templates/js/translated/bom.js:1184 templates/js/translated/build.js:2164
-#: templates/js/translated/build.js:2255
+#: templates/js/translated/bom.js:1204 templates/js/translated/build.js:2514
msgid "Consumable item"
msgstr ""
-#: templates/js/translated/bom.js:1244
+#: templates/js/translated/bom.js:1264
msgid "Validate BOM Item"
msgstr ""
-#: templates/js/translated/bom.js:1246
+#: templates/js/translated/bom.js:1266
msgid "This line has been validated"
msgstr ""
-#: templates/js/translated/bom.js:1248
+#: templates/js/translated/bom.js:1268
msgid "Edit substitute parts"
msgstr ""
-#: templates/js/translated/bom.js:1250 templates/js/translated/bom.js:1445
+#: templates/js/translated/bom.js:1270 templates/js/translated/bom.js:1465
msgid "Edit BOM Item"
msgstr ""
-#: templates/js/translated/bom.js:1252
+#: templates/js/translated/bom.js:1272
msgid "Delete BOM Item"
msgstr ""
-#: templates/js/translated/bom.js:1272
+#: templates/js/translated/bom.js:1292
msgid "View BOM"
msgstr ""
-#: templates/js/translated/bom.js:1356 templates/js/translated/build.js:1927
+#: templates/js/translated/bom.js:1376
msgid "No BOM items found"
msgstr ""
-#: templates/js/translated/bom.js:1616 templates/js/translated/build.js:2073
+#: templates/js/translated/bom.js:1636 templates/js/translated/build.js:2414
msgid "Required Part"
msgstr ""
-#: templates/js/translated/bom.js:1642
+#: templates/js/translated/bom.js:1662
msgid "Inherited from parent BOM"
msgstr ""
-#: templates/js/translated/build.js:126
+#: templates/js/translated/build.js:136
msgid "Edit Build Order"
msgstr ""
-#: templates/js/translated/build.js:169
+#: templates/js/translated/build.js:179
msgid "Create Build Order"
msgstr ""
-#: templates/js/translated/build.js:202
+#: templates/js/translated/build.js:211
msgid "Cancel Build Order"
msgstr ""
-#: templates/js/translated/build.js:211
+#: templates/js/translated/build.js:220
msgid "Are you sure you wish to cancel this build?"
msgstr ""
-#: templates/js/translated/build.js:217
+#: templates/js/translated/build.js:226
msgid "Stock items have been allocated to this build order"
msgstr ""
-#: templates/js/translated/build.js:224
+#: templates/js/translated/build.js:233
msgid "There are incomplete outputs remaining for this build order"
msgstr ""
-#: templates/js/translated/build.js:276
+#: templates/js/translated/build.js:285
msgid "Build order is ready to be completed"
msgstr ""
-#: templates/js/translated/build.js:284
+#: templates/js/translated/build.js:293
msgid "This build order cannot be completed as there are incomplete outputs"
msgstr ""
-#: templates/js/translated/build.js:289
+#: templates/js/translated/build.js:298
msgid "Build Order is incomplete"
msgstr ""
-#: templates/js/translated/build.js:307
+#: templates/js/translated/build.js:316
msgid "Complete Build Order"
msgstr ""
-#: templates/js/translated/build.js:348 templates/js/translated/stock.js:119
-#: templates/js/translated/stock.js:265
+#: templates/js/translated/build.js:357 templates/js/translated/stock.js:118
+#: templates/js/translated/stock.js:264
msgid "Next available serial number"
msgstr ""
-#: templates/js/translated/build.js:350 templates/js/translated/stock.js:121
-#: templates/js/translated/stock.js:267
+#: templates/js/translated/build.js:359 templates/js/translated/stock.js:120
+#: templates/js/translated/stock.js:266
msgid "Latest serial number"
msgstr ""
-#: templates/js/translated/build.js:359
+#: templates/js/translated/build.js:368
msgid "The Bill of Materials contains trackable parts"
msgstr ""
-#: templates/js/translated/build.js:360
+#: templates/js/translated/build.js:369
msgid "Build outputs must be generated individually"
msgstr ""
-#: templates/js/translated/build.js:368
+#: templates/js/translated/build.js:377
msgid "Trackable parts can have serial numbers specified"
msgstr ""
-#: templates/js/translated/build.js:369
+#: templates/js/translated/build.js:378
msgid "Enter serial numbers to generate multiple single build outputs"
msgstr ""
-#: templates/js/translated/build.js:376
+#: templates/js/translated/build.js:385
msgid "Create Build Output"
msgstr ""
-#: templates/js/translated/build.js:407
+#: templates/js/translated/build.js:416
msgid "Allocate stock items to this build output"
msgstr ""
-#: templates/js/translated/build.js:418
-msgid "Unallocate stock from build output"
+#: templates/js/translated/build.js:424
+msgid "Deallocate stock from build output"
msgstr ""
-#: templates/js/translated/build.js:427
+#: templates/js/translated/build.js:433
msgid "Complete build output"
msgstr ""
-#: templates/js/translated/build.js:435
+#: templates/js/translated/build.js:441
msgid "Scrap build output"
msgstr ""
-#: templates/js/translated/build.js:442
+#: templates/js/translated/build.js:448
msgid "Delete build output"
msgstr ""
-#: templates/js/translated/build.js:462
-msgid "Are you sure you wish to unallocate stock items from this build?"
+#: templates/js/translated/build.js:468
+msgid "Are you sure you wish to deallocate the selected stock items from this build?"
msgstr ""
-#: templates/js/translated/build.js:480
-msgid "Unallocate Stock Items"
+#: templates/js/translated/build.js:486
+msgid "Deallocate Stock Items"
msgstr ""
-#: templates/js/translated/build.js:566 templates/js/translated/build.js:690
-#: templates/js/translated/build.js:812
+#: templates/js/translated/build.js:572 templates/js/translated/build.js:696
+#: templates/js/translated/build.js:818
msgid "Select Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:567 templates/js/translated/build.js:691
-#: templates/js/translated/build.js:813
+#: templates/js/translated/build.js:573 templates/js/translated/build.js:697
+#: templates/js/translated/build.js:819
msgid "At least one build output must be selected"
msgstr ""
-#: templates/js/translated/build.js:581
+#: templates/js/translated/build.js:587
msgid "Selected build outputs will be marked as complete"
msgstr ""
-#: templates/js/translated/build.js:585 templates/js/translated/build.js:715
-#: templates/js/translated/build.js:835
+#: templates/js/translated/build.js:591 templates/js/translated/build.js:721
+#: templates/js/translated/build.js:841
msgid "Output"
msgstr ""
-#: templates/js/translated/build.js:609
+#: templates/js/translated/build.js:615
msgid "Complete Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:706
+#: templates/js/translated/build.js:712
msgid "Selected build outputs will be marked as scrapped"
msgstr ""
-#: templates/js/translated/build.js:708
+#: templates/js/translated/build.js:714
msgid "Scrapped output are marked as rejected"
msgstr ""
-#: templates/js/translated/build.js:709
+#: templates/js/translated/build.js:715
msgid "Allocated stock items will no longer be available"
msgstr ""
-#: templates/js/translated/build.js:710
+#: templates/js/translated/build.js:716
msgid "The completion status of the build order will not be adjusted"
msgstr ""
-#: templates/js/translated/build.js:737
+#: templates/js/translated/build.js:743
msgid "Scrap Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:827
+#: templates/js/translated/build.js:833
msgid "Selected build outputs will be deleted"
msgstr ""
-#: templates/js/translated/build.js:829
+#: templates/js/translated/build.js:835
msgid "Build output data will be permanently deleted"
msgstr ""
-#: templates/js/translated/build.js:830
+#: templates/js/translated/build.js:836
msgid "Allocated stock items will be returned to stock"
msgstr ""
-#: templates/js/translated/build.js:848
+#: templates/js/translated/build.js:854
msgid "Delete Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:934
+#: templates/js/translated/build.js:941
msgid "No build order allocations found"
msgstr ""
-#: templates/js/translated/build.js:971
+#: templates/js/translated/build.js:970 templates/js/translated/build.js:2270
+msgid "Allocated Quantity"
+msgstr ""
+
+#: templates/js/translated/build.js:984
msgid "Location not specified"
msgstr ""
-#: templates/js/translated/build.js:1047
+#: templates/js/translated/build.js:1006
+msgid "Complete outputs"
+msgstr "Saídas concluídas"
+
+#: templates/js/translated/build.js:1024
+msgid "Scrap outputs"
+msgstr ""
+
+#: templates/js/translated/build.js:1042
+msgid "Delete outputs"
+msgstr "Exlcuir saídas"
+
+#: templates/js/translated/build.js:1100
msgid "build output"
msgstr ""
-#: templates/js/translated/build.js:1048
+#: templates/js/translated/build.js:1101
msgid "build outputs"
msgstr ""
-#: templates/js/translated/build.js:1383
+#: templates/js/translated/build.js:1105
+msgid "Build output actions"
+msgstr ""
+
+#: templates/js/translated/build.js:1274
msgid "No active build outputs found"
msgstr ""
-#: templates/js/translated/build.js:1457
-msgid "Allocated Stock"
+#: templates/js/translated/build.js:1329
+msgid "Allocated Lines"
msgstr ""
-#: templates/js/translated/build.js:1464
-msgid "No tracked BOM items for this build"
+#: templates/js/translated/build.js:1343
+msgid "Required Tests"
msgstr ""
-#: templates/js/translated/build.js:1486
-msgid "Completed Tests"
-msgstr ""
-
-#: templates/js/translated/build.js:1491
-msgid "No required tests for this build"
-msgstr ""
-
-#: templates/js/translated/build.js:2032 templates/js/translated/build.js:3056
-#: templates/js/translated/sales_order.js:1632
-msgid "Edit stock allocation"
-msgstr ""
-
-#: templates/js/translated/build.js:2034 templates/js/translated/build.js:3057
-#: templates/js/translated/sales_order.js:1633
-msgid "Delete stock allocation"
-msgstr ""
-
-#: templates/js/translated/build.js:2050
-msgid "Edit Allocation"
-msgstr ""
-
-#: templates/js/translated/build.js:2060
-msgid "Remove Allocation"
-msgstr ""
-
-#: templates/js/translated/build.js:2086
-msgid "Substitute parts available"
-msgstr ""
-
-#: templates/js/translated/build.js:2122
-msgid "Quantity Per"
-msgstr ""
-
-#: templates/js/translated/build.js:2167
-#: templates/js/translated/sales_order.js:1894
-msgid "Insufficient stock available"
-msgstr ""
-
-#: templates/js/translated/build.js:2169
-#: templates/js/translated/sales_order.js:1892
-msgid "Sufficient stock available"
-msgstr ""
-
-#: templates/js/translated/build.js:2263
-#: templates/js/translated/sales_order.js:1993
-msgid "Build stock"
-msgstr ""
-
-#: templates/js/translated/build.js:2267 templates/stock_table.html:38
-msgid "Order stock"
-msgstr ""
-
-#: templates/js/translated/build.js:2270
-#: templates/js/translated/sales_order.js:1987
-msgid "Allocate stock"
-msgstr ""
-
-#: templates/js/translated/build.js:2310
-#: templates/js/translated/purchase_order.js:616
-#: templates/js/translated/sales_order.js:1159
+#: templates/js/translated/build.js:1502
+#: templates/js/translated/purchase_order.js:627
+#: templates/js/translated/sales_order.js:1171
msgid "Select Parts"
msgstr ""
-#: templates/js/translated/build.js:2311
-#: templates/js/translated/sales_order.js:1160
+#: templates/js/translated/build.js:1503
+#: templates/js/translated/sales_order.js:1172
msgid "You must select at least one part to allocate"
msgstr ""
-#: templates/js/translated/build.js:2359
-#: templates/js/translated/sales_order.js:1109
+#: templates/js/translated/build.js:1566
+#: templates/js/translated/sales_order.js:1121
msgid "Specify stock allocation quantity"
msgstr ""
-#: templates/js/translated/build.js:2438
+#: templates/js/translated/build.js:1643
msgid "All Parts Allocated"
msgstr ""
-#: templates/js/translated/build.js:2439
+#: templates/js/translated/build.js:1644
msgid "All selected parts have been fully allocated"
msgstr ""
-#: templates/js/translated/build.js:2453
-#: templates/js/translated/sales_order.js:1174
+#: templates/js/translated/build.js:1658
+#: templates/js/translated/sales_order.js:1186
msgid "Select source location (leave blank to take from all locations)"
msgstr ""
-#: templates/js/translated/build.js:2481
+#: templates/js/translated/build.js:1686
msgid "Allocate Stock Items to Build Order"
msgstr ""
-#: templates/js/translated/build.js:2492
-#: templates/js/translated/sales_order.js:1271
+#: templates/js/translated/build.js:1697
+#: templates/js/translated/sales_order.js:1283
msgid "No matching stock locations"
msgstr ""
-#: templates/js/translated/build.js:2565
-#: templates/js/translated/sales_order.js:1348
+#: templates/js/translated/build.js:1770
+#: templates/js/translated/sales_order.js:1360
msgid "No matching stock items"
msgstr ""
-#: templates/js/translated/build.js:2662
+#: templates/js/translated/build.js:1867
msgid "Automatic Stock Allocation"
msgstr ""
-#: templates/js/translated/build.js:2663
+#: templates/js/translated/build.js:1868
msgid "Stock items will be automatically allocated to this build order, according to the provided guidelines"
msgstr ""
-#: templates/js/translated/build.js:2665
+#: templates/js/translated/build.js:1870
msgid "If a location is specified, stock will only be allocated from that location"
msgstr ""
-#: templates/js/translated/build.js:2666
+#: templates/js/translated/build.js:1871
msgid "If stock is considered interchangeable, it will be allocated from the first location it is found"
msgstr ""
-#: templates/js/translated/build.js:2667
+#: templates/js/translated/build.js:1872
msgid "If substitute stock is allowed, it will be used where stock of the primary part cannot be found"
msgstr ""
-#: templates/js/translated/build.js:2694
+#: templates/js/translated/build.js:1899
msgid "Allocate Stock Items"
msgstr ""
-#: templates/js/translated/build.js:2800
+#: templates/js/translated/build.js:2005
msgid "No builds matching query"
msgstr ""
-#: templates/js/translated/build.js:2835 templates/js/translated/part.js:2208
-#: templates/js/translated/part.js:2692 templates/js/translated/stock.js:1759
-#: templates/js/translated/stock.js:2458
+#: templates/js/translated/build.js:2040 templates/js/translated/build.js:2408
+#: templates/js/translated/part.js:2284 templates/js/translated/part.js:2677
+#: templates/js/translated/stock.js:1899 templates/js/translated/stock.js:2589
msgid "Select"
msgstr ""
-#: templates/js/translated/build.js:2849
+#: templates/js/translated/build.js:2054
msgid "Build order is overdue"
msgstr ""
-#: templates/js/translated/build.js:2883
+#: templates/js/translated/build.js:2100
msgid "Progress"
msgstr ""
-#: templates/js/translated/build.js:2919 templates/js/translated/stock.js:2779
+#: templates/js/translated/build.js:2136 templates/js/translated/stock.js:2910
msgid "No user information"
msgstr ""
-#: templates/js/translated/build.js:2934
+#: templates/js/translated/build.js:2151
msgid "group"
msgstr ""
-#: templates/js/translated/build.js:3033
-msgid "No parts allocated for"
+#: templates/js/translated/build.js:2315
+#: templates/js/translated/sales_order.js:1644
+msgid "Edit stock allocation"
msgstr ""
-#: templates/js/translated/company.js:87
+#: templates/js/translated/build.js:2316
+#: templates/js/translated/sales_order.js:1645
+msgid "Delete stock allocation"
+msgstr ""
+
+#: templates/js/translated/build.js:2331
+msgid "Edit Allocation"
+msgstr ""
+
+#: templates/js/translated/build.js:2343
+msgid "Remove Allocation"
+msgstr ""
+
+#: templates/js/translated/build.js:2384
+msgid "build line"
+msgstr ""
+
+#: templates/js/translated/build.js:2385
+msgid "build lines"
+msgstr ""
+
+#: templates/js/translated/build.js:2403
+msgid "No build lines found"
+msgstr ""
+
+#: templates/js/translated/build.js:2433 templates/js/translated/part.js:767
+#: templates/js/translated/part.js:1175
+msgid "Trackable part"
+msgstr ""
+
+#: templates/js/translated/build.js:2468
+msgid "Unit Quantity"
+msgstr ""
+
+#: templates/js/translated/build.js:2517
+#: templates/js/translated/sales_order.js:1906
+msgid "Insufficient stock available"
+msgstr ""
+
+#: templates/js/translated/build.js:2519
+#: templates/js/translated/sales_order.js:1904
+msgid "Sufficient stock available"
+msgstr ""
+
+#: templates/js/translated/build.js:2566
+msgid "Consumable Item"
+msgstr ""
+
+#: templates/js/translated/build.js:2571
+msgid "Tracked item"
+msgstr ""
+
+#: templates/js/translated/build.js:2578
+#: templates/js/translated/sales_order.js:2005
+msgid "Build stock"
+msgstr ""
+
+#: templates/js/translated/build.js:2583 templates/js/translated/stock.js:1779
+msgid "Order stock"
+msgstr ""
+
+#: templates/js/translated/build.js:2587
+#: templates/js/translated/sales_order.js:1999
+msgid "Allocate stock"
+msgstr ""
+
+#: templates/js/translated/build.js:2591
+msgid "Remove stock allocation"
+msgstr ""
+
+#: templates/js/translated/company.js:97
msgid "Add Manufacturer"
msgstr ""
-#: templates/js/translated/company.js:100
-#: templates/js/translated/company.js:202
+#: templates/js/translated/company.js:110
+#: templates/js/translated/company.js:212
msgid "Add Manufacturer Part"
msgstr ""
-#: templates/js/translated/company.js:121
+#: templates/js/translated/company.js:131
msgid "Edit Manufacturer Part"
msgstr ""
-#: templates/js/translated/company.js:190
-#: templates/js/translated/purchase_order.js:94
+#: templates/js/translated/company.js:200
+#: templates/js/translated/purchase_order.js:93
msgid "Add Supplier"
msgstr ""
-#: templates/js/translated/company.js:232
-#: templates/js/translated/purchase_order.js:338
+#: templates/js/translated/company.js:242
+#: templates/js/translated/purchase_order.js:349
msgid "Add Supplier Part"
msgstr ""
-#: templates/js/translated/company.js:333
+#: templates/js/translated/company.js:343
msgid "All selected supplier parts will be deleted"
msgstr ""
-#: templates/js/translated/company.js:349
+#: templates/js/translated/company.js:359
msgid "Delete Supplier Parts"
msgstr ""
-#: templates/js/translated/company.js:457
+#: templates/js/translated/company.js:464
msgid "Add new Company"
msgstr ""
-#: templates/js/translated/company.js:528
+#: templates/js/translated/company.js:535
msgid "Parts Supplied"
msgstr ""
-#: templates/js/translated/company.js:537
+#: templates/js/translated/company.js:544
msgid "Parts Manufactured"
msgstr ""
-#: templates/js/translated/company.js:552
+#: templates/js/translated/company.js:559
msgid "No company information found"
msgstr ""
-#: templates/js/translated/company.js:601
+#: templates/js/translated/company.js:608
msgid "Create New Contact"
msgstr ""
-#: templates/js/translated/company.js:617
-#: templates/js/translated/company.js:740
+#: templates/js/translated/company.js:624
+#: templates/js/translated/company.js:747
msgid "Edit Contact"
msgstr ""
-#: templates/js/translated/company.js:654
+#: templates/js/translated/company.js:661
msgid "All selected contacts will be deleted"
msgstr ""
-#: templates/js/translated/company.js:660
-#: templates/js/translated/company.js:724
+#: templates/js/translated/company.js:667
+#: templates/js/translated/company.js:731
msgid "Role"
msgstr ""
-#: templates/js/translated/company.js:668
+#: templates/js/translated/company.js:675
msgid "Delete Contacts"
msgstr ""
-#: templates/js/translated/company.js:699
+#: templates/js/translated/company.js:706
msgid "No contacts found"
msgstr ""
-#: templates/js/translated/company.js:712
+#: templates/js/translated/company.js:719
msgid "Phone Number"
msgstr ""
-#: templates/js/translated/company.js:718
+#: templates/js/translated/company.js:725
msgid "Email Address"
msgstr ""
-#: templates/js/translated/company.js:744
+#: templates/js/translated/company.js:751
msgid "Delete Contact"
msgstr ""
-#: templates/js/translated/company.js:818
+#: templates/js/translated/company.js:886
+msgid "Create New Address"
+msgstr ""
+
+#: templates/js/translated/company.js:901
+#: templates/js/translated/company.js:1066
+msgid "Edit Address"
+msgstr ""
+
+#: templates/js/translated/company.js:936
+msgid "All selected addresses will be deleted"
+msgstr ""
+
+#: templates/js/translated/company.js:950
+msgid "Delete Addresses"
+msgstr ""
+
+#: templates/js/translated/company.js:977
+msgid "No addresses found"
+msgstr ""
+
+#: templates/js/translated/company.js:1020
+msgid "Postal city"
+msgstr ""
+
+#: templates/js/translated/company.js:1026
+msgid "State/province"
+msgstr ""
+
+#: templates/js/translated/company.js:1038
+msgid "Courier notes"
+msgstr ""
+
+#: templates/js/translated/company.js:1044
+msgid "Internal notes"
+msgstr ""
+
+#: templates/js/translated/company.js:1070
+msgid "Delete Address"
+msgstr ""
+
+#: templates/js/translated/company.js:1143
msgid "All selected manufacturer parts will be deleted"
msgstr ""
-#: templates/js/translated/company.js:833
+#: templates/js/translated/company.js:1158
msgid "Delete Manufacturer Parts"
msgstr ""
-#: templates/js/translated/company.js:867
+#: templates/js/translated/company.js:1192
msgid "All selected parameters will be deleted"
msgstr ""
-#: templates/js/translated/company.js:881
+#: templates/js/translated/company.js:1206
msgid "Delete Parameters"
msgstr ""
-#: templates/js/translated/company.js:917
+#: templates/js/translated/company.js:1222
+#: templates/js/translated/company.js:1510 templates/js/translated/part.js:2213
+msgid "Order parts"
+msgstr "Pedir peças"
+
+#: templates/js/translated/company.js:1239
+msgid "Delete manufacturer parts"
+msgstr "Apagar peças do fabricante"
+
+#: templates/js/translated/company.js:1271
+msgid "Manufacturer part actions"
+msgstr ""
+
+#: templates/js/translated/company.js:1290
msgid "No manufacturer parts found"
msgstr ""
-#: templates/js/translated/company.js:937
-#: templates/js/translated/company.js:1177 templates/js/translated/part.js:776
-#: templates/js/translated/part.js:1184
+#: templates/js/translated/company.js:1310
+#: templates/js/translated/company.js:1598 templates/js/translated/part.js:775
+#: templates/js/translated/part.js:1183
msgid "Template part"
msgstr ""
-#: templates/js/translated/company.js:941
-#: templates/js/translated/company.js:1181 templates/js/translated/part.js:780
-#: templates/js/translated/part.js:1188
+#: templates/js/translated/company.js:1314
+#: templates/js/translated/company.js:1602 templates/js/translated/part.js:779
+#: templates/js/translated/part.js:1187
msgid "Assembled part"
msgstr ""
-#: templates/js/translated/company.js:1061 templates/js/translated/part.js:1437
+#: templates/js/translated/company.js:1434 templates/js/translated/part.js:1436
msgid "No parameters found"
msgstr ""
-#: templates/js/translated/company.js:1096 templates/js/translated/part.js:1500
+#: templates/js/translated/company.js:1469 templates/js/translated/part.js:1499
msgid "Edit parameter"
msgstr ""
-#: templates/js/translated/company.js:1097 templates/js/translated/part.js:1501
+#: templates/js/translated/company.js:1470 templates/js/translated/part.js:1500
msgid "Delete parameter"
msgstr ""
-#: templates/js/translated/company.js:1114 templates/js/translated/part.js:1407
+#: templates/js/translated/company.js:1487 templates/js/translated/part.js:1406
msgid "Edit Parameter"
msgstr ""
-#: templates/js/translated/company.js:1123 templates/js/translated/part.js:1522
+#: templates/js/translated/company.js:1496 templates/js/translated/part.js:1521
msgid "Delete Parameter"
msgstr ""
-#: templates/js/translated/company.js:1156
+#: templates/js/translated/company.js:1527
+msgid "Delete supplier parts"
+msgstr "Excluir peças do fornecedor"
+
+#: templates/js/translated/company.js:1577
msgid "No supplier parts found"
msgstr ""
-#: templates/js/translated/company.js:1274
+#: templates/js/translated/company.js:1695
msgid "Base Units"
msgstr ""
-#: templates/js/translated/company.js:1304
+#: templates/js/translated/company.js:1725
msgid "Availability"
msgstr ""
-#: templates/js/translated/company.js:1335
+#: templates/js/translated/company.js:1756
msgid "Edit supplier part"
msgstr ""
-#: templates/js/translated/company.js:1336
+#: templates/js/translated/company.js:1757
msgid "Delete supplier part"
msgstr ""
-#: templates/js/translated/company.js:1389
+#: templates/js/translated/company.js:1810
#: templates/js/translated/pricing.js:694
msgid "Delete Price Break"
msgstr ""
-#: templates/js/translated/company.js:1399
+#: templates/js/translated/company.js:1820
#: templates/js/translated/pricing.js:712
msgid "Edit Price Break"
msgstr ""
-#: templates/js/translated/company.js:1414
+#: templates/js/translated/company.js:1835
msgid "No price break information found"
msgstr ""
-#: templates/js/translated/company.js:1443
+#: templates/js/translated/company.js:1864
msgid "Last updated"
msgstr ""
-#: templates/js/translated/company.js:1450
+#: templates/js/translated/company.js:1871
msgid "Edit price break"
msgstr ""
-#: templates/js/translated/company.js:1451
+#: templates/js/translated/company.js:1872
msgid "Delete price break"
msgstr ""
-#: templates/js/translated/filters.js:186
-#: templates/js/translated/filters.js:550
+#: templates/js/translated/filters.js:187
+#: templates/js/translated/filters.js:673
msgid "true"
msgstr ""
-#: templates/js/translated/filters.js:190
-#: templates/js/translated/filters.js:551
+#: templates/js/translated/filters.js:191
+#: templates/js/translated/filters.js:674
msgid "false"
msgstr ""
-#: templates/js/translated/filters.js:214
+#: templates/js/translated/filters.js:215
msgid "Select filter"
msgstr ""
-#: templates/js/translated/filters.js:328
+#: templates/js/translated/filters.js:438
msgid "Print Labels"
msgstr ""
-#: templates/js/translated/filters.js:332
+#: templates/js/translated/filters.js:442
msgid "Print Reports"
msgstr ""
-#: templates/js/translated/filters.js:344
+#: templates/js/translated/filters.js:454
msgid "Download table data"
msgstr ""
-#: templates/js/translated/filters.js:351
+#: templates/js/translated/filters.js:461
msgid "Reload table data"
msgstr ""
-#: templates/js/translated/filters.js:360
+#: templates/js/translated/filters.js:470
msgid "Add new filter"
msgstr ""
-#: templates/js/translated/filters.js:368
+#: templates/js/translated/filters.js:478
msgid "Clear all filters"
msgstr ""
-#: templates/js/translated/filters.js:460
+#: templates/js/translated/filters.js:583
msgid "Create filter"
msgstr ""
@@ -10497,6 +10620,12 @@ msgstr ""
msgid "View operation not allowed"
msgstr ""
+#: templates/js/translated/forms.js:506 templates/js/translated/helpers.js:105
+#: templates/js/translated/part.js:369 templates/js/translated/pricing.js:629
+#: templates/js/translated/stock.js:215 users/models.py:253
+msgid "Delete"
+msgstr "Excluir"
+
#: templates/js/translated/forms.js:752
msgid "Keep this form open"
msgstr ""
@@ -10514,23 +10643,23 @@ msgstr ""
msgid "No results found"
msgstr ""
-#: templates/js/translated/forms.js:2071 templates/js/translated/search.js:281
+#: templates/js/translated/forms.js:2071 templates/js/translated/search.js:239
msgid "Searching"
msgstr ""
-#: templates/js/translated/forms.js:2276
+#: templates/js/translated/forms.js:2285
msgid "Clear input"
msgstr ""
-#: templates/js/translated/forms.js:2733
+#: templates/js/translated/forms.js:2742
msgid "File Column"
msgstr ""
-#: templates/js/translated/forms.js:2733
+#: templates/js/translated/forms.js:2742
msgid "Field Name"
msgstr ""
-#: templates/js/translated/forms.js:2745
+#: templates/js/translated/forms.js:2754
msgid "Select Columns"
msgstr ""
@@ -10550,6 +10679,14 @@ msgstr ""
msgid "False"
msgstr ""
+#: templates/js/translated/index.js:99
+msgid "No parts required for builds"
+msgstr ""
+
+#: templates/js/translated/index.js:125
+msgid "Allocated Stock"
+msgstr ""
+
#: templates/js/translated/label.js:58
msgid "Select Printer"
msgstr ""
@@ -10651,7 +10788,7 @@ msgstr ""
#: templates/js/translated/news.js:38
#: templates/js/translated/notification.js:45
-#: templates/js/translated/part.js:1577
+#: templates/js/translated/part.js:1576
msgid "ID"
msgstr ""
@@ -10700,7 +10837,7 @@ msgid "Delete Line"
msgstr ""
#: templates/js/translated/order.js:281
-#: templates/js/translated/purchase_order.js:1958
+#: templates/js/translated/purchase_order.js:1968
msgid "No line items found"
msgstr ""
@@ -10716,363 +10853,355 @@ msgstr ""
msgid "Delete line"
msgstr ""
-#: templates/js/translated/part.js:91
+#: templates/js/translated/part.js:90
msgid "Part Attributes"
msgstr ""
-#: templates/js/translated/part.js:95
+#: templates/js/translated/part.js:94
msgid "Part Creation Options"
msgstr ""
-#: templates/js/translated/part.js:99
+#: templates/js/translated/part.js:98
msgid "Part Duplication Options"
msgstr ""
-#: templates/js/translated/part.js:122
+#: templates/js/translated/part.js:121
msgid "Add Part Category"
msgstr ""
-#: templates/js/translated/part.js:294
+#: templates/js/translated/part.js:293
msgid "Parent part category"
msgstr ""
-#: templates/js/translated/part.js:310 templates/js/translated/stock.js:147
+#: templates/js/translated/part.js:309 templates/js/translated/stock.js:146
msgid "Icon (optional) - Explore all available icons on"
msgstr ""
-#: templates/js/translated/part.js:330
+#: templates/js/translated/part.js:329
msgid "Create Part Category"
msgstr "Criar Categoria de Peça"
-#: templates/js/translated/part.js:333
+#: templates/js/translated/part.js:332
msgid "Create new category after this one"
msgstr ""
-#: templates/js/translated/part.js:334
+#: templates/js/translated/part.js:333
msgid "Part category created"
msgstr ""
-#: templates/js/translated/part.js:348
+#: templates/js/translated/part.js:347
msgid "Edit Part Category"
msgstr ""
-#: templates/js/translated/part.js:361
+#: templates/js/translated/part.js:360
msgid "Are you sure you want to delete this part category?"
msgstr ""
-#: templates/js/translated/part.js:366
+#: templates/js/translated/part.js:365
msgid "Move to parent category"
msgstr ""
-#: templates/js/translated/part.js:375
+#: templates/js/translated/part.js:374
msgid "Delete Part Category"
msgstr ""
-#: templates/js/translated/part.js:379
+#: templates/js/translated/part.js:378
msgid "Action for parts in this category"
msgstr ""
-#: templates/js/translated/part.js:384
+#: templates/js/translated/part.js:383
msgid "Action for child categories"
msgstr ""
-#: templates/js/translated/part.js:408
+#: templates/js/translated/part.js:407
msgid "Create Part"
msgstr ""
-#: templates/js/translated/part.js:410
+#: templates/js/translated/part.js:409
msgid "Create another part after this one"
msgstr ""
-#: templates/js/translated/part.js:411
+#: templates/js/translated/part.js:410
msgid "Part created successfully"
msgstr ""
-#: templates/js/translated/part.js:439
+#: templates/js/translated/part.js:438
msgid "Edit Part"
msgstr ""
-#: templates/js/translated/part.js:441
+#: templates/js/translated/part.js:440
msgid "Part edited"
msgstr ""
-#: templates/js/translated/part.js:452
+#: templates/js/translated/part.js:451
msgid "Create Part Variant"
msgstr ""
-#: templates/js/translated/part.js:509
+#: templates/js/translated/part.js:508
msgid "Active Part"
msgstr ""
-#: templates/js/translated/part.js:510
+#: templates/js/translated/part.js:509
msgid "Part cannot be deleted as it is currently active"
msgstr ""
-#: templates/js/translated/part.js:524
+#: templates/js/translated/part.js:523
msgid "Deleting this part cannot be reversed"
msgstr ""
-#: templates/js/translated/part.js:526
+#: templates/js/translated/part.js:525
msgid "Any stock items for this part will be deleted"
msgstr ""
-#: templates/js/translated/part.js:527
+#: templates/js/translated/part.js:526
msgid "This part will be removed from any Bills of Material"
msgstr ""
-#: templates/js/translated/part.js:528
+#: templates/js/translated/part.js:527
msgid "All manufacturer and supplier information for this part will be deleted"
msgstr ""
-#: templates/js/translated/part.js:535
+#: templates/js/translated/part.js:534
msgid "Delete Part"
msgstr ""
-#: templates/js/translated/part.js:571
+#: templates/js/translated/part.js:570
msgid "You are subscribed to notifications for this item"
msgstr ""
-#: templates/js/translated/part.js:573
+#: templates/js/translated/part.js:572
msgid "You have subscribed to notifications for this item"
msgstr ""
-#: templates/js/translated/part.js:578
+#: templates/js/translated/part.js:577
msgid "Subscribe to notifications for this item"
msgstr ""
-#: templates/js/translated/part.js:580
+#: templates/js/translated/part.js:579
msgid "You have unsubscribed to notifications for this item"
msgstr ""
-#: templates/js/translated/part.js:597
+#: templates/js/translated/part.js:596
msgid "Validating the BOM will mark each line item as valid"
msgstr ""
-#: templates/js/translated/part.js:607
+#: templates/js/translated/part.js:606
msgid "Validate Bill of Materials"
msgstr ""
-#: templates/js/translated/part.js:610
+#: templates/js/translated/part.js:609
msgid "Validated Bill of Materials"
msgstr ""
-#: templates/js/translated/part.js:635
+#: templates/js/translated/part.js:634
msgid "Copy Bill of Materials"
msgstr ""
-#: templates/js/translated/part.js:663
-#: templates/js/translated/table_filters.js:660
+#: templates/js/translated/part.js:662
+#: templates/js/translated/table_filters.js:682
msgid "Low stock"
msgstr ""
-#: templates/js/translated/part.js:666
+#: templates/js/translated/part.js:665
msgid "No stock available"
msgstr ""
-#: templates/js/translated/part.js:726
+#: templates/js/translated/part.js:725
msgid "Demand"
msgstr ""
-#: templates/js/translated/part.js:749
+#: templates/js/translated/part.js:748
msgid "Unit"
msgstr ""
-#: templates/js/translated/part.js:768 templates/js/translated/part.js:1176
-msgid "Trackable part"
-msgstr ""
-
-#: templates/js/translated/part.js:772 templates/js/translated/part.js:1180
+#: templates/js/translated/part.js:771 templates/js/translated/part.js:1179
msgid "Virtual part"
msgstr ""
-#: templates/js/translated/part.js:784
+#: templates/js/translated/part.js:783
msgid "Subscribed part"
msgstr ""
-#: templates/js/translated/part.js:788
+#: templates/js/translated/part.js:787
msgid "Salable part"
msgstr ""
-#: templates/js/translated/part.js:863
+#: templates/js/translated/part.js:862
msgid "Schedule generation of a new stocktake report."
msgstr "Programar geração de um novo relatório de balanço."
-#: templates/js/translated/part.js:863
+#: templates/js/translated/part.js:862
msgid "Once complete, the stocktake report will be available for download."
msgstr "Uma vez concluído, o relatório de estoque estará disponível para baixar."
-#: templates/js/translated/part.js:871
+#: templates/js/translated/part.js:870
msgid "Generate Stocktake Report"
msgstr "Gerar Relatório de Balanço"
-#: templates/js/translated/part.js:875
+#: templates/js/translated/part.js:874
msgid "Stocktake report scheduled"
msgstr "Relatório de balanço agendado"
-#: templates/js/translated/part.js:1024
+#: templates/js/translated/part.js:1023
msgid "No stocktake information available"
msgstr "Nenhuma informação de balanço disponível"
-#: templates/js/translated/part.js:1082 templates/js/translated/part.js:1118
+#: templates/js/translated/part.js:1081 templates/js/translated/part.js:1117
msgid "Edit Stocktake Entry"
msgstr "Editar Lançamento de Balanço"
-#: templates/js/translated/part.js:1086 templates/js/translated/part.js:1128
+#: templates/js/translated/part.js:1085 templates/js/translated/part.js:1127
msgid "Delete Stocktake Entry"
msgstr "Apagar Lançamento de Balanço"
-#: templates/js/translated/part.js:1255
+#: templates/js/translated/part.js:1254
msgid "No variants found"
msgstr ""
-#: templates/js/translated/part.js:1572
+#: templates/js/translated/part.js:1571
msgid "No part parameter templates found"
msgstr ""
-#: templates/js/translated/part.js:1635
+#: templates/js/translated/part.js:1634
msgid "Edit Part Parameter Template"
msgstr ""
-#: templates/js/translated/part.js:1647
+#: templates/js/translated/part.js:1646
msgid "Any parameters which reference this template will also be deleted"
msgstr ""
-#: templates/js/translated/part.js:1655
+#: templates/js/translated/part.js:1654
msgid "Delete Part Parameter Template"
msgstr ""
-#: templates/js/translated/part.js:1689
-#: templates/js/translated/purchase_order.js:1618
+#: templates/js/translated/part.js:1688
+#: templates/js/translated/purchase_order.js:1633
msgid "No purchase orders found"
msgstr ""
-#: templates/js/translated/part.js:1832
-#: templates/js/translated/purchase_order.js:2121
-#: templates/js/translated/return_order.js:740
-#: templates/js/translated/sales_order.js:1855
+#: templates/js/translated/part.js:1831
+#: templates/js/translated/purchase_order.js:2131
+#: templates/js/translated/return_order.js:752
+#: templates/js/translated/sales_order.js:1867
msgid "This line item is overdue"
msgstr ""
-#: templates/js/translated/part.js:1877
-#: templates/js/translated/purchase_order.js:2188
+#: templates/js/translated/part.js:1876
+#: templates/js/translated/purchase_order.js:2198
msgid "Receive line item"
msgstr ""
-#: templates/js/translated/part.js:1944
+#: templates/js/translated/part.js:1943
msgid "Delete part relationship"
msgstr ""
-#: templates/js/translated/part.js:1966
+#: templates/js/translated/part.js:1965
msgid "Delete Part Relationship"
msgstr ""
-#: templates/js/translated/part.js:2054 templates/js/translated/part.js:2366
+#: templates/js/translated/part.js:2053 templates/js/translated/part.js:2442
msgid "No parts found"
msgstr ""
-#: templates/js/translated/part.js:2192
-msgid "parts"
-msgstr ""
-
-#: templates/js/translated/part.js:2276
-msgid "No category"
-msgstr ""
-
-#: templates/js/translated/part.js:2390 templates/js/translated/part.js:2611
-#: templates/js/translated/stock.js:2417
-msgid "Display as list"
-msgstr ""
-
-#: templates/js/translated/part.js:2406
-msgid "Display as grid"
-msgstr ""
-
-#: templates/js/translated/part.js:2472
+#: templates/js/translated/part.js:2174
msgid "Set the part category for the selected parts"
msgstr ""
-#: templates/js/translated/part.js:2477
+#: templates/js/translated/part.js:2179
msgid "Set Part Category"
msgstr ""
+#: templates/js/translated/part.js:2204
+msgid "Set category"
+msgstr "Definir categoria"
+
+#: templates/js/translated/part.js:2259
+msgid "parts"
+msgstr ""
+
+#: templates/js/translated/part.js:2352
+msgid "No category"
+msgstr ""
+
+#: templates/js/translated/part.js:2466 templates/js/translated/part.js:2596
+#: templates/js/translated/stock.js:2548
+msgid "Display as list"
+msgstr ""
+
#: templates/js/translated/part.js:2482
-msgid "Select Part Category"
+msgid "Display as grid"
msgstr ""
-#: templates/js/translated/part.js:2495
-msgid "Category is required"
-msgstr ""
-
-#: templates/js/translated/part.js:2595
+#: templates/js/translated/part.js:2580
msgid "No subcategories found"
msgstr ""
-#: templates/js/translated/part.js:2631 templates/js/translated/stock.js:2437
+#: templates/js/translated/part.js:2616 templates/js/translated/stock.js:2568
msgid "Display as tree"
msgstr ""
-#: templates/js/translated/part.js:2711
+#: templates/js/translated/part.js:2696
msgid "Load Subcategories"
msgstr ""
-#: templates/js/translated/part.js:2727
+#: templates/js/translated/part.js:2712
msgid "Subscribed category"
msgstr ""
-#: templates/js/translated/part.js:2807
+#: templates/js/translated/part.js:2792
msgid "No test templates matching query"
msgstr ""
-#: templates/js/translated/part.js:2858 templates/js/translated/stock.js:1380
+#: templates/js/translated/part.js:2843 templates/js/translated/stock.js:1379
msgid "Edit test result"
msgstr ""
-#: templates/js/translated/part.js:2859 templates/js/translated/stock.js:1381
-#: templates/js/translated/stock.js:1643
+#: templates/js/translated/part.js:2844 templates/js/translated/stock.js:1380
+#: templates/js/translated/stock.js:1642
msgid "Delete test result"
msgstr ""
-#: templates/js/translated/part.js:2863
+#: templates/js/translated/part.js:2848
msgid "This test is defined for a parent part"
msgstr ""
-#: templates/js/translated/part.js:2879
+#: templates/js/translated/part.js:2864
msgid "Edit Test Result Template"
msgstr ""
-#: templates/js/translated/part.js:2893
+#: templates/js/translated/part.js:2878
msgid "Delete Test Result Template"
msgstr ""
-#: templates/js/translated/part.js:2972 templates/js/translated/part.js:2973
+#: templates/js/translated/part.js:2957 templates/js/translated/part.js:2958
msgid "No date specified"
msgstr ""
-#: templates/js/translated/part.js:2975
+#: templates/js/translated/part.js:2960
msgid "Specified date is in the past"
msgstr ""
-#: templates/js/translated/part.js:2981
+#: templates/js/translated/part.js:2966
msgid "Speculative"
msgstr ""
-#: templates/js/translated/part.js:3031
+#: templates/js/translated/part.js:3016
msgid "No scheduling information available for this part"
msgstr ""
-#: templates/js/translated/part.js:3037
+#: templates/js/translated/part.js:3022
msgid "Error fetching scheduling information for this part"
msgstr ""
-#: templates/js/translated/part.js:3133
+#: templates/js/translated/part.js:3118
msgid "Scheduled Stock Quantities"
msgstr ""
-#: templates/js/translated/part.js:3149
+#: templates/js/translated/part.js:3134
msgid "Maximum Quantity"
msgstr ""
-#: templates/js/translated/part.js:3194
+#: templates/js/translated/part.js:3179
msgid "Minimum Stock Level"
msgstr ""
@@ -11168,234 +11297,234 @@ msgstr ""
msgid "Variant Part"
msgstr ""
-#: templates/js/translated/purchase_order.js:155
+#: templates/js/translated/purchase_order.js:166
msgid "Select purchase order to duplicate"
msgstr ""
-#: templates/js/translated/purchase_order.js:162
+#: templates/js/translated/purchase_order.js:173
msgid "Duplicate Line Items"
msgstr ""
-#: templates/js/translated/purchase_order.js:163
+#: templates/js/translated/purchase_order.js:174
msgid "Duplicate all line items from the selected order"
msgstr ""
-#: templates/js/translated/purchase_order.js:170
+#: templates/js/translated/purchase_order.js:181
msgid "Duplicate Extra Lines"
msgstr ""
-#: templates/js/translated/purchase_order.js:171
+#: templates/js/translated/purchase_order.js:182
msgid "Duplicate extra line items from the selected order"
msgstr ""
-#: templates/js/translated/purchase_order.js:192
+#: templates/js/translated/purchase_order.js:203
msgid "Edit Purchase Order"
msgstr ""
-#: templates/js/translated/purchase_order.js:209
+#: templates/js/translated/purchase_order.js:220
msgid "Duplication Options"
msgstr ""
-#: templates/js/translated/purchase_order.js:436
+#: templates/js/translated/purchase_order.js:447
msgid "Complete Purchase Order"
msgstr ""
-#: templates/js/translated/purchase_order.js:453
-#: templates/js/translated/return_order.js:195
-#: templates/js/translated/sales_order.js:485
+#: templates/js/translated/purchase_order.js:464
+#: templates/js/translated/return_order.js:207
+#: templates/js/translated/sales_order.js:497
msgid "Mark this order as complete?"
msgstr ""
-#: templates/js/translated/purchase_order.js:459
+#: templates/js/translated/purchase_order.js:470
msgid "All line items have been received"
msgstr ""
-#: templates/js/translated/purchase_order.js:464
+#: templates/js/translated/purchase_order.js:475
msgid "This order has line items which have not been marked as received."
msgstr ""
-#: templates/js/translated/purchase_order.js:465
-#: templates/js/translated/sales_order.js:499
+#: templates/js/translated/purchase_order.js:476
+#: templates/js/translated/sales_order.js:511
msgid "Completing this order means that the order and line items will no longer be editable."
msgstr ""
-#: templates/js/translated/purchase_order.js:488
+#: templates/js/translated/purchase_order.js:499
msgid "Cancel Purchase Order"
msgstr ""
-#: templates/js/translated/purchase_order.js:493
+#: templates/js/translated/purchase_order.js:504
msgid "Are you sure you wish to cancel this purchase order?"
msgstr ""
-#: templates/js/translated/purchase_order.js:499
+#: templates/js/translated/purchase_order.js:510
msgid "This purchase order can not be cancelled"
msgstr ""
-#: templates/js/translated/purchase_order.js:520
-#: templates/js/translated/return_order.js:149
+#: templates/js/translated/purchase_order.js:531
+#: templates/js/translated/return_order.js:161
msgid "After placing this order, line items will no longer be editable."
msgstr ""
-#: templates/js/translated/purchase_order.js:525
+#: templates/js/translated/purchase_order.js:536
msgid "Issue Purchase Order"
msgstr ""
-#: templates/js/translated/purchase_order.js:617
+#: templates/js/translated/purchase_order.js:628
msgid "At least one purchaseable part must be selected"
msgstr ""
-#: templates/js/translated/purchase_order.js:642
+#: templates/js/translated/purchase_order.js:653
msgid "Quantity to order"
msgstr ""
-#: templates/js/translated/purchase_order.js:651
+#: templates/js/translated/purchase_order.js:662
msgid "New supplier part"
msgstr ""
-#: templates/js/translated/purchase_order.js:669
+#: templates/js/translated/purchase_order.js:680
msgid "New purchase order"
msgstr ""
-#: templates/js/translated/purchase_order.js:701
+#: templates/js/translated/purchase_order.js:712
msgid "Add to purchase order"
msgstr ""
-#: templates/js/translated/purchase_order.js:845
+#: templates/js/translated/purchase_order.js:860
msgid "No matching supplier parts"
msgstr ""
-#: templates/js/translated/purchase_order.js:864
+#: templates/js/translated/purchase_order.js:879
msgid "No matching purchase orders"
msgstr ""
-#: templates/js/translated/purchase_order.js:1043
+#: templates/js/translated/purchase_order.js:1058
msgid "Select Line Items"
msgstr ""
-#: templates/js/translated/purchase_order.js:1044
-#: templates/js/translated/return_order.js:480
+#: templates/js/translated/purchase_order.js:1059
+#: templates/js/translated/return_order.js:492
msgid "At least one line item must be selected"
msgstr ""
-#: templates/js/translated/purchase_order.js:1074
+#: templates/js/translated/purchase_order.js:1089
msgid "Received Quantity"
msgstr ""
-#: templates/js/translated/purchase_order.js:1085
+#: templates/js/translated/purchase_order.js:1100
msgid "Quantity to receive"
msgstr ""
-#: templates/js/translated/purchase_order.js:1161
+#: templates/js/translated/purchase_order.js:1176
msgid "Stock Status"
msgstr "Situação do Estoque"
-#: templates/js/translated/purchase_order.js:1175
+#: templates/js/translated/purchase_order.js:1190
msgid "Add barcode"
msgstr ""
-#: templates/js/translated/purchase_order.js:1176
+#: templates/js/translated/purchase_order.js:1191
msgid "Remove barcode"
msgstr ""
-#: templates/js/translated/purchase_order.js:1179
+#: templates/js/translated/purchase_order.js:1194
msgid "Specify location"
msgstr ""
-#: templates/js/translated/purchase_order.js:1187
+#: templates/js/translated/purchase_order.js:1202
msgid "Add batch code"
msgstr ""
-#: templates/js/translated/purchase_order.js:1198
+#: templates/js/translated/purchase_order.js:1213
msgid "Add serial numbers"
msgstr ""
-#: templates/js/translated/purchase_order.js:1250
+#: templates/js/translated/purchase_order.js:1265
msgid "Serials"
msgstr ""
-#: templates/js/translated/purchase_order.js:1275
+#: templates/js/translated/purchase_order.js:1290
msgid "Order Code"
msgstr ""
-#: templates/js/translated/purchase_order.js:1277
+#: templates/js/translated/purchase_order.js:1292
msgid "Quantity to Receive"
msgstr ""
-#: templates/js/translated/purchase_order.js:1299
-#: templates/js/translated/return_order.js:545
+#: templates/js/translated/purchase_order.js:1314
+#: templates/js/translated/return_order.js:557
msgid "Confirm receipt of items"
msgstr ""
-#: templates/js/translated/purchase_order.js:1300
+#: templates/js/translated/purchase_order.js:1315
msgid "Receive Purchase Order Items"
msgstr ""
-#: templates/js/translated/purchase_order.js:1368
+#: templates/js/translated/purchase_order.js:1383
msgid "Scan Item Barcode"
msgstr ""
-#: templates/js/translated/purchase_order.js:1369
+#: templates/js/translated/purchase_order.js:1384
msgid "Scan barcode on incoming item (must not match any existing stock items)"
msgstr ""
-#: templates/js/translated/purchase_order.js:1383
+#: templates/js/translated/purchase_order.js:1398
msgid "Invalid barcode data"
msgstr ""
-#: templates/js/translated/purchase_order.js:1645
-#: templates/js/translated/return_order.js:274
-#: templates/js/translated/sales_order.js:762
-#: templates/js/translated/sales_order.js:986
+#: templates/js/translated/purchase_order.js:1660
+#: templates/js/translated/return_order.js:286
+#: templates/js/translated/sales_order.js:774
+#: templates/js/translated/sales_order.js:998
msgid "Order is overdue"
msgstr ""
-#: templates/js/translated/purchase_order.js:1707
-#: templates/js/translated/return_order.js:342
-#: templates/js/translated/sales_order.js:839
-#: templates/js/translated/sales_order.js:999
+#: templates/js/translated/purchase_order.js:1722
+#: templates/js/translated/return_order.js:354
+#: templates/js/translated/sales_order.js:851
+#: templates/js/translated/sales_order.js:1011
msgid "Items"
msgstr ""
-#: templates/js/translated/purchase_order.js:1806
+#: templates/js/translated/purchase_order.js:1821
msgid "All selected Line items will be deleted"
msgstr ""
-#: templates/js/translated/purchase_order.js:1824
+#: templates/js/translated/purchase_order.js:1839
msgid "Delete selected Line items?"
msgstr ""
-#: templates/js/translated/purchase_order.js:1884
-#: templates/js/translated/sales_order.js:2047
+#: templates/js/translated/purchase_order.js:1894
+#: templates/js/translated/sales_order.js:2059
msgid "Duplicate Line Item"
msgstr ""
-#: templates/js/translated/purchase_order.js:1899
-#: templates/js/translated/return_order.js:464
-#: templates/js/translated/return_order.js:653
-#: templates/js/translated/sales_order.js:2060
+#: templates/js/translated/purchase_order.js:1909
+#: templates/js/translated/return_order.js:476
+#: templates/js/translated/return_order.js:665
+#: templates/js/translated/sales_order.js:2072
msgid "Edit Line Item"
msgstr ""
-#: templates/js/translated/purchase_order.js:1910
-#: templates/js/translated/return_order.js:666
-#: templates/js/translated/sales_order.js:2071
+#: templates/js/translated/purchase_order.js:1920
+#: templates/js/translated/return_order.js:678
+#: templates/js/translated/sales_order.js:2083
msgid "Delete Line Item"
msgstr ""
-#: templates/js/translated/purchase_order.js:2192
-#: templates/js/translated/sales_order.js:2001
+#: templates/js/translated/purchase_order.js:2202
+#: templates/js/translated/sales_order.js:2013
msgid "Duplicate line item"
msgstr ""
-#: templates/js/translated/purchase_order.js:2193
-#: templates/js/translated/return_order.js:785
-#: templates/js/translated/sales_order.js:2002
+#: templates/js/translated/purchase_order.js:2203
+#: templates/js/translated/return_order.js:797
+#: templates/js/translated/sales_order.js:2014
msgid "Edit line item"
msgstr ""
-#: templates/js/translated/purchase_order.js:2194
-#: templates/js/translated/return_order.js:789
-#: templates/js/translated/sales_order.js:2008
+#: templates/js/translated/purchase_order.js:2204
+#: templates/js/translated/return_order.js:801
+#: templates/js/translated/sales_order.js:2020
msgid "Delete line item"
msgstr ""
@@ -11424,941 +11553,973 @@ msgstr ""
msgid "Add Customer"
msgstr ""
-#: templates/js/translated/return_order.js:119
+#: templates/js/translated/return_order.js:131
msgid "Create Return Order"
msgstr ""
-#: templates/js/translated/return_order.js:134
+#: templates/js/translated/return_order.js:146
msgid "Edit Return Order"
msgstr ""
-#: templates/js/translated/return_order.js:154
+#: templates/js/translated/return_order.js:166
msgid "Issue Return Order"
msgstr ""
-#: templates/js/translated/return_order.js:171
+#: templates/js/translated/return_order.js:183
msgid "Are you sure you wish to cancel this Return Order?"
msgstr ""
-#: templates/js/translated/return_order.js:178
+#: templates/js/translated/return_order.js:190
msgid "Cancel Return Order"
msgstr ""
-#: templates/js/translated/return_order.js:203
+#: templates/js/translated/return_order.js:215
msgid "Complete Return Order"
msgstr ""
-#: templates/js/translated/return_order.js:251
+#: templates/js/translated/return_order.js:263
msgid "No return orders found"
msgstr ""
-#: templates/js/translated/return_order.js:288
-#: templates/js/translated/sales_order.js:776
+#: templates/js/translated/return_order.js:300
+#: templates/js/translated/sales_order.js:788
msgid "Invalid Customer"
msgstr ""
-#: templates/js/translated/return_order.js:546
+#: templates/js/translated/return_order.js:558
msgid "Receive Return Order Items"
msgstr ""
-#: templates/js/translated/return_order.js:677
-#: templates/js/translated/sales_order.js:2207
+#: templates/js/translated/return_order.js:689
+#: templates/js/translated/sales_order.js:2219
msgid "No matching line items"
msgstr ""
-#: templates/js/translated/return_order.js:782
+#: templates/js/translated/return_order.js:794
msgid "Mark item as received"
msgstr ""
-#: templates/js/translated/sales_order.js:146
+#: templates/js/translated/sales_order.js:158
msgid "Create Sales Order"
msgstr ""
-#: templates/js/translated/sales_order.js:161
+#: templates/js/translated/sales_order.js:173
msgid "Edit Sales Order"
msgstr ""
-#: templates/js/translated/sales_order.js:276
+#: templates/js/translated/sales_order.js:288
msgid "No stock items have been allocated to this shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:281
+#: templates/js/translated/sales_order.js:293
msgid "The following stock items will be shipped"
msgstr ""
-#: templates/js/translated/sales_order.js:321
+#: templates/js/translated/sales_order.js:333
msgid "Complete Shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:345
+#: templates/js/translated/sales_order.js:357
msgid "Confirm Shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:401
+#: templates/js/translated/sales_order.js:413
msgid "No pending shipments found"
msgstr ""
-#: templates/js/translated/sales_order.js:405
+#: templates/js/translated/sales_order.js:417
msgid "No stock items have been allocated to pending shipments"
msgstr ""
-#: templates/js/translated/sales_order.js:415
+#: templates/js/translated/sales_order.js:427
msgid "Complete Shipments"
msgstr "Envios concluídos"
-#: templates/js/translated/sales_order.js:437
+#: templates/js/translated/sales_order.js:449
msgid "Skip"
msgstr ""
-#: templates/js/translated/sales_order.js:498
+#: templates/js/translated/sales_order.js:510
msgid "This order has line items which have not been completed."
msgstr ""
-#: templates/js/translated/sales_order.js:520
+#: templates/js/translated/sales_order.js:532
msgid "Issue this Sales Order?"
msgstr ""
-#: templates/js/translated/sales_order.js:525
+#: templates/js/translated/sales_order.js:537
msgid "Issue Sales Order"
msgstr ""
-#: templates/js/translated/sales_order.js:544
+#: templates/js/translated/sales_order.js:556
msgid "Cancel Sales Order"
msgstr ""
-#: templates/js/translated/sales_order.js:549
+#: templates/js/translated/sales_order.js:561
msgid "Cancelling this order means that the order will no longer be editable."
msgstr ""
-#: templates/js/translated/sales_order.js:603
+#: templates/js/translated/sales_order.js:615
msgid "Create New Shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:713
+#: templates/js/translated/sales_order.js:725
msgid "No sales orders found"
msgstr ""
-#: templates/js/translated/sales_order.js:896
+#: templates/js/translated/sales_order.js:908
msgid "Edit shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:899
+#: templates/js/translated/sales_order.js:911
msgid "Complete shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:904
+#: templates/js/translated/sales_order.js:916
msgid "Delete shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:921
+#: templates/js/translated/sales_order.js:933
msgid "Edit Shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:936
+#: templates/js/translated/sales_order.js:948
msgid "Delete Shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:969
+#: templates/js/translated/sales_order.js:981
msgid "No matching shipments found"
msgstr ""
-#: templates/js/translated/sales_order.js:994
+#: templates/js/translated/sales_order.js:1006
msgid "Shipment Reference"
msgstr ""
-#: templates/js/translated/sales_order.js:1018
-#: templates/js/translated/sales_order.js:1515
+#: templates/js/translated/sales_order.js:1030
+#: templates/js/translated/sales_order.js:1527
msgid "Not shipped"
msgstr ""
-#: templates/js/translated/sales_order.js:1036
+#: templates/js/translated/sales_order.js:1048
msgid "Tracking"
msgstr ""
-#: templates/js/translated/sales_order.js:1040
+#: templates/js/translated/sales_order.js:1052
msgid "Invoice"
msgstr ""
-#: templates/js/translated/sales_order.js:1207
+#: templates/js/translated/sales_order.js:1219
msgid "Add Shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:1258
+#: templates/js/translated/sales_order.js:1270
msgid "Confirm stock allocation"
msgstr ""
-#: templates/js/translated/sales_order.js:1259
+#: templates/js/translated/sales_order.js:1271
msgid "Allocate Stock Items to Sales Order"
msgstr ""
-#: templates/js/translated/sales_order.js:1463
+#: templates/js/translated/sales_order.js:1475
msgid "No sales order allocations found"
msgstr ""
-#: templates/js/translated/sales_order.js:1555
+#: templates/js/translated/sales_order.js:1567
msgid "Edit Stock Allocation"
msgstr ""
-#: templates/js/translated/sales_order.js:1569
+#: templates/js/translated/sales_order.js:1581
msgid "Confirm Delete Operation"
msgstr ""
-#: templates/js/translated/sales_order.js:1570
+#: templates/js/translated/sales_order.js:1582
msgid "Delete Stock Allocation"
msgstr ""
-#: templates/js/translated/sales_order.js:1609
-#: templates/js/translated/sales_order.js:1696
-#: templates/js/translated/stock.js:1688
+#: templates/js/translated/sales_order.js:1621
+#: templates/js/translated/sales_order.js:1708
+#: templates/js/translated/stock.js:1687
msgid "Shipped to customer"
msgstr ""
-#: templates/js/translated/sales_order.js:1617
-#: templates/js/translated/sales_order.js:1705
+#: templates/js/translated/sales_order.js:1629
+#: templates/js/translated/sales_order.js:1717
msgid "Stock location not specified"
msgstr ""
-#: templates/js/translated/sales_order.js:1985
+#: templates/js/translated/sales_order.js:1997
msgid "Allocate serial numbers"
msgstr ""
-#: templates/js/translated/sales_order.js:1989
+#: templates/js/translated/sales_order.js:2001
msgid "Purchase stock"
msgstr ""
-#: templates/js/translated/sales_order.js:1998
-#: templates/js/translated/sales_order.js:2185
+#: templates/js/translated/sales_order.js:2010
+#: templates/js/translated/sales_order.js:2197
msgid "Calculate price"
msgstr ""
-#: templates/js/translated/sales_order.js:2012
+#: templates/js/translated/sales_order.js:2024
msgid "Cannot be deleted as items have been shipped"
msgstr ""
-#: templates/js/translated/sales_order.js:2015
+#: templates/js/translated/sales_order.js:2027
msgid "Cannot be deleted as items have been allocated"
msgstr ""
-#: templates/js/translated/sales_order.js:2086
+#: templates/js/translated/sales_order.js:2098
msgid "Allocate Serial Numbers"
msgstr ""
-#: templates/js/translated/sales_order.js:2193
+#: templates/js/translated/sales_order.js:2205
msgid "Update Unit Price"
msgstr ""
-#: templates/js/translated/search.js:312
+#: templates/js/translated/search.js:270
msgid "No results"
msgstr ""
-#: templates/js/translated/search.js:334 templates/search.html:25
+#: templates/js/translated/search.js:292 templates/search.html:25
msgid "Enter search query"
msgstr ""
-#: templates/js/translated/search.js:384
+#: templates/js/translated/search.js:342
msgid "result"
msgstr ""
-#: templates/js/translated/search.js:384
+#: templates/js/translated/search.js:342
msgid "results"
msgstr ""
-#: templates/js/translated/search.js:394
+#: templates/js/translated/search.js:352
msgid "Minimize results"
msgstr ""
-#: templates/js/translated/search.js:397
+#: templates/js/translated/search.js:355
msgid "Remove results"
msgstr ""
-#: templates/js/translated/stock.js:98
+#: templates/js/translated/stock.js:97
msgid "Serialize Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:129
+#: templates/js/translated/stock.js:128
msgid "Confirm Stock Serialization"
msgstr ""
-#: templates/js/translated/stock.js:138
+#: templates/js/translated/stock.js:137
msgid "Parent stock location"
msgstr ""
-#: templates/js/translated/stock.js:173
+#: templates/js/translated/stock.js:172
msgid "Edit Stock Location"
msgstr ""
-#: templates/js/translated/stock.js:188
+#: templates/js/translated/stock.js:187
msgid "New Stock Location"
msgstr ""
-#: templates/js/translated/stock.js:190
+#: templates/js/translated/stock.js:189
msgid "Create another location after this one"
msgstr ""
-#: templates/js/translated/stock.js:191
+#: templates/js/translated/stock.js:190
msgid "Stock location created"
msgstr ""
-#: templates/js/translated/stock.js:205
+#: templates/js/translated/stock.js:204
msgid "Are you sure you want to delete this stock location?"
msgstr ""
-#: templates/js/translated/stock.js:212
+#: templates/js/translated/stock.js:211
msgid "Move to parent stock location"
msgstr ""
-#: templates/js/translated/stock.js:221
+#: templates/js/translated/stock.js:220
msgid "Delete Stock Location"
msgstr ""
-#: templates/js/translated/stock.js:225
+#: templates/js/translated/stock.js:224
msgid "Action for stock items in this stock location"
msgstr ""
-#: templates/js/translated/stock.js:230
+#: templates/js/translated/stock.js:229
msgid "Action for sub-locations"
msgstr ""
-#: templates/js/translated/stock.js:284
+#: templates/js/translated/stock.js:283
msgid "This part cannot be serialized"
msgstr ""
-#: templates/js/translated/stock.js:320
+#: templates/js/translated/stock.js:319
msgid "Add given quantity as packs instead of individual items"
msgstr ""
-#: templates/js/translated/stock.js:329
+#: templates/js/translated/stock.js:328
msgid "Enter initial quantity for this stock item"
msgstr ""
-#: templates/js/translated/stock.js:335
+#: templates/js/translated/stock.js:334
msgid "Enter serial numbers for new stock (or leave blank)"
msgstr ""
-#: templates/js/translated/stock.js:406
+#: templates/js/translated/stock.js:405
msgid "Stock item duplicated"
msgstr ""
-#: templates/js/translated/stock.js:426
+#: templates/js/translated/stock.js:425
msgid "Duplicate Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:442
+#: templates/js/translated/stock.js:441
msgid "Are you sure you want to delete this stock item?"
msgstr ""
-#: templates/js/translated/stock.js:447
+#: templates/js/translated/stock.js:446
msgid "Delete Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:468
+#: templates/js/translated/stock.js:467
msgid "Edit Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:510
+#: templates/js/translated/stock.js:509
msgid "Create another item after this one"
msgstr ""
-#: templates/js/translated/stock.js:522
+#: templates/js/translated/stock.js:521
msgid "Created new stock item"
msgstr ""
-#: templates/js/translated/stock.js:535
+#: templates/js/translated/stock.js:534
msgid "Created multiple stock items"
msgstr ""
-#: templates/js/translated/stock.js:560
+#: templates/js/translated/stock.js:559
msgid "Find Serial Number"
msgstr ""
-#: templates/js/translated/stock.js:564 templates/js/translated/stock.js:565
+#: templates/js/translated/stock.js:563 templates/js/translated/stock.js:564
msgid "Enter serial number"
msgstr ""
-#: templates/js/translated/stock.js:581
+#: templates/js/translated/stock.js:580
msgid "Enter a serial number"
msgstr ""
-#: templates/js/translated/stock.js:601
+#: templates/js/translated/stock.js:600
msgid "No matching serial number"
msgstr ""
-#: templates/js/translated/stock.js:610
+#: templates/js/translated/stock.js:609
msgid "More than one matching result found"
msgstr ""
-#: templates/js/translated/stock.js:718
+#: templates/js/translated/stock.js:717
msgid "Confirm stock assignment"
msgstr ""
-#: templates/js/translated/stock.js:719
+#: templates/js/translated/stock.js:718
msgid "Assign Stock to Customer"
msgstr ""
-#: templates/js/translated/stock.js:796
+#: templates/js/translated/stock.js:795
msgid "Warning: Merge operation cannot be reversed"
msgstr ""
-#: templates/js/translated/stock.js:797
+#: templates/js/translated/stock.js:796
msgid "Some information will be lost when merging stock items"
msgstr ""
-#: templates/js/translated/stock.js:799
+#: templates/js/translated/stock.js:798
msgid "Stock transaction history will be deleted for merged items"
msgstr ""
-#: templates/js/translated/stock.js:800
+#: templates/js/translated/stock.js:799
msgid "Supplier part information will be deleted for merged items"
msgstr ""
-#: templates/js/translated/stock.js:891
+#: templates/js/translated/stock.js:890
msgid "Confirm stock item merge"
msgstr ""
-#: templates/js/translated/stock.js:892
+#: templates/js/translated/stock.js:891
msgid "Merge Stock Items"
msgstr ""
-#: templates/js/translated/stock.js:987
+#: templates/js/translated/stock.js:986
msgid "Transfer Stock"
msgstr ""
-#: templates/js/translated/stock.js:988
+#: templates/js/translated/stock.js:987
msgid "Move"
msgstr ""
-#: templates/js/translated/stock.js:994
+#: templates/js/translated/stock.js:993
msgid "Count Stock"
msgstr ""
-#: templates/js/translated/stock.js:995
+#: templates/js/translated/stock.js:994
msgid "Count"
msgstr ""
-#: templates/js/translated/stock.js:999
+#: templates/js/translated/stock.js:998
msgid "Remove Stock"
msgstr ""
-#: templates/js/translated/stock.js:1000
+#: templates/js/translated/stock.js:999
msgid "Take"
msgstr ""
-#: templates/js/translated/stock.js:1004
+#: templates/js/translated/stock.js:1003
msgid "Add Stock"
msgstr ""
-#: templates/js/translated/stock.js:1005 users/models.py:243
+#: templates/js/translated/stock.js:1004 users/models.py:249
msgid "Add"
msgstr ""
-#: templates/js/translated/stock.js:1009
+#: templates/js/translated/stock.js:1008
msgid "Delete Stock"
msgstr ""
-#: templates/js/translated/stock.js:1106
+#: templates/js/translated/stock.js:1105
msgid "Quantity cannot be adjusted for serialized stock"
msgstr ""
-#: templates/js/translated/stock.js:1106
+#: templates/js/translated/stock.js:1105
msgid "Specify stock quantity"
msgstr ""
-#: templates/js/translated/stock.js:1140
+#: templates/js/translated/stock.js:1139 templates/js/translated/stock.js:3151
msgid "Select Stock Items"
msgstr ""
-#: templates/js/translated/stock.js:1141
-msgid "You must select at least one available stock item"
+#: templates/js/translated/stock.js:1140
+msgid "Select at least one available stock item"
msgstr ""
-#: templates/js/translated/stock.js:1168
+#: templates/js/translated/stock.js:1167
msgid "Confirm stock adjustment"
msgstr ""
-#: templates/js/translated/stock.js:1304
+#: templates/js/translated/stock.js:1303
msgid "PASS"
msgstr ""
-#: templates/js/translated/stock.js:1306
+#: templates/js/translated/stock.js:1305
msgid "FAIL"
msgstr ""
-#: templates/js/translated/stock.js:1311
+#: templates/js/translated/stock.js:1310
msgid "NO RESULT"
msgstr ""
-#: templates/js/translated/stock.js:1373
+#: templates/js/translated/stock.js:1372
msgid "Pass test"
msgstr ""
-#: templates/js/translated/stock.js:1376
+#: templates/js/translated/stock.js:1375
msgid "Add test result"
msgstr ""
-#: templates/js/translated/stock.js:1400
+#: templates/js/translated/stock.js:1399
msgid "No test results found"
msgstr ""
-#: templates/js/translated/stock.js:1464
+#: templates/js/translated/stock.js:1463
msgid "Test Date"
msgstr ""
-#: templates/js/translated/stock.js:1626
+#: templates/js/translated/stock.js:1625
msgid "Edit Test Result"
msgstr ""
-#: templates/js/translated/stock.js:1648
+#: templates/js/translated/stock.js:1647
msgid "Delete Test Result"
msgstr ""
-#: templates/js/translated/stock.js:1680
+#: templates/js/translated/stock.js:1679
msgid "In production"
msgstr ""
-#: templates/js/translated/stock.js:1684
+#: templates/js/translated/stock.js:1683
msgid "Installed in Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:1692
+#: templates/js/translated/stock.js:1691
msgid "Assigned to Sales Order"
msgstr ""
-#: templates/js/translated/stock.js:1698
+#: templates/js/translated/stock.js:1697
msgid "No stock location set"
msgstr ""
-#: templates/js/translated/stock.js:1746
+#: templates/js/translated/stock.js:1753
+msgid "Change stock status"
+msgstr ""
+
+#: templates/js/translated/stock.js:1762
+msgid "Merge stock"
+msgstr ""
+
+#: templates/js/translated/stock.js:1811
+msgid "Delete stock"
+msgstr ""
+
+#: templates/js/translated/stock.js:1866
msgid "stock items"
msgstr ""
-#: templates/js/translated/stock.js:1850
+#: templates/js/translated/stock.js:1871
+msgid "Scan to location"
+msgstr ""
+
+#: templates/js/translated/stock.js:1882
+msgid "Stock Actions"
+msgstr ""
+
+#: templates/js/translated/stock.js:1929
+msgid "Load installed items"
+msgstr ""
+
+#: templates/js/translated/stock.js:2007
msgid "Stock item is in production"
msgstr ""
-#: templates/js/translated/stock.js:1855
+#: templates/js/translated/stock.js:2012
msgid "Stock item assigned to sales order"
msgstr ""
-#: templates/js/translated/stock.js:1858
+#: templates/js/translated/stock.js:2015
msgid "Stock item assigned to customer"
msgstr ""
-#: templates/js/translated/stock.js:1861
+#: templates/js/translated/stock.js:2018
msgid "Serialized stock item has been allocated"
msgstr ""
-#: templates/js/translated/stock.js:1863
+#: templates/js/translated/stock.js:2020
msgid "Stock item has been fully allocated"
msgstr ""
-#: templates/js/translated/stock.js:1865
+#: templates/js/translated/stock.js:2022
msgid "Stock item has been partially allocated"
msgstr ""
-#: templates/js/translated/stock.js:1868
+#: templates/js/translated/stock.js:2025
msgid "Stock item has been installed in another item"
msgstr ""
-#: templates/js/translated/stock.js:1870
+#: templates/js/translated/stock.js:2027
msgid "Stock item has been consumed by a build order"
msgstr ""
-#: templates/js/translated/stock.js:1874
+#: templates/js/translated/stock.js:2031
msgid "Stock item has expired"
msgstr ""
-#: templates/js/translated/stock.js:1876
+#: templates/js/translated/stock.js:2033
msgid "Stock item will expire soon"
msgstr ""
-#: templates/js/translated/stock.js:1881
+#: templates/js/translated/stock.js:2038
msgid "Stock item has been rejected"
msgstr ""
-#: templates/js/translated/stock.js:1883
+#: templates/js/translated/stock.js:2040
msgid "Stock item is lost"
msgstr ""
-#: templates/js/translated/stock.js:1885
+#: templates/js/translated/stock.js:2042
msgid "Stock item is destroyed"
msgstr ""
-#: templates/js/translated/stock.js:1889
-#: templates/js/translated/table_filters.js:296
+#: templates/js/translated/stock.js:2046
+#: templates/js/translated/table_filters.js:302
msgid "Depleted"
msgstr ""
-#: templates/js/translated/stock.js:2031
+#: templates/js/translated/stock.js:2188
msgid "Supplier part not specified"
msgstr ""
-#: templates/js/translated/stock.js:2078
+#: templates/js/translated/stock.js:2235
msgid "Stock Value"
msgstr ""
-#: templates/js/translated/stock.js:2170
+#: templates/js/translated/stock.js:2358
msgid "No stock items matching query"
msgstr ""
-#: templates/js/translated/stock.js:2319
+#: templates/js/translated/stock.js:2450
msgid "stock locations"
msgstr ""
-#: templates/js/translated/stock.js:2476
+#: templates/js/translated/stock.js:2607
msgid "Load Subloactions"
msgstr ""
-#: templates/js/translated/stock.js:2583
+#: templates/js/translated/stock.js:2714
msgid "Details"
msgstr ""
-#: templates/js/translated/stock.js:2587
+#: templates/js/translated/stock.js:2718
msgid "No changes"
msgstr ""
-#: templates/js/translated/stock.js:2599
+#: templates/js/translated/stock.js:2730
msgid "Part information unavailable"
msgstr ""
-#: templates/js/translated/stock.js:2621
+#: templates/js/translated/stock.js:2752
msgid "Location no longer exists"
msgstr ""
-#: templates/js/translated/stock.js:2638
+#: templates/js/translated/stock.js:2769
msgid "Build order no longer exists"
msgstr ""
-#: templates/js/translated/stock.js:2653
+#: templates/js/translated/stock.js:2784
msgid "Purchase order no longer exists"
msgstr ""
-#: templates/js/translated/stock.js:2670
+#: templates/js/translated/stock.js:2801
msgid "Sales Order no longer exists"
msgstr ""
-#: templates/js/translated/stock.js:2687
+#: templates/js/translated/stock.js:2818
msgid "Return Order no longer exists"
msgstr ""
-#: templates/js/translated/stock.js:2706
+#: templates/js/translated/stock.js:2837
msgid "Customer no longer exists"
msgstr ""
-#: templates/js/translated/stock.js:2724
+#: templates/js/translated/stock.js:2855
msgid "Stock item no longer exists"
msgstr ""
-#: templates/js/translated/stock.js:2742
+#: templates/js/translated/stock.js:2873
msgid "Added"
msgstr ""
-#: templates/js/translated/stock.js:2750
+#: templates/js/translated/stock.js:2881
msgid "Removed"
msgstr ""
-#: templates/js/translated/stock.js:2826
+#: templates/js/translated/stock.js:2953
msgid "No installed items"
msgstr ""
-#: templates/js/translated/stock.js:2876 templates/js/translated/stock.js:2911
+#: templates/js/translated/stock.js:3003 templates/js/translated/stock.js:3038
msgid "Uninstall Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:2929
+#: templates/js/translated/stock.js:3056
msgid "Select stock item to uninstall"
msgstr ""
-#: templates/js/translated/stock.js:2950
+#: templates/js/translated/stock.js:3077
msgid "Install another stock item into this item"
msgstr ""
-#: templates/js/translated/stock.js:2951
+#: templates/js/translated/stock.js:3078
msgid "Stock items can only be installed if they meet the following criteria"
msgstr ""
-#: templates/js/translated/stock.js:2953
+#: templates/js/translated/stock.js:3080
msgid "The Stock Item links to a Part which is the BOM for this Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:2954
+#: templates/js/translated/stock.js:3081
msgid "The Stock Item is currently available in stock"
msgstr ""
-#: templates/js/translated/stock.js:2955
+#: templates/js/translated/stock.js:3082
msgid "The Stock Item is not already installed in another item"
msgstr ""
-#: templates/js/translated/stock.js:2956
+#: templates/js/translated/stock.js:3083
msgid "The Stock Item is tracked by either a batch code or serial number"
msgstr ""
-#: templates/js/translated/stock.js:2969
+#: templates/js/translated/stock.js:3096
msgid "Select part to install"
msgstr ""
+#: templates/js/translated/stock.js:3152
+msgid "Select one or more stock items"
+msgstr ""
+
+#: templates/js/translated/stock.js:3165
+msgid "Selected stock items"
+msgstr ""
+
+#: templates/js/translated/stock.js:3169
+msgid "Change Stock Status"
+msgstr ""
+
#: templates/js/translated/table_filters.js:50
msgid "Has project code"
msgstr ""
-#: templates/js/translated/table_filters.js:59
-#: templates/js/translated/table_filters.js:518
-#: templates/js/translated/table_filters.js:530
-#: templates/js/translated/table_filters.js:571
+#: templates/js/translated/table_filters.js:65
+#: templates/js/translated/table_filters.js:540
+#: templates/js/translated/table_filters.js:552
+#: templates/js/translated/table_filters.js:593
msgid "Order status"
msgstr "Situação dos Pedidos"
-#: templates/js/translated/table_filters.js:64
-#: templates/js/translated/table_filters.js:535
-#: templates/js/translated/table_filters.js:561
-#: templates/js/translated/table_filters.js:576
+#: templates/js/translated/table_filters.js:70
+#: templates/js/translated/table_filters.js:557
+#: templates/js/translated/table_filters.js:583
+#: templates/js/translated/table_filters.js:598
msgid "Outstanding"
msgstr ""
-#: templates/js/translated/table_filters.js:72
-#: templates/js/translated/table_filters.js:458
-#: templates/js/translated/table_filters.js:543
-#: templates/js/translated/table_filters.js:584
+#: templates/js/translated/table_filters.js:78
+#: templates/js/translated/table_filters.js:464
+#: templates/js/translated/table_filters.js:565
+#: templates/js/translated/table_filters.js:606
msgid "Assigned to me"
msgstr ""
-#: templates/js/translated/table_filters.js:128
+#: templates/js/translated/table_filters.js:134
msgid "Trackable Part"
msgstr ""
-#: templates/js/translated/table_filters.js:132
+#: templates/js/translated/table_filters.js:138
msgid "Assembled Part"
msgstr ""
-#: templates/js/translated/table_filters.js:136
+#: templates/js/translated/table_filters.js:142
msgid "Has Available Stock"
msgstr ""
-#: templates/js/translated/table_filters.js:152
+#: templates/js/translated/table_filters.js:158
msgid "Allow Variant Stock"
msgstr ""
-#: templates/js/translated/table_filters.js:164
-#: templates/js/translated/table_filters.js:692
+#: templates/js/translated/table_filters.js:170
+#: templates/js/translated/table_filters.js:714
msgid "Has Pricing"
msgstr ""
-#: templates/js/translated/table_filters.js:204
-#: templates/js/translated/table_filters.js:291
+#: templates/js/translated/table_filters.js:210
+#: templates/js/translated/table_filters.js:297
msgid "Include sublocations"
msgstr ""
-#: templates/js/translated/table_filters.js:205
+#: templates/js/translated/table_filters.js:211
msgid "Include locations"
msgstr ""
-#: templates/js/translated/table_filters.js:224
-#: templates/js/translated/table_filters.js:225
-#: templates/js/translated/table_filters.js:624
+#: templates/js/translated/table_filters.js:230
+#: templates/js/translated/table_filters.js:231
+#: templates/js/translated/table_filters.js:646
msgid "Include subcategories"
msgstr ""
-#: templates/js/translated/table_filters.js:233
-#: templates/js/translated/table_filters.js:672
+#: templates/js/translated/table_filters.js:239
+#: templates/js/translated/table_filters.js:694
msgid "Subscribed"
msgstr ""
-#: templates/js/translated/table_filters.js:244
-#: templates/js/translated/table_filters.js:326
+#: templates/js/translated/table_filters.js:250
+#: templates/js/translated/table_filters.js:332
msgid "Is Serialized"
msgstr ""
-#: templates/js/translated/table_filters.js:247
-#: templates/js/translated/table_filters.js:333
+#: templates/js/translated/table_filters.js:253
+#: templates/js/translated/table_filters.js:339
msgid "Serial number GTE"
msgstr ""
-#: templates/js/translated/table_filters.js:248
-#: templates/js/translated/table_filters.js:334
+#: templates/js/translated/table_filters.js:254
+#: templates/js/translated/table_filters.js:340
msgid "Serial number greater than or equal to"
msgstr ""
-#: templates/js/translated/table_filters.js:251
-#: templates/js/translated/table_filters.js:337
+#: templates/js/translated/table_filters.js:257
+#: templates/js/translated/table_filters.js:343
msgid "Serial number LTE"
msgstr ""
-#: templates/js/translated/table_filters.js:252
-#: templates/js/translated/table_filters.js:338
+#: templates/js/translated/table_filters.js:258
+#: templates/js/translated/table_filters.js:344
msgid "Serial number less than or equal to"
msgstr ""
-#: templates/js/translated/table_filters.js:255
-#: templates/js/translated/table_filters.js:256
-#: templates/js/translated/table_filters.js:329
-#: templates/js/translated/table_filters.js:330
+#: templates/js/translated/table_filters.js:261
+#: templates/js/translated/table_filters.js:262
+#: templates/js/translated/table_filters.js:335
+#: templates/js/translated/table_filters.js:336
msgid "Serial number"
msgstr ""
-#: templates/js/translated/table_filters.js:260
-#: templates/js/translated/table_filters.js:351
+#: templates/js/translated/table_filters.js:266
+#: templates/js/translated/table_filters.js:357
msgid "Batch code"
msgstr ""
-#: templates/js/translated/table_filters.js:271
-#: templates/js/translated/table_filters.js:613
+#: templates/js/translated/table_filters.js:277
+#: templates/js/translated/table_filters.js:635
msgid "Active parts"
msgstr ""
-#: templates/js/translated/table_filters.js:272
+#: templates/js/translated/table_filters.js:278
msgid "Show stock for active parts"
msgstr ""
-#: templates/js/translated/table_filters.js:277
+#: templates/js/translated/table_filters.js:283
msgid "Part is an assembly"
msgstr ""
-#: templates/js/translated/table_filters.js:281
+#: templates/js/translated/table_filters.js:287
msgid "Is allocated"
msgstr ""
-#: templates/js/translated/table_filters.js:282
+#: templates/js/translated/table_filters.js:288
msgid "Item has been allocated"
msgstr ""
-#: templates/js/translated/table_filters.js:287
+#: templates/js/translated/table_filters.js:293
msgid "Stock is available for use"
msgstr ""
-#: templates/js/translated/table_filters.js:292
+#: templates/js/translated/table_filters.js:298
msgid "Include stock in sublocations"
msgstr ""
-#: templates/js/translated/table_filters.js:297
+#: templates/js/translated/table_filters.js:303
msgid "Show stock items which are depleted"
msgstr ""
-#: templates/js/translated/table_filters.js:302
+#: templates/js/translated/table_filters.js:308
msgid "Show items which are in stock"
msgstr ""
-#: templates/js/translated/table_filters.js:306
+#: templates/js/translated/table_filters.js:312
msgid "In Production"
msgstr ""
-#: templates/js/translated/table_filters.js:307
+#: templates/js/translated/table_filters.js:313
msgid "Show items which are in production"
msgstr ""
-#: templates/js/translated/table_filters.js:311
+#: templates/js/translated/table_filters.js:317
msgid "Include Variants"
msgstr ""
-#: templates/js/translated/table_filters.js:312
+#: templates/js/translated/table_filters.js:318
msgid "Include stock items for variant parts"
msgstr ""
-#: templates/js/translated/table_filters.js:316
+#: templates/js/translated/table_filters.js:322
msgid "Installed"
msgstr ""
-#: templates/js/translated/table_filters.js:317
+#: templates/js/translated/table_filters.js:323
msgid "Show stock items which are installed in another item"
msgstr ""
-#: templates/js/translated/table_filters.js:322
+#: templates/js/translated/table_filters.js:328
msgid "Show items which have been assigned to a customer"
msgstr ""
-#: templates/js/translated/table_filters.js:342
-#: templates/js/translated/table_filters.js:343
+#: templates/js/translated/table_filters.js:348
+#: templates/js/translated/table_filters.js:349
msgid "Stock status"
msgstr "Estado do Estoque"
-#: templates/js/translated/table_filters.js:346
+#: templates/js/translated/table_filters.js:352
msgid "Has batch code"
msgstr ""
-#: templates/js/translated/table_filters.js:354
-msgid "Tracked"
-msgstr ""
-
-#: templates/js/translated/table_filters.js:355
+#: templates/js/translated/table_filters.js:361
msgid "Stock item is tracked by either batch code or serial number"
msgstr ""
-#: templates/js/translated/table_filters.js:360
+#: templates/js/translated/table_filters.js:366
msgid "Has purchase price"
msgstr ""
-#: templates/js/translated/table_filters.js:361
+#: templates/js/translated/table_filters.js:367
msgid "Show stock items which have a purchase price set"
msgstr ""
-#: templates/js/translated/table_filters.js:365
+#: templates/js/translated/table_filters.js:371
msgid "Expiry Date before"
msgstr ""
-#: templates/js/translated/table_filters.js:369
+#: templates/js/translated/table_filters.js:375
msgid "Expiry Date after"
msgstr ""
-#: templates/js/translated/table_filters.js:382
+#: templates/js/translated/table_filters.js:388
msgid "Show stock items which have expired"
msgstr ""
-#: templates/js/translated/table_filters.js:388
+#: templates/js/translated/table_filters.js:394
msgid "Show stock which is close to expiring"
msgstr ""
-#: templates/js/translated/table_filters.js:402
+#: templates/js/translated/table_filters.js:408
msgid "Test Passed"
msgstr ""
-#: templates/js/translated/table_filters.js:406
+#: templates/js/translated/table_filters.js:412
msgid "Include Installed Items"
msgstr ""
-#: templates/js/translated/table_filters.js:445
+#: templates/js/translated/table_filters.js:451
msgid "Build status"
msgstr "Estado da Produção"
-#: templates/js/translated/table_filters.js:625
+#: templates/js/translated/table_filters.js:647
msgid "Include parts in subcategories"
msgstr ""
-#: templates/js/translated/table_filters.js:630
+#: templates/js/translated/table_filters.js:652
msgid "Show active parts"
msgstr ""
-#: templates/js/translated/table_filters.js:638
+#: templates/js/translated/table_filters.js:660
msgid "Available stock"
msgstr ""
-#: templates/js/translated/table_filters.js:646
-#: templates/js/translated/table_filters.js:742
+#: templates/js/translated/table_filters.js:668
+#: templates/js/translated/table_filters.js:764
msgid "Has Units"
msgstr ""
-#: templates/js/translated/table_filters.js:647
+#: templates/js/translated/table_filters.js:669
msgid "Part has defined units"
msgstr ""
-#: templates/js/translated/table_filters.js:651
+#: templates/js/translated/table_filters.js:673
msgid "Has IPN"
msgstr ""
-#: templates/js/translated/table_filters.js:652
+#: templates/js/translated/table_filters.js:674
msgid "Part has internal part number"
msgstr ""
-#: templates/js/translated/table_filters.js:656
+#: templates/js/translated/table_filters.js:678
msgid "In stock"
msgstr ""
-#: templates/js/translated/table_filters.js:664
+#: templates/js/translated/table_filters.js:686
msgid "Purchasable"
msgstr ""
-#: templates/js/translated/table_filters.js:676
+#: templates/js/translated/table_filters.js:698
msgid "Has stocktake entries"
msgstr "Tem entradas em balanço"
-#: templates/js/translated/table_filters.js:738
+#: templates/js/translated/table_filters.js:760
msgid "Has Choices"
msgstr ""
@@ -12390,51 +12551,51 @@ msgstr ""
msgid "Select File Format"
msgstr ""
-#: templates/js/translated/tables.js:561
+#: templates/js/translated/tables.js:537
msgid "Loading data"
msgstr ""
-#: templates/js/translated/tables.js:564
+#: templates/js/translated/tables.js:540
msgid "rows per page"
msgstr ""
-#: templates/js/translated/tables.js:569
+#: templates/js/translated/tables.js:545
msgid "Showing all rows"
msgstr ""
-#: templates/js/translated/tables.js:571
+#: templates/js/translated/tables.js:547
msgid "Showing"
msgstr ""
-#: templates/js/translated/tables.js:571
+#: templates/js/translated/tables.js:547
msgid "to"
msgstr ""
-#: templates/js/translated/tables.js:571
+#: templates/js/translated/tables.js:547
msgid "of"
msgstr ""
-#: templates/js/translated/tables.js:571
+#: templates/js/translated/tables.js:547
msgid "rows"
msgstr ""
-#: templates/js/translated/tables.js:578
+#: templates/js/translated/tables.js:554
msgid "No matching results"
msgstr ""
-#: templates/js/translated/tables.js:581
+#: templates/js/translated/tables.js:557
msgid "Hide/Show pagination"
msgstr ""
-#: templates/js/translated/tables.js:587
+#: templates/js/translated/tables.js:563
msgid "Toggle"
msgstr ""
-#: templates/js/translated/tables.js:590
+#: templates/js/translated/tables.js:566
msgid "Columns"
msgstr ""
-#: templates/js/translated/tables.js:593
+#: templates/js/translated/tables.js:569
msgid "All"
msgstr ""
@@ -12616,50 +12777,6 @@ msgstr ""
msgid "Email settings not configured"
msgstr ""
-#: templates/stock_table.html:17
-msgid "Barcode Actions"
-msgstr ""
-
-#: templates/stock_table.html:28
-msgid "Stock Options"
-msgstr ""
-
-#: templates/stock_table.html:33
-msgid "Add to selected stock items"
-msgstr ""
-
-#: templates/stock_table.html:34
-msgid "Remove from selected stock items"
-msgstr ""
-
-#: templates/stock_table.html:35
-msgid "Stocktake selected stock items"
-msgstr "Fazer balanço de itens do estoque selecionados"
-
-#: templates/stock_table.html:36
-msgid "Move selected stock items"
-msgstr ""
-
-#: templates/stock_table.html:37
-msgid "Merge selected stock items"
-msgstr ""
-
-#: templates/stock_table.html:37
-msgid "Merge stock"
-msgstr ""
-
-#: templates/stock_table.html:38
-msgid "Order selected items"
-msgstr ""
-
-#: templates/stock_table.html:42
-msgid "Delete selected items"
-msgstr ""
-
-#: templates/stock_table.html:42
-msgid "Delete stock"
-msgstr ""
-
#: templates/yesnolabel.html:4
msgid "Yes"
msgstr ""
@@ -12692,35 +12809,35 @@ msgstr ""
msgid "Important dates"
msgstr ""
-#: users/models.py:230
+#: users/models.py:236
msgid "Permission set"
msgstr ""
-#: users/models.py:238
+#: users/models.py:244
msgid "Group"
msgstr "Grupo"
-#: users/models.py:241
+#: users/models.py:247
msgid "View"
msgstr ""
-#: users/models.py:241
+#: users/models.py:247
msgid "Permission to view items"
msgstr ""
-#: users/models.py:243
+#: users/models.py:249
msgid "Permission to add items"
msgstr ""
-#: users/models.py:245
+#: users/models.py:251
msgid "Change"
msgstr ""
-#: users/models.py:245
+#: users/models.py:251
msgid "Permissions to edit items"
msgstr ""
-#: users/models.py:247
+#: users/models.py:253
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 5fae4b6286..c66e4d295c 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: 2023-06-05 11:04+0000\n"
+"POT-Creation-Date: 2023-06-12 21:36+0000\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME \n"
"Language-Team: LANGUAGE \n"
@@ -53,12 +53,12 @@ msgstr ""
#: InvenTree/fields.py:206 InvenTree/models.py:766 build/serializers.py:427
#: build/serializers.py:506 build/templates/build/sidebar.html:23
#: company/models.py:597 company/templates/company/sidebar.html:35
-#: order/models.py:1086 order/templates/order/po_sidebar.html:11
+#: order/models.py:1089 order/templates/order/po_sidebar.html:11
#: order/templates/order/return_order_sidebar.html:9
#: order/templates/order/so_sidebar.html:17 part/admin.py:41
-#: part/models.py:3004 part/templates/part/part_sidebar.html:63
+#: part/models.py:3005 part/templates/part/part_sidebar.html:63
#: report/templates/report/inventree_build_order_base.html:172
-#: stock/admin.py:121 stock/models.py:2159 stock/models.py:2267
+#: stock/admin.py:121 stock/models.py:2160 stock/models.py:2268
#: stock/serializers.py:342 stock/serializers.py:475 stock/serializers.py:556
#: stock/serializers.py:839 stock/serializers.py:938 stock/serializers.py:1070
#: stock/templates/stock/stock_sidebar.html:25
@@ -122,7 +122,7 @@ msgstr ""
msgid "The provided email domain is not approved."
msgstr ""
-#: InvenTree/helpers.py:462 order/models.py:439 order/models.py:608
+#: InvenTree/helpers.py:462 order/models.py:442 order/models.py:611
msgid "Invalid quantity provided"
msgstr ""
@@ -238,7 +238,7 @@ msgstr ""
msgid "Missing external link"
msgstr ""
-#: InvenTree/models.py:486 stock/models.py:2261
+#: InvenTree/models.py:486 stock/models.py:2262
#: templates/js/translated/attachment.js:119
#: templates/js/translated/attachment.js:306
msgid "Attachment"
@@ -248,10 +248,10 @@ msgstr ""
msgid "Select file to attach"
msgstr ""
-#: InvenTree/models.py:493 common/models.py:2695 company/models.py:132
-#: company/models.py:306 company/models.py:584 order/models.py:233
-#: order/models.py:1090 order/models.py:1450 part/admin.py:39
-#: part/models.py:900 part/templates/part/part_scheduling.html:11
+#: InvenTree/models.py:493 common/models.py:2688 company/models.py:132
+#: company/models.py:306 company/models.py:584 order/models.py:236
+#: order/models.py:1093 order/models.py:1453 part/admin.py:39
+#: part/models.py:901 part/templates/part/part_scheduling.html:11
#: report/templates/report/inventree_build_order_base.html:164
#: stock/admin.py:120 templates/js/translated/company.js:977
#: templates/js/translated/company.js:1283 templates/js/translated/order.js:351
@@ -264,7 +264,7 @@ msgstr ""
msgid "Link"
msgstr ""
-#: InvenTree/models.py:494 build/models.py:291 part/models.py:901
+#: InvenTree/models.py:494 build/models.py:291 part/models.py:902
#: stock/models.py:735
msgid "Link to external URL"
msgstr ""
@@ -278,10 +278,10 @@ msgstr ""
msgid "File comment"
msgstr ""
-#: InvenTree/models.py:503 InvenTree/models.py:504 common/models.py:2154
-#: common/models.py:2155 common/models.py:2368 common/models.py:2369
-#: common/models.py:2625 common/models.py:2626 part/models.py:3012
-#: part/models.py:3100 part/models.py:3179 part/models.py:3199
+#: InvenTree/models.py:503 InvenTree/models.py:504 common/models.py:2147
+#: common/models.py:2148 common/models.py:2361 common/models.py:2362
+#: common/models.py:2618 common/models.py:2619 part/models.py:3013
+#: part/models.py:3101 part/models.py:3180 part/models.py:3200
#: plugin/models.py:217 plugin/models.py:218
#: report/templates/report/inventree_test_report_base.html:105
#: templates/js/translated/stock.js:2773
@@ -325,12 +325,12 @@ msgstr ""
msgid "Invalid choice"
msgstr ""
-#: InvenTree/models.py:648 InvenTree/models.py:649 common/models.py:2354
-#: company/models.py:390 label/models.py:103 part/models.py:846
-#: part/models.py:3399 plugin/models.py:41 report/models.py:160
+#: InvenTree/models.py:648 InvenTree/models.py:649 common/models.py:2347
+#: company/models.py:390 label/models.py:103 part/models.py:847
+#: part/models.py:3400 plugin/models.py:41 report/models.py:160
#: templates/InvenTree/settings/mixins/urls.html:13
#: templates/InvenTree/settings/notifications.html:17
-#: templates/InvenTree/settings/plugin.html:80
+#: templates/InvenTree/settings/plugin.html:78
#: templates/InvenTree/settings/plugin_settings.html:22
#: templates/js/translated/company.js:658
#: templates/js/translated/company.js:706
@@ -347,8 +347,8 @@ msgstr ""
#: company/templates/company/company_base.html:72
#: company/templates/company/manufacturer_part.html:75
#: company/templates/company/supplier_part.html:108 label/models.py:110
-#: order/models.py:229 order/models.py:1114 part/admin.py:194 part/admin.py:276
-#: part/models.py:868 part/models.py:3415 part/templates/part/category.html:81
+#: order/models.py:232 order/models.py:1117 part/admin.py:194 part/admin.py:276
+#: part/models.py:869 part/models.py:3416 part/templates/part/category.html:81
#: part/templates/part/part_base.html:172
#: part/templates/part/part_scheduling.html:12 report/models.py:173
#: report/models.py:587 report/models.py:631
@@ -420,12 +420,12 @@ msgstr ""
msgid "An error has been logged by the server."
msgstr ""
-#: InvenTree/serializers.py:60 part/models.py:3896
+#: InvenTree/serializers.py:60 part/models.py:3897
msgid "Must be a valid number"
msgstr ""
#: InvenTree/serializers.py:90 company/models.py:154
-#: company/templates/company/company_base.html:107 part/models.py:2851
+#: company/templates/company/company_base.html:107 part/models.py:2852
#: templates/InvenTree/settings/settings_staff_js.html:44
#: templates/currency_data.html:5
msgid "Currency"
@@ -498,111 +498,111 @@ msgstr ""
msgid "Downloading images from remote URL is not enabled"
msgstr ""
-#: InvenTree/settings.py:713
+#: InvenTree/settings.py:722
msgid "Czech"
msgstr ""
-#: InvenTree/settings.py:714
+#: InvenTree/settings.py:723
msgid "Danish"
msgstr ""
-#: InvenTree/settings.py:715
+#: InvenTree/settings.py:724
msgid "German"
msgstr ""
-#: InvenTree/settings.py:716
+#: InvenTree/settings.py:725
msgid "Greek"
msgstr ""
-#: InvenTree/settings.py:717
+#: InvenTree/settings.py:726
msgid "English"
msgstr ""
-#: InvenTree/settings.py:718
+#: InvenTree/settings.py:727
msgid "Spanish"
msgstr ""
-#: InvenTree/settings.py:719
+#: InvenTree/settings.py:728
msgid "Spanish (Mexican)"
msgstr ""
-#: InvenTree/settings.py:720
+#: InvenTree/settings.py:729
msgid "Farsi / Persian"
msgstr ""
-#: InvenTree/settings.py:721
+#: InvenTree/settings.py:730
msgid "Finnish"
msgstr ""
-#: InvenTree/settings.py:722
+#: InvenTree/settings.py:731
msgid "French"
msgstr ""
-#: InvenTree/settings.py:723
+#: InvenTree/settings.py:732
msgid "Hebrew"
msgstr ""
-#: InvenTree/settings.py:724
+#: InvenTree/settings.py:733
msgid "Hungarian"
msgstr ""
-#: InvenTree/settings.py:725
+#: InvenTree/settings.py:734
msgid "Italian"
msgstr ""
-#: InvenTree/settings.py:726
+#: InvenTree/settings.py:735
msgid "Japanese"
msgstr ""
-#: InvenTree/settings.py:727
+#: InvenTree/settings.py:736
msgid "Korean"
msgstr ""
-#: InvenTree/settings.py:728
+#: InvenTree/settings.py:737
msgid "Dutch"
msgstr ""
-#: InvenTree/settings.py:729
+#: InvenTree/settings.py:738
msgid "Norwegian"
msgstr ""
-#: InvenTree/settings.py:730
+#: InvenTree/settings.py:739
msgid "Polish"
msgstr ""
-#: InvenTree/settings.py:731
+#: InvenTree/settings.py:740
msgid "Portuguese"
msgstr ""
-#: InvenTree/settings.py:732
+#: InvenTree/settings.py:741
msgid "Portuguese (Brazilian)"
msgstr ""
-#: InvenTree/settings.py:733
+#: InvenTree/settings.py:742
msgid "Russian"
msgstr ""
-#: InvenTree/settings.py:734
+#: InvenTree/settings.py:743
msgid "Slovenian"
msgstr ""
-#: InvenTree/settings.py:735
+#: InvenTree/settings.py:744
msgid "Swedish"
msgstr ""
-#: InvenTree/settings.py:736
+#: InvenTree/settings.py:745
msgid "Thai"
msgstr ""
-#: InvenTree/settings.py:737
+#: InvenTree/settings.py:746
msgid "Turkish"
msgstr ""
-#: InvenTree/settings.py:738
+#: InvenTree/settings.py:747
msgid "Vietnamese"
msgstr ""
-#: InvenTree/settings.py:739
+#: InvenTree/settings.py:748
msgid "Chinese"
msgstr ""
@@ -618,196 +618,199 @@ msgstr ""
msgid "InvenTree system health checks failed"
msgstr ""
-#: InvenTree/status_codes.py:139 InvenTree/status_codes.py:181
-#: InvenTree/status_codes.py:360 InvenTree/status_codes.py:397
-#: InvenTree/status_codes.py:432 templates/js/translated/table_filters.js:511
+#: InvenTree/status_codes.py:12 InvenTree/status_codes.py:40
+#: InvenTree/status_codes.py:148 InvenTree/status_codes.py:167
+#: InvenTree/status_codes.py:188 generic/states/tests.py:16
+#: templates/js/translated/table_filters.js:511
msgid "Pending"
msgstr ""
-#: InvenTree/status_codes.py:140
+#: InvenTree/status_codes.py:13 generic/states/tests.py:17
msgid "Placed"
msgstr ""
-#: InvenTree/status_codes.py:141 InvenTree/status_codes.py:363
-#: InvenTree/status_codes.py:399 order/templates/order/order_base.html:162
+#: InvenTree/status_codes.py:14 InvenTree/status_codes.py:151
+#: InvenTree/status_codes.py:172 generic/states/tests.py:18
+#: order/templates/order/order_base.html:162
#: order/templates/order/sales_order_base.html:162
msgid "Complete"
msgstr ""
-#: InvenTree/status_codes.py:142 InvenTree/status_codes.py:184
-#: InvenTree/status_codes.py:362 InvenTree/status_codes.py:400
+#: InvenTree/status_codes.py:15 InvenTree/status_codes.py:43
+#: InvenTree/status_codes.py:150 InvenTree/status_codes.py:173
msgid "Cancelled"
msgstr ""
-#: InvenTree/status_codes.py:143 InvenTree/status_codes.py:185
-#: InvenTree/status_codes.py:227
+#: InvenTree/status_codes.py:16 InvenTree/status_codes.py:44
+#: InvenTree/status_codes.py:71
msgid "Lost"
msgstr ""
-#: InvenTree/status_codes.py:144 InvenTree/status_codes.py:186
+#: InvenTree/status_codes.py:17 InvenTree/status_codes.py:45
+#: InvenTree/status_codes.py:73
msgid "Returned"
msgstr ""
-#: InvenTree/status_codes.py:182 InvenTree/status_codes.py:398
+#: InvenTree/status_codes.py:41 InvenTree/status_codes.py:170
msgid "In Progress"
msgstr ""
-#: InvenTree/status_codes.py:183 order/models.py:1329
+#: InvenTree/status_codes.py:42 order/models.py:1332
#: templates/js/translated/sales_order.js:1509
#: templates/js/translated/sales_order.js:1630
#: templates/js/translated/sales_order.js:1934
msgid "Shipped"
msgstr ""
-#: InvenTree/status_codes.py:223
+#: InvenTree/status_codes.py:66
msgid "OK"
msgstr ""
-#: InvenTree/status_codes.py:224
+#: InvenTree/status_codes.py:67
msgid "Attention needed"
msgstr ""
-#: InvenTree/status_codes.py:225
+#: InvenTree/status_codes.py:68
msgid "Damaged"
msgstr ""
-#: InvenTree/status_codes.py:226
+#: InvenTree/status_codes.py:69
msgid "Destroyed"
msgstr ""
-#: InvenTree/status_codes.py:228
+#: InvenTree/status_codes.py:70
msgid "Rejected"
msgstr ""
-#: InvenTree/status_codes.py:229
+#: InvenTree/status_codes.py:72
msgid "Quarantined"
msgstr ""
-#: InvenTree/status_codes.py:308
+#: InvenTree/status_codes.py:91
msgid "Legacy stock tracking entry"
msgstr ""
-#: InvenTree/status_codes.py:310 templates/js/translated/stock.js:511
+#: InvenTree/status_codes.py:93 templates/js/translated/stock.js:511
msgid "Stock item created"
msgstr ""
-#: InvenTree/status_codes.py:312
+#: InvenTree/status_codes.py:96
msgid "Edited stock item"
msgstr ""
-#: InvenTree/status_codes.py:313
+#: InvenTree/status_codes.py:97
msgid "Assigned serial number"
msgstr ""
-#: InvenTree/status_codes.py:315
+#: InvenTree/status_codes.py:100
msgid "Stock counted"
msgstr ""
-#: InvenTree/status_codes.py:316
+#: InvenTree/status_codes.py:101
msgid "Stock manually added"
msgstr ""
-#: InvenTree/status_codes.py:317
+#: InvenTree/status_codes.py:102
msgid "Stock manually removed"
msgstr ""
-#: InvenTree/status_codes.py:319
+#: InvenTree/status_codes.py:105
msgid "Location changed"
msgstr ""
-#: InvenTree/status_codes.py:320
+#: InvenTree/status_codes.py:106
msgid "Stock updated"
msgstr ""
-#: InvenTree/status_codes.py:322
+#: InvenTree/status_codes.py:109
msgid "Installed into assembly"
msgstr ""
-#: InvenTree/status_codes.py:323
+#: InvenTree/status_codes.py:110
msgid "Removed from assembly"
msgstr ""
-#: InvenTree/status_codes.py:325
+#: InvenTree/status_codes.py:112
msgid "Installed component item"
msgstr ""
-#: InvenTree/status_codes.py:326
+#: InvenTree/status_codes.py:113
msgid "Removed component item"
msgstr ""
-#: InvenTree/status_codes.py:328
+#: InvenTree/status_codes.py:116
msgid "Split from parent item"
msgstr ""
-#: InvenTree/status_codes.py:329
+#: InvenTree/status_codes.py:117
msgid "Split child item"
msgstr ""
-#: InvenTree/status_codes.py:331 templates/js/translated/stock.js:2243
+#: InvenTree/status_codes.py:120 templates/js/translated/stock.js:2243
msgid "Merged stock items"
msgstr ""
-#: InvenTree/status_codes.py:333
+#: InvenTree/status_codes.py:123
msgid "Converted to variant"
msgstr ""
-#: InvenTree/status_codes.py:335 templates/js/translated/table_filters.js:321
-msgid "Sent to customer"
-msgstr ""
-
-#: InvenTree/status_codes.py:336
-msgid "Returned from customer"
-msgstr ""
-
-#: InvenTree/status_codes.py:338
+#: InvenTree/status_codes.py:126
msgid "Build order output created"
msgstr ""
-#: InvenTree/status_codes.py:339
+#: InvenTree/status_codes.py:127
msgid "Build order output completed"
msgstr ""
-#: InvenTree/status_codes.py:340
+#: InvenTree/status_codes.py:128
msgid "Build order output rejected"
msgstr ""
-#: InvenTree/status_codes.py:341 templates/js/translated/stock.js:1676
+#: InvenTree/status_codes.py:129 templates/js/translated/stock.js:1676
msgid "Consumed by build order"
msgstr ""
-#: InvenTree/status_codes.py:343
+#: InvenTree/status_codes.py:132
msgid "Shipped against Sales Order"
msgstr ""
-#: InvenTree/status_codes.py:345
+#: InvenTree/status_codes.py:135
msgid "Received against Purchase Order"
msgstr ""
-#: InvenTree/status_codes.py:347
+#: InvenTree/status_codes.py:138
msgid "Returned against Return Order"
msgstr ""
-#: InvenTree/status_codes.py:361
+#: InvenTree/status_codes.py:141 templates/js/translated/table_filters.js:321
+msgid "Sent to customer"
+msgstr ""
+
+#: InvenTree/status_codes.py:142
+msgid "Returned from customer"
+msgstr ""
+
+#: InvenTree/status_codes.py:149
msgid "Production"
msgstr ""
-#: InvenTree/status_codes.py:433
+#: InvenTree/status_codes.py:191
msgid "Return"
msgstr ""
-#: InvenTree/status_codes.py:434
+#: InvenTree/status_codes.py:194
msgid "Repair"
msgstr ""
-#: InvenTree/status_codes.py:435
-msgid "Refund"
-msgstr ""
-
-#: InvenTree/status_codes.py:436
+#: InvenTree/status_codes.py:197
msgid "Replace"
msgstr ""
-#: InvenTree/status_codes.py:437
+#: InvenTree/status_codes.py:200
+msgid "Refund"
+msgstr ""
+
+#: InvenTree/status_codes.py:203
msgid "Reject"
msgstr ""
@@ -855,7 +858,7 @@ msgstr ""
msgid "About InvenTree"
msgstr ""
-#: build/api.py:221
+#: build/api.py:222
msgid "Build must be cancelled before it can be deleted"
msgstr ""
@@ -887,9 +890,9 @@ msgstr ""
msgid "Build Order Reference"
msgstr ""
-#: build/models.py:156 order/models.py:356 order/models.py:762
-#: order/models.py:1084 order/models.py:1721 part/admin.py:278
-#: part/models.py:3797 part/templates/part/upload_bom.html:54
+#: build/models.py:156 order/models.py:359 order/models.py:765
+#: order/models.py:1087 order/models.py:1724 part/admin.py:278
+#: part/models.py:3798 part/templates/part/upload_bom.html:54
#: report/templates/report/inventree_bill_of_materials_report.html:139
#: report/templates/report/inventree_po_report_base.html:28
#: report/templates/report/inventree_return_order_report_base.html:26
@@ -918,11 +921,11 @@ msgstr ""
#: build/models.py:181 build/templates/build/build_base.html:98
#: build/templates/build/detail.html:29 company/models.py:775
-#: order/models.py:1192 order/models.py:1308 order/models.py:1309
-#: part/models.py:390 part/models.py:2864 part/models.py:2978
-#: part/models.py:3118 part/models.py:3137 part/models.py:3156
-#: part/models.py:3177 part/models.py:3269 part/models.py:3554
-#: part/models.py:3662 part/models.py:3762 part/models.py:4076
+#: order/models.py:1195 order/models.py:1311 order/models.py:1312
+#: part/models.py:391 part/models.py:2865 part/models.py:2979
+#: part/models.py:3119 part/models.py:3138 part/models.py:3157
+#: part/models.py:3178 part/models.py:3270 part/models.py:3555
+#: part/models.py:3663 part/models.py:3763 part/models.py:4077
#: part/serializers.py:842 part/serializers.py:1245
#: part/templates/part/part_app_base.html:8
#: part/templates/part/part_pricing.html:12
@@ -1020,7 +1023,7 @@ msgstr ""
msgid "Build status code"
msgstr ""
-#: build/models.py:246 build/serializers.py:269 order/serializers.py:505
+#: build/models.py:246 build/serializers.py:269 order/serializers.py:506
#: stock/models.py:739 templates/js/translated/purchase_order.js:1099
msgid "Batch Code"
msgstr ""
@@ -1029,7 +1032,7 @@ msgstr ""
msgid "Batch code for this build output"
msgstr ""
-#: build/models.py:253 order/models.py:241 part/models.py:1037
+#: build/models.py:253 order/models.py:244 part/models.py:1038
#: part/templates/part/part_base.html:312
#: templates/js/translated/return_order.js:327
#: templates/js/translated/sales_order.js:815
@@ -1044,7 +1047,7 @@ msgstr ""
msgid "Target date for build completion. Build will be overdue after this date."
msgstr ""
-#: build/models.py:261 order/models.py:406 order/models.py:1764
+#: build/models.py:261 order/models.py:409 order/models.py:1767
#: templates/js/translated/build.js:2953
msgid "Completion Date"
msgstr ""
@@ -1062,10 +1065,10 @@ msgid "User who issued this build order"
msgstr ""
#: build/models.py:284 build/templates/build/build_base.html:204
-#: build/templates/build/detail.html:122 order/models.py:255
+#: build/templates/build/detail.html:122 order/models.py:258
#: order/templates/order/order_base.html:214
#: order/templates/order/return_order_base.html:182
-#: order/templates/order/sales_order_base.html:222 part/models.py:1041
+#: order/templates/order/sales_order_base.html:222 part/models.py:1042
#: part/templates/part/part_base.html:392
#: report/templates/report/inventree_build_order_base.html:158
#: templates/js/translated/build.js:2925
@@ -1120,9 +1123,9 @@ msgid "Build output does not match Build Order"
msgstr ""
#: build/models.py:815 build/serializers.py:212 build/serializers.py:251
-#: build/serializers.py:811 order/models.py:437 order/serializers.py:378
-#: order/serializers.py:500 part/serializers.py:1087 part/serializers.py:1408
-#: stock/models.py:593 stock/models.py:1386 stock/serializers.py:315
+#: build/serializers.py:811 order/models.py:440 order/serializers.py:379
+#: order/serializers.py:501 part/serializers.py:1087 part/serializers.py:1408
+#: stock/models.py:593 stock/models.py:1387 stock/serializers.py:315
msgid "Quantity must be greater than zero"
msgstr ""
@@ -1139,11 +1142,11 @@ msgstr ""
msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})"
msgstr ""
-#: build/models.py:1291 order/models.py:1598
+#: build/models.py:1291 order/models.py:1601
msgid "Stock item is over-allocated"
msgstr ""
-#: build/models.py:1297 order/models.py:1601
+#: build/models.py:1297 order/models.py:1604
msgid "Allocation quantity must be greater than zero"
msgstr ""
@@ -1165,8 +1168,8 @@ msgstr ""
msgid "Build to allocate parts"
msgstr ""
-#: build/models.py:1455 build/serializers.py:791 order/serializers.py:1058
-#: order/serializers.py:1079 stock/serializers.py:413 stock/serializers.py:770
+#: build/models.py:1455 build/serializers.py:791 order/serializers.py:1059
+#: order/serializers.py:1080 stock/serializers.py:413 stock/serializers.py:770
#: stock/serializers.py:896 stock/templates/stock/item_base.html:10
#: stock/templates/stock/item_base.html:23
#: stock/templates/stock/item_base.html:195
@@ -1189,10 +1192,10 @@ msgstr ""
#: build/models.py:1468 build/serializers.py:198 build/serializers.py:236
#: build/templates/build/build_base.html:103
-#: build/templates/build/detail.html:34 common/models.py:2176
-#: order/models.py:1070 order/models.py:1642 order/serializers.py:1232
+#: build/templates/build/detail.html:34 common/models.py:2169
+#: order/models.py:1073 order/models.py:1645 order/serializers.py:1233
#: order/templates/order/order_wizard/match_parts.html:30 part/admin.py:277
-#: part/forms.py:47 part/models.py:2991 part/models.py:3778
+#: part/forms.py:47 part/models.py:2992 part/models.py:3779
#: part/templates/part/part_pricing.html:16
#: part/templates/part/upload_bom.html:53
#: report/templates/report/inventree_bill_of_materials_report.html:138
@@ -1279,7 +1282,7 @@ msgstr ""
msgid "Integer quantity required, as the bill of materials contains trackable parts"
msgstr ""
-#: build/serializers.py:276 order/serializers.py:513 order/serializers.py:1236
+#: build/serializers.py:276 order/serializers.py:514 order/serializers.py:1237
#: stock/serializers.py:324 templates/js/translated/purchase_order.js:1123
#: templates/js/translated/stock.js:334 templates/js/translated/stock.js:532
msgid "Serial Numbers"
@@ -1297,7 +1300,7 @@ msgstr ""
msgid "Automatically allocate required items with matching serial numbers"
msgstr ""
-#: build/serializers.py:326 stock/api.py:669
+#: build/serializers.py:326 stock/api.py:670
msgid "The following serial numbers already exist or are invalid"
msgstr ""
@@ -1305,8 +1308,8 @@ msgstr ""
msgid "A list of build outputs must be provided"
msgstr ""
-#: build/serializers.py:415 build/serializers.py:488 order/serializers.py:486
-#: order/serializers.py:605 order/serializers.py:1587 part/serializers.py:854
+#: build/serializers.py:415 build/serializers.py:488 order/serializers.py:487
+#: order/serializers.py:606 order/serializers.py:1588 part/serializers.py:854
#: stock/serializers.py:335 stock/serializers.py:470 stock/serializers.py:551
#: stock/serializers.py:931 stock/serializers.py:1173
#: stock/templates/stock/item_base.html:390
@@ -1346,8 +1349,8 @@ msgid "Location for completed build outputs"
msgstr ""
#: build/serializers.py:495 build/templates/build/build_base.html:151
-#: build/templates/build/detail.html:62 order/models.py:788
-#: order/models.py:1747 order/serializers.py:523 stock/admin.py:106
+#: build/templates/build/detail.html:62 order/models.py:791
+#: order/models.py:1750 order/serializers.py:524 stock/admin.py:106
#: stock/templates/stock/item_base.html:423
#: templates/js/translated/barcode.js:252 templates/js/translated/build.js:2897
#: templates/js/translated/purchase_order.js:1278
@@ -1419,7 +1422,7 @@ msgstr ""
msgid "Required stock has not been fully allocated"
msgstr ""
-#: build/serializers.py:664 order/serializers.py:260 order/serializers.py:1126
+#: build/serializers.py:664 order/serializers.py:261 order/serializers.py:1127
msgid "Accept Incomplete"
msgstr ""
@@ -1435,8 +1438,8 @@ msgstr ""
msgid "Build order has incomplete outputs"
msgstr ""
-#: build/serializers.py:714 build/serializers.py:768 part/models.py:3685
-#: part/models.py:4068
+#: build/serializers.py:714 build/serializers.py:768 part/models.py:3686
+#: part/models.py:4069
msgid "BOM Item"
msgstr ""
@@ -1456,7 +1459,7 @@ msgstr ""
msgid "Item must be in stock"
msgstr ""
-#: build/serializers.py:846 order/serializers.py:1116
+#: build/serializers.py:846 order/serializers.py:1117
#, python-brace-format
msgid "Available quantity ({q}) exceeded"
msgstr ""
@@ -1473,7 +1476,7 @@ msgstr ""
msgid "This stock item has already been allocated to this build output"
msgstr ""
-#: build/serializers.py:887 order/serializers.py:1400
+#: build/serializers.py:887 order/serializers.py:1401
msgid "Allocation items must be provided"
msgstr ""
@@ -1637,8 +1640,8 @@ msgid "Stock has not been fully allocated to this Build Order"
msgstr ""
#: build/templates/build/build_base.html:160
-#: build/templates/build/detail.html:138 order/models.py:237
-#: order/models.py:1096 order/templates/order/order_base.html:190
+#: build/templates/build/detail.html:138 order/models.py:240
+#: order/models.py:1099 order/templates/order/order_base.html:190
#: order/templates/order/return_order_base.html:165
#: order/templates/order/sales_order_base.html:193
#: report/templates/report/inventree_build_order_base.html:125
@@ -1677,8 +1680,8 @@ msgid "Completed"
msgstr ""
#: build/templates/build/build_base.html:190
-#: build/templates/build/detail.html:101 order/api.py:1451 order/models.py:1301
-#: order/models.py:1400 order/models.py:1548
+#: build/templates/build/detail.html:101 order/api.py:1454 order/models.py:1304
+#: order/models.py:1403 order/models.py:1551
#: order/templates/order/sales_order_base.html:9
#: order/templates/order/sales_order_base.html:28
#: report/templates/report/inventree_build_order_base.html:135
@@ -1727,7 +1730,7 @@ msgstr ""
msgid "Stock can be taken from any available location."
msgstr ""
-#: build/templates/build/detail.html:49 order/models.py:1219
+#: build/templates/build/detail.html:49 order/models.py:1222
#: templates/js/translated/purchase_order.js:2157
msgid "Destination"
msgstr ""
@@ -1966,7 +1969,7 @@ msgstr ""
msgid "Timestamp of last update"
msgstr ""
-#: common/models.py:104 order/admin.py:17 order/models.py:231
+#: common/models.py:104 order/admin.py:17 order/models.py:234
#: templates/InvenTree/settings/settings_staff_js.html:70
#: templates/js/translated/purchase_order.js:1670
#: templates/js/translated/return_order.js:306
@@ -2127,7 +2130,7 @@ msgstr ""
#: common/models.py:1028 common/models.py:1046 common/models.py:1053
#: common/models.py:1064 common/models.py:1075 common/models.py:1299
-#: common/models.py:1323 common/models.py:1446 common/models.py:1695
+#: common/models.py:1323 common/models.py:1446 common/models.py:1688
msgid "days"
msgstr ""
@@ -2259,7 +2262,7 @@ msgstr ""
msgid "Copy category parameter templates when creating a part"
msgstr ""
-#: common/models.py:1162 part/admin.py:55 part/models.py:3559
+#: common/models.py:1162 part/admin.py:55 part/models.py:3560
#: report/models.py:166 templates/js/translated/table_filters.js:109
#: templates/js/translated/table_filters.js:680
msgid "Template"
@@ -2269,7 +2272,7 @@ msgstr ""
msgid "Parts are templates by default"
msgstr ""
-#: common/models.py:1169 part/admin.py:51 part/admin.py:283 part/models.py:995
+#: common/models.py:1169 part/admin.py:51 part/admin.py:283 part/models.py:996
#: templates/js/translated/bom.js:1598
#: templates/js/translated/table_filters.js:276
#: templates/js/translated/table_filters.js:634
@@ -2280,7 +2283,7 @@ msgstr ""
msgid "Parts can be assembled from other components by default"
msgstr ""
-#: common/models.py:1176 part/admin.py:52 part/models.py:1001
+#: common/models.py:1176 part/admin.py:52 part/models.py:1002
#: templates/js/translated/table_filters.js:642
msgid "Component"
msgstr ""
@@ -2289,7 +2292,7 @@ msgstr ""
msgid "Parts can be used as sub-components by default"
msgstr ""
-#: common/models.py:1183 part/admin.py:53 part/models.py:1012
+#: common/models.py:1183 part/admin.py:53 part/models.py:1013
msgid "Purchaseable"
msgstr ""
@@ -2297,7 +2300,7 @@ msgstr ""
msgid "Parts are purchaseable by default"
msgstr ""
-#: common/models.py:1190 part/admin.py:54 part/models.py:1017
+#: common/models.py:1190 part/admin.py:54 part/models.py:1018
#: templates/js/translated/table_filters.js:668
msgid "Salable"
msgstr ""
@@ -2306,7 +2309,7 @@ msgstr ""
msgid "Parts are salable by default"
msgstr ""
-#: common/models.py:1197 part/admin.py:56 part/models.py:1007
+#: common/models.py:1197 part/admin.py:56 part/models.py:1008
#: templates/js/translated/table_filters.js:117
#: templates/js/translated/table_filters.js:193
#: templates/js/translated/table_filters.js:684
@@ -2317,7 +2320,7 @@ msgstr ""
msgid "Parts are trackable by default"
msgstr ""
-#: common/models.py:1204 part/admin.py:57 part/models.py:1027
+#: common/models.py:1204 part/admin.py:57 part/models.py:1028
#: part/templates/part/part_base.html:156
#: templates/js/translated/table_filters.js:113
#: templates/js/translated/table_filters.js:688
@@ -2768,547 +2771,539 @@ msgstr ""
msgid "Check that all plugins are installed on startup - enable in container environments"
msgstr ""
-#: common/models.py:1620
-msgid "Check plugin signatures"
-msgstr ""
-
#: common/models.py:1621
-msgid "Check and show signatures for plugins"
-msgstr ""
-
-#: common/models.py:1628
msgid "Enable URL integration"
msgstr ""
-#: common/models.py:1629
+#: common/models.py:1622
msgid "Enable plugins to add URL routes"
msgstr ""
-#: common/models.py:1636
+#: common/models.py:1629
msgid "Enable navigation integration"
msgstr ""
-#: common/models.py:1637
+#: common/models.py:1630
msgid "Enable plugins to integrate into navigation"
msgstr ""
-#: common/models.py:1644
+#: common/models.py:1637
msgid "Enable app integration"
msgstr ""
-#: common/models.py:1645
+#: common/models.py:1638
msgid "Enable plugins to add apps"
msgstr ""
-#: common/models.py:1652
+#: common/models.py:1645
msgid "Enable schedule integration"
msgstr ""
-#: common/models.py:1653
+#: common/models.py:1646
msgid "Enable plugins to run scheduled tasks"
msgstr ""
-#: common/models.py:1660
+#: common/models.py:1653
msgid "Enable event integration"
msgstr ""
-#: common/models.py:1661
+#: common/models.py:1654
msgid "Enable plugins to respond to internal events"
msgstr ""
-#: common/models.py:1668
+#: common/models.py:1661
msgid "Enable project codes"
msgstr ""
-#: common/models.py:1669
+#: common/models.py:1662
msgid "Enable project codes for tracking projects"
msgstr ""
-#: common/models.py:1675
+#: common/models.py:1668
msgid "Stocktake Functionality"
msgstr ""
-#: common/models.py:1676
+#: common/models.py:1669
msgid "Enable stocktake functionality for recording stock levels and calculating stock value"
msgstr ""
-#: common/models.py:1682
+#: common/models.py:1675
msgid "Automatic Stocktake Period"
msgstr ""
-#: common/models.py:1683
+#: common/models.py:1676
msgid "Number of days between automatic stocktake recording (set to zero to disable)"
msgstr ""
-#: common/models.py:1692
+#: common/models.py:1685
msgid "Report Deletion Interval"
msgstr ""
-#: common/models.py:1693
+#: common/models.py:1686
msgid "Stocktake reports will be deleted after specified number of days"
msgstr ""
-#: common/models.py:1710 common/models.py:2147
+#: common/models.py:1703 common/models.py:2140
msgid "Settings key (must be unique - case insensitive"
msgstr ""
-#: common/models.py:1729
+#: common/models.py:1722
msgid "No Printer (Export to PDF)"
msgstr ""
-#: common/models.py:1751
+#: common/models.py:1744
msgid "Hide inactive parts"
msgstr ""
-#: common/models.py:1752
+#: common/models.py:1745
msgid "Hide inactive parts in results displayed on the homepage"
msgstr ""
-#: common/models.py:1758
+#: common/models.py:1751
msgid "Show subscribed parts"
msgstr ""
-#: common/models.py:1759
+#: common/models.py:1752
msgid "Show subscribed parts on the homepage"
msgstr ""
-#: common/models.py:1765
+#: common/models.py:1758
msgid "Show subscribed categories"
msgstr ""
-#: common/models.py:1766
+#: common/models.py:1759
msgid "Show subscribed part categories on the homepage"
msgstr ""
-#: common/models.py:1772
+#: common/models.py:1765
msgid "Show latest parts"
msgstr ""
-#: common/models.py:1773
+#: common/models.py:1766
msgid "Show latest parts on the homepage"
msgstr ""
-#: common/models.py:1779
+#: common/models.py:1772
msgid "Recent Part Count"
msgstr ""
-#: common/models.py:1780
+#: common/models.py:1773
msgid "Number of recent parts to display on index page"
msgstr ""
-#: common/models.py:1786
+#: common/models.py:1779
msgid "Show unvalidated BOMs"
msgstr ""
-#: common/models.py:1787
+#: common/models.py:1780
msgid "Show BOMs that await validation on the homepage"
msgstr ""
-#: common/models.py:1793
+#: common/models.py:1786
msgid "Show recent stock changes"
msgstr ""
-#: common/models.py:1794
+#: common/models.py:1787
msgid "Show recently changed stock items on the homepage"
msgstr ""
-#: common/models.py:1800
+#: common/models.py:1793
msgid "Recent Stock Count"
msgstr ""
-#: common/models.py:1801
+#: common/models.py:1794
msgid "Number of recent stock items to display on index page"
msgstr ""
-#: common/models.py:1807
+#: common/models.py:1800
msgid "Show low stock"
msgstr ""
-#: common/models.py:1808
+#: common/models.py:1801
msgid "Show low stock items on the homepage"
msgstr ""
-#: common/models.py:1814
+#: common/models.py:1807
msgid "Show depleted stock"
msgstr ""
-#: common/models.py:1815
+#: common/models.py:1808
msgid "Show depleted stock items on the homepage"
msgstr ""
-#: common/models.py:1821
+#: common/models.py:1814
msgid "Show needed stock"
msgstr ""
-#: common/models.py:1822
+#: common/models.py:1815
msgid "Show stock items needed for builds on the homepage"
msgstr ""
-#: common/models.py:1828
+#: common/models.py:1821
msgid "Show expired stock"
msgstr ""
-#: common/models.py:1829
+#: common/models.py:1822
msgid "Show expired stock items on the homepage"
msgstr ""
-#: common/models.py:1835
+#: common/models.py:1828
msgid "Show stale stock"
msgstr ""
-#: common/models.py:1836
+#: common/models.py:1829
msgid "Show stale stock items on the homepage"
msgstr ""
-#: common/models.py:1842
+#: common/models.py:1835
msgid "Show pending builds"
msgstr ""
-#: common/models.py:1843
+#: common/models.py:1836
msgid "Show pending builds on the homepage"
msgstr ""
-#: common/models.py:1849
+#: common/models.py:1842
msgid "Show overdue builds"
msgstr ""
-#: common/models.py:1850
+#: common/models.py:1843
msgid "Show overdue builds on the homepage"
msgstr ""
-#: common/models.py:1856
+#: common/models.py:1849
msgid "Show outstanding POs"
msgstr ""
-#: common/models.py:1857
+#: common/models.py:1850
msgid "Show outstanding POs on the homepage"
msgstr ""
-#: common/models.py:1863
+#: common/models.py:1856
msgid "Show overdue POs"
msgstr ""
-#: common/models.py:1864
+#: common/models.py:1857
msgid "Show overdue POs on the homepage"
msgstr ""
-#: common/models.py:1870
+#: common/models.py:1863
msgid "Show outstanding SOs"
msgstr ""
-#: common/models.py:1871
+#: common/models.py:1864
msgid "Show outstanding SOs on the homepage"
msgstr ""
-#: common/models.py:1877
+#: common/models.py:1870
msgid "Show overdue SOs"
msgstr ""
-#: common/models.py:1878
+#: common/models.py:1871
msgid "Show overdue SOs on the homepage"
msgstr ""
-#: common/models.py:1884
+#: common/models.py:1877
msgid "Show pending SO shipments"
msgstr ""
-#: common/models.py:1885
+#: common/models.py:1878
msgid "Show pending SO shipments on the homepage"
msgstr ""
-#: common/models.py:1891
+#: common/models.py:1884
msgid "Show News"
msgstr ""
-#: common/models.py:1892
+#: common/models.py:1885
msgid "Show news on the homepage"
msgstr ""
-#: common/models.py:1898
+#: common/models.py:1891
msgid "Inline label display"
msgstr ""
-#: common/models.py:1899
+#: common/models.py:1892
msgid "Display PDF labels in the browser, instead of downloading as a file"
msgstr ""
-#: common/models.py:1905
+#: common/models.py:1898
msgid "Default label printer"
msgstr ""
-#: common/models.py:1906
+#: common/models.py:1899
msgid "Configure which label printer should be selected by default"
msgstr ""
-#: common/models.py:1912
+#: common/models.py:1905
msgid "Inline report display"
msgstr ""
-#: common/models.py:1913
+#: common/models.py:1906
msgid "Display PDF reports in the browser, instead of downloading as a file"
msgstr ""
-#: common/models.py:1919
+#: common/models.py:1912
msgid "Search Parts"
msgstr ""
-#: common/models.py:1920
+#: common/models.py:1913
msgid "Display parts in search preview window"
msgstr ""
-#: common/models.py:1926
+#: common/models.py:1919
msgid "Search Supplier Parts"
msgstr ""
-#: common/models.py:1927
+#: common/models.py:1920
msgid "Display supplier parts in search preview window"
msgstr ""
-#: common/models.py:1933
+#: common/models.py:1926
msgid "Search Manufacturer Parts"
msgstr ""
-#: common/models.py:1934
+#: common/models.py:1927
msgid "Display manufacturer parts in search preview window"
msgstr ""
-#: common/models.py:1940
+#: common/models.py:1933
msgid "Hide Inactive Parts"
msgstr ""
-#: common/models.py:1941
+#: common/models.py:1934
msgid "Excluded inactive parts from search preview window"
msgstr ""
-#: common/models.py:1947
+#: common/models.py:1940
msgid "Search Categories"
msgstr ""
-#: common/models.py:1948
+#: common/models.py:1941
msgid "Display part categories in search preview window"
msgstr ""
-#: common/models.py:1954
+#: common/models.py:1947
msgid "Search Stock"
msgstr ""
-#: common/models.py:1955
+#: common/models.py:1948
msgid "Display stock items in search preview window"
msgstr ""
-#: common/models.py:1961
+#: common/models.py:1954
msgid "Hide Unavailable Stock Items"
msgstr ""
-#: common/models.py:1962
+#: common/models.py:1955
msgid "Exclude stock items which are not available from the search preview window"
msgstr ""
-#: common/models.py:1968
+#: common/models.py:1961
msgid "Search Locations"
msgstr ""
-#: common/models.py:1969
+#: common/models.py:1962
msgid "Display stock locations in search preview window"
msgstr ""
-#: common/models.py:1975
+#: common/models.py:1968
msgid "Search Companies"
msgstr ""
-#: common/models.py:1976
+#: common/models.py:1969
msgid "Display companies in search preview window"
msgstr ""
-#: common/models.py:1982
+#: common/models.py:1975
msgid "Search Build Orders"
msgstr ""
-#: common/models.py:1983
+#: common/models.py:1976
msgid "Display build orders in search preview window"
msgstr ""
-#: common/models.py:1989
+#: common/models.py:1982
msgid "Search Purchase Orders"
msgstr ""
-#: common/models.py:1990
+#: common/models.py:1983
msgid "Display purchase orders in search preview window"
msgstr ""
-#: common/models.py:1996
+#: common/models.py:1989
msgid "Exclude Inactive Purchase Orders"
msgstr ""
-#: common/models.py:1997
+#: common/models.py:1990
msgid "Exclude inactive purchase orders from search preview window"
msgstr ""
-#: common/models.py:2003
+#: common/models.py:1996
msgid "Search Sales Orders"
msgstr ""
-#: common/models.py:2004
+#: common/models.py:1997
msgid "Display sales orders in search preview window"
msgstr ""
-#: common/models.py:2010
+#: common/models.py:2003
msgid "Exclude Inactive Sales Orders"
msgstr ""
-#: common/models.py:2011
+#: common/models.py:2004
msgid "Exclude inactive sales orders from search preview window"
msgstr ""
-#: common/models.py:2017
+#: common/models.py:2010
msgid "Search Return Orders"
msgstr ""
-#: common/models.py:2018
+#: common/models.py:2011
msgid "Display return orders in search preview window"
msgstr ""
-#: common/models.py:2024
+#: common/models.py:2017
msgid "Exclude Inactive Return Orders"
msgstr ""
-#: common/models.py:2025
+#: common/models.py:2018
msgid "Exclude inactive return orders from search preview window"
msgstr ""
-#: common/models.py:2031
+#: common/models.py:2024
msgid "Search Preview Results"
msgstr ""
-#: common/models.py:2032
+#: common/models.py:2025
msgid "Number of results to show in each section of the search preview window"
msgstr ""
-#: common/models.py:2038
+#: common/models.py:2031
msgid "Regex Search"
msgstr ""
-#: common/models.py:2039
+#: common/models.py:2032
msgid "Enable regular expressions in search queries"
msgstr ""
-#: common/models.py:2045
+#: common/models.py:2038
msgid "Whole Word Search"
msgstr ""
-#: common/models.py:2046
+#: common/models.py:2039
msgid "Search queries return results for whole word matches"
msgstr ""
-#: common/models.py:2052
+#: common/models.py:2045
msgid "Show Quantity in Forms"
msgstr ""
-#: common/models.py:2053
+#: common/models.py:2046
msgid "Display available part quantity in some forms"
msgstr ""
-#: common/models.py:2059
+#: common/models.py:2052
msgid "Escape Key Closes Forms"
msgstr ""
-#: common/models.py:2060
+#: common/models.py:2053
msgid "Use the escape key to close modal forms"
msgstr ""
-#: common/models.py:2066
+#: common/models.py:2059
msgid "Fixed Navbar"
msgstr ""
-#: common/models.py:2067
+#: common/models.py:2060
msgid "The navbar position is fixed to the top of the screen"
msgstr ""
-#: common/models.py:2073
+#: common/models.py:2066
msgid "Date Format"
msgstr ""
-#: common/models.py:2074
+#: common/models.py:2067
msgid "Preferred format for displaying dates"
msgstr ""
-#: common/models.py:2088 part/templates/part/detail.html:41
+#: common/models.py:2081 part/templates/part/detail.html:41
msgid "Part Scheduling"
msgstr ""
-#: common/models.py:2089
+#: common/models.py:2082
msgid "Display part scheduling information"
msgstr ""
-#: common/models.py:2095 part/templates/part/detail.html:62
+#: common/models.py:2088 part/templates/part/detail.html:62
msgid "Part Stocktake"
msgstr ""
-#: common/models.py:2096
+#: common/models.py:2089
msgid "Display part stocktake information (if stocktake functionality is enabled)"
msgstr ""
-#: common/models.py:2102
+#: common/models.py:2095
msgid "Table String Length"
msgstr ""
-#: common/models.py:2103
+#: common/models.py:2096
msgid "Maximimum length limit for strings displayed in table views"
msgstr ""
-#: common/models.py:2112
+#: common/models.py:2105
msgid "Default part label template"
msgstr ""
-#: common/models.py:2113
+#: common/models.py:2106
msgid "The part label template to be automatically selected"
msgstr ""
-#: common/models.py:2121
+#: common/models.py:2114
msgid "Default stock item template"
msgstr ""
-#: common/models.py:2122
+#: common/models.py:2115
msgid "The stock item label template to be automatically selected"
msgstr ""
-#: common/models.py:2130
+#: common/models.py:2123
msgid "Default stock location label template"
msgstr ""
-#: common/models.py:2131
+#: common/models.py:2124
msgid "The stock location label template to be automatically selected"
msgstr ""
-#: common/models.py:2177
+#: common/models.py:2170
msgid "Price break quantity"
msgstr ""
-#: common/models.py:2184 company/serializers.py:434 order/admin.py:43
-#: order/models.py:1129 order/models.py:1936
+#: common/models.py:2177 company/serializers.py:434 order/admin.py:43
+#: order/models.py:1132 order/models.py:1939
#: templates/js/translated/company.js:1433 templates/js/translated/part.js:1856
#: templates/js/translated/pricing.js:621
#: templates/js/translated/return_order.js:725
msgid "Price"
msgstr ""
-#: common/models.py:2185
+#: common/models.py:2178
msgid "Unit price at specified quantity"
msgstr ""
-#: common/models.py:2345 common/models.py:2523
+#: common/models.py:2338 common/models.py:2516
msgid "Endpoint"
msgstr ""
-#: common/models.py:2346
+#: common/models.py:2339
msgid "Endpoint at which this webhook is received"
msgstr ""
-#: common/models.py:2355
+#: common/models.py:2348
msgid "Name for this webhook"
msgstr ""
-#: common/models.py:2360 part/admin.py:50 part/models.py:1022
+#: common/models.py:2353 part/admin.py:50 part/models.py:1023
#: plugin/models.py:47 templates/js/translated/table_filters.js:105
#: templates/js/translated/table_filters.js:189
#: templates/js/translated/table_filters.js:434
@@ -3317,100 +3312,100 @@ msgstr ""
msgid "Active"
msgstr ""
-#: common/models.py:2361
+#: common/models.py:2354
msgid "Is this webhook active"
msgstr ""
-#: common/models.py:2375
+#: common/models.py:2368
msgid "Token"
msgstr ""
-#: common/models.py:2376
+#: common/models.py:2369
msgid "Token for access"
msgstr ""
-#: common/models.py:2383
+#: common/models.py:2376
msgid "Secret"
msgstr ""
-#: common/models.py:2384
+#: common/models.py:2377
msgid "Shared secret for HMAC"
msgstr ""
-#: common/models.py:2490
+#: common/models.py:2483
msgid "Message ID"
msgstr ""
-#: common/models.py:2491
+#: common/models.py:2484
msgid "Unique identifier for this message"
msgstr ""
-#: common/models.py:2499
+#: common/models.py:2492
msgid "Host"
msgstr ""
-#: common/models.py:2500
+#: common/models.py:2493
msgid "Host from which this message was received"
msgstr ""
-#: common/models.py:2507
+#: common/models.py:2500
msgid "Header"
msgstr ""
-#: common/models.py:2508
+#: common/models.py:2501
msgid "Header of this message"
msgstr ""
-#: common/models.py:2514
+#: common/models.py:2507
msgid "Body"
msgstr ""
-#: common/models.py:2515
+#: common/models.py:2508
msgid "Body of this message"
msgstr ""
-#: common/models.py:2524
+#: common/models.py:2517
msgid "Endpoint on which this message was received"
msgstr ""
-#: common/models.py:2529
+#: common/models.py:2522
msgid "Worked on"
msgstr ""
-#: common/models.py:2530
+#: common/models.py:2523
msgid "Was the work on this message finished?"
msgstr ""
-#: common/models.py:2684
+#: common/models.py:2677
msgid "Id"
msgstr ""
-#: common/models.py:2690 templates/js/translated/news.js:44
+#: common/models.py:2683 templates/js/translated/news.js:44
msgid "Title"
msgstr ""
-#: common/models.py:2700 templates/js/translated/news.js:60
+#: common/models.py:2693 templates/js/translated/news.js:60
msgid "Published"
msgstr ""
-#: common/models.py:2705 templates/InvenTree/settings/plugin_settings.html:32
+#: common/models.py:2698 templates/InvenTree/settings/plugin_settings.html:32
#: templates/js/translated/news.js:56 templates/js/translated/plugin.js:106
msgid "Author"
msgstr ""
-#: common/models.py:2710 templates/js/translated/news.js:52
+#: common/models.py:2703 templates/js/translated/news.js:52
msgid "Summary"
msgstr ""
-#: common/models.py:2715
+#: common/models.py:2708
msgid "Read"
msgstr ""
-#: common/models.py:2716
+#: common/models.py:2709
msgid "Was this news item read?"
msgstr ""
-#: common/models.py:2736 company/models.py:143 part/models.py:913
+#: common/models.py:2729 company/models.py:143 part/models.py:914
#: report/templates/report/inventree_bill_of_materials_report.html:126
#: report/templates/report/inventree_bill_of_materials_report.html:148
#: report/templates/report/inventree_return_order_report_base.html:35
@@ -3420,7 +3415,7 @@ msgstr ""
msgid "Image"
msgstr ""
-#: common/models.py:2737
+#: common/models.py:2730
msgid "Image file"
msgstr ""
@@ -3532,7 +3527,7 @@ msgid "Contact email address"
msgstr ""
#: company/models.py:129 company/templates/company/company_base.html:140
-#: order/models.py:263 order/templates/order/order_base.html:207
+#: order/models.py:266 order/templates/order/order_base.html:207
#: order/templates/order/return_order_base.html:175
#: order/templates/order/sales_order_base.html:215
msgid "Contact"
@@ -3642,7 +3637,7 @@ msgstr ""
#: company/models.py:397
#: report/templates/report/inventree_test_report_base.html:104
-#: stock/models.py:2254 templates/js/translated/company.js:872
+#: stock/models.py:2255 templates/js/translated/company.js:872
#: templates/js/translated/company.js:1077 templates/js/translated/part.js:1465
#: templates/js/translated/stock.js:1446
msgid "Value"
@@ -3653,7 +3648,7 @@ msgid "Parameter value"
msgstr ""
#: company/models.py:404 company/templates/company/supplier_part.html:169
-#: part/admin.py:40 part/models.py:986 part/models.py:3406
+#: part/admin.py:40 part/models.py:987 part/models.py:3407
#: part/templates/part/part_base.html:286
#: templates/js/translated/company.js:1083 templates/js/translated/part.js:1484
#: templates/js/translated/part.js:1588 templates/js/translated/part.js:2262
@@ -3677,7 +3672,7 @@ msgid "Linked manufacturer part must reference the same base part"
msgstr ""
#: company/models.py:564 company/templates/company/company_base.html:82
-#: company/templates/company/supplier_part.html:130 order/models.py:379
+#: company/templates/company/supplier_part.html:130 order/models.py:382
#: order/templates/order/order_base.html:140 part/bom.py:285 part/bom.py:313
#: part/serializers.py:343 stock/templates/stock/item_base.html:225
#: templates/email/overdue_purchase_order.html:16
@@ -3720,7 +3715,7 @@ msgid "Supplier part description"
msgstr ""
#: company/models.py:596 company/templates/company/supplier_part.html:188
-#: part/admin.py:279 part/models.py:3800 part/templates/part/upload_bom.html:59
+#: part/admin.py:279 part/models.py:3801 part/templates/part/upload_bom.html:59
#: report/templates/report/inventree_bill_of_materials_report.html:140
#: report/templates/report/inventree_po_report_base.html:32
#: report/templates/report/inventree_return_order_report_base.html:27
@@ -3729,11 +3724,11 @@ msgstr ""
msgid "Note"
msgstr ""
-#: company/models.py:600 part/models.py:1918
+#: company/models.py:600 part/models.py:1919
msgid "base cost"
msgstr ""
-#: company/models.py:600 part/models.py:1918
+#: company/models.py:600 part/models.py:1919
msgid "Minimum charge (e.g. stocking fee)"
msgstr ""
@@ -3763,7 +3758,7 @@ msgstr ""
msgid "Total quantity supplied in a single pack. Leave empty for single items."
msgstr ""
-#: company/models.py:624 part/models.py:1920
+#: company/models.py:624 part/models.py:1921
msgid "multiple"
msgstr ""
@@ -3854,8 +3849,8 @@ msgstr ""
msgid "Delete image"
msgstr ""
-#: company/templates/company/company_base.html:87 order/models.py:776
-#: order/models.py:1735 order/templates/order/return_order_base.html:132
+#: company/templates/company/company_base.html:87 order/models.py:779
+#: order/models.py:1738 order/templates/order/return_order_base.html:132
#: order/templates/order/sales_order_base.html:145 stock/models.py:720
#: stock/models.py:721 stock/serializers.py:825
#: stock/templates/stock/item_base.html:401
@@ -4088,7 +4083,7 @@ msgstr ""
#: part/templates/part/detail.html:393 part/templates/part/detail.html:423
#: templates/js/translated/forms.js:506 templates/js/translated/helpers.js:105
#: templates/js/translated/part.js:370 templates/js/translated/pricing.js:629
-#: templates/js/translated/stock.js:216 users/models.py:247
+#: templates/js/translated/stock.js:216 users/models.py:248
msgid "Delete"
msgstr ""
@@ -4346,7 +4341,7 @@ msgstr ""
msgid "QR code"
msgstr ""
-#: order/admin.py:30 order/models.py:70
+#: order/admin.py:30 order/models.py:73
#: report/templates/report/inventree_po_report_base.html:31
#: report/templates/report/inventree_so_report_base.html:31
#: templates/js/translated/order.js:327
@@ -4355,11 +4350,11 @@ msgstr ""
msgid "Total Price"
msgstr ""
-#: order/api.py:239
+#: order/api.py:242
msgid "No matching purchase order found"
msgstr ""
-#: order/api.py:1449 order/models.py:1175 order/models.py:1259
+#: order/api.py:1452 order/models.py:1178 order/models.py:1262
#: order/templates/order/order_base.html:9
#: order/templates/order/order_base.html:18
#: report/templates/report/inventree_po_report_base.html:14
@@ -4373,7 +4368,7 @@ msgstr ""
msgid "Purchase Order"
msgstr ""
-#: order/api.py:1453 order/models.py:1906 order/models.py:1952
+#: order/api.py:1456 order/models.py:1909 order/models.py:1955
#: order/templates/order/return_order_base.html:9
#: order/templates/order/return_order_base.html:28
#: report/templates/report/inventree_return_order_report_base.html:13
@@ -4382,188 +4377,188 @@ msgstr ""
msgid "Return Order"
msgstr ""
-#: order/api.py:1455 templates/js/translated/sales_order.js:1030
+#: order/api.py:1458 templates/js/translated/sales_order.js:1030
msgid "Unknown"
msgstr ""
-#: order/models.py:71
+#: order/models.py:74
msgid "Total price for this order"
msgstr ""
-#: order/models.py:76 order/serializers.py:48
+#: order/models.py:79 order/serializers.py:49
msgid "Order Currency"
msgstr ""
-#: order/models.py:78 order/serializers.py:49
+#: order/models.py:81 order/serializers.py:50
msgid "Currency for this order (leave blank to use company default)"
msgstr ""
-#: order/models.py:207
+#: order/models.py:210
msgid "Contact does not match selected company"
msgstr ""
-#: order/models.py:229
+#: order/models.py:232
msgid "Order description (optional)"
msgstr ""
-#: order/models.py:231
+#: order/models.py:234
msgid "Select project code for this order"
msgstr ""
-#: order/models.py:233 order/models.py:1091 order/models.py:1451
+#: order/models.py:236 order/models.py:1094 order/models.py:1454
msgid "Link to external page"
msgstr ""
-#: order/models.py:238
+#: order/models.py:241
msgid "Expected date for order delivery. Order will be overdue after this date."
msgstr ""
-#: order/models.py:247
+#: order/models.py:250
msgid "Created By"
msgstr ""
-#: order/models.py:254
+#: order/models.py:257
msgid "User or group responsible for this order"
msgstr ""
-#: order/models.py:264
+#: order/models.py:267
msgid "Point of contact for this order"
msgstr ""
-#: order/models.py:357 order/models.py:763
+#: order/models.py:360 order/models.py:766
msgid "Order reference"
msgstr ""
-#: order/models.py:365 order/models.py:788
+#: order/models.py:368 order/models.py:791
msgid "Purchase order status"
msgstr ""
-#: order/models.py:380
+#: order/models.py:383
msgid "Company from which the items are being ordered"
msgstr ""
-#: order/models.py:388 order/templates/order/order_base.html:152
+#: order/models.py:391 order/templates/order/order_base.html:152
#: templates/js/translated/purchase_order.js:1662
msgid "Supplier Reference"
msgstr ""
-#: order/models.py:388
+#: order/models.py:391
msgid "Supplier order reference code"
msgstr ""
-#: order/models.py:395
+#: order/models.py:398
msgid "received by"
msgstr ""
-#: order/models.py:400 order/models.py:1758
+#: order/models.py:403 order/models.py:1761
msgid "Issue Date"
msgstr ""
-#: order/models.py:401 order/models.py:1759
+#: order/models.py:404 order/models.py:1762
msgid "Date order was issued"
msgstr ""
-#: order/models.py:407 order/models.py:1765
+#: order/models.py:410 order/models.py:1768
msgid "Date order was completed"
msgstr ""
-#: order/models.py:442
+#: order/models.py:445
msgid "Part supplier must match PO supplier"
msgstr ""
-#: order/models.py:603
+#: order/models.py:606
msgid "Quantity must be a positive number"
msgstr ""
-#: order/models.py:777
+#: order/models.py:780
msgid "Company to which the items are being sold"
msgstr ""
-#: order/models.py:796 order/models.py:1752
+#: order/models.py:799 order/models.py:1755
msgid "Customer Reference "
msgstr ""
-#: order/models.py:796 order/models.py:1753
+#: order/models.py:799 order/models.py:1756
msgid "Customer order reference code"
msgstr ""
-#: order/models.py:798 order/models.py:1405
+#: order/models.py:801 order/models.py:1408
#: templates/js/translated/sales_order.js:831
#: templates/js/translated/sales_order.js:1012
msgid "Shipment Date"
msgstr ""
-#: order/models.py:805
+#: order/models.py:808
msgid "shipped by"
msgstr ""
-#: order/models.py:854
+#: order/models.py:857
msgid "Order cannot be completed as no parts have been assigned"
msgstr ""
-#: order/models.py:858
+#: order/models.py:861
msgid "Only an open order can be marked as complete"
msgstr ""
-#: order/models.py:861 templates/js/translated/sales_order.js:491
+#: order/models.py:864 templates/js/translated/sales_order.js:491
msgid "Order cannot be completed as there are incomplete shipments"
msgstr ""
-#: order/models.py:864
+#: order/models.py:867
msgid "Order cannot be completed as there are incomplete line items"
msgstr ""
-#: order/models.py:1071
+#: order/models.py:1074
msgid "Item quantity"
msgstr ""
-#: order/models.py:1084
+#: order/models.py:1087
msgid "Line item reference"
msgstr ""
-#: order/models.py:1086
+#: order/models.py:1089
msgid "Line item notes"
msgstr ""
-#: order/models.py:1097
+#: order/models.py:1100
msgid "Target date for this line item (leave blank to use the target date from the order)"
msgstr ""
-#: order/models.py:1115
+#: order/models.py:1118
msgid "Line item description (optional)"
msgstr ""
-#: order/models.py:1120
+#: order/models.py:1123
msgid "Context"
msgstr ""
-#: order/models.py:1121
+#: order/models.py:1124
msgid "Additional context for this line"
msgstr ""
-#: order/models.py:1130
+#: order/models.py:1133
msgid "Unit price"
msgstr ""
-#: order/models.py:1160
+#: order/models.py:1163
msgid "Supplier part must match supplier"
msgstr ""
-#: order/models.py:1168
+#: order/models.py:1171
msgid "deleted"
msgstr ""
-#: order/models.py:1174 order/models.py:1259 order/models.py:1300
-#: order/models.py:1399 order/models.py:1548 order/models.py:1905
-#: order/models.py:1952 templates/js/translated/sales_order.js:1474
+#: order/models.py:1177 order/models.py:1262 order/models.py:1303
+#: order/models.py:1402 order/models.py:1551 order/models.py:1908
+#: order/models.py:1955 templates/js/translated/sales_order.js:1474
msgid "Order"
msgstr ""
-#: order/models.py:1193
+#: order/models.py:1196
msgid "Supplier part"
msgstr ""
-#: order/models.py:1200 order/templates/order/order_base.html:200
+#: order/models.py:1203 order/templates/order/order_base.html:200
#: templates/js/translated/part.js:1841 templates/js/translated/part.js:1872
#: templates/js/translated/purchase_order.js:1276
#: templates/js/translated/purchase_order.js:2137
@@ -4573,342 +4568,342 @@ msgstr ""
msgid "Received"
msgstr ""
-#: order/models.py:1201
+#: order/models.py:1204
msgid "Number of items received"
msgstr ""
-#: order/models.py:1208 stock/models.py:823 stock/serializers.py:252
+#: order/models.py:1211 stock/models.py:823 stock/serializers.py:252
#: stock/templates/stock/item_base.html:184
#: templates/js/translated/stock.js:2047
msgid "Purchase Price"
msgstr ""
-#: order/models.py:1209
+#: order/models.py:1212
msgid "Unit purchase price"
msgstr ""
-#: order/models.py:1222
+#: order/models.py:1225
msgid "Where does the Purchaser want this item to be stored?"
msgstr ""
-#: order/models.py:1288
+#: order/models.py:1291
msgid "Virtual part cannot be assigned to a sales order"
msgstr ""
-#: order/models.py:1293
+#: order/models.py:1296
msgid "Only salable parts can be assigned to a sales order"
msgstr ""
-#: order/models.py:1319 part/templates/part/part_pricing.html:107
+#: order/models.py:1322 part/templates/part/part_pricing.html:107
#: part/templates/part/prices.html:128 templates/js/translated/pricing.js:943
msgid "Sale Price"
msgstr ""
-#: order/models.py:1320
+#: order/models.py:1323
msgid "Unit sale price"
msgstr ""
-#: order/models.py:1330
+#: order/models.py:1333
msgid "Shipped quantity"
msgstr ""
-#: order/models.py:1406
+#: order/models.py:1409
msgid "Date of shipment"
msgstr ""
-#: order/models.py:1411 templates/js/translated/sales_order.js:1024
+#: order/models.py:1414 templates/js/translated/sales_order.js:1024
msgid "Delivery Date"
msgstr ""
-#: order/models.py:1412
+#: order/models.py:1415
msgid "Date of delivery of shipment"
msgstr ""
-#: order/models.py:1419
+#: order/models.py:1422
msgid "Checked By"
msgstr ""
-#: order/models.py:1420
+#: order/models.py:1423
msgid "User who checked this shipment"
msgstr ""
-#: order/models.py:1427 order/models.py:1624 order/serializers.py:1247
-#: order/serializers.py:1375 templates/js/translated/model_renderers.js:415
+#: order/models.py:1430 order/models.py:1627 order/serializers.py:1248
+#: order/serializers.py:1376 templates/js/translated/model_renderers.js:415
msgid "Shipment"
msgstr ""
-#: order/models.py:1428
+#: order/models.py:1431
msgid "Shipment number"
msgstr ""
-#: order/models.py:1436
+#: order/models.py:1439
msgid "Tracking Number"
msgstr ""
-#: order/models.py:1437
+#: order/models.py:1440
msgid "Shipment tracking information"
msgstr ""
-#: order/models.py:1444
+#: order/models.py:1447
msgid "Invoice Number"
msgstr ""
-#: order/models.py:1445
+#: order/models.py:1448
msgid "Reference number for associated invoice"
msgstr ""
-#: order/models.py:1467
+#: order/models.py:1470
msgid "Shipment has already been sent"
msgstr ""
-#: order/models.py:1470
+#: order/models.py:1473
msgid "Shipment has no allocated stock items"
msgstr ""
-#: order/models.py:1583 order/models.py:1585
+#: order/models.py:1586 order/models.py:1588
msgid "Stock item has not been assigned"
msgstr ""
-#: order/models.py:1589
+#: order/models.py:1592
msgid "Cannot allocate stock item to a line with a different part"
msgstr ""
-#: order/models.py:1591
+#: order/models.py:1594
msgid "Cannot allocate stock to a line without a part"
msgstr ""
-#: order/models.py:1594
+#: order/models.py:1597
msgid "Allocation quantity cannot exceed stock quantity"
msgstr ""
-#: order/models.py:1604 order/serializers.py:1109
+#: order/models.py:1607 order/serializers.py:1110
msgid "Quantity must be 1 for serialized stock item"
msgstr ""
-#: order/models.py:1607
+#: order/models.py:1610
msgid "Sales order does not match shipment"
msgstr ""
-#: order/models.py:1608
+#: order/models.py:1611
msgid "Shipment does not match sales order"
msgstr ""
-#: order/models.py:1616
+#: order/models.py:1619
msgid "Line"
msgstr ""
-#: order/models.py:1625
+#: order/models.py:1628
msgid "Sales order shipment reference"
msgstr ""
-#: order/models.py:1638 order/models.py:1913
+#: order/models.py:1641 order/models.py:1916
#: templates/js/translated/return_order.js:706
msgid "Item"
msgstr ""
-#: order/models.py:1639
+#: order/models.py:1642
msgid "Select stock item to allocate"
msgstr ""
-#: order/models.py:1642
+#: order/models.py:1645
msgid "Enter stock allocation quantity"
msgstr ""
-#: order/models.py:1722
+#: order/models.py:1725
msgid "Return Order reference"
msgstr ""
-#: order/models.py:1736
+#: order/models.py:1739
msgid "Company from which items are being returned"
msgstr ""
-#: order/models.py:1747
+#: order/models.py:1750
msgid "Return order status"
msgstr ""
-#: order/models.py:1898
+#: order/models.py:1901
msgid "Only serialized items can be assigned to a Return Order"
msgstr ""
-#: order/models.py:1914
+#: order/models.py:1917
msgid "Select item to return from customer"
msgstr ""
-#: order/models.py:1919
+#: order/models.py:1922
msgid "Received Date"
msgstr ""
-#: order/models.py:1920
+#: order/models.py:1923
msgid "The date this this return item was received"
msgstr ""
-#: order/models.py:1931 templates/js/translated/return_order.js:717
+#: order/models.py:1934 templates/js/translated/return_order.js:717
#: templates/js/translated/table_filters.js:93
msgid "Outcome"
msgstr ""
-#: order/models.py:1931
+#: order/models.py:1934
msgid "Outcome for this line item"
msgstr ""
-#: order/models.py:1937
+#: order/models.py:1940
msgid "Cost associated with return or repair for this line item"
msgstr ""
-#: order/serializers.py:246
+#: order/serializers.py:247
msgid "Order cannot be cancelled"
msgstr ""
-#: order/serializers.py:261 order/serializers.py:1127
+#: order/serializers.py:262 order/serializers.py:1128
msgid "Allow order to be closed with incomplete line items"
msgstr ""
-#: order/serializers.py:272 order/serializers.py:1138
+#: order/serializers.py:273 order/serializers.py:1139
msgid "Order has incomplete line items"
msgstr ""
-#: order/serializers.py:385
+#: order/serializers.py:386
msgid "Order is not open"
msgstr ""
-#: order/serializers.py:403
+#: order/serializers.py:404
msgid "Purchase price currency"
msgstr ""
-#: order/serializers.py:421
+#: order/serializers.py:422
msgid "Supplier part must be specified"
msgstr ""
-#: order/serializers.py:426
+#: order/serializers.py:427
msgid "Purchase order must be specified"
msgstr ""
-#: order/serializers.py:432
+#: order/serializers.py:433
msgid "Supplier must match purchase order"
msgstr ""
-#: order/serializers.py:433
+#: order/serializers.py:434
msgid "Purchase order must match supplier"
msgstr ""
-#: order/serializers.py:471 order/serializers.py:1215
+#: order/serializers.py:472 order/serializers.py:1216
msgid "Line Item"
msgstr ""
-#: order/serializers.py:477
+#: order/serializers.py:478
msgid "Line item does not match purchase order"
msgstr ""
-#: order/serializers.py:487 order/serializers.py:606 order/serializers.py:1588
+#: order/serializers.py:488 order/serializers.py:607 order/serializers.py:1589
msgid "Select destination location for received items"
msgstr ""
-#: order/serializers.py:506 templates/js/translated/purchase_order.js:1100
+#: order/serializers.py:507 templates/js/translated/purchase_order.js:1100
msgid "Enter batch code for incoming stock items"
msgstr ""
-#: order/serializers.py:514 templates/js/translated/purchase_order.js:1124
+#: order/serializers.py:515 templates/js/translated/purchase_order.js:1124
msgid "Enter serial numbers for incoming stock items"
msgstr ""
-#: order/serializers.py:527 templates/js/translated/barcode.js:52
+#: order/serializers.py:528 templates/js/translated/barcode.js:52
msgid "Barcode"
msgstr ""
-#: order/serializers.py:528
+#: order/serializers.py:529
msgid "Scanned barcode"
msgstr ""
-#: order/serializers.py:544
+#: order/serializers.py:545
msgid "Barcode is already in use"
msgstr ""
-#: order/serializers.py:568
+#: order/serializers.py:569
msgid "An integer quantity must be provided for trackable parts"
msgstr ""
-#: order/serializers.py:622 order/serializers.py:1603
+#: order/serializers.py:623 order/serializers.py:1604
msgid "Line items must be provided"
msgstr ""
-#: order/serializers.py:639
+#: order/serializers.py:640
msgid "Destination location must be specified"
msgstr ""
-#: order/serializers.py:650
+#: order/serializers.py:651
msgid "Supplied barcode values must be unique"
msgstr ""
-#: order/serializers.py:949
+#: order/serializers.py:950
msgid "Sale price currency"
msgstr ""
-#: order/serializers.py:1006
+#: order/serializers.py:1007
msgid "No shipment details provided"
msgstr ""
-#: order/serializers.py:1070 order/serializers.py:1224
+#: order/serializers.py:1071 order/serializers.py:1225
msgid "Line item is not associated with this order"
msgstr ""
-#: order/serializers.py:1092
+#: order/serializers.py:1093
msgid "Quantity must be positive"
msgstr ""
-#: order/serializers.py:1237
+#: order/serializers.py:1238
msgid "Enter serial numbers to allocate"
msgstr ""
-#: order/serializers.py:1259 order/serializers.py:1383
+#: order/serializers.py:1260 order/serializers.py:1384
msgid "Shipment has already been shipped"
msgstr ""
-#: order/serializers.py:1262 order/serializers.py:1386
+#: order/serializers.py:1263 order/serializers.py:1387
msgid "Shipment is not associated with this order"
msgstr ""
-#: order/serializers.py:1316
+#: order/serializers.py:1317
msgid "No match found for the following serial numbers"
msgstr ""
-#: order/serializers.py:1326
+#: order/serializers.py:1327
msgid "The following serial numbers are already allocated"
msgstr ""
-#: order/serializers.py:1554
+#: order/serializers.py:1555
msgid "Return order line item"
msgstr ""
-#: order/serializers.py:1561
+#: order/serializers.py:1562
msgid "Line item does not match return order"
msgstr ""
-#: order/serializers.py:1564
+#: order/serializers.py:1565
msgid "Line item has already been received"
msgstr ""
-#: order/serializers.py:1596
+#: order/serializers.py:1597
msgid "Items can only be received against orders which are in progress"
msgstr ""
-#: order/serializers.py:1677
+#: order/serializers.py:1678
msgid "Line price currency"
msgstr ""
-#: order/tasks.py:26
+#: order/tasks.py:27
msgid "Overdue Purchase Order"
msgstr ""
-#: order/tasks.py:31
+#: order/tasks.py:32
#, python-brace-format
msgid "Purchase order {po} is now overdue"
msgstr ""
-#: order/tasks.py:89
+#: order/tasks.py:90
msgid "Overdue Sales Order"
msgstr ""
-#: order/tasks.py:94
+#: order/tasks.py:95
#, python-brace-format
msgid "Sales order {so} is now overdue"
msgstr ""
@@ -5309,12 +5304,12 @@ msgstr ""
msgid "Updated {part} unit-price to {price} and quantity to {qty}"
msgstr ""
-#: part/admin.py:33 part/admin.py:273 part/models.py:3666 part/tasks.py:288
+#: part/admin.py:33 part/admin.py:273 part/models.py:3667 part/tasks.py:288
#: stock/admin.py:101
msgid "Part ID"
msgstr ""
-#: part/admin.py:34 part/admin.py:275 part/models.py:3670 part/tasks.py:289
+#: part/admin.py:34 part/admin.py:275 part/models.py:3671 part/tasks.py:289
#: stock/admin.py:102
msgid "Part Name"
msgstr ""
@@ -5323,19 +5318,19 @@ msgstr ""
msgid "Part Description"
msgstr ""
-#: part/admin.py:36 part/models.py:888 part/templates/part/part_base.html:271
+#: part/admin.py:36 part/models.py:889 part/templates/part/part_base.html:271
#: templates/js/translated/part.js:1200 templates/js/translated/part.js:2233
#: templates/js/translated/stock.js:1795
msgid "IPN"
msgstr ""
-#: part/admin.py:37 part/models.py:895 part/templates/part/part_base.html:279
+#: part/admin.py:37 part/models.py:896 part/templates/part/part_base.html:279
#: report/models.py:179 templates/js/translated/part.js:1205
#: templates/js/translated/part.js:2239
msgid "Revision"
msgstr ""
-#: part/admin.py:38 part/admin.py:198 part/models.py:874
+#: part/admin.py:38 part/admin.py:198 part/models.py:875
#: part/templates/part/category.html:93 part/templates/part/part_base.html:300
msgid "Keywords"
msgstr ""
@@ -5356,11 +5351,11 @@ msgstr ""
msgid "Default Supplier ID"
msgstr ""
-#: part/admin.py:46 part/models.py:863 part/templates/part/part_base.html:179
+#: part/admin.py:46 part/models.py:864 part/templates/part/part_base.html:179
msgid "Variant Of"
msgstr ""
-#: part/admin.py:47 part/models.py:979 part/templates/part/part_base.html:205
+#: part/admin.py:47 part/models.py:980 part/templates/part/part_base.html:205
msgid "Minimum Stock"
msgstr ""
@@ -5393,11 +5388,11 @@ msgstr ""
msgid "Building"
msgstr ""
-#: part/admin.py:66 part/models.py:2929 templates/js/translated/part.js:943
+#: part/admin.py:66 part/models.py:2930 templates/js/translated/part.js:943
msgid "Minimum Cost"
msgstr ""
-#: part/admin.py:67 part/models.py:2935 templates/js/translated/part.js:953
+#: part/admin.py:67 part/models.py:2936 templates/js/translated/part.js:953
msgid "Maximum Cost"
msgstr ""
@@ -5414,7 +5409,7 @@ msgstr ""
msgid "Category Path"
msgstr ""
-#: part/admin.py:202 part/models.py:391 part/templates/part/cat_link.html:3
+#: part/admin.py:202 part/models.py:392 part/templates/part/cat_link.html:3
#: part/templates/part/category.html:23 part/templates/part/category.html:140
#: part/templates/part/category.html:160
#: part/templates/part/category_sidebar.html:9
@@ -5437,7 +5432,7 @@ msgstr ""
msgid "Parent IPN"
msgstr ""
-#: part/admin.py:274 part/models.py:3674
+#: part/admin.py:274 part/models.py:3675
msgid "Part IPN"
msgstr ""
@@ -5451,35 +5446,35 @@ msgstr ""
msgid "Maximum Price"
msgstr ""
-#: part/api.py:497
+#: part/api.py:498
msgid "Incoming Purchase Order"
msgstr ""
-#: part/api.py:517
+#: part/api.py:518
msgid "Outgoing Sales Order"
msgstr ""
-#: part/api.py:535
+#: part/api.py:536
msgid "Stock produced by Build Order"
msgstr ""
-#: part/api.py:621
+#: part/api.py:622
msgid "Stock required for Build Order"
msgstr ""
-#: part/api.py:769
+#: part/api.py:770
msgid "Valid"
msgstr ""
-#: part/api.py:770
+#: part/api.py:771
msgid "Validate entire Bill of Materials"
msgstr ""
-#: part/api.py:776
+#: part/api.py:777
msgid "This option must be selected"
msgstr ""
-#: part/bom.py:175 part/models.py:126 part/models.py:922
+#: part/bom.py:175 part/models.py:127 part/models.py:923
#: part/templates/part/category.html:115 part/templates/part/part_base.html:369
msgid "Default Location"
msgstr ""
@@ -5497,106 +5492,106 @@ msgstr ""
msgid "Input quantity for price calculation"
msgstr ""
-#: part/models.py:74 part/models.py:3615 part/templates/part/category.html:16
+#: part/models.py:75 part/models.py:3616 part/templates/part/category.html:16
#: part/templates/part/part_app_base.html:10
msgid "Part Category"
msgstr ""
-#: part/models.py:75 part/templates/part/category.html:135
+#: part/models.py:76 part/templates/part/category.html:135
#: templates/InvenTree/search.html:97 templates/js/translated/search.js:200
#: users/models.py:37
msgid "Part Categories"
msgstr ""
-#: part/models.py:127
+#: part/models.py:128
msgid "Default location for parts in this category"
msgstr ""
-#: part/models.py:132 stock/models.py:124 templates/js/translated/stock.js:2520
+#: part/models.py:133 stock/models.py:124 templates/js/translated/stock.js:2520
#: templates/js/translated/table_filters.js:209
#: templates/js/translated/table_filters.js:229
msgid "Structural"
msgstr ""
-#: part/models.py:134
+#: part/models.py:135
msgid "Parts may not be directly assigned to a structural category, but may be assigned to child categories."
msgstr ""
-#: part/models.py:138
+#: part/models.py:139
msgid "Default keywords"
msgstr ""
-#: part/models.py:138
+#: part/models.py:139
msgid "Default keywords for parts in this category"
msgstr ""
-#: part/models.py:143 stock/models.py:113
+#: part/models.py:144 stock/models.py:113
msgid "Icon"
msgstr ""
-#: part/models.py:144 stock/models.py:114
+#: part/models.py:145 stock/models.py:114
msgid "Icon (optional)"
msgstr ""
-#: part/models.py:163
+#: part/models.py:164
msgid "You cannot make this part category structural because some parts are already assigned to it!"
msgstr ""
-#: part/models.py:474
+#: part/models.py:475
msgid "Invalid choice for parent part"
msgstr ""
-#: part/models.py:516 part/models.py:528
+#: part/models.py:517 part/models.py:529
#, python-brace-format
msgid "Part '{p1}' is used in BOM for '{p2}' (recursive)"
msgstr ""
-#: part/models.py:600
+#: part/models.py:601
#, python-brace-format
msgid "IPN must match regex pattern {pat}"
msgstr ""
-#: part/models.py:671
+#: part/models.py:672
msgid "Stock item with this serial number already exists"
msgstr ""
-#: part/models.py:802
+#: part/models.py:803
msgid "Duplicate IPN not allowed in part settings"
msgstr ""
-#: part/models.py:807
+#: part/models.py:808
msgid "Part with this Name, IPN and Revision already exists."
msgstr ""
-#: part/models.py:821
+#: part/models.py:822
msgid "Parts cannot be assigned to structural part categories!"
msgstr ""
-#: part/models.py:845 part/models.py:3671
+#: part/models.py:846 part/models.py:3672
msgid "Part name"
msgstr ""
-#: part/models.py:851
+#: part/models.py:852
msgid "Is Template"
msgstr ""
-#: part/models.py:852
+#: part/models.py:853
msgid "Is this part a template part?"
msgstr ""
-#: part/models.py:862
+#: part/models.py:863
msgid "Is this part a variant of another part?"
msgstr ""
-#: part/models.py:869
+#: part/models.py:870
msgid "Part description (optional)"
msgstr ""
-#: part/models.py:875
+#: part/models.py:876
msgid "Part keywords to improve visibility in search results"
msgstr ""
-#: part/models.py:882 part/models.py:3197 part/models.py:3614
+#: part/models.py:883 part/models.py:3198 part/models.py:3615
#: part/serializers.py:848 part/templates/part/part_base.html:262
#: templates/InvenTree/settings/settings_staff_js.html:204
#: templates/js/translated/notification.js:59
@@ -5604,249 +5599,249 @@ msgstr ""
msgid "Category"
msgstr ""
-#: part/models.py:883
+#: part/models.py:884
msgid "Part category"
msgstr ""
-#: part/models.py:889
+#: part/models.py:890
msgid "Internal Part Number"
msgstr ""
-#: part/models.py:894
+#: part/models.py:895
msgid "Part revision or version number"
msgstr ""
-#: part/models.py:920
+#: part/models.py:921
msgid "Where is this item normally stored?"
msgstr ""
-#: part/models.py:965 part/templates/part/part_base.html:378
+#: part/models.py:966 part/templates/part/part_base.html:378
msgid "Default Supplier"
msgstr ""
-#: part/models.py:966
+#: part/models.py:967
msgid "Default supplier part"
msgstr ""
-#: part/models.py:973
+#: part/models.py:974
msgid "Default Expiry"
msgstr ""
-#: part/models.py:974
+#: part/models.py:975
msgid "Expiry time (in days) for stock items of this part"
msgstr ""
-#: part/models.py:980
+#: part/models.py:981
msgid "Minimum allowed stock level"
msgstr ""
-#: part/models.py:987
+#: part/models.py:988
msgid "Units of measure for this part"
msgstr ""
-#: part/models.py:996
+#: part/models.py:997
msgid "Can this part be built from other parts?"
msgstr ""
-#: part/models.py:1002
+#: part/models.py:1003
msgid "Can this part be used to build other parts?"
msgstr ""
-#: part/models.py:1008
+#: part/models.py:1009
msgid "Does this part have tracking for unique items?"
msgstr ""
-#: part/models.py:1013
+#: part/models.py:1014
msgid "Can this part be purchased from external suppliers?"
msgstr ""
-#: part/models.py:1018
+#: part/models.py:1019
msgid "Can this part be sold to customers?"
msgstr ""
-#: part/models.py:1023
+#: part/models.py:1024
msgid "Is this part active?"
msgstr ""
-#: part/models.py:1028
+#: part/models.py:1029
msgid "Is this a virtual part, such as a software product or license?"
msgstr ""
-#: part/models.py:1030
+#: part/models.py:1031
msgid "BOM checksum"
msgstr ""
-#: part/models.py:1030
+#: part/models.py:1031
msgid "Stored BOM checksum"
msgstr ""
-#: part/models.py:1033
+#: part/models.py:1034
msgid "BOM checked by"
msgstr ""
-#: part/models.py:1035
+#: part/models.py:1036
msgid "BOM checked date"
msgstr ""
-#: part/models.py:1039
+#: part/models.py:1040
msgid "Creation User"
msgstr ""
-#: part/models.py:1041
+#: part/models.py:1042
msgid "User responsible for this part"
msgstr ""
-#: part/models.py:1045 part/templates/part/part_base.html:341
+#: part/models.py:1046 part/templates/part/part_base.html:341
#: stock/templates/stock/item_base.html:447
#: templates/js/translated/part.js:2331
msgid "Last Stocktake"
msgstr ""
-#: part/models.py:1920
+#: part/models.py:1921
msgid "Sell multiple"
msgstr ""
-#: part/models.py:2852
+#: part/models.py:2853
msgid "Currency used to cache pricing calculations"
msgstr ""
-#: part/models.py:2869
+#: part/models.py:2870
msgid "Minimum BOM Cost"
msgstr ""
-#: part/models.py:2870
+#: part/models.py:2871
msgid "Minimum cost of component parts"
msgstr ""
-#: part/models.py:2875
+#: part/models.py:2876
msgid "Maximum BOM Cost"
msgstr ""
-#: part/models.py:2876
+#: part/models.py:2877
msgid "Maximum cost of component parts"
msgstr ""
-#: part/models.py:2881
+#: part/models.py:2882
msgid "Minimum Purchase Cost"
msgstr ""
-#: part/models.py:2882
+#: part/models.py:2883
msgid "Minimum historical purchase cost"
msgstr ""
-#: part/models.py:2887
+#: part/models.py:2888
msgid "Maximum Purchase Cost"
msgstr ""
-#: part/models.py:2888
+#: part/models.py:2889
msgid "Maximum historical purchase cost"
msgstr ""
-#: part/models.py:2893
+#: part/models.py:2894
msgid "Minimum Internal Price"
msgstr ""
-#: part/models.py:2894
+#: part/models.py:2895
msgid "Minimum cost based on internal price breaks"
msgstr ""
-#: part/models.py:2899
+#: part/models.py:2900
msgid "Maximum Internal Price"
msgstr ""
-#: part/models.py:2900
+#: part/models.py:2901
msgid "Maximum cost based on internal price breaks"
msgstr ""
-#: part/models.py:2905
+#: part/models.py:2906
msgid "Minimum Supplier Price"
msgstr ""
-#: part/models.py:2906
+#: part/models.py:2907
msgid "Minimum price of part from external suppliers"
msgstr ""
-#: part/models.py:2911
+#: part/models.py:2912
msgid "Maximum Supplier Price"
msgstr ""
-#: part/models.py:2912
+#: part/models.py:2913
msgid "Maximum price of part from external suppliers"
msgstr ""
-#: part/models.py:2917
+#: part/models.py:2918
msgid "Minimum Variant Cost"
msgstr ""
-#: part/models.py:2918
+#: part/models.py:2919
msgid "Calculated minimum cost of variant parts"
msgstr ""
-#: part/models.py:2923
+#: part/models.py:2924
msgid "Maximum Variant Cost"
msgstr ""
-#: part/models.py:2924
+#: part/models.py:2925
msgid "Calculated maximum cost of variant parts"
msgstr ""
-#: part/models.py:2930
+#: part/models.py:2931
msgid "Calculated overall minimum cost"
msgstr ""
-#: part/models.py:2936
+#: part/models.py:2937
msgid "Calculated overall maximum cost"
msgstr ""
-#: part/models.py:2941
+#: part/models.py:2942
msgid "Minimum Sale Price"
msgstr ""
-#: part/models.py:2942
+#: part/models.py:2943
msgid "Minimum sale price based on price breaks"
msgstr ""
-#: part/models.py:2947
+#: part/models.py:2948
msgid "Maximum Sale Price"
msgstr ""
-#: part/models.py:2948
+#: part/models.py:2949
msgid "Maximum sale price based on price breaks"
msgstr ""
-#: part/models.py:2953
+#: part/models.py:2954
msgid "Minimum Sale Cost"
msgstr ""
-#: part/models.py:2954
+#: part/models.py:2955
msgid "Minimum historical sale price"
msgstr ""
-#: part/models.py:2959
+#: part/models.py:2960
msgid "Maximum Sale Cost"
msgstr ""
-#: part/models.py:2960
+#: part/models.py:2961
msgid "Maximum historical sale price"
msgstr ""
-#: part/models.py:2979
+#: part/models.py:2980
msgid "Part for stocktake"
msgstr ""
-#: part/models.py:2984
+#: part/models.py:2985
msgid "Item Count"
msgstr ""
-#: part/models.py:2985
+#: part/models.py:2986
msgid "Number of individual stock entries at time of stocktake"
msgstr ""
-#: part/models.py:2992
+#: part/models.py:2993
msgid "Total available stock at time of stocktake"
msgstr ""
-#: part/models.py:2996 part/models.py:3079
+#: part/models.py:2997 part/models.py:3080
#: part/templates/part/part_scheduling.html:13
#: report/templates/report/inventree_test_report_base.html:106
#: templates/InvenTree/settings/plugin_settings.html:37
@@ -5858,214 +5853,214 @@ msgstr ""
msgid "Date"
msgstr ""
-#: part/models.py:2997
+#: part/models.py:2998
msgid "Date stocktake was performed"
msgstr ""
-#: part/models.py:3005
+#: part/models.py:3006
msgid "Additional notes"
msgstr ""
-#: part/models.py:3013
+#: part/models.py:3014
msgid "User who performed this stocktake"
msgstr ""
-#: part/models.py:3018
+#: part/models.py:3019
msgid "Minimum Stock Cost"
msgstr ""
-#: part/models.py:3019
+#: part/models.py:3020
msgid "Estimated minimum cost of stock on hand"
msgstr ""
-#: part/models.py:3024
+#: part/models.py:3025
msgid "Maximum Stock Cost"
msgstr ""
-#: part/models.py:3025
+#: part/models.py:3026
msgid "Estimated maximum cost of stock on hand"
msgstr ""
-#: part/models.py:3086 templates/InvenTree/settings/settings_staff_js.html:349
+#: part/models.py:3087 templates/InvenTree/settings/settings_staff_js.html:349
msgid "Report"
msgstr ""
-#: part/models.py:3087
+#: part/models.py:3088
msgid "Stocktake report file (generated internally)"
msgstr ""
-#: part/models.py:3092 templates/InvenTree/settings/settings_staff_js.html:356
+#: part/models.py:3093 templates/InvenTree/settings/settings_staff_js.html:356
msgid "Part Count"
msgstr ""
-#: part/models.py:3093
+#: part/models.py:3094
msgid "Number of parts covered by stocktake"
msgstr ""
-#: part/models.py:3101
+#: part/models.py:3102
msgid "User who requested this stocktake report"
msgstr ""
-#: part/models.py:3237
+#: part/models.py:3238
msgid "Test templates can only be created for trackable parts"
msgstr ""
-#: part/models.py:3254
+#: part/models.py:3255
msgid "Test with this name already exists for this part"
msgstr ""
-#: part/models.py:3274 templates/js/translated/part.js:2821
+#: part/models.py:3275 templates/js/translated/part.js:2821
msgid "Test Name"
msgstr ""
-#: part/models.py:3275
+#: part/models.py:3276
msgid "Enter a name for the test"
msgstr ""
-#: part/models.py:3280
+#: part/models.py:3281
msgid "Test Description"
msgstr ""
-#: part/models.py:3281
+#: part/models.py:3282
msgid "Enter description for this test"
msgstr ""
-#: part/models.py:3286 templates/js/translated/part.js:2830
+#: part/models.py:3287 templates/js/translated/part.js:2830
#: templates/js/translated/table_filters.js:423
msgid "Required"
msgstr ""
-#: part/models.py:3287
+#: part/models.py:3288
msgid "Is this test required to pass?"
msgstr ""
-#: part/models.py:3292 templates/js/translated/part.js:2838
+#: part/models.py:3293 templates/js/translated/part.js:2838
msgid "Requires Value"
msgstr ""
-#: part/models.py:3293
+#: part/models.py:3294
msgid "Does this test require a value when adding a test result?"
msgstr ""
-#: part/models.py:3298 templates/js/translated/part.js:2845
+#: part/models.py:3299 templates/js/translated/part.js:2845
msgid "Requires Attachment"
msgstr ""
-#: part/models.py:3299
+#: part/models.py:3300
msgid "Does this test require a file attachment when adding a test result?"
msgstr ""
-#: part/models.py:3345
+#: part/models.py:3346
msgid "Checkbox parameters cannot have units"
msgstr ""
-#: part/models.py:3350
+#: part/models.py:3351
msgid "Checkbox parameters cannot have choices"
msgstr ""
-#: part/models.py:3368
+#: part/models.py:3369
msgid "Choices must be unique"
msgstr ""
-#: part/models.py:3384
+#: part/models.py:3385
msgid "Parameter template name must be unique"
msgstr ""
-#: part/models.py:3400
+#: part/models.py:3401
msgid "Parameter Name"
msgstr ""
-#: part/models.py:3406
+#: part/models.py:3407
msgid "Physical units for this parameter"
msgstr ""
-#: part/models.py:3416
+#: part/models.py:3417
msgid "Parameter description"
msgstr ""
-#: part/models.py:3422 templates/js/translated/part.js:1600
+#: part/models.py:3423 templates/js/translated/part.js:1600
#: templates/js/translated/table_filters.js:734
msgid "Checkbox"
msgstr ""
-#: part/models.py:3423
+#: part/models.py:3424
msgid "Is this parameter a checkbox?"
msgstr ""
-#: part/models.py:3428 templates/js/translated/part.js:1609
+#: part/models.py:3429 templates/js/translated/part.js:1609
msgid "Choices"
msgstr ""
-#: part/models.py:3429
+#: part/models.py:3430
msgid "Valid choices for this parameter (comma-separated)"
msgstr ""
-#: part/models.py:3510
+#: part/models.py:3511
msgid "Invalid choice for parameter value"
msgstr ""
-#: part/models.py:3554
+#: part/models.py:3555
msgid "Parent Part"
msgstr ""
-#: part/models.py:3559 part/models.py:3620 part/models.py:3621
+#: part/models.py:3560 part/models.py:3621 part/models.py:3622
#: templates/InvenTree/settings/settings_staff_js.html:199
msgid "Parameter Template"
msgstr ""
-#: part/models.py:3564
+#: part/models.py:3565
msgid "Data"
msgstr ""
-#: part/models.py:3564
+#: part/models.py:3565
msgid "Parameter Value"
msgstr ""
-#: part/models.py:3625 templates/InvenTree/settings/settings_staff_js.html:208
+#: part/models.py:3626 templates/InvenTree/settings/settings_staff_js.html:208
msgid "Default Value"
msgstr ""
-#: part/models.py:3626
+#: part/models.py:3627
msgid "Default Parameter Value"
msgstr ""
-#: part/models.py:3663
+#: part/models.py:3664
msgid "Part ID or part name"
msgstr ""
-#: part/models.py:3667
+#: part/models.py:3668
msgid "Unique part ID value"
msgstr ""
-#: part/models.py:3675
+#: part/models.py:3676
msgid "Part IPN value"
msgstr ""
-#: part/models.py:3678
+#: part/models.py:3679
msgid "Level"
msgstr ""
-#: part/models.py:3679
+#: part/models.py:3680
msgid "BOM level"
msgstr ""
-#: part/models.py:3763
+#: part/models.py:3764
msgid "Select parent part"
msgstr ""
-#: part/models.py:3771
+#: part/models.py:3772
msgid "Sub part"
msgstr ""
-#: part/models.py:3772
+#: part/models.py:3773
msgid "Select part to be used in BOM"
msgstr ""
-#: part/models.py:3778
+#: part/models.py:3779
msgid "BOM quantity for this BOM item"
msgstr ""
-#: part/models.py:3782 part/templates/part/upload_bom.html:58
+#: part/models.py:3783 part/templates/part/upload_bom.html:58
#: templates/js/translated/bom.js:971 templates/js/translated/bom.js:998
#: templates/js/translated/build.js:2113
#: templates/js/translated/table_filters.js:156
@@ -6074,114 +6069,114 @@ msgstr ""
msgid "Optional"
msgstr ""
-#: part/models.py:3783
+#: part/models.py:3784
msgid "This BOM item is optional"
msgstr ""
-#: part/models.py:3788 templates/js/translated/bom.js:967
+#: part/models.py:3789 templates/js/translated/bom.js:967
#: templates/js/translated/bom.js:1007 templates/js/translated/build.js:2104
#: templates/js/translated/table_filters.js:160
#: templates/js/translated/table_filters.js:496
msgid "Consumable"
msgstr ""
-#: part/models.py:3789
+#: part/models.py:3790
msgid "This BOM item is consumable (it is not tracked in build orders)"
msgstr ""
-#: part/models.py:3793 part/templates/part/upload_bom.html:55
+#: part/models.py:3794 part/templates/part/upload_bom.html:55
msgid "Overage"
msgstr ""
-#: part/models.py:3794
+#: part/models.py:3795
msgid "Estimated build wastage quantity (absolute or percentage)"
msgstr ""
-#: part/models.py:3797
+#: part/models.py:3798
msgid "BOM item reference"
msgstr ""
-#: part/models.py:3800
+#: part/models.py:3801
msgid "BOM item notes"
msgstr ""
-#: part/models.py:3804
+#: part/models.py:3805
msgid "Checksum"
msgstr ""
-#: part/models.py:3804
+#: part/models.py:3805
msgid "BOM line checksum"
msgstr ""
-#: part/models.py:3809 templates/js/translated/table_filters.js:144
+#: part/models.py:3810 templates/js/translated/table_filters.js:144
msgid "Validated"
msgstr ""
-#: part/models.py:3810
+#: part/models.py:3811
msgid "This BOM item has been validated"
msgstr ""
-#: part/models.py:3815 part/templates/part/upload_bom.html:57
+#: part/models.py:3816 part/templates/part/upload_bom.html:57
#: templates/js/translated/bom.js:1024
#: templates/js/translated/table_filters.js:148
#: templates/js/translated/table_filters.js:181
msgid "Gets inherited"
msgstr ""
-#: part/models.py:3816
+#: part/models.py:3817
msgid "This BOM item is inherited by BOMs for variant parts"
msgstr ""
-#: part/models.py:3821 part/templates/part/upload_bom.html:56
+#: part/models.py:3822 part/templates/part/upload_bom.html:56
#: templates/js/translated/bom.js:1016
msgid "Allow Variants"
msgstr ""
-#: part/models.py:3822
+#: part/models.py:3823
msgid "Stock items for variant parts can be used for this BOM item"
msgstr ""
-#: part/models.py:3908 stock/models.py:577
+#: part/models.py:3909 stock/models.py:577
msgid "Quantity must be integer value for trackable parts"
msgstr ""
-#: part/models.py:3917 part/models.py:3919
+#: part/models.py:3918 part/models.py:3920
msgid "Sub part must be specified"
msgstr ""
-#: part/models.py:4035
+#: part/models.py:4036
msgid "BOM Item Substitute"
msgstr ""
-#: part/models.py:4056
+#: part/models.py:4057
msgid "Substitute part cannot be the same as the master part"
msgstr ""
-#: part/models.py:4069
+#: part/models.py:4070
msgid "Parent BOM item"
msgstr ""
-#: part/models.py:4077
+#: part/models.py:4078
msgid "Substitute part"
msgstr ""
-#: part/models.py:4092
+#: part/models.py:4093
msgid "Part 1"
msgstr ""
-#: part/models.py:4096
+#: part/models.py:4097
msgid "Part 2"
msgstr ""
-#: part/models.py:4096
+#: part/models.py:4097
msgid "Select Related Part"
msgstr ""
-#: part/models.py:4114
+#: part/models.py:4115
msgid "Part relationship cannot be created between a part and itself"
msgstr ""
-#: part/models.py:4118
+#: part/models.py:4119
msgid "Duplicate relationship already exists"
msgstr ""
@@ -7515,12 +7510,12 @@ msgid "Test Results"
msgstr ""
#: report/templates/report/inventree_test_report_base.html:102
-#: stock/models.py:2242 templates/js/translated/stock.js:1419
+#: stock/models.py:2243 templates/js/translated/stock.js:1419
msgid "Test"
msgstr ""
#: report/templates/report/inventree_test_report_base.html:103
-#: stock/models.py:2248
+#: stock/models.py:2249
msgid "Result"
msgstr ""
@@ -7619,27 +7614,27 @@ msgstr ""
msgid "Expiry Date"
msgstr ""
-#: stock/api.py:419 templates/js/translated/table_filters.js:373
+#: stock/api.py:420 templates/js/translated/table_filters.js:373
msgid "External Location"
msgstr ""
-#: stock/api.py:581
+#: stock/api.py:582
msgid "Quantity is required"
msgstr ""
-#: stock/api.py:588
+#: stock/api.py:589
msgid "Valid part must be supplied"
msgstr ""
-#: stock/api.py:614
+#: stock/api.py:615
msgid "The given supplier part does not exist"
msgstr ""
-#: stock/api.py:623
+#: stock/api.py:624
msgid "The supplier part has a pack size defined, but flag use_pack_size not set"
msgstr ""
-#: stock/api.py:641
+#: stock/api.py:642
msgid "Serial numbers cannot be supplied for a non-trackable part"
msgstr ""
@@ -7798,104 +7793,104 @@ msgstr ""
msgid "Converted to part"
msgstr ""
-#: stock/models.py:1377
+#: stock/models.py:1378
msgid "Part is not set as trackable"
msgstr ""
-#: stock/models.py:1383
+#: stock/models.py:1384
msgid "Quantity must be integer"
msgstr ""
-#: stock/models.py:1389
+#: stock/models.py:1390
#, python-brace-format
msgid "Quantity must not exceed available stock quantity ({n})"
msgstr ""
-#: stock/models.py:1392
+#: stock/models.py:1393
msgid "Serial numbers must be a list of integers"
msgstr ""
-#: stock/models.py:1395
+#: stock/models.py:1396
msgid "Quantity does not match serial numbers"
msgstr ""
-#: stock/models.py:1402 stock/serializers.py:374
+#: stock/models.py:1403 stock/serializers.py:374
msgid "Serial numbers already exist"
msgstr ""
-#: stock/models.py:1473
+#: stock/models.py:1474
msgid "Stock item has been assigned to a sales order"
msgstr ""
-#: stock/models.py:1476
+#: stock/models.py:1477
msgid "Stock item is installed in another item"
msgstr ""
-#: stock/models.py:1479
+#: stock/models.py:1480
msgid "Stock item contains other items"
msgstr ""
-#: stock/models.py:1482
+#: stock/models.py:1483
msgid "Stock item has been assigned to a customer"
msgstr ""
-#: stock/models.py:1485
+#: stock/models.py:1486
msgid "Stock item is currently in production"
msgstr ""
-#: stock/models.py:1488
+#: stock/models.py:1489
msgid "Serialized stock cannot be merged"
msgstr ""
-#: stock/models.py:1495 stock/serializers.py:975
+#: stock/models.py:1496 stock/serializers.py:975
msgid "Duplicate stock items"
msgstr ""
-#: stock/models.py:1499
+#: stock/models.py:1500
msgid "Stock items must refer to the same part"
msgstr ""
-#: stock/models.py:1503
+#: stock/models.py:1504
msgid "Stock items must refer to the same supplier part"
msgstr ""
-#: stock/models.py:1507
+#: stock/models.py:1508
msgid "Stock status codes must match"
msgstr ""
-#: stock/models.py:1678
+#: stock/models.py:1679
msgid "StockItem cannot be moved as it is not in stock"
msgstr ""
-#: stock/models.py:2160
+#: stock/models.py:2161
msgid "Entry notes"
msgstr ""
-#: stock/models.py:2218
+#: stock/models.py:2219
msgid "Value must be provided for this test"
msgstr ""
-#: stock/models.py:2224
+#: stock/models.py:2225
msgid "Attachment must be uploaded for this test"
msgstr ""
-#: stock/models.py:2243
+#: stock/models.py:2244
msgid "Test name"
msgstr ""
-#: stock/models.py:2249
+#: stock/models.py:2250
msgid "Test result"
msgstr ""
-#: stock/models.py:2255
+#: stock/models.py:2256
msgid "Test output value"
msgstr ""
-#: stock/models.py:2262
+#: stock/models.py:2263
msgid "Test result attachment"
msgstr ""
-#: stock/models.py:2268
+#: stock/models.py:2269
msgid "Test notes"
msgstr ""
@@ -8670,29 +8665,29 @@ msgstr ""
msgid "Changing the settings below require you to immediately restart the server. Do not change this while under active usage."
msgstr ""
-#: templates/InvenTree/settings/plugin.html:37
+#: templates/InvenTree/settings/plugin.html:35
#: templates/InvenTree/settings/sidebar.html:64
msgid "Plugins"
msgstr ""
-#: templates/InvenTree/settings/plugin.html:43
+#: templates/InvenTree/settings/plugin.html:41
#: templates/js/translated/plugin.js:151
msgid "Install Plugin"
msgstr ""
-#: templates/InvenTree/settings/plugin.html:51
+#: templates/InvenTree/settings/plugin.html:49
msgid "External plugins are not enabled for this InvenTree installation"
msgstr ""
-#: templates/InvenTree/settings/plugin.html:70
+#: templates/InvenTree/settings/plugin.html:68
msgid "Plugin Error Stack"
msgstr ""
-#: templates/InvenTree/settings/plugin.html:79
+#: templates/InvenTree/settings/plugin.html:77
msgid "Stage"
msgstr ""
-#: templates/InvenTree/settings/plugin.html:81
+#: templates/InvenTree/settings/plugin.html:79
#: templates/js/translated/notification.js:75
msgid "Message"
msgstr ""
@@ -8765,14 +8760,6 @@ msgstr ""
msgid "Commit Message"
msgstr ""
-#: templates/InvenTree/settings/plugin_settings.html:126
-msgid "Sign Status"
-msgstr ""
-
-#: templates/InvenTree/settings/plugin_settings.html:131
-msgid "Sign Key"
-msgstr ""
-
#: templates/InvenTree/settings/po.html:7
msgid "Purchase Order Settings"
msgstr ""
@@ -9202,44 +9189,48 @@ msgstr ""
msgid "Update Available"
msgstr ""
-#: templates/about.html:42
+#: templates/about.html:43
+msgid "Commit Branch"
+msgstr ""
+
+#: templates/about.html:49
msgid "InvenTree Documentation"
msgstr ""
-#: templates/about.html:47
+#: templates/about.html:54
msgid "API Version"
msgstr ""
-#: templates/about.html:52
+#: templates/about.html:59
msgid "Python Version"
msgstr ""
-#: templates/about.html:57
+#: templates/about.html:64
msgid "Django Version"
msgstr ""
-#: templates/about.html:62
+#: templates/about.html:69
msgid "View Code on GitHub"
msgstr ""
-#: templates/about.html:67
+#: templates/about.html:74
msgid "Credits"
msgstr ""
-#: templates/about.html:72
+#: templates/about.html:79
msgid "Mobile App"
msgstr ""
-#: templates/about.html:77
+#: templates/about.html:84
msgid "Submit Bug Report"
msgstr ""
-#: templates/about.html:84 templates/clip.html:4
+#: templates/about.html:91 templates/clip.html:4
#: templates/js/translated/helpers.js:585
msgid "copy to clipboard"
msgstr ""
-#: templates/about.html:84
+#: templates/about.html:91
msgid "copy version information"
msgstr ""
@@ -11845,7 +11836,7 @@ msgstr ""
msgid "Add Stock"
msgstr ""
-#: templates/js/translated/stock.js:1005 users/models.py:243
+#: templates/js/translated/stock.js:1005 users/models.py:244
msgid "Add"
msgstr ""
@@ -12691,34 +12682,34 @@ msgstr ""
msgid "Important dates"
msgstr ""
-#: users/models.py:230
+#: users/models.py:231
msgid "Permission set"
msgstr ""
-#: users/models.py:238
+#: users/models.py:239
msgid "Group"
msgstr ""
-#: users/models.py:241
+#: users/models.py:242
msgid "View"
msgstr ""
-#: users/models.py:241
+#: users/models.py:242
msgid "Permission to view items"
msgstr ""
-#: users/models.py:243
+#: users/models.py:244
msgid "Permission to add items"
msgstr ""
-#: users/models.py:245
+#: users/models.py:246
msgid "Change"
msgstr ""
-#: users/models.py:245
+#: users/models.py:246
msgid "Permissions to edit items"
msgstr ""
-#: users/models.py:247
+#: users/models.py:248
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 0aed76a830..88d59bed39 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: 2023-06-09 00:32+0000\n"
-"PO-Revision-Date: 2023-06-09 10:27\n"
+"POT-Creation-Date: 2023-06-20 07:01+0000\n"
+"PO-Revision-Date: 2023-06-20 07:06\n"
"Last-Translator: \n"
"Language-Team: Russian\n"
"Language: ru_RU\n"
@@ -49,26 +49,26 @@ msgstr "Подробности об ошибке можно найти в пан
msgid "Enter date"
msgstr "Введите дату"
-#: InvenTree/fields.py:206 InvenTree/models.py:766 build/serializers.py:427
-#: build/serializers.py:506 build/templates/build/sidebar.html:23
-#: company/models.py:597 company/templates/company/sidebar.html:35
-#: order/models.py:1089 order/templates/order/po_sidebar.html:11
+#: InvenTree/fields.py:206 InvenTree/models.py:766 build/serializers.py:435
+#: build/serializers.py:514 build/templates/build/sidebar.html:21
+#: company/models.py:746 company/templates/company/sidebar.html:37
+#: order/models.py:1102 order/templates/order/po_sidebar.html:11
#: order/templates/order/return_order_sidebar.html:9
#: order/templates/order/so_sidebar.html:17 part/admin.py:41
-#: part/models.py:3005 part/templates/part/part_sidebar.html:63
+#: part/models.py:3039 part/templates/part/part_sidebar.html:63
#: report/templates/report/inventree_build_order_base.html:172
#: stock/admin.py:121 stock/models.py:2160 stock/models.py:2268
-#: stock/serializers.py:342 stock/serializers.py:475 stock/serializers.py:556
-#: stock/serializers.py:839 stock/serializers.py:938 stock/serializers.py:1070
-#: stock/templates/stock/stock_sidebar.html:25
-#: templates/js/translated/barcode.js:143 templates/js/translated/bom.js:1224
-#: templates/js/translated/company.js:1294 templates/js/translated/order.js:347
-#: templates/js/translated/part.js:1054
-#: templates/js/translated/purchase_order.js:2168
-#: templates/js/translated/return_order.js:760
-#: templates/js/translated/sales_order.js:1055
-#: templates/js/translated/sales_order.js:1959
-#: templates/js/translated/stock.js:1460 templates/js/translated/stock.js:2164
+#: stock/serializers.py:408 stock/serializers.py:542 stock/serializers.py:623
+#: stock/serializers.py:681 stock/serializers.py:956 stock/serializers.py:1055
+#: stock/serializers.py:1187 stock/templates/stock/stock_sidebar.html:25
+#: templates/js/translated/barcode.js:143 templates/js/translated/bom.js:1244
+#: templates/js/translated/company.js:1715 templates/js/translated/order.js:347
+#: templates/js/translated/part.js:1053
+#: templates/js/translated/purchase_order.js:2178
+#: templates/js/translated/return_order.js:772
+#: templates/js/translated/sales_order.js:1067
+#: templates/js/translated/sales_order.js:1971
+#: templates/js/translated/stock.js:1459 templates/js/translated/stock.js:2321
msgid "Notes"
msgstr "Заметки"
@@ -81,47 +81,51 @@ msgstr ""
msgid "Provided value does not match required pattern: "
msgstr "Предоставленное значение не соответствует требуемому формату: "
-#: InvenTree/forms.py:145
+#: InvenTree/forms.py:147
msgid "Enter password"
msgstr "Введите пароль"
-#: InvenTree/forms.py:146
+#: InvenTree/forms.py:148
msgid "Enter new password"
msgstr "Введите новый пароль"
-#: InvenTree/forms.py:155
+#: InvenTree/forms.py:157
msgid "Confirm password"
msgstr "Подтвердить пароль"
-#: InvenTree/forms.py:156
+#: InvenTree/forms.py:158
msgid "Confirm new password"
msgstr "Подтвердите новый пароль"
-#: InvenTree/forms.py:160
+#: InvenTree/forms.py:162
msgid "Old password"
msgstr "Старый пароль"
-#: InvenTree/forms.py:179
+#: InvenTree/forms.py:181
msgid "Email (again)"
msgstr "Email (еще раз)"
-#: InvenTree/forms.py:183
+#: InvenTree/forms.py:185
msgid "Email address confirmation"
msgstr "Подтверждение адреса электронной почты"
-#: InvenTree/forms.py:204
+#: InvenTree/forms.py:206
msgid "You must type the same email each time."
msgstr "Вы должны вводить один и тот же адрес электронной почты."
-#: InvenTree/forms.py:230 InvenTree/forms.py:236
+#: InvenTree/forms.py:237 InvenTree/forms.py:243
msgid "The provided primary email address is not valid."
msgstr "Указанный основной адрес электронной почты неверен."
-#: InvenTree/forms.py:242
+#: InvenTree/forms.py:249
msgid "The provided email domain is not approved."
msgstr "Указанный домен электронной почты не утверждён."
-#: InvenTree/helpers.py:462 order/models.py:442 order/models.py:611
+#: InvenTree/forms.py:345
+msgid "Registration is disabled."
+msgstr ""
+
+#: InvenTree/helpers.py:462 order/models.py:455 order/models.py:624
msgid "Invalid quantity provided"
msgstr "недопустимое количество"
@@ -239,7 +243,7 @@ msgstr "Отсутствует внешняя ссылка"
#: InvenTree/models.py:486 stock/models.py:2262
#: templates/js/translated/attachment.js:119
-#: templates/js/translated/attachment.js:306
+#: templates/js/translated/attachment.js:316
msgid "Attachment"
msgstr "Вложения"
@@ -247,29 +251,30 @@ msgstr "Вложения"
msgid "Select file to attach"
msgstr "Выберите файл для вложения"
-#: InvenTree/models.py:493 common/models.py:2695 company/models.py:132
-#: company/models.py:306 company/models.py:584 order/models.py:236
-#: order/models.py:1093 order/models.py:1453 part/admin.py:39
-#: part/models.py:901 part/templates/part/part_scheduling.html:11
+#: InvenTree/models.py:493 common/models.py:2681 company/models.py:128
+#: company/models.py:381 company/models.py:455 company/models.py:733
+#: order/models.py:240 order/models.py:1106 order/models.py:1466
+#: part/admin.py:39 part/models.py:902
+#: part/templates/part/part_scheduling.html:11
#: report/templates/report/inventree_build_order_base.html:164
-#: stock/admin.py:120 templates/js/translated/company.js:977
-#: templates/js/translated/company.js:1283 templates/js/translated/order.js:351
-#: templates/js/translated/part.js:2316
-#: templates/js/translated/purchase_order.js:2008
-#: templates/js/translated/purchase_order.js:2172
-#: templates/js/translated/return_order.js:764
-#: templates/js/translated/sales_order.js:1044
-#: templates/js/translated/sales_order.js:1964
+#: stock/admin.py:120 templates/js/translated/company.js:1350
+#: templates/js/translated/company.js:1704 templates/js/translated/order.js:351
+#: templates/js/translated/part.js:2392
+#: templates/js/translated/purchase_order.js:2018
+#: templates/js/translated/purchase_order.js:2182
+#: templates/js/translated/return_order.js:776
+#: templates/js/translated/sales_order.js:1056
+#: templates/js/translated/sales_order.js:1976
msgid "Link"
msgstr "Ссылка"
-#: InvenTree/models.py:494 build/models.py:291 part/models.py:902
+#: InvenTree/models.py:494 build/models.py:295 part/models.py:903
#: stock/models.py:735
msgid "Link to external URL"
msgstr "Ссылка на внешний URL"
#: InvenTree/models.py:497 templates/js/translated/attachment.js:120
-#: templates/js/translated/attachment.js:321
+#: templates/js/translated/attachment.js:331
msgid "Comment"
msgstr "Комментарий"
@@ -277,13 +282,13 @@ msgstr "Комментарий"
msgid "File comment"
msgstr "Комментарий к файлу"
-#: InvenTree/models.py:503 InvenTree/models.py:504 common/models.py:2154
-#: common/models.py:2155 common/models.py:2368 common/models.py:2369
-#: common/models.py:2625 common/models.py:2626 part/models.py:3013
-#: part/models.py:3101 part/models.py:3180 part/models.py:3200
-#: plugin/models.py:217 plugin/models.py:218
+#: InvenTree/models.py:503 InvenTree/models.py:504 common/models.py:2140
+#: common/models.py:2141 common/models.py:2354 common/models.py:2355
+#: common/models.py:2611 common/models.py:2612 part/models.py:3047
+#: part/models.py:3135 part/models.py:3214 part/models.py:3234
+#: plugin/models.py:218 plugin/models.py:219
#: report/templates/report/inventree_test_report_base.html:105
-#: templates/js/translated/stock.js:2773
+#: templates/js/translated/stock.js:2904
msgid "User"
msgstr "Пользователь"
@@ -324,53 +329,54 @@ msgstr ""
msgid "Invalid choice"
msgstr "Неверный выбор"
-#: InvenTree/models.py:648 InvenTree/models.py:649 common/models.py:2354
-#: company/models.py:390 label/models.py:103 part/models.py:847
-#: part/models.py:3400 plugin/models.py:41 report/models.py:160
+#: InvenTree/models.py:648 InvenTree/models.py:649 common/models.py:2340
+#: company/models.py:539 label/models.py:111 part/models.py:848
+#: part/models.py:3434 plugin/models.py:42 report/models.py:160
#: templates/InvenTree/settings/mixins/urls.html:13
#: templates/InvenTree/settings/notifications.html:17
-#: templates/InvenTree/settings/plugin.html:80
+#: templates/InvenTree/settings/plugin.html:74
#: templates/InvenTree/settings/plugin_settings.html:22
-#: templates/js/translated/company.js:658
-#: templates/js/translated/company.js:706
-#: templates/js/translated/company.js:871
-#: templates/js/translated/company.js:1071 templates/js/translated/part.js:1160
-#: templates/js/translated/part.js:1447 templates/js/translated/part.js:1583
-#: templates/js/translated/part.js:2699 templates/js/translated/stock.js:2464
+#: templates/js/translated/company.js:665
+#: templates/js/translated/company.js:713
+#: templates/js/translated/company.js:940
+#: templates/js/translated/company.js:1196
+#: templates/js/translated/company.js:1444 templates/js/translated/part.js:1159
+#: templates/js/translated/part.js:1446 templates/js/translated/part.js:1582
+#: templates/js/translated/part.js:2684 templates/js/translated/stock.js:2595
msgid "Name"
msgstr "Название"
-#: InvenTree/models.py:655 build/models.py:164
+#: InvenTree/models.py:655 build/models.py:168
#: build/templates/build/detail.html:24 common/models.py:111
-#: company/models.py:312 company/models.py:590
+#: company/models.py:461 company/models.py:739
#: company/templates/company/company_base.html:72
#: company/templates/company/manufacturer_part.html:75
-#: company/templates/company/supplier_part.html:108 label/models.py:110
-#: order/models.py:232 order/models.py:1117 part/admin.py:194 part/admin.py:276
-#: part/models.py:869 part/models.py:3416 part/templates/part/category.html:81
+#: company/templates/company/supplier_part.html:108 label/models.py:118
+#: order/models.py:232 order/models.py:1130 part/admin.py:194 part/admin.py:276
+#: part/models.py:870 part/models.py:3450 part/templates/part/category.html:81
#: part/templates/part/part_base.html:172
#: part/templates/part/part_scheduling.html:12 report/models.py:173
-#: report/models.py:587 report/models.py:631
+#: report/models.py:589 report/models.py:633
#: report/templates/report/inventree_build_order_base.html:117
#: stock/admin.py:41 stock/templates/stock/location.html:123
#: templates/InvenTree/settings/notifications.html:19
#: templates/InvenTree/settings/plugin_settings.html:27
#: templates/InvenTree/settings/settings_staff_js.html:75
-#: templates/js/translated/bom.js:632 templates/js/translated/bom.js:933
-#: templates/js/translated/build.js:2857 templates/js/translated/company.js:510
-#: templates/js/translated/company.js:988
-#: templates/js/translated/company.js:1251 templates/js/translated/order.js:298
-#: templates/js/translated/part.js:1212 templates/js/translated/part.js:1456
-#: templates/js/translated/part.js:1594 templates/js/translated/part.js:1933
-#: templates/js/translated/part.js:2247 templates/js/translated/part.js:2735
-#: templates/js/translated/part.js:2826
-#: templates/js/translated/purchase_order.js:1666
-#: templates/js/translated/purchase_order.js:1812
-#: templates/js/translated/purchase_order.js:1990
-#: templates/js/translated/return_order.js:302
-#: templates/js/translated/sales_order.js:790
-#: templates/js/translated/stock.js:1439 templates/js/translated/stock.js:1817
-#: templates/js/translated/stock.js:2496 templates/js/translated/stock.js:2568
+#: templates/js/translated/bom.js:633 templates/js/translated/bom.js:951
+#: templates/js/translated/build.js:2062 templates/js/translated/company.js:517
+#: templates/js/translated/company.js:1361
+#: templates/js/translated/company.js:1672 templates/js/translated/index.js:114
+#: templates/js/translated/order.js:298 templates/js/translated/part.js:1211
+#: templates/js/translated/part.js:1455 templates/js/translated/part.js:1593
+#: templates/js/translated/part.js:1932 templates/js/translated/part.js:2323
+#: templates/js/translated/part.js:2720 templates/js/translated/part.js:2811
+#: templates/js/translated/purchase_order.js:1681
+#: templates/js/translated/purchase_order.js:1827
+#: templates/js/translated/purchase_order.js:2000
+#: templates/js/translated/return_order.js:314
+#: templates/js/translated/sales_order.js:802
+#: templates/js/translated/stock.js:1438 templates/js/translated/stock.js:1974
+#: templates/js/translated/stock.js:2627 templates/js/translated/stock.js:2699
msgid "Description"
msgstr "Описание"
@@ -383,7 +389,7 @@ msgid "parent"
msgstr "родитель"
#: InvenTree/models.py:671 InvenTree/models.py:672
-#: templates/js/translated/part.js:2744 templates/js/translated/stock.js:2505
+#: templates/js/translated/part.js:2729 templates/js/translated/stock.js:2636
msgid "Path"
msgstr "Путь"
@@ -419,12 +425,12 @@ msgstr ""
msgid "An error has been logged by the server."
msgstr ""
-#: InvenTree/serializers.py:60 part/models.py:3897
+#: InvenTree/serializers.py:60 part/models.py:3941
msgid "Must be a valid number"
msgstr "Должно быть действительным номером"
-#: InvenTree/serializers.py:90 company/models.py:154
-#: company/templates/company/company_base.html:107 part/models.py:2852
+#: InvenTree/serializers.py:90 company/models.py:150
+#: company/templates/company/company_base.html:107 part/models.py:2886
#: templates/InvenTree/settings/settings_staff_js.html:44
#: templates/currency_data.html:5
msgid "Currency"
@@ -497,130 +503,130 @@ msgstr ""
msgid "Downloading images from remote URL is not enabled"
msgstr ""
-#: InvenTree/settings.py:714
+#: InvenTree/settings.py:741
msgid "Czech"
msgstr "Чешский"
-#: InvenTree/settings.py:715
+#: InvenTree/settings.py:742
msgid "Danish"
msgstr "Датский"
-#: InvenTree/settings.py:716
+#: InvenTree/settings.py:743
msgid "German"
msgstr "Немецкий"
-#: InvenTree/settings.py:717
+#: InvenTree/settings.py:744
msgid "Greek"
msgstr "Греческий"
-#: InvenTree/settings.py:718
+#: InvenTree/settings.py:745
msgid "English"
msgstr "Английский"
-#: InvenTree/settings.py:719
+#: InvenTree/settings.py:746
msgid "Spanish"
msgstr "Испанский"
-#: InvenTree/settings.py:720
+#: InvenTree/settings.py:747
msgid "Spanish (Mexican)"
msgstr "Испанский (Мексика)"
-#: InvenTree/settings.py:721
+#: InvenTree/settings.py:748
msgid "Farsi / Persian"
msgstr "Фарси / Персидский"
-#: InvenTree/settings.py:722
+#: InvenTree/settings.py:749
msgid "Finnish"
msgstr ""
-#: InvenTree/settings.py:723
+#: InvenTree/settings.py:750
msgid "French"
msgstr "Французский"
-#: InvenTree/settings.py:724
+#: InvenTree/settings.py:751
msgid "Hebrew"
msgstr "Иврит"
-#: InvenTree/settings.py:725
+#: InvenTree/settings.py:752
msgid "Hungarian"
msgstr "Венгерский"
-#: InvenTree/settings.py:726
+#: InvenTree/settings.py:753
msgid "Italian"
msgstr "Итальянский"
-#: InvenTree/settings.py:727
+#: InvenTree/settings.py:754
msgid "Japanese"
msgstr "Японский"
-#: InvenTree/settings.py:728
+#: InvenTree/settings.py:755
msgid "Korean"
msgstr "Корейский"
-#: InvenTree/settings.py:729
+#: InvenTree/settings.py:756
msgid "Dutch"
msgstr "Голландский"
-#: InvenTree/settings.py:730
+#: InvenTree/settings.py:757
msgid "Norwegian"
msgstr "Норвежский"
-#: InvenTree/settings.py:731
+#: InvenTree/settings.py:758
msgid "Polish"
msgstr "Польский"
-#: InvenTree/settings.py:732
+#: InvenTree/settings.py:759
msgid "Portuguese"
msgstr "Португальский"
-#: InvenTree/settings.py:733
+#: InvenTree/settings.py:760
msgid "Portuguese (Brazilian)"
msgstr "Португальский (Бразильский диалект)"
-#: InvenTree/settings.py:734
+#: InvenTree/settings.py:761
msgid "Russian"
msgstr "Русский"
-#: InvenTree/settings.py:735
+#: InvenTree/settings.py:762
msgid "Slovenian"
msgstr "Словенский"
-#: InvenTree/settings.py:736
+#: InvenTree/settings.py:763
msgid "Swedish"
msgstr "Шведский"
-#: InvenTree/settings.py:737
+#: InvenTree/settings.py:764
msgid "Thai"
msgstr "Тайский"
-#: InvenTree/settings.py:738
+#: InvenTree/settings.py:765
msgid "Turkish"
msgstr "Турецкий"
-#: InvenTree/settings.py:739
+#: InvenTree/settings.py:766
msgid "Vietnamese"
msgstr "Вьетнамский"
-#: InvenTree/settings.py:740
+#: InvenTree/settings.py:767
msgid "Chinese"
msgstr "Китайский"
-#: InvenTree/status.py:61 part/serializers.py:878
+#: InvenTree/status.py:68 part/serializers.py:940
msgid "Background worker check failed"
msgstr "Проверка фонового работника не удалась"
-#: InvenTree/status.py:65
+#: InvenTree/status.py:72
msgid "Email backend not configured"
msgstr "Сервер электронной почты не настроен"
-#: InvenTree/status.py:68
+#: InvenTree/status.py:75
msgid "InvenTree system health checks failed"
msgstr "Ошибка проверки состояния системы InvenTree"
#: InvenTree/status_codes.py:12 InvenTree/status_codes.py:40
#: InvenTree/status_codes.py:148 InvenTree/status_codes.py:167
#: InvenTree/status_codes.py:188 generic/states/tests.py:16
-#: templates/js/translated/table_filters.js:511
+#: templates/js/translated/table_filters.js:533
msgid "Pending"
msgstr "Ожидаемый"
@@ -630,7 +636,7 @@ msgstr "Размещены"
#: InvenTree/status_codes.py:14 InvenTree/status_codes.py:151
#: InvenTree/status_codes.py:172 generic/states/tests.py:18
-#: order/templates/order/order_base.html:162
+#: order/templates/order/order_base.html:158
#: order/templates/order/sales_order_base.html:162
msgid "Complete"
msgstr "Готово"
@@ -654,10 +660,10 @@ msgstr "Возвращено"
msgid "In Progress"
msgstr ""
-#: InvenTree/status_codes.py:42 order/models.py:1332
-#: templates/js/translated/sales_order.js:1509
-#: templates/js/translated/sales_order.js:1630
-#: templates/js/translated/sales_order.js:1934
+#: InvenTree/status_codes.py:42 order/models.py:1345
+#: templates/js/translated/sales_order.js:1521
+#: templates/js/translated/sales_order.js:1642
+#: templates/js/translated/sales_order.js:1946
msgid "Shipped"
msgstr "Доставлено"
@@ -689,7 +695,7 @@ msgstr ""
msgid "Legacy stock tracking entry"
msgstr "Отслеживание устаревших запасов"
-#: InvenTree/status_codes.py:93 templates/js/translated/stock.js:511
+#: InvenTree/status_codes.py:93 templates/js/translated/stock.js:510
msgid "Stock item created"
msgstr "Товар создан"
@@ -745,7 +751,7 @@ msgstr "Отделить от родительского элемента"
msgid "Split child item"
msgstr "Разбить дочерний элемент"
-#: InvenTree/status_codes.py:120 templates/js/translated/stock.js:2243
+#: InvenTree/status_codes.py:120 templates/js/translated/stock.js:1769
msgid "Merged stock items"
msgstr "Объединенные позиции на складе"
@@ -765,7 +771,7 @@ msgstr "Вывод заказа сборки завершён"
msgid "Build order output rejected"
msgstr ""
-#: InvenTree/status_codes.py:129 templates/js/translated/stock.js:1676
+#: InvenTree/status_codes.py:129 templates/js/translated/stock.js:1675
msgid "Consumed by build order"
msgstr ""
@@ -781,7 +787,7 @@ msgstr ""
msgid "Returned against Return Order"
msgstr ""
-#: InvenTree/status_codes.py:141 templates/js/translated/table_filters.js:321
+#: InvenTree/status_codes.py:141 templates/js/translated/table_filters.js:327
msgid "Sent to customer"
msgstr "Отправлено клиенту"
@@ -849,83 +855,111 @@ msgstr "Пароли должны совпадать"
msgid "Wrong password provided"
msgstr ""
-#: InvenTree/views.py:651 templates/navbar.html:157
+#: InvenTree/views.py:653 templates/navbar.html:157
msgid "System Information"
msgstr "Информация о системе"
-#: InvenTree/views.py:658 templates/navbar.html:168
+#: InvenTree/views.py:660 templates/navbar.html:168
msgid "About InvenTree"
msgstr ""
-#: build/api.py:222
+#: build/api.py:242
msgid "Build must be cancelled before it can be deleted"
msgstr ""
-#: build/models.py:69 build/templates/build/build_base.html:9
+#: build/api.py:286 part/models.py:3833 templates/js/translated/bom.js:985
+#: templates/js/translated/bom.js:1025 templates/js/translated/build.js:2449
+#: templates/js/translated/table_filters.js:166
+#: templates/js/translated/table_filters.js:518
+msgid "Consumable"
+msgstr ""
+
+#: build/api.py:287 part/models.py:3827 part/templates/part/upload_bom.html:58
+#: templates/js/translated/bom.js:989 templates/js/translated/bom.js:1016
+#: templates/js/translated/build.js:2458
+#: templates/js/translated/table_filters.js:162
+#: templates/js/translated/table_filters.js:191
+#: templates/js/translated/table_filters.js:522
+msgid "Optional"
+msgstr ""
+
+#: build/api.py:288 templates/js/translated/table_filters.js:360
+#: templates/js/translated/table_filters.js:514
+msgid "Tracked"
+msgstr ""
+
+#: build/api.py:290 part/admin.py:64 templates/js/translated/build.js:1670
+#: templates/js/translated/build.js:2549
+#: templates/js/translated/sales_order.js:1918
+#: templates/js/translated/table_filters.js:506
+msgid "Allocated"
+msgstr ""
+
+#: build/models.py:73 build/templates/build/build_base.html:9
#: build/templates/build/build_base.html:27
#: report/templates/report/inventree_build_order_base.html:105
#: templates/email/build_order_completed.html:16
#: templates/email/overdue_build_order.html:15
-#: templates/js/translated/build.js:945 templates/js/translated/stock.js:2629
+#: templates/js/translated/build.js:953 templates/js/translated/stock.js:2760
msgid "Build Order"
msgstr "Порядок сборки"
-#: build/models.py:70 build/templates/build/build_base.html:13
+#: build/models.py:74 build/templates/build/build_base.html:13
#: build/templates/build/index.html:8 build/templates/build/index.html:12
-#: order/templates/order/sales_order_detail.html:119
+#: order/templates/order/sales_order_detail.html:111
#: order/templates/order/so_sidebar.html:13
-#: part/templates/part/part_sidebar.html:22 templates/InvenTree/index.html:244
+#: part/templates/part/part_sidebar.html:22 templates/InvenTree/index.html:196
#: templates/InvenTree/search.html:141
#: templates/InvenTree/settings/sidebar.html:53
-#: templates/js/translated/search.js:228 users/models.py:42
+#: templates/js/translated/search.js:186 users/models.py:42
msgid "Build Orders"
msgstr "Порядок сборки"
-#: build/models.py:111
+#: build/models.py:115
msgid "Invalid choice for parent build"
msgstr "Неверный выбор для родительской сборки"
-#: build/models.py:155
+#: build/models.py:159
msgid "Build Order Reference"
msgstr "Ссылка на заказ"
-#: build/models.py:156 order/models.py:359 order/models.py:765
-#: order/models.py:1087 order/models.py:1724 part/admin.py:278
-#: part/models.py:3798 part/templates/part/upload_bom.html:54
+#: build/models.py:160 order/models.py:372 order/models.py:778
+#: order/models.py:1100 order/models.py:1737 part/admin.py:278
+#: part/models.py:3842 part/templates/part/upload_bom.html:54
#: report/templates/report/inventree_bill_of_materials_report.html:139
#: report/templates/report/inventree_po_report_base.html:28
#: report/templates/report/inventree_return_order_report_base.html:26
#: report/templates/report/inventree_so_report_base.html:28
-#: templates/js/translated/bom.js:769 templates/js/translated/bom.js:943
-#: templates/js/translated/build.js:2098 templates/js/translated/order.js:291
+#: templates/js/translated/bom.js:770 templates/js/translated/bom.js:961
+#: templates/js/translated/build.js:2441 templates/js/translated/order.js:291
#: templates/js/translated/pricing.js:386
-#: templates/js/translated/purchase_order.js:2033
-#: templates/js/translated/return_order.js:713
-#: templates/js/translated/sales_order.js:1798
+#: templates/js/translated/purchase_order.js:2043
+#: templates/js/translated/return_order.js:725
+#: templates/js/translated/sales_order.js:1810
msgid "Reference"
msgstr "Отсылка"
-#: build/models.py:167
+#: build/models.py:171
msgid "Brief description of the build (optional)"
msgstr ""
-#: build/models.py:175 build/templates/build/build_base.html:183
+#: build/models.py:179 build/templates/build/build_base.html:184
#: build/templates/build/detail.html:87
msgid "Parent Build"
msgstr "Родительская сборка"
-#: build/models.py:176
+#: build/models.py:180
msgid "BuildOrder to which this build is allocated"
msgstr ""
-#: build/models.py:181 build/templates/build/build_base.html:98
-#: build/templates/build/detail.html:29 company/models.py:775
-#: order/models.py:1195 order/models.py:1311 order/models.py:1312
-#: part/models.py:391 part/models.py:2865 part/models.py:2979
-#: part/models.py:3119 part/models.py:3138 part/models.py:3157
-#: part/models.py:3178 part/models.py:3270 part/models.py:3555
-#: part/models.py:3663 part/models.py:3763 part/models.py:4077
-#: part/serializers.py:842 part/serializers.py:1245
+#: build/models.py:185 build/templates/build/build_base.html:98
+#: build/templates/build/detail.html:29 company/models.py:924
+#: order/models.py:1208 order/models.py:1324 order/models.py:1325
+#: part/models.py:392 part/models.py:2899 part/models.py:3013
+#: part/models.py:3153 part/models.py:3172 part/models.py:3191
+#: part/models.py:3212 part/models.py:3304 part/models.py:3589
+#: part/models.py:3712 part/models.py:3807 part/models.py:4121
+#: part/serializers.py:904 part/serializers.py:1307
#: part/templates/part/part_app_base.html:8
#: part/templates/part/part_pricing.html:12
#: part/templates/part/upload_bom.html:52
@@ -935,266 +969,229 @@ msgstr ""
#: report/templates/report/inventree_po_report_base.html:27
#: report/templates/report/inventree_return_order_report_base.html:24
#: report/templates/report/inventree_so_report_base.html:27
-#: stock/serializers.py:156 stock/serializers.py:509
+#: stock/serializers.py:205 stock/serializers.py:576
#: templates/InvenTree/search.html:82
#: templates/email/build_order_completed.html:17
#: templates/email/build_order_required_stock.html:17
#: templates/email/low_stock_notification.html:15
#: templates/email/overdue_build_order.html:16
-#: templates/js/translated/barcode.js:529 templates/js/translated/bom.js:631
-#: templates/js/translated/bom.js:768 templates/js/translated/bom.js:887
-#: templates/js/translated/build.js:1403 templates/js/translated/build.js:1965
-#: templates/js/translated/build.js:2464 templates/js/translated/build.js:2868
-#: templates/js/translated/company.js:337
-#: templates/js/translated/company.js:822
-#: templates/js/translated/company.js:929
-#: templates/js/translated/company.js:1169 templates/js/translated/part.js:1918
-#: templates/js/translated/part.js:1990 templates/js/translated/part.js:2216
-#: templates/js/translated/pricing.js:369
-#: templates/js/translated/purchase_order.js:746
-#: templates/js/translated/purchase_order.js:1274
-#: templates/js/translated/purchase_order.js:1811
-#: templates/js/translated/purchase_order.js:1975
-#: templates/js/translated/return_order.js:527
-#: templates/js/translated/return_order.js:694
-#: templates/js/translated/sales_order.js:285
-#: templates/js/translated/sales_order.js:1185
-#: templates/js/translated/sales_order.js:1584
-#: templates/js/translated/sales_order.js:1782
-#: templates/js/translated/stock.js:643 templates/js/translated/stock.js:809
-#: templates/js/translated/stock.js:1021 templates/js/translated/stock.js:1773
-#: templates/js/translated/stock.js:2594 templates/js/translated/stock.js:2831
-#: templates/js/translated/stock.js:2968
+#: templates/js/translated/barcode.js:529 templates/js/translated/bom.js:632
+#: templates/js/translated/bom.js:769 templates/js/translated/bom.js:905
+#: templates/js/translated/build.js:1289 templates/js/translated/build.js:1669
+#: templates/js/translated/build.js:2085 templates/js/translated/build.js:2261
+#: templates/js/translated/company.js:347
+#: templates/js/translated/company.js:1147
+#: templates/js/translated/company.js:1302
+#: templates/js/translated/company.js:1590 templates/js/translated/index.js:104
+#: templates/js/translated/part.js:1917 templates/js/translated/part.js:1989
+#: templates/js/translated/part.js:2292 templates/js/translated/pricing.js:369
+#: templates/js/translated/purchase_order.js:757
+#: templates/js/translated/purchase_order.js:1289
+#: templates/js/translated/purchase_order.js:1826
+#: templates/js/translated/purchase_order.js:1985
+#: templates/js/translated/return_order.js:539
+#: templates/js/translated/return_order.js:706
+#: templates/js/translated/sales_order.js:297
+#: templates/js/translated/sales_order.js:1197
+#: templates/js/translated/sales_order.js:1596
+#: templates/js/translated/sales_order.js:1794
+#: templates/js/translated/stock.js:642 templates/js/translated/stock.js:808
+#: templates/js/translated/stock.js:1020 templates/js/translated/stock.js:1913
+#: templates/js/translated/stock.js:2725 templates/js/translated/stock.js:2958
+#: templates/js/translated/stock.js:3095
msgid "Part"
msgstr "Детали"
-#: build/models.py:189
+#: build/models.py:193
msgid "Select part to build"
msgstr "Выберите часть для сборки"
-#: build/models.py:194
+#: build/models.py:198
msgid "Sales Order Reference"
msgstr "Отсылка на заказ"
-#: build/models.py:198
+#: build/models.py:202
msgid "SalesOrder to which this build is allocated"
msgstr ""
-#: build/models.py:203 build/serializers.py:942
-#: templates/js/translated/build.js:2452
-#: templates/js/translated/sales_order.js:1173
+#: build/models.py:207 build/serializers.py:946
+#: templates/js/translated/build.js:1657
+#: templates/js/translated/sales_order.js:1185
msgid "Source Location"
msgstr "Расположение источника"
-#: build/models.py:207
+#: build/models.py:211
msgid "Select location to take stock from for this build (leave blank to take from any stock location)"
msgstr ""
-#: build/models.py:212
+#: build/models.py:216
msgid "Destination Location"
msgstr "Место назначения"
-#: build/models.py:216
+#: build/models.py:220
msgid "Select location where the completed items will be stored"
msgstr "Выберите место хранения завершенных элементов"
-#: build/models.py:220
+#: build/models.py:224
msgid "Build Quantity"
msgstr "Количество сборки"
-#: build/models.py:223
+#: build/models.py:227
msgid "Number of stock items to build"
msgstr "Количество складских предметов для сборки"
-#: build/models.py:227
+#: build/models.py:231
msgid "Completed items"
msgstr "Завершенные предметы"
-#: build/models.py:229
+#: build/models.py:233
msgid "Number of stock items which have been completed"
msgstr "Количество предметов на складе, которые были завершены"
-#: build/models.py:233
+#: build/models.py:237
msgid "Build Status"
msgstr "Статус сборки"
-#: build/models.py:237
+#: build/models.py:241
msgid "Build status code"
msgstr "Код статуса сборки"
-#: build/models.py:246 build/serializers.py:269 order/serializers.py:506
-#: stock/models.py:739 templates/js/translated/purchase_order.js:1099
+#: build/models.py:250 build/serializers.py:277 order/serializers.py:512
+#: stock/models.py:739 templates/js/translated/purchase_order.js:1114
msgid "Batch Code"
msgstr "Код партии"
-#: build/models.py:250 build/serializers.py:270
+#: build/models.py:254 build/serializers.py:278
msgid "Batch code for this build output"
msgstr "Код партии для этого вывода сборки"
-#: build/models.py:253 order/models.py:244 part/models.py:1038
+#: build/models.py:257 order/models.py:248 part/models.py:1039
#: part/templates/part/part_base.html:312
-#: templates/js/translated/return_order.js:327
-#: templates/js/translated/sales_order.js:815
+#: templates/js/translated/return_order.js:339
+#: templates/js/translated/sales_order.js:827
msgid "Creation Date"
msgstr "Дата создания"
-#: build/models.py:257
+#: build/models.py:261
msgid "Target completion date"
msgstr "Целевая дата завершения"
-#: build/models.py:258
+#: build/models.py:262
msgid "Target date for build completion. Build will be overdue after this date."
msgstr "Целевая дата для сборки. Сборка будет просрочена после этой даты."
-#: build/models.py:261 order/models.py:409 order/models.py:1767
-#: templates/js/translated/build.js:2953
+#: build/models.py:265 order/models.py:422 order/models.py:1780
+#: templates/js/translated/build.js:2170
msgid "Completion Date"
msgstr "Дата завершения"
-#: build/models.py:267
+#: build/models.py:271
msgid "completed by"
msgstr "выполнено"
-#: build/models.py:275 templates/js/translated/build.js:2913
+#: build/models.py:279 templates/js/translated/build.js:2130
msgid "Issued by"
msgstr "Выдал/ла"
-#: build/models.py:276
+#: build/models.py:280
msgid "User who issued this build order"
msgstr "Пользователь, выпустивший этот заказ на сборку"
-#: build/models.py:284 build/templates/build/build_base.html:204
-#: build/templates/build/detail.html:122 order/models.py:258
-#: order/templates/order/order_base.html:214
-#: order/templates/order/return_order_base.html:182
-#: order/templates/order/sales_order_base.html:222 part/models.py:1042
+#: build/models.py:288 build/templates/build/build_base.html:205
+#: build/templates/build/detail.html:122 order/models.py:262
+#: order/templates/order/order_base.html:217
+#: order/templates/order/return_order_base.html:189
+#: order/templates/order/sales_order_base.html:229 part/models.py:1043
#: part/templates/part/part_base.html:392
#: report/templates/report/inventree_build_order_base.html:158
-#: templates/js/translated/build.js:2925
-#: templates/js/translated/purchase_order.js:1723
-#: templates/js/translated/return_order.js:347
-#: templates/js/translated/table_filters.js:461
+#: templates/js/translated/build.js:2142
+#: templates/js/translated/purchase_order.js:1738
+#: templates/js/translated/return_order.js:359
+#: templates/js/translated/table_filters.js:467
msgid "Responsible"
msgstr "Ответственный"
-#: build/models.py:285
+#: build/models.py:289
msgid "User or group responsible for this build order"
msgstr ""
-#: build/models.py:290 build/templates/build/detail.html:108
+#: build/models.py:294 build/templates/build/detail.html:108
#: company/templates/company/manufacturer_part.html:107
#: company/templates/company/supplier_part.html:195
-#: order/templates/order/order_base.html:171
+#: order/templates/order/order_base.html:167
#: order/templates/order/return_order_base.html:146
#: order/templates/order/sales_order_base.html:181
#: part/templates/part/part_base.html:385 stock/models.py:733
#: stock/templates/stock/item_base.html:201
+#: templates/js/translated/company.js:1050
msgid "External Link"
msgstr "Внешняя ссылка"
-#: build/models.py:295
+#: build/models.py:299
msgid "Build Priority"
msgstr ""
-#: build/models.py:298
+#: build/models.py:302
msgid "Priority of this build order"
msgstr ""
-#: build/models.py:536
+#: build/models.py:309 common/models.py:104 order/admin.py:17
+#: order/models.py:237 templates/InvenTree/settings/settings_staff_js.html:70
+#: templates/js/translated/build.js:2067
+#: templates/js/translated/purchase_order.js:1685
+#: templates/js/translated/return_order.js:318
+#: templates/js/translated/sales_order.js:806
+#: templates/js/translated/table_filters.js:24
+#: templates/project_code_data.html:6
+msgid "Project Code"
+msgstr ""
+
+#: build/models.py:310
+msgid "Project code for this build order"
+msgstr ""
+
+#: build/models.py:545
#, python-brace-format
msgid "Build order {build} has been completed"
msgstr ""
-#: build/models.py:542
+#: build/models.py:551
msgid "A build order has been completed"
msgstr ""
-#: build/models.py:744 build/models.py:811
+#: build/models.py:753 build/models.py:831
msgid "No build output specified"
msgstr "Вывод сборки не указан"
-#: build/models.py:747
+#: build/models.py:756
msgid "Build output is already completed"
msgstr "Вывод сборки уже завершен"
-#: build/models.py:750
+#: build/models.py:759
msgid "Build output does not match Build Order"
msgstr "Вывод сборки не совпадает с порядком сборки"
-#: build/models.py:815 build/serializers.py:212 build/serializers.py:251
-#: build/serializers.py:811 order/models.py:440 order/serializers.py:379
-#: order/serializers.py:501 part/serializers.py:1087 part/serializers.py:1408
-#: stock/models.py:593 stock/models.py:1387 stock/serializers.py:315
+#: build/models.py:835 build/serializers.py:220 build/serializers.py:259
+#: build/serializers.py:819 order/models.py:453 order/serializers.py:385
+#: order/serializers.py:507 part/serializers.py:1149 part/serializers.py:1470
+#: stock/models.py:593 stock/models.py:1387 stock/serializers.py:381
msgid "Quantity must be greater than zero"
msgstr "Количество должно быть больше нуля"
-#: build/models.py:820 build/serializers.py:217
+#: build/models.py:840 build/serializers.py:225
msgid "Quantity cannot be greater than the output quantity"
msgstr ""
-#: build/models.py:1272
-msgid "Build item must specify a build output, as master part is marked as trackable"
-msgstr "Элемент сборки должен указать вывод сборки, так как основная часть помечена как отслеживаемая"
-
-#: build/models.py:1281
-#, python-brace-format
-msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})"
+#: build/models.py:1260
+msgid "Build object"
msgstr ""
-#: build/models.py:1291 order/models.py:1601
-msgid "Stock item is over-allocated"
-msgstr "Предмет на складе перераспределен"
-
-#: build/models.py:1297 order/models.py:1604
-msgid "Allocation quantity must be greater than zero"
-msgstr "Выделенное количество должно быть больше нуля"
-
-#: build/models.py:1303
-msgid "Quantity must be 1 for serialized stock"
-msgstr "Количество должно быть 1 для сериализованных запасов"
-
-#: build/models.py:1360
-msgid "Selected stock item not found in BOM"
-msgstr "Выбранная единица хранения не найдена в BOM"
-
-#: build/models.py:1438 stock/templates/stock/item_base.html:170
-#: templates/InvenTree/search.html:139 templates/js/translated/build.js:2841
-#: templates/navbar.html:38
-msgid "Build"
-msgstr "Сборка"
-
-#: build/models.py:1439
-msgid "Build to allocate parts"
-msgstr ""
-
-#: build/models.py:1455 build/serializers.py:791 order/serializers.py:1059
-#: order/serializers.py:1080 stock/serializers.py:413 stock/serializers.py:770
-#: stock/serializers.py:896 stock/templates/stock/item_base.html:10
-#: stock/templates/stock/item_base.html:23
-#: stock/templates/stock/item_base.html:195
-#: templates/js/translated/build.js:955 templates/js/translated/build.js:960
-#: templates/js/translated/build.js:2466 templates/js/translated/build.js:3038
-#: templates/js/translated/sales_order.js:286
-#: templates/js/translated/sales_order.js:1186
-#: templates/js/translated/sales_order.js:1485
-#: templates/js/translated/sales_order.js:1490
-#: templates/js/translated/sales_order.js:1591
-#: templates/js/translated/sales_order.js:1678
-#: templates/js/translated/stock.js:644 templates/js/translated/stock.js:810
-#: templates/js/translated/stock.js:2714
-msgid "Stock Item"
-msgstr "Предметы на складе"
-
-#: build/models.py:1456
-msgid "Source stock item"
-msgstr "Исходный складской предмет"
-
-#: build/models.py:1468 build/serializers.py:198 build/serializers.py:236
-#: build/templates/build/build_base.html:103
-#: build/templates/build/detail.html:34 common/models.py:2176
-#: order/models.py:1073 order/models.py:1645 order/serializers.py:1233
+#: build/models.py:1274 build/models.py:1556 build/serializers.py:206
+#: build/serializers.py:244 build/templates/build/build_base.html:103
+#: build/templates/build/detail.html:34 common/models.py:2162
+#: order/models.py:1086 order/models.py:1658 order/serializers.py:1239
#: order/templates/order/order_wizard/match_parts.html:30 part/admin.py:277
-#: part/forms.py:47 part/models.py:2992 part/models.py:3779
+#: part/forms.py:47 part/models.py:3026 part/models.py:3823
#: part/templates/part/part_pricing.html:16
#: part/templates/part/upload_bom.html:53
#: report/templates/report/inventree_bill_of_materials_report.html:138
@@ -1203,315 +1200,367 @@ msgstr "Исходный складской предмет"
#: report/templates/report/inventree_so_report_base.html:29
#: report/templates/report/inventree_test_report_base.html:90
#: report/templates/report/inventree_test_report_base.html:170
-#: stock/admin.py:103 stock/serializers.py:306
+#: stock/admin.py:103 stock/serializers.py:372
#: stock/templates/stock/item_base.html:288
#: stock/templates/stock/item_base.html:296
#: stock/templates/stock/item_base.html:343
#: templates/email/build_order_completed.html:18
-#: templates/js/translated/barcode.js:531 templates/js/translated/bom.js:770
-#: templates/js/translated/bom.js:951 templates/js/translated/build.js:504
-#: templates/js/translated/build.js:716 templates/js/translated/build.js:982
-#: templates/js/translated/build.js:1425 templates/js/translated/build.js:1991
-#: templates/js/translated/build.js:2467
-#: templates/js/translated/company.js:1428
-#: templates/js/translated/model_renderers.js:207
-#: templates/js/translated/order.js:304 templates/js/translated/part.js:935
-#: templates/js/translated/part.js:1784 templates/js/translated/part.js:3263
+#: templates/js/translated/barcode.js:531 templates/js/translated/bom.js:771
+#: templates/js/translated/bom.js:969 templates/js/translated/build.js:510
+#: templates/js/translated/build.js:722 templates/js/translated/build.js:1308
+#: templates/js/translated/build.js:1672 templates/js/translated/build.js:2283
+#: templates/js/translated/company.js:1849
+#: templates/js/translated/model_renderers.js:221
+#: templates/js/translated/order.js:304 templates/js/translated/part.js:934
+#: templates/js/translated/part.js:1783 templates/js/translated/part.js:3248
#: templates/js/translated/pricing.js:381
#: templates/js/translated/pricing.js:474
#: templates/js/translated/pricing.js:522
#: templates/js/translated/pricing.js:616
-#: templates/js/translated/purchase_order.js:749
-#: templates/js/translated/purchase_order.js:1815
-#: templates/js/translated/purchase_order.js:2039
-#: templates/js/translated/sales_order.js:302
-#: templates/js/translated/sales_order.js:1187
-#: templates/js/translated/sales_order.js:1504
-#: templates/js/translated/sales_order.js:1594
-#: templates/js/translated/sales_order.js:1684
-#: templates/js/translated/sales_order.js:1804
-#: templates/js/translated/stock.js:531 templates/js/translated/stock.js:669
-#: templates/js/translated/stock.js:840 templates/js/translated/stock.js:2758
-#: templates/js/translated/stock.js:2843
+#: templates/js/translated/purchase_order.js:760
+#: templates/js/translated/purchase_order.js:1830
+#: templates/js/translated/purchase_order.js:2049
+#: templates/js/translated/sales_order.js:314
+#: templates/js/translated/sales_order.js:1199
+#: templates/js/translated/sales_order.js:1516
+#: templates/js/translated/sales_order.js:1606
+#: templates/js/translated/sales_order.js:1696
+#: templates/js/translated/sales_order.js:1816
+#: templates/js/translated/stock.js:530 templates/js/translated/stock.js:668
+#: templates/js/translated/stock.js:839 templates/js/translated/stock.js:2889
+#: templates/js/translated/stock.js:2970
msgid "Quantity"
msgstr "Количество"
-#: build/models.py:1469
+#: build/models.py:1275
+msgid "Required quantity for build order"
+msgstr ""
+
+#: build/models.py:1357
+msgid "Build item must specify a build output, as master part is marked as trackable"
+msgstr "Элемент сборки должен указать вывод сборки, так как основная часть помечена как отслеживаемая"
+
+#: build/models.py:1366
+#, python-brace-format
+msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})"
+msgstr ""
+
+#: build/models.py:1376 order/models.py:1614
+msgid "Stock item is over-allocated"
+msgstr "Предмет на складе перераспределен"
+
+#: build/models.py:1382 order/models.py:1617
+msgid "Allocation quantity must be greater than zero"
+msgstr "Выделенное количество должно быть больше нуля"
+
+#: build/models.py:1388
+msgid "Quantity must be 1 for serialized stock"
+msgstr "Количество должно быть 1 для сериализованных запасов"
+
+#: build/models.py:1449
+msgid "Selected stock item does not match BOM line"
+msgstr ""
+
+#: build/models.py:1543 build/serializers.py:799 order/serializers.py:1065
+#: order/serializers.py:1086 stock/serializers.py:479 stock/serializers.py:887
+#: stock/serializers.py:1013 stock/templates/stock/item_base.html:10
+#: stock/templates/stock/item_base.html:23
+#: stock/templates/stock/item_base.html:195
+#: templates/js/translated/build.js:1671
+#: templates/js/translated/sales_order.js:298
+#: templates/js/translated/sales_order.js:1198
+#: templates/js/translated/sales_order.js:1497
+#: templates/js/translated/sales_order.js:1502
+#: templates/js/translated/sales_order.js:1603
+#: templates/js/translated/sales_order.js:1690
+#: templates/js/translated/stock.js:643 templates/js/translated/stock.js:809
+#: templates/js/translated/stock.js:2845
+msgid "Stock Item"
+msgstr "Предметы на складе"
+
+#: build/models.py:1544
+msgid "Source stock item"
+msgstr "Исходный складской предмет"
+
+#: build/models.py:1557
msgid "Stock quantity to allocate to build"
msgstr ""
-#: build/models.py:1477
+#: build/models.py:1565
msgid "Install into"
msgstr "Установить в"
-#: build/models.py:1478
+#: build/models.py:1566
msgid "Destination stock item"
msgstr ""
-#: build/serializers.py:148 build/serializers.py:820
-#: templates/js/translated/build.js:1413
+#: build/serializers.py:156 build/serializers.py:828
+#: templates/js/translated/build.js:1299
msgid "Build Output"
msgstr ""
-#: build/serializers.py:160
+#: build/serializers.py:168
msgid "Build output does not match the parent build"
msgstr "Результат сборки не совпадает с родительской сборкой"
-#: build/serializers.py:164
+#: build/serializers.py:172
msgid "Output part does not match BuildOrder part"
msgstr ""
-#: build/serializers.py:168
+#: build/serializers.py:176
msgid "This build output has already been completed"
msgstr "Результат этой сборки уже помечен как завершенный"
-#: build/serializers.py:179
+#: build/serializers.py:187
msgid "This build output is not fully allocated"
msgstr ""
-#: build/serializers.py:199 build/serializers.py:237
+#: build/serializers.py:207 build/serializers.py:245
msgid "Enter quantity for build output"
msgstr "Введите количество для вывода сборки"
-#: build/serializers.py:258
+#: build/serializers.py:266
msgid "Integer quantity required for trackable parts"
msgstr ""
-#: build/serializers.py:261
+#: build/serializers.py:269
msgid "Integer quantity required, as the bill of materials contains trackable parts"
msgstr ""
-#: build/serializers.py:276 order/serializers.py:514 order/serializers.py:1237
-#: stock/serializers.py:324 templates/js/translated/purchase_order.js:1123
-#: templates/js/translated/stock.js:334 templates/js/translated/stock.js:532
+#: build/serializers.py:284 order/serializers.py:520 order/serializers.py:1243
+#: stock/serializers.py:390 templates/js/translated/purchase_order.js:1138
+#: templates/js/translated/stock.js:333 templates/js/translated/stock.js:531
msgid "Serial Numbers"
msgstr "Серийные номера"
-#: build/serializers.py:277
+#: build/serializers.py:285
msgid "Enter serial numbers for build outputs"
msgstr "Введите серийные номера для результатов сборки"
-#: build/serializers.py:290
+#: build/serializers.py:298
msgid "Auto Allocate Serial Numbers"
msgstr ""
-#: build/serializers.py:291
+#: build/serializers.py:299
msgid "Automatically allocate required items with matching serial numbers"
msgstr ""
-#: build/serializers.py:326 stock/api.py:670
+#: build/serializers.py:334 stock/api.py:707
msgid "The following serial numbers already exist or are invalid"
msgstr ""
-#: build/serializers.py:377 build/serializers.py:439 build/serializers.py:518
+#: build/serializers.py:385 build/serializers.py:447 build/serializers.py:526
msgid "A list of build outputs must be provided"
msgstr ""
-#: build/serializers.py:415 build/serializers.py:488 order/serializers.py:487
-#: order/serializers.py:606 order/serializers.py:1588 part/serializers.py:854
-#: stock/serializers.py:335 stock/serializers.py:470 stock/serializers.py:551
-#: stock/serializers.py:931 stock/serializers.py:1173
+#: build/serializers.py:423 build/serializers.py:496 order/serializers.py:493
+#: order/serializers.py:612 order/serializers.py:1594 part/serializers.py:916
+#: stock/serializers.py:401 stock/serializers.py:537 stock/serializers.py:618
+#: stock/serializers.py:1048 stock/serializers.py:1290
#: stock/templates/stock/item_base.html:390
#: templates/js/translated/barcode.js:530
-#: templates/js/translated/barcode.js:778 templates/js/translated/build.js:967
-#: templates/js/translated/build.js:2006
-#: templates/js/translated/purchase_order.js:1148
-#: templates/js/translated/purchase_order.js:1238
-#: templates/js/translated/sales_order.js:1497
-#: templates/js/translated/sales_order.js:1605
-#: templates/js/translated/sales_order.js:1613
-#: templates/js/translated/sales_order.js:1692
-#: templates/js/translated/stock.js:645 templates/js/translated/stock.js:811
-#: templates/js/translated/stock.js:1023 templates/js/translated/stock.js:1937
-#: templates/js/translated/stock.js:2608
+#: templates/js/translated/barcode.js:778 templates/js/translated/build.js:980
+#: templates/js/translated/build.js:2298
+#: templates/js/translated/purchase_order.js:1163
+#: templates/js/translated/purchase_order.js:1253
+#: templates/js/translated/sales_order.js:1509
+#: templates/js/translated/sales_order.js:1617
+#: templates/js/translated/sales_order.js:1625
+#: templates/js/translated/sales_order.js:1704
+#: templates/js/translated/stock.js:644 templates/js/translated/stock.js:810
+#: templates/js/translated/stock.js:1022 templates/js/translated/stock.js:2094
+#: templates/js/translated/stock.js:2739
msgid "Location"
msgstr "Расположение"
-#: build/serializers.py:416
+#: build/serializers.py:424
msgid "Stock location for scrapped outputs"
msgstr ""
-#: build/serializers.py:422
+#: build/serializers.py:430
msgid "Discard Allocations"
msgstr ""
-#: build/serializers.py:423
+#: build/serializers.py:431
msgid "Discard any stock allocations for scrapped outputs"
msgstr ""
-#: build/serializers.py:428
+#: build/serializers.py:436
msgid "Reason for scrapping build output(s)"
msgstr ""
-#: build/serializers.py:489
+#: build/serializers.py:497
msgid "Location for completed build outputs"
msgstr ""
-#: build/serializers.py:495 build/templates/build/build_base.html:151
-#: build/templates/build/detail.html:62 order/models.py:791
-#: order/models.py:1750 order/serializers.py:524 stock/admin.py:106
-#: stock/templates/stock/item_base.html:423
-#: templates/js/translated/barcode.js:252 templates/js/translated/build.js:2897
-#: templates/js/translated/purchase_order.js:1278
-#: templates/js/translated/purchase_order.js:1682
-#: templates/js/translated/return_order.js:319
-#: templates/js/translated/sales_order.js:807
-#: templates/js/translated/stock.js:1912 templates/js/translated/stock.js:2732
-#: templates/js/translated/stock.js:2859
+#: build/serializers.py:503 build/templates/build/build_base.html:152
+#: build/templates/build/detail.html:62 order/models.py:804
+#: order/models.py:1763 order/serializers.py:530 stock/admin.py:106
+#: stock/serializers.py:677 stock/templates/stock/item_base.html:423
+#: templates/js/translated/barcode.js:252 templates/js/translated/build.js:2114
+#: templates/js/translated/purchase_order.js:1293
+#: templates/js/translated/purchase_order.js:1697
+#: templates/js/translated/return_order.js:331
+#: templates/js/translated/sales_order.js:819
+#: templates/js/translated/stock.js:2069 templates/js/translated/stock.js:2863
+#: templates/js/translated/stock.js:2986
msgid "Status"
msgstr "Статус"
-#: build/serializers.py:501
+#: build/serializers.py:509
msgid "Accept Incomplete Allocation"
msgstr ""
-#: build/serializers.py:502
+#: build/serializers.py:510
msgid "Complete outputs if stock has not been fully allocated"
msgstr ""
-#: build/serializers.py:571
+#: build/serializers.py:579
msgid "Remove Allocated Stock"
msgstr ""
-#: build/serializers.py:572
+#: build/serializers.py:580
msgid "Subtract any stock which has already been allocated to this build"
msgstr ""
-#: build/serializers.py:578
+#: build/serializers.py:586
msgid "Remove Incomplete Outputs"
msgstr ""
-#: build/serializers.py:579
+#: build/serializers.py:587
msgid "Delete any build outputs which have not been completed"
msgstr ""
-#: build/serializers.py:606
+#: build/serializers.py:614
msgid "Not permitted"
msgstr ""
-#: build/serializers.py:607
+#: build/serializers.py:615
msgid "Accept as consumed by this build order"
msgstr ""
-#: build/serializers.py:608
+#: build/serializers.py:616
msgid "Deallocate before completing this build order"
msgstr ""
-#: build/serializers.py:631
+#: build/serializers.py:639
msgid "Overallocated Stock"
msgstr ""
-#: build/serializers.py:633
+#: build/serializers.py:641
msgid "How do you want to handle extra stock items assigned to the build order"
msgstr ""
-#: build/serializers.py:643
+#: build/serializers.py:651
msgid "Some stock items have been overallocated"
msgstr ""
-#: build/serializers.py:648
+#: build/serializers.py:656
msgid "Accept Unallocated"
msgstr ""
-#: build/serializers.py:649
+#: build/serializers.py:657
msgid "Accept that stock items have not been fully allocated to this build order"
msgstr ""
-#: build/serializers.py:659 templates/js/translated/build.js:295
+#: build/serializers.py:667 templates/js/translated/build.js:304
msgid "Required stock has not been fully allocated"
msgstr ""
-#: build/serializers.py:664 order/serializers.py:261 order/serializers.py:1127
+#: build/serializers.py:672 order/serializers.py:267 order/serializers.py:1133
msgid "Accept Incomplete"
msgstr ""
-#: build/serializers.py:665
+#: build/serializers.py:673
msgid "Accept that the required number of build outputs have not been completed"
msgstr ""
-#: build/serializers.py:675 templates/js/translated/build.js:299
+#: build/serializers.py:683 templates/js/translated/build.js:308
msgid "Required build quantity has not been completed"
msgstr ""
-#: build/serializers.py:684 templates/js/translated/build.js:283
+#: build/serializers.py:692 templates/js/translated/build.js:292
msgid "Build order has incomplete outputs"
msgstr ""
-#: build/serializers.py:714 build/serializers.py:768 part/models.py:3686
-#: part/models.py:4069
-msgid "BOM Item"
-msgstr "BOM Компонент"
-
-#: build/serializers.py:724
-msgid "Build output"
+#: build/serializers.py:722
+msgid "Build Line"
msgstr ""
#: build/serializers.py:732
+msgid "Build output"
+msgstr ""
+
+#: build/serializers.py:740
msgid "Build output must point to the same build"
msgstr ""
-#: build/serializers.py:782
+#: build/serializers.py:776
+msgid "Build Line Item"
+msgstr ""
+
+#: build/serializers.py:790
msgid "bom_item.part must point to the same part as the build order"
msgstr ""
-#: build/serializers.py:797 stock/serializers.py:783
+#: build/serializers.py:805 stock/serializers.py:900
msgid "Item must be in stock"
msgstr "Компонент должен быть в наличии"
-#: build/serializers.py:846 order/serializers.py:1117
+#: build/serializers.py:853 order/serializers.py:1123
#, python-brace-format
msgid "Available quantity ({q}) exceeded"
msgstr "Превышено доступное количество ({q})"
-#: build/serializers.py:852
+#: build/serializers.py:859
msgid "Build output must be specified for allocation of tracked parts"
msgstr ""
-#: build/serializers.py:859
+#: build/serializers.py:866
msgid "Build output cannot be specified for allocation of untracked parts"
msgstr ""
-#: build/serializers.py:864
+#: build/serializers.py:871
msgid "This stock item has already been allocated to this build output"
msgstr ""
-#: build/serializers.py:887 order/serializers.py:1401
+#: build/serializers.py:894 order/serializers.py:1407
msgid "Allocation items must be provided"
msgstr ""
-#: build/serializers.py:943
+#: build/serializers.py:947
msgid "Stock location where parts are to be sourced (leave blank to take from any location)"
msgstr ""
-#: build/serializers.py:951
+#: build/serializers.py:955
msgid "Exclude Location"
msgstr ""
-#: build/serializers.py:952
+#: build/serializers.py:956
msgid "Exclude stock items from this selected location"
msgstr ""
-#: build/serializers.py:957
+#: build/serializers.py:961
msgid "Interchangeable Stock"
msgstr ""
-#: build/serializers.py:958
+#: build/serializers.py:962
msgid "Stock items in multiple locations can be used interchangeably"
msgstr ""
-#: build/serializers.py:963
+#: build/serializers.py:967
msgid "Substitute Stock"
msgstr ""
-#: build/serializers.py:964
+#: build/serializers.py:968
msgid "Allow allocation of substitute parts"
msgstr ""
-#: build/serializers.py:969
+#: build/serializers.py:973
msgid "Optional Items"
msgstr ""
-#: build/serializers.py:970
+#: build/serializers.py:974
msgid "Allocate optional BOM items to build order"
msgstr ""
@@ -1540,6 +1589,7 @@ msgstr ""
#: part/templates/part/part_base.html:43
#: stock/templates/stock/item_base.html:41
#: stock/templates/stock/location.html:54
+#: templates/js/translated/filters.js:336
msgid "Barcode actions"
msgstr "Действия со штрих-кодом"
@@ -1618,69 +1668,67 @@ msgstr "Завершить сборку"
msgid "Build Description"
msgstr "Описание сборки"
-#: build/templates/build/build_base.html:117
+#: build/templates/build/build_base.html:118
msgid "No build outputs have been created for this build order"
msgstr ""
-#: build/templates/build/build_base.html:124
+#: build/templates/build/build_base.html:125
msgid "Build Order is ready to mark as completed"
msgstr ""
-#: build/templates/build/build_base.html:129
+#: build/templates/build/build_base.html:130
msgid "Build Order cannot be completed as outstanding outputs remain"
msgstr ""
-#: build/templates/build/build_base.html:134
+#: build/templates/build/build_base.html:135
msgid "Required build quantity has not yet been completed"
msgstr ""
-#: build/templates/build/build_base.html:139
+#: build/templates/build/build_base.html:140
msgid "Stock has not been fully allocated to this Build Order"
msgstr ""
-#: build/templates/build/build_base.html:160
-#: build/templates/build/detail.html:138 order/models.py:240
-#: order/models.py:1099 order/templates/order/order_base.html:190
+#: build/templates/build/build_base.html:161
+#: build/templates/build/detail.html:138 order/models.py:244
+#: order/models.py:1112 order/templates/order/order_base.html:186
#: order/templates/order/return_order_base.html:165
#: order/templates/order/sales_order_base.html:193
#: report/templates/report/inventree_build_order_base.html:125
-#: templates/js/translated/build.js:2945 templates/js/translated/part.js:1802
-#: templates/js/translated/purchase_order.js:1699
-#: templates/js/translated/purchase_order.js:2115
-#: templates/js/translated/return_order.js:335
-#: templates/js/translated/return_order.js:735
-#: templates/js/translated/sales_order.js:823
-#: templates/js/translated/sales_order.js:1847
+#: templates/js/translated/build.js:2162 templates/js/translated/part.js:1801
+#: templates/js/translated/purchase_order.js:1714
+#: templates/js/translated/purchase_order.js:2125
+#: templates/js/translated/return_order.js:347
+#: templates/js/translated/return_order.js:747
+#: templates/js/translated/sales_order.js:835
+#: templates/js/translated/sales_order.js:1859
msgid "Target Date"
msgstr "Целевая дата"
-#: build/templates/build/build_base.html:165
+#: build/templates/build/build_base.html:166
#, python-format
msgid "This build was due on %(target)s"
msgstr ""
-#: build/templates/build/build_base.html:165
-#: build/templates/build/build_base.html:222
-#: order/templates/order/order_base.html:126
+#: build/templates/build/build_base.html:166
+#: build/templates/build/build_base.html:223
+#: order/templates/order/order_base.html:122
#: order/templates/order/return_order_base.html:118
#: order/templates/order/sales_order_base.html:123
-#: templates/js/translated/table_filters.js:68
-#: templates/js/translated/table_filters.js:454
-#: templates/js/translated/table_filters.js:539
-#: templates/js/translated/table_filters.js:580
+#: templates/js/translated/table_filters.js:74
+#: templates/js/translated/table_filters.js:460
+#: templates/js/translated/table_filters.js:561
+#: templates/js/translated/table_filters.js:602
msgid "Overdue"
msgstr "Просрочено"
-#: build/templates/build/build_base.html:177
-#: build/templates/build/detail.html:67 build/templates/build/detail.html:149
-#: order/templates/order/sales_order_base.html:203
-#: templates/js/translated/table_filters.js:602
-msgid "Completed"
-msgstr "Завершённые"
+#: build/templates/build/build_base.html:178
+#: build/templates/build/detail.html:67 build/templates/build/sidebar.html:13
+msgid "Completed Outputs"
+msgstr ""
-#: build/templates/build/build_base.html:190
-#: build/templates/build/detail.html:101 order/api.py:1454 order/models.py:1304
-#: order/models.py:1403 order/models.py:1551
+#: build/templates/build/build_base.html:191
+#: build/templates/build/detail.html:101 order/api.py:1454 order/models.py:1317
+#: order/models.py:1416 order/models.py:1564
#: order/templates/order/sales_order_base.html:9
#: order/templates/order/sales_order_base.html:28
#: report/templates/report/inventree_build_order_base.html:135
@@ -1688,32 +1736,32 @@ msgstr "Завершённые"
#: stock/templates/stock/item_base.html:370
#: templates/email/overdue_sales_order.html:15
#: templates/js/translated/pricing.js:915
-#: templates/js/translated/sales_order.js:757
-#: templates/js/translated/sales_order.js:980
-#: templates/js/translated/stock.js:2661
+#: templates/js/translated/sales_order.js:769
+#: templates/js/translated/sales_order.js:992
+#: templates/js/translated/stock.js:2792
msgid "Sales Order"
msgstr "Заказ покупателя"
-#: build/templates/build/build_base.html:197
+#: build/templates/build/build_base.html:198
#: build/templates/build/detail.html:115
#: report/templates/report/inventree_build_order_base.html:152
msgid "Issued By"
msgstr "Выдано"
-#: build/templates/build/build_base.html:211
-#: build/templates/build/detail.html:94 templates/js/translated/build.js:2862
+#: build/templates/build/build_base.html:212
+#: build/templates/build/detail.html:94 templates/js/translated/build.js:2079
msgid "Priority"
msgstr ""
-#: build/templates/build/build_base.html:273
+#: build/templates/build/build_base.html:274
msgid "Delete Build Order"
msgstr "Удалить заказ на сборку"
-#: build/templates/build/build_base.html:283
+#: build/templates/build/build_base.html:284
msgid "Build Order QR Code"
msgstr ""
-#: build/templates/build/build_base.html:295
+#: build/templates/build/build_base.html:296
msgid "Link Barcode to Build Order"
msgstr ""
@@ -1729,8 +1777,8 @@ msgstr ""
msgid "Stock can be taken from any available location."
msgstr ""
-#: build/templates/build/detail.html:49 order/models.py:1222
-#: templates/js/translated/purchase_order.js:2157
+#: build/templates/build/detail.html:49 order/models.py:1235
+#: templates/js/translated/purchase_order.js:2167
msgid "Destination"
msgstr "Назначение"
@@ -1744,21 +1792,21 @@ msgstr ""
#: build/templates/build/detail.html:80 stock/admin.py:105
#: stock/templates/stock/item_base.html:163
-#: templates/js/translated/build.js:1432
-#: templates/js/translated/model_renderers.js:212
-#: templates/js/translated/purchase_order.js:1244
-#: templates/js/translated/stock.js:1093 templates/js/translated/stock.js:1926
-#: templates/js/translated/stock.js:2866
-#: templates/js/translated/table_filters.js:259
-#: templates/js/translated/table_filters.js:350
+#: templates/js/translated/build.js:1319
+#: templates/js/translated/model_renderers.js:226
+#: templates/js/translated/purchase_order.js:1259
+#: templates/js/translated/stock.js:1092 templates/js/translated/stock.js:2083
+#: templates/js/translated/stock.js:2993
+#: templates/js/translated/table_filters.js:265
+#: templates/js/translated/table_filters.js:356
msgid "Batch"
msgstr "Партия"
#: build/templates/build/detail.html:133
-#: order/templates/order/order_base.html:177
+#: order/templates/order/order_base.html:173
#: order/templates/order/return_order_base.html:152
#: order/templates/order/sales_order_base.html:187
-#: templates/js/translated/build.js:2905
+#: templates/js/translated/build.js:2122
msgid "Created"
msgstr "Создано"
@@ -1766,147 +1814,106 @@ msgstr "Создано"
msgid "No target date set"
msgstr "Нет конечной даты"
+#: build/templates/build/detail.html:149
+#: order/templates/order/sales_order_base.html:203
+#: templates/js/translated/table_filters.js:624
+msgid "Completed"
+msgstr "Завершённые"
+
#: build/templates/build/detail.html:153
msgid "Build not complete"
msgstr "Сборка не завершена"
-#: build/templates/build/detail.html:164 build/templates/build/sidebar.html:19
+#: build/templates/build/detail.html:164 build/templates/build/sidebar.html:17
msgid "Child Build Orders"
msgstr ""
-#: build/templates/build/detail.html:179
+#: build/templates/build/detail.html:177
msgid "Allocate Stock to Build"
msgstr ""
-#: build/templates/build/detail.html:183 templates/js/translated/build.js:2276
-msgid "Unallocate stock"
+#: build/templates/build/detail.html:181
+msgid "Deallocate stock"
+msgstr ""
+
+#: build/templates/build/detail.html:182
+msgid "Deallocate Stock"
msgstr ""
#: build/templates/build/detail.html:184
-msgid "Unallocate Stock"
-msgstr ""
-
-#: build/templates/build/detail.html:186
msgid "Automatically allocate stock to build"
msgstr ""
-#: build/templates/build/detail.html:187
+#: build/templates/build/detail.html:185
msgid "Auto Allocate"
msgstr ""
-#: build/templates/build/detail.html:189
+#: build/templates/build/detail.html:187
msgid "Manually allocate stock to build"
msgstr ""
-#: build/templates/build/detail.html:190 build/templates/build/sidebar.html:8
+#: build/templates/build/detail.html:188 build/templates/build/sidebar.html:8
msgid "Allocate Stock"
msgstr ""
-#: build/templates/build/detail.html:193
+#: build/templates/build/detail.html:191
msgid "Order required parts"
msgstr ""
-#: build/templates/build/detail.html:194
-#: company/templates/company/detail.html:38
-#: company/templates/company/detail.html:86
-#: part/templates/part/category.html:184
-#: templates/js/translated/purchase_order.js:789
+#: build/templates/build/detail.html:192
+#: templates/js/translated/purchase_order.js:800
msgid "Order Parts"
msgstr "Заказать детали"
-#: build/templates/build/detail.html:206
-msgid "Untracked stock has been fully allocated for this Build Order"
-msgstr ""
-
#: build/templates/build/detail.html:210
-msgid "Untracked stock has not been fully allocated for this Build Order"
-msgstr ""
-
-#: build/templates/build/detail.html:217
-msgid "Allocate selected items"
-msgstr ""
-
-#: build/templates/build/detail.html:227
-msgid "This Build Order does not have any associated untracked BOM items"
-msgstr ""
-
-#: build/templates/build/detail.html:236
msgid "Incomplete Build Outputs"
msgstr ""
-#: build/templates/build/detail.html:240
+#: build/templates/build/detail.html:214
msgid "Create new build output"
msgstr ""
-#: build/templates/build/detail.html:241
+#: build/templates/build/detail.html:215
msgid "New Build Output"
msgstr ""
-#: build/templates/build/detail.html:255
-msgid "Output Actions"
-msgstr "Вывод"
-
-#: build/templates/build/detail.html:260
-msgid "Complete selected build outputs"
-msgstr ""
-
-#: build/templates/build/detail.html:261
-msgid "Complete outputs"
-msgstr ""
-
-#: build/templates/build/detail.html:265
-msgid "Scrap selected build outputs"
-msgstr ""
-
-#: build/templates/build/detail.html:266
-msgid "Scrap outputs"
-msgstr ""
-
-#: build/templates/build/detail.html:270
-msgid "Delete selected build outputs"
-msgstr ""
-
-#: build/templates/build/detail.html:271
-msgid "Delete outputs"
-msgstr ""
-
-#: build/templates/build/detail.html:288 build/templates/build/sidebar.html:11
+#: build/templates/build/detail.html:232 build/templates/build/sidebar.html:15
msgid "Consumed Stock"
msgstr ""
-#: build/templates/build/detail.html:300
+#: build/templates/build/detail.html:244
msgid "Completed Build Outputs"
msgstr ""
-#: build/templates/build/detail.html:312 build/templates/build/sidebar.html:21
-#: company/templates/company/detail.html:261
-#: company/templates/company/manufacturer_part.html:151
+#: build/templates/build/detail.html:256 build/templates/build/sidebar.html:19
+#: company/templates/company/detail.html:229
+#: company/templates/company/manufacturer_part.html:141
#: company/templates/company/manufacturer_part_sidebar.html:9
-#: company/templates/company/sidebar.html:37
+#: company/templates/company/sidebar.html:39
#: order/templates/order/po_sidebar.html:9
-#: order/templates/order/purchase_order_detail.html:102
-#: order/templates/order/return_order_detail.html:74
+#: order/templates/order/purchase_order_detail.html:84
+#: order/templates/order/return_order_detail.html:70
#: order/templates/order/return_order_sidebar.html:7
-#: order/templates/order/sales_order_detail.html:134
-#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:234
-#: part/templates/part/part_sidebar.html:61 stock/templates/stock/item.html:117
+#: order/templates/order/sales_order_detail.html:124
+#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:217
+#: part/templates/part/part_sidebar.html:61 stock/templates/stock/item.html:109
#: stock/templates/stock/stock_sidebar.html:23
msgid "Attachments"
msgstr "Приложения"
-#: build/templates/build/detail.html:327
+#: build/templates/build/detail.html:271
msgid "Build Notes"
msgstr "Заметки сборки"
-#: build/templates/build/detail.html:502
+#: build/templates/build/detail.html:425
msgid "Allocation Complete"
msgstr ""
-#: build/templates/build/detail.html:503
-msgid "All untracked stock items have been allocated"
+#: build/templates/build/detail.html:426
+msgid "All lines have been fully allocated"
msgstr ""
-#: build/templates/build/index.html:18 part/templates/part/detail.html:340
+#: build/templates/build/index.html:18 part/templates/part/detail.html:319
msgid "New Build Order"
msgstr "Новый заказ на сборку"
@@ -1914,14 +1921,10 @@ msgstr "Новый заказ на сборку"
msgid "Build Order Details"
msgstr ""
-#: build/templates/build/sidebar.html:14
+#: build/templates/build/sidebar.html:10
msgid "Incomplete Outputs"
msgstr "Незавершенные выходные данные"
-#: build/templates/build/sidebar.html:17
-msgid "Completed Outputs"
-msgstr ""
-
#: common/files.py:63
#, python-brace-format
msgid "Unsupported file format: {fmt}"
@@ -1968,16 +1971,6 @@ msgstr ""
msgid "Timestamp of last update"
msgstr ""
-#: common/models.py:104 order/admin.py:17 order/models.py:234
-#: templates/InvenTree/settings/settings_staff_js.html:70
-#: templates/js/translated/purchase_order.js:1670
-#: templates/js/translated/return_order.js:306
-#: templates/js/translated/sales_order.js:794
-#: templates/js/translated/table_filters.js:24
-#: templates/project_code_data.html:6
-msgid "Project Code"
-msgstr ""
-
#: common/models.py:105
msgid "Unique project code"
msgstr ""
@@ -2261,9 +2254,9 @@ msgstr ""
msgid "Copy category parameter templates when creating a part"
msgstr ""
-#: common/models.py:1162 part/admin.py:55 part/models.py:3560
-#: report/models.py:166 templates/js/translated/table_filters.js:109
-#: templates/js/translated/table_filters.js:680
+#: common/models.py:1162 part/admin.py:55 part/models.py:3594
+#: report/models.py:166 templates/js/translated/table_filters.js:115
+#: templates/js/translated/table_filters.js:702
msgid "Template"
msgstr "Шаблон"
@@ -2271,10 +2264,10 @@ msgstr "Шаблон"
msgid "Parts are templates by default"
msgstr "По умолчанию детали являются шаблонами"
-#: common/models.py:1169 part/admin.py:51 part/admin.py:283 part/models.py:996
-#: templates/js/translated/bom.js:1598
-#: templates/js/translated/table_filters.js:276
-#: templates/js/translated/table_filters.js:634
+#: common/models.py:1169 part/admin.py:51 part/admin.py:283 part/models.py:997
+#: templates/js/translated/bom.js:1618
+#: templates/js/translated/table_filters.js:282
+#: templates/js/translated/table_filters.js:656
msgid "Assembly"
msgstr "Сборка"
@@ -2282,8 +2275,8 @@ msgstr "Сборка"
msgid "Parts can be assembled from other components by default"
msgstr ""
-#: common/models.py:1176 part/admin.py:52 part/models.py:1002
-#: templates/js/translated/table_filters.js:642
+#: common/models.py:1176 part/admin.py:52 part/models.py:1003
+#: templates/js/translated/table_filters.js:664
msgid "Component"
msgstr "Компонент"
@@ -2291,7 +2284,7 @@ msgstr "Компонент"
msgid "Parts can be used as sub-components by default"
msgstr ""
-#: common/models.py:1183 part/admin.py:53 part/models.py:1013
+#: common/models.py:1183 part/admin.py:53 part/models.py:1014
msgid "Purchaseable"
msgstr ""
@@ -2299,8 +2292,8 @@ msgstr ""
msgid "Parts are purchaseable by default"
msgstr ""
-#: common/models.py:1190 part/admin.py:54 part/models.py:1018
-#: templates/js/translated/table_filters.js:668
+#: common/models.py:1190 part/admin.py:54 part/models.py:1019
+#: templates/js/translated/table_filters.js:690
msgid "Salable"
msgstr "Можно продавать"
@@ -2308,10 +2301,10 @@ msgstr "Можно продавать"
msgid "Parts are salable by default"
msgstr ""
-#: common/models.py:1197 part/admin.py:56 part/models.py:1008
-#: templates/js/translated/table_filters.js:117
-#: templates/js/translated/table_filters.js:193
-#: templates/js/translated/table_filters.js:684
+#: common/models.py:1197 part/admin.py:56 part/models.py:1009
+#: templates/js/translated/table_filters.js:123
+#: templates/js/translated/table_filters.js:199
+#: templates/js/translated/table_filters.js:706
msgid "Trackable"
msgstr "Отслеживание"
@@ -2319,10 +2312,10 @@ msgstr "Отслеживание"
msgid "Parts are trackable by default"
msgstr "По умолчанию детали являются отслеживаемыми"
-#: common/models.py:1204 part/admin.py:57 part/models.py:1028
+#: common/models.py:1204 part/admin.py:57 part/models.py:1029
#: part/templates/part/part_base.html:156
-#: templates/js/translated/table_filters.js:113
-#: templates/js/translated/table_filters.js:688
+#: templates/js/translated/table_filters.js:119
+#: templates/js/translated/table_filters.js:710
msgid "Virtual"
msgstr ""
@@ -2354,7 +2347,7 @@ msgstr ""
msgid "Allow creation of initial stock when adding a new part"
msgstr ""
-#: common/models.py:1232 templates/js/translated/part.js:108
+#: common/models.py:1232 templates/js/translated/part.js:107
msgid "Initial Supplier Data"
msgstr ""
@@ -2603,179 +2596,179 @@ msgid "Stock location default icon (empty means no icon)"
msgstr ""
#: common/models.py:1471
-msgid "Build Order Reference Pattern"
+msgid "Show Installed Stock Items"
msgstr ""
#: common/models.py:1472
-msgid "Required pattern for generating Build Order reference field"
+msgid "Display installed stock items in stock tables"
msgstr ""
#: common/models.py:1478
-msgid "Enable Return Orders"
+msgid "Build Order Reference Pattern"
msgstr ""
#: common/models.py:1479
-msgid "Enable return order functionality in the user interface"
+msgid "Required pattern for generating Build Order reference field"
msgstr ""
#: common/models.py:1485
-msgid "Return Order Reference Pattern"
+msgid "Enable Return Orders"
msgstr ""
#: common/models.py:1486
-msgid "Required pattern for generating Return Order reference field"
+msgid "Enable return order functionality in the user interface"
msgstr ""
#: common/models.py:1492
-msgid "Edit Completed Return Orders"
+msgid "Return Order Reference Pattern"
msgstr ""
#: common/models.py:1493
-msgid "Allow editing of return orders after they have been completed"
+msgid "Required pattern for generating Return Order reference field"
msgstr ""
#: common/models.py:1499
-msgid "Sales Order Reference Pattern"
+msgid "Edit Completed Return Orders"
msgstr ""
#: common/models.py:1500
-msgid "Required pattern for generating Sales Order reference field"
+msgid "Allow editing of return orders after they have been completed"
msgstr ""
#: common/models.py:1506
-msgid "Sales Order Default Shipment"
+msgid "Sales Order Reference Pattern"
msgstr ""
#: common/models.py:1507
-msgid "Enable creation of default shipment with sales orders"
+msgid "Required pattern for generating Sales Order reference field"
msgstr ""
#: common/models.py:1513
-msgid "Edit Completed Sales Orders"
+msgid "Sales Order Default Shipment"
msgstr ""
#: common/models.py:1514
-msgid "Allow editing of sales orders after they have been shipped or completed"
+msgid "Enable creation of default shipment with sales orders"
msgstr ""
#: common/models.py:1520
-msgid "Purchase Order Reference Pattern"
+msgid "Edit Completed Sales Orders"
msgstr ""
#: common/models.py:1521
-msgid "Required pattern for generating Purchase Order reference field"
+msgid "Allow editing of sales orders after they have been shipped or completed"
msgstr ""
#: common/models.py:1527
-msgid "Edit Completed Purchase Orders"
+msgid "Purchase Order Reference Pattern"
msgstr ""
#: common/models.py:1528
-msgid "Allow editing of purchase orders after they have been shipped or completed"
+msgid "Required pattern for generating Purchase Order reference field"
+msgstr ""
+
+#: common/models.py:1534
+msgid "Edit Completed Purchase Orders"
msgstr ""
#: common/models.py:1535
-msgid "Enable password forgot"
-msgstr ""
-
-#: common/models.py:1536
-msgid "Enable password forgot function on the login pages"
+msgid "Allow editing of purchase orders after they have been shipped or completed"
msgstr ""
#: common/models.py:1542
-msgid "Enable registration"
+msgid "Enable password forgot"
msgstr ""
#: common/models.py:1543
-msgid "Enable self-registration for users on the login pages"
+msgid "Enable password forgot function on the login pages"
msgstr ""
#: common/models.py:1549
-msgid "Enable SSO"
+msgid "Enable registration"
msgstr ""
#: common/models.py:1550
-msgid "Enable SSO on the login pages"
+msgid "Enable self-registration for users on the login pages"
msgstr ""
#: common/models.py:1556
-msgid "Enable SSO registration"
+msgid "Enable SSO"
msgstr ""
#: common/models.py:1557
-msgid "Enable self-registration via SSO for users on the login pages"
+msgid "Enable SSO on the login pages"
msgstr ""
#: common/models.py:1563
-msgid "Email required"
-msgstr "Необходимо указать EMail"
+msgid "Enable SSO registration"
+msgstr ""
#: common/models.py:1564
-msgid "Require user to supply mail on signup"
+msgid "Enable self-registration via SSO for users on the login pages"
msgstr ""
#: common/models.py:1570
-msgid "Auto-fill SSO users"
-msgstr ""
+msgid "Email required"
+msgstr "Необходимо указать EMail"
#: common/models.py:1571
-msgid "Automatically fill out user-details from SSO account-data"
+msgid "Require user to supply mail on signup"
msgstr ""
#: common/models.py:1577
-msgid "Mail twice"
+msgid "Auto-fill SSO users"
msgstr ""
#: common/models.py:1578
-msgid "On signup ask users twice for their mail"
+msgid "Automatically fill out user-details from SSO account-data"
msgstr ""
#: common/models.py:1584
-msgid "Password twice"
+msgid "Mail twice"
msgstr ""
#: common/models.py:1585
-msgid "On signup ask users twice for their password"
+msgid "On signup ask users twice for their mail"
msgstr ""
#: common/models.py:1591
-msgid "Allowed domains"
+msgid "Password twice"
msgstr ""
#: common/models.py:1592
-msgid "Restrict signup to certain domains (comma-separated, starting with @)"
+msgid "On signup ask users twice for their password"
msgstr ""
#: common/models.py:1598
-msgid "Group on signup"
+msgid "Allowed domains"
msgstr ""
#: common/models.py:1599
-msgid "Group to which new users are assigned on registration"
+msgid "Restrict signup to certain domains (comma-separated, starting with @)"
msgstr ""
#: common/models.py:1605
-msgid "Enforce MFA"
+msgid "Group on signup"
msgstr ""
#: common/models.py:1606
-msgid "Users must use multifactor security."
+msgid "Group to which new users are assigned on registration"
msgstr ""
#: common/models.py:1612
-msgid "Check plugins on startup"
+msgid "Enforce MFA"
msgstr ""
#: common/models.py:1613
-msgid "Check that all plugins are installed on startup - enable in container environments"
+msgid "Users must use multifactor security."
+msgstr ""
+
+#: common/models.py:1619
+msgid "Check plugins on startup"
msgstr ""
#: common/models.py:1620
-msgid "Check plugin signatures"
-msgstr ""
-
-#: common/models.py:1621
-msgid "Check and show signatures for plugins"
+msgid "Check that all plugins are installed on startup - enable in container environments"
msgstr ""
#: common/models.py:1628
@@ -2850,7 +2843,7 @@ msgstr ""
msgid "Stocktake reports will be deleted after specified number of days"
msgstr ""
-#: common/models.py:1710 common/models.py:2147
+#: common/models.py:1710 common/models.py:2133
msgid "Settings key (must be unique - case insensitive"
msgstr ""
@@ -2891,528 +2884,513 @@ msgid "Show latest parts on the homepage"
msgstr "Показывать последние детали на главной странице"
#: common/models.py:1779
-msgid "Recent Part Count"
-msgstr ""
-
-#: common/models.py:1780
-msgid "Number of recent parts to display on index page"
-msgstr ""
-
-#: common/models.py:1786
msgid "Show unvalidated BOMs"
msgstr "Показывать непроверенные BOMы"
-#: common/models.py:1787
+#: common/models.py:1780
msgid "Show BOMs that await validation on the homepage"
msgstr "Показывать BOMы, ожидающие проверки, на главной странице"
-#: common/models.py:1793
+#: common/models.py:1786
msgid "Show recent stock changes"
msgstr "Показывать изменившиеся складские запасы"
-#: common/models.py:1794
+#: common/models.py:1787
msgid "Show recently changed stock items on the homepage"
msgstr "Показывать единицы хранения с недавно изменившимися складскими запасами на главной странице"
-#: common/models.py:1800
-msgid "Recent Stock Count"
-msgstr ""
-
-#: common/models.py:1801
-msgid "Number of recent stock items to display on index page"
-msgstr ""
-
-#: common/models.py:1807
+#: common/models.py:1793
msgid "Show low stock"
msgstr "Показывать низкие складские запасы"
-#: common/models.py:1808
+#: common/models.py:1794
msgid "Show low stock items on the homepage"
msgstr "Показывать единицы хранения с низкими складскими запасами на главной странице"
-#: common/models.py:1814
+#: common/models.py:1800
msgid "Show depleted stock"
msgstr "Показывать закончившиеся детали"
-#: common/models.py:1815
+#: common/models.py:1801
msgid "Show depleted stock items on the homepage"
msgstr "Показывать закончившиеся на складе единицы хранения на главной странице"
-#: common/models.py:1821
+#: common/models.py:1807
msgid "Show needed stock"
msgstr "Показывать требуемые детали"
-#: common/models.py:1822
+#: common/models.py:1808
msgid "Show stock items needed for builds on the homepage"
msgstr "Показывать требуемые для сборки единицы хранения на главной странице"
-#: common/models.py:1828
+#: common/models.py:1814
msgid "Show expired stock"
msgstr "Показывать просрочку"
-#: common/models.py:1829
+#: common/models.py:1815
msgid "Show expired stock items on the homepage"
msgstr "Показывать единицы хранения с истёкшим сроком годности на главной странице"
-#: common/models.py:1835
+#: common/models.py:1821
msgid "Show stale stock"
msgstr "Показывать залежалые"
-#: common/models.py:1836
+#: common/models.py:1822
msgid "Show stale stock items on the homepage"
msgstr "Показывать залежалые единицы хранения на главной странице"
-#: common/models.py:1842
+#: common/models.py:1828
msgid "Show pending builds"
msgstr "Показывать незавершённые сборки"
-#: common/models.py:1843
+#: common/models.py:1829
msgid "Show pending builds on the homepage"
msgstr "Показывать незавершённые сборки на главной странице"
-#: common/models.py:1849
+#: common/models.py:1835
msgid "Show overdue builds"
msgstr "Показывать просроченные сборки"
-#: common/models.py:1850
+#: common/models.py:1836
msgid "Show overdue builds on the homepage"
msgstr "Показывать просроченные сборки на главной странице"
-#: common/models.py:1856
+#: common/models.py:1842
msgid "Show outstanding POs"
msgstr ""
-#: common/models.py:1857
+#: common/models.py:1843
msgid "Show outstanding POs on the homepage"
msgstr ""
-#: common/models.py:1863
+#: common/models.py:1849
msgid "Show overdue POs"
msgstr ""
-#: common/models.py:1864
+#: common/models.py:1850
msgid "Show overdue POs on the homepage"
msgstr ""
-#: common/models.py:1870
+#: common/models.py:1856
msgid "Show outstanding SOs"
msgstr ""
-#: common/models.py:1871
+#: common/models.py:1857
msgid "Show outstanding SOs on the homepage"
msgstr ""
-#: common/models.py:1877
+#: common/models.py:1863
msgid "Show overdue SOs"
msgstr ""
-#: common/models.py:1878
+#: common/models.py:1864
msgid "Show overdue SOs on the homepage"
msgstr ""
-#: common/models.py:1884
+#: common/models.py:1870
msgid "Show pending SO shipments"
msgstr ""
-#: common/models.py:1885
+#: common/models.py:1871
msgid "Show pending SO shipments on the homepage"
msgstr ""
-#: common/models.py:1891
+#: common/models.py:1877
msgid "Show News"
msgstr ""
-#: common/models.py:1892
+#: common/models.py:1878
msgid "Show news on the homepage"
msgstr ""
-#: common/models.py:1898
+#: common/models.py:1884
msgid "Inline label display"
msgstr ""
-#: common/models.py:1899
+#: common/models.py:1885
msgid "Display PDF labels in the browser, instead of downloading as a file"
msgstr ""
-#: common/models.py:1905
+#: common/models.py:1891
msgid "Default label printer"
msgstr ""
-#: common/models.py:1906
+#: common/models.py:1892
msgid "Configure which label printer should be selected by default"
msgstr ""
-#: common/models.py:1912
+#: common/models.py:1898
msgid "Inline report display"
msgstr ""
-#: common/models.py:1913
+#: common/models.py:1899
msgid "Display PDF reports in the browser, instead of downloading as a file"
msgstr ""
-#: common/models.py:1919
+#: common/models.py:1905
msgid "Search Parts"
msgstr ""
-#: common/models.py:1920
+#: common/models.py:1906
msgid "Display parts in search preview window"
msgstr ""
-#: common/models.py:1926
+#: common/models.py:1912
msgid "Search Supplier Parts"
msgstr ""
-#: common/models.py:1927
+#: common/models.py:1913
msgid "Display supplier parts in search preview window"
msgstr ""
-#: common/models.py:1933
+#: common/models.py:1919
msgid "Search Manufacturer Parts"
msgstr ""
-#: common/models.py:1934
+#: common/models.py:1920
msgid "Display manufacturer parts in search preview window"
msgstr ""
-#: common/models.py:1940
+#: common/models.py:1926
msgid "Hide Inactive Parts"
msgstr ""
-#: common/models.py:1941
+#: common/models.py:1927
msgid "Excluded inactive parts from search preview window"
msgstr ""
-#: common/models.py:1947
+#: common/models.py:1933
msgid "Search Categories"
msgstr ""
-#: common/models.py:1948
+#: common/models.py:1934
msgid "Display part categories in search preview window"
msgstr ""
-#: common/models.py:1954
+#: common/models.py:1940
msgid "Search Stock"
msgstr ""
-#: common/models.py:1955
+#: common/models.py:1941
msgid "Display stock items in search preview window"
msgstr ""
-#: common/models.py:1961
+#: common/models.py:1947
msgid "Hide Unavailable Stock Items"
msgstr ""
-#: common/models.py:1962
+#: common/models.py:1948
msgid "Exclude stock items which are not available from the search preview window"
msgstr ""
-#: common/models.py:1968
+#: common/models.py:1954
msgid "Search Locations"
msgstr ""
-#: common/models.py:1969
+#: common/models.py:1955
msgid "Display stock locations in search preview window"
msgstr ""
-#: common/models.py:1975
+#: common/models.py:1961
msgid "Search Companies"
msgstr ""
-#: common/models.py:1976
+#: common/models.py:1962
msgid "Display companies in search preview window"
msgstr ""
-#: common/models.py:1982
+#: common/models.py:1968
msgid "Search Build Orders"
msgstr ""
-#: common/models.py:1983
+#: common/models.py:1969
msgid "Display build orders in search preview window"
msgstr ""
-#: common/models.py:1989
+#: common/models.py:1975
msgid "Search Purchase Orders"
msgstr ""
-#: common/models.py:1990
+#: common/models.py:1976
msgid "Display purchase orders in search preview window"
msgstr ""
-#: common/models.py:1996
+#: common/models.py:1982
msgid "Exclude Inactive Purchase Orders"
msgstr ""
-#: common/models.py:1997
+#: common/models.py:1983
msgid "Exclude inactive purchase orders from search preview window"
msgstr ""
-#: common/models.py:2003
+#: common/models.py:1989
msgid "Search Sales Orders"
msgstr ""
-#: common/models.py:2004
+#: common/models.py:1990
msgid "Display sales orders in search preview window"
msgstr ""
-#: common/models.py:2010
+#: common/models.py:1996
msgid "Exclude Inactive Sales Orders"
msgstr ""
-#: common/models.py:2011
+#: common/models.py:1997
msgid "Exclude inactive sales orders from search preview window"
msgstr ""
-#: common/models.py:2017
+#: common/models.py:2003
msgid "Search Return Orders"
msgstr ""
-#: common/models.py:2018
+#: common/models.py:2004
msgid "Display return orders in search preview window"
msgstr ""
-#: common/models.py:2024
+#: common/models.py:2010
msgid "Exclude Inactive Return Orders"
msgstr ""
-#: common/models.py:2025
+#: common/models.py:2011
msgid "Exclude inactive return orders from search preview window"
msgstr ""
-#: common/models.py:2031
+#: common/models.py:2017
msgid "Search Preview Results"
msgstr ""
-#: common/models.py:2032
+#: common/models.py:2018
msgid "Number of results to show in each section of the search preview window"
msgstr ""
-#: common/models.py:2038
+#: common/models.py:2024
msgid "Regex Search"
msgstr ""
-#: common/models.py:2039
+#: common/models.py:2025
msgid "Enable regular expressions in search queries"
msgstr ""
-#: common/models.py:2045
+#: common/models.py:2031
msgid "Whole Word Search"
msgstr ""
-#: common/models.py:2046
+#: common/models.py:2032
msgid "Search queries return results for whole word matches"
msgstr ""
-#: common/models.py:2052
+#: common/models.py:2038
msgid "Show Quantity in Forms"
msgstr ""
-#: common/models.py:2053
+#: common/models.py:2039
msgid "Display available part quantity in some forms"
msgstr ""
-#: common/models.py:2059
+#: common/models.py:2045
msgid "Escape Key Closes Forms"
msgstr ""
-#: common/models.py:2060
+#: common/models.py:2046
msgid "Use the escape key to close modal forms"
msgstr ""
-#: common/models.py:2066
+#: common/models.py:2052
msgid "Fixed Navbar"
msgstr ""
-#: common/models.py:2067
+#: common/models.py:2053
msgid "The navbar position is fixed to the top of the screen"
msgstr ""
-#: common/models.py:2073
+#: common/models.py:2059
msgid "Date Format"
msgstr ""
-#: common/models.py:2074
+#: common/models.py:2060
msgid "Preferred format for displaying dates"
msgstr ""
-#: common/models.py:2088 part/templates/part/detail.html:41
+#: common/models.py:2074 part/templates/part/detail.html:41
msgid "Part Scheduling"
msgstr ""
-#: common/models.py:2089
+#: common/models.py:2075
msgid "Display part scheduling information"
msgstr ""
-#: common/models.py:2095 part/templates/part/detail.html:62
+#: common/models.py:2081 part/templates/part/detail.html:62
msgid "Part Stocktake"
msgstr ""
-#: common/models.py:2096
+#: common/models.py:2082
msgid "Display part stocktake information (if stocktake functionality is enabled)"
msgstr ""
-#: common/models.py:2102
+#: common/models.py:2088
msgid "Table String Length"
msgstr ""
-#: common/models.py:2103
+#: common/models.py:2089
msgid "Maximimum length limit for strings displayed in table views"
msgstr ""
-#: common/models.py:2112
+#: common/models.py:2098
msgid "Default part label template"
msgstr ""
-#: common/models.py:2113
+#: common/models.py:2099
msgid "The part label template to be automatically selected"
msgstr ""
-#: common/models.py:2121
+#: common/models.py:2107
msgid "Default stock item template"
msgstr ""
-#: common/models.py:2122
+#: common/models.py:2108
msgid "The stock item label template to be automatically selected"
msgstr ""
-#: common/models.py:2130
+#: common/models.py:2116
msgid "Default stock location label template"
msgstr ""
-#: common/models.py:2131
+#: common/models.py:2117
msgid "The stock location label template to be automatically selected"
msgstr ""
-#: common/models.py:2177
+#: common/models.py:2163
msgid "Price break quantity"
msgstr ""
-#: common/models.py:2184 company/serializers.py:434 order/admin.py:43
-#: order/models.py:1132 order/models.py:1939
-#: templates/js/translated/company.js:1433 templates/js/translated/part.js:1856
+#: common/models.py:2170 company/serializers.py:491 order/admin.py:43
+#: order/models.py:1145 order/models.py:1952
+#: templates/js/translated/company.js:1854 templates/js/translated/part.js:1855
#: templates/js/translated/pricing.js:621
-#: templates/js/translated/return_order.js:725
+#: templates/js/translated/return_order.js:737
msgid "Price"
msgstr "Цена"
-#: common/models.py:2185
+#: common/models.py:2171
msgid "Unit price at specified quantity"
msgstr ""
-#: common/models.py:2345 common/models.py:2523
+#: common/models.py:2331 common/models.py:2509
msgid "Endpoint"
msgstr ""
-#: common/models.py:2346
+#: common/models.py:2332
msgid "Endpoint at which this webhook is received"
msgstr ""
-#: common/models.py:2355
+#: common/models.py:2341
msgid "Name for this webhook"
msgstr ""
-#: common/models.py:2360 part/admin.py:50 part/models.py:1023
-#: plugin/models.py:47 templates/js/translated/table_filters.js:105
-#: templates/js/translated/table_filters.js:189
-#: templates/js/translated/table_filters.js:434
-#: templates/js/translated/table_filters.js:450
-#: templates/js/translated/table_filters.js:629
+#: common/models.py:2346 part/admin.py:50 part/models.py:1024
+#: plugin/models.py:48 templates/js/translated/table_filters.js:111
+#: templates/js/translated/table_filters.js:195
+#: templates/js/translated/table_filters.js:440
+#: templates/js/translated/table_filters.js:456
+#: templates/js/translated/table_filters.js:651
msgid "Active"
msgstr ""
-#: common/models.py:2361
+#: common/models.py:2347
msgid "Is this webhook active"
msgstr ""
-#: common/models.py:2375
+#: common/models.py:2361
msgid "Token"
msgstr ""
-#: common/models.py:2376
+#: common/models.py:2362
msgid "Token for access"
msgstr ""
-#: common/models.py:2383
+#: common/models.py:2369
msgid "Secret"
msgstr ""
-#: common/models.py:2384
+#: common/models.py:2370
msgid "Shared secret for HMAC"
msgstr ""
-#: common/models.py:2490
+#: common/models.py:2476
msgid "Message ID"
msgstr ""
-#: common/models.py:2491
+#: common/models.py:2477
msgid "Unique identifier for this message"
msgstr ""
-#: common/models.py:2499
+#: common/models.py:2485
msgid "Host"
msgstr ""
-#: common/models.py:2500
+#: common/models.py:2486
msgid "Host from which this message was received"
msgstr ""
-#: common/models.py:2507
+#: common/models.py:2493
msgid "Header"
msgstr ""
-#: common/models.py:2508
+#: common/models.py:2494
msgid "Header of this message"
msgstr ""
-#: common/models.py:2514
+#: common/models.py:2500
msgid "Body"
msgstr ""
-#: common/models.py:2515
+#: common/models.py:2501
msgid "Body of this message"
msgstr ""
-#: common/models.py:2524
+#: common/models.py:2510
msgid "Endpoint on which this message was received"
msgstr ""
-#: common/models.py:2529
+#: common/models.py:2515
msgid "Worked on"
msgstr ""
-#: common/models.py:2530
+#: common/models.py:2516
msgid "Was the work on this message finished?"
msgstr ""
-#: common/models.py:2684
+#: common/models.py:2670
msgid "Id"
msgstr ""
-#: common/models.py:2690 templates/js/translated/news.js:44
+#: common/models.py:2676 templates/js/translated/company.js:996
+#: templates/js/translated/news.js:44
msgid "Title"
msgstr ""
-#: common/models.py:2700 templates/js/translated/news.js:60
+#: common/models.py:2686 templates/js/translated/news.js:60
msgid "Published"
msgstr ""
-#: common/models.py:2705 templates/InvenTree/settings/plugin_settings.html:32
+#: common/models.py:2691 templates/InvenTree/settings/plugin_settings.html:32
#: templates/js/translated/news.js:56 templates/js/translated/plugin.js:106
msgid "Author"
msgstr ""
-#: common/models.py:2710 templates/js/translated/news.js:52
+#: common/models.py:2696 templates/js/translated/news.js:52
msgid "Summary"
msgstr ""
-#: common/models.py:2715
+#: common/models.py:2701
msgid "Read"
msgstr ""
-#: common/models.py:2716
+#: common/models.py:2702
msgid "Was this news item read?"
msgstr ""
-#: common/models.py:2736 company/models.py:143 part/models.py:914
+#: common/models.py:2722 company/models.py:139 part/models.py:915
#: report/templates/report/inventree_bill_of_materials_report.html:126
#: report/templates/report/inventree_bill_of_materials_report.html:148
#: report/templates/report/inventree_return_order_report_base.html:35
@@ -3422,7 +3400,7 @@ msgstr ""
msgid "Image"
msgstr "Изображение"
-#: common/models.py:2737
+#: common/models.py:2723
msgid "Image file"
msgstr ""
@@ -3499,7 +3477,7 @@ msgstr "Описание компании"
#: company/models.py:113 company/templates/company/company_base.html:101
#: templates/InvenTree/settings/plugin_settings.html:54
-#: templates/js/translated/company.js:514
+#: templates/js/translated/company.js:521
msgid "Website"
msgstr "Сайт"
@@ -3507,303 +3485,387 @@ msgstr "Сайт"
msgid "Company website URL"
msgstr "Сайт компании"
-#: company/models.py:118 company/templates/company/company_base.html:119
-msgid "Address"
-msgstr "Адрес"
-
-#: company/models.py:119
-msgid "Company address"
-msgstr "Адрес компании"
-
-#: company/models.py:122
+#: company/models.py:118
msgid "Phone number"
msgstr "Телефон"
-#: company/models.py:123
+#: company/models.py:119
msgid "Contact phone number"
msgstr "Контактный телефон"
-#: company/models.py:126 company/templates/company/company_base.html:133
+#: company/models.py:122 company/templates/company/company_base.html:133
#: templates/InvenTree/settings/user.html:49
-#: templates/js/translated/company.js:659
+#: templates/js/translated/company.js:666
msgid "Email"
msgstr "EMail"
-#: company/models.py:126
+#: company/models.py:122
msgid "Contact email address"
msgstr "Контактный EMail"
-#: company/models.py:129 company/templates/company/company_base.html:140
-#: order/models.py:266 order/templates/order/order_base.html:207
+#: company/models.py:125 company/templates/company/company_base.html:140
+#: order/models.py:270 order/templates/order/order_base.html:203
#: order/templates/order/return_order_base.html:175
#: order/templates/order/sales_order_base.html:215
msgid "Contact"
msgstr "Контакт"
-#: company/models.py:130
+#: company/models.py:126
msgid "Point of contact"
msgstr "Контактное лицо"
-#: company/models.py:132
+#: company/models.py:128
msgid "Link to external company information"
msgstr "Ссылка на описание компании"
-#: company/models.py:146
+#: company/models.py:142
msgid "is customer"
msgstr "покупатель"
-#: company/models.py:146
+#: company/models.py:142
msgid "Do you sell items to this company?"
msgstr "Вы продаёте детали этой компании?"
-#: company/models.py:148
+#: company/models.py:144
msgid "is supplier"
msgstr "поставщик"
-#: company/models.py:148
+#: company/models.py:144
msgid "Do you purchase items from this company?"
msgstr "Вы закупаете детали у этой компании?"
-#: company/models.py:150
+#: company/models.py:146
msgid "is manufacturer"
msgstr "производитель"
-#: company/models.py:150
+#: company/models.py:146
msgid "Does this company manufacture parts?"
msgstr "Является ли компания производителем деталей?"
-#: company/models.py:157
+#: company/models.py:153
msgid "Default currency used for this company"
msgstr "Для этой компании используется валюта по умолчанию"
-#: company/models.py:223 company/templates/company/company_base.html:8
+#: company/models.py:235 company/models.py:328
+#: company/templates/company/company_base.html:8
#: company/templates/company/company_base.html:12
-#: templates/InvenTree/search.html:178 templates/js/translated/company.js:487
+#: templates/InvenTree/search.html:178 templates/js/translated/company.js:494
msgid "Company"
msgstr "Компания"
-#: company/models.py:278 company/models.py:553 stock/models.py:675
-#: stock/serializers.py:155 stock/templates/stock/item_base.html:143
-#: templates/js/translated/bom.js:621
+#: company/models.py:324
+msgid "Company already has a primary address"
+msgstr ""
+
+#: company/models.py:329
+msgid "Select company"
+msgstr ""
+
+#: company/models.py:332
+msgid "Address title"
+msgstr ""
+
+#: company/models.py:333
+msgid "Title describing the address entry"
+msgstr ""
+
+#: company/models.py:337
+msgid "Primary address"
+msgstr ""
+
+#: company/models.py:338
+msgid "Set as primary address"
+msgstr ""
+
+#: company/models.py:341 templates/js/translated/company.js:941
+#: templates/js/translated/company.js:1002
+msgid "Line 1"
+msgstr ""
+
+#: company/models.py:342
+msgid "Address line 1"
+msgstr ""
+
+#: company/models.py:346 templates/js/translated/company.js:942
+#: templates/js/translated/company.js:1008
+msgid "Line 2"
+msgstr ""
+
+#: company/models.py:347
+msgid "Address line 2"
+msgstr ""
+
+#: company/models.py:351 company/models.py:352
+#: templates/js/translated/company.js:1014
+msgid "Postal code"
+msgstr ""
+
+#: company/models.py:356
+msgid "City/Region"
+msgstr ""
+
+#: company/models.py:357
+msgid "Postal code city/region"
+msgstr ""
+
+#: company/models.py:361
+msgid "State/Province"
+msgstr ""
+
+#: company/models.py:362
+msgid "State or province"
+msgstr ""
+
+#: company/models.py:366 templates/js/translated/company.js:1032
+msgid "Country"
+msgstr ""
+
+#: company/models.py:367
+msgid "Address country"
+msgstr ""
+
+#: company/models.py:371
+msgid "Courier shipping notes"
+msgstr ""
+
+#: company/models.py:372
+msgid "Notes for shipping courier"
+msgstr ""
+
+#: company/models.py:376
+msgid "Internal shipping notes"
+msgstr ""
+
+#: company/models.py:377
+msgid "Shipping notes for internal use"
+msgstr ""
+
+#: company/models.py:382
+msgid "Link to address information (external)"
+msgstr ""
+
+#: company/models.py:427 company/models.py:702 stock/models.py:675
+#: stock/serializers.py:204 stock/templates/stock/item_base.html:143
+#: templates/js/translated/bom.js:622
msgid "Base Part"
msgstr "Базовая деталь"
-#: company/models.py:282 company/models.py:557
+#: company/models.py:431 company/models.py:706
msgid "Select part"
msgstr "Выберите деталь"
-#: company/models.py:293 company/templates/company/company_base.html:77
+#: company/models.py:442 company/templates/company/company_base.html:77
#: company/templates/company/manufacturer_part.html:90
-#: company/templates/company/supplier_part.html:146 part/serializers.py:354
+#: company/templates/company/supplier_part.html:146 part/serializers.py:404
#: stock/templates/stock/item_base.html:208
-#: templates/js/translated/company.js:498
-#: templates/js/translated/company.js:824
-#: templates/js/translated/company.js:954
-#: templates/js/translated/company.js:1221
-#: templates/js/translated/table_filters.js:709
+#: templates/js/translated/company.js:505
+#: templates/js/translated/company.js:1149
+#: templates/js/translated/company.js:1327
+#: templates/js/translated/company.js:1642
+#: templates/js/translated/table_filters.js:731
msgid "Manufacturer"
msgstr "Производитель"
-#: company/models.py:294
+#: company/models.py:443
msgid "Select manufacturer"
msgstr "Выберите производителя"
-#: company/models.py:300 company/templates/company/manufacturer_part.html:101
-#: company/templates/company/supplier_part.html:154 part/serializers.py:360
-#: templates/js/translated/company.js:340
-#: templates/js/translated/company.js:823
-#: templates/js/translated/company.js:970
-#: templates/js/translated/company.js:1240 templates/js/translated/part.js:1773
-#: templates/js/translated/purchase_order.js:1814
-#: templates/js/translated/purchase_order.js:2021
+#: company/models.py:449 company/templates/company/manufacturer_part.html:101
+#: company/templates/company/supplier_part.html:154 part/serializers.py:410
+#: templates/js/translated/company.js:350
+#: templates/js/translated/company.js:1148
+#: templates/js/translated/company.js:1343
+#: templates/js/translated/company.js:1661 templates/js/translated/part.js:1772
+#: templates/js/translated/purchase_order.js:1829
+#: templates/js/translated/purchase_order.js:2031
msgid "MPN"
msgstr ""
-#: company/models.py:301
+#: company/models.py:450
msgid "Manufacturer Part Number"
msgstr "Код производителя"
-#: company/models.py:307
+#: company/models.py:456
msgid "URL for external manufacturer part link"
msgstr "Ссылка на сайт производителя"
-#: company/models.py:313
+#: company/models.py:462
msgid "Manufacturer part description"
msgstr ""
-#: company/models.py:360 company/models.py:384 company/models.py:578
+#: company/models.py:509 company/models.py:533 company/models.py:727
#: company/templates/company/manufacturer_part.html:7
#: company/templates/company/manufacturer_part.html:24
#: stock/templates/stock/item_base.html:218
msgid "Manufacturer Part"
msgstr "Деталь производителя"
-#: company/models.py:391
+#: company/models.py:540
msgid "Parameter name"
msgstr "Наименование параметра"
-#: company/models.py:397
+#: company/models.py:546
#: report/templates/report/inventree_test_report_base.html:104
-#: stock/models.py:2255 templates/js/translated/company.js:872
-#: templates/js/translated/company.js:1077 templates/js/translated/part.js:1465
-#: templates/js/translated/stock.js:1446
+#: stock/models.py:2255 templates/js/translated/company.js:1197
+#: templates/js/translated/company.js:1450 templates/js/translated/part.js:1464
+#: templates/js/translated/stock.js:1445
msgid "Value"
msgstr "Значение"
-#: company/models.py:398
+#: company/models.py:547
msgid "Parameter value"
msgstr "Значение параметра"
-#: company/models.py:404 company/templates/company/supplier_part.html:169
-#: part/admin.py:40 part/models.py:987 part/models.py:3407
+#: company/models.py:553 company/templates/company/supplier_part.html:169
+#: part/admin.py:40 part/models.py:988 part/models.py:3441
#: part/templates/part/part_base.html:286
-#: templates/js/translated/company.js:1083 templates/js/translated/part.js:1484
-#: templates/js/translated/part.js:1588 templates/js/translated/part.js:2262
+#: templates/js/translated/company.js:1456 templates/js/translated/part.js:1483
+#: templates/js/translated/part.js:1587 templates/js/translated/part.js:2338
msgid "Units"
msgstr "Ед.изм"
-#: company/models.py:405
+#: company/models.py:554
msgid "Parameter units"
msgstr "Единицы измерения"
-#: company/models.py:498
+#: company/models.py:647
msgid "Pack units must be compatible with the base part units"
msgstr ""
-#: company/models.py:504
+#: company/models.py:653
msgid "Pack units must be greater than zero"
msgstr ""
-#: company/models.py:520
+#: company/models.py:669
msgid "Linked manufacturer part must reference the same base part"
msgstr ""
-#: company/models.py:564 company/templates/company/company_base.html:82
-#: company/templates/company/supplier_part.html:130 order/models.py:382
-#: order/templates/order/order_base.html:140 part/bom.py:285 part/bom.py:313
-#: part/serializers.py:343 stock/templates/stock/item_base.html:225
+#: company/models.py:713 company/templates/company/company_base.html:82
+#: company/templates/company/supplier_part.html:130 order/models.py:395
+#: order/templates/order/order_base.html:136 part/bom.py:285 part/bom.py:313
+#: part/serializers.py:393 stock/templates/stock/item_base.html:225
#: templates/email/overdue_purchase_order.html:16
-#: templates/js/translated/company.js:339
-#: templates/js/translated/company.js:502
-#: templates/js/translated/company.js:1194 templates/js/translated/part.js:1741
+#: templates/js/translated/company.js:349
+#: templates/js/translated/company.js:509
+#: templates/js/translated/company.js:1615 templates/js/translated/part.js:1740
#: templates/js/translated/pricing.js:498
-#: templates/js/translated/purchase_order.js:1653
-#: templates/js/translated/table_filters.js:713
+#: templates/js/translated/purchase_order.js:1668
+#: templates/js/translated/table_filters.js:735
msgid "Supplier"
msgstr "Поставщик"
-#: company/models.py:565
+#: company/models.py:714
msgid "Select supplier"
msgstr "Выберите поставщика"
-#: company/models.py:570 company/templates/company/supplier_part.html:140
-#: part/bom.py:286 part/bom.py:314 part/serializers.py:349
-#: templates/js/translated/company.js:338 templates/js/translated/part.js:1759
+#: company/models.py:719 company/templates/company/supplier_part.html:140
+#: part/bom.py:286 part/bom.py:314 part/serializers.py:399
+#: templates/js/translated/company.js:348 templates/js/translated/part.js:1758
#: templates/js/translated/pricing.js:510
-#: templates/js/translated/purchase_order.js:1813
-#: templates/js/translated/purchase_order.js:1996
+#: templates/js/translated/purchase_order.js:1828
+#: templates/js/translated/purchase_order.js:2006
msgid "SKU"
msgstr ""
-#: company/models.py:571 part/serializers.py:349
+#: company/models.py:720 part/serializers.py:399
msgid "Supplier stock keeping unit"
msgstr "Код поставщика"
-#: company/models.py:579
+#: company/models.py:728
msgid "Select manufacturer part"
msgstr ""
-#: company/models.py:585
+#: company/models.py:734
msgid "URL for external supplier part link"
msgstr "Ссылка на сайт поставщика"
-#: company/models.py:591
+#: company/models.py:740
msgid "Supplier part description"
msgstr ""
-#: company/models.py:596 company/templates/company/supplier_part.html:188
-#: part/admin.py:279 part/models.py:3801 part/templates/part/upload_bom.html:59
+#: company/models.py:745 company/templates/company/supplier_part.html:188
+#: part/admin.py:279 part/models.py:3845 part/templates/part/upload_bom.html:59
#: report/templates/report/inventree_bill_of_materials_report.html:140
#: report/templates/report/inventree_po_report_base.html:32
#: report/templates/report/inventree_return_order_report_base.html:27
#: report/templates/report/inventree_so_report_base.html:32
-#: stock/serializers.py:418
+#: stock/serializers.py:484
msgid "Note"
msgstr "Заметка"
-#: company/models.py:600 part/models.py:1919
+#: company/models.py:749 part/models.py:1921
msgid "base cost"
msgstr ""
-#: company/models.py:600 part/models.py:1919
+#: company/models.py:749 part/models.py:1921
msgid "Minimum charge (e.g. stocking fee)"
msgstr ""
-#: company/models.py:602 company/templates/company/supplier_part.html:161
+#: company/models.py:751 company/templates/company/supplier_part.html:161
#: stock/admin.py:119 stock/models.py:701
#: stock/templates/stock/item_base.html:241
-#: templates/js/translated/company.js:1256
-#: templates/js/translated/stock.js:2160
+#: templates/js/translated/company.js:1677
+#: templates/js/translated/stock.js:2317
msgid "Packaging"
msgstr "Упаковка"
-#: company/models.py:602
+#: company/models.py:751
msgid "Part packaging"
msgstr ""
-#: company/models.py:606 templates/js/translated/company.js:1261
-#: templates/js/translated/part.js:1793 templates/js/translated/part.js:1848
-#: templates/js/translated/purchase_order.js:300
-#: templates/js/translated/purchase_order.js:827
-#: templates/js/translated/purchase_order.js:1073
-#: templates/js/translated/purchase_order.js:2052
-#: templates/js/translated/purchase_order.js:2069
+#: company/models.py:755 templates/js/translated/company.js:1682
+#: templates/js/translated/part.js:1792 templates/js/translated/part.js:1847
+#: templates/js/translated/purchase_order.js:311
+#: templates/js/translated/purchase_order.js:842
+#: templates/js/translated/purchase_order.js:1088
+#: templates/js/translated/purchase_order.js:2062
+#: templates/js/translated/purchase_order.js:2079
msgid "Pack Quantity"
msgstr ""
-#: company/models.py:607
+#: company/models.py:756
msgid "Total quantity supplied in a single pack. Leave empty for single items."
msgstr ""
-#: company/models.py:624 part/models.py:1921
+#: company/models.py:773 part/models.py:1923
msgid "multiple"
msgstr ""
-#: company/models.py:624
+#: company/models.py:773
msgid "Order multiple"
msgstr ""
-#: company/models.py:632 company/templates/company/supplier_part.html:115
+#: company/models.py:781 company/templates/company/supplier_part.html:115
#: templates/email/build_order_required_stock.html:19
#: templates/email/low_stock_notification.html:17
-#: templates/js/translated/bom.js:1127 templates/js/translated/build.js:2136
-#: templates/js/translated/build.js:3045
-#: templates/js/translated/model_renderers.js:205
-#: templates/js/translated/part.js:670 templates/js/translated/part.js:672
-#: templates/js/translated/part.js:677
-#: templates/js/translated/table_filters.js:286
-#: templates/js/translated/table_filters.js:492
+#: templates/js/translated/bom.js:1145 templates/js/translated/build.js:2490
+#: templates/js/translated/index.js:118
+#: templates/js/translated/model_renderers.js:219
+#: templates/js/translated/part.js:669 templates/js/translated/part.js:671
+#: templates/js/translated/part.js:676
+#: templates/js/translated/table_filters.js:292
+#: templates/js/translated/table_filters.js:510
msgid "Available"
msgstr ""
-#: company/models.py:633
+#: company/models.py:782
msgid "Quantity available from supplier"
msgstr ""
-#: company/models.py:637
+#: company/models.py:786
msgid "Availability Updated"
msgstr ""
-#: company/models.py:638
+#: company/models.py:787
msgid "Date of last update of availability data"
msgstr ""
-#: company/serializers.py:99
+#: company/serializers.py:156
msgid "Default currency used for this supplier"
msgstr "Для этого поставщика используется валюта по умолчанию"
#: company/templates/company/company_base.html:22
-#: templates/js/translated/purchase_order.js:228
+#: templates/js/translated/purchase_order.js:239
msgid "Create Purchase Order"
msgstr "Создать заказ на закупку"
@@ -3816,7 +3878,7 @@ msgid "Edit company information"
msgstr "Редактировать информацию о компании"
#: company/templates/company/company_base.html:34
-#: templates/js/translated/company.js:436
+#: templates/js/translated/company.js:443
msgid "Edit Company"
msgstr "Редактировать компанию"
@@ -3856,17 +3918,17 @@ msgstr "Скачать изображение по ссылке"
msgid "Delete image"
msgstr ""
-#: company/templates/company/company_base.html:87 order/models.py:779
-#: order/models.py:1738 order/templates/order/return_order_base.html:132
+#: company/templates/company/company_base.html:87 order/models.py:792
+#: order/models.py:1751 order/templates/order/return_order_base.html:132
#: order/templates/order/sales_order_base.html:145 stock/models.py:720
-#: stock/models.py:721 stock/serializers.py:825
+#: stock/models.py:721 stock/serializers.py:942
#: stock/templates/stock/item_base.html:401
#: templates/email/overdue_sales_order.html:16
-#: templates/js/translated/company.js:494
-#: templates/js/translated/return_order.js:284
-#: templates/js/translated/sales_order.js:772
-#: templates/js/translated/stock.js:2696
-#: templates/js/translated/table_filters.js:717
+#: templates/js/translated/company.js:501
+#: templates/js/translated/return_order.js:296
+#: templates/js/translated/sales_order.js:784
+#: templates/js/translated/stock.js:2827
+#: templates/js/translated/table_filters.js:739
msgid "Customer"
msgstr "Покупатель"
@@ -3874,6 +3936,13 @@ msgstr "Покупатель"
msgid "Uses default currency"
msgstr "Использовать валюту по умолчанию"
+#: company/templates/company/company_base.html:119 order/models.py:279
+#: order/templates/order/order_base.html:210
+#: order/templates/order/return_order_base.html:182
+#: order/templates/order/sales_order_base.html:222
+msgid "Address"
+msgstr "Адрес"
+
#: company/templates/company/company_base.html:126
msgid "Phone"
msgstr "Телефон"
@@ -3906,7 +3975,7 @@ msgstr "Скачать изображение"
#: company/templates/company/detail.html:15
#: company/templates/company/manufacturer_part_sidebar.html:7
-#: templates/InvenTree/search.html:120 templates/js/translated/search.js:189
+#: templates/InvenTree/search.html:120 templates/js/translated/search.js:147
msgid "Supplier Parts"
msgstr "Детали поставщиков"
@@ -3916,129 +3985,121 @@ msgstr "Создать новую деталь поставщика"
#: company/templates/company/detail.html:20
#: company/templates/company/manufacturer_part.html:123
-#: part/templates/part/detail.html:381
+#: part/templates/part/detail.html:356
msgid "New Supplier Part"
msgstr "Новая деталь поставщика"
-#: company/templates/company/detail.html:37
-#: company/templates/company/detail.html:85
-#: part/templates/part/category.html:183
-msgid "Order parts"
-msgstr "Заказать детали"
-
-#: company/templates/company/detail.html:42
-#: company/templates/company/detail.html:90
-msgid "Delete parts"
-msgstr "Удалить детали"
-
-#: company/templates/company/detail.html:43
-#: company/templates/company/detail.html:91
-msgid "Delete Parts"
-msgstr "Удалить детали"
-
-#: company/templates/company/detail.html:62 templates/InvenTree/search.html:105
-#: templates/js/translated/search.js:193
+#: company/templates/company/detail.html:41 templates/InvenTree/search.html:105
+#: templates/js/translated/search.js:151
msgid "Manufacturer Parts"
msgstr "Детали производителей"
-#: company/templates/company/detail.html:66
+#: company/templates/company/detail.html:45
msgid "Create new manufacturer part"
msgstr "Создать новую деталь производителя"
-#: company/templates/company/detail.html:67 part/templates/part/detail.html:411
+#: company/templates/company/detail.html:46 part/templates/part/detail.html:376
msgid "New Manufacturer Part"
msgstr "Новая деталь производителя"
-#: company/templates/company/detail.html:108
+#: company/templates/company/detail.html:65
msgid "Supplier Stock"
msgstr "Склад поставщика"
-#: company/templates/company/detail.html:118
+#: company/templates/company/detail.html:75
#: company/templates/company/sidebar.html:12
#: company/templates/company/supplier_part_sidebar.html:7
#: 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:108 part/templates/part/part_sidebar.html:35
-#: templates/InvenTree/index.html:275 templates/InvenTree/search.html:199
+#: part/templates/part/detail.html:106 part/templates/part/part_sidebar.html:35
+#: templates/InvenTree/index.html:227 templates/InvenTree/search.html:199
#: templates/InvenTree/settings/sidebar.html:55
-#: templates/js/translated/search.js:247 templates/navbar.html:50
+#: templates/js/translated/search.js:205 templates/navbar.html:50
#: users/models.py:43
msgid "Purchase Orders"
msgstr "Заказы на закупку"
-#: company/templates/company/detail.html:122
+#: company/templates/company/detail.html:79
#: order/templates/order/purchase_orders.html:17
msgid "Create new purchase order"
msgstr "Создать новый заказ на закупку"
-#: company/templates/company/detail.html:123
+#: company/templates/company/detail.html:80
#: order/templates/order/purchase_orders.html:18
msgid "New Purchase Order"
msgstr "Новый заказ на закупку"
-#: company/templates/company/detail.html:146
+#: company/templates/company/detail.html:101
#: company/templates/company/sidebar.html:21
#: 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:131 part/templates/part/part_sidebar.html:39
-#: templates/InvenTree/index.html:307 templates/InvenTree/search.html:219
+#: part/templates/part/detail.html:127 part/templates/part/part_sidebar.html:39
+#: templates/InvenTree/index.html:259 templates/InvenTree/search.html:219
#: templates/InvenTree/settings/sidebar.html:57
-#: templates/js/translated/search.js:261 templates/navbar.html:62
+#: templates/js/translated/search.js:219 templates/navbar.html:62
#: users/models.py:44
msgid "Sales Orders"
msgstr "Заказы на продажу"
-#: company/templates/company/detail.html:150
+#: company/templates/company/detail.html:105
#: order/templates/order/sales_orders.html:20
msgid "Create new sales order"
msgstr "Создать новый заказ на продажу"
-#: company/templates/company/detail.html:151
+#: company/templates/company/detail.html:106
#: order/templates/order/sales_orders.html:21
msgid "New Sales Order"
msgstr "Новый заказ на продажу"
-#: company/templates/company/detail.html:173
-#: templates/js/translated/build.js:1976
+#: company/templates/company/detail.html:126
msgid "Assigned Stock"
msgstr ""
-#: company/templates/company/detail.html:191
+#: company/templates/company/detail.html:142
#: company/templates/company/sidebar.html:29
#: order/templates/order/return_order_base.html:13
#: order/templates/order/return_orders.html:8
#: order/templates/order/return_orders.html:15
#: templates/InvenTree/settings/sidebar.html:59
-#: templates/js/translated/search.js:274 templates/navbar.html:65
+#: templates/js/translated/search.js:232 templates/navbar.html:65
#: users/models.py:45
msgid "Return Orders"
msgstr ""
-#: company/templates/company/detail.html:195
+#: company/templates/company/detail.html:146
#: order/templates/order/return_orders.html:20
msgid "Create new return order"
msgstr ""
-#: company/templates/company/detail.html:196
+#: company/templates/company/detail.html:147
#: order/templates/order/return_orders.html:21
msgid "New Return Order"
msgstr ""
-#: company/templates/company/detail.html:221
+#: company/templates/company/detail.html:168
msgid "Company Notes"
msgstr "Заметки о компании"
-#: company/templates/company/detail.html:236
+#: company/templates/company/detail.html:183
msgid "Company Contacts"
msgstr ""
-#: company/templates/company/detail.html:240
-#: company/templates/company/detail.html:241
+#: company/templates/company/detail.html:187
+#: company/templates/company/detail.html:188
msgid "Add Contact"
msgstr ""
+#: company/templates/company/detail.html:206
+msgid "Company addresses"
+msgstr ""
+
+#: company/templates/company/detail.html:210
+#: company/templates/company/detail.html:211
+msgid "Add Address"
+msgstr ""
+
#: company/templates/company/index.html:8
msgid "Supplier List"
msgstr "Список поставщиков"
@@ -4050,17 +4111,17 @@ msgstr "Производители"
#: company/templates/company/manufacturer_part.html:35
#: company/templates/company/supplier_part.html:228
-#: part/templates/part/detail.html:111 part/templates/part/part_base.html:85
+#: part/templates/part/detail.html:109 part/templates/part/part_base.html:85
msgid "Order part"
msgstr ""
#: company/templates/company/manufacturer_part.html:39
-#: templates/js/translated/company.js:1001
+#: templates/js/translated/company.js:1374
msgid "Edit manufacturer part"
msgstr ""
#: company/templates/company/manufacturer_part.html:43
-#: templates/js/translated/company.js:1002
+#: templates/js/translated/company.js:1375
msgid "Delete manufacturer part"
msgstr ""
@@ -4080,40 +4141,22 @@ msgstr ""
msgid "Suppliers"
msgstr "Поставщики"
-#: company/templates/company/manufacturer_part.html:136
-#: part/templates/part/detail.html:392
-msgid "Delete supplier parts"
-msgstr "Удалить деталь поставщика"
-
-#: company/templates/company/manufacturer_part.html:136
-#: company/templates/company/manufacturer_part.html:183
-#: part/templates/part/detail.html:393 part/templates/part/detail.html:423
-#: templates/js/translated/forms.js:506 templates/js/translated/helpers.js:105
-#: templates/js/translated/part.js:370 templates/js/translated/pricing.js:629
-#: templates/js/translated/stock.js:216 users/models.py:247
-msgid "Delete"
-msgstr "Удалить"
-
-#: company/templates/company/manufacturer_part.html:166
+#: company/templates/company/manufacturer_part.html:156
#: company/templates/company/manufacturer_part_sidebar.html:5
#: part/templates/part/category_sidebar.html:20
-#: part/templates/part/detail.html:208 part/templates/part/part_sidebar.html:8
+#: part/templates/part/detail.html:195 part/templates/part/part_sidebar.html:8
msgid "Parameters"
msgstr "Параметры"
-#: company/templates/company/manufacturer_part.html:170
-#: part/templates/part/detail.html:213
+#: company/templates/company/manufacturer_part.html:160
+#: part/templates/part/detail.html:200
#: templates/InvenTree/settings/category.html:12
#: templates/InvenTree/settings/part_parameters.html:12
msgid "New Parameter"
msgstr "Новый параметр"
-#: company/templates/company/manufacturer_part.html:183
-msgid "Delete parameters"
-msgstr "Удалить параметры"
-
-#: company/templates/company/manufacturer_part.html:226
-#: templates/js/translated/part.js:1396
+#: company/templates/company/manufacturer_part.html:206
+#: templates/js/translated/part.js:1395
msgid "Add Parameter"
msgstr "Добавить параметр"
@@ -4137,23 +4180,28 @@ msgstr ""
msgid "Contacts"
msgstr ""
+#: company/templates/company/sidebar.html:35
+msgid "Addresses"
+msgstr ""
+
#: company/templates/company/supplier_part.html:7
#: company/templates/company/supplier_part.html:24 stock/models.py:684
#: stock/templates/stock/item_base.html:234
-#: templates/js/translated/company.js:1210
-#: templates/js/translated/purchase_order.js:747
-#: templates/js/translated/stock.js:2016
+#: templates/js/translated/company.js:1631
+#: templates/js/translated/purchase_order.js:758
+#: templates/js/translated/stock.js:2173
msgid "Supplier Part"
msgstr "Деталь поставщика"
#: company/templates/company/supplier_part.html:51
+#: templates/js/translated/company.js:1557
msgid "Supplier part actions"
msgstr ""
#: company/templates/company/supplier_part.html:56
#: company/templates/company/supplier_part.html:57
#: company/templates/company/supplier_part.html:229
-#: part/templates/part/detail.html:112
+#: part/templates/part/detail.html:110
msgid "Order Part"
msgstr ""
@@ -4164,13 +4212,13 @@ msgstr ""
#: company/templates/company/supplier_part.html:64
#: company/templates/company/supplier_part.html:65
-#: templates/js/translated/company.js:283
+#: templates/js/translated/company.js:293
msgid "Edit Supplier Part"
msgstr "Редактировать деталь поставщика"
#: company/templates/company/supplier_part.html:69
#: company/templates/company/supplier_part.html:70
-#: templates/js/translated/company.js:258
+#: templates/js/translated/company.js:268
msgid "Duplicate Supplier Part"
msgstr ""
@@ -4197,7 +4245,7 @@ msgstr "Создать единицу хранения"
#: company/templates/company/supplier_part.html:211
#: part/templates/part/detail.html:25 stock/templates/stock/location.html:198
-#: templates/js/translated/stock.js:504
+#: templates/js/translated/stock.js:503
msgid "New Stock Item"
msgstr "Новая единица хранения"
@@ -4205,37 +4253,37 @@ msgstr "Новая единица хранения"
msgid "Supplier Part Orders"
msgstr ""
-#: company/templates/company/supplier_part.html:249
+#: company/templates/company/supplier_part.html:247
msgid "Pricing Information"
msgstr "Информация о цене"
-#: company/templates/company/supplier_part.html:254
-#: templates/js/translated/company.js:387
+#: company/templates/company/supplier_part.html:252
+#: templates/js/translated/company.js:397
#: templates/js/translated/pricing.js:684
msgid "Add Price Break"
msgstr ""
-#: company/templates/company/supplier_part.html:281
+#: company/templates/company/supplier_part.html:277
msgid "Supplier Part QR Code"
msgstr ""
-#: company/templates/company/supplier_part.html:292
+#: company/templates/company/supplier_part.html:288
msgid "Link Barcode to Supplier Part"
msgstr ""
-#: company/templates/company/supplier_part.html:365
+#: company/templates/company/supplier_part.html:361
msgid "Update Part Availability"
msgstr ""
#: company/templates/company/supplier_part_sidebar.html:5 part/tasks.py:293
-#: part/templates/part/category.html:199
+#: part/templates/part/category.html:182
#: part/templates/part/category_sidebar.html:17 stock/admin.py:47
-#: stock/templates/stock/location.html:168
+#: stock/serializers.py:662 stock/templates/stock/location.html:168
#: stock/templates/stock/location.html:182
#: stock/templates/stock/location.html:194
#: stock/templates/stock/location_sidebar.html:7
-#: templates/InvenTree/search.html:155 templates/js/translated/part.js:1034
-#: templates/js/translated/search.js:214 templates/js/translated/stock.js:2514
+#: templates/InvenTree/search.html:155 templates/js/translated/part.js:1033
+#: templates/js/translated/search.js:172 templates/js/translated/stock.js:2645
#: users/models.py:41
msgid "Stock Items"
msgstr "Детали на складе"
@@ -4261,7 +4309,7 @@ msgstr "Покупатели"
msgid "New Customer"
msgstr "Новый покупатель"
-#: company/views.py:52 templates/js/translated/search.js:234
+#: company/views.py:52 templates/js/translated/search.js:192
msgid "Companies"
msgstr "Компании"
@@ -4269,72 +4317,76 @@ msgstr "Компании"
msgid "New Company"
msgstr "Новая компания"
-#: label/models.py:104
+#: label/models.py:112
msgid "Label name"
msgstr ""
-#: label/models.py:111
+#: label/models.py:119
msgid "Label description"
msgstr ""
-#: label/models.py:118
+#: label/models.py:126
msgid "Label"
msgstr ""
-#: label/models.py:119
+#: label/models.py:127
msgid "Label template file"
msgstr ""
-#: label/models.py:125 report/models.py:273
+#: label/models.py:133 report/models.py:273
msgid "Enabled"
msgstr ""
-#: label/models.py:126
+#: label/models.py:134
msgid "Label template is enabled"
msgstr ""
-#: label/models.py:131
+#: label/models.py:139
msgid "Width [mm]"
msgstr "Ширина [мм]"
-#: label/models.py:132
+#: label/models.py:140
msgid "Label width, specified in mm"
msgstr ""
-#: label/models.py:138
+#: label/models.py:146
msgid "Height [mm]"
msgstr "Высота [мм]"
-#: label/models.py:139
+#: label/models.py:147
msgid "Label height, specified in mm"
msgstr ""
-#: label/models.py:145 report/models.py:266
+#: label/models.py:153 report/models.py:266
msgid "Filename Pattern"
msgstr ""
-#: label/models.py:146
+#: label/models.py:154
msgid "Pattern for generating label filenames"
msgstr ""
-#: label/models.py:242
+#: label/models.py:250
msgid "Query filters (comma-separated list of key=value pairs),"
msgstr ""
-#: label/models.py:243 label/models.py:284 label/models.py:312
-#: report/models.py:294 report/models.py:452 report/models.py:490
-#: report/models.py:528
+#: label/models.py:251 label/models.py:292 label/models.py:320
+#: label/models.py:356 report/models.py:294 report/models.py:454
+#: report/models.py:492 report/models.py:530
msgid "Filters"
msgstr "Фильтры"
-#: label/models.py:283
+#: label/models.py:291
msgid "Query filters (comma-separated list of key=value pairs"
msgstr ""
-#: label/models.py:311
+#: label/models.py:319
msgid "Part query filters (comma-separated value of key=value pairs)"
msgstr ""
+#: label/models.py:355
+msgid "Query filters (comma-separated list of key=value pairs)"
+msgstr ""
+
#: label/templates/label/part/part_label.html:31
#: label/templates/label/stockitem/qr.html:21
#: label/templates/label/stocklocation/qr.html:21
@@ -4352,8 +4404,8 @@ msgstr ""
#: report/templates/report/inventree_po_report_base.html:31
#: report/templates/report/inventree_so_report_base.html:31
#: templates/js/translated/order.js:327
-#: templates/js/translated/purchase_order.js:2093
-#: templates/js/translated/sales_order.js:1827
+#: templates/js/translated/purchase_order.js:2103
+#: templates/js/translated/sales_order.js:1839
msgid "Total Price"
msgstr "Общая стоимость"
@@ -4361,30 +4413,30 @@ msgstr "Общая стоимость"
msgid "No matching purchase order found"
msgstr ""
-#: order/api.py:1452 order/models.py:1178 order/models.py:1262
+#: order/api.py:1452 order/models.py:1191 order/models.py:1275
#: order/templates/order/order_base.html:9
#: order/templates/order/order_base.html:18
#: report/templates/report/inventree_po_report_base.html:14
#: stock/templates/stock/item_base.html:177
#: templates/email/overdue_purchase_order.html:15
-#: templates/js/translated/part.js:1718 templates/js/translated/pricing.js:790
-#: templates/js/translated/purchase_order.js:154
-#: templates/js/translated/purchase_order.js:748
-#: templates/js/translated/purchase_order.js:1637
-#: templates/js/translated/stock.js:1996 templates/js/translated/stock.js:2644
+#: templates/js/translated/part.js:1717 templates/js/translated/pricing.js:790
+#: templates/js/translated/purchase_order.js:165
+#: templates/js/translated/purchase_order.js:759
+#: templates/js/translated/purchase_order.js:1652
+#: templates/js/translated/stock.js:2153 templates/js/translated/stock.js:2775
msgid "Purchase Order"
msgstr "Заказ на закупку"
-#: order/api.py:1456 order/models.py:1909 order/models.py:1955
+#: order/api.py:1456 order/models.py:1922 order/models.py:1968
#: order/templates/order/return_order_base.html:9
#: order/templates/order/return_order_base.html:28
#: report/templates/report/inventree_return_order_report_base.html:13
-#: templates/js/translated/return_order.js:269
-#: templates/js/translated/stock.js:2678
+#: templates/js/translated/return_order.js:281
+#: templates/js/translated/stock.js:2809
msgid "Return Order"
msgstr ""
-#: order/api.py:1458 templates/js/translated/sales_order.js:1030
+#: order/api.py:1458 templates/js/translated/sales_order.js:1042
msgid "Unknown"
msgstr ""
@@ -4392,11 +4444,11 @@ msgstr ""
msgid "Total price for this order"
msgstr ""
-#: order/models.py:79 order/serializers.py:49
+#: order/models.py:79 order/serializers.py:50
msgid "Order Currency"
msgstr ""
-#: order/models.py:81 order/serializers.py:50
+#: order/models.py:81 order/serializers.py:51
msgid "Currency for this order (leave blank to use company default)"
msgstr ""
@@ -4408,492 +4460,496 @@ msgstr ""
msgid "Order description (optional)"
msgstr ""
-#: order/models.py:234
+#: order/models.py:237
msgid "Select project code for this order"
msgstr ""
-#: order/models.py:236 order/models.py:1094 order/models.py:1454
+#: order/models.py:240 order/models.py:1107 order/models.py:1467
msgid "Link to external page"
msgstr ""
-#: order/models.py:241
+#: order/models.py:245
msgid "Expected date for order delivery. Order will be overdue after this date."
msgstr ""
-#: order/models.py:250
+#: order/models.py:254
msgid "Created By"
msgstr ""
-#: order/models.py:257
+#: order/models.py:261
msgid "User or group responsible for this order"
msgstr ""
-#: order/models.py:267
+#: order/models.py:271
msgid "Point of contact for this order"
msgstr ""
-#: order/models.py:360 order/models.py:766
+#: order/models.py:280
+msgid "Company address for this order"
+msgstr ""
+
+#: order/models.py:373 order/models.py:779
msgid "Order reference"
msgstr ""
-#: order/models.py:368 order/models.py:791
+#: order/models.py:381 order/models.py:804
msgid "Purchase order status"
msgstr ""
-#: order/models.py:383
+#: order/models.py:396
msgid "Company from which the items are being ordered"
msgstr "Компания, в которой детали заказываются"
-#: order/models.py:391 order/templates/order/order_base.html:152
-#: templates/js/translated/purchase_order.js:1662
+#: order/models.py:404 order/templates/order/order_base.html:148
+#: templates/js/translated/purchase_order.js:1677
msgid "Supplier Reference"
msgstr ""
-#: order/models.py:391
+#: order/models.py:404
msgid "Supplier order reference code"
msgstr ""
-#: order/models.py:398
+#: order/models.py:411
msgid "received by"
msgstr ""
-#: order/models.py:403 order/models.py:1761
+#: order/models.py:416 order/models.py:1774
msgid "Issue Date"
msgstr ""
-#: order/models.py:404 order/models.py:1762
+#: order/models.py:417 order/models.py:1775
msgid "Date order was issued"
msgstr ""
-#: order/models.py:410 order/models.py:1768
+#: order/models.py:423 order/models.py:1781
msgid "Date order was completed"
msgstr ""
-#: order/models.py:445
+#: order/models.py:458
msgid "Part supplier must match PO supplier"
msgstr ""
-#: order/models.py:606
+#: order/models.py:619
msgid "Quantity must be a positive number"
msgstr ""
-#: order/models.py:780
+#: order/models.py:793
msgid "Company to which the items are being sold"
msgstr "Компания, которой детали продаются"
-#: order/models.py:799 order/models.py:1755
+#: order/models.py:812 order/models.py:1768
msgid "Customer Reference "
msgstr ""
-#: order/models.py:799 order/models.py:1756
+#: order/models.py:812 order/models.py:1769
msgid "Customer order reference code"
msgstr ""
-#: order/models.py:801 order/models.py:1408
-#: templates/js/translated/sales_order.js:831
-#: templates/js/translated/sales_order.js:1012
+#: order/models.py:814 order/models.py:1421
+#: templates/js/translated/sales_order.js:843
+#: templates/js/translated/sales_order.js:1024
msgid "Shipment Date"
msgstr ""
-#: order/models.py:808
+#: order/models.py:821
msgid "shipped by"
msgstr ""
-#: order/models.py:857
+#: order/models.py:870
msgid "Order cannot be completed as no parts have been assigned"
msgstr ""
-#: order/models.py:861
+#: order/models.py:874
msgid "Only an open order can be marked as complete"
msgstr ""
-#: order/models.py:864 templates/js/translated/sales_order.js:491
+#: order/models.py:877 templates/js/translated/sales_order.js:503
msgid "Order cannot be completed as there are incomplete shipments"
msgstr ""
-#: order/models.py:867
+#: order/models.py:880
msgid "Order cannot be completed as there are incomplete line items"
msgstr ""
-#: order/models.py:1074
+#: order/models.py:1087
msgid "Item quantity"
msgstr ""
-#: order/models.py:1087
+#: order/models.py:1100
msgid "Line item reference"
msgstr ""
-#: order/models.py:1089
+#: order/models.py:1102
msgid "Line item notes"
msgstr ""
-#: order/models.py:1100
+#: order/models.py:1113
msgid "Target date for this line item (leave blank to use the target date from the order)"
msgstr ""
-#: order/models.py:1118
+#: order/models.py:1131
msgid "Line item description (optional)"
msgstr ""
-#: order/models.py:1123
+#: order/models.py:1136
msgid "Context"
msgstr ""
-#: order/models.py:1124
+#: order/models.py:1137
msgid "Additional context for this line"
msgstr ""
-#: order/models.py:1133
+#: order/models.py:1146
msgid "Unit price"
msgstr ""
-#: order/models.py:1163
+#: order/models.py:1176
msgid "Supplier part must match supplier"
msgstr ""
-#: order/models.py:1171
+#: order/models.py:1184
msgid "deleted"
msgstr ""
-#: order/models.py:1177 order/models.py:1262 order/models.py:1303
-#: order/models.py:1402 order/models.py:1551 order/models.py:1908
-#: order/models.py:1955 templates/js/translated/sales_order.js:1474
+#: order/models.py:1190 order/models.py:1275 order/models.py:1316
+#: order/models.py:1415 order/models.py:1564 order/models.py:1921
+#: order/models.py:1968 templates/js/translated/sales_order.js:1486
msgid "Order"
msgstr ""
-#: order/models.py:1196
+#: order/models.py:1209
msgid "Supplier part"
msgstr ""
-#: order/models.py:1203 order/templates/order/order_base.html:200
-#: templates/js/translated/part.js:1841 templates/js/translated/part.js:1872
-#: templates/js/translated/purchase_order.js:1276
-#: templates/js/translated/purchase_order.js:2137
-#: templates/js/translated/return_order.js:748
-#: templates/js/translated/table_filters.js:90
-#: templates/js/translated/table_filters.js:515
+#: order/models.py:1216 order/templates/order/order_base.html:196
+#: templates/js/translated/part.js:1840 templates/js/translated/part.js:1871
+#: templates/js/translated/purchase_order.js:1291
+#: templates/js/translated/purchase_order.js:2147
+#: templates/js/translated/return_order.js:760
+#: templates/js/translated/table_filters.js:96
+#: templates/js/translated/table_filters.js:537
msgid "Received"
msgstr ""
-#: order/models.py:1204
+#: order/models.py:1217
msgid "Number of items received"
msgstr ""
-#: order/models.py:1211 stock/models.py:823 stock/serializers.py:252
+#: order/models.py:1224 stock/models.py:823 stock/serializers.py:314
#: stock/templates/stock/item_base.html:184
-#: templates/js/translated/stock.js:2047
+#: templates/js/translated/stock.js:2204
msgid "Purchase Price"
msgstr "Закупочная цена"
-#: order/models.py:1212
+#: order/models.py:1225
msgid "Unit purchase price"
msgstr ""
-#: order/models.py:1225
+#: order/models.py:1238
msgid "Where does the Purchaser want this item to be stored?"
msgstr ""
-#: order/models.py:1291
+#: order/models.py:1304
msgid "Virtual part cannot be assigned to a sales order"
msgstr ""
-#: order/models.py:1296
+#: order/models.py:1309
msgid "Only salable parts can be assigned to a sales order"
msgstr ""
-#: order/models.py:1322 part/templates/part/part_pricing.html:107
+#: order/models.py:1335 part/templates/part/part_pricing.html:107
#: part/templates/part/prices.html:128 templates/js/translated/pricing.js:943
msgid "Sale Price"
msgstr "Цена продажи"
-#: order/models.py:1323
+#: order/models.py:1336
msgid "Unit sale price"
msgstr ""
-#: order/models.py:1333
+#: order/models.py:1346
msgid "Shipped quantity"
msgstr ""
-#: order/models.py:1409
+#: order/models.py:1422
msgid "Date of shipment"
msgstr ""
-#: order/models.py:1414 templates/js/translated/sales_order.js:1024
+#: order/models.py:1427 templates/js/translated/sales_order.js:1036
msgid "Delivery Date"
msgstr ""
-#: order/models.py:1415
+#: order/models.py:1428
msgid "Date of delivery of shipment"
msgstr ""
-#: order/models.py:1422
+#: order/models.py:1435
msgid "Checked By"
msgstr ""
-#: order/models.py:1423
+#: order/models.py:1436
msgid "User who checked this shipment"
msgstr ""
-#: order/models.py:1430 order/models.py:1627 order/serializers.py:1248
-#: order/serializers.py:1376 templates/js/translated/model_renderers.js:415
+#: order/models.py:1443 order/models.py:1640 order/serializers.py:1254
+#: order/serializers.py:1382 templates/js/translated/model_renderers.js:429
msgid "Shipment"
msgstr ""
-#: order/models.py:1431
+#: order/models.py:1444
msgid "Shipment number"
msgstr ""
-#: order/models.py:1439
+#: order/models.py:1452
msgid "Tracking Number"
msgstr ""
-#: order/models.py:1440
+#: order/models.py:1453
msgid "Shipment tracking information"
msgstr ""
-#: order/models.py:1447
+#: order/models.py:1460
msgid "Invoice Number"
msgstr ""
-#: order/models.py:1448
+#: order/models.py:1461
msgid "Reference number for associated invoice"
msgstr ""
-#: order/models.py:1470
+#: order/models.py:1483
msgid "Shipment has already been sent"
msgstr ""
-#: order/models.py:1473
+#: order/models.py:1486
msgid "Shipment has no allocated stock items"
msgstr ""
-#: order/models.py:1586 order/models.py:1588
+#: order/models.py:1599 order/models.py:1601
msgid "Stock item has not been assigned"
msgstr ""
-#: order/models.py:1592
+#: order/models.py:1605
msgid "Cannot allocate stock item to a line with a different part"
msgstr ""
-#: order/models.py:1594
+#: order/models.py:1607
msgid "Cannot allocate stock to a line without a part"
msgstr ""
-#: order/models.py:1597
+#: order/models.py:1610
msgid "Allocation quantity cannot exceed stock quantity"
msgstr ""
-#: order/models.py:1607 order/serializers.py:1110
+#: order/models.py:1620 order/serializers.py:1116
msgid "Quantity must be 1 for serialized stock item"
msgstr ""
-#: order/models.py:1610
+#: order/models.py:1623
msgid "Sales order does not match shipment"
msgstr ""
-#: order/models.py:1611
+#: order/models.py:1624
msgid "Shipment does not match sales order"
msgstr ""
-#: order/models.py:1619
+#: order/models.py:1632
msgid "Line"
msgstr ""
-#: order/models.py:1628
+#: order/models.py:1641
msgid "Sales order shipment reference"
msgstr ""
-#: order/models.py:1641 order/models.py:1916
-#: templates/js/translated/return_order.js:706
+#: order/models.py:1654 order/models.py:1929
+#: templates/js/translated/return_order.js:718
msgid "Item"
msgstr ""
-#: order/models.py:1642
+#: order/models.py:1655
msgid "Select stock item to allocate"
msgstr ""
-#: order/models.py:1645
+#: order/models.py:1658
msgid "Enter stock allocation quantity"
msgstr ""
-#: order/models.py:1725
+#: order/models.py:1738
msgid "Return Order reference"
msgstr ""
-#: order/models.py:1739
+#: order/models.py:1752
msgid "Company from which items are being returned"
msgstr ""
-#: order/models.py:1750
+#: order/models.py:1763
msgid "Return order status"
msgstr ""
-#: order/models.py:1901
+#: order/models.py:1914
msgid "Only serialized items can be assigned to a Return Order"
msgstr ""
-#: order/models.py:1917
+#: order/models.py:1930
msgid "Select item to return from customer"
msgstr ""
-#: order/models.py:1922
+#: order/models.py:1935
msgid "Received Date"
msgstr ""
-#: order/models.py:1923
+#: order/models.py:1936
msgid "The date this this return item was received"
msgstr ""
-#: order/models.py:1934 templates/js/translated/return_order.js:717
-#: templates/js/translated/table_filters.js:93
+#: order/models.py:1947 templates/js/translated/return_order.js:729
+#: templates/js/translated/table_filters.js:99
msgid "Outcome"
msgstr ""
-#: order/models.py:1934
+#: order/models.py:1947
msgid "Outcome for this line item"
msgstr ""
-#: order/models.py:1940
+#: order/models.py:1953
msgid "Cost associated with return or repair for this line item"
msgstr ""
-#: order/serializers.py:247
+#: order/serializers.py:253
msgid "Order cannot be cancelled"
msgstr ""
-#: order/serializers.py:262 order/serializers.py:1128
+#: order/serializers.py:268 order/serializers.py:1134
msgid "Allow order to be closed with incomplete line items"
msgstr ""
-#: order/serializers.py:273 order/serializers.py:1139
+#: order/serializers.py:279 order/serializers.py:1145
msgid "Order has incomplete line items"
msgstr ""
-#: order/serializers.py:386
+#: order/serializers.py:392
msgid "Order is not open"
msgstr ""
-#: order/serializers.py:404
+#: order/serializers.py:410
msgid "Purchase price currency"
msgstr "Курс покупки валюты"
-#: order/serializers.py:422
+#: order/serializers.py:428
msgid "Supplier part must be specified"
msgstr ""
-#: order/serializers.py:427
+#: order/serializers.py:433
msgid "Purchase order must be specified"
msgstr ""
-#: order/serializers.py:433
+#: order/serializers.py:439
msgid "Supplier must match purchase order"
msgstr ""
-#: order/serializers.py:434
+#: order/serializers.py:440
msgid "Purchase order must match supplier"
msgstr ""
-#: order/serializers.py:472 order/serializers.py:1216
+#: order/serializers.py:478 order/serializers.py:1222
msgid "Line Item"
msgstr ""
-#: order/serializers.py:478
+#: order/serializers.py:484
msgid "Line item does not match purchase order"
msgstr ""
-#: order/serializers.py:488 order/serializers.py:607 order/serializers.py:1589
+#: order/serializers.py:494 order/serializers.py:613 order/serializers.py:1595
msgid "Select destination location for received items"
msgstr ""
-#: order/serializers.py:507 templates/js/translated/purchase_order.js:1100
+#: order/serializers.py:513 templates/js/translated/purchase_order.js:1115
msgid "Enter batch code for incoming stock items"
msgstr "Введите код партии для поступающих единиц хранения"
-#: order/serializers.py:515 templates/js/translated/purchase_order.js:1124
+#: order/serializers.py:521 templates/js/translated/purchase_order.js:1139
msgid "Enter serial numbers for incoming stock items"
msgstr ""
-#: order/serializers.py:528 templates/js/translated/barcode.js:52
+#: order/serializers.py:534 templates/js/translated/barcode.js:52
msgid "Barcode"
msgstr ""
-#: order/serializers.py:529
+#: order/serializers.py:535
msgid "Scanned barcode"
msgstr ""
-#: order/serializers.py:545
+#: order/serializers.py:551
msgid "Barcode is already in use"
msgstr ""
-#: order/serializers.py:569
+#: order/serializers.py:575
msgid "An integer quantity must be provided for trackable parts"
msgstr "Для отслеживаемых деталей должно быть указано целочисленное количество"
-#: order/serializers.py:623 order/serializers.py:1604
+#: order/serializers.py:629 order/serializers.py:1610
msgid "Line items must be provided"
msgstr ""
-#: order/serializers.py:640
+#: order/serializers.py:646
msgid "Destination location must be specified"
msgstr ""
-#: order/serializers.py:651
+#: order/serializers.py:657
msgid "Supplied barcode values must be unique"
msgstr ""
-#: order/serializers.py:950
+#: order/serializers.py:956
msgid "Sale price currency"
msgstr "Курс продажи валюты"
-#: order/serializers.py:1007
+#: order/serializers.py:1013
msgid "No shipment details provided"
msgstr ""
-#: order/serializers.py:1071 order/serializers.py:1225
+#: order/serializers.py:1077 order/serializers.py:1231
msgid "Line item is not associated with this order"
msgstr ""
-#: order/serializers.py:1093
+#: order/serializers.py:1099
msgid "Quantity must be positive"
msgstr ""
-#: order/serializers.py:1238
+#: order/serializers.py:1244
msgid "Enter serial numbers to allocate"
msgstr ""
-#: order/serializers.py:1260 order/serializers.py:1384
+#: order/serializers.py:1266 order/serializers.py:1390
msgid "Shipment has already been shipped"
msgstr ""
-#: order/serializers.py:1263 order/serializers.py:1387
+#: order/serializers.py:1269 order/serializers.py:1393
msgid "Shipment is not associated with this order"
msgstr ""
-#: order/serializers.py:1317
+#: order/serializers.py:1323
msgid "No match found for the following serial numbers"
msgstr ""
-#: order/serializers.py:1327
+#: order/serializers.py:1333
msgid "The following serial numbers are already allocated"
msgstr ""
-#: order/serializers.py:1555
+#: order/serializers.py:1561
msgid "Return order line item"
msgstr ""
-#: order/serializers.py:1562
+#: order/serializers.py:1568
msgid "Line item does not match return order"
msgstr ""
-#: order/serializers.py:1565
+#: order/serializers.py:1571
msgid "Line item has already been received"
msgstr ""
-#: order/serializers.py:1597
+#: order/serializers.py:1603
msgid "Items can only be received against orders which are in progress"
msgstr ""
-#: order/serializers.py:1678
+#: order/serializers.py:1684
msgid "Line price currency"
msgstr ""
@@ -4957,82 +5013,74 @@ msgid "Issue Order"
msgstr ""
#: order/templates/order/order_base.html:83
-msgid "Receive items"
-msgstr ""
-
-#: order/templates/order/order_base.html:85
-msgid "Receive Items"
-msgstr ""
-
-#: order/templates/order/order_base.html:87
#: order/templates/order/return_order_base.html:87
msgid "Mark order as complete"
msgstr ""
-#: order/templates/order/order_base.html:88
+#: order/templates/order/order_base.html:84
#: order/templates/order/return_order_base.html:88
#: order/templates/order/sales_order_base.html:94
msgid "Complete Order"
msgstr ""
-#: order/templates/order/order_base.html:95
+#: order/templates/order/order_base.html:91
msgid "Supplier part thumbnail"
msgstr ""
-#: order/templates/order/order_base.html:110
+#: order/templates/order/order_base.html:106
#: order/templates/order/return_order_base.html:102
#: order/templates/order/sales_order_base.html:107
msgid "Order Reference"
msgstr ""
-#: order/templates/order/order_base.html:115
+#: order/templates/order/order_base.html:111
#: order/templates/order/return_order_base.html:107
#: order/templates/order/sales_order_base.html:112
msgid "Order Description"
msgstr ""
-#: order/templates/order/order_base.html:122
+#: order/templates/order/order_base.html:118
#: order/templates/order/return_order_base.html:114
#: order/templates/order/sales_order_base.html:119
msgid "Order Status"
msgstr ""
-#: order/templates/order/order_base.html:145
+#: order/templates/order/order_base.html:141
msgid "No suppplier information available"
msgstr ""
-#: order/templates/order/order_base.html:158
+#: order/templates/order/order_base.html:154
#: order/templates/order/sales_order_base.html:158
msgid "Completed Line Items"
msgstr ""
-#: order/templates/order/order_base.html:164
+#: order/templates/order/order_base.html:160
#: order/templates/order/sales_order_base.html:164
#: order/templates/order/sales_order_base.html:174
msgid "Incomplete"
msgstr ""
-#: order/templates/order/order_base.html:183
+#: order/templates/order/order_base.html:179
#: order/templates/order/return_order_base.html:158
#: report/templates/report/inventree_build_order_base.html:121
msgid "Issued"
msgstr ""
-#: order/templates/order/order_base.html:221
+#: order/templates/order/order_base.html:224
msgid "Total cost"
msgstr ""
-#: order/templates/order/order_base.html:225
-#: order/templates/order/return_order_base.html:193
-#: order/templates/order/sales_order_base.html:233
+#: order/templates/order/order_base.html:228
+#: order/templates/order/return_order_base.html:200
+#: order/templates/order/sales_order_base.html:240
msgid "Total cost could not be calculated"
msgstr ""
-#: order/templates/order/order_base.html:331
+#: order/templates/order/order_base.html:318
msgid "Purchase Order QR Code"
msgstr ""
-#: order/templates/order/order_base.html:343
+#: order/templates/order/order_base.html:330
msgid "Link Barcode to Purchase Order"
msgstr ""
@@ -5085,13 +5133,13 @@ msgstr ""
#: part/templates/part/import_wizard/ajax_match_references.html:42
#: part/templates/part/import_wizard/match_fields.html:71
#: part/templates/part/import_wizard/match_references.html:49
-#: templates/js/translated/bom.js:132 templates/js/translated/build.js:512
-#: templates/js/translated/build.js:2348
-#: templates/js/translated/purchase_order.js:692
-#: templates/js/translated/purchase_order.js:1206
-#: templates/js/translated/return_order.js:494
-#: templates/js/translated/sales_order.js:1097
-#: templates/js/translated/stock.js:681 templates/js/translated/stock.js:850
+#: templates/js/translated/bom.js:133 templates/js/translated/build.js:518
+#: templates/js/translated/build.js:1555
+#: templates/js/translated/purchase_order.js:703
+#: templates/js/translated/purchase_order.js:1221
+#: templates/js/translated/return_order.js:506
+#: templates/js/translated/sales_order.js:1109
+#: templates/js/translated/stock.js:680 templates/js/translated/stock.js:849
#: templates/patterns/wizard/match_fields.html:70
msgid "Remove row"
msgstr "Удалить строку"
@@ -5152,9 +5200,9 @@ msgstr ""
#: order/templates/order/purchase_order_detail.html:27
#: order/templates/order/return_order_detail.html:24
#: order/templates/order/sales_order_detail.html:24
-#: templates/js/translated/purchase_order.js:419
-#: templates/js/translated/return_order.js:447
-#: templates/js/translated/sales_order.js:222
+#: templates/js/translated/purchase_order.js:430
+#: templates/js/translated/return_order.js:459
+#: templates/js/translated/sales_order.js:234
msgid "Add Line Item"
msgstr ""
@@ -5165,30 +5213,25 @@ msgstr ""
msgid "Receive Line Items"
msgstr ""
-#: order/templates/order/purchase_order_detail.html:49
#: order/templates/order/purchase_order_detail.html:50
-msgid "Delete Line Items"
-msgstr ""
-
-#: order/templates/order/purchase_order_detail.html:66
-#: order/templates/order/return_order_detail.html:47
-#: order/templates/order/sales_order_detail.html:43
+#: order/templates/order/return_order_detail.html:45
+#: order/templates/order/sales_order_detail.html:41
msgid "Extra Lines"
msgstr ""
-#: order/templates/order/purchase_order_detail.html:72
-#: order/templates/order/return_order_detail.html:53
-#: order/templates/order/sales_order_detail.html:49
+#: order/templates/order/purchase_order_detail.html:56
+#: order/templates/order/return_order_detail.html:51
+#: order/templates/order/sales_order_detail.html:47
msgid "Add Extra Line"
msgstr ""
-#: order/templates/order/purchase_order_detail.html:92
+#: order/templates/order/purchase_order_detail.html:74
msgid "Received Items"
msgstr ""
-#: order/templates/order/purchase_order_detail.html:117
-#: order/templates/order/return_order_detail.html:89
-#: order/templates/order/sales_order_detail.html:149
+#: order/templates/order/purchase_order_detail.html:99
+#: order/templates/order/return_order_detail.html:85
+#: order/templates/order/sales_order_detail.html:139
msgid "Order Notes"
msgstr ""
@@ -5208,29 +5251,29 @@ msgstr ""
#: order/templates/order/return_order_base.html:139
#: order/templates/order/sales_order_base.html:152
-#: templates/js/translated/return_order.js:297
-#: templates/js/translated/sales_order.js:785
+#: templates/js/translated/return_order.js:309
+#: templates/js/translated/sales_order.js:797
msgid "Customer Reference"
msgstr ""
-#: order/templates/order/return_order_base.html:189
-#: order/templates/order/sales_order_base.html:229
+#: order/templates/order/return_order_base.html:196
+#: order/templates/order/sales_order_base.html:236
#: part/templates/part/part_pricing.html:32
#: part/templates/part/part_pricing.html:58
#: part/templates/part/part_pricing.html:99
#: part/templates/part/part_pricing.html:114
-#: templates/js/translated/part.js:1046
-#: templates/js/translated/purchase_order.js:1712
-#: templates/js/translated/return_order.js:369
-#: templates/js/translated/sales_order.js:843
+#: templates/js/translated/part.js:1045
+#: templates/js/translated/purchase_order.js:1727
+#: templates/js/translated/return_order.js:381
+#: templates/js/translated/sales_order.js:855
msgid "Total Cost"
msgstr ""
-#: order/templates/order/return_order_base.html:257
+#: order/templates/order/return_order_base.html:264
msgid "Return Order QR Code"
msgstr ""
-#: order/templates/order/return_order_base.html:269
+#: order/templates/order/return_order_base.html:276
msgid "Link Barcode to Return Order"
msgstr ""
@@ -5248,7 +5291,7 @@ msgid "Ship Items"
msgstr ""
#: order/templates/order/sales_order_base.html:93
-#: templates/js/translated/sales_order.js:469
+#: templates/js/translated/sales_order.js:481
msgid "Complete Sales Order"
msgstr ""
@@ -5257,16 +5300,16 @@ msgid "This Sales Order has not been fully allocated"
msgstr ""
#: order/templates/order/sales_order_base.html:170
-#: order/templates/order/sales_order_detail.html:105
+#: order/templates/order/sales_order_detail.html:99
#: order/templates/order/so_sidebar.html:11
msgid "Completed Shipments"
msgstr ""
-#: order/templates/order/sales_order_base.html:306
+#: order/templates/order/sales_order_base.html:313
msgid "Sales Order QR Code"
msgstr ""
-#: order/templates/order/sales_order_base.html:318
+#: order/templates/order/sales_order_base.html:325
msgid "Link Barcode to Sales Order"
msgstr ""
@@ -5274,18 +5317,17 @@ msgstr ""
msgid "Sales Order Items"
msgstr ""
-#: order/templates/order/sales_order_detail.html:71
-#: order/templates/order/so_sidebar.html:8 templates/InvenTree/index.html:332
+#: order/templates/order/sales_order_detail.html:67
+#: order/templates/order/so_sidebar.html:8 templates/InvenTree/index.html:284
msgid "Pending Shipments"
msgstr ""
-#: order/templates/order/sales_order_detail.html:75
-#: templates/attachment_table.html:6 templates/js/translated/bom.js:1236
-#: templates/js/translated/build.js:2249
+#: order/templates/order/sales_order_detail.html:71
+#: templates/js/translated/bom.js:1256 templates/js/translated/filters.js:297
msgid "Actions"
msgstr "Действия"
-#: order/templates/order/sales_order_detail.html:84
+#: order/templates/order/sales_order_detail.html:80
msgid "New Shipment"
msgstr ""
@@ -5311,12 +5353,12 @@ msgstr ""
msgid "Updated {part} unit-price to {price} and quantity to {qty}"
msgstr ""
-#: part/admin.py:33 part/admin.py:273 part/models.py:3667 part/tasks.py:288
+#: part/admin.py:33 part/admin.py:273 part/models.py:3716 part/tasks.py:288
#: stock/admin.py:101
msgid "Part ID"
msgstr "Артикул"
-#: part/admin.py:34 part/admin.py:275 part/models.py:3671 part/tasks.py:289
+#: part/admin.py:34 part/admin.py:275 part/models.py:3720 part/tasks.py:289
#: stock/admin.py:102
msgid "Part Name"
msgstr "Наименование детали"
@@ -5325,19 +5367,19 @@ msgstr "Наименование детали"
msgid "Part Description"
msgstr ""
-#: part/admin.py:36 part/models.py:889 part/templates/part/part_base.html:271
-#: templates/js/translated/part.js:1200 templates/js/translated/part.js:2233
-#: templates/js/translated/stock.js:1795
+#: part/admin.py:36 part/models.py:890 part/templates/part/part_base.html:271
+#: templates/js/translated/part.js:1199 templates/js/translated/part.js:2309
+#: templates/js/translated/stock.js:1952
msgid "IPN"
msgstr ""
-#: part/admin.py:37 part/models.py:896 part/templates/part/part_base.html:279
-#: report/models.py:179 templates/js/translated/part.js:1205
-#: templates/js/translated/part.js:2239
+#: part/admin.py:37 part/models.py:897 part/templates/part/part_base.html:279
+#: report/models.py:179 templates/js/translated/part.js:1204
+#: templates/js/translated/part.js:2315
msgid "Revision"
msgstr "Версия"
-#: part/admin.py:38 part/admin.py:198 part/models.py:875
+#: part/admin.py:38 part/admin.py:198 part/models.py:876
#: part/templates/part/category.html:93 part/templates/part/part_base.html:300
msgid "Keywords"
msgstr "Ключевые слова"
@@ -5358,24 +5400,24 @@ msgstr ""
msgid "Default Supplier ID"
msgstr ""
-#: part/admin.py:46 part/models.py:864 part/templates/part/part_base.html:179
+#: part/admin.py:46 part/models.py:865 part/templates/part/part_base.html:179
msgid "Variant Of"
msgstr "Разновидность"
-#: part/admin.py:47 part/models.py:980 part/templates/part/part_base.html:205
+#: part/admin.py:47 part/models.py:981 part/templates/part/part_base.html:205
msgid "Minimum Stock"
msgstr "Минимальный запас"
#: part/admin.py:61 part/templates/part/part_base.html:199
-#: templates/js/translated/company.js:1299
-#: templates/js/translated/table_filters.js:301
+#: templates/js/translated/company.js:1720
+#: templates/js/translated/table_filters.js:307
msgid "In Stock"
msgstr "На складе"
#: part/admin.py:62 part/bom.py:178 part/templates/part/part_base.html:212
-#: templates/js/translated/bom.js:1167 templates/js/translated/build.js:2191
-#: templates/js/translated/part.js:687 templates/js/translated/part.js:2123
-#: templates/js/translated/table_filters.js:140
+#: templates/js/translated/bom.js:1187 templates/js/translated/build.js:2541
+#: templates/js/translated/part.js:686 templates/js/translated/part.js:2122
+#: templates/js/translated/table_filters.js:146
msgid "On Order"
msgstr ""
@@ -5383,23 +5425,16 @@ msgstr ""
msgid "Used In"
msgstr "Сборки"
-#: part/admin.py:64 templates/js/translated/build.js:2203
-#: templates/js/translated/build.js:2465 templates/js/translated/build.js:3052
-#: templates/js/translated/sales_order.js:1906
-#: templates/js/translated/table_filters.js:488
-msgid "Allocated"
-msgstr ""
-
#: part/admin.py:65 part/templates/part/part_base.html:243 stock/admin.py:124
-#: templates/js/translated/part.js:692 templates/js/translated/part.js:2127
+#: templates/js/translated/part.js:691 templates/js/translated/part.js:2126
msgid "Building"
msgstr ""
-#: part/admin.py:66 part/models.py:2930 templates/js/translated/part.js:943
+#: part/admin.py:66 part/models.py:2964 templates/js/translated/part.js:942
msgid "Minimum Cost"
msgstr ""
-#: part/admin.py:67 part/models.py:2936 templates/js/translated/part.js:953
+#: part/admin.py:67 part/models.py:2970 templates/js/translated/part.js:952
msgid "Maximum Cost"
msgstr ""
@@ -5416,13 +5451,13 @@ msgstr ""
msgid "Category Path"
msgstr "Путь к категории"
-#: part/admin.py:202 part/models.py:392 part/templates/part/cat_link.html:3
-#: part/templates/part/category.html:23 part/templates/part/category.html:140
-#: part/templates/part/category.html:160
+#: part/admin.py:202 part/models.py:393 part/serializers.py:307
+#: part/templates/part/cat_link.html:3 part/templates/part/category.html:23
+#: part/templates/part/category.html:140 part/templates/part/category.html:160
#: part/templates/part/category_sidebar.html:9
-#: templates/InvenTree/index.html:86 templates/InvenTree/search.html:84
+#: templates/InvenTree/index.html:36 templates/InvenTree/search.html:84
#: templates/InvenTree/settings/sidebar.html:45
-#: templates/js/translated/part.js:2754 templates/js/translated/search.js:172
+#: templates/js/translated/part.js:2739 templates/js/translated/search.js:130
#: templates/navbar.html:24 users/models.py:38
msgid "Parts"
msgstr "Детали"
@@ -5439,7 +5474,7 @@ msgstr ""
msgid "Parent IPN"
msgstr ""
-#: part/admin.py:274 part/models.py:3675
+#: part/admin.py:274 part/models.py:3724
msgid "Part IPN"
msgstr "IPN"
@@ -5453,35 +5488,35 @@ msgstr ""
msgid "Maximum Price"
msgstr ""
-#: part/api.py:498
+#: part/api.py:501
msgid "Incoming Purchase Order"
msgstr ""
-#: part/api.py:518
+#: part/api.py:521
msgid "Outgoing Sales Order"
msgstr ""
-#: part/api.py:536
+#: part/api.py:539
msgid "Stock produced by Build Order"
msgstr ""
-#: part/api.py:622
+#: part/api.py:625
msgid "Stock required for Build Order"
msgstr ""
-#: part/api.py:770
+#: part/api.py:773
msgid "Valid"
msgstr ""
-#: part/api.py:771
+#: part/api.py:774
msgid "Validate entire Bill of Materials"
msgstr ""
-#: part/api.py:777
+#: part/api.py:780
msgid "This option must be selected"
msgstr ""
-#: part/bom.py:175 part/models.py:127 part/models.py:923
+#: part/bom.py:175 part/models.py:128 part/models.py:924
#: part/templates/part/category.html:115 part/templates/part/part_base.html:369
msgid "Default Location"
msgstr "Место хранения по умолчанию"
@@ -5491,7 +5526,7 @@ msgid "Total Stock"
msgstr ""
#: part/bom.py:177 part/templates/part/part_base.html:194
-#: templates/js/translated/sales_order.js:1873
+#: templates/js/translated/sales_order.js:1885
msgid "Available Stock"
msgstr "Доступный запас"
@@ -5499,916 +5534,913 @@ msgstr "Доступный запас"
msgid "Input quantity for price calculation"
msgstr ""
-#: part/models.py:75 part/models.py:3616 part/templates/part/category.html:16
+#: part/models.py:76 part/models.py:3665 part/templates/part/category.html:16
#: part/templates/part/part_app_base.html:10
msgid "Part Category"
msgstr "Категория детали"
-#: part/models.py:76 part/templates/part/category.html:135
-#: templates/InvenTree/search.html:97 templates/js/translated/search.js:200
+#: part/models.py:77 part/templates/part/category.html:135
+#: templates/InvenTree/search.html:97 templates/js/translated/search.js:158
#: users/models.py:37
msgid "Part Categories"
msgstr ""
-#: part/models.py:128
+#: part/models.py:129
msgid "Default location for parts in this category"
msgstr "Место хранения по умолчанию для деталей этой категории"
-#: part/models.py:133 stock/models.py:124 templates/js/translated/stock.js:2520
-#: templates/js/translated/table_filters.js:209
-#: templates/js/translated/table_filters.js:229
+#: part/models.py:134 stock/models.py:124 templates/js/translated/stock.js:2651
+#: templates/js/translated/table_filters.js:215
+#: templates/js/translated/table_filters.js:235
msgid "Structural"
msgstr ""
-#: part/models.py:135
+#: part/models.py:136
msgid "Parts may not be directly assigned to a structural category, but may be assigned to child categories."
msgstr ""
-#: part/models.py:139
+#: part/models.py:140
msgid "Default keywords"
msgstr "Ключевые слова по умолчанию"
-#: part/models.py:139
+#: part/models.py:140
msgid "Default keywords for parts in this category"
msgstr "Ключевые слова по умолчанию для деталей этой категории"
-#: part/models.py:144 stock/models.py:113
+#: part/models.py:145 stock/models.py:113
msgid "Icon"
msgstr ""
-#: part/models.py:145 stock/models.py:114
+#: part/models.py:146 stock/models.py:114
msgid "Icon (optional)"
msgstr ""
-#: part/models.py:164
+#: part/models.py:165
msgid "You cannot make this part category structural because some parts are already assigned to it!"
msgstr ""
-#: part/models.py:475
+#: part/models.py:476
msgid "Invalid choice for parent part"
msgstr ""
-#: part/models.py:517 part/models.py:529
+#: part/models.py:518 part/models.py:530
#, python-brace-format
msgid "Part '{p1}' is used in BOM for '{p2}' (recursive)"
msgstr ""
-#: part/models.py:601
+#: part/models.py:602
#, python-brace-format
msgid "IPN must match regex pattern {pat}"
msgstr "IPN должен совпадать с регулярным выражением {pat}"
-#: part/models.py:672
+#: part/models.py:673
msgid "Stock item with this serial number already exists"
msgstr ""
-#: part/models.py:803
+#: part/models.py:804
msgid "Duplicate IPN not allowed in part settings"
msgstr ""
-#: part/models.py:808
+#: part/models.py:809
msgid "Part with this Name, IPN and Revision already exists."
msgstr ""
-#: part/models.py:822
+#: part/models.py:823
msgid "Parts cannot be assigned to structural part categories!"
msgstr ""
-#: part/models.py:846 part/models.py:3672
+#: part/models.py:847 part/models.py:3721
msgid "Part name"
msgstr "Наименование детали"
-#: part/models.py:852
+#: part/models.py:853
msgid "Is Template"
msgstr "Шаблон"
-#: part/models.py:853
+#: part/models.py:854
msgid "Is this part a template part?"
msgstr "Эта деталь является шаблоном для других деталей?"
-#: part/models.py:863
+#: part/models.py:864
msgid "Is this part a variant of another part?"
msgstr "Эта деталь является разновидностью другой детали?"
-#: part/models.py:870
+#: part/models.py:871
msgid "Part description (optional)"
msgstr ""
-#: part/models.py:876
+#: part/models.py:877
msgid "Part keywords to improve visibility in search results"
msgstr "Ключевые слова для улучшения видимости в результатах поиска"
-#: part/models.py:883 part/models.py:3198 part/models.py:3615
-#: part/serializers.py:848 part/templates/part/part_base.html:262
+#: part/models.py:884 part/models.py:3232 part/models.py:3664
+#: part/serializers.py:320 part/serializers.py:910
+#: part/templates/part/part_base.html:262
#: templates/InvenTree/settings/settings_staff_js.html:204
#: templates/js/translated/notification.js:59
-#: templates/js/translated/part.js:2269 templates/js/translated/part.js:2481
+#: templates/js/translated/part.js:2345
msgid "Category"
msgstr "Категория"
-#: part/models.py:884
+#: part/models.py:885
msgid "Part category"
msgstr "Категория"
-#: part/models.py:890
+#: part/models.py:891
msgid "Internal Part Number"
msgstr "Внутренний код детали"
-#: part/models.py:895
+#: part/models.py:896
msgid "Part revision or version number"
msgstr "Версия детали"
-#: part/models.py:921
+#: part/models.py:922
msgid "Where is this item normally stored?"
msgstr "Где обычно хранится эта деталь?"
-#: part/models.py:966 part/templates/part/part_base.html:378
+#: part/models.py:967 part/templates/part/part_base.html:378
msgid "Default Supplier"
msgstr ""
-#: part/models.py:967
+#: part/models.py:968
msgid "Default supplier part"
msgstr ""
-#: part/models.py:974
+#: part/models.py:975
msgid "Default Expiry"
msgstr ""
-#: part/models.py:975
+#: part/models.py:976
msgid "Expiry time (in days) for stock items of this part"
msgstr ""
-#: part/models.py:981
+#: part/models.py:982
msgid "Minimum allowed stock level"
msgstr "Минимально допустимый складской запас"
-#: part/models.py:988
+#: part/models.py:989
msgid "Units of measure for this part"
msgstr ""
-#: part/models.py:997
+#: part/models.py:998
msgid "Can this part be built from other parts?"
msgstr "Может ли эта деталь быть создана из других деталей?"
-#: part/models.py:1003
+#: part/models.py:1004
msgid "Can this part be used to build other parts?"
msgstr "Может ли эта деталь использоваться для создания других деталей?"
-#: part/models.py:1009
+#: part/models.py:1010
msgid "Does this part have tracking for unique items?"
msgstr "Является ли каждый экземпляр этой детали уникальным, обладающим серийным номером?"
-#: part/models.py:1014
+#: part/models.py:1015
msgid "Can this part be purchased from external suppliers?"
msgstr "Может ли эта деталь быть закуплена у внешних поставщиков?"
-#: part/models.py:1019
+#: part/models.py:1020
msgid "Can this part be sold to customers?"
msgstr "Может ли эта деталь быть продана покупателям?"
-#: part/models.py:1024
+#: part/models.py:1025
msgid "Is this part active?"
msgstr "Эта деталь актуальна?"
-#: part/models.py:1029
+#: part/models.py:1030
msgid "Is this a virtual part, such as a software product or license?"
msgstr "Эта деталь виртуальная, как программный продукт или лицензия?"
-#: part/models.py:1031
+#: part/models.py:1032
msgid "BOM checksum"
msgstr ""
-#: part/models.py:1031
+#: part/models.py:1032
msgid "Stored BOM checksum"
msgstr ""
-#: part/models.py:1034
+#: part/models.py:1035
msgid "BOM checked by"
msgstr ""
-#: part/models.py:1036
+#: part/models.py:1037
msgid "BOM checked date"
msgstr ""
-#: part/models.py:1040
+#: part/models.py:1041
msgid "Creation User"
msgstr ""
-#: part/models.py:1042
+#: part/models.py:1043
msgid "User responsible for this part"
msgstr ""
-#: part/models.py:1046 part/templates/part/part_base.html:341
+#: part/models.py:1047 part/templates/part/part_base.html:341
#: stock/templates/stock/item_base.html:447
-#: templates/js/translated/part.js:2331
+#: templates/js/translated/part.js:2407
msgid "Last Stocktake"
msgstr ""
-#: part/models.py:1921
+#: part/models.py:1923
msgid "Sell multiple"
msgstr ""
-#: part/models.py:2853
+#: part/models.py:2887
msgid "Currency used to cache pricing calculations"
msgstr ""
-#: part/models.py:2870
+#: part/models.py:2904
msgid "Minimum BOM Cost"
msgstr ""
-#: part/models.py:2871
+#: part/models.py:2905
msgid "Minimum cost of component parts"
msgstr ""
-#: part/models.py:2876
+#: part/models.py:2910
msgid "Maximum BOM Cost"
msgstr ""
-#: part/models.py:2877
+#: part/models.py:2911
msgid "Maximum cost of component parts"
msgstr ""
-#: part/models.py:2882
+#: part/models.py:2916
msgid "Minimum Purchase Cost"
msgstr ""
-#: part/models.py:2883
+#: part/models.py:2917
msgid "Minimum historical purchase cost"
msgstr ""
-#: part/models.py:2888
+#: part/models.py:2922
msgid "Maximum Purchase Cost"
msgstr ""
-#: part/models.py:2889
+#: part/models.py:2923
msgid "Maximum historical purchase cost"
msgstr ""
-#: part/models.py:2894
+#: part/models.py:2928
msgid "Minimum Internal Price"
msgstr ""
-#: part/models.py:2895
+#: part/models.py:2929
msgid "Minimum cost based on internal price breaks"
msgstr ""
-#: part/models.py:2900
+#: part/models.py:2934
msgid "Maximum Internal Price"
msgstr ""
-#: part/models.py:2901
+#: part/models.py:2935
msgid "Maximum cost based on internal price breaks"
msgstr ""
-#: part/models.py:2906
+#: part/models.py:2940
msgid "Minimum Supplier Price"
msgstr ""
-#: part/models.py:2907
+#: part/models.py:2941
msgid "Minimum price of part from external suppliers"
msgstr ""
-#: part/models.py:2912
+#: part/models.py:2946
msgid "Maximum Supplier Price"
msgstr ""
-#: part/models.py:2913
+#: part/models.py:2947
msgid "Maximum price of part from external suppliers"
msgstr ""
-#: part/models.py:2918
+#: part/models.py:2952
msgid "Minimum Variant Cost"
msgstr ""
-#: part/models.py:2919
+#: part/models.py:2953
msgid "Calculated minimum cost of variant parts"
msgstr ""
-#: part/models.py:2924
+#: part/models.py:2958
msgid "Maximum Variant Cost"
msgstr ""
-#: part/models.py:2925
+#: part/models.py:2959
msgid "Calculated maximum cost of variant parts"
msgstr ""
-#: part/models.py:2931
+#: part/models.py:2965
msgid "Calculated overall minimum cost"
msgstr ""
-#: part/models.py:2937
+#: part/models.py:2971
msgid "Calculated overall maximum cost"
msgstr ""
-#: part/models.py:2942
+#: part/models.py:2976
msgid "Minimum Sale Price"
msgstr ""
-#: part/models.py:2943
+#: part/models.py:2977
msgid "Minimum sale price based on price breaks"
msgstr ""
-#: part/models.py:2948
+#: part/models.py:2982
msgid "Maximum Sale Price"
msgstr ""
-#: part/models.py:2949
+#: part/models.py:2983
msgid "Maximum sale price based on price breaks"
msgstr ""
-#: part/models.py:2954
+#: part/models.py:2988
msgid "Minimum Sale Cost"
msgstr ""
-#: part/models.py:2955
+#: part/models.py:2989
msgid "Minimum historical sale price"
msgstr ""
-#: part/models.py:2960
+#: part/models.py:2994
msgid "Maximum Sale Cost"
msgstr ""
-#: part/models.py:2961
+#: part/models.py:2995
msgid "Maximum historical sale price"
msgstr ""
-#: part/models.py:2980
+#: part/models.py:3014
msgid "Part for stocktake"
msgstr ""
-#: part/models.py:2985
+#: part/models.py:3019
msgid "Item Count"
msgstr ""
-#: part/models.py:2986
+#: part/models.py:3020
msgid "Number of individual stock entries at time of stocktake"
msgstr ""
-#: part/models.py:2993
+#: part/models.py:3027
msgid "Total available stock at time of stocktake"
msgstr ""
-#: part/models.py:2997 part/models.py:3080
+#: part/models.py:3031 part/models.py:3114
#: part/templates/part/part_scheduling.html:13
#: report/templates/report/inventree_test_report_base.html:106
#: templates/InvenTree/settings/plugin_settings.html:37
#: templates/InvenTree/settings/settings_staff_js.html:360
-#: templates/js/translated/part.js:1059 templates/js/translated/pricing.js:812
+#: templates/js/translated/part.js:1058 templates/js/translated/pricing.js:812
#: templates/js/translated/pricing.js:936
-#: templates/js/translated/purchase_order.js:1691
-#: templates/js/translated/stock.js:2558
+#: templates/js/translated/purchase_order.js:1706
+#: templates/js/translated/stock.js:2689
msgid "Date"
msgstr ""
-#: part/models.py:2998
+#: part/models.py:3032
msgid "Date stocktake was performed"
msgstr ""
-#: part/models.py:3006
+#: part/models.py:3040
msgid "Additional notes"
msgstr ""
-#: part/models.py:3014
+#: part/models.py:3048
msgid "User who performed this stocktake"
msgstr ""
-#: part/models.py:3019
+#: part/models.py:3053
msgid "Minimum Stock Cost"
msgstr ""
-#: part/models.py:3020
+#: part/models.py:3054
msgid "Estimated minimum cost of stock on hand"
msgstr ""
-#: part/models.py:3025
+#: part/models.py:3059
msgid "Maximum Stock Cost"
msgstr ""
-#: part/models.py:3026
+#: part/models.py:3060
msgid "Estimated maximum cost of stock on hand"
msgstr ""
-#: part/models.py:3087 templates/InvenTree/settings/settings_staff_js.html:349
+#: part/models.py:3121 templates/InvenTree/settings/settings_staff_js.html:349
msgid "Report"
msgstr ""
-#: part/models.py:3088
+#: part/models.py:3122
msgid "Stocktake report file (generated internally)"
msgstr ""
-#: part/models.py:3093 templates/InvenTree/settings/settings_staff_js.html:356
+#: part/models.py:3127 templates/InvenTree/settings/settings_staff_js.html:356
msgid "Part Count"
msgstr ""
-#: part/models.py:3094
+#: part/models.py:3128
msgid "Number of parts covered by stocktake"
msgstr ""
-#: part/models.py:3102
+#: part/models.py:3136
msgid "User who requested this stocktake report"
msgstr ""
-#: part/models.py:3238
+#: part/models.py:3272
msgid "Test templates can only be created for trackable parts"
msgstr ""
-#: part/models.py:3255
+#: part/models.py:3289
msgid "Test with this name already exists for this part"
msgstr ""
-#: part/models.py:3275 templates/js/translated/part.js:2821
+#: part/models.py:3309 templates/js/translated/part.js:2806
msgid "Test Name"
msgstr ""
-#: part/models.py:3276
+#: part/models.py:3310
msgid "Enter a name for the test"
msgstr ""
-#: part/models.py:3281
+#: part/models.py:3315
msgid "Test Description"
msgstr ""
-#: part/models.py:3282
+#: part/models.py:3316
msgid "Enter description for this test"
msgstr ""
-#: part/models.py:3287 templates/js/translated/part.js:2830
-#: templates/js/translated/table_filters.js:423
+#: part/models.py:3321 templates/js/translated/part.js:2815
+#: templates/js/translated/table_filters.js:429
msgid "Required"
msgstr ""
-#: part/models.py:3288
+#: part/models.py:3322
msgid "Is this test required to pass?"
msgstr ""
-#: part/models.py:3293 templates/js/translated/part.js:2838
+#: part/models.py:3327 templates/js/translated/part.js:2823
msgid "Requires Value"
msgstr ""
-#: part/models.py:3294
+#: part/models.py:3328
msgid "Does this test require a value when adding a test result?"
msgstr ""
-#: part/models.py:3299 templates/js/translated/part.js:2845
+#: part/models.py:3333 templates/js/translated/part.js:2830
msgid "Requires Attachment"
msgstr ""
-#: part/models.py:3300
+#: part/models.py:3334
msgid "Does this test require a file attachment when adding a test result?"
msgstr ""
-#: part/models.py:3346
+#: part/models.py:3380
msgid "Checkbox parameters cannot have units"
msgstr ""
-#: part/models.py:3351
+#: part/models.py:3385
msgid "Checkbox parameters cannot have choices"
msgstr ""
-#: part/models.py:3369
+#: part/models.py:3403
msgid "Choices must be unique"
msgstr ""
-#: part/models.py:3385
+#: part/models.py:3419
msgid "Parameter template name must be unique"
msgstr ""
-#: part/models.py:3401
+#: part/models.py:3435
msgid "Parameter Name"
msgstr ""
-#: part/models.py:3407
+#: part/models.py:3441
msgid "Physical units for this parameter"
msgstr ""
-#: part/models.py:3417
+#: part/models.py:3451
msgid "Parameter description"
msgstr ""
-#: part/models.py:3423 templates/js/translated/part.js:1600
-#: templates/js/translated/table_filters.js:734
+#: part/models.py:3457 templates/js/translated/part.js:1599
+#: templates/js/translated/table_filters.js:756
msgid "Checkbox"
msgstr ""
-#: part/models.py:3424
+#: part/models.py:3458
msgid "Is this parameter a checkbox?"
msgstr ""
-#: part/models.py:3429 templates/js/translated/part.js:1609
+#: part/models.py:3463 templates/js/translated/part.js:1608
msgid "Choices"
msgstr ""
-#: part/models.py:3430
+#: part/models.py:3464
msgid "Valid choices for this parameter (comma-separated)"
msgstr ""
-#: part/models.py:3511
+#: part/models.py:3545
msgid "Invalid choice for parameter value"
msgstr ""
-#: part/models.py:3555
+#: part/models.py:3589
msgid "Parent Part"
msgstr "Родительская деталь"
-#: part/models.py:3560 part/models.py:3621 part/models.py:3622
+#: part/models.py:3594 part/models.py:3670 part/models.py:3671
#: templates/InvenTree/settings/settings_staff_js.html:199
msgid "Parameter Template"
msgstr "Шаблон параметра"
-#: part/models.py:3565
+#: part/models.py:3599
msgid "Data"
msgstr ""
-#: part/models.py:3565
+#: part/models.py:3599
msgid "Parameter Value"
msgstr ""
-#: part/models.py:3626 templates/InvenTree/settings/settings_staff_js.html:208
+#: part/models.py:3675 templates/InvenTree/settings/settings_staff_js.html:208
msgid "Default Value"
msgstr ""
-#: part/models.py:3627
+#: part/models.py:3676
msgid "Default Parameter Value"
msgstr ""
-#: part/models.py:3664
+#: part/models.py:3713
msgid "Part ID or part name"
msgstr "Артикул или наименование детали"
-#: part/models.py:3668
+#: part/models.py:3717
msgid "Unique part ID value"
msgstr ""
-#: part/models.py:3676
+#: part/models.py:3725
msgid "Part IPN value"
msgstr "Значение IPN"
-#: part/models.py:3679
+#: part/models.py:3728
msgid "Level"
msgstr ""
-#: part/models.py:3680
+#: part/models.py:3729
msgid "BOM level"
msgstr ""
-#: part/models.py:3764
+#: part/models.py:3735 part/models.py:4113
+msgid "BOM Item"
+msgstr "BOM Компонент"
+
+#: part/models.py:3808
msgid "Select parent part"
msgstr "Выберите родительскую деталь"
-#: part/models.py:3772
+#: part/models.py:3816
msgid "Sub part"
msgstr ""
-#: part/models.py:3773
+#: part/models.py:3817
msgid "Select part to be used in BOM"
msgstr "Выбрать деталь для использования в BOM"
-#: part/models.py:3779
+#: part/models.py:3823
msgid "BOM quantity for this BOM item"
msgstr ""
-#: part/models.py:3783 part/templates/part/upload_bom.html:58
-#: templates/js/translated/bom.js:971 templates/js/translated/bom.js:998
-#: templates/js/translated/build.js:2113
-#: templates/js/translated/table_filters.js:156
-#: templates/js/translated/table_filters.js:185
-#: templates/js/translated/table_filters.js:500
-msgid "Optional"
-msgstr ""
-
-#: part/models.py:3784
+#: part/models.py:3828
msgid "This BOM item is optional"
msgstr ""
-#: part/models.py:3789 templates/js/translated/bom.js:967
-#: templates/js/translated/bom.js:1007 templates/js/translated/build.js:2104
-#: templates/js/translated/table_filters.js:160
-#: templates/js/translated/table_filters.js:496
-msgid "Consumable"
-msgstr ""
-
-#: part/models.py:3790
+#: part/models.py:3834
msgid "This BOM item is consumable (it is not tracked in build orders)"
msgstr ""
-#: part/models.py:3794 part/templates/part/upload_bom.html:55
+#: part/models.py:3838 part/templates/part/upload_bom.html:55
msgid "Overage"
msgstr ""
-#: part/models.py:3795
+#: part/models.py:3839
msgid "Estimated build wastage quantity (absolute or percentage)"
msgstr ""
-#: part/models.py:3798
+#: part/models.py:3842
msgid "BOM item reference"
msgstr ""
-#: part/models.py:3801
+#: part/models.py:3845
msgid "BOM item notes"
msgstr ""
-#: part/models.py:3805
+#: part/models.py:3849
msgid "Checksum"
msgstr ""
-#: part/models.py:3805
+#: part/models.py:3849
msgid "BOM line checksum"
msgstr ""
-#: part/models.py:3810 templates/js/translated/table_filters.js:144
+#: part/models.py:3854 templates/js/translated/table_filters.js:150
msgid "Validated"
msgstr ""
-#: part/models.py:3811
+#: part/models.py:3855
msgid "This BOM item has been validated"
msgstr ""
-#: part/models.py:3816 part/templates/part/upload_bom.html:57
-#: templates/js/translated/bom.js:1024
-#: templates/js/translated/table_filters.js:148
-#: templates/js/translated/table_filters.js:181
+#: part/models.py:3860 part/templates/part/upload_bom.html:57
+#: templates/js/translated/bom.js:1042
+#: templates/js/translated/table_filters.js:154
+#: templates/js/translated/table_filters.js:187
msgid "Gets inherited"
msgstr ""
-#: part/models.py:3817
+#: part/models.py:3861
msgid "This BOM item is inherited by BOMs for variant parts"
msgstr ""
-#: part/models.py:3822 part/templates/part/upload_bom.html:56
-#: templates/js/translated/bom.js:1016
+#: part/models.py:3866 part/templates/part/upload_bom.html:56
+#: templates/js/translated/bom.js:1034
msgid "Allow Variants"
msgstr "Разрешить разновидности"
-#: part/models.py:3823
+#: part/models.py:3867
msgid "Stock items for variant parts can be used for this BOM item"
msgstr ""
-#: part/models.py:3909 stock/models.py:577
+#: part/models.py:3953 stock/models.py:577
msgid "Quantity must be integer value for trackable parts"
msgstr "Для отслеживаемых деталей количество должно быть целым числом"
-#: part/models.py:3918 part/models.py:3920
+#: part/models.py:3962 part/models.py:3964
msgid "Sub part must be specified"
msgstr ""
-#: part/models.py:4036
+#: part/models.py:4080
msgid "BOM Item Substitute"
msgstr ""
-#: part/models.py:4057
+#: part/models.py:4101
msgid "Substitute part cannot be the same as the master part"
msgstr ""
-#: part/models.py:4070
+#: part/models.py:4114
msgid "Parent BOM item"
msgstr ""
-#: part/models.py:4078
+#: part/models.py:4122
msgid "Substitute part"
msgstr ""
-#: part/models.py:4093
+#: part/models.py:4137
msgid "Part 1"
msgstr "Часть 1"
-#: part/models.py:4097
+#: part/models.py:4141
msgid "Part 2"
msgstr "Часть 2"
-#: part/models.py:4097
+#: part/models.py:4141
msgid "Select Related Part"
msgstr ""
-#: part/models.py:4115
+#: part/models.py:4159
msgid "Part relationship cannot be created between a part and itself"
msgstr ""
-#: part/models.py:4119
+#: part/models.py:4163
msgid "Duplicate relationship already exists"
msgstr ""
-#: part/serializers.py:152 part/serializers.py:175 stock/serializers.py:257
+#: part/serializers.py:152 part/serializers.py:175 stock/serializers.py:319
msgid "Purchase currency of this stock item"
msgstr "Валюта покупки этой единицы хранения"
-#: part/serializers.py:302
+#: part/serializers.py:313
+msgid "No parts selected"
+msgstr ""
+
+#: part/serializers.py:321
+msgid "Select category"
+msgstr ""
+
+#: part/serializers.py:352
msgid "Original Part"
msgstr ""
-#: part/serializers.py:302
+#: part/serializers.py:352
msgid "Select original part to duplicate"
msgstr ""
-#: part/serializers.py:307
+#: part/serializers.py:357
msgid "Copy Image"
msgstr ""
-#: part/serializers.py:307
+#: part/serializers.py:357
msgid "Copy image from original part"
msgstr ""
-#: part/serializers.py:312 part/templates/part/detail.html:296
+#: part/serializers.py:362 part/templates/part/detail.html:277
msgid "Copy BOM"
msgstr ""
-#: part/serializers.py:312
+#: part/serializers.py:362
msgid "Copy bill of materials from original part"
msgstr ""
-#: part/serializers.py:317
+#: part/serializers.py:367
msgid "Copy Parameters"
msgstr ""
-#: part/serializers.py:317
+#: part/serializers.py:367
msgid "Copy parameter data from original part"
msgstr ""
-#: part/serializers.py:327
+#: part/serializers.py:377
msgid "Initial Stock Quantity"
msgstr ""
-#: part/serializers.py:327
+#: part/serializers.py:377
msgid "Specify initial stock quantity for this Part. If quantity is zero, no stock is added."
msgstr ""
-#: part/serializers.py:333
+#: part/serializers.py:383
msgid "Initial Stock Location"
msgstr ""
-#: part/serializers.py:333
+#: part/serializers.py:383
msgid "Specify initial stock location for this Part"
msgstr ""
-#: part/serializers.py:343
+#: part/serializers.py:393
msgid "Select supplier (or leave blank to skip)"
msgstr ""
-#: part/serializers.py:354
+#: part/serializers.py:404
msgid "Select manufacturer (or leave blank to skip)"
msgstr ""
-#: part/serializers.py:360
+#: part/serializers.py:410
msgid "Manufacturer part number"
msgstr ""
-#: part/serializers.py:367
+#: part/serializers.py:417
msgid "Selected company is not a valid supplier"
msgstr ""
-#: part/serializers.py:375
+#: part/serializers.py:425
msgid "Selected company is not a valid manufacturer"
msgstr ""
-#: part/serializers.py:387
+#: part/serializers.py:437
msgid "Manufacturer part matching this MPN already exists"
msgstr ""
-#: part/serializers.py:395
+#: part/serializers.py:445
msgid "Supplier part matching this SKU already exists"
msgstr ""
-#: part/serializers.py:620 part/templates/part/copy_part.html:9
-#: templates/js/translated/part.js:449
+#: part/serializers.py:682 part/templates/part/copy_part.html:9
+#: templates/js/translated/part.js:448
msgid "Duplicate Part"
msgstr "Дублировать деталь"
-#: part/serializers.py:620
+#: part/serializers.py:682
msgid "Copy initial data from another Part"
msgstr ""
-#: part/serializers.py:625 templates/js/translated/part.js:103
+#: part/serializers.py:687 templates/js/translated/part.js:102
msgid "Initial Stock"
msgstr ""
-#: part/serializers.py:625
+#: part/serializers.py:687
msgid "Create Part with initial stock quantity"
msgstr ""
-#: part/serializers.py:630
+#: part/serializers.py:692
msgid "Supplier Information"
msgstr ""
-#: part/serializers.py:630
+#: part/serializers.py:692
msgid "Add initial supplier information for this part"
msgstr ""
-#: part/serializers.py:636
+#: part/serializers.py:698
msgid "Copy Category Parameters"
msgstr "Копировать параметры категории"
-#: part/serializers.py:637
+#: part/serializers.py:699
msgid "Copy parameter templates from selected part category"
msgstr ""
-#: part/serializers.py:842
+#: part/serializers.py:904
msgid "Limit stocktake report to a particular part, and any variant parts"
msgstr ""
-#: part/serializers.py:848
+#: part/serializers.py:910
msgid "Limit stocktake report to a particular part category, and any child categories"
msgstr ""
-#: part/serializers.py:854
+#: part/serializers.py:916
msgid "Limit stocktake report to a particular stock location, and any child locations"
msgstr ""
-#: part/serializers.py:859
+#: part/serializers.py:921
msgid "Generate Report"
msgstr ""
-#: part/serializers.py:860
+#: part/serializers.py:922
msgid "Generate report file containing calculated stocktake data"
msgstr ""
-#: part/serializers.py:865
+#: part/serializers.py:927
msgid "Update Parts"
msgstr ""
-#: part/serializers.py:866
+#: part/serializers.py:928
msgid "Update specified parts with calculated stocktake data"
msgstr ""
-#: part/serializers.py:874
+#: part/serializers.py:936
msgid "Stocktake functionality is not enabled"
msgstr ""
-#: part/serializers.py:963
+#: part/serializers.py:1025
msgid "Update"
msgstr ""
-#: part/serializers.py:964
+#: part/serializers.py:1026
msgid "Update pricing for this part"
msgstr ""
-#: part/serializers.py:1246
+#: part/serializers.py:1308
msgid "Select part to copy BOM from"
msgstr ""
-#: part/serializers.py:1254
+#: part/serializers.py:1316
msgid "Remove Existing Data"
msgstr ""
-#: part/serializers.py:1255
+#: part/serializers.py:1317
msgid "Remove existing BOM items before copying"
msgstr ""
-#: part/serializers.py:1260
+#: part/serializers.py:1322
msgid "Include Inherited"
msgstr ""
-#: part/serializers.py:1261
+#: part/serializers.py:1323
msgid "Include BOM items which are inherited from templated parts"
msgstr ""
-#: part/serializers.py:1266
+#: part/serializers.py:1328
msgid "Skip Invalid Rows"
msgstr ""
-#: part/serializers.py:1267
+#: part/serializers.py:1329
msgid "Enable this option to skip invalid rows"
msgstr ""
-#: part/serializers.py:1272
+#: part/serializers.py:1334
msgid "Copy Substitute Parts"
msgstr ""
-#: part/serializers.py:1273
+#: part/serializers.py:1335
msgid "Copy substitute parts when duplicate BOM items"
msgstr ""
-#: part/serializers.py:1313
+#: part/serializers.py:1375
msgid "Clear Existing BOM"
msgstr ""
-#: part/serializers.py:1314
+#: part/serializers.py:1376
msgid "Delete existing BOM items before uploading"
msgstr ""
-#: part/serializers.py:1344
+#: part/serializers.py:1406
msgid "No part column specified"
msgstr ""
-#: part/serializers.py:1387
+#: part/serializers.py:1449
msgid "Multiple matching parts found"
msgstr ""
-#: part/serializers.py:1390
+#: part/serializers.py:1452
msgid "No matching part found"
msgstr "Подходящая деталь не найдена"
-#: part/serializers.py:1393
+#: part/serializers.py:1455
msgid "Part is not designated as a component"
msgstr ""
-#: part/serializers.py:1402
+#: part/serializers.py:1464
msgid "Quantity not provided"
msgstr ""
-#: part/serializers.py:1410
+#: part/serializers.py:1472
msgid "Invalid quantity"
msgstr ""
-#: part/serializers.py:1431
+#: part/serializers.py:1493
msgid "At least one BOM item is required"
msgstr ""
@@ -6421,9 +6453,9 @@ msgstr ""
msgid "The available stock for {part.name} has fallen below the configured minimum level"
msgstr ""
-#: part/tasks.py:294 templates/js/translated/part.js:1040
-#: templates/js/translated/part.js:1793 templates/js/translated/part.js:1848
-#: templates/js/translated/purchase_order.js:2052
+#: part/tasks.py:294 templates/js/translated/part.js:1039
+#: templates/js/translated/part.js:1792 templates/js/translated/part.js:1847
+#: templates/js/translated/purchase_order.js:2062
msgid "Total Quantity"
msgstr ""
@@ -6461,14 +6493,6 @@ msgstr ""
msgid "The BOM for %(part)s has not been validated."
msgstr ""
-#: part/templates/part/bom.html:30 part/templates/part/detail.html:291
-msgid "BOM actions"
-msgstr "Действия с BOM"
-
-#: part/templates/part/bom.html:34
-msgid "Delete Items"
-msgstr "Удалить элементы"
-
#: part/templates/part/category.html:34
msgid "Perform stocktake for this part category"
msgstr ""
@@ -6505,7 +6529,7 @@ msgstr "Удалить категорию"
msgid "Top level part category"
msgstr ""
-#: part/templates/part/category.html:121 part/templates/part/category.html:225
+#: part/templates/part/category.html:121 part/templates/part/category.html:206
#: part/templates/part/category_sidebar.html:7
msgid "Subcategories"
msgstr "Подкатегории"
@@ -6518,33 +6542,20 @@ msgstr "Детали (включая подкатегории)"
msgid "Create new part"
msgstr "Создать новую деталь"
-#: part/templates/part/category.html:165 templates/js/translated/bom.js:443
+#: part/templates/part/category.html:165 templates/js/translated/bom.js:444
msgid "New Part"
msgstr "Новая деталь"
-#: part/templates/part/category.html:175 part/templates/part/detail.html:390
-#: part/templates/part/detail.html:421
-msgid "Options"
-msgstr "Настройки"
-
-#: part/templates/part/category.html:179
-msgid "Set category"
-msgstr "Укажите категорию"
-
-#: part/templates/part/category.html:180
-msgid "Set Category"
-msgstr "Укажите категорию"
-
-#: part/templates/part/category.html:208
+#: part/templates/part/category.html:191
#: templates/InvenTree/settings/sidebar.html:47
msgid "Part Parameters"
msgstr "Параметры детали"
-#: part/templates/part/category.html:229
+#: part/templates/part/category.html:210
msgid "Create new part category"
msgstr "Создать новую категорию деталей"
-#: part/templates/part/category.html:230
+#: part/templates/part/category.html:211
msgid "New Category"
msgstr "Новая категория"
@@ -6581,7 +6592,7 @@ msgid "Refresh scheduling data"
msgstr ""
#: part/templates/part/detail.html:45 part/templates/part/prices.html:15
-#: templates/js/translated/tables.js:584
+#: templates/js/translated/tables.js:560
msgid "Refresh"
msgstr "Обновить"
@@ -6592,7 +6603,7 @@ msgstr ""
#: part/templates/part/detail.html:67 part/templates/part/part_sidebar.html:50
#: stock/admin.py:130 templates/InvenTree/settings/part_stocktake.html:29
#: templates/InvenTree/settings/sidebar.html:51
-#: templates/js/translated/stock.js:1952 users/models.py:39
+#: templates/js/translated/stock.js:2109 users/models.py:39
msgid "Stocktake"
msgstr ""
@@ -6604,101 +6615,101 @@ msgstr ""
msgid "Add Test Template"
msgstr ""
-#: part/templates/part/detail.html:145 stock/templates/stock/item.html:53
+#: part/templates/part/detail.html:139 stock/templates/stock/item.html:49
msgid "Sales Order Allocations"
msgstr ""
-#: part/templates/part/detail.html:165
+#: part/templates/part/detail.html:156
msgid "Part Notes"
msgstr ""
-#: part/templates/part/detail.html:180
+#: part/templates/part/detail.html:171
msgid "Part Variants"
msgstr "Разновидности детали"
-#: part/templates/part/detail.html:184
+#: part/templates/part/detail.html:175
msgid "Create new variant"
msgstr "Создать новую разновидность"
-#: part/templates/part/detail.html:185
+#: part/templates/part/detail.html:176
msgid "New Variant"
msgstr "Новая разновидность"
-#: part/templates/part/detail.html:212
+#: part/templates/part/detail.html:199
msgid "Add new parameter"
msgstr ""
-#: part/templates/part/detail.html:249 part/templates/part/part_sidebar.html:58
+#: part/templates/part/detail.html:232 part/templates/part/part_sidebar.html:58
msgid "Related Parts"
msgstr ""
-#: part/templates/part/detail.html:253 part/templates/part/detail.html:254
+#: part/templates/part/detail.html:236 part/templates/part/detail.html:237
msgid "Add Related"
msgstr ""
-#: part/templates/part/detail.html:274 part/templates/part/part_sidebar.html:17
+#: part/templates/part/detail.html:255 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:279
+#: part/templates/part/detail.html:260
msgid "Export actions"
msgstr "Экспорт"
-#: part/templates/part/detail.html:283 templates/js/translated/bom.js:339
+#: part/templates/part/detail.html:264 templates/js/translated/bom.js:340
msgid "Export BOM"
msgstr "Экспорт BOM"
-#: part/templates/part/detail.html:285
+#: part/templates/part/detail.html:266
msgid "Print BOM Report"
msgstr ""
-#: part/templates/part/detail.html:295
+#: part/templates/part/detail.html:272
+msgid "BOM actions"
+msgstr "Действия с BOM"
+
+#: part/templates/part/detail.html:276
msgid "Upload BOM"
msgstr ""
-#: part/templates/part/detail.html:297
+#: part/templates/part/detail.html:278
msgid "Validate BOM"
msgstr ""
-#: part/templates/part/detail.html:302 part/templates/part/detail.html:303
-#: templates/js/translated/bom.js:1279 templates/js/translated/bom.js:1280
+#: part/templates/part/detail.html:283 part/templates/part/detail.html:284
+#: templates/js/translated/bom.js:1299 templates/js/translated/bom.js:1300
msgid "Add BOM Item"
msgstr ""
-#: part/templates/part/detail.html:316
+#: part/templates/part/detail.html:297
msgid "Assemblies"
msgstr "Сборки"
-#: part/templates/part/detail.html:334
+#: part/templates/part/detail.html:313
msgid "Part Builds"
msgstr ""
-#: part/templates/part/detail.html:361 stock/templates/stock/item.html:38
+#: part/templates/part/detail.html:338 stock/templates/stock/item.html:36
msgid "Build Order Allocations"
msgstr ""
-#: part/templates/part/detail.html:377
+#: part/templates/part/detail.html:352
msgid "Part Suppliers"
msgstr "Поставщики"
-#: part/templates/part/detail.html:407
+#: part/templates/part/detail.html:372
msgid "Part Manufacturers"
msgstr ""
-#: part/templates/part/detail.html:423
-msgid "Delete manufacturer parts"
-msgstr ""
-
-#: part/templates/part/detail.html:707
+#: part/templates/part/detail.html:654
msgid "Related Part"
msgstr ""
-#: part/templates/part/detail.html:715
+#: part/templates/part/detail.html:662
msgid "Add Related Part"
msgstr ""
-#: part/templates/part/detail.html:800
+#: part/templates/part/detail.html:747
msgid "Add Test Result Template"
msgstr ""
@@ -6732,13 +6743,13 @@ msgid "Download Part Import Template"
msgstr ""
#: part/templates/part/import_wizard/part_upload.html:92
-#: templates/js/translated/bom.js:308 templates/js/translated/bom.js:342
+#: templates/js/translated/bom.js:309 templates/js/translated/bom.js:343
#: templates/js/translated/order.js:129 templates/js/translated/tables.js:189
msgid "Format"
msgstr ""
#: part/templates/part/import_wizard/part_upload.html:93
-#: templates/js/translated/bom.js:309 templates/js/translated/bom.js:343
+#: templates/js/translated/bom.js:310 templates/js/translated/bom.js:344
#: templates/js/translated/order.js:130
msgid "Select file format"
msgstr ""
@@ -6779,7 +6790,7 @@ msgstr ""
msgid "Transfer part stock"
msgstr ""
-#: part/templates/part/part_base.html:93
+#: part/templates/part/part_base.html:93 templates/js/translated/part.js:2264
msgid "Part actions"
msgstr "Действия с деталью"
@@ -6824,10 +6835,10 @@ msgid "Part is not active"
msgstr ""
#: part/templates/part/part_base.html:148
-#: templates/js/translated/company.js:945
-#: templates/js/translated/company.js:1185
-#: templates/js/translated/model_renderers.js:273
-#: templates/js/translated/part.js:792 templates/js/translated/part.js:1192
+#: templates/js/translated/company.js:1318
+#: templates/js/translated/company.js:1606
+#: templates/js/translated/model_renderers.js:287
+#: templates/js/translated/part.js:791 templates/js/translated/part.js:1191
msgid "Inactive"
msgstr ""
@@ -6850,7 +6861,7 @@ msgstr ""
msgid "Allocated to Sales Orders"
msgstr ""
-#: part/templates/part/part_base.html:237 templates/js/translated/bom.js:1178
+#: part/templates/part/part_base.html:237 templates/js/translated/bom.js:1198
msgid "Can Build"
msgstr ""
@@ -6858,8 +6869,8 @@ msgstr ""
msgid "Minimum stock level"
msgstr "Минимальный складской запас"
-#: part/templates/part/part_base.html:324 templates/js/translated/bom.js:1041
-#: templates/js/translated/part.js:1238 templates/js/translated/part.js:2304
+#: part/templates/part/part_base.html:324 templates/js/translated/bom.js:1059
+#: templates/js/translated/part.js:1237 templates/js/translated/part.js:2380
#: templates/js/translated/pricing.js:391
#: templates/js/translated/pricing.js:1040
msgid "Price Range"
@@ -6882,7 +6893,7 @@ msgstr ""
msgid "Link Barcode to Part"
msgstr ""
-#: part/templates/part/part_base.html:474 templates/js/translated/part.js:2191
+#: part/templates/part/part_base.html:474 templates/js/translated/part.js:2258
msgid "part"
msgstr ""
@@ -6956,9 +6967,9 @@ msgstr "Разновидности"
#: stock/templates/stock/stock_app_base.html:10
#: templates/InvenTree/search.html:153
#: templates/InvenTree/settings/sidebar.html:49
-#: templates/js/translated/part.js:1216 templates/js/translated/part.js:2120
-#: templates/js/translated/part.js:2284 templates/js/translated/stock.js:1022
-#: templates/js/translated/stock.js:1829 templates/navbar.html:31
+#: templates/js/translated/part.js:1215 templates/js/translated/part.js:2119
+#: templates/js/translated/part.js:2360 templates/js/translated/stock.js:1021
+#: templates/js/translated/stock.js:1986 templates/navbar.html:31
msgid "Stock"
msgstr "Склад"
@@ -6989,9 +7000,9 @@ msgstr ""
#: part/templates/part/prices.html:25 stock/admin.py:129
#: stock/templates/stock/item_base.html:442
-#: templates/js/translated/company.js:1313
-#: templates/js/translated/company.js:1323
-#: templates/js/translated/stock.js:1982
+#: templates/js/translated/company.js:1734
+#: templates/js/translated/company.js:1744
+#: templates/js/translated/stock.js:2139
msgid "Last Updated"
msgstr ""
@@ -7054,12 +7065,12 @@ msgstr ""
msgid "Add Sell Price Break"
msgstr ""
-#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:682
-#: templates/js/translated/part.js:2115 templates/js/translated/part.js:2117
+#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:681
+#: templates/js/translated/part.js:2114 templates/js/translated/part.js:2116
msgid "No Stock"
msgstr ""
-#: part/templates/part/stock_count.html:9 templates/InvenTree/index.html:167
+#: part/templates/part/stock_count.html:9 templates/InvenTree/index.html:120
msgid "Low Stock"
msgstr ""
@@ -7163,7 +7174,7 @@ msgid "Match found for barcode data"
msgstr "Найдено совпадение по штрих-коду"
#: plugin/base/barcodes/api.py:120
-#: templates/js/translated/purchase_order.js:1372
+#: templates/js/translated/purchase_order.js:1387
msgid "Barcode matches existing item"
msgstr ""
@@ -7226,43 +7237,43 @@ msgstr ""
msgid "Open link"
msgstr ""
-#: plugin/models.py:27
+#: plugin/models.py:28
msgid "Plugin Configuration"
msgstr ""
-#: plugin/models.py:28
+#: plugin/models.py:29
msgid "Plugin Configurations"
msgstr ""
-#: plugin/models.py:33
+#: plugin/models.py:34
msgid "Key"
msgstr ""
-#: plugin/models.py:34
+#: plugin/models.py:35
msgid "Key of plugin"
msgstr ""
-#: plugin/models.py:42
+#: plugin/models.py:43
msgid "PluginName of the plugin"
msgstr ""
-#: plugin/models.py:48
+#: plugin/models.py:49
msgid "Is the plugin active"
msgstr ""
-#: plugin/models.py:124
+#: plugin/models.py:125
msgid "Sample plugin"
msgstr ""
-#: plugin/models.py:133
+#: plugin/models.py:134
msgid "Builtin Plugin"
msgstr ""
-#: plugin/models.py:159 templates/InvenTree/settings/plugin_settings.html:9
+#: plugin/models.py:160 templates/InvenTree/settings/plugin_settings.html:9
msgid "Plugin"
msgstr ""
-#: plugin/models.py:210
+#: plugin/models.py:211
msgid "Method"
msgstr ""
@@ -7414,47 +7425,47 @@ msgstr ""
msgid "Build query filters (comma-separated list of key=value pairs"
msgstr ""
-#: report/models.py:418
+#: report/models.py:420
msgid "Part Filters"
msgstr ""
-#: report/models.py:419
+#: report/models.py:421
msgid "Part query filters (comma-separated list of key=value pairs"
msgstr ""
-#: report/models.py:453
+#: report/models.py:455
msgid "Purchase order query filters"
msgstr ""
-#: report/models.py:491
+#: report/models.py:493
msgid "Sales order query filters"
msgstr ""
-#: report/models.py:529
+#: report/models.py:531
msgid "Return order query filters"
msgstr ""
-#: report/models.py:582
+#: report/models.py:584
msgid "Snippet"
msgstr ""
-#: report/models.py:583
+#: report/models.py:585
msgid "Report snippet file"
msgstr ""
-#: report/models.py:587
+#: report/models.py:589
msgid "Snippet file description"
msgstr ""
-#: report/models.py:624
+#: report/models.py:626
msgid "Asset"
msgstr ""
-#: report/models.py:625
+#: report/models.py:627
msgid "Report asset file"
msgstr ""
-#: report/models.py:632
+#: report/models.py:634
msgid "Asset file description"
msgstr ""
@@ -7475,8 +7486,8 @@ msgstr ""
#: templates/js/translated/order.js:316 templates/js/translated/pricing.js:527
#: templates/js/translated/pricing.js:596
#: templates/js/translated/pricing.js:820
-#: templates/js/translated/purchase_order.js:2083
-#: templates/js/translated/sales_order.js:1817
+#: templates/js/translated/purchase_order.js:2093
+#: templates/js/translated/sales_order.js:1829
msgid "Unit Price"
msgstr ""
@@ -7488,23 +7499,23 @@ msgstr ""
#: report/templates/report/inventree_po_report_base.html:72
#: report/templates/report/inventree_so_report_base.html:72
-#: templates/js/translated/purchase_order.js:1985
-#: templates/js/translated/sales_order.js:1792
+#: templates/js/translated/purchase_order.js:1995
+#: templates/js/translated/sales_order.js:1804
msgid "Total"
msgstr ""
#: report/templates/report/inventree_return_order_report_base.html:25
#: report/templates/report/inventree_test_report_base.html:88
#: stock/models.py:725 stock/templates/stock/item_base.html:312
-#: templates/js/translated/build.js:502 templates/js/translated/build.js:1423
-#: templates/js/translated/build.js:1989
-#: templates/js/translated/model_renderers.js:201
-#: templates/js/translated/return_order.js:528
-#: templates/js/translated/return_order.js:708
-#: templates/js/translated/sales_order.js:300
-#: templates/js/translated/sales_order.js:1597
-#: templates/js/translated/sales_order.js:1682
-#: templates/js/translated/stock.js:563
+#: templates/js/translated/build.js:508 templates/js/translated/build.js:1306
+#: templates/js/translated/build.js:2281
+#: templates/js/translated/model_renderers.js:215
+#: templates/js/translated/return_order.js:540
+#: templates/js/translated/return_order.js:720
+#: templates/js/translated/sales_order.js:312
+#: templates/js/translated/sales_order.js:1609
+#: templates/js/translated/sales_order.js:1694
+#: templates/js/translated/stock.js:562
msgid "Serial Number"
msgstr "Серийный номер"
@@ -7517,7 +7528,7 @@ msgid "Test Results"
msgstr ""
#: report/templates/report/inventree_test_report_base.html:102
-#: stock/models.py:2243 templates/js/translated/stock.js:1419
+#: stock/models.py:2243 templates/js/translated/stock.js:1418
msgid "Test"
msgstr ""
@@ -7548,8 +7559,8 @@ msgid "Installed Items"
msgstr ""
#: report/templates/report/inventree_test_report_base.html:168
-#: stock/admin.py:104 templates/js/translated/stock.js:667
-#: templates/js/translated/stock.js:838 templates/js/translated/stock.js:2849
+#: stock/admin.py:104 templates/js/translated/stock.js:666
+#: templates/js/translated/stock.js:837 templates/js/translated/stock.js:2976
msgid "Serial"
msgstr ""
@@ -7617,31 +7628,31 @@ msgstr ""
#: stock/admin.py:131 stock/models.py:789
#: stock/templates/stock/item_base.html:429
-#: templates/js/translated/stock.js:1966
+#: templates/js/translated/stock.js:2123
msgid "Expiry Date"
msgstr ""
-#: stock/api.py:420 templates/js/translated/table_filters.js:373
+#: stock/api.py:426 templates/js/translated/table_filters.js:379
msgid "External Location"
msgstr ""
-#: stock/api.py:582
+#: stock/api.py:619
msgid "Quantity is required"
msgstr ""
-#: stock/api.py:589
+#: stock/api.py:626
msgid "Valid part must be supplied"
msgstr ""
-#: stock/api.py:615
+#: stock/api.py:652
msgid "The given supplier part does not exist"
msgstr ""
-#: stock/api.py:624
+#: stock/api.py:661
msgid "The supplier part has a pack size defined, but flag use_pack_size not set"
msgstr ""
-#: stock/api.py:642
+#: stock/api.py:679
msgid "Serial numbers cannot be supplied for a non-trackable part"
msgstr ""
@@ -7652,7 +7663,7 @@ msgid "Stock Location"
msgstr "Место хранения"
#: stock/models.py:55 stock/templates/stock/location.html:177
-#: templates/InvenTree/search.html:166 templates/js/translated/search.js:220
+#: templates/InvenTree/search.html:166 templates/js/translated/search.js:178
#: users/models.py:40
msgid "Stock Locations"
msgstr "Места хранения"
@@ -7670,8 +7681,8 @@ msgstr ""
msgid "Stock items may not be directly located into a structural stock locations, but may be located to child locations."
msgstr ""
-#: stock/models.py:132 templates/js/translated/stock.js:2529
-#: templates/js/translated/table_filters.js:213
+#: stock/models.py:132 templates/js/translated/stock.js:2660
+#: templates/js/translated/table_filters.js:219
msgid "External"
msgstr ""
@@ -7687,7 +7698,7 @@ msgstr ""
msgid "Stock items cannot be located into structural stock locations!"
msgstr ""
-#: stock/models.py:583 stock/serializers.py:174
+#: stock/models.py:583 stock/serializers.py:223
msgid "Stock item cannot be created for virtual parts"
msgstr ""
@@ -7821,7 +7832,7 @@ msgstr ""
msgid "Quantity does not match serial numbers"
msgstr ""
-#: stock/models.py:1403 stock/serializers.py:374
+#: stock/models.py:1403 stock/serializers.py:440
msgid "Serial numbers already exist"
msgstr "Серийные номера уже существуют"
@@ -7849,7 +7860,7 @@ msgstr ""
msgid "Serialized stock cannot be merged"
msgstr ""
-#: stock/models.py:1496 stock/serializers.py:975
+#: stock/models.py:1496 stock/serializers.py:1092
msgid "Duplicate stock items"
msgstr ""
@@ -7901,132 +7912,141 @@ msgstr ""
msgid "Test notes"
msgstr ""
-#: stock/serializers.py:76
+#: stock/serializers.py:121
msgid "Serial number is too large"
msgstr ""
-#: stock/serializers.py:166
+#: stock/serializers.py:215
msgid "Use pack size when adding: the quantity defined is the number of packs"
msgstr ""
-#: stock/serializers.py:254
+#: stock/serializers.py:316
msgid "Purchase price of this stock item, per unit or pack"
msgstr ""
-#: stock/serializers.py:307
+#: stock/serializers.py:373
msgid "Enter number of stock items to serialize"
msgstr ""
-#: stock/serializers.py:319
+#: stock/serializers.py:385
#, python-brace-format
msgid "Quantity must not exceed available stock quantity ({q})"
msgstr ""
-#: stock/serializers.py:325
+#: stock/serializers.py:391
msgid "Enter serial numbers for new items"
msgstr ""
-#: stock/serializers.py:336 stock/serializers.py:932 stock/serializers.py:1174
+#: stock/serializers.py:402 stock/serializers.py:1049 stock/serializers.py:1291
msgid "Destination stock location"
msgstr ""
-#: stock/serializers.py:343
+#: stock/serializers.py:409
msgid "Optional note field"
msgstr ""
-#: stock/serializers.py:353
+#: stock/serializers.py:419
msgid "Serial numbers cannot be assigned to this part"
msgstr ""
-#: stock/serializers.py:414
+#: stock/serializers.py:480
msgid "Select stock item to install"
msgstr ""
-#: stock/serializers.py:427
-msgid "Stock item is unavailable"
-msgstr ""
-
-#: stock/serializers.py:434
-msgid "Selected part is not in the Bill of Materials"
-msgstr "Выбранная деталь отсутствует в спецификации"
-
-#: stock/serializers.py:471
-msgid "Destination location for uninstalled item"
-msgstr ""
-
-#: stock/serializers.py:476 stock/serializers.py:557
+#: stock/serializers.py:485 stock/serializers.py:543 stock/serializers.py:624
+#: stock/serializers.py:682
msgid "Add transaction note (optional)"
msgstr ""
-#: stock/serializers.py:510
+#: stock/serializers.py:494
+msgid "Stock item is unavailable"
+msgstr ""
+
+#: stock/serializers.py:501
+msgid "Selected part is not in the Bill of Materials"
+msgstr "Выбранная деталь отсутствует в спецификации"
+
+#: stock/serializers.py:538
+msgid "Destination location for uninstalled item"
+msgstr ""
+
+#: stock/serializers.py:577
msgid "Select part to convert stock item into"
msgstr ""
-#: stock/serializers.py:521
+#: stock/serializers.py:588
msgid "Selected part is not a valid option for conversion"
msgstr ""
-#: stock/serializers.py:552
+#: stock/serializers.py:619
msgid "Destination location for returned item"
msgstr ""
-#: stock/serializers.py:787
+#: stock/serializers.py:663
+msgid "Select stock items to change status"
+msgstr ""
+
+#: stock/serializers.py:670
+msgid "No stock items selected"
+msgstr ""
+
+#: stock/serializers.py:904
msgid "Part must be salable"
msgstr ""
-#: stock/serializers.py:791
+#: stock/serializers.py:908
msgid "Item is allocated to a sales order"
msgstr ""
-#: stock/serializers.py:795
+#: stock/serializers.py:912
msgid "Item is allocated to a build order"
msgstr ""
-#: stock/serializers.py:826
+#: stock/serializers.py:943
msgid "Customer to assign stock items"
msgstr ""
-#: stock/serializers.py:832
+#: stock/serializers.py:949
msgid "Selected company is not a customer"
msgstr "Выбранная компания не является покупателем"
-#: stock/serializers.py:840
+#: stock/serializers.py:957
msgid "Stock assignment notes"
msgstr ""
-#: stock/serializers.py:850 stock/serializers.py:1081
+#: stock/serializers.py:967 stock/serializers.py:1198
msgid "A list of stock items must be provided"
msgstr ""
-#: stock/serializers.py:939
+#: stock/serializers.py:1056
msgid "Stock merging notes"
msgstr ""
-#: stock/serializers.py:944
+#: stock/serializers.py:1061
msgid "Allow mismatched suppliers"
msgstr ""
-#: stock/serializers.py:945
+#: stock/serializers.py:1062
msgid "Allow stock items with different supplier parts to be merged"
msgstr ""
-#: stock/serializers.py:950
+#: stock/serializers.py:1067
msgid "Allow mismatched status"
msgstr ""
-#: stock/serializers.py:951
+#: stock/serializers.py:1068
msgid "Allow stock items with different status codes to be merged"
msgstr ""
-#: stock/serializers.py:961
+#: stock/serializers.py:1078
msgid "At least two stock items must be provided"
msgstr ""
-#: stock/serializers.py:1043
+#: stock/serializers.py:1160
msgid "StockItem primary key value"
msgstr ""
-#: stock/serializers.py:1071
+#: stock/serializers.py:1188
msgid "Stock transaction notes"
msgstr ""
@@ -8034,48 +8054,48 @@ msgstr ""
msgid "Stock Tracking Information"
msgstr ""
-#: stock/templates/stock/item.html:69
+#: stock/templates/stock/item.html:63
msgid "Child Stock Items"
msgstr "Дочерние единицы хранения"
-#: stock/templates/stock/item.html:77
+#: stock/templates/stock/item.html:71
msgid "This stock item does not have any child items"
msgstr "Эта единица хранения не имеет дочерних элементов"
-#: stock/templates/stock/item.html:86
+#: stock/templates/stock/item.html:80
#: stock/templates/stock/stock_sidebar.html:12
msgid "Test Data"
msgstr ""
-#: stock/templates/stock/item.html:90 stock/templates/stock/item_base.html:66
+#: stock/templates/stock/item.html:84 stock/templates/stock/item_base.html:66
msgid "Test Report"
msgstr ""
-#: stock/templates/stock/item.html:94 stock/templates/stock/item.html:288
+#: stock/templates/stock/item.html:88 stock/templates/stock/item.html:278
msgid "Delete Test Data"
msgstr ""
-#: stock/templates/stock/item.html:98
+#: stock/templates/stock/item.html:92
msgid "Add Test Data"
msgstr ""
-#: stock/templates/stock/item.html:132
+#: stock/templates/stock/item.html:124
msgid "Stock Item Notes"
msgstr "Заметки о единице хранения"
-#: stock/templates/stock/item.html:147
+#: stock/templates/stock/item.html:139
msgid "Installed Stock Items"
msgstr "Установленные единицы хранения"
-#: stock/templates/stock/item.html:152 templates/js/translated/stock.js:2996
+#: stock/templates/stock/item.html:144 templates/js/translated/stock.js:3123
msgid "Install Stock Item"
msgstr "Установить единицу хранения"
-#: stock/templates/stock/item.html:276
+#: stock/templates/stock/item.html:266
msgid "Delete all test results for this stock item"
msgstr ""
-#: stock/templates/stock/item.html:305 templates/js/translated/stock.js:1611
+#: stock/templates/stock/item.html:295 templates/js/translated/stock.js:1610
msgid "Add Test Result"
msgstr ""
@@ -8083,13 +8103,13 @@ msgstr ""
msgid "Locate stock item"
msgstr ""
-#: stock/templates/stock/item_base.html:52 templates/stock_table.html:21
+#: stock/templates/stock/item_base.html:52
msgid "Scan to Location"
msgstr ""
#: stock/templates/stock/item_base.html:60
#: stock/templates/stock/location.html:69
-#: templates/js/translated/filters.js:322
+#: templates/js/translated/filters.js:432
msgid "Printing actions"
msgstr ""
@@ -8098,15 +8118,17 @@ msgid "Stock adjustment actions"
msgstr ""
#: stock/templates/stock/item_base.html:80
-#: stock/templates/stock/location.html:88 templates/stock_table.html:35
+#: stock/templates/stock/location.html:88 templates/js/translated/stock.js:1735
msgid "Count stock"
msgstr ""
-#: stock/templates/stock/item_base.html:82 templates/stock_table.html:33
+#: stock/templates/stock/item_base.html:82
+#: templates/js/translated/stock.js:1717
msgid "Add stock"
msgstr ""
-#: stock/templates/stock/item_base.html:83 templates/stock_table.html:34
+#: stock/templates/stock/item_base.html:83
+#: templates/js/translated/stock.js:1726
msgid "Remove stock"
msgstr ""
@@ -8115,11 +8137,12 @@ msgid "Serialize stock"
msgstr ""
#: stock/templates/stock/item_base.html:89
-#: stock/templates/stock/location.html:94 templates/stock_table.html:36
+#: stock/templates/stock/location.html:94 templates/js/translated/stock.js:1744
msgid "Transfer stock"
msgstr ""
-#: stock/templates/stock/item_base.html:92 templates/stock_table.html:39
+#: stock/templates/stock/item_base.html:92
+#: templates/js/translated/stock.js:1798
msgid "Assign to customer"
msgstr ""
@@ -8159,6 +8182,11 @@ msgstr "Редактировать единицу хранения"
msgid "Delete stock item"
msgstr "Удалить единицу хранения"
+#: stock/templates/stock/item_base.html:170 templates/InvenTree/search.html:139
+#: templates/js/translated/build.js:2046 templates/navbar.html:38
+msgid "Build"
+msgstr "Сборка"
+
#: stock/templates/stock/item_base.html:194
msgid "Parent Item"
msgstr "Родительский элемент"
@@ -8221,7 +8249,7 @@ msgid "Available Quantity"
msgstr ""
#: stock/templates/stock/item_base.html:394
-#: templates/js/translated/build.js:2015
+#: templates/js/translated/build.js:2306
msgid "No location set"
msgstr ""
@@ -8239,7 +8267,7 @@ msgid "This StockItem expired on %(item.expiry_date)s"
msgstr ""
#: stock/templates/stock/item_base.html:433
-#: templates/js/translated/table_filters.js:381
+#: templates/js/translated/table_filters.js:387
msgid "Expired"
msgstr ""
@@ -8249,7 +8277,7 @@ msgid "This StockItem expires on %(item.expiry_date)s"
msgstr ""
#: stock/templates/stock/item_base.html:435
-#: templates/js/translated/table_filters.js:387
+#: templates/js/translated/table_filters.js:393
msgid "Stale"
msgstr ""
@@ -8258,7 +8286,7 @@ msgid "No stocktake performed"
msgstr ""
#: stock/templates/stock/item_base.html:503
-#: templates/js/translated/stock.js:1745
+#: templates/js/translated/stock.js:1865
msgid "stock item"
msgstr ""
@@ -8364,20 +8392,20 @@ msgstr "Создать новое место хранения"
msgid "New Location"
msgstr "Новое место хранения"
-#: stock/templates/stock/location.html:287
-#: templates/js/translated/stock.js:2318
+#: stock/templates/stock/location.html:278
+#: templates/js/translated/stock.js:2449
msgid "stock location"
msgstr ""
-#: stock/templates/stock/location.html:304
+#: stock/templates/stock/location.html:295
msgid "Scanned stock container into this location"
msgstr ""
-#: stock/templates/stock/location.html:377
+#: stock/templates/stock/location.html:368
msgid "Stock Location QR Code"
msgstr ""
-#: stock/templates/stock/location.html:388
+#: stock/templates/stock/location.html:379
msgid "Link Barcode to Stock Location"
msgstr ""
@@ -8451,71 +8479,71 @@ msgstr ""
msgid "Index"
msgstr ""
-#: templates/InvenTree/index.html:89
+#: templates/InvenTree/index.html:39
msgid "Subscribed Parts"
msgstr ""
-#: templates/InvenTree/index.html:102
+#: templates/InvenTree/index.html:53
msgid "Subscribed Categories"
msgstr ""
-#: templates/InvenTree/index.html:112
+#: templates/InvenTree/index.html:63
msgid "Latest Parts"
msgstr "Последние детали"
-#: templates/InvenTree/index.html:126
+#: templates/InvenTree/index.html:78
msgid "BOM Waiting Validation"
msgstr "BOM для проверки"
-#: templates/InvenTree/index.html:155
+#: templates/InvenTree/index.html:107
msgid "Recently Updated"
msgstr ""
-#: templates/InvenTree/index.html:180
+#: templates/InvenTree/index.html:134
msgid "Depleted Stock"
msgstr ""
-#: templates/InvenTree/index.html:193
+#: templates/InvenTree/index.html:148
msgid "Required for Build Orders"
msgstr ""
-#: templates/InvenTree/index.html:208
+#: templates/InvenTree/index.html:156
msgid "Expired Stock"
msgstr ""
-#: templates/InvenTree/index.html:222
+#: templates/InvenTree/index.html:172
msgid "Stale Stock"
msgstr ""
-#: templates/InvenTree/index.html:247
+#: templates/InvenTree/index.html:199
msgid "Build Orders In Progress"
msgstr ""
-#: templates/InvenTree/index.html:258
+#: templates/InvenTree/index.html:210
msgid "Overdue Build Orders"
msgstr ""
-#: templates/InvenTree/index.html:278
+#: templates/InvenTree/index.html:230
msgid "Outstanding Purchase Orders"
msgstr ""
-#: templates/InvenTree/index.html:289
+#: templates/InvenTree/index.html:241
msgid "Overdue Purchase Orders"
msgstr ""
-#: templates/InvenTree/index.html:310
+#: templates/InvenTree/index.html:262
msgid "Outstanding Sales Orders"
msgstr ""
-#: templates/InvenTree/index.html:321
+#: templates/InvenTree/index.html:273
msgid "Overdue Sales Orders"
msgstr ""
-#: templates/InvenTree/index.html:347
+#: templates/InvenTree/index.html:299
msgid "InvenTree News"
msgstr ""
-#: templates/InvenTree/index.html:349
+#: templates/InvenTree/index.html:301
msgid "Current News"
msgstr ""
@@ -8672,29 +8700,29 @@ msgstr "Настройки плагинов"
msgid "Changing the settings below require you to immediately restart the server. Do not change this while under active usage."
msgstr ""
-#: templates/InvenTree/settings/plugin.html:37
+#: templates/InvenTree/settings/plugin.html:35
#: templates/InvenTree/settings/sidebar.html:64
msgid "Plugins"
msgstr ""
-#: templates/InvenTree/settings/plugin.html:43
+#: templates/InvenTree/settings/plugin.html:41
#: templates/js/translated/plugin.js:151
msgid "Install Plugin"
msgstr ""
-#: templates/InvenTree/settings/plugin.html:51
+#: templates/InvenTree/settings/plugin.html:49
msgid "External plugins are not enabled for this InvenTree installation"
msgstr ""
-#: templates/InvenTree/settings/plugin.html:70
+#: templates/InvenTree/settings/plugin.html:64
msgid "Plugin Error Stack"
msgstr ""
-#: templates/InvenTree/settings/plugin.html:79
+#: templates/InvenTree/settings/plugin.html:73
msgid "Stage"
msgstr ""
-#: templates/InvenTree/settings/plugin.html:81
+#: templates/InvenTree/settings/plugin.html:75
#: templates/js/translated/notification.js:75
msgid "Message"
msgstr ""
@@ -8767,14 +8795,6 @@ msgstr ""
msgid "Commit Message"
msgstr ""
-#: templates/InvenTree/settings/plugin_settings.html:126
-msgid "Sign Status"
-msgstr ""
-
-#: templates/InvenTree/settings/plugin_settings.html:131
-msgid "Sign Key"
-msgstr ""
-
#: templates/InvenTree/settings/po.html:7
msgid "Purchase Order Settings"
msgstr "Настройки заказа на закупку"
@@ -8870,12 +8890,12 @@ msgid "No category parameter templates found"
msgstr "Шаблоны параметров категории не найдены"
#: templates/InvenTree/settings/settings_staff_js.html:212
-#: templates/js/translated/part.js:1618
+#: templates/js/translated/part.js:1617
msgid "Edit Template"
msgstr "Редактировать шаблон"
#: templates/InvenTree/settings/settings_staff_js.html:213
-#: templates/js/translated/part.js:1619
+#: templates/js/translated/part.js:1618
msgid "Delete Template"
msgstr "Удалить шаблон"
@@ -8913,7 +8933,7 @@ msgid "Home Page"
msgstr "Главная страница"
#: templates/InvenTree/settings/sidebar.html:15
-#: templates/js/translated/tables.js:575 templates/navbar.html:107
+#: templates/js/translated/tables.js:551 templates/navbar.html:107
#: templates/search.html:8 templates/search_form.html:6
#: templates/search_form.html:7
msgid "Search"
@@ -8990,6 +9010,7 @@ msgid "Unverified"
msgstr ""
#: templates/InvenTree/settings/user.html:80
+#: templates/js/translated/company.js:984
msgid "Primary"
msgstr ""
@@ -9204,44 +9225,48 @@ msgstr ""
msgid "Update Available"
msgstr ""
-#: templates/about.html:42
+#: templates/about.html:43
+msgid "Commit Branch"
+msgstr ""
+
+#: templates/about.html:49
msgid "InvenTree Documentation"
msgstr ""
-#: templates/about.html:47
+#: templates/about.html:54
msgid "API Version"
msgstr ""
-#: templates/about.html:52
+#: templates/about.html:59
msgid "Python Version"
msgstr ""
-#: templates/about.html:57
+#: templates/about.html:64
msgid "Django Version"
msgstr ""
-#: templates/about.html:62
+#: templates/about.html:69
msgid "View Code on GitHub"
msgstr "Посмотреть код на GitHub"
-#: templates/about.html:67
+#: templates/about.html:74
msgid "Credits"
msgstr ""
-#: templates/about.html:72
+#: templates/about.html:79
msgid "Mobile App"
msgstr ""
-#: templates/about.html:77
+#: templates/about.html:84
msgid "Submit Bug Report"
msgstr ""
-#: templates/about.html:84 templates/clip.html:4
+#: templates/about.html:91 templates/clip.html:4
#: templates/js/translated/helpers.js:585
msgid "copy to clipboard"
msgstr ""
-#: templates/about.html:84
+#: templates/about.html:91
msgid "copy version information"
msgstr ""
@@ -9435,14 +9460,6 @@ msgstr ""
msgid "Add Attachment"
msgstr ""
-#: templates/attachment_table.html:11
-msgid "Delete selected attachments"
-msgstr ""
-
-#: templates/attachment_table.html:12 templates/js/translated/attachment.js:129
-msgid "Delete Attachments"
-msgstr ""
-
#: templates/barcode_data.html:5
msgid "Barcode Identifier"
msgstr ""
@@ -9487,7 +9504,7 @@ msgid "The following parts are low on required stock"
msgstr ""
#: templates/email/build_order_required_stock.html:18
-#: templates/js/translated/bom.js:1633
+#: templates/js/translated/bom.js:1653 templates/js/translated/build.js:2485
msgid "Required Quantity"
msgstr ""
@@ -9501,7 +9518,7 @@ msgid "Click on the following link to view this part"
msgstr ""
#: templates/email/low_stock_notification.html:18
-#: templates/js/translated/part.js:3140
+#: templates/js/translated/part.js:3125
msgid "Minimum Quantity"
msgstr "Минимальное количество"
@@ -9573,23 +9590,35 @@ msgstr "Код ошибки"
msgid "All selected attachments will be deleted"
msgstr ""
-#: templates/js/translated/attachment.js:255
+#: templates/js/translated/attachment.js:129
+msgid "Delete Attachments"
+msgstr ""
+
+#: templates/js/translated/attachment.js:205
+msgid "Delete attachments"
+msgstr ""
+
+#: templates/js/translated/attachment.js:253
+msgid "Attachment actions"
+msgstr ""
+
+#: templates/js/translated/attachment.js:275
msgid "No attachments found"
msgstr "Вложение не найдено"
-#: templates/js/translated/attachment.js:285
+#: templates/js/translated/attachment.js:305
msgid "Edit Attachment"
msgstr ""
-#: templates/js/translated/attachment.js:326
+#: templates/js/translated/attachment.js:336
msgid "Upload Date"
msgstr ""
-#: templates/js/translated/attachment.js:346
+#: templates/js/translated/attachment.js:356
msgid "Edit attachment"
msgstr ""
-#: templates/js/translated/attachment.js:354
+#: templates/js/translated/attachment.js:364
msgid "Delete attachment"
msgstr ""
@@ -9646,7 +9675,7 @@ msgstr ""
msgid "Unlink"
msgstr ""
-#: templates/js/translated/barcode.js:550 templates/js/translated/stock.js:1118
+#: templates/js/translated/barcode.js:550 templates/js/translated/stock.js:1117
msgid "Remove stock item"
msgstr ""
@@ -9704,775 +9733,869 @@ msgstr ""
msgid "Barcode does not match a valid location"
msgstr ""
-#: templates/js/translated/bom.js:77
+#: templates/js/translated/bom.js:78
msgid "Create BOM Item"
msgstr ""
-#: templates/js/translated/bom.js:131
+#: templates/js/translated/bom.js:132
msgid "Display row data"
msgstr ""
-#: templates/js/translated/bom.js:187
+#: templates/js/translated/bom.js:188
msgid "Row Data"
msgstr ""
-#: templates/js/translated/bom.js:188 templates/js/translated/bom.js:699
+#: templates/js/translated/bom.js:189 templates/js/translated/bom.js:700
#: templates/js/translated/modals.js:71 templates/js/translated/modals.js:622
#: templates/js/translated/modals.js:746 templates/js/translated/modals.js:1054
-#: templates/js/translated/purchase_order.js:791 templates/modals.html:15
+#: templates/js/translated/purchase_order.js:802 templates/modals.html:15
#: templates/modals.html:27 templates/modals.html:39 templates/modals.html:50
msgid "Close"
msgstr ""
-#: templates/js/translated/bom.js:305
+#: templates/js/translated/bom.js:306
msgid "Download BOM Template"
msgstr "Скачать шаблон BOM"
-#: templates/js/translated/bom.js:350
+#: templates/js/translated/bom.js:351
msgid "Multi Level BOM"
msgstr ""
-#: templates/js/translated/bom.js:351
+#: templates/js/translated/bom.js:352
msgid "Include BOM data for subassemblies"
msgstr ""
-#: templates/js/translated/bom.js:356
+#: templates/js/translated/bom.js:357
msgid "Levels"
msgstr ""
-#: templates/js/translated/bom.js:357
+#: templates/js/translated/bom.js:358
msgid "Select maximum number of BOM levels to export (0 = all levels)"
msgstr ""
-#: templates/js/translated/bom.js:364
+#: templates/js/translated/bom.js:365
msgid "Include Alternative Parts"
msgstr ""
-#: templates/js/translated/bom.js:365
+#: templates/js/translated/bom.js:366
msgid "Include alternative parts in exported BOM"
msgstr ""
-#: templates/js/translated/bom.js:370
+#: templates/js/translated/bom.js:371
msgid "Include Parameter Data"
msgstr ""
-#: templates/js/translated/bom.js:371
+#: templates/js/translated/bom.js:372
msgid "Include part parameter data in exported BOM"
msgstr ""
-#: templates/js/translated/bom.js:376
+#: templates/js/translated/bom.js:377
msgid "Include Stock Data"
msgstr ""
-#: templates/js/translated/bom.js:377
+#: templates/js/translated/bom.js:378
msgid "Include part stock data in exported BOM"
msgstr ""
-#: templates/js/translated/bom.js:382
+#: templates/js/translated/bom.js:383
msgid "Include Manufacturer Data"
msgstr ""
-#: templates/js/translated/bom.js:383
+#: templates/js/translated/bom.js:384
msgid "Include part manufacturer data in exported BOM"
msgstr ""
-#: templates/js/translated/bom.js:388
+#: templates/js/translated/bom.js:389
msgid "Include Supplier Data"
msgstr ""
-#: templates/js/translated/bom.js:389
+#: templates/js/translated/bom.js:390
msgid "Include part supplier data in exported BOM"
msgstr ""
-#: templates/js/translated/bom.js:394
+#: templates/js/translated/bom.js:395
msgid "Include Pricing Data"
msgstr ""
-#: templates/js/translated/bom.js:395
+#: templates/js/translated/bom.js:396
msgid "Include part pricing data in exported BOM"
msgstr ""
-#: templates/js/translated/bom.js:590
+#: templates/js/translated/bom.js:591
msgid "Remove substitute part"
msgstr ""
-#: templates/js/translated/bom.js:644
+#: templates/js/translated/bom.js:645
msgid "Select and add a new substitute part using the input below"
msgstr ""
-#: templates/js/translated/bom.js:655
+#: templates/js/translated/bom.js:656
msgid "Are you sure you wish to remove this substitute part link?"
msgstr ""
-#: templates/js/translated/bom.js:661
+#: templates/js/translated/bom.js:662
msgid "Remove Substitute Part"
msgstr ""
-#: templates/js/translated/bom.js:700
+#: templates/js/translated/bom.js:701
msgid "Add Substitute"
msgstr ""
-#: templates/js/translated/bom.js:701
+#: templates/js/translated/bom.js:702
msgid "Edit BOM Item Substitutes"
msgstr ""
-#: templates/js/translated/bom.js:763
+#: templates/js/translated/bom.js:764
msgid "All selected BOM items will be deleted"
msgstr ""
-#: templates/js/translated/bom.js:779
+#: templates/js/translated/bom.js:780
msgid "Delete selected BOM items?"
msgstr ""
-#: templates/js/translated/bom.js:906
+#: templates/js/translated/bom.js:826
+msgid "Delete items"
+msgstr ""
+
+#: templates/js/translated/bom.js:924
msgid "Load BOM for subassembly"
msgstr ""
-#: templates/js/translated/bom.js:916
+#: templates/js/translated/bom.js:934
msgid "Substitutes Available"
msgstr ""
-#: templates/js/translated/bom.js:920 templates/js/translated/build.js:2090
+#: templates/js/translated/bom.js:938 templates/js/translated/build.js:2429
msgid "Variant stock allowed"
msgstr ""
-#: templates/js/translated/bom.js:984
+#: templates/js/translated/bom.js:1002
msgid "Substitutes"
msgstr ""
-#: templates/js/translated/bom.js:1104
+#: templates/js/translated/bom.js:1122
msgid "BOM pricing is complete"
msgstr ""
-#: templates/js/translated/bom.js:1109
+#: templates/js/translated/bom.js:1127
msgid "BOM pricing is incomplete"
msgstr ""
-#: templates/js/translated/bom.js:1116
+#: templates/js/translated/bom.js:1134
msgid "No pricing available"
msgstr ""
-#: templates/js/translated/bom.js:1147 templates/js/translated/build.js:2173
-#: templates/js/translated/sales_order.js:1887
+#: templates/js/translated/bom.js:1165 templates/js/translated/build.js:2523
+#: templates/js/translated/sales_order.js:1899
msgid "No Stock Available"
msgstr ""
-#: templates/js/translated/bom.js:1152 templates/js/translated/build.js:2177
+#: templates/js/translated/bom.js:1170 templates/js/translated/build.js:2527
msgid "Includes variant and substitute stock"
msgstr ""
-#: templates/js/translated/bom.js:1154 templates/js/translated/build.js:2179
-#: templates/js/translated/part.js:1230
+#: templates/js/translated/bom.js:1172 templates/js/translated/build.js:2529
+#: templates/js/translated/part.js:1229
msgid "Includes variant stock"
msgstr ""
-#: templates/js/translated/bom.js:1156 templates/js/translated/build.js:2181
+#: templates/js/translated/bom.js:1174 templates/js/translated/build.js:2531
msgid "Includes substitute stock"
msgstr ""
-#: templates/js/translated/bom.js:1184 templates/js/translated/build.js:2164
-#: templates/js/translated/build.js:2255
+#: templates/js/translated/bom.js:1204 templates/js/translated/build.js:2514
msgid "Consumable item"
msgstr ""
-#: templates/js/translated/bom.js:1244
+#: templates/js/translated/bom.js:1264
msgid "Validate BOM Item"
msgstr ""
-#: templates/js/translated/bom.js:1246
+#: templates/js/translated/bom.js:1266
msgid "This line has been validated"
msgstr ""
-#: templates/js/translated/bom.js:1248
+#: templates/js/translated/bom.js:1268
msgid "Edit substitute parts"
msgstr ""
-#: templates/js/translated/bom.js:1250 templates/js/translated/bom.js:1445
+#: templates/js/translated/bom.js:1270 templates/js/translated/bom.js:1465
msgid "Edit BOM Item"
msgstr "Редактировать элемент BOM"
-#: templates/js/translated/bom.js:1252
+#: templates/js/translated/bom.js:1272
msgid "Delete BOM Item"
msgstr "Удалить элемент BOM"
-#: templates/js/translated/bom.js:1272
+#: templates/js/translated/bom.js:1292
msgid "View BOM"
msgstr ""
-#: templates/js/translated/bom.js:1356 templates/js/translated/build.js:1927
+#: templates/js/translated/bom.js:1376
msgid "No BOM items found"
msgstr "Элементы BOM не найдены"
-#: templates/js/translated/bom.js:1616 templates/js/translated/build.js:2073
+#: templates/js/translated/bom.js:1636 templates/js/translated/build.js:2414
msgid "Required Part"
msgstr ""
-#: templates/js/translated/bom.js:1642
+#: templates/js/translated/bom.js:1662
msgid "Inherited from parent BOM"
msgstr "Унаследовано от родительского BOM"
-#: templates/js/translated/build.js:126
+#: templates/js/translated/build.js:136
msgid "Edit Build Order"
msgstr "Редактировать заказ на сборку"
-#: templates/js/translated/build.js:169
+#: templates/js/translated/build.js:179
msgid "Create Build Order"
msgstr "Создать заказ на сборку"
-#: templates/js/translated/build.js:202
+#: templates/js/translated/build.js:211
msgid "Cancel Build Order"
msgstr ""
-#: templates/js/translated/build.js:211
+#: templates/js/translated/build.js:220
msgid "Are you sure you wish to cancel this build?"
msgstr "Вы уверены, что хотите отменить эту сборку?"
-#: templates/js/translated/build.js:217
+#: templates/js/translated/build.js:226
msgid "Stock items have been allocated to this build order"
msgstr ""
-#: templates/js/translated/build.js:224
+#: templates/js/translated/build.js:233
msgid "There are incomplete outputs remaining for this build order"
msgstr ""
-#: templates/js/translated/build.js:276
+#: templates/js/translated/build.js:285
msgid "Build order is ready to be completed"
msgstr ""
-#: templates/js/translated/build.js:284
+#: templates/js/translated/build.js:293
msgid "This build order cannot be completed as there are incomplete outputs"
msgstr ""
-#: templates/js/translated/build.js:289
+#: templates/js/translated/build.js:298
msgid "Build Order is incomplete"
msgstr ""
-#: templates/js/translated/build.js:307
+#: templates/js/translated/build.js:316
msgid "Complete Build Order"
msgstr ""
-#: templates/js/translated/build.js:348 templates/js/translated/stock.js:119
-#: templates/js/translated/stock.js:265
+#: templates/js/translated/build.js:357 templates/js/translated/stock.js:118
+#: templates/js/translated/stock.js:264
msgid "Next available serial number"
msgstr ""
-#: templates/js/translated/build.js:350 templates/js/translated/stock.js:121
-#: templates/js/translated/stock.js:267
+#: templates/js/translated/build.js:359 templates/js/translated/stock.js:120
+#: templates/js/translated/stock.js:266
msgid "Latest serial number"
msgstr ""
-#: templates/js/translated/build.js:359
+#: templates/js/translated/build.js:368
msgid "The Bill of Materials contains trackable parts"
msgstr "Спецификация содержит отслеживаемые детали"
-#: templates/js/translated/build.js:360
+#: templates/js/translated/build.js:369
msgid "Build outputs must be generated individually"
msgstr ""
-#: templates/js/translated/build.js:368
+#: templates/js/translated/build.js:377
msgid "Trackable parts can have serial numbers specified"
msgstr "Отслеживаемые детали могут иметь серийные номера"
-#: templates/js/translated/build.js:369
+#: templates/js/translated/build.js:378
msgid "Enter serial numbers to generate multiple single build outputs"
msgstr ""
-#: templates/js/translated/build.js:376
+#: templates/js/translated/build.js:385
msgid "Create Build Output"
msgstr ""
-#: templates/js/translated/build.js:407
+#: templates/js/translated/build.js:416
msgid "Allocate stock items to this build output"
msgstr ""
-#: templates/js/translated/build.js:418
-msgid "Unallocate stock from build output"
+#: templates/js/translated/build.js:424
+msgid "Deallocate stock from build output"
msgstr ""
-#: templates/js/translated/build.js:427
+#: templates/js/translated/build.js:433
msgid "Complete build output"
msgstr ""
-#: templates/js/translated/build.js:435
+#: templates/js/translated/build.js:441
msgid "Scrap build output"
msgstr ""
-#: templates/js/translated/build.js:442
+#: templates/js/translated/build.js:448
msgid "Delete build output"
msgstr ""
-#: templates/js/translated/build.js:462
-msgid "Are you sure you wish to unallocate stock items from this build?"
+#: templates/js/translated/build.js:468
+msgid "Are you sure you wish to deallocate the selected stock items from this build?"
msgstr ""
-#: templates/js/translated/build.js:480
-msgid "Unallocate Stock Items"
+#: templates/js/translated/build.js:486
+msgid "Deallocate Stock Items"
msgstr ""
-#: templates/js/translated/build.js:566 templates/js/translated/build.js:690
-#: templates/js/translated/build.js:812
+#: templates/js/translated/build.js:572 templates/js/translated/build.js:696
+#: templates/js/translated/build.js:818
msgid "Select Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:567 templates/js/translated/build.js:691
-#: templates/js/translated/build.js:813
+#: templates/js/translated/build.js:573 templates/js/translated/build.js:697
+#: templates/js/translated/build.js:819
msgid "At least one build output must be selected"
msgstr ""
-#: templates/js/translated/build.js:581
+#: templates/js/translated/build.js:587
msgid "Selected build outputs will be marked as complete"
msgstr ""
-#: templates/js/translated/build.js:585 templates/js/translated/build.js:715
-#: templates/js/translated/build.js:835
+#: templates/js/translated/build.js:591 templates/js/translated/build.js:721
+#: templates/js/translated/build.js:841
msgid "Output"
msgstr ""
-#: templates/js/translated/build.js:609
+#: templates/js/translated/build.js:615
msgid "Complete Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:706
+#: templates/js/translated/build.js:712
msgid "Selected build outputs will be marked as scrapped"
msgstr ""
-#: templates/js/translated/build.js:708
+#: templates/js/translated/build.js:714
msgid "Scrapped output are marked as rejected"
msgstr ""
-#: templates/js/translated/build.js:709
+#: templates/js/translated/build.js:715
msgid "Allocated stock items will no longer be available"
msgstr ""
-#: templates/js/translated/build.js:710
+#: templates/js/translated/build.js:716
msgid "The completion status of the build order will not be adjusted"
msgstr ""
-#: templates/js/translated/build.js:737
+#: templates/js/translated/build.js:743
msgid "Scrap Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:827
+#: templates/js/translated/build.js:833
msgid "Selected build outputs will be deleted"
msgstr ""
-#: templates/js/translated/build.js:829
+#: templates/js/translated/build.js:835
msgid "Build output data will be permanently deleted"
msgstr ""
-#: templates/js/translated/build.js:830
+#: templates/js/translated/build.js:836
msgid "Allocated stock items will be returned to stock"
msgstr ""
-#: templates/js/translated/build.js:848
+#: templates/js/translated/build.js:854
msgid "Delete Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:934
+#: templates/js/translated/build.js:941
msgid "No build order allocations found"
msgstr ""
-#: templates/js/translated/build.js:971
+#: templates/js/translated/build.js:970 templates/js/translated/build.js:2270
+msgid "Allocated Quantity"
+msgstr ""
+
+#: templates/js/translated/build.js:984
msgid "Location not specified"
msgstr ""
-#: templates/js/translated/build.js:1047
+#: templates/js/translated/build.js:1006
+msgid "Complete outputs"
+msgstr ""
+
+#: templates/js/translated/build.js:1024
+msgid "Scrap outputs"
+msgstr ""
+
+#: templates/js/translated/build.js:1042
+msgid "Delete outputs"
+msgstr ""
+
+#: templates/js/translated/build.js:1100
msgid "build output"
msgstr ""
-#: templates/js/translated/build.js:1048
+#: templates/js/translated/build.js:1101
msgid "build outputs"
msgstr ""
-#: templates/js/translated/build.js:1383
+#: templates/js/translated/build.js:1105
+msgid "Build output actions"
+msgstr ""
+
+#: templates/js/translated/build.js:1274
msgid "No active build outputs found"
msgstr ""
-#: templates/js/translated/build.js:1457
-msgid "Allocated Stock"
+#: templates/js/translated/build.js:1329
+msgid "Allocated Lines"
msgstr ""
-#: templates/js/translated/build.js:1464
-msgid "No tracked BOM items for this build"
+#: templates/js/translated/build.js:1343
+msgid "Required Tests"
msgstr ""
-#: templates/js/translated/build.js:1486
-msgid "Completed Tests"
-msgstr ""
-
-#: templates/js/translated/build.js:1491
-msgid "No required tests for this build"
-msgstr ""
-
-#: templates/js/translated/build.js:2032 templates/js/translated/build.js:3056
-#: templates/js/translated/sales_order.js:1632
-msgid "Edit stock allocation"
-msgstr ""
-
-#: templates/js/translated/build.js:2034 templates/js/translated/build.js:3057
-#: templates/js/translated/sales_order.js:1633
-msgid "Delete stock allocation"
-msgstr ""
-
-#: templates/js/translated/build.js:2050
-msgid "Edit Allocation"
-msgstr ""
-
-#: templates/js/translated/build.js:2060
-msgid "Remove Allocation"
-msgstr ""
-
-#: templates/js/translated/build.js:2086
-msgid "Substitute parts available"
-msgstr ""
-
-#: templates/js/translated/build.js:2122
-msgid "Quantity Per"
-msgstr ""
-
-#: templates/js/translated/build.js:2167
-#: templates/js/translated/sales_order.js:1894
-msgid "Insufficient stock available"
-msgstr ""
-
-#: templates/js/translated/build.js:2169
-#: templates/js/translated/sales_order.js:1892
-msgid "Sufficient stock available"
-msgstr ""
-
-#: templates/js/translated/build.js:2263
-#: templates/js/translated/sales_order.js:1993
-msgid "Build stock"
-msgstr ""
-
-#: templates/js/translated/build.js:2267 templates/stock_table.html:38
-msgid "Order stock"
-msgstr ""
-
-#: templates/js/translated/build.js:2270
-#: templates/js/translated/sales_order.js:1987
-msgid "Allocate stock"
-msgstr ""
-
-#: templates/js/translated/build.js:2310
-#: templates/js/translated/purchase_order.js:616
-#: templates/js/translated/sales_order.js:1159
+#: templates/js/translated/build.js:1502
+#: templates/js/translated/purchase_order.js:627
+#: templates/js/translated/sales_order.js:1171
msgid "Select Parts"
msgstr ""
-#: templates/js/translated/build.js:2311
-#: templates/js/translated/sales_order.js:1160
+#: templates/js/translated/build.js:1503
+#: templates/js/translated/sales_order.js:1172
msgid "You must select at least one part to allocate"
msgstr ""
-#: templates/js/translated/build.js:2359
-#: templates/js/translated/sales_order.js:1109
+#: templates/js/translated/build.js:1566
+#: templates/js/translated/sales_order.js:1121
msgid "Specify stock allocation quantity"
msgstr ""
-#: templates/js/translated/build.js:2438
+#: templates/js/translated/build.js:1643
msgid "All Parts Allocated"
msgstr ""
-#: templates/js/translated/build.js:2439
+#: templates/js/translated/build.js:1644
msgid "All selected parts have been fully allocated"
msgstr ""
-#: templates/js/translated/build.js:2453
-#: templates/js/translated/sales_order.js:1174
+#: templates/js/translated/build.js:1658
+#: templates/js/translated/sales_order.js:1186
msgid "Select source location (leave blank to take from all locations)"
msgstr ""
-#: templates/js/translated/build.js:2481
+#: templates/js/translated/build.js:1686
msgid "Allocate Stock Items to Build Order"
msgstr ""
-#: templates/js/translated/build.js:2492
-#: templates/js/translated/sales_order.js:1271
+#: templates/js/translated/build.js:1697
+#: templates/js/translated/sales_order.js:1283
msgid "No matching stock locations"
msgstr ""
-#: templates/js/translated/build.js:2565
-#: templates/js/translated/sales_order.js:1348
+#: templates/js/translated/build.js:1770
+#: templates/js/translated/sales_order.js:1360
msgid "No matching stock items"
msgstr ""
-#: templates/js/translated/build.js:2662
+#: templates/js/translated/build.js:1867
msgid "Automatic Stock Allocation"
msgstr ""
-#: templates/js/translated/build.js:2663
+#: templates/js/translated/build.js:1868
msgid "Stock items will be automatically allocated to this build order, according to the provided guidelines"
msgstr ""
-#: templates/js/translated/build.js:2665
+#: templates/js/translated/build.js:1870
msgid "If a location is specified, stock will only be allocated from that location"
msgstr ""
-#: templates/js/translated/build.js:2666
+#: templates/js/translated/build.js:1871
msgid "If stock is considered interchangeable, it will be allocated from the first location it is found"
msgstr ""
-#: templates/js/translated/build.js:2667
+#: templates/js/translated/build.js:1872
msgid "If substitute stock is allowed, it will be used where stock of the primary part cannot be found"
msgstr ""
-#: templates/js/translated/build.js:2694
+#: templates/js/translated/build.js:1899
msgid "Allocate Stock Items"
msgstr ""
-#: templates/js/translated/build.js:2800
+#: templates/js/translated/build.js:2005
msgid "No builds matching query"
msgstr ""
-#: templates/js/translated/build.js:2835 templates/js/translated/part.js:2208
-#: templates/js/translated/part.js:2692 templates/js/translated/stock.js:1759
-#: templates/js/translated/stock.js:2458
+#: templates/js/translated/build.js:2040 templates/js/translated/build.js:2408
+#: templates/js/translated/part.js:2284 templates/js/translated/part.js:2677
+#: templates/js/translated/stock.js:1899 templates/js/translated/stock.js:2589
msgid "Select"
msgstr ""
-#: templates/js/translated/build.js:2849
+#: templates/js/translated/build.js:2054
msgid "Build order is overdue"
msgstr ""
-#: templates/js/translated/build.js:2883
+#: templates/js/translated/build.js:2100
msgid "Progress"
msgstr ""
-#: templates/js/translated/build.js:2919 templates/js/translated/stock.js:2779
+#: templates/js/translated/build.js:2136 templates/js/translated/stock.js:2910
msgid "No user information"
msgstr ""
-#: templates/js/translated/build.js:2934
+#: templates/js/translated/build.js:2151
msgid "group"
msgstr ""
-#: templates/js/translated/build.js:3033
-msgid "No parts allocated for"
+#: templates/js/translated/build.js:2315
+#: templates/js/translated/sales_order.js:1644
+msgid "Edit stock allocation"
msgstr ""
-#: templates/js/translated/company.js:87
+#: templates/js/translated/build.js:2316
+#: templates/js/translated/sales_order.js:1645
+msgid "Delete stock allocation"
+msgstr ""
+
+#: templates/js/translated/build.js:2331
+msgid "Edit Allocation"
+msgstr ""
+
+#: templates/js/translated/build.js:2343
+msgid "Remove Allocation"
+msgstr ""
+
+#: templates/js/translated/build.js:2384
+msgid "build line"
+msgstr ""
+
+#: templates/js/translated/build.js:2385
+msgid "build lines"
+msgstr ""
+
+#: templates/js/translated/build.js:2403
+msgid "No build lines found"
+msgstr ""
+
+#: templates/js/translated/build.js:2433 templates/js/translated/part.js:767
+#: templates/js/translated/part.js:1175
+msgid "Trackable part"
+msgstr "Отслеживаемая деталь"
+
+#: templates/js/translated/build.js:2468
+msgid "Unit Quantity"
+msgstr ""
+
+#: templates/js/translated/build.js:2517
+#: templates/js/translated/sales_order.js:1906
+msgid "Insufficient stock available"
+msgstr ""
+
+#: templates/js/translated/build.js:2519
+#: templates/js/translated/sales_order.js:1904
+msgid "Sufficient stock available"
+msgstr ""
+
+#: templates/js/translated/build.js:2566
+msgid "Consumable Item"
+msgstr ""
+
+#: templates/js/translated/build.js:2571
+msgid "Tracked item"
+msgstr ""
+
+#: templates/js/translated/build.js:2578
+#: templates/js/translated/sales_order.js:2005
+msgid "Build stock"
+msgstr ""
+
+#: templates/js/translated/build.js:2583 templates/js/translated/stock.js:1779
+msgid "Order stock"
+msgstr ""
+
+#: templates/js/translated/build.js:2587
+#: templates/js/translated/sales_order.js:1999
+msgid "Allocate stock"
+msgstr ""
+
+#: templates/js/translated/build.js:2591
+msgid "Remove stock allocation"
+msgstr ""
+
+#: templates/js/translated/company.js:97
msgid "Add Manufacturer"
msgstr "Добавить производителя"
-#: templates/js/translated/company.js:100
-#: templates/js/translated/company.js:202
+#: templates/js/translated/company.js:110
+#: templates/js/translated/company.js:212
msgid "Add Manufacturer Part"
msgstr "Добавить деталь производителя"
-#: templates/js/translated/company.js:121
+#: templates/js/translated/company.js:131
msgid "Edit Manufacturer Part"
msgstr "Редактировать деталь производителя"
-#: templates/js/translated/company.js:190
-#: templates/js/translated/purchase_order.js:94
+#: templates/js/translated/company.js:200
+#: templates/js/translated/purchase_order.js:93
msgid "Add Supplier"
msgstr "Добавить поставщика"
-#: templates/js/translated/company.js:232
-#: templates/js/translated/purchase_order.js:338
+#: templates/js/translated/company.js:242
+#: templates/js/translated/purchase_order.js:349
msgid "Add Supplier Part"
msgstr "Добавить деталь поставщика"
-#: templates/js/translated/company.js:333
+#: templates/js/translated/company.js:343
msgid "All selected supplier parts will be deleted"
msgstr "Все выбранные детали поставщика будут удалены"
-#: templates/js/translated/company.js:349
+#: templates/js/translated/company.js:359
msgid "Delete Supplier Parts"
msgstr ""
-#: templates/js/translated/company.js:457
+#: templates/js/translated/company.js:464
msgid "Add new Company"
msgstr "Добавить новую компанию"
-#: templates/js/translated/company.js:528
+#: templates/js/translated/company.js:535
msgid "Parts Supplied"
msgstr ""
-#: templates/js/translated/company.js:537
+#: templates/js/translated/company.js:544
msgid "Parts Manufactured"
msgstr ""
-#: templates/js/translated/company.js:552
+#: templates/js/translated/company.js:559
msgid "No company information found"
msgstr "Информация о компании не найдена"
-#: templates/js/translated/company.js:601
+#: templates/js/translated/company.js:608
msgid "Create New Contact"
msgstr ""
-#: templates/js/translated/company.js:617
-#: templates/js/translated/company.js:740
+#: templates/js/translated/company.js:624
+#: templates/js/translated/company.js:747
msgid "Edit Contact"
msgstr ""
-#: templates/js/translated/company.js:654
+#: templates/js/translated/company.js:661
msgid "All selected contacts will be deleted"
msgstr ""
-#: templates/js/translated/company.js:660
-#: templates/js/translated/company.js:724
+#: templates/js/translated/company.js:667
+#: templates/js/translated/company.js:731
msgid "Role"
msgstr ""
-#: templates/js/translated/company.js:668
+#: templates/js/translated/company.js:675
msgid "Delete Contacts"
msgstr ""
-#: templates/js/translated/company.js:699
+#: templates/js/translated/company.js:706
msgid "No contacts found"
msgstr ""
-#: templates/js/translated/company.js:712
+#: templates/js/translated/company.js:719
msgid "Phone Number"
msgstr ""
-#: templates/js/translated/company.js:718
+#: templates/js/translated/company.js:725
msgid "Email Address"
msgstr ""
-#: templates/js/translated/company.js:744
+#: templates/js/translated/company.js:751
msgid "Delete Contact"
msgstr ""
-#: templates/js/translated/company.js:818
+#: templates/js/translated/company.js:886
+msgid "Create New Address"
+msgstr ""
+
+#: templates/js/translated/company.js:901
+#: templates/js/translated/company.js:1066
+msgid "Edit Address"
+msgstr ""
+
+#: templates/js/translated/company.js:936
+msgid "All selected addresses will be deleted"
+msgstr ""
+
+#: templates/js/translated/company.js:950
+msgid "Delete Addresses"
+msgstr ""
+
+#: templates/js/translated/company.js:977
+msgid "No addresses found"
+msgstr ""
+
+#: templates/js/translated/company.js:1020
+msgid "Postal city"
+msgstr ""
+
+#: templates/js/translated/company.js:1026
+msgid "State/province"
+msgstr ""
+
+#: templates/js/translated/company.js:1038
+msgid "Courier notes"
+msgstr ""
+
+#: templates/js/translated/company.js:1044
+msgid "Internal notes"
+msgstr ""
+
+#: templates/js/translated/company.js:1070
+msgid "Delete Address"
+msgstr ""
+
+#: templates/js/translated/company.js:1143
msgid "All selected manufacturer parts will be deleted"
msgstr ""
-#: templates/js/translated/company.js:833
+#: templates/js/translated/company.js:1158
msgid "Delete Manufacturer Parts"
msgstr ""
-#: templates/js/translated/company.js:867
+#: templates/js/translated/company.js:1192
msgid "All selected parameters will be deleted"
msgstr ""
-#: templates/js/translated/company.js:881
+#: templates/js/translated/company.js:1206
msgid "Delete Parameters"
msgstr "Удалить параметры"
-#: templates/js/translated/company.js:917
+#: templates/js/translated/company.js:1222
+#: templates/js/translated/company.js:1510 templates/js/translated/part.js:2213
+msgid "Order parts"
+msgstr "Заказать детали"
+
+#: templates/js/translated/company.js:1239
+msgid "Delete manufacturer parts"
+msgstr ""
+
+#: templates/js/translated/company.js:1271
+msgid "Manufacturer part actions"
+msgstr ""
+
+#: templates/js/translated/company.js:1290
msgid "No manufacturer parts found"
msgstr "Информация о детали производителя не найдена"
-#: templates/js/translated/company.js:937
-#: templates/js/translated/company.js:1177 templates/js/translated/part.js:776
-#: templates/js/translated/part.js:1184
+#: templates/js/translated/company.js:1310
+#: templates/js/translated/company.js:1598 templates/js/translated/part.js:775
+#: templates/js/translated/part.js:1183
msgid "Template part"
msgstr "Деталь-шаблон"
-#: templates/js/translated/company.js:941
-#: templates/js/translated/company.js:1181 templates/js/translated/part.js:780
-#: templates/js/translated/part.js:1188
+#: templates/js/translated/company.js:1314
+#: templates/js/translated/company.js:1602 templates/js/translated/part.js:779
+#: templates/js/translated/part.js:1187
msgid "Assembled part"
msgstr ""
-#: templates/js/translated/company.js:1061 templates/js/translated/part.js:1437
+#: templates/js/translated/company.js:1434 templates/js/translated/part.js:1436
msgid "No parameters found"
msgstr "Параметры не найдены"
-#: templates/js/translated/company.js:1096 templates/js/translated/part.js:1500
+#: templates/js/translated/company.js:1469 templates/js/translated/part.js:1499
msgid "Edit parameter"
msgstr "Редактировать параметр"
-#: templates/js/translated/company.js:1097 templates/js/translated/part.js:1501
+#: templates/js/translated/company.js:1470 templates/js/translated/part.js:1500
msgid "Delete parameter"
msgstr "Удалить параметр"
-#: templates/js/translated/company.js:1114 templates/js/translated/part.js:1407
+#: templates/js/translated/company.js:1487 templates/js/translated/part.js:1406
msgid "Edit Parameter"
msgstr "Редактировать параметр"
-#: templates/js/translated/company.js:1123 templates/js/translated/part.js:1522
+#: templates/js/translated/company.js:1496 templates/js/translated/part.js:1521
msgid "Delete Parameter"
msgstr "Удалить параметр"
-#: templates/js/translated/company.js:1156
+#: templates/js/translated/company.js:1527
+msgid "Delete supplier parts"
+msgstr "Удалить деталь поставщика"
+
+#: templates/js/translated/company.js:1577
msgid "No supplier parts found"
msgstr "Информация о детали поставщика не найдена"
-#: templates/js/translated/company.js:1274
+#: templates/js/translated/company.js:1695
msgid "Base Units"
msgstr ""
-#: templates/js/translated/company.js:1304
+#: templates/js/translated/company.js:1725
msgid "Availability"
msgstr ""
-#: templates/js/translated/company.js:1335
+#: templates/js/translated/company.js:1756
msgid "Edit supplier part"
msgstr "Редактировать деталь поставщика"
-#: templates/js/translated/company.js:1336
+#: templates/js/translated/company.js:1757
msgid "Delete supplier part"
msgstr "Удалить деталь поставщика"
-#: templates/js/translated/company.js:1389
+#: templates/js/translated/company.js:1810
#: templates/js/translated/pricing.js:694
msgid "Delete Price Break"
msgstr ""
-#: templates/js/translated/company.js:1399
+#: templates/js/translated/company.js:1820
#: templates/js/translated/pricing.js:712
msgid "Edit Price Break"
msgstr ""
-#: templates/js/translated/company.js:1414
+#: templates/js/translated/company.js:1835
msgid "No price break information found"
msgstr ""
-#: templates/js/translated/company.js:1443
+#: templates/js/translated/company.js:1864
msgid "Last updated"
msgstr "Последнее обновление"
-#: templates/js/translated/company.js:1450
+#: templates/js/translated/company.js:1871
msgid "Edit price break"
msgstr ""
-#: templates/js/translated/company.js:1451
+#: templates/js/translated/company.js:1872
msgid "Delete price break"
msgstr ""
-#: templates/js/translated/filters.js:186
-#: templates/js/translated/filters.js:550
+#: templates/js/translated/filters.js:187
+#: templates/js/translated/filters.js:673
msgid "true"
msgstr ""
-#: templates/js/translated/filters.js:190
-#: templates/js/translated/filters.js:551
+#: templates/js/translated/filters.js:191
+#: templates/js/translated/filters.js:674
msgid "false"
msgstr ""
-#: templates/js/translated/filters.js:214
+#: templates/js/translated/filters.js:215
msgid "Select filter"
msgstr ""
-#: templates/js/translated/filters.js:328
+#: templates/js/translated/filters.js:438
msgid "Print Labels"
msgstr ""
-#: templates/js/translated/filters.js:332
+#: templates/js/translated/filters.js:442
msgid "Print Reports"
msgstr ""
-#: templates/js/translated/filters.js:344
+#: templates/js/translated/filters.js:454
msgid "Download table data"
msgstr ""
-#: templates/js/translated/filters.js:351
+#: templates/js/translated/filters.js:461
msgid "Reload table data"
msgstr ""
-#: templates/js/translated/filters.js:360
+#: templates/js/translated/filters.js:470
msgid "Add new filter"
msgstr ""
-#: templates/js/translated/filters.js:368
+#: templates/js/translated/filters.js:478
msgid "Clear all filters"
msgstr ""
-#: templates/js/translated/filters.js:460
+#: templates/js/translated/filters.js:583
msgid "Create filter"
msgstr ""
@@ -10497,6 +10620,12 @@ msgstr "Операция удаления не разрешена"
msgid "View operation not allowed"
msgstr "Операция просмотра не разрешена"
+#: templates/js/translated/forms.js:506 templates/js/translated/helpers.js:105
+#: templates/js/translated/part.js:369 templates/js/translated/pricing.js:629
+#: templates/js/translated/stock.js:215 users/models.py:253
+msgid "Delete"
+msgstr "Удалить"
+
#: templates/js/translated/forms.js:752
msgid "Keep this form open"
msgstr ""
@@ -10514,23 +10643,23 @@ msgstr "Форма содержит ошибки"
msgid "No results found"
msgstr "Не найдено"
-#: templates/js/translated/forms.js:2071 templates/js/translated/search.js:281
+#: templates/js/translated/forms.js:2071 templates/js/translated/search.js:239
msgid "Searching"
msgstr ""
-#: templates/js/translated/forms.js:2276
+#: templates/js/translated/forms.js:2285
msgid "Clear input"
msgstr ""
-#: templates/js/translated/forms.js:2733
+#: templates/js/translated/forms.js:2742
msgid "File Column"
msgstr ""
-#: templates/js/translated/forms.js:2733
+#: templates/js/translated/forms.js:2742
msgid "Field Name"
msgstr ""
-#: templates/js/translated/forms.js:2745
+#: templates/js/translated/forms.js:2754
msgid "Select Columns"
msgstr ""
@@ -10550,6 +10679,14 @@ msgstr ""
msgid "False"
msgstr ""
+#: templates/js/translated/index.js:99
+msgid "No parts required for builds"
+msgstr ""
+
+#: templates/js/translated/index.js:125
+msgid "Allocated Stock"
+msgstr ""
+
#: templates/js/translated/label.js:58
msgid "Select Printer"
msgstr ""
@@ -10651,7 +10788,7 @@ msgstr ""
#: templates/js/translated/news.js:38
#: templates/js/translated/notification.js:45
-#: templates/js/translated/part.js:1577
+#: templates/js/translated/part.js:1576
msgid "ID"
msgstr "Идентификатор"
@@ -10700,7 +10837,7 @@ msgid "Delete Line"
msgstr ""
#: templates/js/translated/order.js:281
-#: templates/js/translated/purchase_order.js:1958
+#: templates/js/translated/purchase_order.js:1968
msgid "No line items found"
msgstr ""
@@ -10716,363 +10853,355 @@ msgstr ""
msgid "Delete line"
msgstr ""
-#: templates/js/translated/part.js:91
+#: templates/js/translated/part.js:90
msgid "Part Attributes"
msgstr "Атрибуты детали"
-#: templates/js/translated/part.js:95
+#: templates/js/translated/part.js:94
msgid "Part Creation Options"
msgstr "Настройки создания детали"
-#: templates/js/translated/part.js:99
+#: templates/js/translated/part.js:98
msgid "Part Duplication Options"
msgstr "Настройки дублирования детали"
-#: templates/js/translated/part.js:122
+#: templates/js/translated/part.js:121
msgid "Add Part Category"
msgstr "Добавить категорию"
-#: templates/js/translated/part.js:294
+#: templates/js/translated/part.js:293
msgid "Parent part category"
msgstr "Родительская категория"
-#: templates/js/translated/part.js:310 templates/js/translated/stock.js:147
+#: templates/js/translated/part.js:309 templates/js/translated/stock.js:146
msgid "Icon (optional) - Explore all available icons on"
msgstr ""
-#: templates/js/translated/part.js:330
+#: templates/js/translated/part.js:329
msgid "Create Part Category"
msgstr "Создать категорию деталей"
-#: templates/js/translated/part.js:333
+#: templates/js/translated/part.js:332
msgid "Create new category after this one"
msgstr ""
-#: templates/js/translated/part.js:334
+#: templates/js/translated/part.js:333
msgid "Part category created"
msgstr ""
-#: templates/js/translated/part.js:348
+#: templates/js/translated/part.js:347
msgid "Edit Part Category"
msgstr "Редактировать категорию"
-#: templates/js/translated/part.js:361
+#: templates/js/translated/part.js:360
msgid "Are you sure you want to delete this part category?"
msgstr "Вы уверены, что хотите удалить эту категорию?"
-#: templates/js/translated/part.js:366
+#: templates/js/translated/part.js:365
msgid "Move to parent category"
msgstr ""
-#: templates/js/translated/part.js:375
+#: templates/js/translated/part.js:374
msgid "Delete Part Category"
msgstr "Удалить категорию"
-#: templates/js/translated/part.js:379
+#: templates/js/translated/part.js:378
msgid "Action for parts in this category"
msgstr ""
-#: templates/js/translated/part.js:384
+#: templates/js/translated/part.js:383
msgid "Action for child categories"
msgstr ""
-#: templates/js/translated/part.js:408
+#: templates/js/translated/part.js:407
msgid "Create Part"
msgstr "Создать деталь"
-#: templates/js/translated/part.js:410
+#: templates/js/translated/part.js:409
msgid "Create another part after this one"
msgstr "Создать ещё одну деталь после этой"
-#: templates/js/translated/part.js:411
+#: templates/js/translated/part.js:410
msgid "Part created successfully"
msgstr "Деталь создана успешно"
-#: templates/js/translated/part.js:439
+#: templates/js/translated/part.js:438
msgid "Edit Part"
msgstr ""
-#: templates/js/translated/part.js:441
+#: templates/js/translated/part.js:440
msgid "Part edited"
msgstr ""
-#: templates/js/translated/part.js:452
+#: templates/js/translated/part.js:451
msgid "Create Part Variant"
msgstr "Создать разновидность детали"
-#: templates/js/translated/part.js:509
+#: templates/js/translated/part.js:508
msgid "Active Part"
msgstr ""
-#: templates/js/translated/part.js:510
+#: templates/js/translated/part.js:509
msgid "Part cannot be deleted as it is currently active"
msgstr ""
-#: templates/js/translated/part.js:524
+#: templates/js/translated/part.js:523
msgid "Deleting this part cannot be reversed"
msgstr ""
-#: templates/js/translated/part.js:526
+#: templates/js/translated/part.js:525
msgid "Any stock items for this part will be deleted"
msgstr ""
-#: templates/js/translated/part.js:527
+#: templates/js/translated/part.js:526
msgid "This part will be removed from any Bills of Material"
msgstr ""
-#: templates/js/translated/part.js:528
+#: templates/js/translated/part.js:527
msgid "All manufacturer and supplier information for this part will be deleted"
msgstr ""
-#: templates/js/translated/part.js:535
+#: templates/js/translated/part.js:534
msgid "Delete Part"
msgstr ""
-#: templates/js/translated/part.js:571
+#: templates/js/translated/part.js:570
msgid "You are subscribed to notifications for this item"
msgstr "Вы подписаны на уведомления для данного элемента"
-#: templates/js/translated/part.js:573
+#: templates/js/translated/part.js:572
msgid "You have subscribed to notifications for this item"
msgstr "Вы подписались на уведомления для данного элемента"
-#: templates/js/translated/part.js:578
+#: templates/js/translated/part.js:577
msgid "Subscribe to notifications for this item"
msgstr "Включить уведомления для данного элемента"
-#: templates/js/translated/part.js:580
+#: templates/js/translated/part.js:579
msgid "You have unsubscribed to notifications for this item"
msgstr "Вы отписались от уведомлений для данного элемента"
-#: templates/js/translated/part.js:597
+#: templates/js/translated/part.js:596
msgid "Validating the BOM will mark each line item as valid"
msgstr ""
-#: templates/js/translated/part.js:607
+#: templates/js/translated/part.js:606
msgid "Validate Bill of Materials"
msgstr ""
-#: templates/js/translated/part.js:610
+#: templates/js/translated/part.js:609
msgid "Validated Bill of Materials"
msgstr ""
-#: templates/js/translated/part.js:635
+#: templates/js/translated/part.js:634
msgid "Copy Bill of Materials"
msgstr ""
-#: templates/js/translated/part.js:663
-#: templates/js/translated/table_filters.js:660
+#: templates/js/translated/part.js:662
+#: templates/js/translated/table_filters.js:682
msgid "Low stock"
msgstr ""
-#: templates/js/translated/part.js:666
+#: templates/js/translated/part.js:665
msgid "No stock available"
msgstr ""
-#: templates/js/translated/part.js:726
+#: templates/js/translated/part.js:725
msgid "Demand"
msgstr ""
-#: templates/js/translated/part.js:749
+#: templates/js/translated/part.js:748
msgid "Unit"
msgstr ""
-#: templates/js/translated/part.js:768 templates/js/translated/part.js:1176
-msgid "Trackable part"
-msgstr "Отслеживаемая деталь"
-
-#: templates/js/translated/part.js:772 templates/js/translated/part.js:1180
+#: templates/js/translated/part.js:771 templates/js/translated/part.js:1179
msgid "Virtual part"
msgstr ""
-#: templates/js/translated/part.js:784
+#: templates/js/translated/part.js:783
msgid "Subscribed part"
msgstr ""
-#: templates/js/translated/part.js:788
+#: templates/js/translated/part.js:787
msgid "Salable part"
msgstr ""
-#: templates/js/translated/part.js:863
+#: templates/js/translated/part.js:862
msgid "Schedule generation of a new stocktake report."
msgstr ""
-#: templates/js/translated/part.js:863
+#: templates/js/translated/part.js:862
msgid "Once complete, the stocktake report will be available for download."
msgstr ""
-#: templates/js/translated/part.js:871
+#: templates/js/translated/part.js:870
msgid "Generate Stocktake Report"
msgstr ""
-#: templates/js/translated/part.js:875
+#: templates/js/translated/part.js:874
msgid "Stocktake report scheduled"
msgstr ""
-#: templates/js/translated/part.js:1024
+#: templates/js/translated/part.js:1023
msgid "No stocktake information available"
msgstr ""
-#: templates/js/translated/part.js:1082 templates/js/translated/part.js:1118
+#: templates/js/translated/part.js:1081 templates/js/translated/part.js:1117
msgid "Edit Stocktake Entry"
msgstr ""
-#: templates/js/translated/part.js:1086 templates/js/translated/part.js:1128
+#: templates/js/translated/part.js:1085 templates/js/translated/part.js:1127
msgid "Delete Stocktake Entry"
msgstr ""
-#: templates/js/translated/part.js:1255
+#: templates/js/translated/part.js:1254
msgid "No variants found"
msgstr "Разновидности не найдены"
-#: templates/js/translated/part.js:1572
+#: templates/js/translated/part.js:1571
msgid "No part parameter templates found"
msgstr "Шаблоны параметров детали не найдены"
-#: templates/js/translated/part.js:1635
+#: templates/js/translated/part.js:1634
msgid "Edit Part Parameter Template"
msgstr ""
-#: templates/js/translated/part.js:1647
+#: templates/js/translated/part.js:1646
msgid "Any parameters which reference this template will also be deleted"
msgstr ""
-#: templates/js/translated/part.js:1655
+#: templates/js/translated/part.js:1654
msgid "Delete Part Parameter Template"
msgstr ""
-#: templates/js/translated/part.js:1689
-#: templates/js/translated/purchase_order.js:1618
+#: templates/js/translated/part.js:1688
+#: templates/js/translated/purchase_order.js:1633
msgid "No purchase orders found"
msgstr "Заказов на закупку не найдено"
-#: templates/js/translated/part.js:1832
-#: templates/js/translated/purchase_order.js:2121
-#: templates/js/translated/return_order.js:740
-#: templates/js/translated/sales_order.js:1855
+#: templates/js/translated/part.js:1831
+#: templates/js/translated/purchase_order.js:2131
+#: templates/js/translated/return_order.js:752
+#: templates/js/translated/sales_order.js:1867
msgid "This line item is overdue"
msgstr ""
-#: templates/js/translated/part.js:1877
-#: templates/js/translated/purchase_order.js:2188
+#: templates/js/translated/part.js:1876
+#: templates/js/translated/purchase_order.js:2198
msgid "Receive line item"
msgstr ""
-#: templates/js/translated/part.js:1944
+#: templates/js/translated/part.js:1943
msgid "Delete part relationship"
msgstr ""
-#: templates/js/translated/part.js:1966
+#: templates/js/translated/part.js:1965
msgid "Delete Part Relationship"
msgstr ""
-#: templates/js/translated/part.js:2054 templates/js/translated/part.js:2366
+#: templates/js/translated/part.js:2053 templates/js/translated/part.js:2442
msgid "No parts found"
msgstr "Детали не найдены"
-#: templates/js/translated/part.js:2192
-msgid "parts"
-msgstr ""
-
-#: templates/js/translated/part.js:2276
-msgid "No category"
-msgstr "Нет категории"
-
-#: templates/js/translated/part.js:2390 templates/js/translated/part.js:2611
-#: templates/js/translated/stock.js:2417
-msgid "Display as list"
-msgstr "Список"
-
-#: templates/js/translated/part.js:2406
-msgid "Display as grid"
-msgstr "Таблица"
-
-#: templates/js/translated/part.js:2472
+#: templates/js/translated/part.js:2174
msgid "Set the part category for the selected parts"
msgstr ""
-#: templates/js/translated/part.js:2477
+#: templates/js/translated/part.js:2179
msgid "Set Part Category"
msgstr "Укажите категорию"
+#: templates/js/translated/part.js:2204
+msgid "Set category"
+msgstr "Укажите категорию"
+
+#: templates/js/translated/part.js:2259
+msgid "parts"
+msgstr ""
+
+#: templates/js/translated/part.js:2352
+msgid "No category"
+msgstr "Нет категории"
+
+#: templates/js/translated/part.js:2466 templates/js/translated/part.js:2596
+#: templates/js/translated/stock.js:2548
+msgid "Display as list"
+msgstr "Список"
+
#: templates/js/translated/part.js:2482
-msgid "Select Part Category"
-msgstr ""
+msgid "Display as grid"
+msgstr "Таблица"
-#: templates/js/translated/part.js:2495
-msgid "Category is required"
-msgstr ""
-
-#: templates/js/translated/part.js:2595
+#: templates/js/translated/part.js:2580
msgid "No subcategories found"
msgstr ""
-#: templates/js/translated/part.js:2631 templates/js/translated/stock.js:2437
+#: templates/js/translated/part.js:2616 templates/js/translated/stock.js:2568
msgid "Display as tree"
msgstr "Дерево"
-#: templates/js/translated/part.js:2711
+#: templates/js/translated/part.js:2696
msgid "Load Subcategories"
msgstr ""
-#: templates/js/translated/part.js:2727
+#: templates/js/translated/part.js:2712
msgid "Subscribed category"
msgstr ""
-#: templates/js/translated/part.js:2807
+#: templates/js/translated/part.js:2792
msgid "No test templates matching query"
msgstr ""
-#: templates/js/translated/part.js:2858 templates/js/translated/stock.js:1380
+#: templates/js/translated/part.js:2843 templates/js/translated/stock.js:1379
msgid "Edit test result"
msgstr ""
-#: templates/js/translated/part.js:2859 templates/js/translated/stock.js:1381
-#: templates/js/translated/stock.js:1643
+#: templates/js/translated/part.js:2844 templates/js/translated/stock.js:1380
+#: templates/js/translated/stock.js:1642
msgid "Delete test result"
msgstr ""
-#: templates/js/translated/part.js:2863
+#: templates/js/translated/part.js:2848
msgid "This test is defined for a parent part"
msgstr ""
-#: templates/js/translated/part.js:2879
+#: templates/js/translated/part.js:2864
msgid "Edit Test Result Template"
msgstr ""
-#: templates/js/translated/part.js:2893
+#: templates/js/translated/part.js:2878
msgid "Delete Test Result Template"
msgstr ""
-#: templates/js/translated/part.js:2972 templates/js/translated/part.js:2973
+#: templates/js/translated/part.js:2957 templates/js/translated/part.js:2958
msgid "No date specified"
msgstr ""
-#: templates/js/translated/part.js:2975
+#: templates/js/translated/part.js:2960
msgid "Specified date is in the past"
msgstr ""
-#: templates/js/translated/part.js:2981
+#: templates/js/translated/part.js:2966
msgid "Speculative"
msgstr ""
-#: templates/js/translated/part.js:3031
+#: templates/js/translated/part.js:3016
msgid "No scheduling information available for this part"
msgstr ""
-#: templates/js/translated/part.js:3037
+#: templates/js/translated/part.js:3022
msgid "Error fetching scheduling information for this part"
msgstr ""
-#: templates/js/translated/part.js:3133
+#: templates/js/translated/part.js:3118
msgid "Scheduled Stock Quantities"
msgstr ""
-#: templates/js/translated/part.js:3149
+#: templates/js/translated/part.js:3134
msgid "Maximum Quantity"
msgstr ""
-#: templates/js/translated/part.js:3194
+#: templates/js/translated/part.js:3179
msgid "Minimum Stock Level"
msgstr ""
@@ -11168,234 +11297,234 @@ msgstr ""
msgid "Variant Part"
msgstr ""
-#: templates/js/translated/purchase_order.js:155
+#: templates/js/translated/purchase_order.js:166
msgid "Select purchase order to duplicate"
msgstr ""
-#: templates/js/translated/purchase_order.js:162
+#: templates/js/translated/purchase_order.js:173
msgid "Duplicate Line Items"
msgstr ""
-#: templates/js/translated/purchase_order.js:163
+#: templates/js/translated/purchase_order.js:174
msgid "Duplicate all line items from the selected order"
msgstr ""
-#: templates/js/translated/purchase_order.js:170
+#: templates/js/translated/purchase_order.js:181
msgid "Duplicate Extra Lines"
msgstr ""
-#: templates/js/translated/purchase_order.js:171
+#: templates/js/translated/purchase_order.js:182
msgid "Duplicate extra line items from the selected order"
msgstr ""
-#: templates/js/translated/purchase_order.js:192
+#: templates/js/translated/purchase_order.js:203
msgid "Edit Purchase Order"
msgstr "Редактировать заказ на закупку"
-#: templates/js/translated/purchase_order.js:209
+#: templates/js/translated/purchase_order.js:220
msgid "Duplication Options"
msgstr ""
-#: templates/js/translated/purchase_order.js:436
+#: templates/js/translated/purchase_order.js:447
msgid "Complete Purchase Order"
msgstr ""
-#: templates/js/translated/purchase_order.js:453
-#: templates/js/translated/return_order.js:195
-#: templates/js/translated/sales_order.js:485
+#: templates/js/translated/purchase_order.js:464
+#: templates/js/translated/return_order.js:207
+#: templates/js/translated/sales_order.js:497
msgid "Mark this order as complete?"
msgstr ""
-#: templates/js/translated/purchase_order.js:459
+#: templates/js/translated/purchase_order.js:470
msgid "All line items have been received"
msgstr ""
-#: templates/js/translated/purchase_order.js:464
+#: templates/js/translated/purchase_order.js:475
msgid "This order has line items which have not been marked as received."
msgstr ""
-#: templates/js/translated/purchase_order.js:465
-#: templates/js/translated/sales_order.js:499
+#: templates/js/translated/purchase_order.js:476
+#: templates/js/translated/sales_order.js:511
msgid "Completing this order means that the order and line items will no longer be editable."
msgstr ""
-#: templates/js/translated/purchase_order.js:488
+#: templates/js/translated/purchase_order.js:499
msgid "Cancel Purchase Order"
msgstr ""
-#: templates/js/translated/purchase_order.js:493
+#: templates/js/translated/purchase_order.js:504
msgid "Are you sure you wish to cancel this purchase order?"
msgstr ""
-#: templates/js/translated/purchase_order.js:499
+#: templates/js/translated/purchase_order.js:510
msgid "This purchase order can not be cancelled"
msgstr ""
-#: templates/js/translated/purchase_order.js:520
-#: templates/js/translated/return_order.js:149
+#: templates/js/translated/purchase_order.js:531
+#: templates/js/translated/return_order.js:161
msgid "After placing this order, line items will no longer be editable."
msgstr ""
-#: templates/js/translated/purchase_order.js:525
+#: templates/js/translated/purchase_order.js:536
msgid "Issue Purchase Order"
msgstr ""
-#: templates/js/translated/purchase_order.js:617
+#: templates/js/translated/purchase_order.js:628
msgid "At least one purchaseable part must be selected"
msgstr ""
-#: templates/js/translated/purchase_order.js:642
+#: templates/js/translated/purchase_order.js:653
msgid "Quantity to order"
msgstr ""
-#: templates/js/translated/purchase_order.js:651
+#: templates/js/translated/purchase_order.js:662
msgid "New supplier part"
msgstr ""
-#: templates/js/translated/purchase_order.js:669
+#: templates/js/translated/purchase_order.js:680
msgid "New purchase order"
msgstr ""
-#: templates/js/translated/purchase_order.js:701
+#: templates/js/translated/purchase_order.js:712
msgid "Add to purchase order"
msgstr ""
-#: templates/js/translated/purchase_order.js:845
+#: templates/js/translated/purchase_order.js:860
msgid "No matching supplier parts"
msgstr ""
-#: templates/js/translated/purchase_order.js:864
+#: templates/js/translated/purchase_order.js:879
msgid "No matching purchase orders"
msgstr ""
-#: templates/js/translated/purchase_order.js:1043
+#: templates/js/translated/purchase_order.js:1058
msgid "Select Line Items"
msgstr ""
-#: templates/js/translated/purchase_order.js:1044
-#: templates/js/translated/return_order.js:480
+#: templates/js/translated/purchase_order.js:1059
+#: templates/js/translated/return_order.js:492
msgid "At least one line item must be selected"
msgstr ""
-#: templates/js/translated/purchase_order.js:1074
+#: templates/js/translated/purchase_order.js:1089
msgid "Received Quantity"
msgstr ""
-#: templates/js/translated/purchase_order.js:1085
+#: templates/js/translated/purchase_order.js:1100
msgid "Quantity to receive"
msgstr ""
-#: templates/js/translated/purchase_order.js:1161
+#: templates/js/translated/purchase_order.js:1176
msgid "Stock Status"
msgstr ""
-#: templates/js/translated/purchase_order.js:1175
+#: templates/js/translated/purchase_order.js:1190
msgid "Add barcode"
msgstr ""
-#: templates/js/translated/purchase_order.js:1176
+#: templates/js/translated/purchase_order.js:1191
msgid "Remove barcode"
msgstr ""
-#: templates/js/translated/purchase_order.js:1179
+#: templates/js/translated/purchase_order.js:1194
msgid "Specify location"
msgstr ""
-#: templates/js/translated/purchase_order.js:1187
+#: templates/js/translated/purchase_order.js:1202
msgid "Add batch code"
msgstr "Добавить код партии"
-#: templates/js/translated/purchase_order.js:1198
+#: templates/js/translated/purchase_order.js:1213
msgid "Add serial numbers"
msgstr ""
-#: templates/js/translated/purchase_order.js:1250
+#: templates/js/translated/purchase_order.js:1265
msgid "Serials"
msgstr ""
-#: templates/js/translated/purchase_order.js:1275
+#: templates/js/translated/purchase_order.js:1290
msgid "Order Code"
msgstr ""
-#: templates/js/translated/purchase_order.js:1277
+#: templates/js/translated/purchase_order.js:1292
msgid "Quantity to Receive"
msgstr ""
-#: templates/js/translated/purchase_order.js:1299
-#: templates/js/translated/return_order.js:545
+#: templates/js/translated/purchase_order.js:1314
+#: templates/js/translated/return_order.js:557
msgid "Confirm receipt of items"
msgstr ""
-#: templates/js/translated/purchase_order.js:1300
+#: templates/js/translated/purchase_order.js:1315
msgid "Receive Purchase Order Items"
msgstr ""
-#: templates/js/translated/purchase_order.js:1368
+#: templates/js/translated/purchase_order.js:1383
msgid "Scan Item Barcode"
msgstr ""
-#: templates/js/translated/purchase_order.js:1369
+#: templates/js/translated/purchase_order.js:1384
msgid "Scan barcode on incoming item (must not match any existing stock items)"
msgstr ""
-#: templates/js/translated/purchase_order.js:1383
+#: templates/js/translated/purchase_order.js:1398
msgid "Invalid barcode data"
msgstr ""
-#: templates/js/translated/purchase_order.js:1645
-#: templates/js/translated/return_order.js:274
-#: templates/js/translated/sales_order.js:762
-#: templates/js/translated/sales_order.js:986
+#: templates/js/translated/purchase_order.js:1660
+#: templates/js/translated/return_order.js:286
+#: templates/js/translated/sales_order.js:774
+#: templates/js/translated/sales_order.js:998
msgid "Order is overdue"
msgstr ""
-#: templates/js/translated/purchase_order.js:1707
-#: templates/js/translated/return_order.js:342
-#: templates/js/translated/sales_order.js:839
-#: templates/js/translated/sales_order.js:999
+#: templates/js/translated/purchase_order.js:1722
+#: templates/js/translated/return_order.js:354
+#: templates/js/translated/sales_order.js:851
+#: templates/js/translated/sales_order.js:1011
msgid "Items"
msgstr ""
-#: templates/js/translated/purchase_order.js:1806
+#: templates/js/translated/purchase_order.js:1821
msgid "All selected Line items will be deleted"
msgstr ""
-#: templates/js/translated/purchase_order.js:1824
+#: templates/js/translated/purchase_order.js:1839
msgid "Delete selected Line items?"
msgstr ""
-#: templates/js/translated/purchase_order.js:1884
-#: templates/js/translated/sales_order.js:2047
+#: templates/js/translated/purchase_order.js:1894
+#: templates/js/translated/sales_order.js:2059
msgid "Duplicate Line Item"
msgstr ""
-#: templates/js/translated/purchase_order.js:1899
-#: templates/js/translated/return_order.js:464
-#: templates/js/translated/return_order.js:653
-#: templates/js/translated/sales_order.js:2060
+#: templates/js/translated/purchase_order.js:1909
+#: templates/js/translated/return_order.js:476
+#: templates/js/translated/return_order.js:665
+#: templates/js/translated/sales_order.js:2072
msgid "Edit Line Item"
msgstr ""
-#: templates/js/translated/purchase_order.js:1910
-#: templates/js/translated/return_order.js:666
-#: templates/js/translated/sales_order.js:2071
+#: templates/js/translated/purchase_order.js:1920
+#: templates/js/translated/return_order.js:678
+#: templates/js/translated/sales_order.js:2083
msgid "Delete Line Item"
msgstr ""
-#: templates/js/translated/purchase_order.js:2192
-#: templates/js/translated/sales_order.js:2001
+#: templates/js/translated/purchase_order.js:2202
+#: templates/js/translated/sales_order.js:2013
msgid "Duplicate line item"
msgstr ""
-#: templates/js/translated/purchase_order.js:2193
-#: templates/js/translated/return_order.js:785
-#: templates/js/translated/sales_order.js:2002
+#: templates/js/translated/purchase_order.js:2203
+#: templates/js/translated/return_order.js:797
+#: templates/js/translated/sales_order.js:2014
msgid "Edit line item"
msgstr ""
-#: templates/js/translated/purchase_order.js:2194
-#: templates/js/translated/return_order.js:789
-#: templates/js/translated/sales_order.js:2008
+#: templates/js/translated/purchase_order.js:2204
+#: templates/js/translated/return_order.js:801
+#: templates/js/translated/sales_order.js:2020
msgid "Delete line item"
msgstr ""
@@ -11424,941 +11553,973 @@ msgstr ""
msgid "Add Customer"
msgstr ""
-#: templates/js/translated/return_order.js:119
+#: templates/js/translated/return_order.js:131
msgid "Create Return Order"
msgstr ""
-#: templates/js/translated/return_order.js:134
+#: templates/js/translated/return_order.js:146
msgid "Edit Return Order"
msgstr ""
-#: templates/js/translated/return_order.js:154
+#: templates/js/translated/return_order.js:166
msgid "Issue Return Order"
msgstr ""
-#: templates/js/translated/return_order.js:171
+#: templates/js/translated/return_order.js:183
msgid "Are you sure you wish to cancel this Return Order?"
msgstr ""
-#: templates/js/translated/return_order.js:178
+#: templates/js/translated/return_order.js:190
msgid "Cancel Return Order"
msgstr ""
-#: templates/js/translated/return_order.js:203
+#: templates/js/translated/return_order.js:215
msgid "Complete Return Order"
msgstr ""
-#: templates/js/translated/return_order.js:251
+#: templates/js/translated/return_order.js:263
msgid "No return orders found"
msgstr ""
-#: templates/js/translated/return_order.js:288
-#: templates/js/translated/sales_order.js:776
+#: templates/js/translated/return_order.js:300
+#: templates/js/translated/sales_order.js:788
msgid "Invalid Customer"
msgstr ""
-#: templates/js/translated/return_order.js:546
+#: templates/js/translated/return_order.js:558
msgid "Receive Return Order Items"
msgstr ""
-#: templates/js/translated/return_order.js:677
-#: templates/js/translated/sales_order.js:2207
+#: templates/js/translated/return_order.js:689
+#: templates/js/translated/sales_order.js:2219
msgid "No matching line items"
msgstr ""
-#: templates/js/translated/return_order.js:782
+#: templates/js/translated/return_order.js:794
msgid "Mark item as received"
msgstr ""
-#: templates/js/translated/sales_order.js:146
+#: templates/js/translated/sales_order.js:158
msgid "Create Sales Order"
msgstr ""
-#: templates/js/translated/sales_order.js:161
+#: templates/js/translated/sales_order.js:173
msgid "Edit Sales Order"
msgstr ""
-#: templates/js/translated/sales_order.js:276
+#: templates/js/translated/sales_order.js:288
msgid "No stock items have been allocated to this shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:281
+#: templates/js/translated/sales_order.js:293
msgid "The following stock items will be shipped"
msgstr ""
-#: templates/js/translated/sales_order.js:321
+#: templates/js/translated/sales_order.js:333
msgid "Complete Shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:345
+#: templates/js/translated/sales_order.js:357
msgid "Confirm Shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:401
+#: templates/js/translated/sales_order.js:413
msgid "No pending shipments found"
msgstr ""
-#: templates/js/translated/sales_order.js:405
+#: templates/js/translated/sales_order.js:417
msgid "No stock items have been allocated to pending shipments"
msgstr ""
-#: templates/js/translated/sales_order.js:415
+#: templates/js/translated/sales_order.js:427
msgid "Complete Shipments"
msgstr ""
-#: templates/js/translated/sales_order.js:437
+#: templates/js/translated/sales_order.js:449
msgid "Skip"
msgstr ""
-#: templates/js/translated/sales_order.js:498
+#: templates/js/translated/sales_order.js:510
msgid "This order has line items which have not been completed."
msgstr ""
-#: templates/js/translated/sales_order.js:520
+#: templates/js/translated/sales_order.js:532
msgid "Issue this Sales Order?"
msgstr ""
-#: templates/js/translated/sales_order.js:525
+#: templates/js/translated/sales_order.js:537
msgid "Issue Sales Order"
msgstr ""
-#: templates/js/translated/sales_order.js:544
+#: templates/js/translated/sales_order.js:556
msgid "Cancel Sales Order"
msgstr ""
-#: templates/js/translated/sales_order.js:549
+#: templates/js/translated/sales_order.js:561
msgid "Cancelling this order means that the order will no longer be editable."
msgstr "Отмена этого заказа означает, что заказ нельзя будет редактировать."
-#: templates/js/translated/sales_order.js:603
+#: templates/js/translated/sales_order.js:615
msgid "Create New Shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:713
+#: templates/js/translated/sales_order.js:725
msgid "No sales orders found"
msgstr "Заказы на продажу не найдены"
-#: templates/js/translated/sales_order.js:896
+#: templates/js/translated/sales_order.js:908
msgid "Edit shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:899
+#: templates/js/translated/sales_order.js:911
msgid "Complete shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:904
+#: templates/js/translated/sales_order.js:916
msgid "Delete shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:921
+#: templates/js/translated/sales_order.js:933
msgid "Edit Shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:936
+#: templates/js/translated/sales_order.js:948
msgid "Delete Shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:969
+#: templates/js/translated/sales_order.js:981
msgid "No matching shipments found"
msgstr ""
-#: templates/js/translated/sales_order.js:994
+#: templates/js/translated/sales_order.js:1006
msgid "Shipment Reference"
msgstr ""
-#: templates/js/translated/sales_order.js:1018
-#: templates/js/translated/sales_order.js:1515
+#: templates/js/translated/sales_order.js:1030
+#: templates/js/translated/sales_order.js:1527
msgid "Not shipped"
msgstr ""
-#: templates/js/translated/sales_order.js:1036
+#: templates/js/translated/sales_order.js:1048
msgid "Tracking"
msgstr ""
-#: templates/js/translated/sales_order.js:1040
+#: templates/js/translated/sales_order.js:1052
msgid "Invoice"
msgstr ""
-#: templates/js/translated/sales_order.js:1207
+#: templates/js/translated/sales_order.js:1219
msgid "Add Shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:1258
+#: templates/js/translated/sales_order.js:1270
msgid "Confirm stock allocation"
msgstr "Подтвердите выделение запасов"
-#: templates/js/translated/sales_order.js:1259
+#: templates/js/translated/sales_order.js:1271
msgid "Allocate Stock Items to Sales Order"
msgstr ""
-#: templates/js/translated/sales_order.js:1463
+#: templates/js/translated/sales_order.js:1475
msgid "No sales order allocations found"
msgstr ""
-#: templates/js/translated/sales_order.js:1555
+#: templates/js/translated/sales_order.js:1567
msgid "Edit Stock Allocation"
msgstr ""
-#: templates/js/translated/sales_order.js:1569
+#: templates/js/translated/sales_order.js:1581
msgid "Confirm Delete Operation"
msgstr ""
-#: templates/js/translated/sales_order.js:1570
+#: templates/js/translated/sales_order.js:1582
msgid "Delete Stock Allocation"
msgstr ""
-#: templates/js/translated/sales_order.js:1609
-#: templates/js/translated/sales_order.js:1696
-#: templates/js/translated/stock.js:1688
+#: templates/js/translated/sales_order.js:1621
+#: templates/js/translated/sales_order.js:1708
+#: templates/js/translated/stock.js:1687
msgid "Shipped to customer"
msgstr ""
-#: templates/js/translated/sales_order.js:1617
-#: templates/js/translated/sales_order.js:1705
+#: templates/js/translated/sales_order.js:1629
+#: templates/js/translated/sales_order.js:1717
msgid "Stock location not specified"
msgstr ""
-#: templates/js/translated/sales_order.js:1985
+#: templates/js/translated/sales_order.js:1997
msgid "Allocate serial numbers"
msgstr ""
-#: templates/js/translated/sales_order.js:1989
+#: templates/js/translated/sales_order.js:2001
msgid "Purchase stock"
msgstr ""
-#: templates/js/translated/sales_order.js:1998
-#: templates/js/translated/sales_order.js:2185
+#: templates/js/translated/sales_order.js:2010
+#: templates/js/translated/sales_order.js:2197
msgid "Calculate price"
msgstr ""
-#: templates/js/translated/sales_order.js:2012
+#: templates/js/translated/sales_order.js:2024
msgid "Cannot be deleted as items have been shipped"
msgstr ""
-#: templates/js/translated/sales_order.js:2015
+#: templates/js/translated/sales_order.js:2027
msgid "Cannot be deleted as items have been allocated"
msgstr ""
-#: templates/js/translated/sales_order.js:2086
+#: templates/js/translated/sales_order.js:2098
msgid "Allocate Serial Numbers"
msgstr ""
-#: templates/js/translated/sales_order.js:2193
+#: templates/js/translated/sales_order.js:2205
msgid "Update Unit Price"
msgstr ""
-#: templates/js/translated/search.js:312
+#: templates/js/translated/search.js:270
msgid "No results"
msgstr ""
-#: templates/js/translated/search.js:334 templates/search.html:25
+#: templates/js/translated/search.js:292 templates/search.html:25
msgid "Enter search query"
msgstr ""
-#: templates/js/translated/search.js:384
+#: templates/js/translated/search.js:342
msgid "result"
msgstr ""
-#: templates/js/translated/search.js:384
+#: templates/js/translated/search.js:342
msgid "results"
msgstr ""
-#: templates/js/translated/search.js:394
+#: templates/js/translated/search.js:352
msgid "Minimize results"
msgstr ""
-#: templates/js/translated/search.js:397
+#: templates/js/translated/search.js:355
msgid "Remove results"
msgstr ""
-#: templates/js/translated/stock.js:98
+#: templates/js/translated/stock.js:97
msgid "Serialize Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:129
+#: templates/js/translated/stock.js:128
msgid "Confirm Stock Serialization"
msgstr ""
-#: templates/js/translated/stock.js:138
+#: templates/js/translated/stock.js:137
msgid "Parent stock location"
msgstr ""
-#: templates/js/translated/stock.js:173
+#: templates/js/translated/stock.js:172
msgid "Edit Stock Location"
msgstr ""
-#: templates/js/translated/stock.js:188
+#: templates/js/translated/stock.js:187
msgid "New Stock Location"
msgstr ""
-#: templates/js/translated/stock.js:190
+#: templates/js/translated/stock.js:189
msgid "Create another location after this one"
msgstr ""
-#: templates/js/translated/stock.js:191
+#: templates/js/translated/stock.js:190
msgid "Stock location created"
msgstr ""
-#: templates/js/translated/stock.js:205
+#: templates/js/translated/stock.js:204
msgid "Are you sure you want to delete this stock location?"
msgstr "Вы уверены, что хотите удалить место хранения?"
-#: templates/js/translated/stock.js:212
+#: templates/js/translated/stock.js:211
msgid "Move to parent stock location"
msgstr ""
-#: templates/js/translated/stock.js:221
+#: templates/js/translated/stock.js:220
msgid "Delete Stock Location"
msgstr ""
-#: templates/js/translated/stock.js:225
+#: templates/js/translated/stock.js:224
msgid "Action for stock items in this stock location"
msgstr ""
-#: templates/js/translated/stock.js:230
+#: templates/js/translated/stock.js:229
msgid "Action for sub-locations"
msgstr ""
-#: templates/js/translated/stock.js:284
+#: templates/js/translated/stock.js:283
msgid "This part cannot be serialized"
msgstr ""
-#: templates/js/translated/stock.js:320
+#: templates/js/translated/stock.js:319
msgid "Add given quantity as packs instead of individual items"
msgstr ""
-#: templates/js/translated/stock.js:329
+#: templates/js/translated/stock.js:328
msgid "Enter initial quantity for this stock item"
msgstr ""
-#: templates/js/translated/stock.js:335
+#: templates/js/translated/stock.js:334
msgid "Enter serial numbers for new stock (or leave blank)"
msgstr ""
-#: templates/js/translated/stock.js:406
+#: templates/js/translated/stock.js:405
msgid "Stock item duplicated"
msgstr ""
-#: templates/js/translated/stock.js:426
+#: templates/js/translated/stock.js:425
msgid "Duplicate Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:442
+#: templates/js/translated/stock.js:441
msgid "Are you sure you want to delete this stock item?"
msgstr ""
-#: templates/js/translated/stock.js:447
+#: templates/js/translated/stock.js:446
msgid "Delete Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:468
+#: templates/js/translated/stock.js:467
msgid "Edit Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:510
+#: templates/js/translated/stock.js:509
msgid "Create another item after this one"
msgstr ""
-#: templates/js/translated/stock.js:522
+#: templates/js/translated/stock.js:521
msgid "Created new stock item"
msgstr ""
-#: templates/js/translated/stock.js:535
+#: templates/js/translated/stock.js:534
msgid "Created multiple stock items"
msgstr "Создано несколько единиц хранения"
-#: templates/js/translated/stock.js:560
+#: templates/js/translated/stock.js:559
msgid "Find Serial Number"
msgstr ""
-#: templates/js/translated/stock.js:564 templates/js/translated/stock.js:565
+#: templates/js/translated/stock.js:563 templates/js/translated/stock.js:564
msgid "Enter serial number"
msgstr ""
-#: templates/js/translated/stock.js:581
+#: templates/js/translated/stock.js:580
msgid "Enter a serial number"
msgstr ""
-#: templates/js/translated/stock.js:601
+#: templates/js/translated/stock.js:600
msgid "No matching serial number"
msgstr ""
-#: templates/js/translated/stock.js:610
+#: templates/js/translated/stock.js:609
msgid "More than one matching result found"
msgstr ""
-#: templates/js/translated/stock.js:718
+#: templates/js/translated/stock.js:717
msgid "Confirm stock assignment"
msgstr ""
-#: templates/js/translated/stock.js:719
+#: templates/js/translated/stock.js:718
msgid "Assign Stock to Customer"
msgstr ""
-#: templates/js/translated/stock.js:796
+#: templates/js/translated/stock.js:795
msgid "Warning: Merge operation cannot be reversed"
msgstr "Предупреждение: Операция объединения не может быть отменена"
-#: templates/js/translated/stock.js:797
+#: templates/js/translated/stock.js:796
msgid "Some information will be lost when merging stock items"
msgstr "Следующие данные будут потеряны в процессе объединения"
-#: templates/js/translated/stock.js:799
+#: templates/js/translated/stock.js:798
msgid "Stock transaction history will be deleted for merged items"
msgstr "История складских перемещений будет удалена для объединённых элементов"
-#: templates/js/translated/stock.js:800
+#: templates/js/translated/stock.js:799
msgid "Supplier part information will be deleted for merged items"
msgstr "Информация о деталях поставщика будет удалена для объединённых элементов"
-#: templates/js/translated/stock.js:891
+#: templates/js/translated/stock.js:890
msgid "Confirm stock item merge"
msgstr ""
-#: templates/js/translated/stock.js:892
+#: templates/js/translated/stock.js:891
msgid "Merge Stock Items"
msgstr ""
-#: templates/js/translated/stock.js:987
+#: templates/js/translated/stock.js:986
msgid "Transfer Stock"
msgstr ""
-#: templates/js/translated/stock.js:988
+#: templates/js/translated/stock.js:987
msgid "Move"
msgstr ""
-#: templates/js/translated/stock.js:994
+#: templates/js/translated/stock.js:993
msgid "Count Stock"
msgstr ""
-#: templates/js/translated/stock.js:995
+#: templates/js/translated/stock.js:994
msgid "Count"
msgstr ""
-#: templates/js/translated/stock.js:999
+#: templates/js/translated/stock.js:998
msgid "Remove Stock"
msgstr ""
-#: templates/js/translated/stock.js:1000
+#: templates/js/translated/stock.js:999
msgid "Take"
msgstr ""
-#: templates/js/translated/stock.js:1004
+#: templates/js/translated/stock.js:1003
msgid "Add Stock"
msgstr ""
-#: templates/js/translated/stock.js:1005 users/models.py:243
+#: templates/js/translated/stock.js:1004 users/models.py:249
msgid "Add"
msgstr ""
-#: templates/js/translated/stock.js:1009
+#: templates/js/translated/stock.js:1008
msgid "Delete Stock"
msgstr ""
-#: templates/js/translated/stock.js:1106
+#: templates/js/translated/stock.js:1105
msgid "Quantity cannot be adjusted for serialized stock"
msgstr ""
-#: templates/js/translated/stock.js:1106
+#: templates/js/translated/stock.js:1105
msgid "Specify stock quantity"
msgstr ""
-#: templates/js/translated/stock.js:1140
+#: templates/js/translated/stock.js:1139 templates/js/translated/stock.js:3151
msgid "Select Stock Items"
msgstr ""
-#: templates/js/translated/stock.js:1141
-msgid "You must select at least one available stock item"
+#: templates/js/translated/stock.js:1140
+msgid "Select at least one available stock item"
msgstr ""
-#: templates/js/translated/stock.js:1168
+#: templates/js/translated/stock.js:1167
msgid "Confirm stock adjustment"
msgstr ""
-#: templates/js/translated/stock.js:1304
+#: templates/js/translated/stock.js:1303
msgid "PASS"
msgstr ""
-#: templates/js/translated/stock.js:1306
+#: templates/js/translated/stock.js:1305
msgid "FAIL"
msgstr ""
-#: templates/js/translated/stock.js:1311
+#: templates/js/translated/stock.js:1310
msgid "NO RESULT"
msgstr ""
-#: templates/js/translated/stock.js:1373
+#: templates/js/translated/stock.js:1372
msgid "Pass test"
msgstr ""
-#: templates/js/translated/stock.js:1376
+#: templates/js/translated/stock.js:1375
msgid "Add test result"
msgstr ""
-#: templates/js/translated/stock.js:1400
+#: templates/js/translated/stock.js:1399
msgid "No test results found"
msgstr ""
-#: templates/js/translated/stock.js:1464
+#: templates/js/translated/stock.js:1463
msgid "Test Date"
msgstr ""
-#: templates/js/translated/stock.js:1626
+#: templates/js/translated/stock.js:1625
msgid "Edit Test Result"
msgstr ""
-#: templates/js/translated/stock.js:1648
+#: templates/js/translated/stock.js:1647
msgid "Delete Test Result"
msgstr ""
-#: templates/js/translated/stock.js:1680
+#: templates/js/translated/stock.js:1679
msgid "In production"
msgstr ""
-#: templates/js/translated/stock.js:1684
+#: templates/js/translated/stock.js:1683
msgid "Installed in Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:1692
+#: templates/js/translated/stock.js:1691
msgid "Assigned to Sales Order"
msgstr ""
-#: templates/js/translated/stock.js:1698
+#: templates/js/translated/stock.js:1697
msgid "No stock location set"
msgstr ""
-#: templates/js/translated/stock.js:1746
+#: templates/js/translated/stock.js:1753
+msgid "Change stock status"
+msgstr ""
+
+#: templates/js/translated/stock.js:1762
+msgid "Merge stock"
+msgstr ""
+
+#: templates/js/translated/stock.js:1811
+msgid "Delete stock"
+msgstr ""
+
+#: templates/js/translated/stock.js:1866
msgid "stock items"
msgstr ""
-#: templates/js/translated/stock.js:1850
+#: templates/js/translated/stock.js:1871
+msgid "Scan to location"
+msgstr ""
+
+#: templates/js/translated/stock.js:1882
+msgid "Stock Actions"
+msgstr ""
+
+#: templates/js/translated/stock.js:1929
+msgid "Load installed items"
+msgstr ""
+
+#: templates/js/translated/stock.js:2007
msgid "Stock item is in production"
msgstr ""
-#: templates/js/translated/stock.js:1855
+#: templates/js/translated/stock.js:2012
msgid "Stock item assigned to sales order"
msgstr ""
-#: templates/js/translated/stock.js:1858
+#: templates/js/translated/stock.js:2015
msgid "Stock item assigned to customer"
msgstr ""
-#: templates/js/translated/stock.js:1861
+#: templates/js/translated/stock.js:2018
msgid "Serialized stock item has been allocated"
msgstr ""
-#: templates/js/translated/stock.js:1863
+#: templates/js/translated/stock.js:2020
msgid "Stock item has been fully allocated"
msgstr ""
-#: templates/js/translated/stock.js:1865
+#: templates/js/translated/stock.js:2022
msgid "Stock item has been partially allocated"
msgstr ""
-#: templates/js/translated/stock.js:1868
+#: templates/js/translated/stock.js:2025
msgid "Stock item has been installed in another item"
msgstr ""
-#: templates/js/translated/stock.js:1870
+#: templates/js/translated/stock.js:2027
msgid "Stock item has been consumed by a build order"
msgstr ""
-#: templates/js/translated/stock.js:1874
+#: templates/js/translated/stock.js:2031
msgid "Stock item has expired"
msgstr ""
-#: templates/js/translated/stock.js:1876
+#: templates/js/translated/stock.js:2033
msgid "Stock item will expire soon"
msgstr ""
-#: templates/js/translated/stock.js:1881
+#: templates/js/translated/stock.js:2038
msgid "Stock item has been rejected"
msgstr ""
-#: templates/js/translated/stock.js:1883
+#: templates/js/translated/stock.js:2040
msgid "Stock item is lost"
msgstr ""
-#: templates/js/translated/stock.js:1885
+#: templates/js/translated/stock.js:2042
msgid "Stock item is destroyed"
msgstr ""
-#: templates/js/translated/stock.js:1889
-#: templates/js/translated/table_filters.js:296
+#: templates/js/translated/stock.js:2046
+#: templates/js/translated/table_filters.js:302
msgid "Depleted"
msgstr ""
-#: templates/js/translated/stock.js:2031
+#: templates/js/translated/stock.js:2188
msgid "Supplier part not specified"
msgstr ""
-#: templates/js/translated/stock.js:2078
+#: templates/js/translated/stock.js:2235
msgid "Stock Value"
msgstr ""
-#: templates/js/translated/stock.js:2170
+#: templates/js/translated/stock.js:2358
msgid "No stock items matching query"
msgstr ""
-#: templates/js/translated/stock.js:2319
+#: templates/js/translated/stock.js:2450
msgid "stock locations"
msgstr ""
-#: templates/js/translated/stock.js:2476
+#: templates/js/translated/stock.js:2607
msgid "Load Subloactions"
msgstr ""
-#: templates/js/translated/stock.js:2583
+#: templates/js/translated/stock.js:2714
msgid "Details"
msgstr ""
-#: templates/js/translated/stock.js:2587
+#: templates/js/translated/stock.js:2718
msgid "No changes"
msgstr ""
-#: templates/js/translated/stock.js:2599
+#: templates/js/translated/stock.js:2730
msgid "Part information unavailable"
msgstr ""
-#: templates/js/translated/stock.js:2621
+#: templates/js/translated/stock.js:2752
msgid "Location no longer exists"
msgstr ""
-#: templates/js/translated/stock.js:2638
+#: templates/js/translated/stock.js:2769
msgid "Build order no longer exists"
msgstr ""
-#: templates/js/translated/stock.js:2653
+#: templates/js/translated/stock.js:2784
msgid "Purchase order no longer exists"
msgstr ""
-#: templates/js/translated/stock.js:2670
+#: templates/js/translated/stock.js:2801
msgid "Sales Order no longer exists"
msgstr ""
-#: templates/js/translated/stock.js:2687
+#: templates/js/translated/stock.js:2818
msgid "Return Order no longer exists"
msgstr ""
-#: templates/js/translated/stock.js:2706
+#: templates/js/translated/stock.js:2837
msgid "Customer no longer exists"
msgstr ""
-#: templates/js/translated/stock.js:2724
+#: templates/js/translated/stock.js:2855
msgid "Stock item no longer exists"
msgstr ""
-#: templates/js/translated/stock.js:2742
+#: templates/js/translated/stock.js:2873
msgid "Added"
msgstr ""
-#: templates/js/translated/stock.js:2750
+#: templates/js/translated/stock.js:2881
msgid "Removed"
msgstr ""
-#: templates/js/translated/stock.js:2826
+#: templates/js/translated/stock.js:2953
msgid "No installed items"
msgstr ""
-#: templates/js/translated/stock.js:2876 templates/js/translated/stock.js:2911
+#: templates/js/translated/stock.js:3003 templates/js/translated/stock.js:3038
msgid "Uninstall Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:2929
+#: templates/js/translated/stock.js:3056
msgid "Select stock item to uninstall"
msgstr ""
-#: templates/js/translated/stock.js:2950
+#: templates/js/translated/stock.js:3077
msgid "Install another stock item into this item"
msgstr ""
-#: templates/js/translated/stock.js:2951
+#: templates/js/translated/stock.js:3078
msgid "Stock items can only be installed if they meet the following criteria"
msgstr ""
-#: templates/js/translated/stock.js:2953
+#: templates/js/translated/stock.js:3080
msgid "The Stock Item links to a Part which is the BOM for this Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:2954
+#: templates/js/translated/stock.js:3081
msgid "The Stock Item is currently available in stock"
msgstr ""
-#: templates/js/translated/stock.js:2955
+#: templates/js/translated/stock.js:3082
msgid "The Stock Item is not already installed in another item"
msgstr ""
-#: templates/js/translated/stock.js:2956
+#: templates/js/translated/stock.js:3083
msgid "The Stock Item is tracked by either a batch code or serial number"
msgstr ""
-#: templates/js/translated/stock.js:2969
+#: templates/js/translated/stock.js:3096
msgid "Select part to install"
msgstr ""
+#: templates/js/translated/stock.js:3152
+msgid "Select one or more stock items"
+msgstr ""
+
+#: templates/js/translated/stock.js:3165
+msgid "Selected stock items"
+msgstr ""
+
+#: templates/js/translated/stock.js:3169
+msgid "Change Stock Status"
+msgstr ""
+
#: templates/js/translated/table_filters.js:50
msgid "Has project code"
msgstr ""
-#: templates/js/translated/table_filters.js:59
-#: templates/js/translated/table_filters.js:518
-#: templates/js/translated/table_filters.js:530
-#: templates/js/translated/table_filters.js:571
+#: templates/js/translated/table_filters.js:65
+#: templates/js/translated/table_filters.js:540
+#: templates/js/translated/table_filters.js:552
+#: templates/js/translated/table_filters.js:593
msgid "Order status"
msgstr ""
-#: templates/js/translated/table_filters.js:64
-#: templates/js/translated/table_filters.js:535
-#: templates/js/translated/table_filters.js:561
-#: templates/js/translated/table_filters.js:576
+#: templates/js/translated/table_filters.js:70
+#: templates/js/translated/table_filters.js:557
+#: templates/js/translated/table_filters.js:583
+#: templates/js/translated/table_filters.js:598
msgid "Outstanding"
msgstr ""
-#: templates/js/translated/table_filters.js:72
-#: templates/js/translated/table_filters.js:458
-#: templates/js/translated/table_filters.js:543
-#: templates/js/translated/table_filters.js:584
+#: templates/js/translated/table_filters.js:78
+#: templates/js/translated/table_filters.js:464
+#: templates/js/translated/table_filters.js:565
+#: templates/js/translated/table_filters.js:606
msgid "Assigned to me"
msgstr ""
-#: templates/js/translated/table_filters.js:128
+#: templates/js/translated/table_filters.js:134
msgid "Trackable Part"
msgstr "Отслеживаемая деталь"
-#: templates/js/translated/table_filters.js:132
+#: templates/js/translated/table_filters.js:138
msgid "Assembled Part"
msgstr ""
-#: templates/js/translated/table_filters.js:136
+#: templates/js/translated/table_filters.js:142
msgid "Has Available Stock"
msgstr ""
-#: templates/js/translated/table_filters.js:152
+#: templates/js/translated/table_filters.js:158
msgid "Allow Variant Stock"
msgstr ""
-#: templates/js/translated/table_filters.js:164
-#: templates/js/translated/table_filters.js:692
+#: templates/js/translated/table_filters.js:170
+#: templates/js/translated/table_filters.js:714
msgid "Has Pricing"
msgstr ""
-#: templates/js/translated/table_filters.js:204
-#: templates/js/translated/table_filters.js:291
+#: templates/js/translated/table_filters.js:210
+#: templates/js/translated/table_filters.js:297
msgid "Include sublocations"
msgstr ""
-#: templates/js/translated/table_filters.js:205
+#: templates/js/translated/table_filters.js:211
msgid "Include locations"
msgstr ""
-#: templates/js/translated/table_filters.js:224
-#: templates/js/translated/table_filters.js:225
-#: templates/js/translated/table_filters.js:624
+#: templates/js/translated/table_filters.js:230
+#: templates/js/translated/table_filters.js:231
+#: templates/js/translated/table_filters.js:646
msgid "Include subcategories"
msgstr ""
-#: templates/js/translated/table_filters.js:233
-#: templates/js/translated/table_filters.js:672
+#: templates/js/translated/table_filters.js:239
+#: templates/js/translated/table_filters.js:694
msgid "Subscribed"
msgstr ""
-#: templates/js/translated/table_filters.js:244
-#: templates/js/translated/table_filters.js:326
+#: templates/js/translated/table_filters.js:250
+#: templates/js/translated/table_filters.js:332
msgid "Is Serialized"
msgstr ""
-#: templates/js/translated/table_filters.js:247
-#: templates/js/translated/table_filters.js:333
+#: templates/js/translated/table_filters.js:253
+#: templates/js/translated/table_filters.js:339
msgid "Serial number GTE"
msgstr ""
-#: templates/js/translated/table_filters.js:248
-#: templates/js/translated/table_filters.js:334
+#: templates/js/translated/table_filters.js:254
+#: templates/js/translated/table_filters.js:340
msgid "Serial number greater than or equal to"
msgstr ""
-#: templates/js/translated/table_filters.js:251
-#: templates/js/translated/table_filters.js:337
+#: templates/js/translated/table_filters.js:257
+#: templates/js/translated/table_filters.js:343
msgid "Serial number LTE"
msgstr ""
-#: templates/js/translated/table_filters.js:252
-#: templates/js/translated/table_filters.js:338
+#: templates/js/translated/table_filters.js:258
+#: templates/js/translated/table_filters.js:344
msgid "Serial number less than or equal to"
msgstr ""
-#: templates/js/translated/table_filters.js:255
-#: templates/js/translated/table_filters.js:256
-#: templates/js/translated/table_filters.js:329
-#: templates/js/translated/table_filters.js:330
+#: templates/js/translated/table_filters.js:261
+#: templates/js/translated/table_filters.js:262
+#: templates/js/translated/table_filters.js:335
+#: templates/js/translated/table_filters.js:336
msgid "Serial number"
msgstr ""
-#: templates/js/translated/table_filters.js:260
-#: templates/js/translated/table_filters.js:351
+#: templates/js/translated/table_filters.js:266
+#: templates/js/translated/table_filters.js:357
msgid "Batch code"
msgstr "Код партии"
-#: templates/js/translated/table_filters.js:271
-#: templates/js/translated/table_filters.js:613
+#: templates/js/translated/table_filters.js:277
+#: templates/js/translated/table_filters.js:635
msgid "Active parts"
msgstr ""
-#: templates/js/translated/table_filters.js:272
+#: templates/js/translated/table_filters.js:278
msgid "Show stock for active parts"
msgstr ""
-#: templates/js/translated/table_filters.js:277
+#: templates/js/translated/table_filters.js:283
msgid "Part is an assembly"
msgstr ""
-#: templates/js/translated/table_filters.js:281
+#: templates/js/translated/table_filters.js:287
msgid "Is allocated"
msgstr ""
-#: templates/js/translated/table_filters.js:282
+#: templates/js/translated/table_filters.js:288
msgid "Item has been allocated"
msgstr ""
-#: templates/js/translated/table_filters.js:287
+#: templates/js/translated/table_filters.js:293
msgid "Stock is available for use"
msgstr ""
-#: templates/js/translated/table_filters.js:292
+#: templates/js/translated/table_filters.js:298
msgid "Include stock in sublocations"
msgstr ""
-#: templates/js/translated/table_filters.js:297
+#: templates/js/translated/table_filters.js:303
msgid "Show stock items which are depleted"
msgstr ""
-#: templates/js/translated/table_filters.js:302
+#: templates/js/translated/table_filters.js:308
msgid "Show items which are in stock"
msgstr ""
-#: templates/js/translated/table_filters.js:306
+#: templates/js/translated/table_filters.js:312
msgid "In Production"
msgstr ""
-#: templates/js/translated/table_filters.js:307
+#: templates/js/translated/table_filters.js:313
msgid "Show items which are in production"
msgstr ""
-#: templates/js/translated/table_filters.js:311
+#: templates/js/translated/table_filters.js:317
msgid "Include Variants"
msgstr ""
-#: templates/js/translated/table_filters.js:312
+#: templates/js/translated/table_filters.js:318
msgid "Include stock items for variant parts"
msgstr ""
-#: templates/js/translated/table_filters.js:316
+#: templates/js/translated/table_filters.js:322
msgid "Installed"
msgstr ""
-#: templates/js/translated/table_filters.js:317
+#: templates/js/translated/table_filters.js:323
msgid "Show stock items which are installed in another item"
msgstr ""
-#: templates/js/translated/table_filters.js:322
+#: templates/js/translated/table_filters.js:328
msgid "Show items which have been assigned to a customer"
msgstr ""
-#: templates/js/translated/table_filters.js:342
-#: templates/js/translated/table_filters.js:343
+#: templates/js/translated/table_filters.js:348
+#: templates/js/translated/table_filters.js:349
msgid "Stock status"
msgstr ""
-#: templates/js/translated/table_filters.js:346
+#: templates/js/translated/table_filters.js:352
msgid "Has batch code"
msgstr ""
-#: templates/js/translated/table_filters.js:354
-msgid "Tracked"
-msgstr ""
-
-#: templates/js/translated/table_filters.js:355
+#: templates/js/translated/table_filters.js:361
msgid "Stock item is tracked by either batch code or serial number"
msgstr ""
-#: templates/js/translated/table_filters.js:360
+#: templates/js/translated/table_filters.js:366
msgid "Has purchase price"
msgstr ""
-#: templates/js/translated/table_filters.js:361
+#: templates/js/translated/table_filters.js:367
msgid "Show stock items which have a purchase price set"
msgstr ""
-#: templates/js/translated/table_filters.js:365
+#: templates/js/translated/table_filters.js:371
msgid "Expiry Date before"
msgstr ""
-#: templates/js/translated/table_filters.js:369
+#: templates/js/translated/table_filters.js:375
msgid "Expiry Date after"
msgstr ""
-#: templates/js/translated/table_filters.js:382
+#: templates/js/translated/table_filters.js:388
msgid "Show stock items which have expired"
msgstr ""
-#: templates/js/translated/table_filters.js:388
+#: templates/js/translated/table_filters.js:394
msgid "Show stock which is close to expiring"
msgstr ""
-#: templates/js/translated/table_filters.js:402
+#: templates/js/translated/table_filters.js:408
msgid "Test Passed"
msgstr ""
-#: templates/js/translated/table_filters.js:406
+#: templates/js/translated/table_filters.js:412
msgid "Include Installed Items"
msgstr ""
-#: templates/js/translated/table_filters.js:445
+#: templates/js/translated/table_filters.js:451
msgid "Build status"
msgstr "Статус сборки"
-#: templates/js/translated/table_filters.js:625
+#: templates/js/translated/table_filters.js:647
msgid "Include parts in subcategories"
msgstr ""
-#: templates/js/translated/table_filters.js:630
+#: templates/js/translated/table_filters.js:652
msgid "Show active parts"
msgstr ""
-#: templates/js/translated/table_filters.js:638
+#: templates/js/translated/table_filters.js:660
msgid "Available stock"
msgstr ""
-#: templates/js/translated/table_filters.js:646
-#: templates/js/translated/table_filters.js:742
+#: templates/js/translated/table_filters.js:668
+#: templates/js/translated/table_filters.js:764
msgid "Has Units"
msgstr ""
-#: templates/js/translated/table_filters.js:647
+#: templates/js/translated/table_filters.js:669
msgid "Part has defined units"
msgstr ""
-#: templates/js/translated/table_filters.js:651
+#: templates/js/translated/table_filters.js:673
msgid "Has IPN"
msgstr ""
-#: templates/js/translated/table_filters.js:652
+#: templates/js/translated/table_filters.js:674
msgid "Part has internal part number"
msgstr ""
-#: templates/js/translated/table_filters.js:656
+#: templates/js/translated/table_filters.js:678
msgid "In stock"
msgstr ""
-#: templates/js/translated/table_filters.js:664
+#: templates/js/translated/table_filters.js:686
msgid "Purchasable"
msgstr ""
-#: templates/js/translated/table_filters.js:676
+#: templates/js/translated/table_filters.js:698
msgid "Has stocktake entries"
msgstr ""
-#: templates/js/translated/table_filters.js:738
+#: templates/js/translated/table_filters.js:760
msgid "Has Choices"
msgstr ""
@@ -12390,51 +12551,51 @@ msgstr ""
msgid "Select File Format"
msgstr ""
-#: templates/js/translated/tables.js:561
+#: templates/js/translated/tables.js:537
msgid "Loading data"
msgstr "Загрузка данных"
-#: templates/js/translated/tables.js:564
+#: templates/js/translated/tables.js:540
msgid "rows per page"
msgstr "строк на странице"
-#: templates/js/translated/tables.js:569
+#: templates/js/translated/tables.js:545
msgid "Showing all rows"
msgstr "Показываются все строки"
-#: templates/js/translated/tables.js:571
+#: templates/js/translated/tables.js:547
msgid "Showing"
msgstr "Показано от"
-#: templates/js/translated/tables.js:571
+#: templates/js/translated/tables.js:547
msgid "to"
msgstr "до"
-#: templates/js/translated/tables.js:571
+#: templates/js/translated/tables.js:547
msgid "of"
msgstr "из"
-#: templates/js/translated/tables.js:571
+#: templates/js/translated/tables.js:547
msgid "rows"
msgstr "строк"
-#: templates/js/translated/tables.js:578
+#: templates/js/translated/tables.js:554
msgid "No matching results"
msgstr "Ничего не найдено"
-#: templates/js/translated/tables.js:581
+#: templates/js/translated/tables.js:557
msgid "Hide/Show pagination"
msgstr ""
-#: templates/js/translated/tables.js:587
+#: templates/js/translated/tables.js:563
msgid "Toggle"
msgstr ""
-#: templates/js/translated/tables.js:590
+#: templates/js/translated/tables.js:566
msgid "Columns"
msgstr ""
-#: templates/js/translated/tables.js:593
+#: templates/js/translated/tables.js:569
msgid "All"
msgstr ""
@@ -12616,50 +12777,6 @@ msgstr "Настройки электронной почты"
msgid "Email settings not configured"
msgstr "Электронная почта не настроена"
-#: templates/stock_table.html:17
-msgid "Barcode Actions"
-msgstr "Действия со штрих-кодом"
-
-#: templates/stock_table.html:28
-msgid "Stock Options"
-msgstr "Настройки склада"
-
-#: templates/stock_table.html:33
-msgid "Add to selected stock items"
-msgstr ""
-
-#: templates/stock_table.html:34
-msgid "Remove from selected stock items"
-msgstr ""
-
-#: templates/stock_table.html:35
-msgid "Stocktake selected stock items"
-msgstr ""
-
-#: templates/stock_table.html:36
-msgid "Move selected stock items"
-msgstr ""
-
-#: templates/stock_table.html:37
-msgid "Merge selected stock items"
-msgstr ""
-
-#: templates/stock_table.html:37
-msgid "Merge stock"
-msgstr ""
-
-#: templates/stock_table.html:38
-msgid "Order selected items"
-msgstr ""
-
-#: templates/stock_table.html:42
-msgid "Delete selected items"
-msgstr ""
-
-#: templates/stock_table.html:42
-msgid "Delete stock"
-msgstr ""
-
#: templates/yesnolabel.html:4
msgid "Yes"
msgstr ""
@@ -12692,35 +12809,35 @@ msgstr "Права доступа"
msgid "Important dates"
msgstr ""
-#: users/models.py:230
+#: users/models.py:236
msgid "Permission set"
msgstr "Права доступа"
-#: users/models.py:238
+#: users/models.py:244
msgid "Group"
msgstr ""
-#: users/models.py:241
+#: users/models.py:247
msgid "View"
msgstr "Вид"
-#: users/models.py:241
+#: users/models.py:247
msgid "Permission to view items"
msgstr "Разрешение на просмотр элементов"
-#: users/models.py:243
+#: users/models.py:249
msgid "Permission to add items"
msgstr "Разрешение на добавление элементов"
-#: users/models.py:245
+#: users/models.py:251
msgid "Change"
msgstr ""
-#: users/models.py:245
+#: users/models.py:251
msgid "Permissions to edit items"
msgstr "Разрешение на редактирование элементов"
-#: users/models.py:247
+#: users/models.py:253
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 fbdcff2a45..66664e6a5e 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: 2023-06-09 00:32+0000\n"
-"PO-Revision-Date: 2023-06-09 10:27\n"
+"POT-Creation-Date: 2023-06-20 07:01+0000\n"
+"PO-Revision-Date: 2023-06-20 07:06\n"
"Last-Translator: \n"
"Language-Team: Slovenian\n"
"Language: sl_SI\n"
@@ -49,26 +49,26 @@ msgstr "Napaka, podrobnosti vidne v pogledu administratorja"
msgid "Enter date"
msgstr "Vnesi datum"
-#: InvenTree/fields.py:206 InvenTree/models.py:766 build/serializers.py:427
-#: build/serializers.py:506 build/templates/build/sidebar.html:23
-#: company/models.py:597 company/templates/company/sidebar.html:35
-#: order/models.py:1089 order/templates/order/po_sidebar.html:11
+#: InvenTree/fields.py:206 InvenTree/models.py:766 build/serializers.py:435
+#: build/serializers.py:514 build/templates/build/sidebar.html:21
+#: company/models.py:746 company/templates/company/sidebar.html:37
+#: order/models.py:1102 order/templates/order/po_sidebar.html:11
#: order/templates/order/return_order_sidebar.html:9
#: order/templates/order/so_sidebar.html:17 part/admin.py:41
-#: part/models.py:3005 part/templates/part/part_sidebar.html:63
+#: part/models.py:3039 part/templates/part/part_sidebar.html:63
#: report/templates/report/inventree_build_order_base.html:172
#: stock/admin.py:121 stock/models.py:2160 stock/models.py:2268
-#: stock/serializers.py:342 stock/serializers.py:475 stock/serializers.py:556
-#: stock/serializers.py:839 stock/serializers.py:938 stock/serializers.py:1070
-#: stock/templates/stock/stock_sidebar.html:25
-#: templates/js/translated/barcode.js:143 templates/js/translated/bom.js:1224
-#: templates/js/translated/company.js:1294 templates/js/translated/order.js:347
-#: templates/js/translated/part.js:1054
-#: templates/js/translated/purchase_order.js:2168
-#: templates/js/translated/return_order.js:760
-#: templates/js/translated/sales_order.js:1055
-#: templates/js/translated/sales_order.js:1959
-#: templates/js/translated/stock.js:1460 templates/js/translated/stock.js:2164
+#: stock/serializers.py:408 stock/serializers.py:542 stock/serializers.py:623
+#: stock/serializers.py:681 stock/serializers.py:956 stock/serializers.py:1055
+#: stock/serializers.py:1187 stock/templates/stock/stock_sidebar.html:25
+#: templates/js/translated/barcode.js:143 templates/js/translated/bom.js:1244
+#: templates/js/translated/company.js:1715 templates/js/translated/order.js:347
+#: templates/js/translated/part.js:1053
+#: templates/js/translated/purchase_order.js:2178
+#: templates/js/translated/return_order.js:772
+#: templates/js/translated/sales_order.js:1067
+#: templates/js/translated/sales_order.js:1971
+#: templates/js/translated/stock.js:1459 templates/js/translated/stock.js:2321
msgid "Notes"
msgstr "Zapiski"
@@ -81,47 +81,51 @@ msgstr "Vrednost '{name}' ni v predpisanem formatu"
msgid "Provided value does not match required pattern: "
msgstr "Podana vrednost se ujema s predpisanim vzorcem: "
-#: InvenTree/forms.py:145
+#: InvenTree/forms.py:147
msgid "Enter password"
msgstr "Vnesite geslo"
-#: InvenTree/forms.py:146
+#: InvenTree/forms.py:148
msgid "Enter new password"
msgstr "Vnesite novo geslo"
-#: InvenTree/forms.py:155
+#: InvenTree/forms.py:157
msgid "Confirm password"
msgstr "Potrdite geslo"
-#: InvenTree/forms.py:156
+#: InvenTree/forms.py:158
msgid "Confirm new password"
msgstr "Potrdite novo geslo"
-#: InvenTree/forms.py:160
+#: InvenTree/forms.py:162
msgid "Old password"
msgstr "Staro geslo"
-#: InvenTree/forms.py:179
+#: InvenTree/forms.py:181
msgid "Email (again)"
msgstr "Ponovnite e-pošto"
-#: InvenTree/forms.py:183
+#: InvenTree/forms.py:185
msgid "Email address confirmation"
msgstr "Potrdite e-pošto"
-#: InvenTree/forms.py:204
+#: InvenTree/forms.py:206
msgid "You must type the same email each time."
msgstr "E-pošti se morata ujemati"
-#: InvenTree/forms.py:230 InvenTree/forms.py:236
+#: InvenTree/forms.py:237 InvenTree/forms.py:243
msgid "The provided primary email address is not valid."
msgstr "Podana epošta ni veljavna."
-#: InvenTree/forms.py:242
+#: InvenTree/forms.py:249
msgid "The provided email domain is not approved."
msgstr "Domena epošte ni podprta."
-#: InvenTree/helpers.py:462 order/models.py:442 order/models.py:611
+#: InvenTree/forms.py:345
+msgid "Registration is disabled."
+msgstr ""
+
+#: InvenTree/helpers.py:462 order/models.py:455 order/models.py:624
msgid "Invalid quantity provided"
msgstr "Podana napačna količina"
@@ -239,7 +243,7 @@ msgstr "Manjka zunanja povezava"
#: InvenTree/models.py:486 stock/models.py:2262
#: templates/js/translated/attachment.js:119
-#: templates/js/translated/attachment.js:306
+#: templates/js/translated/attachment.js:316
msgid "Attachment"
msgstr "Priloga"
@@ -247,29 +251,30 @@ msgstr "Priloga"
msgid "Select file to attach"
msgstr "Izberite prilogo"
-#: InvenTree/models.py:493 common/models.py:2695 company/models.py:132
-#: company/models.py:306 company/models.py:584 order/models.py:236
-#: order/models.py:1093 order/models.py:1453 part/admin.py:39
-#: part/models.py:901 part/templates/part/part_scheduling.html:11
+#: InvenTree/models.py:493 common/models.py:2681 company/models.py:128
+#: company/models.py:381 company/models.py:455 company/models.py:733
+#: order/models.py:240 order/models.py:1106 order/models.py:1466
+#: part/admin.py:39 part/models.py:902
+#: part/templates/part/part_scheduling.html:11
#: report/templates/report/inventree_build_order_base.html:164
-#: stock/admin.py:120 templates/js/translated/company.js:977
-#: templates/js/translated/company.js:1283 templates/js/translated/order.js:351
-#: templates/js/translated/part.js:2316
-#: templates/js/translated/purchase_order.js:2008
-#: templates/js/translated/purchase_order.js:2172
-#: templates/js/translated/return_order.js:764
-#: templates/js/translated/sales_order.js:1044
-#: templates/js/translated/sales_order.js:1964
+#: stock/admin.py:120 templates/js/translated/company.js:1350
+#: templates/js/translated/company.js:1704 templates/js/translated/order.js:351
+#: templates/js/translated/part.js:2392
+#: templates/js/translated/purchase_order.js:2018
+#: templates/js/translated/purchase_order.js:2182
+#: templates/js/translated/return_order.js:776
+#: templates/js/translated/sales_order.js:1056
+#: templates/js/translated/sales_order.js:1976
msgid "Link"
msgstr "Povezava"
-#: InvenTree/models.py:494 build/models.py:291 part/models.py:902
+#: InvenTree/models.py:494 build/models.py:295 part/models.py:903
#: stock/models.py:735
msgid "Link to external URL"
msgstr "Zunanja povezava"
#: InvenTree/models.py:497 templates/js/translated/attachment.js:120
-#: templates/js/translated/attachment.js:321
+#: templates/js/translated/attachment.js:331
msgid "Comment"
msgstr "Komentar"
@@ -277,13 +282,13 @@ msgstr "Komentar"
msgid "File comment"
msgstr "Komentar datoteke"
-#: InvenTree/models.py:503 InvenTree/models.py:504 common/models.py:2154
-#: common/models.py:2155 common/models.py:2368 common/models.py:2369
-#: common/models.py:2625 common/models.py:2626 part/models.py:3013
-#: part/models.py:3101 part/models.py:3180 part/models.py:3200
-#: plugin/models.py:217 plugin/models.py:218
+#: InvenTree/models.py:503 InvenTree/models.py:504 common/models.py:2140
+#: common/models.py:2141 common/models.py:2354 common/models.py:2355
+#: common/models.py:2611 common/models.py:2612 part/models.py:3047
+#: part/models.py:3135 part/models.py:3214 part/models.py:3234
+#: plugin/models.py:218 plugin/models.py:219
#: report/templates/report/inventree_test_report_base.html:105
-#: templates/js/translated/stock.js:2773
+#: templates/js/translated/stock.js:2904
msgid "User"
msgstr "Uporabnik"
@@ -324,53 +329,54 @@ msgstr ""
msgid "Invalid choice"
msgstr "Nedovoljena izbira"
-#: InvenTree/models.py:648 InvenTree/models.py:649 common/models.py:2354
-#: company/models.py:390 label/models.py:103 part/models.py:847
-#: part/models.py:3400 plugin/models.py:41 report/models.py:160
+#: InvenTree/models.py:648 InvenTree/models.py:649 common/models.py:2340
+#: company/models.py:539 label/models.py:111 part/models.py:848
+#: part/models.py:3434 plugin/models.py:42 report/models.py:160
#: templates/InvenTree/settings/mixins/urls.html:13
#: templates/InvenTree/settings/notifications.html:17
-#: templates/InvenTree/settings/plugin.html:80
+#: templates/InvenTree/settings/plugin.html:74
#: templates/InvenTree/settings/plugin_settings.html:22
-#: templates/js/translated/company.js:658
-#: templates/js/translated/company.js:706
-#: templates/js/translated/company.js:871
-#: templates/js/translated/company.js:1071 templates/js/translated/part.js:1160
-#: templates/js/translated/part.js:1447 templates/js/translated/part.js:1583
-#: templates/js/translated/part.js:2699 templates/js/translated/stock.js:2464
+#: templates/js/translated/company.js:665
+#: templates/js/translated/company.js:713
+#: templates/js/translated/company.js:940
+#: templates/js/translated/company.js:1196
+#: templates/js/translated/company.js:1444 templates/js/translated/part.js:1159
+#: templates/js/translated/part.js:1446 templates/js/translated/part.js:1582
+#: templates/js/translated/part.js:2684 templates/js/translated/stock.js:2595
msgid "Name"
msgstr "Ime"
-#: InvenTree/models.py:655 build/models.py:164
+#: InvenTree/models.py:655 build/models.py:168
#: build/templates/build/detail.html:24 common/models.py:111
-#: company/models.py:312 company/models.py:590
+#: company/models.py:461 company/models.py:739
#: company/templates/company/company_base.html:72
#: company/templates/company/manufacturer_part.html:75
-#: company/templates/company/supplier_part.html:108 label/models.py:110
-#: order/models.py:232 order/models.py:1117 part/admin.py:194 part/admin.py:276
-#: part/models.py:869 part/models.py:3416 part/templates/part/category.html:81
+#: company/templates/company/supplier_part.html:108 label/models.py:118
+#: order/models.py:232 order/models.py:1130 part/admin.py:194 part/admin.py:276
+#: part/models.py:870 part/models.py:3450 part/templates/part/category.html:81
#: part/templates/part/part_base.html:172
#: part/templates/part/part_scheduling.html:12 report/models.py:173
-#: report/models.py:587 report/models.py:631
+#: report/models.py:589 report/models.py:633
#: report/templates/report/inventree_build_order_base.html:117
#: stock/admin.py:41 stock/templates/stock/location.html:123
#: templates/InvenTree/settings/notifications.html:19
#: templates/InvenTree/settings/plugin_settings.html:27
#: templates/InvenTree/settings/settings_staff_js.html:75
-#: templates/js/translated/bom.js:632 templates/js/translated/bom.js:933
-#: templates/js/translated/build.js:2857 templates/js/translated/company.js:510
-#: templates/js/translated/company.js:988
-#: templates/js/translated/company.js:1251 templates/js/translated/order.js:298
-#: templates/js/translated/part.js:1212 templates/js/translated/part.js:1456
-#: templates/js/translated/part.js:1594 templates/js/translated/part.js:1933
-#: templates/js/translated/part.js:2247 templates/js/translated/part.js:2735
-#: templates/js/translated/part.js:2826
-#: templates/js/translated/purchase_order.js:1666
-#: templates/js/translated/purchase_order.js:1812
-#: templates/js/translated/purchase_order.js:1990
-#: templates/js/translated/return_order.js:302
-#: templates/js/translated/sales_order.js:790
-#: templates/js/translated/stock.js:1439 templates/js/translated/stock.js:1817
-#: templates/js/translated/stock.js:2496 templates/js/translated/stock.js:2568
+#: templates/js/translated/bom.js:633 templates/js/translated/bom.js:951
+#: templates/js/translated/build.js:2062 templates/js/translated/company.js:517
+#: templates/js/translated/company.js:1361
+#: templates/js/translated/company.js:1672 templates/js/translated/index.js:114
+#: templates/js/translated/order.js:298 templates/js/translated/part.js:1211
+#: templates/js/translated/part.js:1455 templates/js/translated/part.js:1593
+#: templates/js/translated/part.js:1932 templates/js/translated/part.js:2323
+#: templates/js/translated/part.js:2720 templates/js/translated/part.js:2811
+#: templates/js/translated/purchase_order.js:1681
+#: templates/js/translated/purchase_order.js:1827
+#: templates/js/translated/purchase_order.js:2000
+#: templates/js/translated/return_order.js:314
+#: templates/js/translated/sales_order.js:802
+#: templates/js/translated/stock.js:1438 templates/js/translated/stock.js:1974
+#: templates/js/translated/stock.js:2627 templates/js/translated/stock.js:2699
msgid "Description"
msgstr "Opis"
@@ -383,7 +389,7 @@ msgid "parent"
msgstr "nadrejen"
#: InvenTree/models.py:671 InvenTree/models.py:672
-#: templates/js/translated/part.js:2744 templates/js/translated/stock.js:2505
+#: templates/js/translated/part.js:2729 templates/js/translated/stock.js:2636
msgid "Path"
msgstr "Pot"
@@ -419,12 +425,12 @@ msgstr "Napaka strežnika"
msgid "An error has been logged by the server."
msgstr "Zaznana napaka na strežniku."
-#: InvenTree/serializers.py:60 part/models.py:3897
+#: InvenTree/serializers.py:60 part/models.py:3941
msgid "Must be a valid number"
msgstr "Mora biti veljavna številka"
-#: InvenTree/serializers.py:90 company/models.py:154
-#: company/templates/company/company_base.html:107 part/models.py:2852
+#: InvenTree/serializers.py:90 company/models.py:150
+#: company/templates/company/company_base.html:107 part/models.py:2886
#: templates/InvenTree/settings/settings_staff_js.html:44
#: templates/currency_data.html:5
msgid "Currency"
@@ -497,130 +503,130 @@ 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:714
+#: InvenTree/settings.py:741
msgid "Czech"
msgstr "Češko"
-#: InvenTree/settings.py:715
+#: InvenTree/settings.py:742
msgid "Danish"
msgstr "Danščina"
-#: InvenTree/settings.py:716
+#: InvenTree/settings.py:743
msgid "German"
msgstr "Nemščina"
-#: InvenTree/settings.py:717
+#: InvenTree/settings.py:744
msgid "Greek"
msgstr "Grščina"
-#: InvenTree/settings.py:718
+#: InvenTree/settings.py:745
msgid "English"
msgstr "Angleščina"
-#: InvenTree/settings.py:719
+#: InvenTree/settings.py:746
msgid "Spanish"
msgstr "Španščina"
-#: InvenTree/settings.py:720
+#: InvenTree/settings.py:747
msgid "Spanish (Mexican)"
msgstr "Španščina (Mehiško)"
-#: InvenTree/settings.py:721
+#: InvenTree/settings.py:748
msgid "Farsi / Persian"
msgstr "Farsi / Perzijsko"
-#: InvenTree/settings.py:722
+#: InvenTree/settings.py:749
msgid "Finnish"
msgstr ""
-#: InvenTree/settings.py:723
+#: InvenTree/settings.py:750
msgid "French"
msgstr "Francoščina"
-#: InvenTree/settings.py:724
+#: InvenTree/settings.py:751
msgid "Hebrew"
msgstr "Hebrejščina"
-#: InvenTree/settings.py:725
+#: InvenTree/settings.py:752
msgid "Hungarian"
msgstr "Madžarščina"
-#: InvenTree/settings.py:726
+#: InvenTree/settings.py:753
msgid "Italian"
msgstr "Italijanščina"
-#: InvenTree/settings.py:727
+#: InvenTree/settings.py:754
msgid "Japanese"
msgstr "Japonščina"
-#: InvenTree/settings.py:728
+#: InvenTree/settings.py:755
msgid "Korean"
msgstr "Korejščina"
-#: InvenTree/settings.py:729
+#: InvenTree/settings.py:756
msgid "Dutch"
msgstr "Nizozemščina"
-#: InvenTree/settings.py:730
+#: InvenTree/settings.py:757
msgid "Norwegian"
msgstr "Norveščina"
-#: InvenTree/settings.py:731
+#: InvenTree/settings.py:758
msgid "Polish"
msgstr "Poljščina"
-#: InvenTree/settings.py:732
+#: InvenTree/settings.py:759
msgid "Portuguese"
msgstr "Portugalščina"
-#: InvenTree/settings.py:733
+#: InvenTree/settings.py:760
msgid "Portuguese (Brazilian)"
msgstr "Portugalščina (Brazilsko)"
-#: InvenTree/settings.py:734
+#: InvenTree/settings.py:761
msgid "Russian"
msgstr "Ruščina"
-#: InvenTree/settings.py:735
+#: InvenTree/settings.py:762
msgid "Slovenian"
msgstr "Slovenščina"
-#: InvenTree/settings.py:736
+#: InvenTree/settings.py:763
msgid "Swedish"
msgstr "Švedščina"
-#: InvenTree/settings.py:737
+#: InvenTree/settings.py:764
msgid "Thai"
msgstr "Tajščina"
-#: InvenTree/settings.py:738
+#: InvenTree/settings.py:765
msgid "Turkish"
msgstr "Turščina"
-#: InvenTree/settings.py:739
+#: InvenTree/settings.py:766
msgid "Vietnamese"
msgstr "Vietnamščina"
-#: InvenTree/settings.py:740
+#: InvenTree/settings.py:767
msgid "Chinese"
msgstr "Kitajščina"
-#: InvenTree/status.py:61 part/serializers.py:878
+#: InvenTree/status.py:68 part/serializers.py:940
msgid "Background worker check failed"
msgstr "Nadzor dela v ozadju neuspel"
-#: InvenTree/status.py:65
+#: InvenTree/status.py:72
msgid "Email backend not configured"
msgstr "Zaledje e-pošte ni nastavljeno"
-#: InvenTree/status.py:68
+#: InvenTree/status.py:75
msgid "InvenTree system health checks failed"
msgstr "Preverjanje zdravja sistema InvenTree neuspelo"
#: InvenTree/status_codes.py:12 InvenTree/status_codes.py:40
#: InvenTree/status_codes.py:148 InvenTree/status_codes.py:167
#: InvenTree/status_codes.py:188 generic/states/tests.py:16
-#: templates/js/translated/table_filters.js:511
+#: templates/js/translated/table_filters.js:533
msgid "Pending"
msgstr "V teku"
@@ -630,7 +636,7 @@ msgstr "Postavljeno"
#: InvenTree/status_codes.py:14 InvenTree/status_codes.py:151
#: InvenTree/status_codes.py:172 generic/states/tests.py:18
-#: order/templates/order/order_base.html:162
+#: order/templates/order/order_base.html:158
#: order/templates/order/sales_order_base.html:162
msgid "Complete"
msgstr "Končano"
@@ -654,10 +660,10 @@ msgstr "Vrnjeno"
msgid "In Progress"
msgstr ""
-#: InvenTree/status_codes.py:42 order/models.py:1332
-#: templates/js/translated/sales_order.js:1509
-#: templates/js/translated/sales_order.js:1630
-#: templates/js/translated/sales_order.js:1934
+#: InvenTree/status_codes.py:42 order/models.py:1345
+#: templates/js/translated/sales_order.js:1521
+#: templates/js/translated/sales_order.js:1642
+#: templates/js/translated/sales_order.js:1946
msgid "Shipped"
msgstr "Poslano"
@@ -689,7 +695,7 @@ msgstr "Dano v karanteno"
msgid "Legacy stock tracking entry"
msgstr "Vnos zaloge postavke"
-#: InvenTree/status_codes.py:93 templates/js/translated/stock.js:511
+#: InvenTree/status_codes.py:93 templates/js/translated/stock.js:510
msgid "Stock item created"
msgstr "Postavka zaloge ustvarjena"
@@ -745,7 +751,7 @@ msgstr "Razdeljena od nadrejene postavke"
msgid "Split child item"
msgstr "Razdeljena podrejena postavka"
-#: InvenTree/status_codes.py:120 templates/js/translated/stock.js:2243
+#: InvenTree/status_codes.py:120 templates/js/translated/stock.js:1769
msgid "Merged stock items"
msgstr "Združena zaloga postavk"
@@ -765,7 +771,7 @@ msgstr "Nalog za izgradnjo končan"
msgid "Build order output rejected"
msgstr ""
-#: InvenTree/status_codes.py:129 templates/js/translated/stock.js:1676
+#: InvenTree/status_codes.py:129 templates/js/translated/stock.js:1675
msgid "Consumed by build order"
msgstr "Porabljeno v nalogu za izgradnjo"
@@ -781,7 +787,7 @@ msgstr ""
msgid "Returned against Return Order"
msgstr ""
-#: InvenTree/status_codes.py:141 templates/js/translated/table_filters.js:321
+#: InvenTree/status_codes.py:141 templates/js/translated/table_filters.js:327
msgid "Sent to customer"
msgstr "Posalno stranki"
@@ -849,83 +855,111 @@ msgstr "Polja z geslom se morajo ujemati"
msgid "Wrong password provided"
msgstr "Vnešeno nepravilno geslo"
-#: InvenTree/views.py:651 templates/navbar.html:157
+#: InvenTree/views.py:653 templates/navbar.html:157
msgid "System Information"
msgstr "Sistemske informacije"
-#: InvenTree/views.py:658 templates/navbar.html:168
+#: InvenTree/views.py:660 templates/navbar.html:168
msgid "About InvenTree"
msgstr "O InvenTree"
-#: build/api.py:222
+#: build/api.py:242
msgid "Build must be cancelled before it can be deleted"
msgstr "Izgradnja mora biti najprej preklicana, nato je lahko izbrisana"
-#: build/models.py:69 build/templates/build/build_base.html:9
+#: build/api.py:286 part/models.py:3833 templates/js/translated/bom.js:985
+#: templates/js/translated/bom.js:1025 templates/js/translated/build.js:2449
+#: templates/js/translated/table_filters.js:166
+#: templates/js/translated/table_filters.js:518
+msgid "Consumable"
+msgstr ""
+
+#: build/api.py:287 part/models.py:3827 part/templates/part/upload_bom.html:58
+#: templates/js/translated/bom.js:989 templates/js/translated/bom.js:1016
+#: templates/js/translated/build.js:2458
+#: templates/js/translated/table_filters.js:162
+#: templates/js/translated/table_filters.js:191
+#: templates/js/translated/table_filters.js:522
+msgid "Optional"
+msgstr ""
+
+#: build/api.py:288 templates/js/translated/table_filters.js:360
+#: templates/js/translated/table_filters.js:514
+msgid "Tracked"
+msgstr ""
+
+#: build/api.py:290 part/admin.py:64 templates/js/translated/build.js:1670
+#: templates/js/translated/build.js:2549
+#: templates/js/translated/sales_order.js:1918
+#: templates/js/translated/table_filters.js:506
+msgid "Allocated"
+msgstr ""
+
+#: build/models.py:73 build/templates/build/build_base.html:9
#: build/templates/build/build_base.html:27
#: report/templates/report/inventree_build_order_base.html:105
#: templates/email/build_order_completed.html:16
#: templates/email/overdue_build_order.html:15
-#: templates/js/translated/build.js:945 templates/js/translated/stock.js:2629
+#: templates/js/translated/build.js:953 templates/js/translated/stock.js:2760
msgid "Build Order"
msgstr "Nalog izgradnje"
-#: build/models.py:70 build/templates/build/build_base.html:13
+#: build/models.py:74 build/templates/build/build_base.html:13
#: build/templates/build/index.html:8 build/templates/build/index.html:12
-#: order/templates/order/sales_order_detail.html:119
+#: order/templates/order/sales_order_detail.html:111
#: order/templates/order/so_sidebar.html:13
-#: part/templates/part/part_sidebar.html:22 templates/InvenTree/index.html:244
+#: part/templates/part/part_sidebar.html:22 templates/InvenTree/index.html:196
#: templates/InvenTree/search.html:141
#: templates/InvenTree/settings/sidebar.html:53
-#: templates/js/translated/search.js:228 users/models.py:42
+#: templates/js/translated/search.js:186 users/models.py:42
msgid "Build Orders"
msgstr "Nalogi izgradnje"
-#: build/models.py:111
+#: build/models.py:115
msgid "Invalid choice for parent build"
msgstr "Neveljavna izbira za nadrejeno izgradnjo"
-#: build/models.py:155
+#: build/models.py:159
msgid "Build Order Reference"
msgstr "Referenca naloga izgradnje"
-#: build/models.py:156 order/models.py:359 order/models.py:765
-#: order/models.py:1087 order/models.py:1724 part/admin.py:278
-#: part/models.py:3798 part/templates/part/upload_bom.html:54
+#: build/models.py:160 order/models.py:372 order/models.py:778
+#: order/models.py:1100 order/models.py:1737 part/admin.py:278
+#: part/models.py:3842 part/templates/part/upload_bom.html:54
#: report/templates/report/inventree_bill_of_materials_report.html:139
#: report/templates/report/inventree_po_report_base.html:28
#: report/templates/report/inventree_return_order_report_base.html:26
#: report/templates/report/inventree_so_report_base.html:28
-#: templates/js/translated/bom.js:769 templates/js/translated/bom.js:943
-#: templates/js/translated/build.js:2098 templates/js/translated/order.js:291
+#: templates/js/translated/bom.js:770 templates/js/translated/bom.js:961
+#: templates/js/translated/build.js:2441 templates/js/translated/order.js:291
#: templates/js/translated/pricing.js:386
-#: templates/js/translated/purchase_order.js:2033
-#: templates/js/translated/return_order.js:713
-#: templates/js/translated/sales_order.js:1798
+#: templates/js/translated/purchase_order.js:2043
+#: templates/js/translated/return_order.js:725
+#: templates/js/translated/sales_order.js:1810
msgid "Reference"
msgstr "Referenca"
-#: build/models.py:167
+#: build/models.py:171
msgid "Brief description of the build (optional)"
msgstr ""
-#: build/models.py:175 build/templates/build/build_base.html:183
+#: build/models.py:179 build/templates/build/build_base.html:184
#: build/templates/build/detail.html:87
msgid "Parent Build"
msgstr "Nadrejena izgradnja"
-#: build/models.py:176
+#: build/models.py:180
msgid "BuildOrder to which this build is allocated"
msgstr "Nalog izgradnje na katerega se ta izgradnaj nanaša"
-#: build/models.py:181 build/templates/build/build_base.html:98
-#: build/templates/build/detail.html:29 company/models.py:775
-#: order/models.py:1195 order/models.py:1311 order/models.py:1312
-#: part/models.py:391 part/models.py:2865 part/models.py:2979
-#: part/models.py:3119 part/models.py:3138 part/models.py:3157
-#: part/models.py:3178 part/models.py:3270 part/models.py:3555
-#: part/models.py:3663 part/models.py:3763 part/models.py:4077
-#: part/serializers.py:842 part/serializers.py:1245
+#: build/models.py:185 build/templates/build/build_base.html:98
+#: build/templates/build/detail.html:29 company/models.py:924
+#: order/models.py:1208 order/models.py:1324 order/models.py:1325
+#: part/models.py:392 part/models.py:2899 part/models.py:3013
+#: part/models.py:3153 part/models.py:3172 part/models.py:3191
+#: part/models.py:3212 part/models.py:3304 part/models.py:3589
+#: part/models.py:3712 part/models.py:3807 part/models.py:4121
+#: part/serializers.py:904 part/serializers.py:1307
#: part/templates/part/part_app_base.html:8
#: part/templates/part/part_pricing.html:12
#: part/templates/part/upload_bom.html:52
@@ -935,266 +969,229 @@ msgstr "Nalog izgradnje na katerega se ta izgradnaj nanaša"
#: report/templates/report/inventree_po_report_base.html:27
#: report/templates/report/inventree_return_order_report_base.html:24
#: report/templates/report/inventree_so_report_base.html:27
-#: stock/serializers.py:156 stock/serializers.py:509
+#: stock/serializers.py:205 stock/serializers.py:576
#: templates/InvenTree/search.html:82
#: templates/email/build_order_completed.html:17
#: templates/email/build_order_required_stock.html:17
#: templates/email/low_stock_notification.html:15
#: templates/email/overdue_build_order.html:16
-#: templates/js/translated/barcode.js:529 templates/js/translated/bom.js:631
-#: templates/js/translated/bom.js:768 templates/js/translated/bom.js:887
-#: templates/js/translated/build.js:1403 templates/js/translated/build.js:1965
-#: templates/js/translated/build.js:2464 templates/js/translated/build.js:2868
-#: templates/js/translated/company.js:337
-#: templates/js/translated/company.js:822
-#: templates/js/translated/company.js:929
-#: templates/js/translated/company.js:1169 templates/js/translated/part.js:1918
-#: templates/js/translated/part.js:1990 templates/js/translated/part.js:2216
-#: templates/js/translated/pricing.js:369
-#: templates/js/translated/purchase_order.js:746
-#: templates/js/translated/purchase_order.js:1274
-#: templates/js/translated/purchase_order.js:1811
-#: templates/js/translated/purchase_order.js:1975
-#: templates/js/translated/return_order.js:527
-#: templates/js/translated/return_order.js:694
-#: templates/js/translated/sales_order.js:285
-#: templates/js/translated/sales_order.js:1185
-#: templates/js/translated/sales_order.js:1584
-#: templates/js/translated/sales_order.js:1782
-#: templates/js/translated/stock.js:643 templates/js/translated/stock.js:809
-#: templates/js/translated/stock.js:1021 templates/js/translated/stock.js:1773
-#: templates/js/translated/stock.js:2594 templates/js/translated/stock.js:2831
-#: templates/js/translated/stock.js:2968
+#: templates/js/translated/barcode.js:529 templates/js/translated/bom.js:632
+#: templates/js/translated/bom.js:769 templates/js/translated/bom.js:905
+#: templates/js/translated/build.js:1289 templates/js/translated/build.js:1669
+#: templates/js/translated/build.js:2085 templates/js/translated/build.js:2261
+#: templates/js/translated/company.js:347
+#: templates/js/translated/company.js:1147
+#: templates/js/translated/company.js:1302
+#: templates/js/translated/company.js:1590 templates/js/translated/index.js:104
+#: templates/js/translated/part.js:1917 templates/js/translated/part.js:1989
+#: templates/js/translated/part.js:2292 templates/js/translated/pricing.js:369
+#: templates/js/translated/purchase_order.js:757
+#: templates/js/translated/purchase_order.js:1289
+#: templates/js/translated/purchase_order.js:1826
+#: templates/js/translated/purchase_order.js:1985
+#: templates/js/translated/return_order.js:539
+#: templates/js/translated/return_order.js:706
+#: templates/js/translated/sales_order.js:297
+#: templates/js/translated/sales_order.js:1197
+#: templates/js/translated/sales_order.js:1596
+#: templates/js/translated/sales_order.js:1794
+#: templates/js/translated/stock.js:642 templates/js/translated/stock.js:808
+#: templates/js/translated/stock.js:1020 templates/js/translated/stock.js:1913
+#: templates/js/translated/stock.js:2725 templates/js/translated/stock.js:2958
+#: templates/js/translated/stock.js:3095
msgid "Part"
msgstr "Del"
-#: build/models.py:189
+#: build/models.py:193
msgid "Select part to build"
msgstr "Izberite del za izgradnjo"
-#: build/models.py:194
+#: build/models.py:198
msgid "Sales Order Reference"
msgstr "Referenca dobavnica"
-#: build/models.py:198
+#: build/models.py:202
msgid "SalesOrder to which this build is allocated"
msgstr "Dobavnica na katero se navezuje ta izgradnja"
-#: build/models.py:203 build/serializers.py:942
-#: templates/js/translated/build.js:2452
-#: templates/js/translated/sales_order.js:1173
+#: build/models.py:207 build/serializers.py:946
+#: templates/js/translated/build.js:1657
+#: templates/js/translated/sales_order.js:1185
msgid "Source Location"
msgstr "Lokacija vira"
-#: build/models.py:207
+#: build/models.py:211
msgid "Select location to take stock from for this build (leave blank to take from any stock location)"
msgstr "Izberite lokacijo dela za to izgradnjo (v primeru da ni pomembno pusti prazno)"
-#: build/models.py:212
+#: build/models.py:216
msgid "Destination Location"
msgstr "Ciljna lokacija"
-#: build/models.py:216
+#: build/models.py:220
msgid "Select location where the completed items will be stored"
msgstr "Izberite lokacijo, kjer bodo končne postavke shranjene"
-#: build/models.py:220
+#: build/models.py:224
msgid "Build Quantity"
msgstr "Količina izgradenj"
-#: build/models.py:223
+#: build/models.py:227
msgid "Number of stock items to build"
msgstr "Število postavk za izgradnjo"
-#: build/models.py:227
+#: build/models.py:231
msgid "Completed items"
msgstr "Končane postavke"
-#: build/models.py:229
+#: build/models.py:233
msgid "Number of stock items which have been completed"
msgstr "Število postavk zaloge, ki so bile končane"
-#: build/models.py:233
+#: build/models.py:237
msgid "Build Status"
msgstr "Status izgradnje"
-#: build/models.py:237
+#: build/models.py:241
msgid "Build status code"
msgstr "Koda statusa izgradnje"
-#: build/models.py:246 build/serializers.py:269 order/serializers.py:506
-#: stock/models.py:739 templates/js/translated/purchase_order.js:1099
+#: build/models.py:250 build/serializers.py:277 order/serializers.py:512
+#: stock/models.py:739 templates/js/translated/purchase_order.js:1114
msgid "Batch Code"
msgstr "Številka serije"
-#: build/models.py:250 build/serializers.py:270
+#: build/models.py:254 build/serializers.py:278
msgid "Batch code for this build output"
msgstr "Številka serije za to izgradnjo"
-#: build/models.py:253 order/models.py:244 part/models.py:1038
+#: build/models.py:257 order/models.py:248 part/models.py:1039
#: part/templates/part/part_base.html:312
-#: templates/js/translated/return_order.js:327
-#: templates/js/translated/sales_order.js:815
+#: templates/js/translated/return_order.js:339
+#: templates/js/translated/sales_order.js:827
msgid "Creation Date"
msgstr "Datum ustvarjenja"
-#: build/models.py:257
+#: build/models.py:261
msgid "Target completion date"
msgstr "Rok dokončanja"
-#: build/models.py:258
+#: build/models.py:262
msgid "Target date for build completion. Build will be overdue after this date."
msgstr "Rok končanja izdelave. Izdelava po tem datumu bo v zamudi po tem datumu."
-#: build/models.py:261 order/models.py:409 order/models.py:1767
-#: templates/js/translated/build.js:2953
+#: build/models.py:265 order/models.py:422 order/models.py:1780
+#: templates/js/translated/build.js:2170
msgid "Completion Date"
msgstr "Datom končanja"
-#: build/models.py:267
+#: build/models.py:271
msgid "completed by"
msgstr "dokončal"
-#: build/models.py:275 templates/js/translated/build.js:2913
+#: build/models.py:279 templates/js/translated/build.js:2130
msgid "Issued by"
msgstr "Izdal"
-#: build/models.py:276
+#: build/models.py:280
msgid "User who issued this build order"
msgstr "Uporabnik, ki je izdal nalog za izgradnjo"
-#: build/models.py:284 build/templates/build/build_base.html:204
-#: build/templates/build/detail.html:122 order/models.py:258
-#: order/templates/order/order_base.html:214
-#: order/templates/order/return_order_base.html:182
-#: order/templates/order/sales_order_base.html:222 part/models.py:1042
+#: build/models.py:288 build/templates/build/build_base.html:205
+#: build/templates/build/detail.html:122 order/models.py:262
+#: order/templates/order/order_base.html:217
+#: order/templates/order/return_order_base.html:189
+#: order/templates/order/sales_order_base.html:229 part/models.py:1043
#: part/templates/part/part_base.html:392
#: report/templates/report/inventree_build_order_base.html:158
-#: templates/js/translated/build.js:2925
-#: templates/js/translated/purchase_order.js:1723
-#: templates/js/translated/return_order.js:347
-#: templates/js/translated/table_filters.js:461
+#: templates/js/translated/build.js:2142
+#: templates/js/translated/purchase_order.js:1738
+#: templates/js/translated/return_order.js:359
+#: templates/js/translated/table_filters.js:467
msgid "Responsible"
msgstr "Odgovoren"
-#: build/models.py:285
+#: build/models.py:289
msgid "User or group responsible for this build order"
msgstr ""
-#: build/models.py:290 build/templates/build/detail.html:108
+#: build/models.py:294 build/templates/build/detail.html:108
#: company/templates/company/manufacturer_part.html:107
#: company/templates/company/supplier_part.html:195
-#: order/templates/order/order_base.html:171
+#: order/templates/order/order_base.html:167
#: order/templates/order/return_order_base.html:146
#: order/templates/order/sales_order_base.html:181
#: part/templates/part/part_base.html:385 stock/models.py:733
#: stock/templates/stock/item_base.html:201
+#: templates/js/translated/company.js:1050
msgid "External Link"
msgstr "Zunanja povezava"
-#: build/models.py:295
+#: build/models.py:299
msgid "Build Priority"
msgstr ""
-#: build/models.py:298
+#: build/models.py:302
msgid "Priority of this build order"
msgstr ""
-#: build/models.py:536
+#: build/models.py:309 common/models.py:104 order/admin.py:17
+#: order/models.py:237 templates/InvenTree/settings/settings_staff_js.html:70
+#: templates/js/translated/build.js:2067
+#: templates/js/translated/purchase_order.js:1685
+#: templates/js/translated/return_order.js:318
+#: templates/js/translated/sales_order.js:806
+#: templates/js/translated/table_filters.js:24
+#: templates/project_code_data.html:6
+msgid "Project Code"
+msgstr ""
+
+#: build/models.py:310
+msgid "Project code for this build order"
+msgstr ""
+
+#: build/models.py:545
#, python-brace-format
msgid "Build order {build} has been completed"
msgstr "Nalog izgradnje {build} je dokončan"
-#: build/models.py:542
+#: build/models.py:551
msgid "A build order has been completed"
msgstr "Nalog izgradnej dokončan"
-#: build/models.py:744 build/models.py:811
+#: build/models.py:753 build/models.py:831
msgid "No build output specified"
msgstr "Ni določena izgradnja"
-#: build/models.py:747
+#: build/models.py:756
msgid "Build output is already completed"
msgstr "Igradnja je že dokončana"
-#: build/models.py:750
+#: build/models.py:759
msgid "Build output does not match Build Order"
msgstr "Izgradnja se ne ujema s nalogom izdelave"
-#: build/models.py:815 build/serializers.py:212 build/serializers.py:251
-#: build/serializers.py:811 order/models.py:440 order/serializers.py:379
-#: order/serializers.py:501 part/serializers.py:1087 part/serializers.py:1408
-#: stock/models.py:593 stock/models.py:1387 stock/serializers.py:315
+#: build/models.py:835 build/serializers.py:220 build/serializers.py:259
+#: build/serializers.py:819 order/models.py:453 order/serializers.py:385
+#: order/serializers.py:507 part/serializers.py:1149 part/serializers.py:1470
+#: stock/models.py:593 stock/models.py:1387 stock/serializers.py:381
msgid "Quantity must be greater than zero"
msgstr ""
-#: build/models.py:820 build/serializers.py:217
+#: build/models.py:840 build/serializers.py:225
msgid "Quantity cannot be greater than the output quantity"
msgstr ""
-#: build/models.py:1272
-msgid "Build item must specify a build output, as master part is marked as trackable"
-msgstr "Izdelana postavka mora imeti izgradnjo, če je glavni del označen kot sledljiv"
+#: build/models.py:1260
+msgid "Build object"
+msgstr ""
-#: build/models.py:1281
-#, python-brace-format
-msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})"
-msgstr "Prestavljena zaloga ({q}) ne sme presegati zaloge ({a})"
-
-#: build/models.py:1291 order/models.py:1601
-msgid "Stock item is over-allocated"
-msgstr "Preveč zaloge je prestavljene"
-
-#: build/models.py:1297 order/models.py:1604
-msgid "Allocation quantity must be greater than zero"
-msgstr "Prestavljena količina mora biti večja od 0"
-
-#: build/models.py:1303
-msgid "Quantity must be 1 for serialized stock"
-msgstr "Količina za zalogo s serijsko številko mora biti 1"
-
-#: build/models.py:1360
-msgid "Selected stock item not found in BOM"
-msgstr "Izbrana postavka ni najdena v BOM"
-
-#: build/models.py:1438 stock/templates/stock/item_base.html:170
-#: templates/InvenTree/search.html:139 templates/js/translated/build.js:2841
-#: templates/navbar.html:38
-msgid "Build"
-msgstr "Izdelava"
-
-#: build/models.py:1439
-msgid "Build to allocate parts"
-msgstr "Izdelaj da prestaviš dele"
-
-#: build/models.py:1455 build/serializers.py:791 order/serializers.py:1059
-#: order/serializers.py:1080 stock/serializers.py:413 stock/serializers.py:770
-#: stock/serializers.py:896 stock/templates/stock/item_base.html:10
-#: stock/templates/stock/item_base.html:23
-#: stock/templates/stock/item_base.html:195
-#: templates/js/translated/build.js:955 templates/js/translated/build.js:960
-#: templates/js/translated/build.js:2466 templates/js/translated/build.js:3038
-#: templates/js/translated/sales_order.js:286
-#: templates/js/translated/sales_order.js:1186
-#: templates/js/translated/sales_order.js:1485
-#: templates/js/translated/sales_order.js:1490
-#: templates/js/translated/sales_order.js:1591
-#: templates/js/translated/sales_order.js:1678
-#: templates/js/translated/stock.js:644 templates/js/translated/stock.js:810
-#: templates/js/translated/stock.js:2714
-msgid "Stock Item"
-msgstr "Postavka zaloge"
-
-#: build/models.py:1456
-msgid "Source stock item"
-msgstr "Izvorna postavka zaloge"
-
-#: build/models.py:1468 build/serializers.py:198 build/serializers.py:236
-#: build/templates/build/build_base.html:103
-#: build/templates/build/detail.html:34 common/models.py:2176
-#: order/models.py:1073 order/models.py:1645 order/serializers.py:1233
+#: build/models.py:1274 build/models.py:1556 build/serializers.py:206
+#: build/serializers.py:244 build/templates/build/build_base.html:103
+#: build/templates/build/detail.html:34 common/models.py:2162
+#: order/models.py:1086 order/models.py:1658 order/serializers.py:1239
#: order/templates/order/order_wizard/match_parts.html:30 part/admin.py:277
-#: part/forms.py:47 part/models.py:2992 part/models.py:3779
+#: part/forms.py:47 part/models.py:3026 part/models.py:3823
#: part/templates/part/part_pricing.html:16
#: part/templates/part/upload_bom.html:53
#: report/templates/report/inventree_bill_of_materials_report.html:138
@@ -1203,315 +1200,367 @@ msgstr "Izvorna postavka zaloge"
#: report/templates/report/inventree_so_report_base.html:29
#: report/templates/report/inventree_test_report_base.html:90
#: report/templates/report/inventree_test_report_base.html:170
-#: stock/admin.py:103 stock/serializers.py:306
+#: stock/admin.py:103 stock/serializers.py:372
#: stock/templates/stock/item_base.html:288
#: stock/templates/stock/item_base.html:296
#: stock/templates/stock/item_base.html:343
#: templates/email/build_order_completed.html:18
-#: templates/js/translated/barcode.js:531 templates/js/translated/bom.js:770
-#: templates/js/translated/bom.js:951 templates/js/translated/build.js:504
-#: templates/js/translated/build.js:716 templates/js/translated/build.js:982
-#: templates/js/translated/build.js:1425 templates/js/translated/build.js:1991
-#: templates/js/translated/build.js:2467
-#: templates/js/translated/company.js:1428
-#: templates/js/translated/model_renderers.js:207
-#: templates/js/translated/order.js:304 templates/js/translated/part.js:935
-#: templates/js/translated/part.js:1784 templates/js/translated/part.js:3263
+#: templates/js/translated/barcode.js:531 templates/js/translated/bom.js:771
+#: templates/js/translated/bom.js:969 templates/js/translated/build.js:510
+#: templates/js/translated/build.js:722 templates/js/translated/build.js:1308
+#: templates/js/translated/build.js:1672 templates/js/translated/build.js:2283
+#: templates/js/translated/company.js:1849
+#: templates/js/translated/model_renderers.js:221
+#: templates/js/translated/order.js:304 templates/js/translated/part.js:934
+#: templates/js/translated/part.js:1783 templates/js/translated/part.js:3248
#: templates/js/translated/pricing.js:381
#: templates/js/translated/pricing.js:474
#: templates/js/translated/pricing.js:522
#: templates/js/translated/pricing.js:616
-#: templates/js/translated/purchase_order.js:749
-#: templates/js/translated/purchase_order.js:1815
-#: templates/js/translated/purchase_order.js:2039
-#: templates/js/translated/sales_order.js:302
-#: templates/js/translated/sales_order.js:1187
-#: templates/js/translated/sales_order.js:1504
-#: templates/js/translated/sales_order.js:1594
-#: templates/js/translated/sales_order.js:1684
-#: templates/js/translated/sales_order.js:1804
-#: templates/js/translated/stock.js:531 templates/js/translated/stock.js:669
-#: templates/js/translated/stock.js:840 templates/js/translated/stock.js:2758
-#: templates/js/translated/stock.js:2843
+#: templates/js/translated/purchase_order.js:760
+#: templates/js/translated/purchase_order.js:1830
+#: templates/js/translated/purchase_order.js:2049
+#: templates/js/translated/sales_order.js:314
+#: templates/js/translated/sales_order.js:1199
+#: templates/js/translated/sales_order.js:1516
+#: templates/js/translated/sales_order.js:1606
+#: templates/js/translated/sales_order.js:1696
+#: templates/js/translated/sales_order.js:1816
+#: templates/js/translated/stock.js:530 templates/js/translated/stock.js:668
+#: templates/js/translated/stock.js:839 templates/js/translated/stock.js:2889
+#: templates/js/translated/stock.js:2970
msgid "Quantity"
msgstr "Količina"
-#: build/models.py:1469
+#: build/models.py:1275
+msgid "Required quantity for build order"
+msgstr ""
+
+#: build/models.py:1357
+msgid "Build item must specify a build output, as master part is marked as trackable"
+msgstr "Izdelana postavka mora imeti izgradnjo, če je glavni del označen kot sledljiv"
+
+#: build/models.py:1366
+#, python-brace-format
+msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})"
+msgstr "Prestavljena zaloga ({q}) ne sme presegati zaloge ({a})"
+
+#: build/models.py:1376 order/models.py:1614
+msgid "Stock item is over-allocated"
+msgstr "Preveč zaloge je prestavljene"
+
+#: build/models.py:1382 order/models.py:1617
+msgid "Allocation quantity must be greater than zero"
+msgstr "Prestavljena količina mora biti večja od 0"
+
+#: build/models.py:1388
+msgid "Quantity must be 1 for serialized stock"
+msgstr "Količina za zalogo s serijsko številko mora biti 1"
+
+#: build/models.py:1449
+msgid "Selected stock item does not match BOM line"
+msgstr ""
+
+#: build/models.py:1543 build/serializers.py:799 order/serializers.py:1065
+#: order/serializers.py:1086 stock/serializers.py:479 stock/serializers.py:887
+#: stock/serializers.py:1013 stock/templates/stock/item_base.html:10
+#: stock/templates/stock/item_base.html:23
+#: stock/templates/stock/item_base.html:195
+#: templates/js/translated/build.js:1671
+#: templates/js/translated/sales_order.js:298
+#: templates/js/translated/sales_order.js:1198
+#: templates/js/translated/sales_order.js:1497
+#: templates/js/translated/sales_order.js:1502
+#: templates/js/translated/sales_order.js:1603
+#: templates/js/translated/sales_order.js:1690
+#: templates/js/translated/stock.js:643 templates/js/translated/stock.js:809
+#: templates/js/translated/stock.js:2845
+msgid "Stock Item"
+msgstr "Postavka zaloge"
+
+#: build/models.py:1544
+msgid "Source stock item"
+msgstr "Izvorna postavka zaloge"
+
+#: build/models.py:1557
msgid "Stock quantity to allocate to build"
msgstr "Količina zaloge za prestavljanje za izgradnjo"
-#: build/models.py:1477
+#: build/models.py:1565
msgid "Install into"
msgstr "Inštaliraj v"
-#: build/models.py:1478
+#: build/models.py:1566
msgid "Destination stock item"
msgstr "Destinacija postavke zaloge"
-#: build/serializers.py:148 build/serializers.py:820
-#: templates/js/translated/build.js:1413
+#: build/serializers.py:156 build/serializers.py:828
+#: templates/js/translated/build.js:1299
msgid "Build Output"
msgstr "Izgradnja"
-#: build/serializers.py:160
+#: build/serializers.py:168
msgid "Build output does not match the parent build"
msgstr "Izgradnja se ne ujema z nadrejeno izgradnjo"
-#: build/serializers.py:164
+#: build/serializers.py:172
msgid "Output part does not match BuildOrder part"
msgstr "Izhodni del se ne ujema s naročilom sestava"
-#: build/serializers.py:168
+#: build/serializers.py:176
msgid "This build output has already been completed"
msgstr "Ta sestava je že zaključena"
-#: build/serializers.py:179
+#: build/serializers.py:187
msgid "This build output is not fully allocated"
msgstr ""
-#: build/serializers.py:199 build/serializers.py:237
+#: build/serializers.py:207 build/serializers.py:245
msgid "Enter quantity for build output"
msgstr ""
-#: build/serializers.py:258
+#: build/serializers.py:266
msgid "Integer quantity required for trackable parts"
msgstr ""
-#: build/serializers.py:261
+#: build/serializers.py:269
msgid "Integer quantity required, as the bill of materials contains trackable parts"
msgstr ""
-#: build/serializers.py:276 order/serializers.py:514 order/serializers.py:1237
-#: stock/serializers.py:324 templates/js/translated/purchase_order.js:1123
-#: templates/js/translated/stock.js:334 templates/js/translated/stock.js:532
+#: build/serializers.py:284 order/serializers.py:520 order/serializers.py:1243
+#: stock/serializers.py:390 templates/js/translated/purchase_order.js:1138
+#: templates/js/translated/stock.js:333 templates/js/translated/stock.js:531
msgid "Serial Numbers"
msgstr ""
-#: build/serializers.py:277
+#: build/serializers.py:285
msgid "Enter serial numbers for build outputs"
msgstr ""
-#: build/serializers.py:290
+#: build/serializers.py:298
msgid "Auto Allocate Serial Numbers"
msgstr ""
-#: build/serializers.py:291
+#: build/serializers.py:299
msgid "Automatically allocate required items with matching serial numbers"
msgstr ""
-#: build/serializers.py:326 stock/api.py:670
+#: build/serializers.py:334 stock/api.py:707
msgid "The following serial numbers already exist or are invalid"
msgstr ""
-#: build/serializers.py:377 build/serializers.py:439 build/serializers.py:518
+#: build/serializers.py:385 build/serializers.py:447 build/serializers.py:526
msgid "A list of build outputs must be provided"
msgstr ""
-#: build/serializers.py:415 build/serializers.py:488 order/serializers.py:487
-#: order/serializers.py:606 order/serializers.py:1588 part/serializers.py:854
-#: stock/serializers.py:335 stock/serializers.py:470 stock/serializers.py:551
-#: stock/serializers.py:931 stock/serializers.py:1173
+#: build/serializers.py:423 build/serializers.py:496 order/serializers.py:493
+#: order/serializers.py:612 order/serializers.py:1594 part/serializers.py:916
+#: stock/serializers.py:401 stock/serializers.py:537 stock/serializers.py:618
+#: stock/serializers.py:1048 stock/serializers.py:1290
#: stock/templates/stock/item_base.html:390
#: templates/js/translated/barcode.js:530
-#: templates/js/translated/barcode.js:778 templates/js/translated/build.js:967
-#: templates/js/translated/build.js:2006
-#: templates/js/translated/purchase_order.js:1148
-#: templates/js/translated/purchase_order.js:1238
-#: templates/js/translated/sales_order.js:1497
-#: templates/js/translated/sales_order.js:1605
-#: templates/js/translated/sales_order.js:1613
-#: templates/js/translated/sales_order.js:1692
-#: templates/js/translated/stock.js:645 templates/js/translated/stock.js:811
-#: templates/js/translated/stock.js:1023 templates/js/translated/stock.js:1937
-#: templates/js/translated/stock.js:2608
+#: templates/js/translated/barcode.js:778 templates/js/translated/build.js:980
+#: templates/js/translated/build.js:2298
+#: templates/js/translated/purchase_order.js:1163
+#: templates/js/translated/purchase_order.js:1253
+#: templates/js/translated/sales_order.js:1509
+#: templates/js/translated/sales_order.js:1617
+#: templates/js/translated/sales_order.js:1625
+#: templates/js/translated/sales_order.js:1704
+#: templates/js/translated/stock.js:644 templates/js/translated/stock.js:810
+#: templates/js/translated/stock.js:1022 templates/js/translated/stock.js:2094
+#: templates/js/translated/stock.js:2739
msgid "Location"
msgstr ""
-#: build/serializers.py:416
+#: build/serializers.py:424
msgid "Stock location for scrapped outputs"
msgstr ""
-#: build/serializers.py:422
+#: build/serializers.py:430
msgid "Discard Allocations"
msgstr ""
-#: build/serializers.py:423
+#: build/serializers.py:431
msgid "Discard any stock allocations for scrapped outputs"
msgstr ""
-#: build/serializers.py:428
+#: build/serializers.py:436
msgid "Reason for scrapping build output(s)"
msgstr ""
-#: build/serializers.py:489
+#: build/serializers.py:497
msgid "Location for completed build outputs"
msgstr ""
-#: build/serializers.py:495 build/templates/build/build_base.html:151
-#: build/templates/build/detail.html:62 order/models.py:791
-#: order/models.py:1750 order/serializers.py:524 stock/admin.py:106
-#: stock/templates/stock/item_base.html:423
-#: templates/js/translated/barcode.js:252 templates/js/translated/build.js:2897
-#: templates/js/translated/purchase_order.js:1278
-#: templates/js/translated/purchase_order.js:1682
-#: templates/js/translated/return_order.js:319
-#: templates/js/translated/sales_order.js:807
-#: templates/js/translated/stock.js:1912 templates/js/translated/stock.js:2732
-#: templates/js/translated/stock.js:2859
+#: build/serializers.py:503 build/templates/build/build_base.html:152
+#: build/templates/build/detail.html:62 order/models.py:804
+#: order/models.py:1763 order/serializers.py:530 stock/admin.py:106
+#: stock/serializers.py:677 stock/templates/stock/item_base.html:423
+#: templates/js/translated/barcode.js:252 templates/js/translated/build.js:2114
+#: templates/js/translated/purchase_order.js:1293
+#: templates/js/translated/purchase_order.js:1697
+#: templates/js/translated/return_order.js:331
+#: templates/js/translated/sales_order.js:819
+#: templates/js/translated/stock.js:2069 templates/js/translated/stock.js:2863
+#: templates/js/translated/stock.js:2986
msgid "Status"
msgstr ""
-#: build/serializers.py:501
+#: build/serializers.py:509
msgid "Accept Incomplete Allocation"
msgstr ""
-#: build/serializers.py:502
+#: build/serializers.py:510
msgid "Complete outputs if stock has not been fully allocated"
msgstr ""
-#: build/serializers.py:571
+#: build/serializers.py:579
msgid "Remove Allocated Stock"
msgstr ""
-#: build/serializers.py:572
+#: build/serializers.py:580
msgid "Subtract any stock which has already been allocated to this build"
msgstr ""
-#: build/serializers.py:578
+#: build/serializers.py:586
msgid "Remove Incomplete Outputs"
msgstr ""
-#: build/serializers.py:579
+#: build/serializers.py:587
msgid "Delete any build outputs which have not been completed"
msgstr ""
-#: build/serializers.py:606
+#: build/serializers.py:614
msgid "Not permitted"
msgstr ""
-#: build/serializers.py:607
+#: build/serializers.py:615
msgid "Accept as consumed by this build order"
msgstr ""
-#: build/serializers.py:608
+#: build/serializers.py:616
msgid "Deallocate before completing this build order"
msgstr ""
-#: build/serializers.py:631
+#: build/serializers.py:639
msgid "Overallocated Stock"
msgstr ""
-#: build/serializers.py:633
+#: build/serializers.py:641
msgid "How do you want to handle extra stock items assigned to the build order"
msgstr ""
-#: build/serializers.py:643
+#: build/serializers.py:651
msgid "Some stock items have been overallocated"
msgstr ""
-#: build/serializers.py:648
+#: build/serializers.py:656
msgid "Accept Unallocated"
msgstr ""
-#: build/serializers.py:649
+#: build/serializers.py:657
msgid "Accept that stock items have not been fully allocated to this build order"
msgstr ""
-#: build/serializers.py:659 templates/js/translated/build.js:295
+#: build/serializers.py:667 templates/js/translated/build.js:304
msgid "Required stock has not been fully allocated"
msgstr ""
-#: build/serializers.py:664 order/serializers.py:261 order/serializers.py:1127
+#: build/serializers.py:672 order/serializers.py:267 order/serializers.py:1133
msgid "Accept Incomplete"
msgstr ""
-#: build/serializers.py:665
+#: build/serializers.py:673
msgid "Accept that the required number of build outputs have not been completed"
msgstr ""
-#: build/serializers.py:675 templates/js/translated/build.js:299
+#: build/serializers.py:683 templates/js/translated/build.js:308
msgid "Required build quantity has not been completed"
msgstr ""
-#: build/serializers.py:684 templates/js/translated/build.js:283
+#: build/serializers.py:692 templates/js/translated/build.js:292
msgid "Build order has incomplete outputs"
msgstr ""
-#: build/serializers.py:714 build/serializers.py:768 part/models.py:3686
-#: part/models.py:4069
-msgid "BOM Item"
-msgstr ""
-
-#: build/serializers.py:724
-msgid "Build output"
+#: build/serializers.py:722
+msgid "Build Line"
msgstr ""
#: build/serializers.py:732
+msgid "Build output"
+msgstr ""
+
+#: build/serializers.py:740
msgid "Build output must point to the same build"
msgstr ""
-#: build/serializers.py:782
+#: build/serializers.py:776
+msgid "Build Line Item"
+msgstr ""
+
+#: build/serializers.py:790
msgid "bom_item.part must point to the same part as the build order"
msgstr ""
-#: build/serializers.py:797 stock/serializers.py:783
+#: build/serializers.py:805 stock/serializers.py:900
msgid "Item must be in stock"
msgstr ""
-#: build/serializers.py:846 order/serializers.py:1117
+#: build/serializers.py:853 order/serializers.py:1123
#, python-brace-format
msgid "Available quantity ({q}) exceeded"
msgstr ""
-#: build/serializers.py:852
+#: build/serializers.py:859
msgid "Build output must be specified for allocation of tracked parts"
msgstr ""
-#: build/serializers.py:859
+#: build/serializers.py:866
msgid "Build output cannot be specified for allocation of untracked parts"
msgstr ""
-#: build/serializers.py:864
+#: build/serializers.py:871
msgid "This stock item has already been allocated to this build output"
msgstr ""
-#: build/serializers.py:887 order/serializers.py:1401
+#: build/serializers.py:894 order/serializers.py:1407
msgid "Allocation items must be provided"
msgstr ""
-#: build/serializers.py:943
+#: build/serializers.py:947
msgid "Stock location where parts are to be sourced (leave blank to take from any location)"
msgstr ""
-#: build/serializers.py:951
+#: build/serializers.py:955
msgid "Exclude Location"
msgstr ""
-#: build/serializers.py:952
+#: build/serializers.py:956
msgid "Exclude stock items from this selected location"
msgstr ""
-#: build/serializers.py:957
+#: build/serializers.py:961
msgid "Interchangeable Stock"
msgstr ""
-#: build/serializers.py:958
+#: build/serializers.py:962
msgid "Stock items in multiple locations can be used interchangeably"
msgstr ""
-#: build/serializers.py:963
+#: build/serializers.py:967
msgid "Substitute Stock"
msgstr ""
-#: build/serializers.py:964
+#: build/serializers.py:968
msgid "Allow allocation of substitute parts"
msgstr ""
-#: build/serializers.py:969
+#: build/serializers.py:973
msgid "Optional Items"
msgstr ""
-#: build/serializers.py:970
+#: build/serializers.py:974
msgid "Allocate optional BOM items to build order"
msgstr ""
@@ -1540,6 +1589,7 @@ msgstr ""
#: part/templates/part/part_base.html:43
#: stock/templates/stock/item_base.html:41
#: stock/templates/stock/location.html:54
+#: templates/js/translated/filters.js:336
msgid "Barcode actions"
msgstr ""
@@ -1618,69 +1668,67 @@ msgstr ""
msgid "Build Description"
msgstr ""
-#: build/templates/build/build_base.html:117
+#: build/templates/build/build_base.html:118
msgid "No build outputs have been created for this build order"
msgstr ""
-#: build/templates/build/build_base.html:124
+#: build/templates/build/build_base.html:125
msgid "Build Order is ready to mark as completed"
msgstr ""
-#: build/templates/build/build_base.html:129
+#: build/templates/build/build_base.html:130
msgid "Build Order cannot be completed as outstanding outputs remain"
msgstr ""
-#: build/templates/build/build_base.html:134
+#: build/templates/build/build_base.html:135
msgid "Required build quantity has not yet been completed"
msgstr ""
-#: build/templates/build/build_base.html:139
+#: build/templates/build/build_base.html:140
msgid "Stock has not been fully allocated to this Build Order"
msgstr ""
-#: build/templates/build/build_base.html:160
-#: build/templates/build/detail.html:138 order/models.py:240
-#: order/models.py:1099 order/templates/order/order_base.html:190
+#: build/templates/build/build_base.html:161
+#: build/templates/build/detail.html:138 order/models.py:244
+#: order/models.py:1112 order/templates/order/order_base.html:186
#: order/templates/order/return_order_base.html:165
#: order/templates/order/sales_order_base.html:193
#: report/templates/report/inventree_build_order_base.html:125
-#: templates/js/translated/build.js:2945 templates/js/translated/part.js:1802
-#: templates/js/translated/purchase_order.js:1699
-#: templates/js/translated/purchase_order.js:2115
-#: templates/js/translated/return_order.js:335
-#: templates/js/translated/return_order.js:735
-#: templates/js/translated/sales_order.js:823
-#: templates/js/translated/sales_order.js:1847
+#: templates/js/translated/build.js:2162 templates/js/translated/part.js:1801
+#: templates/js/translated/purchase_order.js:1714
+#: templates/js/translated/purchase_order.js:2125
+#: templates/js/translated/return_order.js:347
+#: templates/js/translated/return_order.js:747
+#: templates/js/translated/sales_order.js:835
+#: templates/js/translated/sales_order.js:1859
msgid "Target Date"
msgstr ""
-#: build/templates/build/build_base.html:165
+#: build/templates/build/build_base.html:166
#, python-format
msgid "This build was due on %(target)s"
msgstr ""
-#: build/templates/build/build_base.html:165
-#: build/templates/build/build_base.html:222
-#: order/templates/order/order_base.html:126
+#: build/templates/build/build_base.html:166
+#: build/templates/build/build_base.html:223
+#: order/templates/order/order_base.html:122
#: order/templates/order/return_order_base.html:118
#: order/templates/order/sales_order_base.html:123
-#: templates/js/translated/table_filters.js:68
-#: templates/js/translated/table_filters.js:454
-#: templates/js/translated/table_filters.js:539
-#: templates/js/translated/table_filters.js:580
+#: templates/js/translated/table_filters.js:74
+#: templates/js/translated/table_filters.js:460
+#: templates/js/translated/table_filters.js:561
+#: templates/js/translated/table_filters.js:602
msgid "Overdue"
msgstr ""
-#: build/templates/build/build_base.html:177
-#: build/templates/build/detail.html:67 build/templates/build/detail.html:149
-#: order/templates/order/sales_order_base.html:203
-#: templates/js/translated/table_filters.js:602
-msgid "Completed"
+#: build/templates/build/build_base.html:178
+#: build/templates/build/detail.html:67 build/templates/build/sidebar.html:13
+msgid "Completed Outputs"
msgstr ""
-#: build/templates/build/build_base.html:190
-#: build/templates/build/detail.html:101 order/api.py:1454 order/models.py:1304
-#: order/models.py:1403 order/models.py:1551
+#: build/templates/build/build_base.html:191
+#: build/templates/build/detail.html:101 order/api.py:1454 order/models.py:1317
+#: order/models.py:1416 order/models.py:1564
#: order/templates/order/sales_order_base.html:9
#: order/templates/order/sales_order_base.html:28
#: report/templates/report/inventree_build_order_base.html:135
@@ -1688,32 +1736,32 @@ msgstr ""
#: stock/templates/stock/item_base.html:370
#: templates/email/overdue_sales_order.html:15
#: templates/js/translated/pricing.js:915
-#: templates/js/translated/sales_order.js:757
-#: templates/js/translated/sales_order.js:980
-#: templates/js/translated/stock.js:2661
+#: templates/js/translated/sales_order.js:769
+#: templates/js/translated/sales_order.js:992
+#: templates/js/translated/stock.js:2792
msgid "Sales Order"
msgstr ""
-#: build/templates/build/build_base.html:197
+#: build/templates/build/build_base.html:198
#: build/templates/build/detail.html:115
#: report/templates/report/inventree_build_order_base.html:152
msgid "Issued By"
msgstr ""
-#: build/templates/build/build_base.html:211
-#: build/templates/build/detail.html:94 templates/js/translated/build.js:2862
+#: build/templates/build/build_base.html:212
+#: build/templates/build/detail.html:94 templates/js/translated/build.js:2079
msgid "Priority"
msgstr ""
-#: build/templates/build/build_base.html:273
+#: build/templates/build/build_base.html:274
msgid "Delete Build Order"
msgstr ""
-#: build/templates/build/build_base.html:283
+#: build/templates/build/build_base.html:284
msgid "Build Order QR Code"
msgstr ""
-#: build/templates/build/build_base.html:295
+#: build/templates/build/build_base.html:296
msgid "Link Barcode to Build Order"
msgstr ""
@@ -1729,8 +1777,8 @@ msgstr ""
msgid "Stock can be taken from any available location."
msgstr ""
-#: build/templates/build/detail.html:49 order/models.py:1222
-#: templates/js/translated/purchase_order.js:2157
+#: build/templates/build/detail.html:49 order/models.py:1235
+#: templates/js/translated/purchase_order.js:2167
msgid "Destination"
msgstr ""
@@ -1744,21 +1792,21 @@ msgstr ""
#: build/templates/build/detail.html:80 stock/admin.py:105
#: stock/templates/stock/item_base.html:163
-#: templates/js/translated/build.js:1432
-#: templates/js/translated/model_renderers.js:212
-#: templates/js/translated/purchase_order.js:1244
-#: templates/js/translated/stock.js:1093 templates/js/translated/stock.js:1926
-#: templates/js/translated/stock.js:2866
-#: templates/js/translated/table_filters.js:259
-#: templates/js/translated/table_filters.js:350
+#: templates/js/translated/build.js:1319
+#: templates/js/translated/model_renderers.js:226
+#: templates/js/translated/purchase_order.js:1259
+#: templates/js/translated/stock.js:1092 templates/js/translated/stock.js:2083
+#: templates/js/translated/stock.js:2993
+#: templates/js/translated/table_filters.js:265
+#: templates/js/translated/table_filters.js:356
msgid "Batch"
msgstr ""
#: build/templates/build/detail.html:133
-#: order/templates/order/order_base.html:177
+#: order/templates/order/order_base.html:173
#: order/templates/order/return_order_base.html:152
#: order/templates/order/sales_order_base.html:187
-#: templates/js/translated/build.js:2905
+#: templates/js/translated/build.js:2122
msgid "Created"
msgstr ""
@@ -1766,147 +1814,106 @@ msgstr ""
msgid "No target date set"
msgstr ""
+#: build/templates/build/detail.html:149
+#: order/templates/order/sales_order_base.html:203
+#: templates/js/translated/table_filters.js:624
+msgid "Completed"
+msgstr ""
+
#: build/templates/build/detail.html:153
msgid "Build not complete"
msgstr ""
-#: build/templates/build/detail.html:164 build/templates/build/sidebar.html:19
+#: build/templates/build/detail.html:164 build/templates/build/sidebar.html:17
msgid "Child Build Orders"
msgstr ""
-#: build/templates/build/detail.html:179
+#: build/templates/build/detail.html:177
msgid "Allocate Stock to Build"
msgstr ""
-#: build/templates/build/detail.html:183 templates/js/translated/build.js:2276
-msgid "Unallocate stock"
+#: build/templates/build/detail.html:181
+msgid "Deallocate stock"
+msgstr ""
+
+#: build/templates/build/detail.html:182
+msgid "Deallocate Stock"
msgstr ""
#: build/templates/build/detail.html:184
-msgid "Unallocate Stock"
-msgstr ""
-
-#: build/templates/build/detail.html:186
msgid "Automatically allocate stock to build"
msgstr ""
-#: build/templates/build/detail.html:187
+#: build/templates/build/detail.html:185
msgid "Auto Allocate"
msgstr ""
-#: build/templates/build/detail.html:189
+#: build/templates/build/detail.html:187
msgid "Manually allocate stock to build"
msgstr ""
-#: build/templates/build/detail.html:190 build/templates/build/sidebar.html:8
+#: build/templates/build/detail.html:188 build/templates/build/sidebar.html:8
msgid "Allocate Stock"
msgstr ""
-#: build/templates/build/detail.html:193
+#: build/templates/build/detail.html:191
msgid "Order required parts"
msgstr ""
-#: build/templates/build/detail.html:194
-#: company/templates/company/detail.html:38
-#: company/templates/company/detail.html:86
-#: part/templates/part/category.html:184
-#: templates/js/translated/purchase_order.js:789
+#: build/templates/build/detail.html:192
+#: templates/js/translated/purchase_order.js:800
msgid "Order Parts"
msgstr ""
-#: build/templates/build/detail.html:206
-msgid "Untracked stock has been fully allocated for this Build Order"
-msgstr ""
-
#: build/templates/build/detail.html:210
-msgid "Untracked stock has not been fully allocated for this Build Order"
-msgstr ""
-
-#: build/templates/build/detail.html:217
-msgid "Allocate selected items"
-msgstr ""
-
-#: build/templates/build/detail.html:227
-msgid "This Build Order does not have any associated untracked BOM items"
-msgstr ""
-
-#: build/templates/build/detail.html:236
msgid "Incomplete Build Outputs"
msgstr ""
-#: build/templates/build/detail.html:240
+#: build/templates/build/detail.html:214
msgid "Create new build output"
msgstr ""
-#: build/templates/build/detail.html:241
+#: build/templates/build/detail.html:215
msgid "New Build Output"
msgstr ""
-#: build/templates/build/detail.html:255
-msgid "Output Actions"
-msgstr ""
-
-#: build/templates/build/detail.html:260
-msgid "Complete selected build outputs"
-msgstr ""
-
-#: build/templates/build/detail.html:261
-msgid "Complete outputs"
-msgstr ""
-
-#: build/templates/build/detail.html:265
-msgid "Scrap selected build outputs"
-msgstr ""
-
-#: build/templates/build/detail.html:266
-msgid "Scrap outputs"
-msgstr ""
-
-#: build/templates/build/detail.html:270
-msgid "Delete selected build outputs"
-msgstr ""
-
-#: build/templates/build/detail.html:271
-msgid "Delete outputs"
-msgstr ""
-
-#: build/templates/build/detail.html:288 build/templates/build/sidebar.html:11
+#: build/templates/build/detail.html:232 build/templates/build/sidebar.html:15
msgid "Consumed Stock"
msgstr ""
-#: build/templates/build/detail.html:300
+#: build/templates/build/detail.html:244
msgid "Completed Build Outputs"
msgstr ""
-#: build/templates/build/detail.html:312 build/templates/build/sidebar.html:21
-#: company/templates/company/detail.html:261
-#: company/templates/company/manufacturer_part.html:151
+#: build/templates/build/detail.html:256 build/templates/build/sidebar.html:19
+#: company/templates/company/detail.html:229
+#: company/templates/company/manufacturer_part.html:141
#: company/templates/company/manufacturer_part_sidebar.html:9
-#: company/templates/company/sidebar.html:37
+#: company/templates/company/sidebar.html:39
#: order/templates/order/po_sidebar.html:9
-#: order/templates/order/purchase_order_detail.html:102
-#: order/templates/order/return_order_detail.html:74
+#: order/templates/order/purchase_order_detail.html:84
+#: order/templates/order/return_order_detail.html:70
#: order/templates/order/return_order_sidebar.html:7
-#: order/templates/order/sales_order_detail.html:134
-#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:234
-#: part/templates/part/part_sidebar.html:61 stock/templates/stock/item.html:117
+#: order/templates/order/sales_order_detail.html:124
+#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:217
+#: part/templates/part/part_sidebar.html:61 stock/templates/stock/item.html:109
#: stock/templates/stock/stock_sidebar.html:23
msgid "Attachments"
msgstr ""
-#: build/templates/build/detail.html:327
+#: build/templates/build/detail.html:271
msgid "Build Notes"
msgstr ""
-#: build/templates/build/detail.html:502
+#: build/templates/build/detail.html:425
msgid "Allocation Complete"
msgstr ""
-#: build/templates/build/detail.html:503
-msgid "All untracked stock items have been allocated"
+#: build/templates/build/detail.html:426
+msgid "All lines have been fully allocated"
msgstr ""
-#: build/templates/build/index.html:18 part/templates/part/detail.html:340
+#: build/templates/build/index.html:18 part/templates/part/detail.html:319
msgid "New Build Order"
msgstr ""
@@ -1914,14 +1921,10 @@ msgstr ""
msgid "Build Order Details"
msgstr ""
-#: build/templates/build/sidebar.html:14
+#: build/templates/build/sidebar.html:10
msgid "Incomplete Outputs"
msgstr ""
-#: build/templates/build/sidebar.html:17
-msgid "Completed Outputs"
-msgstr ""
-
#: common/files.py:63
#, python-brace-format
msgid "Unsupported file format: {fmt}"
@@ -1968,16 +1971,6 @@ msgstr ""
msgid "Timestamp of last update"
msgstr ""
-#: common/models.py:104 order/admin.py:17 order/models.py:234
-#: templates/InvenTree/settings/settings_staff_js.html:70
-#: templates/js/translated/purchase_order.js:1670
-#: templates/js/translated/return_order.js:306
-#: templates/js/translated/sales_order.js:794
-#: templates/js/translated/table_filters.js:24
-#: templates/project_code_data.html:6
-msgid "Project Code"
-msgstr ""
-
#: common/models.py:105
msgid "Unique project code"
msgstr ""
@@ -2261,9 +2254,9 @@ msgstr ""
msgid "Copy category parameter templates when creating a part"
msgstr ""
-#: common/models.py:1162 part/admin.py:55 part/models.py:3560
-#: report/models.py:166 templates/js/translated/table_filters.js:109
-#: templates/js/translated/table_filters.js:680
+#: common/models.py:1162 part/admin.py:55 part/models.py:3594
+#: report/models.py:166 templates/js/translated/table_filters.js:115
+#: templates/js/translated/table_filters.js:702
msgid "Template"
msgstr ""
@@ -2271,10 +2264,10 @@ msgstr ""
msgid "Parts are templates by default"
msgstr ""
-#: common/models.py:1169 part/admin.py:51 part/admin.py:283 part/models.py:996
-#: templates/js/translated/bom.js:1598
-#: templates/js/translated/table_filters.js:276
-#: templates/js/translated/table_filters.js:634
+#: common/models.py:1169 part/admin.py:51 part/admin.py:283 part/models.py:997
+#: templates/js/translated/bom.js:1618
+#: templates/js/translated/table_filters.js:282
+#: templates/js/translated/table_filters.js:656
msgid "Assembly"
msgstr ""
@@ -2282,8 +2275,8 @@ msgstr ""
msgid "Parts can be assembled from other components by default"
msgstr ""
-#: common/models.py:1176 part/admin.py:52 part/models.py:1002
-#: templates/js/translated/table_filters.js:642
+#: common/models.py:1176 part/admin.py:52 part/models.py:1003
+#: templates/js/translated/table_filters.js:664
msgid "Component"
msgstr ""
@@ -2291,7 +2284,7 @@ msgstr ""
msgid "Parts can be used as sub-components by default"
msgstr ""
-#: common/models.py:1183 part/admin.py:53 part/models.py:1013
+#: common/models.py:1183 part/admin.py:53 part/models.py:1014
msgid "Purchaseable"
msgstr ""
@@ -2299,8 +2292,8 @@ msgstr ""
msgid "Parts are purchaseable by default"
msgstr ""
-#: common/models.py:1190 part/admin.py:54 part/models.py:1018
-#: templates/js/translated/table_filters.js:668
+#: common/models.py:1190 part/admin.py:54 part/models.py:1019
+#: templates/js/translated/table_filters.js:690
msgid "Salable"
msgstr ""
@@ -2308,10 +2301,10 @@ msgstr ""
msgid "Parts are salable by default"
msgstr ""
-#: common/models.py:1197 part/admin.py:56 part/models.py:1008
-#: templates/js/translated/table_filters.js:117
-#: templates/js/translated/table_filters.js:193
-#: templates/js/translated/table_filters.js:684
+#: common/models.py:1197 part/admin.py:56 part/models.py:1009
+#: templates/js/translated/table_filters.js:123
+#: templates/js/translated/table_filters.js:199
+#: templates/js/translated/table_filters.js:706
msgid "Trackable"
msgstr ""
@@ -2319,10 +2312,10 @@ msgstr ""
msgid "Parts are trackable by default"
msgstr ""
-#: common/models.py:1204 part/admin.py:57 part/models.py:1028
+#: common/models.py:1204 part/admin.py:57 part/models.py:1029
#: part/templates/part/part_base.html:156
-#: templates/js/translated/table_filters.js:113
-#: templates/js/translated/table_filters.js:688
+#: templates/js/translated/table_filters.js:119
+#: templates/js/translated/table_filters.js:710
msgid "Virtual"
msgstr ""
@@ -2354,7 +2347,7 @@ msgstr ""
msgid "Allow creation of initial stock when adding a new part"
msgstr ""
-#: common/models.py:1232 templates/js/translated/part.js:108
+#: common/models.py:1232 templates/js/translated/part.js:107
msgid "Initial Supplier Data"
msgstr ""
@@ -2603,179 +2596,179 @@ msgid "Stock location default icon (empty means no icon)"
msgstr ""
#: common/models.py:1471
-msgid "Build Order Reference Pattern"
+msgid "Show Installed Stock Items"
msgstr ""
#: common/models.py:1472
-msgid "Required pattern for generating Build Order reference field"
+msgid "Display installed stock items in stock tables"
msgstr ""
#: common/models.py:1478
-msgid "Enable Return Orders"
+msgid "Build Order Reference Pattern"
msgstr ""
#: common/models.py:1479
-msgid "Enable return order functionality in the user interface"
+msgid "Required pattern for generating Build Order reference field"
msgstr ""
#: common/models.py:1485
-msgid "Return Order Reference Pattern"
+msgid "Enable Return Orders"
msgstr ""
#: common/models.py:1486
-msgid "Required pattern for generating Return Order reference field"
+msgid "Enable return order functionality in the user interface"
msgstr ""
#: common/models.py:1492
-msgid "Edit Completed Return Orders"
+msgid "Return Order Reference Pattern"
msgstr ""
#: common/models.py:1493
-msgid "Allow editing of return orders after they have been completed"
+msgid "Required pattern for generating Return Order reference field"
msgstr ""
#: common/models.py:1499
-msgid "Sales Order Reference Pattern"
+msgid "Edit Completed Return Orders"
msgstr ""
#: common/models.py:1500
-msgid "Required pattern for generating Sales Order reference field"
+msgid "Allow editing of return orders after they have been completed"
msgstr ""
#: common/models.py:1506
-msgid "Sales Order Default Shipment"
+msgid "Sales Order Reference Pattern"
msgstr ""
#: common/models.py:1507
-msgid "Enable creation of default shipment with sales orders"
+msgid "Required pattern for generating Sales Order reference field"
msgstr ""
#: common/models.py:1513
-msgid "Edit Completed Sales Orders"
+msgid "Sales Order Default Shipment"
msgstr ""
#: common/models.py:1514
-msgid "Allow editing of sales orders after they have been shipped or completed"
+msgid "Enable creation of default shipment with sales orders"
msgstr ""
#: common/models.py:1520
-msgid "Purchase Order Reference Pattern"
+msgid "Edit Completed Sales Orders"
msgstr ""
#: common/models.py:1521
-msgid "Required pattern for generating Purchase Order reference field"
+msgid "Allow editing of sales orders after they have been shipped or completed"
msgstr ""
#: common/models.py:1527
-msgid "Edit Completed Purchase Orders"
+msgid "Purchase Order Reference Pattern"
msgstr ""
#: common/models.py:1528
-msgid "Allow editing of purchase orders after they have been shipped or completed"
+msgid "Required pattern for generating Purchase Order reference field"
+msgstr ""
+
+#: common/models.py:1534
+msgid "Edit Completed Purchase Orders"
msgstr ""
#: common/models.py:1535
-msgid "Enable password forgot"
-msgstr ""
-
-#: common/models.py:1536
-msgid "Enable password forgot function on the login pages"
+msgid "Allow editing of purchase orders after they have been shipped or completed"
msgstr ""
#: common/models.py:1542
-msgid "Enable registration"
+msgid "Enable password forgot"
msgstr ""
#: common/models.py:1543
-msgid "Enable self-registration for users on the login pages"
+msgid "Enable password forgot function on the login pages"
msgstr ""
#: common/models.py:1549
-msgid "Enable SSO"
+msgid "Enable registration"
msgstr ""
#: common/models.py:1550
-msgid "Enable SSO on the login pages"
+msgid "Enable self-registration for users on the login pages"
msgstr ""
#: common/models.py:1556
-msgid "Enable SSO registration"
+msgid "Enable SSO"
msgstr ""
#: common/models.py:1557
-msgid "Enable self-registration via SSO for users on the login pages"
+msgid "Enable SSO on the login pages"
msgstr ""
#: common/models.py:1563
-msgid "Email required"
+msgid "Enable SSO registration"
msgstr ""
#: common/models.py:1564
-msgid "Require user to supply mail on signup"
+msgid "Enable self-registration via SSO for users on the login pages"
msgstr ""
#: common/models.py:1570
-msgid "Auto-fill SSO users"
+msgid "Email required"
msgstr ""
#: common/models.py:1571
-msgid "Automatically fill out user-details from SSO account-data"
+msgid "Require user to supply mail on signup"
msgstr ""
#: common/models.py:1577
-msgid "Mail twice"
+msgid "Auto-fill SSO users"
msgstr ""
#: common/models.py:1578
-msgid "On signup ask users twice for their mail"
+msgid "Automatically fill out user-details from SSO account-data"
msgstr ""
#: common/models.py:1584
-msgid "Password twice"
+msgid "Mail twice"
msgstr ""
#: common/models.py:1585
-msgid "On signup ask users twice for their password"
+msgid "On signup ask users twice for their mail"
msgstr ""
#: common/models.py:1591
-msgid "Allowed domains"
+msgid "Password twice"
msgstr ""
#: common/models.py:1592
-msgid "Restrict signup to certain domains (comma-separated, starting with @)"
+msgid "On signup ask users twice for their password"
msgstr ""
#: common/models.py:1598
-msgid "Group on signup"
+msgid "Allowed domains"
msgstr ""
#: common/models.py:1599
-msgid "Group to which new users are assigned on registration"
+msgid "Restrict signup to certain domains (comma-separated, starting with @)"
msgstr ""
#: common/models.py:1605
-msgid "Enforce MFA"
+msgid "Group on signup"
msgstr ""
#: common/models.py:1606
-msgid "Users must use multifactor security."
+msgid "Group to which new users are assigned on registration"
msgstr ""
#: common/models.py:1612
-msgid "Check plugins on startup"
+msgid "Enforce MFA"
msgstr ""
#: common/models.py:1613
-msgid "Check that all plugins are installed on startup - enable in container environments"
+msgid "Users must use multifactor security."
+msgstr ""
+
+#: common/models.py:1619
+msgid "Check plugins on startup"
msgstr ""
#: common/models.py:1620
-msgid "Check plugin signatures"
-msgstr ""
-
-#: common/models.py:1621
-msgid "Check and show signatures for plugins"
+msgid "Check that all plugins are installed on startup - enable in container environments"
msgstr ""
#: common/models.py:1628
@@ -2850,7 +2843,7 @@ msgstr ""
msgid "Stocktake reports will be deleted after specified number of days"
msgstr ""
-#: common/models.py:1710 common/models.py:2147
+#: common/models.py:1710 common/models.py:2133
msgid "Settings key (must be unique - case insensitive"
msgstr ""
@@ -2891,528 +2884,513 @@ msgid "Show latest parts on the homepage"
msgstr ""
#: common/models.py:1779
-msgid "Recent Part Count"
-msgstr ""
-
-#: common/models.py:1780
-msgid "Number of recent parts to display on index page"
-msgstr ""
-
-#: common/models.py:1786
msgid "Show unvalidated BOMs"
msgstr ""
-#: common/models.py:1787
+#: common/models.py:1780
msgid "Show BOMs that await validation on the homepage"
msgstr ""
-#: common/models.py:1793
+#: common/models.py:1786
msgid "Show recent stock changes"
msgstr ""
-#: common/models.py:1794
+#: common/models.py:1787
msgid "Show recently changed stock items on the homepage"
msgstr ""
-#: common/models.py:1800
-msgid "Recent Stock Count"
-msgstr ""
-
-#: common/models.py:1801
-msgid "Number of recent stock items to display on index page"
-msgstr ""
-
-#: common/models.py:1807
+#: common/models.py:1793
msgid "Show low stock"
msgstr ""
-#: common/models.py:1808
+#: common/models.py:1794
msgid "Show low stock items on the homepage"
msgstr ""
-#: common/models.py:1814
+#: common/models.py:1800
msgid "Show depleted stock"
msgstr ""
-#: common/models.py:1815
+#: common/models.py:1801
msgid "Show depleted stock items on the homepage"
msgstr ""
-#: common/models.py:1821
+#: common/models.py:1807
msgid "Show needed stock"
msgstr ""
-#: common/models.py:1822
+#: common/models.py:1808
msgid "Show stock items needed for builds on the homepage"
msgstr ""
-#: common/models.py:1828
+#: common/models.py:1814
msgid "Show expired stock"
msgstr ""
-#: common/models.py:1829
+#: common/models.py:1815
msgid "Show expired stock items on the homepage"
msgstr ""
-#: common/models.py:1835
+#: common/models.py:1821
msgid "Show stale stock"
msgstr ""
-#: common/models.py:1836
+#: common/models.py:1822
msgid "Show stale stock items on the homepage"
msgstr ""
-#: common/models.py:1842
+#: common/models.py:1828
msgid "Show pending builds"
msgstr ""
-#: common/models.py:1843
+#: common/models.py:1829
msgid "Show pending builds on the homepage"
msgstr ""
-#: common/models.py:1849
+#: common/models.py:1835
msgid "Show overdue builds"
msgstr ""
-#: common/models.py:1850
+#: common/models.py:1836
msgid "Show overdue builds on the homepage"
msgstr ""
-#: common/models.py:1856
+#: common/models.py:1842
msgid "Show outstanding POs"
msgstr ""
-#: common/models.py:1857
+#: common/models.py:1843
msgid "Show outstanding POs on the homepage"
msgstr ""
-#: common/models.py:1863
+#: common/models.py:1849
msgid "Show overdue POs"
msgstr ""
-#: common/models.py:1864
+#: common/models.py:1850
msgid "Show overdue POs on the homepage"
msgstr ""
-#: common/models.py:1870
+#: common/models.py:1856
msgid "Show outstanding SOs"
msgstr ""
-#: common/models.py:1871
+#: common/models.py:1857
msgid "Show outstanding SOs on the homepage"
msgstr ""
-#: common/models.py:1877
+#: common/models.py:1863
msgid "Show overdue SOs"
msgstr ""
-#: common/models.py:1878
+#: common/models.py:1864
msgid "Show overdue SOs on the homepage"
msgstr ""
-#: common/models.py:1884
+#: common/models.py:1870
msgid "Show pending SO shipments"
msgstr ""
-#: common/models.py:1885
+#: common/models.py:1871
msgid "Show pending SO shipments on the homepage"
msgstr ""
-#: common/models.py:1891
+#: common/models.py:1877
msgid "Show News"
msgstr ""
-#: common/models.py:1892
+#: common/models.py:1878
msgid "Show news on the homepage"
msgstr ""
-#: common/models.py:1898
+#: common/models.py:1884
msgid "Inline label display"
msgstr ""
-#: common/models.py:1899
+#: common/models.py:1885
msgid "Display PDF labels in the browser, instead of downloading as a file"
msgstr ""
-#: common/models.py:1905
+#: common/models.py:1891
msgid "Default label printer"
msgstr ""
-#: common/models.py:1906
+#: common/models.py:1892
msgid "Configure which label printer should be selected by default"
msgstr ""
-#: common/models.py:1912
+#: common/models.py:1898
msgid "Inline report display"
msgstr ""
-#: common/models.py:1913
+#: common/models.py:1899
msgid "Display PDF reports in the browser, instead of downloading as a file"
msgstr ""
-#: common/models.py:1919
+#: common/models.py:1905
msgid "Search Parts"
msgstr ""
-#: common/models.py:1920
+#: common/models.py:1906
msgid "Display parts in search preview window"
msgstr ""
-#: common/models.py:1926
+#: common/models.py:1912
msgid "Search Supplier Parts"
msgstr ""
-#: common/models.py:1927
+#: common/models.py:1913
msgid "Display supplier parts in search preview window"
msgstr ""
-#: common/models.py:1933
+#: common/models.py:1919
msgid "Search Manufacturer Parts"
msgstr ""
-#: common/models.py:1934
+#: common/models.py:1920
msgid "Display manufacturer parts in search preview window"
msgstr ""
-#: common/models.py:1940
+#: common/models.py:1926
msgid "Hide Inactive Parts"
msgstr ""
-#: common/models.py:1941
+#: common/models.py:1927
msgid "Excluded inactive parts from search preview window"
msgstr ""
-#: common/models.py:1947
+#: common/models.py:1933
msgid "Search Categories"
msgstr ""
-#: common/models.py:1948
+#: common/models.py:1934
msgid "Display part categories in search preview window"
msgstr ""
-#: common/models.py:1954
+#: common/models.py:1940
msgid "Search Stock"
msgstr ""
-#: common/models.py:1955
+#: common/models.py:1941
msgid "Display stock items in search preview window"
msgstr ""
-#: common/models.py:1961
+#: common/models.py:1947
msgid "Hide Unavailable Stock Items"
msgstr ""
-#: common/models.py:1962
+#: common/models.py:1948
msgid "Exclude stock items which are not available from the search preview window"
msgstr ""
-#: common/models.py:1968
+#: common/models.py:1954
msgid "Search Locations"
msgstr ""
-#: common/models.py:1969
+#: common/models.py:1955
msgid "Display stock locations in search preview window"
msgstr ""
-#: common/models.py:1975
+#: common/models.py:1961
msgid "Search Companies"
msgstr ""
-#: common/models.py:1976
+#: common/models.py:1962
msgid "Display companies in search preview window"
msgstr ""
-#: common/models.py:1982
+#: common/models.py:1968
msgid "Search Build Orders"
msgstr ""
-#: common/models.py:1983
+#: common/models.py:1969
msgid "Display build orders in search preview window"
msgstr ""
-#: common/models.py:1989
+#: common/models.py:1975
msgid "Search Purchase Orders"
msgstr ""
-#: common/models.py:1990
+#: common/models.py:1976
msgid "Display purchase orders in search preview window"
msgstr ""
-#: common/models.py:1996
+#: common/models.py:1982
msgid "Exclude Inactive Purchase Orders"
msgstr ""
-#: common/models.py:1997
+#: common/models.py:1983
msgid "Exclude inactive purchase orders from search preview window"
msgstr ""
-#: common/models.py:2003
+#: common/models.py:1989
msgid "Search Sales Orders"
msgstr ""
-#: common/models.py:2004
+#: common/models.py:1990
msgid "Display sales orders in search preview window"
msgstr ""
-#: common/models.py:2010
+#: common/models.py:1996
msgid "Exclude Inactive Sales Orders"
msgstr ""
-#: common/models.py:2011
+#: common/models.py:1997
msgid "Exclude inactive sales orders from search preview window"
msgstr ""
-#: common/models.py:2017
+#: common/models.py:2003
msgid "Search Return Orders"
msgstr ""
-#: common/models.py:2018
+#: common/models.py:2004
msgid "Display return orders in search preview window"
msgstr ""
-#: common/models.py:2024
+#: common/models.py:2010
msgid "Exclude Inactive Return Orders"
msgstr ""
-#: common/models.py:2025
+#: common/models.py:2011
msgid "Exclude inactive return orders from search preview window"
msgstr ""
-#: common/models.py:2031
+#: common/models.py:2017
msgid "Search Preview Results"
msgstr ""
-#: common/models.py:2032
+#: common/models.py:2018
msgid "Number of results to show in each section of the search preview window"
msgstr ""
-#: common/models.py:2038
+#: common/models.py:2024
msgid "Regex Search"
msgstr ""
-#: common/models.py:2039
+#: common/models.py:2025
msgid "Enable regular expressions in search queries"
msgstr ""
-#: common/models.py:2045
+#: common/models.py:2031
msgid "Whole Word Search"
msgstr ""
-#: common/models.py:2046
+#: common/models.py:2032
msgid "Search queries return results for whole word matches"
msgstr ""
-#: common/models.py:2052
+#: common/models.py:2038
msgid "Show Quantity in Forms"
msgstr ""
-#: common/models.py:2053
+#: common/models.py:2039
msgid "Display available part quantity in some forms"
msgstr ""
-#: common/models.py:2059
+#: common/models.py:2045
msgid "Escape Key Closes Forms"
msgstr ""
-#: common/models.py:2060
+#: common/models.py:2046
msgid "Use the escape key to close modal forms"
msgstr ""
-#: common/models.py:2066
+#: common/models.py:2052
msgid "Fixed Navbar"
msgstr ""
-#: common/models.py:2067
+#: common/models.py:2053
msgid "The navbar position is fixed to the top of the screen"
msgstr ""
-#: common/models.py:2073
+#: common/models.py:2059
msgid "Date Format"
msgstr ""
-#: common/models.py:2074
+#: common/models.py:2060
msgid "Preferred format for displaying dates"
msgstr ""
-#: common/models.py:2088 part/templates/part/detail.html:41
+#: common/models.py:2074 part/templates/part/detail.html:41
msgid "Part Scheduling"
msgstr ""
-#: common/models.py:2089
+#: common/models.py:2075
msgid "Display part scheduling information"
msgstr ""
-#: common/models.py:2095 part/templates/part/detail.html:62
+#: common/models.py:2081 part/templates/part/detail.html:62
msgid "Part Stocktake"
msgstr ""
-#: common/models.py:2096
+#: common/models.py:2082
msgid "Display part stocktake information (if stocktake functionality is enabled)"
msgstr ""
-#: common/models.py:2102
+#: common/models.py:2088
msgid "Table String Length"
msgstr ""
-#: common/models.py:2103
+#: common/models.py:2089
msgid "Maximimum length limit for strings displayed in table views"
msgstr ""
-#: common/models.py:2112
+#: common/models.py:2098
msgid "Default part label template"
msgstr ""
-#: common/models.py:2113
+#: common/models.py:2099
msgid "The part label template to be automatically selected"
msgstr ""
-#: common/models.py:2121
+#: common/models.py:2107
msgid "Default stock item template"
msgstr ""
-#: common/models.py:2122
+#: common/models.py:2108
msgid "The stock item label template to be automatically selected"
msgstr ""
-#: common/models.py:2130
+#: common/models.py:2116
msgid "Default stock location label template"
msgstr ""
-#: common/models.py:2131
+#: common/models.py:2117
msgid "The stock location label template to be automatically selected"
msgstr ""
-#: common/models.py:2177
+#: common/models.py:2163
msgid "Price break quantity"
msgstr ""
-#: common/models.py:2184 company/serializers.py:434 order/admin.py:43
-#: order/models.py:1132 order/models.py:1939
-#: templates/js/translated/company.js:1433 templates/js/translated/part.js:1856
+#: common/models.py:2170 company/serializers.py:491 order/admin.py:43
+#: order/models.py:1145 order/models.py:1952
+#: templates/js/translated/company.js:1854 templates/js/translated/part.js:1855
#: templates/js/translated/pricing.js:621
-#: templates/js/translated/return_order.js:725
+#: templates/js/translated/return_order.js:737
msgid "Price"
msgstr ""
-#: common/models.py:2185
+#: common/models.py:2171
msgid "Unit price at specified quantity"
msgstr ""
-#: common/models.py:2345 common/models.py:2523
+#: common/models.py:2331 common/models.py:2509
msgid "Endpoint"
msgstr ""
-#: common/models.py:2346
+#: common/models.py:2332
msgid "Endpoint at which this webhook is received"
msgstr ""
-#: common/models.py:2355
+#: common/models.py:2341
msgid "Name for this webhook"
msgstr ""
-#: common/models.py:2360 part/admin.py:50 part/models.py:1023
-#: plugin/models.py:47 templates/js/translated/table_filters.js:105
-#: templates/js/translated/table_filters.js:189
-#: templates/js/translated/table_filters.js:434
-#: templates/js/translated/table_filters.js:450
-#: templates/js/translated/table_filters.js:629
+#: common/models.py:2346 part/admin.py:50 part/models.py:1024
+#: plugin/models.py:48 templates/js/translated/table_filters.js:111
+#: templates/js/translated/table_filters.js:195
+#: templates/js/translated/table_filters.js:440
+#: templates/js/translated/table_filters.js:456
+#: templates/js/translated/table_filters.js:651
msgid "Active"
msgstr ""
-#: common/models.py:2361
+#: common/models.py:2347
msgid "Is this webhook active"
msgstr ""
-#: common/models.py:2375
+#: common/models.py:2361
msgid "Token"
msgstr ""
-#: common/models.py:2376
+#: common/models.py:2362
msgid "Token for access"
msgstr ""
-#: common/models.py:2383
+#: common/models.py:2369
msgid "Secret"
msgstr ""
-#: common/models.py:2384
+#: common/models.py:2370
msgid "Shared secret for HMAC"
msgstr ""
-#: common/models.py:2490
+#: common/models.py:2476
msgid "Message ID"
msgstr ""
-#: common/models.py:2491
+#: common/models.py:2477
msgid "Unique identifier for this message"
msgstr ""
-#: common/models.py:2499
+#: common/models.py:2485
msgid "Host"
msgstr ""
-#: common/models.py:2500
+#: common/models.py:2486
msgid "Host from which this message was received"
msgstr ""
-#: common/models.py:2507
+#: common/models.py:2493
msgid "Header"
msgstr ""
-#: common/models.py:2508
+#: common/models.py:2494
msgid "Header of this message"
msgstr ""
-#: common/models.py:2514
+#: common/models.py:2500
msgid "Body"
msgstr ""
-#: common/models.py:2515
+#: common/models.py:2501
msgid "Body of this message"
msgstr ""
-#: common/models.py:2524
+#: common/models.py:2510
msgid "Endpoint on which this message was received"
msgstr ""
-#: common/models.py:2529
+#: common/models.py:2515
msgid "Worked on"
msgstr ""
-#: common/models.py:2530
+#: common/models.py:2516
msgid "Was the work on this message finished?"
msgstr ""
-#: common/models.py:2684
+#: common/models.py:2670
msgid "Id"
msgstr ""
-#: common/models.py:2690 templates/js/translated/news.js:44
+#: common/models.py:2676 templates/js/translated/company.js:996
+#: templates/js/translated/news.js:44
msgid "Title"
msgstr ""
-#: common/models.py:2700 templates/js/translated/news.js:60
+#: common/models.py:2686 templates/js/translated/news.js:60
msgid "Published"
msgstr ""
-#: common/models.py:2705 templates/InvenTree/settings/plugin_settings.html:32
+#: common/models.py:2691 templates/InvenTree/settings/plugin_settings.html:32
#: templates/js/translated/news.js:56 templates/js/translated/plugin.js:106
msgid "Author"
msgstr ""
-#: common/models.py:2710 templates/js/translated/news.js:52
+#: common/models.py:2696 templates/js/translated/news.js:52
msgid "Summary"
msgstr ""
-#: common/models.py:2715
+#: common/models.py:2701
msgid "Read"
msgstr ""
-#: common/models.py:2716
+#: common/models.py:2702
msgid "Was this news item read?"
msgstr ""
-#: common/models.py:2736 company/models.py:143 part/models.py:914
+#: common/models.py:2722 company/models.py:139 part/models.py:915
#: report/templates/report/inventree_bill_of_materials_report.html:126
#: report/templates/report/inventree_bill_of_materials_report.html:148
#: report/templates/report/inventree_return_order_report_base.html:35
@@ -3422,7 +3400,7 @@ msgstr ""
msgid "Image"
msgstr ""
-#: common/models.py:2737
+#: common/models.py:2723
msgid "Image file"
msgstr ""
@@ -3499,7 +3477,7 @@ msgstr ""
#: company/models.py:113 company/templates/company/company_base.html:101
#: templates/InvenTree/settings/plugin_settings.html:54
-#: templates/js/translated/company.js:514
+#: templates/js/translated/company.js:521
msgid "Website"
msgstr ""
@@ -3507,303 +3485,387 @@ msgstr ""
msgid "Company website URL"
msgstr ""
-#: company/models.py:118 company/templates/company/company_base.html:119
-msgid "Address"
-msgstr ""
-
-#: company/models.py:119
-msgid "Company address"
-msgstr ""
-
-#: company/models.py:122
+#: company/models.py:118
msgid "Phone number"
msgstr ""
-#: company/models.py:123
+#: company/models.py:119
msgid "Contact phone number"
msgstr ""
-#: company/models.py:126 company/templates/company/company_base.html:133
+#: company/models.py:122 company/templates/company/company_base.html:133
#: templates/InvenTree/settings/user.html:49
-#: templates/js/translated/company.js:659
+#: templates/js/translated/company.js:666
msgid "Email"
msgstr ""
-#: company/models.py:126
+#: company/models.py:122
msgid "Contact email address"
msgstr ""
-#: company/models.py:129 company/templates/company/company_base.html:140
-#: order/models.py:266 order/templates/order/order_base.html:207
+#: company/models.py:125 company/templates/company/company_base.html:140
+#: order/models.py:270 order/templates/order/order_base.html:203
#: order/templates/order/return_order_base.html:175
#: order/templates/order/sales_order_base.html:215
msgid "Contact"
msgstr ""
-#: company/models.py:130
+#: company/models.py:126
msgid "Point of contact"
msgstr ""
-#: company/models.py:132
+#: company/models.py:128
msgid "Link to external company information"
msgstr ""
-#: company/models.py:146
+#: company/models.py:142
msgid "is customer"
msgstr ""
-#: company/models.py:146
+#: company/models.py:142
msgid "Do you sell items to this company?"
msgstr ""
-#: company/models.py:148
+#: company/models.py:144
msgid "is supplier"
msgstr ""
-#: company/models.py:148
+#: company/models.py:144
msgid "Do you purchase items from this company?"
msgstr ""
-#: company/models.py:150
+#: company/models.py:146
msgid "is manufacturer"
msgstr ""
-#: company/models.py:150
+#: company/models.py:146
msgid "Does this company manufacture parts?"
msgstr ""
-#: company/models.py:157
+#: company/models.py:153
msgid "Default currency used for this company"
msgstr ""
-#: company/models.py:223 company/templates/company/company_base.html:8
+#: company/models.py:235 company/models.py:328
+#: company/templates/company/company_base.html:8
#: company/templates/company/company_base.html:12
-#: templates/InvenTree/search.html:178 templates/js/translated/company.js:487
+#: templates/InvenTree/search.html:178 templates/js/translated/company.js:494
msgid "Company"
msgstr ""
-#: company/models.py:278 company/models.py:553 stock/models.py:675
-#: stock/serializers.py:155 stock/templates/stock/item_base.html:143
-#: templates/js/translated/bom.js:621
+#: company/models.py:324
+msgid "Company already has a primary address"
+msgstr ""
+
+#: company/models.py:329
+msgid "Select company"
+msgstr ""
+
+#: company/models.py:332
+msgid "Address title"
+msgstr ""
+
+#: company/models.py:333
+msgid "Title describing the address entry"
+msgstr ""
+
+#: company/models.py:337
+msgid "Primary address"
+msgstr ""
+
+#: company/models.py:338
+msgid "Set as primary address"
+msgstr ""
+
+#: company/models.py:341 templates/js/translated/company.js:941
+#: templates/js/translated/company.js:1002
+msgid "Line 1"
+msgstr ""
+
+#: company/models.py:342
+msgid "Address line 1"
+msgstr ""
+
+#: company/models.py:346 templates/js/translated/company.js:942
+#: templates/js/translated/company.js:1008
+msgid "Line 2"
+msgstr ""
+
+#: company/models.py:347
+msgid "Address line 2"
+msgstr ""
+
+#: company/models.py:351 company/models.py:352
+#: templates/js/translated/company.js:1014
+msgid "Postal code"
+msgstr ""
+
+#: company/models.py:356
+msgid "City/Region"
+msgstr ""
+
+#: company/models.py:357
+msgid "Postal code city/region"
+msgstr ""
+
+#: company/models.py:361
+msgid "State/Province"
+msgstr ""
+
+#: company/models.py:362
+msgid "State or province"
+msgstr ""
+
+#: company/models.py:366 templates/js/translated/company.js:1032
+msgid "Country"
+msgstr ""
+
+#: company/models.py:367
+msgid "Address country"
+msgstr ""
+
+#: company/models.py:371
+msgid "Courier shipping notes"
+msgstr ""
+
+#: company/models.py:372
+msgid "Notes for shipping courier"
+msgstr ""
+
+#: company/models.py:376
+msgid "Internal shipping notes"
+msgstr ""
+
+#: company/models.py:377
+msgid "Shipping notes for internal use"
+msgstr ""
+
+#: company/models.py:382
+msgid "Link to address information (external)"
+msgstr ""
+
+#: company/models.py:427 company/models.py:702 stock/models.py:675
+#: stock/serializers.py:204 stock/templates/stock/item_base.html:143
+#: templates/js/translated/bom.js:622
msgid "Base Part"
msgstr ""
-#: company/models.py:282 company/models.py:557
+#: company/models.py:431 company/models.py:706
msgid "Select part"
msgstr ""
-#: company/models.py:293 company/templates/company/company_base.html:77
+#: company/models.py:442 company/templates/company/company_base.html:77
#: company/templates/company/manufacturer_part.html:90
-#: company/templates/company/supplier_part.html:146 part/serializers.py:354
+#: company/templates/company/supplier_part.html:146 part/serializers.py:404
#: stock/templates/stock/item_base.html:208
-#: templates/js/translated/company.js:498
-#: templates/js/translated/company.js:824
-#: templates/js/translated/company.js:954
-#: templates/js/translated/company.js:1221
-#: templates/js/translated/table_filters.js:709
+#: templates/js/translated/company.js:505
+#: templates/js/translated/company.js:1149
+#: templates/js/translated/company.js:1327
+#: templates/js/translated/company.js:1642
+#: templates/js/translated/table_filters.js:731
msgid "Manufacturer"
msgstr ""
-#: company/models.py:294
+#: company/models.py:443
msgid "Select manufacturer"
msgstr ""
-#: company/models.py:300 company/templates/company/manufacturer_part.html:101
-#: company/templates/company/supplier_part.html:154 part/serializers.py:360
-#: templates/js/translated/company.js:340
-#: templates/js/translated/company.js:823
-#: templates/js/translated/company.js:970
-#: templates/js/translated/company.js:1240 templates/js/translated/part.js:1773
-#: templates/js/translated/purchase_order.js:1814
-#: templates/js/translated/purchase_order.js:2021
+#: company/models.py:449 company/templates/company/manufacturer_part.html:101
+#: company/templates/company/supplier_part.html:154 part/serializers.py:410
+#: templates/js/translated/company.js:350
+#: templates/js/translated/company.js:1148
+#: templates/js/translated/company.js:1343
+#: templates/js/translated/company.js:1661 templates/js/translated/part.js:1772
+#: templates/js/translated/purchase_order.js:1829
+#: templates/js/translated/purchase_order.js:2031
msgid "MPN"
msgstr ""
-#: company/models.py:301
+#: company/models.py:450
msgid "Manufacturer Part Number"
msgstr ""
-#: company/models.py:307
+#: company/models.py:456
msgid "URL for external manufacturer part link"
msgstr ""
-#: company/models.py:313
+#: company/models.py:462
msgid "Manufacturer part description"
msgstr ""
-#: company/models.py:360 company/models.py:384 company/models.py:578
+#: company/models.py:509 company/models.py:533 company/models.py:727
#: company/templates/company/manufacturer_part.html:7
#: company/templates/company/manufacturer_part.html:24
#: stock/templates/stock/item_base.html:218
msgid "Manufacturer Part"
msgstr ""
-#: company/models.py:391
+#: company/models.py:540
msgid "Parameter name"
msgstr ""
-#: company/models.py:397
+#: company/models.py:546
#: report/templates/report/inventree_test_report_base.html:104
-#: stock/models.py:2255 templates/js/translated/company.js:872
-#: templates/js/translated/company.js:1077 templates/js/translated/part.js:1465
-#: templates/js/translated/stock.js:1446
+#: stock/models.py:2255 templates/js/translated/company.js:1197
+#: templates/js/translated/company.js:1450 templates/js/translated/part.js:1464
+#: templates/js/translated/stock.js:1445
msgid "Value"
msgstr ""
-#: company/models.py:398
+#: company/models.py:547
msgid "Parameter value"
msgstr ""
-#: company/models.py:404 company/templates/company/supplier_part.html:169
-#: part/admin.py:40 part/models.py:987 part/models.py:3407
+#: company/models.py:553 company/templates/company/supplier_part.html:169
+#: part/admin.py:40 part/models.py:988 part/models.py:3441
#: part/templates/part/part_base.html:286
-#: templates/js/translated/company.js:1083 templates/js/translated/part.js:1484
-#: templates/js/translated/part.js:1588 templates/js/translated/part.js:2262
+#: templates/js/translated/company.js:1456 templates/js/translated/part.js:1483
+#: templates/js/translated/part.js:1587 templates/js/translated/part.js:2338
msgid "Units"
msgstr ""
-#: company/models.py:405
+#: company/models.py:554
msgid "Parameter units"
msgstr ""
-#: company/models.py:498
+#: company/models.py:647
msgid "Pack units must be compatible with the base part units"
msgstr ""
-#: company/models.py:504
+#: company/models.py:653
msgid "Pack units must be greater than zero"
msgstr ""
-#: company/models.py:520
+#: company/models.py:669
msgid "Linked manufacturer part must reference the same base part"
msgstr ""
-#: company/models.py:564 company/templates/company/company_base.html:82
-#: company/templates/company/supplier_part.html:130 order/models.py:382
-#: order/templates/order/order_base.html:140 part/bom.py:285 part/bom.py:313
-#: part/serializers.py:343 stock/templates/stock/item_base.html:225
+#: company/models.py:713 company/templates/company/company_base.html:82
+#: company/templates/company/supplier_part.html:130 order/models.py:395
+#: order/templates/order/order_base.html:136 part/bom.py:285 part/bom.py:313
+#: part/serializers.py:393 stock/templates/stock/item_base.html:225
#: templates/email/overdue_purchase_order.html:16
-#: templates/js/translated/company.js:339
-#: templates/js/translated/company.js:502
-#: templates/js/translated/company.js:1194 templates/js/translated/part.js:1741
+#: templates/js/translated/company.js:349
+#: templates/js/translated/company.js:509
+#: templates/js/translated/company.js:1615 templates/js/translated/part.js:1740
#: templates/js/translated/pricing.js:498
-#: templates/js/translated/purchase_order.js:1653
-#: templates/js/translated/table_filters.js:713
+#: templates/js/translated/purchase_order.js:1668
+#: templates/js/translated/table_filters.js:735
msgid "Supplier"
msgstr ""
-#: company/models.py:565
+#: company/models.py:714
msgid "Select supplier"
msgstr ""
-#: company/models.py:570 company/templates/company/supplier_part.html:140
-#: part/bom.py:286 part/bom.py:314 part/serializers.py:349
-#: templates/js/translated/company.js:338 templates/js/translated/part.js:1759
+#: company/models.py:719 company/templates/company/supplier_part.html:140
+#: part/bom.py:286 part/bom.py:314 part/serializers.py:399
+#: templates/js/translated/company.js:348 templates/js/translated/part.js:1758
#: templates/js/translated/pricing.js:510
-#: templates/js/translated/purchase_order.js:1813
-#: templates/js/translated/purchase_order.js:1996
+#: templates/js/translated/purchase_order.js:1828
+#: templates/js/translated/purchase_order.js:2006
msgid "SKU"
msgstr ""
-#: company/models.py:571 part/serializers.py:349
+#: company/models.py:720 part/serializers.py:399
msgid "Supplier stock keeping unit"
msgstr ""
-#: company/models.py:579
+#: company/models.py:728
msgid "Select manufacturer part"
msgstr ""
-#: company/models.py:585
+#: company/models.py:734
msgid "URL for external supplier part link"
msgstr ""
-#: company/models.py:591
+#: company/models.py:740
msgid "Supplier part description"
msgstr ""
-#: company/models.py:596 company/templates/company/supplier_part.html:188
-#: part/admin.py:279 part/models.py:3801 part/templates/part/upload_bom.html:59
+#: company/models.py:745 company/templates/company/supplier_part.html:188
+#: part/admin.py:279 part/models.py:3845 part/templates/part/upload_bom.html:59
#: report/templates/report/inventree_bill_of_materials_report.html:140
#: report/templates/report/inventree_po_report_base.html:32
#: report/templates/report/inventree_return_order_report_base.html:27
#: report/templates/report/inventree_so_report_base.html:32
-#: stock/serializers.py:418
+#: stock/serializers.py:484
msgid "Note"
msgstr ""
-#: company/models.py:600 part/models.py:1919
+#: company/models.py:749 part/models.py:1921
msgid "base cost"
msgstr ""
-#: company/models.py:600 part/models.py:1919
+#: company/models.py:749 part/models.py:1921
msgid "Minimum charge (e.g. stocking fee)"
msgstr ""
-#: company/models.py:602 company/templates/company/supplier_part.html:161
+#: company/models.py:751 company/templates/company/supplier_part.html:161
#: stock/admin.py:119 stock/models.py:701
#: stock/templates/stock/item_base.html:241
-#: templates/js/translated/company.js:1256
-#: templates/js/translated/stock.js:2160
+#: templates/js/translated/company.js:1677
+#: templates/js/translated/stock.js:2317
msgid "Packaging"
msgstr ""
-#: company/models.py:602
+#: company/models.py:751
msgid "Part packaging"
msgstr ""
-#: company/models.py:606 templates/js/translated/company.js:1261
-#: templates/js/translated/part.js:1793 templates/js/translated/part.js:1848
-#: templates/js/translated/purchase_order.js:300
-#: templates/js/translated/purchase_order.js:827
-#: templates/js/translated/purchase_order.js:1073
-#: templates/js/translated/purchase_order.js:2052
-#: templates/js/translated/purchase_order.js:2069
+#: company/models.py:755 templates/js/translated/company.js:1682
+#: templates/js/translated/part.js:1792 templates/js/translated/part.js:1847
+#: templates/js/translated/purchase_order.js:311
+#: templates/js/translated/purchase_order.js:842
+#: templates/js/translated/purchase_order.js:1088
+#: templates/js/translated/purchase_order.js:2062
+#: templates/js/translated/purchase_order.js:2079
msgid "Pack Quantity"
msgstr ""
-#: company/models.py:607
+#: company/models.py:756
msgid "Total quantity supplied in a single pack. Leave empty for single items."
msgstr ""
-#: company/models.py:624 part/models.py:1921
+#: company/models.py:773 part/models.py:1923
msgid "multiple"
msgstr ""
-#: company/models.py:624
+#: company/models.py:773
msgid "Order multiple"
msgstr ""
-#: company/models.py:632 company/templates/company/supplier_part.html:115
+#: company/models.py:781 company/templates/company/supplier_part.html:115
#: templates/email/build_order_required_stock.html:19
#: templates/email/low_stock_notification.html:17
-#: templates/js/translated/bom.js:1127 templates/js/translated/build.js:2136
-#: templates/js/translated/build.js:3045
-#: templates/js/translated/model_renderers.js:205
-#: templates/js/translated/part.js:670 templates/js/translated/part.js:672
-#: templates/js/translated/part.js:677
-#: templates/js/translated/table_filters.js:286
-#: templates/js/translated/table_filters.js:492
+#: templates/js/translated/bom.js:1145 templates/js/translated/build.js:2490
+#: templates/js/translated/index.js:118
+#: templates/js/translated/model_renderers.js:219
+#: templates/js/translated/part.js:669 templates/js/translated/part.js:671
+#: templates/js/translated/part.js:676
+#: templates/js/translated/table_filters.js:292
+#: templates/js/translated/table_filters.js:510
msgid "Available"
msgstr ""
-#: company/models.py:633
+#: company/models.py:782
msgid "Quantity available from supplier"
msgstr ""
-#: company/models.py:637
+#: company/models.py:786
msgid "Availability Updated"
msgstr ""
-#: company/models.py:638
+#: company/models.py:787
msgid "Date of last update of availability data"
msgstr ""
-#: company/serializers.py:99
+#: company/serializers.py:156
msgid "Default currency used for this supplier"
msgstr ""
#: company/templates/company/company_base.html:22
-#: templates/js/translated/purchase_order.js:228
+#: templates/js/translated/purchase_order.js:239
msgid "Create Purchase Order"
msgstr ""
@@ -3816,7 +3878,7 @@ msgid "Edit company information"
msgstr ""
#: company/templates/company/company_base.html:34
-#: templates/js/translated/company.js:436
+#: templates/js/translated/company.js:443
msgid "Edit Company"
msgstr ""
@@ -3856,17 +3918,17 @@ msgstr ""
msgid "Delete image"
msgstr ""
-#: company/templates/company/company_base.html:87 order/models.py:779
-#: order/models.py:1738 order/templates/order/return_order_base.html:132
+#: company/templates/company/company_base.html:87 order/models.py:792
+#: order/models.py:1751 order/templates/order/return_order_base.html:132
#: order/templates/order/sales_order_base.html:145 stock/models.py:720
-#: stock/models.py:721 stock/serializers.py:825
+#: stock/models.py:721 stock/serializers.py:942
#: stock/templates/stock/item_base.html:401
#: templates/email/overdue_sales_order.html:16
-#: templates/js/translated/company.js:494
-#: templates/js/translated/return_order.js:284
-#: templates/js/translated/sales_order.js:772
-#: templates/js/translated/stock.js:2696
-#: templates/js/translated/table_filters.js:717
+#: templates/js/translated/company.js:501
+#: templates/js/translated/return_order.js:296
+#: templates/js/translated/sales_order.js:784
+#: templates/js/translated/stock.js:2827
+#: templates/js/translated/table_filters.js:739
msgid "Customer"
msgstr ""
@@ -3874,6 +3936,13 @@ msgstr ""
msgid "Uses default currency"
msgstr ""
+#: company/templates/company/company_base.html:119 order/models.py:279
+#: order/templates/order/order_base.html:210
+#: order/templates/order/return_order_base.html:182
+#: order/templates/order/sales_order_base.html:222
+msgid "Address"
+msgstr ""
+
#: company/templates/company/company_base.html:126
msgid "Phone"
msgstr ""
@@ -3906,7 +3975,7 @@ msgstr ""
#: company/templates/company/detail.html:15
#: company/templates/company/manufacturer_part_sidebar.html:7
-#: templates/InvenTree/search.html:120 templates/js/translated/search.js:189
+#: templates/InvenTree/search.html:120 templates/js/translated/search.js:147
msgid "Supplier Parts"
msgstr ""
@@ -3916,129 +3985,121 @@ msgstr ""
#: company/templates/company/detail.html:20
#: company/templates/company/manufacturer_part.html:123
-#: part/templates/part/detail.html:381
+#: part/templates/part/detail.html:356
msgid "New Supplier Part"
msgstr ""
-#: company/templates/company/detail.html:37
-#: company/templates/company/detail.html:85
-#: part/templates/part/category.html:183
-msgid "Order parts"
-msgstr ""
-
-#: company/templates/company/detail.html:42
-#: company/templates/company/detail.html:90
-msgid "Delete parts"
-msgstr ""
-
-#: company/templates/company/detail.html:43
-#: company/templates/company/detail.html:91
-msgid "Delete Parts"
-msgstr ""
-
-#: company/templates/company/detail.html:62 templates/InvenTree/search.html:105
-#: templates/js/translated/search.js:193
+#: company/templates/company/detail.html:41 templates/InvenTree/search.html:105
+#: templates/js/translated/search.js:151
msgid "Manufacturer Parts"
msgstr ""
-#: company/templates/company/detail.html:66
+#: company/templates/company/detail.html:45
msgid "Create new manufacturer part"
msgstr ""
-#: company/templates/company/detail.html:67 part/templates/part/detail.html:411
+#: company/templates/company/detail.html:46 part/templates/part/detail.html:376
msgid "New Manufacturer Part"
msgstr ""
-#: company/templates/company/detail.html:108
+#: company/templates/company/detail.html:65
msgid "Supplier Stock"
msgstr ""
-#: company/templates/company/detail.html:118
+#: company/templates/company/detail.html:75
#: company/templates/company/sidebar.html:12
#: company/templates/company/supplier_part_sidebar.html:7
#: 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:108 part/templates/part/part_sidebar.html:35
-#: templates/InvenTree/index.html:275 templates/InvenTree/search.html:199
+#: part/templates/part/detail.html:106 part/templates/part/part_sidebar.html:35
+#: templates/InvenTree/index.html:227 templates/InvenTree/search.html:199
#: templates/InvenTree/settings/sidebar.html:55
-#: templates/js/translated/search.js:247 templates/navbar.html:50
+#: templates/js/translated/search.js:205 templates/navbar.html:50
#: users/models.py:43
msgid "Purchase Orders"
msgstr ""
-#: company/templates/company/detail.html:122
+#: company/templates/company/detail.html:79
#: order/templates/order/purchase_orders.html:17
msgid "Create new purchase order"
msgstr ""
-#: company/templates/company/detail.html:123
+#: company/templates/company/detail.html:80
#: order/templates/order/purchase_orders.html:18
msgid "New Purchase Order"
msgstr ""
-#: company/templates/company/detail.html:146
+#: company/templates/company/detail.html:101
#: company/templates/company/sidebar.html:21
#: 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:131 part/templates/part/part_sidebar.html:39
-#: templates/InvenTree/index.html:307 templates/InvenTree/search.html:219
+#: part/templates/part/detail.html:127 part/templates/part/part_sidebar.html:39
+#: templates/InvenTree/index.html:259 templates/InvenTree/search.html:219
#: templates/InvenTree/settings/sidebar.html:57
-#: templates/js/translated/search.js:261 templates/navbar.html:62
+#: templates/js/translated/search.js:219 templates/navbar.html:62
#: users/models.py:44
msgid "Sales Orders"
msgstr ""
-#: company/templates/company/detail.html:150
+#: company/templates/company/detail.html:105
#: order/templates/order/sales_orders.html:20
msgid "Create new sales order"
msgstr ""
-#: company/templates/company/detail.html:151
+#: company/templates/company/detail.html:106
#: order/templates/order/sales_orders.html:21
msgid "New Sales Order"
msgstr ""
-#: company/templates/company/detail.html:173
-#: templates/js/translated/build.js:1976
+#: company/templates/company/detail.html:126
msgid "Assigned Stock"
msgstr ""
-#: company/templates/company/detail.html:191
+#: company/templates/company/detail.html:142
#: company/templates/company/sidebar.html:29
#: order/templates/order/return_order_base.html:13
#: order/templates/order/return_orders.html:8
#: order/templates/order/return_orders.html:15
#: templates/InvenTree/settings/sidebar.html:59
-#: templates/js/translated/search.js:274 templates/navbar.html:65
+#: templates/js/translated/search.js:232 templates/navbar.html:65
#: users/models.py:45
msgid "Return Orders"
msgstr ""
-#: company/templates/company/detail.html:195
+#: company/templates/company/detail.html:146
#: order/templates/order/return_orders.html:20
msgid "Create new return order"
msgstr ""
-#: company/templates/company/detail.html:196
+#: company/templates/company/detail.html:147
#: order/templates/order/return_orders.html:21
msgid "New Return Order"
msgstr ""
-#: company/templates/company/detail.html:221
+#: company/templates/company/detail.html:168
msgid "Company Notes"
msgstr ""
-#: company/templates/company/detail.html:236
+#: company/templates/company/detail.html:183
msgid "Company Contacts"
msgstr ""
-#: company/templates/company/detail.html:240
-#: company/templates/company/detail.html:241
+#: company/templates/company/detail.html:187
+#: company/templates/company/detail.html:188
msgid "Add Contact"
msgstr ""
+#: company/templates/company/detail.html:206
+msgid "Company addresses"
+msgstr ""
+
+#: company/templates/company/detail.html:210
+#: company/templates/company/detail.html:211
+msgid "Add Address"
+msgstr ""
+
#: company/templates/company/index.html:8
msgid "Supplier List"
msgstr ""
@@ -4050,17 +4111,17 @@ msgstr ""
#: company/templates/company/manufacturer_part.html:35
#: company/templates/company/supplier_part.html:228
-#: part/templates/part/detail.html:111 part/templates/part/part_base.html:85
+#: part/templates/part/detail.html:109 part/templates/part/part_base.html:85
msgid "Order part"
msgstr ""
#: company/templates/company/manufacturer_part.html:39
-#: templates/js/translated/company.js:1001
+#: templates/js/translated/company.js:1374
msgid "Edit manufacturer part"
msgstr ""
#: company/templates/company/manufacturer_part.html:43
-#: templates/js/translated/company.js:1002
+#: templates/js/translated/company.js:1375
msgid "Delete manufacturer part"
msgstr ""
@@ -4080,40 +4141,22 @@ msgstr ""
msgid "Suppliers"
msgstr ""
-#: company/templates/company/manufacturer_part.html:136
-#: part/templates/part/detail.html:392
-msgid "Delete supplier parts"
-msgstr ""
-
-#: company/templates/company/manufacturer_part.html:136
-#: company/templates/company/manufacturer_part.html:183
-#: part/templates/part/detail.html:393 part/templates/part/detail.html:423
-#: templates/js/translated/forms.js:506 templates/js/translated/helpers.js:105
-#: templates/js/translated/part.js:370 templates/js/translated/pricing.js:629
-#: templates/js/translated/stock.js:216 users/models.py:247
-msgid "Delete"
-msgstr ""
-
-#: company/templates/company/manufacturer_part.html:166
+#: company/templates/company/manufacturer_part.html:156
#: company/templates/company/manufacturer_part_sidebar.html:5
#: part/templates/part/category_sidebar.html:20
-#: part/templates/part/detail.html:208 part/templates/part/part_sidebar.html:8
+#: part/templates/part/detail.html:195 part/templates/part/part_sidebar.html:8
msgid "Parameters"
msgstr ""
-#: company/templates/company/manufacturer_part.html:170
-#: part/templates/part/detail.html:213
+#: company/templates/company/manufacturer_part.html:160
+#: part/templates/part/detail.html:200
#: templates/InvenTree/settings/category.html:12
#: templates/InvenTree/settings/part_parameters.html:12
msgid "New Parameter"
msgstr ""
-#: company/templates/company/manufacturer_part.html:183
-msgid "Delete parameters"
-msgstr ""
-
-#: company/templates/company/manufacturer_part.html:226
-#: templates/js/translated/part.js:1396
+#: company/templates/company/manufacturer_part.html:206
+#: templates/js/translated/part.js:1395
msgid "Add Parameter"
msgstr ""
@@ -4137,23 +4180,28 @@ msgstr ""
msgid "Contacts"
msgstr ""
+#: company/templates/company/sidebar.html:35
+msgid "Addresses"
+msgstr ""
+
#: company/templates/company/supplier_part.html:7
#: company/templates/company/supplier_part.html:24 stock/models.py:684
#: stock/templates/stock/item_base.html:234
-#: templates/js/translated/company.js:1210
-#: templates/js/translated/purchase_order.js:747
-#: templates/js/translated/stock.js:2016
+#: templates/js/translated/company.js:1631
+#: templates/js/translated/purchase_order.js:758
+#: templates/js/translated/stock.js:2173
msgid "Supplier Part"
msgstr ""
#: company/templates/company/supplier_part.html:51
+#: templates/js/translated/company.js:1557
msgid "Supplier part actions"
msgstr ""
#: company/templates/company/supplier_part.html:56
#: company/templates/company/supplier_part.html:57
#: company/templates/company/supplier_part.html:229
-#: part/templates/part/detail.html:112
+#: part/templates/part/detail.html:110
msgid "Order Part"
msgstr ""
@@ -4164,13 +4212,13 @@ msgstr ""
#: company/templates/company/supplier_part.html:64
#: company/templates/company/supplier_part.html:65
-#: templates/js/translated/company.js:283
+#: templates/js/translated/company.js:293
msgid "Edit Supplier Part"
msgstr ""
#: company/templates/company/supplier_part.html:69
#: company/templates/company/supplier_part.html:70
-#: templates/js/translated/company.js:258
+#: templates/js/translated/company.js:268
msgid "Duplicate Supplier Part"
msgstr ""
@@ -4197,7 +4245,7 @@ msgstr ""
#: company/templates/company/supplier_part.html:211
#: part/templates/part/detail.html:25 stock/templates/stock/location.html:198
-#: templates/js/translated/stock.js:504
+#: templates/js/translated/stock.js:503
msgid "New Stock Item"
msgstr ""
@@ -4205,37 +4253,37 @@ msgstr ""
msgid "Supplier Part Orders"
msgstr ""
-#: company/templates/company/supplier_part.html:249
+#: company/templates/company/supplier_part.html:247
msgid "Pricing Information"
msgstr ""
-#: company/templates/company/supplier_part.html:254
-#: templates/js/translated/company.js:387
+#: company/templates/company/supplier_part.html:252
+#: templates/js/translated/company.js:397
#: templates/js/translated/pricing.js:684
msgid "Add Price Break"
msgstr ""
-#: company/templates/company/supplier_part.html:281
+#: company/templates/company/supplier_part.html:277
msgid "Supplier Part QR Code"
msgstr ""
-#: company/templates/company/supplier_part.html:292
+#: company/templates/company/supplier_part.html:288
msgid "Link Barcode to Supplier Part"
msgstr ""
-#: company/templates/company/supplier_part.html:365
+#: company/templates/company/supplier_part.html:361
msgid "Update Part Availability"
msgstr ""
#: company/templates/company/supplier_part_sidebar.html:5 part/tasks.py:293
-#: part/templates/part/category.html:199
+#: part/templates/part/category.html:182
#: part/templates/part/category_sidebar.html:17 stock/admin.py:47
-#: stock/templates/stock/location.html:168
+#: stock/serializers.py:662 stock/templates/stock/location.html:168
#: stock/templates/stock/location.html:182
#: stock/templates/stock/location.html:194
#: stock/templates/stock/location_sidebar.html:7
-#: templates/InvenTree/search.html:155 templates/js/translated/part.js:1034
-#: templates/js/translated/search.js:214 templates/js/translated/stock.js:2514
+#: templates/InvenTree/search.html:155 templates/js/translated/part.js:1033
+#: templates/js/translated/search.js:172 templates/js/translated/stock.js:2645
#: users/models.py:41
msgid "Stock Items"
msgstr ""
@@ -4261,7 +4309,7 @@ msgstr ""
msgid "New Customer"
msgstr ""
-#: company/views.py:52 templates/js/translated/search.js:234
+#: company/views.py:52 templates/js/translated/search.js:192
msgid "Companies"
msgstr ""
@@ -4269,72 +4317,76 @@ msgstr ""
msgid "New Company"
msgstr ""
-#: label/models.py:104
+#: label/models.py:112
msgid "Label name"
msgstr ""
-#: label/models.py:111
+#: label/models.py:119
msgid "Label description"
msgstr ""
-#: label/models.py:118
+#: label/models.py:126
msgid "Label"
msgstr ""
-#: label/models.py:119
+#: label/models.py:127
msgid "Label template file"
msgstr ""
-#: label/models.py:125 report/models.py:273
+#: label/models.py:133 report/models.py:273
msgid "Enabled"
msgstr ""
-#: label/models.py:126
+#: label/models.py:134
msgid "Label template is enabled"
msgstr ""
-#: label/models.py:131
+#: label/models.py:139
msgid "Width [mm]"
msgstr ""
-#: label/models.py:132
+#: label/models.py:140
msgid "Label width, specified in mm"
msgstr ""
-#: label/models.py:138
+#: label/models.py:146
msgid "Height [mm]"
msgstr ""
-#: label/models.py:139
+#: label/models.py:147
msgid "Label height, specified in mm"
msgstr ""
-#: label/models.py:145 report/models.py:266
+#: label/models.py:153 report/models.py:266
msgid "Filename Pattern"
msgstr ""
-#: label/models.py:146
+#: label/models.py:154
msgid "Pattern for generating label filenames"
msgstr ""
-#: label/models.py:242
+#: label/models.py:250
msgid "Query filters (comma-separated list of key=value pairs),"
msgstr ""
-#: label/models.py:243 label/models.py:284 label/models.py:312
-#: report/models.py:294 report/models.py:452 report/models.py:490
-#: report/models.py:528
+#: label/models.py:251 label/models.py:292 label/models.py:320
+#: label/models.py:356 report/models.py:294 report/models.py:454
+#: report/models.py:492 report/models.py:530
msgid "Filters"
msgstr ""
-#: label/models.py:283
+#: label/models.py:291
msgid "Query filters (comma-separated list of key=value pairs"
msgstr ""
-#: label/models.py:311
+#: label/models.py:319
msgid "Part query filters (comma-separated value of key=value pairs)"
msgstr ""
+#: label/models.py:355
+msgid "Query filters (comma-separated list of key=value pairs)"
+msgstr ""
+
#: label/templates/label/part/part_label.html:31
#: label/templates/label/stockitem/qr.html:21
#: label/templates/label/stocklocation/qr.html:21
@@ -4352,8 +4404,8 @@ msgstr ""
#: report/templates/report/inventree_po_report_base.html:31
#: report/templates/report/inventree_so_report_base.html:31
#: templates/js/translated/order.js:327
-#: templates/js/translated/purchase_order.js:2093
-#: templates/js/translated/sales_order.js:1827
+#: templates/js/translated/purchase_order.js:2103
+#: templates/js/translated/sales_order.js:1839
msgid "Total Price"
msgstr ""
@@ -4361,30 +4413,30 @@ msgstr ""
msgid "No matching purchase order found"
msgstr ""
-#: order/api.py:1452 order/models.py:1178 order/models.py:1262
+#: order/api.py:1452 order/models.py:1191 order/models.py:1275
#: order/templates/order/order_base.html:9
#: order/templates/order/order_base.html:18
#: report/templates/report/inventree_po_report_base.html:14
#: stock/templates/stock/item_base.html:177
#: templates/email/overdue_purchase_order.html:15
-#: templates/js/translated/part.js:1718 templates/js/translated/pricing.js:790
-#: templates/js/translated/purchase_order.js:154
-#: templates/js/translated/purchase_order.js:748
-#: templates/js/translated/purchase_order.js:1637
-#: templates/js/translated/stock.js:1996 templates/js/translated/stock.js:2644
+#: templates/js/translated/part.js:1717 templates/js/translated/pricing.js:790
+#: templates/js/translated/purchase_order.js:165
+#: templates/js/translated/purchase_order.js:759
+#: templates/js/translated/purchase_order.js:1652
+#: templates/js/translated/stock.js:2153 templates/js/translated/stock.js:2775
msgid "Purchase Order"
msgstr ""
-#: order/api.py:1456 order/models.py:1909 order/models.py:1955
+#: order/api.py:1456 order/models.py:1922 order/models.py:1968
#: order/templates/order/return_order_base.html:9
#: order/templates/order/return_order_base.html:28
#: report/templates/report/inventree_return_order_report_base.html:13
-#: templates/js/translated/return_order.js:269
-#: templates/js/translated/stock.js:2678
+#: templates/js/translated/return_order.js:281
+#: templates/js/translated/stock.js:2809
msgid "Return Order"
msgstr ""
-#: order/api.py:1458 templates/js/translated/sales_order.js:1030
+#: order/api.py:1458 templates/js/translated/sales_order.js:1042
msgid "Unknown"
msgstr ""
@@ -4392,11 +4444,11 @@ msgstr ""
msgid "Total price for this order"
msgstr ""
-#: order/models.py:79 order/serializers.py:49
+#: order/models.py:79 order/serializers.py:50
msgid "Order Currency"
msgstr ""
-#: order/models.py:81 order/serializers.py:50
+#: order/models.py:81 order/serializers.py:51
msgid "Currency for this order (leave blank to use company default)"
msgstr ""
@@ -4408,492 +4460,496 @@ msgstr ""
msgid "Order description (optional)"
msgstr ""
-#: order/models.py:234
+#: order/models.py:237
msgid "Select project code for this order"
msgstr ""
-#: order/models.py:236 order/models.py:1094 order/models.py:1454
+#: order/models.py:240 order/models.py:1107 order/models.py:1467
msgid "Link to external page"
msgstr ""
-#: order/models.py:241
+#: order/models.py:245
msgid "Expected date for order delivery. Order will be overdue after this date."
msgstr ""
-#: order/models.py:250
+#: order/models.py:254
msgid "Created By"
msgstr ""
-#: order/models.py:257
+#: order/models.py:261
msgid "User or group responsible for this order"
msgstr ""
-#: order/models.py:267
+#: order/models.py:271
msgid "Point of contact for this order"
msgstr ""
-#: order/models.py:360 order/models.py:766
+#: order/models.py:280
+msgid "Company address for this order"
+msgstr ""
+
+#: order/models.py:373 order/models.py:779
msgid "Order reference"
msgstr ""
-#: order/models.py:368 order/models.py:791
+#: order/models.py:381 order/models.py:804
msgid "Purchase order status"
msgstr ""
-#: order/models.py:383
+#: order/models.py:396
msgid "Company from which the items are being ordered"
msgstr ""
-#: order/models.py:391 order/templates/order/order_base.html:152
-#: templates/js/translated/purchase_order.js:1662
+#: order/models.py:404 order/templates/order/order_base.html:148
+#: templates/js/translated/purchase_order.js:1677
msgid "Supplier Reference"
msgstr ""
-#: order/models.py:391
+#: order/models.py:404
msgid "Supplier order reference code"
msgstr ""
-#: order/models.py:398
+#: order/models.py:411
msgid "received by"
msgstr ""
-#: order/models.py:403 order/models.py:1761
+#: order/models.py:416 order/models.py:1774
msgid "Issue Date"
msgstr ""
-#: order/models.py:404 order/models.py:1762
+#: order/models.py:417 order/models.py:1775
msgid "Date order was issued"
msgstr ""
-#: order/models.py:410 order/models.py:1768
+#: order/models.py:423 order/models.py:1781
msgid "Date order was completed"
msgstr ""
-#: order/models.py:445
+#: order/models.py:458
msgid "Part supplier must match PO supplier"
msgstr ""
-#: order/models.py:606
+#: order/models.py:619
msgid "Quantity must be a positive number"
msgstr ""
-#: order/models.py:780
+#: order/models.py:793
msgid "Company to which the items are being sold"
msgstr ""
-#: order/models.py:799 order/models.py:1755
+#: order/models.py:812 order/models.py:1768
msgid "Customer Reference "
msgstr ""
-#: order/models.py:799 order/models.py:1756
+#: order/models.py:812 order/models.py:1769
msgid "Customer order reference code"
msgstr ""
-#: order/models.py:801 order/models.py:1408
-#: templates/js/translated/sales_order.js:831
-#: templates/js/translated/sales_order.js:1012
+#: order/models.py:814 order/models.py:1421
+#: templates/js/translated/sales_order.js:843
+#: templates/js/translated/sales_order.js:1024
msgid "Shipment Date"
msgstr ""
-#: order/models.py:808
+#: order/models.py:821
msgid "shipped by"
msgstr ""
-#: order/models.py:857
+#: order/models.py:870
msgid "Order cannot be completed as no parts have been assigned"
msgstr ""
-#: order/models.py:861
+#: order/models.py:874
msgid "Only an open order can be marked as complete"
msgstr ""
-#: order/models.py:864 templates/js/translated/sales_order.js:491
+#: order/models.py:877 templates/js/translated/sales_order.js:503
msgid "Order cannot be completed as there are incomplete shipments"
msgstr ""
-#: order/models.py:867
+#: order/models.py:880
msgid "Order cannot be completed as there are incomplete line items"
msgstr ""
-#: order/models.py:1074
+#: order/models.py:1087
msgid "Item quantity"
msgstr ""
-#: order/models.py:1087
+#: order/models.py:1100
msgid "Line item reference"
msgstr ""
-#: order/models.py:1089
+#: order/models.py:1102
msgid "Line item notes"
msgstr ""
-#: order/models.py:1100
+#: order/models.py:1113
msgid "Target date for this line item (leave blank to use the target date from the order)"
msgstr ""
-#: order/models.py:1118
+#: order/models.py:1131
msgid "Line item description (optional)"
msgstr ""
-#: order/models.py:1123
+#: order/models.py:1136
msgid "Context"
msgstr ""
-#: order/models.py:1124
+#: order/models.py:1137
msgid "Additional context for this line"
msgstr ""
-#: order/models.py:1133
+#: order/models.py:1146
msgid "Unit price"
msgstr ""
-#: order/models.py:1163
+#: order/models.py:1176
msgid "Supplier part must match supplier"
msgstr ""
-#: order/models.py:1171
+#: order/models.py:1184
msgid "deleted"
msgstr ""
-#: order/models.py:1177 order/models.py:1262 order/models.py:1303
-#: order/models.py:1402 order/models.py:1551 order/models.py:1908
-#: order/models.py:1955 templates/js/translated/sales_order.js:1474
+#: order/models.py:1190 order/models.py:1275 order/models.py:1316
+#: order/models.py:1415 order/models.py:1564 order/models.py:1921
+#: order/models.py:1968 templates/js/translated/sales_order.js:1486
msgid "Order"
msgstr ""
-#: order/models.py:1196
+#: order/models.py:1209
msgid "Supplier part"
msgstr ""
-#: order/models.py:1203 order/templates/order/order_base.html:200
-#: templates/js/translated/part.js:1841 templates/js/translated/part.js:1872
-#: templates/js/translated/purchase_order.js:1276
-#: templates/js/translated/purchase_order.js:2137
-#: templates/js/translated/return_order.js:748
-#: templates/js/translated/table_filters.js:90
-#: templates/js/translated/table_filters.js:515
+#: order/models.py:1216 order/templates/order/order_base.html:196
+#: templates/js/translated/part.js:1840 templates/js/translated/part.js:1871
+#: templates/js/translated/purchase_order.js:1291
+#: templates/js/translated/purchase_order.js:2147
+#: templates/js/translated/return_order.js:760
+#: templates/js/translated/table_filters.js:96
+#: templates/js/translated/table_filters.js:537
msgid "Received"
msgstr ""
-#: order/models.py:1204
+#: order/models.py:1217
msgid "Number of items received"
msgstr ""
-#: order/models.py:1211 stock/models.py:823 stock/serializers.py:252
+#: order/models.py:1224 stock/models.py:823 stock/serializers.py:314
#: stock/templates/stock/item_base.html:184
-#: templates/js/translated/stock.js:2047
+#: templates/js/translated/stock.js:2204
msgid "Purchase Price"
msgstr ""
-#: order/models.py:1212
+#: order/models.py:1225
msgid "Unit purchase price"
msgstr ""
-#: order/models.py:1225
+#: order/models.py:1238
msgid "Where does the Purchaser want this item to be stored?"
msgstr ""
-#: order/models.py:1291
+#: order/models.py:1304
msgid "Virtual part cannot be assigned to a sales order"
msgstr ""
-#: order/models.py:1296
+#: order/models.py:1309
msgid "Only salable parts can be assigned to a sales order"
msgstr ""
-#: order/models.py:1322 part/templates/part/part_pricing.html:107
+#: order/models.py:1335 part/templates/part/part_pricing.html:107
#: part/templates/part/prices.html:128 templates/js/translated/pricing.js:943
msgid "Sale Price"
msgstr ""
-#: order/models.py:1323
+#: order/models.py:1336
msgid "Unit sale price"
msgstr ""
-#: order/models.py:1333
+#: order/models.py:1346
msgid "Shipped quantity"
msgstr ""
-#: order/models.py:1409
+#: order/models.py:1422
msgid "Date of shipment"
msgstr ""
-#: order/models.py:1414 templates/js/translated/sales_order.js:1024
+#: order/models.py:1427 templates/js/translated/sales_order.js:1036
msgid "Delivery Date"
msgstr ""
-#: order/models.py:1415
+#: order/models.py:1428
msgid "Date of delivery of shipment"
msgstr ""
-#: order/models.py:1422
+#: order/models.py:1435
msgid "Checked By"
msgstr ""
-#: order/models.py:1423
+#: order/models.py:1436
msgid "User who checked this shipment"
msgstr ""
-#: order/models.py:1430 order/models.py:1627 order/serializers.py:1248
-#: order/serializers.py:1376 templates/js/translated/model_renderers.js:415
+#: order/models.py:1443 order/models.py:1640 order/serializers.py:1254
+#: order/serializers.py:1382 templates/js/translated/model_renderers.js:429
msgid "Shipment"
msgstr ""
-#: order/models.py:1431
+#: order/models.py:1444
msgid "Shipment number"
msgstr ""
-#: order/models.py:1439
+#: order/models.py:1452
msgid "Tracking Number"
msgstr ""
-#: order/models.py:1440
+#: order/models.py:1453
msgid "Shipment tracking information"
msgstr ""
-#: order/models.py:1447
+#: order/models.py:1460
msgid "Invoice Number"
msgstr ""
-#: order/models.py:1448
+#: order/models.py:1461
msgid "Reference number for associated invoice"
msgstr ""
-#: order/models.py:1470
+#: order/models.py:1483
msgid "Shipment has already been sent"
msgstr ""
-#: order/models.py:1473
+#: order/models.py:1486
msgid "Shipment has no allocated stock items"
msgstr ""
-#: order/models.py:1586 order/models.py:1588
+#: order/models.py:1599 order/models.py:1601
msgid "Stock item has not been assigned"
msgstr ""
-#: order/models.py:1592
+#: order/models.py:1605
msgid "Cannot allocate stock item to a line with a different part"
msgstr ""
-#: order/models.py:1594
+#: order/models.py:1607
msgid "Cannot allocate stock to a line without a part"
msgstr ""
-#: order/models.py:1597
+#: order/models.py:1610
msgid "Allocation quantity cannot exceed stock quantity"
msgstr ""
-#: order/models.py:1607 order/serializers.py:1110
+#: order/models.py:1620 order/serializers.py:1116
msgid "Quantity must be 1 for serialized stock item"
msgstr ""
-#: order/models.py:1610
+#: order/models.py:1623
msgid "Sales order does not match shipment"
msgstr ""
-#: order/models.py:1611
+#: order/models.py:1624
msgid "Shipment does not match sales order"
msgstr ""
-#: order/models.py:1619
+#: order/models.py:1632
msgid "Line"
msgstr ""
-#: order/models.py:1628
+#: order/models.py:1641
msgid "Sales order shipment reference"
msgstr ""
-#: order/models.py:1641 order/models.py:1916
-#: templates/js/translated/return_order.js:706
+#: order/models.py:1654 order/models.py:1929
+#: templates/js/translated/return_order.js:718
msgid "Item"
msgstr ""
-#: order/models.py:1642
+#: order/models.py:1655
msgid "Select stock item to allocate"
msgstr ""
-#: order/models.py:1645
+#: order/models.py:1658
msgid "Enter stock allocation quantity"
msgstr ""
-#: order/models.py:1725
+#: order/models.py:1738
msgid "Return Order reference"
msgstr ""
-#: order/models.py:1739
+#: order/models.py:1752
msgid "Company from which items are being returned"
msgstr ""
-#: order/models.py:1750
+#: order/models.py:1763
msgid "Return order status"
msgstr ""
-#: order/models.py:1901
+#: order/models.py:1914
msgid "Only serialized items can be assigned to a Return Order"
msgstr ""
-#: order/models.py:1917
+#: order/models.py:1930
msgid "Select item to return from customer"
msgstr ""
-#: order/models.py:1922
+#: order/models.py:1935
msgid "Received Date"
msgstr ""
-#: order/models.py:1923
+#: order/models.py:1936
msgid "The date this this return item was received"
msgstr ""
-#: order/models.py:1934 templates/js/translated/return_order.js:717
-#: templates/js/translated/table_filters.js:93
+#: order/models.py:1947 templates/js/translated/return_order.js:729
+#: templates/js/translated/table_filters.js:99
msgid "Outcome"
msgstr ""
-#: order/models.py:1934
+#: order/models.py:1947
msgid "Outcome for this line item"
msgstr ""
-#: order/models.py:1940
+#: order/models.py:1953
msgid "Cost associated with return or repair for this line item"
msgstr ""
-#: order/serializers.py:247
+#: order/serializers.py:253
msgid "Order cannot be cancelled"
msgstr ""
-#: order/serializers.py:262 order/serializers.py:1128
+#: order/serializers.py:268 order/serializers.py:1134
msgid "Allow order to be closed with incomplete line items"
msgstr ""
-#: order/serializers.py:273 order/serializers.py:1139
+#: order/serializers.py:279 order/serializers.py:1145
msgid "Order has incomplete line items"
msgstr ""
-#: order/serializers.py:386
+#: order/serializers.py:392
msgid "Order is not open"
msgstr ""
-#: order/serializers.py:404
+#: order/serializers.py:410
msgid "Purchase price currency"
msgstr ""
-#: order/serializers.py:422
+#: order/serializers.py:428
msgid "Supplier part must be specified"
msgstr ""
-#: order/serializers.py:427
+#: order/serializers.py:433
msgid "Purchase order must be specified"
msgstr ""
-#: order/serializers.py:433
+#: order/serializers.py:439
msgid "Supplier must match purchase order"
msgstr ""
-#: order/serializers.py:434
+#: order/serializers.py:440
msgid "Purchase order must match supplier"
msgstr ""
-#: order/serializers.py:472 order/serializers.py:1216
+#: order/serializers.py:478 order/serializers.py:1222
msgid "Line Item"
msgstr ""
-#: order/serializers.py:478
+#: order/serializers.py:484
msgid "Line item does not match purchase order"
msgstr ""
-#: order/serializers.py:488 order/serializers.py:607 order/serializers.py:1589
+#: order/serializers.py:494 order/serializers.py:613 order/serializers.py:1595
msgid "Select destination location for received items"
msgstr ""
-#: order/serializers.py:507 templates/js/translated/purchase_order.js:1100
+#: order/serializers.py:513 templates/js/translated/purchase_order.js:1115
msgid "Enter batch code for incoming stock items"
msgstr ""
-#: order/serializers.py:515 templates/js/translated/purchase_order.js:1124
+#: order/serializers.py:521 templates/js/translated/purchase_order.js:1139
msgid "Enter serial numbers for incoming stock items"
msgstr ""
-#: order/serializers.py:528 templates/js/translated/barcode.js:52
+#: order/serializers.py:534 templates/js/translated/barcode.js:52
msgid "Barcode"
msgstr ""
-#: order/serializers.py:529
+#: order/serializers.py:535
msgid "Scanned barcode"
msgstr ""
-#: order/serializers.py:545
+#: order/serializers.py:551
msgid "Barcode is already in use"
msgstr ""
-#: order/serializers.py:569
+#: order/serializers.py:575
msgid "An integer quantity must be provided for trackable parts"
msgstr ""
-#: order/serializers.py:623 order/serializers.py:1604
+#: order/serializers.py:629 order/serializers.py:1610
msgid "Line items must be provided"
msgstr ""
-#: order/serializers.py:640
+#: order/serializers.py:646
msgid "Destination location must be specified"
msgstr ""
-#: order/serializers.py:651
+#: order/serializers.py:657
msgid "Supplied barcode values must be unique"
msgstr ""
-#: order/serializers.py:950
+#: order/serializers.py:956
msgid "Sale price currency"
msgstr ""
-#: order/serializers.py:1007
+#: order/serializers.py:1013
msgid "No shipment details provided"
msgstr ""
-#: order/serializers.py:1071 order/serializers.py:1225
+#: order/serializers.py:1077 order/serializers.py:1231
msgid "Line item is not associated with this order"
msgstr ""
-#: order/serializers.py:1093
+#: order/serializers.py:1099
msgid "Quantity must be positive"
msgstr ""
-#: order/serializers.py:1238
+#: order/serializers.py:1244
msgid "Enter serial numbers to allocate"
msgstr ""
-#: order/serializers.py:1260 order/serializers.py:1384
+#: order/serializers.py:1266 order/serializers.py:1390
msgid "Shipment has already been shipped"
msgstr ""
-#: order/serializers.py:1263 order/serializers.py:1387
+#: order/serializers.py:1269 order/serializers.py:1393
msgid "Shipment is not associated with this order"
msgstr ""
-#: order/serializers.py:1317
+#: order/serializers.py:1323
msgid "No match found for the following serial numbers"
msgstr ""
-#: order/serializers.py:1327
+#: order/serializers.py:1333
msgid "The following serial numbers are already allocated"
msgstr ""
-#: order/serializers.py:1555
+#: order/serializers.py:1561
msgid "Return order line item"
msgstr ""
-#: order/serializers.py:1562
+#: order/serializers.py:1568
msgid "Line item does not match return order"
msgstr ""
-#: order/serializers.py:1565
+#: order/serializers.py:1571
msgid "Line item has already been received"
msgstr ""
-#: order/serializers.py:1597
+#: order/serializers.py:1603
msgid "Items can only be received against orders which are in progress"
msgstr ""
-#: order/serializers.py:1678
+#: order/serializers.py:1684
msgid "Line price currency"
msgstr ""
@@ -4957,82 +5013,74 @@ msgid "Issue Order"
msgstr ""
#: order/templates/order/order_base.html:83
-msgid "Receive items"
-msgstr ""
-
-#: order/templates/order/order_base.html:85
-msgid "Receive Items"
-msgstr ""
-
-#: order/templates/order/order_base.html:87
#: order/templates/order/return_order_base.html:87
msgid "Mark order as complete"
msgstr ""
-#: order/templates/order/order_base.html:88
+#: order/templates/order/order_base.html:84
#: order/templates/order/return_order_base.html:88
#: order/templates/order/sales_order_base.html:94
msgid "Complete Order"
msgstr ""
-#: order/templates/order/order_base.html:95
+#: order/templates/order/order_base.html:91
msgid "Supplier part thumbnail"
msgstr ""
-#: order/templates/order/order_base.html:110
+#: order/templates/order/order_base.html:106
#: order/templates/order/return_order_base.html:102
#: order/templates/order/sales_order_base.html:107
msgid "Order Reference"
msgstr ""
-#: order/templates/order/order_base.html:115
+#: order/templates/order/order_base.html:111
#: order/templates/order/return_order_base.html:107
#: order/templates/order/sales_order_base.html:112
msgid "Order Description"
msgstr ""
-#: order/templates/order/order_base.html:122
+#: order/templates/order/order_base.html:118
#: order/templates/order/return_order_base.html:114
#: order/templates/order/sales_order_base.html:119
msgid "Order Status"
msgstr ""
-#: order/templates/order/order_base.html:145
+#: order/templates/order/order_base.html:141
msgid "No suppplier information available"
msgstr ""
-#: order/templates/order/order_base.html:158
+#: order/templates/order/order_base.html:154
#: order/templates/order/sales_order_base.html:158
msgid "Completed Line Items"
msgstr ""
-#: order/templates/order/order_base.html:164
+#: order/templates/order/order_base.html:160
#: order/templates/order/sales_order_base.html:164
#: order/templates/order/sales_order_base.html:174
msgid "Incomplete"
msgstr ""
-#: order/templates/order/order_base.html:183
+#: order/templates/order/order_base.html:179
#: order/templates/order/return_order_base.html:158
#: report/templates/report/inventree_build_order_base.html:121
msgid "Issued"
msgstr ""
-#: order/templates/order/order_base.html:221
+#: order/templates/order/order_base.html:224
msgid "Total cost"
msgstr ""
-#: order/templates/order/order_base.html:225
-#: order/templates/order/return_order_base.html:193
-#: order/templates/order/sales_order_base.html:233
+#: order/templates/order/order_base.html:228
+#: order/templates/order/return_order_base.html:200
+#: order/templates/order/sales_order_base.html:240
msgid "Total cost could not be calculated"
msgstr ""
-#: order/templates/order/order_base.html:331
+#: order/templates/order/order_base.html:318
msgid "Purchase Order QR Code"
msgstr ""
-#: order/templates/order/order_base.html:343
+#: order/templates/order/order_base.html:330
msgid "Link Barcode to Purchase Order"
msgstr ""
@@ -5085,13 +5133,13 @@ msgstr ""
#: part/templates/part/import_wizard/ajax_match_references.html:42
#: part/templates/part/import_wizard/match_fields.html:71
#: part/templates/part/import_wizard/match_references.html:49
-#: templates/js/translated/bom.js:132 templates/js/translated/build.js:512
-#: templates/js/translated/build.js:2348
-#: templates/js/translated/purchase_order.js:692
-#: templates/js/translated/purchase_order.js:1206
-#: templates/js/translated/return_order.js:494
-#: templates/js/translated/sales_order.js:1097
-#: templates/js/translated/stock.js:681 templates/js/translated/stock.js:850
+#: templates/js/translated/bom.js:133 templates/js/translated/build.js:518
+#: templates/js/translated/build.js:1555
+#: templates/js/translated/purchase_order.js:703
+#: templates/js/translated/purchase_order.js:1221
+#: templates/js/translated/return_order.js:506
+#: templates/js/translated/sales_order.js:1109
+#: templates/js/translated/stock.js:680 templates/js/translated/stock.js:849
#: templates/patterns/wizard/match_fields.html:70
msgid "Remove row"
msgstr ""
@@ -5152,9 +5200,9 @@ msgstr ""
#: order/templates/order/purchase_order_detail.html:27
#: order/templates/order/return_order_detail.html:24
#: order/templates/order/sales_order_detail.html:24
-#: templates/js/translated/purchase_order.js:419
-#: templates/js/translated/return_order.js:447
-#: templates/js/translated/sales_order.js:222
+#: templates/js/translated/purchase_order.js:430
+#: templates/js/translated/return_order.js:459
+#: templates/js/translated/sales_order.js:234
msgid "Add Line Item"
msgstr ""
@@ -5165,30 +5213,25 @@ msgstr ""
msgid "Receive Line Items"
msgstr ""
-#: order/templates/order/purchase_order_detail.html:49
#: order/templates/order/purchase_order_detail.html:50
-msgid "Delete Line Items"
-msgstr ""
-
-#: order/templates/order/purchase_order_detail.html:66
-#: order/templates/order/return_order_detail.html:47
-#: order/templates/order/sales_order_detail.html:43
+#: order/templates/order/return_order_detail.html:45
+#: order/templates/order/sales_order_detail.html:41
msgid "Extra Lines"
msgstr ""
-#: order/templates/order/purchase_order_detail.html:72
-#: order/templates/order/return_order_detail.html:53
-#: order/templates/order/sales_order_detail.html:49
+#: order/templates/order/purchase_order_detail.html:56
+#: order/templates/order/return_order_detail.html:51
+#: order/templates/order/sales_order_detail.html:47
msgid "Add Extra Line"
msgstr ""
-#: order/templates/order/purchase_order_detail.html:92
+#: order/templates/order/purchase_order_detail.html:74
msgid "Received Items"
msgstr ""
-#: order/templates/order/purchase_order_detail.html:117
-#: order/templates/order/return_order_detail.html:89
-#: order/templates/order/sales_order_detail.html:149
+#: order/templates/order/purchase_order_detail.html:99
+#: order/templates/order/return_order_detail.html:85
+#: order/templates/order/sales_order_detail.html:139
msgid "Order Notes"
msgstr ""
@@ -5208,29 +5251,29 @@ msgstr ""
#: order/templates/order/return_order_base.html:139
#: order/templates/order/sales_order_base.html:152
-#: templates/js/translated/return_order.js:297
-#: templates/js/translated/sales_order.js:785
+#: templates/js/translated/return_order.js:309
+#: templates/js/translated/sales_order.js:797
msgid "Customer Reference"
msgstr ""
-#: order/templates/order/return_order_base.html:189
-#: order/templates/order/sales_order_base.html:229
+#: order/templates/order/return_order_base.html:196
+#: order/templates/order/sales_order_base.html:236
#: part/templates/part/part_pricing.html:32
#: part/templates/part/part_pricing.html:58
#: part/templates/part/part_pricing.html:99
#: part/templates/part/part_pricing.html:114
-#: templates/js/translated/part.js:1046
-#: templates/js/translated/purchase_order.js:1712
-#: templates/js/translated/return_order.js:369
-#: templates/js/translated/sales_order.js:843
+#: templates/js/translated/part.js:1045
+#: templates/js/translated/purchase_order.js:1727
+#: templates/js/translated/return_order.js:381
+#: templates/js/translated/sales_order.js:855
msgid "Total Cost"
msgstr ""
-#: order/templates/order/return_order_base.html:257
+#: order/templates/order/return_order_base.html:264
msgid "Return Order QR Code"
msgstr ""
-#: order/templates/order/return_order_base.html:269
+#: order/templates/order/return_order_base.html:276
msgid "Link Barcode to Return Order"
msgstr ""
@@ -5248,7 +5291,7 @@ msgid "Ship Items"
msgstr ""
#: order/templates/order/sales_order_base.html:93
-#: templates/js/translated/sales_order.js:469
+#: templates/js/translated/sales_order.js:481
msgid "Complete Sales Order"
msgstr ""
@@ -5257,16 +5300,16 @@ msgid "This Sales Order has not been fully allocated"
msgstr ""
#: order/templates/order/sales_order_base.html:170
-#: order/templates/order/sales_order_detail.html:105
+#: order/templates/order/sales_order_detail.html:99
#: order/templates/order/so_sidebar.html:11
msgid "Completed Shipments"
msgstr ""
-#: order/templates/order/sales_order_base.html:306
+#: order/templates/order/sales_order_base.html:313
msgid "Sales Order QR Code"
msgstr ""
-#: order/templates/order/sales_order_base.html:318
+#: order/templates/order/sales_order_base.html:325
msgid "Link Barcode to Sales Order"
msgstr ""
@@ -5274,18 +5317,17 @@ msgstr ""
msgid "Sales Order Items"
msgstr ""
-#: order/templates/order/sales_order_detail.html:71
-#: order/templates/order/so_sidebar.html:8 templates/InvenTree/index.html:332
+#: order/templates/order/sales_order_detail.html:67
+#: order/templates/order/so_sidebar.html:8 templates/InvenTree/index.html:284
msgid "Pending Shipments"
msgstr ""
-#: order/templates/order/sales_order_detail.html:75
-#: templates/attachment_table.html:6 templates/js/translated/bom.js:1236
-#: templates/js/translated/build.js:2249
+#: order/templates/order/sales_order_detail.html:71
+#: templates/js/translated/bom.js:1256 templates/js/translated/filters.js:297
msgid "Actions"
msgstr ""
-#: order/templates/order/sales_order_detail.html:84
+#: order/templates/order/sales_order_detail.html:80
msgid "New Shipment"
msgstr ""
@@ -5311,12 +5353,12 @@ msgstr ""
msgid "Updated {part} unit-price to {price} and quantity to {qty}"
msgstr ""
-#: part/admin.py:33 part/admin.py:273 part/models.py:3667 part/tasks.py:288
+#: part/admin.py:33 part/admin.py:273 part/models.py:3716 part/tasks.py:288
#: stock/admin.py:101
msgid "Part ID"
msgstr ""
-#: part/admin.py:34 part/admin.py:275 part/models.py:3671 part/tasks.py:289
+#: part/admin.py:34 part/admin.py:275 part/models.py:3720 part/tasks.py:289
#: stock/admin.py:102
msgid "Part Name"
msgstr ""
@@ -5325,19 +5367,19 @@ msgstr ""
msgid "Part Description"
msgstr ""
-#: part/admin.py:36 part/models.py:889 part/templates/part/part_base.html:271
-#: templates/js/translated/part.js:1200 templates/js/translated/part.js:2233
-#: templates/js/translated/stock.js:1795
+#: part/admin.py:36 part/models.py:890 part/templates/part/part_base.html:271
+#: templates/js/translated/part.js:1199 templates/js/translated/part.js:2309
+#: templates/js/translated/stock.js:1952
msgid "IPN"
msgstr ""
-#: part/admin.py:37 part/models.py:896 part/templates/part/part_base.html:279
-#: report/models.py:179 templates/js/translated/part.js:1205
-#: templates/js/translated/part.js:2239
+#: part/admin.py:37 part/models.py:897 part/templates/part/part_base.html:279
+#: report/models.py:179 templates/js/translated/part.js:1204
+#: templates/js/translated/part.js:2315
msgid "Revision"
msgstr ""
-#: part/admin.py:38 part/admin.py:198 part/models.py:875
+#: part/admin.py:38 part/admin.py:198 part/models.py:876
#: part/templates/part/category.html:93 part/templates/part/part_base.html:300
msgid "Keywords"
msgstr ""
@@ -5358,24 +5400,24 @@ msgstr ""
msgid "Default Supplier ID"
msgstr ""
-#: part/admin.py:46 part/models.py:864 part/templates/part/part_base.html:179
+#: part/admin.py:46 part/models.py:865 part/templates/part/part_base.html:179
msgid "Variant Of"
msgstr ""
-#: part/admin.py:47 part/models.py:980 part/templates/part/part_base.html:205
+#: part/admin.py:47 part/models.py:981 part/templates/part/part_base.html:205
msgid "Minimum Stock"
msgstr ""
#: part/admin.py:61 part/templates/part/part_base.html:199
-#: templates/js/translated/company.js:1299
-#: templates/js/translated/table_filters.js:301
+#: templates/js/translated/company.js:1720
+#: templates/js/translated/table_filters.js:307
msgid "In Stock"
msgstr ""
#: part/admin.py:62 part/bom.py:178 part/templates/part/part_base.html:212
-#: templates/js/translated/bom.js:1167 templates/js/translated/build.js:2191
-#: templates/js/translated/part.js:687 templates/js/translated/part.js:2123
-#: templates/js/translated/table_filters.js:140
+#: templates/js/translated/bom.js:1187 templates/js/translated/build.js:2541
+#: templates/js/translated/part.js:686 templates/js/translated/part.js:2122
+#: templates/js/translated/table_filters.js:146
msgid "On Order"
msgstr ""
@@ -5383,23 +5425,16 @@ msgstr ""
msgid "Used In"
msgstr ""
-#: part/admin.py:64 templates/js/translated/build.js:2203
-#: templates/js/translated/build.js:2465 templates/js/translated/build.js:3052
-#: templates/js/translated/sales_order.js:1906
-#: templates/js/translated/table_filters.js:488
-msgid "Allocated"
-msgstr ""
-
#: part/admin.py:65 part/templates/part/part_base.html:243 stock/admin.py:124
-#: templates/js/translated/part.js:692 templates/js/translated/part.js:2127
+#: templates/js/translated/part.js:691 templates/js/translated/part.js:2126
msgid "Building"
msgstr ""
-#: part/admin.py:66 part/models.py:2930 templates/js/translated/part.js:943
+#: part/admin.py:66 part/models.py:2964 templates/js/translated/part.js:942
msgid "Minimum Cost"
msgstr ""
-#: part/admin.py:67 part/models.py:2936 templates/js/translated/part.js:953
+#: part/admin.py:67 part/models.py:2970 templates/js/translated/part.js:952
msgid "Maximum Cost"
msgstr ""
@@ -5416,13 +5451,13 @@ msgstr ""
msgid "Category Path"
msgstr ""
-#: part/admin.py:202 part/models.py:392 part/templates/part/cat_link.html:3
-#: part/templates/part/category.html:23 part/templates/part/category.html:140
-#: part/templates/part/category.html:160
+#: part/admin.py:202 part/models.py:393 part/serializers.py:307
+#: part/templates/part/cat_link.html:3 part/templates/part/category.html:23
+#: part/templates/part/category.html:140 part/templates/part/category.html:160
#: part/templates/part/category_sidebar.html:9
-#: templates/InvenTree/index.html:86 templates/InvenTree/search.html:84
+#: templates/InvenTree/index.html:36 templates/InvenTree/search.html:84
#: templates/InvenTree/settings/sidebar.html:45
-#: templates/js/translated/part.js:2754 templates/js/translated/search.js:172
+#: templates/js/translated/part.js:2739 templates/js/translated/search.js:130
#: templates/navbar.html:24 users/models.py:38
msgid "Parts"
msgstr ""
@@ -5439,7 +5474,7 @@ msgstr ""
msgid "Parent IPN"
msgstr ""
-#: part/admin.py:274 part/models.py:3675
+#: part/admin.py:274 part/models.py:3724
msgid "Part IPN"
msgstr ""
@@ -5453,35 +5488,35 @@ msgstr ""
msgid "Maximum Price"
msgstr ""
-#: part/api.py:498
+#: part/api.py:501
msgid "Incoming Purchase Order"
msgstr ""
-#: part/api.py:518
+#: part/api.py:521
msgid "Outgoing Sales Order"
msgstr ""
-#: part/api.py:536
+#: part/api.py:539
msgid "Stock produced by Build Order"
msgstr ""
-#: part/api.py:622
+#: part/api.py:625
msgid "Stock required for Build Order"
msgstr ""
-#: part/api.py:770
+#: part/api.py:773
msgid "Valid"
msgstr ""
-#: part/api.py:771
+#: part/api.py:774
msgid "Validate entire Bill of Materials"
msgstr ""
-#: part/api.py:777
+#: part/api.py:780
msgid "This option must be selected"
msgstr ""
-#: part/bom.py:175 part/models.py:127 part/models.py:923
+#: part/bom.py:175 part/models.py:128 part/models.py:924
#: part/templates/part/category.html:115 part/templates/part/part_base.html:369
msgid "Default Location"
msgstr ""
@@ -5491,7 +5526,7 @@ msgid "Total Stock"
msgstr ""
#: part/bom.py:177 part/templates/part/part_base.html:194
-#: templates/js/translated/sales_order.js:1873
+#: templates/js/translated/sales_order.js:1885
msgid "Available Stock"
msgstr ""
@@ -5499,916 +5534,913 @@ msgstr ""
msgid "Input quantity for price calculation"
msgstr ""
-#: part/models.py:75 part/models.py:3616 part/templates/part/category.html:16
+#: part/models.py:76 part/models.py:3665 part/templates/part/category.html:16
#: part/templates/part/part_app_base.html:10
msgid "Part Category"
msgstr ""
-#: part/models.py:76 part/templates/part/category.html:135
-#: templates/InvenTree/search.html:97 templates/js/translated/search.js:200
+#: part/models.py:77 part/templates/part/category.html:135
+#: templates/InvenTree/search.html:97 templates/js/translated/search.js:158
#: users/models.py:37
msgid "Part Categories"
msgstr ""
-#: part/models.py:128
+#: part/models.py:129
msgid "Default location for parts in this category"
msgstr ""
-#: part/models.py:133 stock/models.py:124 templates/js/translated/stock.js:2520
-#: templates/js/translated/table_filters.js:209
-#: templates/js/translated/table_filters.js:229
+#: part/models.py:134 stock/models.py:124 templates/js/translated/stock.js:2651
+#: templates/js/translated/table_filters.js:215
+#: templates/js/translated/table_filters.js:235
msgid "Structural"
msgstr ""
-#: part/models.py:135
+#: part/models.py:136
msgid "Parts may not be directly assigned to a structural category, but may be assigned to child categories."
msgstr ""
-#: part/models.py:139
+#: part/models.py:140
msgid "Default keywords"
msgstr ""
-#: part/models.py:139
+#: part/models.py:140
msgid "Default keywords for parts in this category"
msgstr ""
-#: part/models.py:144 stock/models.py:113
+#: part/models.py:145 stock/models.py:113
msgid "Icon"
msgstr ""
-#: part/models.py:145 stock/models.py:114
+#: part/models.py:146 stock/models.py:114
msgid "Icon (optional)"
msgstr ""
-#: part/models.py:164
+#: part/models.py:165
msgid "You cannot make this part category structural because some parts are already assigned to it!"
msgstr ""
-#: part/models.py:475
+#: part/models.py:476
msgid "Invalid choice for parent part"
msgstr ""
-#: part/models.py:517 part/models.py:529
+#: part/models.py:518 part/models.py:530
#, python-brace-format
msgid "Part '{p1}' is used in BOM for '{p2}' (recursive)"
msgstr ""
-#: part/models.py:601
+#: part/models.py:602
#, python-brace-format
msgid "IPN must match regex pattern {pat}"
msgstr "Notranja številka dela se mora ujemati z vzorcem {pat}"
-#: part/models.py:672
+#: part/models.py:673
msgid "Stock item with this serial number already exists"
msgstr ""
-#: part/models.py:803
+#: part/models.py:804
msgid "Duplicate IPN not allowed in part settings"
msgstr ""
-#: part/models.py:808
+#: part/models.py:809
msgid "Part with this Name, IPN and Revision already exists."
msgstr ""
-#: part/models.py:822
+#: part/models.py:823
msgid "Parts cannot be assigned to structural part categories!"
msgstr ""
-#: part/models.py:846 part/models.py:3672
+#: part/models.py:847 part/models.py:3721
msgid "Part name"
msgstr ""
-#: part/models.py:852
+#: part/models.py:853
msgid "Is Template"
msgstr ""
-#: part/models.py:853
+#: part/models.py:854
msgid "Is this part a template part?"
msgstr ""
-#: part/models.py:863
+#: part/models.py:864
msgid "Is this part a variant of another part?"
msgstr ""
-#: part/models.py:870
+#: part/models.py:871
msgid "Part description (optional)"
msgstr ""
-#: part/models.py:876
+#: part/models.py:877
msgid "Part keywords to improve visibility in search results"
msgstr ""
-#: part/models.py:883 part/models.py:3198 part/models.py:3615
-#: part/serializers.py:848 part/templates/part/part_base.html:262
+#: part/models.py:884 part/models.py:3232 part/models.py:3664
+#: part/serializers.py:320 part/serializers.py:910
+#: part/templates/part/part_base.html:262
#: templates/InvenTree/settings/settings_staff_js.html:204
#: templates/js/translated/notification.js:59
-#: templates/js/translated/part.js:2269 templates/js/translated/part.js:2481
+#: templates/js/translated/part.js:2345
msgid "Category"
msgstr ""
-#: part/models.py:884
+#: part/models.py:885
msgid "Part category"
msgstr ""
-#: part/models.py:890
+#: part/models.py:891
msgid "Internal Part Number"
msgstr ""
-#: part/models.py:895
+#: part/models.py:896
msgid "Part revision or version number"
msgstr ""
-#: part/models.py:921
+#: part/models.py:922
msgid "Where is this item normally stored?"
msgstr ""
-#: part/models.py:966 part/templates/part/part_base.html:378
+#: part/models.py:967 part/templates/part/part_base.html:378
msgid "Default Supplier"
msgstr ""
-#: part/models.py:967
+#: part/models.py:968
msgid "Default supplier part"
msgstr ""
-#: part/models.py:974
+#: part/models.py:975
msgid "Default Expiry"
msgstr ""
-#: part/models.py:975
+#: part/models.py:976
msgid "Expiry time (in days) for stock items of this part"
msgstr ""
-#: part/models.py:981
+#: part/models.py:982
msgid "Minimum allowed stock level"
msgstr ""
-#: part/models.py:988
+#: part/models.py:989
msgid "Units of measure for this part"
msgstr ""
-#: part/models.py:997
+#: part/models.py:998
msgid "Can this part be built from other parts?"
msgstr ""
-#: part/models.py:1003
+#: part/models.py:1004
msgid "Can this part be used to build other parts?"
msgstr ""
-#: part/models.py:1009
+#: part/models.py:1010
msgid "Does this part have tracking for unique items?"
msgstr ""
-#: part/models.py:1014
+#: part/models.py:1015
msgid "Can this part be purchased from external suppliers?"
msgstr ""
-#: part/models.py:1019
+#: part/models.py:1020
msgid "Can this part be sold to customers?"
msgstr ""
-#: part/models.py:1024
+#: part/models.py:1025
msgid "Is this part active?"
msgstr ""
-#: part/models.py:1029
+#: part/models.py:1030
msgid "Is this a virtual part, such as a software product or license?"
msgstr ""
-#: part/models.py:1031
+#: part/models.py:1032
msgid "BOM checksum"
msgstr ""
-#: part/models.py:1031
+#: part/models.py:1032
msgid "Stored BOM checksum"
msgstr ""
-#: part/models.py:1034
+#: part/models.py:1035
msgid "BOM checked by"
msgstr ""
-#: part/models.py:1036
+#: part/models.py:1037
msgid "BOM checked date"
msgstr ""
-#: part/models.py:1040
+#: part/models.py:1041
msgid "Creation User"
msgstr ""
-#: part/models.py:1042
+#: part/models.py:1043
msgid "User responsible for this part"
msgstr ""
-#: part/models.py:1046 part/templates/part/part_base.html:341
+#: part/models.py:1047 part/templates/part/part_base.html:341
#: stock/templates/stock/item_base.html:447
-#: templates/js/translated/part.js:2331
+#: templates/js/translated/part.js:2407
msgid "Last Stocktake"
msgstr ""
-#: part/models.py:1921
+#: part/models.py:1923
msgid "Sell multiple"
msgstr ""
-#: part/models.py:2853
+#: part/models.py:2887
msgid "Currency used to cache pricing calculations"
msgstr ""
-#: part/models.py:2870
+#: part/models.py:2904
msgid "Minimum BOM Cost"
msgstr ""
-#: part/models.py:2871
+#: part/models.py:2905
msgid "Minimum cost of component parts"
msgstr ""
-#: part/models.py:2876
+#: part/models.py:2910
msgid "Maximum BOM Cost"
msgstr ""
-#: part/models.py:2877
+#: part/models.py:2911
msgid "Maximum cost of component parts"
msgstr ""
-#: part/models.py:2882
+#: part/models.py:2916
msgid "Minimum Purchase Cost"
msgstr ""
-#: part/models.py:2883
+#: part/models.py:2917
msgid "Minimum historical purchase cost"
msgstr ""
-#: part/models.py:2888
+#: part/models.py:2922
msgid "Maximum Purchase Cost"
msgstr ""
-#: part/models.py:2889
+#: part/models.py:2923
msgid "Maximum historical purchase cost"
msgstr ""
-#: part/models.py:2894
+#: part/models.py:2928
msgid "Minimum Internal Price"
msgstr ""
-#: part/models.py:2895
+#: part/models.py:2929
msgid "Minimum cost based on internal price breaks"
msgstr ""
-#: part/models.py:2900
+#: part/models.py:2934
msgid "Maximum Internal Price"
msgstr ""
-#: part/models.py:2901
+#: part/models.py:2935
msgid "Maximum cost based on internal price breaks"
msgstr ""
-#: part/models.py:2906
+#: part/models.py:2940
msgid "Minimum Supplier Price"
msgstr ""
-#: part/models.py:2907
+#: part/models.py:2941
msgid "Minimum price of part from external suppliers"
msgstr ""
-#: part/models.py:2912
+#: part/models.py:2946
msgid "Maximum Supplier Price"
msgstr ""
-#: part/models.py:2913
+#: part/models.py:2947
msgid "Maximum price of part from external suppliers"
msgstr ""
-#: part/models.py:2918
+#: part/models.py:2952
msgid "Minimum Variant Cost"
msgstr ""
-#: part/models.py:2919
+#: part/models.py:2953
msgid "Calculated minimum cost of variant parts"
msgstr ""
-#: part/models.py:2924
+#: part/models.py:2958
msgid "Maximum Variant Cost"
msgstr ""
-#: part/models.py:2925
+#: part/models.py:2959
msgid "Calculated maximum cost of variant parts"
msgstr ""
-#: part/models.py:2931
+#: part/models.py:2965
msgid "Calculated overall minimum cost"
msgstr ""
-#: part/models.py:2937
+#: part/models.py:2971
msgid "Calculated overall maximum cost"
msgstr ""
-#: part/models.py:2942
+#: part/models.py:2976
msgid "Minimum Sale Price"
msgstr ""
-#: part/models.py:2943
+#: part/models.py:2977
msgid "Minimum sale price based on price breaks"
msgstr ""
-#: part/models.py:2948
+#: part/models.py:2982
msgid "Maximum Sale Price"
msgstr ""
-#: part/models.py:2949
+#: part/models.py:2983
msgid "Maximum sale price based on price breaks"
msgstr ""
-#: part/models.py:2954
+#: part/models.py:2988
msgid "Minimum Sale Cost"
msgstr ""
-#: part/models.py:2955
+#: part/models.py:2989
msgid "Minimum historical sale price"
msgstr ""
-#: part/models.py:2960
+#: part/models.py:2994
msgid "Maximum Sale Cost"
msgstr ""
-#: part/models.py:2961
+#: part/models.py:2995
msgid "Maximum historical sale price"
msgstr ""
-#: part/models.py:2980
+#: part/models.py:3014
msgid "Part for stocktake"
msgstr ""
-#: part/models.py:2985
+#: part/models.py:3019
msgid "Item Count"
msgstr ""
-#: part/models.py:2986
+#: part/models.py:3020
msgid "Number of individual stock entries at time of stocktake"
msgstr ""
-#: part/models.py:2993
+#: part/models.py:3027
msgid "Total available stock at time of stocktake"
msgstr ""
-#: part/models.py:2997 part/models.py:3080
+#: part/models.py:3031 part/models.py:3114
#: part/templates/part/part_scheduling.html:13
#: report/templates/report/inventree_test_report_base.html:106
#: templates/InvenTree/settings/plugin_settings.html:37
#: templates/InvenTree/settings/settings_staff_js.html:360
-#: templates/js/translated/part.js:1059 templates/js/translated/pricing.js:812
+#: templates/js/translated/part.js:1058 templates/js/translated/pricing.js:812
#: templates/js/translated/pricing.js:936
-#: templates/js/translated/purchase_order.js:1691
-#: templates/js/translated/stock.js:2558
+#: templates/js/translated/purchase_order.js:1706
+#: templates/js/translated/stock.js:2689
msgid "Date"
msgstr ""
-#: part/models.py:2998
+#: part/models.py:3032
msgid "Date stocktake was performed"
msgstr ""
-#: part/models.py:3006
+#: part/models.py:3040
msgid "Additional notes"
msgstr ""
-#: part/models.py:3014
+#: part/models.py:3048
msgid "User who performed this stocktake"
msgstr ""
-#: part/models.py:3019
+#: part/models.py:3053
msgid "Minimum Stock Cost"
msgstr ""
-#: part/models.py:3020
+#: part/models.py:3054
msgid "Estimated minimum cost of stock on hand"
msgstr ""
-#: part/models.py:3025
+#: part/models.py:3059
msgid "Maximum Stock Cost"
msgstr ""
-#: part/models.py:3026
+#: part/models.py:3060
msgid "Estimated maximum cost of stock on hand"
msgstr ""
-#: part/models.py:3087 templates/InvenTree/settings/settings_staff_js.html:349
+#: part/models.py:3121 templates/InvenTree/settings/settings_staff_js.html:349
msgid "Report"
msgstr ""
-#: part/models.py:3088
+#: part/models.py:3122
msgid "Stocktake report file (generated internally)"
msgstr ""
-#: part/models.py:3093 templates/InvenTree/settings/settings_staff_js.html:356
+#: part/models.py:3127 templates/InvenTree/settings/settings_staff_js.html:356
msgid "Part Count"
msgstr ""
-#: part/models.py:3094
+#: part/models.py:3128
msgid "Number of parts covered by stocktake"
msgstr ""
-#: part/models.py:3102
+#: part/models.py:3136
msgid "User who requested this stocktake report"
msgstr ""
-#: part/models.py:3238
+#: part/models.py:3272
msgid "Test templates can only be created for trackable parts"
msgstr ""
-#: part/models.py:3255
+#: part/models.py:3289
msgid "Test with this name already exists for this part"
msgstr ""
-#: part/models.py:3275 templates/js/translated/part.js:2821
+#: part/models.py:3309 templates/js/translated/part.js:2806
msgid "Test Name"
msgstr ""
-#: part/models.py:3276
+#: part/models.py:3310
msgid "Enter a name for the test"
msgstr ""
-#: part/models.py:3281
+#: part/models.py:3315
msgid "Test Description"
msgstr ""
-#: part/models.py:3282
+#: part/models.py:3316
msgid "Enter description for this test"
msgstr ""
-#: part/models.py:3287 templates/js/translated/part.js:2830
-#: templates/js/translated/table_filters.js:423
+#: part/models.py:3321 templates/js/translated/part.js:2815
+#: templates/js/translated/table_filters.js:429
msgid "Required"
msgstr ""
-#: part/models.py:3288
+#: part/models.py:3322
msgid "Is this test required to pass?"
msgstr ""
-#: part/models.py:3293 templates/js/translated/part.js:2838
+#: part/models.py:3327 templates/js/translated/part.js:2823
msgid "Requires Value"
msgstr ""
-#: part/models.py:3294
+#: part/models.py:3328
msgid "Does this test require a value when adding a test result?"
msgstr ""
-#: part/models.py:3299 templates/js/translated/part.js:2845
+#: part/models.py:3333 templates/js/translated/part.js:2830
msgid "Requires Attachment"
msgstr ""
-#: part/models.py:3300
+#: part/models.py:3334
msgid "Does this test require a file attachment when adding a test result?"
msgstr ""
-#: part/models.py:3346
+#: part/models.py:3380
msgid "Checkbox parameters cannot have units"
msgstr ""
-#: part/models.py:3351
+#: part/models.py:3385
msgid "Checkbox parameters cannot have choices"
msgstr ""
-#: part/models.py:3369
+#: part/models.py:3403
msgid "Choices must be unique"
msgstr ""
-#: part/models.py:3385
+#: part/models.py:3419
msgid "Parameter template name must be unique"
msgstr ""
-#: part/models.py:3401
+#: part/models.py:3435
msgid "Parameter Name"
msgstr ""
-#: part/models.py:3407
+#: part/models.py:3441
msgid "Physical units for this parameter"
msgstr ""
-#: part/models.py:3417
+#: part/models.py:3451
msgid "Parameter description"
msgstr ""
-#: part/models.py:3423 templates/js/translated/part.js:1600
-#: templates/js/translated/table_filters.js:734
+#: part/models.py:3457 templates/js/translated/part.js:1599
+#: templates/js/translated/table_filters.js:756
msgid "Checkbox"
msgstr ""
-#: part/models.py:3424
+#: part/models.py:3458
msgid "Is this parameter a checkbox?"
msgstr ""
-#: part/models.py:3429 templates/js/translated/part.js:1609
+#: part/models.py:3463 templates/js/translated/part.js:1608
msgid "Choices"
msgstr ""
-#: part/models.py:3430
+#: part/models.py:3464
msgid "Valid choices for this parameter (comma-separated)"
msgstr ""
-#: part/models.py:3511
+#: part/models.py:3545
msgid "Invalid choice for parameter value"
msgstr ""
-#: part/models.py:3555
+#: part/models.py:3589
msgid "Parent Part"
msgstr ""
-#: part/models.py:3560 part/models.py:3621 part/models.py:3622
+#: part/models.py:3594 part/models.py:3670 part/models.py:3671
#: templates/InvenTree/settings/settings_staff_js.html:199
msgid "Parameter Template"
msgstr ""
-#: part/models.py:3565
+#: part/models.py:3599
msgid "Data"
msgstr ""
-#: part/models.py:3565
+#: part/models.py:3599
msgid "Parameter Value"
msgstr ""
-#: part/models.py:3626 templates/InvenTree/settings/settings_staff_js.html:208
+#: part/models.py:3675 templates/InvenTree/settings/settings_staff_js.html:208
msgid "Default Value"
msgstr ""
-#: part/models.py:3627
+#: part/models.py:3676
msgid "Default Parameter Value"
msgstr ""
-#: part/models.py:3664
+#: part/models.py:3713
msgid "Part ID or part name"
msgstr ""
-#: part/models.py:3668
+#: part/models.py:3717
msgid "Unique part ID value"
msgstr ""
-#: part/models.py:3676
+#: part/models.py:3725
msgid "Part IPN value"
msgstr ""
-#: part/models.py:3679
+#: part/models.py:3728
msgid "Level"
msgstr ""
-#: part/models.py:3680
+#: part/models.py:3729
msgid "BOM level"
msgstr ""
-#: part/models.py:3764
+#: part/models.py:3735 part/models.py:4113
+msgid "BOM Item"
+msgstr ""
+
+#: part/models.py:3808
msgid "Select parent part"
msgstr ""
-#: part/models.py:3772
+#: part/models.py:3816
msgid "Sub part"
msgstr ""
-#: part/models.py:3773
+#: part/models.py:3817
msgid "Select part to be used in BOM"
msgstr ""
-#: part/models.py:3779
+#: part/models.py:3823
msgid "BOM quantity for this BOM item"
msgstr ""
-#: part/models.py:3783 part/templates/part/upload_bom.html:58
-#: templates/js/translated/bom.js:971 templates/js/translated/bom.js:998
-#: templates/js/translated/build.js:2113
-#: templates/js/translated/table_filters.js:156
-#: templates/js/translated/table_filters.js:185
-#: templates/js/translated/table_filters.js:500
-msgid "Optional"
-msgstr ""
-
-#: part/models.py:3784
+#: part/models.py:3828
msgid "This BOM item is optional"
msgstr ""
-#: part/models.py:3789 templates/js/translated/bom.js:967
-#: templates/js/translated/bom.js:1007 templates/js/translated/build.js:2104
-#: templates/js/translated/table_filters.js:160
-#: templates/js/translated/table_filters.js:496
-msgid "Consumable"
-msgstr ""
-
-#: part/models.py:3790
+#: part/models.py:3834
msgid "This BOM item is consumable (it is not tracked in build orders)"
msgstr ""
-#: part/models.py:3794 part/templates/part/upload_bom.html:55
+#: part/models.py:3838 part/templates/part/upload_bom.html:55
msgid "Overage"
msgstr ""
-#: part/models.py:3795
+#: part/models.py:3839
msgid "Estimated build wastage quantity (absolute or percentage)"
msgstr ""
-#: part/models.py:3798
+#: part/models.py:3842
msgid "BOM item reference"
msgstr ""
-#: part/models.py:3801
+#: part/models.py:3845
msgid "BOM item notes"
msgstr ""
-#: part/models.py:3805
+#: part/models.py:3849
msgid "Checksum"
msgstr ""
-#: part/models.py:3805
+#: part/models.py:3849
msgid "BOM line checksum"
msgstr ""
-#: part/models.py:3810 templates/js/translated/table_filters.js:144
+#: part/models.py:3854 templates/js/translated/table_filters.js:150
msgid "Validated"
msgstr ""
-#: part/models.py:3811
+#: part/models.py:3855
msgid "This BOM item has been validated"
msgstr ""
-#: part/models.py:3816 part/templates/part/upload_bom.html:57
-#: templates/js/translated/bom.js:1024
-#: templates/js/translated/table_filters.js:148
-#: templates/js/translated/table_filters.js:181
+#: part/models.py:3860 part/templates/part/upload_bom.html:57
+#: templates/js/translated/bom.js:1042
+#: templates/js/translated/table_filters.js:154
+#: templates/js/translated/table_filters.js:187
msgid "Gets inherited"
msgstr ""
-#: part/models.py:3817
+#: part/models.py:3861
msgid "This BOM item is inherited by BOMs for variant parts"
msgstr ""
-#: part/models.py:3822 part/templates/part/upload_bom.html:56
-#: templates/js/translated/bom.js:1016
+#: part/models.py:3866 part/templates/part/upload_bom.html:56
+#: templates/js/translated/bom.js:1034
msgid "Allow Variants"
msgstr ""
-#: part/models.py:3823
+#: part/models.py:3867
msgid "Stock items for variant parts can be used for this BOM item"
msgstr ""
-#: part/models.py:3909 stock/models.py:577
+#: part/models.py:3953 stock/models.py:577
msgid "Quantity must be integer value for trackable parts"
msgstr ""
-#: part/models.py:3918 part/models.py:3920
+#: part/models.py:3962 part/models.py:3964
msgid "Sub part must be specified"
msgstr ""
-#: part/models.py:4036
+#: part/models.py:4080
msgid "BOM Item Substitute"
msgstr ""
-#: part/models.py:4057
+#: part/models.py:4101
msgid "Substitute part cannot be the same as the master part"
msgstr ""
-#: part/models.py:4070
+#: part/models.py:4114
msgid "Parent BOM item"
msgstr ""
-#: part/models.py:4078
+#: part/models.py:4122
msgid "Substitute part"
msgstr ""
-#: part/models.py:4093
+#: part/models.py:4137
msgid "Part 1"
msgstr ""
-#: part/models.py:4097
+#: part/models.py:4141
msgid "Part 2"
msgstr ""
-#: part/models.py:4097
+#: part/models.py:4141
msgid "Select Related Part"
msgstr ""
-#: part/models.py:4115
+#: part/models.py:4159
msgid "Part relationship cannot be created between a part and itself"
msgstr ""
-#: part/models.py:4119
+#: part/models.py:4163
msgid "Duplicate relationship already exists"
msgstr ""
-#: part/serializers.py:152 part/serializers.py:175 stock/serializers.py:257
+#: part/serializers.py:152 part/serializers.py:175 stock/serializers.py:319
msgid "Purchase currency of this stock item"
msgstr ""
-#: part/serializers.py:302
+#: part/serializers.py:313
+msgid "No parts selected"
+msgstr ""
+
+#: part/serializers.py:321
+msgid "Select category"
+msgstr ""
+
+#: part/serializers.py:352
msgid "Original Part"
msgstr ""
-#: part/serializers.py:302
+#: part/serializers.py:352
msgid "Select original part to duplicate"
msgstr ""
-#: part/serializers.py:307
+#: part/serializers.py:357
msgid "Copy Image"
msgstr ""
-#: part/serializers.py:307
+#: part/serializers.py:357
msgid "Copy image from original part"
msgstr ""
-#: part/serializers.py:312 part/templates/part/detail.html:296
+#: part/serializers.py:362 part/templates/part/detail.html:277
msgid "Copy BOM"
msgstr ""
-#: part/serializers.py:312
+#: part/serializers.py:362
msgid "Copy bill of materials from original part"
msgstr ""
-#: part/serializers.py:317
+#: part/serializers.py:367
msgid "Copy Parameters"
msgstr ""
-#: part/serializers.py:317
+#: part/serializers.py:367
msgid "Copy parameter data from original part"
msgstr ""
-#: part/serializers.py:327
+#: part/serializers.py:377
msgid "Initial Stock Quantity"
msgstr ""
-#: part/serializers.py:327
+#: part/serializers.py:377
msgid "Specify initial stock quantity for this Part. If quantity is zero, no stock is added."
msgstr ""
-#: part/serializers.py:333
+#: part/serializers.py:383
msgid "Initial Stock Location"
msgstr ""
-#: part/serializers.py:333
+#: part/serializers.py:383
msgid "Specify initial stock location for this Part"
msgstr ""
-#: part/serializers.py:343
+#: part/serializers.py:393
msgid "Select supplier (or leave blank to skip)"
msgstr ""
-#: part/serializers.py:354
+#: part/serializers.py:404
msgid "Select manufacturer (or leave blank to skip)"
msgstr ""
-#: part/serializers.py:360
+#: part/serializers.py:410
msgid "Manufacturer part number"
msgstr ""
-#: part/serializers.py:367
+#: part/serializers.py:417
msgid "Selected company is not a valid supplier"
msgstr ""
-#: part/serializers.py:375
+#: part/serializers.py:425
msgid "Selected company is not a valid manufacturer"
msgstr ""
-#: part/serializers.py:387
+#: part/serializers.py:437
msgid "Manufacturer part matching this MPN already exists"
msgstr ""
-#: part/serializers.py:395
+#: part/serializers.py:445
msgid "Supplier part matching this SKU already exists"
msgstr ""
-#: part/serializers.py:620 part/templates/part/copy_part.html:9
-#: templates/js/translated/part.js:449
+#: part/serializers.py:682 part/templates/part/copy_part.html:9
+#: templates/js/translated/part.js:448
msgid "Duplicate Part"
msgstr ""
-#: part/serializers.py:620
+#: part/serializers.py:682
msgid "Copy initial data from another Part"
msgstr ""
-#: part/serializers.py:625 templates/js/translated/part.js:103
+#: part/serializers.py:687 templates/js/translated/part.js:102
msgid "Initial Stock"
msgstr ""
-#: part/serializers.py:625
+#: part/serializers.py:687
msgid "Create Part with initial stock quantity"
msgstr ""
-#: part/serializers.py:630
+#: part/serializers.py:692
msgid "Supplier Information"
msgstr ""
-#: part/serializers.py:630
+#: part/serializers.py:692
msgid "Add initial supplier information for this part"
msgstr ""
-#: part/serializers.py:636
+#: part/serializers.py:698
msgid "Copy Category Parameters"
msgstr ""
-#: part/serializers.py:637
+#: part/serializers.py:699
msgid "Copy parameter templates from selected part category"
msgstr ""
-#: part/serializers.py:842
+#: part/serializers.py:904
msgid "Limit stocktake report to a particular part, and any variant parts"
msgstr ""
-#: part/serializers.py:848
+#: part/serializers.py:910
msgid "Limit stocktake report to a particular part category, and any child categories"
msgstr ""
-#: part/serializers.py:854
+#: part/serializers.py:916
msgid "Limit stocktake report to a particular stock location, and any child locations"
msgstr ""
-#: part/serializers.py:859
+#: part/serializers.py:921
msgid "Generate Report"
msgstr ""
-#: part/serializers.py:860
+#: part/serializers.py:922
msgid "Generate report file containing calculated stocktake data"
msgstr ""
-#: part/serializers.py:865
+#: part/serializers.py:927
msgid "Update Parts"
msgstr ""
-#: part/serializers.py:866
+#: part/serializers.py:928
msgid "Update specified parts with calculated stocktake data"
msgstr ""
-#: part/serializers.py:874
+#: part/serializers.py:936
msgid "Stocktake functionality is not enabled"
msgstr ""
-#: part/serializers.py:963
+#: part/serializers.py:1025
msgid "Update"
msgstr ""
-#: part/serializers.py:964
+#: part/serializers.py:1026
msgid "Update pricing for this part"
msgstr ""
-#: part/serializers.py:1246
+#: part/serializers.py:1308
msgid "Select part to copy BOM from"
msgstr ""
-#: part/serializers.py:1254
+#: part/serializers.py:1316
msgid "Remove Existing Data"
msgstr ""
-#: part/serializers.py:1255
+#: part/serializers.py:1317
msgid "Remove existing BOM items before copying"
msgstr ""
-#: part/serializers.py:1260
+#: part/serializers.py:1322
msgid "Include Inherited"
msgstr ""
-#: part/serializers.py:1261
+#: part/serializers.py:1323
msgid "Include BOM items which are inherited from templated parts"
msgstr ""
-#: part/serializers.py:1266
+#: part/serializers.py:1328
msgid "Skip Invalid Rows"
msgstr ""
-#: part/serializers.py:1267
+#: part/serializers.py:1329
msgid "Enable this option to skip invalid rows"
msgstr ""
-#: part/serializers.py:1272
+#: part/serializers.py:1334
msgid "Copy Substitute Parts"
msgstr ""
-#: part/serializers.py:1273
+#: part/serializers.py:1335
msgid "Copy substitute parts when duplicate BOM items"
msgstr ""
-#: part/serializers.py:1313
+#: part/serializers.py:1375
msgid "Clear Existing BOM"
msgstr ""
-#: part/serializers.py:1314
+#: part/serializers.py:1376
msgid "Delete existing BOM items before uploading"
msgstr ""
-#: part/serializers.py:1344
+#: part/serializers.py:1406
msgid "No part column specified"
msgstr ""
-#: part/serializers.py:1387
+#: part/serializers.py:1449
msgid "Multiple matching parts found"
msgstr ""
-#: part/serializers.py:1390
+#: part/serializers.py:1452
msgid "No matching part found"
msgstr ""
-#: part/serializers.py:1393
+#: part/serializers.py:1455
msgid "Part is not designated as a component"
msgstr ""
-#: part/serializers.py:1402
+#: part/serializers.py:1464
msgid "Quantity not provided"
msgstr ""
-#: part/serializers.py:1410
+#: part/serializers.py:1472
msgid "Invalid quantity"
msgstr ""
-#: part/serializers.py:1431
+#: part/serializers.py:1493
msgid "At least one BOM item is required"
msgstr ""
@@ -6421,9 +6453,9 @@ msgstr ""
msgid "The available stock for {part.name} has fallen below the configured minimum level"
msgstr ""
-#: part/tasks.py:294 templates/js/translated/part.js:1040
-#: templates/js/translated/part.js:1793 templates/js/translated/part.js:1848
-#: templates/js/translated/purchase_order.js:2052
+#: part/tasks.py:294 templates/js/translated/part.js:1039
+#: templates/js/translated/part.js:1792 templates/js/translated/part.js:1847
+#: templates/js/translated/purchase_order.js:2062
msgid "Total Quantity"
msgstr ""
@@ -6461,14 +6493,6 @@ msgstr ""
msgid "The BOM for %(part)s has not been validated."
msgstr ""
-#: part/templates/part/bom.html:30 part/templates/part/detail.html:291
-msgid "BOM actions"
-msgstr ""
-
-#: part/templates/part/bom.html:34
-msgid "Delete Items"
-msgstr ""
-
#: part/templates/part/category.html:34
msgid "Perform stocktake for this part category"
msgstr ""
@@ -6505,7 +6529,7 @@ msgstr ""
msgid "Top level part category"
msgstr ""
-#: part/templates/part/category.html:121 part/templates/part/category.html:225
+#: part/templates/part/category.html:121 part/templates/part/category.html:206
#: part/templates/part/category_sidebar.html:7
msgid "Subcategories"
msgstr ""
@@ -6518,33 +6542,20 @@ msgstr ""
msgid "Create new part"
msgstr ""
-#: part/templates/part/category.html:165 templates/js/translated/bom.js:443
+#: part/templates/part/category.html:165 templates/js/translated/bom.js:444
msgid "New Part"
msgstr ""
-#: part/templates/part/category.html:175 part/templates/part/detail.html:390
-#: part/templates/part/detail.html:421
-msgid "Options"
-msgstr ""
-
-#: part/templates/part/category.html:179
-msgid "Set category"
-msgstr ""
-
-#: part/templates/part/category.html:180
-msgid "Set Category"
-msgstr ""
-
-#: part/templates/part/category.html:208
+#: part/templates/part/category.html:191
#: templates/InvenTree/settings/sidebar.html:47
msgid "Part Parameters"
msgstr ""
-#: part/templates/part/category.html:229
+#: part/templates/part/category.html:210
msgid "Create new part category"
msgstr ""
-#: part/templates/part/category.html:230
+#: part/templates/part/category.html:211
msgid "New Category"
msgstr ""
@@ -6581,7 +6592,7 @@ msgid "Refresh scheduling data"
msgstr ""
#: part/templates/part/detail.html:45 part/templates/part/prices.html:15
-#: templates/js/translated/tables.js:584
+#: templates/js/translated/tables.js:560
msgid "Refresh"
msgstr ""
@@ -6592,7 +6603,7 @@ msgstr ""
#: part/templates/part/detail.html:67 part/templates/part/part_sidebar.html:50
#: stock/admin.py:130 templates/InvenTree/settings/part_stocktake.html:29
#: templates/InvenTree/settings/sidebar.html:51
-#: templates/js/translated/stock.js:1952 users/models.py:39
+#: templates/js/translated/stock.js:2109 users/models.py:39
msgid "Stocktake"
msgstr ""
@@ -6604,101 +6615,101 @@ msgstr ""
msgid "Add Test Template"
msgstr ""
-#: part/templates/part/detail.html:145 stock/templates/stock/item.html:53
+#: part/templates/part/detail.html:139 stock/templates/stock/item.html:49
msgid "Sales Order Allocations"
msgstr ""
-#: part/templates/part/detail.html:165
+#: part/templates/part/detail.html:156
msgid "Part Notes"
msgstr ""
-#: part/templates/part/detail.html:180
+#: part/templates/part/detail.html:171
msgid "Part Variants"
msgstr ""
-#: part/templates/part/detail.html:184
+#: part/templates/part/detail.html:175
msgid "Create new variant"
msgstr ""
-#: part/templates/part/detail.html:185
+#: part/templates/part/detail.html:176
msgid "New Variant"
msgstr ""
-#: part/templates/part/detail.html:212
+#: part/templates/part/detail.html:199
msgid "Add new parameter"
msgstr ""
-#: part/templates/part/detail.html:249 part/templates/part/part_sidebar.html:58
+#: part/templates/part/detail.html:232 part/templates/part/part_sidebar.html:58
msgid "Related Parts"
msgstr ""
-#: part/templates/part/detail.html:253 part/templates/part/detail.html:254
+#: part/templates/part/detail.html:236 part/templates/part/detail.html:237
msgid "Add Related"
msgstr ""
-#: part/templates/part/detail.html:274 part/templates/part/part_sidebar.html:17
+#: part/templates/part/detail.html:255 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:279
+#: part/templates/part/detail.html:260
msgid "Export actions"
msgstr ""
-#: part/templates/part/detail.html:283 templates/js/translated/bom.js:339
+#: part/templates/part/detail.html:264 templates/js/translated/bom.js:340
msgid "Export BOM"
msgstr ""
-#: part/templates/part/detail.html:285
+#: part/templates/part/detail.html:266
msgid "Print BOM Report"
msgstr ""
-#: part/templates/part/detail.html:295
+#: part/templates/part/detail.html:272
+msgid "BOM actions"
+msgstr ""
+
+#: part/templates/part/detail.html:276
msgid "Upload BOM"
msgstr ""
-#: part/templates/part/detail.html:297
+#: part/templates/part/detail.html:278
msgid "Validate BOM"
msgstr ""
-#: part/templates/part/detail.html:302 part/templates/part/detail.html:303
-#: templates/js/translated/bom.js:1279 templates/js/translated/bom.js:1280
+#: part/templates/part/detail.html:283 part/templates/part/detail.html:284
+#: templates/js/translated/bom.js:1299 templates/js/translated/bom.js:1300
msgid "Add BOM Item"
msgstr ""
-#: part/templates/part/detail.html:316
+#: part/templates/part/detail.html:297
msgid "Assemblies"
msgstr ""
-#: part/templates/part/detail.html:334
+#: part/templates/part/detail.html:313
msgid "Part Builds"
msgstr ""
-#: part/templates/part/detail.html:361 stock/templates/stock/item.html:38
+#: part/templates/part/detail.html:338 stock/templates/stock/item.html:36
msgid "Build Order Allocations"
msgstr ""
-#: part/templates/part/detail.html:377
+#: part/templates/part/detail.html:352
msgid "Part Suppliers"
msgstr ""
-#: part/templates/part/detail.html:407
+#: part/templates/part/detail.html:372
msgid "Part Manufacturers"
msgstr ""
-#: part/templates/part/detail.html:423
-msgid "Delete manufacturer parts"
-msgstr ""
-
-#: part/templates/part/detail.html:707
+#: part/templates/part/detail.html:654
msgid "Related Part"
msgstr ""
-#: part/templates/part/detail.html:715
+#: part/templates/part/detail.html:662
msgid "Add Related Part"
msgstr ""
-#: part/templates/part/detail.html:800
+#: part/templates/part/detail.html:747
msgid "Add Test Result Template"
msgstr ""
@@ -6732,13 +6743,13 @@ msgid "Download Part Import Template"
msgstr ""
#: part/templates/part/import_wizard/part_upload.html:92
-#: templates/js/translated/bom.js:308 templates/js/translated/bom.js:342
+#: templates/js/translated/bom.js:309 templates/js/translated/bom.js:343
#: templates/js/translated/order.js:129 templates/js/translated/tables.js:189
msgid "Format"
msgstr ""
#: part/templates/part/import_wizard/part_upload.html:93
-#: templates/js/translated/bom.js:309 templates/js/translated/bom.js:343
+#: templates/js/translated/bom.js:310 templates/js/translated/bom.js:344
#: templates/js/translated/order.js:130
msgid "Select file format"
msgstr ""
@@ -6779,7 +6790,7 @@ msgstr ""
msgid "Transfer part stock"
msgstr ""
-#: part/templates/part/part_base.html:93
+#: part/templates/part/part_base.html:93 templates/js/translated/part.js:2264
msgid "Part actions"
msgstr ""
@@ -6824,10 +6835,10 @@ msgid "Part is not active"
msgstr ""
#: part/templates/part/part_base.html:148
-#: templates/js/translated/company.js:945
-#: templates/js/translated/company.js:1185
-#: templates/js/translated/model_renderers.js:273
-#: templates/js/translated/part.js:792 templates/js/translated/part.js:1192
+#: templates/js/translated/company.js:1318
+#: templates/js/translated/company.js:1606
+#: templates/js/translated/model_renderers.js:287
+#: templates/js/translated/part.js:791 templates/js/translated/part.js:1191
msgid "Inactive"
msgstr ""
@@ -6850,7 +6861,7 @@ msgstr ""
msgid "Allocated to Sales Orders"
msgstr ""
-#: part/templates/part/part_base.html:237 templates/js/translated/bom.js:1178
+#: part/templates/part/part_base.html:237 templates/js/translated/bom.js:1198
msgid "Can Build"
msgstr ""
@@ -6858,8 +6869,8 @@ msgstr ""
msgid "Minimum stock level"
msgstr ""
-#: part/templates/part/part_base.html:324 templates/js/translated/bom.js:1041
-#: templates/js/translated/part.js:1238 templates/js/translated/part.js:2304
+#: part/templates/part/part_base.html:324 templates/js/translated/bom.js:1059
+#: templates/js/translated/part.js:1237 templates/js/translated/part.js:2380
#: templates/js/translated/pricing.js:391
#: templates/js/translated/pricing.js:1040
msgid "Price Range"
@@ -6882,7 +6893,7 @@ msgstr ""
msgid "Link Barcode to Part"
msgstr ""
-#: part/templates/part/part_base.html:474 templates/js/translated/part.js:2191
+#: part/templates/part/part_base.html:474 templates/js/translated/part.js:2258
msgid "part"
msgstr ""
@@ -6956,9 +6967,9 @@ msgstr ""
#: stock/templates/stock/stock_app_base.html:10
#: templates/InvenTree/search.html:153
#: templates/InvenTree/settings/sidebar.html:49
-#: templates/js/translated/part.js:1216 templates/js/translated/part.js:2120
-#: templates/js/translated/part.js:2284 templates/js/translated/stock.js:1022
-#: templates/js/translated/stock.js:1829 templates/navbar.html:31
+#: templates/js/translated/part.js:1215 templates/js/translated/part.js:2119
+#: templates/js/translated/part.js:2360 templates/js/translated/stock.js:1021
+#: templates/js/translated/stock.js:1986 templates/navbar.html:31
msgid "Stock"
msgstr ""
@@ -6989,9 +7000,9 @@ msgstr ""
#: part/templates/part/prices.html:25 stock/admin.py:129
#: stock/templates/stock/item_base.html:442
-#: templates/js/translated/company.js:1313
-#: templates/js/translated/company.js:1323
-#: templates/js/translated/stock.js:1982
+#: templates/js/translated/company.js:1734
+#: templates/js/translated/company.js:1744
+#: templates/js/translated/stock.js:2139
msgid "Last Updated"
msgstr ""
@@ -7054,12 +7065,12 @@ msgstr ""
msgid "Add Sell Price Break"
msgstr ""
-#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:682
-#: templates/js/translated/part.js:2115 templates/js/translated/part.js:2117
+#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:681
+#: templates/js/translated/part.js:2114 templates/js/translated/part.js:2116
msgid "No Stock"
msgstr ""
-#: part/templates/part/stock_count.html:9 templates/InvenTree/index.html:167
+#: part/templates/part/stock_count.html:9 templates/InvenTree/index.html:120
msgid "Low Stock"
msgstr ""
@@ -7163,7 +7174,7 @@ msgid "Match found for barcode data"
msgstr ""
#: plugin/base/barcodes/api.py:120
-#: templates/js/translated/purchase_order.js:1372
+#: templates/js/translated/purchase_order.js:1387
msgid "Barcode matches existing item"
msgstr ""
@@ -7226,43 +7237,43 @@ msgstr ""
msgid "Open link"
msgstr ""
-#: plugin/models.py:27
+#: plugin/models.py:28
msgid "Plugin Configuration"
msgstr ""
-#: plugin/models.py:28
+#: plugin/models.py:29
msgid "Plugin Configurations"
msgstr ""
-#: plugin/models.py:33
+#: plugin/models.py:34
msgid "Key"
msgstr ""
-#: plugin/models.py:34
+#: plugin/models.py:35
msgid "Key of plugin"
msgstr ""
-#: plugin/models.py:42
+#: plugin/models.py:43
msgid "PluginName of the plugin"
msgstr ""
-#: plugin/models.py:48
+#: plugin/models.py:49
msgid "Is the plugin active"
msgstr ""
-#: plugin/models.py:124
+#: plugin/models.py:125
msgid "Sample plugin"
msgstr ""
-#: plugin/models.py:133
+#: plugin/models.py:134
msgid "Builtin Plugin"
msgstr ""
-#: plugin/models.py:159 templates/InvenTree/settings/plugin_settings.html:9
+#: plugin/models.py:160 templates/InvenTree/settings/plugin_settings.html:9
msgid "Plugin"
msgstr ""
-#: plugin/models.py:210
+#: plugin/models.py:211
msgid "Method"
msgstr ""
@@ -7414,47 +7425,47 @@ msgstr ""
msgid "Build query filters (comma-separated list of key=value pairs"
msgstr ""
-#: report/models.py:418
+#: report/models.py:420
msgid "Part Filters"
msgstr ""
-#: report/models.py:419
+#: report/models.py:421
msgid "Part query filters (comma-separated list of key=value pairs"
msgstr ""
-#: report/models.py:453
+#: report/models.py:455
msgid "Purchase order query filters"
msgstr ""
-#: report/models.py:491
+#: report/models.py:493
msgid "Sales order query filters"
msgstr ""
-#: report/models.py:529
+#: report/models.py:531
msgid "Return order query filters"
msgstr ""
-#: report/models.py:582
+#: report/models.py:584
msgid "Snippet"
msgstr ""
-#: report/models.py:583
+#: report/models.py:585
msgid "Report snippet file"
msgstr ""
-#: report/models.py:587
+#: report/models.py:589
msgid "Snippet file description"
msgstr ""
-#: report/models.py:624
+#: report/models.py:626
msgid "Asset"
msgstr ""
-#: report/models.py:625
+#: report/models.py:627
msgid "Report asset file"
msgstr ""
-#: report/models.py:632
+#: report/models.py:634
msgid "Asset file description"
msgstr ""
@@ -7475,8 +7486,8 @@ msgstr ""
#: templates/js/translated/order.js:316 templates/js/translated/pricing.js:527
#: templates/js/translated/pricing.js:596
#: templates/js/translated/pricing.js:820
-#: templates/js/translated/purchase_order.js:2083
-#: templates/js/translated/sales_order.js:1817
+#: templates/js/translated/purchase_order.js:2093
+#: templates/js/translated/sales_order.js:1829
msgid "Unit Price"
msgstr ""
@@ -7488,23 +7499,23 @@ msgstr ""
#: report/templates/report/inventree_po_report_base.html:72
#: report/templates/report/inventree_so_report_base.html:72
-#: templates/js/translated/purchase_order.js:1985
-#: templates/js/translated/sales_order.js:1792
+#: templates/js/translated/purchase_order.js:1995
+#: templates/js/translated/sales_order.js:1804
msgid "Total"
msgstr ""
#: report/templates/report/inventree_return_order_report_base.html:25
#: report/templates/report/inventree_test_report_base.html:88
#: stock/models.py:725 stock/templates/stock/item_base.html:312
-#: templates/js/translated/build.js:502 templates/js/translated/build.js:1423
-#: templates/js/translated/build.js:1989
-#: templates/js/translated/model_renderers.js:201
-#: templates/js/translated/return_order.js:528
-#: templates/js/translated/return_order.js:708
-#: templates/js/translated/sales_order.js:300
-#: templates/js/translated/sales_order.js:1597
-#: templates/js/translated/sales_order.js:1682
-#: templates/js/translated/stock.js:563
+#: templates/js/translated/build.js:508 templates/js/translated/build.js:1306
+#: templates/js/translated/build.js:2281
+#: templates/js/translated/model_renderers.js:215
+#: templates/js/translated/return_order.js:540
+#: templates/js/translated/return_order.js:720
+#: templates/js/translated/sales_order.js:312
+#: templates/js/translated/sales_order.js:1609
+#: templates/js/translated/sales_order.js:1694
+#: templates/js/translated/stock.js:562
msgid "Serial Number"
msgstr ""
@@ -7517,7 +7528,7 @@ msgid "Test Results"
msgstr ""
#: report/templates/report/inventree_test_report_base.html:102
-#: stock/models.py:2243 templates/js/translated/stock.js:1419
+#: stock/models.py:2243 templates/js/translated/stock.js:1418
msgid "Test"
msgstr ""
@@ -7548,8 +7559,8 @@ msgid "Installed Items"
msgstr ""
#: report/templates/report/inventree_test_report_base.html:168
-#: stock/admin.py:104 templates/js/translated/stock.js:667
-#: templates/js/translated/stock.js:838 templates/js/translated/stock.js:2849
+#: stock/admin.py:104 templates/js/translated/stock.js:666
+#: templates/js/translated/stock.js:837 templates/js/translated/stock.js:2976
msgid "Serial"
msgstr ""
@@ -7617,31 +7628,31 @@ msgstr ""
#: stock/admin.py:131 stock/models.py:789
#: stock/templates/stock/item_base.html:429
-#: templates/js/translated/stock.js:1966
+#: templates/js/translated/stock.js:2123
msgid "Expiry Date"
msgstr ""
-#: stock/api.py:420 templates/js/translated/table_filters.js:373
+#: stock/api.py:426 templates/js/translated/table_filters.js:379
msgid "External Location"
msgstr ""
-#: stock/api.py:582
+#: stock/api.py:619
msgid "Quantity is required"
msgstr ""
-#: stock/api.py:589
+#: stock/api.py:626
msgid "Valid part must be supplied"
msgstr ""
-#: stock/api.py:615
+#: stock/api.py:652
msgid "The given supplier part does not exist"
msgstr ""
-#: stock/api.py:624
+#: stock/api.py:661
msgid "The supplier part has a pack size defined, but flag use_pack_size not set"
msgstr ""
-#: stock/api.py:642
+#: stock/api.py:679
msgid "Serial numbers cannot be supplied for a non-trackable part"
msgstr ""
@@ -7652,7 +7663,7 @@ msgid "Stock Location"
msgstr ""
#: stock/models.py:55 stock/templates/stock/location.html:177
-#: templates/InvenTree/search.html:166 templates/js/translated/search.js:220
+#: templates/InvenTree/search.html:166 templates/js/translated/search.js:178
#: users/models.py:40
msgid "Stock Locations"
msgstr ""
@@ -7670,8 +7681,8 @@ msgstr ""
msgid "Stock items may not be directly located into a structural stock locations, but may be located to child locations."
msgstr ""
-#: stock/models.py:132 templates/js/translated/stock.js:2529
-#: templates/js/translated/table_filters.js:213
+#: stock/models.py:132 templates/js/translated/stock.js:2660
+#: templates/js/translated/table_filters.js:219
msgid "External"
msgstr ""
@@ -7687,7 +7698,7 @@ msgstr ""
msgid "Stock items cannot be located into structural stock locations!"
msgstr ""
-#: stock/models.py:583 stock/serializers.py:174
+#: stock/models.py:583 stock/serializers.py:223
msgid "Stock item cannot be created for virtual parts"
msgstr ""
@@ -7821,7 +7832,7 @@ msgstr ""
msgid "Quantity does not match serial numbers"
msgstr ""
-#: stock/models.py:1403 stock/serializers.py:374
+#: stock/models.py:1403 stock/serializers.py:440
msgid "Serial numbers already exist"
msgstr ""
@@ -7849,7 +7860,7 @@ msgstr ""
msgid "Serialized stock cannot be merged"
msgstr ""
-#: stock/models.py:1496 stock/serializers.py:975
+#: stock/models.py:1496 stock/serializers.py:1092
msgid "Duplicate stock items"
msgstr ""
@@ -7901,132 +7912,141 @@ msgstr ""
msgid "Test notes"
msgstr ""
-#: stock/serializers.py:76
+#: stock/serializers.py:121
msgid "Serial number is too large"
msgstr ""
-#: stock/serializers.py:166
+#: stock/serializers.py:215
msgid "Use pack size when adding: the quantity defined is the number of packs"
msgstr ""
-#: stock/serializers.py:254
+#: stock/serializers.py:316
msgid "Purchase price of this stock item, per unit or pack"
msgstr ""
-#: stock/serializers.py:307
+#: stock/serializers.py:373
msgid "Enter number of stock items to serialize"
msgstr ""
-#: stock/serializers.py:319
+#: stock/serializers.py:385
#, python-brace-format
msgid "Quantity must not exceed available stock quantity ({q})"
msgstr ""
-#: stock/serializers.py:325
+#: stock/serializers.py:391
msgid "Enter serial numbers for new items"
msgstr ""
-#: stock/serializers.py:336 stock/serializers.py:932 stock/serializers.py:1174
+#: stock/serializers.py:402 stock/serializers.py:1049 stock/serializers.py:1291
msgid "Destination stock location"
msgstr ""
-#: stock/serializers.py:343
+#: stock/serializers.py:409
msgid "Optional note field"
msgstr ""
-#: stock/serializers.py:353
+#: stock/serializers.py:419
msgid "Serial numbers cannot be assigned to this part"
msgstr ""
-#: stock/serializers.py:414
+#: stock/serializers.py:480
msgid "Select stock item to install"
msgstr ""
-#: stock/serializers.py:427
-msgid "Stock item is unavailable"
-msgstr ""
-
-#: stock/serializers.py:434
-msgid "Selected part is not in the Bill of Materials"
-msgstr ""
-
-#: stock/serializers.py:471
-msgid "Destination location for uninstalled item"
-msgstr ""
-
-#: stock/serializers.py:476 stock/serializers.py:557
+#: stock/serializers.py:485 stock/serializers.py:543 stock/serializers.py:624
+#: stock/serializers.py:682
msgid "Add transaction note (optional)"
msgstr ""
-#: stock/serializers.py:510
+#: stock/serializers.py:494
+msgid "Stock item is unavailable"
+msgstr ""
+
+#: stock/serializers.py:501
+msgid "Selected part is not in the Bill of Materials"
+msgstr ""
+
+#: stock/serializers.py:538
+msgid "Destination location for uninstalled item"
+msgstr ""
+
+#: stock/serializers.py:577
msgid "Select part to convert stock item into"
msgstr ""
-#: stock/serializers.py:521
+#: stock/serializers.py:588
msgid "Selected part is not a valid option for conversion"
msgstr ""
-#: stock/serializers.py:552
+#: stock/serializers.py:619
msgid "Destination location for returned item"
msgstr ""
-#: stock/serializers.py:787
+#: stock/serializers.py:663
+msgid "Select stock items to change status"
+msgstr ""
+
+#: stock/serializers.py:670
+msgid "No stock items selected"
+msgstr ""
+
+#: stock/serializers.py:904
msgid "Part must be salable"
msgstr ""
-#: stock/serializers.py:791
+#: stock/serializers.py:908
msgid "Item is allocated to a sales order"
msgstr ""
-#: stock/serializers.py:795
+#: stock/serializers.py:912
msgid "Item is allocated to a build order"
msgstr ""
-#: stock/serializers.py:826
+#: stock/serializers.py:943
msgid "Customer to assign stock items"
msgstr ""
-#: stock/serializers.py:832
+#: stock/serializers.py:949
msgid "Selected company is not a customer"
msgstr ""
-#: stock/serializers.py:840
+#: stock/serializers.py:957
msgid "Stock assignment notes"
msgstr ""
-#: stock/serializers.py:850 stock/serializers.py:1081
+#: stock/serializers.py:967 stock/serializers.py:1198
msgid "A list of stock items must be provided"
msgstr ""
-#: stock/serializers.py:939
+#: stock/serializers.py:1056
msgid "Stock merging notes"
msgstr ""
-#: stock/serializers.py:944
+#: stock/serializers.py:1061
msgid "Allow mismatched suppliers"
msgstr ""
-#: stock/serializers.py:945
+#: stock/serializers.py:1062
msgid "Allow stock items with different supplier parts to be merged"
msgstr ""
-#: stock/serializers.py:950
+#: stock/serializers.py:1067
msgid "Allow mismatched status"
msgstr ""
-#: stock/serializers.py:951
+#: stock/serializers.py:1068
msgid "Allow stock items with different status codes to be merged"
msgstr ""
-#: stock/serializers.py:961
+#: stock/serializers.py:1078
msgid "At least two stock items must be provided"
msgstr ""
-#: stock/serializers.py:1043
+#: stock/serializers.py:1160
msgid "StockItem primary key value"
msgstr ""
-#: stock/serializers.py:1071
+#: stock/serializers.py:1188
msgid "Stock transaction notes"
msgstr ""
@@ -8034,48 +8054,48 @@ msgstr ""
msgid "Stock Tracking Information"
msgstr ""
-#: stock/templates/stock/item.html:69
+#: stock/templates/stock/item.html:63
msgid "Child Stock Items"
msgstr ""
-#: stock/templates/stock/item.html:77
+#: stock/templates/stock/item.html:71
msgid "This stock item does not have any child items"
msgstr ""
-#: stock/templates/stock/item.html:86
+#: stock/templates/stock/item.html:80
#: stock/templates/stock/stock_sidebar.html:12
msgid "Test Data"
msgstr ""
-#: stock/templates/stock/item.html:90 stock/templates/stock/item_base.html:66
+#: stock/templates/stock/item.html:84 stock/templates/stock/item_base.html:66
msgid "Test Report"
msgstr ""
-#: stock/templates/stock/item.html:94 stock/templates/stock/item.html:288
+#: stock/templates/stock/item.html:88 stock/templates/stock/item.html:278
msgid "Delete Test Data"
msgstr ""
-#: stock/templates/stock/item.html:98
+#: stock/templates/stock/item.html:92
msgid "Add Test Data"
msgstr ""
-#: stock/templates/stock/item.html:132
+#: stock/templates/stock/item.html:124
msgid "Stock Item Notes"
msgstr ""
-#: stock/templates/stock/item.html:147
+#: stock/templates/stock/item.html:139
msgid "Installed Stock Items"
msgstr ""
-#: stock/templates/stock/item.html:152 templates/js/translated/stock.js:2996
+#: stock/templates/stock/item.html:144 templates/js/translated/stock.js:3123
msgid "Install Stock Item"
msgstr ""
-#: stock/templates/stock/item.html:276
+#: stock/templates/stock/item.html:266
msgid "Delete all test results for this stock item"
msgstr ""
-#: stock/templates/stock/item.html:305 templates/js/translated/stock.js:1611
+#: stock/templates/stock/item.html:295 templates/js/translated/stock.js:1610
msgid "Add Test Result"
msgstr ""
@@ -8083,13 +8103,13 @@ msgstr ""
msgid "Locate stock item"
msgstr ""
-#: stock/templates/stock/item_base.html:52 templates/stock_table.html:21
+#: stock/templates/stock/item_base.html:52
msgid "Scan to Location"
msgstr ""
#: stock/templates/stock/item_base.html:60
#: stock/templates/stock/location.html:69
-#: templates/js/translated/filters.js:322
+#: templates/js/translated/filters.js:432
msgid "Printing actions"
msgstr ""
@@ -8098,15 +8118,17 @@ msgid "Stock adjustment actions"
msgstr ""
#: stock/templates/stock/item_base.html:80
-#: stock/templates/stock/location.html:88 templates/stock_table.html:35
+#: stock/templates/stock/location.html:88 templates/js/translated/stock.js:1735
msgid "Count stock"
msgstr ""
-#: stock/templates/stock/item_base.html:82 templates/stock_table.html:33
+#: stock/templates/stock/item_base.html:82
+#: templates/js/translated/stock.js:1717
msgid "Add stock"
msgstr ""
-#: stock/templates/stock/item_base.html:83 templates/stock_table.html:34
+#: stock/templates/stock/item_base.html:83
+#: templates/js/translated/stock.js:1726
msgid "Remove stock"
msgstr ""
@@ -8115,11 +8137,12 @@ msgid "Serialize stock"
msgstr ""
#: stock/templates/stock/item_base.html:89
-#: stock/templates/stock/location.html:94 templates/stock_table.html:36
+#: stock/templates/stock/location.html:94 templates/js/translated/stock.js:1744
msgid "Transfer stock"
msgstr ""
-#: stock/templates/stock/item_base.html:92 templates/stock_table.html:39
+#: stock/templates/stock/item_base.html:92
+#: templates/js/translated/stock.js:1798
msgid "Assign to customer"
msgstr ""
@@ -8159,6 +8182,11 @@ msgstr ""
msgid "Delete stock item"
msgstr ""
+#: stock/templates/stock/item_base.html:170 templates/InvenTree/search.html:139
+#: templates/js/translated/build.js:2046 templates/navbar.html:38
+msgid "Build"
+msgstr "Izdelava"
+
#: stock/templates/stock/item_base.html:194
msgid "Parent Item"
msgstr ""
@@ -8221,7 +8249,7 @@ msgid "Available Quantity"
msgstr ""
#: stock/templates/stock/item_base.html:394
-#: templates/js/translated/build.js:2015
+#: templates/js/translated/build.js:2306
msgid "No location set"
msgstr ""
@@ -8239,7 +8267,7 @@ msgid "This StockItem expired on %(item.expiry_date)s"
msgstr ""
#: stock/templates/stock/item_base.html:433
-#: templates/js/translated/table_filters.js:381
+#: templates/js/translated/table_filters.js:387
msgid "Expired"
msgstr ""
@@ -8249,7 +8277,7 @@ msgid "This StockItem expires on %(item.expiry_date)s"
msgstr ""
#: stock/templates/stock/item_base.html:435
-#: templates/js/translated/table_filters.js:387
+#: templates/js/translated/table_filters.js:393
msgid "Stale"
msgstr ""
@@ -8258,7 +8286,7 @@ msgid "No stocktake performed"
msgstr ""
#: stock/templates/stock/item_base.html:503
-#: templates/js/translated/stock.js:1745
+#: templates/js/translated/stock.js:1865
msgid "stock item"
msgstr ""
@@ -8364,20 +8392,20 @@ msgstr ""
msgid "New Location"
msgstr ""
-#: stock/templates/stock/location.html:287
-#: templates/js/translated/stock.js:2318
+#: stock/templates/stock/location.html:278
+#: templates/js/translated/stock.js:2449
msgid "stock location"
msgstr ""
-#: stock/templates/stock/location.html:304
+#: stock/templates/stock/location.html:295
msgid "Scanned stock container into this location"
msgstr ""
-#: stock/templates/stock/location.html:377
+#: stock/templates/stock/location.html:368
msgid "Stock Location QR Code"
msgstr ""
-#: stock/templates/stock/location.html:388
+#: stock/templates/stock/location.html:379
msgid "Link Barcode to Stock Location"
msgstr ""
@@ -8451,71 +8479,71 @@ msgstr ""
msgid "Index"
msgstr ""
-#: templates/InvenTree/index.html:89
+#: templates/InvenTree/index.html:39
msgid "Subscribed Parts"
msgstr ""
-#: templates/InvenTree/index.html:102
+#: templates/InvenTree/index.html:53
msgid "Subscribed Categories"
msgstr ""
-#: templates/InvenTree/index.html:112
+#: templates/InvenTree/index.html:63
msgid "Latest Parts"
msgstr ""
-#: templates/InvenTree/index.html:126
+#: templates/InvenTree/index.html:78
msgid "BOM Waiting Validation"
msgstr ""
-#: templates/InvenTree/index.html:155
+#: templates/InvenTree/index.html:107
msgid "Recently Updated"
msgstr ""
-#: templates/InvenTree/index.html:180
+#: templates/InvenTree/index.html:134
msgid "Depleted Stock"
msgstr ""
-#: templates/InvenTree/index.html:193
+#: templates/InvenTree/index.html:148
msgid "Required for Build Orders"
msgstr ""
-#: templates/InvenTree/index.html:208
+#: templates/InvenTree/index.html:156
msgid "Expired Stock"
msgstr ""
-#: templates/InvenTree/index.html:222
+#: templates/InvenTree/index.html:172
msgid "Stale Stock"
msgstr ""
-#: templates/InvenTree/index.html:247
+#: templates/InvenTree/index.html:199
msgid "Build Orders In Progress"
msgstr ""
-#: templates/InvenTree/index.html:258
+#: templates/InvenTree/index.html:210
msgid "Overdue Build Orders"
msgstr ""
-#: templates/InvenTree/index.html:278
+#: templates/InvenTree/index.html:230
msgid "Outstanding Purchase Orders"
msgstr ""
-#: templates/InvenTree/index.html:289
+#: templates/InvenTree/index.html:241
msgid "Overdue Purchase Orders"
msgstr ""
-#: templates/InvenTree/index.html:310
+#: templates/InvenTree/index.html:262
msgid "Outstanding Sales Orders"
msgstr ""
-#: templates/InvenTree/index.html:321
+#: templates/InvenTree/index.html:273
msgid "Overdue Sales Orders"
msgstr ""
-#: templates/InvenTree/index.html:347
+#: templates/InvenTree/index.html:299
msgid "InvenTree News"
msgstr ""
-#: templates/InvenTree/index.html:349
+#: templates/InvenTree/index.html:301
msgid "Current News"
msgstr ""
@@ -8672,29 +8700,29 @@ msgstr ""
msgid "Changing the settings below require you to immediately restart the server. Do not change this while under active usage."
msgstr ""
-#: templates/InvenTree/settings/plugin.html:37
+#: templates/InvenTree/settings/plugin.html:35
#: templates/InvenTree/settings/sidebar.html:64
msgid "Plugins"
msgstr ""
-#: templates/InvenTree/settings/plugin.html:43
+#: templates/InvenTree/settings/plugin.html:41
#: templates/js/translated/plugin.js:151
msgid "Install Plugin"
msgstr ""
-#: templates/InvenTree/settings/plugin.html:51
+#: templates/InvenTree/settings/plugin.html:49
msgid "External plugins are not enabled for this InvenTree installation"
msgstr ""
-#: templates/InvenTree/settings/plugin.html:70
+#: templates/InvenTree/settings/plugin.html:64
msgid "Plugin Error Stack"
msgstr ""
-#: templates/InvenTree/settings/plugin.html:79
+#: templates/InvenTree/settings/plugin.html:73
msgid "Stage"
msgstr ""
-#: templates/InvenTree/settings/plugin.html:81
+#: templates/InvenTree/settings/plugin.html:75
#: templates/js/translated/notification.js:75
msgid "Message"
msgstr ""
@@ -8767,14 +8795,6 @@ msgstr ""
msgid "Commit Message"
msgstr ""
-#: templates/InvenTree/settings/plugin_settings.html:126
-msgid "Sign Status"
-msgstr ""
-
-#: templates/InvenTree/settings/plugin_settings.html:131
-msgid "Sign Key"
-msgstr ""
-
#: templates/InvenTree/settings/po.html:7
msgid "Purchase Order Settings"
msgstr ""
@@ -8870,12 +8890,12 @@ msgid "No category parameter templates found"
msgstr ""
#: templates/InvenTree/settings/settings_staff_js.html:212
-#: templates/js/translated/part.js:1618
+#: templates/js/translated/part.js:1617
msgid "Edit Template"
msgstr ""
#: templates/InvenTree/settings/settings_staff_js.html:213
-#: templates/js/translated/part.js:1619
+#: templates/js/translated/part.js:1618
msgid "Delete Template"
msgstr ""
@@ -8913,7 +8933,7 @@ msgid "Home Page"
msgstr ""
#: templates/InvenTree/settings/sidebar.html:15
-#: templates/js/translated/tables.js:575 templates/navbar.html:107
+#: templates/js/translated/tables.js:551 templates/navbar.html:107
#: templates/search.html:8 templates/search_form.html:6
#: templates/search_form.html:7
msgid "Search"
@@ -8990,6 +9010,7 @@ msgid "Unverified"
msgstr ""
#: templates/InvenTree/settings/user.html:80
+#: templates/js/translated/company.js:984
msgid "Primary"
msgstr ""
@@ -9204,44 +9225,48 @@ msgstr ""
msgid "Update Available"
msgstr ""
-#: templates/about.html:42
+#: templates/about.html:43
+msgid "Commit Branch"
+msgstr ""
+
+#: templates/about.html:49
msgid "InvenTree Documentation"
msgstr ""
-#: templates/about.html:47
+#: templates/about.html:54
msgid "API Version"
msgstr ""
-#: templates/about.html:52
+#: templates/about.html:59
msgid "Python Version"
msgstr ""
-#: templates/about.html:57
+#: templates/about.html:64
msgid "Django Version"
msgstr ""
-#: templates/about.html:62
+#: templates/about.html:69
msgid "View Code on GitHub"
msgstr ""
-#: templates/about.html:67
+#: templates/about.html:74
msgid "Credits"
msgstr ""
-#: templates/about.html:72
+#: templates/about.html:79
msgid "Mobile App"
msgstr ""
-#: templates/about.html:77
+#: templates/about.html:84
msgid "Submit Bug Report"
msgstr ""
-#: templates/about.html:84 templates/clip.html:4
+#: templates/about.html:91 templates/clip.html:4
#: templates/js/translated/helpers.js:585
msgid "copy to clipboard"
msgstr ""
-#: templates/about.html:84
+#: templates/about.html:91
msgid "copy version information"
msgstr ""
@@ -9435,14 +9460,6 @@ msgstr ""
msgid "Add Attachment"
msgstr ""
-#: templates/attachment_table.html:11
-msgid "Delete selected attachments"
-msgstr ""
-
-#: templates/attachment_table.html:12 templates/js/translated/attachment.js:129
-msgid "Delete Attachments"
-msgstr ""
-
#: templates/barcode_data.html:5
msgid "Barcode Identifier"
msgstr ""
@@ -9487,7 +9504,7 @@ msgid "The following parts are low on required stock"
msgstr ""
#: templates/email/build_order_required_stock.html:18
-#: templates/js/translated/bom.js:1633
+#: templates/js/translated/bom.js:1653 templates/js/translated/build.js:2485
msgid "Required Quantity"
msgstr ""
@@ -9501,7 +9518,7 @@ msgid "Click on the following link to view this part"
msgstr ""
#: templates/email/low_stock_notification.html:18
-#: templates/js/translated/part.js:3140
+#: templates/js/translated/part.js:3125
msgid "Minimum Quantity"
msgstr ""
@@ -9573,23 +9590,35 @@ msgstr ""
msgid "All selected attachments will be deleted"
msgstr ""
-#: templates/js/translated/attachment.js:255
+#: templates/js/translated/attachment.js:129
+msgid "Delete Attachments"
+msgstr ""
+
+#: templates/js/translated/attachment.js:205
+msgid "Delete attachments"
+msgstr ""
+
+#: templates/js/translated/attachment.js:253
+msgid "Attachment actions"
+msgstr ""
+
+#: templates/js/translated/attachment.js:275
msgid "No attachments found"
msgstr ""
-#: templates/js/translated/attachment.js:285
+#: templates/js/translated/attachment.js:305
msgid "Edit Attachment"
msgstr ""
-#: templates/js/translated/attachment.js:326
+#: templates/js/translated/attachment.js:336
msgid "Upload Date"
msgstr ""
-#: templates/js/translated/attachment.js:346
+#: templates/js/translated/attachment.js:356
msgid "Edit attachment"
msgstr ""
-#: templates/js/translated/attachment.js:354
+#: templates/js/translated/attachment.js:364
msgid "Delete attachment"
msgstr ""
@@ -9646,7 +9675,7 @@ msgstr ""
msgid "Unlink"
msgstr ""
-#: templates/js/translated/barcode.js:550 templates/js/translated/stock.js:1118
+#: templates/js/translated/barcode.js:550 templates/js/translated/stock.js:1117
msgid "Remove stock item"
msgstr ""
@@ -9704,775 +9733,869 @@ msgstr ""
msgid "Barcode does not match a valid location"
msgstr ""
-#: templates/js/translated/bom.js:77
+#: templates/js/translated/bom.js:78
msgid "Create BOM Item"
msgstr ""
-#: templates/js/translated/bom.js:131
+#: templates/js/translated/bom.js:132
msgid "Display row data"
msgstr ""
-#: templates/js/translated/bom.js:187
+#: templates/js/translated/bom.js:188
msgid "Row Data"
msgstr ""
-#: templates/js/translated/bom.js:188 templates/js/translated/bom.js:699
+#: templates/js/translated/bom.js:189 templates/js/translated/bom.js:700
#: templates/js/translated/modals.js:71 templates/js/translated/modals.js:622
#: templates/js/translated/modals.js:746 templates/js/translated/modals.js:1054
-#: templates/js/translated/purchase_order.js:791 templates/modals.html:15
+#: templates/js/translated/purchase_order.js:802 templates/modals.html:15
#: templates/modals.html:27 templates/modals.html:39 templates/modals.html:50
msgid "Close"
msgstr ""
-#: templates/js/translated/bom.js:305
+#: templates/js/translated/bom.js:306
msgid "Download BOM Template"
msgstr ""
-#: templates/js/translated/bom.js:350
+#: templates/js/translated/bom.js:351
msgid "Multi Level BOM"
msgstr ""
-#: templates/js/translated/bom.js:351
+#: templates/js/translated/bom.js:352
msgid "Include BOM data for subassemblies"
msgstr ""
-#: templates/js/translated/bom.js:356
+#: templates/js/translated/bom.js:357
msgid "Levels"
msgstr ""
-#: templates/js/translated/bom.js:357
+#: templates/js/translated/bom.js:358
msgid "Select maximum number of BOM levels to export (0 = all levels)"
msgstr ""
-#: templates/js/translated/bom.js:364
+#: templates/js/translated/bom.js:365
msgid "Include Alternative Parts"
msgstr ""
-#: templates/js/translated/bom.js:365
+#: templates/js/translated/bom.js:366
msgid "Include alternative parts in exported BOM"
msgstr ""
-#: templates/js/translated/bom.js:370
+#: templates/js/translated/bom.js:371
msgid "Include Parameter Data"
msgstr ""
-#: templates/js/translated/bom.js:371
+#: templates/js/translated/bom.js:372
msgid "Include part parameter data in exported BOM"
msgstr ""
-#: templates/js/translated/bom.js:376
+#: templates/js/translated/bom.js:377
msgid "Include Stock Data"
msgstr ""
-#: templates/js/translated/bom.js:377
+#: templates/js/translated/bom.js:378
msgid "Include part stock data in exported BOM"
msgstr ""
-#: templates/js/translated/bom.js:382
+#: templates/js/translated/bom.js:383
msgid "Include Manufacturer Data"
msgstr ""
-#: templates/js/translated/bom.js:383
+#: templates/js/translated/bom.js:384
msgid "Include part manufacturer data in exported BOM"
msgstr ""
-#: templates/js/translated/bom.js:388
+#: templates/js/translated/bom.js:389
msgid "Include Supplier Data"
msgstr ""
-#: templates/js/translated/bom.js:389
+#: templates/js/translated/bom.js:390
msgid "Include part supplier data in exported BOM"
msgstr ""
-#: templates/js/translated/bom.js:394
+#: templates/js/translated/bom.js:395
msgid "Include Pricing Data"
msgstr ""
-#: templates/js/translated/bom.js:395
+#: templates/js/translated/bom.js:396
msgid "Include part pricing data in exported BOM"
msgstr ""
-#: templates/js/translated/bom.js:590
+#: templates/js/translated/bom.js:591
msgid "Remove substitute part"
msgstr ""
-#: templates/js/translated/bom.js:644
+#: templates/js/translated/bom.js:645
msgid "Select and add a new substitute part using the input below"
msgstr ""
-#: templates/js/translated/bom.js:655
+#: templates/js/translated/bom.js:656
msgid "Are you sure you wish to remove this substitute part link?"
msgstr ""
-#: templates/js/translated/bom.js:661
+#: templates/js/translated/bom.js:662
msgid "Remove Substitute Part"
msgstr ""
-#: templates/js/translated/bom.js:700
+#: templates/js/translated/bom.js:701
msgid "Add Substitute"
msgstr ""
-#: templates/js/translated/bom.js:701
+#: templates/js/translated/bom.js:702
msgid "Edit BOM Item Substitutes"
msgstr ""
-#: templates/js/translated/bom.js:763
+#: templates/js/translated/bom.js:764
msgid "All selected BOM items will be deleted"
msgstr ""
-#: templates/js/translated/bom.js:779
+#: templates/js/translated/bom.js:780
msgid "Delete selected BOM items?"
msgstr ""
-#: templates/js/translated/bom.js:906
+#: templates/js/translated/bom.js:826
+msgid "Delete items"
+msgstr ""
+
+#: templates/js/translated/bom.js:924
msgid "Load BOM for subassembly"
msgstr ""
-#: templates/js/translated/bom.js:916
+#: templates/js/translated/bom.js:934
msgid "Substitutes Available"
msgstr ""
-#: templates/js/translated/bom.js:920 templates/js/translated/build.js:2090
+#: templates/js/translated/bom.js:938 templates/js/translated/build.js:2429
msgid "Variant stock allowed"
msgstr ""
-#: templates/js/translated/bom.js:984
+#: templates/js/translated/bom.js:1002
msgid "Substitutes"
msgstr ""
-#: templates/js/translated/bom.js:1104
+#: templates/js/translated/bom.js:1122
msgid "BOM pricing is complete"
msgstr ""
-#: templates/js/translated/bom.js:1109
+#: templates/js/translated/bom.js:1127
msgid "BOM pricing is incomplete"
msgstr ""
-#: templates/js/translated/bom.js:1116
+#: templates/js/translated/bom.js:1134
msgid "No pricing available"
msgstr ""
-#: templates/js/translated/bom.js:1147 templates/js/translated/build.js:2173
-#: templates/js/translated/sales_order.js:1887
+#: templates/js/translated/bom.js:1165 templates/js/translated/build.js:2523
+#: templates/js/translated/sales_order.js:1899
msgid "No Stock Available"
msgstr ""
-#: templates/js/translated/bom.js:1152 templates/js/translated/build.js:2177
+#: templates/js/translated/bom.js:1170 templates/js/translated/build.js:2527
msgid "Includes variant and substitute stock"
msgstr ""
-#: templates/js/translated/bom.js:1154 templates/js/translated/build.js:2179
-#: templates/js/translated/part.js:1230
+#: templates/js/translated/bom.js:1172 templates/js/translated/build.js:2529
+#: templates/js/translated/part.js:1229
msgid "Includes variant stock"
msgstr ""
-#: templates/js/translated/bom.js:1156 templates/js/translated/build.js:2181
+#: templates/js/translated/bom.js:1174 templates/js/translated/build.js:2531
msgid "Includes substitute stock"
msgstr ""
-#: templates/js/translated/bom.js:1184 templates/js/translated/build.js:2164
-#: templates/js/translated/build.js:2255
+#: templates/js/translated/bom.js:1204 templates/js/translated/build.js:2514
msgid "Consumable item"
msgstr ""
-#: templates/js/translated/bom.js:1244
+#: templates/js/translated/bom.js:1264
msgid "Validate BOM Item"
msgstr ""
-#: templates/js/translated/bom.js:1246
+#: templates/js/translated/bom.js:1266
msgid "This line has been validated"
msgstr ""
-#: templates/js/translated/bom.js:1248
+#: templates/js/translated/bom.js:1268
msgid "Edit substitute parts"
msgstr ""
-#: templates/js/translated/bom.js:1250 templates/js/translated/bom.js:1445
+#: templates/js/translated/bom.js:1270 templates/js/translated/bom.js:1465
msgid "Edit BOM Item"
msgstr ""
-#: templates/js/translated/bom.js:1252
+#: templates/js/translated/bom.js:1272
msgid "Delete BOM Item"
msgstr ""
-#: templates/js/translated/bom.js:1272
+#: templates/js/translated/bom.js:1292
msgid "View BOM"
msgstr ""
-#: templates/js/translated/bom.js:1356 templates/js/translated/build.js:1927
+#: templates/js/translated/bom.js:1376
msgid "No BOM items found"
msgstr ""
-#: templates/js/translated/bom.js:1616 templates/js/translated/build.js:2073
+#: templates/js/translated/bom.js:1636 templates/js/translated/build.js:2414
msgid "Required Part"
msgstr ""
-#: templates/js/translated/bom.js:1642
+#: templates/js/translated/bom.js:1662
msgid "Inherited from parent BOM"
msgstr ""
-#: templates/js/translated/build.js:126
+#: templates/js/translated/build.js:136
msgid "Edit Build Order"
msgstr ""
-#: templates/js/translated/build.js:169
+#: templates/js/translated/build.js:179
msgid "Create Build Order"
msgstr ""
-#: templates/js/translated/build.js:202
+#: templates/js/translated/build.js:211
msgid "Cancel Build Order"
msgstr ""
-#: templates/js/translated/build.js:211
+#: templates/js/translated/build.js:220
msgid "Are you sure you wish to cancel this build?"
msgstr ""
-#: templates/js/translated/build.js:217
+#: templates/js/translated/build.js:226
msgid "Stock items have been allocated to this build order"
msgstr ""
-#: templates/js/translated/build.js:224
+#: templates/js/translated/build.js:233
msgid "There are incomplete outputs remaining for this build order"
msgstr ""
-#: templates/js/translated/build.js:276
+#: templates/js/translated/build.js:285
msgid "Build order is ready to be completed"
msgstr ""
-#: templates/js/translated/build.js:284
+#: templates/js/translated/build.js:293
msgid "This build order cannot be completed as there are incomplete outputs"
msgstr ""
-#: templates/js/translated/build.js:289
+#: templates/js/translated/build.js:298
msgid "Build Order is incomplete"
msgstr ""
-#: templates/js/translated/build.js:307
+#: templates/js/translated/build.js:316
msgid "Complete Build Order"
msgstr ""
-#: templates/js/translated/build.js:348 templates/js/translated/stock.js:119
-#: templates/js/translated/stock.js:265
+#: templates/js/translated/build.js:357 templates/js/translated/stock.js:118
+#: templates/js/translated/stock.js:264
msgid "Next available serial number"
msgstr ""
-#: templates/js/translated/build.js:350 templates/js/translated/stock.js:121
-#: templates/js/translated/stock.js:267
+#: templates/js/translated/build.js:359 templates/js/translated/stock.js:120
+#: templates/js/translated/stock.js:266
msgid "Latest serial number"
msgstr ""
-#: templates/js/translated/build.js:359
+#: templates/js/translated/build.js:368
msgid "The Bill of Materials contains trackable parts"
msgstr ""
-#: templates/js/translated/build.js:360
+#: templates/js/translated/build.js:369
msgid "Build outputs must be generated individually"
msgstr ""
-#: templates/js/translated/build.js:368
+#: templates/js/translated/build.js:377
msgid "Trackable parts can have serial numbers specified"
msgstr ""
-#: templates/js/translated/build.js:369
+#: templates/js/translated/build.js:378
msgid "Enter serial numbers to generate multiple single build outputs"
msgstr ""
-#: templates/js/translated/build.js:376
+#: templates/js/translated/build.js:385
msgid "Create Build Output"
msgstr ""
-#: templates/js/translated/build.js:407
+#: templates/js/translated/build.js:416
msgid "Allocate stock items to this build output"
msgstr ""
-#: templates/js/translated/build.js:418
-msgid "Unallocate stock from build output"
+#: templates/js/translated/build.js:424
+msgid "Deallocate stock from build output"
msgstr ""
-#: templates/js/translated/build.js:427
+#: templates/js/translated/build.js:433
msgid "Complete build output"
msgstr ""
-#: templates/js/translated/build.js:435
+#: templates/js/translated/build.js:441
msgid "Scrap build output"
msgstr ""
-#: templates/js/translated/build.js:442
+#: templates/js/translated/build.js:448
msgid "Delete build output"
msgstr ""
-#: templates/js/translated/build.js:462
-msgid "Are you sure you wish to unallocate stock items from this build?"
+#: templates/js/translated/build.js:468
+msgid "Are you sure you wish to deallocate the selected stock items from this build?"
msgstr ""
-#: templates/js/translated/build.js:480
-msgid "Unallocate Stock Items"
+#: templates/js/translated/build.js:486
+msgid "Deallocate Stock Items"
msgstr ""
-#: templates/js/translated/build.js:566 templates/js/translated/build.js:690
-#: templates/js/translated/build.js:812
+#: templates/js/translated/build.js:572 templates/js/translated/build.js:696
+#: templates/js/translated/build.js:818
msgid "Select Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:567 templates/js/translated/build.js:691
-#: templates/js/translated/build.js:813
+#: templates/js/translated/build.js:573 templates/js/translated/build.js:697
+#: templates/js/translated/build.js:819
msgid "At least one build output must be selected"
msgstr ""
-#: templates/js/translated/build.js:581
+#: templates/js/translated/build.js:587
msgid "Selected build outputs will be marked as complete"
msgstr ""
-#: templates/js/translated/build.js:585 templates/js/translated/build.js:715
-#: templates/js/translated/build.js:835
+#: templates/js/translated/build.js:591 templates/js/translated/build.js:721
+#: templates/js/translated/build.js:841
msgid "Output"
msgstr ""
-#: templates/js/translated/build.js:609
+#: templates/js/translated/build.js:615
msgid "Complete Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:706
+#: templates/js/translated/build.js:712
msgid "Selected build outputs will be marked as scrapped"
msgstr ""
-#: templates/js/translated/build.js:708
+#: templates/js/translated/build.js:714
msgid "Scrapped output are marked as rejected"
msgstr ""
-#: templates/js/translated/build.js:709
+#: templates/js/translated/build.js:715
msgid "Allocated stock items will no longer be available"
msgstr ""
-#: templates/js/translated/build.js:710
+#: templates/js/translated/build.js:716
msgid "The completion status of the build order will not be adjusted"
msgstr ""
-#: templates/js/translated/build.js:737
+#: templates/js/translated/build.js:743
msgid "Scrap Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:827
+#: templates/js/translated/build.js:833
msgid "Selected build outputs will be deleted"
msgstr ""
-#: templates/js/translated/build.js:829
+#: templates/js/translated/build.js:835
msgid "Build output data will be permanently deleted"
msgstr ""
-#: templates/js/translated/build.js:830
+#: templates/js/translated/build.js:836
msgid "Allocated stock items will be returned to stock"
msgstr ""
-#: templates/js/translated/build.js:848
+#: templates/js/translated/build.js:854
msgid "Delete Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:934
+#: templates/js/translated/build.js:941
msgid "No build order allocations found"
msgstr ""
-#: templates/js/translated/build.js:971
+#: templates/js/translated/build.js:970 templates/js/translated/build.js:2270
+msgid "Allocated Quantity"
+msgstr ""
+
+#: templates/js/translated/build.js:984
msgid "Location not specified"
msgstr ""
-#: templates/js/translated/build.js:1047
+#: templates/js/translated/build.js:1006
+msgid "Complete outputs"
+msgstr ""
+
+#: templates/js/translated/build.js:1024
+msgid "Scrap outputs"
+msgstr ""
+
+#: templates/js/translated/build.js:1042
+msgid "Delete outputs"
+msgstr ""
+
+#: templates/js/translated/build.js:1100
msgid "build output"
msgstr ""
-#: templates/js/translated/build.js:1048
+#: templates/js/translated/build.js:1101
msgid "build outputs"
msgstr ""
-#: templates/js/translated/build.js:1383
+#: templates/js/translated/build.js:1105
+msgid "Build output actions"
+msgstr ""
+
+#: templates/js/translated/build.js:1274
msgid "No active build outputs found"
msgstr ""
-#: templates/js/translated/build.js:1457
-msgid "Allocated Stock"
+#: templates/js/translated/build.js:1329
+msgid "Allocated Lines"
msgstr ""
-#: templates/js/translated/build.js:1464
-msgid "No tracked BOM items for this build"
+#: templates/js/translated/build.js:1343
+msgid "Required Tests"
msgstr ""
-#: templates/js/translated/build.js:1486
-msgid "Completed Tests"
-msgstr ""
-
-#: templates/js/translated/build.js:1491
-msgid "No required tests for this build"
-msgstr ""
-
-#: templates/js/translated/build.js:2032 templates/js/translated/build.js:3056
-#: templates/js/translated/sales_order.js:1632
-msgid "Edit stock allocation"
-msgstr ""
-
-#: templates/js/translated/build.js:2034 templates/js/translated/build.js:3057
-#: templates/js/translated/sales_order.js:1633
-msgid "Delete stock allocation"
-msgstr ""
-
-#: templates/js/translated/build.js:2050
-msgid "Edit Allocation"
-msgstr ""
-
-#: templates/js/translated/build.js:2060
-msgid "Remove Allocation"
-msgstr ""
-
-#: templates/js/translated/build.js:2086
-msgid "Substitute parts available"
-msgstr ""
-
-#: templates/js/translated/build.js:2122
-msgid "Quantity Per"
-msgstr ""
-
-#: templates/js/translated/build.js:2167
-#: templates/js/translated/sales_order.js:1894
-msgid "Insufficient stock available"
-msgstr ""
-
-#: templates/js/translated/build.js:2169
-#: templates/js/translated/sales_order.js:1892
-msgid "Sufficient stock available"
-msgstr ""
-
-#: templates/js/translated/build.js:2263
-#: templates/js/translated/sales_order.js:1993
-msgid "Build stock"
-msgstr ""
-
-#: templates/js/translated/build.js:2267 templates/stock_table.html:38
-msgid "Order stock"
-msgstr ""
-
-#: templates/js/translated/build.js:2270
-#: templates/js/translated/sales_order.js:1987
-msgid "Allocate stock"
-msgstr ""
-
-#: templates/js/translated/build.js:2310
-#: templates/js/translated/purchase_order.js:616
-#: templates/js/translated/sales_order.js:1159
+#: templates/js/translated/build.js:1502
+#: templates/js/translated/purchase_order.js:627
+#: templates/js/translated/sales_order.js:1171
msgid "Select Parts"
msgstr ""
-#: templates/js/translated/build.js:2311
-#: templates/js/translated/sales_order.js:1160
+#: templates/js/translated/build.js:1503
+#: templates/js/translated/sales_order.js:1172
msgid "You must select at least one part to allocate"
msgstr ""
-#: templates/js/translated/build.js:2359
-#: templates/js/translated/sales_order.js:1109
+#: templates/js/translated/build.js:1566
+#: templates/js/translated/sales_order.js:1121
msgid "Specify stock allocation quantity"
msgstr ""
-#: templates/js/translated/build.js:2438
+#: templates/js/translated/build.js:1643
msgid "All Parts Allocated"
msgstr ""
-#: templates/js/translated/build.js:2439
+#: templates/js/translated/build.js:1644
msgid "All selected parts have been fully allocated"
msgstr ""
-#: templates/js/translated/build.js:2453
-#: templates/js/translated/sales_order.js:1174
+#: templates/js/translated/build.js:1658
+#: templates/js/translated/sales_order.js:1186
msgid "Select source location (leave blank to take from all locations)"
msgstr ""
-#: templates/js/translated/build.js:2481
+#: templates/js/translated/build.js:1686
msgid "Allocate Stock Items to Build Order"
msgstr ""
-#: templates/js/translated/build.js:2492
-#: templates/js/translated/sales_order.js:1271
+#: templates/js/translated/build.js:1697
+#: templates/js/translated/sales_order.js:1283
msgid "No matching stock locations"
msgstr ""
-#: templates/js/translated/build.js:2565
-#: templates/js/translated/sales_order.js:1348
+#: templates/js/translated/build.js:1770
+#: templates/js/translated/sales_order.js:1360
msgid "No matching stock items"
msgstr ""
-#: templates/js/translated/build.js:2662
+#: templates/js/translated/build.js:1867
msgid "Automatic Stock Allocation"
msgstr ""
-#: templates/js/translated/build.js:2663
+#: templates/js/translated/build.js:1868
msgid "Stock items will be automatically allocated to this build order, according to the provided guidelines"
msgstr ""
-#: templates/js/translated/build.js:2665
+#: templates/js/translated/build.js:1870
msgid "If a location is specified, stock will only be allocated from that location"
msgstr ""
-#: templates/js/translated/build.js:2666
+#: templates/js/translated/build.js:1871
msgid "If stock is considered interchangeable, it will be allocated from the first location it is found"
msgstr ""
-#: templates/js/translated/build.js:2667
+#: templates/js/translated/build.js:1872
msgid "If substitute stock is allowed, it will be used where stock of the primary part cannot be found"
msgstr ""
-#: templates/js/translated/build.js:2694
+#: templates/js/translated/build.js:1899
msgid "Allocate Stock Items"
msgstr ""
-#: templates/js/translated/build.js:2800
+#: templates/js/translated/build.js:2005
msgid "No builds matching query"
msgstr ""
-#: templates/js/translated/build.js:2835 templates/js/translated/part.js:2208
-#: templates/js/translated/part.js:2692 templates/js/translated/stock.js:1759
-#: templates/js/translated/stock.js:2458
+#: templates/js/translated/build.js:2040 templates/js/translated/build.js:2408
+#: templates/js/translated/part.js:2284 templates/js/translated/part.js:2677
+#: templates/js/translated/stock.js:1899 templates/js/translated/stock.js:2589
msgid "Select"
msgstr ""
-#: templates/js/translated/build.js:2849
+#: templates/js/translated/build.js:2054
msgid "Build order is overdue"
msgstr ""
-#: templates/js/translated/build.js:2883
+#: templates/js/translated/build.js:2100
msgid "Progress"
msgstr ""
-#: templates/js/translated/build.js:2919 templates/js/translated/stock.js:2779
+#: templates/js/translated/build.js:2136 templates/js/translated/stock.js:2910
msgid "No user information"
msgstr ""
-#: templates/js/translated/build.js:2934
+#: templates/js/translated/build.js:2151
msgid "group"
msgstr ""
-#: templates/js/translated/build.js:3033
-msgid "No parts allocated for"
+#: templates/js/translated/build.js:2315
+#: templates/js/translated/sales_order.js:1644
+msgid "Edit stock allocation"
msgstr ""
-#: templates/js/translated/company.js:87
+#: templates/js/translated/build.js:2316
+#: templates/js/translated/sales_order.js:1645
+msgid "Delete stock allocation"
+msgstr ""
+
+#: templates/js/translated/build.js:2331
+msgid "Edit Allocation"
+msgstr ""
+
+#: templates/js/translated/build.js:2343
+msgid "Remove Allocation"
+msgstr ""
+
+#: templates/js/translated/build.js:2384
+msgid "build line"
+msgstr ""
+
+#: templates/js/translated/build.js:2385
+msgid "build lines"
+msgstr ""
+
+#: templates/js/translated/build.js:2403
+msgid "No build lines found"
+msgstr ""
+
+#: templates/js/translated/build.js:2433 templates/js/translated/part.js:767
+#: templates/js/translated/part.js:1175
+msgid "Trackable part"
+msgstr ""
+
+#: templates/js/translated/build.js:2468
+msgid "Unit Quantity"
+msgstr ""
+
+#: templates/js/translated/build.js:2517
+#: templates/js/translated/sales_order.js:1906
+msgid "Insufficient stock available"
+msgstr ""
+
+#: templates/js/translated/build.js:2519
+#: templates/js/translated/sales_order.js:1904
+msgid "Sufficient stock available"
+msgstr ""
+
+#: templates/js/translated/build.js:2566
+msgid "Consumable Item"
+msgstr ""
+
+#: templates/js/translated/build.js:2571
+msgid "Tracked item"
+msgstr ""
+
+#: templates/js/translated/build.js:2578
+#: templates/js/translated/sales_order.js:2005
+msgid "Build stock"
+msgstr ""
+
+#: templates/js/translated/build.js:2583 templates/js/translated/stock.js:1779
+msgid "Order stock"
+msgstr ""
+
+#: templates/js/translated/build.js:2587
+#: templates/js/translated/sales_order.js:1999
+msgid "Allocate stock"
+msgstr ""
+
+#: templates/js/translated/build.js:2591
+msgid "Remove stock allocation"
+msgstr ""
+
+#: templates/js/translated/company.js:97
msgid "Add Manufacturer"
msgstr ""
-#: templates/js/translated/company.js:100
-#: templates/js/translated/company.js:202
+#: templates/js/translated/company.js:110
+#: templates/js/translated/company.js:212
msgid "Add Manufacturer Part"
msgstr ""
-#: templates/js/translated/company.js:121
+#: templates/js/translated/company.js:131
msgid "Edit Manufacturer Part"
msgstr ""
-#: templates/js/translated/company.js:190
-#: templates/js/translated/purchase_order.js:94
+#: templates/js/translated/company.js:200
+#: templates/js/translated/purchase_order.js:93
msgid "Add Supplier"
msgstr ""
-#: templates/js/translated/company.js:232
-#: templates/js/translated/purchase_order.js:338
+#: templates/js/translated/company.js:242
+#: templates/js/translated/purchase_order.js:349
msgid "Add Supplier Part"
msgstr ""
-#: templates/js/translated/company.js:333
+#: templates/js/translated/company.js:343
msgid "All selected supplier parts will be deleted"
msgstr ""
-#: templates/js/translated/company.js:349
+#: templates/js/translated/company.js:359
msgid "Delete Supplier Parts"
msgstr ""
-#: templates/js/translated/company.js:457
+#: templates/js/translated/company.js:464
msgid "Add new Company"
msgstr ""
-#: templates/js/translated/company.js:528
+#: templates/js/translated/company.js:535
msgid "Parts Supplied"
msgstr ""
-#: templates/js/translated/company.js:537
+#: templates/js/translated/company.js:544
msgid "Parts Manufactured"
msgstr ""
-#: templates/js/translated/company.js:552
+#: templates/js/translated/company.js:559
msgid "No company information found"
msgstr ""
-#: templates/js/translated/company.js:601
+#: templates/js/translated/company.js:608
msgid "Create New Contact"
msgstr ""
-#: templates/js/translated/company.js:617
-#: templates/js/translated/company.js:740
+#: templates/js/translated/company.js:624
+#: templates/js/translated/company.js:747
msgid "Edit Contact"
msgstr ""
-#: templates/js/translated/company.js:654
+#: templates/js/translated/company.js:661
msgid "All selected contacts will be deleted"
msgstr ""
-#: templates/js/translated/company.js:660
-#: templates/js/translated/company.js:724
+#: templates/js/translated/company.js:667
+#: templates/js/translated/company.js:731
msgid "Role"
msgstr ""
-#: templates/js/translated/company.js:668
+#: templates/js/translated/company.js:675
msgid "Delete Contacts"
msgstr ""
-#: templates/js/translated/company.js:699
+#: templates/js/translated/company.js:706
msgid "No contacts found"
msgstr ""
-#: templates/js/translated/company.js:712
+#: templates/js/translated/company.js:719
msgid "Phone Number"
msgstr ""
-#: templates/js/translated/company.js:718
+#: templates/js/translated/company.js:725
msgid "Email Address"
msgstr ""
-#: templates/js/translated/company.js:744
+#: templates/js/translated/company.js:751
msgid "Delete Contact"
msgstr ""
-#: templates/js/translated/company.js:818
+#: templates/js/translated/company.js:886
+msgid "Create New Address"
+msgstr ""
+
+#: templates/js/translated/company.js:901
+#: templates/js/translated/company.js:1066
+msgid "Edit Address"
+msgstr ""
+
+#: templates/js/translated/company.js:936
+msgid "All selected addresses will be deleted"
+msgstr ""
+
+#: templates/js/translated/company.js:950
+msgid "Delete Addresses"
+msgstr ""
+
+#: templates/js/translated/company.js:977
+msgid "No addresses found"
+msgstr ""
+
+#: templates/js/translated/company.js:1020
+msgid "Postal city"
+msgstr ""
+
+#: templates/js/translated/company.js:1026
+msgid "State/province"
+msgstr ""
+
+#: templates/js/translated/company.js:1038
+msgid "Courier notes"
+msgstr ""
+
+#: templates/js/translated/company.js:1044
+msgid "Internal notes"
+msgstr ""
+
+#: templates/js/translated/company.js:1070
+msgid "Delete Address"
+msgstr ""
+
+#: templates/js/translated/company.js:1143
msgid "All selected manufacturer parts will be deleted"
msgstr ""
-#: templates/js/translated/company.js:833
+#: templates/js/translated/company.js:1158
msgid "Delete Manufacturer Parts"
msgstr ""
-#: templates/js/translated/company.js:867
+#: templates/js/translated/company.js:1192
msgid "All selected parameters will be deleted"
msgstr ""
-#: templates/js/translated/company.js:881
+#: templates/js/translated/company.js:1206
msgid "Delete Parameters"
msgstr ""
-#: templates/js/translated/company.js:917
+#: templates/js/translated/company.js:1222
+#: templates/js/translated/company.js:1510 templates/js/translated/part.js:2213
+msgid "Order parts"
+msgstr ""
+
+#: templates/js/translated/company.js:1239
+msgid "Delete manufacturer parts"
+msgstr ""
+
+#: templates/js/translated/company.js:1271
+msgid "Manufacturer part actions"
+msgstr ""
+
+#: templates/js/translated/company.js:1290
msgid "No manufacturer parts found"
msgstr ""
-#: templates/js/translated/company.js:937
-#: templates/js/translated/company.js:1177 templates/js/translated/part.js:776
-#: templates/js/translated/part.js:1184
+#: templates/js/translated/company.js:1310
+#: templates/js/translated/company.js:1598 templates/js/translated/part.js:775
+#: templates/js/translated/part.js:1183
msgid "Template part"
msgstr ""
-#: templates/js/translated/company.js:941
-#: templates/js/translated/company.js:1181 templates/js/translated/part.js:780
-#: templates/js/translated/part.js:1188
+#: templates/js/translated/company.js:1314
+#: templates/js/translated/company.js:1602 templates/js/translated/part.js:779
+#: templates/js/translated/part.js:1187
msgid "Assembled part"
msgstr ""
-#: templates/js/translated/company.js:1061 templates/js/translated/part.js:1437
+#: templates/js/translated/company.js:1434 templates/js/translated/part.js:1436
msgid "No parameters found"
msgstr ""
-#: templates/js/translated/company.js:1096 templates/js/translated/part.js:1500
+#: templates/js/translated/company.js:1469 templates/js/translated/part.js:1499
msgid "Edit parameter"
msgstr ""
-#: templates/js/translated/company.js:1097 templates/js/translated/part.js:1501
+#: templates/js/translated/company.js:1470 templates/js/translated/part.js:1500
msgid "Delete parameter"
msgstr ""
-#: templates/js/translated/company.js:1114 templates/js/translated/part.js:1407
+#: templates/js/translated/company.js:1487 templates/js/translated/part.js:1406
msgid "Edit Parameter"
msgstr ""
-#: templates/js/translated/company.js:1123 templates/js/translated/part.js:1522
+#: templates/js/translated/company.js:1496 templates/js/translated/part.js:1521
msgid "Delete Parameter"
msgstr ""
-#: templates/js/translated/company.js:1156
+#: templates/js/translated/company.js:1527
+msgid "Delete supplier parts"
+msgstr ""
+
+#: templates/js/translated/company.js:1577
msgid "No supplier parts found"
msgstr ""
-#: templates/js/translated/company.js:1274
+#: templates/js/translated/company.js:1695
msgid "Base Units"
msgstr ""
-#: templates/js/translated/company.js:1304
+#: templates/js/translated/company.js:1725
msgid "Availability"
msgstr ""
-#: templates/js/translated/company.js:1335
+#: templates/js/translated/company.js:1756
msgid "Edit supplier part"
msgstr ""
-#: templates/js/translated/company.js:1336
+#: templates/js/translated/company.js:1757
msgid "Delete supplier part"
msgstr ""
-#: templates/js/translated/company.js:1389
+#: templates/js/translated/company.js:1810
#: templates/js/translated/pricing.js:694
msgid "Delete Price Break"
msgstr ""
-#: templates/js/translated/company.js:1399
+#: templates/js/translated/company.js:1820
#: templates/js/translated/pricing.js:712
msgid "Edit Price Break"
msgstr ""
-#: templates/js/translated/company.js:1414
+#: templates/js/translated/company.js:1835
msgid "No price break information found"
msgstr ""
-#: templates/js/translated/company.js:1443
+#: templates/js/translated/company.js:1864
msgid "Last updated"
msgstr ""
-#: templates/js/translated/company.js:1450
+#: templates/js/translated/company.js:1871
msgid "Edit price break"
msgstr ""
-#: templates/js/translated/company.js:1451
+#: templates/js/translated/company.js:1872
msgid "Delete price break"
msgstr ""
-#: templates/js/translated/filters.js:186
-#: templates/js/translated/filters.js:550
+#: templates/js/translated/filters.js:187
+#: templates/js/translated/filters.js:673
msgid "true"
msgstr ""
-#: templates/js/translated/filters.js:190
-#: templates/js/translated/filters.js:551
+#: templates/js/translated/filters.js:191
+#: templates/js/translated/filters.js:674
msgid "false"
msgstr ""
-#: templates/js/translated/filters.js:214
+#: templates/js/translated/filters.js:215
msgid "Select filter"
msgstr ""
-#: templates/js/translated/filters.js:328
+#: templates/js/translated/filters.js:438
msgid "Print Labels"
msgstr ""
-#: templates/js/translated/filters.js:332
+#: templates/js/translated/filters.js:442
msgid "Print Reports"
msgstr ""
-#: templates/js/translated/filters.js:344
+#: templates/js/translated/filters.js:454
msgid "Download table data"
msgstr ""
-#: templates/js/translated/filters.js:351
+#: templates/js/translated/filters.js:461
msgid "Reload table data"
msgstr ""
-#: templates/js/translated/filters.js:360
+#: templates/js/translated/filters.js:470
msgid "Add new filter"
msgstr ""
-#: templates/js/translated/filters.js:368
+#: templates/js/translated/filters.js:478
msgid "Clear all filters"
msgstr ""
-#: templates/js/translated/filters.js:460
+#: templates/js/translated/filters.js:583
msgid "Create filter"
msgstr ""
@@ -10497,6 +10620,12 @@ msgstr ""
msgid "View operation not allowed"
msgstr ""
+#: templates/js/translated/forms.js:506 templates/js/translated/helpers.js:105
+#: templates/js/translated/part.js:369 templates/js/translated/pricing.js:629
+#: templates/js/translated/stock.js:215 users/models.py:253
+msgid "Delete"
+msgstr ""
+
#: templates/js/translated/forms.js:752
msgid "Keep this form open"
msgstr ""
@@ -10514,23 +10643,23 @@ msgstr ""
msgid "No results found"
msgstr ""
-#: templates/js/translated/forms.js:2071 templates/js/translated/search.js:281
+#: templates/js/translated/forms.js:2071 templates/js/translated/search.js:239
msgid "Searching"
msgstr ""
-#: templates/js/translated/forms.js:2276
+#: templates/js/translated/forms.js:2285
msgid "Clear input"
msgstr ""
-#: templates/js/translated/forms.js:2733
+#: templates/js/translated/forms.js:2742
msgid "File Column"
msgstr ""
-#: templates/js/translated/forms.js:2733
+#: templates/js/translated/forms.js:2742
msgid "Field Name"
msgstr ""
-#: templates/js/translated/forms.js:2745
+#: templates/js/translated/forms.js:2754
msgid "Select Columns"
msgstr ""
@@ -10550,6 +10679,14 @@ msgstr ""
msgid "False"
msgstr ""
+#: templates/js/translated/index.js:99
+msgid "No parts required for builds"
+msgstr ""
+
+#: templates/js/translated/index.js:125
+msgid "Allocated Stock"
+msgstr ""
+
#: templates/js/translated/label.js:58
msgid "Select Printer"
msgstr ""
@@ -10651,7 +10788,7 @@ msgstr ""
#: templates/js/translated/news.js:38
#: templates/js/translated/notification.js:45
-#: templates/js/translated/part.js:1577
+#: templates/js/translated/part.js:1576
msgid "ID"
msgstr ""
@@ -10700,7 +10837,7 @@ msgid "Delete Line"
msgstr ""
#: templates/js/translated/order.js:281
-#: templates/js/translated/purchase_order.js:1958
+#: templates/js/translated/purchase_order.js:1968
msgid "No line items found"
msgstr ""
@@ -10716,363 +10853,355 @@ msgstr ""
msgid "Delete line"
msgstr ""
-#: templates/js/translated/part.js:91
+#: templates/js/translated/part.js:90
msgid "Part Attributes"
msgstr ""
-#: templates/js/translated/part.js:95
+#: templates/js/translated/part.js:94
msgid "Part Creation Options"
msgstr ""
-#: templates/js/translated/part.js:99
+#: templates/js/translated/part.js:98
msgid "Part Duplication Options"
msgstr ""
-#: templates/js/translated/part.js:122
+#: templates/js/translated/part.js:121
msgid "Add Part Category"
msgstr ""
-#: templates/js/translated/part.js:294
+#: templates/js/translated/part.js:293
msgid "Parent part category"
msgstr ""
-#: templates/js/translated/part.js:310 templates/js/translated/stock.js:147
+#: templates/js/translated/part.js:309 templates/js/translated/stock.js:146
msgid "Icon (optional) - Explore all available icons on"
msgstr ""
-#: templates/js/translated/part.js:330
+#: templates/js/translated/part.js:329
msgid "Create Part Category"
msgstr ""
-#: templates/js/translated/part.js:333
+#: templates/js/translated/part.js:332
msgid "Create new category after this one"
msgstr ""
-#: templates/js/translated/part.js:334
+#: templates/js/translated/part.js:333
msgid "Part category created"
msgstr ""
-#: templates/js/translated/part.js:348
+#: templates/js/translated/part.js:347
msgid "Edit Part Category"
msgstr ""
-#: templates/js/translated/part.js:361
+#: templates/js/translated/part.js:360
msgid "Are you sure you want to delete this part category?"
msgstr ""
-#: templates/js/translated/part.js:366
+#: templates/js/translated/part.js:365
msgid "Move to parent category"
msgstr ""
-#: templates/js/translated/part.js:375
+#: templates/js/translated/part.js:374
msgid "Delete Part Category"
msgstr ""
-#: templates/js/translated/part.js:379
+#: templates/js/translated/part.js:378
msgid "Action for parts in this category"
msgstr ""
-#: templates/js/translated/part.js:384
+#: templates/js/translated/part.js:383
msgid "Action for child categories"
msgstr ""
-#: templates/js/translated/part.js:408
+#: templates/js/translated/part.js:407
msgid "Create Part"
msgstr ""
-#: templates/js/translated/part.js:410
+#: templates/js/translated/part.js:409
msgid "Create another part after this one"
msgstr ""
-#: templates/js/translated/part.js:411
+#: templates/js/translated/part.js:410
msgid "Part created successfully"
msgstr ""
-#: templates/js/translated/part.js:439
+#: templates/js/translated/part.js:438
msgid "Edit Part"
msgstr ""
-#: templates/js/translated/part.js:441
+#: templates/js/translated/part.js:440
msgid "Part edited"
msgstr ""
-#: templates/js/translated/part.js:452
+#: templates/js/translated/part.js:451
msgid "Create Part Variant"
msgstr ""
-#: templates/js/translated/part.js:509
+#: templates/js/translated/part.js:508
msgid "Active Part"
msgstr ""
-#: templates/js/translated/part.js:510
+#: templates/js/translated/part.js:509
msgid "Part cannot be deleted as it is currently active"
msgstr ""
-#: templates/js/translated/part.js:524
+#: templates/js/translated/part.js:523
msgid "Deleting this part cannot be reversed"
msgstr ""
-#: templates/js/translated/part.js:526
+#: templates/js/translated/part.js:525
msgid "Any stock items for this part will be deleted"
msgstr ""
-#: templates/js/translated/part.js:527
+#: templates/js/translated/part.js:526
msgid "This part will be removed from any Bills of Material"
msgstr ""
-#: templates/js/translated/part.js:528
+#: templates/js/translated/part.js:527
msgid "All manufacturer and supplier information for this part will be deleted"
msgstr ""
-#: templates/js/translated/part.js:535
+#: templates/js/translated/part.js:534
msgid "Delete Part"
msgstr ""
-#: templates/js/translated/part.js:571
+#: templates/js/translated/part.js:570
msgid "You are subscribed to notifications for this item"
msgstr ""
-#: templates/js/translated/part.js:573
+#: templates/js/translated/part.js:572
msgid "You have subscribed to notifications for this item"
msgstr ""
-#: templates/js/translated/part.js:578
+#: templates/js/translated/part.js:577
msgid "Subscribe to notifications for this item"
msgstr ""
-#: templates/js/translated/part.js:580
+#: templates/js/translated/part.js:579
msgid "You have unsubscribed to notifications for this item"
msgstr ""
-#: templates/js/translated/part.js:597
+#: templates/js/translated/part.js:596
msgid "Validating the BOM will mark each line item as valid"
msgstr ""
-#: templates/js/translated/part.js:607
+#: templates/js/translated/part.js:606
msgid "Validate Bill of Materials"
msgstr ""
-#: templates/js/translated/part.js:610
+#: templates/js/translated/part.js:609
msgid "Validated Bill of Materials"
msgstr ""
-#: templates/js/translated/part.js:635
+#: templates/js/translated/part.js:634
msgid "Copy Bill of Materials"
msgstr ""
-#: templates/js/translated/part.js:663
-#: templates/js/translated/table_filters.js:660
+#: templates/js/translated/part.js:662
+#: templates/js/translated/table_filters.js:682
msgid "Low stock"
msgstr ""
-#: templates/js/translated/part.js:666
+#: templates/js/translated/part.js:665
msgid "No stock available"
msgstr ""
-#: templates/js/translated/part.js:726
+#: templates/js/translated/part.js:725
msgid "Demand"
msgstr ""
-#: templates/js/translated/part.js:749
+#: templates/js/translated/part.js:748
msgid "Unit"
msgstr ""
-#: templates/js/translated/part.js:768 templates/js/translated/part.js:1176
-msgid "Trackable part"
-msgstr ""
-
-#: templates/js/translated/part.js:772 templates/js/translated/part.js:1180
+#: templates/js/translated/part.js:771 templates/js/translated/part.js:1179
msgid "Virtual part"
msgstr ""
-#: templates/js/translated/part.js:784
+#: templates/js/translated/part.js:783
msgid "Subscribed part"
msgstr ""
-#: templates/js/translated/part.js:788
+#: templates/js/translated/part.js:787
msgid "Salable part"
msgstr ""
-#: templates/js/translated/part.js:863
+#: templates/js/translated/part.js:862
msgid "Schedule generation of a new stocktake report."
msgstr ""
-#: templates/js/translated/part.js:863
+#: templates/js/translated/part.js:862
msgid "Once complete, the stocktake report will be available for download."
msgstr ""
-#: templates/js/translated/part.js:871
+#: templates/js/translated/part.js:870
msgid "Generate Stocktake Report"
msgstr ""
-#: templates/js/translated/part.js:875
+#: templates/js/translated/part.js:874
msgid "Stocktake report scheduled"
msgstr ""
-#: templates/js/translated/part.js:1024
+#: templates/js/translated/part.js:1023
msgid "No stocktake information available"
msgstr ""
-#: templates/js/translated/part.js:1082 templates/js/translated/part.js:1118
+#: templates/js/translated/part.js:1081 templates/js/translated/part.js:1117
msgid "Edit Stocktake Entry"
msgstr ""
-#: templates/js/translated/part.js:1086 templates/js/translated/part.js:1128
+#: templates/js/translated/part.js:1085 templates/js/translated/part.js:1127
msgid "Delete Stocktake Entry"
msgstr ""
-#: templates/js/translated/part.js:1255
+#: templates/js/translated/part.js:1254
msgid "No variants found"
msgstr ""
-#: templates/js/translated/part.js:1572
+#: templates/js/translated/part.js:1571
msgid "No part parameter templates found"
msgstr ""
-#: templates/js/translated/part.js:1635
+#: templates/js/translated/part.js:1634
msgid "Edit Part Parameter Template"
msgstr ""
-#: templates/js/translated/part.js:1647
+#: templates/js/translated/part.js:1646
msgid "Any parameters which reference this template will also be deleted"
msgstr ""
-#: templates/js/translated/part.js:1655
+#: templates/js/translated/part.js:1654
msgid "Delete Part Parameter Template"
msgstr ""
-#: templates/js/translated/part.js:1689
-#: templates/js/translated/purchase_order.js:1618
+#: templates/js/translated/part.js:1688
+#: templates/js/translated/purchase_order.js:1633
msgid "No purchase orders found"
msgstr ""
-#: templates/js/translated/part.js:1832
-#: templates/js/translated/purchase_order.js:2121
-#: templates/js/translated/return_order.js:740
-#: templates/js/translated/sales_order.js:1855
+#: templates/js/translated/part.js:1831
+#: templates/js/translated/purchase_order.js:2131
+#: templates/js/translated/return_order.js:752
+#: templates/js/translated/sales_order.js:1867
msgid "This line item is overdue"
msgstr ""
-#: templates/js/translated/part.js:1877
-#: templates/js/translated/purchase_order.js:2188
+#: templates/js/translated/part.js:1876
+#: templates/js/translated/purchase_order.js:2198
msgid "Receive line item"
msgstr ""
-#: templates/js/translated/part.js:1944
+#: templates/js/translated/part.js:1943
msgid "Delete part relationship"
msgstr ""
-#: templates/js/translated/part.js:1966
+#: templates/js/translated/part.js:1965
msgid "Delete Part Relationship"
msgstr ""
-#: templates/js/translated/part.js:2054 templates/js/translated/part.js:2366
+#: templates/js/translated/part.js:2053 templates/js/translated/part.js:2442
msgid "No parts found"
msgstr ""
-#: templates/js/translated/part.js:2192
-msgid "parts"
-msgstr ""
-
-#: templates/js/translated/part.js:2276
-msgid "No category"
-msgstr ""
-
-#: templates/js/translated/part.js:2390 templates/js/translated/part.js:2611
-#: templates/js/translated/stock.js:2417
-msgid "Display as list"
-msgstr ""
-
-#: templates/js/translated/part.js:2406
-msgid "Display as grid"
-msgstr ""
-
-#: templates/js/translated/part.js:2472
+#: templates/js/translated/part.js:2174
msgid "Set the part category for the selected parts"
msgstr ""
-#: templates/js/translated/part.js:2477
+#: templates/js/translated/part.js:2179
msgid "Set Part Category"
msgstr ""
+#: templates/js/translated/part.js:2204
+msgid "Set category"
+msgstr ""
+
+#: templates/js/translated/part.js:2259
+msgid "parts"
+msgstr ""
+
+#: templates/js/translated/part.js:2352
+msgid "No category"
+msgstr ""
+
+#: templates/js/translated/part.js:2466 templates/js/translated/part.js:2596
+#: templates/js/translated/stock.js:2548
+msgid "Display as list"
+msgstr ""
+
#: templates/js/translated/part.js:2482
-msgid "Select Part Category"
+msgid "Display as grid"
msgstr ""
-#: templates/js/translated/part.js:2495
-msgid "Category is required"
-msgstr ""
-
-#: templates/js/translated/part.js:2595
+#: templates/js/translated/part.js:2580
msgid "No subcategories found"
msgstr ""
-#: templates/js/translated/part.js:2631 templates/js/translated/stock.js:2437
+#: templates/js/translated/part.js:2616 templates/js/translated/stock.js:2568
msgid "Display as tree"
msgstr ""
-#: templates/js/translated/part.js:2711
+#: templates/js/translated/part.js:2696
msgid "Load Subcategories"
msgstr ""
-#: templates/js/translated/part.js:2727
+#: templates/js/translated/part.js:2712
msgid "Subscribed category"
msgstr ""
-#: templates/js/translated/part.js:2807
+#: templates/js/translated/part.js:2792
msgid "No test templates matching query"
msgstr ""
-#: templates/js/translated/part.js:2858 templates/js/translated/stock.js:1380
+#: templates/js/translated/part.js:2843 templates/js/translated/stock.js:1379
msgid "Edit test result"
msgstr ""
-#: templates/js/translated/part.js:2859 templates/js/translated/stock.js:1381
-#: templates/js/translated/stock.js:1643
+#: templates/js/translated/part.js:2844 templates/js/translated/stock.js:1380
+#: templates/js/translated/stock.js:1642
msgid "Delete test result"
msgstr ""
-#: templates/js/translated/part.js:2863
+#: templates/js/translated/part.js:2848
msgid "This test is defined for a parent part"
msgstr ""
-#: templates/js/translated/part.js:2879
+#: templates/js/translated/part.js:2864
msgid "Edit Test Result Template"
msgstr ""
-#: templates/js/translated/part.js:2893
+#: templates/js/translated/part.js:2878
msgid "Delete Test Result Template"
msgstr ""
-#: templates/js/translated/part.js:2972 templates/js/translated/part.js:2973
+#: templates/js/translated/part.js:2957 templates/js/translated/part.js:2958
msgid "No date specified"
msgstr ""
-#: templates/js/translated/part.js:2975
+#: templates/js/translated/part.js:2960
msgid "Specified date is in the past"
msgstr ""
-#: templates/js/translated/part.js:2981
+#: templates/js/translated/part.js:2966
msgid "Speculative"
msgstr ""
-#: templates/js/translated/part.js:3031
+#: templates/js/translated/part.js:3016
msgid "No scheduling information available for this part"
msgstr ""
-#: templates/js/translated/part.js:3037
+#: templates/js/translated/part.js:3022
msgid "Error fetching scheduling information for this part"
msgstr ""
-#: templates/js/translated/part.js:3133
+#: templates/js/translated/part.js:3118
msgid "Scheduled Stock Quantities"
msgstr ""
-#: templates/js/translated/part.js:3149
+#: templates/js/translated/part.js:3134
msgid "Maximum Quantity"
msgstr ""
-#: templates/js/translated/part.js:3194
+#: templates/js/translated/part.js:3179
msgid "Minimum Stock Level"
msgstr ""
@@ -11168,234 +11297,234 @@ msgstr ""
msgid "Variant Part"
msgstr ""
-#: templates/js/translated/purchase_order.js:155
+#: templates/js/translated/purchase_order.js:166
msgid "Select purchase order to duplicate"
msgstr ""
-#: templates/js/translated/purchase_order.js:162
+#: templates/js/translated/purchase_order.js:173
msgid "Duplicate Line Items"
msgstr ""
-#: templates/js/translated/purchase_order.js:163
+#: templates/js/translated/purchase_order.js:174
msgid "Duplicate all line items from the selected order"
msgstr ""
-#: templates/js/translated/purchase_order.js:170
+#: templates/js/translated/purchase_order.js:181
msgid "Duplicate Extra Lines"
msgstr ""
-#: templates/js/translated/purchase_order.js:171
+#: templates/js/translated/purchase_order.js:182
msgid "Duplicate extra line items from the selected order"
msgstr ""
-#: templates/js/translated/purchase_order.js:192
+#: templates/js/translated/purchase_order.js:203
msgid "Edit Purchase Order"
msgstr ""
-#: templates/js/translated/purchase_order.js:209
+#: templates/js/translated/purchase_order.js:220
msgid "Duplication Options"
msgstr ""
-#: templates/js/translated/purchase_order.js:436
+#: templates/js/translated/purchase_order.js:447
msgid "Complete Purchase Order"
msgstr ""
-#: templates/js/translated/purchase_order.js:453
-#: templates/js/translated/return_order.js:195
-#: templates/js/translated/sales_order.js:485
+#: templates/js/translated/purchase_order.js:464
+#: templates/js/translated/return_order.js:207
+#: templates/js/translated/sales_order.js:497
msgid "Mark this order as complete?"
msgstr ""
-#: templates/js/translated/purchase_order.js:459
+#: templates/js/translated/purchase_order.js:470
msgid "All line items have been received"
msgstr ""
-#: templates/js/translated/purchase_order.js:464
+#: templates/js/translated/purchase_order.js:475
msgid "This order has line items which have not been marked as received."
msgstr ""
-#: templates/js/translated/purchase_order.js:465
-#: templates/js/translated/sales_order.js:499
+#: templates/js/translated/purchase_order.js:476
+#: templates/js/translated/sales_order.js:511
msgid "Completing this order means that the order and line items will no longer be editable."
msgstr ""
-#: templates/js/translated/purchase_order.js:488
+#: templates/js/translated/purchase_order.js:499
msgid "Cancel Purchase Order"
msgstr ""
-#: templates/js/translated/purchase_order.js:493
+#: templates/js/translated/purchase_order.js:504
msgid "Are you sure you wish to cancel this purchase order?"
msgstr ""
-#: templates/js/translated/purchase_order.js:499
+#: templates/js/translated/purchase_order.js:510
msgid "This purchase order can not be cancelled"
msgstr ""
-#: templates/js/translated/purchase_order.js:520
-#: templates/js/translated/return_order.js:149
+#: templates/js/translated/purchase_order.js:531
+#: templates/js/translated/return_order.js:161
msgid "After placing this order, line items will no longer be editable."
msgstr ""
-#: templates/js/translated/purchase_order.js:525
+#: templates/js/translated/purchase_order.js:536
msgid "Issue Purchase Order"
msgstr ""
-#: templates/js/translated/purchase_order.js:617
+#: templates/js/translated/purchase_order.js:628
msgid "At least one purchaseable part must be selected"
msgstr ""
-#: templates/js/translated/purchase_order.js:642
+#: templates/js/translated/purchase_order.js:653
msgid "Quantity to order"
msgstr ""
-#: templates/js/translated/purchase_order.js:651
+#: templates/js/translated/purchase_order.js:662
msgid "New supplier part"
msgstr ""
-#: templates/js/translated/purchase_order.js:669
+#: templates/js/translated/purchase_order.js:680
msgid "New purchase order"
msgstr ""
-#: templates/js/translated/purchase_order.js:701
+#: templates/js/translated/purchase_order.js:712
msgid "Add to purchase order"
msgstr ""
-#: templates/js/translated/purchase_order.js:845
+#: templates/js/translated/purchase_order.js:860
msgid "No matching supplier parts"
msgstr ""
-#: templates/js/translated/purchase_order.js:864
+#: templates/js/translated/purchase_order.js:879
msgid "No matching purchase orders"
msgstr ""
-#: templates/js/translated/purchase_order.js:1043
+#: templates/js/translated/purchase_order.js:1058
msgid "Select Line Items"
msgstr ""
-#: templates/js/translated/purchase_order.js:1044
-#: templates/js/translated/return_order.js:480
+#: templates/js/translated/purchase_order.js:1059
+#: templates/js/translated/return_order.js:492
msgid "At least one line item must be selected"
msgstr ""
-#: templates/js/translated/purchase_order.js:1074
+#: templates/js/translated/purchase_order.js:1089
msgid "Received Quantity"
msgstr ""
-#: templates/js/translated/purchase_order.js:1085
+#: templates/js/translated/purchase_order.js:1100
msgid "Quantity to receive"
msgstr ""
-#: templates/js/translated/purchase_order.js:1161
+#: templates/js/translated/purchase_order.js:1176
msgid "Stock Status"
msgstr ""
-#: templates/js/translated/purchase_order.js:1175
+#: templates/js/translated/purchase_order.js:1190
msgid "Add barcode"
msgstr ""
-#: templates/js/translated/purchase_order.js:1176
+#: templates/js/translated/purchase_order.js:1191
msgid "Remove barcode"
msgstr ""
-#: templates/js/translated/purchase_order.js:1179
+#: templates/js/translated/purchase_order.js:1194
msgid "Specify location"
msgstr ""
-#: templates/js/translated/purchase_order.js:1187
+#: templates/js/translated/purchase_order.js:1202
msgid "Add batch code"
msgstr ""
-#: templates/js/translated/purchase_order.js:1198
+#: templates/js/translated/purchase_order.js:1213
msgid "Add serial numbers"
msgstr ""
-#: templates/js/translated/purchase_order.js:1250
+#: templates/js/translated/purchase_order.js:1265
msgid "Serials"
msgstr ""
-#: templates/js/translated/purchase_order.js:1275
+#: templates/js/translated/purchase_order.js:1290
msgid "Order Code"
msgstr ""
-#: templates/js/translated/purchase_order.js:1277
+#: templates/js/translated/purchase_order.js:1292
msgid "Quantity to Receive"
msgstr ""
-#: templates/js/translated/purchase_order.js:1299
-#: templates/js/translated/return_order.js:545
+#: templates/js/translated/purchase_order.js:1314
+#: templates/js/translated/return_order.js:557
msgid "Confirm receipt of items"
msgstr ""
-#: templates/js/translated/purchase_order.js:1300
+#: templates/js/translated/purchase_order.js:1315
msgid "Receive Purchase Order Items"
msgstr ""
-#: templates/js/translated/purchase_order.js:1368
+#: templates/js/translated/purchase_order.js:1383
msgid "Scan Item Barcode"
msgstr ""
-#: templates/js/translated/purchase_order.js:1369
+#: templates/js/translated/purchase_order.js:1384
msgid "Scan barcode on incoming item (must not match any existing stock items)"
msgstr ""
-#: templates/js/translated/purchase_order.js:1383
+#: templates/js/translated/purchase_order.js:1398
msgid "Invalid barcode data"
msgstr ""
-#: templates/js/translated/purchase_order.js:1645
-#: templates/js/translated/return_order.js:274
-#: templates/js/translated/sales_order.js:762
-#: templates/js/translated/sales_order.js:986
+#: templates/js/translated/purchase_order.js:1660
+#: templates/js/translated/return_order.js:286
+#: templates/js/translated/sales_order.js:774
+#: templates/js/translated/sales_order.js:998
msgid "Order is overdue"
msgstr ""
-#: templates/js/translated/purchase_order.js:1707
-#: templates/js/translated/return_order.js:342
-#: templates/js/translated/sales_order.js:839
-#: templates/js/translated/sales_order.js:999
+#: templates/js/translated/purchase_order.js:1722
+#: templates/js/translated/return_order.js:354
+#: templates/js/translated/sales_order.js:851
+#: templates/js/translated/sales_order.js:1011
msgid "Items"
msgstr ""
-#: templates/js/translated/purchase_order.js:1806
+#: templates/js/translated/purchase_order.js:1821
msgid "All selected Line items will be deleted"
msgstr ""
-#: templates/js/translated/purchase_order.js:1824
+#: templates/js/translated/purchase_order.js:1839
msgid "Delete selected Line items?"
msgstr ""
-#: templates/js/translated/purchase_order.js:1884
-#: templates/js/translated/sales_order.js:2047
+#: templates/js/translated/purchase_order.js:1894
+#: templates/js/translated/sales_order.js:2059
msgid "Duplicate Line Item"
msgstr ""
-#: templates/js/translated/purchase_order.js:1899
-#: templates/js/translated/return_order.js:464
-#: templates/js/translated/return_order.js:653
-#: templates/js/translated/sales_order.js:2060
+#: templates/js/translated/purchase_order.js:1909
+#: templates/js/translated/return_order.js:476
+#: templates/js/translated/return_order.js:665
+#: templates/js/translated/sales_order.js:2072
msgid "Edit Line Item"
msgstr ""
-#: templates/js/translated/purchase_order.js:1910
-#: templates/js/translated/return_order.js:666
-#: templates/js/translated/sales_order.js:2071
+#: templates/js/translated/purchase_order.js:1920
+#: templates/js/translated/return_order.js:678
+#: templates/js/translated/sales_order.js:2083
msgid "Delete Line Item"
msgstr ""
-#: templates/js/translated/purchase_order.js:2192
-#: templates/js/translated/sales_order.js:2001
+#: templates/js/translated/purchase_order.js:2202
+#: templates/js/translated/sales_order.js:2013
msgid "Duplicate line item"
msgstr ""
-#: templates/js/translated/purchase_order.js:2193
-#: templates/js/translated/return_order.js:785
-#: templates/js/translated/sales_order.js:2002
+#: templates/js/translated/purchase_order.js:2203
+#: templates/js/translated/return_order.js:797
+#: templates/js/translated/sales_order.js:2014
msgid "Edit line item"
msgstr ""
-#: templates/js/translated/purchase_order.js:2194
-#: templates/js/translated/return_order.js:789
-#: templates/js/translated/sales_order.js:2008
+#: templates/js/translated/purchase_order.js:2204
+#: templates/js/translated/return_order.js:801
+#: templates/js/translated/sales_order.js:2020
msgid "Delete line item"
msgstr ""
@@ -11424,941 +11553,973 @@ msgstr ""
msgid "Add Customer"
msgstr ""
-#: templates/js/translated/return_order.js:119
+#: templates/js/translated/return_order.js:131
msgid "Create Return Order"
msgstr ""
-#: templates/js/translated/return_order.js:134
+#: templates/js/translated/return_order.js:146
msgid "Edit Return Order"
msgstr ""
-#: templates/js/translated/return_order.js:154
+#: templates/js/translated/return_order.js:166
msgid "Issue Return Order"
msgstr ""
-#: templates/js/translated/return_order.js:171
+#: templates/js/translated/return_order.js:183
msgid "Are you sure you wish to cancel this Return Order?"
msgstr ""
-#: templates/js/translated/return_order.js:178
+#: templates/js/translated/return_order.js:190
msgid "Cancel Return Order"
msgstr ""
-#: templates/js/translated/return_order.js:203
+#: templates/js/translated/return_order.js:215
msgid "Complete Return Order"
msgstr ""
-#: templates/js/translated/return_order.js:251
+#: templates/js/translated/return_order.js:263
msgid "No return orders found"
msgstr ""
-#: templates/js/translated/return_order.js:288
-#: templates/js/translated/sales_order.js:776
+#: templates/js/translated/return_order.js:300
+#: templates/js/translated/sales_order.js:788
msgid "Invalid Customer"
msgstr ""
-#: templates/js/translated/return_order.js:546
+#: templates/js/translated/return_order.js:558
msgid "Receive Return Order Items"
msgstr ""
-#: templates/js/translated/return_order.js:677
-#: templates/js/translated/sales_order.js:2207
+#: templates/js/translated/return_order.js:689
+#: templates/js/translated/sales_order.js:2219
msgid "No matching line items"
msgstr ""
-#: templates/js/translated/return_order.js:782
+#: templates/js/translated/return_order.js:794
msgid "Mark item as received"
msgstr ""
-#: templates/js/translated/sales_order.js:146
+#: templates/js/translated/sales_order.js:158
msgid "Create Sales Order"
msgstr ""
-#: templates/js/translated/sales_order.js:161
+#: templates/js/translated/sales_order.js:173
msgid "Edit Sales Order"
msgstr ""
-#: templates/js/translated/sales_order.js:276
+#: templates/js/translated/sales_order.js:288
msgid "No stock items have been allocated to this shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:281
+#: templates/js/translated/sales_order.js:293
msgid "The following stock items will be shipped"
msgstr ""
-#: templates/js/translated/sales_order.js:321
+#: templates/js/translated/sales_order.js:333
msgid "Complete Shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:345
+#: templates/js/translated/sales_order.js:357
msgid "Confirm Shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:401
+#: templates/js/translated/sales_order.js:413
msgid "No pending shipments found"
msgstr ""
-#: templates/js/translated/sales_order.js:405
+#: templates/js/translated/sales_order.js:417
msgid "No stock items have been allocated to pending shipments"
msgstr ""
-#: templates/js/translated/sales_order.js:415
+#: templates/js/translated/sales_order.js:427
msgid "Complete Shipments"
msgstr ""
-#: templates/js/translated/sales_order.js:437
+#: templates/js/translated/sales_order.js:449
msgid "Skip"
msgstr ""
-#: templates/js/translated/sales_order.js:498
+#: templates/js/translated/sales_order.js:510
msgid "This order has line items which have not been completed."
msgstr ""
-#: templates/js/translated/sales_order.js:520
+#: templates/js/translated/sales_order.js:532
msgid "Issue this Sales Order?"
msgstr ""
-#: templates/js/translated/sales_order.js:525
+#: templates/js/translated/sales_order.js:537
msgid "Issue Sales Order"
msgstr ""
-#: templates/js/translated/sales_order.js:544
+#: templates/js/translated/sales_order.js:556
msgid "Cancel Sales Order"
msgstr ""
-#: templates/js/translated/sales_order.js:549
+#: templates/js/translated/sales_order.js:561
msgid "Cancelling this order means that the order will no longer be editable."
msgstr ""
-#: templates/js/translated/sales_order.js:603
+#: templates/js/translated/sales_order.js:615
msgid "Create New Shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:713
+#: templates/js/translated/sales_order.js:725
msgid "No sales orders found"
msgstr ""
-#: templates/js/translated/sales_order.js:896
+#: templates/js/translated/sales_order.js:908
msgid "Edit shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:899
+#: templates/js/translated/sales_order.js:911
msgid "Complete shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:904
+#: templates/js/translated/sales_order.js:916
msgid "Delete shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:921
+#: templates/js/translated/sales_order.js:933
msgid "Edit Shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:936
+#: templates/js/translated/sales_order.js:948
msgid "Delete Shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:969
+#: templates/js/translated/sales_order.js:981
msgid "No matching shipments found"
msgstr ""
-#: templates/js/translated/sales_order.js:994
+#: templates/js/translated/sales_order.js:1006
msgid "Shipment Reference"
msgstr ""
-#: templates/js/translated/sales_order.js:1018
-#: templates/js/translated/sales_order.js:1515
+#: templates/js/translated/sales_order.js:1030
+#: templates/js/translated/sales_order.js:1527
msgid "Not shipped"
msgstr ""
-#: templates/js/translated/sales_order.js:1036
+#: templates/js/translated/sales_order.js:1048
msgid "Tracking"
msgstr ""
-#: templates/js/translated/sales_order.js:1040
+#: templates/js/translated/sales_order.js:1052
msgid "Invoice"
msgstr ""
-#: templates/js/translated/sales_order.js:1207
+#: templates/js/translated/sales_order.js:1219
msgid "Add Shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:1258
+#: templates/js/translated/sales_order.js:1270
msgid "Confirm stock allocation"
msgstr ""
-#: templates/js/translated/sales_order.js:1259
+#: templates/js/translated/sales_order.js:1271
msgid "Allocate Stock Items to Sales Order"
msgstr ""
-#: templates/js/translated/sales_order.js:1463
+#: templates/js/translated/sales_order.js:1475
msgid "No sales order allocations found"
msgstr ""
-#: templates/js/translated/sales_order.js:1555
+#: templates/js/translated/sales_order.js:1567
msgid "Edit Stock Allocation"
msgstr ""
-#: templates/js/translated/sales_order.js:1569
+#: templates/js/translated/sales_order.js:1581
msgid "Confirm Delete Operation"
msgstr ""
-#: templates/js/translated/sales_order.js:1570
+#: templates/js/translated/sales_order.js:1582
msgid "Delete Stock Allocation"
msgstr ""
-#: templates/js/translated/sales_order.js:1609
-#: templates/js/translated/sales_order.js:1696
-#: templates/js/translated/stock.js:1688
+#: templates/js/translated/sales_order.js:1621
+#: templates/js/translated/sales_order.js:1708
+#: templates/js/translated/stock.js:1687
msgid "Shipped to customer"
msgstr ""
-#: templates/js/translated/sales_order.js:1617
-#: templates/js/translated/sales_order.js:1705
+#: templates/js/translated/sales_order.js:1629
+#: templates/js/translated/sales_order.js:1717
msgid "Stock location not specified"
msgstr ""
-#: templates/js/translated/sales_order.js:1985
+#: templates/js/translated/sales_order.js:1997
msgid "Allocate serial numbers"
msgstr ""
-#: templates/js/translated/sales_order.js:1989
+#: templates/js/translated/sales_order.js:2001
msgid "Purchase stock"
msgstr ""
-#: templates/js/translated/sales_order.js:1998
-#: templates/js/translated/sales_order.js:2185
+#: templates/js/translated/sales_order.js:2010
+#: templates/js/translated/sales_order.js:2197
msgid "Calculate price"
msgstr ""
-#: templates/js/translated/sales_order.js:2012
+#: templates/js/translated/sales_order.js:2024
msgid "Cannot be deleted as items have been shipped"
msgstr ""
-#: templates/js/translated/sales_order.js:2015
+#: templates/js/translated/sales_order.js:2027
msgid "Cannot be deleted as items have been allocated"
msgstr ""
-#: templates/js/translated/sales_order.js:2086
+#: templates/js/translated/sales_order.js:2098
msgid "Allocate Serial Numbers"
msgstr ""
-#: templates/js/translated/sales_order.js:2193
+#: templates/js/translated/sales_order.js:2205
msgid "Update Unit Price"
msgstr ""
-#: templates/js/translated/search.js:312
+#: templates/js/translated/search.js:270
msgid "No results"
msgstr ""
-#: templates/js/translated/search.js:334 templates/search.html:25
+#: templates/js/translated/search.js:292 templates/search.html:25
msgid "Enter search query"
msgstr ""
-#: templates/js/translated/search.js:384
+#: templates/js/translated/search.js:342
msgid "result"
msgstr ""
-#: templates/js/translated/search.js:384
+#: templates/js/translated/search.js:342
msgid "results"
msgstr ""
-#: templates/js/translated/search.js:394
+#: templates/js/translated/search.js:352
msgid "Minimize results"
msgstr ""
-#: templates/js/translated/search.js:397
+#: templates/js/translated/search.js:355
msgid "Remove results"
msgstr ""
-#: templates/js/translated/stock.js:98
+#: templates/js/translated/stock.js:97
msgid "Serialize Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:129
+#: templates/js/translated/stock.js:128
msgid "Confirm Stock Serialization"
msgstr ""
-#: templates/js/translated/stock.js:138
+#: templates/js/translated/stock.js:137
msgid "Parent stock location"
msgstr ""
-#: templates/js/translated/stock.js:173
+#: templates/js/translated/stock.js:172
msgid "Edit Stock Location"
msgstr ""
-#: templates/js/translated/stock.js:188
+#: templates/js/translated/stock.js:187
msgid "New Stock Location"
msgstr ""
-#: templates/js/translated/stock.js:190
+#: templates/js/translated/stock.js:189
msgid "Create another location after this one"
msgstr ""
-#: templates/js/translated/stock.js:191
+#: templates/js/translated/stock.js:190
msgid "Stock location created"
msgstr ""
-#: templates/js/translated/stock.js:205
+#: templates/js/translated/stock.js:204
msgid "Are you sure you want to delete this stock location?"
msgstr ""
-#: templates/js/translated/stock.js:212
+#: templates/js/translated/stock.js:211
msgid "Move to parent stock location"
msgstr ""
-#: templates/js/translated/stock.js:221
+#: templates/js/translated/stock.js:220
msgid "Delete Stock Location"
msgstr ""
-#: templates/js/translated/stock.js:225
+#: templates/js/translated/stock.js:224
msgid "Action for stock items in this stock location"
msgstr ""
-#: templates/js/translated/stock.js:230
+#: templates/js/translated/stock.js:229
msgid "Action for sub-locations"
msgstr ""
-#: templates/js/translated/stock.js:284
+#: templates/js/translated/stock.js:283
msgid "This part cannot be serialized"
msgstr ""
-#: templates/js/translated/stock.js:320
+#: templates/js/translated/stock.js:319
msgid "Add given quantity as packs instead of individual items"
msgstr ""
-#: templates/js/translated/stock.js:329
+#: templates/js/translated/stock.js:328
msgid "Enter initial quantity for this stock item"
msgstr ""
-#: templates/js/translated/stock.js:335
+#: templates/js/translated/stock.js:334
msgid "Enter serial numbers for new stock (or leave blank)"
msgstr ""
-#: templates/js/translated/stock.js:406
+#: templates/js/translated/stock.js:405
msgid "Stock item duplicated"
msgstr ""
-#: templates/js/translated/stock.js:426
+#: templates/js/translated/stock.js:425
msgid "Duplicate Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:442
+#: templates/js/translated/stock.js:441
msgid "Are you sure you want to delete this stock item?"
msgstr ""
-#: templates/js/translated/stock.js:447
+#: templates/js/translated/stock.js:446
msgid "Delete Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:468
+#: templates/js/translated/stock.js:467
msgid "Edit Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:510
+#: templates/js/translated/stock.js:509
msgid "Create another item after this one"
msgstr ""
-#: templates/js/translated/stock.js:522
+#: templates/js/translated/stock.js:521
msgid "Created new stock item"
msgstr ""
-#: templates/js/translated/stock.js:535
+#: templates/js/translated/stock.js:534
msgid "Created multiple stock items"
msgstr ""
-#: templates/js/translated/stock.js:560
+#: templates/js/translated/stock.js:559
msgid "Find Serial Number"
msgstr ""
-#: templates/js/translated/stock.js:564 templates/js/translated/stock.js:565
+#: templates/js/translated/stock.js:563 templates/js/translated/stock.js:564
msgid "Enter serial number"
msgstr ""
-#: templates/js/translated/stock.js:581
+#: templates/js/translated/stock.js:580
msgid "Enter a serial number"
msgstr ""
-#: templates/js/translated/stock.js:601
+#: templates/js/translated/stock.js:600
msgid "No matching serial number"
msgstr ""
-#: templates/js/translated/stock.js:610
+#: templates/js/translated/stock.js:609
msgid "More than one matching result found"
msgstr ""
-#: templates/js/translated/stock.js:718
+#: templates/js/translated/stock.js:717
msgid "Confirm stock assignment"
msgstr ""
-#: templates/js/translated/stock.js:719
+#: templates/js/translated/stock.js:718
msgid "Assign Stock to Customer"
msgstr ""
-#: templates/js/translated/stock.js:796
+#: templates/js/translated/stock.js:795
msgid "Warning: Merge operation cannot be reversed"
msgstr ""
-#: templates/js/translated/stock.js:797
+#: templates/js/translated/stock.js:796
msgid "Some information will be lost when merging stock items"
msgstr ""
-#: templates/js/translated/stock.js:799
+#: templates/js/translated/stock.js:798
msgid "Stock transaction history will be deleted for merged items"
msgstr ""
-#: templates/js/translated/stock.js:800
+#: templates/js/translated/stock.js:799
msgid "Supplier part information will be deleted for merged items"
msgstr ""
-#: templates/js/translated/stock.js:891
+#: templates/js/translated/stock.js:890
msgid "Confirm stock item merge"
msgstr ""
-#: templates/js/translated/stock.js:892
+#: templates/js/translated/stock.js:891
msgid "Merge Stock Items"
msgstr ""
-#: templates/js/translated/stock.js:987
+#: templates/js/translated/stock.js:986
msgid "Transfer Stock"
msgstr ""
-#: templates/js/translated/stock.js:988
+#: templates/js/translated/stock.js:987
msgid "Move"
msgstr ""
-#: templates/js/translated/stock.js:994
+#: templates/js/translated/stock.js:993
msgid "Count Stock"
msgstr ""
-#: templates/js/translated/stock.js:995
+#: templates/js/translated/stock.js:994
msgid "Count"
msgstr ""
-#: templates/js/translated/stock.js:999
+#: templates/js/translated/stock.js:998
msgid "Remove Stock"
msgstr ""
-#: templates/js/translated/stock.js:1000
+#: templates/js/translated/stock.js:999
msgid "Take"
msgstr ""
-#: templates/js/translated/stock.js:1004
+#: templates/js/translated/stock.js:1003
msgid "Add Stock"
msgstr ""
-#: templates/js/translated/stock.js:1005 users/models.py:243
+#: templates/js/translated/stock.js:1004 users/models.py:249
msgid "Add"
msgstr ""
-#: templates/js/translated/stock.js:1009
+#: templates/js/translated/stock.js:1008
msgid "Delete Stock"
msgstr ""
-#: templates/js/translated/stock.js:1106
+#: templates/js/translated/stock.js:1105
msgid "Quantity cannot be adjusted for serialized stock"
msgstr ""
-#: templates/js/translated/stock.js:1106
+#: templates/js/translated/stock.js:1105
msgid "Specify stock quantity"
msgstr ""
-#: templates/js/translated/stock.js:1140
+#: templates/js/translated/stock.js:1139 templates/js/translated/stock.js:3151
msgid "Select Stock Items"
msgstr ""
-#: templates/js/translated/stock.js:1141
-msgid "You must select at least one available stock item"
+#: templates/js/translated/stock.js:1140
+msgid "Select at least one available stock item"
msgstr ""
-#: templates/js/translated/stock.js:1168
+#: templates/js/translated/stock.js:1167
msgid "Confirm stock adjustment"
msgstr ""
-#: templates/js/translated/stock.js:1304
+#: templates/js/translated/stock.js:1303
msgid "PASS"
msgstr ""
-#: templates/js/translated/stock.js:1306
+#: templates/js/translated/stock.js:1305
msgid "FAIL"
msgstr ""
-#: templates/js/translated/stock.js:1311
+#: templates/js/translated/stock.js:1310
msgid "NO RESULT"
msgstr ""
-#: templates/js/translated/stock.js:1373
+#: templates/js/translated/stock.js:1372
msgid "Pass test"
msgstr ""
-#: templates/js/translated/stock.js:1376
+#: templates/js/translated/stock.js:1375
msgid "Add test result"
msgstr ""
-#: templates/js/translated/stock.js:1400
+#: templates/js/translated/stock.js:1399
msgid "No test results found"
msgstr ""
-#: templates/js/translated/stock.js:1464
+#: templates/js/translated/stock.js:1463
msgid "Test Date"
msgstr ""
-#: templates/js/translated/stock.js:1626
+#: templates/js/translated/stock.js:1625
msgid "Edit Test Result"
msgstr ""
-#: templates/js/translated/stock.js:1648
+#: templates/js/translated/stock.js:1647
msgid "Delete Test Result"
msgstr ""
-#: templates/js/translated/stock.js:1680
+#: templates/js/translated/stock.js:1679
msgid "In production"
msgstr ""
-#: templates/js/translated/stock.js:1684
+#: templates/js/translated/stock.js:1683
msgid "Installed in Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:1692
+#: templates/js/translated/stock.js:1691
msgid "Assigned to Sales Order"
msgstr ""
-#: templates/js/translated/stock.js:1698
+#: templates/js/translated/stock.js:1697
msgid "No stock location set"
msgstr ""
-#: templates/js/translated/stock.js:1746
+#: templates/js/translated/stock.js:1753
+msgid "Change stock status"
+msgstr ""
+
+#: templates/js/translated/stock.js:1762
+msgid "Merge stock"
+msgstr ""
+
+#: templates/js/translated/stock.js:1811
+msgid "Delete stock"
+msgstr ""
+
+#: templates/js/translated/stock.js:1866
msgid "stock items"
msgstr ""
-#: templates/js/translated/stock.js:1850
+#: templates/js/translated/stock.js:1871
+msgid "Scan to location"
+msgstr ""
+
+#: templates/js/translated/stock.js:1882
+msgid "Stock Actions"
+msgstr ""
+
+#: templates/js/translated/stock.js:1929
+msgid "Load installed items"
+msgstr ""
+
+#: templates/js/translated/stock.js:2007
msgid "Stock item is in production"
msgstr ""
-#: templates/js/translated/stock.js:1855
+#: templates/js/translated/stock.js:2012
msgid "Stock item assigned to sales order"
msgstr ""
-#: templates/js/translated/stock.js:1858
+#: templates/js/translated/stock.js:2015
msgid "Stock item assigned to customer"
msgstr ""
-#: templates/js/translated/stock.js:1861
+#: templates/js/translated/stock.js:2018
msgid "Serialized stock item has been allocated"
msgstr ""
-#: templates/js/translated/stock.js:1863
+#: templates/js/translated/stock.js:2020
msgid "Stock item has been fully allocated"
msgstr ""
-#: templates/js/translated/stock.js:1865
+#: templates/js/translated/stock.js:2022
msgid "Stock item has been partially allocated"
msgstr ""
-#: templates/js/translated/stock.js:1868
+#: templates/js/translated/stock.js:2025
msgid "Stock item has been installed in another item"
msgstr ""
-#: templates/js/translated/stock.js:1870
+#: templates/js/translated/stock.js:2027
msgid "Stock item has been consumed by a build order"
msgstr ""
-#: templates/js/translated/stock.js:1874
+#: templates/js/translated/stock.js:2031
msgid "Stock item has expired"
msgstr ""
-#: templates/js/translated/stock.js:1876
+#: templates/js/translated/stock.js:2033
msgid "Stock item will expire soon"
msgstr ""
-#: templates/js/translated/stock.js:1881
+#: templates/js/translated/stock.js:2038
msgid "Stock item has been rejected"
msgstr ""
-#: templates/js/translated/stock.js:1883
+#: templates/js/translated/stock.js:2040
msgid "Stock item is lost"
msgstr ""
-#: templates/js/translated/stock.js:1885
+#: templates/js/translated/stock.js:2042
msgid "Stock item is destroyed"
msgstr ""
-#: templates/js/translated/stock.js:1889
-#: templates/js/translated/table_filters.js:296
+#: templates/js/translated/stock.js:2046
+#: templates/js/translated/table_filters.js:302
msgid "Depleted"
msgstr ""
-#: templates/js/translated/stock.js:2031
+#: templates/js/translated/stock.js:2188
msgid "Supplier part not specified"
msgstr ""
-#: templates/js/translated/stock.js:2078
+#: templates/js/translated/stock.js:2235
msgid "Stock Value"
msgstr ""
-#: templates/js/translated/stock.js:2170
+#: templates/js/translated/stock.js:2358
msgid "No stock items matching query"
msgstr ""
-#: templates/js/translated/stock.js:2319
+#: templates/js/translated/stock.js:2450
msgid "stock locations"
msgstr ""
-#: templates/js/translated/stock.js:2476
+#: templates/js/translated/stock.js:2607
msgid "Load Subloactions"
msgstr ""
-#: templates/js/translated/stock.js:2583
+#: templates/js/translated/stock.js:2714
msgid "Details"
msgstr ""
-#: templates/js/translated/stock.js:2587
+#: templates/js/translated/stock.js:2718
msgid "No changes"
msgstr ""
-#: templates/js/translated/stock.js:2599
+#: templates/js/translated/stock.js:2730
msgid "Part information unavailable"
msgstr ""
-#: templates/js/translated/stock.js:2621
+#: templates/js/translated/stock.js:2752
msgid "Location no longer exists"
msgstr ""
-#: templates/js/translated/stock.js:2638
+#: templates/js/translated/stock.js:2769
msgid "Build order no longer exists"
msgstr ""
-#: templates/js/translated/stock.js:2653
+#: templates/js/translated/stock.js:2784
msgid "Purchase order no longer exists"
msgstr ""
-#: templates/js/translated/stock.js:2670
+#: templates/js/translated/stock.js:2801
msgid "Sales Order no longer exists"
msgstr ""
-#: templates/js/translated/stock.js:2687
+#: templates/js/translated/stock.js:2818
msgid "Return Order no longer exists"
msgstr ""
-#: templates/js/translated/stock.js:2706
+#: templates/js/translated/stock.js:2837
msgid "Customer no longer exists"
msgstr ""
-#: templates/js/translated/stock.js:2724
+#: templates/js/translated/stock.js:2855
msgid "Stock item no longer exists"
msgstr ""
-#: templates/js/translated/stock.js:2742
+#: templates/js/translated/stock.js:2873
msgid "Added"
msgstr ""
-#: templates/js/translated/stock.js:2750
+#: templates/js/translated/stock.js:2881
msgid "Removed"
msgstr ""
-#: templates/js/translated/stock.js:2826
+#: templates/js/translated/stock.js:2953
msgid "No installed items"
msgstr ""
-#: templates/js/translated/stock.js:2876 templates/js/translated/stock.js:2911
+#: templates/js/translated/stock.js:3003 templates/js/translated/stock.js:3038
msgid "Uninstall Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:2929
+#: templates/js/translated/stock.js:3056
msgid "Select stock item to uninstall"
msgstr ""
-#: templates/js/translated/stock.js:2950
+#: templates/js/translated/stock.js:3077
msgid "Install another stock item into this item"
msgstr ""
-#: templates/js/translated/stock.js:2951
+#: templates/js/translated/stock.js:3078
msgid "Stock items can only be installed if they meet the following criteria"
msgstr ""
-#: templates/js/translated/stock.js:2953
+#: templates/js/translated/stock.js:3080
msgid "The Stock Item links to a Part which is the BOM for this Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:2954
+#: templates/js/translated/stock.js:3081
msgid "The Stock Item is currently available in stock"
msgstr ""
-#: templates/js/translated/stock.js:2955
+#: templates/js/translated/stock.js:3082
msgid "The Stock Item is not already installed in another item"
msgstr ""
-#: templates/js/translated/stock.js:2956
+#: templates/js/translated/stock.js:3083
msgid "The Stock Item is tracked by either a batch code or serial number"
msgstr ""
-#: templates/js/translated/stock.js:2969
+#: templates/js/translated/stock.js:3096
msgid "Select part to install"
msgstr ""
+#: templates/js/translated/stock.js:3152
+msgid "Select one or more stock items"
+msgstr ""
+
+#: templates/js/translated/stock.js:3165
+msgid "Selected stock items"
+msgstr ""
+
+#: templates/js/translated/stock.js:3169
+msgid "Change Stock Status"
+msgstr ""
+
#: templates/js/translated/table_filters.js:50
msgid "Has project code"
msgstr ""
-#: templates/js/translated/table_filters.js:59
-#: templates/js/translated/table_filters.js:518
-#: templates/js/translated/table_filters.js:530
-#: templates/js/translated/table_filters.js:571
+#: templates/js/translated/table_filters.js:65
+#: templates/js/translated/table_filters.js:540
+#: templates/js/translated/table_filters.js:552
+#: templates/js/translated/table_filters.js:593
msgid "Order status"
msgstr ""
-#: templates/js/translated/table_filters.js:64
-#: templates/js/translated/table_filters.js:535
-#: templates/js/translated/table_filters.js:561
-#: templates/js/translated/table_filters.js:576
+#: templates/js/translated/table_filters.js:70
+#: templates/js/translated/table_filters.js:557
+#: templates/js/translated/table_filters.js:583
+#: templates/js/translated/table_filters.js:598
msgid "Outstanding"
msgstr ""
-#: templates/js/translated/table_filters.js:72
-#: templates/js/translated/table_filters.js:458
-#: templates/js/translated/table_filters.js:543
-#: templates/js/translated/table_filters.js:584
+#: templates/js/translated/table_filters.js:78
+#: templates/js/translated/table_filters.js:464
+#: templates/js/translated/table_filters.js:565
+#: templates/js/translated/table_filters.js:606
msgid "Assigned to me"
msgstr ""
-#: templates/js/translated/table_filters.js:128
+#: templates/js/translated/table_filters.js:134
msgid "Trackable Part"
msgstr ""
-#: templates/js/translated/table_filters.js:132
+#: templates/js/translated/table_filters.js:138
msgid "Assembled Part"
msgstr ""
-#: templates/js/translated/table_filters.js:136
+#: templates/js/translated/table_filters.js:142
msgid "Has Available Stock"
msgstr ""
-#: templates/js/translated/table_filters.js:152
+#: templates/js/translated/table_filters.js:158
msgid "Allow Variant Stock"
msgstr ""
-#: templates/js/translated/table_filters.js:164
-#: templates/js/translated/table_filters.js:692
+#: templates/js/translated/table_filters.js:170
+#: templates/js/translated/table_filters.js:714
msgid "Has Pricing"
msgstr ""
-#: templates/js/translated/table_filters.js:204
-#: templates/js/translated/table_filters.js:291
+#: templates/js/translated/table_filters.js:210
+#: templates/js/translated/table_filters.js:297
msgid "Include sublocations"
msgstr ""
-#: templates/js/translated/table_filters.js:205
+#: templates/js/translated/table_filters.js:211
msgid "Include locations"
msgstr ""
-#: templates/js/translated/table_filters.js:224
-#: templates/js/translated/table_filters.js:225
-#: templates/js/translated/table_filters.js:624
+#: templates/js/translated/table_filters.js:230
+#: templates/js/translated/table_filters.js:231
+#: templates/js/translated/table_filters.js:646
msgid "Include subcategories"
msgstr ""
-#: templates/js/translated/table_filters.js:233
-#: templates/js/translated/table_filters.js:672
+#: templates/js/translated/table_filters.js:239
+#: templates/js/translated/table_filters.js:694
msgid "Subscribed"
msgstr ""
-#: templates/js/translated/table_filters.js:244
-#: templates/js/translated/table_filters.js:326
+#: templates/js/translated/table_filters.js:250
+#: templates/js/translated/table_filters.js:332
msgid "Is Serialized"
msgstr ""
-#: templates/js/translated/table_filters.js:247
-#: templates/js/translated/table_filters.js:333
+#: templates/js/translated/table_filters.js:253
+#: templates/js/translated/table_filters.js:339
msgid "Serial number GTE"
msgstr ""
-#: templates/js/translated/table_filters.js:248
-#: templates/js/translated/table_filters.js:334
+#: templates/js/translated/table_filters.js:254
+#: templates/js/translated/table_filters.js:340
msgid "Serial number greater than or equal to"
msgstr ""
-#: templates/js/translated/table_filters.js:251
-#: templates/js/translated/table_filters.js:337
+#: templates/js/translated/table_filters.js:257
+#: templates/js/translated/table_filters.js:343
msgid "Serial number LTE"
msgstr ""
-#: templates/js/translated/table_filters.js:252
-#: templates/js/translated/table_filters.js:338
+#: templates/js/translated/table_filters.js:258
+#: templates/js/translated/table_filters.js:344
msgid "Serial number less than or equal to"
msgstr ""
-#: templates/js/translated/table_filters.js:255
-#: templates/js/translated/table_filters.js:256
-#: templates/js/translated/table_filters.js:329
-#: templates/js/translated/table_filters.js:330
+#: templates/js/translated/table_filters.js:261
+#: templates/js/translated/table_filters.js:262
+#: templates/js/translated/table_filters.js:335
+#: templates/js/translated/table_filters.js:336
msgid "Serial number"
msgstr ""
-#: templates/js/translated/table_filters.js:260
-#: templates/js/translated/table_filters.js:351
+#: templates/js/translated/table_filters.js:266
+#: templates/js/translated/table_filters.js:357
msgid "Batch code"
msgstr ""
-#: templates/js/translated/table_filters.js:271
-#: templates/js/translated/table_filters.js:613
+#: templates/js/translated/table_filters.js:277
+#: templates/js/translated/table_filters.js:635
msgid "Active parts"
msgstr ""
-#: templates/js/translated/table_filters.js:272
+#: templates/js/translated/table_filters.js:278
msgid "Show stock for active parts"
msgstr ""
-#: templates/js/translated/table_filters.js:277
+#: templates/js/translated/table_filters.js:283
msgid "Part is an assembly"
msgstr ""
-#: templates/js/translated/table_filters.js:281
+#: templates/js/translated/table_filters.js:287
msgid "Is allocated"
msgstr ""
-#: templates/js/translated/table_filters.js:282
+#: templates/js/translated/table_filters.js:288
msgid "Item has been allocated"
msgstr ""
-#: templates/js/translated/table_filters.js:287
+#: templates/js/translated/table_filters.js:293
msgid "Stock is available for use"
msgstr ""
-#: templates/js/translated/table_filters.js:292
+#: templates/js/translated/table_filters.js:298
msgid "Include stock in sublocations"
msgstr ""
-#: templates/js/translated/table_filters.js:297
+#: templates/js/translated/table_filters.js:303
msgid "Show stock items which are depleted"
msgstr ""
-#: templates/js/translated/table_filters.js:302
+#: templates/js/translated/table_filters.js:308
msgid "Show items which are in stock"
msgstr ""
-#: templates/js/translated/table_filters.js:306
+#: templates/js/translated/table_filters.js:312
msgid "In Production"
msgstr ""
-#: templates/js/translated/table_filters.js:307
+#: templates/js/translated/table_filters.js:313
msgid "Show items which are in production"
msgstr ""
-#: templates/js/translated/table_filters.js:311
+#: templates/js/translated/table_filters.js:317
msgid "Include Variants"
msgstr ""
-#: templates/js/translated/table_filters.js:312
+#: templates/js/translated/table_filters.js:318
msgid "Include stock items for variant parts"
msgstr ""
-#: templates/js/translated/table_filters.js:316
+#: templates/js/translated/table_filters.js:322
msgid "Installed"
msgstr ""
-#: templates/js/translated/table_filters.js:317
+#: templates/js/translated/table_filters.js:323
msgid "Show stock items which are installed in another item"
msgstr ""
-#: templates/js/translated/table_filters.js:322
+#: templates/js/translated/table_filters.js:328
msgid "Show items which have been assigned to a customer"
msgstr ""
-#: templates/js/translated/table_filters.js:342
-#: templates/js/translated/table_filters.js:343
+#: templates/js/translated/table_filters.js:348
+#: templates/js/translated/table_filters.js:349
msgid "Stock status"
msgstr ""
-#: templates/js/translated/table_filters.js:346
+#: templates/js/translated/table_filters.js:352
msgid "Has batch code"
msgstr ""
-#: templates/js/translated/table_filters.js:354
-msgid "Tracked"
-msgstr ""
-
-#: templates/js/translated/table_filters.js:355
+#: templates/js/translated/table_filters.js:361
msgid "Stock item is tracked by either batch code or serial number"
msgstr ""
-#: templates/js/translated/table_filters.js:360
+#: templates/js/translated/table_filters.js:366
msgid "Has purchase price"
msgstr ""
-#: templates/js/translated/table_filters.js:361
+#: templates/js/translated/table_filters.js:367
msgid "Show stock items which have a purchase price set"
msgstr ""
-#: templates/js/translated/table_filters.js:365
+#: templates/js/translated/table_filters.js:371
msgid "Expiry Date before"
msgstr ""
-#: templates/js/translated/table_filters.js:369
+#: templates/js/translated/table_filters.js:375
msgid "Expiry Date after"
msgstr ""
-#: templates/js/translated/table_filters.js:382
+#: templates/js/translated/table_filters.js:388
msgid "Show stock items which have expired"
msgstr ""
-#: templates/js/translated/table_filters.js:388
+#: templates/js/translated/table_filters.js:394
msgid "Show stock which is close to expiring"
msgstr ""
-#: templates/js/translated/table_filters.js:402
+#: templates/js/translated/table_filters.js:408
msgid "Test Passed"
msgstr ""
-#: templates/js/translated/table_filters.js:406
+#: templates/js/translated/table_filters.js:412
msgid "Include Installed Items"
msgstr ""
-#: templates/js/translated/table_filters.js:445
+#: templates/js/translated/table_filters.js:451
msgid "Build status"
msgstr ""
-#: templates/js/translated/table_filters.js:625
+#: templates/js/translated/table_filters.js:647
msgid "Include parts in subcategories"
msgstr ""
-#: templates/js/translated/table_filters.js:630
+#: templates/js/translated/table_filters.js:652
msgid "Show active parts"
msgstr ""
-#: templates/js/translated/table_filters.js:638
+#: templates/js/translated/table_filters.js:660
msgid "Available stock"
msgstr ""
-#: templates/js/translated/table_filters.js:646
-#: templates/js/translated/table_filters.js:742
+#: templates/js/translated/table_filters.js:668
+#: templates/js/translated/table_filters.js:764
msgid "Has Units"
msgstr ""
-#: templates/js/translated/table_filters.js:647
+#: templates/js/translated/table_filters.js:669
msgid "Part has defined units"
msgstr ""
-#: templates/js/translated/table_filters.js:651
+#: templates/js/translated/table_filters.js:673
msgid "Has IPN"
msgstr ""
-#: templates/js/translated/table_filters.js:652
+#: templates/js/translated/table_filters.js:674
msgid "Part has internal part number"
msgstr ""
-#: templates/js/translated/table_filters.js:656
+#: templates/js/translated/table_filters.js:678
msgid "In stock"
msgstr ""
-#: templates/js/translated/table_filters.js:664
+#: templates/js/translated/table_filters.js:686
msgid "Purchasable"
msgstr ""
-#: templates/js/translated/table_filters.js:676
+#: templates/js/translated/table_filters.js:698
msgid "Has stocktake entries"
msgstr ""
-#: templates/js/translated/table_filters.js:738
+#: templates/js/translated/table_filters.js:760
msgid "Has Choices"
msgstr ""
@@ -12390,51 +12551,51 @@ msgstr ""
msgid "Select File Format"
msgstr ""
-#: templates/js/translated/tables.js:561
+#: templates/js/translated/tables.js:537
msgid "Loading data"
msgstr ""
-#: templates/js/translated/tables.js:564
+#: templates/js/translated/tables.js:540
msgid "rows per page"
msgstr ""
-#: templates/js/translated/tables.js:569
+#: templates/js/translated/tables.js:545
msgid "Showing all rows"
msgstr ""
-#: templates/js/translated/tables.js:571
+#: templates/js/translated/tables.js:547
msgid "Showing"
msgstr ""
-#: templates/js/translated/tables.js:571
+#: templates/js/translated/tables.js:547
msgid "to"
msgstr ""
-#: templates/js/translated/tables.js:571
+#: templates/js/translated/tables.js:547
msgid "of"
msgstr ""
-#: templates/js/translated/tables.js:571
+#: templates/js/translated/tables.js:547
msgid "rows"
msgstr ""
-#: templates/js/translated/tables.js:578
+#: templates/js/translated/tables.js:554
msgid "No matching results"
msgstr ""
-#: templates/js/translated/tables.js:581
+#: templates/js/translated/tables.js:557
msgid "Hide/Show pagination"
msgstr ""
-#: templates/js/translated/tables.js:587
+#: templates/js/translated/tables.js:563
msgid "Toggle"
msgstr ""
-#: templates/js/translated/tables.js:590
+#: templates/js/translated/tables.js:566
msgid "Columns"
msgstr ""
-#: templates/js/translated/tables.js:593
+#: templates/js/translated/tables.js:569
msgid "All"
msgstr ""
@@ -12616,50 +12777,6 @@ msgstr ""
msgid "Email settings not configured"
msgstr ""
-#: templates/stock_table.html:17
-msgid "Barcode Actions"
-msgstr ""
-
-#: templates/stock_table.html:28
-msgid "Stock Options"
-msgstr ""
-
-#: templates/stock_table.html:33
-msgid "Add to selected stock items"
-msgstr ""
-
-#: templates/stock_table.html:34
-msgid "Remove from selected stock items"
-msgstr ""
-
-#: templates/stock_table.html:35
-msgid "Stocktake selected stock items"
-msgstr ""
-
-#: templates/stock_table.html:36
-msgid "Move selected stock items"
-msgstr ""
-
-#: templates/stock_table.html:37
-msgid "Merge selected stock items"
-msgstr ""
-
-#: templates/stock_table.html:37
-msgid "Merge stock"
-msgstr ""
-
-#: templates/stock_table.html:38
-msgid "Order selected items"
-msgstr ""
-
-#: templates/stock_table.html:42
-msgid "Delete selected items"
-msgstr ""
-
-#: templates/stock_table.html:42
-msgid "Delete stock"
-msgstr ""
-
#: templates/yesnolabel.html:4
msgid "Yes"
msgstr ""
@@ -12692,35 +12809,35 @@ msgstr ""
msgid "Important dates"
msgstr ""
-#: users/models.py:230
+#: users/models.py:236
msgid "Permission set"
msgstr ""
-#: users/models.py:238
+#: users/models.py:244
msgid "Group"
msgstr ""
-#: users/models.py:241
+#: users/models.py:247
msgid "View"
msgstr ""
-#: users/models.py:241
+#: users/models.py:247
msgid "Permission to view items"
msgstr ""
-#: users/models.py:243
+#: users/models.py:249
msgid "Permission to add items"
msgstr ""
-#: users/models.py:245
+#: users/models.py:251
msgid "Change"
msgstr ""
-#: users/models.py:245
+#: users/models.py:251
msgid "Permissions to edit items"
msgstr ""
-#: users/models.py:247
+#: users/models.py:253
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 378ac74105..bc3f6281fa 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: 2023-06-09 00:32+0000\n"
-"PO-Revision-Date: 2023-06-09 10:27\n"
+"POT-Creation-Date: 2023-06-20 07:01+0000\n"
+"PO-Revision-Date: 2023-06-20 07:06\n"
"Last-Translator: \n"
"Language-Team: Swedish\n"
"Language: sv_SE\n"
@@ -49,26 +49,26 @@ msgstr "Information om felet finns under Error i adminpanelen"
msgid "Enter date"
msgstr "Ange datum"
-#: InvenTree/fields.py:206 InvenTree/models.py:766 build/serializers.py:427
-#: build/serializers.py:506 build/templates/build/sidebar.html:23
-#: company/models.py:597 company/templates/company/sidebar.html:35
-#: order/models.py:1089 order/templates/order/po_sidebar.html:11
+#: InvenTree/fields.py:206 InvenTree/models.py:766 build/serializers.py:435
+#: build/serializers.py:514 build/templates/build/sidebar.html:21
+#: company/models.py:746 company/templates/company/sidebar.html:37
+#: order/models.py:1102 order/templates/order/po_sidebar.html:11
#: order/templates/order/return_order_sidebar.html:9
#: order/templates/order/so_sidebar.html:17 part/admin.py:41
-#: part/models.py:3005 part/templates/part/part_sidebar.html:63
+#: part/models.py:3039 part/templates/part/part_sidebar.html:63
#: report/templates/report/inventree_build_order_base.html:172
#: stock/admin.py:121 stock/models.py:2160 stock/models.py:2268
-#: stock/serializers.py:342 stock/serializers.py:475 stock/serializers.py:556
-#: stock/serializers.py:839 stock/serializers.py:938 stock/serializers.py:1070
-#: stock/templates/stock/stock_sidebar.html:25
-#: templates/js/translated/barcode.js:143 templates/js/translated/bom.js:1224
-#: templates/js/translated/company.js:1294 templates/js/translated/order.js:347
-#: templates/js/translated/part.js:1054
-#: templates/js/translated/purchase_order.js:2168
-#: templates/js/translated/return_order.js:760
-#: templates/js/translated/sales_order.js:1055
-#: templates/js/translated/sales_order.js:1959
-#: templates/js/translated/stock.js:1460 templates/js/translated/stock.js:2164
+#: stock/serializers.py:408 stock/serializers.py:542 stock/serializers.py:623
+#: stock/serializers.py:681 stock/serializers.py:956 stock/serializers.py:1055
+#: stock/serializers.py:1187 stock/templates/stock/stock_sidebar.html:25
+#: templates/js/translated/barcode.js:143 templates/js/translated/bom.js:1244
+#: templates/js/translated/company.js:1715 templates/js/translated/order.js:347
+#: templates/js/translated/part.js:1053
+#: templates/js/translated/purchase_order.js:2178
+#: templates/js/translated/return_order.js:772
+#: templates/js/translated/sales_order.js:1067
+#: templates/js/translated/sales_order.js:1971
+#: templates/js/translated/stock.js:1459 templates/js/translated/stock.js:2321
msgid "Notes"
msgstr "Anteeckningar"
@@ -81,47 +81,51 @@ msgstr "Värdet '{name}' visas inte i mönsterformat"
msgid "Provided value does not match required pattern: "
msgstr "Det angivna värdet matchar inte det obligatoriska mönstret: "
-#: InvenTree/forms.py:145
+#: InvenTree/forms.py:147
msgid "Enter password"
msgstr "Ange lösenord"
-#: InvenTree/forms.py:146
+#: InvenTree/forms.py:148
msgid "Enter new password"
msgstr "Ange nytt lösenord"
-#: InvenTree/forms.py:155
+#: InvenTree/forms.py:157
msgid "Confirm password"
msgstr "Bekräfta lösenord"
-#: InvenTree/forms.py:156
+#: InvenTree/forms.py:158
msgid "Confirm new password"
msgstr "Bekräfta nytt lösenord"
-#: InvenTree/forms.py:160
+#: InvenTree/forms.py:162
msgid "Old password"
msgstr "Tidigare lösenord"
-#: InvenTree/forms.py:179
+#: InvenTree/forms.py:181
msgid "Email (again)"
msgstr "E-post (igen)"
-#: InvenTree/forms.py:183
+#: InvenTree/forms.py:185
msgid "Email address confirmation"
msgstr "Bekräfta e-postadress"
-#: InvenTree/forms.py:204
+#: InvenTree/forms.py:206
msgid "You must type the same email each time."
msgstr "Du måste ange samma e-post varje gång."
-#: InvenTree/forms.py:230 InvenTree/forms.py:236
+#: InvenTree/forms.py:237 InvenTree/forms.py:243
msgid "The provided primary email address is not valid."
msgstr "Den angivna primära e-postadressen är inte giltig."
-#: InvenTree/forms.py:242
+#: InvenTree/forms.py:249
msgid "The provided email domain is not approved."
msgstr "Den angivna e-postdomänen är inte godkänd."
-#: InvenTree/helpers.py:462 order/models.py:442 order/models.py:611
+#: InvenTree/forms.py:345
+msgid "Registration is disabled."
+msgstr ""
+
+#: InvenTree/helpers.py:462 order/models.py:455 order/models.py:624
msgid "Invalid quantity provided"
msgstr "Ogiltigt antal angivet"
@@ -239,7 +243,7 @@ msgstr "Extern länk saknas"
#: InvenTree/models.py:486 stock/models.py:2262
#: templates/js/translated/attachment.js:119
-#: templates/js/translated/attachment.js:306
+#: templates/js/translated/attachment.js:316
msgid "Attachment"
msgstr "Bilaga"
@@ -247,29 +251,30 @@ msgstr "Bilaga"
msgid "Select file to attach"
msgstr "Välj fil att bifoga"
-#: InvenTree/models.py:493 common/models.py:2695 company/models.py:132
-#: company/models.py:306 company/models.py:584 order/models.py:236
-#: order/models.py:1093 order/models.py:1453 part/admin.py:39
-#: part/models.py:901 part/templates/part/part_scheduling.html:11
+#: InvenTree/models.py:493 common/models.py:2681 company/models.py:128
+#: company/models.py:381 company/models.py:455 company/models.py:733
+#: order/models.py:240 order/models.py:1106 order/models.py:1466
+#: part/admin.py:39 part/models.py:902
+#: part/templates/part/part_scheduling.html:11
#: report/templates/report/inventree_build_order_base.html:164
-#: stock/admin.py:120 templates/js/translated/company.js:977
-#: templates/js/translated/company.js:1283 templates/js/translated/order.js:351
-#: templates/js/translated/part.js:2316
-#: templates/js/translated/purchase_order.js:2008
-#: templates/js/translated/purchase_order.js:2172
-#: templates/js/translated/return_order.js:764
-#: templates/js/translated/sales_order.js:1044
-#: templates/js/translated/sales_order.js:1964
+#: stock/admin.py:120 templates/js/translated/company.js:1350
+#: templates/js/translated/company.js:1704 templates/js/translated/order.js:351
+#: templates/js/translated/part.js:2392
+#: templates/js/translated/purchase_order.js:2018
+#: templates/js/translated/purchase_order.js:2182
+#: templates/js/translated/return_order.js:776
+#: templates/js/translated/sales_order.js:1056
+#: templates/js/translated/sales_order.js:1976
msgid "Link"
msgstr "Länk"
-#: InvenTree/models.py:494 build/models.py:291 part/models.py:902
+#: InvenTree/models.py:494 build/models.py:295 part/models.py:903
#: stock/models.py:735
msgid "Link to external URL"
msgstr "Länk till extern URL"
#: InvenTree/models.py:497 templates/js/translated/attachment.js:120
-#: templates/js/translated/attachment.js:321
+#: templates/js/translated/attachment.js:331
msgid "Comment"
msgstr "Kommentar"
@@ -277,13 +282,13 @@ msgstr "Kommentar"
msgid "File comment"
msgstr "Fil kommentar"
-#: InvenTree/models.py:503 InvenTree/models.py:504 common/models.py:2154
-#: common/models.py:2155 common/models.py:2368 common/models.py:2369
-#: common/models.py:2625 common/models.py:2626 part/models.py:3013
-#: part/models.py:3101 part/models.py:3180 part/models.py:3200
-#: plugin/models.py:217 plugin/models.py:218
+#: InvenTree/models.py:503 InvenTree/models.py:504 common/models.py:2140
+#: common/models.py:2141 common/models.py:2354 common/models.py:2355
+#: common/models.py:2611 common/models.py:2612 part/models.py:3047
+#: part/models.py:3135 part/models.py:3214 part/models.py:3234
+#: plugin/models.py:218 plugin/models.py:219
#: report/templates/report/inventree_test_report_base.html:105
-#: templates/js/translated/stock.js:2773
+#: templates/js/translated/stock.js:2904
msgid "User"
msgstr "Användare"
@@ -324,53 +329,54 @@ msgstr ""
msgid "Invalid choice"
msgstr "Ogiltigt val"
-#: InvenTree/models.py:648 InvenTree/models.py:649 common/models.py:2354
-#: company/models.py:390 label/models.py:103 part/models.py:847
-#: part/models.py:3400 plugin/models.py:41 report/models.py:160
+#: InvenTree/models.py:648 InvenTree/models.py:649 common/models.py:2340
+#: company/models.py:539 label/models.py:111 part/models.py:848
+#: part/models.py:3434 plugin/models.py:42 report/models.py:160
#: templates/InvenTree/settings/mixins/urls.html:13
#: templates/InvenTree/settings/notifications.html:17
-#: templates/InvenTree/settings/plugin.html:80
+#: templates/InvenTree/settings/plugin.html:74
#: templates/InvenTree/settings/plugin_settings.html:22
-#: templates/js/translated/company.js:658
-#: templates/js/translated/company.js:706
-#: templates/js/translated/company.js:871
-#: templates/js/translated/company.js:1071 templates/js/translated/part.js:1160
-#: templates/js/translated/part.js:1447 templates/js/translated/part.js:1583
-#: templates/js/translated/part.js:2699 templates/js/translated/stock.js:2464
+#: templates/js/translated/company.js:665
+#: templates/js/translated/company.js:713
+#: templates/js/translated/company.js:940
+#: templates/js/translated/company.js:1196
+#: templates/js/translated/company.js:1444 templates/js/translated/part.js:1159
+#: templates/js/translated/part.js:1446 templates/js/translated/part.js:1582
+#: templates/js/translated/part.js:2684 templates/js/translated/stock.js:2595
msgid "Name"
msgstr "Namn"
-#: InvenTree/models.py:655 build/models.py:164
+#: InvenTree/models.py:655 build/models.py:168
#: build/templates/build/detail.html:24 common/models.py:111
-#: company/models.py:312 company/models.py:590
+#: company/models.py:461 company/models.py:739
#: company/templates/company/company_base.html:72
#: company/templates/company/manufacturer_part.html:75
-#: company/templates/company/supplier_part.html:108 label/models.py:110
-#: order/models.py:232 order/models.py:1117 part/admin.py:194 part/admin.py:276
-#: part/models.py:869 part/models.py:3416 part/templates/part/category.html:81
+#: company/templates/company/supplier_part.html:108 label/models.py:118
+#: order/models.py:232 order/models.py:1130 part/admin.py:194 part/admin.py:276
+#: part/models.py:870 part/models.py:3450 part/templates/part/category.html:81
#: part/templates/part/part_base.html:172
#: part/templates/part/part_scheduling.html:12 report/models.py:173
-#: report/models.py:587 report/models.py:631
+#: report/models.py:589 report/models.py:633
#: report/templates/report/inventree_build_order_base.html:117
#: stock/admin.py:41 stock/templates/stock/location.html:123
#: templates/InvenTree/settings/notifications.html:19
#: templates/InvenTree/settings/plugin_settings.html:27
#: templates/InvenTree/settings/settings_staff_js.html:75
-#: templates/js/translated/bom.js:632 templates/js/translated/bom.js:933
-#: templates/js/translated/build.js:2857 templates/js/translated/company.js:510
-#: templates/js/translated/company.js:988
-#: templates/js/translated/company.js:1251 templates/js/translated/order.js:298
-#: templates/js/translated/part.js:1212 templates/js/translated/part.js:1456
-#: templates/js/translated/part.js:1594 templates/js/translated/part.js:1933
-#: templates/js/translated/part.js:2247 templates/js/translated/part.js:2735
-#: templates/js/translated/part.js:2826
-#: templates/js/translated/purchase_order.js:1666
-#: templates/js/translated/purchase_order.js:1812
-#: templates/js/translated/purchase_order.js:1990
-#: templates/js/translated/return_order.js:302
-#: templates/js/translated/sales_order.js:790
-#: templates/js/translated/stock.js:1439 templates/js/translated/stock.js:1817
-#: templates/js/translated/stock.js:2496 templates/js/translated/stock.js:2568
+#: templates/js/translated/bom.js:633 templates/js/translated/bom.js:951
+#: templates/js/translated/build.js:2062 templates/js/translated/company.js:517
+#: templates/js/translated/company.js:1361
+#: templates/js/translated/company.js:1672 templates/js/translated/index.js:114
+#: templates/js/translated/order.js:298 templates/js/translated/part.js:1211
+#: templates/js/translated/part.js:1455 templates/js/translated/part.js:1593
+#: templates/js/translated/part.js:1932 templates/js/translated/part.js:2323
+#: templates/js/translated/part.js:2720 templates/js/translated/part.js:2811
+#: templates/js/translated/purchase_order.js:1681
+#: templates/js/translated/purchase_order.js:1827
+#: templates/js/translated/purchase_order.js:2000
+#: templates/js/translated/return_order.js:314
+#: templates/js/translated/sales_order.js:802
+#: templates/js/translated/stock.js:1438 templates/js/translated/stock.js:1974
+#: templates/js/translated/stock.js:2627 templates/js/translated/stock.js:2699
msgid "Description"
msgstr "Beskrivning"
@@ -383,7 +389,7 @@ msgid "parent"
msgstr "överordnad"
#: InvenTree/models.py:671 InvenTree/models.py:672
-#: templates/js/translated/part.js:2744 templates/js/translated/stock.js:2505
+#: templates/js/translated/part.js:2729 templates/js/translated/stock.js:2636
msgid "Path"
msgstr "Sökväg"
@@ -419,12 +425,12 @@ msgstr "Serverfel"
msgid "An error has been logged by the server."
msgstr "Ett fel har loggats av servern."
-#: InvenTree/serializers.py:60 part/models.py:3897
+#: InvenTree/serializers.py:60 part/models.py:3941
msgid "Must be a valid number"
msgstr "Måste vara ett giltigt nummer"
-#: InvenTree/serializers.py:90 company/models.py:154
-#: company/templates/company/company_base.html:107 part/models.py:2852
+#: InvenTree/serializers.py:90 company/models.py:150
+#: company/templates/company/company_base.html:107 part/models.py:2886
#: templates/InvenTree/settings/settings_staff_js.html:44
#: templates/currency_data.html:5
msgid "Currency"
@@ -497,130 +503,130 @@ 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:714
+#: InvenTree/settings.py:741
msgid "Czech"
msgstr "Tjeckiska"
-#: InvenTree/settings.py:715
+#: InvenTree/settings.py:742
msgid "Danish"
msgstr ""
-#: InvenTree/settings.py:716
+#: InvenTree/settings.py:743
msgid "German"
msgstr "Tyska"
-#: InvenTree/settings.py:717
+#: InvenTree/settings.py:744
msgid "Greek"
msgstr "Grekiska"
-#: InvenTree/settings.py:718
+#: InvenTree/settings.py:745
msgid "English"
msgstr "Engelska"
-#: InvenTree/settings.py:719
+#: InvenTree/settings.py:746
msgid "Spanish"
msgstr "Spanska"
-#: InvenTree/settings.py:720
+#: InvenTree/settings.py:747
msgid "Spanish (Mexican)"
msgstr "Spanska (Mexikanska)"
-#: InvenTree/settings.py:721
+#: InvenTree/settings.py:748
msgid "Farsi / Persian"
msgstr "Farsi / Persiska"
-#: InvenTree/settings.py:722
+#: InvenTree/settings.py:749
msgid "Finnish"
msgstr ""
-#: InvenTree/settings.py:723
+#: InvenTree/settings.py:750
msgid "French"
msgstr "Franska"
-#: InvenTree/settings.py:724
+#: InvenTree/settings.py:751
msgid "Hebrew"
msgstr "Hebreiska"
-#: InvenTree/settings.py:725
+#: InvenTree/settings.py:752
msgid "Hungarian"
msgstr "Ungerska"
-#: InvenTree/settings.py:726
+#: InvenTree/settings.py:753
msgid "Italian"
msgstr "Italienska"
-#: InvenTree/settings.py:727
+#: InvenTree/settings.py:754
msgid "Japanese"
msgstr "Japanska"
-#: InvenTree/settings.py:728
+#: InvenTree/settings.py:755
msgid "Korean"
msgstr "Koreanska"
-#: InvenTree/settings.py:729
+#: InvenTree/settings.py:756
msgid "Dutch"
msgstr "Nederländska"
-#: InvenTree/settings.py:730
+#: InvenTree/settings.py:757
msgid "Norwegian"
msgstr "Norska"
-#: InvenTree/settings.py:731
+#: InvenTree/settings.py:758
msgid "Polish"
msgstr "Polska"
-#: InvenTree/settings.py:732
+#: InvenTree/settings.py:759
msgid "Portuguese"
msgstr "Portugisiska"
-#: InvenTree/settings.py:733
+#: InvenTree/settings.py:760
msgid "Portuguese (Brazilian)"
msgstr "Portugisiska (brasiliansk)"
-#: InvenTree/settings.py:734
+#: InvenTree/settings.py:761
msgid "Russian"
msgstr "Ryska"
-#: InvenTree/settings.py:735
+#: InvenTree/settings.py:762
msgid "Slovenian"
msgstr ""
-#: InvenTree/settings.py:736
+#: InvenTree/settings.py:763
msgid "Swedish"
msgstr "Svenska"
-#: InvenTree/settings.py:737
+#: InvenTree/settings.py:764
msgid "Thai"
msgstr "Thailändska"
-#: InvenTree/settings.py:738
+#: InvenTree/settings.py:765
msgid "Turkish"
msgstr "Turkiska"
-#: InvenTree/settings.py:739
+#: InvenTree/settings.py:766
msgid "Vietnamese"
msgstr "Vietnamesiska"
-#: InvenTree/settings.py:740
+#: InvenTree/settings.py:767
msgid "Chinese"
msgstr "Kinesiska"
-#: InvenTree/status.py:61 part/serializers.py:878
+#: InvenTree/status.py:68 part/serializers.py:940
msgid "Background worker check failed"
msgstr "Kontroll av bakgrundsarbetare misslyckades"
-#: InvenTree/status.py:65
+#: InvenTree/status.py:72
msgid "Email backend not configured"
msgstr "Backend för e-post är inte konfigurerad"
-#: InvenTree/status.py:68
+#: InvenTree/status.py:75
msgid "InvenTree system health checks failed"
msgstr "InvenTree systemhälsokontroll misslyckades"
#: InvenTree/status_codes.py:12 InvenTree/status_codes.py:40
#: InvenTree/status_codes.py:148 InvenTree/status_codes.py:167
#: InvenTree/status_codes.py:188 generic/states/tests.py:16
-#: templates/js/translated/table_filters.js:511
+#: templates/js/translated/table_filters.js:533
msgid "Pending"
msgstr "Väntar"
@@ -630,7 +636,7 @@ msgstr "Placerad"
#: InvenTree/status_codes.py:14 InvenTree/status_codes.py:151
#: InvenTree/status_codes.py:172 generic/states/tests.py:18
-#: order/templates/order/order_base.html:162
+#: order/templates/order/order_base.html:158
#: order/templates/order/sales_order_base.html:162
msgid "Complete"
msgstr "Slutför"
@@ -654,10 +660,10 @@ msgstr "Återlämnad"
msgid "In Progress"
msgstr ""
-#: InvenTree/status_codes.py:42 order/models.py:1332
-#: templates/js/translated/sales_order.js:1509
-#: templates/js/translated/sales_order.js:1630
-#: templates/js/translated/sales_order.js:1934
+#: InvenTree/status_codes.py:42 order/models.py:1345
+#: templates/js/translated/sales_order.js:1521
+#: templates/js/translated/sales_order.js:1642
+#: templates/js/translated/sales_order.js:1946
msgid "Shipped"
msgstr "Skickad"
@@ -689,7 +695,7 @@ msgstr "I karantän"
msgid "Legacy stock tracking entry"
msgstr "Spårningspost för äldre lager"
-#: InvenTree/status_codes.py:93 templates/js/translated/stock.js:511
+#: InvenTree/status_codes.py:93 templates/js/translated/stock.js:510
msgid "Stock item created"
msgstr "Lagerpost skapad"
@@ -745,7 +751,7 @@ msgstr "Dela från överordnat objekt"
msgid "Split child item"
msgstr "Dela underordnat objekt"
-#: InvenTree/status_codes.py:120 templates/js/translated/stock.js:2243
+#: InvenTree/status_codes.py:120 templates/js/translated/stock.js:1769
msgid "Merged stock items"
msgstr "Sammanfogade lagerposter"
@@ -765,7 +771,7 @@ msgstr "Bygg orderutgång slutförd"
msgid "Build order output rejected"
msgstr ""
-#: InvenTree/status_codes.py:129 templates/js/translated/stock.js:1676
+#: InvenTree/status_codes.py:129 templates/js/translated/stock.js:1675
msgid "Consumed by build order"
msgstr "Konsumeras av byggorder"
@@ -781,7 +787,7 @@ msgstr ""
msgid "Returned against Return Order"
msgstr ""
-#: InvenTree/status_codes.py:141 templates/js/translated/table_filters.js:321
+#: InvenTree/status_codes.py:141 templates/js/translated/table_filters.js:327
msgid "Sent to customer"
msgstr "Skickat till kund"
@@ -849,83 +855,111 @@ msgstr "Lösenorden måste matcha"
msgid "Wrong password provided"
msgstr "Felaktigt lösenord angivet"
-#: InvenTree/views.py:651 templates/navbar.html:157
+#: InvenTree/views.py:653 templates/navbar.html:157
msgid "System Information"
msgstr "Systeminformation"
-#: InvenTree/views.py:658 templates/navbar.html:168
+#: InvenTree/views.py:660 templates/navbar.html:168
msgid "About InvenTree"
msgstr "Om InvenTree"
-#: build/api.py:222
+#: build/api.py:242
msgid "Build must be cancelled before it can be deleted"
msgstr "Byggnationen måste avbrytas innan den kan tas bort"
-#: build/models.py:69 build/templates/build/build_base.html:9
+#: build/api.py:286 part/models.py:3833 templates/js/translated/bom.js:985
+#: templates/js/translated/bom.js:1025 templates/js/translated/build.js:2449
+#: templates/js/translated/table_filters.js:166
+#: templates/js/translated/table_filters.js:518
+msgid "Consumable"
+msgstr ""
+
+#: build/api.py:287 part/models.py:3827 part/templates/part/upload_bom.html:58
+#: templates/js/translated/bom.js:989 templates/js/translated/bom.js:1016
+#: templates/js/translated/build.js:2458
+#: templates/js/translated/table_filters.js:162
+#: templates/js/translated/table_filters.js:191
+#: templates/js/translated/table_filters.js:522
+msgid "Optional"
+msgstr ""
+
+#: build/api.py:288 templates/js/translated/table_filters.js:360
+#: templates/js/translated/table_filters.js:514
+msgid "Tracked"
+msgstr ""
+
+#: build/api.py:290 part/admin.py:64 templates/js/translated/build.js:1670
+#: templates/js/translated/build.js:2549
+#: templates/js/translated/sales_order.js:1918
+#: templates/js/translated/table_filters.js:506
+msgid "Allocated"
+msgstr ""
+
+#: build/models.py:73 build/templates/build/build_base.html:9
#: build/templates/build/build_base.html:27
#: report/templates/report/inventree_build_order_base.html:105
#: templates/email/build_order_completed.html:16
#: templates/email/overdue_build_order.html:15
-#: templates/js/translated/build.js:945 templates/js/translated/stock.js:2629
+#: templates/js/translated/build.js:953 templates/js/translated/stock.js:2760
msgid "Build Order"
msgstr "Byggorder"
-#: build/models.py:70 build/templates/build/build_base.html:13
+#: build/models.py:74 build/templates/build/build_base.html:13
#: build/templates/build/index.html:8 build/templates/build/index.html:12
-#: order/templates/order/sales_order_detail.html:119
+#: order/templates/order/sales_order_detail.html:111
#: order/templates/order/so_sidebar.html:13
-#: part/templates/part/part_sidebar.html:22 templates/InvenTree/index.html:244
+#: part/templates/part/part_sidebar.html:22 templates/InvenTree/index.html:196
#: templates/InvenTree/search.html:141
#: templates/InvenTree/settings/sidebar.html:53
-#: templates/js/translated/search.js:228 users/models.py:42
+#: templates/js/translated/search.js:186 users/models.py:42
msgid "Build Orders"
msgstr "Byggordrar"
-#: build/models.py:111
+#: build/models.py:115
msgid "Invalid choice for parent build"
msgstr "Ogiltigt val för överordnad bygge"
-#: build/models.py:155
+#: build/models.py:159
msgid "Build Order Reference"
msgstr "Byggorderreferens"
-#: build/models.py:156 order/models.py:359 order/models.py:765
-#: order/models.py:1087 order/models.py:1724 part/admin.py:278
-#: part/models.py:3798 part/templates/part/upload_bom.html:54
+#: build/models.py:160 order/models.py:372 order/models.py:778
+#: order/models.py:1100 order/models.py:1737 part/admin.py:278
+#: part/models.py:3842 part/templates/part/upload_bom.html:54
#: report/templates/report/inventree_bill_of_materials_report.html:139
#: report/templates/report/inventree_po_report_base.html:28
#: report/templates/report/inventree_return_order_report_base.html:26
#: report/templates/report/inventree_so_report_base.html:28
-#: templates/js/translated/bom.js:769 templates/js/translated/bom.js:943
-#: templates/js/translated/build.js:2098 templates/js/translated/order.js:291
+#: templates/js/translated/bom.js:770 templates/js/translated/bom.js:961
+#: templates/js/translated/build.js:2441 templates/js/translated/order.js:291
#: templates/js/translated/pricing.js:386
-#: templates/js/translated/purchase_order.js:2033
-#: templates/js/translated/return_order.js:713
-#: templates/js/translated/sales_order.js:1798
+#: templates/js/translated/purchase_order.js:2043
+#: templates/js/translated/return_order.js:725
+#: templates/js/translated/sales_order.js:1810
msgid "Reference"
msgstr "Referens"
-#: build/models.py:167
+#: build/models.py:171
msgid "Brief description of the build (optional)"
msgstr ""
-#: build/models.py:175 build/templates/build/build_base.html:183
+#: build/models.py:179 build/templates/build/build_base.html:184
#: build/templates/build/detail.html:87
msgid "Parent Build"
msgstr "Överordnat Bygge"
-#: build/models.py:176
+#: build/models.py:180
msgid "BuildOrder to which this build is allocated"
msgstr "Byggorder till vilken detta bygge är tilldelad"
-#: build/models.py:181 build/templates/build/build_base.html:98
-#: build/templates/build/detail.html:29 company/models.py:775
-#: order/models.py:1195 order/models.py:1311 order/models.py:1312
-#: part/models.py:391 part/models.py:2865 part/models.py:2979
-#: part/models.py:3119 part/models.py:3138 part/models.py:3157
-#: part/models.py:3178 part/models.py:3270 part/models.py:3555
-#: part/models.py:3663 part/models.py:3763 part/models.py:4077
-#: part/serializers.py:842 part/serializers.py:1245
+#: build/models.py:185 build/templates/build/build_base.html:98
+#: build/templates/build/detail.html:29 company/models.py:924
+#: order/models.py:1208 order/models.py:1324 order/models.py:1325
+#: part/models.py:392 part/models.py:2899 part/models.py:3013
+#: part/models.py:3153 part/models.py:3172 part/models.py:3191
+#: part/models.py:3212 part/models.py:3304 part/models.py:3589
+#: part/models.py:3712 part/models.py:3807 part/models.py:4121
+#: part/serializers.py:904 part/serializers.py:1307
#: part/templates/part/part_app_base.html:8
#: part/templates/part/part_pricing.html:12
#: part/templates/part/upload_bom.html:52
@@ -935,266 +969,229 @@ msgstr "Byggorder till vilken detta bygge är tilldelad"
#: report/templates/report/inventree_po_report_base.html:27
#: report/templates/report/inventree_return_order_report_base.html:24
#: report/templates/report/inventree_so_report_base.html:27
-#: stock/serializers.py:156 stock/serializers.py:509
+#: stock/serializers.py:205 stock/serializers.py:576
#: templates/InvenTree/search.html:82
#: templates/email/build_order_completed.html:17
#: templates/email/build_order_required_stock.html:17
#: templates/email/low_stock_notification.html:15
#: templates/email/overdue_build_order.html:16
-#: templates/js/translated/barcode.js:529 templates/js/translated/bom.js:631
-#: templates/js/translated/bom.js:768 templates/js/translated/bom.js:887
-#: templates/js/translated/build.js:1403 templates/js/translated/build.js:1965
-#: templates/js/translated/build.js:2464 templates/js/translated/build.js:2868
-#: templates/js/translated/company.js:337
-#: templates/js/translated/company.js:822
-#: templates/js/translated/company.js:929
-#: templates/js/translated/company.js:1169 templates/js/translated/part.js:1918
-#: templates/js/translated/part.js:1990 templates/js/translated/part.js:2216
-#: templates/js/translated/pricing.js:369
-#: templates/js/translated/purchase_order.js:746
-#: templates/js/translated/purchase_order.js:1274
-#: templates/js/translated/purchase_order.js:1811
-#: templates/js/translated/purchase_order.js:1975
-#: templates/js/translated/return_order.js:527
-#: templates/js/translated/return_order.js:694
-#: templates/js/translated/sales_order.js:285
-#: templates/js/translated/sales_order.js:1185
-#: templates/js/translated/sales_order.js:1584
-#: templates/js/translated/sales_order.js:1782
-#: templates/js/translated/stock.js:643 templates/js/translated/stock.js:809
-#: templates/js/translated/stock.js:1021 templates/js/translated/stock.js:1773
-#: templates/js/translated/stock.js:2594 templates/js/translated/stock.js:2831
-#: templates/js/translated/stock.js:2968
+#: templates/js/translated/barcode.js:529 templates/js/translated/bom.js:632
+#: templates/js/translated/bom.js:769 templates/js/translated/bom.js:905
+#: templates/js/translated/build.js:1289 templates/js/translated/build.js:1669
+#: templates/js/translated/build.js:2085 templates/js/translated/build.js:2261
+#: templates/js/translated/company.js:347
+#: templates/js/translated/company.js:1147
+#: templates/js/translated/company.js:1302
+#: templates/js/translated/company.js:1590 templates/js/translated/index.js:104
+#: templates/js/translated/part.js:1917 templates/js/translated/part.js:1989
+#: templates/js/translated/part.js:2292 templates/js/translated/pricing.js:369
+#: templates/js/translated/purchase_order.js:757
+#: templates/js/translated/purchase_order.js:1289
+#: templates/js/translated/purchase_order.js:1826
+#: templates/js/translated/purchase_order.js:1985
+#: templates/js/translated/return_order.js:539
+#: templates/js/translated/return_order.js:706
+#: templates/js/translated/sales_order.js:297
+#: templates/js/translated/sales_order.js:1197
+#: templates/js/translated/sales_order.js:1596
+#: templates/js/translated/sales_order.js:1794
+#: templates/js/translated/stock.js:642 templates/js/translated/stock.js:808
+#: templates/js/translated/stock.js:1020 templates/js/translated/stock.js:1913
+#: templates/js/translated/stock.js:2725 templates/js/translated/stock.js:2958
+#: templates/js/translated/stock.js:3095
msgid "Part"
msgstr "Del"
-#: build/models.py:189
+#: build/models.py:193
msgid "Select part to build"
msgstr "Välj del att bygga"
-#: build/models.py:194
+#: build/models.py:198
msgid "Sales Order Reference"
msgstr "Försäljningsorderreferens"
-#: build/models.py:198
+#: build/models.py:202
msgid "SalesOrder to which this build is allocated"
msgstr "Försäljningsorder till vilken detta bygge allokeras"
-#: build/models.py:203 build/serializers.py:942
-#: templates/js/translated/build.js:2452
-#: templates/js/translated/sales_order.js:1173
+#: build/models.py:207 build/serializers.py:946
+#: templates/js/translated/build.js:1657
+#: templates/js/translated/sales_order.js:1185
msgid "Source Location"
msgstr "Källa Plats"
-#: build/models.py:207
+#: build/models.py:211
msgid "Select location to take stock from for this build (leave blank to take from any stock location)"
msgstr "Välj plats att ta lager från för detta bygge (lämna tomt för att ta från någon lagerplats)"
-#: build/models.py:212
+#: build/models.py:216
msgid "Destination Location"
msgstr "Destinationsplats"
-#: build/models.py:216
+#: build/models.py:220
msgid "Select location where the completed items will be stored"
msgstr "Välj plats där de färdiga objekten kommer att lagras"
-#: build/models.py:220
+#: build/models.py:224
msgid "Build Quantity"
msgstr "Bygg kvantitet"
-#: build/models.py:223
+#: build/models.py:227
msgid "Number of stock items to build"
msgstr "Antal lagerobjekt att bygga"
-#: build/models.py:227
+#: build/models.py:231
msgid "Completed items"
msgstr "Slutförda objekt"
-#: build/models.py:229
+#: build/models.py:233
msgid "Number of stock items which have been completed"
msgstr "Antal lagerposter som har slutförts"
-#: build/models.py:233
+#: build/models.py:237
msgid "Build Status"
msgstr "Byggstatus"
-#: build/models.py:237
+#: build/models.py:241
msgid "Build status code"
msgstr "Bygg statuskod"
-#: build/models.py:246 build/serializers.py:269 order/serializers.py:506
-#: stock/models.py:739 templates/js/translated/purchase_order.js:1099
+#: build/models.py:250 build/serializers.py:277 order/serializers.py:512
+#: stock/models.py:739 templates/js/translated/purchase_order.js:1114
msgid "Batch Code"
msgstr "Batchkod"
-#: build/models.py:250 build/serializers.py:270
+#: build/models.py:254 build/serializers.py:278
msgid "Batch code for this build output"
msgstr "Batch-kod för denna byggutdata"
-#: build/models.py:253 order/models.py:244 part/models.py:1038
+#: build/models.py:257 order/models.py:248 part/models.py:1039
#: part/templates/part/part_base.html:312
-#: templates/js/translated/return_order.js:327
-#: templates/js/translated/sales_order.js:815
+#: templates/js/translated/return_order.js:339
+#: templates/js/translated/sales_order.js:827
msgid "Creation Date"
msgstr "Skapad"
-#: build/models.py:257
+#: build/models.py:261
msgid "Target completion date"
msgstr "Datum för slutförande"
-#: build/models.py:258
+#: build/models.py:262
msgid "Target date for build completion. Build will be overdue after this date."
msgstr "Måldatum för färdigställande. Byggandet kommer att förfallas efter detta datum."
-#: build/models.py:261 order/models.py:409 order/models.py:1767
-#: templates/js/translated/build.js:2953
+#: build/models.py:265 order/models.py:422 order/models.py:1780
+#: templates/js/translated/build.js:2170
msgid "Completion Date"
msgstr "Slutförandedatum"
-#: build/models.py:267
+#: build/models.py:271
msgid "completed by"
msgstr "slutfört av"
-#: build/models.py:275 templates/js/translated/build.js:2913
+#: build/models.py:279 templates/js/translated/build.js:2130
msgid "Issued by"
msgstr "Utfärdad av"
-#: build/models.py:276
+#: build/models.py:280
msgid "User who issued this build order"
msgstr "Användare som utfärdade denna byggorder"
-#: build/models.py:284 build/templates/build/build_base.html:204
-#: build/templates/build/detail.html:122 order/models.py:258
-#: order/templates/order/order_base.html:214
-#: order/templates/order/return_order_base.html:182
-#: order/templates/order/sales_order_base.html:222 part/models.py:1042
+#: build/models.py:288 build/templates/build/build_base.html:205
+#: build/templates/build/detail.html:122 order/models.py:262
+#: order/templates/order/order_base.html:217
+#: order/templates/order/return_order_base.html:189
+#: order/templates/order/sales_order_base.html:229 part/models.py:1043
#: part/templates/part/part_base.html:392
#: report/templates/report/inventree_build_order_base.html:158
-#: templates/js/translated/build.js:2925
-#: templates/js/translated/purchase_order.js:1723
-#: templates/js/translated/return_order.js:347
-#: templates/js/translated/table_filters.js:461
+#: templates/js/translated/build.js:2142
+#: templates/js/translated/purchase_order.js:1738
+#: templates/js/translated/return_order.js:359
+#: templates/js/translated/table_filters.js:467
msgid "Responsible"
msgstr "Ansvarig"
-#: build/models.py:285
+#: build/models.py:289
msgid "User or group responsible for this build order"
msgstr ""
-#: build/models.py:290 build/templates/build/detail.html:108
+#: build/models.py:294 build/templates/build/detail.html:108
#: company/templates/company/manufacturer_part.html:107
#: company/templates/company/supplier_part.html:195
-#: order/templates/order/order_base.html:171
+#: order/templates/order/order_base.html:167
#: order/templates/order/return_order_base.html:146
#: order/templates/order/sales_order_base.html:181
#: part/templates/part/part_base.html:385 stock/models.py:733
#: stock/templates/stock/item_base.html:201
+#: templates/js/translated/company.js:1050
msgid "External Link"
msgstr "Extern länk"
-#: build/models.py:295
+#: build/models.py:299
msgid "Build Priority"
msgstr ""
-#: build/models.py:298
+#: build/models.py:302
msgid "Priority of this build order"
msgstr ""
-#: build/models.py:536
+#: build/models.py:309 common/models.py:104 order/admin.py:17
+#: order/models.py:237 templates/InvenTree/settings/settings_staff_js.html:70
+#: templates/js/translated/build.js:2067
+#: templates/js/translated/purchase_order.js:1685
+#: templates/js/translated/return_order.js:318
+#: templates/js/translated/sales_order.js:806
+#: templates/js/translated/table_filters.js:24
+#: templates/project_code_data.html:6
+msgid "Project Code"
+msgstr ""
+
+#: build/models.py:310
+msgid "Project code for this build order"
+msgstr ""
+
+#: build/models.py:545
#, python-brace-format
msgid "Build order {build} has been completed"
msgstr "Byggorder {build} har slutförts"
-#: build/models.py:542
+#: build/models.py:551
msgid "A build order has been completed"
msgstr "En byggorder har slutförts"
-#: build/models.py:744 build/models.py:811
+#: build/models.py:753 build/models.py:831
msgid "No build output specified"
msgstr "Ingen byggutgång angiven"
-#: build/models.py:747
+#: build/models.py:756
msgid "Build output is already completed"
msgstr "Byggutgång är redan slutförd"
-#: build/models.py:750
+#: build/models.py:759
msgid "Build output does not match Build Order"
msgstr "Byggutgång matchar inte bygg order"
-#: build/models.py:815 build/serializers.py:212 build/serializers.py:251
-#: build/serializers.py:811 order/models.py:440 order/serializers.py:379
-#: order/serializers.py:501 part/serializers.py:1087 part/serializers.py:1408
-#: stock/models.py:593 stock/models.py:1387 stock/serializers.py:315
+#: build/models.py:835 build/serializers.py:220 build/serializers.py:259
+#: build/serializers.py:819 order/models.py:453 order/serializers.py:385
+#: order/serializers.py:507 part/serializers.py:1149 part/serializers.py:1470
+#: stock/models.py:593 stock/models.py:1387 stock/serializers.py:381
msgid "Quantity must be greater than zero"
msgstr ""
-#: build/models.py:820 build/serializers.py:217
+#: build/models.py:840 build/serializers.py:225
msgid "Quantity cannot be greater than the output quantity"
msgstr ""
-#: build/models.py:1272
-msgid "Build item must specify a build output, as master part is marked as trackable"
-msgstr "Byggobjekt måste ange en byggutgång, eftersom huvuddelen är markerad som spårbar"
+#: build/models.py:1260
+msgid "Build object"
+msgstr ""
-#: build/models.py:1281
-#, python-brace-format
-msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})"
-msgstr "Tilldelad kvantitet ({q}) får inte överstiga tillgängligt lagersaldo ({a})"
-
-#: build/models.py:1291 order/models.py:1601
-msgid "Stock item is over-allocated"
-msgstr "Lagerposten är överallokerad"
-
-#: build/models.py:1297 order/models.py:1604
-msgid "Allocation quantity must be greater than zero"
-msgstr "Allokeringsmängden måste vara större än noll"
-
-#: build/models.py:1303
-msgid "Quantity must be 1 for serialized stock"
-msgstr "Antal måste vara 1 för serialiserat lager"
-
-#: build/models.py:1360
-msgid "Selected stock item not found in BOM"
-msgstr "Vald lagervara hittades inte i BOM"
-
-#: build/models.py:1438 stock/templates/stock/item_base.html:170
-#: templates/InvenTree/search.html:139 templates/js/translated/build.js:2841
-#: templates/navbar.html:38
-msgid "Build"
-msgstr "Bygg"
-
-#: build/models.py:1439
-msgid "Build to allocate parts"
-msgstr "Bygg för att allokera delar"
-
-#: build/models.py:1455 build/serializers.py:791 order/serializers.py:1059
-#: order/serializers.py:1080 stock/serializers.py:413 stock/serializers.py:770
-#: stock/serializers.py:896 stock/templates/stock/item_base.html:10
-#: stock/templates/stock/item_base.html:23
-#: stock/templates/stock/item_base.html:195
-#: templates/js/translated/build.js:955 templates/js/translated/build.js:960
-#: templates/js/translated/build.js:2466 templates/js/translated/build.js:3038
-#: templates/js/translated/sales_order.js:286
-#: templates/js/translated/sales_order.js:1186
-#: templates/js/translated/sales_order.js:1485
-#: templates/js/translated/sales_order.js:1490
-#: templates/js/translated/sales_order.js:1591
-#: templates/js/translated/sales_order.js:1678
-#: templates/js/translated/stock.js:644 templates/js/translated/stock.js:810
-#: templates/js/translated/stock.js:2714
-msgid "Stock Item"
-msgstr "Artikel i lager"
-
-#: build/models.py:1456
-msgid "Source stock item"
-msgstr "Källa lagervara"
-
-#: build/models.py:1468 build/serializers.py:198 build/serializers.py:236
-#: build/templates/build/build_base.html:103
-#: build/templates/build/detail.html:34 common/models.py:2176
-#: order/models.py:1073 order/models.py:1645 order/serializers.py:1233
+#: build/models.py:1274 build/models.py:1556 build/serializers.py:206
+#: build/serializers.py:244 build/templates/build/build_base.html:103
+#: build/templates/build/detail.html:34 common/models.py:2162
+#: order/models.py:1086 order/models.py:1658 order/serializers.py:1239
#: order/templates/order/order_wizard/match_parts.html:30 part/admin.py:277
-#: part/forms.py:47 part/models.py:2992 part/models.py:3779
+#: part/forms.py:47 part/models.py:3026 part/models.py:3823
#: part/templates/part/part_pricing.html:16
#: part/templates/part/upload_bom.html:53
#: report/templates/report/inventree_bill_of_materials_report.html:138
@@ -1203,315 +1200,367 @@ msgstr "Källa lagervara"
#: report/templates/report/inventree_so_report_base.html:29
#: report/templates/report/inventree_test_report_base.html:90
#: report/templates/report/inventree_test_report_base.html:170
-#: stock/admin.py:103 stock/serializers.py:306
+#: stock/admin.py:103 stock/serializers.py:372
#: stock/templates/stock/item_base.html:288
#: stock/templates/stock/item_base.html:296
#: stock/templates/stock/item_base.html:343
#: templates/email/build_order_completed.html:18
-#: templates/js/translated/barcode.js:531 templates/js/translated/bom.js:770
-#: templates/js/translated/bom.js:951 templates/js/translated/build.js:504
-#: templates/js/translated/build.js:716 templates/js/translated/build.js:982
-#: templates/js/translated/build.js:1425 templates/js/translated/build.js:1991
-#: templates/js/translated/build.js:2467
-#: templates/js/translated/company.js:1428
-#: templates/js/translated/model_renderers.js:207
-#: templates/js/translated/order.js:304 templates/js/translated/part.js:935
-#: templates/js/translated/part.js:1784 templates/js/translated/part.js:3263
+#: templates/js/translated/barcode.js:531 templates/js/translated/bom.js:771
+#: templates/js/translated/bom.js:969 templates/js/translated/build.js:510
+#: templates/js/translated/build.js:722 templates/js/translated/build.js:1308
+#: templates/js/translated/build.js:1672 templates/js/translated/build.js:2283
+#: templates/js/translated/company.js:1849
+#: templates/js/translated/model_renderers.js:221
+#: templates/js/translated/order.js:304 templates/js/translated/part.js:934
+#: templates/js/translated/part.js:1783 templates/js/translated/part.js:3248
#: templates/js/translated/pricing.js:381
#: templates/js/translated/pricing.js:474
#: templates/js/translated/pricing.js:522
#: templates/js/translated/pricing.js:616
-#: templates/js/translated/purchase_order.js:749
-#: templates/js/translated/purchase_order.js:1815
-#: templates/js/translated/purchase_order.js:2039
-#: templates/js/translated/sales_order.js:302
-#: templates/js/translated/sales_order.js:1187
-#: templates/js/translated/sales_order.js:1504
-#: templates/js/translated/sales_order.js:1594
-#: templates/js/translated/sales_order.js:1684
-#: templates/js/translated/sales_order.js:1804
-#: templates/js/translated/stock.js:531 templates/js/translated/stock.js:669
-#: templates/js/translated/stock.js:840 templates/js/translated/stock.js:2758
-#: templates/js/translated/stock.js:2843
+#: templates/js/translated/purchase_order.js:760
+#: templates/js/translated/purchase_order.js:1830
+#: templates/js/translated/purchase_order.js:2049
+#: templates/js/translated/sales_order.js:314
+#: templates/js/translated/sales_order.js:1199
+#: templates/js/translated/sales_order.js:1516
+#: templates/js/translated/sales_order.js:1606
+#: templates/js/translated/sales_order.js:1696
+#: templates/js/translated/sales_order.js:1816
+#: templates/js/translated/stock.js:530 templates/js/translated/stock.js:668
+#: templates/js/translated/stock.js:839 templates/js/translated/stock.js:2889
+#: templates/js/translated/stock.js:2970
msgid "Quantity"
msgstr "Antal"
-#: build/models.py:1469
+#: build/models.py:1275
+msgid "Required quantity for build order"
+msgstr ""
+
+#: build/models.py:1357
+msgid "Build item must specify a build output, as master part is marked as trackable"
+msgstr "Byggobjekt måste ange en byggutgång, eftersom huvuddelen är markerad som spårbar"
+
+#: build/models.py:1366
+#, python-brace-format
+msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})"
+msgstr "Tilldelad kvantitet ({q}) får inte överstiga tillgängligt lagersaldo ({a})"
+
+#: build/models.py:1376 order/models.py:1614
+msgid "Stock item is over-allocated"
+msgstr "Lagerposten är överallokerad"
+
+#: build/models.py:1382 order/models.py:1617
+msgid "Allocation quantity must be greater than zero"
+msgstr "Allokeringsmängden måste vara större än noll"
+
+#: build/models.py:1388
+msgid "Quantity must be 1 for serialized stock"
+msgstr "Antal måste vara 1 för serialiserat lager"
+
+#: build/models.py:1449
+msgid "Selected stock item does not match BOM line"
+msgstr ""
+
+#: build/models.py:1543 build/serializers.py:799 order/serializers.py:1065
+#: order/serializers.py:1086 stock/serializers.py:479 stock/serializers.py:887
+#: stock/serializers.py:1013 stock/templates/stock/item_base.html:10
+#: stock/templates/stock/item_base.html:23
+#: stock/templates/stock/item_base.html:195
+#: templates/js/translated/build.js:1671
+#: templates/js/translated/sales_order.js:298
+#: templates/js/translated/sales_order.js:1198
+#: templates/js/translated/sales_order.js:1497
+#: templates/js/translated/sales_order.js:1502
+#: templates/js/translated/sales_order.js:1603
+#: templates/js/translated/sales_order.js:1690
+#: templates/js/translated/stock.js:643 templates/js/translated/stock.js:809
+#: templates/js/translated/stock.js:2845
+msgid "Stock Item"
+msgstr "Artikel i lager"
+
+#: build/models.py:1544
+msgid "Source stock item"
+msgstr "Källa lagervara"
+
+#: build/models.py:1557
msgid "Stock quantity to allocate to build"
msgstr "Lagersaldo att allokera för att bygga"
-#: build/models.py:1477
+#: build/models.py:1565
msgid "Install into"
msgstr "Installera till"
-#: build/models.py:1478
+#: build/models.py:1566
msgid "Destination stock item"
msgstr "Destination lagervara"
-#: build/serializers.py:148 build/serializers.py:820
-#: templates/js/translated/build.js:1413
+#: build/serializers.py:156 build/serializers.py:828
+#: templates/js/translated/build.js:1299
msgid "Build Output"
msgstr "Bygg utdata"
-#: build/serializers.py:160
+#: build/serializers.py:168
msgid "Build output does not match the parent build"
msgstr "Byggutdata matchar inte överordnad version"
-#: build/serializers.py:164
+#: build/serializers.py:172
msgid "Output part does not match BuildOrder part"
msgstr ""
-#: build/serializers.py:168
+#: build/serializers.py:176
msgid "This build output has already been completed"
msgstr ""
-#: build/serializers.py:179
+#: build/serializers.py:187
msgid "This build output is not fully allocated"
msgstr ""
-#: build/serializers.py:199 build/serializers.py:237
+#: build/serializers.py:207 build/serializers.py:245
msgid "Enter quantity for build output"
msgstr ""
-#: build/serializers.py:258
+#: build/serializers.py:266
msgid "Integer quantity required for trackable parts"
msgstr ""
-#: build/serializers.py:261
+#: build/serializers.py:269
msgid "Integer quantity required, as the bill of materials contains trackable parts"
msgstr ""
-#: build/serializers.py:276 order/serializers.py:514 order/serializers.py:1237
-#: stock/serializers.py:324 templates/js/translated/purchase_order.js:1123
-#: templates/js/translated/stock.js:334 templates/js/translated/stock.js:532
+#: build/serializers.py:284 order/serializers.py:520 order/serializers.py:1243
+#: stock/serializers.py:390 templates/js/translated/purchase_order.js:1138
+#: templates/js/translated/stock.js:333 templates/js/translated/stock.js:531
msgid "Serial Numbers"
msgstr "Serienummer"
-#: build/serializers.py:277
+#: build/serializers.py:285
msgid "Enter serial numbers for build outputs"
msgstr ""
-#: build/serializers.py:290
+#: build/serializers.py:298
msgid "Auto Allocate Serial Numbers"
msgstr ""
-#: build/serializers.py:291
+#: build/serializers.py:299
msgid "Automatically allocate required items with matching serial numbers"
msgstr ""
-#: build/serializers.py:326 stock/api.py:670
+#: build/serializers.py:334 stock/api.py:707
msgid "The following serial numbers already exist or are invalid"
msgstr ""
-#: build/serializers.py:377 build/serializers.py:439 build/serializers.py:518
+#: build/serializers.py:385 build/serializers.py:447 build/serializers.py:526
msgid "A list of build outputs must be provided"
msgstr ""
-#: build/serializers.py:415 build/serializers.py:488 order/serializers.py:487
-#: order/serializers.py:606 order/serializers.py:1588 part/serializers.py:854
-#: stock/serializers.py:335 stock/serializers.py:470 stock/serializers.py:551
-#: stock/serializers.py:931 stock/serializers.py:1173
+#: build/serializers.py:423 build/serializers.py:496 order/serializers.py:493
+#: order/serializers.py:612 order/serializers.py:1594 part/serializers.py:916
+#: stock/serializers.py:401 stock/serializers.py:537 stock/serializers.py:618
+#: stock/serializers.py:1048 stock/serializers.py:1290
#: stock/templates/stock/item_base.html:390
#: templates/js/translated/barcode.js:530
-#: templates/js/translated/barcode.js:778 templates/js/translated/build.js:967
-#: templates/js/translated/build.js:2006
-#: templates/js/translated/purchase_order.js:1148
-#: templates/js/translated/purchase_order.js:1238
-#: templates/js/translated/sales_order.js:1497
-#: templates/js/translated/sales_order.js:1605
-#: templates/js/translated/sales_order.js:1613
-#: templates/js/translated/sales_order.js:1692
-#: templates/js/translated/stock.js:645 templates/js/translated/stock.js:811
-#: templates/js/translated/stock.js:1023 templates/js/translated/stock.js:1937
-#: templates/js/translated/stock.js:2608
+#: templates/js/translated/barcode.js:778 templates/js/translated/build.js:980
+#: templates/js/translated/build.js:2298
+#: templates/js/translated/purchase_order.js:1163
+#: templates/js/translated/purchase_order.js:1253
+#: templates/js/translated/sales_order.js:1509
+#: templates/js/translated/sales_order.js:1617
+#: templates/js/translated/sales_order.js:1625
+#: templates/js/translated/sales_order.js:1704
+#: templates/js/translated/stock.js:644 templates/js/translated/stock.js:810
+#: templates/js/translated/stock.js:1022 templates/js/translated/stock.js:2094
+#: templates/js/translated/stock.js:2739
msgid "Location"
msgstr "Plats"
-#: build/serializers.py:416
+#: build/serializers.py:424
msgid "Stock location for scrapped outputs"
msgstr ""
-#: build/serializers.py:422
+#: build/serializers.py:430
msgid "Discard Allocations"
msgstr ""
-#: build/serializers.py:423
+#: build/serializers.py:431
msgid "Discard any stock allocations for scrapped outputs"
msgstr ""
-#: build/serializers.py:428
+#: build/serializers.py:436
msgid "Reason for scrapping build output(s)"
msgstr ""
-#: build/serializers.py:489
+#: build/serializers.py:497
msgid "Location for completed build outputs"
msgstr ""
-#: build/serializers.py:495 build/templates/build/build_base.html:151
-#: build/templates/build/detail.html:62 order/models.py:791
-#: order/models.py:1750 order/serializers.py:524 stock/admin.py:106
-#: stock/templates/stock/item_base.html:423
-#: templates/js/translated/barcode.js:252 templates/js/translated/build.js:2897
-#: templates/js/translated/purchase_order.js:1278
-#: templates/js/translated/purchase_order.js:1682
-#: templates/js/translated/return_order.js:319
-#: templates/js/translated/sales_order.js:807
-#: templates/js/translated/stock.js:1912 templates/js/translated/stock.js:2732
-#: templates/js/translated/stock.js:2859
+#: build/serializers.py:503 build/templates/build/build_base.html:152
+#: build/templates/build/detail.html:62 order/models.py:804
+#: order/models.py:1763 order/serializers.py:530 stock/admin.py:106
+#: stock/serializers.py:677 stock/templates/stock/item_base.html:423
+#: templates/js/translated/barcode.js:252 templates/js/translated/build.js:2114
+#: templates/js/translated/purchase_order.js:1293
+#: templates/js/translated/purchase_order.js:1697
+#: templates/js/translated/return_order.js:331
+#: templates/js/translated/sales_order.js:819
+#: templates/js/translated/stock.js:2069 templates/js/translated/stock.js:2863
+#: templates/js/translated/stock.js:2986
msgid "Status"
msgstr "Status"
-#: build/serializers.py:501
+#: build/serializers.py:509
msgid "Accept Incomplete Allocation"
msgstr ""
-#: build/serializers.py:502
+#: build/serializers.py:510
msgid "Complete outputs if stock has not been fully allocated"
msgstr ""
-#: build/serializers.py:571
+#: build/serializers.py:579
msgid "Remove Allocated Stock"
msgstr ""
-#: build/serializers.py:572
+#: build/serializers.py:580
msgid "Subtract any stock which has already been allocated to this build"
msgstr ""
-#: build/serializers.py:578
+#: build/serializers.py:586
msgid "Remove Incomplete Outputs"
msgstr ""
-#: build/serializers.py:579
+#: build/serializers.py:587
msgid "Delete any build outputs which have not been completed"
msgstr ""
-#: build/serializers.py:606
+#: build/serializers.py:614
msgid "Not permitted"
msgstr ""
-#: build/serializers.py:607
+#: build/serializers.py:615
msgid "Accept as consumed by this build order"
msgstr ""
-#: build/serializers.py:608
+#: build/serializers.py:616
msgid "Deallocate before completing this build order"
msgstr ""
-#: build/serializers.py:631
+#: build/serializers.py:639
msgid "Overallocated Stock"
msgstr ""
-#: build/serializers.py:633
+#: build/serializers.py:641
msgid "How do you want to handle extra stock items assigned to the build order"
msgstr ""
-#: build/serializers.py:643
+#: build/serializers.py:651
msgid "Some stock items have been overallocated"
msgstr ""
-#: build/serializers.py:648
+#: build/serializers.py:656
msgid "Accept Unallocated"
msgstr ""
-#: build/serializers.py:649
+#: build/serializers.py:657
msgid "Accept that stock items have not been fully allocated to this build order"
msgstr ""
-#: build/serializers.py:659 templates/js/translated/build.js:295
+#: build/serializers.py:667 templates/js/translated/build.js:304
msgid "Required stock has not been fully allocated"
msgstr ""
-#: build/serializers.py:664 order/serializers.py:261 order/serializers.py:1127
+#: build/serializers.py:672 order/serializers.py:267 order/serializers.py:1133
msgid "Accept Incomplete"
msgstr "Acceptera ofullständig"
-#: build/serializers.py:665
+#: build/serializers.py:673
msgid "Accept that the required number of build outputs have not been completed"
msgstr ""
-#: build/serializers.py:675 templates/js/translated/build.js:299
+#: build/serializers.py:683 templates/js/translated/build.js:308
msgid "Required build quantity has not been completed"
msgstr ""
-#: build/serializers.py:684 templates/js/translated/build.js:283
+#: build/serializers.py:692 templates/js/translated/build.js:292
msgid "Build order has incomplete outputs"
msgstr ""
-#: build/serializers.py:714 build/serializers.py:768 part/models.py:3686
-#: part/models.py:4069
-msgid "BOM Item"
-msgstr ""
-
-#: build/serializers.py:724
-msgid "Build output"
+#: build/serializers.py:722
+msgid "Build Line"
msgstr ""
#: build/serializers.py:732
+msgid "Build output"
+msgstr ""
+
+#: build/serializers.py:740
msgid "Build output must point to the same build"
msgstr ""
-#: build/serializers.py:782
+#: build/serializers.py:776
+msgid "Build Line Item"
+msgstr ""
+
+#: build/serializers.py:790
msgid "bom_item.part must point to the same part as the build order"
msgstr ""
-#: build/serializers.py:797 stock/serializers.py:783
+#: build/serializers.py:805 stock/serializers.py:900
msgid "Item must be in stock"
msgstr ""
-#: build/serializers.py:846 order/serializers.py:1117
+#: build/serializers.py:853 order/serializers.py:1123
#, python-brace-format
msgid "Available quantity ({q}) exceeded"
msgstr ""
-#: build/serializers.py:852
+#: build/serializers.py:859
msgid "Build output must be specified for allocation of tracked parts"
msgstr ""
-#: build/serializers.py:859
+#: build/serializers.py:866
msgid "Build output cannot be specified for allocation of untracked parts"
msgstr ""
-#: build/serializers.py:864
+#: build/serializers.py:871
msgid "This stock item has already been allocated to this build output"
msgstr ""
-#: build/serializers.py:887 order/serializers.py:1401
+#: build/serializers.py:894 order/serializers.py:1407
msgid "Allocation items must be provided"
msgstr ""
-#: build/serializers.py:943
+#: build/serializers.py:947
msgid "Stock location where parts are to be sourced (leave blank to take from any location)"
msgstr ""
-#: build/serializers.py:951
+#: build/serializers.py:955
msgid "Exclude Location"
msgstr ""
-#: build/serializers.py:952
+#: build/serializers.py:956
msgid "Exclude stock items from this selected location"
msgstr ""
-#: build/serializers.py:957
+#: build/serializers.py:961
msgid "Interchangeable Stock"
msgstr ""
-#: build/serializers.py:958
+#: build/serializers.py:962
msgid "Stock items in multiple locations can be used interchangeably"
msgstr ""
-#: build/serializers.py:963
+#: build/serializers.py:967
msgid "Substitute Stock"
msgstr ""
-#: build/serializers.py:964
+#: build/serializers.py:968
msgid "Allow allocation of substitute parts"
msgstr ""
-#: build/serializers.py:969
+#: build/serializers.py:973
msgid "Optional Items"
msgstr ""
-#: build/serializers.py:970
+#: build/serializers.py:974
msgid "Allocate optional BOM items to build order"
msgstr ""
@@ -1540,6 +1589,7 @@ msgstr ""
#: part/templates/part/part_base.html:43
#: stock/templates/stock/item_base.html:41
#: stock/templates/stock/location.html:54
+#: templates/js/translated/filters.js:336
msgid "Barcode actions"
msgstr ""
@@ -1618,69 +1668,67 @@ msgstr "Färdigställ bygget"
msgid "Build Description"
msgstr "Byggbeskrivning"
-#: build/templates/build/build_base.html:117
+#: build/templates/build/build_base.html:118
msgid "No build outputs have been created for this build order"
msgstr ""
-#: build/templates/build/build_base.html:124
+#: build/templates/build/build_base.html:125
msgid "Build Order is ready to mark as completed"
msgstr ""
-#: build/templates/build/build_base.html:129
+#: build/templates/build/build_base.html:130
msgid "Build Order cannot be completed as outstanding outputs remain"
msgstr ""
-#: build/templates/build/build_base.html:134
+#: build/templates/build/build_base.html:135
msgid "Required build quantity has not yet been completed"
msgstr ""
-#: build/templates/build/build_base.html:139
+#: build/templates/build/build_base.html:140
msgid "Stock has not been fully allocated to this Build Order"
msgstr ""
-#: build/templates/build/build_base.html:160
-#: build/templates/build/detail.html:138 order/models.py:240
-#: order/models.py:1099 order/templates/order/order_base.html:190
+#: build/templates/build/build_base.html:161
+#: build/templates/build/detail.html:138 order/models.py:244
+#: order/models.py:1112 order/templates/order/order_base.html:186
#: order/templates/order/return_order_base.html:165
#: order/templates/order/sales_order_base.html:193
#: report/templates/report/inventree_build_order_base.html:125
-#: templates/js/translated/build.js:2945 templates/js/translated/part.js:1802
-#: templates/js/translated/purchase_order.js:1699
-#: templates/js/translated/purchase_order.js:2115
-#: templates/js/translated/return_order.js:335
-#: templates/js/translated/return_order.js:735
-#: templates/js/translated/sales_order.js:823
-#: templates/js/translated/sales_order.js:1847
+#: templates/js/translated/build.js:2162 templates/js/translated/part.js:1801
+#: templates/js/translated/purchase_order.js:1714
+#: templates/js/translated/purchase_order.js:2125
+#: templates/js/translated/return_order.js:347
+#: templates/js/translated/return_order.js:747
+#: templates/js/translated/sales_order.js:835
+#: templates/js/translated/sales_order.js:1859
msgid "Target Date"
msgstr "Måldatum"
-#: build/templates/build/build_base.html:165
+#: build/templates/build/build_base.html:166
#, python-format
msgid "This build was due on %(target)s"
msgstr ""
-#: build/templates/build/build_base.html:165
-#: build/templates/build/build_base.html:222
-#: order/templates/order/order_base.html:126
+#: build/templates/build/build_base.html:166
+#: build/templates/build/build_base.html:223
+#: order/templates/order/order_base.html:122
#: order/templates/order/return_order_base.html:118
#: order/templates/order/sales_order_base.html:123
-#: templates/js/translated/table_filters.js:68
-#: templates/js/translated/table_filters.js:454
-#: templates/js/translated/table_filters.js:539
-#: templates/js/translated/table_filters.js:580
+#: templates/js/translated/table_filters.js:74
+#: templates/js/translated/table_filters.js:460
+#: templates/js/translated/table_filters.js:561
+#: templates/js/translated/table_filters.js:602
msgid "Overdue"
msgstr "Försenad"
-#: build/templates/build/build_base.html:177
-#: build/templates/build/detail.html:67 build/templates/build/detail.html:149
-#: order/templates/order/sales_order_base.html:203
-#: templates/js/translated/table_filters.js:602
-msgid "Completed"
-msgstr "Slutförd"
+#: build/templates/build/build_base.html:178
+#: build/templates/build/detail.html:67 build/templates/build/sidebar.html:13
+msgid "Completed Outputs"
+msgstr ""
-#: build/templates/build/build_base.html:190
-#: build/templates/build/detail.html:101 order/api.py:1454 order/models.py:1304
-#: order/models.py:1403 order/models.py:1551
+#: build/templates/build/build_base.html:191
+#: build/templates/build/detail.html:101 order/api.py:1454 order/models.py:1317
+#: order/models.py:1416 order/models.py:1564
#: order/templates/order/sales_order_base.html:9
#: order/templates/order/sales_order_base.html:28
#: report/templates/report/inventree_build_order_base.html:135
@@ -1688,32 +1736,32 @@ msgstr "Slutförd"
#: stock/templates/stock/item_base.html:370
#: templates/email/overdue_sales_order.html:15
#: templates/js/translated/pricing.js:915
-#: templates/js/translated/sales_order.js:757
-#: templates/js/translated/sales_order.js:980
-#: templates/js/translated/stock.js:2661
+#: templates/js/translated/sales_order.js:769
+#: templates/js/translated/sales_order.js:992
+#: templates/js/translated/stock.js:2792
msgid "Sales Order"
msgstr "Försäljningsorder"
-#: build/templates/build/build_base.html:197
+#: build/templates/build/build_base.html:198
#: build/templates/build/detail.html:115
#: report/templates/report/inventree_build_order_base.html:152
msgid "Issued By"
msgstr "Utfärdad av"
-#: build/templates/build/build_base.html:211
-#: build/templates/build/detail.html:94 templates/js/translated/build.js:2862
+#: build/templates/build/build_base.html:212
+#: build/templates/build/detail.html:94 templates/js/translated/build.js:2079
msgid "Priority"
msgstr ""
-#: build/templates/build/build_base.html:273
+#: build/templates/build/build_base.html:274
msgid "Delete Build Order"
msgstr ""
-#: build/templates/build/build_base.html:283
+#: build/templates/build/build_base.html:284
msgid "Build Order QR Code"
msgstr ""
-#: build/templates/build/build_base.html:295
+#: build/templates/build/build_base.html:296
msgid "Link Barcode to Build Order"
msgstr ""
@@ -1729,8 +1777,8 @@ msgstr ""
msgid "Stock can be taken from any available location."
msgstr ""
-#: build/templates/build/detail.html:49 order/models.py:1222
-#: templates/js/translated/purchase_order.js:2157
+#: build/templates/build/detail.html:49 order/models.py:1235
+#: templates/js/translated/purchase_order.js:2167
msgid "Destination"
msgstr "Mål"
@@ -1744,21 +1792,21 @@ msgstr ""
#: build/templates/build/detail.html:80 stock/admin.py:105
#: stock/templates/stock/item_base.html:163
-#: templates/js/translated/build.js:1432
-#: templates/js/translated/model_renderers.js:212
-#: templates/js/translated/purchase_order.js:1244
-#: templates/js/translated/stock.js:1093 templates/js/translated/stock.js:1926
-#: templates/js/translated/stock.js:2866
-#: templates/js/translated/table_filters.js:259
-#: templates/js/translated/table_filters.js:350
+#: templates/js/translated/build.js:1319
+#: templates/js/translated/model_renderers.js:226
+#: templates/js/translated/purchase_order.js:1259
+#: templates/js/translated/stock.js:1092 templates/js/translated/stock.js:2083
+#: templates/js/translated/stock.js:2993
+#: templates/js/translated/table_filters.js:265
+#: templates/js/translated/table_filters.js:356
msgid "Batch"
msgstr ""
#: build/templates/build/detail.html:133
-#: order/templates/order/order_base.html:177
+#: order/templates/order/order_base.html:173
#: order/templates/order/return_order_base.html:152
#: order/templates/order/sales_order_base.html:187
-#: templates/js/translated/build.js:2905
+#: templates/js/translated/build.js:2122
msgid "Created"
msgstr "Skapad"
@@ -1766,147 +1814,106 @@ msgstr "Skapad"
msgid "No target date set"
msgstr ""
+#: build/templates/build/detail.html:149
+#: order/templates/order/sales_order_base.html:203
+#: templates/js/translated/table_filters.js:624
+msgid "Completed"
+msgstr "Slutförd"
+
#: build/templates/build/detail.html:153
msgid "Build not complete"
msgstr ""
-#: build/templates/build/detail.html:164 build/templates/build/sidebar.html:19
+#: build/templates/build/detail.html:164 build/templates/build/sidebar.html:17
msgid "Child Build Orders"
msgstr ""
-#: build/templates/build/detail.html:179
+#: build/templates/build/detail.html:177
msgid "Allocate Stock to Build"
msgstr ""
-#: build/templates/build/detail.html:183 templates/js/translated/build.js:2276
-msgid "Unallocate stock"
+#: build/templates/build/detail.html:181
+msgid "Deallocate stock"
+msgstr ""
+
+#: build/templates/build/detail.html:182
+msgid "Deallocate Stock"
msgstr ""
#: build/templates/build/detail.html:184
-msgid "Unallocate Stock"
-msgstr ""
-
-#: build/templates/build/detail.html:186
msgid "Automatically allocate stock to build"
msgstr ""
-#: build/templates/build/detail.html:187
+#: build/templates/build/detail.html:185
msgid "Auto Allocate"
msgstr ""
-#: build/templates/build/detail.html:189
+#: build/templates/build/detail.html:187
msgid "Manually allocate stock to build"
msgstr ""
-#: build/templates/build/detail.html:190 build/templates/build/sidebar.html:8
+#: build/templates/build/detail.html:188 build/templates/build/sidebar.html:8
msgid "Allocate Stock"
msgstr ""
-#: build/templates/build/detail.html:193
+#: build/templates/build/detail.html:191
msgid "Order required parts"
msgstr "Beställ obligatoriska delar"
-#: build/templates/build/detail.html:194
-#: company/templates/company/detail.html:38
-#: company/templates/company/detail.html:86
-#: part/templates/part/category.html:184
-#: templates/js/translated/purchase_order.js:789
+#: build/templates/build/detail.html:192
+#: templates/js/translated/purchase_order.js:800
msgid "Order Parts"
msgstr "Beställ delar"
-#: build/templates/build/detail.html:206
-msgid "Untracked stock has been fully allocated for this Build Order"
-msgstr ""
-
#: build/templates/build/detail.html:210
-msgid "Untracked stock has not been fully allocated for this Build Order"
-msgstr ""
-
-#: build/templates/build/detail.html:217
-msgid "Allocate selected items"
-msgstr ""
-
-#: build/templates/build/detail.html:227
-msgid "This Build Order does not have any associated untracked BOM items"
-msgstr ""
-
-#: build/templates/build/detail.html:236
msgid "Incomplete Build Outputs"
msgstr ""
-#: build/templates/build/detail.html:240
+#: build/templates/build/detail.html:214
msgid "Create new build output"
msgstr ""
-#: build/templates/build/detail.html:241
+#: build/templates/build/detail.html:215
msgid "New Build Output"
msgstr ""
-#: build/templates/build/detail.html:255
-msgid "Output Actions"
-msgstr ""
-
-#: build/templates/build/detail.html:260
-msgid "Complete selected build outputs"
-msgstr ""
-
-#: build/templates/build/detail.html:261
-msgid "Complete outputs"
-msgstr ""
-
-#: build/templates/build/detail.html:265
-msgid "Scrap selected build outputs"
-msgstr ""
-
-#: build/templates/build/detail.html:266
-msgid "Scrap outputs"
-msgstr ""
-
-#: build/templates/build/detail.html:270
-msgid "Delete selected build outputs"
-msgstr ""
-
-#: build/templates/build/detail.html:271
-msgid "Delete outputs"
-msgstr ""
-
-#: build/templates/build/detail.html:288 build/templates/build/sidebar.html:11
+#: build/templates/build/detail.html:232 build/templates/build/sidebar.html:15
msgid "Consumed Stock"
msgstr ""
-#: build/templates/build/detail.html:300
+#: build/templates/build/detail.html:244
msgid "Completed Build Outputs"
msgstr ""
-#: build/templates/build/detail.html:312 build/templates/build/sidebar.html:21
-#: company/templates/company/detail.html:261
-#: company/templates/company/manufacturer_part.html:151
+#: build/templates/build/detail.html:256 build/templates/build/sidebar.html:19
+#: company/templates/company/detail.html:229
+#: company/templates/company/manufacturer_part.html:141
#: company/templates/company/manufacturer_part_sidebar.html:9
-#: company/templates/company/sidebar.html:37
+#: company/templates/company/sidebar.html:39
#: order/templates/order/po_sidebar.html:9
-#: order/templates/order/purchase_order_detail.html:102
-#: order/templates/order/return_order_detail.html:74
+#: order/templates/order/purchase_order_detail.html:84
+#: order/templates/order/return_order_detail.html:70
#: order/templates/order/return_order_sidebar.html:7
-#: order/templates/order/sales_order_detail.html:134
-#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:234
-#: part/templates/part/part_sidebar.html:61 stock/templates/stock/item.html:117
+#: order/templates/order/sales_order_detail.html:124
+#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:217
+#: part/templates/part/part_sidebar.html:61 stock/templates/stock/item.html:109
#: stock/templates/stock/stock_sidebar.html:23
msgid "Attachments"
msgstr "Bilagor"
-#: build/templates/build/detail.html:327
+#: build/templates/build/detail.html:271
msgid "Build Notes"
msgstr "Bygganteckningar"
-#: build/templates/build/detail.html:502
+#: build/templates/build/detail.html:425
msgid "Allocation Complete"
msgstr ""
-#: build/templates/build/detail.html:503
-msgid "All untracked stock items have been allocated"
+#: build/templates/build/detail.html:426
+msgid "All lines have been fully allocated"
msgstr ""
-#: build/templates/build/index.html:18 part/templates/part/detail.html:340
+#: build/templates/build/index.html:18 part/templates/part/detail.html:319
msgid "New Build Order"
msgstr "Ny byggorder"
@@ -1914,14 +1921,10 @@ msgstr "Ny byggorder"
msgid "Build Order Details"
msgstr ""
-#: build/templates/build/sidebar.html:14
+#: build/templates/build/sidebar.html:10
msgid "Incomplete Outputs"
msgstr ""
-#: build/templates/build/sidebar.html:17
-msgid "Completed Outputs"
-msgstr ""
-
#: common/files.py:63
#, python-brace-format
msgid "Unsupported file format: {fmt}"
@@ -1968,16 +1971,6 @@ msgstr ""
msgid "Timestamp of last update"
msgstr ""
-#: common/models.py:104 order/admin.py:17 order/models.py:234
-#: templates/InvenTree/settings/settings_staff_js.html:70
-#: templates/js/translated/purchase_order.js:1670
-#: templates/js/translated/return_order.js:306
-#: templates/js/translated/sales_order.js:794
-#: templates/js/translated/table_filters.js:24
-#: templates/project_code_data.html:6
-msgid "Project Code"
-msgstr ""
-
#: common/models.py:105
msgid "Unique project code"
msgstr ""
@@ -2261,9 +2254,9 @@ msgstr ""
msgid "Copy category parameter templates when creating a part"
msgstr ""
-#: common/models.py:1162 part/admin.py:55 part/models.py:3560
-#: report/models.py:166 templates/js/translated/table_filters.js:109
-#: templates/js/translated/table_filters.js:680
+#: common/models.py:1162 part/admin.py:55 part/models.py:3594
+#: report/models.py:166 templates/js/translated/table_filters.js:115
+#: templates/js/translated/table_filters.js:702
msgid "Template"
msgstr ""
@@ -2271,10 +2264,10 @@ msgstr ""
msgid "Parts are templates by default"
msgstr ""
-#: common/models.py:1169 part/admin.py:51 part/admin.py:283 part/models.py:996
-#: templates/js/translated/bom.js:1598
-#: templates/js/translated/table_filters.js:276
-#: templates/js/translated/table_filters.js:634
+#: common/models.py:1169 part/admin.py:51 part/admin.py:283 part/models.py:997
+#: templates/js/translated/bom.js:1618
+#: templates/js/translated/table_filters.js:282
+#: templates/js/translated/table_filters.js:656
msgid "Assembly"
msgstr ""
@@ -2282,8 +2275,8 @@ msgstr ""
msgid "Parts can be assembled from other components by default"
msgstr ""
-#: common/models.py:1176 part/admin.py:52 part/models.py:1002
-#: templates/js/translated/table_filters.js:642
+#: common/models.py:1176 part/admin.py:52 part/models.py:1003
+#: templates/js/translated/table_filters.js:664
msgid "Component"
msgstr ""
@@ -2291,7 +2284,7 @@ msgstr ""
msgid "Parts can be used as sub-components by default"
msgstr ""
-#: common/models.py:1183 part/admin.py:53 part/models.py:1013
+#: common/models.py:1183 part/admin.py:53 part/models.py:1014
msgid "Purchaseable"
msgstr ""
@@ -2299,8 +2292,8 @@ msgstr ""
msgid "Parts are purchaseable by default"
msgstr ""
-#: common/models.py:1190 part/admin.py:54 part/models.py:1018
-#: templates/js/translated/table_filters.js:668
+#: common/models.py:1190 part/admin.py:54 part/models.py:1019
+#: templates/js/translated/table_filters.js:690
msgid "Salable"
msgstr ""
@@ -2308,10 +2301,10 @@ msgstr ""
msgid "Parts are salable by default"
msgstr ""
-#: common/models.py:1197 part/admin.py:56 part/models.py:1008
-#: templates/js/translated/table_filters.js:117
-#: templates/js/translated/table_filters.js:193
-#: templates/js/translated/table_filters.js:684
+#: common/models.py:1197 part/admin.py:56 part/models.py:1009
+#: templates/js/translated/table_filters.js:123
+#: templates/js/translated/table_filters.js:199
+#: templates/js/translated/table_filters.js:706
msgid "Trackable"
msgstr ""
@@ -2319,10 +2312,10 @@ msgstr ""
msgid "Parts are trackable by default"
msgstr ""
-#: common/models.py:1204 part/admin.py:57 part/models.py:1028
+#: common/models.py:1204 part/admin.py:57 part/models.py:1029
#: part/templates/part/part_base.html:156
-#: templates/js/translated/table_filters.js:113
-#: templates/js/translated/table_filters.js:688
+#: templates/js/translated/table_filters.js:119
+#: templates/js/translated/table_filters.js:710
msgid "Virtual"
msgstr "Virtuell"
@@ -2354,7 +2347,7 @@ msgstr ""
msgid "Allow creation of initial stock when adding a new part"
msgstr ""
-#: common/models.py:1232 templates/js/translated/part.js:108
+#: common/models.py:1232 templates/js/translated/part.js:107
msgid "Initial Supplier Data"
msgstr ""
@@ -2603,179 +2596,179 @@ msgid "Stock location default icon (empty means no icon)"
msgstr ""
#: common/models.py:1471
-msgid "Build Order Reference Pattern"
+msgid "Show Installed Stock Items"
msgstr ""
#: common/models.py:1472
-msgid "Required pattern for generating Build Order reference field"
+msgid "Display installed stock items in stock tables"
msgstr ""
#: common/models.py:1478
-msgid "Enable Return Orders"
+msgid "Build Order Reference Pattern"
msgstr ""
#: common/models.py:1479
-msgid "Enable return order functionality in the user interface"
+msgid "Required pattern for generating Build Order reference field"
msgstr ""
#: common/models.py:1485
-msgid "Return Order Reference Pattern"
+msgid "Enable Return Orders"
msgstr ""
#: common/models.py:1486
-msgid "Required pattern for generating Return Order reference field"
+msgid "Enable return order functionality in the user interface"
msgstr ""
#: common/models.py:1492
-msgid "Edit Completed Return Orders"
+msgid "Return Order Reference Pattern"
msgstr ""
#: common/models.py:1493
-msgid "Allow editing of return orders after they have been completed"
+msgid "Required pattern for generating Return Order reference field"
msgstr ""
#: common/models.py:1499
-msgid "Sales Order Reference Pattern"
+msgid "Edit Completed Return Orders"
msgstr ""
#: common/models.py:1500
-msgid "Required pattern for generating Sales Order reference field"
+msgid "Allow editing of return orders after they have been completed"
msgstr ""
#: common/models.py:1506
-msgid "Sales Order Default Shipment"
+msgid "Sales Order Reference Pattern"
msgstr ""
#: common/models.py:1507
-msgid "Enable creation of default shipment with sales orders"
+msgid "Required pattern for generating Sales Order reference field"
msgstr ""
#: common/models.py:1513
-msgid "Edit Completed Sales Orders"
+msgid "Sales Order Default Shipment"
msgstr ""
#: common/models.py:1514
-msgid "Allow editing of sales orders after they have been shipped or completed"
+msgid "Enable creation of default shipment with sales orders"
msgstr ""
#: common/models.py:1520
-msgid "Purchase Order Reference Pattern"
+msgid "Edit Completed Sales Orders"
msgstr ""
#: common/models.py:1521
-msgid "Required pattern for generating Purchase Order reference field"
+msgid "Allow editing of sales orders after they have been shipped or completed"
msgstr ""
#: common/models.py:1527
-msgid "Edit Completed Purchase Orders"
+msgid "Purchase Order Reference Pattern"
msgstr ""
#: common/models.py:1528
-msgid "Allow editing of purchase orders after they have been shipped or completed"
+msgid "Required pattern for generating Purchase Order reference field"
+msgstr ""
+
+#: common/models.py:1534
+msgid "Edit Completed Purchase Orders"
msgstr ""
#: common/models.py:1535
-msgid "Enable password forgot"
-msgstr ""
-
-#: common/models.py:1536
-msgid "Enable password forgot function on the login pages"
+msgid "Allow editing of purchase orders after they have been shipped or completed"
msgstr ""
#: common/models.py:1542
-msgid "Enable registration"
+msgid "Enable password forgot"
msgstr ""
#: common/models.py:1543
-msgid "Enable self-registration for users on the login pages"
+msgid "Enable password forgot function on the login pages"
msgstr ""
#: common/models.py:1549
-msgid "Enable SSO"
+msgid "Enable registration"
msgstr ""
#: common/models.py:1550
-msgid "Enable SSO on the login pages"
+msgid "Enable self-registration for users on the login pages"
msgstr ""
#: common/models.py:1556
-msgid "Enable SSO registration"
+msgid "Enable SSO"
msgstr ""
#: common/models.py:1557
-msgid "Enable self-registration via SSO for users on the login pages"
+msgid "Enable SSO on the login pages"
msgstr ""
#: common/models.py:1563
-msgid "Email required"
+msgid "Enable SSO registration"
msgstr ""
#: common/models.py:1564
-msgid "Require user to supply mail on signup"
+msgid "Enable self-registration via SSO for users on the login pages"
msgstr ""
#: common/models.py:1570
-msgid "Auto-fill SSO users"
+msgid "Email required"
msgstr ""
#: common/models.py:1571
-msgid "Automatically fill out user-details from SSO account-data"
+msgid "Require user to supply mail on signup"
msgstr ""
#: common/models.py:1577
-msgid "Mail twice"
+msgid "Auto-fill SSO users"
msgstr ""
#: common/models.py:1578
-msgid "On signup ask users twice for their mail"
+msgid "Automatically fill out user-details from SSO account-data"
msgstr ""
#: common/models.py:1584
-msgid "Password twice"
+msgid "Mail twice"
msgstr ""
#: common/models.py:1585
-msgid "On signup ask users twice for their password"
+msgid "On signup ask users twice for their mail"
msgstr ""
#: common/models.py:1591
-msgid "Allowed domains"
+msgid "Password twice"
msgstr ""
#: common/models.py:1592
-msgid "Restrict signup to certain domains (comma-separated, starting with @)"
+msgid "On signup ask users twice for their password"
msgstr ""
#: common/models.py:1598
-msgid "Group on signup"
+msgid "Allowed domains"
msgstr ""
#: common/models.py:1599
-msgid "Group to which new users are assigned on registration"
+msgid "Restrict signup to certain domains (comma-separated, starting with @)"
msgstr ""
#: common/models.py:1605
-msgid "Enforce MFA"
+msgid "Group on signup"
msgstr ""
#: common/models.py:1606
-msgid "Users must use multifactor security."
+msgid "Group to which new users are assigned on registration"
msgstr ""
#: common/models.py:1612
-msgid "Check plugins on startup"
+msgid "Enforce MFA"
msgstr ""
#: common/models.py:1613
-msgid "Check that all plugins are installed on startup - enable in container environments"
+msgid "Users must use multifactor security."
+msgstr ""
+
+#: common/models.py:1619
+msgid "Check plugins on startup"
msgstr ""
#: common/models.py:1620
-msgid "Check plugin signatures"
-msgstr ""
-
-#: common/models.py:1621
-msgid "Check and show signatures for plugins"
+msgid "Check that all plugins are installed on startup - enable in container environments"
msgstr ""
#: common/models.py:1628
@@ -2850,7 +2843,7 @@ msgstr ""
msgid "Stocktake reports will be deleted after specified number of days"
msgstr ""
-#: common/models.py:1710 common/models.py:2147
+#: common/models.py:1710 common/models.py:2133
msgid "Settings key (must be unique - case insensitive"
msgstr ""
@@ -2891,528 +2884,513 @@ msgid "Show latest parts on the homepage"
msgstr ""
#: common/models.py:1779
-msgid "Recent Part Count"
-msgstr ""
-
-#: common/models.py:1780
-msgid "Number of recent parts to display on index page"
-msgstr ""
-
-#: common/models.py:1786
msgid "Show unvalidated BOMs"
msgstr ""
-#: common/models.py:1787
+#: common/models.py:1780
msgid "Show BOMs that await validation on the homepage"
msgstr ""
-#: common/models.py:1793
+#: common/models.py:1786
msgid "Show recent stock changes"
msgstr ""
-#: common/models.py:1794
+#: common/models.py:1787
msgid "Show recently changed stock items on the homepage"
msgstr ""
-#: common/models.py:1800
-msgid "Recent Stock Count"
-msgstr ""
-
-#: common/models.py:1801
-msgid "Number of recent stock items to display on index page"
-msgstr ""
-
-#: common/models.py:1807
+#: common/models.py:1793
msgid "Show low stock"
msgstr ""
-#: common/models.py:1808
+#: common/models.py:1794
msgid "Show low stock items on the homepage"
msgstr ""
-#: common/models.py:1814
+#: common/models.py:1800
msgid "Show depleted stock"
msgstr ""
-#: common/models.py:1815
+#: common/models.py:1801
msgid "Show depleted stock items on the homepage"
msgstr ""
-#: common/models.py:1821
+#: common/models.py:1807
msgid "Show needed stock"
msgstr ""
-#: common/models.py:1822
+#: common/models.py:1808
msgid "Show stock items needed for builds on the homepage"
msgstr ""
-#: common/models.py:1828
+#: common/models.py:1814
msgid "Show expired stock"
msgstr ""
-#: common/models.py:1829
+#: common/models.py:1815
msgid "Show expired stock items on the homepage"
msgstr ""
-#: common/models.py:1835
+#: common/models.py:1821
msgid "Show stale stock"
msgstr ""
-#: common/models.py:1836
+#: common/models.py:1822
msgid "Show stale stock items on the homepage"
msgstr ""
-#: common/models.py:1842
+#: common/models.py:1828
msgid "Show pending builds"
msgstr ""
-#: common/models.py:1843
+#: common/models.py:1829
msgid "Show pending builds on the homepage"
msgstr ""
-#: common/models.py:1849
+#: common/models.py:1835
msgid "Show overdue builds"
msgstr ""
-#: common/models.py:1850
+#: common/models.py:1836
msgid "Show overdue builds on the homepage"
msgstr ""
-#: common/models.py:1856
+#: common/models.py:1842
msgid "Show outstanding POs"
msgstr ""
-#: common/models.py:1857
+#: common/models.py:1843
msgid "Show outstanding POs on the homepage"
msgstr ""
-#: common/models.py:1863
+#: common/models.py:1849
msgid "Show overdue POs"
msgstr ""
-#: common/models.py:1864
+#: common/models.py:1850
msgid "Show overdue POs on the homepage"
msgstr ""
-#: common/models.py:1870
+#: common/models.py:1856
msgid "Show outstanding SOs"
msgstr ""
-#: common/models.py:1871
+#: common/models.py:1857
msgid "Show outstanding SOs on the homepage"
msgstr ""
-#: common/models.py:1877
+#: common/models.py:1863
msgid "Show overdue SOs"
msgstr ""
-#: common/models.py:1878
+#: common/models.py:1864
msgid "Show overdue SOs on the homepage"
msgstr ""
-#: common/models.py:1884
+#: common/models.py:1870
msgid "Show pending SO shipments"
msgstr ""
-#: common/models.py:1885
+#: common/models.py:1871
msgid "Show pending SO shipments on the homepage"
msgstr ""
-#: common/models.py:1891
+#: common/models.py:1877
msgid "Show News"
msgstr ""
-#: common/models.py:1892
+#: common/models.py:1878
msgid "Show news on the homepage"
msgstr ""
-#: common/models.py:1898
+#: common/models.py:1884
msgid "Inline label display"
msgstr ""
-#: common/models.py:1899
+#: common/models.py:1885
msgid "Display PDF labels in the browser, instead of downloading as a file"
msgstr ""
-#: common/models.py:1905
+#: common/models.py:1891
msgid "Default label printer"
msgstr ""
-#: common/models.py:1906
+#: common/models.py:1892
msgid "Configure which label printer should be selected by default"
msgstr ""
-#: common/models.py:1912
+#: common/models.py:1898
msgid "Inline report display"
msgstr ""
-#: common/models.py:1913
+#: common/models.py:1899
msgid "Display PDF reports in the browser, instead of downloading as a file"
msgstr ""
-#: common/models.py:1919
+#: common/models.py:1905
msgid "Search Parts"
msgstr "Sök efter artiklar"
-#: common/models.py:1920
+#: common/models.py:1906
msgid "Display parts in search preview window"
msgstr ""
-#: common/models.py:1926
+#: common/models.py:1912
msgid "Search Supplier Parts"
msgstr "Sök efter leverantörsartikel"
-#: common/models.py:1927
+#: common/models.py:1913
msgid "Display supplier parts in search preview window"
msgstr ""
-#: common/models.py:1933
+#: common/models.py:1919
msgid "Search Manufacturer Parts"
msgstr "Sök efter tillverkarartikel"
-#: common/models.py:1934
+#: common/models.py:1920
msgid "Display manufacturer parts in search preview window"
msgstr ""
-#: common/models.py:1940
+#: common/models.py:1926
msgid "Hide Inactive Parts"
msgstr ""
-#: common/models.py:1941
+#: common/models.py:1927
msgid "Excluded inactive parts from search preview window"
msgstr ""
-#: common/models.py:1947
+#: common/models.py:1933
msgid "Search Categories"
msgstr ""
-#: common/models.py:1948
+#: common/models.py:1934
msgid "Display part categories in search preview window"
msgstr ""
-#: common/models.py:1954
+#: common/models.py:1940
msgid "Search Stock"
msgstr ""
-#: common/models.py:1955
+#: common/models.py:1941
msgid "Display stock items in search preview window"
msgstr ""
-#: common/models.py:1961
+#: common/models.py:1947
msgid "Hide Unavailable Stock Items"
msgstr ""
-#: common/models.py:1962
+#: common/models.py:1948
msgid "Exclude stock items which are not available from the search preview window"
msgstr ""
-#: common/models.py:1968
+#: common/models.py:1954
msgid "Search Locations"
msgstr ""
-#: common/models.py:1969
+#: common/models.py:1955
msgid "Display stock locations in search preview window"
msgstr ""
-#: common/models.py:1975
+#: common/models.py:1961
msgid "Search Companies"
msgstr ""
-#: common/models.py:1976
+#: common/models.py:1962
msgid "Display companies in search preview window"
msgstr ""
-#: common/models.py:1982
+#: common/models.py:1968
msgid "Search Build Orders"
msgstr ""
-#: common/models.py:1983
+#: common/models.py:1969
msgid "Display build orders in search preview window"
msgstr ""
-#: common/models.py:1989
+#: common/models.py:1975
msgid "Search Purchase Orders"
msgstr ""
-#: common/models.py:1990
+#: common/models.py:1976
msgid "Display purchase orders in search preview window"
msgstr ""
-#: common/models.py:1996
+#: common/models.py:1982
msgid "Exclude Inactive Purchase Orders"
msgstr ""
-#: common/models.py:1997
+#: common/models.py:1983
msgid "Exclude inactive purchase orders from search preview window"
msgstr ""
-#: common/models.py:2003
+#: common/models.py:1989
msgid "Search Sales Orders"
msgstr ""
-#: common/models.py:2004
+#: common/models.py:1990
msgid "Display sales orders in search preview window"
msgstr ""
-#: common/models.py:2010
+#: common/models.py:1996
msgid "Exclude Inactive Sales Orders"
msgstr ""
-#: common/models.py:2011
+#: common/models.py:1997
msgid "Exclude inactive sales orders from search preview window"
msgstr ""
-#: common/models.py:2017
+#: common/models.py:2003
msgid "Search Return Orders"
msgstr ""
-#: common/models.py:2018
+#: common/models.py:2004
msgid "Display return orders in search preview window"
msgstr ""
-#: common/models.py:2024
+#: common/models.py:2010
msgid "Exclude Inactive Return Orders"
msgstr ""
-#: common/models.py:2025
+#: common/models.py:2011
msgid "Exclude inactive return orders from search preview window"
msgstr ""
-#: common/models.py:2031
+#: common/models.py:2017
msgid "Search Preview Results"
msgstr ""
-#: common/models.py:2032
+#: common/models.py:2018
msgid "Number of results to show in each section of the search preview window"
msgstr ""
-#: common/models.py:2038
+#: common/models.py:2024
msgid "Regex Search"
msgstr ""
-#: common/models.py:2039
+#: common/models.py:2025
msgid "Enable regular expressions in search queries"
msgstr ""
-#: common/models.py:2045
+#: common/models.py:2031
msgid "Whole Word Search"
msgstr ""
-#: common/models.py:2046
+#: common/models.py:2032
msgid "Search queries return results for whole word matches"
msgstr ""
-#: common/models.py:2052
+#: common/models.py:2038
msgid "Show Quantity in Forms"
msgstr ""
-#: common/models.py:2053
+#: common/models.py:2039
msgid "Display available part quantity in some forms"
msgstr ""
-#: common/models.py:2059
+#: common/models.py:2045
msgid "Escape Key Closes Forms"
msgstr ""
-#: common/models.py:2060
+#: common/models.py:2046
msgid "Use the escape key to close modal forms"
msgstr ""
-#: common/models.py:2066
+#: common/models.py:2052
msgid "Fixed Navbar"
msgstr ""
-#: common/models.py:2067
+#: common/models.py:2053
msgid "The navbar position is fixed to the top of the screen"
msgstr ""
-#: common/models.py:2073
+#: common/models.py:2059
msgid "Date Format"
msgstr ""
-#: common/models.py:2074
+#: common/models.py:2060
msgid "Preferred format for displaying dates"
msgstr ""
-#: common/models.py:2088 part/templates/part/detail.html:41
+#: common/models.py:2074 part/templates/part/detail.html:41
msgid "Part Scheduling"
msgstr ""
-#: common/models.py:2089
+#: common/models.py:2075
msgid "Display part scheduling information"
msgstr ""
-#: common/models.py:2095 part/templates/part/detail.html:62
+#: common/models.py:2081 part/templates/part/detail.html:62
msgid "Part Stocktake"
msgstr ""
-#: common/models.py:2096
+#: common/models.py:2082
msgid "Display part stocktake information (if stocktake functionality is enabled)"
msgstr ""
-#: common/models.py:2102
+#: common/models.py:2088
msgid "Table String Length"
msgstr ""
-#: common/models.py:2103
+#: common/models.py:2089
msgid "Maximimum length limit for strings displayed in table views"
msgstr ""
-#: common/models.py:2112
+#: common/models.py:2098
msgid "Default part label template"
msgstr ""
-#: common/models.py:2113
+#: common/models.py:2099
msgid "The part label template to be automatically selected"
msgstr ""
-#: common/models.py:2121
+#: common/models.py:2107
msgid "Default stock item template"
msgstr ""
-#: common/models.py:2122
+#: common/models.py:2108
msgid "The stock item label template to be automatically selected"
msgstr ""
-#: common/models.py:2130
+#: common/models.py:2116
msgid "Default stock location label template"
msgstr ""
-#: common/models.py:2131
+#: common/models.py:2117
msgid "The stock location label template to be automatically selected"
msgstr ""
-#: common/models.py:2177
+#: common/models.py:2163
msgid "Price break quantity"
msgstr ""
-#: common/models.py:2184 company/serializers.py:434 order/admin.py:43
-#: order/models.py:1132 order/models.py:1939
-#: templates/js/translated/company.js:1433 templates/js/translated/part.js:1856
+#: common/models.py:2170 company/serializers.py:491 order/admin.py:43
+#: order/models.py:1145 order/models.py:1952
+#: templates/js/translated/company.js:1854 templates/js/translated/part.js:1855
#: templates/js/translated/pricing.js:621
-#: templates/js/translated/return_order.js:725
+#: templates/js/translated/return_order.js:737
msgid "Price"
msgstr ""
-#: common/models.py:2185
+#: common/models.py:2171
msgid "Unit price at specified quantity"
msgstr ""
-#: common/models.py:2345 common/models.py:2523
+#: common/models.py:2331 common/models.py:2509
msgid "Endpoint"
msgstr ""
-#: common/models.py:2346
+#: common/models.py:2332
msgid "Endpoint at which this webhook is received"
msgstr ""
-#: common/models.py:2355
+#: common/models.py:2341
msgid "Name for this webhook"
msgstr ""
-#: common/models.py:2360 part/admin.py:50 part/models.py:1023
-#: plugin/models.py:47 templates/js/translated/table_filters.js:105
-#: templates/js/translated/table_filters.js:189
-#: templates/js/translated/table_filters.js:434
-#: templates/js/translated/table_filters.js:450
-#: templates/js/translated/table_filters.js:629
+#: common/models.py:2346 part/admin.py:50 part/models.py:1024
+#: plugin/models.py:48 templates/js/translated/table_filters.js:111
+#: templates/js/translated/table_filters.js:195
+#: templates/js/translated/table_filters.js:440
+#: templates/js/translated/table_filters.js:456
+#: templates/js/translated/table_filters.js:651
msgid "Active"
msgstr ""
-#: common/models.py:2361
+#: common/models.py:2347
msgid "Is this webhook active"
msgstr ""
-#: common/models.py:2375
+#: common/models.py:2361
msgid "Token"
msgstr ""
-#: common/models.py:2376
+#: common/models.py:2362
msgid "Token for access"
msgstr ""
-#: common/models.py:2383
+#: common/models.py:2369
msgid "Secret"
msgstr ""
-#: common/models.py:2384
+#: common/models.py:2370
msgid "Shared secret for HMAC"
msgstr ""
-#: common/models.py:2490
+#: common/models.py:2476
msgid "Message ID"
msgstr ""
-#: common/models.py:2491
+#: common/models.py:2477
msgid "Unique identifier for this message"
msgstr ""
-#: common/models.py:2499
+#: common/models.py:2485
msgid "Host"
msgstr ""
-#: common/models.py:2500
+#: common/models.py:2486
msgid "Host from which this message was received"
msgstr ""
-#: common/models.py:2507
+#: common/models.py:2493
msgid "Header"
msgstr ""
-#: common/models.py:2508
+#: common/models.py:2494
msgid "Header of this message"
msgstr ""
-#: common/models.py:2514
+#: common/models.py:2500
msgid "Body"
msgstr ""
-#: common/models.py:2515
+#: common/models.py:2501
msgid "Body of this message"
msgstr ""
-#: common/models.py:2524
+#: common/models.py:2510
msgid "Endpoint on which this message was received"
msgstr ""
-#: common/models.py:2529
+#: common/models.py:2515
msgid "Worked on"
msgstr ""
-#: common/models.py:2530
+#: common/models.py:2516
msgid "Was the work on this message finished?"
msgstr ""
-#: common/models.py:2684
+#: common/models.py:2670
msgid "Id"
msgstr ""
-#: common/models.py:2690 templates/js/translated/news.js:44
+#: common/models.py:2676 templates/js/translated/company.js:996
+#: templates/js/translated/news.js:44
msgid "Title"
msgstr ""
-#: common/models.py:2700 templates/js/translated/news.js:60
+#: common/models.py:2686 templates/js/translated/news.js:60
msgid "Published"
msgstr ""
-#: common/models.py:2705 templates/InvenTree/settings/plugin_settings.html:32
+#: common/models.py:2691 templates/InvenTree/settings/plugin_settings.html:32
#: templates/js/translated/news.js:56 templates/js/translated/plugin.js:106
msgid "Author"
msgstr ""
-#: common/models.py:2710 templates/js/translated/news.js:52
+#: common/models.py:2696 templates/js/translated/news.js:52
msgid "Summary"
msgstr ""
-#: common/models.py:2715
+#: common/models.py:2701
msgid "Read"
msgstr ""
-#: common/models.py:2716
+#: common/models.py:2702
msgid "Was this news item read?"
msgstr ""
-#: common/models.py:2736 company/models.py:143 part/models.py:914
+#: common/models.py:2722 company/models.py:139 part/models.py:915
#: report/templates/report/inventree_bill_of_materials_report.html:126
#: report/templates/report/inventree_bill_of_materials_report.html:148
#: report/templates/report/inventree_return_order_report_base.html:35
@@ -3422,7 +3400,7 @@ msgstr ""
msgid "Image"
msgstr ""
-#: common/models.py:2737
+#: common/models.py:2723
msgid "Image file"
msgstr ""
@@ -3499,7 +3477,7 @@ msgstr ""
#: company/models.py:113 company/templates/company/company_base.html:101
#: templates/InvenTree/settings/plugin_settings.html:54
-#: templates/js/translated/company.js:514
+#: templates/js/translated/company.js:521
msgid "Website"
msgstr ""
@@ -3507,303 +3485,387 @@ msgstr ""
msgid "Company website URL"
msgstr ""
-#: company/models.py:118 company/templates/company/company_base.html:119
-msgid "Address"
-msgstr ""
-
-#: company/models.py:119
-msgid "Company address"
-msgstr ""
-
-#: company/models.py:122
+#: company/models.py:118
msgid "Phone number"
msgstr ""
-#: company/models.py:123
+#: company/models.py:119
msgid "Contact phone number"
msgstr ""
-#: company/models.py:126 company/templates/company/company_base.html:133
+#: company/models.py:122 company/templates/company/company_base.html:133
#: templates/InvenTree/settings/user.html:49
-#: templates/js/translated/company.js:659
+#: templates/js/translated/company.js:666
msgid "Email"
msgstr ""
-#: company/models.py:126
+#: company/models.py:122
msgid "Contact email address"
msgstr ""
-#: company/models.py:129 company/templates/company/company_base.html:140
-#: order/models.py:266 order/templates/order/order_base.html:207
+#: company/models.py:125 company/templates/company/company_base.html:140
+#: order/models.py:270 order/templates/order/order_base.html:203
#: order/templates/order/return_order_base.html:175
#: order/templates/order/sales_order_base.html:215
msgid "Contact"
msgstr ""
-#: company/models.py:130
+#: company/models.py:126
msgid "Point of contact"
msgstr ""
-#: company/models.py:132
+#: company/models.py:128
msgid "Link to external company information"
msgstr ""
-#: company/models.py:146
+#: company/models.py:142
msgid "is customer"
msgstr ""
-#: company/models.py:146
+#: company/models.py:142
msgid "Do you sell items to this company?"
msgstr ""
-#: company/models.py:148
+#: company/models.py:144
msgid "is supplier"
msgstr ""
-#: company/models.py:148
+#: company/models.py:144
msgid "Do you purchase items from this company?"
msgstr ""
-#: company/models.py:150
+#: company/models.py:146
msgid "is manufacturer"
msgstr ""
-#: company/models.py:150
+#: company/models.py:146
msgid "Does this company manufacture parts?"
msgstr ""
-#: company/models.py:157
+#: company/models.py:153
msgid "Default currency used for this company"
msgstr ""
-#: company/models.py:223 company/templates/company/company_base.html:8
+#: company/models.py:235 company/models.py:328
+#: company/templates/company/company_base.html:8
#: company/templates/company/company_base.html:12
-#: templates/InvenTree/search.html:178 templates/js/translated/company.js:487
+#: templates/InvenTree/search.html:178 templates/js/translated/company.js:494
msgid "Company"
msgstr ""
-#: company/models.py:278 company/models.py:553 stock/models.py:675
-#: stock/serializers.py:155 stock/templates/stock/item_base.html:143
-#: templates/js/translated/bom.js:621
+#: company/models.py:324
+msgid "Company already has a primary address"
+msgstr ""
+
+#: company/models.py:329
+msgid "Select company"
+msgstr ""
+
+#: company/models.py:332
+msgid "Address title"
+msgstr ""
+
+#: company/models.py:333
+msgid "Title describing the address entry"
+msgstr ""
+
+#: company/models.py:337
+msgid "Primary address"
+msgstr ""
+
+#: company/models.py:338
+msgid "Set as primary address"
+msgstr ""
+
+#: company/models.py:341 templates/js/translated/company.js:941
+#: templates/js/translated/company.js:1002
+msgid "Line 1"
+msgstr ""
+
+#: company/models.py:342
+msgid "Address line 1"
+msgstr ""
+
+#: company/models.py:346 templates/js/translated/company.js:942
+#: templates/js/translated/company.js:1008
+msgid "Line 2"
+msgstr ""
+
+#: company/models.py:347
+msgid "Address line 2"
+msgstr ""
+
+#: company/models.py:351 company/models.py:352
+#: templates/js/translated/company.js:1014
+msgid "Postal code"
+msgstr ""
+
+#: company/models.py:356
+msgid "City/Region"
+msgstr ""
+
+#: company/models.py:357
+msgid "Postal code city/region"
+msgstr ""
+
+#: company/models.py:361
+msgid "State/Province"
+msgstr ""
+
+#: company/models.py:362
+msgid "State or province"
+msgstr ""
+
+#: company/models.py:366 templates/js/translated/company.js:1032
+msgid "Country"
+msgstr ""
+
+#: company/models.py:367
+msgid "Address country"
+msgstr ""
+
+#: company/models.py:371
+msgid "Courier shipping notes"
+msgstr ""
+
+#: company/models.py:372
+msgid "Notes for shipping courier"
+msgstr ""
+
+#: company/models.py:376
+msgid "Internal shipping notes"
+msgstr ""
+
+#: company/models.py:377
+msgid "Shipping notes for internal use"
+msgstr ""
+
+#: company/models.py:382
+msgid "Link to address information (external)"
+msgstr ""
+
+#: company/models.py:427 company/models.py:702 stock/models.py:675
+#: stock/serializers.py:204 stock/templates/stock/item_base.html:143
+#: templates/js/translated/bom.js:622
msgid "Base Part"
msgstr ""
-#: company/models.py:282 company/models.py:557
+#: company/models.py:431 company/models.py:706
msgid "Select part"
msgstr ""
-#: company/models.py:293 company/templates/company/company_base.html:77
+#: company/models.py:442 company/templates/company/company_base.html:77
#: company/templates/company/manufacturer_part.html:90
-#: company/templates/company/supplier_part.html:146 part/serializers.py:354
+#: company/templates/company/supplier_part.html:146 part/serializers.py:404
#: stock/templates/stock/item_base.html:208
-#: templates/js/translated/company.js:498
-#: templates/js/translated/company.js:824
-#: templates/js/translated/company.js:954
-#: templates/js/translated/company.js:1221
-#: templates/js/translated/table_filters.js:709
+#: templates/js/translated/company.js:505
+#: templates/js/translated/company.js:1149
+#: templates/js/translated/company.js:1327
+#: templates/js/translated/company.js:1642
+#: templates/js/translated/table_filters.js:731
msgid "Manufacturer"
msgstr ""
-#: company/models.py:294
+#: company/models.py:443
msgid "Select manufacturer"
msgstr ""
-#: company/models.py:300 company/templates/company/manufacturer_part.html:101
-#: company/templates/company/supplier_part.html:154 part/serializers.py:360
-#: templates/js/translated/company.js:340
-#: templates/js/translated/company.js:823
-#: templates/js/translated/company.js:970
-#: templates/js/translated/company.js:1240 templates/js/translated/part.js:1773
-#: templates/js/translated/purchase_order.js:1814
-#: templates/js/translated/purchase_order.js:2021
+#: company/models.py:449 company/templates/company/manufacturer_part.html:101
+#: company/templates/company/supplier_part.html:154 part/serializers.py:410
+#: templates/js/translated/company.js:350
+#: templates/js/translated/company.js:1148
+#: templates/js/translated/company.js:1343
+#: templates/js/translated/company.js:1661 templates/js/translated/part.js:1772
+#: templates/js/translated/purchase_order.js:1829
+#: templates/js/translated/purchase_order.js:2031
msgid "MPN"
msgstr ""
-#: company/models.py:301
+#: company/models.py:450
msgid "Manufacturer Part Number"
msgstr ""
-#: company/models.py:307
+#: company/models.py:456
msgid "URL for external manufacturer part link"
msgstr ""
-#: company/models.py:313
+#: company/models.py:462
msgid "Manufacturer part description"
msgstr ""
-#: company/models.py:360 company/models.py:384 company/models.py:578
+#: company/models.py:509 company/models.py:533 company/models.py:727
#: company/templates/company/manufacturer_part.html:7
#: company/templates/company/manufacturer_part.html:24
#: stock/templates/stock/item_base.html:218
msgid "Manufacturer Part"
msgstr ""
-#: company/models.py:391
+#: company/models.py:540
msgid "Parameter name"
msgstr ""
-#: company/models.py:397
+#: company/models.py:546
#: report/templates/report/inventree_test_report_base.html:104
-#: stock/models.py:2255 templates/js/translated/company.js:872
-#: templates/js/translated/company.js:1077 templates/js/translated/part.js:1465
-#: templates/js/translated/stock.js:1446
+#: stock/models.py:2255 templates/js/translated/company.js:1197
+#: templates/js/translated/company.js:1450 templates/js/translated/part.js:1464
+#: templates/js/translated/stock.js:1445
msgid "Value"
msgstr ""
-#: company/models.py:398
+#: company/models.py:547
msgid "Parameter value"
msgstr ""
-#: company/models.py:404 company/templates/company/supplier_part.html:169
-#: part/admin.py:40 part/models.py:987 part/models.py:3407
+#: company/models.py:553 company/templates/company/supplier_part.html:169
+#: part/admin.py:40 part/models.py:988 part/models.py:3441
#: part/templates/part/part_base.html:286
-#: templates/js/translated/company.js:1083 templates/js/translated/part.js:1484
-#: templates/js/translated/part.js:1588 templates/js/translated/part.js:2262
+#: templates/js/translated/company.js:1456 templates/js/translated/part.js:1483
+#: templates/js/translated/part.js:1587 templates/js/translated/part.js:2338
msgid "Units"
msgstr ""
-#: company/models.py:405
+#: company/models.py:554
msgid "Parameter units"
msgstr ""
-#: company/models.py:498
+#: company/models.py:647
msgid "Pack units must be compatible with the base part units"
msgstr ""
-#: company/models.py:504
+#: company/models.py:653
msgid "Pack units must be greater than zero"
msgstr ""
-#: company/models.py:520
+#: company/models.py:669
msgid "Linked manufacturer part must reference the same base part"
msgstr ""
-#: company/models.py:564 company/templates/company/company_base.html:82
-#: company/templates/company/supplier_part.html:130 order/models.py:382
-#: order/templates/order/order_base.html:140 part/bom.py:285 part/bom.py:313
-#: part/serializers.py:343 stock/templates/stock/item_base.html:225
+#: company/models.py:713 company/templates/company/company_base.html:82
+#: company/templates/company/supplier_part.html:130 order/models.py:395
+#: order/templates/order/order_base.html:136 part/bom.py:285 part/bom.py:313
+#: part/serializers.py:393 stock/templates/stock/item_base.html:225
#: templates/email/overdue_purchase_order.html:16
-#: templates/js/translated/company.js:339
-#: templates/js/translated/company.js:502
-#: templates/js/translated/company.js:1194 templates/js/translated/part.js:1741
+#: templates/js/translated/company.js:349
+#: templates/js/translated/company.js:509
+#: templates/js/translated/company.js:1615 templates/js/translated/part.js:1740
#: templates/js/translated/pricing.js:498
-#: templates/js/translated/purchase_order.js:1653
-#: templates/js/translated/table_filters.js:713
+#: templates/js/translated/purchase_order.js:1668
+#: templates/js/translated/table_filters.js:735
msgid "Supplier"
msgstr ""
-#: company/models.py:565
+#: company/models.py:714
msgid "Select supplier"
msgstr ""
-#: company/models.py:570 company/templates/company/supplier_part.html:140
-#: part/bom.py:286 part/bom.py:314 part/serializers.py:349
-#: templates/js/translated/company.js:338 templates/js/translated/part.js:1759
+#: company/models.py:719 company/templates/company/supplier_part.html:140
+#: part/bom.py:286 part/bom.py:314 part/serializers.py:399
+#: templates/js/translated/company.js:348 templates/js/translated/part.js:1758
#: templates/js/translated/pricing.js:510
-#: templates/js/translated/purchase_order.js:1813
-#: templates/js/translated/purchase_order.js:1996
+#: templates/js/translated/purchase_order.js:1828
+#: templates/js/translated/purchase_order.js:2006
msgid "SKU"
msgstr ""
-#: company/models.py:571 part/serializers.py:349
+#: company/models.py:720 part/serializers.py:399
msgid "Supplier stock keeping unit"
msgstr ""
-#: company/models.py:579
+#: company/models.py:728
msgid "Select manufacturer part"
msgstr ""
-#: company/models.py:585
+#: company/models.py:734
msgid "URL for external supplier part link"
msgstr ""
-#: company/models.py:591
+#: company/models.py:740
msgid "Supplier part description"
msgstr ""
-#: company/models.py:596 company/templates/company/supplier_part.html:188
-#: part/admin.py:279 part/models.py:3801 part/templates/part/upload_bom.html:59
+#: company/models.py:745 company/templates/company/supplier_part.html:188
+#: part/admin.py:279 part/models.py:3845 part/templates/part/upload_bom.html:59
#: report/templates/report/inventree_bill_of_materials_report.html:140
#: report/templates/report/inventree_po_report_base.html:32
#: report/templates/report/inventree_return_order_report_base.html:27
#: report/templates/report/inventree_so_report_base.html:32
-#: stock/serializers.py:418
+#: stock/serializers.py:484
msgid "Note"
msgstr ""
-#: company/models.py:600 part/models.py:1919
+#: company/models.py:749 part/models.py:1921
msgid "base cost"
msgstr ""
-#: company/models.py:600 part/models.py:1919
+#: company/models.py:749 part/models.py:1921
msgid "Minimum charge (e.g. stocking fee)"
msgstr ""
-#: company/models.py:602 company/templates/company/supplier_part.html:161
+#: company/models.py:751 company/templates/company/supplier_part.html:161
#: stock/admin.py:119 stock/models.py:701
#: stock/templates/stock/item_base.html:241
-#: templates/js/translated/company.js:1256
-#: templates/js/translated/stock.js:2160
+#: templates/js/translated/company.js:1677
+#: templates/js/translated/stock.js:2317
msgid "Packaging"
msgstr ""
-#: company/models.py:602
+#: company/models.py:751
msgid "Part packaging"
msgstr ""
-#: company/models.py:606 templates/js/translated/company.js:1261
-#: templates/js/translated/part.js:1793 templates/js/translated/part.js:1848
-#: templates/js/translated/purchase_order.js:300
-#: templates/js/translated/purchase_order.js:827
-#: templates/js/translated/purchase_order.js:1073
-#: templates/js/translated/purchase_order.js:2052
-#: templates/js/translated/purchase_order.js:2069
+#: company/models.py:755 templates/js/translated/company.js:1682
+#: templates/js/translated/part.js:1792 templates/js/translated/part.js:1847
+#: templates/js/translated/purchase_order.js:311
+#: templates/js/translated/purchase_order.js:842
+#: templates/js/translated/purchase_order.js:1088
+#: templates/js/translated/purchase_order.js:2062
+#: templates/js/translated/purchase_order.js:2079
msgid "Pack Quantity"
msgstr ""
-#: company/models.py:607
+#: company/models.py:756
msgid "Total quantity supplied in a single pack. Leave empty for single items."
msgstr ""
-#: company/models.py:624 part/models.py:1921
+#: company/models.py:773 part/models.py:1923
msgid "multiple"
msgstr ""
-#: company/models.py:624
+#: company/models.py:773
msgid "Order multiple"
msgstr ""
-#: company/models.py:632 company/templates/company/supplier_part.html:115
+#: company/models.py:781 company/templates/company/supplier_part.html:115
#: templates/email/build_order_required_stock.html:19
#: templates/email/low_stock_notification.html:17
-#: templates/js/translated/bom.js:1127 templates/js/translated/build.js:2136
-#: templates/js/translated/build.js:3045
-#: templates/js/translated/model_renderers.js:205
-#: templates/js/translated/part.js:670 templates/js/translated/part.js:672
-#: templates/js/translated/part.js:677
-#: templates/js/translated/table_filters.js:286
-#: templates/js/translated/table_filters.js:492
+#: templates/js/translated/bom.js:1145 templates/js/translated/build.js:2490
+#: templates/js/translated/index.js:118
+#: templates/js/translated/model_renderers.js:219
+#: templates/js/translated/part.js:669 templates/js/translated/part.js:671
+#: templates/js/translated/part.js:676
+#: templates/js/translated/table_filters.js:292
+#: templates/js/translated/table_filters.js:510
msgid "Available"
msgstr ""
-#: company/models.py:633
+#: company/models.py:782
msgid "Quantity available from supplier"
msgstr ""
-#: company/models.py:637
+#: company/models.py:786
msgid "Availability Updated"
msgstr ""
-#: company/models.py:638
+#: company/models.py:787
msgid "Date of last update of availability data"
msgstr ""
-#: company/serializers.py:99
+#: company/serializers.py:156
msgid "Default currency used for this supplier"
msgstr ""
#: company/templates/company/company_base.html:22
-#: templates/js/translated/purchase_order.js:228
+#: templates/js/translated/purchase_order.js:239
msgid "Create Purchase Order"
msgstr ""
@@ -3816,7 +3878,7 @@ msgid "Edit company information"
msgstr ""
#: company/templates/company/company_base.html:34
-#: templates/js/translated/company.js:436
+#: templates/js/translated/company.js:443
msgid "Edit Company"
msgstr ""
@@ -3856,17 +3918,17 @@ msgstr ""
msgid "Delete image"
msgstr ""
-#: company/templates/company/company_base.html:87 order/models.py:779
-#: order/models.py:1738 order/templates/order/return_order_base.html:132
+#: company/templates/company/company_base.html:87 order/models.py:792
+#: order/models.py:1751 order/templates/order/return_order_base.html:132
#: order/templates/order/sales_order_base.html:145 stock/models.py:720
-#: stock/models.py:721 stock/serializers.py:825
+#: stock/models.py:721 stock/serializers.py:942
#: stock/templates/stock/item_base.html:401
#: templates/email/overdue_sales_order.html:16
-#: templates/js/translated/company.js:494
-#: templates/js/translated/return_order.js:284
-#: templates/js/translated/sales_order.js:772
-#: templates/js/translated/stock.js:2696
-#: templates/js/translated/table_filters.js:717
+#: templates/js/translated/company.js:501
+#: templates/js/translated/return_order.js:296
+#: templates/js/translated/sales_order.js:784
+#: templates/js/translated/stock.js:2827
+#: templates/js/translated/table_filters.js:739
msgid "Customer"
msgstr ""
@@ -3874,6 +3936,13 @@ msgstr ""
msgid "Uses default currency"
msgstr ""
+#: company/templates/company/company_base.html:119 order/models.py:279
+#: order/templates/order/order_base.html:210
+#: order/templates/order/return_order_base.html:182
+#: order/templates/order/sales_order_base.html:222
+msgid "Address"
+msgstr ""
+
#: company/templates/company/company_base.html:126
msgid "Phone"
msgstr ""
@@ -3906,7 +3975,7 @@ msgstr ""
#: company/templates/company/detail.html:15
#: company/templates/company/manufacturer_part_sidebar.html:7
-#: templates/InvenTree/search.html:120 templates/js/translated/search.js:189
+#: templates/InvenTree/search.html:120 templates/js/translated/search.js:147
msgid "Supplier Parts"
msgstr ""
@@ -3916,129 +3985,121 @@ msgstr ""
#: company/templates/company/detail.html:20
#: company/templates/company/manufacturer_part.html:123
-#: part/templates/part/detail.html:381
+#: part/templates/part/detail.html:356
msgid "New Supplier Part"
msgstr ""
-#: company/templates/company/detail.html:37
-#: company/templates/company/detail.html:85
-#: part/templates/part/category.html:183
-msgid "Order parts"
-msgstr ""
-
-#: company/templates/company/detail.html:42
-#: company/templates/company/detail.html:90
-msgid "Delete parts"
-msgstr ""
-
-#: company/templates/company/detail.html:43
-#: company/templates/company/detail.html:91
-msgid "Delete Parts"
-msgstr ""
-
-#: company/templates/company/detail.html:62 templates/InvenTree/search.html:105
-#: templates/js/translated/search.js:193
+#: company/templates/company/detail.html:41 templates/InvenTree/search.html:105
+#: templates/js/translated/search.js:151
msgid "Manufacturer Parts"
msgstr ""
-#: company/templates/company/detail.html:66
+#: company/templates/company/detail.html:45
msgid "Create new manufacturer part"
msgstr ""
-#: company/templates/company/detail.html:67 part/templates/part/detail.html:411
+#: company/templates/company/detail.html:46 part/templates/part/detail.html:376
msgid "New Manufacturer Part"
msgstr ""
-#: company/templates/company/detail.html:108
+#: company/templates/company/detail.html:65
msgid "Supplier Stock"
msgstr ""
-#: company/templates/company/detail.html:118
+#: company/templates/company/detail.html:75
#: company/templates/company/sidebar.html:12
#: company/templates/company/supplier_part_sidebar.html:7
#: 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:108 part/templates/part/part_sidebar.html:35
-#: templates/InvenTree/index.html:275 templates/InvenTree/search.html:199
+#: part/templates/part/detail.html:106 part/templates/part/part_sidebar.html:35
+#: templates/InvenTree/index.html:227 templates/InvenTree/search.html:199
#: templates/InvenTree/settings/sidebar.html:55
-#: templates/js/translated/search.js:247 templates/navbar.html:50
+#: templates/js/translated/search.js:205 templates/navbar.html:50
#: users/models.py:43
msgid "Purchase Orders"
msgstr ""
-#: company/templates/company/detail.html:122
+#: company/templates/company/detail.html:79
#: order/templates/order/purchase_orders.html:17
msgid "Create new purchase order"
msgstr ""
-#: company/templates/company/detail.html:123
+#: company/templates/company/detail.html:80
#: order/templates/order/purchase_orders.html:18
msgid "New Purchase Order"
msgstr ""
-#: company/templates/company/detail.html:146
+#: company/templates/company/detail.html:101
#: company/templates/company/sidebar.html:21
#: 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:131 part/templates/part/part_sidebar.html:39
-#: templates/InvenTree/index.html:307 templates/InvenTree/search.html:219
+#: part/templates/part/detail.html:127 part/templates/part/part_sidebar.html:39
+#: templates/InvenTree/index.html:259 templates/InvenTree/search.html:219
#: templates/InvenTree/settings/sidebar.html:57
-#: templates/js/translated/search.js:261 templates/navbar.html:62
+#: templates/js/translated/search.js:219 templates/navbar.html:62
#: users/models.py:44
msgid "Sales Orders"
msgstr ""
-#: company/templates/company/detail.html:150
+#: company/templates/company/detail.html:105
#: order/templates/order/sales_orders.html:20
msgid "Create new sales order"
msgstr ""
-#: company/templates/company/detail.html:151
+#: company/templates/company/detail.html:106
#: order/templates/order/sales_orders.html:21
msgid "New Sales Order"
msgstr ""
-#: company/templates/company/detail.html:173
-#: templates/js/translated/build.js:1976
+#: company/templates/company/detail.html:126
msgid "Assigned Stock"
msgstr ""
-#: company/templates/company/detail.html:191
+#: company/templates/company/detail.html:142
#: company/templates/company/sidebar.html:29
#: order/templates/order/return_order_base.html:13
#: order/templates/order/return_orders.html:8
#: order/templates/order/return_orders.html:15
#: templates/InvenTree/settings/sidebar.html:59
-#: templates/js/translated/search.js:274 templates/navbar.html:65
+#: templates/js/translated/search.js:232 templates/navbar.html:65
#: users/models.py:45
msgid "Return Orders"
msgstr ""
-#: company/templates/company/detail.html:195
+#: company/templates/company/detail.html:146
#: order/templates/order/return_orders.html:20
msgid "Create new return order"
msgstr ""
-#: company/templates/company/detail.html:196
+#: company/templates/company/detail.html:147
#: order/templates/order/return_orders.html:21
msgid "New Return Order"
msgstr ""
-#: company/templates/company/detail.html:221
+#: company/templates/company/detail.html:168
msgid "Company Notes"
msgstr ""
-#: company/templates/company/detail.html:236
+#: company/templates/company/detail.html:183
msgid "Company Contacts"
msgstr ""
-#: company/templates/company/detail.html:240
-#: company/templates/company/detail.html:241
+#: company/templates/company/detail.html:187
+#: company/templates/company/detail.html:188
msgid "Add Contact"
msgstr ""
+#: company/templates/company/detail.html:206
+msgid "Company addresses"
+msgstr ""
+
+#: company/templates/company/detail.html:210
+#: company/templates/company/detail.html:211
+msgid "Add Address"
+msgstr ""
+
#: company/templates/company/index.html:8
msgid "Supplier List"
msgstr ""
@@ -4050,17 +4111,17 @@ msgstr ""
#: company/templates/company/manufacturer_part.html:35
#: company/templates/company/supplier_part.html:228
-#: part/templates/part/detail.html:111 part/templates/part/part_base.html:85
+#: part/templates/part/detail.html:109 part/templates/part/part_base.html:85
msgid "Order part"
msgstr ""
#: company/templates/company/manufacturer_part.html:39
-#: templates/js/translated/company.js:1001
+#: templates/js/translated/company.js:1374
msgid "Edit manufacturer part"
msgstr ""
#: company/templates/company/manufacturer_part.html:43
-#: templates/js/translated/company.js:1002
+#: templates/js/translated/company.js:1375
msgid "Delete manufacturer part"
msgstr ""
@@ -4080,40 +4141,22 @@ msgstr ""
msgid "Suppliers"
msgstr ""
-#: company/templates/company/manufacturer_part.html:136
-#: part/templates/part/detail.html:392
-msgid "Delete supplier parts"
-msgstr ""
-
-#: company/templates/company/manufacturer_part.html:136
-#: company/templates/company/manufacturer_part.html:183
-#: part/templates/part/detail.html:393 part/templates/part/detail.html:423
-#: templates/js/translated/forms.js:506 templates/js/translated/helpers.js:105
-#: templates/js/translated/part.js:370 templates/js/translated/pricing.js:629
-#: templates/js/translated/stock.js:216 users/models.py:247
-msgid "Delete"
-msgstr ""
-
-#: company/templates/company/manufacturer_part.html:166
+#: company/templates/company/manufacturer_part.html:156
#: company/templates/company/manufacturer_part_sidebar.html:5
#: part/templates/part/category_sidebar.html:20
-#: part/templates/part/detail.html:208 part/templates/part/part_sidebar.html:8
+#: part/templates/part/detail.html:195 part/templates/part/part_sidebar.html:8
msgid "Parameters"
msgstr ""
-#: company/templates/company/manufacturer_part.html:170
-#: part/templates/part/detail.html:213
+#: company/templates/company/manufacturer_part.html:160
+#: part/templates/part/detail.html:200
#: templates/InvenTree/settings/category.html:12
#: templates/InvenTree/settings/part_parameters.html:12
msgid "New Parameter"
msgstr ""
-#: company/templates/company/manufacturer_part.html:183
-msgid "Delete parameters"
-msgstr ""
-
-#: company/templates/company/manufacturer_part.html:226
-#: templates/js/translated/part.js:1396
+#: company/templates/company/manufacturer_part.html:206
+#: templates/js/translated/part.js:1395
msgid "Add Parameter"
msgstr ""
@@ -4137,23 +4180,28 @@ msgstr ""
msgid "Contacts"
msgstr ""
+#: company/templates/company/sidebar.html:35
+msgid "Addresses"
+msgstr ""
+
#: company/templates/company/supplier_part.html:7
#: company/templates/company/supplier_part.html:24 stock/models.py:684
#: stock/templates/stock/item_base.html:234
-#: templates/js/translated/company.js:1210
-#: templates/js/translated/purchase_order.js:747
-#: templates/js/translated/stock.js:2016
+#: templates/js/translated/company.js:1631
+#: templates/js/translated/purchase_order.js:758
+#: templates/js/translated/stock.js:2173
msgid "Supplier Part"
msgstr ""
#: company/templates/company/supplier_part.html:51
+#: templates/js/translated/company.js:1557
msgid "Supplier part actions"
msgstr ""
#: company/templates/company/supplier_part.html:56
#: company/templates/company/supplier_part.html:57
#: company/templates/company/supplier_part.html:229
-#: part/templates/part/detail.html:112
+#: part/templates/part/detail.html:110
msgid "Order Part"
msgstr ""
@@ -4164,13 +4212,13 @@ msgstr ""
#: company/templates/company/supplier_part.html:64
#: company/templates/company/supplier_part.html:65
-#: templates/js/translated/company.js:283
+#: templates/js/translated/company.js:293
msgid "Edit Supplier Part"
msgstr ""
#: company/templates/company/supplier_part.html:69
#: company/templates/company/supplier_part.html:70
-#: templates/js/translated/company.js:258
+#: templates/js/translated/company.js:268
msgid "Duplicate Supplier Part"
msgstr ""
@@ -4197,7 +4245,7 @@ msgstr ""
#: company/templates/company/supplier_part.html:211
#: part/templates/part/detail.html:25 stock/templates/stock/location.html:198
-#: templates/js/translated/stock.js:504
+#: templates/js/translated/stock.js:503
msgid "New Stock Item"
msgstr ""
@@ -4205,37 +4253,37 @@ msgstr ""
msgid "Supplier Part Orders"
msgstr ""
-#: company/templates/company/supplier_part.html:249
+#: company/templates/company/supplier_part.html:247
msgid "Pricing Information"
msgstr ""
-#: company/templates/company/supplier_part.html:254
-#: templates/js/translated/company.js:387
+#: company/templates/company/supplier_part.html:252
+#: templates/js/translated/company.js:397
#: templates/js/translated/pricing.js:684
msgid "Add Price Break"
msgstr ""
-#: company/templates/company/supplier_part.html:281
+#: company/templates/company/supplier_part.html:277
msgid "Supplier Part QR Code"
msgstr ""
-#: company/templates/company/supplier_part.html:292
+#: company/templates/company/supplier_part.html:288
msgid "Link Barcode to Supplier Part"
msgstr ""
-#: company/templates/company/supplier_part.html:365
+#: company/templates/company/supplier_part.html:361
msgid "Update Part Availability"
msgstr ""
#: company/templates/company/supplier_part_sidebar.html:5 part/tasks.py:293
-#: part/templates/part/category.html:199
+#: part/templates/part/category.html:182
#: part/templates/part/category_sidebar.html:17 stock/admin.py:47
-#: stock/templates/stock/location.html:168
+#: stock/serializers.py:662 stock/templates/stock/location.html:168
#: stock/templates/stock/location.html:182
#: stock/templates/stock/location.html:194
#: stock/templates/stock/location_sidebar.html:7
-#: templates/InvenTree/search.html:155 templates/js/translated/part.js:1034
-#: templates/js/translated/search.js:214 templates/js/translated/stock.js:2514
+#: templates/InvenTree/search.html:155 templates/js/translated/part.js:1033
+#: templates/js/translated/search.js:172 templates/js/translated/stock.js:2645
#: users/models.py:41
msgid "Stock Items"
msgstr ""
@@ -4261,7 +4309,7 @@ msgstr ""
msgid "New Customer"
msgstr ""
-#: company/views.py:52 templates/js/translated/search.js:234
+#: company/views.py:52 templates/js/translated/search.js:192
msgid "Companies"
msgstr ""
@@ -4269,72 +4317,76 @@ msgstr ""
msgid "New Company"
msgstr ""
-#: label/models.py:104
+#: label/models.py:112
msgid "Label name"
msgstr ""
-#: label/models.py:111
+#: label/models.py:119
msgid "Label description"
msgstr ""
-#: label/models.py:118
+#: label/models.py:126
msgid "Label"
msgstr ""
-#: label/models.py:119
+#: label/models.py:127
msgid "Label template file"
msgstr ""
-#: label/models.py:125 report/models.py:273
+#: label/models.py:133 report/models.py:273
msgid "Enabled"
msgstr ""
-#: label/models.py:126
+#: label/models.py:134
msgid "Label template is enabled"
msgstr ""
-#: label/models.py:131
+#: label/models.py:139
msgid "Width [mm]"
msgstr ""
-#: label/models.py:132
+#: label/models.py:140
msgid "Label width, specified in mm"
msgstr ""
-#: label/models.py:138
+#: label/models.py:146
msgid "Height [mm]"
msgstr ""
-#: label/models.py:139
+#: label/models.py:147
msgid "Label height, specified in mm"
msgstr ""
-#: label/models.py:145 report/models.py:266
+#: label/models.py:153 report/models.py:266
msgid "Filename Pattern"
msgstr ""
-#: label/models.py:146
+#: label/models.py:154
msgid "Pattern for generating label filenames"
msgstr ""
-#: label/models.py:242
+#: label/models.py:250
msgid "Query filters (comma-separated list of key=value pairs),"
msgstr ""
-#: label/models.py:243 label/models.py:284 label/models.py:312
-#: report/models.py:294 report/models.py:452 report/models.py:490
-#: report/models.py:528
+#: label/models.py:251 label/models.py:292 label/models.py:320
+#: label/models.py:356 report/models.py:294 report/models.py:454
+#: report/models.py:492 report/models.py:530
msgid "Filters"
msgstr ""
-#: label/models.py:283
+#: label/models.py:291
msgid "Query filters (comma-separated list of key=value pairs"
msgstr ""
-#: label/models.py:311
+#: label/models.py:319
msgid "Part query filters (comma-separated value of key=value pairs)"
msgstr ""
+#: label/models.py:355
+msgid "Query filters (comma-separated list of key=value pairs)"
+msgstr ""
+
#: label/templates/label/part/part_label.html:31
#: label/templates/label/stockitem/qr.html:21
#: label/templates/label/stocklocation/qr.html:21
@@ -4352,8 +4404,8 @@ msgstr ""
#: report/templates/report/inventree_po_report_base.html:31
#: report/templates/report/inventree_so_report_base.html:31
#: templates/js/translated/order.js:327
-#: templates/js/translated/purchase_order.js:2093
-#: templates/js/translated/sales_order.js:1827
+#: templates/js/translated/purchase_order.js:2103
+#: templates/js/translated/sales_order.js:1839
msgid "Total Price"
msgstr ""
@@ -4361,30 +4413,30 @@ msgstr ""
msgid "No matching purchase order found"
msgstr ""
-#: order/api.py:1452 order/models.py:1178 order/models.py:1262
+#: order/api.py:1452 order/models.py:1191 order/models.py:1275
#: order/templates/order/order_base.html:9
#: order/templates/order/order_base.html:18
#: report/templates/report/inventree_po_report_base.html:14
#: stock/templates/stock/item_base.html:177
#: templates/email/overdue_purchase_order.html:15
-#: templates/js/translated/part.js:1718 templates/js/translated/pricing.js:790
-#: templates/js/translated/purchase_order.js:154
-#: templates/js/translated/purchase_order.js:748
-#: templates/js/translated/purchase_order.js:1637
-#: templates/js/translated/stock.js:1996 templates/js/translated/stock.js:2644
+#: templates/js/translated/part.js:1717 templates/js/translated/pricing.js:790
+#: templates/js/translated/purchase_order.js:165
+#: templates/js/translated/purchase_order.js:759
+#: templates/js/translated/purchase_order.js:1652
+#: templates/js/translated/stock.js:2153 templates/js/translated/stock.js:2775
msgid "Purchase Order"
msgstr ""
-#: order/api.py:1456 order/models.py:1909 order/models.py:1955
+#: order/api.py:1456 order/models.py:1922 order/models.py:1968
#: order/templates/order/return_order_base.html:9
#: order/templates/order/return_order_base.html:28
#: report/templates/report/inventree_return_order_report_base.html:13
-#: templates/js/translated/return_order.js:269
-#: templates/js/translated/stock.js:2678
+#: templates/js/translated/return_order.js:281
+#: templates/js/translated/stock.js:2809
msgid "Return Order"
msgstr ""
-#: order/api.py:1458 templates/js/translated/sales_order.js:1030
+#: order/api.py:1458 templates/js/translated/sales_order.js:1042
msgid "Unknown"
msgstr ""
@@ -4392,11 +4444,11 @@ msgstr ""
msgid "Total price for this order"
msgstr ""
-#: order/models.py:79 order/serializers.py:49
+#: order/models.py:79 order/serializers.py:50
msgid "Order Currency"
msgstr ""
-#: order/models.py:81 order/serializers.py:50
+#: order/models.py:81 order/serializers.py:51
msgid "Currency for this order (leave blank to use company default)"
msgstr ""
@@ -4408,492 +4460,496 @@ msgstr ""
msgid "Order description (optional)"
msgstr ""
-#: order/models.py:234
+#: order/models.py:237
msgid "Select project code for this order"
msgstr ""
-#: order/models.py:236 order/models.py:1094 order/models.py:1454
+#: order/models.py:240 order/models.py:1107 order/models.py:1467
msgid "Link to external page"
msgstr ""
-#: order/models.py:241
+#: order/models.py:245
msgid "Expected date for order delivery. Order will be overdue after this date."
msgstr ""
-#: order/models.py:250
+#: order/models.py:254
msgid "Created By"
msgstr ""
-#: order/models.py:257
+#: order/models.py:261
msgid "User or group responsible for this order"
msgstr ""
-#: order/models.py:267
+#: order/models.py:271
msgid "Point of contact for this order"
msgstr ""
-#: order/models.py:360 order/models.py:766
+#: order/models.py:280
+msgid "Company address for this order"
+msgstr ""
+
+#: order/models.py:373 order/models.py:779
msgid "Order reference"
msgstr ""
-#: order/models.py:368 order/models.py:791
+#: order/models.py:381 order/models.py:804
msgid "Purchase order status"
msgstr ""
-#: order/models.py:383
+#: order/models.py:396
msgid "Company from which the items are being ordered"
msgstr ""
-#: order/models.py:391 order/templates/order/order_base.html:152
-#: templates/js/translated/purchase_order.js:1662
+#: order/models.py:404 order/templates/order/order_base.html:148
+#: templates/js/translated/purchase_order.js:1677
msgid "Supplier Reference"
msgstr ""
-#: order/models.py:391
+#: order/models.py:404
msgid "Supplier order reference code"
msgstr ""
-#: order/models.py:398
+#: order/models.py:411
msgid "received by"
msgstr ""
-#: order/models.py:403 order/models.py:1761
+#: order/models.py:416 order/models.py:1774
msgid "Issue Date"
msgstr ""
-#: order/models.py:404 order/models.py:1762
+#: order/models.py:417 order/models.py:1775
msgid "Date order was issued"
msgstr ""
-#: order/models.py:410 order/models.py:1768
+#: order/models.py:423 order/models.py:1781
msgid "Date order was completed"
msgstr ""
-#: order/models.py:445
+#: order/models.py:458
msgid "Part supplier must match PO supplier"
msgstr ""
-#: order/models.py:606
+#: order/models.py:619
msgid "Quantity must be a positive number"
msgstr ""
-#: order/models.py:780
+#: order/models.py:793
msgid "Company to which the items are being sold"
msgstr ""
-#: order/models.py:799 order/models.py:1755
+#: order/models.py:812 order/models.py:1768
msgid "Customer Reference "
msgstr ""
-#: order/models.py:799 order/models.py:1756
+#: order/models.py:812 order/models.py:1769
msgid "Customer order reference code"
msgstr ""
-#: order/models.py:801 order/models.py:1408
-#: templates/js/translated/sales_order.js:831
-#: templates/js/translated/sales_order.js:1012
+#: order/models.py:814 order/models.py:1421
+#: templates/js/translated/sales_order.js:843
+#: templates/js/translated/sales_order.js:1024
msgid "Shipment Date"
msgstr ""
-#: order/models.py:808
+#: order/models.py:821
msgid "shipped by"
msgstr ""
-#: order/models.py:857
+#: order/models.py:870
msgid "Order cannot be completed as no parts have been assigned"
msgstr ""
-#: order/models.py:861
+#: order/models.py:874
msgid "Only an open order can be marked as complete"
msgstr ""
-#: order/models.py:864 templates/js/translated/sales_order.js:491
+#: order/models.py:877 templates/js/translated/sales_order.js:503
msgid "Order cannot be completed as there are incomplete shipments"
msgstr ""
-#: order/models.py:867
+#: order/models.py:880
msgid "Order cannot be completed as there are incomplete line items"
msgstr ""
-#: order/models.py:1074
+#: order/models.py:1087
msgid "Item quantity"
msgstr ""
-#: order/models.py:1087
+#: order/models.py:1100
msgid "Line item reference"
msgstr ""
-#: order/models.py:1089
+#: order/models.py:1102
msgid "Line item notes"
msgstr ""
-#: order/models.py:1100
+#: order/models.py:1113
msgid "Target date for this line item (leave blank to use the target date from the order)"
msgstr ""
-#: order/models.py:1118
+#: order/models.py:1131
msgid "Line item description (optional)"
msgstr ""
-#: order/models.py:1123
+#: order/models.py:1136
msgid "Context"
msgstr ""
-#: order/models.py:1124
+#: order/models.py:1137
msgid "Additional context for this line"
msgstr ""
-#: order/models.py:1133
+#: order/models.py:1146
msgid "Unit price"
msgstr ""
-#: order/models.py:1163
+#: order/models.py:1176
msgid "Supplier part must match supplier"
msgstr ""
-#: order/models.py:1171
+#: order/models.py:1184
msgid "deleted"
msgstr ""
-#: order/models.py:1177 order/models.py:1262 order/models.py:1303
-#: order/models.py:1402 order/models.py:1551 order/models.py:1908
-#: order/models.py:1955 templates/js/translated/sales_order.js:1474
+#: order/models.py:1190 order/models.py:1275 order/models.py:1316
+#: order/models.py:1415 order/models.py:1564 order/models.py:1921
+#: order/models.py:1968 templates/js/translated/sales_order.js:1486
msgid "Order"
msgstr ""
-#: order/models.py:1196
+#: order/models.py:1209
msgid "Supplier part"
msgstr ""
-#: order/models.py:1203 order/templates/order/order_base.html:200
-#: templates/js/translated/part.js:1841 templates/js/translated/part.js:1872
-#: templates/js/translated/purchase_order.js:1276
-#: templates/js/translated/purchase_order.js:2137
-#: templates/js/translated/return_order.js:748
-#: templates/js/translated/table_filters.js:90
-#: templates/js/translated/table_filters.js:515
+#: order/models.py:1216 order/templates/order/order_base.html:196
+#: templates/js/translated/part.js:1840 templates/js/translated/part.js:1871
+#: templates/js/translated/purchase_order.js:1291
+#: templates/js/translated/purchase_order.js:2147
+#: templates/js/translated/return_order.js:760
+#: templates/js/translated/table_filters.js:96
+#: templates/js/translated/table_filters.js:537
msgid "Received"
msgstr ""
-#: order/models.py:1204
+#: order/models.py:1217
msgid "Number of items received"
msgstr ""
-#: order/models.py:1211 stock/models.py:823 stock/serializers.py:252
+#: order/models.py:1224 stock/models.py:823 stock/serializers.py:314
#: stock/templates/stock/item_base.html:184
-#: templates/js/translated/stock.js:2047
+#: templates/js/translated/stock.js:2204
msgid "Purchase Price"
msgstr ""
-#: order/models.py:1212
+#: order/models.py:1225
msgid "Unit purchase price"
msgstr ""
-#: order/models.py:1225
+#: order/models.py:1238
msgid "Where does the Purchaser want this item to be stored?"
msgstr ""
-#: order/models.py:1291
+#: order/models.py:1304
msgid "Virtual part cannot be assigned to a sales order"
msgstr ""
-#: order/models.py:1296
+#: order/models.py:1309
msgid "Only salable parts can be assigned to a sales order"
msgstr ""
-#: order/models.py:1322 part/templates/part/part_pricing.html:107
+#: order/models.py:1335 part/templates/part/part_pricing.html:107
#: part/templates/part/prices.html:128 templates/js/translated/pricing.js:943
msgid "Sale Price"
msgstr ""
-#: order/models.py:1323
+#: order/models.py:1336
msgid "Unit sale price"
msgstr ""
-#: order/models.py:1333
+#: order/models.py:1346
msgid "Shipped quantity"
msgstr ""
-#: order/models.py:1409
+#: order/models.py:1422
msgid "Date of shipment"
msgstr ""
-#: order/models.py:1414 templates/js/translated/sales_order.js:1024
+#: order/models.py:1427 templates/js/translated/sales_order.js:1036
msgid "Delivery Date"
msgstr ""
-#: order/models.py:1415
+#: order/models.py:1428
msgid "Date of delivery of shipment"
msgstr ""
-#: order/models.py:1422
+#: order/models.py:1435
msgid "Checked By"
msgstr ""
-#: order/models.py:1423
+#: order/models.py:1436
msgid "User who checked this shipment"
msgstr ""
-#: order/models.py:1430 order/models.py:1627 order/serializers.py:1248
-#: order/serializers.py:1376 templates/js/translated/model_renderers.js:415
+#: order/models.py:1443 order/models.py:1640 order/serializers.py:1254
+#: order/serializers.py:1382 templates/js/translated/model_renderers.js:429
msgid "Shipment"
msgstr ""
-#: order/models.py:1431
+#: order/models.py:1444
msgid "Shipment number"
msgstr ""
-#: order/models.py:1439
+#: order/models.py:1452
msgid "Tracking Number"
msgstr ""
-#: order/models.py:1440
+#: order/models.py:1453
msgid "Shipment tracking information"
msgstr ""
-#: order/models.py:1447
+#: order/models.py:1460
msgid "Invoice Number"
msgstr ""
-#: order/models.py:1448
+#: order/models.py:1461
msgid "Reference number for associated invoice"
msgstr ""
-#: order/models.py:1470
+#: order/models.py:1483
msgid "Shipment has already been sent"
msgstr ""
-#: order/models.py:1473
+#: order/models.py:1486
msgid "Shipment has no allocated stock items"
msgstr ""
-#: order/models.py:1586 order/models.py:1588
+#: order/models.py:1599 order/models.py:1601
msgid "Stock item has not been assigned"
msgstr ""
-#: order/models.py:1592
+#: order/models.py:1605
msgid "Cannot allocate stock item to a line with a different part"
msgstr ""
-#: order/models.py:1594
+#: order/models.py:1607
msgid "Cannot allocate stock to a line without a part"
msgstr ""
-#: order/models.py:1597
+#: order/models.py:1610
msgid "Allocation quantity cannot exceed stock quantity"
msgstr ""
-#: order/models.py:1607 order/serializers.py:1110
+#: order/models.py:1620 order/serializers.py:1116
msgid "Quantity must be 1 for serialized stock item"
msgstr ""
-#: order/models.py:1610
+#: order/models.py:1623
msgid "Sales order does not match shipment"
msgstr ""
-#: order/models.py:1611
+#: order/models.py:1624
msgid "Shipment does not match sales order"
msgstr ""
-#: order/models.py:1619
+#: order/models.py:1632
msgid "Line"
msgstr ""
-#: order/models.py:1628
+#: order/models.py:1641
msgid "Sales order shipment reference"
msgstr ""
-#: order/models.py:1641 order/models.py:1916
-#: templates/js/translated/return_order.js:706
+#: order/models.py:1654 order/models.py:1929
+#: templates/js/translated/return_order.js:718
msgid "Item"
msgstr ""
-#: order/models.py:1642
+#: order/models.py:1655
msgid "Select stock item to allocate"
msgstr ""
-#: order/models.py:1645
+#: order/models.py:1658
msgid "Enter stock allocation quantity"
msgstr ""
-#: order/models.py:1725
+#: order/models.py:1738
msgid "Return Order reference"
msgstr ""
-#: order/models.py:1739
+#: order/models.py:1752
msgid "Company from which items are being returned"
msgstr ""
-#: order/models.py:1750
+#: order/models.py:1763
msgid "Return order status"
msgstr ""
-#: order/models.py:1901
+#: order/models.py:1914
msgid "Only serialized items can be assigned to a Return Order"
msgstr ""
-#: order/models.py:1917
+#: order/models.py:1930
msgid "Select item to return from customer"
msgstr ""
-#: order/models.py:1922
+#: order/models.py:1935
msgid "Received Date"
msgstr ""
-#: order/models.py:1923
+#: order/models.py:1936
msgid "The date this this return item was received"
msgstr ""
-#: order/models.py:1934 templates/js/translated/return_order.js:717
-#: templates/js/translated/table_filters.js:93
+#: order/models.py:1947 templates/js/translated/return_order.js:729
+#: templates/js/translated/table_filters.js:99
msgid "Outcome"
msgstr ""
-#: order/models.py:1934
+#: order/models.py:1947
msgid "Outcome for this line item"
msgstr ""
-#: order/models.py:1940
+#: order/models.py:1953
msgid "Cost associated with return or repair for this line item"
msgstr ""
-#: order/serializers.py:247
+#: order/serializers.py:253
msgid "Order cannot be cancelled"
msgstr ""
-#: order/serializers.py:262 order/serializers.py:1128
+#: order/serializers.py:268 order/serializers.py:1134
msgid "Allow order to be closed with incomplete line items"
msgstr ""
-#: order/serializers.py:273 order/serializers.py:1139
+#: order/serializers.py:279 order/serializers.py:1145
msgid "Order has incomplete line items"
msgstr ""
-#: order/serializers.py:386
+#: order/serializers.py:392
msgid "Order is not open"
msgstr ""
-#: order/serializers.py:404
+#: order/serializers.py:410
msgid "Purchase price currency"
msgstr ""
-#: order/serializers.py:422
+#: order/serializers.py:428
msgid "Supplier part must be specified"
msgstr ""
-#: order/serializers.py:427
+#: order/serializers.py:433
msgid "Purchase order must be specified"
msgstr ""
-#: order/serializers.py:433
+#: order/serializers.py:439
msgid "Supplier must match purchase order"
msgstr ""
-#: order/serializers.py:434
+#: order/serializers.py:440
msgid "Purchase order must match supplier"
msgstr ""
-#: order/serializers.py:472 order/serializers.py:1216
+#: order/serializers.py:478 order/serializers.py:1222
msgid "Line Item"
msgstr ""
-#: order/serializers.py:478
+#: order/serializers.py:484
msgid "Line item does not match purchase order"
msgstr ""
-#: order/serializers.py:488 order/serializers.py:607 order/serializers.py:1589
+#: order/serializers.py:494 order/serializers.py:613 order/serializers.py:1595
msgid "Select destination location for received items"
msgstr ""
-#: order/serializers.py:507 templates/js/translated/purchase_order.js:1100
+#: order/serializers.py:513 templates/js/translated/purchase_order.js:1115
msgid "Enter batch code for incoming stock items"
msgstr ""
-#: order/serializers.py:515 templates/js/translated/purchase_order.js:1124
+#: order/serializers.py:521 templates/js/translated/purchase_order.js:1139
msgid "Enter serial numbers for incoming stock items"
msgstr ""
-#: order/serializers.py:528 templates/js/translated/barcode.js:52
+#: order/serializers.py:534 templates/js/translated/barcode.js:52
msgid "Barcode"
msgstr ""
-#: order/serializers.py:529
+#: order/serializers.py:535
msgid "Scanned barcode"
msgstr ""
-#: order/serializers.py:545
+#: order/serializers.py:551
msgid "Barcode is already in use"
msgstr ""
-#: order/serializers.py:569
+#: order/serializers.py:575
msgid "An integer quantity must be provided for trackable parts"
msgstr ""
-#: order/serializers.py:623 order/serializers.py:1604
+#: order/serializers.py:629 order/serializers.py:1610
msgid "Line items must be provided"
msgstr ""
-#: order/serializers.py:640
+#: order/serializers.py:646
msgid "Destination location must be specified"
msgstr ""
-#: order/serializers.py:651
+#: order/serializers.py:657
msgid "Supplied barcode values must be unique"
msgstr ""
-#: order/serializers.py:950
+#: order/serializers.py:956
msgid "Sale price currency"
msgstr ""
-#: order/serializers.py:1007
+#: order/serializers.py:1013
msgid "No shipment details provided"
msgstr ""
-#: order/serializers.py:1071 order/serializers.py:1225
+#: order/serializers.py:1077 order/serializers.py:1231
msgid "Line item is not associated with this order"
msgstr ""
-#: order/serializers.py:1093
+#: order/serializers.py:1099
msgid "Quantity must be positive"
msgstr ""
-#: order/serializers.py:1238
+#: order/serializers.py:1244
msgid "Enter serial numbers to allocate"
msgstr ""
-#: order/serializers.py:1260 order/serializers.py:1384
+#: order/serializers.py:1266 order/serializers.py:1390
msgid "Shipment has already been shipped"
msgstr ""
-#: order/serializers.py:1263 order/serializers.py:1387
+#: order/serializers.py:1269 order/serializers.py:1393
msgid "Shipment is not associated with this order"
msgstr ""
-#: order/serializers.py:1317
+#: order/serializers.py:1323
msgid "No match found for the following serial numbers"
msgstr ""
-#: order/serializers.py:1327
+#: order/serializers.py:1333
msgid "The following serial numbers are already allocated"
msgstr ""
-#: order/serializers.py:1555
+#: order/serializers.py:1561
msgid "Return order line item"
msgstr ""
-#: order/serializers.py:1562
+#: order/serializers.py:1568
msgid "Line item does not match return order"
msgstr ""
-#: order/serializers.py:1565
+#: order/serializers.py:1571
msgid "Line item has already been received"
msgstr ""
-#: order/serializers.py:1597
+#: order/serializers.py:1603
msgid "Items can only be received against orders which are in progress"
msgstr ""
-#: order/serializers.py:1678
+#: order/serializers.py:1684
msgid "Line price currency"
msgstr ""
@@ -4957,82 +5013,74 @@ msgid "Issue Order"
msgstr ""
#: order/templates/order/order_base.html:83
-msgid "Receive items"
-msgstr ""
-
-#: order/templates/order/order_base.html:85
-msgid "Receive Items"
-msgstr ""
-
-#: order/templates/order/order_base.html:87
#: order/templates/order/return_order_base.html:87
msgid "Mark order as complete"
msgstr ""
-#: order/templates/order/order_base.html:88
+#: order/templates/order/order_base.html:84
#: order/templates/order/return_order_base.html:88
#: order/templates/order/sales_order_base.html:94
msgid "Complete Order"
msgstr ""
-#: order/templates/order/order_base.html:95
+#: order/templates/order/order_base.html:91
msgid "Supplier part thumbnail"
msgstr ""
-#: order/templates/order/order_base.html:110
+#: order/templates/order/order_base.html:106
#: order/templates/order/return_order_base.html:102
#: order/templates/order/sales_order_base.html:107
msgid "Order Reference"
msgstr ""
-#: order/templates/order/order_base.html:115
+#: order/templates/order/order_base.html:111
#: order/templates/order/return_order_base.html:107
#: order/templates/order/sales_order_base.html:112
msgid "Order Description"
msgstr ""
-#: order/templates/order/order_base.html:122
+#: order/templates/order/order_base.html:118
#: order/templates/order/return_order_base.html:114
#: order/templates/order/sales_order_base.html:119
msgid "Order Status"
msgstr ""
-#: order/templates/order/order_base.html:145
+#: order/templates/order/order_base.html:141
msgid "No suppplier information available"
msgstr ""
-#: order/templates/order/order_base.html:158
+#: order/templates/order/order_base.html:154
#: order/templates/order/sales_order_base.html:158
msgid "Completed Line Items"
msgstr ""
-#: order/templates/order/order_base.html:164
+#: order/templates/order/order_base.html:160
#: order/templates/order/sales_order_base.html:164
#: order/templates/order/sales_order_base.html:174
msgid "Incomplete"
msgstr ""
-#: order/templates/order/order_base.html:183
+#: order/templates/order/order_base.html:179
#: order/templates/order/return_order_base.html:158
#: report/templates/report/inventree_build_order_base.html:121
msgid "Issued"
msgstr ""
-#: order/templates/order/order_base.html:221
+#: order/templates/order/order_base.html:224
msgid "Total cost"
msgstr ""
-#: order/templates/order/order_base.html:225
-#: order/templates/order/return_order_base.html:193
-#: order/templates/order/sales_order_base.html:233
+#: order/templates/order/order_base.html:228
+#: order/templates/order/return_order_base.html:200
+#: order/templates/order/sales_order_base.html:240
msgid "Total cost could not be calculated"
msgstr ""
-#: order/templates/order/order_base.html:331
+#: order/templates/order/order_base.html:318
msgid "Purchase Order QR Code"
msgstr ""
-#: order/templates/order/order_base.html:343
+#: order/templates/order/order_base.html:330
msgid "Link Barcode to Purchase Order"
msgstr ""
@@ -5085,13 +5133,13 @@ msgstr ""
#: part/templates/part/import_wizard/ajax_match_references.html:42
#: part/templates/part/import_wizard/match_fields.html:71
#: part/templates/part/import_wizard/match_references.html:49
-#: templates/js/translated/bom.js:132 templates/js/translated/build.js:512
-#: templates/js/translated/build.js:2348
-#: templates/js/translated/purchase_order.js:692
-#: templates/js/translated/purchase_order.js:1206
-#: templates/js/translated/return_order.js:494
-#: templates/js/translated/sales_order.js:1097
-#: templates/js/translated/stock.js:681 templates/js/translated/stock.js:850
+#: templates/js/translated/bom.js:133 templates/js/translated/build.js:518
+#: templates/js/translated/build.js:1555
+#: templates/js/translated/purchase_order.js:703
+#: templates/js/translated/purchase_order.js:1221
+#: templates/js/translated/return_order.js:506
+#: templates/js/translated/sales_order.js:1109
+#: templates/js/translated/stock.js:680 templates/js/translated/stock.js:849
#: templates/patterns/wizard/match_fields.html:70
msgid "Remove row"
msgstr ""
@@ -5152,9 +5200,9 @@ msgstr ""
#: order/templates/order/purchase_order_detail.html:27
#: order/templates/order/return_order_detail.html:24
#: order/templates/order/sales_order_detail.html:24
-#: templates/js/translated/purchase_order.js:419
-#: templates/js/translated/return_order.js:447
-#: templates/js/translated/sales_order.js:222
+#: templates/js/translated/purchase_order.js:430
+#: templates/js/translated/return_order.js:459
+#: templates/js/translated/sales_order.js:234
msgid "Add Line Item"
msgstr ""
@@ -5165,30 +5213,25 @@ msgstr ""
msgid "Receive Line Items"
msgstr ""
-#: order/templates/order/purchase_order_detail.html:49
#: order/templates/order/purchase_order_detail.html:50
-msgid "Delete Line Items"
-msgstr ""
-
-#: order/templates/order/purchase_order_detail.html:66
-#: order/templates/order/return_order_detail.html:47
-#: order/templates/order/sales_order_detail.html:43
+#: order/templates/order/return_order_detail.html:45
+#: order/templates/order/sales_order_detail.html:41
msgid "Extra Lines"
msgstr ""
-#: order/templates/order/purchase_order_detail.html:72
-#: order/templates/order/return_order_detail.html:53
-#: order/templates/order/sales_order_detail.html:49
+#: order/templates/order/purchase_order_detail.html:56
+#: order/templates/order/return_order_detail.html:51
+#: order/templates/order/sales_order_detail.html:47
msgid "Add Extra Line"
msgstr ""
-#: order/templates/order/purchase_order_detail.html:92
+#: order/templates/order/purchase_order_detail.html:74
msgid "Received Items"
msgstr ""
-#: order/templates/order/purchase_order_detail.html:117
-#: order/templates/order/return_order_detail.html:89
-#: order/templates/order/sales_order_detail.html:149
+#: order/templates/order/purchase_order_detail.html:99
+#: order/templates/order/return_order_detail.html:85
+#: order/templates/order/sales_order_detail.html:139
msgid "Order Notes"
msgstr ""
@@ -5208,29 +5251,29 @@ msgstr ""
#: order/templates/order/return_order_base.html:139
#: order/templates/order/sales_order_base.html:152
-#: templates/js/translated/return_order.js:297
-#: templates/js/translated/sales_order.js:785
+#: templates/js/translated/return_order.js:309
+#: templates/js/translated/sales_order.js:797
msgid "Customer Reference"
msgstr ""
-#: order/templates/order/return_order_base.html:189
-#: order/templates/order/sales_order_base.html:229
+#: order/templates/order/return_order_base.html:196
+#: order/templates/order/sales_order_base.html:236
#: part/templates/part/part_pricing.html:32
#: part/templates/part/part_pricing.html:58
#: part/templates/part/part_pricing.html:99
#: part/templates/part/part_pricing.html:114
-#: templates/js/translated/part.js:1046
-#: templates/js/translated/purchase_order.js:1712
-#: templates/js/translated/return_order.js:369
-#: templates/js/translated/sales_order.js:843
+#: templates/js/translated/part.js:1045
+#: templates/js/translated/purchase_order.js:1727
+#: templates/js/translated/return_order.js:381
+#: templates/js/translated/sales_order.js:855
msgid "Total Cost"
msgstr ""
-#: order/templates/order/return_order_base.html:257
+#: order/templates/order/return_order_base.html:264
msgid "Return Order QR Code"
msgstr ""
-#: order/templates/order/return_order_base.html:269
+#: order/templates/order/return_order_base.html:276
msgid "Link Barcode to Return Order"
msgstr ""
@@ -5248,7 +5291,7 @@ msgid "Ship Items"
msgstr ""
#: order/templates/order/sales_order_base.html:93
-#: templates/js/translated/sales_order.js:469
+#: templates/js/translated/sales_order.js:481
msgid "Complete Sales Order"
msgstr ""
@@ -5257,16 +5300,16 @@ msgid "This Sales Order has not been fully allocated"
msgstr ""
#: order/templates/order/sales_order_base.html:170
-#: order/templates/order/sales_order_detail.html:105
+#: order/templates/order/sales_order_detail.html:99
#: order/templates/order/so_sidebar.html:11
msgid "Completed Shipments"
msgstr ""
-#: order/templates/order/sales_order_base.html:306
+#: order/templates/order/sales_order_base.html:313
msgid "Sales Order QR Code"
msgstr ""
-#: order/templates/order/sales_order_base.html:318
+#: order/templates/order/sales_order_base.html:325
msgid "Link Barcode to Sales Order"
msgstr ""
@@ -5274,18 +5317,17 @@ msgstr ""
msgid "Sales Order Items"
msgstr ""
-#: order/templates/order/sales_order_detail.html:71
-#: order/templates/order/so_sidebar.html:8 templates/InvenTree/index.html:332
+#: order/templates/order/sales_order_detail.html:67
+#: order/templates/order/so_sidebar.html:8 templates/InvenTree/index.html:284
msgid "Pending Shipments"
msgstr ""
-#: order/templates/order/sales_order_detail.html:75
-#: templates/attachment_table.html:6 templates/js/translated/bom.js:1236
-#: templates/js/translated/build.js:2249
+#: order/templates/order/sales_order_detail.html:71
+#: templates/js/translated/bom.js:1256 templates/js/translated/filters.js:297
msgid "Actions"
msgstr ""
-#: order/templates/order/sales_order_detail.html:84
+#: order/templates/order/sales_order_detail.html:80
msgid "New Shipment"
msgstr ""
@@ -5311,12 +5353,12 @@ msgstr ""
msgid "Updated {part} unit-price to {price} and quantity to {qty}"
msgstr ""
-#: part/admin.py:33 part/admin.py:273 part/models.py:3667 part/tasks.py:288
+#: part/admin.py:33 part/admin.py:273 part/models.py:3716 part/tasks.py:288
#: stock/admin.py:101
msgid "Part ID"
msgstr ""
-#: part/admin.py:34 part/admin.py:275 part/models.py:3671 part/tasks.py:289
+#: part/admin.py:34 part/admin.py:275 part/models.py:3720 part/tasks.py:289
#: stock/admin.py:102
msgid "Part Name"
msgstr ""
@@ -5325,19 +5367,19 @@ msgstr ""
msgid "Part Description"
msgstr ""
-#: part/admin.py:36 part/models.py:889 part/templates/part/part_base.html:271
-#: templates/js/translated/part.js:1200 templates/js/translated/part.js:2233
-#: templates/js/translated/stock.js:1795
+#: part/admin.py:36 part/models.py:890 part/templates/part/part_base.html:271
+#: templates/js/translated/part.js:1199 templates/js/translated/part.js:2309
+#: templates/js/translated/stock.js:1952
msgid "IPN"
msgstr ""
-#: part/admin.py:37 part/models.py:896 part/templates/part/part_base.html:279
-#: report/models.py:179 templates/js/translated/part.js:1205
-#: templates/js/translated/part.js:2239
+#: part/admin.py:37 part/models.py:897 part/templates/part/part_base.html:279
+#: report/models.py:179 templates/js/translated/part.js:1204
+#: templates/js/translated/part.js:2315
msgid "Revision"
msgstr ""
-#: part/admin.py:38 part/admin.py:198 part/models.py:875
+#: part/admin.py:38 part/admin.py:198 part/models.py:876
#: part/templates/part/category.html:93 part/templates/part/part_base.html:300
msgid "Keywords"
msgstr ""
@@ -5358,24 +5400,24 @@ msgstr ""
msgid "Default Supplier ID"
msgstr ""
-#: part/admin.py:46 part/models.py:864 part/templates/part/part_base.html:179
+#: part/admin.py:46 part/models.py:865 part/templates/part/part_base.html:179
msgid "Variant Of"
msgstr ""
-#: part/admin.py:47 part/models.py:980 part/templates/part/part_base.html:205
+#: part/admin.py:47 part/models.py:981 part/templates/part/part_base.html:205
msgid "Minimum Stock"
msgstr ""
#: part/admin.py:61 part/templates/part/part_base.html:199
-#: templates/js/translated/company.js:1299
-#: templates/js/translated/table_filters.js:301
+#: templates/js/translated/company.js:1720
+#: templates/js/translated/table_filters.js:307
msgid "In Stock"
msgstr ""
#: part/admin.py:62 part/bom.py:178 part/templates/part/part_base.html:212
-#: templates/js/translated/bom.js:1167 templates/js/translated/build.js:2191
-#: templates/js/translated/part.js:687 templates/js/translated/part.js:2123
-#: templates/js/translated/table_filters.js:140
+#: templates/js/translated/bom.js:1187 templates/js/translated/build.js:2541
+#: templates/js/translated/part.js:686 templates/js/translated/part.js:2122
+#: templates/js/translated/table_filters.js:146
msgid "On Order"
msgstr ""
@@ -5383,23 +5425,16 @@ msgstr ""
msgid "Used In"
msgstr ""
-#: part/admin.py:64 templates/js/translated/build.js:2203
-#: templates/js/translated/build.js:2465 templates/js/translated/build.js:3052
-#: templates/js/translated/sales_order.js:1906
-#: templates/js/translated/table_filters.js:488
-msgid "Allocated"
-msgstr ""
-
#: part/admin.py:65 part/templates/part/part_base.html:243 stock/admin.py:124
-#: templates/js/translated/part.js:692 templates/js/translated/part.js:2127
+#: templates/js/translated/part.js:691 templates/js/translated/part.js:2126
msgid "Building"
msgstr ""
-#: part/admin.py:66 part/models.py:2930 templates/js/translated/part.js:943
+#: part/admin.py:66 part/models.py:2964 templates/js/translated/part.js:942
msgid "Minimum Cost"
msgstr ""
-#: part/admin.py:67 part/models.py:2936 templates/js/translated/part.js:953
+#: part/admin.py:67 part/models.py:2970 templates/js/translated/part.js:952
msgid "Maximum Cost"
msgstr ""
@@ -5416,13 +5451,13 @@ msgstr ""
msgid "Category Path"
msgstr ""
-#: part/admin.py:202 part/models.py:392 part/templates/part/cat_link.html:3
-#: part/templates/part/category.html:23 part/templates/part/category.html:140
-#: part/templates/part/category.html:160
+#: part/admin.py:202 part/models.py:393 part/serializers.py:307
+#: part/templates/part/cat_link.html:3 part/templates/part/category.html:23
+#: part/templates/part/category.html:140 part/templates/part/category.html:160
#: part/templates/part/category_sidebar.html:9
-#: templates/InvenTree/index.html:86 templates/InvenTree/search.html:84
+#: templates/InvenTree/index.html:36 templates/InvenTree/search.html:84
#: templates/InvenTree/settings/sidebar.html:45
-#: templates/js/translated/part.js:2754 templates/js/translated/search.js:172
+#: templates/js/translated/part.js:2739 templates/js/translated/search.js:130
#: templates/navbar.html:24 users/models.py:38
msgid "Parts"
msgstr "Artiklar"
@@ -5439,7 +5474,7 @@ msgstr ""
msgid "Parent IPN"
msgstr ""
-#: part/admin.py:274 part/models.py:3675
+#: part/admin.py:274 part/models.py:3724
msgid "Part IPN"
msgstr ""
@@ -5453,35 +5488,35 @@ msgstr ""
msgid "Maximum Price"
msgstr ""
-#: part/api.py:498
+#: part/api.py:501
msgid "Incoming Purchase Order"
msgstr ""
-#: part/api.py:518
+#: part/api.py:521
msgid "Outgoing Sales Order"
msgstr ""
-#: part/api.py:536
+#: part/api.py:539
msgid "Stock produced by Build Order"
msgstr ""
-#: part/api.py:622
+#: part/api.py:625
msgid "Stock required for Build Order"
msgstr ""
-#: part/api.py:770
+#: part/api.py:773
msgid "Valid"
msgstr ""
-#: part/api.py:771
+#: part/api.py:774
msgid "Validate entire Bill of Materials"
msgstr ""
-#: part/api.py:777
+#: part/api.py:780
msgid "This option must be selected"
msgstr ""
-#: part/bom.py:175 part/models.py:127 part/models.py:923
+#: part/bom.py:175 part/models.py:128 part/models.py:924
#: part/templates/part/category.html:115 part/templates/part/part_base.html:369
msgid "Default Location"
msgstr ""
@@ -5491,7 +5526,7 @@ msgid "Total Stock"
msgstr ""
#: part/bom.py:177 part/templates/part/part_base.html:194
-#: templates/js/translated/sales_order.js:1873
+#: templates/js/translated/sales_order.js:1885
msgid "Available Stock"
msgstr ""
@@ -5499,916 +5534,913 @@ msgstr ""
msgid "Input quantity for price calculation"
msgstr ""
-#: part/models.py:75 part/models.py:3616 part/templates/part/category.html:16
+#: part/models.py:76 part/models.py:3665 part/templates/part/category.html:16
#: part/templates/part/part_app_base.html:10
msgid "Part Category"
msgstr ""
-#: part/models.py:76 part/templates/part/category.html:135
-#: templates/InvenTree/search.html:97 templates/js/translated/search.js:200
+#: part/models.py:77 part/templates/part/category.html:135
+#: templates/InvenTree/search.html:97 templates/js/translated/search.js:158
#: users/models.py:37
msgid "Part Categories"
msgstr ""
-#: part/models.py:128
+#: part/models.py:129
msgid "Default location for parts in this category"
msgstr ""
-#: part/models.py:133 stock/models.py:124 templates/js/translated/stock.js:2520
-#: templates/js/translated/table_filters.js:209
-#: templates/js/translated/table_filters.js:229
+#: part/models.py:134 stock/models.py:124 templates/js/translated/stock.js:2651
+#: templates/js/translated/table_filters.js:215
+#: templates/js/translated/table_filters.js:235
msgid "Structural"
msgstr ""
-#: part/models.py:135
+#: part/models.py:136
msgid "Parts may not be directly assigned to a structural category, but may be assigned to child categories."
msgstr ""
-#: part/models.py:139
+#: part/models.py:140
msgid "Default keywords"
msgstr ""
-#: part/models.py:139
+#: part/models.py:140
msgid "Default keywords for parts in this category"
msgstr ""
-#: part/models.py:144 stock/models.py:113
+#: part/models.py:145 stock/models.py:113
msgid "Icon"
msgstr ""
-#: part/models.py:145 stock/models.py:114
+#: part/models.py:146 stock/models.py:114
msgid "Icon (optional)"
msgstr ""
-#: part/models.py:164
+#: part/models.py:165
msgid "You cannot make this part category structural because some parts are already assigned to it!"
msgstr ""
-#: part/models.py:475
+#: part/models.py:476
msgid "Invalid choice for parent part"
msgstr ""
-#: part/models.py:517 part/models.py:529
+#: part/models.py:518 part/models.py:530
#, python-brace-format
msgid "Part '{p1}' is used in BOM for '{p2}' (recursive)"
msgstr ""
-#: part/models.py:601
+#: part/models.py:602
#, python-brace-format
msgid "IPN must match regex pattern {pat}"
msgstr "IPN måste matcha regex mönster {pat}"
-#: part/models.py:672
+#: part/models.py:673
msgid "Stock item with this serial number already exists"
msgstr ""
-#: part/models.py:803
+#: part/models.py:804
msgid "Duplicate IPN not allowed in part settings"
msgstr ""
-#: part/models.py:808
+#: part/models.py:809
msgid "Part with this Name, IPN and Revision already exists."
msgstr ""
-#: part/models.py:822
+#: part/models.py:823
msgid "Parts cannot be assigned to structural part categories!"
msgstr ""
-#: part/models.py:846 part/models.py:3672
+#: part/models.py:847 part/models.py:3721
msgid "Part name"
msgstr ""
-#: part/models.py:852
+#: part/models.py:853
msgid "Is Template"
msgstr ""
-#: part/models.py:853
+#: part/models.py:854
msgid "Is this part a template part?"
msgstr ""
-#: part/models.py:863
+#: part/models.py:864
msgid "Is this part a variant of another part?"
msgstr ""
-#: part/models.py:870
+#: part/models.py:871
msgid "Part description (optional)"
msgstr ""
-#: part/models.py:876
+#: part/models.py:877
msgid "Part keywords to improve visibility in search results"
msgstr ""
-#: part/models.py:883 part/models.py:3198 part/models.py:3615
-#: part/serializers.py:848 part/templates/part/part_base.html:262
+#: part/models.py:884 part/models.py:3232 part/models.py:3664
+#: part/serializers.py:320 part/serializers.py:910
+#: part/templates/part/part_base.html:262
#: templates/InvenTree/settings/settings_staff_js.html:204
#: templates/js/translated/notification.js:59
-#: templates/js/translated/part.js:2269 templates/js/translated/part.js:2481
+#: templates/js/translated/part.js:2345
msgid "Category"
msgstr ""
-#: part/models.py:884
+#: part/models.py:885
msgid "Part category"
msgstr ""
-#: part/models.py:890
+#: part/models.py:891
msgid "Internal Part Number"
msgstr ""
-#: part/models.py:895
+#: part/models.py:896
msgid "Part revision or version number"
msgstr ""
-#: part/models.py:921
+#: part/models.py:922
msgid "Where is this item normally stored?"
msgstr ""
-#: part/models.py:966 part/templates/part/part_base.html:378
+#: part/models.py:967 part/templates/part/part_base.html:378
msgid "Default Supplier"
msgstr ""
-#: part/models.py:967
+#: part/models.py:968
msgid "Default supplier part"
msgstr ""
-#: part/models.py:974
+#: part/models.py:975
msgid "Default Expiry"
msgstr ""
-#: part/models.py:975
+#: part/models.py:976
msgid "Expiry time (in days) for stock items of this part"
msgstr ""
-#: part/models.py:981
+#: part/models.py:982
msgid "Minimum allowed stock level"
msgstr ""
-#: part/models.py:988
+#: part/models.py:989
msgid "Units of measure for this part"
msgstr ""
-#: part/models.py:997
+#: part/models.py:998
msgid "Can this part be built from other parts?"
msgstr ""
-#: part/models.py:1003
+#: part/models.py:1004
msgid "Can this part be used to build other parts?"
msgstr ""
-#: part/models.py:1009
+#: part/models.py:1010
msgid "Does this part have tracking for unique items?"
msgstr ""
-#: part/models.py:1014
+#: part/models.py:1015
msgid "Can this part be purchased from external suppliers?"
msgstr ""
-#: part/models.py:1019
+#: part/models.py:1020
msgid "Can this part be sold to customers?"
msgstr ""
-#: part/models.py:1024
+#: part/models.py:1025
msgid "Is this part active?"
msgstr ""
-#: part/models.py:1029
+#: part/models.py:1030
msgid "Is this a virtual part, such as a software product or license?"
msgstr ""
-#: part/models.py:1031
+#: part/models.py:1032
msgid "BOM checksum"
msgstr ""
-#: part/models.py:1031
+#: part/models.py:1032
msgid "Stored BOM checksum"
msgstr ""
-#: part/models.py:1034
+#: part/models.py:1035
msgid "BOM checked by"
msgstr ""
-#: part/models.py:1036
+#: part/models.py:1037
msgid "BOM checked date"
msgstr ""
-#: part/models.py:1040
+#: part/models.py:1041
msgid "Creation User"
msgstr ""
-#: part/models.py:1042
+#: part/models.py:1043
msgid "User responsible for this part"
msgstr ""
-#: part/models.py:1046 part/templates/part/part_base.html:341
+#: part/models.py:1047 part/templates/part/part_base.html:341
#: stock/templates/stock/item_base.html:447
-#: templates/js/translated/part.js:2331
+#: templates/js/translated/part.js:2407
msgid "Last Stocktake"
msgstr ""
-#: part/models.py:1921
+#: part/models.py:1923
msgid "Sell multiple"
msgstr ""
-#: part/models.py:2853
+#: part/models.py:2887
msgid "Currency used to cache pricing calculations"
msgstr ""
-#: part/models.py:2870
+#: part/models.py:2904
msgid "Minimum BOM Cost"
msgstr ""
-#: part/models.py:2871
+#: part/models.py:2905
msgid "Minimum cost of component parts"
msgstr ""
-#: part/models.py:2876
+#: part/models.py:2910
msgid "Maximum BOM Cost"
msgstr ""
-#: part/models.py:2877
+#: part/models.py:2911
msgid "Maximum cost of component parts"
msgstr ""
-#: part/models.py:2882
+#: part/models.py:2916
msgid "Minimum Purchase Cost"
msgstr ""
-#: part/models.py:2883
+#: part/models.py:2917
msgid "Minimum historical purchase cost"
msgstr ""
-#: part/models.py:2888
+#: part/models.py:2922
msgid "Maximum Purchase Cost"
msgstr ""
-#: part/models.py:2889
+#: part/models.py:2923
msgid "Maximum historical purchase cost"
msgstr ""
-#: part/models.py:2894
+#: part/models.py:2928
msgid "Minimum Internal Price"
msgstr ""
-#: part/models.py:2895
+#: part/models.py:2929
msgid "Minimum cost based on internal price breaks"
msgstr ""
-#: part/models.py:2900
+#: part/models.py:2934
msgid "Maximum Internal Price"
msgstr ""
-#: part/models.py:2901
+#: part/models.py:2935
msgid "Maximum cost based on internal price breaks"
msgstr ""
-#: part/models.py:2906
+#: part/models.py:2940
msgid "Minimum Supplier Price"
msgstr ""
-#: part/models.py:2907
+#: part/models.py:2941
msgid "Minimum price of part from external suppliers"
msgstr ""
-#: part/models.py:2912
+#: part/models.py:2946
msgid "Maximum Supplier Price"
msgstr ""
-#: part/models.py:2913
+#: part/models.py:2947
msgid "Maximum price of part from external suppliers"
msgstr ""
-#: part/models.py:2918
+#: part/models.py:2952
msgid "Minimum Variant Cost"
msgstr ""
-#: part/models.py:2919
+#: part/models.py:2953
msgid "Calculated minimum cost of variant parts"
msgstr ""
-#: part/models.py:2924
+#: part/models.py:2958
msgid "Maximum Variant Cost"
msgstr ""
-#: part/models.py:2925
+#: part/models.py:2959
msgid "Calculated maximum cost of variant parts"
msgstr ""
-#: part/models.py:2931
+#: part/models.py:2965
msgid "Calculated overall minimum cost"
msgstr ""
-#: part/models.py:2937
+#: part/models.py:2971
msgid "Calculated overall maximum cost"
msgstr ""
-#: part/models.py:2942
+#: part/models.py:2976
msgid "Minimum Sale Price"
msgstr ""
-#: part/models.py:2943
+#: part/models.py:2977
msgid "Minimum sale price based on price breaks"
msgstr ""
-#: part/models.py:2948
+#: part/models.py:2982
msgid "Maximum Sale Price"
msgstr ""
-#: part/models.py:2949
+#: part/models.py:2983
msgid "Maximum sale price based on price breaks"
msgstr ""
-#: part/models.py:2954
+#: part/models.py:2988
msgid "Minimum Sale Cost"
msgstr ""
-#: part/models.py:2955
+#: part/models.py:2989
msgid "Minimum historical sale price"
msgstr ""
-#: part/models.py:2960
+#: part/models.py:2994
msgid "Maximum Sale Cost"
msgstr ""
-#: part/models.py:2961
+#: part/models.py:2995
msgid "Maximum historical sale price"
msgstr ""
-#: part/models.py:2980
+#: part/models.py:3014
msgid "Part for stocktake"
msgstr ""
-#: part/models.py:2985
+#: part/models.py:3019
msgid "Item Count"
msgstr ""
-#: part/models.py:2986
+#: part/models.py:3020
msgid "Number of individual stock entries at time of stocktake"
msgstr ""
-#: part/models.py:2993
+#: part/models.py:3027
msgid "Total available stock at time of stocktake"
msgstr ""
-#: part/models.py:2997 part/models.py:3080
+#: part/models.py:3031 part/models.py:3114
#: part/templates/part/part_scheduling.html:13
#: report/templates/report/inventree_test_report_base.html:106
#: templates/InvenTree/settings/plugin_settings.html:37
#: templates/InvenTree/settings/settings_staff_js.html:360
-#: templates/js/translated/part.js:1059 templates/js/translated/pricing.js:812
+#: templates/js/translated/part.js:1058 templates/js/translated/pricing.js:812
#: templates/js/translated/pricing.js:936
-#: templates/js/translated/purchase_order.js:1691
-#: templates/js/translated/stock.js:2558
+#: templates/js/translated/purchase_order.js:1706
+#: templates/js/translated/stock.js:2689
msgid "Date"
msgstr ""
-#: part/models.py:2998
+#: part/models.py:3032
msgid "Date stocktake was performed"
msgstr ""
-#: part/models.py:3006
+#: part/models.py:3040
msgid "Additional notes"
msgstr ""
-#: part/models.py:3014
+#: part/models.py:3048
msgid "User who performed this stocktake"
msgstr ""
-#: part/models.py:3019
+#: part/models.py:3053
msgid "Minimum Stock Cost"
msgstr ""
-#: part/models.py:3020
+#: part/models.py:3054
msgid "Estimated minimum cost of stock on hand"
msgstr ""
-#: part/models.py:3025
+#: part/models.py:3059
msgid "Maximum Stock Cost"
msgstr ""
-#: part/models.py:3026
+#: part/models.py:3060
msgid "Estimated maximum cost of stock on hand"
msgstr ""
-#: part/models.py:3087 templates/InvenTree/settings/settings_staff_js.html:349
+#: part/models.py:3121 templates/InvenTree/settings/settings_staff_js.html:349
msgid "Report"
msgstr ""
-#: part/models.py:3088
+#: part/models.py:3122
msgid "Stocktake report file (generated internally)"
msgstr ""
-#: part/models.py:3093 templates/InvenTree/settings/settings_staff_js.html:356
+#: part/models.py:3127 templates/InvenTree/settings/settings_staff_js.html:356
msgid "Part Count"
msgstr ""
-#: part/models.py:3094
+#: part/models.py:3128
msgid "Number of parts covered by stocktake"
msgstr ""
-#: part/models.py:3102
+#: part/models.py:3136
msgid "User who requested this stocktake report"
msgstr ""
-#: part/models.py:3238
+#: part/models.py:3272
msgid "Test templates can only be created for trackable parts"
msgstr ""
-#: part/models.py:3255
+#: part/models.py:3289
msgid "Test with this name already exists for this part"
msgstr ""
-#: part/models.py:3275 templates/js/translated/part.js:2821
+#: part/models.py:3309 templates/js/translated/part.js:2806
msgid "Test Name"
msgstr ""
-#: part/models.py:3276
+#: part/models.py:3310
msgid "Enter a name for the test"
msgstr ""
-#: part/models.py:3281
+#: part/models.py:3315
msgid "Test Description"
msgstr ""
-#: part/models.py:3282
+#: part/models.py:3316
msgid "Enter description for this test"
msgstr ""
-#: part/models.py:3287 templates/js/translated/part.js:2830
-#: templates/js/translated/table_filters.js:423
+#: part/models.py:3321 templates/js/translated/part.js:2815
+#: templates/js/translated/table_filters.js:429
msgid "Required"
msgstr ""
-#: part/models.py:3288
+#: part/models.py:3322
msgid "Is this test required to pass?"
msgstr ""
-#: part/models.py:3293 templates/js/translated/part.js:2838
+#: part/models.py:3327 templates/js/translated/part.js:2823
msgid "Requires Value"
msgstr ""
-#: part/models.py:3294
+#: part/models.py:3328
msgid "Does this test require a value when adding a test result?"
msgstr ""
-#: part/models.py:3299 templates/js/translated/part.js:2845
+#: part/models.py:3333 templates/js/translated/part.js:2830
msgid "Requires Attachment"
msgstr ""
-#: part/models.py:3300
+#: part/models.py:3334
msgid "Does this test require a file attachment when adding a test result?"
msgstr ""
-#: part/models.py:3346
+#: part/models.py:3380
msgid "Checkbox parameters cannot have units"
msgstr ""
-#: part/models.py:3351
+#: part/models.py:3385
msgid "Checkbox parameters cannot have choices"
msgstr ""
-#: part/models.py:3369
+#: part/models.py:3403
msgid "Choices must be unique"
msgstr ""
-#: part/models.py:3385
+#: part/models.py:3419
msgid "Parameter template name must be unique"
msgstr ""
-#: part/models.py:3401
+#: part/models.py:3435
msgid "Parameter Name"
msgstr ""
-#: part/models.py:3407
+#: part/models.py:3441
msgid "Physical units for this parameter"
msgstr ""
-#: part/models.py:3417
+#: part/models.py:3451
msgid "Parameter description"
msgstr ""
-#: part/models.py:3423 templates/js/translated/part.js:1600
-#: templates/js/translated/table_filters.js:734
+#: part/models.py:3457 templates/js/translated/part.js:1599
+#: templates/js/translated/table_filters.js:756
msgid "Checkbox"
msgstr ""
-#: part/models.py:3424
+#: part/models.py:3458
msgid "Is this parameter a checkbox?"
msgstr ""
-#: part/models.py:3429 templates/js/translated/part.js:1609
+#: part/models.py:3463 templates/js/translated/part.js:1608
msgid "Choices"
msgstr ""
-#: part/models.py:3430
+#: part/models.py:3464
msgid "Valid choices for this parameter (comma-separated)"
msgstr ""
-#: part/models.py:3511
+#: part/models.py:3545
msgid "Invalid choice for parameter value"
msgstr ""
-#: part/models.py:3555
+#: part/models.py:3589
msgid "Parent Part"
msgstr ""
-#: part/models.py:3560 part/models.py:3621 part/models.py:3622
+#: part/models.py:3594 part/models.py:3670 part/models.py:3671
#: templates/InvenTree/settings/settings_staff_js.html:199
msgid "Parameter Template"
msgstr ""
-#: part/models.py:3565
+#: part/models.py:3599
msgid "Data"
msgstr ""
-#: part/models.py:3565
+#: part/models.py:3599
msgid "Parameter Value"
msgstr ""
-#: part/models.py:3626 templates/InvenTree/settings/settings_staff_js.html:208
+#: part/models.py:3675 templates/InvenTree/settings/settings_staff_js.html:208
msgid "Default Value"
msgstr ""
-#: part/models.py:3627
+#: part/models.py:3676
msgid "Default Parameter Value"
msgstr ""
-#: part/models.py:3664
+#: part/models.py:3713
msgid "Part ID or part name"
msgstr ""
-#: part/models.py:3668
+#: part/models.py:3717
msgid "Unique part ID value"
msgstr ""
-#: part/models.py:3676
+#: part/models.py:3725
msgid "Part IPN value"
msgstr ""
-#: part/models.py:3679
+#: part/models.py:3728
msgid "Level"
msgstr ""
-#: part/models.py:3680
+#: part/models.py:3729
msgid "BOM level"
msgstr ""
-#: part/models.py:3764
+#: part/models.py:3735 part/models.py:4113
+msgid "BOM Item"
+msgstr ""
+
+#: part/models.py:3808
msgid "Select parent part"
msgstr ""
-#: part/models.py:3772
+#: part/models.py:3816
msgid "Sub part"
msgstr ""
-#: part/models.py:3773
+#: part/models.py:3817
msgid "Select part to be used in BOM"
msgstr ""
-#: part/models.py:3779
+#: part/models.py:3823
msgid "BOM quantity for this BOM item"
msgstr ""
-#: part/models.py:3783 part/templates/part/upload_bom.html:58
-#: templates/js/translated/bom.js:971 templates/js/translated/bom.js:998
-#: templates/js/translated/build.js:2113
-#: templates/js/translated/table_filters.js:156
-#: templates/js/translated/table_filters.js:185
-#: templates/js/translated/table_filters.js:500
-msgid "Optional"
-msgstr ""
-
-#: part/models.py:3784
+#: part/models.py:3828
msgid "This BOM item is optional"
msgstr ""
-#: part/models.py:3789 templates/js/translated/bom.js:967
-#: templates/js/translated/bom.js:1007 templates/js/translated/build.js:2104
-#: templates/js/translated/table_filters.js:160
-#: templates/js/translated/table_filters.js:496
-msgid "Consumable"
-msgstr ""
-
-#: part/models.py:3790
+#: part/models.py:3834
msgid "This BOM item is consumable (it is not tracked in build orders)"
msgstr ""
-#: part/models.py:3794 part/templates/part/upload_bom.html:55
+#: part/models.py:3838 part/templates/part/upload_bom.html:55
msgid "Overage"
msgstr ""
-#: part/models.py:3795
+#: part/models.py:3839
msgid "Estimated build wastage quantity (absolute or percentage)"
msgstr ""
-#: part/models.py:3798
+#: part/models.py:3842
msgid "BOM item reference"
msgstr ""
-#: part/models.py:3801
+#: part/models.py:3845
msgid "BOM item notes"
msgstr ""
-#: part/models.py:3805
+#: part/models.py:3849
msgid "Checksum"
msgstr ""
-#: part/models.py:3805
+#: part/models.py:3849
msgid "BOM line checksum"
msgstr ""
-#: part/models.py:3810 templates/js/translated/table_filters.js:144
+#: part/models.py:3854 templates/js/translated/table_filters.js:150
msgid "Validated"
msgstr ""
-#: part/models.py:3811
+#: part/models.py:3855
msgid "This BOM item has been validated"
msgstr ""
-#: part/models.py:3816 part/templates/part/upload_bom.html:57
-#: templates/js/translated/bom.js:1024
-#: templates/js/translated/table_filters.js:148
-#: templates/js/translated/table_filters.js:181
+#: part/models.py:3860 part/templates/part/upload_bom.html:57
+#: templates/js/translated/bom.js:1042
+#: templates/js/translated/table_filters.js:154
+#: templates/js/translated/table_filters.js:187
msgid "Gets inherited"
msgstr ""
-#: part/models.py:3817
+#: part/models.py:3861
msgid "This BOM item is inherited by BOMs for variant parts"
msgstr ""
-#: part/models.py:3822 part/templates/part/upload_bom.html:56
-#: templates/js/translated/bom.js:1016
+#: part/models.py:3866 part/templates/part/upload_bom.html:56
+#: templates/js/translated/bom.js:1034
msgid "Allow Variants"
msgstr ""
-#: part/models.py:3823
+#: part/models.py:3867
msgid "Stock items for variant parts can be used for this BOM item"
msgstr ""
-#: part/models.py:3909 stock/models.py:577
+#: part/models.py:3953 stock/models.py:577
msgid "Quantity must be integer value for trackable parts"
msgstr ""
-#: part/models.py:3918 part/models.py:3920
+#: part/models.py:3962 part/models.py:3964
msgid "Sub part must be specified"
msgstr ""
-#: part/models.py:4036
+#: part/models.py:4080
msgid "BOM Item Substitute"
msgstr ""
-#: part/models.py:4057
+#: part/models.py:4101
msgid "Substitute part cannot be the same as the master part"
msgstr ""
-#: part/models.py:4070
+#: part/models.py:4114
msgid "Parent BOM item"
msgstr ""
-#: part/models.py:4078
+#: part/models.py:4122
msgid "Substitute part"
msgstr ""
-#: part/models.py:4093
+#: part/models.py:4137
msgid "Part 1"
msgstr ""
-#: part/models.py:4097
+#: part/models.py:4141
msgid "Part 2"
msgstr ""
-#: part/models.py:4097
+#: part/models.py:4141
msgid "Select Related Part"
msgstr ""
-#: part/models.py:4115
+#: part/models.py:4159
msgid "Part relationship cannot be created between a part and itself"
msgstr ""
-#: part/models.py:4119
+#: part/models.py:4163
msgid "Duplicate relationship already exists"
msgstr ""
-#: part/serializers.py:152 part/serializers.py:175 stock/serializers.py:257
+#: part/serializers.py:152 part/serializers.py:175 stock/serializers.py:319
msgid "Purchase currency of this stock item"
msgstr ""
-#: part/serializers.py:302
+#: part/serializers.py:313
+msgid "No parts selected"
+msgstr ""
+
+#: part/serializers.py:321
+msgid "Select category"
+msgstr ""
+
+#: part/serializers.py:352
msgid "Original Part"
msgstr ""
-#: part/serializers.py:302
+#: part/serializers.py:352
msgid "Select original part to duplicate"
msgstr ""
-#: part/serializers.py:307
+#: part/serializers.py:357
msgid "Copy Image"
msgstr ""
-#: part/serializers.py:307
+#: part/serializers.py:357
msgid "Copy image from original part"
msgstr ""
-#: part/serializers.py:312 part/templates/part/detail.html:296
+#: part/serializers.py:362 part/templates/part/detail.html:277
msgid "Copy BOM"
msgstr ""
-#: part/serializers.py:312
+#: part/serializers.py:362
msgid "Copy bill of materials from original part"
msgstr ""
-#: part/serializers.py:317
+#: part/serializers.py:367
msgid "Copy Parameters"
msgstr ""
-#: part/serializers.py:317
+#: part/serializers.py:367
msgid "Copy parameter data from original part"
msgstr ""
-#: part/serializers.py:327
+#: part/serializers.py:377
msgid "Initial Stock Quantity"
msgstr ""
-#: part/serializers.py:327
+#: part/serializers.py:377
msgid "Specify initial stock quantity for this Part. If quantity is zero, no stock is added."
msgstr ""
-#: part/serializers.py:333
+#: part/serializers.py:383
msgid "Initial Stock Location"
msgstr ""
-#: part/serializers.py:333
+#: part/serializers.py:383
msgid "Specify initial stock location for this Part"
msgstr ""
-#: part/serializers.py:343
+#: part/serializers.py:393
msgid "Select supplier (or leave blank to skip)"
msgstr ""
-#: part/serializers.py:354
+#: part/serializers.py:404
msgid "Select manufacturer (or leave blank to skip)"
msgstr ""
-#: part/serializers.py:360
+#: part/serializers.py:410
msgid "Manufacturer part number"
msgstr ""
-#: part/serializers.py:367
+#: part/serializers.py:417
msgid "Selected company is not a valid supplier"
msgstr ""
-#: part/serializers.py:375
+#: part/serializers.py:425
msgid "Selected company is not a valid manufacturer"
msgstr ""
-#: part/serializers.py:387
+#: part/serializers.py:437
msgid "Manufacturer part matching this MPN already exists"
msgstr ""
-#: part/serializers.py:395
+#: part/serializers.py:445
msgid "Supplier part matching this SKU already exists"
msgstr ""
-#: part/serializers.py:620 part/templates/part/copy_part.html:9
-#: templates/js/translated/part.js:449
+#: part/serializers.py:682 part/templates/part/copy_part.html:9
+#: templates/js/translated/part.js:448
msgid "Duplicate Part"
msgstr ""
-#: part/serializers.py:620
+#: part/serializers.py:682
msgid "Copy initial data from another Part"
msgstr ""
-#: part/serializers.py:625 templates/js/translated/part.js:103
+#: part/serializers.py:687 templates/js/translated/part.js:102
msgid "Initial Stock"
msgstr ""
-#: part/serializers.py:625
+#: part/serializers.py:687
msgid "Create Part with initial stock quantity"
msgstr ""
-#: part/serializers.py:630
+#: part/serializers.py:692
msgid "Supplier Information"
msgstr ""
-#: part/serializers.py:630
+#: part/serializers.py:692
msgid "Add initial supplier information for this part"
msgstr ""
-#: part/serializers.py:636
+#: part/serializers.py:698
msgid "Copy Category Parameters"
msgstr ""
-#: part/serializers.py:637
+#: part/serializers.py:699
msgid "Copy parameter templates from selected part category"
msgstr ""
-#: part/serializers.py:842
+#: part/serializers.py:904
msgid "Limit stocktake report to a particular part, and any variant parts"
msgstr ""
-#: part/serializers.py:848
+#: part/serializers.py:910
msgid "Limit stocktake report to a particular part category, and any child categories"
msgstr ""
-#: part/serializers.py:854
+#: part/serializers.py:916
msgid "Limit stocktake report to a particular stock location, and any child locations"
msgstr ""
-#: part/serializers.py:859
+#: part/serializers.py:921
msgid "Generate Report"
msgstr ""
-#: part/serializers.py:860
+#: part/serializers.py:922
msgid "Generate report file containing calculated stocktake data"
msgstr ""
-#: part/serializers.py:865
+#: part/serializers.py:927
msgid "Update Parts"
msgstr ""
-#: part/serializers.py:866
+#: part/serializers.py:928
msgid "Update specified parts with calculated stocktake data"
msgstr ""
-#: part/serializers.py:874
+#: part/serializers.py:936
msgid "Stocktake functionality is not enabled"
msgstr ""
-#: part/serializers.py:963
+#: part/serializers.py:1025
msgid "Update"
msgstr ""
-#: part/serializers.py:964
+#: part/serializers.py:1026
msgid "Update pricing for this part"
msgstr ""
-#: part/serializers.py:1246
+#: part/serializers.py:1308
msgid "Select part to copy BOM from"
msgstr ""
-#: part/serializers.py:1254
+#: part/serializers.py:1316
msgid "Remove Existing Data"
msgstr ""
-#: part/serializers.py:1255
+#: part/serializers.py:1317
msgid "Remove existing BOM items before copying"
msgstr ""
-#: part/serializers.py:1260
+#: part/serializers.py:1322
msgid "Include Inherited"
msgstr ""
-#: part/serializers.py:1261
+#: part/serializers.py:1323
msgid "Include BOM items which are inherited from templated parts"
msgstr ""
-#: part/serializers.py:1266
+#: part/serializers.py:1328
msgid "Skip Invalid Rows"
msgstr ""
-#: part/serializers.py:1267
+#: part/serializers.py:1329
msgid "Enable this option to skip invalid rows"
msgstr ""
-#: part/serializers.py:1272
+#: part/serializers.py:1334
msgid "Copy Substitute Parts"
msgstr ""
-#: part/serializers.py:1273
+#: part/serializers.py:1335
msgid "Copy substitute parts when duplicate BOM items"
msgstr ""
-#: part/serializers.py:1313
+#: part/serializers.py:1375
msgid "Clear Existing BOM"
msgstr ""
-#: part/serializers.py:1314
+#: part/serializers.py:1376
msgid "Delete existing BOM items before uploading"
msgstr ""
-#: part/serializers.py:1344
+#: part/serializers.py:1406
msgid "No part column specified"
msgstr ""
-#: part/serializers.py:1387
+#: part/serializers.py:1449
msgid "Multiple matching parts found"
msgstr ""
-#: part/serializers.py:1390
+#: part/serializers.py:1452
msgid "No matching part found"
msgstr ""
-#: part/serializers.py:1393
+#: part/serializers.py:1455
msgid "Part is not designated as a component"
msgstr ""
-#: part/serializers.py:1402
+#: part/serializers.py:1464
msgid "Quantity not provided"
msgstr ""
-#: part/serializers.py:1410
+#: part/serializers.py:1472
msgid "Invalid quantity"
msgstr ""
-#: part/serializers.py:1431
+#: part/serializers.py:1493
msgid "At least one BOM item is required"
msgstr ""
@@ -6421,9 +6453,9 @@ msgstr ""
msgid "The available stock for {part.name} has fallen below the configured minimum level"
msgstr ""
-#: part/tasks.py:294 templates/js/translated/part.js:1040
-#: templates/js/translated/part.js:1793 templates/js/translated/part.js:1848
-#: templates/js/translated/purchase_order.js:2052
+#: part/tasks.py:294 templates/js/translated/part.js:1039
+#: templates/js/translated/part.js:1792 templates/js/translated/part.js:1847
+#: templates/js/translated/purchase_order.js:2062
msgid "Total Quantity"
msgstr ""
@@ -6461,14 +6493,6 @@ msgstr ""
msgid "The BOM for %(part)s has not been validated."
msgstr ""
-#: part/templates/part/bom.html:30 part/templates/part/detail.html:291
-msgid "BOM actions"
-msgstr ""
-
-#: part/templates/part/bom.html:34
-msgid "Delete Items"
-msgstr ""
-
#: part/templates/part/category.html:34
msgid "Perform stocktake for this part category"
msgstr ""
@@ -6505,7 +6529,7 @@ msgstr ""
msgid "Top level part category"
msgstr ""
-#: part/templates/part/category.html:121 part/templates/part/category.html:225
+#: part/templates/part/category.html:121 part/templates/part/category.html:206
#: part/templates/part/category_sidebar.html:7
msgid "Subcategories"
msgstr ""
@@ -6518,33 +6542,20 @@ msgstr ""
msgid "Create new part"
msgstr ""
-#: part/templates/part/category.html:165 templates/js/translated/bom.js:443
+#: part/templates/part/category.html:165 templates/js/translated/bom.js:444
msgid "New Part"
msgstr ""
-#: part/templates/part/category.html:175 part/templates/part/detail.html:390
-#: part/templates/part/detail.html:421
-msgid "Options"
-msgstr ""
-
-#: part/templates/part/category.html:179
-msgid "Set category"
-msgstr ""
-
-#: part/templates/part/category.html:180
-msgid "Set Category"
-msgstr ""
-
-#: part/templates/part/category.html:208
+#: part/templates/part/category.html:191
#: templates/InvenTree/settings/sidebar.html:47
msgid "Part Parameters"
msgstr ""
-#: part/templates/part/category.html:229
+#: part/templates/part/category.html:210
msgid "Create new part category"
msgstr ""
-#: part/templates/part/category.html:230
+#: part/templates/part/category.html:211
msgid "New Category"
msgstr ""
@@ -6581,7 +6592,7 @@ msgid "Refresh scheduling data"
msgstr ""
#: part/templates/part/detail.html:45 part/templates/part/prices.html:15
-#: templates/js/translated/tables.js:584
+#: templates/js/translated/tables.js:560
msgid "Refresh"
msgstr ""
@@ -6592,7 +6603,7 @@ msgstr ""
#: part/templates/part/detail.html:67 part/templates/part/part_sidebar.html:50
#: stock/admin.py:130 templates/InvenTree/settings/part_stocktake.html:29
#: templates/InvenTree/settings/sidebar.html:51
-#: templates/js/translated/stock.js:1952 users/models.py:39
+#: templates/js/translated/stock.js:2109 users/models.py:39
msgid "Stocktake"
msgstr ""
@@ -6604,101 +6615,101 @@ msgstr ""
msgid "Add Test Template"
msgstr ""
-#: part/templates/part/detail.html:145 stock/templates/stock/item.html:53
+#: part/templates/part/detail.html:139 stock/templates/stock/item.html:49
msgid "Sales Order Allocations"
msgstr ""
-#: part/templates/part/detail.html:165
+#: part/templates/part/detail.html:156
msgid "Part Notes"
msgstr ""
-#: part/templates/part/detail.html:180
+#: part/templates/part/detail.html:171
msgid "Part Variants"
msgstr ""
-#: part/templates/part/detail.html:184
+#: part/templates/part/detail.html:175
msgid "Create new variant"
msgstr ""
-#: part/templates/part/detail.html:185
+#: part/templates/part/detail.html:176
msgid "New Variant"
msgstr ""
-#: part/templates/part/detail.html:212
+#: part/templates/part/detail.html:199
msgid "Add new parameter"
msgstr ""
-#: part/templates/part/detail.html:249 part/templates/part/part_sidebar.html:58
+#: part/templates/part/detail.html:232 part/templates/part/part_sidebar.html:58
msgid "Related Parts"
msgstr ""
-#: part/templates/part/detail.html:253 part/templates/part/detail.html:254
+#: part/templates/part/detail.html:236 part/templates/part/detail.html:237
msgid "Add Related"
msgstr ""
-#: part/templates/part/detail.html:274 part/templates/part/part_sidebar.html:17
+#: part/templates/part/detail.html:255 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:279
+#: part/templates/part/detail.html:260
msgid "Export actions"
msgstr ""
-#: part/templates/part/detail.html:283 templates/js/translated/bom.js:339
+#: part/templates/part/detail.html:264 templates/js/translated/bom.js:340
msgid "Export BOM"
msgstr ""
-#: part/templates/part/detail.html:285
+#: part/templates/part/detail.html:266
msgid "Print BOM Report"
msgstr ""
-#: part/templates/part/detail.html:295
+#: part/templates/part/detail.html:272
+msgid "BOM actions"
+msgstr ""
+
+#: part/templates/part/detail.html:276
msgid "Upload BOM"
msgstr ""
-#: part/templates/part/detail.html:297
+#: part/templates/part/detail.html:278
msgid "Validate BOM"
msgstr ""
-#: part/templates/part/detail.html:302 part/templates/part/detail.html:303
-#: templates/js/translated/bom.js:1279 templates/js/translated/bom.js:1280
+#: part/templates/part/detail.html:283 part/templates/part/detail.html:284
+#: templates/js/translated/bom.js:1299 templates/js/translated/bom.js:1300
msgid "Add BOM Item"
msgstr ""
-#: part/templates/part/detail.html:316
+#: part/templates/part/detail.html:297
msgid "Assemblies"
msgstr ""
-#: part/templates/part/detail.html:334
+#: part/templates/part/detail.html:313
msgid "Part Builds"
msgstr ""
-#: part/templates/part/detail.html:361 stock/templates/stock/item.html:38
+#: part/templates/part/detail.html:338 stock/templates/stock/item.html:36
msgid "Build Order Allocations"
msgstr ""
-#: part/templates/part/detail.html:377
+#: part/templates/part/detail.html:352
msgid "Part Suppliers"
msgstr ""
-#: part/templates/part/detail.html:407
+#: part/templates/part/detail.html:372
msgid "Part Manufacturers"
msgstr ""
-#: part/templates/part/detail.html:423
-msgid "Delete manufacturer parts"
-msgstr ""
-
-#: part/templates/part/detail.html:707
+#: part/templates/part/detail.html:654
msgid "Related Part"
msgstr ""
-#: part/templates/part/detail.html:715
+#: part/templates/part/detail.html:662
msgid "Add Related Part"
msgstr ""
-#: part/templates/part/detail.html:800
+#: part/templates/part/detail.html:747
msgid "Add Test Result Template"
msgstr ""
@@ -6732,13 +6743,13 @@ msgid "Download Part Import Template"
msgstr ""
#: part/templates/part/import_wizard/part_upload.html:92
-#: templates/js/translated/bom.js:308 templates/js/translated/bom.js:342
+#: templates/js/translated/bom.js:309 templates/js/translated/bom.js:343
#: templates/js/translated/order.js:129 templates/js/translated/tables.js:189
msgid "Format"
msgstr ""
#: part/templates/part/import_wizard/part_upload.html:93
-#: templates/js/translated/bom.js:309 templates/js/translated/bom.js:343
+#: templates/js/translated/bom.js:310 templates/js/translated/bom.js:344
#: templates/js/translated/order.js:130
msgid "Select file format"
msgstr ""
@@ -6779,7 +6790,7 @@ msgstr ""
msgid "Transfer part stock"
msgstr ""
-#: part/templates/part/part_base.html:93
+#: part/templates/part/part_base.html:93 templates/js/translated/part.js:2264
msgid "Part actions"
msgstr ""
@@ -6824,10 +6835,10 @@ msgid "Part is not active"
msgstr ""
#: part/templates/part/part_base.html:148
-#: templates/js/translated/company.js:945
-#: templates/js/translated/company.js:1185
-#: templates/js/translated/model_renderers.js:273
-#: templates/js/translated/part.js:792 templates/js/translated/part.js:1192
+#: templates/js/translated/company.js:1318
+#: templates/js/translated/company.js:1606
+#: templates/js/translated/model_renderers.js:287
+#: templates/js/translated/part.js:791 templates/js/translated/part.js:1191
msgid "Inactive"
msgstr ""
@@ -6850,7 +6861,7 @@ msgstr ""
msgid "Allocated to Sales Orders"
msgstr ""
-#: part/templates/part/part_base.html:237 templates/js/translated/bom.js:1178
+#: part/templates/part/part_base.html:237 templates/js/translated/bom.js:1198
msgid "Can Build"
msgstr ""
@@ -6858,8 +6869,8 @@ msgstr ""
msgid "Minimum stock level"
msgstr ""
-#: part/templates/part/part_base.html:324 templates/js/translated/bom.js:1041
-#: templates/js/translated/part.js:1238 templates/js/translated/part.js:2304
+#: part/templates/part/part_base.html:324 templates/js/translated/bom.js:1059
+#: templates/js/translated/part.js:1237 templates/js/translated/part.js:2380
#: templates/js/translated/pricing.js:391
#: templates/js/translated/pricing.js:1040
msgid "Price Range"
@@ -6882,7 +6893,7 @@ msgstr ""
msgid "Link Barcode to Part"
msgstr ""
-#: part/templates/part/part_base.html:474 templates/js/translated/part.js:2191
+#: part/templates/part/part_base.html:474 templates/js/translated/part.js:2258
msgid "part"
msgstr ""
@@ -6956,9 +6967,9 @@ msgstr ""
#: stock/templates/stock/stock_app_base.html:10
#: templates/InvenTree/search.html:153
#: templates/InvenTree/settings/sidebar.html:49
-#: templates/js/translated/part.js:1216 templates/js/translated/part.js:2120
-#: templates/js/translated/part.js:2284 templates/js/translated/stock.js:1022
-#: templates/js/translated/stock.js:1829 templates/navbar.html:31
+#: templates/js/translated/part.js:1215 templates/js/translated/part.js:2119
+#: templates/js/translated/part.js:2360 templates/js/translated/stock.js:1021
+#: templates/js/translated/stock.js:1986 templates/navbar.html:31
msgid "Stock"
msgstr ""
@@ -6989,9 +7000,9 @@ msgstr ""
#: part/templates/part/prices.html:25 stock/admin.py:129
#: stock/templates/stock/item_base.html:442
-#: templates/js/translated/company.js:1313
-#: templates/js/translated/company.js:1323
-#: templates/js/translated/stock.js:1982
+#: templates/js/translated/company.js:1734
+#: templates/js/translated/company.js:1744
+#: templates/js/translated/stock.js:2139
msgid "Last Updated"
msgstr ""
@@ -7054,12 +7065,12 @@ msgstr ""
msgid "Add Sell Price Break"
msgstr ""
-#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:682
-#: templates/js/translated/part.js:2115 templates/js/translated/part.js:2117
+#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:681
+#: templates/js/translated/part.js:2114 templates/js/translated/part.js:2116
msgid "No Stock"
msgstr ""
-#: part/templates/part/stock_count.html:9 templates/InvenTree/index.html:167
+#: part/templates/part/stock_count.html:9 templates/InvenTree/index.html:120
msgid "Low Stock"
msgstr ""
@@ -7163,7 +7174,7 @@ msgid "Match found for barcode data"
msgstr ""
#: plugin/base/barcodes/api.py:120
-#: templates/js/translated/purchase_order.js:1372
+#: templates/js/translated/purchase_order.js:1387
msgid "Barcode matches existing item"
msgstr ""
@@ -7226,43 +7237,43 @@ msgstr ""
msgid "Open link"
msgstr ""
-#: plugin/models.py:27
+#: plugin/models.py:28
msgid "Plugin Configuration"
msgstr ""
-#: plugin/models.py:28
+#: plugin/models.py:29
msgid "Plugin Configurations"
msgstr ""
-#: plugin/models.py:33
+#: plugin/models.py:34
msgid "Key"
msgstr ""
-#: plugin/models.py:34
+#: plugin/models.py:35
msgid "Key of plugin"
msgstr ""
-#: plugin/models.py:42
+#: plugin/models.py:43
msgid "PluginName of the plugin"
msgstr ""
-#: plugin/models.py:48
+#: plugin/models.py:49
msgid "Is the plugin active"
msgstr ""
-#: plugin/models.py:124
+#: plugin/models.py:125
msgid "Sample plugin"
msgstr ""
-#: plugin/models.py:133
+#: plugin/models.py:134
msgid "Builtin Plugin"
msgstr ""
-#: plugin/models.py:159 templates/InvenTree/settings/plugin_settings.html:9
+#: plugin/models.py:160 templates/InvenTree/settings/plugin_settings.html:9
msgid "Plugin"
msgstr ""
-#: plugin/models.py:210
+#: plugin/models.py:211
msgid "Method"
msgstr ""
@@ -7414,47 +7425,47 @@ msgstr ""
msgid "Build query filters (comma-separated list of key=value pairs"
msgstr ""
-#: report/models.py:418
+#: report/models.py:420
msgid "Part Filters"
msgstr ""
-#: report/models.py:419
+#: report/models.py:421
msgid "Part query filters (comma-separated list of key=value pairs"
msgstr ""
-#: report/models.py:453
+#: report/models.py:455
msgid "Purchase order query filters"
msgstr ""
-#: report/models.py:491
+#: report/models.py:493
msgid "Sales order query filters"
msgstr ""
-#: report/models.py:529
+#: report/models.py:531
msgid "Return order query filters"
msgstr ""
-#: report/models.py:582
+#: report/models.py:584
msgid "Snippet"
msgstr ""
-#: report/models.py:583
+#: report/models.py:585
msgid "Report snippet file"
msgstr ""
-#: report/models.py:587
+#: report/models.py:589
msgid "Snippet file description"
msgstr ""
-#: report/models.py:624
+#: report/models.py:626
msgid "Asset"
msgstr ""
-#: report/models.py:625
+#: report/models.py:627
msgid "Report asset file"
msgstr ""
-#: report/models.py:632
+#: report/models.py:634
msgid "Asset file description"
msgstr ""
@@ -7475,8 +7486,8 @@ msgstr ""
#: templates/js/translated/order.js:316 templates/js/translated/pricing.js:527
#: templates/js/translated/pricing.js:596
#: templates/js/translated/pricing.js:820
-#: templates/js/translated/purchase_order.js:2083
-#: templates/js/translated/sales_order.js:1817
+#: templates/js/translated/purchase_order.js:2093
+#: templates/js/translated/sales_order.js:1829
msgid "Unit Price"
msgstr ""
@@ -7488,23 +7499,23 @@ msgstr ""
#: report/templates/report/inventree_po_report_base.html:72
#: report/templates/report/inventree_so_report_base.html:72
-#: templates/js/translated/purchase_order.js:1985
-#: templates/js/translated/sales_order.js:1792
+#: templates/js/translated/purchase_order.js:1995
+#: templates/js/translated/sales_order.js:1804
msgid "Total"
msgstr ""
#: report/templates/report/inventree_return_order_report_base.html:25
#: report/templates/report/inventree_test_report_base.html:88
#: stock/models.py:725 stock/templates/stock/item_base.html:312
-#: templates/js/translated/build.js:502 templates/js/translated/build.js:1423
-#: templates/js/translated/build.js:1989
-#: templates/js/translated/model_renderers.js:201
-#: templates/js/translated/return_order.js:528
-#: templates/js/translated/return_order.js:708
-#: templates/js/translated/sales_order.js:300
-#: templates/js/translated/sales_order.js:1597
-#: templates/js/translated/sales_order.js:1682
-#: templates/js/translated/stock.js:563
+#: templates/js/translated/build.js:508 templates/js/translated/build.js:1306
+#: templates/js/translated/build.js:2281
+#: templates/js/translated/model_renderers.js:215
+#: templates/js/translated/return_order.js:540
+#: templates/js/translated/return_order.js:720
+#: templates/js/translated/sales_order.js:312
+#: templates/js/translated/sales_order.js:1609
+#: templates/js/translated/sales_order.js:1694
+#: templates/js/translated/stock.js:562
msgid "Serial Number"
msgstr ""
@@ -7517,7 +7528,7 @@ msgid "Test Results"
msgstr ""
#: report/templates/report/inventree_test_report_base.html:102
-#: stock/models.py:2243 templates/js/translated/stock.js:1419
+#: stock/models.py:2243 templates/js/translated/stock.js:1418
msgid "Test"
msgstr ""
@@ -7548,8 +7559,8 @@ msgid "Installed Items"
msgstr ""
#: report/templates/report/inventree_test_report_base.html:168
-#: stock/admin.py:104 templates/js/translated/stock.js:667
-#: templates/js/translated/stock.js:838 templates/js/translated/stock.js:2849
+#: stock/admin.py:104 templates/js/translated/stock.js:666
+#: templates/js/translated/stock.js:837 templates/js/translated/stock.js:2976
msgid "Serial"
msgstr ""
@@ -7617,31 +7628,31 @@ msgstr ""
#: stock/admin.py:131 stock/models.py:789
#: stock/templates/stock/item_base.html:429
-#: templates/js/translated/stock.js:1966
+#: templates/js/translated/stock.js:2123
msgid "Expiry Date"
msgstr ""
-#: stock/api.py:420 templates/js/translated/table_filters.js:373
+#: stock/api.py:426 templates/js/translated/table_filters.js:379
msgid "External Location"
msgstr ""
-#: stock/api.py:582
+#: stock/api.py:619
msgid "Quantity is required"
msgstr ""
-#: stock/api.py:589
+#: stock/api.py:626
msgid "Valid part must be supplied"
msgstr ""
-#: stock/api.py:615
+#: stock/api.py:652
msgid "The given supplier part does not exist"
msgstr ""
-#: stock/api.py:624
+#: stock/api.py:661
msgid "The supplier part has a pack size defined, but flag use_pack_size not set"
msgstr ""
-#: stock/api.py:642
+#: stock/api.py:679
msgid "Serial numbers cannot be supplied for a non-trackable part"
msgstr ""
@@ -7652,7 +7663,7 @@ msgid "Stock Location"
msgstr ""
#: stock/models.py:55 stock/templates/stock/location.html:177
-#: templates/InvenTree/search.html:166 templates/js/translated/search.js:220
+#: templates/InvenTree/search.html:166 templates/js/translated/search.js:178
#: users/models.py:40
msgid "Stock Locations"
msgstr ""
@@ -7670,8 +7681,8 @@ msgstr ""
msgid "Stock items may not be directly located into a structural stock locations, but may be located to child locations."
msgstr ""
-#: stock/models.py:132 templates/js/translated/stock.js:2529
-#: templates/js/translated/table_filters.js:213
+#: stock/models.py:132 templates/js/translated/stock.js:2660
+#: templates/js/translated/table_filters.js:219
msgid "External"
msgstr ""
@@ -7687,7 +7698,7 @@ msgstr ""
msgid "Stock items cannot be located into structural stock locations!"
msgstr ""
-#: stock/models.py:583 stock/serializers.py:174
+#: stock/models.py:583 stock/serializers.py:223
msgid "Stock item cannot be created for virtual parts"
msgstr ""
@@ -7821,7 +7832,7 @@ msgstr ""
msgid "Quantity does not match serial numbers"
msgstr ""
-#: stock/models.py:1403 stock/serializers.py:374
+#: stock/models.py:1403 stock/serializers.py:440
msgid "Serial numbers already exist"
msgstr ""
@@ -7849,7 +7860,7 @@ msgstr ""
msgid "Serialized stock cannot be merged"
msgstr ""
-#: stock/models.py:1496 stock/serializers.py:975
+#: stock/models.py:1496 stock/serializers.py:1092
msgid "Duplicate stock items"
msgstr ""
@@ -7901,132 +7912,141 @@ msgstr ""
msgid "Test notes"
msgstr ""
-#: stock/serializers.py:76
+#: stock/serializers.py:121
msgid "Serial number is too large"
msgstr ""
-#: stock/serializers.py:166
+#: stock/serializers.py:215
msgid "Use pack size when adding: the quantity defined is the number of packs"
msgstr ""
-#: stock/serializers.py:254
+#: stock/serializers.py:316
msgid "Purchase price of this stock item, per unit or pack"
msgstr ""
-#: stock/serializers.py:307
+#: stock/serializers.py:373
msgid "Enter number of stock items to serialize"
msgstr ""
-#: stock/serializers.py:319
+#: stock/serializers.py:385
#, python-brace-format
msgid "Quantity must not exceed available stock quantity ({q})"
msgstr ""
-#: stock/serializers.py:325
+#: stock/serializers.py:391
msgid "Enter serial numbers for new items"
msgstr ""
-#: stock/serializers.py:336 stock/serializers.py:932 stock/serializers.py:1174
+#: stock/serializers.py:402 stock/serializers.py:1049 stock/serializers.py:1291
msgid "Destination stock location"
msgstr ""
-#: stock/serializers.py:343
+#: stock/serializers.py:409
msgid "Optional note field"
msgstr ""
-#: stock/serializers.py:353
+#: stock/serializers.py:419
msgid "Serial numbers cannot be assigned to this part"
msgstr ""
-#: stock/serializers.py:414
+#: stock/serializers.py:480
msgid "Select stock item to install"
msgstr ""
-#: stock/serializers.py:427
-msgid "Stock item is unavailable"
-msgstr ""
-
-#: stock/serializers.py:434
-msgid "Selected part is not in the Bill of Materials"
-msgstr ""
-
-#: stock/serializers.py:471
-msgid "Destination location for uninstalled item"
-msgstr ""
-
-#: stock/serializers.py:476 stock/serializers.py:557
+#: stock/serializers.py:485 stock/serializers.py:543 stock/serializers.py:624
+#: stock/serializers.py:682
msgid "Add transaction note (optional)"
msgstr ""
-#: stock/serializers.py:510
+#: stock/serializers.py:494
+msgid "Stock item is unavailable"
+msgstr ""
+
+#: stock/serializers.py:501
+msgid "Selected part is not in the Bill of Materials"
+msgstr ""
+
+#: stock/serializers.py:538
+msgid "Destination location for uninstalled item"
+msgstr ""
+
+#: stock/serializers.py:577
msgid "Select part to convert stock item into"
msgstr ""
-#: stock/serializers.py:521
+#: stock/serializers.py:588
msgid "Selected part is not a valid option for conversion"
msgstr ""
-#: stock/serializers.py:552
+#: stock/serializers.py:619
msgid "Destination location for returned item"
msgstr ""
-#: stock/serializers.py:787
+#: stock/serializers.py:663
+msgid "Select stock items to change status"
+msgstr ""
+
+#: stock/serializers.py:670
+msgid "No stock items selected"
+msgstr ""
+
+#: stock/serializers.py:904
msgid "Part must be salable"
msgstr ""
-#: stock/serializers.py:791
+#: stock/serializers.py:908
msgid "Item is allocated to a sales order"
msgstr ""
-#: stock/serializers.py:795
+#: stock/serializers.py:912
msgid "Item is allocated to a build order"
msgstr ""
-#: stock/serializers.py:826
+#: stock/serializers.py:943
msgid "Customer to assign stock items"
msgstr ""
-#: stock/serializers.py:832
+#: stock/serializers.py:949
msgid "Selected company is not a customer"
msgstr ""
-#: stock/serializers.py:840
+#: stock/serializers.py:957
msgid "Stock assignment notes"
msgstr ""
-#: stock/serializers.py:850 stock/serializers.py:1081
+#: stock/serializers.py:967 stock/serializers.py:1198
msgid "A list of stock items must be provided"
msgstr ""
-#: stock/serializers.py:939
+#: stock/serializers.py:1056
msgid "Stock merging notes"
msgstr ""
-#: stock/serializers.py:944
+#: stock/serializers.py:1061
msgid "Allow mismatched suppliers"
msgstr ""
-#: stock/serializers.py:945
+#: stock/serializers.py:1062
msgid "Allow stock items with different supplier parts to be merged"
msgstr ""
-#: stock/serializers.py:950
+#: stock/serializers.py:1067
msgid "Allow mismatched status"
msgstr ""
-#: stock/serializers.py:951
+#: stock/serializers.py:1068
msgid "Allow stock items with different status codes to be merged"
msgstr ""
-#: stock/serializers.py:961
+#: stock/serializers.py:1078
msgid "At least two stock items must be provided"
msgstr ""
-#: stock/serializers.py:1043
+#: stock/serializers.py:1160
msgid "StockItem primary key value"
msgstr ""
-#: stock/serializers.py:1071
+#: stock/serializers.py:1188
msgid "Stock transaction notes"
msgstr ""
@@ -8034,48 +8054,48 @@ msgstr ""
msgid "Stock Tracking Information"
msgstr ""
-#: stock/templates/stock/item.html:69
+#: stock/templates/stock/item.html:63
msgid "Child Stock Items"
msgstr ""
-#: stock/templates/stock/item.html:77
+#: stock/templates/stock/item.html:71
msgid "This stock item does not have any child items"
msgstr ""
-#: stock/templates/stock/item.html:86
+#: stock/templates/stock/item.html:80
#: stock/templates/stock/stock_sidebar.html:12
msgid "Test Data"
msgstr ""
-#: stock/templates/stock/item.html:90 stock/templates/stock/item_base.html:66
+#: stock/templates/stock/item.html:84 stock/templates/stock/item_base.html:66
msgid "Test Report"
msgstr ""
-#: stock/templates/stock/item.html:94 stock/templates/stock/item.html:288
+#: stock/templates/stock/item.html:88 stock/templates/stock/item.html:278
msgid "Delete Test Data"
msgstr ""
-#: stock/templates/stock/item.html:98
+#: stock/templates/stock/item.html:92
msgid "Add Test Data"
msgstr ""
-#: stock/templates/stock/item.html:132
+#: stock/templates/stock/item.html:124
msgid "Stock Item Notes"
msgstr ""
-#: stock/templates/stock/item.html:147
+#: stock/templates/stock/item.html:139
msgid "Installed Stock Items"
msgstr ""
-#: stock/templates/stock/item.html:152 templates/js/translated/stock.js:2996
+#: stock/templates/stock/item.html:144 templates/js/translated/stock.js:3123
msgid "Install Stock Item"
msgstr ""
-#: stock/templates/stock/item.html:276
+#: stock/templates/stock/item.html:266
msgid "Delete all test results for this stock item"
msgstr ""
-#: stock/templates/stock/item.html:305 templates/js/translated/stock.js:1611
+#: stock/templates/stock/item.html:295 templates/js/translated/stock.js:1610
msgid "Add Test Result"
msgstr ""
@@ -8083,13 +8103,13 @@ msgstr ""
msgid "Locate stock item"
msgstr ""
-#: stock/templates/stock/item_base.html:52 templates/stock_table.html:21
+#: stock/templates/stock/item_base.html:52
msgid "Scan to Location"
msgstr ""
#: stock/templates/stock/item_base.html:60
#: stock/templates/stock/location.html:69
-#: templates/js/translated/filters.js:322
+#: templates/js/translated/filters.js:432
msgid "Printing actions"
msgstr ""
@@ -8098,15 +8118,17 @@ msgid "Stock adjustment actions"
msgstr ""
#: stock/templates/stock/item_base.html:80
-#: stock/templates/stock/location.html:88 templates/stock_table.html:35
+#: stock/templates/stock/location.html:88 templates/js/translated/stock.js:1735
msgid "Count stock"
msgstr ""
-#: stock/templates/stock/item_base.html:82 templates/stock_table.html:33
+#: stock/templates/stock/item_base.html:82
+#: templates/js/translated/stock.js:1717
msgid "Add stock"
msgstr ""
-#: stock/templates/stock/item_base.html:83 templates/stock_table.html:34
+#: stock/templates/stock/item_base.html:83
+#: templates/js/translated/stock.js:1726
msgid "Remove stock"
msgstr ""
@@ -8115,11 +8137,12 @@ msgid "Serialize stock"
msgstr ""
#: stock/templates/stock/item_base.html:89
-#: stock/templates/stock/location.html:94 templates/stock_table.html:36
+#: stock/templates/stock/location.html:94 templates/js/translated/stock.js:1744
msgid "Transfer stock"
msgstr ""
-#: stock/templates/stock/item_base.html:92 templates/stock_table.html:39
+#: stock/templates/stock/item_base.html:92
+#: templates/js/translated/stock.js:1798
msgid "Assign to customer"
msgstr ""
@@ -8159,6 +8182,11 @@ msgstr ""
msgid "Delete stock item"
msgstr ""
+#: stock/templates/stock/item_base.html:170 templates/InvenTree/search.html:139
+#: templates/js/translated/build.js:2046 templates/navbar.html:38
+msgid "Build"
+msgstr "Bygg"
+
#: stock/templates/stock/item_base.html:194
msgid "Parent Item"
msgstr ""
@@ -8221,7 +8249,7 @@ msgid "Available Quantity"
msgstr ""
#: stock/templates/stock/item_base.html:394
-#: templates/js/translated/build.js:2015
+#: templates/js/translated/build.js:2306
msgid "No location set"
msgstr ""
@@ -8239,7 +8267,7 @@ msgid "This StockItem expired on %(item.expiry_date)s"
msgstr ""
#: stock/templates/stock/item_base.html:433
-#: templates/js/translated/table_filters.js:381
+#: templates/js/translated/table_filters.js:387
msgid "Expired"
msgstr ""
@@ -8249,7 +8277,7 @@ msgid "This StockItem expires on %(item.expiry_date)s"
msgstr ""
#: stock/templates/stock/item_base.html:435
-#: templates/js/translated/table_filters.js:387
+#: templates/js/translated/table_filters.js:393
msgid "Stale"
msgstr ""
@@ -8258,7 +8286,7 @@ msgid "No stocktake performed"
msgstr ""
#: stock/templates/stock/item_base.html:503
-#: templates/js/translated/stock.js:1745
+#: templates/js/translated/stock.js:1865
msgid "stock item"
msgstr ""
@@ -8364,20 +8392,20 @@ msgstr ""
msgid "New Location"
msgstr ""
-#: stock/templates/stock/location.html:287
-#: templates/js/translated/stock.js:2318
+#: stock/templates/stock/location.html:278
+#: templates/js/translated/stock.js:2449
msgid "stock location"
msgstr ""
-#: stock/templates/stock/location.html:304
+#: stock/templates/stock/location.html:295
msgid "Scanned stock container into this location"
msgstr ""
-#: stock/templates/stock/location.html:377
+#: stock/templates/stock/location.html:368
msgid "Stock Location QR Code"
msgstr ""
-#: stock/templates/stock/location.html:388
+#: stock/templates/stock/location.html:379
msgid "Link Barcode to Stock Location"
msgstr ""
@@ -8451,71 +8479,71 @@ msgstr ""
msgid "Index"
msgstr ""
-#: templates/InvenTree/index.html:89
+#: templates/InvenTree/index.html:39
msgid "Subscribed Parts"
msgstr ""
-#: templates/InvenTree/index.html:102
+#: templates/InvenTree/index.html:53
msgid "Subscribed Categories"
msgstr ""
-#: templates/InvenTree/index.html:112
+#: templates/InvenTree/index.html:63
msgid "Latest Parts"
msgstr ""
-#: templates/InvenTree/index.html:126
+#: templates/InvenTree/index.html:78
msgid "BOM Waiting Validation"
msgstr ""
-#: templates/InvenTree/index.html:155
+#: templates/InvenTree/index.html:107
msgid "Recently Updated"
msgstr ""
-#: templates/InvenTree/index.html:180
+#: templates/InvenTree/index.html:134
msgid "Depleted Stock"
msgstr ""
-#: templates/InvenTree/index.html:193
+#: templates/InvenTree/index.html:148
msgid "Required for Build Orders"
msgstr ""
-#: templates/InvenTree/index.html:208
+#: templates/InvenTree/index.html:156
msgid "Expired Stock"
msgstr ""
-#: templates/InvenTree/index.html:222
+#: templates/InvenTree/index.html:172
msgid "Stale Stock"
msgstr ""
-#: templates/InvenTree/index.html:247
+#: templates/InvenTree/index.html:199
msgid "Build Orders In Progress"
msgstr ""
-#: templates/InvenTree/index.html:258
+#: templates/InvenTree/index.html:210
msgid "Overdue Build Orders"
msgstr ""
-#: templates/InvenTree/index.html:278
+#: templates/InvenTree/index.html:230
msgid "Outstanding Purchase Orders"
msgstr ""
-#: templates/InvenTree/index.html:289
+#: templates/InvenTree/index.html:241
msgid "Overdue Purchase Orders"
msgstr ""
-#: templates/InvenTree/index.html:310
+#: templates/InvenTree/index.html:262
msgid "Outstanding Sales Orders"
msgstr ""
-#: templates/InvenTree/index.html:321
+#: templates/InvenTree/index.html:273
msgid "Overdue Sales Orders"
msgstr ""
-#: templates/InvenTree/index.html:347
+#: templates/InvenTree/index.html:299
msgid "InvenTree News"
msgstr ""
-#: templates/InvenTree/index.html:349
+#: templates/InvenTree/index.html:301
msgid "Current News"
msgstr ""
@@ -8672,29 +8700,29 @@ msgstr ""
msgid "Changing the settings below require you to immediately restart the server. Do not change this while under active usage."
msgstr ""
-#: templates/InvenTree/settings/plugin.html:37
+#: templates/InvenTree/settings/plugin.html:35
#: templates/InvenTree/settings/sidebar.html:64
msgid "Plugins"
msgstr ""
-#: templates/InvenTree/settings/plugin.html:43
+#: templates/InvenTree/settings/plugin.html:41
#: templates/js/translated/plugin.js:151
msgid "Install Plugin"
msgstr ""
-#: templates/InvenTree/settings/plugin.html:51
+#: templates/InvenTree/settings/plugin.html:49
msgid "External plugins are not enabled for this InvenTree installation"
msgstr ""
-#: templates/InvenTree/settings/plugin.html:70
+#: templates/InvenTree/settings/plugin.html:64
msgid "Plugin Error Stack"
msgstr ""
-#: templates/InvenTree/settings/plugin.html:79
+#: templates/InvenTree/settings/plugin.html:73
msgid "Stage"
msgstr ""
-#: templates/InvenTree/settings/plugin.html:81
+#: templates/InvenTree/settings/plugin.html:75
#: templates/js/translated/notification.js:75
msgid "Message"
msgstr ""
@@ -8767,14 +8795,6 @@ msgstr ""
msgid "Commit Message"
msgstr ""
-#: templates/InvenTree/settings/plugin_settings.html:126
-msgid "Sign Status"
-msgstr ""
-
-#: templates/InvenTree/settings/plugin_settings.html:131
-msgid "Sign Key"
-msgstr ""
-
#: templates/InvenTree/settings/po.html:7
msgid "Purchase Order Settings"
msgstr ""
@@ -8870,12 +8890,12 @@ msgid "No category parameter templates found"
msgstr ""
#: templates/InvenTree/settings/settings_staff_js.html:212
-#: templates/js/translated/part.js:1618
+#: templates/js/translated/part.js:1617
msgid "Edit Template"
msgstr ""
#: templates/InvenTree/settings/settings_staff_js.html:213
-#: templates/js/translated/part.js:1619
+#: templates/js/translated/part.js:1618
msgid "Delete Template"
msgstr ""
@@ -8913,7 +8933,7 @@ msgid "Home Page"
msgstr ""
#: templates/InvenTree/settings/sidebar.html:15
-#: templates/js/translated/tables.js:575 templates/navbar.html:107
+#: templates/js/translated/tables.js:551 templates/navbar.html:107
#: templates/search.html:8 templates/search_form.html:6
#: templates/search_form.html:7
msgid "Search"
@@ -8990,6 +9010,7 @@ msgid "Unverified"
msgstr ""
#: templates/InvenTree/settings/user.html:80
+#: templates/js/translated/company.js:984
msgid "Primary"
msgstr ""
@@ -9204,44 +9225,48 @@ msgstr ""
msgid "Update Available"
msgstr ""
-#: templates/about.html:42
+#: templates/about.html:43
+msgid "Commit Branch"
+msgstr ""
+
+#: templates/about.html:49
msgid "InvenTree Documentation"
msgstr ""
-#: templates/about.html:47
+#: templates/about.html:54
msgid "API Version"
msgstr ""
-#: templates/about.html:52
+#: templates/about.html:59
msgid "Python Version"
msgstr ""
-#: templates/about.html:57
+#: templates/about.html:64
msgid "Django Version"
msgstr ""
-#: templates/about.html:62
+#: templates/about.html:69
msgid "View Code on GitHub"
msgstr ""
-#: templates/about.html:67
+#: templates/about.html:74
msgid "Credits"
msgstr ""
-#: templates/about.html:72
+#: templates/about.html:79
msgid "Mobile App"
msgstr ""
-#: templates/about.html:77
+#: templates/about.html:84
msgid "Submit Bug Report"
msgstr ""
-#: templates/about.html:84 templates/clip.html:4
+#: templates/about.html:91 templates/clip.html:4
#: templates/js/translated/helpers.js:585
msgid "copy to clipboard"
msgstr ""
-#: templates/about.html:84
+#: templates/about.html:91
msgid "copy version information"
msgstr ""
@@ -9435,14 +9460,6 @@ msgstr ""
msgid "Add Attachment"
msgstr ""
-#: templates/attachment_table.html:11
-msgid "Delete selected attachments"
-msgstr ""
-
-#: templates/attachment_table.html:12 templates/js/translated/attachment.js:129
-msgid "Delete Attachments"
-msgstr ""
-
#: templates/barcode_data.html:5
msgid "Barcode Identifier"
msgstr ""
@@ -9487,7 +9504,7 @@ msgid "The following parts are low on required stock"
msgstr ""
#: templates/email/build_order_required_stock.html:18
-#: templates/js/translated/bom.js:1633
+#: templates/js/translated/bom.js:1653 templates/js/translated/build.js:2485
msgid "Required Quantity"
msgstr ""
@@ -9501,7 +9518,7 @@ msgid "Click on the following link to view this part"
msgstr ""
#: templates/email/low_stock_notification.html:18
-#: templates/js/translated/part.js:3140
+#: templates/js/translated/part.js:3125
msgid "Minimum Quantity"
msgstr ""
@@ -9573,23 +9590,35 @@ msgstr ""
msgid "All selected attachments will be deleted"
msgstr ""
-#: templates/js/translated/attachment.js:255
+#: templates/js/translated/attachment.js:129
+msgid "Delete Attachments"
+msgstr ""
+
+#: templates/js/translated/attachment.js:205
+msgid "Delete attachments"
+msgstr ""
+
+#: templates/js/translated/attachment.js:253
+msgid "Attachment actions"
+msgstr ""
+
+#: templates/js/translated/attachment.js:275
msgid "No attachments found"
msgstr ""
-#: templates/js/translated/attachment.js:285
+#: templates/js/translated/attachment.js:305
msgid "Edit Attachment"
msgstr ""
-#: templates/js/translated/attachment.js:326
+#: templates/js/translated/attachment.js:336
msgid "Upload Date"
msgstr ""
-#: templates/js/translated/attachment.js:346
+#: templates/js/translated/attachment.js:356
msgid "Edit attachment"
msgstr ""
-#: templates/js/translated/attachment.js:354
+#: templates/js/translated/attachment.js:364
msgid "Delete attachment"
msgstr ""
@@ -9646,7 +9675,7 @@ msgstr ""
msgid "Unlink"
msgstr ""
-#: templates/js/translated/barcode.js:550 templates/js/translated/stock.js:1118
+#: templates/js/translated/barcode.js:550 templates/js/translated/stock.js:1117
msgid "Remove stock item"
msgstr ""
@@ -9704,775 +9733,869 @@ msgstr ""
msgid "Barcode does not match a valid location"
msgstr ""
-#: templates/js/translated/bom.js:77
+#: templates/js/translated/bom.js:78
msgid "Create BOM Item"
msgstr ""
-#: templates/js/translated/bom.js:131
+#: templates/js/translated/bom.js:132
msgid "Display row data"
msgstr ""
-#: templates/js/translated/bom.js:187
+#: templates/js/translated/bom.js:188
msgid "Row Data"
msgstr ""
-#: templates/js/translated/bom.js:188 templates/js/translated/bom.js:699
+#: templates/js/translated/bom.js:189 templates/js/translated/bom.js:700
#: templates/js/translated/modals.js:71 templates/js/translated/modals.js:622
#: templates/js/translated/modals.js:746 templates/js/translated/modals.js:1054
-#: templates/js/translated/purchase_order.js:791 templates/modals.html:15
+#: templates/js/translated/purchase_order.js:802 templates/modals.html:15
#: templates/modals.html:27 templates/modals.html:39 templates/modals.html:50
msgid "Close"
msgstr ""
-#: templates/js/translated/bom.js:305
+#: templates/js/translated/bom.js:306
msgid "Download BOM Template"
msgstr ""
-#: templates/js/translated/bom.js:350
+#: templates/js/translated/bom.js:351
msgid "Multi Level BOM"
msgstr ""
-#: templates/js/translated/bom.js:351
+#: templates/js/translated/bom.js:352
msgid "Include BOM data for subassemblies"
msgstr ""
-#: templates/js/translated/bom.js:356
+#: templates/js/translated/bom.js:357
msgid "Levels"
msgstr ""
-#: templates/js/translated/bom.js:357
+#: templates/js/translated/bom.js:358
msgid "Select maximum number of BOM levels to export (0 = all levels)"
msgstr ""
-#: templates/js/translated/bom.js:364
+#: templates/js/translated/bom.js:365
msgid "Include Alternative Parts"
msgstr ""
-#: templates/js/translated/bom.js:365
+#: templates/js/translated/bom.js:366
msgid "Include alternative parts in exported BOM"
msgstr ""
-#: templates/js/translated/bom.js:370
+#: templates/js/translated/bom.js:371
msgid "Include Parameter Data"
msgstr ""
-#: templates/js/translated/bom.js:371
+#: templates/js/translated/bom.js:372
msgid "Include part parameter data in exported BOM"
msgstr ""
-#: templates/js/translated/bom.js:376
+#: templates/js/translated/bom.js:377
msgid "Include Stock Data"
msgstr ""
-#: templates/js/translated/bom.js:377
+#: templates/js/translated/bom.js:378
msgid "Include part stock data in exported BOM"
msgstr ""
-#: templates/js/translated/bom.js:382
+#: templates/js/translated/bom.js:383
msgid "Include Manufacturer Data"
msgstr ""
-#: templates/js/translated/bom.js:383
+#: templates/js/translated/bom.js:384
msgid "Include part manufacturer data in exported BOM"
msgstr ""
-#: templates/js/translated/bom.js:388
+#: templates/js/translated/bom.js:389
msgid "Include Supplier Data"
msgstr ""
-#: templates/js/translated/bom.js:389
+#: templates/js/translated/bom.js:390
msgid "Include part supplier data in exported BOM"
msgstr ""
-#: templates/js/translated/bom.js:394
+#: templates/js/translated/bom.js:395
msgid "Include Pricing Data"
msgstr ""
-#: templates/js/translated/bom.js:395
+#: templates/js/translated/bom.js:396
msgid "Include part pricing data in exported BOM"
msgstr ""
-#: templates/js/translated/bom.js:590
+#: templates/js/translated/bom.js:591
msgid "Remove substitute part"
msgstr ""
-#: templates/js/translated/bom.js:644
+#: templates/js/translated/bom.js:645
msgid "Select and add a new substitute part using the input below"
msgstr ""
-#: templates/js/translated/bom.js:655
+#: templates/js/translated/bom.js:656
msgid "Are you sure you wish to remove this substitute part link?"
msgstr ""
-#: templates/js/translated/bom.js:661
+#: templates/js/translated/bom.js:662
msgid "Remove Substitute Part"
msgstr ""
-#: templates/js/translated/bom.js:700
+#: templates/js/translated/bom.js:701
msgid "Add Substitute"
msgstr ""
-#: templates/js/translated/bom.js:701
+#: templates/js/translated/bom.js:702
msgid "Edit BOM Item Substitutes"
msgstr ""
-#: templates/js/translated/bom.js:763
+#: templates/js/translated/bom.js:764
msgid "All selected BOM items will be deleted"
msgstr ""
-#: templates/js/translated/bom.js:779
+#: templates/js/translated/bom.js:780
msgid "Delete selected BOM items?"
msgstr ""
-#: templates/js/translated/bom.js:906
+#: templates/js/translated/bom.js:826
+msgid "Delete items"
+msgstr ""
+
+#: templates/js/translated/bom.js:924
msgid "Load BOM for subassembly"
msgstr ""
-#: templates/js/translated/bom.js:916
+#: templates/js/translated/bom.js:934
msgid "Substitutes Available"
msgstr ""
-#: templates/js/translated/bom.js:920 templates/js/translated/build.js:2090
+#: templates/js/translated/bom.js:938 templates/js/translated/build.js:2429
msgid "Variant stock allowed"
msgstr ""
-#: templates/js/translated/bom.js:984
+#: templates/js/translated/bom.js:1002
msgid "Substitutes"
msgstr ""
-#: templates/js/translated/bom.js:1104
+#: templates/js/translated/bom.js:1122
msgid "BOM pricing is complete"
msgstr ""
-#: templates/js/translated/bom.js:1109
+#: templates/js/translated/bom.js:1127
msgid "BOM pricing is incomplete"
msgstr ""
-#: templates/js/translated/bom.js:1116
+#: templates/js/translated/bom.js:1134
msgid "No pricing available"
msgstr ""
-#: templates/js/translated/bom.js:1147 templates/js/translated/build.js:2173
-#: templates/js/translated/sales_order.js:1887
+#: templates/js/translated/bom.js:1165 templates/js/translated/build.js:2523
+#: templates/js/translated/sales_order.js:1899
msgid "No Stock Available"
msgstr ""
-#: templates/js/translated/bom.js:1152 templates/js/translated/build.js:2177
+#: templates/js/translated/bom.js:1170 templates/js/translated/build.js:2527
msgid "Includes variant and substitute stock"
msgstr ""
-#: templates/js/translated/bom.js:1154 templates/js/translated/build.js:2179
-#: templates/js/translated/part.js:1230
+#: templates/js/translated/bom.js:1172 templates/js/translated/build.js:2529
+#: templates/js/translated/part.js:1229
msgid "Includes variant stock"
msgstr ""
-#: templates/js/translated/bom.js:1156 templates/js/translated/build.js:2181
+#: templates/js/translated/bom.js:1174 templates/js/translated/build.js:2531
msgid "Includes substitute stock"
msgstr ""
-#: templates/js/translated/bom.js:1184 templates/js/translated/build.js:2164
-#: templates/js/translated/build.js:2255
+#: templates/js/translated/bom.js:1204 templates/js/translated/build.js:2514
msgid "Consumable item"
msgstr ""
-#: templates/js/translated/bom.js:1244
+#: templates/js/translated/bom.js:1264
msgid "Validate BOM Item"
msgstr ""
-#: templates/js/translated/bom.js:1246
+#: templates/js/translated/bom.js:1266
msgid "This line has been validated"
msgstr ""
-#: templates/js/translated/bom.js:1248
+#: templates/js/translated/bom.js:1268
msgid "Edit substitute parts"
msgstr ""
-#: templates/js/translated/bom.js:1250 templates/js/translated/bom.js:1445
+#: templates/js/translated/bom.js:1270 templates/js/translated/bom.js:1465
msgid "Edit BOM Item"
msgstr ""
-#: templates/js/translated/bom.js:1252
+#: templates/js/translated/bom.js:1272
msgid "Delete BOM Item"
msgstr ""
-#: templates/js/translated/bom.js:1272
+#: templates/js/translated/bom.js:1292
msgid "View BOM"
msgstr ""
-#: templates/js/translated/bom.js:1356 templates/js/translated/build.js:1927
+#: templates/js/translated/bom.js:1376
msgid "No BOM items found"
msgstr ""
-#: templates/js/translated/bom.js:1616 templates/js/translated/build.js:2073
+#: templates/js/translated/bom.js:1636 templates/js/translated/build.js:2414
msgid "Required Part"
msgstr ""
-#: templates/js/translated/bom.js:1642
+#: templates/js/translated/bom.js:1662
msgid "Inherited from parent BOM"
msgstr ""
-#: templates/js/translated/build.js:126
+#: templates/js/translated/build.js:136
msgid "Edit Build Order"
msgstr ""
-#: templates/js/translated/build.js:169
+#: templates/js/translated/build.js:179
msgid "Create Build Order"
msgstr ""
-#: templates/js/translated/build.js:202
+#: templates/js/translated/build.js:211
msgid "Cancel Build Order"
msgstr ""
-#: templates/js/translated/build.js:211
+#: templates/js/translated/build.js:220
msgid "Are you sure you wish to cancel this build?"
msgstr ""
-#: templates/js/translated/build.js:217
+#: templates/js/translated/build.js:226
msgid "Stock items have been allocated to this build order"
msgstr ""
-#: templates/js/translated/build.js:224
+#: templates/js/translated/build.js:233
msgid "There are incomplete outputs remaining for this build order"
msgstr ""
-#: templates/js/translated/build.js:276
+#: templates/js/translated/build.js:285
msgid "Build order is ready to be completed"
msgstr ""
-#: templates/js/translated/build.js:284
+#: templates/js/translated/build.js:293
msgid "This build order cannot be completed as there are incomplete outputs"
msgstr ""
-#: templates/js/translated/build.js:289
+#: templates/js/translated/build.js:298
msgid "Build Order is incomplete"
msgstr ""
-#: templates/js/translated/build.js:307
+#: templates/js/translated/build.js:316
msgid "Complete Build Order"
msgstr ""
-#: templates/js/translated/build.js:348 templates/js/translated/stock.js:119
-#: templates/js/translated/stock.js:265
+#: templates/js/translated/build.js:357 templates/js/translated/stock.js:118
+#: templates/js/translated/stock.js:264
msgid "Next available serial number"
msgstr ""
-#: templates/js/translated/build.js:350 templates/js/translated/stock.js:121
-#: templates/js/translated/stock.js:267
+#: templates/js/translated/build.js:359 templates/js/translated/stock.js:120
+#: templates/js/translated/stock.js:266
msgid "Latest serial number"
msgstr ""
-#: templates/js/translated/build.js:359
+#: templates/js/translated/build.js:368
msgid "The Bill of Materials contains trackable parts"
msgstr ""
-#: templates/js/translated/build.js:360
+#: templates/js/translated/build.js:369
msgid "Build outputs must be generated individually"
msgstr ""
-#: templates/js/translated/build.js:368
+#: templates/js/translated/build.js:377
msgid "Trackable parts can have serial numbers specified"
msgstr ""
-#: templates/js/translated/build.js:369
+#: templates/js/translated/build.js:378
msgid "Enter serial numbers to generate multiple single build outputs"
msgstr ""
-#: templates/js/translated/build.js:376
+#: templates/js/translated/build.js:385
msgid "Create Build Output"
msgstr ""
-#: templates/js/translated/build.js:407
+#: templates/js/translated/build.js:416
msgid "Allocate stock items to this build output"
msgstr ""
-#: templates/js/translated/build.js:418
-msgid "Unallocate stock from build output"
+#: templates/js/translated/build.js:424
+msgid "Deallocate stock from build output"
msgstr ""
-#: templates/js/translated/build.js:427
+#: templates/js/translated/build.js:433
msgid "Complete build output"
msgstr ""
-#: templates/js/translated/build.js:435
+#: templates/js/translated/build.js:441
msgid "Scrap build output"
msgstr ""
-#: templates/js/translated/build.js:442
+#: templates/js/translated/build.js:448
msgid "Delete build output"
msgstr ""
-#: templates/js/translated/build.js:462
-msgid "Are you sure you wish to unallocate stock items from this build?"
+#: templates/js/translated/build.js:468
+msgid "Are you sure you wish to deallocate the selected stock items from this build?"
msgstr ""
-#: templates/js/translated/build.js:480
-msgid "Unallocate Stock Items"
+#: templates/js/translated/build.js:486
+msgid "Deallocate Stock Items"
msgstr ""
-#: templates/js/translated/build.js:566 templates/js/translated/build.js:690
-#: templates/js/translated/build.js:812
+#: templates/js/translated/build.js:572 templates/js/translated/build.js:696
+#: templates/js/translated/build.js:818
msgid "Select Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:567 templates/js/translated/build.js:691
-#: templates/js/translated/build.js:813
+#: templates/js/translated/build.js:573 templates/js/translated/build.js:697
+#: templates/js/translated/build.js:819
msgid "At least one build output must be selected"
msgstr ""
-#: templates/js/translated/build.js:581
+#: templates/js/translated/build.js:587
msgid "Selected build outputs will be marked as complete"
msgstr ""
-#: templates/js/translated/build.js:585 templates/js/translated/build.js:715
-#: templates/js/translated/build.js:835
+#: templates/js/translated/build.js:591 templates/js/translated/build.js:721
+#: templates/js/translated/build.js:841
msgid "Output"
msgstr ""
-#: templates/js/translated/build.js:609
+#: templates/js/translated/build.js:615
msgid "Complete Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:706
+#: templates/js/translated/build.js:712
msgid "Selected build outputs will be marked as scrapped"
msgstr ""
-#: templates/js/translated/build.js:708
+#: templates/js/translated/build.js:714
msgid "Scrapped output are marked as rejected"
msgstr ""
-#: templates/js/translated/build.js:709
+#: templates/js/translated/build.js:715
msgid "Allocated stock items will no longer be available"
msgstr ""
-#: templates/js/translated/build.js:710
+#: templates/js/translated/build.js:716
msgid "The completion status of the build order will not be adjusted"
msgstr ""
-#: templates/js/translated/build.js:737
+#: templates/js/translated/build.js:743
msgid "Scrap Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:827
+#: templates/js/translated/build.js:833
msgid "Selected build outputs will be deleted"
msgstr ""
-#: templates/js/translated/build.js:829
+#: templates/js/translated/build.js:835
msgid "Build output data will be permanently deleted"
msgstr ""
-#: templates/js/translated/build.js:830
+#: templates/js/translated/build.js:836
msgid "Allocated stock items will be returned to stock"
msgstr ""
-#: templates/js/translated/build.js:848
+#: templates/js/translated/build.js:854
msgid "Delete Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:934
+#: templates/js/translated/build.js:941
msgid "No build order allocations found"
msgstr ""
-#: templates/js/translated/build.js:971
+#: templates/js/translated/build.js:970 templates/js/translated/build.js:2270
+msgid "Allocated Quantity"
+msgstr ""
+
+#: templates/js/translated/build.js:984
msgid "Location not specified"
msgstr ""
-#: templates/js/translated/build.js:1047
+#: templates/js/translated/build.js:1006
+msgid "Complete outputs"
+msgstr ""
+
+#: templates/js/translated/build.js:1024
+msgid "Scrap outputs"
+msgstr ""
+
+#: templates/js/translated/build.js:1042
+msgid "Delete outputs"
+msgstr ""
+
+#: templates/js/translated/build.js:1100
msgid "build output"
msgstr ""
-#: templates/js/translated/build.js:1048
+#: templates/js/translated/build.js:1101
msgid "build outputs"
msgstr ""
-#: templates/js/translated/build.js:1383
+#: templates/js/translated/build.js:1105
+msgid "Build output actions"
+msgstr ""
+
+#: templates/js/translated/build.js:1274
msgid "No active build outputs found"
msgstr ""
-#: templates/js/translated/build.js:1457
-msgid "Allocated Stock"
+#: templates/js/translated/build.js:1329
+msgid "Allocated Lines"
msgstr ""
-#: templates/js/translated/build.js:1464
-msgid "No tracked BOM items for this build"
+#: templates/js/translated/build.js:1343
+msgid "Required Tests"
msgstr ""
-#: templates/js/translated/build.js:1486
-msgid "Completed Tests"
-msgstr ""
-
-#: templates/js/translated/build.js:1491
-msgid "No required tests for this build"
-msgstr ""
-
-#: templates/js/translated/build.js:2032 templates/js/translated/build.js:3056
-#: templates/js/translated/sales_order.js:1632
-msgid "Edit stock allocation"
-msgstr ""
-
-#: templates/js/translated/build.js:2034 templates/js/translated/build.js:3057
-#: templates/js/translated/sales_order.js:1633
-msgid "Delete stock allocation"
-msgstr ""
-
-#: templates/js/translated/build.js:2050
-msgid "Edit Allocation"
-msgstr ""
-
-#: templates/js/translated/build.js:2060
-msgid "Remove Allocation"
-msgstr ""
-
-#: templates/js/translated/build.js:2086
-msgid "Substitute parts available"
-msgstr ""
-
-#: templates/js/translated/build.js:2122
-msgid "Quantity Per"
-msgstr ""
-
-#: templates/js/translated/build.js:2167
-#: templates/js/translated/sales_order.js:1894
-msgid "Insufficient stock available"
-msgstr ""
-
-#: templates/js/translated/build.js:2169
-#: templates/js/translated/sales_order.js:1892
-msgid "Sufficient stock available"
-msgstr ""
-
-#: templates/js/translated/build.js:2263
-#: templates/js/translated/sales_order.js:1993
-msgid "Build stock"
-msgstr ""
-
-#: templates/js/translated/build.js:2267 templates/stock_table.html:38
-msgid "Order stock"
-msgstr ""
-
-#: templates/js/translated/build.js:2270
-#: templates/js/translated/sales_order.js:1987
-msgid "Allocate stock"
-msgstr ""
-
-#: templates/js/translated/build.js:2310
-#: templates/js/translated/purchase_order.js:616
-#: templates/js/translated/sales_order.js:1159
+#: templates/js/translated/build.js:1502
+#: templates/js/translated/purchase_order.js:627
+#: templates/js/translated/sales_order.js:1171
msgid "Select Parts"
msgstr "Välj artiklar"
-#: templates/js/translated/build.js:2311
-#: templates/js/translated/sales_order.js:1160
+#: templates/js/translated/build.js:1503
+#: templates/js/translated/sales_order.js:1172
msgid "You must select at least one part to allocate"
msgstr ""
-#: templates/js/translated/build.js:2359
-#: templates/js/translated/sales_order.js:1109
+#: templates/js/translated/build.js:1566
+#: templates/js/translated/sales_order.js:1121
msgid "Specify stock allocation quantity"
msgstr ""
-#: templates/js/translated/build.js:2438
+#: templates/js/translated/build.js:1643
msgid "All Parts Allocated"
msgstr ""
-#: templates/js/translated/build.js:2439
+#: templates/js/translated/build.js:1644
msgid "All selected parts have been fully allocated"
msgstr ""
-#: templates/js/translated/build.js:2453
-#: templates/js/translated/sales_order.js:1174
+#: templates/js/translated/build.js:1658
+#: templates/js/translated/sales_order.js:1186
msgid "Select source location (leave blank to take from all locations)"
msgstr ""
-#: templates/js/translated/build.js:2481
+#: templates/js/translated/build.js:1686
msgid "Allocate Stock Items to Build Order"
msgstr ""
-#: templates/js/translated/build.js:2492
-#: templates/js/translated/sales_order.js:1271
+#: templates/js/translated/build.js:1697
+#: templates/js/translated/sales_order.js:1283
msgid "No matching stock locations"
msgstr ""
-#: templates/js/translated/build.js:2565
-#: templates/js/translated/sales_order.js:1348
+#: templates/js/translated/build.js:1770
+#: templates/js/translated/sales_order.js:1360
msgid "No matching stock items"
msgstr ""
-#: templates/js/translated/build.js:2662
+#: templates/js/translated/build.js:1867
msgid "Automatic Stock Allocation"
msgstr ""
-#: templates/js/translated/build.js:2663
+#: templates/js/translated/build.js:1868
msgid "Stock items will be automatically allocated to this build order, according to the provided guidelines"
msgstr ""
-#: templates/js/translated/build.js:2665
+#: templates/js/translated/build.js:1870
msgid "If a location is specified, stock will only be allocated from that location"
msgstr ""
-#: templates/js/translated/build.js:2666
+#: templates/js/translated/build.js:1871
msgid "If stock is considered interchangeable, it will be allocated from the first location it is found"
msgstr ""
-#: templates/js/translated/build.js:2667
+#: templates/js/translated/build.js:1872
msgid "If substitute stock is allowed, it will be used where stock of the primary part cannot be found"
msgstr ""
-#: templates/js/translated/build.js:2694
+#: templates/js/translated/build.js:1899
msgid "Allocate Stock Items"
msgstr ""
-#: templates/js/translated/build.js:2800
+#: templates/js/translated/build.js:2005
msgid "No builds matching query"
msgstr ""
-#: templates/js/translated/build.js:2835 templates/js/translated/part.js:2208
-#: templates/js/translated/part.js:2692 templates/js/translated/stock.js:1759
-#: templates/js/translated/stock.js:2458
+#: templates/js/translated/build.js:2040 templates/js/translated/build.js:2408
+#: templates/js/translated/part.js:2284 templates/js/translated/part.js:2677
+#: templates/js/translated/stock.js:1899 templates/js/translated/stock.js:2589
msgid "Select"
msgstr ""
-#: templates/js/translated/build.js:2849
+#: templates/js/translated/build.js:2054
msgid "Build order is overdue"
msgstr ""
-#: templates/js/translated/build.js:2883
+#: templates/js/translated/build.js:2100
msgid "Progress"
msgstr ""
-#: templates/js/translated/build.js:2919 templates/js/translated/stock.js:2779
+#: templates/js/translated/build.js:2136 templates/js/translated/stock.js:2910
msgid "No user information"
msgstr ""
-#: templates/js/translated/build.js:2934
+#: templates/js/translated/build.js:2151
msgid "group"
msgstr ""
-#: templates/js/translated/build.js:3033
-msgid "No parts allocated for"
+#: templates/js/translated/build.js:2315
+#: templates/js/translated/sales_order.js:1644
+msgid "Edit stock allocation"
msgstr ""
-#: templates/js/translated/company.js:87
+#: templates/js/translated/build.js:2316
+#: templates/js/translated/sales_order.js:1645
+msgid "Delete stock allocation"
+msgstr ""
+
+#: templates/js/translated/build.js:2331
+msgid "Edit Allocation"
+msgstr ""
+
+#: templates/js/translated/build.js:2343
+msgid "Remove Allocation"
+msgstr ""
+
+#: templates/js/translated/build.js:2384
+msgid "build line"
+msgstr ""
+
+#: templates/js/translated/build.js:2385
+msgid "build lines"
+msgstr ""
+
+#: templates/js/translated/build.js:2403
+msgid "No build lines found"
+msgstr ""
+
+#: templates/js/translated/build.js:2433 templates/js/translated/part.js:767
+#: templates/js/translated/part.js:1175
+msgid "Trackable part"
+msgstr ""
+
+#: templates/js/translated/build.js:2468
+msgid "Unit Quantity"
+msgstr ""
+
+#: templates/js/translated/build.js:2517
+#: templates/js/translated/sales_order.js:1906
+msgid "Insufficient stock available"
+msgstr ""
+
+#: templates/js/translated/build.js:2519
+#: templates/js/translated/sales_order.js:1904
+msgid "Sufficient stock available"
+msgstr ""
+
+#: templates/js/translated/build.js:2566
+msgid "Consumable Item"
+msgstr ""
+
+#: templates/js/translated/build.js:2571
+msgid "Tracked item"
+msgstr ""
+
+#: templates/js/translated/build.js:2578
+#: templates/js/translated/sales_order.js:2005
+msgid "Build stock"
+msgstr ""
+
+#: templates/js/translated/build.js:2583 templates/js/translated/stock.js:1779
+msgid "Order stock"
+msgstr ""
+
+#: templates/js/translated/build.js:2587
+#: templates/js/translated/sales_order.js:1999
+msgid "Allocate stock"
+msgstr ""
+
+#: templates/js/translated/build.js:2591
+msgid "Remove stock allocation"
+msgstr ""
+
+#: templates/js/translated/company.js:97
msgid "Add Manufacturer"
msgstr ""
-#: templates/js/translated/company.js:100
-#: templates/js/translated/company.js:202
+#: templates/js/translated/company.js:110
+#: templates/js/translated/company.js:212
msgid "Add Manufacturer Part"
msgstr ""
-#: templates/js/translated/company.js:121
+#: templates/js/translated/company.js:131
msgid "Edit Manufacturer Part"
msgstr ""
-#: templates/js/translated/company.js:190
-#: templates/js/translated/purchase_order.js:94
+#: templates/js/translated/company.js:200
+#: templates/js/translated/purchase_order.js:93
msgid "Add Supplier"
msgstr ""
-#: templates/js/translated/company.js:232
-#: templates/js/translated/purchase_order.js:338
+#: templates/js/translated/company.js:242
+#: templates/js/translated/purchase_order.js:349
msgid "Add Supplier Part"
msgstr ""
-#: templates/js/translated/company.js:333
+#: templates/js/translated/company.js:343
msgid "All selected supplier parts will be deleted"
msgstr ""
-#: templates/js/translated/company.js:349
+#: templates/js/translated/company.js:359
msgid "Delete Supplier Parts"
msgstr ""
-#: templates/js/translated/company.js:457
+#: templates/js/translated/company.js:464
msgid "Add new Company"
msgstr ""
-#: templates/js/translated/company.js:528
+#: templates/js/translated/company.js:535
msgid "Parts Supplied"
msgstr ""
-#: templates/js/translated/company.js:537
+#: templates/js/translated/company.js:544
msgid "Parts Manufactured"
msgstr ""
-#: templates/js/translated/company.js:552
+#: templates/js/translated/company.js:559
msgid "No company information found"
msgstr ""
-#: templates/js/translated/company.js:601
+#: templates/js/translated/company.js:608
msgid "Create New Contact"
msgstr ""
-#: templates/js/translated/company.js:617
-#: templates/js/translated/company.js:740
+#: templates/js/translated/company.js:624
+#: templates/js/translated/company.js:747
msgid "Edit Contact"
msgstr ""
-#: templates/js/translated/company.js:654
+#: templates/js/translated/company.js:661
msgid "All selected contacts will be deleted"
msgstr ""
-#: templates/js/translated/company.js:660
-#: templates/js/translated/company.js:724
+#: templates/js/translated/company.js:667
+#: templates/js/translated/company.js:731
msgid "Role"
msgstr ""
-#: templates/js/translated/company.js:668
+#: templates/js/translated/company.js:675
msgid "Delete Contacts"
msgstr ""
-#: templates/js/translated/company.js:699
+#: templates/js/translated/company.js:706
msgid "No contacts found"
msgstr ""
-#: templates/js/translated/company.js:712
+#: templates/js/translated/company.js:719
msgid "Phone Number"
msgstr ""
-#: templates/js/translated/company.js:718
+#: templates/js/translated/company.js:725
msgid "Email Address"
msgstr ""
-#: templates/js/translated/company.js:744
+#: templates/js/translated/company.js:751
msgid "Delete Contact"
msgstr ""
-#: templates/js/translated/company.js:818
+#: templates/js/translated/company.js:886
+msgid "Create New Address"
+msgstr ""
+
+#: templates/js/translated/company.js:901
+#: templates/js/translated/company.js:1066
+msgid "Edit Address"
+msgstr ""
+
+#: templates/js/translated/company.js:936
+msgid "All selected addresses will be deleted"
+msgstr ""
+
+#: templates/js/translated/company.js:950
+msgid "Delete Addresses"
+msgstr ""
+
+#: templates/js/translated/company.js:977
+msgid "No addresses found"
+msgstr ""
+
+#: templates/js/translated/company.js:1020
+msgid "Postal city"
+msgstr ""
+
+#: templates/js/translated/company.js:1026
+msgid "State/province"
+msgstr ""
+
+#: templates/js/translated/company.js:1038
+msgid "Courier notes"
+msgstr ""
+
+#: templates/js/translated/company.js:1044
+msgid "Internal notes"
+msgstr ""
+
+#: templates/js/translated/company.js:1070
+msgid "Delete Address"
+msgstr ""
+
+#: templates/js/translated/company.js:1143
msgid "All selected manufacturer parts will be deleted"
msgstr ""
-#: templates/js/translated/company.js:833
+#: templates/js/translated/company.js:1158
msgid "Delete Manufacturer Parts"
msgstr ""
-#: templates/js/translated/company.js:867
+#: templates/js/translated/company.js:1192
msgid "All selected parameters will be deleted"
msgstr ""
-#: templates/js/translated/company.js:881
+#: templates/js/translated/company.js:1206
msgid "Delete Parameters"
msgstr ""
-#: templates/js/translated/company.js:917
+#: templates/js/translated/company.js:1222
+#: templates/js/translated/company.js:1510 templates/js/translated/part.js:2213
+msgid "Order parts"
+msgstr ""
+
+#: templates/js/translated/company.js:1239
+msgid "Delete manufacturer parts"
+msgstr ""
+
+#: templates/js/translated/company.js:1271
+msgid "Manufacturer part actions"
+msgstr ""
+
+#: templates/js/translated/company.js:1290
msgid "No manufacturer parts found"
msgstr ""
-#: templates/js/translated/company.js:937
-#: templates/js/translated/company.js:1177 templates/js/translated/part.js:776
-#: templates/js/translated/part.js:1184
+#: templates/js/translated/company.js:1310
+#: templates/js/translated/company.js:1598 templates/js/translated/part.js:775
+#: templates/js/translated/part.js:1183
msgid "Template part"
msgstr ""
-#: templates/js/translated/company.js:941
-#: templates/js/translated/company.js:1181 templates/js/translated/part.js:780
-#: templates/js/translated/part.js:1188
+#: templates/js/translated/company.js:1314
+#: templates/js/translated/company.js:1602 templates/js/translated/part.js:779
+#: templates/js/translated/part.js:1187
msgid "Assembled part"
msgstr ""
-#: templates/js/translated/company.js:1061 templates/js/translated/part.js:1437
+#: templates/js/translated/company.js:1434 templates/js/translated/part.js:1436
msgid "No parameters found"
msgstr ""
-#: templates/js/translated/company.js:1096 templates/js/translated/part.js:1500
+#: templates/js/translated/company.js:1469 templates/js/translated/part.js:1499
msgid "Edit parameter"
msgstr ""
-#: templates/js/translated/company.js:1097 templates/js/translated/part.js:1501
+#: templates/js/translated/company.js:1470 templates/js/translated/part.js:1500
msgid "Delete parameter"
msgstr ""
-#: templates/js/translated/company.js:1114 templates/js/translated/part.js:1407
+#: templates/js/translated/company.js:1487 templates/js/translated/part.js:1406
msgid "Edit Parameter"
msgstr ""
-#: templates/js/translated/company.js:1123 templates/js/translated/part.js:1522
+#: templates/js/translated/company.js:1496 templates/js/translated/part.js:1521
msgid "Delete Parameter"
msgstr ""
-#: templates/js/translated/company.js:1156
+#: templates/js/translated/company.js:1527
+msgid "Delete supplier parts"
+msgstr ""
+
+#: templates/js/translated/company.js:1577
msgid "No supplier parts found"
msgstr ""
-#: templates/js/translated/company.js:1274
+#: templates/js/translated/company.js:1695
msgid "Base Units"
msgstr ""
-#: templates/js/translated/company.js:1304
+#: templates/js/translated/company.js:1725
msgid "Availability"
msgstr ""
-#: templates/js/translated/company.js:1335
+#: templates/js/translated/company.js:1756
msgid "Edit supplier part"
msgstr ""
-#: templates/js/translated/company.js:1336
+#: templates/js/translated/company.js:1757
msgid "Delete supplier part"
msgstr ""
-#: templates/js/translated/company.js:1389
+#: templates/js/translated/company.js:1810
#: templates/js/translated/pricing.js:694
msgid "Delete Price Break"
msgstr ""
-#: templates/js/translated/company.js:1399
+#: templates/js/translated/company.js:1820
#: templates/js/translated/pricing.js:712
msgid "Edit Price Break"
msgstr ""
-#: templates/js/translated/company.js:1414
+#: templates/js/translated/company.js:1835
msgid "No price break information found"
msgstr ""
-#: templates/js/translated/company.js:1443
+#: templates/js/translated/company.js:1864
msgid "Last updated"
msgstr ""
-#: templates/js/translated/company.js:1450
+#: templates/js/translated/company.js:1871
msgid "Edit price break"
msgstr ""
-#: templates/js/translated/company.js:1451
+#: templates/js/translated/company.js:1872
msgid "Delete price break"
msgstr ""
-#: templates/js/translated/filters.js:186
-#: templates/js/translated/filters.js:550
+#: templates/js/translated/filters.js:187
+#: templates/js/translated/filters.js:673
msgid "true"
msgstr ""
-#: templates/js/translated/filters.js:190
-#: templates/js/translated/filters.js:551
+#: templates/js/translated/filters.js:191
+#: templates/js/translated/filters.js:674
msgid "false"
msgstr ""
-#: templates/js/translated/filters.js:214
+#: templates/js/translated/filters.js:215
msgid "Select filter"
msgstr ""
-#: templates/js/translated/filters.js:328
+#: templates/js/translated/filters.js:438
msgid "Print Labels"
msgstr ""
-#: templates/js/translated/filters.js:332
+#: templates/js/translated/filters.js:442
msgid "Print Reports"
msgstr ""
-#: templates/js/translated/filters.js:344
+#: templates/js/translated/filters.js:454
msgid "Download table data"
msgstr ""
-#: templates/js/translated/filters.js:351
+#: templates/js/translated/filters.js:461
msgid "Reload table data"
msgstr ""
-#: templates/js/translated/filters.js:360
+#: templates/js/translated/filters.js:470
msgid "Add new filter"
msgstr ""
-#: templates/js/translated/filters.js:368
+#: templates/js/translated/filters.js:478
msgid "Clear all filters"
msgstr ""
-#: templates/js/translated/filters.js:460
+#: templates/js/translated/filters.js:583
msgid "Create filter"
msgstr ""
@@ -10497,6 +10620,12 @@ msgstr ""
msgid "View operation not allowed"
msgstr ""
+#: templates/js/translated/forms.js:506 templates/js/translated/helpers.js:105
+#: templates/js/translated/part.js:369 templates/js/translated/pricing.js:629
+#: templates/js/translated/stock.js:215 users/models.py:253
+msgid "Delete"
+msgstr ""
+
#: templates/js/translated/forms.js:752
msgid "Keep this form open"
msgstr ""
@@ -10514,23 +10643,23 @@ msgstr ""
msgid "No results found"
msgstr ""
-#: templates/js/translated/forms.js:2071 templates/js/translated/search.js:281
+#: templates/js/translated/forms.js:2071 templates/js/translated/search.js:239
msgid "Searching"
msgstr ""
-#: templates/js/translated/forms.js:2276
+#: templates/js/translated/forms.js:2285
msgid "Clear input"
msgstr ""
-#: templates/js/translated/forms.js:2733
+#: templates/js/translated/forms.js:2742
msgid "File Column"
msgstr ""
-#: templates/js/translated/forms.js:2733
+#: templates/js/translated/forms.js:2742
msgid "Field Name"
msgstr ""
-#: templates/js/translated/forms.js:2745
+#: templates/js/translated/forms.js:2754
msgid "Select Columns"
msgstr ""
@@ -10550,6 +10679,14 @@ msgstr ""
msgid "False"
msgstr ""
+#: templates/js/translated/index.js:99
+msgid "No parts required for builds"
+msgstr ""
+
+#: templates/js/translated/index.js:125
+msgid "Allocated Stock"
+msgstr ""
+
#: templates/js/translated/label.js:58
msgid "Select Printer"
msgstr ""
@@ -10651,7 +10788,7 @@ msgstr ""
#: templates/js/translated/news.js:38
#: templates/js/translated/notification.js:45
-#: templates/js/translated/part.js:1577
+#: templates/js/translated/part.js:1576
msgid "ID"
msgstr ""
@@ -10700,7 +10837,7 @@ msgid "Delete Line"
msgstr ""
#: templates/js/translated/order.js:281
-#: templates/js/translated/purchase_order.js:1958
+#: templates/js/translated/purchase_order.js:1968
msgid "No line items found"
msgstr ""
@@ -10716,363 +10853,355 @@ msgstr ""
msgid "Delete line"
msgstr ""
-#: templates/js/translated/part.js:91
+#: templates/js/translated/part.js:90
msgid "Part Attributes"
msgstr ""
-#: templates/js/translated/part.js:95
+#: templates/js/translated/part.js:94
msgid "Part Creation Options"
msgstr ""
-#: templates/js/translated/part.js:99
+#: templates/js/translated/part.js:98
msgid "Part Duplication Options"
msgstr ""
-#: templates/js/translated/part.js:122
+#: templates/js/translated/part.js:121
msgid "Add Part Category"
msgstr ""
-#: templates/js/translated/part.js:294
+#: templates/js/translated/part.js:293
msgid "Parent part category"
msgstr ""
-#: templates/js/translated/part.js:310 templates/js/translated/stock.js:147
+#: templates/js/translated/part.js:309 templates/js/translated/stock.js:146
msgid "Icon (optional) - Explore all available icons on"
msgstr ""
-#: templates/js/translated/part.js:330
+#: templates/js/translated/part.js:329
msgid "Create Part Category"
msgstr ""
-#: templates/js/translated/part.js:333
+#: templates/js/translated/part.js:332
msgid "Create new category after this one"
msgstr ""
-#: templates/js/translated/part.js:334
+#: templates/js/translated/part.js:333
msgid "Part category created"
msgstr ""
-#: templates/js/translated/part.js:348
+#: templates/js/translated/part.js:347
msgid "Edit Part Category"
msgstr ""
-#: templates/js/translated/part.js:361
+#: templates/js/translated/part.js:360
msgid "Are you sure you want to delete this part category?"
msgstr ""
-#: templates/js/translated/part.js:366
+#: templates/js/translated/part.js:365
msgid "Move to parent category"
msgstr ""
-#: templates/js/translated/part.js:375
+#: templates/js/translated/part.js:374
msgid "Delete Part Category"
msgstr ""
-#: templates/js/translated/part.js:379
+#: templates/js/translated/part.js:378
msgid "Action for parts in this category"
msgstr ""
-#: templates/js/translated/part.js:384
+#: templates/js/translated/part.js:383
msgid "Action for child categories"
msgstr ""
-#: templates/js/translated/part.js:408
+#: templates/js/translated/part.js:407
msgid "Create Part"
msgstr ""
-#: templates/js/translated/part.js:410
+#: templates/js/translated/part.js:409
msgid "Create another part after this one"
msgstr ""
-#: templates/js/translated/part.js:411
+#: templates/js/translated/part.js:410
msgid "Part created successfully"
msgstr ""
-#: templates/js/translated/part.js:439
+#: templates/js/translated/part.js:438
msgid "Edit Part"
msgstr ""
-#: templates/js/translated/part.js:441
+#: templates/js/translated/part.js:440
msgid "Part edited"
msgstr ""
-#: templates/js/translated/part.js:452
+#: templates/js/translated/part.js:451
msgid "Create Part Variant"
msgstr ""
-#: templates/js/translated/part.js:509
+#: templates/js/translated/part.js:508
msgid "Active Part"
msgstr ""
-#: templates/js/translated/part.js:510
+#: templates/js/translated/part.js:509
msgid "Part cannot be deleted as it is currently active"
msgstr ""
-#: templates/js/translated/part.js:524
+#: templates/js/translated/part.js:523
msgid "Deleting this part cannot be reversed"
msgstr ""
-#: templates/js/translated/part.js:526
+#: templates/js/translated/part.js:525
msgid "Any stock items for this part will be deleted"
msgstr ""
-#: templates/js/translated/part.js:527
+#: templates/js/translated/part.js:526
msgid "This part will be removed from any Bills of Material"
msgstr ""
-#: templates/js/translated/part.js:528
+#: templates/js/translated/part.js:527
msgid "All manufacturer and supplier information for this part will be deleted"
msgstr ""
-#: templates/js/translated/part.js:535
+#: templates/js/translated/part.js:534
msgid "Delete Part"
msgstr ""
-#: templates/js/translated/part.js:571
+#: templates/js/translated/part.js:570
msgid "You are subscribed to notifications for this item"
msgstr ""
-#: templates/js/translated/part.js:573
+#: templates/js/translated/part.js:572
msgid "You have subscribed to notifications for this item"
msgstr ""
-#: templates/js/translated/part.js:578
+#: templates/js/translated/part.js:577
msgid "Subscribe to notifications for this item"
msgstr ""
-#: templates/js/translated/part.js:580
+#: templates/js/translated/part.js:579
msgid "You have unsubscribed to notifications for this item"
msgstr ""
-#: templates/js/translated/part.js:597
+#: templates/js/translated/part.js:596
msgid "Validating the BOM will mark each line item as valid"
msgstr ""
-#: templates/js/translated/part.js:607
+#: templates/js/translated/part.js:606
msgid "Validate Bill of Materials"
msgstr ""
-#: templates/js/translated/part.js:610
+#: templates/js/translated/part.js:609
msgid "Validated Bill of Materials"
msgstr ""
-#: templates/js/translated/part.js:635
+#: templates/js/translated/part.js:634
msgid "Copy Bill of Materials"
msgstr ""
-#: templates/js/translated/part.js:663
-#: templates/js/translated/table_filters.js:660
+#: templates/js/translated/part.js:662
+#: templates/js/translated/table_filters.js:682
msgid "Low stock"
msgstr ""
-#: templates/js/translated/part.js:666
+#: templates/js/translated/part.js:665
msgid "No stock available"
msgstr ""
-#: templates/js/translated/part.js:726
+#: templates/js/translated/part.js:725
msgid "Demand"
msgstr ""
-#: templates/js/translated/part.js:749
+#: templates/js/translated/part.js:748
msgid "Unit"
msgstr ""
-#: templates/js/translated/part.js:768 templates/js/translated/part.js:1176
-msgid "Trackable part"
-msgstr ""
-
-#: templates/js/translated/part.js:772 templates/js/translated/part.js:1180
+#: templates/js/translated/part.js:771 templates/js/translated/part.js:1179
msgid "Virtual part"
msgstr ""
-#: templates/js/translated/part.js:784
+#: templates/js/translated/part.js:783
msgid "Subscribed part"
msgstr ""
-#: templates/js/translated/part.js:788
+#: templates/js/translated/part.js:787
msgid "Salable part"
msgstr ""
-#: templates/js/translated/part.js:863
+#: templates/js/translated/part.js:862
msgid "Schedule generation of a new stocktake report."
msgstr ""
-#: templates/js/translated/part.js:863
+#: templates/js/translated/part.js:862
msgid "Once complete, the stocktake report will be available for download."
msgstr ""
-#: templates/js/translated/part.js:871
+#: templates/js/translated/part.js:870
msgid "Generate Stocktake Report"
msgstr ""
-#: templates/js/translated/part.js:875
+#: templates/js/translated/part.js:874
msgid "Stocktake report scheduled"
msgstr ""
-#: templates/js/translated/part.js:1024
+#: templates/js/translated/part.js:1023
msgid "No stocktake information available"
msgstr ""
-#: templates/js/translated/part.js:1082 templates/js/translated/part.js:1118
+#: templates/js/translated/part.js:1081 templates/js/translated/part.js:1117
msgid "Edit Stocktake Entry"
msgstr ""
-#: templates/js/translated/part.js:1086 templates/js/translated/part.js:1128
+#: templates/js/translated/part.js:1085 templates/js/translated/part.js:1127
msgid "Delete Stocktake Entry"
msgstr ""
-#: templates/js/translated/part.js:1255
+#: templates/js/translated/part.js:1254
msgid "No variants found"
msgstr ""
-#: templates/js/translated/part.js:1572
+#: templates/js/translated/part.js:1571
msgid "No part parameter templates found"
msgstr ""
-#: templates/js/translated/part.js:1635
+#: templates/js/translated/part.js:1634
msgid "Edit Part Parameter Template"
msgstr ""
-#: templates/js/translated/part.js:1647
+#: templates/js/translated/part.js:1646
msgid "Any parameters which reference this template will also be deleted"
msgstr ""
-#: templates/js/translated/part.js:1655
+#: templates/js/translated/part.js:1654
msgid "Delete Part Parameter Template"
msgstr ""
-#: templates/js/translated/part.js:1689
-#: templates/js/translated/purchase_order.js:1618
+#: templates/js/translated/part.js:1688
+#: templates/js/translated/purchase_order.js:1633
msgid "No purchase orders found"
msgstr ""
-#: templates/js/translated/part.js:1832
-#: templates/js/translated/purchase_order.js:2121
-#: templates/js/translated/return_order.js:740
-#: templates/js/translated/sales_order.js:1855
+#: templates/js/translated/part.js:1831
+#: templates/js/translated/purchase_order.js:2131
+#: templates/js/translated/return_order.js:752
+#: templates/js/translated/sales_order.js:1867
msgid "This line item is overdue"
msgstr ""
-#: templates/js/translated/part.js:1877
-#: templates/js/translated/purchase_order.js:2188
+#: templates/js/translated/part.js:1876
+#: templates/js/translated/purchase_order.js:2198
msgid "Receive line item"
msgstr ""
-#: templates/js/translated/part.js:1944
+#: templates/js/translated/part.js:1943
msgid "Delete part relationship"
msgstr ""
-#: templates/js/translated/part.js:1966
+#: templates/js/translated/part.js:1965
msgid "Delete Part Relationship"
msgstr ""
-#: templates/js/translated/part.js:2054 templates/js/translated/part.js:2366
+#: templates/js/translated/part.js:2053 templates/js/translated/part.js:2442
msgid "No parts found"
msgstr ""
-#: templates/js/translated/part.js:2192
-msgid "parts"
-msgstr ""
-
-#: templates/js/translated/part.js:2276
-msgid "No category"
-msgstr ""
-
-#: templates/js/translated/part.js:2390 templates/js/translated/part.js:2611
-#: templates/js/translated/stock.js:2417
-msgid "Display as list"
-msgstr ""
-
-#: templates/js/translated/part.js:2406
-msgid "Display as grid"
-msgstr ""
-
-#: templates/js/translated/part.js:2472
+#: templates/js/translated/part.js:2174
msgid "Set the part category for the selected parts"
msgstr ""
-#: templates/js/translated/part.js:2477
+#: templates/js/translated/part.js:2179
msgid "Set Part Category"
msgstr ""
+#: templates/js/translated/part.js:2204
+msgid "Set category"
+msgstr ""
+
+#: templates/js/translated/part.js:2259
+msgid "parts"
+msgstr ""
+
+#: templates/js/translated/part.js:2352
+msgid "No category"
+msgstr ""
+
+#: templates/js/translated/part.js:2466 templates/js/translated/part.js:2596
+#: templates/js/translated/stock.js:2548
+msgid "Display as list"
+msgstr ""
+
#: templates/js/translated/part.js:2482
-msgid "Select Part Category"
+msgid "Display as grid"
msgstr ""
-#: templates/js/translated/part.js:2495
-msgid "Category is required"
-msgstr ""
-
-#: templates/js/translated/part.js:2595
+#: templates/js/translated/part.js:2580
msgid "No subcategories found"
msgstr ""
-#: templates/js/translated/part.js:2631 templates/js/translated/stock.js:2437
+#: templates/js/translated/part.js:2616 templates/js/translated/stock.js:2568
msgid "Display as tree"
msgstr ""
-#: templates/js/translated/part.js:2711
+#: templates/js/translated/part.js:2696
msgid "Load Subcategories"
msgstr ""
-#: templates/js/translated/part.js:2727
+#: templates/js/translated/part.js:2712
msgid "Subscribed category"
msgstr ""
-#: templates/js/translated/part.js:2807
+#: templates/js/translated/part.js:2792
msgid "No test templates matching query"
msgstr ""
-#: templates/js/translated/part.js:2858 templates/js/translated/stock.js:1380
+#: templates/js/translated/part.js:2843 templates/js/translated/stock.js:1379
msgid "Edit test result"
msgstr ""
-#: templates/js/translated/part.js:2859 templates/js/translated/stock.js:1381
-#: templates/js/translated/stock.js:1643
+#: templates/js/translated/part.js:2844 templates/js/translated/stock.js:1380
+#: templates/js/translated/stock.js:1642
msgid "Delete test result"
msgstr ""
-#: templates/js/translated/part.js:2863
+#: templates/js/translated/part.js:2848
msgid "This test is defined for a parent part"
msgstr ""
-#: templates/js/translated/part.js:2879
+#: templates/js/translated/part.js:2864
msgid "Edit Test Result Template"
msgstr ""
-#: templates/js/translated/part.js:2893
+#: templates/js/translated/part.js:2878
msgid "Delete Test Result Template"
msgstr ""
-#: templates/js/translated/part.js:2972 templates/js/translated/part.js:2973
+#: templates/js/translated/part.js:2957 templates/js/translated/part.js:2958
msgid "No date specified"
msgstr ""
-#: templates/js/translated/part.js:2975
+#: templates/js/translated/part.js:2960
msgid "Specified date is in the past"
msgstr ""
-#: templates/js/translated/part.js:2981
+#: templates/js/translated/part.js:2966
msgid "Speculative"
msgstr ""
-#: templates/js/translated/part.js:3031
+#: templates/js/translated/part.js:3016
msgid "No scheduling information available for this part"
msgstr ""
-#: templates/js/translated/part.js:3037
+#: templates/js/translated/part.js:3022
msgid "Error fetching scheduling information for this part"
msgstr ""
-#: templates/js/translated/part.js:3133
+#: templates/js/translated/part.js:3118
msgid "Scheduled Stock Quantities"
msgstr ""
-#: templates/js/translated/part.js:3149
+#: templates/js/translated/part.js:3134
msgid "Maximum Quantity"
msgstr ""
-#: templates/js/translated/part.js:3194
+#: templates/js/translated/part.js:3179
msgid "Minimum Stock Level"
msgstr ""
@@ -11168,234 +11297,234 @@ msgstr ""
msgid "Variant Part"
msgstr ""
-#: templates/js/translated/purchase_order.js:155
+#: templates/js/translated/purchase_order.js:166
msgid "Select purchase order to duplicate"
msgstr ""
-#: templates/js/translated/purchase_order.js:162
+#: templates/js/translated/purchase_order.js:173
msgid "Duplicate Line Items"
msgstr ""
-#: templates/js/translated/purchase_order.js:163
+#: templates/js/translated/purchase_order.js:174
msgid "Duplicate all line items from the selected order"
msgstr ""
-#: templates/js/translated/purchase_order.js:170
+#: templates/js/translated/purchase_order.js:181
msgid "Duplicate Extra Lines"
msgstr ""
-#: templates/js/translated/purchase_order.js:171
+#: templates/js/translated/purchase_order.js:182
msgid "Duplicate extra line items from the selected order"
msgstr ""
-#: templates/js/translated/purchase_order.js:192
+#: templates/js/translated/purchase_order.js:203
msgid "Edit Purchase Order"
msgstr ""
-#: templates/js/translated/purchase_order.js:209
+#: templates/js/translated/purchase_order.js:220
msgid "Duplication Options"
msgstr ""
-#: templates/js/translated/purchase_order.js:436
+#: templates/js/translated/purchase_order.js:447
msgid "Complete Purchase Order"
msgstr ""
-#: templates/js/translated/purchase_order.js:453
-#: templates/js/translated/return_order.js:195
-#: templates/js/translated/sales_order.js:485
+#: templates/js/translated/purchase_order.js:464
+#: templates/js/translated/return_order.js:207
+#: templates/js/translated/sales_order.js:497
msgid "Mark this order as complete?"
msgstr ""
-#: templates/js/translated/purchase_order.js:459
+#: templates/js/translated/purchase_order.js:470
msgid "All line items have been received"
msgstr ""
-#: templates/js/translated/purchase_order.js:464
+#: templates/js/translated/purchase_order.js:475
msgid "This order has line items which have not been marked as received."
msgstr ""
-#: templates/js/translated/purchase_order.js:465
-#: templates/js/translated/sales_order.js:499
+#: templates/js/translated/purchase_order.js:476
+#: templates/js/translated/sales_order.js:511
msgid "Completing this order means that the order and line items will no longer be editable."
msgstr ""
-#: templates/js/translated/purchase_order.js:488
+#: templates/js/translated/purchase_order.js:499
msgid "Cancel Purchase Order"
msgstr ""
-#: templates/js/translated/purchase_order.js:493
+#: templates/js/translated/purchase_order.js:504
msgid "Are you sure you wish to cancel this purchase order?"
msgstr ""
-#: templates/js/translated/purchase_order.js:499
+#: templates/js/translated/purchase_order.js:510
msgid "This purchase order can not be cancelled"
msgstr ""
-#: templates/js/translated/purchase_order.js:520
-#: templates/js/translated/return_order.js:149
+#: templates/js/translated/purchase_order.js:531
+#: templates/js/translated/return_order.js:161
msgid "After placing this order, line items will no longer be editable."
msgstr ""
-#: templates/js/translated/purchase_order.js:525
+#: templates/js/translated/purchase_order.js:536
msgid "Issue Purchase Order"
msgstr ""
-#: templates/js/translated/purchase_order.js:617
+#: templates/js/translated/purchase_order.js:628
msgid "At least one purchaseable part must be selected"
msgstr ""
-#: templates/js/translated/purchase_order.js:642
+#: templates/js/translated/purchase_order.js:653
msgid "Quantity to order"
msgstr ""
-#: templates/js/translated/purchase_order.js:651
+#: templates/js/translated/purchase_order.js:662
msgid "New supplier part"
msgstr ""
-#: templates/js/translated/purchase_order.js:669
+#: templates/js/translated/purchase_order.js:680
msgid "New purchase order"
msgstr ""
-#: templates/js/translated/purchase_order.js:701
+#: templates/js/translated/purchase_order.js:712
msgid "Add to purchase order"
msgstr ""
-#: templates/js/translated/purchase_order.js:845
+#: templates/js/translated/purchase_order.js:860
msgid "No matching supplier parts"
msgstr ""
-#: templates/js/translated/purchase_order.js:864
+#: templates/js/translated/purchase_order.js:879
msgid "No matching purchase orders"
msgstr ""
-#: templates/js/translated/purchase_order.js:1043
+#: templates/js/translated/purchase_order.js:1058
msgid "Select Line Items"
msgstr ""
-#: templates/js/translated/purchase_order.js:1044
-#: templates/js/translated/return_order.js:480
+#: templates/js/translated/purchase_order.js:1059
+#: templates/js/translated/return_order.js:492
msgid "At least one line item must be selected"
msgstr ""
-#: templates/js/translated/purchase_order.js:1074
+#: templates/js/translated/purchase_order.js:1089
msgid "Received Quantity"
msgstr ""
-#: templates/js/translated/purchase_order.js:1085
+#: templates/js/translated/purchase_order.js:1100
msgid "Quantity to receive"
msgstr ""
-#: templates/js/translated/purchase_order.js:1161
+#: templates/js/translated/purchase_order.js:1176
msgid "Stock Status"
msgstr ""
-#: templates/js/translated/purchase_order.js:1175
+#: templates/js/translated/purchase_order.js:1190
msgid "Add barcode"
msgstr ""
-#: templates/js/translated/purchase_order.js:1176
+#: templates/js/translated/purchase_order.js:1191
msgid "Remove barcode"
msgstr ""
-#: templates/js/translated/purchase_order.js:1179
+#: templates/js/translated/purchase_order.js:1194
msgid "Specify location"
msgstr ""
-#: templates/js/translated/purchase_order.js:1187
+#: templates/js/translated/purchase_order.js:1202
msgid "Add batch code"
msgstr ""
-#: templates/js/translated/purchase_order.js:1198
+#: templates/js/translated/purchase_order.js:1213
msgid "Add serial numbers"
msgstr ""
-#: templates/js/translated/purchase_order.js:1250
+#: templates/js/translated/purchase_order.js:1265
msgid "Serials"
msgstr ""
-#: templates/js/translated/purchase_order.js:1275
+#: templates/js/translated/purchase_order.js:1290
msgid "Order Code"
msgstr ""
-#: templates/js/translated/purchase_order.js:1277
+#: templates/js/translated/purchase_order.js:1292
msgid "Quantity to Receive"
msgstr ""
-#: templates/js/translated/purchase_order.js:1299
-#: templates/js/translated/return_order.js:545
+#: templates/js/translated/purchase_order.js:1314
+#: templates/js/translated/return_order.js:557
msgid "Confirm receipt of items"
msgstr ""
-#: templates/js/translated/purchase_order.js:1300
+#: templates/js/translated/purchase_order.js:1315
msgid "Receive Purchase Order Items"
msgstr ""
-#: templates/js/translated/purchase_order.js:1368
+#: templates/js/translated/purchase_order.js:1383
msgid "Scan Item Barcode"
msgstr ""
-#: templates/js/translated/purchase_order.js:1369
+#: templates/js/translated/purchase_order.js:1384
msgid "Scan barcode on incoming item (must not match any existing stock items)"
msgstr ""
-#: templates/js/translated/purchase_order.js:1383
+#: templates/js/translated/purchase_order.js:1398
msgid "Invalid barcode data"
msgstr ""
-#: templates/js/translated/purchase_order.js:1645
-#: templates/js/translated/return_order.js:274
-#: templates/js/translated/sales_order.js:762
-#: templates/js/translated/sales_order.js:986
+#: templates/js/translated/purchase_order.js:1660
+#: templates/js/translated/return_order.js:286
+#: templates/js/translated/sales_order.js:774
+#: templates/js/translated/sales_order.js:998
msgid "Order is overdue"
msgstr ""
-#: templates/js/translated/purchase_order.js:1707
-#: templates/js/translated/return_order.js:342
-#: templates/js/translated/sales_order.js:839
-#: templates/js/translated/sales_order.js:999
+#: templates/js/translated/purchase_order.js:1722
+#: templates/js/translated/return_order.js:354
+#: templates/js/translated/sales_order.js:851
+#: templates/js/translated/sales_order.js:1011
msgid "Items"
msgstr ""
-#: templates/js/translated/purchase_order.js:1806
+#: templates/js/translated/purchase_order.js:1821
msgid "All selected Line items will be deleted"
msgstr ""
-#: templates/js/translated/purchase_order.js:1824
+#: templates/js/translated/purchase_order.js:1839
msgid "Delete selected Line items?"
msgstr ""
-#: templates/js/translated/purchase_order.js:1884
-#: templates/js/translated/sales_order.js:2047
+#: templates/js/translated/purchase_order.js:1894
+#: templates/js/translated/sales_order.js:2059
msgid "Duplicate Line Item"
msgstr ""
-#: templates/js/translated/purchase_order.js:1899
-#: templates/js/translated/return_order.js:464
-#: templates/js/translated/return_order.js:653
-#: templates/js/translated/sales_order.js:2060
+#: templates/js/translated/purchase_order.js:1909
+#: templates/js/translated/return_order.js:476
+#: templates/js/translated/return_order.js:665
+#: templates/js/translated/sales_order.js:2072
msgid "Edit Line Item"
msgstr ""
-#: templates/js/translated/purchase_order.js:1910
-#: templates/js/translated/return_order.js:666
-#: templates/js/translated/sales_order.js:2071
+#: templates/js/translated/purchase_order.js:1920
+#: templates/js/translated/return_order.js:678
+#: templates/js/translated/sales_order.js:2083
msgid "Delete Line Item"
msgstr ""
-#: templates/js/translated/purchase_order.js:2192
-#: templates/js/translated/sales_order.js:2001
+#: templates/js/translated/purchase_order.js:2202
+#: templates/js/translated/sales_order.js:2013
msgid "Duplicate line item"
msgstr ""
-#: templates/js/translated/purchase_order.js:2193
-#: templates/js/translated/return_order.js:785
-#: templates/js/translated/sales_order.js:2002
+#: templates/js/translated/purchase_order.js:2203
+#: templates/js/translated/return_order.js:797
+#: templates/js/translated/sales_order.js:2014
msgid "Edit line item"
msgstr ""
-#: templates/js/translated/purchase_order.js:2194
-#: templates/js/translated/return_order.js:789
-#: templates/js/translated/sales_order.js:2008
+#: templates/js/translated/purchase_order.js:2204
+#: templates/js/translated/return_order.js:801
+#: templates/js/translated/sales_order.js:2020
msgid "Delete line item"
msgstr ""
@@ -11424,941 +11553,973 @@ msgstr ""
msgid "Add Customer"
msgstr ""
-#: templates/js/translated/return_order.js:119
+#: templates/js/translated/return_order.js:131
msgid "Create Return Order"
msgstr ""
-#: templates/js/translated/return_order.js:134
+#: templates/js/translated/return_order.js:146
msgid "Edit Return Order"
msgstr ""
-#: templates/js/translated/return_order.js:154
+#: templates/js/translated/return_order.js:166
msgid "Issue Return Order"
msgstr ""
-#: templates/js/translated/return_order.js:171
+#: templates/js/translated/return_order.js:183
msgid "Are you sure you wish to cancel this Return Order?"
msgstr ""
-#: templates/js/translated/return_order.js:178
+#: templates/js/translated/return_order.js:190
msgid "Cancel Return Order"
msgstr ""
-#: templates/js/translated/return_order.js:203
+#: templates/js/translated/return_order.js:215
msgid "Complete Return Order"
msgstr ""
-#: templates/js/translated/return_order.js:251
+#: templates/js/translated/return_order.js:263
msgid "No return orders found"
msgstr ""
-#: templates/js/translated/return_order.js:288
-#: templates/js/translated/sales_order.js:776
+#: templates/js/translated/return_order.js:300
+#: templates/js/translated/sales_order.js:788
msgid "Invalid Customer"
msgstr ""
-#: templates/js/translated/return_order.js:546
+#: templates/js/translated/return_order.js:558
msgid "Receive Return Order Items"
msgstr ""
-#: templates/js/translated/return_order.js:677
-#: templates/js/translated/sales_order.js:2207
+#: templates/js/translated/return_order.js:689
+#: templates/js/translated/sales_order.js:2219
msgid "No matching line items"
msgstr ""
-#: templates/js/translated/return_order.js:782
+#: templates/js/translated/return_order.js:794
msgid "Mark item as received"
msgstr ""
-#: templates/js/translated/sales_order.js:146
+#: templates/js/translated/sales_order.js:158
msgid "Create Sales Order"
msgstr ""
-#: templates/js/translated/sales_order.js:161
+#: templates/js/translated/sales_order.js:173
msgid "Edit Sales Order"
msgstr ""
-#: templates/js/translated/sales_order.js:276
+#: templates/js/translated/sales_order.js:288
msgid "No stock items have been allocated to this shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:281
+#: templates/js/translated/sales_order.js:293
msgid "The following stock items will be shipped"
msgstr ""
-#: templates/js/translated/sales_order.js:321
+#: templates/js/translated/sales_order.js:333
msgid "Complete Shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:345
+#: templates/js/translated/sales_order.js:357
msgid "Confirm Shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:401
+#: templates/js/translated/sales_order.js:413
msgid "No pending shipments found"
msgstr ""
-#: templates/js/translated/sales_order.js:405
+#: templates/js/translated/sales_order.js:417
msgid "No stock items have been allocated to pending shipments"
msgstr ""
-#: templates/js/translated/sales_order.js:415
+#: templates/js/translated/sales_order.js:427
msgid "Complete Shipments"
msgstr ""
-#: templates/js/translated/sales_order.js:437
+#: templates/js/translated/sales_order.js:449
msgid "Skip"
msgstr ""
-#: templates/js/translated/sales_order.js:498
+#: templates/js/translated/sales_order.js:510
msgid "This order has line items which have not been completed."
msgstr ""
-#: templates/js/translated/sales_order.js:520
+#: templates/js/translated/sales_order.js:532
msgid "Issue this Sales Order?"
msgstr ""
-#: templates/js/translated/sales_order.js:525
+#: templates/js/translated/sales_order.js:537
msgid "Issue Sales Order"
msgstr ""
-#: templates/js/translated/sales_order.js:544
+#: templates/js/translated/sales_order.js:556
msgid "Cancel Sales Order"
msgstr ""
-#: templates/js/translated/sales_order.js:549
+#: templates/js/translated/sales_order.js:561
msgid "Cancelling this order means that the order will no longer be editable."
msgstr ""
-#: templates/js/translated/sales_order.js:603
+#: templates/js/translated/sales_order.js:615
msgid "Create New Shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:713
+#: templates/js/translated/sales_order.js:725
msgid "No sales orders found"
msgstr ""
-#: templates/js/translated/sales_order.js:896
+#: templates/js/translated/sales_order.js:908
msgid "Edit shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:899
+#: templates/js/translated/sales_order.js:911
msgid "Complete shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:904
+#: templates/js/translated/sales_order.js:916
msgid "Delete shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:921
+#: templates/js/translated/sales_order.js:933
msgid "Edit Shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:936
+#: templates/js/translated/sales_order.js:948
msgid "Delete Shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:969
+#: templates/js/translated/sales_order.js:981
msgid "No matching shipments found"
msgstr ""
-#: templates/js/translated/sales_order.js:994
+#: templates/js/translated/sales_order.js:1006
msgid "Shipment Reference"
msgstr ""
-#: templates/js/translated/sales_order.js:1018
-#: templates/js/translated/sales_order.js:1515
+#: templates/js/translated/sales_order.js:1030
+#: templates/js/translated/sales_order.js:1527
msgid "Not shipped"
msgstr ""
-#: templates/js/translated/sales_order.js:1036
+#: templates/js/translated/sales_order.js:1048
msgid "Tracking"
msgstr ""
-#: templates/js/translated/sales_order.js:1040
+#: templates/js/translated/sales_order.js:1052
msgid "Invoice"
msgstr ""
-#: templates/js/translated/sales_order.js:1207
+#: templates/js/translated/sales_order.js:1219
msgid "Add Shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:1258
+#: templates/js/translated/sales_order.js:1270
msgid "Confirm stock allocation"
msgstr ""
-#: templates/js/translated/sales_order.js:1259
+#: templates/js/translated/sales_order.js:1271
msgid "Allocate Stock Items to Sales Order"
msgstr ""
-#: templates/js/translated/sales_order.js:1463
+#: templates/js/translated/sales_order.js:1475
msgid "No sales order allocations found"
msgstr ""
-#: templates/js/translated/sales_order.js:1555
+#: templates/js/translated/sales_order.js:1567
msgid "Edit Stock Allocation"
msgstr ""
-#: templates/js/translated/sales_order.js:1569
+#: templates/js/translated/sales_order.js:1581
msgid "Confirm Delete Operation"
msgstr ""
-#: templates/js/translated/sales_order.js:1570
+#: templates/js/translated/sales_order.js:1582
msgid "Delete Stock Allocation"
msgstr ""
-#: templates/js/translated/sales_order.js:1609
-#: templates/js/translated/sales_order.js:1696
-#: templates/js/translated/stock.js:1688
+#: templates/js/translated/sales_order.js:1621
+#: templates/js/translated/sales_order.js:1708
+#: templates/js/translated/stock.js:1687
msgid "Shipped to customer"
msgstr ""
-#: templates/js/translated/sales_order.js:1617
-#: templates/js/translated/sales_order.js:1705
+#: templates/js/translated/sales_order.js:1629
+#: templates/js/translated/sales_order.js:1717
msgid "Stock location not specified"
msgstr ""
-#: templates/js/translated/sales_order.js:1985
+#: templates/js/translated/sales_order.js:1997
msgid "Allocate serial numbers"
msgstr ""
-#: templates/js/translated/sales_order.js:1989
+#: templates/js/translated/sales_order.js:2001
msgid "Purchase stock"
msgstr ""
-#: templates/js/translated/sales_order.js:1998
-#: templates/js/translated/sales_order.js:2185
+#: templates/js/translated/sales_order.js:2010
+#: templates/js/translated/sales_order.js:2197
msgid "Calculate price"
msgstr ""
-#: templates/js/translated/sales_order.js:2012
+#: templates/js/translated/sales_order.js:2024
msgid "Cannot be deleted as items have been shipped"
msgstr ""
-#: templates/js/translated/sales_order.js:2015
+#: templates/js/translated/sales_order.js:2027
msgid "Cannot be deleted as items have been allocated"
msgstr ""
-#: templates/js/translated/sales_order.js:2086
+#: templates/js/translated/sales_order.js:2098
msgid "Allocate Serial Numbers"
msgstr ""
-#: templates/js/translated/sales_order.js:2193
+#: templates/js/translated/sales_order.js:2205
msgid "Update Unit Price"
msgstr ""
-#: templates/js/translated/search.js:312
+#: templates/js/translated/search.js:270
msgid "No results"
msgstr ""
-#: templates/js/translated/search.js:334 templates/search.html:25
+#: templates/js/translated/search.js:292 templates/search.html:25
msgid "Enter search query"
msgstr ""
-#: templates/js/translated/search.js:384
+#: templates/js/translated/search.js:342
msgid "result"
msgstr ""
-#: templates/js/translated/search.js:384
+#: templates/js/translated/search.js:342
msgid "results"
msgstr ""
-#: templates/js/translated/search.js:394
+#: templates/js/translated/search.js:352
msgid "Minimize results"
msgstr ""
-#: templates/js/translated/search.js:397
+#: templates/js/translated/search.js:355
msgid "Remove results"
msgstr ""
-#: templates/js/translated/stock.js:98
+#: templates/js/translated/stock.js:97
msgid "Serialize Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:129
+#: templates/js/translated/stock.js:128
msgid "Confirm Stock Serialization"
msgstr ""
-#: templates/js/translated/stock.js:138
+#: templates/js/translated/stock.js:137
msgid "Parent stock location"
msgstr ""
-#: templates/js/translated/stock.js:173
+#: templates/js/translated/stock.js:172
msgid "Edit Stock Location"
msgstr ""
-#: templates/js/translated/stock.js:188
+#: templates/js/translated/stock.js:187
msgid "New Stock Location"
msgstr ""
-#: templates/js/translated/stock.js:190
+#: templates/js/translated/stock.js:189
msgid "Create another location after this one"
msgstr ""
-#: templates/js/translated/stock.js:191
+#: templates/js/translated/stock.js:190
msgid "Stock location created"
msgstr ""
-#: templates/js/translated/stock.js:205
+#: templates/js/translated/stock.js:204
msgid "Are you sure you want to delete this stock location?"
msgstr ""
-#: templates/js/translated/stock.js:212
+#: templates/js/translated/stock.js:211
msgid "Move to parent stock location"
msgstr ""
-#: templates/js/translated/stock.js:221
+#: templates/js/translated/stock.js:220
msgid "Delete Stock Location"
msgstr ""
-#: templates/js/translated/stock.js:225
+#: templates/js/translated/stock.js:224
msgid "Action for stock items in this stock location"
msgstr ""
-#: templates/js/translated/stock.js:230
+#: templates/js/translated/stock.js:229
msgid "Action for sub-locations"
msgstr ""
-#: templates/js/translated/stock.js:284
+#: templates/js/translated/stock.js:283
msgid "This part cannot be serialized"
msgstr ""
-#: templates/js/translated/stock.js:320
+#: templates/js/translated/stock.js:319
msgid "Add given quantity as packs instead of individual items"
msgstr ""
-#: templates/js/translated/stock.js:329
+#: templates/js/translated/stock.js:328
msgid "Enter initial quantity for this stock item"
msgstr ""
-#: templates/js/translated/stock.js:335
+#: templates/js/translated/stock.js:334
msgid "Enter serial numbers for new stock (or leave blank)"
msgstr ""
-#: templates/js/translated/stock.js:406
+#: templates/js/translated/stock.js:405
msgid "Stock item duplicated"
msgstr ""
-#: templates/js/translated/stock.js:426
+#: templates/js/translated/stock.js:425
msgid "Duplicate Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:442
+#: templates/js/translated/stock.js:441
msgid "Are you sure you want to delete this stock item?"
msgstr ""
-#: templates/js/translated/stock.js:447
+#: templates/js/translated/stock.js:446
msgid "Delete Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:468
+#: templates/js/translated/stock.js:467
msgid "Edit Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:510
+#: templates/js/translated/stock.js:509
msgid "Create another item after this one"
msgstr ""
-#: templates/js/translated/stock.js:522
+#: templates/js/translated/stock.js:521
msgid "Created new stock item"
msgstr ""
-#: templates/js/translated/stock.js:535
+#: templates/js/translated/stock.js:534
msgid "Created multiple stock items"
msgstr ""
-#: templates/js/translated/stock.js:560
+#: templates/js/translated/stock.js:559
msgid "Find Serial Number"
msgstr ""
-#: templates/js/translated/stock.js:564 templates/js/translated/stock.js:565
+#: templates/js/translated/stock.js:563 templates/js/translated/stock.js:564
msgid "Enter serial number"
msgstr ""
-#: templates/js/translated/stock.js:581
+#: templates/js/translated/stock.js:580
msgid "Enter a serial number"
msgstr ""
-#: templates/js/translated/stock.js:601
+#: templates/js/translated/stock.js:600
msgid "No matching serial number"
msgstr ""
-#: templates/js/translated/stock.js:610
+#: templates/js/translated/stock.js:609
msgid "More than one matching result found"
msgstr ""
-#: templates/js/translated/stock.js:718
+#: templates/js/translated/stock.js:717
msgid "Confirm stock assignment"
msgstr ""
-#: templates/js/translated/stock.js:719
+#: templates/js/translated/stock.js:718
msgid "Assign Stock to Customer"
msgstr ""
-#: templates/js/translated/stock.js:796
+#: templates/js/translated/stock.js:795
msgid "Warning: Merge operation cannot be reversed"
msgstr ""
-#: templates/js/translated/stock.js:797
+#: templates/js/translated/stock.js:796
msgid "Some information will be lost when merging stock items"
msgstr ""
-#: templates/js/translated/stock.js:799
+#: templates/js/translated/stock.js:798
msgid "Stock transaction history will be deleted for merged items"
msgstr ""
-#: templates/js/translated/stock.js:800
+#: templates/js/translated/stock.js:799
msgid "Supplier part information will be deleted for merged items"
msgstr ""
-#: templates/js/translated/stock.js:891
+#: templates/js/translated/stock.js:890
msgid "Confirm stock item merge"
msgstr ""
-#: templates/js/translated/stock.js:892
+#: templates/js/translated/stock.js:891
msgid "Merge Stock Items"
msgstr ""
-#: templates/js/translated/stock.js:987
+#: templates/js/translated/stock.js:986
msgid "Transfer Stock"
msgstr ""
-#: templates/js/translated/stock.js:988
+#: templates/js/translated/stock.js:987
msgid "Move"
msgstr ""
-#: templates/js/translated/stock.js:994
+#: templates/js/translated/stock.js:993
msgid "Count Stock"
msgstr ""
-#: templates/js/translated/stock.js:995
+#: templates/js/translated/stock.js:994
msgid "Count"
msgstr ""
-#: templates/js/translated/stock.js:999
+#: templates/js/translated/stock.js:998
msgid "Remove Stock"
msgstr ""
-#: templates/js/translated/stock.js:1000
+#: templates/js/translated/stock.js:999
msgid "Take"
msgstr ""
-#: templates/js/translated/stock.js:1004
+#: templates/js/translated/stock.js:1003
msgid "Add Stock"
msgstr ""
-#: templates/js/translated/stock.js:1005 users/models.py:243
+#: templates/js/translated/stock.js:1004 users/models.py:249
msgid "Add"
msgstr ""
-#: templates/js/translated/stock.js:1009
+#: templates/js/translated/stock.js:1008
msgid "Delete Stock"
msgstr ""
-#: templates/js/translated/stock.js:1106
+#: templates/js/translated/stock.js:1105
msgid "Quantity cannot be adjusted for serialized stock"
msgstr ""
-#: templates/js/translated/stock.js:1106
+#: templates/js/translated/stock.js:1105
msgid "Specify stock quantity"
msgstr ""
-#: templates/js/translated/stock.js:1140
+#: templates/js/translated/stock.js:1139 templates/js/translated/stock.js:3151
msgid "Select Stock Items"
msgstr ""
-#: templates/js/translated/stock.js:1141
-msgid "You must select at least one available stock item"
+#: templates/js/translated/stock.js:1140
+msgid "Select at least one available stock item"
msgstr ""
-#: templates/js/translated/stock.js:1168
+#: templates/js/translated/stock.js:1167
msgid "Confirm stock adjustment"
msgstr ""
-#: templates/js/translated/stock.js:1304
+#: templates/js/translated/stock.js:1303
msgid "PASS"
msgstr ""
-#: templates/js/translated/stock.js:1306
+#: templates/js/translated/stock.js:1305
msgid "FAIL"
msgstr ""
-#: templates/js/translated/stock.js:1311
+#: templates/js/translated/stock.js:1310
msgid "NO RESULT"
msgstr ""
-#: templates/js/translated/stock.js:1373
+#: templates/js/translated/stock.js:1372
msgid "Pass test"
msgstr ""
-#: templates/js/translated/stock.js:1376
+#: templates/js/translated/stock.js:1375
msgid "Add test result"
msgstr ""
-#: templates/js/translated/stock.js:1400
+#: templates/js/translated/stock.js:1399
msgid "No test results found"
msgstr ""
-#: templates/js/translated/stock.js:1464
+#: templates/js/translated/stock.js:1463
msgid "Test Date"
msgstr ""
-#: templates/js/translated/stock.js:1626
+#: templates/js/translated/stock.js:1625
msgid "Edit Test Result"
msgstr ""
-#: templates/js/translated/stock.js:1648
+#: templates/js/translated/stock.js:1647
msgid "Delete Test Result"
msgstr ""
-#: templates/js/translated/stock.js:1680
+#: templates/js/translated/stock.js:1679
msgid "In production"
msgstr ""
-#: templates/js/translated/stock.js:1684
+#: templates/js/translated/stock.js:1683
msgid "Installed in Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:1692
+#: templates/js/translated/stock.js:1691
msgid "Assigned to Sales Order"
msgstr ""
-#: templates/js/translated/stock.js:1698
+#: templates/js/translated/stock.js:1697
msgid "No stock location set"
msgstr ""
-#: templates/js/translated/stock.js:1746
+#: templates/js/translated/stock.js:1753
+msgid "Change stock status"
+msgstr ""
+
+#: templates/js/translated/stock.js:1762
+msgid "Merge stock"
+msgstr ""
+
+#: templates/js/translated/stock.js:1811
+msgid "Delete stock"
+msgstr ""
+
+#: templates/js/translated/stock.js:1866
msgid "stock items"
msgstr ""
-#: templates/js/translated/stock.js:1850
+#: templates/js/translated/stock.js:1871
+msgid "Scan to location"
+msgstr ""
+
+#: templates/js/translated/stock.js:1882
+msgid "Stock Actions"
+msgstr ""
+
+#: templates/js/translated/stock.js:1929
+msgid "Load installed items"
+msgstr ""
+
+#: templates/js/translated/stock.js:2007
msgid "Stock item is in production"
msgstr ""
-#: templates/js/translated/stock.js:1855
+#: templates/js/translated/stock.js:2012
msgid "Stock item assigned to sales order"
msgstr ""
-#: templates/js/translated/stock.js:1858
+#: templates/js/translated/stock.js:2015
msgid "Stock item assigned to customer"
msgstr ""
-#: templates/js/translated/stock.js:1861
+#: templates/js/translated/stock.js:2018
msgid "Serialized stock item has been allocated"
msgstr ""
-#: templates/js/translated/stock.js:1863
+#: templates/js/translated/stock.js:2020
msgid "Stock item has been fully allocated"
msgstr ""
-#: templates/js/translated/stock.js:1865
+#: templates/js/translated/stock.js:2022
msgid "Stock item has been partially allocated"
msgstr ""
-#: templates/js/translated/stock.js:1868
+#: templates/js/translated/stock.js:2025
msgid "Stock item has been installed in another item"
msgstr ""
-#: templates/js/translated/stock.js:1870
+#: templates/js/translated/stock.js:2027
msgid "Stock item has been consumed by a build order"
msgstr ""
-#: templates/js/translated/stock.js:1874
+#: templates/js/translated/stock.js:2031
msgid "Stock item has expired"
msgstr ""
-#: templates/js/translated/stock.js:1876
+#: templates/js/translated/stock.js:2033
msgid "Stock item will expire soon"
msgstr ""
-#: templates/js/translated/stock.js:1881
+#: templates/js/translated/stock.js:2038
msgid "Stock item has been rejected"
msgstr ""
-#: templates/js/translated/stock.js:1883
+#: templates/js/translated/stock.js:2040
msgid "Stock item is lost"
msgstr ""
-#: templates/js/translated/stock.js:1885
+#: templates/js/translated/stock.js:2042
msgid "Stock item is destroyed"
msgstr ""
-#: templates/js/translated/stock.js:1889
-#: templates/js/translated/table_filters.js:296
+#: templates/js/translated/stock.js:2046
+#: templates/js/translated/table_filters.js:302
msgid "Depleted"
msgstr ""
-#: templates/js/translated/stock.js:2031
+#: templates/js/translated/stock.js:2188
msgid "Supplier part not specified"
msgstr ""
-#: templates/js/translated/stock.js:2078
+#: templates/js/translated/stock.js:2235
msgid "Stock Value"
msgstr ""
-#: templates/js/translated/stock.js:2170
+#: templates/js/translated/stock.js:2358
msgid "No stock items matching query"
msgstr ""
-#: templates/js/translated/stock.js:2319
+#: templates/js/translated/stock.js:2450
msgid "stock locations"
msgstr ""
-#: templates/js/translated/stock.js:2476
+#: templates/js/translated/stock.js:2607
msgid "Load Subloactions"
msgstr ""
-#: templates/js/translated/stock.js:2583
+#: templates/js/translated/stock.js:2714
msgid "Details"
msgstr ""
-#: templates/js/translated/stock.js:2587
+#: templates/js/translated/stock.js:2718
msgid "No changes"
msgstr ""
-#: templates/js/translated/stock.js:2599
+#: templates/js/translated/stock.js:2730
msgid "Part information unavailable"
msgstr ""
-#: templates/js/translated/stock.js:2621
+#: templates/js/translated/stock.js:2752
msgid "Location no longer exists"
msgstr ""
-#: templates/js/translated/stock.js:2638
+#: templates/js/translated/stock.js:2769
msgid "Build order no longer exists"
msgstr ""
-#: templates/js/translated/stock.js:2653
+#: templates/js/translated/stock.js:2784
msgid "Purchase order no longer exists"
msgstr ""
-#: templates/js/translated/stock.js:2670
+#: templates/js/translated/stock.js:2801
msgid "Sales Order no longer exists"
msgstr ""
-#: templates/js/translated/stock.js:2687
+#: templates/js/translated/stock.js:2818
msgid "Return Order no longer exists"
msgstr ""
-#: templates/js/translated/stock.js:2706
+#: templates/js/translated/stock.js:2837
msgid "Customer no longer exists"
msgstr ""
-#: templates/js/translated/stock.js:2724
+#: templates/js/translated/stock.js:2855
msgid "Stock item no longer exists"
msgstr ""
-#: templates/js/translated/stock.js:2742
+#: templates/js/translated/stock.js:2873
msgid "Added"
msgstr ""
-#: templates/js/translated/stock.js:2750
+#: templates/js/translated/stock.js:2881
msgid "Removed"
msgstr ""
-#: templates/js/translated/stock.js:2826
+#: templates/js/translated/stock.js:2953
msgid "No installed items"
msgstr ""
-#: templates/js/translated/stock.js:2876 templates/js/translated/stock.js:2911
+#: templates/js/translated/stock.js:3003 templates/js/translated/stock.js:3038
msgid "Uninstall Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:2929
+#: templates/js/translated/stock.js:3056
msgid "Select stock item to uninstall"
msgstr ""
-#: templates/js/translated/stock.js:2950
+#: templates/js/translated/stock.js:3077
msgid "Install another stock item into this item"
msgstr ""
-#: templates/js/translated/stock.js:2951
+#: templates/js/translated/stock.js:3078
msgid "Stock items can only be installed if they meet the following criteria"
msgstr ""
-#: templates/js/translated/stock.js:2953
+#: templates/js/translated/stock.js:3080
msgid "The Stock Item links to a Part which is the BOM for this Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:2954
+#: templates/js/translated/stock.js:3081
msgid "The Stock Item is currently available in stock"
msgstr ""
-#: templates/js/translated/stock.js:2955
+#: templates/js/translated/stock.js:3082
msgid "The Stock Item is not already installed in another item"
msgstr ""
-#: templates/js/translated/stock.js:2956
+#: templates/js/translated/stock.js:3083
msgid "The Stock Item is tracked by either a batch code or serial number"
msgstr ""
-#: templates/js/translated/stock.js:2969
+#: templates/js/translated/stock.js:3096
msgid "Select part to install"
msgstr ""
+#: templates/js/translated/stock.js:3152
+msgid "Select one or more stock items"
+msgstr ""
+
+#: templates/js/translated/stock.js:3165
+msgid "Selected stock items"
+msgstr ""
+
+#: templates/js/translated/stock.js:3169
+msgid "Change Stock Status"
+msgstr ""
+
#: templates/js/translated/table_filters.js:50
msgid "Has project code"
msgstr ""
-#: templates/js/translated/table_filters.js:59
-#: templates/js/translated/table_filters.js:518
-#: templates/js/translated/table_filters.js:530
-#: templates/js/translated/table_filters.js:571
+#: templates/js/translated/table_filters.js:65
+#: templates/js/translated/table_filters.js:540
+#: templates/js/translated/table_filters.js:552
+#: templates/js/translated/table_filters.js:593
msgid "Order status"
msgstr ""
-#: templates/js/translated/table_filters.js:64
-#: templates/js/translated/table_filters.js:535
-#: templates/js/translated/table_filters.js:561
-#: templates/js/translated/table_filters.js:576
+#: templates/js/translated/table_filters.js:70
+#: templates/js/translated/table_filters.js:557
+#: templates/js/translated/table_filters.js:583
+#: templates/js/translated/table_filters.js:598
msgid "Outstanding"
msgstr ""
-#: templates/js/translated/table_filters.js:72
-#: templates/js/translated/table_filters.js:458
-#: templates/js/translated/table_filters.js:543
-#: templates/js/translated/table_filters.js:584
+#: templates/js/translated/table_filters.js:78
+#: templates/js/translated/table_filters.js:464
+#: templates/js/translated/table_filters.js:565
+#: templates/js/translated/table_filters.js:606
msgid "Assigned to me"
msgstr ""
-#: templates/js/translated/table_filters.js:128
+#: templates/js/translated/table_filters.js:134
msgid "Trackable Part"
msgstr ""
-#: templates/js/translated/table_filters.js:132
+#: templates/js/translated/table_filters.js:138
msgid "Assembled Part"
msgstr ""
-#: templates/js/translated/table_filters.js:136
+#: templates/js/translated/table_filters.js:142
msgid "Has Available Stock"
msgstr ""
-#: templates/js/translated/table_filters.js:152
+#: templates/js/translated/table_filters.js:158
msgid "Allow Variant Stock"
msgstr ""
-#: templates/js/translated/table_filters.js:164
-#: templates/js/translated/table_filters.js:692
+#: templates/js/translated/table_filters.js:170
+#: templates/js/translated/table_filters.js:714
msgid "Has Pricing"
msgstr ""
-#: templates/js/translated/table_filters.js:204
-#: templates/js/translated/table_filters.js:291
+#: templates/js/translated/table_filters.js:210
+#: templates/js/translated/table_filters.js:297
msgid "Include sublocations"
msgstr ""
-#: templates/js/translated/table_filters.js:205
+#: templates/js/translated/table_filters.js:211
msgid "Include locations"
msgstr ""
-#: templates/js/translated/table_filters.js:224
-#: templates/js/translated/table_filters.js:225
-#: templates/js/translated/table_filters.js:624
+#: templates/js/translated/table_filters.js:230
+#: templates/js/translated/table_filters.js:231
+#: templates/js/translated/table_filters.js:646
msgid "Include subcategories"
msgstr ""
-#: templates/js/translated/table_filters.js:233
-#: templates/js/translated/table_filters.js:672
+#: templates/js/translated/table_filters.js:239
+#: templates/js/translated/table_filters.js:694
msgid "Subscribed"
msgstr ""
-#: templates/js/translated/table_filters.js:244
-#: templates/js/translated/table_filters.js:326
+#: templates/js/translated/table_filters.js:250
+#: templates/js/translated/table_filters.js:332
msgid "Is Serialized"
msgstr ""
-#: templates/js/translated/table_filters.js:247
-#: templates/js/translated/table_filters.js:333
+#: templates/js/translated/table_filters.js:253
+#: templates/js/translated/table_filters.js:339
msgid "Serial number GTE"
msgstr ""
-#: templates/js/translated/table_filters.js:248
-#: templates/js/translated/table_filters.js:334
+#: templates/js/translated/table_filters.js:254
+#: templates/js/translated/table_filters.js:340
msgid "Serial number greater than or equal to"
msgstr ""
-#: templates/js/translated/table_filters.js:251
-#: templates/js/translated/table_filters.js:337
+#: templates/js/translated/table_filters.js:257
+#: templates/js/translated/table_filters.js:343
msgid "Serial number LTE"
msgstr ""
-#: templates/js/translated/table_filters.js:252
-#: templates/js/translated/table_filters.js:338
+#: templates/js/translated/table_filters.js:258
+#: templates/js/translated/table_filters.js:344
msgid "Serial number less than or equal to"
msgstr ""
-#: templates/js/translated/table_filters.js:255
-#: templates/js/translated/table_filters.js:256
-#: templates/js/translated/table_filters.js:329
-#: templates/js/translated/table_filters.js:330
+#: templates/js/translated/table_filters.js:261
+#: templates/js/translated/table_filters.js:262
+#: templates/js/translated/table_filters.js:335
+#: templates/js/translated/table_filters.js:336
msgid "Serial number"
msgstr ""
-#: templates/js/translated/table_filters.js:260
-#: templates/js/translated/table_filters.js:351
+#: templates/js/translated/table_filters.js:266
+#: templates/js/translated/table_filters.js:357
msgid "Batch code"
msgstr ""
-#: templates/js/translated/table_filters.js:271
-#: templates/js/translated/table_filters.js:613
+#: templates/js/translated/table_filters.js:277
+#: templates/js/translated/table_filters.js:635
msgid "Active parts"
msgstr ""
-#: templates/js/translated/table_filters.js:272
+#: templates/js/translated/table_filters.js:278
msgid "Show stock for active parts"
msgstr ""
-#: templates/js/translated/table_filters.js:277
+#: templates/js/translated/table_filters.js:283
msgid "Part is an assembly"
msgstr ""
-#: templates/js/translated/table_filters.js:281
+#: templates/js/translated/table_filters.js:287
msgid "Is allocated"
msgstr ""
-#: templates/js/translated/table_filters.js:282
+#: templates/js/translated/table_filters.js:288
msgid "Item has been allocated"
msgstr ""
-#: templates/js/translated/table_filters.js:287
+#: templates/js/translated/table_filters.js:293
msgid "Stock is available for use"
msgstr ""
-#: templates/js/translated/table_filters.js:292
+#: templates/js/translated/table_filters.js:298
msgid "Include stock in sublocations"
msgstr ""
-#: templates/js/translated/table_filters.js:297
+#: templates/js/translated/table_filters.js:303
msgid "Show stock items which are depleted"
msgstr ""
-#: templates/js/translated/table_filters.js:302
+#: templates/js/translated/table_filters.js:308
msgid "Show items which are in stock"
msgstr ""
-#: templates/js/translated/table_filters.js:306
+#: templates/js/translated/table_filters.js:312
msgid "In Production"
msgstr ""
-#: templates/js/translated/table_filters.js:307
+#: templates/js/translated/table_filters.js:313
msgid "Show items which are in production"
msgstr ""
-#: templates/js/translated/table_filters.js:311
+#: templates/js/translated/table_filters.js:317
msgid "Include Variants"
msgstr ""
-#: templates/js/translated/table_filters.js:312
+#: templates/js/translated/table_filters.js:318
msgid "Include stock items for variant parts"
msgstr ""
-#: templates/js/translated/table_filters.js:316
+#: templates/js/translated/table_filters.js:322
msgid "Installed"
msgstr ""
-#: templates/js/translated/table_filters.js:317
+#: templates/js/translated/table_filters.js:323
msgid "Show stock items which are installed in another item"
msgstr ""
-#: templates/js/translated/table_filters.js:322
+#: templates/js/translated/table_filters.js:328
msgid "Show items which have been assigned to a customer"
msgstr ""
-#: templates/js/translated/table_filters.js:342
-#: templates/js/translated/table_filters.js:343
+#: templates/js/translated/table_filters.js:348
+#: templates/js/translated/table_filters.js:349
msgid "Stock status"
msgstr ""
-#: templates/js/translated/table_filters.js:346
+#: templates/js/translated/table_filters.js:352
msgid "Has batch code"
msgstr ""
-#: templates/js/translated/table_filters.js:354
-msgid "Tracked"
-msgstr ""
-
-#: templates/js/translated/table_filters.js:355
+#: templates/js/translated/table_filters.js:361
msgid "Stock item is tracked by either batch code or serial number"
msgstr ""
-#: templates/js/translated/table_filters.js:360
+#: templates/js/translated/table_filters.js:366
msgid "Has purchase price"
msgstr ""
-#: templates/js/translated/table_filters.js:361
+#: templates/js/translated/table_filters.js:367
msgid "Show stock items which have a purchase price set"
msgstr ""
-#: templates/js/translated/table_filters.js:365
+#: templates/js/translated/table_filters.js:371
msgid "Expiry Date before"
msgstr ""
-#: templates/js/translated/table_filters.js:369
+#: templates/js/translated/table_filters.js:375
msgid "Expiry Date after"
msgstr ""
-#: templates/js/translated/table_filters.js:382
+#: templates/js/translated/table_filters.js:388
msgid "Show stock items which have expired"
msgstr ""
-#: templates/js/translated/table_filters.js:388
+#: templates/js/translated/table_filters.js:394
msgid "Show stock which is close to expiring"
msgstr ""
-#: templates/js/translated/table_filters.js:402
+#: templates/js/translated/table_filters.js:408
msgid "Test Passed"
msgstr ""
-#: templates/js/translated/table_filters.js:406
+#: templates/js/translated/table_filters.js:412
msgid "Include Installed Items"
msgstr ""
-#: templates/js/translated/table_filters.js:445
+#: templates/js/translated/table_filters.js:451
msgid "Build status"
msgstr ""
-#: templates/js/translated/table_filters.js:625
+#: templates/js/translated/table_filters.js:647
msgid "Include parts in subcategories"
msgstr ""
-#: templates/js/translated/table_filters.js:630
+#: templates/js/translated/table_filters.js:652
msgid "Show active parts"
msgstr ""
-#: templates/js/translated/table_filters.js:638
+#: templates/js/translated/table_filters.js:660
msgid "Available stock"
msgstr ""
-#: templates/js/translated/table_filters.js:646
-#: templates/js/translated/table_filters.js:742
+#: templates/js/translated/table_filters.js:668
+#: templates/js/translated/table_filters.js:764
msgid "Has Units"
msgstr ""
-#: templates/js/translated/table_filters.js:647
+#: templates/js/translated/table_filters.js:669
msgid "Part has defined units"
msgstr ""
-#: templates/js/translated/table_filters.js:651
+#: templates/js/translated/table_filters.js:673
msgid "Has IPN"
msgstr ""
-#: templates/js/translated/table_filters.js:652
+#: templates/js/translated/table_filters.js:674
msgid "Part has internal part number"
msgstr ""
-#: templates/js/translated/table_filters.js:656
+#: templates/js/translated/table_filters.js:678
msgid "In stock"
msgstr ""
-#: templates/js/translated/table_filters.js:664
+#: templates/js/translated/table_filters.js:686
msgid "Purchasable"
msgstr ""
-#: templates/js/translated/table_filters.js:676
+#: templates/js/translated/table_filters.js:698
msgid "Has stocktake entries"
msgstr ""
-#: templates/js/translated/table_filters.js:738
+#: templates/js/translated/table_filters.js:760
msgid "Has Choices"
msgstr ""
@@ -12390,51 +12551,51 @@ msgstr ""
msgid "Select File Format"
msgstr ""
-#: templates/js/translated/tables.js:561
+#: templates/js/translated/tables.js:537
msgid "Loading data"
msgstr ""
-#: templates/js/translated/tables.js:564
+#: templates/js/translated/tables.js:540
msgid "rows per page"
msgstr ""
-#: templates/js/translated/tables.js:569
+#: templates/js/translated/tables.js:545
msgid "Showing all rows"
msgstr ""
-#: templates/js/translated/tables.js:571
+#: templates/js/translated/tables.js:547
msgid "Showing"
msgstr ""
-#: templates/js/translated/tables.js:571
+#: templates/js/translated/tables.js:547
msgid "to"
msgstr ""
-#: templates/js/translated/tables.js:571
+#: templates/js/translated/tables.js:547
msgid "of"
msgstr ""
-#: templates/js/translated/tables.js:571
+#: templates/js/translated/tables.js:547
msgid "rows"
msgstr ""
-#: templates/js/translated/tables.js:578
+#: templates/js/translated/tables.js:554
msgid "No matching results"
msgstr ""
-#: templates/js/translated/tables.js:581
+#: templates/js/translated/tables.js:557
msgid "Hide/Show pagination"
msgstr ""
-#: templates/js/translated/tables.js:587
+#: templates/js/translated/tables.js:563
msgid "Toggle"
msgstr ""
-#: templates/js/translated/tables.js:590
+#: templates/js/translated/tables.js:566
msgid "Columns"
msgstr ""
-#: templates/js/translated/tables.js:593
+#: templates/js/translated/tables.js:569
msgid "All"
msgstr ""
@@ -12616,50 +12777,6 @@ msgstr ""
msgid "Email settings not configured"
msgstr ""
-#: templates/stock_table.html:17
-msgid "Barcode Actions"
-msgstr ""
-
-#: templates/stock_table.html:28
-msgid "Stock Options"
-msgstr ""
-
-#: templates/stock_table.html:33
-msgid "Add to selected stock items"
-msgstr ""
-
-#: templates/stock_table.html:34
-msgid "Remove from selected stock items"
-msgstr ""
-
-#: templates/stock_table.html:35
-msgid "Stocktake selected stock items"
-msgstr ""
-
-#: templates/stock_table.html:36
-msgid "Move selected stock items"
-msgstr ""
-
-#: templates/stock_table.html:37
-msgid "Merge selected stock items"
-msgstr ""
-
-#: templates/stock_table.html:37
-msgid "Merge stock"
-msgstr ""
-
-#: templates/stock_table.html:38
-msgid "Order selected items"
-msgstr ""
-
-#: templates/stock_table.html:42
-msgid "Delete selected items"
-msgstr ""
-
-#: templates/stock_table.html:42
-msgid "Delete stock"
-msgstr ""
-
#: templates/yesnolabel.html:4
msgid "Yes"
msgstr ""
@@ -12692,35 +12809,35 @@ msgstr ""
msgid "Important dates"
msgstr ""
-#: users/models.py:230
+#: users/models.py:236
msgid "Permission set"
msgstr ""
-#: users/models.py:238
+#: users/models.py:244
msgid "Group"
msgstr ""
-#: users/models.py:241
+#: users/models.py:247
msgid "View"
msgstr ""
-#: users/models.py:241
+#: users/models.py:247
msgid "Permission to view items"
msgstr ""
-#: users/models.py:243
+#: users/models.py:249
msgid "Permission to add items"
msgstr ""
-#: users/models.py:245
+#: users/models.py:251
msgid "Change"
msgstr ""
-#: users/models.py:245
+#: users/models.py:251
msgid "Permissions to edit items"
msgstr ""
-#: users/models.py:247
+#: users/models.py:253
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 4081384811..13aa63076b 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: 2023-06-09 00:32+0000\n"
-"PO-Revision-Date: 2023-06-09 10:27\n"
+"POT-Creation-Date: 2023-06-20 07:01+0000\n"
+"PO-Revision-Date: 2023-06-20 07:06\n"
"Last-Translator: \n"
"Language-Team: Thai\n"
"Language: th_TH\n"
@@ -49,26 +49,26 @@ msgstr ""
msgid "Enter date"
msgstr "ป้อนวันที่"
-#: InvenTree/fields.py:206 InvenTree/models.py:766 build/serializers.py:427
-#: build/serializers.py:506 build/templates/build/sidebar.html:23
-#: company/models.py:597 company/templates/company/sidebar.html:35
-#: order/models.py:1089 order/templates/order/po_sidebar.html:11
+#: InvenTree/fields.py:206 InvenTree/models.py:766 build/serializers.py:435
+#: build/serializers.py:514 build/templates/build/sidebar.html:21
+#: company/models.py:746 company/templates/company/sidebar.html:37
+#: order/models.py:1102 order/templates/order/po_sidebar.html:11
#: order/templates/order/return_order_sidebar.html:9
#: order/templates/order/so_sidebar.html:17 part/admin.py:41
-#: part/models.py:3005 part/templates/part/part_sidebar.html:63
+#: part/models.py:3039 part/templates/part/part_sidebar.html:63
#: report/templates/report/inventree_build_order_base.html:172
#: stock/admin.py:121 stock/models.py:2160 stock/models.py:2268
-#: stock/serializers.py:342 stock/serializers.py:475 stock/serializers.py:556
-#: stock/serializers.py:839 stock/serializers.py:938 stock/serializers.py:1070
-#: stock/templates/stock/stock_sidebar.html:25
-#: templates/js/translated/barcode.js:143 templates/js/translated/bom.js:1224
-#: templates/js/translated/company.js:1294 templates/js/translated/order.js:347
-#: templates/js/translated/part.js:1054
-#: templates/js/translated/purchase_order.js:2168
-#: templates/js/translated/return_order.js:760
-#: templates/js/translated/sales_order.js:1055
-#: templates/js/translated/sales_order.js:1959
-#: templates/js/translated/stock.js:1460 templates/js/translated/stock.js:2164
+#: stock/serializers.py:408 stock/serializers.py:542 stock/serializers.py:623
+#: stock/serializers.py:681 stock/serializers.py:956 stock/serializers.py:1055
+#: stock/serializers.py:1187 stock/templates/stock/stock_sidebar.html:25
+#: templates/js/translated/barcode.js:143 templates/js/translated/bom.js:1244
+#: templates/js/translated/company.js:1715 templates/js/translated/order.js:347
+#: templates/js/translated/part.js:1053
+#: templates/js/translated/purchase_order.js:2178
+#: templates/js/translated/return_order.js:772
+#: templates/js/translated/sales_order.js:1067
+#: templates/js/translated/sales_order.js:1971
+#: templates/js/translated/stock.js:1459 templates/js/translated/stock.js:2321
msgid "Notes"
msgstr "หมายเหตุ"
@@ -81,47 +81,51 @@ msgstr ""
msgid "Provided value does not match required pattern: "
msgstr ""
-#: InvenTree/forms.py:145
+#: InvenTree/forms.py:147
msgid "Enter password"
msgstr "ป้อนรหัสผ่าน"
-#: InvenTree/forms.py:146
+#: InvenTree/forms.py:148
msgid "Enter new password"
msgstr "ป้อนรหัสผ่านใหม่"
-#: InvenTree/forms.py:155
+#: InvenTree/forms.py:157
msgid "Confirm password"
msgstr "ยืนยันรหัสผ่าน"
-#: InvenTree/forms.py:156
+#: InvenTree/forms.py:158
msgid "Confirm new password"
msgstr "ยืนยันรหัสผ่านใหม่"
-#: InvenTree/forms.py:160
+#: InvenTree/forms.py:162
msgid "Old password"
msgstr "รหัสผ่านเดิม"
-#: InvenTree/forms.py:179
+#: InvenTree/forms.py:181
msgid "Email (again)"
msgstr "อีเมล (อีกครั้ง)"
-#: InvenTree/forms.py:183
+#: InvenTree/forms.py:185
msgid "Email address confirmation"
msgstr "การยืนยันอีเมล"
-#: InvenTree/forms.py:204
+#: InvenTree/forms.py:206
msgid "You must type the same email each time."
msgstr ""
-#: InvenTree/forms.py:230 InvenTree/forms.py:236
+#: InvenTree/forms.py:237 InvenTree/forms.py:243
msgid "The provided primary email address is not valid."
msgstr ""
-#: InvenTree/forms.py:242
+#: InvenTree/forms.py:249
msgid "The provided email domain is not approved."
msgstr ""
-#: InvenTree/helpers.py:462 order/models.py:442 order/models.py:611
+#: InvenTree/forms.py:345
+msgid "Registration is disabled."
+msgstr ""
+
+#: InvenTree/helpers.py:462 order/models.py:455 order/models.py:624
msgid "Invalid quantity provided"
msgstr "ปริมาณสินค้าไม่ถูกต้อง"
@@ -239,7 +243,7 @@ msgstr ""
#: InvenTree/models.py:486 stock/models.py:2262
#: templates/js/translated/attachment.js:119
-#: templates/js/translated/attachment.js:306
+#: templates/js/translated/attachment.js:316
msgid "Attachment"
msgstr "ไฟล์แนบ"
@@ -247,29 +251,30 @@ msgstr "ไฟล์แนบ"
msgid "Select file to attach"
msgstr "เลือกไฟล์ที่ต้องการแนบ"
-#: InvenTree/models.py:493 common/models.py:2695 company/models.py:132
-#: company/models.py:306 company/models.py:584 order/models.py:236
-#: order/models.py:1093 order/models.py:1453 part/admin.py:39
-#: part/models.py:901 part/templates/part/part_scheduling.html:11
+#: InvenTree/models.py:493 common/models.py:2681 company/models.py:128
+#: company/models.py:381 company/models.py:455 company/models.py:733
+#: order/models.py:240 order/models.py:1106 order/models.py:1466
+#: part/admin.py:39 part/models.py:902
+#: part/templates/part/part_scheduling.html:11
#: report/templates/report/inventree_build_order_base.html:164
-#: stock/admin.py:120 templates/js/translated/company.js:977
-#: templates/js/translated/company.js:1283 templates/js/translated/order.js:351
-#: templates/js/translated/part.js:2316
-#: templates/js/translated/purchase_order.js:2008
-#: templates/js/translated/purchase_order.js:2172
-#: templates/js/translated/return_order.js:764
-#: templates/js/translated/sales_order.js:1044
-#: templates/js/translated/sales_order.js:1964
+#: stock/admin.py:120 templates/js/translated/company.js:1350
+#: templates/js/translated/company.js:1704 templates/js/translated/order.js:351
+#: templates/js/translated/part.js:2392
+#: templates/js/translated/purchase_order.js:2018
+#: templates/js/translated/purchase_order.js:2182
+#: templates/js/translated/return_order.js:776
+#: templates/js/translated/sales_order.js:1056
+#: templates/js/translated/sales_order.js:1976
msgid "Link"
msgstr "ลิงก์"
-#: InvenTree/models.py:494 build/models.py:291 part/models.py:902
+#: InvenTree/models.py:494 build/models.py:295 part/models.py:903
#: stock/models.py:735
msgid "Link to external URL"
msgstr ""
#: InvenTree/models.py:497 templates/js/translated/attachment.js:120
-#: templates/js/translated/attachment.js:321
+#: templates/js/translated/attachment.js:331
msgid "Comment"
msgstr "ความคิดเห็น"
@@ -277,13 +282,13 @@ msgstr "ความคิดเห็น"
msgid "File comment"
msgstr "ความเห็นของไฟล์"
-#: InvenTree/models.py:503 InvenTree/models.py:504 common/models.py:2154
-#: common/models.py:2155 common/models.py:2368 common/models.py:2369
-#: common/models.py:2625 common/models.py:2626 part/models.py:3013
-#: part/models.py:3101 part/models.py:3180 part/models.py:3200
-#: plugin/models.py:217 plugin/models.py:218
+#: InvenTree/models.py:503 InvenTree/models.py:504 common/models.py:2140
+#: common/models.py:2141 common/models.py:2354 common/models.py:2355
+#: common/models.py:2611 common/models.py:2612 part/models.py:3047
+#: part/models.py:3135 part/models.py:3214 part/models.py:3234
+#: plugin/models.py:218 plugin/models.py:219
#: report/templates/report/inventree_test_report_base.html:105
-#: templates/js/translated/stock.js:2773
+#: templates/js/translated/stock.js:2904
msgid "User"
msgstr "ผู้ใช้งาน"
@@ -324,53 +329,54 @@ msgstr ""
msgid "Invalid choice"
msgstr ""
-#: InvenTree/models.py:648 InvenTree/models.py:649 common/models.py:2354
-#: company/models.py:390 label/models.py:103 part/models.py:847
-#: part/models.py:3400 plugin/models.py:41 report/models.py:160
+#: InvenTree/models.py:648 InvenTree/models.py:649 common/models.py:2340
+#: company/models.py:539 label/models.py:111 part/models.py:848
+#: part/models.py:3434 plugin/models.py:42 report/models.py:160
#: templates/InvenTree/settings/mixins/urls.html:13
#: templates/InvenTree/settings/notifications.html:17
-#: templates/InvenTree/settings/plugin.html:80
+#: templates/InvenTree/settings/plugin.html:74
#: templates/InvenTree/settings/plugin_settings.html:22
-#: templates/js/translated/company.js:658
-#: templates/js/translated/company.js:706
-#: templates/js/translated/company.js:871
-#: templates/js/translated/company.js:1071 templates/js/translated/part.js:1160
-#: templates/js/translated/part.js:1447 templates/js/translated/part.js:1583
-#: templates/js/translated/part.js:2699 templates/js/translated/stock.js:2464
+#: templates/js/translated/company.js:665
+#: templates/js/translated/company.js:713
+#: templates/js/translated/company.js:940
+#: templates/js/translated/company.js:1196
+#: templates/js/translated/company.js:1444 templates/js/translated/part.js:1159
+#: templates/js/translated/part.js:1446 templates/js/translated/part.js:1582
+#: templates/js/translated/part.js:2684 templates/js/translated/stock.js:2595
msgid "Name"
msgstr "ชื่อ"
-#: InvenTree/models.py:655 build/models.py:164
+#: InvenTree/models.py:655 build/models.py:168
#: build/templates/build/detail.html:24 common/models.py:111
-#: company/models.py:312 company/models.py:590
+#: company/models.py:461 company/models.py:739
#: company/templates/company/company_base.html:72
#: company/templates/company/manufacturer_part.html:75
-#: company/templates/company/supplier_part.html:108 label/models.py:110
-#: order/models.py:232 order/models.py:1117 part/admin.py:194 part/admin.py:276
-#: part/models.py:869 part/models.py:3416 part/templates/part/category.html:81
+#: company/templates/company/supplier_part.html:108 label/models.py:118
+#: order/models.py:232 order/models.py:1130 part/admin.py:194 part/admin.py:276
+#: part/models.py:870 part/models.py:3450 part/templates/part/category.html:81
#: part/templates/part/part_base.html:172
#: part/templates/part/part_scheduling.html:12 report/models.py:173
-#: report/models.py:587 report/models.py:631
+#: report/models.py:589 report/models.py:633
#: report/templates/report/inventree_build_order_base.html:117
#: stock/admin.py:41 stock/templates/stock/location.html:123
#: templates/InvenTree/settings/notifications.html:19
#: templates/InvenTree/settings/plugin_settings.html:27
#: templates/InvenTree/settings/settings_staff_js.html:75
-#: templates/js/translated/bom.js:632 templates/js/translated/bom.js:933
-#: templates/js/translated/build.js:2857 templates/js/translated/company.js:510
-#: templates/js/translated/company.js:988
-#: templates/js/translated/company.js:1251 templates/js/translated/order.js:298
-#: templates/js/translated/part.js:1212 templates/js/translated/part.js:1456
-#: templates/js/translated/part.js:1594 templates/js/translated/part.js:1933
-#: templates/js/translated/part.js:2247 templates/js/translated/part.js:2735
-#: templates/js/translated/part.js:2826
-#: templates/js/translated/purchase_order.js:1666
-#: templates/js/translated/purchase_order.js:1812
-#: templates/js/translated/purchase_order.js:1990
-#: templates/js/translated/return_order.js:302
-#: templates/js/translated/sales_order.js:790
-#: templates/js/translated/stock.js:1439 templates/js/translated/stock.js:1817
-#: templates/js/translated/stock.js:2496 templates/js/translated/stock.js:2568
+#: templates/js/translated/bom.js:633 templates/js/translated/bom.js:951
+#: templates/js/translated/build.js:2062 templates/js/translated/company.js:517
+#: templates/js/translated/company.js:1361
+#: templates/js/translated/company.js:1672 templates/js/translated/index.js:114
+#: templates/js/translated/order.js:298 templates/js/translated/part.js:1211
+#: templates/js/translated/part.js:1455 templates/js/translated/part.js:1593
+#: templates/js/translated/part.js:1932 templates/js/translated/part.js:2323
+#: templates/js/translated/part.js:2720 templates/js/translated/part.js:2811
+#: templates/js/translated/purchase_order.js:1681
+#: templates/js/translated/purchase_order.js:1827
+#: templates/js/translated/purchase_order.js:2000
+#: templates/js/translated/return_order.js:314
+#: templates/js/translated/sales_order.js:802
+#: templates/js/translated/stock.js:1438 templates/js/translated/stock.js:1974
+#: templates/js/translated/stock.js:2627 templates/js/translated/stock.js:2699
msgid "Description"
msgstr "คำอธิบาย"
@@ -383,7 +389,7 @@ msgid "parent"
msgstr ""
#: InvenTree/models.py:671 InvenTree/models.py:672
-#: templates/js/translated/part.js:2744 templates/js/translated/stock.js:2505
+#: templates/js/translated/part.js:2729 templates/js/translated/stock.js:2636
msgid "Path"
msgstr ""
@@ -419,12 +425,12 @@ msgstr "เกิดข้อผิดพลาดที่เซิร์ฟเ
msgid "An error has been logged by the server."
msgstr ""
-#: InvenTree/serializers.py:60 part/models.py:3897
+#: InvenTree/serializers.py:60 part/models.py:3941
msgid "Must be a valid number"
msgstr "ต้องเป็นตัวเลข"
-#: InvenTree/serializers.py:90 company/models.py:154
-#: company/templates/company/company_base.html:107 part/models.py:2852
+#: InvenTree/serializers.py:90 company/models.py:150
+#: company/templates/company/company_base.html:107 part/models.py:2886
#: templates/InvenTree/settings/settings_staff_js.html:44
#: templates/currency_data.html:5
msgid "Currency"
@@ -497,130 +503,130 @@ msgstr ""
msgid "Downloading images from remote URL is not enabled"
msgstr ""
-#: InvenTree/settings.py:714
+#: InvenTree/settings.py:741
msgid "Czech"
msgstr ""
-#: InvenTree/settings.py:715
+#: InvenTree/settings.py:742
msgid "Danish"
msgstr ""
-#: InvenTree/settings.py:716
+#: InvenTree/settings.py:743
msgid "German"
msgstr ""
-#: InvenTree/settings.py:717
+#: InvenTree/settings.py:744
msgid "Greek"
msgstr ""
-#: InvenTree/settings.py:718
+#: InvenTree/settings.py:745
msgid "English"
msgstr ""
-#: InvenTree/settings.py:719
+#: InvenTree/settings.py:746
msgid "Spanish"
msgstr ""
-#: InvenTree/settings.py:720
+#: InvenTree/settings.py:747
msgid "Spanish (Mexican)"
msgstr ""
-#: InvenTree/settings.py:721
+#: InvenTree/settings.py:748
msgid "Farsi / Persian"
msgstr ""
-#: InvenTree/settings.py:722
+#: InvenTree/settings.py:749
msgid "Finnish"
msgstr ""
-#: InvenTree/settings.py:723
+#: InvenTree/settings.py:750
msgid "French"
msgstr ""
-#: InvenTree/settings.py:724
+#: InvenTree/settings.py:751
msgid "Hebrew"
msgstr ""
-#: InvenTree/settings.py:725
+#: InvenTree/settings.py:752
msgid "Hungarian"
msgstr ""
-#: InvenTree/settings.py:726
+#: InvenTree/settings.py:753
msgid "Italian"
msgstr ""
-#: InvenTree/settings.py:727
+#: InvenTree/settings.py:754
msgid "Japanese"
msgstr ""
-#: InvenTree/settings.py:728
+#: InvenTree/settings.py:755
msgid "Korean"
msgstr ""
-#: InvenTree/settings.py:729
+#: InvenTree/settings.py:756
msgid "Dutch"
msgstr ""
-#: InvenTree/settings.py:730
+#: InvenTree/settings.py:757
msgid "Norwegian"
msgstr ""
-#: InvenTree/settings.py:731
+#: InvenTree/settings.py:758
msgid "Polish"
msgstr ""
-#: InvenTree/settings.py:732
+#: InvenTree/settings.py:759
msgid "Portuguese"
msgstr "ภาษาโปรตุเกส"
-#: InvenTree/settings.py:733
+#: InvenTree/settings.py:760
msgid "Portuguese (Brazilian)"
msgstr ""
-#: InvenTree/settings.py:734
+#: InvenTree/settings.py:761
msgid "Russian"
msgstr "ภาษารัสเซีย"
-#: InvenTree/settings.py:735
+#: InvenTree/settings.py:762
msgid "Slovenian"
msgstr ""
-#: InvenTree/settings.py:736
+#: InvenTree/settings.py:763
msgid "Swedish"
msgstr "ภาษาสวีเดน"
-#: InvenTree/settings.py:737
+#: InvenTree/settings.py:764
msgid "Thai"
msgstr "ภาษาไทย"
-#: InvenTree/settings.py:738
+#: InvenTree/settings.py:765
msgid "Turkish"
msgstr ""
-#: InvenTree/settings.py:739
+#: InvenTree/settings.py:766
msgid "Vietnamese"
msgstr "ภาษาเวียดนาม"
-#: InvenTree/settings.py:740
+#: InvenTree/settings.py:767
msgid "Chinese"
msgstr "ภาษาจีน"
-#: InvenTree/status.py:61 part/serializers.py:878
+#: InvenTree/status.py:68 part/serializers.py:940
msgid "Background worker check failed"
msgstr ""
-#: InvenTree/status.py:65
+#: InvenTree/status.py:72
msgid "Email backend not configured"
msgstr ""
-#: InvenTree/status.py:68
+#: InvenTree/status.py:75
msgid "InvenTree system health checks failed"
msgstr ""
#: InvenTree/status_codes.py:12 InvenTree/status_codes.py:40
#: InvenTree/status_codes.py:148 InvenTree/status_codes.py:167
#: InvenTree/status_codes.py:188 generic/states/tests.py:16
-#: templates/js/translated/table_filters.js:511
+#: templates/js/translated/table_filters.js:533
msgid "Pending"
msgstr "อยู่ระหว่างดำเนินการ"
@@ -630,7 +636,7 @@ msgstr ""
#: InvenTree/status_codes.py:14 InvenTree/status_codes.py:151
#: InvenTree/status_codes.py:172 generic/states/tests.py:18
-#: order/templates/order/order_base.html:162
+#: order/templates/order/order_base.html:158
#: order/templates/order/sales_order_base.html:162
msgid "Complete"
msgstr "สำเร็จแล้ว"
@@ -654,10 +660,10 @@ msgstr "ส่งคืนแล้ว"
msgid "In Progress"
msgstr ""
-#: InvenTree/status_codes.py:42 order/models.py:1332
-#: templates/js/translated/sales_order.js:1509
-#: templates/js/translated/sales_order.js:1630
-#: templates/js/translated/sales_order.js:1934
+#: InvenTree/status_codes.py:42 order/models.py:1345
+#: templates/js/translated/sales_order.js:1521
+#: templates/js/translated/sales_order.js:1642
+#: templates/js/translated/sales_order.js:1946
msgid "Shipped"
msgstr "จัดส่งแล้ว"
@@ -689,7 +695,7 @@ msgstr ""
msgid "Legacy stock tracking entry"
msgstr ""
-#: InvenTree/status_codes.py:93 templates/js/translated/stock.js:511
+#: InvenTree/status_codes.py:93 templates/js/translated/stock.js:510
msgid "Stock item created"
msgstr ""
@@ -745,7 +751,7 @@ msgstr ""
msgid "Split child item"
msgstr ""
-#: InvenTree/status_codes.py:120 templates/js/translated/stock.js:2243
+#: InvenTree/status_codes.py:120 templates/js/translated/stock.js:1769
msgid "Merged stock items"
msgstr ""
@@ -765,7 +771,7 @@ msgstr ""
msgid "Build order output rejected"
msgstr ""
-#: InvenTree/status_codes.py:129 templates/js/translated/stock.js:1676
+#: InvenTree/status_codes.py:129 templates/js/translated/stock.js:1675
msgid "Consumed by build order"
msgstr ""
@@ -781,7 +787,7 @@ msgstr ""
msgid "Returned against Return Order"
msgstr ""
-#: InvenTree/status_codes.py:141 templates/js/translated/table_filters.js:321
+#: InvenTree/status_codes.py:141 templates/js/translated/table_filters.js:327
msgid "Sent to customer"
msgstr "จัดส่งให้ลูกค้าแล้ว"
@@ -849,83 +855,111 @@ msgstr "รหัสผ่านต้องตรงกัน"
msgid "Wrong password provided"
msgstr "ป้อนรหัสผ่านไม่ถูกต้อง"
-#: InvenTree/views.py:651 templates/navbar.html:157
+#: InvenTree/views.py:653 templates/navbar.html:157
msgid "System Information"
msgstr "ข้อมูลระบบ"
-#: InvenTree/views.py:658 templates/navbar.html:168
+#: InvenTree/views.py:660 templates/navbar.html:168
msgid "About InvenTree"
msgstr "เกี่ยวกับ Inventree"
-#: build/api.py:222
+#: build/api.py:242
msgid "Build must be cancelled before it can be deleted"
msgstr ""
-#: build/models.py:69 build/templates/build/build_base.html:9
+#: build/api.py:286 part/models.py:3833 templates/js/translated/bom.js:985
+#: templates/js/translated/bom.js:1025 templates/js/translated/build.js:2449
+#: templates/js/translated/table_filters.js:166
+#: templates/js/translated/table_filters.js:518
+msgid "Consumable"
+msgstr ""
+
+#: build/api.py:287 part/models.py:3827 part/templates/part/upload_bom.html:58
+#: templates/js/translated/bom.js:989 templates/js/translated/bom.js:1016
+#: templates/js/translated/build.js:2458
+#: templates/js/translated/table_filters.js:162
+#: templates/js/translated/table_filters.js:191
+#: templates/js/translated/table_filters.js:522
+msgid "Optional"
+msgstr ""
+
+#: build/api.py:288 templates/js/translated/table_filters.js:360
+#: templates/js/translated/table_filters.js:514
+msgid "Tracked"
+msgstr ""
+
+#: build/api.py:290 part/admin.py:64 templates/js/translated/build.js:1670
+#: templates/js/translated/build.js:2549
+#: templates/js/translated/sales_order.js:1918
+#: templates/js/translated/table_filters.js:506
+msgid "Allocated"
+msgstr ""
+
+#: build/models.py:73 build/templates/build/build_base.html:9
#: build/templates/build/build_base.html:27
#: report/templates/report/inventree_build_order_base.html:105
#: templates/email/build_order_completed.html:16
#: templates/email/overdue_build_order.html:15
-#: templates/js/translated/build.js:945 templates/js/translated/stock.js:2629
+#: templates/js/translated/build.js:953 templates/js/translated/stock.js:2760
msgid "Build Order"
msgstr ""
-#: build/models.py:70 build/templates/build/build_base.html:13
+#: build/models.py:74 build/templates/build/build_base.html:13
#: build/templates/build/index.html:8 build/templates/build/index.html:12
-#: order/templates/order/sales_order_detail.html:119
+#: order/templates/order/sales_order_detail.html:111
#: order/templates/order/so_sidebar.html:13
-#: part/templates/part/part_sidebar.html:22 templates/InvenTree/index.html:244
+#: part/templates/part/part_sidebar.html:22 templates/InvenTree/index.html:196
#: templates/InvenTree/search.html:141
#: templates/InvenTree/settings/sidebar.html:53
-#: templates/js/translated/search.js:228 users/models.py:42
+#: templates/js/translated/search.js:186 users/models.py:42
msgid "Build Orders"
msgstr ""
-#: build/models.py:111
+#: build/models.py:115
msgid "Invalid choice for parent build"
msgstr ""
-#: build/models.py:155
+#: build/models.py:159
msgid "Build Order Reference"
msgstr ""
-#: build/models.py:156 order/models.py:359 order/models.py:765
-#: order/models.py:1087 order/models.py:1724 part/admin.py:278
-#: part/models.py:3798 part/templates/part/upload_bom.html:54
+#: build/models.py:160 order/models.py:372 order/models.py:778
+#: order/models.py:1100 order/models.py:1737 part/admin.py:278
+#: part/models.py:3842 part/templates/part/upload_bom.html:54
#: report/templates/report/inventree_bill_of_materials_report.html:139
#: report/templates/report/inventree_po_report_base.html:28
#: report/templates/report/inventree_return_order_report_base.html:26
#: report/templates/report/inventree_so_report_base.html:28
-#: templates/js/translated/bom.js:769 templates/js/translated/bom.js:943
-#: templates/js/translated/build.js:2098 templates/js/translated/order.js:291
+#: templates/js/translated/bom.js:770 templates/js/translated/bom.js:961
+#: templates/js/translated/build.js:2441 templates/js/translated/order.js:291
#: templates/js/translated/pricing.js:386
-#: templates/js/translated/purchase_order.js:2033
-#: templates/js/translated/return_order.js:713
-#: templates/js/translated/sales_order.js:1798
+#: templates/js/translated/purchase_order.js:2043
+#: templates/js/translated/return_order.js:725
+#: templates/js/translated/sales_order.js:1810
msgid "Reference"
msgstr ""
-#: build/models.py:167
+#: build/models.py:171
msgid "Brief description of the build (optional)"
msgstr ""
-#: build/models.py:175 build/templates/build/build_base.html:183
+#: build/models.py:179 build/templates/build/build_base.html:184
#: build/templates/build/detail.html:87
msgid "Parent Build"
msgstr ""
-#: build/models.py:176
+#: build/models.py:180
msgid "BuildOrder to which this build is allocated"
msgstr ""
-#: build/models.py:181 build/templates/build/build_base.html:98
-#: build/templates/build/detail.html:29 company/models.py:775
-#: order/models.py:1195 order/models.py:1311 order/models.py:1312
-#: part/models.py:391 part/models.py:2865 part/models.py:2979
-#: part/models.py:3119 part/models.py:3138 part/models.py:3157
-#: part/models.py:3178 part/models.py:3270 part/models.py:3555
-#: part/models.py:3663 part/models.py:3763 part/models.py:4077
-#: part/serializers.py:842 part/serializers.py:1245
+#: build/models.py:185 build/templates/build/build_base.html:98
+#: build/templates/build/detail.html:29 company/models.py:924
+#: order/models.py:1208 order/models.py:1324 order/models.py:1325
+#: part/models.py:392 part/models.py:2899 part/models.py:3013
+#: part/models.py:3153 part/models.py:3172 part/models.py:3191
+#: part/models.py:3212 part/models.py:3304 part/models.py:3589
+#: part/models.py:3712 part/models.py:3807 part/models.py:4121
+#: part/serializers.py:904 part/serializers.py:1307
#: part/templates/part/part_app_base.html:8
#: part/templates/part/part_pricing.html:12
#: part/templates/part/upload_bom.html:52
@@ -935,266 +969,229 @@ msgstr ""
#: report/templates/report/inventree_po_report_base.html:27
#: report/templates/report/inventree_return_order_report_base.html:24
#: report/templates/report/inventree_so_report_base.html:27
-#: stock/serializers.py:156 stock/serializers.py:509
+#: stock/serializers.py:205 stock/serializers.py:576
#: templates/InvenTree/search.html:82
#: templates/email/build_order_completed.html:17
#: templates/email/build_order_required_stock.html:17
#: templates/email/low_stock_notification.html:15
#: templates/email/overdue_build_order.html:16
-#: templates/js/translated/barcode.js:529 templates/js/translated/bom.js:631
-#: templates/js/translated/bom.js:768 templates/js/translated/bom.js:887
-#: templates/js/translated/build.js:1403 templates/js/translated/build.js:1965
-#: templates/js/translated/build.js:2464 templates/js/translated/build.js:2868
-#: templates/js/translated/company.js:337
-#: templates/js/translated/company.js:822
-#: templates/js/translated/company.js:929
-#: templates/js/translated/company.js:1169 templates/js/translated/part.js:1918
-#: templates/js/translated/part.js:1990 templates/js/translated/part.js:2216
-#: templates/js/translated/pricing.js:369
-#: templates/js/translated/purchase_order.js:746
-#: templates/js/translated/purchase_order.js:1274
-#: templates/js/translated/purchase_order.js:1811
-#: templates/js/translated/purchase_order.js:1975
-#: templates/js/translated/return_order.js:527
-#: templates/js/translated/return_order.js:694
-#: templates/js/translated/sales_order.js:285
-#: templates/js/translated/sales_order.js:1185
-#: templates/js/translated/sales_order.js:1584
-#: templates/js/translated/sales_order.js:1782
-#: templates/js/translated/stock.js:643 templates/js/translated/stock.js:809
-#: templates/js/translated/stock.js:1021 templates/js/translated/stock.js:1773
-#: templates/js/translated/stock.js:2594 templates/js/translated/stock.js:2831
-#: templates/js/translated/stock.js:2968
+#: templates/js/translated/barcode.js:529 templates/js/translated/bom.js:632
+#: templates/js/translated/bom.js:769 templates/js/translated/bom.js:905
+#: templates/js/translated/build.js:1289 templates/js/translated/build.js:1669
+#: templates/js/translated/build.js:2085 templates/js/translated/build.js:2261
+#: templates/js/translated/company.js:347
+#: templates/js/translated/company.js:1147
+#: templates/js/translated/company.js:1302
+#: templates/js/translated/company.js:1590 templates/js/translated/index.js:104
+#: templates/js/translated/part.js:1917 templates/js/translated/part.js:1989
+#: templates/js/translated/part.js:2292 templates/js/translated/pricing.js:369
+#: templates/js/translated/purchase_order.js:757
+#: templates/js/translated/purchase_order.js:1289
+#: templates/js/translated/purchase_order.js:1826
+#: templates/js/translated/purchase_order.js:1985
+#: templates/js/translated/return_order.js:539
+#: templates/js/translated/return_order.js:706
+#: templates/js/translated/sales_order.js:297
+#: templates/js/translated/sales_order.js:1197
+#: templates/js/translated/sales_order.js:1596
+#: templates/js/translated/sales_order.js:1794
+#: templates/js/translated/stock.js:642 templates/js/translated/stock.js:808
+#: templates/js/translated/stock.js:1020 templates/js/translated/stock.js:1913
+#: templates/js/translated/stock.js:2725 templates/js/translated/stock.js:2958
+#: templates/js/translated/stock.js:3095
msgid "Part"
msgstr ""
-#: build/models.py:189
+#: build/models.py:193
msgid "Select part to build"
msgstr ""
-#: build/models.py:194
+#: build/models.py:198
msgid "Sales Order Reference"
msgstr ""
-#: build/models.py:198
+#: build/models.py:202
msgid "SalesOrder to which this build is allocated"
msgstr ""
-#: build/models.py:203 build/serializers.py:942
-#: templates/js/translated/build.js:2452
-#: templates/js/translated/sales_order.js:1173
+#: build/models.py:207 build/serializers.py:946
+#: templates/js/translated/build.js:1657
+#: templates/js/translated/sales_order.js:1185
msgid "Source Location"
msgstr ""
-#: build/models.py:207
+#: build/models.py:211
msgid "Select location to take stock from for this build (leave blank to take from any stock location)"
msgstr ""
-#: build/models.py:212
+#: build/models.py:216
msgid "Destination Location"
msgstr ""
-#: build/models.py:216
+#: build/models.py:220
msgid "Select location where the completed items will be stored"
msgstr ""
-#: build/models.py:220
+#: build/models.py:224
msgid "Build Quantity"
msgstr ""
-#: build/models.py:223
+#: build/models.py:227
msgid "Number of stock items to build"
msgstr ""
-#: build/models.py:227
+#: build/models.py:231
msgid "Completed items"
msgstr ""
-#: build/models.py:229
+#: build/models.py:233
msgid "Number of stock items which have been completed"
msgstr ""
-#: build/models.py:233
+#: build/models.py:237
msgid "Build Status"
msgstr ""
-#: build/models.py:237
+#: build/models.py:241
msgid "Build status code"
msgstr ""
-#: build/models.py:246 build/serializers.py:269 order/serializers.py:506
-#: stock/models.py:739 templates/js/translated/purchase_order.js:1099
+#: build/models.py:250 build/serializers.py:277 order/serializers.py:512
+#: stock/models.py:739 templates/js/translated/purchase_order.js:1114
msgid "Batch Code"
msgstr ""
-#: build/models.py:250 build/serializers.py:270
+#: build/models.py:254 build/serializers.py:278
msgid "Batch code for this build output"
msgstr ""
-#: build/models.py:253 order/models.py:244 part/models.py:1038
+#: build/models.py:257 order/models.py:248 part/models.py:1039
#: part/templates/part/part_base.html:312
-#: templates/js/translated/return_order.js:327
-#: templates/js/translated/sales_order.js:815
+#: templates/js/translated/return_order.js:339
+#: templates/js/translated/sales_order.js:827
msgid "Creation Date"
msgstr ""
-#: build/models.py:257
+#: build/models.py:261
msgid "Target completion date"
msgstr ""
-#: build/models.py:258
+#: build/models.py:262
msgid "Target date for build completion. Build will be overdue after this date."
msgstr ""
-#: build/models.py:261 order/models.py:409 order/models.py:1767
-#: templates/js/translated/build.js:2953
+#: build/models.py:265 order/models.py:422 order/models.py:1780
+#: templates/js/translated/build.js:2170
msgid "Completion Date"
msgstr ""
-#: build/models.py:267
+#: build/models.py:271
msgid "completed by"
msgstr ""
-#: build/models.py:275 templates/js/translated/build.js:2913
+#: build/models.py:279 templates/js/translated/build.js:2130
msgid "Issued by"
msgstr ""
-#: build/models.py:276
+#: build/models.py:280
msgid "User who issued this build order"
msgstr ""
-#: build/models.py:284 build/templates/build/build_base.html:204
-#: build/templates/build/detail.html:122 order/models.py:258
-#: order/templates/order/order_base.html:214
-#: order/templates/order/return_order_base.html:182
-#: order/templates/order/sales_order_base.html:222 part/models.py:1042
+#: build/models.py:288 build/templates/build/build_base.html:205
+#: build/templates/build/detail.html:122 order/models.py:262
+#: order/templates/order/order_base.html:217
+#: order/templates/order/return_order_base.html:189
+#: order/templates/order/sales_order_base.html:229 part/models.py:1043
#: part/templates/part/part_base.html:392
#: report/templates/report/inventree_build_order_base.html:158
-#: templates/js/translated/build.js:2925
-#: templates/js/translated/purchase_order.js:1723
-#: templates/js/translated/return_order.js:347
-#: templates/js/translated/table_filters.js:461
+#: templates/js/translated/build.js:2142
+#: templates/js/translated/purchase_order.js:1738
+#: templates/js/translated/return_order.js:359
+#: templates/js/translated/table_filters.js:467
msgid "Responsible"
msgstr ""
-#: build/models.py:285
+#: build/models.py:289
msgid "User or group responsible for this build order"
msgstr ""
-#: build/models.py:290 build/templates/build/detail.html:108
+#: build/models.py:294 build/templates/build/detail.html:108
#: company/templates/company/manufacturer_part.html:107
#: company/templates/company/supplier_part.html:195
-#: order/templates/order/order_base.html:171
+#: order/templates/order/order_base.html:167
#: order/templates/order/return_order_base.html:146
#: order/templates/order/sales_order_base.html:181
#: part/templates/part/part_base.html:385 stock/models.py:733
#: stock/templates/stock/item_base.html:201
+#: templates/js/translated/company.js:1050
msgid "External Link"
msgstr ""
-#: build/models.py:295
+#: build/models.py:299
msgid "Build Priority"
msgstr ""
-#: build/models.py:298
+#: build/models.py:302
msgid "Priority of this build order"
msgstr ""
-#: build/models.py:536
+#: build/models.py:309 common/models.py:104 order/admin.py:17
+#: order/models.py:237 templates/InvenTree/settings/settings_staff_js.html:70
+#: templates/js/translated/build.js:2067
+#: templates/js/translated/purchase_order.js:1685
+#: templates/js/translated/return_order.js:318
+#: templates/js/translated/sales_order.js:806
+#: templates/js/translated/table_filters.js:24
+#: templates/project_code_data.html:6
+msgid "Project Code"
+msgstr ""
+
+#: build/models.py:310
+msgid "Project code for this build order"
+msgstr ""
+
+#: build/models.py:545
#, python-brace-format
msgid "Build order {build} has been completed"
msgstr ""
-#: build/models.py:542
+#: build/models.py:551
msgid "A build order has been completed"
msgstr ""
-#: build/models.py:744 build/models.py:811
+#: build/models.py:753 build/models.py:831
msgid "No build output specified"
msgstr ""
-#: build/models.py:747
+#: build/models.py:756
msgid "Build output is already completed"
msgstr ""
-#: build/models.py:750
+#: build/models.py:759
msgid "Build output does not match Build Order"
msgstr ""
-#: build/models.py:815 build/serializers.py:212 build/serializers.py:251
-#: build/serializers.py:811 order/models.py:440 order/serializers.py:379
-#: order/serializers.py:501 part/serializers.py:1087 part/serializers.py:1408
-#: stock/models.py:593 stock/models.py:1387 stock/serializers.py:315
+#: build/models.py:835 build/serializers.py:220 build/serializers.py:259
+#: build/serializers.py:819 order/models.py:453 order/serializers.py:385
+#: order/serializers.py:507 part/serializers.py:1149 part/serializers.py:1470
+#: stock/models.py:593 stock/models.py:1387 stock/serializers.py:381
msgid "Quantity must be greater than zero"
msgstr ""
-#: build/models.py:820 build/serializers.py:217
+#: build/models.py:840 build/serializers.py:225
msgid "Quantity cannot be greater than the output quantity"
msgstr ""
-#: build/models.py:1272
-msgid "Build item must specify a build output, as master part is marked as trackable"
+#: build/models.py:1260
+msgid "Build object"
msgstr ""
-#: build/models.py:1281
-#, python-brace-format
-msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})"
-msgstr ""
-
-#: build/models.py:1291 order/models.py:1601
-msgid "Stock item is over-allocated"
-msgstr ""
-
-#: build/models.py:1297 order/models.py:1604
-msgid "Allocation quantity must be greater than zero"
-msgstr ""
-
-#: build/models.py:1303
-msgid "Quantity must be 1 for serialized stock"
-msgstr ""
-
-#: build/models.py:1360
-msgid "Selected stock item not found in BOM"
-msgstr ""
-
-#: build/models.py:1438 stock/templates/stock/item_base.html:170
-#: templates/InvenTree/search.html:139 templates/js/translated/build.js:2841
-#: templates/navbar.html:38
-msgid "Build"
-msgstr ""
-
-#: build/models.py:1439
-msgid "Build to allocate parts"
-msgstr ""
-
-#: build/models.py:1455 build/serializers.py:791 order/serializers.py:1059
-#: order/serializers.py:1080 stock/serializers.py:413 stock/serializers.py:770
-#: stock/serializers.py:896 stock/templates/stock/item_base.html:10
-#: stock/templates/stock/item_base.html:23
-#: stock/templates/stock/item_base.html:195
-#: templates/js/translated/build.js:955 templates/js/translated/build.js:960
-#: templates/js/translated/build.js:2466 templates/js/translated/build.js:3038
-#: templates/js/translated/sales_order.js:286
-#: templates/js/translated/sales_order.js:1186
-#: templates/js/translated/sales_order.js:1485
-#: templates/js/translated/sales_order.js:1490
-#: templates/js/translated/sales_order.js:1591
-#: templates/js/translated/sales_order.js:1678
-#: templates/js/translated/stock.js:644 templates/js/translated/stock.js:810
-#: templates/js/translated/stock.js:2714
-msgid "Stock Item"
-msgstr ""
-
-#: build/models.py:1456
-msgid "Source stock item"
-msgstr ""
-
-#: build/models.py:1468 build/serializers.py:198 build/serializers.py:236
-#: build/templates/build/build_base.html:103
-#: build/templates/build/detail.html:34 common/models.py:2176
-#: order/models.py:1073 order/models.py:1645 order/serializers.py:1233
+#: build/models.py:1274 build/models.py:1556 build/serializers.py:206
+#: build/serializers.py:244 build/templates/build/build_base.html:103
+#: build/templates/build/detail.html:34 common/models.py:2162
+#: order/models.py:1086 order/models.py:1658 order/serializers.py:1239
#: order/templates/order/order_wizard/match_parts.html:30 part/admin.py:277
-#: part/forms.py:47 part/models.py:2992 part/models.py:3779
+#: part/forms.py:47 part/models.py:3026 part/models.py:3823
#: part/templates/part/part_pricing.html:16
#: part/templates/part/upload_bom.html:53
#: report/templates/report/inventree_bill_of_materials_report.html:138
@@ -1203,315 +1200,367 @@ msgstr ""
#: report/templates/report/inventree_so_report_base.html:29
#: report/templates/report/inventree_test_report_base.html:90
#: report/templates/report/inventree_test_report_base.html:170
-#: stock/admin.py:103 stock/serializers.py:306
+#: stock/admin.py:103 stock/serializers.py:372
#: stock/templates/stock/item_base.html:288
#: stock/templates/stock/item_base.html:296
#: stock/templates/stock/item_base.html:343
#: templates/email/build_order_completed.html:18
-#: templates/js/translated/barcode.js:531 templates/js/translated/bom.js:770
-#: templates/js/translated/bom.js:951 templates/js/translated/build.js:504
-#: templates/js/translated/build.js:716 templates/js/translated/build.js:982
-#: templates/js/translated/build.js:1425 templates/js/translated/build.js:1991
-#: templates/js/translated/build.js:2467
-#: templates/js/translated/company.js:1428
-#: templates/js/translated/model_renderers.js:207
-#: templates/js/translated/order.js:304 templates/js/translated/part.js:935
-#: templates/js/translated/part.js:1784 templates/js/translated/part.js:3263
+#: templates/js/translated/barcode.js:531 templates/js/translated/bom.js:771
+#: templates/js/translated/bom.js:969 templates/js/translated/build.js:510
+#: templates/js/translated/build.js:722 templates/js/translated/build.js:1308
+#: templates/js/translated/build.js:1672 templates/js/translated/build.js:2283
+#: templates/js/translated/company.js:1849
+#: templates/js/translated/model_renderers.js:221
+#: templates/js/translated/order.js:304 templates/js/translated/part.js:934
+#: templates/js/translated/part.js:1783 templates/js/translated/part.js:3248
#: templates/js/translated/pricing.js:381
#: templates/js/translated/pricing.js:474
#: templates/js/translated/pricing.js:522
#: templates/js/translated/pricing.js:616
-#: templates/js/translated/purchase_order.js:749
-#: templates/js/translated/purchase_order.js:1815
-#: templates/js/translated/purchase_order.js:2039
-#: templates/js/translated/sales_order.js:302
-#: templates/js/translated/sales_order.js:1187
-#: templates/js/translated/sales_order.js:1504
-#: templates/js/translated/sales_order.js:1594
-#: templates/js/translated/sales_order.js:1684
-#: templates/js/translated/sales_order.js:1804
-#: templates/js/translated/stock.js:531 templates/js/translated/stock.js:669
-#: templates/js/translated/stock.js:840 templates/js/translated/stock.js:2758
-#: templates/js/translated/stock.js:2843
+#: templates/js/translated/purchase_order.js:760
+#: templates/js/translated/purchase_order.js:1830
+#: templates/js/translated/purchase_order.js:2049
+#: templates/js/translated/sales_order.js:314
+#: templates/js/translated/sales_order.js:1199
+#: templates/js/translated/sales_order.js:1516
+#: templates/js/translated/sales_order.js:1606
+#: templates/js/translated/sales_order.js:1696
+#: templates/js/translated/sales_order.js:1816
+#: templates/js/translated/stock.js:530 templates/js/translated/stock.js:668
+#: templates/js/translated/stock.js:839 templates/js/translated/stock.js:2889
+#: templates/js/translated/stock.js:2970
msgid "Quantity"
msgstr ""
-#: build/models.py:1469
+#: build/models.py:1275
+msgid "Required quantity for build order"
+msgstr ""
+
+#: build/models.py:1357
+msgid "Build item must specify a build output, as master part is marked as trackable"
+msgstr ""
+
+#: build/models.py:1366
+#, python-brace-format
+msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})"
+msgstr ""
+
+#: build/models.py:1376 order/models.py:1614
+msgid "Stock item is over-allocated"
+msgstr ""
+
+#: build/models.py:1382 order/models.py:1617
+msgid "Allocation quantity must be greater than zero"
+msgstr ""
+
+#: build/models.py:1388
+msgid "Quantity must be 1 for serialized stock"
+msgstr ""
+
+#: build/models.py:1449
+msgid "Selected stock item does not match BOM line"
+msgstr ""
+
+#: build/models.py:1543 build/serializers.py:799 order/serializers.py:1065
+#: order/serializers.py:1086 stock/serializers.py:479 stock/serializers.py:887
+#: stock/serializers.py:1013 stock/templates/stock/item_base.html:10
+#: stock/templates/stock/item_base.html:23
+#: stock/templates/stock/item_base.html:195
+#: templates/js/translated/build.js:1671
+#: templates/js/translated/sales_order.js:298
+#: templates/js/translated/sales_order.js:1198
+#: templates/js/translated/sales_order.js:1497
+#: templates/js/translated/sales_order.js:1502
+#: templates/js/translated/sales_order.js:1603
+#: templates/js/translated/sales_order.js:1690
+#: templates/js/translated/stock.js:643 templates/js/translated/stock.js:809
+#: templates/js/translated/stock.js:2845
+msgid "Stock Item"
+msgstr ""
+
+#: build/models.py:1544
+msgid "Source stock item"
+msgstr ""
+
+#: build/models.py:1557
msgid "Stock quantity to allocate to build"
msgstr ""
-#: build/models.py:1477
+#: build/models.py:1565
msgid "Install into"
msgstr ""
-#: build/models.py:1478
+#: build/models.py:1566
msgid "Destination stock item"
msgstr ""
-#: build/serializers.py:148 build/serializers.py:820
-#: templates/js/translated/build.js:1413
+#: build/serializers.py:156 build/serializers.py:828
+#: templates/js/translated/build.js:1299
msgid "Build Output"
msgstr ""
-#: build/serializers.py:160
+#: build/serializers.py:168
msgid "Build output does not match the parent build"
msgstr ""
-#: build/serializers.py:164
+#: build/serializers.py:172
msgid "Output part does not match BuildOrder part"
msgstr ""
-#: build/serializers.py:168
+#: build/serializers.py:176
msgid "This build output has already been completed"
msgstr ""
-#: build/serializers.py:179
+#: build/serializers.py:187
msgid "This build output is not fully allocated"
msgstr ""
-#: build/serializers.py:199 build/serializers.py:237
+#: build/serializers.py:207 build/serializers.py:245
msgid "Enter quantity for build output"
msgstr ""
-#: build/serializers.py:258
+#: build/serializers.py:266
msgid "Integer quantity required for trackable parts"
msgstr ""
-#: build/serializers.py:261
+#: build/serializers.py:269
msgid "Integer quantity required, as the bill of materials contains trackable parts"
msgstr ""
-#: build/serializers.py:276 order/serializers.py:514 order/serializers.py:1237
-#: stock/serializers.py:324 templates/js/translated/purchase_order.js:1123
-#: templates/js/translated/stock.js:334 templates/js/translated/stock.js:532
+#: build/serializers.py:284 order/serializers.py:520 order/serializers.py:1243
+#: stock/serializers.py:390 templates/js/translated/purchase_order.js:1138
+#: templates/js/translated/stock.js:333 templates/js/translated/stock.js:531
msgid "Serial Numbers"
msgstr ""
-#: build/serializers.py:277
+#: build/serializers.py:285
msgid "Enter serial numbers for build outputs"
msgstr ""
-#: build/serializers.py:290
+#: build/serializers.py:298
msgid "Auto Allocate Serial Numbers"
msgstr ""
-#: build/serializers.py:291
+#: build/serializers.py:299
msgid "Automatically allocate required items with matching serial numbers"
msgstr ""
-#: build/serializers.py:326 stock/api.py:670
+#: build/serializers.py:334 stock/api.py:707
msgid "The following serial numbers already exist or are invalid"
msgstr ""
-#: build/serializers.py:377 build/serializers.py:439 build/serializers.py:518
+#: build/serializers.py:385 build/serializers.py:447 build/serializers.py:526
msgid "A list of build outputs must be provided"
msgstr ""
-#: build/serializers.py:415 build/serializers.py:488 order/serializers.py:487
-#: order/serializers.py:606 order/serializers.py:1588 part/serializers.py:854
-#: stock/serializers.py:335 stock/serializers.py:470 stock/serializers.py:551
-#: stock/serializers.py:931 stock/serializers.py:1173
+#: build/serializers.py:423 build/serializers.py:496 order/serializers.py:493
+#: order/serializers.py:612 order/serializers.py:1594 part/serializers.py:916
+#: stock/serializers.py:401 stock/serializers.py:537 stock/serializers.py:618
+#: stock/serializers.py:1048 stock/serializers.py:1290
#: stock/templates/stock/item_base.html:390
#: templates/js/translated/barcode.js:530
-#: templates/js/translated/barcode.js:778 templates/js/translated/build.js:967
-#: templates/js/translated/build.js:2006
-#: templates/js/translated/purchase_order.js:1148
-#: templates/js/translated/purchase_order.js:1238
-#: templates/js/translated/sales_order.js:1497
-#: templates/js/translated/sales_order.js:1605
-#: templates/js/translated/sales_order.js:1613
-#: templates/js/translated/sales_order.js:1692
-#: templates/js/translated/stock.js:645 templates/js/translated/stock.js:811
-#: templates/js/translated/stock.js:1023 templates/js/translated/stock.js:1937
-#: templates/js/translated/stock.js:2608
+#: templates/js/translated/barcode.js:778 templates/js/translated/build.js:980
+#: templates/js/translated/build.js:2298
+#: templates/js/translated/purchase_order.js:1163
+#: templates/js/translated/purchase_order.js:1253
+#: templates/js/translated/sales_order.js:1509
+#: templates/js/translated/sales_order.js:1617
+#: templates/js/translated/sales_order.js:1625
+#: templates/js/translated/sales_order.js:1704
+#: templates/js/translated/stock.js:644 templates/js/translated/stock.js:810
+#: templates/js/translated/stock.js:1022 templates/js/translated/stock.js:2094
+#: templates/js/translated/stock.js:2739
msgid "Location"
msgstr ""
-#: build/serializers.py:416
+#: build/serializers.py:424
msgid "Stock location for scrapped outputs"
msgstr ""
-#: build/serializers.py:422
+#: build/serializers.py:430
msgid "Discard Allocations"
msgstr ""
-#: build/serializers.py:423
+#: build/serializers.py:431
msgid "Discard any stock allocations for scrapped outputs"
msgstr ""
-#: build/serializers.py:428
+#: build/serializers.py:436
msgid "Reason for scrapping build output(s)"
msgstr ""
-#: build/serializers.py:489
+#: build/serializers.py:497
msgid "Location for completed build outputs"
msgstr ""
-#: build/serializers.py:495 build/templates/build/build_base.html:151
-#: build/templates/build/detail.html:62 order/models.py:791
-#: order/models.py:1750 order/serializers.py:524 stock/admin.py:106
-#: stock/templates/stock/item_base.html:423
-#: templates/js/translated/barcode.js:252 templates/js/translated/build.js:2897
-#: templates/js/translated/purchase_order.js:1278
-#: templates/js/translated/purchase_order.js:1682
-#: templates/js/translated/return_order.js:319
-#: templates/js/translated/sales_order.js:807
-#: templates/js/translated/stock.js:1912 templates/js/translated/stock.js:2732
-#: templates/js/translated/stock.js:2859
+#: build/serializers.py:503 build/templates/build/build_base.html:152
+#: build/templates/build/detail.html:62 order/models.py:804
+#: order/models.py:1763 order/serializers.py:530 stock/admin.py:106
+#: stock/serializers.py:677 stock/templates/stock/item_base.html:423
+#: templates/js/translated/barcode.js:252 templates/js/translated/build.js:2114
+#: templates/js/translated/purchase_order.js:1293
+#: templates/js/translated/purchase_order.js:1697
+#: templates/js/translated/return_order.js:331
+#: templates/js/translated/sales_order.js:819
+#: templates/js/translated/stock.js:2069 templates/js/translated/stock.js:2863
+#: templates/js/translated/stock.js:2986
msgid "Status"
msgstr "สถานะ"
-#: build/serializers.py:501
+#: build/serializers.py:509
msgid "Accept Incomplete Allocation"
msgstr ""
-#: build/serializers.py:502
+#: build/serializers.py:510
msgid "Complete outputs if stock has not been fully allocated"
msgstr ""
-#: build/serializers.py:571
+#: build/serializers.py:579
msgid "Remove Allocated Stock"
msgstr ""
-#: build/serializers.py:572
+#: build/serializers.py:580
msgid "Subtract any stock which has already been allocated to this build"
msgstr ""
-#: build/serializers.py:578
+#: build/serializers.py:586
msgid "Remove Incomplete Outputs"
msgstr ""
-#: build/serializers.py:579
+#: build/serializers.py:587
msgid "Delete any build outputs which have not been completed"
msgstr ""
-#: build/serializers.py:606
+#: build/serializers.py:614
msgid "Not permitted"
msgstr ""
-#: build/serializers.py:607
+#: build/serializers.py:615
msgid "Accept as consumed by this build order"
msgstr ""
-#: build/serializers.py:608
+#: build/serializers.py:616
msgid "Deallocate before completing this build order"
msgstr ""
-#: build/serializers.py:631
+#: build/serializers.py:639
msgid "Overallocated Stock"
msgstr ""
-#: build/serializers.py:633
+#: build/serializers.py:641
msgid "How do you want to handle extra stock items assigned to the build order"
msgstr ""
-#: build/serializers.py:643
+#: build/serializers.py:651
msgid "Some stock items have been overallocated"
msgstr ""
-#: build/serializers.py:648
+#: build/serializers.py:656
msgid "Accept Unallocated"
msgstr ""
-#: build/serializers.py:649
+#: build/serializers.py:657
msgid "Accept that stock items have not been fully allocated to this build order"
msgstr ""
-#: build/serializers.py:659 templates/js/translated/build.js:295
+#: build/serializers.py:667 templates/js/translated/build.js:304
msgid "Required stock has not been fully allocated"
msgstr ""
-#: build/serializers.py:664 order/serializers.py:261 order/serializers.py:1127
+#: build/serializers.py:672 order/serializers.py:267 order/serializers.py:1133
msgid "Accept Incomplete"
msgstr ""
-#: build/serializers.py:665
+#: build/serializers.py:673
msgid "Accept that the required number of build outputs have not been completed"
msgstr ""
-#: build/serializers.py:675 templates/js/translated/build.js:299
+#: build/serializers.py:683 templates/js/translated/build.js:308
msgid "Required build quantity has not been completed"
msgstr ""
-#: build/serializers.py:684 templates/js/translated/build.js:283
+#: build/serializers.py:692 templates/js/translated/build.js:292
msgid "Build order has incomplete outputs"
msgstr ""
-#: build/serializers.py:714 build/serializers.py:768 part/models.py:3686
-#: part/models.py:4069
-msgid "BOM Item"
-msgstr ""
-
-#: build/serializers.py:724
-msgid "Build output"
+#: build/serializers.py:722
+msgid "Build Line"
msgstr ""
#: build/serializers.py:732
+msgid "Build output"
+msgstr ""
+
+#: build/serializers.py:740
msgid "Build output must point to the same build"
msgstr ""
-#: build/serializers.py:782
+#: build/serializers.py:776
+msgid "Build Line Item"
+msgstr ""
+
+#: build/serializers.py:790
msgid "bom_item.part must point to the same part as the build order"
msgstr ""
-#: build/serializers.py:797 stock/serializers.py:783
+#: build/serializers.py:805 stock/serializers.py:900
msgid "Item must be in stock"
msgstr ""
-#: build/serializers.py:846 order/serializers.py:1117
+#: build/serializers.py:853 order/serializers.py:1123
#, python-brace-format
msgid "Available quantity ({q}) exceeded"
msgstr ""
-#: build/serializers.py:852
+#: build/serializers.py:859
msgid "Build output must be specified for allocation of tracked parts"
msgstr ""
-#: build/serializers.py:859
+#: build/serializers.py:866
msgid "Build output cannot be specified for allocation of untracked parts"
msgstr ""
-#: build/serializers.py:864
+#: build/serializers.py:871
msgid "This stock item has already been allocated to this build output"
msgstr ""
-#: build/serializers.py:887 order/serializers.py:1401
+#: build/serializers.py:894 order/serializers.py:1407
msgid "Allocation items must be provided"
msgstr ""
-#: build/serializers.py:943
+#: build/serializers.py:947
msgid "Stock location where parts are to be sourced (leave blank to take from any location)"
msgstr ""
-#: build/serializers.py:951
+#: build/serializers.py:955
msgid "Exclude Location"
msgstr ""
-#: build/serializers.py:952
+#: build/serializers.py:956
msgid "Exclude stock items from this selected location"
msgstr ""
-#: build/serializers.py:957
+#: build/serializers.py:961
msgid "Interchangeable Stock"
msgstr ""
-#: build/serializers.py:958
+#: build/serializers.py:962
msgid "Stock items in multiple locations can be used interchangeably"
msgstr ""
-#: build/serializers.py:963
+#: build/serializers.py:967
msgid "Substitute Stock"
msgstr ""
-#: build/serializers.py:964
+#: build/serializers.py:968
msgid "Allow allocation of substitute parts"
msgstr ""
-#: build/serializers.py:969
+#: build/serializers.py:973
msgid "Optional Items"
msgstr ""
-#: build/serializers.py:970
+#: build/serializers.py:974
msgid "Allocate optional BOM items to build order"
msgstr ""
@@ -1540,6 +1589,7 @@ msgstr ""
#: part/templates/part/part_base.html:43
#: stock/templates/stock/item_base.html:41
#: stock/templates/stock/location.html:54
+#: templates/js/translated/filters.js:336
msgid "Barcode actions"
msgstr ""
@@ -1618,69 +1668,67 @@ msgstr ""
msgid "Build Description"
msgstr ""
-#: build/templates/build/build_base.html:117
+#: build/templates/build/build_base.html:118
msgid "No build outputs have been created for this build order"
msgstr ""
-#: build/templates/build/build_base.html:124
+#: build/templates/build/build_base.html:125
msgid "Build Order is ready to mark as completed"
msgstr ""
-#: build/templates/build/build_base.html:129
+#: build/templates/build/build_base.html:130
msgid "Build Order cannot be completed as outstanding outputs remain"
msgstr ""
-#: build/templates/build/build_base.html:134
+#: build/templates/build/build_base.html:135
msgid "Required build quantity has not yet been completed"
msgstr ""
-#: build/templates/build/build_base.html:139
+#: build/templates/build/build_base.html:140
msgid "Stock has not been fully allocated to this Build Order"
msgstr ""
-#: build/templates/build/build_base.html:160
-#: build/templates/build/detail.html:138 order/models.py:240
-#: order/models.py:1099 order/templates/order/order_base.html:190
+#: build/templates/build/build_base.html:161
+#: build/templates/build/detail.html:138 order/models.py:244
+#: order/models.py:1112 order/templates/order/order_base.html:186
#: order/templates/order/return_order_base.html:165
#: order/templates/order/sales_order_base.html:193
#: report/templates/report/inventree_build_order_base.html:125
-#: templates/js/translated/build.js:2945 templates/js/translated/part.js:1802
-#: templates/js/translated/purchase_order.js:1699
-#: templates/js/translated/purchase_order.js:2115
-#: templates/js/translated/return_order.js:335
-#: templates/js/translated/return_order.js:735
-#: templates/js/translated/sales_order.js:823
-#: templates/js/translated/sales_order.js:1847
+#: templates/js/translated/build.js:2162 templates/js/translated/part.js:1801
+#: templates/js/translated/purchase_order.js:1714
+#: templates/js/translated/purchase_order.js:2125
+#: templates/js/translated/return_order.js:347
+#: templates/js/translated/return_order.js:747
+#: templates/js/translated/sales_order.js:835
+#: templates/js/translated/sales_order.js:1859
msgid "Target Date"
msgstr ""
-#: build/templates/build/build_base.html:165
+#: build/templates/build/build_base.html:166
#, python-format
msgid "This build was due on %(target)s"
msgstr ""
-#: build/templates/build/build_base.html:165
-#: build/templates/build/build_base.html:222
-#: order/templates/order/order_base.html:126
+#: build/templates/build/build_base.html:166
+#: build/templates/build/build_base.html:223
+#: order/templates/order/order_base.html:122
#: order/templates/order/return_order_base.html:118
#: order/templates/order/sales_order_base.html:123
-#: templates/js/translated/table_filters.js:68
-#: templates/js/translated/table_filters.js:454
-#: templates/js/translated/table_filters.js:539
-#: templates/js/translated/table_filters.js:580
+#: templates/js/translated/table_filters.js:74
+#: templates/js/translated/table_filters.js:460
+#: templates/js/translated/table_filters.js:561
+#: templates/js/translated/table_filters.js:602
msgid "Overdue"
msgstr ""
-#: build/templates/build/build_base.html:177
-#: build/templates/build/detail.html:67 build/templates/build/detail.html:149
-#: order/templates/order/sales_order_base.html:203
-#: templates/js/translated/table_filters.js:602
-msgid "Completed"
+#: build/templates/build/build_base.html:178
+#: build/templates/build/detail.html:67 build/templates/build/sidebar.html:13
+msgid "Completed Outputs"
msgstr ""
-#: build/templates/build/build_base.html:190
-#: build/templates/build/detail.html:101 order/api.py:1454 order/models.py:1304
-#: order/models.py:1403 order/models.py:1551
+#: build/templates/build/build_base.html:191
+#: build/templates/build/detail.html:101 order/api.py:1454 order/models.py:1317
+#: order/models.py:1416 order/models.py:1564
#: order/templates/order/sales_order_base.html:9
#: order/templates/order/sales_order_base.html:28
#: report/templates/report/inventree_build_order_base.html:135
@@ -1688,32 +1736,32 @@ msgstr ""
#: stock/templates/stock/item_base.html:370
#: templates/email/overdue_sales_order.html:15
#: templates/js/translated/pricing.js:915
-#: templates/js/translated/sales_order.js:757
-#: templates/js/translated/sales_order.js:980
-#: templates/js/translated/stock.js:2661
+#: templates/js/translated/sales_order.js:769
+#: templates/js/translated/sales_order.js:992
+#: templates/js/translated/stock.js:2792
msgid "Sales Order"
msgstr ""
-#: build/templates/build/build_base.html:197
+#: build/templates/build/build_base.html:198
#: build/templates/build/detail.html:115
#: report/templates/report/inventree_build_order_base.html:152
msgid "Issued By"
msgstr ""
-#: build/templates/build/build_base.html:211
-#: build/templates/build/detail.html:94 templates/js/translated/build.js:2862
+#: build/templates/build/build_base.html:212
+#: build/templates/build/detail.html:94 templates/js/translated/build.js:2079
msgid "Priority"
msgstr ""
-#: build/templates/build/build_base.html:273
+#: build/templates/build/build_base.html:274
msgid "Delete Build Order"
msgstr ""
-#: build/templates/build/build_base.html:283
+#: build/templates/build/build_base.html:284
msgid "Build Order QR Code"
msgstr ""
-#: build/templates/build/build_base.html:295
+#: build/templates/build/build_base.html:296
msgid "Link Barcode to Build Order"
msgstr ""
@@ -1729,8 +1777,8 @@ msgstr ""
msgid "Stock can be taken from any available location."
msgstr ""
-#: build/templates/build/detail.html:49 order/models.py:1222
-#: templates/js/translated/purchase_order.js:2157
+#: build/templates/build/detail.html:49 order/models.py:1235
+#: templates/js/translated/purchase_order.js:2167
msgid "Destination"
msgstr ""
@@ -1744,21 +1792,21 @@ msgstr ""
#: build/templates/build/detail.html:80 stock/admin.py:105
#: stock/templates/stock/item_base.html:163
-#: templates/js/translated/build.js:1432
-#: templates/js/translated/model_renderers.js:212
-#: templates/js/translated/purchase_order.js:1244
-#: templates/js/translated/stock.js:1093 templates/js/translated/stock.js:1926
-#: templates/js/translated/stock.js:2866
-#: templates/js/translated/table_filters.js:259
-#: templates/js/translated/table_filters.js:350
+#: templates/js/translated/build.js:1319
+#: templates/js/translated/model_renderers.js:226
+#: templates/js/translated/purchase_order.js:1259
+#: templates/js/translated/stock.js:1092 templates/js/translated/stock.js:2083
+#: templates/js/translated/stock.js:2993
+#: templates/js/translated/table_filters.js:265
+#: templates/js/translated/table_filters.js:356
msgid "Batch"
msgstr ""
#: build/templates/build/detail.html:133
-#: order/templates/order/order_base.html:177
+#: order/templates/order/order_base.html:173
#: order/templates/order/return_order_base.html:152
#: order/templates/order/sales_order_base.html:187
-#: templates/js/translated/build.js:2905
+#: templates/js/translated/build.js:2122
msgid "Created"
msgstr ""
@@ -1766,147 +1814,106 @@ msgstr ""
msgid "No target date set"
msgstr ""
+#: build/templates/build/detail.html:149
+#: order/templates/order/sales_order_base.html:203
+#: templates/js/translated/table_filters.js:624
+msgid "Completed"
+msgstr ""
+
#: build/templates/build/detail.html:153
msgid "Build not complete"
msgstr ""
-#: build/templates/build/detail.html:164 build/templates/build/sidebar.html:19
+#: build/templates/build/detail.html:164 build/templates/build/sidebar.html:17
msgid "Child Build Orders"
msgstr ""
-#: build/templates/build/detail.html:179
+#: build/templates/build/detail.html:177
msgid "Allocate Stock to Build"
msgstr ""
-#: build/templates/build/detail.html:183 templates/js/translated/build.js:2276
-msgid "Unallocate stock"
+#: build/templates/build/detail.html:181
+msgid "Deallocate stock"
+msgstr ""
+
+#: build/templates/build/detail.html:182
+msgid "Deallocate Stock"
msgstr ""
#: build/templates/build/detail.html:184
-msgid "Unallocate Stock"
-msgstr ""
-
-#: build/templates/build/detail.html:186
msgid "Automatically allocate stock to build"
msgstr ""
-#: build/templates/build/detail.html:187
+#: build/templates/build/detail.html:185
msgid "Auto Allocate"
msgstr ""
-#: build/templates/build/detail.html:189
+#: build/templates/build/detail.html:187
msgid "Manually allocate stock to build"
msgstr ""
-#: build/templates/build/detail.html:190 build/templates/build/sidebar.html:8
+#: build/templates/build/detail.html:188 build/templates/build/sidebar.html:8
msgid "Allocate Stock"
msgstr ""
-#: build/templates/build/detail.html:193
+#: build/templates/build/detail.html:191
msgid "Order required parts"
msgstr ""
-#: build/templates/build/detail.html:194
-#: company/templates/company/detail.html:38
-#: company/templates/company/detail.html:86
-#: part/templates/part/category.html:184
-#: templates/js/translated/purchase_order.js:789
+#: build/templates/build/detail.html:192
+#: templates/js/translated/purchase_order.js:800
msgid "Order Parts"
msgstr ""
-#: build/templates/build/detail.html:206
-msgid "Untracked stock has been fully allocated for this Build Order"
-msgstr ""
-
#: build/templates/build/detail.html:210
-msgid "Untracked stock has not been fully allocated for this Build Order"
-msgstr ""
-
-#: build/templates/build/detail.html:217
-msgid "Allocate selected items"
-msgstr ""
-
-#: build/templates/build/detail.html:227
-msgid "This Build Order does not have any associated untracked BOM items"
-msgstr ""
-
-#: build/templates/build/detail.html:236
msgid "Incomplete Build Outputs"
msgstr ""
-#: build/templates/build/detail.html:240
+#: build/templates/build/detail.html:214
msgid "Create new build output"
msgstr ""
-#: build/templates/build/detail.html:241
+#: build/templates/build/detail.html:215
msgid "New Build Output"
msgstr ""
-#: build/templates/build/detail.html:255
-msgid "Output Actions"
-msgstr ""
-
-#: build/templates/build/detail.html:260
-msgid "Complete selected build outputs"
-msgstr ""
-
-#: build/templates/build/detail.html:261
-msgid "Complete outputs"
-msgstr ""
-
-#: build/templates/build/detail.html:265
-msgid "Scrap selected build outputs"
-msgstr ""
-
-#: build/templates/build/detail.html:266
-msgid "Scrap outputs"
-msgstr ""
-
-#: build/templates/build/detail.html:270
-msgid "Delete selected build outputs"
-msgstr ""
-
-#: build/templates/build/detail.html:271
-msgid "Delete outputs"
-msgstr ""
-
-#: build/templates/build/detail.html:288 build/templates/build/sidebar.html:11
+#: build/templates/build/detail.html:232 build/templates/build/sidebar.html:15
msgid "Consumed Stock"
msgstr ""
-#: build/templates/build/detail.html:300
+#: build/templates/build/detail.html:244
msgid "Completed Build Outputs"
msgstr ""
-#: build/templates/build/detail.html:312 build/templates/build/sidebar.html:21
-#: company/templates/company/detail.html:261
-#: company/templates/company/manufacturer_part.html:151
+#: build/templates/build/detail.html:256 build/templates/build/sidebar.html:19
+#: company/templates/company/detail.html:229
+#: company/templates/company/manufacturer_part.html:141
#: company/templates/company/manufacturer_part_sidebar.html:9
-#: company/templates/company/sidebar.html:37
+#: company/templates/company/sidebar.html:39
#: order/templates/order/po_sidebar.html:9
-#: order/templates/order/purchase_order_detail.html:102
-#: order/templates/order/return_order_detail.html:74
+#: order/templates/order/purchase_order_detail.html:84
+#: order/templates/order/return_order_detail.html:70
#: order/templates/order/return_order_sidebar.html:7
-#: order/templates/order/sales_order_detail.html:134
-#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:234
-#: part/templates/part/part_sidebar.html:61 stock/templates/stock/item.html:117
+#: order/templates/order/sales_order_detail.html:124
+#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:217
+#: part/templates/part/part_sidebar.html:61 stock/templates/stock/item.html:109
#: stock/templates/stock/stock_sidebar.html:23
msgid "Attachments"
msgstr ""
-#: build/templates/build/detail.html:327
+#: build/templates/build/detail.html:271
msgid "Build Notes"
msgstr ""
-#: build/templates/build/detail.html:502
+#: build/templates/build/detail.html:425
msgid "Allocation Complete"
msgstr ""
-#: build/templates/build/detail.html:503
-msgid "All untracked stock items have been allocated"
+#: build/templates/build/detail.html:426
+msgid "All lines have been fully allocated"
msgstr ""
-#: build/templates/build/index.html:18 part/templates/part/detail.html:340
+#: build/templates/build/index.html:18 part/templates/part/detail.html:319
msgid "New Build Order"
msgstr ""
@@ -1914,14 +1921,10 @@ msgstr ""
msgid "Build Order Details"
msgstr ""
-#: build/templates/build/sidebar.html:14
+#: build/templates/build/sidebar.html:10
msgid "Incomplete Outputs"
msgstr ""
-#: build/templates/build/sidebar.html:17
-msgid "Completed Outputs"
-msgstr ""
-
#: common/files.py:63
#, python-brace-format
msgid "Unsupported file format: {fmt}"
@@ -1968,16 +1971,6 @@ msgstr ""
msgid "Timestamp of last update"
msgstr ""
-#: common/models.py:104 order/admin.py:17 order/models.py:234
-#: templates/InvenTree/settings/settings_staff_js.html:70
-#: templates/js/translated/purchase_order.js:1670
-#: templates/js/translated/return_order.js:306
-#: templates/js/translated/sales_order.js:794
-#: templates/js/translated/table_filters.js:24
-#: templates/project_code_data.html:6
-msgid "Project Code"
-msgstr ""
-
#: common/models.py:105
msgid "Unique project code"
msgstr ""
@@ -2261,9 +2254,9 @@ msgstr ""
msgid "Copy category parameter templates when creating a part"
msgstr ""
-#: common/models.py:1162 part/admin.py:55 part/models.py:3560
-#: report/models.py:166 templates/js/translated/table_filters.js:109
-#: templates/js/translated/table_filters.js:680
+#: common/models.py:1162 part/admin.py:55 part/models.py:3594
+#: report/models.py:166 templates/js/translated/table_filters.js:115
+#: templates/js/translated/table_filters.js:702
msgid "Template"
msgstr ""
@@ -2271,10 +2264,10 @@ msgstr ""
msgid "Parts are templates by default"
msgstr ""
-#: common/models.py:1169 part/admin.py:51 part/admin.py:283 part/models.py:996
-#: templates/js/translated/bom.js:1598
-#: templates/js/translated/table_filters.js:276
-#: templates/js/translated/table_filters.js:634
+#: common/models.py:1169 part/admin.py:51 part/admin.py:283 part/models.py:997
+#: templates/js/translated/bom.js:1618
+#: templates/js/translated/table_filters.js:282
+#: templates/js/translated/table_filters.js:656
msgid "Assembly"
msgstr ""
@@ -2282,8 +2275,8 @@ msgstr ""
msgid "Parts can be assembled from other components by default"
msgstr ""
-#: common/models.py:1176 part/admin.py:52 part/models.py:1002
-#: templates/js/translated/table_filters.js:642
+#: common/models.py:1176 part/admin.py:52 part/models.py:1003
+#: templates/js/translated/table_filters.js:664
msgid "Component"
msgstr ""
@@ -2291,7 +2284,7 @@ msgstr ""
msgid "Parts can be used as sub-components by default"
msgstr ""
-#: common/models.py:1183 part/admin.py:53 part/models.py:1013
+#: common/models.py:1183 part/admin.py:53 part/models.py:1014
msgid "Purchaseable"
msgstr ""
@@ -2299,8 +2292,8 @@ msgstr ""
msgid "Parts are purchaseable by default"
msgstr ""
-#: common/models.py:1190 part/admin.py:54 part/models.py:1018
-#: templates/js/translated/table_filters.js:668
+#: common/models.py:1190 part/admin.py:54 part/models.py:1019
+#: templates/js/translated/table_filters.js:690
msgid "Salable"
msgstr ""
@@ -2308,10 +2301,10 @@ msgstr ""
msgid "Parts are salable by default"
msgstr ""
-#: common/models.py:1197 part/admin.py:56 part/models.py:1008
-#: templates/js/translated/table_filters.js:117
-#: templates/js/translated/table_filters.js:193
-#: templates/js/translated/table_filters.js:684
+#: common/models.py:1197 part/admin.py:56 part/models.py:1009
+#: templates/js/translated/table_filters.js:123
+#: templates/js/translated/table_filters.js:199
+#: templates/js/translated/table_filters.js:706
msgid "Trackable"
msgstr ""
@@ -2319,10 +2312,10 @@ msgstr ""
msgid "Parts are trackable by default"
msgstr ""
-#: common/models.py:1204 part/admin.py:57 part/models.py:1028
+#: common/models.py:1204 part/admin.py:57 part/models.py:1029
#: part/templates/part/part_base.html:156
-#: templates/js/translated/table_filters.js:113
-#: templates/js/translated/table_filters.js:688
+#: templates/js/translated/table_filters.js:119
+#: templates/js/translated/table_filters.js:710
msgid "Virtual"
msgstr ""
@@ -2354,7 +2347,7 @@ msgstr ""
msgid "Allow creation of initial stock when adding a new part"
msgstr ""
-#: common/models.py:1232 templates/js/translated/part.js:108
+#: common/models.py:1232 templates/js/translated/part.js:107
msgid "Initial Supplier Data"
msgstr ""
@@ -2603,179 +2596,179 @@ msgid "Stock location default icon (empty means no icon)"
msgstr ""
#: common/models.py:1471
-msgid "Build Order Reference Pattern"
+msgid "Show Installed Stock Items"
msgstr ""
#: common/models.py:1472
-msgid "Required pattern for generating Build Order reference field"
+msgid "Display installed stock items in stock tables"
msgstr ""
#: common/models.py:1478
-msgid "Enable Return Orders"
+msgid "Build Order Reference Pattern"
msgstr ""
#: common/models.py:1479
-msgid "Enable return order functionality in the user interface"
+msgid "Required pattern for generating Build Order reference field"
msgstr ""
#: common/models.py:1485
-msgid "Return Order Reference Pattern"
+msgid "Enable Return Orders"
msgstr ""
#: common/models.py:1486
-msgid "Required pattern for generating Return Order reference field"
+msgid "Enable return order functionality in the user interface"
msgstr ""
#: common/models.py:1492
-msgid "Edit Completed Return Orders"
+msgid "Return Order Reference Pattern"
msgstr ""
#: common/models.py:1493
-msgid "Allow editing of return orders after they have been completed"
+msgid "Required pattern for generating Return Order reference field"
msgstr ""
#: common/models.py:1499
-msgid "Sales Order Reference Pattern"
+msgid "Edit Completed Return Orders"
msgstr ""
#: common/models.py:1500
-msgid "Required pattern for generating Sales Order reference field"
+msgid "Allow editing of return orders after they have been completed"
msgstr ""
#: common/models.py:1506
-msgid "Sales Order Default Shipment"
+msgid "Sales Order Reference Pattern"
msgstr ""
#: common/models.py:1507
-msgid "Enable creation of default shipment with sales orders"
+msgid "Required pattern for generating Sales Order reference field"
msgstr ""
#: common/models.py:1513
-msgid "Edit Completed Sales Orders"
+msgid "Sales Order Default Shipment"
msgstr ""
#: common/models.py:1514
-msgid "Allow editing of sales orders after they have been shipped or completed"
+msgid "Enable creation of default shipment with sales orders"
msgstr ""
#: common/models.py:1520
-msgid "Purchase Order Reference Pattern"
+msgid "Edit Completed Sales Orders"
msgstr ""
#: common/models.py:1521
-msgid "Required pattern for generating Purchase Order reference field"
+msgid "Allow editing of sales orders after they have been shipped or completed"
msgstr ""
#: common/models.py:1527
-msgid "Edit Completed Purchase Orders"
+msgid "Purchase Order Reference Pattern"
msgstr ""
#: common/models.py:1528
-msgid "Allow editing of purchase orders after they have been shipped or completed"
+msgid "Required pattern for generating Purchase Order reference field"
+msgstr ""
+
+#: common/models.py:1534
+msgid "Edit Completed Purchase Orders"
msgstr ""
#: common/models.py:1535
-msgid "Enable password forgot"
-msgstr ""
-
-#: common/models.py:1536
-msgid "Enable password forgot function on the login pages"
+msgid "Allow editing of purchase orders after they have been shipped or completed"
msgstr ""
#: common/models.py:1542
-msgid "Enable registration"
+msgid "Enable password forgot"
msgstr ""
#: common/models.py:1543
-msgid "Enable self-registration for users on the login pages"
+msgid "Enable password forgot function on the login pages"
msgstr ""
#: common/models.py:1549
-msgid "Enable SSO"
+msgid "Enable registration"
msgstr ""
#: common/models.py:1550
-msgid "Enable SSO on the login pages"
+msgid "Enable self-registration for users on the login pages"
msgstr ""
#: common/models.py:1556
-msgid "Enable SSO registration"
+msgid "Enable SSO"
msgstr ""
#: common/models.py:1557
-msgid "Enable self-registration via SSO for users on the login pages"
+msgid "Enable SSO on the login pages"
msgstr ""
#: common/models.py:1563
-msgid "Email required"
+msgid "Enable SSO registration"
msgstr ""
#: common/models.py:1564
-msgid "Require user to supply mail on signup"
+msgid "Enable self-registration via SSO for users on the login pages"
msgstr ""
#: common/models.py:1570
-msgid "Auto-fill SSO users"
+msgid "Email required"
msgstr ""
#: common/models.py:1571
-msgid "Automatically fill out user-details from SSO account-data"
+msgid "Require user to supply mail on signup"
msgstr ""
#: common/models.py:1577
-msgid "Mail twice"
+msgid "Auto-fill SSO users"
msgstr ""
#: common/models.py:1578
-msgid "On signup ask users twice for their mail"
+msgid "Automatically fill out user-details from SSO account-data"
msgstr ""
#: common/models.py:1584
-msgid "Password twice"
+msgid "Mail twice"
msgstr ""
#: common/models.py:1585
-msgid "On signup ask users twice for their password"
+msgid "On signup ask users twice for their mail"
msgstr ""
#: common/models.py:1591
-msgid "Allowed domains"
+msgid "Password twice"
msgstr ""
#: common/models.py:1592
-msgid "Restrict signup to certain domains (comma-separated, starting with @)"
+msgid "On signup ask users twice for their password"
msgstr ""
#: common/models.py:1598
-msgid "Group on signup"
+msgid "Allowed domains"
msgstr ""
#: common/models.py:1599
-msgid "Group to which new users are assigned on registration"
+msgid "Restrict signup to certain domains (comma-separated, starting with @)"
msgstr ""
#: common/models.py:1605
-msgid "Enforce MFA"
+msgid "Group on signup"
msgstr ""
#: common/models.py:1606
-msgid "Users must use multifactor security."
+msgid "Group to which new users are assigned on registration"
msgstr ""
#: common/models.py:1612
-msgid "Check plugins on startup"
+msgid "Enforce MFA"
msgstr ""
#: common/models.py:1613
-msgid "Check that all plugins are installed on startup - enable in container environments"
+msgid "Users must use multifactor security."
+msgstr ""
+
+#: common/models.py:1619
+msgid "Check plugins on startup"
msgstr ""
#: common/models.py:1620
-msgid "Check plugin signatures"
-msgstr ""
-
-#: common/models.py:1621
-msgid "Check and show signatures for plugins"
+msgid "Check that all plugins are installed on startup - enable in container environments"
msgstr ""
#: common/models.py:1628
@@ -2850,7 +2843,7 @@ msgstr ""
msgid "Stocktake reports will be deleted after specified number of days"
msgstr ""
-#: common/models.py:1710 common/models.py:2147
+#: common/models.py:1710 common/models.py:2133
msgid "Settings key (must be unique - case insensitive"
msgstr ""
@@ -2891,528 +2884,513 @@ msgid "Show latest parts on the homepage"
msgstr ""
#: common/models.py:1779
-msgid "Recent Part Count"
-msgstr ""
-
-#: common/models.py:1780
-msgid "Number of recent parts to display on index page"
-msgstr ""
-
-#: common/models.py:1786
msgid "Show unvalidated BOMs"
msgstr ""
-#: common/models.py:1787
+#: common/models.py:1780
msgid "Show BOMs that await validation on the homepage"
msgstr ""
-#: common/models.py:1793
+#: common/models.py:1786
msgid "Show recent stock changes"
msgstr ""
-#: common/models.py:1794
+#: common/models.py:1787
msgid "Show recently changed stock items on the homepage"
msgstr ""
-#: common/models.py:1800
-msgid "Recent Stock Count"
-msgstr ""
-
-#: common/models.py:1801
-msgid "Number of recent stock items to display on index page"
-msgstr ""
-
-#: common/models.py:1807
+#: common/models.py:1793
msgid "Show low stock"
msgstr ""
-#: common/models.py:1808
+#: common/models.py:1794
msgid "Show low stock items on the homepage"
msgstr ""
-#: common/models.py:1814
+#: common/models.py:1800
msgid "Show depleted stock"
msgstr ""
-#: common/models.py:1815
+#: common/models.py:1801
msgid "Show depleted stock items on the homepage"
msgstr ""
-#: common/models.py:1821
+#: common/models.py:1807
msgid "Show needed stock"
msgstr ""
-#: common/models.py:1822
+#: common/models.py:1808
msgid "Show stock items needed for builds on the homepage"
msgstr ""
-#: common/models.py:1828
+#: common/models.py:1814
msgid "Show expired stock"
msgstr ""
-#: common/models.py:1829
+#: common/models.py:1815
msgid "Show expired stock items on the homepage"
msgstr ""
-#: common/models.py:1835
+#: common/models.py:1821
msgid "Show stale stock"
msgstr ""
-#: common/models.py:1836
+#: common/models.py:1822
msgid "Show stale stock items on the homepage"
msgstr ""
-#: common/models.py:1842
+#: common/models.py:1828
msgid "Show pending builds"
msgstr ""
-#: common/models.py:1843
+#: common/models.py:1829
msgid "Show pending builds on the homepage"
msgstr ""
-#: common/models.py:1849
+#: common/models.py:1835
msgid "Show overdue builds"
msgstr ""
-#: common/models.py:1850
+#: common/models.py:1836
msgid "Show overdue builds on the homepage"
msgstr ""
-#: common/models.py:1856
+#: common/models.py:1842
msgid "Show outstanding POs"
msgstr ""
-#: common/models.py:1857
+#: common/models.py:1843
msgid "Show outstanding POs on the homepage"
msgstr ""
-#: common/models.py:1863
+#: common/models.py:1849
msgid "Show overdue POs"
msgstr ""
-#: common/models.py:1864
+#: common/models.py:1850
msgid "Show overdue POs on the homepage"
msgstr ""
-#: common/models.py:1870
+#: common/models.py:1856
msgid "Show outstanding SOs"
msgstr ""
-#: common/models.py:1871
+#: common/models.py:1857
msgid "Show outstanding SOs on the homepage"
msgstr ""
-#: common/models.py:1877
+#: common/models.py:1863
msgid "Show overdue SOs"
msgstr ""
-#: common/models.py:1878
+#: common/models.py:1864
msgid "Show overdue SOs on the homepage"
msgstr ""
-#: common/models.py:1884
+#: common/models.py:1870
msgid "Show pending SO shipments"
msgstr ""
-#: common/models.py:1885
+#: common/models.py:1871
msgid "Show pending SO shipments on the homepage"
msgstr ""
-#: common/models.py:1891
+#: common/models.py:1877
msgid "Show News"
msgstr ""
-#: common/models.py:1892
+#: common/models.py:1878
msgid "Show news on the homepage"
msgstr ""
-#: common/models.py:1898
+#: common/models.py:1884
msgid "Inline label display"
msgstr ""
-#: common/models.py:1899
+#: common/models.py:1885
msgid "Display PDF labels in the browser, instead of downloading as a file"
msgstr ""
-#: common/models.py:1905
+#: common/models.py:1891
msgid "Default label printer"
msgstr ""
-#: common/models.py:1906
+#: common/models.py:1892
msgid "Configure which label printer should be selected by default"
msgstr ""
-#: common/models.py:1912
+#: common/models.py:1898
msgid "Inline report display"
msgstr ""
-#: common/models.py:1913
+#: common/models.py:1899
msgid "Display PDF reports in the browser, instead of downloading as a file"
msgstr ""
-#: common/models.py:1919
+#: common/models.py:1905
msgid "Search Parts"
msgstr ""
-#: common/models.py:1920
+#: common/models.py:1906
msgid "Display parts in search preview window"
msgstr ""
-#: common/models.py:1926
+#: common/models.py:1912
msgid "Search Supplier Parts"
msgstr ""
-#: common/models.py:1927
+#: common/models.py:1913
msgid "Display supplier parts in search preview window"
msgstr ""
-#: common/models.py:1933
+#: common/models.py:1919
msgid "Search Manufacturer Parts"
msgstr ""
-#: common/models.py:1934
+#: common/models.py:1920
msgid "Display manufacturer parts in search preview window"
msgstr ""
-#: common/models.py:1940
+#: common/models.py:1926
msgid "Hide Inactive Parts"
msgstr ""
-#: common/models.py:1941
+#: common/models.py:1927
msgid "Excluded inactive parts from search preview window"
msgstr ""
-#: common/models.py:1947
+#: common/models.py:1933
msgid "Search Categories"
msgstr ""
-#: common/models.py:1948
+#: common/models.py:1934
msgid "Display part categories in search preview window"
msgstr ""
-#: common/models.py:1954
+#: common/models.py:1940
msgid "Search Stock"
msgstr ""
-#: common/models.py:1955
+#: common/models.py:1941
msgid "Display stock items in search preview window"
msgstr ""
-#: common/models.py:1961
+#: common/models.py:1947
msgid "Hide Unavailable Stock Items"
msgstr ""
-#: common/models.py:1962
+#: common/models.py:1948
msgid "Exclude stock items which are not available from the search preview window"
msgstr ""
-#: common/models.py:1968
+#: common/models.py:1954
msgid "Search Locations"
msgstr ""
-#: common/models.py:1969
+#: common/models.py:1955
msgid "Display stock locations in search preview window"
msgstr ""
-#: common/models.py:1975
+#: common/models.py:1961
msgid "Search Companies"
msgstr ""
-#: common/models.py:1976
+#: common/models.py:1962
msgid "Display companies in search preview window"
msgstr ""
-#: common/models.py:1982
+#: common/models.py:1968
msgid "Search Build Orders"
msgstr ""
-#: common/models.py:1983
+#: common/models.py:1969
msgid "Display build orders in search preview window"
msgstr ""
-#: common/models.py:1989
+#: common/models.py:1975
msgid "Search Purchase Orders"
msgstr ""
-#: common/models.py:1990
+#: common/models.py:1976
msgid "Display purchase orders in search preview window"
msgstr ""
-#: common/models.py:1996
+#: common/models.py:1982
msgid "Exclude Inactive Purchase Orders"
msgstr ""
-#: common/models.py:1997
+#: common/models.py:1983
msgid "Exclude inactive purchase orders from search preview window"
msgstr ""
-#: common/models.py:2003
+#: common/models.py:1989
msgid "Search Sales Orders"
msgstr ""
-#: common/models.py:2004
+#: common/models.py:1990
msgid "Display sales orders in search preview window"
msgstr ""
-#: common/models.py:2010
+#: common/models.py:1996
msgid "Exclude Inactive Sales Orders"
msgstr ""
-#: common/models.py:2011
+#: common/models.py:1997
msgid "Exclude inactive sales orders from search preview window"
msgstr ""
-#: common/models.py:2017
+#: common/models.py:2003
msgid "Search Return Orders"
msgstr ""
-#: common/models.py:2018
+#: common/models.py:2004
msgid "Display return orders in search preview window"
msgstr ""
-#: common/models.py:2024
+#: common/models.py:2010
msgid "Exclude Inactive Return Orders"
msgstr ""
-#: common/models.py:2025
+#: common/models.py:2011
msgid "Exclude inactive return orders from search preview window"
msgstr ""
-#: common/models.py:2031
+#: common/models.py:2017
msgid "Search Preview Results"
msgstr ""
-#: common/models.py:2032
+#: common/models.py:2018
msgid "Number of results to show in each section of the search preview window"
msgstr ""
-#: common/models.py:2038
+#: common/models.py:2024
msgid "Regex Search"
msgstr ""
-#: common/models.py:2039
+#: common/models.py:2025
msgid "Enable regular expressions in search queries"
msgstr ""
-#: common/models.py:2045
+#: common/models.py:2031
msgid "Whole Word Search"
msgstr ""
-#: common/models.py:2046
+#: common/models.py:2032
msgid "Search queries return results for whole word matches"
msgstr ""
-#: common/models.py:2052
+#: common/models.py:2038
msgid "Show Quantity in Forms"
msgstr ""
-#: common/models.py:2053
+#: common/models.py:2039
msgid "Display available part quantity in some forms"
msgstr ""
-#: common/models.py:2059
+#: common/models.py:2045
msgid "Escape Key Closes Forms"
msgstr ""
-#: common/models.py:2060
+#: common/models.py:2046
msgid "Use the escape key to close modal forms"
msgstr ""
-#: common/models.py:2066
+#: common/models.py:2052
msgid "Fixed Navbar"
msgstr ""
-#: common/models.py:2067
+#: common/models.py:2053
msgid "The navbar position is fixed to the top of the screen"
msgstr ""
-#: common/models.py:2073
+#: common/models.py:2059
msgid "Date Format"
msgstr ""
-#: common/models.py:2074
+#: common/models.py:2060
msgid "Preferred format for displaying dates"
msgstr ""
-#: common/models.py:2088 part/templates/part/detail.html:41
+#: common/models.py:2074 part/templates/part/detail.html:41
msgid "Part Scheduling"
msgstr ""
-#: common/models.py:2089
+#: common/models.py:2075
msgid "Display part scheduling information"
msgstr ""
-#: common/models.py:2095 part/templates/part/detail.html:62
+#: common/models.py:2081 part/templates/part/detail.html:62
msgid "Part Stocktake"
msgstr ""
-#: common/models.py:2096
+#: common/models.py:2082
msgid "Display part stocktake information (if stocktake functionality is enabled)"
msgstr ""
-#: common/models.py:2102
+#: common/models.py:2088
msgid "Table String Length"
msgstr ""
-#: common/models.py:2103
+#: common/models.py:2089
msgid "Maximimum length limit for strings displayed in table views"
msgstr ""
-#: common/models.py:2112
+#: common/models.py:2098
msgid "Default part label template"
msgstr ""
-#: common/models.py:2113
+#: common/models.py:2099
msgid "The part label template to be automatically selected"
msgstr ""
-#: common/models.py:2121
+#: common/models.py:2107
msgid "Default stock item template"
msgstr ""
-#: common/models.py:2122
+#: common/models.py:2108
msgid "The stock item label template to be automatically selected"
msgstr ""
-#: common/models.py:2130
+#: common/models.py:2116
msgid "Default stock location label template"
msgstr ""
-#: common/models.py:2131
+#: common/models.py:2117
msgid "The stock location label template to be automatically selected"
msgstr ""
-#: common/models.py:2177
+#: common/models.py:2163
msgid "Price break quantity"
msgstr ""
-#: common/models.py:2184 company/serializers.py:434 order/admin.py:43
-#: order/models.py:1132 order/models.py:1939
-#: templates/js/translated/company.js:1433 templates/js/translated/part.js:1856
+#: common/models.py:2170 company/serializers.py:491 order/admin.py:43
+#: order/models.py:1145 order/models.py:1952
+#: templates/js/translated/company.js:1854 templates/js/translated/part.js:1855
#: templates/js/translated/pricing.js:621
-#: templates/js/translated/return_order.js:725
+#: templates/js/translated/return_order.js:737
msgid "Price"
msgstr ""
-#: common/models.py:2185
+#: common/models.py:2171
msgid "Unit price at specified quantity"
msgstr ""
-#: common/models.py:2345 common/models.py:2523
+#: common/models.py:2331 common/models.py:2509
msgid "Endpoint"
msgstr ""
-#: common/models.py:2346
+#: common/models.py:2332
msgid "Endpoint at which this webhook is received"
msgstr ""
-#: common/models.py:2355
+#: common/models.py:2341
msgid "Name for this webhook"
msgstr ""
-#: common/models.py:2360 part/admin.py:50 part/models.py:1023
-#: plugin/models.py:47 templates/js/translated/table_filters.js:105
-#: templates/js/translated/table_filters.js:189
-#: templates/js/translated/table_filters.js:434
-#: templates/js/translated/table_filters.js:450
-#: templates/js/translated/table_filters.js:629
+#: common/models.py:2346 part/admin.py:50 part/models.py:1024
+#: plugin/models.py:48 templates/js/translated/table_filters.js:111
+#: templates/js/translated/table_filters.js:195
+#: templates/js/translated/table_filters.js:440
+#: templates/js/translated/table_filters.js:456
+#: templates/js/translated/table_filters.js:651
msgid "Active"
msgstr ""
-#: common/models.py:2361
+#: common/models.py:2347
msgid "Is this webhook active"
msgstr ""
-#: common/models.py:2375
+#: common/models.py:2361
msgid "Token"
msgstr ""
-#: common/models.py:2376
+#: common/models.py:2362
msgid "Token for access"
msgstr ""
-#: common/models.py:2383
+#: common/models.py:2369
msgid "Secret"
msgstr ""
-#: common/models.py:2384
+#: common/models.py:2370
msgid "Shared secret for HMAC"
msgstr ""
-#: common/models.py:2490
+#: common/models.py:2476
msgid "Message ID"
msgstr ""
-#: common/models.py:2491
+#: common/models.py:2477
msgid "Unique identifier for this message"
msgstr ""
-#: common/models.py:2499
+#: common/models.py:2485
msgid "Host"
msgstr ""
-#: common/models.py:2500
+#: common/models.py:2486
msgid "Host from which this message was received"
msgstr ""
-#: common/models.py:2507
+#: common/models.py:2493
msgid "Header"
msgstr ""
-#: common/models.py:2508
+#: common/models.py:2494
msgid "Header of this message"
msgstr ""
-#: common/models.py:2514
+#: common/models.py:2500
msgid "Body"
msgstr ""
-#: common/models.py:2515
+#: common/models.py:2501
msgid "Body of this message"
msgstr ""
-#: common/models.py:2524
+#: common/models.py:2510
msgid "Endpoint on which this message was received"
msgstr ""
-#: common/models.py:2529
+#: common/models.py:2515
msgid "Worked on"
msgstr ""
-#: common/models.py:2530
+#: common/models.py:2516
msgid "Was the work on this message finished?"
msgstr ""
-#: common/models.py:2684
+#: common/models.py:2670
msgid "Id"
msgstr ""
-#: common/models.py:2690 templates/js/translated/news.js:44
+#: common/models.py:2676 templates/js/translated/company.js:996
+#: templates/js/translated/news.js:44
msgid "Title"
msgstr ""
-#: common/models.py:2700 templates/js/translated/news.js:60
+#: common/models.py:2686 templates/js/translated/news.js:60
msgid "Published"
msgstr ""
-#: common/models.py:2705 templates/InvenTree/settings/plugin_settings.html:32
+#: common/models.py:2691 templates/InvenTree/settings/plugin_settings.html:32
#: templates/js/translated/news.js:56 templates/js/translated/plugin.js:106
msgid "Author"
msgstr ""
-#: common/models.py:2710 templates/js/translated/news.js:52
+#: common/models.py:2696 templates/js/translated/news.js:52
msgid "Summary"
msgstr ""
-#: common/models.py:2715
+#: common/models.py:2701
msgid "Read"
msgstr ""
-#: common/models.py:2716
+#: common/models.py:2702
msgid "Was this news item read?"
msgstr ""
-#: common/models.py:2736 company/models.py:143 part/models.py:914
+#: common/models.py:2722 company/models.py:139 part/models.py:915
#: report/templates/report/inventree_bill_of_materials_report.html:126
#: report/templates/report/inventree_bill_of_materials_report.html:148
#: report/templates/report/inventree_return_order_report_base.html:35
@@ -3422,7 +3400,7 @@ msgstr ""
msgid "Image"
msgstr ""
-#: common/models.py:2737
+#: common/models.py:2723
msgid "Image file"
msgstr ""
@@ -3499,7 +3477,7 @@ msgstr ""
#: company/models.py:113 company/templates/company/company_base.html:101
#: templates/InvenTree/settings/plugin_settings.html:54
-#: templates/js/translated/company.js:514
+#: templates/js/translated/company.js:521
msgid "Website"
msgstr ""
@@ -3507,303 +3485,387 @@ msgstr ""
msgid "Company website URL"
msgstr ""
-#: company/models.py:118 company/templates/company/company_base.html:119
-msgid "Address"
-msgstr ""
-
-#: company/models.py:119
-msgid "Company address"
-msgstr ""
-
-#: company/models.py:122
+#: company/models.py:118
msgid "Phone number"
msgstr ""
-#: company/models.py:123
+#: company/models.py:119
msgid "Contact phone number"
msgstr ""
-#: company/models.py:126 company/templates/company/company_base.html:133
+#: company/models.py:122 company/templates/company/company_base.html:133
#: templates/InvenTree/settings/user.html:49
-#: templates/js/translated/company.js:659
+#: templates/js/translated/company.js:666
msgid "Email"
msgstr ""
-#: company/models.py:126
+#: company/models.py:122
msgid "Contact email address"
msgstr ""
-#: company/models.py:129 company/templates/company/company_base.html:140
-#: order/models.py:266 order/templates/order/order_base.html:207
+#: company/models.py:125 company/templates/company/company_base.html:140
+#: order/models.py:270 order/templates/order/order_base.html:203
#: order/templates/order/return_order_base.html:175
#: order/templates/order/sales_order_base.html:215
msgid "Contact"
msgstr ""
-#: company/models.py:130
+#: company/models.py:126
msgid "Point of contact"
msgstr ""
-#: company/models.py:132
+#: company/models.py:128
msgid "Link to external company information"
msgstr ""
-#: company/models.py:146
+#: company/models.py:142
msgid "is customer"
msgstr ""
-#: company/models.py:146
+#: company/models.py:142
msgid "Do you sell items to this company?"
msgstr ""
-#: company/models.py:148
+#: company/models.py:144
msgid "is supplier"
msgstr ""
-#: company/models.py:148
+#: company/models.py:144
msgid "Do you purchase items from this company?"
msgstr ""
-#: company/models.py:150
+#: company/models.py:146
msgid "is manufacturer"
msgstr ""
-#: company/models.py:150
+#: company/models.py:146
msgid "Does this company manufacture parts?"
msgstr ""
-#: company/models.py:157
+#: company/models.py:153
msgid "Default currency used for this company"
msgstr ""
-#: company/models.py:223 company/templates/company/company_base.html:8
+#: company/models.py:235 company/models.py:328
+#: company/templates/company/company_base.html:8
#: company/templates/company/company_base.html:12
-#: templates/InvenTree/search.html:178 templates/js/translated/company.js:487
+#: templates/InvenTree/search.html:178 templates/js/translated/company.js:494
msgid "Company"
msgstr ""
-#: company/models.py:278 company/models.py:553 stock/models.py:675
-#: stock/serializers.py:155 stock/templates/stock/item_base.html:143
-#: templates/js/translated/bom.js:621
+#: company/models.py:324
+msgid "Company already has a primary address"
+msgstr ""
+
+#: company/models.py:329
+msgid "Select company"
+msgstr ""
+
+#: company/models.py:332
+msgid "Address title"
+msgstr ""
+
+#: company/models.py:333
+msgid "Title describing the address entry"
+msgstr ""
+
+#: company/models.py:337
+msgid "Primary address"
+msgstr ""
+
+#: company/models.py:338
+msgid "Set as primary address"
+msgstr ""
+
+#: company/models.py:341 templates/js/translated/company.js:941
+#: templates/js/translated/company.js:1002
+msgid "Line 1"
+msgstr ""
+
+#: company/models.py:342
+msgid "Address line 1"
+msgstr ""
+
+#: company/models.py:346 templates/js/translated/company.js:942
+#: templates/js/translated/company.js:1008
+msgid "Line 2"
+msgstr ""
+
+#: company/models.py:347
+msgid "Address line 2"
+msgstr ""
+
+#: company/models.py:351 company/models.py:352
+#: templates/js/translated/company.js:1014
+msgid "Postal code"
+msgstr ""
+
+#: company/models.py:356
+msgid "City/Region"
+msgstr ""
+
+#: company/models.py:357
+msgid "Postal code city/region"
+msgstr ""
+
+#: company/models.py:361
+msgid "State/Province"
+msgstr ""
+
+#: company/models.py:362
+msgid "State or province"
+msgstr ""
+
+#: company/models.py:366 templates/js/translated/company.js:1032
+msgid "Country"
+msgstr ""
+
+#: company/models.py:367
+msgid "Address country"
+msgstr ""
+
+#: company/models.py:371
+msgid "Courier shipping notes"
+msgstr ""
+
+#: company/models.py:372
+msgid "Notes for shipping courier"
+msgstr ""
+
+#: company/models.py:376
+msgid "Internal shipping notes"
+msgstr ""
+
+#: company/models.py:377
+msgid "Shipping notes for internal use"
+msgstr ""
+
+#: company/models.py:382
+msgid "Link to address information (external)"
+msgstr ""
+
+#: company/models.py:427 company/models.py:702 stock/models.py:675
+#: stock/serializers.py:204 stock/templates/stock/item_base.html:143
+#: templates/js/translated/bom.js:622
msgid "Base Part"
msgstr ""
-#: company/models.py:282 company/models.py:557
+#: company/models.py:431 company/models.py:706
msgid "Select part"
msgstr ""
-#: company/models.py:293 company/templates/company/company_base.html:77
+#: company/models.py:442 company/templates/company/company_base.html:77
#: company/templates/company/manufacturer_part.html:90
-#: company/templates/company/supplier_part.html:146 part/serializers.py:354
+#: company/templates/company/supplier_part.html:146 part/serializers.py:404
#: stock/templates/stock/item_base.html:208
-#: templates/js/translated/company.js:498
-#: templates/js/translated/company.js:824
-#: templates/js/translated/company.js:954
-#: templates/js/translated/company.js:1221
-#: templates/js/translated/table_filters.js:709
+#: templates/js/translated/company.js:505
+#: templates/js/translated/company.js:1149
+#: templates/js/translated/company.js:1327
+#: templates/js/translated/company.js:1642
+#: templates/js/translated/table_filters.js:731
msgid "Manufacturer"
msgstr ""
-#: company/models.py:294
+#: company/models.py:443
msgid "Select manufacturer"
msgstr ""
-#: company/models.py:300 company/templates/company/manufacturer_part.html:101
-#: company/templates/company/supplier_part.html:154 part/serializers.py:360
-#: templates/js/translated/company.js:340
-#: templates/js/translated/company.js:823
-#: templates/js/translated/company.js:970
-#: templates/js/translated/company.js:1240 templates/js/translated/part.js:1773
-#: templates/js/translated/purchase_order.js:1814
-#: templates/js/translated/purchase_order.js:2021
+#: company/models.py:449 company/templates/company/manufacturer_part.html:101
+#: company/templates/company/supplier_part.html:154 part/serializers.py:410
+#: templates/js/translated/company.js:350
+#: templates/js/translated/company.js:1148
+#: templates/js/translated/company.js:1343
+#: templates/js/translated/company.js:1661 templates/js/translated/part.js:1772
+#: templates/js/translated/purchase_order.js:1829
+#: templates/js/translated/purchase_order.js:2031
msgid "MPN"
msgstr ""
-#: company/models.py:301
+#: company/models.py:450
msgid "Manufacturer Part Number"
msgstr ""
-#: company/models.py:307
+#: company/models.py:456
msgid "URL for external manufacturer part link"
msgstr ""
-#: company/models.py:313
+#: company/models.py:462
msgid "Manufacturer part description"
msgstr ""
-#: company/models.py:360 company/models.py:384 company/models.py:578
+#: company/models.py:509 company/models.py:533 company/models.py:727
#: company/templates/company/manufacturer_part.html:7
#: company/templates/company/manufacturer_part.html:24
#: stock/templates/stock/item_base.html:218
msgid "Manufacturer Part"
msgstr ""
-#: company/models.py:391
+#: company/models.py:540
msgid "Parameter name"
msgstr ""
-#: company/models.py:397
+#: company/models.py:546
#: report/templates/report/inventree_test_report_base.html:104
-#: stock/models.py:2255 templates/js/translated/company.js:872
-#: templates/js/translated/company.js:1077 templates/js/translated/part.js:1465
-#: templates/js/translated/stock.js:1446
+#: stock/models.py:2255 templates/js/translated/company.js:1197
+#: templates/js/translated/company.js:1450 templates/js/translated/part.js:1464
+#: templates/js/translated/stock.js:1445
msgid "Value"
msgstr ""
-#: company/models.py:398
+#: company/models.py:547
msgid "Parameter value"
msgstr ""
-#: company/models.py:404 company/templates/company/supplier_part.html:169
-#: part/admin.py:40 part/models.py:987 part/models.py:3407
+#: company/models.py:553 company/templates/company/supplier_part.html:169
+#: part/admin.py:40 part/models.py:988 part/models.py:3441
#: part/templates/part/part_base.html:286
-#: templates/js/translated/company.js:1083 templates/js/translated/part.js:1484
-#: templates/js/translated/part.js:1588 templates/js/translated/part.js:2262
+#: templates/js/translated/company.js:1456 templates/js/translated/part.js:1483
+#: templates/js/translated/part.js:1587 templates/js/translated/part.js:2338
msgid "Units"
msgstr ""
-#: company/models.py:405
+#: company/models.py:554
msgid "Parameter units"
msgstr ""
-#: company/models.py:498
+#: company/models.py:647
msgid "Pack units must be compatible with the base part units"
msgstr ""
-#: company/models.py:504
+#: company/models.py:653
msgid "Pack units must be greater than zero"
msgstr ""
-#: company/models.py:520
+#: company/models.py:669
msgid "Linked manufacturer part must reference the same base part"
msgstr ""
-#: company/models.py:564 company/templates/company/company_base.html:82
-#: company/templates/company/supplier_part.html:130 order/models.py:382
-#: order/templates/order/order_base.html:140 part/bom.py:285 part/bom.py:313
-#: part/serializers.py:343 stock/templates/stock/item_base.html:225
+#: company/models.py:713 company/templates/company/company_base.html:82
+#: company/templates/company/supplier_part.html:130 order/models.py:395
+#: order/templates/order/order_base.html:136 part/bom.py:285 part/bom.py:313
+#: part/serializers.py:393 stock/templates/stock/item_base.html:225
#: templates/email/overdue_purchase_order.html:16
-#: templates/js/translated/company.js:339
-#: templates/js/translated/company.js:502
-#: templates/js/translated/company.js:1194 templates/js/translated/part.js:1741
+#: templates/js/translated/company.js:349
+#: templates/js/translated/company.js:509
+#: templates/js/translated/company.js:1615 templates/js/translated/part.js:1740
#: templates/js/translated/pricing.js:498
-#: templates/js/translated/purchase_order.js:1653
-#: templates/js/translated/table_filters.js:713
+#: templates/js/translated/purchase_order.js:1668
+#: templates/js/translated/table_filters.js:735
msgid "Supplier"
msgstr ""
-#: company/models.py:565
+#: company/models.py:714
msgid "Select supplier"
msgstr ""
-#: company/models.py:570 company/templates/company/supplier_part.html:140
-#: part/bom.py:286 part/bom.py:314 part/serializers.py:349
-#: templates/js/translated/company.js:338 templates/js/translated/part.js:1759
+#: company/models.py:719 company/templates/company/supplier_part.html:140
+#: part/bom.py:286 part/bom.py:314 part/serializers.py:399
+#: templates/js/translated/company.js:348 templates/js/translated/part.js:1758
#: templates/js/translated/pricing.js:510
-#: templates/js/translated/purchase_order.js:1813
-#: templates/js/translated/purchase_order.js:1996
+#: templates/js/translated/purchase_order.js:1828
+#: templates/js/translated/purchase_order.js:2006
msgid "SKU"
msgstr ""
-#: company/models.py:571 part/serializers.py:349
+#: company/models.py:720 part/serializers.py:399
msgid "Supplier stock keeping unit"
msgstr ""
-#: company/models.py:579
+#: company/models.py:728
msgid "Select manufacturer part"
msgstr ""
-#: company/models.py:585
+#: company/models.py:734
msgid "URL for external supplier part link"
msgstr ""
-#: company/models.py:591
+#: company/models.py:740
msgid "Supplier part description"
msgstr ""
-#: company/models.py:596 company/templates/company/supplier_part.html:188
-#: part/admin.py:279 part/models.py:3801 part/templates/part/upload_bom.html:59
+#: company/models.py:745 company/templates/company/supplier_part.html:188
+#: part/admin.py:279 part/models.py:3845 part/templates/part/upload_bom.html:59
#: report/templates/report/inventree_bill_of_materials_report.html:140
#: report/templates/report/inventree_po_report_base.html:32
#: report/templates/report/inventree_return_order_report_base.html:27
#: report/templates/report/inventree_so_report_base.html:32
-#: stock/serializers.py:418
+#: stock/serializers.py:484
msgid "Note"
msgstr ""
-#: company/models.py:600 part/models.py:1919
+#: company/models.py:749 part/models.py:1921
msgid "base cost"
msgstr ""
-#: company/models.py:600 part/models.py:1919
+#: company/models.py:749 part/models.py:1921
msgid "Minimum charge (e.g. stocking fee)"
msgstr ""
-#: company/models.py:602 company/templates/company/supplier_part.html:161
+#: company/models.py:751 company/templates/company/supplier_part.html:161
#: stock/admin.py:119 stock/models.py:701
#: stock/templates/stock/item_base.html:241
-#: templates/js/translated/company.js:1256
-#: templates/js/translated/stock.js:2160
+#: templates/js/translated/company.js:1677
+#: templates/js/translated/stock.js:2317
msgid "Packaging"
msgstr ""
-#: company/models.py:602
+#: company/models.py:751
msgid "Part packaging"
msgstr ""
-#: company/models.py:606 templates/js/translated/company.js:1261
-#: templates/js/translated/part.js:1793 templates/js/translated/part.js:1848
-#: templates/js/translated/purchase_order.js:300
-#: templates/js/translated/purchase_order.js:827
-#: templates/js/translated/purchase_order.js:1073
-#: templates/js/translated/purchase_order.js:2052
-#: templates/js/translated/purchase_order.js:2069
+#: company/models.py:755 templates/js/translated/company.js:1682
+#: templates/js/translated/part.js:1792 templates/js/translated/part.js:1847
+#: templates/js/translated/purchase_order.js:311
+#: templates/js/translated/purchase_order.js:842
+#: templates/js/translated/purchase_order.js:1088
+#: templates/js/translated/purchase_order.js:2062
+#: templates/js/translated/purchase_order.js:2079
msgid "Pack Quantity"
msgstr ""
-#: company/models.py:607
+#: company/models.py:756
msgid "Total quantity supplied in a single pack. Leave empty for single items."
msgstr ""
-#: company/models.py:624 part/models.py:1921
+#: company/models.py:773 part/models.py:1923
msgid "multiple"
msgstr ""
-#: company/models.py:624
+#: company/models.py:773
msgid "Order multiple"
msgstr ""
-#: company/models.py:632 company/templates/company/supplier_part.html:115
+#: company/models.py:781 company/templates/company/supplier_part.html:115
#: templates/email/build_order_required_stock.html:19
#: templates/email/low_stock_notification.html:17
-#: templates/js/translated/bom.js:1127 templates/js/translated/build.js:2136
-#: templates/js/translated/build.js:3045
-#: templates/js/translated/model_renderers.js:205
-#: templates/js/translated/part.js:670 templates/js/translated/part.js:672
-#: templates/js/translated/part.js:677
-#: templates/js/translated/table_filters.js:286
-#: templates/js/translated/table_filters.js:492
+#: templates/js/translated/bom.js:1145 templates/js/translated/build.js:2490
+#: templates/js/translated/index.js:118
+#: templates/js/translated/model_renderers.js:219
+#: templates/js/translated/part.js:669 templates/js/translated/part.js:671
+#: templates/js/translated/part.js:676
+#: templates/js/translated/table_filters.js:292
+#: templates/js/translated/table_filters.js:510
msgid "Available"
msgstr ""
-#: company/models.py:633
+#: company/models.py:782
msgid "Quantity available from supplier"
msgstr ""
-#: company/models.py:637
+#: company/models.py:786
msgid "Availability Updated"
msgstr ""
-#: company/models.py:638
+#: company/models.py:787
msgid "Date of last update of availability data"
msgstr ""
-#: company/serializers.py:99
+#: company/serializers.py:156
msgid "Default currency used for this supplier"
msgstr ""
#: company/templates/company/company_base.html:22
-#: templates/js/translated/purchase_order.js:228
+#: templates/js/translated/purchase_order.js:239
msgid "Create Purchase Order"
msgstr ""
@@ -3816,7 +3878,7 @@ msgid "Edit company information"
msgstr ""
#: company/templates/company/company_base.html:34
-#: templates/js/translated/company.js:436
+#: templates/js/translated/company.js:443
msgid "Edit Company"
msgstr ""
@@ -3856,17 +3918,17 @@ msgstr ""
msgid "Delete image"
msgstr ""
-#: company/templates/company/company_base.html:87 order/models.py:779
-#: order/models.py:1738 order/templates/order/return_order_base.html:132
+#: company/templates/company/company_base.html:87 order/models.py:792
+#: order/models.py:1751 order/templates/order/return_order_base.html:132
#: order/templates/order/sales_order_base.html:145 stock/models.py:720
-#: stock/models.py:721 stock/serializers.py:825
+#: stock/models.py:721 stock/serializers.py:942
#: stock/templates/stock/item_base.html:401
#: templates/email/overdue_sales_order.html:16
-#: templates/js/translated/company.js:494
-#: templates/js/translated/return_order.js:284
-#: templates/js/translated/sales_order.js:772
-#: templates/js/translated/stock.js:2696
-#: templates/js/translated/table_filters.js:717
+#: templates/js/translated/company.js:501
+#: templates/js/translated/return_order.js:296
+#: templates/js/translated/sales_order.js:784
+#: templates/js/translated/stock.js:2827
+#: templates/js/translated/table_filters.js:739
msgid "Customer"
msgstr ""
@@ -3874,6 +3936,13 @@ msgstr ""
msgid "Uses default currency"
msgstr ""
+#: company/templates/company/company_base.html:119 order/models.py:279
+#: order/templates/order/order_base.html:210
+#: order/templates/order/return_order_base.html:182
+#: order/templates/order/sales_order_base.html:222
+msgid "Address"
+msgstr ""
+
#: company/templates/company/company_base.html:126
msgid "Phone"
msgstr ""
@@ -3906,7 +3975,7 @@ msgstr ""
#: company/templates/company/detail.html:15
#: company/templates/company/manufacturer_part_sidebar.html:7
-#: templates/InvenTree/search.html:120 templates/js/translated/search.js:189
+#: templates/InvenTree/search.html:120 templates/js/translated/search.js:147
msgid "Supplier Parts"
msgstr ""
@@ -3916,129 +3985,121 @@ msgstr ""
#: company/templates/company/detail.html:20
#: company/templates/company/manufacturer_part.html:123
-#: part/templates/part/detail.html:381
+#: part/templates/part/detail.html:356
msgid "New Supplier Part"
msgstr ""
-#: company/templates/company/detail.html:37
-#: company/templates/company/detail.html:85
-#: part/templates/part/category.html:183
-msgid "Order parts"
-msgstr ""
-
-#: company/templates/company/detail.html:42
-#: company/templates/company/detail.html:90
-msgid "Delete parts"
-msgstr ""
-
-#: company/templates/company/detail.html:43
-#: company/templates/company/detail.html:91
-msgid "Delete Parts"
-msgstr ""
-
-#: company/templates/company/detail.html:62 templates/InvenTree/search.html:105
-#: templates/js/translated/search.js:193
+#: company/templates/company/detail.html:41 templates/InvenTree/search.html:105
+#: templates/js/translated/search.js:151
msgid "Manufacturer Parts"
msgstr ""
-#: company/templates/company/detail.html:66
+#: company/templates/company/detail.html:45
msgid "Create new manufacturer part"
msgstr ""
-#: company/templates/company/detail.html:67 part/templates/part/detail.html:411
+#: company/templates/company/detail.html:46 part/templates/part/detail.html:376
msgid "New Manufacturer Part"
msgstr ""
-#: company/templates/company/detail.html:108
+#: company/templates/company/detail.html:65
msgid "Supplier Stock"
msgstr ""
-#: company/templates/company/detail.html:118
+#: company/templates/company/detail.html:75
#: company/templates/company/sidebar.html:12
#: company/templates/company/supplier_part_sidebar.html:7
#: 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:108 part/templates/part/part_sidebar.html:35
-#: templates/InvenTree/index.html:275 templates/InvenTree/search.html:199
+#: part/templates/part/detail.html:106 part/templates/part/part_sidebar.html:35
+#: templates/InvenTree/index.html:227 templates/InvenTree/search.html:199
#: templates/InvenTree/settings/sidebar.html:55
-#: templates/js/translated/search.js:247 templates/navbar.html:50
+#: templates/js/translated/search.js:205 templates/navbar.html:50
#: users/models.py:43
msgid "Purchase Orders"
msgstr ""
-#: company/templates/company/detail.html:122
+#: company/templates/company/detail.html:79
#: order/templates/order/purchase_orders.html:17
msgid "Create new purchase order"
msgstr ""
-#: company/templates/company/detail.html:123
+#: company/templates/company/detail.html:80
#: order/templates/order/purchase_orders.html:18
msgid "New Purchase Order"
msgstr ""
-#: company/templates/company/detail.html:146
+#: company/templates/company/detail.html:101
#: company/templates/company/sidebar.html:21
#: 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:131 part/templates/part/part_sidebar.html:39
-#: templates/InvenTree/index.html:307 templates/InvenTree/search.html:219
+#: part/templates/part/detail.html:127 part/templates/part/part_sidebar.html:39
+#: templates/InvenTree/index.html:259 templates/InvenTree/search.html:219
#: templates/InvenTree/settings/sidebar.html:57
-#: templates/js/translated/search.js:261 templates/navbar.html:62
+#: templates/js/translated/search.js:219 templates/navbar.html:62
#: users/models.py:44
msgid "Sales Orders"
msgstr ""
-#: company/templates/company/detail.html:150
+#: company/templates/company/detail.html:105
#: order/templates/order/sales_orders.html:20
msgid "Create new sales order"
msgstr ""
-#: company/templates/company/detail.html:151
+#: company/templates/company/detail.html:106
#: order/templates/order/sales_orders.html:21
msgid "New Sales Order"
msgstr ""
-#: company/templates/company/detail.html:173
-#: templates/js/translated/build.js:1976
+#: company/templates/company/detail.html:126
msgid "Assigned Stock"
msgstr ""
-#: company/templates/company/detail.html:191
+#: company/templates/company/detail.html:142
#: company/templates/company/sidebar.html:29
#: order/templates/order/return_order_base.html:13
#: order/templates/order/return_orders.html:8
#: order/templates/order/return_orders.html:15
#: templates/InvenTree/settings/sidebar.html:59
-#: templates/js/translated/search.js:274 templates/navbar.html:65
+#: templates/js/translated/search.js:232 templates/navbar.html:65
#: users/models.py:45
msgid "Return Orders"
msgstr ""
-#: company/templates/company/detail.html:195
+#: company/templates/company/detail.html:146
#: order/templates/order/return_orders.html:20
msgid "Create new return order"
msgstr ""
-#: company/templates/company/detail.html:196
+#: company/templates/company/detail.html:147
#: order/templates/order/return_orders.html:21
msgid "New Return Order"
msgstr ""
-#: company/templates/company/detail.html:221
+#: company/templates/company/detail.html:168
msgid "Company Notes"
msgstr ""
-#: company/templates/company/detail.html:236
+#: company/templates/company/detail.html:183
msgid "Company Contacts"
msgstr ""
-#: company/templates/company/detail.html:240
-#: company/templates/company/detail.html:241
+#: company/templates/company/detail.html:187
+#: company/templates/company/detail.html:188
msgid "Add Contact"
msgstr ""
+#: company/templates/company/detail.html:206
+msgid "Company addresses"
+msgstr ""
+
+#: company/templates/company/detail.html:210
+#: company/templates/company/detail.html:211
+msgid "Add Address"
+msgstr ""
+
#: company/templates/company/index.html:8
msgid "Supplier List"
msgstr ""
@@ -4050,17 +4111,17 @@ msgstr ""
#: company/templates/company/manufacturer_part.html:35
#: company/templates/company/supplier_part.html:228
-#: part/templates/part/detail.html:111 part/templates/part/part_base.html:85
+#: part/templates/part/detail.html:109 part/templates/part/part_base.html:85
msgid "Order part"
msgstr ""
#: company/templates/company/manufacturer_part.html:39
-#: templates/js/translated/company.js:1001
+#: templates/js/translated/company.js:1374
msgid "Edit manufacturer part"
msgstr ""
#: company/templates/company/manufacturer_part.html:43
-#: templates/js/translated/company.js:1002
+#: templates/js/translated/company.js:1375
msgid "Delete manufacturer part"
msgstr ""
@@ -4080,40 +4141,22 @@ msgstr ""
msgid "Suppliers"
msgstr ""
-#: company/templates/company/manufacturer_part.html:136
-#: part/templates/part/detail.html:392
-msgid "Delete supplier parts"
-msgstr ""
-
-#: company/templates/company/manufacturer_part.html:136
-#: company/templates/company/manufacturer_part.html:183
-#: part/templates/part/detail.html:393 part/templates/part/detail.html:423
-#: templates/js/translated/forms.js:506 templates/js/translated/helpers.js:105
-#: templates/js/translated/part.js:370 templates/js/translated/pricing.js:629
-#: templates/js/translated/stock.js:216 users/models.py:247
-msgid "Delete"
-msgstr ""
-
-#: company/templates/company/manufacturer_part.html:166
+#: company/templates/company/manufacturer_part.html:156
#: company/templates/company/manufacturer_part_sidebar.html:5
#: part/templates/part/category_sidebar.html:20
-#: part/templates/part/detail.html:208 part/templates/part/part_sidebar.html:8
+#: part/templates/part/detail.html:195 part/templates/part/part_sidebar.html:8
msgid "Parameters"
msgstr ""
-#: company/templates/company/manufacturer_part.html:170
-#: part/templates/part/detail.html:213
+#: company/templates/company/manufacturer_part.html:160
+#: part/templates/part/detail.html:200
#: templates/InvenTree/settings/category.html:12
#: templates/InvenTree/settings/part_parameters.html:12
msgid "New Parameter"
msgstr ""
-#: company/templates/company/manufacturer_part.html:183
-msgid "Delete parameters"
-msgstr ""
-
-#: company/templates/company/manufacturer_part.html:226
-#: templates/js/translated/part.js:1396
+#: company/templates/company/manufacturer_part.html:206
+#: templates/js/translated/part.js:1395
msgid "Add Parameter"
msgstr ""
@@ -4137,23 +4180,28 @@ msgstr ""
msgid "Contacts"
msgstr ""
+#: company/templates/company/sidebar.html:35
+msgid "Addresses"
+msgstr ""
+
#: company/templates/company/supplier_part.html:7
#: company/templates/company/supplier_part.html:24 stock/models.py:684
#: stock/templates/stock/item_base.html:234
-#: templates/js/translated/company.js:1210
-#: templates/js/translated/purchase_order.js:747
-#: templates/js/translated/stock.js:2016
+#: templates/js/translated/company.js:1631
+#: templates/js/translated/purchase_order.js:758
+#: templates/js/translated/stock.js:2173
msgid "Supplier Part"
msgstr ""
#: company/templates/company/supplier_part.html:51
+#: templates/js/translated/company.js:1557
msgid "Supplier part actions"
msgstr ""
#: company/templates/company/supplier_part.html:56
#: company/templates/company/supplier_part.html:57
#: company/templates/company/supplier_part.html:229
-#: part/templates/part/detail.html:112
+#: part/templates/part/detail.html:110
msgid "Order Part"
msgstr ""
@@ -4164,13 +4212,13 @@ msgstr ""
#: company/templates/company/supplier_part.html:64
#: company/templates/company/supplier_part.html:65
-#: templates/js/translated/company.js:283
+#: templates/js/translated/company.js:293
msgid "Edit Supplier Part"
msgstr ""
#: company/templates/company/supplier_part.html:69
#: company/templates/company/supplier_part.html:70
-#: templates/js/translated/company.js:258
+#: templates/js/translated/company.js:268
msgid "Duplicate Supplier Part"
msgstr ""
@@ -4197,7 +4245,7 @@ msgstr ""
#: company/templates/company/supplier_part.html:211
#: part/templates/part/detail.html:25 stock/templates/stock/location.html:198
-#: templates/js/translated/stock.js:504
+#: templates/js/translated/stock.js:503
msgid "New Stock Item"
msgstr ""
@@ -4205,37 +4253,37 @@ msgstr ""
msgid "Supplier Part Orders"
msgstr ""
-#: company/templates/company/supplier_part.html:249
+#: company/templates/company/supplier_part.html:247
msgid "Pricing Information"
msgstr ""
-#: company/templates/company/supplier_part.html:254
-#: templates/js/translated/company.js:387
+#: company/templates/company/supplier_part.html:252
+#: templates/js/translated/company.js:397
#: templates/js/translated/pricing.js:684
msgid "Add Price Break"
msgstr ""
-#: company/templates/company/supplier_part.html:281
+#: company/templates/company/supplier_part.html:277
msgid "Supplier Part QR Code"
msgstr ""
-#: company/templates/company/supplier_part.html:292
+#: company/templates/company/supplier_part.html:288
msgid "Link Barcode to Supplier Part"
msgstr ""
-#: company/templates/company/supplier_part.html:365
+#: company/templates/company/supplier_part.html:361
msgid "Update Part Availability"
msgstr ""
#: company/templates/company/supplier_part_sidebar.html:5 part/tasks.py:293
-#: part/templates/part/category.html:199
+#: part/templates/part/category.html:182
#: part/templates/part/category_sidebar.html:17 stock/admin.py:47
-#: stock/templates/stock/location.html:168
+#: stock/serializers.py:662 stock/templates/stock/location.html:168
#: stock/templates/stock/location.html:182
#: stock/templates/stock/location.html:194
#: stock/templates/stock/location_sidebar.html:7
-#: templates/InvenTree/search.html:155 templates/js/translated/part.js:1034
-#: templates/js/translated/search.js:214 templates/js/translated/stock.js:2514
+#: templates/InvenTree/search.html:155 templates/js/translated/part.js:1033
+#: templates/js/translated/search.js:172 templates/js/translated/stock.js:2645
#: users/models.py:41
msgid "Stock Items"
msgstr ""
@@ -4261,7 +4309,7 @@ msgstr ""
msgid "New Customer"
msgstr ""
-#: company/views.py:52 templates/js/translated/search.js:234
+#: company/views.py:52 templates/js/translated/search.js:192
msgid "Companies"
msgstr ""
@@ -4269,72 +4317,76 @@ msgstr ""
msgid "New Company"
msgstr ""
-#: label/models.py:104
+#: label/models.py:112
msgid "Label name"
msgstr ""
-#: label/models.py:111
+#: label/models.py:119
msgid "Label description"
msgstr ""
-#: label/models.py:118
+#: label/models.py:126
msgid "Label"
msgstr ""
-#: label/models.py:119
+#: label/models.py:127
msgid "Label template file"
msgstr ""
-#: label/models.py:125 report/models.py:273
+#: label/models.py:133 report/models.py:273
msgid "Enabled"
msgstr ""
-#: label/models.py:126
+#: label/models.py:134
msgid "Label template is enabled"
msgstr ""
-#: label/models.py:131
+#: label/models.py:139
msgid "Width [mm]"
msgstr ""
-#: label/models.py:132
+#: label/models.py:140
msgid "Label width, specified in mm"
msgstr ""
-#: label/models.py:138
+#: label/models.py:146
msgid "Height [mm]"
msgstr ""
-#: label/models.py:139
+#: label/models.py:147
msgid "Label height, specified in mm"
msgstr ""
-#: label/models.py:145 report/models.py:266
+#: label/models.py:153 report/models.py:266
msgid "Filename Pattern"
msgstr ""
-#: label/models.py:146
+#: label/models.py:154
msgid "Pattern for generating label filenames"
msgstr ""
-#: label/models.py:242
+#: label/models.py:250
msgid "Query filters (comma-separated list of key=value pairs),"
msgstr ""
-#: label/models.py:243 label/models.py:284 label/models.py:312
-#: report/models.py:294 report/models.py:452 report/models.py:490
-#: report/models.py:528
+#: label/models.py:251 label/models.py:292 label/models.py:320
+#: label/models.py:356 report/models.py:294 report/models.py:454
+#: report/models.py:492 report/models.py:530
msgid "Filters"
msgstr ""
-#: label/models.py:283
+#: label/models.py:291
msgid "Query filters (comma-separated list of key=value pairs"
msgstr ""
-#: label/models.py:311
+#: label/models.py:319
msgid "Part query filters (comma-separated value of key=value pairs)"
msgstr ""
+#: label/models.py:355
+msgid "Query filters (comma-separated list of key=value pairs)"
+msgstr ""
+
#: label/templates/label/part/part_label.html:31
#: label/templates/label/stockitem/qr.html:21
#: label/templates/label/stocklocation/qr.html:21
@@ -4352,8 +4404,8 @@ msgstr ""
#: report/templates/report/inventree_po_report_base.html:31
#: report/templates/report/inventree_so_report_base.html:31
#: templates/js/translated/order.js:327
-#: templates/js/translated/purchase_order.js:2093
-#: templates/js/translated/sales_order.js:1827
+#: templates/js/translated/purchase_order.js:2103
+#: templates/js/translated/sales_order.js:1839
msgid "Total Price"
msgstr ""
@@ -4361,30 +4413,30 @@ msgstr ""
msgid "No matching purchase order found"
msgstr ""
-#: order/api.py:1452 order/models.py:1178 order/models.py:1262
+#: order/api.py:1452 order/models.py:1191 order/models.py:1275
#: order/templates/order/order_base.html:9
#: order/templates/order/order_base.html:18
#: report/templates/report/inventree_po_report_base.html:14
#: stock/templates/stock/item_base.html:177
#: templates/email/overdue_purchase_order.html:15
-#: templates/js/translated/part.js:1718 templates/js/translated/pricing.js:790
-#: templates/js/translated/purchase_order.js:154
-#: templates/js/translated/purchase_order.js:748
-#: templates/js/translated/purchase_order.js:1637
-#: templates/js/translated/stock.js:1996 templates/js/translated/stock.js:2644
+#: templates/js/translated/part.js:1717 templates/js/translated/pricing.js:790
+#: templates/js/translated/purchase_order.js:165
+#: templates/js/translated/purchase_order.js:759
+#: templates/js/translated/purchase_order.js:1652
+#: templates/js/translated/stock.js:2153 templates/js/translated/stock.js:2775
msgid "Purchase Order"
msgstr ""
-#: order/api.py:1456 order/models.py:1909 order/models.py:1955
+#: order/api.py:1456 order/models.py:1922 order/models.py:1968
#: order/templates/order/return_order_base.html:9
#: order/templates/order/return_order_base.html:28
#: report/templates/report/inventree_return_order_report_base.html:13
-#: templates/js/translated/return_order.js:269
-#: templates/js/translated/stock.js:2678
+#: templates/js/translated/return_order.js:281
+#: templates/js/translated/stock.js:2809
msgid "Return Order"
msgstr ""
-#: order/api.py:1458 templates/js/translated/sales_order.js:1030
+#: order/api.py:1458 templates/js/translated/sales_order.js:1042
msgid "Unknown"
msgstr ""
@@ -4392,11 +4444,11 @@ msgstr ""
msgid "Total price for this order"
msgstr ""
-#: order/models.py:79 order/serializers.py:49
+#: order/models.py:79 order/serializers.py:50
msgid "Order Currency"
msgstr ""
-#: order/models.py:81 order/serializers.py:50
+#: order/models.py:81 order/serializers.py:51
msgid "Currency for this order (leave blank to use company default)"
msgstr ""
@@ -4408,492 +4460,496 @@ msgstr ""
msgid "Order description (optional)"
msgstr ""
-#: order/models.py:234
+#: order/models.py:237
msgid "Select project code for this order"
msgstr ""
-#: order/models.py:236 order/models.py:1094 order/models.py:1454
+#: order/models.py:240 order/models.py:1107 order/models.py:1467
msgid "Link to external page"
msgstr ""
-#: order/models.py:241
+#: order/models.py:245
msgid "Expected date for order delivery. Order will be overdue after this date."
msgstr ""
-#: order/models.py:250
+#: order/models.py:254
msgid "Created By"
msgstr ""
-#: order/models.py:257
+#: order/models.py:261
msgid "User or group responsible for this order"
msgstr ""
-#: order/models.py:267
+#: order/models.py:271
msgid "Point of contact for this order"
msgstr ""
-#: order/models.py:360 order/models.py:766
+#: order/models.py:280
+msgid "Company address for this order"
+msgstr ""
+
+#: order/models.py:373 order/models.py:779
msgid "Order reference"
msgstr ""
-#: order/models.py:368 order/models.py:791
+#: order/models.py:381 order/models.py:804
msgid "Purchase order status"
msgstr ""
-#: order/models.py:383
+#: order/models.py:396
msgid "Company from which the items are being ordered"
msgstr ""
-#: order/models.py:391 order/templates/order/order_base.html:152
-#: templates/js/translated/purchase_order.js:1662
+#: order/models.py:404 order/templates/order/order_base.html:148
+#: templates/js/translated/purchase_order.js:1677
msgid "Supplier Reference"
msgstr ""
-#: order/models.py:391
+#: order/models.py:404
msgid "Supplier order reference code"
msgstr ""
-#: order/models.py:398
+#: order/models.py:411
msgid "received by"
msgstr ""
-#: order/models.py:403 order/models.py:1761
+#: order/models.py:416 order/models.py:1774
msgid "Issue Date"
msgstr ""
-#: order/models.py:404 order/models.py:1762
+#: order/models.py:417 order/models.py:1775
msgid "Date order was issued"
msgstr ""
-#: order/models.py:410 order/models.py:1768
+#: order/models.py:423 order/models.py:1781
msgid "Date order was completed"
msgstr ""
-#: order/models.py:445
+#: order/models.py:458
msgid "Part supplier must match PO supplier"
msgstr ""
-#: order/models.py:606
+#: order/models.py:619
msgid "Quantity must be a positive number"
msgstr ""
-#: order/models.py:780
+#: order/models.py:793
msgid "Company to which the items are being sold"
msgstr ""
-#: order/models.py:799 order/models.py:1755
+#: order/models.py:812 order/models.py:1768
msgid "Customer Reference "
msgstr ""
-#: order/models.py:799 order/models.py:1756
+#: order/models.py:812 order/models.py:1769
msgid "Customer order reference code"
msgstr ""
-#: order/models.py:801 order/models.py:1408
-#: templates/js/translated/sales_order.js:831
-#: templates/js/translated/sales_order.js:1012
+#: order/models.py:814 order/models.py:1421
+#: templates/js/translated/sales_order.js:843
+#: templates/js/translated/sales_order.js:1024
msgid "Shipment Date"
msgstr ""
-#: order/models.py:808
+#: order/models.py:821
msgid "shipped by"
msgstr ""
-#: order/models.py:857
+#: order/models.py:870
msgid "Order cannot be completed as no parts have been assigned"
msgstr ""
-#: order/models.py:861
+#: order/models.py:874
msgid "Only an open order can be marked as complete"
msgstr ""
-#: order/models.py:864 templates/js/translated/sales_order.js:491
+#: order/models.py:877 templates/js/translated/sales_order.js:503
msgid "Order cannot be completed as there are incomplete shipments"
msgstr ""
-#: order/models.py:867
+#: order/models.py:880
msgid "Order cannot be completed as there are incomplete line items"
msgstr ""
-#: order/models.py:1074
+#: order/models.py:1087
msgid "Item quantity"
msgstr ""
-#: order/models.py:1087
+#: order/models.py:1100
msgid "Line item reference"
msgstr ""
-#: order/models.py:1089
+#: order/models.py:1102
msgid "Line item notes"
msgstr ""
-#: order/models.py:1100
+#: order/models.py:1113
msgid "Target date for this line item (leave blank to use the target date from the order)"
msgstr ""
-#: order/models.py:1118
+#: order/models.py:1131
msgid "Line item description (optional)"
msgstr ""
-#: order/models.py:1123
+#: order/models.py:1136
msgid "Context"
msgstr ""
-#: order/models.py:1124
+#: order/models.py:1137
msgid "Additional context for this line"
msgstr ""
-#: order/models.py:1133
+#: order/models.py:1146
msgid "Unit price"
msgstr ""
-#: order/models.py:1163
+#: order/models.py:1176
msgid "Supplier part must match supplier"
msgstr ""
-#: order/models.py:1171
+#: order/models.py:1184
msgid "deleted"
msgstr ""
-#: order/models.py:1177 order/models.py:1262 order/models.py:1303
-#: order/models.py:1402 order/models.py:1551 order/models.py:1908
-#: order/models.py:1955 templates/js/translated/sales_order.js:1474
+#: order/models.py:1190 order/models.py:1275 order/models.py:1316
+#: order/models.py:1415 order/models.py:1564 order/models.py:1921
+#: order/models.py:1968 templates/js/translated/sales_order.js:1486
msgid "Order"
msgstr ""
-#: order/models.py:1196
+#: order/models.py:1209
msgid "Supplier part"
msgstr ""
-#: order/models.py:1203 order/templates/order/order_base.html:200
-#: templates/js/translated/part.js:1841 templates/js/translated/part.js:1872
-#: templates/js/translated/purchase_order.js:1276
-#: templates/js/translated/purchase_order.js:2137
-#: templates/js/translated/return_order.js:748
-#: templates/js/translated/table_filters.js:90
-#: templates/js/translated/table_filters.js:515
+#: order/models.py:1216 order/templates/order/order_base.html:196
+#: templates/js/translated/part.js:1840 templates/js/translated/part.js:1871
+#: templates/js/translated/purchase_order.js:1291
+#: templates/js/translated/purchase_order.js:2147
+#: templates/js/translated/return_order.js:760
+#: templates/js/translated/table_filters.js:96
+#: templates/js/translated/table_filters.js:537
msgid "Received"
msgstr ""
-#: order/models.py:1204
+#: order/models.py:1217
msgid "Number of items received"
msgstr ""
-#: order/models.py:1211 stock/models.py:823 stock/serializers.py:252
+#: order/models.py:1224 stock/models.py:823 stock/serializers.py:314
#: stock/templates/stock/item_base.html:184
-#: templates/js/translated/stock.js:2047
+#: templates/js/translated/stock.js:2204
msgid "Purchase Price"
msgstr ""
-#: order/models.py:1212
+#: order/models.py:1225
msgid "Unit purchase price"
msgstr ""
-#: order/models.py:1225
+#: order/models.py:1238
msgid "Where does the Purchaser want this item to be stored?"
msgstr ""
-#: order/models.py:1291
+#: order/models.py:1304
msgid "Virtual part cannot be assigned to a sales order"
msgstr ""
-#: order/models.py:1296
+#: order/models.py:1309
msgid "Only salable parts can be assigned to a sales order"
msgstr ""
-#: order/models.py:1322 part/templates/part/part_pricing.html:107
+#: order/models.py:1335 part/templates/part/part_pricing.html:107
#: part/templates/part/prices.html:128 templates/js/translated/pricing.js:943
msgid "Sale Price"
msgstr ""
-#: order/models.py:1323
+#: order/models.py:1336
msgid "Unit sale price"
msgstr ""
-#: order/models.py:1333
+#: order/models.py:1346
msgid "Shipped quantity"
msgstr ""
-#: order/models.py:1409
+#: order/models.py:1422
msgid "Date of shipment"
msgstr ""
-#: order/models.py:1414 templates/js/translated/sales_order.js:1024
+#: order/models.py:1427 templates/js/translated/sales_order.js:1036
msgid "Delivery Date"
msgstr ""
-#: order/models.py:1415
+#: order/models.py:1428
msgid "Date of delivery of shipment"
msgstr ""
-#: order/models.py:1422
+#: order/models.py:1435
msgid "Checked By"
msgstr ""
-#: order/models.py:1423
+#: order/models.py:1436
msgid "User who checked this shipment"
msgstr ""
-#: order/models.py:1430 order/models.py:1627 order/serializers.py:1248
-#: order/serializers.py:1376 templates/js/translated/model_renderers.js:415
+#: order/models.py:1443 order/models.py:1640 order/serializers.py:1254
+#: order/serializers.py:1382 templates/js/translated/model_renderers.js:429
msgid "Shipment"
msgstr ""
-#: order/models.py:1431
+#: order/models.py:1444
msgid "Shipment number"
msgstr ""
-#: order/models.py:1439
+#: order/models.py:1452
msgid "Tracking Number"
msgstr ""
-#: order/models.py:1440
+#: order/models.py:1453
msgid "Shipment tracking information"
msgstr ""
-#: order/models.py:1447
+#: order/models.py:1460
msgid "Invoice Number"
msgstr ""
-#: order/models.py:1448
+#: order/models.py:1461
msgid "Reference number for associated invoice"
msgstr ""
-#: order/models.py:1470
+#: order/models.py:1483
msgid "Shipment has already been sent"
msgstr ""
-#: order/models.py:1473
+#: order/models.py:1486
msgid "Shipment has no allocated stock items"
msgstr ""
-#: order/models.py:1586 order/models.py:1588
+#: order/models.py:1599 order/models.py:1601
msgid "Stock item has not been assigned"
msgstr ""
-#: order/models.py:1592
+#: order/models.py:1605
msgid "Cannot allocate stock item to a line with a different part"
msgstr ""
-#: order/models.py:1594
+#: order/models.py:1607
msgid "Cannot allocate stock to a line without a part"
msgstr ""
-#: order/models.py:1597
+#: order/models.py:1610
msgid "Allocation quantity cannot exceed stock quantity"
msgstr ""
-#: order/models.py:1607 order/serializers.py:1110
+#: order/models.py:1620 order/serializers.py:1116
msgid "Quantity must be 1 for serialized stock item"
msgstr ""
-#: order/models.py:1610
+#: order/models.py:1623
msgid "Sales order does not match shipment"
msgstr ""
-#: order/models.py:1611
+#: order/models.py:1624
msgid "Shipment does not match sales order"
msgstr ""
-#: order/models.py:1619
+#: order/models.py:1632
msgid "Line"
msgstr ""
-#: order/models.py:1628
+#: order/models.py:1641
msgid "Sales order shipment reference"
msgstr ""
-#: order/models.py:1641 order/models.py:1916
-#: templates/js/translated/return_order.js:706
+#: order/models.py:1654 order/models.py:1929
+#: templates/js/translated/return_order.js:718
msgid "Item"
msgstr ""
-#: order/models.py:1642
+#: order/models.py:1655
msgid "Select stock item to allocate"
msgstr ""
-#: order/models.py:1645
+#: order/models.py:1658
msgid "Enter stock allocation quantity"
msgstr ""
-#: order/models.py:1725
+#: order/models.py:1738
msgid "Return Order reference"
msgstr ""
-#: order/models.py:1739
+#: order/models.py:1752
msgid "Company from which items are being returned"
msgstr ""
-#: order/models.py:1750
+#: order/models.py:1763
msgid "Return order status"
msgstr ""
-#: order/models.py:1901
+#: order/models.py:1914
msgid "Only serialized items can be assigned to a Return Order"
msgstr ""
-#: order/models.py:1917
+#: order/models.py:1930
msgid "Select item to return from customer"
msgstr ""
-#: order/models.py:1922
+#: order/models.py:1935
msgid "Received Date"
msgstr ""
-#: order/models.py:1923
+#: order/models.py:1936
msgid "The date this this return item was received"
msgstr ""
-#: order/models.py:1934 templates/js/translated/return_order.js:717
-#: templates/js/translated/table_filters.js:93
+#: order/models.py:1947 templates/js/translated/return_order.js:729
+#: templates/js/translated/table_filters.js:99
msgid "Outcome"
msgstr ""
-#: order/models.py:1934
+#: order/models.py:1947
msgid "Outcome for this line item"
msgstr ""
-#: order/models.py:1940
+#: order/models.py:1953
msgid "Cost associated with return or repair for this line item"
msgstr ""
-#: order/serializers.py:247
+#: order/serializers.py:253
msgid "Order cannot be cancelled"
msgstr ""
-#: order/serializers.py:262 order/serializers.py:1128
+#: order/serializers.py:268 order/serializers.py:1134
msgid "Allow order to be closed with incomplete line items"
msgstr ""
-#: order/serializers.py:273 order/serializers.py:1139
+#: order/serializers.py:279 order/serializers.py:1145
msgid "Order has incomplete line items"
msgstr ""
-#: order/serializers.py:386
+#: order/serializers.py:392
msgid "Order is not open"
msgstr ""
-#: order/serializers.py:404
+#: order/serializers.py:410
msgid "Purchase price currency"
msgstr ""
-#: order/serializers.py:422
+#: order/serializers.py:428
msgid "Supplier part must be specified"
msgstr ""
-#: order/serializers.py:427
+#: order/serializers.py:433
msgid "Purchase order must be specified"
msgstr ""
-#: order/serializers.py:433
+#: order/serializers.py:439
msgid "Supplier must match purchase order"
msgstr ""
-#: order/serializers.py:434
+#: order/serializers.py:440
msgid "Purchase order must match supplier"
msgstr ""
-#: order/serializers.py:472 order/serializers.py:1216
+#: order/serializers.py:478 order/serializers.py:1222
msgid "Line Item"
msgstr ""
-#: order/serializers.py:478
+#: order/serializers.py:484
msgid "Line item does not match purchase order"
msgstr ""
-#: order/serializers.py:488 order/serializers.py:607 order/serializers.py:1589
+#: order/serializers.py:494 order/serializers.py:613 order/serializers.py:1595
msgid "Select destination location for received items"
msgstr ""
-#: order/serializers.py:507 templates/js/translated/purchase_order.js:1100
+#: order/serializers.py:513 templates/js/translated/purchase_order.js:1115
msgid "Enter batch code for incoming stock items"
msgstr ""
-#: order/serializers.py:515 templates/js/translated/purchase_order.js:1124
+#: order/serializers.py:521 templates/js/translated/purchase_order.js:1139
msgid "Enter serial numbers for incoming stock items"
msgstr ""
-#: order/serializers.py:528 templates/js/translated/barcode.js:52
+#: order/serializers.py:534 templates/js/translated/barcode.js:52
msgid "Barcode"
msgstr ""
-#: order/serializers.py:529
+#: order/serializers.py:535
msgid "Scanned barcode"
msgstr ""
-#: order/serializers.py:545
+#: order/serializers.py:551
msgid "Barcode is already in use"
msgstr ""
-#: order/serializers.py:569
+#: order/serializers.py:575
msgid "An integer quantity must be provided for trackable parts"
msgstr ""
-#: order/serializers.py:623 order/serializers.py:1604
+#: order/serializers.py:629 order/serializers.py:1610
msgid "Line items must be provided"
msgstr ""
-#: order/serializers.py:640
+#: order/serializers.py:646
msgid "Destination location must be specified"
msgstr ""
-#: order/serializers.py:651
+#: order/serializers.py:657
msgid "Supplied barcode values must be unique"
msgstr ""
-#: order/serializers.py:950
+#: order/serializers.py:956
msgid "Sale price currency"
msgstr ""
-#: order/serializers.py:1007
+#: order/serializers.py:1013
msgid "No shipment details provided"
msgstr ""
-#: order/serializers.py:1071 order/serializers.py:1225
+#: order/serializers.py:1077 order/serializers.py:1231
msgid "Line item is not associated with this order"
msgstr ""
-#: order/serializers.py:1093
+#: order/serializers.py:1099
msgid "Quantity must be positive"
msgstr ""
-#: order/serializers.py:1238
+#: order/serializers.py:1244
msgid "Enter serial numbers to allocate"
msgstr ""
-#: order/serializers.py:1260 order/serializers.py:1384
+#: order/serializers.py:1266 order/serializers.py:1390
msgid "Shipment has already been shipped"
msgstr ""
-#: order/serializers.py:1263 order/serializers.py:1387
+#: order/serializers.py:1269 order/serializers.py:1393
msgid "Shipment is not associated with this order"
msgstr ""
-#: order/serializers.py:1317
+#: order/serializers.py:1323
msgid "No match found for the following serial numbers"
msgstr ""
-#: order/serializers.py:1327
+#: order/serializers.py:1333
msgid "The following serial numbers are already allocated"
msgstr ""
-#: order/serializers.py:1555
+#: order/serializers.py:1561
msgid "Return order line item"
msgstr ""
-#: order/serializers.py:1562
+#: order/serializers.py:1568
msgid "Line item does not match return order"
msgstr ""
-#: order/serializers.py:1565
+#: order/serializers.py:1571
msgid "Line item has already been received"
msgstr ""
-#: order/serializers.py:1597
+#: order/serializers.py:1603
msgid "Items can only be received against orders which are in progress"
msgstr ""
-#: order/serializers.py:1678
+#: order/serializers.py:1684
msgid "Line price currency"
msgstr ""
@@ -4957,82 +5013,74 @@ msgid "Issue Order"
msgstr ""
#: order/templates/order/order_base.html:83
-msgid "Receive items"
-msgstr ""
-
-#: order/templates/order/order_base.html:85
-msgid "Receive Items"
-msgstr ""
-
-#: order/templates/order/order_base.html:87
#: order/templates/order/return_order_base.html:87
msgid "Mark order as complete"
msgstr ""
-#: order/templates/order/order_base.html:88
+#: order/templates/order/order_base.html:84
#: order/templates/order/return_order_base.html:88
#: order/templates/order/sales_order_base.html:94
msgid "Complete Order"
msgstr ""
-#: order/templates/order/order_base.html:95
+#: order/templates/order/order_base.html:91
msgid "Supplier part thumbnail"
msgstr ""
-#: order/templates/order/order_base.html:110
+#: order/templates/order/order_base.html:106
#: order/templates/order/return_order_base.html:102
#: order/templates/order/sales_order_base.html:107
msgid "Order Reference"
msgstr ""
-#: order/templates/order/order_base.html:115
+#: order/templates/order/order_base.html:111
#: order/templates/order/return_order_base.html:107
#: order/templates/order/sales_order_base.html:112
msgid "Order Description"
msgstr ""
-#: order/templates/order/order_base.html:122
+#: order/templates/order/order_base.html:118
#: order/templates/order/return_order_base.html:114
#: order/templates/order/sales_order_base.html:119
msgid "Order Status"
msgstr ""
-#: order/templates/order/order_base.html:145
+#: order/templates/order/order_base.html:141
msgid "No suppplier information available"
msgstr ""
-#: order/templates/order/order_base.html:158
+#: order/templates/order/order_base.html:154
#: order/templates/order/sales_order_base.html:158
msgid "Completed Line Items"
msgstr ""
-#: order/templates/order/order_base.html:164
+#: order/templates/order/order_base.html:160
#: order/templates/order/sales_order_base.html:164
#: order/templates/order/sales_order_base.html:174
msgid "Incomplete"
msgstr ""
-#: order/templates/order/order_base.html:183
+#: order/templates/order/order_base.html:179
#: order/templates/order/return_order_base.html:158
#: report/templates/report/inventree_build_order_base.html:121
msgid "Issued"
msgstr ""
-#: order/templates/order/order_base.html:221
+#: order/templates/order/order_base.html:224
msgid "Total cost"
msgstr ""
-#: order/templates/order/order_base.html:225
-#: order/templates/order/return_order_base.html:193
-#: order/templates/order/sales_order_base.html:233
+#: order/templates/order/order_base.html:228
+#: order/templates/order/return_order_base.html:200
+#: order/templates/order/sales_order_base.html:240
msgid "Total cost could not be calculated"
msgstr ""
-#: order/templates/order/order_base.html:331
+#: order/templates/order/order_base.html:318
msgid "Purchase Order QR Code"
msgstr ""
-#: order/templates/order/order_base.html:343
+#: order/templates/order/order_base.html:330
msgid "Link Barcode to Purchase Order"
msgstr ""
@@ -5085,13 +5133,13 @@ msgstr ""
#: part/templates/part/import_wizard/ajax_match_references.html:42
#: part/templates/part/import_wizard/match_fields.html:71
#: part/templates/part/import_wizard/match_references.html:49
-#: templates/js/translated/bom.js:132 templates/js/translated/build.js:512
-#: templates/js/translated/build.js:2348
-#: templates/js/translated/purchase_order.js:692
-#: templates/js/translated/purchase_order.js:1206
-#: templates/js/translated/return_order.js:494
-#: templates/js/translated/sales_order.js:1097
-#: templates/js/translated/stock.js:681 templates/js/translated/stock.js:850
+#: templates/js/translated/bom.js:133 templates/js/translated/build.js:518
+#: templates/js/translated/build.js:1555
+#: templates/js/translated/purchase_order.js:703
+#: templates/js/translated/purchase_order.js:1221
+#: templates/js/translated/return_order.js:506
+#: templates/js/translated/sales_order.js:1109
+#: templates/js/translated/stock.js:680 templates/js/translated/stock.js:849
#: templates/patterns/wizard/match_fields.html:70
msgid "Remove row"
msgstr ""
@@ -5152,9 +5200,9 @@ msgstr ""
#: order/templates/order/purchase_order_detail.html:27
#: order/templates/order/return_order_detail.html:24
#: order/templates/order/sales_order_detail.html:24
-#: templates/js/translated/purchase_order.js:419
-#: templates/js/translated/return_order.js:447
-#: templates/js/translated/sales_order.js:222
+#: templates/js/translated/purchase_order.js:430
+#: templates/js/translated/return_order.js:459
+#: templates/js/translated/sales_order.js:234
msgid "Add Line Item"
msgstr ""
@@ -5165,30 +5213,25 @@ msgstr ""
msgid "Receive Line Items"
msgstr ""
-#: order/templates/order/purchase_order_detail.html:49
#: order/templates/order/purchase_order_detail.html:50
-msgid "Delete Line Items"
-msgstr ""
-
-#: order/templates/order/purchase_order_detail.html:66
-#: order/templates/order/return_order_detail.html:47
-#: order/templates/order/sales_order_detail.html:43
+#: order/templates/order/return_order_detail.html:45
+#: order/templates/order/sales_order_detail.html:41
msgid "Extra Lines"
msgstr ""
-#: order/templates/order/purchase_order_detail.html:72
-#: order/templates/order/return_order_detail.html:53
-#: order/templates/order/sales_order_detail.html:49
+#: order/templates/order/purchase_order_detail.html:56
+#: order/templates/order/return_order_detail.html:51
+#: order/templates/order/sales_order_detail.html:47
msgid "Add Extra Line"
msgstr ""
-#: order/templates/order/purchase_order_detail.html:92
+#: order/templates/order/purchase_order_detail.html:74
msgid "Received Items"
msgstr ""
-#: order/templates/order/purchase_order_detail.html:117
-#: order/templates/order/return_order_detail.html:89
-#: order/templates/order/sales_order_detail.html:149
+#: order/templates/order/purchase_order_detail.html:99
+#: order/templates/order/return_order_detail.html:85
+#: order/templates/order/sales_order_detail.html:139
msgid "Order Notes"
msgstr ""
@@ -5208,29 +5251,29 @@ msgstr ""
#: order/templates/order/return_order_base.html:139
#: order/templates/order/sales_order_base.html:152
-#: templates/js/translated/return_order.js:297
-#: templates/js/translated/sales_order.js:785
+#: templates/js/translated/return_order.js:309
+#: templates/js/translated/sales_order.js:797
msgid "Customer Reference"
msgstr ""
-#: order/templates/order/return_order_base.html:189
-#: order/templates/order/sales_order_base.html:229
+#: order/templates/order/return_order_base.html:196
+#: order/templates/order/sales_order_base.html:236
#: part/templates/part/part_pricing.html:32
#: part/templates/part/part_pricing.html:58
#: part/templates/part/part_pricing.html:99
#: part/templates/part/part_pricing.html:114
-#: templates/js/translated/part.js:1046
-#: templates/js/translated/purchase_order.js:1712
-#: templates/js/translated/return_order.js:369
-#: templates/js/translated/sales_order.js:843
+#: templates/js/translated/part.js:1045
+#: templates/js/translated/purchase_order.js:1727
+#: templates/js/translated/return_order.js:381
+#: templates/js/translated/sales_order.js:855
msgid "Total Cost"
msgstr ""
-#: order/templates/order/return_order_base.html:257
+#: order/templates/order/return_order_base.html:264
msgid "Return Order QR Code"
msgstr ""
-#: order/templates/order/return_order_base.html:269
+#: order/templates/order/return_order_base.html:276
msgid "Link Barcode to Return Order"
msgstr ""
@@ -5248,7 +5291,7 @@ msgid "Ship Items"
msgstr ""
#: order/templates/order/sales_order_base.html:93
-#: templates/js/translated/sales_order.js:469
+#: templates/js/translated/sales_order.js:481
msgid "Complete Sales Order"
msgstr ""
@@ -5257,16 +5300,16 @@ msgid "This Sales Order has not been fully allocated"
msgstr ""
#: order/templates/order/sales_order_base.html:170
-#: order/templates/order/sales_order_detail.html:105
+#: order/templates/order/sales_order_detail.html:99
#: order/templates/order/so_sidebar.html:11
msgid "Completed Shipments"
msgstr ""
-#: order/templates/order/sales_order_base.html:306
+#: order/templates/order/sales_order_base.html:313
msgid "Sales Order QR Code"
msgstr ""
-#: order/templates/order/sales_order_base.html:318
+#: order/templates/order/sales_order_base.html:325
msgid "Link Barcode to Sales Order"
msgstr ""
@@ -5274,18 +5317,17 @@ msgstr ""
msgid "Sales Order Items"
msgstr ""
-#: order/templates/order/sales_order_detail.html:71
-#: order/templates/order/so_sidebar.html:8 templates/InvenTree/index.html:332
+#: order/templates/order/sales_order_detail.html:67
+#: order/templates/order/so_sidebar.html:8 templates/InvenTree/index.html:284
msgid "Pending Shipments"
msgstr ""
-#: order/templates/order/sales_order_detail.html:75
-#: templates/attachment_table.html:6 templates/js/translated/bom.js:1236
-#: templates/js/translated/build.js:2249
+#: order/templates/order/sales_order_detail.html:71
+#: templates/js/translated/bom.js:1256 templates/js/translated/filters.js:297
msgid "Actions"
msgstr ""
-#: order/templates/order/sales_order_detail.html:84
+#: order/templates/order/sales_order_detail.html:80
msgid "New Shipment"
msgstr ""
@@ -5311,12 +5353,12 @@ msgstr ""
msgid "Updated {part} unit-price to {price} and quantity to {qty}"
msgstr ""
-#: part/admin.py:33 part/admin.py:273 part/models.py:3667 part/tasks.py:288
+#: part/admin.py:33 part/admin.py:273 part/models.py:3716 part/tasks.py:288
#: stock/admin.py:101
msgid "Part ID"
msgstr ""
-#: part/admin.py:34 part/admin.py:275 part/models.py:3671 part/tasks.py:289
+#: part/admin.py:34 part/admin.py:275 part/models.py:3720 part/tasks.py:289
#: stock/admin.py:102
msgid "Part Name"
msgstr ""
@@ -5325,19 +5367,19 @@ msgstr ""
msgid "Part Description"
msgstr ""
-#: part/admin.py:36 part/models.py:889 part/templates/part/part_base.html:271
-#: templates/js/translated/part.js:1200 templates/js/translated/part.js:2233
-#: templates/js/translated/stock.js:1795
+#: part/admin.py:36 part/models.py:890 part/templates/part/part_base.html:271
+#: templates/js/translated/part.js:1199 templates/js/translated/part.js:2309
+#: templates/js/translated/stock.js:1952
msgid "IPN"
msgstr ""
-#: part/admin.py:37 part/models.py:896 part/templates/part/part_base.html:279
-#: report/models.py:179 templates/js/translated/part.js:1205
-#: templates/js/translated/part.js:2239
+#: part/admin.py:37 part/models.py:897 part/templates/part/part_base.html:279
+#: report/models.py:179 templates/js/translated/part.js:1204
+#: templates/js/translated/part.js:2315
msgid "Revision"
msgstr ""
-#: part/admin.py:38 part/admin.py:198 part/models.py:875
+#: part/admin.py:38 part/admin.py:198 part/models.py:876
#: part/templates/part/category.html:93 part/templates/part/part_base.html:300
msgid "Keywords"
msgstr ""
@@ -5358,24 +5400,24 @@ msgstr ""
msgid "Default Supplier ID"
msgstr ""
-#: part/admin.py:46 part/models.py:864 part/templates/part/part_base.html:179
+#: part/admin.py:46 part/models.py:865 part/templates/part/part_base.html:179
msgid "Variant Of"
msgstr ""
-#: part/admin.py:47 part/models.py:980 part/templates/part/part_base.html:205
+#: part/admin.py:47 part/models.py:981 part/templates/part/part_base.html:205
msgid "Minimum Stock"
msgstr ""
#: part/admin.py:61 part/templates/part/part_base.html:199
-#: templates/js/translated/company.js:1299
-#: templates/js/translated/table_filters.js:301
+#: templates/js/translated/company.js:1720
+#: templates/js/translated/table_filters.js:307
msgid "In Stock"
msgstr ""
#: part/admin.py:62 part/bom.py:178 part/templates/part/part_base.html:212
-#: templates/js/translated/bom.js:1167 templates/js/translated/build.js:2191
-#: templates/js/translated/part.js:687 templates/js/translated/part.js:2123
-#: templates/js/translated/table_filters.js:140
+#: templates/js/translated/bom.js:1187 templates/js/translated/build.js:2541
+#: templates/js/translated/part.js:686 templates/js/translated/part.js:2122
+#: templates/js/translated/table_filters.js:146
msgid "On Order"
msgstr ""
@@ -5383,23 +5425,16 @@ msgstr ""
msgid "Used In"
msgstr ""
-#: part/admin.py:64 templates/js/translated/build.js:2203
-#: templates/js/translated/build.js:2465 templates/js/translated/build.js:3052
-#: templates/js/translated/sales_order.js:1906
-#: templates/js/translated/table_filters.js:488
-msgid "Allocated"
-msgstr ""
-
#: part/admin.py:65 part/templates/part/part_base.html:243 stock/admin.py:124
-#: templates/js/translated/part.js:692 templates/js/translated/part.js:2127
+#: templates/js/translated/part.js:691 templates/js/translated/part.js:2126
msgid "Building"
msgstr ""
-#: part/admin.py:66 part/models.py:2930 templates/js/translated/part.js:943
+#: part/admin.py:66 part/models.py:2964 templates/js/translated/part.js:942
msgid "Minimum Cost"
msgstr ""
-#: part/admin.py:67 part/models.py:2936 templates/js/translated/part.js:953
+#: part/admin.py:67 part/models.py:2970 templates/js/translated/part.js:952
msgid "Maximum Cost"
msgstr ""
@@ -5416,13 +5451,13 @@ msgstr ""
msgid "Category Path"
msgstr ""
-#: part/admin.py:202 part/models.py:392 part/templates/part/cat_link.html:3
-#: part/templates/part/category.html:23 part/templates/part/category.html:140
-#: part/templates/part/category.html:160
+#: part/admin.py:202 part/models.py:393 part/serializers.py:307
+#: part/templates/part/cat_link.html:3 part/templates/part/category.html:23
+#: part/templates/part/category.html:140 part/templates/part/category.html:160
#: part/templates/part/category_sidebar.html:9
-#: templates/InvenTree/index.html:86 templates/InvenTree/search.html:84
+#: templates/InvenTree/index.html:36 templates/InvenTree/search.html:84
#: templates/InvenTree/settings/sidebar.html:45
-#: templates/js/translated/part.js:2754 templates/js/translated/search.js:172
+#: templates/js/translated/part.js:2739 templates/js/translated/search.js:130
#: templates/navbar.html:24 users/models.py:38
msgid "Parts"
msgstr ""
@@ -5439,7 +5474,7 @@ msgstr ""
msgid "Parent IPN"
msgstr ""
-#: part/admin.py:274 part/models.py:3675
+#: part/admin.py:274 part/models.py:3724
msgid "Part IPN"
msgstr ""
@@ -5453,35 +5488,35 @@ msgstr ""
msgid "Maximum Price"
msgstr ""
-#: part/api.py:498
+#: part/api.py:501
msgid "Incoming Purchase Order"
msgstr ""
-#: part/api.py:518
+#: part/api.py:521
msgid "Outgoing Sales Order"
msgstr ""
-#: part/api.py:536
+#: part/api.py:539
msgid "Stock produced by Build Order"
msgstr ""
-#: part/api.py:622
+#: part/api.py:625
msgid "Stock required for Build Order"
msgstr ""
-#: part/api.py:770
+#: part/api.py:773
msgid "Valid"
msgstr ""
-#: part/api.py:771
+#: part/api.py:774
msgid "Validate entire Bill of Materials"
msgstr ""
-#: part/api.py:777
+#: part/api.py:780
msgid "This option must be selected"
msgstr ""
-#: part/bom.py:175 part/models.py:127 part/models.py:923
+#: part/bom.py:175 part/models.py:128 part/models.py:924
#: part/templates/part/category.html:115 part/templates/part/part_base.html:369
msgid "Default Location"
msgstr ""
@@ -5491,7 +5526,7 @@ msgid "Total Stock"
msgstr ""
#: part/bom.py:177 part/templates/part/part_base.html:194
-#: templates/js/translated/sales_order.js:1873
+#: templates/js/translated/sales_order.js:1885
msgid "Available Stock"
msgstr ""
@@ -5499,916 +5534,913 @@ msgstr ""
msgid "Input quantity for price calculation"
msgstr ""
-#: part/models.py:75 part/models.py:3616 part/templates/part/category.html:16
+#: part/models.py:76 part/models.py:3665 part/templates/part/category.html:16
#: part/templates/part/part_app_base.html:10
msgid "Part Category"
msgstr ""
-#: part/models.py:76 part/templates/part/category.html:135
-#: templates/InvenTree/search.html:97 templates/js/translated/search.js:200
+#: part/models.py:77 part/templates/part/category.html:135
+#: templates/InvenTree/search.html:97 templates/js/translated/search.js:158
#: users/models.py:37
msgid "Part Categories"
msgstr ""
-#: part/models.py:128
+#: part/models.py:129
msgid "Default location for parts in this category"
msgstr ""
-#: part/models.py:133 stock/models.py:124 templates/js/translated/stock.js:2520
-#: templates/js/translated/table_filters.js:209
-#: templates/js/translated/table_filters.js:229
+#: part/models.py:134 stock/models.py:124 templates/js/translated/stock.js:2651
+#: templates/js/translated/table_filters.js:215
+#: templates/js/translated/table_filters.js:235
msgid "Structural"
msgstr ""
-#: part/models.py:135
+#: part/models.py:136
msgid "Parts may not be directly assigned to a structural category, but may be assigned to child categories."
msgstr ""
-#: part/models.py:139
+#: part/models.py:140
msgid "Default keywords"
msgstr ""
-#: part/models.py:139
+#: part/models.py:140
msgid "Default keywords for parts in this category"
msgstr ""
-#: part/models.py:144 stock/models.py:113
+#: part/models.py:145 stock/models.py:113
msgid "Icon"
msgstr ""
-#: part/models.py:145 stock/models.py:114
+#: part/models.py:146 stock/models.py:114
msgid "Icon (optional)"
msgstr ""
-#: part/models.py:164
+#: part/models.py:165
msgid "You cannot make this part category structural because some parts are already assigned to it!"
msgstr ""
-#: part/models.py:475
+#: part/models.py:476
msgid "Invalid choice for parent part"
msgstr ""
-#: part/models.py:517 part/models.py:529
+#: part/models.py:518 part/models.py:530
#, python-brace-format
msgid "Part '{p1}' is used in BOM for '{p2}' (recursive)"
msgstr ""
-#: part/models.py:601
+#: part/models.py:602
#, python-brace-format
msgid "IPN must match regex pattern {pat}"
msgstr ""
-#: part/models.py:672
+#: part/models.py:673
msgid "Stock item with this serial number already exists"
msgstr ""
-#: part/models.py:803
+#: part/models.py:804
msgid "Duplicate IPN not allowed in part settings"
msgstr ""
-#: part/models.py:808
+#: part/models.py:809
msgid "Part with this Name, IPN and Revision already exists."
msgstr ""
-#: part/models.py:822
+#: part/models.py:823
msgid "Parts cannot be assigned to structural part categories!"
msgstr ""
-#: part/models.py:846 part/models.py:3672
+#: part/models.py:847 part/models.py:3721
msgid "Part name"
msgstr ""
-#: part/models.py:852
+#: part/models.py:853
msgid "Is Template"
msgstr ""
-#: part/models.py:853
+#: part/models.py:854
msgid "Is this part a template part?"
msgstr ""
-#: part/models.py:863
+#: part/models.py:864
msgid "Is this part a variant of another part?"
msgstr ""
-#: part/models.py:870
+#: part/models.py:871
msgid "Part description (optional)"
msgstr ""
-#: part/models.py:876
+#: part/models.py:877
msgid "Part keywords to improve visibility in search results"
msgstr ""
-#: part/models.py:883 part/models.py:3198 part/models.py:3615
-#: part/serializers.py:848 part/templates/part/part_base.html:262
+#: part/models.py:884 part/models.py:3232 part/models.py:3664
+#: part/serializers.py:320 part/serializers.py:910
+#: part/templates/part/part_base.html:262
#: templates/InvenTree/settings/settings_staff_js.html:204
#: templates/js/translated/notification.js:59
-#: templates/js/translated/part.js:2269 templates/js/translated/part.js:2481
+#: templates/js/translated/part.js:2345
msgid "Category"
msgstr ""
-#: part/models.py:884
+#: part/models.py:885
msgid "Part category"
msgstr ""
-#: part/models.py:890
+#: part/models.py:891
msgid "Internal Part Number"
msgstr ""
-#: part/models.py:895
+#: part/models.py:896
msgid "Part revision or version number"
msgstr ""
-#: part/models.py:921
+#: part/models.py:922
msgid "Where is this item normally stored?"
msgstr ""
-#: part/models.py:966 part/templates/part/part_base.html:378
+#: part/models.py:967 part/templates/part/part_base.html:378
msgid "Default Supplier"
msgstr ""
-#: part/models.py:967
+#: part/models.py:968
msgid "Default supplier part"
msgstr ""
-#: part/models.py:974
+#: part/models.py:975
msgid "Default Expiry"
msgstr ""
-#: part/models.py:975
+#: part/models.py:976
msgid "Expiry time (in days) for stock items of this part"
msgstr ""
-#: part/models.py:981
+#: part/models.py:982
msgid "Minimum allowed stock level"
msgstr ""
-#: part/models.py:988
+#: part/models.py:989
msgid "Units of measure for this part"
msgstr ""
-#: part/models.py:997
+#: part/models.py:998
msgid "Can this part be built from other parts?"
msgstr ""
-#: part/models.py:1003
+#: part/models.py:1004
msgid "Can this part be used to build other parts?"
msgstr ""
-#: part/models.py:1009
+#: part/models.py:1010
msgid "Does this part have tracking for unique items?"
msgstr ""
-#: part/models.py:1014
+#: part/models.py:1015
msgid "Can this part be purchased from external suppliers?"
msgstr ""
-#: part/models.py:1019
+#: part/models.py:1020
msgid "Can this part be sold to customers?"
msgstr ""
-#: part/models.py:1024
+#: part/models.py:1025
msgid "Is this part active?"
msgstr ""
-#: part/models.py:1029
+#: part/models.py:1030
msgid "Is this a virtual part, such as a software product or license?"
msgstr ""
-#: part/models.py:1031
+#: part/models.py:1032
msgid "BOM checksum"
msgstr ""
-#: part/models.py:1031
+#: part/models.py:1032
msgid "Stored BOM checksum"
msgstr ""
-#: part/models.py:1034
+#: part/models.py:1035
msgid "BOM checked by"
msgstr ""
-#: part/models.py:1036
+#: part/models.py:1037
msgid "BOM checked date"
msgstr ""
-#: part/models.py:1040
+#: part/models.py:1041
msgid "Creation User"
msgstr ""
-#: part/models.py:1042
+#: part/models.py:1043
msgid "User responsible for this part"
msgstr ""
-#: part/models.py:1046 part/templates/part/part_base.html:341
+#: part/models.py:1047 part/templates/part/part_base.html:341
#: stock/templates/stock/item_base.html:447
-#: templates/js/translated/part.js:2331
+#: templates/js/translated/part.js:2407
msgid "Last Stocktake"
msgstr ""
-#: part/models.py:1921
+#: part/models.py:1923
msgid "Sell multiple"
msgstr ""
-#: part/models.py:2853
+#: part/models.py:2887
msgid "Currency used to cache pricing calculations"
msgstr ""
-#: part/models.py:2870
+#: part/models.py:2904
msgid "Minimum BOM Cost"
msgstr ""
-#: part/models.py:2871
+#: part/models.py:2905
msgid "Minimum cost of component parts"
msgstr ""
-#: part/models.py:2876
+#: part/models.py:2910
msgid "Maximum BOM Cost"
msgstr ""
-#: part/models.py:2877
+#: part/models.py:2911
msgid "Maximum cost of component parts"
msgstr ""
-#: part/models.py:2882
+#: part/models.py:2916
msgid "Minimum Purchase Cost"
msgstr ""
-#: part/models.py:2883
+#: part/models.py:2917
msgid "Minimum historical purchase cost"
msgstr ""
-#: part/models.py:2888
+#: part/models.py:2922
msgid "Maximum Purchase Cost"
msgstr ""
-#: part/models.py:2889
+#: part/models.py:2923
msgid "Maximum historical purchase cost"
msgstr ""
-#: part/models.py:2894
+#: part/models.py:2928
msgid "Minimum Internal Price"
msgstr ""
-#: part/models.py:2895
+#: part/models.py:2929
msgid "Minimum cost based on internal price breaks"
msgstr ""
-#: part/models.py:2900
+#: part/models.py:2934
msgid "Maximum Internal Price"
msgstr ""
-#: part/models.py:2901
+#: part/models.py:2935
msgid "Maximum cost based on internal price breaks"
msgstr ""
-#: part/models.py:2906
+#: part/models.py:2940
msgid "Minimum Supplier Price"
msgstr ""
-#: part/models.py:2907
+#: part/models.py:2941
msgid "Minimum price of part from external suppliers"
msgstr ""
-#: part/models.py:2912
+#: part/models.py:2946
msgid "Maximum Supplier Price"
msgstr ""
-#: part/models.py:2913
+#: part/models.py:2947
msgid "Maximum price of part from external suppliers"
msgstr ""
-#: part/models.py:2918
+#: part/models.py:2952
msgid "Minimum Variant Cost"
msgstr ""
-#: part/models.py:2919
+#: part/models.py:2953
msgid "Calculated minimum cost of variant parts"
msgstr ""
-#: part/models.py:2924
+#: part/models.py:2958
msgid "Maximum Variant Cost"
msgstr ""
-#: part/models.py:2925
+#: part/models.py:2959
msgid "Calculated maximum cost of variant parts"
msgstr ""
-#: part/models.py:2931
+#: part/models.py:2965
msgid "Calculated overall minimum cost"
msgstr ""
-#: part/models.py:2937
+#: part/models.py:2971
msgid "Calculated overall maximum cost"
msgstr ""
-#: part/models.py:2942
+#: part/models.py:2976
msgid "Minimum Sale Price"
msgstr ""
-#: part/models.py:2943
+#: part/models.py:2977
msgid "Minimum sale price based on price breaks"
msgstr ""
-#: part/models.py:2948
+#: part/models.py:2982
msgid "Maximum Sale Price"
msgstr ""
-#: part/models.py:2949
+#: part/models.py:2983
msgid "Maximum sale price based on price breaks"
msgstr ""
-#: part/models.py:2954
+#: part/models.py:2988
msgid "Minimum Sale Cost"
msgstr ""
-#: part/models.py:2955
+#: part/models.py:2989
msgid "Minimum historical sale price"
msgstr ""
-#: part/models.py:2960
+#: part/models.py:2994
msgid "Maximum Sale Cost"
msgstr ""
-#: part/models.py:2961
+#: part/models.py:2995
msgid "Maximum historical sale price"
msgstr ""
-#: part/models.py:2980
+#: part/models.py:3014
msgid "Part for stocktake"
msgstr ""
-#: part/models.py:2985
+#: part/models.py:3019
msgid "Item Count"
msgstr ""
-#: part/models.py:2986
+#: part/models.py:3020
msgid "Number of individual stock entries at time of stocktake"
msgstr ""
-#: part/models.py:2993
+#: part/models.py:3027
msgid "Total available stock at time of stocktake"
msgstr ""
-#: part/models.py:2997 part/models.py:3080
+#: part/models.py:3031 part/models.py:3114
#: part/templates/part/part_scheduling.html:13
#: report/templates/report/inventree_test_report_base.html:106
#: templates/InvenTree/settings/plugin_settings.html:37
#: templates/InvenTree/settings/settings_staff_js.html:360
-#: templates/js/translated/part.js:1059 templates/js/translated/pricing.js:812
+#: templates/js/translated/part.js:1058 templates/js/translated/pricing.js:812
#: templates/js/translated/pricing.js:936
-#: templates/js/translated/purchase_order.js:1691
-#: templates/js/translated/stock.js:2558
+#: templates/js/translated/purchase_order.js:1706
+#: templates/js/translated/stock.js:2689
msgid "Date"
msgstr ""
-#: part/models.py:2998
+#: part/models.py:3032
msgid "Date stocktake was performed"
msgstr ""
-#: part/models.py:3006
+#: part/models.py:3040
msgid "Additional notes"
msgstr ""
-#: part/models.py:3014
+#: part/models.py:3048
msgid "User who performed this stocktake"
msgstr ""
-#: part/models.py:3019
+#: part/models.py:3053
msgid "Minimum Stock Cost"
msgstr ""
-#: part/models.py:3020
+#: part/models.py:3054
msgid "Estimated minimum cost of stock on hand"
msgstr ""
-#: part/models.py:3025
+#: part/models.py:3059
msgid "Maximum Stock Cost"
msgstr ""
-#: part/models.py:3026
+#: part/models.py:3060
msgid "Estimated maximum cost of stock on hand"
msgstr ""
-#: part/models.py:3087 templates/InvenTree/settings/settings_staff_js.html:349
+#: part/models.py:3121 templates/InvenTree/settings/settings_staff_js.html:349
msgid "Report"
msgstr ""
-#: part/models.py:3088
+#: part/models.py:3122
msgid "Stocktake report file (generated internally)"
msgstr ""
-#: part/models.py:3093 templates/InvenTree/settings/settings_staff_js.html:356
+#: part/models.py:3127 templates/InvenTree/settings/settings_staff_js.html:356
msgid "Part Count"
msgstr ""
-#: part/models.py:3094
+#: part/models.py:3128
msgid "Number of parts covered by stocktake"
msgstr ""
-#: part/models.py:3102
+#: part/models.py:3136
msgid "User who requested this stocktake report"
msgstr ""
-#: part/models.py:3238
+#: part/models.py:3272
msgid "Test templates can only be created for trackable parts"
msgstr ""
-#: part/models.py:3255
+#: part/models.py:3289
msgid "Test with this name already exists for this part"
msgstr ""
-#: part/models.py:3275 templates/js/translated/part.js:2821
+#: part/models.py:3309 templates/js/translated/part.js:2806
msgid "Test Name"
msgstr ""
-#: part/models.py:3276
+#: part/models.py:3310
msgid "Enter a name for the test"
msgstr ""
-#: part/models.py:3281
+#: part/models.py:3315
msgid "Test Description"
msgstr ""
-#: part/models.py:3282
+#: part/models.py:3316
msgid "Enter description for this test"
msgstr ""
-#: part/models.py:3287 templates/js/translated/part.js:2830
-#: templates/js/translated/table_filters.js:423
+#: part/models.py:3321 templates/js/translated/part.js:2815
+#: templates/js/translated/table_filters.js:429
msgid "Required"
msgstr ""
-#: part/models.py:3288
+#: part/models.py:3322
msgid "Is this test required to pass?"
msgstr ""
-#: part/models.py:3293 templates/js/translated/part.js:2838
+#: part/models.py:3327 templates/js/translated/part.js:2823
msgid "Requires Value"
msgstr ""
-#: part/models.py:3294
+#: part/models.py:3328
msgid "Does this test require a value when adding a test result?"
msgstr ""
-#: part/models.py:3299 templates/js/translated/part.js:2845
+#: part/models.py:3333 templates/js/translated/part.js:2830
msgid "Requires Attachment"
msgstr ""
-#: part/models.py:3300
+#: part/models.py:3334
msgid "Does this test require a file attachment when adding a test result?"
msgstr ""
-#: part/models.py:3346
+#: part/models.py:3380
msgid "Checkbox parameters cannot have units"
msgstr ""
-#: part/models.py:3351
+#: part/models.py:3385
msgid "Checkbox parameters cannot have choices"
msgstr ""
-#: part/models.py:3369
+#: part/models.py:3403
msgid "Choices must be unique"
msgstr ""
-#: part/models.py:3385
+#: part/models.py:3419
msgid "Parameter template name must be unique"
msgstr ""
-#: part/models.py:3401
+#: part/models.py:3435
msgid "Parameter Name"
msgstr ""
-#: part/models.py:3407
+#: part/models.py:3441
msgid "Physical units for this parameter"
msgstr ""
-#: part/models.py:3417
+#: part/models.py:3451
msgid "Parameter description"
msgstr ""
-#: part/models.py:3423 templates/js/translated/part.js:1600
-#: templates/js/translated/table_filters.js:734
+#: part/models.py:3457 templates/js/translated/part.js:1599
+#: templates/js/translated/table_filters.js:756
msgid "Checkbox"
msgstr ""
-#: part/models.py:3424
+#: part/models.py:3458
msgid "Is this parameter a checkbox?"
msgstr ""
-#: part/models.py:3429 templates/js/translated/part.js:1609
+#: part/models.py:3463 templates/js/translated/part.js:1608
msgid "Choices"
msgstr ""
-#: part/models.py:3430
+#: part/models.py:3464
msgid "Valid choices for this parameter (comma-separated)"
msgstr ""
-#: part/models.py:3511
+#: part/models.py:3545
msgid "Invalid choice for parameter value"
msgstr ""
-#: part/models.py:3555
+#: part/models.py:3589
msgid "Parent Part"
msgstr ""
-#: part/models.py:3560 part/models.py:3621 part/models.py:3622
+#: part/models.py:3594 part/models.py:3670 part/models.py:3671
#: templates/InvenTree/settings/settings_staff_js.html:199
msgid "Parameter Template"
msgstr ""
-#: part/models.py:3565
+#: part/models.py:3599
msgid "Data"
msgstr ""
-#: part/models.py:3565
+#: part/models.py:3599
msgid "Parameter Value"
msgstr ""
-#: part/models.py:3626 templates/InvenTree/settings/settings_staff_js.html:208
+#: part/models.py:3675 templates/InvenTree/settings/settings_staff_js.html:208
msgid "Default Value"
msgstr ""
-#: part/models.py:3627
+#: part/models.py:3676
msgid "Default Parameter Value"
msgstr ""
-#: part/models.py:3664
+#: part/models.py:3713
msgid "Part ID or part name"
msgstr ""
-#: part/models.py:3668
+#: part/models.py:3717
msgid "Unique part ID value"
msgstr ""
-#: part/models.py:3676
+#: part/models.py:3725
msgid "Part IPN value"
msgstr ""
-#: part/models.py:3679
+#: part/models.py:3728
msgid "Level"
msgstr ""
-#: part/models.py:3680
+#: part/models.py:3729
msgid "BOM level"
msgstr ""
-#: part/models.py:3764
+#: part/models.py:3735 part/models.py:4113
+msgid "BOM Item"
+msgstr ""
+
+#: part/models.py:3808
msgid "Select parent part"
msgstr ""
-#: part/models.py:3772
+#: part/models.py:3816
msgid "Sub part"
msgstr ""
-#: part/models.py:3773
+#: part/models.py:3817
msgid "Select part to be used in BOM"
msgstr ""
-#: part/models.py:3779
+#: part/models.py:3823
msgid "BOM quantity for this BOM item"
msgstr ""
-#: part/models.py:3783 part/templates/part/upload_bom.html:58
-#: templates/js/translated/bom.js:971 templates/js/translated/bom.js:998
-#: templates/js/translated/build.js:2113
-#: templates/js/translated/table_filters.js:156
-#: templates/js/translated/table_filters.js:185
-#: templates/js/translated/table_filters.js:500
-msgid "Optional"
-msgstr ""
-
-#: part/models.py:3784
+#: part/models.py:3828
msgid "This BOM item is optional"
msgstr ""
-#: part/models.py:3789 templates/js/translated/bom.js:967
-#: templates/js/translated/bom.js:1007 templates/js/translated/build.js:2104
-#: templates/js/translated/table_filters.js:160
-#: templates/js/translated/table_filters.js:496
-msgid "Consumable"
-msgstr ""
-
-#: part/models.py:3790
+#: part/models.py:3834
msgid "This BOM item is consumable (it is not tracked in build orders)"
msgstr ""
-#: part/models.py:3794 part/templates/part/upload_bom.html:55
+#: part/models.py:3838 part/templates/part/upload_bom.html:55
msgid "Overage"
msgstr ""
-#: part/models.py:3795
+#: part/models.py:3839
msgid "Estimated build wastage quantity (absolute or percentage)"
msgstr ""
-#: part/models.py:3798
+#: part/models.py:3842
msgid "BOM item reference"
msgstr ""
-#: part/models.py:3801
+#: part/models.py:3845
msgid "BOM item notes"
msgstr ""
-#: part/models.py:3805
+#: part/models.py:3849
msgid "Checksum"
msgstr ""
-#: part/models.py:3805
+#: part/models.py:3849
msgid "BOM line checksum"
msgstr ""
-#: part/models.py:3810 templates/js/translated/table_filters.js:144
+#: part/models.py:3854 templates/js/translated/table_filters.js:150
msgid "Validated"
msgstr ""
-#: part/models.py:3811
+#: part/models.py:3855
msgid "This BOM item has been validated"
msgstr ""
-#: part/models.py:3816 part/templates/part/upload_bom.html:57
-#: templates/js/translated/bom.js:1024
-#: templates/js/translated/table_filters.js:148
-#: templates/js/translated/table_filters.js:181
+#: part/models.py:3860 part/templates/part/upload_bom.html:57
+#: templates/js/translated/bom.js:1042
+#: templates/js/translated/table_filters.js:154
+#: templates/js/translated/table_filters.js:187
msgid "Gets inherited"
msgstr ""
-#: part/models.py:3817
+#: part/models.py:3861
msgid "This BOM item is inherited by BOMs for variant parts"
msgstr ""
-#: part/models.py:3822 part/templates/part/upload_bom.html:56
-#: templates/js/translated/bom.js:1016
+#: part/models.py:3866 part/templates/part/upload_bom.html:56
+#: templates/js/translated/bom.js:1034
msgid "Allow Variants"
msgstr ""
-#: part/models.py:3823
+#: part/models.py:3867
msgid "Stock items for variant parts can be used for this BOM item"
msgstr ""
-#: part/models.py:3909 stock/models.py:577
+#: part/models.py:3953 stock/models.py:577
msgid "Quantity must be integer value for trackable parts"
msgstr ""
-#: part/models.py:3918 part/models.py:3920
+#: part/models.py:3962 part/models.py:3964
msgid "Sub part must be specified"
msgstr ""
-#: part/models.py:4036
+#: part/models.py:4080
msgid "BOM Item Substitute"
msgstr ""
-#: part/models.py:4057
+#: part/models.py:4101
msgid "Substitute part cannot be the same as the master part"
msgstr ""
-#: part/models.py:4070
+#: part/models.py:4114
msgid "Parent BOM item"
msgstr ""
-#: part/models.py:4078
+#: part/models.py:4122
msgid "Substitute part"
msgstr ""
-#: part/models.py:4093
+#: part/models.py:4137
msgid "Part 1"
msgstr ""
-#: part/models.py:4097
+#: part/models.py:4141
msgid "Part 2"
msgstr ""
-#: part/models.py:4097
+#: part/models.py:4141
msgid "Select Related Part"
msgstr ""
-#: part/models.py:4115
+#: part/models.py:4159
msgid "Part relationship cannot be created between a part and itself"
msgstr ""
-#: part/models.py:4119
+#: part/models.py:4163
msgid "Duplicate relationship already exists"
msgstr ""
-#: part/serializers.py:152 part/serializers.py:175 stock/serializers.py:257
+#: part/serializers.py:152 part/serializers.py:175 stock/serializers.py:319
msgid "Purchase currency of this stock item"
msgstr ""
-#: part/serializers.py:302
+#: part/serializers.py:313
+msgid "No parts selected"
+msgstr ""
+
+#: part/serializers.py:321
+msgid "Select category"
+msgstr ""
+
+#: part/serializers.py:352
msgid "Original Part"
msgstr ""
-#: part/serializers.py:302
+#: part/serializers.py:352
msgid "Select original part to duplicate"
msgstr ""
-#: part/serializers.py:307
+#: part/serializers.py:357
msgid "Copy Image"
msgstr ""
-#: part/serializers.py:307
+#: part/serializers.py:357
msgid "Copy image from original part"
msgstr ""
-#: part/serializers.py:312 part/templates/part/detail.html:296
+#: part/serializers.py:362 part/templates/part/detail.html:277
msgid "Copy BOM"
msgstr ""
-#: part/serializers.py:312
+#: part/serializers.py:362
msgid "Copy bill of materials from original part"
msgstr ""
-#: part/serializers.py:317
+#: part/serializers.py:367
msgid "Copy Parameters"
msgstr ""
-#: part/serializers.py:317
+#: part/serializers.py:367
msgid "Copy parameter data from original part"
msgstr ""
-#: part/serializers.py:327
+#: part/serializers.py:377
msgid "Initial Stock Quantity"
msgstr ""
-#: part/serializers.py:327
+#: part/serializers.py:377
msgid "Specify initial stock quantity for this Part. If quantity is zero, no stock is added."
msgstr ""
-#: part/serializers.py:333
+#: part/serializers.py:383
msgid "Initial Stock Location"
msgstr ""
-#: part/serializers.py:333
+#: part/serializers.py:383
msgid "Specify initial stock location for this Part"
msgstr ""
-#: part/serializers.py:343
+#: part/serializers.py:393
msgid "Select supplier (or leave blank to skip)"
msgstr ""
-#: part/serializers.py:354
+#: part/serializers.py:404
msgid "Select manufacturer (or leave blank to skip)"
msgstr ""
-#: part/serializers.py:360
+#: part/serializers.py:410
msgid "Manufacturer part number"
msgstr ""
-#: part/serializers.py:367
+#: part/serializers.py:417
msgid "Selected company is not a valid supplier"
msgstr ""
-#: part/serializers.py:375
+#: part/serializers.py:425
msgid "Selected company is not a valid manufacturer"
msgstr ""
-#: part/serializers.py:387
+#: part/serializers.py:437
msgid "Manufacturer part matching this MPN already exists"
msgstr ""
-#: part/serializers.py:395
+#: part/serializers.py:445
msgid "Supplier part matching this SKU already exists"
msgstr ""
-#: part/serializers.py:620 part/templates/part/copy_part.html:9
-#: templates/js/translated/part.js:449
+#: part/serializers.py:682 part/templates/part/copy_part.html:9
+#: templates/js/translated/part.js:448
msgid "Duplicate Part"
msgstr ""
-#: part/serializers.py:620
+#: part/serializers.py:682
msgid "Copy initial data from another Part"
msgstr ""
-#: part/serializers.py:625 templates/js/translated/part.js:103
+#: part/serializers.py:687 templates/js/translated/part.js:102
msgid "Initial Stock"
msgstr ""
-#: part/serializers.py:625
+#: part/serializers.py:687
msgid "Create Part with initial stock quantity"
msgstr ""
-#: part/serializers.py:630
+#: part/serializers.py:692
msgid "Supplier Information"
msgstr ""
-#: part/serializers.py:630
+#: part/serializers.py:692
msgid "Add initial supplier information for this part"
msgstr ""
-#: part/serializers.py:636
+#: part/serializers.py:698
msgid "Copy Category Parameters"
msgstr ""
-#: part/serializers.py:637
+#: part/serializers.py:699
msgid "Copy parameter templates from selected part category"
msgstr ""
-#: part/serializers.py:842
+#: part/serializers.py:904
msgid "Limit stocktake report to a particular part, and any variant parts"
msgstr ""
-#: part/serializers.py:848
+#: part/serializers.py:910
msgid "Limit stocktake report to a particular part category, and any child categories"
msgstr ""
-#: part/serializers.py:854
+#: part/serializers.py:916
msgid "Limit stocktake report to a particular stock location, and any child locations"
msgstr ""
-#: part/serializers.py:859
+#: part/serializers.py:921
msgid "Generate Report"
msgstr ""
-#: part/serializers.py:860
+#: part/serializers.py:922
msgid "Generate report file containing calculated stocktake data"
msgstr ""
-#: part/serializers.py:865
+#: part/serializers.py:927
msgid "Update Parts"
msgstr ""
-#: part/serializers.py:866
+#: part/serializers.py:928
msgid "Update specified parts with calculated stocktake data"
msgstr ""
-#: part/serializers.py:874
+#: part/serializers.py:936
msgid "Stocktake functionality is not enabled"
msgstr ""
-#: part/serializers.py:963
+#: part/serializers.py:1025
msgid "Update"
msgstr ""
-#: part/serializers.py:964
+#: part/serializers.py:1026
msgid "Update pricing for this part"
msgstr ""
-#: part/serializers.py:1246
+#: part/serializers.py:1308
msgid "Select part to copy BOM from"
msgstr ""
-#: part/serializers.py:1254
+#: part/serializers.py:1316
msgid "Remove Existing Data"
msgstr ""
-#: part/serializers.py:1255
+#: part/serializers.py:1317
msgid "Remove existing BOM items before copying"
msgstr ""
-#: part/serializers.py:1260
+#: part/serializers.py:1322
msgid "Include Inherited"
msgstr ""
-#: part/serializers.py:1261
+#: part/serializers.py:1323
msgid "Include BOM items which are inherited from templated parts"
msgstr ""
-#: part/serializers.py:1266
+#: part/serializers.py:1328
msgid "Skip Invalid Rows"
msgstr ""
-#: part/serializers.py:1267
+#: part/serializers.py:1329
msgid "Enable this option to skip invalid rows"
msgstr ""
-#: part/serializers.py:1272
+#: part/serializers.py:1334
msgid "Copy Substitute Parts"
msgstr ""
-#: part/serializers.py:1273
+#: part/serializers.py:1335
msgid "Copy substitute parts when duplicate BOM items"
msgstr ""
-#: part/serializers.py:1313
+#: part/serializers.py:1375
msgid "Clear Existing BOM"
msgstr ""
-#: part/serializers.py:1314
+#: part/serializers.py:1376
msgid "Delete existing BOM items before uploading"
msgstr ""
-#: part/serializers.py:1344
+#: part/serializers.py:1406
msgid "No part column specified"
msgstr ""
-#: part/serializers.py:1387
+#: part/serializers.py:1449
msgid "Multiple matching parts found"
msgstr ""
-#: part/serializers.py:1390
+#: part/serializers.py:1452
msgid "No matching part found"
msgstr ""
-#: part/serializers.py:1393
+#: part/serializers.py:1455
msgid "Part is not designated as a component"
msgstr ""
-#: part/serializers.py:1402
+#: part/serializers.py:1464
msgid "Quantity not provided"
msgstr ""
-#: part/serializers.py:1410
+#: part/serializers.py:1472
msgid "Invalid quantity"
msgstr ""
-#: part/serializers.py:1431
+#: part/serializers.py:1493
msgid "At least one BOM item is required"
msgstr ""
@@ -6421,9 +6453,9 @@ msgstr ""
msgid "The available stock for {part.name} has fallen below the configured minimum level"
msgstr ""
-#: part/tasks.py:294 templates/js/translated/part.js:1040
-#: templates/js/translated/part.js:1793 templates/js/translated/part.js:1848
-#: templates/js/translated/purchase_order.js:2052
+#: part/tasks.py:294 templates/js/translated/part.js:1039
+#: templates/js/translated/part.js:1792 templates/js/translated/part.js:1847
+#: templates/js/translated/purchase_order.js:2062
msgid "Total Quantity"
msgstr ""
@@ -6461,14 +6493,6 @@ msgstr ""
msgid "The BOM for %(part)s has not been validated."
msgstr ""
-#: part/templates/part/bom.html:30 part/templates/part/detail.html:291
-msgid "BOM actions"
-msgstr ""
-
-#: part/templates/part/bom.html:34
-msgid "Delete Items"
-msgstr ""
-
#: part/templates/part/category.html:34
msgid "Perform stocktake for this part category"
msgstr ""
@@ -6505,7 +6529,7 @@ msgstr ""
msgid "Top level part category"
msgstr ""
-#: part/templates/part/category.html:121 part/templates/part/category.html:225
+#: part/templates/part/category.html:121 part/templates/part/category.html:206
#: part/templates/part/category_sidebar.html:7
msgid "Subcategories"
msgstr ""
@@ -6518,33 +6542,20 @@ msgstr ""
msgid "Create new part"
msgstr ""
-#: part/templates/part/category.html:165 templates/js/translated/bom.js:443
+#: part/templates/part/category.html:165 templates/js/translated/bom.js:444
msgid "New Part"
msgstr ""
-#: part/templates/part/category.html:175 part/templates/part/detail.html:390
-#: part/templates/part/detail.html:421
-msgid "Options"
-msgstr ""
-
-#: part/templates/part/category.html:179
-msgid "Set category"
-msgstr ""
-
-#: part/templates/part/category.html:180
-msgid "Set Category"
-msgstr ""
-
-#: part/templates/part/category.html:208
+#: part/templates/part/category.html:191
#: templates/InvenTree/settings/sidebar.html:47
msgid "Part Parameters"
msgstr ""
-#: part/templates/part/category.html:229
+#: part/templates/part/category.html:210
msgid "Create new part category"
msgstr ""
-#: part/templates/part/category.html:230
+#: part/templates/part/category.html:211
msgid "New Category"
msgstr ""
@@ -6581,7 +6592,7 @@ msgid "Refresh scheduling data"
msgstr ""
#: part/templates/part/detail.html:45 part/templates/part/prices.html:15
-#: templates/js/translated/tables.js:584
+#: templates/js/translated/tables.js:560
msgid "Refresh"
msgstr ""
@@ -6592,7 +6603,7 @@ msgstr ""
#: part/templates/part/detail.html:67 part/templates/part/part_sidebar.html:50
#: stock/admin.py:130 templates/InvenTree/settings/part_stocktake.html:29
#: templates/InvenTree/settings/sidebar.html:51
-#: templates/js/translated/stock.js:1952 users/models.py:39
+#: templates/js/translated/stock.js:2109 users/models.py:39
msgid "Stocktake"
msgstr ""
@@ -6604,101 +6615,101 @@ msgstr ""
msgid "Add Test Template"
msgstr ""
-#: part/templates/part/detail.html:145 stock/templates/stock/item.html:53
+#: part/templates/part/detail.html:139 stock/templates/stock/item.html:49
msgid "Sales Order Allocations"
msgstr ""
-#: part/templates/part/detail.html:165
+#: part/templates/part/detail.html:156
msgid "Part Notes"
msgstr ""
-#: part/templates/part/detail.html:180
+#: part/templates/part/detail.html:171
msgid "Part Variants"
msgstr ""
-#: part/templates/part/detail.html:184
+#: part/templates/part/detail.html:175
msgid "Create new variant"
msgstr ""
-#: part/templates/part/detail.html:185
+#: part/templates/part/detail.html:176
msgid "New Variant"
msgstr ""
-#: part/templates/part/detail.html:212
+#: part/templates/part/detail.html:199
msgid "Add new parameter"
msgstr ""
-#: part/templates/part/detail.html:249 part/templates/part/part_sidebar.html:58
+#: part/templates/part/detail.html:232 part/templates/part/part_sidebar.html:58
msgid "Related Parts"
msgstr ""
-#: part/templates/part/detail.html:253 part/templates/part/detail.html:254
+#: part/templates/part/detail.html:236 part/templates/part/detail.html:237
msgid "Add Related"
msgstr ""
-#: part/templates/part/detail.html:274 part/templates/part/part_sidebar.html:17
+#: part/templates/part/detail.html:255 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:279
+#: part/templates/part/detail.html:260
msgid "Export actions"
msgstr ""
-#: part/templates/part/detail.html:283 templates/js/translated/bom.js:339
+#: part/templates/part/detail.html:264 templates/js/translated/bom.js:340
msgid "Export BOM"
msgstr ""
-#: part/templates/part/detail.html:285
+#: part/templates/part/detail.html:266
msgid "Print BOM Report"
msgstr ""
-#: part/templates/part/detail.html:295
+#: part/templates/part/detail.html:272
+msgid "BOM actions"
+msgstr ""
+
+#: part/templates/part/detail.html:276
msgid "Upload BOM"
msgstr ""
-#: part/templates/part/detail.html:297
+#: part/templates/part/detail.html:278
msgid "Validate BOM"
msgstr ""
-#: part/templates/part/detail.html:302 part/templates/part/detail.html:303
-#: templates/js/translated/bom.js:1279 templates/js/translated/bom.js:1280
+#: part/templates/part/detail.html:283 part/templates/part/detail.html:284
+#: templates/js/translated/bom.js:1299 templates/js/translated/bom.js:1300
msgid "Add BOM Item"
msgstr ""
-#: part/templates/part/detail.html:316
+#: part/templates/part/detail.html:297
msgid "Assemblies"
msgstr ""
-#: part/templates/part/detail.html:334
+#: part/templates/part/detail.html:313
msgid "Part Builds"
msgstr ""
-#: part/templates/part/detail.html:361 stock/templates/stock/item.html:38
+#: part/templates/part/detail.html:338 stock/templates/stock/item.html:36
msgid "Build Order Allocations"
msgstr ""
-#: part/templates/part/detail.html:377
+#: part/templates/part/detail.html:352
msgid "Part Suppliers"
msgstr ""
-#: part/templates/part/detail.html:407
+#: part/templates/part/detail.html:372
msgid "Part Manufacturers"
msgstr ""
-#: part/templates/part/detail.html:423
-msgid "Delete manufacturer parts"
-msgstr ""
-
-#: part/templates/part/detail.html:707
+#: part/templates/part/detail.html:654
msgid "Related Part"
msgstr ""
-#: part/templates/part/detail.html:715
+#: part/templates/part/detail.html:662
msgid "Add Related Part"
msgstr ""
-#: part/templates/part/detail.html:800
+#: part/templates/part/detail.html:747
msgid "Add Test Result Template"
msgstr ""
@@ -6732,13 +6743,13 @@ msgid "Download Part Import Template"
msgstr ""
#: part/templates/part/import_wizard/part_upload.html:92
-#: templates/js/translated/bom.js:308 templates/js/translated/bom.js:342
+#: templates/js/translated/bom.js:309 templates/js/translated/bom.js:343
#: templates/js/translated/order.js:129 templates/js/translated/tables.js:189
msgid "Format"
msgstr ""
#: part/templates/part/import_wizard/part_upload.html:93
-#: templates/js/translated/bom.js:309 templates/js/translated/bom.js:343
+#: templates/js/translated/bom.js:310 templates/js/translated/bom.js:344
#: templates/js/translated/order.js:130
msgid "Select file format"
msgstr ""
@@ -6779,7 +6790,7 @@ msgstr ""
msgid "Transfer part stock"
msgstr ""
-#: part/templates/part/part_base.html:93
+#: part/templates/part/part_base.html:93 templates/js/translated/part.js:2264
msgid "Part actions"
msgstr ""
@@ -6824,10 +6835,10 @@ msgid "Part is not active"
msgstr ""
#: part/templates/part/part_base.html:148
-#: templates/js/translated/company.js:945
-#: templates/js/translated/company.js:1185
-#: templates/js/translated/model_renderers.js:273
-#: templates/js/translated/part.js:792 templates/js/translated/part.js:1192
+#: templates/js/translated/company.js:1318
+#: templates/js/translated/company.js:1606
+#: templates/js/translated/model_renderers.js:287
+#: templates/js/translated/part.js:791 templates/js/translated/part.js:1191
msgid "Inactive"
msgstr ""
@@ -6850,7 +6861,7 @@ msgstr ""
msgid "Allocated to Sales Orders"
msgstr ""
-#: part/templates/part/part_base.html:237 templates/js/translated/bom.js:1178
+#: part/templates/part/part_base.html:237 templates/js/translated/bom.js:1198
msgid "Can Build"
msgstr ""
@@ -6858,8 +6869,8 @@ msgstr ""
msgid "Minimum stock level"
msgstr ""
-#: part/templates/part/part_base.html:324 templates/js/translated/bom.js:1041
-#: templates/js/translated/part.js:1238 templates/js/translated/part.js:2304
+#: part/templates/part/part_base.html:324 templates/js/translated/bom.js:1059
+#: templates/js/translated/part.js:1237 templates/js/translated/part.js:2380
#: templates/js/translated/pricing.js:391
#: templates/js/translated/pricing.js:1040
msgid "Price Range"
@@ -6882,7 +6893,7 @@ msgstr ""
msgid "Link Barcode to Part"
msgstr ""
-#: part/templates/part/part_base.html:474 templates/js/translated/part.js:2191
+#: part/templates/part/part_base.html:474 templates/js/translated/part.js:2258
msgid "part"
msgstr ""
@@ -6956,9 +6967,9 @@ msgstr ""
#: stock/templates/stock/stock_app_base.html:10
#: templates/InvenTree/search.html:153
#: templates/InvenTree/settings/sidebar.html:49
-#: templates/js/translated/part.js:1216 templates/js/translated/part.js:2120
-#: templates/js/translated/part.js:2284 templates/js/translated/stock.js:1022
-#: templates/js/translated/stock.js:1829 templates/navbar.html:31
+#: templates/js/translated/part.js:1215 templates/js/translated/part.js:2119
+#: templates/js/translated/part.js:2360 templates/js/translated/stock.js:1021
+#: templates/js/translated/stock.js:1986 templates/navbar.html:31
msgid "Stock"
msgstr ""
@@ -6989,9 +7000,9 @@ msgstr ""
#: part/templates/part/prices.html:25 stock/admin.py:129
#: stock/templates/stock/item_base.html:442
-#: templates/js/translated/company.js:1313
-#: templates/js/translated/company.js:1323
-#: templates/js/translated/stock.js:1982
+#: templates/js/translated/company.js:1734
+#: templates/js/translated/company.js:1744
+#: templates/js/translated/stock.js:2139
msgid "Last Updated"
msgstr ""
@@ -7054,12 +7065,12 @@ msgstr ""
msgid "Add Sell Price Break"
msgstr ""
-#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:682
-#: templates/js/translated/part.js:2115 templates/js/translated/part.js:2117
+#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:681
+#: templates/js/translated/part.js:2114 templates/js/translated/part.js:2116
msgid "No Stock"
msgstr ""
-#: part/templates/part/stock_count.html:9 templates/InvenTree/index.html:167
+#: part/templates/part/stock_count.html:9 templates/InvenTree/index.html:120
msgid "Low Stock"
msgstr ""
@@ -7163,7 +7174,7 @@ msgid "Match found for barcode data"
msgstr ""
#: plugin/base/barcodes/api.py:120
-#: templates/js/translated/purchase_order.js:1372
+#: templates/js/translated/purchase_order.js:1387
msgid "Barcode matches existing item"
msgstr ""
@@ -7226,43 +7237,43 @@ msgstr ""
msgid "Open link"
msgstr ""
-#: plugin/models.py:27
+#: plugin/models.py:28
msgid "Plugin Configuration"
msgstr ""
-#: plugin/models.py:28
+#: plugin/models.py:29
msgid "Plugin Configurations"
msgstr ""
-#: plugin/models.py:33
+#: plugin/models.py:34
msgid "Key"
msgstr ""
-#: plugin/models.py:34
+#: plugin/models.py:35
msgid "Key of plugin"
msgstr ""
-#: plugin/models.py:42
+#: plugin/models.py:43
msgid "PluginName of the plugin"
msgstr ""
-#: plugin/models.py:48
+#: plugin/models.py:49
msgid "Is the plugin active"
msgstr ""
-#: plugin/models.py:124
+#: plugin/models.py:125
msgid "Sample plugin"
msgstr ""
-#: plugin/models.py:133
+#: plugin/models.py:134
msgid "Builtin Plugin"
msgstr ""
-#: plugin/models.py:159 templates/InvenTree/settings/plugin_settings.html:9
+#: plugin/models.py:160 templates/InvenTree/settings/plugin_settings.html:9
msgid "Plugin"
msgstr ""
-#: plugin/models.py:210
+#: plugin/models.py:211
msgid "Method"
msgstr ""
@@ -7414,47 +7425,47 @@ msgstr ""
msgid "Build query filters (comma-separated list of key=value pairs"
msgstr ""
-#: report/models.py:418
+#: report/models.py:420
msgid "Part Filters"
msgstr ""
-#: report/models.py:419
+#: report/models.py:421
msgid "Part query filters (comma-separated list of key=value pairs"
msgstr ""
-#: report/models.py:453
+#: report/models.py:455
msgid "Purchase order query filters"
msgstr ""
-#: report/models.py:491
+#: report/models.py:493
msgid "Sales order query filters"
msgstr ""
-#: report/models.py:529
+#: report/models.py:531
msgid "Return order query filters"
msgstr ""
-#: report/models.py:582
+#: report/models.py:584
msgid "Snippet"
msgstr ""
-#: report/models.py:583
+#: report/models.py:585
msgid "Report snippet file"
msgstr ""
-#: report/models.py:587
+#: report/models.py:589
msgid "Snippet file description"
msgstr ""
-#: report/models.py:624
+#: report/models.py:626
msgid "Asset"
msgstr ""
-#: report/models.py:625
+#: report/models.py:627
msgid "Report asset file"
msgstr ""
-#: report/models.py:632
+#: report/models.py:634
msgid "Asset file description"
msgstr ""
@@ -7475,8 +7486,8 @@ msgstr ""
#: templates/js/translated/order.js:316 templates/js/translated/pricing.js:527
#: templates/js/translated/pricing.js:596
#: templates/js/translated/pricing.js:820
-#: templates/js/translated/purchase_order.js:2083
-#: templates/js/translated/sales_order.js:1817
+#: templates/js/translated/purchase_order.js:2093
+#: templates/js/translated/sales_order.js:1829
msgid "Unit Price"
msgstr ""
@@ -7488,23 +7499,23 @@ msgstr ""
#: report/templates/report/inventree_po_report_base.html:72
#: report/templates/report/inventree_so_report_base.html:72
-#: templates/js/translated/purchase_order.js:1985
-#: templates/js/translated/sales_order.js:1792
+#: templates/js/translated/purchase_order.js:1995
+#: templates/js/translated/sales_order.js:1804
msgid "Total"
msgstr ""
#: report/templates/report/inventree_return_order_report_base.html:25
#: report/templates/report/inventree_test_report_base.html:88
#: stock/models.py:725 stock/templates/stock/item_base.html:312
-#: templates/js/translated/build.js:502 templates/js/translated/build.js:1423
-#: templates/js/translated/build.js:1989
-#: templates/js/translated/model_renderers.js:201
-#: templates/js/translated/return_order.js:528
-#: templates/js/translated/return_order.js:708
-#: templates/js/translated/sales_order.js:300
-#: templates/js/translated/sales_order.js:1597
-#: templates/js/translated/sales_order.js:1682
-#: templates/js/translated/stock.js:563
+#: templates/js/translated/build.js:508 templates/js/translated/build.js:1306
+#: templates/js/translated/build.js:2281
+#: templates/js/translated/model_renderers.js:215
+#: templates/js/translated/return_order.js:540
+#: templates/js/translated/return_order.js:720
+#: templates/js/translated/sales_order.js:312
+#: templates/js/translated/sales_order.js:1609
+#: templates/js/translated/sales_order.js:1694
+#: templates/js/translated/stock.js:562
msgid "Serial Number"
msgstr ""
@@ -7517,7 +7528,7 @@ msgid "Test Results"
msgstr ""
#: report/templates/report/inventree_test_report_base.html:102
-#: stock/models.py:2243 templates/js/translated/stock.js:1419
+#: stock/models.py:2243 templates/js/translated/stock.js:1418
msgid "Test"
msgstr ""
@@ -7548,8 +7559,8 @@ msgid "Installed Items"
msgstr ""
#: report/templates/report/inventree_test_report_base.html:168
-#: stock/admin.py:104 templates/js/translated/stock.js:667
-#: templates/js/translated/stock.js:838 templates/js/translated/stock.js:2849
+#: stock/admin.py:104 templates/js/translated/stock.js:666
+#: templates/js/translated/stock.js:837 templates/js/translated/stock.js:2976
msgid "Serial"
msgstr ""
@@ -7617,31 +7628,31 @@ msgstr ""
#: stock/admin.py:131 stock/models.py:789
#: stock/templates/stock/item_base.html:429
-#: templates/js/translated/stock.js:1966
+#: templates/js/translated/stock.js:2123
msgid "Expiry Date"
msgstr ""
-#: stock/api.py:420 templates/js/translated/table_filters.js:373
+#: stock/api.py:426 templates/js/translated/table_filters.js:379
msgid "External Location"
msgstr ""
-#: stock/api.py:582
+#: stock/api.py:619
msgid "Quantity is required"
msgstr ""
-#: stock/api.py:589
+#: stock/api.py:626
msgid "Valid part must be supplied"
msgstr ""
-#: stock/api.py:615
+#: stock/api.py:652
msgid "The given supplier part does not exist"
msgstr ""
-#: stock/api.py:624
+#: stock/api.py:661
msgid "The supplier part has a pack size defined, but flag use_pack_size not set"
msgstr ""
-#: stock/api.py:642
+#: stock/api.py:679
msgid "Serial numbers cannot be supplied for a non-trackable part"
msgstr ""
@@ -7652,7 +7663,7 @@ msgid "Stock Location"
msgstr ""
#: stock/models.py:55 stock/templates/stock/location.html:177
-#: templates/InvenTree/search.html:166 templates/js/translated/search.js:220
+#: templates/InvenTree/search.html:166 templates/js/translated/search.js:178
#: users/models.py:40
msgid "Stock Locations"
msgstr ""
@@ -7670,8 +7681,8 @@ msgstr ""
msgid "Stock items may not be directly located into a structural stock locations, but may be located to child locations."
msgstr ""
-#: stock/models.py:132 templates/js/translated/stock.js:2529
-#: templates/js/translated/table_filters.js:213
+#: stock/models.py:132 templates/js/translated/stock.js:2660
+#: templates/js/translated/table_filters.js:219
msgid "External"
msgstr ""
@@ -7687,7 +7698,7 @@ msgstr ""
msgid "Stock items cannot be located into structural stock locations!"
msgstr ""
-#: stock/models.py:583 stock/serializers.py:174
+#: stock/models.py:583 stock/serializers.py:223
msgid "Stock item cannot be created for virtual parts"
msgstr ""
@@ -7821,7 +7832,7 @@ msgstr ""
msgid "Quantity does not match serial numbers"
msgstr ""
-#: stock/models.py:1403 stock/serializers.py:374
+#: stock/models.py:1403 stock/serializers.py:440
msgid "Serial numbers already exist"
msgstr ""
@@ -7849,7 +7860,7 @@ msgstr ""
msgid "Serialized stock cannot be merged"
msgstr ""
-#: stock/models.py:1496 stock/serializers.py:975
+#: stock/models.py:1496 stock/serializers.py:1092
msgid "Duplicate stock items"
msgstr ""
@@ -7901,132 +7912,141 @@ msgstr ""
msgid "Test notes"
msgstr ""
-#: stock/serializers.py:76
+#: stock/serializers.py:121
msgid "Serial number is too large"
msgstr ""
-#: stock/serializers.py:166
+#: stock/serializers.py:215
msgid "Use pack size when adding: the quantity defined is the number of packs"
msgstr ""
-#: stock/serializers.py:254
+#: stock/serializers.py:316
msgid "Purchase price of this stock item, per unit or pack"
msgstr ""
-#: stock/serializers.py:307
+#: stock/serializers.py:373
msgid "Enter number of stock items to serialize"
msgstr ""
-#: stock/serializers.py:319
+#: stock/serializers.py:385
#, python-brace-format
msgid "Quantity must not exceed available stock quantity ({q})"
msgstr ""
-#: stock/serializers.py:325
+#: stock/serializers.py:391
msgid "Enter serial numbers for new items"
msgstr ""
-#: stock/serializers.py:336 stock/serializers.py:932 stock/serializers.py:1174
+#: stock/serializers.py:402 stock/serializers.py:1049 stock/serializers.py:1291
msgid "Destination stock location"
msgstr ""
-#: stock/serializers.py:343
+#: stock/serializers.py:409
msgid "Optional note field"
msgstr ""
-#: stock/serializers.py:353
+#: stock/serializers.py:419
msgid "Serial numbers cannot be assigned to this part"
msgstr ""
-#: stock/serializers.py:414
+#: stock/serializers.py:480
msgid "Select stock item to install"
msgstr ""
-#: stock/serializers.py:427
-msgid "Stock item is unavailable"
-msgstr ""
-
-#: stock/serializers.py:434
-msgid "Selected part is not in the Bill of Materials"
-msgstr ""
-
-#: stock/serializers.py:471
-msgid "Destination location for uninstalled item"
-msgstr ""
-
-#: stock/serializers.py:476 stock/serializers.py:557
+#: stock/serializers.py:485 stock/serializers.py:543 stock/serializers.py:624
+#: stock/serializers.py:682
msgid "Add transaction note (optional)"
msgstr ""
-#: stock/serializers.py:510
+#: stock/serializers.py:494
+msgid "Stock item is unavailable"
+msgstr ""
+
+#: stock/serializers.py:501
+msgid "Selected part is not in the Bill of Materials"
+msgstr ""
+
+#: stock/serializers.py:538
+msgid "Destination location for uninstalled item"
+msgstr ""
+
+#: stock/serializers.py:577
msgid "Select part to convert stock item into"
msgstr ""
-#: stock/serializers.py:521
+#: stock/serializers.py:588
msgid "Selected part is not a valid option for conversion"
msgstr ""
-#: stock/serializers.py:552
+#: stock/serializers.py:619
msgid "Destination location for returned item"
msgstr ""
-#: stock/serializers.py:787
+#: stock/serializers.py:663
+msgid "Select stock items to change status"
+msgstr ""
+
+#: stock/serializers.py:670
+msgid "No stock items selected"
+msgstr ""
+
+#: stock/serializers.py:904
msgid "Part must be salable"
msgstr ""
-#: stock/serializers.py:791
+#: stock/serializers.py:908
msgid "Item is allocated to a sales order"
msgstr ""
-#: stock/serializers.py:795
+#: stock/serializers.py:912
msgid "Item is allocated to a build order"
msgstr ""
-#: stock/serializers.py:826
+#: stock/serializers.py:943
msgid "Customer to assign stock items"
msgstr ""
-#: stock/serializers.py:832
+#: stock/serializers.py:949
msgid "Selected company is not a customer"
msgstr ""
-#: stock/serializers.py:840
+#: stock/serializers.py:957
msgid "Stock assignment notes"
msgstr ""
-#: stock/serializers.py:850 stock/serializers.py:1081
+#: stock/serializers.py:967 stock/serializers.py:1198
msgid "A list of stock items must be provided"
msgstr ""
-#: stock/serializers.py:939
+#: stock/serializers.py:1056
msgid "Stock merging notes"
msgstr ""
-#: stock/serializers.py:944
+#: stock/serializers.py:1061
msgid "Allow mismatched suppliers"
msgstr ""
-#: stock/serializers.py:945
+#: stock/serializers.py:1062
msgid "Allow stock items with different supplier parts to be merged"
msgstr ""
-#: stock/serializers.py:950
+#: stock/serializers.py:1067
msgid "Allow mismatched status"
msgstr ""
-#: stock/serializers.py:951
+#: stock/serializers.py:1068
msgid "Allow stock items with different status codes to be merged"
msgstr ""
-#: stock/serializers.py:961
+#: stock/serializers.py:1078
msgid "At least two stock items must be provided"
msgstr ""
-#: stock/serializers.py:1043
+#: stock/serializers.py:1160
msgid "StockItem primary key value"
msgstr ""
-#: stock/serializers.py:1071
+#: stock/serializers.py:1188
msgid "Stock transaction notes"
msgstr ""
@@ -8034,48 +8054,48 @@ msgstr ""
msgid "Stock Tracking Information"
msgstr ""
-#: stock/templates/stock/item.html:69
+#: stock/templates/stock/item.html:63
msgid "Child Stock Items"
msgstr ""
-#: stock/templates/stock/item.html:77
+#: stock/templates/stock/item.html:71
msgid "This stock item does not have any child items"
msgstr ""
-#: stock/templates/stock/item.html:86
+#: stock/templates/stock/item.html:80
#: stock/templates/stock/stock_sidebar.html:12
msgid "Test Data"
msgstr ""
-#: stock/templates/stock/item.html:90 stock/templates/stock/item_base.html:66
+#: stock/templates/stock/item.html:84 stock/templates/stock/item_base.html:66
msgid "Test Report"
msgstr ""
-#: stock/templates/stock/item.html:94 stock/templates/stock/item.html:288
+#: stock/templates/stock/item.html:88 stock/templates/stock/item.html:278
msgid "Delete Test Data"
msgstr ""
-#: stock/templates/stock/item.html:98
+#: stock/templates/stock/item.html:92
msgid "Add Test Data"
msgstr ""
-#: stock/templates/stock/item.html:132
+#: stock/templates/stock/item.html:124
msgid "Stock Item Notes"
msgstr ""
-#: stock/templates/stock/item.html:147
+#: stock/templates/stock/item.html:139
msgid "Installed Stock Items"
msgstr ""
-#: stock/templates/stock/item.html:152 templates/js/translated/stock.js:2996
+#: stock/templates/stock/item.html:144 templates/js/translated/stock.js:3123
msgid "Install Stock Item"
msgstr ""
-#: stock/templates/stock/item.html:276
+#: stock/templates/stock/item.html:266
msgid "Delete all test results for this stock item"
msgstr ""
-#: stock/templates/stock/item.html:305 templates/js/translated/stock.js:1611
+#: stock/templates/stock/item.html:295 templates/js/translated/stock.js:1610
msgid "Add Test Result"
msgstr ""
@@ -8083,13 +8103,13 @@ msgstr ""
msgid "Locate stock item"
msgstr ""
-#: stock/templates/stock/item_base.html:52 templates/stock_table.html:21
+#: stock/templates/stock/item_base.html:52
msgid "Scan to Location"
msgstr ""
#: stock/templates/stock/item_base.html:60
#: stock/templates/stock/location.html:69
-#: templates/js/translated/filters.js:322
+#: templates/js/translated/filters.js:432
msgid "Printing actions"
msgstr ""
@@ -8098,15 +8118,17 @@ msgid "Stock adjustment actions"
msgstr ""
#: stock/templates/stock/item_base.html:80
-#: stock/templates/stock/location.html:88 templates/stock_table.html:35
+#: stock/templates/stock/location.html:88 templates/js/translated/stock.js:1735
msgid "Count stock"
msgstr ""
-#: stock/templates/stock/item_base.html:82 templates/stock_table.html:33
+#: stock/templates/stock/item_base.html:82
+#: templates/js/translated/stock.js:1717
msgid "Add stock"
msgstr ""
-#: stock/templates/stock/item_base.html:83 templates/stock_table.html:34
+#: stock/templates/stock/item_base.html:83
+#: templates/js/translated/stock.js:1726
msgid "Remove stock"
msgstr ""
@@ -8115,11 +8137,12 @@ msgid "Serialize stock"
msgstr ""
#: stock/templates/stock/item_base.html:89
-#: stock/templates/stock/location.html:94 templates/stock_table.html:36
+#: stock/templates/stock/location.html:94 templates/js/translated/stock.js:1744
msgid "Transfer stock"
msgstr ""
-#: stock/templates/stock/item_base.html:92 templates/stock_table.html:39
+#: stock/templates/stock/item_base.html:92
+#: templates/js/translated/stock.js:1798
msgid "Assign to customer"
msgstr ""
@@ -8159,6 +8182,11 @@ msgstr ""
msgid "Delete stock item"
msgstr ""
+#: stock/templates/stock/item_base.html:170 templates/InvenTree/search.html:139
+#: templates/js/translated/build.js:2046 templates/navbar.html:38
+msgid "Build"
+msgstr ""
+
#: stock/templates/stock/item_base.html:194
msgid "Parent Item"
msgstr ""
@@ -8221,7 +8249,7 @@ msgid "Available Quantity"
msgstr ""
#: stock/templates/stock/item_base.html:394
-#: templates/js/translated/build.js:2015
+#: templates/js/translated/build.js:2306
msgid "No location set"
msgstr ""
@@ -8239,7 +8267,7 @@ msgid "This StockItem expired on %(item.expiry_date)s"
msgstr ""
#: stock/templates/stock/item_base.html:433
-#: templates/js/translated/table_filters.js:381
+#: templates/js/translated/table_filters.js:387
msgid "Expired"
msgstr ""
@@ -8249,7 +8277,7 @@ msgid "This StockItem expires on %(item.expiry_date)s"
msgstr ""
#: stock/templates/stock/item_base.html:435
-#: templates/js/translated/table_filters.js:387
+#: templates/js/translated/table_filters.js:393
msgid "Stale"
msgstr ""
@@ -8258,7 +8286,7 @@ msgid "No stocktake performed"
msgstr ""
#: stock/templates/stock/item_base.html:503
-#: templates/js/translated/stock.js:1745
+#: templates/js/translated/stock.js:1865
msgid "stock item"
msgstr ""
@@ -8364,20 +8392,20 @@ msgstr ""
msgid "New Location"
msgstr ""
-#: stock/templates/stock/location.html:287
-#: templates/js/translated/stock.js:2318
+#: stock/templates/stock/location.html:278
+#: templates/js/translated/stock.js:2449
msgid "stock location"
msgstr ""
-#: stock/templates/stock/location.html:304
+#: stock/templates/stock/location.html:295
msgid "Scanned stock container into this location"
msgstr ""
-#: stock/templates/stock/location.html:377
+#: stock/templates/stock/location.html:368
msgid "Stock Location QR Code"
msgstr ""
-#: stock/templates/stock/location.html:388
+#: stock/templates/stock/location.html:379
msgid "Link Barcode to Stock Location"
msgstr ""
@@ -8451,71 +8479,71 @@ msgstr ""
msgid "Index"
msgstr ""
-#: templates/InvenTree/index.html:89
+#: templates/InvenTree/index.html:39
msgid "Subscribed Parts"
msgstr ""
-#: templates/InvenTree/index.html:102
+#: templates/InvenTree/index.html:53
msgid "Subscribed Categories"
msgstr ""
-#: templates/InvenTree/index.html:112
+#: templates/InvenTree/index.html:63
msgid "Latest Parts"
msgstr ""
-#: templates/InvenTree/index.html:126
+#: templates/InvenTree/index.html:78
msgid "BOM Waiting Validation"
msgstr ""
-#: templates/InvenTree/index.html:155
+#: templates/InvenTree/index.html:107
msgid "Recently Updated"
msgstr ""
-#: templates/InvenTree/index.html:180
+#: templates/InvenTree/index.html:134
msgid "Depleted Stock"
msgstr ""
-#: templates/InvenTree/index.html:193
+#: templates/InvenTree/index.html:148
msgid "Required for Build Orders"
msgstr ""
-#: templates/InvenTree/index.html:208
+#: templates/InvenTree/index.html:156
msgid "Expired Stock"
msgstr ""
-#: templates/InvenTree/index.html:222
+#: templates/InvenTree/index.html:172
msgid "Stale Stock"
msgstr ""
-#: templates/InvenTree/index.html:247
+#: templates/InvenTree/index.html:199
msgid "Build Orders In Progress"
msgstr ""
-#: templates/InvenTree/index.html:258
+#: templates/InvenTree/index.html:210
msgid "Overdue Build Orders"
msgstr ""
-#: templates/InvenTree/index.html:278
+#: templates/InvenTree/index.html:230
msgid "Outstanding Purchase Orders"
msgstr ""
-#: templates/InvenTree/index.html:289
+#: templates/InvenTree/index.html:241
msgid "Overdue Purchase Orders"
msgstr ""
-#: templates/InvenTree/index.html:310
+#: templates/InvenTree/index.html:262
msgid "Outstanding Sales Orders"
msgstr ""
-#: templates/InvenTree/index.html:321
+#: templates/InvenTree/index.html:273
msgid "Overdue Sales Orders"
msgstr ""
-#: templates/InvenTree/index.html:347
+#: templates/InvenTree/index.html:299
msgid "InvenTree News"
msgstr ""
-#: templates/InvenTree/index.html:349
+#: templates/InvenTree/index.html:301
msgid "Current News"
msgstr ""
@@ -8672,29 +8700,29 @@ msgstr ""
msgid "Changing the settings below require you to immediately restart the server. Do not change this while under active usage."
msgstr ""
-#: templates/InvenTree/settings/plugin.html:37
+#: templates/InvenTree/settings/plugin.html:35
#: templates/InvenTree/settings/sidebar.html:64
msgid "Plugins"
msgstr ""
-#: templates/InvenTree/settings/plugin.html:43
+#: templates/InvenTree/settings/plugin.html:41
#: templates/js/translated/plugin.js:151
msgid "Install Plugin"
msgstr ""
-#: templates/InvenTree/settings/plugin.html:51
+#: templates/InvenTree/settings/plugin.html:49
msgid "External plugins are not enabled for this InvenTree installation"
msgstr ""
-#: templates/InvenTree/settings/plugin.html:70
+#: templates/InvenTree/settings/plugin.html:64
msgid "Plugin Error Stack"
msgstr ""
-#: templates/InvenTree/settings/plugin.html:79
+#: templates/InvenTree/settings/plugin.html:73
msgid "Stage"
msgstr ""
-#: templates/InvenTree/settings/plugin.html:81
+#: templates/InvenTree/settings/plugin.html:75
#: templates/js/translated/notification.js:75
msgid "Message"
msgstr ""
@@ -8767,14 +8795,6 @@ msgstr ""
msgid "Commit Message"
msgstr ""
-#: templates/InvenTree/settings/plugin_settings.html:126
-msgid "Sign Status"
-msgstr ""
-
-#: templates/InvenTree/settings/plugin_settings.html:131
-msgid "Sign Key"
-msgstr ""
-
#: templates/InvenTree/settings/po.html:7
msgid "Purchase Order Settings"
msgstr ""
@@ -8870,12 +8890,12 @@ msgid "No category parameter templates found"
msgstr ""
#: templates/InvenTree/settings/settings_staff_js.html:212
-#: templates/js/translated/part.js:1618
+#: templates/js/translated/part.js:1617
msgid "Edit Template"
msgstr ""
#: templates/InvenTree/settings/settings_staff_js.html:213
-#: templates/js/translated/part.js:1619
+#: templates/js/translated/part.js:1618
msgid "Delete Template"
msgstr ""
@@ -8913,7 +8933,7 @@ msgid "Home Page"
msgstr ""
#: templates/InvenTree/settings/sidebar.html:15
-#: templates/js/translated/tables.js:575 templates/navbar.html:107
+#: templates/js/translated/tables.js:551 templates/navbar.html:107
#: templates/search.html:8 templates/search_form.html:6
#: templates/search_form.html:7
msgid "Search"
@@ -8990,6 +9010,7 @@ msgid "Unverified"
msgstr ""
#: templates/InvenTree/settings/user.html:80
+#: templates/js/translated/company.js:984
msgid "Primary"
msgstr ""
@@ -9204,44 +9225,48 @@ msgstr ""
msgid "Update Available"
msgstr ""
-#: templates/about.html:42
+#: templates/about.html:43
+msgid "Commit Branch"
+msgstr ""
+
+#: templates/about.html:49
msgid "InvenTree Documentation"
msgstr ""
-#: templates/about.html:47
+#: templates/about.html:54
msgid "API Version"
msgstr ""
-#: templates/about.html:52
+#: templates/about.html:59
msgid "Python Version"
msgstr ""
-#: templates/about.html:57
+#: templates/about.html:64
msgid "Django Version"
msgstr ""
-#: templates/about.html:62
+#: templates/about.html:69
msgid "View Code on GitHub"
msgstr ""
-#: templates/about.html:67
+#: templates/about.html:74
msgid "Credits"
msgstr ""
-#: templates/about.html:72
+#: templates/about.html:79
msgid "Mobile App"
msgstr ""
-#: templates/about.html:77
+#: templates/about.html:84
msgid "Submit Bug Report"
msgstr ""
-#: templates/about.html:84 templates/clip.html:4
+#: templates/about.html:91 templates/clip.html:4
#: templates/js/translated/helpers.js:585
msgid "copy to clipboard"
msgstr ""
-#: templates/about.html:84
+#: templates/about.html:91
msgid "copy version information"
msgstr ""
@@ -9435,14 +9460,6 @@ msgstr ""
msgid "Add Attachment"
msgstr ""
-#: templates/attachment_table.html:11
-msgid "Delete selected attachments"
-msgstr ""
-
-#: templates/attachment_table.html:12 templates/js/translated/attachment.js:129
-msgid "Delete Attachments"
-msgstr ""
-
#: templates/barcode_data.html:5
msgid "Barcode Identifier"
msgstr ""
@@ -9487,7 +9504,7 @@ msgid "The following parts are low on required stock"
msgstr ""
#: templates/email/build_order_required_stock.html:18
-#: templates/js/translated/bom.js:1633
+#: templates/js/translated/bom.js:1653 templates/js/translated/build.js:2485
msgid "Required Quantity"
msgstr ""
@@ -9501,7 +9518,7 @@ msgid "Click on the following link to view this part"
msgstr ""
#: templates/email/low_stock_notification.html:18
-#: templates/js/translated/part.js:3140
+#: templates/js/translated/part.js:3125
msgid "Minimum Quantity"
msgstr ""
@@ -9573,23 +9590,35 @@ msgstr ""
msgid "All selected attachments will be deleted"
msgstr ""
-#: templates/js/translated/attachment.js:255
+#: templates/js/translated/attachment.js:129
+msgid "Delete Attachments"
+msgstr ""
+
+#: templates/js/translated/attachment.js:205
+msgid "Delete attachments"
+msgstr ""
+
+#: templates/js/translated/attachment.js:253
+msgid "Attachment actions"
+msgstr ""
+
+#: templates/js/translated/attachment.js:275
msgid "No attachments found"
msgstr ""
-#: templates/js/translated/attachment.js:285
+#: templates/js/translated/attachment.js:305
msgid "Edit Attachment"
msgstr ""
-#: templates/js/translated/attachment.js:326
+#: templates/js/translated/attachment.js:336
msgid "Upload Date"
msgstr ""
-#: templates/js/translated/attachment.js:346
+#: templates/js/translated/attachment.js:356
msgid "Edit attachment"
msgstr ""
-#: templates/js/translated/attachment.js:354
+#: templates/js/translated/attachment.js:364
msgid "Delete attachment"
msgstr ""
@@ -9646,7 +9675,7 @@ msgstr ""
msgid "Unlink"
msgstr ""
-#: templates/js/translated/barcode.js:550 templates/js/translated/stock.js:1118
+#: templates/js/translated/barcode.js:550 templates/js/translated/stock.js:1117
msgid "Remove stock item"
msgstr ""
@@ -9704,775 +9733,869 @@ msgstr ""
msgid "Barcode does not match a valid location"
msgstr ""
-#: templates/js/translated/bom.js:77
+#: templates/js/translated/bom.js:78
msgid "Create BOM Item"
msgstr ""
-#: templates/js/translated/bom.js:131
+#: templates/js/translated/bom.js:132
msgid "Display row data"
msgstr ""
-#: templates/js/translated/bom.js:187
+#: templates/js/translated/bom.js:188
msgid "Row Data"
msgstr ""
-#: templates/js/translated/bom.js:188 templates/js/translated/bom.js:699
+#: templates/js/translated/bom.js:189 templates/js/translated/bom.js:700
#: templates/js/translated/modals.js:71 templates/js/translated/modals.js:622
#: templates/js/translated/modals.js:746 templates/js/translated/modals.js:1054
-#: templates/js/translated/purchase_order.js:791 templates/modals.html:15
+#: templates/js/translated/purchase_order.js:802 templates/modals.html:15
#: templates/modals.html:27 templates/modals.html:39 templates/modals.html:50
msgid "Close"
msgstr ""
-#: templates/js/translated/bom.js:305
+#: templates/js/translated/bom.js:306
msgid "Download BOM Template"
msgstr ""
-#: templates/js/translated/bom.js:350
+#: templates/js/translated/bom.js:351
msgid "Multi Level BOM"
msgstr ""
-#: templates/js/translated/bom.js:351
+#: templates/js/translated/bom.js:352
msgid "Include BOM data for subassemblies"
msgstr ""
-#: templates/js/translated/bom.js:356
+#: templates/js/translated/bom.js:357
msgid "Levels"
msgstr ""
-#: templates/js/translated/bom.js:357
+#: templates/js/translated/bom.js:358
msgid "Select maximum number of BOM levels to export (0 = all levels)"
msgstr ""
-#: templates/js/translated/bom.js:364
+#: templates/js/translated/bom.js:365
msgid "Include Alternative Parts"
msgstr ""
-#: templates/js/translated/bom.js:365
+#: templates/js/translated/bom.js:366
msgid "Include alternative parts in exported BOM"
msgstr ""
-#: templates/js/translated/bom.js:370
+#: templates/js/translated/bom.js:371
msgid "Include Parameter Data"
msgstr ""
-#: templates/js/translated/bom.js:371
+#: templates/js/translated/bom.js:372
msgid "Include part parameter data in exported BOM"
msgstr ""
-#: templates/js/translated/bom.js:376
+#: templates/js/translated/bom.js:377
msgid "Include Stock Data"
msgstr ""
-#: templates/js/translated/bom.js:377
+#: templates/js/translated/bom.js:378
msgid "Include part stock data in exported BOM"
msgstr ""
-#: templates/js/translated/bom.js:382
+#: templates/js/translated/bom.js:383
msgid "Include Manufacturer Data"
msgstr ""
-#: templates/js/translated/bom.js:383
+#: templates/js/translated/bom.js:384
msgid "Include part manufacturer data in exported BOM"
msgstr ""
-#: templates/js/translated/bom.js:388
+#: templates/js/translated/bom.js:389
msgid "Include Supplier Data"
msgstr ""
-#: templates/js/translated/bom.js:389
+#: templates/js/translated/bom.js:390
msgid "Include part supplier data in exported BOM"
msgstr ""
-#: templates/js/translated/bom.js:394
+#: templates/js/translated/bom.js:395
msgid "Include Pricing Data"
msgstr ""
-#: templates/js/translated/bom.js:395
+#: templates/js/translated/bom.js:396
msgid "Include part pricing data in exported BOM"
msgstr ""
-#: templates/js/translated/bom.js:590
+#: templates/js/translated/bom.js:591
msgid "Remove substitute part"
msgstr ""
-#: templates/js/translated/bom.js:644
+#: templates/js/translated/bom.js:645
msgid "Select and add a new substitute part using the input below"
msgstr ""
-#: templates/js/translated/bom.js:655
+#: templates/js/translated/bom.js:656
msgid "Are you sure you wish to remove this substitute part link?"
msgstr ""
-#: templates/js/translated/bom.js:661
+#: templates/js/translated/bom.js:662
msgid "Remove Substitute Part"
msgstr ""
-#: templates/js/translated/bom.js:700
+#: templates/js/translated/bom.js:701
msgid "Add Substitute"
msgstr ""
-#: templates/js/translated/bom.js:701
+#: templates/js/translated/bom.js:702
msgid "Edit BOM Item Substitutes"
msgstr ""
-#: templates/js/translated/bom.js:763
+#: templates/js/translated/bom.js:764
msgid "All selected BOM items will be deleted"
msgstr ""
-#: templates/js/translated/bom.js:779
+#: templates/js/translated/bom.js:780
msgid "Delete selected BOM items?"
msgstr ""
-#: templates/js/translated/bom.js:906
+#: templates/js/translated/bom.js:826
+msgid "Delete items"
+msgstr ""
+
+#: templates/js/translated/bom.js:924
msgid "Load BOM for subassembly"
msgstr ""
-#: templates/js/translated/bom.js:916
+#: templates/js/translated/bom.js:934
msgid "Substitutes Available"
msgstr ""
-#: templates/js/translated/bom.js:920 templates/js/translated/build.js:2090
+#: templates/js/translated/bom.js:938 templates/js/translated/build.js:2429
msgid "Variant stock allowed"
msgstr ""
-#: templates/js/translated/bom.js:984
+#: templates/js/translated/bom.js:1002
msgid "Substitutes"
msgstr ""
-#: templates/js/translated/bom.js:1104
+#: templates/js/translated/bom.js:1122
msgid "BOM pricing is complete"
msgstr ""
-#: templates/js/translated/bom.js:1109
+#: templates/js/translated/bom.js:1127
msgid "BOM pricing is incomplete"
msgstr ""
-#: templates/js/translated/bom.js:1116
+#: templates/js/translated/bom.js:1134
msgid "No pricing available"
msgstr ""
-#: templates/js/translated/bom.js:1147 templates/js/translated/build.js:2173
-#: templates/js/translated/sales_order.js:1887
+#: templates/js/translated/bom.js:1165 templates/js/translated/build.js:2523
+#: templates/js/translated/sales_order.js:1899
msgid "No Stock Available"
msgstr ""
-#: templates/js/translated/bom.js:1152 templates/js/translated/build.js:2177
+#: templates/js/translated/bom.js:1170 templates/js/translated/build.js:2527
msgid "Includes variant and substitute stock"
msgstr ""
-#: templates/js/translated/bom.js:1154 templates/js/translated/build.js:2179
-#: templates/js/translated/part.js:1230
+#: templates/js/translated/bom.js:1172 templates/js/translated/build.js:2529
+#: templates/js/translated/part.js:1229
msgid "Includes variant stock"
msgstr ""
-#: templates/js/translated/bom.js:1156 templates/js/translated/build.js:2181
+#: templates/js/translated/bom.js:1174 templates/js/translated/build.js:2531
msgid "Includes substitute stock"
msgstr ""
-#: templates/js/translated/bom.js:1184 templates/js/translated/build.js:2164
-#: templates/js/translated/build.js:2255
+#: templates/js/translated/bom.js:1204 templates/js/translated/build.js:2514
msgid "Consumable item"
msgstr ""
-#: templates/js/translated/bom.js:1244
+#: templates/js/translated/bom.js:1264
msgid "Validate BOM Item"
msgstr ""
-#: templates/js/translated/bom.js:1246
+#: templates/js/translated/bom.js:1266
msgid "This line has been validated"
msgstr ""
-#: templates/js/translated/bom.js:1248
+#: templates/js/translated/bom.js:1268
msgid "Edit substitute parts"
msgstr ""
-#: templates/js/translated/bom.js:1250 templates/js/translated/bom.js:1445
+#: templates/js/translated/bom.js:1270 templates/js/translated/bom.js:1465
msgid "Edit BOM Item"
msgstr ""
-#: templates/js/translated/bom.js:1252
+#: templates/js/translated/bom.js:1272
msgid "Delete BOM Item"
msgstr ""
-#: templates/js/translated/bom.js:1272
+#: templates/js/translated/bom.js:1292
msgid "View BOM"
msgstr ""
-#: templates/js/translated/bom.js:1356 templates/js/translated/build.js:1927
+#: templates/js/translated/bom.js:1376
msgid "No BOM items found"
msgstr ""
-#: templates/js/translated/bom.js:1616 templates/js/translated/build.js:2073
+#: templates/js/translated/bom.js:1636 templates/js/translated/build.js:2414
msgid "Required Part"
msgstr ""
-#: templates/js/translated/bom.js:1642
+#: templates/js/translated/bom.js:1662
msgid "Inherited from parent BOM"
msgstr ""
-#: templates/js/translated/build.js:126
+#: templates/js/translated/build.js:136
msgid "Edit Build Order"
msgstr ""
-#: templates/js/translated/build.js:169
+#: templates/js/translated/build.js:179
msgid "Create Build Order"
msgstr ""
-#: templates/js/translated/build.js:202
+#: templates/js/translated/build.js:211
msgid "Cancel Build Order"
msgstr ""
-#: templates/js/translated/build.js:211
+#: templates/js/translated/build.js:220
msgid "Are you sure you wish to cancel this build?"
msgstr ""
-#: templates/js/translated/build.js:217
+#: templates/js/translated/build.js:226
msgid "Stock items have been allocated to this build order"
msgstr ""
-#: templates/js/translated/build.js:224
+#: templates/js/translated/build.js:233
msgid "There are incomplete outputs remaining for this build order"
msgstr ""
-#: templates/js/translated/build.js:276
+#: templates/js/translated/build.js:285
msgid "Build order is ready to be completed"
msgstr ""
-#: templates/js/translated/build.js:284
+#: templates/js/translated/build.js:293
msgid "This build order cannot be completed as there are incomplete outputs"
msgstr ""
-#: templates/js/translated/build.js:289
+#: templates/js/translated/build.js:298
msgid "Build Order is incomplete"
msgstr ""
-#: templates/js/translated/build.js:307
+#: templates/js/translated/build.js:316
msgid "Complete Build Order"
msgstr ""
-#: templates/js/translated/build.js:348 templates/js/translated/stock.js:119
-#: templates/js/translated/stock.js:265
+#: templates/js/translated/build.js:357 templates/js/translated/stock.js:118
+#: templates/js/translated/stock.js:264
msgid "Next available serial number"
msgstr ""
-#: templates/js/translated/build.js:350 templates/js/translated/stock.js:121
-#: templates/js/translated/stock.js:267
+#: templates/js/translated/build.js:359 templates/js/translated/stock.js:120
+#: templates/js/translated/stock.js:266
msgid "Latest serial number"
msgstr ""
-#: templates/js/translated/build.js:359
+#: templates/js/translated/build.js:368
msgid "The Bill of Materials contains trackable parts"
msgstr ""
-#: templates/js/translated/build.js:360
+#: templates/js/translated/build.js:369
msgid "Build outputs must be generated individually"
msgstr ""
-#: templates/js/translated/build.js:368
+#: templates/js/translated/build.js:377
msgid "Trackable parts can have serial numbers specified"
msgstr ""
-#: templates/js/translated/build.js:369
+#: templates/js/translated/build.js:378
msgid "Enter serial numbers to generate multiple single build outputs"
msgstr ""
-#: templates/js/translated/build.js:376
+#: templates/js/translated/build.js:385
msgid "Create Build Output"
msgstr ""
-#: templates/js/translated/build.js:407
+#: templates/js/translated/build.js:416
msgid "Allocate stock items to this build output"
msgstr ""
-#: templates/js/translated/build.js:418
-msgid "Unallocate stock from build output"
+#: templates/js/translated/build.js:424
+msgid "Deallocate stock from build output"
msgstr ""
-#: templates/js/translated/build.js:427
+#: templates/js/translated/build.js:433
msgid "Complete build output"
msgstr ""
-#: templates/js/translated/build.js:435
+#: templates/js/translated/build.js:441
msgid "Scrap build output"
msgstr ""
-#: templates/js/translated/build.js:442
+#: templates/js/translated/build.js:448
msgid "Delete build output"
msgstr ""
-#: templates/js/translated/build.js:462
-msgid "Are you sure you wish to unallocate stock items from this build?"
+#: templates/js/translated/build.js:468
+msgid "Are you sure you wish to deallocate the selected stock items from this build?"
msgstr ""
-#: templates/js/translated/build.js:480
-msgid "Unallocate Stock Items"
+#: templates/js/translated/build.js:486
+msgid "Deallocate Stock Items"
msgstr ""
-#: templates/js/translated/build.js:566 templates/js/translated/build.js:690
-#: templates/js/translated/build.js:812
+#: templates/js/translated/build.js:572 templates/js/translated/build.js:696
+#: templates/js/translated/build.js:818
msgid "Select Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:567 templates/js/translated/build.js:691
-#: templates/js/translated/build.js:813
+#: templates/js/translated/build.js:573 templates/js/translated/build.js:697
+#: templates/js/translated/build.js:819
msgid "At least one build output must be selected"
msgstr ""
-#: templates/js/translated/build.js:581
+#: templates/js/translated/build.js:587
msgid "Selected build outputs will be marked as complete"
msgstr ""
-#: templates/js/translated/build.js:585 templates/js/translated/build.js:715
-#: templates/js/translated/build.js:835
+#: templates/js/translated/build.js:591 templates/js/translated/build.js:721
+#: templates/js/translated/build.js:841
msgid "Output"
msgstr ""
-#: templates/js/translated/build.js:609
+#: templates/js/translated/build.js:615
msgid "Complete Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:706
+#: templates/js/translated/build.js:712
msgid "Selected build outputs will be marked as scrapped"
msgstr ""
-#: templates/js/translated/build.js:708
+#: templates/js/translated/build.js:714
msgid "Scrapped output are marked as rejected"
msgstr ""
-#: templates/js/translated/build.js:709
+#: templates/js/translated/build.js:715
msgid "Allocated stock items will no longer be available"
msgstr ""
-#: templates/js/translated/build.js:710
+#: templates/js/translated/build.js:716
msgid "The completion status of the build order will not be adjusted"
msgstr ""
-#: templates/js/translated/build.js:737
+#: templates/js/translated/build.js:743
msgid "Scrap Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:827
+#: templates/js/translated/build.js:833
msgid "Selected build outputs will be deleted"
msgstr ""
-#: templates/js/translated/build.js:829
+#: templates/js/translated/build.js:835
msgid "Build output data will be permanently deleted"
msgstr ""
-#: templates/js/translated/build.js:830
+#: templates/js/translated/build.js:836
msgid "Allocated stock items will be returned to stock"
msgstr ""
-#: templates/js/translated/build.js:848
+#: templates/js/translated/build.js:854
msgid "Delete Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:934
+#: templates/js/translated/build.js:941
msgid "No build order allocations found"
msgstr ""
-#: templates/js/translated/build.js:971
+#: templates/js/translated/build.js:970 templates/js/translated/build.js:2270
+msgid "Allocated Quantity"
+msgstr ""
+
+#: templates/js/translated/build.js:984
msgid "Location not specified"
msgstr ""
-#: templates/js/translated/build.js:1047
+#: templates/js/translated/build.js:1006
+msgid "Complete outputs"
+msgstr ""
+
+#: templates/js/translated/build.js:1024
+msgid "Scrap outputs"
+msgstr ""
+
+#: templates/js/translated/build.js:1042
+msgid "Delete outputs"
+msgstr ""
+
+#: templates/js/translated/build.js:1100
msgid "build output"
msgstr ""
-#: templates/js/translated/build.js:1048
+#: templates/js/translated/build.js:1101
msgid "build outputs"
msgstr ""
-#: templates/js/translated/build.js:1383
+#: templates/js/translated/build.js:1105
+msgid "Build output actions"
+msgstr ""
+
+#: templates/js/translated/build.js:1274
msgid "No active build outputs found"
msgstr ""
-#: templates/js/translated/build.js:1457
-msgid "Allocated Stock"
+#: templates/js/translated/build.js:1329
+msgid "Allocated Lines"
msgstr ""
-#: templates/js/translated/build.js:1464
-msgid "No tracked BOM items for this build"
+#: templates/js/translated/build.js:1343
+msgid "Required Tests"
msgstr ""
-#: templates/js/translated/build.js:1486
-msgid "Completed Tests"
-msgstr ""
-
-#: templates/js/translated/build.js:1491
-msgid "No required tests for this build"
-msgstr ""
-
-#: templates/js/translated/build.js:2032 templates/js/translated/build.js:3056
-#: templates/js/translated/sales_order.js:1632
-msgid "Edit stock allocation"
-msgstr ""
-
-#: templates/js/translated/build.js:2034 templates/js/translated/build.js:3057
-#: templates/js/translated/sales_order.js:1633
-msgid "Delete stock allocation"
-msgstr ""
-
-#: templates/js/translated/build.js:2050
-msgid "Edit Allocation"
-msgstr ""
-
-#: templates/js/translated/build.js:2060
-msgid "Remove Allocation"
-msgstr ""
-
-#: templates/js/translated/build.js:2086
-msgid "Substitute parts available"
-msgstr ""
-
-#: templates/js/translated/build.js:2122
-msgid "Quantity Per"
-msgstr ""
-
-#: templates/js/translated/build.js:2167
-#: templates/js/translated/sales_order.js:1894
-msgid "Insufficient stock available"
-msgstr ""
-
-#: templates/js/translated/build.js:2169
-#: templates/js/translated/sales_order.js:1892
-msgid "Sufficient stock available"
-msgstr ""
-
-#: templates/js/translated/build.js:2263
-#: templates/js/translated/sales_order.js:1993
-msgid "Build stock"
-msgstr ""
-
-#: templates/js/translated/build.js:2267 templates/stock_table.html:38
-msgid "Order stock"
-msgstr ""
-
-#: templates/js/translated/build.js:2270
-#: templates/js/translated/sales_order.js:1987
-msgid "Allocate stock"
-msgstr ""
-
-#: templates/js/translated/build.js:2310
-#: templates/js/translated/purchase_order.js:616
-#: templates/js/translated/sales_order.js:1159
+#: templates/js/translated/build.js:1502
+#: templates/js/translated/purchase_order.js:627
+#: templates/js/translated/sales_order.js:1171
msgid "Select Parts"
msgstr ""
-#: templates/js/translated/build.js:2311
-#: templates/js/translated/sales_order.js:1160
+#: templates/js/translated/build.js:1503
+#: templates/js/translated/sales_order.js:1172
msgid "You must select at least one part to allocate"
msgstr ""
-#: templates/js/translated/build.js:2359
-#: templates/js/translated/sales_order.js:1109
+#: templates/js/translated/build.js:1566
+#: templates/js/translated/sales_order.js:1121
msgid "Specify stock allocation quantity"
msgstr ""
-#: templates/js/translated/build.js:2438
+#: templates/js/translated/build.js:1643
msgid "All Parts Allocated"
msgstr ""
-#: templates/js/translated/build.js:2439
+#: templates/js/translated/build.js:1644
msgid "All selected parts have been fully allocated"
msgstr ""
-#: templates/js/translated/build.js:2453
-#: templates/js/translated/sales_order.js:1174
+#: templates/js/translated/build.js:1658
+#: templates/js/translated/sales_order.js:1186
msgid "Select source location (leave blank to take from all locations)"
msgstr ""
-#: templates/js/translated/build.js:2481
+#: templates/js/translated/build.js:1686
msgid "Allocate Stock Items to Build Order"
msgstr ""
-#: templates/js/translated/build.js:2492
-#: templates/js/translated/sales_order.js:1271
+#: templates/js/translated/build.js:1697
+#: templates/js/translated/sales_order.js:1283
msgid "No matching stock locations"
msgstr ""
-#: templates/js/translated/build.js:2565
-#: templates/js/translated/sales_order.js:1348
+#: templates/js/translated/build.js:1770
+#: templates/js/translated/sales_order.js:1360
msgid "No matching stock items"
msgstr ""
-#: templates/js/translated/build.js:2662
+#: templates/js/translated/build.js:1867
msgid "Automatic Stock Allocation"
msgstr ""
-#: templates/js/translated/build.js:2663
+#: templates/js/translated/build.js:1868
msgid "Stock items will be automatically allocated to this build order, according to the provided guidelines"
msgstr ""
-#: templates/js/translated/build.js:2665
+#: templates/js/translated/build.js:1870
msgid "If a location is specified, stock will only be allocated from that location"
msgstr ""
-#: templates/js/translated/build.js:2666
+#: templates/js/translated/build.js:1871
msgid "If stock is considered interchangeable, it will be allocated from the first location it is found"
msgstr ""
-#: templates/js/translated/build.js:2667
+#: templates/js/translated/build.js:1872
msgid "If substitute stock is allowed, it will be used where stock of the primary part cannot be found"
msgstr ""
-#: templates/js/translated/build.js:2694
+#: templates/js/translated/build.js:1899
msgid "Allocate Stock Items"
msgstr ""
-#: templates/js/translated/build.js:2800
+#: templates/js/translated/build.js:2005
msgid "No builds matching query"
msgstr ""
-#: templates/js/translated/build.js:2835 templates/js/translated/part.js:2208
-#: templates/js/translated/part.js:2692 templates/js/translated/stock.js:1759
-#: templates/js/translated/stock.js:2458
+#: templates/js/translated/build.js:2040 templates/js/translated/build.js:2408
+#: templates/js/translated/part.js:2284 templates/js/translated/part.js:2677
+#: templates/js/translated/stock.js:1899 templates/js/translated/stock.js:2589
msgid "Select"
msgstr ""
-#: templates/js/translated/build.js:2849
+#: templates/js/translated/build.js:2054
msgid "Build order is overdue"
msgstr ""
-#: templates/js/translated/build.js:2883
+#: templates/js/translated/build.js:2100
msgid "Progress"
msgstr ""
-#: templates/js/translated/build.js:2919 templates/js/translated/stock.js:2779
+#: templates/js/translated/build.js:2136 templates/js/translated/stock.js:2910
msgid "No user information"
msgstr ""
-#: templates/js/translated/build.js:2934
+#: templates/js/translated/build.js:2151
msgid "group"
msgstr ""
-#: templates/js/translated/build.js:3033
-msgid "No parts allocated for"
+#: templates/js/translated/build.js:2315
+#: templates/js/translated/sales_order.js:1644
+msgid "Edit stock allocation"
msgstr ""
-#: templates/js/translated/company.js:87
+#: templates/js/translated/build.js:2316
+#: templates/js/translated/sales_order.js:1645
+msgid "Delete stock allocation"
+msgstr ""
+
+#: templates/js/translated/build.js:2331
+msgid "Edit Allocation"
+msgstr ""
+
+#: templates/js/translated/build.js:2343
+msgid "Remove Allocation"
+msgstr ""
+
+#: templates/js/translated/build.js:2384
+msgid "build line"
+msgstr ""
+
+#: templates/js/translated/build.js:2385
+msgid "build lines"
+msgstr ""
+
+#: templates/js/translated/build.js:2403
+msgid "No build lines found"
+msgstr ""
+
+#: templates/js/translated/build.js:2433 templates/js/translated/part.js:767
+#: templates/js/translated/part.js:1175
+msgid "Trackable part"
+msgstr ""
+
+#: templates/js/translated/build.js:2468
+msgid "Unit Quantity"
+msgstr ""
+
+#: templates/js/translated/build.js:2517
+#: templates/js/translated/sales_order.js:1906
+msgid "Insufficient stock available"
+msgstr ""
+
+#: templates/js/translated/build.js:2519
+#: templates/js/translated/sales_order.js:1904
+msgid "Sufficient stock available"
+msgstr ""
+
+#: templates/js/translated/build.js:2566
+msgid "Consumable Item"
+msgstr ""
+
+#: templates/js/translated/build.js:2571
+msgid "Tracked item"
+msgstr ""
+
+#: templates/js/translated/build.js:2578
+#: templates/js/translated/sales_order.js:2005
+msgid "Build stock"
+msgstr ""
+
+#: templates/js/translated/build.js:2583 templates/js/translated/stock.js:1779
+msgid "Order stock"
+msgstr ""
+
+#: templates/js/translated/build.js:2587
+#: templates/js/translated/sales_order.js:1999
+msgid "Allocate stock"
+msgstr ""
+
+#: templates/js/translated/build.js:2591
+msgid "Remove stock allocation"
+msgstr ""
+
+#: templates/js/translated/company.js:97
msgid "Add Manufacturer"
msgstr ""
-#: templates/js/translated/company.js:100
-#: templates/js/translated/company.js:202
+#: templates/js/translated/company.js:110
+#: templates/js/translated/company.js:212
msgid "Add Manufacturer Part"
msgstr ""
-#: templates/js/translated/company.js:121
+#: templates/js/translated/company.js:131
msgid "Edit Manufacturer Part"
msgstr ""
-#: templates/js/translated/company.js:190
-#: templates/js/translated/purchase_order.js:94
+#: templates/js/translated/company.js:200
+#: templates/js/translated/purchase_order.js:93
msgid "Add Supplier"
msgstr ""
-#: templates/js/translated/company.js:232
-#: templates/js/translated/purchase_order.js:338
+#: templates/js/translated/company.js:242
+#: templates/js/translated/purchase_order.js:349
msgid "Add Supplier Part"
msgstr ""
-#: templates/js/translated/company.js:333
+#: templates/js/translated/company.js:343
msgid "All selected supplier parts will be deleted"
msgstr ""
-#: templates/js/translated/company.js:349
+#: templates/js/translated/company.js:359
msgid "Delete Supplier Parts"
msgstr ""
-#: templates/js/translated/company.js:457
+#: templates/js/translated/company.js:464
msgid "Add new Company"
msgstr ""
-#: templates/js/translated/company.js:528
+#: templates/js/translated/company.js:535
msgid "Parts Supplied"
msgstr ""
-#: templates/js/translated/company.js:537
+#: templates/js/translated/company.js:544
msgid "Parts Manufactured"
msgstr ""
-#: templates/js/translated/company.js:552
+#: templates/js/translated/company.js:559
msgid "No company information found"
msgstr ""
-#: templates/js/translated/company.js:601
+#: templates/js/translated/company.js:608
msgid "Create New Contact"
msgstr ""
-#: templates/js/translated/company.js:617
-#: templates/js/translated/company.js:740
+#: templates/js/translated/company.js:624
+#: templates/js/translated/company.js:747
msgid "Edit Contact"
msgstr ""
-#: templates/js/translated/company.js:654
+#: templates/js/translated/company.js:661
msgid "All selected contacts will be deleted"
msgstr ""
-#: templates/js/translated/company.js:660
-#: templates/js/translated/company.js:724
+#: templates/js/translated/company.js:667
+#: templates/js/translated/company.js:731
msgid "Role"
msgstr ""
-#: templates/js/translated/company.js:668
+#: templates/js/translated/company.js:675
msgid "Delete Contacts"
msgstr ""
-#: templates/js/translated/company.js:699
+#: templates/js/translated/company.js:706
msgid "No contacts found"
msgstr ""
-#: templates/js/translated/company.js:712
+#: templates/js/translated/company.js:719
msgid "Phone Number"
msgstr ""
-#: templates/js/translated/company.js:718
+#: templates/js/translated/company.js:725
msgid "Email Address"
msgstr ""
-#: templates/js/translated/company.js:744
+#: templates/js/translated/company.js:751
msgid "Delete Contact"
msgstr ""
-#: templates/js/translated/company.js:818
+#: templates/js/translated/company.js:886
+msgid "Create New Address"
+msgstr ""
+
+#: templates/js/translated/company.js:901
+#: templates/js/translated/company.js:1066
+msgid "Edit Address"
+msgstr ""
+
+#: templates/js/translated/company.js:936
+msgid "All selected addresses will be deleted"
+msgstr ""
+
+#: templates/js/translated/company.js:950
+msgid "Delete Addresses"
+msgstr ""
+
+#: templates/js/translated/company.js:977
+msgid "No addresses found"
+msgstr ""
+
+#: templates/js/translated/company.js:1020
+msgid "Postal city"
+msgstr ""
+
+#: templates/js/translated/company.js:1026
+msgid "State/province"
+msgstr ""
+
+#: templates/js/translated/company.js:1038
+msgid "Courier notes"
+msgstr ""
+
+#: templates/js/translated/company.js:1044
+msgid "Internal notes"
+msgstr ""
+
+#: templates/js/translated/company.js:1070
+msgid "Delete Address"
+msgstr ""
+
+#: templates/js/translated/company.js:1143
msgid "All selected manufacturer parts will be deleted"
msgstr ""
-#: templates/js/translated/company.js:833
+#: templates/js/translated/company.js:1158
msgid "Delete Manufacturer Parts"
msgstr ""
-#: templates/js/translated/company.js:867
+#: templates/js/translated/company.js:1192
msgid "All selected parameters will be deleted"
msgstr ""
-#: templates/js/translated/company.js:881
+#: templates/js/translated/company.js:1206
msgid "Delete Parameters"
msgstr ""
-#: templates/js/translated/company.js:917
+#: templates/js/translated/company.js:1222
+#: templates/js/translated/company.js:1510 templates/js/translated/part.js:2213
+msgid "Order parts"
+msgstr ""
+
+#: templates/js/translated/company.js:1239
+msgid "Delete manufacturer parts"
+msgstr ""
+
+#: templates/js/translated/company.js:1271
+msgid "Manufacturer part actions"
+msgstr ""
+
+#: templates/js/translated/company.js:1290
msgid "No manufacturer parts found"
msgstr ""
-#: templates/js/translated/company.js:937
-#: templates/js/translated/company.js:1177 templates/js/translated/part.js:776
-#: templates/js/translated/part.js:1184
+#: templates/js/translated/company.js:1310
+#: templates/js/translated/company.js:1598 templates/js/translated/part.js:775
+#: templates/js/translated/part.js:1183
msgid "Template part"
msgstr ""
-#: templates/js/translated/company.js:941
-#: templates/js/translated/company.js:1181 templates/js/translated/part.js:780
-#: templates/js/translated/part.js:1188
+#: templates/js/translated/company.js:1314
+#: templates/js/translated/company.js:1602 templates/js/translated/part.js:779
+#: templates/js/translated/part.js:1187
msgid "Assembled part"
msgstr ""
-#: templates/js/translated/company.js:1061 templates/js/translated/part.js:1437
+#: templates/js/translated/company.js:1434 templates/js/translated/part.js:1436
msgid "No parameters found"
msgstr ""
-#: templates/js/translated/company.js:1096 templates/js/translated/part.js:1500
+#: templates/js/translated/company.js:1469 templates/js/translated/part.js:1499
msgid "Edit parameter"
msgstr ""
-#: templates/js/translated/company.js:1097 templates/js/translated/part.js:1501
+#: templates/js/translated/company.js:1470 templates/js/translated/part.js:1500
msgid "Delete parameter"
msgstr ""
-#: templates/js/translated/company.js:1114 templates/js/translated/part.js:1407
+#: templates/js/translated/company.js:1487 templates/js/translated/part.js:1406
msgid "Edit Parameter"
msgstr ""
-#: templates/js/translated/company.js:1123 templates/js/translated/part.js:1522
+#: templates/js/translated/company.js:1496 templates/js/translated/part.js:1521
msgid "Delete Parameter"
msgstr ""
-#: templates/js/translated/company.js:1156
+#: templates/js/translated/company.js:1527
+msgid "Delete supplier parts"
+msgstr ""
+
+#: templates/js/translated/company.js:1577
msgid "No supplier parts found"
msgstr ""
-#: templates/js/translated/company.js:1274
+#: templates/js/translated/company.js:1695
msgid "Base Units"
msgstr ""
-#: templates/js/translated/company.js:1304
+#: templates/js/translated/company.js:1725
msgid "Availability"
msgstr ""
-#: templates/js/translated/company.js:1335
+#: templates/js/translated/company.js:1756
msgid "Edit supplier part"
msgstr ""
-#: templates/js/translated/company.js:1336
+#: templates/js/translated/company.js:1757
msgid "Delete supplier part"
msgstr ""
-#: templates/js/translated/company.js:1389
+#: templates/js/translated/company.js:1810
#: templates/js/translated/pricing.js:694
msgid "Delete Price Break"
msgstr ""
-#: templates/js/translated/company.js:1399
+#: templates/js/translated/company.js:1820
#: templates/js/translated/pricing.js:712
msgid "Edit Price Break"
msgstr ""
-#: templates/js/translated/company.js:1414
+#: templates/js/translated/company.js:1835
msgid "No price break information found"
msgstr ""
-#: templates/js/translated/company.js:1443
+#: templates/js/translated/company.js:1864
msgid "Last updated"
msgstr ""
-#: templates/js/translated/company.js:1450
+#: templates/js/translated/company.js:1871
msgid "Edit price break"
msgstr ""
-#: templates/js/translated/company.js:1451
+#: templates/js/translated/company.js:1872
msgid "Delete price break"
msgstr ""
-#: templates/js/translated/filters.js:186
-#: templates/js/translated/filters.js:550
+#: templates/js/translated/filters.js:187
+#: templates/js/translated/filters.js:673
msgid "true"
msgstr ""
-#: templates/js/translated/filters.js:190
-#: templates/js/translated/filters.js:551
+#: templates/js/translated/filters.js:191
+#: templates/js/translated/filters.js:674
msgid "false"
msgstr ""
-#: templates/js/translated/filters.js:214
+#: templates/js/translated/filters.js:215
msgid "Select filter"
msgstr ""
-#: templates/js/translated/filters.js:328
+#: templates/js/translated/filters.js:438
msgid "Print Labels"
msgstr ""
-#: templates/js/translated/filters.js:332
+#: templates/js/translated/filters.js:442
msgid "Print Reports"
msgstr ""
-#: templates/js/translated/filters.js:344
+#: templates/js/translated/filters.js:454
msgid "Download table data"
msgstr ""
-#: templates/js/translated/filters.js:351
+#: templates/js/translated/filters.js:461
msgid "Reload table data"
msgstr ""
-#: templates/js/translated/filters.js:360
+#: templates/js/translated/filters.js:470
msgid "Add new filter"
msgstr ""
-#: templates/js/translated/filters.js:368
+#: templates/js/translated/filters.js:478
msgid "Clear all filters"
msgstr ""
-#: templates/js/translated/filters.js:460
+#: templates/js/translated/filters.js:583
msgid "Create filter"
msgstr ""
@@ -10497,6 +10620,12 @@ msgstr ""
msgid "View operation not allowed"
msgstr ""
+#: templates/js/translated/forms.js:506 templates/js/translated/helpers.js:105
+#: templates/js/translated/part.js:369 templates/js/translated/pricing.js:629
+#: templates/js/translated/stock.js:215 users/models.py:253
+msgid "Delete"
+msgstr ""
+
#: templates/js/translated/forms.js:752
msgid "Keep this form open"
msgstr ""
@@ -10514,23 +10643,23 @@ msgstr ""
msgid "No results found"
msgstr ""
-#: templates/js/translated/forms.js:2071 templates/js/translated/search.js:281
+#: templates/js/translated/forms.js:2071 templates/js/translated/search.js:239
msgid "Searching"
msgstr ""
-#: templates/js/translated/forms.js:2276
+#: templates/js/translated/forms.js:2285
msgid "Clear input"
msgstr ""
-#: templates/js/translated/forms.js:2733
+#: templates/js/translated/forms.js:2742
msgid "File Column"
msgstr ""
-#: templates/js/translated/forms.js:2733
+#: templates/js/translated/forms.js:2742
msgid "Field Name"
msgstr ""
-#: templates/js/translated/forms.js:2745
+#: templates/js/translated/forms.js:2754
msgid "Select Columns"
msgstr ""
@@ -10550,6 +10679,14 @@ msgstr ""
msgid "False"
msgstr ""
+#: templates/js/translated/index.js:99
+msgid "No parts required for builds"
+msgstr ""
+
+#: templates/js/translated/index.js:125
+msgid "Allocated Stock"
+msgstr ""
+
#: templates/js/translated/label.js:58
msgid "Select Printer"
msgstr ""
@@ -10651,7 +10788,7 @@ msgstr ""
#: templates/js/translated/news.js:38
#: templates/js/translated/notification.js:45
-#: templates/js/translated/part.js:1577
+#: templates/js/translated/part.js:1576
msgid "ID"
msgstr ""
@@ -10700,7 +10837,7 @@ msgid "Delete Line"
msgstr ""
#: templates/js/translated/order.js:281
-#: templates/js/translated/purchase_order.js:1958
+#: templates/js/translated/purchase_order.js:1968
msgid "No line items found"
msgstr ""
@@ -10716,363 +10853,355 @@ msgstr ""
msgid "Delete line"
msgstr ""
-#: templates/js/translated/part.js:91
+#: templates/js/translated/part.js:90
msgid "Part Attributes"
msgstr ""
-#: templates/js/translated/part.js:95
+#: templates/js/translated/part.js:94
msgid "Part Creation Options"
msgstr ""
-#: templates/js/translated/part.js:99
+#: templates/js/translated/part.js:98
msgid "Part Duplication Options"
msgstr ""
-#: templates/js/translated/part.js:122
+#: templates/js/translated/part.js:121
msgid "Add Part Category"
msgstr ""
-#: templates/js/translated/part.js:294
+#: templates/js/translated/part.js:293
msgid "Parent part category"
msgstr ""
-#: templates/js/translated/part.js:310 templates/js/translated/stock.js:147
+#: templates/js/translated/part.js:309 templates/js/translated/stock.js:146
msgid "Icon (optional) - Explore all available icons on"
msgstr ""
-#: templates/js/translated/part.js:330
+#: templates/js/translated/part.js:329
msgid "Create Part Category"
msgstr ""
-#: templates/js/translated/part.js:333
+#: templates/js/translated/part.js:332
msgid "Create new category after this one"
msgstr ""
-#: templates/js/translated/part.js:334
+#: templates/js/translated/part.js:333
msgid "Part category created"
msgstr ""
-#: templates/js/translated/part.js:348
+#: templates/js/translated/part.js:347
msgid "Edit Part Category"
msgstr ""
-#: templates/js/translated/part.js:361
+#: templates/js/translated/part.js:360
msgid "Are you sure you want to delete this part category?"
msgstr ""
-#: templates/js/translated/part.js:366
+#: templates/js/translated/part.js:365
msgid "Move to parent category"
msgstr ""
-#: templates/js/translated/part.js:375
+#: templates/js/translated/part.js:374
msgid "Delete Part Category"
msgstr ""
-#: templates/js/translated/part.js:379
+#: templates/js/translated/part.js:378
msgid "Action for parts in this category"
msgstr ""
-#: templates/js/translated/part.js:384
+#: templates/js/translated/part.js:383
msgid "Action for child categories"
msgstr ""
-#: templates/js/translated/part.js:408
+#: templates/js/translated/part.js:407
msgid "Create Part"
msgstr ""
-#: templates/js/translated/part.js:410
+#: templates/js/translated/part.js:409
msgid "Create another part after this one"
msgstr ""
-#: templates/js/translated/part.js:411
+#: templates/js/translated/part.js:410
msgid "Part created successfully"
msgstr ""
-#: templates/js/translated/part.js:439
+#: templates/js/translated/part.js:438
msgid "Edit Part"
msgstr ""
-#: templates/js/translated/part.js:441
+#: templates/js/translated/part.js:440
msgid "Part edited"
msgstr ""
-#: templates/js/translated/part.js:452
+#: templates/js/translated/part.js:451
msgid "Create Part Variant"
msgstr ""
-#: templates/js/translated/part.js:509
+#: templates/js/translated/part.js:508
msgid "Active Part"
msgstr ""
-#: templates/js/translated/part.js:510
+#: templates/js/translated/part.js:509
msgid "Part cannot be deleted as it is currently active"
msgstr ""
-#: templates/js/translated/part.js:524
+#: templates/js/translated/part.js:523
msgid "Deleting this part cannot be reversed"
msgstr ""
-#: templates/js/translated/part.js:526
+#: templates/js/translated/part.js:525
msgid "Any stock items for this part will be deleted"
msgstr ""
-#: templates/js/translated/part.js:527
+#: templates/js/translated/part.js:526
msgid "This part will be removed from any Bills of Material"
msgstr ""
-#: templates/js/translated/part.js:528
+#: templates/js/translated/part.js:527
msgid "All manufacturer and supplier information for this part will be deleted"
msgstr ""
-#: templates/js/translated/part.js:535
+#: templates/js/translated/part.js:534
msgid "Delete Part"
msgstr ""
-#: templates/js/translated/part.js:571
+#: templates/js/translated/part.js:570
msgid "You are subscribed to notifications for this item"
msgstr ""
-#: templates/js/translated/part.js:573
+#: templates/js/translated/part.js:572
msgid "You have subscribed to notifications for this item"
msgstr ""
-#: templates/js/translated/part.js:578
+#: templates/js/translated/part.js:577
msgid "Subscribe to notifications for this item"
msgstr ""
-#: templates/js/translated/part.js:580
+#: templates/js/translated/part.js:579
msgid "You have unsubscribed to notifications for this item"
msgstr ""
-#: templates/js/translated/part.js:597
+#: templates/js/translated/part.js:596
msgid "Validating the BOM will mark each line item as valid"
msgstr ""
-#: templates/js/translated/part.js:607
+#: templates/js/translated/part.js:606
msgid "Validate Bill of Materials"
msgstr ""
-#: templates/js/translated/part.js:610
+#: templates/js/translated/part.js:609
msgid "Validated Bill of Materials"
msgstr ""
-#: templates/js/translated/part.js:635
+#: templates/js/translated/part.js:634
msgid "Copy Bill of Materials"
msgstr ""
-#: templates/js/translated/part.js:663
-#: templates/js/translated/table_filters.js:660
+#: templates/js/translated/part.js:662
+#: templates/js/translated/table_filters.js:682
msgid "Low stock"
msgstr ""
-#: templates/js/translated/part.js:666
+#: templates/js/translated/part.js:665
msgid "No stock available"
msgstr ""
-#: templates/js/translated/part.js:726
+#: templates/js/translated/part.js:725
msgid "Demand"
msgstr ""
-#: templates/js/translated/part.js:749
+#: templates/js/translated/part.js:748
msgid "Unit"
msgstr ""
-#: templates/js/translated/part.js:768 templates/js/translated/part.js:1176
-msgid "Trackable part"
-msgstr ""
-
-#: templates/js/translated/part.js:772 templates/js/translated/part.js:1180
+#: templates/js/translated/part.js:771 templates/js/translated/part.js:1179
msgid "Virtual part"
msgstr ""
-#: templates/js/translated/part.js:784
+#: templates/js/translated/part.js:783
msgid "Subscribed part"
msgstr ""
-#: templates/js/translated/part.js:788
+#: templates/js/translated/part.js:787
msgid "Salable part"
msgstr ""
-#: templates/js/translated/part.js:863
+#: templates/js/translated/part.js:862
msgid "Schedule generation of a new stocktake report."
msgstr ""
-#: templates/js/translated/part.js:863
+#: templates/js/translated/part.js:862
msgid "Once complete, the stocktake report will be available for download."
msgstr ""
-#: templates/js/translated/part.js:871
+#: templates/js/translated/part.js:870
msgid "Generate Stocktake Report"
msgstr ""
-#: templates/js/translated/part.js:875
+#: templates/js/translated/part.js:874
msgid "Stocktake report scheduled"
msgstr ""
-#: templates/js/translated/part.js:1024
+#: templates/js/translated/part.js:1023
msgid "No stocktake information available"
msgstr ""
-#: templates/js/translated/part.js:1082 templates/js/translated/part.js:1118
+#: templates/js/translated/part.js:1081 templates/js/translated/part.js:1117
msgid "Edit Stocktake Entry"
msgstr ""
-#: templates/js/translated/part.js:1086 templates/js/translated/part.js:1128
+#: templates/js/translated/part.js:1085 templates/js/translated/part.js:1127
msgid "Delete Stocktake Entry"
msgstr ""
-#: templates/js/translated/part.js:1255
+#: templates/js/translated/part.js:1254
msgid "No variants found"
msgstr ""
-#: templates/js/translated/part.js:1572
+#: templates/js/translated/part.js:1571
msgid "No part parameter templates found"
msgstr ""
-#: templates/js/translated/part.js:1635
+#: templates/js/translated/part.js:1634
msgid "Edit Part Parameter Template"
msgstr ""
-#: templates/js/translated/part.js:1647
+#: templates/js/translated/part.js:1646
msgid "Any parameters which reference this template will also be deleted"
msgstr ""
-#: templates/js/translated/part.js:1655
+#: templates/js/translated/part.js:1654
msgid "Delete Part Parameter Template"
msgstr ""
-#: templates/js/translated/part.js:1689
-#: templates/js/translated/purchase_order.js:1618
+#: templates/js/translated/part.js:1688
+#: templates/js/translated/purchase_order.js:1633
msgid "No purchase orders found"
msgstr ""
-#: templates/js/translated/part.js:1832
-#: templates/js/translated/purchase_order.js:2121
-#: templates/js/translated/return_order.js:740
-#: templates/js/translated/sales_order.js:1855
+#: templates/js/translated/part.js:1831
+#: templates/js/translated/purchase_order.js:2131
+#: templates/js/translated/return_order.js:752
+#: templates/js/translated/sales_order.js:1867
msgid "This line item is overdue"
msgstr ""
-#: templates/js/translated/part.js:1877
-#: templates/js/translated/purchase_order.js:2188
+#: templates/js/translated/part.js:1876
+#: templates/js/translated/purchase_order.js:2198
msgid "Receive line item"
msgstr ""
-#: templates/js/translated/part.js:1944
+#: templates/js/translated/part.js:1943
msgid "Delete part relationship"
msgstr ""
-#: templates/js/translated/part.js:1966
+#: templates/js/translated/part.js:1965
msgid "Delete Part Relationship"
msgstr ""
-#: templates/js/translated/part.js:2054 templates/js/translated/part.js:2366
+#: templates/js/translated/part.js:2053 templates/js/translated/part.js:2442
msgid "No parts found"
msgstr ""
-#: templates/js/translated/part.js:2192
-msgid "parts"
-msgstr ""
-
-#: templates/js/translated/part.js:2276
-msgid "No category"
-msgstr ""
-
-#: templates/js/translated/part.js:2390 templates/js/translated/part.js:2611
-#: templates/js/translated/stock.js:2417
-msgid "Display as list"
-msgstr ""
-
-#: templates/js/translated/part.js:2406
-msgid "Display as grid"
-msgstr ""
-
-#: templates/js/translated/part.js:2472
+#: templates/js/translated/part.js:2174
msgid "Set the part category for the selected parts"
msgstr ""
-#: templates/js/translated/part.js:2477
+#: templates/js/translated/part.js:2179
msgid "Set Part Category"
msgstr ""
+#: templates/js/translated/part.js:2204
+msgid "Set category"
+msgstr ""
+
+#: templates/js/translated/part.js:2259
+msgid "parts"
+msgstr ""
+
+#: templates/js/translated/part.js:2352
+msgid "No category"
+msgstr ""
+
+#: templates/js/translated/part.js:2466 templates/js/translated/part.js:2596
+#: templates/js/translated/stock.js:2548
+msgid "Display as list"
+msgstr ""
+
#: templates/js/translated/part.js:2482
-msgid "Select Part Category"
+msgid "Display as grid"
msgstr ""
-#: templates/js/translated/part.js:2495
-msgid "Category is required"
-msgstr ""
-
-#: templates/js/translated/part.js:2595
+#: templates/js/translated/part.js:2580
msgid "No subcategories found"
msgstr ""
-#: templates/js/translated/part.js:2631 templates/js/translated/stock.js:2437
+#: templates/js/translated/part.js:2616 templates/js/translated/stock.js:2568
msgid "Display as tree"
msgstr ""
-#: templates/js/translated/part.js:2711
+#: templates/js/translated/part.js:2696
msgid "Load Subcategories"
msgstr ""
-#: templates/js/translated/part.js:2727
+#: templates/js/translated/part.js:2712
msgid "Subscribed category"
msgstr ""
-#: templates/js/translated/part.js:2807
+#: templates/js/translated/part.js:2792
msgid "No test templates matching query"
msgstr ""
-#: templates/js/translated/part.js:2858 templates/js/translated/stock.js:1380
+#: templates/js/translated/part.js:2843 templates/js/translated/stock.js:1379
msgid "Edit test result"
msgstr ""
-#: templates/js/translated/part.js:2859 templates/js/translated/stock.js:1381
-#: templates/js/translated/stock.js:1643
+#: templates/js/translated/part.js:2844 templates/js/translated/stock.js:1380
+#: templates/js/translated/stock.js:1642
msgid "Delete test result"
msgstr ""
-#: templates/js/translated/part.js:2863
+#: templates/js/translated/part.js:2848
msgid "This test is defined for a parent part"
msgstr ""
-#: templates/js/translated/part.js:2879
+#: templates/js/translated/part.js:2864
msgid "Edit Test Result Template"
msgstr ""
-#: templates/js/translated/part.js:2893
+#: templates/js/translated/part.js:2878
msgid "Delete Test Result Template"
msgstr ""
-#: templates/js/translated/part.js:2972 templates/js/translated/part.js:2973
+#: templates/js/translated/part.js:2957 templates/js/translated/part.js:2958
msgid "No date specified"
msgstr ""
-#: templates/js/translated/part.js:2975
+#: templates/js/translated/part.js:2960
msgid "Specified date is in the past"
msgstr ""
-#: templates/js/translated/part.js:2981
+#: templates/js/translated/part.js:2966
msgid "Speculative"
msgstr ""
-#: templates/js/translated/part.js:3031
+#: templates/js/translated/part.js:3016
msgid "No scheduling information available for this part"
msgstr ""
-#: templates/js/translated/part.js:3037
+#: templates/js/translated/part.js:3022
msgid "Error fetching scheduling information for this part"
msgstr ""
-#: templates/js/translated/part.js:3133
+#: templates/js/translated/part.js:3118
msgid "Scheduled Stock Quantities"
msgstr ""
-#: templates/js/translated/part.js:3149
+#: templates/js/translated/part.js:3134
msgid "Maximum Quantity"
msgstr ""
-#: templates/js/translated/part.js:3194
+#: templates/js/translated/part.js:3179
msgid "Minimum Stock Level"
msgstr ""
@@ -11168,234 +11297,234 @@ msgstr ""
msgid "Variant Part"
msgstr ""
-#: templates/js/translated/purchase_order.js:155
+#: templates/js/translated/purchase_order.js:166
msgid "Select purchase order to duplicate"
msgstr ""
-#: templates/js/translated/purchase_order.js:162
+#: templates/js/translated/purchase_order.js:173
msgid "Duplicate Line Items"
msgstr ""
-#: templates/js/translated/purchase_order.js:163
+#: templates/js/translated/purchase_order.js:174
msgid "Duplicate all line items from the selected order"
msgstr ""
-#: templates/js/translated/purchase_order.js:170
+#: templates/js/translated/purchase_order.js:181
msgid "Duplicate Extra Lines"
msgstr ""
-#: templates/js/translated/purchase_order.js:171
+#: templates/js/translated/purchase_order.js:182
msgid "Duplicate extra line items from the selected order"
msgstr ""
-#: templates/js/translated/purchase_order.js:192
+#: templates/js/translated/purchase_order.js:203
msgid "Edit Purchase Order"
msgstr ""
-#: templates/js/translated/purchase_order.js:209
+#: templates/js/translated/purchase_order.js:220
msgid "Duplication Options"
msgstr ""
-#: templates/js/translated/purchase_order.js:436
+#: templates/js/translated/purchase_order.js:447
msgid "Complete Purchase Order"
msgstr ""
-#: templates/js/translated/purchase_order.js:453
-#: templates/js/translated/return_order.js:195
-#: templates/js/translated/sales_order.js:485
+#: templates/js/translated/purchase_order.js:464
+#: templates/js/translated/return_order.js:207
+#: templates/js/translated/sales_order.js:497
msgid "Mark this order as complete?"
msgstr ""
-#: templates/js/translated/purchase_order.js:459
+#: templates/js/translated/purchase_order.js:470
msgid "All line items have been received"
msgstr ""
-#: templates/js/translated/purchase_order.js:464
+#: templates/js/translated/purchase_order.js:475
msgid "This order has line items which have not been marked as received."
msgstr ""
-#: templates/js/translated/purchase_order.js:465
-#: templates/js/translated/sales_order.js:499
+#: templates/js/translated/purchase_order.js:476
+#: templates/js/translated/sales_order.js:511
msgid "Completing this order means that the order and line items will no longer be editable."
msgstr ""
-#: templates/js/translated/purchase_order.js:488
+#: templates/js/translated/purchase_order.js:499
msgid "Cancel Purchase Order"
msgstr ""
-#: templates/js/translated/purchase_order.js:493
+#: templates/js/translated/purchase_order.js:504
msgid "Are you sure you wish to cancel this purchase order?"
msgstr ""
-#: templates/js/translated/purchase_order.js:499
+#: templates/js/translated/purchase_order.js:510
msgid "This purchase order can not be cancelled"
msgstr ""
-#: templates/js/translated/purchase_order.js:520
-#: templates/js/translated/return_order.js:149
+#: templates/js/translated/purchase_order.js:531
+#: templates/js/translated/return_order.js:161
msgid "After placing this order, line items will no longer be editable."
msgstr ""
-#: templates/js/translated/purchase_order.js:525
+#: templates/js/translated/purchase_order.js:536
msgid "Issue Purchase Order"
msgstr ""
-#: templates/js/translated/purchase_order.js:617
+#: templates/js/translated/purchase_order.js:628
msgid "At least one purchaseable part must be selected"
msgstr ""
-#: templates/js/translated/purchase_order.js:642
+#: templates/js/translated/purchase_order.js:653
msgid "Quantity to order"
msgstr ""
-#: templates/js/translated/purchase_order.js:651
+#: templates/js/translated/purchase_order.js:662
msgid "New supplier part"
msgstr ""
-#: templates/js/translated/purchase_order.js:669
+#: templates/js/translated/purchase_order.js:680
msgid "New purchase order"
msgstr ""
-#: templates/js/translated/purchase_order.js:701
+#: templates/js/translated/purchase_order.js:712
msgid "Add to purchase order"
msgstr ""
-#: templates/js/translated/purchase_order.js:845
+#: templates/js/translated/purchase_order.js:860
msgid "No matching supplier parts"
msgstr ""
-#: templates/js/translated/purchase_order.js:864
+#: templates/js/translated/purchase_order.js:879
msgid "No matching purchase orders"
msgstr ""
-#: templates/js/translated/purchase_order.js:1043
+#: templates/js/translated/purchase_order.js:1058
msgid "Select Line Items"
msgstr ""
-#: templates/js/translated/purchase_order.js:1044
-#: templates/js/translated/return_order.js:480
+#: templates/js/translated/purchase_order.js:1059
+#: templates/js/translated/return_order.js:492
msgid "At least one line item must be selected"
msgstr ""
-#: templates/js/translated/purchase_order.js:1074
+#: templates/js/translated/purchase_order.js:1089
msgid "Received Quantity"
msgstr ""
-#: templates/js/translated/purchase_order.js:1085
+#: templates/js/translated/purchase_order.js:1100
msgid "Quantity to receive"
msgstr ""
-#: templates/js/translated/purchase_order.js:1161
+#: templates/js/translated/purchase_order.js:1176
msgid "Stock Status"
msgstr ""
-#: templates/js/translated/purchase_order.js:1175
+#: templates/js/translated/purchase_order.js:1190
msgid "Add barcode"
msgstr ""
-#: templates/js/translated/purchase_order.js:1176
+#: templates/js/translated/purchase_order.js:1191
msgid "Remove barcode"
msgstr ""
-#: templates/js/translated/purchase_order.js:1179
+#: templates/js/translated/purchase_order.js:1194
msgid "Specify location"
msgstr ""
-#: templates/js/translated/purchase_order.js:1187
+#: templates/js/translated/purchase_order.js:1202
msgid "Add batch code"
msgstr ""
-#: templates/js/translated/purchase_order.js:1198
+#: templates/js/translated/purchase_order.js:1213
msgid "Add serial numbers"
msgstr ""
-#: templates/js/translated/purchase_order.js:1250
+#: templates/js/translated/purchase_order.js:1265
msgid "Serials"
msgstr ""
-#: templates/js/translated/purchase_order.js:1275
+#: templates/js/translated/purchase_order.js:1290
msgid "Order Code"
msgstr ""
-#: templates/js/translated/purchase_order.js:1277
+#: templates/js/translated/purchase_order.js:1292
msgid "Quantity to Receive"
msgstr ""
-#: templates/js/translated/purchase_order.js:1299
-#: templates/js/translated/return_order.js:545
+#: templates/js/translated/purchase_order.js:1314
+#: templates/js/translated/return_order.js:557
msgid "Confirm receipt of items"
msgstr ""
-#: templates/js/translated/purchase_order.js:1300
+#: templates/js/translated/purchase_order.js:1315
msgid "Receive Purchase Order Items"
msgstr ""
-#: templates/js/translated/purchase_order.js:1368
+#: templates/js/translated/purchase_order.js:1383
msgid "Scan Item Barcode"
msgstr ""
-#: templates/js/translated/purchase_order.js:1369
+#: templates/js/translated/purchase_order.js:1384
msgid "Scan barcode on incoming item (must not match any existing stock items)"
msgstr ""
-#: templates/js/translated/purchase_order.js:1383
+#: templates/js/translated/purchase_order.js:1398
msgid "Invalid barcode data"
msgstr ""
-#: templates/js/translated/purchase_order.js:1645
-#: templates/js/translated/return_order.js:274
-#: templates/js/translated/sales_order.js:762
-#: templates/js/translated/sales_order.js:986
+#: templates/js/translated/purchase_order.js:1660
+#: templates/js/translated/return_order.js:286
+#: templates/js/translated/sales_order.js:774
+#: templates/js/translated/sales_order.js:998
msgid "Order is overdue"
msgstr ""
-#: templates/js/translated/purchase_order.js:1707
-#: templates/js/translated/return_order.js:342
-#: templates/js/translated/sales_order.js:839
-#: templates/js/translated/sales_order.js:999
+#: templates/js/translated/purchase_order.js:1722
+#: templates/js/translated/return_order.js:354
+#: templates/js/translated/sales_order.js:851
+#: templates/js/translated/sales_order.js:1011
msgid "Items"
msgstr ""
-#: templates/js/translated/purchase_order.js:1806
+#: templates/js/translated/purchase_order.js:1821
msgid "All selected Line items will be deleted"
msgstr ""
-#: templates/js/translated/purchase_order.js:1824
+#: templates/js/translated/purchase_order.js:1839
msgid "Delete selected Line items?"
msgstr ""
-#: templates/js/translated/purchase_order.js:1884
-#: templates/js/translated/sales_order.js:2047
+#: templates/js/translated/purchase_order.js:1894
+#: templates/js/translated/sales_order.js:2059
msgid "Duplicate Line Item"
msgstr ""
-#: templates/js/translated/purchase_order.js:1899
-#: templates/js/translated/return_order.js:464
-#: templates/js/translated/return_order.js:653
-#: templates/js/translated/sales_order.js:2060
+#: templates/js/translated/purchase_order.js:1909
+#: templates/js/translated/return_order.js:476
+#: templates/js/translated/return_order.js:665
+#: templates/js/translated/sales_order.js:2072
msgid "Edit Line Item"
msgstr ""
-#: templates/js/translated/purchase_order.js:1910
-#: templates/js/translated/return_order.js:666
-#: templates/js/translated/sales_order.js:2071
+#: templates/js/translated/purchase_order.js:1920
+#: templates/js/translated/return_order.js:678
+#: templates/js/translated/sales_order.js:2083
msgid "Delete Line Item"
msgstr ""
-#: templates/js/translated/purchase_order.js:2192
-#: templates/js/translated/sales_order.js:2001
+#: templates/js/translated/purchase_order.js:2202
+#: templates/js/translated/sales_order.js:2013
msgid "Duplicate line item"
msgstr ""
-#: templates/js/translated/purchase_order.js:2193
-#: templates/js/translated/return_order.js:785
-#: templates/js/translated/sales_order.js:2002
+#: templates/js/translated/purchase_order.js:2203
+#: templates/js/translated/return_order.js:797
+#: templates/js/translated/sales_order.js:2014
msgid "Edit line item"
msgstr ""
-#: templates/js/translated/purchase_order.js:2194
-#: templates/js/translated/return_order.js:789
-#: templates/js/translated/sales_order.js:2008
+#: templates/js/translated/purchase_order.js:2204
+#: templates/js/translated/return_order.js:801
+#: templates/js/translated/sales_order.js:2020
msgid "Delete line item"
msgstr ""
@@ -11424,941 +11553,973 @@ msgstr ""
msgid "Add Customer"
msgstr ""
-#: templates/js/translated/return_order.js:119
+#: templates/js/translated/return_order.js:131
msgid "Create Return Order"
msgstr ""
-#: templates/js/translated/return_order.js:134
+#: templates/js/translated/return_order.js:146
msgid "Edit Return Order"
msgstr ""
-#: templates/js/translated/return_order.js:154
+#: templates/js/translated/return_order.js:166
msgid "Issue Return Order"
msgstr ""
-#: templates/js/translated/return_order.js:171
+#: templates/js/translated/return_order.js:183
msgid "Are you sure you wish to cancel this Return Order?"
msgstr ""
-#: templates/js/translated/return_order.js:178
+#: templates/js/translated/return_order.js:190
msgid "Cancel Return Order"
msgstr ""
-#: templates/js/translated/return_order.js:203
+#: templates/js/translated/return_order.js:215
msgid "Complete Return Order"
msgstr ""
-#: templates/js/translated/return_order.js:251
+#: templates/js/translated/return_order.js:263
msgid "No return orders found"
msgstr ""
-#: templates/js/translated/return_order.js:288
-#: templates/js/translated/sales_order.js:776
+#: templates/js/translated/return_order.js:300
+#: templates/js/translated/sales_order.js:788
msgid "Invalid Customer"
msgstr ""
-#: templates/js/translated/return_order.js:546
+#: templates/js/translated/return_order.js:558
msgid "Receive Return Order Items"
msgstr ""
-#: templates/js/translated/return_order.js:677
-#: templates/js/translated/sales_order.js:2207
+#: templates/js/translated/return_order.js:689
+#: templates/js/translated/sales_order.js:2219
msgid "No matching line items"
msgstr ""
-#: templates/js/translated/return_order.js:782
+#: templates/js/translated/return_order.js:794
msgid "Mark item as received"
msgstr ""
-#: templates/js/translated/sales_order.js:146
+#: templates/js/translated/sales_order.js:158
msgid "Create Sales Order"
msgstr ""
-#: templates/js/translated/sales_order.js:161
+#: templates/js/translated/sales_order.js:173
msgid "Edit Sales Order"
msgstr ""
-#: templates/js/translated/sales_order.js:276
+#: templates/js/translated/sales_order.js:288
msgid "No stock items have been allocated to this shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:281
+#: templates/js/translated/sales_order.js:293
msgid "The following stock items will be shipped"
msgstr ""
-#: templates/js/translated/sales_order.js:321
+#: templates/js/translated/sales_order.js:333
msgid "Complete Shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:345
+#: templates/js/translated/sales_order.js:357
msgid "Confirm Shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:401
+#: templates/js/translated/sales_order.js:413
msgid "No pending shipments found"
msgstr ""
-#: templates/js/translated/sales_order.js:405
+#: templates/js/translated/sales_order.js:417
msgid "No stock items have been allocated to pending shipments"
msgstr ""
-#: templates/js/translated/sales_order.js:415
+#: templates/js/translated/sales_order.js:427
msgid "Complete Shipments"
msgstr ""
-#: templates/js/translated/sales_order.js:437
+#: templates/js/translated/sales_order.js:449
msgid "Skip"
msgstr ""
-#: templates/js/translated/sales_order.js:498
+#: templates/js/translated/sales_order.js:510
msgid "This order has line items which have not been completed."
msgstr ""
-#: templates/js/translated/sales_order.js:520
+#: templates/js/translated/sales_order.js:532
msgid "Issue this Sales Order?"
msgstr ""
-#: templates/js/translated/sales_order.js:525
+#: templates/js/translated/sales_order.js:537
msgid "Issue Sales Order"
msgstr ""
-#: templates/js/translated/sales_order.js:544
+#: templates/js/translated/sales_order.js:556
msgid "Cancel Sales Order"
msgstr ""
-#: templates/js/translated/sales_order.js:549
+#: templates/js/translated/sales_order.js:561
msgid "Cancelling this order means that the order will no longer be editable."
msgstr ""
-#: templates/js/translated/sales_order.js:603
+#: templates/js/translated/sales_order.js:615
msgid "Create New Shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:713
+#: templates/js/translated/sales_order.js:725
msgid "No sales orders found"
msgstr ""
-#: templates/js/translated/sales_order.js:896
+#: templates/js/translated/sales_order.js:908
msgid "Edit shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:899
+#: templates/js/translated/sales_order.js:911
msgid "Complete shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:904
+#: templates/js/translated/sales_order.js:916
msgid "Delete shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:921
+#: templates/js/translated/sales_order.js:933
msgid "Edit Shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:936
+#: templates/js/translated/sales_order.js:948
msgid "Delete Shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:969
+#: templates/js/translated/sales_order.js:981
msgid "No matching shipments found"
msgstr ""
-#: templates/js/translated/sales_order.js:994
+#: templates/js/translated/sales_order.js:1006
msgid "Shipment Reference"
msgstr ""
-#: templates/js/translated/sales_order.js:1018
-#: templates/js/translated/sales_order.js:1515
+#: templates/js/translated/sales_order.js:1030
+#: templates/js/translated/sales_order.js:1527
msgid "Not shipped"
msgstr ""
-#: templates/js/translated/sales_order.js:1036
+#: templates/js/translated/sales_order.js:1048
msgid "Tracking"
msgstr ""
-#: templates/js/translated/sales_order.js:1040
+#: templates/js/translated/sales_order.js:1052
msgid "Invoice"
msgstr ""
-#: templates/js/translated/sales_order.js:1207
+#: templates/js/translated/sales_order.js:1219
msgid "Add Shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:1258
+#: templates/js/translated/sales_order.js:1270
msgid "Confirm stock allocation"
msgstr ""
-#: templates/js/translated/sales_order.js:1259
+#: templates/js/translated/sales_order.js:1271
msgid "Allocate Stock Items to Sales Order"
msgstr ""
-#: templates/js/translated/sales_order.js:1463
+#: templates/js/translated/sales_order.js:1475
msgid "No sales order allocations found"
msgstr ""
-#: templates/js/translated/sales_order.js:1555
+#: templates/js/translated/sales_order.js:1567
msgid "Edit Stock Allocation"
msgstr ""
-#: templates/js/translated/sales_order.js:1569
+#: templates/js/translated/sales_order.js:1581
msgid "Confirm Delete Operation"
msgstr ""
-#: templates/js/translated/sales_order.js:1570
+#: templates/js/translated/sales_order.js:1582
msgid "Delete Stock Allocation"
msgstr ""
-#: templates/js/translated/sales_order.js:1609
-#: templates/js/translated/sales_order.js:1696
-#: templates/js/translated/stock.js:1688
+#: templates/js/translated/sales_order.js:1621
+#: templates/js/translated/sales_order.js:1708
+#: templates/js/translated/stock.js:1687
msgid "Shipped to customer"
msgstr ""
-#: templates/js/translated/sales_order.js:1617
-#: templates/js/translated/sales_order.js:1705
+#: templates/js/translated/sales_order.js:1629
+#: templates/js/translated/sales_order.js:1717
msgid "Stock location not specified"
msgstr ""
-#: templates/js/translated/sales_order.js:1985
+#: templates/js/translated/sales_order.js:1997
msgid "Allocate serial numbers"
msgstr ""
-#: templates/js/translated/sales_order.js:1989
+#: templates/js/translated/sales_order.js:2001
msgid "Purchase stock"
msgstr ""
-#: templates/js/translated/sales_order.js:1998
-#: templates/js/translated/sales_order.js:2185
+#: templates/js/translated/sales_order.js:2010
+#: templates/js/translated/sales_order.js:2197
msgid "Calculate price"
msgstr ""
-#: templates/js/translated/sales_order.js:2012
+#: templates/js/translated/sales_order.js:2024
msgid "Cannot be deleted as items have been shipped"
msgstr ""
-#: templates/js/translated/sales_order.js:2015
+#: templates/js/translated/sales_order.js:2027
msgid "Cannot be deleted as items have been allocated"
msgstr ""
-#: templates/js/translated/sales_order.js:2086
+#: templates/js/translated/sales_order.js:2098
msgid "Allocate Serial Numbers"
msgstr ""
-#: templates/js/translated/sales_order.js:2193
+#: templates/js/translated/sales_order.js:2205
msgid "Update Unit Price"
msgstr ""
-#: templates/js/translated/search.js:312
+#: templates/js/translated/search.js:270
msgid "No results"
msgstr ""
-#: templates/js/translated/search.js:334 templates/search.html:25
+#: templates/js/translated/search.js:292 templates/search.html:25
msgid "Enter search query"
msgstr ""
-#: templates/js/translated/search.js:384
+#: templates/js/translated/search.js:342
msgid "result"
msgstr ""
-#: templates/js/translated/search.js:384
+#: templates/js/translated/search.js:342
msgid "results"
msgstr ""
-#: templates/js/translated/search.js:394
+#: templates/js/translated/search.js:352
msgid "Minimize results"
msgstr ""
-#: templates/js/translated/search.js:397
+#: templates/js/translated/search.js:355
msgid "Remove results"
msgstr ""
-#: templates/js/translated/stock.js:98
+#: templates/js/translated/stock.js:97
msgid "Serialize Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:129
+#: templates/js/translated/stock.js:128
msgid "Confirm Stock Serialization"
msgstr ""
-#: templates/js/translated/stock.js:138
+#: templates/js/translated/stock.js:137
msgid "Parent stock location"
msgstr ""
-#: templates/js/translated/stock.js:173
+#: templates/js/translated/stock.js:172
msgid "Edit Stock Location"
msgstr ""
-#: templates/js/translated/stock.js:188
+#: templates/js/translated/stock.js:187
msgid "New Stock Location"
msgstr ""
-#: templates/js/translated/stock.js:190
+#: templates/js/translated/stock.js:189
msgid "Create another location after this one"
msgstr ""
-#: templates/js/translated/stock.js:191
+#: templates/js/translated/stock.js:190
msgid "Stock location created"
msgstr ""
-#: templates/js/translated/stock.js:205
+#: templates/js/translated/stock.js:204
msgid "Are you sure you want to delete this stock location?"
msgstr ""
-#: templates/js/translated/stock.js:212
+#: templates/js/translated/stock.js:211
msgid "Move to parent stock location"
msgstr ""
-#: templates/js/translated/stock.js:221
+#: templates/js/translated/stock.js:220
msgid "Delete Stock Location"
msgstr ""
-#: templates/js/translated/stock.js:225
+#: templates/js/translated/stock.js:224
msgid "Action for stock items in this stock location"
msgstr ""
-#: templates/js/translated/stock.js:230
+#: templates/js/translated/stock.js:229
msgid "Action for sub-locations"
msgstr ""
-#: templates/js/translated/stock.js:284
+#: templates/js/translated/stock.js:283
msgid "This part cannot be serialized"
msgstr ""
-#: templates/js/translated/stock.js:320
+#: templates/js/translated/stock.js:319
msgid "Add given quantity as packs instead of individual items"
msgstr ""
-#: templates/js/translated/stock.js:329
+#: templates/js/translated/stock.js:328
msgid "Enter initial quantity for this stock item"
msgstr ""
-#: templates/js/translated/stock.js:335
+#: templates/js/translated/stock.js:334
msgid "Enter serial numbers for new stock (or leave blank)"
msgstr ""
-#: templates/js/translated/stock.js:406
+#: templates/js/translated/stock.js:405
msgid "Stock item duplicated"
msgstr ""
-#: templates/js/translated/stock.js:426
+#: templates/js/translated/stock.js:425
msgid "Duplicate Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:442
+#: templates/js/translated/stock.js:441
msgid "Are you sure you want to delete this stock item?"
msgstr ""
-#: templates/js/translated/stock.js:447
+#: templates/js/translated/stock.js:446
msgid "Delete Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:468
+#: templates/js/translated/stock.js:467
msgid "Edit Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:510
+#: templates/js/translated/stock.js:509
msgid "Create another item after this one"
msgstr ""
-#: templates/js/translated/stock.js:522
+#: templates/js/translated/stock.js:521
msgid "Created new stock item"
msgstr ""
-#: templates/js/translated/stock.js:535
+#: templates/js/translated/stock.js:534
msgid "Created multiple stock items"
msgstr ""
-#: templates/js/translated/stock.js:560
+#: templates/js/translated/stock.js:559
msgid "Find Serial Number"
msgstr ""
-#: templates/js/translated/stock.js:564 templates/js/translated/stock.js:565
+#: templates/js/translated/stock.js:563 templates/js/translated/stock.js:564
msgid "Enter serial number"
msgstr ""
-#: templates/js/translated/stock.js:581
+#: templates/js/translated/stock.js:580
msgid "Enter a serial number"
msgstr ""
-#: templates/js/translated/stock.js:601
+#: templates/js/translated/stock.js:600
msgid "No matching serial number"
msgstr ""
-#: templates/js/translated/stock.js:610
+#: templates/js/translated/stock.js:609
msgid "More than one matching result found"
msgstr ""
-#: templates/js/translated/stock.js:718
+#: templates/js/translated/stock.js:717
msgid "Confirm stock assignment"
msgstr ""
-#: templates/js/translated/stock.js:719
+#: templates/js/translated/stock.js:718
msgid "Assign Stock to Customer"
msgstr ""
-#: templates/js/translated/stock.js:796
+#: templates/js/translated/stock.js:795
msgid "Warning: Merge operation cannot be reversed"
msgstr ""
-#: templates/js/translated/stock.js:797
+#: templates/js/translated/stock.js:796
msgid "Some information will be lost when merging stock items"
msgstr ""
-#: templates/js/translated/stock.js:799
+#: templates/js/translated/stock.js:798
msgid "Stock transaction history will be deleted for merged items"
msgstr ""
-#: templates/js/translated/stock.js:800
+#: templates/js/translated/stock.js:799
msgid "Supplier part information will be deleted for merged items"
msgstr ""
-#: templates/js/translated/stock.js:891
+#: templates/js/translated/stock.js:890
msgid "Confirm stock item merge"
msgstr ""
-#: templates/js/translated/stock.js:892
+#: templates/js/translated/stock.js:891
msgid "Merge Stock Items"
msgstr ""
-#: templates/js/translated/stock.js:987
+#: templates/js/translated/stock.js:986
msgid "Transfer Stock"
msgstr ""
-#: templates/js/translated/stock.js:988
+#: templates/js/translated/stock.js:987
msgid "Move"
msgstr ""
-#: templates/js/translated/stock.js:994
+#: templates/js/translated/stock.js:993
msgid "Count Stock"
msgstr ""
-#: templates/js/translated/stock.js:995
+#: templates/js/translated/stock.js:994
msgid "Count"
msgstr ""
-#: templates/js/translated/stock.js:999
+#: templates/js/translated/stock.js:998
msgid "Remove Stock"
msgstr ""
-#: templates/js/translated/stock.js:1000
+#: templates/js/translated/stock.js:999
msgid "Take"
msgstr ""
-#: templates/js/translated/stock.js:1004
+#: templates/js/translated/stock.js:1003
msgid "Add Stock"
msgstr ""
-#: templates/js/translated/stock.js:1005 users/models.py:243
+#: templates/js/translated/stock.js:1004 users/models.py:249
msgid "Add"
msgstr ""
-#: templates/js/translated/stock.js:1009
+#: templates/js/translated/stock.js:1008
msgid "Delete Stock"
msgstr ""
-#: templates/js/translated/stock.js:1106
+#: templates/js/translated/stock.js:1105
msgid "Quantity cannot be adjusted for serialized stock"
msgstr ""
-#: templates/js/translated/stock.js:1106
+#: templates/js/translated/stock.js:1105
msgid "Specify stock quantity"
msgstr ""
-#: templates/js/translated/stock.js:1140
+#: templates/js/translated/stock.js:1139 templates/js/translated/stock.js:3151
msgid "Select Stock Items"
msgstr ""
-#: templates/js/translated/stock.js:1141
-msgid "You must select at least one available stock item"
+#: templates/js/translated/stock.js:1140
+msgid "Select at least one available stock item"
msgstr ""
-#: templates/js/translated/stock.js:1168
+#: templates/js/translated/stock.js:1167
msgid "Confirm stock adjustment"
msgstr ""
-#: templates/js/translated/stock.js:1304
+#: templates/js/translated/stock.js:1303
msgid "PASS"
msgstr ""
-#: templates/js/translated/stock.js:1306
+#: templates/js/translated/stock.js:1305
msgid "FAIL"
msgstr ""
-#: templates/js/translated/stock.js:1311
+#: templates/js/translated/stock.js:1310
msgid "NO RESULT"
msgstr ""
-#: templates/js/translated/stock.js:1373
+#: templates/js/translated/stock.js:1372
msgid "Pass test"
msgstr ""
-#: templates/js/translated/stock.js:1376
+#: templates/js/translated/stock.js:1375
msgid "Add test result"
msgstr ""
-#: templates/js/translated/stock.js:1400
+#: templates/js/translated/stock.js:1399
msgid "No test results found"
msgstr ""
-#: templates/js/translated/stock.js:1464
+#: templates/js/translated/stock.js:1463
msgid "Test Date"
msgstr ""
-#: templates/js/translated/stock.js:1626
+#: templates/js/translated/stock.js:1625
msgid "Edit Test Result"
msgstr ""
-#: templates/js/translated/stock.js:1648
+#: templates/js/translated/stock.js:1647
msgid "Delete Test Result"
msgstr ""
-#: templates/js/translated/stock.js:1680
+#: templates/js/translated/stock.js:1679
msgid "In production"
msgstr ""
-#: templates/js/translated/stock.js:1684
+#: templates/js/translated/stock.js:1683
msgid "Installed in Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:1692
+#: templates/js/translated/stock.js:1691
msgid "Assigned to Sales Order"
msgstr ""
-#: templates/js/translated/stock.js:1698
+#: templates/js/translated/stock.js:1697
msgid "No stock location set"
msgstr ""
-#: templates/js/translated/stock.js:1746
+#: templates/js/translated/stock.js:1753
+msgid "Change stock status"
+msgstr ""
+
+#: templates/js/translated/stock.js:1762
+msgid "Merge stock"
+msgstr ""
+
+#: templates/js/translated/stock.js:1811
+msgid "Delete stock"
+msgstr ""
+
+#: templates/js/translated/stock.js:1866
msgid "stock items"
msgstr ""
-#: templates/js/translated/stock.js:1850
+#: templates/js/translated/stock.js:1871
+msgid "Scan to location"
+msgstr ""
+
+#: templates/js/translated/stock.js:1882
+msgid "Stock Actions"
+msgstr ""
+
+#: templates/js/translated/stock.js:1929
+msgid "Load installed items"
+msgstr ""
+
+#: templates/js/translated/stock.js:2007
msgid "Stock item is in production"
msgstr ""
-#: templates/js/translated/stock.js:1855
+#: templates/js/translated/stock.js:2012
msgid "Stock item assigned to sales order"
msgstr ""
-#: templates/js/translated/stock.js:1858
+#: templates/js/translated/stock.js:2015
msgid "Stock item assigned to customer"
msgstr ""
-#: templates/js/translated/stock.js:1861
+#: templates/js/translated/stock.js:2018
msgid "Serialized stock item has been allocated"
msgstr ""
-#: templates/js/translated/stock.js:1863
+#: templates/js/translated/stock.js:2020
msgid "Stock item has been fully allocated"
msgstr ""
-#: templates/js/translated/stock.js:1865
+#: templates/js/translated/stock.js:2022
msgid "Stock item has been partially allocated"
msgstr ""
-#: templates/js/translated/stock.js:1868
+#: templates/js/translated/stock.js:2025
msgid "Stock item has been installed in another item"
msgstr ""
-#: templates/js/translated/stock.js:1870
+#: templates/js/translated/stock.js:2027
msgid "Stock item has been consumed by a build order"
msgstr ""
-#: templates/js/translated/stock.js:1874
+#: templates/js/translated/stock.js:2031
msgid "Stock item has expired"
msgstr ""
-#: templates/js/translated/stock.js:1876
+#: templates/js/translated/stock.js:2033
msgid "Stock item will expire soon"
msgstr ""
-#: templates/js/translated/stock.js:1881
+#: templates/js/translated/stock.js:2038
msgid "Stock item has been rejected"
msgstr ""
-#: templates/js/translated/stock.js:1883
+#: templates/js/translated/stock.js:2040
msgid "Stock item is lost"
msgstr ""
-#: templates/js/translated/stock.js:1885
+#: templates/js/translated/stock.js:2042
msgid "Stock item is destroyed"
msgstr ""
-#: templates/js/translated/stock.js:1889
-#: templates/js/translated/table_filters.js:296
+#: templates/js/translated/stock.js:2046
+#: templates/js/translated/table_filters.js:302
msgid "Depleted"
msgstr ""
-#: templates/js/translated/stock.js:2031
+#: templates/js/translated/stock.js:2188
msgid "Supplier part not specified"
msgstr ""
-#: templates/js/translated/stock.js:2078
+#: templates/js/translated/stock.js:2235
msgid "Stock Value"
msgstr ""
-#: templates/js/translated/stock.js:2170
+#: templates/js/translated/stock.js:2358
msgid "No stock items matching query"
msgstr ""
-#: templates/js/translated/stock.js:2319
+#: templates/js/translated/stock.js:2450
msgid "stock locations"
msgstr ""
-#: templates/js/translated/stock.js:2476
+#: templates/js/translated/stock.js:2607
msgid "Load Subloactions"
msgstr ""
-#: templates/js/translated/stock.js:2583
+#: templates/js/translated/stock.js:2714
msgid "Details"
msgstr ""
-#: templates/js/translated/stock.js:2587
+#: templates/js/translated/stock.js:2718
msgid "No changes"
msgstr ""
-#: templates/js/translated/stock.js:2599
+#: templates/js/translated/stock.js:2730
msgid "Part information unavailable"
msgstr ""
-#: templates/js/translated/stock.js:2621
+#: templates/js/translated/stock.js:2752
msgid "Location no longer exists"
msgstr ""
-#: templates/js/translated/stock.js:2638
+#: templates/js/translated/stock.js:2769
msgid "Build order no longer exists"
msgstr ""
-#: templates/js/translated/stock.js:2653
+#: templates/js/translated/stock.js:2784
msgid "Purchase order no longer exists"
msgstr ""
-#: templates/js/translated/stock.js:2670
+#: templates/js/translated/stock.js:2801
msgid "Sales Order no longer exists"
msgstr ""
-#: templates/js/translated/stock.js:2687
+#: templates/js/translated/stock.js:2818
msgid "Return Order no longer exists"
msgstr ""
-#: templates/js/translated/stock.js:2706
+#: templates/js/translated/stock.js:2837
msgid "Customer no longer exists"
msgstr ""
-#: templates/js/translated/stock.js:2724
+#: templates/js/translated/stock.js:2855
msgid "Stock item no longer exists"
msgstr ""
-#: templates/js/translated/stock.js:2742
+#: templates/js/translated/stock.js:2873
msgid "Added"
msgstr ""
-#: templates/js/translated/stock.js:2750
+#: templates/js/translated/stock.js:2881
msgid "Removed"
msgstr ""
-#: templates/js/translated/stock.js:2826
+#: templates/js/translated/stock.js:2953
msgid "No installed items"
msgstr ""
-#: templates/js/translated/stock.js:2876 templates/js/translated/stock.js:2911
+#: templates/js/translated/stock.js:3003 templates/js/translated/stock.js:3038
msgid "Uninstall Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:2929
+#: templates/js/translated/stock.js:3056
msgid "Select stock item to uninstall"
msgstr ""
-#: templates/js/translated/stock.js:2950
+#: templates/js/translated/stock.js:3077
msgid "Install another stock item into this item"
msgstr ""
-#: templates/js/translated/stock.js:2951
+#: templates/js/translated/stock.js:3078
msgid "Stock items can only be installed if they meet the following criteria"
msgstr ""
-#: templates/js/translated/stock.js:2953
+#: templates/js/translated/stock.js:3080
msgid "The Stock Item links to a Part which is the BOM for this Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:2954
+#: templates/js/translated/stock.js:3081
msgid "The Stock Item is currently available in stock"
msgstr ""
-#: templates/js/translated/stock.js:2955
+#: templates/js/translated/stock.js:3082
msgid "The Stock Item is not already installed in another item"
msgstr ""
-#: templates/js/translated/stock.js:2956
+#: templates/js/translated/stock.js:3083
msgid "The Stock Item is tracked by either a batch code or serial number"
msgstr ""
-#: templates/js/translated/stock.js:2969
+#: templates/js/translated/stock.js:3096
msgid "Select part to install"
msgstr ""
+#: templates/js/translated/stock.js:3152
+msgid "Select one or more stock items"
+msgstr ""
+
+#: templates/js/translated/stock.js:3165
+msgid "Selected stock items"
+msgstr ""
+
+#: templates/js/translated/stock.js:3169
+msgid "Change Stock Status"
+msgstr ""
+
#: templates/js/translated/table_filters.js:50
msgid "Has project code"
msgstr ""
-#: templates/js/translated/table_filters.js:59
-#: templates/js/translated/table_filters.js:518
-#: templates/js/translated/table_filters.js:530
-#: templates/js/translated/table_filters.js:571
+#: templates/js/translated/table_filters.js:65
+#: templates/js/translated/table_filters.js:540
+#: templates/js/translated/table_filters.js:552
+#: templates/js/translated/table_filters.js:593
msgid "Order status"
msgstr ""
-#: templates/js/translated/table_filters.js:64
-#: templates/js/translated/table_filters.js:535
-#: templates/js/translated/table_filters.js:561
-#: templates/js/translated/table_filters.js:576
+#: templates/js/translated/table_filters.js:70
+#: templates/js/translated/table_filters.js:557
+#: templates/js/translated/table_filters.js:583
+#: templates/js/translated/table_filters.js:598
msgid "Outstanding"
msgstr ""
-#: templates/js/translated/table_filters.js:72
-#: templates/js/translated/table_filters.js:458
-#: templates/js/translated/table_filters.js:543
-#: templates/js/translated/table_filters.js:584
+#: templates/js/translated/table_filters.js:78
+#: templates/js/translated/table_filters.js:464
+#: templates/js/translated/table_filters.js:565
+#: templates/js/translated/table_filters.js:606
msgid "Assigned to me"
msgstr ""
-#: templates/js/translated/table_filters.js:128
+#: templates/js/translated/table_filters.js:134
msgid "Trackable Part"
msgstr ""
-#: templates/js/translated/table_filters.js:132
+#: templates/js/translated/table_filters.js:138
msgid "Assembled Part"
msgstr ""
-#: templates/js/translated/table_filters.js:136
+#: templates/js/translated/table_filters.js:142
msgid "Has Available Stock"
msgstr ""
-#: templates/js/translated/table_filters.js:152
+#: templates/js/translated/table_filters.js:158
msgid "Allow Variant Stock"
msgstr ""
-#: templates/js/translated/table_filters.js:164
-#: templates/js/translated/table_filters.js:692
+#: templates/js/translated/table_filters.js:170
+#: templates/js/translated/table_filters.js:714
msgid "Has Pricing"
msgstr ""
-#: templates/js/translated/table_filters.js:204
-#: templates/js/translated/table_filters.js:291
+#: templates/js/translated/table_filters.js:210
+#: templates/js/translated/table_filters.js:297
msgid "Include sublocations"
msgstr ""
-#: templates/js/translated/table_filters.js:205
+#: templates/js/translated/table_filters.js:211
msgid "Include locations"
msgstr ""
-#: templates/js/translated/table_filters.js:224
-#: templates/js/translated/table_filters.js:225
-#: templates/js/translated/table_filters.js:624
+#: templates/js/translated/table_filters.js:230
+#: templates/js/translated/table_filters.js:231
+#: templates/js/translated/table_filters.js:646
msgid "Include subcategories"
msgstr ""
-#: templates/js/translated/table_filters.js:233
-#: templates/js/translated/table_filters.js:672
+#: templates/js/translated/table_filters.js:239
+#: templates/js/translated/table_filters.js:694
msgid "Subscribed"
msgstr ""
-#: templates/js/translated/table_filters.js:244
-#: templates/js/translated/table_filters.js:326
+#: templates/js/translated/table_filters.js:250
+#: templates/js/translated/table_filters.js:332
msgid "Is Serialized"
msgstr ""
-#: templates/js/translated/table_filters.js:247
-#: templates/js/translated/table_filters.js:333
+#: templates/js/translated/table_filters.js:253
+#: templates/js/translated/table_filters.js:339
msgid "Serial number GTE"
msgstr ""
-#: templates/js/translated/table_filters.js:248
-#: templates/js/translated/table_filters.js:334
+#: templates/js/translated/table_filters.js:254
+#: templates/js/translated/table_filters.js:340
msgid "Serial number greater than or equal to"
msgstr ""
-#: templates/js/translated/table_filters.js:251
-#: templates/js/translated/table_filters.js:337
+#: templates/js/translated/table_filters.js:257
+#: templates/js/translated/table_filters.js:343
msgid "Serial number LTE"
msgstr ""
-#: templates/js/translated/table_filters.js:252
-#: templates/js/translated/table_filters.js:338
+#: templates/js/translated/table_filters.js:258
+#: templates/js/translated/table_filters.js:344
msgid "Serial number less than or equal to"
msgstr ""
-#: templates/js/translated/table_filters.js:255
-#: templates/js/translated/table_filters.js:256
-#: templates/js/translated/table_filters.js:329
-#: templates/js/translated/table_filters.js:330
+#: templates/js/translated/table_filters.js:261
+#: templates/js/translated/table_filters.js:262
+#: templates/js/translated/table_filters.js:335
+#: templates/js/translated/table_filters.js:336
msgid "Serial number"
msgstr ""
-#: templates/js/translated/table_filters.js:260
-#: templates/js/translated/table_filters.js:351
+#: templates/js/translated/table_filters.js:266
+#: templates/js/translated/table_filters.js:357
msgid "Batch code"
msgstr ""
-#: templates/js/translated/table_filters.js:271
-#: templates/js/translated/table_filters.js:613
+#: templates/js/translated/table_filters.js:277
+#: templates/js/translated/table_filters.js:635
msgid "Active parts"
msgstr ""
-#: templates/js/translated/table_filters.js:272
+#: templates/js/translated/table_filters.js:278
msgid "Show stock for active parts"
msgstr ""
-#: templates/js/translated/table_filters.js:277
+#: templates/js/translated/table_filters.js:283
msgid "Part is an assembly"
msgstr ""
-#: templates/js/translated/table_filters.js:281
+#: templates/js/translated/table_filters.js:287
msgid "Is allocated"
msgstr ""
-#: templates/js/translated/table_filters.js:282
+#: templates/js/translated/table_filters.js:288
msgid "Item has been allocated"
msgstr ""
-#: templates/js/translated/table_filters.js:287
+#: templates/js/translated/table_filters.js:293
msgid "Stock is available for use"
msgstr ""
-#: templates/js/translated/table_filters.js:292
+#: templates/js/translated/table_filters.js:298
msgid "Include stock in sublocations"
msgstr ""
-#: templates/js/translated/table_filters.js:297
+#: templates/js/translated/table_filters.js:303
msgid "Show stock items which are depleted"
msgstr ""
-#: templates/js/translated/table_filters.js:302
+#: templates/js/translated/table_filters.js:308
msgid "Show items which are in stock"
msgstr ""
-#: templates/js/translated/table_filters.js:306
+#: templates/js/translated/table_filters.js:312
msgid "In Production"
msgstr ""
-#: templates/js/translated/table_filters.js:307
+#: templates/js/translated/table_filters.js:313
msgid "Show items which are in production"
msgstr ""
-#: templates/js/translated/table_filters.js:311
+#: templates/js/translated/table_filters.js:317
msgid "Include Variants"
msgstr ""
-#: templates/js/translated/table_filters.js:312
+#: templates/js/translated/table_filters.js:318
msgid "Include stock items for variant parts"
msgstr ""
-#: templates/js/translated/table_filters.js:316
+#: templates/js/translated/table_filters.js:322
msgid "Installed"
msgstr ""
-#: templates/js/translated/table_filters.js:317
+#: templates/js/translated/table_filters.js:323
msgid "Show stock items which are installed in another item"
msgstr ""
-#: templates/js/translated/table_filters.js:322
+#: templates/js/translated/table_filters.js:328
msgid "Show items which have been assigned to a customer"
msgstr ""
-#: templates/js/translated/table_filters.js:342
-#: templates/js/translated/table_filters.js:343
+#: templates/js/translated/table_filters.js:348
+#: templates/js/translated/table_filters.js:349
msgid "Stock status"
msgstr ""
-#: templates/js/translated/table_filters.js:346
+#: templates/js/translated/table_filters.js:352
msgid "Has batch code"
msgstr ""
-#: templates/js/translated/table_filters.js:354
-msgid "Tracked"
-msgstr ""
-
-#: templates/js/translated/table_filters.js:355
+#: templates/js/translated/table_filters.js:361
msgid "Stock item is tracked by either batch code or serial number"
msgstr ""
-#: templates/js/translated/table_filters.js:360
+#: templates/js/translated/table_filters.js:366
msgid "Has purchase price"
msgstr ""
-#: templates/js/translated/table_filters.js:361
+#: templates/js/translated/table_filters.js:367
msgid "Show stock items which have a purchase price set"
msgstr ""
-#: templates/js/translated/table_filters.js:365
+#: templates/js/translated/table_filters.js:371
msgid "Expiry Date before"
msgstr ""
-#: templates/js/translated/table_filters.js:369
+#: templates/js/translated/table_filters.js:375
msgid "Expiry Date after"
msgstr ""
-#: templates/js/translated/table_filters.js:382
+#: templates/js/translated/table_filters.js:388
msgid "Show stock items which have expired"
msgstr ""
-#: templates/js/translated/table_filters.js:388
+#: templates/js/translated/table_filters.js:394
msgid "Show stock which is close to expiring"
msgstr ""
-#: templates/js/translated/table_filters.js:402
+#: templates/js/translated/table_filters.js:408
msgid "Test Passed"
msgstr ""
-#: templates/js/translated/table_filters.js:406
+#: templates/js/translated/table_filters.js:412
msgid "Include Installed Items"
msgstr ""
-#: templates/js/translated/table_filters.js:445
+#: templates/js/translated/table_filters.js:451
msgid "Build status"
msgstr ""
-#: templates/js/translated/table_filters.js:625
+#: templates/js/translated/table_filters.js:647
msgid "Include parts in subcategories"
msgstr ""
-#: templates/js/translated/table_filters.js:630
+#: templates/js/translated/table_filters.js:652
msgid "Show active parts"
msgstr ""
-#: templates/js/translated/table_filters.js:638
+#: templates/js/translated/table_filters.js:660
msgid "Available stock"
msgstr ""
-#: templates/js/translated/table_filters.js:646
-#: templates/js/translated/table_filters.js:742
+#: templates/js/translated/table_filters.js:668
+#: templates/js/translated/table_filters.js:764
msgid "Has Units"
msgstr ""
-#: templates/js/translated/table_filters.js:647
+#: templates/js/translated/table_filters.js:669
msgid "Part has defined units"
msgstr ""
-#: templates/js/translated/table_filters.js:651
+#: templates/js/translated/table_filters.js:673
msgid "Has IPN"
msgstr ""
-#: templates/js/translated/table_filters.js:652
+#: templates/js/translated/table_filters.js:674
msgid "Part has internal part number"
msgstr ""
-#: templates/js/translated/table_filters.js:656
+#: templates/js/translated/table_filters.js:678
msgid "In stock"
msgstr ""
-#: templates/js/translated/table_filters.js:664
+#: templates/js/translated/table_filters.js:686
msgid "Purchasable"
msgstr ""
-#: templates/js/translated/table_filters.js:676
+#: templates/js/translated/table_filters.js:698
msgid "Has stocktake entries"
msgstr ""
-#: templates/js/translated/table_filters.js:738
+#: templates/js/translated/table_filters.js:760
msgid "Has Choices"
msgstr ""
@@ -12390,51 +12551,51 @@ msgstr ""
msgid "Select File Format"
msgstr ""
-#: templates/js/translated/tables.js:561
+#: templates/js/translated/tables.js:537
msgid "Loading data"
msgstr ""
-#: templates/js/translated/tables.js:564
+#: templates/js/translated/tables.js:540
msgid "rows per page"
msgstr ""
-#: templates/js/translated/tables.js:569
+#: templates/js/translated/tables.js:545
msgid "Showing all rows"
msgstr ""
-#: templates/js/translated/tables.js:571
+#: templates/js/translated/tables.js:547
msgid "Showing"
msgstr ""
-#: templates/js/translated/tables.js:571
+#: templates/js/translated/tables.js:547
msgid "to"
msgstr ""
-#: templates/js/translated/tables.js:571
+#: templates/js/translated/tables.js:547
msgid "of"
msgstr ""
-#: templates/js/translated/tables.js:571
+#: templates/js/translated/tables.js:547
msgid "rows"
msgstr ""
-#: templates/js/translated/tables.js:578
+#: templates/js/translated/tables.js:554
msgid "No matching results"
msgstr ""
-#: templates/js/translated/tables.js:581
+#: templates/js/translated/tables.js:557
msgid "Hide/Show pagination"
msgstr ""
-#: templates/js/translated/tables.js:587
+#: templates/js/translated/tables.js:563
msgid "Toggle"
msgstr ""
-#: templates/js/translated/tables.js:590
+#: templates/js/translated/tables.js:566
msgid "Columns"
msgstr ""
-#: templates/js/translated/tables.js:593
+#: templates/js/translated/tables.js:569
msgid "All"
msgstr ""
@@ -12616,50 +12777,6 @@ msgstr ""
msgid "Email settings not configured"
msgstr ""
-#: templates/stock_table.html:17
-msgid "Barcode Actions"
-msgstr ""
-
-#: templates/stock_table.html:28
-msgid "Stock Options"
-msgstr ""
-
-#: templates/stock_table.html:33
-msgid "Add to selected stock items"
-msgstr ""
-
-#: templates/stock_table.html:34
-msgid "Remove from selected stock items"
-msgstr ""
-
-#: templates/stock_table.html:35
-msgid "Stocktake selected stock items"
-msgstr ""
-
-#: templates/stock_table.html:36
-msgid "Move selected stock items"
-msgstr ""
-
-#: templates/stock_table.html:37
-msgid "Merge selected stock items"
-msgstr ""
-
-#: templates/stock_table.html:37
-msgid "Merge stock"
-msgstr ""
-
-#: templates/stock_table.html:38
-msgid "Order selected items"
-msgstr ""
-
-#: templates/stock_table.html:42
-msgid "Delete selected items"
-msgstr ""
-
-#: templates/stock_table.html:42
-msgid "Delete stock"
-msgstr ""
-
#: templates/yesnolabel.html:4
msgid "Yes"
msgstr ""
@@ -12692,35 +12809,35 @@ msgstr ""
msgid "Important dates"
msgstr ""
-#: users/models.py:230
+#: users/models.py:236
msgid "Permission set"
msgstr ""
-#: users/models.py:238
+#: users/models.py:244
msgid "Group"
msgstr ""
-#: users/models.py:241
+#: users/models.py:247
msgid "View"
msgstr ""
-#: users/models.py:241
+#: users/models.py:247
msgid "Permission to view items"
msgstr ""
-#: users/models.py:243
+#: users/models.py:249
msgid "Permission to add items"
msgstr ""
-#: users/models.py:245
+#: users/models.py:251
msgid "Change"
msgstr ""
-#: users/models.py:245
+#: users/models.py:251
msgid "Permissions to edit items"
msgstr ""
-#: users/models.py:247
+#: users/models.py:253
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 7152c423f6..20a4689eb0 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: 2023-06-09 00:32+0000\n"
-"PO-Revision-Date: 2023-06-09 10:27\n"
+"POT-Creation-Date: 2023-06-20 07:01+0000\n"
+"PO-Revision-Date: 2023-06-20 07:06\n"
"Last-Translator: \n"
"Language-Team: Turkish\n"
"Language: tr_TR\n"
@@ -49,26 +49,26 @@ msgstr "Hata detaylarını admin panelinde bulabilirsiniz"
msgid "Enter date"
msgstr "Tarih giriniz"
-#: InvenTree/fields.py:206 InvenTree/models.py:766 build/serializers.py:427
-#: build/serializers.py:506 build/templates/build/sidebar.html:23
-#: company/models.py:597 company/templates/company/sidebar.html:35
-#: order/models.py:1089 order/templates/order/po_sidebar.html:11
+#: InvenTree/fields.py:206 InvenTree/models.py:766 build/serializers.py:435
+#: build/serializers.py:514 build/templates/build/sidebar.html:21
+#: company/models.py:746 company/templates/company/sidebar.html:37
+#: order/models.py:1102 order/templates/order/po_sidebar.html:11
#: order/templates/order/return_order_sidebar.html:9
#: order/templates/order/so_sidebar.html:17 part/admin.py:41
-#: part/models.py:3005 part/templates/part/part_sidebar.html:63
+#: part/models.py:3039 part/templates/part/part_sidebar.html:63
#: report/templates/report/inventree_build_order_base.html:172
#: stock/admin.py:121 stock/models.py:2160 stock/models.py:2268
-#: stock/serializers.py:342 stock/serializers.py:475 stock/serializers.py:556
-#: stock/serializers.py:839 stock/serializers.py:938 stock/serializers.py:1070
-#: stock/templates/stock/stock_sidebar.html:25
-#: templates/js/translated/barcode.js:143 templates/js/translated/bom.js:1224
-#: templates/js/translated/company.js:1294 templates/js/translated/order.js:347
-#: templates/js/translated/part.js:1054
-#: templates/js/translated/purchase_order.js:2168
-#: templates/js/translated/return_order.js:760
-#: templates/js/translated/sales_order.js:1055
-#: templates/js/translated/sales_order.js:1959
-#: templates/js/translated/stock.js:1460 templates/js/translated/stock.js:2164
+#: stock/serializers.py:408 stock/serializers.py:542 stock/serializers.py:623
+#: stock/serializers.py:681 stock/serializers.py:956 stock/serializers.py:1055
+#: stock/serializers.py:1187 stock/templates/stock/stock_sidebar.html:25
+#: templates/js/translated/barcode.js:143 templates/js/translated/bom.js:1244
+#: templates/js/translated/company.js:1715 templates/js/translated/order.js:347
+#: templates/js/translated/part.js:1053
+#: templates/js/translated/purchase_order.js:2178
+#: templates/js/translated/return_order.js:772
+#: templates/js/translated/sales_order.js:1067
+#: templates/js/translated/sales_order.js:1971
+#: templates/js/translated/stock.js:1459 templates/js/translated/stock.js:2321
msgid "Notes"
msgstr "Notlar"
@@ -81,47 +81,51 @@ msgstr ""
msgid "Provided value does not match required pattern: "
msgstr "Sağlanan değer gerekli kalıpla eşleşmiyor: "
-#: InvenTree/forms.py:145
+#: InvenTree/forms.py:147
msgid "Enter password"
msgstr "Şifrenizi girin"
-#: InvenTree/forms.py:146
+#: InvenTree/forms.py:148
msgid "Enter new password"
msgstr "Lütfen Yeni Parolayı Girin"
-#: InvenTree/forms.py:155
+#: InvenTree/forms.py:157
msgid "Confirm password"
msgstr "Parolayı doğrulayın"
-#: InvenTree/forms.py:156
+#: InvenTree/forms.py:158
msgid "Confirm new password"
msgstr "Yeni parolayı doğrulayın"
-#: InvenTree/forms.py:160
+#: InvenTree/forms.py:162
msgid "Old password"
msgstr "Eski parola"
-#: InvenTree/forms.py:179
+#: InvenTree/forms.py:181
msgid "Email (again)"
msgstr "E-posta (tekrar)"
-#: InvenTree/forms.py:183
+#: InvenTree/forms.py:185
msgid "Email address confirmation"
msgstr "E-posta adresi onayı"
-#: InvenTree/forms.py:204
+#: InvenTree/forms.py:206
msgid "You must type the same email each time."
msgstr "Her seferind eaynı e-posta adresini yazmalısınız."
-#: InvenTree/forms.py:230 InvenTree/forms.py:236
+#: InvenTree/forms.py:237 InvenTree/forms.py:243
msgid "The provided primary email address is not valid."
msgstr "Sağlanan e-posta adresi geçerli değil."
-#: InvenTree/forms.py:242
+#: InvenTree/forms.py:249
msgid "The provided email domain is not approved."
msgstr "Sağlanan e-posta alanı onaylanmadı."
-#: InvenTree/helpers.py:462 order/models.py:442 order/models.py:611
+#: InvenTree/forms.py:345
+msgid "Registration is disabled."
+msgstr ""
+
+#: InvenTree/helpers.py:462 order/models.py:455 order/models.py:624
msgid "Invalid quantity provided"
msgstr "Geçersiz veri sağlandı"
@@ -239,7 +243,7 @@ msgstr "Bozuk dış bağlantı"
#: InvenTree/models.py:486 stock/models.py:2262
#: templates/js/translated/attachment.js:119
-#: templates/js/translated/attachment.js:306
+#: templates/js/translated/attachment.js:316
msgid "Attachment"
msgstr "Ek"
@@ -247,29 +251,30 @@ msgstr "Ek"
msgid "Select file to attach"
msgstr "Eklenecek dosyayı seç"
-#: InvenTree/models.py:493 common/models.py:2695 company/models.py:132
-#: company/models.py:306 company/models.py:584 order/models.py:236
-#: order/models.py:1093 order/models.py:1453 part/admin.py:39
-#: part/models.py:901 part/templates/part/part_scheduling.html:11
+#: InvenTree/models.py:493 common/models.py:2681 company/models.py:128
+#: company/models.py:381 company/models.py:455 company/models.py:733
+#: order/models.py:240 order/models.py:1106 order/models.py:1466
+#: part/admin.py:39 part/models.py:902
+#: part/templates/part/part_scheduling.html:11
#: report/templates/report/inventree_build_order_base.html:164
-#: stock/admin.py:120 templates/js/translated/company.js:977
-#: templates/js/translated/company.js:1283 templates/js/translated/order.js:351
-#: templates/js/translated/part.js:2316
-#: templates/js/translated/purchase_order.js:2008
-#: templates/js/translated/purchase_order.js:2172
-#: templates/js/translated/return_order.js:764
-#: templates/js/translated/sales_order.js:1044
-#: templates/js/translated/sales_order.js:1964
+#: stock/admin.py:120 templates/js/translated/company.js:1350
+#: templates/js/translated/company.js:1704 templates/js/translated/order.js:351
+#: templates/js/translated/part.js:2392
+#: templates/js/translated/purchase_order.js:2018
+#: templates/js/translated/purchase_order.js:2182
+#: templates/js/translated/return_order.js:776
+#: templates/js/translated/sales_order.js:1056
+#: templates/js/translated/sales_order.js:1976
msgid "Link"
msgstr "Bağlantı"
-#: InvenTree/models.py:494 build/models.py:291 part/models.py:902
+#: InvenTree/models.py:494 build/models.py:295 part/models.py:903
#: stock/models.py:735
msgid "Link to external URL"
msgstr "Harici URL'ye bağlantı"
#: InvenTree/models.py:497 templates/js/translated/attachment.js:120
-#: templates/js/translated/attachment.js:321
+#: templates/js/translated/attachment.js:331
msgid "Comment"
msgstr "Yorum"
@@ -277,13 +282,13 @@ msgstr "Yorum"
msgid "File comment"
msgstr "Dosya yorumu"
-#: InvenTree/models.py:503 InvenTree/models.py:504 common/models.py:2154
-#: common/models.py:2155 common/models.py:2368 common/models.py:2369
-#: common/models.py:2625 common/models.py:2626 part/models.py:3013
-#: part/models.py:3101 part/models.py:3180 part/models.py:3200
-#: plugin/models.py:217 plugin/models.py:218
+#: InvenTree/models.py:503 InvenTree/models.py:504 common/models.py:2140
+#: common/models.py:2141 common/models.py:2354 common/models.py:2355
+#: common/models.py:2611 common/models.py:2612 part/models.py:3047
+#: part/models.py:3135 part/models.py:3214 part/models.py:3234
+#: plugin/models.py:218 plugin/models.py:219
#: report/templates/report/inventree_test_report_base.html:105
-#: templates/js/translated/stock.js:2773
+#: templates/js/translated/stock.js:2904
msgid "User"
msgstr "Kullanıcı"
@@ -324,53 +329,54 @@ msgstr ""
msgid "Invalid choice"
msgstr "Geçersiz seçim"
-#: InvenTree/models.py:648 InvenTree/models.py:649 common/models.py:2354
-#: company/models.py:390 label/models.py:103 part/models.py:847
-#: part/models.py:3400 plugin/models.py:41 report/models.py:160
+#: InvenTree/models.py:648 InvenTree/models.py:649 common/models.py:2340
+#: company/models.py:539 label/models.py:111 part/models.py:848
+#: part/models.py:3434 plugin/models.py:42 report/models.py:160
#: templates/InvenTree/settings/mixins/urls.html:13
#: templates/InvenTree/settings/notifications.html:17
-#: templates/InvenTree/settings/plugin.html:80
+#: templates/InvenTree/settings/plugin.html:74
#: templates/InvenTree/settings/plugin_settings.html:22
-#: templates/js/translated/company.js:658
-#: templates/js/translated/company.js:706
-#: templates/js/translated/company.js:871
-#: templates/js/translated/company.js:1071 templates/js/translated/part.js:1160
-#: templates/js/translated/part.js:1447 templates/js/translated/part.js:1583
-#: templates/js/translated/part.js:2699 templates/js/translated/stock.js:2464
+#: templates/js/translated/company.js:665
+#: templates/js/translated/company.js:713
+#: templates/js/translated/company.js:940
+#: templates/js/translated/company.js:1196
+#: templates/js/translated/company.js:1444 templates/js/translated/part.js:1159
+#: templates/js/translated/part.js:1446 templates/js/translated/part.js:1582
+#: templates/js/translated/part.js:2684 templates/js/translated/stock.js:2595
msgid "Name"
msgstr "Adı"
-#: InvenTree/models.py:655 build/models.py:164
+#: InvenTree/models.py:655 build/models.py:168
#: build/templates/build/detail.html:24 common/models.py:111
-#: company/models.py:312 company/models.py:590
+#: company/models.py:461 company/models.py:739
#: company/templates/company/company_base.html:72
#: company/templates/company/manufacturer_part.html:75
-#: company/templates/company/supplier_part.html:108 label/models.py:110
-#: order/models.py:232 order/models.py:1117 part/admin.py:194 part/admin.py:276
-#: part/models.py:869 part/models.py:3416 part/templates/part/category.html:81
+#: company/templates/company/supplier_part.html:108 label/models.py:118
+#: order/models.py:232 order/models.py:1130 part/admin.py:194 part/admin.py:276
+#: part/models.py:870 part/models.py:3450 part/templates/part/category.html:81
#: part/templates/part/part_base.html:172
#: part/templates/part/part_scheduling.html:12 report/models.py:173
-#: report/models.py:587 report/models.py:631
+#: report/models.py:589 report/models.py:633
#: report/templates/report/inventree_build_order_base.html:117
#: stock/admin.py:41 stock/templates/stock/location.html:123
#: templates/InvenTree/settings/notifications.html:19
#: templates/InvenTree/settings/plugin_settings.html:27
#: templates/InvenTree/settings/settings_staff_js.html:75
-#: templates/js/translated/bom.js:632 templates/js/translated/bom.js:933
-#: templates/js/translated/build.js:2857 templates/js/translated/company.js:510
-#: templates/js/translated/company.js:988
-#: templates/js/translated/company.js:1251 templates/js/translated/order.js:298
-#: templates/js/translated/part.js:1212 templates/js/translated/part.js:1456
-#: templates/js/translated/part.js:1594 templates/js/translated/part.js:1933
-#: templates/js/translated/part.js:2247 templates/js/translated/part.js:2735
-#: templates/js/translated/part.js:2826
-#: templates/js/translated/purchase_order.js:1666
-#: templates/js/translated/purchase_order.js:1812
-#: templates/js/translated/purchase_order.js:1990
-#: templates/js/translated/return_order.js:302
-#: templates/js/translated/sales_order.js:790
-#: templates/js/translated/stock.js:1439 templates/js/translated/stock.js:1817
-#: templates/js/translated/stock.js:2496 templates/js/translated/stock.js:2568
+#: templates/js/translated/bom.js:633 templates/js/translated/bom.js:951
+#: templates/js/translated/build.js:2062 templates/js/translated/company.js:517
+#: templates/js/translated/company.js:1361
+#: templates/js/translated/company.js:1672 templates/js/translated/index.js:114
+#: templates/js/translated/order.js:298 templates/js/translated/part.js:1211
+#: templates/js/translated/part.js:1455 templates/js/translated/part.js:1593
+#: templates/js/translated/part.js:1932 templates/js/translated/part.js:2323
+#: templates/js/translated/part.js:2720 templates/js/translated/part.js:2811
+#: templates/js/translated/purchase_order.js:1681
+#: templates/js/translated/purchase_order.js:1827
+#: templates/js/translated/purchase_order.js:2000
+#: templates/js/translated/return_order.js:314
+#: templates/js/translated/sales_order.js:802
+#: templates/js/translated/stock.js:1438 templates/js/translated/stock.js:1974
+#: templates/js/translated/stock.js:2627 templates/js/translated/stock.js:2699
msgid "Description"
msgstr "Açıklama"
@@ -383,7 +389,7 @@ msgid "parent"
msgstr "üst"
#: InvenTree/models.py:671 InvenTree/models.py:672
-#: templates/js/translated/part.js:2744 templates/js/translated/stock.js:2505
+#: templates/js/translated/part.js:2729 templates/js/translated/stock.js:2636
msgid "Path"
msgstr ""
@@ -419,12 +425,12 @@ msgstr ""
msgid "An error has been logged by the server."
msgstr ""
-#: InvenTree/serializers.py:60 part/models.py:3897
+#: InvenTree/serializers.py:60 part/models.py:3941
msgid "Must be a valid number"
msgstr "Geçerli bir numara olmalı"
-#: InvenTree/serializers.py:90 company/models.py:154
-#: company/templates/company/company_base.html:107 part/models.py:2852
+#: InvenTree/serializers.py:90 company/models.py:150
+#: company/templates/company/company_base.html:107 part/models.py:2886
#: templates/InvenTree/settings/settings_staff_js.html:44
#: templates/currency_data.html:5
msgid "Currency"
@@ -497,130 +503,130 @@ msgstr ""
msgid "Downloading images from remote URL is not enabled"
msgstr ""
-#: InvenTree/settings.py:714
+#: InvenTree/settings.py:741
msgid "Czech"
msgstr ""
-#: InvenTree/settings.py:715
+#: InvenTree/settings.py:742
msgid "Danish"
msgstr ""
-#: InvenTree/settings.py:716
+#: InvenTree/settings.py:743
msgid "German"
msgstr "Almanca"
-#: InvenTree/settings.py:717
+#: InvenTree/settings.py:744
msgid "Greek"
msgstr "Yunanca"
-#: InvenTree/settings.py:718
+#: InvenTree/settings.py:745
msgid "English"
msgstr "İngilizce"
-#: InvenTree/settings.py:719
+#: InvenTree/settings.py:746
msgid "Spanish"
msgstr "İspanyolca"
-#: InvenTree/settings.py:720
+#: InvenTree/settings.py:747
msgid "Spanish (Mexican)"
msgstr "İspanyolca(Meksika)"
-#: InvenTree/settings.py:721
+#: InvenTree/settings.py:748
msgid "Farsi / Persian"
msgstr ""
-#: InvenTree/settings.py:722
+#: InvenTree/settings.py:749
msgid "Finnish"
msgstr ""
-#: InvenTree/settings.py:723
+#: InvenTree/settings.py:750
msgid "French"
msgstr "Fransızca"
-#: InvenTree/settings.py:724
+#: InvenTree/settings.py:751
msgid "Hebrew"
msgstr "İbranice"
-#: InvenTree/settings.py:725
+#: InvenTree/settings.py:752
msgid "Hungarian"
msgstr "Macarca"
-#: InvenTree/settings.py:726
+#: InvenTree/settings.py:753
msgid "Italian"
msgstr "İtalyanca"
-#: InvenTree/settings.py:727
+#: InvenTree/settings.py:754
msgid "Japanese"
msgstr "Japonca"
-#: InvenTree/settings.py:728
+#: InvenTree/settings.py:755
msgid "Korean"
msgstr "Korece"
-#: InvenTree/settings.py:729
+#: InvenTree/settings.py:756
msgid "Dutch"
msgstr "Flemenkçe"
-#: InvenTree/settings.py:730
+#: InvenTree/settings.py:757
msgid "Norwegian"
msgstr "Norveççe"
-#: InvenTree/settings.py:731
+#: InvenTree/settings.py:758
msgid "Polish"
msgstr "Polonyaca"
-#: InvenTree/settings.py:732
+#: InvenTree/settings.py:759
msgid "Portuguese"
msgstr ""
-#: InvenTree/settings.py:733
+#: InvenTree/settings.py:760
msgid "Portuguese (Brazilian)"
msgstr ""
-#: InvenTree/settings.py:734
+#: InvenTree/settings.py:761
msgid "Russian"
msgstr "Rusça"
-#: InvenTree/settings.py:735
+#: InvenTree/settings.py:762
msgid "Slovenian"
msgstr ""
-#: InvenTree/settings.py:736
+#: InvenTree/settings.py:763
msgid "Swedish"
msgstr "İsveççe"
-#: InvenTree/settings.py:737
+#: InvenTree/settings.py:764
msgid "Thai"
msgstr "Tay dili"
-#: InvenTree/settings.py:738
+#: InvenTree/settings.py:765
msgid "Turkish"
msgstr "Türkçe"
-#: InvenTree/settings.py:739
+#: InvenTree/settings.py:766
msgid "Vietnamese"
msgstr "Vietnamca"
-#: InvenTree/settings.py:740
+#: InvenTree/settings.py:767
msgid "Chinese"
msgstr "Çince"
-#: InvenTree/status.py:61 part/serializers.py:878
+#: InvenTree/status.py:68 part/serializers.py:940
msgid "Background worker check failed"
msgstr "Arka plan çalışanı kontrolü başarısız oldu"
-#: InvenTree/status.py:65
+#: InvenTree/status.py:72
msgid "Email backend not configured"
msgstr "E-posta arka ucu yapılandırılmadı"
-#: InvenTree/status.py:68
+#: InvenTree/status.py:75
msgid "InvenTree system health checks failed"
msgstr "InvenTree sistem sağlık kontrolü başarısız"
#: InvenTree/status_codes.py:12 InvenTree/status_codes.py:40
#: InvenTree/status_codes.py:148 InvenTree/status_codes.py:167
#: InvenTree/status_codes.py:188 generic/states/tests.py:16
-#: templates/js/translated/table_filters.js:511
+#: templates/js/translated/table_filters.js:533
msgid "Pending"
msgstr "Bekliyor"
@@ -630,7 +636,7 @@ msgstr "Sipariş verildi"
#: InvenTree/status_codes.py:14 InvenTree/status_codes.py:151
#: InvenTree/status_codes.py:172 generic/states/tests.py:18
-#: order/templates/order/order_base.html:162
+#: order/templates/order/order_base.html:158
#: order/templates/order/sales_order_base.html:162
msgid "Complete"
msgstr "Tamamlandı"
@@ -654,10 +660,10 @@ msgstr "İade"
msgid "In Progress"
msgstr ""
-#: InvenTree/status_codes.py:42 order/models.py:1332
-#: templates/js/translated/sales_order.js:1509
-#: templates/js/translated/sales_order.js:1630
-#: templates/js/translated/sales_order.js:1934
+#: InvenTree/status_codes.py:42 order/models.py:1345
+#: templates/js/translated/sales_order.js:1521
+#: templates/js/translated/sales_order.js:1642
+#: templates/js/translated/sales_order.js:1946
msgid "Shipped"
msgstr "Sevk edildi"
@@ -689,7 +695,7 @@ msgstr ""
msgid "Legacy stock tracking entry"
msgstr "Eski stok izleme girişi"
-#: InvenTree/status_codes.py:93 templates/js/translated/stock.js:511
+#: InvenTree/status_codes.py:93 templates/js/translated/stock.js:510
msgid "Stock item created"
msgstr "Stok kalemi oluşturuldu"
@@ -745,7 +751,7 @@ msgstr "Üst ögeden ayır"
msgid "Split child item"
msgstr "Alt ögeyi ayır"
-#: InvenTree/status_codes.py:120 templates/js/translated/stock.js:2243
+#: InvenTree/status_codes.py:120 templates/js/translated/stock.js:1769
msgid "Merged stock items"
msgstr "Stok parçalarını birleştir"
@@ -765,7 +771,7 @@ msgstr "Yapım emri çıktısı tamamlandı"
msgid "Build order output rejected"
msgstr ""
-#: InvenTree/status_codes.py:129 templates/js/translated/stock.js:1676
+#: InvenTree/status_codes.py:129 templates/js/translated/stock.js:1675
msgid "Consumed by build order"
msgstr ""
@@ -781,7 +787,7 @@ msgstr ""
msgid "Returned against Return Order"
msgstr ""
-#: InvenTree/status_codes.py:141 templates/js/translated/table_filters.js:321
+#: InvenTree/status_codes.py:141 templates/js/translated/table_filters.js:327
msgid "Sent to customer"
msgstr "Müşteriye gönderildi"
@@ -849,83 +855,111 @@ msgstr "Parola alanları eşleşmelidir"
msgid "Wrong password provided"
msgstr ""
-#: InvenTree/views.py:651 templates/navbar.html:157
+#: InvenTree/views.py:653 templates/navbar.html:157
msgid "System Information"
msgstr "Sistem Bilgisi"
-#: InvenTree/views.py:658 templates/navbar.html:168
+#: InvenTree/views.py:660 templates/navbar.html:168
msgid "About InvenTree"
msgstr "InvenTree Hakkında"
-#: build/api.py:222
+#: build/api.py:242
msgid "Build must be cancelled before it can be deleted"
msgstr ""
-#: build/models.py:69 build/templates/build/build_base.html:9
+#: build/api.py:286 part/models.py:3833 templates/js/translated/bom.js:985
+#: templates/js/translated/bom.js:1025 templates/js/translated/build.js:2449
+#: templates/js/translated/table_filters.js:166
+#: templates/js/translated/table_filters.js:518
+msgid "Consumable"
+msgstr ""
+
+#: build/api.py:287 part/models.py:3827 part/templates/part/upload_bom.html:58
+#: templates/js/translated/bom.js:989 templates/js/translated/bom.js:1016
+#: templates/js/translated/build.js:2458
+#: templates/js/translated/table_filters.js:162
+#: templates/js/translated/table_filters.js:191
+#: templates/js/translated/table_filters.js:522
+msgid "Optional"
+msgstr ""
+
+#: build/api.py:288 templates/js/translated/table_filters.js:360
+#: templates/js/translated/table_filters.js:514
+msgid "Tracked"
+msgstr ""
+
+#: build/api.py:290 part/admin.py:64 templates/js/translated/build.js:1670
+#: templates/js/translated/build.js:2549
+#: templates/js/translated/sales_order.js:1918
+#: templates/js/translated/table_filters.js:506
+msgid "Allocated"
+msgstr ""
+
+#: build/models.py:73 build/templates/build/build_base.html:9
#: build/templates/build/build_base.html:27
#: report/templates/report/inventree_build_order_base.html:105
#: templates/email/build_order_completed.html:16
#: templates/email/overdue_build_order.html:15
-#: templates/js/translated/build.js:945 templates/js/translated/stock.js:2629
+#: templates/js/translated/build.js:953 templates/js/translated/stock.js:2760
msgid "Build Order"
msgstr "Yapım İşi Emri"
-#: build/models.py:70 build/templates/build/build_base.html:13
+#: build/models.py:74 build/templates/build/build_base.html:13
#: build/templates/build/index.html:8 build/templates/build/index.html:12
-#: order/templates/order/sales_order_detail.html:119
+#: order/templates/order/sales_order_detail.html:111
#: order/templates/order/so_sidebar.html:13
-#: part/templates/part/part_sidebar.html:22 templates/InvenTree/index.html:244
+#: part/templates/part/part_sidebar.html:22 templates/InvenTree/index.html:196
#: templates/InvenTree/search.html:141
#: templates/InvenTree/settings/sidebar.html:53
-#: templates/js/translated/search.js:228 users/models.py:42
+#: templates/js/translated/search.js:186 users/models.py:42
msgid "Build Orders"
msgstr "Yapım İşi Emirleri"
-#: build/models.py:111
+#: build/models.py:115
msgid "Invalid choice for parent build"
msgstr ""
-#: build/models.py:155
+#: build/models.py:159
msgid "Build Order Reference"
msgstr "Yapım İşi Emri Referansı"
-#: build/models.py:156 order/models.py:359 order/models.py:765
-#: order/models.py:1087 order/models.py:1724 part/admin.py:278
-#: part/models.py:3798 part/templates/part/upload_bom.html:54
+#: build/models.py:160 order/models.py:372 order/models.py:778
+#: order/models.py:1100 order/models.py:1737 part/admin.py:278
+#: part/models.py:3842 part/templates/part/upload_bom.html:54
#: report/templates/report/inventree_bill_of_materials_report.html:139
#: report/templates/report/inventree_po_report_base.html:28
#: report/templates/report/inventree_return_order_report_base.html:26
#: report/templates/report/inventree_so_report_base.html:28
-#: templates/js/translated/bom.js:769 templates/js/translated/bom.js:943
-#: templates/js/translated/build.js:2098 templates/js/translated/order.js:291
+#: templates/js/translated/bom.js:770 templates/js/translated/bom.js:961
+#: templates/js/translated/build.js:2441 templates/js/translated/order.js:291
#: templates/js/translated/pricing.js:386
-#: templates/js/translated/purchase_order.js:2033
-#: templates/js/translated/return_order.js:713
-#: templates/js/translated/sales_order.js:1798
+#: templates/js/translated/purchase_order.js:2043
+#: templates/js/translated/return_order.js:725
+#: templates/js/translated/sales_order.js:1810
msgid "Reference"
msgstr "Referans"
-#: build/models.py:167
+#: build/models.py:171
msgid "Brief description of the build (optional)"
msgstr ""
-#: build/models.py:175 build/templates/build/build_base.html:183
+#: build/models.py:179 build/templates/build/build_base.html:184
#: build/templates/build/detail.html:87
msgid "Parent Build"
msgstr "Üst Yapım İşi"
-#: build/models.py:176
+#: build/models.py:180
msgid "BuildOrder to which this build is allocated"
msgstr "Bu yapım işinin tahsis edildiği yapım işi emri"
-#: build/models.py:181 build/templates/build/build_base.html:98
-#: build/templates/build/detail.html:29 company/models.py:775
-#: order/models.py:1195 order/models.py:1311 order/models.py:1312
-#: part/models.py:391 part/models.py:2865 part/models.py:2979
-#: part/models.py:3119 part/models.py:3138 part/models.py:3157
-#: part/models.py:3178 part/models.py:3270 part/models.py:3555
-#: part/models.py:3663 part/models.py:3763 part/models.py:4077
-#: part/serializers.py:842 part/serializers.py:1245
+#: build/models.py:185 build/templates/build/build_base.html:98
+#: build/templates/build/detail.html:29 company/models.py:924
+#: order/models.py:1208 order/models.py:1324 order/models.py:1325
+#: part/models.py:392 part/models.py:2899 part/models.py:3013
+#: part/models.py:3153 part/models.py:3172 part/models.py:3191
+#: part/models.py:3212 part/models.py:3304 part/models.py:3589
+#: part/models.py:3712 part/models.py:3807 part/models.py:4121
+#: part/serializers.py:904 part/serializers.py:1307
#: part/templates/part/part_app_base.html:8
#: part/templates/part/part_pricing.html:12
#: part/templates/part/upload_bom.html:52
@@ -935,266 +969,229 @@ msgstr "Bu yapım işinin tahsis edildiği yapım işi emri"
#: report/templates/report/inventree_po_report_base.html:27
#: report/templates/report/inventree_return_order_report_base.html:24
#: report/templates/report/inventree_so_report_base.html:27
-#: stock/serializers.py:156 stock/serializers.py:509
+#: stock/serializers.py:205 stock/serializers.py:576
#: templates/InvenTree/search.html:82
#: templates/email/build_order_completed.html:17
#: templates/email/build_order_required_stock.html:17
#: templates/email/low_stock_notification.html:15
#: templates/email/overdue_build_order.html:16
-#: templates/js/translated/barcode.js:529 templates/js/translated/bom.js:631
-#: templates/js/translated/bom.js:768 templates/js/translated/bom.js:887
-#: templates/js/translated/build.js:1403 templates/js/translated/build.js:1965
-#: templates/js/translated/build.js:2464 templates/js/translated/build.js:2868
-#: templates/js/translated/company.js:337
-#: templates/js/translated/company.js:822
-#: templates/js/translated/company.js:929
-#: templates/js/translated/company.js:1169 templates/js/translated/part.js:1918
-#: templates/js/translated/part.js:1990 templates/js/translated/part.js:2216
-#: templates/js/translated/pricing.js:369
-#: templates/js/translated/purchase_order.js:746
-#: templates/js/translated/purchase_order.js:1274
-#: templates/js/translated/purchase_order.js:1811
-#: templates/js/translated/purchase_order.js:1975
-#: templates/js/translated/return_order.js:527
-#: templates/js/translated/return_order.js:694
-#: templates/js/translated/sales_order.js:285
-#: templates/js/translated/sales_order.js:1185
-#: templates/js/translated/sales_order.js:1584
-#: templates/js/translated/sales_order.js:1782
-#: templates/js/translated/stock.js:643 templates/js/translated/stock.js:809
-#: templates/js/translated/stock.js:1021 templates/js/translated/stock.js:1773
-#: templates/js/translated/stock.js:2594 templates/js/translated/stock.js:2831
-#: templates/js/translated/stock.js:2968
+#: templates/js/translated/barcode.js:529 templates/js/translated/bom.js:632
+#: templates/js/translated/bom.js:769 templates/js/translated/bom.js:905
+#: templates/js/translated/build.js:1289 templates/js/translated/build.js:1669
+#: templates/js/translated/build.js:2085 templates/js/translated/build.js:2261
+#: templates/js/translated/company.js:347
+#: templates/js/translated/company.js:1147
+#: templates/js/translated/company.js:1302
+#: templates/js/translated/company.js:1590 templates/js/translated/index.js:104
+#: templates/js/translated/part.js:1917 templates/js/translated/part.js:1989
+#: templates/js/translated/part.js:2292 templates/js/translated/pricing.js:369
+#: templates/js/translated/purchase_order.js:757
+#: templates/js/translated/purchase_order.js:1289
+#: templates/js/translated/purchase_order.js:1826
+#: templates/js/translated/purchase_order.js:1985
+#: templates/js/translated/return_order.js:539
+#: templates/js/translated/return_order.js:706
+#: templates/js/translated/sales_order.js:297
+#: templates/js/translated/sales_order.js:1197
+#: templates/js/translated/sales_order.js:1596
+#: templates/js/translated/sales_order.js:1794
+#: templates/js/translated/stock.js:642 templates/js/translated/stock.js:808
+#: templates/js/translated/stock.js:1020 templates/js/translated/stock.js:1913
+#: templates/js/translated/stock.js:2725 templates/js/translated/stock.js:2958
+#: templates/js/translated/stock.js:3095
msgid "Part"
msgstr "Parça"
-#: build/models.py:189
+#: build/models.py:193
msgid "Select part to build"
msgstr "Yapım işi için parça seçin"
-#: build/models.py:194
+#: build/models.py:198
msgid "Sales Order Reference"
msgstr "Satış Emri Referansı"
-#: build/models.py:198
+#: build/models.py:202
msgid "SalesOrder to which this build is allocated"
msgstr "Bu yapım işinin tahsis edildiği satış emri"
-#: build/models.py:203 build/serializers.py:942
-#: templates/js/translated/build.js:2452
-#: templates/js/translated/sales_order.js:1173
+#: build/models.py:207 build/serializers.py:946
+#: templates/js/translated/build.js:1657
+#: templates/js/translated/sales_order.js:1185
msgid "Source Location"
msgstr "Kaynak Konum"
-#: build/models.py:207
+#: build/models.py:211
msgid "Select location to take stock from for this build (leave blank to take from any stock location)"
msgstr "Bu yapım işi için stok alınacak konumu seçin (her hangi bir stok konumundan alınması için boş bırakın)"
-#: build/models.py:212
+#: build/models.py:216
msgid "Destination Location"
msgstr "Hedef Konum"
-#: build/models.py:216
+#: build/models.py:220
msgid "Select location where the completed items will be stored"
msgstr "Tamamlanmış ögelerin saklanacağı konumu seçiniz"
-#: build/models.py:220
+#: build/models.py:224
msgid "Build Quantity"
msgstr "Yapım İşi Miktarı"
-#: build/models.py:223
+#: build/models.py:227
msgid "Number of stock items to build"
msgstr "Yapım işi stok kalemlerinin sayısı"
-#: build/models.py:227
+#: build/models.py:231
msgid "Completed items"
msgstr "Tamamlanmış ögeler"
-#: build/models.py:229
+#: build/models.py:233
msgid "Number of stock items which have been completed"
msgstr "Tamamlanan stok kalemlerinin sayısı"
-#: build/models.py:233
+#: build/models.py:237
msgid "Build Status"
msgstr "Yapım İşi Durumu"
-#: build/models.py:237
+#: build/models.py:241
msgid "Build status code"
msgstr "Yapım işi durum kodu"
-#: build/models.py:246 build/serializers.py:269 order/serializers.py:506
-#: stock/models.py:739 templates/js/translated/purchase_order.js:1099
+#: build/models.py:250 build/serializers.py:277 order/serializers.py:512
+#: stock/models.py:739 templates/js/translated/purchase_order.js:1114
msgid "Batch Code"
msgstr "Sıra numarası"
-#: build/models.py:250 build/serializers.py:270
+#: build/models.py:254 build/serializers.py:278
msgid "Batch code for this build output"
msgstr "Yapım işi çıktısı için sıra numarası"
-#: build/models.py:253 order/models.py:244 part/models.py:1038
+#: build/models.py:257 order/models.py:248 part/models.py:1039
#: part/templates/part/part_base.html:312
-#: templates/js/translated/return_order.js:327
-#: templates/js/translated/sales_order.js:815
+#: templates/js/translated/return_order.js:339
+#: templates/js/translated/sales_order.js:827
msgid "Creation Date"
msgstr "Oluşturulma tarihi"
-#: build/models.py:257
+#: build/models.py:261
msgid "Target completion date"
msgstr "Hedef tamamlama tarihi"
-#: build/models.py:258
+#: build/models.py:262
msgid "Target date for build completion. Build will be overdue after this date."
msgstr "Yapım işinin tamamlanması için hedef tarih. Bu tarihten sonra yapım işi gecikmiş olacak."
-#: build/models.py:261 order/models.py:409 order/models.py:1767
-#: templates/js/translated/build.js:2953
+#: build/models.py:265 order/models.py:422 order/models.py:1780
+#: templates/js/translated/build.js:2170
msgid "Completion Date"
msgstr "Tamamlama tarihi"
-#: build/models.py:267
+#: build/models.py:271
msgid "completed by"
msgstr "tamamlayan"
-#: build/models.py:275 templates/js/translated/build.js:2913
+#: build/models.py:279 templates/js/translated/build.js:2130
msgid "Issued by"
msgstr "Veren"
-#: build/models.py:276
+#: build/models.py:280
msgid "User who issued this build order"
msgstr "Bu yapım işi emrini veren kullanıcı"
-#: build/models.py:284 build/templates/build/build_base.html:204
-#: build/templates/build/detail.html:122 order/models.py:258
-#: order/templates/order/order_base.html:214
-#: order/templates/order/return_order_base.html:182
-#: order/templates/order/sales_order_base.html:222 part/models.py:1042
+#: build/models.py:288 build/templates/build/build_base.html:205
+#: build/templates/build/detail.html:122 order/models.py:262
+#: order/templates/order/order_base.html:217
+#: order/templates/order/return_order_base.html:189
+#: order/templates/order/sales_order_base.html:229 part/models.py:1043
#: part/templates/part/part_base.html:392
#: report/templates/report/inventree_build_order_base.html:158
-#: templates/js/translated/build.js:2925
-#: templates/js/translated/purchase_order.js:1723
-#: templates/js/translated/return_order.js:347
-#: templates/js/translated/table_filters.js:461
+#: templates/js/translated/build.js:2142
+#: templates/js/translated/purchase_order.js:1738
+#: templates/js/translated/return_order.js:359
+#: templates/js/translated/table_filters.js:467
msgid "Responsible"
msgstr "Sorumlu"
-#: build/models.py:285
+#: build/models.py:289
msgid "User or group responsible for this build order"
msgstr ""
-#: build/models.py:290 build/templates/build/detail.html:108
+#: build/models.py:294 build/templates/build/detail.html:108
#: company/templates/company/manufacturer_part.html:107
#: company/templates/company/supplier_part.html:195
-#: order/templates/order/order_base.html:171
+#: order/templates/order/order_base.html:167
#: order/templates/order/return_order_base.html:146
#: order/templates/order/sales_order_base.html:181
#: part/templates/part/part_base.html:385 stock/models.py:733
#: stock/templates/stock/item_base.html:201
+#: templates/js/translated/company.js:1050
msgid "External Link"
msgstr "Harici Bağlantı"
-#: build/models.py:295
+#: build/models.py:299
msgid "Build Priority"
msgstr ""
-#: build/models.py:298
+#: build/models.py:302
msgid "Priority of this build order"
msgstr ""
-#: build/models.py:536
+#: build/models.py:309 common/models.py:104 order/admin.py:17
+#: order/models.py:237 templates/InvenTree/settings/settings_staff_js.html:70
+#: templates/js/translated/build.js:2067
+#: templates/js/translated/purchase_order.js:1685
+#: templates/js/translated/return_order.js:318
+#: templates/js/translated/sales_order.js:806
+#: templates/js/translated/table_filters.js:24
+#: templates/project_code_data.html:6
+msgid "Project Code"
+msgstr ""
+
+#: build/models.py:310
+msgid "Project code for this build order"
+msgstr ""
+
+#: build/models.py:545
#, python-brace-format
msgid "Build order {build} has been completed"
msgstr ""
-#: build/models.py:542
+#: build/models.py:551
msgid "A build order has been completed"
msgstr ""
-#: build/models.py:744 build/models.py:811
+#: build/models.py:753 build/models.py:831
msgid "No build output specified"
msgstr "Yapım işi çıktısı belirtilmedi"
-#: build/models.py:747
+#: build/models.py:756
msgid "Build output is already completed"
msgstr "Yapım işi çıktısı zaten tamamlanmış"
-#: build/models.py:750
+#: build/models.py:759
msgid "Build output does not match Build Order"
msgstr "Yapım işi çıktısı, yapım işi emri ile eşleşmiyor"
-#: build/models.py:815 build/serializers.py:212 build/serializers.py:251
-#: build/serializers.py:811 order/models.py:440 order/serializers.py:379
-#: order/serializers.py:501 part/serializers.py:1087 part/serializers.py:1408
-#: stock/models.py:593 stock/models.py:1387 stock/serializers.py:315
+#: build/models.py:835 build/serializers.py:220 build/serializers.py:259
+#: build/serializers.py:819 order/models.py:453 order/serializers.py:385
+#: order/serializers.py:507 part/serializers.py:1149 part/serializers.py:1470
+#: stock/models.py:593 stock/models.py:1387 stock/serializers.py:381
msgid "Quantity must be greater than zero"
msgstr ""
-#: build/models.py:820 build/serializers.py:217
+#: build/models.py:840 build/serializers.py:225
msgid "Quantity cannot be greater than the output quantity"
msgstr ""
-#: build/models.py:1272
-msgid "Build item must specify a build output, as master part is marked as trackable"
-msgstr "Ana parça izlenebilir olarak işaretlendiğinden, yapım işi çıktısı için bir yapım işi ögesi belirtmelidir"
-
-#: build/models.py:1281
-#, python-brace-format
-msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})"
+#: build/models.py:1260
+msgid "Build object"
msgstr ""
-#: build/models.py:1291 order/models.py:1601
-msgid "Stock item is over-allocated"
-msgstr "Stok kalemi fazladan tahsis edilmiş"
-
-#: build/models.py:1297 order/models.py:1604
-msgid "Allocation quantity must be greater than zero"
-msgstr "Tahsis edilen miktar sıfırdan büyük olmalıdır"
-
-#: build/models.py:1303
-msgid "Quantity must be 1 for serialized stock"
-msgstr "Seri numaralı stok için miktar bir olmalı"
-
-#: build/models.py:1360
-msgid "Selected stock item not found in BOM"
-msgstr ""
-
-#: build/models.py:1438 stock/templates/stock/item_base.html:170
-#: templates/InvenTree/search.html:139 templates/js/translated/build.js:2841
-#: templates/navbar.html:38
-msgid "Build"
-msgstr "Yapım İşi"
-
-#: build/models.py:1439
-msgid "Build to allocate parts"
-msgstr "Yapım işi için tahsis edilen parçalar"
-
-#: build/models.py:1455 build/serializers.py:791 order/serializers.py:1059
-#: order/serializers.py:1080 stock/serializers.py:413 stock/serializers.py:770
-#: stock/serializers.py:896 stock/templates/stock/item_base.html:10
-#: stock/templates/stock/item_base.html:23
-#: stock/templates/stock/item_base.html:195
-#: templates/js/translated/build.js:955 templates/js/translated/build.js:960
-#: templates/js/translated/build.js:2466 templates/js/translated/build.js:3038
-#: templates/js/translated/sales_order.js:286
-#: templates/js/translated/sales_order.js:1186
-#: templates/js/translated/sales_order.js:1485
-#: templates/js/translated/sales_order.js:1490
-#: templates/js/translated/sales_order.js:1591
-#: templates/js/translated/sales_order.js:1678
-#: templates/js/translated/stock.js:644 templates/js/translated/stock.js:810
-#: templates/js/translated/stock.js:2714
-msgid "Stock Item"
-msgstr "Stok Kalemi"
-
-#: build/models.py:1456
-msgid "Source stock item"
-msgstr "Kaynak stok kalemi"
-
-#: build/models.py:1468 build/serializers.py:198 build/serializers.py:236
-#: build/templates/build/build_base.html:103
-#: build/templates/build/detail.html:34 common/models.py:2176
-#: order/models.py:1073 order/models.py:1645 order/serializers.py:1233
+#: build/models.py:1274 build/models.py:1556 build/serializers.py:206
+#: build/serializers.py:244 build/templates/build/build_base.html:103
+#: build/templates/build/detail.html:34 common/models.py:2162
+#: order/models.py:1086 order/models.py:1658 order/serializers.py:1239
#: order/templates/order/order_wizard/match_parts.html:30 part/admin.py:277
-#: part/forms.py:47 part/models.py:2992 part/models.py:3779
+#: part/forms.py:47 part/models.py:3026 part/models.py:3823
#: part/templates/part/part_pricing.html:16
#: part/templates/part/upload_bom.html:53
#: report/templates/report/inventree_bill_of_materials_report.html:138
@@ -1203,315 +1200,367 @@ msgstr "Kaynak stok kalemi"
#: report/templates/report/inventree_so_report_base.html:29
#: report/templates/report/inventree_test_report_base.html:90
#: report/templates/report/inventree_test_report_base.html:170
-#: stock/admin.py:103 stock/serializers.py:306
+#: stock/admin.py:103 stock/serializers.py:372
#: stock/templates/stock/item_base.html:288
#: stock/templates/stock/item_base.html:296
#: stock/templates/stock/item_base.html:343
#: templates/email/build_order_completed.html:18
-#: templates/js/translated/barcode.js:531 templates/js/translated/bom.js:770
-#: templates/js/translated/bom.js:951 templates/js/translated/build.js:504
-#: templates/js/translated/build.js:716 templates/js/translated/build.js:982
-#: templates/js/translated/build.js:1425 templates/js/translated/build.js:1991
-#: templates/js/translated/build.js:2467
-#: templates/js/translated/company.js:1428
-#: templates/js/translated/model_renderers.js:207
-#: templates/js/translated/order.js:304 templates/js/translated/part.js:935
-#: templates/js/translated/part.js:1784 templates/js/translated/part.js:3263
+#: templates/js/translated/barcode.js:531 templates/js/translated/bom.js:771
+#: templates/js/translated/bom.js:969 templates/js/translated/build.js:510
+#: templates/js/translated/build.js:722 templates/js/translated/build.js:1308
+#: templates/js/translated/build.js:1672 templates/js/translated/build.js:2283
+#: templates/js/translated/company.js:1849
+#: templates/js/translated/model_renderers.js:221
+#: templates/js/translated/order.js:304 templates/js/translated/part.js:934
+#: templates/js/translated/part.js:1783 templates/js/translated/part.js:3248
#: templates/js/translated/pricing.js:381
#: templates/js/translated/pricing.js:474
#: templates/js/translated/pricing.js:522
#: templates/js/translated/pricing.js:616
-#: templates/js/translated/purchase_order.js:749
-#: templates/js/translated/purchase_order.js:1815
-#: templates/js/translated/purchase_order.js:2039
-#: templates/js/translated/sales_order.js:302
-#: templates/js/translated/sales_order.js:1187
-#: templates/js/translated/sales_order.js:1504
-#: templates/js/translated/sales_order.js:1594
-#: templates/js/translated/sales_order.js:1684
-#: templates/js/translated/sales_order.js:1804
-#: templates/js/translated/stock.js:531 templates/js/translated/stock.js:669
-#: templates/js/translated/stock.js:840 templates/js/translated/stock.js:2758
-#: templates/js/translated/stock.js:2843
+#: templates/js/translated/purchase_order.js:760
+#: templates/js/translated/purchase_order.js:1830
+#: templates/js/translated/purchase_order.js:2049
+#: templates/js/translated/sales_order.js:314
+#: templates/js/translated/sales_order.js:1199
+#: templates/js/translated/sales_order.js:1516
+#: templates/js/translated/sales_order.js:1606
+#: templates/js/translated/sales_order.js:1696
+#: templates/js/translated/sales_order.js:1816
+#: templates/js/translated/stock.js:530 templates/js/translated/stock.js:668
+#: templates/js/translated/stock.js:839 templates/js/translated/stock.js:2889
+#: templates/js/translated/stock.js:2970
msgid "Quantity"
msgstr "Miktar"
-#: build/models.py:1469
+#: build/models.py:1275
+msgid "Required quantity for build order"
+msgstr ""
+
+#: build/models.py:1357
+msgid "Build item must specify a build output, as master part is marked as trackable"
+msgstr "Ana parça izlenebilir olarak işaretlendiğinden, yapım işi çıktısı için bir yapım işi ögesi belirtmelidir"
+
+#: build/models.py:1366
+#, python-brace-format
+msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})"
+msgstr ""
+
+#: build/models.py:1376 order/models.py:1614
+msgid "Stock item is over-allocated"
+msgstr "Stok kalemi fazladan tahsis edilmiş"
+
+#: build/models.py:1382 order/models.py:1617
+msgid "Allocation quantity must be greater than zero"
+msgstr "Tahsis edilen miktar sıfırdan büyük olmalıdır"
+
+#: build/models.py:1388
+msgid "Quantity must be 1 for serialized stock"
+msgstr "Seri numaralı stok için miktar bir olmalı"
+
+#: build/models.py:1449
+msgid "Selected stock item does not match BOM line"
+msgstr ""
+
+#: build/models.py:1543 build/serializers.py:799 order/serializers.py:1065
+#: order/serializers.py:1086 stock/serializers.py:479 stock/serializers.py:887
+#: stock/serializers.py:1013 stock/templates/stock/item_base.html:10
+#: stock/templates/stock/item_base.html:23
+#: stock/templates/stock/item_base.html:195
+#: templates/js/translated/build.js:1671
+#: templates/js/translated/sales_order.js:298
+#: templates/js/translated/sales_order.js:1198
+#: templates/js/translated/sales_order.js:1497
+#: templates/js/translated/sales_order.js:1502
+#: templates/js/translated/sales_order.js:1603
+#: templates/js/translated/sales_order.js:1690
+#: templates/js/translated/stock.js:643 templates/js/translated/stock.js:809
+#: templates/js/translated/stock.js:2845
+msgid "Stock Item"
+msgstr "Stok Kalemi"
+
+#: build/models.py:1544
+msgid "Source stock item"
+msgstr "Kaynak stok kalemi"
+
+#: build/models.py:1557
msgid "Stock quantity to allocate to build"
msgstr "Yapım işi için tahsis edilen stok miktarı"
-#: build/models.py:1477
+#: build/models.py:1565
msgid "Install into"
msgstr "Kurulduğu yer"
-#: build/models.py:1478
+#: build/models.py:1566
msgid "Destination stock item"
msgstr "Hedef stok kalemi"
-#: build/serializers.py:148 build/serializers.py:820
-#: templates/js/translated/build.js:1413
+#: build/serializers.py:156 build/serializers.py:828
+#: templates/js/translated/build.js:1299
msgid "Build Output"
msgstr ""
-#: build/serializers.py:160
+#: build/serializers.py:168
msgid "Build output does not match the parent build"
msgstr ""
-#: build/serializers.py:164
+#: build/serializers.py:172
msgid "Output part does not match BuildOrder part"
msgstr ""
-#: build/serializers.py:168
+#: build/serializers.py:176
msgid "This build output has already been completed"
msgstr ""
-#: build/serializers.py:179
+#: build/serializers.py:187
msgid "This build output is not fully allocated"
msgstr ""
-#: build/serializers.py:199 build/serializers.py:237
+#: build/serializers.py:207 build/serializers.py:245
msgid "Enter quantity for build output"
msgstr "Yapım işi çıktısı için miktarını girin"
-#: build/serializers.py:258
+#: build/serializers.py:266
msgid "Integer quantity required for trackable parts"
msgstr ""
-#: build/serializers.py:261
+#: build/serializers.py:269
msgid "Integer quantity required, as the bill of materials contains trackable parts"
msgstr ""
-#: build/serializers.py:276 order/serializers.py:514 order/serializers.py:1237
-#: stock/serializers.py:324 templates/js/translated/purchase_order.js:1123
-#: templates/js/translated/stock.js:334 templates/js/translated/stock.js:532
+#: build/serializers.py:284 order/serializers.py:520 order/serializers.py:1243
+#: stock/serializers.py:390 templates/js/translated/purchase_order.js:1138
+#: templates/js/translated/stock.js:333 templates/js/translated/stock.js:531
msgid "Serial Numbers"
msgstr "Seri Numaraları"
-#: build/serializers.py:277
+#: build/serializers.py:285
msgid "Enter serial numbers for build outputs"
msgstr "Yapım işi çıktısı için seri numaraları girin"
-#: build/serializers.py:290
+#: build/serializers.py:298
msgid "Auto Allocate Serial Numbers"
msgstr ""
-#: build/serializers.py:291
+#: build/serializers.py:299
msgid "Automatically allocate required items with matching serial numbers"
msgstr ""
-#: build/serializers.py:326 stock/api.py:670
+#: build/serializers.py:334 stock/api.py:707
msgid "The following serial numbers already exist or are invalid"
msgstr ""
-#: build/serializers.py:377 build/serializers.py:439 build/serializers.py:518
+#: build/serializers.py:385 build/serializers.py:447 build/serializers.py:526
msgid "A list of build outputs must be provided"
msgstr ""
-#: build/serializers.py:415 build/serializers.py:488 order/serializers.py:487
-#: order/serializers.py:606 order/serializers.py:1588 part/serializers.py:854
-#: stock/serializers.py:335 stock/serializers.py:470 stock/serializers.py:551
-#: stock/serializers.py:931 stock/serializers.py:1173
+#: build/serializers.py:423 build/serializers.py:496 order/serializers.py:493
+#: order/serializers.py:612 order/serializers.py:1594 part/serializers.py:916
+#: stock/serializers.py:401 stock/serializers.py:537 stock/serializers.py:618
+#: stock/serializers.py:1048 stock/serializers.py:1290
#: stock/templates/stock/item_base.html:390
#: templates/js/translated/barcode.js:530
-#: templates/js/translated/barcode.js:778 templates/js/translated/build.js:967
-#: templates/js/translated/build.js:2006
-#: templates/js/translated/purchase_order.js:1148
-#: templates/js/translated/purchase_order.js:1238
-#: templates/js/translated/sales_order.js:1497
-#: templates/js/translated/sales_order.js:1605
-#: templates/js/translated/sales_order.js:1613
-#: templates/js/translated/sales_order.js:1692
-#: templates/js/translated/stock.js:645 templates/js/translated/stock.js:811
-#: templates/js/translated/stock.js:1023 templates/js/translated/stock.js:1937
-#: templates/js/translated/stock.js:2608
+#: templates/js/translated/barcode.js:778 templates/js/translated/build.js:980
+#: templates/js/translated/build.js:2298
+#: templates/js/translated/purchase_order.js:1163
+#: templates/js/translated/purchase_order.js:1253
+#: templates/js/translated/sales_order.js:1509
+#: templates/js/translated/sales_order.js:1617
+#: templates/js/translated/sales_order.js:1625
+#: templates/js/translated/sales_order.js:1704
+#: templates/js/translated/stock.js:644 templates/js/translated/stock.js:810
+#: templates/js/translated/stock.js:1022 templates/js/translated/stock.js:2094
+#: templates/js/translated/stock.js:2739
msgid "Location"
msgstr "Konum"
-#: build/serializers.py:416
+#: build/serializers.py:424
msgid "Stock location for scrapped outputs"
msgstr ""
-#: build/serializers.py:422
+#: build/serializers.py:430
msgid "Discard Allocations"
msgstr ""
-#: build/serializers.py:423
+#: build/serializers.py:431
msgid "Discard any stock allocations for scrapped outputs"
msgstr ""
-#: build/serializers.py:428
+#: build/serializers.py:436
msgid "Reason for scrapping build output(s)"
msgstr ""
-#: build/serializers.py:489
+#: build/serializers.py:497
msgid "Location for completed build outputs"
msgstr ""
-#: build/serializers.py:495 build/templates/build/build_base.html:151
-#: build/templates/build/detail.html:62 order/models.py:791
-#: order/models.py:1750 order/serializers.py:524 stock/admin.py:106
-#: stock/templates/stock/item_base.html:423
-#: templates/js/translated/barcode.js:252 templates/js/translated/build.js:2897
-#: templates/js/translated/purchase_order.js:1278
-#: templates/js/translated/purchase_order.js:1682
-#: templates/js/translated/return_order.js:319
-#: templates/js/translated/sales_order.js:807
-#: templates/js/translated/stock.js:1912 templates/js/translated/stock.js:2732
-#: templates/js/translated/stock.js:2859
+#: build/serializers.py:503 build/templates/build/build_base.html:152
+#: build/templates/build/detail.html:62 order/models.py:804
+#: order/models.py:1763 order/serializers.py:530 stock/admin.py:106
+#: stock/serializers.py:677 stock/templates/stock/item_base.html:423
+#: templates/js/translated/barcode.js:252 templates/js/translated/build.js:2114
+#: templates/js/translated/purchase_order.js:1293
+#: templates/js/translated/purchase_order.js:1697
+#: templates/js/translated/return_order.js:331
+#: templates/js/translated/sales_order.js:819
+#: templates/js/translated/stock.js:2069 templates/js/translated/stock.js:2863
+#: templates/js/translated/stock.js:2986
msgid "Status"
msgstr "Durum"
-#: build/serializers.py:501
+#: build/serializers.py:509
msgid "Accept Incomplete Allocation"
msgstr ""
-#: build/serializers.py:502
+#: build/serializers.py:510
msgid "Complete outputs if stock has not been fully allocated"
msgstr ""
-#: build/serializers.py:571
+#: build/serializers.py:579
msgid "Remove Allocated Stock"
msgstr ""
-#: build/serializers.py:572
+#: build/serializers.py:580
msgid "Subtract any stock which has already been allocated to this build"
msgstr ""
-#: build/serializers.py:578
+#: build/serializers.py:586
msgid "Remove Incomplete Outputs"
msgstr ""
-#: build/serializers.py:579
+#: build/serializers.py:587
msgid "Delete any build outputs which have not been completed"
msgstr ""
-#: build/serializers.py:606
+#: build/serializers.py:614
msgid "Not permitted"
msgstr ""
-#: build/serializers.py:607
+#: build/serializers.py:615
msgid "Accept as consumed by this build order"
msgstr ""
-#: build/serializers.py:608
+#: build/serializers.py:616
msgid "Deallocate before completing this build order"
msgstr ""
-#: build/serializers.py:631
+#: build/serializers.py:639
msgid "Overallocated Stock"
msgstr ""
-#: build/serializers.py:633
+#: build/serializers.py:641
msgid "How do you want to handle extra stock items assigned to the build order"
msgstr ""
-#: build/serializers.py:643
+#: build/serializers.py:651
msgid "Some stock items have been overallocated"
msgstr ""
-#: build/serializers.py:648
+#: build/serializers.py:656
msgid "Accept Unallocated"
msgstr ""
-#: build/serializers.py:649
+#: build/serializers.py:657
msgid "Accept that stock items have not been fully allocated to this build order"
msgstr ""
-#: build/serializers.py:659 templates/js/translated/build.js:295
+#: build/serializers.py:667 templates/js/translated/build.js:304
msgid "Required stock has not been fully allocated"
msgstr "Gerekli stok tamamen tahsis edilemedi"
-#: build/serializers.py:664 order/serializers.py:261 order/serializers.py:1127
+#: build/serializers.py:672 order/serializers.py:267 order/serializers.py:1133
msgid "Accept Incomplete"
msgstr ""
-#: build/serializers.py:665
+#: build/serializers.py:673
msgid "Accept that the required number of build outputs have not been completed"
msgstr ""
-#: build/serializers.py:675 templates/js/translated/build.js:299
+#: build/serializers.py:683 templates/js/translated/build.js:308
msgid "Required build quantity has not been completed"
msgstr "Gerekli yapım işi miktarı tamamlanmadı"
-#: build/serializers.py:684 templates/js/translated/build.js:283
+#: build/serializers.py:692 templates/js/translated/build.js:292
msgid "Build order has incomplete outputs"
msgstr ""
-#: build/serializers.py:714 build/serializers.py:768 part/models.py:3686
-#: part/models.py:4069
-msgid "BOM Item"
-msgstr ""
-
-#: build/serializers.py:724
-msgid "Build output"
+#: build/serializers.py:722
+msgid "Build Line"
msgstr ""
#: build/serializers.py:732
+msgid "Build output"
+msgstr ""
+
+#: build/serializers.py:740
msgid "Build output must point to the same build"
msgstr ""
-#: build/serializers.py:782
+#: build/serializers.py:776
+msgid "Build Line Item"
+msgstr ""
+
+#: build/serializers.py:790
msgid "bom_item.part must point to the same part as the build order"
msgstr ""
-#: build/serializers.py:797 stock/serializers.py:783
+#: build/serializers.py:805 stock/serializers.py:900
msgid "Item must be in stock"
msgstr ""
-#: build/serializers.py:846 order/serializers.py:1117
+#: build/serializers.py:853 order/serializers.py:1123
#, python-brace-format
msgid "Available quantity ({q}) exceeded"
msgstr ""
-#: build/serializers.py:852
+#: build/serializers.py:859
msgid "Build output must be specified for allocation of tracked parts"
msgstr ""
-#: build/serializers.py:859
+#: build/serializers.py:866
msgid "Build output cannot be specified for allocation of untracked parts"
msgstr ""
-#: build/serializers.py:864
+#: build/serializers.py:871
msgid "This stock item has already been allocated to this build output"
msgstr ""
-#: build/serializers.py:887 order/serializers.py:1401
+#: build/serializers.py:894 order/serializers.py:1407
msgid "Allocation items must be provided"
msgstr ""
-#: build/serializers.py:943
+#: build/serializers.py:947
msgid "Stock location where parts are to be sourced (leave blank to take from any location)"
msgstr ""
-#: build/serializers.py:951
+#: build/serializers.py:955
msgid "Exclude Location"
msgstr ""
-#: build/serializers.py:952
+#: build/serializers.py:956
msgid "Exclude stock items from this selected location"
msgstr ""
-#: build/serializers.py:957
+#: build/serializers.py:961
msgid "Interchangeable Stock"
msgstr ""
-#: build/serializers.py:958
+#: build/serializers.py:962
msgid "Stock items in multiple locations can be used interchangeably"
msgstr ""
-#: build/serializers.py:963
+#: build/serializers.py:967
msgid "Substitute Stock"
msgstr ""
-#: build/serializers.py:964
+#: build/serializers.py:968
msgid "Allow allocation of substitute parts"
msgstr ""
-#: build/serializers.py:969
+#: build/serializers.py:973
msgid "Optional Items"
msgstr ""
-#: build/serializers.py:970
+#: build/serializers.py:974
msgid "Allocate optional BOM items to build order"
msgstr ""
@@ -1540,6 +1589,7 @@ msgstr ""
#: part/templates/part/part_base.html:43
#: stock/templates/stock/item_base.html:41
#: stock/templates/stock/location.html:54
+#: templates/js/translated/filters.js:336
msgid "Barcode actions"
msgstr "Barkod işlemleri"
@@ -1618,69 +1668,67 @@ msgstr "Tamamlanmış Yapım İşi"
msgid "Build Description"
msgstr ""
-#: build/templates/build/build_base.html:117
+#: build/templates/build/build_base.html:118
msgid "No build outputs have been created for this build order"
msgstr ""
-#: build/templates/build/build_base.html:124
+#: build/templates/build/build_base.html:125
msgid "Build Order is ready to mark as completed"
msgstr "Yapım işi tamamlandı olarak işaretlenmeye hazır"
-#: build/templates/build/build_base.html:129
+#: build/templates/build/build_base.html:130
msgid "Build Order cannot be completed as outstanding outputs remain"
msgstr "Bekleyen çıktılar kaldığı için yapım işi emri tamamlanamıyor"
-#: build/templates/build/build_base.html:134
+#: build/templates/build/build_base.html:135
msgid "Required build quantity has not yet been completed"
msgstr "Gerekli yapım işi miktarı henüz tamamlanmadı"
-#: build/templates/build/build_base.html:139
+#: build/templates/build/build_base.html:140
msgid "Stock has not been fully allocated to this Build Order"
msgstr "Stok, yapım işi emri için tamamen tahsis edilemedi"
-#: build/templates/build/build_base.html:160
-#: build/templates/build/detail.html:138 order/models.py:240
-#: order/models.py:1099 order/templates/order/order_base.html:190
+#: build/templates/build/build_base.html:161
+#: build/templates/build/detail.html:138 order/models.py:244
+#: order/models.py:1112 order/templates/order/order_base.html:186
#: order/templates/order/return_order_base.html:165
#: order/templates/order/sales_order_base.html:193
#: report/templates/report/inventree_build_order_base.html:125
-#: templates/js/translated/build.js:2945 templates/js/translated/part.js:1802
-#: templates/js/translated/purchase_order.js:1699
-#: templates/js/translated/purchase_order.js:2115
-#: templates/js/translated/return_order.js:335
-#: templates/js/translated/return_order.js:735
-#: templates/js/translated/sales_order.js:823
-#: templates/js/translated/sales_order.js:1847
+#: templates/js/translated/build.js:2162 templates/js/translated/part.js:1801
+#: templates/js/translated/purchase_order.js:1714
+#: templates/js/translated/purchase_order.js:2125
+#: templates/js/translated/return_order.js:347
+#: templates/js/translated/return_order.js:747
+#: templates/js/translated/sales_order.js:835
+#: templates/js/translated/sales_order.js:1859
msgid "Target Date"
msgstr "Hedeflenen tarih"
-#: build/templates/build/build_base.html:165
+#: build/templates/build/build_base.html:166
#, python-format
msgid "This build was due on %(target)s"
msgstr "Bu yapım işinin %(target)s tarihinde süresi doluyor"
-#: build/templates/build/build_base.html:165
-#: build/templates/build/build_base.html:222
-#: order/templates/order/order_base.html:126
+#: build/templates/build/build_base.html:166
+#: build/templates/build/build_base.html:223
+#: order/templates/order/order_base.html:122
#: order/templates/order/return_order_base.html:118
#: order/templates/order/sales_order_base.html:123
-#: templates/js/translated/table_filters.js:68
-#: templates/js/translated/table_filters.js:454
-#: templates/js/translated/table_filters.js:539
-#: templates/js/translated/table_filters.js:580
+#: templates/js/translated/table_filters.js:74
+#: templates/js/translated/table_filters.js:460
+#: templates/js/translated/table_filters.js:561
+#: templates/js/translated/table_filters.js:602
msgid "Overdue"
msgstr "Vadesi geçmiş"
-#: build/templates/build/build_base.html:177
-#: build/templates/build/detail.html:67 build/templates/build/detail.html:149
-#: order/templates/order/sales_order_base.html:203
-#: templates/js/translated/table_filters.js:602
-msgid "Completed"
-msgstr "Tamamlandı"
+#: build/templates/build/build_base.html:178
+#: build/templates/build/detail.html:67 build/templates/build/sidebar.html:13
+msgid "Completed Outputs"
+msgstr ""
-#: build/templates/build/build_base.html:190
-#: build/templates/build/detail.html:101 order/api.py:1454 order/models.py:1304
-#: order/models.py:1403 order/models.py:1551
+#: build/templates/build/build_base.html:191
+#: build/templates/build/detail.html:101 order/api.py:1454 order/models.py:1317
+#: order/models.py:1416 order/models.py:1564
#: order/templates/order/sales_order_base.html:9
#: order/templates/order/sales_order_base.html:28
#: report/templates/report/inventree_build_order_base.html:135
@@ -1688,32 +1736,32 @@ msgstr "Tamamlandı"
#: stock/templates/stock/item_base.html:370
#: templates/email/overdue_sales_order.html:15
#: templates/js/translated/pricing.js:915
-#: templates/js/translated/sales_order.js:757
-#: templates/js/translated/sales_order.js:980
-#: templates/js/translated/stock.js:2661
+#: templates/js/translated/sales_order.js:769
+#: templates/js/translated/sales_order.js:992
+#: templates/js/translated/stock.js:2792
msgid "Sales Order"
msgstr "Sipariş Emri"
-#: build/templates/build/build_base.html:197
+#: build/templates/build/build_base.html:198
#: build/templates/build/detail.html:115
#: report/templates/report/inventree_build_order_base.html:152
msgid "Issued By"
msgstr "Veren"
-#: build/templates/build/build_base.html:211
-#: build/templates/build/detail.html:94 templates/js/translated/build.js:2862
+#: build/templates/build/build_base.html:212
+#: build/templates/build/detail.html:94 templates/js/translated/build.js:2079
msgid "Priority"
msgstr ""
-#: build/templates/build/build_base.html:273
+#: build/templates/build/build_base.html:274
msgid "Delete Build Order"
msgstr "Yapım İşi Emrini Sil"
-#: build/templates/build/build_base.html:283
+#: build/templates/build/build_base.html:284
msgid "Build Order QR Code"
msgstr ""
-#: build/templates/build/build_base.html:295
+#: build/templates/build/build_base.html:296
msgid "Link Barcode to Build Order"
msgstr ""
@@ -1729,8 +1777,8 @@ msgstr "Stok Kaynağı"
msgid "Stock can be taken from any available location."
msgstr "Stok herhangi bir konumdan alınabilir."
-#: build/templates/build/detail.html:49 order/models.py:1222
-#: templates/js/translated/purchase_order.js:2157
+#: build/templates/build/detail.html:49 order/models.py:1235
+#: templates/js/translated/purchase_order.js:2167
msgid "Destination"
msgstr "Hedef"
@@ -1744,21 +1792,21 @@ msgstr ""
#: build/templates/build/detail.html:80 stock/admin.py:105
#: stock/templates/stock/item_base.html:163
-#: templates/js/translated/build.js:1432
-#: templates/js/translated/model_renderers.js:212
-#: templates/js/translated/purchase_order.js:1244
-#: templates/js/translated/stock.js:1093 templates/js/translated/stock.js:1926
-#: templates/js/translated/stock.js:2866
-#: templates/js/translated/table_filters.js:259
-#: templates/js/translated/table_filters.js:350
+#: templates/js/translated/build.js:1319
+#: templates/js/translated/model_renderers.js:226
+#: templates/js/translated/purchase_order.js:1259
+#: templates/js/translated/stock.js:1092 templates/js/translated/stock.js:2083
+#: templates/js/translated/stock.js:2993
+#: templates/js/translated/table_filters.js:265
+#: templates/js/translated/table_filters.js:356
msgid "Batch"
msgstr "Toplu"
#: build/templates/build/detail.html:133
-#: order/templates/order/order_base.html:177
+#: order/templates/order/order_base.html:173
#: order/templates/order/return_order_base.html:152
#: order/templates/order/sales_order_base.html:187
-#: templates/js/translated/build.js:2905
+#: templates/js/translated/build.js:2122
msgid "Created"
msgstr "Oluşturuldu"
@@ -1766,147 +1814,106 @@ msgstr "Oluşturuldu"
msgid "No target date set"
msgstr "Hedef tarih ayarlanmadı"
+#: build/templates/build/detail.html:149
+#: order/templates/order/sales_order_base.html:203
+#: templates/js/translated/table_filters.js:624
+msgid "Completed"
+msgstr "Tamamlandı"
+
#: build/templates/build/detail.html:153
msgid "Build not complete"
msgstr "Yapım İşi tamamlanmadı"
-#: build/templates/build/detail.html:164 build/templates/build/sidebar.html:19
+#: build/templates/build/detail.html:164 build/templates/build/sidebar.html:17
msgid "Child Build Orders"
msgstr "Alt Yapım İşi Emrileri"
-#: build/templates/build/detail.html:179
+#: build/templates/build/detail.html:177
msgid "Allocate Stock to Build"
msgstr "Yapım İşi için Stok Tahsis Et"
-#: build/templates/build/detail.html:183 templates/js/translated/build.js:2276
-msgid "Unallocate stock"
-msgstr "Stok tahsisini kaldır"
+#: build/templates/build/detail.html:181
+msgid "Deallocate stock"
+msgstr ""
+
+#: build/templates/build/detail.html:182
+msgid "Deallocate Stock"
+msgstr ""
#: build/templates/build/detail.html:184
-msgid "Unallocate Stock"
-msgstr "Stok Tahsisini Kaldır"
-
-#: build/templates/build/detail.html:186
msgid "Automatically allocate stock to build"
msgstr ""
-#: build/templates/build/detail.html:187
+#: build/templates/build/detail.html:185
msgid "Auto Allocate"
msgstr ""
-#: build/templates/build/detail.html:189
+#: build/templates/build/detail.html:187
msgid "Manually allocate stock to build"
msgstr ""
-#: build/templates/build/detail.html:190 build/templates/build/sidebar.html:8
+#: build/templates/build/detail.html:188 build/templates/build/sidebar.html:8
msgid "Allocate Stock"
msgstr "Stok Tahsis Et"
-#: build/templates/build/detail.html:193
+#: build/templates/build/detail.html:191
msgid "Order required parts"
msgstr "Gerekli parçaları sipariş edin"
-#: build/templates/build/detail.html:194
-#: company/templates/company/detail.html:38
-#: company/templates/company/detail.html:86
-#: part/templates/part/category.html:184
-#: templates/js/translated/purchase_order.js:789
+#: build/templates/build/detail.html:192
+#: templates/js/translated/purchase_order.js:800
msgid "Order Parts"
msgstr "Parça Siparişi"
-#: build/templates/build/detail.html:206
-msgid "Untracked stock has been fully allocated for this Build Order"
-msgstr "Takip edilmeyen stok yapım işi emri için tamamen tahsis edildi"
-
#: build/templates/build/detail.html:210
-msgid "Untracked stock has not been fully allocated for this Build Order"
-msgstr "Takip edilmeyen stok yapım işi emri için tamamen tahsis edilemedi"
-
-#: build/templates/build/detail.html:217
-msgid "Allocate selected items"
-msgstr ""
-
-#: build/templates/build/detail.html:227
-msgid "This Build Order does not have any associated untracked BOM items"
-msgstr "Bu yapım işi emri, herhangi bir takip edilmeyen malzeme listesi öğesine sahip değil"
-
-#: build/templates/build/detail.html:236
msgid "Incomplete Build Outputs"
msgstr "Tamamlanmamış Yapım İşi Çıktıları"
-#: build/templates/build/detail.html:240
+#: build/templates/build/detail.html:214
msgid "Create new build output"
msgstr "Yeni yapım işi çıktısı oluştur"
-#: build/templates/build/detail.html:241
+#: build/templates/build/detail.html:215
msgid "New Build Output"
msgstr ""
-#: build/templates/build/detail.html:255
-msgid "Output Actions"
-msgstr ""
-
-#: build/templates/build/detail.html:260
-msgid "Complete selected build outputs"
-msgstr ""
-
-#: build/templates/build/detail.html:261
-msgid "Complete outputs"
-msgstr ""
-
-#: build/templates/build/detail.html:265
-msgid "Scrap selected build outputs"
-msgstr ""
-
-#: build/templates/build/detail.html:266
-msgid "Scrap outputs"
-msgstr ""
-
-#: build/templates/build/detail.html:270
-msgid "Delete selected build outputs"
-msgstr ""
-
-#: build/templates/build/detail.html:271
-msgid "Delete outputs"
-msgstr ""
-
-#: build/templates/build/detail.html:288 build/templates/build/sidebar.html:11
+#: build/templates/build/detail.html:232 build/templates/build/sidebar.html:15
msgid "Consumed Stock"
msgstr ""
-#: build/templates/build/detail.html:300
+#: build/templates/build/detail.html:244
msgid "Completed Build Outputs"
msgstr "Tamamlanmış Yapım İşi Çıktıları"
-#: build/templates/build/detail.html:312 build/templates/build/sidebar.html:21
-#: company/templates/company/detail.html:261
-#: company/templates/company/manufacturer_part.html:151
+#: build/templates/build/detail.html:256 build/templates/build/sidebar.html:19
+#: company/templates/company/detail.html:229
+#: company/templates/company/manufacturer_part.html:141
#: company/templates/company/manufacturer_part_sidebar.html:9
-#: company/templates/company/sidebar.html:37
+#: company/templates/company/sidebar.html:39
#: order/templates/order/po_sidebar.html:9
-#: order/templates/order/purchase_order_detail.html:102
-#: order/templates/order/return_order_detail.html:74
+#: order/templates/order/purchase_order_detail.html:84
+#: order/templates/order/return_order_detail.html:70
#: order/templates/order/return_order_sidebar.html:7
-#: order/templates/order/sales_order_detail.html:134
-#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:234
-#: part/templates/part/part_sidebar.html:61 stock/templates/stock/item.html:117
+#: order/templates/order/sales_order_detail.html:124
+#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:217
+#: part/templates/part/part_sidebar.html:61 stock/templates/stock/item.html:109
#: stock/templates/stock/stock_sidebar.html:23
msgid "Attachments"
msgstr "Ekler"
-#: build/templates/build/detail.html:327
+#: build/templates/build/detail.html:271
msgid "Build Notes"
msgstr "Yapım İşi Notları"
-#: build/templates/build/detail.html:502
+#: build/templates/build/detail.html:425
msgid "Allocation Complete"
msgstr ""
-#: build/templates/build/detail.html:503
-msgid "All untracked stock items have been allocated"
+#: build/templates/build/detail.html:426
+msgid "All lines have been fully allocated"
msgstr ""
-#: build/templates/build/index.html:18 part/templates/part/detail.html:340
+#: build/templates/build/index.html:18 part/templates/part/detail.html:319
msgid "New Build Order"
msgstr "Yeni Yapım İşi Emri"
@@ -1914,14 +1921,10 @@ msgstr "Yeni Yapım İşi Emri"
msgid "Build Order Details"
msgstr ""
-#: build/templates/build/sidebar.html:14
+#: build/templates/build/sidebar.html:10
msgid "Incomplete Outputs"
msgstr "Tamamlanmamış Çıktılar"
-#: build/templates/build/sidebar.html:17
-msgid "Completed Outputs"
-msgstr ""
-
#: common/files.py:63
#, python-brace-format
msgid "Unsupported file format: {fmt}"
@@ -1968,16 +1971,6 @@ msgstr ""
msgid "Timestamp of last update"
msgstr ""
-#: common/models.py:104 order/admin.py:17 order/models.py:234
-#: templates/InvenTree/settings/settings_staff_js.html:70
-#: templates/js/translated/purchase_order.js:1670
-#: templates/js/translated/return_order.js:306
-#: templates/js/translated/sales_order.js:794
-#: templates/js/translated/table_filters.js:24
-#: templates/project_code_data.html:6
-msgid "Project Code"
-msgstr ""
-
#: common/models.py:105
msgid "Unique project code"
msgstr ""
@@ -2261,9 +2254,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:1162 part/admin.py:55 part/models.py:3560
-#: report/models.py:166 templates/js/translated/table_filters.js:109
-#: templates/js/translated/table_filters.js:680
+#: common/models.py:1162 part/admin.py:55 part/models.py:3594
+#: report/models.py:166 templates/js/translated/table_filters.js:115
+#: templates/js/translated/table_filters.js:702
msgid "Template"
msgstr "Şablon"
@@ -2271,10 +2264,10 @@ msgstr "Şablon"
msgid "Parts are templates by default"
msgstr "Parçaları varsayılan olan şablondur"
-#: common/models.py:1169 part/admin.py:51 part/admin.py:283 part/models.py:996
-#: templates/js/translated/bom.js:1598
-#: templates/js/translated/table_filters.js:276
-#: templates/js/translated/table_filters.js:634
+#: common/models.py:1169 part/admin.py:51 part/admin.py:283 part/models.py:997
+#: templates/js/translated/bom.js:1618
+#: templates/js/translated/table_filters.js:282
+#: templates/js/translated/table_filters.js:656
msgid "Assembly"
msgstr "Montaj"
@@ -2282,8 +2275,8 @@ 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:1176 part/admin.py:52 part/models.py:1002
-#: templates/js/translated/table_filters.js:642
+#: common/models.py:1176 part/admin.py:52 part/models.py:1003
+#: templates/js/translated/table_filters.js:664
msgid "Component"
msgstr "Bileşen"
@@ -2291,7 +2284,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:1183 part/admin.py:53 part/models.py:1013
+#: common/models.py:1183 part/admin.py:53 part/models.py:1014
msgid "Purchaseable"
msgstr "Satın Alınabilir"
@@ -2299,8 +2292,8 @@ msgstr "Satın Alınabilir"
msgid "Parts are purchaseable by default"
msgstr "Parçalar varsayılan olarak satın alınabilir"
-#: common/models.py:1190 part/admin.py:54 part/models.py:1018
-#: templates/js/translated/table_filters.js:668
+#: common/models.py:1190 part/admin.py:54 part/models.py:1019
+#: templates/js/translated/table_filters.js:690
msgid "Salable"
msgstr "Satılabilir"
@@ -2308,10 +2301,10 @@ msgstr "Satılabilir"
msgid "Parts are salable by default"
msgstr "Parçalar varsayılan olarak satılabilir"
-#: common/models.py:1197 part/admin.py:56 part/models.py:1008
-#: templates/js/translated/table_filters.js:117
-#: templates/js/translated/table_filters.js:193
-#: templates/js/translated/table_filters.js:684
+#: common/models.py:1197 part/admin.py:56 part/models.py:1009
+#: templates/js/translated/table_filters.js:123
+#: templates/js/translated/table_filters.js:199
+#: templates/js/translated/table_filters.js:706
msgid "Trackable"
msgstr "Takip Edilebilir"
@@ -2319,10 +2312,10 @@ msgstr "Takip Edilebilir"
msgid "Parts are trackable by default"
msgstr "Parçalar varsayılan olarak takip edilebilir"
-#: common/models.py:1204 part/admin.py:57 part/models.py:1028
+#: common/models.py:1204 part/admin.py:57 part/models.py:1029
#: part/templates/part/part_base.html:156
-#: templates/js/translated/table_filters.js:113
-#: templates/js/translated/table_filters.js:688
+#: templates/js/translated/table_filters.js:119
+#: templates/js/translated/table_filters.js:710
msgid "Virtual"
msgstr "Sanal"
@@ -2354,7 +2347,7 @@ msgstr ""
msgid "Allow creation of initial stock when adding a new part"
msgstr ""
-#: common/models.py:1232 templates/js/translated/part.js:108
+#: common/models.py:1232 templates/js/translated/part.js:107
msgid "Initial Supplier Data"
msgstr ""
@@ -2603,179 +2596,179 @@ msgid "Stock location default icon (empty means no icon)"
msgstr ""
#: common/models.py:1471
-msgid "Build Order Reference Pattern"
+msgid "Show Installed Stock Items"
msgstr ""
#: common/models.py:1472
-msgid "Required pattern for generating Build Order reference field"
+msgid "Display installed stock items in stock tables"
msgstr ""
#: common/models.py:1478
-msgid "Enable Return Orders"
+msgid "Build Order Reference Pattern"
msgstr ""
#: common/models.py:1479
-msgid "Enable return order functionality in the user interface"
+msgid "Required pattern for generating Build Order reference field"
msgstr ""
#: common/models.py:1485
-msgid "Return Order Reference Pattern"
+msgid "Enable Return Orders"
msgstr ""
#: common/models.py:1486
-msgid "Required pattern for generating Return Order reference field"
+msgid "Enable return order functionality in the user interface"
msgstr ""
#: common/models.py:1492
-msgid "Edit Completed Return Orders"
+msgid "Return Order Reference Pattern"
msgstr ""
#: common/models.py:1493
-msgid "Allow editing of return orders after they have been completed"
+msgid "Required pattern for generating Return Order reference field"
msgstr ""
#: common/models.py:1499
-msgid "Sales Order Reference Pattern"
+msgid "Edit Completed Return Orders"
msgstr ""
#: common/models.py:1500
-msgid "Required pattern for generating Sales Order reference field"
+msgid "Allow editing of return orders after they have been completed"
msgstr ""
#: common/models.py:1506
-msgid "Sales Order Default Shipment"
+msgid "Sales Order Reference Pattern"
msgstr ""
#: common/models.py:1507
-msgid "Enable creation of default shipment with sales orders"
+msgid "Required pattern for generating Sales Order reference field"
msgstr ""
#: common/models.py:1513
-msgid "Edit Completed Sales Orders"
+msgid "Sales Order Default Shipment"
msgstr ""
#: common/models.py:1514
-msgid "Allow editing of sales orders after they have been shipped or completed"
+msgid "Enable creation of default shipment with sales orders"
msgstr ""
#: common/models.py:1520
-msgid "Purchase Order Reference Pattern"
+msgid "Edit Completed Sales Orders"
msgstr ""
#: common/models.py:1521
-msgid "Required pattern for generating Purchase Order reference field"
+msgid "Allow editing of sales orders after they have been shipped or completed"
msgstr ""
#: common/models.py:1527
-msgid "Edit Completed Purchase Orders"
+msgid "Purchase Order Reference Pattern"
msgstr ""
#: common/models.py:1528
-msgid "Allow editing of purchase orders after they have been shipped or completed"
+msgid "Required pattern for generating Purchase Order reference field"
+msgstr ""
+
+#: common/models.py:1534
+msgid "Edit Completed Purchase Orders"
msgstr ""
#: common/models.py:1535
-msgid "Enable password forgot"
-msgstr ""
-
-#: common/models.py:1536
-msgid "Enable password forgot function on the login pages"
+msgid "Allow editing of purchase orders after they have been shipped or completed"
msgstr ""
#: common/models.py:1542
-msgid "Enable registration"
+msgid "Enable password forgot"
msgstr ""
#: common/models.py:1543
-msgid "Enable self-registration for users on the login pages"
+msgid "Enable password forgot function on the login pages"
msgstr ""
#: common/models.py:1549
-msgid "Enable SSO"
+msgid "Enable registration"
msgstr ""
#: common/models.py:1550
-msgid "Enable SSO on the login pages"
+msgid "Enable self-registration for users on the login pages"
msgstr ""
#: common/models.py:1556
-msgid "Enable SSO registration"
+msgid "Enable SSO"
msgstr ""
#: common/models.py:1557
-msgid "Enable self-registration via SSO for users on the login pages"
+msgid "Enable SSO on the login pages"
msgstr ""
#: common/models.py:1563
-msgid "Email required"
+msgid "Enable SSO registration"
msgstr ""
#: common/models.py:1564
-msgid "Require user to supply mail on signup"
+msgid "Enable self-registration via SSO for users on the login pages"
msgstr ""
#: common/models.py:1570
-msgid "Auto-fill SSO users"
+msgid "Email required"
msgstr ""
#: common/models.py:1571
-msgid "Automatically fill out user-details from SSO account-data"
+msgid "Require user to supply mail on signup"
msgstr ""
#: common/models.py:1577
-msgid "Mail twice"
+msgid "Auto-fill SSO users"
msgstr ""
#: common/models.py:1578
-msgid "On signup ask users twice for their mail"
+msgid "Automatically fill out user-details from SSO account-data"
msgstr ""
#: common/models.py:1584
-msgid "Password twice"
+msgid "Mail twice"
msgstr ""
#: common/models.py:1585
-msgid "On signup ask users twice for their password"
+msgid "On signup ask users twice for their mail"
msgstr ""
#: common/models.py:1591
-msgid "Allowed domains"
+msgid "Password twice"
msgstr ""
#: common/models.py:1592
-msgid "Restrict signup to certain domains (comma-separated, starting with @)"
+msgid "On signup ask users twice for their password"
msgstr ""
#: common/models.py:1598
-msgid "Group on signup"
+msgid "Allowed domains"
msgstr ""
#: common/models.py:1599
-msgid "Group to which new users are assigned on registration"
+msgid "Restrict signup to certain domains (comma-separated, starting with @)"
msgstr ""
#: common/models.py:1605
-msgid "Enforce MFA"
+msgid "Group on signup"
msgstr ""
#: common/models.py:1606
-msgid "Users must use multifactor security."
+msgid "Group to which new users are assigned on registration"
msgstr ""
#: common/models.py:1612
-msgid "Check plugins on startup"
+msgid "Enforce MFA"
msgstr ""
#: common/models.py:1613
-msgid "Check that all plugins are installed on startup - enable in container environments"
+msgid "Users must use multifactor security."
+msgstr ""
+
+#: common/models.py:1619
+msgid "Check plugins on startup"
msgstr ""
#: common/models.py:1620
-msgid "Check plugin signatures"
-msgstr ""
-
-#: common/models.py:1621
-msgid "Check and show signatures for plugins"
+msgid "Check that all plugins are installed on startup - enable in container environments"
msgstr ""
#: common/models.py:1628
@@ -2850,7 +2843,7 @@ msgstr ""
msgid "Stocktake reports will be deleted after specified number of days"
msgstr ""
-#: common/models.py:1710 common/models.py:2147
+#: common/models.py:1710 common/models.py:2133
msgid "Settings key (must be unique - case insensitive"
msgstr ""
@@ -2891,528 +2884,513 @@ msgid "Show latest parts on the homepage"
msgstr ""
#: common/models.py:1779
-msgid "Recent Part Count"
-msgstr ""
-
-#: common/models.py:1780
-msgid "Number of recent parts to display on index page"
-msgstr ""
-
-#: common/models.py:1786
msgid "Show unvalidated BOMs"
msgstr ""
-#: common/models.py:1787
+#: common/models.py:1780
msgid "Show BOMs that await validation on the homepage"
msgstr ""
-#: common/models.py:1793
+#: common/models.py:1786
msgid "Show recent stock changes"
msgstr ""
-#: common/models.py:1794
+#: common/models.py:1787
msgid "Show recently changed stock items on the homepage"
msgstr ""
-#: common/models.py:1800
-msgid "Recent Stock Count"
-msgstr ""
-
-#: common/models.py:1801
-msgid "Number of recent stock items to display on index page"
-msgstr ""
-
-#: common/models.py:1807
+#: common/models.py:1793
msgid "Show low stock"
msgstr ""
-#: common/models.py:1808
+#: common/models.py:1794
msgid "Show low stock items on the homepage"
msgstr ""
-#: common/models.py:1814
+#: common/models.py:1800
msgid "Show depleted stock"
msgstr ""
-#: common/models.py:1815
+#: common/models.py:1801
msgid "Show depleted stock items on the homepage"
msgstr ""
-#: common/models.py:1821
+#: common/models.py:1807
msgid "Show needed stock"
msgstr ""
-#: common/models.py:1822
+#: common/models.py:1808
msgid "Show stock items needed for builds on the homepage"
msgstr ""
-#: common/models.py:1828
+#: common/models.py:1814
msgid "Show expired stock"
msgstr ""
-#: common/models.py:1829
+#: common/models.py:1815
msgid "Show expired stock items on the homepage"
msgstr ""
-#: common/models.py:1835
+#: common/models.py:1821
msgid "Show stale stock"
msgstr ""
-#: common/models.py:1836
+#: common/models.py:1822
msgid "Show stale stock items on the homepage"
msgstr ""
-#: common/models.py:1842
+#: common/models.py:1828
msgid "Show pending builds"
msgstr ""
-#: common/models.py:1843
+#: common/models.py:1829
msgid "Show pending builds on the homepage"
msgstr ""
-#: common/models.py:1849
+#: common/models.py:1835
msgid "Show overdue builds"
msgstr ""
-#: common/models.py:1850
+#: common/models.py:1836
msgid "Show overdue builds on the homepage"
msgstr ""
-#: common/models.py:1856
+#: common/models.py:1842
msgid "Show outstanding POs"
msgstr ""
-#: common/models.py:1857
+#: common/models.py:1843
msgid "Show outstanding POs on the homepage"
msgstr ""
-#: common/models.py:1863
+#: common/models.py:1849
msgid "Show overdue POs"
msgstr ""
-#: common/models.py:1864
+#: common/models.py:1850
msgid "Show overdue POs on the homepage"
msgstr ""
-#: common/models.py:1870
+#: common/models.py:1856
msgid "Show outstanding SOs"
msgstr ""
-#: common/models.py:1871
+#: common/models.py:1857
msgid "Show outstanding SOs on the homepage"
msgstr ""
-#: common/models.py:1877
+#: common/models.py:1863
msgid "Show overdue SOs"
msgstr ""
-#: common/models.py:1878
+#: common/models.py:1864
msgid "Show overdue SOs on the homepage"
msgstr ""
-#: common/models.py:1884
+#: common/models.py:1870
msgid "Show pending SO shipments"
msgstr ""
-#: common/models.py:1885
+#: common/models.py:1871
msgid "Show pending SO shipments on the homepage"
msgstr ""
-#: common/models.py:1891
+#: common/models.py:1877
msgid "Show News"
msgstr ""
-#: common/models.py:1892
+#: common/models.py:1878
msgid "Show news on the homepage"
msgstr ""
-#: common/models.py:1898
+#: common/models.py:1884
msgid "Inline label display"
msgstr ""
-#: common/models.py:1899
+#: common/models.py:1885
msgid "Display PDF labels in the browser, instead of downloading as a file"
msgstr ""
-#: common/models.py:1905
+#: common/models.py:1891
msgid "Default label printer"
msgstr ""
-#: common/models.py:1906
+#: common/models.py:1892
msgid "Configure which label printer should be selected by default"
msgstr ""
-#: common/models.py:1912
+#: common/models.py:1898
msgid "Inline report display"
msgstr ""
-#: common/models.py:1913
+#: common/models.py:1899
msgid "Display PDF reports in the browser, instead of downloading as a file"
msgstr ""
-#: common/models.py:1919
+#: common/models.py:1905
msgid "Search Parts"
msgstr ""
-#: common/models.py:1920
+#: common/models.py:1906
msgid "Display parts in search preview window"
msgstr ""
-#: common/models.py:1926
+#: common/models.py:1912
msgid "Search Supplier Parts"
msgstr ""
-#: common/models.py:1927
+#: common/models.py:1913
msgid "Display supplier parts in search preview window"
msgstr ""
-#: common/models.py:1933
+#: common/models.py:1919
msgid "Search Manufacturer Parts"
msgstr ""
-#: common/models.py:1934
+#: common/models.py:1920
msgid "Display manufacturer parts in search preview window"
msgstr ""
-#: common/models.py:1940
+#: common/models.py:1926
msgid "Hide Inactive Parts"
msgstr ""
-#: common/models.py:1941
+#: common/models.py:1927
msgid "Excluded inactive parts from search preview window"
msgstr ""
-#: common/models.py:1947
+#: common/models.py:1933
msgid "Search Categories"
msgstr ""
-#: common/models.py:1948
+#: common/models.py:1934
msgid "Display part categories in search preview window"
msgstr ""
-#: common/models.py:1954
+#: common/models.py:1940
msgid "Search Stock"
msgstr ""
-#: common/models.py:1955
+#: common/models.py:1941
msgid "Display stock items in search preview window"
msgstr ""
-#: common/models.py:1961
+#: common/models.py:1947
msgid "Hide Unavailable Stock Items"
msgstr ""
-#: common/models.py:1962
+#: common/models.py:1948
msgid "Exclude stock items which are not available from the search preview window"
msgstr ""
-#: common/models.py:1968
+#: common/models.py:1954
msgid "Search Locations"
msgstr ""
-#: common/models.py:1969
+#: common/models.py:1955
msgid "Display stock locations in search preview window"
msgstr ""
-#: common/models.py:1975
+#: common/models.py:1961
msgid "Search Companies"
msgstr ""
-#: common/models.py:1976
+#: common/models.py:1962
msgid "Display companies in search preview window"
msgstr ""
-#: common/models.py:1982
+#: common/models.py:1968
msgid "Search Build Orders"
msgstr ""
-#: common/models.py:1983
+#: common/models.py:1969
msgid "Display build orders in search preview window"
msgstr ""
-#: common/models.py:1989
+#: common/models.py:1975
msgid "Search Purchase Orders"
msgstr ""
-#: common/models.py:1990
+#: common/models.py:1976
msgid "Display purchase orders in search preview window"
msgstr ""
-#: common/models.py:1996
+#: common/models.py:1982
msgid "Exclude Inactive Purchase Orders"
msgstr ""
-#: common/models.py:1997
+#: common/models.py:1983
msgid "Exclude inactive purchase orders from search preview window"
msgstr ""
-#: common/models.py:2003
+#: common/models.py:1989
msgid "Search Sales Orders"
msgstr ""
-#: common/models.py:2004
+#: common/models.py:1990
msgid "Display sales orders in search preview window"
msgstr ""
-#: common/models.py:2010
+#: common/models.py:1996
msgid "Exclude Inactive Sales Orders"
msgstr ""
-#: common/models.py:2011
+#: common/models.py:1997
msgid "Exclude inactive sales orders from search preview window"
msgstr ""
-#: common/models.py:2017
+#: common/models.py:2003
msgid "Search Return Orders"
msgstr ""
-#: common/models.py:2018
+#: common/models.py:2004
msgid "Display return orders in search preview window"
msgstr ""
-#: common/models.py:2024
+#: common/models.py:2010
msgid "Exclude Inactive Return Orders"
msgstr ""
-#: common/models.py:2025
+#: common/models.py:2011
msgid "Exclude inactive return orders from search preview window"
msgstr ""
-#: common/models.py:2031
+#: common/models.py:2017
msgid "Search Preview Results"
msgstr ""
-#: common/models.py:2032
+#: common/models.py:2018
msgid "Number of results to show in each section of the search preview window"
msgstr ""
-#: common/models.py:2038
+#: common/models.py:2024
msgid "Regex Search"
msgstr ""
-#: common/models.py:2039
+#: common/models.py:2025
msgid "Enable regular expressions in search queries"
msgstr ""
-#: common/models.py:2045
+#: common/models.py:2031
msgid "Whole Word Search"
msgstr ""
-#: common/models.py:2046
+#: common/models.py:2032
msgid "Search queries return results for whole word matches"
msgstr ""
-#: common/models.py:2052
+#: common/models.py:2038
msgid "Show Quantity in Forms"
msgstr "Formlarda Miktarı Göster"
-#: common/models.py:2053
+#: common/models.py:2039
msgid "Display available part quantity in some forms"
msgstr ""
-#: common/models.py:2059
+#: common/models.py:2045
msgid "Escape Key Closes Forms"
msgstr ""
-#: common/models.py:2060
+#: common/models.py:2046
msgid "Use the escape key to close modal forms"
msgstr ""
-#: common/models.py:2066
+#: common/models.py:2052
msgid "Fixed Navbar"
msgstr ""
-#: common/models.py:2067
+#: common/models.py:2053
msgid "The navbar position is fixed to the top of the screen"
msgstr ""
-#: common/models.py:2073
+#: common/models.py:2059
msgid "Date Format"
msgstr ""
-#: common/models.py:2074
+#: common/models.py:2060
msgid "Preferred format for displaying dates"
msgstr ""
-#: common/models.py:2088 part/templates/part/detail.html:41
+#: common/models.py:2074 part/templates/part/detail.html:41
msgid "Part Scheduling"
msgstr ""
-#: common/models.py:2089
+#: common/models.py:2075
msgid "Display part scheduling information"
msgstr ""
-#: common/models.py:2095 part/templates/part/detail.html:62
+#: common/models.py:2081 part/templates/part/detail.html:62
msgid "Part Stocktake"
msgstr ""
-#: common/models.py:2096
+#: common/models.py:2082
msgid "Display part stocktake information (if stocktake functionality is enabled)"
msgstr ""
-#: common/models.py:2102
+#: common/models.py:2088
msgid "Table String Length"
msgstr ""
-#: common/models.py:2103
+#: common/models.py:2089
msgid "Maximimum length limit for strings displayed in table views"
msgstr ""
-#: common/models.py:2112
+#: common/models.py:2098
msgid "Default part label template"
msgstr ""
-#: common/models.py:2113
+#: common/models.py:2099
msgid "The part label template to be automatically selected"
msgstr ""
-#: common/models.py:2121
+#: common/models.py:2107
msgid "Default stock item template"
msgstr ""
-#: common/models.py:2122
+#: common/models.py:2108
msgid "The stock item label template to be automatically selected"
msgstr ""
-#: common/models.py:2130
+#: common/models.py:2116
msgid "Default stock location label template"
msgstr ""
-#: common/models.py:2131
+#: common/models.py:2117
msgid "The stock location label template to be automatically selected"
msgstr ""
-#: common/models.py:2177
+#: common/models.py:2163
msgid "Price break quantity"
msgstr ""
-#: common/models.py:2184 company/serializers.py:434 order/admin.py:43
-#: order/models.py:1132 order/models.py:1939
-#: templates/js/translated/company.js:1433 templates/js/translated/part.js:1856
+#: common/models.py:2170 company/serializers.py:491 order/admin.py:43
+#: order/models.py:1145 order/models.py:1952
+#: templates/js/translated/company.js:1854 templates/js/translated/part.js:1855
#: templates/js/translated/pricing.js:621
-#: templates/js/translated/return_order.js:725
+#: templates/js/translated/return_order.js:737
msgid "Price"
msgstr "Fiyat"
-#: common/models.py:2185
+#: common/models.py:2171
msgid "Unit price at specified quantity"
msgstr ""
-#: common/models.py:2345 common/models.py:2523
+#: common/models.py:2331 common/models.py:2509
msgid "Endpoint"
msgstr ""
-#: common/models.py:2346
+#: common/models.py:2332
msgid "Endpoint at which this webhook is received"
msgstr ""
-#: common/models.py:2355
+#: common/models.py:2341
msgid "Name for this webhook"
msgstr ""
-#: common/models.py:2360 part/admin.py:50 part/models.py:1023
-#: plugin/models.py:47 templates/js/translated/table_filters.js:105
-#: templates/js/translated/table_filters.js:189
-#: templates/js/translated/table_filters.js:434
-#: templates/js/translated/table_filters.js:450
-#: templates/js/translated/table_filters.js:629
+#: common/models.py:2346 part/admin.py:50 part/models.py:1024
+#: plugin/models.py:48 templates/js/translated/table_filters.js:111
+#: templates/js/translated/table_filters.js:195
+#: templates/js/translated/table_filters.js:440
+#: templates/js/translated/table_filters.js:456
+#: templates/js/translated/table_filters.js:651
msgid "Active"
msgstr "Aktif"
-#: common/models.py:2361
+#: common/models.py:2347
msgid "Is this webhook active"
msgstr ""
-#: common/models.py:2375
+#: common/models.py:2361
msgid "Token"
msgstr ""
-#: common/models.py:2376
+#: common/models.py:2362
msgid "Token for access"
msgstr ""
-#: common/models.py:2383
+#: common/models.py:2369
msgid "Secret"
msgstr ""
-#: common/models.py:2384
+#: common/models.py:2370
msgid "Shared secret for HMAC"
msgstr ""
-#: common/models.py:2490
+#: common/models.py:2476
msgid "Message ID"
msgstr ""
-#: common/models.py:2491
+#: common/models.py:2477
msgid "Unique identifier for this message"
msgstr ""
-#: common/models.py:2499
+#: common/models.py:2485
msgid "Host"
msgstr ""
-#: common/models.py:2500
+#: common/models.py:2486
msgid "Host from which this message was received"
msgstr ""
-#: common/models.py:2507
+#: common/models.py:2493
msgid "Header"
msgstr ""
-#: common/models.py:2508
+#: common/models.py:2494
msgid "Header of this message"
msgstr ""
-#: common/models.py:2514
+#: common/models.py:2500
msgid "Body"
msgstr ""
-#: common/models.py:2515
+#: common/models.py:2501
msgid "Body of this message"
msgstr ""
-#: common/models.py:2524
+#: common/models.py:2510
msgid "Endpoint on which this message was received"
msgstr ""
-#: common/models.py:2529
+#: common/models.py:2515
msgid "Worked on"
msgstr ""
-#: common/models.py:2530
+#: common/models.py:2516
msgid "Was the work on this message finished?"
msgstr ""
-#: common/models.py:2684
+#: common/models.py:2670
msgid "Id"
msgstr ""
-#: common/models.py:2690 templates/js/translated/news.js:44
+#: common/models.py:2676 templates/js/translated/company.js:996
+#: templates/js/translated/news.js:44
msgid "Title"
msgstr ""
-#: common/models.py:2700 templates/js/translated/news.js:60
+#: common/models.py:2686 templates/js/translated/news.js:60
msgid "Published"
msgstr ""
-#: common/models.py:2705 templates/InvenTree/settings/plugin_settings.html:32
+#: common/models.py:2691 templates/InvenTree/settings/plugin_settings.html:32
#: templates/js/translated/news.js:56 templates/js/translated/plugin.js:106
msgid "Author"
msgstr ""
-#: common/models.py:2710 templates/js/translated/news.js:52
+#: common/models.py:2696 templates/js/translated/news.js:52
msgid "Summary"
msgstr ""
-#: common/models.py:2715
+#: common/models.py:2701
msgid "Read"
msgstr ""
-#: common/models.py:2716
+#: common/models.py:2702
msgid "Was this news item read?"
msgstr ""
-#: common/models.py:2736 company/models.py:143 part/models.py:914
+#: common/models.py:2722 company/models.py:139 part/models.py:915
#: report/templates/report/inventree_bill_of_materials_report.html:126
#: report/templates/report/inventree_bill_of_materials_report.html:148
#: report/templates/report/inventree_return_order_report_base.html:35
@@ -3422,7 +3400,7 @@ msgstr ""
msgid "Image"
msgstr "Resim"
-#: common/models.py:2737
+#: common/models.py:2723
msgid "Image file"
msgstr ""
@@ -3499,7 +3477,7 @@ msgstr ""
#: company/models.py:113 company/templates/company/company_base.html:101
#: templates/InvenTree/settings/plugin_settings.html:54
-#: templates/js/translated/company.js:514
+#: templates/js/translated/company.js:521
msgid "Website"
msgstr ""
@@ -3507,303 +3485,387 @@ msgstr ""
msgid "Company website URL"
msgstr "Şirket web sitesi"
-#: company/models.py:118 company/templates/company/company_base.html:119
-msgid "Address"
-msgstr "Adres"
-
-#: company/models.py:119
-msgid "Company address"
-msgstr "Şirket adresi"
-
-#: company/models.py:122
+#: company/models.py:118
msgid "Phone number"
msgstr "Telefon numarası"
-#: company/models.py:123
+#: company/models.py:119
msgid "Contact phone number"
msgstr "İletişim telefon numarası"
-#: company/models.py:126 company/templates/company/company_base.html:133
+#: company/models.py:122 company/templates/company/company_base.html:133
#: templates/InvenTree/settings/user.html:49
-#: templates/js/translated/company.js:659
+#: templates/js/translated/company.js:666
msgid "Email"
msgstr "E-posta"
-#: company/models.py:126
+#: company/models.py:122
msgid "Contact email address"
msgstr "İletişim e-posta adresi"
-#: company/models.py:129 company/templates/company/company_base.html:140
-#: order/models.py:266 order/templates/order/order_base.html:207
+#: company/models.py:125 company/templates/company/company_base.html:140
+#: order/models.py:270 order/templates/order/order_base.html:203
#: order/templates/order/return_order_base.html:175
#: order/templates/order/sales_order_base.html:215
msgid "Contact"
msgstr "İletişim"
-#: company/models.py:130
+#: company/models.py:126
msgid "Point of contact"
msgstr ""
-#: company/models.py:132
+#: company/models.py:128
msgid "Link to external company information"
msgstr ""
-#: company/models.py:146
+#: company/models.py:142
msgid "is customer"
msgstr "müşteri mi"
-#: company/models.py:146
+#: company/models.py:142
msgid "Do you sell items to this company?"
msgstr "Bu şirkete ürün satıyor musunuz?"
-#: company/models.py:148
+#: company/models.py:144
msgid "is supplier"
msgstr "tedarikçi mi"
-#: company/models.py:148
+#: company/models.py:144
msgid "Do you purchase items from this company?"
msgstr "Bu şirketten ürün satın alıyor musunuz?"
-#: company/models.py:150
+#: company/models.py:146
msgid "is manufacturer"
msgstr "üretici mi"
-#: company/models.py:150
+#: company/models.py:146
msgid "Does this company manufacture parts?"
msgstr "Bu şirket üretim yapıyor mu?"
-#: company/models.py:157
+#: company/models.py:153
msgid "Default currency used for this company"
msgstr "Bu şirket için varsayılan para birimi"
-#: company/models.py:223 company/templates/company/company_base.html:8
+#: company/models.py:235 company/models.py:328
+#: company/templates/company/company_base.html:8
#: company/templates/company/company_base.html:12
-#: templates/InvenTree/search.html:178 templates/js/translated/company.js:487
+#: templates/InvenTree/search.html:178 templates/js/translated/company.js:494
msgid "Company"
msgstr ""
-#: company/models.py:278 company/models.py:553 stock/models.py:675
-#: stock/serializers.py:155 stock/templates/stock/item_base.html:143
-#: templates/js/translated/bom.js:621
+#: company/models.py:324
+msgid "Company already has a primary address"
+msgstr ""
+
+#: company/models.py:329
+msgid "Select company"
+msgstr ""
+
+#: company/models.py:332
+msgid "Address title"
+msgstr ""
+
+#: company/models.py:333
+msgid "Title describing the address entry"
+msgstr ""
+
+#: company/models.py:337
+msgid "Primary address"
+msgstr ""
+
+#: company/models.py:338
+msgid "Set as primary address"
+msgstr ""
+
+#: company/models.py:341 templates/js/translated/company.js:941
+#: templates/js/translated/company.js:1002
+msgid "Line 1"
+msgstr ""
+
+#: company/models.py:342
+msgid "Address line 1"
+msgstr ""
+
+#: company/models.py:346 templates/js/translated/company.js:942
+#: templates/js/translated/company.js:1008
+msgid "Line 2"
+msgstr ""
+
+#: company/models.py:347
+msgid "Address line 2"
+msgstr ""
+
+#: company/models.py:351 company/models.py:352
+#: templates/js/translated/company.js:1014
+msgid "Postal code"
+msgstr ""
+
+#: company/models.py:356
+msgid "City/Region"
+msgstr ""
+
+#: company/models.py:357
+msgid "Postal code city/region"
+msgstr ""
+
+#: company/models.py:361
+msgid "State/Province"
+msgstr ""
+
+#: company/models.py:362
+msgid "State or province"
+msgstr ""
+
+#: company/models.py:366 templates/js/translated/company.js:1032
+msgid "Country"
+msgstr ""
+
+#: company/models.py:367
+msgid "Address country"
+msgstr ""
+
+#: company/models.py:371
+msgid "Courier shipping notes"
+msgstr ""
+
+#: company/models.py:372
+msgid "Notes for shipping courier"
+msgstr ""
+
+#: company/models.py:376
+msgid "Internal shipping notes"
+msgstr ""
+
+#: company/models.py:377
+msgid "Shipping notes for internal use"
+msgstr ""
+
+#: company/models.py:382
+msgid "Link to address information (external)"
+msgstr ""
+
+#: company/models.py:427 company/models.py:702 stock/models.py:675
+#: stock/serializers.py:204 stock/templates/stock/item_base.html:143
+#: templates/js/translated/bom.js:622
msgid "Base Part"
msgstr "Temel Parça"
-#: company/models.py:282 company/models.py:557
+#: company/models.py:431 company/models.py:706
msgid "Select part"
msgstr "Parça seçin"
-#: company/models.py:293 company/templates/company/company_base.html:77
+#: company/models.py:442 company/templates/company/company_base.html:77
#: company/templates/company/manufacturer_part.html:90
-#: company/templates/company/supplier_part.html:146 part/serializers.py:354
+#: company/templates/company/supplier_part.html:146 part/serializers.py:404
#: stock/templates/stock/item_base.html:208
-#: templates/js/translated/company.js:498
-#: templates/js/translated/company.js:824
-#: templates/js/translated/company.js:954
-#: templates/js/translated/company.js:1221
-#: templates/js/translated/table_filters.js:709
+#: templates/js/translated/company.js:505
+#: templates/js/translated/company.js:1149
+#: templates/js/translated/company.js:1327
+#: templates/js/translated/company.js:1642
+#: templates/js/translated/table_filters.js:731
msgid "Manufacturer"
msgstr "Üretici"
-#: company/models.py:294
+#: company/models.py:443
msgid "Select manufacturer"
msgstr "Üretici seçin"
-#: company/models.py:300 company/templates/company/manufacturer_part.html:101
-#: company/templates/company/supplier_part.html:154 part/serializers.py:360
-#: templates/js/translated/company.js:340
-#: templates/js/translated/company.js:823
-#: templates/js/translated/company.js:970
-#: templates/js/translated/company.js:1240 templates/js/translated/part.js:1773
-#: templates/js/translated/purchase_order.js:1814
-#: templates/js/translated/purchase_order.js:2021
+#: company/models.py:449 company/templates/company/manufacturer_part.html:101
+#: company/templates/company/supplier_part.html:154 part/serializers.py:410
+#: templates/js/translated/company.js:350
+#: templates/js/translated/company.js:1148
+#: templates/js/translated/company.js:1343
+#: templates/js/translated/company.js:1661 templates/js/translated/part.js:1772
+#: templates/js/translated/purchase_order.js:1829
+#: templates/js/translated/purchase_order.js:2031
msgid "MPN"
msgstr "ÜPN"
-#: company/models.py:301
+#: company/models.py:450
msgid "Manufacturer Part Number"
msgstr "Üretici Parça Numarası"
-#: company/models.py:307
+#: company/models.py:456
msgid "URL for external manufacturer part link"
msgstr ""
-#: company/models.py:313
+#: company/models.py:462
msgid "Manufacturer part description"
msgstr ""
-#: company/models.py:360 company/models.py:384 company/models.py:578
+#: company/models.py:509 company/models.py:533 company/models.py:727
#: company/templates/company/manufacturer_part.html:7
#: company/templates/company/manufacturer_part.html:24
#: stock/templates/stock/item_base.html:218
msgid "Manufacturer Part"
msgstr ""
-#: company/models.py:391
+#: company/models.py:540
msgid "Parameter name"
msgstr "Parametre adı"
-#: company/models.py:397
+#: company/models.py:546
#: report/templates/report/inventree_test_report_base.html:104
-#: stock/models.py:2255 templates/js/translated/company.js:872
-#: templates/js/translated/company.js:1077 templates/js/translated/part.js:1465
-#: templates/js/translated/stock.js:1446
+#: stock/models.py:2255 templates/js/translated/company.js:1197
+#: templates/js/translated/company.js:1450 templates/js/translated/part.js:1464
+#: templates/js/translated/stock.js:1445
msgid "Value"
msgstr "Değer"
-#: company/models.py:398
+#: company/models.py:547
msgid "Parameter value"
msgstr "Parametre değeri"
-#: company/models.py:404 company/templates/company/supplier_part.html:169
-#: part/admin.py:40 part/models.py:987 part/models.py:3407
+#: company/models.py:553 company/templates/company/supplier_part.html:169
+#: part/admin.py:40 part/models.py:988 part/models.py:3441
#: part/templates/part/part_base.html:286
-#: templates/js/translated/company.js:1083 templates/js/translated/part.js:1484
-#: templates/js/translated/part.js:1588 templates/js/translated/part.js:2262
+#: templates/js/translated/company.js:1456 templates/js/translated/part.js:1483
+#: templates/js/translated/part.js:1587 templates/js/translated/part.js:2338
msgid "Units"
msgstr ""
-#: company/models.py:405
+#: company/models.py:554
msgid "Parameter units"
msgstr ""
-#: company/models.py:498
+#: company/models.py:647
msgid "Pack units must be compatible with the base part units"
msgstr ""
-#: company/models.py:504
+#: company/models.py:653
msgid "Pack units must be greater than zero"
msgstr ""
-#: company/models.py:520
+#: company/models.py:669
msgid "Linked manufacturer part must reference the same base part"
msgstr ""
-#: company/models.py:564 company/templates/company/company_base.html:82
-#: company/templates/company/supplier_part.html:130 order/models.py:382
-#: order/templates/order/order_base.html:140 part/bom.py:285 part/bom.py:313
-#: part/serializers.py:343 stock/templates/stock/item_base.html:225
+#: company/models.py:713 company/templates/company/company_base.html:82
+#: company/templates/company/supplier_part.html:130 order/models.py:395
+#: order/templates/order/order_base.html:136 part/bom.py:285 part/bom.py:313
+#: part/serializers.py:393 stock/templates/stock/item_base.html:225
#: templates/email/overdue_purchase_order.html:16
-#: templates/js/translated/company.js:339
-#: templates/js/translated/company.js:502
-#: templates/js/translated/company.js:1194 templates/js/translated/part.js:1741
+#: templates/js/translated/company.js:349
+#: templates/js/translated/company.js:509
+#: templates/js/translated/company.js:1615 templates/js/translated/part.js:1740
#: templates/js/translated/pricing.js:498
-#: templates/js/translated/purchase_order.js:1653
-#: templates/js/translated/table_filters.js:713
+#: templates/js/translated/purchase_order.js:1668
+#: templates/js/translated/table_filters.js:735
msgid "Supplier"
msgstr "Tedarikçi"
-#: company/models.py:565
+#: company/models.py:714
msgid "Select supplier"
msgstr "Tedarikçi seçin"
-#: company/models.py:570 company/templates/company/supplier_part.html:140
-#: part/bom.py:286 part/bom.py:314 part/serializers.py:349
-#: templates/js/translated/company.js:338 templates/js/translated/part.js:1759
+#: company/models.py:719 company/templates/company/supplier_part.html:140
+#: part/bom.py:286 part/bom.py:314 part/serializers.py:399
+#: templates/js/translated/company.js:348 templates/js/translated/part.js:1758
#: templates/js/translated/pricing.js:510
-#: templates/js/translated/purchase_order.js:1813
-#: templates/js/translated/purchase_order.js:1996
+#: templates/js/translated/purchase_order.js:1828
+#: templates/js/translated/purchase_order.js:2006
msgid "SKU"
msgstr ""
-#: company/models.py:571 part/serializers.py:349
+#: company/models.py:720 part/serializers.py:399
msgid "Supplier stock keeping unit"
msgstr ""
-#: company/models.py:579
+#: company/models.py:728
msgid "Select manufacturer part"
msgstr ""
-#: company/models.py:585
+#: company/models.py:734
msgid "URL for external supplier part link"
msgstr ""
-#: company/models.py:591
+#: company/models.py:740
msgid "Supplier part description"
msgstr ""
-#: company/models.py:596 company/templates/company/supplier_part.html:188
-#: part/admin.py:279 part/models.py:3801 part/templates/part/upload_bom.html:59
+#: company/models.py:745 company/templates/company/supplier_part.html:188
+#: part/admin.py:279 part/models.py:3845 part/templates/part/upload_bom.html:59
#: report/templates/report/inventree_bill_of_materials_report.html:140
#: report/templates/report/inventree_po_report_base.html:32
#: report/templates/report/inventree_return_order_report_base.html:27
#: report/templates/report/inventree_so_report_base.html:32
-#: stock/serializers.py:418
+#: stock/serializers.py:484
msgid "Note"
msgstr "Not"
-#: company/models.py:600 part/models.py:1919
+#: company/models.py:749 part/models.py:1921
msgid "base cost"
msgstr "temel maliyet"
-#: company/models.py:600 part/models.py:1919
+#: company/models.py:749 part/models.py:1921
msgid "Minimum charge (e.g. stocking fee)"
msgstr ""
-#: company/models.py:602 company/templates/company/supplier_part.html:161
+#: company/models.py:751 company/templates/company/supplier_part.html:161
#: stock/admin.py:119 stock/models.py:701
#: stock/templates/stock/item_base.html:241
-#: templates/js/translated/company.js:1256
-#: templates/js/translated/stock.js:2160
+#: templates/js/translated/company.js:1677
+#: templates/js/translated/stock.js:2317
msgid "Packaging"
msgstr "Paketleme"
-#: company/models.py:602
+#: company/models.py:751
msgid "Part packaging"
msgstr ""
-#: company/models.py:606 templates/js/translated/company.js:1261
-#: templates/js/translated/part.js:1793 templates/js/translated/part.js:1848
-#: templates/js/translated/purchase_order.js:300
-#: templates/js/translated/purchase_order.js:827
-#: templates/js/translated/purchase_order.js:1073
-#: templates/js/translated/purchase_order.js:2052
-#: templates/js/translated/purchase_order.js:2069
+#: company/models.py:755 templates/js/translated/company.js:1682
+#: templates/js/translated/part.js:1792 templates/js/translated/part.js:1847
+#: templates/js/translated/purchase_order.js:311
+#: templates/js/translated/purchase_order.js:842
+#: templates/js/translated/purchase_order.js:1088
+#: templates/js/translated/purchase_order.js:2062
+#: templates/js/translated/purchase_order.js:2079
msgid "Pack Quantity"
msgstr ""
-#: company/models.py:607
+#: company/models.py:756
msgid "Total quantity supplied in a single pack. Leave empty for single items."
msgstr ""
-#: company/models.py:624 part/models.py:1921
+#: company/models.py:773 part/models.py:1923
msgid "multiple"
msgstr "çoklu"
-#: company/models.py:624
+#: company/models.py:773
msgid "Order multiple"
msgstr ""
-#: company/models.py:632 company/templates/company/supplier_part.html:115
+#: company/models.py:781 company/templates/company/supplier_part.html:115
#: templates/email/build_order_required_stock.html:19
#: templates/email/low_stock_notification.html:17
-#: templates/js/translated/bom.js:1127 templates/js/translated/build.js:2136
-#: templates/js/translated/build.js:3045
-#: templates/js/translated/model_renderers.js:205
-#: templates/js/translated/part.js:670 templates/js/translated/part.js:672
-#: templates/js/translated/part.js:677
-#: templates/js/translated/table_filters.js:286
-#: templates/js/translated/table_filters.js:492
+#: templates/js/translated/bom.js:1145 templates/js/translated/build.js:2490
+#: templates/js/translated/index.js:118
+#: templates/js/translated/model_renderers.js:219
+#: templates/js/translated/part.js:669 templates/js/translated/part.js:671
+#: templates/js/translated/part.js:676
+#: templates/js/translated/table_filters.js:292
+#: templates/js/translated/table_filters.js:510
msgid "Available"
msgstr "Mevcut"
-#: company/models.py:633
+#: company/models.py:782
msgid "Quantity available from supplier"
msgstr ""
-#: company/models.py:637
+#: company/models.py:786
msgid "Availability Updated"
msgstr ""
-#: company/models.py:638
+#: company/models.py:787
msgid "Date of last update of availability data"
msgstr ""
-#: company/serializers.py:99
+#: company/serializers.py:156
msgid "Default currency used for this supplier"
msgstr ""
#: company/templates/company/company_base.html:22
-#: templates/js/translated/purchase_order.js:228
+#: templates/js/translated/purchase_order.js:239
msgid "Create Purchase Order"
msgstr "Satın Alma Emri Oluştur"
@@ -3816,7 +3878,7 @@ msgid "Edit company information"
msgstr ""
#: company/templates/company/company_base.html:34
-#: templates/js/translated/company.js:436
+#: templates/js/translated/company.js:443
msgid "Edit Company"
msgstr ""
@@ -3856,17 +3918,17 @@ msgstr ""
msgid "Delete image"
msgstr ""
-#: company/templates/company/company_base.html:87 order/models.py:779
-#: order/models.py:1738 order/templates/order/return_order_base.html:132
+#: company/templates/company/company_base.html:87 order/models.py:792
+#: order/models.py:1751 order/templates/order/return_order_base.html:132
#: order/templates/order/sales_order_base.html:145 stock/models.py:720
-#: stock/models.py:721 stock/serializers.py:825
+#: stock/models.py:721 stock/serializers.py:942
#: stock/templates/stock/item_base.html:401
#: templates/email/overdue_sales_order.html:16
-#: templates/js/translated/company.js:494
-#: templates/js/translated/return_order.js:284
-#: templates/js/translated/sales_order.js:772
-#: templates/js/translated/stock.js:2696
-#: templates/js/translated/table_filters.js:717
+#: templates/js/translated/company.js:501
+#: templates/js/translated/return_order.js:296
+#: templates/js/translated/sales_order.js:784
+#: templates/js/translated/stock.js:2827
+#: templates/js/translated/table_filters.js:739
msgid "Customer"
msgstr "Müşteri"
@@ -3874,6 +3936,13 @@ msgstr "Müşteri"
msgid "Uses default currency"
msgstr ""
+#: company/templates/company/company_base.html:119 order/models.py:279
+#: order/templates/order/order_base.html:210
+#: order/templates/order/return_order_base.html:182
+#: order/templates/order/sales_order_base.html:222
+msgid "Address"
+msgstr "Adres"
+
#: company/templates/company/company_base.html:126
msgid "Phone"
msgstr ""
@@ -3906,7 +3975,7 @@ msgstr "Resmi İndirin"
#: company/templates/company/detail.html:15
#: company/templates/company/manufacturer_part_sidebar.html:7
-#: templates/InvenTree/search.html:120 templates/js/translated/search.js:189
+#: templates/InvenTree/search.html:120 templates/js/translated/search.js:147
msgid "Supplier Parts"
msgstr "Tedarikçi Parçaları"
@@ -3916,129 +3985,121 @@ msgstr "Yeni tedarikçi parçası oluştur"
#: company/templates/company/detail.html:20
#: company/templates/company/manufacturer_part.html:123
-#: part/templates/part/detail.html:381
+#: part/templates/part/detail.html:356
msgid "New Supplier Part"
msgstr "Yeni Tedarikçi Parçası"
-#: company/templates/company/detail.html:37
-#: company/templates/company/detail.html:85
-#: part/templates/part/category.html:183
-msgid "Order parts"
-msgstr ""
-
-#: company/templates/company/detail.html:42
-#: company/templates/company/detail.html:90
-msgid "Delete parts"
-msgstr "Parçaları sil"
-
-#: company/templates/company/detail.html:43
-#: company/templates/company/detail.html:91
-msgid "Delete Parts"
-msgstr "Parçaları Sil"
-
-#: company/templates/company/detail.html:62 templates/InvenTree/search.html:105
-#: templates/js/translated/search.js:193
+#: company/templates/company/detail.html:41 templates/InvenTree/search.html:105
+#: templates/js/translated/search.js:151
msgid "Manufacturer Parts"
msgstr ""
-#: company/templates/company/detail.html:66
+#: company/templates/company/detail.html:45
msgid "Create new manufacturer part"
msgstr ""
-#: company/templates/company/detail.html:67 part/templates/part/detail.html:411
+#: company/templates/company/detail.html:46 part/templates/part/detail.html:376
msgid "New Manufacturer Part"
msgstr ""
-#: company/templates/company/detail.html:108
+#: company/templates/company/detail.html:65
msgid "Supplier Stock"
msgstr "Tedarikçi Stoku"
-#: company/templates/company/detail.html:118
+#: company/templates/company/detail.html:75
#: company/templates/company/sidebar.html:12
#: company/templates/company/supplier_part_sidebar.html:7
#: 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:108 part/templates/part/part_sidebar.html:35
-#: templates/InvenTree/index.html:275 templates/InvenTree/search.html:199
+#: part/templates/part/detail.html:106 part/templates/part/part_sidebar.html:35
+#: templates/InvenTree/index.html:227 templates/InvenTree/search.html:199
#: templates/InvenTree/settings/sidebar.html:55
-#: templates/js/translated/search.js:247 templates/navbar.html:50
+#: templates/js/translated/search.js:205 templates/navbar.html:50
#: users/models.py:43
msgid "Purchase Orders"
msgstr "Satın Alma Emirleri"
-#: company/templates/company/detail.html:122
+#: company/templates/company/detail.html:79
#: order/templates/order/purchase_orders.html:17
msgid "Create new purchase order"
msgstr "Yeni satın alma emri oluştur"
-#: company/templates/company/detail.html:123
+#: company/templates/company/detail.html:80
#: order/templates/order/purchase_orders.html:18
msgid "New Purchase Order"
msgstr "Yeni Satın Alma Emri"
-#: company/templates/company/detail.html:146
+#: company/templates/company/detail.html:101
#: company/templates/company/sidebar.html:21
#: 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:131 part/templates/part/part_sidebar.html:39
-#: templates/InvenTree/index.html:307 templates/InvenTree/search.html:219
+#: part/templates/part/detail.html:127 part/templates/part/part_sidebar.html:39
+#: templates/InvenTree/index.html:259 templates/InvenTree/search.html:219
#: templates/InvenTree/settings/sidebar.html:57
-#: templates/js/translated/search.js:261 templates/navbar.html:62
+#: templates/js/translated/search.js:219 templates/navbar.html:62
#: users/models.py:44
msgid "Sales Orders"
msgstr "Satış Emirleri"
-#: company/templates/company/detail.html:150
+#: company/templates/company/detail.html:105
#: order/templates/order/sales_orders.html:20
msgid "Create new sales order"
msgstr "Yeni satış emri oluştur"
-#: company/templates/company/detail.html:151
+#: company/templates/company/detail.html:106
#: order/templates/order/sales_orders.html:21
msgid "New Sales Order"
msgstr "Yeni Satış Emri"
-#: company/templates/company/detail.html:173
-#: templates/js/translated/build.js:1976
+#: company/templates/company/detail.html:126
msgid "Assigned Stock"
msgstr "Atanan Stok"
-#: company/templates/company/detail.html:191
+#: company/templates/company/detail.html:142
#: company/templates/company/sidebar.html:29
#: order/templates/order/return_order_base.html:13
#: order/templates/order/return_orders.html:8
#: order/templates/order/return_orders.html:15
#: templates/InvenTree/settings/sidebar.html:59
-#: templates/js/translated/search.js:274 templates/navbar.html:65
+#: templates/js/translated/search.js:232 templates/navbar.html:65
#: users/models.py:45
msgid "Return Orders"
msgstr ""
-#: company/templates/company/detail.html:195
+#: company/templates/company/detail.html:146
#: order/templates/order/return_orders.html:20
msgid "Create new return order"
msgstr ""
-#: company/templates/company/detail.html:196
+#: company/templates/company/detail.html:147
#: order/templates/order/return_orders.html:21
msgid "New Return Order"
msgstr ""
-#: company/templates/company/detail.html:221
+#: company/templates/company/detail.html:168
msgid "Company Notes"
msgstr ""
-#: company/templates/company/detail.html:236
+#: company/templates/company/detail.html:183
msgid "Company Contacts"
msgstr ""
-#: company/templates/company/detail.html:240
-#: company/templates/company/detail.html:241
+#: company/templates/company/detail.html:187
+#: company/templates/company/detail.html:188
msgid "Add Contact"
msgstr ""
+#: company/templates/company/detail.html:206
+msgid "Company addresses"
+msgstr ""
+
+#: company/templates/company/detail.html:210
+#: company/templates/company/detail.html:211
+msgid "Add Address"
+msgstr ""
+
#: company/templates/company/index.html:8
msgid "Supplier List"
msgstr ""
@@ -4050,17 +4111,17 @@ msgstr "Üreticiler"
#: company/templates/company/manufacturer_part.html:35
#: company/templates/company/supplier_part.html:228
-#: part/templates/part/detail.html:111 part/templates/part/part_base.html:85
+#: part/templates/part/detail.html:109 part/templates/part/part_base.html:85
msgid "Order part"
msgstr "Parça siparişi"
#: company/templates/company/manufacturer_part.html:39
-#: templates/js/translated/company.js:1001
+#: templates/js/translated/company.js:1374
msgid "Edit manufacturer part"
msgstr ""
#: company/templates/company/manufacturer_part.html:43
-#: templates/js/translated/company.js:1002
+#: templates/js/translated/company.js:1375
msgid "Delete manufacturer part"
msgstr ""
@@ -4080,40 +4141,22 @@ msgstr ""
msgid "Suppliers"
msgstr ""
-#: company/templates/company/manufacturer_part.html:136
-#: part/templates/part/detail.html:392
-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:393 part/templates/part/detail.html:423
-#: templates/js/translated/forms.js:506 templates/js/translated/helpers.js:105
-#: templates/js/translated/part.js:370 templates/js/translated/pricing.js:629
-#: templates/js/translated/stock.js:216 users/models.py:247
-msgid "Delete"
-msgstr ""
-
-#: company/templates/company/manufacturer_part.html:166
+#: company/templates/company/manufacturer_part.html:156
#: company/templates/company/manufacturer_part_sidebar.html:5
#: part/templates/part/category_sidebar.html:20
-#: part/templates/part/detail.html:208 part/templates/part/part_sidebar.html:8
+#: part/templates/part/detail.html:195 part/templates/part/part_sidebar.html:8
msgid "Parameters"
msgstr ""
-#: company/templates/company/manufacturer_part.html:170
-#: part/templates/part/detail.html:213
+#: company/templates/company/manufacturer_part.html:160
+#: part/templates/part/detail.html:200
#: templates/InvenTree/settings/category.html:12
#: templates/InvenTree/settings/part_parameters.html:12
msgid "New Parameter"
msgstr ""
-#: company/templates/company/manufacturer_part.html:183
-msgid "Delete parameters"
-msgstr ""
-
-#: company/templates/company/manufacturer_part.html:226
-#: templates/js/translated/part.js:1396
+#: company/templates/company/manufacturer_part.html:206
+#: templates/js/translated/part.js:1395
msgid "Add Parameter"
msgstr ""
@@ -4137,23 +4180,28 @@ msgstr ""
msgid "Contacts"
msgstr ""
+#: company/templates/company/sidebar.html:35
+msgid "Addresses"
+msgstr ""
+
#: company/templates/company/supplier_part.html:7
#: company/templates/company/supplier_part.html:24 stock/models.py:684
#: stock/templates/stock/item_base.html:234
-#: templates/js/translated/company.js:1210
-#: templates/js/translated/purchase_order.js:747
-#: templates/js/translated/stock.js:2016
+#: templates/js/translated/company.js:1631
+#: templates/js/translated/purchase_order.js:758
+#: templates/js/translated/stock.js:2173
msgid "Supplier Part"
msgstr "Tedarikçi Parçası"
#: company/templates/company/supplier_part.html:51
+#: templates/js/translated/company.js:1557
msgid "Supplier part actions"
msgstr ""
#: company/templates/company/supplier_part.html:56
#: company/templates/company/supplier_part.html:57
#: company/templates/company/supplier_part.html:229
-#: part/templates/part/detail.html:112
+#: part/templates/part/detail.html:110
msgid "Order Part"
msgstr ""
@@ -4164,13 +4212,13 @@ msgstr ""
#: company/templates/company/supplier_part.html:64
#: company/templates/company/supplier_part.html:65
-#: templates/js/translated/company.js:283
+#: templates/js/translated/company.js:293
msgid "Edit Supplier Part"
msgstr ""
#: company/templates/company/supplier_part.html:69
#: company/templates/company/supplier_part.html:70
-#: templates/js/translated/company.js:258
+#: templates/js/translated/company.js:268
msgid "Duplicate Supplier Part"
msgstr ""
@@ -4197,7 +4245,7 @@ msgstr ""
#: company/templates/company/supplier_part.html:211
#: part/templates/part/detail.html:25 stock/templates/stock/location.html:198
-#: templates/js/translated/stock.js:504
+#: templates/js/translated/stock.js:503
msgid "New Stock Item"
msgstr ""
@@ -4205,37 +4253,37 @@ msgstr ""
msgid "Supplier Part Orders"
msgstr "Tedarikçi Parçası Emirleri"
-#: company/templates/company/supplier_part.html:249
+#: company/templates/company/supplier_part.html:247
msgid "Pricing Information"
msgstr "Fiyat Bilgisi"
-#: company/templates/company/supplier_part.html:254
-#: templates/js/translated/company.js:387
+#: company/templates/company/supplier_part.html:252
+#: templates/js/translated/company.js:397
#: templates/js/translated/pricing.js:684
msgid "Add Price Break"
msgstr ""
-#: company/templates/company/supplier_part.html:281
+#: company/templates/company/supplier_part.html:277
msgid "Supplier Part QR Code"
msgstr ""
-#: company/templates/company/supplier_part.html:292
+#: company/templates/company/supplier_part.html:288
msgid "Link Barcode to Supplier Part"
msgstr ""
-#: company/templates/company/supplier_part.html:365
+#: company/templates/company/supplier_part.html:361
msgid "Update Part Availability"
msgstr ""
#: company/templates/company/supplier_part_sidebar.html:5 part/tasks.py:293
-#: part/templates/part/category.html:199
+#: part/templates/part/category.html:182
#: part/templates/part/category_sidebar.html:17 stock/admin.py:47
-#: stock/templates/stock/location.html:168
+#: stock/serializers.py:662 stock/templates/stock/location.html:168
#: stock/templates/stock/location.html:182
#: stock/templates/stock/location.html:194
#: stock/templates/stock/location_sidebar.html:7
-#: templates/InvenTree/search.html:155 templates/js/translated/part.js:1034
-#: templates/js/translated/search.js:214 templates/js/translated/stock.js:2514
+#: templates/InvenTree/search.html:155 templates/js/translated/part.js:1033
+#: templates/js/translated/search.js:172 templates/js/translated/stock.js:2645
#: users/models.py:41
msgid "Stock Items"
msgstr "Stok Kalemleri"
@@ -4261,7 +4309,7 @@ msgstr "Müşteriler"
msgid "New Customer"
msgstr "Yeni Müşteri"
-#: company/views.py:52 templates/js/translated/search.js:234
+#: company/views.py:52 templates/js/translated/search.js:192
msgid "Companies"
msgstr "Şirketler"
@@ -4269,72 +4317,76 @@ msgstr "Şirketler"
msgid "New Company"
msgstr "Yeni Şirket"
-#: label/models.py:104
+#: label/models.py:112
msgid "Label name"
msgstr "Etiket adı"
-#: label/models.py:111
+#: label/models.py:119
msgid "Label description"
msgstr "Etiket tanımı"
-#: label/models.py:118
+#: label/models.py:126
msgid "Label"
msgstr "Etiket"
-#: label/models.py:119
+#: label/models.py:127
msgid "Label template file"
msgstr "Etiket şablon listesi"
-#: label/models.py:125 report/models.py:273
+#: label/models.py:133 report/models.py:273
msgid "Enabled"
msgstr "Etkin"
-#: label/models.py:126
+#: label/models.py:134
msgid "Label template is enabled"
msgstr "Etiket sablonu etkinleştirildi"
-#: label/models.py:131
+#: label/models.py:139
msgid "Width [mm]"
msgstr "Genişlik [mm]"
-#: label/models.py:132
+#: label/models.py:140
msgid "Label width, specified in mm"
msgstr "Etiket genişliği mm olarak belirtilmeli"
-#: label/models.py:138
+#: label/models.py:146
msgid "Height [mm]"
msgstr "Yükseklik [mm]"
-#: label/models.py:139
+#: label/models.py:147
msgid "Label height, specified in mm"
msgstr "Etiket yüksekliği mm olarak belirtilmeli"
-#: label/models.py:145 report/models.py:266
+#: label/models.py:153 report/models.py:266
msgid "Filename Pattern"
msgstr "Dosya Adı Deseni"
-#: label/models.py:146
+#: label/models.py:154
msgid "Pattern for generating label filenames"
msgstr "Etiket dosya adları oluşturma için desen"
-#: label/models.py:242
+#: label/models.py:250
msgid "Query filters (comma-separated list of key=value pairs),"
msgstr ""
-#: label/models.py:243 label/models.py:284 label/models.py:312
-#: report/models.py:294 report/models.py:452 report/models.py:490
-#: report/models.py:528
+#: label/models.py:251 label/models.py:292 label/models.py:320
+#: label/models.py:356 report/models.py:294 report/models.py:454
+#: report/models.py:492 report/models.py:530
msgid "Filters"
msgstr "Filtreler"
-#: label/models.py:283
+#: label/models.py:291
msgid "Query filters (comma-separated list of key=value pairs"
msgstr ""
-#: label/models.py:311
+#: label/models.py:319
msgid "Part query filters (comma-separated value of key=value pairs)"
msgstr ""
+#: label/models.py:355
+msgid "Query filters (comma-separated list of key=value pairs)"
+msgstr ""
+
#: label/templates/label/part/part_label.html:31
#: label/templates/label/stockitem/qr.html:21
#: label/templates/label/stocklocation/qr.html:21
@@ -4352,8 +4404,8 @@ msgstr ""
#: report/templates/report/inventree_po_report_base.html:31
#: report/templates/report/inventree_so_report_base.html:31
#: templates/js/translated/order.js:327
-#: templates/js/translated/purchase_order.js:2093
-#: templates/js/translated/sales_order.js:1827
+#: templates/js/translated/purchase_order.js:2103
+#: templates/js/translated/sales_order.js:1839
msgid "Total Price"
msgstr ""
@@ -4361,30 +4413,30 @@ msgstr ""
msgid "No matching purchase order found"
msgstr ""
-#: order/api.py:1452 order/models.py:1178 order/models.py:1262
+#: order/api.py:1452 order/models.py:1191 order/models.py:1275
#: order/templates/order/order_base.html:9
#: order/templates/order/order_base.html:18
#: report/templates/report/inventree_po_report_base.html:14
#: stock/templates/stock/item_base.html:177
#: templates/email/overdue_purchase_order.html:15
-#: templates/js/translated/part.js:1718 templates/js/translated/pricing.js:790
-#: templates/js/translated/purchase_order.js:154
-#: templates/js/translated/purchase_order.js:748
-#: templates/js/translated/purchase_order.js:1637
-#: templates/js/translated/stock.js:1996 templates/js/translated/stock.js:2644
+#: templates/js/translated/part.js:1717 templates/js/translated/pricing.js:790
+#: templates/js/translated/purchase_order.js:165
+#: templates/js/translated/purchase_order.js:759
+#: templates/js/translated/purchase_order.js:1652
+#: templates/js/translated/stock.js:2153 templates/js/translated/stock.js:2775
msgid "Purchase Order"
msgstr ""
-#: order/api.py:1456 order/models.py:1909 order/models.py:1955
+#: order/api.py:1456 order/models.py:1922 order/models.py:1968
#: order/templates/order/return_order_base.html:9
#: order/templates/order/return_order_base.html:28
#: report/templates/report/inventree_return_order_report_base.html:13
-#: templates/js/translated/return_order.js:269
-#: templates/js/translated/stock.js:2678
+#: templates/js/translated/return_order.js:281
+#: templates/js/translated/stock.js:2809
msgid "Return Order"
msgstr ""
-#: order/api.py:1458 templates/js/translated/sales_order.js:1030
+#: order/api.py:1458 templates/js/translated/sales_order.js:1042
msgid "Unknown"
msgstr ""
@@ -4392,11 +4444,11 @@ msgstr ""
msgid "Total price for this order"
msgstr ""
-#: order/models.py:79 order/serializers.py:49
+#: order/models.py:79 order/serializers.py:50
msgid "Order Currency"
msgstr ""
-#: order/models.py:81 order/serializers.py:50
+#: order/models.py:81 order/serializers.py:51
msgid "Currency for this order (leave blank to use company default)"
msgstr ""
@@ -4408,492 +4460,496 @@ msgstr ""
msgid "Order description (optional)"
msgstr ""
-#: order/models.py:234
+#: order/models.py:237
msgid "Select project code for this order"
msgstr ""
-#: order/models.py:236 order/models.py:1094 order/models.py:1454
+#: order/models.py:240 order/models.py:1107 order/models.py:1467
msgid "Link to external page"
msgstr "Harici sayfaya bağlantı"
-#: order/models.py:241
+#: order/models.py:245
msgid "Expected date for order delivery. Order will be overdue after this date."
msgstr ""
-#: order/models.py:250
+#: order/models.py:254
msgid "Created By"
msgstr "Oluşturan"
-#: order/models.py:257
+#: order/models.py:261
msgid "User or group responsible for this order"
msgstr ""
-#: order/models.py:267
+#: order/models.py:271
msgid "Point of contact for this order"
msgstr ""
-#: order/models.py:360 order/models.py:766
+#: order/models.py:280
+msgid "Company address for this order"
+msgstr ""
+
+#: order/models.py:373 order/models.py:779
msgid "Order reference"
msgstr "Sipariş referansı"
-#: order/models.py:368 order/models.py:791
+#: order/models.py:381 order/models.py:804
msgid "Purchase order status"
msgstr ""
-#: order/models.py:383
+#: order/models.py:396
msgid "Company from which the items are being ordered"
msgstr ""
-#: order/models.py:391 order/templates/order/order_base.html:152
-#: templates/js/translated/purchase_order.js:1662
+#: order/models.py:404 order/templates/order/order_base.html:148
+#: templates/js/translated/purchase_order.js:1677
msgid "Supplier Reference"
msgstr ""
-#: order/models.py:391
+#: order/models.py:404
msgid "Supplier order reference code"
msgstr ""
-#: order/models.py:398
+#: order/models.py:411
msgid "received by"
msgstr ""
-#: order/models.py:403 order/models.py:1761
+#: order/models.py:416 order/models.py:1774
msgid "Issue Date"
msgstr ""
-#: order/models.py:404 order/models.py:1762
+#: order/models.py:417 order/models.py:1775
msgid "Date order was issued"
msgstr ""
-#: order/models.py:410 order/models.py:1768
+#: order/models.py:423 order/models.py:1781
msgid "Date order was completed"
msgstr ""
-#: order/models.py:445
+#: order/models.py:458
msgid "Part supplier must match PO supplier"
msgstr ""
-#: order/models.py:606
+#: order/models.py:619
msgid "Quantity must be a positive number"
msgstr ""
-#: order/models.py:780
+#: order/models.py:793
msgid "Company to which the items are being sold"
msgstr ""
-#: order/models.py:799 order/models.py:1755
+#: order/models.py:812 order/models.py:1768
msgid "Customer Reference "
msgstr ""
-#: order/models.py:799 order/models.py:1756
+#: order/models.py:812 order/models.py:1769
msgid "Customer order reference code"
msgstr ""
-#: order/models.py:801 order/models.py:1408
-#: templates/js/translated/sales_order.js:831
-#: templates/js/translated/sales_order.js:1012
+#: order/models.py:814 order/models.py:1421
+#: templates/js/translated/sales_order.js:843
+#: templates/js/translated/sales_order.js:1024
msgid "Shipment Date"
msgstr ""
-#: order/models.py:808
+#: order/models.py:821
msgid "shipped by"
msgstr ""
-#: order/models.py:857
+#: order/models.py:870
msgid "Order cannot be completed as no parts have been assigned"
msgstr ""
-#: order/models.py:861
+#: order/models.py:874
msgid "Only an open order can be marked as complete"
msgstr ""
-#: order/models.py:864 templates/js/translated/sales_order.js:491
+#: order/models.py:877 templates/js/translated/sales_order.js:503
msgid "Order cannot be completed as there are incomplete shipments"
msgstr ""
-#: order/models.py:867
+#: order/models.py:880
msgid "Order cannot be completed as there are incomplete line items"
msgstr ""
-#: order/models.py:1074
+#: order/models.py:1087
msgid "Item quantity"
msgstr ""
-#: order/models.py:1087
+#: order/models.py:1100
msgid "Line item reference"
msgstr ""
-#: order/models.py:1089
+#: order/models.py:1102
msgid "Line item notes"
msgstr ""
-#: order/models.py:1100
+#: order/models.py:1113
msgid "Target date for this line item (leave blank to use the target date from the order)"
msgstr ""
-#: order/models.py:1118
+#: order/models.py:1131
msgid "Line item description (optional)"
msgstr ""
-#: order/models.py:1123
+#: order/models.py:1136
msgid "Context"
msgstr ""
-#: order/models.py:1124
+#: order/models.py:1137
msgid "Additional context for this line"
msgstr ""
-#: order/models.py:1133
+#: order/models.py:1146
msgid "Unit price"
msgstr ""
-#: order/models.py:1163
+#: order/models.py:1176
msgid "Supplier part must match supplier"
msgstr ""
-#: order/models.py:1171
+#: order/models.py:1184
msgid "deleted"
msgstr ""
-#: order/models.py:1177 order/models.py:1262 order/models.py:1303
-#: order/models.py:1402 order/models.py:1551 order/models.py:1908
-#: order/models.py:1955 templates/js/translated/sales_order.js:1474
+#: order/models.py:1190 order/models.py:1275 order/models.py:1316
+#: order/models.py:1415 order/models.py:1564 order/models.py:1921
+#: order/models.py:1968 templates/js/translated/sales_order.js:1486
msgid "Order"
msgstr ""
-#: order/models.py:1196
+#: order/models.py:1209
msgid "Supplier part"
msgstr ""
-#: order/models.py:1203 order/templates/order/order_base.html:200
-#: templates/js/translated/part.js:1841 templates/js/translated/part.js:1872
-#: templates/js/translated/purchase_order.js:1276
-#: templates/js/translated/purchase_order.js:2137
-#: templates/js/translated/return_order.js:748
-#: templates/js/translated/table_filters.js:90
-#: templates/js/translated/table_filters.js:515
+#: order/models.py:1216 order/templates/order/order_base.html:196
+#: templates/js/translated/part.js:1840 templates/js/translated/part.js:1871
+#: templates/js/translated/purchase_order.js:1291
+#: templates/js/translated/purchase_order.js:2147
+#: templates/js/translated/return_order.js:760
+#: templates/js/translated/table_filters.js:96
+#: templates/js/translated/table_filters.js:537
msgid "Received"
msgstr ""
-#: order/models.py:1204
+#: order/models.py:1217
msgid "Number of items received"
msgstr ""
-#: order/models.py:1211 stock/models.py:823 stock/serializers.py:252
+#: order/models.py:1224 stock/models.py:823 stock/serializers.py:314
#: stock/templates/stock/item_base.html:184
-#: templates/js/translated/stock.js:2047
+#: templates/js/translated/stock.js:2204
msgid "Purchase Price"
msgstr ""
-#: order/models.py:1212
+#: order/models.py:1225
msgid "Unit purchase price"
msgstr ""
-#: order/models.py:1225
+#: order/models.py:1238
msgid "Where does the Purchaser want this item to be stored?"
msgstr ""
-#: order/models.py:1291
+#: order/models.py:1304
msgid "Virtual part cannot be assigned to a sales order"
msgstr ""
-#: order/models.py:1296
+#: order/models.py:1309
msgid "Only salable parts can be assigned to a sales order"
msgstr ""
-#: order/models.py:1322 part/templates/part/part_pricing.html:107
+#: order/models.py:1335 part/templates/part/part_pricing.html:107
#: part/templates/part/prices.html:128 templates/js/translated/pricing.js:943
msgid "Sale Price"
msgstr ""
-#: order/models.py:1323
+#: order/models.py:1336
msgid "Unit sale price"
msgstr ""
-#: order/models.py:1333
+#: order/models.py:1346
msgid "Shipped quantity"
msgstr ""
-#: order/models.py:1409
+#: order/models.py:1422
msgid "Date of shipment"
msgstr ""
-#: order/models.py:1414 templates/js/translated/sales_order.js:1024
+#: order/models.py:1427 templates/js/translated/sales_order.js:1036
msgid "Delivery Date"
msgstr ""
-#: order/models.py:1415
+#: order/models.py:1428
msgid "Date of delivery of shipment"
msgstr ""
-#: order/models.py:1422
+#: order/models.py:1435
msgid "Checked By"
msgstr ""
-#: order/models.py:1423
+#: order/models.py:1436
msgid "User who checked this shipment"
msgstr ""
-#: order/models.py:1430 order/models.py:1627 order/serializers.py:1248
-#: order/serializers.py:1376 templates/js/translated/model_renderers.js:415
+#: order/models.py:1443 order/models.py:1640 order/serializers.py:1254
+#: order/serializers.py:1382 templates/js/translated/model_renderers.js:429
msgid "Shipment"
msgstr ""
-#: order/models.py:1431
+#: order/models.py:1444
msgid "Shipment number"
msgstr ""
-#: order/models.py:1439
+#: order/models.py:1452
msgid "Tracking Number"
msgstr ""
-#: order/models.py:1440
+#: order/models.py:1453
msgid "Shipment tracking information"
msgstr ""
-#: order/models.py:1447
+#: order/models.py:1460
msgid "Invoice Number"
msgstr ""
-#: order/models.py:1448
+#: order/models.py:1461
msgid "Reference number for associated invoice"
msgstr ""
-#: order/models.py:1470
+#: order/models.py:1483
msgid "Shipment has already been sent"
msgstr ""
-#: order/models.py:1473
+#: order/models.py:1486
msgid "Shipment has no allocated stock items"
msgstr ""
-#: order/models.py:1586 order/models.py:1588
+#: order/models.py:1599 order/models.py:1601
msgid "Stock item has not been assigned"
msgstr ""
-#: order/models.py:1592
+#: order/models.py:1605
msgid "Cannot allocate stock item to a line with a different part"
msgstr ""
-#: order/models.py:1594
+#: order/models.py:1607
msgid "Cannot allocate stock to a line without a part"
msgstr ""
-#: order/models.py:1597
+#: order/models.py:1610
msgid "Allocation quantity cannot exceed stock quantity"
msgstr "Tahsis miktarı stok miktarını aşamaz"
-#: order/models.py:1607 order/serializers.py:1110
+#: order/models.py:1620 order/serializers.py:1116
msgid "Quantity must be 1 for serialized stock item"
msgstr "Seri numaralı stok kalemi için miktar bir olmalı"
-#: order/models.py:1610
+#: order/models.py:1623
msgid "Sales order does not match shipment"
msgstr ""
-#: order/models.py:1611
+#: order/models.py:1624
msgid "Shipment does not match sales order"
msgstr ""
-#: order/models.py:1619
+#: order/models.py:1632
msgid "Line"
msgstr ""
-#: order/models.py:1628
+#: order/models.py:1641
msgid "Sales order shipment reference"
msgstr ""
-#: order/models.py:1641 order/models.py:1916
-#: templates/js/translated/return_order.js:706
+#: order/models.py:1654 order/models.py:1929
+#: templates/js/translated/return_order.js:718
msgid "Item"
msgstr ""
-#: order/models.py:1642
+#: order/models.py:1655
msgid "Select stock item to allocate"
msgstr ""
-#: order/models.py:1645
+#: order/models.py:1658
msgid "Enter stock allocation quantity"
msgstr "Stok tahsis miktarını girin"
-#: order/models.py:1725
+#: order/models.py:1738
msgid "Return Order reference"
msgstr ""
-#: order/models.py:1739
+#: order/models.py:1752
msgid "Company from which items are being returned"
msgstr ""
-#: order/models.py:1750
+#: order/models.py:1763
msgid "Return order status"
msgstr ""
-#: order/models.py:1901
+#: order/models.py:1914
msgid "Only serialized items can be assigned to a Return Order"
msgstr ""
-#: order/models.py:1917
+#: order/models.py:1930
msgid "Select item to return from customer"
msgstr ""
-#: order/models.py:1922
+#: order/models.py:1935
msgid "Received Date"
msgstr ""
-#: order/models.py:1923
+#: order/models.py:1936
msgid "The date this this return item was received"
msgstr ""
-#: order/models.py:1934 templates/js/translated/return_order.js:717
-#: templates/js/translated/table_filters.js:93
+#: order/models.py:1947 templates/js/translated/return_order.js:729
+#: templates/js/translated/table_filters.js:99
msgid "Outcome"
msgstr ""
-#: order/models.py:1934
+#: order/models.py:1947
msgid "Outcome for this line item"
msgstr ""
-#: order/models.py:1940
+#: order/models.py:1953
msgid "Cost associated with return or repair for this line item"
msgstr ""
-#: order/serializers.py:247
+#: order/serializers.py:253
msgid "Order cannot be cancelled"
msgstr ""
-#: order/serializers.py:262 order/serializers.py:1128
+#: order/serializers.py:268 order/serializers.py:1134
msgid "Allow order to be closed with incomplete line items"
msgstr ""
-#: order/serializers.py:273 order/serializers.py:1139
+#: order/serializers.py:279 order/serializers.py:1145
msgid "Order has incomplete line items"
msgstr ""
-#: order/serializers.py:386
+#: order/serializers.py:392
msgid "Order is not open"
msgstr ""
-#: order/serializers.py:404
+#: order/serializers.py:410
msgid "Purchase price currency"
msgstr ""
-#: order/serializers.py:422
+#: order/serializers.py:428
msgid "Supplier part must be specified"
msgstr ""
-#: order/serializers.py:427
+#: order/serializers.py:433
msgid "Purchase order must be specified"
msgstr ""
-#: order/serializers.py:433
+#: order/serializers.py:439
msgid "Supplier must match purchase order"
msgstr ""
-#: order/serializers.py:434
+#: order/serializers.py:440
msgid "Purchase order must match supplier"
msgstr ""
-#: order/serializers.py:472 order/serializers.py:1216
+#: order/serializers.py:478 order/serializers.py:1222
msgid "Line Item"
msgstr ""
-#: order/serializers.py:478
+#: order/serializers.py:484
msgid "Line item does not match purchase order"
msgstr ""
-#: order/serializers.py:488 order/serializers.py:607 order/serializers.py:1589
+#: order/serializers.py:494 order/serializers.py:613 order/serializers.py:1595
msgid "Select destination location for received items"
msgstr ""
-#: order/serializers.py:507 templates/js/translated/purchase_order.js:1100
+#: order/serializers.py:513 templates/js/translated/purchase_order.js:1115
msgid "Enter batch code for incoming stock items"
msgstr ""
-#: order/serializers.py:515 templates/js/translated/purchase_order.js:1124
+#: order/serializers.py:521 templates/js/translated/purchase_order.js:1139
msgid "Enter serial numbers for incoming stock items"
msgstr ""
-#: order/serializers.py:528 templates/js/translated/barcode.js:52
+#: order/serializers.py:534 templates/js/translated/barcode.js:52
msgid "Barcode"
msgstr ""
-#: order/serializers.py:529
+#: order/serializers.py:535
msgid "Scanned barcode"
msgstr ""
-#: order/serializers.py:545
+#: order/serializers.py:551
msgid "Barcode is already in use"
msgstr ""
-#: order/serializers.py:569
+#: order/serializers.py:575
msgid "An integer quantity must be provided for trackable parts"
msgstr ""
-#: order/serializers.py:623 order/serializers.py:1604
+#: order/serializers.py:629 order/serializers.py:1610
msgid "Line items must be provided"
msgstr ""
-#: order/serializers.py:640
+#: order/serializers.py:646
msgid "Destination location must be specified"
msgstr ""
-#: order/serializers.py:651
+#: order/serializers.py:657
msgid "Supplied barcode values must be unique"
msgstr ""
-#: order/serializers.py:950
+#: order/serializers.py:956
msgid "Sale price currency"
msgstr ""
-#: order/serializers.py:1007
+#: order/serializers.py:1013
msgid "No shipment details provided"
msgstr ""
-#: order/serializers.py:1071 order/serializers.py:1225
+#: order/serializers.py:1077 order/serializers.py:1231
msgid "Line item is not associated with this order"
msgstr ""
-#: order/serializers.py:1093
+#: order/serializers.py:1099
msgid "Quantity must be positive"
msgstr ""
-#: order/serializers.py:1238
+#: order/serializers.py:1244
msgid "Enter serial numbers to allocate"
msgstr ""
-#: order/serializers.py:1260 order/serializers.py:1384
+#: order/serializers.py:1266 order/serializers.py:1390
msgid "Shipment has already been shipped"
msgstr ""
-#: order/serializers.py:1263 order/serializers.py:1387
+#: order/serializers.py:1269 order/serializers.py:1393
msgid "Shipment is not associated with this order"
msgstr ""
-#: order/serializers.py:1317
+#: order/serializers.py:1323
msgid "No match found for the following serial numbers"
msgstr ""
-#: order/serializers.py:1327
+#: order/serializers.py:1333
msgid "The following serial numbers are already allocated"
msgstr ""
-#: order/serializers.py:1555
+#: order/serializers.py:1561
msgid "Return order line item"
msgstr ""
-#: order/serializers.py:1562
+#: order/serializers.py:1568
msgid "Line item does not match return order"
msgstr ""
-#: order/serializers.py:1565
+#: order/serializers.py:1571
msgid "Line item has already been received"
msgstr ""
-#: order/serializers.py:1597
+#: order/serializers.py:1603
msgid "Items can only be received against orders which are in progress"
msgstr ""
-#: order/serializers.py:1678
+#: order/serializers.py:1684
msgid "Line price currency"
msgstr ""
@@ -4957,82 +5013,74 @@ msgid "Issue Order"
msgstr ""
#: order/templates/order/order_base.html:83
-msgid "Receive items"
-msgstr ""
-
-#: order/templates/order/order_base.html:85
-msgid "Receive Items"
-msgstr ""
-
-#: order/templates/order/order_base.html:87
#: order/templates/order/return_order_base.html:87
msgid "Mark order as complete"
msgstr "Siparişi tamamlandı olarak işaretle"
-#: order/templates/order/order_base.html:88
+#: order/templates/order/order_base.html:84
#: order/templates/order/return_order_base.html:88
#: order/templates/order/sales_order_base.html:94
msgid "Complete Order"
msgstr ""
-#: order/templates/order/order_base.html:95
+#: order/templates/order/order_base.html:91
msgid "Supplier part thumbnail"
msgstr ""
-#: order/templates/order/order_base.html:110
+#: order/templates/order/order_base.html:106
#: order/templates/order/return_order_base.html:102
#: order/templates/order/sales_order_base.html:107
msgid "Order Reference"
msgstr ""
-#: order/templates/order/order_base.html:115
+#: order/templates/order/order_base.html:111
#: order/templates/order/return_order_base.html:107
#: order/templates/order/sales_order_base.html:112
msgid "Order Description"
msgstr ""
-#: order/templates/order/order_base.html:122
+#: order/templates/order/order_base.html:118
#: order/templates/order/return_order_base.html:114
#: order/templates/order/sales_order_base.html:119
msgid "Order Status"
msgstr ""
-#: order/templates/order/order_base.html:145
+#: order/templates/order/order_base.html:141
msgid "No suppplier information available"
msgstr ""
-#: order/templates/order/order_base.html:158
+#: order/templates/order/order_base.html:154
#: order/templates/order/sales_order_base.html:158
msgid "Completed Line Items"
msgstr ""
-#: order/templates/order/order_base.html:164
+#: order/templates/order/order_base.html:160
#: order/templates/order/sales_order_base.html:164
#: order/templates/order/sales_order_base.html:174
msgid "Incomplete"
msgstr ""
-#: order/templates/order/order_base.html:183
+#: order/templates/order/order_base.html:179
#: order/templates/order/return_order_base.html:158
#: report/templates/report/inventree_build_order_base.html:121
msgid "Issued"
msgstr ""
-#: order/templates/order/order_base.html:221
+#: order/templates/order/order_base.html:224
msgid "Total cost"
msgstr ""
-#: order/templates/order/order_base.html:225
-#: order/templates/order/return_order_base.html:193
-#: order/templates/order/sales_order_base.html:233
+#: order/templates/order/order_base.html:228
+#: order/templates/order/return_order_base.html:200
+#: order/templates/order/sales_order_base.html:240
msgid "Total cost could not be calculated"
msgstr ""
-#: order/templates/order/order_base.html:331
+#: order/templates/order/order_base.html:318
msgid "Purchase Order QR Code"
msgstr ""
-#: order/templates/order/order_base.html:343
+#: order/templates/order/order_base.html:330
msgid "Link Barcode to Purchase Order"
msgstr ""
@@ -5085,13 +5133,13 @@ msgstr ""
#: part/templates/part/import_wizard/ajax_match_references.html:42
#: part/templates/part/import_wizard/match_fields.html:71
#: part/templates/part/import_wizard/match_references.html:49
-#: templates/js/translated/bom.js:132 templates/js/translated/build.js:512
-#: templates/js/translated/build.js:2348
-#: templates/js/translated/purchase_order.js:692
-#: templates/js/translated/purchase_order.js:1206
-#: templates/js/translated/return_order.js:494
-#: templates/js/translated/sales_order.js:1097
-#: templates/js/translated/stock.js:681 templates/js/translated/stock.js:850
+#: templates/js/translated/bom.js:133 templates/js/translated/build.js:518
+#: templates/js/translated/build.js:1555
+#: templates/js/translated/purchase_order.js:703
+#: templates/js/translated/purchase_order.js:1221
+#: templates/js/translated/return_order.js:506
+#: templates/js/translated/sales_order.js:1109
+#: templates/js/translated/stock.js:680 templates/js/translated/stock.js:849
#: templates/patterns/wizard/match_fields.html:70
msgid "Remove row"
msgstr ""
@@ -5152,9 +5200,9 @@ msgstr ""
#: order/templates/order/purchase_order_detail.html:27
#: order/templates/order/return_order_detail.html:24
#: order/templates/order/sales_order_detail.html:24
-#: templates/js/translated/purchase_order.js:419
-#: templates/js/translated/return_order.js:447
-#: templates/js/translated/sales_order.js:222
+#: templates/js/translated/purchase_order.js:430
+#: templates/js/translated/return_order.js:459
+#: templates/js/translated/sales_order.js:234
msgid "Add Line Item"
msgstr ""
@@ -5165,30 +5213,25 @@ msgstr ""
msgid "Receive Line Items"
msgstr ""
-#: order/templates/order/purchase_order_detail.html:49
#: order/templates/order/purchase_order_detail.html:50
-msgid "Delete Line Items"
-msgstr ""
-
-#: order/templates/order/purchase_order_detail.html:66
-#: order/templates/order/return_order_detail.html:47
-#: order/templates/order/sales_order_detail.html:43
+#: order/templates/order/return_order_detail.html:45
+#: order/templates/order/sales_order_detail.html:41
msgid "Extra Lines"
msgstr ""
-#: order/templates/order/purchase_order_detail.html:72
-#: order/templates/order/return_order_detail.html:53
-#: order/templates/order/sales_order_detail.html:49
+#: order/templates/order/purchase_order_detail.html:56
+#: order/templates/order/return_order_detail.html:51
+#: order/templates/order/sales_order_detail.html:47
msgid "Add Extra Line"
msgstr ""
-#: order/templates/order/purchase_order_detail.html:92
+#: order/templates/order/purchase_order_detail.html:74
msgid "Received Items"
msgstr ""
-#: order/templates/order/purchase_order_detail.html:117
-#: order/templates/order/return_order_detail.html:89
-#: order/templates/order/sales_order_detail.html:149
+#: order/templates/order/purchase_order_detail.html:99
+#: order/templates/order/return_order_detail.html:85
+#: order/templates/order/sales_order_detail.html:139
msgid "Order Notes"
msgstr "Sipariş Notları"
@@ -5208,29 +5251,29 @@ msgstr ""
#: order/templates/order/return_order_base.html:139
#: order/templates/order/sales_order_base.html:152
-#: templates/js/translated/return_order.js:297
-#: templates/js/translated/sales_order.js:785
+#: templates/js/translated/return_order.js:309
+#: templates/js/translated/sales_order.js:797
msgid "Customer Reference"
msgstr ""
-#: order/templates/order/return_order_base.html:189
-#: order/templates/order/sales_order_base.html:229
+#: order/templates/order/return_order_base.html:196
+#: order/templates/order/sales_order_base.html:236
#: part/templates/part/part_pricing.html:32
#: part/templates/part/part_pricing.html:58
#: part/templates/part/part_pricing.html:99
#: part/templates/part/part_pricing.html:114
-#: templates/js/translated/part.js:1046
-#: templates/js/translated/purchase_order.js:1712
-#: templates/js/translated/return_order.js:369
-#: templates/js/translated/sales_order.js:843
+#: templates/js/translated/part.js:1045
+#: templates/js/translated/purchase_order.js:1727
+#: templates/js/translated/return_order.js:381
+#: templates/js/translated/sales_order.js:855
msgid "Total Cost"
msgstr "Toplam Maliyet"
-#: order/templates/order/return_order_base.html:257
+#: order/templates/order/return_order_base.html:264
msgid "Return Order QR Code"
msgstr ""
-#: order/templates/order/return_order_base.html:269
+#: order/templates/order/return_order_base.html:276
msgid "Link Barcode to Return Order"
msgstr ""
@@ -5248,7 +5291,7 @@ msgid "Ship Items"
msgstr ""
#: order/templates/order/sales_order_base.html:93
-#: templates/js/translated/sales_order.js:469
+#: templates/js/translated/sales_order.js:481
msgid "Complete Sales Order"
msgstr ""
@@ -5257,16 +5300,16 @@ msgid "This Sales Order has not been fully allocated"
msgstr ""
#: order/templates/order/sales_order_base.html:170
-#: order/templates/order/sales_order_detail.html:105
+#: order/templates/order/sales_order_detail.html:99
#: order/templates/order/so_sidebar.html:11
msgid "Completed Shipments"
msgstr ""
-#: order/templates/order/sales_order_base.html:306
+#: order/templates/order/sales_order_base.html:313
msgid "Sales Order QR Code"
msgstr ""
-#: order/templates/order/sales_order_base.html:318
+#: order/templates/order/sales_order_base.html:325
msgid "Link Barcode to Sales Order"
msgstr ""
@@ -5274,18 +5317,17 @@ msgstr ""
msgid "Sales Order Items"
msgstr ""
-#: order/templates/order/sales_order_detail.html:71
-#: order/templates/order/so_sidebar.html:8 templates/InvenTree/index.html:332
+#: order/templates/order/sales_order_detail.html:67
+#: order/templates/order/so_sidebar.html:8 templates/InvenTree/index.html:284
msgid "Pending Shipments"
msgstr ""
-#: order/templates/order/sales_order_detail.html:75
-#: templates/attachment_table.html:6 templates/js/translated/bom.js:1236
-#: templates/js/translated/build.js:2249
+#: order/templates/order/sales_order_detail.html:71
+#: templates/js/translated/bom.js:1256 templates/js/translated/filters.js:297
msgid "Actions"
msgstr "İşlemler"
-#: order/templates/order/sales_order_detail.html:84
+#: order/templates/order/sales_order_detail.html:80
msgid "New Shipment"
msgstr ""
@@ -5311,12 +5353,12 @@ msgstr ""
msgid "Updated {part} unit-price to {price} and quantity to {qty}"
msgstr ""
-#: part/admin.py:33 part/admin.py:273 part/models.py:3667 part/tasks.py:288
+#: part/admin.py:33 part/admin.py:273 part/models.py:3716 part/tasks.py:288
#: stock/admin.py:101
msgid "Part ID"
msgstr ""
-#: part/admin.py:34 part/admin.py:275 part/models.py:3671 part/tasks.py:289
+#: part/admin.py:34 part/admin.py:275 part/models.py:3720 part/tasks.py:289
#: stock/admin.py:102
msgid "Part Name"
msgstr ""
@@ -5325,19 +5367,19 @@ msgstr ""
msgid "Part Description"
msgstr ""
-#: part/admin.py:36 part/models.py:889 part/templates/part/part_base.html:271
-#: templates/js/translated/part.js:1200 templates/js/translated/part.js:2233
-#: templates/js/translated/stock.js:1795
+#: part/admin.py:36 part/models.py:890 part/templates/part/part_base.html:271
+#: templates/js/translated/part.js:1199 templates/js/translated/part.js:2309
+#: templates/js/translated/stock.js:1952
msgid "IPN"
msgstr "DPN"
-#: part/admin.py:37 part/models.py:896 part/templates/part/part_base.html:279
-#: report/models.py:179 templates/js/translated/part.js:1205
-#: templates/js/translated/part.js:2239
+#: part/admin.py:37 part/models.py:897 part/templates/part/part_base.html:279
+#: report/models.py:179 templates/js/translated/part.js:1204
+#: templates/js/translated/part.js:2315
msgid "Revision"
msgstr "Revizyon"
-#: part/admin.py:38 part/admin.py:198 part/models.py:875
+#: part/admin.py:38 part/admin.py:198 part/models.py:876
#: part/templates/part/category.html:93 part/templates/part/part_base.html:300
msgid "Keywords"
msgstr "Anahtar kelimeler"
@@ -5358,24 +5400,24 @@ msgstr ""
msgid "Default Supplier ID"
msgstr ""
-#: part/admin.py:46 part/models.py:864 part/templates/part/part_base.html:179
+#: part/admin.py:46 part/models.py:865 part/templates/part/part_base.html:179
msgid "Variant Of"
msgstr "Çeşidi"
-#: part/admin.py:47 part/models.py:980 part/templates/part/part_base.html:205
+#: part/admin.py:47 part/models.py:981 part/templates/part/part_base.html:205
msgid "Minimum Stock"
msgstr "Minimum Stok"
#: part/admin.py:61 part/templates/part/part_base.html:199
-#: templates/js/translated/company.js:1299
-#: templates/js/translated/table_filters.js:301
+#: templates/js/translated/company.js:1720
+#: templates/js/translated/table_filters.js:307
msgid "In Stock"
msgstr ""
#: part/admin.py:62 part/bom.py:178 part/templates/part/part_base.html:212
-#: templates/js/translated/bom.js:1167 templates/js/translated/build.js:2191
-#: templates/js/translated/part.js:687 templates/js/translated/part.js:2123
-#: templates/js/translated/table_filters.js:140
+#: templates/js/translated/bom.js:1187 templates/js/translated/build.js:2541
+#: templates/js/translated/part.js:686 templates/js/translated/part.js:2122
+#: templates/js/translated/table_filters.js:146
msgid "On Order"
msgstr ""
@@ -5383,23 +5425,16 @@ msgstr ""
msgid "Used In"
msgstr ""
-#: part/admin.py:64 templates/js/translated/build.js:2203
-#: templates/js/translated/build.js:2465 templates/js/translated/build.js:3052
-#: templates/js/translated/sales_order.js:1906
-#: templates/js/translated/table_filters.js:488
-msgid "Allocated"
-msgstr ""
-
#: part/admin.py:65 part/templates/part/part_base.html:243 stock/admin.py:124
-#: templates/js/translated/part.js:692 templates/js/translated/part.js:2127
+#: templates/js/translated/part.js:691 templates/js/translated/part.js:2126
msgid "Building"
msgstr ""
-#: part/admin.py:66 part/models.py:2930 templates/js/translated/part.js:943
+#: part/admin.py:66 part/models.py:2964 templates/js/translated/part.js:942
msgid "Minimum Cost"
msgstr ""
-#: part/admin.py:67 part/models.py:2936 templates/js/translated/part.js:953
+#: part/admin.py:67 part/models.py:2970 templates/js/translated/part.js:952
msgid "Maximum Cost"
msgstr ""
@@ -5416,13 +5451,13 @@ msgstr ""
msgid "Category Path"
msgstr ""
-#: part/admin.py:202 part/models.py:392 part/templates/part/cat_link.html:3
-#: part/templates/part/category.html:23 part/templates/part/category.html:140
-#: part/templates/part/category.html:160
+#: part/admin.py:202 part/models.py:393 part/serializers.py:307
+#: part/templates/part/cat_link.html:3 part/templates/part/category.html:23
+#: part/templates/part/category.html:140 part/templates/part/category.html:160
#: part/templates/part/category_sidebar.html:9
-#: templates/InvenTree/index.html:86 templates/InvenTree/search.html:84
+#: templates/InvenTree/index.html:36 templates/InvenTree/search.html:84
#: templates/InvenTree/settings/sidebar.html:45
-#: templates/js/translated/part.js:2754 templates/js/translated/search.js:172
+#: templates/js/translated/part.js:2739 templates/js/translated/search.js:130
#: templates/navbar.html:24 users/models.py:38
msgid "Parts"
msgstr "Parçalar"
@@ -5439,7 +5474,7 @@ msgstr ""
msgid "Parent IPN"
msgstr ""
-#: part/admin.py:274 part/models.py:3675
+#: part/admin.py:274 part/models.py:3724
msgid "Part IPN"
msgstr ""
@@ -5453,35 +5488,35 @@ msgstr ""
msgid "Maximum Price"
msgstr ""
-#: part/api.py:498
+#: part/api.py:501
msgid "Incoming Purchase Order"
msgstr ""
-#: part/api.py:518
+#: part/api.py:521
msgid "Outgoing Sales Order"
msgstr ""
-#: part/api.py:536
+#: part/api.py:539
msgid "Stock produced by Build Order"
msgstr ""
-#: part/api.py:622
+#: part/api.py:625
msgid "Stock required for Build Order"
msgstr ""
-#: part/api.py:770
+#: part/api.py:773
msgid "Valid"
msgstr ""
-#: part/api.py:771
+#: part/api.py:774
msgid "Validate entire Bill of Materials"
msgstr ""
-#: part/api.py:777
+#: part/api.py:780
msgid "This option must be selected"
msgstr ""
-#: part/bom.py:175 part/models.py:127 part/models.py:923
+#: part/bom.py:175 part/models.py:128 part/models.py:924
#: part/templates/part/category.html:115 part/templates/part/part_base.html:369
msgid "Default Location"
msgstr "Varsayılan Konum"
@@ -5491,7 +5526,7 @@ msgid "Total Stock"
msgstr ""
#: part/bom.py:177 part/templates/part/part_base.html:194
-#: templates/js/translated/sales_order.js:1873
+#: templates/js/translated/sales_order.js:1885
msgid "Available Stock"
msgstr ""
@@ -5499,916 +5534,913 @@ msgstr ""
msgid "Input quantity for price calculation"
msgstr ""
-#: part/models.py:75 part/models.py:3616 part/templates/part/category.html:16
+#: part/models.py:76 part/models.py:3665 part/templates/part/category.html:16
#: part/templates/part/part_app_base.html:10
msgid "Part Category"
msgstr ""
-#: part/models.py:76 part/templates/part/category.html:135
-#: templates/InvenTree/search.html:97 templates/js/translated/search.js:200
+#: part/models.py:77 part/templates/part/category.html:135
+#: templates/InvenTree/search.html:97 templates/js/translated/search.js:158
#: users/models.py:37
msgid "Part Categories"
msgstr "Parça Kategorileri"
-#: part/models.py:128
+#: part/models.py:129
msgid "Default location for parts in this category"
msgstr "Bu kategori içindeki parçalar için varsayılan konum"
-#: part/models.py:133 stock/models.py:124 templates/js/translated/stock.js:2520
-#: templates/js/translated/table_filters.js:209
-#: templates/js/translated/table_filters.js:229
+#: part/models.py:134 stock/models.py:124 templates/js/translated/stock.js:2651
+#: templates/js/translated/table_filters.js:215
+#: templates/js/translated/table_filters.js:235
msgid "Structural"
msgstr ""
-#: part/models.py:135
+#: part/models.py:136
msgid "Parts may not be directly assigned to a structural category, but may be assigned to child categories."
msgstr ""
-#: part/models.py:139
+#: part/models.py:140
msgid "Default keywords"
msgstr ""
-#: part/models.py:139
+#: part/models.py:140
msgid "Default keywords for parts in this category"
msgstr ""
-#: part/models.py:144 stock/models.py:113
+#: part/models.py:145 stock/models.py:113
msgid "Icon"
msgstr ""
-#: part/models.py:145 stock/models.py:114
+#: part/models.py:146 stock/models.py:114
msgid "Icon (optional)"
msgstr ""
-#: part/models.py:164
+#: part/models.py:165
msgid "You cannot make this part category structural because some parts are already assigned to it!"
msgstr ""
-#: part/models.py:475
+#: part/models.py:476
msgid "Invalid choice for parent part"
msgstr ""
-#: part/models.py:517 part/models.py:529
+#: part/models.py:518 part/models.py:530
#, python-brace-format
msgid "Part '{p1}' is used in BOM for '{p2}' (recursive)"
msgstr ""
-#: part/models.py:601
+#: part/models.py:602
#, python-brace-format
msgid "IPN must match regex pattern {pat}"
msgstr "IPN regex kalıbıyla eşleşmelidir {pat}"
-#: part/models.py:672
+#: part/models.py:673
msgid "Stock item with this serial number already exists"
msgstr ""
-#: part/models.py:803
+#: part/models.py:804
msgid "Duplicate IPN not allowed in part settings"
msgstr "Yinelenen DPN'ye parça ayarlarında izin verilmiyor"
-#: part/models.py:808
+#: part/models.py:809
msgid "Part with this Name, IPN and Revision already exists."
msgstr ""
-#: part/models.py:822
+#: part/models.py:823
msgid "Parts cannot be assigned to structural part categories!"
msgstr ""
-#: part/models.py:846 part/models.py:3672
+#: part/models.py:847 part/models.py:3721
msgid "Part name"
msgstr "Parça adı"
-#: part/models.py:852
+#: part/models.py:853
msgid "Is Template"
msgstr "Şablon Mu"
-#: part/models.py:853
+#: part/models.py:854
msgid "Is this part a template part?"
msgstr "Bu parça bir şablon parçası mı?"
-#: part/models.py:863
+#: part/models.py:864
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:870
+#: part/models.py:871
msgid "Part description (optional)"
msgstr ""
-#: part/models.py:876
+#: part/models.py:877
msgid "Part keywords to improve visibility in search results"
msgstr ""
-#: part/models.py:883 part/models.py:3198 part/models.py:3615
-#: part/serializers.py:848 part/templates/part/part_base.html:262
+#: part/models.py:884 part/models.py:3232 part/models.py:3664
+#: part/serializers.py:320 part/serializers.py:910
+#: part/templates/part/part_base.html:262
#: templates/InvenTree/settings/settings_staff_js.html:204
#: templates/js/translated/notification.js:59
-#: templates/js/translated/part.js:2269 templates/js/translated/part.js:2481
+#: templates/js/translated/part.js:2345
msgid "Category"
msgstr ""
-#: part/models.py:884
+#: part/models.py:885
msgid "Part category"
msgstr ""
-#: part/models.py:890
+#: part/models.py:891
msgid "Internal Part Number"
msgstr ""
-#: part/models.py:895
+#: part/models.py:896
msgid "Part revision or version number"
msgstr "Parça revizyon veya versiyon numarası"
-#: part/models.py:921
+#: part/models.py:922
msgid "Where is this item normally stored?"
msgstr ""
-#: part/models.py:966 part/templates/part/part_base.html:378
+#: part/models.py:967 part/templates/part/part_base.html:378
msgid "Default Supplier"
msgstr "Varsayılan Tedarikçi"
-#: part/models.py:967
+#: part/models.py:968
msgid "Default supplier part"
msgstr "Varsayılan tedarikçi parçası"
-#: part/models.py:974
+#: part/models.py:975
msgid "Default Expiry"
msgstr ""
-#: part/models.py:975
+#: part/models.py:976
msgid "Expiry time (in days) for stock items of this part"
msgstr ""
-#: part/models.py:981
+#: part/models.py:982
msgid "Minimum allowed stock level"
msgstr ""
-#: part/models.py:988
+#: part/models.py:989
msgid "Units of measure for this part"
msgstr ""
-#: part/models.py:997
+#: part/models.py:998
msgid "Can this part be built from other parts?"
msgstr "Bu parça diğer parçalardan yapılabilir mi?"
-#: part/models.py:1003
+#: part/models.py:1004
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:1009
+#: part/models.py:1010
msgid "Does this part have tracking for unique items?"
msgstr ""
-#: part/models.py:1014
+#: part/models.py:1015
msgid "Can this part be purchased from external suppliers?"
msgstr "Bu parça dış tedarikçilerden satın alınabilir mi?"
-#: part/models.py:1019
+#: part/models.py:1020
msgid "Can this part be sold to customers?"
msgstr "Bu parça müşterilere satılabilir mi?"
-#: part/models.py:1024
+#: part/models.py:1025
msgid "Is this part active?"
msgstr "Bu parça aktif mi?"
-#: part/models.py:1029
+#: part/models.py:1030
msgid "Is this a virtual part, such as a software product or license?"
msgstr ""
-#: part/models.py:1031
+#: part/models.py:1032
msgid "BOM checksum"
msgstr ""
-#: part/models.py:1031
+#: part/models.py:1032
msgid "Stored BOM checksum"
msgstr ""
-#: part/models.py:1034
+#: part/models.py:1035
msgid "BOM checked by"
msgstr ""
-#: part/models.py:1036
+#: part/models.py:1037
msgid "BOM checked date"
msgstr ""
-#: part/models.py:1040
+#: part/models.py:1041
msgid "Creation User"
msgstr "Oluşturan Kullanıcı"
-#: part/models.py:1042
+#: part/models.py:1043
msgid "User responsible for this part"
msgstr ""
-#: part/models.py:1046 part/templates/part/part_base.html:341
+#: part/models.py:1047 part/templates/part/part_base.html:341
#: stock/templates/stock/item_base.html:447
-#: templates/js/translated/part.js:2331
+#: templates/js/translated/part.js:2407
msgid "Last Stocktake"
msgstr ""
-#: part/models.py:1921
+#: part/models.py:1923
msgid "Sell multiple"
msgstr ""
-#: part/models.py:2853
+#: part/models.py:2887
msgid "Currency used to cache pricing calculations"
msgstr ""
-#: part/models.py:2870
+#: part/models.py:2904
msgid "Minimum BOM Cost"
msgstr ""
-#: part/models.py:2871
+#: part/models.py:2905
msgid "Minimum cost of component parts"
msgstr ""
-#: part/models.py:2876
+#: part/models.py:2910
msgid "Maximum BOM Cost"
msgstr ""
-#: part/models.py:2877
+#: part/models.py:2911
msgid "Maximum cost of component parts"
msgstr ""
-#: part/models.py:2882
+#: part/models.py:2916
msgid "Minimum Purchase Cost"
msgstr ""
-#: part/models.py:2883
+#: part/models.py:2917
msgid "Minimum historical purchase cost"
msgstr ""
-#: part/models.py:2888
+#: part/models.py:2922
msgid "Maximum Purchase Cost"
msgstr ""
-#: part/models.py:2889
+#: part/models.py:2923
msgid "Maximum historical purchase cost"
msgstr ""
-#: part/models.py:2894
+#: part/models.py:2928
msgid "Minimum Internal Price"
msgstr ""
-#: part/models.py:2895
+#: part/models.py:2929
msgid "Minimum cost based on internal price breaks"
msgstr ""
-#: part/models.py:2900
+#: part/models.py:2934
msgid "Maximum Internal Price"
msgstr ""
-#: part/models.py:2901
+#: part/models.py:2935
msgid "Maximum cost based on internal price breaks"
msgstr ""
-#: part/models.py:2906
+#: part/models.py:2940
msgid "Minimum Supplier Price"
msgstr ""
-#: part/models.py:2907
+#: part/models.py:2941
msgid "Minimum price of part from external suppliers"
msgstr ""
-#: part/models.py:2912
+#: part/models.py:2946
msgid "Maximum Supplier Price"
msgstr ""
-#: part/models.py:2913
+#: part/models.py:2947
msgid "Maximum price of part from external suppliers"
msgstr ""
-#: part/models.py:2918
+#: part/models.py:2952
msgid "Minimum Variant Cost"
msgstr ""
-#: part/models.py:2919
+#: part/models.py:2953
msgid "Calculated minimum cost of variant parts"
msgstr ""
-#: part/models.py:2924
+#: part/models.py:2958
msgid "Maximum Variant Cost"
msgstr ""
-#: part/models.py:2925
+#: part/models.py:2959
msgid "Calculated maximum cost of variant parts"
msgstr ""
-#: part/models.py:2931
+#: part/models.py:2965
msgid "Calculated overall minimum cost"
msgstr ""
-#: part/models.py:2937
+#: part/models.py:2971
msgid "Calculated overall maximum cost"
msgstr ""
-#: part/models.py:2942
+#: part/models.py:2976
msgid "Minimum Sale Price"
msgstr ""
-#: part/models.py:2943
+#: part/models.py:2977
msgid "Minimum sale price based on price breaks"
msgstr ""
-#: part/models.py:2948
+#: part/models.py:2982
msgid "Maximum Sale Price"
msgstr ""
-#: part/models.py:2949
+#: part/models.py:2983
msgid "Maximum sale price based on price breaks"
msgstr ""
-#: part/models.py:2954
+#: part/models.py:2988
msgid "Minimum Sale Cost"
msgstr ""
-#: part/models.py:2955
+#: part/models.py:2989
msgid "Minimum historical sale price"
msgstr ""
-#: part/models.py:2960
+#: part/models.py:2994
msgid "Maximum Sale Cost"
msgstr ""
-#: part/models.py:2961
+#: part/models.py:2995
msgid "Maximum historical sale price"
msgstr ""
-#: part/models.py:2980
+#: part/models.py:3014
msgid "Part for stocktake"
msgstr ""
-#: part/models.py:2985
+#: part/models.py:3019
msgid "Item Count"
msgstr ""
-#: part/models.py:2986
+#: part/models.py:3020
msgid "Number of individual stock entries at time of stocktake"
msgstr ""
-#: part/models.py:2993
+#: part/models.py:3027
msgid "Total available stock at time of stocktake"
msgstr ""
-#: part/models.py:2997 part/models.py:3080
+#: part/models.py:3031 part/models.py:3114
#: part/templates/part/part_scheduling.html:13
#: report/templates/report/inventree_test_report_base.html:106
#: templates/InvenTree/settings/plugin_settings.html:37
#: templates/InvenTree/settings/settings_staff_js.html:360
-#: templates/js/translated/part.js:1059 templates/js/translated/pricing.js:812
+#: templates/js/translated/part.js:1058 templates/js/translated/pricing.js:812
#: templates/js/translated/pricing.js:936
-#: templates/js/translated/purchase_order.js:1691
-#: templates/js/translated/stock.js:2558
+#: templates/js/translated/purchase_order.js:1706
+#: templates/js/translated/stock.js:2689
msgid "Date"
msgstr ""
-#: part/models.py:2998
+#: part/models.py:3032
msgid "Date stocktake was performed"
msgstr ""
-#: part/models.py:3006
+#: part/models.py:3040
msgid "Additional notes"
msgstr ""
-#: part/models.py:3014
+#: part/models.py:3048
msgid "User who performed this stocktake"
msgstr ""
-#: part/models.py:3019
+#: part/models.py:3053
msgid "Minimum Stock Cost"
msgstr ""
-#: part/models.py:3020
+#: part/models.py:3054
msgid "Estimated minimum cost of stock on hand"
msgstr ""
-#: part/models.py:3025
+#: part/models.py:3059
msgid "Maximum Stock Cost"
msgstr ""
-#: part/models.py:3026
+#: part/models.py:3060
msgid "Estimated maximum cost of stock on hand"
msgstr ""
-#: part/models.py:3087 templates/InvenTree/settings/settings_staff_js.html:349
+#: part/models.py:3121 templates/InvenTree/settings/settings_staff_js.html:349
msgid "Report"
msgstr ""
-#: part/models.py:3088
+#: part/models.py:3122
msgid "Stocktake report file (generated internally)"
msgstr ""
-#: part/models.py:3093 templates/InvenTree/settings/settings_staff_js.html:356
+#: part/models.py:3127 templates/InvenTree/settings/settings_staff_js.html:356
msgid "Part Count"
msgstr ""
-#: part/models.py:3094
+#: part/models.py:3128
msgid "Number of parts covered by stocktake"
msgstr ""
-#: part/models.py:3102
+#: part/models.py:3136
msgid "User who requested this stocktake report"
msgstr ""
-#: part/models.py:3238
+#: part/models.py:3272
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:3255
+#: part/models.py:3289
msgid "Test with this name already exists for this part"
msgstr ""
-#: part/models.py:3275 templates/js/translated/part.js:2821
+#: part/models.py:3309 templates/js/translated/part.js:2806
msgid "Test Name"
msgstr "Test Adı"
-#: part/models.py:3276
+#: part/models.py:3310
msgid "Enter a name for the test"
msgstr ""
-#: part/models.py:3281
+#: part/models.py:3315
msgid "Test Description"
msgstr "Test Açıklaması"
-#: part/models.py:3282
+#: part/models.py:3316
msgid "Enter description for this test"
msgstr ""
-#: part/models.py:3287 templates/js/translated/part.js:2830
-#: templates/js/translated/table_filters.js:423
+#: part/models.py:3321 templates/js/translated/part.js:2815
+#: templates/js/translated/table_filters.js:429
msgid "Required"
msgstr "Gerekli"
-#: part/models.py:3288
+#: part/models.py:3322
msgid "Is this test required to pass?"
msgstr "Testi geçmesi için bu gerekli mi?"
-#: part/models.py:3293 templates/js/translated/part.js:2838
+#: part/models.py:3327 templates/js/translated/part.js:2823
msgid "Requires Value"
msgstr ""
-#: part/models.py:3294
+#: part/models.py:3328
msgid "Does this test require a value when adding a test result?"
msgstr ""
-#: part/models.py:3299 templates/js/translated/part.js:2845
+#: part/models.py:3333 templates/js/translated/part.js:2830
msgid "Requires Attachment"
msgstr ""
-#: part/models.py:3300
+#: part/models.py:3334
msgid "Does this test require a file attachment when adding a test result?"
msgstr ""
-#: part/models.py:3346
+#: part/models.py:3380
msgid "Checkbox parameters cannot have units"
msgstr ""
-#: part/models.py:3351
+#: part/models.py:3385
msgid "Checkbox parameters cannot have choices"
msgstr ""
-#: part/models.py:3369
+#: part/models.py:3403
msgid "Choices must be unique"
msgstr ""
-#: part/models.py:3385
+#: part/models.py:3419
msgid "Parameter template name must be unique"
msgstr "Parametre şablon adı benzersiz olmalıdır"
-#: part/models.py:3401
+#: part/models.py:3435
msgid "Parameter Name"
msgstr ""
-#: part/models.py:3407
+#: part/models.py:3441
msgid "Physical units for this parameter"
msgstr ""
-#: part/models.py:3417
+#: part/models.py:3451
msgid "Parameter description"
msgstr ""
-#: part/models.py:3423 templates/js/translated/part.js:1600
-#: templates/js/translated/table_filters.js:734
+#: part/models.py:3457 templates/js/translated/part.js:1599
+#: templates/js/translated/table_filters.js:756
msgid "Checkbox"
msgstr ""
-#: part/models.py:3424
+#: part/models.py:3458
msgid "Is this parameter a checkbox?"
msgstr ""
-#: part/models.py:3429 templates/js/translated/part.js:1609
+#: part/models.py:3463 templates/js/translated/part.js:1608
msgid "Choices"
msgstr ""
-#: part/models.py:3430
+#: part/models.py:3464
msgid "Valid choices for this parameter (comma-separated)"
msgstr ""
-#: part/models.py:3511
+#: part/models.py:3545
msgid "Invalid choice for parameter value"
msgstr ""
-#: part/models.py:3555
+#: part/models.py:3589
msgid "Parent Part"
msgstr ""
-#: part/models.py:3560 part/models.py:3621 part/models.py:3622
+#: part/models.py:3594 part/models.py:3670 part/models.py:3671
#: templates/InvenTree/settings/settings_staff_js.html:199
msgid "Parameter Template"
msgstr "Parametre Şablonu"
-#: part/models.py:3565
+#: part/models.py:3599
msgid "Data"
msgstr ""
-#: part/models.py:3565
+#: part/models.py:3599
msgid "Parameter Value"
msgstr ""
-#: part/models.py:3626 templates/InvenTree/settings/settings_staff_js.html:208
+#: part/models.py:3675 templates/InvenTree/settings/settings_staff_js.html:208
msgid "Default Value"
msgstr ""
-#: part/models.py:3627
+#: part/models.py:3676
msgid "Default Parameter Value"
msgstr ""
-#: part/models.py:3664
+#: part/models.py:3713
msgid "Part ID or part name"
msgstr ""
-#: part/models.py:3668
+#: part/models.py:3717
msgid "Unique part ID value"
msgstr ""
-#: part/models.py:3676
+#: part/models.py:3725
msgid "Part IPN value"
msgstr ""
-#: part/models.py:3679
+#: part/models.py:3728
msgid "Level"
msgstr ""
-#: part/models.py:3680
+#: part/models.py:3729
msgid "BOM level"
msgstr ""
-#: part/models.py:3764
+#: part/models.py:3735 part/models.py:4113
+msgid "BOM Item"
+msgstr ""
+
+#: part/models.py:3808
msgid "Select parent part"
msgstr ""
-#: part/models.py:3772
+#: part/models.py:3816
msgid "Sub part"
msgstr ""
-#: part/models.py:3773
+#: part/models.py:3817
msgid "Select part to be used in BOM"
msgstr ""
-#: part/models.py:3779
+#: part/models.py:3823
msgid "BOM quantity for this BOM item"
msgstr ""
-#: part/models.py:3783 part/templates/part/upload_bom.html:58
-#: templates/js/translated/bom.js:971 templates/js/translated/bom.js:998
-#: templates/js/translated/build.js:2113
-#: templates/js/translated/table_filters.js:156
-#: templates/js/translated/table_filters.js:185
-#: templates/js/translated/table_filters.js:500
-msgid "Optional"
-msgstr ""
-
-#: part/models.py:3784
+#: part/models.py:3828
msgid "This BOM item is optional"
msgstr ""
-#: part/models.py:3789 templates/js/translated/bom.js:967
-#: templates/js/translated/bom.js:1007 templates/js/translated/build.js:2104
-#: templates/js/translated/table_filters.js:160
-#: templates/js/translated/table_filters.js:496
-msgid "Consumable"
-msgstr ""
-
-#: part/models.py:3790
+#: part/models.py:3834
msgid "This BOM item is consumable (it is not tracked in build orders)"
msgstr ""
-#: part/models.py:3794 part/templates/part/upload_bom.html:55
+#: part/models.py:3838 part/templates/part/upload_bom.html:55
msgid "Overage"
msgstr ""
-#: part/models.py:3795
+#: part/models.py:3839
msgid "Estimated build wastage quantity (absolute or percentage)"
msgstr ""
-#: part/models.py:3798
+#: part/models.py:3842
msgid "BOM item reference"
msgstr ""
-#: part/models.py:3801
+#: part/models.py:3845
msgid "BOM item notes"
msgstr ""
-#: part/models.py:3805
+#: part/models.py:3849
msgid "Checksum"
msgstr ""
-#: part/models.py:3805
+#: part/models.py:3849
msgid "BOM line checksum"
msgstr ""
-#: part/models.py:3810 templates/js/translated/table_filters.js:144
+#: part/models.py:3854 templates/js/translated/table_filters.js:150
msgid "Validated"
msgstr ""
-#: part/models.py:3811
+#: part/models.py:3855
msgid "This BOM item has been validated"
msgstr ""
-#: part/models.py:3816 part/templates/part/upload_bom.html:57
-#: templates/js/translated/bom.js:1024
-#: templates/js/translated/table_filters.js:148
-#: templates/js/translated/table_filters.js:181
+#: part/models.py:3860 part/templates/part/upload_bom.html:57
+#: templates/js/translated/bom.js:1042
+#: templates/js/translated/table_filters.js:154
+#: templates/js/translated/table_filters.js:187
msgid "Gets inherited"
msgstr ""
-#: part/models.py:3817
+#: part/models.py:3861
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:3822 part/templates/part/upload_bom.html:56
-#: templates/js/translated/bom.js:1016
+#: part/models.py:3866 part/templates/part/upload_bom.html:56
+#: templates/js/translated/bom.js:1034
msgid "Allow Variants"
msgstr "Çeşide İzin Ver"
-#: part/models.py:3823
+#: part/models.py:3867
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:3909 stock/models.py:577
+#: part/models.py:3953 stock/models.py:577
msgid "Quantity must be integer value for trackable parts"
msgstr ""
-#: part/models.py:3918 part/models.py:3920
+#: part/models.py:3962 part/models.py:3964
msgid "Sub part must be specified"
msgstr ""
-#: part/models.py:4036
+#: part/models.py:4080
msgid "BOM Item Substitute"
msgstr ""
-#: part/models.py:4057
+#: part/models.py:4101
msgid "Substitute part cannot be the same as the master part"
msgstr ""
-#: part/models.py:4070
+#: part/models.py:4114
msgid "Parent BOM item"
msgstr ""
-#: part/models.py:4078
+#: part/models.py:4122
msgid "Substitute part"
msgstr ""
-#: part/models.py:4093
+#: part/models.py:4137
msgid "Part 1"
msgstr ""
-#: part/models.py:4097
+#: part/models.py:4141
msgid "Part 2"
msgstr ""
-#: part/models.py:4097
+#: part/models.py:4141
msgid "Select Related Part"
msgstr ""
-#: part/models.py:4115
+#: part/models.py:4159
msgid "Part relationship cannot be created between a part and itself"
msgstr ""
-#: part/models.py:4119
+#: part/models.py:4163
msgid "Duplicate relationship already exists"
msgstr ""
-#: part/serializers.py:152 part/serializers.py:175 stock/serializers.py:257
+#: part/serializers.py:152 part/serializers.py:175 stock/serializers.py:319
msgid "Purchase currency of this stock item"
msgstr ""
-#: part/serializers.py:302
+#: part/serializers.py:313
+msgid "No parts selected"
+msgstr ""
+
+#: part/serializers.py:321
+msgid "Select category"
+msgstr ""
+
+#: part/serializers.py:352
msgid "Original Part"
msgstr ""
-#: part/serializers.py:302
+#: part/serializers.py:352
msgid "Select original part to duplicate"
msgstr ""
-#: part/serializers.py:307
+#: part/serializers.py:357
msgid "Copy Image"
msgstr ""
-#: part/serializers.py:307
+#: part/serializers.py:357
msgid "Copy image from original part"
msgstr ""
-#: part/serializers.py:312 part/templates/part/detail.html:296
+#: part/serializers.py:362 part/templates/part/detail.html:277
msgid "Copy BOM"
msgstr ""
-#: part/serializers.py:312
+#: part/serializers.py:362
msgid "Copy bill of materials from original part"
msgstr ""
-#: part/serializers.py:317
+#: part/serializers.py:367
msgid "Copy Parameters"
msgstr ""
-#: part/serializers.py:317
+#: part/serializers.py:367
msgid "Copy parameter data from original part"
msgstr ""
-#: part/serializers.py:327
+#: part/serializers.py:377
msgid "Initial Stock Quantity"
msgstr ""
-#: part/serializers.py:327
+#: part/serializers.py:377
msgid "Specify initial stock quantity for this Part. If quantity is zero, no stock is added."
msgstr ""
-#: part/serializers.py:333
+#: part/serializers.py:383
msgid "Initial Stock Location"
msgstr ""
-#: part/serializers.py:333
+#: part/serializers.py:383
msgid "Specify initial stock location for this Part"
msgstr ""
-#: part/serializers.py:343
+#: part/serializers.py:393
msgid "Select supplier (or leave blank to skip)"
msgstr ""
-#: part/serializers.py:354
+#: part/serializers.py:404
msgid "Select manufacturer (or leave blank to skip)"
msgstr ""
-#: part/serializers.py:360
+#: part/serializers.py:410
msgid "Manufacturer part number"
msgstr ""
-#: part/serializers.py:367
+#: part/serializers.py:417
msgid "Selected company is not a valid supplier"
msgstr ""
-#: part/serializers.py:375
+#: part/serializers.py:425
msgid "Selected company is not a valid manufacturer"
msgstr ""
-#: part/serializers.py:387
+#: part/serializers.py:437
msgid "Manufacturer part matching this MPN already exists"
msgstr ""
-#: part/serializers.py:395
+#: part/serializers.py:445
msgid "Supplier part matching this SKU already exists"
msgstr ""
-#: part/serializers.py:620 part/templates/part/copy_part.html:9
-#: templates/js/translated/part.js:449
+#: part/serializers.py:682 part/templates/part/copy_part.html:9
+#: templates/js/translated/part.js:448
msgid "Duplicate Part"
msgstr ""
-#: part/serializers.py:620
+#: part/serializers.py:682
msgid "Copy initial data from another Part"
msgstr ""
-#: part/serializers.py:625 templates/js/translated/part.js:103
+#: part/serializers.py:687 templates/js/translated/part.js:102
msgid "Initial Stock"
msgstr ""
-#: part/serializers.py:625
+#: part/serializers.py:687
msgid "Create Part with initial stock quantity"
msgstr ""
-#: part/serializers.py:630
+#: part/serializers.py:692
msgid "Supplier Information"
msgstr ""
-#: part/serializers.py:630
+#: part/serializers.py:692
msgid "Add initial supplier information for this part"
msgstr ""
-#: part/serializers.py:636
+#: part/serializers.py:698
msgid "Copy Category Parameters"
msgstr ""
-#: part/serializers.py:637
+#: part/serializers.py:699
msgid "Copy parameter templates from selected part category"
msgstr ""
-#: part/serializers.py:842
+#: part/serializers.py:904
msgid "Limit stocktake report to a particular part, and any variant parts"
msgstr ""
-#: part/serializers.py:848
+#: part/serializers.py:910
msgid "Limit stocktake report to a particular part category, and any child categories"
msgstr ""
-#: part/serializers.py:854
+#: part/serializers.py:916
msgid "Limit stocktake report to a particular stock location, and any child locations"
msgstr ""
-#: part/serializers.py:859
+#: part/serializers.py:921
msgid "Generate Report"
msgstr ""
-#: part/serializers.py:860
+#: part/serializers.py:922
msgid "Generate report file containing calculated stocktake data"
msgstr ""
-#: part/serializers.py:865
+#: part/serializers.py:927
msgid "Update Parts"
msgstr ""
-#: part/serializers.py:866
+#: part/serializers.py:928
msgid "Update specified parts with calculated stocktake data"
msgstr ""
-#: part/serializers.py:874
+#: part/serializers.py:936
msgid "Stocktake functionality is not enabled"
msgstr ""
-#: part/serializers.py:963
+#: part/serializers.py:1025
msgid "Update"
msgstr ""
-#: part/serializers.py:964
+#: part/serializers.py:1026
msgid "Update pricing for this part"
msgstr ""
-#: part/serializers.py:1246
+#: part/serializers.py:1308
msgid "Select part to copy BOM from"
msgstr ""
-#: part/serializers.py:1254
+#: part/serializers.py:1316
msgid "Remove Existing Data"
msgstr ""
-#: part/serializers.py:1255
+#: part/serializers.py:1317
msgid "Remove existing BOM items before copying"
msgstr ""
-#: part/serializers.py:1260
+#: part/serializers.py:1322
msgid "Include Inherited"
msgstr ""
-#: part/serializers.py:1261
+#: part/serializers.py:1323
msgid "Include BOM items which are inherited from templated parts"
msgstr ""
-#: part/serializers.py:1266
+#: part/serializers.py:1328
msgid "Skip Invalid Rows"
msgstr ""
-#: part/serializers.py:1267
+#: part/serializers.py:1329
msgid "Enable this option to skip invalid rows"
msgstr ""
-#: part/serializers.py:1272
+#: part/serializers.py:1334
msgid "Copy Substitute Parts"
msgstr ""
-#: part/serializers.py:1273
+#: part/serializers.py:1335
msgid "Copy substitute parts when duplicate BOM items"
msgstr ""
-#: part/serializers.py:1313
+#: part/serializers.py:1375
msgid "Clear Existing BOM"
msgstr ""
-#: part/serializers.py:1314
+#: part/serializers.py:1376
msgid "Delete existing BOM items before uploading"
msgstr ""
-#: part/serializers.py:1344
+#: part/serializers.py:1406
msgid "No part column specified"
msgstr ""
-#: part/serializers.py:1387
+#: part/serializers.py:1449
msgid "Multiple matching parts found"
msgstr ""
-#: part/serializers.py:1390
+#: part/serializers.py:1452
msgid "No matching part found"
msgstr ""
-#: part/serializers.py:1393
+#: part/serializers.py:1455
msgid "Part is not designated as a component"
msgstr ""
-#: part/serializers.py:1402
+#: part/serializers.py:1464
msgid "Quantity not provided"
msgstr ""
-#: part/serializers.py:1410
+#: part/serializers.py:1472
msgid "Invalid quantity"
msgstr ""
-#: part/serializers.py:1431
+#: part/serializers.py:1493
msgid "At least one BOM item is required"
msgstr ""
@@ -6421,9 +6453,9 @@ msgstr ""
msgid "The available stock for {part.name} has fallen below the configured minimum level"
msgstr ""
-#: part/tasks.py:294 templates/js/translated/part.js:1040
-#: templates/js/translated/part.js:1793 templates/js/translated/part.js:1848
-#: templates/js/translated/purchase_order.js:2052
+#: part/tasks.py:294 templates/js/translated/part.js:1039
+#: templates/js/translated/part.js:1792 templates/js/translated/part.js:1847
+#: templates/js/translated/purchase_order.js:2062
msgid "Total Quantity"
msgstr ""
@@ -6461,14 +6493,6 @@ msgstr ""
msgid "The BOM for %(part)s has not been validated."
msgstr ""
-#: part/templates/part/bom.html:30 part/templates/part/detail.html:291
-msgid "BOM actions"
-msgstr ""
-
-#: part/templates/part/bom.html:34
-msgid "Delete Items"
-msgstr ""
-
#: part/templates/part/category.html:34
msgid "Perform stocktake for this part category"
msgstr ""
@@ -6505,7 +6529,7 @@ msgstr ""
msgid "Top level part category"
msgstr ""
-#: part/templates/part/category.html:121 part/templates/part/category.html:225
+#: part/templates/part/category.html:121 part/templates/part/category.html:206
#: part/templates/part/category_sidebar.html:7
msgid "Subcategories"
msgstr "Alt kategoriler"
@@ -6518,33 +6542,20 @@ msgstr "Parçalar (Alt kategoriler dahil)"
msgid "Create new part"
msgstr ""
-#: part/templates/part/category.html:165 templates/js/translated/bom.js:443
+#: part/templates/part/category.html:165 templates/js/translated/bom.js:444
msgid "New Part"
msgstr ""
-#: part/templates/part/category.html:175 part/templates/part/detail.html:390
-#: part/templates/part/detail.html:421
-msgid "Options"
-msgstr ""
-
-#: part/templates/part/category.html:179
-msgid "Set category"
-msgstr "Kategori ayarla"
-
-#: part/templates/part/category.html:180
-msgid "Set Category"
-msgstr "Kategori Ayarla"
-
-#: part/templates/part/category.html:208
+#: part/templates/part/category.html:191
#: templates/InvenTree/settings/sidebar.html:47
msgid "Part Parameters"
msgstr ""
-#: part/templates/part/category.html:229
+#: part/templates/part/category.html:210
msgid "Create new part category"
msgstr ""
-#: part/templates/part/category.html:230
+#: part/templates/part/category.html:211
msgid "New Category"
msgstr ""
@@ -6581,7 +6592,7 @@ msgid "Refresh scheduling data"
msgstr ""
#: part/templates/part/detail.html:45 part/templates/part/prices.html:15
-#: templates/js/translated/tables.js:584
+#: templates/js/translated/tables.js:560
msgid "Refresh"
msgstr "Yenile"
@@ -6592,7 +6603,7 @@ msgstr ""
#: part/templates/part/detail.html:67 part/templates/part/part_sidebar.html:50
#: stock/admin.py:130 templates/InvenTree/settings/part_stocktake.html:29
#: templates/InvenTree/settings/sidebar.html:51
-#: templates/js/translated/stock.js:1952 users/models.py:39
+#: templates/js/translated/stock.js:2109 users/models.py:39
msgid "Stocktake"
msgstr ""
@@ -6604,101 +6615,101 @@ msgstr "Parça Test Şablonları"
msgid "Add Test Template"
msgstr "Test Şablonu Ekle"
-#: part/templates/part/detail.html:145 stock/templates/stock/item.html:53
+#: part/templates/part/detail.html:139 stock/templates/stock/item.html:49
msgid "Sales Order Allocations"
msgstr ""
-#: part/templates/part/detail.html:165
+#: part/templates/part/detail.html:156
msgid "Part Notes"
msgstr ""
-#: part/templates/part/detail.html:180
+#: part/templates/part/detail.html:171
msgid "Part Variants"
msgstr "Parça Çeşitleri"
-#: part/templates/part/detail.html:184
+#: part/templates/part/detail.html:175
msgid "Create new variant"
msgstr "Yeni çeşit oluştur"
-#: part/templates/part/detail.html:185
+#: part/templates/part/detail.html:176
msgid "New Variant"
msgstr "Yeni Çeşit"
-#: part/templates/part/detail.html:212
+#: part/templates/part/detail.html:199
msgid "Add new parameter"
msgstr ""
-#: part/templates/part/detail.html:249 part/templates/part/part_sidebar.html:58
+#: part/templates/part/detail.html:232 part/templates/part/part_sidebar.html:58
msgid "Related Parts"
msgstr ""
-#: part/templates/part/detail.html:253 part/templates/part/detail.html:254
+#: part/templates/part/detail.html:236 part/templates/part/detail.html:237
msgid "Add Related"
msgstr ""
-#: part/templates/part/detail.html:274 part/templates/part/part_sidebar.html:17
+#: part/templates/part/detail.html:255 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:279
+#: part/templates/part/detail.html:260
msgid "Export actions"
msgstr ""
-#: part/templates/part/detail.html:283 templates/js/translated/bom.js:339
+#: part/templates/part/detail.html:264 templates/js/translated/bom.js:340
msgid "Export BOM"
msgstr ""
-#: part/templates/part/detail.html:285
+#: part/templates/part/detail.html:266
msgid "Print BOM Report"
msgstr ""
-#: part/templates/part/detail.html:295
+#: part/templates/part/detail.html:272
+msgid "BOM actions"
+msgstr ""
+
+#: part/templates/part/detail.html:276
msgid "Upload BOM"
msgstr ""
-#: part/templates/part/detail.html:297
+#: part/templates/part/detail.html:278
msgid "Validate BOM"
msgstr ""
-#: part/templates/part/detail.html:302 part/templates/part/detail.html:303
-#: templates/js/translated/bom.js:1279 templates/js/translated/bom.js:1280
+#: part/templates/part/detail.html:283 part/templates/part/detail.html:284
+#: templates/js/translated/bom.js:1299 templates/js/translated/bom.js:1300
msgid "Add BOM Item"
msgstr ""
-#: part/templates/part/detail.html:316
+#: part/templates/part/detail.html:297
msgid "Assemblies"
msgstr ""
-#: part/templates/part/detail.html:334
+#: part/templates/part/detail.html:313
msgid "Part Builds"
msgstr ""
-#: part/templates/part/detail.html:361 stock/templates/stock/item.html:38
+#: part/templates/part/detail.html:338 stock/templates/stock/item.html:36
msgid "Build Order Allocations"
msgstr ""
-#: part/templates/part/detail.html:377
+#: part/templates/part/detail.html:352
msgid "Part Suppliers"
msgstr "Parça Tedarikçileri"
-#: part/templates/part/detail.html:407
+#: part/templates/part/detail.html:372
msgid "Part Manufacturers"
msgstr ""
-#: part/templates/part/detail.html:423
-msgid "Delete manufacturer parts"
-msgstr ""
-
-#: part/templates/part/detail.html:707
+#: part/templates/part/detail.html:654
msgid "Related Part"
msgstr ""
-#: part/templates/part/detail.html:715
+#: part/templates/part/detail.html:662
msgid "Add Related Part"
msgstr ""
-#: part/templates/part/detail.html:800
+#: part/templates/part/detail.html:747
msgid "Add Test Result Template"
msgstr ""
@@ -6732,13 +6743,13 @@ msgid "Download Part Import Template"
msgstr ""
#: part/templates/part/import_wizard/part_upload.html:92
-#: templates/js/translated/bom.js:308 templates/js/translated/bom.js:342
+#: templates/js/translated/bom.js:309 templates/js/translated/bom.js:343
#: templates/js/translated/order.js:129 templates/js/translated/tables.js:189
msgid "Format"
msgstr ""
#: part/templates/part/import_wizard/part_upload.html:93
-#: templates/js/translated/bom.js:309 templates/js/translated/bom.js:343
+#: templates/js/translated/bom.js:310 templates/js/translated/bom.js:344
#: templates/js/translated/order.js:130
msgid "Select file format"
msgstr ""
@@ -6779,7 +6790,7 @@ msgstr ""
msgid "Transfer part stock"
msgstr ""
-#: part/templates/part/part_base.html:93
+#: part/templates/part/part_base.html:93 templates/js/translated/part.js:2264
msgid "Part actions"
msgstr "Parça işlemleri"
@@ -6824,10 +6835,10 @@ msgid "Part is not active"
msgstr ""
#: part/templates/part/part_base.html:148
-#: templates/js/translated/company.js:945
-#: templates/js/translated/company.js:1185
-#: templates/js/translated/model_renderers.js:273
-#: templates/js/translated/part.js:792 templates/js/translated/part.js:1192
+#: templates/js/translated/company.js:1318
+#: templates/js/translated/company.js:1606
+#: templates/js/translated/model_renderers.js:287
+#: templates/js/translated/part.js:791 templates/js/translated/part.js:1191
msgid "Inactive"
msgstr "Pasif"
@@ -6850,7 +6861,7 @@ msgstr ""
msgid "Allocated to Sales Orders"
msgstr ""
-#: part/templates/part/part_base.html:237 templates/js/translated/bom.js:1178
+#: part/templates/part/part_base.html:237 templates/js/translated/bom.js:1198
msgid "Can Build"
msgstr ""
@@ -6858,8 +6869,8 @@ msgstr ""
msgid "Minimum stock level"
msgstr ""
-#: part/templates/part/part_base.html:324 templates/js/translated/bom.js:1041
-#: templates/js/translated/part.js:1238 templates/js/translated/part.js:2304
+#: part/templates/part/part_base.html:324 templates/js/translated/bom.js:1059
+#: templates/js/translated/part.js:1237 templates/js/translated/part.js:2380
#: templates/js/translated/pricing.js:391
#: templates/js/translated/pricing.js:1040
msgid "Price Range"
@@ -6882,7 +6893,7 @@ msgstr ""
msgid "Link Barcode to Part"
msgstr ""
-#: part/templates/part/part_base.html:474 templates/js/translated/part.js:2191
+#: part/templates/part/part_base.html:474 templates/js/translated/part.js:2258
msgid "part"
msgstr ""
@@ -6956,9 +6967,9 @@ msgstr ""
#: stock/templates/stock/stock_app_base.html:10
#: templates/InvenTree/search.html:153
#: templates/InvenTree/settings/sidebar.html:49
-#: templates/js/translated/part.js:1216 templates/js/translated/part.js:2120
-#: templates/js/translated/part.js:2284 templates/js/translated/stock.js:1022
-#: templates/js/translated/stock.js:1829 templates/navbar.html:31
+#: templates/js/translated/part.js:1215 templates/js/translated/part.js:2119
+#: templates/js/translated/part.js:2360 templates/js/translated/stock.js:1021
+#: templates/js/translated/stock.js:1986 templates/navbar.html:31
msgid "Stock"
msgstr "Stok"
@@ -6989,9 +7000,9 @@ msgstr ""
#: part/templates/part/prices.html:25 stock/admin.py:129
#: stock/templates/stock/item_base.html:442
-#: templates/js/translated/company.js:1313
-#: templates/js/translated/company.js:1323
-#: templates/js/translated/stock.js:1982
+#: templates/js/translated/company.js:1734
+#: templates/js/translated/company.js:1744
+#: templates/js/translated/stock.js:2139
msgid "Last Updated"
msgstr ""
@@ -7054,12 +7065,12 @@ msgstr ""
msgid "Add Sell Price Break"
msgstr ""
-#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:682
-#: templates/js/translated/part.js:2115 templates/js/translated/part.js:2117
+#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:681
+#: templates/js/translated/part.js:2114 templates/js/translated/part.js:2116
msgid "No Stock"
msgstr "Stok Yok"
-#: part/templates/part/stock_count.html:9 templates/InvenTree/index.html:167
+#: part/templates/part/stock_count.html:9 templates/InvenTree/index.html:120
msgid "Low Stock"
msgstr "Düşük Stok"
@@ -7163,7 +7174,7 @@ msgid "Match found for barcode data"
msgstr "Barkod verisi için eşleşme bulundu"
#: plugin/base/barcodes/api.py:120
-#: templates/js/translated/purchase_order.js:1372
+#: templates/js/translated/purchase_order.js:1387
msgid "Barcode matches existing item"
msgstr ""
@@ -7226,43 +7237,43 @@ msgstr ""
msgid "Open link"
msgstr ""
-#: plugin/models.py:27
+#: plugin/models.py:28
msgid "Plugin Configuration"
msgstr ""
-#: plugin/models.py:28
+#: plugin/models.py:29
msgid "Plugin Configurations"
msgstr ""
-#: plugin/models.py:33
+#: plugin/models.py:34
msgid "Key"
msgstr ""
-#: plugin/models.py:34
+#: plugin/models.py:35
msgid "Key of plugin"
msgstr ""
-#: plugin/models.py:42
+#: plugin/models.py:43
msgid "PluginName of the plugin"
msgstr ""
-#: plugin/models.py:48
+#: plugin/models.py:49
msgid "Is the plugin active"
msgstr ""
-#: plugin/models.py:124
+#: plugin/models.py:125
msgid "Sample plugin"
msgstr ""
-#: plugin/models.py:133
+#: plugin/models.py:134
msgid "Builtin Plugin"
msgstr ""
-#: plugin/models.py:159 templates/InvenTree/settings/plugin_settings.html:9
+#: plugin/models.py:160 templates/InvenTree/settings/plugin_settings.html:9
msgid "Plugin"
msgstr ""
-#: plugin/models.py:210
+#: plugin/models.py:211
msgid "Method"
msgstr ""
@@ -7414,47 +7425,47 @@ msgstr ""
msgid "Build query filters (comma-separated list of key=value pairs"
msgstr ""
-#: report/models.py:418
+#: report/models.py:420
msgid "Part Filters"
msgstr ""
-#: report/models.py:419
+#: report/models.py:421
msgid "Part query filters (comma-separated list of key=value pairs"
msgstr ""
-#: report/models.py:453
+#: report/models.py:455
msgid "Purchase order query filters"
msgstr ""
-#: report/models.py:491
+#: report/models.py:493
msgid "Sales order query filters"
msgstr ""
-#: report/models.py:529
+#: report/models.py:531
msgid "Return order query filters"
msgstr ""
-#: report/models.py:582
+#: report/models.py:584
msgid "Snippet"
msgstr ""
-#: report/models.py:583
+#: report/models.py:585
msgid "Report snippet file"
msgstr ""
-#: report/models.py:587
+#: report/models.py:589
msgid "Snippet file description"
msgstr ""
-#: report/models.py:624
+#: report/models.py:626
msgid "Asset"
msgstr ""
-#: report/models.py:625
+#: report/models.py:627
msgid "Report asset file"
msgstr ""
-#: report/models.py:632
+#: report/models.py:634
msgid "Asset file description"
msgstr ""
@@ -7475,8 +7486,8 @@ msgstr ""
#: templates/js/translated/order.js:316 templates/js/translated/pricing.js:527
#: templates/js/translated/pricing.js:596
#: templates/js/translated/pricing.js:820
-#: templates/js/translated/purchase_order.js:2083
-#: templates/js/translated/sales_order.js:1817
+#: templates/js/translated/purchase_order.js:2093
+#: templates/js/translated/sales_order.js:1829
msgid "Unit Price"
msgstr ""
@@ -7488,23 +7499,23 @@ msgstr ""
#: report/templates/report/inventree_po_report_base.html:72
#: report/templates/report/inventree_so_report_base.html:72
-#: templates/js/translated/purchase_order.js:1985
-#: templates/js/translated/sales_order.js:1792
+#: templates/js/translated/purchase_order.js:1995
+#: templates/js/translated/sales_order.js:1804
msgid "Total"
msgstr ""
#: report/templates/report/inventree_return_order_report_base.html:25
#: report/templates/report/inventree_test_report_base.html:88
#: stock/models.py:725 stock/templates/stock/item_base.html:312
-#: templates/js/translated/build.js:502 templates/js/translated/build.js:1423
-#: templates/js/translated/build.js:1989
-#: templates/js/translated/model_renderers.js:201
-#: templates/js/translated/return_order.js:528
-#: templates/js/translated/return_order.js:708
-#: templates/js/translated/sales_order.js:300
-#: templates/js/translated/sales_order.js:1597
-#: templates/js/translated/sales_order.js:1682
-#: templates/js/translated/stock.js:563
+#: templates/js/translated/build.js:508 templates/js/translated/build.js:1306
+#: templates/js/translated/build.js:2281
+#: templates/js/translated/model_renderers.js:215
+#: templates/js/translated/return_order.js:540
+#: templates/js/translated/return_order.js:720
+#: templates/js/translated/sales_order.js:312
+#: templates/js/translated/sales_order.js:1609
+#: templates/js/translated/sales_order.js:1694
+#: templates/js/translated/stock.js:562
msgid "Serial Number"
msgstr "Seri Numara"
@@ -7517,7 +7528,7 @@ msgid "Test Results"
msgstr ""
#: report/templates/report/inventree_test_report_base.html:102
-#: stock/models.py:2243 templates/js/translated/stock.js:1419
+#: stock/models.py:2243 templates/js/translated/stock.js:1418
msgid "Test"
msgstr ""
@@ -7548,8 +7559,8 @@ msgid "Installed Items"
msgstr ""
#: report/templates/report/inventree_test_report_base.html:168
-#: stock/admin.py:104 templates/js/translated/stock.js:667
-#: templates/js/translated/stock.js:838 templates/js/translated/stock.js:2849
+#: stock/admin.py:104 templates/js/translated/stock.js:666
+#: templates/js/translated/stock.js:837 templates/js/translated/stock.js:2976
msgid "Serial"
msgstr "Seri No"
@@ -7617,31 +7628,31 @@ msgstr ""
#: stock/admin.py:131 stock/models.py:789
#: stock/templates/stock/item_base.html:429
-#: templates/js/translated/stock.js:1966
+#: templates/js/translated/stock.js:2123
msgid "Expiry Date"
msgstr ""
-#: stock/api.py:420 templates/js/translated/table_filters.js:373
+#: stock/api.py:426 templates/js/translated/table_filters.js:379
msgid "External Location"
msgstr ""
-#: stock/api.py:582
+#: stock/api.py:619
msgid "Quantity is required"
msgstr ""
-#: stock/api.py:589
+#: stock/api.py:626
msgid "Valid part must be supplied"
msgstr ""
-#: stock/api.py:615
+#: stock/api.py:652
msgid "The given supplier part does not exist"
msgstr ""
-#: stock/api.py:624
+#: stock/api.py:661
msgid "The supplier part has a pack size defined, but flag use_pack_size not set"
msgstr ""
-#: stock/api.py:642
+#: stock/api.py:679
msgid "Serial numbers cannot be supplied for a non-trackable part"
msgstr ""
@@ -7652,7 +7663,7 @@ msgid "Stock Location"
msgstr "Stok Konumu"
#: stock/models.py:55 stock/templates/stock/location.html:177
-#: templates/InvenTree/search.html:166 templates/js/translated/search.js:220
+#: templates/InvenTree/search.html:166 templates/js/translated/search.js:178
#: users/models.py:40
msgid "Stock Locations"
msgstr "Stok Konumları"
@@ -7670,8 +7681,8 @@ msgstr ""
msgid "Stock items may not be directly located into a structural stock locations, but may be located to child locations."
msgstr ""
-#: stock/models.py:132 templates/js/translated/stock.js:2529
-#: templates/js/translated/table_filters.js:213
+#: stock/models.py:132 templates/js/translated/stock.js:2660
+#: templates/js/translated/table_filters.js:219
msgid "External"
msgstr ""
@@ -7687,7 +7698,7 @@ msgstr ""
msgid "Stock items cannot be located into structural stock locations!"
msgstr ""
-#: stock/models.py:583 stock/serializers.py:174
+#: stock/models.py:583 stock/serializers.py:223
msgid "Stock item cannot be created for virtual parts"
msgstr ""
@@ -7821,7 +7832,7 @@ msgstr "Seri numaraları tam sayı listesi olmalı"
msgid "Quantity does not match serial numbers"
msgstr "Miktar seri numaları ile eşleşmiyor"
-#: stock/models.py:1403 stock/serializers.py:374
+#: stock/models.py:1403 stock/serializers.py:440
msgid "Serial numbers already exist"
msgstr "Seri numaraları zaten mevcut"
@@ -7849,7 +7860,7 @@ msgstr ""
msgid "Serialized stock cannot be merged"
msgstr ""
-#: stock/models.py:1496 stock/serializers.py:975
+#: stock/models.py:1496 stock/serializers.py:1092
msgid "Duplicate stock items"
msgstr ""
@@ -7901,132 +7912,141 @@ msgstr ""
msgid "Test notes"
msgstr ""
-#: stock/serializers.py:76
+#: stock/serializers.py:121
msgid "Serial number is too large"
msgstr ""
-#: stock/serializers.py:166
+#: stock/serializers.py:215
msgid "Use pack size when adding: the quantity defined is the number of packs"
msgstr ""
-#: stock/serializers.py:254
+#: stock/serializers.py:316
msgid "Purchase price of this stock item, per unit or pack"
msgstr ""
-#: stock/serializers.py:307
+#: stock/serializers.py:373
msgid "Enter number of stock items to serialize"
msgstr ""
-#: stock/serializers.py:319
+#: stock/serializers.py:385
#, python-brace-format
msgid "Quantity must not exceed available stock quantity ({q})"
msgstr ""
-#: stock/serializers.py:325
+#: stock/serializers.py:391
msgid "Enter serial numbers for new items"
msgstr ""
-#: stock/serializers.py:336 stock/serializers.py:932 stock/serializers.py:1174
+#: stock/serializers.py:402 stock/serializers.py:1049 stock/serializers.py:1291
msgid "Destination stock location"
msgstr ""
-#: stock/serializers.py:343
+#: stock/serializers.py:409
msgid "Optional note field"
msgstr ""
-#: stock/serializers.py:353
+#: stock/serializers.py:419
msgid "Serial numbers cannot be assigned to this part"
msgstr ""
-#: stock/serializers.py:414
+#: stock/serializers.py:480
msgid "Select stock item to install"
msgstr ""
-#: stock/serializers.py:427
-msgid "Stock item is unavailable"
-msgstr ""
-
-#: stock/serializers.py:434
-msgid "Selected part is not in the Bill of Materials"
-msgstr ""
-
-#: stock/serializers.py:471
-msgid "Destination location for uninstalled item"
-msgstr ""
-
-#: stock/serializers.py:476 stock/serializers.py:557
+#: stock/serializers.py:485 stock/serializers.py:543 stock/serializers.py:624
+#: stock/serializers.py:682
msgid "Add transaction note (optional)"
msgstr "İşlem notu ekle (isteğe bağlı)"
-#: stock/serializers.py:510
+#: stock/serializers.py:494
+msgid "Stock item is unavailable"
+msgstr ""
+
+#: stock/serializers.py:501
+msgid "Selected part is not in the Bill of Materials"
+msgstr ""
+
+#: stock/serializers.py:538
+msgid "Destination location for uninstalled item"
+msgstr ""
+
+#: stock/serializers.py:577
msgid "Select part to convert stock item into"
msgstr ""
-#: stock/serializers.py:521
+#: stock/serializers.py:588
msgid "Selected part is not a valid option for conversion"
msgstr ""
-#: stock/serializers.py:552
+#: stock/serializers.py:619
msgid "Destination location for returned item"
msgstr ""
-#: stock/serializers.py:787
+#: stock/serializers.py:663
+msgid "Select stock items to change status"
+msgstr ""
+
+#: stock/serializers.py:670
+msgid "No stock items selected"
+msgstr ""
+
+#: stock/serializers.py:904
msgid "Part must be salable"
msgstr ""
-#: stock/serializers.py:791
+#: stock/serializers.py:908
msgid "Item is allocated to a sales order"
msgstr ""
-#: stock/serializers.py:795
+#: stock/serializers.py:912
msgid "Item is allocated to a build order"
msgstr ""
-#: stock/serializers.py:826
+#: stock/serializers.py:943
msgid "Customer to assign stock items"
msgstr ""
-#: stock/serializers.py:832
+#: stock/serializers.py:949
msgid "Selected company is not a customer"
msgstr ""
-#: stock/serializers.py:840
+#: stock/serializers.py:957
msgid "Stock assignment notes"
msgstr ""
-#: stock/serializers.py:850 stock/serializers.py:1081
+#: stock/serializers.py:967 stock/serializers.py:1198
msgid "A list of stock items must be provided"
msgstr ""
-#: stock/serializers.py:939
+#: stock/serializers.py:1056
msgid "Stock merging notes"
msgstr ""
-#: stock/serializers.py:944
+#: stock/serializers.py:1061
msgid "Allow mismatched suppliers"
msgstr ""
-#: stock/serializers.py:945
+#: stock/serializers.py:1062
msgid "Allow stock items with different supplier parts to be merged"
msgstr ""
-#: stock/serializers.py:950
+#: stock/serializers.py:1067
msgid "Allow mismatched status"
msgstr ""
-#: stock/serializers.py:951
+#: stock/serializers.py:1068
msgid "Allow stock items with different status codes to be merged"
msgstr ""
-#: stock/serializers.py:961
+#: stock/serializers.py:1078
msgid "At least two stock items must be provided"
msgstr ""
-#: stock/serializers.py:1043
+#: stock/serializers.py:1160
msgid "StockItem primary key value"
msgstr ""
-#: stock/serializers.py:1071
+#: stock/serializers.py:1188
msgid "Stock transaction notes"
msgstr ""
@@ -8034,48 +8054,48 @@ msgstr ""
msgid "Stock Tracking Information"
msgstr ""
-#: stock/templates/stock/item.html:69
+#: stock/templates/stock/item.html:63
msgid "Child Stock Items"
msgstr ""
-#: stock/templates/stock/item.html:77
+#: stock/templates/stock/item.html:71
msgid "This stock item does not have any child items"
msgstr ""
-#: stock/templates/stock/item.html:86
+#: stock/templates/stock/item.html:80
#: stock/templates/stock/stock_sidebar.html:12
msgid "Test Data"
msgstr ""
-#: stock/templates/stock/item.html:90 stock/templates/stock/item_base.html:66
+#: stock/templates/stock/item.html:84 stock/templates/stock/item_base.html:66
msgid "Test Report"
msgstr ""
-#: stock/templates/stock/item.html:94 stock/templates/stock/item.html:288
+#: stock/templates/stock/item.html:88 stock/templates/stock/item.html:278
msgid "Delete Test Data"
msgstr ""
-#: stock/templates/stock/item.html:98
+#: stock/templates/stock/item.html:92
msgid "Add Test Data"
msgstr ""
-#: stock/templates/stock/item.html:132
+#: stock/templates/stock/item.html:124
msgid "Stock Item Notes"
msgstr ""
-#: stock/templates/stock/item.html:147
+#: stock/templates/stock/item.html:139
msgid "Installed Stock Items"
msgstr ""
-#: stock/templates/stock/item.html:152 templates/js/translated/stock.js:2996
+#: stock/templates/stock/item.html:144 templates/js/translated/stock.js:3123
msgid "Install Stock Item"
msgstr ""
-#: stock/templates/stock/item.html:276
+#: stock/templates/stock/item.html:266
msgid "Delete all test results for this stock item"
msgstr ""
-#: stock/templates/stock/item.html:305 templates/js/translated/stock.js:1611
+#: stock/templates/stock/item.html:295 templates/js/translated/stock.js:1610
msgid "Add Test Result"
msgstr ""
@@ -8083,13 +8103,13 @@ msgstr ""
msgid "Locate stock item"
msgstr ""
-#: stock/templates/stock/item_base.html:52 templates/stock_table.html:21
+#: stock/templates/stock/item_base.html:52
msgid "Scan to Location"
msgstr "Konuma Tara"
#: stock/templates/stock/item_base.html:60
#: stock/templates/stock/location.html:69
-#: templates/js/translated/filters.js:322
+#: templates/js/translated/filters.js:432
msgid "Printing actions"
msgstr "Yazdırma işlemleri"
@@ -8098,15 +8118,17 @@ msgid "Stock adjustment actions"
msgstr "Stok ayarlama işlemleri"
#: stock/templates/stock/item_base.html:80
-#: stock/templates/stock/location.html:88 templates/stock_table.html:35
+#: stock/templates/stock/location.html:88 templates/js/translated/stock.js:1735
msgid "Count stock"
msgstr ""
-#: stock/templates/stock/item_base.html:82 templates/stock_table.html:33
+#: stock/templates/stock/item_base.html:82
+#: templates/js/translated/stock.js:1717
msgid "Add stock"
msgstr ""
-#: stock/templates/stock/item_base.html:83 templates/stock_table.html:34
+#: stock/templates/stock/item_base.html:83
+#: templates/js/translated/stock.js:1726
msgid "Remove stock"
msgstr ""
@@ -8115,11 +8137,12 @@ msgid "Serialize stock"
msgstr "Stoku seri numarala"
#: stock/templates/stock/item_base.html:89
-#: stock/templates/stock/location.html:94 templates/stock_table.html:36
+#: stock/templates/stock/location.html:94 templates/js/translated/stock.js:1744
msgid "Transfer stock"
msgstr ""
-#: stock/templates/stock/item_base.html:92 templates/stock_table.html:39
+#: stock/templates/stock/item_base.html:92
+#: templates/js/translated/stock.js:1798
msgid "Assign to customer"
msgstr ""
@@ -8159,6 +8182,11 @@ msgstr ""
msgid "Delete stock item"
msgstr ""
+#: stock/templates/stock/item_base.html:170 templates/InvenTree/search.html:139
+#: templates/js/translated/build.js:2046 templates/navbar.html:38
+msgid "Build"
+msgstr "Yapım İşi"
+
#: stock/templates/stock/item_base.html:194
msgid "Parent Item"
msgstr ""
@@ -8221,7 +8249,7 @@ msgid "Available Quantity"
msgstr ""
#: stock/templates/stock/item_base.html:394
-#: templates/js/translated/build.js:2015
+#: templates/js/translated/build.js:2306
msgid "No location set"
msgstr "Konum ayarlanmadı"
@@ -8239,7 +8267,7 @@ msgid "This StockItem expired on %(item.expiry_date)s"
msgstr "Bu stok kaleminin süresi %(item.expiry_date)s tarihinde sona erdi"
#: stock/templates/stock/item_base.html:433
-#: templates/js/translated/table_filters.js:381
+#: templates/js/translated/table_filters.js:387
msgid "Expired"
msgstr ""
@@ -8249,7 +8277,7 @@ msgid "This StockItem expires on %(item.expiry_date)s"
msgstr "Bu stok kaleminin süresi %(item.expiry_date)s tarihinde sona erecek"
#: stock/templates/stock/item_base.html:435
-#: templates/js/translated/table_filters.js:387
+#: templates/js/translated/table_filters.js:393
msgid "Stale"
msgstr ""
@@ -8258,7 +8286,7 @@ msgid "No stocktake performed"
msgstr ""
#: stock/templates/stock/item_base.html:503
-#: templates/js/translated/stock.js:1745
+#: templates/js/translated/stock.js:1865
msgid "stock item"
msgstr ""
@@ -8364,20 +8392,20 @@ msgstr "Yeni stok konumu oluştur"
msgid "New Location"
msgstr "Yeni Konum"
-#: stock/templates/stock/location.html:287
-#: templates/js/translated/stock.js:2318
+#: stock/templates/stock/location.html:278
+#: templates/js/translated/stock.js:2449
msgid "stock location"
msgstr ""
-#: stock/templates/stock/location.html:304
+#: stock/templates/stock/location.html:295
msgid "Scanned stock container into this location"
msgstr ""
-#: stock/templates/stock/location.html:377
+#: stock/templates/stock/location.html:368
msgid "Stock Location QR Code"
msgstr ""
-#: stock/templates/stock/location.html:388
+#: stock/templates/stock/location.html:379
msgid "Link Barcode to Stock Location"
msgstr ""
@@ -8451,71 +8479,71 @@ msgstr ""
msgid "Index"
msgstr ""
-#: templates/InvenTree/index.html:89
+#: templates/InvenTree/index.html:39
msgid "Subscribed Parts"
msgstr ""
-#: templates/InvenTree/index.html:102
+#: templates/InvenTree/index.html:53
msgid "Subscribed Categories"
msgstr ""
-#: templates/InvenTree/index.html:112
+#: templates/InvenTree/index.html:63
msgid "Latest Parts"
msgstr ""
-#: templates/InvenTree/index.html:126
+#: templates/InvenTree/index.html:78
msgid "BOM Waiting Validation"
msgstr ""
-#: templates/InvenTree/index.html:155
+#: templates/InvenTree/index.html:107
msgid "Recently Updated"
msgstr ""
-#: templates/InvenTree/index.html:180
+#: templates/InvenTree/index.html:134
msgid "Depleted Stock"
msgstr ""
-#: templates/InvenTree/index.html:193
+#: templates/InvenTree/index.html:148
msgid "Required for Build Orders"
msgstr "Yapım İşi Emirleri için Gerekli"
-#: templates/InvenTree/index.html:208
+#: templates/InvenTree/index.html:156
msgid "Expired Stock"
msgstr ""
-#: templates/InvenTree/index.html:222
+#: templates/InvenTree/index.html:172
msgid "Stale Stock"
msgstr ""
-#: templates/InvenTree/index.html:247
+#: templates/InvenTree/index.html:199
msgid "Build Orders In Progress"
msgstr ""
-#: templates/InvenTree/index.html:258
+#: templates/InvenTree/index.html:210
msgid "Overdue Build Orders"
msgstr ""
-#: templates/InvenTree/index.html:278
+#: templates/InvenTree/index.html:230
msgid "Outstanding Purchase Orders"
msgstr ""
-#: templates/InvenTree/index.html:289
+#: templates/InvenTree/index.html:241
msgid "Overdue Purchase Orders"
msgstr ""
-#: templates/InvenTree/index.html:310
+#: templates/InvenTree/index.html:262
msgid "Outstanding Sales Orders"
msgstr ""
-#: templates/InvenTree/index.html:321
+#: templates/InvenTree/index.html:273
msgid "Overdue Sales Orders"
msgstr ""
-#: templates/InvenTree/index.html:347
+#: templates/InvenTree/index.html:299
msgid "InvenTree News"
msgstr ""
-#: templates/InvenTree/index.html:349
+#: templates/InvenTree/index.html:301
msgid "Current News"
msgstr ""
@@ -8672,29 +8700,29 @@ msgstr ""
msgid "Changing the settings below require you to immediately restart the server. Do not change this while under active usage."
msgstr ""
-#: templates/InvenTree/settings/plugin.html:37
+#: templates/InvenTree/settings/plugin.html:35
#: templates/InvenTree/settings/sidebar.html:64
msgid "Plugins"
msgstr ""
-#: templates/InvenTree/settings/plugin.html:43
+#: templates/InvenTree/settings/plugin.html:41
#: templates/js/translated/plugin.js:151
msgid "Install Plugin"
msgstr ""
-#: templates/InvenTree/settings/plugin.html:51
+#: templates/InvenTree/settings/plugin.html:49
msgid "External plugins are not enabled for this InvenTree installation"
msgstr ""
-#: templates/InvenTree/settings/plugin.html:70
+#: templates/InvenTree/settings/plugin.html:64
msgid "Plugin Error Stack"
msgstr ""
-#: templates/InvenTree/settings/plugin.html:79
+#: templates/InvenTree/settings/plugin.html:73
msgid "Stage"
msgstr ""
-#: templates/InvenTree/settings/plugin.html:81
+#: templates/InvenTree/settings/plugin.html:75
#: templates/js/translated/notification.js:75
msgid "Message"
msgstr ""
@@ -8767,14 +8795,6 @@ msgstr "Commit Hash Değeri"
msgid "Commit Message"
msgstr ""
-#: templates/InvenTree/settings/plugin_settings.html:126
-msgid "Sign Status"
-msgstr ""
-
-#: templates/InvenTree/settings/plugin_settings.html:131
-msgid "Sign Key"
-msgstr ""
-
#: templates/InvenTree/settings/po.html:7
msgid "Purchase Order Settings"
msgstr ""
@@ -8870,12 +8890,12 @@ msgid "No category parameter templates found"
msgstr "Kategori parametre şablonu bulunamadı"
#: templates/InvenTree/settings/settings_staff_js.html:212
-#: templates/js/translated/part.js:1618
+#: templates/js/translated/part.js:1617
msgid "Edit Template"
msgstr "Şablonu Düzenle"
#: templates/InvenTree/settings/settings_staff_js.html:213
-#: templates/js/translated/part.js:1619
+#: templates/js/translated/part.js:1618
msgid "Delete Template"
msgstr "Şablonu Sil"
@@ -8913,7 +8933,7 @@ msgid "Home Page"
msgstr ""
#: templates/InvenTree/settings/sidebar.html:15
-#: templates/js/translated/tables.js:575 templates/navbar.html:107
+#: templates/js/translated/tables.js:551 templates/navbar.html:107
#: templates/search.html:8 templates/search_form.html:6
#: templates/search_form.html:7
msgid "Search"
@@ -8990,6 +9010,7 @@ msgid "Unverified"
msgstr ""
#: templates/InvenTree/settings/user.html:80
+#: templates/js/translated/company.js:984
msgid "Primary"
msgstr ""
@@ -9204,44 +9225,48 @@ msgstr "Güncel"
msgid "Update Available"
msgstr "Güncelleme Mevcut"
-#: templates/about.html:42
+#: templates/about.html:43
+msgid "Commit Branch"
+msgstr ""
+
+#: templates/about.html:49
msgid "InvenTree Documentation"
msgstr ""
-#: templates/about.html:47
+#: templates/about.html:54
msgid "API Version"
msgstr "API Sürümü"
-#: templates/about.html:52
+#: templates/about.html:59
msgid "Python Version"
msgstr "Python Sürümü"
-#: templates/about.html:57
+#: templates/about.html:64
msgid "Django Version"
msgstr "Django Sürümü"
-#: templates/about.html:62
+#: templates/about.html:69
msgid "View Code on GitHub"
msgstr ""
-#: templates/about.html:67
+#: templates/about.html:74
msgid "Credits"
msgstr "Katkıda Bulunanlar"
-#: templates/about.html:72
+#: templates/about.html:79
msgid "Mobile App"
msgstr "Mobil Uygulama"
-#: templates/about.html:77
+#: templates/about.html:84
msgid "Submit Bug Report"
msgstr "Hata Raporu Gönder"
-#: templates/about.html:84 templates/clip.html:4
+#: templates/about.html:91 templates/clip.html:4
#: templates/js/translated/helpers.js:585
msgid "copy to clipboard"
msgstr "panoya kopyala"
-#: templates/about.html:84
+#: templates/about.html:91
msgid "copy version information"
msgstr "sürüm bilgisini kopyala"
@@ -9435,14 +9460,6 @@ msgstr ""
msgid "Add Attachment"
msgstr "Dosya Ekle"
-#: templates/attachment_table.html:11
-msgid "Delete selected attachments"
-msgstr ""
-
-#: templates/attachment_table.html:12 templates/js/translated/attachment.js:129
-msgid "Delete Attachments"
-msgstr ""
-
#: templates/barcode_data.html:5
msgid "Barcode Identifier"
msgstr ""
@@ -9487,7 +9504,7 @@ msgid "The following parts are low on required stock"
msgstr ""
#: templates/email/build_order_required_stock.html:18
-#: templates/js/translated/bom.js:1633
+#: templates/js/translated/bom.js:1653 templates/js/translated/build.js:2485
msgid "Required Quantity"
msgstr ""
@@ -9501,7 +9518,7 @@ msgid "Click on the following link to view this part"
msgstr ""
#: templates/email/low_stock_notification.html:18
-#: templates/js/translated/part.js:3140
+#: templates/js/translated/part.js:3125
msgid "Minimum Quantity"
msgstr ""
@@ -9573,23 +9590,35 @@ msgstr ""
msgid "All selected attachments will be deleted"
msgstr ""
-#: templates/js/translated/attachment.js:255
+#: templates/js/translated/attachment.js:129
+msgid "Delete Attachments"
+msgstr ""
+
+#: templates/js/translated/attachment.js:205
+msgid "Delete attachments"
+msgstr ""
+
+#: templates/js/translated/attachment.js:253
+msgid "Attachment actions"
+msgstr ""
+
+#: templates/js/translated/attachment.js:275
msgid "No attachments found"
msgstr ""
-#: templates/js/translated/attachment.js:285
+#: templates/js/translated/attachment.js:305
msgid "Edit Attachment"
msgstr "Ek Düzenle"
-#: templates/js/translated/attachment.js:326
+#: templates/js/translated/attachment.js:336
msgid "Upload Date"
msgstr ""
-#: templates/js/translated/attachment.js:346
+#: templates/js/translated/attachment.js:356
msgid "Edit attachment"
msgstr ""
-#: templates/js/translated/attachment.js:354
+#: templates/js/translated/attachment.js:364
msgid "Delete attachment"
msgstr ""
@@ -9646,7 +9675,7 @@ msgstr ""
msgid "Unlink"
msgstr ""
-#: templates/js/translated/barcode.js:550 templates/js/translated/stock.js:1118
+#: templates/js/translated/barcode.js:550 templates/js/translated/stock.js:1117
msgid "Remove stock item"
msgstr ""
@@ -9704,775 +9733,869 @@ msgstr "Konuma Kaydet"
msgid "Barcode does not match a valid location"
msgstr "Barkod geçerli bir konumla eşleşmiyor"
-#: templates/js/translated/bom.js:77
+#: templates/js/translated/bom.js:78
msgid "Create BOM Item"
msgstr ""
-#: templates/js/translated/bom.js:131
+#: templates/js/translated/bom.js:132
msgid "Display row data"
msgstr ""
-#: templates/js/translated/bom.js:187
+#: templates/js/translated/bom.js:188
msgid "Row Data"
msgstr ""
-#: templates/js/translated/bom.js:188 templates/js/translated/bom.js:699
+#: templates/js/translated/bom.js:189 templates/js/translated/bom.js:700
#: templates/js/translated/modals.js:71 templates/js/translated/modals.js:622
#: templates/js/translated/modals.js:746 templates/js/translated/modals.js:1054
-#: templates/js/translated/purchase_order.js:791 templates/modals.html:15
+#: templates/js/translated/purchase_order.js:802 templates/modals.html:15
#: templates/modals.html:27 templates/modals.html:39 templates/modals.html:50
msgid "Close"
msgstr "Kapat"
-#: templates/js/translated/bom.js:305
+#: templates/js/translated/bom.js:306
msgid "Download BOM Template"
msgstr ""
-#: templates/js/translated/bom.js:350
+#: templates/js/translated/bom.js:351
msgid "Multi Level BOM"
msgstr ""
-#: templates/js/translated/bom.js:351
+#: templates/js/translated/bom.js:352
msgid "Include BOM data for subassemblies"
msgstr ""
-#: templates/js/translated/bom.js:356
+#: templates/js/translated/bom.js:357
msgid "Levels"
msgstr "Seviyeler"
-#: templates/js/translated/bom.js:357
+#: templates/js/translated/bom.js:358
msgid "Select maximum number of BOM levels to export (0 = all levels)"
msgstr ""
-#: templates/js/translated/bom.js:364
+#: templates/js/translated/bom.js:365
msgid "Include Alternative Parts"
msgstr ""
-#: templates/js/translated/bom.js:365
+#: templates/js/translated/bom.js:366
msgid "Include alternative parts in exported BOM"
msgstr ""
-#: templates/js/translated/bom.js:370
+#: templates/js/translated/bom.js:371
msgid "Include Parameter Data"
msgstr ""
-#: templates/js/translated/bom.js:371
+#: templates/js/translated/bom.js:372
msgid "Include part parameter data in exported BOM"
msgstr ""
-#: templates/js/translated/bom.js:376
+#: templates/js/translated/bom.js:377
msgid "Include Stock Data"
msgstr ""
-#: templates/js/translated/bom.js:377
+#: templates/js/translated/bom.js:378
msgid "Include part stock data in exported BOM"
msgstr ""
-#: templates/js/translated/bom.js:382
+#: templates/js/translated/bom.js:383
msgid "Include Manufacturer Data"
msgstr ""
-#: templates/js/translated/bom.js:383
+#: templates/js/translated/bom.js:384
msgid "Include part manufacturer data in exported BOM"
msgstr ""
-#: templates/js/translated/bom.js:388
+#: templates/js/translated/bom.js:389
msgid "Include Supplier Data"
msgstr ""
-#: templates/js/translated/bom.js:389
+#: templates/js/translated/bom.js:390
msgid "Include part supplier data in exported BOM"
msgstr "Dışa aktarılan malzeme listesine parça tedarikçisi verilerini dahil edin"
-#: templates/js/translated/bom.js:394
+#: templates/js/translated/bom.js:395
msgid "Include Pricing Data"
msgstr ""
-#: templates/js/translated/bom.js:395
+#: templates/js/translated/bom.js:396
msgid "Include part pricing data in exported BOM"
msgstr ""
-#: templates/js/translated/bom.js:590
+#: templates/js/translated/bom.js:591
msgid "Remove substitute part"
msgstr ""
-#: templates/js/translated/bom.js:644
+#: templates/js/translated/bom.js:645
msgid "Select and add a new substitute part using the input below"
msgstr ""
-#: templates/js/translated/bom.js:655
+#: templates/js/translated/bom.js:656
msgid "Are you sure you wish to remove this substitute part link?"
msgstr ""
-#: templates/js/translated/bom.js:661
+#: templates/js/translated/bom.js:662
msgid "Remove Substitute Part"
msgstr ""
-#: templates/js/translated/bom.js:700
+#: templates/js/translated/bom.js:701
msgid "Add Substitute"
msgstr ""
-#: templates/js/translated/bom.js:701
+#: templates/js/translated/bom.js:702
msgid "Edit BOM Item Substitutes"
msgstr ""
-#: templates/js/translated/bom.js:763
+#: templates/js/translated/bom.js:764
msgid "All selected BOM items will be deleted"
msgstr ""
-#: templates/js/translated/bom.js:779
+#: templates/js/translated/bom.js:780
msgid "Delete selected BOM items?"
msgstr ""
-#: templates/js/translated/bom.js:906
+#: templates/js/translated/bom.js:826
+msgid "Delete items"
+msgstr ""
+
+#: templates/js/translated/bom.js:924
msgid "Load BOM for subassembly"
msgstr ""
-#: templates/js/translated/bom.js:916
+#: templates/js/translated/bom.js:934
msgid "Substitutes Available"
msgstr ""
-#: templates/js/translated/bom.js:920 templates/js/translated/build.js:2090
+#: templates/js/translated/bom.js:938 templates/js/translated/build.js:2429
msgid "Variant stock allowed"
msgstr ""
-#: templates/js/translated/bom.js:984
+#: templates/js/translated/bom.js:1002
msgid "Substitutes"
msgstr ""
-#: templates/js/translated/bom.js:1104
+#: templates/js/translated/bom.js:1122
msgid "BOM pricing is complete"
msgstr ""
-#: templates/js/translated/bom.js:1109
+#: templates/js/translated/bom.js:1127
msgid "BOM pricing is incomplete"
msgstr ""
-#: templates/js/translated/bom.js:1116
+#: templates/js/translated/bom.js:1134
msgid "No pricing available"
msgstr ""
-#: templates/js/translated/bom.js:1147 templates/js/translated/build.js:2173
-#: templates/js/translated/sales_order.js:1887
+#: templates/js/translated/bom.js:1165 templates/js/translated/build.js:2523
+#: templates/js/translated/sales_order.js:1899
msgid "No Stock Available"
msgstr ""
-#: templates/js/translated/bom.js:1152 templates/js/translated/build.js:2177
+#: templates/js/translated/bom.js:1170 templates/js/translated/build.js:2527
msgid "Includes variant and substitute stock"
msgstr ""
-#: templates/js/translated/bom.js:1154 templates/js/translated/build.js:2179
-#: templates/js/translated/part.js:1230
+#: templates/js/translated/bom.js:1172 templates/js/translated/build.js:2529
+#: templates/js/translated/part.js:1229
msgid "Includes variant stock"
msgstr ""
-#: templates/js/translated/bom.js:1156 templates/js/translated/build.js:2181
+#: templates/js/translated/bom.js:1174 templates/js/translated/build.js:2531
msgid "Includes substitute stock"
msgstr ""
-#: templates/js/translated/bom.js:1184 templates/js/translated/build.js:2164
-#: templates/js/translated/build.js:2255
+#: templates/js/translated/bom.js:1204 templates/js/translated/build.js:2514
msgid "Consumable item"
msgstr ""
-#: templates/js/translated/bom.js:1244
+#: templates/js/translated/bom.js:1264
msgid "Validate BOM Item"
msgstr ""
-#: templates/js/translated/bom.js:1246
+#: templates/js/translated/bom.js:1266
msgid "This line has been validated"
msgstr ""
-#: templates/js/translated/bom.js:1248
+#: templates/js/translated/bom.js:1268
msgid "Edit substitute parts"
msgstr ""
-#: templates/js/translated/bom.js:1250 templates/js/translated/bom.js:1445
+#: templates/js/translated/bom.js:1270 templates/js/translated/bom.js:1465
msgid "Edit BOM Item"
msgstr ""
-#: templates/js/translated/bom.js:1252
+#: templates/js/translated/bom.js:1272
msgid "Delete BOM Item"
msgstr ""
-#: templates/js/translated/bom.js:1272
+#: templates/js/translated/bom.js:1292
msgid "View BOM"
msgstr ""
-#: templates/js/translated/bom.js:1356 templates/js/translated/build.js:1927
+#: templates/js/translated/bom.js:1376
msgid "No BOM items found"
msgstr ""
-#: templates/js/translated/bom.js:1616 templates/js/translated/build.js:2073
+#: templates/js/translated/bom.js:1636 templates/js/translated/build.js:2414
msgid "Required Part"
msgstr "Gerekli Parça"
-#: templates/js/translated/bom.js:1642
+#: templates/js/translated/bom.js:1662
msgid "Inherited from parent BOM"
msgstr ""
-#: templates/js/translated/build.js:126
+#: templates/js/translated/build.js:136
msgid "Edit Build Order"
msgstr ""
-#: templates/js/translated/build.js:169
+#: templates/js/translated/build.js:179
msgid "Create Build Order"
msgstr ""
-#: templates/js/translated/build.js:202
+#: templates/js/translated/build.js:211
msgid "Cancel Build Order"
msgstr ""
-#: templates/js/translated/build.js:211
+#: templates/js/translated/build.js:220
msgid "Are you sure you wish to cancel this build?"
msgstr ""
-#: templates/js/translated/build.js:217
+#: templates/js/translated/build.js:226
msgid "Stock items have been allocated to this build order"
msgstr ""
-#: templates/js/translated/build.js:224
+#: templates/js/translated/build.js:233
msgid "There are incomplete outputs remaining for this build order"
msgstr ""
-#: templates/js/translated/build.js:276
+#: templates/js/translated/build.js:285
msgid "Build order is ready to be completed"
msgstr ""
-#: templates/js/translated/build.js:284
+#: templates/js/translated/build.js:293
msgid "This build order cannot be completed as there are incomplete outputs"
msgstr ""
-#: templates/js/translated/build.js:289
+#: templates/js/translated/build.js:298
msgid "Build Order is incomplete"
msgstr "Yapım işi emri eksik"
-#: templates/js/translated/build.js:307
+#: templates/js/translated/build.js:316
msgid "Complete Build Order"
msgstr "Tamamlanmış Yapım İşi Emri"
-#: templates/js/translated/build.js:348 templates/js/translated/stock.js:119
-#: templates/js/translated/stock.js:265
+#: templates/js/translated/build.js:357 templates/js/translated/stock.js:118
+#: templates/js/translated/stock.js:264
msgid "Next available serial number"
msgstr ""
-#: templates/js/translated/build.js:350 templates/js/translated/stock.js:121
-#: templates/js/translated/stock.js:267
+#: templates/js/translated/build.js:359 templates/js/translated/stock.js:120
+#: templates/js/translated/stock.js:266
msgid "Latest serial number"
msgstr ""
-#: templates/js/translated/build.js:359
+#: templates/js/translated/build.js:368
msgid "The Bill of Materials contains trackable parts"
msgstr "Bu Malzeme Listesi takip edilebilir parçalar içeriyor"
-#: templates/js/translated/build.js:360
+#: templates/js/translated/build.js:369
msgid "Build outputs must be generated individually"
msgstr ""
-#: templates/js/translated/build.js:368
+#: templates/js/translated/build.js:377
msgid "Trackable parts can have serial numbers specified"
msgstr "Takip edilebilir parçaların seri numaraları belirtilmiş olmalı"
-#: templates/js/translated/build.js:369
+#: templates/js/translated/build.js:378
msgid "Enter serial numbers to generate multiple single build outputs"
msgstr "Birden çok tek yapım işi çıktısı oluşturmak için seri numaraları girin"
-#: templates/js/translated/build.js:376
+#: templates/js/translated/build.js:385
msgid "Create Build Output"
msgstr "Yapım İşi Çıktısı Oluştur"
-#: templates/js/translated/build.js:407
+#: templates/js/translated/build.js:416
msgid "Allocate stock items to this build output"
msgstr ""
-#: templates/js/translated/build.js:418
-msgid "Unallocate stock from build output"
+#: templates/js/translated/build.js:424
+msgid "Deallocate stock from build output"
msgstr ""
-#: templates/js/translated/build.js:427
+#: templates/js/translated/build.js:433
msgid "Complete build output"
msgstr ""
-#: templates/js/translated/build.js:435
+#: templates/js/translated/build.js:441
msgid "Scrap build output"
msgstr ""
-#: templates/js/translated/build.js:442
+#: templates/js/translated/build.js:448
msgid "Delete build output"
msgstr ""
-#: templates/js/translated/build.js:462
-msgid "Are you sure you wish to unallocate stock items from this build?"
+#: templates/js/translated/build.js:468
+msgid "Are you sure you wish to deallocate the selected stock items from this build?"
msgstr ""
-#: templates/js/translated/build.js:480
-msgid "Unallocate Stock Items"
+#: templates/js/translated/build.js:486
+msgid "Deallocate Stock Items"
msgstr ""
-#: templates/js/translated/build.js:566 templates/js/translated/build.js:690
-#: templates/js/translated/build.js:812
+#: templates/js/translated/build.js:572 templates/js/translated/build.js:696
+#: templates/js/translated/build.js:818
msgid "Select Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:567 templates/js/translated/build.js:691
-#: templates/js/translated/build.js:813
+#: templates/js/translated/build.js:573 templates/js/translated/build.js:697
+#: templates/js/translated/build.js:819
msgid "At least one build output must be selected"
msgstr ""
-#: templates/js/translated/build.js:581
+#: templates/js/translated/build.js:587
msgid "Selected build outputs will be marked as complete"
msgstr ""
-#: templates/js/translated/build.js:585 templates/js/translated/build.js:715
-#: templates/js/translated/build.js:835
+#: templates/js/translated/build.js:591 templates/js/translated/build.js:721
+#: templates/js/translated/build.js:841
msgid "Output"
msgstr ""
-#: templates/js/translated/build.js:609
+#: templates/js/translated/build.js:615
msgid "Complete Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:706
+#: templates/js/translated/build.js:712
msgid "Selected build outputs will be marked as scrapped"
msgstr ""
-#: templates/js/translated/build.js:708
+#: templates/js/translated/build.js:714
msgid "Scrapped output are marked as rejected"
msgstr ""
-#: templates/js/translated/build.js:709
+#: templates/js/translated/build.js:715
msgid "Allocated stock items will no longer be available"
msgstr ""
-#: templates/js/translated/build.js:710
+#: templates/js/translated/build.js:716
msgid "The completion status of the build order will not be adjusted"
msgstr ""
-#: templates/js/translated/build.js:737
+#: templates/js/translated/build.js:743
msgid "Scrap Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:827
+#: templates/js/translated/build.js:833
msgid "Selected build outputs will be deleted"
msgstr ""
-#: templates/js/translated/build.js:829
+#: templates/js/translated/build.js:835
msgid "Build output data will be permanently deleted"
msgstr ""
-#: templates/js/translated/build.js:830
+#: templates/js/translated/build.js:836
msgid "Allocated stock items will be returned to stock"
msgstr ""
-#: templates/js/translated/build.js:848
+#: templates/js/translated/build.js:854
msgid "Delete Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:934
+#: templates/js/translated/build.js:941
msgid "No build order allocations found"
msgstr ""
-#: templates/js/translated/build.js:971
+#: templates/js/translated/build.js:970 templates/js/translated/build.js:2270
+msgid "Allocated Quantity"
+msgstr ""
+
+#: templates/js/translated/build.js:984
msgid "Location not specified"
msgstr ""
-#: templates/js/translated/build.js:1047
+#: templates/js/translated/build.js:1006
+msgid "Complete outputs"
+msgstr ""
+
+#: templates/js/translated/build.js:1024
+msgid "Scrap outputs"
+msgstr ""
+
+#: templates/js/translated/build.js:1042
+msgid "Delete outputs"
+msgstr ""
+
+#: templates/js/translated/build.js:1100
msgid "build output"
msgstr ""
-#: templates/js/translated/build.js:1048
+#: templates/js/translated/build.js:1101
msgid "build outputs"
msgstr ""
-#: templates/js/translated/build.js:1383
+#: templates/js/translated/build.js:1105
+msgid "Build output actions"
+msgstr ""
+
+#: templates/js/translated/build.js:1274
msgid "No active build outputs found"
msgstr ""
-#: templates/js/translated/build.js:1457
-msgid "Allocated Stock"
+#: templates/js/translated/build.js:1329
+msgid "Allocated Lines"
msgstr ""
-#: templates/js/translated/build.js:1464
-msgid "No tracked BOM items for this build"
+#: templates/js/translated/build.js:1343
+msgid "Required Tests"
msgstr ""
-#: templates/js/translated/build.js:1486
-msgid "Completed Tests"
-msgstr ""
-
-#: templates/js/translated/build.js:1491
-msgid "No required tests for this build"
-msgstr ""
-
-#: templates/js/translated/build.js:2032 templates/js/translated/build.js:3056
-#: templates/js/translated/sales_order.js:1632
-msgid "Edit stock allocation"
-msgstr "Stok tahsisini düzenle"
-
-#: templates/js/translated/build.js:2034 templates/js/translated/build.js:3057
-#: templates/js/translated/sales_order.js:1633
-msgid "Delete stock allocation"
-msgstr "Stok tahsisini sil"
-
-#: templates/js/translated/build.js:2050
-msgid "Edit Allocation"
-msgstr ""
-
-#: templates/js/translated/build.js:2060
-msgid "Remove Allocation"
-msgstr ""
-
-#: templates/js/translated/build.js:2086
-msgid "Substitute parts available"
-msgstr ""
-
-#: templates/js/translated/build.js:2122
-msgid "Quantity Per"
-msgstr ""
-
-#: templates/js/translated/build.js:2167
-#: templates/js/translated/sales_order.js:1894
-msgid "Insufficient stock available"
-msgstr ""
-
-#: templates/js/translated/build.js:2169
-#: templates/js/translated/sales_order.js:1892
-msgid "Sufficient stock available"
-msgstr ""
-
-#: templates/js/translated/build.js:2263
-#: templates/js/translated/sales_order.js:1993
-msgid "Build stock"
-msgstr ""
-
-#: templates/js/translated/build.js:2267 templates/stock_table.html:38
-msgid "Order stock"
-msgstr ""
-
-#: templates/js/translated/build.js:2270
-#: templates/js/translated/sales_order.js:1987
-msgid "Allocate stock"
-msgstr ""
-
-#: templates/js/translated/build.js:2310
-#: templates/js/translated/purchase_order.js:616
-#: templates/js/translated/sales_order.js:1159
+#: templates/js/translated/build.js:1502
+#: templates/js/translated/purchase_order.js:627
+#: templates/js/translated/sales_order.js:1171
msgid "Select Parts"
msgstr "Parçaları Seçin"
-#: templates/js/translated/build.js:2311
-#: templates/js/translated/sales_order.js:1160
+#: templates/js/translated/build.js:1503
+#: templates/js/translated/sales_order.js:1172
msgid "You must select at least one part to allocate"
msgstr ""
-#: templates/js/translated/build.js:2359
-#: templates/js/translated/sales_order.js:1109
+#: templates/js/translated/build.js:1566
+#: templates/js/translated/sales_order.js:1121
msgid "Specify stock allocation quantity"
msgstr ""
-#: templates/js/translated/build.js:2438
+#: templates/js/translated/build.js:1643
msgid "All Parts Allocated"
msgstr ""
-#: templates/js/translated/build.js:2439
+#: templates/js/translated/build.js:1644
msgid "All selected parts have been fully allocated"
msgstr ""
-#: templates/js/translated/build.js:2453
-#: templates/js/translated/sales_order.js:1174
+#: templates/js/translated/build.js:1658
+#: templates/js/translated/sales_order.js:1186
msgid "Select source location (leave blank to take from all locations)"
msgstr ""
-#: templates/js/translated/build.js:2481
+#: templates/js/translated/build.js:1686
msgid "Allocate Stock Items to Build Order"
msgstr ""
-#: templates/js/translated/build.js:2492
-#: templates/js/translated/sales_order.js:1271
+#: templates/js/translated/build.js:1697
+#: templates/js/translated/sales_order.js:1283
msgid "No matching stock locations"
msgstr ""
-#: templates/js/translated/build.js:2565
-#: templates/js/translated/sales_order.js:1348
+#: templates/js/translated/build.js:1770
+#: templates/js/translated/sales_order.js:1360
msgid "No matching stock items"
msgstr ""
-#: templates/js/translated/build.js:2662
+#: templates/js/translated/build.js:1867
msgid "Automatic Stock Allocation"
msgstr ""
-#: templates/js/translated/build.js:2663
+#: templates/js/translated/build.js:1868
msgid "Stock items will be automatically allocated to this build order, according to the provided guidelines"
msgstr ""
-#: templates/js/translated/build.js:2665
+#: templates/js/translated/build.js:1870
msgid "If a location is specified, stock will only be allocated from that location"
msgstr ""
-#: templates/js/translated/build.js:2666
+#: templates/js/translated/build.js:1871
msgid "If stock is considered interchangeable, it will be allocated from the first location it is found"
msgstr ""
-#: templates/js/translated/build.js:2667
+#: templates/js/translated/build.js:1872
msgid "If substitute stock is allowed, it will be used where stock of the primary part cannot be found"
msgstr ""
-#: templates/js/translated/build.js:2694
+#: templates/js/translated/build.js:1899
msgid "Allocate Stock Items"
msgstr ""
-#: templates/js/translated/build.js:2800
+#: templates/js/translated/build.js:2005
msgid "No builds matching query"
msgstr ""
-#: templates/js/translated/build.js:2835 templates/js/translated/part.js:2208
-#: templates/js/translated/part.js:2692 templates/js/translated/stock.js:1759
-#: templates/js/translated/stock.js:2458
+#: templates/js/translated/build.js:2040 templates/js/translated/build.js:2408
+#: templates/js/translated/part.js:2284 templates/js/translated/part.js:2677
+#: templates/js/translated/stock.js:1899 templates/js/translated/stock.js:2589
msgid "Select"
msgstr ""
-#: templates/js/translated/build.js:2849
+#: templates/js/translated/build.js:2054
msgid "Build order is overdue"
msgstr ""
-#: templates/js/translated/build.js:2883
+#: templates/js/translated/build.js:2100
msgid "Progress"
msgstr ""
-#: templates/js/translated/build.js:2919 templates/js/translated/stock.js:2779
+#: templates/js/translated/build.js:2136 templates/js/translated/stock.js:2910
msgid "No user information"
msgstr ""
-#: templates/js/translated/build.js:2934
+#: templates/js/translated/build.js:2151
msgid "group"
msgstr ""
-#: templates/js/translated/build.js:3033
-msgid "No parts allocated for"
+#: templates/js/translated/build.js:2315
+#: templates/js/translated/sales_order.js:1644
+msgid "Edit stock allocation"
+msgstr "Stok tahsisini düzenle"
+
+#: templates/js/translated/build.js:2316
+#: templates/js/translated/sales_order.js:1645
+msgid "Delete stock allocation"
+msgstr "Stok tahsisini sil"
+
+#: templates/js/translated/build.js:2331
+msgid "Edit Allocation"
msgstr ""
-#: templates/js/translated/company.js:87
+#: templates/js/translated/build.js:2343
+msgid "Remove Allocation"
+msgstr ""
+
+#: templates/js/translated/build.js:2384
+msgid "build line"
+msgstr ""
+
+#: templates/js/translated/build.js:2385
+msgid "build lines"
+msgstr ""
+
+#: templates/js/translated/build.js:2403
+msgid "No build lines found"
+msgstr ""
+
+#: templates/js/translated/build.js:2433 templates/js/translated/part.js:767
+#: templates/js/translated/part.js:1175
+msgid "Trackable part"
+msgstr ""
+
+#: templates/js/translated/build.js:2468
+msgid "Unit Quantity"
+msgstr ""
+
+#: templates/js/translated/build.js:2517
+#: templates/js/translated/sales_order.js:1906
+msgid "Insufficient stock available"
+msgstr ""
+
+#: templates/js/translated/build.js:2519
+#: templates/js/translated/sales_order.js:1904
+msgid "Sufficient stock available"
+msgstr ""
+
+#: templates/js/translated/build.js:2566
+msgid "Consumable Item"
+msgstr ""
+
+#: templates/js/translated/build.js:2571
+msgid "Tracked item"
+msgstr ""
+
+#: templates/js/translated/build.js:2578
+#: templates/js/translated/sales_order.js:2005
+msgid "Build stock"
+msgstr ""
+
+#: templates/js/translated/build.js:2583 templates/js/translated/stock.js:1779
+msgid "Order stock"
+msgstr ""
+
+#: templates/js/translated/build.js:2587
+#: templates/js/translated/sales_order.js:1999
+msgid "Allocate stock"
+msgstr ""
+
+#: templates/js/translated/build.js:2591
+msgid "Remove stock allocation"
+msgstr ""
+
+#: templates/js/translated/company.js:97
msgid "Add Manufacturer"
msgstr ""
-#: templates/js/translated/company.js:100
-#: templates/js/translated/company.js:202
+#: templates/js/translated/company.js:110
+#: templates/js/translated/company.js:212
msgid "Add Manufacturer Part"
msgstr ""
-#: templates/js/translated/company.js:121
+#: templates/js/translated/company.js:131
msgid "Edit Manufacturer Part"
msgstr ""
-#: templates/js/translated/company.js:190
-#: templates/js/translated/purchase_order.js:94
+#: templates/js/translated/company.js:200
+#: templates/js/translated/purchase_order.js:93
msgid "Add Supplier"
msgstr ""
-#: templates/js/translated/company.js:232
-#: templates/js/translated/purchase_order.js:338
+#: templates/js/translated/company.js:242
+#: templates/js/translated/purchase_order.js:349
msgid "Add Supplier Part"
msgstr ""
-#: templates/js/translated/company.js:333
+#: templates/js/translated/company.js:343
msgid "All selected supplier parts will be deleted"
msgstr ""
-#: templates/js/translated/company.js:349
+#: templates/js/translated/company.js:359
msgid "Delete Supplier Parts"
msgstr ""
-#: templates/js/translated/company.js:457
+#: templates/js/translated/company.js:464
msgid "Add new Company"
msgstr ""
-#: templates/js/translated/company.js:528
+#: templates/js/translated/company.js:535
msgid "Parts Supplied"
msgstr ""
-#: templates/js/translated/company.js:537
+#: templates/js/translated/company.js:544
msgid "Parts Manufactured"
msgstr ""
-#: templates/js/translated/company.js:552
+#: templates/js/translated/company.js:559
msgid "No company information found"
msgstr ""
-#: templates/js/translated/company.js:601
+#: templates/js/translated/company.js:608
msgid "Create New Contact"
msgstr ""
-#: templates/js/translated/company.js:617
-#: templates/js/translated/company.js:740
+#: templates/js/translated/company.js:624
+#: templates/js/translated/company.js:747
msgid "Edit Contact"
msgstr ""
-#: templates/js/translated/company.js:654
+#: templates/js/translated/company.js:661
msgid "All selected contacts will be deleted"
msgstr ""
-#: templates/js/translated/company.js:660
-#: templates/js/translated/company.js:724
+#: templates/js/translated/company.js:667
+#: templates/js/translated/company.js:731
msgid "Role"
msgstr ""
-#: templates/js/translated/company.js:668
+#: templates/js/translated/company.js:675
msgid "Delete Contacts"
msgstr ""
-#: templates/js/translated/company.js:699
+#: templates/js/translated/company.js:706
msgid "No contacts found"
msgstr ""
-#: templates/js/translated/company.js:712
+#: templates/js/translated/company.js:719
msgid "Phone Number"
msgstr ""
-#: templates/js/translated/company.js:718
+#: templates/js/translated/company.js:725
msgid "Email Address"
msgstr ""
-#: templates/js/translated/company.js:744
+#: templates/js/translated/company.js:751
msgid "Delete Contact"
msgstr ""
-#: templates/js/translated/company.js:818
+#: templates/js/translated/company.js:886
+msgid "Create New Address"
+msgstr ""
+
+#: templates/js/translated/company.js:901
+#: templates/js/translated/company.js:1066
+msgid "Edit Address"
+msgstr ""
+
+#: templates/js/translated/company.js:936
+msgid "All selected addresses will be deleted"
+msgstr ""
+
+#: templates/js/translated/company.js:950
+msgid "Delete Addresses"
+msgstr ""
+
+#: templates/js/translated/company.js:977
+msgid "No addresses found"
+msgstr ""
+
+#: templates/js/translated/company.js:1020
+msgid "Postal city"
+msgstr ""
+
+#: templates/js/translated/company.js:1026
+msgid "State/province"
+msgstr ""
+
+#: templates/js/translated/company.js:1038
+msgid "Courier notes"
+msgstr ""
+
+#: templates/js/translated/company.js:1044
+msgid "Internal notes"
+msgstr ""
+
+#: templates/js/translated/company.js:1070
+msgid "Delete Address"
+msgstr ""
+
+#: templates/js/translated/company.js:1143
msgid "All selected manufacturer parts will be deleted"
msgstr ""
-#: templates/js/translated/company.js:833
+#: templates/js/translated/company.js:1158
msgid "Delete Manufacturer Parts"
msgstr ""
-#: templates/js/translated/company.js:867
+#: templates/js/translated/company.js:1192
msgid "All selected parameters will be deleted"
msgstr ""
-#: templates/js/translated/company.js:881
+#: templates/js/translated/company.js:1206
msgid "Delete Parameters"
msgstr ""
-#: templates/js/translated/company.js:917
+#: templates/js/translated/company.js:1222
+#: templates/js/translated/company.js:1510 templates/js/translated/part.js:2213
+msgid "Order parts"
+msgstr ""
+
+#: templates/js/translated/company.js:1239
+msgid "Delete manufacturer parts"
+msgstr ""
+
+#: templates/js/translated/company.js:1271
+msgid "Manufacturer part actions"
+msgstr ""
+
+#: templates/js/translated/company.js:1290
msgid "No manufacturer parts found"
msgstr ""
-#: templates/js/translated/company.js:937
-#: templates/js/translated/company.js:1177 templates/js/translated/part.js:776
-#: templates/js/translated/part.js:1184
+#: templates/js/translated/company.js:1310
+#: templates/js/translated/company.js:1598 templates/js/translated/part.js:775
+#: templates/js/translated/part.js:1183
msgid "Template part"
msgstr "Şablon Parça"
-#: templates/js/translated/company.js:941
-#: templates/js/translated/company.js:1181 templates/js/translated/part.js:780
-#: templates/js/translated/part.js:1188
+#: templates/js/translated/company.js:1314
+#: templates/js/translated/company.js:1602 templates/js/translated/part.js:779
+#: templates/js/translated/part.js:1187
msgid "Assembled part"
msgstr ""
-#: templates/js/translated/company.js:1061 templates/js/translated/part.js:1437
+#: templates/js/translated/company.js:1434 templates/js/translated/part.js:1436
msgid "No parameters found"
msgstr ""
-#: templates/js/translated/company.js:1096 templates/js/translated/part.js:1500
+#: templates/js/translated/company.js:1469 templates/js/translated/part.js:1499
msgid "Edit parameter"
msgstr ""
-#: templates/js/translated/company.js:1097 templates/js/translated/part.js:1501
+#: templates/js/translated/company.js:1470 templates/js/translated/part.js:1500
msgid "Delete parameter"
msgstr ""
-#: templates/js/translated/company.js:1114 templates/js/translated/part.js:1407
+#: templates/js/translated/company.js:1487 templates/js/translated/part.js:1406
msgid "Edit Parameter"
msgstr ""
-#: templates/js/translated/company.js:1123 templates/js/translated/part.js:1522
+#: templates/js/translated/company.js:1496 templates/js/translated/part.js:1521
msgid "Delete Parameter"
msgstr ""
-#: templates/js/translated/company.js:1156
+#: templates/js/translated/company.js:1527
+msgid "Delete supplier parts"
+msgstr "Tedarikçi parçalarını sil"
+
+#: templates/js/translated/company.js:1577
msgid "No supplier parts found"
msgstr ""
-#: templates/js/translated/company.js:1274
+#: templates/js/translated/company.js:1695
msgid "Base Units"
msgstr ""
-#: templates/js/translated/company.js:1304
+#: templates/js/translated/company.js:1725
msgid "Availability"
msgstr ""
-#: templates/js/translated/company.js:1335
+#: templates/js/translated/company.js:1756
msgid "Edit supplier part"
msgstr "Tedarikçi parçasını düzenle"
-#: templates/js/translated/company.js:1336
+#: templates/js/translated/company.js:1757
msgid "Delete supplier part"
msgstr "Tedarikçi parçasını sil"
-#: templates/js/translated/company.js:1389
+#: templates/js/translated/company.js:1810
#: templates/js/translated/pricing.js:694
msgid "Delete Price Break"
msgstr ""
-#: templates/js/translated/company.js:1399
+#: templates/js/translated/company.js:1820
#: templates/js/translated/pricing.js:712
msgid "Edit Price Break"
msgstr ""
-#: templates/js/translated/company.js:1414
+#: templates/js/translated/company.js:1835
msgid "No price break information found"
msgstr ""
-#: templates/js/translated/company.js:1443
+#: templates/js/translated/company.js:1864
msgid "Last updated"
msgstr ""
-#: templates/js/translated/company.js:1450
+#: templates/js/translated/company.js:1871
msgid "Edit price break"
msgstr ""
-#: templates/js/translated/company.js:1451
+#: templates/js/translated/company.js:1872
msgid "Delete price break"
msgstr ""
-#: templates/js/translated/filters.js:186
-#: templates/js/translated/filters.js:550
+#: templates/js/translated/filters.js:187
+#: templates/js/translated/filters.js:673
msgid "true"
msgstr "doğru"
-#: templates/js/translated/filters.js:190
-#: templates/js/translated/filters.js:551
+#: templates/js/translated/filters.js:191
+#: templates/js/translated/filters.js:674
msgid "false"
msgstr "yanlış"
-#: templates/js/translated/filters.js:214
+#: templates/js/translated/filters.js:215
msgid "Select filter"
msgstr ""
-#: templates/js/translated/filters.js:328
+#: templates/js/translated/filters.js:438
msgid "Print Labels"
msgstr ""
-#: templates/js/translated/filters.js:332
+#: templates/js/translated/filters.js:442
msgid "Print Reports"
msgstr ""
-#: templates/js/translated/filters.js:344
+#: templates/js/translated/filters.js:454
msgid "Download table data"
msgstr ""
-#: templates/js/translated/filters.js:351
+#: templates/js/translated/filters.js:461
msgid "Reload table data"
msgstr ""
-#: templates/js/translated/filters.js:360
+#: templates/js/translated/filters.js:470
msgid "Add new filter"
msgstr ""
-#: templates/js/translated/filters.js:368
+#: templates/js/translated/filters.js:478
msgid "Clear all filters"
msgstr ""
-#: templates/js/translated/filters.js:460
+#: templates/js/translated/filters.js:583
msgid "Create filter"
msgstr ""
@@ -10497,6 +10620,12 @@ msgstr ""
msgid "View operation not allowed"
msgstr ""
+#: templates/js/translated/forms.js:506 templates/js/translated/helpers.js:105
+#: templates/js/translated/part.js:369 templates/js/translated/pricing.js:629
+#: templates/js/translated/stock.js:215 users/models.py:253
+msgid "Delete"
+msgstr ""
+
#: templates/js/translated/forms.js:752
msgid "Keep this form open"
msgstr ""
@@ -10514,23 +10643,23 @@ msgstr ""
msgid "No results found"
msgstr ""
-#: templates/js/translated/forms.js:2071 templates/js/translated/search.js:281
+#: templates/js/translated/forms.js:2071 templates/js/translated/search.js:239
msgid "Searching"
msgstr ""
-#: templates/js/translated/forms.js:2276
+#: templates/js/translated/forms.js:2285
msgid "Clear input"
msgstr ""
-#: templates/js/translated/forms.js:2733
+#: templates/js/translated/forms.js:2742
msgid "File Column"
msgstr ""
-#: templates/js/translated/forms.js:2733
+#: templates/js/translated/forms.js:2742
msgid "Field Name"
msgstr ""
-#: templates/js/translated/forms.js:2745
+#: templates/js/translated/forms.js:2754
msgid "Select Columns"
msgstr ""
@@ -10550,6 +10679,14 @@ msgstr ""
msgid "False"
msgstr ""
+#: templates/js/translated/index.js:99
+msgid "No parts required for builds"
+msgstr ""
+
+#: templates/js/translated/index.js:125
+msgid "Allocated Stock"
+msgstr ""
+
#: templates/js/translated/label.js:58
msgid "Select Printer"
msgstr ""
@@ -10651,7 +10788,7 @@ msgstr ""
#: templates/js/translated/news.js:38
#: templates/js/translated/notification.js:45
-#: templates/js/translated/part.js:1577
+#: templates/js/translated/part.js:1576
msgid "ID"
msgstr ""
@@ -10700,7 +10837,7 @@ msgid "Delete Line"
msgstr ""
#: templates/js/translated/order.js:281
-#: templates/js/translated/purchase_order.js:1958
+#: templates/js/translated/purchase_order.js:1968
msgid "No line items found"
msgstr ""
@@ -10716,363 +10853,355 @@ msgstr ""
msgid "Delete line"
msgstr ""
-#: templates/js/translated/part.js:91
+#: templates/js/translated/part.js:90
msgid "Part Attributes"
msgstr ""
-#: templates/js/translated/part.js:95
+#: templates/js/translated/part.js:94
msgid "Part Creation Options"
msgstr ""
-#: templates/js/translated/part.js:99
+#: templates/js/translated/part.js:98
msgid "Part Duplication Options"
msgstr ""
-#: templates/js/translated/part.js:122
+#: templates/js/translated/part.js:121
msgid "Add Part Category"
msgstr ""
-#: templates/js/translated/part.js:294
+#: templates/js/translated/part.js:293
msgid "Parent part category"
msgstr ""
-#: templates/js/translated/part.js:310 templates/js/translated/stock.js:147
+#: templates/js/translated/part.js:309 templates/js/translated/stock.js:146
msgid "Icon (optional) - Explore all available icons on"
msgstr ""
-#: templates/js/translated/part.js:330
+#: templates/js/translated/part.js:329
msgid "Create Part Category"
msgstr ""
-#: templates/js/translated/part.js:333
+#: templates/js/translated/part.js:332
msgid "Create new category after this one"
msgstr ""
-#: templates/js/translated/part.js:334
+#: templates/js/translated/part.js:333
msgid "Part category created"
msgstr ""
-#: templates/js/translated/part.js:348
+#: templates/js/translated/part.js:347
msgid "Edit Part Category"
msgstr ""
-#: templates/js/translated/part.js:361
+#: templates/js/translated/part.js:360
msgid "Are you sure you want to delete this part category?"
msgstr ""
-#: templates/js/translated/part.js:366
+#: templates/js/translated/part.js:365
msgid "Move to parent category"
msgstr ""
-#: templates/js/translated/part.js:375
+#: templates/js/translated/part.js:374
msgid "Delete Part Category"
msgstr ""
-#: templates/js/translated/part.js:379
+#: templates/js/translated/part.js:378
msgid "Action for parts in this category"
msgstr ""
-#: templates/js/translated/part.js:384
+#: templates/js/translated/part.js:383
msgid "Action for child categories"
msgstr ""
-#: templates/js/translated/part.js:408
+#: templates/js/translated/part.js:407
msgid "Create Part"
msgstr ""
-#: templates/js/translated/part.js:410
+#: templates/js/translated/part.js:409
msgid "Create another part after this one"
msgstr ""
-#: templates/js/translated/part.js:411
+#: templates/js/translated/part.js:410
msgid "Part created successfully"
msgstr ""
-#: templates/js/translated/part.js:439
+#: templates/js/translated/part.js:438
msgid "Edit Part"
msgstr ""
-#: templates/js/translated/part.js:441
+#: templates/js/translated/part.js:440
msgid "Part edited"
msgstr ""
-#: templates/js/translated/part.js:452
+#: templates/js/translated/part.js:451
msgid "Create Part Variant"
msgstr ""
-#: templates/js/translated/part.js:509
+#: templates/js/translated/part.js:508
msgid "Active Part"
msgstr ""
-#: templates/js/translated/part.js:510
+#: templates/js/translated/part.js:509
msgid "Part cannot be deleted as it is currently active"
msgstr ""
-#: templates/js/translated/part.js:524
+#: templates/js/translated/part.js:523
msgid "Deleting this part cannot be reversed"
msgstr ""
-#: templates/js/translated/part.js:526
+#: templates/js/translated/part.js:525
msgid "Any stock items for this part will be deleted"
msgstr ""
-#: templates/js/translated/part.js:527
+#: templates/js/translated/part.js:526
msgid "This part will be removed from any Bills of Material"
msgstr ""
-#: templates/js/translated/part.js:528
+#: templates/js/translated/part.js:527
msgid "All manufacturer and supplier information for this part will be deleted"
msgstr ""
-#: templates/js/translated/part.js:535
+#: templates/js/translated/part.js:534
msgid "Delete Part"
msgstr ""
-#: templates/js/translated/part.js:571
+#: templates/js/translated/part.js:570
msgid "You are subscribed to notifications for this item"
msgstr ""
-#: templates/js/translated/part.js:573
+#: templates/js/translated/part.js:572
msgid "You have subscribed to notifications for this item"
msgstr ""
-#: templates/js/translated/part.js:578
+#: templates/js/translated/part.js:577
msgid "Subscribe to notifications for this item"
msgstr ""
-#: templates/js/translated/part.js:580
+#: templates/js/translated/part.js:579
msgid "You have unsubscribed to notifications for this item"
msgstr ""
-#: templates/js/translated/part.js:597
+#: templates/js/translated/part.js:596
msgid "Validating the BOM will mark each line item as valid"
msgstr ""
-#: templates/js/translated/part.js:607
+#: templates/js/translated/part.js:606
msgid "Validate Bill of Materials"
msgstr ""
-#: templates/js/translated/part.js:610
+#: templates/js/translated/part.js:609
msgid "Validated Bill of Materials"
msgstr ""
-#: templates/js/translated/part.js:635
+#: templates/js/translated/part.js:634
msgid "Copy Bill of Materials"
msgstr ""
-#: templates/js/translated/part.js:663
-#: templates/js/translated/table_filters.js:660
+#: templates/js/translated/part.js:662
+#: templates/js/translated/table_filters.js:682
msgid "Low stock"
msgstr ""
-#: templates/js/translated/part.js:666
+#: templates/js/translated/part.js:665
msgid "No stock available"
msgstr ""
-#: templates/js/translated/part.js:726
+#: templates/js/translated/part.js:725
msgid "Demand"
msgstr ""
-#: templates/js/translated/part.js:749
+#: templates/js/translated/part.js:748
msgid "Unit"
msgstr ""
-#: templates/js/translated/part.js:768 templates/js/translated/part.js:1176
-msgid "Trackable part"
-msgstr ""
-
-#: templates/js/translated/part.js:772 templates/js/translated/part.js:1180
+#: templates/js/translated/part.js:771 templates/js/translated/part.js:1179
msgid "Virtual part"
msgstr ""
-#: templates/js/translated/part.js:784
+#: templates/js/translated/part.js:783
msgid "Subscribed part"
msgstr ""
-#: templates/js/translated/part.js:788
+#: templates/js/translated/part.js:787
msgid "Salable part"
msgstr ""
-#: templates/js/translated/part.js:863
+#: templates/js/translated/part.js:862
msgid "Schedule generation of a new stocktake report."
msgstr ""
-#: templates/js/translated/part.js:863
+#: templates/js/translated/part.js:862
msgid "Once complete, the stocktake report will be available for download."
msgstr ""
-#: templates/js/translated/part.js:871
+#: templates/js/translated/part.js:870
msgid "Generate Stocktake Report"
msgstr ""
-#: templates/js/translated/part.js:875
+#: templates/js/translated/part.js:874
msgid "Stocktake report scheduled"
msgstr ""
-#: templates/js/translated/part.js:1024
+#: templates/js/translated/part.js:1023
msgid "No stocktake information available"
msgstr ""
-#: templates/js/translated/part.js:1082 templates/js/translated/part.js:1118
+#: templates/js/translated/part.js:1081 templates/js/translated/part.js:1117
msgid "Edit Stocktake Entry"
msgstr ""
-#: templates/js/translated/part.js:1086 templates/js/translated/part.js:1128
+#: templates/js/translated/part.js:1085 templates/js/translated/part.js:1127
msgid "Delete Stocktake Entry"
msgstr ""
-#: templates/js/translated/part.js:1255
+#: templates/js/translated/part.js:1254
msgid "No variants found"
msgstr "Çeşit bulunamadı"
-#: templates/js/translated/part.js:1572
+#: templates/js/translated/part.js:1571
msgid "No part parameter templates found"
msgstr "Parça parametre şablonu bulunamadı"
-#: templates/js/translated/part.js:1635
+#: templates/js/translated/part.js:1634
msgid "Edit Part Parameter Template"
msgstr "Parça Parametre Şablonu Düzenle"
-#: templates/js/translated/part.js:1647
+#: templates/js/translated/part.js:1646
msgid "Any parameters which reference this template will also be deleted"
msgstr ""
-#: templates/js/translated/part.js:1655
+#: templates/js/translated/part.js:1654
msgid "Delete Part Parameter Template"
msgstr "Parça Parametre Şablonu Sil"
-#: templates/js/translated/part.js:1689
-#: templates/js/translated/purchase_order.js:1618
+#: templates/js/translated/part.js:1688
+#: templates/js/translated/purchase_order.js:1633
msgid "No purchase orders found"
msgstr ""
-#: templates/js/translated/part.js:1832
-#: templates/js/translated/purchase_order.js:2121
-#: templates/js/translated/return_order.js:740
-#: templates/js/translated/sales_order.js:1855
+#: templates/js/translated/part.js:1831
+#: templates/js/translated/purchase_order.js:2131
+#: templates/js/translated/return_order.js:752
+#: templates/js/translated/sales_order.js:1867
msgid "This line item is overdue"
msgstr ""
-#: templates/js/translated/part.js:1877
-#: templates/js/translated/purchase_order.js:2188
+#: templates/js/translated/part.js:1876
+#: templates/js/translated/purchase_order.js:2198
msgid "Receive line item"
msgstr ""
-#: templates/js/translated/part.js:1944
+#: templates/js/translated/part.js:1943
msgid "Delete part relationship"
msgstr ""
-#: templates/js/translated/part.js:1966
+#: templates/js/translated/part.js:1965
msgid "Delete Part Relationship"
msgstr ""
-#: templates/js/translated/part.js:2054 templates/js/translated/part.js:2366
+#: templates/js/translated/part.js:2053 templates/js/translated/part.js:2442
msgid "No parts found"
msgstr ""
-#: templates/js/translated/part.js:2192
-msgid "parts"
-msgstr ""
-
-#: templates/js/translated/part.js:2276
-msgid "No category"
-msgstr "Katagori Yok"
-
-#: templates/js/translated/part.js:2390 templates/js/translated/part.js:2611
-#: templates/js/translated/stock.js:2417
-msgid "Display as list"
-msgstr ""
-
-#: templates/js/translated/part.js:2406
-msgid "Display as grid"
-msgstr ""
-
-#: templates/js/translated/part.js:2472
+#: templates/js/translated/part.js:2174
msgid "Set the part category for the selected parts"
msgstr ""
-#: templates/js/translated/part.js:2477
+#: templates/js/translated/part.js:2179
msgid "Set Part Category"
msgstr ""
+#: templates/js/translated/part.js:2204
+msgid "Set category"
+msgstr "Kategori ayarla"
+
+#: templates/js/translated/part.js:2259
+msgid "parts"
+msgstr ""
+
+#: templates/js/translated/part.js:2352
+msgid "No category"
+msgstr "Katagori Yok"
+
+#: templates/js/translated/part.js:2466 templates/js/translated/part.js:2596
+#: templates/js/translated/stock.js:2548
+msgid "Display as list"
+msgstr ""
+
#: templates/js/translated/part.js:2482
-msgid "Select Part Category"
+msgid "Display as grid"
msgstr ""
-#: templates/js/translated/part.js:2495
-msgid "Category is required"
-msgstr ""
-
-#: templates/js/translated/part.js:2595
+#: templates/js/translated/part.js:2580
msgid "No subcategories found"
msgstr ""
-#: templates/js/translated/part.js:2631 templates/js/translated/stock.js:2437
+#: templates/js/translated/part.js:2616 templates/js/translated/stock.js:2568
msgid "Display as tree"
msgstr ""
-#: templates/js/translated/part.js:2711
+#: templates/js/translated/part.js:2696
msgid "Load Subcategories"
msgstr ""
-#: templates/js/translated/part.js:2727
+#: templates/js/translated/part.js:2712
msgid "Subscribed category"
msgstr ""
-#: templates/js/translated/part.js:2807
+#: templates/js/translated/part.js:2792
msgid "No test templates matching query"
msgstr "Sorgu ile eşleşen test şablonu bulunamadı"
-#: templates/js/translated/part.js:2858 templates/js/translated/stock.js:1380
+#: templates/js/translated/part.js:2843 templates/js/translated/stock.js:1379
msgid "Edit test result"
msgstr ""
-#: templates/js/translated/part.js:2859 templates/js/translated/stock.js:1381
-#: templates/js/translated/stock.js:1643
+#: templates/js/translated/part.js:2844 templates/js/translated/stock.js:1380
+#: templates/js/translated/stock.js:1642
msgid "Delete test result"
msgstr ""
-#: templates/js/translated/part.js:2863
+#: templates/js/translated/part.js:2848
msgid "This test is defined for a parent part"
msgstr ""
-#: templates/js/translated/part.js:2879
+#: templates/js/translated/part.js:2864
msgid "Edit Test Result Template"
msgstr ""
-#: templates/js/translated/part.js:2893
+#: templates/js/translated/part.js:2878
msgid "Delete Test Result Template"
msgstr ""
-#: templates/js/translated/part.js:2972 templates/js/translated/part.js:2973
+#: templates/js/translated/part.js:2957 templates/js/translated/part.js:2958
msgid "No date specified"
msgstr ""
-#: templates/js/translated/part.js:2975
+#: templates/js/translated/part.js:2960
msgid "Specified date is in the past"
msgstr ""
-#: templates/js/translated/part.js:2981
+#: templates/js/translated/part.js:2966
msgid "Speculative"
msgstr ""
-#: templates/js/translated/part.js:3031
+#: templates/js/translated/part.js:3016
msgid "No scheduling information available for this part"
msgstr ""
-#: templates/js/translated/part.js:3037
+#: templates/js/translated/part.js:3022
msgid "Error fetching scheduling information for this part"
msgstr ""
-#: templates/js/translated/part.js:3133
+#: templates/js/translated/part.js:3118
msgid "Scheduled Stock Quantities"
msgstr ""
-#: templates/js/translated/part.js:3149
+#: templates/js/translated/part.js:3134
msgid "Maximum Quantity"
msgstr ""
-#: templates/js/translated/part.js:3194
+#: templates/js/translated/part.js:3179
msgid "Minimum Stock Level"
msgstr ""
@@ -11168,234 +11297,234 @@ msgstr ""
msgid "Variant Part"
msgstr ""
-#: templates/js/translated/purchase_order.js:155
+#: templates/js/translated/purchase_order.js:166
msgid "Select purchase order to duplicate"
msgstr ""
-#: templates/js/translated/purchase_order.js:162
+#: templates/js/translated/purchase_order.js:173
msgid "Duplicate Line Items"
msgstr ""
-#: templates/js/translated/purchase_order.js:163
+#: templates/js/translated/purchase_order.js:174
msgid "Duplicate all line items from the selected order"
msgstr ""
-#: templates/js/translated/purchase_order.js:170
+#: templates/js/translated/purchase_order.js:181
msgid "Duplicate Extra Lines"
msgstr ""
-#: templates/js/translated/purchase_order.js:171
+#: templates/js/translated/purchase_order.js:182
msgid "Duplicate extra line items from the selected order"
msgstr ""
-#: templates/js/translated/purchase_order.js:192
+#: templates/js/translated/purchase_order.js:203
msgid "Edit Purchase Order"
msgstr ""
-#: templates/js/translated/purchase_order.js:209
+#: templates/js/translated/purchase_order.js:220
msgid "Duplication Options"
msgstr ""
-#: templates/js/translated/purchase_order.js:436
+#: templates/js/translated/purchase_order.js:447
msgid "Complete Purchase Order"
msgstr ""
-#: templates/js/translated/purchase_order.js:453
-#: templates/js/translated/return_order.js:195
-#: templates/js/translated/sales_order.js:485
+#: templates/js/translated/purchase_order.js:464
+#: templates/js/translated/return_order.js:207
+#: templates/js/translated/sales_order.js:497
msgid "Mark this order as complete?"
msgstr ""
-#: templates/js/translated/purchase_order.js:459
+#: templates/js/translated/purchase_order.js:470
msgid "All line items have been received"
msgstr ""
-#: templates/js/translated/purchase_order.js:464
+#: templates/js/translated/purchase_order.js:475
msgid "This order has line items which have not been marked as received."
msgstr ""
-#: templates/js/translated/purchase_order.js:465
-#: templates/js/translated/sales_order.js:499
+#: templates/js/translated/purchase_order.js:476
+#: templates/js/translated/sales_order.js:511
msgid "Completing this order means that the order and line items will no longer be editable."
msgstr ""
-#: templates/js/translated/purchase_order.js:488
+#: templates/js/translated/purchase_order.js:499
msgid "Cancel Purchase Order"
msgstr ""
-#: templates/js/translated/purchase_order.js:493
+#: templates/js/translated/purchase_order.js:504
msgid "Are you sure you wish to cancel this purchase order?"
msgstr ""
-#: templates/js/translated/purchase_order.js:499
+#: templates/js/translated/purchase_order.js:510
msgid "This purchase order can not be cancelled"
msgstr ""
-#: templates/js/translated/purchase_order.js:520
-#: templates/js/translated/return_order.js:149
+#: templates/js/translated/purchase_order.js:531
+#: templates/js/translated/return_order.js:161
msgid "After placing this order, line items will no longer be editable."
msgstr ""
-#: templates/js/translated/purchase_order.js:525
+#: templates/js/translated/purchase_order.js:536
msgid "Issue Purchase Order"
msgstr ""
-#: templates/js/translated/purchase_order.js:617
+#: templates/js/translated/purchase_order.js:628
msgid "At least one purchaseable part must be selected"
msgstr ""
-#: templates/js/translated/purchase_order.js:642
+#: templates/js/translated/purchase_order.js:653
msgid "Quantity to order"
msgstr ""
-#: templates/js/translated/purchase_order.js:651
+#: templates/js/translated/purchase_order.js:662
msgid "New supplier part"
msgstr ""
-#: templates/js/translated/purchase_order.js:669
+#: templates/js/translated/purchase_order.js:680
msgid "New purchase order"
msgstr ""
-#: templates/js/translated/purchase_order.js:701
+#: templates/js/translated/purchase_order.js:712
msgid "Add to purchase order"
msgstr ""
-#: templates/js/translated/purchase_order.js:845
+#: templates/js/translated/purchase_order.js:860
msgid "No matching supplier parts"
msgstr ""
-#: templates/js/translated/purchase_order.js:864
+#: templates/js/translated/purchase_order.js:879
msgid "No matching purchase orders"
msgstr ""
-#: templates/js/translated/purchase_order.js:1043
+#: templates/js/translated/purchase_order.js:1058
msgid "Select Line Items"
msgstr ""
-#: templates/js/translated/purchase_order.js:1044
-#: templates/js/translated/return_order.js:480
+#: templates/js/translated/purchase_order.js:1059
+#: templates/js/translated/return_order.js:492
msgid "At least one line item must be selected"
msgstr ""
-#: templates/js/translated/purchase_order.js:1074
+#: templates/js/translated/purchase_order.js:1089
msgid "Received Quantity"
msgstr ""
-#: templates/js/translated/purchase_order.js:1085
+#: templates/js/translated/purchase_order.js:1100
msgid "Quantity to receive"
msgstr ""
-#: templates/js/translated/purchase_order.js:1161
+#: templates/js/translated/purchase_order.js:1176
msgid "Stock Status"
msgstr ""
-#: templates/js/translated/purchase_order.js:1175
+#: templates/js/translated/purchase_order.js:1190
msgid "Add barcode"
msgstr ""
-#: templates/js/translated/purchase_order.js:1176
+#: templates/js/translated/purchase_order.js:1191
msgid "Remove barcode"
msgstr ""
-#: templates/js/translated/purchase_order.js:1179
+#: templates/js/translated/purchase_order.js:1194
msgid "Specify location"
msgstr ""
-#: templates/js/translated/purchase_order.js:1187
+#: templates/js/translated/purchase_order.js:1202
msgid "Add batch code"
msgstr ""
-#: templates/js/translated/purchase_order.js:1198
+#: templates/js/translated/purchase_order.js:1213
msgid "Add serial numbers"
msgstr ""
-#: templates/js/translated/purchase_order.js:1250
+#: templates/js/translated/purchase_order.js:1265
msgid "Serials"
msgstr ""
-#: templates/js/translated/purchase_order.js:1275
+#: templates/js/translated/purchase_order.js:1290
msgid "Order Code"
msgstr ""
-#: templates/js/translated/purchase_order.js:1277
+#: templates/js/translated/purchase_order.js:1292
msgid "Quantity to Receive"
msgstr ""
-#: templates/js/translated/purchase_order.js:1299
-#: templates/js/translated/return_order.js:545
+#: templates/js/translated/purchase_order.js:1314
+#: templates/js/translated/return_order.js:557
msgid "Confirm receipt of items"
msgstr ""
-#: templates/js/translated/purchase_order.js:1300
+#: templates/js/translated/purchase_order.js:1315
msgid "Receive Purchase Order Items"
msgstr ""
-#: templates/js/translated/purchase_order.js:1368
+#: templates/js/translated/purchase_order.js:1383
msgid "Scan Item Barcode"
msgstr ""
-#: templates/js/translated/purchase_order.js:1369
+#: templates/js/translated/purchase_order.js:1384
msgid "Scan barcode on incoming item (must not match any existing stock items)"
msgstr ""
-#: templates/js/translated/purchase_order.js:1383
+#: templates/js/translated/purchase_order.js:1398
msgid "Invalid barcode data"
msgstr ""
-#: templates/js/translated/purchase_order.js:1645
-#: templates/js/translated/return_order.js:274
-#: templates/js/translated/sales_order.js:762
-#: templates/js/translated/sales_order.js:986
+#: templates/js/translated/purchase_order.js:1660
+#: templates/js/translated/return_order.js:286
+#: templates/js/translated/sales_order.js:774
+#: templates/js/translated/sales_order.js:998
msgid "Order is overdue"
msgstr ""
-#: templates/js/translated/purchase_order.js:1707
-#: templates/js/translated/return_order.js:342
-#: templates/js/translated/sales_order.js:839
-#: templates/js/translated/sales_order.js:999
+#: templates/js/translated/purchase_order.js:1722
+#: templates/js/translated/return_order.js:354
+#: templates/js/translated/sales_order.js:851
+#: templates/js/translated/sales_order.js:1011
msgid "Items"
msgstr "Ürünler"
-#: templates/js/translated/purchase_order.js:1806
+#: templates/js/translated/purchase_order.js:1821
msgid "All selected Line items will be deleted"
msgstr ""
-#: templates/js/translated/purchase_order.js:1824
+#: templates/js/translated/purchase_order.js:1839
msgid "Delete selected Line items?"
msgstr ""
-#: templates/js/translated/purchase_order.js:1884
-#: templates/js/translated/sales_order.js:2047
+#: templates/js/translated/purchase_order.js:1894
+#: templates/js/translated/sales_order.js:2059
msgid "Duplicate Line Item"
msgstr ""
-#: templates/js/translated/purchase_order.js:1899
-#: templates/js/translated/return_order.js:464
-#: templates/js/translated/return_order.js:653
-#: templates/js/translated/sales_order.js:2060
+#: templates/js/translated/purchase_order.js:1909
+#: templates/js/translated/return_order.js:476
+#: templates/js/translated/return_order.js:665
+#: templates/js/translated/sales_order.js:2072
msgid "Edit Line Item"
msgstr ""
-#: templates/js/translated/purchase_order.js:1910
-#: templates/js/translated/return_order.js:666
-#: templates/js/translated/sales_order.js:2071
+#: templates/js/translated/purchase_order.js:1920
+#: templates/js/translated/return_order.js:678
+#: templates/js/translated/sales_order.js:2083
msgid "Delete Line Item"
msgstr ""
-#: templates/js/translated/purchase_order.js:2192
-#: templates/js/translated/sales_order.js:2001
+#: templates/js/translated/purchase_order.js:2202
+#: templates/js/translated/sales_order.js:2013
msgid "Duplicate line item"
msgstr ""
-#: templates/js/translated/purchase_order.js:2193
-#: templates/js/translated/return_order.js:785
-#: templates/js/translated/sales_order.js:2002
+#: templates/js/translated/purchase_order.js:2203
+#: templates/js/translated/return_order.js:797
+#: templates/js/translated/sales_order.js:2014
msgid "Edit line item"
msgstr ""
-#: templates/js/translated/purchase_order.js:2194
-#: templates/js/translated/return_order.js:789
-#: templates/js/translated/sales_order.js:2008
+#: templates/js/translated/purchase_order.js:2204
+#: templates/js/translated/return_order.js:801
+#: templates/js/translated/sales_order.js:2020
msgid "Delete line item"
msgstr ""
@@ -11424,941 +11553,973 @@ msgstr ""
msgid "Add Customer"
msgstr ""
-#: templates/js/translated/return_order.js:119
+#: templates/js/translated/return_order.js:131
msgid "Create Return Order"
msgstr ""
-#: templates/js/translated/return_order.js:134
+#: templates/js/translated/return_order.js:146
msgid "Edit Return Order"
msgstr ""
-#: templates/js/translated/return_order.js:154
+#: templates/js/translated/return_order.js:166
msgid "Issue Return Order"
msgstr ""
-#: templates/js/translated/return_order.js:171
+#: templates/js/translated/return_order.js:183
msgid "Are you sure you wish to cancel this Return Order?"
msgstr ""
-#: templates/js/translated/return_order.js:178
+#: templates/js/translated/return_order.js:190
msgid "Cancel Return Order"
msgstr ""
-#: templates/js/translated/return_order.js:203
+#: templates/js/translated/return_order.js:215
msgid "Complete Return Order"
msgstr ""
-#: templates/js/translated/return_order.js:251
+#: templates/js/translated/return_order.js:263
msgid "No return orders found"
msgstr ""
-#: templates/js/translated/return_order.js:288
-#: templates/js/translated/sales_order.js:776
+#: templates/js/translated/return_order.js:300
+#: templates/js/translated/sales_order.js:788
msgid "Invalid Customer"
msgstr ""
-#: templates/js/translated/return_order.js:546
+#: templates/js/translated/return_order.js:558
msgid "Receive Return Order Items"
msgstr ""
-#: templates/js/translated/return_order.js:677
-#: templates/js/translated/sales_order.js:2207
+#: templates/js/translated/return_order.js:689
+#: templates/js/translated/sales_order.js:2219
msgid "No matching line items"
msgstr ""
-#: templates/js/translated/return_order.js:782
+#: templates/js/translated/return_order.js:794
msgid "Mark item as received"
msgstr ""
-#: templates/js/translated/sales_order.js:146
+#: templates/js/translated/sales_order.js:158
msgid "Create Sales Order"
msgstr ""
-#: templates/js/translated/sales_order.js:161
+#: templates/js/translated/sales_order.js:173
msgid "Edit Sales Order"
msgstr ""
-#: templates/js/translated/sales_order.js:276
+#: templates/js/translated/sales_order.js:288
msgid "No stock items have been allocated to this shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:281
+#: templates/js/translated/sales_order.js:293
msgid "The following stock items will be shipped"
msgstr ""
-#: templates/js/translated/sales_order.js:321
+#: templates/js/translated/sales_order.js:333
msgid "Complete Shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:345
+#: templates/js/translated/sales_order.js:357
msgid "Confirm Shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:401
+#: templates/js/translated/sales_order.js:413
msgid "No pending shipments found"
msgstr ""
-#: templates/js/translated/sales_order.js:405
+#: templates/js/translated/sales_order.js:417
msgid "No stock items have been allocated to pending shipments"
msgstr ""
-#: templates/js/translated/sales_order.js:415
+#: templates/js/translated/sales_order.js:427
msgid "Complete Shipments"
msgstr ""
-#: templates/js/translated/sales_order.js:437
+#: templates/js/translated/sales_order.js:449
msgid "Skip"
msgstr ""
-#: templates/js/translated/sales_order.js:498
+#: templates/js/translated/sales_order.js:510
msgid "This order has line items which have not been completed."
msgstr ""
-#: templates/js/translated/sales_order.js:520
+#: templates/js/translated/sales_order.js:532
msgid "Issue this Sales Order?"
msgstr ""
-#: templates/js/translated/sales_order.js:525
+#: templates/js/translated/sales_order.js:537
msgid "Issue Sales Order"
msgstr ""
-#: templates/js/translated/sales_order.js:544
+#: templates/js/translated/sales_order.js:556
msgid "Cancel Sales Order"
msgstr ""
-#: templates/js/translated/sales_order.js:549
+#: templates/js/translated/sales_order.js:561
msgid "Cancelling this order means that the order will no longer be editable."
msgstr ""
-#: templates/js/translated/sales_order.js:603
+#: templates/js/translated/sales_order.js:615
msgid "Create New Shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:713
+#: templates/js/translated/sales_order.js:725
msgid "No sales orders found"
msgstr ""
-#: templates/js/translated/sales_order.js:896
+#: templates/js/translated/sales_order.js:908
msgid "Edit shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:899
+#: templates/js/translated/sales_order.js:911
msgid "Complete shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:904
+#: templates/js/translated/sales_order.js:916
msgid "Delete shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:921
+#: templates/js/translated/sales_order.js:933
msgid "Edit Shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:936
+#: templates/js/translated/sales_order.js:948
msgid "Delete Shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:969
+#: templates/js/translated/sales_order.js:981
msgid "No matching shipments found"
msgstr ""
-#: templates/js/translated/sales_order.js:994
+#: templates/js/translated/sales_order.js:1006
msgid "Shipment Reference"
msgstr ""
-#: templates/js/translated/sales_order.js:1018
-#: templates/js/translated/sales_order.js:1515
+#: templates/js/translated/sales_order.js:1030
+#: templates/js/translated/sales_order.js:1527
msgid "Not shipped"
msgstr ""
-#: templates/js/translated/sales_order.js:1036
+#: templates/js/translated/sales_order.js:1048
msgid "Tracking"
msgstr ""
-#: templates/js/translated/sales_order.js:1040
+#: templates/js/translated/sales_order.js:1052
msgid "Invoice"
msgstr ""
-#: templates/js/translated/sales_order.js:1207
+#: templates/js/translated/sales_order.js:1219
msgid "Add Shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:1258
+#: templates/js/translated/sales_order.js:1270
msgid "Confirm stock allocation"
msgstr "Stok tahsisini onayla"
-#: templates/js/translated/sales_order.js:1259
+#: templates/js/translated/sales_order.js:1271
msgid "Allocate Stock Items to Sales Order"
msgstr ""
-#: templates/js/translated/sales_order.js:1463
+#: templates/js/translated/sales_order.js:1475
msgid "No sales order allocations found"
msgstr ""
-#: templates/js/translated/sales_order.js:1555
+#: templates/js/translated/sales_order.js:1567
msgid "Edit Stock Allocation"
msgstr ""
-#: templates/js/translated/sales_order.js:1569
+#: templates/js/translated/sales_order.js:1581
msgid "Confirm Delete Operation"
msgstr "Silme İşlemini Onayla"
-#: templates/js/translated/sales_order.js:1570
+#: templates/js/translated/sales_order.js:1582
msgid "Delete Stock Allocation"
msgstr ""
-#: templates/js/translated/sales_order.js:1609
-#: templates/js/translated/sales_order.js:1696
-#: templates/js/translated/stock.js:1688
+#: templates/js/translated/sales_order.js:1621
+#: templates/js/translated/sales_order.js:1708
+#: templates/js/translated/stock.js:1687
msgid "Shipped to customer"
msgstr ""
-#: templates/js/translated/sales_order.js:1617
-#: templates/js/translated/sales_order.js:1705
+#: templates/js/translated/sales_order.js:1629
+#: templates/js/translated/sales_order.js:1717
msgid "Stock location not specified"
msgstr ""
-#: templates/js/translated/sales_order.js:1985
+#: templates/js/translated/sales_order.js:1997
msgid "Allocate serial numbers"
msgstr "Seri numaralarını tahsis et"
-#: templates/js/translated/sales_order.js:1989
+#: templates/js/translated/sales_order.js:2001
msgid "Purchase stock"
msgstr ""
-#: templates/js/translated/sales_order.js:1998
-#: templates/js/translated/sales_order.js:2185
+#: templates/js/translated/sales_order.js:2010
+#: templates/js/translated/sales_order.js:2197
msgid "Calculate price"
msgstr ""
-#: templates/js/translated/sales_order.js:2012
+#: templates/js/translated/sales_order.js:2024
msgid "Cannot be deleted as items have been shipped"
msgstr ""
-#: templates/js/translated/sales_order.js:2015
+#: templates/js/translated/sales_order.js:2027
msgid "Cannot be deleted as items have been allocated"
msgstr ""
-#: templates/js/translated/sales_order.js:2086
+#: templates/js/translated/sales_order.js:2098
msgid "Allocate Serial Numbers"
msgstr "Seri Numaralarını Tahsis Et"
-#: templates/js/translated/sales_order.js:2193
+#: templates/js/translated/sales_order.js:2205
msgid "Update Unit Price"
msgstr ""
-#: templates/js/translated/search.js:312
+#: templates/js/translated/search.js:270
msgid "No results"
msgstr ""
-#: templates/js/translated/search.js:334 templates/search.html:25
+#: templates/js/translated/search.js:292 templates/search.html:25
msgid "Enter search query"
msgstr ""
-#: templates/js/translated/search.js:384
+#: templates/js/translated/search.js:342
msgid "result"
msgstr ""
-#: templates/js/translated/search.js:384
+#: templates/js/translated/search.js:342
msgid "results"
msgstr ""
-#: templates/js/translated/search.js:394
+#: templates/js/translated/search.js:352
msgid "Minimize results"
msgstr ""
-#: templates/js/translated/search.js:397
+#: templates/js/translated/search.js:355
msgid "Remove results"
msgstr ""
-#: templates/js/translated/stock.js:98
+#: templates/js/translated/stock.js:97
msgid "Serialize Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:129
+#: templates/js/translated/stock.js:128
msgid "Confirm Stock Serialization"
msgstr ""
-#: templates/js/translated/stock.js:138
+#: templates/js/translated/stock.js:137
msgid "Parent stock location"
msgstr ""
-#: templates/js/translated/stock.js:173
+#: templates/js/translated/stock.js:172
msgid "Edit Stock Location"
msgstr "Stok konumunu düzenle"
-#: templates/js/translated/stock.js:188
+#: templates/js/translated/stock.js:187
msgid "New Stock Location"
msgstr ""
-#: templates/js/translated/stock.js:190
+#: templates/js/translated/stock.js:189
msgid "Create another location after this one"
msgstr ""
-#: templates/js/translated/stock.js:191
+#: templates/js/translated/stock.js:190
msgid "Stock location created"
msgstr ""
-#: templates/js/translated/stock.js:205
+#: templates/js/translated/stock.js:204
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:212
+#: templates/js/translated/stock.js:211
msgid "Move to parent stock location"
msgstr ""
-#: templates/js/translated/stock.js:221
+#: templates/js/translated/stock.js:220
msgid "Delete Stock Location"
msgstr "Stok Konumunu Sil"
-#: templates/js/translated/stock.js:225
+#: templates/js/translated/stock.js:224
msgid "Action for stock items in this stock location"
msgstr ""
-#: templates/js/translated/stock.js:230
+#: templates/js/translated/stock.js:229
msgid "Action for sub-locations"
msgstr ""
-#: templates/js/translated/stock.js:284
+#: templates/js/translated/stock.js:283
msgid "This part cannot be serialized"
msgstr ""
-#: templates/js/translated/stock.js:320
+#: templates/js/translated/stock.js:319
msgid "Add given quantity as packs instead of individual items"
msgstr ""
-#: templates/js/translated/stock.js:329
+#: templates/js/translated/stock.js:328
msgid "Enter initial quantity for this stock item"
msgstr ""
-#: templates/js/translated/stock.js:335
+#: templates/js/translated/stock.js:334
msgid "Enter serial numbers for new stock (or leave blank)"
msgstr ""
-#: templates/js/translated/stock.js:406
+#: templates/js/translated/stock.js:405
msgid "Stock item duplicated"
msgstr ""
-#: templates/js/translated/stock.js:426
+#: templates/js/translated/stock.js:425
msgid "Duplicate Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:442
+#: templates/js/translated/stock.js:441
msgid "Are you sure you want to delete this stock item?"
msgstr ""
-#: templates/js/translated/stock.js:447
+#: templates/js/translated/stock.js:446
msgid "Delete Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:468
+#: templates/js/translated/stock.js:467
msgid "Edit Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:510
+#: templates/js/translated/stock.js:509
msgid "Create another item after this one"
msgstr ""
-#: templates/js/translated/stock.js:522
+#: templates/js/translated/stock.js:521
msgid "Created new stock item"
msgstr ""
-#: templates/js/translated/stock.js:535
+#: templates/js/translated/stock.js:534
msgid "Created multiple stock items"
msgstr ""
-#: templates/js/translated/stock.js:560
+#: templates/js/translated/stock.js:559
msgid "Find Serial Number"
msgstr ""
-#: templates/js/translated/stock.js:564 templates/js/translated/stock.js:565
+#: templates/js/translated/stock.js:563 templates/js/translated/stock.js:564
msgid "Enter serial number"
msgstr ""
-#: templates/js/translated/stock.js:581
+#: templates/js/translated/stock.js:580
msgid "Enter a serial number"
msgstr ""
-#: templates/js/translated/stock.js:601
+#: templates/js/translated/stock.js:600
msgid "No matching serial number"
msgstr ""
-#: templates/js/translated/stock.js:610
+#: templates/js/translated/stock.js:609
msgid "More than one matching result found"
msgstr ""
-#: templates/js/translated/stock.js:718
+#: templates/js/translated/stock.js:717
msgid "Confirm stock assignment"
msgstr ""
-#: templates/js/translated/stock.js:719
+#: templates/js/translated/stock.js:718
msgid "Assign Stock to Customer"
msgstr ""
-#: templates/js/translated/stock.js:796
+#: templates/js/translated/stock.js:795
msgid "Warning: Merge operation cannot be reversed"
msgstr ""
-#: templates/js/translated/stock.js:797
+#: templates/js/translated/stock.js:796
msgid "Some information will be lost when merging stock items"
msgstr ""
-#: templates/js/translated/stock.js:799
+#: templates/js/translated/stock.js:798
msgid "Stock transaction history will be deleted for merged items"
msgstr ""
-#: templates/js/translated/stock.js:800
+#: templates/js/translated/stock.js:799
msgid "Supplier part information will be deleted for merged items"
msgstr ""
-#: templates/js/translated/stock.js:891
+#: templates/js/translated/stock.js:890
msgid "Confirm stock item merge"
msgstr ""
-#: templates/js/translated/stock.js:892
+#: templates/js/translated/stock.js:891
msgid "Merge Stock Items"
msgstr ""
-#: templates/js/translated/stock.js:987
+#: templates/js/translated/stock.js:986
msgid "Transfer Stock"
msgstr ""
-#: templates/js/translated/stock.js:988
+#: templates/js/translated/stock.js:987
msgid "Move"
msgstr ""
-#: templates/js/translated/stock.js:994
+#: templates/js/translated/stock.js:993
msgid "Count Stock"
msgstr ""
-#: templates/js/translated/stock.js:995
+#: templates/js/translated/stock.js:994
msgid "Count"
msgstr ""
-#: templates/js/translated/stock.js:999
+#: templates/js/translated/stock.js:998
msgid "Remove Stock"
msgstr ""
-#: templates/js/translated/stock.js:1000
+#: templates/js/translated/stock.js:999
msgid "Take"
msgstr ""
-#: templates/js/translated/stock.js:1004
+#: templates/js/translated/stock.js:1003
msgid "Add Stock"
msgstr ""
-#: templates/js/translated/stock.js:1005 users/models.py:243
+#: templates/js/translated/stock.js:1004 users/models.py:249
msgid "Add"
msgstr ""
-#: templates/js/translated/stock.js:1009
+#: templates/js/translated/stock.js:1008
msgid "Delete Stock"
msgstr ""
-#: templates/js/translated/stock.js:1106
+#: templates/js/translated/stock.js:1105
msgid "Quantity cannot be adjusted for serialized stock"
msgstr ""
-#: templates/js/translated/stock.js:1106
+#: templates/js/translated/stock.js:1105
msgid "Specify stock quantity"
msgstr ""
-#: templates/js/translated/stock.js:1140
+#: templates/js/translated/stock.js:1139 templates/js/translated/stock.js:3151
msgid "Select Stock Items"
msgstr ""
-#: templates/js/translated/stock.js:1141
-msgid "You must select at least one available stock item"
+#: templates/js/translated/stock.js:1140
+msgid "Select at least one available stock item"
msgstr ""
-#: templates/js/translated/stock.js:1168
+#: templates/js/translated/stock.js:1167
msgid "Confirm stock adjustment"
msgstr "Stok ayarlamasını onayla"
-#: templates/js/translated/stock.js:1304
+#: templates/js/translated/stock.js:1303
msgid "PASS"
msgstr ""
-#: templates/js/translated/stock.js:1306
+#: templates/js/translated/stock.js:1305
msgid "FAIL"
msgstr ""
-#: templates/js/translated/stock.js:1311
+#: templates/js/translated/stock.js:1310
msgid "NO RESULT"
msgstr ""
-#: templates/js/translated/stock.js:1373
+#: templates/js/translated/stock.js:1372
msgid "Pass test"
msgstr ""
-#: templates/js/translated/stock.js:1376
+#: templates/js/translated/stock.js:1375
msgid "Add test result"
msgstr ""
-#: templates/js/translated/stock.js:1400
+#: templates/js/translated/stock.js:1399
msgid "No test results found"
msgstr ""
-#: templates/js/translated/stock.js:1464
+#: templates/js/translated/stock.js:1463
msgid "Test Date"
msgstr ""
-#: templates/js/translated/stock.js:1626
+#: templates/js/translated/stock.js:1625
msgid "Edit Test Result"
msgstr ""
-#: templates/js/translated/stock.js:1648
+#: templates/js/translated/stock.js:1647
msgid "Delete Test Result"
msgstr ""
-#: templates/js/translated/stock.js:1680
+#: templates/js/translated/stock.js:1679
msgid "In production"
msgstr ""
-#: templates/js/translated/stock.js:1684
+#: templates/js/translated/stock.js:1683
msgid "Installed in Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:1692
+#: templates/js/translated/stock.js:1691
msgid "Assigned to Sales Order"
msgstr ""
-#: templates/js/translated/stock.js:1698
+#: templates/js/translated/stock.js:1697
msgid "No stock location set"
msgstr "Stok konumu ayarlanmadı"
-#: templates/js/translated/stock.js:1746
+#: templates/js/translated/stock.js:1753
+msgid "Change stock status"
+msgstr ""
+
+#: templates/js/translated/stock.js:1762
+msgid "Merge stock"
+msgstr "Stok birlşetirme"
+
+#: templates/js/translated/stock.js:1811
+msgid "Delete stock"
+msgstr "Parça sil"
+
+#: templates/js/translated/stock.js:1866
msgid "stock items"
msgstr ""
-#: templates/js/translated/stock.js:1850
+#: templates/js/translated/stock.js:1871
+msgid "Scan to location"
+msgstr ""
+
+#: templates/js/translated/stock.js:1882
+msgid "Stock Actions"
+msgstr ""
+
+#: templates/js/translated/stock.js:1929
+msgid "Load installed items"
+msgstr ""
+
+#: templates/js/translated/stock.js:2007
msgid "Stock item is in production"
msgstr ""
-#: templates/js/translated/stock.js:1855
+#: templates/js/translated/stock.js:2012
msgid "Stock item assigned to sales order"
msgstr ""
-#: templates/js/translated/stock.js:1858
+#: templates/js/translated/stock.js:2015
msgid "Stock item assigned to customer"
msgstr ""
-#: templates/js/translated/stock.js:1861
+#: templates/js/translated/stock.js:2018
msgid "Serialized stock item has been allocated"
msgstr ""
-#: templates/js/translated/stock.js:1863
+#: templates/js/translated/stock.js:2020
msgid "Stock item has been fully allocated"
msgstr ""
-#: templates/js/translated/stock.js:1865
+#: templates/js/translated/stock.js:2022
msgid "Stock item has been partially allocated"
msgstr ""
-#: templates/js/translated/stock.js:1868
+#: templates/js/translated/stock.js:2025
msgid "Stock item has been installed in another item"
msgstr ""
-#: templates/js/translated/stock.js:1870
+#: templates/js/translated/stock.js:2027
msgid "Stock item has been consumed by a build order"
msgstr ""
-#: templates/js/translated/stock.js:1874
+#: templates/js/translated/stock.js:2031
msgid "Stock item has expired"
msgstr ""
-#: templates/js/translated/stock.js:1876
+#: templates/js/translated/stock.js:2033
msgid "Stock item will expire soon"
msgstr ""
-#: templates/js/translated/stock.js:1881
+#: templates/js/translated/stock.js:2038
msgid "Stock item has been rejected"
msgstr ""
-#: templates/js/translated/stock.js:1883
+#: templates/js/translated/stock.js:2040
msgid "Stock item is lost"
msgstr ""
-#: templates/js/translated/stock.js:1885
+#: templates/js/translated/stock.js:2042
msgid "Stock item is destroyed"
msgstr ""
-#: templates/js/translated/stock.js:1889
-#: templates/js/translated/table_filters.js:296
+#: templates/js/translated/stock.js:2046
+#: templates/js/translated/table_filters.js:302
msgid "Depleted"
msgstr ""
-#: templates/js/translated/stock.js:2031
+#: templates/js/translated/stock.js:2188
msgid "Supplier part not specified"
msgstr ""
-#: templates/js/translated/stock.js:2078
+#: templates/js/translated/stock.js:2235
msgid "Stock Value"
msgstr ""
-#: templates/js/translated/stock.js:2170
+#: templates/js/translated/stock.js:2358
msgid "No stock items matching query"
msgstr ""
-#: templates/js/translated/stock.js:2319
+#: templates/js/translated/stock.js:2450
msgid "stock locations"
msgstr ""
-#: templates/js/translated/stock.js:2476
+#: templates/js/translated/stock.js:2607
msgid "Load Subloactions"
msgstr ""
-#: templates/js/translated/stock.js:2583
+#: templates/js/translated/stock.js:2714
msgid "Details"
msgstr "Detaylar"
-#: templates/js/translated/stock.js:2587
+#: templates/js/translated/stock.js:2718
msgid "No changes"
msgstr ""
-#: templates/js/translated/stock.js:2599
+#: templates/js/translated/stock.js:2730
msgid "Part information unavailable"
msgstr ""
-#: templates/js/translated/stock.js:2621
+#: templates/js/translated/stock.js:2752
msgid "Location no longer exists"
msgstr "Konum artık yok"
-#: templates/js/translated/stock.js:2638
+#: templates/js/translated/stock.js:2769
msgid "Build order no longer exists"
msgstr ""
-#: templates/js/translated/stock.js:2653
+#: templates/js/translated/stock.js:2784
msgid "Purchase order no longer exists"
msgstr ""
-#: templates/js/translated/stock.js:2670
+#: templates/js/translated/stock.js:2801
msgid "Sales Order no longer exists"
msgstr ""
-#: templates/js/translated/stock.js:2687
+#: templates/js/translated/stock.js:2818
msgid "Return Order no longer exists"
msgstr ""
-#: templates/js/translated/stock.js:2706
+#: templates/js/translated/stock.js:2837
msgid "Customer no longer exists"
msgstr ""
-#: templates/js/translated/stock.js:2724
+#: templates/js/translated/stock.js:2855
msgid "Stock item no longer exists"
msgstr ""
-#: templates/js/translated/stock.js:2742
+#: templates/js/translated/stock.js:2873
msgid "Added"
msgstr ""
-#: templates/js/translated/stock.js:2750
+#: templates/js/translated/stock.js:2881
msgid "Removed"
msgstr ""
-#: templates/js/translated/stock.js:2826
+#: templates/js/translated/stock.js:2953
msgid "No installed items"
msgstr ""
-#: templates/js/translated/stock.js:2876 templates/js/translated/stock.js:2911
+#: templates/js/translated/stock.js:3003 templates/js/translated/stock.js:3038
msgid "Uninstall Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:2929
+#: templates/js/translated/stock.js:3056
msgid "Select stock item to uninstall"
msgstr ""
-#: templates/js/translated/stock.js:2950
+#: templates/js/translated/stock.js:3077
msgid "Install another stock item into this item"
msgstr ""
-#: templates/js/translated/stock.js:2951
+#: templates/js/translated/stock.js:3078
msgid "Stock items can only be installed if they meet the following criteria"
msgstr ""
-#: templates/js/translated/stock.js:2953
+#: templates/js/translated/stock.js:3080
msgid "The Stock Item links to a Part which is the BOM for this Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:2954
+#: templates/js/translated/stock.js:3081
msgid "The Stock Item is currently available in stock"
msgstr ""
-#: templates/js/translated/stock.js:2955
+#: templates/js/translated/stock.js:3082
msgid "The Stock Item is not already installed in another item"
msgstr ""
-#: templates/js/translated/stock.js:2956
+#: templates/js/translated/stock.js:3083
msgid "The Stock Item is tracked by either a batch code or serial number"
msgstr ""
-#: templates/js/translated/stock.js:2969
+#: templates/js/translated/stock.js:3096
msgid "Select part to install"
msgstr ""
+#: templates/js/translated/stock.js:3152
+msgid "Select one or more stock items"
+msgstr ""
+
+#: templates/js/translated/stock.js:3165
+msgid "Selected stock items"
+msgstr ""
+
+#: templates/js/translated/stock.js:3169
+msgid "Change Stock Status"
+msgstr ""
+
#: templates/js/translated/table_filters.js:50
msgid "Has project code"
msgstr ""
-#: templates/js/translated/table_filters.js:59
-#: templates/js/translated/table_filters.js:518
-#: templates/js/translated/table_filters.js:530
-#: templates/js/translated/table_filters.js:571
+#: templates/js/translated/table_filters.js:65
+#: templates/js/translated/table_filters.js:540
+#: templates/js/translated/table_filters.js:552
+#: templates/js/translated/table_filters.js:593
msgid "Order status"
msgstr ""
-#: templates/js/translated/table_filters.js:64
-#: templates/js/translated/table_filters.js:535
-#: templates/js/translated/table_filters.js:561
-#: templates/js/translated/table_filters.js:576
+#: templates/js/translated/table_filters.js:70
+#: templates/js/translated/table_filters.js:557
+#: templates/js/translated/table_filters.js:583
+#: templates/js/translated/table_filters.js:598
msgid "Outstanding"
msgstr ""
-#: templates/js/translated/table_filters.js:72
-#: templates/js/translated/table_filters.js:458
-#: templates/js/translated/table_filters.js:543
-#: templates/js/translated/table_filters.js:584
+#: templates/js/translated/table_filters.js:78
+#: templates/js/translated/table_filters.js:464
+#: templates/js/translated/table_filters.js:565
+#: templates/js/translated/table_filters.js:606
msgid "Assigned to me"
msgstr ""
-#: templates/js/translated/table_filters.js:128
+#: templates/js/translated/table_filters.js:134
msgid "Trackable Part"
msgstr ""
-#: templates/js/translated/table_filters.js:132
+#: templates/js/translated/table_filters.js:138
msgid "Assembled Part"
msgstr ""
-#: templates/js/translated/table_filters.js:136
+#: templates/js/translated/table_filters.js:142
msgid "Has Available Stock"
msgstr ""
-#: templates/js/translated/table_filters.js:152
+#: templates/js/translated/table_filters.js:158
msgid "Allow Variant Stock"
msgstr "Çeşit Stokuna İzin Ver"
-#: templates/js/translated/table_filters.js:164
-#: templates/js/translated/table_filters.js:692
+#: templates/js/translated/table_filters.js:170
+#: templates/js/translated/table_filters.js:714
msgid "Has Pricing"
msgstr ""
-#: templates/js/translated/table_filters.js:204
-#: templates/js/translated/table_filters.js:291
+#: templates/js/translated/table_filters.js:210
+#: templates/js/translated/table_filters.js:297
msgid "Include sublocations"
msgstr "Alt konumları dahil et"
-#: templates/js/translated/table_filters.js:205
+#: templates/js/translated/table_filters.js:211
msgid "Include locations"
msgstr "Konumları dahil et"
-#: templates/js/translated/table_filters.js:224
-#: templates/js/translated/table_filters.js:225
-#: templates/js/translated/table_filters.js:624
+#: templates/js/translated/table_filters.js:230
+#: templates/js/translated/table_filters.js:231
+#: templates/js/translated/table_filters.js:646
msgid "Include subcategories"
msgstr ""
-#: templates/js/translated/table_filters.js:233
-#: templates/js/translated/table_filters.js:672
+#: templates/js/translated/table_filters.js:239
+#: templates/js/translated/table_filters.js:694
msgid "Subscribed"
msgstr ""
-#: templates/js/translated/table_filters.js:244
-#: templates/js/translated/table_filters.js:326
+#: templates/js/translated/table_filters.js:250
+#: templates/js/translated/table_filters.js:332
msgid "Is Serialized"
msgstr "Seri Numaralı"
-#: templates/js/translated/table_filters.js:247
-#: templates/js/translated/table_filters.js:333
+#: templates/js/translated/table_filters.js:253
+#: templates/js/translated/table_filters.js:339
msgid "Serial number GTE"
msgstr "Seri numarası BvE"
-#: templates/js/translated/table_filters.js:248
-#: templates/js/translated/table_filters.js:334
+#: templates/js/translated/table_filters.js:254
+#: templates/js/translated/table_filters.js:340
msgid "Serial number greater than or equal to"
msgstr "Seri numarası büyük veya eşit"
-#: templates/js/translated/table_filters.js:251
-#: templates/js/translated/table_filters.js:337
+#: templates/js/translated/table_filters.js:257
+#: templates/js/translated/table_filters.js:343
msgid "Serial number LTE"
msgstr "Seri numarası KvE"
-#: templates/js/translated/table_filters.js:252
-#: templates/js/translated/table_filters.js:338
+#: templates/js/translated/table_filters.js:258
+#: templates/js/translated/table_filters.js:344
msgid "Serial number less than or equal to"
msgstr "Seri numarası küçük veya eşit"
-#: templates/js/translated/table_filters.js:255
-#: templates/js/translated/table_filters.js:256
-#: templates/js/translated/table_filters.js:329
-#: templates/js/translated/table_filters.js:330
+#: templates/js/translated/table_filters.js:261
+#: templates/js/translated/table_filters.js:262
+#: templates/js/translated/table_filters.js:335
+#: templates/js/translated/table_filters.js:336
msgid "Serial number"
msgstr "Seri numarası"
-#: templates/js/translated/table_filters.js:260
-#: templates/js/translated/table_filters.js:351
+#: templates/js/translated/table_filters.js:266
+#: templates/js/translated/table_filters.js:357
msgid "Batch code"
msgstr ""
-#: templates/js/translated/table_filters.js:271
-#: templates/js/translated/table_filters.js:613
+#: templates/js/translated/table_filters.js:277
+#: templates/js/translated/table_filters.js:635
msgid "Active parts"
msgstr ""
-#: templates/js/translated/table_filters.js:272
+#: templates/js/translated/table_filters.js:278
msgid "Show stock for active parts"
msgstr ""
-#: templates/js/translated/table_filters.js:277
+#: templates/js/translated/table_filters.js:283
msgid "Part is an assembly"
msgstr ""
-#: templates/js/translated/table_filters.js:281
+#: templates/js/translated/table_filters.js:287
msgid "Is allocated"
msgstr ""
-#: templates/js/translated/table_filters.js:282
+#: templates/js/translated/table_filters.js:288
msgid "Item has been allocated"
msgstr ""
-#: templates/js/translated/table_filters.js:287
+#: templates/js/translated/table_filters.js:293
msgid "Stock is available for use"
msgstr ""
-#: templates/js/translated/table_filters.js:292
+#: templates/js/translated/table_filters.js:298
msgid "Include stock in sublocations"
msgstr "Alt konumlardaki stoku dahil et"
-#: templates/js/translated/table_filters.js:297
+#: templates/js/translated/table_filters.js:303
msgid "Show stock items which are depleted"
msgstr ""
-#: templates/js/translated/table_filters.js:302
+#: templates/js/translated/table_filters.js:308
msgid "Show items which are in stock"
msgstr ""
-#: templates/js/translated/table_filters.js:306
+#: templates/js/translated/table_filters.js:312
msgid "In Production"
msgstr ""
-#: templates/js/translated/table_filters.js:307
+#: templates/js/translated/table_filters.js:313
msgid "Show items which are in production"
msgstr ""
-#: templates/js/translated/table_filters.js:311
+#: templates/js/translated/table_filters.js:317
msgid "Include Variants"
msgstr "Çeşitleri Dahil Et"
-#: templates/js/translated/table_filters.js:312
+#: templates/js/translated/table_filters.js:318
msgid "Include stock items for variant parts"
msgstr "Çeşit parçaların stok kalemlerini dahil et"
-#: templates/js/translated/table_filters.js:316
+#: templates/js/translated/table_filters.js:322
msgid "Installed"
msgstr ""
-#: templates/js/translated/table_filters.js:317
+#: templates/js/translated/table_filters.js:323
msgid "Show stock items which are installed in another item"
msgstr ""
-#: templates/js/translated/table_filters.js:322
+#: templates/js/translated/table_filters.js:328
msgid "Show items which have been assigned to a customer"
msgstr ""
-#: templates/js/translated/table_filters.js:342
-#: templates/js/translated/table_filters.js:343
+#: templates/js/translated/table_filters.js:348
+#: templates/js/translated/table_filters.js:349
msgid "Stock status"
msgstr ""
-#: templates/js/translated/table_filters.js:346
+#: templates/js/translated/table_filters.js:352
msgid "Has batch code"
msgstr ""
-#: templates/js/translated/table_filters.js:354
-msgid "Tracked"
-msgstr ""
-
-#: templates/js/translated/table_filters.js:355
+#: templates/js/translated/table_filters.js:361
msgid "Stock item is tracked by either batch code or serial number"
msgstr ""
-#: templates/js/translated/table_filters.js:360
+#: templates/js/translated/table_filters.js:366
msgid "Has purchase price"
msgstr ""
-#: templates/js/translated/table_filters.js:361
+#: templates/js/translated/table_filters.js:367
msgid "Show stock items which have a purchase price set"
msgstr ""
-#: templates/js/translated/table_filters.js:365
+#: templates/js/translated/table_filters.js:371
msgid "Expiry Date before"
msgstr ""
-#: templates/js/translated/table_filters.js:369
+#: templates/js/translated/table_filters.js:375
msgid "Expiry Date after"
msgstr ""
-#: templates/js/translated/table_filters.js:382
+#: templates/js/translated/table_filters.js:388
msgid "Show stock items which have expired"
msgstr ""
-#: templates/js/translated/table_filters.js:388
+#: templates/js/translated/table_filters.js:394
msgid "Show stock which is close to expiring"
msgstr ""
-#: templates/js/translated/table_filters.js:402
+#: templates/js/translated/table_filters.js:408
msgid "Test Passed"
msgstr ""
-#: templates/js/translated/table_filters.js:406
+#: templates/js/translated/table_filters.js:412
msgid "Include Installed Items"
msgstr ""
-#: templates/js/translated/table_filters.js:445
+#: templates/js/translated/table_filters.js:451
msgid "Build status"
msgstr ""
-#: templates/js/translated/table_filters.js:625
+#: templates/js/translated/table_filters.js:647
msgid "Include parts in subcategories"
msgstr "Alt kategorilerdeki parçaları dahil et"
-#: templates/js/translated/table_filters.js:630
+#: templates/js/translated/table_filters.js:652
msgid "Show active parts"
msgstr ""
-#: templates/js/translated/table_filters.js:638
+#: templates/js/translated/table_filters.js:660
msgid "Available stock"
msgstr ""
-#: templates/js/translated/table_filters.js:646
-#: templates/js/translated/table_filters.js:742
+#: templates/js/translated/table_filters.js:668
+#: templates/js/translated/table_filters.js:764
msgid "Has Units"
msgstr ""
-#: templates/js/translated/table_filters.js:647
+#: templates/js/translated/table_filters.js:669
msgid "Part has defined units"
msgstr ""
-#: templates/js/translated/table_filters.js:651
+#: templates/js/translated/table_filters.js:673
msgid "Has IPN"
msgstr "DPN Var"
-#: templates/js/translated/table_filters.js:652
+#: templates/js/translated/table_filters.js:674
msgid "Part has internal part number"
msgstr ""
-#: templates/js/translated/table_filters.js:656
+#: templates/js/translated/table_filters.js:678
msgid "In stock"
msgstr ""
-#: templates/js/translated/table_filters.js:664
+#: templates/js/translated/table_filters.js:686
msgid "Purchasable"
msgstr ""
-#: templates/js/translated/table_filters.js:676
+#: templates/js/translated/table_filters.js:698
msgid "Has stocktake entries"
msgstr ""
-#: templates/js/translated/table_filters.js:738
+#: templates/js/translated/table_filters.js:760
msgid "Has Choices"
msgstr ""
@@ -12390,51 +12551,51 @@ msgstr ""
msgid "Select File Format"
msgstr ""
-#: templates/js/translated/tables.js:561
+#: templates/js/translated/tables.js:537
msgid "Loading data"
msgstr ""
-#: templates/js/translated/tables.js:564
+#: templates/js/translated/tables.js:540
msgid "rows per page"
msgstr ""
-#: templates/js/translated/tables.js:569
+#: templates/js/translated/tables.js:545
msgid "Showing all rows"
msgstr ""
-#: templates/js/translated/tables.js:571
+#: templates/js/translated/tables.js:547
msgid "Showing"
msgstr "Gösteriliyor"
-#: templates/js/translated/tables.js:571
+#: templates/js/translated/tables.js:547
msgid "to"
msgstr "için"
-#: templates/js/translated/tables.js:571
+#: templates/js/translated/tables.js:547
msgid "of"
msgstr "yüzünden"
-#: templates/js/translated/tables.js:571
+#: templates/js/translated/tables.js:547
msgid "rows"
msgstr "satırlar"
-#: templates/js/translated/tables.js:578
+#: templates/js/translated/tables.js:554
msgid "No matching results"
msgstr "Sonuç bulunamadı"
-#: templates/js/translated/tables.js:581
+#: templates/js/translated/tables.js:557
msgid "Hide/Show pagination"
msgstr "Sayfalandırmayı Göster"
-#: templates/js/translated/tables.js:587
+#: templates/js/translated/tables.js:563
msgid "Toggle"
msgstr "Değiştir"
-#: templates/js/translated/tables.js:590
+#: templates/js/translated/tables.js:566
msgid "Columns"
msgstr "Sütunlar"
-#: templates/js/translated/tables.js:593
+#: templates/js/translated/tables.js:569
msgid "All"
msgstr "Tümü"
@@ -12616,50 +12777,6 @@ msgstr "E-posta Ayarları"
msgid "Email settings not configured"
msgstr "E-posta ayarları yapılandırılmadı"
-#: templates/stock_table.html:17
-msgid "Barcode Actions"
-msgstr "Barkod İşlemleri"
-
-#: templates/stock_table.html:28
-msgid "Stock Options"
-msgstr "Stok Seçenekleri"
-
-#: templates/stock_table.html:33
-msgid "Add to selected stock items"
-msgstr "Seçili stok parçalarını ekle"
-
-#: templates/stock_table.html:34
-msgid "Remove from selected stock items"
-msgstr "Seçili stok parçalarını kaldır"
-
-#: templates/stock_table.html:35
-msgid "Stocktake selected stock items"
-msgstr "Seçili stok parçalarını değerlendir"
-
-#: templates/stock_table.html:36
-msgid "Move selected stock items"
-msgstr "Stok parçalarını taşı"
-
-#: templates/stock_table.html:37
-msgid "Merge selected stock items"
-msgstr "Seçili stok parçalarını birleştir"
-
-#: templates/stock_table.html:37
-msgid "Merge stock"
-msgstr "Stok birlşetirme"
-
-#: templates/stock_table.html:38
-msgid "Order selected items"
-msgstr "Seçili parçaları sırala"
-
-#: templates/stock_table.html:42
-msgid "Delete selected items"
-msgstr "Seçili parçaları sil"
-
-#: templates/stock_table.html:42
-msgid "Delete stock"
-msgstr "Parça sil"
-
#: templates/yesnolabel.html:4
msgid "Yes"
msgstr "Evet"
@@ -12692,35 +12809,35 @@ msgstr "Yetkiler"
msgid "Important dates"
msgstr "Önemli tarihler"
-#: users/models.py:230
+#: users/models.py:236
msgid "Permission set"
msgstr "İzinleri ayarla"
-#: users/models.py:238
+#: users/models.py:244
msgid "Group"
msgstr "Grup"
-#: users/models.py:241
+#: users/models.py:247
msgid "View"
msgstr "Görünüm"
-#: users/models.py:241
+#: users/models.py:247
msgid "Permission to view items"
msgstr "Parçayı görüntüleme izni"
-#: users/models.py:243
+#: users/models.py:249
msgid "Permission to add items"
msgstr "Parça ekleme izni"
-#: users/models.py:245
+#: users/models.py:251
msgid "Change"
msgstr "Değiştir"
-#: users/models.py:245
+#: users/models.py:251
msgid "Permissions to edit items"
msgstr "Parçaları düzenleme izni"
-#: users/models.py:247
+#: users/models.py:253
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 85bea8a1a5..3fb77c1166 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: 2023-06-09 00:32+0000\n"
-"PO-Revision-Date: 2023-06-09 10:27\n"
+"POT-Creation-Date: 2023-06-20 07:01+0000\n"
+"PO-Revision-Date: 2023-06-20 07:06\n"
"Last-Translator: \n"
"Language-Team: Vietnamese\n"
"Language: vi_VN\n"
@@ -49,26 +49,26 @@ msgstr "Chi tiết lỗi có thể được tìm thấy trong bảng quản tr
msgid "Enter date"
msgstr "Nhập ngày"
-#: InvenTree/fields.py:206 InvenTree/models.py:766 build/serializers.py:427
-#: build/serializers.py:506 build/templates/build/sidebar.html:23
-#: company/models.py:597 company/templates/company/sidebar.html:35
-#: order/models.py:1089 order/templates/order/po_sidebar.html:11
+#: InvenTree/fields.py:206 InvenTree/models.py:766 build/serializers.py:435
+#: build/serializers.py:514 build/templates/build/sidebar.html:21
+#: company/models.py:746 company/templates/company/sidebar.html:37
+#: order/models.py:1102 order/templates/order/po_sidebar.html:11
#: order/templates/order/return_order_sidebar.html:9
#: order/templates/order/so_sidebar.html:17 part/admin.py:41
-#: part/models.py:3005 part/templates/part/part_sidebar.html:63
+#: part/models.py:3039 part/templates/part/part_sidebar.html:63
#: report/templates/report/inventree_build_order_base.html:172
#: stock/admin.py:121 stock/models.py:2160 stock/models.py:2268
-#: stock/serializers.py:342 stock/serializers.py:475 stock/serializers.py:556
-#: stock/serializers.py:839 stock/serializers.py:938 stock/serializers.py:1070
-#: stock/templates/stock/stock_sidebar.html:25
-#: templates/js/translated/barcode.js:143 templates/js/translated/bom.js:1224
-#: templates/js/translated/company.js:1294 templates/js/translated/order.js:347
-#: templates/js/translated/part.js:1054
-#: templates/js/translated/purchase_order.js:2168
-#: templates/js/translated/return_order.js:760
-#: templates/js/translated/sales_order.js:1055
-#: templates/js/translated/sales_order.js:1959
-#: templates/js/translated/stock.js:1460 templates/js/translated/stock.js:2164
+#: stock/serializers.py:408 stock/serializers.py:542 stock/serializers.py:623
+#: stock/serializers.py:681 stock/serializers.py:956 stock/serializers.py:1055
+#: stock/serializers.py:1187 stock/templates/stock/stock_sidebar.html:25
+#: templates/js/translated/barcode.js:143 templates/js/translated/bom.js:1244
+#: templates/js/translated/company.js:1715 templates/js/translated/order.js:347
+#: templates/js/translated/part.js:1053
+#: templates/js/translated/purchase_order.js:2178
+#: templates/js/translated/return_order.js:772
+#: templates/js/translated/sales_order.js:1067
+#: templates/js/translated/sales_order.js:1971
+#: templates/js/translated/stock.js:1459 templates/js/translated/stock.js:2321
msgid "Notes"
msgstr "Ghi chú"
@@ -81,47 +81,51 @@ msgstr "Giá trị '{name}' không xuất hiện ở định dạng mẫu"
msgid "Provided value does not match required pattern: "
msgstr "Giá trị được cung cấp không khớp với mẫu bắt buộc: "
-#: InvenTree/forms.py:145
+#: InvenTree/forms.py:147
msgid "Enter password"
msgstr "Nhập mật khẩu"
-#: InvenTree/forms.py:146
+#: InvenTree/forms.py:148
msgid "Enter new password"
msgstr "Nhập mật khẩu mới"
-#: InvenTree/forms.py:155
+#: InvenTree/forms.py:157
msgid "Confirm password"
msgstr "Xác nhận mật khẩu"
-#: InvenTree/forms.py:156
+#: InvenTree/forms.py:158
msgid "Confirm new password"
msgstr "Xác nhận mật khẩu mới"
-#: InvenTree/forms.py:160
+#: InvenTree/forms.py:162
msgid "Old password"
msgstr "Mật khẩu cũ"
-#: InvenTree/forms.py:179
+#: InvenTree/forms.py:181
msgid "Email (again)"
msgstr "Email (nhắc lại)"
-#: InvenTree/forms.py:183
+#: InvenTree/forms.py:185
msgid "Email address confirmation"
msgstr "Xác nhận địa chỉ email"
-#: InvenTree/forms.py:204
+#: InvenTree/forms.py:206
msgid "You must type the same email each time."
msgstr "Bạn phải nhập cùng một email mỗi lần."
-#: InvenTree/forms.py:230 InvenTree/forms.py:236
+#: InvenTree/forms.py:237 InvenTree/forms.py:243
msgid "The provided primary email address is not valid."
msgstr "Địa chỉ email chính đã cung cấp không hợp lệ."
-#: InvenTree/forms.py:242
+#: InvenTree/forms.py:249
msgid "The provided email domain is not approved."
msgstr "Miền email được cung cấp không được phê duyệt."
-#: InvenTree/helpers.py:462 order/models.py:442 order/models.py:611
+#: InvenTree/forms.py:345
+msgid "Registration is disabled."
+msgstr ""
+
+#: InvenTree/helpers.py:462 order/models.py:455 order/models.py:624
msgid "Invalid quantity provided"
msgstr "Số lượng cung cấp không hợp lệ"
@@ -239,7 +243,7 @@ msgstr ""
#: InvenTree/models.py:486 stock/models.py:2262
#: templates/js/translated/attachment.js:119
-#: templates/js/translated/attachment.js:306
+#: templates/js/translated/attachment.js:316
msgid "Attachment"
msgstr "Đính kèm"
@@ -247,29 +251,30 @@ msgstr "Đính kèm"
msgid "Select file to attach"
msgstr "Chọn file đính kèm"
-#: InvenTree/models.py:493 common/models.py:2695 company/models.py:132
-#: company/models.py:306 company/models.py:584 order/models.py:236
-#: order/models.py:1093 order/models.py:1453 part/admin.py:39
-#: part/models.py:901 part/templates/part/part_scheduling.html:11
+#: InvenTree/models.py:493 common/models.py:2681 company/models.py:128
+#: company/models.py:381 company/models.py:455 company/models.py:733
+#: order/models.py:240 order/models.py:1106 order/models.py:1466
+#: part/admin.py:39 part/models.py:902
+#: part/templates/part/part_scheduling.html:11
#: report/templates/report/inventree_build_order_base.html:164
-#: stock/admin.py:120 templates/js/translated/company.js:977
-#: templates/js/translated/company.js:1283 templates/js/translated/order.js:351
-#: templates/js/translated/part.js:2316
-#: templates/js/translated/purchase_order.js:2008
-#: templates/js/translated/purchase_order.js:2172
-#: templates/js/translated/return_order.js:764
-#: templates/js/translated/sales_order.js:1044
-#: templates/js/translated/sales_order.js:1964
+#: stock/admin.py:120 templates/js/translated/company.js:1350
+#: templates/js/translated/company.js:1704 templates/js/translated/order.js:351
+#: templates/js/translated/part.js:2392
+#: templates/js/translated/purchase_order.js:2018
+#: templates/js/translated/purchase_order.js:2182
+#: templates/js/translated/return_order.js:776
+#: templates/js/translated/sales_order.js:1056
+#: templates/js/translated/sales_order.js:1976
msgid "Link"
msgstr "Liên kết"
-#: InvenTree/models.py:494 build/models.py:291 part/models.py:902
+#: InvenTree/models.py:494 build/models.py:295 part/models.py:903
#: stock/models.py:735
msgid "Link to external URL"
msgstr "Liên kết đến URL bên ngoài"
#: InvenTree/models.py:497 templates/js/translated/attachment.js:120
-#: templates/js/translated/attachment.js:321
+#: templates/js/translated/attachment.js:331
msgid "Comment"
msgstr "Bình luận"
@@ -277,13 +282,13 @@ msgstr "Bình luận"
msgid "File comment"
msgstr "Bình luận tệp tin"
-#: InvenTree/models.py:503 InvenTree/models.py:504 common/models.py:2154
-#: common/models.py:2155 common/models.py:2368 common/models.py:2369
-#: common/models.py:2625 common/models.py:2626 part/models.py:3013
-#: part/models.py:3101 part/models.py:3180 part/models.py:3200
-#: plugin/models.py:217 plugin/models.py:218
+#: InvenTree/models.py:503 InvenTree/models.py:504 common/models.py:2140
+#: common/models.py:2141 common/models.py:2354 common/models.py:2355
+#: common/models.py:2611 common/models.py:2612 part/models.py:3047
+#: part/models.py:3135 part/models.py:3214 part/models.py:3234
+#: plugin/models.py:218 plugin/models.py:219
#: report/templates/report/inventree_test_report_base.html:105
-#: templates/js/translated/stock.js:2773
+#: templates/js/translated/stock.js:2904
msgid "User"
msgstr "Người dùng"
@@ -324,53 +329,54 @@ msgstr ""
msgid "Invalid choice"
msgstr ""
-#: InvenTree/models.py:648 InvenTree/models.py:649 common/models.py:2354
-#: company/models.py:390 label/models.py:103 part/models.py:847
-#: part/models.py:3400 plugin/models.py:41 report/models.py:160
+#: InvenTree/models.py:648 InvenTree/models.py:649 common/models.py:2340
+#: company/models.py:539 label/models.py:111 part/models.py:848
+#: part/models.py:3434 plugin/models.py:42 report/models.py:160
#: templates/InvenTree/settings/mixins/urls.html:13
#: templates/InvenTree/settings/notifications.html:17
-#: templates/InvenTree/settings/plugin.html:80
+#: templates/InvenTree/settings/plugin.html:74
#: templates/InvenTree/settings/plugin_settings.html:22
-#: templates/js/translated/company.js:658
-#: templates/js/translated/company.js:706
-#: templates/js/translated/company.js:871
-#: templates/js/translated/company.js:1071 templates/js/translated/part.js:1160
-#: templates/js/translated/part.js:1447 templates/js/translated/part.js:1583
-#: templates/js/translated/part.js:2699 templates/js/translated/stock.js:2464
+#: templates/js/translated/company.js:665
+#: templates/js/translated/company.js:713
+#: templates/js/translated/company.js:940
+#: templates/js/translated/company.js:1196
+#: templates/js/translated/company.js:1444 templates/js/translated/part.js:1159
+#: templates/js/translated/part.js:1446 templates/js/translated/part.js:1582
+#: templates/js/translated/part.js:2684 templates/js/translated/stock.js:2595
msgid "Name"
msgstr ""
-#: InvenTree/models.py:655 build/models.py:164
+#: InvenTree/models.py:655 build/models.py:168
#: build/templates/build/detail.html:24 common/models.py:111
-#: company/models.py:312 company/models.py:590
+#: company/models.py:461 company/models.py:739
#: company/templates/company/company_base.html:72
#: company/templates/company/manufacturer_part.html:75
-#: company/templates/company/supplier_part.html:108 label/models.py:110
-#: order/models.py:232 order/models.py:1117 part/admin.py:194 part/admin.py:276
-#: part/models.py:869 part/models.py:3416 part/templates/part/category.html:81
+#: company/templates/company/supplier_part.html:108 label/models.py:118
+#: order/models.py:232 order/models.py:1130 part/admin.py:194 part/admin.py:276
+#: part/models.py:870 part/models.py:3450 part/templates/part/category.html:81
#: part/templates/part/part_base.html:172
#: part/templates/part/part_scheduling.html:12 report/models.py:173
-#: report/models.py:587 report/models.py:631
+#: report/models.py:589 report/models.py:633
#: report/templates/report/inventree_build_order_base.html:117
#: stock/admin.py:41 stock/templates/stock/location.html:123
#: templates/InvenTree/settings/notifications.html:19
#: templates/InvenTree/settings/plugin_settings.html:27
#: templates/InvenTree/settings/settings_staff_js.html:75
-#: templates/js/translated/bom.js:632 templates/js/translated/bom.js:933
-#: templates/js/translated/build.js:2857 templates/js/translated/company.js:510
-#: templates/js/translated/company.js:988
-#: templates/js/translated/company.js:1251 templates/js/translated/order.js:298
-#: templates/js/translated/part.js:1212 templates/js/translated/part.js:1456
-#: templates/js/translated/part.js:1594 templates/js/translated/part.js:1933
-#: templates/js/translated/part.js:2247 templates/js/translated/part.js:2735
-#: templates/js/translated/part.js:2826
-#: templates/js/translated/purchase_order.js:1666
-#: templates/js/translated/purchase_order.js:1812
-#: templates/js/translated/purchase_order.js:1990
-#: templates/js/translated/return_order.js:302
-#: templates/js/translated/sales_order.js:790
-#: templates/js/translated/stock.js:1439 templates/js/translated/stock.js:1817
-#: templates/js/translated/stock.js:2496 templates/js/translated/stock.js:2568
+#: templates/js/translated/bom.js:633 templates/js/translated/bom.js:951
+#: templates/js/translated/build.js:2062 templates/js/translated/company.js:517
+#: templates/js/translated/company.js:1361
+#: templates/js/translated/company.js:1672 templates/js/translated/index.js:114
+#: templates/js/translated/order.js:298 templates/js/translated/part.js:1211
+#: templates/js/translated/part.js:1455 templates/js/translated/part.js:1593
+#: templates/js/translated/part.js:1932 templates/js/translated/part.js:2323
+#: templates/js/translated/part.js:2720 templates/js/translated/part.js:2811
+#: templates/js/translated/purchase_order.js:1681
+#: templates/js/translated/purchase_order.js:1827
+#: templates/js/translated/purchase_order.js:2000
+#: templates/js/translated/return_order.js:314
+#: templates/js/translated/sales_order.js:802
+#: templates/js/translated/stock.js:1438 templates/js/translated/stock.js:1974
+#: templates/js/translated/stock.js:2627 templates/js/translated/stock.js:2699
msgid "Description"
msgstr "Mô tả"
@@ -383,7 +389,7 @@ msgid "parent"
msgstr ""
#: InvenTree/models.py:671 InvenTree/models.py:672
-#: templates/js/translated/part.js:2744 templates/js/translated/stock.js:2505
+#: templates/js/translated/part.js:2729 templates/js/translated/stock.js:2636
msgid "Path"
msgstr ""
@@ -419,12 +425,12 @@ msgstr ""
msgid "An error has been logged by the server."
msgstr ""
-#: InvenTree/serializers.py:60 part/models.py:3897
+#: InvenTree/serializers.py:60 part/models.py:3941
msgid "Must be a valid number"
msgstr ""
-#: InvenTree/serializers.py:90 company/models.py:154
-#: company/templates/company/company_base.html:107 part/models.py:2852
+#: InvenTree/serializers.py:90 company/models.py:150
+#: company/templates/company/company_base.html:107 part/models.py:2886
#: templates/InvenTree/settings/settings_staff_js.html:44
#: templates/currency_data.html:5
msgid "Currency"
@@ -497,130 +503,130 @@ msgstr ""
msgid "Downloading images from remote URL is not enabled"
msgstr ""
-#: InvenTree/settings.py:714
+#: InvenTree/settings.py:741
msgid "Czech"
msgstr "Tiếng Séc"
-#: InvenTree/settings.py:715
+#: InvenTree/settings.py:742
msgid "Danish"
msgstr "Tiếng Đan Mạch"
-#: InvenTree/settings.py:716
+#: InvenTree/settings.py:743
msgid "German"
msgstr "Tiếng Đức"
-#: InvenTree/settings.py:717
+#: InvenTree/settings.py:744
msgid "Greek"
msgstr ""
-#: InvenTree/settings.py:718
+#: InvenTree/settings.py:745
msgid "English"
msgstr ""
-#: InvenTree/settings.py:719
+#: InvenTree/settings.py:746
msgid "Spanish"
msgstr ""
-#: InvenTree/settings.py:720
+#: InvenTree/settings.py:747
msgid "Spanish (Mexican)"
msgstr ""
-#: InvenTree/settings.py:721
+#: InvenTree/settings.py:748
msgid "Farsi / Persian"
msgstr ""
-#: InvenTree/settings.py:722
+#: InvenTree/settings.py:749
msgid "Finnish"
msgstr ""
-#: InvenTree/settings.py:723
+#: InvenTree/settings.py:750
msgid "French"
msgstr "Tiếng Pháp"
-#: InvenTree/settings.py:724
+#: InvenTree/settings.py:751
msgid "Hebrew"
msgstr "Tiếng Do Thái"
-#: InvenTree/settings.py:725
+#: InvenTree/settings.py:752
msgid "Hungarian"
msgstr "Tiếng Hung-ga-ri"
-#: InvenTree/settings.py:726
+#: InvenTree/settings.py:753
msgid "Italian"
msgstr "Tiếng Ý"
-#: InvenTree/settings.py:727
+#: InvenTree/settings.py:754
msgid "Japanese"
msgstr "Tiếng Nhật"
-#: InvenTree/settings.py:728
+#: InvenTree/settings.py:755
msgid "Korean"
msgstr "Tiếng Hàn"
-#: InvenTree/settings.py:729
+#: InvenTree/settings.py:756
msgid "Dutch"
msgstr "Tiếng Hà Lan"
-#: InvenTree/settings.py:730
+#: InvenTree/settings.py:757
msgid "Norwegian"
msgstr "Tiếng Na Uy"
-#: InvenTree/settings.py:731
+#: InvenTree/settings.py:758
msgid "Polish"
msgstr "Tiếng Ba Lan"
-#: InvenTree/settings.py:732
+#: InvenTree/settings.py:759
msgid "Portuguese"
msgstr "Tiếng Bồ Đào Nha"
-#: InvenTree/settings.py:733
+#: InvenTree/settings.py:760
msgid "Portuguese (Brazilian)"
msgstr "Tiếng Bồ Đào Nha (Brazil)"
-#: InvenTree/settings.py:734
+#: InvenTree/settings.py:761
msgid "Russian"
msgstr "Tiếng Nga"
-#: InvenTree/settings.py:735
+#: InvenTree/settings.py:762
msgid "Slovenian"
msgstr "Tiếng Slô-ven-ni-a"
-#: InvenTree/settings.py:736
+#: InvenTree/settings.py:763
msgid "Swedish"
msgstr "Tiếng Thụy Điển"
-#: InvenTree/settings.py:737
+#: InvenTree/settings.py:764
msgid "Thai"
msgstr "Tiếng Thái"
-#: InvenTree/settings.py:738
+#: InvenTree/settings.py:765
msgid "Turkish"
msgstr "Tiếng Thổ Nhĩ Kỳ"
-#: InvenTree/settings.py:739
+#: InvenTree/settings.py:766
msgid "Vietnamese"
msgstr "Tiếng Việt"
-#: InvenTree/settings.py:740
+#: InvenTree/settings.py:767
msgid "Chinese"
msgstr "Tiếng Trung"
-#: InvenTree/status.py:61 part/serializers.py:878
+#: InvenTree/status.py:68 part/serializers.py:940
msgid "Background worker check failed"
msgstr ""
-#: InvenTree/status.py:65
+#: InvenTree/status.py:72
msgid "Email backend not configured"
msgstr ""
-#: InvenTree/status.py:68
+#: InvenTree/status.py:75
msgid "InvenTree system health checks failed"
msgstr ""
#: InvenTree/status_codes.py:12 InvenTree/status_codes.py:40
#: InvenTree/status_codes.py:148 InvenTree/status_codes.py:167
#: InvenTree/status_codes.py:188 generic/states/tests.py:16
-#: templates/js/translated/table_filters.js:511
+#: templates/js/translated/table_filters.js:533
msgid "Pending"
msgstr ""
@@ -630,7 +636,7 @@ msgstr ""
#: InvenTree/status_codes.py:14 InvenTree/status_codes.py:151
#: InvenTree/status_codes.py:172 generic/states/tests.py:18
-#: order/templates/order/order_base.html:162
+#: order/templates/order/order_base.html:158
#: order/templates/order/sales_order_base.html:162
msgid "Complete"
msgstr ""
@@ -654,10 +660,10 @@ msgstr ""
msgid "In Progress"
msgstr ""
-#: InvenTree/status_codes.py:42 order/models.py:1332
-#: templates/js/translated/sales_order.js:1509
-#: templates/js/translated/sales_order.js:1630
-#: templates/js/translated/sales_order.js:1934
+#: InvenTree/status_codes.py:42 order/models.py:1345
+#: templates/js/translated/sales_order.js:1521
+#: templates/js/translated/sales_order.js:1642
+#: templates/js/translated/sales_order.js:1946
msgid "Shipped"
msgstr ""
@@ -689,7 +695,7 @@ msgstr ""
msgid "Legacy stock tracking entry"
msgstr ""
-#: InvenTree/status_codes.py:93 templates/js/translated/stock.js:511
+#: InvenTree/status_codes.py:93 templates/js/translated/stock.js:510
msgid "Stock item created"
msgstr ""
@@ -745,7 +751,7 @@ msgstr ""
msgid "Split child item"
msgstr ""
-#: InvenTree/status_codes.py:120 templates/js/translated/stock.js:2243
+#: InvenTree/status_codes.py:120 templates/js/translated/stock.js:1769
msgid "Merged stock items"
msgstr ""
@@ -765,7 +771,7 @@ msgstr ""
msgid "Build order output rejected"
msgstr ""
-#: InvenTree/status_codes.py:129 templates/js/translated/stock.js:1676
+#: InvenTree/status_codes.py:129 templates/js/translated/stock.js:1675
msgid "Consumed by build order"
msgstr ""
@@ -781,7 +787,7 @@ msgstr ""
msgid "Returned against Return Order"
msgstr ""
-#: InvenTree/status_codes.py:141 templates/js/translated/table_filters.js:321
+#: InvenTree/status_codes.py:141 templates/js/translated/table_filters.js:327
msgid "Sent to customer"
msgstr ""
@@ -849,83 +855,111 @@ msgstr "Mật khẩu phải trùng khớp"
msgid "Wrong password provided"
msgstr ""
-#: InvenTree/views.py:651 templates/navbar.html:157
+#: InvenTree/views.py:653 templates/navbar.html:157
msgid "System Information"
msgstr "Thông tin hệ thống"
-#: InvenTree/views.py:658 templates/navbar.html:168
+#: InvenTree/views.py:660 templates/navbar.html:168
msgid "About InvenTree"
msgstr "Giới thiệu"
-#: build/api.py:222
+#: build/api.py:242
msgid "Build must be cancelled before it can be deleted"
msgstr ""
-#: build/models.py:69 build/templates/build/build_base.html:9
+#: build/api.py:286 part/models.py:3833 templates/js/translated/bom.js:985
+#: templates/js/translated/bom.js:1025 templates/js/translated/build.js:2449
+#: templates/js/translated/table_filters.js:166
+#: templates/js/translated/table_filters.js:518
+msgid "Consumable"
+msgstr ""
+
+#: build/api.py:287 part/models.py:3827 part/templates/part/upload_bom.html:58
+#: templates/js/translated/bom.js:989 templates/js/translated/bom.js:1016
+#: templates/js/translated/build.js:2458
+#: templates/js/translated/table_filters.js:162
+#: templates/js/translated/table_filters.js:191
+#: templates/js/translated/table_filters.js:522
+msgid "Optional"
+msgstr ""
+
+#: build/api.py:288 templates/js/translated/table_filters.js:360
+#: templates/js/translated/table_filters.js:514
+msgid "Tracked"
+msgstr ""
+
+#: build/api.py:290 part/admin.py:64 templates/js/translated/build.js:1670
+#: templates/js/translated/build.js:2549
+#: templates/js/translated/sales_order.js:1918
+#: templates/js/translated/table_filters.js:506
+msgid "Allocated"
+msgstr ""
+
+#: build/models.py:73 build/templates/build/build_base.html:9
#: build/templates/build/build_base.html:27
#: report/templates/report/inventree_build_order_base.html:105
#: templates/email/build_order_completed.html:16
#: templates/email/overdue_build_order.html:15
-#: templates/js/translated/build.js:945 templates/js/translated/stock.js:2629
+#: templates/js/translated/build.js:953 templates/js/translated/stock.js:2760
msgid "Build Order"
msgstr "Tạo đơn hàng"
-#: build/models.py:70 build/templates/build/build_base.html:13
+#: build/models.py:74 build/templates/build/build_base.html:13
#: build/templates/build/index.html:8 build/templates/build/index.html:12
-#: order/templates/order/sales_order_detail.html:119
+#: order/templates/order/sales_order_detail.html:111
#: order/templates/order/so_sidebar.html:13
-#: part/templates/part/part_sidebar.html:22 templates/InvenTree/index.html:244
+#: part/templates/part/part_sidebar.html:22 templates/InvenTree/index.html:196
#: templates/InvenTree/search.html:141
#: templates/InvenTree/settings/sidebar.html:53
-#: templates/js/translated/search.js:228 users/models.py:42
+#: templates/js/translated/search.js:186 users/models.py:42
msgid "Build Orders"
msgstr "Tạo đơn hàng"
-#: build/models.py:111
+#: build/models.py:115
msgid "Invalid choice for parent build"
msgstr ""
-#: build/models.py:155
+#: build/models.py:159
msgid "Build Order Reference"
msgstr ""
-#: build/models.py:156 order/models.py:359 order/models.py:765
-#: order/models.py:1087 order/models.py:1724 part/admin.py:278
-#: part/models.py:3798 part/templates/part/upload_bom.html:54
+#: build/models.py:160 order/models.py:372 order/models.py:778
+#: order/models.py:1100 order/models.py:1737 part/admin.py:278
+#: part/models.py:3842 part/templates/part/upload_bom.html:54
#: report/templates/report/inventree_bill_of_materials_report.html:139
#: report/templates/report/inventree_po_report_base.html:28
#: report/templates/report/inventree_return_order_report_base.html:26
#: report/templates/report/inventree_so_report_base.html:28
-#: templates/js/translated/bom.js:769 templates/js/translated/bom.js:943
-#: templates/js/translated/build.js:2098 templates/js/translated/order.js:291
+#: templates/js/translated/bom.js:770 templates/js/translated/bom.js:961
+#: templates/js/translated/build.js:2441 templates/js/translated/order.js:291
#: templates/js/translated/pricing.js:386
-#: templates/js/translated/purchase_order.js:2033
-#: templates/js/translated/return_order.js:713
-#: templates/js/translated/sales_order.js:1798
+#: templates/js/translated/purchase_order.js:2043
+#: templates/js/translated/return_order.js:725
+#: templates/js/translated/sales_order.js:1810
msgid "Reference"
msgstr "Tham chiếu"
-#: build/models.py:167
+#: build/models.py:171
msgid "Brief description of the build (optional)"
msgstr ""
-#: build/models.py:175 build/templates/build/build_base.html:183
+#: build/models.py:179 build/templates/build/build_base.html:184
#: build/templates/build/detail.html:87
msgid "Parent Build"
msgstr ""
-#: build/models.py:176
+#: build/models.py:180
msgid "BuildOrder to which this build is allocated"
msgstr ""
-#: build/models.py:181 build/templates/build/build_base.html:98
-#: build/templates/build/detail.html:29 company/models.py:775
-#: order/models.py:1195 order/models.py:1311 order/models.py:1312
-#: part/models.py:391 part/models.py:2865 part/models.py:2979
-#: part/models.py:3119 part/models.py:3138 part/models.py:3157
-#: part/models.py:3178 part/models.py:3270 part/models.py:3555
-#: part/models.py:3663 part/models.py:3763 part/models.py:4077
-#: part/serializers.py:842 part/serializers.py:1245
+#: build/models.py:185 build/templates/build/build_base.html:98
+#: build/templates/build/detail.html:29 company/models.py:924
+#: order/models.py:1208 order/models.py:1324 order/models.py:1325
+#: part/models.py:392 part/models.py:2899 part/models.py:3013
+#: part/models.py:3153 part/models.py:3172 part/models.py:3191
+#: part/models.py:3212 part/models.py:3304 part/models.py:3589
+#: part/models.py:3712 part/models.py:3807 part/models.py:4121
+#: part/serializers.py:904 part/serializers.py:1307
#: part/templates/part/part_app_base.html:8
#: part/templates/part/part_pricing.html:12
#: part/templates/part/upload_bom.html:52
@@ -935,266 +969,229 @@ msgstr ""
#: report/templates/report/inventree_po_report_base.html:27
#: report/templates/report/inventree_return_order_report_base.html:24
#: report/templates/report/inventree_so_report_base.html:27
-#: stock/serializers.py:156 stock/serializers.py:509
+#: stock/serializers.py:205 stock/serializers.py:576
#: templates/InvenTree/search.html:82
#: templates/email/build_order_completed.html:17
#: templates/email/build_order_required_stock.html:17
#: templates/email/low_stock_notification.html:15
#: templates/email/overdue_build_order.html:16
-#: templates/js/translated/barcode.js:529 templates/js/translated/bom.js:631
-#: templates/js/translated/bom.js:768 templates/js/translated/bom.js:887
-#: templates/js/translated/build.js:1403 templates/js/translated/build.js:1965
-#: templates/js/translated/build.js:2464 templates/js/translated/build.js:2868
-#: templates/js/translated/company.js:337
-#: templates/js/translated/company.js:822
-#: templates/js/translated/company.js:929
-#: templates/js/translated/company.js:1169 templates/js/translated/part.js:1918
-#: templates/js/translated/part.js:1990 templates/js/translated/part.js:2216
-#: templates/js/translated/pricing.js:369
-#: templates/js/translated/purchase_order.js:746
-#: templates/js/translated/purchase_order.js:1274
-#: templates/js/translated/purchase_order.js:1811
-#: templates/js/translated/purchase_order.js:1975
-#: templates/js/translated/return_order.js:527
-#: templates/js/translated/return_order.js:694
-#: templates/js/translated/sales_order.js:285
-#: templates/js/translated/sales_order.js:1185
-#: templates/js/translated/sales_order.js:1584
-#: templates/js/translated/sales_order.js:1782
-#: templates/js/translated/stock.js:643 templates/js/translated/stock.js:809
-#: templates/js/translated/stock.js:1021 templates/js/translated/stock.js:1773
-#: templates/js/translated/stock.js:2594 templates/js/translated/stock.js:2831
-#: templates/js/translated/stock.js:2968
+#: templates/js/translated/barcode.js:529 templates/js/translated/bom.js:632
+#: templates/js/translated/bom.js:769 templates/js/translated/bom.js:905
+#: templates/js/translated/build.js:1289 templates/js/translated/build.js:1669
+#: templates/js/translated/build.js:2085 templates/js/translated/build.js:2261
+#: templates/js/translated/company.js:347
+#: templates/js/translated/company.js:1147
+#: templates/js/translated/company.js:1302
+#: templates/js/translated/company.js:1590 templates/js/translated/index.js:104
+#: templates/js/translated/part.js:1917 templates/js/translated/part.js:1989
+#: templates/js/translated/part.js:2292 templates/js/translated/pricing.js:369
+#: templates/js/translated/purchase_order.js:757
+#: templates/js/translated/purchase_order.js:1289
+#: templates/js/translated/purchase_order.js:1826
+#: templates/js/translated/purchase_order.js:1985
+#: templates/js/translated/return_order.js:539
+#: templates/js/translated/return_order.js:706
+#: templates/js/translated/sales_order.js:297
+#: templates/js/translated/sales_order.js:1197
+#: templates/js/translated/sales_order.js:1596
+#: templates/js/translated/sales_order.js:1794
+#: templates/js/translated/stock.js:642 templates/js/translated/stock.js:808
+#: templates/js/translated/stock.js:1020 templates/js/translated/stock.js:1913
+#: templates/js/translated/stock.js:2725 templates/js/translated/stock.js:2958
+#: templates/js/translated/stock.js:3095
msgid "Part"
msgstr "Nguyên liệu"
-#: build/models.py:189
+#: build/models.py:193
msgid "Select part to build"
msgstr ""
-#: build/models.py:194
+#: build/models.py:198
msgid "Sales Order Reference"
msgstr ""
-#: build/models.py:198
+#: build/models.py:202
msgid "SalesOrder to which this build is allocated"
msgstr ""
-#: build/models.py:203 build/serializers.py:942
-#: templates/js/translated/build.js:2452
-#: templates/js/translated/sales_order.js:1173
+#: build/models.py:207 build/serializers.py:946
+#: templates/js/translated/build.js:1657
+#: templates/js/translated/sales_order.js:1185
msgid "Source Location"
msgstr ""
-#: build/models.py:207
+#: build/models.py:211
msgid "Select location to take stock from for this build (leave blank to take from any stock location)"
msgstr ""
-#: build/models.py:212
+#: build/models.py:216
msgid "Destination Location"
msgstr ""
-#: build/models.py:216
+#: build/models.py:220
msgid "Select location where the completed items will be stored"
msgstr ""
-#: build/models.py:220
+#: build/models.py:224
msgid "Build Quantity"
msgstr ""
-#: build/models.py:223
+#: build/models.py:227
msgid "Number of stock items to build"
msgstr ""
-#: build/models.py:227
+#: build/models.py:231
msgid "Completed items"
msgstr ""
-#: build/models.py:229
+#: build/models.py:233
msgid "Number of stock items which have been completed"
msgstr ""
-#: build/models.py:233
+#: build/models.py:237
msgid "Build Status"
msgstr ""
-#: build/models.py:237
+#: build/models.py:241
msgid "Build status code"
msgstr ""
-#: build/models.py:246 build/serializers.py:269 order/serializers.py:506
-#: stock/models.py:739 templates/js/translated/purchase_order.js:1099
+#: build/models.py:250 build/serializers.py:277 order/serializers.py:512
+#: stock/models.py:739 templates/js/translated/purchase_order.js:1114
msgid "Batch Code"
msgstr ""
-#: build/models.py:250 build/serializers.py:270
+#: build/models.py:254 build/serializers.py:278
msgid "Batch code for this build output"
msgstr ""
-#: build/models.py:253 order/models.py:244 part/models.py:1038
+#: build/models.py:257 order/models.py:248 part/models.py:1039
#: part/templates/part/part_base.html:312
-#: templates/js/translated/return_order.js:327
-#: templates/js/translated/sales_order.js:815
+#: templates/js/translated/return_order.js:339
+#: templates/js/translated/sales_order.js:827
msgid "Creation Date"
msgstr "Ngày tạo"
-#: build/models.py:257
+#: build/models.py:261
msgid "Target completion date"
msgstr ""
-#: build/models.py:258
+#: build/models.py:262
msgid "Target date for build completion. Build will be overdue after this date."
msgstr ""
-#: build/models.py:261 order/models.py:409 order/models.py:1767
-#: templates/js/translated/build.js:2953
+#: build/models.py:265 order/models.py:422 order/models.py:1780
+#: templates/js/translated/build.js:2170
msgid "Completion Date"
msgstr "Ngày hoàn thành"
-#: build/models.py:267
+#: build/models.py:271
msgid "completed by"
msgstr "hoàn thành bởi"
-#: build/models.py:275 templates/js/translated/build.js:2913
+#: build/models.py:279 templates/js/translated/build.js:2130
msgid "Issued by"
msgstr ""
-#: build/models.py:276
+#: build/models.py:280
msgid "User who issued this build order"
msgstr ""
-#: build/models.py:284 build/templates/build/build_base.html:204
-#: build/templates/build/detail.html:122 order/models.py:258
-#: order/templates/order/order_base.html:214
-#: order/templates/order/return_order_base.html:182
-#: order/templates/order/sales_order_base.html:222 part/models.py:1042
+#: build/models.py:288 build/templates/build/build_base.html:205
+#: build/templates/build/detail.html:122 order/models.py:262
+#: order/templates/order/order_base.html:217
+#: order/templates/order/return_order_base.html:189
+#: order/templates/order/sales_order_base.html:229 part/models.py:1043
#: part/templates/part/part_base.html:392
#: report/templates/report/inventree_build_order_base.html:158
-#: templates/js/translated/build.js:2925
-#: templates/js/translated/purchase_order.js:1723
-#: templates/js/translated/return_order.js:347
-#: templates/js/translated/table_filters.js:461
+#: templates/js/translated/build.js:2142
+#: templates/js/translated/purchase_order.js:1738
+#: templates/js/translated/return_order.js:359
+#: templates/js/translated/table_filters.js:467
msgid "Responsible"
msgstr ""
-#: build/models.py:285
+#: build/models.py:289
msgid "User or group responsible for this build order"
msgstr ""
-#: build/models.py:290 build/templates/build/detail.html:108
+#: build/models.py:294 build/templates/build/detail.html:108
#: company/templates/company/manufacturer_part.html:107
#: company/templates/company/supplier_part.html:195
-#: order/templates/order/order_base.html:171
+#: order/templates/order/order_base.html:167
#: order/templates/order/return_order_base.html:146
#: order/templates/order/sales_order_base.html:181
#: part/templates/part/part_base.html:385 stock/models.py:733
#: stock/templates/stock/item_base.html:201
+#: templates/js/translated/company.js:1050
msgid "External Link"
msgstr ""
-#: build/models.py:295
+#: build/models.py:299
msgid "Build Priority"
msgstr ""
-#: build/models.py:298
+#: build/models.py:302
msgid "Priority of this build order"
msgstr ""
-#: build/models.py:536
+#: build/models.py:309 common/models.py:104 order/admin.py:17
+#: order/models.py:237 templates/InvenTree/settings/settings_staff_js.html:70
+#: templates/js/translated/build.js:2067
+#: templates/js/translated/purchase_order.js:1685
+#: templates/js/translated/return_order.js:318
+#: templates/js/translated/sales_order.js:806
+#: templates/js/translated/table_filters.js:24
+#: templates/project_code_data.html:6
+msgid "Project Code"
+msgstr ""
+
+#: build/models.py:310
+msgid "Project code for this build order"
+msgstr ""
+
+#: build/models.py:545
#, python-brace-format
msgid "Build order {build} has been completed"
msgstr ""
-#: build/models.py:542
+#: build/models.py:551
msgid "A build order has been completed"
msgstr ""
-#: build/models.py:744 build/models.py:811
+#: build/models.py:753 build/models.py:831
msgid "No build output specified"
msgstr ""
-#: build/models.py:747
+#: build/models.py:756
msgid "Build output is already completed"
msgstr ""
-#: build/models.py:750
+#: build/models.py:759
msgid "Build output does not match Build Order"
msgstr ""
-#: build/models.py:815 build/serializers.py:212 build/serializers.py:251
-#: build/serializers.py:811 order/models.py:440 order/serializers.py:379
-#: order/serializers.py:501 part/serializers.py:1087 part/serializers.py:1408
-#: stock/models.py:593 stock/models.py:1387 stock/serializers.py:315
+#: build/models.py:835 build/serializers.py:220 build/serializers.py:259
+#: build/serializers.py:819 order/models.py:453 order/serializers.py:385
+#: order/serializers.py:507 part/serializers.py:1149 part/serializers.py:1470
+#: stock/models.py:593 stock/models.py:1387 stock/serializers.py:381
msgid "Quantity must be greater than zero"
msgstr ""
-#: build/models.py:820 build/serializers.py:217
+#: build/models.py:840 build/serializers.py:225
msgid "Quantity cannot be greater than the output quantity"
msgstr ""
-#: build/models.py:1272
-msgid "Build item must specify a build output, as master part is marked as trackable"
+#: build/models.py:1260
+msgid "Build object"
msgstr ""
-#: build/models.py:1281
-#, python-brace-format
-msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})"
-msgstr ""
-
-#: build/models.py:1291 order/models.py:1601
-msgid "Stock item is over-allocated"
-msgstr ""
-
-#: build/models.py:1297 order/models.py:1604
-msgid "Allocation quantity must be greater than zero"
-msgstr ""
-
-#: build/models.py:1303
-msgid "Quantity must be 1 for serialized stock"
-msgstr ""
-
-#: build/models.py:1360
-msgid "Selected stock item not found in BOM"
-msgstr ""
-
-#: build/models.py:1438 stock/templates/stock/item_base.html:170
-#: templates/InvenTree/search.html:139 templates/js/translated/build.js:2841
-#: templates/navbar.html:38
-msgid "Build"
-msgstr ""
-
-#: build/models.py:1439
-msgid "Build to allocate parts"
-msgstr ""
-
-#: build/models.py:1455 build/serializers.py:791 order/serializers.py:1059
-#: order/serializers.py:1080 stock/serializers.py:413 stock/serializers.py:770
-#: stock/serializers.py:896 stock/templates/stock/item_base.html:10
-#: stock/templates/stock/item_base.html:23
-#: stock/templates/stock/item_base.html:195
-#: templates/js/translated/build.js:955 templates/js/translated/build.js:960
-#: templates/js/translated/build.js:2466 templates/js/translated/build.js:3038
-#: templates/js/translated/sales_order.js:286
-#: templates/js/translated/sales_order.js:1186
-#: templates/js/translated/sales_order.js:1485
-#: templates/js/translated/sales_order.js:1490
-#: templates/js/translated/sales_order.js:1591
-#: templates/js/translated/sales_order.js:1678
-#: templates/js/translated/stock.js:644 templates/js/translated/stock.js:810
-#: templates/js/translated/stock.js:2714
-msgid "Stock Item"
-msgstr ""
-
-#: build/models.py:1456
-msgid "Source stock item"
-msgstr ""
-
-#: build/models.py:1468 build/serializers.py:198 build/serializers.py:236
-#: build/templates/build/build_base.html:103
-#: build/templates/build/detail.html:34 common/models.py:2176
-#: order/models.py:1073 order/models.py:1645 order/serializers.py:1233
+#: build/models.py:1274 build/models.py:1556 build/serializers.py:206
+#: build/serializers.py:244 build/templates/build/build_base.html:103
+#: build/templates/build/detail.html:34 common/models.py:2162
+#: order/models.py:1086 order/models.py:1658 order/serializers.py:1239
#: order/templates/order/order_wizard/match_parts.html:30 part/admin.py:277
-#: part/forms.py:47 part/models.py:2992 part/models.py:3779
+#: part/forms.py:47 part/models.py:3026 part/models.py:3823
#: part/templates/part/part_pricing.html:16
#: part/templates/part/upload_bom.html:53
#: report/templates/report/inventree_bill_of_materials_report.html:138
@@ -1203,315 +1200,367 @@ msgstr ""
#: report/templates/report/inventree_so_report_base.html:29
#: report/templates/report/inventree_test_report_base.html:90
#: report/templates/report/inventree_test_report_base.html:170
-#: stock/admin.py:103 stock/serializers.py:306
+#: stock/admin.py:103 stock/serializers.py:372
#: stock/templates/stock/item_base.html:288
#: stock/templates/stock/item_base.html:296
#: stock/templates/stock/item_base.html:343
#: templates/email/build_order_completed.html:18
-#: templates/js/translated/barcode.js:531 templates/js/translated/bom.js:770
-#: templates/js/translated/bom.js:951 templates/js/translated/build.js:504
-#: templates/js/translated/build.js:716 templates/js/translated/build.js:982
-#: templates/js/translated/build.js:1425 templates/js/translated/build.js:1991
-#: templates/js/translated/build.js:2467
-#: templates/js/translated/company.js:1428
-#: templates/js/translated/model_renderers.js:207
-#: templates/js/translated/order.js:304 templates/js/translated/part.js:935
-#: templates/js/translated/part.js:1784 templates/js/translated/part.js:3263
+#: templates/js/translated/barcode.js:531 templates/js/translated/bom.js:771
+#: templates/js/translated/bom.js:969 templates/js/translated/build.js:510
+#: templates/js/translated/build.js:722 templates/js/translated/build.js:1308
+#: templates/js/translated/build.js:1672 templates/js/translated/build.js:2283
+#: templates/js/translated/company.js:1849
+#: templates/js/translated/model_renderers.js:221
+#: templates/js/translated/order.js:304 templates/js/translated/part.js:934
+#: templates/js/translated/part.js:1783 templates/js/translated/part.js:3248
#: templates/js/translated/pricing.js:381
#: templates/js/translated/pricing.js:474
#: templates/js/translated/pricing.js:522
#: templates/js/translated/pricing.js:616
-#: templates/js/translated/purchase_order.js:749
-#: templates/js/translated/purchase_order.js:1815
-#: templates/js/translated/purchase_order.js:2039
-#: templates/js/translated/sales_order.js:302
-#: templates/js/translated/sales_order.js:1187
-#: templates/js/translated/sales_order.js:1504
-#: templates/js/translated/sales_order.js:1594
-#: templates/js/translated/sales_order.js:1684
-#: templates/js/translated/sales_order.js:1804
-#: templates/js/translated/stock.js:531 templates/js/translated/stock.js:669
-#: templates/js/translated/stock.js:840 templates/js/translated/stock.js:2758
-#: templates/js/translated/stock.js:2843
+#: templates/js/translated/purchase_order.js:760
+#: templates/js/translated/purchase_order.js:1830
+#: templates/js/translated/purchase_order.js:2049
+#: templates/js/translated/sales_order.js:314
+#: templates/js/translated/sales_order.js:1199
+#: templates/js/translated/sales_order.js:1516
+#: templates/js/translated/sales_order.js:1606
+#: templates/js/translated/sales_order.js:1696
+#: templates/js/translated/sales_order.js:1816
+#: templates/js/translated/stock.js:530 templates/js/translated/stock.js:668
+#: templates/js/translated/stock.js:839 templates/js/translated/stock.js:2889
+#: templates/js/translated/stock.js:2970
msgid "Quantity"
msgstr "Số lượng"
-#: build/models.py:1469
+#: build/models.py:1275
+msgid "Required quantity for build order"
+msgstr ""
+
+#: build/models.py:1357
+msgid "Build item must specify a build output, as master part is marked as trackable"
+msgstr ""
+
+#: build/models.py:1366
+#, python-brace-format
+msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})"
+msgstr ""
+
+#: build/models.py:1376 order/models.py:1614
+msgid "Stock item is over-allocated"
+msgstr ""
+
+#: build/models.py:1382 order/models.py:1617
+msgid "Allocation quantity must be greater than zero"
+msgstr ""
+
+#: build/models.py:1388
+msgid "Quantity must be 1 for serialized stock"
+msgstr ""
+
+#: build/models.py:1449
+msgid "Selected stock item does not match BOM line"
+msgstr ""
+
+#: build/models.py:1543 build/serializers.py:799 order/serializers.py:1065
+#: order/serializers.py:1086 stock/serializers.py:479 stock/serializers.py:887
+#: stock/serializers.py:1013 stock/templates/stock/item_base.html:10
+#: stock/templates/stock/item_base.html:23
+#: stock/templates/stock/item_base.html:195
+#: templates/js/translated/build.js:1671
+#: templates/js/translated/sales_order.js:298
+#: templates/js/translated/sales_order.js:1198
+#: templates/js/translated/sales_order.js:1497
+#: templates/js/translated/sales_order.js:1502
+#: templates/js/translated/sales_order.js:1603
+#: templates/js/translated/sales_order.js:1690
+#: templates/js/translated/stock.js:643 templates/js/translated/stock.js:809
+#: templates/js/translated/stock.js:2845
+msgid "Stock Item"
+msgstr ""
+
+#: build/models.py:1544
+msgid "Source stock item"
+msgstr ""
+
+#: build/models.py:1557
msgid "Stock quantity to allocate to build"
msgstr ""
-#: build/models.py:1477
+#: build/models.py:1565
msgid "Install into"
msgstr ""
-#: build/models.py:1478
+#: build/models.py:1566
msgid "Destination stock item"
msgstr ""
-#: build/serializers.py:148 build/serializers.py:820
-#: templates/js/translated/build.js:1413
+#: build/serializers.py:156 build/serializers.py:828
+#: templates/js/translated/build.js:1299
msgid "Build Output"
msgstr ""
-#: build/serializers.py:160
+#: build/serializers.py:168
msgid "Build output does not match the parent build"
msgstr ""
-#: build/serializers.py:164
+#: build/serializers.py:172
msgid "Output part does not match BuildOrder part"
msgstr ""
-#: build/serializers.py:168
+#: build/serializers.py:176
msgid "This build output has already been completed"
msgstr ""
-#: build/serializers.py:179
+#: build/serializers.py:187
msgid "This build output is not fully allocated"
msgstr ""
-#: build/serializers.py:199 build/serializers.py:237
+#: build/serializers.py:207 build/serializers.py:245
msgid "Enter quantity for build output"
msgstr ""
-#: build/serializers.py:258
+#: build/serializers.py:266
msgid "Integer quantity required for trackable parts"
msgstr ""
-#: build/serializers.py:261
+#: build/serializers.py:269
msgid "Integer quantity required, as the bill of materials contains trackable parts"
msgstr ""
-#: build/serializers.py:276 order/serializers.py:514 order/serializers.py:1237
-#: stock/serializers.py:324 templates/js/translated/purchase_order.js:1123
-#: templates/js/translated/stock.js:334 templates/js/translated/stock.js:532
+#: build/serializers.py:284 order/serializers.py:520 order/serializers.py:1243
+#: stock/serializers.py:390 templates/js/translated/purchase_order.js:1138
+#: templates/js/translated/stock.js:333 templates/js/translated/stock.js:531
msgid "Serial Numbers"
msgstr ""
-#: build/serializers.py:277
+#: build/serializers.py:285
msgid "Enter serial numbers for build outputs"
msgstr ""
-#: build/serializers.py:290
+#: build/serializers.py:298
msgid "Auto Allocate Serial Numbers"
msgstr ""
-#: build/serializers.py:291
+#: build/serializers.py:299
msgid "Automatically allocate required items with matching serial numbers"
msgstr ""
-#: build/serializers.py:326 stock/api.py:670
+#: build/serializers.py:334 stock/api.py:707
msgid "The following serial numbers already exist or are invalid"
msgstr ""
-#: build/serializers.py:377 build/serializers.py:439 build/serializers.py:518
+#: build/serializers.py:385 build/serializers.py:447 build/serializers.py:526
msgid "A list of build outputs must be provided"
msgstr ""
-#: build/serializers.py:415 build/serializers.py:488 order/serializers.py:487
-#: order/serializers.py:606 order/serializers.py:1588 part/serializers.py:854
-#: stock/serializers.py:335 stock/serializers.py:470 stock/serializers.py:551
-#: stock/serializers.py:931 stock/serializers.py:1173
+#: build/serializers.py:423 build/serializers.py:496 order/serializers.py:493
+#: order/serializers.py:612 order/serializers.py:1594 part/serializers.py:916
+#: stock/serializers.py:401 stock/serializers.py:537 stock/serializers.py:618
+#: stock/serializers.py:1048 stock/serializers.py:1290
#: stock/templates/stock/item_base.html:390
#: templates/js/translated/barcode.js:530
-#: templates/js/translated/barcode.js:778 templates/js/translated/build.js:967
-#: templates/js/translated/build.js:2006
-#: templates/js/translated/purchase_order.js:1148
-#: templates/js/translated/purchase_order.js:1238
-#: templates/js/translated/sales_order.js:1497
-#: templates/js/translated/sales_order.js:1605
-#: templates/js/translated/sales_order.js:1613
-#: templates/js/translated/sales_order.js:1692
-#: templates/js/translated/stock.js:645 templates/js/translated/stock.js:811
-#: templates/js/translated/stock.js:1023 templates/js/translated/stock.js:1937
-#: templates/js/translated/stock.js:2608
+#: templates/js/translated/barcode.js:778 templates/js/translated/build.js:980
+#: templates/js/translated/build.js:2298
+#: templates/js/translated/purchase_order.js:1163
+#: templates/js/translated/purchase_order.js:1253
+#: templates/js/translated/sales_order.js:1509
+#: templates/js/translated/sales_order.js:1617
+#: templates/js/translated/sales_order.js:1625
+#: templates/js/translated/sales_order.js:1704
+#: templates/js/translated/stock.js:644 templates/js/translated/stock.js:810
+#: templates/js/translated/stock.js:1022 templates/js/translated/stock.js:2094
+#: templates/js/translated/stock.js:2739
msgid "Location"
msgstr ""
-#: build/serializers.py:416
+#: build/serializers.py:424
msgid "Stock location for scrapped outputs"
msgstr ""
-#: build/serializers.py:422
+#: build/serializers.py:430
msgid "Discard Allocations"
msgstr ""
-#: build/serializers.py:423
+#: build/serializers.py:431
msgid "Discard any stock allocations for scrapped outputs"
msgstr ""
-#: build/serializers.py:428
+#: build/serializers.py:436
msgid "Reason for scrapping build output(s)"
msgstr ""
-#: build/serializers.py:489
+#: build/serializers.py:497
msgid "Location for completed build outputs"
msgstr ""
-#: build/serializers.py:495 build/templates/build/build_base.html:151
-#: build/templates/build/detail.html:62 order/models.py:791
-#: order/models.py:1750 order/serializers.py:524 stock/admin.py:106
-#: stock/templates/stock/item_base.html:423
-#: templates/js/translated/barcode.js:252 templates/js/translated/build.js:2897
-#: templates/js/translated/purchase_order.js:1278
-#: templates/js/translated/purchase_order.js:1682
-#: templates/js/translated/return_order.js:319
-#: templates/js/translated/sales_order.js:807
-#: templates/js/translated/stock.js:1912 templates/js/translated/stock.js:2732
-#: templates/js/translated/stock.js:2859
+#: build/serializers.py:503 build/templates/build/build_base.html:152
+#: build/templates/build/detail.html:62 order/models.py:804
+#: order/models.py:1763 order/serializers.py:530 stock/admin.py:106
+#: stock/serializers.py:677 stock/templates/stock/item_base.html:423
+#: templates/js/translated/barcode.js:252 templates/js/translated/build.js:2114
+#: templates/js/translated/purchase_order.js:1293
+#: templates/js/translated/purchase_order.js:1697
+#: templates/js/translated/return_order.js:331
+#: templates/js/translated/sales_order.js:819
+#: templates/js/translated/stock.js:2069 templates/js/translated/stock.js:2863
+#: templates/js/translated/stock.js:2986
msgid "Status"
msgstr "Trạng thái"
-#: build/serializers.py:501
+#: build/serializers.py:509
msgid "Accept Incomplete Allocation"
msgstr ""
-#: build/serializers.py:502
+#: build/serializers.py:510
msgid "Complete outputs if stock has not been fully allocated"
msgstr ""
-#: build/serializers.py:571
+#: build/serializers.py:579
msgid "Remove Allocated Stock"
msgstr ""
-#: build/serializers.py:572
+#: build/serializers.py:580
msgid "Subtract any stock which has already been allocated to this build"
msgstr ""
-#: build/serializers.py:578
+#: build/serializers.py:586
msgid "Remove Incomplete Outputs"
msgstr ""
-#: build/serializers.py:579
+#: build/serializers.py:587
msgid "Delete any build outputs which have not been completed"
msgstr ""
-#: build/serializers.py:606
+#: build/serializers.py:614
msgid "Not permitted"
msgstr ""
-#: build/serializers.py:607
+#: build/serializers.py:615
msgid "Accept as consumed by this build order"
msgstr ""
-#: build/serializers.py:608
+#: build/serializers.py:616
msgid "Deallocate before completing this build order"
msgstr ""
-#: build/serializers.py:631
+#: build/serializers.py:639
msgid "Overallocated Stock"
msgstr ""
-#: build/serializers.py:633
+#: build/serializers.py:641
msgid "How do you want to handle extra stock items assigned to the build order"
msgstr ""
-#: build/serializers.py:643
+#: build/serializers.py:651
msgid "Some stock items have been overallocated"
msgstr ""
-#: build/serializers.py:648
+#: build/serializers.py:656
msgid "Accept Unallocated"
msgstr ""
-#: build/serializers.py:649
+#: build/serializers.py:657
msgid "Accept that stock items have not been fully allocated to this build order"
msgstr ""
-#: build/serializers.py:659 templates/js/translated/build.js:295
+#: build/serializers.py:667 templates/js/translated/build.js:304
msgid "Required stock has not been fully allocated"
msgstr ""
-#: build/serializers.py:664 order/serializers.py:261 order/serializers.py:1127
+#: build/serializers.py:672 order/serializers.py:267 order/serializers.py:1133
msgid "Accept Incomplete"
msgstr ""
-#: build/serializers.py:665
+#: build/serializers.py:673
msgid "Accept that the required number of build outputs have not been completed"
msgstr ""
-#: build/serializers.py:675 templates/js/translated/build.js:299
+#: build/serializers.py:683 templates/js/translated/build.js:308
msgid "Required build quantity has not been completed"
msgstr ""
-#: build/serializers.py:684 templates/js/translated/build.js:283
+#: build/serializers.py:692 templates/js/translated/build.js:292
msgid "Build order has incomplete outputs"
msgstr ""
-#: build/serializers.py:714 build/serializers.py:768 part/models.py:3686
-#: part/models.py:4069
-msgid "BOM Item"
-msgstr ""
-
-#: build/serializers.py:724
-msgid "Build output"
+#: build/serializers.py:722
+msgid "Build Line"
msgstr ""
#: build/serializers.py:732
+msgid "Build output"
+msgstr ""
+
+#: build/serializers.py:740
msgid "Build output must point to the same build"
msgstr ""
-#: build/serializers.py:782
+#: build/serializers.py:776
+msgid "Build Line Item"
+msgstr ""
+
+#: build/serializers.py:790
msgid "bom_item.part must point to the same part as the build order"
msgstr ""
-#: build/serializers.py:797 stock/serializers.py:783
+#: build/serializers.py:805 stock/serializers.py:900
msgid "Item must be in stock"
msgstr ""
-#: build/serializers.py:846 order/serializers.py:1117
+#: build/serializers.py:853 order/serializers.py:1123
#, python-brace-format
msgid "Available quantity ({q}) exceeded"
msgstr ""
-#: build/serializers.py:852
+#: build/serializers.py:859
msgid "Build output must be specified for allocation of tracked parts"
msgstr ""
-#: build/serializers.py:859
+#: build/serializers.py:866
msgid "Build output cannot be specified for allocation of untracked parts"
msgstr ""
-#: build/serializers.py:864
+#: build/serializers.py:871
msgid "This stock item has already been allocated to this build output"
msgstr ""
-#: build/serializers.py:887 order/serializers.py:1401
+#: build/serializers.py:894 order/serializers.py:1407
msgid "Allocation items must be provided"
msgstr ""
-#: build/serializers.py:943
+#: build/serializers.py:947
msgid "Stock location where parts are to be sourced (leave blank to take from any location)"
msgstr ""
-#: build/serializers.py:951
+#: build/serializers.py:955
msgid "Exclude Location"
msgstr ""
-#: build/serializers.py:952
+#: build/serializers.py:956
msgid "Exclude stock items from this selected location"
msgstr ""
-#: build/serializers.py:957
+#: build/serializers.py:961
msgid "Interchangeable Stock"
msgstr ""
-#: build/serializers.py:958
+#: build/serializers.py:962
msgid "Stock items in multiple locations can be used interchangeably"
msgstr ""
-#: build/serializers.py:963
+#: build/serializers.py:967
msgid "Substitute Stock"
msgstr ""
-#: build/serializers.py:964
+#: build/serializers.py:968
msgid "Allow allocation of substitute parts"
msgstr ""
-#: build/serializers.py:969
+#: build/serializers.py:973
msgid "Optional Items"
msgstr ""
-#: build/serializers.py:970
+#: build/serializers.py:974
msgid "Allocate optional BOM items to build order"
msgstr ""
@@ -1540,6 +1589,7 @@ msgstr ""
#: part/templates/part/part_base.html:43
#: stock/templates/stock/item_base.html:41
#: stock/templates/stock/location.html:54
+#: templates/js/translated/filters.js:336
msgid "Barcode actions"
msgstr ""
@@ -1618,69 +1668,67 @@ msgstr ""
msgid "Build Description"
msgstr ""
-#: build/templates/build/build_base.html:117
+#: build/templates/build/build_base.html:118
msgid "No build outputs have been created for this build order"
msgstr ""
-#: build/templates/build/build_base.html:124
+#: build/templates/build/build_base.html:125
msgid "Build Order is ready to mark as completed"
msgstr ""
-#: build/templates/build/build_base.html:129
+#: build/templates/build/build_base.html:130
msgid "Build Order cannot be completed as outstanding outputs remain"
msgstr ""
-#: build/templates/build/build_base.html:134
+#: build/templates/build/build_base.html:135
msgid "Required build quantity has not yet been completed"
msgstr ""
-#: build/templates/build/build_base.html:139
+#: build/templates/build/build_base.html:140
msgid "Stock has not been fully allocated to this Build Order"
msgstr ""
-#: build/templates/build/build_base.html:160
-#: build/templates/build/detail.html:138 order/models.py:240
-#: order/models.py:1099 order/templates/order/order_base.html:190
+#: build/templates/build/build_base.html:161
+#: build/templates/build/detail.html:138 order/models.py:244
+#: order/models.py:1112 order/templates/order/order_base.html:186
#: order/templates/order/return_order_base.html:165
#: order/templates/order/sales_order_base.html:193
#: report/templates/report/inventree_build_order_base.html:125
-#: templates/js/translated/build.js:2945 templates/js/translated/part.js:1802
-#: templates/js/translated/purchase_order.js:1699
-#: templates/js/translated/purchase_order.js:2115
-#: templates/js/translated/return_order.js:335
-#: templates/js/translated/return_order.js:735
-#: templates/js/translated/sales_order.js:823
-#: templates/js/translated/sales_order.js:1847
+#: templates/js/translated/build.js:2162 templates/js/translated/part.js:1801
+#: templates/js/translated/purchase_order.js:1714
+#: templates/js/translated/purchase_order.js:2125
+#: templates/js/translated/return_order.js:347
+#: templates/js/translated/return_order.js:747
+#: templates/js/translated/sales_order.js:835
+#: templates/js/translated/sales_order.js:1859
msgid "Target Date"
msgstr ""
-#: build/templates/build/build_base.html:165
+#: build/templates/build/build_base.html:166
#, python-format
msgid "This build was due on %(target)s"
msgstr ""
-#: build/templates/build/build_base.html:165
-#: build/templates/build/build_base.html:222
-#: order/templates/order/order_base.html:126
+#: build/templates/build/build_base.html:166
+#: build/templates/build/build_base.html:223
+#: order/templates/order/order_base.html:122
#: order/templates/order/return_order_base.html:118
#: order/templates/order/sales_order_base.html:123
-#: templates/js/translated/table_filters.js:68
-#: templates/js/translated/table_filters.js:454
-#: templates/js/translated/table_filters.js:539
-#: templates/js/translated/table_filters.js:580
+#: templates/js/translated/table_filters.js:74
+#: templates/js/translated/table_filters.js:460
+#: templates/js/translated/table_filters.js:561
+#: templates/js/translated/table_filters.js:602
msgid "Overdue"
msgstr ""
-#: build/templates/build/build_base.html:177
-#: build/templates/build/detail.html:67 build/templates/build/detail.html:149
-#: order/templates/order/sales_order_base.html:203
-#: templates/js/translated/table_filters.js:602
-msgid "Completed"
-msgstr "Đã hoàn thành"
+#: build/templates/build/build_base.html:178
+#: build/templates/build/detail.html:67 build/templates/build/sidebar.html:13
+msgid "Completed Outputs"
+msgstr ""
-#: build/templates/build/build_base.html:190
-#: build/templates/build/detail.html:101 order/api.py:1454 order/models.py:1304
-#: order/models.py:1403 order/models.py:1551
+#: build/templates/build/build_base.html:191
+#: build/templates/build/detail.html:101 order/api.py:1454 order/models.py:1317
+#: order/models.py:1416 order/models.py:1564
#: order/templates/order/sales_order_base.html:9
#: order/templates/order/sales_order_base.html:28
#: report/templates/report/inventree_build_order_base.html:135
@@ -1688,32 +1736,32 @@ msgstr "Đã hoàn thành"
#: stock/templates/stock/item_base.html:370
#: templates/email/overdue_sales_order.html:15
#: templates/js/translated/pricing.js:915
-#: templates/js/translated/sales_order.js:757
-#: templates/js/translated/sales_order.js:980
-#: templates/js/translated/stock.js:2661
+#: templates/js/translated/sales_order.js:769
+#: templates/js/translated/sales_order.js:992
+#: templates/js/translated/stock.js:2792
msgid "Sales Order"
msgstr ""
-#: build/templates/build/build_base.html:197
+#: build/templates/build/build_base.html:198
#: build/templates/build/detail.html:115
#: report/templates/report/inventree_build_order_base.html:152
msgid "Issued By"
msgstr ""
-#: build/templates/build/build_base.html:211
-#: build/templates/build/detail.html:94 templates/js/translated/build.js:2862
+#: build/templates/build/build_base.html:212
+#: build/templates/build/detail.html:94 templates/js/translated/build.js:2079
msgid "Priority"
msgstr ""
-#: build/templates/build/build_base.html:273
+#: build/templates/build/build_base.html:274
msgid "Delete Build Order"
msgstr ""
-#: build/templates/build/build_base.html:283
+#: build/templates/build/build_base.html:284
msgid "Build Order QR Code"
msgstr ""
-#: build/templates/build/build_base.html:295
+#: build/templates/build/build_base.html:296
msgid "Link Barcode to Build Order"
msgstr ""
@@ -1729,8 +1777,8 @@ msgstr ""
msgid "Stock can be taken from any available location."
msgstr ""
-#: build/templates/build/detail.html:49 order/models.py:1222
-#: templates/js/translated/purchase_order.js:2157
+#: build/templates/build/detail.html:49 order/models.py:1235
+#: templates/js/translated/purchase_order.js:2167
msgid "Destination"
msgstr ""
@@ -1744,21 +1792,21 @@ msgstr ""
#: build/templates/build/detail.html:80 stock/admin.py:105
#: stock/templates/stock/item_base.html:163
-#: templates/js/translated/build.js:1432
-#: templates/js/translated/model_renderers.js:212
-#: templates/js/translated/purchase_order.js:1244
-#: templates/js/translated/stock.js:1093 templates/js/translated/stock.js:1926
-#: templates/js/translated/stock.js:2866
-#: templates/js/translated/table_filters.js:259
-#: templates/js/translated/table_filters.js:350
+#: templates/js/translated/build.js:1319
+#: templates/js/translated/model_renderers.js:226
+#: templates/js/translated/purchase_order.js:1259
+#: templates/js/translated/stock.js:1092 templates/js/translated/stock.js:2083
+#: templates/js/translated/stock.js:2993
+#: templates/js/translated/table_filters.js:265
+#: templates/js/translated/table_filters.js:356
msgid "Batch"
msgstr ""
#: build/templates/build/detail.html:133
-#: order/templates/order/order_base.html:177
+#: order/templates/order/order_base.html:173
#: order/templates/order/return_order_base.html:152
#: order/templates/order/sales_order_base.html:187
-#: templates/js/translated/build.js:2905
+#: templates/js/translated/build.js:2122
msgid "Created"
msgstr ""
@@ -1766,147 +1814,106 @@ msgstr ""
msgid "No target date set"
msgstr ""
+#: build/templates/build/detail.html:149
+#: order/templates/order/sales_order_base.html:203
+#: templates/js/translated/table_filters.js:624
+msgid "Completed"
+msgstr "Đã hoàn thành"
+
#: build/templates/build/detail.html:153
msgid "Build not complete"
msgstr ""
-#: build/templates/build/detail.html:164 build/templates/build/sidebar.html:19
+#: build/templates/build/detail.html:164 build/templates/build/sidebar.html:17
msgid "Child Build Orders"
msgstr ""
-#: build/templates/build/detail.html:179
+#: build/templates/build/detail.html:177
msgid "Allocate Stock to Build"
msgstr ""
-#: build/templates/build/detail.html:183 templates/js/translated/build.js:2276
-msgid "Unallocate stock"
+#: build/templates/build/detail.html:181
+msgid "Deallocate stock"
+msgstr ""
+
+#: build/templates/build/detail.html:182
+msgid "Deallocate Stock"
msgstr ""
#: build/templates/build/detail.html:184
-msgid "Unallocate Stock"
-msgstr ""
-
-#: build/templates/build/detail.html:186
msgid "Automatically allocate stock to build"
msgstr ""
-#: build/templates/build/detail.html:187
+#: build/templates/build/detail.html:185
msgid "Auto Allocate"
msgstr ""
-#: build/templates/build/detail.html:189
+#: build/templates/build/detail.html:187
msgid "Manually allocate stock to build"
msgstr ""
-#: build/templates/build/detail.html:190 build/templates/build/sidebar.html:8
+#: build/templates/build/detail.html:188 build/templates/build/sidebar.html:8
msgid "Allocate Stock"
msgstr ""
-#: build/templates/build/detail.html:193
+#: build/templates/build/detail.html:191
msgid "Order required parts"
msgstr ""
-#: build/templates/build/detail.html:194
-#: company/templates/company/detail.html:38
-#: company/templates/company/detail.html:86
-#: part/templates/part/category.html:184
-#: templates/js/translated/purchase_order.js:789
+#: build/templates/build/detail.html:192
+#: templates/js/translated/purchase_order.js:800
msgid "Order Parts"
msgstr ""
-#: build/templates/build/detail.html:206
-msgid "Untracked stock has been fully allocated for this Build Order"
-msgstr ""
-
#: build/templates/build/detail.html:210
-msgid "Untracked stock has not been fully allocated for this Build Order"
-msgstr ""
-
-#: build/templates/build/detail.html:217
-msgid "Allocate selected items"
-msgstr ""
-
-#: build/templates/build/detail.html:227
-msgid "This Build Order does not have any associated untracked BOM items"
-msgstr ""
-
-#: build/templates/build/detail.html:236
msgid "Incomplete Build Outputs"
msgstr ""
-#: build/templates/build/detail.html:240
+#: build/templates/build/detail.html:214
msgid "Create new build output"
msgstr ""
-#: build/templates/build/detail.html:241
+#: build/templates/build/detail.html:215
msgid "New Build Output"
msgstr ""
-#: build/templates/build/detail.html:255
-msgid "Output Actions"
-msgstr ""
-
-#: build/templates/build/detail.html:260
-msgid "Complete selected build outputs"
-msgstr ""
-
-#: build/templates/build/detail.html:261
-msgid "Complete outputs"
-msgstr ""
-
-#: build/templates/build/detail.html:265
-msgid "Scrap selected build outputs"
-msgstr ""
-
-#: build/templates/build/detail.html:266
-msgid "Scrap outputs"
-msgstr ""
-
-#: build/templates/build/detail.html:270
-msgid "Delete selected build outputs"
-msgstr ""
-
-#: build/templates/build/detail.html:271
-msgid "Delete outputs"
-msgstr ""
-
-#: build/templates/build/detail.html:288 build/templates/build/sidebar.html:11
+#: build/templates/build/detail.html:232 build/templates/build/sidebar.html:15
msgid "Consumed Stock"
msgstr ""
-#: build/templates/build/detail.html:300
+#: build/templates/build/detail.html:244
msgid "Completed Build Outputs"
msgstr ""
-#: build/templates/build/detail.html:312 build/templates/build/sidebar.html:21
-#: company/templates/company/detail.html:261
-#: company/templates/company/manufacturer_part.html:151
+#: build/templates/build/detail.html:256 build/templates/build/sidebar.html:19
+#: company/templates/company/detail.html:229
+#: company/templates/company/manufacturer_part.html:141
#: company/templates/company/manufacturer_part_sidebar.html:9
-#: company/templates/company/sidebar.html:37
+#: company/templates/company/sidebar.html:39
#: order/templates/order/po_sidebar.html:9
-#: order/templates/order/purchase_order_detail.html:102
-#: order/templates/order/return_order_detail.html:74
+#: order/templates/order/purchase_order_detail.html:84
+#: order/templates/order/return_order_detail.html:70
#: order/templates/order/return_order_sidebar.html:7
-#: order/templates/order/sales_order_detail.html:134
-#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:234
-#: part/templates/part/part_sidebar.html:61 stock/templates/stock/item.html:117
+#: order/templates/order/sales_order_detail.html:124
+#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:217
+#: part/templates/part/part_sidebar.html:61 stock/templates/stock/item.html:109
#: stock/templates/stock/stock_sidebar.html:23
msgid "Attachments"
msgstr ""
-#: build/templates/build/detail.html:327
+#: build/templates/build/detail.html:271
msgid "Build Notes"
msgstr ""
-#: build/templates/build/detail.html:502
+#: build/templates/build/detail.html:425
msgid "Allocation Complete"
msgstr ""
-#: build/templates/build/detail.html:503
-msgid "All untracked stock items have been allocated"
+#: build/templates/build/detail.html:426
+msgid "All lines have been fully allocated"
msgstr ""
-#: build/templates/build/index.html:18 part/templates/part/detail.html:340
+#: build/templates/build/index.html:18 part/templates/part/detail.html:319
msgid "New Build Order"
msgstr ""
@@ -1914,14 +1921,10 @@ msgstr ""
msgid "Build Order Details"
msgstr ""
-#: build/templates/build/sidebar.html:14
+#: build/templates/build/sidebar.html:10
msgid "Incomplete Outputs"
msgstr ""
-#: build/templates/build/sidebar.html:17
-msgid "Completed Outputs"
-msgstr ""
-
#: common/files.py:63
#, python-brace-format
msgid "Unsupported file format: {fmt}"
@@ -1968,16 +1971,6 @@ msgstr ""
msgid "Timestamp of last update"
msgstr ""
-#: common/models.py:104 order/admin.py:17 order/models.py:234
-#: templates/InvenTree/settings/settings_staff_js.html:70
-#: templates/js/translated/purchase_order.js:1670
-#: templates/js/translated/return_order.js:306
-#: templates/js/translated/sales_order.js:794
-#: templates/js/translated/table_filters.js:24
-#: templates/project_code_data.html:6
-msgid "Project Code"
-msgstr ""
-
#: common/models.py:105
msgid "Unique project code"
msgstr ""
@@ -2261,9 +2254,9 @@ msgstr ""
msgid "Copy category parameter templates when creating a part"
msgstr ""
-#: common/models.py:1162 part/admin.py:55 part/models.py:3560
-#: report/models.py:166 templates/js/translated/table_filters.js:109
-#: templates/js/translated/table_filters.js:680
+#: common/models.py:1162 part/admin.py:55 part/models.py:3594
+#: report/models.py:166 templates/js/translated/table_filters.js:115
+#: templates/js/translated/table_filters.js:702
msgid "Template"
msgstr ""
@@ -2271,10 +2264,10 @@ msgstr ""
msgid "Parts are templates by default"
msgstr ""
-#: common/models.py:1169 part/admin.py:51 part/admin.py:283 part/models.py:996
-#: templates/js/translated/bom.js:1598
-#: templates/js/translated/table_filters.js:276
-#: templates/js/translated/table_filters.js:634
+#: common/models.py:1169 part/admin.py:51 part/admin.py:283 part/models.py:997
+#: templates/js/translated/bom.js:1618
+#: templates/js/translated/table_filters.js:282
+#: templates/js/translated/table_filters.js:656
msgid "Assembly"
msgstr ""
@@ -2282,8 +2275,8 @@ msgstr ""
msgid "Parts can be assembled from other components by default"
msgstr ""
-#: common/models.py:1176 part/admin.py:52 part/models.py:1002
-#: templates/js/translated/table_filters.js:642
+#: common/models.py:1176 part/admin.py:52 part/models.py:1003
+#: templates/js/translated/table_filters.js:664
msgid "Component"
msgstr ""
@@ -2291,7 +2284,7 @@ msgstr ""
msgid "Parts can be used as sub-components by default"
msgstr ""
-#: common/models.py:1183 part/admin.py:53 part/models.py:1013
+#: common/models.py:1183 part/admin.py:53 part/models.py:1014
msgid "Purchaseable"
msgstr ""
@@ -2299,8 +2292,8 @@ msgstr ""
msgid "Parts are purchaseable by default"
msgstr ""
-#: common/models.py:1190 part/admin.py:54 part/models.py:1018
-#: templates/js/translated/table_filters.js:668
+#: common/models.py:1190 part/admin.py:54 part/models.py:1019
+#: templates/js/translated/table_filters.js:690
msgid "Salable"
msgstr ""
@@ -2308,10 +2301,10 @@ msgstr ""
msgid "Parts are salable by default"
msgstr ""
-#: common/models.py:1197 part/admin.py:56 part/models.py:1008
-#: templates/js/translated/table_filters.js:117
-#: templates/js/translated/table_filters.js:193
-#: templates/js/translated/table_filters.js:684
+#: common/models.py:1197 part/admin.py:56 part/models.py:1009
+#: templates/js/translated/table_filters.js:123
+#: templates/js/translated/table_filters.js:199
+#: templates/js/translated/table_filters.js:706
msgid "Trackable"
msgstr ""
@@ -2319,10 +2312,10 @@ msgstr ""
msgid "Parts are trackable by default"
msgstr ""
-#: common/models.py:1204 part/admin.py:57 part/models.py:1028
+#: common/models.py:1204 part/admin.py:57 part/models.py:1029
#: part/templates/part/part_base.html:156
-#: templates/js/translated/table_filters.js:113
-#: templates/js/translated/table_filters.js:688
+#: templates/js/translated/table_filters.js:119
+#: templates/js/translated/table_filters.js:710
msgid "Virtual"
msgstr ""
@@ -2354,7 +2347,7 @@ msgstr ""
msgid "Allow creation of initial stock when adding a new part"
msgstr ""
-#: common/models.py:1232 templates/js/translated/part.js:108
+#: common/models.py:1232 templates/js/translated/part.js:107
msgid "Initial Supplier Data"
msgstr ""
@@ -2603,179 +2596,179 @@ msgid "Stock location default icon (empty means no icon)"
msgstr ""
#: common/models.py:1471
-msgid "Build Order Reference Pattern"
+msgid "Show Installed Stock Items"
msgstr ""
#: common/models.py:1472
-msgid "Required pattern for generating Build Order reference field"
+msgid "Display installed stock items in stock tables"
msgstr ""
#: common/models.py:1478
-msgid "Enable Return Orders"
+msgid "Build Order Reference Pattern"
msgstr ""
#: common/models.py:1479
-msgid "Enable return order functionality in the user interface"
+msgid "Required pattern for generating Build Order reference field"
msgstr ""
#: common/models.py:1485
-msgid "Return Order Reference Pattern"
+msgid "Enable Return Orders"
msgstr ""
#: common/models.py:1486
-msgid "Required pattern for generating Return Order reference field"
+msgid "Enable return order functionality in the user interface"
msgstr ""
#: common/models.py:1492
-msgid "Edit Completed Return Orders"
+msgid "Return Order Reference Pattern"
msgstr ""
#: common/models.py:1493
-msgid "Allow editing of return orders after they have been completed"
+msgid "Required pattern for generating Return Order reference field"
msgstr ""
#: common/models.py:1499
-msgid "Sales Order Reference Pattern"
+msgid "Edit Completed Return Orders"
msgstr ""
#: common/models.py:1500
-msgid "Required pattern for generating Sales Order reference field"
+msgid "Allow editing of return orders after they have been completed"
msgstr ""
#: common/models.py:1506
-msgid "Sales Order Default Shipment"
+msgid "Sales Order Reference Pattern"
msgstr ""
#: common/models.py:1507
-msgid "Enable creation of default shipment with sales orders"
+msgid "Required pattern for generating Sales Order reference field"
msgstr ""
#: common/models.py:1513
-msgid "Edit Completed Sales Orders"
+msgid "Sales Order Default Shipment"
msgstr ""
#: common/models.py:1514
-msgid "Allow editing of sales orders after they have been shipped or completed"
+msgid "Enable creation of default shipment with sales orders"
msgstr ""
#: common/models.py:1520
-msgid "Purchase Order Reference Pattern"
+msgid "Edit Completed Sales Orders"
msgstr ""
#: common/models.py:1521
-msgid "Required pattern for generating Purchase Order reference field"
+msgid "Allow editing of sales orders after they have been shipped or completed"
msgstr ""
#: common/models.py:1527
-msgid "Edit Completed Purchase Orders"
+msgid "Purchase Order Reference Pattern"
msgstr ""
#: common/models.py:1528
-msgid "Allow editing of purchase orders after they have been shipped or completed"
+msgid "Required pattern for generating Purchase Order reference field"
+msgstr ""
+
+#: common/models.py:1534
+msgid "Edit Completed Purchase Orders"
msgstr ""
#: common/models.py:1535
-msgid "Enable password forgot"
-msgstr ""
-
-#: common/models.py:1536
-msgid "Enable password forgot function on the login pages"
+msgid "Allow editing of purchase orders after they have been shipped or completed"
msgstr ""
#: common/models.py:1542
-msgid "Enable registration"
+msgid "Enable password forgot"
msgstr ""
#: common/models.py:1543
-msgid "Enable self-registration for users on the login pages"
+msgid "Enable password forgot function on the login pages"
msgstr ""
#: common/models.py:1549
-msgid "Enable SSO"
+msgid "Enable registration"
msgstr ""
#: common/models.py:1550
-msgid "Enable SSO on the login pages"
+msgid "Enable self-registration for users on the login pages"
msgstr ""
#: common/models.py:1556
-msgid "Enable SSO registration"
+msgid "Enable SSO"
msgstr ""
#: common/models.py:1557
-msgid "Enable self-registration via SSO for users on the login pages"
+msgid "Enable SSO on the login pages"
msgstr ""
#: common/models.py:1563
-msgid "Email required"
+msgid "Enable SSO registration"
msgstr ""
#: common/models.py:1564
-msgid "Require user to supply mail on signup"
+msgid "Enable self-registration via SSO for users on the login pages"
msgstr ""
#: common/models.py:1570
-msgid "Auto-fill SSO users"
+msgid "Email required"
msgstr ""
#: common/models.py:1571
-msgid "Automatically fill out user-details from SSO account-data"
+msgid "Require user to supply mail on signup"
msgstr ""
#: common/models.py:1577
-msgid "Mail twice"
+msgid "Auto-fill SSO users"
msgstr ""
#: common/models.py:1578
-msgid "On signup ask users twice for their mail"
+msgid "Automatically fill out user-details from SSO account-data"
msgstr ""
#: common/models.py:1584
-msgid "Password twice"
+msgid "Mail twice"
msgstr ""
#: common/models.py:1585
-msgid "On signup ask users twice for their password"
+msgid "On signup ask users twice for their mail"
msgstr ""
#: common/models.py:1591
-msgid "Allowed domains"
+msgid "Password twice"
msgstr ""
#: common/models.py:1592
-msgid "Restrict signup to certain domains (comma-separated, starting with @)"
+msgid "On signup ask users twice for their password"
msgstr ""
#: common/models.py:1598
-msgid "Group on signup"
+msgid "Allowed domains"
msgstr ""
#: common/models.py:1599
-msgid "Group to which new users are assigned on registration"
+msgid "Restrict signup to certain domains (comma-separated, starting with @)"
msgstr ""
#: common/models.py:1605
-msgid "Enforce MFA"
+msgid "Group on signup"
msgstr ""
#: common/models.py:1606
-msgid "Users must use multifactor security."
+msgid "Group to which new users are assigned on registration"
msgstr ""
#: common/models.py:1612
-msgid "Check plugins on startup"
+msgid "Enforce MFA"
msgstr ""
#: common/models.py:1613
-msgid "Check that all plugins are installed on startup - enable in container environments"
+msgid "Users must use multifactor security."
+msgstr ""
+
+#: common/models.py:1619
+msgid "Check plugins on startup"
msgstr ""
#: common/models.py:1620
-msgid "Check plugin signatures"
-msgstr ""
-
-#: common/models.py:1621
-msgid "Check and show signatures for plugins"
+msgid "Check that all plugins are installed on startup - enable in container environments"
msgstr ""
#: common/models.py:1628
@@ -2850,7 +2843,7 @@ msgstr ""
msgid "Stocktake reports will be deleted after specified number of days"
msgstr ""
-#: common/models.py:1710 common/models.py:2147
+#: common/models.py:1710 common/models.py:2133
msgid "Settings key (must be unique - case insensitive"
msgstr ""
@@ -2891,528 +2884,513 @@ msgid "Show latest parts on the homepage"
msgstr "Hiển thị nguyên liệu mới nhất trên trang chủ"
#: common/models.py:1779
-msgid "Recent Part Count"
-msgstr ""
-
-#: common/models.py:1780
-msgid "Number of recent parts to display on index page"
-msgstr ""
-
-#: common/models.py:1786
msgid "Show unvalidated BOMs"
msgstr ""
-#: common/models.py:1787
+#: common/models.py:1780
msgid "Show BOMs that await validation on the homepage"
msgstr ""
-#: common/models.py:1793
+#: common/models.py:1786
msgid "Show recent stock changes"
msgstr ""
-#: common/models.py:1794
+#: common/models.py:1787
msgid "Show recently changed stock items on the homepage"
msgstr ""
-#: common/models.py:1800
-msgid "Recent Stock Count"
-msgstr ""
-
-#: common/models.py:1801
-msgid "Number of recent stock items to display on index page"
-msgstr ""
-
-#: common/models.py:1807
+#: common/models.py:1793
msgid "Show low stock"
msgstr ""
-#: common/models.py:1808
+#: common/models.py:1794
msgid "Show low stock items on the homepage"
msgstr ""
-#: common/models.py:1814
+#: common/models.py:1800
msgid "Show depleted stock"
msgstr ""
-#: common/models.py:1815
+#: common/models.py:1801
msgid "Show depleted stock items on the homepage"
msgstr ""
-#: common/models.py:1821
+#: common/models.py:1807
msgid "Show needed stock"
msgstr ""
-#: common/models.py:1822
+#: common/models.py:1808
msgid "Show stock items needed for builds on the homepage"
msgstr ""
-#: common/models.py:1828
+#: common/models.py:1814
msgid "Show expired stock"
msgstr ""
-#: common/models.py:1829
+#: common/models.py:1815
msgid "Show expired stock items on the homepage"
msgstr ""
-#: common/models.py:1835
+#: common/models.py:1821
msgid "Show stale stock"
msgstr ""
-#: common/models.py:1836
+#: common/models.py:1822
msgid "Show stale stock items on the homepage"
msgstr ""
-#: common/models.py:1842
+#: common/models.py:1828
msgid "Show pending builds"
msgstr ""
-#: common/models.py:1843
+#: common/models.py:1829
msgid "Show pending builds on the homepage"
msgstr ""
-#: common/models.py:1849
+#: common/models.py:1835
msgid "Show overdue builds"
msgstr ""
-#: common/models.py:1850
+#: common/models.py:1836
msgid "Show overdue builds on the homepage"
msgstr ""
-#: common/models.py:1856
+#: common/models.py:1842
msgid "Show outstanding POs"
msgstr ""
-#: common/models.py:1857
+#: common/models.py:1843
msgid "Show outstanding POs on the homepage"
msgstr ""
-#: common/models.py:1863
+#: common/models.py:1849
msgid "Show overdue POs"
msgstr ""
-#: common/models.py:1864
+#: common/models.py:1850
msgid "Show overdue POs on the homepage"
msgstr ""
-#: common/models.py:1870
+#: common/models.py:1856
msgid "Show outstanding SOs"
msgstr ""
-#: common/models.py:1871
+#: common/models.py:1857
msgid "Show outstanding SOs on the homepage"
msgstr ""
-#: common/models.py:1877
+#: common/models.py:1863
msgid "Show overdue SOs"
msgstr ""
-#: common/models.py:1878
+#: common/models.py:1864
msgid "Show overdue SOs on the homepage"
msgstr ""
-#: common/models.py:1884
+#: common/models.py:1870
msgid "Show pending SO shipments"
msgstr ""
-#: common/models.py:1885
+#: common/models.py:1871
msgid "Show pending SO shipments on the homepage"
msgstr ""
-#: common/models.py:1891
+#: common/models.py:1877
msgid "Show News"
msgstr ""
-#: common/models.py:1892
+#: common/models.py:1878
msgid "Show news on the homepage"
msgstr ""
-#: common/models.py:1898
+#: common/models.py:1884
msgid "Inline label display"
msgstr ""
-#: common/models.py:1899
+#: common/models.py:1885
msgid "Display PDF labels in the browser, instead of downloading as a file"
msgstr ""
-#: common/models.py:1905
+#: common/models.py:1891
msgid "Default label printer"
msgstr ""
-#: common/models.py:1906
+#: common/models.py:1892
msgid "Configure which label printer should be selected by default"
msgstr ""
-#: common/models.py:1912
+#: common/models.py:1898
msgid "Inline report display"
msgstr ""
-#: common/models.py:1913
+#: common/models.py:1899
msgid "Display PDF reports in the browser, instead of downloading as a file"
msgstr ""
-#: common/models.py:1919
+#: common/models.py:1905
msgid "Search Parts"
msgstr ""
-#: common/models.py:1920
+#: common/models.py:1906
msgid "Display parts in search preview window"
msgstr ""
-#: common/models.py:1926
+#: common/models.py:1912
msgid "Search Supplier Parts"
msgstr ""
-#: common/models.py:1927
+#: common/models.py:1913
msgid "Display supplier parts in search preview window"
msgstr ""
-#: common/models.py:1933
+#: common/models.py:1919
msgid "Search Manufacturer Parts"
msgstr ""
-#: common/models.py:1934
+#: common/models.py:1920
msgid "Display manufacturer parts in search preview window"
msgstr ""
-#: common/models.py:1940
+#: common/models.py:1926
msgid "Hide Inactive Parts"
msgstr ""
-#: common/models.py:1941
+#: common/models.py:1927
msgid "Excluded inactive parts from search preview window"
msgstr ""
-#: common/models.py:1947
+#: common/models.py:1933
msgid "Search Categories"
msgstr ""
-#: common/models.py:1948
+#: common/models.py:1934
msgid "Display part categories in search preview window"
msgstr ""
-#: common/models.py:1954
+#: common/models.py:1940
msgid "Search Stock"
msgstr ""
-#: common/models.py:1955
+#: common/models.py:1941
msgid "Display stock items in search preview window"
msgstr ""
-#: common/models.py:1961
+#: common/models.py:1947
msgid "Hide Unavailable Stock Items"
msgstr ""
-#: common/models.py:1962
+#: common/models.py:1948
msgid "Exclude stock items which are not available from the search preview window"
msgstr ""
-#: common/models.py:1968
+#: common/models.py:1954
msgid "Search Locations"
msgstr ""
-#: common/models.py:1969
+#: common/models.py:1955
msgid "Display stock locations in search preview window"
msgstr ""
-#: common/models.py:1975
+#: common/models.py:1961
msgid "Search Companies"
msgstr ""
-#: common/models.py:1976
+#: common/models.py:1962
msgid "Display companies in search preview window"
msgstr ""
-#: common/models.py:1982
+#: common/models.py:1968
msgid "Search Build Orders"
msgstr ""
-#: common/models.py:1983
+#: common/models.py:1969
msgid "Display build orders in search preview window"
msgstr ""
-#: common/models.py:1989
+#: common/models.py:1975
msgid "Search Purchase Orders"
msgstr ""
-#: common/models.py:1990
+#: common/models.py:1976
msgid "Display purchase orders in search preview window"
msgstr ""
-#: common/models.py:1996
+#: common/models.py:1982
msgid "Exclude Inactive Purchase Orders"
msgstr ""
-#: common/models.py:1997
+#: common/models.py:1983
msgid "Exclude inactive purchase orders from search preview window"
msgstr ""
-#: common/models.py:2003
+#: common/models.py:1989
msgid "Search Sales Orders"
msgstr ""
-#: common/models.py:2004
+#: common/models.py:1990
msgid "Display sales orders in search preview window"
msgstr ""
-#: common/models.py:2010
+#: common/models.py:1996
msgid "Exclude Inactive Sales Orders"
msgstr ""
-#: common/models.py:2011
+#: common/models.py:1997
msgid "Exclude inactive sales orders from search preview window"
msgstr ""
-#: common/models.py:2017
+#: common/models.py:2003
msgid "Search Return Orders"
msgstr ""
-#: common/models.py:2018
+#: common/models.py:2004
msgid "Display return orders in search preview window"
msgstr ""
-#: common/models.py:2024
+#: common/models.py:2010
msgid "Exclude Inactive Return Orders"
msgstr ""
-#: common/models.py:2025
+#: common/models.py:2011
msgid "Exclude inactive return orders from search preview window"
msgstr ""
-#: common/models.py:2031
+#: common/models.py:2017
msgid "Search Preview Results"
msgstr ""
-#: common/models.py:2032
+#: common/models.py:2018
msgid "Number of results to show in each section of the search preview window"
msgstr ""
-#: common/models.py:2038
+#: common/models.py:2024
msgid "Regex Search"
msgstr ""
-#: common/models.py:2039
+#: common/models.py:2025
msgid "Enable regular expressions in search queries"
msgstr ""
-#: common/models.py:2045
+#: common/models.py:2031
msgid "Whole Word Search"
msgstr ""
-#: common/models.py:2046
+#: common/models.py:2032
msgid "Search queries return results for whole word matches"
msgstr ""
-#: common/models.py:2052
+#: common/models.py:2038
msgid "Show Quantity in Forms"
msgstr ""
-#: common/models.py:2053
+#: common/models.py:2039
msgid "Display available part quantity in some forms"
msgstr ""
-#: common/models.py:2059
+#: common/models.py:2045
msgid "Escape Key Closes Forms"
msgstr ""
-#: common/models.py:2060
+#: common/models.py:2046
msgid "Use the escape key to close modal forms"
msgstr ""
-#: common/models.py:2066
+#: common/models.py:2052
msgid "Fixed Navbar"
msgstr ""
-#: common/models.py:2067
+#: common/models.py:2053
msgid "The navbar position is fixed to the top of the screen"
msgstr ""
-#: common/models.py:2073
+#: common/models.py:2059
msgid "Date Format"
msgstr ""
-#: common/models.py:2074
+#: common/models.py:2060
msgid "Preferred format for displaying dates"
msgstr ""
-#: common/models.py:2088 part/templates/part/detail.html:41
+#: common/models.py:2074 part/templates/part/detail.html:41
msgid "Part Scheduling"
msgstr ""
-#: common/models.py:2089
+#: common/models.py:2075
msgid "Display part scheduling information"
msgstr ""
-#: common/models.py:2095 part/templates/part/detail.html:62
+#: common/models.py:2081 part/templates/part/detail.html:62
msgid "Part Stocktake"
msgstr ""
-#: common/models.py:2096
+#: common/models.py:2082
msgid "Display part stocktake information (if stocktake functionality is enabled)"
msgstr ""
-#: common/models.py:2102
+#: common/models.py:2088
msgid "Table String Length"
msgstr ""
-#: common/models.py:2103
+#: common/models.py:2089
msgid "Maximimum length limit for strings displayed in table views"
msgstr ""
-#: common/models.py:2112
+#: common/models.py:2098
msgid "Default part label template"
msgstr ""
-#: common/models.py:2113
+#: common/models.py:2099
msgid "The part label template to be automatically selected"
msgstr ""
-#: common/models.py:2121
+#: common/models.py:2107
msgid "Default stock item template"
msgstr ""
-#: common/models.py:2122
+#: common/models.py:2108
msgid "The stock item label template to be automatically selected"
msgstr ""
-#: common/models.py:2130
+#: common/models.py:2116
msgid "Default stock location label template"
msgstr ""
-#: common/models.py:2131
+#: common/models.py:2117
msgid "The stock location label template to be automatically selected"
msgstr ""
-#: common/models.py:2177
+#: common/models.py:2163
msgid "Price break quantity"
msgstr ""
-#: common/models.py:2184 company/serializers.py:434 order/admin.py:43
-#: order/models.py:1132 order/models.py:1939
-#: templates/js/translated/company.js:1433 templates/js/translated/part.js:1856
+#: common/models.py:2170 company/serializers.py:491 order/admin.py:43
+#: order/models.py:1145 order/models.py:1952
+#: templates/js/translated/company.js:1854 templates/js/translated/part.js:1855
#: templates/js/translated/pricing.js:621
-#: templates/js/translated/return_order.js:725
+#: templates/js/translated/return_order.js:737
msgid "Price"
msgstr ""
-#: common/models.py:2185
+#: common/models.py:2171
msgid "Unit price at specified quantity"
msgstr ""
-#: common/models.py:2345 common/models.py:2523
+#: common/models.py:2331 common/models.py:2509
msgid "Endpoint"
msgstr ""
-#: common/models.py:2346
+#: common/models.py:2332
msgid "Endpoint at which this webhook is received"
msgstr ""
-#: common/models.py:2355
+#: common/models.py:2341
msgid "Name for this webhook"
msgstr ""
-#: common/models.py:2360 part/admin.py:50 part/models.py:1023
-#: plugin/models.py:47 templates/js/translated/table_filters.js:105
-#: templates/js/translated/table_filters.js:189
-#: templates/js/translated/table_filters.js:434
-#: templates/js/translated/table_filters.js:450
-#: templates/js/translated/table_filters.js:629
+#: common/models.py:2346 part/admin.py:50 part/models.py:1024
+#: plugin/models.py:48 templates/js/translated/table_filters.js:111
+#: templates/js/translated/table_filters.js:195
+#: templates/js/translated/table_filters.js:440
+#: templates/js/translated/table_filters.js:456
+#: templates/js/translated/table_filters.js:651
msgid "Active"
msgstr ""
-#: common/models.py:2361
+#: common/models.py:2347
msgid "Is this webhook active"
msgstr ""
-#: common/models.py:2375
+#: common/models.py:2361
msgid "Token"
msgstr ""
-#: common/models.py:2376
+#: common/models.py:2362
msgid "Token for access"
msgstr ""
-#: common/models.py:2383
+#: common/models.py:2369
msgid "Secret"
msgstr ""
-#: common/models.py:2384
+#: common/models.py:2370
msgid "Shared secret for HMAC"
msgstr ""
-#: common/models.py:2490
+#: common/models.py:2476
msgid "Message ID"
msgstr ""
-#: common/models.py:2491
+#: common/models.py:2477
msgid "Unique identifier for this message"
msgstr ""
-#: common/models.py:2499
+#: common/models.py:2485
msgid "Host"
msgstr ""
-#: common/models.py:2500
+#: common/models.py:2486
msgid "Host from which this message was received"
msgstr ""
-#: common/models.py:2507
+#: common/models.py:2493
msgid "Header"
msgstr ""
-#: common/models.py:2508
+#: common/models.py:2494
msgid "Header of this message"
msgstr ""
-#: common/models.py:2514
+#: common/models.py:2500
msgid "Body"
msgstr ""
-#: common/models.py:2515
+#: common/models.py:2501
msgid "Body of this message"
msgstr ""
-#: common/models.py:2524
+#: common/models.py:2510
msgid "Endpoint on which this message was received"
msgstr ""
-#: common/models.py:2529
+#: common/models.py:2515
msgid "Worked on"
msgstr ""
-#: common/models.py:2530
+#: common/models.py:2516
msgid "Was the work on this message finished?"
msgstr ""
-#: common/models.py:2684
+#: common/models.py:2670
msgid "Id"
msgstr ""
-#: common/models.py:2690 templates/js/translated/news.js:44
+#: common/models.py:2676 templates/js/translated/company.js:996
+#: templates/js/translated/news.js:44
msgid "Title"
msgstr ""
-#: common/models.py:2700 templates/js/translated/news.js:60
+#: common/models.py:2686 templates/js/translated/news.js:60
msgid "Published"
msgstr ""
-#: common/models.py:2705 templates/InvenTree/settings/plugin_settings.html:32
+#: common/models.py:2691 templates/InvenTree/settings/plugin_settings.html:32
#: templates/js/translated/news.js:56 templates/js/translated/plugin.js:106
msgid "Author"
msgstr ""
-#: common/models.py:2710 templates/js/translated/news.js:52
+#: common/models.py:2696 templates/js/translated/news.js:52
msgid "Summary"
msgstr ""
-#: common/models.py:2715
+#: common/models.py:2701
msgid "Read"
msgstr ""
-#: common/models.py:2716
+#: common/models.py:2702
msgid "Was this news item read?"
msgstr ""
-#: common/models.py:2736 company/models.py:143 part/models.py:914
+#: common/models.py:2722 company/models.py:139 part/models.py:915
#: report/templates/report/inventree_bill_of_materials_report.html:126
#: report/templates/report/inventree_bill_of_materials_report.html:148
#: report/templates/report/inventree_return_order_report_base.html:35
@@ -3422,7 +3400,7 @@ msgstr ""
msgid "Image"
msgstr ""
-#: common/models.py:2737
+#: common/models.py:2723
msgid "Image file"
msgstr ""
@@ -3499,7 +3477,7 @@ msgstr ""
#: company/models.py:113 company/templates/company/company_base.html:101
#: templates/InvenTree/settings/plugin_settings.html:54
-#: templates/js/translated/company.js:514
+#: templates/js/translated/company.js:521
msgid "Website"
msgstr ""
@@ -3507,303 +3485,387 @@ msgstr ""
msgid "Company website URL"
msgstr ""
-#: company/models.py:118 company/templates/company/company_base.html:119
-msgid "Address"
-msgstr ""
-
-#: company/models.py:119
-msgid "Company address"
-msgstr ""
-
-#: company/models.py:122
+#: company/models.py:118
msgid "Phone number"
msgstr ""
-#: company/models.py:123
+#: company/models.py:119
msgid "Contact phone number"
msgstr ""
-#: company/models.py:126 company/templates/company/company_base.html:133
+#: company/models.py:122 company/templates/company/company_base.html:133
#: templates/InvenTree/settings/user.html:49
-#: templates/js/translated/company.js:659
+#: templates/js/translated/company.js:666
msgid "Email"
msgstr ""
-#: company/models.py:126
+#: company/models.py:122
msgid "Contact email address"
msgstr ""
-#: company/models.py:129 company/templates/company/company_base.html:140
-#: order/models.py:266 order/templates/order/order_base.html:207
+#: company/models.py:125 company/templates/company/company_base.html:140
+#: order/models.py:270 order/templates/order/order_base.html:203
#: order/templates/order/return_order_base.html:175
#: order/templates/order/sales_order_base.html:215
msgid "Contact"
msgstr ""
-#: company/models.py:130
+#: company/models.py:126
msgid "Point of contact"
msgstr ""
-#: company/models.py:132
+#: company/models.py:128
msgid "Link to external company information"
msgstr ""
-#: company/models.py:146
+#: company/models.py:142
msgid "is customer"
msgstr ""
-#: company/models.py:146
+#: company/models.py:142
msgid "Do you sell items to this company?"
msgstr ""
-#: company/models.py:148
+#: company/models.py:144
msgid "is supplier"
msgstr ""
-#: company/models.py:148
+#: company/models.py:144
msgid "Do you purchase items from this company?"
msgstr ""
-#: company/models.py:150
+#: company/models.py:146
msgid "is manufacturer"
msgstr ""
-#: company/models.py:150
+#: company/models.py:146
msgid "Does this company manufacture parts?"
msgstr ""
-#: company/models.py:157
+#: company/models.py:153
msgid "Default currency used for this company"
msgstr ""
-#: company/models.py:223 company/templates/company/company_base.html:8
+#: company/models.py:235 company/models.py:328
+#: company/templates/company/company_base.html:8
#: company/templates/company/company_base.html:12
-#: templates/InvenTree/search.html:178 templates/js/translated/company.js:487
+#: templates/InvenTree/search.html:178 templates/js/translated/company.js:494
msgid "Company"
msgstr ""
-#: company/models.py:278 company/models.py:553 stock/models.py:675
-#: stock/serializers.py:155 stock/templates/stock/item_base.html:143
-#: templates/js/translated/bom.js:621
+#: company/models.py:324
+msgid "Company already has a primary address"
+msgstr ""
+
+#: company/models.py:329
+msgid "Select company"
+msgstr ""
+
+#: company/models.py:332
+msgid "Address title"
+msgstr ""
+
+#: company/models.py:333
+msgid "Title describing the address entry"
+msgstr ""
+
+#: company/models.py:337
+msgid "Primary address"
+msgstr ""
+
+#: company/models.py:338
+msgid "Set as primary address"
+msgstr ""
+
+#: company/models.py:341 templates/js/translated/company.js:941
+#: templates/js/translated/company.js:1002
+msgid "Line 1"
+msgstr ""
+
+#: company/models.py:342
+msgid "Address line 1"
+msgstr ""
+
+#: company/models.py:346 templates/js/translated/company.js:942
+#: templates/js/translated/company.js:1008
+msgid "Line 2"
+msgstr ""
+
+#: company/models.py:347
+msgid "Address line 2"
+msgstr ""
+
+#: company/models.py:351 company/models.py:352
+#: templates/js/translated/company.js:1014
+msgid "Postal code"
+msgstr ""
+
+#: company/models.py:356
+msgid "City/Region"
+msgstr ""
+
+#: company/models.py:357
+msgid "Postal code city/region"
+msgstr ""
+
+#: company/models.py:361
+msgid "State/Province"
+msgstr ""
+
+#: company/models.py:362
+msgid "State or province"
+msgstr ""
+
+#: company/models.py:366 templates/js/translated/company.js:1032
+msgid "Country"
+msgstr ""
+
+#: company/models.py:367
+msgid "Address country"
+msgstr ""
+
+#: company/models.py:371
+msgid "Courier shipping notes"
+msgstr ""
+
+#: company/models.py:372
+msgid "Notes for shipping courier"
+msgstr ""
+
+#: company/models.py:376
+msgid "Internal shipping notes"
+msgstr ""
+
+#: company/models.py:377
+msgid "Shipping notes for internal use"
+msgstr ""
+
+#: company/models.py:382
+msgid "Link to address information (external)"
+msgstr ""
+
+#: company/models.py:427 company/models.py:702 stock/models.py:675
+#: stock/serializers.py:204 stock/templates/stock/item_base.html:143
+#: templates/js/translated/bom.js:622
msgid "Base Part"
msgstr ""
-#: company/models.py:282 company/models.py:557
+#: company/models.py:431 company/models.py:706
msgid "Select part"
msgstr ""
-#: company/models.py:293 company/templates/company/company_base.html:77
+#: company/models.py:442 company/templates/company/company_base.html:77
#: company/templates/company/manufacturer_part.html:90
-#: company/templates/company/supplier_part.html:146 part/serializers.py:354
+#: company/templates/company/supplier_part.html:146 part/serializers.py:404
#: stock/templates/stock/item_base.html:208
-#: templates/js/translated/company.js:498
-#: templates/js/translated/company.js:824
-#: templates/js/translated/company.js:954
-#: templates/js/translated/company.js:1221
-#: templates/js/translated/table_filters.js:709
+#: templates/js/translated/company.js:505
+#: templates/js/translated/company.js:1149
+#: templates/js/translated/company.js:1327
+#: templates/js/translated/company.js:1642
+#: templates/js/translated/table_filters.js:731
msgid "Manufacturer"
msgstr "Nhà sản xuất"
-#: company/models.py:294
+#: company/models.py:443
msgid "Select manufacturer"
msgstr ""
-#: company/models.py:300 company/templates/company/manufacturer_part.html:101
-#: company/templates/company/supplier_part.html:154 part/serializers.py:360
-#: templates/js/translated/company.js:340
-#: templates/js/translated/company.js:823
-#: templates/js/translated/company.js:970
-#: templates/js/translated/company.js:1240 templates/js/translated/part.js:1773
-#: templates/js/translated/purchase_order.js:1814
-#: templates/js/translated/purchase_order.js:2021
+#: company/models.py:449 company/templates/company/manufacturer_part.html:101
+#: company/templates/company/supplier_part.html:154 part/serializers.py:410
+#: templates/js/translated/company.js:350
+#: templates/js/translated/company.js:1148
+#: templates/js/translated/company.js:1343
+#: templates/js/translated/company.js:1661 templates/js/translated/part.js:1772
+#: templates/js/translated/purchase_order.js:1829
+#: templates/js/translated/purchase_order.js:2031
msgid "MPN"
msgstr ""
-#: company/models.py:301
+#: company/models.py:450
msgid "Manufacturer Part Number"
msgstr ""
-#: company/models.py:307
+#: company/models.py:456
msgid "URL for external manufacturer part link"
msgstr ""
-#: company/models.py:313
+#: company/models.py:462
msgid "Manufacturer part description"
msgstr ""
-#: company/models.py:360 company/models.py:384 company/models.py:578
+#: company/models.py:509 company/models.py:533 company/models.py:727
#: company/templates/company/manufacturer_part.html:7
#: company/templates/company/manufacturer_part.html:24
#: stock/templates/stock/item_base.html:218
msgid "Manufacturer Part"
msgstr ""
-#: company/models.py:391
+#: company/models.py:540
msgid "Parameter name"
msgstr ""
-#: company/models.py:397
+#: company/models.py:546
#: report/templates/report/inventree_test_report_base.html:104
-#: stock/models.py:2255 templates/js/translated/company.js:872
-#: templates/js/translated/company.js:1077 templates/js/translated/part.js:1465
-#: templates/js/translated/stock.js:1446
+#: stock/models.py:2255 templates/js/translated/company.js:1197
+#: templates/js/translated/company.js:1450 templates/js/translated/part.js:1464
+#: templates/js/translated/stock.js:1445
msgid "Value"
msgstr ""
-#: company/models.py:398
+#: company/models.py:547
msgid "Parameter value"
msgstr ""
-#: company/models.py:404 company/templates/company/supplier_part.html:169
-#: part/admin.py:40 part/models.py:987 part/models.py:3407
+#: company/models.py:553 company/templates/company/supplier_part.html:169
+#: part/admin.py:40 part/models.py:988 part/models.py:3441
#: part/templates/part/part_base.html:286
-#: templates/js/translated/company.js:1083 templates/js/translated/part.js:1484
-#: templates/js/translated/part.js:1588 templates/js/translated/part.js:2262
+#: templates/js/translated/company.js:1456 templates/js/translated/part.js:1483
+#: templates/js/translated/part.js:1587 templates/js/translated/part.js:2338
msgid "Units"
msgstr ""
-#: company/models.py:405
+#: company/models.py:554
msgid "Parameter units"
msgstr ""
-#: company/models.py:498
+#: company/models.py:647
msgid "Pack units must be compatible with the base part units"
msgstr ""
-#: company/models.py:504
+#: company/models.py:653
msgid "Pack units must be greater than zero"
msgstr ""
-#: company/models.py:520
+#: company/models.py:669
msgid "Linked manufacturer part must reference the same base part"
msgstr ""
-#: company/models.py:564 company/templates/company/company_base.html:82
-#: company/templates/company/supplier_part.html:130 order/models.py:382
-#: order/templates/order/order_base.html:140 part/bom.py:285 part/bom.py:313
-#: part/serializers.py:343 stock/templates/stock/item_base.html:225
+#: company/models.py:713 company/templates/company/company_base.html:82
+#: company/templates/company/supplier_part.html:130 order/models.py:395
+#: order/templates/order/order_base.html:136 part/bom.py:285 part/bom.py:313
+#: part/serializers.py:393 stock/templates/stock/item_base.html:225
#: templates/email/overdue_purchase_order.html:16
-#: templates/js/translated/company.js:339
-#: templates/js/translated/company.js:502
-#: templates/js/translated/company.js:1194 templates/js/translated/part.js:1741
+#: templates/js/translated/company.js:349
+#: templates/js/translated/company.js:509
+#: templates/js/translated/company.js:1615 templates/js/translated/part.js:1740
#: templates/js/translated/pricing.js:498
-#: templates/js/translated/purchase_order.js:1653
-#: templates/js/translated/table_filters.js:713
+#: templates/js/translated/purchase_order.js:1668
+#: templates/js/translated/table_filters.js:735
msgid "Supplier"
msgstr "Nhà cung cấp"
-#: company/models.py:565
+#: company/models.py:714
msgid "Select supplier"
msgstr ""
-#: company/models.py:570 company/templates/company/supplier_part.html:140
-#: part/bom.py:286 part/bom.py:314 part/serializers.py:349
-#: templates/js/translated/company.js:338 templates/js/translated/part.js:1759
+#: company/models.py:719 company/templates/company/supplier_part.html:140
+#: part/bom.py:286 part/bom.py:314 part/serializers.py:399
+#: templates/js/translated/company.js:348 templates/js/translated/part.js:1758
#: templates/js/translated/pricing.js:510
-#: templates/js/translated/purchase_order.js:1813
-#: templates/js/translated/purchase_order.js:1996
+#: templates/js/translated/purchase_order.js:1828
+#: templates/js/translated/purchase_order.js:2006
msgid "SKU"
msgstr ""
-#: company/models.py:571 part/serializers.py:349
+#: company/models.py:720 part/serializers.py:399
msgid "Supplier stock keeping unit"
msgstr ""
-#: company/models.py:579
+#: company/models.py:728
msgid "Select manufacturer part"
msgstr ""
-#: company/models.py:585
+#: company/models.py:734
msgid "URL for external supplier part link"
msgstr ""
-#: company/models.py:591
+#: company/models.py:740
msgid "Supplier part description"
msgstr ""
-#: company/models.py:596 company/templates/company/supplier_part.html:188
-#: part/admin.py:279 part/models.py:3801 part/templates/part/upload_bom.html:59
+#: company/models.py:745 company/templates/company/supplier_part.html:188
+#: part/admin.py:279 part/models.py:3845 part/templates/part/upload_bom.html:59
#: report/templates/report/inventree_bill_of_materials_report.html:140
#: report/templates/report/inventree_po_report_base.html:32
#: report/templates/report/inventree_return_order_report_base.html:27
#: report/templates/report/inventree_so_report_base.html:32
-#: stock/serializers.py:418
+#: stock/serializers.py:484
msgid "Note"
msgstr ""
-#: company/models.py:600 part/models.py:1919
+#: company/models.py:749 part/models.py:1921
msgid "base cost"
msgstr ""
-#: company/models.py:600 part/models.py:1919
+#: company/models.py:749 part/models.py:1921
msgid "Minimum charge (e.g. stocking fee)"
msgstr ""
-#: company/models.py:602 company/templates/company/supplier_part.html:161
+#: company/models.py:751 company/templates/company/supplier_part.html:161
#: stock/admin.py:119 stock/models.py:701
#: stock/templates/stock/item_base.html:241
-#: templates/js/translated/company.js:1256
-#: templates/js/translated/stock.js:2160
+#: templates/js/translated/company.js:1677
+#: templates/js/translated/stock.js:2317
msgid "Packaging"
msgstr ""
-#: company/models.py:602
+#: company/models.py:751
msgid "Part packaging"
msgstr ""
-#: company/models.py:606 templates/js/translated/company.js:1261
-#: templates/js/translated/part.js:1793 templates/js/translated/part.js:1848
-#: templates/js/translated/purchase_order.js:300
-#: templates/js/translated/purchase_order.js:827
-#: templates/js/translated/purchase_order.js:1073
-#: templates/js/translated/purchase_order.js:2052
-#: templates/js/translated/purchase_order.js:2069
+#: company/models.py:755 templates/js/translated/company.js:1682
+#: templates/js/translated/part.js:1792 templates/js/translated/part.js:1847
+#: templates/js/translated/purchase_order.js:311
+#: templates/js/translated/purchase_order.js:842
+#: templates/js/translated/purchase_order.js:1088
+#: templates/js/translated/purchase_order.js:2062
+#: templates/js/translated/purchase_order.js:2079
msgid "Pack Quantity"
msgstr ""
-#: company/models.py:607
+#: company/models.py:756
msgid "Total quantity supplied in a single pack. Leave empty for single items."
msgstr ""
-#: company/models.py:624 part/models.py:1921
+#: company/models.py:773 part/models.py:1923
msgid "multiple"
msgstr ""
-#: company/models.py:624
+#: company/models.py:773
msgid "Order multiple"
msgstr ""
-#: company/models.py:632 company/templates/company/supplier_part.html:115
+#: company/models.py:781 company/templates/company/supplier_part.html:115
#: templates/email/build_order_required_stock.html:19
#: templates/email/low_stock_notification.html:17
-#: templates/js/translated/bom.js:1127 templates/js/translated/build.js:2136
-#: templates/js/translated/build.js:3045
-#: templates/js/translated/model_renderers.js:205
-#: templates/js/translated/part.js:670 templates/js/translated/part.js:672
-#: templates/js/translated/part.js:677
-#: templates/js/translated/table_filters.js:286
-#: templates/js/translated/table_filters.js:492
+#: templates/js/translated/bom.js:1145 templates/js/translated/build.js:2490
+#: templates/js/translated/index.js:118
+#: templates/js/translated/model_renderers.js:219
+#: templates/js/translated/part.js:669 templates/js/translated/part.js:671
+#: templates/js/translated/part.js:676
+#: templates/js/translated/table_filters.js:292
+#: templates/js/translated/table_filters.js:510
msgid "Available"
msgstr ""
-#: company/models.py:633
+#: company/models.py:782
msgid "Quantity available from supplier"
msgstr ""
-#: company/models.py:637
+#: company/models.py:786
msgid "Availability Updated"
msgstr ""
-#: company/models.py:638
+#: company/models.py:787
msgid "Date of last update of availability data"
msgstr ""
-#: company/serializers.py:99
+#: company/serializers.py:156
msgid "Default currency used for this supplier"
msgstr ""
#: company/templates/company/company_base.html:22
-#: templates/js/translated/purchase_order.js:228
+#: templates/js/translated/purchase_order.js:239
msgid "Create Purchase Order"
msgstr ""
@@ -3816,7 +3878,7 @@ msgid "Edit company information"
msgstr ""
#: company/templates/company/company_base.html:34
-#: templates/js/translated/company.js:436
+#: templates/js/translated/company.js:443
msgid "Edit Company"
msgstr ""
@@ -3856,17 +3918,17 @@ msgstr ""
msgid "Delete image"
msgstr ""
-#: company/templates/company/company_base.html:87 order/models.py:779
-#: order/models.py:1738 order/templates/order/return_order_base.html:132
+#: company/templates/company/company_base.html:87 order/models.py:792
+#: order/models.py:1751 order/templates/order/return_order_base.html:132
#: order/templates/order/sales_order_base.html:145 stock/models.py:720
-#: stock/models.py:721 stock/serializers.py:825
+#: stock/models.py:721 stock/serializers.py:942
#: stock/templates/stock/item_base.html:401
#: templates/email/overdue_sales_order.html:16
-#: templates/js/translated/company.js:494
-#: templates/js/translated/return_order.js:284
-#: templates/js/translated/sales_order.js:772
-#: templates/js/translated/stock.js:2696
-#: templates/js/translated/table_filters.js:717
+#: templates/js/translated/company.js:501
+#: templates/js/translated/return_order.js:296
+#: templates/js/translated/sales_order.js:784
+#: templates/js/translated/stock.js:2827
+#: templates/js/translated/table_filters.js:739
msgid "Customer"
msgstr ""
@@ -3874,6 +3936,13 @@ msgstr ""
msgid "Uses default currency"
msgstr ""
+#: company/templates/company/company_base.html:119 order/models.py:279
+#: order/templates/order/order_base.html:210
+#: order/templates/order/return_order_base.html:182
+#: order/templates/order/sales_order_base.html:222
+msgid "Address"
+msgstr ""
+
#: company/templates/company/company_base.html:126
msgid "Phone"
msgstr ""
@@ -3906,7 +3975,7 @@ msgstr ""
#: company/templates/company/detail.html:15
#: company/templates/company/manufacturer_part_sidebar.html:7
-#: templates/InvenTree/search.html:120 templates/js/translated/search.js:189
+#: templates/InvenTree/search.html:120 templates/js/translated/search.js:147
msgid "Supplier Parts"
msgstr ""
@@ -3916,129 +3985,121 @@ msgstr ""
#: company/templates/company/detail.html:20
#: company/templates/company/manufacturer_part.html:123
-#: part/templates/part/detail.html:381
+#: part/templates/part/detail.html:356
msgid "New Supplier Part"
msgstr ""
-#: company/templates/company/detail.html:37
-#: company/templates/company/detail.html:85
-#: part/templates/part/category.html:183
-msgid "Order parts"
-msgstr ""
-
-#: company/templates/company/detail.html:42
-#: company/templates/company/detail.html:90
-msgid "Delete parts"
-msgstr ""
-
-#: company/templates/company/detail.html:43
-#: company/templates/company/detail.html:91
-msgid "Delete Parts"
-msgstr ""
-
-#: company/templates/company/detail.html:62 templates/InvenTree/search.html:105
-#: templates/js/translated/search.js:193
+#: company/templates/company/detail.html:41 templates/InvenTree/search.html:105
+#: templates/js/translated/search.js:151
msgid "Manufacturer Parts"
msgstr ""
-#: company/templates/company/detail.html:66
+#: company/templates/company/detail.html:45
msgid "Create new manufacturer part"
msgstr ""
-#: company/templates/company/detail.html:67 part/templates/part/detail.html:411
+#: company/templates/company/detail.html:46 part/templates/part/detail.html:376
msgid "New Manufacturer Part"
msgstr ""
-#: company/templates/company/detail.html:108
+#: company/templates/company/detail.html:65
msgid "Supplier Stock"
msgstr ""
-#: company/templates/company/detail.html:118
+#: company/templates/company/detail.html:75
#: company/templates/company/sidebar.html:12
#: company/templates/company/supplier_part_sidebar.html:7
#: 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:108 part/templates/part/part_sidebar.html:35
-#: templates/InvenTree/index.html:275 templates/InvenTree/search.html:199
+#: part/templates/part/detail.html:106 part/templates/part/part_sidebar.html:35
+#: templates/InvenTree/index.html:227 templates/InvenTree/search.html:199
#: templates/InvenTree/settings/sidebar.html:55
-#: templates/js/translated/search.js:247 templates/navbar.html:50
+#: templates/js/translated/search.js:205 templates/navbar.html:50
#: users/models.py:43
msgid "Purchase Orders"
msgstr ""
-#: company/templates/company/detail.html:122
+#: company/templates/company/detail.html:79
#: order/templates/order/purchase_orders.html:17
msgid "Create new purchase order"
msgstr ""
-#: company/templates/company/detail.html:123
+#: company/templates/company/detail.html:80
#: order/templates/order/purchase_orders.html:18
msgid "New Purchase Order"
msgstr ""
-#: company/templates/company/detail.html:146
+#: company/templates/company/detail.html:101
#: company/templates/company/sidebar.html:21
#: 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:131 part/templates/part/part_sidebar.html:39
-#: templates/InvenTree/index.html:307 templates/InvenTree/search.html:219
+#: part/templates/part/detail.html:127 part/templates/part/part_sidebar.html:39
+#: templates/InvenTree/index.html:259 templates/InvenTree/search.html:219
#: templates/InvenTree/settings/sidebar.html:57
-#: templates/js/translated/search.js:261 templates/navbar.html:62
+#: templates/js/translated/search.js:219 templates/navbar.html:62
#: users/models.py:44
msgid "Sales Orders"
msgstr ""
-#: company/templates/company/detail.html:150
+#: company/templates/company/detail.html:105
#: order/templates/order/sales_orders.html:20
msgid "Create new sales order"
msgstr ""
-#: company/templates/company/detail.html:151
+#: company/templates/company/detail.html:106
#: order/templates/order/sales_orders.html:21
msgid "New Sales Order"
msgstr ""
-#: company/templates/company/detail.html:173
-#: templates/js/translated/build.js:1976
+#: company/templates/company/detail.html:126
msgid "Assigned Stock"
msgstr ""
-#: company/templates/company/detail.html:191
+#: company/templates/company/detail.html:142
#: company/templates/company/sidebar.html:29
#: order/templates/order/return_order_base.html:13
#: order/templates/order/return_orders.html:8
#: order/templates/order/return_orders.html:15
#: templates/InvenTree/settings/sidebar.html:59
-#: templates/js/translated/search.js:274 templates/navbar.html:65
+#: templates/js/translated/search.js:232 templates/navbar.html:65
#: users/models.py:45
msgid "Return Orders"
msgstr ""
-#: company/templates/company/detail.html:195
+#: company/templates/company/detail.html:146
#: order/templates/order/return_orders.html:20
msgid "Create new return order"
msgstr ""
-#: company/templates/company/detail.html:196
+#: company/templates/company/detail.html:147
#: order/templates/order/return_orders.html:21
msgid "New Return Order"
msgstr ""
-#: company/templates/company/detail.html:221
+#: company/templates/company/detail.html:168
msgid "Company Notes"
msgstr ""
-#: company/templates/company/detail.html:236
+#: company/templates/company/detail.html:183
msgid "Company Contacts"
msgstr ""
-#: company/templates/company/detail.html:240
-#: company/templates/company/detail.html:241
+#: company/templates/company/detail.html:187
+#: company/templates/company/detail.html:188
msgid "Add Contact"
msgstr ""
+#: company/templates/company/detail.html:206
+msgid "Company addresses"
+msgstr ""
+
+#: company/templates/company/detail.html:210
+#: company/templates/company/detail.html:211
+msgid "Add Address"
+msgstr ""
+
#: company/templates/company/index.html:8
msgid "Supplier List"
msgstr ""
@@ -4050,17 +4111,17 @@ msgstr ""
#: company/templates/company/manufacturer_part.html:35
#: company/templates/company/supplier_part.html:228
-#: part/templates/part/detail.html:111 part/templates/part/part_base.html:85
+#: part/templates/part/detail.html:109 part/templates/part/part_base.html:85
msgid "Order part"
msgstr ""
#: company/templates/company/manufacturer_part.html:39
-#: templates/js/translated/company.js:1001
+#: templates/js/translated/company.js:1374
msgid "Edit manufacturer part"
msgstr ""
#: company/templates/company/manufacturer_part.html:43
-#: templates/js/translated/company.js:1002
+#: templates/js/translated/company.js:1375
msgid "Delete manufacturer part"
msgstr ""
@@ -4080,40 +4141,22 @@ msgstr ""
msgid "Suppliers"
msgstr ""
-#: company/templates/company/manufacturer_part.html:136
-#: part/templates/part/detail.html:392
-msgid "Delete supplier parts"
-msgstr ""
-
-#: company/templates/company/manufacturer_part.html:136
-#: company/templates/company/manufacturer_part.html:183
-#: part/templates/part/detail.html:393 part/templates/part/detail.html:423
-#: templates/js/translated/forms.js:506 templates/js/translated/helpers.js:105
-#: templates/js/translated/part.js:370 templates/js/translated/pricing.js:629
-#: templates/js/translated/stock.js:216 users/models.py:247
-msgid "Delete"
-msgstr ""
-
-#: company/templates/company/manufacturer_part.html:166
+#: company/templates/company/manufacturer_part.html:156
#: company/templates/company/manufacturer_part_sidebar.html:5
#: part/templates/part/category_sidebar.html:20
-#: part/templates/part/detail.html:208 part/templates/part/part_sidebar.html:8
+#: part/templates/part/detail.html:195 part/templates/part/part_sidebar.html:8
msgid "Parameters"
msgstr "Thông số"
-#: company/templates/company/manufacturer_part.html:170
-#: part/templates/part/detail.html:213
+#: company/templates/company/manufacturer_part.html:160
+#: part/templates/part/detail.html:200
#: templates/InvenTree/settings/category.html:12
#: templates/InvenTree/settings/part_parameters.html:12
msgid "New Parameter"
msgstr ""
-#: company/templates/company/manufacturer_part.html:183
-msgid "Delete parameters"
-msgstr "Xóa các thông số"
-
-#: company/templates/company/manufacturer_part.html:226
-#: templates/js/translated/part.js:1396
+#: company/templates/company/manufacturer_part.html:206
+#: templates/js/translated/part.js:1395
msgid "Add Parameter"
msgstr ""
@@ -4137,23 +4180,28 @@ msgstr ""
msgid "Contacts"
msgstr ""
+#: company/templates/company/sidebar.html:35
+msgid "Addresses"
+msgstr ""
+
#: company/templates/company/supplier_part.html:7
#: company/templates/company/supplier_part.html:24 stock/models.py:684
#: stock/templates/stock/item_base.html:234
-#: templates/js/translated/company.js:1210
-#: templates/js/translated/purchase_order.js:747
-#: templates/js/translated/stock.js:2016
+#: templates/js/translated/company.js:1631
+#: templates/js/translated/purchase_order.js:758
+#: templates/js/translated/stock.js:2173
msgid "Supplier Part"
msgstr ""
#: company/templates/company/supplier_part.html:51
+#: templates/js/translated/company.js:1557
msgid "Supplier part actions"
msgstr ""
#: company/templates/company/supplier_part.html:56
#: company/templates/company/supplier_part.html:57
#: company/templates/company/supplier_part.html:229
-#: part/templates/part/detail.html:112
+#: part/templates/part/detail.html:110
msgid "Order Part"
msgstr ""
@@ -4164,13 +4212,13 @@ msgstr ""
#: company/templates/company/supplier_part.html:64
#: company/templates/company/supplier_part.html:65
-#: templates/js/translated/company.js:283
+#: templates/js/translated/company.js:293
msgid "Edit Supplier Part"
msgstr ""
#: company/templates/company/supplier_part.html:69
#: company/templates/company/supplier_part.html:70
-#: templates/js/translated/company.js:258
+#: templates/js/translated/company.js:268
msgid "Duplicate Supplier Part"
msgstr ""
@@ -4197,7 +4245,7 @@ msgstr ""
#: company/templates/company/supplier_part.html:211
#: part/templates/part/detail.html:25 stock/templates/stock/location.html:198
-#: templates/js/translated/stock.js:504
+#: templates/js/translated/stock.js:503
msgid "New Stock Item"
msgstr ""
@@ -4205,37 +4253,37 @@ msgstr ""
msgid "Supplier Part Orders"
msgstr ""
-#: company/templates/company/supplier_part.html:249
+#: company/templates/company/supplier_part.html:247
msgid "Pricing Information"
msgstr ""
-#: company/templates/company/supplier_part.html:254
-#: templates/js/translated/company.js:387
+#: company/templates/company/supplier_part.html:252
+#: templates/js/translated/company.js:397
#: templates/js/translated/pricing.js:684
msgid "Add Price Break"
msgstr ""
-#: company/templates/company/supplier_part.html:281
+#: company/templates/company/supplier_part.html:277
msgid "Supplier Part QR Code"
msgstr ""
-#: company/templates/company/supplier_part.html:292
+#: company/templates/company/supplier_part.html:288
msgid "Link Barcode to Supplier Part"
msgstr ""
-#: company/templates/company/supplier_part.html:365
+#: company/templates/company/supplier_part.html:361
msgid "Update Part Availability"
msgstr ""
#: company/templates/company/supplier_part_sidebar.html:5 part/tasks.py:293
-#: part/templates/part/category.html:199
+#: part/templates/part/category.html:182
#: part/templates/part/category_sidebar.html:17 stock/admin.py:47
-#: stock/templates/stock/location.html:168
+#: stock/serializers.py:662 stock/templates/stock/location.html:168
#: stock/templates/stock/location.html:182
#: stock/templates/stock/location.html:194
#: stock/templates/stock/location_sidebar.html:7
-#: templates/InvenTree/search.html:155 templates/js/translated/part.js:1034
-#: templates/js/translated/search.js:214 templates/js/translated/stock.js:2514
+#: templates/InvenTree/search.html:155 templates/js/translated/part.js:1033
+#: templates/js/translated/search.js:172 templates/js/translated/stock.js:2645
#: users/models.py:41
msgid "Stock Items"
msgstr ""
@@ -4261,7 +4309,7 @@ msgstr ""
msgid "New Customer"
msgstr ""
-#: company/views.py:52 templates/js/translated/search.js:234
+#: company/views.py:52 templates/js/translated/search.js:192
msgid "Companies"
msgstr ""
@@ -4269,72 +4317,76 @@ msgstr ""
msgid "New Company"
msgstr ""
-#: label/models.py:104
+#: label/models.py:112
msgid "Label name"
msgstr ""
-#: label/models.py:111
+#: label/models.py:119
msgid "Label description"
msgstr ""
-#: label/models.py:118
+#: label/models.py:126
msgid "Label"
msgstr ""
-#: label/models.py:119
+#: label/models.py:127
msgid "Label template file"
msgstr ""
-#: label/models.py:125 report/models.py:273
+#: label/models.py:133 report/models.py:273
msgid "Enabled"
msgstr ""
-#: label/models.py:126
+#: label/models.py:134
msgid "Label template is enabled"
msgstr ""
-#: label/models.py:131
+#: label/models.py:139
msgid "Width [mm]"
msgstr ""
-#: label/models.py:132
+#: label/models.py:140
msgid "Label width, specified in mm"
msgstr ""
-#: label/models.py:138
+#: label/models.py:146
msgid "Height [mm]"
msgstr ""
-#: label/models.py:139
+#: label/models.py:147
msgid "Label height, specified in mm"
msgstr ""
-#: label/models.py:145 report/models.py:266
+#: label/models.py:153 report/models.py:266
msgid "Filename Pattern"
msgstr ""
-#: label/models.py:146
+#: label/models.py:154
msgid "Pattern for generating label filenames"
msgstr ""
-#: label/models.py:242
+#: label/models.py:250
msgid "Query filters (comma-separated list of key=value pairs),"
msgstr ""
-#: label/models.py:243 label/models.py:284 label/models.py:312
-#: report/models.py:294 report/models.py:452 report/models.py:490
-#: report/models.py:528
+#: label/models.py:251 label/models.py:292 label/models.py:320
+#: label/models.py:356 report/models.py:294 report/models.py:454
+#: report/models.py:492 report/models.py:530
msgid "Filters"
msgstr ""
-#: label/models.py:283
+#: label/models.py:291
msgid "Query filters (comma-separated list of key=value pairs"
msgstr ""
-#: label/models.py:311
+#: label/models.py:319
msgid "Part query filters (comma-separated value of key=value pairs)"
msgstr ""
+#: label/models.py:355
+msgid "Query filters (comma-separated list of key=value pairs)"
+msgstr ""
+
#: label/templates/label/part/part_label.html:31
#: label/templates/label/stockitem/qr.html:21
#: label/templates/label/stocklocation/qr.html:21
@@ -4352,8 +4404,8 @@ msgstr ""
#: report/templates/report/inventree_po_report_base.html:31
#: report/templates/report/inventree_so_report_base.html:31
#: templates/js/translated/order.js:327
-#: templates/js/translated/purchase_order.js:2093
-#: templates/js/translated/sales_order.js:1827
+#: templates/js/translated/purchase_order.js:2103
+#: templates/js/translated/sales_order.js:1839
msgid "Total Price"
msgstr ""
@@ -4361,30 +4413,30 @@ msgstr ""
msgid "No matching purchase order found"
msgstr ""
-#: order/api.py:1452 order/models.py:1178 order/models.py:1262
+#: order/api.py:1452 order/models.py:1191 order/models.py:1275
#: order/templates/order/order_base.html:9
#: order/templates/order/order_base.html:18
#: report/templates/report/inventree_po_report_base.html:14
#: stock/templates/stock/item_base.html:177
#: templates/email/overdue_purchase_order.html:15
-#: templates/js/translated/part.js:1718 templates/js/translated/pricing.js:790
-#: templates/js/translated/purchase_order.js:154
-#: templates/js/translated/purchase_order.js:748
-#: templates/js/translated/purchase_order.js:1637
-#: templates/js/translated/stock.js:1996 templates/js/translated/stock.js:2644
+#: templates/js/translated/part.js:1717 templates/js/translated/pricing.js:790
+#: templates/js/translated/purchase_order.js:165
+#: templates/js/translated/purchase_order.js:759
+#: templates/js/translated/purchase_order.js:1652
+#: templates/js/translated/stock.js:2153 templates/js/translated/stock.js:2775
msgid "Purchase Order"
msgstr "Đơn hàng"
-#: order/api.py:1456 order/models.py:1909 order/models.py:1955
+#: order/api.py:1456 order/models.py:1922 order/models.py:1968
#: order/templates/order/return_order_base.html:9
#: order/templates/order/return_order_base.html:28
#: report/templates/report/inventree_return_order_report_base.html:13
-#: templates/js/translated/return_order.js:269
-#: templates/js/translated/stock.js:2678
+#: templates/js/translated/return_order.js:281
+#: templates/js/translated/stock.js:2809
msgid "Return Order"
msgstr ""
-#: order/api.py:1458 templates/js/translated/sales_order.js:1030
+#: order/api.py:1458 templates/js/translated/sales_order.js:1042
msgid "Unknown"
msgstr ""
@@ -4392,11 +4444,11 @@ msgstr ""
msgid "Total price for this order"
msgstr ""
-#: order/models.py:79 order/serializers.py:49
+#: order/models.py:79 order/serializers.py:50
msgid "Order Currency"
msgstr ""
-#: order/models.py:81 order/serializers.py:50
+#: order/models.py:81 order/serializers.py:51
msgid "Currency for this order (leave blank to use company default)"
msgstr ""
@@ -4408,492 +4460,496 @@ msgstr ""
msgid "Order description (optional)"
msgstr ""
-#: order/models.py:234
+#: order/models.py:237
msgid "Select project code for this order"
msgstr ""
-#: order/models.py:236 order/models.py:1094 order/models.py:1454
+#: order/models.py:240 order/models.py:1107 order/models.py:1467
msgid "Link to external page"
msgstr ""
-#: order/models.py:241
+#: order/models.py:245
msgid "Expected date for order delivery. Order will be overdue after this date."
msgstr ""
-#: order/models.py:250
+#: order/models.py:254
msgid "Created By"
msgstr ""
-#: order/models.py:257
+#: order/models.py:261
msgid "User or group responsible for this order"
msgstr ""
-#: order/models.py:267
+#: order/models.py:271
msgid "Point of contact for this order"
msgstr ""
-#: order/models.py:360 order/models.py:766
+#: order/models.py:280
+msgid "Company address for this order"
+msgstr ""
+
+#: order/models.py:373 order/models.py:779
msgid "Order reference"
msgstr ""
-#: order/models.py:368 order/models.py:791
+#: order/models.py:381 order/models.py:804
msgid "Purchase order status"
msgstr ""
-#: order/models.py:383
+#: order/models.py:396
msgid "Company from which the items are being ordered"
msgstr ""
-#: order/models.py:391 order/templates/order/order_base.html:152
-#: templates/js/translated/purchase_order.js:1662
+#: order/models.py:404 order/templates/order/order_base.html:148
+#: templates/js/translated/purchase_order.js:1677
msgid "Supplier Reference"
msgstr ""
-#: order/models.py:391
+#: order/models.py:404
msgid "Supplier order reference code"
msgstr ""
-#: order/models.py:398
+#: order/models.py:411
msgid "received by"
msgstr ""
-#: order/models.py:403 order/models.py:1761
+#: order/models.py:416 order/models.py:1774
msgid "Issue Date"
msgstr ""
-#: order/models.py:404 order/models.py:1762
+#: order/models.py:417 order/models.py:1775
msgid "Date order was issued"
msgstr ""
-#: order/models.py:410 order/models.py:1768
+#: order/models.py:423 order/models.py:1781
msgid "Date order was completed"
msgstr ""
-#: order/models.py:445
+#: order/models.py:458
msgid "Part supplier must match PO supplier"
msgstr ""
-#: order/models.py:606
+#: order/models.py:619
msgid "Quantity must be a positive number"
msgstr ""
-#: order/models.py:780
+#: order/models.py:793
msgid "Company to which the items are being sold"
msgstr ""
-#: order/models.py:799 order/models.py:1755
+#: order/models.py:812 order/models.py:1768
msgid "Customer Reference "
msgstr ""
-#: order/models.py:799 order/models.py:1756
+#: order/models.py:812 order/models.py:1769
msgid "Customer order reference code"
msgstr ""
-#: order/models.py:801 order/models.py:1408
-#: templates/js/translated/sales_order.js:831
-#: templates/js/translated/sales_order.js:1012
+#: order/models.py:814 order/models.py:1421
+#: templates/js/translated/sales_order.js:843
+#: templates/js/translated/sales_order.js:1024
msgid "Shipment Date"
msgstr ""
-#: order/models.py:808
+#: order/models.py:821
msgid "shipped by"
msgstr ""
-#: order/models.py:857
+#: order/models.py:870
msgid "Order cannot be completed as no parts have been assigned"
msgstr ""
-#: order/models.py:861
+#: order/models.py:874
msgid "Only an open order can be marked as complete"
msgstr ""
-#: order/models.py:864 templates/js/translated/sales_order.js:491
+#: order/models.py:877 templates/js/translated/sales_order.js:503
msgid "Order cannot be completed as there are incomplete shipments"
msgstr ""
-#: order/models.py:867
+#: order/models.py:880
msgid "Order cannot be completed as there are incomplete line items"
msgstr ""
-#: order/models.py:1074
+#: order/models.py:1087
msgid "Item quantity"
msgstr ""
-#: order/models.py:1087
+#: order/models.py:1100
msgid "Line item reference"
msgstr ""
-#: order/models.py:1089
+#: order/models.py:1102
msgid "Line item notes"
msgstr ""
-#: order/models.py:1100
+#: order/models.py:1113
msgid "Target date for this line item (leave blank to use the target date from the order)"
msgstr ""
-#: order/models.py:1118
+#: order/models.py:1131
msgid "Line item description (optional)"
msgstr ""
-#: order/models.py:1123
+#: order/models.py:1136
msgid "Context"
msgstr ""
-#: order/models.py:1124
+#: order/models.py:1137
msgid "Additional context for this line"
msgstr ""
-#: order/models.py:1133
+#: order/models.py:1146
msgid "Unit price"
msgstr ""
-#: order/models.py:1163
+#: order/models.py:1176
msgid "Supplier part must match supplier"
msgstr ""
-#: order/models.py:1171
+#: order/models.py:1184
msgid "deleted"
msgstr ""
-#: order/models.py:1177 order/models.py:1262 order/models.py:1303
-#: order/models.py:1402 order/models.py:1551 order/models.py:1908
-#: order/models.py:1955 templates/js/translated/sales_order.js:1474
+#: order/models.py:1190 order/models.py:1275 order/models.py:1316
+#: order/models.py:1415 order/models.py:1564 order/models.py:1921
+#: order/models.py:1968 templates/js/translated/sales_order.js:1486
msgid "Order"
msgstr ""
-#: order/models.py:1196
+#: order/models.py:1209
msgid "Supplier part"
msgstr ""
-#: order/models.py:1203 order/templates/order/order_base.html:200
-#: templates/js/translated/part.js:1841 templates/js/translated/part.js:1872
-#: templates/js/translated/purchase_order.js:1276
-#: templates/js/translated/purchase_order.js:2137
-#: templates/js/translated/return_order.js:748
-#: templates/js/translated/table_filters.js:90
-#: templates/js/translated/table_filters.js:515
+#: order/models.py:1216 order/templates/order/order_base.html:196
+#: templates/js/translated/part.js:1840 templates/js/translated/part.js:1871
+#: templates/js/translated/purchase_order.js:1291
+#: templates/js/translated/purchase_order.js:2147
+#: templates/js/translated/return_order.js:760
+#: templates/js/translated/table_filters.js:96
+#: templates/js/translated/table_filters.js:537
msgid "Received"
msgstr ""
-#: order/models.py:1204
+#: order/models.py:1217
msgid "Number of items received"
msgstr ""
-#: order/models.py:1211 stock/models.py:823 stock/serializers.py:252
+#: order/models.py:1224 stock/models.py:823 stock/serializers.py:314
#: stock/templates/stock/item_base.html:184
-#: templates/js/translated/stock.js:2047
+#: templates/js/translated/stock.js:2204
msgid "Purchase Price"
msgstr "Giá mua"
-#: order/models.py:1212
+#: order/models.py:1225
msgid "Unit purchase price"
msgstr ""
-#: order/models.py:1225
+#: order/models.py:1238
msgid "Where does the Purchaser want this item to be stored?"
msgstr ""
-#: order/models.py:1291
+#: order/models.py:1304
msgid "Virtual part cannot be assigned to a sales order"
msgstr ""
-#: order/models.py:1296
+#: order/models.py:1309
msgid "Only salable parts can be assigned to a sales order"
msgstr ""
-#: order/models.py:1322 part/templates/part/part_pricing.html:107
+#: order/models.py:1335 part/templates/part/part_pricing.html:107
#: part/templates/part/prices.html:128 templates/js/translated/pricing.js:943
msgid "Sale Price"
msgstr ""
-#: order/models.py:1323
+#: order/models.py:1336
msgid "Unit sale price"
msgstr ""
-#: order/models.py:1333
+#: order/models.py:1346
msgid "Shipped quantity"
msgstr ""
-#: order/models.py:1409
+#: order/models.py:1422
msgid "Date of shipment"
msgstr ""
-#: order/models.py:1414 templates/js/translated/sales_order.js:1024
+#: order/models.py:1427 templates/js/translated/sales_order.js:1036
msgid "Delivery Date"
msgstr ""
-#: order/models.py:1415
+#: order/models.py:1428
msgid "Date of delivery of shipment"
msgstr ""
-#: order/models.py:1422
+#: order/models.py:1435
msgid "Checked By"
msgstr ""
-#: order/models.py:1423
+#: order/models.py:1436
msgid "User who checked this shipment"
msgstr ""
-#: order/models.py:1430 order/models.py:1627 order/serializers.py:1248
-#: order/serializers.py:1376 templates/js/translated/model_renderers.js:415
+#: order/models.py:1443 order/models.py:1640 order/serializers.py:1254
+#: order/serializers.py:1382 templates/js/translated/model_renderers.js:429
msgid "Shipment"
msgstr ""
-#: order/models.py:1431
+#: order/models.py:1444
msgid "Shipment number"
msgstr ""
-#: order/models.py:1439
+#: order/models.py:1452
msgid "Tracking Number"
msgstr ""
-#: order/models.py:1440
+#: order/models.py:1453
msgid "Shipment tracking information"
msgstr ""
-#: order/models.py:1447
+#: order/models.py:1460
msgid "Invoice Number"
msgstr ""
-#: order/models.py:1448
+#: order/models.py:1461
msgid "Reference number for associated invoice"
msgstr ""
-#: order/models.py:1470
+#: order/models.py:1483
msgid "Shipment has already been sent"
msgstr ""
-#: order/models.py:1473
+#: order/models.py:1486
msgid "Shipment has no allocated stock items"
msgstr ""
-#: order/models.py:1586 order/models.py:1588
+#: order/models.py:1599 order/models.py:1601
msgid "Stock item has not been assigned"
msgstr ""
-#: order/models.py:1592
+#: order/models.py:1605
msgid "Cannot allocate stock item to a line with a different part"
msgstr ""
-#: order/models.py:1594
+#: order/models.py:1607
msgid "Cannot allocate stock to a line without a part"
msgstr ""
-#: order/models.py:1597
+#: order/models.py:1610
msgid "Allocation quantity cannot exceed stock quantity"
msgstr ""
-#: order/models.py:1607 order/serializers.py:1110
+#: order/models.py:1620 order/serializers.py:1116
msgid "Quantity must be 1 for serialized stock item"
msgstr ""
-#: order/models.py:1610
+#: order/models.py:1623
msgid "Sales order does not match shipment"
msgstr ""
-#: order/models.py:1611
+#: order/models.py:1624
msgid "Shipment does not match sales order"
msgstr ""
-#: order/models.py:1619
+#: order/models.py:1632
msgid "Line"
msgstr ""
-#: order/models.py:1628
+#: order/models.py:1641
msgid "Sales order shipment reference"
msgstr ""
-#: order/models.py:1641 order/models.py:1916
-#: templates/js/translated/return_order.js:706
+#: order/models.py:1654 order/models.py:1929
+#: templates/js/translated/return_order.js:718
msgid "Item"
msgstr ""
-#: order/models.py:1642
+#: order/models.py:1655
msgid "Select stock item to allocate"
msgstr ""
-#: order/models.py:1645
+#: order/models.py:1658
msgid "Enter stock allocation quantity"
msgstr ""
-#: order/models.py:1725
+#: order/models.py:1738
msgid "Return Order reference"
msgstr ""
-#: order/models.py:1739
+#: order/models.py:1752
msgid "Company from which items are being returned"
msgstr ""
-#: order/models.py:1750
+#: order/models.py:1763
msgid "Return order status"
msgstr ""
-#: order/models.py:1901
+#: order/models.py:1914
msgid "Only serialized items can be assigned to a Return Order"
msgstr ""
-#: order/models.py:1917
+#: order/models.py:1930
msgid "Select item to return from customer"
msgstr ""
-#: order/models.py:1922
+#: order/models.py:1935
msgid "Received Date"
msgstr ""
-#: order/models.py:1923
+#: order/models.py:1936
msgid "The date this this return item was received"
msgstr ""
-#: order/models.py:1934 templates/js/translated/return_order.js:717
-#: templates/js/translated/table_filters.js:93
+#: order/models.py:1947 templates/js/translated/return_order.js:729
+#: templates/js/translated/table_filters.js:99
msgid "Outcome"
msgstr ""
-#: order/models.py:1934
+#: order/models.py:1947
msgid "Outcome for this line item"
msgstr ""
-#: order/models.py:1940
+#: order/models.py:1953
msgid "Cost associated with return or repair for this line item"
msgstr ""
-#: order/serializers.py:247
+#: order/serializers.py:253
msgid "Order cannot be cancelled"
msgstr ""
-#: order/serializers.py:262 order/serializers.py:1128
+#: order/serializers.py:268 order/serializers.py:1134
msgid "Allow order to be closed with incomplete line items"
msgstr ""
-#: order/serializers.py:273 order/serializers.py:1139
+#: order/serializers.py:279 order/serializers.py:1145
msgid "Order has incomplete line items"
msgstr ""
-#: order/serializers.py:386
+#: order/serializers.py:392
msgid "Order is not open"
msgstr ""
-#: order/serializers.py:404
+#: order/serializers.py:410
msgid "Purchase price currency"
msgstr ""
-#: order/serializers.py:422
+#: order/serializers.py:428
msgid "Supplier part must be specified"
msgstr ""
-#: order/serializers.py:427
+#: order/serializers.py:433
msgid "Purchase order must be specified"
msgstr ""
-#: order/serializers.py:433
+#: order/serializers.py:439
msgid "Supplier must match purchase order"
msgstr ""
-#: order/serializers.py:434
+#: order/serializers.py:440
msgid "Purchase order must match supplier"
msgstr ""
-#: order/serializers.py:472 order/serializers.py:1216
+#: order/serializers.py:478 order/serializers.py:1222
msgid "Line Item"
msgstr ""
-#: order/serializers.py:478
+#: order/serializers.py:484
msgid "Line item does not match purchase order"
msgstr ""
-#: order/serializers.py:488 order/serializers.py:607 order/serializers.py:1589
+#: order/serializers.py:494 order/serializers.py:613 order/serializers.py:1595
msgid "Select destination location for received items"
msgstr ""
-#: order/serializers.py:507 templates/js/translated/purchase_order.js:1100
+#: order/serializers.py:513 templates/js/translated/purchase_order.js:1115
msgid "Enter batch code for incoming stock items"
msgstr ""
-#: order/serializers.py:515 templates/js/translated/purchase_order.js:1124
+#: order/serializers.py:521 templates/js/translated/purchase_order.js:1139
msgid "Enter serial numbers for incoming stock items"
msgstr ""
-#: order/serializers.py:528 templates/js/translated/barcode.js:52
+#: order/serializers.py:534 templates/js/translated/barcode.js:52
msgid "Barcode"
msgstr ""
-#: order/serializers.py:529
+#: order/serializers.py:535
msgid "Scanned barcode"
msgstr ""
-#: order/serializers.py:545
+#: order/serializers.py:551
msgid "Barcode is already in use"
msgstr ""
-#: order/serializers.py:569
+#: order/serializers.py:575
msgid "An integer quantity must be provided for trackable parts"
msgstr ""
-#: order/serializers.py:623 order/serializers.py:1604
+#: order/serializers.py:629 order/serializers.py:1610
msgid "Line items must be provided"
msgstr ""
-#: order/serializers.py:640
+#: order/serializers.py:646
msgid "Destination location must be specified"
msgstr ""
-#: order/serializers.py:651
+#: order/serializers.py:657
msgid "Supplied barcode values must be unique"
msgstr ""
-#: order/serializers.py:950
+#: order/serializers.py:956
msgid "Sale price currency"
msgstr ""
-#: order/serializers.py:1007
+#: order/serializers.py:1013
msgid "No shipment details provided"
msgstr ""
-#: order/serializers.py:1071 order/serializers.py:1225
+#: order/serializers.py:1077 order/serializers.py:1231
msgid "Line item is not associated with this order"
msgstr ""
-#: order/serializers.py:1093
+#: order/serializers.py:1099
msgid "Quantity must be positive"
msgstr ""
-#: order/serializers.py:1238
+#: order/serializers.py:1244
msgid "Enter serial numbers to allocate"
msgstr ""
-#: order/serializers.py:1260 order/serializers.py:1384
+#: order/serializers.py:1266 order/serializers.py:1390
msgid "Shipment has already been shipped"
msgstr ""
-#: order/serializers.py:1263 order/serializers.py:1387
+#: order/serializers.py:1269 order/serializers.py:1393
msgid "Shipment is not associated with this order"
msgstr ""
-#: order/serializers.py:1317
+#: order/serializers.py:1323
msgid "No match found for the following serial numbers"
msgstr ""
-#: order/serializers.py:1327
+#: order/serializers.py:1333
msgid "The following serial numbers are already allocated"
msgstr ""
-#: order/serializers.py:1555
+#: order/serializers.py:1561
msgid "Return order line item"
msgstr ""
-#: order/serializers.py:1562
+#: order/serializers.py:1568
msgid "Line item does not match return order"
msgstr ""
-#: order/serializers.py:1565
+#: order/serializers.py:1571
msgid "Line item has already been received"
msgstr ""
-#: order/serializers.py:1597
+#: order/serializers.py:1603
msgid "Items can only be received against orders which are in progress"
msgstr ""
-#: order/serializers.py:1678
+#: order/serializers.py:1684
msgid "Line price currency"
msgstr ""
@@ -4957,82 +5013,74 @@ msgid "Issue Order"
msgstr ""
#: order/templates/order/order_base.html:83
-msgid "Receive items"
-msgstr ""
-
-#: order/templates/order/order_base.html:85
-msgid "Receive Items"
-msgstr ""
-
-#: order/templates/order/order_base.html:87
#: order/templates/order/return_order_base.html:87
msgid "Mark order as complete"
msgstr ""
-#: order/templates/order/order_base.html:88
+#: order/templates/order/order_base.html:84
#: order/templates/order/return_order_base.html:88
#: order/templates/order/sales_order_base.html:94
msgid "Complete Order"
msgstr ""
-#: order/templates/order/order_base.html:95
+#: order/templates/order/order_base.html:91
msgid "Supplier part thumbnail"
msgstr ""
-#: order/templates/order/order_base.html:110
+#: order/templates/order/order_base.html:106
#: order/templates/order/return_order_base.html:102
#: order/templates/order/sales_order_base.html:107
msgid "Order Reference"
msgstr ""
-#: order/templates/order/order_base.html:115
+#: order/templates/order/order_base.html:111
#: order/templates/order/return_order_base.html:107
#: order/templates/order/sales_order_base.html:112
msgid "Order Description"
msgstr ""
-#: order/templates/order/order_base.html:122
+#: order/templates/order/order_base.html:118
#: order/templates/order/return_order_base.html:114
#: order/templates/order/sales_order_base.html:119
msgid "Order Status"
msgstr ""
-#: order/templates/order/order_base.html:145
+#: order/templates/order/order_base.html:141
msgid "No suppplier information available"
msgstr ""
-#: order/templates/order/order_base.html:158
+#: order/templates/order/order_base.html:154
#: order/templates/order/sales_order_base.html:158
msgid "Completed Line Items"
msgstr ""
-#: order/templates/order/order_base.html:164
+#: order/templates/order/order_base.html:160
#: order/templates/order/sales_order_base.html:164
#: order/templates/order/sales_order_base.html:174
msgid "Incomplete"
msgstr ""
-#: order/templates/order/order_base.html:183
+#: order/templates/order/order_base.html:179
#: order/templates/order/return_order_base.html:158
#: report/templates/report/inventree_build_order_base.html:121
msgid "Issued"
msgstr ""
-#: order/templates/order/order_base.html:221
+#: order/templates/order/order_base.html:224
msgid "Total cost"
msgstr ""
-#: order/templates/order/order_base.html:225
-#: order/templates/order/return_order_base.html:193
-#: order/templates/order/sales_order_base.html:233
+#: order/templates/order/order_base.html:228
+#: order/templates/order/return_order_base.html:200
+#: order/templates/order/sales_order_base.html:240
msgid "Total cost could not be calculated"
msgstr ""
-#: order/templates/order/order_base.html:331
+#: order/templates/order/order_base.html:318
msgid "Purchase Order QR Code"
msgstr ""
-#: order/templates/order/order_base.html:343
+#: order/templates/order/order_base.html:330
msgid "Link Barcode to Purchase Order"
msgstr ""
@@ -5085,13 +5133,13 @@ msgstr ""
#: part/templates/part/import_wizard/ajax_match_references.html:42
#: part/templates/part/import_wizard/match_fields.html:71
#: part/templates/part/import_wizard/match_references.html:49
-#: templates/js/translated/bom.js:132 templates/js/translated/build.js:512
-#: templates/js/translated/build.js:2348
-#: templates/js/translated/purchase_order.js:692
-#: templates/js/translated/purchase_order.js:1206
-#: templates/js/translated/return_order.js:494
-#: templates/js/translated/sales_order.js:1097
-#: templates/js/translated/stock.js:681 templates/js/translated/stock.js:850
+#: templates/js/translated/bom.js:133 templates/js/translated/build.js:518
+#: templates/js/translated/build.js:1555
+#: templates/js/translated/purchase_order.js:703
+#: templates/js/translated/purchase_order.js:1221
+#: templates/js/translated/return_order.js:506
+#: templates/js/translated/sales_order.js:1109
+#: templates/js/translated/stock.js:680 templates/js/translated/stock.js:849
#: templates/patterns/wizard/match_fields.html:70
msgid "Remove row"
msgstr ""
@@ -5152,9 +5200,9 @@ msgstr ""
#: order/templates/order/purchase_order_detail.html:27
#: order/templates/order/return_order_detail.html:24
#: order/templates/order/sales_order_detail.html:24
-#: templates/js/translated/purchase_order.js:419
-#: templates/js/translated/return_order.js:447
-#: templates/js/translated/sales_order.js:222
+#: templates/js/translated/purchase_order.js:430
+#: templates/js/translated/return_order.js:459
+#: templates/js/translated/sales_order.js:234
msgid "Add Line Item"
msgstr ""
@@ -5165,30 +5213,25 @@ msgstr ""
msgid "Receive Line Items"
msgstr ""
-#: order/templates/order/purchase_order_detail.html:49
#: order/templates/order/purchase_order_detail.html:50
-msgid "Delete Line Items"
-msgstr ""
-
-#: order/templates/order/purchase_order_detail.html:66
-#: order/templates/order/return_order_detail.html:47
-#: order/templates/order/sales_order_detail.html:43
+#: order/templates/order/return_order_detail.html:45
+#: order/templates/order/sales_order_detail.html:41
msgid "Extra Lines"
msgstr ""
-#: order/templates/order/purchase_order_detail.html:72
-#: order/templates/order/return_order_detail.html:53
-#: order/templates/order/sales_order_detail.html:49
+#: order/templates/order/purchase_order_detail.html:56
+#: order/templates/order/return_order_detail.html:51
+#: order/templates/order/sales_order_detail.html:47
msgid "Add Extra Line"
msgstr ""
-#: order/templates/order/purchase_order_detail.html:92
+#: order/templates/order/purchase_order_detail.html:74
msgid "Received Items"
msgstr ""
-#: order/templates/order/purchase_order_detail.html:117
-#: order/templates/order/return_order_detail.html:89
-#: order/templates/order/sales_order_detail.html:149
+#: order/templates/order/purchase_order_detail.html:99
+#: order/templates/order/return_order_detail.html:85
+#: order/templates/order/sales_order_detail.html:139
msgid "Order Notes"
msgstr ""
@@ -5208,29 +5251,29 @@ msgstr ""
#: order/templates/order/return_order_base.html:139
#: order/templates/order/sales_order_base.html:152
-#: templates/js/translated/return_order.js:297
-#: templates/js/translated/sales_order.js:785
+#: templates/js/translated/return_order.js:309
+#: templates/js/translated/sales_order.js:797
msgid "Customer Reference"
msgstr ""
-#: order/templates/order/return_order_base.html:189
-#: order/templates/order/sales_order_base.html:229
+#: order/templates/order/return_order_base.html:196
+#: order/templates/order/sales_order_base.html:236
#: part/templates/part/part_pricing.html:32
#: part/templates/part/part_pricing.html:58
#: part/templates/part/part_pricing.html:99
#: part/templates/part/part_pricing.html:114
-#: templates/js/translated/part.js:1046
-#: templates/js/translated/purchase_order.js:1712
-#: templates/js/translated/return_order.js:369
-#: templates/js/translated/sales_order.js:843
+#: templates/js/translated/part.js:1045
+#: templates/js/translated/purchase_order.js:1727
+#: templates/js/translated/return_order.js:381
+#: templates/js/translated/sales_order.js:855
msgid "Total Cost"
msgstr ""
-#: order/templates/order/return_order_base.html:257
+#: order/templates/order/return_order_base.html:264
msgid "Return Order QR Code"
msgstr ""
-#: order/templates/order/return_order_base.html:269
+#: order/templates/order/return_order_base.html:276
msgid "Link Barcode to Return Order"
msgstr ""
@@ -5248,7 +5291,7 @@ msgid "Ship Items"
msgstr ""
#: order/templates/order/sales_order_base.html:93
-#: templates/js/translated/sales_order.js:469
+#: templates/js/translated/sales_order.js:481
msgid "Complete Sales Order"
msgstr ""
@@ -5257,16 +5300,16 @@ msgid "This Sales Order has not been fully allocated"
msgstr ""
#: order/templates/order/sales_order_base.html:170
-#: order/templates/order/sales_order_detail.html:105
+#: order/templates/order/sales_order_detail.html:99
#: order/templates/order/so_sidebar.html:11
msgid "Completed Shipments"
msgstr ""
-#: order/templates/order/sales_order_base.html:306
+#: order/templates/order/sales_order_base.html:313
msgid "Sales Order QR Code"
msgstr ""
-#: order/templates/order/sales_order_base.html:318
+#: order/templates/order/sales_order_base.html:325
msgid "Link Barcode to Sales Order"
msgstr ""
@@ -5274,18 +5317,17 @@ msgstr ""
msgid "Sales Order Items"
msgstr ""
-#: order/templates/order/sales_order_detail.html:71
-#: order/templates/order/so_sidebar.html:8 templates/InvenTree/index.html:332
+#: order/templates/order/sales_order_detail.html:67
+#: order/templates/order/so_sidebar.html:8 templates/InvenTree/index.html:284
msgid "Pending Shipments"
msgstr ""
-#: order/templates/order/sales_order_detail.html:75
-#: templates/attachment_table.html:6 templates/js/translated/bom.js:1236
-#: templates/js/translated/build.js:2249
+#: order/templates/order/sales_order_detail.html:71
+#: templates/js/translated/bom.js:1256 templates/js/translated/filters.js:297
msgid "Actions"
msgstr ""
-#: order/templates/order/sales_order_detail.html:84
+#: order/templates/order/sales_order_detail.html:80
msgid "New Shipment"
msgstr ""
@@ -5311,12 +5353,12 @@ msgstr ""
msgid "Updated {part} unit-price to {price} and quantity to {qty}"
msgstr ""
-#: part/admin.py:33 part/admin.py:273 part/models.py:3667 part/tasks.py:288
+#: part/admin.py:33 part/admin.py:273 part/models.py:3716 part/tasks.py:288
#: stock/admin.py:101
msgid "Part ID"
msgstr ""
-#: part/admin.py:34 part/admin.py:275 part/models.py:3671 part/tasks.py:289
+#: part/admin.py:34 part/admin.py:275 part/models.py:3720 part/tasks.py:289
#: stock/admin.py:102
msgid "Part Name"
msgstr ""
@@ -5325,19 +5367,19 @@ msgstr ""
msgid "Part Description"
msgstr ""
-#: part/admin.py:36 part/models.py:889 part/templates/part/part_base.html:271
-#: templates/js/translated/part.js:1200 templates/js/translated/part.js:2233
-#: templates/js/translated/stock.js:1795
+#: part/admin.py:36 part/models.py:890 part/templates/part/part_base.html:271
+#: templates/js/translated/part.js:1199 templates/js/translated/part.js:2309
+#: templates/js/translated/stock.js:1952
msgid "IPN"
msgstr ""
-#: part/admin.py:37 part/models.py:896 part/templates/part/part_base.html:279
-#: report/models.py:179 templates/js/translated/part.js:1205
-#: templates/js/translated/part.js:2239
+#: part/admin.py:37 part/models.py:897 part/templates/part/part_base.html:279
+#: report/models.py:179 templates/js/translated/part.js:1204
+#: templates/js/translated/part.js:2315
msgid "Revision"
msgstr ""
-#: part/admin.py:38 part/admin.py:198 part/models.py:875
+#: part/admin.py:38 part/admin.py:198 part/models.py:876
#: part/templates/part/category.html:93 part/templates/part/part_base.html:300
msgid "Keywords"
msgstr ""
@@ -5358,24 +5400,24 @@ msgstr ""
msgid "Default Supplier ID"
msgstr ""
-#: part/admin.py:46 part/models.py:864 part/templates/part/part_base.html:179
+#: part/admin.py:46 part/models.py:865 part/templates/part/part_base.html:179
msgid "Variant Of"
msgstr ""
-#: part/admin.py:47 part/models.py:980 part/templates/part/part_base.html:205
+#: part/admin.py:47 part/models.py:981 part/templates/part/part_base.html:205
msgid "Minimum Stock"
msgstr ""
#: part/admin.py:61 part/templates/part/part_base.html:199
-#: templates/js/translated/company.js:1299
-#: templates/js/translated/table_filters.js:301
+#: templates/js/translated/company.js:1720
+#: templates/js/translated/table_filters.js:307
msgid "In Stock"
msgstr ""
#: part/admin.py:62 part/bom.py:178 part/templates/part/part_base.html:212
-#: templates/js/translated/bom.js:1167 templates/js/translated/build.js:2191
-#: templates/js/translated/part.js:687 templates/js/translated/part.js:2123
-#: templates/js/translated/table_filters.js:140
+#: templates/js/translated/bom.js:1187 templates/js/translated/build.js:2541
+#: templates/js/translated/part.js:686 templates/js/translated/part.js:2122
+#: templates/js/translated/table_filters.js:146
msgid "On Order"
msgstr ""
@@ -5383,23 +5425,16 @@ msgstr ""
msgid "Used In"
msgstr ""
-#: part/admin.py:64 templates/js/translated/build.js:2203
-#: templates/js/translated/build.js:2465 templates/js/translated/build.js:3052
-#: templates/js/translated/sales_order.js:1906
-#: templates/js/translated/table_filters.js:488
-msgid "Allocated"
-msgstr ""
-
#: part/admin.py:65 part/templates/part/part_base.html:243 stock/admin.py:124
-#: templates/js/translated/part.js:692 templates/js/translated/part.js:2127
+#: templates/js/translated/part.js:691 templates/js/translated/part.js:2126
msgid "Building"
msgstr ""
-#: part/admin.py:66 part/models.py:2930 templates/js/translated/part.js:943
+#: part/admin.py:66 part/models.py:2964 templates/js/translated/part.js:942
msgid "Minimum Cost"
msgstr ""
-#: part/admin.py:67 part/models.py:2936 templates/js/translated/part.js:953
+#: part/admin.py:67 part/models.py:2970 templates/js/translated/part.js:952
msgid "Maximum Cost"
msgstr ""
@@ -5416,13 +5451,13 @@ msgstr ""
msgid "Category Path"
msgstr ""
-#: part/admin.py:202 part/models.py:392 part/templates/part/cat_link.html:3
-#: part/templates/part/category.html:23 part/templates/part/category.html:140
-#: part/templates/part/category.html:160
+#: part/admin.py:202 part/models.py:393 part/serializers.py:307
+#: part/templates/part/cat_link.html:3 part/templates/part/category.html:23
+#: part/templates/part/category.html:140 part/templates/part/category.html:160
#: part/templates/part/category_sidebar.html:9
-#: templates/InvenTree/index.html:86 templates/InvenTree/search.html:84
+#: templates/InvenTree/index.html:36 templates/InvenTree/search.html:84
#: templates/InvenTree/settings/sidebar.html:45
-#: templates/js/translated/part.js:2754 templates/js/translated/search.js:172
+#: templates/js/translated/part.js:2739 templates/js/translated/search.js:130
#: templates/navbar.html:24 users/models.py:38
msgid "Parts"
msgstr "Nguyên liệu"
@@ -5439,7 +5474,7 @@ msgstr ""
msgid "Parent IPN"
msgstr ""
-#: part/admin.py:274 part/models.py:3675
+#: part/admin.py:274 part/models.py:3724
msgid "Part IPN"
msgstr ""
@@ -5453,35 +5488,35 @@ msgstr ""
msgid "Maximum Price"
msgstr ""
-#: part/api.py:498
+#: part/api.py:501
msgid "Incoming Purchase Order"
msgstr ""
-#: part/api.py:518
+#: part/api.py:521
msgid "Outgoing Sales Order"
msgstr ""
-#: part/api.py:536
+#: part/api.py:539
msgid "Stock produced by Build Order"
msgstr ""
-#: part/api.py:622
+#: part/api.py:625
msgid "Stock required for Build Order"
msgstr ""
-#: part/api.py:770
+#: part/api.py:773
msgid "Valid"
msgstr ""
-#: part/api.py:771
+#: part/api.py:774
msgid "Validate entire Bill of Materials"
msgstr ""
-#: part/api.py:777
+#: part/api.py:780
msgid "This option must be selected"
msgstr ""
-#: part/bom.py:175 part/models.py:127 part/models.py:923
+#: part/bom.py:175 part/models.py:128 part/models.py:924
#: part/templates/part/category.html:115 part/templates/part/part_base.html:369
msgid "Default Location"
msgstr ""
@@ -5491,7 +5526,7 @@ msgid "Total Stock"
msgstr ""
#: part/bom.py:177 part/templates/part/part_base.html:194
-#: templates/js/translated/sales_order.js:1873
+#: templates/js/translated/sales_order.js:1885
msgid "Available Stock"
msgstr ""
@@ -5499,916 +5534,913 @@ msgstr ""
msgid "Input quantity for price calculation"
msgstr ""
-#: part/models.py:75 part/models.py:3616 part/templates/part/category.html:16
+#: part/models.py:76 part/models.py:3665 part/templates/part/category.html:16
#: part/templates/part/part_app_base.html:10
msgid "Part Category"
msgstr ""
-#: part/models.py:76 part/templates/part/category.html:135
-#: templates/InvenTree/search.html:97 templates/js/translated/search.js:200
+#: part/models.py:77 part/templates/part/category.html:135
+#: templates/InvenTree/search.html:97 templates/js/translated/search.js:158
#: users/models.py:37
msgid "Part Categories"
msgstr ""
-#: part/models.py:128
+#: part/models.py:129
msgid "Default location for parts in this category"
msgstr ""
-#: part/models.py:133 stock/models.py:124 templates/js/translated/stock.js:2520
-#: templates/js/translated/table_filters.js:209
-#: templates/js/translated/table_filters.js:229
+#: part/models.py:134 stock/models.py:124 templates/js/translated/stock.js:2651
+#: templates/js/translated/table_filters.js:215
+#: templates/js/translated/table_filters.js:235
msgid "Structural"
msgstr ""
-#: part/models.py:135
+#: part/models.py:136
msgid "Parts may not be directly assigned to a structural category, but may be assigned to child categories."
msgstr ""
-#: part/models.py:139
+#: part/models.py:140
msgid "Default keywords"
msgstr ""
-#: part/models.py:139
+#: part/models.py:140
msgid "Default keywords for parts in this category"
msgstr ""
-#: part/models.py:144 stock/models.py:113
+#: part/models.py:145 stock/models.py:113
msgid "Icon"
msgstr ""
-#: part/models.py:145 stock/models.py:114
+#: part/models.py:146 stock/models.py:114
msgid "Icon (optional)"
msgstr ""
-#: part/models.py:164
+#: part/models.py:165
msgid "You cannot make this part category structural because some parts are already assigned to it!"
msgstr ""
-#: part/models.py:475
+#: part/models.py:476
msgid "Invalid choice for parent part"
msgstr ""
-#: part/models.py:517 part/models.py:529
+#: part/models.py:518 part/models.py:530
#, python-brace-format
msgid "Part '{p1}' is used in BOM for '{p2}' (recursive)"
msgstr ""
-#: part/models.py:601
+#: part/models.py:602
#, python-brace-format
msgid "IPN must match regex pattern {pat}"
msgstr ""
-#: part/models.py:672
+#: part/models.py:673
msgid "Stock item with this serial number already exists"
msgstr ""
-#: part/models.py:803
+#: part/models.py:804
msgid "Duplicate IPN not allowed in part settings"
msgstr ""
-#: part/models.py:808
+#: part/models.py:809
msgid "Part with this Name, IPN and Revision already exists."
msgstr ""
-#: part/models.py:822
+#: part/models.py:823
msgid "Parts cannot be assigned to structural part categories!"
msgstr ""
-#: part/models.py:846 part/models.py:3672
+#: part/models.py:847 part/models.py:3721
msgid "Part name"
msgstr ""
-#: part/models.py:852
+#: part/models.py:853
msgid "Is Template"
msgstr ""
-#: part/models.py:853
+#: part/models.py:854
msgid "Is this part a template part?"
msgstr ""
-#: part/models.py:863
+#: part/models.py:864
msgid "Is this part a variant of another part?"
msgstr ""
-#: part/models.py:870
+#: part/models.py:871
msgid "Part description (optional)"
msgstr ""
-#: part/models.py:876
+#: part/models.py:877
msgid "Part keywords to improve visibility in search results"
msgstr ""
-#: part/models.py:883 part/models.py:3198 part/models.py:3615
-#: part/serializers.py:848 part/templates/part/part_base.html:262
+#: part/models.py:884 part/models.py:3232 part/models.py:3664
+#: part/serializers.py:320 part/serializers.py:910
+#: part/templates/part/part_base.html:262
#: templates/InvenTree/settings/settings_staff_js.html:204
#: templates/js/translated/notification.js:59
-#: templates/js/translated/part.js:2269 templates/js/translated/part.js:2481
+#: templates/js/translated/part.js:2345
msgid "Category"
msgstr ""
-#: part/models.py:884
+#: part/models.py:885
msgid "Part category"
msgstr ""
-#: part/models.py:890
+#: part/models.py:891
msgid "Internal Part Number"
msgstr ""
-#: part/models.py:895
+#: part/models.py:896
msgid "Part revision or version number"
msgstr ""
-#: part/models.py:921
+#: part/models.py:922
msgid "Where is this item normally stored?"
msgstr ""
-#: part/models.py:966 part/templates/part/part_base.html:378
+#: part/models.py:967 part/templates/part/part_base.html:378
msgid "Default Supplier"
msgstr ""
-#: part/models.py:967
+#: part/models.py:968
msgid "Default supplier part"
msgstr ""
-#: part/models.py:974
+#: part/models.py:975
msgid "Default Expiry"
msgstr ""
-#: part/models.py:975
+#: part/models.py:976
msgid "Expiry time (in days) for stock items of this part"
msgstr ""
-#: part/models.py:981
+#: part/models.py:982
msgid "Minimum allowed stock level"
msgstr ""
-#: part/models.py:988
+#: part/models.py:989
msgid "Units of measure for this part"
msgstr ""
-#: part/models.py:997
+#: part/models.py:998
msgid "Can this part be built from other parts?"
msgstr ""
-#: part/models.py:1003
+#: part/models.py:1004
msgid "Can this part be used to build other parts?"
msgstr ""
-#: part/models.py:1009
+#: part/models.py:1010
msgid "Does this part have tracking for unique items?"
msgstr ""
-#: part/models.py:1014
+#: part/models.py:1015
msgid "Can this part be purchased from external suppliers?"
msgstr ""
-#: part/models.py:1019
+#: part/models.py:1020
msgid "Can this part be sold to customers?"
msgstr ""
-#: part/models.py:1024
+#: part/models.py:1025
msgid "Is this part active?"
msgstr ""
-#: part/models.py:1029
+#: part/models.py:1030
msgid "Is this a virtual part, such as a software product or license?"
msgstr ""
-#: part/models.py:1031
+#: part/models.py:1032
msgid "BOM checksum"
msgstr ""
-#: part/models.py:1031
+#: part/models.py:1032
msgid "Stored BOM checksum"
msgstr ""
-#: part/models.py:1034
+#: part/models.py:1035
msgid "BOM checked by"
msgstr ""
-#: part/models.py:1036
+#: part/models.py:1037
msgid "BOM checked date"
msgstr ""
-#: part/models.py:1040
+#: part/models.py:1041
msgid "Creation User"
msgstr ""
-#: part/models.py:1042
+#: part/models.py:1043
msgid "User responsible for this part"
msgstr ""
-#: part/models.py:1046 part/templates/part/part_base.html:341
+#: part/models.py:1047 part/templates/part/part_base.html:341
#: stock/templates/stock/item_base.html:447
-#: templates/js/translated/part.js:2331
+#: templates/js/translated/part.js:2407
msgid "Last Stocktake"
msgstr ""
-#: part/models.py:1921
+#: part/models.py:1923
msgid "Sell multiple"
msgstr ""
-#: part/models.py:2853
+#: part/models.py:2887
msgid "Currency used to cache pricing calculations"
msgstr ""
-#: part/models.py:2870
+#: part/models.py:2904
msgid "Minimum BOM Cost"
msgstr ""
-#: part/models.py:2871
+#: part/models.py:2905
msgid "Minimum cost of component parts"
msgstr ""
-#: part/models.py:2876
+#: part/models.py:2910
msgid "Maximum BOM Cost"
msgstr ""
-#: part/models.py:2877
+#: part/models.py:2911
msgid "Maximum cost of component parts"
msgstr ""
-#: part/models.py:2882
+#: part/models.py:2916
msgid "Minimum Purchase Cost"
msgstr ""
-#: part/models.py:2883
+#: part/models.py:2917
msgid "Minimum historical purchase cost"
msgstr ""
-#: part/models.py:2888
+#: part/models.py:2922
msgid "Maximum Purchase Cost"
msgstr ""
-#: part/models.py:2889
+#: part/models.py:2923
msgid "Maximum historical purchase cost"
msgstr ""
-#: part/models.py:2894
+#: part/models.py:2928
msgid "Minimum Internal Price"
msgstr ""
-#: part/models.py:2895
+#: part/models.py:2929
msgid "Minimum cost based on internal price breaks"
msgstr ""
-#: part/models.py:2900
+#: part/models.py:2934
msgid "Maximum Internal Price"
msgstr ""
-#: part/models.py:2901
+#: part/models.py:2935
msgid "Maximum cost based on internal price breaks"
msgstr ""
-#: part/models.py:2906
+#: part/models.py:2940
msgid "Minimum Supplier Price"
msgstr ""
-#: part/models.py:2907
+#: part/models.py:2941
msgid "Minimum price of part from external suppliers"
msgstr ""
-#: part/models.py:2912
+#: part/models.py:2946
msgid "Maximum Supplier Price"
msgstr ""
-#: part/models.py:2913
+#: part/models.py:2947
msgid "Maximum price of part from external suppliers"
msgstr ""
-#: part/models.py:2918
+#: part/models.py:2952
msgid "Minimum Variant Cost"
msgstr ""
-#: part/models.py:2919
+#: part/models.py:2953
msgid "Calculated minimum cost of variant parts"
msgstr ""
-#: part/models.py:2924
+#: part/models.py:2958
msgid "Maximum Variant Cost"
msgstr ""
-#: part/models.py:2925
+#: part/models.py:2959
msgid "Calculated maximum cost of variant parts"
msgstr ""
-#: part/models.py:2931
+#: part/models.py:2965
msgid "Calculated overall minimum cost"
msgstr ""
-#: part/models.py:2937
+#: part/models.py:2971
msgid "Calculated overall maximum cost"
msgstr ""
-#: part/models.py:2942
+#: part/models.py:2976
msgid "Minimum Sale Price"
msgstr ""
-#: part/models.py:2943
+#: part/models.py:2977
msgid "Minimum sale price based on price breaks"
msgstr ""
-#: part/models.py:2948
+#: part/models.py:2982
msgid "Maximum Sale Price"
msgstr ""
-#: part/models.py:2949
+#: part/models.py:2983
msgid "Maximum sale price based on price breaks"
msgstr ""
-#: part/models.py:2954
+#: part/models.py:2988
msgid "Minimum Sale Cost"
msgstr ""
-#: part/models.py:2955
+#: part/models.py:2989
msgid "Minimum historical sale price"
msgstr ""
-#: part/models.py:2960
+#: part/models.py:2994
msgid "Maximum Sale Cost"
msgstr ""
-#: part/models.py:2961
+#: part/models.py:2995
msgid "Maximum historical sale price"
msgstr ""
-#: part/models.py:2980
+#: part/models.py:3014
msgid "Part for stocktake"
msgstr ""
-#: part/models.py:2985
+#: part/models.py:3019
msgid "Item Count"
msgstr ""
-#: part/models.py:2986
+#: part/models.py:3020
msgid "Number of individual stock entries at time of stocktake"
msgstr ""
-#: part/models.py:2993
+#: part/models.py:3027
msgid "Total available stock at time of stocktake"
msgstr ""
-#: part/models.py:2997 part/models.py:3080
+#: part/models.py:3031 part/models.py:3114
#: part/templates/part/part_scheduling.html:13
#: report/templates/report/inventree_test_report_base.html:106
#: templates/InvenTree/settings/plugin_settings.html:37
#: templates/InvenTree/settings/settings_staff_js.html:360
-#: templates/js/translated/part.js:1059 templates/js/translated/pricing.js:812
+#: templates/js/translated/part.js:1058 templates/js/translated/pricing.js:812
#: templates/js/translated/pricing.js:936
-#: templates/js/translated/purchase_order.js:1691
-#: templates/js/translated/stock.js:2558
+#: templates/js/translated/purchase_order.js:1706
+#: templates/js/translated/stock.js:2689
msgid "Date"
msgstr ""
-#: part/models.py:2998
+#: part/models.py:3032
msgid "Date stocktake was performed"
msgstr ""
-#: part/models.py:3006
+#: part/models.py:3040
msgid "Additional notes"
msgstr ""
-#: part/models.py:3014
+#: part/models.py:3048
msgid "User who performed this stocktake"
msgstr ""
-#: part/models.py:3019
+#: part/models.py:3053
msgid "Minimum Stock Cost"
msgstr ""
-#: part/models.py:3020
+#: part/models.py:3054
msgid "Estimated minimum cost of stock on hand"
msgstr ""
-#: part/models.py:3025
+#: part/models.py:3059
msgid "Maximum Stock Cost"
msgstr ""
-#: part/models.py:3026
+#: part/models.py:3060
msgid "Estimated maximum cost of stock on hand"
msgstr ""
-#: part/models.py:3087 templates/InvenTree/settings/settings_staff_js.html:349
+#: part/models.py:3121 templates/InvenTree/settings/settings_staff_js.html:349
msgid "Report"
msgstr ""
-#: part/models.py:3088
+#: part/models.py:3122
msgid "Stocktake report file (generated internally)"
msgstr ""
-#: part/models.py:3093 templates/InvenTree/settings/settings_staff_js.html:356
+#: part/models.py:3127 templates/InvenTree/settings/settings_staff_js.html:356
msgid "Part Count"
msgstr ""
-#: part/models.py:3094
+#: part/models.py:3128
msgid "Number of parts covered by stocktake"
msgstr ""
-#: part/models.py:3102
+#: part/models.py:3136
msgid "User who requested this stocktake report"
msgstr ""
-#: part/models.py:3238
+#: part/models.py:3272
msgid "Test templates can only be created for trackable parts"
msgstr ""
-#: part/models.py:3255
+#: part/models.py:3289
msgid "Test with this name already exists for this part"
msgstr ""
-#: part/models.py:3275 templates/js/translated/part.js:2821
+#: part/models.py:3309 templates/js/translated/part.js:2806
msgid "Test Name"
msgstr ""
-#: part/models.py:3276
+#: part/models.py:3310
msgid "Enter a name for the test"
msgstr ""
-#: part/models.py:3281
+#: part/models.py:3315
msgid "Test Description"
msgstr ""
-#: part/models.py:3282
+#: part/models.py:3316
msgid "Enter description for this test"
msgstr ""
-#: part/models.py:3287 templates/js/translated/part.js:2830
-#: templates/js/translated/table_filters.js:423
+#: part/models.py:3321 templates/js/translated/part.js:2815
+#: templates/js/translated/table_filters.js:429
msgid "Required"
msgstr ""
-#: part/models.py:3288
+#: part/models.py:3322
msgid "Is this test required to pass?"
msgstr ""
-#: part/models.py:3293 templates/js/translated/part.js:2838
+#: part/models.py:3327 templates/js/translated/part.js:2823
msgid "Requires Value"
msgstr ""
-#: part/models.py:3294
+#: part/models.py:3328
msgid "Does this test require a value when adding a test result?"
msgstr ""
-#: part/models.py:3299 templates/js/translated/part.js:2845
+#: part/models.py:3333 templates/js/translated/part.js:2830
msgid "Requires Attachment"
msgstr ""
-#: part/models.py:3300
+#: part/models.py:3334
msgid "Does this test require a file attachment when adding a test result?"
msgstr ""
-#: part/models.py:3346
+#: part/models.py:3380
msgid "Checkbox parameters cannot have units"
msgstr ""
-#: part/models.py:3351
+#: part/models.py:3385
msgid "Checkbox parameters cannot have choices"
msgstr ""
-#: part/models.py:3369
+#: part/models.py:3403
msgid "Choices must be unique"
msgstr ""
-#: part/models.py:3385
+#: part/models.py:3419
msgid "Parameter template name must be unique"
msgstr ""
-#: part/models.py:3401
+#: part/models.py:3435
msgid "Parameter Name"
msgstr ""
-#: part/models.py:3407
+#: part/models.py:3441
msgid "Physical units for this parameter"
msgstr ""
-#: part/models.py:3417
+#: part/models.py:3451
msgid "Parameter description"
msgstr ""
-#: part/models.py:3423 templates/js/translated/part.js:1600
-#: templates/js/translated/table_filters.js:734
+#: part/models.py:3457 templates/js/translated/part.js:1599
+#: templates/js/translated/table_filters.js:756
msgid "Checkbox"
msgstr ""
-#: part/models.py:3424
+#: part/models.py:3458
msgid "Is this parameter a checkbox?"
msgstr ""
-#: part/models.py:3429 templates/js/translated/part.js:1609
+#: part/models.py:3463 templates/js/translated/part.js:1608
msgid "Choices"
msgstr ""
-#: part/models.py:3430
+#: part/models.py:3464
msgid "Valid choices for this parameter (comma-separated)"
msgstr ""
-#: part/models.py:3511
+#: part/models.py:3545
msgid "Invalid choice for parameter value"
msgstr ""
-#: part/models.py:3555
+#: part/models.py:3589
msgid "Parent Part"
msgstr ""
-#: part/models.py:3560 part/models.py:3621 part/models.py:3622
+#: part/models.py:3594 part/models.py:3670 part/models.py:3671
#: templates/InvenTree/settings/settings_staff_js.html:199
msgid "Parameter Template"
msgstr ""
-#: part/models.py:3565
+#: part/models.py:3599
msgid "Data"
msgstr ""
-#: part/models.py:3565
+#: part/models.py:3599
msgid "Parameter Value"
msgstr ""
-#: part/models.py:3626 templates/InvenTree/settings/settings_staff_js.html:208
+#: part/models.py:3675 templates/InvenTree/settings/settings_staff_js.html:208
msgid "Default Value"
msgstr ""
-#: part/models.py:3627
+#: part/models.py:3676
msgid "Default Parameter Value"
msgstr ""
-#: part/models.py:3664
+#: part/models.py:3713
msgid "Part ID or part name"
msgstr ""
-#: part/models.py:3668
+#: part/models.py:3717
msgid "Unique part ID value"
msgstr ""
-#: part/models.py:3676
+#: part/models.py:3725
msgid "Part IPN value"
msgstr ""
-#: part/models.py:3679
+#: part/models.py:3728
msgid "Level"
msgstr ""
-#: part/models.py:3680
+#: part/models.py:3729
msgid "BOM level"
msgstr ""
-#: part/models.py:3764
+#: part/models.py:3735 part/models.py:4113
+msgid "BOM Item"
+msgstr ""
+
+#: part/models.py:3808
msgid "Select parent part"
msgstr ""
-#: part/models.py:3772
+#: part/models.py:3816
msgid "Sub part"
msgstr ""
-#: part/models.py:3773
+#: part/models.py:3817
msgid "Select part to be used in BOM"
msgstr ""
-#: part/models.py:3779
+#: part/models.py:3823
msgid "BOM quantity for this BOM item"
msgstr ""
-#: part/models.py:3783 part/templates/part/upload_bom.html:58
-#: templates/js/translated/bom.js:971 templates/js/translated/bom.js:998
-#: templates/js/translated/build.js:2113
-#: templates/js/translated/table_filters.js:156
-#: templates/js/translated/table_filters.js:185
-#: templates/js/translated/table_filters.js:500
-msgid "Optional"
-msgstr ""
-
-#: part/models.py:3784
+#: part/models.py:3828
msgid "This BOM item is optional"
msgstr ""
-#: part/models.py:3789 templates/js/translated/bom.js:967
-#: templates/js/translated/bom.js:1007 templates/js/translated/build.js:2104
-#: templates/js/translated/table_filters.js:160
-#: templates/js/translated/table_filters.js:496
-msgid "Consumable"
-msgstr ""
-
-#: part/models.py:3790
+#: part/models.py:3834
msgid "This BOM item is consumable (it is not tracked in build orders)"
msgstr ""
-#: part/models.py:3794 part/templates/part/upload_bom.html:55
+#: part/models.py:3838 part/templates/part/upload_bom.html:55
msgid "Overage"
msgstr ""
-#: part/models.py:3795
+#: part/models.py:3839
msgid "Estimated build wastage quantity (absolute or percentage)"
msgstr ""
-#: part/models.py:3798
+#: part/models.py:3842
msgid "BOM item reference"
msgstr ""
-#: part/models.py:3801
+#: part/models.py:3845
msgid "BOM item notes"
msgstr ""
-#: part/models.py:3805
+#: part/models.py:3849
msgid "Checksum"
msgstr ""
-#: part/models.py:3805
+#: part/models.py:3849
msgid "BOM line checksum"
msgstr ""
-#: part/models.py:3810 templates/js/translated/table_filters.js:144
+#: part/models.py:3854 templates/js/translated/table_filters.js:150
msgid "Validated"
msgstr ""
-#: part/models.py:3811
+#: part/models.py:3855
msgid "This BOM item has been validated"
msgstr ""
-#: part/models.py:3816 part/templates/part/upload_bom.html:57
-#: templates/js/translated/bom.js:1024
-#: templates/js/translated/table_filters.js:148
-#: templates/js/translated/table_filters.js:181
+#: part/models.py:3860 part/templates/part/upload_bom.html:57
+#: templates/js/translated/bom.js:1042
+#: templates/js/translated/table_filters.js:154
+#: templates/js/translated/table_filters.js:187
msgid "Gets inherited"
msgstr ""
-#: part/models.py:3817
+#: part/models.py:3861
msgid "This BOM item is inherited by BOMs for variant parts"
msgstr ""
-#: part/models.py:3822 part/templates/part/upload_bom.html:56
-#: templates/js/translated/bom.js:1016
+#: part/models.py:3866 part/templates/part/upload_bom.html:56
+#: templates/js/translated/bom.js:1034
msgid "Allow Variants"
msgstr ""
-#: part/models.py:3823
+#: part/models.py:3867
msgid "Stock items for variant parts can be used for this BOM item"
msgstr ""
-#: part/models.py:3909 stock/models.py:577
+#: part/models.py:3953 stock/models.py:577
msgid "Quantity must be integer value for trackable parts"
msgstr ""
-#: part/models.py:3918 part/models.py:3920
+#: part/models.py:3962 part/models.py:3964
msgid "Sub part must be specified"
msgstr ""
-#: part/models.py:4036
+#: part/models.py:4080
msgid "BOM Item Substitute"
msgstr ""
-#: part/models.py:4057
+#: part/models.py:4101
msgid "Substitute part cannot be the same as the master part"
msgstr ""
-#: part/models.py:4070
+#: part/models.py:4114
msgid "Parent BOM item"
msgstr ""
-#: part/models.py:4078
+#: part/models.py:4122
msgid "Substitute part"
msgstr ""
-#: part/models.py:4093
+#: part/models.py:4137
msgid "Part 1"
msgstr ""
-#: part/models.py:4097
+#: part/models.py:4141
msgid "Part 2"
msgstr ""
-#: part/models.py:4097
+#: part/models.py:4141
msgid "Select Related Part"
msgstr ""
-#: part/models.py:4115
+#: part/models.py:4159
msgid "Part relationship cannot be created between a part and itself"
msgstr ""
-#: part/models.py:4119
+#: part/models.py:4163
msgid "Duplicate relationship already exists"
msgstr ""
-#: part/serializers.py:152 part/serializers.py:175 stock/serializers.py:257
+#: part/serializers.py:152 part/serializers.py:175 stock/serializers.py:319
msgid "Purchase currency of this stock item"
msgstr ""
-#: part/serializers.py:302
+#: part/serializers.py:313
+msgid "No parts selected"
+msgstr ""
+
+#: part/serializers.py:321
+msgid "Select category"
+msgstr ""
+
+#: part/serializers.py:352
msgid "Original Part"
msgstr ""
-#: part/serializers.py:302
+#: part/serializers.py:352
msgid "Select original part to duplicate"
msgstr ""
-#: part/serializers.py:307
+#: part/serializers.py:357
msgid "Copy Image"
msgstr ""
-#: part/serializers.py:307
+#: part/serializers.py:357
msgid "Copy image from original part"
msgstr ""
-#: part/serializers.py:312 part/templates/part/detail.html:296
+#: part/serializers.py:362 part/templates/part/detail.html:277
msgid "Copy BOM"
msgstr ""
-#: part/serializers.py:312
+#: part/serializers.py:362
msgid "Copy bill of materials from original part"
msgstr ""
-#: part/serializers.py:317
+#: part/serializers.py:367
msgid "Copy Parameters"
msgstr "Sao chép thông số"
-#: part/serializers.py:317
+#: part/serializers.py:367
msgid "Copy parameter data from original part"
msgstr ""
-#: part/serializers.py:327
+#: part/serializers.py:377
msgid "Initial Stock Quantity"
msgstr ""
-#: part/serializers.py:327
+#: part/serializers.py:377
msgid "Specify initial stock quantity for this Part. If quantity is zero, no stock is added."
msgstr ""
-#: part/serializers.py:333
+#: part/serializers.py:383
msgid "Initial Stock Location"
msgstr ""
-#: part/serializers.py:333
+#: part/serializers.py:383
msgid "Specify initial stock location for this Part"
msgstr ""
-#: part/serializers.py:343
+#: part/serializers.py:393
msgid "Select supplier (or leave blank to skip)"
msgstr ""
-#: part/serializers.py:354
+#: part/serializers.py:404
msgid "Select manufacturer (or leave blank to skip)"
msgstr ""
-#: part/serializers.py:360
+#: part/serializers.py:410
msgid "Manufacturer part number"
msgstr ""
-#: part/serializers.py:367
+#: part/serializers.py:417
msgid "Selected company is not a valid supplier"
msgstr ""
-#: part/serializers.py:375
+#: part/serializers.py:425
msgid "Selected company is not a valid manufacturer"
msgstr ""
-#: part/serializers.py:387
+#: part/serializers.py:437
msgid "Manufacturer part matching this MPN already exists"
msgstr ""
-#: part/serializers.py:395
+#: part/serializers.py:445
msgid "Supplier part matching this SKU already exists"
msgstr ""
-#: part/serializers.py:620 part/templates/part/copy_part.html:9
-#: templates/js/translated/part.js:449
+#: part/serializers.py:682 part/templates/part/copy_part.html:9
+#: templates/js/translated/part.js:448
msgid "Duplicate Part"
msgstr ""
-#: part/serializers.py:620
+#: part/serializers.py:682
msgid "Copy initial data from another Part"
msgstr ""
-#: part/serializers.py:625 templates/js/translated/part.js:103
+#: part/serializers.py:687 templates/js/translated/part.js:102
msgid "Initial Stock"
msgstr ""
-#: part/serializers.py:625
+#: part/serializers.py:687
msgid "Create Part with initial stock quantity"
msgstr ""
-#: part/serializers.py:630
+#: part/serializers.py:692
msgid "Supplier Information"
msgstr ""
-#: part/serializers.py:630
+#: part/serializers.py:692
msgid "Add initial supplier information for this part"
msgstr ""
-#: part/serializers.py:636
+#: part/serializers.py:698
msgid "Copy Category Parameters"
msgstr "Sao chép thông số nhóm hàng"
-#: part/serializers.py:637
+#: part/serializers.py:699
msgid "Copy parameter templates from selected part category"
msgstr ""
-#: part/serializers.py:842
+#: part/serializers.py:904
msgid "Limit stocktake report to a particular part, and any variant parts"
msgstr ""
-#: part/serializers.py:848
+#: part/serializers.py:910
msgid "Limit stocktake report to a particular part category, and any child categories"
msgstr ""
-#: part/serializers.py:854
+#: part/serializers.py:916
msgid "Limit stocktake report to a particular stock location, and any child locations"
msgstr ""
-#: part/serializers.py:859
+#: part/serializers.py:921
msgid "Generate Report"
msgstr ""
-#: part/serializers.py:860
+#: part/serializers.py:922
msgid "Generate report file containing calculated stocktake data"
msgstr ""
-#: part/serializers.py:865
+#: part/serializers.py:927
msgid "Update Parts"
msgstr ""
-#: part/serializers.py:866
+#: part/serializers.py:928
msgid "Update specified parts with calculated stocktake data"
msgstr ""
-#: part/serializers.py:874
+#: part/serializers.py:936
msgid "Stocktake functionality is not enabled"
msgstr ""
-#: part/serializers.py:963
+#: part/serializers.py:1025
msgid "Update"
msgstr ""
-#: part/serializers.py:964
+#: part/serializers.py:1026
msgid "Update pricing for this part"
msgstr ""
-#: part/serializers.py:1246
+#: part/serializers.py:1308
msgid "Select part to copy BOM from"
msgstr ""
-#: part/serializers.py:1254
+#: part/serializers.py:1316
msgid "Remove Existing Data"
msgstr ""
-#: part/serializers.py:1255
+#: part/serializers.py:1317
msgid "Remove existing BOM items before copying"
msgstr ""
-#: part/serializers.py:1260
+#: part/serializers.py:1322
msgid "Include Inherited"
msgstr ""
-#: part/serializers.py:1261
+#: part/serializers.py:1323
msgid "Include BOM items which are inherited from templated parts"
msgstr ""
-#: part/serializers.py:1266
+#: part/serializers.py:1328
msgid "Skip Invalid Rows"
msgstr ""
-#: part/serializers.py:1267
+#: part/serializers.py:1329
msgid "Enable this option to skip invalid rows"
msgstr ""
-#: part/serializers.py:1272
+#: part/serializers.py:1334
msgid "Copy Substitute Parts"
msgstr ""
-#: part/serializers.py:1273
+#: part/serializers.py:1335
msgid "Copy substitute parts when duplicate BOM items"
msgstr ""
-#: part/serializers.py:1313
+#: part/serializers.py:1375
msgid "Clear Existing BOM"
msgstr ""
-#: part/serializers.py:1314
+#: part/serializers.py:1376
msgid "Delete existing BOM items before uploading"
msgstr ""
-#: part/serializers.py:1344
+#: part/serializers.py:1406
msgid "No part column specified"
msgstr ""
-#: part/serializers.py:1387
+#: part/serializers.py:1449
msgid "Multiple matching parts found"
msgstr ""
-#: part/serializers.py:1390
+#: part/serializers.py:1452
msgid "No matching part found"
msgstr ""
-#: part/serializers.py:1393
+#: part/serializers.py:1455
msgid "Part is not designated as a component"
msgstr ""
-#: part/serializers.py:1402
+#: part/serializers.py:1464
msgid "Quantity not provided"
msgstr ""
-#: part/serializers.py:1410
+#: part/serializers.py:1472
msgid "Invalid quantity"
msgstr ""
-#: part/serializers.py:1431
+#: part/serializers.py:1493
msgid "At least one BOM item is required"
msgstr ""
@@ -6421,9 +6453,9 @@ msgstr ""
msgid "The available stock for {part.name} has fallen below the configured minimum level"
msgstr ""
-#: part/tasks.py:294 templates/js/translated/part.js:1040
-#: templates/js/translated/part.js:1793 templates/js/translated/part.js:1848
-#: templates/js/translated/purchase_order.js:2052
+#: part/tasks.py:294 templates/js/translated/part.js:1039
+#: templates/js/translated/part.js:1792 templates/js/translated/part.js:1847
+#: templates/js/translated/purchase_order.js:2062
msgid "Total Quantity"
msgstr ""
@@ -6461,14 +6493,6 @@ msgstr ""
msgid "The BOM for %(part)s has not been validated."
msgstr ""
-#: part/templates/part/bom.html:30 part/templates/part/detail.html:291
-msgid "BOM actions"
-msgstr ""
-
-#: part/templates/part/bom.html:34
-msgid "Delete Items"
-msgstr ""
-
#: part/templates/part/category.html:34
msgid "Perform stocktake for this part category"
msgstr ""
@@ -6505,7 +6529,7 @@ msgstr ""
msgid "Top level part category"
msgstr ""
-#: part/templates/part/category.html:121 part/templates/part/category.html:225
+#: part/templates/part/category.html:121 part/templates/part/category.html:206
#: part/templates/part/category_sidebar.html:7
msgid "Subcategories"
msgstr ""
@@ -6518,33 +6542,20 @@ msgstr ""
msgid "Create new part"
msgstr ""
-#: part/templates/part/category.html:165 templates/js/translated/bom.js:443
+#: part/templates/part/category.html:165 templates/js/translated/bom.js:444
msgid "New Part"
msgstr ""
-#: part/templates/part/category.html:175 part/templates/part/detail.html:390
-#: part/templates/part/detail.html:421
-msgid "Options"
-msgstr ""
-
-#: part/templates/part/category.html:179
-msgid "Set category"
-msgstr ""
-
-#: part/templates/part/category.html:180
-msgid "Set Category"
-msgstr ""
-
-#: part/templates/part/category.html:208
+#: part/templates/part/category.html:191
#: templates/InvenTree/settings/sidebar.html:47
msgid "Part Parameters"
msgstr "Thông số phụ tùng"
-#: part/templates/part/category.html:229
+#: part/templates/part/category.html:210
msgid "Create new part category"
msgstr ""
-#: part/templates/part/category.html:230
+#: part/templates/part/category.html:211
msgid "New Category"
msgstr ""
@@ -6581,7 +6592,7 @@ msgid "Refresh scheduling data"
msgstr ""
#: part/templates/part/detail.html:45 part/templates/part/prices.html:15
-#: templates/js/translated/tables.js:584
+#: templates/js/translated/tables.js:560
msgid "Refresh"
msgstr ""
@@ -6592,7 +6603,7 @@ msgstr ""
#: part/templates/part/detail.html:67 part/templates/part/part_sidebar.html:50
#: stock/admin.py:130 templates/InvenTree/settings/part_stocktake.html:29
#: templates/InvenTree/settings/sidebar.html:51
-#: templates/js/translated/stock.js:1952 users/models.py:39
+#: templates/js/translated/stock.js:2109 users/models.py:39
msgid "Stocktake"
msgstr ""
@@ -6604,101 +6615,101 @@ msgstr ""
msgid "Add Test Template"
msgstr ""
-#: part/templates/part/detail.html:145 stock/templates/stock/item.html:53
+#: part/templates/part/detail.html:139 stock/templates/stock/item.html:49
msgid "Sales Order Allocations"
msgstr ""
-#: part/templates/part/detail.html:165
+#: part/templates/part/detail.html:156
msgid "Part Notes"
msgstr ""
-#: part/templates/part/detail.html:180
+#: part/templates/part/detail.html:171
msgid "Part Variants"
msgstr ""
-#: part/templates/part/detail.html:184
+#: part/templates/part/detail.html:175
msgid "Create new variant"
msgstr ""
-#: part/templates/part/detail.html:185
+#: part/templates/part/detail.html:176
msgid "New Variant"
msgstr ""
-#: part/templates/part/detail.html:212
+#: part/templates/part/detail.html:199
msgid "Add new parameter"
msgstr ""
-#: part/templates/part/detail.html:249 part/templates/part/part_sidebar.html:58
+#: part/templates/part/detail.html:232 part/templates/part/part_sidebar.html:58
msgid "Related Parts"
msgstr ""
-#: part/templates/part/detail.html:253 part/templates/part/detail.html:254
+#: part/templates/part/detail.html:236 part/templates/part/detail.html:237
msgid "Add Related"
msgstr ""
-#: part/templates/part/detail.html:274 part/templates/part/part_sidebar.html:17
+#: part/templates/part/detail.html:255 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:279
+#: part/templates/part/detail.html:260
msgid "Export actions"
msgstr ""
-#: part/templates/part/detail.html:283 templates/js/translated/bom.js:339
+#: part/templates/part/detail.html:264 templates/js/translated/bom.js:340
msgid "Export BOM"
msgstr ""
-#: part/templates/part/detail.html:285
+#: part/templates/part/detail.html:266
msgid "Print BOM Report"
msgstr ""
-#: part/templates/part/detail.html:295
+#: part/templates/part/detail.html:272
+msgid "BOM actions"
+msgstr ""
+
+#: part/templates/part/detail.html:276
msgid "Upload BOM"
msgstr ""
-#: part/templates/part/detail.html:297
+#: part/templates/part/detail.html:278
msgid "Validate BOM"
msgstr ""
-#: part/templates/part/detail.html:302 part/templates/part/detail.html:303
-#: templates/js/translated/bom.js:1279 templates/js/translated/bom.js:1280
+#: part/templates/part/detail.html:283 part/templates/part/detail.html:284
+#: templates/js/translated/bom.js:1299 templates/js/translated/bom.js:1300
msgid "Add BOM Item"
msgstr ""
-#: part/templates/part/detail.html:316
+#: part/templates/part/detail.html:297
msgid "Assemblies"
msgstr ""
-#: part/templates/part/detail.html:334
+#: part/templates/part/detail.html:313
msgid "Part Builds"
msgstr ""
-#: part/templates/part/detail.html:361 stock/templates/stock/item.html:38
+#: part/templates/part/detail.html:338 stock/templates/stock/item.html:36
msgid "Build Order Allocations"
msgstr ""
-#: part/templates/part/detail.html:377
+#: part/templates/part/detail.html:352
msgid "Part Suppliers"
msgstr ""
-#: part/templates/part/detail.html:407
+#: part/templates/part/detail.html:372
msgid "Part Manufacturers"
msgstr ""
-#: part/templates/part/detail.html:423
-msgid "Delete manufacturer parts"
-msgstr ""
-
-#: part/templates/part/detail.html:707
+#: part/templates/part/detail.html:654
msgid "Related Part"
msgstr ""
-#: part/templates/part/detail.html:715
+#: part/templates/part/detail.html:662
msgid "Add Related Part"
msgstr ""
-#: part/templates/part/detail.html:800
+#: part/templates/part/detail.html:747
msgid "Add Test Result Template"
msgstr ""
@@ -6732,13 +6743,13 @@ msgid "Download Part Import Template"
msgstr ""
#: part/templates/part/import_wizard/part_upload.html:92
-#: templates/js/translated/bom.js:308 templates/js/translated/bom.js:342
+#: templates/js/translated/bom.js:309 templates/js/translated/bom.js:343
#: templates/js/translated/order.js:129 templates/js/translated/tables.js:189
msgid "Format"
msgstr ""
#: part/templates/part/import_wizard/part_upload.html:93
-#: templates/js/translated/bom.js:309 templates/js/translated/bom.js:343
+#: templates/js/translated/bom.js:310 templates/js/translated/bom.js:344
#: templates/js/translated/order.js:130
msgid "Select file format"
msgstr ""
@@ -6779,7 +6790,7 @@ msgstr ""
msgid "Transfer part stock"
msgstr ""
-#: part/templates/part/part_base.html:93
+#: part/templates/part/part_base.html:93 templates/js/translated/part.js:2264
msgid "Part actions"
msgstr ""
@@ -6824,10 +6835,10 @@ msgid "Part is not active"
msgstr ""
#: part/templates/part/part_base.html:148
-#: templates/js/translated/company.js:945
-#: templates/js/translated/company.js:1185
-#: templates/js/translated/model_renderers.js:273
-#: templates/js/translated/part.js:792 templates/js/translated/part.js:1192
+#: templates/js/translated/company.js:1318
+#: templates/js/translated/company.js:1606
+#: templates/js/translated/model_renderers.js:287
+#: templates/js/translated/part.js:791 templates/js/translated/part.js:1191
msgid "Inactive"
msgstr ""
@@ -6850,7 +6861,7 @@ msgstr ""
msgid "Allocated to Sales Orders"
msgstr ""
-#: part/templates/part/part_base.html:237 templates/js/translated/bom.js:1178
+#: part/templates/part/part_base.html:237 templates/js/translated/bom.js:1198
msgid "Can Build"
msgstr ""
@@ -6858,8 +6869,8 @@ msgstr ""
msgid "Minimum stock level"
msgstr ""
-#: part/templates/part/part_base.html:324 templates/js/translated/bom.js:1041
-#: templates/js/translated/part.js:1238 templates/js/translated/part.js:2304
+#: part/templates/part/part_base.html:324 templates/js/translated/bom.js:1059
+#: templates/js/translated/part.js:1237 templates/js/translated/part.js:2380
#: templates/js/translated/pricing.js:391
#: templates/js/translated/pricing.js:1040
msgid "Price Range"
@@ -6882,7 +6893,7 @@ msgstr ""
msgid "Link Barcode to Part"
msgstr ""
-#: part/templates/part/part_base.html:474 templates/js/translated/part.js:2191
+#: part/templates/part/part_base.html:474 templates/js/translated/part.js:2258
msgid "part"
msgstr ""
@@ -6956,9 +6967,9 @@ msgstr ""
#: stock/templates/stock/stock_app_base.html:10
#: templates/InvenTree/search.html:153
#: templates/InvenTree/settings/sidebar.html:49
-#: templates/js/translated/part.js:1216 templates/js/translated/part.js:2120
-#: templates/js/translated/part.js:2284 templates/js/translated/stock.js:1022
-#: templates/js/translated/stock.js:1829 templates/navbar.html:31
+#: templates/js/translated/part.js:1215 templates/js/translated/part.js:2119
+#: templates/js/translated/part.js:2360 templates/js/translated/stock.js:1021
+#: templates/js/translated/stock.js:1986 templates/navbar.html:31
msgid "Stock"
msgstr "Kiện hàng"
@@ -6989,9 +7000,9 @@ msgstr ""
#: part/templates/part/prices.html:25 stock/admin.py:129
#: stock/templates/stock/item_base.html:442
-#: templates/js/translated/company.js:1313
-#: templates/js/translated/company.js:1323
-#: templates/js/translated/stock.js:1982
+#: templates/js/translated/company.js:1734
+#: templates/js/translated/company.js:1744
+#: templates/js/translated/stock.js:2139
msgid "Last Updated"
msgstr ""
@@ -7054,12 +7065,12 @@ msgstr ""
msgid "Add Sell Price Break"
msgstr ""
-#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:682
-#: templates/js/translated/part.js:2115 templates/js/translated/part.js:2117
+#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:681
+#: templates/js/translated/part.js:2114 templates/js/translated/part.js:2116
msgid "No Stock"
msgstr ""
-#: part/templates/part/stock_count.html:9 templates/InvenTree/index.html:167
+#: part/templates/part/stock_count.html:9 templates/InvenTree/index.html:120
msgid "Low Stock"
msgstr "Hàng còn ít"
@@ -7163,7 +7174,7 @@ msgid "Match found for barcode data"
msgstr ""
#: plugin/base/barcodes/api.py:120
-#: templates/js/translated/purchase_order.js:1372
+#: templates/js/translated/purchase_order.js:1387
msgid "Barcode matches existing item"
msgstr ""
@@ -7226,43 +7237,43 @@ msgstr ""
msgid "Open link"
msgstr ""
-#: plugin/models.py:27
+#: plugin/models.py:28
msgid "Plugin Configuration"
msgstr ""
-#: plugin/models.py:28
+#: plugin/models.py:29
msgid "Plugin Configurations"
msgstr ""
-#: plugin/models.py:33
+#: plugin/models.py:34
msgid "Key"
msgstr ""
-#: plugin/models.py:34
+#: plugin/models.py:35
msgid "Key of plugin"
msgstr ""
-#: plugin/models.py:42
+#: plugin/models.py:43
msgid "PluginName of the plugin"
msgstr ""
-#: plugin/models.py:48
+#: plugin/models.py:49
msgid "Is the plugin active"
msgstr ""
-#: plugin/models.py:124
+#: plugin/models.py:125
msgid "Sample plugin"
msgstr ""
-#: plugin/models.py:133
+#: plugin/models.py:134
msgid "Builtin Plugin"
msgstr ""
-#: plugin/models.py:159 templates/InvenTree/settings/plugin_settings.html:9
+#: plugin/models.py:160 templates/InvenTree/settings/plugin_settings.html:9
msgid "Plugin"
msgstr ""
-#: plugin/models.py:210
+#: plugin/models.py:211
msgid "Method"
msgstr ""
@@ -7414,47 +7425,47 @@ msgstr ""
msgid "Build query filters (comma-separated list of key=value pairs"
msgstr ""
-#: report/models.py:418
+#: report/models.py:420
msgid "Part Filters"
msgstr ""
-#: report/models.py:419
+#: report/models.py:421
msgid "Part query filters (comma-separated list of key=value pairs"
msgstr ""
-#: report/models.py:453
+#: report/models.py:455
msgid "Purchase order query filters"
msgstr ""
-#: report/models.py:491
+#: report/models.py:493
msgid "Sales order query filters"
msgstr ""
-#: report/models.py:529
+#: report/models.py:531
msgid "Return order query filters"
msgstr ""
-#: report/models.py:582
+#: report/models.py:584
msgid "Snippet"
msgstr ""
-#: report/models.py:583
+#: report/models.py:585
msgid "Report snippet file"
msgstr ""
-#: report/models.py:587
+#: report/models.py:589
msgid "Snippet file description"
msgstr ""
-#: report/models.py:624
+#: report/models.py:626
msgid "Asset"
msgstr ""
-#: report/models.py:625
+#: report/models.py:627
msgid "Report asset file"
msgstr ""
-#: report/models.py:632
+#: report/models.py:634
msgid "Asset file description"
msgstr ""
@@ -7475,8 +7486,8 @@ msgstr ""
#: templates/js/translated/order.js:316 templates/js/translated/pricing.js:527
#: templates/js/translated/pricing.js:596
#: templates/js/translated/pricing.js:820
-#: templates/js/translated/purchase_order.js:2083
-#: templates/js/translated/sales_order.js:1817
+#: templates/js/translated/purchase_order.js:2093
+#: templates/js/translated/sales_order.js:1829
msgid "Unit Price"
msgstr ""
@@ -7488,23 +7499,23 @@ msgstr ""
#: report/templates/report/inventree_po_report_base.html:72
#: report/templates/report/inventree_so_report_base.html:72
-#: templates/js/translated/purchase_order.js:1985
-#: templates/js/translated/sales_order.js:1792
+#: templates/js/translated/purchase_order.js:1995
+#: templates/js/translated/sales_order.js:1804
msgid "Total"
msgstr ""
#: report/templates/report/inventree_return_order_report_base.html:25
#: report/templates/report/inventree_test_report_base.html:88
#: stock/models.py:725 stock/templates/stock/item_base.html:312
-#: templates/js/translated/build.js:502 templates/js/translated/build.js:1423
-#: templates/js/translated/build.js:1989
-#: templates/js/translated/model_renderers.js:201
-#: templates/js/translated/return_order.js:528
-#: templates/js/translated/return_order.js:708
-#: templates/js/translated/sales_order.js:300
-#: templates/js/translated/sales_order.js:1597
-#: templates/js/translated/sales_order.js:1682
-#: templates/js/translated/stock.js:563
+#: templates/js/translated/build.js:508 templates/js/translated/build.js:1306
+#: templates/js/translated/build.js:2281
+#: templates/js/translated/model_renderers.js:215
+#: templates/js/translated/return_order.js:540
+#: templates/js/translated/return_order.js:720
+#: templates/js/translated/sales_order.js:312
+#: templates/js/translated/sales_order.js:1609
+#: templates/js/translated/sales_order.js:1694
+#: templates/js/translated/stock.js:562
msgid "Serial Number"
msgstr ""
@@ -7517,7 +7528,7 @@ msgid "Test Results"
msgstr ""
#: report/templates/report/inventree_test_report_base.html:102
-#: stock/models.py:2243 templates/js/translated/stock.js:1419
+#: stock/models.py:2243 templates/js/translated/stock.js:1418
msgid "Test"
msgstr ""
@@ -7548,8 +7559,8 @@ msgid "Installed Items"
msgstr ""
#: report/templates/report/inventree_test_report_base.html:168
-#: stock/admin.py:104 templates/js/translated/stock.js:667
-#: templates/js/translated/stock.js:838 templates/js/translated/stock.js:2849
+#: stock/admin.py:104 templates/js/translated/stock.js:666
+#: templates/js/translated/stock.js:837 templates/js/translated/stock.js:2976
msgid "Serial"
msgstr ""
@@ -7617,31 +7628,31 @@ msgstr ""
#: stock/admin.py:131 stock/models.py:789
#: stock/templates/stock/item_base.html:429
-#: templates/js/translated/stock.js:1966
+#: templates/js/translated/stock.js:2123
msgid "Expiry Date"
msgstr ""
-#: stock/api.py:420 templates/js/translated/table_filters.js:373
+#: stock/api.py:426 templates/js/translated/table_filters.js:379
msgid "External Location"
msgstr ""
-#: stock/api.py:582
+#: stock/api.py:619
msgid "Quantity is required"
msgstr ""
-#: stock/api.py:589
+#: stock/api.py:626
msgid "Valid part must be supplied"
msgstr ""
-#: stock/api.py:615
+#: stock/api.py:652
msgid "The given supplier part does not exist"
msgstr ""
-#: stock/api.py:624
+#: stock/api.py:661
msgid "The supplier part has a pack size defined, but flag use_pack_size not set"
msgstr ""
-#: stock/api.py:642
+#: stock/api.py:679
msgid "Serial numbers cannot be supplied for a non-trackable part"
msgstr ""
@@ -7652,7 +7663,7 @@ msgid "Stock Location"
msgstr "Kho hàng"
#: stock/models.py:55 stock/templates/stock/location.html:177
-#: templates/InvenTree/search.html:166 templates/js/translated/search.js:220
+#: templates/InvenTree/search.html:166 templates/js/translated/search.js:178
#: users/models.py:40
msgid "Stock Locations"
msgstr ""
@@ -7670,8 +7681,8 @@ msgstr ""
msgid "Stock items may not be directly located into a structural stock locations, but may be located to child locations."
msgstr ""
-#: stock/models.py:132 templates/js/translated/stock.js:2529
-#: templates/js/translated/table_filters.js:213
+#: stock/models.py:132 templates/js/translated/stock.js:2660
+#: templates/js/translated/table_filters.js:219
msgid "External"
msgstr ""
@@ -7687,7 +7698,7 @@ msgstr ""
msgid "Stock items cannot be located into structural stock locations!"
msgstr ""
-#: stock/models.py:583 stock/serializers.py:174
+#: stock/models.py:583 stock/serializers.py:223
msgid "Stock item cannot be created for virtual parts"
msgstr ""
@@ -7821,7 +7832,7 @@ msgstr ""
msgid "Quantity does not match serial numbers"
msgstr ""
-#: stock/models.py:1403 stock/serializers.py:374
+#: stock/models.py:1403 stock/serializers.py:440
msgid "Serial numbers already exist"
msgstr ""
@@ -7849,7 +7860,7 @@ msgstr ""
msgid "Serialized stock cannot be merged"
msgstr ""
-#: stock/models.py:1496 stock/serializers.py:975
+#: stock/models.py:1496 stock/serializers.py:1092
msgid "Duplicate stock items"
msgstr ""
@@ -7901,132 +7912,141 @@ msgstr ""
msgid "Test notes"
msgstr ""
-#: stock/serializers.py:76
+#: stock/serializers.py:121
msgid "Serial number is too large"
msgstr ""
-#: stock/serializers.py:166
+#: stock/serializers.py:215
msgid "Use pack size when adding: the quantity defined is the number of packs"
msgstr ""
-#: stock/serializers.py:254
+#: stock/serializers.py:316
msgid "Purchase price of this stock item, per unit or pack"
msgstr ""
-#: stock/serializers.py:307
+#: stock/serializers.py:373
msgid "Enter number of stock items to serialize"
msgstr ""
-#: stock/serializers.py:319
+#: stock/serializers.py:385
#, python-brace-format
msgid "Quantity must not exceed available stock quantity ({q})"
msgstr ""
-#: stock/serializers.py:325
+#: stock/serializers.py:391
msgid "Enter serial numbers for new items"
msgstr ""
-#: stock/serializers.py:336 stock/serializers.py:932 stock/serializers.py:1174
+#: stock/serializers.py:402 stock/serializers.py:1049 stock/serializers.py:1291
msgid "Destination stock location"
msgstr ""
-#: stock/serializers.py:343
+#: stock/serializers.py:409
msgid "Optional note field"
msgstr ""
-#: stock/serializers.py:353
+#: stock/serializers.py:419
msgid "Serial numbers cannot be assigned to this part"
msgstr ""
-#: stock/serializers.py:414
+#: stock/serializers.py:480
msgid "Select stock item to install"
msgstr ""
-#: stock/serializers.py:427
-msgid "Stock item is unavailable"
-msgstr ""
-
-#: stock/serializers.py:434
-msgid "Selected part is not in the Bill of Materials"
-msgstr ""
-
-#: stock/serializers.py:471
-msgid "Destination location for uninstalled item"
-msgstr ""
-
-#: stock/serializers.py:476 stock/serializers.py:557
+#: stock/serializers.py:485 stock/serializers.py:543 stock/serializers.py:624
+#: stock/serializers.py:682
msgid "Add transaction note (optional)"
msgstr ""
-#: stock/serializers.py:510
+#: stock/serializers.py:494
+msgid "Stock item is unavailable"
+msgstr ""
+
+#: stock/serializers.py:501
+msgid "Selected part is not in the Bill of Materials"
+msgstr ""
+
+#: stock/serializers.py:538
+msgid "Destination location for uninstalled item"
+msgstr ""
+
+#: stock/serializers.py:577
msgid "Select part to convert stock item into"
msgstr ""
-#: stock/serializers.py:521
+#: stock/serializers.py:588
msgid "Selected part is not a valid option for conversion"
msgstr ""
-#: stock/serializers.py:552
+#: stock/serializers.py:619
msgid "Destination location for returned item"
msgstr ""
-#: stock/serializers.py:787
+#: stock/serializers.py:663
+msgid "Select stock items to change status"
+msgstr ""
+
+#: stock/serializers.py:670
+msgid "No stock items selected"
+msgstr ""
+
+#: stock/serializers.py:904
msgid "Part must be salable"
msgstr ""
-#: stock/serializers.py:791
+#: stock/serializers.py:908
msgid "Item is allocated to a sales order"
msgstr ""
-#: stock/serializers.py:795
+#: stock/serializers.py:912
msgid "Item is allocated to a build order"
msgstr ""
-#: stock/serializers.py:826
+#: stock/serializers.py:943
msgid "Customer to assign stock items"
msgstr ""
-#: stock/serializers.py:832
+#: stock/serializers.py:949
msgid "Selected company is not a customer"
msgstr ""
-#: stock/serializers.py:840
+#: stock/serializers.py:957
msgid "Stock assignment notes"
msgstr ""
-#: stock/serializers.py:850 stock/serializers.py:1081
+#: stock/serializers.py:967 stock/serializers.py:1198
msgid "A list of stock items must be provided"
msgstr ""
-#: stock/serializers.py:939
+#: stock/serializers.py:1056
msgid "Stock merging notes"
msgstr ""
-#: stock/serializers.py:944
+#: stock/serializers.py:1061
msgid "Allow mismatched suppliers"
msgstr ""
-#: stock/serializers.py:945
+#: stock/serializers.py:1062
msgid "Allow stock items with different supplier parts to be merged"
msgstr ""
-#: stock/serializers.py:950
+#: stock/serializers.py:1067
msgid "Allow mismatched status"
msgstr ""
-#: stock/serializers.py:951
+#: stock/serializers.py:1068
msgid "Allow stock items with different status codes to be merged"
msgstr ""
-#: stock/serializers.py:961
+#: stock/serializers.py:1078
msgid "At least two stock items must be provided"
msgstr ""
-#: stock/serializers.py:1043
+#: stock/serializers.py:1160
msgid "StockItem primary key value"
msgstr ""
-#: stock/serializers.py:1071
+#: stock/serializers.py:1188
msgid "Stock transaction notes"
msgstr ""
@@ -8034,48 +8054,48 @@ msgstr ""
msgid "Stock Tracking Information"
msgstr ""
-#: stock/templates/stock/item.html:69
+#: stock/templates/stock/item.html:63
msgid "Child Stock Items"
msgstr ""
-#: stock/templates/stock/item.html:77
+#: stock/templates/stock/item.html:71
msgid "This stock item does not have any child items"
msgstr ""
-#: stock/templates/stock/item.html:86
+#: stock/templates/stock/item.html:80
#: stock/templates/stock/stock_sidebar.html:12
msgid "Test Data"
msgstr ""
-#: stock/templates/stock/item.html:90 stock/templates/stock/item_base.html:66
+#: stock/templates/stock/item.html:84 stock/templates/stock/item_base.html:66
msgid "Test Report"
msgstr ""
-#: stock/templates/stock/item.html:94 stock/templates/stock/item.html:288
+#: stock/templates/stock/item.html:88 stock/templates/stock/item.html:278
msgid "Delete Test Data"
msgstr ""
-#: stock/templates/stock/item.html:98
+#: stock/templates/stock/item.html:92
msgid "Add Test Data"
msgstr ""
-#: stock/templates/stock/item.html:132
+#: stock/templates/stock/item.html:124
msgid "Stock Item Notes"
msgstr ""
-#: stock/templates/stock/item.html:147
+#: stock/templates/stock/item.html:139
msgid "Installed Stock Items"
msgstr ""
-#: stock/templates/stock/item.html:152 templates/js/translated/stock.js:2996
+#: stock/templates/stock/item.html:144 templates/js/translated/stock.js:3123
msgid "Install Stock Item"
msgstr ""
-#: stock/templates/stock/item.html:276
+#: stock/templates/stock/item.html:266
msgid "Delete all test results for this stock item"
msgstr ""
-#: stock/templates/stock/item.html:305 templates/js/translated/stock.js:1611
+#: stock/templates/stock/item.html:295 templates/js/translated/stock.js:1610
msgid "Add Test Result"
msgstr ""
@@ -8083,13 +8103,13 @@ msgstr ""
msgid "Locate stock item"
msgstr ""
-#: stock/templates/stock/item_base.html:52 templates/stock_table.html:21
+#: stock/templates/stock/item_base.html:52
msgid "Scan to Location"
msgstr ""
#: stock/templates/stock/item_base.html:60
#: stock/templates/stock/location.html:69
-#: templates/js/translated/filters.js:322
+#: templates/js/translated/filters.js:432
msgid "Printing actions"
msgstr ""
@@ -8098,15 +8118,17 @@ msgid "Stock adjustment actions"
msgstr ""
#: stock/templates/stock/item_base.html:80
-#: stock/templates/stock/location.html:88 templates/stock_table.html:35
+#: stock/templates/stock/location.html:88 templates/js/translated/stock.js:1735
msgid "Count stock"
msgstr ""
-#: stock/templates/stock/item_base.html:82 templates/stock_table.html:33
+#: stock/templates/stock/item_base.html:82
+#: templates/js/translated/stock.js:1717
msgid "Add stock"
msgstr ""
-#: stock/templates/stock/item_base.html:83 templates/stock_table.html:34
+#: stock/templates/stock/item_base.html:83
+#: templates/js/translated/stock.js:1726
msgid "Remove stock"
msgstr ""
@@ -8115,11 +8137,12 @@ msgid "Serialize stock"
msgstr ""
#: stock/templates/stock/item_base.html:89
-#: stock/templates/stock/location.html:94 templates/stock_table.html:36
+#: stock/templates/stock/location.html:94 templates/js/translated/stock.js:1744
msgid "Transfer stock"
msgstr ""
-#: stock/templates/stock/item_base.html:92 templates/stock_table.html:39
+#: stock/templates/stock/item_base.html:92
+#: templates/js/translated/stock.js:1798
msgid "Assign to customer"
msgstr ""
@@ -8159,6 +8182,11 @@ msgstr ""
msgid "Delete stock item"
msgstr ""
+#: stock/templates/stock/item_base.html:170 templates/InvenTree/search.html:139
+#: templates/js/translated/build.js:2046 templates/navbar.html:38
+msgid "Build"
+msgstr ""
+
#: stock/templates/stock/item_base.html:194
msgid "Parent Item"
msgstr ""
@@ -8221,7 +8249,7 @@ msgid "Available Quantity"
msgstr ""
#: stock/templates/stock/item_base.html:394
-#: templates/js/translated/build.js:2015
+#: templates/js/translated/build.js:2306
msgid "No location set"
msgstr ""
@@ -8239,7 +8267,7 @@ msgid "This StockItem expired on %(item.expiry_date)s"
msgstr ""
#: stock/templates/stock/item_base.html:433
-#: templates/js/translated/table_filters.js:381
+#: templates/js/translated/table_filters.js:387
msgid "Expired"
msgstr ""
@@ -8249,7 +8277,7 @@ msgid "This StockItem expires on %(item.expiry_date)s"
msgstr ""
#: stock/templates/stock/item_base.html:435
-#: templates/js/translated/table_filters.js:387
+#: templates/js/translated/table_filters.js:393
msgid "Stale"
msgstr ""
@@ -8258,7 +8286,7 @@ msgid "No stocktake performed"
msgstr ""
#: stock/templates/stock/item_base.html:503
-#: templates/js/translated/stock.js:1745
+#: templates/js/translated/stock.js:1865
msgid "stock item"
msgstr ""
@@ -8364,20 +8392,20 @@ msgstr ""
msgid "New Location"
msgstr ""
-#: stock/templates/stock/location.html:287
-#: templates/js/translated/stock.js:2318
+#: stock/templates/stock/location.html:278
+#: templates/js/translated/stock.js:2449
msgid "stock location"
msgstr ""
-#: stock/templates/stock/location.html:304
+#: stock/templates/stock/location.html:295
msgid "Scanned stock container into this location"
msgstr ""
-#: stock/templates/stock/location.html:377
+#: stock/templates/stock/location.html:368
msgid "Stock Location QR Code"
msgstr ""
-#: stock/templates/stock/location.html:388
+#: stock/templates/stock/location.html:379
msgid "Link Barcode to Stock Location"
msgstr ""
@@ -8451,71 +8479,71 @@ msgstr ""
msgid "Index"
msgstr ""
-#: templates/InvenTree/index.html:89
+#: templates/InvenTree/index.html:39
msgid "Subscribed Parts"
msgstr ""
-#: templates/InvenTree/index.html:102
+#: templates/InvenTree/index.html:53
msgid "Subscribed Categories"
msgstr ""
-#: templates/InvenTree/index.html:112
+#: templates/InvenTree/index.html:63
msgid "Latest Parts"
msgstr "Nguyên liệu mới nhất"
-#: templates/InvenTree/index.html:126
+#: templates/InvenTree/index.html:78
msgid "BOM Waiting Validation"
msgstr ""
-#: templates/InvenTree/index.html:155
+#: templates/InvenTree/index.html:107
msgid "Recently Updated"
msgstr ""
-#: templates/InvenTree/index.html:180
+#: templates/InvenTree/index.html:134
msgid "Depleted Stock"
msgstr ""
-#: templates/InvenTree/index.html:193
+#: templates/InvenTree/index.html:148
msgid "Required for Build Orders"
msgstr ""
-#: templates/InvenTree/index.html:208
+#: templates/InvenTree/index.html:156
msgid "Expired Stock"
msgstr ""
-#: templates/InvenTree/index.html:222
+#: templates/InvenTree/index.html:172
msgid "Stale Stock"
msgstr ""
-#: templates/InvenTree/index.html:247
+#: templates/InvenTree/index.html:199
msgid "Build Orders In Progress"
msgstr ""
-#: templates/InvenTree/index.html:258
+#: templates/InvenTree/index.html:210
msgid "Overdue Build Orders"
msgstr ""
-#: templates/InvenTree/index.html:278
+#: templates/InvenTree/index.html:230
msgid "Outstanding Purchase Orders"
msgstr ""
-#: templates/InvenTree/index.html:289
+#: templates/InvenTree/index.html:241
msgid "Overdue Purchase Orders"
msgstr ""
-#: templates/InvenTree/index.html:310
+#: templates/InvenTree/index.html:262
msgid "Outstanding Sales Orders"
msgstr ""
-#: templates/InvenTree/index.html:321
+#: templates/InvenTree/index.html:273
msgid "Overdue Sales Orders"
msgstr ""
-#: templates/InvenTree/index.html:347
+#: templates/InvenTree/index.html:299
msgid "InvenTree News"
msgstr ""
-#: templates/InvenTree/index.html:349
+#: templates/InvenTree/index.html:301
msgid "Current News"
msgstr ""
@@ -8672,29 +8700,29 @@ msgstr ""
msgid "Changing the settings below require you to immediately restart the server. Do not change this while under active usage."
msgstr ""
-#: templates/InvenTree/settings/plugin.html:37
+#: templates/InvenTree/settings/plugin.html:35
#: templates/InvenTree/settings/sidebar.html:64
msgid "Plugins"
msgstr ""
-#: templates/InvenTree/settings/plugin.html:43
+#: templates/InvenTree/settings/plugin.html:41
#: templates/js/translated/plugin.js:151
msgid "Install Plugin"
msgstr ""
-#: templates/InvenTree/settings/plugin.html:51
+#: templates/InvenTree/settings/plugin.html:49
msgid "External plugins are not enabled for this InvenTree installation"
msgstr ""
-#: templates/InvenTree/settings/plugin.html:70
+#: templates/InvenTree/settings/plugin.html:64
msgid "Plugin Error Stack"
msgstr ""
-#: templates/InvenTree/settings/plugin.html:79
+#: templates/InvenTree/settings/plugin.html:73
msgid "Stage"
msgstr ""
-#: templates/InvenTree/settings/plugin.html:81
+#: templates/InvenTree/settings/plugin.html:75
#: templates/js/translated/notification.js:75
msgid "Message"
msgstr ""
@@ -8767,14 +8795,6 @@ msgstr ""
msgid "Commit Message"
msgstr ""
-#: templates/InvenTree/settings/plugin_settings.html:126
-msgid "Sign Status"
-msgstr ""
-
-#: templates/InvenTree/settings/plugin_settings.html:131
-msgid "Sign Key"
-msgstr ""
-
#: templates/InvenTree/settings/po.html:7
msgid "Purchase Order Settings"
msgstr ""
@@ -8870,12 +8890,12 @@ msgid "No category parameter templates found"
msgstr ""
#: templates/InvenTree/settings/settings_staff_js.html:212
-#: templates/js/translated/part.js:1618
+#: templates/js/translated/part.js:1617
msgid "Edit Template"
msgstr ""
#: templates/InvenTree/settings/settings_staff_js.html:213
-#: templates/js/translated/part.js:1619
+#: templates/js/translated/part.js:1618
msgid "Delete Template"
msgstr ""
@@ -8913,7 +8933,7 @@ msgid "Home Page"
msgstr ""
#: templates/InvenTree/settings/sidebar.html:15
-#: templates/js/translated/tables.js:575 templates/navbar.html:107
+#: templates/js/translated/tables.js:551 templates/navbar.html:107
#: templates/search.html:8 templates/search_form.html:6
#: templates/search_form.html:7
msgid "Search"
@@ -8990,6 +9010,7 @@ msgid "Unverified"
msgstr ""
#: templates/InvenTree/settings/user.html:80
+#: templates/js/translated/company.js:984
msgid "Primary"
msgstr ""
@@ -9204,44 +9225,48 @@ msgstr ""
msgid "Update Available"
msgstr ""
-#: templates/about.html:42
+#: templates/about.html:43
+msgid "Commit Branch"
+msgstr ""
+
+#: templates/about.html:49
msgid "InvenTree Documentation"
msgstr ""
-#: templates/about.html:47
+#: templates/about.html:54
msgid "API Version"
msgstr ""
-#: templates/about.html:52
+#: templates/about.html:59
msgid "Python Version"
msgstr ""
-#: templates/about.html:57
+#: templates/about.html:64
msgid "Django Version"
msgstr ""
-#: templates/about.html:62
+#: templates/about.html:69
msgid "View Code on GitHub"
msgstr ""
-#: templates/about.html:67
+#: templates/about.html:74
msgid "Credits"
msgstr ""
-#: templates/about.html:72
+#: templates/about.html:79
msgid "Mobile App"
msgstr ""
-#: templates/about.html:77
+#: templates/about.html:84
msgid "Submit Bug Report"
msgstr ""
-#: templates/about.html:84 templates/clip.html:4
+#: templates/about.html:91 templates/clip.html:4
#: templates/js/translated/helpers.js:585
msgid "copy to clipboard"
msgstr ""
-#: templates/about.html:84
+#: templates/about.html:91
msgid "copy version information"
msgstr ""
@@ -9435,14 +9460,6 @@ msgstr ""
msgid "Add Attachment"
msgstr ""
-#: templates/attachment_table.html:11
-msgid "Delete selected attachments"
-msgstr ""
-
-#: templates/attachment_table.html:12 templates/js/translated/attachment.js:129
-msgid "Delete Attachments"
-msgstr ""
-
#: templates/barcode_data.html:5
msgid "Barcode Identifier"
msgstr ""
@@ -9487,7 +9504,7 @@ msgid "The following parts are low on required stock"
msgstr ""
#: templates/email/build_order_required_stock.html:18
-#: templates/js/translated/bom.js:1633
+#: templates/js/translated/bom.js:1653 templates/js/translated/build.js:2485
msgid "Required Quantity"
msgstr ""
@@ -9501,7 +9518,7 @@ msgid "Click on the following link to view this part"
msgstr ""
#: templates/email/low_stock_notification.html:18
-#: templates/js/translated/part.js:3140
+#: templates/js/translated/part.js:3125
msgid "Minimum Quantity"
msgstr ""
@@ -9573,23 +9590,35 @@ msgstr ""
msgid "All selected attachments will be deleted"
msgstr ""
-#: templates/js/translated/attachment.js:255
+#: templates/js/translated/attachment.js:129
+msgid "Delete Attachments"
+msgstr ""
+
+#: templates/js/translated/attachment.js:205
+msgid "Delete attachments"
+msgstr ""
+
+#: templates/js/translated/attachment.js:253
+msgid "Attachment actions"
+msgstr ""
+
+#: templates/js/translated/attachment.js:275
msgid "No attachments found"
msgstr ""
-#: templates/js/translated/attachment.js:285
+#: templates/js/translated/attachment.js:305
msgid "Edit Attachment"
msgstr ""
-#: templates/js/translated/attachment.js:326
+#: templates/js/translated/attachment.js:336
msgid "Upload Date"
msgstr ""
-#: templates/js/translated/attachment.js:346
+#: templates/js/translated/attachment.js:356
msgid "Edit attachment"
msgstr ""
-#: templates/js/translated/attachment.js:354
+#: templates/js/translated/attachment.js:364
msgid "Delete attachment"
msgstr ""
@@ -9646,7 +9675,7 @@ msgstr ""
msgid "Unlink"
msgstr ""
-#: templates/js/translated/barcode.js:550 templates/js/translated/stock.js:1118
+#: templates/js/translated/barcode.js:550 templates/js/translated/stock.js:1117
msgid "Remove stock item"
msgstr ""
@@ -9704,775 +9733,869 @@ msgstr ""
msgid "Barcode does not match a valid location"
msgstr ""
-#: templates/js/translated/bom.js:77
+#: templates/js/translated/bom.js:78
msgid "Create BOM Item"
msgstr ""
-#: templates/js/translated/bom.js:131
+#: templates/js/translated/bom.js:132
msgid "Display row data"
msgstr ""
-#: templates/js/translated/bom.js:187
+#: templates/js/translated/bom.js:188
msgid "Row Data"
msgstr ""
-#: templates/js/translated/bom.js:188 templates/js/translated/bom.js:699
+#: templates/js/translated/bom.js:189 templates/js/translated/bom.js:700
#: templates/js/translated/modals.js:71 templates/js/translated/modals.js:622
#: templates/js/translated/modals.js:746 templates/js/translated/modals.js:1054
-#: templates/js/translated/purchase_order.js:791 templates/modals.html:15
+#: templates/js/translated/purchase_order.js:802 templates/modals.html:15
#: templates/modals.html:27 templates/modals.html:39 templates/modals.html:50
msgid "Close"
msgstr ""
-#: templates/js/translated/bom.js:305
+#: templates/js/translated/bom.js:306
msgid "Download BOM Template"
msgstr ""
-#: templates/js/translated/bom.js:350
+#: templates/js/translated/bom.js:351
msgid "Multi Level BOM"
msgstr ""
-#: templates/js/translated/bom.js:351
+#: templates/js/translated/bom.js:352
msgid "Include BOM data for subassemblies"
msgstr ""
-#: templates/js/translated/bom.js:356
+#: templates/js/translated/bom.js:357
msgid "Levels"
msgstr ""
-#: templates/js/translated/bom.js:357
+#: templates/js/translated/bom.js:358
msgid "Select maximum number of BOM levels to export (0 = all levels)"
msgstr ""
-#: templates/js/translated/bom.js:364
+#: templates/js/translated/bom.js:365
msgid "Include Alternative Parts"
msgstr ""
-#: templates/js/translated/bom.js:365
+#: templates/js/translated/bom.js:366
msgid "Include alternative parts in exported BOM"
msgstr ""
-#: templates/js/translated/bom.js:370
+#: templates/js/translated/bom.js:371
msgid "Include Parameter Data"
msgstr ""
-#: templates/js/translated/bom.js:371
+#: templates/js/translated/bom.js:372
msgid "Include part parameter data in exported BOM"
msgstr ""
-#: templates/js/translated/bom.js:376
+#: templates/js/translated/bom.js:377
msgid "Include Stock Data"
msgstr ""
-#: templates/js/translated/bom.js:377
+#: templates/js/translated/bom.js:378
msgid "Include part stock data in exported BOM"
msgstr ""
-#: templates/js/translated/bom.js:382
+#: templates/js/translated/bom.js:383
msgid "Include Manufacturer Data"
msgstr ""
-#: templates/js/translated/bom.js:383
+#: templates/js/translated/bom.js:384
msgid "Include part manufacturer data in exported BOM"
msgstr ""
-#: templates/js/translated/bom.js:388
+#: templates/js/translated/bom.js:389
msgid "Include Supplier Data"
msgstr ""
-#: templates/js/translated/bom.js:389
+#: templates/js/translated/bom.js:390
msgid "Include part supplier data in exported BOM"
msgstr ""
-#: templates/js/translated/bom.js:394
+#: templates/js/translated/bom.js:395
msgid "Include Pricing Data"
msgstr ""
-#: templates/js/translated/bom.js:395
+#: templates/js/translated/bom.js:396
msgid "Include part pricing data in exported BOM"
msgstr ""
-#: templates/js/translated/bom.js:590
+#: templates/js/translated/bom.js:591
msgid "Remove substitute part"
msgstr ""
-#: templates/js/translated/bom.js:644
+#: templates/js/translated/bom.js:645
msgid "Select and add a new substitute part using the input below"
msgstr ""
-#: templates/js/translated/bom.js:655
+#: templates/js/translated/bom.js:656
msgid "Are you sure you wish to remove this substitute part link?"
msgstr ""
-#: templates/js/translated/bom.js:661
+#: templates/js/translated/bom.js:662
msgid "Remove Substitute Part"
msgstr ""
-#: templates/js/translated/bom.js:700
+#: templates/js/translated/bom.js:701
msgid "Add Substitute"
msgstr ""
-#: templates/js/translated/bom.js:701
+#: templates/js/translated/bom.js:702
msgid "Edit BOM Item Substitutes"
msgstr ""
-#: templates/js/translated/bom.js:763
+#: templates/js/translated/bom.js:764
msgid "All selected BOM items will be deleted"
msgstr ""
-#: templates/js/translated/bom.js:779
+#: templates/js/translated/bom.js:780
msgid "Delete selected BOM items?"
msgstr ""
-#: templates/js/translated/bom.js:906
+#: templates/js/translated/bom.js:826
+msgid "Delete items"
+msgstr ""
+
+#: templates/js/translated/bom.js:924
msgid "Load BOM for subassembly"
msgstr ""
-#: templates/js/translated/bom.js:916
+#: templates/js/translated/bom.js:934
msgid "Substitutes Available"
msgstr ""
-#: templates/js/translated/bom.js:920 templates/js/translated/build.js:2090
+#: templates/js/translated/bom.js:938 templates/js/translated/build.js:2429
msgid "Variant stock allowed"
msgstr ""
-#: templates/js/translated/bom.js:984
+#: templates/js/translated/bom.js:1002
msgid "Substitutes"
msgstr ""
-#: templates/js/translated/bom.js:1104
+#: templates/js/translated/bom.js:1122
msgid "BOM pricing is complete"
msgstr ""
-#: templates/js/translated/bom.js:1109
+#: templates/js/translated/bom.js:1127
msgid "BOM pricing is incomplete"
msgstr ""
-#: templates/js/translated/bom.js:1116
+#: templates/js/translated/bom.js:1134
msgid "No pricing available"
msgstr ""
-#: templates/js/translated/bom.js:1147 templates/js/translated/build.js:2173
-#: templates/js/translated/sales_order.js:1887
+#: templates/js/translated/bom.js:1165 templates/js/translated/build.js:2523
+#: templates/js/translated/sales_order.js:1899
msgid "No Stock Available"
msgstr ""
-#: templates/js/translated/bom.js:1152 templates/js/translated/build.js:2177
+#: templates/js/translated/bom.js:1170 templates/js/translated/build.js:2527
msgid "Includes variant and substitute stock"
msgstr ""
-#: templates/js/translated/bom.js:1154 templates/js/translated/build.js:2179
-#: templates/js/translated/part.js:1230
+#: templates/js/translated/bom.js:1172 templates/js/translated/build.js:2529
+#: templates/js/translated/part.js:1229
msgid "Includes variant stock"
msgstr ""
-#: templates/js/translated/bom.js:1156 templates/js/translated/build.js:2181
+#: templates/js/translated/bom.js:1174 templates/js/translated/build.js:2531
msgid "Includes substitute stock"
msgstr ""
-#: templates/js/translated/bom.js:1184 templates/js/translated/build.js:2164
-#: templates/js/translated/build.js:2255
+#: templates/js/translated/bom.js:1204 templates/js/translated/build.js:2514
msgid "Consumable item"
msgstr ""
-#: templates/js/translated/bom.js:1244
+#: templates/js/translated/bom.js:1264
msgid "Validate BOM Item"
msgstr ""
-#: templates/js/translated/bom.js:1246
+#: templates/js/translated/bom.js:1266
msgid "This line has been validated"
msgstr ""
-#: templates/js/translated/bom.js:1248
+#: templates/js/translated/bom.js:1268
msgid "Edit substitute parts"
msgstr ""
-#: templates/js/translated/bom.js:1250 templates/js/translated/bom.js:1445
+#: templates/js/translated/bom.js:1270 templates/js/translated/bom.js:1465
msgid "Edit BOM Item"
msgstr ""
-#: templates/js/translated/bom.js:1252
+#: templates/js/translated/bom.js:1272
msgid "Delete BOM Item"
msgstr ""
-#: templates/js/translated/bom.js:1272
+#: templates/js/translated/bom.js:1292
msgid "View BOM"
msgstr ""
-#: templates/js/translated/bom.js:1356 templates/js/translated/build.js:1927
+#: templates/js/translated/bom.js:1376
msgid "No BOM items found"
msgstr ""
-#: templates/js/translated/bom.js:1616 templates/js/translated/build.js:2073
+#: templates/js/translated/bom.js:1636 templates/js/translated/build.js:2414
msgid "Required Part"
msgstr ""
-#: templates/js/translated/bom.js:1642
+#: templates/js/translated/bom.js:1662
msgid "Inherited from parent BOM"
msgstr ""
-#: templates/js/translated/build.js:126
+#: templates/js/translated/build.js:136
msgid "Edit Build Order"
msgstr ""
-#: templates/js/translated/build.js:169
+#: templates/js/translated/build.js:179
msgid "Create Build Order"
msgstr ""
-#: templates/js/translated/build.js:202
+#: templates/js/translated/build.js:211
msgid "Cancel Build Order"
msgstr ""
-#: templates/js/translated/build.js:211
+#: templates/js/translated/build.js:220
msgid "Are you sure you wish to cancel this build?"
msgstr ""
-#: templates/js/translated/build.js:217
+#: templates/js/translated/build.js:226
msgid "Stock items have been allocated to this build order"
msgstr ""
-#: templates/js/translated/build.js:224
+#: templates/js/translated/build.js:233
msgid "There are incomplete outputs remaining for this build order"
msgstr ""
-#: templates/js/translated/build.js:276
+#: templates/js/translated/build.js:285
msgid "Build order is ready to be completed"
msgstr ""
-#: templates/js/translated/build.js:284
+#: templates/js/translated/build.js:293
msgid "This build order cannot be completed as there are incomplete outputs"
msgstr ""
-#: templates/js/translated/build.js:289
+#: templates/js/translated/build.js:298
msgid "Build Order is incomplete"
msgstr ""
-#: templates/js/translated/build.js:307
+#: templates/js/translated/build.js:316
msgid "Complete Build Order"
msgstr ""
-#: templates/js/translated/build.js:348 templates/js/translated/stock.js:119
-#: templates/js/translated/stock.js:265
+#: templates/js/translated/build.js:357 templates/js/translated/stock.js:118
+#: templates/js/translated/stock.js:264
msgid "Next available serial number"
msgstr ""
-#: templates/js/translated/build.js:350 templates/js/translated/stock.js:121
-#: templates/js/translated/stock.js:267
+#: templates/js/translated/build.js:359 templates/js/translated/stock.js:120
+#: templates/js/translated/stock.js:266
msgid "Latest serial number"
msgstr "Số seri mới nhất"
-#: templates/js/translated/build.js:359
+#: templates/js/translated/build.js:368
msgid "The Bill of Materials contains trackable parts"
msgstr ""
-#: templates/js/translated/build.js:360
+#: templates/js/translated/build.js:369
msgid "Build outputs must be generated individually"
msgstr ""
-#: templates/js/translated/build.js:368
+#: templates/js/translated/build.js:377
msgid "Trackable parts can have serial numbers specified"
msgstr ""
-#: templates/js/translated/build.js:369
+#: templates/js/translated/build.js:378
msgid "Enter serial numbers to generate multiple single build outputs"
msgstr ""
-#: templates/js/translated/build.js:376
+#: templates/js/translated/build.js:385
msgid "Create Build Output"
msgstr ""
-#: templates/js/translated/build.js:407
+#: templates/js/translated/build.js:416
msgid "Allocate stock items to this build output"
msgstr ""
-#: templates/js/translated/build.js:418
-msgid "Unallocate stock from build output"
+#: templates/js/translated/build.js:424
+msgid "Deallocate stock from build output"
msgstr ""
-#: templates/js/translated/build.js:427
+#: templates/js/translated/build.js:433
msgid "Complete build output"
msgstr ""
-#: templates/js/translated/build.js:435
+#: templates/js/translated/build.js:441
msgid "Scrap build output"
msgstr ""
-#: templates/js/translated/build.js:442
+#: templates/js/translated/build.js:448
msgid "Delete build output"
msgstr ""
-#: templates/js/translated/build.js:462
-msgid "Are you sure you wish to unallocate stock items from this build?"
+#: templates/js/translated/build.js:468
+msgid "Are you sure you wish to deallocate the selected stock items from this build?"
msgstr ""
-#: templates/js/translated/build.js:480
-msgid "Unallocate Stock Items"
+#: templates/js/translated/build.js:486
+msgid "Deallocate Stock Items"
msgstr ""
-#: templates/js/translated/build.js:566 templates/js/translated/build.js:690
-#: templates/js/translated/build.js:812
+#: templates/js/translated/build.js:572 templates/js/translated/build.js:696
+#: templates/js/translated/build.js:818
msgid "Select Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:567 templates/js/translated/build.js:691
-#: templates/js/translated/build.js:813
+#: templates/js/translated/build.js:573 templates/js/translated/build.js:697
+#: templates/js/translated/build.js:819
msgid "At least one build output must be selected"
msgstr ""
-#: templates/js/translated/build.js:581
+#: templates/js/translated/build.js:587
msgid "Selected build outputs will be marked as complete"
msgstr ""
-#: templates/js/translated/build.js:585 templates/js/translated/build.js:715
-#: templates/js/translated/build.js:835
+#: templates/js/translated/build.js:591 templates/js/translated/build.js:721
+#: templates/js/translated/build.js:841
msgid "Output"
msgstr ""
-#: templates/js/translated/build.js:609
+#: templates/js/translated/build.js:615
msgid "Complete Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:706
+#: templates/js/translated/build.js:712
msgid "Selected build outputs will be marked as scrapped"
msgstr ""
-#: templates/js/translated/build.js:708
+#: templates/js/translated/build.js:714
msgid "Scrapped output are marked as rejected"
msgstr ""
-#: templates/js/translated/build.js:709
+#: templates/js/translated/build.js:715
msgid "Allocated stock items will no longer be available"
msgstr ""
-#: templates/js/translated/build.js:710
+#: templates/js/translated/build.js:716
msgid "The completion status of the build order will not be adjusted"
msgstr ""
-#: templates/js/translated/build.js:737
+#: templates/js/translated/build.js:743
msgid "Scrap Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:827
+#: templates/js/translated/build.js:833
msgid "Selected build outputs will be deleted"
msgstr ""
-#: templates/js/translated/build.js:829
+#: templates/js/translated/build.js:835
msgid "Build output data will be permanently deleted"
msgstr ""
-#: templates/js/translated/build.js:830
+#: templates/js/translated/build.js:836
msgid "Allocated stock items will be returned to stock"
msgstr ""
-#: templates/js/translated/build.js:848
+#: templates/js/translated/build.js:854
msgid "Delete Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:934
+#: templates/js/translated/build.js:941
msgid "No build order allocations found"
msgstr ""
-#: templates/js/translated/build.js:971
+#: templates/js/translated/build.js:970 templates/js/translated/build.js:2270
+msgid "Allocated Quantity"
+msgstr ""
+
+#: templates/js/translated/build.js:984
msgid "Location not specified"
msgstr ""
-#: templates/js/translated/build.js:1047
+#: templates/js/translated/build.js:1006
+msgid "Complete outputs"
+msgstr ""
+
+#: templates/js/translated/build.js:1024
+msgid "Scrap outputs"
+msgstr ""
+
+#: templates/js/translated/build.js:1042
+msgid "Delete outputs"
+msgstr ""
+
+#: templates/js/translated/build.js:1100
msgid "build output"
msgstr ""
-#: templates/js/translated/build.js:1048
+#: templates/js/translated/build.js:1101
msgid "build outputs"
msgstr ""
-#: templates/js/translated/build.js:1383
+#: templates/js/translated/build.js:1105
+msgid "Build output actions"
+msgstr ""
+
+#: templates/js/translated/build.js:1274
msgid "No active build outputs found"
msgstr ""
-#: templates/js/translated/build.js:1457
-msgid "Allocated Stock"
+#: templates/js/translated/build.js:1329
+msgid "Allocated Lines"
msgstr ""
-#: templates/js/translated/build.js:1464
-msgid "No tracked BOM items for this build"
+#: templates/js/translated/build.js:1343
+msgid "Required Tests"
msgstr ""
-#: templates/js/translated/build.js:1486
-msgid "Completed Tests"
-msgstr ""
-
-#: templates/js/translated/build.js:1491
-msgid "No required tests for this build"
-msgstr ""
-
-#: templates/js/translated/build.js:2032 templates/js/translated/build.js:3056
-#: templates/js/translated/sales_order.js:1632
-msgid "Edit stock allocation"
-msgstr ""
-
-#: templates/js/translated/build.js:2034 templates/js/translated/build.js:3057
-#: templates/js/translated/sales_order.js:1633
-msgid "Delete stock allocation"
-msgstr ""
-
-#: templates/js/translated/build.js:2050
-msgid "Edit Allocation"
-msgstr ""
-
-#: templates/js/translated/build.js:2060
-msgid "Remove Allocation"
-msgstr ""
-
-#: templates/js/translated/build.js:2086
-msgid "Substitute parts available"
-msgstr ""
-
-#: templates/js/translated/build.js:2122
-msgid "Quantity Per"
-msgstr ""
-
-#: templates/js/translated/build.js:2167
-#: templates/js/translated/sales_order.js:1894
-msgid "Insufficient stock available"
-msgstr ""
-
-#: templates/js/translated/build.js:2169
-#: templates/js/translated/sales_order.js:1892
-msgid "Sufficient stock available"
-msgstr ""
-
-#: templates/js/translated/build.js:2263
-#: templates/js/translated/sales_order.js:1993
-msgid "Build stock"
-msgstr ""
-
-#: templates/js/translated/build.js:2267 templates/stock_table.html:38
-msgid "Order stock"
-msgstr ""
-
-#: templates/js/translated/build.js:2270
-#: templates/js/translated/sales_order.js:1987
-msgid "Allocate stock"
-msgstr ""
-
-#: templates/js/translated/build.js:2310
-#: templates/js/translated/purchase_order.js:616
-#: templates/js/translated/sales_order.js:1159
+#: templates/js/translated/build.js:1502
+#: templates/js/translated/purchase_order.js:627
+#: templates/js/translated/sales_order.js:1171
msgid "Select Parts"
msgstr ""
-#: templates/js/translated/build.js:2311
-#: templates/js/translated/sales_order.js:1160
+#: templates/js/translated/build.js:1503
+#: templates/js/translated/sales_order.js:1172
msgid "You must select at least one part to allocate"
msgstr ""
-#: templates/js/translated/build.js:2359
-#: templates/js/translated/sales_order.js:1109
+#: templates/js/translated/build.js:1566
+#: templates/js/translated/sales_order.js:1121
msgid "Specify stock allocation quantity"
msgstr ""
-#: templates/js/translated/build.js:2438
+#: templates/js/translated/build.js:1643
msgid "All Parts Allocated"
msgstr ""
-#: templates/js/translated/build.js:2439
+#: templates/js/translated/build.js:1644
msgid "All selected parts have been fully allocated"
msgstr ""
-#: templates/js/translated/build.js:2453
-#: templates/js/translated/sales_order.js:1174
+#: templates/js/translated/build.js:1658
+#: templates/js/translated/sales_order.js:1186
msgid "Select source location (leave blank to take from all locations)"
msgstr ""
-#: templates/js/translated/build.js:2481
+#: templates/js/translated/build.js:1686
msgid "Allocate Stock Items to Build Order"
msgstr ""
-#: templates/js/translated/build.js:2492
-#: templates/js/translated/sales_order.js:1271
+#: templates/js/translated/build.js:1697
+#: templates/js/translated/sales_order.js:1283
msgid "No matching stock locations"
msgstr ""
-#: templates/js/translated/build.js:2565
-#: templates/js/translated/sales_order.js:1348
+#: templates/js/translated/build.js:1770
+#: templates/js/translated/sales_order.js:1360
msgid "No matching stock items"
msgstr ""
-#: templates/js/translated/build.js:2662
+#: templates/js/translated/build.js:1867
msgid "Automatic Stock Allocation"
msgstr ""
-#: templates/js/translated/build.js:2663
+#: templates/js/translated/build.js:1868
msgid "Stock items will be automatically allocated to this build order, according to the provided guidelines"
msgstr ""
-#: templates/js/translated/build.js:2665
+#: templates/js/translated/build.js:1870
msgid "If a location is specified, stock will only be allocated from that location"
msgstr ""
-#: templates/js/translated/build.js:2666
+#: templates/js/translated/build.js:1871
msgid "If stock is considered interchangeable, it will be allocated from the first location it is found"
msgstr ""
-#: templates/js/translated/build.js:2667
+#: templates/js/translated/build.js:1872
msgid "If substitute stock is allowed, it will be used where stock of the primary part cannot be found"
msgstr ""
-#: templates/js/translated/build.js:2694
+#: templates/js/translated/build.js:1899
msgid "Allocate Stock Items"
msgstr ""
-#: templates/js/translated/build.js:2800
+#: templates/js/translated/build.js:2005
msgid "No builds matching query"
msgstr ""
-#: templates/js/translated/build.js:2835 templates/js/translated/part.js:2208
-#: templates/js/translated/part.js:2692 templates/js/translated/stock.js:1759
-#: templates/js/translated/stock.js:2458
+#: templates/js/translated/build.js:2040 templates/js/translated/build.js:2408
+#: templates/js/translated/part.js:2284 templates/js/translated/part.js:2677
+#: templates/js/translated/stock.js:1899 templates/js/translated/stock.js:2589
msgid "Select"
msgstr ""
-#: templates/js/translated/build.js:2849
+#: templates/js/translated/build.js:2054
msgid "Build order is overdue"
msgstr ""
-#: templates/js/translated/build.js:2883
+#: templates/js/translated/build.js:2100
msgid "Progress"
msgstr ""
-#: templates/js/translated/build.js:2919 templates/js/translated/stock.js:2779
+#: templates/js/translated/build.js:2136 templates/js/translated/stock.js:2910
msgid "No user information"
msgstr ""
-#: templates/js/translated/build.js:2934
+#: templates/js/translated/build.js:2151
msgid "group"
msgstr ""
-#: templates/js/translated/build.js:3033
-msgid "No parts allocated for"
+#: templates/js/translated/build.js:2315
+#: templates/js/translated/sales_order.js:1644
+msgid "Edit stock allocation"
msgstr ""
-#: templates/js/translated/company.js:87
+#: templates/js/translated/build.js:2316
+#: templates/js/translated/sales_order.js:1645
+msgid "Delete stock allocation"
+msgstr ""
+
+#: templates/js/translated/build.js:2331
+msgid "Edit Allocation"
+msgstr ""
+
+#: templates/js/translated/build.js:2343
+msgid "Remove Allocation"
+msgstr ""
+
+#: templates/js/translated/build.js:2384
+msgid "build line"
+msgstr ""
+
+#: templates/js/translated/build.js:2385
+msgid "build lines"
+msgstr ""
+
+#: templates/js/translated/build.js:2403
+msgid "No build lines found"
+msgstr ""
+
+#: templates/js/translated/build.js:2433 templates/js/translated/part.js:767
+#: templates/js/translated/part.js:1175
+msgid "Trackable part"
+msgstr ""
+
+#: templates/js/translated/build.js:2468
+msgid "Unit Quantity"
+msgstr ""
+
+#: templates/js/translated/build.js:2517
+#: templates/js/translated/sales_order.js:1906
+msgid "Insufficient stock available"
+msgstr ""
+
+#: templates/js/translated/build.js:2519
+#: templates/js/translated/sales_order.js:1904
+msgid "Sufficient stock available"
+msgstr ""
+
+#: templates/js/translated/build.js:2566
+msgid "Consumable Item"
+msgstr ""
+
+#: templates/js/translated/build.js:2571
+msgid "Tracked item"
+msgstr ""
+
+#: templates/js/translated/build.js:2578
+#: templates/js/translated/sales_order.js:2005
+msgid "Build stock"
+msgstr ""
+
+#: templates/js/translated/build.js:2583 templates/js/translated/stock.js:1779
+msgid "Order stock"
+msgstr ""
+
+#: templates/js/translated/build.js:2587
+#: templates/js/translated/sales_order.js:1999
+msgid "Allocate stock"
+msgstr ""
+
+#: templates/js/translated/build.js:2591
+msgid "Remove stock allocation"
+msgstr ""
+
+#: templates/js/translated/company.js:97
msgid "Add Manufacturer"
msgstr ""
-#: templates/js/translated/company.js:100
-#: templates/js/translated/company.js:202
+#: templates/js/translated/company.js:110
+#: templates/js/translated/company.js:212
msgid "Add Manufacturer Part"
msgstr ""
-#: templates/js/translated/company.js:121
+#: templates/js/translated/company.js:131
msgid "Edit Manufacturer Part"
msgstr ""
-#: templates/js/translated/company.js:190
-#: templates/js/translated/purchase_order.js:94
+#: templates/js/translated/company.js:200
+#: templates/js/translated/purchase_order.js:93
msgid "Add Supplier"
msgstr ""
-#: templates/js/translated/company.js:232
-#: templates/js/translated/purchase_order.js:338
+#: templates/js/translated/company.js:242
+#: templates/js/translated/purchase_order.js:349
msgid "Add Supplier Part"
msgstr ""
-#: templates/js/translated/company.js:333
+#: templates/js/translated/company.js:343
msgid "All selected supplier parts will be deleted"
msgstr ""
-#: templates/js/translated/company.js:349
+#: templates/js/translated/company.js:359
msgid "Delete Supplier Parts"
msgstr ""
-#: templates/js/translated/company.js:457
+#: templates/js/translated/company.js:464
msgid "Add new Company"
msgstr ""
-#: templates/js/translated/company.js:528
+#: templates/js/translated/company.js:535
msgid "Parts Supplied"
msgstr ""
-#: templates/js/translated/company.js:537
+#: templates/js/translated/company.js:544
msgid "Parts Manufactured"
msgstr ""
-#: templates/js/translated/company.js:552
+#: templates/js/translated/company.js:559
msgid "No company information found"
msgstr ""
-#: templates/js/translated/company.js:601
+#: templates/js/translated/company.js:608
msgid "Create New Contact"
msgstr ""
-#: templates/js/translated/company.js:617
-#: templates/js/translated/company.js:740
+#: templates/js/translated/company.js:624
+#: templates/js/translated/company.js:747
msgid "Edit Contact"
msgstr ""
-#: templates/js/translated/company.js:654
+#: templates/js/translated/company.js:661
msgid "All selected contacts will be deleted"
msgstr ""
-#: templates/js/translated/company.js:660
-#: templates/js/translated/company.js:724
+#: templates/js/translated/company.js:667
+#: templates/js/translated/company.js:731
msgid "Role"
msgstr ""
-#: templates/js/translated/company.js:668
+#: templates/js/translated/company.js:675
msgid "Delete Contacts"
msgstr ""
-#: templates/js/translated/company.js:699
+#: templates/js/translated/company.js:706
msgid "No contacts found"
msgstr ""
-#: templates/js/translated/company.js:712
+#: templates/js/translated/company.js:719
msgid "Phone Number"
msgstr ""
-#: templates/js/translated/company.js:718
+#: templates/js/translated/company.js:725
msgid "Email Address"
msgstr ""
-#: templates/js/translated/company.js:744
+#: templates/js/translated/company.js:751
msgid "Delete Contact"
msgstr ""
-#: templates/js/translated/company.js:818
+#: templates/js/translated/company.js:886
+msgid "Create New Address"
+msgstr ""
+
+#: templates/js/translated/company.js:901
+#: templates/js/translated/company.js:1066
+msgid "Edit Address"
+msgstr ""
+
+#: templates/js/translated/company.js:936
+msgid "All selected addresses will be deleted"
+msgstr ""
+
+#: templates/js/translated/company.js:950
+msgid "Delete Addresses"
+msgstr ""
+
+#: templates/js/translated/company.js:977
+msgid "No addresses found"
+msgstr ""
+
+#: templates/js/translated/company.js:1020
+msgid "Postal city"
+msgstr ""
+
+#: templates/js/translated/company.js:1026
+msgid "State/province"
+msgstr ""
+
+#: templates/js/translated/company.js:1038
+msgid "Courier notes"
+msgstr ""
+
+#: templates/js/translated/company.js:1044
+msgid "Internal notes"
+msgstr ""
+
+#: templates/js/translated/company.js:1070
+msgid "Delete Address"
+msgstr ""
+
+#: templates/js/translated/company.js:1143
msgid "All selected manufacturer parts will be deleted"
msgstr ""
-#: templates/js/translated/company.js:833
+#: templates/js/translated/company.js:1158
msgid "Delete Manufacturer Parts"
msgstr ""
-#: templates/js/translated/company.js:867
+#: templates/js/translated/company.js:1192
msgid "All selected parameters will be deleted"
msgstr "Tất cả những thống số được chọn sẽ bị xoá"
-#: templates/js/translated/company.js:881
+#: templates/js/translated/company.js:1206
msgid "Delete Parameters"
msgstr "Xóa các thông số"
-#: templates/js/translated/company.js:917
+#: templates/js/translated/company.js:1222
+#: templates/js/translated/company.js:1510 templates/js/translated/part.js:2213
+msgid "Order parts"
+msgstr ""
+
+#: templates/js/translated/company.js:1239
+msgid "Delete manufacturer parts"
+msgstr ""
+
+#: templates/js/translated/company.js:1271
+msgid "Manufacturer part actions"
+msgstr ""
+
+#: templates/js/translated/company.js:1290
msgid "No manufacturer parts found"
msgstr ""
-#: templates/js/translated/company.js:937
-#: templates/js/translated/company.js:1177 templates/js/translated/part.js:776
-#: templates/js/translated/part.js:1184
+#: templates/js/translated/company.js:1310
+#: templates/js/translated/company.js:1598 templates/js/translated/part.js:775
+#: templates/js/translated/part.js:1183
msgid "Template part"
msgstr ""
-#: templates/js/translated/company.js:941
-#: templates/js/translated/company.js:1181 templates/js/translated/part.js:780
-#: templates/js/translated/part.js:1188
+#: templates/js/translated/company.js:1314
+#: templates/js/translated/company.js:1602 templates/js/translated/part.js:779
+#: templates/js/translated/part.js:1187
msgid "Assembled part"
msgstr ""
-#: templates/js/translated/company.js:1061 templates/js/translated/part.js:1437
+#: templates/js/translated/company.js:1434 templates/js/translated/part.js:1436
msgid "No parameters found"
msgstr "Không có thông số được tìm thấy"
-#: templates/js/translated/company.js:1096 templates/js/translated/part.js:1500
+#: templates/js/translated/company.js:1469 templates/js/translated/part.js:1499
msgid "Edit parameter"
msgstr ""
-#: templates/js/translated/company.js:1097 templates/js/translated/part.js:1501
+#: templates/js/translated/company.js:1470 templates/js/translated/part.js:1500
msgid "Delete parameter"
msgstr ""
-#: templates/js/translated/company.js:1114 templates/js/translated/part.js:1407
+#: templates/js/translated/company.js:1487 templates/js/translated/part.js:1406
msgid "Edit Parameter"
msgstr ""
-#: templates/js/translated/company.js:1123 templates/js/translated/part.js:1522
+#: templates/js/translated/company.js:1496 templates/js/translated/part.js:1521
msgid "Delete Parameter"
msgstr ""
-#: templates/js/translated/company.js:1156
+#: templates/js/translated/company.js:1527
+msgid "Delete supplier parts"
+msgstr ""
+
+#: templates/js/translated/company.js:1577
msgid "No supplier parts found"
msgstr ""
-#: templates/js/translated/company.js:1274
+#: templates/js/translated/company.js:1695
msgid "Base Units"
msgstr ""
-#: templates/js/translated/company.js:1304
+#: templates/js/translated/company.js:1725
msgid "Availability"
msgstr ""
-#: templates/js/translated/company.js:1335
+#: templates/js/translated/company.js:1756
msgid "Edit supplier part"
msgstr ""
-#: templates/js/translated/company.js:1336
+#: templates/js/translated/company.js:1757
msgid "Delete supplier part"
msgstr ""
-#: templates/js/translated/company.js:1389
+#: templates/js/translated/company.js:1810
#: templates/js/translated/pricing.js:694
msgid "Delete Price Break"
msgstr ""
-#: templates/js/translated/company.js:1399
+#: templates/js/translated/company.js:1820
#: templates/js/translated/pricing.js:712
msgid "Edit Price Break"
msgstr ""
-#: templates/js/translated/company.js:1414
+#: templates/js/translated/company.js:1835
msgid "No price break information found"
msgstr ""
-#: templates/js/translated/company.js:1443
+#: templates/js/translated/company.js:1864
msgid "Last updated"
msgstr ""
-#: templates/js/translated/company.js:1450
+#: templates/js/translated/company.js:1871
msgid "Edit price break"
msgstr ""
-#: templates/js/translated/company.js:1451
+#: templates/js/translated/company.js:1872
msgid "Delete price break"
msgstr ""
-#: templates/js/translated/filters.js:186
-#: templates/js/translated/filters.js:550
+#: templates/js/translated/filters.js:187
+#: templates/js/translated/filters.js:673
msgid "true"
msgstr ""
-#: templates/js/translated/filters.js:190
-#: templates/js/translated/filters.js:551
+#: templates/js/translated/filters.js:191
+#: templates/js/translated/filters.js:674
msgid "false"
msgstr ""
-#: templates/js/translated/filters.js:214
+#: templates/js/translated/filters.js:215
msgid "Select filter"
msgstr ""
-#: templates/js/translated/filters.js:328
+#: templates/js/translated/filters.js:438
msgid "Print Labels"
msgstr ""
-#: templates/js/translated/filters.js:332
+#: templates/js/translated/filters.js:442
msgid "Print Reports"
msgstr ""
-#: templates/js/translated/filters.js:344
+#: templates/js/translated/filters.js:454
msgid "Download table data"
msgstr ""
-#: templates/js/translated/filters.js:351
+#: templates/js/translated/filters.js:461
msgid "Reload table data"
msgstr ""
-#: templates/js/translated/filters.js:360
+#: templates/js/translated/filters.js:470
msgid "Add new filter"
msgstr ""
-#: templates/js/translated/filters.js:368
+#: templates/js/translated/filters.js:478
msgid "Clear all filters"
msgstr ""
-#: templates/js/translated/filters.js:460
+#: templates/js/translated/filters.js:583
msgid "Create filter"
msgstr ""
@@ -10497,6 +10620,12 @@ msgstr ""
msgid "View operation not allowed"
msgstr ""
+#: templates/js/translated/forms.js:506 templates/js/translated/helpers.js:105
+#: templates/js/translated/part.js:369 templates/js/translated/pricing.js:629
+#: templates/js/translated/stock.js:215 users/models.py:253
+msgid "Delete"
+msgstr ""
+
#: templates/js/translated/forms.js:752
msgid "Keep this form open"
msgstr ""
@@ -10514,23 +10643,23 @@ msgstr ""
msgid "No results found"
msgstr ""
-#: templates/js/translated/forms.js:2071 templates/js/translated/search.js:281
+#: templates/js/translated/forms.js:2071 templates/js/translated/search.js:239
msgid "Searching"
msgstr ""
-#: templates/js/translated/forms.js:2276
+#: templates/js/translated/forms.js:2285
msgid "Clear input"
msgstr ""
-#: templates/js/translated/forms.js:2733
+#: templates/js/translated/forms.js:2742
msgid "File Column"
msgstr ""
-#: templates/js/translated/forms.js:2733
+#: templates/js/translated/forms.js:2742
msgid "Field Name"
msgstr ""
-#: templates/js/translated/forms.js:2745
+#: templates/js/translated/forms.js:2754
msgid "Select Columns"
msgstr ""
@@ -10550,6 +10679,14 @@ msgstr ""
msgid "False"
msgstr ""
+#: templates/js/translated/index.js:99
+msgid "No parts required for builds"
+msgstr ""
+
+#: templates/js/translated/index.js:125
+msgid "Allocated Stock"
+msgstr ""
+
#: templates/js/translated/label.js:58
msgid "Select Printer"
msgstr ""
@@ -10651,7 +10788,7 @@ msgstr ""
#: templates/js/translated/news.js:38
#: templates/js/translated/notification.js:45
-#: templates/js/translated/part.js:1577
+#: templates/js/translated/part.js:1576
msgid "ID"
msgstr ""
@@ -10700,7 +10837,7 @@ msgid "Delete Line"
msgstr ""
#: templates/js/translated/order.js:281
-#: templates/js/translated/purchase_order.js:1958
+#: templates/js/translated/purchase_order.js:1968
msgid "No line items found"
msgstr ""
@@ -10716,363 +10853,355 @@ msgstr ""
msgid "Delete line"
msgstr ""
-#: templates/js/translated/part.js:91
+#: templates/js/translated/part.js:90
msgid "Part Attributes"
msgstr ""
-#: templates/js/translated/part.js:95
+#: templates/js/translated/part.js:94
msgid "Part Creation Options"
msgstr ""
-#: templates/js/translated/part.js:99
+#: templates/js/translated/part.js:98
msgid "Part Duplication Options"
msgstr ""
-#: templates/js/translated/part.js:122
+#: templates/js/translated/part.js:121
msgid "Add Part Category"
msgstr ""
-#: templates/js/translated/part.js:294
+#: templates/js/translated/part.js:293
msgid "Parent part category"
msgstr ""
-#: templates/js/translated/part.js:310 templates/js/translated/stock.js:147
+#: templates/js/translated/part.js:309 templates/js/translated/stock.js:146
msgid "Icon (optional) - Explore all available icons on"
msgstr ""
-#: templates/js/translated/part.js:330
+#: templates/js/translated/part.js:329
msgid "Create Part Category"
msgstr ""
-#: templates/js/translated/part.js:333
+#: templates/js/translated/part.js:332
msgid "Create new category after this one"
msgstr ""
-#: templates/js/translated/part.js:334
+#: templates/js/translated/part.js:333
msgid "Part category created"
msgstr ""
-#: templates/js/translated/part.js:348
+#: templates/js/translated/part.js:347
msgid "Edit Part Category"
msgstr ""
-#: templates/js/translated/part.js:361
+#: templates/js/translated/part.js:360
msgid "Are you sure you want to delete this part category?"
msgstr ""
-#: templates/js/translated/part.js:366
+#: templates/js/translated/part.js:365
msgid "Move to parent category"
msgstr ""
-#: templates/js/translated/part.js:375
+#: templates/js/translated/part.js:374
msgid "Delete Part Category"
msgstr ""
-#: templates/js/translated/part.js:379
+#: templates/js/translated/part.js:378
msgid "Action for parts in this category"
msgstr ""
-#: templates/js/translated/part.js:384
+#: templates/js/translated/part.js:383
msgid "Action for child categories"
msgstr ""
-#: templates/js/translated/part.js:408
+#: templates/js/translated/part.js:407
msgid "Create Part"
msgstr ""
-#: templates/js/translated/part.js:410
+#: templates/js/translated/part.js:409
msgid "Create another part after this one"
msgstr ""
-#: templates/js/translated/part.js:411
+#: templates/js/translated/part.js:410
msgid "Part created successfully"
msgstr ""
-#: templates/js/translated/part.js:439
+#: templates/js/translated/part.js:438
msgid "Edit Part"
msgstr ""
-#: templates/js/translated/part.js:441
+#: templates/js/translated/part.js:440
msgid "Part edited"
msgstr ""
-#: templates/js/translated/part.js:452
+#: templates/js/translated/part.js:451
msgid "Create Part Variant"
msgstr ""
-#: templates/js/translated/part.js:509
+#: templates/js/translated/part.js:508
msgid "Active Part"
msgstr ""
-#: templates/js/translated/part.js:510
+#: templates/js/translated/part.js:509
msgid "Part cannot be deleted as it is currently active"
msgstr ""
-#: templates/js/translated/part.js:524
+#: templates/js/translated/part.js:523
msgid "Deleting this part cannot be reversed"
msgstr ""
-#: templates/js/translated/part.js:526
+#: templates/js/translated/part.js:525
msgid "Any stock items for this part will be deleted"
msgstr ""
-#: templates/js/translated/part.js:527
+#: templates/js/translated/part.js:526
msgid "This part will be removed from any Bills of Material"
msgstr ""
-#: templates/js/translated/part.js:528
+#: templates/js/translated/part.js:527
msgid "All manufacturer and supplier information for this part will be deleted"
msgstr ""
-#: templates/js/translated/part.js:535
+#: templates/js/translated/part.js:534
msgid "Delete Part"
msgstr ""
-#: templates/js/translated/part.js:571
+#: templates/js/translated/part.js:570
msgid "You are subscribed to notifications for this item"
msgstr ""
-#: templates/js/translated/part.js:573
+#: templates/js/translated/part.js:572
msgid "You have subscribed to notifications for this item"
msgstr ""
-#: templates/js/translated/part.js:578
+#: templates/js/translated/part.js:577
msgid "Subscribe to notifications for this item"
msgstr ""
-#: templates/js/translated/part.js:580
+#: templates/js/translated/part.js:579
msgid "You have unsubscribed to notifications for this item"
msgstr ""
-#: templates/js/translated/part.js:597
+#: templates/js/translated/part.js:596
msgid "Validating the BOM will mark each line item as valid"
msgstr ""
-#: templates/js/translated/part.js:607
+#: templates/js/translated/part.js:606
msgid "Validate Bill of Materials"
msgstr ""
-#: templates/js/translated/part.js:610
+#: templates/js/translated/part.js:609
msgid "Validated Bill of Materials"
msgstr ""
-#: templates/js/translated/part.js:635
+#: templates/js/translated/part.js:634
msgid "Copy Bill of Materials"
msgstr ""
-#: templates/js/translated/part.js:663
-#: templates/js/translated/table_filters.js:660
+#: templates/js/translated/part.js:662
+#: templates/js/translated/table_filters.js:682
msgid "Low stock"
msgstr ""
-#: templates/js/translated/part.js:666
+#: templates/js/translated/part.js:665
msgid "No stock available"
msgstr ""
-#: templates/js/translated/part.js:726
+#: templates/js/translated/part.js:725
msgid "Demand"
msgstr ""
-#: templates/js/translated/part.js:749
+#: templates/js/translated/part.js:748
msgid "Unit"
msgstr ""
-#: templates/js/translated/part.js:768 templates/js/translated/part.js:1176
-msgid "Trackable part"
-msgstr ""
-
-#: templates/js/translated/part.js:772 templates/js/translated/part.js:1180
+#: templates/js/translated/part.js:771 templates/js/translated/part.js:1179
msgid "Virtual part"
msgstr ""
-#: templates/js/translated/part.js:784
+#: templates/js/translated/part.js:783
msgid "Subscribed part"
msgstr ""
-#: templates/js/translated/part.js:788
+#: templates/js/translated/part.js:787
msgid "Salable part"
msgstr ""
-#: templates/js/translated/part.js:863
+#: templates/js/translated/part.js:862
msgid "Schedule generation of a new stocktake report."
msgstr ""
-#: templates/js/translated/part.js:863
+#: templates/js/translated/part.js:862
msgid "Once complete, the stocktake report will be available for download."
msgstr ""
-#: templates/js/translated/part.js:871
+#: templates/js/translated/part.js:870
msgid "Generate Stocktake Report"
msgstr ""
-#: templates/js/translated/part.js:875
+#: templates/js/translated/part.js:874
msgid "Stocktake report scheduled"
msgstr ""
-#: templates/js/translated/part.js:1024
+#: templates/js/translated/part.js:1023
msgid "No stocktake information available"
msgstr ""
-#: templates/js/translated/part.js:1082 templates/js/translated/part.js:1118
+#: templates/js/translated/part.js:1081 templates/js/translated/part.js:1117
msgid "Edit Stocktake Entry"
msgstr ""
-#: templates/js/translated/part.js:1086 templates/js/translated/part.js:1128
+#: templates/js/translated/part.js:1085 templates/js/translated/part.js:1127
msgid "Delete Stocktake Entry"
msgstr ""
-#: templates/js/translated/part.js:1255
+#: templates/js/translated/part.js:1254
msgid "No variants found"
msgstr ""
-#: templates/js/translated/part.js:1572
+#: templates/js/translated/part.js:1571
msgid "No part parameter templates found"
msgstr ""
-#: templates/js/translated/part.js:1635
+#: templates/js/translated/part.js:1634
msgid "Edit Part Parameter Template"
msgstr ""
-#: templates/js/translated/part.js:1647
+#: templates/js/translated/part.js:1646
msgid "Any parameters which reference this template will also be deleted"
msgstr "Những thông số thuộc mẫu này cũng sẽ bị xóa"
-#: templates/js/translated/part.js:1655
+#: templates/js/translated/part.js:1654
msgid "Delete Part Parameter Template"
msgstr ""
-#: templates/js/translated/part.js:1689
-#: templates/js/translated/purchase_order.js:1618
+#: templates/js/translated/part.js:1688
+#: templates/js/translated/purchase_order.js:1633
msgid "No purchase orders found"
msgstr ""
-#: templates/js/translated/part.js:1832
-#: templates/js/translated/purchase_order.js:2121
-#: templates/js/translated/return_order.js:740
-#: templates/js/translated/sales_order.js:1855
+#: templates/js/translated/part.js:1831
+#: templates/js/translated/purchase_order.js:2131
+#: templates/js/translated/return_order.js:752
+#: templates/js/translated/sales_order.js:1867
msgid "This line item is overdue"
msgstr ""
-#: templates/js/translated/part.js:1877
-#: templates/js/translated/purchase_order.js:2188
+#: templates/js/translated/part.js:1876
+#: templates/js/translated/purchase_order.js:2198
msgid "Receive line item"
msgstr ""
-#: templates/js/translated/part.js:1944
+#: templates/js/translated/part.js:1943
msgid "Delete part relationship"
msgstr ""
-#: templates/js/translated/part.js:1966
+#: templates/js/translated/part.js:1965
msgid "Delete Part Relationship"
msgstr ""
-#: templates/js/translated/part.js:2054 templates/js/translated/part.js:2366
+#: templates/js/translated/part.js:2053 templates/js/translated/part.js:2442
msgid "No parts found"
msgstr ""
-#: templates/js/translated/part.js:2192
-msgid "parts"
-msgstr ""
-
-#: templates/js/translated/part.js:2276
-msgid "No category"
-msgstr ""
-
-#: templates/js/translated/part.js:2390 templates/js/translated/part.js:2611
-#: templates/js/translated/stock.js:2417
-msgid "Display as list"
-msgstr ""
-
-#: templates/js/translated/part.js:2406
-msgid "Display as grid"
-msgstr ""
-
-#: templates/js/translated/part.js:2472
+#: templates/js/translated/part.js:2174
msgid "Set the part category for the selected parts"
msgstr ""
-#: templates/js/translated/part.js:2477
+#: templates/js/translated/part.js:2179
msgid "Set Part Category"
msgstr ""
+#: templates/js/translated/part.js:2204
+msgid "Set category"
+msgstr ""
+
+#: templates/js/translated/part.js:2259
+msgid "parts"
+msgstr ""
+
+#: templates/js/translated/part.js:2352
+msgid "No category"
+msgstr ""
+
+#: templates/js/translated/part.js:2466 templates/js/translated/part.js:2596
+#: templates/js/translated/stock.js:2548
+msgid "Display as list"
+msgstr ""
+
#: templates/js/translated/part.js:2482
-msgid "Select Part Category"
+msgid "Display as grid"
msgstr ""
-#: templates/js/translated/part.js:2495
-msgid "Category is required"
-msgstr ""
-
-#: templates/js/translated/part.js:2595
+#: templates/js/translated/part.js:2580
msgid "No subcategories found"
msgstr ""
-#: templates/js/translated/part.js:2631 templates/js/translated/stock.js:2437
+#: templates/js/translated/part.js:2616 templates/js/translated/stock.js:2568
msgid "Display as tree"
msgstr ""
-#: templates/js/translated/part.js:2711
+#: templates/js/translated/part.js:2696
msgid "Load Subcategories"
msgstr ""
-#: templates/js/translated/part.js:2727
+#: templates/js/translated/part.js:2712
msgid "Subscribed category"
msgstr ""
-#: templates/js/translated/part.js:2807
+#: templates/js/translated/part.js:2792
msgid "No test templates matching query"
msgstr ""
-#: templates/js/translated/part.js:2858 templates/js/translated/stock.js:1380
+#: templates/js/translated/part.js:2843 templates/js/translated/stock.js:1379
msgid "Edit test result"
msgstr ""
-#: templates/js/translated/part.js:2859 templates/js/translated/stock.js:1381
-#: templates/js/translated/stock.js:1643
+#: templates/js/translated/part.js:2844 templates/js/translated/stock.js:1380
+#: templates/js/translated/stock.js:1642
msgid "Delete test result"
msgstr ""
-#: templates/js/translated/part.js:2863
+#: templates/js/translated/part.js:2848
msgid "This test is defined for a parent part"
msgstr ""
-#: templates/js/translated/part.js:2879
+#: templates/js/translated/part.js:2864
msgid "Edit Test Result Template"
msgstr ""
-#: templates/js/translated/part.js:2893
+#: templates/js/translated/part.js:2878
msgid "Delete Test Result Template"
msgstr ""
-#: templates/js/translated/part.js:2972 templates/js/translated/part.js:2973
+#: templates/js/translated/part.js:2957 templates/js/translated/part.js:2958
msgid "No date specified"
msgstr ""
-#: templates/js/translated/part.js:2975
+#: templates/js/translated/part.js:2960
msgid "Specified date is in the past"
msgstr ""
-#: templates/js/translated/part.js:2981
+#: templates/js/translated/part.js:2966
msgid "Speculative"
msgstr ""
-#: templates/js/translated/part.js:3031
+#: templates/js/translated/part.js:3016
msgid "No scheduling information available for this part"
msgstr ""
-#: templates/js/translated/part.js:3037
+#: templates/js/translated/part.js:3022
msgid "Error fetching scheduling information for this part"
msgstr ""
-#: templates/js/translated/part.js:3133
+#: templates/js/translated/part.js:3118
msgid "Scheduled Stock Quantities"
msgstr ""
-#: templates/js/translated/part.js:3149
+#: templates/js/translated/part.js:3134
msgid "Maximum Quantity"
msgstr ""
-#: templates/js/translated/part.js:3194
+#: templates/js/translated/part.js:3179
msgid "Minimum Stock Level"
msgstr ""
@@ -11168,234 +11297,234 @@ msgstr ""
msgid "Variant Part"
msgstr ""
-#: templates/js/translated/purchase_order.js:155
+#: templates/js/translated/purchase_order.js:166
msgid "Select purchase order to duplicate"
msgstr ""
-#: templates/js/translated/purchase_order.js:162
+#: templates/js/translated/purchase_order.js:173
msgid "Duplicate Line Items"
msgstr ""
-#: templates/js/translated/purchase_order.js:163
+#: templates/js/translated/purchase_order.js:174
msgid "Duplicate all line items from the selected order"
msgstr ""
-#: templates/js/translated/purchase_order.js:170
+#: templates/js/translated/purchase_order.js:181
msgid "Duplicate Extra Lines"
msgstr ""
-#: templates/js/translated/purchase_order.js:171
+#: templates/js/translated/purchase_order.js:182
msgid "Duplicate extra line items from the selected order"
msgstr ""
-#: templates/js/translated/purchase_order.js:192
+#: templates/js/translated/purchase_order.js:203
msgid "Edit Purchase Order"
msgstr ""
-#: templates/js/translated/purchase_order.js:209
+#: templates/js/translated/purchase_order.js:220
msgid "Duplication Options"
msgstr ""
-#: templates/js/translated/purchase_order.js:436
+#: templates/js/translated/purchase_order.js:447
msgid "Complete Purchase Order"
msgstr ""
-#: templates/js/translated/purchase_order.js:453
-#: templates/js/translated/return_order.js:195
-#: templates/js/translated/sales_order.js:485
+#: templates/js/translated/purchase_order.js:464
+#: templates/js/translated/return_order.js:207
+#: templates/js/translated/sales_order.js:497
msgid "Mark this order as complete?"
msgstr ""
-#: templates/js/translated/purchase_order.js:459
+#: templates/js/translated/purchase_order.js:470
msgid "All line items have been received"
msgstr ""
-#: templates/js/translated/purchase_order.js:464
+#: templates/js/translated/purchase_order.js:475
msgid "This order has line items which have not been marked as received."
msgstr ""
-#: templates/js/translated/purchase_order.js:465
-#: templates/js/translated/sales_order.js:499
+#: templates/js/translated/purchase_order.js:476
+#: templates/js/translated/sales_order.js:511
msgid "Completing this order means that the order and line items will no longer be editable."
msgstr ""
-#: templates/js/translated/purchase_order.js:488
+#: templates/js/translated/purchase_order.js:499
msgid "Cancel Purchase Order"
msgstr ""
-#: templates/js/translated/purchase_order.js:493
+#: templates/js/translated/purchase_order.js:504
msgid "Are you sure you wish to cancel this purchase order?"
msgstr ""
-#: templates/js/translated/purchase_order.js:499
+#: templates/js/translated/purchase_order.js:510
msgid "This purchase order can not be cancelled"
msgstr ""
-#: templates/js/translated/purchase_order.js:520
-#: templates/js/translated/return_order.js:149
+#: templates/js/translated/purchase_order.js:531
+#: templates/js/translated/return_order.js:161
msgid "After placing this order, line items will no longer be editable."
msgstr ""
-#: templates/js/translated/purchase_order.js:525
+#: templates/js/translated/purchase_order.js:536
msgid "Issue Purchase Order"
msgstr ""
-#: templates/js/translated/purchase_order.js:617
+#: templates/js/translated/purchase_order.js:628
msgid "At least one purchaseable part must be selected"
msgstr ""
-#: templates/js/translated/purchase_order.js:642
+#: templates/js/translated/purchase_order.js:653
msgid "Quantity to order"
msgstr ""
-#: templates/js/translated/purchase_order.js:651
+#: templates/js/translated/purchase_order.js:662
msgid "New supplier part"
msgstr ""
-#: templates/js/translated/purchase_order.js:669
+#: templates/js/translated/purchase_order.js:680
msgid "New purchase order"
msgstr ""
-#: templates/js/translated/purchase_order.js:701
+#: templates/js/translated/purchase_order.js:712
msgid "Add to purchase order"
msgstr ""
-#: templates/js/translated/purchase_order.js:845
+#: templates/js/translated/purchase_order.js:860
msgid "No matching supplier parts"
msgstr ""
-#: templates/js/translated/purchase_order.js:864
+#: templates/js/translated/purchase_order.js:879
msgid "No matching purchase orders"
msgstr ""
-#: templates/js/translated/purchase_order.js:1043
+#: templates/js/translated/purchase_order.js:1058
msgid "Select Line Items"
msgstr ""
-#: templates/js/translated/purchase_order.js:1044
-#: templates/js/translated/return_order.js:480
+#: templates/js/translated/purchase_order.js:1059
+#: templates/js/translated/return_order.js:492
msgid "At least one line item must be selected"
msgstr ""
-#: templates/js/translated/purchase_order.js:1074
+#: templates/js/translated/purchase_order.js:1089
msgid "Received Quantity"
msgstr ""
-#: templates/js/translated/purchase_order.js:1085
+#: templates/js/translated/purchase_order.js:1100
msgid "Quantity to receive"
msgstr ""
-#: templates/js/translated/purchase_order.js:1161
+#: templates/js/translated/purchase_order.js:1176
msgid "Stock Status"
msgstr ""
-#: templates/js/translated/purchase_order.js:1175
+#: templates/js/translated/purchase_order.js:1190
msgid "Add barcode"
msgstr ""
-#: templates/js/translated/purchase_order.js:1176
+#: templates/js/translated/purchase_order.js:1191
msgid "Remove barcode"
msgstr ""
-#: templates/js/translated/purchase_order.js:1179
+#: templates/js/translated/purchase_order.js:1194
msgid "Specify location"
msgstr ""
-#: templates/js/translated/purchase_order.js:1187
+#: templates/js/translated/purchase_order.js:1202
msgid "Add batch code"
msgstr ""
-#: templates/js/translated/purchase_order.js:1198
+#: templates/js/translated/purchase_order.js:1213
msgid "Add serial numbers"
msgstr ""
-#: templates/js/translated/purchase_order.js:1250
+#: templates/js/translated/purchase_order.js:1265
msgid "Serials"
msgstr ""
-#: templates/js/translated/purchase_order.js:1275
+#: templates/js/translated/purchase_order.js:1290
msgid "Order Code"
msgstr ""
-#: templates/js/translated/purchase_order.js:1277
+#: templates/js/translated/purchase_order.js:1292
msgid "Quantity to Receive"
msgstr ""
-#: templates/js/translated/purchase_order.js:1299
-#: templates/js/translated/return_order.js:545
+#: templates/js/translated/purchase_order.js:1314
+#: templates/js/translated/return_order.js:557
msgid "Confirm receipt of items"
msgstr ""
-#: templates/js/translated/purchase_order.js:1300
+#: templates/js/translated/purchase_order.js:1315
msgid "Receive Purchase Order Items"
msgstr ""
-#: templates/js/translated/purchase_order.js:1368
+#: templates/js/translated/purchase_order.js:1383
msgid "Scan Item Barcode"
msgstr ""
-#: templates/js/translated/purchase_order.js:1369
+#: templates/js/translated/purchase_order.js:1384
msgid "Scan barcode on incoming item (must not match any existing stock items)"
msgstr ""
-#: templates/js/translated/purchase_order.js:1383
+#: templates/js/translated/purchase_order.js:1398
msgid "Invalid barcode data"
msgstr ""
-#: templates/js/translated/purchase_order.js:1645
-#: templates/js/translated/return_order.js:274
-#: templates/js/translated/sales_order.js:762
-#: templates/js/translated/sales_order.js:986
+#: templates/js/translated/purchase_order.js:1660
+#: templates/js/translated/return_order.js:286
+#: templates/js/translated/sales_order.js:774
+#: templates/js/translated/sales_order.js:998
msgid "Order is overdue"
msgstr ""
-#: templates/js/translated/purchase_order.js:1707
-#: templates/js/translated/return_order.js:342
-#: templates/js/translated/sales_order.js:839
-#: templates/js/translated/sales_order.js:999
+#: templates/js/translated/purchase_order.js:1722
+#: templates/js/translated/return_order.js:354
+#: templates/js/translated/sales_order.js:851
+#: templates/js/translated/sales_order.js:1011
msgid "Items"
msgstr ""
-#: templates/js/translated/purchase_order.js:1806
+#: templates/js/translated/purchase_order.js:1821
msgid "All selected Line items will be deleted"
msgstr ""
-#: templates/js/translated/purchase_order.js:1824
+#: templates/js/translated/purchase_order.js:1839
msgid "Delete selected Line items?"
msgstr ""
-#: templates/js/translated/purchase_order.js:1884
-#: templates/js/translated/sales_order.js:2047
+#: templates/js/translated/purchase_order.js:1894
+#: templates/js/translated/sales_order.js:2059
msgid "Duplicate Line Item"
msgstr ""
-#: templates/js/translated/purchase_order.js:1899
-#: templates/js/translated/return_order.js:464
-#: templates/js/translated/return_order.js:653
-#: templates/js/translated/sales_order.js:2060
+#: templates/js/translated/purchase_order.js:1909
+#: templates/js/translated/return_order.js:476
+#: templates/js/translated/return_order.js:665
+#: templates/js/translated/sales_order.js:2072
msgid "Edit Line Item"
msgstr ""
-#: templates/js/translated/purchase_order.js:1910
-#: templates/js/translated/return_order.js:666
-#: templates/js/translated/sales_order.js:2071
+#: templates/js/translated/purchase_order.js:1920
+#: templates/js/translated/return_order.js:678
+#: templates/js/translated/sales_order.js:2083
msgid "Delete Line Item"
msgstr ""
-#: templates/js/translated/purchase_order.js:2192
-#: templates/js/translated/sales_order.js:2001
+#: templates/js/translated/purchase_order.js:2202
+#: templates/js/translated/sales_order.js:2013
msgid "Duplicate line item"
msgstr ""
-#: templates/js/translated/purchase_order.js:2193
-#: templates/js/translated/return_order.js:785
-#: templates/js/translated/sales_order.js:2002
+#: templates/js/translated/purchase_order.js:2203
+#: templates/js/translated/return_order.js:797
+#: templates/js/translated/sales_order.js:2014
msgid "Edit line item"
msgstr ""
-#: templates/js/translated/purchase_order.js:2194
-#: templates/js/translated/return_order.js:789
-#: templates/js/translated/sales_order.js:2008
+#: templates/js/translated/purchase_order.js:2204
+#: templates/js/translated/return_order.js:801
+#: templates/js/translated/sales_order.js:2020
msgid "Delete line item"
msgstr ""
@@ -11424,941 +11553,973 @@ msgstr ""
msgid "Add Customer"
msgstr ""
-#: templates/js/translated/return_order.js:119
+#: templates/js/translated/return_order.js:131
msgid "Create Return Order"
msgstr ""
-#: templates/js/translated/return_order.js:134
+#: templates/js/translated/return_order.js:146
msgid "Edit Return Order"
msgstr ""
-#: templates/js/translated/return_order.js:154
+#: templates/js/translated/return_order.js:166
msgid "Issue Return Order"
msgstr ""
-#: templates/js/translated/return_order.js:171
+#: templates/js/translated/return_order.js:183
msgid "Are you sure you wish to cancel this Return Order?"
msgstr ""
-#: templates/js/translated/return_order.js:178
+#: templates/js/translated/return_order.js:190
msgid "Cancel Return Order"
msgstr ""
-#: templates/js/translated/return_order.js:203
+#: templates/js/translated/return_order.js:215
msgid "Complete Return Order"
msgstr ""
-#: templates/js/translated/return_order.js:251
+#: templates/js/translated/return_order.js:263
msgid "No return orders found"
msgstr ""
-#: templates/js/translated/return_order.js:288
-#: templates/js/translated/sales_order.js:776
+#: templates/js/translated/return_order.js:300
+#: templates/js/translated/sales_order.js:788
msgid "Invalid Customer"
msgstr ""
-#: templates/js/translated/return_order.js:546
+#: templates/js/translated/return_order.js:558
msgid "Receive Return Order Items"
msgstr ""
-#: templates/js/translated/return_order.js:677
-#: templates/js/translated/sales_order.js:2207
+#: templates/js/translated/return_order.js:689
+#: templates/js/translated/sales_order.js:2219
msgid "No matching line items"
msgstr ""
-#: templates/js/translated/return_order.js:782
+#: templates/js/translated/return_order.js:794
msgid "Mark item as received"
msgstr ""
-#: templates/js/translated/sales_order.js:146
+#: templates/js/translated/sales_order.js:158
msgid "Create Sales Order"
msgstr ""
-#: templates/js/translated/sales_order.js:161
+#: templates/js/translated/sales_order.js:173
msgid "Edit Sales Order"
msgstr ""
-#: templates/js/translated/sales_order.js:276
+#: templates/js/translated/sales_order.js:288
msgid "No stock items have been allocated to this shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:281
+#: templates/js/translated/sales_order.js:293
msgid "The following stock items will be shipped"
msgstr ""
-#: templates/js/translated/sales_order.js:321
+#: templates/js/translated/sales_order.js:333
msgid "Complete Shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:345
+#: templates/js/translated/sales_order.js:357
msgid "Confirm Shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:401
+#: templates/js/translated/sales_order.js:413
msgid "No pending shipments found"
msgstr ""
-#: templates/js/translated/sales_order.js:405
+#: templates/js/translated/sales_order.js:417
msgid "No stock items have been allocated to pending shipments"
msgstr ""
-#: templates/js/translated/sales_order.js:415
+#: templates/js/translated/sales_order.js:427
msgid "Complete Shipments"
msgstr ""
-#: templates/js/translated/sales_order.js:437
+#: templates/js/translated/sales_order.js:449
msgid "Skip"
msgstr ""
-#: templates/js/translated/sales_order.js:498
+#: templates/js/translated/sales_order.js:510
msgid "This order has line items which have not been completed."
msgstr ""
-#: templates/js/translated/sales_order.js:520
+#: templates/js/translated/sales_order.js:532
msgid "Issue this Sales Order?"
msgstr ""
-#: templates/js/translated/sales_order.js:525
+#: templates/js/translated/sales_order.js:537
msgid "Issue Sales Order"
msgstr ""
-#: templates/js/translated/sales_order.js:544
+#: templates/js/translated/sales_order.js:556
msgid "Cancel Sales Order"
msgstr ""
-#: templates/js/translated/sales_order.js:549
+#: templates/js/translated/sales_order.js:561
msgid "Cancelling this order means that the order will no longer be editable."
msgstr ""
-#: templates/js/translated/sales_order.js:603
+#: templates/js/translated/sales_order.js:615
msgid "Create New Shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:713
+#: templates/js/translated/sales_order.js:725
msgid "No sales orders found"
msgstr ""
-#: templates/js/translated/sales_order.js:896
+#: templates/js/translated/sales_order.js:908
msgid "Edit shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:899
+#: templates/js/translated/sales_order.js:911
msgid "Complete shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:904
+#: templates/js/translated/sales_order.js:916
msgid "Delete shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:921
+#: templates/js/translated/sales_order.js:933
msgid "Edit Shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:936
+#: templates/js/translated/sales_order.js:948
msgid "Delete Shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:969
+#: templates/js/translated/sales_order.js:981
msgid "No matching shipments found"
msgstr ""
-#: templates/js/translated/sales_order.js:994
+#: templates/js/translated/sales_order.js:1006
msgid "Shipment Reference"
msgstr ""
-#: templates/js/translated/sales_order.js:1018
-#: templates/js/translated/sales_order.js:1515
+#: templates/js/translated/sales_order.js:1030
+#: templates/js/translated/sales_order.js:1527
msgid "Not shipped"
msgstr ""
-#: templates/js/translated/sales_order.js:1036
+#: templates/js/translated/sales_order.js:1048
msgid "Tracking"
msgstr ""
-#: templates/js/translated/sales_order.js:1040
+#: templates/js/translated/sales_order.js:1052
msgid "Invoice"
msgstr ""
-#: templates/js/translated/sales_order.js:1207
+#: templates/js/translated/sales_order.js:1219
msgid "Add Shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:1258
+#: templates/js/translated/sales_order.js:1270
msgid "Confirm stock allocation"
msgstr ""
-#: templates/js/translated/sales_order.js:1259
+#: templates/js/translated/sales_order.js:1271
msgid "Allocate Stock Items to Sales Order"
msgstr ""
-#: templates/js/translated/sales_order.js:1463
+#: templates/js/translated/sales_order.js:1475
msgid "No sales order allocations found"
msgstr ""
-#: templates/js/translated/sales_order.js:1555
+#: templates/js/translated/sales_order.js:1567
msgid "Edit Stock Allocation"
msgstr ""
-#: templates/js/translated/sales_order.js:1569
+#: templates/js/translated/sales_order.js:1581
msgid "Confirm Delete Operation"
msgstr ""
-#: templates/js/translated/sales_order.js:1570
+#: templates/js/translated/sales_order.js:1582
msgid "Delete Stock Allocation"
msgstr ""
-#: templates/js/translated/sales_order.js:1609
-#: templates/js/translated/sales_order.js:1696
-#: templates/js/translated/stock.js:1688
+#: templates/js/translated/sales_order.js:1621
+#: templates/js/translated/sales_order.js:1708
+#: templates/js/translated/stock.js:1687
msgid "Shipped to customer"
msgstr ""
-#: templates/js/translated/sales_order.js:1617
-#: templates/js/translated/sales_order.js:1705
+#: templates/js/translated/sales_order.js:1629
+#: templates/js/translated/sales_order.js:1717
msgid "Stock location not specified"
msgstr ""
-#: templates/js/translated/sales_order.js:1985
+#: templates/js/translated/sales_order.js:1997
msgid "Allocate serial numbers"
msgstr ""
-#: templates/js/translated/sales_order.js:1989
+#: templates/js/translated/sales_order.js:2001
msgid "Purchase stock"
msgstr ""
-#: templates/js/translated/sales_order.js:1998
-#: templates/js/translated/sales_order.js:2185
+#: templates/js/translated/sales_order.js:2010
+#: templates/js/translated/sales_order.js:2197
msgid "Calculate price"
msgstr ""
-#: templates/js/translated/sales_order.js:2012
+#: templates/js/translated/sales_order.js:2024
msgid "Cannot be deleted as items have been shipped"
msgstr ""
-#: templates/js/translated/sales_order.js:2015
+#: templates/js/translated/sales_order.js:2027
msgid "Cannot be deleted as items have been allocated"
msgstr ""
-#: templates/js/translated/sales_order.js:2086
+#: templates/js/translated/sales_order.js:2098
msgid "Allocate Serial Numbers"
msgstr ""
-#: templates/js/translated/sales_order.js:2193
+#: templates/js/translated/sales_order.js:2205
msgid "Update Unit Price"
msgstr ""
-#: templates/js/translated/search.js:312
+#: templates/js/translated/search.js:270
msgid "No results"
msgstr ""
-#: templates/js/translated/search.js:334 templates/search.html:25
+#: templates/js/translated/search.js:292 templates/search.html:25
msgid "Enter search query"
msgstr ""
-#: templates/js/translated/search.js:384
+#: templates/js/translated/search.js:342
msgid "result"
msgstr ""
-#: templates/js/translated/search.js:384
+#: templates/js/translated/search.js:342
msgid "results"
msgstr ""
-#: templates/js/translated/search.js:394
+#: templates/js/translated/search.js:352
msgid "Minimize results"
msgstr ""
-#: templates/js/translated/search.js:397
+#: templates/js/translated/search.js:355
msgid "Remove results"
msgstr ""
-#: templates/js/translated/stock.js:98
+#: templates/js/translated/stock.js:97
msgid "Serialize Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:129
+#: templates/js/translated/stock.js:128
msgid "Confirm Stock Serialization"
msgstr ""
-#: templates/js/translated/stock.js:138
+#: templates/js/translated/stock.js:137
msgid "Parent stock location"
msgstr ""
-#: templates/js/translated/stock.js:173
+#: templates/js/translated/stock.js:172
msgid "Edit Stock Location"
msgstr ""
-#: templates/js/translated/stock.js:188
+#: templates/js/translated/stock.js:187
msgid "New Stock Location"
msgstr ""
-#: templates/js/translated/stock.js:190
+#: templates/js/translated/stock.js:189
msgid "Create another location after this one"
msgstr ""
-#: templates/js/translated/stock.js:191
+#: templates/js/translated/stock.js:190
msgid "Stock location created"
msgstr ""
-#: templates/js/translated/stock.js:205
+#: templates/js/translated/stock.js:204
msgid "Are you sure you want to delete this stock location?"
msgstr ""
-#: templates/js/translated/stock.js:212
+#: templates/js/translated/stock.js:211
msgid "Move to parent stock location"
msgstr ""
-#: templates/js/translated/stock.js:221
+#: templates/js/translated/stock.js:220
msgid "Delete Stock Location"
msgstr ""
-#: templates/js/translated/stock.js:225
+#: templates/js/translated/stock.js:224
msgid "Action for stock items in this stock location"
msgstr ""
-#: templates/js/translated/stock.js:230
+#: templates/js/translated/stock.js:229
msgid "Action for sub-locations"
msgstr ""
-#: templates/js/translated/stock.js:284
+#: templates/js/translated/stock.js:283
msgid "This part cannot be serialized"
msgstr ""
-#: templates/js/translated/stock.js:320
+#: templates/js/translated/stock.js:319
msgid "Add given quantity as packs instead of individual items"
msgstr ""
-#: templates/js/translated/stock.js:329
+#: templates/js/translated/stock.js:328
msgid "Enter initial quantity for this stock item"
msgstr ""
-#: templates/js/translated/stock.js:335
+#: templates/js/translated/stock.js:334
msgid "Enter serial numbers for new stock (or leave blank)"
msgstr ""
-#: templates/js/translated/stock.js:406
+#: templates/js/translated/stock.js:405
msgid "Stock item duplicated"
msgstr ""
-#: templates/js/translated/stock.js:426
+#: templates/js/translated/stock.js:425
msgid "Duplicate Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:442
+#: templates/js/translated/stock.js:441
msgid "Are you sure you want to delete this stock item?"
msgstr ""
-#: templates/js/translated/stock.js:447
+#: templates/js/translated/stock.js:446
msgid "Delete Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:468
+#: templates/js/translated/stock.js:467
msgid "Edit Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:510
+#: templates/js/translated/stock.js:509
msgid "Create another item after this one"
msgstr ""
-#: templates/js/translated/stock.js:522
+#: templates/js/translated/stock.js:521
msgid "Created new stock item"
msgstr ""
-#: templates/js/translated/stock.js:535
+#: templates/js/translated/stock.js:534
msgid "Created multiple stock items"
msgstr ""
-#: templates/js/translated/stock.js:560
+#: templates/js/translated/stock.js:559
msgid "Find Serial Number"
msgstr ""
-#: templates/js/translated/stock.js:564 templates/js/translated/stock.js:565
+#: templates/js/translated/stock.js:563 templates/js/translated/stock.js:564
msgid "Enter serial number"
msgstr ""
-#: templates/js/translated/stock.js:581
+#: templates/js/translated/stock.js:580
msgid "Enter a serial number"
msgstr ""
-#: templates/js/translated/stock.js:601
+#: templates/js/translated/stock.js:600
msgid "No matching serial number"
msgstr ""
-#: templates/js/translated/stock.js:610
+#: templates/js/translated/stock.js:609
msgid "More than one matching result found"
msgstr ""
-#: templates/js/translated/stock.js:718
+#: templates/js/translated/stock.js:717
msgid "Confirm stock assignment"
msgstr ""
-#: templates/js/translated/stock.js:719
+#: templates/js/translated/stock.js:718
msgid "Assign Stock to Customer"
msgstr ""
-#: templates/js/translated/stock.js:796
+#: templates/js/translated/stock.js:795
msgid "Warning: Merge operation cannot be reversed"
msgstr ""
-#: templates/js/translated/stock.js:797
+#: templates/js/translated/stock.js:796
msgid "Some information will be lost when merging stock items"
msgstr ""
-#: templates/js/translated/stock.js:799
+#: templates/js/translated/stock.js:798
msgid "Stock transaction history will be deleted for merged items"
msgstr ""
-#: templates/js/translated/stock.js:800
+#: templates/js/translated/stock.js:799
msgid "Supplier part information will be deleted for merged items"
msgstr ""
-#: templates/js/translated/stock.js:891
+#: templates/js/translated/stock.js:890
msgid "Confirm stock item merge"
msgstr ""
-#: templates/js/translated/stock.js:892
+#: templates/js/translated/stock.js:891
msgid "Merge Stock Items"
msgstr ""
-#: templates/js/translated/stock.js:987
+#: templates/js/translated/stock.js:986
msgid "Transfer Stock"
msgstr ""
-#: templates/js/translated/stock.js:988
+#: templates/js/translated/stock.js:987
msgid "Move"
msgstr ""
-#: templates/js/translated/stock.js:994
+#: templates/js/translated/stock.js:993
msgid "Count Stock"
msgstr ""
-#: templates/js/translated/stock.js:995
+#: templates/js/translated/stock.js:994
msgid "Count"
msgstr ""
-#: templates/js/translated/stock.js:999
+#: templates/js/translated/stock.js:998
msgid "Remove Stock"
msgstr ""
-#: templates/js/translated/stock.js:1000
+#: templates/js/translated/stock.js:999
msgid "Take"
msgstr ""
-#: templates/js/translated/stock.js:1004
+#: templates/js/translated/stock.js:1003
msgid "Add Stock"
msgstr ""
-#: templates/js/translated/stock.js:1005 users/models.py:243
+#: templates/js/translated/stock.js:1004 users/models.py:249
msgid "Add"
msgstr ""
-#: templates/js/translated/stock.js:1009
+#: templates/js/translated/stock.js:1008
msgid "Delete Stock"
msgstr ""
-#: templates/js/translated/stock.js:1106
+#: templates/js/translated/stock.js:1105
msgid "Quantity cannot be adjusted for serialized stock"
msgstr ""
-#: templates/js/translated/stock.js:1106
+#: templates/js/translated/stock.js:1105
msgid "Specify stock quantity"
msgstr ""
-#: templates/js/translated/stock.js:1140
+#: templates/js/translated/stock.js:1139 templates/js/translated/stock.js:3151
msgid "Select Stock Items"
msgstr ""
-#: templates/js/translated/stock.js:1141
-msgid "You must select at least one available stock item"
+#: templates/js/translated/stock.js:1140
+msgid "Select at least one available stock item"
msgstr ""
-#: templates/js/translated/stock.js:1168
+#: templates/js/translated/stock.js:1167
msgid "Confirm stock adjustment"
msgstr ""
-#: templates/js/translated/stock.js:1304
+#: templates/js/translated/stock.js:1303
msgid "PASS"
msgstr ""
-#: templates/js/translated/stock.js:1306
+#: templates/js/translated/stock.js:1305
msgid "FAIL"
msgstr ""
-#: templates/js/translated/stock.js:1311
+#: templates/js/translated/stock.js:1310
msgid "NO RESULT"
msgstr ""
-#: templates/js/translated/stock.js:1373
+#: templates/js/translated/stock.js:1372
msgid "Pass test"
msgstr ""
-#: templates/js/translated/stock.js:1376
+#: templates/js/translated/stock.js:1375
msgid "Add test result"
msgstr ""
-#: templates/js/translated/stock.js:1400
+#: templates/js/translated/stock.js:1399
msgid "No test results found"
msgstr ""
-#: templates/js/translated/stock.js:1464
+#: templates/js/translated/stock.js:1463
msgid "Test Date"
msgstr ""
-#: templates/js/translated/stock.js:1626
+#: templates/js/translated/stock.js:1625
msgid "Edit Test Result"
msgstr ""
-#: templates/js/translated/stock.js:1648
+#: templates/js/translated/stock.js:1647
msgid "Delete Test Result"
msgstr ""
-#: templates/js/translated/stock.js:1680
+#: templates/js/translated/stock.js:1679
msgid "In production"
msgstr ""
-#: templates/js/translated/stock.js:1684
+#: templates/js/translated/stock.js:1683
msgid "Installed in Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:1692
+#: templates/js/translated/stock.js:1691
msgid "Assigned to Sales Order"
msgstr ""
-#: templates/js/translated/stock.js:1698
+#: templates/js/translated/stock.js:1697
msgid "No stock location set"
msgstr ""
-#: templates/js/translated/stock.js:1746
+#: templates/js/translated/stock.js:1753
+msgid "Change stock status"
+msgstr ""
+
+#: templates/js/translated/stock.js:1762
+msgid "Merge stock"
+msgstr ""
+
+#: templates/js/translated/stock.js:1811
+msgid "Delete stock"
+msgstr ""
+
+#: templates/js/translated/stock.js:1866
msgid "stock items"
msgstr ""
-#: templates/js/translated/stock.js:1850
+#: templates/js/translated/stock.js:1871
+msgid "Scan to location"
+msgstr ""
+
+#: templates/js/translated/stock.js:1882
+msgid "Stock Actions"
+msgstr ""
+
+#: templates/js/translated/stock.js:1929
+msgid "Load installed items"
+msgstr ""
+
+#: templates/js/translated/stock.js:2007
msgid "Stock item is in production"
msgstr ""
-#: templates/js/translated/stock.js:1855
+#: templates/js/translated/stock.js:2012
msgid "Stock item assigned to sales order"
msgstr ""
-#: templates/js/translated/stock.js:1858
+#: templates/js/translated/stock.js:2015
msgid "Stock item assigned to customer"
msgstr ""
-#: templates/js/translated/stock.js:1861
+#: templates/js/translated/stock.js:2018
msgid "Serialized stock item has been allocated"
msgstr ""
-#: templates/js/translated/stock.js:1863
+#: templates/js/translated/stock.js:2020
msgid "Stock item has been fully allocated"
msgstr ""
-#: templates/js/translated/stock.js:1865
+#: templates/js/translated/stock.js:2022
msgid "Stock item has been partially allocated"
msgstr ""
-#: templates/js/translated/stock.js:1868
+#: templates/js/translated/stock.js:2025
msgid "Stock item has been installed in another item"
msgstr ""
-#: templates/js/translated/stock.js:1870
+#: templates/js/translated/stock.js:2027
msgid "Stock item has been consumed by a build order"
msgstr ""
-#: templates/js/translated/stock.js:1874
+#: templates/js/translated/stock.js:2031
msgid "Stock item has expired"
msgstr ""
-#: templates/js/translated/stock.js:1876
+#: templates/js/translated/stock.js:2033
msgid "Stock item will expire soon"
msgstr ""
-#: templates/js/translated/stock.js:1881
+#: templates/js/translated/stock.js:2038
msgid "Stock item has been rejected"
msgstr ""
-#: templates/js/translated/stock.js:1883
+#: templates/js/translated/stock.js:2040
msgid "Stock item is lost"
msgstr ""
-#: templates/js/translated/stock.js:1885
+#: templates/js/translated/stock.js:2042
msgid "Stock item is destroyed"
msgstr ""
-#: templates/js/translated/stock.js:1889
-#: templates/js/translated/table_filters.js:296
+#: templates/js/translated/stock.js:2046
+#: templates/js/translated/table_filters.js:302
msgid "Depleted"
msgstr ""
-#: templates/js/translated/stock.js:2031
+#: templates/js/translated/stock.js:2188
msgid "Supplier part not specified"
msgstr ""
-#: templates/js/translated/stock.js:2078
+#: templates/js/translated/stock.js:2235
msgid "Stock Value"
msgstr ""
-#: templates/js/translated/stock.js:2170
+#: templates/js/translated/stock.js:2358
msgid "No stock items matching query"
msgstr ""
-#: templates/js/translated/stock.js:2319
+#: templates/js/translated/stock.js:2450
msgid "stock locations"
msgstr ""
-#: templates/js/translated/stock.js:2476
+#: templates/js/translated/stock.js:2607
msgid "Load Subloactions"
msgstr ""
-#: templates/js/translated/stock.js:2583
+#: templates/js/translated/stock.js:2714
msgid "Details"
msgstr ""
-#: templates/js/translated/stock.js:2587
+#: templates/js/translated/stock.js:2718
msgid "No changes"
msgstr ""
-#: templates/js/translated/stock.js:2599
+#: templates/js/translated/stock.js:2730
msgid "Part information unavailable"
msgstr ""
-#: templates/js/translated/stock.js:2621
+#: templates/js/translated/stock.js:2752
msgid "Location no longer exists"
msgstr ""
-#: templates/js/translated/stock.js:2638
+#: templates/js/translated/stock.js:2769
msgid "Build order no longer exists"
msgstr ""
-#: templates/js/translated/stock.js:2653
+#: templates/js/translated/stock.js:2784
msgid "Purchase order no longer exists"
msgstr ""
-#: templates/js/translated/stock.js:2670
+#: templates/js/translated/stock.js:2801
msgid "Sales Order no longer exists"
msgstr ""
-#: templates/js/translated/stock.js:2687
+#: templates/js/translated/stock.js:2818
msgid "Return Order no longer exists"
msgstr ""
-#: templates/js/translated/stock.js:2706
+#: templates/js/translated/stock.js:2837
msgid "Customer no longer exists"
msgstr ""
-#: templates/js/translated/stock.js:2724
+#: templates/js/translated/stock.js:2855
msgid "Stock item no longer exists"
msgstr ""
-#: templates/js/translated/stock.js:2742
+#: templates/js/translated/stock.js:2873
msgid "Added"
msgstr ""
-#: templates/js/translated/stock.js:2750
+#: templates/js/translated/stock.js:2881
msgid "Removed"
msgstr ""
-#: templates/js/translated/stock.js:2826
+#: templates/js/translated/stock.js:2953
msgid "No installed items"
msgstr ""
-#: templates/js/translated/stock.js:2876 templates/js/translated/stock.js:2911
+#: templates/js/translated/stock.js:3003 templates/js/translated/stock.js:3038
msgid "Uninstall Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:2929
+#: templates/js/translated/stock.js:3056
msgid "Select stock item to uninstall"
msgstr ""
-#: templates/js/translated/stock.js:2950
+#: templates/js/translated/stock.js:3077
msgid "Install another stock item into this item"
msgstr ""
-#: templates/js/translated/stock.js:2951
+#: templates/js/translated/stock.js:3078
msgid "Stock items can only be installed if they meet the following criteria"
msgstr ""
-#: templates/js/translated/stock.js:2953
+#: templates/js/translated/stock.js:3080
msgid "The Stock Item links to a Part which is the BOM for this Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:2954
+#: templates/js/translated/stock.js:3081
msgid "The Stock Item is currently available in stock"
msgstr ""
-#: templates/js/translated/stock.js:2955
+#: templates/js/translated/stock.js:3082
msgid "The Stock Item is not already installed in another item"
msgstr ""
-#: templates/js/translated/stock.js:2956
+#: templates/js/translated/stock.js:3083
msgid "The Stock Item is tracked by either a batch code or serial number"
msgstr ""
-#: templates/js/translated/stock.js:2969
+#: templates/js/translated/stock.js:3096
msgid "Select part to install"
msgstr ""
+#: templates/js/translated/stock.js:3152
+msgid "Select one or more stock items"
+msgstr ""
+
+#: templates/js/translated/stock.js:3165
+msgid "Selected stock items"
+msgstr ""
+
+#: templates/js/translated/stock.js:3169
+msgid "Change Stock Status"
+msgstr ""
+
#: templates/js/translated/table_filters.js:50
msgid "Has project code"
msgstr ""
-#: templates/js/translated/table_filters.js:59
-#: templates/js/translated/table_filters.js:518
-#: templates/js/translated/table_filters.js:530
-#: templates/js/translated/table_filters.js:571
+#: templates/js/translated/table_filters.js:65
+#: templates/js/translated/table_filters.js:540
+#: templates/js/translated/table_filters.js:552
+#: templates/js/translated/table_filters.js:593
msgid "Order status"
msgstr ""
-#: templates/js/translated/table_filters.js:64
-#: templates/js/translated/table_filters.js:535
-#: templates/js/translated/table_filters.js:561
-#: templates/js/translated/table_filters.js:576
+#: templates/js/translated/table_filters.js:70
+#: templates/js/translated/table_filters.js:557
+#: templates/js/translated/table_filters.js:583
+#: templates/js/translated/table_filters.js:598
msgid "Outstanding"
msgstr ""
-#: templates/js/translated/table_filters.js:72
-#: templates/js/translated/table_filters.js:458
-#: templates/js/translated/table_filters.js:543
-#: templates/js/translated/table_filters.js:584
+#: templates/js/translated/table_filters.js:78
+#: templates/js/translated/table_filters.js:464
+#: templates/js/translated/table_filters.js:565
+#: templates/js/translated/table_filters.js:606
msgid "Assigned to me"
msgstr ""
-#: templates/js/translated/table_filters.js:128
+#: templates/js/translated/table_filters.js:134
msgid "Trackable Part"
msgstr ""
-#: templates/js/translated/table_filters.js:132
+#: templates/js/translated/table_filters.js:138
msgid "Assembled Part"
msgstr ""
-#: templates/js/translated/table_filters.js:136
+#: templates/js/translated/table_filters.js:142
msgid "Has Available Stock"
msgstr ""
-#: templates/js/translated/table_filters.js:152
+#: templates/js/translated/table_filters.js:158
msgid "Allow Variant Stock"
msgstr ""
-#: templates/js/translated/table_filters.js:164
-#: templates/js/translated/table_filters.js:692
+#: templates/js/translated/table_filters.js:170
+#: templates/js/translated/table_filters.js:714
msgid "Has Pricing"
msgstr ""
-#: templates/js/translated/table_filters.js:204
-#: templates/js/translated/table_filters.js:291
+#: templates/js/translated/table_filters.js:210
+#: templates/js/translated/table_filters.js:297
msgid "Include sublocations"
msgstr ""
-#: templates/js/translated/table_filters.js:205
+#: templates/js/translated/table_filters.js:211
msgid "Include locations"
msgstr ""
-#: templates/js/translated/table_filters.js:224
-#: templates/js/translated/table_filters.js:225
-#: templates/js/translated/table_filters.js:624
+#: templates/js/translated/table_filters.js:230
+#: templates/js/translated/table_filters.js:231
+#: templates/js/translated/table_filters.js:646
msgid "Include subcategories"
msgstr ""
-#: templates/js/translated/table_filters.js:233
-#: templates/js/translated/table_filters.js:672
+#: templates/js/translated/table_filters.js:239
+#: templates/js/translated/table_filters.js:694
msgid "Subscribed"
msgstr ""
-#: templates/js/translated/table_filters.js:244
-#: templates/js/translated/table_filters.js:326
+#: templates/js/translated/table_filters.js:250
+#: templates/js/translated/table_filters.js:332
msgid "Is Serialized"
msgstr ""
-#: templates/js/translated/table_filters.js:247
-#: templates/js/translated/table_filters.js:333
+#: templates/js/translated/table_filters.js:253
+#: templates/js/translated/table_filters.js:339
msgid "Serial number GTE"
msgstr ""
-#: templates/js/translated/table_filters.js:248
-#: templates/js/translated/table_filters.js:334
+#: templates/js/translated/table_filters.js:254
+#: templates/js/translated/table_filters.js:340
msgid "Serial number greater than or equal to"
msgstr ""
-#: templates/js/translated/table_filters.js:251
-#: templates/js/translated/table_filters.js:337
+#: templates/js/translated/table_filters.js:257
+#: templates/js/translated/table_filters.js:343
msgid "Serial number LTE"
msgstr ""
-#: templates/js/translated/table_filters.js:252
-#: templates/js/translated/table_filters.js:338
+#: templates/js/translated/table_filters.js:258
+#: templates/js/translated/table_filters.js:344
msgid "Serial number less than or equal to"
msgstr ""
-#: templates/js/translated/table_filters.js:255
-#: templates/js/translated/table_filters.js:256
-#: templates/js/translated/table_filters.js:329
-#: templates/js/translated/table_filters.js:330
+#: templates/js/translated/table_filters.js:261
+#: templates/js/translated/table_filters.js:262
+#: templates/js/translated/table_filters.js:335
+#: templates/js/translated/table_filters.js:336
msgid "Serial number"
msgstr ""
-#: templates/js/translated/table_filters.js:260
-#: templates/js/translated/table_filters.js:351
+#: templates/js/translated/table_filters.js:266
+#: templates/js/translated/table_filters.js:357
msgid "Batch code"
msgstr ""
-#: templates/js/translated/table_filters.js:271
-#: templates/js/translated/table_filters.js:613
+#: templates/js/translated/table_filters.js:277
+#: templates/js/translated/table_filters.js:635
msgid "Active parts"
msgstr ""
-#: templates/js/translated/table_filters.js:272
+#: templates/js/translated/table_filters.js:278
msgid "Show stock for active parts"
msgstr ""
-#: templates/js/translated/table_filters.js:277
+#: templates/js/translated/table_filters.js:283
msgid "Part is an assembly"
msgstr ""
-#: templates/js/translated/table_filters.js:281
+#: templates/js/translated/table_filters.js:287
msgid "Is allocated"
msgstr ""
-#: templates/js/translated/table_filters.js:282
+#: templates/js/translated/table_filters.js:288
msgid "Item has been allocated"
msgstr ""
-#: templates/js/translated/table_filters.js:287
+#: templates/js/translated/table_filters.js:293
msgid "Stock is available for use"
msgstr ""
-#: templates/js/translated/table_filters.js:292
+#: templates/js/translated/table_filters.js:298
msgid "Include stock in sublocations"
msgstr ""
-#: templates/js/translated/table_filters.js:297
+#: templates/js/translated/table_filters.js:303
msgid "Show stock items which are depleted"
msgstr ""
-#: templates/js/translated/table_filters.js:302
+#: templates/js/translated/table_filters.js:308
msgid "Show items which are in stock"
msgstr ""
-#: templates/js/translated/table_filters.js:306
+#: templates/js/translated/table_filters.js:312
msgid "In Production"
msgstr ""
-#: templates/js/translated/table_filters.js:307
+#: templates/js/translated/table_filters.js:313
msgid "Show items which are in production"
msgstr ""
-#: templates/js/translated/table_filters.js:311
+#: templates/js/translated/table_filters.js:317
msgid "Include Variants"
msgstr ""
-#: templates/js/translated/table_filters.js:312
+#: templates/js/translated/table_filters.js:318
msgid "Include stock items for variant parts"
msgstr ""
-#: templates/js/translated/table_filters.js:316
+#: templates/js/translated/table_filters.js:322
msgid "Installed"
msgstr ""
-#: templates/js/translated/table_filters.js:317
+#: templates/js/translated/table_filters.js:323
msgid "Show stock items which are installed in another item"
msgstr ""
-#: templates/js/translated/table_filters.js:322
+#: templates/js/translated/table_filters.js:328
msgid "Show items which have been assigned to a customer"
msgstr ""
-#: templates/js/translated/table_filters.js:342
-#: templates/js/translated/table_filters.js:343
+#: templates/js/translated/table_filters.js:348
+#: templates/js/translated/table_filters.js:349
msgid "Stock status"
msgstr ""
-#: templates/js/translated/table_filters.js:346
+#: templates/js/translated/table_filters.js:352
msgid "Has batch code"
msgstr ""
-#: templates/js/translated/table_filters.js:354
-msgid "Tracked"
-msgstr ""
-
-#: templates/js/translated/table_filters.js:355
+#: templates/js/translated/table_filters.js:361
msgid "Stock item is tracked by either batch code or serial number"
msgstr ""
-#: templates/js/translated/table_filters.js:360
+#: templates/js/translated/table_filters.js:366
msgid "Has purchase price"
msgstr ""
-#: templates/js/translated/table_filters.js:361
+#: templates/js/translated/table_filters.js:367
msgid "Show stock items which have a purchase price set"
msgstr ""
-#: templates/js/translated/table_filters.js:365
+#: templates/js/translated/table_filters.js:371
msgid "Expiry Date before"
msgstr ""
-#: templates/js/translated/table_filters.js:369
+#: templates/js/translated/table_filters.js:375
msgid "Expiry Date after"
msgstr ""
-#: templates/js/translated/table_filters.js:382
+#: templates/js/translated/table_filters.js:388
msgid "Show stock items which have expired"
msgstr ""
-#: templates/js/translated/table_filters.js:388
+#: templates/js/translated/table_filters.js:394
msgid "Show stock which is close to expiring"
msgstr ""
-#: templates/js/translated/table_filters.js:402
+#: templates/js/translated/table_filters.js:408
msgid "Test Passed"
msgstr ""
-#: templates/js/translated/table_filters.js:406
+#: templates/js/translated/table_filters.js:412
msgid "Include Installed Items"
msgstr ""
-#: templates/js/translated/table_filters.js:445
+#: templates/js/translated/table_filters.js:451
msgid "Build status"
msgstr ""
-#: templates/js/translated/table_filters.js:625
+#: templates/js/translated/table_filters.js:647
msgid "Include parts in subcategories"
msgstr ""
-#: templates/js/translated/table_filters.js:630
+#: templates/js/translated/table_filters.js:652
msgid "Show active parts"
msgstr ""
-#: templates/js/translated/table_filters.js:638
+#: templates/js/translated/table_filters.js:660
msgid "Available stock"
msgstr ""
-#: templates/js/translated/table_filters.js:646
-#: templates/js/translated/table_filters.js:742
+#: templates/js/translated/table_filters.js:668
+#: templates/js/translated/table_filters.js:764
msgid "Has Units"
msgstr ""
-#: templates/js/translated/table_filters.js:647
+#: templates/js/translated/table_filters.js:669
msgid "Part has defined units"
msgstr ""
-#: templates/js/translated/table_filters.js:651
+#: templates/js/translated/table_filters.js:673
msgid "Has IPN"
msgstr ""
-#: templates/js/translated/table_filters.js:652
+#: templates/js/translated/table_filters.js:674
msgid "Part has internal part number"
msgstr ""
-#: templates/js/translated/table_filters.js:656
+#: templates/js/translated/table_filters.js:678
msgid "In stock"
msgstr ""
-#: templates/js/translated/table_filters.js:664
+#: templates/js/translated/table_filters.js:686
msgid "Purchasable"
msgstr ""
-#: templates/js/translated/table_filters.js:676
+#: templates/js/translated/table_filters.js:698
msgid "Has stocktake entries"
msgstr ""
-#: templates/js/translated/table_filters.js:738
+#: templates/js/translated/table_filters.js:760
msgid "Has Choices"
msgstr ""
@@ -12390,51 +12551,51 @@ msgstr ""
msgid "Select File Format"
msgstr ""
-#: templates/js/translated/tables.js:561
+#: templates/js/translated/tables.js:537
msgid "Loading data"
msgstr ""
-#: templates/js/translated/tables.js:564
+#: templates/js/translated/tables.js:540
msgid "rows per page"
msgstr ""
-#: templates/js/translated/tables.js:569
+#: templates/js/translated/tables.js:545
msgid "Showing all rows"
msgstr ""
-#: templates/js/translated/tables.js:571
+#: templates/js/translated/tables.js:547
msgid "Showing"
msgstr ""
-#: templates/js/translated/tables.js:571
+#: templates/js/translated/tables.js:547
msgid "to"
msgstr ""
-#: templates/js/translated/tables.js:571
+#: templates/js/translated/tables.js:547
msgid "of"
msgstr ""
-#: templates/js/translated/tables.js:571
+#: templates/js/translated/tables.js:547
msgid "rows"
msgstr ""
-#: templates/js/translated/tables.js:578
+#: templates/js/translated/tables.js:554
msgid "No matching results"
msgstr ""
-#: templates/js/translated/tables.js:581
+#: templates/js/translated/tables.js:557
msgid "Hide/Show pagination"
msgstr ""
-#: templates/js/translated/tables.js:587
+#: templates/js/translated/tables.js:563
msgid "Toggle"
msgstr ""
-#: templates/js/translated/tables.js:590
+#: templates/js/translated/tables.js:566
msgid "Columns"
msgstr ""
-#: templates/js/translated/tables.js:593
+#: templates/js/translated/tables.js:569
msgid "All"
msgstr ""
@@ -12616,50 +12777,6 @@ msgstr ""
msgid "Email settings not configured"
msgstr ""
-#: templates/stock_table.html:17
-msgid "Barcode Actions"
-msgstr ""
-
-#: templates/stock_table.html:28
-msgid "Stock Options"
-msgstr ""
-
-#: templates/stock_table.html:33
-msgid "Add to selected stock items"
-msgstr ""
-
-#: templates/stock_table.html:34
-msgid "Remove from selected stock items"
-msgstr ""
-
-#: templates/stock_table.html:35
-msgid "Stocktake selected stock items"
-msgstr ""
-
-#: templates/stock_table.html:36
-msgid "Move selected stock items"
-msgstr ""
-
-#: templates/stock_table.html:37
-msgid "Merge selected stock items"
-msgstr ""
-
-#: templates/stock_table.html:37
-msgid "Merge stock"
-msgstr ""
-
-#: templates/stock_table.html:38
-msgid "Order selected items"
-msgstr ""
-
-#: templates/stock_table.html:42
-msgid "Delete selected items"
-msgstr ""
-
-#: templates/stock_table.html:42
-msgid "Delete stock"
-msgstr ""
-
#: templates/yesnolabel.html:4
msgid "Yes"
msgstr ""
@@ -12692,35 +12809,35 @@ msgstr ""
msgid "Important dates"
msgstr ""
-#: users/models.py:230
+#: users/models.py:236
msgid "Permission set"
msgstr ""
-#: users/models.py:238
+#: users/models.py:244
msgid "Group"
msgstr ""
-#: users/models.py:241
+#: users/models.py:247
msgid "View"
msgstr ""
-#: users/models.py:241
+#: users/models.py:247
msgid "Permission to view items"
msgstr ""
-#: users/models.py:243
+#: users/models.py:249
msgid "Permission to add items"
msgstr ""
-#: users/models.py:245
+#: users/models.py:251
msgid "Change"
msgstr ""
-#: users/models.py:245
+#: users/models.py:251
msgid "Permissions to edit items"
msgstr ""
-#: users/models.py:247
+#: users/models.py:253
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 9ef6042e6c..db9a520055 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: 2023-06-09 00:32+0000\n"
-"PO-Revision-Date: 2023-06-09 10:27\n"
+"POT-Creation-Date: 2023-06-20 07:01+0000\n"
+"PO-Revision-Date: 2023-06-20 07:06\n"
"Last-Translator: \n"
"Language-Team: Chinese Simplified\n"
"Language: zh_CN\n"
@@ -49,26 +49,26 @@ msgstr "在管理面板中可以找到错误详细信息"
msgid "Enter date"
msgstr "输入日期"
-#: InvenTree/fields.py:206 InvenTree/models.py:766 build/serializers.py:427
-#: build/serializers.py:506 build/templates/build/sidebar.html:23
-#: company/models.py:597 company/templates/company/sidebar.html:35
-#: order/models.py:1089 order/templates/order/po_sidebar.html:11
+#: InvenTree/fields.py:206 InvenTree/models.py:766 build/serializers.py:435
+#: build/serializers.py:514 build/templates/build/sidebar.html:21
+#: company/models.py:746 company/templates/company/sidebar.html:37
+#: order/models.py:1102 order/templates/order/po_sidebar.html:11
#: order/templates/order/return_order_sidebar.html:9
#: order/templates/order/so_sidebar.html:17 part/admin.py:41
-#: part/models.py:3005 part/templates/part/part_sidebar.html:63
+#: part/models.py:3039 part/templates/part/part_sidebar.html:63
#: report/templates/report/inventree_build_order_base.html:172
#: stock/admin.py:121 stock/models.py:2160 stock/models.py:2268
-#: stock/serializers.py:342 stock/serializers.py:475 stock/serializers.py:556
-#: stock/serializers.py:839 stock/serializers.py:938 stock/serializers.py:1070
-#: stock/templates/stock/stock_sidebar.html:25
-#: templates/js/translated/barcode.js:143 templates/js/translated/bom.js:1224
-#: templates/js/translated/company.js:1294 templates/js/translated/order.js:347
-#: templates/js/translated/part.js:1054
-#: templates/js/translated/purchase_order.js:2168
-#: templates/js/translated/return_order.js:760
-#: templates/js/translated/sales_order.js:1055
-#: templates/js/translated/sales_order.js:1959
-#: templates/js/translated/stock.js:1460 templates/js/translated/stock.js:2164
+#: stock/serializers.py:408 stock/serializers.py:542 stock/serializers.py:623
+#: stock/serializers.py:681 stock/serializers.py:956 stock/serializers.py:1055
+#: stock/serializers.py:1187 stock/templates/stock/stock_sidebar.html:25
+#: templates/js/translated/barcode.js:143 templates/js/translated/bom.js:1244
+#: templates/js/translated/company.js:1715 templates/js/translated/order.js:347
+#: templates/js/translated/part.js:1053
+#: templates/js/translated/purchase_order.js:2178
+#: templates/js/translated/return_order.js:772
+#: templates/js/translated/sales_order.js:1067
+#: templates/js/translated/sales_order.js:1971
+#: templates/js/translated/stock.js:1459 templates/js/translated/stock.js:2321
msgid "Notes"
msgstr "备注"
@@ -81,47 +81,51 @@ msgstr "值 '{name}' 没有以模式格式显示"
msgid "Provided value does not match required pattern: "
msgstr "提供的值与所需模式不匹配: "
-#: InvenTree/forms.py:145
+#: InvenTree/forms.py:147
msgid "Enter password"
msgstr "输入密码"
-#: InvenTree/forms.py:146
+#: InvenTree/forms.py:148
msgid "Enter new password"
msgstr "输入新密码"
-#: InvenTree/forms.py:155
+#: InvenTree/forms.py:157
msgid "Confirm password"
msgstr "确认密码"
-#: InvenTree/forms.py:156
+#: InvenTree/forms.py:158
msgid "Confirm new password"
msgstr "确认新密码"
-#: InvenTree/forms.py:160
+#: InvenTree/forms.py:162
msgid "Old password"
msgstr "旧密码"
-#: InvenTree/forms.py:179
+#: InvenTree/forms.py:181
msgid "Email (again)"
msgstr "Email (再次)"
-#: InvenTree/forms.py:183
+#: InvenTree/forms.py:185
msgid "Email address confirmation"
msgstr "Email 地址确认"
-#: InvenTree/forms.py:204
+#: InvenTree/forms.py:206
msgid "You must type the same email each time."
msgstr "您必须输入相同的 Email 。"
-#: InvenTree/forms.py:230 InvenTree/forms.py:236
+#: InvenTree/forms.py:237 InvenTree/forms.py:243
msgid "The provided primary email address is not valid."
msgstr "所提供的主要电子邮件地址无效。"
-#: InvenTree/forms.py:242
+#: InvenTree/forms.py:249
msgid "The provided email domain is not approved."
msgstr "提供的电子邮件域未被核准。"
-#: InvenTree/helpers.py:462 order/models.py:442 order/models.py:611
+#: InvenTree/forms.py:345
+msgid "Registration is disabled."
+msgstr ""
+
+#: InvenTree/helpers.py:462 order/models.py:455 order/models.py:624
msgid "Invalid quantity provided"
msgstr "提供的数量无效"
@@ -239,7 +243,7 @@ msgstr "缺少外部链接"
#: InvenTree/models.py:486 stock/models.py:2262
#: templates/js/translated/attachment.js:119
-#: templates/js/translated/attachment.js:306
+#: templates/js/translated/attachment.js:316
msgid "Attachment"
msgstr "附件"
@@ -247,29 +251,30 @@ msgstr "附件"
msgid "Select file to attach"
msgstr "选择附件"
-#: InvenTree/models.py:493 common/models.py:2695 company/models.py:132
-#: company/models.py:306 company/models.py:584 order/models.py:236
-#: order/models.py:1093 order/models.py:1453 part/admin.py:39
-#: part/models.py:901 part/templates/part/part_scheduling.html:11
+#: InvenTree/models.py:493 common/models.py:2681 company/models.py:128
+#: company/models.py:381 company/models.py:455 company/models.py:733
+#: order/models.py:240 order/models.py:1106 order/models.py:1466
+#: part/admin.py:39 part/models.py:902
+#: part/templates/part/part_scheduling.html:11
#: report/templates/report/inventree_build_order_base.html:164
-#: stock/admin.py:120 templates/js/translated/company.js:977
-#: templates/js/translated/company.js:1283 templates/js/translated/order.js:351
-#: templates/js/translated/part.js:2316
-#: templates/js/translated/purchase_order.js:2008
-#: templates/js/translated/purchase_order.js:2172
-#: templates/js/translated/return_order.js:764
-#: templates/js/translated/sales_order.js:1044
-#: templates/js/translated/sales_order.js:1964
+#: stock/admin.py:120 templates/js/translated/company.js:1350
+#: templates/js/translated/company.js:1704 templates/js/translated/order.js:351
+#: templates/js/translated/part.js:2392
+#: templates/js/translated/purchase_order.js:2018
+#: templates/js/translated/purchase_order.js:2182
+#: templates/js/translated/return_order.js:776
+#: templates/js/translated/sales_order.js:1056
+#: templates/js/translated/sales_order.js:1976
msgid "Link"
msgstr "链接"
-#: InvenTree/models.py:494 build/models.py:291 part/models.py:902
+#: InvenTree/models.py:494 build/models.py:295 part/models.py:903
#: stock/models.py:735
msgid "Link to external URL"
msgstr "链接到外部 URL"
#: InvenTree/models.py:497 templates/js/translated/attachment.js:120
-#: templates/js/translated/attachment.js:321
+#: templates/js/translated/attachment.js:331
msgid "Comment"
msgstr "注释"
@@ -277,13 +282,13 @@ msgstr "注释"
msgid "File comment"
msgstr "文件注释"
-#: InvenTree/models.py:503 InvenTree/models.py:504 common/models.py:2154
-#: common/models.py:2155 common/models.py:2368 common/models.py:2369
-#: common/models.py:2625 common/models.py:2626 part/models.py:3013
-#: part/models.py:3101 part/models.py:3180 part/models.py:3200
-#: plugin/models.py:217 plugin/models.py:218
+#: InvenTree/models.py:503 InvenTree/models.py:504 common/models.py:2140
+#: common/models.py:2141 common/models.py:2354 common/models.py:2355
+#: common/models.py:2611 common/models.py:2612 part/models.py:3047
+#: part/models.py:3135 part/models.py:3214 part/models.py:3234
+#: plugin/models.py:218 plugin/models.py:219
#: report/templates/report/inventree_test_report_base.html:105
-#: templates/js/translated/stock.js:2773
+#: templates/js/translated/stock.js:2904
msgid "User"
msgstr "用户"
@@ -324,53 +329,54 @@ msgstr "同一个主体下不能有相同名字"
msgid "Invalid choice"
msgstr "选择无效"
-#: InvenTree/models.py:648 InvenTree/models.py:649 common/models.py:2354
-#: company/models.py:390 label/models.py:103 part/models.py:847
-#: part/models.py:3400 plugin/models.py:41 report/models.py:160
+#: InvenTree/models.py:648 InvenTree/models.py:649 common/models.py:2340
+#: company/models.py:539 label/models.py:111 part/models.py:848
+#: part/models.py:3434 plugin/models.py:42 report/models.py:160
#: templates/InvenTree/settings/mixins/urls.html:13
#: templates/InvenTree/settings/notifications.html:17
-#: templates/InvenTree/settings/plugin.html:80
+#: templates/InvenTree/settings/plugin.html:74
#: templates/InvenTree/settings/plugin_settings.html:22
-#: templates/js/translated/company.js:658
-#: templates/js/translated/company.js:706
-#: templates/js/translated/company.js:871
-#: templates/js/translated/company.js:1071 templates/js/translated/part.js:1160
-#: templates/js/translated/part.js:1447 templates/js/translated/part.js:1583
-#: templates/js/translated/part.js:2699 templates/js/translated/stock.js:2464
+#: templates/js/translated/company.js:665
+#: templates/js/translated/company.js:713
+#: templates/js/translated/company.js:940
+#: templates/js/translated/company.js:1196
+#: templates/js/translated/company.js:1444 templates/js/translated/part.js:1159
+#: templates/js/translated/part.js:1446 templates/js/translated/part.js:1582
+#: templates/js/translated/part.js:2684 templates/js/translated/stock.js:2595
msgid "Name"
msgstr "名称"
-#: InvenTree/models.py:655 build/models.py:164
+#: InvenTree/models.py:655 build/models.py:168
#: build/templates/build/detail.html:24 common/models.py:111
-#: company/models.py:312 company/models.py:590
+#: company/models.py:461 company/models.py:739
#: company/templates/company/company_base.html:72
#: company/templates/company/manufacturer_part.html:75
-#: company/templates/company/supplier_part.html:108 label/models.py:110
-#: order/models.py:232 order/models.py:1117 part/admin.py:194 part/admin.py:276
-#: part/models.py:869 part/models.py:3416 part/templates/part/category.html:81
+#: company/templates/company/supplier_part.html:108 label/models.py:118
+#: order/models.py:232 order/models.py:1130 part/admin.py:194 part/admin.py:276
+#: part/models.py:870 part/models.py:3450 part/templates/part/category.html:81
#: part/templates/part/part_base.html:172
#: part/templates/part/part_scheduling.html:12 report/models.py:173
-#: report/models.py:587 report/models.py:631
+#: report/models.py:589 report/models.py:633
#: report/templates/report/inventree_build_order_base.html:117
#: stock/admin.py:41 stock/templates/stock/location.html:123
#: templates/InvenTree/settings/notifications.html:19
#: templates/InvenTree/settings/plugin_settings.html:27
#: templates/InvenTree/settings/settings_staff_js.html:75
-#: templates/js/translated/bom.js:632 templates/js/translated/bom.js:933
-#: templates/js/translated/build.js:2857 templates/js/translated/company.js:510
-#: templates/js/translated/company.js:988
-#: templates/js/translated/company.js:1251 templates/js/translated/order.js:298
-#: templates/js/translated/part.js:1212 templates/js/translated/part.js:1456
-#: templates/js/translated/part.js:1594 templates/js/translated/part.js:1933
-#: templates/js/translated/part.js:2247 templates/js/translated/part.js:2735
-#: templates/js/translated/part.js:2826
-#: templates/js/translated/purchase_order.js:1666
-#: templates/js/translated/purchase_order.js:1812
-#: templates/js/translated/purchase_order.js:1990
-#: templates/js/translated/return_order.js:302
-#: templates/js/translated/sales_order.js:790
-#: templates/js/translated/stock.js:1439 templates/js/translated/stock.js:1817
-#: templates/js/translated/stock.js:2496 templates/js/translated/stock.js:2568
+#: templates/js/translated/bom.js:633 templates/js/translated/bom.js:951
+#: templates/js/translated/build.js:2062 templates/js/translated/company.js:517
+#: templates/js/translated/company.js:1361
+#: templates/js/translated/company.js:1672 templates/js/translated/index.js:114
+#: templates/js/translated/order.js:298 templates/js/translated/part.js:1211
+#: templates/js/translated/part.js:1455 templates/js/translated/part.js:1593
+#: templates/js/translated/part.js:1932 templates/js/translated/part.js:2323
+#: templates/js/translated/part.js:2720 templates/js/translated/part.js:2811
+#: templates/js/translated/purchase_order.js:1681
+#: templates/js/translated/purchase_order.js:1827
+#: templates/js/translated/purchase_order.js:2000
+#: templates/js/translated/return_order.js:314
+#: templates/js/translated/sales_order.js:802
+#: templates/js/translated/stock.js:1438 templates/js/translated/stock.js:1974
+#: templates/js/translated/stock.js:2627 templates/js/translated/stock.js:2699
msgid "Description"
msgstr "描述信息"
@@ -383,7 +389,7 @@ msgid "parent"
msgstr "上级项"
#: InvenTree/models.py:671 InvenTree/models.py:672
-#: templates/js/translated/part.js:2744 templates/js/translated/stock.js:2505
+#: templates/js/translated/part.js:2729 templates/js/translated/stock.js:2636
msgid "Path"
msgstr "路径"
@@ -419,12 +425,12 @@ msgstr "服务器错误"
msgid "An error has been logged by the server."
msgstr "服务器记录了一个错误。"
-#: InvenTree/serializers.py:60 part/models.py:3897
+#: InvenTree/serializers.py:60 part/models.py:3941
msgid "Must be a valid number"
msgstr "必须是有效数字"
-#: InvenTree/serializers.py:90 company/models.py:154
-#: company/templates/company/company_base.html:107 part/models.py:2852
+#: InvenTree/serializers.py:90 company/models.py:150
+#: company/templates/company/company_base.html:107 part/models.py:2886
#: templates/InvenTree/settings/settings_staff_js.html:44
#: templates/currency_data.html:5
msgid "Currency"
@@ -497,130 +503,130 @@ msgstr "远程图像文件的 URL"
msgid "Downloading images from remote URL is not enabled"
msgstr "未启用从远程 URL下载图像"
-#: InvenTree/settings.py:714
+#: InvenTree/settings.py:741
msgid "Czech"
msgstr "捷克语"
-#: InvenTree/settings.py:715
+#: InvenTree/settings.py:742
msgid "Danish"
msgstr "丹麦语"
-#: InvenTree/settings.py:716
+#: InvenTree/settings.py:743
msgid "German"
msgstr "德语"
-#: InvenTree/settings.py:717
+#: InvenTree/settings.py:744
msgid "Greek"
msgstr "希腊语"
-#: InvenTree/settings.py:718
+#: InvenTree/settings.py:745
msgid "English"
msgstr "英语"
-#: InvenTree/settings.py:719
+#: InvenTree/settings.py:746
msgid "Spanish"
msgstr "西班牙语"
-#: InvenTree/settings.py:720
+#: InvenTree/settings.py:747
msgid "Spanish (Mexican)"
msgstr "西班牙语(墨西哥)"
-#: InvenTree/settings.py:721
+#: InvenTree/settings.py:748
msgid "Farsi / Persian"
msgstr "波斯语"
-#: InvenTree/settings.py:722
+#: InvenTree/settings.py:749
msgid "Finnish"
msgstr ""
-#: InvenTree/settings.py:723
+#: InvenTree/settings.py:750
msgid "French"
msgstr "法语"
-#: InvenTree/settings.py:724
+#: InvenTree/settings.py:751
msgid "Hebrew"
msgstr "希伯来语"
-#: InvenTree/settings.py:725
+#: InvenTree/settings.py:752
msgid "Hungarian"
msgstr "匈牙利语"
-#: InvenTree/settings.py:726
+#: InvenTree/settings.py:753
msgid "Italian"
msgstr "意大利语"
-#: InvenTree/settings.py:727
+#: InvenTree/settings.py:754
msgid "Japanese"
msgstr "日语"
-#: InvenTree/settings.py:728
+#: InvenTree/settings.py:755
msgid "Korean"
msgstr "韩语"
-#: InvenTree/settings.py:729
+#: InvenTree/settings.py:756
msgid "Dutch"
msgstr "荷兰语"
-#: InvenTree/settings.py:730
+#: InvenTree/settings.py:757
msgid "Norwegian"
msgstr "挪威语"
-#: InvenTree/settings.py:731
+#: InvenTree/settings.py:758
msgid "Polish"
msgstr "波兰语"
-#: InvenTree/settings.py:732
+#: InvenTree/settings.py:759
msgid "Portuguese"
msgstr "葡萄牙语"
-#: InvenTree/settings.py:733
+#: InvenTree/settings.py:760
msgid "Portuguese (Brazilian)"
msgstr "葡萄牙语 (巴西)"
-#: InvenTree/settings.py:734
+#: InvenTree/settings.py:761
msgid "Russian"
msgstr "俄语"
-#: InvenTree/settings.py:735
+#: InvenTree/settings.py:762
msgid "Slovenian"
msgstr "斯洛文尼亚"
-#: InvenTree/settings.py:736
+#: InvenTree/settings.py:763
msgid "Swedish"
msgstr "瑞典语"
-#: InvenTree/settings.py:737
+#: InvenTree/settings.py:764
msgid "Thai"
msgstr "泰语"
-#: InvenTree/settings.py:738
+#: InvenTree/settings.py:765
msgid "Turkish"
msgstr "土耳其语"
-#: InvenTree/settings.py:739
+#: InvenTree/settings.py:766
msgid "Vietnamese"
msgstr "越南语"
-#: InvenTree/settings.py:740
+#: InvenTree/settings.py:767
msgid "Chinese"
msgstr "中文(简体)"
-#: InvenTree/status.py:61 part/serializers.py:878
+#: InvenTree/status.py:68 part/serializers.py:940
msgid "Background worker check failed"
msgstr "后台工作人员检查失败"
-#: InvenTree/status.py:65
+#: InvenTree/status.py:72
msgid "Email backend not configured"
msgstr "未配置电子邮件后端"
-#: InvenTree/status.py:68
+#: InvenTree/status.py:75
msgid "InvenTree system health checks failed"
msgstr "InventTree系统健康检查失败"
#: InvenTree/status_codes.py:12 InvenTree/status_codes.py:40
#: InvenTree/status_codes.py:148 InvenTree/status_codes.py:167
#: InvenTree/status_codes.py:188 generic/states/tests.py:16
-#: templates/js/translated/table_filters.js:511
+#: templates/js/translated/table_filters.js:533
msgid "Pending"
msgstr "待定"
@@ -630,7 +636,7 @@ msgstr "已添加"
#: InvenTree/status_codes.py:14 InvenTree/status_codes.py:151
#: InvenTree/status_codes.py:172 generic/states/tests.py:18
-#: order/templates/order/order_base.html:162
+#: order/templates/order/order_base.html:158
#: order/templates/order/sales_order_base.html:162
msgid "Complete"
msgstr "完成"
@@ -654,10 +660,10 @@ msgstr "已退回"
msgid "In Progress"
msgstr ""
-#: InvenTree/status_codes.py:42 order/models.py:1332
-#: templates/js/translated/sales_order.js:1509
-#: templates/js/translated/sales_order.js:1630
-#: templates/js/translated/sales_order.js:1934
+#: InvenTree/status_codes.py:42 order/models.py:1345
+#: templates/js/translated/sales_order.js:1521
+#: templates/js/translated/sales_order.js:1642
+#: templates/js/translated/sales_order.js:1946
msgid "Shipped"
msgstr "已发货"
@@ -689,7 +695,7 @@ msgstr "隔离"
msgid "Legacy stock tracking entry"
msgstr "旧库存跟踪条目"
-#: InvenTree/status_codes.py:93 templates/js/translated/stock.js:511
+#: InvenTree/status_codes.py:93 templates/js/translated/stock.js:510
msgid "Stock item created"
msgstr "库存项已创建"
@@ -745,7 +751,7 @@ msgstr "从父项拆分"
msgid "Split child item"
msgstr "拆分子项"
-#: InvenTree/status_codes.py:120 templates/js/translated/stock.js:2243
+#: InvenTree/status_codes.py:120 templates/js/translated/stock.js:1769
msgid "Merged stock items"
msgstr "合并的库存项目"
@@ -765,7 +771,7 @@ msgstr "生产订单输出已完成"
msgid "Build order output rejected"
msgstr ""
-#: InvenTree/status_codes.py:129 templates/js/translated/stock.js:1676
+#: InvenTree/status_codes.py:129 templates/js/translated/stock.js:1675
msgid "Consumed by build order"
msgstr "被生产订单消耗"
@@ -781,7 +787,7 @@ msgstr ""
msgid "Returned against Return Order"
msgstr ""
-#: InvenTree/status_codes.py:141 templates/js/translated/table_filters.js:321
+#: InvenTree/status_codes.py:141 templates/js/translated/table_filters.js:327
msgid "Sent to customer"
msgstr "发送给客户"
@@ -849,83 +855,111 @@ msgstr "密码字段必须相匹配。"
msgid "Wrong password provided"
msgstr "密码错误"
-#: InvenTree/views.py:651 templates/navbar.html:157
+#: InvenTree/views.py:653 templates/navbar.html:157
msgid "System Information"
msgstr "系统信息"
-#: InvenTree/views.py:658 templates/navbar.html:168
+#: InvenTree/views.py:660 templates/navbar.html:168
msgid "About InvenTree"
msgstr "关于 InventTree"
-#: build/api.py:222
+#: build/api.py:242
msgid "Build must be cancelled before it can be deleted"
msgstr "在删除前必须取消生产"
-#: build/models.py:69 build/templates/build/build_base.html:9
+#: build/api.py:286 part/models.py:3833 templates/js/translated/bom.js:985
+#: templates/js/translated/bom.js:1025 templates/js/translated/build.js:2449
+#: templates/js/translated/table_filters.js:166
+#: templates/js/translated/table_filters.js:518
+msgid "Consumable"
+msgstr ""
+
+#: build/api.py:287 part/models.py:3827 part/templates/part/upload_bom.html:58
+#: templates/js/translated/bom.js:989 templates/js/translated/bom.js:1016
+#: templates/js/translated/build.js:2458
+#: templates/js/translated/table_filters.js:162
+#: templates/js/translated/table_filters.js:191
+#: templates/js/translated/table_filters.js:522
+msgid "Optional"
+msgstr "可选项"
+
+#: build/api.py:288 templates/js/translated/table_filters.js:360
+#: templates/js/translated/table_filters.js:514
+msgid "Tracked"
+msgstr ""
+
+#: build/api.py:290 part/admin.py:64 templates/js/translated/build.js:1670
+#: templates/js/translated/build.js:2549
+#: templates/js/translated/sales_order.js:1918
+#: templates/js/translated/table_filters.js:506
+msgid "Allocated"
+msgstr "已分配"
+
+#: build/models.py:73 build/templates/build/build_base.html:9
#: build/templates/build/build_base.html:27
#: report/templates/report/inventree_build_order_base.html:105
#: templates/email/build_order_completed.html:16
#: templates/email/overdue_build_order.html:15
-#: templates/js/translated/build.js:945 templates/js/translated/stock.js:2629
+#: templates/js/translated/build.js:953 templates/js/translated/stock.js:2760
msgid "Build Order"
msgstr "生产订单"
-#: build/models.py:70 build/templates/build/build_base.html:13
+#: build/models.py:74 build/templates/build/build_base.html:13
#: build/templates/build/index.html:8 build/templates/build/index.html:12
-#: order/templates/order/sales_order_detail.html:119
+#: order/templates/order/sales_order_detail.html:111
#: order/templates/order/so_sidebar.html:13
-#: part/templates/part/part_sidebar.html:22 templates/InvenTree/index.html:244
+#: part/templates/part/part_sidebar.html:22 templates/InvenTree/index.html:196
#: templates/InvenTree/search.html:141
#: templates/InvenTree/settings/sidebar.html:53
-#: templates/js/translated/search.js:228 users/models.py:42
+#: templates/js/translated/search.js:186 users/models.py:42
msgid "Build Orders"
msgstr "生产订单"
-#: build/models.py:111
+#: build/models.py:115
msgid "Invalid choice for parent build"
msgstr "上级生产选项无效"
-#: build/models.py:155
+#: build/models.py:159
msgid "Build Order Reference"
msgstr "相关生产订单"
-#: build/models.py:156 order/models.py:359 order/models.py:765
-#: order/models.py:1087 order/models.py:1724 part/admin.py:278
-#: part/models.py:3798 part/templates/part/upload_bom.html:54
+#: build/models.py:160 order/models.py:372 order/models.py:778
+#: order/models.py:1100 order/models.py:1737 part/admin.py:278
+#: part/models.py:3842 part/templates/part/upload_bom.html:54
#: report/templates/report/inventree_bill_of_materials_report.html:139
#: report/templates/report/inventree_po_report_base.html:28
#: report/templates/report/inventree_return_order_report_base.html:26
#: report/templates/report/inventree_so_report_base.html:28
-#: templates/js/translated/bom.js:769 templates/js/translated/bom.js:943
-#: templates/js/translated/build.js:2098 templates/js/translated/order.js:291
+#: templates/js/translated/bom.js:770 templates/js/translated/bom.js:961
+#: templates/js/translated/build.js:2441 templates/js/translated/order.js:291
#: templates/js/translated/pricing.js:386
-#: templates/js/translated/purchase_order.js:2033
-#: templates/js/translated/return_order.js:713
-#: templates/js/translated/sales_order.js:1798
+#: templates/js/translated/purchase_order.js:2043
+#: templates/js/translated/return_order.js:725
+#: templates/js/translated/sales_order.js:1810
msgid "Reference"
msgstr "引用"
-#: build/models.py:167
+#: build/models.py:171
msgid "Brief description of the build (optional)"
msgstr ""
-#: build/models.py:175 build/templates/build/build_base.html:183
+#: build/models.py:179 build/templates/build/build_base.html:184
#: build/templates/build/detail.html:87
msgid "Parent Build"
msgstr "上级生产"
-#: build/models.py:176
+#: build/models.py:180
msgid "BuildOrder to which this build is allocated"
msgstr "此次生产匹配的订单"
-#: build/models.py:181 build/templates/build/build_base.html:98
-#: build/templates/build/detail.html:29 company/models.py:775
-#: order/models.py:1195 order/models.py:1311 order/models.py:1312
-#: part/models.py:391 part/models.py:2865 part/models.py:2979
-#: part/models.py:3119 part/models.py:3138 part/models.py:3157
-#: part/models.py:3178 part/models.py:3270 part/models.py:3555
-#: part/models.py:3663 part/models.py:3763 part/models.py:4077
-#: part/serializers.py:842 part/serializers.py:1245
+#: build/models.py:185 build/templates/build/build_base.html:98
+#: build/templates/build/detail.html:29 company/models.py:924
+#: order/models.py:1208 order/models.py:1324 order/models.py:1325
+#: part/models.py:392 part/models.py:2899 part/models.py:3013
+#: part/models.py:3153 part/models.py:3172 part/models.py:3191
+#: part/models.py:3212 part/models.py:3304 part/models.py:3589
+#: part/models.py:3712 part/models.py:3807 part/models.py:4121
+#: part/serializers.py:904 part/serializers.py:1307
#: part/templates/part/part_app_base.html:8
#: part/templates/part/part_pricing.html:12
#: part/templates/part/upload_bom.html:52
@@ -935,266 +969,229 @@ msgstr "此次生产匹配的订单"
#: report/templates/report/inventree_po_report_base.html:27
#: report/templates/report/inventree_return_order_report_base.html:24
#: report/templates/report/inventree_so_report_base.html:27
-#: stock/serializers.py:156 stock/serializers.py:509
+#: stock/serializers.py:205 stock/serializers.py:576
#: templates/InvenTree/search.html:82
#: templates/email/build_order_completed.html:17
#: templates/email/build_order_required_stock.html:17
#: templates/email/low_stock_notification.html:15
#: templates/email/overdue_build_order.html:16
-#: templates/js/translated/barcode.js:529 templates/js/translated/bom.js:631
-#: templates/js/translated/bom.js:768 templates/js/translated/bom.js:887
-#: templates/js/translated/build.js:1403 templates/js/translated/build.js:1965
-#: templates/js/translated/build.js:2464 templates/js/translated/build.js:2868
-#: templates/js/translated/company.js:337
-#: templates/js/translated/company.js:822
-#: templates/js/translated/company.js:929
-#: templates/js/translated/company.js:1169 templates/js/translated/part.js:1918
-#: templates/js/translated/part.js:1990 templates/js/translated/part.js:2216
-#: templates/js/translated/pricing.js:369
-#: templates/js/translated/purchase_order.js:746
-#: templates/js/translated/purchase_order.js:1274
-#: templates/js/translated/purchase_order.js:1811
-#: templates/js/translated/purchase_order.js:1975
-#: templates/js/translated/return_order.js:527
-#: templates/js/translated/return_order.js:694
-#: templates/js/translated/sales_order.js:285
-#: templates/js/translated/sales_order.js:1185
-#: templates/js/translated/sales_order.js:1584
-#: templates/js/translated/sales_order.js:1782
-#: templates/js/translated/stock.js:643 templates/js/translated/stock.js:809
-#: templates/js/translated/stock.js:1021 templates/js/translated/stock.js:1773
-#: templates/js/translated/stock.js:2594 templates/js/translated/stock.js:2831
-#: templates/js/translated/stock.js:2968
+#: templates/js/translated/barcode.js:529 templates/js/translated/bom.js:632
+#: templates/js/translated/bom.js:769 templates/js/translated/bom.js:905
+#: templates/js/translated/build.js:1289 templates/js/translated/build.js:1669
+#: templates/js/translated/build.js:2085 templates/js/translated/build.js:2261
+#: templates/js/translated/company.js:347
+#: templates/js/translated/company.js:1147
+#: templates/js/translated/company.js:1302
+#: templates/js/translated/company.js:1590 templates/js/translated/index.js:104
+#: templates/js/translated/part.js:1917 templates/js/translated/part.js:1989
+#: templates/js/translated/part.js:2292 templates/js/translated/pricing.js:369
+#: templates/js/translated/purchase_order.js:757
+#: templates/js/translated/purchase_order.js:1289
+#: templates/js/translated/purchase_order.js:1826
+#: templates/js/translated/purchase_order.js:1985
+#: templates/js/translated/return_order.js:539
+#: templates/js/translated/return_order.js:706
+#: templates/js/translated/sales_order.js:297
+#: templates/js/translated/sales_order.js:1197
+#: templates/js/translated/sales_order.js:1596
+#: templates/js/translated/sales_order.js:1794
+#: templates/js/translated/stock.js:642 templates/js/translated/stock.js:808
+#: templates/js/translated/stock.js:1020 templates/js/translated/stock.js:1913
+#: templates/js/translated/stock.js:2725 templates/js/translated/stock.js:2958
+#: templates/js/translated/stock.js:3095
msgid "Part"
msgstr "商品"
-#: build/models.py:189
+#: build/models.py:193
msgid "Select part to build"
msgstr "选择要生产的商品"
-#: build/models.py:194
+#: build/models.py:198
msgid "Sales Order Reference"
msgstr "相关销售订单"
-#: build/models.py:198
+#: build/models.py:202
msgid "SalesOrder to which this build is allocated"
msgstr "此次生产匹配的销售订单"
-#: build/models.py:203 build/serializers.py:942
-#: templates/js/translated/build.js:2452
-#: templates/js/translated/sales_order.js:1173
+#: build/models.py:207 build/serializers.py:946
+#: templates/js/translated/build.js:1657
+#: templates/js/translated/sales_order.js:1185
msgid "Source Location"
msgstr "来源地点"
-#: build/models.py:207
+#: build/models.py:211
msgid "Select location to take stock from for this build (leave blank to take from any stock location)"
msgstr "此次生产从哪个仓储位置获取库存(留空即可从任何仓储位置取出)"
-#: build/models.py:212
+#: build/models.py:216
msgid "Destination Location"
msgstr "目标地点"
-#: build/models.py:216
+#: build/models.py:220
msgid "Select location where the completed items will be stored"
msgstr "选择已完成项目仓储地点"
-#: build/models.py:220
+#: build/models.py:224
msgid "Build Quantity"
msgstr "生产数量"
-#: build/models.py:223
+#: build/models.py:227
msgid "Number of stock items to build"
msgstr "要生产的项目数量"
-#: build/models.py:227
+#: build/models.py:231
msgid "Completed items"
msgstr "已完成项目"
-#: build/models.py:229
+#: build/models.py:233
msgid "Number of stock items which have been completed"
msgstr "已完成的库存项目数量"
-#: build/models.py:233
+#: build/models.py:237
msgid "Build Status"
msgstr "生产状态"
-#: build/models.py:237
+#: build/models.py:241
msgid "Build status code"
msgstr "生产状态代码"
-#: build/models.py:246 build/serializers.py:269 order/serializers.py:506
-#: stock/models.py:739 templates/js/translated/purchase_order.js:1099
+#: build/models.py:250 build/serializers.py:277 order/serializers.py:512
+#: stock/models.py:739 templates/js/translated/purchase_order.js:1114
msgid "Batch Code"
msgstr "批量代码"
-#: build/models.py:250 build/serializers.py:270
+#: build/models.py:254 build/serializers.py:278
msgid "Batch code for this build output"
msgstr "此生产产出的批量代码"
-#: build/models.py:253 order/models.py:244 part/models.py:1038
+#: build/models.py:257 order/models.py:248 part/models.py:1039
#: part/templates/part/part_base.html:312
-#: templates/js/translated/return_order.js:327
-#: templates/js/translated/sales_order.js:815
+#: templates/js/translated/return_order.js:339
+#: templates/js/translated/sales_order.js:827
msgid "Creation Date"
msgstr "创建日期"
-#: build/models.py:257
+#: build/models.py:261
msgid "Target completion date"
msgstr "预计完成日期"
-#: build/models.py:258
+#: build/models.py:262
msgid "Target date for build completion. Build will be overdue after this date."
msgstr "生产完成的目标日期。生产将在此日期之后逾期。"
-#: build/models.py:261 order/models.py:409 order/models.py:1767
-#: templates/js/translated/build.js:2953
+#: build/models.py:265 order/models.py:422 order/models.py:1780
+#: templates/js/translated/build.js:2170
msgid "Completion Date"
msgstr "完成日期:"
-#: build/models.py:267
+#: build/models.py:271
msgid "completed by"
msgstr "完成人"
-#: build/models.py:275 templates/js/translated/build.js:2913
+#: build/models.py:279 templates/js/translated/build.js:2130
msgid "Issued by"
msgstr "发布者"
-#: build/models.py:276
+#: build/models.py:280
msgid "User who issued this build order"
msgstr "发布此生产订单的用户"
-#: build/models.py:284 build/templates/build/build_base.html:204
-#: build/templates/build/detail.html:122 order/models.py:258
-#: order/templates/order/order_base.html:214
-#: order/templates/order/return_order_base.html:182
-#: order/templates/order/sales_order_base.html:222 part/models.py:1042
+#: build/models.py:288 build/templates/build/build_base.html:205
+#: build/templates/build/detail.html:122 order/models.py:262
+#: order/templates/order/order_base.html:217
+#: order/templates/order/return_order_base.html:189
+#: order/templates/order/sales_order_base.html:229 part/models.py:1043
#: part/templates/part/part_base.html:392
#: report/templates/report/inventree_build_order_base.html:158
-#: templates/js/translated/build.js:2925
-#: templates/js/translated/purchase_order.js:1723
-#: templates/js/translated/return_order.js:347
-#: templates/js/translated/table_filters.js:461
+#: templates/js/translated/build.js:2142
+#: templates/js/translated/purchase_order.js:1738
+#: templates/js/translated/return_order.js:359
+#: templates/js/translated/table_filters.js:467
msgid "Responsible"
msgstr "责任人"
-#: build/models.py:285
+#: build/models.py:289
msgid "User or group responsible for this build order"
msgstr "构建此订单的用户或组"
-#: build/models.py:290 build/templates/build/detail.html:108
+#: build/models.py:294 build/templates/build/detail.html:108
#: company/templates/company/manufacturer_part.html:107
#: company/templates/company/supplier_part.html:195
-#: order/templates/order/order_base.html:171
+#: order/templates/order/order_base.html:167
#: order/templates/order/return_order_base.html:146
#: order/templates/order/sales_order_base.html:181
#: part/templates/part/part_base.html:385 stock/models.py:733
#: stock/templates/stock/item_base.html:201
+#: templates/js/translated/company.js:1050
msgid "External Link"
msgstr "外部链接"
-#: build/models.py:295
+#: build/models.py:299
msgid "Build Priority"
msgstr "创建优先级"
-#: build/models.py:298
+#: build/models.py:302
msgid "Priority of this build order"
msgstr "此构建订单的优先级"
-#: build/models.py:536
+#: build/models.py:309 common/models.py:104 order/admin.py:17
+#: order/models.py:237 templates/InvenTree/settings/settings_staff_js.html:70
+#: templates/js/translated/build.js:2067
+#: templates/js/translated/purchase_order.js:1685
+#: templates/js/translated/return_order.js:318
+#: templates/js/translated/sales_order.js:806
+#: templates/js/translated/table_filters.js:24
+#: templates/project_code_data.html:6
+msgid "Project Code"
+msgstr ""
+
+#: build/models.py:310
+msgid "Project code for this build order"
+msgstr ""
+
+#: build/models.py:545
#, python-brace-format
msgid "Build order {build} has been completed"
msgstr "生产订单 {build} 已完成"
-#: build/models.py:542
+#: build/models.py:551
msgid "A build order has been completed"
msgstr "生产订单已完成"
-#: build/models.py:744 build/models.py:811
+#: build/models.py:753 build/models.py:831
msgid "No build output specified"
msgstr "未指定生产产出"
-#: build/models.py:747
+#: build/models.py:756
msgid "Build output is already completed"
msgstr "生产产出已完成"
-#: build/models.py:750
+#: build/models.py:759
msgid "Build output does not match Build Order"
msgstr "生产产出与订单不匹配"
-#: build/models.py:815 build/serializers.py:212 build/serializers.py:251
-#: build/serializers.py:811 order/models.py:440 order/serializers.py:379
-#: order/serializers.py:501 part/serializers.py:1087 part/serializers.py:1408
-#: stock/models.py:593 stock/models.py:1387 stock/serializers.py:315
+#: build/models.py:835 build/serializers.py:220 build/serializers.py:259
+#: build/serializers.py:819 order/models.py:453 order/serializers.py:385
+#: order/serializers.py:507 part/serializers.py:1149 part/serializers.py:1470
+#: stock/models.py:593 stock/models.py:1387 stock/serializers.py:381
msgid "Quantity must be greater than zero"
msgstr "数量必须大于0"
-#: build/models.py:820 build/serializers.py:217
+#: build/models.py:840 build/serializers.py:225
msgid "Quantity cannot be greater than the output quantity"
msgstr ""
-#: build/models.py:1272
-msgid "Build item must specify a build output, as master part is marked as trackable"
-msgstr "生产项必须指定生产产出,因为主部件已经被标记为可追踪的"
+#: build/models.py:1260
+msgid "Build object"
+msgstr ""
-#: build/models.py:1281
-#, python-brace-format
-msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})"
-msgstr "分配数量 ({q}) 不得超过可用库存数量 ({a})"
-
-#: build/models.py:1291 order/models.py:1601
-msgid "Stock item is over-allocated"
-msgstr "库存物品分配过度!"
-
-#: build/models.py:1297 order/models.py:1604
-msgid "Allocation quantity must be greater than zero"
-msgstr "分配数量必须大于0"
-
-#: build/models.py:1303
-msgid "Quantity must be 1 for serialized stock"
-msgstr "序列化库存的数量必须是 1"
-
-#: build/models.py:1360
-msgid "Selected stock item not found in BOM"
-msgstr "在BOM中找不到选定的库存项"
-
-#: build/models.py:1438 stock/templates/stock/item_base.html:170
-#: templates/InvenTree/search.html:139 templates/js/translated/build.js:2841
-#: templates/navbar.html:38
-msgid "Build"
-msgstr "生产"
-
-#: build/models.py:1439
-msgid "Build to allocate parts"
-msgstr "生产以分配部件"
-
-#: build/models.py:1455 build/serializers.py:791 order/serializers.py:1059
-#: order/serializers.py:1080 stock/serializers.py:413 stock/serializers.py:770
-#: stock/serializers.py:896 stock/templates/stock/item_base.html:10
-#: stock/templates/stock/item_base.html:23
-#: stock/templates/stock/item_base.html:195
-#: templates/js/translated/build.js:955 templates/js/translated/build.js:960
-#: templates/js/translated/build.js:2466 templates/js/translated/build.js:3038
-#: templates/js/translated/sales_order.js:286
-#: templates/js/translated/sales_order.js:1186
-#: templates/js/translated/sales_order.js:1485
-#: templates/js/translated/sales_order.js:1490
-#: templates/js/translated/sales_order.js:1591
-#: templates/js/translated/sales_order.js:1678
-#: templates/js/translated/stock.js:644 templates/js/translated/stock.js:810
-#: templates/js/translated/stock.js:2714
-msgid "Stock Item"
-msgstr "库存项"
-
-#: build/models.py:1456
-msgid "Source stock item"
-msgstr "源库存项"
-
-#: build/models.py:1468 build/serializers.py:198 build/serializers.py:236
-#: build/templates/build/build_base.html:103
-#: build/templates/build/detail.html:34 common/models.py:2176
-#: order/models.py:1073 order/models.py:1645 order/serializers.py:1233
+#: build/models.py:1274 build/models.py:1556 build/serializers.py:206
+#: build/serializers.py:244 build/templates/build/build_base.html:103
+#: build/templates/build/detail.html:34 common/models.py:2162
+#: order/models.py:1086 order/models.py:1658 order/serializers.py:1239
#: order/templates/order/order_wizard/match_parts.html:30 part/admin.py:277
-#: part/forms.py:47 part/models.py:2992 part/models.py:3779
+#: part/forms.py:47 part/models.py:3026 part/models.py:3823
#: part/templates/part/part_pricing.html:16
#: part/templates/part/upload_bom.html:53
#: report/templates/report/inventree_bill_of_materials_report.html:138
@@ -1203,315 +1200,367 @@ msgstr "源库存项"
#: report/templates/report/inventree_so_report_base.html:29
#: report/templates/report/inventree_test_report_base.html:90
#: report/templates/report/inventree_test_report_base.html:170
-#: stock/admin.py:103 stock/serializers.py:306
+#: stock/admin.py:103 stock/serializers.py:372
#: stock/templates/stock/item_base.html:288
#: stock/templates/stock/item_base.html:296
#: stock/templates/stock/item_base.html:343
#: templates/email/build_order_completed.html:18
-#: templates/js/translated/barcode.js:531 templates/js/translated/bom.js:770
-#: templates/js/translated/bom.js:951 templates/js/translated/build.js:504
-#: templates/js/translated/build.js:716 templates/js/translated/build.js:982
-#: templates/js/translated/build.js:1425 templates/js/translated/build.js:1991
-#: templates/js/translated/build.js:2467
-#: templates/js/translated/company.js:1428
-#: templates/js/translated/model_renderers.js:207
-#: templates/js/translated/order.js:304 templates/js/translated/part.js:935
-#: templates/js/translated/part.js:1784 templates/js/translated/part.js:3263
+#: templates/js/translated/barcode.js:531 templates/js/translated/bom.js:771
+#: templates/js/translated/bom.js:969 templates/js/translated/build.js:510
+#: templates/js/translated/build.js:722 templates/js/translated/build.js:1308
+#: templates/js/translated/build.js:1672 templates/js/translated/build.js:2283
+#: templates/js/translated/company.js:1849
+#: templates/js/translated/model_renderers.js:221
+#: templates/js/translated/order.js:304 templates/js/translated/part.js:934
+#: templates/js/translated/part.js:1783 templates/js/translated/part.js:3248
#: templates/js/translated/pricing.js:381
#: templates/js/translated/pricing.js:474
#: templates/js/translated/pricing.js:522
#: templates/js/translated/pricing.js:616
-#: templates/js/translated/purchase_order.js:749
-#: templates/js/translated/purchase_order.js:1815
-#: templates/js/translated/purchase_order.js:2039
-#: templates/js/translated/sales_order.js:302
-#: templates/js/translated/sales_order.js:1187
-#: templates/js/translated/sales_order.js:1504
-#: templates/js/translated/sales_order.js:1594
-#: templates/js/translated/sales_order.js:1684
-#: templates/js/translated/sales_order.js:1804
-#: templates/js/translated/stock.js:531 templates/js/translated/stock.js:669
-#: templates/js/translated/stock.js:840 templates/js/translated/stock.js:2758
-#: templates/js/translated/stock.js:2843
+#: templates/js/translated/purchase_order.js:760
+#: templates/js/translated/purchase_order.js:1830
+#: templates/js/translated/purchase_order.js:2049
+#: templates/js/translated/sales_order.js:314
+#: templates/js/translated/sales_order.js:1199
+#: templates/js/translated/sales_order.js:1516
+#: templates/js/translated/sales_order.js:1606
+#: templates/js/translated/sales_order.js:1696
+#: templates/js/translated/sales_order.js:1816
+#: templates/js/translated/stock.js:530 templates/js/translated/stock.js:668
+#: templates/js/translated/stock.js:839 templates/js/translated/stock.js:2889
+#: templates/js/translated/stock.js:2970
msgid "Quantity"
msgstr "数量"
-#: build/models.py:1469
+#: build/models.py:1275
+msgid "Required quantity for build order"
+msgstr ""
+
+#: build/models.py:1357
+msgid "Build item must specify a build output, as master part is marked as trackable"
+msgstr "生产项必须指定生产产出,因为主部件已经被标记为可追踪的"
+
+#: build/models.py:1366
+#, python-brace-format
+msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})"
+msgstr "分配数量 ({q}) 不得超过可用库存数量 ({a})"
+
+#: build/models.py:1376 order/models.py:1614
+msgid "Stock item is over-allocated"
+msgstr "库存物品分配过度!"
+
+#: build/models.py:1382 order/models.py:1617
+msgid "Allocation quantity must be greater than zero"
+msgstr "分配数量必须大于0"
+
+#: build/models.py:1388
+msgid "Quantity must be 1 for serialized stock"
+msgstr "序列化库存的数量必须是 1"
+
+#: build/models.py:1449
+msgid "Selected stock item does not match BOM line"
+msgstr ""
+
+#: build/models.py:1543 build/serializers.py:799 order/serializers.py:1065
+#: order/serializers.py:1086 stock/serializers.py:479 stock/serializers.py:887
+#: stock/serializers.py:1013 stock/templates/stock/item_base.html:10
+#: stock/templates/stock/item_base.html:23
+#: stock/templates/stock/item_base.html:195
+#: templates/js/translated/build.js:1671
+#: templates/js/translated/sales_order.js:298
+#: templates/js/translated/sales_order.js:1198
+#: templates/js/translated/sales_order.js:1497
+#: templates/js/translated/sales_order.js:1502
+#: templates/js/translated/sales_order.js:1603
+#: templates/js/translated/sales_order.js:1690
+#: templates/js/translated/stock.js:643 templates/js/translated/stock.js:809
+#: templates/js/translated/stock.js:2845
+msgid "Stock Item"
+msgstr "库存项"
+
+#: build/models.py:1544
+msgid "Source stock item"
+msgstr "源库存项"
+
+#: build/models.py:1557
msgid "Stock quantity to allocate to build"
msgstr "分配到生产的数量"
-#: build/models.py:1477
+#: build/models.py:1565
msgid "Install into"
msgstr "安装到"
-#: build/models.py:1478
+#: build/models.py:1566
msgid "Destination stock item"
msgstr "目标库存项"
-#: build/serializers.py:148 build/serializers.py:820
-#: templates/js/translated/build.js:1413
+#: build/serializers.py:156 build/serializers.py:828
+#: templates/js/translated/build.js:1299
msgid "Build Output"
msgstr "生产产出"
-#: build/serializers.py:160
+#: build/serializers.py:168
msgid "Build output does not match the parent build"
msgstr "生产产出与对应生产不匹配"
-#: build/serializers.py:164
+#: build/serializers.py:172
msgid "Output part does not match BuildOrder part"
msgstr "产出部件与生产订单部件不匹配"
-#: build/serializers.py:168
+#: build/serializers.py:176
msgid "This build output has already been completed"
msgstr "此生产产出已经完成"
-#: build/serializers.py:179
+#: build/serializers.py:187
msgid "This build output is not fully allocated"
msgstr "生产产出未被完成分配"
-#: build/serializers.py:199 build/serializers.py:237
+#: build/serializers.py:207 build/serializers.py:245
msgid "Enter quantity for build output"
msgstr "输入生产产出数量"
-#: build/serializers.py:258
+#: build/serializers.py:266
msgid "Integer quantity required for trackable parts"
msgstr "对于可追踪的部件,需要整数型数值"
-#: build/serializers.py:261
+#: build/serializers.py:269
msgid "Integer quantity required, as the bill of materials contains trackable parts"
msgstr "需要整数型数值,因为BOM包含可追踪的部件"
-#: build/serializers.py:276 order/serializers.py:514 order/serializers.py:1237
-#: stock/serializers.py:324 templates/js/translated/purchase_order.js:1123
-#: templates/js/translated/stock.js:334 templates/js/translated/stock.js:532
+#: build/serializers.py:284 order/serializers.py:520 order/serializers.py:1243
+#: stock/serializers.py:390 templates/js/translated/purchase_order.js:1138
+#: templates/js/translated/stock.js:333 templates/js/translated/stock.js:531
msgid "Serial Numbers"
msgstr "序列号"
-#: build/serializers.py:277
+#: build/serializers.py:285
msgid "Enter serial numbers for build outputs"
msgstr "输入生产产出的序列号"
-#: build/serializers.py:290
+#: build/serializers.py:298
msgid "Auto Allocate Serial Numbers"
msgstr "自动分配序列号"
-#: build/serializers.py:291
+#: build/serializers.py:299
msgid "Automatically allocate required items with matching serial numbers"
msgstr "自动为所需项分配对应的序列号"
-#: build/serializers.py:326 stock/api.py:670
+#: build/serializers.py:334 stock/api.py:707
msgid "The following serial numbers already exist or are invalid"
msgstr "以下序列号已存在或无效"
-#: build/serializers.py:377 build/serializers.py:439 build/serializers.py:518
+#: build/serializers.py:385 build/serializers.py:447 build/serializers.py:526
msgid "A list of build outputs must be provided"
msgstr "必须提供生产产出列表"
-#: build/serializers.py:415 build/serializers.py:488 order/serializers.py:487
-#: order/serializers.py:606 order/serializers.py:1588 part/serializers.py:854
-#: stock/serializers.py:335 stock/serializers.py:470 stock/serializers.py:551
-#: stock/serializers.py:931 stock/serializers.py:1173
+#: build/serializers.py:423 build/serializers.py:496 order/serializers.py:493
+#: order/serializers.py:612 order/serializers.py:1594 part/serializers.py:916
+#: stock/serializers.py:401 stock/serializers.py:537 stock/serializers.py:618
+#: stock/serializers.py:1048 stock/serializers.py:1290
#: stock/templates/stock/item_base.html:390
#: templates/js/translated/barcode.js:530
-#: templates/js/translated/barcode.js:778 templates/js/translated/build.js:967
-#: templates/js/translated/build.js:2006
-#: templates/js/translated/purchase_order.js:1148
-#: templates/js/translated/purchase_order.js:1238
-#: templates/js/translated/sales_order.js:1497
-#: templates/js/translated/sales_order.js:1605
-#: templates/js/translated/sales_order.js:1613
-#: templates/js/translated/sales_order.js:1692
-#: templates/js/translated/stock.js:645 templates/js/translated/stock.js:811
-#: templates/js/translated/stock.js:1023 templates/js/translated/stock.js:1937
-#: templates/js/translated/stock.js:2608
+#: templates/js/translated/barcode.js:778 templates/js/translated/build.js:980
+#: templates/js/translated/build.js:2298
+#: templates/js/translated/purchase_order.js:1163
+#: templates/js/translated/purchase_order.js:1253
+#: templates/js/translated/sales_order.js:1509
+#: templates/js/translated/sales_order.js:1617
+#: templates/js/translated/sales_order.js:1625
+#: templates/js/translated/sales_order.js:1704
+#: templates/js/translated/stock.js:644 templates/js/translated/stock.js:810
+#: templates/js/translated/stock.js:1022 templates/js/translated/stock.js:2094
+#: templates/js/translated/stock.js:2739
msgid "Location"
msgstr "地点"
-#: build/serializers.py:416
+#: build/serializers.py:424
msgid "Stock location for scrapped outputs"
msgstr ""
-#: build/serializers.py:422
+#: build/serializers.py:430
msgid "Discard Allocations"
msgstr ""
-#: build/serializers.py:423
+#: build/serializers.py:431
msgid "Discard any stock allocations for scrapped outputs"
msgstr ""
-#: build/serializers.py:428
+#: build/serializers.py:436
msgid "Reason for scrapping build output(s)"
msgstr ""
-#: build/serializers.py:489
+#: build/serializers.py:497
msgid "Location for completed build outputs"
msgstr "已完成生产产出的仓储地点"
-#: build/serializers.py:495 build/templates/build/build_base.html:151
-#: build/templates/build/detail.html:62 order/models.py:791
-#: order/models.py:1750 order/serializers.py:524 stock/admin.py:106
-#: stock/templates/stock/item_base.html:423
-#: templates/js/translated/barcode.js:252 templates/js/translated/build.js:2897
-#: templates/js/translated/purchase_order.js:1278
-#: templates/js/translated/purchase_order.js:1682
-#: templates/js/translated/return_order.js:319
-#: templates/js/translated/sales_order.js:807
-#: templates/js/translated/stock.js:1912 templates/js/translated/stock.js:2732
-#: templates/js/translated/stock.js:2859
+#: build/serializers.py:503 build/templates/build/build_base.html:152
+#: build/templates/build/detail.html:62 order/models.py:804
+#: order/models.py:1763 order/serializers.py:530 stock/admin.py:106
+#: stock/serializers.py:677 stock/templates/stock/item_base.html:423
+#: templates/js/translated/barcode.js:252 templates/js/translated/build.js:2114
+#: templates/js/translated/purchase_order.js:1293
+#: templates/js/translated/purchase_order.js:1697
+#: templates/js/translated/return_order.js:331
+#: templates/js/translated/sales_order.js:819
+#: templates/js/translated/stock.js:2069 templates/js/translated/stock.js:2863
+#: templates/js/translated/stock.js:2986
msgid "Status"
msgstr "状态"
-#: build/serializers.py:501
+#: build/serializers.py:509
msgid "Accept Incomplete Allocation"
msgstr "接受不完整的分配"
-#: build/serializers.py:502
+#: build/serializers.py:510
msgid "Complete outputs if stock has not been fully allocated"
msgstr "如果库存尚未完成分配,完成产出"
-#: build/serializers.py:571
+#: build/serializers.py:579
msgid "Remove Allocated Stock"
msgstr "移除已分配的库存"
-#: build/serializers.py:572
+#: build/serializers.py:580
msgid "Subtract any stock which has already been allocated to this build"
msgstr "减去已经分配至此生产的库存"
-#: build/serializers.py:578
+#: build/serializers.py:586
msgid "Remove Incomplete Outputs"
msgstr "移除未完成的产出"
-#: build/serializers.py:579
+#: build/serializers.py:587
msgid "Delete any build outputs which have not been completed"
msgstr "删除所有未完成的生产产出"
-#: build/serializers.py:606
+#: build/serializers.py:614
msgid "Not permitted"
msgstr ""
-#: build/serializers.py:607
+#: build/serializers.py:615
msgid "Accept as consumed by this build order"
msgstr "接受此构建订单所消耗的内容"
-#: build/serializers.py:608
+#: build/serializers.py:616
msgid "Deallocate before completing this build order"
msgstr "在完成此构建订单前取消分配"
-#: build/serializers.py:631
+#: build/serializers.py:639
msgid "Overallocated Stock"
msgstr "超出分配的库存"
-#: build/serializers.py:633
+#: build/serializers.py:641
msgid "How do you want to handle extra stock items assigned to the build order"
msgstr "你想如何处理分配给构建订单的额外库存物品"
-#: build/serializers.py:643
+#: build/serializers.py:651
msgid "Some stock items have been overallocated"
msgstr "一些库存项已被过度分配"
-#: build/serializers.py:648
+#: build/serializers.py:656
msgid "Accept Unallocated"
msgstr "接受未分配的"
-#: build/serializers.py:649
+#: build/serializers.py:657
msgid "Accept that stock items have not been fully allocated to this build order"
msgstr "接受库存项未被完成分配至此生产订单"
-#: build/serializers.py:659 templates/js/translated/build.js:295
+#: build/serializers.py:667 templates/js/translated/build.js:304
msgid "Required stock has not been fully allocated"
msgstr "所需库存尚未完全分配"
-#: build/serializers.py:664 order/serializers.py:261 order/serializers.py:1127
+#: build/serializers.py:672 order/serializers.py:267 order/serializers.py:1133
msgid "Accept Incomplete"
msgstr "接受未完成"
-#: build/serializers.py:665
+#: build/serializers.py:673
msgid "Accept that the required number of build outputs have not been completed"
msgstr "接受所需的生产产出未完成"
-#: build/serializers.py:675 templates/js/translated/build.js:299
+#: build/serializers.py:683 templates/js/translated/build.js:308
msgid "Required build quantity has not been completed"
msgstr "所需生产数量尚未完成"
-#: build/serializers.py:684 templates/js/translated/build.js:283
+#: build/serializers.py:692 templates/js/translated/build.js:292
msgid "Build order has incomplete outputs"
msgstr "生产订单有未完成的产出"
-#: build/serializers.py:714 build/serializers.py:768 part/models.py:3686
-#: part/models.py:4069
-msgid "BOM Item"
-msgstr "BOM项"
+#: build/serializers.py:722
+msgid "Build Line"
+msgstr ""
-#: build/serializers.py:724
+#: build/serializers.py:732
msgid "Build output"
msgstr "生产产出"
-#: build/serializers.py:732
+#: build/serializers.py:740
msgid "Build output must point to the same build"
msgstr "生产产出必须指向相同的生产"
-#: build/serializers.py:782
+#: build/serializers.py:776
+msgid "Build Line Item"
+msgstr ""
+
+#: build/serializers.py:790
msgid "bom_item.part must point to the same part as the build order"
msgstr "bom_item.part 必须与生产订单指向相同的部件"
-#: build/serializers.py:797 stock/serializers.py:783
+#: build/serializers.py:805 stock/serializers.py:900
msgid "Item must be in stock"
msgstr "项目必须在库存中"
-#: build/serializers.py:846 order/serializers.py:1117
+#: build/serializers.py:853 order/serializers.py:1123
#, python-brace-format
msgid "Available quantity ({q}) exceeded"
msgstr "可用量 ({q}) 超出了限制"
-#: build/serializers.py:852
+#: build/serializers.py:859
msgid "Build output must be specified for allocation of tracked parts"
msgstr "对于被追踪的部件的分配,必须指定生产产出"
-#: build/serializers.py:859
+#: build/serializers.py:866
msgid "Build output cannot be specified for allocation of untracked parts"
msgstr "对于未被追踪的部件,无法指定生产产出"
-#: build/serializers.py:864
+#: build/serializers.py:871
msgid "This stock item has already been allocated to this build output"
msgstr "此库存项已被分配至此生产产出"
-#: build/serializers.py:887 order/serializers.py:1401
+#: build/serializers.py:894 order/serializers.py:1407
msgid "Allocation items must be provided"
msgstr "必须提供分配的项"
-#: build/serializers.py:943
+#: build/serializers.py:947
msgid "Stock location where parts are to be sourced (leave blank to take from any location)"
msgstr "部件来源的仓储地点(留空则可来源于任何仓储地点)"
-#: build/serializers.py:951
+#: build/serializers.py:955
msgid "Exclude Location"
msgstr "排除地点"
-#: build/serializers.py:952
+#: build/serializers.py:956
msgid "Exclude stock items from this selected location"
msgstr "从该选定的仓储地点排除库存项"
-#: build/serializers.py:957
+#: build/serializers.py:961
msgid "Interchangeable Stock"
msgstr "可互换的库存"
-#: build/serializers.py:958
+#: build/serializers.py:962
msgid "Stock items in multiple locations can be used interchangeably"
msgstr "多处地点的库存项可以互换使用"
-#: build/serializers.py:963
+#: build/serializers.py:967
msgid "Substitute Stock"
msgstr "可替换的库存"
-#: build/serializers.py:964
+#: build/serializers.py:968
msgid "Allow allocation of substitute parts"
msgstr "允许分配可替换的部件"
-#: build/serializers.py:969
+#: build/serializers.py:973
msgid "Optional Items"
msgstr "可选项目"
-#: build/serializers.py:970
+#: build/serializers.py:974
msgid "Allocate optional BOM items to build order"
msgstr "分配可选的BOM项目来建立订单"
@@ -1540,6 +1589,7 @@ msgstr ""
#: part/templates/part/part_base.html:43
#: stock/templates/stock/item_base.html:41
#: stock/templates/stock/location.html:54
+#: templates/js/translated/filters.js:336
msgid "Barcode actions"
msgstr ""
@@ -1618,69 +1668,67 @@ msgstr "生产完成"
msgid "Build Description"
msgstr "构建描述"
-#: build/templates/build/build_base.html:117
+#: build/templates/build/build_base.html:118
msgid "No build outputs have been created for this build order"
msgstr "针对此生产订单,尚未创建生产产出"
-#: build/templates/build/build_base.html:124
+#: build/templates/build/build_base.html:125
msgid "Build Order is ready to mark as completed"
msgstr "构建订单已准备好标记为已完成"
-#: build/templates/build/build_base.html:129
+#: build/templates/build/build_base.html:130
msgid "Build Order cannot be completed as outstanding outputs remain"
msgstr "创建订单无法完成,因为未完成的输出"
-#: build/templates/build/build_base.html:134
+#: build/templates/build/build_base.html:135
msgid "Required build quantity has not yet been completed"
msgstr "所需生产数量尚未完成"
-#: build/templates/build/build_base.html:139
+#: build/templates/build/build_base.html:140
msgid "Stock has not been fully allocated to this Build Order"
msgstr "库存尚未被完全分配到此构建订单"
-#: build/templates/build/build_base.html:160
-#: build/templates/build/detail.html:138 order/models.py:240
-#: order/models.py:1099 order/templates/order/order_base.html:190
+#: build/templates/build/build_base.html:161
+#: build/templates/build/detail.html:138 order/models.py:244
+#: order/models.py:1112 order/templates/order/order_base.html:186
#: order/templates/order/return_order_base.html:165
#: order/templates/order/sales_order_base.html:193
#: report/templates/report/inventree_build_order_base.html:125
-#: templates/js/translated/build.js:2945 templates/js/translated/part.js:1802
-#: templates/js/translated/purchase_order.js:1699
-#: templates/js/translated/purchase_order.js:2115
-#: templates/js/translated/return_order.js:335
-#: templates/js/translated/return_order.js:735
-#: templates/js/translated/sales_order.js:823
-#: templates/js/translated/sales_order.js:1847
+#: templates/js/translated/build.js:2162 templates/js/translated/part.js:1801
+#: templates/js/translated/purchase_order.js:1714
+#: templates/js/translated/purchase_order.js:2125
+#: templates/js/translated/return_order.js:347
+#: templates/js/translated/return_order.js:747
+#: templates/js/translated/sales_order.js:835
+#: templates/js/translated/sales_order.js:1859
msgid "Target Date"
msgstr "预计日期"
-#: build/templates/build/build_base.html:165
+#: build/templates/build/build_base.html:166
#, python-format
msgid "This build was due on %(target)s"
msgstr "此次生产的截止日期为 %(target)s"
-#: build/templates/build/build_base.html:165
-#: build/templates/build/build_base.html:222
-#: order/templates/order/order_base.html:126
+#: build/templates/build/build_base.html:166
+#: build/templates/build/build_base.html:223
+#: order/templates/order/order_base.html:122
#: order/templates/order/return_order_base.html:118
#: order/templates/order/sales_order_base.html:123
-#: templates/js/translated/table_filters.js:68
-#: templates/js/translated/table_filters.js:454
-#: templates/js/translated/table_filters.js:539
-#: templates/js/translated/table_filters.js:580
+#: templates/js/translated/table_filters.js:74
+#: templates/js/translated/table_filters.js:460
+#: templates/js/translated/table_filters.js:561
+#: templates/js/translated/table_filters.js:602
msgid "Overdue"
msgstr "逾期"
-#: build/templates/build/build_base.html:177
-#: build/templates/build/detail.html:67 build/templates/build/detail.html:149
-#: order/templates/order/sales_order_base.html:203
-#: templates/js/translated/table_filters.js:602
-msgid "Completed"
-msgstr "已完成"
+#: build/templates/build/build_base.html:178
+#: build/templates/build/detail.html:67 build/templates/build/sidebar.html:13
+msgid "Completed Outputs"
+msgstr "已完成输出"
-#: build/templates/build/build_base.html:190
-#: build/templates/build/detail.html:101 order/api.py:1454 order/models.py:1304
-#: order/models.py:1403 order/models.py:1551
+#: build/templates/build/build_base.html:191
+#: build/templates/build/detail.html:101 order/api.py:1454 order/models.py:1317
+#: order/models.py:1416 order/models.py:1564
#: order/templates/order/sales_order_base.html:9
#: order/templates/order/sales_order_base.html:28
#: report/templates/report/inventree_build_order_base.html:135
@@ -1688,32 +1736,32 @@ msgstr "已完成"
#: stock/templates/stock/item_base.html:370
#: templates/email/overdue_sales_order.html:15
#: templates/js/translated/pricing.js:915
-#: templates/js/translated/sales_order.js:757
-#: templates/js/translated/sales_order.js:980
-#: templates/js/translated/stock.js:2661
+#: templates/js/translated/sales_order.js:769
+#: templates/js/translated/sales_order.js:992
+#: templates/js/translated/stock.js:2792
msgid "Sales Order"
msgstr "销售订单"
-#: build/templates/build/build_base.html:197
+#: build/templates/build/build_base.html:198
#: build/templates/build/detail.html:115
#: report/templates/report/inventree_build_order_base.html:152
msgid "Issued By"
msgstr "发布者"
-#: build/templates/build/build_base.html:211
-#: build/templates/build/detail.html:94 templates/js/translated/build.js:2862
+#: build/templates/build/build_base.html:212
+#: build/templates/build/detail.html:94 templates/js/translated/build.js:2079
msgid "Priority"
msgstr "优先级"
-#: build/templates/build/build_base.html:273
+#: build/templates/build/build_base.html:274
msgid "Delete Build Order"
msgstr "删除生产订单"
-#: build/templates/build/build_base.html:283
+#: build/templates/build/build_base.html:284
msgid "Build Order QR Code"
msgstr ""
-#: build/templates/build/build_base.html:295
+#: build/templates/build/build_base.html:296
msgid "Link Barcode to Build Order"
msgstr ""
@@ -1729,8 +1777,8 @@ msgstr "库存来源"
msgid "Stock can be taken from any available location."
msgstr "库存可以从任何可用的地点获得。"
-#: build/templates/build/detail.html:49 order/models.py:1222
-#: templates/js/translated/purchase_order.js:2157
+#: build/templates/build/detail.html:49 order/models.py:1235
+#: templates/js/translated/purchase_order.js:2167
msgid "Destination"
msgstr "目的地"
@@ -1744,21 +1792,21 @@ msgstr "已分配的部件"
#: build/templates/build/detail.html:80 stock/admin.py:105
#: stock/templates/stock/item_base.html:163
-#: templates/js/translated/build.js:1432
-#: templates/js/translated/model_renderers.js:212
-#: templates/js/translated/purchase_order.js:1244
-#: templates/js/translated/stock.js:1093 templates/js/translated/stock.js:1926
-#: templates/js/translated/stock.js:2866
-#: templates/js/translated/table_filters.js:259
-#: templates/js/translated/table_filters.js:350
+#: templates/js/translated/build.js:1319
+#: templates/js/translated/model_renderers.js:226
+#: templates/js/translated/purchase_order.js:1259
+#: templates/js/translated/stock.js:1092 templates/js/translated/stock.js:2083
+#: templates/js/translated/stock.js:2993
+#: templates/js/translated/table_filters.js:265
+#: templates/js/translated/table_filters.js:356
msgid "Batch"
msgstr "批量"
#: build/templates/build/detail.html:133
-#: order/templates/order/order_base.html:177
+#: order/templates/order/order_base.html:173
#: order/templates/order/return_order_base.html:152
#: order/templates/order/sales_order_base.html:187
-#: templates/js/translated/build.js:2905
+#: templates/js/translated/build.js:2122
msgid "Created"
msgstr "已创建"
@@ -1766,147 +1814,106 @@ msgstr "已创建"
msgid "No target date set"
msgstr "无预计日期"
+#: build/templates/build/detail.html:149
+#: order/templates/order/sales_order_base.html:203
+#: templates/js/translated/table_filters.js:624
+msgid "Completed"
+msgstr "已完成"
+
#: build/templates/build/detail.html:153
msgid "Build not complete"
msgstr "生产未完成"
-#: build/templates/build/detail.html:164 build/templates/build/sidebar.html:19
+#: build/templates/build/detail.html:164 build/templates/build/sidebar.html:17
msgid "Child Build Orders"
msgstr "子生产订单"
-#: build/templates/build/detail.html:179
+#: build/templates/build/detail.html:177
msgid "Allocate Stock to Build"
msgstr "为生产分配库存"
-#: build/templates/build/detail.html:183 templates/js/translated/build.js:2276
-msgid "Unallocate stock"
-msgstr "未分配库存"
+#: build/templates/build/detail.html:181
+msgid "Deallocate stock"
+msgstr ""
+
+#: build/templates/build/detail.html:182
+msgid "Deallocate Stock"
+msgstr ""
#: build/templates/build/detail.html:184
-msgid "Unallocate Stock"
-msgstr "未分配库存"
-
-#: build/templates/build/detail.html:186
msgid "Automatically allocate stock to build"
msgstr "自动分配存货进行生成"
-#: build/templates/build/detail.html:187
+#: build/templates/build/detail.html:185
msgid "Auto Allocate"
msgstr "自动分配"
-#: build/templates/build/detail.html:189
+#: build/templates/build/detail.html:187
msgid "Manually allocate stock to build"
msgstr "手动分配存货进行生成"
-#: build/templates/build/detail.html:190 build/templates/build/sidebar.html:8
+#: build/templates/build/detail.html:188 build/templates/build/sidebar.html:8
msgid "Allocate Stock"
msgstr "分配库存"
-#: build/templates/build/detail.html:193
+#: build/templates/build/detail.html:191
msgid "Order required parts"
msgstr "订单所需部件"
-#: build/templates/build/detail.html:194
-#: company/templates/company/detail.html:38
-#: company/templates/company/detail.html:86
-#: part/templates/part/category.html:184
-#: templates/js/translated/purchase_order.js:789
+#: build/templates/build/detail.html:192
+#: templates/js/translated/purchase_order.js:800
msgid "Order Parts"
msgstr "订购商品"
-#: build/templates/build/detail.html:206
-msgid "Untracked stock has been fully allocated for this Build Order"
-msgstr "未跟踪的库存已完全分配给此生产订单"
-
#: build/templates/build/detail.html:210
-msgid "Untracked stock has not been fully allocated for this Build Order"
-msgstr "未跟踪的库存尚未完全分配给此生产订单"
-
-#: build/templates/build/detail.html:217
-msgid "Allocate selected items"
-msgstr "分配选定项目"
-
-#: build/templates/build/detail.html:227
-msgid "This Build Order does not have any associated untracked BOM items"
-msgstr "此构建订单没有任何关联的 BOM 项目"
-
-#: build/templates/build/detail.html:236
msgid "Incomplete Build Outputs"
msgstr "未完成的生产产出"
-#: build/templates/build/detail.html:240
+#: build/templates/build/detail.html:214
msgid "Create new build output"
msgstr "创建新构建输出"
-#: build/templates/build/detail.html:241
+#: build/templates/build/detail.html:215
msgid "New Build Output"
msgstr "新建构建输出"
-#: build/templates/build/detail.html:255
-msgid "Output Actions"
-msgstr "输出操作"
-
-#: build/templates/build/detail.html:260
-msgid "Complete selected build outputs"
-msgstr "完成选定的构建输出"
-
-#: build/templates/build/detail.html:261
-msgid "Complete outputs"
-msgstr "已完成输出"
-
-#: build/templates/build/detail.html:265
-msgid "Scrap selected build outputs"
-msgstr ""
-
-#: build/templates/build/detail.html:266
-msgid "Scrap outputs"
-msgstr ""
-
-#: build/templates/build/detail.html:270
-msgid "Delete selected build outputs"
-msgstr "删除选中的构建输出"
-
-#: build/templates/build/detail.html:271
-msgid "Delete outputs"
-msgstr "删除输出"
-
-#: build/templates/build/detail.html:288 build/templates/build/sidebar.html:11
+#: build/templates/build/detail.html:232 build/templates/build/sidebar.html:15
msgid "Consumed Stock"
msgstr ""
-#: build/templates/build/detail.html:300
+#: build/templates/build/detail.html:244
msgid "Completed Build Outputs"
msgstr "已完成构建输出"
-#: build/templates/build/detail.html:312 build/templates/build/sidebar.html:21
-#: company/templates/company/detail.html:261
-#: company/templates/company/manufacturer_part.html:151
+#: build/templates/build/detail.html:256 build/templates/build/sidebar.html:19
+#: company/templates/company/detail.html:229
+#: company/templates/company/manufacturer_part.html:141
#: company/templates/company/manufacturer_part_sidebar.html:9
-#: company/templates/company/sidebar.html:37
+#: company/templates/company/sidebar.html:39
#: order/templates/order/po_sidebar.html:9
-#: order/templates/order/purchase_order_detail.html:102
-#: order/templates/order/return_order_detail.html:74
+#: order/templates/order/purchase_order_detail.html:84
+#: order/templates/order/return_order_detail.html:70
#: order/templates/order/return_order_sidebar.html:7
-#: order/templates/order/sales_order_detail.html:134
-#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:234
-#: part/templates/part/part_sidebar.html:61 stock/templates/stock/item.html:117
+#: order/templates/order/sales_order_detail.html:124
+#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:217
+#: part/templates/part/part_sidebar.html:61 stock/templates/stock/item.html:109
#: stock/templates/stock/stock_sidebar.html:23
msgid "Attachments"
msgstr "附件"
-#: build/templates/build/detail.html:327
+#: build/templates/build/detail.html:271
msgid "Build Notes"
msgstr "生产备注"
-#: build/templates/build/detail.html:502
+#: build/templates/build/detail.html:425
msgid "Allocation Complete"
msgstr "分配完成"
-#: build/templates/build/detail.html:503
-msgid "All untracked stock items have been allocated"
-msgstr "所有未跟踪的库存项目都已分配"
+#: build/templates/build/detail.html:426
+msgid "All lines have been fully allocated"
+msgstr ""
-#: build/templates/build/index.html:18 part/templates/part/detail.html:340
+#: build/templates/build/index.html:18 part/templates/part/detail.html:319
msgid "New Build Order"
msgstr "新建生产订单"
@@ -1914,14 +1921,10 @@ msgstr "新建生产订单"
msgid "Build Order Details"
msgstr "生产订单详情"
-#: build/templates/build/sidebar.html:14
+#: build/templates/build/sidebar.html:10
msgid "Incomplete Outputs"
msgstr "未完成输出"
-#: build/templates/build/sidebar.html:17
-msgid "Completed Outputs"
-msgstr "已完成输出"
-
#: common/files.py:63
#, python-brace-format
msgid "Unsupported file format: {fmt}"
@@ -1968,16 +1971,6 @@ msgstr "已更新"
msgid "Timestamp of last update"
msgstr "最后一次更新时间"
-#: common/models.py:104 order/admin.py:17 order/models.py:234
-#: templates/InvenTree/settings/settings_staff_js.html:70
-#: templates/js/translated/purchase_order.js:1670
-#: templates/js/translated/return_order.js:306
-#: templates/js/translated/sales_order.js:794
-#: templates/js/translated/table_filters.js:24
-#: templates/project_code_data.html:6
-msgid "Project Code"
-msgstr ""
-
#: common/models.py:105
msgid "Unique project code"
msgstr ""
@@ -2261,9 +2254,9 @@ msgstr "复制类别参数模板"
msgid "Copy category parameter templates when creating a part"
msgstr "创建零件时复制类别参数模板"
-#: common/models.py:1162 part/admin.py:55 part/models.py:3560
-#: report/models.py:166 templates/js/translated/table_filters.js:109
-#: templates/js/translated/table_filters.js:680
+#: common/models.py:1162 part/admin.py:55 part/models.py:3594
+#: report/models.py:166 templates/js/translated/table_filters.js:115
+#: templates/js/translated/table_filters.js:702
msgid "Template"
msgstr "模板"
@@ -2271,10 +2264,10 @@ msgstr "模板"
msgid "Parts are templates by default"
msgstr "零件默认为模板"
-#: common/models.py:1169 part/admin.py:51 part/admin.py:283 part/models.py:996
-#: templates/js/translated/bom.js:1598
-#: templates/js/translated/table_filters.js:276
-#: templates/js/translated/table_filters.js:634
+#: common/models.py:1169 part/admin.py:51 part/admin.py:283 part/models.py:997
+#: templates/js/translated/bom.js:1618
+#: templates/js/translated/table_filters.js:282
+#: templates/js/translated/table_filters.js:656
msgid "Assembly"
msgstr "组装"
@@ -2282,8 +2275,8 @@ msgstr "组装"
msgid "Parts can be assembled from other components by default"
msgstr "默认情况下可以从其他组件组装部件"
-#: common/models.py:1176 part/admin.py:52 part/models.py:1002
-#: templates/js/translated/table_filters.js:642
+#: common/models.py:1176 part/admin.py:52 part/models.py:1003
+#: templates/js/translated/table_filters.js:664
msgid "Component"
msgstr "组件"
@@ -2291,7 +2284,7 @@ msgstr "组件"
msgid "Parts can be used as sub-components by default"
msgstr "默认情况下可以从其他组件组装部件"
-#: common/models.py:1183 part/admin.py:53 part/models.py:1013
+#: common/models.py:1183 part/admin.py:53 part/models.py:1014
msgid "Purchaseable"
msgstr "可购买"
@@ -2299,8 +2292,8 @@ msgstr "可购买"
msgid "Parts are purchaseable by default"
msgstr "商品默认可购买"
-#: common/models.py:1190 part/admin.py:54 part/models.py:1018
-#: templates/js/translated/table_filters.js:668
+#: common/models.py:1190 part/admin.py:54 part/models.py:1019
+#: templates/js/translated/table_filters.js:690
msgid "Salable"
msgstr "可销售"
@@ -2308,10 +2301,10 @@ msgstr "可销售"
msgid "Parts are salable by default"
msgstr "商品默认可销售"
-#: common/models.py:1197 part/admin.py:56 part/models.py:1008
-#: templates/js/translated/table_filters.js:117
-#: templates/js/translated/table_filters.js:193
-#: templates/js/translated/table_filters.js:684
+#: common/models.py:1197 part/admin.py:56 part/models.py:1009
+#: templates/js/translated/table_filters.js:123
+#: templates/js/translated/table_filters.js:199
+#: templates/js/translated/table_filters.js:706
msgid "Trackable"
msgstr "可追踪"
@@ -2319,10 +2312,10 @@ msgstr "可追踪"
msgid "Parts are trackable by default"
msgstr "商品默认可跟踪"
-#: common/models.py:1204 part/admin.py:57 part/models.py:1028
+#: common/models.py:1204 part/admin.py:57 part/models.py:1029
#: part/templates/part/part_base.html:156
-#: templates/js/translated/table_filters.js:113
-#: templates/js/translated/table_filters.js:688
+#: templates/js/translated/table_filters.js:119
+#: templates/js/translated/table_filters.js:710
msgid "Virtual"
msgstr "虚拟"
@@ -2354,7 +2347,7 @@ msgstr "初始库存数据"
msgid "Allow creation of initial stock when adding a new part"
msgstr ""
-#: common/models.py:1232 templates/js/translated/part.js:108
+#: common/models.py:1232 templates/js/translated/part.js:107
msgid "Initial Supplier Data"
msgstr "初始供应商数据"
@@ -2603,181 +2596,181 @@ msgid "Stock location default icon (empty means no icon)"
msgstr ""
#: common/models.py:1471
-msgid "Build Order Reference Pattern"
+msgid "Show Installed Stock Items"
msgstr ""
#: common/models.py:1472
-msgid "Required pattern for generating Build Order reference field"
+msgid "Display installed stock items in stock tables"
msgstr ""
#: common/models.py:1478
-msgid "Enable Return Orders"
+msgid "Build Order Reference Pattern"
msgstr ""
#: common/models.py:1479
-msgid "Enable return order functionality in the user interface"
+msgid "Required pattern for generating Build Order reference field"
msgstr ""
#: common/models.py:1485
-msgid "Return Order Reference Pattern"
+msgid "Enable Return Orders"
msgstr ""
#: common/models.py:1486
-msgid "Required pattern for generating Return Order reference field"
+msgid "Enable return order functionality in the user interface"
msgstr ""
#: common/models.py:1492
-msgid "Edit Completed Return Orders"
+msgid "Return Order Reference Pattern"
msgstr ""
#: common/models.py:1493
-msgid "Allow editing of return orders after they have been completed"
+msgid "Required pattern for generating Return Order reference field"
msgstr ""
#: common/models.py:1499
-msgid "Sales Order Reference Pattern"
+msgid "Edit Completed Return Orders"
msgstr ""
#: common/models.py:1500
-msgid "Required pattern for generating Sales Order reference field"
+msgid "Allow editing of return orders after they have been completed"
msgstr ""
#: common/models.py:1506
-msgid "Sales Order Default Shipment"
+msgid "Sales Order Reference Pattern"
msgstr ""
#: common/models.py:1507
-msgid "Enable creation of default shipment with sales orders"
+msgid "Required pattern for generating Sales Order reference field"
msgstr ""
#: common/models.py:1513
-msgid "Edit Completed Sales Orders"
+msgid "Sales Order Default Shipment"
msgstr ""
#: common/models.py:1514
-msgid "Allow editing of sales orders after they have been shipped or completed"
+msgid "Enable creation of default shipment with sales orders"
msgstr ""
#: common/models.py:1520
-msgid "Purchase Order Reference Pattern"
+msgid "Edit Completed Sales Orders"
msgstr ""
#: common/models.py:1521
-msgid "Required pattern for generating Purchase Order reference field"
+msgid "Allow editing of sales orders after they have been shipped or completed"
msgstr ""
#: common/models.py:1527
+msgid "Purchase Order Reference Pattern"
+msgstr ""
+
+#: common/models.py:1528
+msgid "Required pattern for generating Purchase Order reference field"
+msgstr ""
+
+#: common/models.py:1534
msgid "Edit Completed Purchase Orders"
msgstr "编辑已完成的采购订单"
-#: common/models.py:1528
+#: common/models.py:1535
msgid "Allow editing of purchase orders after they have been shipped or completed"
msgstr ""
-#: common/models.py:1535
+#: common/models.py:1542
msgid "Enable password forgot"
msgstr "启用忘记密码"
-#: common/models.py:1536
+#: common/models.py:1543
msgid "Enable password forgot function on the login pages"
msgstr "在登录页面启用忘记密码功能"
-#: common/models.py:1542
+#: common/models.py:1549
msgid "Enable registration"
msgstr "启用注册"
-#: common/models.py:1543
+#: common/models.py:1550
msgid "Enable self-registration for users on the login pages"
msgstr "在登录页面启用注册功能"
-#: common/models.py:1549
+#: common/models.py:1556
msgid "Enable SSO"
msgstr "启用 SSO"
-#: common/models.py:1550
+#: common/models.py:1557
msgid "Enable SSO on the login pages"
msgstr "在登录页面启用 SSO"
-#: common/models.py:1556
+#: common/models.py:1563
msgid "Enable SSO registration"
msgstr "启用 SSO 注册"
-#: common/models.py:1557
+#: common/models.py:1564
msgid "Enable self-registration via SSO for users on the login pages"
msgstr ""
-#: common/models.py:1563
+#: common/models.py:1570
msgid "Email required"
msgstr "需要邮箱"
-#: common/models.py:1564
+#: common/models.py:1571
msgid "Require user to supply mail on signup"
msgstr ""
-#: common/models.py:1570
+#: common/models.py:1577
msgid "Auto-fill SSO users"
msgstr "自动填充 SSO 用户"
-#: common/models.py:1571
+#: common/models.py:1578
msgid "Automatically fill out user-details from SSO account-data"
msgstr ""
-#: common/models.py:1577
+#: common/models.py:1584
msgid "Mail twice"
msgstr ""
-#: common/models.py:1578
+#: common/models.py:1585
msgid "On signup ask users twice for their mail"
msgstr ""
-#: common/models.py:1584
+#: common/models.py:1591
msgid "Password twice"
msgstr ""
-#: common/models.py:1585
+#: common/models.py:1592
msgid "On signup ask users twice for their password"
msgstr "当注册时请用户两次输入密码"
-#: common/models.py:1591
+#: common/models.py:1598
msgid "Allowed domains"
msgstr ""
-#: common/models.py:1592
+#: common/models.py:1599
msgid "Restrict signup to certain domains (comma-separated, starting with @)"
msgstr ""
-#: common/models.py:1598
+#: common/models.py:1605
msgid "Group on signup"
msgstr ""
-#: common/models.py:1599
+#: common/models.py:1606
msgid "Group to which new users are assigned on registration"
msgstr ""
-#: common/models.py:1605
+#: common/models.py:1612
msgid "Enforce MFA"
msgstr "强制启用 MFA"
-#: common/models.py:1606
+#: common/models.py:1613
msgid "Users must use multifactor security."
msgstr ""
-#: common/models.py:1612
+#: common/models.py:1619
msgid "Check plugins on startup"
msgstr "启动时检查插件"
-#: common/models.py:1613
+#: common/models.py:1620
msgid "Check that all plugins are installed on startup - enable in container environments"
msgstr ""
-#: common/models.py:1620
-msgid "Check plugin signatures"
-msgstr "检查插件签名"
-
-#: common/models.py:1621
-msgid "Check and show signatures for plugins"
-msgstr "检查并显示插件的签名"
-
#: common/models.py:1628
msgid "Enable URL integration"
msgstr "启用 URL 集成"
@@ -2850,7 +2843,7 @@ msgstr ""
msgid "Stocktake reports will be deleted after specified number of days"
msgstr ""
-#: common/models.py:1710 common/models.py:2147
+#: common/models.py:1710 common/models.py:2133
msgid "Settings key (must be unique - case insensitive"
msgstr ""
@@ -2891,528 +2884,513 @@ msgid "Show latest parts on the homepage"
msgstr "在主页上显示最近商品"
#: common/models.py:1779
-msgid "Recent Part Count"
-msgstr ""
-
-#: common/models.py:1780
-msgid "Number of recent parts to display on index page"
-msgstr ""
-
-#: common/models.py:1786
msgid "Show unvalidated BOMs"
msgstr "显示未验证的物料清单"
-#: common/models.py:1787
+#: common/models.py:1780
msgid "Show BOMs that await validation on the homepage"
msgstr "在主页上显示待验证的物料清单"
-#: common/models.py:1793
+#: common/models.py:1786
msgid "Show recent stock changes"
msgstr "显示最近的库存变化"
-#: common/models.py:1794
+#: common/models.py:1787
msgid "Show recently changed stock items on the homepage"
msgstr ""
-#: common/models.py:1800
-msgid "Recent Stock Count"
-msgstr ""
-
-#: common/models.py:1801
-msgid "Number of recent stock items to display on index page"
-msgstr ""
-
-#: common/models.py:1807
+#: common/models.py:1793
msgid "Show low stock"
msgstr "显示低库存"
-#: common/models.py:1808
+#: common/models.py:1794
msgid "Show low stock items on the homepage"
msgstr "在主页上显示低库存的项目"
-#: common/models.py:1814
+#: common/models.py:1800
msgid "Show depleted stock"
msgstr ""
-#: common/models.py:1815
+#: common/models.py:1801
msgid "Show depleted stock items on the homepage"
msgstr ""
-#: common/models.py:1821
+#: common/models.py:1807
msgid "Show needed stock"
msgstr ""
-#: common/models.py:1822
+#: common/models.py:1808
msgid "Show stock items needed for builds on the homepage"
msgstr ""
-#: common/models.py:1828
+#: common/models.py:1814
msgid "Show expired stock"
msgstr "显示过期库存"
-#: common/models.py:1829
+#: common/models.py:1815
msgid "Show expired stock items on the homepage"
msgstr "在主页上显示过期的库存项目"
-#: common/models.py:1835
+#: common/models.py:1821
msgid "Show stale stock"
msgstr ""
-#: common/models.py:1836
+#: common/models.py:1822
msgid "Show stale stock items on the homepage"
msgstr ""
-#: common/models.py:1842
+#: common/models.py:1828
msgid "Show pending builds"
msgstr ""
-#: common/models.py:1843
+#: common/models.py:1829
msgid "Show pending builds on the homepage"
msgstr ""
-#: common/models.py:1849
+#: common/models.py:1835
msgid "Show overdue builds"
msgstr "显示逾期生产"
-#: common/models.py:1850
+#: common/models.py:1836
msgid "Show overdue builds on the homepage"
msgstr "在主页上显示逾期的生产"
-#: common/models.py:1856
+#: common/models.py:1842
msgid "Show outstanding POs"
msgstr ""
-#: common/models.py:1857
+#: common/models.py:1843
msgid "Show outstanding POs on the homepage"
msgstr ""
-#: common/models.py:1863
+#: common/models.py:1849
msgid "Show overdue POs"
msgstr ""
-#: common/models.py:1864
+#: common/models.py:1850
msgid "Show overdue POs on the homepage"
msgstr ""
-#: common/models.py:1870
+#: common/models.py:1856
msgid "Show outstanding SOs"
msgstr ""
-#: common/models.py:1871
+#: common/models.py:1857
msgid "Show outstanding SOs on the homepage"
msgstr ""
-#: common/models.py:1877
+#: common/models.py:1863
msgid "Show overdue SOs"
msgstr ""
-#: common/models.py:1878
+#: common/models.py:1864
msgid "Show overdue SOs on the homepage"
msgstr ""
-#: common/models.py:1884
+#: common/models.py:1870
msgid "Show pending SO shipments"
msgstr ""
-#: common/models.py:1885
+#: common/models.py:1871
msgid "Show pending SO shipments on the homepage"
msgstr ""
-#: common/models.py:1891
+#: common/models.py:1877
msgid "Show News"
msgstr ""
-#: common/models.py:1892
+#: common/models.py:1878
msgid "Show news on the homepage"
msgstr ""
-#: common/models.py:1898
+#: common/models.py:1884
msgid "Inline label display"
msgstr "内嵌标签显示"
-#: common/models.py:1899
+#: common/models.py:1885
msgid "Display PDF labels in the browser, instead of downloading as a file"
msgstr "在浏览器中显示 PDF 标签,而不是以文件形式下载"
-#: common/models.py:1905
+#: common/models.py:1891
msgid "Default label printer"
msgstr ""
-#: common/models.py:1906
+#: common/models.py:1892
msgid "Configure which label printer should be selected by default"
msgstr ""
-#: common/models.py:1912
+#: common/models.py:1898
msgid "Inline report display"
msgstr ""
-#: common/models.py:1913
+#: common/models.py:1899
msgid "Display PDF reports in the browser, instead of downloading as a file"
msgstr "在浏览器中显示 PDF 报告,而不是以文件形式下载"
-#: common/models.py:1919
+#: common/models.py:1905
msgid "Search Parts"
msgstr "搜索部件"
-#: common/models.py:1920
+#: common/models.py:1906
msgid "Display parts in search preview window"
msgstr ""
-#: common/models.py:1926
+#: common/models.py:1912
msgid "Search Supplier Parts"
msgstr "搜索供应商部件"
-#: common/models.py:1927
+#: common/models.py:1913
msgid "Display supplier parts in search preview window"
msgstr ""
-#: common/models.py:1933
+#: common/models.py:1919
msgid "Search Manufacturer Parts"
msgstr "搜索制造商部件"
-#: common/models.py:1934
+#: common/models.py:1920
msgid "Display manufacturer parts in search preview window"
msgstr "在搜索预览窗口中显示制造商部件"
-#: common/models.py:1940
+#: common/models.py:1926
msgid "Hide Inactive Parts"
msgstr ""
-#: common/models.py:1941
+#: common/models.py:1927
msgid "Excluded inactive parts from search preview window"
msgstr ""
-#: common/models.py:1947
+#: common/models.py:1933
msgid "Search Categories"
msgstr "搜索分类"
-#: common/models.py:1948
+#: common/models.py:1934
msgid "Display part categories in search preview window"
msgstr "在搜索预览窗口中显示部件类别"
-#: common/models.py:1954
+#: common/models.py:1940
msgid "Search Stock"
msgstr "搜索库存"
-#: common/models.py:1955
+#: common/models.py:1941
msgid "Display stock items in search preview window"
msgstr "在搜索预览窗口中显示库存项目"
-#: common/models.py:1961
+#: common/models.py:1947
msgid "Hide Unavailable Stock Items"
msgstr "隐藏不可用的库存项目"
-#: common/models.py:1962
+#: common/models.py:1948
msgid "Exclude stock items which are not available from the search preview window"
msgstr "在搜索预览窗口中排除不可用的库存项目"
-#: common/models.py:1968
+#: common/models.py:1954
msgid "Search Locations"
msgstr "搜索位置"
-#: common/models.py:1969
+#: common/models.py:1955
msgid "Display stock locations in search preview window"
msgstr "在搜索预览窗口中显示库存位置"
-#: common/models.py:1975
+#: common/models.py:1961
msgid "Search Companies"
msgstr "搜索公司"
-#: common/models.py:1976
+#: common/models.py:1962
msgid "Display companies in search preview window"
msgstr "在搜索预览窗口中显示公司"
-#: common/models.py:1982
+#: common/models.py:1968
msgid "Search Build Orders"
msgstr ""
-#: common/models.py:1983
+#: common/models.py:1969
msgid "Display build orders in search preview window"
msgstr ""
-#: common/models.py:1989
+#: common/models.py:1975
msgid "Search Purchase Orders"
msgstr "搜索采购订单"
-#: common/models.py:1990
+#: common/models.py:1976
msgid "Display purchase orders in search preview window"
msgstr ""
-#: common/models.py:1996
+#: common/models.py:1982
msgid "Exclude Inactive Purchase Orders"
msgstr "排除不活动的采购订单"
-#: common/models.py:1997
+#: common/models.py:1983
msgid "Exclude inactive purchase orders from search preview window"
msgstr ""
-#: common/models.py:2003
+#: common/models.py:1989
msgid "Search Sales Orders"
msgstr ""
-#: common/models.py:2004
+#: common/models.py:1990
msgid "Display sales orders in search preview window"
msgstr ""
-#: common/models.py:2010
+#: common/models.py:1996
msgid "Exclude Inactive Sales Orders"
msgstr ""
-#: common/models.py:2011
+#: common/models.py:1997
msgid "Exclude inactive sales orders from search preview window"
msgstr ""
-#: common/models.py:2017
+#: common/models.py:2003
msgid "Search Return Orders"
msgstr ""
-#: common/models.py:2018
+#: common/models.py:2004
msgid "Display return orders in search preview window"
msgstr ""
-#: common/models.py:2024
+#: common/models.py:2010
msgid "Exclude Inactive Return Orders"
msgstr ""
-#: common/models.py:2025
+#: common/models.py:2011
msgid "Exclude inactive return orders from search preview window"
msgstr ""
-#: common/models.py:2031
+#: common/models.py:2017
msgid "Search Preview Results"
msgstr "搜索预览结果"
-#: common/models.py:2032
+#: common/models.py:2018
msgid "Number of results to show in each section of the search preview window"
msgstr ""
-#: common/models.py:2038
+#: common/models.py:2024
msgid "Regex Search"
msgstr ""
-#: common/models.py:2039
+#: common/models.py:2025
msgid "Enable regular expressions in search queries"
msgstr ""
-#: common/models.py:2045
+#: common/models.py:2031
msgid "Whole Word Search"
msgstr ""
-#: common/models.py:2046
+#: common/models.py:2032
msgid "Search queries return results for whole word matches"
msgstr ""
-#: common/models.py:2052
+#: common/models.py:2038
msgid "Show Quantity in Forms"
msgstr "在表格中显示数量"
-#: common/models.py:2053
+#: common/models.py:2039
msgid "Display available part quantity in some forms"
msgstr "在某些表格中显示可用的商品数量"
-#: common/models.py:2059
+#: common/models.py:2045
msgid "Escape Key Closes Forms"
msgstr ""
-#: common/models.py:2060
+#: common/models.py:2046
msgid "Use the escape key to close modal forms"
msgstr ""
-#: common/models.py:2066
+#: common/models.py:2052
msgid "Fixed Navbar"
msgstr "固定导航栏"
-#: common/models.py:2067
+#: common/models.py:2053
msgid "The navbar position is fixed to the top of the screen"
msgstr ""
-#: common/models.py:2073
+#: common/models.py:2059
msgid "Date Format"
msgstr "日期格式"
-#: common/models.py:2074
+#: common/models.py:2060
msgid "Preferred format for displaying dates"
msgstr ""
-#: common/models.py:2088 part/templates/part/detail.html:41
+#: common/models.py:2074 part/templates/part/detail.html:41
msgid "Part Scheduling"
msgstr ""
-#: common/models.py:2089
+#: common/models.py:2075
msgid "Display part scheduling information"
msgstr ""
-#: common/models.py:2095 part/templates/part/detail.html:62
+#: common/models.py:2081 part/templates/part/detail.html:62
msgid "Part Stocktake"
msgstr ""
-#: common/models.py:2096
+#: common/models.py:2082
msgid "Display part stocktake information (if stocktake functionality is enabled)"
msgstr ""
-#: common/models.py:2102
+#: common/models.py:2088
msgid "Table String Length"
msgstr ""
-#: common/models.py:2103
+#: common/models.py:2089
msgid "Maximimum length limit for strings displayed in table views"
msgstr ""
-#: common/models.py:2112
+#: common/models.py:2098
msgid "Default part label template"
msgstr ""
-#: common/models.py:2113
+#: common/models.py:2099
msgid "The part label template to be automatically selected"
msgstr ""
-#: common/models.py:2121
+#: common/models.py:2107
msgid "Default stock item template"
msgstr ""
-#: common/models.py:2122
+#: common/models.py:2108
msgid "The stock item label template to be automatically selected"
msgstr ""
-#: common/models.py:2130
+#: common/models.py:2116
msgid "Default stock location label template"
msgstr ""
-#: common/models.py:2131
+#: common/models.py:2117
msgid "The stock location label template to be automatically selected"
msgstr ""
-#: common/models.py:2177
+#: common/models.py:2163
msgid "Price break quantity"
msgstr ""
-#: common/models.py:2184 company/serializers.py:434 order/admin.py:43
-#: order/models.py:1132 order/models.py:1939
-#: templates/js/translated/company.js:1433 templates/js/translated/part.js:1856
+#: common/models.py:2170 company/serializers.py:491 order/admin.py:43
+#: order/models.py:1145 order/models.py:1952
+#: templates/js/translated/company.js:1854 templates/js/translated/part.js:1855
#: templates/js/translated/pricing.js:621
-#: templates/js/translated/return_order.js:725
+#: templates/js/translated/return_order.js:737
msgid "Price"
msgstr "价格"
-#: common/models.py:2185
+#: common/models.py:2171
msgid "Unit price at specified quantity"
msgstr ""
-#: common/models.py:2345 common/models.py:2523
+#: common/models.py:2331 common/models.py:2509
msgid "Endpoint"
msgstr ""
-#: common/models.py:2346
+#: common/models.py:2332
msgid "Endpoint at which this webhook is received"
msgstr ""
-#: common/models.py:2355
+#: common/models.py:2341
msgid "Name for this webhook"
msgstr ""
-#: common/models.py:2360 part/admin.py:50 part/models.py:1023
-#: plugin/models.py:47 templates/js/translated/table_filters.js:105
-#: templates/js/translated/table_filters.js:189
-#: templates/js/translated/table_filters.js:434
-#: templates/js/translated/table_filters.js:450
-#: templates/js/translated/table_filters.js:629
+#: common/models.py:2346 part/admin.py:50 part/models.py:1024
+#: plugin/models.py:48 templates/js/translated/table_filters.js:111
+#: templates/js/translated/table_filters.js:195
+#: templates/js/translated/table_filters.js:440
+#: templates/js/translated/table_filters.js:456
+#: templates/js/translated/table_filters.js:651
msgid "Active"
msgstr ""
-#: common/models.py:2361
+#: common/models.py:2347
msgid "Is this webhook active"
msgstr ""
-#: common/models.py:2375
+#: common/models.py:2361
msgid "Token"
msgstr "令牌"
-#: common/models.py:2376
+#: common/models.py:2362
msgid "Token for access"
msgstr ""
-#: common/models.py:2383
+#: common/models.py:2369
msgid "Secret"
msgstr ""
-#: common/models.py:2384
+#: common/models.py:2370
msgid "Shared secret for HMAC"
msgstr ""
-#: common/models.py:2490
+#: common/models.py:2476
msgid "Message ID"
msgstr ""
-#: common/models.py:2491
+#: common/models.py:2477
msgid "Unique identifier for this message"
msgstr "该消息的唯一标识符"
-#: common/models.py:2499
+#: common/models.py:2485
msgid "Host"
msgstr ""
-#: common/models.py:2500
+#: common/models.py:2486
msgid "Host from which this message was received"
msgstr ""
-#: common/models.py:2507
+#: common/models.py:2493
msgid "Header"
msgstr ""
-#: common/models.py:2508
+#: common/models.py:2494
msgid "Header of this message"
msgstr ""
-#: common/models.py:2514
+#: common/models.py:2500
msgid "Body"
msgstr ""
-#: common/models.py:2515
+#: common/models.py:2501
msgid "Body of this message"
msgstr ""
-#: common/models.py:2524
+#: common/models.py:2510
msgid "Endpoint on which this message was received"
msgstr ""
-#: common/models.py:2529
+#: common/models.py:2515
msgid "Worked on"
msgstr ""
-#: common/models.py:2530
+#: common/models.py:2516
msgid "Was the work on this message finished?"
msgstr ""
-#: common/models.py:2684
+#: common/models.py:2670
msgid "Id"
msgstr ""
-#: common/models.py:2690 templates/js/translated/news.js:44
+#: common/models.py:2676 templates/js/translated/company.js:996
+#: templates/js/translated/news.js:44
msgid "Title"
msgstr "标题"
-#: common/models.py:2700 templates/js/translated/news.js:60
+#: common/models.py:2686 templates/js/translated/news.js:60
msgid "Published"
msgstr ""
-#: common/models.py:2705 templates/InvenTree/settings/plugin_settings.html:32
+#: common/models.py:2691 templates/InvenTree/settings/plugin_settings.html:32
#: templates/js/translated/news.js:56 templates/js/translated/plugin.js:106
msgid "Author"
msgstr "作者"
-#: common/models.py:2710 templates/js/translated/news.js:52
+#: common/models.py:2696 templates/js/translated/news.js:52
msgid "Summary"
msgstr "概述"
-#: common/models.py:2715
+#: common/models.py:2701
msgid "Read"
msgstr ""
-#: common/models.py:2716
+#: common/models.py:2702
msgid "Was this news item read?"
msgstr ""
-#: common/models.py:2736 company/models.py:143 part/models.py:914
+#: common/models.py:2722 company/models.py:139 part/models.py:915
#: report/templates/report/inventree_bill_of_materials_report.html:126
#: report/templates/report/inventree_bill_of_materials_report.html:148
#: report/templates/report/inventree_return_order_report_base.html:35
@@ -3422,7 +3400,7 @@ msgstr ""
msgid "Image"
msgstr "图片"
-#: common/models.py:2737
+#: common/models.py:2723
msgid "Image file"
msgstr ""
@@ -3499,7 +3477,7 @@ msgstr "公司简介"
#: company/models.py:113 company/templates/company/company_base.html:101
#: templates/InvenTree/settings/plugin_settings.html:54
-#: templates/js/translated/company.js:514
+#: templates/js/translated/company.js:521
msgid "Website"
msgstr "网站"
@@ -3507,303 +3485,387 @@ msgstr "网站"
msgid "Company website URL"
msgstr "公司网站"
-#: company/models.py:118 company/templates/company/company_base.html:119
-msgid "Address"
-msgstr "地址"
-
-#: company/models.py:119
-msgid "Company address"
-msgstr "公司地址"
-
-#: company/models.py:122
+#: company/models.py:118
msgid "Phone number"
msgstr "电话号码"
-#: company/models.py:123
+#: company/models.py:119
msgid "Contact phone number"
msgstr "联系电话"
-#: company/models.py:126 company/templates/company/company_base.html:133
+#: company/models.py:122 company/templates/company/company_base.html:133
#: templates/InvenTree/settings/user.html:49
-#: templates/js/translated/company.js:659
+#: templates/js/translated/company.js:666
msgid "Email"
msgstr "电子邮件"
-#: company/models.py:126
+#: company/models.py:122
msgid "Contact email address"
msgstr "联系人电子邮件"
-#: company/models.py:129 company/templates/company/company_base.html:140
-#: order/models.py:266 order/templates/order/order_base.html:207
+#: company/models.py:125 company/templates/company/company_base.html:140
+#: order/models.py:270 order/templates/order/order_base.html:203
#: order/templates/order/return_order_base.html:175
#: order/templates/order/sales_order_base.html:215
msgid "Contact"
msgstr "联系人"
-#: company/models.py:130
+#: company/models.py:126
msgid "Point of contact"
msgstr ""
-#: company/models.py:132
+#: company/models.py:128
msgid "Link to external company information"
msgstr "链接到外部公司信息"
-#: company/models.py:146
+#: company/models.py:142
msgid "is customer"
msgstr "是客户"
-#: company/models.py:146
+#: company/models.py:142
msgid "Do you sell items to this company?"
msgstr "您是否向该公司出售商品?"
-#: company/models.py:148
+#: company/models.py:144
msgid "is supplier"
msgstr "是供应商"
-#: company/models.py:148
+#: company/models.py:144
msgid "Do you purchase items from this company?"
msgstr "您是否从该公司采购商品?"
-#: company/models.py:150
+#: company/models.py:146
msgid "is manufacturer"
msgstr "是制造商"
-#: company/models.py:150
+#: company/models.py:146
msgid "Does this company manufacture parts?"
msgstr "该公司制造商品吗?"
-#: company/models.py:157
+#: company/models.py:153
msgid "Default currency used for this company"
msgstr "该公司使用的默认货币"
-#: company/models.py:223 company/templates/company/company_base.html:8
+#: company/models.py:235 company/models.py:328
+#: company/templates/company/company_base.html:8
#: company/templates/company/company_base.html:12
-#: templates/InvenTree/search.html:178 templates/js/translated/company.js:487
+#: templates/InvenTree/search.html:178 templates/js/translated/company.js:494
msgid "Company"
msgstr "公司"
-#: company/models.py:278 company/models.py:553 stock/models.py:675
-#: stock/serializers.py:155 stock/templates/stock/item_base.html:143
-#: templates/js/translated/bom.js:621
+#: company/models.py:324
+msgid "Company already has a primary address"
+msgstr ""
+
+#: company/models.py:329
+msgid "Select company"
+msgstr ""
+
+#: company/models.py:332
+msgid "Address title"
+msgstr ""
+
+#: company/models.py:333
+msgid "Title describing the address entry"
+msgstr ""
+
+#: company/models.py:337
+msgid "Primary address"
+msgstr ""
+
+#: company/models.py:338
+msgid "Set as primary address"
+msgstr ""
+
+#: company/models.py:341 templates/js/translated/company.js:941
+#: templates/js/translated/company.js:1002
+msgid "Line 1"
+msgstr ""
+
+#: company/models.py:342
+msgid "Address line 1"
+msgstr ""
+
+#: company/models.py:346 templates/js/translated/company.js:942
+#: templates/js/translated/company.js:1008
+msgid "Line 2"
+msgstr ""
+
+#: company/models.py:347
+msgid "Address line 2"
+msgstr ""
+
+#: company/models.py:351 company/models.py:352
+#: templates/js/translated/company.js:1014
+msgid "Postal code"
+msgstr ""
+
+#: company/models.py:356
+msgid "City/Region"
+msgstr ""
+
+#: company/models.py:357
+msgid "Postal code city/region"
+msgstr ""
+
+#: company/models.py:361
+msgid "State/Province"
+msgstr ""
+
+#: company/models.py:362
+msgid "State or province"
+msgstr ""
+
+#: company/models.py:366 templates/js/translated/company.js:1032
+msgid "Country"
+msgstr ""
+
+#: company/models.py:367
+msgid "Address country"
+msgstr ""
+
+#: company/models.py:371
+msgid "Courier shipping notes"
+msgstr ""
+
+#: company/models.py:372
+msgid "Notes for shipping courier"
+msgstr ""
+
+#: company/models.py:376
+msgid "Internal shipping notes"
+msgstr ""
+
+#: company/models.py:377
+msgid "Shipping notes for internal use"
+msgstr ""
+
+#: company/models.py:382
+msgid "Link to address information (external)"
+msgstr ""
+
+#: company/models.py:427 company/models.py:702 stock/models.py:675
+#: stock/serializers.py:204 stock/templates/stock/item_base.html:143
+#: templates/js/translated/bom.js:622
msgid "Base Part"
msgstr ""
-#: company/models.py:282 company/models.py:557
+#: company/models.py:431 company/models.py:706
msgid "Select part"
msgstr "选择商品"
-#: company/models.py:293 company/templates/company/company_base.html:77
+#: company/models.py:442 company/templates/company/company_base.html:77
#: company/templates/company/manufacturer_part.html:90
-#: company/templates/company/supplier_part.html:146 part/serializers.py:354
+#: company/templates/company/supplier_part.html:146 part/serializers.py:404
#: stock/templates/stock/item_base.html:208
-#: templates/js/translated/company.js:498
-#: templates/js/translated/company.js:824
-#: templates/js/translated/company.js:954
-#: templates/js/translated/company.js:1221
-#: templates/js/translated/table_filters.js:709
+#: templates/js/translated/company.js:505
+#: templates/js/translated/company.js:1149
+#: templates/js/translated/company.js:1327
+#: templates/js/translated/company.js:1642
+#: templates/js/translated/table_filters.js:731
msgid "Manufacturer"
msgstr "制造商"
-#: company/models.py:294
+#: company/models.py:443
msgid "Select manufacturer"
msgstr "选择制造商"
-#: company/models.py:300 company/templates/company/manufacturer_part.html:101
-#: company/templates/company/supplier_part.html:154 part/serializers.py:360
-#: templates/js/translated/company.js:340
-#: templates/js/translated/company.js:823
-#: templates/js/translated/company.js:970
-#: templates/js/translated/company.js:1240 templates/js/translated/part.js:1773
-#: templates/js/translated/purchase_order.js:1814
-#: templates/js/translated/purchase_order.js:2021
+#: company/models.py:449 company/templates/company/manufacturer_part.html:101
+#: company/templates/company/supplier_part.html:154 part/serializers.py:410
+#: templates/js/translated/company.js:350
+#: templates/js/translated/company.js:1148
+#: templates/js/translated/company.js:1343
+#: templates/js/translated/company.js:1661 templates/js/translated/part.js:1772
+#: templates/js/translated/purchase_order.js:1829
+#: templates/js/translated/purchase_order.js:2031
msgid "MPN"
msgstr ""
-#: company/models.py:301
+#: company/models.py:450
msgid "Manufacturer Part Number"
msgstr "制造商商品编号"
-#: company/models.py:307
+#: company/models.py:456
msgid "URL for external manufacturer part link"
msgstr ""
-#: company/models.py:313
+#: company/models.py:462
msgid "Manufacturer part description"
msgstr "制造商商品描述"
-#: company/models.py:360 company/models.py:384 company/models.py:578
+#: company/models.py:509 company/models.py:533 company/models.py:727
#: company/templates/company/manufacturer_part.html:7
#: company/templates/company/manufacturer_part.html:24
#: stock/templates/stock/item_base.html:218
msgid "Manufacturer Part"
msgstr "制造商商品"
-#: company/models.py:391
+#: company/models.py:540
msgid "Parameter name"
msgstr "参数名称"
-#: company/models.py:397
+#: company/models.py:546
#: report/templates/report/inventree_test_report_base.html:104
-#: stock/models.py:2255 templates/js/translated/company.js:872
-#: templates/js/translated/company.js:1077 templates/js/translated/part.js:1465
-#: templates/js/translated/stock.js:1446
+#: stock/models.py:2255 templates/js/translated/company.js:1197
+#: templates/js/translated/company.js:1450 templates/js/translated/part.js:1464
+#: templates/js/translated/stock.js:1445
msgid "Value"
msgstr "数值"
-#: company/models.py:398
+#: company/models.py:547
msgid "Parameter value"
msgstr "参数值"
-#: company/models.py:404 company/templates/company/supplier_part.html:169
-#: part/admin.py:40 part/models.py:987 part/models.py:3407
+#: company/models.py:553 company/templates/company/supplier_part.html:169
+#: part/admin.py:40 part/models.py:988 part/models.py:3441
#: part/templates/part/part_base.html:286
-#: templates/js/translated/company.js:1083 templates/js/translated/part.js:1484
-#: templates/js/translated/part.js:1588 templates/js/translated/part.js:2262
+#: templates/js/translated/company.js:1456 templates/js/translated/part.js:1483
+#: templates/js/translated/part.js:1587 templates/js/translated/part.js:2338
msgid "Units"
msgstr "单位"
-#: company/models.py:405
+#: company/models.py:554
msgid "Parameter units"
msgstr "参数单位"
-#: company/models.py:498
+#: company/models.py:647
msgid "Pack units must be compatible with the base part units"
msgstr ""
-#: company/models.py:504
+#: company/models.py:653
msgid "Pack units must be greater than zero"
msgstr ""
-#: company/models.py:520
+#: company/models.py:669
msgid "Linked manufacturer part must reference the same base part"
msgstr ""
-#: company/models.py:564 company/templates/company/company_base.html:82
-#: company/templates/company/supplier_part.html:130 order/models.py:382
-#: order/templates/order/order_base.html:140 part/bom.py:285 part/bom.py:313
-#: part/serializers.py:343 stock/templates/stock/item_base.html:225
+#: company/models.py:713 company/templates/company/company_base.html:82
+#: company/templates/company/supplier_part.html:130 order/models.py:395
+#: order/templates/order/order_base.html:136 part/bom.py:285 part/bom.py:313
+#: part/serializers.py:393 stock/templates/stock/item_base.html:225
#: templates/email/overdue_purchase_order.html:16
-#: templates/js/translated/company.js:339
-#: templates/js/translated/company.js:502
-#: templates/js/translated/company.js:1194 templates/js/translated/part.js:1741
+#: templates/js/translated/company.js:349
+#: templates/js/translated/company.js:509
+#: templates/js/translated/company.js:1615 templates/js/translated/part.js:1740
#: templates/js/translated/pricing.js:498
-#: templates/js/translated/purchase_order.js:1653
-#: templates/js/translated/table_filters.js:713
+#: templates/js/translated/purchase_order.js:1668
+#: templates/js/translated/table_filters.js:735
msgid "Supplier"
msgstr "供应商"
-#: company/models.py:565
+#: company/models.py:714
msgid "Select supplier"
msgstr "选择供应商"
-#: company/models.py:570 company/templates/company/supplier_part.html:140
-#: part/bom.py:286 part/bom.py:314 part/serializers.py:349
-#: templates/js/translated/company.js:338 templates/js/translated/part.js:1759
+#: company/models.py:719 company/templates/company/supplier_part.html:140
+#: part/bom.py:286 part/bom.py:314 part/serializers.py:399
+#: templates/js/translated/company.js:348 templates/js/translated/part.js:1758
#: templates/js/translated/pricing.js:510
-#: templates/js/translated/purchase_order.js:1813
-#: templates/js/translated/purchase_order.js:1996
+#: templates/js/translated/purchase_order.js:1828
+#: templates/js/translated/purchase_order.js:2006
msgid "SKU"
msgstr ""
-#: company/models.py:571 part/serializers.py:349
+#: company/models.py:720 part/serializers.py:399
msgid "Supplier stock keeping unit"
msgstr ""
-#: company/models.py:579
+#: company/models.py:728
msgid "Select manufacturer part"
msgstr "选择制造商商品"
-#: company/models.py:585
+#: company/models.py:734
msgid "URL for external supplier part link"
msgstr "外部供货商商品链接URL"
-#: company/models.py:591
+#: company/models.py:740
msgid "Supplier part description"
msgstr "供应商商品描述"
-#: company/models.py:596 company/templates/company/supplier_part.html:188
-#: part/admin.py:279 part/models.py:3801 part/templates/part/upload_bom.html:59
+#: company/models.py:745 company/templates/company/supplier_part.html:188
+#: part/admin.py:279 part/models.py:3845 part/templates/part/upload_bom.html:59
#: report/templates/report/inventree_bill_of_materials_report.html:140
#: report/templates/report/inventree_po_report_base.html:32
#: report/templates/report/inventree_return_order_report_base.html:27
#: report/templates/report/inventree_so_report_base.html:32
-#: stock/serializers.py:418
+#: stock/serializers.py:484
msgid "Note"
msgstr "备注"
-#: company/models.py:600 part/models.py:1919
+#: company/models.py:749 part/models.py:1921
msgid "base cost"
msgstr ""
-#: company/models.py:600 part/models.py:1919
+#: company/models.py:749 part/models.py:1921
msgid "Minimum charge (e.g. stocking fee)"
msgstr "最低收费(例如库存费)"
-#: company/models.py:602 company/templates/company/supplier_part.html:161
+#: company/models.py:751 company/templates/company/supplier_part.html:161
#: stock/admin.py:119 stock/models.py:701
#: stock/templates/stock/item_base.html:241
-#: templates/js/translated/company.js:1256
-#: templates/js/translated/stock.js:2160
+#: templates/js/translated/company.js:1677
+#: templates/js/translated/stock.js:2317
msgid "Packaging"
msgstr "打包"
-#: company/models.py:602
+#: company/models.py:751
msgid "Part packaging"
msgstr "商品打包"
-#: company/models.py:606 templates/js/translated/company.js:1261
-#: templates/js/translated/part.js:1793 templates/js/translated/part.js:1848
-#: templates/js/translated/purchase_order.js:300
-#: templates/js/translated/purchase_order.js:827
-#: templates/js/translated/purchase_order.js:1073
-#: templates/js/translated/purchase_order.js:2052
-#: templates/js/translated/purchase_order.js:2069
+#: company/models.py:755 templates/js/translated/company.js:1682
+#: templates/js/translated/part.js:1792 templates/js/translated/part.js:1847
+#: templates/js/translated/purchase_order.js:311
+#: templates/js/translated/purchase_order.js:842
+#: templates/js/translated/purchase_order.js:1088
+#: templates/js/translated/purchase_order.js:2062
+#: templates/js/translated/purchase_order.js:2079
msgid "Pack Quantity"
msgstr "包装数量"
-#: company/models.py:607
+#: company/models.py:756
msgid "Total quantity supplied in a single pack. Leave empty for single items."
msgstr ""
-#: company/models.py:624 part/models.py:1921
+#: company/models.py:773 part/models.py:1923
msgid "multiple"
msgstr ""
-#: company/models.py:624
+#: company/models.py:773
msgid "Order multiple"
msgstr "订购多个"
-#: company/models.py:632 company/templates/company/supplier_part.html:115
+#: company/models.py:781 company/templates/company/supplier_part.html:115
#: templates/email/build_order_required_stock.html:19
#: templates/email/low_stock_notification.html:17
-#: templates/js/translated/bom.js:1127 templates/js/translated/build.js:2136
-#: templates/js/translated/build.js:3045
-#: templates/js/translated/model_renderers.js:205
-#: templates/js/translated/part.js:670 templates/js/translated/part.js:672
-#: templates/js/translated/part.js:677
-#: templates/js/translated/table_filters.js:286
-#: templates/js/translated/table_filters.js:492
+#: templates/js/translated/bom.js:1145 templates/js/translated/build.js:2490
+#: templates/js/translated/index.js:118
+#: templates/js/translated/model_renderers.js:219
+#: templates/js/translated/part.js:669 templates/js/translated/part.js:671
+#: templates/js/translated/part.js:676
+#: templates/js/translated/table_filters.js:292
+#: templates/js/translated/table_filters.js:510
msgid "Available"
msgstr "空闲"
-#: company/models.py:633
+#: company/models.py:782
msgid "Quantity available from supplier"
msgstr "供应商的存货数量"
-#: company/models.py:637
+#: company/models.py:786
msgid "Availability Updated"
msgstr ""
-#: company/models.py:638
+#: company/models.py:787
msgid "Date of last update of availability data"
msgstr ""
-#: company/serializers.py:99
+#: company/serializers.py:156
msgid "Default currency used for this supplier"
msgstr "该公司使用的默认货币"
#: company/templates/company/company_base.html:22
-#: templates/js/translated/purchase_order.js:228
+#: templates/js/translated/purchase_order.js:239
msgid "Create Purchase Order"
msgstr "创建采购订单"
@@ -3816,7 +3878,7 @@ msgid "Edit company information"
msgstr "编辑公司信息"
#: company/templates/company/company_base.html:34
-#: templates/js/translated/company.js:436
+#: templates/js/translated/company.js:443
msgid "Edit Company"
msgstr "编辑公司信息"
@@ -3856,17 +3918,17 @@ msgstr "从 URL 下载图片"
msgid "Delete image"
msgstr "删除图片"
-#: company/templates/company/company_base.html:87 order/models.py:779
-#: order/models.py:1738 order/templates/order/return_order_base.html:132
+#: company/templates/company/company_base.html:87 order/models.py:792
+#: order/models.py:1751 order/templates/order/return_order_base.html:132
#: order/templates/order/sales_order_base.html:145 stock/models.py:720
-#: stock/models.py:721 stock/serializers.py:825
+#: stock/models.py:721 stock/serializers.py:942
#: stock/templates/stock/item_base.html:401
#: templates/email/overdue_sales_order.html:16
-#: templates/js/translated/company.js:494
-#: templates/js/translated/return_order.js:284
-#: templates/js/translated/sales_order.js:772
-#: templates/js/translated/stock.js:2696
-#: templates/js/translated/table_filters.js:717
+#: templates/js/translated/company.js:501
+#: templates/js/translated/return_order.js:296
+#: templates/js/translated/sales_order.js:784
+#: templates/js/translated/stock.js:2827
+#: templates/js/translated/table_filters.js:739
msgid "Customer"
msgstr "客户"
@@ -3874,6 +3936,13 @@ msgstr "客户"
msgid "Uses default currency"
msgstr "使用默认货币"
+#: company/templates/company/company_base.html:119 order/models.py:279
+#: order/templates/order/order_base.html:210
+#: order/templates/order/return_order_base.html:182
+#: order/templates/order/sales_order_base.html:222
+msgid "Address"
+msgstr "地址"
+
#: company/templates/company/company_base.html:126
msgid "Phone"
msgstr "电话"
@@ -3906,7 +3975,7 @@ msgstr "下载图片"
#: company/templates/company/detail.html:15
#: company/templates/company/manufacturer_part_sidebar.html:7
-#: templates/InvenTree/search.html:120 templates/js/translated/search.js:189
+#: templates/InvenTree/search.html:120 templates/js/translated/search.js:147
msgid "Supplier Parts"
msgstr "供应商商品"
@@ -3916,129 +3985,121 @@ msgstr "创建新的供应商商品"
#: company/templates/company/detail.html:20
#: company/templates/company/manufacturer_part.html:123
-#: part/templates/part/detail.html:381
+#: part/templates/part/detail.html:356
msgid "New Supplier Part"
msgstr "新建供应商商品"
-#: company/templates/company/detail.html:37
-#: company/templates/company/detail.html:85
-#: part/templates/part/category.html:183
-msgid "Order parts"
-msgstr "订购商品"
-
-#: company/templates/company/detail.html:42
-#: company/templates/company/detail.html:90
-msgid "Delete parts"
-msgstr "删除商品"
-
-#: company/templates/company/detail.html:43
-#: company/templates/company/detail.html:91
-msgid "Delete Parts"
-msgstr "删除商品"
-
-#: company/templates/company/detail.html:62 templates/InvenTree/search.html:105
-#: templates/js/translated/search.js:193
+#: company/templates/company/detail.html:41 templates/InvenTree/search.html:105
+#: templates/js/translated/search.js:151
msgid "Manufacturer Parts"
msgstr "制造商商品"
-#: company/templates/company/detail.html:66
+#: company/templates/company/detail.html:45
msgid "Create new manufacturer part"
msgstr "新建制造商商品"
-#: company/templates/company/detail.html:67 part/templates/part/detail.html:411
+#: company/templates/company/detail.html:46 part/templates/part/detail.html:376
msgid "New Manufacturer Part"
msgstr "新建制造商商品"
-#: company/templates/company/detail.html:108
+#: company/templates/company/detail.html:65
msgid "Supplier Stock"
msgstr "供货商库存"
-#: company/templates/company/detail.html:118
+#: company/templates/company/detail.html:75
#: company/templates/company/sidebar.html:12
#: company/templates/company/supplier_part_sidebar.html:7
#: 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:108 part/templates/part/part_sidebar.html:35
-#: templates/InvenTree/index.html:275 templates/InvenTree/search.html:199
+#: part/templates/part/detail.html:106 part/templates/part/part_sidebar.html:35
+#: templates/InvenTree/index.html:227 templates/InvenTree/search.html:199
#: templates/InvenTree/settings/sidebar.html:55
-#: templates/js/translated/search.js:247 templates/navbar.html:50
+#: templates/js/translated/search.js:205 templates/navbar.html:50
#: users/models.py:43
msgid "Purchase Orders"
msgstr "采购订单"
-#: company/templates/company/detail.html:122
+#: company/templates/company/detail.html:79
#: order/templates/order/purchase_orders.html:17
msgid "Create new purchase order"
msgstr "新建采购订单"
-#: company/templates/company/detail.html:123
+#: company/templates/company/detail.html:80
#: order/templates/order/purchase_orders.html:18
msgid "New Purchase Order"
msgstr "新建采购订单"
-#: company/templates/company/detail.html:146
+#: company/templates/company/detail.html:101
#: company/templates/company/sidebar.html:21
#: 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:131 part/templates/part/part_sidebar.html:39
-#: templates/InvenTree/index.html:307 templates/InvenTree/search.html:219
+#: part/templates/part/detail.html:127 part/templates/part/part_sidebar.html:39
+#: templates/InvenTree/index.html:259 templates/InvenTree/search.html:219
#: templates/InvenTree/settings/sidebar.html:57
-#: templates/js/translated/search.js:261 templates/navbar.html:62
+#: templates/js/translated/search.js:219 templates/navbar.html:62
#: users/models.py:44
msgid "Sales Orders"
msgstr "销售订单"
-#: company/templates/company/detail.html:150
+#: company/templates/company/detail.html:105
#: order/templates/order/sales_orders.html:20
msgid "Create new sales order"
msgstr "新建销售订单"
-#: company/templates/company/detail.html:151
+#: company/templates/company/detail.html:106
#: order/templates/order/sales_orders.html:21
msgid "New Sales Order"
msgstr "新建销售订单"
-#: company/templates/company/detail.html:173
-#: templates/js/translated/build.js:1976
+#: company/templates/company/detail.html:126
msgid "Assigned Stock"
msgstr ""
-#: company/templates/company/detail.html:191
+#: company/templates/company/detail.html:142
#: company/templates/company/sidebar.html:29
#: order/templates/order/return_order_base.html:13
#: order/templates/order/return_orders.html:8
#: order/templates/order/return_orders.html:15
#: templates/InvenTree/settings/sidebar.html:59
-#: templates/js/translated/search.js:274 templates/navbar.html:65
+#: templates/js/translated/search.js:232 templates/navbar.html:65
#: users/models.py:45
msgid "Return Orders"
msgstr ""
-#: company/templates/company/detail.html:195
+#: company/templates/company/detail.html:146
#: order/templates/order/return_orders.html:20
msgid "Create new return order"
msgstr ""
-#: company/templates/company/detail.html:196
+#: company/templates/company/detail.html:147
#: order/templates/order/return_orders.html:21
msgid "New Return Order"
msgstr ""
-#: company/templates/company/detail.html:221
+#: company/templates/company/detail.html:168
msgid "Company Notes"
msgstr "公司备注"
-#: company/templates/company/detail.html:236
+#: company/templates/company/detail.html:183
msgid "Company Contacts"
msgstr ""
-#: company/templates/company/detail.html:240
-#: company/templates/company/detail.html:241
+#: company/templates/company/detail.html:187
+#: company/templates/company/detail.html:188
msgid "Add Contact"
msgstr ""
+#: company/templates/company/detail.html:206
+msgid "Company addresses"
+msgstr ""
+
+#: company/templates/company/detail.html:210
+#: company/templates/company/detail.html:211
+msgid "Add Address"
+msgstr ""
+
#: company/templates/company/index.html:8
msgid "Supplier List"
msgstr "供应商列表"
@@ -4050,17 +4111,17 @@ msgstr "制造商"
#: company/templates/company/manufacturer_part.html:35
#: company/templates/company/supplier_part.html:228
-#: part/templates/part/detail.html:111 part/templates/part/part_base.html:85
+#: part/templates/part/detail.html:109 part/templates/part/part_base.html:85
msgid "Order part"
msgstr "订购商品"
#: company/templates/company/manufacturer_part.html:39
-#: templates/js/translated/company.js:1001
+#: templates/js/translated/company.js:1374
msgid "Edit manufacturer part"
msgstr "编辑制造商商品"
#: company/templates/company/manufacturer_part.html:43
-#: templates/js/translated/company.js:1002
+#: templates/js/translated/company.js:1375
msgid "Delete manufacturer part"
msgstr "删除生产商商品"
@@ -4080,40 +4141,22 @@ msgstr ""
msgid "Suppliers"
msgstr "供应商"
-#: company/templates/company/manufacturer_part.html:136
-#: part/templates/part/detail.html:392
-msgid "Delete supplier parts"
-msgstr "删除供应商商品"
-
-#: company/templates/company/manufacturer_part.html:136
-#: company/templates/company/manufacturer_part.html:183
-#: part/templates/part/detail.html:393 part/templates/part/detail.html:423
-#: templates/js/translated/forms.js:506 templates/js/translated/helpers.js:105
-#: templates/js/translated/part.js:370 templates/js/translated/pricing.js:629
-#: templates/js/translated/stock.js:216 users/models.py:247
-msgid "Delete"
-msgstr "删除"
-
-#: company/templates/company/manufacturer_part.html:166
+#: company/templates/company/manufacturer_part.html:156
#: company/templates/company/manufacturer_part_sidebar.html:5
#: part/templates/part/category_sidebar.html:20
-#: part/templates/part/detail.html:208 part/templates/part/part_sidebar.html:8
+#: part/templates/part/detail.html:195 part/templates/part/part_sidebar.html:8
msgid "Parameters"
msgstr "参数"
-#: company/templates/company/manufacturer_part.html:170
-#: part/templates/part/detail.html:213
+#: company/templates/company/manufacturer_part.html:160
+#: part/templates/part/detail.html:200
#: templates/InvenTree/settings/category.html:12
#: templates/InvenTree/settings/part_parameters.html:12
msgid "New Parameter"
msgstr "新建参数"
-#: company/templates/company/manufacturer_part.html:183
-msgid "Delete parameters"
-msgstr "删除参数"
-
-#: company/templates/company/manufacturer_part.html:226
-#: templates/js/translated/part.js:1396
+#: company/templates/company/manufacturer_part.html:206
+#: templates/js/translated/part.js:1395
msgid "Add Parameter"
msgstr "添加参数"
@@ -4137,23 +4180,28 @@ msgstr ""
msgid "Contacts"
msgstr ""
+#: company/templates/company/sidebar.html:35
+msgid "Addresses"
+msgstr ""
+
#: company/templates/company/supplier_part.html:7
#: company/templates/company/supplier_part.html:24 stock/models.py:684
#: stock/templates/stock/item_base.html:234
-#: templates/js/translated/company.js:1210
-#: templates/js/translated/purchase_order.js:747
-#: templates/js/translated/stock.js:2016
+#: templates/js/translated/company.js:1631
+#: templates/js/translated/purchase_order.js:758
+#: templates/js/translated/stock.js:2173
msgid "Supplier Part"
msgstr "供应商商品"
#: company/templates/company/supplier_part.html:51
+#: templates/js/translated/company.js:1557
msgid "Supplier part actions"
msgstr ""
#: company/templates/company/supplier_part.html:56
#: company/templates/company/supplier_part.html:57
#: company/templates/company/supplier_part.html:229
-#: part/templates/part/detail.html:112
+#: part/templates/part/detail.html:110
msgid "Order Part"
msgstr "订购商品"
@@ -4164,13 +4212,13 @@ msgstr "更新可用性"
#: company/templates/company/supplier_part.html:64
#: company/templates/company/supplier_part.html:65
-#: templates/js/translated/company.js:283
+#: templates/js/translated/company.js:293
msgid "Edit Supplier Part"
msgstr "编辑供应商商品"
#: company/templates/company/supplier_part.html:69
#: company/templates/company/supplier_part.html:70
-#: templates/js/translated/company.js:258
+#: templates/js/translated/company.js:268
msgid "Duplicate Supplier Part"
msgstr "复制供应商部件"
@@ -4197,7 +4245,7 @@ msgstr "新建库存物品"
#: company/templates/company/supplier_part.html:211
#: part/templates/part/detail.html:25 stock/templates/stock/location.html:198
-#: templates/js/translated/stock.js:504
+#: templates/js/translated/stock.js:503
msgid "New Stock Item"
msgstr "新库存物品"
@@ -4205,37 +4253,37 @@ msgstr "新库存物品"
msgid "Supplier Part Orders"
msgstr "供应商商品订单"
-#: company/templates/company/supplier_part.html:249
+#: company/templates/company/supplier_part.html:247
msgid "Pricing Information"
msgstr "价格信息"
-#: company/templates/company/supplier_part.html:254
-#: templates/js/translated/company.js:387
+#: company/templates/company/supplier_part.html:252
+#: templates/js/translated/company.js:397
#: templates/js/translated/pricing.js:684
msgid "Add Price Break"
msgstr ""
-#: company/templates/company/supplier_part.html:281
+#: company/templates/company/supplier_part.html:277
msgid "Supplier Part QR Code"
msgstr "供应商部件二维码"
-#: company/templates/company/supplier_part.html:292
+#: company/templates/company/supplier_part.html:288
msgid "Link Barcode to Supplier Part"
msgstr "将条码绑定至供应商部件"
-#: company/templates/company/supplier_part.html:365
+#: company/templates/company/supplier_part.html:361
msgid "Update Part Availability"
msgstr "更新部件可用性"
#: company/templates/company/supplier_part_sidebar.html:5 part/tasks.py:293
-#: part/templates/part/category.html:199
+#: part/templates/part/category.html:182
#: part/templates/part/category_sidebar.html:17 stock/admin.py:47
-#: stock/templates/stock/location.html:168
+#: stock/serializers.py:662 stock/templates/stock/location.html:168
#: stock/templates/stock/location.html:182
#: stock/templates/stock/location.html:194
#: stock/templates/stock/location_sidebar.html:7
-#: templates/InvenTree/search.html:155 templates/js/translated/part.js:1034
-#: templates/js/translated/search.js:214 templates/js/translated/stock.js:2514
+#: templates/InvenTree/search.html:155 templates/js/translated/part.js:1033
+#: templates/js/translated/search.js:172 templates/js/translated/stock.js:2645
#: users/models.py:41
msgid "Stock Items"
msgstr "库存项"
@@ -4261,7 +4309,7 @@ msgstr "客户信息"
msgid "New Customer"
msgstr "新建客户"
-#: company/views.py:52 templates/js/translated/search.js:234
+#: company/views.py:52 templates/js/translated/search.js:192
msgid "Companies"
msgstr "公司"
@@ -4269,72 +4317,76 @@ msgstr "公司"
msgid "New Company"
msgstr "新建公司信息"
-#: label/models.py:104
+#: label/models.py:112
msgid "Label name"
msgstr "标签名称"
-#: label/models.py:111
+#: label/models.py:119
msgid "Label description"
msgstr "标签说明"
-#: label/models.py:118
+#: label/models.py:126
msgid "Label"
msgstr "标签"
-#: label/models.py:119
+#: label/models.py:127
msgid "Label template file"
msgstr "标签模板文件"
-#: label/models.py:125 report/models.py:273
+#: label/models.py:133 report/models.py:273
msgid "Enabled"
msgstr "已启用"
-#: label/models.py:126
+#: label/models.py:134
msgid "Label template is enabled"
msgstr "标签模板已启用"
-#: label/models.py:131
+#: label/models.py:139
msgid "Width [mm]"
msgstr "宽度 [mm]"
-#: label/models.py:132
+#: label/models.py:140
msgid "Label width, specified in mm"
msgstr "标注宽度,以毫米为单位。"
-#: label/models.py:138
+#: label/models.py:146
msgid "Height [mm]"
msgstr "高度 [mm]"
-#: label/models.py:139
+#: label/models.py:147
msgid "Label height, specified in mm"
msgstr "标注高度,以毫米为单位。"
-#: label/models.py:145 report/models.py:266
+#: label/models.py:153 report/models.py:266
msgid "Filename Pattern"
msgstr "文件名样式"
-#: label/models.py:146
+#: label/models.py:154
msgid "Pattern for generating label filenames"
msgstr ""
-#: label/models.py:242
+#: label/models.py:250
msgid "Query filters (comma-separated list of key=value pairs),"
msgstr "查询筛选器 (逗号分隔的键值对列表)"
-#: label/models.py:243 label/models.py:284 label/models.py:312
-#: report/models.py:294 report/models.py:452 report/models.py:490
-#: report/models.py:528
+#: label/models.py:251 label/models.py:292 label/models.py:320
+#: label/models.py:356 report/models.py:294 report/models.py:454
+#: report/models.py:492 report/models.py:530
msgid "Filters"
msgstr "筛选器"
-#: label/models.py:283
+#: label/models.py:291
msgid "Query filters (comma-separated list of key=value pairs"
msgstr "查询筛选器 (逗号分隔的键值对列表"
-#: label/models.py:311
+#: label/models.py:319
msgid "Part query filters (comma-separated value of key=value pairs)"
msgstr "商品查询筛选器 (逗号分隔的键值对列表)"
+#: label/models.py:355
+msgid "Query filters (comma-separated list of key=value pairs)"
+msgstr ""
+
#: label/templates/label/part/part_label.html:31
#: label/templates/label/stockitem/qr.html:21
#: label/templates/label/stocklocation/qr.html:21
@@ -4352,8 +4404,8 @@ msgstr ""
#: report/templates/report/inventree_po_report_base.html:31
#: report/templates/report/inventree_so_report_base.html:31
#: templates/js/translated/order.js:327
-#: templates/js/translated/purchase_order.js:2093
-#: templates/js/translated/sales_order.js:1827
+#: templates/js/translated/purchase_order.js:2103
+#: templates/js/translated/sales_order.js:1839
msgid "Total Price"
msgstr ""
@@ -4361,30 +4413,30 @@ msgstr ""
msgid "No matching purchase order found"
msgstr ""
-#: order/api.py:1452 order/models.py:1178 order/models.py:1262
+#: order/api.py:1452 order/models.py:1191 order/models.py:1275
#: order/templates/order/order_base.html:9
#: order/templates/order/order_base.html:18
#: report/templates/report/inventree_po_report_base.html:14
#: stock/templates/stock/item_base.html:177
#: templates/email/overdue_purchase_order.html:15
-#: templates/js/translated/part.js:1718 templates/js/translated/pricing.js:790
-#: templates/js/translated/purchase_order.js:154
-#: templates/js/translated/purchase_order.js:748
-#: templates/js/translated/purchase_order.js:1637
-#: templates/js/translated/stock.js:1996 templates/js/translated/stock.js:2644
+#: templates/js/translated/part.js:1717 templates/js/translated/pricing.js:790
+#: templates/js/translated/purchase_order.js:165
+#: templates/js/translated/purchase_order.js:759
+#: templates/js/translated/purchase_order.js:1652
+#: templates/js/translated/stock.js:2153 templates/js/translated/stock.js:2775
msgid "Purchase Order"
msgstr ""
-#: order/api.py:1456 order/models.py:1909 order/models.py:1955
+#: order/api.py:1456 order/models.py:1922 order/models.py:1968
#: order/templates/order/return_order_base.html:9
#: order/templates/order/return_order_base.html:28
#: report/templates/report/inventree_return_order_report_base.html:13
-#: templates/js/translated/return_order.js:269
-#: templates/js/translated/stock.js:2678
+#: templates/js/translated/return_order.js:281
+#: templates/js/translated/stock.js:2809
msgid "Return Order"
msgstr ""
-#: order/api.py:1458 templates/js/translated/sales_order.js:1030
+#: order/api.py:1458 templates/js/translated/sales_order.js:1042
msgid "Unknown"
msgstr "未知"
@@ -4392,11 +4444,11 @@ msgstr "未知"
msgid "Total price for this order"
msgstr ""
-#: order/models.py:79 order/serializers.py:49
+#: order/models.py:79 order/serializers.py:50
msgid "Order Currency"
msgstr ""
-#: order/models.py:81 order/serializers.py:50
+#: order/models.py:81 order/serializers.py:51
msgid "Currency for this order (leave blank to use company default)"
msgstr ""
@@ -4408,492 +4460,496 @@ msgstr ""
msgid "Order description (optional)"
msgstr ""
-#: order/models.py:234
+#: order/models.py:237
msgid "Select project code for this order"
msgstr ""
-#: order/models.py:236 order/models.py:1094 order/models.py:1454
+#: order/models.py:240 order/models.py:1107 order/models.py:1467
msgid "Link to external page"
msgstr "链接到外部页面"
-#: order/models.py:241
+#: order/models.py:245
msgid "Expected date for order delivery. Order will be overdue after this date."
msgstr "预期订单交付日期。超过该日期后订单将逾期。"
-#: order/models.py:250
+#: order/models.py:254
msgid "Created By"
msgstr "创建者"
-#: order/models.py:257
+#: order/models.py:261
msgid "User or group responsible for this order"
msgstr "负责此订单的用户或群组"
-#: order/models.py:267
+#: order/models.py:271
msgid "Point of contact for this order"
msgstr ""
-#: order/models.py:360 order/models.py:766
+#: order/models.py:280
+msgid "Company address for this order"
+msgstr ""
+
+#: order/models.py:373 order/models.py:779
msgid "Order reference"
msgstr ""
-#: order/models.py:368 order/models.py:791
+#: order/models.py:381 order/models.py:804
msgid "Purchase order status"
msgstr ""
-#: order/models.py:383
+#: order/models.py:396
msgid "Company from which the items are being ordered"
msgstr "订购该商品的公司"
-#: order/models.py:391 order/templates/order/order_base.html:152
-#: templates/js/translated/purchase_order.js:1662
+#: order/models.py:404 order/templates/order/order_base.html:148
+#: templates/js/translated/purchase_order.js:1677
msgid "Supplier Reference"
msgstr ""
-#: order/models.py:391
+#: order/models.py:404
msgid "Supplier order reference code"
msgstr ""
-#: order/models.py:398
+#: order/models.py:411
msgid "received by"
msgstr "接收方"
-#: order/models.py:403 order/models.py:1761
+#: order/models.py:416 order/models.py:1774
msgid "Issue Date"
msgstr "签发日期"
-#: order/models.py:404 order/models.py:1762
+#: order/models.py:417 order/models.py:1775
msgid "Date order was issued"
msgstr "订单签发日期"
-#: order/models.py:410 order/models.py:1768
+#: order/models.py:423 order/models.py:1781
msgid "Date order was completed"
msgstr "订单完成日期"
-#: order/models.py:445
+#: order/models.py:458
msgid "Part supplier must match PO supplier"
msgstr ""
-#: order/models.py:606
+#: order/models.py:619
msgid "Quantity must be a positive number"
msgstr "数量必须大于0"
-#: order/models.py:780
+#: order/models.py:793
msgid "Company to which the items are being sold"
msgstr "向其出售该商品的公司"
-#: order/models.py:799 order/models.py:1755
+#: order/models.py:812 order/models.py:1768
msgid "Customer Reference "
msgstr ""
-#: order/models.py:799 order/models.py:1756
+#: order/models.py:812 order/models.py:1769
msgid "Customer order reference code"
msgstr ""
-#: order/models.py:801 order/models.py:1408
-#: templates/js/translated/sales_order.js:831
-#: templates/js/translated/sales_order.js:1012
+#: order/models.py:814 order/models.py:1421
+#: templates/js/translated/sales_order.js:843
+#: templates/js/translated/sales_order.js:1024
msgid "Shipment Date"
msgstr "发货日期"
-#: order/models.py:808
+#: order/models.py:821
msgid "shipped by"
msgstr ""
-#: order/models.py:857
+#: order/models.py:870
msgid "Order cannot be completed as no parts have been assigned"
msgstr "尚未分配部件,因此订单无法完成"
-#: order/models.py:861
+#: order/models.py:874
msgid "Only an open order can be marked as complete"
msgstr ""
-#: order/models.py:864 templates/js/translated/sales_order.js:491
+#: order/models.py:877 templates/js/translated/sales_order.js:503
msgid "Order cannot be completed as there are incomplete shipments"
msgstr ""
-#: order/models.py:867
+#: order/models.py:880
msgid "Order cannot be completed as there are incomplete line items"
msgstr ""
-#: order/models.py:1074
+#: order/models.py:1087
msgid "Item quantity"
msgstr "物品数量"
-#: order/models.py:1087
+#: order/models.py:1100
msgid "Line item reference"
msgstr ""
-#: order/models.py:1089
+#: order/models.py:1102
msgid "Line item notes"
msgstr ""
-#: order/models.py:1100
+#: order/models.py:1113
msgid "Target date for this line item (leave blank to use the target date from the order)"
msgstr ""
-#: order/models.py:1118
+#: order/models.py:1131
msgid "Line item description (optional)"
msgstr ""
-#: order/models.py:1123
+#: order/models.py:1136
msgid "Context"
msgstr ""
-#: order/models.py:1124
+#: order/models.py:1137
msgid "Additional context for this line"
msgstr ""
-#: order/models.py:1133
+#: order/models.py:1146
msgid "Unit price"
msgstr "单价"
-#: order/models.py:1163
+#: order/models.py:1176
msgid "Supplier part must match supplier"
msgstr ""
-#: order/models.py:1171
+#: order/models.py:1184
msgid "deleted"
msgstr ""
-#: order/models.py:1177 order/models.py:1262 order/models.py:1303
-#: order/models.py:1402 order/models.py:1551 order/models.py:1908
-#: order/models.py:1955 templates/js/translated/sales_order.js:1474
+#: order/models.py:1190 order/models.py:1275 order/models.py:1316
+#: order/models.py:1415 order/models.py:1564 order/models.py:1921
+#: order/models.py:1968 templates/js/translated/sales_order.js:1486
msgid "Order"
msgstr ""
-#: order/models.py:1196
+#: order/models.py:1209
msgid "Supplier part"
msgstr "供应商商品"
-#: order/models.py:1203 order/templates/order/order_base.html:200
-#: templates/js/translated/part.js:1841 templates/js/translated/part.js:1872
-#: templates/js/translated/purchase_order.js:1276
-#: templates/js/translated/purchase_order.js:2137
-#: templates/js/translated/return_order.js:748
-#: templates/js/translated/table_filters.js:90
-#: templates/js/translated/table_filters.js:515
+#: order/models.py:1216 order/templates/order/order_base.html:196
+#: templates/js/translated/part.js:1840 templates/js/translated/part.js:1871
+#: templates/js/translated/purchase_order.js:1291
+#: templates/js/translated/purchase_order.js:2147
+#: templates/js/translated/return_order.js:760
+#: templates/js/translated/table_filters.js:96
+#: templates/js/translated/table_filters.js:537
msgid "Received"
msgstr ""
-#: order/models.py:1204
+#: order/models.py:1217
msgid "Number of items received"
msgstr ""
-#: order/models.py:1211 stock/models.py:823 stock/serializers.py:252
+#: order/models.py:1224 stock/models.py:823 stock/serializers.py:314
#: stock/templates/stock/item_base.html:184
-#: templates/js/translated/stock.js:2047
+#: templates/js/translated/stock.js:2204
msgid "Purchase Price"
msgstr "采购价格"
-#: order/models.py:1212
+#: order/models.py:1225
msgid "Unit purchase price"
msgstr ""
-#: order/models.py:1225
+#: order/models.py:1238
msgid "Where does the Purchaser want this item to be stored?"
msgstr ""
-#: order/models.py:1291
+#: order/models.py:1304
msgid "Virtual part cannot be assigned to a sales order"
msgstr ""
-#: order/models.py:1296
+#: order/models.py:1309
msgid "Only salable parts can be assigned to a sales order"
msgstr ""
-#: order/models.py:1322 part/templates/part/part_pricing.html:107
+#: order/models.py:1335 part/templates/part/part_pricing.html:107
#: part/templates/part/prices.html:128 templates/js/translated/pricing.js:943
msgid "Sale Price"
msgstr "销售价格"
-#: order/models.py:1323
+#: order/models.py:1336
msgid "Unit sale price"
msgstr ""
-#: order/models.py:1333
+#: order/models.py:1346
msgid "Shipped quantity"
msgstr ""
-#: order/models.py:1409
+#: order/models.py:1422
msgid "Date of shipment"
msgstr ""
-#: order/models.py:1414 templates/js/translated/sales_order.js:1024
+#: order/models.py:1427 templates/js/translated/sales_order.js:1036
msgid "Delivery Date"
msgstr ""
-#: order/models.py:1415
+#: order/models.py:1428
msgid "Date of delivery of shipment"
msgstr ""
-#: order/models.py:1422
+#: order/models.py:1435
msgid "Checked By"
msgstr ""
-#: order/models.py:1423
+#: order/models.py:1436
msgid "User who checked this shipment"
msgstr ""
-#: order/models.py:1430 order/models.py:1627 order/serializers.py:1248
-#: order/serializers.py:1376 templates/js/translated/model_renderers.js:415
+#: order/models.py:1443 order/models.py:1640 order/serializers.py:1254
+#: order/serializers.py:1382 templates/js/translated/model_renderers.js:429
msgid "Shipment"
msgstr ""
-#: order/models.py:1431
+#: order/models.py:1444
msgid "Shipment number"
msgstr ""
-#: order/models.py:1439
+#: order/models.py:1452
msgid "Tracking Number"
msgstr ""
-#: order/models.py:1440
+#: order/models.py:1453
msgid "Shipment tracking information"
msgstr ""
-#: order/models.py:1447
+#: order/models.py:1460
msgid "Invoice Number"
msgstr ""
-#: order/models.py:1448
+#: order/models.py:1461
msgid "Reference number for associated invoice"
msgstr ""
-#: order/models.py:1470
+#: order/models.py:1483
msgid "Shipment has already been sent"
msgstr ""
-#: order/models.py:1473
+#: order/models.py:1486
msgid "Shipment has no allocated stock items"
msgstr ""
-#: order/models.py:1586 order/models.py:1588
+#: order/models.py:1599 order/models.py:1601
msgid "Stock item has not been assigned"
msgstr ""
-#: order/models.py:1592
+#: order/models.py:1605
msgid "Cannot allocate stock item to a line with a different part"
msgstr ""
-#: order/models.py:1594
+#: order/models.py:1607
msgid "Cannot allocate stock to a line without a part"
msgstr ""
-#: order/models.py:1597
+#: order/models.py:1610
msgid "Allocation quantity cannot exceed stock quantity"
msgstr ""
-#: order/models.py:1607 order/serializers.py:1110
+#: order/models.py:1620 order/serializers.py:1116
msgid "Quantity must be 1 for serialized stock item"
msgstr ""
-#: order/models.py:1610
+#: order/models.py:1623
msgid "Sales order does not match shipment"
msgstr ""
-#: order/models.py:1611
+#: order/models.py:1624
msgid "Shipment does not match sales order"
msgstr ""
-#: order/models.py:1619
+#: order/models.py:1632
msgid "Line"
msgstr ""
-#: order/models.py:1628
+#: order/models.py:1641
msgid "Sales order shipment reference"
msgstr ""
-#: order/models.py:1641 order/models.py:1916
-#: templates/js/translated/return_order.js:706
+#: order/models.py:1654 order/models.py:1929
+#: templates/js/translated/return_order.js:718
msgid "Item"
msgstr "物品"
-#: order/models.py:1642
+#: order/models.py:1655
msgid "Select stock item to allocate"
msgstr ""
-#: order/models.py:1645
+#: order/models.py:1658
msgid "Enter stock allocation quantity"
msgstr ""
-#: order/models.py:1725
+#: order/models.py:1738
msgid "Return Order reference"
msgstr ""
-#: order/models.py:1739
+#: order/models.py:1752
msgid "Company from which items are being returned"
msgstr ""
-#: order/models.py:1750
+#: order/models.py:1763
msgid "Return order status"
msgstr ""
-#: order/models.py:1901
+#: order/models.py:1914
msgid "Only serialized items can be assigned to a Return Order"
msgstr ""
-#: order/models.py:1917
+#: order/models.py:1930
msgid "Select item to return from customer"
msgstr ""
-#: order/models.py:1922
+#: order/models.py:1935
msgid "Received Date"
msgstr ""
-#: order/models.py:1923
+#: order/models.py:1936
msgid "The date this this return item was received"
msgstr ""
-#: order/models.py:1934 templates/js/translated/return_order.js:717
-#: templates/js/translated/table_filters.js:93
+#: order/models.py:1947 templates/js/translated/return_order.js:729
+#: templates/js/translated/table_filters.js:99
msgid "Outcome"
msgstr ""
-#: order/models.py:1934
+#: order/models.py:1947
msgid "Outcome for this line item"
msgstr ""
-#: order/models.py:1940
+#: order/models.py:1953
msgid "Cost associated with return or repair for this line item"
msgstr ""
-#: order/serializers.py:247
+#: order/serializers.py:253
msgid "Order cannot be cancelled"
msgstr "无法取消订单"
-#: order/serializers.py:262 order/serializers.py:1128
+#: order/serializers.py:268 order/serializers.py:1134
msgid "Allow order to be closed with incomplete line items"
msgstr ""
-#: order/serializers.py:273 order/serializers.py:1139
+#: order/serializers.py:279 order/serializers.py:1145
msgid "Order has incomplete line items"
msgstr ""
-#: order/serializers.py:386
+#: order/serializers.py:392
msgid "Order is not open"
msgstr ""
-#: order/serializers.py:404
+#: order/serializers.py:410
msgid "Purchase price currency"
msgstr ""
-#: order/serializers.py:422
+#: order/serializers.py:428
msgid "Supplier part must be specified"
msgstr ""
-#: order/serializers.py:427
+#: order/serializers.py:433
msgid "Purchase order must be specified"
msgstr ""
-#: order/serializers.py:433
+#: order/serializers.py:439
msgid "Supplier must match purchase order"
msgstr ""
-#: order/serializers.py:434
+#: order/serializers.py:440
msgid "Purchase order must match supplier"
msgstr ""
-#: order/serializers.py:472 order/serializers.py:1216
+#: order/serializers.py:478 order/serializers.py:1222
msgid "Line Item"
msgstr ""
-#: order/serializers.py:478
+#: order/serializers.py:484
msgid "Line item does not match purchase order"
msgstr ""
-#: order/serializers.py:488 order/serializers.py:607 order/serializers.py:1589
+#: order/serializers.py:494 order/serializers.py:613 order/serializers.py:1595
msgid "Select destination location for received items"
msgstr ""
-#: order/serializers.py:507 templates/js/translated/purchase_order.js:1100
+#: order/serializers.py:513 templates/js/translated/purchase_order.js:1115
msgid "Enter batch code for incoming stock items"
msgstr ""
-#: order/serializers.py:515 templates/js/translated/purchase_order.js:1124
+#: order/serializers.py:521 templates/js/translated/purchase_order.js:1139
msgid "Enter serial numbers for incoming stock items"
msgstr ""
-#: order/serializers.py:528 templates/js/translated/barcode.js:52
+#: order/serializers.py:534 templates/js/translated/barcode.js:52
msgid "Barcode"
msgstr "条形码"
-#: order/serializers.py:529
+#: order/serializers.py:535
msgid "Scanned barcode"
msgstr ""
-#: order/serializers.py:545
+#: order/serializers.py:551
msgid "Barcode is already in use"
msgstr ""
-#: order/serializers.py:569
+#: order/serializers.py:575
msgid "An integer quantity must be provided for trackable parts"
msgstr ""
-#: order/serializers.py:623 order/serializers.py:1604
+#: order/serializers.py:629 order/serializers.py:1610
msgid "Line items must be provided"
msgstr ""
-#: order/serializers.py:640
+#: order/serializers.py:646
msgid "Destination location must be specified"
msgstr ""
-#: order/serializers.py:651
+#: order/serializers.py:657
msgid "Supplied barcode values must be unique"
msgstr ""
-#: order/serializers.py:950
+#: order/serializers.py:956
msgid "Sale price currency"
msgstr ""
-#: order/serializers.py:1007
+#: order/serializers.py:1013
msgid "No shipment details provided"
msgstr ""
-#: order/serializers.py:1071 order/serializers.py:1225
+#: order/serializers.py:1077 order/serializers.py:1231
msgid "Line item is not associated with this order"
msgstr ""
-#: order/serializers.py:1093
+#: order/serializers.py:1099
msgid "Quantity must be positive"
msgstr "数量必须大于0"
-#: order/serializers.py:1238
+#: order/serializers.py:1244
msgid "Enter serial numbers to allocate"
msgstr "输入序列号以进行分配"
-#: order/serializers.py:1260 order/serializers.py:1384
+#: order/serializers.py:1266 order/serializers.py:1390
msgid "Shipment has already been shipped"
msgstr ""
-#: order/serializers.py:1263 order/serializers.py:1387
+#: order/serializers.py:1269 order/serializers.py:1393
msgid "Shipment is not associated with this order"
msgstr ""
-#: order/serializers.py:1317
+#: order/serializers.py:1323
msgid "No match found for the following serial numbers"
msgstr ""
-#: order/serializers.py:1327
+#: order/serializers.py:1333
msgid "The following serial numbers are already allocated"
msgstr ""
-#: order/serializers.py:1555
+#: order/serializers.py:1561
msgid "Return order line item"
msgstr ""
-#: order/serializers.py:1562
+#: order/serializers.py:1568
msgid "Line item does not match return order"
msgstr ""
-#: order/serializers.py:1565
+#: order/serializers.py:1571
msgid "Line item has already been received"
msgstr ""
-#: order/serializers.py:1597
+#: order/serializers.py:1603
msgid "Items can only be received against orders which are in progress"
msgstr ""
-#: order/serializers.py:1678
+#: order/serializers.py:1684
msgid "Line price currency"
msgstr ""
@@ -4957,82 +5013,74 @@ msgid "Issue Order"
msgstr ""
#: order/templates/order/order_base.html:83
-msgid "Receive items"
-msgstr ""
-
-#: order/templates/order/order_base.html:85
-msgid "Receive Items"
-msgstr ""
-
-#: order/templates/order/order_base.html:87
#: order/templates/order/return_order_base.html:87
msgid "Mark order as complete"
msgstr "标记订单为完成"
-#: order/templates/order/order_base.html:88
+#: order/templates/order/order_base.html:84
#: order/templates/order/return_order_base.html:88
#: order/templates/order/sales_order_base.html:94
msgid "Complete Order"
msgstr "完成订单"
-#: order/templates/order/order_base.html:95
+#: order/templates/order/order_base.html:91
msgid "Supplier part thumbnail"
msgstr ""
-#: order/templates/order/order_base.html:110
+#: order/templates/order/order_base.html:106
#: order/templates/order/return_order_base.html:102
#: order/templates/order/sales_order_base.html:107
msgid "Order Reference"
msgstr ""
-#: order/templates/order/order_base.html:115
+#: order/templates/order/order_base.html:111
#: order/templates/order/return_order_base.html:107
#: order/templates/order/sales_order_base.html:112
msgid "Order Description"
msgstr ""
-#: order/templates/order/order_base.html:122
+#: order/templates/order/order_base.html:118
#: order/templates/order/return_order_base.html:114
#: order/templates/order/sales_order_base.html:119
msgid "Order Status"
msgstr ""
-#: order/templates/order/order_base.html:145
+#: order/templates/order/order_base.html:141
msgid "No suppplier information available"
msgstr ""
-#: order/templates/order/order_base.html:158
+#: order/templates/order/order_base.html:154
#: order/templates/order/sales_order_base.html:158
msgid "Completed Line Items"
msgstr ""
-#: order/templates/order/order_base.html:164
+#: order/templates/order/order_base.html:160
#: order/templates/order/sales_order_base.html:164
#: order/templates/order/sales_order_base.html:174
msgid "Incomplete"
msgstr ""
-#: order/templates/order/order_base.html:183
+#: order/templates/order/order_base.html:179
#: order/templates/order/return_order_base.html:158
#: report/templates/report/inventree_build_order_base.html:121
msgid "Issued"
msgstr ""
-#: order/templates/order/order_base.html:221
+#: order/templates/order/order_base.html:224
msgid "Total cost"
msgstr ""
-#: order/templates/order/order_base.html:225
-#: order/templates/order/return_order_base.html:193
-#: order/templates/order/sales_order_base.html:233
+#: order/templates/order/order_base.html:228
+#: order/templates/order/return_order_base.html:200
+#: order/templates/order/sales_order_base.html:240
msgid "Total cost could not be calculated"
msgstr ""
-#: order/templates/order/order_base.html:331
+#: order/templates/order/order_base.html:318
msgid "Purchase Order QR Code"
msgstr ""
-#: order/templates/order/order_base.html:343
+#: order/templates/order/order_base.html:330
msgid "Link Barcode to Purchase Order"
msgstr ""
@@ -5085,13 +5133,13 @@ msgstr ""
#: part/templates/part/import_wizard/ajax_match_references.html:42
#: part/templates/part/import_wizard/match_fields.html:71
#: part/templates/part/import_wizard/match_references.html:49
-#: templates/js/translated/bom.js:132 templates/js/translated/build.js:512
-#: templates/js/translated/build.js:2348
-#: templates/js/translated/purchase_order.js:692
-#: templates/js/translated/purchase_order.js:1206
-#: templates/js/translated/return_order.js:494
-#: templates/js/translated/sales_order.js:1097
-#: templates/js/translated/stock.js:681 templates/js/translated/stock.js:850
+#: templates/js/translated/bom.js:133 templates/js/translated/build.js:518
+#: templates/js/translated/build.js:1555
+#: templates/js/translated/purchase_order.js:703
+#: templates/js/translated/purchase_order.js:1221
+#: templates/js/translated/return_order.js:506
+#: templates/js/translated/sales_order.js:1109
+#: templates/js/translated/stock.js:680 templates/js/translated/stock.js:849
#: templates/patterns/wizard/match_fields.html:70
msgid "Remove row"
msgstr "移除行"
@@ -5152,9 +5200,9 @@ msgstr ""
#: order/templates/order/purchase_order_detail.html:27
#: order/templates/order/return_order_detail.html:24
#: order/templates/order/sales_order_detail.html:24
-#: templates/js/translated/purchase_order.js:419
-#: templates/js/translated/return_order.js:447
-#: templates/js/translated/sales_order.js:222
+#: templates/js/translated/purchase_order.js:430
+#: templates/js/translated/return_order.js:459
+#: templates/js/translated/sales_order.js:234
msgid "Add Line Item"
msgstr ""
@@ -5165,30 +5213,25 @@ msgstr ""
msgid "Receive Line Items"
msgstr ""
-#: order/templates/order/purchase_order_detail.html:49
#: order/templates/order/purchase_order_detail.html:50
-msgid "Delete Line Items"
-msgstr ""
-
-#: order/templates/order/purchase_order_detail.html:66
-#: order/templates/order/return_order_detail.html:47
-#: order/templates/order/sales_order_detail.html:43
+#: order/templates/order/return_order_detail.html:45
+#: order/templates/order/sales_order_detail.html:41
msgid "Extra Lines"
msgstr ""
-#: order/templates/order/purchase_order_detail.html:72
-#: order/templates/order/return_order_detail.html:53
-#: order/templates/order/sales_order_detail.html:49
+#: order/templates/order/purchase_order_detail.html:56
+#: order/templates/order/return_order_detail.html:51
+#: order/templates/order/sales_order_detail.html:47
msgid "Add Extra Line"
msgstr ""
-#: order/templates/order/purchase_order_detail.html:92
+#: order/templates/order/purchase_order_detail.html:74
msgid "Received Items"
msgstr ""
-#: order/templates/order/purchase_order_detail.html:117
-#: order/templates/order/return_order_detail.html:89
-#: order/templates/order/sales_order_detail.html:149
+#: order/templates/order/purchase_order_detail.html:99
+#: order/templates/order/return_order_detail.html:85
+#: order/templates/order/sales_order_detail.html:139
msgid "Order Notes"
msgstr ""
@@ -5208,29 +5251,29 @@ msgstr ""
#: order/templates/order/return_order_base.html:139
#: order/templates/order/sales_order_base.html:152
-#: templates/js/translated/return_order.js:297
-#: templates/js/translated/sales_order.js:785
+#: templates/js/translated/return_order.js:309
+#: templates/js/translated/sales_order.js:797
msgid "Customer Reference"
msgstr ""
-#: order/templates/order/return_order_base.html:189
-#: order/templates/order/sales_order_base.html:229
+#: order/templates/order/return_order_base.html:196
+#: order/templates/order/sales_order_base.html:236
#: part/templates/part/part_pricing.html:32
#: part/templates/part/part_pricing.html:58
#: part/templates/part/part_pricing.html:99
#: part/templates/part/part_pricing.html:114
-#: templates/js/translated/part.js:1046
-#: templates/js/translated/purchase_order.js:1712
-#: templates/js/translated/return_order.js:369
-#: templates/js/translated/sales_order.js:843
+#: templates/js/translated/part.js:1045
+#: templates/js/translated/purchase_order.js:1727
+#: templates/js/translated/return_order.js:381
+#: templates/js/translated/sales_order.js:855
msgid "Total Cost"
msgstr "总成本"
-#: order/templates/order/return_order_base.html:257
+#: order/templates/order/return_order_base.html:264
msgid "Return Order QR Code"
msgstr ""
-#: order/templates/order/return_order_base.html:269
+#: order/templates/order/return_order_base.html:276
msgid "Link Barcode to Return Order"
msgstr ""
@@ -5248,7 +5291,7 @@ msgid "Ship Items"
msgstr ""
#: order/templates/order/sales_order_base.html:93
-#: templates/js/translated/sales_order.js:469
+#: templates/js/translated/sales_order.js:481
msgid "Complete Sales Order"
msgstr ""
@@ -5257,16 +5300,16 @@ msgid "This Sales Order has not been fully allocated"
msgstr ""
#: order/templates/order/sales_order_base.html:170
-#: order/templates/order/sales_order_detail.html:105
+#: order/templates/order/sales_order_detail.html:99
#: order/templates/order/so_sidebar.html:11
msgid "Completed Shipments"
msgstr ""
-#: order/templates/order/sales_order_base.html:306
+#: order/templates/order/sales_order_base.html:313
msgid "Sales Order QR Code"
msgstr ""
-#: order/templates/order/sales_order_base.html:318
+#: order/templates/order/sales_order_base.html:325
msgid "Link Barcode to Sales Order"
msgstr ""
@@ -5274,18 +5317,17 @@ msgstr ""
msgid "Sales Order Items"
msgstr ""
-#: order/templates/order/sales_order_detail.html:71
-#: order/templates/order/so_sidebar.html:8 templates/InvenTree/index.html:332
+#: order/templates/order/sales_order_detail.html:67
+#: order/templates/order/so_sidebar.html:8 templates/InvenTree/index.html:284
msgid "Pending Shipments"
msgstr ""
-#: order/templates/order/sales_order_detail.html:75
-#: templates/attachment_table.html:6 templates/js/translated/bom.js:1236
-#: templates/js/translated/build.js:2249
+#: order/templates/order/sales_order_detail.html:71
+#: templates/js/translated/bom.js:1256 templates/js/translated/filters.js:297
msgid "Actions"
msgstr "操作"
-#: order/templates/order/sales_order_detail.html:84
+#: order/templates/order/sales_order_detail.html:80
msgid "New Shipment"
msgstr ""
@@ -5311,12 +5353,12 @@ msgstr ""
msgid "Updated {part} unit-price to {price} and quantity to {qty}"
msgstr ""
-#: part/admin.py:33 part/admin.py:273 part/models.py:3667 part/tasks.py:288
+#: part/admin.py:33 part/admin.py:273 part/models.py:3716 part/tasks.py:288
#: stock/admin.py:101
msgid "Part ID"
msgstr "商品ID"
-#: part/admin.py:34 part/admin.py:275 part/models.py:3671 part/tasks.py:289
+#: part/admin.py:34 part/admin.py:275 part/models.py:3720 part/tasks.py:289
#: stock/admin.py:102
msgid "Part Name"
msgstr "部件名称"
@@ -5325,19 +5367,19 @@ msgstr "部件名称"
msgid "Part Description"
msgstr "部件描述"
-#: part/admin.py:36 part/models.py:889 part/templates/part/part_base.html:271
-#: templates/js/translated/part.js:1200 templates/js/translated/part.js:2233
-#: templates/js/translated/stock.js:1795
+#: part/admin.py:36 part/models.py:890 part/templates/part/part_base.html:271
+#: templates/js/translated/part.js:1199 templates/js/translated/part.js:2309
+#: templates/js/translated/stock.js:1952
msgid "IPN"
msgstr ""
-#: part/admin.py:37 part/models.py:896 part/templates/part/part_base.html:279
-#: report/models.py:179 templates/js/translated/part.js:1205
-#: templates/js/translated/part.js:2239
+#: part/admin.py:37 part/models.py:897 part/templates/part/part_base.html:279
+#: report/models.py:179 templates/js/translated/part.js:1204
+#: templates/js/translated/part.js:2315
msgid "Revision"
msgstr "版本号"
-#: part/admin.py:38 part/admin.py:198 part/models.py:875
+#: part/admin.py:38 part/admin.py:198 part/models.py:876
#: part/templates/part/category.html:93 part/templates/part/part_base.html:300
msgid "Keywords"
msgstr "关键词"
@@ -5358,24 +5400,24 @@ msgstr ""
msgid "Default Supplier ID"
msgstr ""
-#: part/admin.py:46 part/models.py:864 part/templates/part/part_base.html:179
+#: part/admin.py:46 part/models.py:865 part/templates/part/part_base.html:179
msgid "Variant Of"
msgstr ""
-#: part/admin.py:47 part/models.py:980 part/templates/part/part_base.html:205
+#: part/admin.py:47 part/models.py:981 part/templates/part/part_base.html:205
msgid "Minimum Stock"
msgstr "最低库存"
#: part/admin.py:61 part/templates/part/part_base.html:199
-#: templates/js/translated/company.js:1299
-#: templates/js/translated/table_filters.js:301
+#: templates/js/translated/company.js:1720
+#: templates/js/translated/table_filters.js:307
msgid "In Stock"
msgstr "有库存"
#: part/admin.py:62 part/bom.py:178 part/templates/part/part_base.html:212
-#: templates/js/translated/bom.js:1167 templates/js/translated/build.js:2191
-#: templates/js/translated/part.js:687 templates/js/translated/part.js:2123
-#: templates/js/translated/table_filters.js:140
+#: templates/js/translated/bom.js:1187 templates/js/translated/build.js:2541
+#: templates/js/translated/part.js:686 templates/js/translated/part.js:2122
+#: templates/js/translated/table_filters.js:146
msgid "On Order"
msgstr "订购中"
@@ -5383,23 +5425,16 @@ msgstr "订购中"
msgid "Used In"
msgstr "用于"
-#: part/admin.py:64 templates/js/translated/build.js:2203
-#: templates/js/translated/build.js:2465 templates/js/translated/build.js:3052
-#: templates/js/translated/sales_order.js:1906
-#: templates/js/translated/table_filters.js:488
-msgid "Allocated"
-msgstr "已分配"
-
#: part/admin.py:65 part/templates/part/part_base.html:243 stock/admin.py:124
-#: templates/js/translated/part.js:692 templates/js/translated/part.js:2127
+#: templates/js/translated/part.js:691 templates/js/translated/part.js:2126
msgid "Building"
msgstr ""
-#: part/admin.py:66 part/models.py:2930 templates/js/translated/part.js:943
+#: part/admin.py:66 part/models.py:2964 templates/js/translated/part.js:942
msgid "Minimum Cost"
msgstr ""
-#: part/admin.py:67 part/models.py:2936 templates/js/translated/part.js:953
+#: part/admin.py:67 part/models.py:2970 templates/js/translated/part.js:952
msgid "Maximum Cost"
msgstr ""
@@ -5416,13 +5451,13 @@ msgstr ""
msgid "Category Path"
msgstr "类别路径"
-#: part/admin.py:202 part/models.py:392 part/templates/part/cat_link.html:3
-#: part/templates/part/category.html:23 part/templates/part/category.html:140
-#: part/templates/part/category.html:160
+#: part/admin.py:202 part/models.py:393 part/serializers.py:307
+#: part/templates/part/cat_link.html:3 part/templates/part/category.html:23
+#: part/templates/part/category.html:140 part/templates/part/category.html:160
#: part/templates/part/category_sidebar.html:9
-#: templates/InvenTree/index.html:86 templates/InvenTree/search.html:84
+#: templates/InvenTree/index.html:36 templates/InvenTree/search.html:84
#: templates/InvenTree/settings/sidebar.html:45
-#: templates/js/translated/part.js:2754 templates/js/translated/search.js:172
+#: templates/js/translated/part.js:2739 templates/js/translated/search.js:130
#: templates/navbar.html:24 users/models.py:38
msgid "Parts"
msgstr "商品"
@@ -5439,7 +5474,7 @@ msgstr ""
msgid "Parent IPN"
msgstr ""
-#: part/admin.py:274 part/models.py:3675
+#: part/admin.py:274 part/models.py:3724
msgid "Part IPN"
msgstr ""
@@ -5453,35 +5488,35 @@ msgstr ""
msgid "Maximum Price"
msgstr ""
-#: part/api.py:498
+#: part/api.py:501
msgid "Incoming Purchase Order"
msgstr ""
-#: part/api.py:518
+#: part/api.py:521
msgid "Outgoing Sales Order"
msgstr ""
-#: part/api.py:536
+#: part/api.py:539
msgid "Stock produced by Build Order"
msgstr ""
-#: part/api.py:622
+#: part/api.py:625
msgid "Stock required for Build Order"
msgstr ""
-#: part/api.py:770
+#: part/api.py:773
msgid "Valid"
msgstr ""
-#: part/api.py:771
+#: part/api.py:774
msgid "Validate entire Bill of Materials"
msgstr ""
-#: part/api.py:777
+#: part/api.py:780
msgid "This option must be selected"
msgstr "必须选择此项"
-#: part/bom.py:175 part/models.py:127 part/models.py:923
+#: part/bom.py:175 part/models.py:128 part/models.py:924
#: part/templates/part/category.html:115 part/templates/part/part_base.html:369
msgid "Default Location"
msgstr "默认仓储地点"
@@ -5491,7 +5526,7 @@ msgid "Total Stock"
msgstr "总库存"
#: part/bom.py:177 part/templates/part/part_base.html:194
-#: templates/js/translated/sales_order.js:1873
+#: templates/js/translated/sales_order.js:1885
msgid "Available Stock"
msgstr "可用库存"
@@ -5499,916 +5534,913 @@ msgstr "可用库存"
msgid "Input quantity for price calculation"
msgstr "输入数量以计算价格"
-#: part/models.py:75 part/models.py:3616 part/templates/part/category.html:16
+#: part/models.py:76 part/models.py:3665 part/templates/part/category.html:16
#: part/templates/part/part_app_base.html:10
msgid "Part Category"
msgstr "商品类别"
-#: part/models.py:76 part/templates/part/category.html:135
-#: templates/InvenTree/search.html:97 templates/js/translated/search.js:200
+#: part/models.py:77 part/templates/part/category.html:135
+#: templates/InvenTree/search.html:97 templates/js/translated/search.js:158
#: users/models.py:37
msgid "Part Categories"
msgstr "商品类别"
-#: part/models.py:128
+#: part/models.py:129
msgid "Default location for parts in this category"
msgstr "此类别商品的默认仓储地点"
-#: part/models.py:133 stock/models.py:124 templates/js/translated/stock.js:2520
-#: templates/js/translated/table_filters.js:209
-#: templates/js/translated/table_filters.js:229
+#: part/models.py:134 stock/models.py:124 templates/js/translated/stock.js:2651
+#: templates/js/translated/table_filters.js:215
+#: templates/js/translated/table_filters.js:235
msgid "Structural"
msgstr ""
-#: part/models.py:135
+#: part/models.py:136
msgid "Parts may not be directly assigned to a structural category, but may be assigned to child categories."
msgstr ""
-#: part/models.py:139
+#: part/models.py:140
msgid "Default keywords"
msgstr ""
-#: part/models.py:139
+#: part/models.py:140
msgid "Default keywords for parts in this category"
msgstr "此类别商品的默认关键字"
-#: part/models.py:144 stock/models.py:113
+#: part/models.py:145 stock/models.py:113
msgid "Icon"
msgstr "图标"
-#: part/models.py:145 stock/models.py:114
+#: part/models.py:146 stock/models.py:114
msgid "Icon (optional)"
msgstr "图标(可选)"
-#: part/models.py:164
+#: part/models.py:165
msgid "You cannot make this part category structural because some parts are already assigned to it!"
msgstr ""
-#: part/models.py:475
+#: part/models.py:476
msgid "Invalid choice for parent part"
msgstr ""
-#: part/models.py:517 part/models.py:529
+#: part/models.py:518 part/models.py:530
#, python-brace-format
msgid "Part '{p1}' is used in BOM for '{p2}' (recursive)"
msgstr ""
-#: part/models.py:601
+#: part/models.py:602
#, python-brace-format
msgid "IPN must match regex pattern {pat}"
msgstr "IPN 必须匹配正则表达式 {pat}"
-#: part/models.py:672
+#: part/models.py:673
msgid "Stock item with this serial number already exists"
msgstr ""
-#: part/models.py:803
+#: part/models.py:804
msgid "Duplicate IPN not allowed in part settings"
msgstr "在商品设置中不允许重复的IPN"
-#: part/models.py:808
+#: part/models.py:809
msgid "Part with this Name, IPN and Revision already exists."
msgstr ""
-#: part/models.py:822
+#: part/models.py:823
msgid "Parts cannot be assigned to structural part categories!"
msgstr ""
-#: part/models.py:846 part/models.py:3672
+#: part/models.py:847 part/models.py:3721
msgid "Part name"
msgstr "商品名称"
-#: part/models.py:852
+#: part/models.py:853
msgid "Is Template"
msgstr ""
-#: part/models.py:853
+#: part/models.py:854
msgid "Is this part a template part?"
msgstr ""
-#: part/models.py:863
+#: part/models.py:864
msgid "Is this part a variant of another part?"
msgstr ""
-#: part/models.py:870
+#: part/models.py:871
msgid "Part description (optional)"
msgstr ""
-#: part/models.py:876
+#: part/models.py:877
msgid "Part keywords to improve visibility in search results"
msgstr "提高搜索结果可见性的关键字"
-#: part/models.py:883 part/models.py:3198 part/models.py:3615
-#: part/serializers.py:848 part/templates/part/part_base.html:262
+#: part/models.py:884 part/models.py:3232 part/models.py:3664
+#: part/serializers.py:320 part/serializers.py:910
+#: part/templates/part/part_base.html:262
#: templates/InvenTree/settings/settings_staff_js.html:204
#: templates/js/translated/notification.js:59
-#: templates/js/translated/part.js:2269 templates/js/translated/part.js:2481
+#: templates/js/translated/part.js:2345
msgid "Category"
msgstr "类别"
-#: part/models.py:884
+#: part/models.py:885
msgid "Part category"
msgstr "商品类别"
-#: part/models.py:890
+#: part/models.py:891
msgid "Internal Part Number"
msgstr "内部商品编号"
-#: part/models.py:895
+#: part/models.py:896
msgid "Part revision or version number"
msgstr "商品版本号"
-#: part/models.py:921
+#: part/models.py:922
msgid "Where is this item normally stored?"
msgstr ""
-#: part/models.py:966 part/templates/part/part_base.html:378
+#: part/models.py:967 part/templates/part/part_base.html:378
msgid "Default Supplier"
msgstr ""
-#: part/models.py:967
+#: part/models.py:968
msgid "Default supplier part"
msgstr "默认供应商商品"
-#: part/models.py:974
+#: part/models.py:975
msgid "Default Expiry"
msgstr ""
-#: part/models.py:975
+#: part/models.py:976
msgid "Expiry time (in days) for stock items of this part"
msgstr ""
-#: part/models.py:981
+#: part/models.py:982
msgid "Minimum allowed stock level"
msgstr "允许的最小库存量"
-#: part/models.py:988
+#: part/models.py:989
msgid "Units of measure for this part"
msgstr "该部件的计量单位"
-#: part/models.py:997
+#: part/models.py:998
msgid "Can this part be built from other parts?"
msgstr ""
-#: part/models.py:1003
+#: part/models.py:1004
msgid "Can this part be used to build other parts?"
msgstr ""
-#: part/models.py:1009
+#: part/models.py:1010
msgid "Does this part have tracking for unique items?"
msgstr ""
-#: part/models.py:1014
+#: part/models.py:1015
msgid "Can this part be purchased from external suppliers?"
msgstr ""
-#: part/models.py:1019
+#: part/models.py:1020
msgid "Can this part be sold to customers?"
msgstr "此商品可以销售给客户吗?"
-#: part/models.py:1024
+#: part/models.py:1025
msgid "Is this part active?"
msgstr ""
-#: part/models.py:1029
+#: part/models.py:1030
msgid "Is this a virtual part, such as a software product or license?"
msgstr "这是一个虚拟商品,如软件产品或许可证吗?"
-#: part/models.py:1031
+#: part/models.py:1032
msgid "BOM checksum"
msgstr ""
-#: part/models.py:1031
+#: part/models.py:1032
msgid "Stored BOM checksum"
msgstr ""
-#: part/models.py:1034
+#: part/models.py:1035
msgid "BOM checked by"
msgstr ""
-#: part/models.py:1036
+#: part/models.py:1037
msgid "BOM checked date"
msgstr ""
-#: part/models.py:1040
+#: part/models.py:1041
msgid "Creation User"
msgstr "新建用户"
-#: part/models.py:1042
+#: part/models.py:1043
msgid "User responsible for this part"
msgstr ""
-#: part/models.py:1046 part/templates/part/part_base.html:341
+#: part/models.py:1047 part/templates/part/part_base.html:341
#: stock/templates/stock/item_base.html:447
-#: templates/js/translated/part.js:2331
+#: templates/js/translated/part.js:2407
msgid "Last Stocktake"
msgstr ""
-#: part/models.py:1921
+#: part/models.py:1923
msgid "Sell multiple"
msgstr ""
-#: part/models.py:2853
+#: part/models.py:2887
msgid "Currency used to cache pricing calculations"
msgstr ""
-#: part/models.py:2870
+#: part/models.py:2904
msgid "Minimum BOM Cost"
msgstr ""
-#: part/models.py:2871
+#: part/models.py:2905
msgid "Minimum cost of component parts"
msgstr ""
-#: part/models.py:2876
+#: part/models.py:2910
msgid "Maximum BOM Cost"
msgstr ""
-#: part/models.py:2877
+#: part/models.py:2911
msgid "Maximum cost of component parts"
msgstr ""
-#: part/models.py:2882
+#: part/models.py:2916
msgid "Minimum Purchase Cost"
msgstr "最低购买成本"
-#: part/models.py:2883
+#: part/models.py:2917
msgid "Minimum historical purchase cost"
msgstr ""
-#: part/models.py:2888
+#: part/models.py:2922
msgid "Maximum Purchase Cost"
msgstr "最大购买成本"
-#: part/models.py:2889
+#: part/models.py:2923
msgid "Maximum historical purchase cost"
msgstr "最高历史购买成本"
-#: part/models.py:2894
+#: part/models.py:2928
msgid "Minimum Internal Price"
msgstr "最低内部价格"
-#: part/models.py:2895
+#: part/models.py:2929
msgid "Minimum cost based on internal price breaks"
msgstr ""
-#: part/models.py:2900
+#: part/models.py:2934
msgid "Maximum Internal Price"
msgstr "最大内部价格"
-#: part/models.py:2901
+#: part/models.py:2935
msgid "Maximum cost based on internal price breaks"
msgstr ""
-#: part/models.py:2906
+#: part/models.py:2940
msgid "Minimum Supplier Price"
msgstr ""
-#: part/models.py:2907
+#: part/models.py:2941
msgid "Minimum price of part from external suppliers"
msgstr ""
-#: part/models.py:2912
+#: part/models.py:2946
msgid "Maximum Supplier Price"
msgstr ""
-#: part/models.py:2913
+#: part/models.py:2947
msgid "Maximum price of part from external suppliers"
msgstr ""
-#: part/models.py:2918
+#: part/models.py:2952
msgid "Minimum Variant Cost"
msgstr ""
-#: part/models.py:2919
+#: part/models.py:2953
msgid "Calculated minimum cost of variant parts"
msgstr ""
-#: part/models.py:2924
+#: part/models.py:2958
msgid "Maximum Variant Cost"
msgstr ""
-#: part/models.py:2925
+#: part/models.py:2959
msgid "Calculated maximum cost of variant parts"
msgstr ""
-#: part/models.py:2931
+#: part/models.py:2965
msgid "Calculated overall minimum cost"
msgstr ""
-#: part/models.py:2937
+#: part/models.py:2971
msgid "Calculated overall maximum cost"
msgstr ""
-#: part/models.py:2942
+#: part/models.py:2976
msgid "Minimum Sale Price"
msgstr ""
-#: part/models.py:2943
+#: part/models.py:2977
msgid "Minimum sale price based on price breaks"
msgstr ""
-#: part/models.py:2948
+#: part/models.py:2982
msgid "Maximum Sale Price"
msgstr ""
-#: part/models.py:2949
+#: part/models.py:2983
msgid "Maximum sale price based on price breaks"
msgstr ""
-#: part/models.py:2954
+#: part/models.py:2988
msgid "Minimum Sale Cost"
msgstr ""
-#: part/models.py:2955
+#: part/models.py:2989
msgid "Minimum historical sale price"
msgstr ""
-#: part/models.py:2960
+#: part/models.py:2994
msgid "Maximum Sale Cost"
msgstr ""
-#: part/models.py:2961
+#: part/models.py:2995
msgid "Maximum historical sale price"
msgstr ""
-#: part/models.py:2980
+#: part/models.py:3014
msgid "Part for stocktake"
msgstr ""
-#: part/models.py:2985
+#: part/models.py:3019
msgid "Item Count"
msgstr ""
-#: part/models.py:2986
+#: part/models.py:3020
msgid "Number of individual stock entries at time of stocktake"
msgstr ""
-#: part/models.py:2993
+#: part/models.py:3027
msgid "Total available stock at time of stocktake"
msgstr ""
-#: part/models.py:2997 part/models.py:3080
+#: part/models.py:3031 part/models.py:3114
#: part/templates/part/part_scheduling.html:13
#: report/templates/report/inventree_test_report_base.html:106
#: templates/InvenTree/settings/plugin_settings.html:37
#: templates/InvenTree/settings/settings_staff_js.html:360
-#: templates/js/translated/part.js:1059 templates/js/translated/pricing.js:812
+#: templates/js/translated/part.js:1058 templates/js/translated/pricing.js:812
#: templates/js/translated/pricing.js:936
-#: templates/js/translated/purchase_order.js:1691
-#: templates/js/translated/stock.js:2558
+#: templates/js/translated/purchase_order.js:1706
+#: templates/js/translated/stock.js:2689
msgid "Date"
msgstr "日期"
-#: part/models.py:2998
+#: part/models.py:3032
msgid "Date stocktake was performed"
msgstr ""
-#: part/models.py:3006
+#: part/models.py:3040
msgid "Additional notes"
msgstr "附加注释"
-#: part/models.py:3014
+#: part/models.py:3048
msgid "User who performed this stocktake"
msgstr ""
-#: part/models.py:3019
+#: part/models.py:3053
msgid "Minimum Stock Cost"
msgstr ""
-#: part/models.py:3020
+#: part/models.py:3054
msgid "Estimated minimum cost of stock on hand"
msgstr ""
-#: part/models.py:3025
+#: part/models.py:3059
msgid "Maximum Stock Cost"
msgstr ""
-#: part/models.py:3026
+#: part/models.py:3060
msgid "Estimated maximum cost of stock on hand"
msgstr ""
-#: part/models.py:3087 templates/InvenTree/settings/settings_staff_js.html:349
+#: part/models.py:3121 templates/InvenTree/settings/settings_staff_js.html:349
msgid "Report"
msgstr "报告"
-#: part/models.py:3088
+#: part/models.py:3122
msgid "Stocktake report file (generated internally)"
msgstr ""
-#: part/models.py:3093 templates/InvenTree/settings/settings_staff_js.html:356
+#: part/models.py:3127 templates/InvenTree/settings/settings_staff_js.html:356
msgid "Part Count"
msgstr ""
-#: part/models.py:3094
+#: part/models.py:3128
msgid "Number of parts covered by stocktake"
msgstr ""
-#: part/models.py:3102
+#: part/models.py:3136
msgid "User who requested this stocktake report"
msgstr ""
-#: part/models.py:3238
+#: part/models.py:3272
msgid "Test templates can only be created for trackable parts"
msgstr ""
-#: part/models.py:3255
+#: part/models.py:3289
msgid "Test with this name already exists for this part"
msgstr ""
-#: part/models.py:3275 templates/js/translated/part.js:2821
+#: part/models.py:3309 templates/js/translated/part.js:2806
msgid "Test Name"
msgstr ""
-#: part/models.py:3276
+#: part/models.py:3310
msgid "Enter a name for the test"
msgstr ""
-#: part/models.py:3281
+#: part/models.py:3315
msgid "Test Description"
msgstr ""
-#: part/models.py:3282
+#: part/models.py:3316
msgid "Enter description for this test"
msgstr ""
-#: part/models.py:3287 templates/js/translated/part.js:2830
-#: templates/js/translated/table_filters.js:423
+#: part/models.py:3321 templates/js/translated/part.js:2815
+#: templates/js/translated/table_filters.js:429
msgid "Required"
msgstr ""
-#: part/models.py:3288
+#: part/models.py:3322
msgid "Is this test required to pass?"
msgstr ""
-#: part/models.py:3293 templates/js/translated/part.js:2838
+#: part/models.py:3327 templates/js/translated/part.js:2823
msgid "Requires Value"
msgstr ""
-#: part/models.py:3294
+#: part/models.py:3328
msgid "Does this test require a value when adding a test result?"
msgstr ""
-#: part/models.py:3299 templates/js/translated/part.js:2845
+#: part/models.py:3333 templates/js/translated/part.js:2830
msgid "Requires Attachment"
msgstr ""
-#: part/models.py:3300
+#: part/models.py:3334
msgid "Does this test require a file attachment when adding a test result?"
msgstr ""
-#: part/models.py:3346
+#: part/models.py:3380
msgid "Checkbox parameters cannot have units"
msgstr ""
-#: part/models.py:3351
+#: part/models.py:3385
msgid "Checkbox parameters cannot have choices"
msgstr ""
-#: part/models.py:3369
+#: part/models.py:3403
msgid "Choices must be unique"
msgstr ""
-#: part/models.py:3385
+#: part/models.py:3419
msgid "Parameter template name must be unique"
msgstr ""
-#: part/models.py:3401
+#: part/models.py:3435
msgid "Parameter Name"
msgstr ""
-#: part/models.py:3407
+#: part/models.py:3441
msgid "Physical units for this parameter"
msgstr ""
-#: part/models.py:3417
+#: part/models.py:3451
msgid "Parameter description"
msgstr ""
-#: part/models.py:3423 templates/js/translated/part.js:1600
-#: templates/js/translated/table_filters.js:734
+#: part/models.py:3457 templates/js/translated/part.js:1599
+#: templates/js/translated/table_filters.js:756
msgid "Checkbox"
msgstr ""
-#: part/models.py:3424
+#: part/models.py:3458
msgid "Is this parameter a checkbox?"
msgstr ""
-#: part/models.py:3429 templates/js/translated/part.js:1609
+#: part/models.py:3463 templates/js/translated/part.js:1608
msgid "Choices"
msgstr ""
-#: part/models.py:3430
+#: part/models.py:3464
msgid "Valid choices for this parameter (comma-separated)"
msgstr ""
-#: part/models.py:3511
+#: part/models.py:3545
msgid "Invalid choice for parameter value"
msgstr ""
-#: part/models.py:3555
+#: part/models.py:3589
msgid "Parent Part"
msgstr ""
-#: part/models.py:3560 part/models.py:3621 part/models.py:3622
+#: part/models.py:3594 part/models.py:3670 part/models.py:3671
#: templates/InvenTree/settings/settings_staff_js.html:199
msgid "Parameter Template"
msgstr "参数模板"
-#: part/models.py:3565
+#: part/models.py:3599
msgid "Data"
msgstr ""
-#: part/models.py:3565
+#: part/models.py:3599
msgid "Parameter Value"
msgstr ""
-#: part/models.py:3626 templates/InvenTree/settings/settings_staff_js.html:208
+#: part/models.py:3675 templates/InvenTree/settings/settings_staff_js.html:208
msgid "Default Value"
msgstr "默认值"
-#: part/models.py:3627
+#: part/models.py:3676
msgid "Default Parameter Value"
msgstr ""
-#: part/models.py:3664
+#: part/models.py:3713
msgid "Part ID or part name"
msgstr ""
-#: part/models.py:3668
+#: part/models.py:3717
msgid "Unique part ID value"
msgstr ""
-#: part/models.py:3676
+#: part/models.py:3725
msgid "Part IPN value"
msgstr ""
-#: part/models.py:3679
+#: part/models.py:3728
msgid "Level"
msgstr ""
-#: part/models.py:3680
+#: part/models.py:3729
msgid "BOM level"
msgstr ""
-#: part/models.py:3764
+#: part/models.py:3735 part/models.py:4113
+msgid "BOM Item"
+msgstr "BOM项"
+
+#: part/models.py:3808
msgid "Select parent part"
msgstr ""
-#: part/models.py:3772
+#: part/models.py:3816
msgid "Sub part"
msgstr "子部件"
-#: part/models.py:3773
+#: part/models.py:3817
msgid "Select part to be used in BOM"
msgstr ""
-#: part/models.py:3779
+#: part/models.py:3823
msgid "BOM quantity for this BOM item"
msgstr ""
-#: part/models.py:3783 part/templates/part/upload_bom.html:58
-#: templates/js/translated/bom.js:971 templates/js/translated/bom.js:998
-#: templates/js/translated/build.js:2113
-#: templates/js/translated/table_filters.js:156
-#: templates/js/translated/table_filters.js:185
-#: templates/js/translated/table_filters.js:500
-msgid "Optional"
-msgstr "可选项"
-
-#: part/models.py:3784
+#: part/models.py:3828
msgid "This BOM item is optional"
msgstr ""
-#: part/models.py:3789 templates/js/translated/bom.js:967
-#: templates/js/translated/bom.js:1007 templates/js/translated/build.js:2104
-#: templates/js/translated/table_filters.js:160
-#: templates/js/translated/table_filters.js:496
-msgid "Consumable"
-msgstr ""
-
-#: part/models.py:3790
+#: part/models.py:3834
msgid "This BOM item is consumable (it is not tracked in build orders)"
msgstr ""
-#: part/models.py:3794 part/templates/part/upload_bom.html:55
+#: part/models.py:3838 part/templates/part/upload_bom.html:55
msgid "Overage"
msgstr ""
-#: part/models.py:3795
+#: part/models.py:3839
msgid "Estimated build wastage quantity (absolute or percentage)"
msgstr ""
-#: part/models.py:3798
+#: part/models.py:3842
msgid "BOM item reference"
msgstr ""
-#: part/models.py:3801
+#: part/models.py:3845
msgid "BOM item notes"
msgstr ""
-#: part/models.py:3805
+#: part/models.py:3849
msgid "Checksum"
msgstr ""
-#: part/models.py:3805
+#: part/models.py:3849
msgid "BOM line checksum"
msgstr ""
-#: part/models.py:3810 templates/js/translated/table_filters.js:144
+#: part/models.py:3854 templates/js/translated/table_filters.js:150
msgid "Validated"
msgstr ""
-#: part/models.py:3811
+#: part/models.py:3855
msgid "This BOM item has been validated"
msgstr ""
-#: part/models.py:3816 part/templates/part/upload_bom.html:57
-#: templates/js/translated/bom.js:1024
-#: templates/js/translated/table_filters.js:148
-#: templates/js/translated/table_filters.js:181
+#: part/models.py:3860 part/templates/part/upload_bom.html:57
+#: templates/js/translated/bom.js:1042
+#: templates/js/translated/table_filters.js:154
+#: templates/js/translated/table_filters.js:187
msgid "Gets inherited"
msgstr ""
-#: part/models.py:3817
+#: part/models.py:3861
msgid "This BOM item is inherited by BOMs for variant parts"
msgstr ""
-#: part/models.py:3822 part/templates/part/upload_bom.html:56
-#: templates/js/translated/bom.js:1016
+#: part/models.py:3866 part/templates/part/upload_bom.html:56
+#: templates/js/translated/bom.js:1034
msgid "Allow Variants"
msgstr ""
-#: part/models.py:3823
+#: part/models.py:3867
msgid "Stock items for variant parts can be used for this BOM item"
msgstr ""
-#: part/models.py:3909 stock/models.py:577
+#: part/models.py:3953 stock/models.py:577
msgid "Quantity must be integer value for trackable parts"
msgstr ""
-#: part/models.py:3918 part/models.py:3920
+#: part/models.py:3962 part/models.py:3964
msgid "Sub part must be specified"
msgstr ""
-#: part/models.py:4036
+#: part/models.py:4080
msgid "BOM Item Substitute"
msgstr ""
-#: part/models.py:4057
+#: part/models.py:4101
msgid "Substitute part cannot be the same as the master part"
msgstr ""
-#: part/models.py:4070
+#: part/models.py:4114
msgid "Parent BOM item"
msgstr ""
-#: part/models.py:4078
+#: part/models.py:4122
msgid "Substitute part"
msgstr ""
-#: part/models.py:4093
+#: part/models.py:4137
msgid "Part 1"
msgstr ""
-#: part/models.py:4097
+#: part/models.py:4141
msgid "Part 2"
msgstr ""
-#: part/models.py:4097
+#: part/models.py:4141
msgid "Select Related Part"
msgstr "选择相关的部件"
-#: part/models.py:4115
+#: part/models.py:4159
msgid "Part relationship cannot be created between a part and itself"
msgstr ""
-#: part/models.py:4119
+#: part/models.py:4163
msgid "Duplicate relationship already exists"
msgstr ""
-#: part/serializers.py:152 part/serializers.py:175 stock/serializers.py:257
+#: part/serializers.py:152 part/serializers.py:175 stock/serializers.py:319
msgid "Purchase currency of this stock item"
msgstr ""
-#: part/serializers.py:302
+#: part/serializers.py:313
+msgid "No parts selected"
+msgstr ""
+
+#: part/serializers.py:321
+msgid "Select category"
+msgstr ""
+
+#: part/serializers.py:352
msgid "Original Part"
msgstr ""
-#: part/serializers.py:302
+#: part/serializers.py:352
msgid "Select original part to duplicate"
msgstr ""
-#: part/serializers.py:307
+#: part/serializers.py:357
msgid "Copy Image"
msgstr "复制图像"
-#: part/serializers.py:307
+#: part/serializers.py:357
msgid "Copy image from original part"
msgstr "从原部件复制图像"
-#: part/serializers.py:312 part/templates/part/detail.html:296
+#: part/serializers.py:362 part/templates/part/detail.html:277
msgid "Copy BOM"
msgstr ""
-#: part/serializers.py:312
+#: part/serializers.py:362
msgid "Copy bill of materials from original part"
msgstr ""
-#: part/serializers.py:317
+#: part/serializers.py:367
msgid "Copy Parameters"
msgstr ""
-#: part/serializers.py:317
+#: part/serializers.py:367
msgid "Copy parameter data from original part"
msgstr ""
-#: part/serializers.py:327
+#: part/serializers.py:377
msgid "Initial Stock Quantity"
msgstr ""
-#: part/serializers.py:327
+#: part/serializers.py:377
msgid "Specify initial stock quantity for this Part. If quantity is zero, no stock is added."
msgstr ""
-#: part/serializers.py:333
+#: part/serializers.py:383
msgid "Initial Stock Location"
msgstr ""
-#: part/serializers.py:333
+#: part/serializers.py:383
msgid "Specify initial stock location for this Part"
msgstr ""
-#: part/serializers.py:343
+#: part/serializers.py:393
msgid "Select supplier (or leave blank to skip)"
msgstr ""
-#: part/serializers.py:354
+#: part/serializers.py:404
msgid "Select manufacturer (or leave blank to skip)"
msgstr ""
-#: part/serializers.py:360
+#: part/serializers.py:410
msgid "Manufacturer part number"
msgstr ""
-#: part/serializers.py:367
+#: part/serializers.py:417
msgid "Selected company is not a valid supplier"
msgstr ""
-#: part/serializers.py:375
+#: part/serializers.py:425
msgid "Selected company is not a valid manufacturer"
msgstr ""
-#: part/serializers.py:387
+#: part/serializers.py:437
msgid "Manufacturer part matching this MPN already exists"
msgstr ""
-#: part/serializers.py:395
+#: part/serializers.py:445
msgid "Supplier part matching this SKU already exists"
msgstr ""
-#: part/serializers.py:620 part/templates/part/copy_part.html:9
-#: templates/js/translated/part.js:449
+#: part/serializers.py:682 part/templates/part/copy_part.html:9
+#: templates/js/translated/part.js:448
msgid "Duplicate Part"
msgstr "复制部件"
-#: part/serializers.py:620
+#: part/serializers.py:682
msgid "Copy initial data from another Part"
msgstr ""
-#: part/serializers.py:625 templates/js/translated/part.js:103
+#: part/serializers.py:687 templates/js/translated/part.js:102
msgid "Initial Stock"
msgstr ""
-#: part/serializers.py:625
+#: part/serializers.py:687
msgid "Create Part with initial stock quantity"
msgstr ""
-#: part/serializers.py:630
+#: part/serializers.py:692
msgid "Supplier Information"
msgstr "供应商信息"
-#: part/serializers.py:630
+#: part/serializers.py:692
msgid "Add initial supplier information for this part"
msgstr ""
-#: part/serializers.py:636
+#: part/serializers.py:698
msgid "Copy Category Parameters"
msgstr "复制类别参数"
-#: part/serializers.py:637
+#: part/serializers.py:699
msgid "Copy parameter templates from selected part category"
msgstr ""
-#: part/serializers.py:842
+#: part/serializers.py:904
msgid "Limit stocktake report to a particular part, and any variant parts"
msgstr ""
-#: part/serializers.py:848
+#: part/serializers.py:910
msgid "Limit stocktake report to a particular part category, and any child categories"
msgstr ""
-#: part/serializers.py:854
+#: part/serializers.py:916
msgid "Limit stocktake report to a particular stock location, and any child locations"
msgstr ""
-#: part/serializers.py:859
+#: part/serializers.py:921
msgid "Generate Report"
msgstr ""
-#: part/serializers.py:860
+#: part/serializers.py:922
msgid "Generate report file containing calculated stocktake data"
msgstr ""
-#: part/serializers.py:865
+#: part/serializers.py:927
msgid "Update Parts"
msgstr ""
-#: part/serializers.py:866
+#: part/serializers.py:928
msgid "Update specified parts with calculated stocktake data"
msgstr ""
-#: part/serializers.py:874
+#: part/serializers.py:936
msgid "Stocktake functionality is not enabled"
msgstr ""
-#: part/serializers.py:963
+#: part/serializers.py:1025
msgid "Update"
msgstr "更新"
-#: part/serializers.py:964
+#: part/serializers.py:1026
msgid "Update pricing for this part"
msgstr ""
-#: part/serializers.py:1246
+#: part/serializers.py:1308
msgid "Select part to copy BOM from"
msgstr ""
-#: part/serializers.py:1254
+#: part/serializers.py:1316
msgid "Remove Existing Data"
msgstr "移除现有数据"
-#: part/serializers.py:1255
+#: part/serializers.py:1317
msgid "Remove existing BOM items before copying"
msgstr ""
-#: part/serializers.py:1260
+#: part/serializers.py:1322
msgid "Include Inherited"
msgstr ""
-#: part/serializers.py:1261
+#: part/serializers.py:1323
msgid "Include BOM items which are inherited from templated parts"
msgstr ""
-#: part/serializers.py:1266
+#: part/serializers.py:1328
msgid "Skip Invalid Rows"
msgstr ""
-#: part/serializers.py:1267
+#: part/serializers.py:1329
msgid "Enable this option to skip invalid rows"
msgstr ""
-#: part/serializers.py:1272
+#: part/serializers.py:1334
msgid "Copy Substitute Parts"
msgstr ""
-#: part/serializers.py:1273
+#: part/serializers.py:1335
msgid "Copy substitute parts when duplicate BOM items"
msgstr ""
-#: part/serializers.py:1313
+#: part/serializers.py:1375
msgid "Clear Existing BOM"
msgstr ""
-#: part/serializers.py:1314
+#: part/serializers.py:1376
msgid "Delete existing BOM items before uploading"
msgstr ""
-#: part/serializers.py:1344
+#: part/serializers.py:1406
msgid "No part column specified"
msgstr ""
-#: part/serializers.py:1387
+#: part/serializers.py:1449
msgid "Multiple matching parts found"
msgstr ""
-#: part/serializers.py:1390
+#: part/serializers.py:1452
msgid "No matching part found"
msgstr ""
-#: part/serializers.py:1393
+#: part/serializers.py:1455
msgid "Part is not designated as a component"
msgstr ""
-#: part/serializers.py:1402
+#: part/serializers.py:1464
msgid "Quantity not provided"
msgstr "未提供数量"
-#: part/serializers.py:1410
+#: part/serializers.py:1472
msgid "Invalid quantity"
msgstr ""
-#: part/serializers.py:1431
+#: part/serializers.py:1493
msgid "At least one BOM item is required"
msgstr ""
@@ -6421,9 +6453,9 @@ msgstr ""
msgid "The available stock for {part.name} has fallen below the configured minimum level"
msgstr ""
-#: part/tasks.py:294 templates/js/translated/part.js:1040
-#: templates/js/translated/part.js:1793 templates/js/translated/part.js:1848
-#: templates/js/translated/purchase_order.js:2052
+#: part/tasks.py:294 templates/js/translated/part.js:1039
+#: templates/js/translated/part.js:1792 templates/js/translated/part.js:1847
+#: templates/js/translated/purchase_order.js:2062
msgid "Total Quantity"
msgstr "总数量"
@@ -6461,14 +6493,6 @@ msgstr ""
msgid "The BOM for %(part)s has not been validated."
msgstr ""
-#: part/templates/part/bom.html:30 part/templates/part/detail.html:291
-msgid "BOM actions"
-msgstr ""
-
-#: part/templates/part/bom.html:34
-msgid "Delete Items"
-msgstr ""
-
#: part/templates/part/category.html:34
msgid "Perform stocktake for this part category"
msgstr ""
@@ -6505,7 +6529,7 @@ msgstr "删除类别"
msgid "Top level part category"
msgstr ""
-#: part/templates/part/category.html:121 part/templates/part/category.html:225
+#: part/templates/part/category.html:121 part/templates/part/category.html:206
#: part/templates/part/category_sidebar.html:7
msgid "Subcategories"
msgstr "子类别"
@@ -6518,33 +6542,20 @@ msgstr "商品 (包括子类别)"
msgid "Create new part"
msgstr "新建商品"
-#: part/templates/part/category.html:165 templates/js/translated/bom.js:443
+#: part/templates/part/category.html:165 templates/js/translated/bom.js:444
msgid "New Part"
msgstr "新商品"
-#: part/templates/part/category.html:175 part/templates/part/detail.html:390
-#: part/templates/part/detail.html:421
-msgid "Options"
-msgstr "选项"
-
-#: part/templates/part/category.html:179
-msgid "Set category"
-msgstr "设置类别"
-
-#: part/templates/part/category.html:180
-msgid "Set Category"
-msgstr "设置类别"
-
-#: part/templates/part/category.html:208
+#: part/templates/part/category.html:191
#: templates/InvenTree/settings/sidebar.html:47
msgid "Part Parameters"
msgstr "商品参数"
-#: part/templates/part/category.html:229
+#: part/templates/part/category.html:210
msgid "Create new part category"
msgstr "新建商品类别"
-#: part/templates/part/category.html:230
+#: part/templates/part/category.html:211
msgid "New Category"
msgstr "新建分类"
@@ -6581,7 +6592,7 @@ msgid "Refresh scheduling data"
msgstr ""
#: part/templates/part/detail.html:45 part/templates/part/prices.html:15
-#: templates/js/translated/tables.js:584
+#: templates/js/translated/tables.js:560
msgid "Refresh"
msgstr ""
@@ -6592,7 +6603,7 @@ msgstr ""
#: part/templates/part/detail.html:67 part/templates/part/part_sidebar.html:50
#: stock/admin.py:130 templates/InvenTree/settings/part_stocktake.html:29
#: templates/InvenTree/settings/sidebar.html:51
-#: templates/js/translated/stock.js:1952 users/models.py:39
+#: templates/js/translated/stock.js:2109 users/models.py:39
msgid "Stocktake"
msgstr ""
@@ -6604,101 +6615,101 @@ msgstr ""
msgid "Add Test Template"
msgstr ""
-#: part/templates/part/detail.html:145 stock/templates/stock/item.html:53
+#: part/templates/part/detail.html:139 stock/templates/stock/item.html:49
msgid "Sales Order Allocations"
msgstr ""
-#: part/templates/part/detail.html:165
+#: part/templates/part/detail.html:156
msgid "Part Notes"
msgstr ""
-#: part/templates/part/detail.html:180
+#: part/templates/part/detail.html:171
msgid "Part Variants"
msgstr ""
-#: part/templates/part/detail.html:184
+#: part/templates/part/detail.html:175
msgid "Create new variant"
msgstr ""
-#: part/templates/part/detail.html:185
+#: part/templates/part/detail.html:176
msgid "New Variant"
msgstr ""
-#: part/templates/part/detail.html:212
+#: part/templates/part/detail.html:199
msgid "Add new parameter"
msgstr ""
-#: part/templates/part/detail.html:249 part/templates/part/part_sidebar.html:58
+#: part/templates/part/detail.html:232 part/templates/part/part_sidebar.html:58
msgid "Related Parts"
msgstr "相关部件"
-#: part/templates/part/detail.html:253 part/templates/part/detail.html:254
+#: part/templates/part/detail.html:236 part/templates/part/detail.html:237
msgid "Add Related"
msgstr ""
-#: part/templates/part/detail.html:274 part/templates/part/part_sidebar.html:17
+#: part/templates/part/detail.html:255 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:279
+#: part/templates/part/detail.html:260
msgid "Export actions"
msgstr ""
-#: part/templates/part/detail.html:283 templates/js/translated/bom.js:339
+#: part/templates/part/detail.html:264 templates/js/translated/bom.js:340
msgid "Export BOM"
msgstr ""
-#: part/templates/part/detail.html:285
+#: part/templates/part/detail.html:266
msgid "Print BOM Report"
msgstr ""
-#: part/templates/part/detail.html:295
+#: part/templates/part/detail.html:272
+msgid "BOM actions"
+msgstr ""
+
+#: part/templates/part/detail.html:276
msgid "Upload BOM"
msgstr ""
-#: part/templates/part/detail.html:297
+#: part/templates/part/detail.html:278
msgid "Validate BOM"
msgstr ""
-#: part/templates/part/detail.html:302 part/templates/part/detail.html:303
-#: templates/js/translated/bom.js:1279 templates/js/translated/bom.js:1280
+#: part/templates/part/detail.html:283 part/templates/part/detail.html:284
+#: templates/js/translated/bom.js:1299 templates/js/translated/bom.js:1300
msgid "Add BOM Item"
msgstr ""
-#: part/templates/part/detail.html:316
+#: part/templates/part/detail.html:297
msgid "Assemblies"
msgstr ""
-#: part/templates/part/detail.html:334
+#: part/templates/part/detail.html:313
msgid "Part Builds"
msgstr ""
-#: part/templates/part/detail.html:361 stock/templates/stock/item.html:38
+#: part/templates/part/detail.html:338 stock/templates/stock/item.html:36
msgid "Build Order Allocations"
msgstr ""
-#: part/templates/part/detail.html:377
+#: part/templates/part/detail.html:352
msgid "Part Suppliers"
msgstr "商品供应商"
-#: part/templates/part/detail.html:407
+#: part/templates/part/detail.html:372
msgid "Part Manufacturers"
msgstr "商品制造商"
-#: part/templates/part/detail.html:423
-msgid "Delete manufacturer parts"
-msgstr "删除制造商商品"
-
-#: part/templates/part/detail.html:707
+#: part/templates/part/detail.html:654
msgid "Related Part"
msgstr ""
-#: part/templates/part/detail.html:715
+#: part/templates/part/detail.html:662
msgid "Add Related Part"
msgstr ""
-#: part/templates/part/detail.html:800
+#: part/templates/part/detail.html:747
msgid "Add Test Result Template"
msgstr ""
@@ -6732,13 +6743,13 @@ msgid "Download Part Import Template"
msgstr ""
#: part/templates/part/import_wizard/part_upload.html:92
-#: templates/js/translated/bom.js:308 templates/js/translated/bom.js:342
+#: templates/js/translated/bom.js:309 templates/js/translated/bom.js:343
#: templates/js/translated/order.js:129 templates/js/translated/tables.js:189
msgid "Format"
msgstr "格式"
#: part/templates/part/import_wizard/part_upload.html:93
-#: templates/js/translated/bom.js:309 templates/js/translated/bom.js:343
+#: templates/js/translated/bom.js:310 templates/js/translated/bom.js:344
#: templates/js/translated/order.js:130
msgid "Select file format"
msgstr ""
@@ -6779,7 +6790,7 @@ msgstr "清点商品库存"
msgid "Transfer part stock"
msgstr ""
-#: part/templates/part/part_base.html:93
+#: part/templates/part/part_base.html:93 templates/js/translated/part.js:2264
msgid "Part actions"
msgstr ""
@@ -6824,10 +6835,10 @@ msgid "Part is not active"
msgstr ""
#: part/templates/part/part_base.html:148
-#: templates/js/translated/company.js:945
-#: templates/js/translated/company.js:1185
-#: templates/js/translated/model_renderers.js:273
-#: templates/js/translated/part.js:792 templates/js/translated/part.js:1192
+#: templates/js/translated/company.js:1318
+#: templates/js/translated/company.js:1606
+#: templates/js/translated/model_renderers.js:287
+#: templates/js/translated/part.js:791 templates/js/translated/part.js:1191
msgid "Inactive"
msgstr ""
@@ -6850,7 +6861,7 @@ msgstr ""
msgid "Allocated to Sales Orders"
msgstr ""
-#: part/templates/part/part_base.html:237 templates/js/translated/bom.js:1178
+#: part/templates/part/part_base.html:237 templates/js/translated/bom.js:1198
msgid "Can Build"
msgstr ""
@@ -6858,8 +6869,8 @@ msgstr ""
msgid "Minimum stock level"
msgstr ""
-#: part/templates/part/part_base.html:324 templates/js/translated/bom.js:1041
-#: templates/js/translated/part.js:1238 templates/js/translated/part.js:2304
+#: part/templates/part/part_base.html:324 templates/js/translated/bom.js:1059
+#: templates/js/translated/part.js:1237 templates/js/translated/part.js:2380
#: templates/js/translated/pricing.js:391
#: templates/js/translated/pricing.js:1040
msgid "Price Range"
@@ -6882,7 +6893,7 @@ msgstr "商品二维码"
msgid "Link Barcode to Part"
msgstr ""
-#: part/templates/part/part_base.html:474 templates/js/translated/part.js:2191
+#: part/templates/part/part_base.html:474 templates/js/translated/part.js:2258
msgid "part"
msgstr ""
@@ -6956,9 +6967,9 @@ msgstr ""
#: stock/templates/stock/stock_app_base.html:10
#: templates/InvenTree/search.html:153
#: templates/InvenTree/settings/sidebar.html:49
-#: templates/js/translated/part.js:1216 templates/js/translated/part.js:2120
-#: templates/js/translated/part.js:2284 templates/js/translated/stock.js:1022
-#: templates/js/translated/stock.js:1829 templates/navbar.html:31
+#: templates/js/translated/part.js:1215 templates/js/translated/part.js:2119
+#: templates/js/translated/part.js:2360 templates/js/translated/stock.js:1021
+#: templates/js/translated/stock.js:1986 templates/navbar.html:31
msgid "Stock"
msgstr "库存"
@@ -6989,9 +7000,9 @@ msgstr ""
#: part/templates/part/prices.html:25 stock/admin.py:129
#: stock/templates/stock/item_base.html:442
-#: templates/js/translated/company.js:1313
-#: templates/js/translated/company.js:1323
-#: templates/js/translated/stock.js:1982
+#: templates/js/translated/company.js:1734
+#: templates/js/translated/company.js:1744
+#: templates/js/translated/stock.js:2139
msgid "Last Updated"
msgstr "最后更新"
@@ -7054,12 +7065,12 @@ msgstr ""
msgid "Add Sell Price Break"
msgstr ""
-#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:682
-#: templates/js/translated/part.js:2115 templates/js/translated/part.js:2117
+#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:681
+#: templates/js/translated/part.js:2114 templates/js/translated/part.js:2116
msgid "No Stock"
msgstr "无库存"
-#: part/templates/part/stock_count.html:9 templates/InvenTree/index.html:167
+#: part/templates/part/stock_count.html:9 templates/InvenTree/index.html:120
msgid "Low Stock"
msgstr "低库存"
@@ -7163,7 +7174,7 @@ msgid "Match found for barcode data"
msgstr "找到匹配条形码数据"
#: plugin/base/barcodes/api.py:120
-#: templates/js/translated/purchase_order.js:1372
+#: templates/js/translated/purchase_order.js:1387
msgid "Barcode matches existing item"
msgstr ""
@@ -7226,43 +7237,43 @@ msgstr ""
msgid "Open link"
msgstr ""
-#: plugin/models.py:27
+#: plugin/models.py:28
msgid "Plugin Configuration"
msgstr ""
-#: plugin/models.py:28
+#: plugin/models.py:29
msgid "Plugin Configurations"
msgstr ""
-#: plugin/models.py:33
+#: plugin/models.py:34
msgid "Key"
msgstr ""
-#: plugin/models.py:34
+#: plugin/models.py:35
msgid "Key of plugin"
msgstr ""
-#: plugin/models.py:42
+#: plugin/models.py:43
msgid "PluginName of the plugin"
msgstr ""
-#: plugin/models.py:48
+#: plugin/models.py:49
msgid "Is the plugin active"
msgstr ""
-#: plugin/models.py:124
+#: plugin/models.py:125
msgid "Sample plugin"
msgstr ""
-#: plugin/models.py:133
+#: plugin/models.py:134
msgid "Builtin Plugin"
msgstr ""
-#: plugin/models.py:159 templates/InvenTree/settings/plugin_settings.html:9
+#: plugin/models.py:160 templates/InvenTree/settings/plugin_settings.html:9
msgid "Plugin"
msgstr ""
-#: plugin/models.py:210
+#: plugin/models.py:211
msgid "Method"
msgstr ""
@@ -7414,47 +7425,47 @@ msgstr ""
msgid "Build query filters (comma-separated list of key=value pairs"
msgstr ""
-#: report/models.py:418
+#: report/models.py:420
msgid "Part Filters"
msgstr "商品过滤器"
-#: report/models.py:419
+#: report/models.py:421
msgid "Part query filters (comma-separated list of key=value pairs"
msgstr ""
-#: report/models.py:453
+#: report/models.py:455
msgid "Purchase order query filters"
msgstr ""
-#: report/models.py:491
+#: report/models.py:493
msgid "Sales order query filters"
msgstr ""
-#: report/models.py:529
+#: report/models.py:531
msgid "Return order query filters"
msgstr ""
-#: report/models.py:582
+#: report/models.py:584
msgid "Snippet"
msgstr ""
-#: report/models.py:583
+#: report/models.py:585
msgid "Report snippet file"
msgstr ""
-#: report/models.py:587
+#: report/models.py:589
msgid "Snippet file description"
msgstr ""
-#: report/models.py:624
+#: report/models.py:626
msgid "Asset"
msgstr ""
-#: report/models.py:625
+#: report/models.py:627
msgid "Report asset file"
msgstr ""
-#: report/models.py:632
+#: report/models.py:634
msgid "Asset file description"
msgstr ""
@@ -7475,8 +7486,8 @@ msgstr ""
#: templates/js/translated/order.js:316 templates/js/translated/pricing.js:527
#: templates/js/translated/pricing.js:596
#: templates/js/translated/pricing.js:820
-#: templates/js/translated/purchase_order.js:2083
-#: templates/js/translated/sales_order.js:1817
+#: templates/js/translated/purchase_order.js:2093
+#: templates/js/translated/sales_order.js:1829
msgid "Unit Price"
msgstr "单价"
@@ -7488,23 +7499,23 @@ msgstr ""
#: report/templates/report/inventree_po_report_base.html:72
#: report/templates/report/inventree_so_report_base.html:72
-#: templates/js/translated/purchase_order.js:1985
-#: templates/js/translated/sales_order.js:1792
+#: templates/js/translated/purchase_order.js:1995
+#: templates/js/translated/sales_order.js:1804
msgid "Total"
msgstr ""
#: report/templates/report/inventree_return_order_report_base.html:25
#: report/templates/report/inventree_test_report_base.html:88
#: stock/models.py:725 stock/templates/stock/item_base.html:312
-#: templates/js/translated/build.js:502 templates/js/translated/build.js:1423
-#: templates/js/translated/build.js:1989
-#: templates/js/translated/model_renderers.js:201
-#: templates/js/translated/return_order.js:528
-#: templates/js/translated/return_order.js:708
-#: templates/js/translated/sales_order.js:300
-#: templates/js/translated/sales_order.js:1597
-#: templates/js/translated/sales_order.js:1682
-#: templates/js/translated/stock.js:563
+#: templates/js/translated/build.js:508 templates/js/translated/build.js:1306
+#: templates/js/translated/build.js:2281
+#: templates/js/translated/model_renderers.js:215
+#: templates/js/translated/return_order.js:540
+#: templates/js/translated/return_order.js:720
+#: templates/js/translated/sales_order.js:312
+#: templates/js/translated/sales_order.js:1609
+#: templates/js/translated/sales_order.js:1694
+#: templates/js/translated/stock.js:562
msgid "Serial Number"
msgstr "序列号"
@@ -7517,7 +7528,7 @@ msgid "Test Results"
msgstr ""
#: report/templates/report/inventree_test_report_base.html:102
-#: stock/models.py:2243 templates/js/translated/stock.js:1419
+#: stock/models.py:2243 templates/js/translated/stock.js:1418
msgid "Test"
msgstr ""
@@ -7548,8 +7559,8 @@ msgid "Installed Items"
msgstr ""
#: report/templates/report/inventree_test_report_base.html:168
-#: stock/admin.py:104 templates/js/translated/stock.js:667
-#: templates/js/translated/stock.js:838 templates/js/translated/stock.js:2849
+#: stock/admin.py:104 templates/js/translated/stock.js:666
+#: templates/js/translated/stock.js:837 templates/js/translated/stock.js:2976
msgid "Serial"
msgstr ""
@@ -7617,31 +7628,31 @@ msgstr ""
#: stock/admin.py:131 stock/models.py:789
#: stock/templates/stock/item_base.html:429
-#: templates/js/translated/stock.js:1966
+#: templates/js/translated/stock.js:2123
msgid "Expiry Date"
msgstr ""
-#: stock/api.py:420 templates/js/translated/table_filters.js:373
+#: stock/api.py:426 templates/js/translated/table_filters.js:379
msgid "External Location"
msgstr ""
-#: stock/api.py:582
+#: stock/api.py:619
msgid "Quantity is required"
msgstr ""
-#: stock/api.py:589
+#: stock/api.py:626
msgid "Valid part must be supplied"
msgstr ""
-#: stock/api.py:615
+#: stock/api.py:652
msgid "The given supplier part does not exist"
msgstr ""
-#: stock/api.py:624
+#: stock/api.py:661
msgid "The supplier part has a pack size defined, but flag use_pack_size not set"
msgstr ""
-#: stock/api.py:642
+#: stock/api.py:679
msgid "Serial numbers cannot be supplied for a non-trackable part"
msgstr ""
@@ -7652,7 +7663,7 @@ msgid "Stock Location"
msgstr "仓储地点"
#: stock/models.py:55 stock/templates/stock/location.html:177
-#: templates/InvenTree/search.html:166 templates/js/translated/search.js:220
+#: templates/InvenTree/search.html:166 templates/js/translated/search.js:178
#: users/models.py:40
msgid "Stock Locations"
msgstr "仓储地点"
@@ -7670,8 +7681,8 @@ msgstr ""
msgid "Stock items may not be directly located into a structural stock locations, but may be located to child locations."
msgstr ""
-#: stock/models.py:132 templates/js/translated/stock.js:2529
-#: templates/js/translated/table_filters.js:213
+#: stock/models.py:132 templates/js/translated/stock.js:2660
+#: templates/js/translated/table_filters.js:219
msgid "External"
msgstr ""
@@ -7687,7 +7698,7 @@ msgstr ""
msgid "Stock items cannot be located into structural stock locations!"
msgstr ""
-#: stock/models.py:583 stock/serializers.py:174
+#: stock/models.py:583 stock/serializers.py:223
msgid "Stock item cannot be created for virtual parts"
msgstr ""
@@ -7821,7 +7832,7 @@ msgstr ""
msgid "Quantity does not match serial numbers"
msgstr ""
-#: stock/models.py:1403 stock/serializers.py:374
+#: stock/models.py:1403 stock/serializers.py:440
msgid "Serial numbers already exist"
msgstr "序列号已存在"
@@ -7849,7 +7860,7 @@ msgstr ""
msgid "Serialized stock cannot be merged"
msgstr ""
-#: stock/models.py:1496 stock/serializers.py:975
+#: stock/models.py:1496 stock/serializers.py:1092
msgid "Duplicate stock items"
msgstr ""
@@ -7901,132 +7912,141 @@ msgstr ""
msgid "Test notes"
msgstr ""
-#: stock/serializers.py:76
+#: stock/serializers.py:121
msgid "Serial number is too large"
msgstr ""
-#: stock/serializers.py:166
+#: stock/serializers.py:215
msgid "Use pack size when adding: the quantity defined is the number of packs"
msgstr ""
-#: stock/serializers.py:254
+#: stock/serializers.py:316
msgid "Purchase price of this stock item, per unit or pack"
msgstr ""
-#: stock/serializers.py:307
+#: stock/serializers.py:373
msgid "Enter number of stock items to serialize"
msgstr ""
-#: stock/serializers.py:319
+#: stock/serializers.py:385
#, python-brace-format
msgid "Quantity must not exceed available stock quantity ({q})"
msgstr ""
-#: stock/serializers.py:325
+#: stock/serializers.py:391
msgid "Enter serial numbers for new items"
msgstr "输入新项目的序列号"
-#: stock/serializers.py:336 stock/serializers.py:932 stock/serializers.py:1174
+#: stock/serializers.py:402 stock/serializers.py:1049 stock/serializers.py:1291
msgid "Destination stock location"
msgstr "目标库存位置"
-#: stock/serializers.py:343
+#: stock/serializers.py:409
msgid "Optional note field"
msgstr ""
-#: stock/serializers.py:353
+#: stock/serializers.py:419
msgid "Serial numbers cannot be assigned to this part"
msgstr ""
-#: stock/serializers.py:414
+#: stock/serializers.py:480
msgid "Select stock item to install"
msgstr ""
-#: stock/serializers.py:427
-msgid "Stock item is unavailable"
-msgstr ""
-
-#: stock/serializers.py:434
-msgid "Selected part is not in the Bill of Materials"
-msgstr ""
-
-#: stock/serializers.py:471
-msgid "Destination location for uninstalled item"
-msgstr ""
-
-#: stock/serializers.py:476 stock/serializers.py:557
+#: stock/serializers.py:485 stock/serializers.py:543 stock/serializers.py:624
+#: stock/serializers.py:682
msgid "Add transaction note (optional)"
msgstr "添加交易备注 (可选)"
-#: stock/serializers.py:510
+#: stock/serializers.py:494
+msgid "Stock item is unavailable"
+msgstr ""
+
+#: stock/serializers.py:501
+msgid "Selected part is not in the Bill of Materials"
+msgstr ""
+
+#: stock/serializers.py:538
+msgid "Destination location for uninstalled item"
+msgstr ""
+
+#: stock/serializers.py:577
msgid "Select part to convert stock item into"
msgstr ""
-#: stock/serializers.py:521
+#: stock/serializers.py:588
msgid "Selected part is not a valid option for conversion"
msgstr ""
-#: stock/serializers.py:552
+#: stock/serializers.py:619
msgid "Destination location for returned item"
msgstr ""
-#: stock/serializers.py:787
+#: stock/serializers.py:663
+msgid "Select stock items to change status"
+msgstr ""
+
+#: stock/serializers.py:670
+msgid "No stock items selected"
+msgstr ""
+
+#: stock/serializers.py:904
msgid "Part must be salable"
msgstr ""
-#: stock/serializers.py:791
+#: stock/serializers.py:908
msgid "Item is allocated to a sales order"
msgstr ""
-#: stock/serializers.py:795
+#: stock/serializers.py:912
msgid "Item is allocated to a build order"
msgstr ""
-#: stock/serializers.py:826
+#: stock/serializers.py:943
msgid "Customer to assign stock items"
msgstr ""
-#: stock/serializers.py:832
+#: stock/serializers.py:949
msgid "Selected company is not a customer"
msgstr ""
-#: stock/serializers.py:840
+#: stock/serializers.py:957
msgid "Stock assignment notes"
msgstr ""
-#: stock/serializers.py:850 stock/serializers.py:1081
+#: stock/serializers.py:967 stock/serializers.py:1198
msgid "A list of stock items must be provided"
msgstr ""
-#: stock/serializers.py:939
+#: stock/serializers.py:1056
msgid "Stock merging notes"
msgstr ""
-#: stock/serializers.py:944
+#: stock/serializers.py:1061
msgid "Allow mismatched suppliers"
msgstr ""
-#: stock/serializers.py:945
+#: stock/serializers.py:1062
msgid "Allow stock items with different supplier parts to be merged"
msgstr ""
-#: stock/serializers.py:950
+#: stock/serializers.py:1067
msgid "Allow mismatched status"
msgstr ""
-#: stock/serializers.py:951
+#: stock/serializers.py:1068
msgid "Allow stock items with different status codes to be merged"
msgstr ""
-#: stock/serializers.py:961
+#: stock/serializers.py:1078
msgid "At least two stock items must be provided"
msgstr ""
-#: stock/serializers.py:1043
+#: stock/serializers.py:1160
msgid "StockItem primary key value"
msgstr ""
-#: stock/serializers.py:1071
+#: stock/serializers.py:1188
msgid "Stock transaction notes"
msgstr ""
@@ -8034,48 +8054,48 @@ msgstr ""
msgid "Stock Tracking Information"
msgstr ""
-#: stock/templates/stock/item.html:69
+#: stock/templates/stock/item.html:63
msgid "Child Stock Items"
msgstr ""
-#: stock/templates/stock/item.html:77
+#: stock/templates/stock/item.html:71
msgid "This stock item does not have any child items"
msgstr ""
-#: stock/templates/stock/item.html:86
+#: stock/templates/stock/item.html:80
#: stock/templates/stock/stock_sidebar.html:12
msgid "Test Data"
msgstr ""
-#: stock/templates/stock/item.html:90 stock/templates/stock/item_base.html:66
+#: stock/templates/stock/item.html:84 stock/templates/stock/item_base.html:66
msgid "Test Report"
msgstr ""
-#: stock/templates/stock/item.html:94 stock/templates/stock/item.html:288
+#: stock/templates/stock/item.html:88 stock/templates/stock/item.html:278
msgid "Delete Test Data"
msgstr ""
-#: stock/templates/stock/item.html:98
+#: stock/templates/stock/item.html:92
msgid "Add Test Data"
msgstr ""
-#: stock/templates/stock/item.html:132
+#: stock/templates/stock/item.html:124
msgid "Stock Item Notes"
msgstr ""
-#: stock/templates/stock/item.html:147
+#: stock/templates/stock/item.html:139
msgid "Installed Stock Items"
msgstr ""
-#: stock/templates/stock/item.html:152 templates/js/translated/stock.js:2996
+#: stock/templates/stock/item.html:144 templates/js/translated/stock.js:3123
msgid "Install Stock Item"
msgstr ""
-#: stock/templates/stock/item.html:276
+#: stock/templates/stock/item.html:266
msgid "Delete all test results for this stock item"
msgstr ""
-#: stock/templates/stock/item.html:305 templates/js/translated/stock.js:1611
+#: stock/templates/stock/item.html:295 templates/js/translated/stock.js:1610
msgid "Add Test Result"
msgstr ""
@@ -8083,13 +8103,13 @@ msgstr ""
msgid "Locate stock item"
msgstr ""
-#: stock/templates/stock/item_base.html:52 templates/stock_table.html:21
+#: stock/templates/stock/item_base.html:52
msgid "Scan to Location"
msgstr ""
#: stock/templates/stock/item_base.html:60
#: stock/templates/stock/location.html:69
-#: templates/js/translated/filters.js:322
+#: templates/js/translated/filters.js:432
msgid "Printing actions"
msgstr ""
@@ -8098,15 +8118,17 @@ msgid "Stock adjustment actions"
msgstr ""
#: stock/templates/stock/item_base.html:80
-#: stock/templates/stock/location.html:88 templates/stock_table.html:35
+#: stock/templates/stock/location.html:88 templates/js/translated/stock.js:1735
msgid "Count stock"
msgstr ""
-#: stock/templates/stock/item_base.html:82 templates/stock_table.html:33
+#: stock/templates/stock/item_base.html:82
+#: templates/js/translated/stock.js:1717
msgid "Add stock"
msgstr ""
-#: stock/templates/stock/item_base.html:83 templates/stock_table.html:34
+#: stock/templates/stock/item_base.html:83
+#: templates/js/translated/stock.js:1726
msgid "Remove stock"
msgstr ""
@@ -8115,11 +8137,12 @@ msgid "Serialize stock"
msgstr ""
#: stock/templates/stock/item_base.html:89
-#: stock/templates/stock/location.html:94 templates/stock_table.html:36
+#: stock/templates/stock/location.html:94 templates/js/translated/stock.js:1744
msgid "Transfer stock"
msgstr ""
-#: stock/templates/stock/item_base.html:92 templates/stock_table.html:39
+#: stock/templates/stock/item_base.html:92
+#: templates/js/translated/stock.js:1798
msgid "Assign to customer"
msgstr ""
@@ -8159,6 +8182,11 @@ msgstr ""
msgid "Delete stock item"
msgstr ""
+#: stock/templates/stock/item_base.html:170 templates/InvenTree/search.html:139
+#: templates/js/translated/build.js:2046 templates/navbar.html:38
+msgid "Build"
+msgstr "生产"
+
#: stock/templates/stock/item_base.html:194
msgid "Parent Item"
msgstr ""
@@ -8221,7 +8249,7 @@ msgid "Available Quantity"
msgstr ""
#: stock/templates/stock/item_base.html:394
-#: templates/js/translated/build.js:2015
+#: templates/js/translated/build.js:2306
msgid "No location set"
msgstr "未设置仓储地点"
@@ -8239,7 +8267,7 @@ msgid "This StockItem expired on %(item.expiry_date)s"
msgstr ""
#: stock/templates/stock/item_base.html:433
-#: templates/js/translated/table_filters.js:381
+#: templates/js/translated/table_filters.js:387
msgid "Expired"
msgstr ""
@@ -8249,7 +8277,7 @@ msgid "This StockItem expires on %(item.expiry_date)s"
msgstr ""
#: stock/templates/stock/item_base.html:435
-#: templates/js/translated/table_filters.js:387
+#: templates/js/translated/table_filters.js:393
msgid "Stale"
msgstr ""
@@ -8258,7 +8286,7 @@ msgid "No stocktake performed"
msgstr ""
#: stock/templates/stock/item_base.html:503
-#: templates/js/translated/stock.js:1745
+#: templates/js/translated/stock.js:1865
msgid "stock item"
msgstr ""
@@ -8364,20 +8392,20 @@ msgstr "新建仓储地点"
msgid "New Location"
msgstr "新建仓储地点"
-#: stock/templates/stock/location.html:287
-#: templates/js/translated/stock.js:2318
+#: stock/templates/stock/location.html:278
+#: templates/js/translated/stock.js:2449
msgid "stock location"
msgstr ""
-#: stock/templates/stock/location.html:304
+#: stock/templates/stock/location.html:295
msgid "Scanned stock container into this location"
msgstr ""
-#: stock/templates/stock/location.html:377
+#: stock/templates/stock/location.html:368
msgid "Stock Location QR Code"
msgstr ""
-#: stock/templates/stock/location.html:388
+#: stock/templates/stock/location.html:379
msgid "Link Barcode to Stock Location"
msgstr ""
@@ -8451,71 +8479,71 @@ msgstr ""
msgid "Index"
msgstr ""
-#: templates/InvenTree/index.html:89
+#: templates/InvenTree/index.html:39
msgid "Subscribed Parts"
msgstr ""
-#: templates/InvenTree/index.html:102
+#: templates/InvenTree/index.html:53
msgid "Subscribed Categories"
msgstr ""
-#: templates/InvenTree/index.html:112
+#: templates/InvenTree/index.html:63
msgid "Latest Parts"
msgstr "最近商品"
-#: templates/InvenTree/index.html:126
+#: templates/InvenTree/index.html:78
msgid "BOM Waiting Validation"
msgstr ""
-#: templates/InvenTree/index.html:155
+#: templates/InvenTree/index.html:107
msgid "Recently Updated"
msgstr ""
-#: templates/InvenTree/index.html:180
+#: templates/InvenTree/index.html:134
msgid "Depleted Stock"
msgstr ""
-#: templates/InvenTree/index.html:193
+#: templates/InvenTree/index.html:148
msgid "Required for Build Orders"
msgstr ""
-#: templates/InvenTree/index.html:208
+#: templates/InvenTree/index.html:156
msgid "Expired Stock"
msgstr ""
-#: templates/InvenTree/index.html:222
+#: templates/InvenTree/index.html:172
msgid "Stale Stock"
msgstr ""
-#: templates/InvenTree/index.html:247
+#: templates/InvenTree/index.html:199
msgid "Build Orders In Progress"
msgstr ""
-#: templates/InvenTree/index.html:258
+#: templates/InvenTree/index.html:210
msgid "Overdue Build Orders"
msgstr ""
-#: templates/InvenTree/index.html:278
+#: templates/InvenTree/index.html:230
msgid "Outstanding Purchase Orders"
msgstr ""
-#: templates/InvenTree/index.html:289
+#: templates/InvenTree/index.html:241
msgid "Overdue Purchase Orders"
msgstr ""
-#: templates/InvenTree/index.html:310
+#: templates/InvenTree/index.html:262
msgid "Outstanding Sales Orders"
msgstr ""
-#: templates/InvenTree/index.html:321
+#: templates/InvenTree/index.html:273
msgid "Overdue Sales Orders"
msgstr ""
-#: templates/InvenTree/index.html:347
+#: templates/InvenTree/index.html:299
msgid "InvenTree News"
msgstr ""
-#: templates/InvenTree/index.html:349
+#: templates/InvenTree/index.html:301
msgid "Current News"
msgstr ""
@@ -8672,29 +8700,29 @@ msgstr ""
msgid "Changing the settings below require you to immediately restart the server. Do not change this while under active usage."
msgstr ""
-#: templates/InvenTree/settings/plugin.html:37
+#: templates/InvenTree/settings/plugin.html:35
#: templates/InvenTree/settings/sidebar.html:64
msgid "Plugins"
msgstr ""
-#: templates/InvenTree/settings/plugin.html:43
+#: templates/InvenTree/settings/plugin.html:41
#: templates/js/translated/plugin.js:151
msgid "Install Plugin"
msgstr ""
-#: templates/InvenTree/settings/plugin.html:51
+#: templates/InvenTree/settings/plugin.html:49
msgid "External plugins are not enabled for this InvenTree installation"
msgstr ""
-#: templates/InvenTree/settings/plugin.html:70
+#: templates/InvenTree/settings/plugin.html:64
msgid "Plugin Error Stack"
msgstr ""
-#: templates/InvenTree/settings/plugin.html:79
+#: templates/InvenTree/settings/plugin.html:73
msgid "Stage"
msgstr ""
-#: templates/InvenTree/settings/plugin.html:81
+#: templates/InvenTree/settings/plugin.html:75
#: templates/js/translated/notification.js:75
msgid "Message"
msgstr ""
@@ -8767,14 +8795,6 @@ msgstr ""
msgid "Commit Message"
msgstr ""
-#: templates/InvenTree/settings/plugin_settings.html:126
-msgid "Sign Status"
-msgstr ""
-
-#: templates/InvenTree/settings/plugin_settings.html:131
-msgid "Sign Key"
-msgstr ""
-
#: templates/InvenTree/settings/po.html:7
msgid "Purchase Order Settings"
msgstr "采购订单设置"
@@ -8870,12 +8890,12 @@ msgid "No category parameter templates found"
msgstr "未找到类别参数模板"
#: templates/InvenTree/settings/settings_staff_js.html:212
-#: templates/js/translated/part.js:1618
+#: templates/js/translated/part.js:1617
msgid "Edit Template"
msgstr "编辑模板"
#: templates/InvenTree/settings/settings_staff_js.html:213
-#: templates/js/translated/part.js:1619
+#: templates/js/translated/part.js:1618
msgid "Delete Template"
msgstr "删除模板"
@@ -8913,7 +8933,7 @@ msgid "Home Page"
msgstr "主页"
#: templates/InvenTree/settings/sidebar.html:15
-#: templates/js/translated/tables.js:575 templates/navbar.html:107
+#: templates/js/translated/tables.js:551 templates/navbar.html:107
#: templates/search.html:8 templates/search_form.html:6
#: templates/search_form.html:7
msgid "Search"
@@ -8990,6 +9010,7 @@ msgid "Unverified"
msgstr ""
#: templates/InvenTree/settings/user.html:80
+#: templates/js/translated/company.js:984
msgid "Primary"
msgstr ""
@@ -9204,44 +9225,48 @@ msgstr "已是最新版本"
msgid "Update Available"
msgstr "有可用更新"
-#: templates/about.html:42
+#: templates/about.html:43
+msgid "Commit Branch"
+msgstr ""
+
+#: templates/about.html:49
msgid "InvenTree Documentation"
msgstr "InvenTree 文档"
-#: templates/about.html:47
+#: templates/about.html:54
msgid "API Version"
msgstr "API 版本"
-#: templates/about.html:52
+#: templates/about.html:59
msgid "Python Version"
msgstr "Python 版本"
-#: templates/about.html:57
+#: templates/about.html:64
msgid "Django Version"
msgstr "Django 版本"
-#: templates/about.html:62
+#: templates/about.html:69
msgid "View Code on GitHub"
msgstr "在 GitHub 上查看代码"
-#: templates/about.html:67
+#: templates/about.html:74
msgid "Credits"
msgstr "致谢"
-#: templates/about.html:72
+#: templates/about.html:79
msgid "Mobile App"
msgstr "手机 APP"
-#: templates/about.html:77
+#: templates/about.html:84
msgid "Submit Bug Report"
msgstr "提交 Bug"
-#: templates/about.html:84 templates/clip.html:4
+#: templates/about.html:91 templates/clip.html:4
#: templates/js/translated/helpers.js:585
msgid "copy to clipboard"
msgstr "复制到剪贴板"
-#: templates/about.html:84
+#: templates/about.html:91
msgid "copy version information"
msgstr "显示版本信息"
@@ -9435,14 +9460,6 @@ msgstr ""
msgid "Add Attachment"
msgstr "添加附件"
-#: templates/attachment_table.html:11
-msgid "Delete selected attachments"
-msgstr ""
-
-#: templates/attachment_table.html:12 templates/js/translated/attachment.js:129
-msgid "Delete Attachments"
-msgstr ""
-
#: templates/barcode_data.html:5
msgid "Barcode Identifier"
msgstr ""
@@ -9487,7 +9504,7 @@ msgid "The following parts are low on required stock"
msgstr ""
#: templates/email/build_order_required_stock.html:18
-#: templates/js/translated/bom.js:1633
+#: templates/js/translated/bom.js:1653 templates/js/translated/build.js:2485
msgid "Required Quantity"
msgstr ""
@@ -9501,7 +9518,7 @@ msgid "Click on the following link to view this part"
msgstr ""
#: templates/email/low_stock_notification.html:18
-#: templates/js/translated/part.js:3140
+#: templates/js/translated/part.js:3125
msgid "Minimum Quantity"
msgstr ""
@@ -9573,23 +9590,35 @@ msgstr ""
msgid "All selected attachments will be deleted"
msgstr ""
-#: templates/js/translated/attachment.js:255
+#: templates/js/translated/attachment.js:129
+msgid "Delete Attachments"
+msgstr ""
+
+#: templates/js/translated/attachment.js:205
+msgid "Delete attachments"
+msgstr ""
+
+#: templates/js/translated/attachment.js:253
+msgid "Attachment actions"
+msgstr ""
+
+#: templates/js/translated/attachment.js:275
msgid "No attachments found"
msgstr ""
-#: templates/js/translated/attachment.js:285
+#: templates/js/translated/attachment.js:305
msgid "Edit Attachment"
msgstr "编辑附件"
-#: templates/js/translated/attachment.js:326
+#: templates/js/translated/attachment.js:336
msgid "Upload Date"
msgstr ""
-#: templates/js/translated/attachment.js:346
+#: templates/js/translated/attachment.js:356
msgid "Edit attachment"
msgstr ""
-#: templates/js/translated/attachment.js:354
+#: templates/js/translated/attachment.js:364
msgid "Delete attachment"
msgstr ""
@@ -9646,7 +9675,7 @@ msgstr ""
msgid "Unlink"
msgstr ""
-#: templates/js/translated/barcode.js:550 templates/js/translated/stock.js:1118
+#: templates/js/translated/barcode.js:550 templates/js/translated/stock.js:1117
msgid "Remove stock item"
msgstr ""
@@ -9704,775 +9733,869 @@ msgstr ""
msgid "Barcode does not match a valid location"
msgstr ""
-#: templates/js/translated/bom.js:77
+#: templates/js/translated/bom.js:78
msgid "Create BOM Item"
msgstr ""
-#: templates/js/translated/bom.js:131
+#: templates/js/translated/bom.js:132
msgid "Display row data"
msgstr ""
-#: templates/js/translated/bom.js:187
+#: templates/js/translated/bom.js:188
msgid "Row Data"
msgstr ""
-#: templates/js/translated/bom.js:188 templates/js/translated/bom.js:699
+#: templates/js/translated/bom.js:189 templates/js/translated/bom.js:700
#: templates/js/translated/modals.js:71 templates/js/translated/modals.js:622
#: templates/js/translated/modals.js:746 templates/js/translated/modals.js:1054
-#: templates/js/translated/purchase_order.js:791 templates/modals.html:15
+#: templates/js/translated/purchase_order.js:802 templates/modals.html:15
#: templates/modals.html:27 templates/modals.html:39 templates/modals.html:50
msgid "Close"
msgstr ""
-#: templates/js/translated/bom.js:305
+#: templates/js/translated/bom.js:306
msgid "Download BOM Template"
msgstr ""
-#: templates/js/translated/bom.js:350
+#: templates/js/translated/bom.js:351
msgid "Multi Level BOM"
msgstr ""
-#: templates/js/translated/bom.js:351
+#: templates/js/translated/bom.js:352
msgid "Include BOM data for subassemblies"
msgstr ""
-#: templates/js/translated/bom.js:356
+#: templates/js/translated/bom.js:357
msgid "Levels"
msgstr "等级"
-#: templates/js/translated/bom.js:357
+#: templates/js/translated/bom.js:358
msgid "Select maximum number of BOM levels to export (0 = all levels)"
msgstr ""
-#: templates/js/translated/bom.js:364
+#: templates/js/translated/bom.js:365
msgid "Include Alternative Parts"
msgstr ""
-#: templates/js/translated/bom.js:365
+#: templates/js/translated/bom.js:366
msgid "Include alternative parts in exported BOM"
msgstr ""
-#: templates/js/translated/bom.js:370
+#: templates/js/translated/bom.js:371
msgid "Include Parameter Data"
msgstr "包含参数数据"
-#: templates/js/translated/bom.js:371
+#: templates/js/translated/bom.js:372
msgid "Include part parameter data in exported BOM"
msgstr ""
-#: templates/js/translated/bom.js:376
+#: templates/js/translated/bom.js:377
msgid "Include Stock Data"
msgstr "包括库存数据"
-#: templates/js/translated/bom.js:377
+#: templates/js/translated/bom.js:378
msgid "Include part stock data in exported BOM"
msgstr "在导出 BOM 中包括库存数据"
-#: templates/js/translated/bom.js:382
+#: templates/js/translated/bom.js:383
msgid "Include Manufacturer Data"
msgstr "包括制造商数据"
-#: templates/js/translated/bom.js:383
+#: templates/js/translated/bom.js:384
msgid "Include part manufacturer data in exported BOM"
msgstr "在导出 BOM 中包含制造商数据"
-#: templates/js/translated/bom.js:388
+#: templates/js/translated/bom.js:389
msgid "Include Supplier Data"
msgstr "包含供应商数据"
-#: templates/js/translated/bom.js:389
+#: templates/js/translated/bom.js:390
msgid "Include part supplier data in exported BOM"
msgstr "在导出 BOM 中包含供应商数据"
-#: templates/js/translated/bom.js:394
+#: templates/js/translated/bom.js:395
msgid "Include Pricing Data"
msgstr ""
-#: templates/js/translated/bom.js:395
+#: templates/js/translated/bom.js:396
msgid "Include part pricing data in exported BOM"
msgstr ""
-#: templates/js/translated/bom.js:590
+#: templates/js/translated/bom.js:591
msgid "Remove substitute part"
msgstr ""
-#: templates/js/translated/bom.js:644
+#: templates/js/translated/bom.js:645
msgid "Select and add a new substitute part using the input below"
msgstr ""
-#: templates/js/translated/bom.js:655
+#: templates/js/translated/bom.js:656
msgid "Are you sure you wish to remove this substitute part link?"
msgstr ""
-#: templates/js/translated/bom.js:661
+#: templates/js/translated/bom.js:662
msgid "Remove Substitute Part"
msgstr ""
-#: templates/js/translated/bom.js:700
+#: templates/js/translated/bom.js:701
msgid "Add Substitute"
msgstr ""
-#: templates/js/translated/bom.js:701
+#: templates/js/translated/bom.js:702
msgid "Edit BOM Item Substitutes"
msgstr ""
-#: templates/js/translated/bom.js:763
+#: templates/js/translated/bom.js:764
msgid "All selected BOM items will be deleted"
msgstr ""
-#: templates/js/translated/bom.js:779
+#: templates/js/translated/bom.js:780
msgid "Delete selected BOM items?"
msgstr ""
-#: templates/js/translated/bom.js:906
+#: templates/js/translated/bom.js:826
+msgid "Delete items"
+msgstr ""
+
+#: templates/js/translated/bom.js:924
msgid "Load BOM for subassembly"
msgstr ""
-#: templates/js/translated/bom.js:916
+#: templates/js/translated/bom.js:934
msgid "Substitutes Available"
msgstr ""
-#: templates/js/translated/bom.js:920 templates/js/translated/build.js:2090
+#: templates/js/translated/bom.js:938 templates/js/translated/build.js:2429
msgid "Variant stock allowed"
msgstr ""
-#: templates/js/translated/bom.js:984
+#: templates/js/translated/bom.js:1002
msgid "Substitutes"
msgstr ""
-#: templates/js/translated/bom.js:1104
+#: templates/js/translated/bom.js:1122
msgid "BOM pricing is complete"
msgstr ""
-#: templates/js/translated/bom.js:1109
+#: templates/js/translated/bom.js:1127
msgid "BOM pricing is incomplete"
msgstr ""
-#: templates/js/translated/bom.js:1116
+#: templates/js/translated/bom.js:1134
msgid "No pricing available"
msgstr ""
-#: templates/js/translated/bom.js:1147 templates/js/translated/build.js:2173
-#: templates/js/translated/sales_order.js:1887
+#: templates/js/translated/bom.js:1165 templates/js/translated/build.js:2523
+#: templates/js/translated/sales_order.js:1899
msgid "No Stock Available"
msgstr ""
-#: templates/js/translated/bom.js:1152 templates/js/translated/build.js:2177
+#: templates/js/translated/bom.js:1170 templates/js/translated/build.js:2527
msgid "Includes variant and substitute stock"
msgstr ""
-#: templates/js/translated/bom.js:1154 templates/js/translated/build.js:2179
-#: templates/js/translated/part.js:1230
+#: templates/js/translated/bom.js:1172 templates/js/translated/build.js:2529
+#: templates/js/translated/part.js:1229
msgid "Includes variant stock"
msgstr ""
-#: templates/js/translated/bom.js:1156 templates/js/translated/build.js:2181
+#: templates/js/translated/bom.js:1174 templates/js/translated/build.js:2531
msgid "Includes substitute stock"
msgstr ""
-#: templates/js/translated/bom.js:1184 templates/js/translated/build.js:2164
-#: templates/js/translated/build.js:2255
+#: templates/js/translated/bom.js:1204 templates/js/translated/build.js:2514
msgid "Consumable item"
msgstr ""
-#: templates/js/translated/bom.js:1244
+#: templates/js/translated/bom.js:1264
msgid "Validate BOM Item"
msgstr ""
-#: templates/js/translated/bom.js:1246
+#: templates/js/translated/bom.js:1266
msgid "This line has been validated"
msgstr ""
-#: templates/js/translated/bom.js:1248
+#: templates/js/translated/bom.js:1268
msgid "Edit substitute parts"
msgstr ""
-#: templates/js/translated/bom.js:1250 templates/js/translated/bom.js:1445
+#: templates/js/translated/bom.js:1270 templates/js/translated/bom.js:1465
msgid "Edit BOM Item"
msgstr ""
-#: templates/js/translated/bom.js:1252
+#: templates/js/translated/bom.js:1272
msgid "Delete BOM Item"
msgstr ""
-#: templates/js/translated/bom.js:1272
+#: templates/js/translated/bom.js:1292
msgid "View BOM"
msgstr ""
-#: templates/js/translated/bom.js:1356 templates/js/translated/build.js:1927
+#: templates/js/translated/bom.js:1376
msgid "No BOM items found"
msgstr ""
-#: templates/js/translated/bom.js:1616 templates/js/translated/build.js:2073
+#: templates/js/translated/bom.js:1636 templates/js/translated/build.js:2414
msgid "Required Part"
msgstr ""
-#: templates/js/translated/bom.js:1642
+#: templates/js/translated/bom.js:1662
msgid "Inherited from parent BOM"
msgstr ""
-#: templates/js/translated/build.js:126
+#: templates/js/translated/build.js:136
msgid "Edit Build Order"
msgstr ""
-#: templates/js/translated/build.js:169
+#: templates/js/translated/build.js:179
msgid "Create Build Order"
msgstr ""
-#: templates/js/translated/build.js:202
+#: templates/js/translated/build.js:211
msgid "Cancel Build Order"
msgstr ""
-#: templates/js/translated/build.js:211
+#: templates/js/translated/build.js:220
msgid "Are you sure you wish to cancel this build?"
msgstr "是否确定取消生产?"
-#: templates/js/translated/build.js:217
+#: templates/js/translated/build.js:226
msgid "Stock items have been allocated to this build order"
msgstr ""
-#: templates/js/translated/build.js:224
+#: templates/js/translated/build.js:233
msgid "There are incomplete outputs remaining for this build order"
msgstr ""
-#: templates/js/translated/build.js:276
+#: templates/js/translated/build.js:285
msgid "Build order is ready to be completed"
msgstr ""
-#: templates/js/translated/build.js:284
+#: templates/js/translated/build.js:293
msgid "This build order cannot be completed as there are incomplete outputs"
msgstr ""
-#: templates/js/translated/build.js:289
+#: templates/js/translated/build.js:298
msgid "Build Order is incomplete"
msgstr "生产订单未完成"
-#: templates/js/translated/build.js:307
+#: templates/js/translated/build.js:316
msgid "Complete Build Order"
msgstr "生产订单完成"
-#: templates/js/translated/build.js:348 templates/js/translated/stock.js:119
-#: templates/js/translated/stock.js:265
+#: templates/js/translated/build.js:357 templates/js/translated/stock.js:118
+#: templates/js/translated/stock.js:264
msgid "Next available serial number"
msgstr ""
-#: templates/js/translated/build.js:350 templates/js/translated/stock.js:121
-#: templates/js/translated/stock.js:267
+#: templates/js/translated/build.js:359 templates/js/translated/stock.js:120
+#: templates/js/translated/stock.js:266
msgid "Latest serial number"
msgstr ""
-#: templates/js/translated/build.js:359
+#: templates/js/translated/build.js:368
msgid "The Bill of Materials contains trackable parts"
msgstr ""
-#: templates/js/translated/build.js:360
+#: templates/js/translated/build.js:369
msgid "Build outputs must be generated individually"
msgstr ""
-#: templates/js/translated/build.js:368
+#: templates/js/translated/build.js:377
msgid "Trackable parts can have serial numbers specified"
msgstr "可追踪商品可以指定序列号"
-#: templates/js/translated/build.js:369
+#: templates/js/translated/build.js:378
msgid "Enter serial numbers to generate multiple single build outputs"
msgstr ""
-#: templates/js/translated/build.js:376
+#: templates/js/translated/build.js:385
msgid "Create Build Output"
msgstr "创建创建生产产出"
-#: templates/js/translated/build.js:407
+#: templates/js/translated/build.js:416
msgid "Allocate stock items to this build output"
msgstr ""
-#: templates/js/translated/build.js:418
-msgid "Unallocate stock from build output"
+#: templates/js/translated/build.js:424
+msgid "Deallocate stock from build output"
msgstr ""
-#: templates/js/translated/build.js:427
+#: templates/js/translated/build.js:433
msgid "Complete build output"
msgstr ""
-#: templates/js/translated/build.js:435
+#: templates/js/translated/build.js:441
msgid "Scrap build output"
msgstr ""
-#: templates/js/translated/build.js:442
+#: templates/js/translated/build.js:448
msgid "Delete build output"
msgstr ""
-#: templates/js/translated/build.js:462
-msgid "Are you sure you wish to unallocate stock items from this build?"
+#: templates/js/translated/build.js:468
+msgid "Are you sure you wish to deallocate the selected stock items from this build?"
msgstr ""
-#: templates/js/translated/build.js:480
-msgid "Unallocate Stock Items"
+#: templates/js/translated/build.js:486
+msgid "Deallocate Stock Items"
msgstr ""
-#: templates/js/translated/build.js:566 templates/js/translated/build.js:690
-#: templates/js/translated/build.js:812
+#: templates/js/translated/build.js:572 templates/js/translated/build.js:696
+#: templates/js/translated/build.js:818
msgid "Select Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:567 templates/js/translated/build.js:691
-#: templates/js/translated/build.js:813
+#: templates/js/translated/build.js:573 templates/js/translated/build.js:697
+#: templates/js/translated/build.js:819
msgid "At least one build output must be selected"
msgstr ""
-#: templates/js/translated/build.js:581
+#: templates/js/translated/build.js:587
msgid "Selected build outputs will be marked as complete"
msgstr ""
-#: templates/js/translated/build.js:585 templates/js/translated/build.js:715
-#: templates/js/translated/build.js:835
+#: templates/js/translated/build.js:591 templates/js/translated/build.js:721
+#: templates/js/translated/build.js:841
msgid "Output"
msgstr ""
-#: templates/js/translated/build.js:609
+#: templates/js/translated/build.js:615
msgid "Complete Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:706
+#: templates/js/translated/build.js:712
msgid "Selected build outputs will be marked as scrapped"
msgstr ""
-#: templates/js/translated/build.js:708
+#: templates/js/translated/build.js:714
msgid "Scrapped output are marked as rejected"
msgstr ""
-#: templates/js/translated/build.js:709
+#: templates/js/translated/build.js:715
msgid "Allocated stock items will no longer be available"
msgstr ""
-#: templates/js/translated/build.js:710
+#: templates/js/translated/build.js:716
msgid "The completion status of the build order will not be adjusted"
msgstr ""
-#: templates/js/translated/build.js:737
+#: templates/js/translated/build.js:743
msgid "Scrap Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:827
+#: templates/js/translated/build.js:833
msgid "Selected build outputs will be deleted"
msgstr ""
-#: templates/js/translated/build.js:829
+#: templates/js/translated/build.js:835
msgid "Build output data will be permanently deleted"
msgstr ""
-#: templates/js/translated/build.js:830
+#: templates/js/translated/build.js:836
msgid "Allocated stock items will be returned to stock"
msgstr ""
-#: templates/js/translated/build.js:848
+#: templates/js/translated/build.js:854
msgid "Delete Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:934
+#: templates/js/translated/build.js:941
msgid "No build order allocations found"
msgstr ""
-#: templates/js/translated/build.js:971
+#: templates/js/translated/build.js:970 templates/js/translated/build.js:2270
+msgid "Allocated Quantity"
+msgstr ""
+
+#: templates/js/translated/build.js:984
msgid "Location not specified"
msgstr "未指定仓储地点"
-#: templates/js/translated/build.js:1047
+#: templates/js/translated/build.js:1006
+msgid "Complete outputs"
+msgstr "已完成输出"
+
+#: templates/js/translated/build.js:1024
+msgid "Scrap outputs"
+msgstr ""
+
+#: templates/js/translated/build.js:1042
+msgid "Delete outputs"
+msgstr "删除输出"
+
+#: templates/js/translated/build.js:1100
msgid "build output"
msgstr ""
-#: templates/js/translated/build.js:1048
+#: templates/js/translated/build.js:1101
msgid "build outputs"
msgstr ""
-#: templates/js/translated/build.js:1383
+#: templates/js/translated/build.js:1105
+msgid "Build output actions"
+msgstr ""
+
+#: templates/js/translated/build.js:1274
msgid "No active build outputs found"
msgstr ""
-#: templates/js/translated/build.js:1457
-msgid "Allocated Stock"
+#: templates/js/translated/build.js:1329
+msgid "Allocated Lines"
msgstr ""
-#: templates/js/translated/build.js:1464
-msgid "No tracked BOM items for this build"
+#: templates/js/translated/build.js:1343
+msgid "Required Tests"
msgstr ""
-#: templates/js/translated/build.js:1486
-msgid "Completed Tests"
-msgstr ""
-
-#: templates/js/translated/build.js:1491
-msgid "No required tests for this build"
-msgstr ""
-
-#: templates/js/translated/build.js:2032 templates/js/translated/build.js:3056
-#: templates/js/translated/sales_order.js:1632
-msgid "Edit stock allocation"
-msgstr ""
-
-#: templates/js/translated/build.js:2034 templates/js/translated/build.js:3057
-#: templates/js/translated/sales_order.js:1633
-msgid "Delete stock allocation"
-msgstr ""
-
-#: templates/js/translated/build.js:2050
-msgid "Edit Allocation"
-msgstr ""
-
-#: templates/js/translated/build.js:2060
-msgid "Remove Allocation"
-msgstr ""
-
-#: templates/js/translated/build.js:2086
-msgid "Substitute parts available"
-msgstr ""
-
-#: templates/js/translated/build.js:2122
-msgid "Quantity Per"
-msgstr ""
-
-#: templates/js/translated/build.js:2167
-#: templates/js/translated/sales_order.js:1894
-msgid "Insufficient stock available"
-msgstr ""
-
-#: templates/js/translated/build.js:2169
-#: templates/js/translated/sales_order.js:1892
-msgid "Sufficient stock available"
-msgstr ""
-
-#: templates/js/translated/build.js:2263
-#: templates/js/translated/sales_order.js:1993
-msgid "Build stock"
-msgstr ""
-
-#: templates/js/translated/build.js:2267 templates/stock_table.html:38
-msgid "Order stock"
-msgstr ""
-
-#: templates/js/translated/build.js:2270
-#: templates/js/translated/sales_order.js:1987
-msgid "Allocate stock"
-msgstr ""
-
-#: templates/js/translated/build.js:2310
-#: templates/js/translated/purchase_order.js:616
-#: templates/js/translated/sales_order.js:1159
+#: templates/js/translated/build.js:1502
+#: templates/js/translated/purchase_order.js:627
+#: templates/js/translated/sales_order.js:1171
msgid "Select Parts"
msgstr "选择商品"
-#: templates/js/translated/build.js:2311
-#: templates/js/translated/sales_order.js:1160
+#: templates/js/translated/build.js:1503
+#: templates/js/translated/sales_order.js:1172
msgid "You must select at least one part to allocate"
msgstr ""
-#: templates/js/translated/build.js:2359
-#: templates/js/translated/sales_order.js:1109
+#: templates/js/translated/build.js:1566
+#: templates/js/translated/sales_order.js:1121
msgid "Specify stock allocation quantity"
msgstr ""
-#: templates/js/translated/build.js:2438
+#: templates/js/translated/build.js:1643
msgid "All Parts Allocated"
msgstr ""
-#: templates/js/translated/build.js:2439
+#: templates/js/translated/build.js:1644
msgid "All selected parts have been fully allocated"
msgstr ""
-#: templates/js/translated/build.js:2453
-#: templates/js/translated/sales_order.js:1174
+#: templates/js/translated/build.js:1658
+#: templates/js/translated/sales_order.js:1186
msgid "Select source location (leave blank to take from all locations)"
msgstr ""
-#: templates/js/translated/build.js:2481
+#: templates/js/translated/build.js:1686
msgid "Allocate Stock Items to Build Order"
msgstr ""
-#: templates/js/translated/build.js:2492
-#: templates/js/translated/sales_order.js:1271
+#: templates/js/translated/build.js:1697
+#: templates/js/translated/sales_order.js:1283
msgid "No matching stock locations"
msgstr ""
-#: templates/js/translated/build.js:2565
-#: templates/js/translated/sales_order.js:1348
+#: templates/js/translated/build.js:1770
+#: templates/js/translated/sales_order.js:1360
msgid "No matching stock items"
msgstr ""
-#: templates/js/translated/build.js:2662
+#: templates/js/translated/build.js:1867
msgid "Automatic Stock Allocation"
msgstr ""
-#: templates/js/translated/build.js:2663
+#: templates/js/translated/build.js:1868
msgid "Stock items will be automatically allocated to this build order, according to the provided guidelines"
msgstr ""
-#: templates/js/translated/build.js:2665
+#: templates/js/translated/build.js:1870
msgid "If a location is specified, stock will only be allocated from that location"
msgstr ""
-#: templates/js/translated/build.js:2666
+#: templates/js/translated/build.js:1871
msgid "If stock is considered interchangeable, it will be allocated from the first location it is found"
msgstr ""
-#: templates/js/translated/build.js:2667
+#: templates/js/translated/build.js:1872
msgid "If substitute stock is allowed, it will be used where stock of the primary part cannot be found"
msgstr ""
-#: templates/js/translated/build.js:2694
+#: templates/js/translated/build.js:1899
msgid "Allocate Stock Items"
msgstr ""
-#: templates/js/translated/build.js:2800
+#: templates/js/translated/build.js:2005
msgid "No builds matching query"
msgstr ""
-#: templates/js/translated/build.js:2835 templates/js/translated/part.js:2208
-#: templates/js/translated/part.js:2692 templates/js/translated/stock.js:1759
-#: templates/js/translated/stock.js:2458
+#: templates/js/translated/build.js:2040 templates/js/translated/build.js:2408
+#: templates/js/translated/part.js:2284 templates/js/translated/part.js:2677
+#: templates/js/translated/stock.js:1899 templates/js/translated/stock.js:2589
msgid "Select"
msgstr ""
-#: templates/js/translated/build.js:2849
+#: templates/js/translated/build.js:2054
msgid "Build order is overdue"
msgstr ""
-#: templates/js/translated/build.js:2883
+#: templates/js/translated/build.js:2100
msgid "Progress"
msgstr ""
-#: templates/js/translated/build.js:2919 templates/js/translated/stock.js:2779
+#: templates/js/translated/build.js:2136 templates/js/translated/stock.js:2910
msgid "No user information"
msgstr "没有用户信息"
-#: templates/js/translated/build.js:2934
+#: templates/js/translated/build.js:2151
msgid "group"
msgstr ""
-#: templates/js/translated/build.js:3033
-msgid "No parts allocated for"
+#: templates/js/translated/build.js:2315
+#: templates/js/translated/sales_order.js:1644
+msgid "Edit stock allocation"
msgstr ""
-#: templates/js/translated/company.js:87
+#: templates/js/translated/build.js:2316
+#: templates/js/translated/sales_order.js:1645
+msgid "Delete stock allocation"
+msgstr ""
+
+#: templates/js/translated/build.js:2331
+msgid "Edit Allocation"
+msgstr ""
+
+#: templates/js/translated/build.js:2343
+msgid "Remove Allocation"
+msgstr ""
+
+#: templates/js/translated/build.js:2384
+msgid "build line"
+msgstr ""
+
+#: templates/js/translated/build.js:2385
+msgid "build lines"
+msgstr ""
+
+#: templates/js/translated/build.js:2403
+msgid "No build lines found"
+msgstr ""
+
+#: templates/js/translated/build.js:2433 templates/js/translated/part.js:767
+#: templates/js/translated/part.js:1175
+msgid "Trackable part"
+msgstr "可追溯商品"
+
+#: templates/js/translated/build.js:2468
+msgid "Unit Quantity"
+msgstr ""
+
+#: templates/js/translated/build.js:2517
+#: templates/js/translated/sales_order.js:1906
+msgid "Insufficient stock available"
+msgstr ""
+
+#: templates/js/translated/build.js:2519
+#: templates/js/translated/sales_order.js:1904
+msgid "Sufficient stock available"
+msgstr ""
+
+#: templates/js/translated/build.js:2566
+msgid "Consumable Item"
+msgstr ""
+
+#: templates/js/translated/build.js:2571
+msgid "Tracked item"
+msgstr ""
+
+#: templates/js/translated/build.js:2578
+#: templates/js/translated/sales_order.js:2005
+msgid "Build stock"
+msgstr ""
+
+#: templates/js/translated/build.js:2583 templates/js/translated/stock.js:1779
+msgid "Order stock"
+msgstr ""
+
+#: templates/js/translated/build.js:2587
+#: templates/js/translated/sales_order.js:1999
+msgid "Allocate stock"
+msgstr ""
+
+#: templates/js/translated/build.js:2591
+msgid "Remove stock allocation"
+msgstr ""
+
+#: templates/js/translated/company.js:97
msgid "Add Manufacturer"
msgstr "添加制造商"
-#: templates/js/translated/company.js:100
-#: templates/js/translated/company.js:202
+#: templates/js/translated/company.js:110
+#: templates/js/translated/company.js:212
msgid "Add Manufacturer Part"
msgstr "添加制造商商品"
-#: templates/js/translated/company.js:121
+#: templates/js/translated/company.js:131
msgid "Edit Manufacturer Part"
msgstr "编辑制造商商品"
-#: templates/js/translated/company.js:190
-#: templates/js/translated/purchase_order.js:94
+#: templates/js/translated/company.js:200
+#: templates/js/translated/purchase_order.js:93
msgid "Add Supplier"
msgstr "添加供应商"
-#: templates/js/translated/company.js:232
-#: templates/js/translated/purchase_order.js:338
+#: templates/js/translated/company.js:242
+#: templates/js/translated/purchase_order.js:349
msgid "Add Supplier Part"
msgstr "添加供应商商品"
-#: templates/js/translated/company.js:333
+#: templates/js/translated/company.js:343
msgid "All selected supplier parts will be deleted"
msgstr "删除所有选定的供应商商品"
-#: templates/js/translated/company.js:349
+#: templates/js/translated/company.js:359
msgid "Delete Supplier Parts"
msgstr ""
-#: templates/js/translated/company.js:457
+#: templates/js/translated/company.js:464
msgid "Add new Company"
msgstr "增加新的公司信息"
-#: templates/js/translated/company.js:528
+#: templates/js/translated/company.js:535
msgid "Parts Supplied"
msgstr ""
-#: templates/js/translated/company.js:537
+#: templates/js/translated/company.js:544
msgid "Parts Manufactured"
msgstr ""
-#: templates/js/translated/company.js:552
+#: templates/js/translated/company.js:559
msgid "No company information found"
msgstr "未找到该公司信息"
-#: templates/js/translated/company.js:601
+#: templates/js/translated/company.js:608
msgid "Create New Contact"
msgstr ""
-#: templates/js/translated/company.js:617
-#: templates/js/translated/company.js:740
+#: templates/js/translated/company.js:624
+#: templates/js/translated/company.js:747
msgid "Edit Contact"
msgstr ""
-#: templates/js/translated/company.js:654
+#: templates/js/translated/company.js:661
msgid "All selected contacts will be deleted"
msgstr ""
-#: templates/js/translated/company.js:660
-#: templates/js/translated/company.js:724
+#: templates/js/translated/company.js:667
+#: templates/js/translated/company.js:731
msgid "Role"
msgstr ""
-#: templates/js/translated/company.js:668
+#: templates/js/translated/company.js:675
msgid "Delete Contacts"
msgstr ""
-#: templates/js/translated/company.js:699
+#: templates/js/translated/company.js:706
msgid "No contacts found"
msgstr ""
-#: templates/js/translated/company.js:712
+#: templates/js/translated/company.js:719
msgid "Phone Number"
msgstr ""
-#: templates/js/translated/company.js:718
+#: templates/js/translated/company.js:725
msgid "Email Address"
msgstr ""
-#: templates/js/translated/company.js:744
+#: templates/js/translated/company.js:751
msgid "Delete Contact"
msgstr ""
-#: templates/js/translated/company.js:818
+#: templates/js/translated/company.js:886
+msgid "Create New Address"
+msgstr ""
+
+#: templates/js/translated/company.js:901
+#: templates/js/translated/company.js:1066
+msgid "Edit Address"
+msgstr ""
+
+#: templates/js/translated/company.js:936
+msgid "All selected addresses will be deleted"
+msgstr ""
+
+#: templates/js/translated/company.js:950
+msgid "Delete Addresses"
+msgstr ""
+
+#: templates/js/translated/company.js:977
+msgid "No addresses found"
+msgstr ""
+
+#: templates/js/translated/company.js:1020
+msgid "Postal city"
+msgstr ""
+
+#: templates/js/translated/company.js:1026
+msgid "State/province"
+msgstr ""
+
+#: templates/js/translated/company.js:1038
+msgid "Courier notes"
+msgstr ""
+
+#: templates/js/translated/company.js:1044
+msgid "Internal notes"
+msgstr ""
+
+#: templates/js/translated/company.js:1070
+msgid "Delete Address"
+msgstr ""
+
+#: templates/js/translated/company.js:1143
msgid "All selected manufacturer parts will be deleted"
msgstr ""
-#: templates/js/translated/company.js:833
+#: templates/js/translated/company.js:1158
msgid "Delete Manufacturer Parts"
msgstr "删除制造商商品"
-#: templates/js/translated/company.js:867
+#: templates/js/translated/company.js:1192
msgid "All selected parameters will be deleted"
msgstr ""
-#: templates/js/translated/company.js:881
+#: templates/js/translated/company.js:1206
msgid "Delete Parameters"
msgstr "删除参数"
-#: templates/js/translated/company.js:917
+#: templates/js/translated/company.js:1222
+#: templates/js/translated/company.js:1510 templates/js/translated/part.js:2213
+msgid "Order parts"
+msgstr "订购商品"
+
+#: templates/js/translated/company.js:1239
+msgid "Delete manufacturer parts"
+msgstr "删除制造商商品"
+
+#: templates/js/translated/company.js:1271
+msgid "Manufacturer part actions"
+msgstr ""
+
+#: templates/js/translated/company.js:1290
msgid "No manufacturer parts found"
msgstr ""
-#: templates/js/translated/company.js:937
-#: templates/js/translated/company.js:1177 templates/js/translated/part.js:776
-#: templates/js/translated/part.js:1184
+#: templates/js/translated/company.js:1310
+#: templates/js/translated/company.js:1598 templates/js/translated/part.js:775
+#: templates/js/translated/part.js:1183
msgid "Template part"
msgstr ""
-#: templates/js/translated/company.js:941
-#: templates/js/translated/company.js:1181 templates/js/translated/part.js:780
-#: templates/js/translated/part.js:1188
+#: templates/js/translated/company.js:1314
+#: templates/js/translated/company.js:1602 templates/js/translated/part.js:779
+#: templates/js/translated/part.js:1187
msgid "Assembled part"
msgstr ""
-#: templates/js/translated/company.js:1061 templates/js/translated/part.js:1437
+#: templates/js/translated/company.js:1434 templates/js/translated/part.js:1436
msgid "No parameters found"
msgstr "无指定参数"
-#: templates/js/translated/company.js:1096 templates/js/translated/part.js:1500
+#: templates/js/translated/company.js:1469 templates/js/translated/part.js:1499
msgid "Edit parameter"
msgstr "编辑参数"
-#: templates/js/translated/company.js:1097 templates/js/translated/part.js:1501
+#: templates/js/translated/company.js:1470 templates/js/translated/part.js:1500
msgid "Delete parameter"
msgstr "删除参数"
-#: templates/js/translated/company.js:1114 templates/js/translated/part.js:1407
+#: templates/js/translated/company.js:1487 templates/js/translated/part.js:1406
msgid "Edit Parameter"
msgstr "编辑参数"
-#: templates/js/translated/company.js:1123 templates/js/translated/part.js:1522
+#: templates/js/translated/company.js:1496 templates/js/translated/part.js:1521
msgid "Delete Parameter"
msgstr "删除参数"
-#: templates/js/translated/company.js:1156
+#: templates/js/translated/company.js:1527
+msgid "Delete supplier parts"
+msgstr "删除供应商商品"
+
+#: templates/js/translated/company.js:1577
msgid "No supplier parts found"
msgstr "未找到供应商商品"
-#: templates/js/translated/company.js:1274
+#: templates/js/translated/company.js:1695
msgid "Base Units"
msgstr ""
-#: templates/js/translated/company.js:1304
+#: templates/js/translated/company.js:1725
msgid "Availability"
msgstr ""
-#: templates/js/translated/company.js:1335
+#: templates/js/translated/company.js:1756
msgid "Edit supplier part"
msgstr "编辑供应商商品"
-#: templates/js/translated/company.js:1336
+#: templates/js/translated/company.js:1757
msgid "Delete supplier part"
msgstr "删除供应商商品"
-#: templates/js/translated/company.js:1389
+#: templates/js/translated/company.js:1810
#: templates/js/translated/pricing.js:694
msgid "Delete Price Break"
msgstr ""
-#: templates/js/translated/company.js:1399
+#: templates/js/translated/company.js:1820
#: templates/js/translated/pricing.js:712
msgid "Edit Price Break"
msgstr ""
-#: templates/js/translated/company.js:1414
+#: templates/js/translated/company.js:1835
msgid "No price break information found"
msgstr ""
-#: templates/js/translated/company.js:1443
+#: templates/js/translated/company.js:1864
msgid "Last updated"
msgstr ""
-#: templates/js/translated/company.js:1450
+#: templates/js/translated/company.js:1871
msgid "Edit price break"
msgstr ""
-#: templates/js/translated/company.js:1451
+#: templates/js/translated/company.js:1872
msgid "Delete price break"
msgstr ""
-#: templates/js/translated/filters.js:186
-#: templates/js/translated/filters.js:550
+#: templates/js/translated/filters.js:187
+#: templates/js/translated/filters.js:673
msgid "true"
msgstr ""
-#: templates/js/translated/filters.js:190
-#: templates/js/translated/filters.js:551
+#: templates/js/translated/filters.js:191
+#: templates/js/translated/filters.js:674
msgid "false"
msgstr ""
-#: templates/js/translated/filters.js:214
+#: templates/js/translated/filters.js:215
msgid "Select filter"
msgstr "选择筛选项"
-#: templates/js/translated/filters.js:328
+#: templates/js/translated/filters.js:438
msgid "Print Labels"
msgstr ""
-#: templates/js/translated/filters.js:332
+#: templates/js/translated/filters.js:442
msgid "Print Reports"
msgstr ""
-#: templates/js/translated/filters.js:344
+#: templates/js/translated/filters.js:454
msgid "Download table data"
msgstr ""
-#: templates/js/translated/filters.js:351
+#: templates/js/translated/filters.js:461
msgid "Reload table data"
msgstr ""
-#: templates/js/translated/filters.js:360
+#: templates/js/translated/filters.js:470
msgid "Add new filter"
msgstr ""
-#: templates/js/translated/filters.js:368
+#: templates/js/translated/filters.js:478
msgid "Clear all filters"
msgstr ""
-#: templates/js/translated/filters.js:460
+#: templates/js/translated/filters.js:583
msgid "Create filter"
msgstr ""
@@ -10497,6 +10620,12 @@ msgstr ""
msgid "View operation not allowed"
msgstr ""
+#: templates/js/translated/forms.js:506 templates/js/translated/helpers.js:105
+#: templates/js/translated/part.js:369 templates/js/translated/pricing.js:629
+#: templates/js/translated/stock.js:215 users/models.py:253
+msgid "Delete"
+msgstr "删除"
+
#: templates/js/translated/forms.js:752
msgid "Keep this form open"
msgstr ""
@@ -10514,23 +10643,23 @@ msgstr ""
msgid "No results found"
msgstr ""
-#: templates/js/translated/forms.js:2071 templates/js/translated/search.js:281
+#: templates/js/translated/forms.js:2071 templates/js/translated/search.js:239
msgid "Searching"
msgstr ""
-#: templates/js/translated/forms.js:2276
+#: templates/js/translated/forms.js:2285
msgid "Clear input"
msgstr ""
-#: templates/js/translated/forms.js:2733
+#: templates/js/translated/forms.js:2742
msgid "File Column"
msgstr ""
-#: templates/js/translated/forms.js:2733
+#: templates/js/translated/forms.js:2742
msgid "Field Name"
msgstr ""
-#: templates/js/translated/forms.js:2745
+#: templates/js/translated/forms.js:2754
msgid "Select Columns"
msgstr ""
@@ -10550,6 +10679,14 @@ msgstr ""
msgid "False"
msgstr ""
+#: templates/js/translated/index.js:99
+msgid "No parts required for builds"
+msgstr ""
+
+#: templates/js/translated/index.js:125
+msgid "Allocated Stock"
+msgstr ""
+
#: templates/js/translated/label.js:58
msgid "Select Printer"
msgstr ""
@@ -10651,7 +10788,7 @@ msgstr ""
#: templates/js/translated/news.js:38
#: templates/js/translated/notification.js:45
-#: templates/js/translated/part.js:1577
+#: templates/js/translated/part.js:1576
msgid "ID"
msgstr "ID"
@@ -10700,7 +10837,7 @@ msgid "Delete Line"
msgstr ""
#: templates/js/translated/order.js:281
-#: templates/js/translated/purchase_order.js:1958
+#: templates/js/translated/purchase_order.js:1968
msgid "No line items found"
msgstr ""
@@ -10716,363 +10853,355 @@ msgstr ""
msgid "Delete line"
msgstr ""
-#: templates/js/translated/part.js:91
+#: templates/js/translated/part.js:90
msgid "Part Attributes"
msgstr "商品属性"
-#: templates/js/translated/part.js:95
+#: templates/js/translated/part.js:94
msgid "Part Creation Options"
msgstr "商品创建选项"
-#: templates/js/translated/part.js:99
+#: templates/js/translated/part.js:98
msgid "Part Duplication Options"
msgstr "商品重复选项"
-#: templates/js/translated/part.js:122
+#: templates/js/translated/part.js:121
msgid "Add Part Category"
msgstr "增加商品类别"
-#: templates/js/translated/part.js:294
+#: templates/js/translated/part.js:293
msgid "Parent part category"
msgstr ""
-#: templates/js/translated/part.js:310 templates/js/translated/stock.js:147
+#: templates/js/translated/part.js:309 templates/js/translated/stock.js:146
msgid "Icon (optional) - Explore all available icons on"
msgstr ""
-#: templates/js/translated/part.js:330
+#: templates/js/translated/part.js:329
msgid "Create Part Category"
msgstr "创建商品类别"
-#: templates/js/translated/part.js:333
+#: templates/js/translated/part.js:332
msgid "Create new category after this one"
msgstr ""
-#: templates/js/translated/part.js:334
+#: templates/js/translated/part.js:333
msgid "Part category created"
msgstr ""
-#: templates/js/translated/part.js:348
+#: templates/js/translated/part.js:347
msgid "Edit Part Category"
msgstr "编辑商品类别"
-#: templates/js/translated/part.js:361
+#: templates/js/translated/part.js:360
msgid "Are you sure you want to delete this part category?"
msgstr ""
-#: templates/js/translated/part.js:366
+#: templates/js/translated/part.js:365
msgid "Move to parent category"
msgstr ""
-#: templates/js/translated/part.js:375
+#: templates/js/translated/part.js:374
msgid "Delete Part Category"
msgstr "删除商品类别"
-#: templates/js/translated/part.js:379
+#: templates/js/translated/part.js:378
msgid "Action for parts in this category"
msgstr ""
-#: templates/js/translated/part.js:384
+#: templates/js/translated/part.js:383
msgid "Action for child categories"
msgstr ""
-#: templates/js/translated/part.js:408
+#: templates/js/translated/part.js:407
msgid "Create Part"
msgstr "创建商品"
-#: templates/js/translated/part.js:410
+#: templates/js/translated/part.js:409
msgid "Create another part after this one"
msgstr ""
-#: templates/js/translated/part.js:411
+#: templates/js/translated/part.js:410
msgid "Part created successfully"
msgstr ""
-#: templates/js/translated/part.js:439
+#: templates/js/translated/part.js:438
msgid "Edit Part"
msgstr "编辑商品"
-#: templates/js/translated/part.js:441
+#: templates/js/translated/part.js:440
msgid "Part edited"
msgstr ""
-#: templates/js/translated/part.js:452
+#: templates/js/translated/part.js:451
msgid "Create Part Variant"
msgstr ""
-#: templates/js/translated/part.js:509
+#: templates/js/translated/part.js:508
msgid "Active Part"
msgstr ""
-#: templates/js/translated/part.js:510
+#: templates/js/translated/part.js:509
msgid "Part cannot be deleted as it is currently active"
msgstr ""
-#: templates/js/translated/part.js:524
+#: templates/js/translated/part.js:523
msgid "Deleting this part cannot be reversed"
msgstr ""
-#: templates/js/translated/part.js:526
+#: templates/js/translated/part.js:525
msgid "Any stock items for this part will be deleted"
msgstr ""
-#: templates/js/translated/part.js:527
+#: templates/js/translated/part.js:526
msgid "This part will be removed from any Bills of Material"
msgstr ""
-#: templates/js/translated/part.js:528
+#: templates/js/translated/part.js:527
msgid "All manufacturer and supplier information for this part will be deleted"
msgstr ""
-#: templates/js/translated/part.js:535
+#: templates/js/translated/part.js:534
msgid "Delete Part"
msgstr ""
-#: templates/js/translated/part.js:571
+#: templates/js/translated/part.js:570
msgid "You are subscribed to notifications for this item"
msgstr ""
-#: templates/js/translated/part.js:573
+#: templates/js/translated/part.js:572
msgid "You have subscribed to notifications for this item"
msgstr ""
-#: templates/js/translated/part.js:578
+#: templates/js/translated/part.js:577
msgid "Subscribe to notifications for this item"
msgstr ""
-#: templates/js/translated/part.js:580
+#: templates/js/translated/part.js:579
msgid "You have unsubscribed to notifications for this item"
msgstr ""
-#: templates/js/translated/part.js:597
+#: templates/js/translated/part.js:596
msgid "Validating the BOM will mark each line item as valid"
msgstr ""
-#: templates/js/translated/part.js:607
+#: templates/js/translated/part.js:606
msgid "Validate Bill of Materials"
msgstr ""
-#: templates/js/translated/part.js:610
+#: templates/js/translated/part.js:609
msgid "Validated Bill of Materials"
msgstr ""
-#: templates/js/translated/part.js:635
+#: templates/js/translated/part.js:634
msgid "Copy Bill of Materials"
msgstr ""
-#: templates/js/translated/part.js:663
-#: templates/js/translated/table_filters.js:660
+#: templates/js/translated/part.js:662
+#: templates/js/translated/table_filters.js:682
msgid "Low stock"
msgstr ""
-#: templates/js/translated/part.js:666
+#: templates/js/translated/part.js:665
msgid "No stock available"
msgstr ""
-#: templates/js/translated/part.js:726
+#: templates/js/translated/part.js:725
msgid "Demand"
msgstr ""
-#: templates/js/translated/part.js:749
+#: templates/js/translated/part.js:748
msgid "Unit"
msgstr ""
-#: templates/js/translated/part.js:768 templates/js/translated/part.js:1176
-msgid "Trackable part"
-msgstr "可追溯商品"
-
-#: templates/js/translated/part.js:772 templates/js/translated/part.js:1180
+#: templates/js/translated/part.js:771 templates/js/translated/part.js:1179
msgid "Virtual part"
msgstr "虚拟商品"
-#: templates/js/translated/part.js:784
+#: templates/js/translated/part.js:783
msgid "Subscribed part"
msgstr ""
-#: templates/js/translated/part.js:788
+#: templates/js/translated/part.js:787
msgid "Salable part"
msgstr "可销售商品"
-#: templates/js/translated/part.js:863
+#: templates/js/translated/part.js:862
msgid "Schedule generation of a new stocktake report."
msgstr ""
-#: templates/js/translated/part.js:863
+#: templates/js/translated/part.js:862
msgid "Once complete, the stocktake report will be available for download."
msgstr ""
-#: templates/js/translated/part.js:871
+#: templates/js/translated/part.js:870
msgid "Generate Stocktake Report"
msgstr ""
-#: templates/js/translated/part.js:875
+#: templates/js/translated/part.js:874
msgid "Stocktake report scheduled"
msgstr ""
-#: templates/js/translated/part.js:1024
+#: templates/js/translated/part.js:1023
msgid "No stocktake information available"
msgstr ""
-#: templates/js/translated/part.js:1082 templates/js/translated/part.js:1118
+#: templates/js/translated/part.js:1081 templates/js/translated/part.js:1117
msgid "Edit Stocktake Entry"
msgstr ""
-#: templates/js/translated/part.js:1086 templates/js/translated/part.js:1128
+#: templates/js/translated/part.js:1085 templates/js/translated/part.js:1127
msgid "Delete Stocktake Entry"
msgstr ""
-#: templates/js/translated/part.js:1255
+#: templates/js/translated/part.js:1254
msgid "No variants found"
msgstr ""
-#: templates/js/translated/part.js:1572
+#: templates/js/translated/part.js:1571
msgid "No part parameter templates found"
msgstr "未找到商品参数模板"
-#: templates/js/translated/part.js:1635
+#: templates/js/translated/part.js:1634
msgid "Edit Part Parameter Template"
msgstr ""
-#: templates/js/translated/part.js:1647
+#: templates/js/translated/part.js:1646
msgid "Any parameters which reference this template will also be deleted"
msgstr ""
-#: templates/js/translated/part.js:1655
+#: templates/js/translated/part.js:1654
msgid "Delete Part Parameter Template"
msgstr ""
-#: templates/js/translated/part.js:1689
-#: templates/js/translated/purchase_order.js:1618
+#: templates/js/translated/part.js:1688
+#: templates/js/translated/purchase_order.js:1633
msgid "No purchase orders found"
msgstr ""
-#: templates/js/translated/part.js:1832
-#: templates/js/translated/purchase_order.js:2121
-#: templates/js/translated/return_order.js:740
-#: templates/js/translated/sales_order.js:1855
+#: templates/js/translated/part.js:1831
+#: templates/js/translated/purchase_order.js:2131
+#: templates/js/translated/return_order.js:752
+#: templates/js/translated/sales_order.js:1867
msgid "This line item is overdue"
msgstr ""
-#: templates/js/translated/part.js:1877
-#: templates/js/translated/purchase_order.js:2188
+#: templates/js/translated/part.js:1876
+#: templates/js/translated/purchase_order.js:2198
msgid "Receive line item"
msgstr ""
-#: templates/js/translated/part.js:1944
+#: templates/js/translated/part.js:1943
msgid "Delete part relationship"
msgstr ""
-#: templates/js/translated/part.js:1966
+#: templates/js/translated/part.js:1965
msgid "Delete Part Relationship"
msgstr ""
-#: templates/js/translated/part.js:2054 templates/js/translated/part.js:2366
+#: templates/js/translated/part.js:2053 templates/js/translated/part.js:2442
msgid "No parts found"
msgstr "找不到部件"
-#: templates/js/translated/part.js:2192
-msgid "parts"
-msgstr ""
-
-#: templates/js/translated/part.js:2276
-msgid "No category"
-msgstr "没有分类"
-
-#: templates/js/translated/part.js:2390 templates/js/translated/part.js:2611
-#: templates/js/translated/stock.js:2417
-msgid "Display as list"
-msgstr "以列表显示"
-
-#: templates/js/translated/part.js:2406
-msgid "Display as grid"
-msgstr "以网格显示"
-
-#: templates/js/translated/part.js:2472
+#: templates/js/translated/part.js:2174
msgid "Set the part category for the selected parts"
msgstr ""
-#: templates/js/translated/part.js:2477
+#: templates/js/translated/part.js:2179
msgid "Set Part Category"
msgstr "设置商品类别"
+#: templates/js/translated/part.js:2204
+msgid "Set category"
+msgstr "设置类别"
+
+#: templates/js/translated/part.js:2259
+msgid "parts"
+msgstr ""
+
+#: templates/js/translated/part.js:2352
+msgid "No category"
+msgstr "没有分类"
+
+#: templates/js/translated/part.js:2466 templates/js/translated/part.js:2596
+#: templates/js/translated/stock.js:2548
+msgid "Display as list"
+msgstr "以列表显示"
+
#: templates/js/translated/part.js:2482
-msgid "Select Part Category"
-msgstr ""
+msgid "Display as grid"
+msgstr "以网格显示"
-#: templates/js/translated/part.js:2495
-msgid "Category is required"
-msgstr ""
-
-#: templates/js/translated/part.js:2595
+#: templates/js/translated/part.js:2580
msgid "No subcategories found"
msgstr ""
-#: templates/js/translated/part.js:2631 templates/js/translated/stock.js:2437
+#: templates/js/translated/part.js:2616 templates/js/translated/stock.js:2568
msgid "Display as tree"
msgstr "以树形图显示"
-#: templates/js/translated/part.js:2711
+#: templates/js/translated/part.js:2696
msgid "Load Subcategories"
msgstr ""
-#: templates/js/translated/part.js:2727
+#: templates/js/translated/part.js:2712
msgid "Subscribed category"
msgstr ""
-#: templates/js/translated/part.js:2807
+#: templates/js/translated/part.js:2792
msgid "No test templates matching query"
msgstr ""
-#: templates/js/translated/part.js:2858 templates/js/translated/stock.js:1380
+#: templates/js/translated/part.js:2843 templates/js/translated/stock.js:1379
msgid "Edit test result"
msgstr "编辑测试结果"
-#: templates/js/translated/part.js:2859 templates/js/translated/stock.js:1381
-#: templates/js/translated/stock.js:1643
+#: templates/js/translated/part.js:2844 templates/js/translated/stock.js:1380
+#: templates/js/translated/stock.js:1642
msgid "Delete test result"
msgstr "删除测试结果"
-#: templates/js/translated/part.js:2863
+#: templates/js/translated/part.js:2848
msgid "This test is defined for a parent part"
msgstr ""
-#: templates/js/translated/part.js:2879
+#: templates/js/translated/part.js:2864
msgid "Edit Test Result Template"
msgstr ""
-#: templates/js/translated/part.js:2893
+#: templates/js/translated/part.js:2878
msgid "Delete Test Result Template"
msgstr ""
-#: templates/js/translated/part.js:2972 templates/js/translated/part.js:2973
+#: templates/js/translated/part.js:2957 templates/js/translated/part.js:2958
msgid "No date specified"
msgstr "无指定日期"
-#: templates/js/translated/part.js:2975
+#: templates/js/translated/part.js:2960
msgid "Specified date is in the past"
msgstr "指定的日期已过"
-#: templates/js/translated/part.js:2981
+#: templates/js/translated/part.js:2966
msgid "Speculative"
msgstr ""
-#: templates/js/translated/part.js:3031
+#: templates/js/translated/part.js:3016
msgid "No scheduling information available for this part"
msgstr ""
-#: templates/js/translated/part.js:3037
+#: templates/js/translated/part.js:3022
msgid "Error fetching scheduling information for this part"
msgstr ""
-#: templates/js/translated/part.js:3133
+#: templates/js/translated/part.js:3118
msgid "Scheduled Stock Quantities"
msgstr ""
-#: templates/js/translated/part.js:3149
+#: templates/js/translated/part.js:3134
msgid "Maximum Quantity"
msgstr "最大数量"
-#: templates/js/translated/part.js:3194
+#: templates/js/translated/part.js:3179
msgid "Minimum Stock Level"
msgstr ""
@@ -11168,234 +11297,234 @@ msgstr ""
msgid "Variant Part"
msgstr ""
-#: templates/js/translated/purchase_order.js:155
+#: templates/js/translated/purchase_order.js:166
msgid "Select purchase order to duplicate"
msgstr ""
-#: templates/js/translated/purchase_order.js:162
+#: templates/js/translated/purchase_order.js:173
msgid "Duplicate Line Items"
msgstr ""
-#: templates/js/translated/purchase_order.js:163
+#: templates/js/translated/purchase_order.js:174
msgid "Duplicate all line items from the selected order"
msgstr ""
-#: templates/js/translated/purchase_order.js:170
+#: templates/js/translated/purchase_order.js:181
msgid "Duplicate Extra Lines"
msgstr ""
-#: templates/js/translated/purchase_order.js:171
+#: templates/js/translated/purchase_order.js:182
msgid "Duplicate extra line items from the selected order"
msgstr ""
-#: templates/js/translated/purchase_order.js:192
+#: templates/js/translated/purchase_order.js:203
msgid "Edit Purchase Order"
msgstr ""
-#: templates/js/translated/purchase_order.js:209
+#: templates/js/translated/purchase_order.js:220
msgid "Duplication Options"
msgstr ""
-#: templates/js/translated/purchase_order.js:436
+#: templates/js/translated/purchase_order.js:447
msgid "Complete Purchase Order"
msgstr ""
-#: templates/js/translated/purchase_order.js:453
-#: templates/js/translated/return_order.js:195
-#: templates/js/translated/sales_order.js:485
+#: templates/js/translated/purchase_order.js:464
+#: templates/js/translated/return_order.js:207
+#: templates/js/translated/sales_order.js:497
msgid "Mark this order as complete?"
msgstr ""
-#: templates/js/translated/purchase_order.js:459
+#: templates/js/translated/purchase_order.js:470
msgid "All line items have been received"
msgstr ""
-#: templates/js/translated/purchase_order.js:464
+#: templates/js/translated/purchase_order.js:475
msgid "This order has line items which have not been marked as received."
msgstr ""
-#: templates/js/translated/purchase_order.js:465
-#: templates/js/translated/sales_order.js:499
+#: templates/js/translated/purchase_order.js:476
+#: templates/js/translated/sales_order.js:511
msgid "Completing this order means that the order and line items will no longer be editable."
msgstr ""
-#: templates/js/translated/purchase_order.js:488
+#: templates/js/translated/purchase_order.js:499
msgid "Cancel Purchase Order"
msgstr ""
-#: templates/js/translated/purchase_order.js:493
+#: templates/js/translated/purchase_order.js:504
msgid "Are you sure you wish to cancel this purchase order?"
msgstr ""
-#: templates/js/translated/purchase_order.js:499
+#: templates/js/translated/purchase_order.js:510
msgid "This purchase order can not be cancelled"
msgstr ""
-#: templates/js/translated/purchase_order.js:520
-#: templates/js/translated/return_order.js:149
+#: templates/js/translated/purchase_order.js:531
+#: templates/js/translated/return_order.js:161
msgid "After placing this order, line items will no longer be editable."
msgstr ""
-#: templates/js/translated/purchase_order.js:525
+#: templates/js/translated/purchase_order.js:536
msgid "Issue Purchase Order"
msgstr ""
-#: templates/js/translated/purchase_order.js:617
+#: templates/js/translated/purchase_order.js:628
msgid "At least one purchaseable part must be selected"
msgstr ""
-#: templates/js/translated/purchase_order.js:642
+#: templates/js/translated/purchase_order.js:653
msgid "Quantity to order"
msgstr ""
-#: templates/js/translated/purchase_order.js:651
+#: templates/js/translated/purchase_order.js:662
msgid "New supplier part"
msgstr ""
-#: templates/js/translated/purchase_order.js:669
+#: templates/js/translated/purchase_order.js:680
msgid "New purchase order"
msgstr ""
-#: templates/js/translated/purchase_order.js:701
+#: templates/js/translated/purchase_order.js:712
msgid "Add to purchase order"
msgstr ""
-#: templates/js/translated/purchase_order.js:845
+#: templates/js/translated/purchase_order.js:860
msgid "No matching supplier parts"
msgstr ""
-#: templates/js/translated/purchase_order.js:864
+#: templates/js/translated/purchase_order.js:879
msgid "No matching purchase orders"
msgstr ""
-#: templates/js/translated/purchase_order.js:1043
+#: templates/js/translated/purchase_order.js:1058
msgid "Select Line Items"
msgstr ""
-#: templates/js/translated/purchase_order.js:1044
-#: templates/js/translated/return_order.js:480
+#: templates/js/translated/purchase_order.js:1059
+#: templates/js/translated/return_order.js:492
msgid "At least one line item must be selected"
msgstr ""
-#: templates/js/translated/purchase_order.js:1074
+#: templates/js/translated/purchase_order.js:1089
msgid "Received Quantity"
msgstr ""
-#: templates/js/translated/purchase_order.js:1085
+#: templates/js/translated/purchase_order.js:1100
msgid "Quantity to receive"
msgstr ""
-#: templates/js/translated/purchase_order.js:1161
+#: templates/js/translated/purchase_order.js:1176
msgid "Stock Status"
msgstr ""
-#: templates/js/translated/purchase_order.js:1175
+#: templates/js/translated/purchase_order.js:1190
msgid "Add barcode"
msgstr ""
-#: templates/js/translated/purchase_order.js:1176
+#: templates/js/translated/purchase_order.js:1191
msgid "Remove barcode"
msgstr ""
-#: templates/js/translated/purchase_order.js:1179
+#: templates/js/translated/purchase_order.js:1194
msgid "Specify location"
msgstr ""
-#: templates/js/translated/purchase_order.js:1187
+#: templates/js/translated/purchase_order.js:1202
msgid "Add batch code"
msgstr ""
-#: templates/js/translated/purchase_order.js:1198
+#: templates/js/translated/purchase_order.js:1213
msgid "Add serial numbers"
msgstr ""
-#: templates/js/translated/purchase_order.js:1250
+#: templates/js/translated/purchase_order.js:1265
msgid "Serials"
msgstr ""
-#: templates/js/translated/purchase_order.js:1275
+#: templates/js/translated/purchase_order.js:1290
msgid "Order Code"
msgstr "订单编码"
-#: templates/js/translated/purchase_order.js:1277
+#: templates/js/translated/purchase_order.js:1292
msgid "Quantity to Receive"
msgstr ""
-#: templates/js/translated/purchase_order.js:1299
-#: templates/js/translated/return_order.js:545
+#: templates/js/translated/purchase_order.js:1314
+#: templates/js/translated/return_order.js:557
msgid "Confirm receipt of items"
msgstr ""
-#: templates/js/translated/purchase_order.js:1300
+#: templates/js/translated/purchase_order.js:1315
msgid "Receive Purchase Order Items"
msgstr ""
-#: templates/js/translated/purchase_order.js:1368
+#: templates/js/translated/purchase_order.js:1383
msgid "Scan Item Barcode"
msgstr ""
-#: templates/js/translated/purchase_order.js:1369
+#: templates/js/translated/purchase_order.js:1384
msgid "Scan barcode on incoming item (must not match any existing stock items)"
msgstr ""
-#: templates/js/translated/purchase_order.js:1383
+#: templates/js/translated/purchase_order.js:1398
msgid "Invalid barcode data"
msgstr ""
-#: templates/js/translated/purchase_order.js:1645
-#: templates/js/translated/return_order.js:274
-#: templates/js/translated/sales_order.js:762
-#: templates/js/translated/sales_order.js:986
+#: templates/js/translated/purchase_order.js:1660
+#: templates/js/translated/return_order.js:286
+#: templates/js/translated/sales_order.js:774
+#: templates/js/translated/sales_order.js:998
msgid "Order is overdue"
msgstr ""
-#: templates/js/translated/purchase_order.js:1707
-#: templates/js/translated/return_order.js:342
-#: templates/js/translated/sales_order.js:839
-#: templates/js/translated/sales_order.js:999
+#: templates/js/translated/purchase_order.js:1722
+#: templates/js/translated/return_order.js:354
+#: templates/js/translated/sales_order.js:851
+#: templates/js/translated/sales_order.js:1011
msgid "Items"
msgstr ""
-#: templates/js/translated/purchase_order.js:1806
+#: templates/js/translated/purchase_order.js:1821
msgid "All selected Line items will be deleted"
msgstr ""
-#: templates/js/translated/purchase_order.js:1824
+#: templates/js/translated/purchase_order.js:1839
msgid "Delete selected Line items?"
msgstr ""
-#: templates/js/translated/purchase_order.js:1884
-#: templates/js/translated/sales_order.js:2047
+#: templates/js/translated/purchase_order.js:1894
+#: templates/js/translated/sales_order.js:2059
msgid "Duplicate Line Item"
msgstr ""
-#: templates/js/translated/purchase_order.js:1899
-#: templates/js/translated/return_order.js:464
-#: templates/js/translated/return_order.js:653
-#: templates/js/translated/sales_order.js:2060
+#: templates/js/translated/purchase_order.js:1909
+#: templates/js/translated/return_order.js:476
+#: templates/js/translated/return_order.js:665
+#: templates/js/translated/sales_order.js:2072
msgid "Edit Line Item"
msgstr ""
-#: templates/js/translated/purchase_order.js:1910
-#: templates/js/translated/return_order.js:666
-#: templates/js/translated/sales_order.js:2071
+#: templates/js/translated/purchase_order.js:1920
+#: templates/js/translated/return_order.js:678
+#: templates/js/translated/sales_order.js:2083
msgid "Delete Line Item"
msgstr ""
-#: templates/js/translated/purchase_order.js:2192
-#: templates/js/translated/sales_order.js:2001
+#: templates/js/translated/purchase_order.js:2202
+#: templates/js/translated/sales_order.js:2013
msgid "Duplicate line item"
msgstr ""
-#: templates/js/translated/purchase_order.js:2193
-#: templates/js/translated/return_order.js:785
-#: templates/js/translated/sales_order.js:2002
+#: templates/js/translated/purchase_order.js:2203
+#: templates/js/translated/return_order.js:797
+#: templates/js/translated/sales_order.js:2014
msgid "Edit line item"
msgstr ""
-#: templates/js/translated/purchase_order.js:2194
-#: templates/js/translated/return_order.js:789
-#: templates/js/translated/sales_order.js:2008
+#: templates/js/translated/purchase_order.js:2204
+#: templates/js/translated/return_order.js:801
+#: templates/js/translated/sales_order.js:2020
msgid "Delete line item"
msgstr ""
@@ -11424,941 +11553,973 @@ msgstr ""
msgid "Add Customer"
msgstr ""
-#: templates/js/translated/return_order.js:119
+#: templates/js/translated/return_order.js:131
msgid "Create Return Order"
msgstr ""
-#: templates/js/translated/return_order.js:134
+#: templates/js/translated/return_order.js:146
msgid "Edit Return Order"
msgstr ""
-#: templates/js/translated/return_order.js:154
+#: templates/js/translated/return_order.js:166
msgid "Issue Return Order"
msgstr ""
-#: templates/js/translated/return_order.js:171
+#: templates/js/translated/return_order.js:183
msgid "Are you sure you wish to cancel this Return Order?"
msgstr ""
-#: templates/js/translated/return_order.js:178
+#: templates/js/translated/return_order.js:190
msgid "Cancel Return Order"
msgstr ""
-#: templates/js/translated/return_order.js:203
+#: templates/js/translated/return_order.js:215
msgid "Complete Return Order"
msgstr ""
-#: templates/js/translated/return_order.js:251
+#: templates/js/translated/return_order.js:263
msgid "No return orders found"
msgstr ""
-#: templates/js/translated/return_order.js:288
-#: templates/js/translated/sales_order.js:776
+#: templates/js/translated/return_order.js:300
+#: templates/js/translated/sales_order.js:788
msgid "Invalid Customer"
msgstr ""
-#: templates/js/translated/return_order.js:546
+#: templates/js/translated/return_order.js:558
msgid "Receive Return Order Items"
msgstr ""
-#: templates/js/translated/return_order.js:677
-#: templates/js/translated/sales_order.js:2207
+#: templates/js/translated/return_order.js:689
+#: templates/js/translated/sales_order.js:2219
msgid "No matching line items"
msgstr ""
-#: templates/js/translated/return_order.js:782
+#: templates/js/translated/return_order.js:794
msgid "Mark item as received"
msgstr ""
-#: templates/js/translated/sales_order.js:146
+#: templates/js/translated/sales_order.js:158
msgid "Create Sales Order"
msgstr ""
-#: templates/js/translated/sales_order.js:161
+#: templates/js/translated/sales_order.js:173
msgid "Edit Sales Order"
msgstr ""
-#: templates/js/translated/sales_order.js:276
+#: templates/js/translated/sales_order.js:288
msgid "No stock items have been allocated to this shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:281
+#: templates/js/translated/sales_order.js:293
msgid "The following stock items will be shipped"
msgstr ""
-#: templates/js/translated/sales_order.js:321
+#: templates/js/translated/sales_order.js:333
msgid "Complete Shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:345
+#: templates/js/translated/sales_order.js:357
msgid "Confirm Shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:401
+#: templates/js/translated/sales_order.js:413
msgid "No pending shipments found"
msgstr ""
-#: templates/js/translated/sales_order.js:405
+#: templates/js/translated/sales_order.js:417
msgid "No stock items have been allocated to pending shipments"
msgstr ""
-#: templates/js/translated/sales_order.js:415
+#: templates/js/translated/sales_order.js:427
msgid "Complete Shipments"
msgstr ""
-#: templates/js/translated/sales_order.js:437
+#: templates/js/translated/sales_order.js:449
msgid "Skip"
msgstr ""
-#: templates/js/translated/sales_order.js:498
+#: templates/js/translated/sales_order.js:510
msgid "This order has line items which have not been completed."
msgstr ""
-#: templates/js/translated/sales_order.js:520
+#: templates/js/translated/sales_order.js:532
msgid "Issue this Sales Order?"
msgstr ""
-#: templates/js/translated/sales_order.js:525
+#: templates/js/translated/sales_order.js:537
msgid "Issue Sales Order"
msgstr ""
-#: templates/js/translated/sales_order.js:544
+#: templates/js/translated/sales_order.js:556
msgid "Cancel Sales Order"
msgstr ""
-#: templates/js/translated/sales_order.js:549
+#: templates/js/translated/sales_order.js:561
msgid "Cancelling this order means that the order will no longer be editable."
msgstr ""
-#: templates/js/translated/sales_order.js:603
+#: templates/js/translated/sales_order.js:615
msgid "Create New Shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:713
+#: templates/js/translated/sales_order.js:725
msgid "No sales orders found"
msgstr ""
-#: templates/js/translated/sales_order.js:896
+#: templates/js/translated/sales_order.js:908
msgid "Edit shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:899
+#: templates/js/translated/sales_order.js:911
msgid "Complete shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:904
+#: templates/js/translated/sales_order.js:916
msgid "Delete shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:921
+#: templates/js/translated/sales_order.js:933
msgid "Edit Shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:936
+#: templates/js/translated/sales_order.js:948
msgid "Delete Shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:969
+#: templates/js/translated/sales_order.js:981
msgid "No matching shipments found"
msgstr ""
-#: templates/js/translated/sales_order.js:994
+#: templates/js/translated/sales_order.js:1006
msgid "Shipment Reference"
msgstr ""
-#: templates/js/translated/sales_order.js:1018
-#: templates/js/translated/sales_order.js:1515
+#: templates/js/translated/sales_order.js:1030
+#: templates/js/translated/sales_order.js:1527
msgid "Not shipped"
msgstr ""
-#: templates/js/translated/sales_order.js:1036
+#: templates/js/translated/sales_order.js:1048
msgid "Tracking"
msgstr ""
-#: templates/js/translated/sales_order.js:1040
+#: templates/js/translated/sales_order.js:1052
msgid "Invoice"
msgstr ""
-#: templates/js/translated/sales_order.js:1207
+#: templates/js/translated/sales_order.js:1219
msgid "Add Shipment"
msgstr ""
-#: templates/js/translated/sales_order.js:1258
+#: templates/js/translated/sales_order.js:1270
msgid "Confirm stock allocation"
msgstr "确认库存分配"
-#: templates/js/translated/sales_order.js:1259
+#: templates/js/translated/sales_order.js:1271
msgid "Allocate Stock Items to Sales Order"
msgstr ""
-#: templates/js/translated/sales_order.js:1463
+#: templates/js/translated/sales_order.js:1475
msgid "No sales order allocations found"
msgstr ""
-#: templates/js/translated/sales_order.js:1555
+#: templates/js/translated/sales_order.js:1567
msgid "Edit Stock Allocation"
msgstr ""
-#: templates/js/translated/sales_order.js:1569
+#: templates/js/translated/sales_order.js:1581
msgid "Confirm Delete Operation"
msgstr "确认删除操作"
-#: templates/js/translated/sales_order.js:1570
+#: templates/js/translated/sales_order.js:1582
msgid "Delete Stock Allocation"
msgstr ""
-#: templates/js/translated/sales_order.js:1609
-#: templates/js/translated/sales_order.js:1696
-#: templates/js/translated/stock.js:1688
+#: templates/js/translated/sales_order.js:1621
+#: templates/js/translated/sales_order.js:1708
+#: templates/js/translated/stock.js:1687
msgid "Shipped to customer"
msgstr ""
-#: templates/js/translated/sales_order.js:1617
-#: templates/js/translated/sales_order.js:1705
+#: templates/js/translated/sales_order.js:1629
+#: templates/js/translated/sales_order.js:1717
msgid "Stock location not specified"
msgstr ""
-#: templates/js/translated/sales_order.js:1985
+#: templates/js/translated/sales_order.js:1997
msgid "Allocate serial numbers"
msgstr ""
-#: templates/js/translated/sales_order.js:1989
+#: templates/js/translated/sales_order.js:2001
msgid "Purchase stock"
msgstr ""
-#: templates/js/translated/sales_order.js:1998
-#: templates/js/translated/sales_order.js:2185
+#: templates/js/translated/sales_order.js:2010
+#: templates/js/translated/sales_order.js:2197
msgid "Calculate price"
msgstr ""
-#: templates/js/translated/sales_order.js:2012
+#: templates/js/translated/sales_order.js:2024
msgid "Cannot be deleted as items have been shipped"
msgstr ""
-#: templates/js/translated/sales_order.js:2015
+#: templates/js/translated/sales_order.js:2027
msgid "Cannot be deleted as items have been allocated"
msgstr ""
-#: templates/js/translated/sales_order.js:2086
+#: templates/js/translated/sales_order.js:2098
msgid "Allocate Serial Numbers"
msgstr ""
-#: templates/js/translated/sales_order.js:2193
+#: templates/js/translated/sales_order.js:2205
msgid "Update Unit Price"
msgstr ""
-#: templates/js/translated/search.js:312
+#: templates/js/translated/search.js:270
msgid "No results"
msgstr ""
-#: templates/js/translated/search.js:334 templates/search.html:25
+#: templates/js/translated/search.js:292 templates/search.html:25
msgid "Enter search query"
msgstr ""
-#: templates/js/translated/search.js:384
+#: templates/js/translated/search.js:342
msgid "result"
msgstr ""
-#: templates/js/translated/search.js:384
+#: templates/js/translated/search.js:342
msgid "results"
msgstr ""
-#: templates/js/translated/search.js:394
+#: templates/js/translated/search.js:352
msgid "Minimize results"
msgstr ""
-#: templates/js/translated/search.js:397
+#: templates/js/translated/search.js:355
msgid "Remove results"
msgstr ""
-#: templates/js/translated/stock.js:98
+#: templates/js/translated/stock.js:97
msgid "Serialize Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:129
+#: templates/js/translated/stock.js:128
msgid "Confirm Stock Serialization"
msgstr ""
-#: templates/js/translated/stock.js:138
+#: templates/js/translated/stock.js:137
msgid "Parent stock location"
msgstr ""
-#: templates/js/translated/stock.js:173
+#: templates/js/translated/stock.js:172
msgid "Edit Stock Location"
msgstr "编辑仓储地点"
-#: templates/js/translated/stock.js:188
+#: templates/js/translated/stock.js:187
msgid "New Stock Location"
msgstr "新仓储地点"
-#: templates/js/translated/stock.js:190
+#: templates/js/translated/stock.js:189
msgid "Create another location after this one"
msgstr ""
-#: templates/js/translated/stock.js:191
+#: templates/js/translated/stock.js:190
msgid "Stock location created"
msgstr ""
-#: templates/js/translated/stock.js:205
+#: templates/js/translated/stock.js:204
msgid "Are you sure you want to delete this stock location?"
msgstr "确实要删除此仓储地点吗?"
-#: templates/js/translated/stock.js:212
+#: templates/js/translated/stock.js:211
msgid "Move to parent stock location"
msgstr ""
-#: templates/js/translated/stock.js:221
+#: templates/js/translated/stock.js:220
msgid "Delete Stock Location"
msgstr "删除仓储地点"
-#: templates/js/translated/stock.js:225
+#: templates/js/translated/stock.js:224
msgid "Action for stock items in this stock location"
msgstr ""
-#: templates/js/translated/stock.js:230
+#: templates/js/translated/stock.js:229
msgid "Action for sub-locations"
msgstr ""
-#: templates/js/translated/stock.js:284
+#: templates/js/translated/stock.js:283
msgid "This part cannot be serialized"
msgstr ""
-#: templates/js/translated/stock.js:320
+#: templates/js/translated/stock.js:319
msgid "Add given quantity as packs instead of individual items"
msgstr ""
-#: templates/js/translated/stock.js:329
+#: templates/js/translated/stock.js:328
msgid "Enter initial quantity for this stock item"
msgstr ""
-#: templates/js/translated/stock.js:335
+#: templates/js/translated/stock.js:334
msgid "Enter serial numbers for new stock (or leave blank)"
msgstr ""
-#: templates/js/translated/stock.js:406
+#: templates/js/translated/stock.js:405
msgid "Stock item duplicated"
msgstr "库存项重复"
-#: templates/js/translated/stock.js:426
+#: templates/js/translated/stock.js:425
msgid "Duplicate Stock Item"
msgstr "复制库存项"
-#: templates/js/translated/stock.js:442
+#: templates/js/translated/stock.js:441
msgid "Are you sure you want to delete this stock item?"
msgstr "确定要删除此库存项吗?"
-#: templates/js/translated/stock.js:447
+#: templates/js/translated/stock.js:446
msgid "Delete Stock Item"
msgstr "删除库存项"
-#: templates/js/translated/stock.js:468
+#: templates/js/translated/stock.js:467
msgid "Edit Stock Item"
msgstr "编辑库存项"
-#: templates/js/translated/stock.js:510
+#: templates/js/translated/stock.js:509
msgid "Create another item after this one"
msgstr ""
-#: templates/js/translated/stock.js:522
+#: templates/js/translated/stock.js:521
msgid "Created new stock item"
msgstr "新建库存项"
-#: templates/js/translated/stock.js:535
+#: templates/js/translated/stock.js:534
msgid "Created multiple stock items"
msgstr ""
-#: templates/js/translated/stock.js:560
+#: templates/js/translated/stock.js:559
msgid "Find Serial Number"
msgstr "查找序列号"
-#: templates/js/translated/stock.js:564 templates/js/translated/stock.js:565
+#: templates/js/translated/stock.js:563 templates/js/translated/stock.js:564
msgid "Enter serial number"
msgstr "输入序列号"
-#: templates/js/translated/stock.js:581
+#: templates/js/translated/stock.js:580
msgid "Enter a serial number"
msgstr "输入序列号"
-#: templates/js/translated/stock.js:601
+#: templates/js/translated/stock.js:600
msgid "No matching serial number"
msgstr "没有匹配的序列号"
-#: templates/js/translated/stock.js:610
+#: templates/js/translated/stock.js:609
msgid "More than one matching result found"
msgstr "找到多个匹配结果"
-#: templates/js/translated/stock.js:718
+#: templates/js/translated/stock.js:717
msgid "Confirm stock assignment"
msgstr ""
-#: templates/js/translated/stock.js:719
+#: templates/js/translated/stock.js:718
msgid "Assign Stock to Customer"
msgstr ""
-#: templates/js/translated/stock.js:796
+#: templates/js/translated/stock.js:795
msgid "Warning: Merge operation cannot be reversed"
msgstr ""
-#: templates/js/translated/stock.js:797
+#: templates/js/translated/stock.js:796
msgid "Some information will be lost when merging stock items"
msgstr ""
-#: templates/js/translated/stock.js:799
+#: templates/js/translated/stock.js:798
msgid "Stock transaction history will be deleted for merged items"
msgstr ""
-#: templates/js/translated/stock.js:800
+#: templates/js/translated/stock.js:799
msgid "Supplier part information will be deleted for merged items"
msgstr ""
-#: templates/js/translated/stock.js:891
+#: templates/js/translated/stock.js:890
msgid "Confirm stock item merge"
msgstr ""
-#: templates/js/translated/stock.js:892
+#: templates/js/translated/stock.js:891
msgid "Merge Stock Items"
msgstr ""
-#: templates/js/translated/stock.js:987
+#: templates/js/translated/stock.js:986
msgid "Transfer Stock"
msgstr "转移库存"
-#: templates/js/translated/stock.js:988
+#: templates/js/translated/stock.js:987
msgid "Move"
msgstr ""
-#: templates/js/translated/stock.js:994
+#: templates/js/translated/stock.js:993
msgid "Count Stock"
msgstr ""
-#: templates/js/translated/stock.js:995
+#: templates/js/translated/stock.js:994
msgid "Count"
msgstr ""
-#: templates/js/translated/stock.js:999
+#: templates/js/translated/stock.js:998
msgid "Remove Stock"
msgstr ""
-#: templates/js/translated/stock.js:1000
+#: templates/js/translated/stock.js:999
msgid "Take"
msgstr ""
-#: templates/js/translated/stock.js:1004
+#: templates/js/translated/stock.js:1003
msgid "Add Stock"
msgstr "添加库存"
-#: templates/js/translated/stock.js:1005 users/models.py:243
+#: templates/js/translated/stock.js:1004 users/models.py:249
msgid "Add"
msgstr "添加"
-#: templates/js/translated/stock.js:1009
+#: templates/js/translated/stock.js:1008
msgid "Delete Stock"
msgstr "删除库存"
-#: templates/js/translated/stock.js:1106
+#: templates/js/translated/stock.js:1105
msgid "Quantity cannot be adjusted for serialized stock"
msgstr ""
-#: templates/js/translated/stock.js:1106
+#: templates/js/translated/stock.js:1105
msgid "Specify stock quantity"
msgstr ""
-#: templates/js/translated/stock.js:1140
+#: templates/js/translated/stock.js:1139 templates/js/translated/stock.js:3151
msgid "Select Stock Items"
msgstr "选择库存项"
-#: templates/js/translated/stock.js:1141
-msgid "You must select at least one available stock item"
+#: templates/js/translated/stock.js:1140
+msgid "Select at least one available stock item"
msgstr ""
-#: templates/js/translated/stock.js:1168
+#: templates/js/translated/stock.js:1167
msgid "Confirm stock adjustment"
msgstr ""
-#: templates/js/translated/stock.js:1304
+#: templates/js/translated/stock.js:1303
msgid "PASS"
msgstr ""
-#: templates/js/translated/stock.js:1306
+#: templates/js/translated/stock.js:1305
msgid "FAIL"
msgstr ""
-#: templates/js/translated/stock.js:1311
+#: templates/js/translated/stock.js:1310
msgid "NO RESULT"
msgstr ""
-#: templates/js/translated/stock.js:1373
+#: templates/js/translated/stock.js:1372
msgid "Pass test"
msgstr ""
-#: templates/js/translated/stock.js:1376
+#: templates/js/translated/stock.js:1375
msgid "Add test result"
msgstr ""
-#: templates/js/translated/stock.js:1400
+#: templates/js/translated/stock.js:1399
msgid "No test results found"
msgstr ""
-#: templates/js/translated/stock.js:1464
+#: templates/js/translated/stock.js:1463
msgid "Test Date"
msgstr ""
-#: templates/js/translated/stock.js:1626
+#: templates/js/translated/stock.js:1625
msgid "Edit Test Result"
msgstr ""
-#: templates/js/translated/stock.js:1648
+#: templates/js/translated/stock.js:1647
msgid "Delete Test Result"
msgstr ""
-#: templates/js/translated/stock.js:1680
+#: templates/js/translated/stock.js:1679
msgid "In production"
msgstr "正在生产"
-#: templates/js/translated/stock.js:1684
+#: templates/js/translated/stock.js:1683
msgid "Installed in Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:1692
+#: templates/js/translated/stock.js:1691
msgid "Assigned to Sales Order"
msgstr ""
-#: templates/js/translated/stock.js:1698
+#: templates/js/translated/stock.js:1697
msgid "No stock location set"
msgstr "未设置仓储地点"
-#: templates/js/translated/stock.js:1746
+#: templates/js/translated/stock.js:1753
+msgid "Change stock status"
+msgstr ""
+
+#: templates/js/translated/stock.js:1762
+msgid "Merge stock"
+msgstr ""
+
+#: templates/js/translated/stock.js:1811
+msgid "Delete stock"
+msgstr ""
+
+#: templates/js/translated/stock.js:1866
msgid "stock items"
msgstr ""
-#: templates/js/translated/stock.js:1850
+#: templates/js/translated/stock.js:1871
+msgid "Scan to location"
+msgstr ""
+
+#: templates/js/translated/stock.js:1882
+msgid "Stock Actions"
+msgstr ""
+
+#: templates/js/translated/stock.js:1929
+msgid "Load installed items"
+msgstr ""
+
+#: templates/js/translated/stock.js:2007
msgid "Stock item is in production"
msgstr "库存品正在生产"
-#: templates/js/translated/stock.js:1855
+#: templates/js/translated/stock.js:2012
msgid "Stock item assigned to sales order"
msgstr ""
-#: templates/js/translated/stock.js:1858
+#: templates/js/translated/stock.js:2015
msgid "Stock item assigned to customer"
msgstr ""
-#: templates/js/translated/stock.js:1861
+#: templates/js/translated/stock.js:2018
msgid "Serialized stock item has been allocated"
msgstr ""
-#: templates/js/translated/stock.js:1863
+#: templates/js/translated/stock.js:2020
msgid "Stock item has been fully allocated"
msgstr ""
-#: templates/js/translated/stock.js:1865
+#: templates/js/translated/stock.js:2022
msgid "Stock item has been partially allocated"
msgstr ""
-#: templates/js/translated/stock.js:1868
+#: templates/js/translated/stock.js:2025
msgid "Stock item has been installed in another item"
msgstr ""
-#: templates/js/translated/stock.js:1870
+#: templates/js/translated/stock.js:2027
msgid "Stock item has been consumed by a build order"
msgstr ""
-#: templates/js/translated/stock.js:1874
+#: templates/js/translated/stock.js:2031
msgid "Stock item has expired"
msgstr ""
-#: templates/js/translated/stock.js:1876
+#: templates/js/translated/stock.js:2033
msgid "Stock item will expire soon"
msgstr ""
-#: templates/js/translated/stock.js:1881
+#: templates/js/translated/stock.js:2038
msgid "Stock item has been rejected"
msgstr ""
-#: templates/js/translated/stock.js:1883
+#: templates/js/translated/stock.js:2040
msgid "Stock item is lost"
msgstr ""
-#: templates/js/translated/stock.js:1885
+#: templates/js/translated/stock.js:2042
msgid "Stock item is destroyed"
msgstr ""
-#: templates/js/translated/stock.js:1889
-#: templates/js/translated/table_filters.js:296
+#: templates/js/translated/stock.js:2046
+#: templates/js/translated/table_filters.js:302
msgid "Depleted"
msgstr ""
-#: templates/js/translated/stock.js:2031
+#: templates/js/translated/stock.js:2188
msgid "Supplier part not specified"
msgstr ""
-#: templates/js/translated/stock.js:2078
+#: templates/js/translated/stock.js:2235
msgid "Stock Value"
msgstr ""
-#: templates/js/translated/stock.js:2170
+#: templates/js/translated/stock.js:2358
msgid "No stock items matching query"
msgstr ""
-#: templates/js/translated/stock.js:2319
+#: templates/js/translated/stock.js:2450
msgid "stock locations"
msgstr ""
-#: templates/js/translated/stock.js:2476
+#: templates/js/translated/stock.js:2607
msgid "Load Subloactions"
msgstr ""
-#: templates/js/translated/stock.js:2583
+#: templates/js/translated/stock.js:2714
msgid "Details"
msgstr "详情"
-#: templates/js/translated/stock.js:2587
+#: templates/js/translated/stock.js:2718
msgid "No changes"
msgstr ""
-#: templates/js/translated/stock.js:2599
+#: templates/js/translated/stock.js:2730
msgid "Part information unavailable"
msgstr ""
-#: templates/js/translated/stock.js:2621
+#: templates/js/translated/stock.js:2752
msgid "Location no longer exists"
msgstr ""
-#: templates/js/translated/stock.js:2638
+#: templates/js/translated/stock.js:2769
msgid "Build order no longer exists"
msgstr ""
-#: templates/js/translated/stock.js:2653
+#: templates/js/translated/stock.js:2784
msgid "Purchase order no longer exists"
msgstr ""
-#: templates/js/translated/stock.js:2670
+#: templates/js/translated/stock.js:2801
msgid "Sales Order no longer exists"
msgstr ""
-#: templates/js/translated/stock.js:2687
+#: templates/js/translated/stock.js:2818
msgid "Return Order no longer exists"
msgstr ""
-#: templates/js/translated/stock.js:2706
+#: templates/js/translated/stock.js:2837
msgid "Customer no longer exists"
msgstr ""
-#: templates/js/translated/stock.js:2724
+#: templates/js/translated/stock.js:2855
msgid "Stock item no longer exists"
msgstr ""
-#: templates/js/translated/stock.js:2742
+#: templates/js/translated/stock.js:2873
msgid "Added"
msgstr ""
-#: templates/js/translated/stock.js:2750
+#: templates/js/translated/stock.js:2881
msgid "Removed"
msgstr ""
-#: templates/js/translated/stock.js:2826
+#: templates/js/translated/stock.js:2953
msgid "No installed items"
msgstr ""
-#: templates/js/translated/stock.js:2876 templates/js/translated/stock.js:2911
+#: templates/js/translated/stock.js:3003 templates/js/translated/stock.js:3038
msgid "Uninstall Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:2929
+#: templates/js/translated/stock.js:3056
msgid "Select stock item to uninstall"
msgstr ""
-#: templates/js/translated/stock.js:2950
+#: templates/js/translated/stock.js:3077
msgid "Install another stock item into this item"
msgstr ""
-#: templates/js/translated/stock.js:2951
+#: templates/js/translated/stock.js:3078
msgid "Stock items can only be installed if they meet the following criteria"
msgstr ""
-#: templates/js/translated/stock.js:2953
+#: templates/js/translated/stock.js:3080
msgid "The Stock Item links to a Part which is the BOM for this Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:2954
+#: templates/js/translated/stock.js:3081
msgid "The Stock Item is currently available in stock"
msgstr ""
-#: templates/js/translated/stock.js:2955
+#: templates/js/translated/stock.js:3082
msgid "The Stock Item is not already installed in another item"
msgstr ""
-#: templates/js/translated/stock.js:2956
+#: templates/js/translated/stock.js:3083
msgid "The Stock Item is tracked by either a batch code or serial number"
msgstr ""
-#: templates/js/translated/stock.js:2969
+#: templates/js/translated/stock.js:3096
msgid "Select part to install"
msgstr ""
+#: templates/js/translated/stock.js:3152
+msgid "Select one or more stock items"
+msgstr ""
+
+#: templates/js/translated/stock.js:3165
+msgid "Selected stock items"
+msgstr ""
+
+#: templates/js/translated/stock.js:3169
+msgid "Change Stock Status"
+msgstr ""
+
#: templates/js/translated/table_filters.js:50
msgid "Has project code"
msgstr ""
-#: templates/js/translated/table_filters.js:59
-#: templates/js/translated/table_filters.js:518
-#: templates/js/translated/table_filters.js:530
-#: templates/js/translated/table_filters.js:571
+#: templates/js/translated/table_filters.js:65
+#: templates/js/translated/table_filters.js:540
+#: templates/js/translated/table_filters.js:552
+#: templates/js/translated/table_filters.js:593
msgid "Order status"
msgstr ""
-#: templates/js/translated/table_filters.js:64
-#: templates/js/translated/table_filters.js:535
-#: templates/js/translated/table_filters.js:561
-#: templates/js/translated/table_filters.js:576
+#: templates/js/translated/table_filters.js:70
+#: templates/js/translated/table_filters.js:557
+#: templates/js/translated/table_filters.js:583
+#: templates/js/translated/table_filters.js:598
msgid "Outstanding"
msgstr ""
-#: templates/js/translated/table_filters.js:72
-#: templates/js/translated/table_filters.js:458
-#: templates/js/translated/table_filters.js:543
-#: templates/js/translated/table_filters.js:584
+#: templates/js/translated/table_filters.js:78
+#: templates/js/translated/table_filters.js:464
+#: templates/js/translated/table_filters.js:565
+#: templates/js/translated/table_filters.js:606
msgid "Assigned to me"
msgstr ""
-#: templates/js/translated/table_filters.js:128
+#: templates/js/translated/table_filters.js:134
msgid "Trackable Part"
msgstr "可追溯商品"
-#: templates/js/translated/table_filters.js:132
+#: templates/js/translated/table_filters.js:138
msgid "Assembled Part"
msgstr ""
-#: templates/js/translated/table_filters.js:136
+#: templates/js/translated/table_filters.js:142
msgid "Has Available Stock"
msgstr ""
-#: templates/js/translated/table_filters.js:152
+#: templates/js/translated/table_filters.js:158
msgid "Allow Variant Stock"
msgstr ""
-#: templates/js/translated/table_filters.js:164
-#: templates/js/translated/table_filters.js:692
+#: templates/js/translated/table_filters.js:170
+#: templates/js/translated/table_filters.js:714
msgid "Has Pricing"
msgstr ""
-#: templates/js/translated/table_filters.js:204
-#: templates/js/translated/table_filters.js:291
+#: templates/js/translated/table_filters.js:210
+#: templates/js/translated/table_filters.js:297
msgid "Include sublocations"
msgstr ""
-#: templates/js/translated/table_filters.js:205
+#: templates/js/translated/table_filters.js:211
msgid "Include locations"
msgstr ""
-#: templates/js/translated/table_filters.js:224
-#: templates/js/translated/table_filters.js:225
-#: templates/js/translated/table_filters.js:624
+#: templates/js/translated/table_filters.js:230
+#: templates/js/translated/table_filters.js:231
+#: templates/js/translated/table_filters.js:646
msgid "Include subcategories"
msgstr ""
-#: templates/js/translated/table_filters.js:233
-#: templates/js/translated/table_filters.js:672
+#: templates/js/translated/table_filters.js:239
+#: templates/js/translated/table_filters.js:694
msgid "Subscribed"
msgstr ""
-#: templates/js/translated/table_filters.js:244
-#: templates/js/translated/table_filters.js:326
+#: templates/js/translated/table_filters.js:250
+#: templates/js/translated/table_filters.js:332
msgid "Is Serialized"
msgstr ""
-#: templates/js/translated/table_filters.js:247
-#: templates/js/translated/table_filters.js:333
+#: templates/js/translated/table_filters.js:253
+#: templates/js/translated/table_filters.js:339
msgid "Serial number GTE"
msgstr ""
-#: templates/js/translated/table_filters.js:248
-#: templates/js/translated/table_filters.js:334
+#: templates/js/translated/table_filters.js:254
+#: templates/js/translated/table_filters.js:340
msgid "Serial number greater than or equal to"
msgstr ""
-#: templates/js/translated/table_filters.js:251
-#: templates/js/translated/table_filters.js:337
+#: templates/js/translated/table_filters.js:257
+#: templates/js/translated/table_filters.js:343
msgid "Serial number LTE"
msgstr ""
-#: templates/js/translated/table_filters.js:252
-#: templates/js/translated/table_filters.js:338
+#: templates/js/translated/table_filters.js:258
+#: templates/js/translated/table_filters.js:344
msgid "Serial number less than or equal to"
msgstr ""
-#: templates/js/translated/table_filters.js:255
-#: templates/js/translated/table_filters.js:256
-#: templates/js/translated/table_filters.js:329
-#: templates/js/translated/table_filters.js:330
+#: templates/js/translated/table_filters.js:261
+#: templates/js/translated/table_filters.js:262
+#: templates/js/translated/table_filters.js:335
+#: templates/js/translated/table_filters.js:336
msgid "Serial number"
msgstr ""
-#: templates/js/translated/table_filters.js:260
-#: templates/js/translated/table_filters.js:351
+#: templates/js/translated/table_filters.js:266
+#: templates/js/translated/table_filters.js:357
msgid "Batch code"
msgstr ""
-#: templates/js/translated/table_filters.js:271
-#: templates/js/translated/table_filters.js:613
+#: templates/js/translated/table_filters.js:277
+#: templates/js/translated/table_filters.js:635
msgid "Active parts"
msgstr ""
-#: templates/js/translated/table_filters.js:272
+#: templates/js/translated/table_filters.js:278
msgid "Show stock for active parts"
msgstr ""
-#: templates/js/translated/table_filters.js:277
+#: templates/js/translated/table_filters.js:283
msgid "Part is an assembly"
msgstr ""
-#: templates/js/translated/table_filters.js:281
+#: templates/js/translated/table_filters.js:287
msgid "Is allocated"
msgstr ""
-#: templates/js/translated/table_filters.js:282
+#: templates/js/translated/table_filters.js:288
msgid "Item has been allocated"
msgstr ""
-#: templates/js/translated/table_filters.js:287
+#: templates/js/translated/table_filters.js:293
msgid "Stock is available for use"
msgstr ""
-#: templates/js/translated/table_filters.js:292
+#: templates/js/translated/table_filters.js:298
msgid "Include stock in sublocations"
msgstr ""
-#: templates/js/translated/table_filters.js:297
+#: templates/js/translated/table_filters.js:303
msgid "Show stock items which are depleted"
msgstr ""
-#: templates/js/translated/table_filters.js:302
+#: templates/js/translated/table_filters.js:308
msgid "Show items which are in stock"
msgstr ""
-#: templates/js/translated/table_filters.js:306
+#: templates/js/translated/table_filters.js:312
msgid "In Production"
msgstr "正在生产"
-#: templates/js/translated/table_filters.js:307
+#: templates/js/translated/table_filters.js:313
msgid "Show items which are in production"
msgstr "显示正在生产的项目"
-#: templates/js/translated/table_filters.js:311
+#: templates/js/translated/table_filters.js:317
msgid "Include Variants"
msgstr ""
-#: templates/js/translated/table_filters.js:312
+#: templates/js/translated/table_filters.js:318
msgid "Include stock items for variant parts"
msgstr ""
-#: templates/js/translated/table_filters.js:316
+#: templates/js/translated/table_filters.js:322
msgid "Installed"
msgstr ""
-#: templates/js/translated/table_filters.js:317
+#: templates/js/translated/table_filters.js:323
msgid "Show stock items which are installed in another item"
msgstr ""
-#: templates/js/translated/table_filters.js:322
+#: templates/js/translated/table_filters.js:328
msgid "Show items which have been assigned to a customer"
msgstr ""
-#: templates/js/translated/table_filters.js:342
-#: templates/js/translated/table_filters.js:343
+#: templates/js/translated/table_filters.js:348
+#: templates/js/translated/table_filters.js:349
msgid "Stock status"
msgstr ""
-#: templates/js/translated/table_filters.js:346
+#: templates/js/translated/table_filters.js:352
msgid "Has batch code"
msgstr ""
-#: templates/js/translated/table_filters.js:354
-msgid "Tracked"
-msgstr ""
-
-#: templates/js/translated/table_filters.js:355
+#: templates/js/translated/table_filters.js:361
msgid "Stock item is tracked by either batch code or serial number"
msgstr ""
-#: templates/js/translated/table_filters.js:360
+#: templates/js/translated/table_filters.js:366
msgid "Has purchase price"
msgstr ""
-#: templates/js/translated/table_filters.js:361
+#: templates/js/translated/table_filters.js:367
msgid "Show stock items which have a purchase price set"
msgstr ""
-#: templates/js/translated/table_filters.js:365
+#: templates/js/translated/table_filters.js:371
msgid "Expiry Date before"
msgstr ""
-#: templates/js/translated/table_filters.js:369
+#: templates/js/translated/table_filters.js:375
msgid "Expiry Date after"
msgstr ""
-#: templates/js/translated/table_filters.js:382
+#: templates/js/translated/table_filters.js:388
msgid "Show stock items which have expired"
msgstr ""
-#: templates/js/translated/table_filters.js:388
+#: templates/js/translated/table_filters.js:394
msgid "Show stock which is close to expiring"
msgstr ""
-#: templates/js/translated/table_filters.js:402
+#: templates/js/translated/table_filters.js:408
msgid "Test Passed"
msgstr ""
-#: templates/js/translated/table_filters.js:406
+#: templates/js/translated/table_filters.js:412
msgid "Include Installed Items"
msgstr ""
-#: templates/js/translated/table_filters.js:445
+#: templates/js/translated/table_filters.js:451
msgid "Build status"
msgstr "生产状态"
-#: templates/js/translated/table_filters.js:625
+#: templates/js/translated/table_filters.js:647
msgid "Include parts in subcategories"
msgstr ""
-#: templates/js/translated/table_filters.js:630
+#: templates/js/translated/table_filters.js:652
msgid "Show active parts"
msgstr ""
-#: templates/js/translated/table_filters.js:638
+#: templates/js/translated/table_filters.js:660
msgid "Available stock"
msgstr ""
-#: templates/js/translated/table_filters.js:646
-#: templates/js/translated/table_filters.js:742
+#: templates/js/translated/table_filters.js:668
+#: templates/js/translated/table_filters.js:764
msgid "Has Units"
msgstr ""
-#: templates/js/translated/table_filters.js:647
+#: templates/js/translated/table_filters.js:669
msgid "Part has defined units"
msgstr ""
-#: templates/js/translated/table_filters.js:651
+#: templates/js/translated/table_filters.js:673
msgid "Has IPN"
msgstr ""
-#: templates/js/translated/table_filters.js:652
+#: templates/js/translated/table_filters.js:674
msgid "Part has internal part number"
msgstr "商品有内部编号"
-#: templates/js/translated/table_filters.js:656
+#: templates/js/translated/table_filters.js:678
msgid "In stock"
msgstr ""
-#: templates/js/translated/table_filters.js:664
+#: templates/js/translated/table_filters.js:686
msgid "Purchasable"
msgstr ""
-#: templates/js/translated/table_filters.js:676
+#: templates/js/translated/table_filters.js:698
msgid "Has stocktake entries"
msgstr ""
-#: templates/js/translated/table_filters.js:738
+#: templates/js/translated/table_filters.js:760
msgid "Has Choices"
msgstr ""
@@ -12390,51 +12551,51 @@ msgstr ""
msgid "Select File Format"
msgstr ""
-#: templates/js/translated/tables.js:561
+#: templates/js/translated/tables.js:537
msgid "Loading data"
msgstr ""
-#: templates/js/translated/tables.js:564
+#: templates/js/translated/tables.js:540
msgid "rows per page"
msgstr ""
-#: templates/js/translated/tables.js:569
+#: templates/js/translated/tables.js:545
msgid "Showing all rows"
msgstr ""
-#: templates/js/translated/tables.js:571
+#: templates/js/translated/tables.js:547
msgid "Showing"
msgstr ""
-#: templates/js/translated/tables.js:571
+#: templates/js/translated/tables.js:547
msgid "to"
msgstr ""
-#: templates/js/translated/tables.js:571
+#: templates/js/translated/tables.js:547
msgid "of"
msgstr ""
-#: templates/js/translated/tables.js:571
+#: templates/js/translated/tables.js:547
msgid "rows"
msgstr ""
-#: templates/js/translated/tables.js:578
+#: templates/js/translated/tables.js:554
msgid "No matching results"
msgstr ""
-#: templates/js/translated/tables.js:581
+#: templates/js/translated/tables.js:557
msgid "Hide/Show pagination"
msgstr ""
-#: templates/js/translated/tables.js:587
+#: templates/js/translated/tables.js:563
msgid "Toggle"
msgstr ""
-#: templates/js/translated/tables.js:590
+#: templates/js/translated/tables.js:566
msgid "Columns"
msgstr ""
-#: templates/js/translated/tables.js:593
+#: templates/js/translated/tables.js:569
msgid "All"
msgstr ""
@@ -12616,50 +12777,6 @@ msgstr "电子邮件设置"
msgid "Email settings not configured"
msgstr "电子邮件设置未配置"
-#: templates/stock_table.html:17
-msgid "Barcode Actions"
-msgstr ""
-
-#: templates/stock_table.html:28
-msgid "Stock Options"
-msgstr ""
-
-#: templates/stock_table.html:33
-msgid "Add to selected stock items"
-msgstr ""
-
-#: templates/stock_table.html:34
-msgid "Remove from selected stock items"
-msgstr ""
-
-#: templates/stock_table.html:35
-msgid "Stocktake selected stock items"
-msgstr ""
-
-#: templates/stock_table.html:36
-msgid "Move selected stock items"
-msgstr ""
-
-#: templates/stock_table.html:37
-msgid "Merge selected stock items"
-msgstr ""
-
-#: templates/stock_table.html:37
-msgid "Merge stock"
-msgstr ""
-
-#: templates/stock_table.html:38
-msgid "Order selected items"
-msgstr ""
-
-#: templates/stock_table.html:42
-msgid "Delete selected items"
-msgstr ""
-
-#: templates/stock_table.html:42
-msgid "Delete stock"
-msgstr ""
-
#: templates/yesnolabel.html:4
msgid "Yes"
msgstr "确定"
@@ -12692,35 +12809,35 @@ msgstr "权限"
msgid "Important dates"
msgstr "重要日期"
-#: users/models.py:230
+#: users/models.py:236
msgid "Permission set"
msgstr "权限设置"
-#: users/models.py:238
+#: users/models.py:244
msgid "Group"
msgstr "群组"
-#: users/models.py:241
+#: users/models.py:247
msgid "View"
msgstr "视图"
-#: users/models.py:241
+#: users/models.py:247
msgid "Permission to view items"
msgstr "查看项目权限"
-#: users/models.py:243
+#: users/models.py:249
msgid "Permission to add items"
msgstr "添加项目权限"
-#: users/models.py:245
+#: users/models.py:251
msgid "Change"
msgstr "更改"
-#: users/models.py:245
+#: users/models.py:251
msgid "Permissions to edit items"
msgstr "编辑项目权限"
-#: users/models.py:247
+#: users/models.py:253
msgid "Permission to delete items"
msgstr "删除项目权限"
diff --git a/InvenTree/locale/zh_Hans/LC_MESSAGES/django.po b/InvenTree/locale/zh_Hans/LC_MESSAGES/django.po
index badd96430f..4ef461fe1f 100644
--- a/InvenTree/locale/zh_Hans/LC_MESSAGES/django.po
+++ b/InvenTree/locale/zh_Hans/LC_MESSAGES/django.po
@@ -2,7 +2,7 @@ msgid ""
msgstr ""
"Project-Id-Version: inventree\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2023-06-05 11:04+0000\n"
+"POT-Creation-Date: 2023-06-12 21:36+0000\n"
"PO-Revision-Date: 2023-02-28 22:38\n"
"Last-Translator: \n"
"Language-Team: Chinese Simplified\n"
@@ -56,12 +56,12 @@ msgstr "输入日期"
#: InvenTree/fields.py:206 InvenTree/models.py:766 build/serializers.py:427
#: build/serializers.py:506 build/templates/build/sidebar.html:23
#: company/models.py:597 company/templates/company/sidebar.html:35
-#: order/models.py:1086 order/templates/order/po_sidebar.html:11
+#: order/models.py:1089 order/templates/order/po_sidebar.html:11
#: order/templates/order/return_order_sidebar.html:9
#: order/templates/order/so_sidebar.html:17 part/admin.py:41
-#: part/models.py:3004 part/templates/part/part_sidebar.html:63
+#: part/models.py:3005 part/templates/part/part_sidebar.html:63
#: report/templates/report/inventree_build_order_base.html:172
-#: stock/admin.py:121 stock/models.py:2159 stock/models.py:2267
+#: stock/admin.py:121 stock/models.py:2160 stock/models.py:2268
#: stock/serializers.py:342 stock/serializers.py:475 stock/serializers.py:556
#: stock/serializers.py:839 stock/serializers.py:938 stock/serializers.py:1070
#: stock/templates/stock/stock_sidebar.html:25
@@ -125,7 +125,7 @@ msgstr "所提供的主要电子邮件地址无效。"
msgid "The provided email domain is not approved."
msgstr "提供的电子邮件域未被核准。"
-#: InvenTree/helpers.py:462 order/models.py:439 order/models.py:608
+#: InvenTree/helpers.py:462 order/models.py:442 order/models.py:611
msgid "Invalid quantity provided"
msgstr "提供的数量无效"
@@ -241,7 +241,7 @@ msgstr "缺少文件"
msgid "Missing external link"
msgstr "缺少外部链接"
-#: InvenTree/models.py:486 stock/models.py:2261
+#: InvenTree/models.py:486 stock/models.py:2262
#: templates/js/translated/attachment.js:119
#: templates/js/translated/attachment.js:306
msgid "Attachment"
@@ -251,10 +251,10 @@ msgstr "附件"
msgid "Select file to attach"
msgstr "选择附件"
-#: InvenTree/models.py:493 common/models.py:2695 company/models.py:132
-#: company/models.py:306 company/models.py:584 order/models.py:233
-#: order/models.py:1090 order/models.py:1450 part/admin.py:39
-#: part/models.py:900 part/templates/part/part_scheduling.html:11
+#: InvenTree/models.py:493 common/models.py:2688 company/models.py:132
+#: company/models.py:306 company/models.py:584 order/models.py:236
+#: order/models.py:1093 order/models.py:1453 part/admin.py:39
+#: part/models.py:901 part/templates/part/part_scheduling.html:11
#: report/templates/report/inventree_build_order_base.html:164
#: stock/admin.py:120 templates/js/translated/company.js:977
#: templates/js/translated/company.js:1283 templates/js/translated/order.js:351
@@ -267,7 +267,7 @@ msgstr "选择附件"
msgid "Link"
msgstr "链接"
-#: InvenTree/models.py:494 build/models.py:291 part/models.py:901
+#: InvenTree/models.py:494 build/models.py:291 part/models.py:902
#: stock/models.py:735
msgid "Link to external URL"
msgstr "链接到外部 URL"
@@ -281,10 +281,10 @@ msgstr "注释"
msgid "File comment"
msgstr "文件注释"
-#: InvenTree/models.py:503 InvenTree/models.py:504 common/models.py:2154
-#: common/models.py:2155 common/models.py:2368 common/models.py:2369
-#: common/models.py:2625 common/models.py:2626 part/models.py:3012
-#: part/models.py:3100 part/models.py:3179 part/models.py:3199
+#: InvenTree/models.py:503 InvenTree/models.py:504 common/models.py:2147
+#: common/models.py:2148 common/models.py:2361 common/models.py:2362
+#: common/models.py:2618 common/models.py:2619 part/models.py:3013
+#: part/models.py:3101 part/models.py:3180 part/models.py:3200
#: plugin/models.py:217 plugin/models.py:218
#: report/templates/report/inventree_test_report_base.html:105
#: templates/js/translated/stock.js:2773
@@ -328,12 +328,12 @@ msgstr ""
msgid "Invalid choice"
msgstr "选择无效"
-#: InvenTree/models.py:648 InvenTree/models.py:649 common/models.py:2354
-#: company/models.py:390 label/models.py:103 part/models.py:846
-#: part/models.py:3399 plugin/models.py:41 report/models.py:160
+#: InvenTree/models.py:648 InvenTree/models.py:649 common/models.py:2347
+#: company/models.py:390 label/models.py:103 part/models.py:847
+#: part/models.py:3400 plugin/models.py:41 report/models.py:160
#: templates/InvenTree/settings/mixins/urls.html:13
#: templates/InvenTree/settings/notifications.html:17
-#: templates/InvenTree/settings/plugin.html:80
+#: templates/InvenTree/settings/plugin.html:78
#: templates/InvenTree/settings/plugin_settings.html:22
#: templates/js/translated/company.js:658
#: templates/js/translated/company.js:706
@@ -350,8 +350,8 @@ msgstr "名称"
#: company/templates/company/company_base.html:72
#: company/templates/company/manufacturer_part.html:75
#: company/templates/company/supplier_part.html:108 label/models.py:110
-#: order/models.py:229 order/models.py:1114 part/admin.py:194 part/admin.py:276
-#: part/models.py:868 part/models.py:3415 part/templates/part/category.html:81
+#: order/models.py:232 order/models.py:1117 part/admin.py:194 part/admin.py:276
+#: part/models.py:869 part/models.py:3416 part/templates/part/category.html:81
#: part/templates/part/part_base.html:172
#: part/templates/part/part_scheduling.html:12 report/models.py:173
#: report/models.py:587 report/models.py:631
@@ -425,12 +425,12 @@ msgstr "服务器错误"
msgid "An error has been logged by the server."
msgstr "服务器记录了一个错误。"
-#: InvenTree/serializers.py:60 part/models.py:3896
+#: InvenTree/serializers.py:60 part/models.py:3897
msgid "Must be a valid number"
msgstr "必须是有效数字"
#: InvenTree/serializers.py:90 company/models.py:154
-#: company/templates/company/company_base.html:107 part/models.py:2851
+#: company/templates/company/company_base.html:107 part/models.py:2852
#: templates/InvenTree/settings/settings_staff_js.html:44
#: templates/currency_data.html:5
msgid "Currency"
@@ -503,113 +503,113 @@ msgstr "远程图像文件的 URL"
msgid "Downloading images from remote URL is not enabled"
msgstr "未启用从远程 URL下载图像"
-#: InvenTree/settings.py:713
+#: InvenTree/settings.py:722
msgid "Czech"
msgstr "捷克语"
-#: InvenTree/settings.py:714
+#: InvenTree/settings.py:723
msgid "Danish"
msgstr "丹麦语"
-#: InvenTree/settings.py:715
+#: InvenTree/settings.py:724
msgid "German"
msgstr "德语"
-#: InvenTree/settings.py:716
+#: InvenTree/settings.py:725
msgid "Greek"
msgstr "希腊语"
-#: InvenTree/settings.py:717
+#: InvenTree/settings.py:726
msgid "English"
msgstr "英语"
-#: InvenTree/settings.py:718
+#: InvenTree/settings.py:727
msgid "Spanish"
msgstr "西班牙语"
-#: InvenTree/settings.py:719
+#: InvenTree/settings.py:728
msgid "Spanish (Mexican)"
msgstr "西班牙语(墨西哥)"
-#: InvenTree/settings.py:720
+#: InvenTree/settings.py:729
msgid "Farsi / Persian"
msgstr "波斯语"
-#: InvenTree/settings.py:721
+#: InvenTree/settings.py:730
#, fuzzy
#| msgid "Danish"
msgid "Finnish"
msgstr "丹麦语"
-#: InvenTree/settings.py:722
+#: InvenTree/settings.py:731
msgid "French"
msgstr "法语"
-#: InvenTree/settings.py:723
+#: InvenTree/settings.py:732
msgid "Hebrew"
msgstr "希伯来语"
-#: InvenTree/settings.py:724
+#: InvenTree/settings.py:733
msgid "Hungarian"
msgstr "匈牙利语"
-#: InvenTree/settings.py:725
+#: InvenTree/settings.py:734
msgid "Italian"
msgstr "意大利语"
-#: InvenTree/settings.py:726
+#: InvenTree/settings.py:735
msgid "Japanese"
msgstr "日语"
-#: InvenTree/settings.py:727
+#: InvenTree/settings.py:736
msgid "Korean"
msgstr "韩语"
-#: InvenTree/settings.py:728
+#: InvenTree/settings.py:737
msgid "Dutch"
msgstr "荷兰语"
-#: InvenTree/settings.py:729
+#: InvenTree/settings.py:738
msgid "Norwegian"
msgstr "挪威语"
-#: InvenTree/settings.py:730
+#: InvenTree/settings.py:739
msgid "Polish"
msgstr "波兰语"
-#: InvenTree/settings.py:731
+#: InvenTree/settings.py:740
msgid "Portuguese"
msgstr "葡萄牙语"
-#: InvenTree/settings.py:732
+#: InvenTree/settings.py:741
msgid "Portuguese (Brazilian)"
msgstr "葡萄牙语 (巴西)"
-#: InvenTree/settings.py:733
+#: InvenTree/settings.py:742
msgid "Russian"
msgstr "俄语"
-#: InvenTree/settings.py:734
+#: InvenTree/settings.py:743
msgid "Slovenian"
msgstr "斯洛文尼亚"
-#: InvenTree/settings.py:735
+#: InvenTree/settings.py:744
msgid "Swedish"
msgstr "瑞典语"
-#: InvenTree/settings.py:736
+#: InvenTree/settings.py:745
msgid "Thai"
msgstr "泰语"
-#: InvenTree/settings.py:737
+#: InvenTree/settings.py:746
msgid "Turkish"
msgstr "土耳其语"
-#: InvenTree/settings.py:738
+#: InvenTree/settings.py:747
msgid "Vietnamese"
msgstr "越南语"
-#: InvenTree/settings.py:739
+#: InvenTree/settings.py:748
msgid "Chinese"
msgstr "中文(简体)"
@@ -625,210 +625,213 @@ msgstr "未配置电子邮件后端"
msgid "InvenTree system health checks failed"
msgstr "InventTree系统健康检查失败"
-#: InvenTree/status_codes.py:139 InvenTree/status_codes.py:181
-#: InvenTree/status_codes.py:360 InvenTree/status_codes.py:397
-#: InvenTree/status_codes.py:432 templates/js/translated/table_filters.js:511
+#: InvenTree/status_codes.py:12 InvenTree/status_codes.py:40
+#: InvenTree/status_codes.py:148 InvenTree/status_codes.py:167
+#: InvenTree/status_codes.py:188 generic/states/tests.py:16
+#: templates/js/translated/table_filters.js:511
msgid "Pending"
msgstr "待定"
-#: InvenTree/status_codes.py:140
+#: InvenTree/status_codes.py:13 generic/states/tests.py:17
msgid "Placed"
msgstr "已添加"
-#: InvenTree/status_codes.py:141 InvenTree/status_codes.py:363
-#: InvenTree/status_codes.py:399 order/templates/order/order_base.html:162
+#: InvenTree/status_codes.py:14 InvenTree/status_codes.py:151
+#: InvenTree/status_codes.py:172 generic/states/tests.py:18
+#: order/templates/order/order_base.html:162
#: order/templates/order/sales_order_base.html:162
msgid "Complete"
msgstr "完成"
-#: InvenTree/status_codes.py:142 InvenTree/status_codes.py:184
-#: InvenTree/status_codes.py:362 InvenTree/status_codes.py:400
+#: InvenTree/status_codes.py:15 InvenTree/status_codes.py:43
+#: InvenTree/status_codes.py:150 InvenTree/status_codes.py:173
msgid "Cancelled"
msgstr "已取消"
-#: InvenTree/status_codes.py:143 InvenTree/status_codes.py:185
-#: InvenTree/status_codes.py:227
+#: InvenTree/status_codes.py:16 InvenTree/status_codes.py:44
+#: InvenTree/status_codes.py:71
msgid "Lost"
msgstr "丢失"
-#: InvenTree/status_codes.py:144 InvenTree/status_codes.py:186
+#: InvenTree/status_codes.py:17 InvenTree/status_codes.py:45
+#: InvenTree/status_codes.py:73
msgid "Returned"
msgstr "已退回"
-#: InvenTree/status_codes.py:182 InvenTree/status_codes.py:398
+#: InvenTree/status_codes.py:41 InvenTree/status_codes.py:170
msgid "In Progress"
msgstr ""
-#: InvenTree/status_codes.py:183 order/models.py:1329
+#: InvenTree/status_codes.py:42 order/models.py:1332
#: templates/js/translated/sales_order.js:1509
#: templates/js/translated/sales_order.js:1630
#: templates/js/translated/sales_order.js:1934
msgid "Shipped"
msgstr "已发货"
-#: InvenTree/status_codes.py:223
+#: InvenTree/status_codes.py:66
msgid "OK"
msgstr "OK"
-#: InvenTree/status_codes.py:224
+#: InvenTree/status_codes.py:67
msgid "Attention needed"
msgstr "需要关注"
-#: InvenTree/status_codes.py:225
+#: InvenTree/status_codes.py:68
msgid "Damaged"
msgstr "破损"
-#: InvenTree/status_codes.py:226
+#: InvenTree/status_codes.py:69
msgid "Destroyed"
msgstr "已销毁"
-#: InvenTree/status_codes.py:228
+#: InvenTree/status_codes.py:70
msgid "Rejected"
msgstr "已拒绝"
-#: InvenTree/status_codes.py:229
+#: InvenTree/status_codes.py:72
msgid "Quarantined"
msgstr "隔离"
-#: InvenTree/status_codes.py:308
+#: InvenTree/status_codes.py:91
msgid "Legacy stock tracking entry"
msgstr "旧库存跟踪条目"
-#: InvenTree/status_codes.py:310 templates/js/translated/stock.js:511
+#: InvenTree/status_codes.py:93 templates/js/translated/stock.js:511
msgid "Stock item created"
msgstr "库存项已创建"
-#: InvenTree/status_codes.py:312
+#: InvenTree/status_codes.py:96
msgid "Edited stock item"
msgstr "已编辑库存项"
-#: InvenTree/status_codes.py:313
+#: InvenTree/status_codes.py:97
msgid "Assigned serial number"
msgstr "已分配序列号"
-#: InvenTree/status_codes.py:315
+#: InvenTree/status_codes.py:100
msgid "Stock counted"
msgstr "库存计数"
-#: InvenTree/status_codes.py:316
+#: InvenTree/status_codes.py:101
msgid "Stock manually added"
msgstr "已手动添加库存"
-#: InvenTree/status_codes.py:317
+#: InvenTree/status_codes.py:102
msgid "Stock manually removed"
msgstr "库存手动删除"
-#: InvenTree/status_codes.py:319
+#: InvenTree/status_codes.py:105
msgid "Location changed"
msgstr "仓储地点已更改"
-#: InvenTree/status_codes.py:320
+#: InvenTree/status_codes.py:106
#, fuzzy
#| msgid "Stock counted"
msgid "Stock updated"
msgstr "库存计数"
-#: InvenTree/status_codes.py:322
+#: InvenTree/status_codes.py:109
msgid "Installed into assembly"
msgstr "安装到组装中"
-#: InvenTree/status_codes.py:323
+#: InvenTree/status_codes.py:110
msgid "Removed from assembly"
msgstr "已从组装中删除"
-#: InvenTree/status_codes.py:325
+#: InvenTree/status_codes.py:112
msgid "Installed component item"
msgstr "已安装组件项"
-#: InvenTree/status_codes.py:326
+#: InvenTree/status_codes.py:113
msgid "Removed component item"
msgstr "已删除组件项"
-#: InvenTree/status_codes.py:328
+#: InvenTree/status_codes.py:116
msgid "Split from parent item"
msgstr "从父项拆分"
-#: InvenTree/status_codes.py:329
+#: InvenTree/status_codes.py:117
msgid "Split child item"
msgstr "拆分子项"
-#: InvenTree/status_codes.py:331 templates/js/translated/stock.js:2243
+#: InvenTree/status_codes.py:120 templates/js/translated/stock.js:2243
msgid "Merged stock items"
msgstr "合并的库存项目"
-#: InvenTree/status_codes.py:333
+#: InvenTree/status_codes.py:123
msgid "Converted to variant"
msgstr "转换为变量"
-#: InvenTree/status_codes.py:335 templates/js/translated/table_filters.js:321
-msgid "Sent to customer"
-msgstr "发送给客户"
-
-#: InvenTree/status_codes.py:336
-msgid "Returned from customer"
-msgstr "从客户退货"
-
-#: InvenTree/status_codes.py:338
+#: InvenTree/status_codes.py:126
msgid "Build order output created"
msgstr "已创建生产订单输出"
-#: InvenTree/status_codes.py:339
+#: InvenTree/status_codes.py:127
msgid "Build order output completed"
msgstr "生产订单输出已完成"
-#: InvenTree/status_codes.py:340
+#: InvenTree/status_codes.py:128
#, fuzzy
#| msgid "Build order output created"
msgid "Build order output rejected"
msgstr "已创建生产订单输出"
-#: InvenTree/status_codes.py:341 templates/js/translated/stock.js:1676
+#: InvenTree/status_codes.py:129 templates/js/translated/stock.js:1676
msgid "Consumed by build order"
msgstr "被生产订单消耗"
-#: InvenTree/status_codes.py:343
+#: InvenTree/status_codes.py:132
#, fuzzy
#| msgid "Received against purchase order"
msgid "Shipped against Sales Order"
msgstr "收到定购单"
-#: InvenTree/status_codes.py:345
+#: InvenTree/status_codes.py:135
#, fuzzy
#| msgid "Received against purchase order"
msgid "Received against Purchase Order"
msgstr "收到定购单"
-#: InvenTree/status_codes.py:347
+#: InvenTree/status_codes.py:138
#, fuzzy
#| msgid "Received against purchase order"
msgid "Returned against Return Order"
msgstr "收到定购单"
-#: InvenTree/status_codes.py:361
+#: InvenTree/status_codes.py:141 templates/js/translated/table_filters.js:321
+msgid "Sent to customer"
+msgstr "发送给客户"
+
+#: InvenTree/status_codes.py:142
+msgid "Returned from customer"
+msgstr "从客户退货"
+
+#: InvenTree/status_codes.py:149
msgid "Production"
msgstr "生产中"
-#: InvenTree/status_codes.py:433
+#: InvenTree/status_codes.py:191
#, fuzzy
#| msgid "Returned"
msgid "Return"
msgstr "已退回"
-#: InvenTree/status_codes.py:434
+#: InvenTree/status_codes.py:194
msgid "Repair"
msgstr ""
-#: InvenTree/status_codes.py:435
-msgid "Refund"
-msgstr ""
-
-#: InvenTree/status_codes.py:436
+#: InvenTree/status_codes.py:197
#, fuzzy
#| msgid "Placed"
msgid "Replace"
msgstr "已添加"
-#: InvenTree/status_codes.py:437
+#: InvenTree/status_codes.py:200
+msgid "Refund"
+msgstr ""
+
+#: InvenTree/status_codes.py:203
#, fuzzy
#| msgid "Rejected"
msgid "Reject"
@@ -880,7 +883,7 @@ msgstr "系统信息"
msgid "About InvenTree"
msgstr "关于 InventTree"
-#: build/api.py:221
+#: build/api.py:222
msgid "Build must be cancelled before it can be deleted"
msgstr "在删除前必须取消生产"
@@ -912,9 +915,9 @@ msgstr "上级生产选项无效"
msgid "Build Order Reference"
msgstr "相关生产订单"
-#: build/models.py:156 order/models.py:356 order/models.py:762
-#: order/models.py:1084 order/models.py:1721 part/admin.py:278
-#: part/models.py:3797 part/templates/part/upload_bom.html:54
+#: build/models.py:156 order/models.py:359 order/models.py:765
+#: order/models.py:1087 order/models.py:1724 part/admin.py:278
+#: part/models.py:3798 part/templates/part/upload_bom.html:54
#: report/templates/report/inventree_bill_of_materials_report.html:139
#: report/templates/report/inventree_po_report_base.html:28
#: report/templates/report/inventree_return_order_report_base.html:26
@@ -945,11 +948,11 @@ msgstr "此次生产匹配的订单"
#: build/models.py:181 build/templates/build/build_base.html:98
#: build/templates/build/detail.html:29 company/models.py:775
-#: order/models.py:1192 order/models.py:1308 order/models.py:1309
-#: part/models.py:390 part/models.py:2864 part/models.py:2978
-#: part/models.py:3118 part/models.py:3137 part/models.py:3156
-#: part/models.py:3177 part/models.py:3269 part/models.py:3554
-#: part/models.py:3662 part/models.py:3762 part/models.py:4076
+#: order/models.py:1195 order/models.py:1311 order/models.py:1312
+#: part/models.py:391 part/models.py:2865 part/models.py:2979
+#: part/models.py:3119 part/models.py:3138 part/models.py:3157
+#: part/models.py:3178 part/models.py:3270 part/models.py:3555
+#: part/models.py:3663 part/models.py:3763 part/models.py:4077
#: part/serializers.py:842 part/serializers.py:1245
#: part/templates/part/part_app_base.html:8
#: part/templates/part/part_pricing.html:12
@@ -1047,7 +1050,7 @@ msgstr "生产状态"
msgid "Build status code"
msgstr "生产状态代码"
-#: build/models.py:246 build/serializers.py:269 order/serializers.py:505
+#: build/models.py:246 build/serializers.py:269 order/serializers.py:506
#: stock/models.py:739 templates/js/translated/purchase_order.js:1099
msgid "Batch Code"
msgstr "批量代码"
@@ -1056,7 +1059,7 @@ msgstr "批量代码"
msgid "Batch code for this build output"
msgstr "此生产产出的批量代码"
-#: build/models.py:253 order/models.py:241 part/models.py:1037
+#: build/models.py:253 order/models.py:244 part/models.py:1038
#: part/templates/part/part_base.html:312
#: templates/js/translated/return_order.js:327
#: templates/js/translated/sales_order.js:815
@@ -1071,7 +1074,7 @@ msgstr "预计完成日期"
msgid "Target date for build completion. Build will be overdue after this date."
msgstr "生产完成的目标日期。生产将在此日期之后逾期。"
-#: build/models.py:261 order/models.py:406 order/models.py:1764
+#: build/models.py:261 order/models.py:409 order/models.py:1767
#: templates/js/translated/build.js:2953
msgid "Completion Date"
msgstr "完成日期:"
@@ -1089,10 +1092,10 @@ msgid "User who issued this build order"
msgstr "发布此生产订单的用户"
#: build/models.py:284 build/templates/build/build_base.html:204
-#: build/templates/build/detail.html:122 order/models.py:255
+#: build/templates/build/detail.html:122 order/models.py:258
#: order/templates/order/order_base.html:214
#: order/templates/order/return_order_base.html:182
-#: order/templates/order/sales_order_base.html:222 part/models.py:1041
+#: order/templates/order/sales_order_base.html:222 part/models.py:1042
#: part/templates/part/part_base.html:392
#: report/templates/report/inventree_build_order_base.html:158
#: templates/js/translated/build.js:2925
@@ -1147,9 +1150,9 @@ msgid "Build output does not match Build Order"
msgstr "生产产出与订单不匹配"
#: build/models.py:815 build/serializers.py:212 build/serializers.py:251
-#: build/serializers.py:811 order/models.py:437 order/serializers.py:378
-#: order/serializers.py:500 part/serializers.py:1087 part/serializers.py:1408
-#: stock/models.py:593 stock/models.py:1386 stock/serializers.py:315
+#: build/serializers.py:811 order/models.py:440 order/serializers.py:379
+#: order/serializers.py:501 part/serializers.py:1087 part/serializers.py:1408
+#: stock/models.py:593 stock/models.py:1387 stock/serializers.py:315
msgid "Quantity must be greater than zero"
msgstr "数量必须大于0"
@@ -1168,11 +1171,11 @@ msgstr "生产项必须指定生产产出,因为主部件已经被标记为可
msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})"
msgstr "分配数量 ({q}) 不得超过可用库存数量 ({a})"
-#: build/models.py:1291 order/models.py:1598
+#: build/models.py:1291 order/models.py:1601
msgid "Stock item is over-allocated"
msgstr "库存物品分配过度!"
-#: build/models.py:1297 order/models.py:1601
+#: build/models.py:1297 order/models.py:1604
msgid "Allocation quantity must be greater than zero"
msgstr "分配数量必须大于0"
@@ -1194,8 +1197,8 @@ msgstr "生产"
msgid "Build to allocate parts"
msgstr "生产以分配部件"
-#: build/models.py:1455 build/serializers.py:791 order/serializers.py:1058
-#: order/serializers.py:1079 stock/serializers.py:413 stock/serializers.py:770
+#: build/models.py:1455 build/serializers.py:791 order/serializers.py:1059
+#: order/serializers.py:1080 stock/serializers.py:413 stock/serializers.py:770
#: stock/serializers.py:896 stock/templates/stock/item_base.html:10
#: stock/templates/stock/item_base.html:23
#: stock/templates/stock/item_base.html:195
@@ -1218,10 +1221,10 @@ msgstr "源库存项"
#: build/models.py:1468 build/serializers.py:198 build/serializers.py:236
#: build/templates/build/build_base.html:103
-#: build/templates/build/detail.html:34 common/models.py:2176
-#: order/models.py:1070 order/models.py:1642 order/serializers.py:1232
+#: build/templates/build/detail.html:34 common/models.py:2169
+#: order/models.py:1073 order/models.py:1645 order/serializers.py:1233
#: order/templates/order/order_wizard/match_parts.html:30 part/admin.py:277
-#: part/forms.py:47 part/models.py:2991 part/models.py:3778
+#: part/forms.py:47 part/models.py:2992 part/models.py:3779
#: part/templates/part/part_pricing.html:16
#: part/templates/part/upload_bom.html:53
#: report/templates/report/inventree_bill_of_materials_report.html:138
@@ -1308,7 +1311,7 @@ msgstr "对于可追踪的部件,需要整数型数值"
msgid "Integer quantity required, as the bill of materials contains trackable parts"
msgstr "需要整数型数值,因为BOM包含可追踪的部件"
-#: build/serializers.py:276 order/serializers.py:513 order/serializers.py:1236
+#: build/serializers.py:276 order/serializers.py:514 order/serializers.py:1237
#: stock/serializers.py:324 templates/js/translated/purchase_order.js:1123
#: templates/js/translated/stock.js:334 templates/js/translated/stock.js:532
msgid "Serial Numbers"
@@ -1326,7 +1329,7 @@ msgstr "自动分配序列号"
msgid "Automatically allocate required items with matching serial numbers"
msgstr "自动为所需项分配对应的序列号"
-#: build/serializers.py:326 stock/api.py:669
+#: build/serializers.py:326 stock/api.py:670
msgid "The following serial numbers already exist or are invalid"
msgstr "以下序列号已存在或无效"
@@ -1334,8 +1337,8 @@ msgstr "以下序列号已存在或无效"
msgid "A list of build outputs must be provided"
msgstr "必须提供生产产出列表"
-#: build/serializers.py:415 build/serializers.py:488 order/serializers.py:486
-#: order/serializers.py:605 order/serializers.py:1587 part/serializers.py:854
+#: build/serializers.py:415 build/serializers.py:488 order/serializers.py:487
+#: order/serializers.py:606 order/serializers.py:1588 part/serializers.py:854
#: stock/serializers.py:335 stock/serializers.py:470 stock/serializers.py:551
#: stock/serializers.py:931 stock/serializers.py:1173
#: stock/templates/stock/item_base.html:390
@@ -1381,8 +1384,8 @@ msgid "Location for completed build outputs"
msgstr "已完成生产产出的仓储地点"
#: build/serializers.py:495 build/templates/build/build_base.html:151
-#: build/templates/build/detail.html:62 order/models.py:788
-#: order/models.py:1747 order/serializers.py:523 stock/admin.py:106
+#: build/templates/build/detail.html:62 order/models.py:791
+#: order/models.py:1750 order/serializers.py:524 stock/admin.py:106
#: stock/templates/stock/item_base.html:423
#: templates/js/translated/barcode.js:252 templates/js/translated/build.js:2897
#: templates/js/translated/purchase_order.js:1278
@@ -1454,7 +1457,7 @@ msgstr "接受库存项未被完成分配至此生产订单"
msgid "Required stock has not been fully allocated"
msgstr "所需库存尚未完全分配"
-#: build/serializers.py:664 order/serializers.py:260 order/serializers.py:1126
+#: build/serializers.py:664 order/serializers.py:261 order/serializers.py:1127
msgid "Accept Incomplete"
msgstr "接受未完成"
@@ -1470,8 +1473,8 @@ msgstr "所需生产数量尚未完成"
msgid "Build order has incomplete outputs"
msgstr "生产订单有未完成的产出"
-#: build/serializers.py:714 build/serializers.py:768 part/models.py:3685
-#: part/models.py:4068
+#: build/serializers.py:714 build/serializers.py:768 part/models.py:3686
+#: part/models.py:4069
msgid "BOM Item"
msgstr "BOM项"
@@ -1491,7 +1494,7 @@ msgstr "bom_item.part 必须与生产订单指向相同的部件"
msgid "Item must be in stock"
msgstr "项目必须在库存中"
-#: build/serializers.py:846 order/serializers.py:1116
+#: build/serializers.py:846 order/serializers.py:1117
#, python-brace-format
msgid "Available quantity ({q}) exceeded"
msgstr "可用量 ({q}) 超出了限制"
@@ -1508,7 +1511,7 @@ msgstr "对于未被追踪的部件,无法指定生产产出"
msgid "This stock item has already been allocated to this build output"
msgstr "此库存项已被分配至此生产产出"
-#: build/serializers.py:887 order/serializers.py:1400
+#: build/serializers.py:887 order/serializers.py:1401
msgid "Allocation items must be provided"
msgstr "必须提供分配的项"
@@ -1674,8 +1677,8 @@ msgid "Stock has not been fully allocated to this Build Order"
msgstr "库存尚未被完全分配到此构建订单"
#: build/templates/build/build_base.html:160
-#: build/templates/build/detail.html:138 order/models.py:237
-#: order/models.py:1096 order/templates/order/order_base.html:190
+#: build/templates/build/detail.html:138 order/models.py:240
+#: order/models.py:1099 order/templates/order/order_base.html:190
#: order/templates/order/return_order_base.html:165
#: order/templates/order/sales_order_base.html:193
#: report/templates/report/inventree_build_order_base.html:125
@@ -1714,8 +1717,8 @@ msgid "Completed"
msgstr "已完成"
#: build/templates/build/build_base.html:190
-#: build/templates/build/detail.html:101 order/api.py:1451 order/models.py:1301
-#: order/models.py:1400 order/models.py:1548
+#: build/templates/build/detail.html:101 order/api.py:1454 order/models.py:1304
+#: order/models.py:1403 order/models.py:1551
#: order/templates/order/sales_order_base.html:9
#: order/templates/order/sales_order_base.html:28
#: report/templates/report/inventree_build_order_base.html:135
@@ -1768,7 +1771,7 @@ msgstr "库存来源"
msgid "Stock can be taken from any available location."
msgstr "库存可以从任何可用的地点获得。"
-#: build/templates/build/detail.html:49 order/models.py:1219
+#: build/templates/build/detail.html:49 order/models.py:1222
#: templates/js/translated/purchase_order.js:2157
msgid "Destination"
msgstr "目的地"
@@ -2014,7 +2017,7 @@ msgstr "已更新"
msgid "Timestamp of last update"
msgstr "最后一次更新时间"
-#: common/models.py:104 order/admin.py:17 order/models.py:231
+#: common/models.py:104 order/admin.py:17 order/models.py:234
#: templates/InvenTree/settings/settings_staff_js.html:70
#: templates/js/translated/purchase_order.js:1670
#: templates/js/translated/return_order.js:306
@@ -2179,7 +2182,7 @@ msgstr ""
#: common/models.py:1028 common/models.py:1046 common/models.py:1053
#: common/models.py:1064 common/models.py:1075 common/models.py:1299
-#: common/models.py:1323 common/models.py:1446 common/models.py:1695
+#: common/models.py:1323 common/models.py:1446 common/models.py:1688
msgid "days"
msgstr "天"
@@ -2315,7 +2318,7 @@ msgstr ""
msgid "Copy category parameter templates when creating a part"
msgstr ""
-#: common/models.py:1162 part/admin.py:55 part/models.py:3559
+#: common/models.py:1162 part/admin.py:55 part/models.py:3560
#: report/models.py:166 templates/js/translated/table_filters.js:109
#: templates/js/translated/table_filters.js:680
msgid "Template"
@@ -2325,7 +2328,7 @@ msgstr "模板"
msgid "Parts are templates by default"
msgstr ""
-#: common/models.py:1169 part/admin.py:51 part/admin.py:283 part/models.py:995
+#: common/models.py:1169 part/admin.py:51 part/admin.py:283 part/models.py:996
#: templates/js/translated/bom.js:1598
#: templates/js/translated/table_filters.js:276
#: templates/js/translated/table_filters.js:634
@@ -2336,7 +2339,7 @@ msgstr "组装"
msgid "Parts can be assembled from other components by default"
msgstr ""
-#: common/models.py:1176 part/admin.py:52 part/models.py:1001
+#: common/models.py:1176 part/admin.py:52 part/models.py:1002
#: templates/js/translated/table_filters.js:642
msgid "Component"
msgstr "组件"
@@ -2345,7 +2348,7 @@ msgstr "组件"
msgid "Parts can be used as sub-components by default"
msgstr ""
-#: common/models.py:1183 part/admin.py:53 part/models.py:1012
+#: common/models.py:1183 part/admin.py:53 part/models.py:1013
msgid "Purchaseable"
msgstr "可购买"
@@ -2353,7 +2356,7 @@ msgstr "可购买"
msgid "Parts are purchaseable by default"
msgstr "商品默认可购买"
-#: common/models.py:1190 part/admin.py:54 part/models.py:1017
+#: common/models.py:1190 part/admin.py:54 part/models.py:1018
#: templates/js/translated/table_filters.js:668
msgid "Salable"
msgstr "可销售"
@@ -2362,7 +2365,7 @@ msgstr "可销售"
msgid "Parts are salable by default"
msgstr "商品默认可销售"
-#: common/models.py:1197 part/admin.py:56 part/models.py:1007
+#: common/models.py:1197 part/admin.py:56 part/models.py:1008
#: templates/js/translated/table_filters.js:117
#: templates/js/translated/table_filters.js:193
#: templates/js/translated/table_filters.js:684
@@ -2373,7 +2376,7 @@ msgstr "可追踪"
msgid "Parts are trackable by default"
msgstr "商品默认可跟踪"
-#: common/models.py:1204 part/admin.py:57 part/models.py:1027
+#: common/models.py:1204 part/admin.py:57 part/models.py:1028
#: part/templates/part/part_base.html:156
#: templates/js/translated/table_filters.js:113
#: templates/js/translated/table_filters.js:688
@@ -2830,563 +2833,555 @@ msgstr ""
msgid "Check that all plugins are installed on startup - enable in container environments"
msgstr ""
-#: common/models.py:1620
-msgid "Check plugin signatures"
-msgstr ""
-
#: common/models.py:1621
-msgid "Check and show signatures for plugins"
-msgstr ""
-
-#: common/models.py:1628
msgid "Enable URL integration"
msgstr ""
-#: common/models.py:1629
+#: common/models.py:1622
msgid "Enable plugins to add URL routes"
msgstr ""
-#: common/models.py:1636
+#: common/models.py:1629
msgid "Enable navigation integration"
msgstr ""
-#: common/models.py:1637
+#: common/models.py:1630
msgid "Enable plugins to integrate into navigation"
msgstr ""
-#: common/models.py:1644
+#: common/models.py:1637
msgid "Enable app integration"
msgstr ""
-#: common/models.py:1645
+#: common/models.py:1638
msgid "Enable plugins to add apps"
msgstr ""
-#: common/models.py:1652
+#: common/models.py:1645
msgid "Enable schedule integration"
msgstr ""
-#: common/models.py:1653
+#: common/models.py:1646
msgid "Enable plugins to run scheduled tasks"
msgstr ""
-#: common/models.py:1660
+#: common/models.py:1653
msgid "Enable event integration"
msgstr ""
-#: common/models.py:1661
+#: common/models.py:1654
msgid "Enable plugins to respond to internal events"
msgstr ""
-#: common/models.py:1668
+#: common/models.py:1661
#, fuzzy
#| msgid "Sales Orders"
msgid "Enable project codes"
msgstr "销售订单"
-#: common/models.py:1669
+#: common/models.py:1662
msgid "Enable project codes for tracking projects"
msgstr ""
-#: common/models.py:1675
+#: common/models.py:1668
msgid "Stocktake Functionality"
msgstr ""
-#: common/models.py:1676
+#: common/models.py:1669
msgid "Enable stocktake functionality for recording stock levels and calculating stock value"
msgstr ""
-#: common/models.py:1682
+#: common/models.py:1675
msgid "Automatic Stocktake Period"
msgstr ""
-#: common/models.py:1683
+#: common/models.py:1676
msgid "Number of days between automatic stocktake recording (set to zero to disable)"
msgstr ""
-#: common/models.py:1692
+#: common/models.py:1685
msgid "Report Deletion Interval"
msgstr ""
-#: common/models.py:1693
+#: common/models.py:1686
msgid "Stocktake reports will be deleted after specified number of days"
msgstr ""
-#: common/models.py:1710 common/models.py:2147
+#: common/models.py:1703 common/models.py:2140
msgid "Settings key (must be unique - case insensitive"
msgstr ""
-#: common/models.py:1729
+#: common/models.py:1722
msgid "No Printer (Export to PDF)"
msgstr ""
-#: common/models.py:1751
+#: common/models.py:1744
#, fuzzy
#| msgid "Build to allocate parts"
msgid "Hide inactive parts"
msgstr "生产以分配部件"
-#: common/models.py:1752
+#: common/models.py:1745
msgid "Hide inactive parts in results displayed on the homepage"
msgstr ""
-#: common/models.py:1758
+#: common/models.py:1751
msgid "Show subscribed parts"
msgstr ""
-#: common/models.py:1759
+#: common/models.py:1752
msgid "Show subscribed parts on the homepage"
msgstr ""
-#: common/models.py:1765
+#: common/models.py:1758
msgid "Show subscribed categories"
msgstr ""
-#: common/models.py:1766
+#: common/models.py:1759
msgid "Show subscribed part categories on the homepage"
msgstr ""
-#: common/models.py:1772
+#: common/models.py:1765
msgid "Show latest parts"
msgstr "显示最近商品"
-#: common/models.py:1773
+#: common/models.py:1766
msgid "Show latest parts on the homepage"
msgstr "在主页上显示最近商品"
-#: common/models.py:1779
+#: common/models.py:1772
msgid "Recent Part Count"
msgstr ""
-#: common/models.py:1780
+#: common/models.py:1773
msgid "Number of recent parts to display on index page"
msgstr ""
-#: common/models.py:1786
+#: common/models.py:1779
msgid "Show unvalidated BOMs"
msgstr ""
-#: common/models.py:1787
+#: common/models.py:1780
msgid "Show BOMs that await validation on the homepage"
msgstr ""
-#: common/models.py:1793
+#: common/models.py:1786
msgid "Show recent stock changes"
msgstr ""
-#: common/models.py:1794
+#: common/models.py:1787
msgid "Show recently changed stock items on the homepage"
msgstr ""
-#: common/models.py:1800
+#: common/models.py:1793
msgid "Recent Stock Count"
msgstr ""
-#: common/models.py:1801
+#: common/models.py:1794
msgid "Number of recent stock items to display on index page"
msgstr ""
-#: common/models.py:1807
+#: common/models.py:1800
msgid "Show low stock"
msgstr ""
-#: common/models.py:1808
+#: common/models.py:1801
msgid "Show low stock items on the homepage"
msgstr ""
-#: common/models.py:1814
+#: common/models.py:1807
msgid "Show depleted stock"
msgstr ""
-#: common/models.py:1815
+#: common/models.py:1808
msgid "Show depleted stock items on the homepage"
msgstr ""
-#: common/models.py:1821
+#: common/models.py:1814
msgid "Show needed stock"
msgstr ""
-#: common/models.py:1822
+#: common/models.py:1815
msgid "Show stock items needed for builds on the homepage"
msgstr ""
-#: common/models.py:1828
+#: common/models.py:1821
msgid "Show expired stock"
msgstr ""
-#: common/models.py:1829
+#: common/models.py:1822
msgid "Show expired stock items on the homepage"
msgstr ""
-#: common/models.py:1835
+#: common/models.py:1828
msgid "Show stale stock"
msgstr ""
-#: common/models.py:1836
+#: common/models.py:1829
msgid "Show stale stock items on the homepage"
msgstr ""
-#: common/models.py:1842
+#: common/models.py:1835
msgid "Show pending builds"
msgstr ""
-#: common/models.py:1843
+#: common/models.py:1836
msgid "Show pending builds on the homepage"
msgstr ""
-#: common/models.py:1849
+#: common/models.py:1842
msgid "Show overdue builds"
msgstr "显示逾期生产"
-#: common/models.py:1850
+#: common/models.py:1843
msgid "Show overdue builds on the homepage"
msgstr "在主页上显示逾期的生产"
-#: common/models.py:1856
+#: common/models.py:1849
msgid "Show outstanding POs"
msgstr ""
-#: common/models.py:1857
+#: common/models.py:1850
msgid "Show outstanding POs on the homepage"
msgstr ""
-#: common/models.py:1863
+#: common/models.py:1856
msgid "Show overdue POs"
msgstr ""
-#: common/models.py:1864
+#: common/models.py:1857
msgid "Show overdue POs on the homepage"
msgstr ""
-#: common/models.py:1870
+#: common/models.py:1863
msgid "Show outstanding SOs"
msgstr ""
-#: common/models.py:1871
+#: common/models.py:1864
msgid "Show outstanding SOs on the homepage"
msgstr ""
-#: common/models.py:1877
+#: common/models.py:1870
msgid "Show overdue SOs"
msgstr ""
-#: common/models.py:1878
+#: common/models.py:1871
msgid "Show overdue SOs on the homepage"
msgstr ""
-#: common/models.py:1884
+#: common/models.py:1877
msgid "Show pending SO shipments"
msgstr ""
-#: common/models.py:1885
+#: common/models.py:1878
#, fuzzy
#| msgid "Show latest parts on the homepage"
msgid "Show pending SO shipments on the homepage"
msgstr "在主页上显示最近商品"
-#: common/models.py:1891
+#: common/models.py:1884
msgid "Show News"
msgstr ""
-#: common/models.py:1892
+#: common/models.py:1885
msgid "Show news on the homepage"
msgstr ""
-#: common/models.py:1898
+#: common/models.py:1891
msgid "Inline label display"
msgstr "内嵌标签显示"
-#: common/models.py:1899
+#: common/models.py:1892
msgid "Display PDF labels in the browser, instead of downloading as a file"
msgstr "在浏览器中显示 PDF 标签,而不是以文件形式下载"
-#: common/models.py:1905
+#: common/models.py:1898
msgid "Default label printer"
msgstr ""
-#: common/models.py:1906
+#: common/models.py:1899
msgid "Configure which label printer should be selected by default"
msgstr ""
-#: common/models.py:1912
+#: common/models.py:1905
msgid "Inline report display"
msgstr ""
-#: common/models.py:1913
+#: common/models.py:1906
msgid "Display PDF reports in the browser, instead of downloading as a file"
msgstr "在浏览器中显示 PDF 报告,而不是以文件形式下载"
-#: common/models.py:1919
+#: common/models.py:1912
msgid "Search Parts"
msgstr ""
-#: common/models.py:1920
+#: common/models.py:1913
msgid "Display parts in search preview window"
msgstr ""
-#: common/models.py:1926
+#: common/models.py:1919
msgid "Search Supplier Parts"
msgstr ""
-#: common/models.py:1927
+#: common/models.py:1920
msgid "Display supplier parts in search preview window"
msgstr ""
-#: common/models.py:1933
+#: common/models.py:1926
msgid "Search Manufacturer Parts"
msgstr ""
-#: common/models.py:1934
+#: common/models.py:1927
msgid "Display manufacturer parts in search preview window"
msgstr ""
-#: common/models.py:1940
+#: common/models.py:1933
msgid "Hide Inactive Parts"
msgstr ""
-#: common/models.py:1941
+#: common/models.py:1934
msgid "Excluded inactive parts from search preview window"
msgstr ""
-#: common/models.py:1947
+#: common/models.py:1940
msgid "Search Categories"
msgstr ""
-#: common/models.py:1948
+#: common/models.py:1941
msgid "Display part categories in search preview window"
msgstr ""
-#: common/models.py:1954
+#: common/models.py:1947
msgid "Search Stock"
msgstr ""
-#: common/models.py:1955
+#: common/models.py:1948
msgid "Display stock items in search preview window"
msgstr ""
-#: common/models.py:1961
+#: common/models.py:1954
msgid "Hide Unavailable Stock Items"
msgstr ""
-#: common/models.py:1962
+#: common/models.py:1955
msgid "Exclude stock items which are not available from the search preview window"
msgstr ""
-#: common/models.py:1968
+#: common/models.py:1961
msgid "Search Locations"
msgstr ""
-#: common/models.py:1969
+#: common/models.py:1962
msgid "Display stock locations in search preview window"
msgstr ""
-#: common/models.py:1975
+#: common/models.py:1968
msgid "Search Companies"
msgstr ""
-#: common/models.py:1976
+#: common/models.py:1969
msgid "Display companies in search preview window"
msgstr ""
-#: common/models.py:1982
+#: common/models.py:1975
msgid "Search Build Orders"
msgstr ""
-#: common/models.py:1983
+#: common/models.py:1976
msgid "Display build orders in search preview window"
msgstr ""
-#: common/models.py:1989
+#: common/models.py:1982
msgid "Search Purchase Orders"
msgstr ""
-#: common/models.py:1990
+#: common/models.py:1983
msgid "Display purchase orders in search preview window"
msgstr ""
-#: common/models.py:1996
+#: common/models.py:1989
msgid "Exclude Inactive Purchase Orders"
msgstr ""
-#: common/models.py:1997
+#: common/models.py:1990
msgid "Exclude inactive purchase orders from search preview window"
msgstr ""
-#: common/models.py:2003
+#: common/models.py:1996
msgid "Search Sales Orders"
msgstr ""
-#: common/models.py:2004
+#: common/models.py:1997
msgid "Display sales orders in search preview window"
msgstr ""
-#: common/models.py:2010
+#: common/models.py:2003
msgid "Exclude Inactive Sales Orders"
msgstr ""
-#: common/models.py:2011
+#: common/models.py:2004
msgid "Exclude inactive sales orders from search preview window"
msgstr ""
-#: common/models.py:2017
+#: common/models.py:2010
#, fuzzy
#| msgid "Purchase Orders"
msgid "Search Return Orders"
msgstr "采购订单"
-#: common/models.py:2018
+#: common/models.py:2011
msgid "Display return orders in search preview window"
msgstr ""
-#: common/models.py:2024
+#: common/models.py:2017
msgid "Exclude Inactive Return Orders"
msgstr ""
-#: common/models.py:2025
+#: common/models.py:2018
msgid "Exclude inactive return orders from search preview window"
msgstr ""
-#: common/models.py:2031
+#: common/models.py:2024
msgid "Search Preview Results"
msgstr "搜索预览结果"
-#: common/models.py:2032
+#: common/models.py:2025
msgid "Number of results to show in each section of the search preview window"
msgstr ""
-#: common/models.py:2038
+#: common/models.py:2031
#, fuzzy
#| msgid "Search"
msgid "Regex Search"
msgstr "搜索"
-#: common/models.py:2039
+#: common/models.py:2032
msgid "Enable regular expressions in search queries"
msgstr ""
-#: common/models.py:2045
+#: common/models.py:2038
msgid "Whole Word Search"
msgstr ""
-#: common/models.py:2046
+#: common/models.py:2039
msgid "Search queries return results for whole word matches"
msgstr ""
-#: common/models.py:2052
+#: common/models.py:2045
msgid "Show Quantity in Forms"
msgstr "在表格中显示数量"
-#: common/models.py:2053
+#: common/models.py:2046
msgid "Display available part quantity in some forms"
msgstr "在某些表格中显示可用的商品数量"
-#: common/models.py:2059
+#: common/models.py:2052
msgid "Escape Key Closes Forms"
msgstr ""
-#: common/models.py:2060
+#: common/models.py:2053
msgid "Use the escape key to close modal forms"
msgstr ""
-#: common/models.py:2066
+#: common/models.py:2059
msgid "Fixed Navbar"
msgstr ""
-#: common/models.py:2067
+#: common/models.py:2060
msgid "The navbar position is fixed to the top of the screen"
msgstr ""
-#: common/models.py:2073
+#: common/models.py:2066
msgid "Date Format"
msgstr ""
-#: common/models.py:2074
+#: common/models.py:2067
msgid "Preferred format for displaying dates"
msgstr ""
-#: common/models.py:2088 part/templates/part/detail.html:41
+#: common/models.py:2081 part/templates/part/detail.html:41
msgid "Part Scheduling"
msgstr ""
-#: common/models.py:2089
+#: common/models.py:2082
msgid "Display part scheduling information"
msgstr ""
-#: common/models.py:2095 part/templates/part/detail.html:62
+#: common/models.py:2088 part/templates/part/detail.html:62
msgid "Part Stocktake"
msgstr ""
-#: common/models.py:2096
+#: common/models.py:2089
msgid "Display part stocktake information (if stocktake functionality is enabled)"
msgstr ""
-#: common/models.py:2102
+#: common/models.py:2095
msgid "Table String Length"
msgstr ""
-#: common/models.py:2103
+#: common/models.py:2096
msgid "Maximimum length limit for strings displayed in table views"
msgstr ""
-#: common/models.py:2112
+#: common/models.py:2105
#, fuzzy
#| msgid "Select Label Template"
msgid "Default part label template"
msgstr "选择标签模板"
-#: common/models.py:2113
+#: common/models.py:2106
msgid "The part label template to be automatically selected"
msgstr ""
-#: common/models.py:2121
+#: common/models.py:2114
#, fuzzy
#| msgid "stock items selected"
msgid "Default stock item template"
msgstr "已选择库存项"
-#: common/models.py:2122
+#: common/models.py:2115
msgid "The stock item label template to be automatically selected"
msgstr ""
-#: common/models.py:2130
+#: common/models.py:2123
#, fuzzy
#| msgid "No stock location set"
msgid "Default stock location label template"
msgstr "未设置仓储地点"
-#: common/models.py:2131
+#: common/models.py:2124
msgid "The stock location label template to be automatically selected"
msgstr ""
-#: common/models.py:2177
+#: common/models.py:2170
msgid "Price break quantity"
msgstr ""
-#: common/models.py:2184 company/serializers.py:434 order/admin.py:43
-#: order/models.py:1129 order/models.py:1936
+#: common/models.py:2177 company/serializers.py:434 order/admin.py:43
+#: order/models.py:1132 order/models.py:1939
#: templates/js/translated/company.js:1433 templates/js/translated/part.js:1856
#: templates/js/translated/pricing.js:621
#: templates/js/translated/return_order.js:725
msgid "Price"
msgstr "价格"
-#: common/models.py:2185
+#: common/models.py:2178
msgid "Unit price at specified quantity"
msgstr ""
-#: common/models.py:2345 common/models.py:2523
+#: common/models.py:2338 common/models.py:2516
msgid "Endpoint"
msgstr ""
-#: common/models.py:2346
+#: common/models.py:2339
msgid "Endpoint at which this webhook is received"
msgstr ""
-#: common/models.py:2355
+#: common/models.py:2348
msgid "Name for this webhook"
msgstr ""
-#: common/models.py:2360 part/admin.py:50 part/models.py:1022
+#: common/models.py:2353 part/admin.py:50 part/models.py:1023
#: plugin/models.py:47 templates/js/translated/table_filters.js:105
#: templates/js/translated/table_filters.js:189
#: templates/js/translated/table_filters.js:434
@@ -3395,100 +3390,100 @@ msgstr ""
msgid "Active"
msgstr ""
-#: common/models.py:2361
+#: common/models.py:2354
msgid "Is this webhook active"
msgstr ""
-#: common/models.py:2375
+#: common/models.py:2368
msgid "Token"
msgstr "令牌"
-#: common/models.py:2376
+#: common/models.py:2369
msgid "Token for access"
msgstr ""
-#: common/models.py:2383
+#: common/models.py:2376
msgid "Secret"
msgstr ""
-#: common/models.py:2384
+#: common/models.py:2377
msgid "Shared secret for HMAC"
msgstr ""
-#: common/models.py:2490
+#: common/models.py:2483
msgid "Message ID"
msgstr ""
-#: common/models.py:2491
+#: common/models.py:2484
msgid "Unique identifier for this message"
msgstr ""
-#: common/models.py:2499
+#: common/models.py:2492
msgid "Host"
msgstr ""
-#: common/models.py:2500
+#: common/models.py:2493
msgid "Host from which this message was received"
msgstr ""
-#: common/models.py:2507
+#: common/models.py:2500
msgid "Header"
msgstr ""
-#: common/models.py:2508
+#: common/models.py:2501
msgid "Header of this message"
msgstr ""
-#: common/models.py:2514
+#: common/models.py:2507
msgid "Body"
msgstr ""
-#: common/models.py:2515
+#: common/models.py:2508
msgid "Body of this message"
msgstr ""
-#: common/models.py:2524
+#: common/models.py:2517
msgid "Endpoint on which this message was received"
msgstr ""
-#: common/models.py:2529
+#: common/models.py:2522
msgid "Worked on"
msgstr ""
-#: common/models.py:2530
+#: common/models.py:2523
msgid "Was the work on this message finished?"
msgstr ""
-#: common/models.py:2684
+#: common/models.py:2677
msgid "Id"
msgstr ""
-#: common/models.py:2690 templates/js/translated/news.js:44
+#: common/models.py:2683 templates/js/translated/news.js:44
msgid "Title"
msgstr ""
-#: common/models.py:2700 templates/js/translated/news.js:60
+#: common/models.py:2693 templates/js/translated/news.js:60
msgid "Published"
msgstr ""
-#: common/models.py:2705 templates/InvenTree/settings/plugin_settings.html:32
+#: common/models.py:2698 templates/InvenTree/settings/plugin_settings.html:32
#: templates/js/translated/news.js:56 templates/js/translated/plugin.js:106
msgid "Author"
msgstr ""
-#: common/models.py:2710 templates/js/translated/news.js:52
+#: common/models.py:2703 templates/js/translated/news.js:52
msgid "Summary"
msgstr ""
-#: common/models.py:2715
+#: common/models.py:2708
msgid "Read"
msgstr ""
-#: common/models.py:2716
+#: common/models.py:2709
msgid "Was this news item read?"
msgstr ""
-#: common/models.py:2736 company/models.py:143 part/models.py:913
+#: common/models.py:2729 company/models.py:143 part/models.py:914
#: report/templates/report/inventree_bill_of_materials_report.html:126
#: report/templates/report/inventree_bill_of_materials_report.html:148
#: report/templates/report/inventree_return_order_report_base.html:35
@@ -3498,7 +3493,7 @@ msgstr ""
msgid "Image"
msgstr "图片"
-#: common/models.py:2737
+#: common/models.py:2730
#, fuzzy
#| msgid "Image"
msgid "Image file"
@@ -3614,7 +3609,7 @@ msgid "Contact email address"
msgstr "联系人电子邮件"
#: company/models.py:129 company/templates/company/company_base.html:140
-#: order/models.py:263 order/templates/order/order_base.html:207
+#: order/models.py:266 order/templates/order/order_base.html:207
#: order/templates/order/return_order_base.html:175
#: order/templates/order/sales_order_base.html:215
msgid "Contact"
@@ -3724,7 +3719,7 @@ msgstr "参数名称"
#: company/models.py:397
#: report/templates/report/inventree_test_report_base.html:104
-#: stock/models.py:2254 templates/js/translated/company.js:872
+#: stock/models.py:2255 templates/js/translated/company.js:872
#: templates/js/translated/company.js:1077 templates/js/translated/part.js:1465
#: templates/js/translated/stock.js:1446
msgid "Value"
@@ -3735,7 +3730,7 @@ msgid "Parameter value"
msgstr "参数值"
#: company/models.py:404 company/templates/company/supplier_part.html:169
-#: part/admin.py:40 part/models.py:986 part/models.py:3406
+#: part/admin.py:40 part/models.py:987 part/models.py:3407
#: part/templates/part/part_base.html:286
#: templates/js/translated/company.js:1083 templates/js/translated/part.js:1484
#: templates/js/translated/part.js:1588 templates/js/translated/part.js:2262
@@ -3761,7 +3756,7 @@ msgid "Linked manufacturer part must reference the same base part"
msgstr ""
#: company/models.py:564 company/templates/company/company_base.html:82
-#: company/templates/company/supplier_part.html:130 order/models.py:379
+#: company/templates/company/supplier_part.html:130 order/models.py:382
#: order/templates/order/order_base.html:140 part/bom.py:285 part/bom.py:313
#: part/serializers.py:343 stock/templates/stock/item_base.html:225
#: templates/email/overdue_purchase_order.html:16
@@ -3804,7 +3799,7 @@ msgid "Supplier part description"
msgstr "供应商商品描述"
#: company/models.py:596 company/templates/company/supplier_part.html:188
-#: part/admin.py:279 part/models.py:3800 part/templates/part/upload_bom.html:59
+#: part/admin.py:279 part/models.py:3801 part/templates/part/upload_bom.html:59
#: report/templates/report/inventree_bill_of_materials_report.html:140
#: report/templates/report/inventree_po_report_base.html:32
#: report/templates/report/inventree_return_order_report_base.html:27
@@ -3813,11 +3808,11 @@ msgstr "供应商商品描述"
msgid "Note"
msgstr "备注"
-#: company/models.py:600 part/models.py:1918
+#: company/models.py:600 part/models.py:1919
msgid "base cost"
msgstr ""
-#: company/models.py:600 part/models.py:1918
+#: company/models.py:600 part/models.py:1919
msgid "Minimum charge (e.g. stocking fee)"
msgstr "最低收费(例如库存费)"
@@ -3847,7 +3842,7 @@ msgstr ""
msgid "Total quantity supplied in a single pack. Leave empty for single items."
msgstr ""
-#: company/models.py:624 part/models.py:1920
+#: company/models.py:624 part/models.py:1921
msgid "multiple"
msgstr ""
@@ -3940,8 +3935,8 @@ msgstr "从 URL 下载图片"
msgid "Delete image"
msgstr ""
-#: company/templates/company/company_base.html:87 order/models.py:776
-#: order/models.py:1735 order/templates/order/return_order_base.html:132
+#: company/templates/company/company_base.html:87 order/models.py:779
+#: order/models.py:1738 order/templates/order/return_order_base.html:132
#: order/templates/order/sales_order_base.html:145 stock/models.py:720
#: stock/models.py:721 stock/serializers.py:825
#: stock/templates/stock/item_base.html:401
@@ -4184,7 +4179,7 @@ msgstr "删除供应商商品"
#: part/templates/part/detail.html:393 part/templates/part/detail.html:423
#: templates/js/translated/forms.js:506 templates/js/translated/helpers.js:105
#: templates/js/translated/part.js:370 templates/js/translated/pricing.js:629
-#: templates/js/translated/stock.js:216 users/models.py:247
+#: templates/js/translated/stock.js:216 users/models.py:248
msgid "Delete"
msgstr "删除"
@@ -4446,7 +4441,7 @@ msgstr "商品二维码"
msgid "QR code"
msgstr ""
-#: order/admin.py:30 order/models.py:70
+#: order/admin.py:30 order/models.py:73
#: report/templates/report/inventree_po_report_base.html:31
#: report/templates/report/inventree_so_report_base.html:31
#: templates/js/translated/order.js:327
@@ -4455,11 +4450,11 @@ msgstr ""
msgid "Total Price"
msgstr ""
-#: order/api.py:239
+#: order/api.py:242
msgid "No matching purchase order found"
msgstr ""
-#: order/api.py:1449 order/models.py:1175 order/models.py:1259
+#: order/api.py:1452 order/models.py:1178 order/models.py:1262
#: order/templates/order/order_base.html:9
#: order/templates/order/order_base.html:18
#: report/templates/report/inventree_po_report_base.html:14
@@ -4473,7 +4468,7 @@ msgstr ""
msgid "Purchase Order"
msgstr ""
-#: order/api.py:1453 order/models.py:1906 order/models.py:1952
+#: order/api.py:1456 order/models.py:1909 order/models.py:1955
#: order/templates/order/return_order_base.html:9
#: order/templates/order/return_order_base.html:28
#: report/templates/report/inventree_return_order_report_base.html:13
@@ -4484,204 +4479,204 @@ msgstr ""
msgid "Return Order"
msgstr "已退回"
-#: order/api.py:1455 templates/js/translated/sales_order.js:1030
+#: order/api.py:1458 templates/js/translated/sales_order.js:1030
msgid "Unknown"
msgstr ""
-#: order/models.py:71
+#: order/models.py:74
#, fuzzy
#| msgid "User or group responsible for this order"
msgid "Total price for this order"
msgstr "负责此订单的用户或群组"
-#: order/models.py:76 order/serializers.py:48
+#: order/models.py:79 order/serializers.py:49
#, fuzzy
#| msgid "Currency"
msgid "Order Currency"
msgstr "货币"
-#: order/models.py:78 order/serializers.py:49
+#: order/models.py:81 order/serializers.py:50
msgid "Currency for this order (leave blank to use company default)"
msgstr ""
-#: order/models.py:207
+#: order/models.py:210
#, fuzzy
#| msgid "Build output does not match the parent build"
msgid "Contact does not match selected company"
msgstr "生产产出与对应生产不匹配"
-#: order/models.py:229
+#: order/models.py:232
#, fuzzy
#| msgid "Description (optional)"
msgid "Order description (optional)"
msgstr "描述 (可选)"
-#: order/models.py:231
+#: order/models.py:234
#, fuzzy
#| msgid "User or group responsible for this order"
msgid "Select project code for this order"
msgstr "负责此订单的用户或群组"
-#: order/models.py:233 order/models.py:1091 order/models.py:1451
+#: order/models.py:236 order/models.py:1094 order/models.py:1454
msgid "Link to external page"
msgstr ""
-#: order/models.py:238
+#: order/models.py:241
msgid "Expected date for order delivery. Order will be overdue after this date."
msgstr ""
-#: order/models.py:247
+#: order/models.py:250
msgid "Created By"
msgstr ""
-#: order/models.py:254
+#: order/models.py:257
msgid "User or group responsible for this order"
msgstr "负责此订单的用户或群组"
-#: order/models.py:264
+#: order/models.py:267
#, fuzzy
#| msgid "Priority of this build order"
msgid "Point of contact for this order"
msgstr "此构建订单的优先级"
-#: order/models.py:357 order/models.py:763
+#: order/models.py:360 order/models.py:766
msgid "Order reference"
msgstr ""
-#: order/models.py:365 order/models.py:788
+#: order/models.py:368 order/models.py:791
msgid "Purchase order status"
msgstr ""
-#: order/models.py:380
+#: order/models.py:383
msgid "Company from which the items are being ordered"
msgstr "订购该商品的公司"
-#: order/models.py:388 order/templates/order/order_base.html:152
+#: order/models.py:391 order/templates/order/order_base.html:152
#: templates/js/translated/purchase_order.js:1662
msgid "Supplier Reference"
msgstr ""
-#: order/models.py:388
+#: order/models.py:391
msgid "Supplier order reference code"
msgstr ""
-#: order/models.py:395
+#: order/models.py:398
msgid "received by"
msgstr ""
-#: order/models.py:400 order/models.py:1758
+#: order/models.py:403 order/models.py:1761
msgid "Issue Date"
msgstr ""
-#: order/models.py:401 order/models.py:1759
+#: order/models.py:404 order/models.py:1762
msgid "Date order was issued"
msgstr ""
-#: order/models.py:407 order/models.py:1765
+#: order/models.py:410 order/models.py:1768
msgid "Date order was completed"
msgstr ""
-#: order/models.py:442
+#: order/models.py:445
msgid "Part supplier must match PO supplier"
msgstr ""
-#: order/models.py:603
+#: order/models.py:606
msgid "Quantity must be a positive number"
msgstr "数量必须大于0"
-#: order/models.py:777
+#: order/models.py:780
msgid "Company to which the items are being sold"
msgstr "向其出售该商品的公司"
-#: order/models.py:796 order/models.py:1752
+#: order/models.py:799 order/models.py:1755
msgid "Customer Reference "
msgstr ""
-#: order/models.py:796 order/models.py:1753
+#: order/models.py:799 order/models.py:1756
msgid "Customer order reference code"
msgstr ""
-#: order/models.py:798 order/models.py:1405
+#: order/models.py:801 order/models.py:1408
#: templates/js/translated/sales_order.js:831
#: templates/js/translated/sales_order.js:1012
msgid "Shipment Date"
msgstr ""
-#: order/models.py:805
+#: order/models.py:808
msgid "shipped by"
msgstr ""
-#: order/models.py:854
+#: order/models.py:857
msgid "Order cannot be completed as no parts have been assigned"
msgstr ""
-#: order/models.py:858
+#: order/models.py:861
#, fuzzy
#| msgid "Build Order is ready to mark as completed"
msgid "Only an open order can be marked as complete"
msgstr "构建订单已准备好标记为已完成"
-#: order/models.py:861 templates/js/translated/sales_order.js:491
+#: order/models.py:864 templates/js/translated/sales_order.js:491
msgid "Order cannot be completed as there are incomplete shipments"
msgstr ""
-#: order/models.py:864
+#: order/models.py:867
msgid "Order cannot be completed as there are incomplete line items"
msgstr ""
-#: order/models.py:1071
+#: order/models.py:1074
msgid "Item quantity"
msgstr ""
-#: order/models.py:1084
+#: order/models.py:1087
msgid "Line item reference"
msgstr ""
-#: order/models.py:1086
+#: order/models.py:1089
msgid "Line item notes"
msgstr ""
-#: order/models.py:1097
+#: order/models.py:1100
msgid "Target date for this line item (leave blank to use the target date from the order)"
msgstr ""
-#: order/models.py:1115
+#: order/models.py:1118
#, fuzzy
#| msgid "Description (optional)"
msgid "Line item description (optional)"
msgstr "描述 (可选)"
-#: order/models.py:1120
+#: order/models.py:1123
msgid "Context"
msgstr ""
-#: order/models.py:1121
+#: order/models.py:1124
msgid "Additional context for this line"
msgstr ""
-#: order/models.py:1130
+#: order/models.py:1133
msgid "Unit price"
msgstr ""
-#: order/models.py:1160
+#: order/models.py:1163
msgid "Supplier part must match supplier"
msgstr ""
-#: order/models.py:1168
+#: order/models.py:1171
msgid "deleted"
msgstr ""
-#: order/models.py:1174 order/models.py:1259 order/models.py:1300
-#: order/models.py:1399 order/models.py:1548 order/models.py:1905
-#: order/models.py:1952 templates/js/translated/sales_order.js:1474
+#: order/models.py:1177 order/models.py:1262 order/models.py:1303
+#: order/models.py:1402 order/models.py:1551 order/models.py:1908
+#: order/models.py:1955 templates/js/translated/sales_order.js:1474
msgid "Order"
msgstr ""
-#: order/models.py:1193
+#: order/models.py:1196
msgid "Supplier part"
msgstr "供应商商品"
-#: order/models.py:1200 order/templates/order/order_base.html:200
+#: order/models.py:1203 order/templates/order/order_base.html:200
#: templates/js/translated/part.js:1841 templates/js/translated/part.js:1872
#: templates/js/translated/purchase_order.js:1276
#: templates/js/translated/purchase_order.js:2137
@@ -4691,356 +4686,356 @@ msgstr "供应商商品"
msgid "Received"
msgstr ""
-#: order/models.py:1201
+#: order/models.py:1204
msgid "Number of items received"
msgstr ""
-#: order/models.py:1208 stock/models.py:823 stock/serializers.py:252
+#: order/models.py:1211 stock/models.py:823 stock/serializers.py:252
#: stock/templates/stock/item_base.html:184
#: templates/js/translated/stock.js:2047
msgid "Purchase Price"
msgstr "采购价格"
-#: order/models.py:1209
+#: order/models.py:1212
msgid "Unit purchase price"
msgstr ""
-#: order/models.py:1222
+#: order/models.py:1225
msgid "Where does the Purchaser want this item to be stored?"
msgstr ""
-#: order/models.py:1288
+#: order/models.py:1291
msgid "Virtual part cannot be assigned to a sales order"
msgstr ""
-#: order/models.py:1293
+#: order/models.py:1296
msgid "Only salable parts can be assigned to a sales order"
msgstr ""
-#: order/models.py:1319 part/templates/part/part_pricing.html:107
+#: order/models.py:1322 part/templates/part/part_pricing.html:107
#: part/templates/part/prices.html:128 templates/js/translated/pricing.js:943
msgid "Sale Price"
msgstr "销售价格"
-#: order/models.py:1320
+#: order/models.py:1323
msgid "Unit sale price"
msgstr ""
-#: order/models.py:1330
+#: order/models.py:1333
msgid "Shipped quantity"
msgstr ""
-#: order/models.py:1406
+#: order/models.py:1409
msgid "Date of shipment"
msgstr ""
-#: order/models.py:1411 templates/js/translated/sales_order.js:1024
+#: order/models.py:1414 templates/js/translated/sales_order.js:1024
msgid "Delivery Date"
msgstr ""
-#: order/models.py:1412
+#: order/models.py:1415
msgid "Date of delivery of shipment"
msgstr ""
-#: order/models.py:1419
+#: order/models.py:1422
msgid "Checked By"
msgstr ""
-#: order/models.py:1420
+#: order/models.py:1423
msgid "User who checked this shipment"
msgstr ""
-#: order/models.py:1427 order/models.py:1624 order/serializers.py:1247
-#: order/serializers.py:1375 templates/js/translated/model_renderers.js:415
+#: order/models.py:1430 order/models.py:1627 order/serializers.py:1248
+#: order/serializers.py:1376 templates/js/translated/model_renderers.js:415
msgid "Shipment"
msgstr ""
-#: order/models.py:1428
+#: order/models.py:1431
msgid "Shipment number"
msgstr ""
-#: order/models.py:1436
+#: order/models.py:1439
msgid "Tracking Number"
msgstr ""
-#: order/models.py:1437
+#: order/models.py:1440
msgid "Shipment tracking information"
msgstr ""
-#: order/models.py:1444
+#: order/models.py:1447
msgid "Invoice Number"
msgstr ""
-#: order/models.py:1445
+#: order/models.py:1448
msgid "Reference number for associated invoice"
msgstr ""
-#: order/models.py:1467
+#: order/models.py:1470
msgid "Shipment has already been sent"
msgstr ""
-#: order/models.py:1470
+#: order/models.py:1473
msgid "Shipment has no allocated stock items"
msgstr ""
-#: order/models.py:1583 order/models.py:1585
+#: order/models.py:1586 order/models.py:1588
msgid "Stock item has not been assigned"
msgstr ""
-#: order/models.py:1589
+#: order/models.py:1592
msgid "Cannot allocate stock item to a line with a different part"
msgstr ""
-#: order/models.py:1591
+#: order/models.py:1594
msgid "Cannot allocate stock to a line without a part"
msgstr ""
-#: order/models.py:1594
+#: order/models.py:1597
msgid "Allocation quantity cannot exceed stock quantity"
msgstr ""
-#: order/models.py:1604 order/serializers.py:1109
+#: order/models.py:1607 order/serializers.py:1110
msgid "Quantity must be 1 for serialized stock item"
msgstr ""
-#: order/models.py:1607
+#: order/models.py:1610
msgid "Sales order does not match shipment"
msgstr ""
-#: order/models.py:1608
+#: order/models.py:1611
msgid "Shipment does not match sales order"
msgstr ""
-#: order/models.py:1616
+#: order/models.py:1619
msgid "Line"
msgstr ""
-#: order/models.py:1625
+#: order/models.py:1628
msgid "Sales order shipment reference"
msgstr ""
-#: order/models.py:1638 order/models.py:1913
+#: order/models.py:1641 order/models.py:1916
#: templates/js/translated/return_order.js:706
msgid "Item"
msgstr ""
-#: order/models.py:1639
+#: order/models.py:1642
msgid "Select stock item to allocate"
msgstr ""
-#: order/models.py:1642
+#: order/models.py:1645
msgid "Enter stock allocation quantity"
msgstr ""
-#: order/models.py:1722
+#: order/models.py:1725
#, fuzzy
#| msgid "Build Order Reference"
msgid "Return Order reference"
msgstr "相关生产订单"
-#: order/models.py:1736
+#: order/models.py:1739
#, fuzzy
#| msgid "Company from which the items are being ordered"
msgid "Company from which items are being returned"
msgstr "订购该商品的公司"
-#: order/models.py:1747
+#: order/models.py:1750
msgid "Return order status"
msgstr ""
-#: order/models.py:1898
+#: order/models.py:1901
msgid "Only serialized items can be assigned to a Return Order"
msgstr ""
-#: order/models.py:1914
+#: order/models.py:1917
#, fuzzy
#| msgid "Returned from customer"
msgid "Select item to return from customer"
msgstr "从客户退货"
-#: order/models.py:1919
+#: order/models.py:1922
msgid "Received Date"
msgstr ""
-#: order/models.py:1920
+#: order/models.py:1923
msgid "The date this this return item was received"
msgstr ""
-#: order/models.py:1931 templates/js/translated/return_order.js:717
+#: order/models.py:1934 templates/js/translated/return_order.js:717
#: templates/js/translated/table_filters.js:93
msgid "Outcome"
msgstr ""
-#: order/models.py:1931
+#: order/models.py:1934
msgid "Outcome for this line item"
msgstr ""
-#: order/models.py:1937
+#: order/models.py:1940
msgid "Cost associated with return or repair for this line item"
msgstr ""
-#: order/serializers.py:246
+#: order/serializers.py:247
msgid "Order cannot be cancelled"
msgstr "无法取消订单"
-#: order/serializers.py:261 order/serializers.py:1127
+#: order/serializers.py:262 order/serializers.py:1128
msgid "Allow order to be closed with incomplete line items"
msgstr ""
-#: order/serializers.py:272 order/serializers.py:1138
+#: order/serializers.py:273 order/serializers.py:1139
msgid "Order has incomplete line items"
msgstr ""
-#: order/serializers.py:385
+#: order/serializers.py:386
msgid "Order is not open"
msgstr ""
-#: order/serializers.py:403
+#: order/serializers.py:404
msgid "Purchase price currency"
msgstr ""
-#: order/serializers.py:421
+#: order/serializers.py:422
msgid "Supplier part must be specified"
msgstr ""
-#: order/serializers.py:426
+#: order/serializers.py:427
msgid "Purchase order must be specified"
msgstr ""
-#: order/serializers.py:432
+#: order/serializers.py:433
msgid "Supplier must match purchase order"
msgstr ""
-#: order/serializers.py:433
+#: order/serializers.py:434
msgid "Purchase order must match supplier"
msgstr ""
-#: order/serializers.py:471 order/serializers.py:1215
+#: order/serializers.py:472 order/serializers.py:1216
msgid "Line Item"
msgstr ""
-#: order/serializers.py:477
+#: order/serializers.py:478
msgid "Line item does not match purchase order"
msgstr ""
-#: order/serializers.py:487 order/serializers.py:606 order/serializers.py:1588
+#: order/serializers.py:488 order/serializers.py:607 order/serializers.py:1589
msgid "Select destination location for received items"
msgstr ""
-#: order/serializers.py:506 templates/js/translated/purchase_order.js:1100
+#: order/serializers.py:507 templates/js/translated/purchase_order.js:1100
msgid "Enter batch code for incoming stock items"
msgstr ""
-#: order/serializers.py:514 templates/js/translated/purchase_order.js:1124
+#: order/serializers.py:515 templates/js/translated/purchase_order.js:1124
msgid "Enter serial numbers for incoming stock items"
msgstr ""
-#: order/serializers.py:527 templates/js/translated/barcode.js:52
+#: order/serializers.py:528 templates/js/translated/barcode.js:52
msgid "Barcode"
msgstr "条形码"
-#: order/serializers.py:528
+#: order/serializers.py:529
#, fuzzy
#| msgid "Scan Barcode"
msgid "Scanned barcode"
msgstr "扫描条形码"
-#: order/serializers.py:544
+#: order/serializers.py:545
msgid "Barcode is already in use"
msgstr ""
-#: order/serializers.py:568
+#: order/serializers.py:569
msgid "An integer quantity must be provided for trackable parts"
msgstr ""
-#: order/serializers.py:622 order/serializers.py:1603
+#: order/serializers.py:623 order/serializers.py:1604
msgid "Line items must be provided"
msgstr ""
-#: order/serializers.py:639
+#: order/serializers.py:640
msgid "Destination location must be specified"
msgstr ""
-#: order/serializers.py:650
+#: order/serializers.py:651
msgid "Supplied barcode values must be unique"
msgstr ""
-#: order/serializers.py:949
+#: order/serializers.py:950
msgid "Sale price currency"
msgstr ""
-#: order/serializers.py:1006
+#: order/serializers.py:1007
msgid "No shipment details provided"
msgstr ""
-#: order/serializers.py:1070 order/serializers.py:1224
+#: order/serializers.py:1071 order/serializers.py:1225
msgid "Line item is not associated with this order"
msgstr ""
-#: order/serializers.py:1092
+#: order/serializers.py:1093
msgid "Quantity must be positive"
msgstr ""
-#: order/serializers.py:1237
+#: order/serializers.py:1238
msgid "Enter serial numbers to allocate"
msgstr ""
-#: order/serializers.py:1259 order/serializers.py:1383
+#: order/serializers.py:1260 order/serializers.py:1384
msgid "Shipment has already been shipped"
msgstr ""
-#: order/serializers.py:1262 order/serializers.py:1386
+#: order/serializers.py:1263 order/serializers.py:1387
msgid "Shipment is not associated with this order"
msgstr ""
-#: order/serializers.py:1316
+#: order/serializers.py:1317
msgid "No match found for the following serial numbers"
msgstr ""
-#: order/serializers.py:1326
+#: order/serializers.py:1327
msgid "The following serial numbers are already allocated"
msgstr ""
-#: order/serializers.py:1554
+#: order/serializers.py:1555
msgid "Return order line item"
msgstr ""
-#: order/serializers.py:1561
+#: order/serializers.py:1562
#, fuzzy
#| msgid "Build output does not match Build Order"
msgid "Line item does not match return order"
msgstr "生产产出与订单不匹配"
-#: order/serializers.py:1564
+#: order/serializers.py:1565
#, fuzzy
#| msgid "This build output has already been completed"
msgid "Line item has already been received"
msgstr "此生产产出已经完成"
-#: order/serializers.py:1596
+#: order/serializers.py:1597
msgid "Items can only be received against orders which are in progress"
msgstr ""
-#: order/serializers.py:1677
+#: order/serializers.py:1678
#, fuzzy
#| msgid "Uses default currency"
msgid "Line price currency"
msgstr "使用默认货币"
-#: order/tasks.py:26
+#: order/tasks.py:27
msgid "Overdue Purchase Order"
msgstr ""
-#: order/tasks.py:31
+#: order/tasks.py:32
#, python-brace-format
msgid "Purchase order {po} is now overdue"
msgstr ""
-#: order/tasks.py:89
+#: order/tasks.py:90
msgid "Overdue Sales Order"
msgstr ""
-#: order/tasks.py:94
+#: order/tasks.py:95
#, python-brace-format
msgid "Sales order {so} is now overdue"
msgstr ""
@@ -5465,12 +5460,12 @@ msgstr ""
msgid "Updated {part} unit-price to {price} and quantity to {qty}"
msgstr ""
-#: part/admin.py:33 part/admin.py:273 part/models.py:3666 part/tasks.py:288
+#: part/admin.py:33 part/admin.py:273 part/models.py:3667 part/tasks.py:288
#: stock/admin.py:101
msgid "Part ID"
msgstr "商品ID"
-#: part/admin.py:34 part/admin.py:275 part/models.py:3670 part/tasks.py:289
+#: part/admin.py:34 part/admin.py:275 part/models.py:3671 part/tasks.py:289
#: stock/admin.py:102
msgid "Part Name"
msgstr ""
@@ -5479,19 +5474,19 @@ msgstr ""
msgid "Part Description"
msgstr ""
-#: part/admin.py:36 part/models.py:888 part/templates/part/part_base.html:271
+#: part/admin.py:36 part/models.py:889 part/templates/part/part_base.html:271
#: templates/js/translated/part.js:1200 templates/js/translated/part.js:2233
#: templates/js/translated/stock.js:1795
msgid "IPN"
msgstr ""
-#: part/admin.py:37 part/models.py:895 part/templates/part/part_base.html:279
+#: part/admin.py:37 part/models.py:896 part/templates/part/part_base.html:279
#: report/models.py:179 templates/js/translated/part.js:1205
#: templates/js/translated/part.js:2239
msgid "Revision"
msgstr ""
-#: part/admin.py:38 part/admin.py:198 part/models.py:874
+#: part/admin.py:38 part/admin.py:198 part/models.py:875
#: part/templates/part/category.html:93 part/templates/part/part_base.html:300
msgid "Keywords"
msgstr "关键词"
@@ -5512,11 +5507,11 @@ msgstr ""
msgid "Default Supplier ID"
msgstr ""
-#: part/admin.py:46 part/models.py:863 part/templates/part/part_base.html:179
+#: part/admin.py:46 part/models.py:864 part/templates/part/part_base.html:179
msgid "Variant Of"
msgstr ""
-#: part/admin.py:47 part/models.py:979 part/templates/part/part_base.html:205
+#: part/admin.py:47 part/models.py:980 part/templates/part/part_base.html:205
msgid "Minimum Stock"
msgstr "最低库存"
@@ -5549,11 +5544,11 @@ msgstr ""
msgid "Building"
msgstr ""
-#: part/admin.py:66 part/models.py:2929 templates/js/translated/part.js:943
+#: part/admin.py:66 part/models.py:2930 templates/js/translated/part.js:943
msgid "Minimum Cost"
msgstr ""
-#: part/admin.py:67 part/models.py:2935 templates/js/translated/part.js:953
+#: part/admin.py:67 part/models.py:2936 templates/js/translated/part.js:953
msgid "Maximum Cost"
msgstr ""
@@ -5570,7 +5565,7 @@ msgstr ""
msgid "Category Path"
msgstr "类别路径"
-#: part/admin.py:202 part/models.py:391 part/templates/part/cat_link.html:3
+#: part/admin.py:202 part/models.py:392 part/templates/part/cat_link.html:3
#: part/templates/part/category.html:23 part/templates/part/category.html:140
#: part/templates/part/category.html:160
#: part/templates/part/category_sidebar.html:9
@@ -5593,7 +5588,7 @@ msgstr ""
msgid "Parent IPN"
msgstr ""
-#: part/admin.py:274 part/models.py:3674
+#: part/admin.py:274 part/models.py:3675
msgid "Part IPN"
msgstr ""
@@ -5607,35 +5602,35 @@ msgstr ""
msgid "Maximum Price"
msgstr ""
-#: part/api.py:497
+#: part/api.py:498
msgid "Incoming Purchase Order"
msgstr ""
-#: part/api.py:517
+#: part/api.py:518
msgid "Outgoing Sales Order"
msgstr ""
-#: part/api.py:535
+#: part/api.py:536
msgid "Stock produced by Build Order"
msgstr ""
-#: part/api.py:621
+#: part/api.py:622
msgid "Stock required for Build Order"
msgstr ""
-#: part/api.py:769
+#: part/api.py:770
msgid "Valid"
msgstr ""
-#: part/api.py:770
+#: part/api.py:771
msgid "Validate entire Bill of Materials"
msgstr ""
-#: part/api.py:776
+#: part/api.py:777
msgid "This option must be selected"
msgstr ""
-#: part/bom.py:175 part/models.py:126 part/models.py:922
+#: part/bom.py:175 part/models.py:127 part/models.py:923
#: part/templates/part/category.html:115 part/templates/part/part_base.html:369
msgid "Default Location"
msgstr "默认仓储地点"
@@ -5653,108 +5648,108 @@ msgstr "可用库存"
msgid "Input quantity for price calculation"
msgstr ""
-#: part/models.py:74 part/models.py:3615 part/templates/part/category.html:16
+#: part/models.py:75 part/models.py:3616 part/templates/part/category.html:16
#: part/templates/part/part_app_base.html:10
msgid "Part Category"
msgstr "商品类别"
-#: part/models.py:75 part/templates/part/category.html:135
+#: part/models.py:76 part/templates/part/category.html:135
#: templates/InvenTree/search.html:97 templates/js/translated/search.js:200
#: users/models.py:37
msgid "Part Categories"
msgstr "商品类别"
-#: part/models.py:127
+#: part/models.py:128
msgid "Default location for parts in this category"
msgstr "此类别商品的默认仓储地点"
-#: part/models.py:132 stock/models.py:124 templates/js/translated/stock.js:2520
+#: part/models.py:133 stock/models.py:124 templates/js/translated/stock.js:2520
#: templates/js/translated/table_filters.js:209
#: templates/js/translated/table_filters.js:229
msgid "Structural"
msgstr ""
-#: part/models.py:134
+#: part/models.py:135
msgid "Parts may not be directly assigned to a structural category, but may be assigned to child categories."
msgstr ""
-#: part/models.py:138
+#: part/models.py:139
msgid "Default keywords"
msgstr ""
-#: part/models.py:138
+#: part/models.py:139
msgid "Default keywords for parts in this category"
msgstr "此类别商品的默认关键字"
-#: part/models.py:143 stock/models.py:113
+#: part/models.py:144 stock/models.py:113
msgid "Icon"
msgstr ""
-#: part/models.py:144 stock/models.py:114
+#: part/models.py:145 stock/models.py:114
msgid "Icon (optional)"
msgstr ""
-#: part/models.py:163
+#: part/models.py:164
msgid "You cannot make this part category structural because some parts are already assigned to it!"
msgstr ""
-#: part/models.py:474
+#: part/models.py:475
msgid "Invalid choice for parent part"
msgstr ""
-#: part/models.py:516 part/models.py:528
+#: part/models.py:517 part/models.py:529
#, python-brace-format
msgid "Part '{p1}' is used in BOM for '{p2}' (recursive)"
msgstr ""
-#: part/models.py:600
+#: part/models.py:601
#, python-brace-format
msgid "IPN must match regex pattern {pat}"
msgstr "IPN 必须匹配正则表达式 {pat}"
-#: part/models.py:671
+#: part/models.py:672
msgid "Stock item with this serial number already exists"
msgstr ""
-#: part/models.py:802
+#: part/models.py:803
msgid "Duplicate IPN not allowed in part settings"
msgstr "在商品设置中不允许重复的IPN"
-#: part/models.py:807
+#: part/models.py:808
msgid "Part with this Name, IPN and Revision already exists."
msgstr ""
-#: part/models.py:821
+#: part/models.py:822
msgid "Parts cannot be assigned to structural part categories!"
msgstr ""
-#: part/models.py:845 part/models.py:3671
+#: part/models.py:846 part/models.py:3672
msgid "Part name"
msgstr "商品名称"
-#: part/models.py:851
+#: part/models.py:852
msgid "Is Template"
msgstr ""
-#: part/models.py:852
+#: part/models.py:853
msgid "Is this part a template part?"
msgstr ""
-#: part/models.py:862
+#: part/models.py:863
msgid "Is this part a variant of another part?"
msgstr ""
-#: part/models.py:869
+#: part/models.py:870
#, fuzzy
#| msgid "Description (optional)"
msgid "Part description (optional)"
msgstr "描述 (可选)"
-#: part/models.py:875
+#: part/models.py:876
msgid "Part keywords to improve visibility in search results"
msgstr "提高搜索结果可见性的关键字"
-#: part/models.py:882 part/models.py:3197 part/models.py:3614
+#: part/models.py:883 part/models.py:3198 part/models.py:3615
#: part/serializers.py:848 part/templates/part/part_base.html:262
#: templates/InvenTree/settings/settings_staff_js.html:204
#: templates/js/translated/notification.js:59
@@ -5762,249 +5757,249 @@ msgstr "提高搜索结果可见性的关键字"
msgid "Category"
msgstr "类别"
-#: part/models.py:883
+#: part/models.py:884
msgid "Part category"
msgstr "商品类别"
-#: part/models.py:889
+#: part/models.py:890
msgid "Internal Part Number"
msgstr "内部商品编号"
-#: part/models.py:894
+#: part/models.py:895
msgid "Part revision or version number"
msgstr "商品版本号"
-#: part/models.py:920
+#: part/models.py:921
msgid "Where is this item normally stored?"
msgstr ""
-#: part/models.py:965 part/templates/part/part_base.html:378
+#: part/models.py:966 part/templates/part/part_base.html:378
msgid "Default Supplier"
msgstr ""
-#: part/models.py:966
+#: part/models.py:967
msgid "Default supplier part"
msgstr "默认供应商商品"
-#: part/models.py:973
+#: part/models.py:974
msgid "Default Expiry"
msgstr ""
-#: part/models.py:974
+#: part/models.py:975
msgid "Expiry time (in days) for stock items of this part"
msgstr ""
-#: part/models.py:980
+#: part/models.py:981
msgid "Minimum allowed stock level"
msgstr ""
-#: part/models.py:987
+#: part/models.py:988
msgid "Units of measure for this part"
msgstr ""
-#: part/models.py:996
+#: part/models.py:997
msgid "Can this part be built from other parts?"
msgstr ""
-#: part/models.py:1002
+#: part/models.py:1003
msgid "Can this part be used to build other parts?"
msgstr ""
-#: part/models.py:1008
+#: part/models.py:1009
msgid "Does this part have tracking for unique items?"
msgstr ""
-#: part/models.py:1013
+#: part/models.py:1014
msgid "Can this part be purchased from external suppliers?"
msgstr ""
-#: part/models.py:1018
+#: part/models.py:1019
msgid "Can this part be sold to customers?"
msgstr "此商品可以销售给客户吗?"
-#: part/models.py:1023
+#: part/models.py:1024
msgid "Is this part active?"
msgstr ""
-#: part/models.py:1028
+#: part/models.py:1029
msgid "Is this a virtual part, such as a software product or license?"
msgstr "这是一个虚拟商品,如软件产品或许可证吗?"
-#: part/models.py:1030
+#: part/models.py:1031
msgid "BOM checksum"
msgstr ""
-#: part/models.py:1030
+#: part/models.py:1031
msgid "Stored BOM checksum"
msgstr ""
-#: part/models.py:1033
+#: part/models.py:1034
msgid "BOM checked by"
msgstr ""
-#: part/models.py:1035
+#: part/models.py:1036
msgid "BOM checked date"
msgstr ""
-#: part/models.py:1039
+#: part/models.py:1040
msgid "Creation User"
msgstr "新建用户"
-#: part/models.py:1041
+#: part/models.py:1042
msgid "User responsible for this part"
msgstr ""
-#: part/models.py:1045 part/templates/part/part_base.html:341
+#: part/models.py:1046 part/templates/part/part_base.html:341
#: stock/templates/stock/item_base.html:447
#: templates/js/translated/part.js:2331
msgid "Last Stocktake"
msgstr ""
-#: part/models.py:1920
+#: part/models.py:1921
msgid "Sell multiple"
msgstr ""
-#: part/models.py:2852
+#: part/models.py:2853
msgid "Currency used to cache pricing calculations"
msgstr ""
-#: part/models.py:2869
+#: part/models.py:2870
msgid "Minimum BOM Cost"
msgstr ""
-#: part/models.py:2870
+#: part/models.py:2871
msgid "Minimum cost of component parts"
msgstr ""
-#: part/models.py:2875
+#: part/models.py:2876
msgid "Maximum BOM Cost"
msgstr ""
-#: part/models.py:2876
+#: part/models.py:2877
msgid "Maximum cost of component parts"
msgstr ""
-#: part/models.py:2881
+#: part/models.py:2882
msgid "Minimum Purchase Cost"
msgstr ""
-#: part/models.py:2882
+#: part/models.py:2883
msgid "Minimum historical purchase cost"
msgstr ""
-#: part/models.py:2887
+#: part/models.py:2888
msgid "Maximum Purchase Cost"
msgstr ""
-#: part/models.py:2888
+#: part/models.py:2889
msgid "Maximum historical purchase cost"
msgstr ""
-#: part/models.py:2893
+#: part/models.py:2894
msgid "Minimum Internal Price"
msgstr ""
-#: part/models.py:2894
+#: part/models.py:2895
msgid "Minimum cost based on internal price breaks"
msgstr ""
-#: part/models.py:2899
+#: part/models.py:2900
msgid "Maximum Internal Price"
msgstr ""
-#: part/models.py:2900
+#: part/models.py:2901
msgid "Maximum cost based on internal price breaks"
msgstr ""
-#: part/models.py:2905
+#: part/models.py:2906
msgid "Minimum Supplier Price"
msgstr ""
-#: part/models.py:2906
+#: part/models.py:2907
msgid "Minimum price of part from external suppliers"
msgstr ""
-#: part/models.py:2911
+#: part/models.py:2912
msgid "Maximum Supplier Price"
msgstr ""
-#: part/models.py:2912
+#: part/models.py:2913
msgid "Maximum price of part from external suppliers"
msgstr ""
-#: part/models.py:2917
+#: part/models.py:2918
msgid "Minimum Variant Cost"
msgstr ""
-#: part/models.py:2918
+#: part/models.py:2919
msgid "Calculated minimum cost of variant parts"
msgstr ""
-#: part/models.py:2923
+#: part/models.py:2924
msgid "Maximum Variant Cost"
msgstr ""
-#: part/models.py:2924
+#: part/models.py:2925
msgid "Calculated maximum cost of variant parts"
msgstr ""
-#: part/models.py:2930
+#: part/models.py:2931
msgid "Calculated overall minimum cost"
msgstr ""
-#: part/models.py:2936
+#: part/models.py:2937
msgid "Calculated overall maximum cost"
msgstr ""
-#: part/models.py:2941
+#: part/models.py:2942
msgid "Minimum Sale Price"
msgstr ""
-#: part/models.py:2942
+#: part/models.py:2943
msgid "Minimum sale price based on price breaks"
msgstr ""
-#: part/models.py:2947
+#: part/models.py:2948
msgid "Maximum Sale Price"
msgstr ""
-#: part/models.py:2948
+#: part/models.py:2949
msgid "Maximum sale price based on price breaks"
msgstr ""
-#: part/models.py:2953
+#: part/models.py:2954
msgid "Minimum Sale Cost"
msgstr ""
-#: part/models.py:2954
+#: part/models.py:2955
msgid "Minimum historical sale price"
msgstr ""
-#: part/models.py:2959
+#: part/models.py:2960
msgid "Maximum Sale Cost"
msgstr ""
-#: part/models.py:2960
+#: part/models.py:2961
msgid "Maximum historical sale price"
msgstr ""
-#: part/models.py:2979
+#: part/models.py:2980
msgid "Part for stocktake"
msgstr ""
-#: part/models.py:2984
+#: part/models.py:2985
msgid "Item Count"
msgstr ""
-#: part/models.py:2985
+#: part/models.py:2986
msgid "Number of individual stock entries at time of stocktake"
msgstr ""
-#: part/models.py:2992
+#: part/models.py:2993
msgid "Total available stock at time of stocktake"
msgstr ""
-#: part/models.py:2996 part/models.py:3079
+#: part/models.py:2997 part/models.py:3080
#: part/templates/part/part_scheduling.html:13
#: report/templates/report/inventree_test_report_base.html:106
#: templates/InvenTree/settings/plugin_settings.html:37
@@ -6016,218 +6011,218 @@ msgstr ""
msgid "Date"
msgstr ""
-#: part/models.py:2997
+#: part/models.py:2998
msgid "Date stocktake was performed"
msgstr ""
-#: part/models.py:3005
+#: part/models.py:3006
msgid "Additional notes"
msgstr ""
-#: part/models.py:3013
+#: part/models.py:3014
msgid "User who performed this stocktake"
msgstr ""
-#: part/models.py:3018
+#: part/models.py:3019
msgid "Minimum Stock Cost"
msgstr ""
-#: part/models.py:3019
+#: part/models.py:3020
msgid "Estimated minimum cost of stock on hand"
msgstr ""
-#: part/models.py:3024
+#: part/models.py:3025
msgid "Maximum Stock Cost"
msgstr ""
-#: part/models.py:3025
+#: part/models.py:3026
msgid "Estimated maximum cost of stock on hand"
msgstr ""
-#: part/models.py:3086 templates/InvenTree/settings/settings_staff_js.html:349
+#: part/models.py:3087 templates/InvenTree/settings/settings_staff_js.html:349
msgid "Report"
msgstr ""
-#: part/models.py:3087
+#: part/models.py:3088
msgid "Stocktake report file (generated internally)"
msgstr ""
-#: part/models.py:3092 templates/InvenTree/settings/settings_staff_js.html:356
+#: part/models.py:3093 templates/InvenTree/settings/settings_staff_js.html:356
msgid "Part Count"
msgstr ""
-#: part/models.py:3093
+#: part/models.py:3094
msgid "Number of parts covered by stocktake"
msgstr ""
-#: part/models.py:3101
+#: part/models.py:3102
msgid "User who requested this stocktake report"
msgstr ""
-#: part/models.py:3237
+#: part/models.py:3238
msgid "Test templates can only be created for trackable parts"
msgstr ""
-#: part/models.py:3254
+#: part/models.py:3255
msgid "Test with this name already exists for this part"
msgstr ""
-#: part/models.py:3274 templates/js/translated/part.js:2821
+#: part/models.py:3275 templates/js/translated/part.js:2821
msgid "Test Name"
msgstr ""
-#: part/models.py:3275
+#: part/models.py:3276
msgid "Enter a name for the test"
msgstr ""
-#: part/models.py:3280
+#: part/models.py:3281
msgid "Test Description"
msgstr ""
-#: part/models.py:3281
+#: part/models.py:3282
msgid "Enter description for this test"
msgstr ""
-#: part/models.py:3286 templates/js/translated/part.js:2830
+#: part/models.py:3287 templates/js/translated/part.js:2830
#: templates/js/translated/table_filters.js:423
msgid "Required"
msgstr ""
-#: part/models.py:3287
+#: part/models.py:3288
msgid "Is this test required to pass?"
msgstr ""
-#: part/models.py:3292 templates/js/translated/part.js:2838
+#: part/models.py:3293 templates/js/translated/part.js:2838
msgid "Requires Value"
msgstr ""
-#: part/models.py:3293
+#: part/models.py:3294
msgid "Does this test require a value when adding a test result?"
msgstr ""
-#: part/models.py:3298 templates/js/translated/part.js:2845
+#: part/models.py:3299 templates/js/translated/part.js:2845
msgid "Requires Attachment"
msgstr ""
-#: part/models.py:3299
+#: part/models.py:3300
msgid "Does this test require a file attachment when adding a test result?"
msgstr ""
-#: part/models.py:3345
+#: part/models.py:3346
msgid "Checkbox parameters cannot have units"
msgstr ""
-#: part/models.py:3350
+#: part/models.py:3351
msgid "Checkbox parameters cannot have choices"
msgstr ""
-#: part/models.py:3368
+#: part/models.py:3369
#, fuzzy
#| msgid "Key string must be unique"
msgid "Choices must be unique"
msgstr "关键字必须是唯一的"
-#: part/models.py:3384
+#: part/models.py:3385
msgid "Parameter template name must be unique"
msgstr ""
-#: part/models.py:3400
+#: part/models.py:3401
msgid "Parameter Name"
msgstr ""
-#: part/models.py:3406
+#: part/models.py:3407
msgid "Physical units for this parameter"
msgstr ""
-#: part/models.py:3416
+#: part/models.py:3417
msgid "Parameter description"
msgstr ""
-#: part/models.py:3422 templates/js/translated/part.js:1600
+#: part/models.py:3423 templates/js/translated/part.js:1600
#: templates/js/translated/table_filters.js:734
msgid "Checkbox"
msgstr ""
-#: part/models.py:3423
+#: part/models.py:3424
msgid "Is this parameter a checkbox?"
msgstr ""
-#: part/models.py:3428 templates/js/translated/part.js:1609
+#: part/models.py:3429 templates/js/translated/part.js:1609
msgid "Choices"
msgstr ""
-#: part/models.py:3429
+#: part/models.py:3430
msgid "Valid choices for this parameter (comma-separated)"
msgstr ""
-#: part/models.py:3510
+#: part/models.py:3511
#, fuzzy
#| msgid "Invalid choice for parent build"
msgid "Invalid choice for parameter value"
msgstr "上级生产选项无效"
-#: part/models.py:3554
+#: part/models.py:3555
msgid "Parent Part"
msgstr ""
-#: part/models.py:3559 part/models.py:3620 part/models.py:3621
+#: part/models.py:3560 part/models.py:3621 part/models.py:3622
#: templates/InvenTree/settings/settings_staff_js.html:199
msgid "Parameter Template"
msgstr "参数模板"
-#: part/models.py:3564
+#: part/models.py:3565
msgid "Data"
msgstr ""
-#: part/models.py:3564
+#: part/models.py:3565
msgid "Parameter Value"
msgstr ""
-#: part/models.py:3625 templates/InvenTree/settings/settings_staff_js.html:208
+#: part/models.py:3626 templates/InvenTree/settings/settings_staff_js.html:208
msgid "Default Value"
msgstr "默认值"
-#: part/models.py:3626
+#: part/models.py:3627
msgid "Default Parameter Value"
msgstr ""
-#: part/models.py:3663
+#: part/models.py:3664
msgid "Part ID or part name"
msgstr ""
-#: part/models.py:3667
+#: part/models.py:3668
msgid "Unique part ID value"
msgstr ""
-#: part/models.py:3675
+#: part/models.py:3676
msgid "Part IPN value"
msgstr ""
-#: part/models.py:3678
+#: part/models.py:3679
msgid "Level"
msgstr ""
-#: part/models.py:3679
+#: part/models.py:3680
msgid "BOM level"
msgstr ""
-#: part/models.py:3763
+#: part/models.py:3764
msgid "Select parent part"
msgstr ""
-#: part/models.py:3771
+#: part/models.py:3772
msgid "Sub part"
msgstr ""
-#: part/models.py:3772
+#: part/models.py:3773
msgid "Select part to be used in BOM"
msgstr ""
-#: part/models.py:3778
+#: part/models.py:3779
msgid "BOM quantity for this BOM item"
msgstr ""
-#: part/models.py:3782 part/templates/part/upload_bom.html:58
+#: part/models.py:3783 part/templates/part/upload_bom.html:58
#: templates/js/translated/bom.js:971 templates/js/translated/bom.js:998
#: templates/js/translated/build.js:2113
#: templates/js/translated/table_filters.js:156
@@ -6236,116 +6231,116 @@ msgstr ""
msgid "Optional"
msgstr "可选项"
-#: part/models.py:3783
+#: part/models.py:3784
msgid "This BOM item is optional"
msgstr ""
-#: part/models.py:3788 templates/js/translated/bom.js:967
+#: part/models.py:3789 templates/js/translated/bom.js:967
#: templates/js/translated/bom.js:1007 templates/js/translated/build.js:2104
#: templates/js/translated/table_filters.js:160
#: templates/js/translated/table_filters.js:496
msgid "Consumable"
msgstr ""
-#: part/models.py:3789
+#: part/models.py:3790
msgid "This BOM item is consumable (it is not tracked in build orders)"
msgstr ""
-#: part/models.py:3793 part/templates/part/upload_bom.html:55
+#: part/models.py:3794 part/templates/part/upload_bom.html:55
msgid "Overage"
msgstr ""
-#: part/models.py:3794
+#: part/models.py:3795
msgid "Estimated build wastage quantity (absolute or percentage)"
msgstr ""
-#: part/models.py:3797
+#: part/models.py:3798
msgid "BOM item reference"
msgstr ""
-#: part/models.py:3800
+#: part/models.py:3801
msgid "BOM item notes"
msgstr ""
-#: part/models.py:3804
+#: part/models.py:3805
msgid "Checksum"
msgstr ""
-#: part/models.py:3804
+#: part/models.py:3805
msgid "BOM line checksum"
msgstr ""
-#: part/models.py:3809 templates/js/translated/table_filters.js:144
+#: part/models.py:3810 templates/js/translated/table_filters.js:144
msgid "Validated"
msgstr ""
-#: part/models.py:3810
+#: part/models.py:3811
#, fuzzy
#| msgid "Some stock items have been overallocated"
msgid "This BOM item has been validated"
msgstr "一些库存项已被过度分配"
-#: part/models.py:3815 part/templates/part/upload_bom.html:57
+#: part/models.py:3816 part/templates/part/upload_bom.html:57
#: templates/js/translated/bom.js:1024
#: templates/js/translated/table_filters.js:148
#: templates/js/translated/table_filters.js:181
msgid "Gets inherited"
msgstr ""
-#: part/models.py:3816
+#: part/models.py:3817
msgid "This BOM item is inherited by BOMs for variant parts"
msgstr ""
-#: part/models.py:3821 part/templates/part/upload_bom.html:56
+#: part/models.py:3822 part/templates/part/upload_bom.html:56
#: templates/js/translated/bom.js:1016
msgid "Allow Variants"
msgstr ""
-#: part/models.py:3822
+#: part/models.py:3823
msgid "Stock items for variant parts can be used for this BOM item"
msgstr ""
-#: part/models.py:3908 stock/models.py:577
+#: part/models.py:3909 stock/models.py:577
msgid "Quantity must be integer value for trackable parts"
msgstr ""
-#: part/models.py:3917 part/models.py:3919
+#: part/models.py:3918 part/models.py:3920
msgid "Sub part must be specified"
msgstr ""
-#: part/models.py:4035
+#: part/models.py:4036
msgid "BOM Item Substitute"
msgstr ""
-#: part/models.py:4056
+#: part/models.py:4057
msgid "Substitute part cannot be the same as the master part"
msgstr ""
-#: part/models.py:4069
+#: part/models.py:4070
msgid "Parent BOM item"
msgstr ""
-#: part/models.py:4077
+#: part/models.py:4078
msgid "Substitute part"
msgstr ""
-#: part/models.py:4092
+#: part/models.py:4093
msgid "Part 1"
msgstr ""
-#: part/models.py:4096
+#: part/models.py:4097
msgid "Part 2"
msgstr ""
-#: part/models.py:4096
+#: part/models.py:4097
msgid "Select Related Part"
msgstr ""
-#: part/models.py:4114
+#: part/models.py:4115
msgid "Part relationship cannot be created between a part and itself"
msgstr ""
-#: part/models.py:4118
+#: part/models.py:4119
msgid "Duplicate relationship already exists"
msgstr ""
@@ -7687,12 +7682,12 @@ msgid "Test Results"
msgstr ""
#: report/templates/report/inventree_test_report_base.html:102
-#: stock/models.py:2242 templates/js/translated/stock.js:1419
+#: stock/models.py:2243 templates/js/translated/stock.js:1419
msgid "Test"
msgstr ""
#: report/templates/report/inventree_test_report_base.html:103
-#: stock/models.py:2248
+#: stock/models.py:2249
msgid "Result"
msgstr ""
@@ -7797,27 +7792,27 @@ msgstr "删除模板"
msgid "Expiry Date"
msgstr ""
-#: stock/api.py:419 templates/js/translated/table_filters.js:373
+#: stock/api.py:420 templates/js/translated/table_filters.js:373
msgid "External Location"
msgstr ""
-#: stock/api.py:581
+#: stock/api.py:582
msgid "Quantity is required"
msgstr ""
-#: stock/api.py:588
+#: stock/api.py:589
msgid "Valid part must be supplied"
msgstr ""
-#: stock/api.py:614
+#: stock/api.py:615
msgid "The given supplier part does not exist"
msgstr ""
-#: stock/api.py:623
+#: stock/api.py:624
msgid "The supplier part has a pack size defined, but flag use_pack_size not set"
msgstr ""
-#: stock/api.py:641
+#: stock/api.py:642
msgid "Serial numbers cannot be supplied for a non-trackable part"
msgstr ""
@@ -7980,104 +7975,104 @@ msgstr ""
msgid "Converted to part"
msgstr ""
-#: stock/models.py:1377
+#: stock/models.py:1378
msgid "Part is not set as trackable"
msgstr ""
-#: stock/models.py:1383
+#: stock/models.py:1384
msgid "Quantity must be integer"
msgstr ""
-#: stock/models.py:1389
+#: stock/models.py:1390
#, python-brace-format
msgid "Quantity must not exceed available stock quantity ({n})"
msgstr ""
-#: stock/models.py:1392
+#: stock/models.py:1393
msgid "Serial numbers must be a list of integers"
msgstr ""
-#: stock/models.py:1395
+#: stock/models.py:1396
msgid "Quantity does not match serial numbers"
msgstr ""
-#: stock/models.py:1402 stock/serializers.py:374
+#: stock/models.py:1403 stock/serializers.py:374
msgid "Serial numbers already exist"
msgstr "序列号已存在"
-#: stock/models.py:1473
+#: stock/models.py:1474
msgid "Stock item has been assigned to a sales order"
msgstr ""
-#: stock/models.py:1476
+#: stock/models.py:1477
msgid "Stock item is installed in another item"
msgstr ""
-#: stock/models.py:1479
+#: stock/models.py:1480
msgid "Stock item contains other items"
msgstr ""
-#: stock/models.py:1482
+#: stock/models.py:1483
msgid "Stock item has been assigned to a customer"
msgstr ""
-#: stock/models.py:1485
+#: stock/models.py:1486
msgid "Stock item is currently in production"
msgstr ""
-#: stock/models.py:1488
+#: stock/models.py:1489
msgid "Serialized stock cannot be merged"
msgstr ""
-#: stock/models.py:1495 stock/serializers.py:975
+#: stock/models.py:1496 stock/serializers.py:975
msgid "Duplicate stock items"
msgstr ""
-#: stock/models.py:1499
+#: stock/models.py:1500
msgid "Stock items must refer to the same part"
msgstr ""
-#: stock/models.py:1503
+#: stock/models.py:1504
msgid "Stock items must refer to the same supplier part"
msgstr ""
-#: stock/models.py:1507
+#: stock/models.py:1508
msgid "Stock status codes must match"
msgstr ""
-#: stock/models.py:1678
+#: stock/models.py:1679
msgid "StockItem cannot be moved as it is not in stock"
msgstr ""
-#: stock/models.py:2160
+#: stock/models.py:2161
msgid "Entry notes"
msgstr ""
-#: stock/models.py:2218
+#: stock/models.py:2219
msgid "Value must be provided for this test"
msgstr ""
-#: stock/models.py:2224
+#: stock/models.py:2225
msgid "Attachment must be uploaded for this test"
msgstr ""
-#: stock/models.py:2243
+#: stock/models.py:2244
msgid "Test name"
msgstr ""
-#: stock/models.py:2249
+#: stock/models.py:2250
msgid "Test result"
msgstr ""
-#: stock/models.py:2255
+#: stock/models.py:2256
msgid "Test output value"
msgstr ""
-#: stock/models.py:2262
+#: stock/models.py:2263
msgid "Test result attachment"
msgstr ""
-#: stock/models.py:2268
+#: stock/models.py:2269
msgid "Test notes"
msgstr ""
@@ -8858,29 +8853,29 @@ msgstr ""
msgid "Changing the settings below require you to immediately restart the server. Do not change this while under active usage."
msgstr ""
-#: templates/InvenTree/settings/plugin.html:37
+#: templates/InvenTree/settings/plugin.html:35
#: templates/InvenTree/settings/sidebar.html:64
msgid "Plugins"
msgstr ""
-#: templates/InvenTree/settings/plugin.html:43
+#: templates/InvenTree/settings/plugin.html:41
#: templates/js/translated/plugin.js:151
msgid "Install Plugin"
msgstr ""
-#: templates/InvenTree/settings/plugin.html:51
+#: templates/InvenTree/settings/plugin.html:49
msgid "External plugins are not enabled for this InvenTree installation"
msgstr ""
-#: templates/InvenTree/settings/plugin.html:70
+#: templates/InvenTree/settings/plugin.html:68
msgid "Plugin Error Stack"
msgstr ""
-#: templates/InvenTree/settings/plugin.html:79
+#: templates/InvenTree/settings/plugin.html:77
msgid "Stage"
msgstr ""
-#: templates/InvenTree/settings/plugin.html:81
+#: templates/InvenTree/settings/plugin.html:79
#: templates/js/translated/notification.js:75
msgid "Message"
msgstr ""
@@ -8953,14 +8948,6 @@ msgstr ""
msgid "Commit Message"
msgstr ""
-#: templates/InvenTree/settings/plugin_settings.html:126
-msgid "Sign Status"
-msgstr ""
-
-#: templates/InvenTree/settings/plugin_settings.html:131
-msgid "Sign Key"
-msgstr ""
-
#: templates/InvenTree/settings/po.html:7
msgid "Purchase Order Settings"
msgstr "采购订单设置"
@@ -9412,44 +9399,48 @@ msgstr ""
msgid "Update Available"
msgstr ""
-#: templates/about.html:42
+#: templates/about.html:43
+msgid "Commit Branch"
+msgstr ""
+
+#: templates/about.html:49
msgid "InvenTree Documentation"
msgstr ""
-#: templates/about.html:47
+#: templates/about.html:54
msgid "API Version"
msgstr ""
-#: templates/about.html:52
+#: templates/about.html:59
msgid "Python Version"
msgstr ""
-#: templates/about.html:57
+#: templates/about.html:64
msgid "Django Version"
msgstr ""
-#: templates/about.html:62
+#: templates/about.html:69
msgid "View Code on GitHub"
msgstr ""
-#: templates/about.html:67
+#: templates/about.html:74
msgid "Credits"
msgstr ""
-#: templates/about.html:72
+#: templates/about.html:79
msgid "Mobile App"
msgstr ""
-#: templates/about.html:77
+#: templates/about.html:84
msgid "Submit Bug Report"
msgstr ""
-#: templates/about.html:84 templates/clip.html:4
+#: templates/about.html:91 templates/clip.html:4
#: templates/js/translated/helpers.js:585
msgid "copy to clipboard"
msgstr ""
-#: templates/about.html:84
+#: templates/about.html:91
msgid "copy version information"
msgstr ""
@@ -12167,7 +12158,7 @@ msgstr ""
msgid "Add Stock"
msgstr ""
-#: templates/js/translated/stock.js:1005 users/models.py:243
+#: templates/js/translated/stock.js:1005 users/models.py:244
msgid "Add"
msgstr "添加"
@@ -13037,35 +13028,35 @@ msgstr "权限"
msgid "Important dates"
msgstr "重要日期"
-#: users/models.py:230
+#: users/models.py:231
msgid "Permission set"
msgstr "权限设置"
-#: users/models.py:238
+#: users/models.py:239
msgid "Group"
msgstr "群组"
-#: users/models.py:241
+#: users/models.py:242
msgid "View"
msgstr "视图"
-#: users/models.py:241
+#: users/models.py:242
msgid "Permission to view items"
msgstr "查看项目权限"
-#: users/models.py:243
+#: users/models.py:244
msgid "Permission to add items"
msgstr "添加项目权限"
-#: users/models.py:245
+#: users/models.py:246
msgid "Change"
msgstr "更改"
-#: users/models.py:245
+#: users/models.py:246
msgid "Permissions to edit items"
msgstr "编辑项目权限"
-#: users/models.py:247
+#: users/models.py:248
msgid "Permission to delete items"
msgstr "删除项目权限"